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/ に書かれている。

関連キーワード

ホスト   識別子   ビット   hostid   アドレス   gethostid   sethostid   固有   Thread   safety   規定   実装   unistd   long   検査   マクロ   要件   macros   唯一   意図   通常   ローカル   マシン   Internet   普通

Linux マニュアル 一覧

関連するコマンド・関数

gethostid.3   hostid.1   hostname.1   rusers.1   rwall.1   rup.1
 

Index

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

This document was created by man2html, using the manual pages.
Time: 04:39:34 GMT, October 11, 2026