GETGROUPS(2)

명칭
getgroups - 그룹 액세스 리스트를 취득

프로그램 라이브러리
libc

서식
<sys/types.h> <unistd.h> int getgroups(int gidsetlen, gid_t *gidset)

해설
getgroups() (은)는, 유저 프로세스의 현재의 그룹 액세스 리스트를 취득해, 그것을 배열 gidset 에 보존합니다. 파라미터 gidsetlen 하 gidset 안에 배치할 수 있는 엔트리의 수를 나타냅니다. getgroups() (은)는, gidset 에 돌려주어진 실제의 그룹의 수를 돌려줍니다. NGROUPS_MAX 보다 큰 값은 돌려주지 않습니다. gidsetlen 하지만 0 의 경우에는 getgroups() (은)는, gidset 하지만 지시하는 배열을 수정하지 않고 , 호출한 프로세스에 대응하는 보조 그룹 ID 의 수를 돌려줍니다.

반환값
호출이 정상적으로 완료하면(자), 그룹 세트내의 그룹의 수가 돌려주어집니다. 반환값 -1 은 에러가 일어난 것을 나타내, 에러 코드는 글로벌 변수 errno 에 보존됩니다.

에러
getgroups() 그리고 일어날 수 있는 에러는 다음과 같습니다.

[EINVAL]
    인수 gidsetlen 하지만 그룹 세트내의 그룹의 수보다 작습니다.

[EFAULT]
    인수 gidset (은)는 무효인 주소를 가리키고 있습니다.

관련 항목
setgroups(2), initgroups(3)

역사
getgroups() 함수는 4.2BSD 그리고 등장했습니다.