ページの先頭行へ戻る
Interstage Navigator ServerV9.5.0 セットアップガイド Vol.1(Enterprise Edition用)
FUJITSU Software

F.1.12 ユーザ名による拡張グループ情報の取得(KVRCK_get_grpslist)

本関数は、拡張グループ運用を行う場合にだけ作成します。

機能

指定のユーザ名が属する拡張(二次)グループのリストをすべて取得します。

書式

int KVRCK_get_grpslist(const char *uname, KVRCK_groups **grplistp,  char* rsv1, char* rsv2);

パラメタ

const char *
KVRCK_groups **
char *
char *

uname
grplistp
rsv1
rsv2

(in)
(out)
(未定)
(未定)

ユーザ名
グループリスト情報
予約域(現在未使用)
予約域(現在未使用)

戻り値

KVRCK_RET_NORMAL
KVRCK_RET_OTHER

正常に情報取り出しが行われた
その他のエラーが発生した

説明

unameに、二次グループ情報を取得したいユーザ名を指定します。

grplistpには、二次グループ情報構造体チェーンの先頭ポインタが返却されます。構造体のnextがNULLになるまでたどることで、ユーザが属するすべての二次グループ情報が取得できます。

以下は、二次グループ情報構造体です。

typedef struct {
int gid;/* グループID */
char gname[KVRCK_MAXLEN_GROUPNAME+1];/* グループ名 */
KVRCK_groups *next;
} KVRCK_groups;

備考

使用例

===================================================================================
/* 変数宣言 */
KVRCK_groups *grplistp;
KVRCK_groups *grplist_wk;
char *rsv1 = NULL, *rsv2 = NULL;

/* 二次グループ情報の獲得 */
KVRCK_get_grpslist("user02", &grplistp,rsv1, rsv2);

/* 獲得した情報の参照 */
for (grplist_wk=grplistp;grplist_wk!=NULL;grplist_wk=grplist_wk->next)
{
    printf("=> gname=%s gid=%d\n",grplist_wk->gname, grplist_wk->gid);
}

/* 領域の解放 */
KVRCK_free_grpslist(grplistp, rsv1, rsv2);
===================================================================================