.\"O gethostbyaddr_r,
.\"O gethostbyname2, gethostbyname2_r, gethostbyname_r,
.\"O gethostent_r \- get network host entry
-.SH ̾Á°
+.SH 名前
gethostbyname, gethostbyaddr, sethostent, gethostent, endhostent,
h_errno,
herror, hstrerror,
gethostbyaddr_r,
gethostbyname2, gethostbyname2_r, gethostbyname_r,
-gethostent_r \- ¥Í¥Ã¥È¥ï¡¼¥¯¾å¤Î¥Û¥¹¥È¤Î¥¨¥ó¥È¥ê¤ò¼èÆÀ¤¹¤ë
+gethostent_r \- ネットワーク上のホストのエントリを取得する
.\"O .SH SYNOPSIS
-.SH ½ñ¼°
+.SH 書式
.nf
.B #include <netdb.h>
.B extern int h_errno;
.BI "struct hostent *gethostbyname(const char *" name );
.sp
.\"O .BR "#include <sys/socket.h>" " /* for AF_INET */"
-.BR "#include <sys/socket.h>" " /* AF_INET ¤ò»È¤¦¾ì¹ç */"
+.BR "#include <sys/socket.h>" " /* AF_INET を使う場合 */"
.BI "struct hostent *gethostbyaddr(const void *" addr ,
.BI " socklen_t " len ", int " type );
.sp
.BI "const char *hstrerror(int " err );
.sp
.\"O /* System V/POSIX extension */
-/* System V/POSIX ³ÈÄ¥ */
+/* System V/POSIX 拡張 */
.br
.B struct hostent *gethostent(void);
.sp
.\"O /* GNU extensions */
-/* GNU ³ÈÄ¥ */
+/* GNU 拡張 */
.br
.BI "struct hostent *gethostbyname2(const char *" name ", int " af );
.sp
.in -4n
.\"O Feature Test Macro Requirements for glibc (see
.\"O .BR feature_test_macros (7)):
-glibc ¸þ¤±¤Îµ¡Ç½¸¡ºº¥Þ¥¯¥í¤ÎÍ×·ï
+glibc 向けの機能検査マクロの要件
.RB ( feature_test_macros (7)
-»²¾È):
+参照):
.in
.sp
.PD 0
.RS 4
.TP 4
.\"O Since glibc 2.8:
-glibc 2.8 °Ê¹ß:
+glibc 2.8 以降:
_BSD_SOURCE || _SVID_SOURCE || _GNU_SOURCE
.TP
.\"O Before glibc 2.8:
.\"O none
-glibc 2.8 ¤è¤êÁ°:
-¤Ê¤·
+glibc 2.8 より前:
+なし
.RE
.ad b
.PD
.\"O .SH DESCRIPTION
-.SH ÀâÌÀ
+.SH 説明
.\"O The
.\"O .BR gethostbyname* ()
.\"O and
.\"O .BR getnameinfo (3)
.\"O instead.
.BR gethostbyname* ()
-¤È
+と
.BR gethostbyaddr* ()
-¤Ï²áµî¤Î¤â¤Î¤Ç¤¢¤ë¡£
-¥¢¥×¥ê¥±¡¼¥·¥ç¥ó¤Ç¤Ï¡¢Âå¤ï¤ê¤Ë
+は過去のものである。
+アプリケーションでは、代わりに
.BR getaddrinfo (3)
-¤È
+と
.BR getnameinfo (3)
-¤ò»ÈÍѤ¹¤ë¤³¤È¡£
+を使用すること。
.\"O The
.\"O .BR gethostbyname ()
.\"O or an IPv6 address in colon (and possibly dot) notation.
.\"O (See RFC\ 1884 for the description of IPv6 addresses.)
.BR gethostbyname ()
-´Ø¿ô¤ÏÍ¿¤¨¤é¤ì¤¿¥Û¥¹¥È̾
+関数は与えられたホスト名
.I name
-¤ËÂбþ¤¹¤ë¹½Â¤ÂÎ
+に対応する構造体
.I hostent
-¤òÊÖ¤¹¡£
+を返す。
.I name
-¤Ë¤Ï¥Û¥¹¥È̾¡¢¥É¥Ã¥È¶èÀÚ¤ê¤Î IPv4 ¥¢¥É¥ì¥¹
+ã\81«ã\81¯ã\83\9bã\82¹ã\83\88å\90\8dã\80\81ã\83\89ã\83\83ã\83\88å\8cºå\88\87ã\82\8aã\81® IPv4 ã\82¢ã\83\89ã\83¬ã\82¹
.RB ( inet_addr (3)
-»²¾È)¡¢¥³¥í¥ó¶èÀÚ¤ê¤Î IPv6 ¥¢¥É¥ì¥¹ (¤ª¤½¤é¤¯¥É¥Ã¥È¶èÀÚ¤ê¤Ç¤âÂç¾æÉ×)
-¤Î¤¤¤º¤ì¤«¤ò»ØÄꤹ¤ë
-(IPv6 ¥¢¥É¥ì¥¹¤Îµ½ÒÊýË¡¤Ë¤Ä¤¤¤Æ¤Ï RFC\ 1884 ¤ò»²¹Í¤Ë¤·¤Æ¤Û¤·¤¤)¡£
+参照)、コロン区切りの IPv6 アドレス (おそらくドット区切りでも大丈夫)
+のいずれかを指定する
+(IPv6 アドレスの記述方法については RFC\ 1884 を参考にしてほしい)。
.\"O If
.\"O .I name
.\"O is an IPv4 or IPv6 address, no lookup is performed and
.\"O .I hostent
.\"O structure.
.I name
-¤¬ IPv4 ¤« IPv6 ¤Î¥¢¥É¥ì¥¹¤À¤Ã¤¿¾ì¹ç¡¢
-̾Á°²ò·è (lookup) ¤Ï¹Ô¤ï¤ì¤Ê¤¤¡£¤½¤Î¾ì¹ç¤Ë¤Ï¡¢
+が IPv4 か IPv6 のアドレスだった場合、
+名前解決 (lookup) は行われない。その場合には、
.BR gethostbyname ()
-¤Ï
+は
.I name
-¤ò¤½¤Î¤Þ¤Þ
+をそのまま
.I hostent
-¹½Â¤ÂΤÎ
+構造体の
.I h_name
-¥Õ¥£¡¼¥ë¥É¤Ë¥³¥Ô¡¼¤·¡¢
-¤µ¤é¤Ë
+フィールドにコピーし、
+さらに
.I name
-¤ò
+を
.I struct in_addr
-·Á¼°¤Çɽ¤·¤¿¥Ç¡¼¥¿¤ò
+形式で表したデータを
.I hostent
-¹½Â¤ÂΤÎ
+構造体の
.I h_addr_list[0]
-¥Õ¥£¡¼¥ë¥É¤ËÆþ¤ì¤Æ¡¢¤½¤Î
+フィールドに入れて、その
.I hostent
-¹½Â¤ÂΤòÊÖ¤¹¡£
+構造体を返す。
.\"O If
.\"O .I name
.\"O doesn't end in a dot and the environment variable
.\"O .BR hostname (7)
.\"O for the file format).
.I name
-¤¬¥É¥Ã¥È¤Ç½ªÎ»¤·¤Æ¤¤¤Æ¡¢¤«¤Ä´Ä¶ÊÑ¿ô
+がドットで終了していて、かつ環境変数
.B HOSTALIASES
-¤¬ÀßÄꤵ¤ì¤Æ¤¤¤ë¾ì¹ç¡¢¤Þ¤º
+が設定されている場合、まず
.B HOSTALIASES
-¤Ç»ØÄꤵ¤ì¤Æ¤¤¤ë¥¨¥¤¥ê¥¢¥¹¥Õ¥¡¥¤¥ë¤«¤é
+で指定されているエイリアスファイルから
.I name
-¤Î¥¨¥ó¥È¥ê¤¬¸¡º÷¤µ¤ì¤ë (¥Õ¥¡¥¤¥ë¤Î¥Õ¥©¡¼¥Þ¥Ã¥È¤Ë¤Ä¤¤¤Æ¤Ï
+のエントリが検索される (ファイルのフォーマットについては
.BR hostname (7)
-¤ò»²¾È¤Î¤³¤È)¡£
+を参照のこと)。
.\"O The current domain and its parents are searched unless \fIname\fP
.\"O ends in a dot.
.I name
-¤¬¥É¥Ã¥È¤Ç½ªÎ»¤·¤Æ¤¤¤Ê¤±¤ì¤Ð¡¢¸½ºß¤Î¥É¥á¥¤¥ó¤È¤½¤Î¿Æ¥É¥á¥¤¥ó¤¬¸¡º÷¤µ¤ì¤ë¡£
+がドットで終了していなければ、現在のドメインとその親ドメインが検索される。
.PP
.\"O The
.\"O .BR gethostbyaddr ()
.\"O and
.\"O .BR AF_INET6 .
.BR gethostbyaddr ()
-´Ø¿ô¤ÏÍ¿¤¨¤é¤ì¤¿¥Û¥¹¥È¥¢¥É¥ì¥¹
+é\96¢æ\95°ã\81¯ä¸\8eã\81\88ã\82\89ã\82\8cã\81\9fã\83\9bã\82¹ã\83\88ã\82¢ã\83\89ã\83¬ã\82¹
.I addr
-(Ťµ \fIlen\fP¡¢ ¥¿¥¤¥× \fItype\fP) ¤ËÂбþ¤¹¤ë¹½Â¤ÂÎ
+(長さ \fIlen\fP、 タイプ \fItype\fP) に対応する構造体
.I hostent
-¤òÊÖ¤¹¡£
-ÍѤ¤¤ë¤³¤È¤Î¤Ç¤¤ë¥¿¥¤¥×¤Ï
+を返す。
+用いることのできるタイプは
.B AF_INET
-¤È
+と
.B AF_INET6
-¤Ç¤¢¤ë¡£
+である。
.\"O The host address argument is a pointer to a struct of a type depending
.\"O on the address type, for example a \fIstruct in_addr *\fP (probably
.\"O obtained via a call to
.\"O .BR inet_addr (3))
.\"O for address type
.\"O .BR AF_INET .
-¥Û¥¹¥È¥¢¥É¥ì¥¹°ú¤¿ô¤Ï¥¢¥É¥ì¥¹¥¿¥¤¥×¤Ë°Í¸¤·¤¿
-¹½Â¤ÂΤؤΥݥ¤¥ó¥¿¤Ç¤¢¤ë¡£
-Î㤨¤Ð¡¢¥¢¥É¥ì¥¹¥¿¥¤¥×
+ホストアドレス引き数はアドレスタイプに依存した
+構造体へのポインタである。
+例えば、アドレスタイプ
.B AF_INET
-¤ËÂФ·¤Æ¤Ï
+に対しては
.RB ( inet_addr (3)
-¤Î¸Æ¤Ó½Ð¤·¤ÇÆÀ¤é¤ì¤ë)
-\fIstruct in_addr *\fP ¤Ç¤¢¤ë¡£
+の呼び出しで得られる)
+\fIstruct in_addr *\fP である。
.PP
.\"O The
.\"O .BR sethostent ()
.\"O that the connection should remain open during successive queries.
.\"O Otherwise, name server queries will use UDP datagrams.
.BR sethostent ()
-´Ø¿ô¤Ï¡¢¥Í¡¼¥à¥µ¡¼¥Ð¤Ø¤ÎÀܳ·ÁÂÖ¤ò»ØÄꤹ¤ë¡£
+関数は、ネームサーバへの接続形態を指定する。
.I stayopen
-¤¬¿¿ (1) ¤Ê¤é¤Ð¡¢¥Í¡¼¥à¥µ¡¼¥Ð¤Ø¤ÎÌ䤤¹ç¤ï¤»¤Ë¤Ï¡¢
-Àܳ¤µ¤ì¤¿ TCP ¥½¥±¥Ã¥È¤òÍѤ¤¡¢Ï¢Â³¤·¤¿Ì䤤¹ç¤ï¤»¤Î´Ö¤ËÀܳ¤ò°Ý»ý¤¹¤ë¡£
-µ¶¤Ê¤é¤Ð¥Í¡¼¥à¥µ¡¼¥Ð¤Ø¤ÎÌ䤤¹ç¤ï¤»¤Ë UDP ¥Ç¡¼¥¿¥°¥é¥à¤òÍѤ¤¤ë¡£
+が真 (1) ならば、ネームサーバへの問い合わせには、
+接続された TCP ソケットを用い、連続した問い合わせの間に接続を維持する。
+偽ならばネームサーバへの問い合わせに UDP データグラムを用いる。
.PP
.\"O The
.\"O .BR endhostent ()
.\"O function ends the use of a TCP connection for name
.\"O server queries.
.BR endhostent ()
-´Ø¿ô¤Ï¥Í¡¼¥à¥µ¡¼¥Ð¤Ø¤ÎÌ䤤¹ç¤ï¤»¤ËÍѤ¤¤¿ TCP Àܳ¤ÎÍøÍѤò½ªÎ»¤¹¤ë¡£
+関数はネームサーバへの問い合わせに用いた TCP 接続の利用を終了する。
.PP
.\"O The (obsolete)
.\"O .BR herror ()
.\"O function prints the error message associated
.\"O with the current value of \fIh_errno\fP on \fIstderr\fP.
-(ÇÑ»ßͽÄê¤Î)
+(廃止予定の)
.BR herror ()
-´Ø¿ô¤Ï¸½ºß¤Î
+関数は現在の
.I h_errno
-¤ËÂбþ¤¹¤ë¥¨¥é¡¼¥á¥Ã¥»¡¼¥¸¤òɸ½à¥¨¥é¡¼ \fIstderr\fP ¤Ë½ÐÎϤ¹¤ë¡£
+に対応するエラーメッセージを標準エラー \fIstderr\fP に出力する。
.PP
.\"O The (obsolete)
.\"O .BR hstrerror ()
.\"O function takes an error number
.\"O (typically \fIh_errno\fP) and returns the corresponding message string.
-(ÇÑ»ßͽÄê¤Î)
+(廃止予定の)
.BR hstrerror ()
-´Ø¿ô¤Ï¥¨¥é¡¼ÈÖ¹æ (Ä̾ï¤Ï \fIh_errno\fP) ¤ò°ú¤¿ô¤Ë¼è¤ê¡¢
-Âбþ¤¹¤ë¥¨¥é¡¼¥á¥Ã¥»¡¼¥¸Ê¸»úÎó¤òÊÖ¤¹¡£
+関数はエラー番号 (通常は \fIh_errno\fP) を引き数に取り、
+対応するエラーメッセージ文字列を返す。
.PP
.\"O The domain name queries carried out by
.\"O .BR gethostbyname ()
.\"O followed by
.\"O .IR /etc/hosts .
.BR gethostbyname ()
-¤È
+と
.BR gethostbyaddr ()
-¤Ë¤è¤Ã¤Æ¼Â¹Ô¤µ¤ì¤ë¥É¥á¥¤¥ó̾¤ÎÌ䤤¹ç¤ï¤»¤Ç¤Ï¡¢¥Í¡¼¥à¥µ¡¼¥Ð
-.BR named (8)¡¢
+によって実行されるドメイン名の問い合わせでは、ネームサーバ
+.BR named (8)、
.I /etc/hosts
-¤Î¥Ç¡¼¥¿¹Ô¡¢¤ª¤è¤Ó
-Network Information Service (NIS ¤Þ¤¿¤Ï YP)
-¤¬ÁȤ߹ç¤ï¤»¤Æ»ÈÍѤµ¤ì¤ë¡£²¿¤¬»ÈÍѤµ¤ì¤ë¤«¤Ï¡¢
+のデータ行、および
+Network Information Service (NIS または YP)
+が組み合わせて使用される。何が使用されるかは、
.I /etc/host.conf
-¤Î
+の
.I order
-¹Ô¤ÎÆâÍƤˤè¤ê·è¤Þ¤ë¡£
-.\" (¾Ü¤·¤¯¤Ï
+行の内容により決まる。
+.\" (詳しくは
.\" .BR resolv+ (8)
-.\" ¤ò»²¾È)¡£
-¥Ç¥Õ¥©¥ë¥È¤Ç¤Ï¡¢¤Þ¤º
+.\" を参照)。
+デフォルトでは、まず
.BR named (8)
-¤ËÌ䤤¹ç¤ï¤»¤ò¹Ô¤¤¡¢¼¡¤¤¤Ç
+に問い合わせを行い、次いで
.I /etc/hosts
-¤ò»²¾È¤¹¤ë¡£
+を参照する。
.PP
.\"O The \fIhostent\fP structure is defined in \fI<netdb.h>\fP as follows:
.I hostent
-¹½Â¤ÂΤÏ
+構造体は
.I <netdb.h>
-¤Ç°Ê²¼¤Î¤è¤¦¤ËÄêµÁ¤µ¤ì¤Æ¤¤¤ë:
+で以下のように定義されている:
.sp
.in +4n
.nf
char **h_addr_list; /* list of addresses */
}
.\"O #define h_addr h_addr_list[0] /* for backward compatibility */
-#define h_addr h_addr_list[0] /* ²áµî¤È¤Î¸ß´¹À¤Î¤¿¤á */
+#define h_addr h_addr_list[0] /* 過去との互換性のため */
.fi
.in
.PP
.\"O The members of the \fIhostent\fP structure are:
.I hostent
-¹½Â¤ÂΤΥá¥ó¥Ð¤Ï°Ê²¼¤ÎÄ̤ꡣ
+構造体のメンバは以下の通り。
.TP
.I h_name
.\"O The official name of the host.
-¥Û¥¹¥È¤ÎÀµ¼°Ì¾ (official name)¡£
+ホストの正式名 (official name)。
.TP
.I h_aliases
.\"O An array of alternative names for the host, terminated by a NULL pointer.
-¥Û¥¹¥È¤ÎÊÌ̾¤ÎÇÛÎó¡£ÇÛÎó¤Ï NULL ¥Ý¥¤¥ó¥¿¤Ç½ªÃ¼¤µ¤ì¤ë¡£
+ホストの別名の配列。配列は NULL ポインタで終端される。
.TP
.I h_addrtype
.\"O The type of address; always
.\"O or
.\"O .B AF_INET6
.\"O at present.
-¥¢¥É¥ì¥¹¤Î¥¿¥¤¥×¡£¸½ºß¤Ï¤¹¤Ù¤Æ
+アドレスのタイプ。現在はすべて
.B AF_INET
-¤Þ¤¿¤Ï
+または
.B AF_INET6
-¤Ç¤¢¤ë¡£
+である。
.TP
.I h_length
.\"O The length of the address in bytes.
-¥Ð¥¤¥Èñ°Ì¤Çɽ¤·¤¿¥¢¥É¥ì¥¹¤ÎŤµ¡£
+バイト単位で表したアドレスの長さ。
.TP
.I h_addr_list
.\"O An array of pointers to network addresses for the host (in network byte
.\"O order), terminated by a NULL pointer.
-¥Û¥¹¥È¤Î¥Í¥Ã¥È¥ï¡¼¥¯¥¢¥É¥ì¥¹¤Ø¤Î¥Ý¥¤¥ó¥¿¤ÎÇÛÎó¡£
-ÇÛÎó¤Ï NULL ¥Ý¥¤¥ó¥¿¤Ç½ªÃ¼¤µ¤ì¤ë¡£
-¥Í¥Ã¥È¥ï¡¼¥¯¥¢¥É¥ì¥¹¤Ï¥Í¥Ã¥È¥ï¡¼¥¯¥Ð¥¤¥È¥ª¡¼¥À·Á¼°¤Ç¤¢¤ë¡£
+ホストのネットワークアドレスへのポインタの配列。
+配列は NULL ポインタで終端される。
+ネットワークアドレスはネットワークバイトオーダ形式である。
.TP
.I h_addr
.\"O The first address in \fIh_addr_list\fP for backward compatibility.
.I h_addr_list
-¤ÎºÇ½é¤Î¥¢¥É¥ì¥¹¡£²áµî¤È¤Î¸ß´¹À¤òÊݤĤ¿¤á¤Î¤â¤Î¤Ç¤¢¤ë¡£
+の最初のアドレス。過去との互換性を保つためのものである。
.\"O .SH "RETURN VALUE"
-.SH ÊÖ¤êÃÍ
+.SH 返り値
.\"O The
.\"O .BR gethostbyname ()
.\"O and
.\"O .I h_errno
.\"O variable holds an error number.
.BR gethostbyname ()
-¤ª¤è¤Ó
+および
.BR gethostbyaddr ()
-´Ø¿ô¤Ï
+関数は
.I hostent
-¹½Â¤ÂΤòÊÖ¤¹¡£¥¨¥é¡¼¤¬µ¯¤³¤Ã¤¿¤é NULL ¥Ý¥¤¥ó¥¿¤òÊÖ¤¹¡£¥¨¥é¡¼¤ÎºÝ¤Ë¤Ï
+構造体を返す。エラーが起こったら NULL ポインタを返す。エラーの際には
.I h_errno
-ÊÑ¿ô¤¬¥¨¥é¡¼¤ÎÈÖ¹æ¤òÊÝ»ý¤¹¤ë¡£
+変数がエラーの番号を保持する。
.\"O When non-NULL, the return value may point at static data, see the notes below.
-ÊÖ¤êÃͤ¬ NULL ¤Ç¤Ê¤¤¾ì¹ç¡¢ÀÅŪ¥Ç¡¼¥¿¤ò¥Ý¥¤¥ó¥¿¤Ç»Ø¤·¤Æ¤¤¤ë¤³¤È¤â¤¢¤ë¡£
-°Ê²¼¤Î¡ÖÃí°Õ¡×¤ò»²¾È¤¹¤ë¤³¤È¡£
+返り値が NULL でない場合、静的データをポインタで指していることもある。
+以下の「注意」を参照すること。
.\"O .SH "ERRORS"
-.SH ¥¨¥é¡¼
+.SH ã\82¨ã\83©ã\83¼
.\"O The variable \fIh_errno\fP can have the following values:
.I h_errno
-ÊÑ¿ô¤Ï°Ê²¼¤ÎÃͤò¼è¤ê¤¦¤ë¡£
+変数は以下の値を取りうる。
.TP
.B HOST_NOT_FOUND
.\"O The specified host is unknown.
-»ØÄꤷ¤¿¥Û¥¹¥È¤¬¸«¤Ä¤«¤é¤Ê¤¤¡£
+指定したホストが見つからない。
.TP
.\"O .B NO_ADDRESS " or " NO_DATA
-.B NO_ADDRESS " ¤Þ¤¿¤Ï " NO_DATA
+.B NO_ADDRESS " または " NO_DATA
.\"O The requested name is valid but does not have an IP address.
-»ØÄꤷ¤¿Ì¾Á°¤Ï͸ú¤À¤¬ IP ¥¢¥É¥ì¥¹¤ò»ý¤Ã¤Æ¤¤¤Ê¤¤¡£
+指定した名前は有効だが IP アドレスを持っていない。
.TP
.B NO_RECOVERY
.\"O A nonrecoverable name server error occurred.
-¥Í¡¼¥à¥µ¡¼¥Ð¤ÎÉüµìÉÔǽ¤Ê¥¨¥é¡¼¤¬µ¯¤³¤Ã¤¿¡£
+ネームサーバの復旧不能なエラーが起こった。
.TP
.B TRY_AGAIN
.\"O A temporary error occurred on an authoritative name server.
.\"O Try again later.
-authoritative ¤Ê¥Í¡¼¥à¥µ¡¼¥Ð¤Ç°ì»þŪ¤Ê¥¨¥é¡¼¤¬µ¯¤³¤Ã¤¿¡£
-»þ´Ö¤ò¤ª¤¤¤Æ¤â¤¦°ìÅٻ¤³¤È¡£
+authoritative なネームサーバで一時的なエラーが起こった。
+時間をおいてもう一度試すこと。
.\"O .SH FILES
-.SH ¥Õ¥¡¥¤¥ë
+.SH ファイル
.TP
.I /etc/host.conf
.\"O resolver configuration file
-̾Á°²ò·è¤ÎÀßÄê¥Õ¥¡¥¤¥ë
+名前解決の設定ファイル
.TP
.I /etc/hosts
.\"O host database file
-¥Û¥¹¥È¤Î¥Ç¡¼¥¿¥Ù¡¼¥¹¥Õ¥¡¥¤¥ë
+ホストのデータベースファイル
.TP
.I /etc/nsswitch.conf
.\"O name service switch configuration
-¥Í¡¼¥à¥µ¡¼¥Ó¥¹ÀÚÂØÀßÄê
+ネームサービス切替設定
.\"O .SH "CONFORMING TO"
-.SH ½àµò
+.SH 準拠
.\"O POSIX.1-2001 specifies
.\"O .BR gethostbyname (),
.\"O .BR gethostbyaddr (),
.\"O and
.\"O .IR h_errno
.\"O are marked obsolescent in that standard.
-POSIX.1-2001 ¤Ç¤Ï¡¢
+POSIX.1-2001 では、
.BR gethostbyname (),
.BR gethostbyaddr (),
.BR sethostent (),
.BR endhostent (),
.BR gethostent (),
.I h_errno
-¤¬µ¬Äꤵ¤ì¤Æ¤ª¤ê¡¢
+が規定されており、
.BR gethostbyaddr ()
-¤È
+と
.BR gethostbyname ()
-¤ÏÇÑ»ßͽÄê¤Ç¤¢¤ë¤È¤µ¤ì¤Æ¤¤¤ë¡£
+は廃止予定であるとされている。
.\"O POSIX.1-2008 removes the specifications of
.\"O .BR gethostbyname (),
.\"O .BR gethostbyaddr (),
.\"O and
.\"O .BR getnameinfo (3)
.\"O instead.
-POSIX.1-2008 ¤Ç¤Ï
+POSIX.1-2008 では
.BR gethostbyname (),
.BR gethostbyaddr (),
.I h_errno
-¤Î»ÅÍͤ¬ºï½ü¤µ¤ì¤Æ¤¤¤ë¡£
-Âå¤ï¤ê¤Ë¡¢
+の仕様が削除されている。
+代わりに、
.BR getaddrinfo (3)
-¤È
+と
.BR getnameinfo (3)
-¤Î»ÈÍѤ¬¿ä¾©¤µ¤ì¤Æ¤¤¤ë¡£
+の使用が推奨されている。
.\"O .SH NOTES
-.SH Ãí°Õ
+.SH 注意
.\"O The functions
.\"O .BR gethostbyname ()
.\"O and
.\"O .I struct hostent
.\"O does not suffice, since it contains pointers; a deep copy is required.
.BR gethostbyname ()
-¤ª¤è¤Ó
+および
.BR gethostbyaddr ()
-´Ø¿ô¤ÏÀÅŪ¥Ç¡¼¥¿¤Ø¤Î¥Ý¥¤¥ó¥¿¤òÊÖ¤¹¡£
-¤³¤Î¥Ý¥¤¥ó¥¿¤Ï¡¢¤½¤Î¸å¤Î¸Æ¤Ó½Ð¤·¤Ç¾å½ñ¤¤µ¤ì¤ë¤«¤â¤·¤ì¤Ê¤¤¡£
+関数は静的データへのポインタを返す。
+このポインタは、その後の呼び出しで上書きされるかもしれない。
.I hostent
-¹½Â¤ÂΤϥݥ¤¥ó¥¿¤ò´Þ¤ó¤Ç¤¤¤ë¤Î¤Ç¡¢¹½Â¤ÂΤΥ³¥Ô¡¼¤À¤±¤Ç¤ÏÉÔ½½Ê¬¤Ç¤¢¤ë;
-¤è¤ê¿¼¤¤¥³¥Ô¡¼¤¬É¬ÍפǤ¢¤ë¡£
+構造体はポインタを含んでいるので、構造体のコピーだけでは不十分である;
+より深いコピーが必要である。
.LP
.\"O In the original BSD implementation the
.\"O .I len
.\"O .BR gethostbyname ()
.\"O was an
.\"O .IR int .
-¥ª¥ê¥¸¥Ê¥ë¤Î BSD ¤Î¼ÂÁõ¤Ç¤Ï¡¢
+オリジナルの BSD の実装では、
.BR gethostbyname ()
-¤Î
+の
.I len
-°ú¤¿ô¤Ï
+引き数は
.I int
-¤Ç¤¢¤Ã¤¿¡£
+であった。
.\"O The SUSv2 standard is buggy and declares the
.\"O .I len
.\"O argument of
.\"O which is OK.)
.\"O See also
.\"O .BR accept (2).
-SUSv2 ɸ½à¤Ï¥Ð¥°¤¬Â¿¤¯¡¢
+SUSv2 標準はバグが多く、
.BR gethostbyaddr ()
-¤Î
+の
.I len
-¥Ñ¥é¥á¡¼¥¿¤ò
+パラメータを
.I size_t
-·¿¤È¤·¤ÆÀë¸À¤·¤Æ¤¤¤ë¡£
-(¤³¤ì¤Ï¸í¤ê¤Ç¡¢
+型として宣言している。
+(これは誤りで、
.I size_t
-·¿¤Ç¤Ï¤Ê¤¯
+型ではなく
.I int
-·¿¤Ç¤Ê¤±¤ì¤Ð¤Ê¤é¤Ê¤¤¡£
-POSIX.1-2001 ¤Ç¤Ï¤³¤ì¤ò
+型でなければならない。
+POSIX.1-2001 ではこれを
.I socklen_t
-¤È¤·¤Æ¤¤¤ë¤¬¡¢¤³¤ì¤Ï OK¡£)
+としているが、これは OK。)
.BR accept (2)
-¤â»²¾È¡£
+も参照。
.LP
.\"O The BSD prototype for
.\"O .BR gethostbyaddr ()
.\"O .I const char *
.\"O for the first argument.
.BR gethostbyaddr ()
-¤Î BSD ¤Î¥×¥í¥È¥¿¥¤¥×¤Ï¡¢ºÇ½é¤Î°ú¤¿ô¤È¤·¤Æ
+の BSD のプロトタイプは、最初の引き数として
.I const char *
-¤ò»È¤¦¡£
+を使う。
.\"O .SS "System V/POSIX Extension"
-.SS "System V/POSIX ³ÈÄ¥"
+.SS "System V/POSIX 拡張"
.\"O POSIX requires the
.\"O .BR gethostent ()
.\"O call, that should return the next entry in the host data base.
-POSIX ¤Ç¤Ï¡¢
+POSIX では、
.BR gethostent ()
-¤¬É¬¿Ü¤È¤µ¤ì¤Æ¤¤¤ë¡£
-¤³¤Î´Ø¿ô¤Ï¥Û¥¹¥È¥Ç¡¼¥¿¥Ù¡¼¥¹¤Î¼¡¤Î¥¨¥ó¥È¥ê¤òÊÖ¤¹¡£
+が必須とされている。
+この関数はホストデータベースの次のエントリを返す。
.\"O When using DNS/BIND this does not make much sense, but it may
.\"O be reasonable if the host data base is a file that can be read
.\"O line by line.
.\"O On many systems a routine of this name reads
.\"O from the file
.\"O .IR /etc/hosts .
-DNS/BIND ¤ò»È¤¦¾ì¹ç¤Ï¤¢¤Þ¤ê°ÕÌ£¤ò»ý¤¿¤Ê¤¤¤¬¡¢
-¥Û¥¹¥È¥Ç¡¼¥¿¥Ù¡¼¥¹¤¬ 1 ¹Ô¤º¤ÄÆɤ߹þ¤Þ¤ì¤ë¥Õ¥¡¥¤¥ë¤Ç¤¢¤ë¾ì¹ç¤Ï°ÕÌ£¤¬¤¢¤ë¡£
-¿¤¯¤Î¥·¥¹¥Æ¥à¤Ç¤Ï¡¢¤³¤Î̾Á°¤Î¥ë¡¼¥Á¥ó¤Ï¥Õ¥¡¥¤¥ë
+DNS/BIND を使う場合はあまり意味を持たないが、
+ホストデータベースが 1 行ずつ読み込まれるファイルである場合は意味がある。
+多くのシステムでは、この名前のルーチンはファイル
.I /etc/hosts
-¤òÆɤ߹þ¤à¡£
+を読み込む。
.\"O .\" e.g., Linux, FreeBSD, UnixWare, HP-UX
.\"O It may be available only when the library was built without DNS support.
.\"O .\" e.g., FreeBSD, AIX
.\"O This function is not reentrant,
.\"O and glibc adds a reentrant version
.\"O .BR gethostent_r ().
-.\" Î㤨¤Ð¡¢Linux, FreeBSD, UnixWare, HP-UX
-DNS ¥µ¥Ý¡¼¥È¤Ê¤·¤Ç¥é¥¤¥Ö¥é¥ê¤¬¥Ó¥ë¥É¤µ¤ì¤¿¾ì¹ç¤Ë¤Î¤ßÍøÍѲÄǽ¤Ç¤¢¤ë¡£
-.\" Î㤨¤Ð¡¢FreeBSD, AIX
-glibc ÈÇ¤Ï ipv6 ¥¨¥ó¥È¥ê¤ò̵»ë¤¹¤ë¡£
-¤³¤Î´Ø¿ô¤Ï¥ê¥¨¥ó¥È¥é¥ó¥È (reentrant) ¤Ç¤Ï¤Ê¤¯¡¢
-glibc ¤Ë¤Ï¥ê¥¨¥ó¥È¥é¥ó¥ÈÈǤÎ
+.\" 例えば、Linux, FreeBSD, UnixWare, HP-UX
+DNS サポートなしでライブラリがビルドされた場合にのみ利用可能である。
+.\" 例えば、FreeBSD, AIX
+glibc 版は ipv6 エントリを無視する。
+この関数はリエントラント (reentrant) ではなく、
+glibc にはリエントラント版の
.BR gethostent_r ()
-¤¬Äɲ䵤줿¡£
+が追加された。
.\"O .SS "GNU Extensions"
-.SS "GNU ³ÈÄ¥"
+.SS "GNU 拡張"
.\"O Glibc2 also has a
.\"O .BR gethostbyname2 ()
.\"O that works like
.\"O .BR gethostbyname (),
.\"O but permits to specify the address family to which the address must belong.
-glibc2 ¤Ë¤Ï
+glibc2 には
.BR gethostbyname2 ()
-¤â¤¢¤ê¡¢
+もあり、
.BR gethostbyname ()
-¤ÈƱ¤¸¤è¤¦¤ËÆ°ºî¤¹¤ë¤¬¡¢
-¤³¤Á¤é¤Ï¥¢¥É¥ì¥¹¤¬Â°¤¹¤ë¥¢¥É¥ì¥¹¥Õ¥¡¥ß¥ê¡¼¤ò»ØÄꤹ¤ë¤³¤È¤¬¤Ç¤¤ë¡£
+と同じように動作するが、
+こちらはアドレスが属するアドレスファミリーを指定することができる。
.LP
.\"O Glibc2 also has reentrant versions
.\"O .BR gethostent_r (),
.\"O .BR gethostbyname_r ()
.\"O and
.\"O .BR gethostbyname2_r ().
-glibc2 ¤Ë¤Ï¥ê¥¨¥ó¥È¥é¥ó¥È¤Ê
+glibc2 にはリエントラントな
.BR gethostent_r (),
.BR gethostbyaddr_r (),
.BR gethostbyname_r ()
-¤È
+と
.BR gethostbyname2_r ()
-¤â¤¢¤ë¡£
+もある。
.\"O The caller supplies a
.\"O .I hostent
.\"O structure
.\"O .I buf
.\"O of size
.\"O .IR buflen .
-¸Æ¤Ó½Ð¤·Â¦¤Ï¡¢À®¸ù»þ¤Ë·ë²Ì¤¬³ÊǼ¤µ¤ì¤ë
+呼び出し側は、成功時に結果が格納される
.I hostent
-¹½Â¤ÂÎ
+構造体
.I ret
-¤È¡¢Â礤µ
+と、大きさ
.I buflen
-¤Î°ì»þŪ¤Êºî¶È¥Ð¥Ã¥Õ¥¡
+ã\81®ä¸\80æ\99\82ç\9a\84ã\81ªä½\9cæ¥ã\83\90ã\83\83ã\83\95ã\82¡
.I buf
-¤òÄ󶡤¹¤ë¡£
+を提供する。
.\"O After the call,
.\"O .I result
.\"O will point to the result on success.
.\"O or if no entry is found
.\"O .I result
.\"O will be NULL.
-¥³¡¼¥ë½ªÎ»¸å¡¢À®¸ù¤·¤¿¾ì¹ç
+コール終了後、成功した場合
.I result
-¤Ï·ë²Ì¤ò»Ø¤·¤Æ¤¤¤ë¡£
-¥¨¥é¡¼¤Î¾ì¹ç¡¢¤Þ¤¿¤Ï¥¨¥ó¥È¥ê¤¬¸«¤Ä¤«¤é¤Ê¤«¤Ã¤¿¾ì¹ç¡¢
+は結果を指している。
+エラーの場合、またはエントリが見つからなかった場合、
.I result
-¤Ï NULL ¤Ë¤Ê¤ë¡£
+は NULL になる。
.\"O The functions return 0 on success and a nonzero error number on failure.
.\"O In addition to the errors returned by the nonreentrant
.\"O versions of these functions, if
.\"O is too small, the functions will return
.\"O .BR ERANGE ,
.\"O and the call should be retried with a larger buffer.
-¤³¤ì¤é¤Î´Ø¿ô¤Ï¡¢À®¸ù¤·¤¿¾ì¹ç 0 ¤òÊÖ¤·¡¢¼ºÇԤξì¹ç¤Ï 0 °Ê³°¤Î¥¨¥é¡¼ÈÖ¹æ¤òÊÖ¤¹¡£
-¤³¤ì¤é¤Î´Ø¿ô¤Î¥ê¥¨¥ó¥È¥é¥ó¥È¤Ç¤Ê¤¤¥Ð¡¼¥¸¥ç¥ó¤¬ÊÖ¤¹¥¨¥é¡¼¤Ë²Ã¤¨¤Æ¡¢
-¤³¤ì¤é¤Î´Ø¿ô¤Ï¡¢
+これらの関数は、成功した場合 0 を返し、失敗の場合は 0 以外のエラー番号を返す。
+これらの関数のリエントラントでないバージョンが返すエラーに加えて、
+これらの関数は、
.I buf
-¤¬¾®¤µ¤¹¤®¤¿¾ì¹ç¤Ë
+が小さすぎた場合に
.B ERANGE
-¤òÊÖ¤¹¡£¤³¤Î¾ì¹ç¤Ï¤â¤Ã¤ÈÂ礤ʥХåե¡¤òÍÑ°Õ¤·¤Æ
-´Ø¿ô¸Æ¤Ó½Ð¤·¤òºÆÅÙ¹Ô¤¦¤Ù¤¤Ç¤¢¤ë¡£
+を返す。この場合はもっと大きなバッファを用意して
+関数呼び出しを再度行うべきである。
.\"O The global variable
.\"O .I h_errno
.\"O is not modified, but the address of a variable in which to store error numbers
.\"O is passed in
.\"O .IR h_errnop .
-Âç°èÊÑ¿ô
+大域変数
.I h_errno
-¤ÏÊѹ¹¤µ¤ì¤Ê¤¤¤¬¡¢¥¨¥é¡¼ÈÖ¹æ¤ò³ÊǼ¤¹¤ëÊÑ¿ô¤Î¥¢¥É¥ì¥¹¤¬
+は変更されないが、エラー番号を格納する変数のアドレスが
.I h_errnop
-¤ËÅϤµ¤ì¤ë¡£
+に渡される。
.\"O .SH BUGS
-.SH ¥Ð¥°
+.SH ã\83\90ã\82°
.\"O .BR gethostbyname ()
.\"O does not recognize components of a dotted IPv4 address string
.\"O that are expressed in hexadecimal.
.BR gethostbyname ()
-¤Ï¡¢16¿Ê¿ôɽ¸½¤Î¥É¥Ã¥È¶èÀÚ¤ê¤Î IPv4 ¥¢¥É¥ì¥¹Ê¸»úÎó¤ÎÍ×ÁǤòǧ¼±¤·¤Ê¤¤¡£
+は、16進数表現のドット区切りの IPv4 アドレス文字列の要素を認識しない。
.\" http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=482973
.\"O .SH "SEE ALSO"
-.SH ´ØÏ¢¹àÌÜ
+.SH 関連項目
.BR getaddrinfo (3),
.\" .BR getipnodebyaddr (3),
.\" .BR getipnodebyname (3),