EN JA
INITGROUPS(3)
INITGROUPS(3) FreeBSD Library Functions Manual INITGROUPS(3)

名称

initgroupsグループアクセスリストを初期化する

ライブラリ

Standard C Library (libc, -lc)

書式

#include < unistd.h>

int
initgroups( const char *name, gid_t basegid);

解説

initgroups() 関数は、 name で指定されるユーザのためのグループアクセスリストを計算するために getgrouplist(3) 関数を使用します。次に、このグループリストは、 setgroups(2) を使用して現在のプロセスのためにセットアップされます。 basegid は、自動的にグループリストに含まれます。通常、この値は、パスワードファイルからグループ番号として与えられます。

戻り値

The initgroups() function returns the value 0 if successful; otherwise the value -1 is returned and the global variable errno is set to indicate the error.

エラー

initgroups() 関数は、失敗し、ライブラリ関数 setgroups(2) のための指定されたエラーのいずれかのために errno を設定します。また、次を返すかもしれません:
[ ENOMEM]
initgroups() 関数が、一時的な記憶域を割り付けることができませんでした。

歴史

initgroups() 関数は、 4.2BSD で登場しました。

バグ

getgrouplist() 関数は、 getgrent(3) に基づいたルーチンを使用する initgroups() によって呼び出されます。呼び出しているプログラムが、これらのルーチンのいずれかを使用するなら、グループ構造は、 initgroups() への呼び出しで上書きされます。
June 4, 1993 FreeBSD