Your Browser is not longer supported
Please use Google Chrome, Mozilla Firefox or Microsoft Edge to view the page correctly
Loading...
{{viewport.spaceProperty.prod}}
getgroups - zusätzliche Gruppennummern ermitteln
&pagelevel(4)&pagelevel
Definition | #include <unistd.h> Optional #include <sys/types.h> (Ende) int getgroups(int gidsetsize, gid_t grouplist[ ]); |
Beschreibung | getgroups() ermittelt die aktuellen zusätzlichen Gruppennummern des aufrufenden Prozesses und speichert das Ergebnis im Vektor grouplist.
gidsetsize legt die Anzahl der Vektorelemente von grouplist fest. gidsetsize muss groß genug sein, um die komplette Liste aufzunehmen. Diese Liste kann nicht größer als {NGROUPS_-MAX} sein. Die tatsächliche Anzahl der im Vektor gespeicherten Gruppennummern wird zurückgegeben. Die Werte der Vektoreinträge mit Indizes größer oder gleich dem Returnwert sind undefiniert. Wenn gidsetsize gleich 0 ist, liefert getgroups() die Anzahl der Gruppennummern, zu denen der aufrufende Prozess gehört, ohne dass der Vektor grouplist verändert wird. |
Returnwert | Anzahl der zusätzlichen Gruppennummern |
|
| bei Erfolg. Der Returnwert ist ungleich 0 und kleiner als die Anzahl der Gruppennummern für den aufrufenden Prozess. |
| -1 | bei Fehler. errno wird gesetzt, um den Fehler anzuzeigen. |
Fehler | getgroups() schlägt fehl, wenn gilt:
|
| EINVAL
| Der Wert von gidsetsize ist ungleich 0 und kleiner als gr_number für den aufrufenden Prozess. |
Hinweise | Die effektive Gruppennummer des aufrufenden Prozesses ist in grouplist enthalten. |
Siehe auch | auch getegid() , getuid() , setgid() , sys/types.h , unistd.h , Handbuch „POSIX-Grundlagen“[1]. |