getgroups-Subroutine
Zweck
Ruft die zusätzliche Gruppen-ID des aktuellen Prozesses ab.
Bibliothek
Standard-C-Bibliothek (libc.a)
Syntax
Beschreibung
Die Subroutine getgroups ruft die zusätzliche Gruppen-ID des Prozesses ab. Die Liste wird in dem Array gespeichert, auf das der Parameter GIDSet verweist. Der Parameter NGroups gibt die Anzahl der Einträge an, die in diesem Array gespeichert werden können. Die Subroutine getgroups gibt nie mehr als die durch die Konstante NGROUPS_MAX angegebene Anzahl von Einträgen zurück. (Die Konstante NGROUPS_MAX wird in der Datei limits.h definiert.) Wenn der Wert des Parameters NGroups 0 ist, gibt die Subroutine getgroups die Anzahl der Gruppen in der ergänzenden Gruppe zurück.
Parameter
| Element | Beschreibung |
|---|---|
| GIDSet | Verweist auf das Array, in dem die zusätzliche Gruppen-ID des Benutzerprozesses gespeichert ist. |
| NGruppen | Gibt die Anzahl der Einträge an, die in dem Array gespeichert sein können, auf das der Parameter GIDSet verweist. |
Rückgabewerte
Nach erfolgreicher Beendigung gibt die Subroutine getgroups die Anzahl der Elemente zurück, die in dem Array gespeichert sind, auf das der Parameter GIDSet verweist. Wenn das Unterprogramm getgroups nicht erfolgreich ist, wird ein Wert von -1 zurückgegeben und die globale Variable errno gesetzt, um den Fehler anzuzeigen.
Fehlercodes
Die Subroutine getgroups ist nicht erfolgreich, wenn einer der folgenden Fehlercodes zutrifft:
| Element | Beschreibung |
|---|---|
| EFAULT | Die Parameter NGroups und GIDSet geben ein Array an, das sich teilweise oder vollständig außerhalb des zugeordneten Adressraums des Prozesses befindet. |
| EINVAL | Der Parameter NGroups ist kleiner als die Anzahl der Gruppen in der ergänzenden Gruppe. |