OSDN Git Service

(split) LDP: Update draft and release (from the previous commit)
[linuxjm/LDP_man-pages.git] / draft / man3 / getaddrinfo.3
index e08eba6..9e1c3f3 100644 (file)
@@ -60,7 +60,7 @@
 .\" Updated 2012-05-29, Akihiro MOTOKI <amotoki@gmail.com>
 .\" Updated 2013-05-01, Akihiro MOTOKI <amotoki@gmail.com>
 .\"
-.TH GETADDRINFO 3 2013\-01\-15 GNU "Linux Programmer's Manual"
+.TH GETADDRINFO 3 2013\-11\-08 GNU "Linux Programmer's Manual"
 .SH 名前
 getaddrinfo, freeaddrinfo, gai_strerror \- ネットワークのアドレスとサービスを変換する
 .SH 書式
@@ -136,16 +136,16 @@ struct addrinfo {
 \fIai_flags\fP
 このフィールドは、追加のオプション (下記) を指定する。 複数のフラグを指定する際には、それらのビット単位の OR をとって指定する。
 .PP
-\fIhints\fP が指し示す構造体の他のすべてのフィールドには 0 か NULL ポインタを適切に入れなければならない。 \fIhints\fP に NULL
-を指定するのは、 \fIai_socktype\fP と \fIai_protocol\fP に 0 を、 \fIai_family\fP に \fBAF_UNSPEC\fP
-を、 \fIai_flags\fP に \fB(AI_V4MAPPED\ |\ AI_ADDRCONFIG)\fP を設定するのと等価である。
-
-\fInode\fP には、数値形式のネットワークアドレス (IPv4 の場合は \fBinet_aton\fP(3)
\81§ã\82µã\83\9dã\83¼ã\83\88ã\81\95ã\82\8cã\81¦ã\81\84ã\82\8bã\83\89ã\83\83ã\83\88å\8cºå\88\87ã\82\8aã\81®æ\95°å­\97ã\81«ã\82\88ã\82\8b表è¨\98ã\80\81 IPv6 ã\81®å ´å\90\88ã\81¯ \fBinet_pton\fP(3)  ã\81§ã\82µã\83\9dã\83¼ã\83\88ã\81\95ã\82\8cã\81¦ã\81\84ã\82\8b 16 é\80²æ\95°ã\81®æ\96\87å­\97å\88\97å½¢å¼\8f)
-もしくは ネットワークホスト名を指定する。 ネットワークホスト名を指定した場合には、そのネットワークアドレスが検索され、 名前解決が行なわれる。
-\fIhints.ai_flags\fP に \fBAI_NUMERICHOST\fP フラグが含まれている場合は、 \fInode\fP
-は数値形式のネットワークアドレスでなければならない。 \fBAI_NUMERICHOST\fP
-フラグを使うと、時間の掛かる可能性のあるネットワークホストアドレスの検索は すべて抑制される。
+\fIhints\fP が指し示す構造体の他のすべてのフィールドには 0 か NULL ポインタを適切に入れなければならない。
+.PP
+\fIhints\fP に NULL を指定するのは、 \fIai_socktype\fP と \fIai_protocol\fP に 0 を、 \fIai_family\fP
+に \fBAF_UNSPEC\fP を、 \fIai_flags\fP に \fB(AI_V4MAPPED\ |\ AI_ADDRCONFIG)\fP
+を設定するのと等価である (POSIX では \fIai_flags\fP には別のデフォルト値が規定されている; 「備考」を参照)。 \fInode\fP
\81«ã\81¯ã\80\81æ\95°å\80¤å½¢å¼\8fã\81®ã\83\8dã\83\83ã\83\88ã\83¯ã\83¼ã\82¯ã\82¢ã\83\89ã\83¬ã\82¹ (IPv4 ã\81®å ´å\90\88ã\81¯ \fBinet_aton\fP(3)  ã\81§ã\82µã\83\9dã\83¼ã\83\88ã\81\95ã\82\8cã\81¦ã\81\84ã\82\8bã\83\89ã\83\83ã\83\88å\8cºå\88\87ã\82\8aã\81®æ\95°å­\97ã\81«ã\82\88ã\82\8b表è¨\98ã\80\81
+IPv6 の場合は \fBinet_pton\fP(3)  でサポートされている 16 進数の文字列形式) もしくは ネットワークホスト名を指定する。
+ネットワークホスト名を指定した場合には、そのネットワークアドレスが検索され、 名前解決が行なわれる。 \fIhints.ai_flags\fP に
+\fBAI_NUMERICHOST\fP フラグが含まれている場合は、 \fInode\fP は数値形式のネットワークアドレスでなければならない。
+\fBAI_NUMERICHOST\fP フラグを使うと、時間の掛かる可能性のあるネットワークホストアドレスの検索は すべて抑制される。
 .PP
 \fIhints.ai_flags\fP に \fBAI_PASSIVE\fP フラグが指定され、かつ \fInode\fP が NULL の場合、
 返されるソケットアドレスは コネクションを \fBaccept\fP(2)  するためのソケットを \fBbind\fP(2)  するのに適したものとなる。
@@ -197,11 +197,14 @@ struct addrinfo {
 \fIai_addr\fP フィールドにはソケットアドレスへのポインタが書き込まれ、 \fIai_addrlen\fP
 フィールドにはソケットアドレスの長さがバイト単位で書き込まれる。
 .PP
-\fIhints.ai_flags\fP が \fBAI_ADDRCONFIG\fP を含む場合、 \fIres\fP が指すリスト
-には、ローカルシステムに最低一つの IPv4 アドレスが設定されている場合のみ
-IPv4 アドレスが返され、 ローカルシステムに最低一つの IPv6 アドレスが
-設定されている場合にのみ IPv6 アドレスが返される。なお、この場合には、
-ループバックアドレスは有効に設定されたアドレスとはみなされない。
+If \fIhints.ai_flags\fP includes the \fBAI_ADDRCONFIG\fP flag, then IPv4 addresses
+are returned in the list pointed to by \fIres\fP only if the local system has
+at least one IPv4 address configured, and IPv6 addresses are returned only
+if the local system has at least one IPv6 address configured.  The loopback
+address is not considered for this case as valid as a configured address.
+This flag is useful on, for example, IPv4\-only systems, to ensure that
+\fBgetaddrinfo\fP()  does not return IPv6 socket addresses that would always
+fail in \fBconnect\fP(2)  or \fBbind\fP(2).
 .PP
 \fIhints.ai_flags\fP に \fBAI_V4MAPPED\fP が指定されていて、 \fIhints.ai_family\fP に
 \fBAF_INET6\fP が指定され、 マッチする IPv6 アドレスが見つからなかった場合、 \fIres\fP が指すリストには IPv4\-mapped
@@ -524,6 +527,6 @@ main(int argc, char *argv[])
 \fBgetaddrinfo_a\fP(3), \fBgethostbyname\fP(3), \fBgetnameinfo\fP(3), \fBinet\fP(3),
 \fBgai.conf\fP(5), \fBhostname\fP(7), \fBip\fP(7)
 .SH この文書について
-この man ページは Linux \fIman\-pages\fP プロジェクトのリリース 3.54 の一部
+この man ページは Linux \fIman\-pages\fP プロジェクトのリリース 3.63 の一部
 である。プロジェクトの説明とバグ報告に関する情報は
 http://www.kernel.org/doc/man\-pages/ に書かれている。