GETHOSTID

Section: Linux Programmer's Manual (3)
Updated: 2017-09-15
Index JM Home Page
 

名前

gethostid, sethostid - 現在のホストの固有の識別子を取得/設定する  

書式

#include <unistd.h>

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

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

gethostid():


 _BSD_SOURCE || _XOPEN_SOURCE >= 500
sethostid():
    glibc 2.21 以降:
        _DEFAULT_SOURCE
    glibc 2.19 と 2.20:
        _DEFAULT_SOURCE || (_XOPEN_SOURCE && _XOPEN_SOURCE < 500)
    glibc 2.19 以前:
        _BSD_SOURCE || (_XOPEN_SOURCE && _XOPEN_SOURCE < 500)
 

説明

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

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

返り値

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

成功すると、 sethostid() は 0 を返す。 エラーの場合、-1 を返し、 errno にエラーを示す値を設定する。  

エラー

sethostid() は以下のエラーで失敗する可能性がある。
EACCES
呼び出し元がホスト ID を保存するのに使用されるファイルへの 書き込み許可を持っていなかった。
EPERM
呼び出し元プロセスの実効 UID/GID が対応する実 UID/GID と同じではない。
 

属性

この節で使用されている用語の説明については、 attributes(7) を参照。
インターフェース 属性
gethostid() Thread safety MT-Safe hostid env locale
sethostid() Thread safety MT-Unsafe const:hostid

 

準拠

4.2BSD。4.4BSD ではこれらの関数はなくなった。 SVr4 には gethostid() は含まれているが、 sethostid() は含まれていない。

POSIX.1-2001 と POSIX.1-2008 では、 gethostid() は規定されているが、 sethostid() は規定されていない。  

注意

glibc の実装では、 hostid はファイル /etc/hostid に保存される (バージョン 2.2 より前の glibc では、 /var/adm/hostid が使用されていた)。

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

バグ

識別子が世界中で一意であることを保証することはできない。  

関連項目

hostid(1), gethostbyname(3)  

この文書について

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

関連キーワード

sethostid, SOURCE, gethostid, hostid, GETHOSTID, ホスト, 識別子, 設定, エラー, XOPEN

Linux マニュアル 一覧

[man1] [man2] [man3] [man4] [man5] [man6] [man7] [man8]
[a] [b] [c] [d] [e] [f] [g] [h] [i] [j] [k] [l] [m] [n] [o] [p] [q] [r] [s] [t] [u] [v] [w] [x] [y] [z]

 

Index

名前
書式
説明
返り値
エラー
属性
準拠
注意
バグ
関連項目
この文書について

This document was created by man2html, using the manual pages.
Time: 12:08:37 GMT, June 11, 2022