initgroups(3) 追加のグループアクセスリストの初期化

書式

#include <sys/types.h>
#include <grp.h>


int initgroups(const char *user, gid_t group);

glibc 向けの機能検査マクロの要件 (feature_test_macros(7) 参照):

initgroups(): _BSD_SOURCE

説明

initgroups() 関数はグループデータベース /etc/group を読み 込んで、user が所属している全てのグループを使って、グループアク セスリストを初期化する。さらに、group に示されるグループもグルー プアクセスリストに追加される。

user 引数は NULL であってはならない。

返り値

initgroups() 関数は、成功すると 0 を返す。 エラーの場合は -1 を返し、 errno を適切に設定する。

エラー

ENOMEM
グループ情報構造体を配置するためのメモリが不足している。
EPERM
呼出しプロセスが十分な特権を持っていない。 この関数の裏で実行されるシステムコール setgroups(2) も参照のこと。

ファイル

/etc/group              グループデータベースファイル

準拠

SVr4, 4.3BSD.

この文書について

この man ページは Linux man-pages プロジェクトのリリース 3.65 の一部 である。プロジェクトの説明とバグ報告に関する情報は http://www.kernel.org/doc/man-pages/ に書かれている。