GETPROTOENT(3N) — NEWS-OS Programmer’s Manual
名称
getprotoent, getprotobynumber, getprotobyname, setprotoent, endprotoent − プロトコルエントリを獲得する
形式
#include <netdb.h>
struct protoent ∗getprotoent()
struct protoent ∗getprotobyname(name)
char ∗name;
struct protoent ∗getprotobynumber(proto)
int proto;
setprotoent(stayopen)
int stayopen
endprotoent()
解説
getprotoent、 getprotobyname および getprotobynumber はそれぞれ、次の ような構造を持つ構造体へのポインタを返します。 構造体は、ネットワークプロトコルデータベースの /etc/protocols の中の 1行をいくつかに 区切ったフィールドを含んでいます。
struct protoent {
char ∗p_name; /∗ プロトコルの公式名 ∗/
char ∗∗p_aliases; /∗ 別名リスト ∗/
int p_proto; /∗ プロトコル番号 ∗/
};
この構造体のメンバは次のとおりです。
p_name プロトコルの公式名。
p_aliases プロトコルの名のゼロで終わるリスト。
p_proto プロトコル番号。
getprotoent は、ファイルの次の行を読込み、必要に応じてそのファイルをオープンします。
setprotoent は、ファイルをオープンし、ポインタをファイルの先頭に戻します。 stayopen フラグがゼロでない値の場合、ネットデータベースは getprotobyname または getprotobynumber へのそれぞれの呼び出しの後で、クローズされません。
endprotoent は、ファイルをクローズします。
getprotobyname と getprotobynumber は、一致するプロトコル名またはプロトコル番号が見つかるまで、 または EOF に出くわすまで、 ファイルの始めから順次検索を行います。
関連ファイル
/etc/protocols
関連事項
protocols(5), nis.conf(5), ypserv(8)
診断
EOF またはエラー時には、 ナル ポインタ (0) が返されます。
バグ
すべての情報は、静的領域に含まれるので、それをセーブする場合は、 コピーしなければなりません。 インタネットプロトコルだけが現在のところサポートされています。
NEWS-OSRelease 4.1C