Manpages

名 前

getdomainname, setdomainname − NIS ド メ イ ン 名 の 取 得 ・ 設 定 を す る

書 式

#include <unistd.h>

int getdomainname(char *name, size_t len);
int setdomainname(const char *
name, size_t len);

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

getdomainname(), setdomainname():

_BSD_SOURCE || (_XOPEN_SOURCE && _XOPEN_SOURCE < 500)

説 明

こ れ ら の 関 数 は 、 ホ ス ト シ ス テ ム の NIS ド メ イ ン 名 を 取 得 ・ 変 更 す る た め に 使 わ れ る 。

setdomainname() は 、 ド メ イ ン 名 を 、 文 字 配 列 name で 指 定 さ れ た 値 に 設 定 す る 。 引 き 数 len に は 、 name の バ イ ト 数 を 指 定 す る (そ の た め 、 name で は 文 字 列 終 端 の ヌ ル バ イ ト は 必 要 な い )。

getdomainname() は 、 NULL 終 端 さ れ た ド メ イ ン 名 を 、 len バ イ ト の 長 さ の 文 字 配 列 name に 格 納 し て 返 す 。 ヌ ル 終 端 さ れ た ド メ イ ン 名 が len バ イ ト よ り 長 い 場 合 、 getdomainname() は 、 (glibc で は ) 始 め の len バ イ ト を 返 し 、 (libc で は ) エ ラ ー と な る 。

返 り 値

成 功 し た 場 合 は 0 が 返 さ れ る 。 エ ラ ー の 場 合 は −1 が 返 さ れ 、 errno が 適 切 に 設 定 さ れ る 。

エ ラ ー

setdomainname() は 以 下 の エ ラ ー で 失 敗 す る 可 能 性 が あ る 。

EFAULT

name が ユ ー ザ ー ア ド レ ス 空 間 の 外 を 指 し た 。

EINVAL

len が 負 で あ る か 、 長 す ぎ る 。

EPERM

setdomainname() に お い て 、 呼 び 出 し た 人 に 特 権 が な い (Linux で は CAP_SYS_ADMIN ケ ー パ ビ リ テ ィ (capability) が な い )。

getdomainname() は 以 下 の エ ラ ー で 失 敗 す る 可 能 性 が あ る 。

EINVAL

libc で の getdomainname() に お い て 、 name が NULL で あ る か 、 len バ イ ト よ り 長 い 。

準 拠

POSIX で は 、 こ れ ら 関 数 は 定 義 さ れ て い な い 。

注 意

Linux 1.0 以 降 で は 、 ド メ イ ン 名 の 長 さ の 上 限 は 終 端 の ヌ ル バ イ ト を 含 め て 64 バ イ ト で あ る 。 も っ と 古 い カ ー ネ ル で は 8 バ イ ト で あ っ た 。

(x86 を 含 む ) Linux の ほ と ん ど の ア ー キ テ ク チ ャ ー で は 、 getdomainname() と い う シ ス テ ム コ ー ル は 存 在 し な い 。 そ の 代 わ り 、 glibc で getdomainname() が ラ イ ブ ラ リ 関 数 と し て 実 装 さ れ て お り 、 こ の 関 数 は uname(2) の 呼 び 出 し で 返 さ れ た domainname フ ィ ー ル ド の コ ピ ー を 返 す 。

関 連 項 目

gethostname(2), sethostname(2), uname(2)

こ の 文 書 に つ い て

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