スポンサーリンク

GETGROUPS(2) FreeBSD システムコールマニュアル GETGROUPS(2)

名称

getgroups − グループアクセスリストを取得

ライブラリ

標準 C ライブラリ (libc, −lc)

書式

#include <sys/types.h>
#include <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 で登場しました。

FreeBSD 10.0 March 5, 1999 FreeBSD 10.0

スポンサーリンク