gethostid

Autres langues

Langue: ja

Version: 2007-07-26 (fedora - 25/11/07)

Autres sections - même nom

Section: 2 (Appels système)

名前

gethostid, sethostid - 現在使用しているホストに固有の識別子を取得する、または設定する

書式

#include <unistd.h>

long gethostid(void);
int sethostid(long hostid);

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

sethostid(): _BSD_SOURCE || (_XOPEN_SOURCE && _XOPEN_SOURCE < 500)

説明

現在使用しているホストに固有の 32 ビットの識別子を取得/設定する。 この 32 ビットの識別子は現在存在している全ての UNIX システム の中で唯一になるように決められる。通常は gethostbyname(3) によって返されるローカルマシンの Internet アドレスが代わりに使用され、 普通は識別子をあえて設定する必要はない。

sethostid() はスーパーユーザしか使用できない。

引き数 hostid/etc/hostid ファイルに格納される。

返り値

gethostid() は sethostid(2) によって設定された、現在使用しているホストの 32 ビットの識別子の値を返す。

ファイル

/etc/hostid

準拠

4.2BSD。4.4BSD ではこれらの関数はなくなった。 SVr4 には gethostid() は含まれているが、 sethostid() は含まれていない。 POSIX.1-2001 では、 gethostid() は規定されているが、 sethostid() は規定されていない。

注意

glibc の実装では、 /etc/hostid をオープンできなかった場合、 gethostid() は gethostname(2) を使ってホスト名を入手し、そのホスト名を gethostbyname_r(3) に渡しホストの IPv4 アドレスを取得して、 その IPv4 アドレスのビット入れ替えを行った値を返す。

関連項目

hostid(1), gethostbyname(3)