OSDN Git Service

(split) Apply minor changes from v3.32 to v3.35 in the upstream.
[linuxjm/LDP_man-pages.git] / release / man3 / getipnodebyname.3
1 .\" Copyright 2000 Sam Varshavchik <mrsam@courier-mta.com>
2 .\"
3 .\" Permission is granted to make and distribute verbatim copies of this
4 .\" manual provided the copyright notice and this permission notice are
5 .\" preserved on all copies.
6 .\"
7 .\" Permission is granted to copy and distribute modified versions of this
8 .\" manual under the conditions for verbatim copying, provided that the
9 .\" entire resulting derived work is distributed under the terms of a
10 .\" permission notice identical to this one.
11 .\"
12 .\" Since the Linux kernel and libraries are constantly changing, this
13 .\" manual page may be incorrect or out-of-date.  The author(s) assume no
14 .\" responsibility for errors or omissions, or for damages resulting from
15 .\" the use of the information contained herein.  The author(s) may not
16 .\" have taken the same level of care in the production of this manual,
17 .\" which is licensed free of charge, as they might when working
18 .\" professionally.
19 .\"
20 .\" Formatted or processed versions of this manual, if unaccompanied by
21 .\" the source, must acknowledge the copyright and authors of this work.
22 .\"
23 .\" References: RFC 2553
24 .\"
25 .\" Japanese Version Copyright (c) 2001 NAKANO Takeo all rights reserved.
26 .\" Translated Sun Jan 14 2001 by NAKANO Takeo <nakano@apm.seikei.ac.jp>
27 .\" Updated Tue Nov 26 2002 by Kentaro Shirakata <argrath@ub32.org>
28 .\"
29 .\"WORD:        null pointer    ¥Ì¥ë¡¦¥Ý¥¤¥ó¥¿¡¼
30 .\"
31 .TH GETIPNODEBYNAME 3 2010-09-04 "Linux" "Linux Programmer's Manual"
32 .SH Ì¾Á°
33 getipnodebyname, getipnodebyaddr, freehostent \- ¥Í¥Ã¥È¥ï¡¼¥¯¥Û¥¹¥È¤Î̾Á°¤È¥¢¥É¥ì¥¹¤Î¼èÆÀ
34 .SH ½ñ¼°
35 .nf
36 .B #include <sys/types.h>
37 .B #include <sys/socket.h>
38 .B #include <netdb.h>
39 .sp
40 .BI "struct hostent *getipnodebyname(const char *" name ", int " af ,
41 .BI "                                int " flags ", int *" error_num );
42 .sp
43 .BI "struct hostent *getipnodebyaddr(const void *" addr ", size_t " len ,
44 .BI "                                int " af ", int *" "error_num" );
45 .sp
46 .BI "void freehostent(struct hostent *" "ip" );
47 .fi
48 .SH ÀâÌÀ
49 ¤³¤ì¤é¤Î´Ø¿ô¤ÏÈó¿ä¾©¤Ç¤¢¤ë (glibc ¤Ç¤ÏÍøÍѤǤ­¤Ê¤¤)¡£
50 Âå¤ï¤ê¤Ë
51 .BR getaddrinfo (3)
52 ¤È
53 .BR getnameinfo (3)
54 ¤ò»È¤¦¤³¤È¡£
55 .LP
56 .BR getipnodebyname ()
57 ¤È
58 .BR getipnodebyaddr ()
59 ¤Ï¡¢¥Í¥Ã¥È¥ï¡¼¥¯¥Û¥¹¥È¤Î̾Á°¤È¥¢¥É¥ì¥¹¤òÊÖ¤¹¡£
60 ¤³¤ì¤é¤Î´Ø¿ô¤Ï¡¢°Ê²¼¤Î¹½Â¤ÂΤؤΥݥ¤¥ó¥¿¤òÊÖ¤¹¡£
61 .sp
62 .in +4n
63 .nf
64 struct hostent {
65     char  *h_name;
66     char **h_aliases;
67     int    h_addrtype;
68     int    h_length;
69     char **h_addr_list;
70 };
71 .fi
72 .in
73 .PP
74 ¤³¤ì¤é¤Î´Ø¿ô¤Ï¡¢ IPv4 ¥Í¥Ã¥È¥ï¡¼¥¯¥¢¥É¥ì¥¹¥Õ¥¡¥ß¥ê¤Ë¤·¤«¥¢¥¯¥»¥¹¤Ç¤­¤Ê¤¤
75 .BR gethostbyname (3)
76 ¤ä
77 .BR gethostbyaddr (3)
78 ¤òÃÖ¤­´¹¤¨¤ë¤â¤Î¤Ç¤¢¤ë¡£
79 .BR getipnodebyname ()
80 ´Ø¿ô¤È
81 .BR getipnodebyaddr ()
82 ´Ø¿ô¤ÏÊ£¿ô¤Î¥Í¥Ã¥È¥ï¡¼¥¯¥¢¥É¥ì¥¹¥Õ¥¡¥ß¥ê¡¼¤Ë¥¢¥¯¥»¥¹²Äǽ¤Ë¤Ê¤Ã¤Æ¤¤¤ë¡£
83 .PP
84 ¤³¤ì¤é¤Î´Ø¿ô¤Ï¡¢
85 .B gethostby
86 ¤Î´Ø¿ô·²¤È°Û¤Ê¤ê¡¢Æ°Åª¤Ë³ä¤êÅö¤Æ¤é¤ì¤¿¥á¥â¥ê¤Ø¤Î¥Ý¥¤¥ó¥¿¤òÊÖ¤¹¡£
87 ¸Æ¤Ó½Ð¤·¸µ¤¬¤³¤ì¤é¤Î
88 .I hostent
89 ¹½Â¤ÂΤòɬÍפȤ·¤Ê¤¯¤Ê¤Ã¤¿¸å¤Ï¡¢
90 .BR freehostent ()
91 ´Ø¿ô¤òÍѤ¤¤ì¤ÐưŪ¤Ê³ä¤êÅö¤Æ¥á¥â¥ê¤ò²òÊü¤Ç¤­¤ë¡£
92 .SS getipnodebyname() ¤Î°ú¤­¿ô
93 .BR getipnodebyname ()
94 ´Ø¿ô¤Ï
95 .I name
96 °ú¤­¿ô¤Ç»ØÄꤵ¤ì¤¿¥Û¥¹¥È¤Î¥Í¥Ã¥È¥ï¡¼¥¯¥¢¥É¥ì¥¹¤ò°ú¤¯¡£
97 .I af
98 °ú¤­¿ô¤Ë¤Ï°Ê²¼¤ÎÃͤΤ¤¤º¤ì¤«¤ò»ØÄꤹ¤ë¡£
99 .TP
100 .B AF_INET
101 .I name
102 °ú¤­¿ô¤Ï¡¢¥É¥Ã¥È¤Ç 4 ¤Ä¤Ë¶èÀÚ¤é¤ì¤¿ IPv4 ¥¢¥É¥ì¥¹¤«¡¢
103 IPv4 ¥Í¥Ã¥È¥ï¡¼¥¯¥Û¥¹¥È¤Î̾Á°¤Ø¤Î¥Ý¥¤¥ó¥¿¤Ç¤¢¤ë¡£
104 .TP
105 .B AF_INET6
106 .I name
107 °ú¤­¿ô¤Ï¡¢16 ¿Ê¤Î IPv6 ¥¢¥É¥ì¥¹¤«¡¢
108 IPv6 ¥Í¥Ã¥È¥ï¡¼¥¯¥Û¥¹¥È¤Î̾Á°¤Ø¤Î¥Ý¥¤¥ó¥¿¤Ç¤¢¤ë¡£
109 .PP
110 .I flags
111 ¥Ñ¥é¥á¡¼¥¿¤Ë¤ÏÄɲäΥª¥×¥·¥ç¥ó¤ò»ØÄꤹ¤ë¡£
112 Ê£¿ô¤Î¥Õ¥é¥°¤ò»ØÄꤹ¤ë¤Ë¤Ï¡¢¤½¤ì¤é¤Î¥Ó¥Ã¥Èñ°Ì¤Î OR ¤ò¤È¤Ã¤Æ»ØÄꤹ¤ì¤Ð¤è¤¤¡£
113 ¥ª¥×¥·¥ç¥ó¤ò¤Ò¤È¤Ä¤â»ØÄꤷ¤¿¤¯¤Ê¤¤¤È¤­¤Ë¤Ï¡¢
114 .I flags
115 ¤Ë 0 ¤òÀßÄꤹ¤ëɬÍפ¬¤¢¤ë¡£
116 .TP
117 .B AI_V4MAPPED
118 ¤³¤Î¥Õ¥é¥°¤Ï
119 .B AF_INET6
120 ¤È¶¦¤ËÍѤ¤¤é¤ì¡¢IPv6 ¥¢¥É¥ì¥¹¤ÎÂå¤ï¤ê¤Ë IPv4 ¥¢¥É¥ì¥¹¤òÌ䤤¹ç¤ï¤»¤ë¡£
121 Ì䤤¹ç¤ï¤»¤ë IPv4 ¥¢¥É¥ì¥¹¤Ï IPv6 ¥¢¥É¥ì¥¹¤Ë¥Þ¥Ã¥×¤µ¤ì¤ë¡£
122 .TP
123 .B AI_ALL
124 ¤³¤Î¥Õ¥é¥°¤Ï
125 .B AI_V4MAPPED
126 ¤È¶¦¤ËÍѤ¤¤é¤ì¡¢IPv4 ¥¢¥É¥ì¥¹¤È IPv6 ¥¢¥É¥ì¥¹¤ÎξÊý¤òÌ䤤¹ç¤ï¤»¤ë¡£
127 ¸«¤Ä¤«¤Ã¤¿ IPv4 ¥¢¥É¥ì¥¹¤Ï¡¢¤¹¤Ù¤Æ IPv6 ¥¢¥É¥ì¥¹¤Ë¥Þ¥Ã¥×¤µ¤ì¤ë¡£
128 .TP
129 .B AI_ADDRCONFIG
130 ¤³¤Î¥Õ¥é¥°¤Ï
131 .B AF_INET6
132 ¤È¶¦¤ËÍѤ¤¤é¤ì¡¢
133 IPv6 ¤¬³ä¤êÅö¤Æ¤é¤ì¤¿¥Í¥Ã¥È¥ï¡¼¥¯¥¤¥ó¥¿¡¼¥Õ¥§¡¼¥¹¤¬
134 ¥·¥¹¥Æ¥à¤Ë¤Ò¤È¤Ä¤â¤Ê¤±¤ì¤Ð IPv6 ¥¢¥É¥ì¥¹¤ÎÌ䤤¹ç¤ï¤»¤ò¹Ô¤ï¤º¡¢
135 IPv4 ¤¬³ä¤êÅö¤Æ¤é¤ì¤¿¥Í¥Ã¥È¥ï¡¼¥¯¥¤¥ó¥¿¡¼¥Õ¥§¡¼¥¹¤¬
136 ¥·¥¹¥Æ¥à¤Ë¤Ò¤È¤Ä¤â¤Ê¤±¤ì¤Ð IPv4 ¥¢¥É¥ì¥¹¤ÎÌ䤤¹ç¤ï¤»¤ò¹Ô¤ï¤Ê¤¤¤è¤¦¤ËÍ׵᤹¤ë¡£
137 ¤³¤Î¥Õ¥é¥°¤ÏñÆȤǤ⡢¤¢¤ë¤¤¤Ï
138 .B AI_V4MAPPED
139 ¥Õ¥é¥°¤È¶¦¤Ë¤Ç¤âÍѤ¤¤ë¤³¤È¤¬¤Ç¤­¤ë¡£
140 .TP
141 .B AI_DEFAULT
142 ¤³¤Î¥Õ¥é¥°¤Ï
143 .BR (AI_ADDRCONFIG | AI_V4MAPPED)
144 ¤ÈÅù²Á¤Ç¤¢¤ë¡£
145 .SS "getipnodebyaddr() ¤Î°ú¤­¿ô"
146 .BR getipnodebyaddr ()
147 ´Ø¿ô¤Ï¡¢¥Í¥Ã¥È¥ï¡¼¥¯¥¢¥É¥ì¥¹¤¬
148 .I addr
149 °ú¤­¿ô¤Ç»ØÄꤵ¤ì¤¿¥Û¥¹¥È¤Î̾Á°¤ò°ú¤¯¡£
150 .I af
151 °ú¤­¿ô¤Ë¤Ï°Ê²¼¤ÎÃͤΤ¤¤º¤ì¤«¤ò»ØÄꤹ¤ë¡£
152 .TP
153 .B AF_INET
154 .I addr
155 °ú¤­¿ô¤Ï
156 .I struct in_addr
157 ¤Ø¤Î¥Ý¥¤¥ó¥¿¡¼¤Ç¤¢¤ê¡¢
158 .I len
159 °ú¤­¿ô¤Ï
160 .I sizeof(struct in_addr)
161 ¤ËÀßÄꤷ¤Ê¤±¤ì¤Ð¤Ê¤é¤Ê¤¤¡£
162 .TP
163 .B AF_INET6
164 .I addr
165 °ú¤­¿ô¤Ï
166 .I struct in6_addr
167 ¤Ø¤Î¥Ý¥¤¥ó¥¿¡¼¤Ç¤¢¤ê¡¢
168 .I len
169 °ú¤­¿ô¤Ï
170 .I sizeof(struct in6_addr)
171 ¤ËÀßÄꤷ¤Ê¤±¤ì¤Ð¤Ê¤é¤Ê¤¤¡£
172 .SH ÊÖ¤êÃÍ
173 ¥¨¥é¡¼¤¬µ¯¤³¤ë¤È¥Ì¥ë¡¦¥Ý¥¤¥ó¥¿¡¼¤¬ÊÖ¤µ¤ì¡¢
174 .I error_num
175 ¤Ë°Ê²¼¤Ë¥ê¥¹¥È¤µ¤ì¤¿¥¨¥é¡¼¥³¡¼¥É¤Î¤¤¤º¤ì¤«¤¬ÀßÄꤵ¤ì¤ë¡£
176 .TP
177 .B HOST_NOT_FOUND
178 ¥Û¥¹¥È̾¤Þ¤¿¤Ï¥Í¥Ã¥È¥ï¡¼¥¯¥¢¥É¥ì¥¹¤¬¸«¤Ä¤«¤é¤Ê¤«¤Ã¤¿¡£
179 .TP
180 .B NO_ADDRESS
181 ¥É¥á¥¤¥ó¥Í¡¼¥à¥µ¡¼¥Ð¡¼¤Ï
182 ¤½¤Î¥Í¥Ã¥È¥ï¡¼¥¯¥¢¥É¥ì¥¹¤Þ¤¿¤Ï¥Í¥Ã¥È¥ï¡¼¥¯Ì¾¤òǧ¼±¤·¤¿¤¬¡¢
183 ÊÖ»ö¤¬Ê֤äƤ³¤Ê¤«¤Ã¤¿¡£¸¶°ø¤È¤·¤Æ¤Ï¡¢
184 Î㤨¤Ð IPv4 ¥¢¥É¥ì¥¹¤·¤«»ý¤¿¤Ê¤¤¥Í¥Ã¥È¥ï¡¼¥¯¥Û¥¹¥È¤ËÂФ·¤Æ
185 IPv6 ¤Î¾ðÊó¤ÎÌ䤤¹ç¤ï¤»¤¬¹Ô¤ï¤ì¤¿ (¤ª¤è¤Ó¤½¤ÎµÕ) ¤Ê¤É¤¬¹Í¤¨¤é¤ì¤ë¡£
186 .TP
187 .B NO_RECOVERY
188 ¥É¥á¥¤¥ó¥Í¡¼¥à¥µ¡¼¥Ð¡¼¤«¤é¹±µ×Ū¤Ê¼ºÇÔ (permanent failure)
189 ¤ò°ÕÌ£¤¹¤ëÊÖ»ö¤¬ÊÖ¤µ¤ì¤¿¡£
190 .TP
191 .B TRY_AGAIN
192 ¥Í¡¼¥à¥µ¡¼¥Ð¡¼¤«¤é°ì»þŪ¤Ê¼ºÇÔ (temporary failure)
193 ¤ò°ÕÌ£¤¹¤ëÊÖ»ö¤¬ÊÖ¤µ¤ì¤¿¡£¼¡¤Ë¤Ï¤â¤¦¤Á¤ç¤Ã¤È±¿¤¬É¬Íפ«¤â¡£
194 .PP
195 Ì䤤¹ç¤ï¤»¤ËÀ®¸ù¤¹¤ë¤È¡¢
196 .I hostent
197 ¹½Â¤ÂΤؤΥݥ¤¥ó¥¿¤¬ÊÖ¤µ¤ì¤ë¡£
198 ¤³¤Î¹½Â¤ÂΤϰʲ¼¤Î¥Õ¥£¡¼¥ë¥É¤«¤é¤Ê¤ë¡£
199 .TP
200 .I h_name
201 ¤³¤ì¤Ï¤³¤Î¥Í¥Ã¥È¥ï¡¼¥¯¥Û¥¹¥È¤Î¥ª¥Õ¥£¥·¥ã¥ë¤Ê̾Á°¤Ç¤¢¤ë¡£
202 .TP
203 .I h_aliases
204 ¤³¤ì¤Ï¡¢¤½¤Î¥Û¥¹¥È¤Î¥ª¥Õ¥£¥·¥ã¥ë¤Ç¤Ê¤¤ÊÌ̾¤Ø¤Î¥Ý¥¤¥ó¥¿¡¼¤ÎÇÛÎó¤Ç¤¢¤ë¡£
205 ÇÛÎó¤Ï¥Ì¥ë¡¦¥Ý¥¤¥ó¥¿¡¼¤Ç½ªÃ¼¤¹¤ë¡£
206 .TP
207 .I h_addrtype
208 ¤³¤ì¤Ï
209 .BR getipnodebyname ()
210 ¤Þ¤¿¤Ï
211 .BR getipnodebyaddr ()
212 ¤ËÍ¿¤¨¤é¤ì¤¿
213 .I af
214 °ú¤­¿ô¤Î¥³¥Ô¡¼¤Ç¤¢¤ë¡£
215 .I af
216 °ú¤­¿ô¤¬
217 .B AF_INET
218 ¤Ê¤é
219 .I h_addrtype
220 ¤Ï¾ï¤Ë
221 .B AF_INET
222 ¤Ë¤Ê¤ê¡¢
223 .I af
224 °ú¤­¿ô¤¬
225 .B AF_INET6
226 ¤Ê¤é
227 .I h_addrtype
228 ¤â¾ï¤Ë
229 .B AF_INET6
230 ¤Ë¤Ê¤ë¡£
231 .TP
232 .I h_length
233 ¤³¤Î¥Õ¥£¡¼¥ë¥É¤Ï¡¢
234 .I h_addrtype
235 ¤¬
236 .B AF_INET
237 ¤Ê¤é
238 .I sizeof(struct in_addr)
239 ¤Ë¡¢
240 .I h_addrtype
241 ¤¬
242 .B AF_INET6
243 ¤Ê¤é
244 .I sizeof(struct in6_addr)
245 ¤ËÀßÄꤵ¤ì¤ë¡£
246 .TP
247 .I h_addr_list
248 ¤³¤ì¤Ï¤Ò¤È¤Ä°Ê¾å¤Î¥Ý¥¤¥ó¥¿¡¼¤ÎÇÛÎó¤Ç¡¢
249 ¤½¤ì¤¾¤ì¤Î¥Ý¥¤¥ó¥¿¡¼¤Ï¡¢
250 ¤½¤Î¥Í¥Ã¥È¥ï¡¼¥¯¥Û¥¹¥È¤ËÂбþ¤¹¤ë¥Í¥Ã¥È¥ï¡¼¥¯¥¢¥É¥ì¥¹¹½Â¤ÂΤò»Ø¤¹¡£
251 ¤³¤ÎÇÛÎó¤Ï¥Ì¥ë¡¦¥Ý¥¤¥ó¥¿¡¼¤Ç½ªÃ¼¤¹¤ë¡£
252 .SH ½àµò
253 RFC\ 2553.
254 .\" POSIX.1-2001 ¤Ë¤Ï¤Ê¤¤¡£
255 .SH Ãí°Õ
256 ¤³¤ì¤é¤Î´Ø¿ô¤Ï glibc 2.1.91-95 ¤Ë¸ºß¤·¤¿¤¬¡¢ºÆ¤Óºï½ü¤µ¤ì¤¿¡£
257 ¤¤¤¯¤Ä¤«¤Î UNIX É÷¥·¥¹¥Æ¥à¤Ï¤³¤ì¤é¤Î´Ø¿ô¤ËÂбþ¤·¤Æ¤¤¤ë¤¬¡¢
258 ¤³¤ì¤é¤Î´Ø¿ô¤ÏÁ´¤Æ¿ä¾©¤µ¤ì¤Ê¤¤¡£
259 .SH ´ØÏ¢¹àÌÜ
260 .BR getaddrinfo (3),
261 .BR getnameinfo (3),
262 .BR inet_ntop (3),
263 .BR inet_pton (3)