1 .\" Copyright 2002 walter harms (walter.harms@informatik.uni-oldenburg.de)
2 .\" Distributed under GPL
3 .\" based on glibc infopages
6 .\" Japanese Version Copyright (c) 2005 Akihiro MOTOKI
7 .\" all rights reserved.
8 .\" Translated 2005-02-20, Akihiro MOTOKI <amotoki@dd.iij4u.or.jp>
10 .TH SETNETGRENT 3 2007-07-26 "GNU" "Linux Programmer's Manual"
12 setnetgrent, endnetgrent, getnetgrent, getnetgrent_r, innetgr \-
18 .BI "int setnetgrent(const char *" netgroup );
20 .B "void endnetgrent(void);"
22 .BI "int getnetgrent(char **" host ", char **" user ", char **" domain );
24 .BI "int getnetgrent_r(char **" host ", char **" user ","
25 .BI " char **" domain ", char *" buf ", int " buflen );
27 .BI "int innetgr(const char *" netgroup ", const char *" host ","
28 .BI " const char *" user ", const char *" domain );
33 .RB ( feature_test_macros (7)
43 _BSD_SOURCE || _SVID_SOURCE
47 は SunOS で考案されたものである。ネットグループのデータベースの
49 .RI ( hostname ", " username ", " domainname )
53 本ページで説明する関数を使うことで、ネットグループのデータベースに
54 アクセスすることができる。どのデータベースが検索されるかは
63 関数はネットグループの次のエントリを取得し、
68 NULL ポインタは、対応するエントリがどんな文字列とも一致することを意味する。
69 得られたポインタは、ネットグループ関係の関数のいずれかが呼ばれるまでの
70 間だけ有効である。この問題を避けるためには GNU 拡張の関数
72 を使うとよい。この関数は呼び出し側が用意したバッファに
73 文字列を格納する。割り当て済のバッファを全て解放するには
78 .RI ( hostname ", " username ", " domainname )
79 の3要素の組がネットグループのメンバーかどうかを確認したいだけであろう。
81 関数を使うと、上記の3つの関数を呼び出さずにこの目的を達成できる。
82 もう一度書いておくが、NULL ポインタはワイルドカードであり、
83 あらゆる文字列と一致する。この関数はスレッドセーフである。
85 これらの関数は成功すると 1 を、失敗すると 0 を返す。
91 これらの関数は POSIX.1-2001 にはないが、
96 はほとんどの UNIX システムで利用可能である。
98 は広く他のシステムで利用できるわけではない。
99 .\" getnetgrent_r() is on Solaris 8 and AIX 5.1, but not the BSDs.