OSDN Git Service

(split) LDP: Translation snapshots for LDP 3.63
[linuxjm/LDP_man-pages.git] / po4a / net / po / ja.po
1 # SOME DESCRIPTIVE TITLE
2 # Copyright (C) YEAR Free Software Foundation, Inc.
3 # This file is distributed under the same license as the PACKAGE package.
4 # FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
5 #
6 msgid ""
7 msgstr ""
8 "Project-Id-Version: PACKAGE VERSION\n"
9 "POT-Creation-Date: 2014-04-13 10:27+0900\n"
10 "PO-Revision-Date: 2014-04-14 01:15+0900\n"
11 "Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
12 "Language-Team: LANGUAGE <LL@li.org>\n"
13 "Language: \n"
14 "MIME-Version: 1.0\n"
15 "Content-Type: text/plain; charset=UTF-8\n"
16 "Content-Transfer-Encoding: 8bit\n"
17
18 #. type: TH
19 #: build/C/man7/arp.7:13
20 #, no-wrap
21 msgid "ARP"
22 msgstr "ARP"
23
24 #. type: TH
25 #: build/C/man7/arp.7:13
26 #, no-wrap
27 msgid "2008-11-25"
28 msgstr "2008-11-25"
29
30 #. type: TH
31 #: build/C/man7/arp.7:13 build/C/man3/cmsg.3:11 build/C/man7/ddp.7:12
32 #: build/C/man5/gai.conf.5:19 build/C/man1/getent.1:24
33 #: build/C/man3/getipnodebyname.3:26 build/C/man2/getpeername.2:42
34 #: build/C/man5/host.conf.5:26 build/C/man7/hostname.7:39
35 #: build/C/man5/hosts.5:27 build/C/man5/hosts.equiv.5:6 build/C/man7/icmp.7:12
36 #: build/C/man3/inet_ntop.3:26 build/C/man3/inet_pton.3:27
37 #: build/C/man7/ip.7:36 build/C/man7/ipv6.7:86 build/C/man7/netdevice.7:18
38 #: build/C/man5/nss.5:19 build/C/man5/nsswitch.conf.5:25
39 #: build/C/man7/packet.7:12 build/C/man5/protocols.5:29 build/C/man7/raw.7:13
40 #: build/C/man3/rcmd.3:43 build/C/man3/rexec.3:41 build/C/man5/services.5:34
41 #: build/C/man2/shutdown.2:40 build/C/man7/tcp.7:76 build/C/man7/udp.7:12
42 #: build/C/man7/udplite.7:27 build/C/man7/unix.7:18 build/C/man7/x25.7:12
43 #, no-wrap
44 msgid "Linux"
45 msgstr "Linux"
46
47 #. type: TH
48 #: build/C/man7/arp.7:13 build/C/man3/byteorder.3:32 build/C/man3/cmsg.3:11
49 #: build/C/man7/ddp.7:12 build/C/man3/endian.3:28 build/C/man3/ether_aton.3:31
50 #: build/C/man5/gai.conf.5:19 build/C/man3/getaddrinfo.3:43
51 #: build/C/man3/getaddrinfo_a.3:29 build/C/man3/gethostbyname.3:38
52 #: build/C/man3/getipnodebyname.3:26 build/C/man3/getnameinfo.3:10
53 #: build/C/man3/getnetent.3:30 build/C/man3/getnetent_r.3:26
54 #: build/C/man2/getpeername.2:42 build/C/man3/getprotoent.3:30
55 #: build/C/man3/getprotoent_r.3:26 build/C/man3/getservent.3:34
56 #: build/C/man3/getservent_r.3:26 build/C/man7/hostname.7:39
57 #: build/C/man5/hosts.5:27 build/C/man5/hosts.equiv.5:6 build/C/man7/icmp.7:12
58 #: build/C/man3/inet.3:42 build/C/man3/inet_ntop.3:26
59 #: build/C/man3/inet_pton.3:27 build/C/man7/ip.7:36 build/C/man7/ipv6.7:86
60 #: build/C/man7/netdevice.7:18 build/C/man8/nscd.8:23
61 #: build/C/man5/nscd.conf.5:20 build/C/man5/nss.5:19
62 #: build/C/man5/nsswitch.conf.5:25 build/C/man7/packet.7:12
63 #: build/C/man5/protocols.5:29 build/C/man7/raw.7:13 build/C/man3/rcmd.3:43
64 #: build/C/man5/resolv.conf.5:23 build/C/man3/resolver.3:32
65 #: build/C/man3/rexec.3:41 build/C/man5/services.5:34
66 #: build/C/man3/setnetgrent.3:10 build/C/man2/shutdown.2:40
67 #: build/C/man7/tcp.7:76 build/C/man7/udp.7:12 build/C/man7/udplite.7:27
68 #: build/C/man7/unix.7:18 build/C/man7/x25.7:12
69 #, no-wrap
70 msgid "Linux Programmer's Manual"
71 msgstr "Linux Programmer's Manual"
72
73 #. type: SH
74 #: build/C/man7/arp.7:14 build/C/man3/byteorder.3:33 build/C/man3/cmsg.3:12
75 #: build/C/man7/ddp.7:13 build/C/man3/endian.3:29 build/C/man3/ether_aton.3:32
76 #: build/C/man5/gai.conf.5:20 build/C/man3/getaddrinfo.3:44
77 #: build/C/man3/getaddrinfo_a.3:30 build/C/man1/getent.1:25
78 #: build/C/man3/gethostbyname.3:39 build/C/man3/getipnodebyname.3:27
79 #: build/C/man3/getnameinfo.3:11 build/C/man3/getnetent.3:31
80 #: build/C/man3/getnetent_r.3:27 build/C/man2/getpeername.2:43
81 #: build/C/man3/getprotoent.3:31 build/C/man3/getprotoent_r.3:27
82 #: build/C/man3/getservent.3:35 build/C/man3/getservent_r.3:27
83 #: build/C/man5/host.conf.5:27 build/C/man7/hostname.7:40
84 #: build/C/man5/hosts.5:28 build/C/man5/hosts.equiv.5:7 build/C/man7/icmp.7:13
85 #: build/C/man3/inet.3:43 build/C/man3/inet_ntop.3:27
86 #: build/C/man3/inet_pton.3:28 build/C/man7/ip.7:37 build/C/man7/ipv6.7:87
87 #: build/C/man7/netdevice.7:19 build/C/man5/networks.5:27
88 #: build/C/man8/nscd.8:24 build/C/man5/nscd.conf.5:21 build/C/man5/nss.5:20
89 #: build/C/man5/nsswitch.conf.5:26 build/C/man7/packet.7:13
90 #: build/C/man5/protocols.5:30 build/C/man7/raw.7:14 build/C/man3/rcmd.3:44
91 #: build/C/man5/resolv.conf.5:25 build/C/man3/resolver.3:33
92 #: build/C/man3/rexec.3:42 build/C/man5/services.5:35
93 #: build/C/man3/setnetgrent.3:11 build/C/man2/shutdown.2:41
94 #: build/C/man7/tcp.7:77 build/C/man7/udp.7:13 build/C/man7/udplite.7:28
95 #: build/C/man7/unix.7:19 build/C/man7/x25.7:13
96 #, no-wrap
97 msgid "NAME"
98 msgstr "名前"
99
100 #. type: Plain text
101 #: build/C/man7/arp.7:16
102 msgid "arp - Linux ARP kernel module."
103 msgstr "arp - Linux ARP カーネルモジュール"
104
105 #. type: SH
106 #: build/C/man7/arp.7:16 build/C/man3/byteorder.3:48 build/C/man3/cmsg.3:37
107 #: build/C/man7/ddp.7:23 build/C/man3/endian.3:53 build/C/man3/ether_aton.3:57
108 #: build/C/man5/gai.conf.5:22 build/C/man3/getaddrinfo.3:75
109 #: build/C/man3/getaddrinfo_a.3:50 build/C/man1/getent.1:30
110 #: build/C/man3/gethostbyname.3:129 build/C/man3/getipnodebyname.3:44
111 #: build/C/man3/getnameinfo.3:32 build/C/man3/getnetent.3:48
112 #: build/C/man3/getnetent_r.3:62 build/C/man2/getpeername.2:50
113 #: build/C/man3/getprotoent.3:48 build/C/man3/getprotoent_r.3:59
114 #: build/C/man3/getservent.3:52 build/C/man3/getservent_r.3:59
115 #: build/C/man5/host.conf.5:29 build/C/man7/hostname.7:42
116 #: build/C/man5/hosts.5:32 build/C/man5/hosts.equiv.5:11
117 #: build/C/man7/icmp.7:15 build/C/man3/inet.3:75 build/C/man3/inet_ntop.3:36
118 #: build/C/man3/inet_pton.3:36 build/C/man7/ip.7:53 build/C/man7/ipv6.7:99
119 #: build/C/man7/netdevice.7:25 build/C/man5/networks.5:29
120 #: build/C/man8/nscd.8:26 build/C/man5/nscd.conf.5:23 build/C/man5/nss.5:22
121 #: build/C/man5/nsswitch.conf.5:28 build/C/man7/packet.7:25
122 #: build/C/man5/protocols.5:32 build/C/man7/raw.7:22 build/C/man3/rcmd.3:92
123 #: build/C/man5/resolv.conf.5:29 build/C/man3/resolver.3:85
124 #: build/C/man3/rexec.3:56 build/C/man5/services.5:37
125 #: build/C/man3/setnetgrent.3:44 build/C/man2/shutdown.2:47
126 #: build/C/man7/tcp.7:87 build/C/man7/udp.7:23 build/C/man7/udplite.7:38
127 #: build/C/man7/unix.7:29 build/C/man7/x25.7:21
128 #, no-wrap
129 msgid "DESCRIPTION"
130 msgstr "説明"
131
132 #. type: Plain text
133 #: build/C/man7/arp.7:24
134 msgid ""
135 "This kernel protocol module implements the Address Resolution Protocol "
136 "defined in RFC\\ 826.  It is used to convert between Layer2 hardware "
137 "addresses and IPv4 protocol addresses on directly connected networks.  The "
138 "user normally doesn't interact directly with this module except to configure "
139 "it; instead it provides a service for other protocols in the kernel."
140 msgstr ""
141 "このカーネルプロトコルモジュールは、 RFC\\ 826 で定義されている Address "
142 "Resolution Protocol を 実装したものである。 ARP は、ダイレクトに接続された"
143 "ネットワーク上で、 第 2 層のハードウェアアドレスをIPv4 プロトコルアドレスに "
144 "変換するために用いられる。ユーザーは設定の場合を除いて 通常直接このモジュール"
145 "に関ることはない。 これはカーネル内部の他のプロトコルにサービスを提供するもの"
146 "である。"
147
148 #. type: Plain text
149 #: build/C/man7/arp.7:37
150 msgid ""
151 "A user process can receive ARP packets by using B<packet>(7)  sockets.  "
152 "There is also a mechanism for managing the ARP cache in user-space by using "
153 "B<netlink>(7)  sockets.  The ARP table can also be controlled via B<ioctl>"
154 "(2)  on any B<AF_INET> socket."
155 msgstr ""
156 "ユーザープロセスは、 B<packet>(7)  ソケットを用いれば ARP パケットを受信する"
157 "ことができる。 ARP キャッシュをユーザー空間で管理することもできる。 これには "
158 "B<netlink>(7)  を用いる。 ARP テーブルも制御可能で、これには任意の "
159 "B<AF_INET> ソケットに B<ioctl>(2)  を用いる。"
160
161 #. type: Plain text
162 #: build/C/man7/arp.7:49
163 msgid ""
164 "The ARP module maintains a cache of mappings between hardware addresses and "
165 "protocol addresses.  The cache has a limited size so old and less frequently "
166 "used entries are garbage-collected.  Entries which are marked as permanent "
167 "are never deleted by the garbage-collector.  The cache can be directly "
168 "manipulated by the use of ioctls and its behavior can be tuned by the I</"
169 "proc> interfaces described below."
170 msgstr ""
171 "ARP モジュールはハードウェアアドレスからプロトコルアドレスへの マッピングの"
172 "キャッシュを管理する。キャッシュの大きさには制限が あるので、古いエントリや利"
173 "用されないエントリはガベージコレクト される。 permanent (保存) マークがつけら"
174 "れたエントリは、 決してガベージコレクタによって消去されない。 ioctl を用いれ"
175 "ばキャッシュを直接操作することもできる。 また後述の I</proc> インタフェースに"
176 "よりキャッシュの振る舞いを調整できる。"
177
178 #. type: Plain text
179 #: build/C/man7/arp.7:72
180 msgid ""
181 "When there is no positive feedback for an existing mapping after some time "
182 "(see the I</proc> interfaces below), a neighbor cache entry is considered "
183 "stale.  Positive feedback can be gotten from a higher layer; for example "
184 "from a successful TCP ACK.  Other protocols can signal forward progress "
185 "using the B<MSG_CONFIRM> flag to B<sendmsg>(2).  When there is no forward "
186 "progress, ARP tries to reprobe.  It first tries to ask a local arp daemon "
187 "B<app_solicit> times for an updated MAC address.  If that fails and an old "
188 "MAC address is known, a unicast probe is sent B<ucast_solicit> times.  If "
189 "that fails too, it will broadcast a new ARP request to the network.  "
190 "Requests are sent only when there is data queued for sending."
191 msgstr ""
192 "存在しているマッピングに対して、 正のフィードバックが一定時間ない (後述の I</"
193 "proc> インタフェースを見よ) と、 近傍キャッシュエントリ (neighbor cache "
194 "entry) は 古くなった (stale) とみなされる。 正のフィードバックは高位のレイ"
195 "ヤーからも取得できる (例えば TCP ACK が成功した場合など)。 他のプロトコル"
196 "は、 B<sendmsg>(2)  に B<MSG_CONFIRM> フラグを用いることによって、 フォワード"
197 "プログレス (forward progress) をシグナルできる。 フォワードプログレスがなけれ"
198 "ば、 ARP は再びプローブを試みる。 まずローカルな arp デーモンに問合わせを行"
199 "い、 更新された MAC アドレスを取得しようとする。 このリクエストに "
200 "B<app_solicit> 回失敗すると、古い MAC アドレスがわかっている場合は、 unicast "
201 "のプローブが B<ucaset_solicit> 回送られる。これにも失敗すると、新しい ARP リ"
202 "クエスト をネットワークにブロードキャストする。 リクエストは、データが送信"
203 "キューにある場合のみ送られる。"
204
205 #. type: Plain text
206 #: build/C/man7/arp.7:77
207 msgid ""
208 "Linux will automatically add a nonpermanent proxy arp entry when it receives "
209 "a request for an address it forwards to and proxy arp is enabled on the "
210 "receiving interface.  When there is a reject route for the target, no proxy "
211 "arp entry is added."
212 msgstr ""
213 "Linux は、あるアドレスへのリクエストを受信・フォワードし、 受信したインター"
214 "フェースで代理 arp が有効になっている場合には、 自動的にそのアドレスを "
215 "nonpermanent な代理 arp エントリに追加する。 そのターゲットに reject route が"
216 "あった場合には、 代理 arp エントリは一切追加されない。"
217
218 #. type: SS
219 #: build/C/man7/arp.7:77 build/C/man7/ddp.7:144 build/C/man7/ip.7:1047
220 #: build/C/man7/netdevice.7:64 build/C/man7/packet.7:449
221 #: build/C/man7/tcp.7:1109 build/C/man7/udp.7:202 build/C/man7/unix.7:284
222 #, no-wrap
223 msgid "Ioctls"
224 msgstr "ioctl"
225
226 #. type: Plain text
227 #: build/C/man7/arp.7:84
228 msgid ""
229 "Three ioctls are available on all B<AF_INET> sockets.  They take a pointer "
230 "to a I<struct arpreq> as their argument."
231 msgstr ""
232 "すべての B<AF_INET> ソケットでは、 3 つの ioctl が使用できる。 これらは "
233 "I<struct arpreq> へのポインタを引数に取る。"
234
235 #. type: Plain text
236 #: build/C/man7/arp.7:94
237 #, no-wrap
238 msgid ""
239 "struct arpreq {\n"
240 "    struct sockaddr arp_pa;      /* protocol address */\n"
241 "    struct sockaddr arp_ha;      /* hardware address */\n"
242 "    int             arp_flags;   /* flags */\n"
243 "    struct sockaddr arp_netmask; /* netmask of protocol address */\n"
244 "    char            arp_dev[16];\n"
245 "};\n"
246 msgstr ""
247 "struct arpreq {\n"
248 "    struct sockaddr arp_pa;      /* protocol address */\n"
249 "    struct sockaddr arp_ha;      /* hardware address */\n"
250 "    int             arp_flags;   /* flags */\n"
251 "    struct sockaddr arp_netmask; /* netmask of protocol address */\n"
252 "    char            arp_dev[16];\n"
253 "};\n"
254
255 #. type: Plain text
256 #: build/C/man7/arp.7:103
257 msgid ""
258 "B<SIOCSARP>, B<SIOCDARP> and B<SIOCGARP> respectively set, delete and get an "
259 "ARP mapping.  Setting and deleting ARP maps are privileged operations and "
260 "may be performed only by a process with the B<CAP_NET_ADMIN> capability or "
261 "an effective UID of 0."
262 msgstr ""
263 "B<SIOCSARP>, B<SIOCDARP>, B<SIOCGARP> は、それぞれ ARP マッピングを設定・削"
264 "除・取得する。 ARP マップの設定と削除は特権が必要な操作であり、 "
265 "B<CAP_NET_ADMIN> 権限を持つプロセスか、実行ユーザー ID が 0 のプロセス でなけ"
266 "れば実行できない。"
267
268 #. type: Plain text
269 #: build/C/man7/arp.7:113
270 msgid ""
271 "I<arp_pa> must be an B<AF_INET> address and I<arp_ha> must have the same "
272 "type as the device which is specified in I<arp_dev>.  I<arp_dev> is a zero-"
273 "terminated string which names a device."
274 msgstr ""
275 "I<arp_pa> は B<AF_INET> アドレスでなければならず、 I<arp_ha> は I<arp_dev> で"
276 "設定されたデバイスと同じタイプでなければならない。 I<arp_dev> はデバイスの名"
277 "前を示す、ゼロで終端された文字列である。"
278
279 #. type: tbl table
280 #: build/C/man7/arp.7:118
281 #, no-wrap
282 msgid "I<arp_flags>\n"
283 msgstr "I<arp_flags>\n"
284
285 #. type: tbl table
286 #: build/C/man7/arp.7:119
287 #, no-wrap
288 msgid "flag:meaning\n"
289 msgstr "フラグ:意味\n"
290
291 #. type: tbl table
292 #: build/C/man7/arp.7:120
293 #, no-wrap
294 msgid "ATF_COM:Lookup complete\n"
295 msgstr "ATF_COM:参照完了\n"
296
297 #. type: tbl table
298 #: build/C/man7/arp.7:121
299 #, no-wrap
300 msgid "ATF_PERM:Permanent entry\n"
301 msgstr "ATF_PERM:エントリを peramanent にする\n"
302
303 #. type: tbl table
304 #: build/C/man7/arp.7:122
305 #, no-wrap
306 msgid "ATF_PUBL:Publish entry\n"
307 msgstr "ATF_PUBL:エントリを publish する\n"
308
309 #. type: tbl table
310 #: build/C/man7/arp.7:123
311 #, no-wrap
312 msgid "ATF_USETRAILERS:Trailers requested\n"
313 msgstr "ATF_USETRAILERS:trailer が必要\n"
314
315 #. type: tbl table
316 #: build/C/man7/arp.7:124
317 #, no-wrap
318 msgid "ATF_NETMASK:Use a netmask\n"
319 msgstr "ATF_NETMASK:netmask を用いる\n"
320
321 #. type: tbl table
322 #: build/C/man7/arp.7:125
323 #, no-wrap
324 msgid "ATF_DONTPUB:Don't answer\n"
325 msgstr "ATF_DONTPUB:回答しない\n"
326
327 #. type: Plain text
328 #: build/C/man7/arp.7:138
329 msgid ""
330 "If the B<ATF_NETMASK> flag is set, then I<arp_netmask> should be valid.  "
331 "Linux 2.2 does not support proxy network ARP entries, so this should be set "
332 "to 0xffffffff, or 0 to remove an existing proxy arp entry.  "
333 "B<ATF_USETRAILERS> is obsolete and should not be used."
334 msgstr ""
335 "B<ATF_NETMASK> フラグがセットされているときには、 I<arp_netmask> が有効でなけ"
336 "ればならない。 Linux 2.2 は代理ネットワーク ARP エントリをサポートしていない"
337 "ので、 これは 0xffffffff にセットしておくか、あるいは 現存の代理 arp エントリ"
338 "を削除したい場合には 0 にしておく必要がある。 B<ATF_USETRAILERS> は obsolete "
339 "なので、用いるべきでない。"
340
341 #. type: SS
342 #: build/C/man7/arp.7:138 build/C/man7/ddp.7:122 build/C/man7/icmp.7:41
343 #: build/C/man7/ip.7:923 build/C/man7/tcp.7:219 build/C/man7/udp.7:137
344 #, no-wrap
345 msgid "/proc interfaces"
346 msgstr "/proc インタフェース"
347
348 #. type: Plain text
349 #: build/C/man7/arp.7:151
350 msgid ""
351 "ARP supports a range of I</proc> interfaces to configure parameters on a "
352 "global or per-interface basis.  The interfaces can be accessed by reading or "
353 "writing the I</proc/sys/net/ipv4/neigh/*/*> files.  Each interface in the "
354 "system has its own directory in I</proc/sys/net/ipv4/neigh/>.  The setting "
355 "in the \"default\" directory is used for all newly created devices.  Unless "
356 "otherwise specified, time-related interfaces are specified in seconds."
357 msgstr ""
358 "ARP では、グローバルなパラメータやインターフェースごとのパラメータを I</"
359 "proc> インタフェースを通して設定することができる。 これらのインタフェースに"
360 "は、 I<proc/sys/net/ipv4/neigh/*/*> ファイルの読み書きによりアクセスできる。 "
361 "システムにあるそれぞれのインターフェースには、 それぞれ対応するディレクトリ"
362 "が I</proc/sys/net/ipv4/neigh/> 以下にある。 \"default\" ディレクトリに対して"
363 "設定をすると、 それ以降生成されるデバイス全てに対してその設定が用いられる。 "
364 "特に指定がなければ、時間に関る sysctl の単位は秒である。"
365
366 #. type: TP
367 #: build/C/man7/arp.7:151
368 #, no-wrap
369 msgid "I<anycast_delay> (since Linux 2.2)"
370 msgstr "I<anycast_delay> (Linux 2.2 以降)"
371
372 #.  Precisely: 2.1.79
373 #. type: Plain text
374 #: build/C/man7/arp.7:158
375 msgid ""
376 "The maximum number of jiffies to delay before replying to a IPv6 neighbor "
377 "solicitation message.  Anycast support is not yet implemented.  Defaults to "
378 "1 second."
379 msgstr ""
380 "IPv6 の近傍要請メッセージ (neighbor soliciation message)  に応答するまでの最"
381 "大遅延時間 (jiffy 単位)。 anycast のサポートはまだ実装されていない。 デフォル"
382 "トは 1 秒。"
383
384 #. type: TP
385 #: build/C/man7/arp.7:158
386 #, no-wrap
387 msgid "I<app_solicit> (since Linux 2.2)"
388 msgstr "I<app_solicit> (Linux 2.2 以降)"
389
390 #.  Precisely: 2.1.79
391 #. type: Plain text
392 #: build/C/man7/arp.7:165
393 msgid ""
394 "The maximum number of probes to send to the user space ARP daemon via "
395 "netlink before dropping back to multicast probes (see I<mcast_solicit>).  "
396 "Defaults to 0."
397 msgstr ""
398 "ユーザー空間の ARP デーモンに netlink を用いて探索させる最大回数。 これを越え"
399 "るとマルチキャストによる探索に移行する (I<mcast_solicit> を見よ)。"
400
401 #. type: TP
402 #: build/C/man7/arp.7:165
403 #, no-wrap
404 msgid "I<base_reachable_time> (since Linux 2.2)"
405 msgstr "I<base_reachable_time> (Linux 2.2 以降)"
406
407 #.  Precisely: 2.1.79
408 #. type: Plain text
409 #: build/C/man7/arp.7:176
410 msgid ""
411 "Once a neighbor has been found, the entry is considered to be valid for at "
412 "least a random value between I<base_reachable_time>/2 and "
413 "3*I<base_reachable_time>/2.  An entry's validity will be extended if it "
414 "receives positive feedback from higher level protocols.  Defaults to 30 "
415 "seconds.  This file is now obsolete in favor of I<base_reachable_time_ms>."
416 msgstr ""
417 "近傍のホストがみつかると、そのエントリは I<base_reachable_time>/2 から "
418 "3*I<base_reachable_time>/2 の間のランダムな値の時間、有効であるとみなされ"
419 "る。 エントリの有効性は、高位のプロトコルからポジティブなフィードバックを 受"
420 "け取ると延長される。デフォルトは 30 秒。 このファイルは現在は非推奨であり、代"
421 "わりに I<base_reachable_time_ms> を使うこと。"
422
423 #. type: TP
424 #: build/C/man7/arp.7:176
425 #, no-wrap
426 msgid "I<base_reachable_time_ms> (since Linux 2.6.12)"
427 msgstr "I<base_reachable_time_ms> (Linux 2.6.12 以降)"
428
429 #. type: Plain text
430 #: build/C/man7/arp.7:182
431 msgid ""
432 "As for I<base_reachable_time>, but measures time in milliseconds.  Defaults "
433 "to 30000 milliseconds."
434 msgstr ""
435 "I<base_reachable_time> と同じだが、時間をミリ秒単位で測る。 デフォルトは "
436 "30000 ミリ秒である。"
437
438 #. type: TP
439 #: build/C/man7/arp.7:182
440 #, no-wrap
441 msgid "I<delay_first_probe_time> (since Linux 2.2)"
442 msgstr "I<delay_first_probe_time> (Linux 2.2 以降)"
443
444 #.  Precisely: 2.1.79
445 #. type: Plain text
446 #: build/C/man7/arp.7:188
447 msgid ""
448 "Delay before first probe after it has been decided that a neighbor is "
449 "stale.  Defaults to 5 seconds."
450 msgstr ""
451 "近傍ホストのエントリが古くなったと判断された後に 最初に探索を行うまでの遅延時"
452 "間。デフォルトは 5 秒。"
453
454 #. type: TP
455 #: build/C/man7/arp.7:188
456 #, no-wrap
457 msgid "I<gc_interval> (since Linux 2.2)"
458 msgstr "I<gc_interval> (Linux 2.2 以降)"
459
460 #.  Precisely: 2.1.79
461 #. type: Plain text
462 #: build/C/man7/arp.7:194
463 msgid ""
464 "How frequently the garbage collector for neighbor entries should attempt to "
465 "run.  Defaults to 30 seconds."
466 msgstr ""
467 "ガベージ・コレクタを近傍ホストエントリに対して実行させる頻度。 デフォルトは "
468 "30 秒。"
469
470 #. type: TP
471 #: build/C/man7/arp.7:194
472 #, no-wrap
473 msgid "I<gc_stale_time> (since Linux 2.2)"
474 msgstr "I<gc_stale_time> (Linux 2.2 以降)"
475
476 #.  Precisely: 2.1.79
477 #. type: Plain text
478 #: build/C/man7/arp.7:201
479 msgid ""
480 "Determines how often to check for stale neighbor entries.  When a neighbor "
481 "entry is considered stale, it is resolved again before sending data to it.  "
482 "Defaults to 60 seconds."
483 msgstr ""
484 "古くなった近傍ホストエントリに対してチェックを行う頻度。 近傍ホストエントリが"
485 "古くなったとみなされると、そのエントリに データを送る前には再度解決が行われ"
486 "る。 デフォルトは 60 秒。"
487
488 #. type: TP
489 #: build/C/man7/arp.7:201
490 #, no-wrap
491 msgid "I<gc_thresh1> (since Linux 2.2)"
492 msgstr "I<gc_thresh1> (Linux 2.2 以降)"
493
494 #.  Precisely: 2.1.79
495 #. type: Plain text
496 #: build/C/man7/arp.7:208
497 msgid ""
498 "The minimum number of entries to keep in the ARP cache.  The garbage "
499 "collector will not run if there are fewer than this number of entries in the "
500 "cache.  Defaults to 128."
501 msgstr ""
502 "ARP キャッシュに保存するエントリ数の最小値。 この数より少ないエントリしか"
503 "キャッシュになければ、 ガベージ・コレクタは実行されない。 デフォルトは 128。"
504
505 #. type: TP
506 #: build/C/man7/arp.7:208
507 #, no-wrap
508 msgid "I<gc_thresh2> (since Linux 2.2)"
509 msgstr "I<gc_thresh2> (Linux 2.2 以降)"
510
511 #.  Precisely: 2.1.79
512 #. type: Plain text
513 #: build/C/man7/arp.7:215
514 msgid ""
515 "The soft maximum number of entries to keep in the ARP cache.  The garbage "
516 "collector will allow the number of entries to exceed this for 5 seconds "
517 "before collection will be performed.  Defaults to 512."
518 msgstr ""
519 "ARP キャッシュに保存されるエントリ数のソフトな最大値。 キャッシュのエントリが"
520 "この数を 5 秒間越えつづけると、 ガベージ・コレクタが実行される。 デフォルト"
521 "は 512。"
522
523 #. type: TP
524 #: build/C/man7/arp.7:215
525 #, no-wrap
526 msgid "I<gc_thresh3> (since Linux 2.2)"
527 msgstr "I<gc_thresh3> (Linux 2.2 以降)"
528
529 #.  Precisely: 2.1.79
530 #. type: Plain text
531 #: build/C/man7/arp.7:222
532 msgid ""
533 "The hard maximum number of entries to keep in the ARP cache.  The garbage "
534 "collector will always run if there are more than this number of entries in "
535 "the cache.  Defaults to 1024."
536 msgstr ""
537 "ARP キャッシュに保存されるエントリ数のハードな最大値。 キャッシュのエントリが"
538 "この数を越えると、 ガベージ・コレクタはただちに実行される。 デフォルトは "
539 "1024。"
540
541 #. type: TP
542 #: build/C/man7/arp.7:222
543 #, no-wrap
544 msgid "I<locktime> (since Linux 2.2)"
545 msgstr "I<locktime> (Linux 2.2 以降)"
546
547 #.  Precisely: 2.1.79
548 #. type: Plain text
549 #: build/C/man7/arp.7:229
550 msgid ""
551 "The minimum number of jiffies to keep an ARP entry in the cache.  This "
552 "prevents ARP cache thrashing if there is more than one potential mapping "
553 "(generally due to network misconfiguration).  Defaults to 1 second."
554 msgstr ""
555 "ARP エントリをキャッシュに保存する時間の最小値 (jiffy 単位)。 可能性のある"
556 "マッピングが一つ以上ある (たいていはネットワーク設定のミス)  場合に、 ARP "
557 "キャッシュのスラッシングが起きることを防ぐ。 デフォルトは 1 秒。"
558
559 #. type: TP
560 #: build/C/man7/arp.7:229
561 #, no-wrap
562 msgid "I<mcast_solicit> (since Linux 2.2)"
563 msgstr "I<mcast_solicit> (Linux 2.2 以降)"
564
565 #.  Precisely: 2.1.79
566 #. type: Plain text
567 #: build/C/man7/arp.7:235
568 msgid ""
569 "The maximum number of attempts to resolve an address by multicast/broadcast "
570 "before marking the entry as unreachable.  Defaults to 3."
571 msgstr ""
572 "エントリを unreachable マークする前に、 アドレスをマルチキャスト/ブロードキャ"
573 "ストで解決しようとする 試行回数の最大値。 デフォルトは 3。"
574
575 #. type: TP
576 #: build/C/man7/arp.7:235
577 #, no-wrap
578 msgid "I<proxy_delay> (since Linux 2.2)"
579 msgstr "I<proxy_delay> (Linux 2.2 以降)"
580
581 #.  Precisely: 2.1.79
582 #. type: Plain text
583 #: build/C/man7/arp.7:243
584 msgid ""
585 "When an ARP request for a known proxy-ARP address is received, delay up to "
586 "I<proxy_delay> jiffies before replying.  This is used to prevent network "
587 "flooding in some cases.  Defaults to 0.8 seconds."
588 msgstr ""
589 "既知の代理 ARP アドレスに対して ARP リクエストを受信した場合に、 応答前に最"
590 "大 I<proxy_delay> jiffy まで遅延する。これは場合によって生じる ネットワーク・"
591 "フラッディング (network flooding) を避けるために用いる。 デフォルトは 0.8 "
592 "秒。"
593
594 #. type: TP
595 #: build/C/man7/arp.7:243
596 #, no-wrap
597 msgid "I<proxy_qlen> (since Linux 2.2)"
598 msgstr "I<proxy_qlen> (Linux 2.2 以降)"
599
600 #.  Precisely: 2.1.79
601 #. type: Plain text
602 #: build/C/man7/arp.7:248
603 msgid ""
604 "The maximum number of packets which may be queued to proxy-ARP addresses.  "
605 "Defaults to 64."
606 msgstr ""
607 "代理 ARP アドレスに対してキューイングできる最大のパケット数。 デフォルトは "
608 "64。"
609
610 #. type: TP
611 #: build/C/man7/arp.7:248
612 #, no-wrap
613 msgid "I<retrans_time> (since Linux 2.2)"
614 msgstr "I<retrans_time> (Linux 2.2 以降)"
615
616 #.  Precisely: 2.1.79
617 #. type: Plain text
618 #: build/C/man7/arp.7:255
619 msgid ""
620 "The number of jiffies to delay before retransmitting a request.  Defaults to "
621 "1 second.  This file is now obsolete in favor of I<retrans_time_ms>."
622 msgstr ""
623 "リクエストを再度送るまでの遅延時間 (jiffy 単位)。 デフォルトは 1 秒。 この"
624 "ファイルは現在は非推奨であり、代わりに I<retrans_time_ms> を使うこと。"
625
626 #. type: TP
627 #: build/C/man7/arp.7:255
628 #, no-wrap
629 msgid "I<retrans_time_ms> (since Linux 2.6.12)"
630 msgstr "I<retrans_time_ms> (Linux 2.6.12 以降)"
631
632 #. type: Plain text
633 #: build/C/man7/arp.7:259
634 msgid ""
635 "The number of milliseconds to delay before retransmitting a request.  "
636 "Defaults to 1000 milliseconds."
637 msgstr ""
638 "リクエストを再度送るまでの遅延時間 (ミリ秒単位)。 デフォルトは 1000 ミリ秒。"
639
640 #. type: TP
641 #: build/C/man7/arp.7:259
642 #, no-wrap
643 msgid "I<ucast_solicit> (since Linux 2.2)"
644 msgstr "I<ucast_solicit> (Linux 2.2 以降)"
645
646 #.  Precisely: 2.1.79
647 #. type: Plain text
648 #: build/C/man7/arp.7:266
649 msgid ""
650 "The maximum number of attempts to send unicast probes before asking the ARP "
651 "daemon (see I<app_solicit>).  Defaults to 3."
652 msgstr ""
653 "ARP デーモンへの問い合わせを行う前に行う unicast 探索の最大試行数 "
654 "(I<app_solicit> を見よ)。デフォルトは 3。"
655
656 #. type: TP
657 #: build/C/man7/arp.7:266
658 #, no-wrap
659 msgid "I<unres_qlen> (since Linux 2.2)"
660 msgstr "I<unres_qlen> (Linux 2.2 以降)"
661
662 #.  Precisely: 2.1.79
663 #. type: Plain text
664 #: build/C/man7/arp.7:272
665 msgid ""
666 "The maximum number of packets which may be queued for each unresolved "
667 "address by other network layers.  Defaults to 3."
668 msgstr ""
669 "解決されていないアドレスに対して、 他のネットワーク層からキューイングできる最"
670 "大パケット数。 デフォルトは 3。"
671
672 #. type: SH
673 #: build/C/man7/arp.7:272 build/C/man7/ddp.7:221 build/C/man3/endian.3:74
674 #: build/C/man3/getnameinfo.3:203 build/C/man7/icmp.7:161
675 #: build/C/man7/ipv6.7:363 build/C/man7/packet.7:502 build/C/man7/raw.7:175
676 #: build/C/man3/rcmd.3:262 build/C/man3/rexec.3:138 build/C/man7/tcp.7:1226
677 #: build/C/man7/udp.7:251 build/C/man7/udplite.7:132 build/C/man7/unix.7:401
678 #: build/C/man7/x25.7:100
679 #, no-wrap
680 msgid "VERSIONS"
681 msgstr "バージョン"
682
683 #. type: Plain text
684 #: build/C/man7/arp.7:279
685 msgid ""
686 "The I<struct arpreq> changed in Linux 2.0 to include the I<arp_dev> member "
687 "and the ioctl numbers changed at the same time.  Support for the old ioctls "
688 "was dropped in Linux 2.2."
689 msgstr ""
690 "Linux 2.0 で、 I<struct arpreq> に I<arp_dev> メンバーが含まれるように変更が"
691 "あった。また同時に ioctl 番号も変更された。古い ioctl は Linux 2.2 で用いるこ"
692 "とができなくなった。"
693
694 #. type: Plain text
695 #: build/C/man7/arp.7:285
696 msgid ""
697 "Support for proxy arp entries for networks (netmask not equal 0xffffffff)  "
698 "was dropped in Linux 2.2.  It is replaced by automatic proxy arp setup by "
699 "the kernel for all reachable hosts on other interfaces (when forwarding and "
700 "proxy arp is enabled for the interface)."
701 msgstr ""
702 "ネットワークに対する代理 arp エントリ (netmask が 0xffffffff でない)  は、 "
703 "Linux 2.2 で用いることができなくなった。 これはカーネルによって設定される、別"
704 "のインターフェースにおける 到達可能なすべてのホストに対する自動代理 arp に"
705 "よって置き換えられた (そのインターフェースでフォワーディングと代理 arp が有効"
706 "になっている場合)。"
707
708 #. type: Plain text
709 #: build/C/man7/arp.7:289
710 msgid "The I<neigh/*> interfaces did not exist before Linux 2.2."
711 msgstr "I<neigh/*> の各インタフェースは Linux 2.2 以前には存在しない。"
712
713 #. type: SH
714 #: build/C/man7/arp.7:289 build/C/man7/ddp.7:244 build/C/man3/ether_aton.3:145
715 #: build/C/man3/gethostbyname.3:438 build/C/man3/inet_ntop.3:112
716 #: build/C/man3/inet_pton.3:150 build/C/man7/ip.7:1217 build/C/man7/ipv6.7:402
717 #: build/C/man7/netdevice.7:359 build/C/man7/packet.7:583
718 #: build/C/man7/raw.7:252 build/C/man3/rcmd.3:278 build/C/man3/rexec.3:158
719 #: build/C/man2/shutdown.2:104 build/C/man7/tcp.7:1233
720 #: build/C/man7/udplite.7:134 build/C/man7/x25.7:102
721 #, no-wrap
722 msgid "BUGS"
723 msgstr "バグ"
724
725 #. type: Plain text
726 #: build/C/man7/arp.7:293
727 msgid ""
728 "Some timer settings are specified in jiffies, which is architecture- and "
729 "kernel version-dependent; see B<time>(7)."
730 msgstr ""
731 "いくつかのタイマー設定は jiffy で指定されるが、 jiffy はアーキテクチャやカー"
732 "ネルのバージョンに依存する。 B<time>(7)  を参照のこと。"
733
734 #. type: Plain text
735 #: build/C/man7/arp.7:299
736 msgid ""
737 "There is no way to signal positive feedback from user space.  This means "
738 "connection-oriented protocols implemented in user space will generate "
739 "excessive ARP traffic, because ndisc will regularly reprobe the MAC "
740 "address.  The same problem applies for some kernel protocols (e.g., NFS over "
741 "UDP)."
742 msgstr ""
743 "ユーザー空間からポジティブなフィードバックを送る方法が存在しない。 つまり接続"
744 "指向 (connection-oriented) のプロトコルをユーザー空間で 実装すると、余計な "
745 "ARP トラフィックの原因となる。 なぜなら ndisc は定期的に MAC アドレスを再探索"
746 "するからである。 同様の問題はいくつかのカーネルプロトコル (NFS over UDP な"
747 "ど) にも存在する。"
748
749 #. type: Plain text
750 #: build/C/man7/arp.7:302
751 msgid ""
752 "This man page mashes together functionality that is IPv4-specific with "
753 "functionality that is shared between IPv4 and IPv6."
754 msgstr "この man ページでは IPv4 特有の機能と IPv4 とIPv6 で共通の機能を一緒に説明している。"
755
756 #. type: SH
757 #: build/C/man7/arp.7:302 build/C/man3/byteorder.3:83 build/C/man3/cmsg.3:217
758 #: build/C/man7/ddp.7:249 build/C/man3/endian.3:151
759 #: build/C/man3/ether_aton.3:149 build/C/man5/gai.conf.5:93
760 #: build/C/man3/getaddrinfo.3:827 build/C/man3/getaddrinfo_a.3:600
761 #: build/C/man1/getent.1:368 build/C/man3/gethostbyname.3:443
762 #: build/C/man3/getipnodebyname.3:266 build/C/man3/getnameinfo.3:275
763 #: build/C/man3/getnetent.3:154 build/C/man3/getnetent_r.3:145
764 #: build/C/man2/getpeername.2:143 build/C/man3/getprotoent.3:142
765 #: build/C/man3/getprotoent_r.3:237 build/C/man3/getservent.3:159
766 #: build/C/man3/getservent_r.3:241 build/C/man5/host.conf.5:199
767 #: build/C/man7/hostname.7:85 build/C/man5/hosts.5:115
768 #: build/C/man5/hosts.equiv.5:84 build/C/man7/icmp.7:191
769 #: build/C/man3/inet.3:297 build/C/man3/inet_ntop.3:118
770 #: build/C/man3/inet_pton.3:215 build/C/man7/ip.7:1236 build/C/man7/ipv6.7:413
771 #: build/C/man7/netdevice.7:373 build/C/man5/networks.5:74
772 #: build/C/man8/nscd.8:85 build/C/man5/nscd.conf.5:239 build/C/man5/nss.5:110
773 #: build/C/man5/nsswitch.conf.5:352 build/C/man7/packet.7:614
774 #: build/C/man5/protocols.5:81 build/C/man7/raw.7:269 build/C/man3/rcmd.3:285
775 #: build/C/man5/resolv.conf.5:290 build/C/man3/resolver.3:274
776 #: build/C/man3/rexec.3:167 build/C/man5/services.5:210
777 #: build/C/man3/setnetgrent.3:107 build/C/man2/shutdown.2:113
778 #: build/C/man7/tcp.7:1245 build/C/man7/udp.7:256 build/C/man7/udplite.7:146
779 #: build/C/man7/unix.7:445 build/C/man7/x25.7:118
780 #, no-wrap
781 msgid "SEE ALSO"
782 msgstr "関連項目"
783
784 #. type: Plain text
785 #: build/C/man7/arp.7:305
786 msgid "B<capabilities>(7), B<ip>(7)"
787 msgstr "B<capabilities>(7), B<ip>(7)"
788
789 #. type: Plain text
790 #: build/C/man7/arp.7:310
791 msgid ""
792 "RFC\\ 826 for a description of ARP.  RFC\\ 2461 for a description of IPv6 "
793 "neighbor discovery and the base algorithms used.  Linux 2.2+ IPv4 ARP uses "
794 "the IPv6 algorithms when applicable."
795 msgstr ""
796 "RFC \\ 826: ARP の説明。 RFC\\ 2461: IPv6 neighbor discovery の説明と利用され"
797 "ている基礎アルゴリズム。 Linux 2.2 以降では IPv4 ARP は可能な場合は IPv6 アル"
798 "ゴリズムを使っている。"
799
800 #. type: SH
801 #: build/C/man7/arp.7:310 build/C/man3/byteorder.3:87 build/C/man3/cmsg.3:222
802 #: build/C/man7/ddp.7:254 build/C/man3/endian.3:153
803 #: build/C/man3/ether_aton.3:151 build/C/man5/gai.conf.5:96
804 #: build/C/man3/getaddrinfo.3:837 build/C/man3/getaddrinfo_a.3:607
805 #: build/C/man1/getent.1:370 build/C/man3/gethostbyname.3:457
806 #: build/C/man3/getipnodebyname.3:271 build/C/man3/getnameinfo.3:308
807 #: build/C/man3/getnetent.3:161 build/C/man3/getnetent_r.3:148
808 #: build/C/man2/getpeername.2:150 build/C/man3/getprotoent.3:147
809 #: build/C/man3/getprotoent_r.3:240 build/C/man3/getservent.3:164
810 #: build/C/man3/getservent_r.3:244 build/C/man5/host.conf.5:204
811 #: build/C/man7/hostname.7:93 build/C/man5/hosts.5:126
812 #: build/C/man5/hosts.equiv.5:88 build/C/man7/icmp.7:195
813 #: build/C/man3/inet.3:307 build/C/man3/inet_ntop.3:122
814 #: build/C/man3/inet_pton.3:219 build/C/man7/ip.7:1254 build/C/man7/ipv6.7:420
815 #: build/C/man7/netdevice.7:378 build/C/man5/networks.5:80
816 #: build/C/man8/nscd.8:91 build/C/man5/nscd.conf.5:244 build/C/man5/nss.5:112
817 #: build/C/man5/nsswitch.conf.5:355 build/C/man7/packet.7:628
818 #: build/C/man5/protocols.5:86 build/C/man7/raw.7:282 build/C/man3/rcmd.3:293
819 #: build/C/man5/resolv.conf.5:297 build/C/man3/resolver.3:280
820 #: build/C/man3/rexec.3:170 build/C/man5/services.5:222
821 #: build/C/man3/setnetgrent.3:111 build/C/man2/shutdown.2:117
822 #: build/C/man7/tcp.7:1271 build/C/man7/udp.7:267 build/C/man7/udplite.7:156
823 #: build/C/man7/unix.7:454 build/C/man7/x25.7:127
824 #, no-wrap
825 msgid "COLOPHON"
826 msgstr "この文書について"
827
828 #. type: Plain text
829 #: build/C/man7/arp.7:317 build/C/man3/byteorder.3:94 build/C/man3/cmsg.3:229
830 #: build/C/man7/ddp.7:261 build/C/man3/endian.3:160
831 #: build/C/man3/ether_aton.3:158 build/C/man5/gai.conf.5:103
832 #: build/C/man3/getaddrinfo.3:844 build/C/man3/getaddrinfo_a.3:614
833 #: build/C/man1/getent.1:377 build/C/man3/gethostbyname.3:464
834 #: build/C/man3/getipnodebyname.3:278 build/C/man3/getnameinfo.3:315
835 #: build/C/man3/getnetent.3:168 build/C/man3/getnetent_r.3:155
836 #: build/C/man2/getpeername.2:157 build/C/man3/getprotoent.3:154
837 #: build/C/man3/getprotoent_r.3:247 build/C/man3/getservent.3:171
838 #: build/C/man3/getservent_r.3:251 build/C/man5/host.conf.5:211
839 #: build/C/man7/hostname.7:100 build/C/man5/hosts.5:133
840 #: build/C/man5/hosts.equiv.5:95 build/C/man7/icmp.7:202
841 #: build/C/man3/inet.3:314 build/C/man3/inet_ntop.3:129
842 #: build/C/man3/inet_pton.3:226 build/C/man7/ip.7:1261 build/C/man7/ipv6.7:427
843 #: build/C/man7/netdevice.7:385 build/C/man5/networks.5:87
844 #: build/C/man8/nscd.8:98 build/C/man5/nscd.conf.5:251 build/C/man5/nss.5:119
845 #: build/C/man5/nsswitch.conf.5:362 build/C/man7/packet.7:635
846 #: build/C/man5/protocols.5:93 build/C/man7/raw.7:289 build/C/man3/rcmd.3:300
847 #: build/C/man5/resolv.conf.5:304 build/C/man3/resolver.3:287
848 #: build/C/man3/rexec.3:177 build/C/man5/services.5:229
849 #: build/C/man3/setnetgrent.3:118 build/C/man2/shutdown.2:124
850 #: build/C/man7/tcp.7:1278 build/C/man7/udp.7:274 build/C/man7/udplite.7:163
851 #: build/C/man7/unix.7:461 build/C/man7/x25.7:134
852 msgid ""
853 "This page is part of release 3.63 of the Linux I<man-pages> project.  A "
854 "description of the project, and information about reporting bugs, can be "
855 "found at \\%http://www.kernel.org/doc/man-pages/."
856 msgstr ""
857 "この man ページは Linux I<man-pages> プロジェクトのリリース 3.63 の一部\n"
858 "である。プロジェクトの説明とバグ報告に関する情報は\n"
859 "http://www.kernel.org/doc/man-pages/ に書かれている。"
860
861 #. type: TH
862 #: build/C/man3/byteorder.3:32
863 #, no-wrap
864 msgid "BYTEORDER"
865 msgstr "BYTEORDER"
866
867 #. type: TH
868 #: build/C/man3/byteorder.3:32
869 #, no-wrap
870 msgid "2009-01-15"
871 msgstr "2009-01-15"
872
873 #. type: TH
874 #: build/C/man3/byteorder.3:32 build/C/man3/endian.3:28
875 #: build/C/man3/ether_aton.3:31 build/C/man3/getaddrinfo.3:43
876 #: build/C/man3/getaddrinfo_a.3:29 build/C/man3/getnameinfo.3:10
877 #: build/C/man3/getnetent.3:30 build/C/man3/getnetent_r.3:26
878 #: build/C/man3/getprotoent.3:30 build/C/man3/getprotoent_r.3:26
879 #: build/C/man3/getservent.3:34 build/C/man3/getservent_r.3:26
880 #: build/C/man3/inet.3:42 build/C/man8/nscd.8:23 build/C/man5/nscd.conf.5:20
881 #: build/C/man3/resolver.3:32 build/C/man3/setnetgrent.3:10
882 #, no-wrap
883 msgid "GNU"
884 msgstr "GNU"
885
886 #. type: Plain text
887 #: build/C/man3/byteorder.3:36
888 msgid ""
889 "htonl, htons, ntohl, ntohs - convert values between host and network byte "
890 "order"
891 msgstr ""
892 "htonl, htons, ntohl, ntohs - ホストバイトオーダーとネットワークバイトオーダー"
893 "の間で値を変換する"
894
895 #. type: SH
896 #: build/C/man3/byteorder.3:36 build/C/man3/cmsg.3:14 build/C/man7/ddp.7:15
897 #: build/C/man3/endian.3:33 build/C/man3/ether_aton.3:35
898 #: build/C/man3/getaddrinfo.3:47 build/C/man3/getaddrinfo_a.3:33
899 #: build/C/man1/getent.1:27 build/C/man3/gethostbyname.3:46
900 #: build/C/man3/getipnodebyname.3:30 build/C/man3/getnameinfo.3:13
901 #: build/C/man3/getnetent.3:34 build/C/man3/getnetent_r.3:30
902 #: build/C/man2/getpeername.2:45 build/C/man3/getprotoent.3:34
903 #: build/C/man3/getprotoent_r.3:30 build/C/man3/getservent.3:38
904 #: build/C/man3/getservent_r.3:30 build/C/man5/hosts.5:30
905 #: build/C/man3/inet.3:46 build/C/man3/inet_ntop.3:29
906 #: build/C/man3/inet_pton.3:30 build/C/man7/ip.7:39 build/C/man7/ipv6.7:89
907 #: build/C/man7/netdevice.7:21 build/C/man7/packet.7:15 build/C/man7/raw.7:16
908 #: build/C/man3/rcmd.3:48 build/C/man5/resolv.conf.5:27
909 #: build/C/man3/resolver.3:36 build/C/man3/rexec.3:44
910 #: build/C/man3/setnetgrent.3:14 build/C/man2/shutdown.2:43
911 #: build/C/man7/tcp.7:79 build/C/man7/udp.7:15 build/C/man7/udplite.7:30
912 #: build/C/man7/unix.7:21 build/C/man7/x25.7:15
913 #, no-wrap
914 msgid "SYNOPSIS"
915 msgstr "書式"
916
917 #. type: Plain text
918 #: build/C/man3/byteorder.3:39 build/C/man3/inet_ntop.3:32
919 #: build/C/man3/inet_pton.3:33
920 #, no-wrap
921 msgid "B<#include E<lt>arpa/inet.hE<gt>>\n"
922 msgstr "B<#include E<lt>arpa/inet.hE<gt>>\n"
923
924 #. type: Plain text
925 #: build/C/man3/byteorder.3:41
926 #, no-wrap
927 msgid "B<uint32_t htonl(uint32_t >I<hostlong>B<);>\n"
928 msgstr "B<uint32_t htonl(uint32_t >I<hostlong>B<);>\n"
929
930 #. type: Plain text
931 #: build/C/man3/byteorder.3:43
932 #, no-wrap
933 msgid "B<uint16_t htons(uint16_t >I<hostshort>B<);>\n"
934 msgstr "B<uint16_t htons(uint16_t >I<hostshort>B<);>\n"
935
936 #. type: Plain text
937 #: build/C/man3/byteorder.3:45
938 #, no-wrap
939 msgid "B<uint32_t ntohl(uint32_t >I<netlong>B<);>\n"
940 msgstr "B<uint32_t ntohl(uint32_t >I<netlong>B<);>\n"
941
942 #. type: Plain text
943 #: build/C/man3/byteorder.3:47
944 #, no-wrap
945 msgid "B<uint16_t ntohs(uint16_t >I<netshort>B<);>\n"
946 msgstr "B<uint16_t ntohs(uint16_t >I<netshort>B<);>\n"
947
948 #. type: Plain text
949 #: build/C/man3/byteorder.3:54
950 msgid ""
951 "The B<htonl>()  function converts the unsigned integer I<hostlong> from host "
952 "byte order to network byte order."
953 msgstr ""
954 "B<htonl>()  関数は unsigned integer I<hostlong> を ホストバイトオーダーから"
955 "ネットワークバイトオーダーに変換する。"
956
957 #. type: Plain text
958 #: build/C/man3/byteorder.3:60
959 msgid ""
960 "The B<htons>()  function converts the unsigned short integer I<hostshort> "
961 "from host byte order to network byte order."
962 msgstr ""
963 "B<htons>()  関数は unsigned short integer I<hostshort> を ホストバイトオー"
964 "ダーからネットワークバイトオーダーに変換する。"
965
966 #. type: Plain text
967 #: build/C/man3/byteorder.3:66
968 msgid ""
969 "The B<ntohl>()  function converts the unsigned integer I<netlong> from "
970 "network byte order to host byte order."
971 msgstr ""
972 "B<ntohl>()  関数は unsigned integer I<netlong> を ネットワークバイトオーダー"
973 "からホストバイトオーダーに変換する。"
974
975 #. type: Plain text
976 #: build/C/man3/byteorder.3:72
977 msgid ""
978 "The B<ntohs>()  function converts the unsigned short integer I<netshort> "
979 "from network byte order to host byte order."
980 msgstr ""
981 "B<ntohs>()  関数は unsigned short integer I<netshort> を ネットワークバイト"
982 "オーダーからホストバイトオーダーに変換する。"
983
984 #. type: Plain text
985 #: build/C/man3/byteorder.3:76
986 msgid ""
987 "On the i386 the host byte order is Least Significant Byte first, whereas the "
988 "network byte order, as used on the Internet, is Most Significant Byte first."
989 msgstr ""
990 "i80x86 のホストバイトオーダーでは最下位バイトが若いアドレスに配置されるが、 "
991 "インターネットで用いられるネットワークバイトオーダーでは最上位バイト が先に配"
992 "置される。"
993
994 #. type: SH
995 #: build/C/man3/byteorder.3:76 build/C/man3/cmsg.3:141
996 #: build/C/man3/endian.3:76 build/C/man3/ether_aton.3:143
997 #: build/C/man3/getaddrinfo.3:594 build/C/man3/getaddrinfo_a.3:305
998 #: build/C/man3/gethostbyname.3:317 build/C/man3/getipnodebyname.3:258
999 #: build/C/man3/getnameinfo.3:206 build/C/man3/getnetent.3:145
1000 #: build/C/man3/getnetent_r.3:141 build/C/man2/getpeername.2:101
1001 #: build/C/man3/getprotoent.3:140 build/C/man3/getprotoent_r.3:131
1002 #: build/C/man3/getservent.3:157 build/C/man3/getservent_r.3:130
1003 #: build/C/man3/inet.3:210 build/C/man3/inet_ntop.3:100
1004 #: build/C/man3/inet_pton.3:129 build/C/man3/rcmd.3:270
1005 #: build/C/man3/resolver.3:272 build/C/man3/rexec.3:149
1006 #: build/C/man3/setnetgrent.3:92 build/C/man2/shutdown.2:91
1007 #, no-wrap
1008 msgid "CONFORMING TO"
1009 msgstr "準拠"
1010
1011 #. type: Plain text
1012 #: build/C/man3/byteorder.3:78 build/C/man3/inet_pton.3:131
1013 msgid "POSIX.1-2001."
1014 msgstr "POSIX.1-2001."
1015
1016 #. type: Plain text
1017 #: build/C/man3/byteorder.3:83
1018 msgid ""
1019 "Some systems require the inclusion of I<E<lt>netinet/in.hE<gt>> instead of "
1020 "I<E<lt>arpa/inet.hE<gt>>."
1021 msgstr ""
1022 "いくつかのシステムでは、 I<E<lt>arpa/inet.hE<gt>> の代わりに I<E<lt>netinet/"
1023 "in.hE<gt>> をインクルードする必要がある。"
1024
1025 #. type: Plain text
1026 #: build/C/man3/byteorder.3:87
1027 msgid "B<endian>(3), B<gethostbyname>(3), B<getservent>(3)"
1028 msgstr "B<endian>(3), B<gethostbyname>(3), B<getservent>(3)"
1029
1030 #. type: TH
1031 #: build/C/man3/cmsg.3:11
1032 #, no-wrap
1033 msgid "CMSG"
1034 msgstr "CMSG"
1035
1036 #. type: TH
1037 #: build/C/man3/cmsg.3:11 build/C/man7/ddp.7:12
1038 #, no-wrap
1039 msgid "2008-11-20"
1040 msgstr "2008-11-20"
1041
1042 #. type: Plain text
1043 #: build/C/man3/cmsg.3:14
1044 msgid ""
1045 "CMSG_ALIGN, CMSG_SPACE, CMSG_NXTHDR, CMSG_FIRSTHDR - access ancillary data"
1046 msgstr ""
1047 "CMSG_ALIGN, CMSG_SPACE, CMSG_NXTHDR, CMSG_FIRSTHDR - 補助データにアクセスす"
1048 "る。"
1049
1050 #. type: Plain text
1051 #: build/C/man3/cmsg.3:16 build/C/man7/ddp.7:17 build/C/man2/getpeername.2:47
1052 #: build/C/man7/ip.7:41 build/C/man7/ipv6.7:91 build/C/man7/raw.7:18
1053 #: build/C/man2/shutdown.2:45 build/C/man7/tcp.7:81 build/C/man7/udp.7:17
1054 #: build/C/man7/udplite.7:32 build/C/man7/unix.7:23 build/C/man7/x25.7:17
1055 msgid "B<#include E<lt>sys/socket.hE<gt>>"
1056 msgstr "B<#include E<lt>sys/socket.hE<gt>>"
1057
1058 #. type: Plain text
1059 #: build/C/man3/cmsg.3:18
1060 msgid "B<struct cmsghdr *CMSG_FIRSTHDR(struct msghdr *>I<msgh>B<);>"
1061 msgstr "B<struct cmsghdr *CMSG_FIRSTHDR(struct msghdr *>I<msgh>B<);>"
1062
1063 #. type: Plain text
1064 #: build/C/man3/cmsg.3:20
1065 msgid ""
1066 "B<struct cmsghdr *CMSG_NXTHDR(struct msghdr *>I<msgh>B<, struct cmsghdr "
1067 "*>I<cmsg>B<);>"
1068 msgstr ""
1069 "B<struct cmsghdr *CMSG_NXTHDR(struct msghdr *>I<msgh>B<, struct cmsghdr "
1070 "*>I<cmsg>B<);>"
1071
1072 #. type: Plain text
1073 #: build/C/man3/cmsg.3:22
1074 msgid "B<size_t CMSG_ALIGN(size_t >I<length>B<);>"
1075 msgstr "B<size_t CMSG_ALIGN(size_t >I<length>B<);>"
1076
1077 #. type: Plain text
1078 #: build/C/man3/cmsg.3:24
1079 msgid "B<size_t CMSG_SPACE(size_t >I<length>B<);>"
1080 msgstr "B<size_t CMSG_SPACE(size_t >I<length>B<);>"
1081
1082 #. type: Plain text
1083 #: build/C/man3/cmsg.3:26
1084 msgid "B<size_t CMSG_LEN(size_t >I<length>B<);>"
1085 msgstr "B<size_t CMSG_LEN(size_t >I<length>B<);>"
1086
1087 #. type: Plain text
1088 #: build/C/man3/cmsg.3:28
1089 msgid "B<unsigned char *CMSG_DATA(struct cmsghdr *>I<cmsg>B<);>"
1090 msgstr "B<unsigned char *CMSG_DATA(struct cmsghdr *>I<cmsg>B<);>"
1091
1092 #. type: Plain text
1093 #: build/C/man3/cmsg.3:36
1094 #, no-wrap
1095 msgid ""
1096 "struct cmsghdr {\n"
1097 "    socklen_t cmsg_len;    /* data byte count, including header */\n"
1098 "    int       cmsg_level;  /* originating protocol */\n"
1099 "    int       cmsg_type;   /* protocol-specific type */\n"
1100 "    /* followed by unsigned char cmsg_data[]; */\n"
1101 "};\n"
1102 msgstr ""
1103 "struct cmsghdr {\n"
1104 "    socklen_t cmsg_len;    /* data byte count, including header */\n"
1105 "    int       cmsg_level;  /* originating protocol */\n"
1106 "    int       cmsg_type;   /* protocol-specific type */\n"
1107 "    /* followed by unsigned char cmsg_data[]; */\n"
1108 "};\n"
1109
1110 #. type: Plain text
1111 #: build/C/man3/cmsg.3:51
1112 msgid ""
1113 "These macros are used to create and access control messages (also called "
1114 "ancillary data) that are not a part of the socket payload.  This control "
1115 "information may include the interface the packet was received on, various "
1116 "rarely used header fields, an extended error description, a set of file "
1117 "descriptors or UNIX credentials.  For instance, control messages can be used "
1118 "to send additional header fields such as IP options.  Ancillary data is sent "
1119 "by calling B<sendmsg>(2)  and received by calling B<recvmsg>(2).  See their "
1120 "manual pages for more information."
1121 msgstr ""
1122 "これらのマクロは制御メッセージ (補助データ (ancillary data) とも呼ばれる) を"
1123 "作り、 それにアクセスするために使われる。 制御メッセージはソケットにのるデー"
1124 "タではない。 この制御情報は、到着したパケットへのインターフェイス、様々なあま"
1125 "り 使われないヘッダーフィールド、エラー記述の拡張、ファイルデスクリ プタの集"
1126 "合や、UNIXにおける信頼情報 (credential) を含んでいる。 制御メッセージは、例え"
1127 "ば IP オプションのような追加ヘッダーフィールドを 送るのに使う事ができる。 補"
1128 "助データは、 B<sendmsg>(2)  を呼び出して送り、 B<recvmsg>(2)  を呼び出して受"
1129 "け取る。 詳細はそれらのマニュアルページを参照。"
1130
1131 #. type: Plain text
1132 #: build/C/man3/cmsg.3:62
1133 msgid ""
1134 "Ancillary data is a sequence of I<struct cmsghdr> structures with appended "
1135 "data.  This sequence should be accessed using only the macros described in "
1136 "this manual page and never directly.  See the specific protocol man pages "
1137 "for the available control message types.  The maximum ancillary buffer size "
1138 "allowed per socket can be set using I</proc/sys/net/core/optmem_max>; see "
1139 "B<socket>(7)."
1140 msgstr ""
1141 "補助データは I<struct cmsghdr> 構造体のシーケンスに追加データが付加されたもの"
1142 "である。 このシーケンスにはこのマニュアルページに書かれている マクロを使って"
1143 "アクセスすべきで、直接アクセスすべきではない。 使用可能な制御メッセージのタイ"
1144 "プについては、 それぞれのプロトコルのマニュアルページを参照のこと。 接続毎の"
1145 "最大補助用バッファサイズは I</proc/sys/net/core/optmem_max> を使って設定でき"
1146 "る。 B<socket>(7)  を参照。"
1147
1148 #. type: Plain text
1149 #: build/C/man3/cmsg.3:69
1150 msgid ""
1151 "B<CMSG_FIRSTHDR>()  returns a pointer to the first I<cmsghdr> in the "
1152 "ancillary data buffer associated with the passed I<msghdr>."
1153 msgstr ""
1154 "B<CMSG_FIRSTHDR>()  は、渡した I<msghdr> に関連した補助データバッファ中の、最"
1155 "初の I<cmsghdr> へのポインタを返す。"
1156
1157 #. type: Plain text
1158 #: build/C/man3/cmsg.3:76
1159 msgid ""
1160 "B<CMSG_NXTHDR>()  returns the next valid I<cmsghdr> after the passed "
1161 "I<cmsghdr>.  It returns NULL when there isn't enough space left in the "
1162 "buffer."
1163 msgstr ""
1164 "B<CMSG_NXTHDR>()  は、渡した I<cmsghdr> の次にくる (有効な)  I<cmsghdr> を返"
1165 "す。 バッファに十分な空きが無い場合、NULL を返す。"
1166
1167 #. type: Plain text
1168 #: build/C/man3/cmsg.3:81
1169 msgid ""
1170 "B<CMSG_ALIGN>(), given a length, returns it including the required "
1171 "alignment.  This is a constant expression."
1172 msgstr ""
1173 "B<CMSG_ALIGN>()  に長さを与えると、必要なアラインメントを加味した長さを返して"
1174 "くる。 これは定数式である。"
1175
1176 #. type: Plain text
1177 #: build/C/man3/cmsg.3:86
1178 msgid ""
1179 "B<CMSG_SPACE>()  returns the number of bytes an ancillary element with "
1180 "payload of the passed data length occupies.  This is a constant expression."
1181 msgstr ""
1182 "B<CMSG_SPACE>()  は、与えたデータ長が占めるのに必要な補助要素 (ancillary "
1183 "element) の バイト数を返す。これは定数式である。"
1184
1185 #. type: Plain text
1186 #: build/C/man3/cmsg.3:90
1187 msgid "B<CMSG_DATA>()  returns a pointer to the data portion of a I<cmsghdr>."
1188 msgstr "B<CMSG_DATA>()  は、 I<cmsghdr> のデータ部分へのポインタを返す。"
1189
1190 #. type: Plain text
1191 #: build/C/man3/cmsg.3:101
1192 msgid ""
1193 "B<CMSG_LEN>()  returns the value to store in the I<cmsg_len> member of the "
1194 "I<cmsghdr> structure, taking into account any necessary alignment.  It takes "
1195 "the data length as an argument.  This is a constant expression."
1196 msgstr ""
1197 "B<CMSG_LEN>()  は、 I<cmsghdr> 構造体の I<cmsg_len> メンバにデータを格納する"
1198 "際に必要な値を返す。アラインメントも考慮に入れ られる。 引数としてデータ長を"
1199 "とる。これは定数式である。"
1200
1201 #. type: Plain text
1202 #: build/C/man3/cmsg.3:134
1203 msgid ""
1204 "To create ancillary data, first initialize the I<msg_controllen> member of "
1205 "the I<msghdr> with the length of the control message buffer.  Use "
1206 "B<CMSG_FIRSTHDR>()  on the I<msghdr> to get the first control message and "
1207 "B<CMSG_NXTHDR>()  to get all subsequent ones.  In each control message, "
1208 "initialize I<cmsg_len> (with B<CMSG_LEN>()), the other I<cmsghdr> header "
1209 "fields, and the data portion using B<CMSG_DATA>().  Finally, the "
1210 "I<msg_controllen> field of the I<msghdr> should be set to the sum of the "
1211 "B<CMSG_SPACE>()  of the length of all control messages in the buffer.  For "
1212 "more information on the I<msghdr>, see B<recvmsg>(2)."
1213 msgstr ""
1214 "補助データを作るためには最初に I<msghdr> のメンバー I<msg_controllen> を、制"
1215 "御メッセージバッファの長さで初期化する。 B<CMSG_FIRSTHDR>()  を I<msghdr> に"
1216 "用いると最初の制御メッセージが得られ、 B<CMSG_NXTHDR>()  を使うと次の制御メッ"
1217 "セージが得られる。 それぞれの制御メッセージでは、 I<cmsg_len> を初期化する "
1218 "(B<CMSG_LEN>()  を使う)。 その他の I<cmsghdr> ヘッダーフィールド、そしてデー"
1219 "タ部分に対しても B<CMSG_DATA>()  を使って初期化をする。 最後に I<msghdr> の "
1220 "I<msg_controllen> フィールドに、バッファ中の制御メッセージの長さの "
1221 "B<CMSG_SPACE>()  の合計がセットされる。 I<msghdr> についての詳細は B<recvmsg>"
1222 "(2)  を参照。"
1223
1224 #. type: Plain text
1225 #: build/C/man3/cmsg.3:141
1226 msgid ""
1227 "When the control message buffer is too short to store all messages, the "
1228 "B<MSG_CTRUNC> flag is set in the I<msg_flags> member of the I<msghdr>."
1229 msgstr ""
1230 "制御メッセージバッファが全てのメッセージを納めるのには短すぎる場合、 "
1231 "I<msghdr> の I<msg_flags> メンバーに B<MSG_CTRUNC> フラグがセットされる。"
1232
1233 #. type: Plain text
1234 #: build/C/man3/cmsg.3:146
1235 msgid ""
1236 "This ancillary data model conforms to the POSIX.1g draft, 4.4BSD-Lite, the "
1237 "IPv6 advanced API described in RFC\\ 2292 and the SUSv2.  B<CMSG_ALIGN>()  "
1238 "is a Linux extension."
1239 msgstr ""
1240 "この補助データモデルは、POSIX.1g draft, 4.4BSD-Lite, RFC\\ 2292 に 記述されて"
1241 "いる IPv6 advanced API, そして SUSv2 に準拠している。 B<CMSG_ALIGN>()  は "
1242 "Linux の拡張である。"
1243
1244 #. type: SH
1245 #: build/C/man3/cmsg.3:146 build/C/man7/ddp.7:226 build/C/man3/endian.3:91
1246 #: build/C/man3/getaddrinfo.3:599 build/C/man3/getaddrinfo_a.3:308
1247 #: build/C/man3/gethostbyname.3:341 build/C/man3/getipnodebyname.3:261
1248 #: build/C/man3/getnameinfo.3:208 build/C/man3/getnetent.3:147
1249 #: build/C/man2/getpeername.2:105 build/C/man5/host.conf.5:190
1250 #: build/C/man5/hosts.5:88 build/C/man5/hosts.equiv.5:71
1251 #: build/C/man7/icmp.7:169 build/C/man3/inet.3:218
1252 #: build/C/man3/inet_pton.3:131 build/C/man7/ip.7:1155 build/C/man7/ipv6.7:392
1253 #: build/C/man7/netdevice.7:341 build/C/man8/nscd.8:60
1254 #: build/C/man5/nscd.conf.5:232 build/C/man5/nsswitch.conf.5:333
1255 #: build/C/man7/packet.7:520 build/C/man7/raw.7:187
1256 #: build/C/man3/setnetgrent.3:103 build/C/man2/shutdown.2:95
1257 #: build/C/man7/unix.7:407
1258 #, no-wrap
1259 msgid "NOTES"
1260 msgstr "注意"
1261
1262 #. type: Plain text
1263 #: build/C/man3/cmsg.3:151
1264 msgid ""
1265 "For portability, ancillary data should be accessed using only the macros "
1266 "described here.  B<CMSG_ALIGN>()  is a Linux extension and should not be "
1267 "used in portable programs."
1268 msgstr ""
1269 "移植性のために、補助データへのアクセスには、 ここで述べられているマクロだけを"
1270 "使うべきである。 B<CMSG_ALIGN>()  は Linux での拡張であり、移植性を考えたプロ"
1271 "グラムでは使うべきではない。"
1272
1273 #. type: Plain text
1274 #: build/C/man3/cmsg.3:161
1275 msgid ""
1276 "In Linux, B<CMSG_LEN>(), B<CMSG_DATA>(), and B<CMSG_ALIGN>()  are constant "
1277 "expressions (assuming their argument is constant); this could be used to "
1278 "declare the size of global variables.  This may not be portable, however."
1279 msgstr ""
1280 "Linux では B<CMSG_LEN>(), B<CMSG_DATA>(), B<CMSG_ALIGN>()  は定数式である (そ"
1281 "れらの引数が定数とみなされる)。 このことは、大域変数のサイズを宣言するのに使"
1282 "える。 しかし移植性はなくなるだろう。"
1283
1284 #. type: SH
1285 #: build/C/man3/cmsg.3:161 build/C/man3/endian.3:107
1286 #: build/C/man5/gai.conf.5:74 build/C/man3/getaddrinfo.3:622
1287 #: build/C/man3/getaddrinfo_a.3:314 build/C/man3/getnameinfo.3:236
1288 #: build/C/man3/getprotoent_r.3:135 build/C/man3/getservent_r.3:134
1289 #: build/C/man5/hosts.5:107 build/C/man3/inet.3:254
1290 #: build/C/man3/inet_ntop.3:115 build/C/man3/inet_pton.3:156
1291 #: build/C/man5/nss.5:100 build/C/man7/unix.7:437
1292 #, no-wrap
1293 msgid "EXAMPLE"
1294 msgstr "例"
1295
1296 #. type: Plain text
1297 #: build/C/man3/cmsg.3:165
1298 msgid ""
1299 "This code looks for the B<IP_TTL> option in a received ancillary buffer:"
1300 msgstr ""
1301 "次のコードは、受け取った補助バッファから B<IP_TTL> オプションを探すものであ"
1302 "る。"
1303
1304 #. type: Plain text
1305 #: build/C/man3/cmsg.3:172
1306 #, no-wrap
1307 msgid ""
1308 "struct msghdr msgh;\n"
1309 "struct cmsghdr *cmsg;\n"
1310 "int *ttlptr;\n"
1311 "int received_ttl;\n"
1312 msgstr ""
1313 "struct msghdr msgh;\n"
1314 "struct cmsghdr *cmsg;\n"
1315 "int *ttlptr;\n"
1316 "int received_ttl;\n"
1317
1318 #. type: Plain text
1319 #: build/C/man3/cmsg.3:189
1320 #, no-wrap
1321 msgid ""
1322 "/* Receive auxiliary data in msgh */\n"
1323 "for (cmsg = CMSG_FIRSTHDR(&msgh); cmsg != NULL;\n"
1324 "        cmsg = CMSG_NXTHDR(&msgh,cmsg)) {\n"
1325 "    if (cmsg-E<gt>cmsg_level == IPPROTO_IP\n"
1326 "            && cmsg-E<gt>cmsg_type == IP_TTL) {\n"
1327 "        ttlptr = (int *) CMSG_DATA(cmsg);\n"
1328 "        received_ttl = *ttlptr;\n"
1329 "        break;\n"
1330 "    }\n"
1331 "}\n"
1332 "if (cmsg == NULL) {\n"
1333 "    /*\n"
1334 "     * Error: IP_TTL not enabled or small buffer\n"
1335 "     * or I/O error.\n"
1336 "     */\n"
1337 "}\n"
1338 msgstr ""
1339 "/* Receive auxiliary data in msgh */\n"
1340 "for (cmsg = CMSG_FIRSTHDR(&msgh); cmsg != NULL;\n"
1341 "        cmsg = CMSG_NXTHDR(&msgh,cmsg)) {\n"
1342 "    if (cmsg-E<gt>cmsg_level == IPPROTO_IP\n"
1343 "            && cmsg-E<gt>cmsg_type == IP_TTL) {\n"
1344 "        ttlptr = (int *) CMSG_DATA(cmsg);\n"
1345 "        received_ttl = *ttlptr;\n"
1346 "        break;\n"
1347 "    }\n"
1348 "}\n"
1349 "if (cmsg == NULL) {\n"
1350 "    /*\n"
1351 "     * Error: IP_TTL not enabled or small buffer\n"
1352 "     * or I/O error.\n"
1353 "     */\n"
1354 "}\n"
1355
1356 #. type: Plain text
1357 #: build/C/man3/cmsg.3:195
1358 msgid ""
1359 "The code below passes an array of file descriptors over a UNIX domain socket "
1360 "using B<SCM_RIGHTS>:"
1361 msgstr ""
1362 "以下のコードは、 B<SCM_RIGHTS> を使い、ファイルデスクリプタの配列を UNIX ドメ"
1363 "インソケットを通して送るものである。"
1364
1365 #. type: Plain text
1366 #: build/C/man3/cmsg.3:203
1367 #, no-wrap
1368 msgid ""
1369 "struct msghdr msg = {0};\n"
1370 "struct cmsghdr *cmsg;\n"
1371 "int myfds[NUM_FD]; /* Contains the file descriptors to pass. */\n"
1372 "char buf[CMSG_SPACE(sizeof myfds)];  /* ancillary data buffer */\n"
1373 "int *fdptr;\n"
1374 msgstr ""
1375 "struct msghdr msg = {0};\n"
1376 "struct cmsghdr *cmsg;\n"
1377 "int myfds[NUM_FD]; /* Contains the file descriptors to pass. */\n"
1378 "char buf[CMSG_SPACE(sizeof myfds)];  /* ancillary data buffer */\n"
1379 "int *fdptr;\n"
1380
1381 #. type: Plain text
1382 #: build/C/man3/cmsg.3:215
1383 #, no-wrap
1384 msgid ""
1385 "msg.msg_control = buf;\n"
1386 "msg.msg_controllen = sizeof buf;\n"
1387 "cmsg = CMSG_FIRSTHDR(&msg);\n"
1388 "cmsg-E<gt>cmsg_level = SOL_SOCKET;\n"
1389 "cmsg-E<gt>cmsg_type = SCM_RIGHTS;\n"
1390 "cmsg-E<gt>cmsg_len = CMSG_LEN(sizeof(int) * NUM_FD);\n"
1391 "/* Initialize the payload: */\n"
1392 "fdptr = (int *) CMSG_DATA(cmsg);\n"
1393 "memcpy(fdptr, myfds, NUM_FD * sizeof(int));\n"
1394 "/* Sum of the length of all control messages in the buffer: */\n"
1395 "msg.msg_controllen = cmsg-E<gt>cmsg_len;\n"
1396 msgstr ""
1397 "msg.msg_control = buf;\n"
1398 "msg.msg_controllen = sizeof buf;\n"
1399 "cmsg = CMSG_FIRSTHDR(&msg);\n"
1400 "cmsg-E<gt>cmsg_level = SOL_SOCKET;\n"
1401 "cmsg-E<gt>cmsg_type = SCM_RIGHTS;\n"
1402 "cmsg-E<gt>cmsg_len = CMSG_LEN(sizeof(int) * NUM_FD);\n"
1403 "/* Initialize the payload: */\n"
1404 "fdptr = (int *) CMSG_DATA(cmsg);\n"
1405 "memcpy(fdptr, myfds, NUM_FD * sizeof(int));\n"
1406 "/* Sum of the length of all control messages in the buffer: */\n"
1407 "msg.msg_controllen = cmsg-E<gt>cmsg_len;\n"
1408
1409 #. type: Plain text
1410 #: build/C/man3/cmsg.3:220
1411 msgid "B<recvmsg>(2), B<sendmsg>(2)"
1412 msgstr "B<recvmsg>(2), B<sendmsg>(2)"
1413
1414 #. type: Plain text
1415 #: build/C/man3/cmsg.3:222
1416 msgid "RFC\\ 2292"
1417 msgstr "RFC\\ 2292"
1418
1419 #. type: TH
1420 #: build/C/man7/ddp.7:12
1421 #, no-wrap
1422 msgid "DDP"
1423 msgstr "DDP"
1424
1425 #. type: Plain text
1426 #: build/C/man7/ddp.7:15
1427 msgid "ddp - Linux AppleTalk protocol implementation"
1428 msgstr "ddp - Linux での AppleTalk プロトコルの実装"
1429
1430 #. type: Plain text
1431 #: build/C/man7/ddp.7:19
1432 msgid "B<#include E<lt>netatalk/at.hE<gt>>"
1433 msgstr "B<#include E<lt>netatalk/at.hE<gt>>"
1434
1435 #. type: Plain text
1436 #: build/C/man7/ddp.7:21
1437 msgid "I<ddp_socket>B< = socket(AF_APPLETALK, SOCK_DGRAM, 0);>"
1438 msgstr "I<ddp_socket>B< = socket(AF_APPLETALK, SOCK_DGRAM, 0);>"
1439
1440 #. type: Plain text
1441 #: build/C/man7/ddp.7:23
1442 msgid "I<raw_socket>B< = socket(AF_APPLETALK, SOCK_RAW, >I<protocol>B<);>"
1443 msgstr "I<raw_socket>B< = socket(AF_APPLETALK, SOCK_RAW, >I<protocol>B<);>"
1444
1445 #. type: Plain text
1446 #: build/C/man7/ddp.7:34
1447 msgid ""
1448 "Linux implements the Appletalk protocols described in I<Inside Appletalk>.  "
1449 "Only the DDP layer and AARP are present in the kernel.  They are designed to "
1450 "be used via the B<netatalk> protocol libraries.  This page documents the "
1451 "interface for those who wish or need to use the DDP layer directly."
1452 msgstr ""
1453 "Linux は I<Inside Appletalk> に記述されている Appletalk プロトコルを実装して"
1454 "いる。 カーネルにあるのは DDP 層と AARP だけである。これらは B<netatalk> プロ"
1455 "トコルライブラリを通して利用されるように設計されている。 このページは DDP 層"
1456 "を直接利用したいユーザーのために、 インターフェースを記述したものである。"
1457
1458 #. type: Plain text
1459 #: build/C/man7/ddp.7:39
1460 msgid ""
1461 "The communication between Appletalk and the user program works using a BSD-"
1462 "compatible socket interface.  For more information on sockets, see B<socket>"
1463 "(7)."
1464 msgstr ""
1465 "Appletalk とユーザープログラムとの通信には、 BSD 互換のソケットインターフェー"
1466 "スを利用する。 ソケットに関するより詳しい情報は B<socket>(7)  を見よ。"
1467
1468 #. type: Plain text
1469 #: build/C/man7/ddp.7:60
1470 msgid ""
1471 "An AppleTalk socket is created by calling the B<socket>(2)  function with a "
1472 "B<AF_APPLETALK> socket family argument.  Valid socket types are "
1473 "B<SOCK_DGRAM> to open a B<ddp> socket or B<SOCK_RAW> to open a B<raw> "
1474 "socket.  I<protocol> is the Appletalk protocol to be received or sent.  For "
1475 "B<SOCK_RAW> you must specify B<ATPROTO_DDP>."
1476 msgstr ""
1477 "Appletalk ソケットは、 ソケットファミリーの引数に B<AF_APPLETALK> を指定して "
1478 "B<socket>(2)  関数を呼び出すことによって生成される。指定できるソケットタイプ"
1479 "は、 B<ddp> ソケットをオープンする場合には B<SOCK_DGRAM>、 B<raw> ソケットを"
1480 "オープンする場合には B<SOCK_RAW> である。 I<protocol> は送受信される "
1481 "Appletalk プロトコルである。 ソケットタイプに B<SOCK_RAW> を指定した場合は、"
1482 "プロトコルに B<ATPROTO_DDP> を指定しなければならない。"
1483
1484 #. type: Plain text
1485 #: build/C/man7/ddp.7:65
1486 msgid ""
1487 "Raw sockets may be opened only by a process with effective user ID 0 or when "
1488 "the process has the B<CAP_NET_RAW> capability."
1489 msgstr ""
1490 "raw ソケットは実効ユーザー ID が 0 のプロセスか、 B<CAT_NEW_RAW> 権限を持った"
1491 "プロセスでないとオープンできない。"
1492
1493 #. type: SS
1494 #: build/C/man7/ddp.7:65 build/C/man7/ip.7:123 build/C/man7/ipv6.7:142
1495 #: build/C/man7/raw.7:93 build/C/man7/udp.7:98 build/C/man7/udplite.7:58
1496 #: build/C/man7/unix.7:55
1497 #, no-wrap
1498 msgid "Address format"
1499 msgstr "アドレスのフォーマット"
1500
1501 #. type: Plain text
1502 #: build/C/man7/ddp.7:68
1503 msgid ""
1504 "An Appletalk socket address is defined as a combination of a network number, "
1505 "a node number, and a port number."
1506 msgstr ""
1507 "Appletalk ソケットアドレスはネットワーク番号・ノード番号・ポート番号の 組み合"
1508 "わせで定義される。"
1509
1510 #. type: Plain text
1511 #: build/C/man7/ddp.7:75
1512 #, no-wrap
1513 msgid ""
1514 "struct at_addr {\n"
1515 "    unsigned short s_net;\n"
1516 "    unsigned char  s_node;\n"
1517 "};\n"
1518 msgstr ""
1519 "struct at_addr {\n"
1520 "    unsigned short s_net;\n"
1521 "    unsigned char  s_node;\n"
1522 "};\n"
1523
1524 #. type: Plain text
1525 #: build/C/man7/ddp.7:81
1526 #, no-wrap
1527 msgid ""
1528 "struct sockaddr_atalk {\n"
1529 "    sa_family_t    sat_family;    /* address family */\n"
1530 "    unsigned char  sat_port;      /* port */\n"
1531 "    struct at_addr sat_addr;      /* net/node */\n"
1532 "};\n"
1533 msgstr ""
1534 "struct sockaddr_atalk {\n"
1535 "    sa_family_t    sat_family;    /* address family */\n"
1536 "    unsigned char  sat_port;      /* port */\n"
1537 "    struct at_addr sat_addr;      /* net/node */\n"
1538 "};\n"
1539
1540 #.  FIXME this doesn't make sense [johnl]
1541 #. type: Plain text
1542 #: build/C/man7/ddp.7:120
1543 msgid ""
1544 "I<sat_family> is always set to B<AF_APPLETALK>.  I<sat_port> contains the "
1545 "port.  The port numbers below 129 are known as I<reserved ports>.  Only "
1546 "processes with the effective user ID 0 or the B<CAP_NET_BIND_SERVICE> "
1547 "capability may B<bind>(2)  to these sockets.  I<sat_addr> is the host "
1548 "address.  The I<net> member of I<struct at_addr> contains the host network "
1549 "in network byte order.  The value of B<AT_ANYNET> is a wildcard and also "
1550 "implies \\(lqthis network.\\(rq The I<node> member of I<struct at_addr> "
1551 "contains the host node number.  The value of B<AT_ANYNODE> is a wildcard and "
1552 "also implies \\(lqthis node.\\(rq The value of B<ATADDR_BCAST> is a link "
1553 "local broadcast address."
1554 msgstr ""
1555 "I<sat_family> は常に B<AF_APPLETALK> に設定する。 I<sat_port> はポートを与え"
1556 "る。ポート番号が 129 以下のポートは 「予約ポート (reserved port)」 と呼ばれ"
1557 "る。実効ユーザー ID が 0 のプロセスか、 B<CAP_NET_BIND_SERVICE> 権限を持つプ"
1558 "ロセスだけが、このようなソケットを B<bind>(2)  できる。 I<sat_addr> はホスト"
1559 "アドレスである。 I<struct at_addr> のメンバー I<s_net> にはホストのネットワー"
1560 "クをネットワークバイトオーダーで与える。値 B<AT_ANYNET> はワイルドカードで、"
1561 "「このネットワーク」も暗黙のうちに含まれる。 I<struct at_addr> のメンバー "
1562 "I<s_node> にはホストのノード番号を与える。値 B<AT_ANYNODE> はワイルドカード"
1563 "で、「このノード」も暗黙のうちに含まれる。値 B<ATADDR_BCAST> はローカルなブ"
1564 "ロードキャストアドレスである。"
1565
1566 #. type: SS
1567 #: build/C/man7/ddp.7:120 build/C/man7/ip.7:224 build/C/man7/ipv6.7:192
1568 #: build/C/man7/packet.7:180 build/C/man7/raw.7:109 build/C/man7/tcp.7:871
1569 #: build/C/man7/udp.7:178 build/C/man7/udplite.7:67 build/C/man7/unix.7:137
1570 #: build/C/man7/x25.7:72
1571 #, no-wrap
1572 msgid "Socket options"
1573 msgstr "ソケットオプション"
1574
1575 #. type: Plain text
1576 #: build/C/man7/ddp.7:122
1577 msgid "No protocol-specific socket options are supported."
1578 msgstr "プロトコル固有のソケットオプションはない。"
1579
1580 #. type: Plain text
1581 #: build/C/man7/ddp.7:128
1582 msgid ""
1583 "IP supports a set of I</proc> interfaces to configure some global AppleTalk "
1584 "parameters.  The parameters can be accessed by reading or writing files in "
1585 "the directory I</proc/sys/net/atalk/>."
1586 msgstr ""
1587 "Appletalk のグローバルパラメータのいくつかは、 I</proc> インタフェースを通し"
1588 "て設定することができる。 これらのパラメータには、 I</proc/sys/net/atalk/> "
1589 "ディレクトリ内のファイルの読み書きでアクセスできる。"
1590
1591 #. type: TP
1592 #: build/C/man7/ddp.7:128
1593 #, no-wrap
1594 msgid "I<aarp-expiry-time>"
1595 msgstr "I<aarp-expiry-time>"
1596
1597 #. type: Plain text
1598 #: build/C/man7/ddp.7:131
1599 msgid "The time interval (in seconds) before an AARP cache entry expires."
1600 msgstr "AARP キャッシュエントリを破棄するまでのタイムインターバル (秒単位)。"
1601
1602 #. type: TP
1603 #: build/C/man7/ddp.7:131
1604 #, no-wrap
1605 msgid "I<aarp-resolve-time>"
1606 msgstr "I<aarp-resolve-time>"
1607
1608 #. type: Plain text
1609 #: build/C/man7/ddp.7:134
1610 msgid "The time interval (in seconds) before an AARP cache entry is resolved."
1611 msgstr "AARP キャッシュエントリが解決されるまでのタイムインターバル (秒単位)。"
1612
1613 #. type: TP
1614 #: build/C/man7/ddp.7:134
1615 #, no-wrap
1616 msgid "I<aarp-retransmit-limit>"
1617 msgstr "I<aarp-retransmit-limit>"
1618
1619 #. type: Plain text
1620 #: build/C/man7/ddp.7:138
1621 msgid ""
1622 "The number of retransmissions of an AARP query before the node is declared "
1623 "dead."
1624 msgstr ""
1625 "AARP クエリーの最大再送信回数。この回数を越えると、 そのノードは dead である"
1626 "とみなされる。"
1627
1628 #. type: TP
1629 #: build/C/man7/ddp.7:138
1630 #, no-wrap
1631 msgid "I<aarp-tick-time>"
1632 msgstr "I<aarp-tick-time>"
1633
1634 #. type: Plain text
1635 #: build/C/man7/ddp.7:141
1636 msgid "The timer rate (in seconds) for the timer driving AARP."
1637 msgstr "タイマー動作する AARP のタイマーレート (秒単位)"
1638
1639 #. type: Plain text
1640 #: build/C/man7/ddp.7:144
1641 msgid ""
1642 "The default values match the specification and should never need to be "
1643 "changed."
1644 msgstr ""
1645 "デフォルトの値で仕様にマッチしているので、 変更する必要は全くないはずである。"
1646
1647 #.  FIXME Add a section about multicasting
1648 #. type: Plain text
1649 #: build/C/man7/ddp.7:149
1650 msgid "All ioctls described in B<socket>(7)  apply to DDP."
1651 msgstr "B<socket>(7)  に記述されているすべての ioctl が DDP にも適用される。"
1652
1653 #. type: SH
1654 #: build/C/man7/ddp.7:149 build/C/man3/gethostbyname.3:292
1655 #: build/C/man3/getnetent_r.3:129 build/C/man2/getpeername.2:73
1656 #: build/C/man3/getprotoent_r.3:119 build/C/man3/getservent_r.3:118
1657 #: build/C/man3/inet_ntop.3:91 build/C/man7/ip.7:1064 build/C/man7/ipv6.7:351
1658 #: build/C/man7/packet.7:466 build/C/man7/raw.7:144 build/C/man2/shutdown.2:74
1659 #: build/C/man7/tcp.7:1208 build/C/man7/udp.7:241 build/C/man7/udplite.7:121
1660 #: build/C/man7/unix.7:322
1661 #, no-wrap
1662 msgid "ERRORS"
1663 msgstr "エラー"
1664
1665 #. type: TP
1666 #: build/C/man7/ddp.7:153 build/C/man7/ip.7:1068 build/C/man7/raw.7:145
1667 #, no-wrap
1668 msgid "B<EACCES>"
1669 msgstr "B<EACCES>"
1670
1671 #. type: Plain text
1672 #: build/C/man7/ddp.7:160
1673 msgid ""
1674 "The user tried to execute an operation without the necessary permissions.  "
1675 "These include sending to a broadcast address without having the broadcast "
1676 "flag set, and trying to bind to a reserved port without effective user ID 0 "
1677 "or B<CAP_NET_BIND_SERVICE>."
1678 msgstr ""
1679 "ユーザが行おうとした操作に必要な権限を持っていない。 broadcast フラグをセット"
1680 "せずにブロードキャストアドレスへ送信を行おうとした、 実効ユーザー ID が 0 で"
1681 "なく、 B<CAP_NET_BIND_SERVICE> 権限のないプロセスで特権ポートをバインドしよう"
1682 "とした、などが考えられる。"
1683
1684 #. type: TP
1685 #: build/C/man7/ddp.7:160 build/C/man7/ip.7:1084 build/C/man7/unix.7:323
1686 #, no-wrap
1687 msgid "B<EADDRINUSE>"
1688 msgstr "B<EADDRINUSE>"
1689
1690 #. type: Plain text
1691 #: build/C/man7/ddp.7:163 build/C/man7/ip.7:1087
1692 msgid "Tried to bind to an address already in use."
1693 msgstr "既に使用されているアドレスにバインドしようとした。"
1694
1695 #. type: TP
1696 #: build/C/man7/ddp.7:163 build/C/man7/ip.7:1087 build/C/man7/packet.7:467
1697 #, no-wrap
1698 msgid "B<EADDRNOTAVAIL>"
1699 msgstr "B<EADDRNOTAVAIL>"
1700
1701 #. type: Plain text
1702 #: build/C/man7/ddp.7:167 build/C/man7/ip.7:1091
1703 msgid ""
1704 "A nonexistent interface was requested or the requested source address was "
1705 "not local."
1706 msgstr ""
1707 "存在しないインターフェースが要求された。または 要求されたソースアドレスがロー"
1708 "カルでない。"
1709
1710 #. type: TP
1711 #: build/C/man7/ddp.7:167 build/C/man7/ip.7:1091
1712 #, no-wrap
1713 msgid "B<EAGAIN>"
1714 msgstr "B<EAGAIN>"
1715
1716 #. type: Plain text
1717 #: build/C/man7/ddp.7:170 build/C/man7/ip.7:1094
1718 msgid "Operation on a nonblocking socket would block."
1719 msgstr "非ブロッキングソケットに対してブロックする操作を行った。"
1720
1721 #. type: TP
1722 #: build/C/man7/ddp.7:170 build/C/man7/ip.7:1094
1723 #, no-wrap
1724 msgid "B<EALREADY>"
1725 msgstr "B<EALREADY>"
1726
1727 #. type: Plain text
1728 #: build/C/man7/ddp.7:173
1729 msgid "A connection operation on a nonblocking socket is already in progress."
1730 msgstr "非ブロッキングソケットに対する接続操作が既に実行中である。"
1731
1732 #. type: TP
1733 #: build/C/man7/ddp.7:173 build/C/man7/ip.7:1097
1734 #, no-wrap
1735 msgid "B<ECONNABORTED>"
1736 msgstr "B<ECONNABORTED>"
1737
1738 #. type: Plain text
1739 #: build/C/man7/ddp.7:177 build/C/man7/ip.7:1101
1740 msgid "A connection was closed during an B<accept>(2)."
1741 msgstr "B<accept>(2)  の途中で接続がクローズされた。"
1742
1743 #. type: TP
1744 #: build/C/man7/ddp.7:177 build/C/man7/ip.7:1101
1745 #, no-wrap
1746 msgid "B<EHOSTUNREACH>"
1747 msgstr "B<EHOSTUNREACH>"
1748
1749 #. type: Plain text
1750 #: build/C/man7/ddp.7:180
1751 msgid "No routing table entry matches the destination address."
1752 msgstr "行き先アドレスにマッチするエントリがルーティングテーブルにない。"
1753
1754 #. type: TP
1755 #: build/C/man7/ddp.7:180 build/C/man2/getpeername.2:85 build/C/man7/ip.7:1106
1756 #: build/C/man7/packet.7:473 build/C/man7/raw.7:152 build/C/man2/shutdown.2:79
1757 #: build/C/man7/unix.7:339
1758 #, no-wrap
1759 msgid "B<EINVAL>"
1760 msgstr "B<EINVAL>"
1761
1762 #. type: Plain text
1763 #: build/C/man7/ddp.7:183
1764 msgid "Invalid argument passed."
1765 msgstr "渡した引数が不正。"
1766
1767 #. type: TP
1768 #: build/C/man7/ddp.7:183 build/C/man7/ip.7:1112 build/C/man7/unix.7:348
1769 #, no-wrap
1770 msgid "B<EISCONN>"
1771 msgstr "B<EISCONN>"
1772
1773 #. type: Plain text
1774 #: build/C/man7/ddp.7:187 build/C/man7/ip.7:1116
1775 msgid "B<connect>(2)  was called on an already connected socket."
1776 msgstr "接続済みのソケットに対して B<connect>(2)  が呼ばれた。"
1777
1778 #. type: TP
1779 #: build/C/man7/ddp.7:187 build/C/man7/ip.7:1116 build/C/man7/packet.7:476
1780 #: build/C/man7/raw.7:155
1781 #, no-wrap
1782 msgid "B<EMSGSIZE>"
1783 msgstr "B<EMSGSIZE>"
1784
1785 #. type: Plain text
1786 #: build/C/man7/ddp.7:190
1787 msgid "Datagram is bigger than the DDP MTU."
1788 msgstr "データグラムが DDP MTU より大きい。"
1789
1790 #. type: TP
1791 #: build/C/man7/ddp.7:190 build/C/man7/ipv6.7:353 build/C/man7/packet.7:485
1792 #, no-wrap
1793 msgid "B<ENODEV>"
1794 msgstr "B<ENODEV>"
1795
1796 #. type: Plain text
1797 #: build/C/man7/ddp.7:193
1798 msgid "Network device not available or not capable of sending IP."
1799 msgstr "ネットワークデバイスがない。あるいは IP を送ることができない。"
1800
1801 #. type: TP
1802 #: build/C/man7/ddp.7:193 build/C/man3/getnetent_r.3:130
1803 #: build/C/man3/getprotoent_r.3:120 build/C/man3/getservent_r.3:119
1804 #: build/C/man7/ip.7:1124 build/C/man7/packet.7:488 build/C/man7/unix.7:353
1805 #, no-wrap
1806 msgid "B<ENOENT>"
1807 msgstr "B<ENOENT>"
1808
1809 #. type: Plain text
1810 #: build/C/man7/ddp.7:197 build/C/man7/ip.7:1128
1811 msgid "B<SIOCGSTAMP> was called on a socket where no packet arrived."
1812 msgstr "パケットが到着していないソケットに対して B<SIOCGSTAMP> が呼ばれた。"
1813
1814 #. type: TP
1815 #: build/C/man7/ddp.7:197
1816 #, no-wrap
1817 msgid "B<ENOMEM> and B<ENOBUFS>"
1818 msgstr "B<ENOMEM> と B<ENOBUFS>"
1819
1820 #. type: Plain text
1821 #: build/C/man7/ddp.7:200
1822 msgid "Not enough memory available."
1823 msgstr "メモリが足りない。"
1824
1825 #. type: TP
1826 #: build/C/man7/ddp.7:200 build/C/man7/ip.7:1128
1827 #, no-wrap
1828 msgid "B<ENOPKG>"
1829 msgstr "B<ENOPKG>"
1830
1831 #. type: Plain text
1832 #: build/C/man7/ddp.7:203 build/C/man7/ip.7:1131
1833 msgid "A kernel subsystem was not configured."
1834 msgstr "カーネルサブシステムが設定されていない。"
1835
1836 #. type: TP
1837 #: build/C/man7/ddp.7:203 build/C/man7/ip.7:1131
1838 #, no-wrap
1839 msgid "B<ENOPROTOOPT> and B<EOPNOTSUPP>"
1840 msgstr "B<ENOPROTOOPT> と B<EOPNOTSUPP>"
1841
1842 #. type: Plain text
1843 #: build/C/man7/ddp.7:206 build/C/man7/ip.7:1134
1844 msgid "Invalid socket option passed."
1845 msgstr "無効なソケットオプションが渡された。"
1846
1847 #. type: TP
1848 #: build/C/man7/ddp.7:206 build/C/man2/getpeername.2:93 build/C/man7/ip.7:1134
1849 #: build/C/man7/packet.7:491 build/C/man2/shutdown.2:84
1850 #: build/C/man7/unix.7:361
1851 #, no-wrap
1852 msgid "B<ENOTCONN>"
1853 msgstr "B<ENOTCONN>"
1854
1855 #. type: Plain text
1856 #: build/C/man7/ddp.7:210 build/C/man7/ip.7:1138
1857 msgid ""
1858 "The operation is defined only on a connected socket, but the socket wasn't "
1859 "connected."
1860 msgstr ""
1861 "接続されていないソケットに対して、 接続状態でしか定義されていない操作を行おう"
1862 "とした。"
1863
1864 #. type: TP
1865 #: build/C/man7/ddp.7:210 build/C/man7/ip.7:1138 build/C/man7/packet.7:497
1866 #: build/C/man7/raw.7:166 build/C/man7/unix.7:368
1867 #, no-wrap
1868 msgid "B<EPERM>"
1869 msgstr "B<EPERM>"
1870
1871 #. type: Plain text
1872 #: build/C/man7/ddp.7:215
1873 msgid ""
1874 "User doesn't have permission to set high priority, make a configuration "
1875 "change, or send signals to the requested process or group."
1876 msgstr ""
1877 "高い優先度に設定したり、設定を変更したり、 指定したプロセスやグループにシグナ"
1878 "ルを送るのに必要な権限を ユーザが持っていない。"
1879
1880 #. type: TP
1881 #: build/C/man7/ddp.7:215 build/C/man7/ip.7:1142 build/C/man7/tcp.7:1215
1882 #: build/C/man7/unix.7:372
1883 #, no-wrap
1884 msgid "B<EPIPE>"
1885 msgstr "B<EPIPE>"
1886
1887 #. type: Plain text
1888 #: build/C/man7/ddp.7:218 build/C/man7/ip.7:1145
1889 msgid "The connection was unexpectedly closed or shut down by the other end."
1890 msgstr ""
1891 "接続が接続相手によって、予期しないやり方でクローズまたはシャットダウンされ"
1892 "た。"
1893
1894 #. type: TP
1895 #: build/C/man7/ddp.7:218 build/C/man7/ip.7:1145 build/C/man7/unix.7:394
1896 #, no-wrap
1897 msgid "B<ESOCKTNOSUPPORT>"
1898 msgstr "B<ESOCKTNOSUPPORT>"
1899
1900 #. type: Plain text
1901 #: build/C/man7/ddp.7:221
1902 msgid "The socket was unconfigured, or an unknown socket type was requested."
1903 msgstr "ソケットが設定されていない。または未知のソケットタイプが要求された。"
1904
1905 #. type: Plain text
1906 #: build/C/man7/ddp.7:226
1907 msgid ""
1908 "Appletalk is supported by Linux 2.0 or higher.  The I</proc> interfaces "
1909 "exist since Linux 2.2."
1910 msgstr ""
1911 "Appletalk は Linux 2.0 以降でサポートされている。 I</proc> インタフェースは "
1912 "Linux 2.2 以降に存在する。"
1913
1914 #. type: Plain text
1915 #: build/C/man7/ddp.7:232
1916 msgid ""
1917 "Be very careful with the B<SO_BROADCAST> option - it is not privileged in "
1918 "Linux.  It is easy to overload the network with careless sending to "
1919 "broadcast addresses."
1920 msgstr ""
1921 "B<SO_BROADCAST> オプションを用いる時には慎重の上にも慎重になってほしい。 "
1922 "Linux ではこれに特権を必要としない。 不注意にブロードキャストアドレスに送信を"
1923 "行うと、 ネットワークの状態が簡単に変更されてしまう。"
1924
1925 #. type: SS
1926 #: build/C/man7/ddp.7:232 build/C/man7/ip.7:1204 build/C/man7/packet.7:551
1927 #, no-wrap
1928 msgid "Compatibility"
1929 msgstr "移植性"
1930
1931 #. type: Plain text
1932 #: build/C/man7/ddp.7:239
1933 msgid ""
1934 "The basic AppleTalk socket interface is compatible with B<netatalk> on BSD-"
1935 "derived systems.  Many BSD systems fail to check B<SO_BROADCAST> when "
1936 "sending broadcast frames; this can lead to compatibility problems."
1937 msgstr ""
1938 "基本的な Appletalk ソケットインターフェースは BSD 由来のシステムにおける "
1939 "B<netatalk> と互換性がある。多くの BSD システムでは、 ブロードキャストフレー"
1940 "ムを送信しようとしたときの B<SO_BROADCAST> のチェックに失敗する。これは互換性"
1941 "の問題となるかもしれない。"
1942
1943 #. type: Plain text
1944 #: build/C/man7/ddp.7:244
1945 msgid ""
1946 "The raw socket mode is unique to Linux and exists to support the alternative "
1947 "CAP package and AppleTalk monitoring tools more easily."
1948 msgstr ""
1949 "raw ソケットモードは Linux 独特のもので、もう一方の実装である CAP パッケージ"
1950 "や、 Appletalk モニタツールをより簡単に実装できるようになる。"
1951
1952 #. type: Plain text
1953 #: build/C/man7/ddp.7:246 build/C/man7/ip.7:1219
1954 msgid "There are too many inconsistent error values."
1955 msgstr "エラーの値がまったく首尾一貫していない。"
1956
1957 #. type: Plain text
1958 #: build/C/man7/ddp.7:249
1959 msgid ""
1960 "The ioctls used to configure routing tables, devices, AARP tables and other "
1961 "devices are not yet described."
1962 msgstr ""
1963 "ルーティングテーブル・デバイス・ AARP テーブル・その他のデバイスを 設定するた"
1964 "めに用いられる ioctl がまだ記述されていない。"
1965
1966 #. type: Plain text
1967 #: build/C/man7/ddp.7:254
1968 msgid "B<recvmsg>(2), B<sendmsg>(2), B<capabilities>(7), B<socket>(7)"
1969 msgstr "B<recvmsg>(2), B<sendmsg>(2), B<capabilities>(7), B<socket>(7)"
1970
1971 #. type: TH
1972 #: build/C/man3/endian.3:28
1973 #, no-wrap
1974 msgid "ENDIAN"
1975 msgstr "ENDIAN"
1976
1977 #. type: TH
1978 #: build/C/man3/endian.3:28 build/C/man3/getnetent_r.3:26
1979 #: build/C/man3/getprotoent_r.3:26 build/C/man3/getservent_r.3:26
1980 #, no-wrap
1981 msgid "2010-09-10"
1982 msgstr "2010-09-10"
1983
1984 #. type: Plain text
1985 #: build/C/man3/endian.3:33
1986 msgid ""
1987 "htobe16, htole16, be16toh, le16toh, htobe32, htole32, be32toh, le32toh, "
1988 "htobe64, htole64, be64toh, le64toh - convert values between host and big-/"
1989 "little-endian byte order"
1990 msgstr ""
1991 "htobe16, htole16, be16toh, le16toh, htobe32, htole32, be32toh,\n"
1992 "le32toh, htobe64, htole64, be64toh, le64toh - ホストバイトオーダーと\n"
1993 "ビッグ/リトルエンディアンバイトオーダーの間で値の変換を行う"
1994
1995 #. type: Plain text
1996 #: build/C/man3/endian.3:37
1997 #, no-wrap
1998 msgid ""
1999 "B<#define _BSD_SOURCE>             /* See feature_test_macros(7) */\n"
2000 "B<#include E<lt>endian.hE<gt>>\n"
2001 msgstr ""
2002 "B<#define _BSD_SOURCE>             /* feature_test_macros(7) 参照 */\n"
2003 "B<#include E<lt>endian.hE<gt>>\n"
2004
2005 #. type: Plain text
2006 #: build/C/man3/endian.3:42
2007 #, no-wrap
2008 msgid ""
2009 "B<uint16_t htobe16(uint16_t >I<host_16bits>B<);>\n"
2010 "B<uint16_t htole16(uint16_t >I<host_16bits>B<);>\n"
2011 "B<uint16_t be16toh(uint16_t >I<big_endian_16bits>B<);>\n"
2012 "B<uint16_t le16toh(uint16_t >I<little_endian_16bits>B<);>\n"
2013 msgstr ""
2014 "B<uint16_t htobe16(uint16_t >I<host_16bits>B<);>\n"
2015 "B<uint16_t htole16(uint16_t >I<host_16bits>B<);>\n"
2016 "B<uint16_t be16toh(uint16_t >I<big_endian_16bits>B<);>\n"
2017 "B<uint16_t le16toh(uint16_t >I<little_endian_16bits>B<);>\n"
2018
2019 #. type: Plain text
2020 #: build/C/man3/endian.3:47
2021 #, no-wrap
2022 msgid ""
2023 "B<uint32_t htobe32(uint32_t >I<host_32bits>B<);>\n"
2024 "B<uint32_t htole32(uint32_t >I<host_32bits>B<);>\n"
2025 "B<uint32_t be32toh(uint32_t >I<big_endian_32bits>B<);>\n"
2026 "B<uint32_t le32toh(uint32_t >I<little_endian_32bits>B<);>\n"
2027 msgstr ""
2028 "B<uint32_t htobe32(uint32_t >I<host_32bits>B<);>\n"
2029 "B<uint32_t htole32(uint32_t >I<host_32bits>B<);>\n"
2030 "B<uint32_t be32toh(uint32_t >I<big_endian_32bits>B<);>\n"
2031 "B<uint32_t le32toh(uint32_t >I<little_endian_32bits>B<);>\n"
2032
2033 #. type: Plain text
2034 #: build/C/man3/endian.3:52
2035 #, no-wrap
2036 msgid ""
2037 "B<uint64_t htobe64(uint64_t >I<host_64bits>B<);>\n"
2038 "B<uint64_t htole64(uint64_t >I<host_64bits>B<);>\n"
2039 "B<uint64_t be64toh(uint64_t >I<big_endian_64bits>B<);>\n"
2040 "B<uint64_t le64toh(uint64_t >I<little_endian_64bits>B<);>\n"
2041 msgstr ""
2042 "B<uint64_t htobe64(uint64_t >I<host_64bits>B<);>\n"
2043 "B<uint64_t htole64(uint64_t >I<host_64bits>B<);>\n"
2044 "B<uint64_t be64toh(uint64_t >I<big_endian_64bits>B<);>\n"
2045 "B<uint64_t le64toh(uint64_t >I<little_endian_64bits>B<);>\n"
2046
2047 #. type: Plain text
2048 #: build/C/man3/endian.3:57
2049 msgid ""
2050 "These functions convert the byte encoding of integer values from the byte "
2051 "order that the current CPU (the \"host\") uses, to and from little-endian "
2052 "and big-endian byte order."
2053 msgstr ""
2054 "これらの関数は、整数値のバイトエンコーディングを、\n"
2055 "使用中の CPU (\"ホスト\") のバイトオーダーから\n"
2056 "リトルエンディアンやビッグエンディアンバイトオーダーへの変換や\n"
2057 "その逆の変換を行う。"
2058
2059 #. type: Plain text
2060 #: build/C/man3/endian.3:62
2061 msgid ""
2062 "The number, I<nn>, in the name of each function indicates the size of "
2063 "integer handled by the function, either 16, 32, or 64 bits."
2064 msgstr ""
2065 "各関数の名前に付いている数字 I<nn> は、その関数が扱う整数のサイズ\n"
2066 "(16, 32, 64 ビットのどれか) を示している。"
2067
2068 #. type: Plain text
2069 #: build/C/man3/endian.3:65
2070 msgid ""
2071 "The functions with names of the form \"htobeI<nn>\" convert from host byte "
2072 "order to big-endian order."
2073 msgstr ""
2074 "名前が \"htobeI<nn>\" という形の関数は、ホストバイトオーダーから\n"
2075 "ビッグエンディアンバイトオーダーへの変換を行う。"
2076
2077 #. type: Plain text
2078 #: build/C/man3/endian.3:68
2079 msgid ""
2080 "The functions with names of the form \"htoleI<nn>\" convert from host byte "
2081 "order to little-endian order."
2082 msgstr ""
2083 "名前が \"htoleI<nn>\" という形の関数は、ホストバイトオーダーから\n"
2084 "リトルエンディアンバイトオーダーへの変換を行う。"
2085
2086 #. type: Plain text
2087 #: build/C/man3/endian.3:71
2088 msgid ""
2089 "The functions with names of the form \"beI<nn>toh\" convert from big-endian "
2090 "order to host byte order."
2091 msgstr ""
2092 "名前が \"beI<nn>toh\" という形の関数は、ビッグエンディアンバイトオーダー\n"
2093 "からホストバイトオーダーへの変換を行う。"
2094
2095 #. type: Plain text
2096 #: build/C/man3/endian.3:74
2097 msgid ""
2098 "The functions with names of the form \"leI<nn>toh\" convert from little-"
2099 "endian order to host byte order."
2100 msgstr ""
2101 "名前が \"leI<nn>toh\" という形の関数は、リトルエンディアンバイトオーダー\n"
2102 "からホストバイトオーダーへの変換を行う。"
2103
2104 #. type: Plain text
2105 #: build/C/man3/endian.3:76
2106 msgid "These functions were added to glibc in version 2.9."
2107 msgstr "これらの関数は glibc バージョン 2.9 で追加された。"
2108
2109 #. type: Plain text
2110 #: build/C/man3/endian.3:91
2111 msgid ""
2112 "These functions are nonstandard.  Similar functions are present on the BSDs, "
2113 "where the required header file is I<E<lt>sys/endian.hE<gt>> instead of "
2114 "I<E<lt>endian.hE<gt>>.  Unfortunately, NetBSD, FreeBSD, and glibc haven't "
2115 "followed the original OpenBSD naming convention for these functions, whereby "
2116 "the I<nn> component always appears at the end of the function name (thus, "
2117 "for example, in NetBSD, FreeBSD, and glibc, the equivalent of OpenBSDs "
2118 "\"betoh32\" is \"be32toh\")."
2119 msgstr ""
2120 "これらの関数は非標準である。\n"
2121 "BSD には同様の関数が存在するが、 BSD では\n"
2122 "必要なヘッダファイルは I<E<lt>endian.hE<gt>> ではなく\n"
2123 "I<E<lt>sys/endian.hE<gt>> である。\n"
2124 "不幸なことに、 NetBSD, FreeBSD, glibc では、\n"
2125 "これらの関数の元々の OpenBSD での、 I<nn> は常に関数名の末尾に置く\n"
2126 "という名前付けルールが踏襲されていない\n"
2127 "(そのため、例を挙げると、 OpenBSD の \"betoh32\" と等価な関数は\n"
2128 "NetBSD, FreeBSD, glibc では \"be32toh\" となる)。"
2129
2130 #. type: Plain text
2131 #: build/C/man3/endian.3:99
2132 msgid ""
2133 "These functions are similar to the older B<byteorder>(3)  family of "
2134 "functions.  For example, B<be32toh>()  is identical to B<ntohl>()."
2135 msgstr ""
2136 "これらの関数は、前からある B<byteorder>(3) 系の関数と同じである。\n"
2137 "例えば、 B<be32toh>() は B<ntohl>() と等価である。"
2138
2139 #. type: Plain text
2140 #: build/C/man3/endian.3:107
2141 msgid ""
2142 "The advantage of the B<byteorder>(3)  functions is that they are standard "
2143 "functions available on all UNIX systems.  On the other hand, the fact that "
2144 "they were designed for use in the context of TCP/IP means that they lack the "
2145 "64-bit and little-endian variants described in this page."
2146 msgstr ""
2147 "B<byteorder>(3) 系の関数のメリットは、これらが\n"
2148 "全ての UNIX システムで利用可能な標準関数である点である。\n"
2149 "一方で、これらの関数は TCP/IP 処理で使用されることを想定して\n"
2150 "設計されたため、このページで説明している 64 ビット版や\n"
2151 "リトルエンディアン版などが存在しない。"
2152
2153 #. type: Plain text
2154 #: build/C/man3/endian.3:114
2155 msgid ""
2156 "The program below display the results of converting an integer from host "
2157 "byte order to both little-endian and big-endian byte order.  Since host byte "
2158 "order is either little-endian or big-endian, only one of these conversions "
2159 "will have an effect.  When we run this program on a little-endian system "
2160 "such as x86-32, we see the following:"
2161 msgstr ""
2162 "以下のプログラムは、整数をホストバイトオーダーからリトルエンディアンと\n"
2163 "ビットエンディアンの両方のバイトオーダーに変換し、その結果を表示する。\n"
2164 "ホストバイトオーダーはリトルエンディアンかビットエンディアンのいずれか\n"
2165 "なので、変換に意味があるのはどちらか一方だけである。\n"
2166 "このプログラムを x86-32 などのリトルエンディアンのシステムで実行した\n"
2167 "場合の実行結果は下記のようになる。"
2168
2169 #. type: Plain text
2170 #: build/C/man3/endian.3:121
2171 #, no-wrap
2172 msgid ""
2173 "$ B<./a.out>\n"
2174 "x.u32 = 0x44332211\n"
2175 "htole32(x.u32) = 0x44332211\n"
2176 "htobe32(x.u32) = 0x11223344\n"
2177 msgstr ""
2178 "$ B<./a.out>\n"
2179 "x.u32 = 0x44332211\n"
2180 "htole32(x.u32) = 0x44332211\n"
2181 "htobe32(x.u32) = 0x11223344\n"
2182
2183 #. type: SS
2184 #: build/C/man3/endian.3:123 build/C/man3/getprotoent_r.3:162
2185 #: build/C/man3/getservent_r.3:160 build/C/man3/inet.3:270
2186 #: build/C/man3/inet_pton.3:173
2187 #, no-wrap
2188 msgid "Program source"
2189 msgstr "プログラムのソース"
2190
2191 #. type: Plain text
2192 #: build/C/man3/endian.3:130
2193 #, no-wrap
2194 msgid ""
2195 "#include E<lt>endian.hE<gt>\n"
2196 "#include E<lt>stdint.hE<gt>\n"
2197 "#include E<lt>stdio.hE<gt>\n"
2198 "#include E<lt>stdlib.hE<gt>\n"
2199 msgstr ""
2200 "#include E<lt>endian.hE<gt>\n"
2201 "#include E<lt>stdint.hE<gt>\n"
2202 "#include E<lt>stdio.hE<gt>\n"
2203 "#include E<lt>stdlib.hE<gt>\n"
2204
2205 #. type: Plain text
2206 #: build/C/man3/endian.3:138
2207 #, no-wrap
2208 msgid ""
2209 "int\n"
2210 "main(int argc, char *argv[])\n"
2211 "{\n"
2212 "    union {\n"
2213 "        uint32_t u32;\n"
2214 "        uint8_t arr[4];\n"
2215 "    } x;\n"
2216 msgstr ""
2217 "int\n"
2218 "main(int argc, char *argv[])\n"
2219 "{\n"
2220 "    union {\n"
2221 "        uint32_t u32;\n"
2222 "        uint8_t arr[4];\n"
2223 "    } x;\n"
2224
2225 #. type: Plain text
2226 #: build/C/man3/endian.3:143
2227 #, no-wrap
2228 msgid ""
2229 "    x.arr[0] = 0x11;\t/* Lowest-address byte */\n"
2230 "    x.arr[1] = 0x22;\n"
2231 "    x.arr[2] = 0x33;\n"
2232 "    x.arr[3] = 0x44;\t/* Highest-address byte */\n"
2233 msgstr ""
2234 "    x.arr[0] = 0x11;\t/* Lowest-address byte */\n"
2235 "    x.arr[1] = 0x22;\n"
2236 "    x.arr[2] = 0x33;\n"
2237 "    x.arr[3] = 0x44;\t/* Highest-address byte */\n"
2238
2239 #. type: Plain text
2240 #: build/C/man3/endian.3:147
2241 #, no-wrap
2242 msgid ""
2243 "    printf(\"x.u32 = 0x%x\\en\", x.u32);\n"
2244 "    printf(\"htole32(x.u32) = 0x%x\\en\", htole32(x.u32));\n"
2245 "    printf(\"htobe32(x.u32) = 0x%x\\en\", htobe32(x.u32));\n"
2246 msgstr ""
2247 "    printf(\"x.u32 = 0x%x\\en\", x.u32);\n"
2248 "    printf(\"htole32(x.u32) = 0x%x\\en\", htole32(x.u32));\n"
2249 "    printf(\"htobe32(x.u32) = 0x%x\\en\", htobe32(x.u32));\n"
2250
2251 #. type: Plain text
2252 #: build/C/man3/endian.3:150 build/C/man3/getaddrinfo.3:826
2253 #: build/C/man3/getprotoent_r.3:236 build/C/man3/getservent_r.3:240
2254 #: build/C/man3/inet_pton.3:214
2255 #, no-wrap
2256 msgid ""
2257 "    exit(EXIT_SUCCESS);\n"
2258 "}\n"
2259 msgstr ""
2260 "    exit(EXIT_SUCCESS);\n"
2261 "}\n"
2262
2263 #. type: Plain text
2264 #: build/C/man3/endian.3:153
2265 msgid "B<byteorder>(3)"
2266 msgstr "B<byteorder>(3)"
2267
2268 #. type: TH
2269 #: build/C/man3/ether_aton.3:31
2270 #, no-wrap
2271 msgid "ETHER_ATON"
2272 msgstr "ETHER_ATON"
2273
2274 #. type: TH
2275 #: build/C/man3/ether_aton.3:31
2276 #, no-wrap
2277 msgid "2013-07-04"
2278 msgstr "2013-07-04"
2279
2280 #. type: Plain text
2281 #: build/C/man3/ether_aton.3:35
2282 msgid ""
2283 "ether_aton, ether_ntoa, ether_ntohost, ether_hostton, ether_line, "
2284 "ether_ntoa_r, ether_aton_r - Ethernet address manipulation routines"
2285 msgstr ""
2286 "ether_aton, ether_ntoa, ether_ntohost, ether_hostton, ether_line, "
2287 "ether_ntoa_r, ether_aton_r - Ethernet アドレスの操作用関数"
2288
2289 #. type: Plain text
2290 #: build/C/man3/ether_aton.3:38
2291 #, no-wrap
2292 msgid "B<#include E<lt>netinet/ether.hE<gt>>\n"
2293 msgstr "B<#include E<lt>netinet/ether.hE<gt>>\n"
2294
2295 #. type: Plain text
2296 #: build/C/man3/ether_aton.3:40
2297 #, no-wrap
2298 msgid "B<char *ether_ntoa(const struct ether_addr *>I<addr>B<);>\n"
2299 msgstr "B<char *ether_ntoa(const struct ether_addr *>I<addr>B<);>\n"
2300
2301 #. type: Plain text
2302 #: build/C/man3/ether_aton.3:42
2303 #, no-wrap
2304 msgid "B<struct ether_addr *ether_aton(const char *>I<asc>B<);>\n"
2305 msgstr "B<struct ether_addr *ether_aton(const char *>I<asc>B<);>\n"
2306
2307 #. type: Plain text
2308 #: build/C/man3/ether_aton.3:44
2309 #, no-wrap
2310 msgid "B<int ether_ntohost(char *>I<hostname>B<, const struct ether_addr *>I<addr>B<);>\n"
2311 msgstr "B<int ether_ntohost(char *>I<hostname>B<, const struct ether_addr *>I<addr>B<);>\n"
2312
2313 #. type: Plain text
2314 #: build/C/man3/ether_aton.3:46
2315 #, no-wrap
2316 msgid "B<int ether_hostton(const char *>I<hostname>B<, struct ether_addr *>I<addr>B<);>\n"
2317 msgstr "B<int ether_hostton(const char *>I<hostname>B<, struct ether_addr *>I<addr>B<);>\n"
2318
2319 #. type: Plain text
2320 #: build/C/man3/ether_aton.3:49
2321 #, no-wrap
2322 msgid ""
2323 "B<int ether_line(const char *>I<line>B<, struct ether_addr *>I<addr>B<,>\n"
2324 "B<               char *>I<hostname>B<);>\n"
2325 msgstr ""
2326 "B<int ether_line(const char *>I<line>B<, struct ether_addr *>I<addr>B<,>\n"
2327 "B<               char *>I<hostname>B<);>\n"
2328
2329 #. type: Plain text
2330 #: build/C/man3/ether_aton.3:51 build/C/man3/gethostbyname.3:70
2331 #, no-wrap
2332 msgid "/* GNU extensions */\n"
2333 msgstr "/* GNU 拡張 */\n"
2334
2335 #. type: Plain text
2336 #: build/C/man3/ether_aton.3:53
2337 #, no-wrap
2338 msgid "B<char *ether_ntoa_r(const struct ether_addr *>I<addr>B<, char *>I<buf>B<);>\n"
2339 msgstr "B<char *ether_ntoa_r(const struct ether_addr *>I<addr>B<, char *>I<buf>B<);>\n"
2340
2341 #. type: Plain text
2342 #: build/C/man3/ether_aton.3:56
2343 #, no-wrap
2344 msgid ""
2345 "B<struct ether_addr *ether_aton_r(const char *>I<asc>B<,>\n"
2346 "B<                                struct ether_addr *>I<addr>B<);>\n"
2347 msgstr ""
2348 "B<struct ether_addr *ether_aton_r(const char *>I<asc>B<,>\n"
2349 "B<                                struct ether_addr *>I<addr>B<);>\n"
2350
2351 #. type: Plain text
2352 #: build/C/man3/ether_aton.3:67
2353 msgid ""
2354 "B<ether_aton>()  converts the 48-bit Ethernet host address I<asc> from the "
2355 "standard hex-digits-and-colons notation into binary data in network byte "
2356 "order and returns a pointer to it in a statically allocated buffer, which "
2357 "subsequent calls will overwrite.  B<ether_aton>()  returns NULL if the "
2358 "address is invalid."
2359 msgstr ""
2360 "関数 B<ether_aton>()  は、標準的な 16進数とコロンの形式で書かれた 48ビットの "
2361 "Ethernet ホストアドレス I<asc> を、ネットワークでのバイト順 (byte order)  の"
2362 "バイナリデータに変換し、静的に割り当てられたバッファに格納されたデータ へのポ"
2363 "インタを返す。このバッファは、これ以降の関数呼び出しで上書きされる。 アドレス"
2364 "が不正な場合、 B<ether_aton>()  は NULL を返す。"
2365
2366 #. type: Plain text
2367 #: build/C/man3/ether_aton.3:76
2368 msgid ""
2369 "The B<ether_ntoa>()  function converts the Ethernet host address I<addr> "
2370 "given in network byte order to a string in standard hex-digits-and-colons "
2371 "notation, omitting leading zeros.  The string is returned in a statically "
2372 "allocated buffer, which subsequent calls will overwrite."
2373 msgstr ""
2374 "関数 B<ether_ntoa>()  は、ネットワークのバイト順で表された Ethernet ホストア"
2375 "ドレス I<addr> を、標準的な 16進数とコロンの形式の文字列に変換する。 但し、先"
2376 "頭の 0 は省略される。変換後の文字列は静的に割り当てられたバッファ に格納され"
2377 "て返される。このバッファは、これ以降の関数呼び出しで上書きされる。"
2378
2379 #. type: Plain text
2380 #: build/C/man3/ether_aton.3:83
2381 msgid ""
2382 "The B<ether_ntohost>()  function maps an Ethernet address to the "
2383 "corresponding hostname in I</etc/ethers> and returns nonzero if it cannot be "
2384 "found."
2385 msgstr ""
2386 "関数 B<ether_ntohost>()  は、Ethernet アドレスに対応するホスト名を I</etc/"
2387 "ethers> を検索して割り当てる。対応するホスト名が見つからなかった場合は、 非 "
2388 "0 を返す。"
2389
2390 #. type: Plain text
2391 #: build/C/man3/ether_aton.3:90
2392 msgid ""
2393 "The B<ether_hostton>()  function maps a hostname to the corresponding "
2394 "Ethernet address in I</etc/ethers> and returns nonzero if it cannot be found."
2395 msgstr ""
2396 "関数 B<ether_hostton>()  は、ホスト名に対応する Ethernet アドレスを I</etc/"
2397 "ethers> を検索して割り当てる。対応するホスト名が見つからなかった場合は、 非 "
2398 "0 を返す。"
2399
2400 #. type: Plain text
2401 #: build/C/man3/ether_aton.3:102
2402 msgid ""
2403 "The B<ether_line>()  function parses a line in I</etc/ethers> format "
2404 "(ethernet address followed by whitespace followed by hostname; \\(aq#\\(aq "
2405 "introduces a comment) and returns an address and hostname pair, or nonzero "
2406 "if it cannot be parsed.  The buffer pointed to by I<hostname> must be "
2407 "sufficiently long, for example, have the same length as I<line>."
2408 msgstr ""
2409 "関数 B<ether_line>()  は、 I</etc/ethers> 形式になった行を解析し、 アドレスと"
2410 "ホスト名の組を返す (I</etc/ethers> 形式は、Ethernet アドレス、ホスト名が空白"
2411 "文字 (whitespace)  で区切られた書式で、\\(aq#\\(aq 以降はコメントとみなされ"
2412 "る)。 解析できなかった場合は、非 0 を返す。 I<hostname> で指定されたバッファ"
2413 "は十分な長さが必要である。つまり、 I<line> と同じ長さでなければならない。"
2414
2415 #. type: Plain text
2416 #: build/C/man3/ether_aton.3:113
2417 msgid ""
2418 "The functions B<ether_ntoa_r>()  and B<ether_aton_r>()  are reentrant thread-"
2419 "safe versions of B<ether_ntoa>()  and B<ether_aton>()  respectively, and do "
2420 "not use static buffers."
2421 msgstr ""
2422 "関数 B<ether_ntoa_r>()  と B<ether_aton_r>()  は、 それぞれ B<ether_ntoa>()  "
2423 "と B<ether_aton>()  の リエントラントでスレッドセーフなバージョンであり、 静"
2424 "的なバッファを使用しない。"
2425
2426 #. type: Plain text
2427 #: build/C/man3/ether_aton.3:119
2428 msgid ""
2429 "The structure I<ether_addr> is defined in I<E<lt>net/ethernet.hE<gt>> as:"
2430 msgstr ""
2431 "I<ether_addr> 構造体は I<E<lt>net/ethernet.hE<gt>> で次のように定義されてい"
2432 "る:"
2433
2434 #. type: Plain text
2435 #: build/C/man3/ether_aton.3:125
2436 #, no-wrap
2437 msgid ""
2438 "struct ether_addr {\n"
2439 "    uint8_t ether_addr_octet[6];\n"
2440 "}\n"
2441 msgstr ""
2442 "struct ether_addr {\n"
2443 "    uint8_t ether_addr_octet[6];\n"
2444 "}\n"
2445
2446 #. type: SH
2447 #: build/C/man3/ether_aton.3:127 build/C/man3/rexec.3:142
2448 #, no-wrap
2449 msgid "ATTRIBUTES"
2450 msgstr "属性"
2451
2452 #. type: SS
2453 #: build/C/man3/ether_aton.3:128 build/C/man3/rexec.3:143
2454 #, no-wrap
2455 msgid "Multithreading (see pthreads(7))"
2456 msgstr "マルチスレッディング (pthreads(7) 参照)"
2457
2458 #. type: Plain text
2459 #: build/C/man3/ether_aton.3:134
2460 msgid ""
2461 "The B<ether_aton>()  and B<ether_ntoa>()  functions are not thread-safe."
2462 msgstr "関数 B<ether_aton>() と B<ether_ntoa>() はスレッドセーフではない。"
2463
2464 #. type: Plain text
2465 #: build/C/man3/ether_aton.3:143
2466 msgid ""
2467 "The B<ether_ntohost>(), B<ether_hostton>(), B<ether_line>(), B<ether_ntoa_r>"
2468 "()  and B<ether_aton_r>()  functions are thread-safe."
2469 msgstr ""
2470 "関数 B<ether_ntohost>(), B<ether_hostton>(), B<ether_line>(), B<ether_ntoa_r>"
2471 "(), B<ether_aton_r>() はスレッドセーフである。"
2472
2473 #. type: Plain text
2474 #: build/C/man3/ether_aton.3:145
2475 msgid "4.3BSD, SunOS."
2476 msgstr "4.3BSD, SunOS."
2477
2478 #. type: Plain text
2479 #: build/C/man3/ether_aton.3:149
2480 msgid "The glibc 2.2.5 implementation of B<ether_line>()  is broken."
2481 msgstr "glibc 2.2.5 での B<ether_line>()  の実装はおかしい。"
2482
2483 #. type: Plain text
2484 #: build/C/man3/ether_aton.3:151
2485 msgid "B<ethers>(5)"
2486 msgstr "B<ethers>(5)"
2487
2488 #. type: TH
2489 #: build/C/man5/gai.conf.5:19
2490 #, no-wrap
2491 msgid "GAI.CONF"
2492 msgstr "GAI.CONF"
2493
2494 #. type: TH
2495 #: build/C/man5/gai.conf.5:19 build/C/man5/nss.5:19
2496 #, no-wrap
2497 msgid "2013-02-13"
2498 msgstr "2013-02-13"
2499
2500 #. type: Plain text
2501 #: build/C/man5/gai.conf.5:22
2502 msgid "gai.conf - getaddrinfo(3) configuration file"
2503 msgstr "gai.conf - getaddrinfo(3) 設定ファイル"
2504
2505 #. type: Plain text
2506 #: build/C/man5/gai.conf.5:36
2507 msgid ""
2508 "A call to B<getaddrinfo>(3)  might return multiple answers.  According to RFC"
2509 "\\ 3484 these answers must be sorted so that the answer with the highest "
2510 "success rate is first in the list.  The RFC provides an algorithm for the "
2511 "sorting.  The static rules are not always adequate, though.  For this "
2512 "reason, the RFC also requires that system administrators should have the "
2513 "possibility to dynamically change the sorting.  For the glibc "
2514 "implementation, this can be achieved with the I</etc/gai.conf> file."
2515 msgstr ""
2516 "B<getaddrinfo>(3) の呼び出しでは、複数の答えが返る場合がある。 RFC\\ 3484 に"
2517 "よれば、 これらの答えは、 最も成功の可能性が高い答えがリストの先頭になるよう"
2518 "な順番に並び替えなければならない。 RFC には、 並び替えのアルゴリズムが書かれ"
2519 "ている。 しかしながら、 静的なルールが常に適切という訳ではない。 この理由か"
2520 "ら、 RFC では、 並び替え方法をシステム管理者が動的に変更できるようにすること"
2521 "も要求している。 glibc の実装では、 I</etc/gai.conf> ファイルでこれが実現でき"
2522 "るようになっている。"
2523
2524 #. type: Plain text
2525 #: build/C/man5/gai.conf.5:40
2526 msgid ""
2527 "Each line in the configuration file consists of a keyword and its "
2528 "parameters.  White spaces in any place are ignored.  Lines starting with "
2529 "\\(aq#\\(aq are comments and are ignored."
2530 msgstr ""
2531 "設定ファイルの各行は、キーワードとそのパラメータで構成される。 ホワイトスペー"
2532 "スはどこにあっても全て無視される。 \\(aq#\\(aq で始まる行はコメントで、 無視"
2533 "される。"
2534
2535 #. type: Plain text
2536 #: build/C/man5/gai.conf.5:42
2537 msgid "The keywords currently recognized are:"
2538 msgstr "現在のところ、認識されるキーワードは以下の通りである。"
2539
2540 #. type: TP
2541 #: build/C/man5/gai.conf.5:42
2542 #, no-wrap
2543 msgid "B<label> I<netmask> I<precedence>"
2544 msgstr "B<label> I<netmask> I<precedence>"
2545
2546 #. type: Plain text
2547 #: build/C/man5/gai.conf.5:51
2548 msgid ""
2549 "The value is added to the label table used in the RFC\\ 3484 sorting.  If "
2550 "any B<label> definition is present in the configuration file is present, the "
2551 "default table is not used.  All the label definitions of the default table "
2552 "which are to be maintained have to be duplicated.  Following the keyword, "
2553 "the line has to contain a network mask and a label value."
2554 msgstr ""
2555 "指定した値は RFC\\ 3484 の並び替えで使用されるラベルテーブルに追加される。 設"
2556 "定ファイルに B<label> 定義が一つでもあれば、デフォルトテーブルは使用されな"
2557 "い。 デフォルトテーブルのすべてのラベル定義はきちんと管理されていれば、 重複"
2558 "が発生するはずだからである。 ラベル行では、 キーワードの後に、 ネットワークマ"
2559 "スクとラベル値が含まれていなければならない。"
2560
2561 #. type: TP
2562 #: build/C/man5/gai.conf.5:51
2563 #, no-wrap
2564 msgid "B<precedence> I<netmask> I<precedence>"
2565 msgstr "B<precedence> I<netmask> I<precedence>"
2566
2567 #. type: Plain text
2568 #: build/C/man5/gai.conf.5:58
2569 msgid ""
2570 "This keyword is similar to B<label>, but instead the value is added to the "
2571 "precedence table as specified in RFC\\ 3484.  Once again, the presence of a "
2572 "single B<precedence> line in the configuration file causes the default table "
2573 "to not be used."
2574 msgstr ""
2575 "このキーワードは B<label> に似ているが、 指定された値を RFC\\ 3484 で規定され"
2576 "た優先度テーブルに追加する点が異なる。 繰り返しになるが、 設定ファイルに "
2577 "B<precedence> が一つでもあれば、デフォルトテーブルは使用されない。"
2578
2579 #. type: TP
2580 #: build/C/man5/gai.conf.5:58
2581 #, no-wrap
2582 msgid "B<reload> E<lt>B<yes>|B<no>E<gt>"
2583 msgstr "B<reload> E<lt>B<yes>|B<no>E<gt>"
2584
2585 #. type: Plain text
2586 #: build/C/man5/gai.conf.5:67
2587 msgid ""
2588 "This keyword controls whether a process checks whether the configuration "
2589 "file has been changed since the last time it was read.  If the value is "
2590 "\"B<yes>\" the file is re-read.  This might cause problems in multithreaded "
2591 "applications and is generally a bad idea.  The default is \"B<no>\"."
2592 msgstr ""
2593 "このキーワードは、 設定ファイルが前回の読み出し以降に変更されているかをプロセ"
2594 "スが確認するかを制御する。 値が \"B<yes>\" であれば、 ファイルが再読み込みさ"
2595 "れる。 再読み込みはマルチスレッドアプリケーションで問題を起こす可能性があ"
2596 "り、 一般にはよい考えとは言えない。 デフォルトは \"B<no>\" である。"
2597
2598 #. type: TP
2599 #: build/C/man5/gai.conf.5:67
2600 #, no-wrap
2601 msgid "B<scopev4> I<mask> I<value>"
2602 msgstr "B<scopev4> I<mask> I<value>"
2603
2604 #. type: Plain text
2605 #: build/C/man5/gai.conf.5:72
2606 msgid ""
2607 "Add another rule to the RFC\\ 3484 scope table for IPv4 address.  By "
2608 "default, the scope IDs described in section 3.2 in RFC\\ 3438 are used.  "
2609 "Changing these defaults should hardly ever be necessary."
2610 msgstr ""
2611 "IPv4 アドレス用の RFC\\ 3484 スコープテーブルに別のルールを追加する。 デフォ"
2612 "ルトでは、 RFC\\ 3438 のセクション 3.2 で説明されているスコープ ID が使用され"
2613 "る。 これらのデフォルト値の変更が必要になることはまずないだろう。"
2614
2615 #. type: SH
2616 #: build/C/man5/gai.conf.5:72 build/C/man3/getaddrinfo.3:592
2617 #: build/C/man3/gethostbyname.3:307 build/C/man3/getnameinfo.3:197
2618 #: build/C/man3/getnetent.3:141 build/C/man3/getprotoent.3:134
2619 #: build/C/man3/getservent.3:153 build/C/man5/host.conf.5:180
2620 #: build/C/man5/hosts.5:86 build/C/man5/hosts.equiv.5:69
2621 #: build/C/man5/networks.5:70 build/C/man5/nss.5:98
2622 #: build/C/man5/nsswitch.conf.5:298 build/C/man5/protocols.5:77
2623 #: build/C/man5/resolv.conf.5:287 build/C/man3/resolver.3:267
2624 #: build/C/man5/services.5:185 build/C/man3/setnetgrent.3:88
2625 #: build/C/man7/udplite.7:126
2626 #, no-wrap
2627 msgid "FILES"
2628 msgstr "ファイル"
2629
2630 #. type: Plain text
2631 #: build/C/man5/gai.conf.5:74 build/C/man3/getaddrinfo.3:594
2632 msgid "I</etc/gai.conf>"
2633 msgstr "I</etc/gai.conf>"
2634
2635 #. type: Plain text
2636 #: build/C/man5/gai.conf.5:77
2637 msgid ""
2638 "The default table according to RFC\\ 3484 would be specified with the "
2639 "following configuration file:"
2640 msgstr ""
2641 "RFC\\ 3484 で規定されているデフォルトテーブルは、 以下の設定ファイルを指定す"
2642 "るのと同じである。"
2643
2644 #. type: Plain text
2645 #: build/C/man5/gai.conf.5:89
2646 #, no-wrap
2647 msgid ""
2648 "label  ::1/128       0\n"
2649 "label  ::/0          1\n"
2650 "label  2002::/16     2\n"
2651 "label ::/96          3\n"
2652 "label ::ffff:0:0/96  4\n"
2653 "precedence  ::1/128       50\n"
2654 "precedence  ::/0          40\n"
2655 "precedence  2002::/16     30\n"
2656 "precedence ::/96          20\n"
2657 "precedence ::ffff:0:0/96  10\n"
2658 msgstr ""
2659 "label  ::1/128       0\n"
2660 "label  ::/0          1\n"
2661 "label  2002::/16     2\n"
2662 "label ::/96          3\n"
2663 "label ::ffff:0:0/96  4\n"
2664 "precedence  ::1/128       50\n"
2665 "precedence  ::/0          40\n"
2666 "precedence  2002::/16     30\n"
2667 "precedence ::/96          20\n"
2668 "precedence ::ffff:0:0/96  10\n"
2669
2670 #. type: Plain text
2671 #: build/C/man5/gai.conf.5:96
2672 msgid "B<getaddrinfo>(3), RFC\\ 3484"
2673 msgstr "B<getaddrinfo>(3), RFC\\ 3484"
2674
2675 #. type: TH
2676 #: build/C/man3/getaddrinfo.3:43
2677 #, no-wrap
2678 msgid "GETADDRINFO"
2679 msgstr "GETADDRINFO"
2680
2681 #. type: TH
2682 #: build/C/man3/getaddrinfo.3:43
2683 #, no-wrap
2684 msgid "2013-11-08"
2685 msgstr "2013-11-08"
2686
2687 #. type: Plain text
2688 #: build/C/man3/getaddrinfo.3:47
2689 msgid ""
2690 "getaddrinfo, freeaddrinfo, gai_strerror - network address and service "
2691 "translation"
2692 msgstr ""
2693 "getaddrinfo, freeaddrinfo, gai_strerror - ネットワークのアドレスとサービスを"
2694 "変換する"
2695
2696 #. type: Plain text
2697 #: build/C/man3/getaddrinfo.3:52 build/C/man3/getipnodebyname.3:35
2698 #, no-wrap
2699 msgid ""
2700 "B<#include E<lt>sys/types.hE<gt>>\n"
2701 "B<#include E<lt>sys/socket.hE<gt>>\n"
2702 "B<#include E<lt>netdb.hE<gt>>\n"
2703 msgstr ""
2704 "B<#include E<lt>sys/types.hE<gt>>\n"
2705 "B<#include E<lt>sys/socket.hE<gt>>\n"
2706 "B<#include E<lt>netdb.hE<gt>>\n"
2707
2708 #. type: Plain text
2709 #: build/C/man3/getaddrinfo.3:56
2710 #, no-wrap
2711 msgid ""
2712 "B<int getaddrinfo(const char *>I<node>B<, const char *>I<service>B<,>\n"
2713 "B<                const struct addrinfo *>I<hints>B<,>\n"
2714 "B<                struct addrinfo **>I<res>B<);>\n"
2715 msgstr ""
2716 "B<int getaddrinfo(const char *>I<node>B<, const char *>I<service>B<,>\n"
2717 "B<                const struct addrinfo *>I<hints>B<,>\n"
2718 "B<                struct addrinfo **>I<res>B<);>\n"
2719
2720 #. type: Plain text
2721 #: build/C/man3/getaddrinfo.3:58
2722 #, no-wrap
2723 msgid "B<void freeaddrinfo(struct addrinfo *>I<res>B<);>\n"
2724 msgstr "B<void freeaddrinfo(struct addrinfo *>I<res>B<);>\n"
2725
2726 #. type: Plain text
2727 #: build/C/man3/getaddrinfo.3:60
2728 #, no-wrap
2729 msgid "B<const char *gai_strerror(int >I<errcode>B<);>\n"
2730 msgstr "B<const char *gai_strerror(int >I<errcode>B<);>\n"
2731
2732 #. type: Plain text
2733 #: build/C/man3/getaddrinfo.3:65 build/C/man3/gethostbyname.3:93
2734 #: build/C/man3/getnameinfo.3:26 build/C/man3/getnetent_r.3:52
2735 #: build/C/man3/getprotoent_r.3:49 build/C/man3/getservent_r.3:49
2736 #: build/C/man3/inet.3:70 build/C/man3/rcmd.3:81 build/C/man3/setnetgrent.3:34
2737 msgid ""
2738 "Feature Test Macro Requirements for glibc (see B<feature_test_macros>(7)):"
2739 msgstr "glibc 向けの機能検査マクロの要件 (B<feature_test_macros>(7)  参照):"
2740
2741 #. type: Plain text
2742 #: build/C/man3/getaddrinfo.3:71
2743 msgid "B<getaddrinfo>(), B<freeaddrinfo>(), B<gai_strerror>():"
2744 msgstr "B<getaddrinfo>(), B<freeaddrinfo>(), B<gai_strerror>():"
2745
2746 #. type: Plain text
2747 #: build/C/man3/getaddrinfo.3:73
2748 msgid "_POSIX_C_SOURCE\\ E<gt>=\\ 1 || _XOPEN_SOURCE || _POSIX_SOURCE"
2749 msgstr "_POSIX_C_SOURCE\\ E<gt>=\\ 1 || _XOPEN_SOURCE || _POSIX_SOURCE"
2750
2751 #.  .BR getipnodebyname (3),
2752 #.  .BR getipnodebyaddr (3),
2753 #. type: Plain text
2754 #: build/C/man3/getaddrinfo.3:100
2755 msgid ""
2756 "Given I<node> and I<service>, which identify an Internet host and a service, "
2757 "B<getaddrinfo>()  returns one or more I<addrinfo> structures, each of which "
2758 "contains an Internet address that can be specified in a call to B<bind>(2)  "
2759 "or B<connect>(2).  The B<getaddrinfo>()  function combines the functionality "
2760 "provided by the B<gethostbyname>(3)  and B<getservbyname>(3)  functions into "
2761 "a single interface, but unlike the latter functions, B<getaddrinfo>()  is "
2762 "reentrant and allows programs to eliminate IPv4-versus-IPv6 dependencies."
2763 msgstr ""
2764 "B<getaddrinfo>()  は、(インターネットのホストとサービスを識別する)  I<node> "
2765 "と I<service> を渡すと、一つ以上の I<addrinfo> 構造体を返す。それぞれの "
2766 "I<addrinfo> 構造体には、 B<bind>(2)  や B<connect>(2)  を呼び出す際に指定でき"
2767 "るインターネットアドレスが格納されている。 B<getaddrinfo>()  関数は、 "
2768 "B<gethostbyname>(3) と B<getservbyname>(3) の機能をまとめて一つのインター"
2769 "フェースにしたものであるが、 これらの関数と違い、 B<getaddrinfo>() はリエント"
2770 "ラントであり、 B<getaddrinfo>() を使うことでプログラムは IPv4 と IPv6 の違い"
2771 "に関する依存関係を なくすことができる。"
2772
2773 #. type: Plain text
2774 #: build/C/man3/getaddrinfo.3:106
2775 msgid ""
2776 "The I<addrinfo> structure used by B<getaddrinfo>()  contains the following "
2777 "fields:"
2778 msgstr ""
2779 "B<getaddrinfo>()  が用いる I<addrinfo> 構造体は以下のフィールドを含む。"
2780
2781 #. type: Plain text
2782 #: build/C/man3/getaddrinfo.3:119
2783 #, no-wrap
2784 msgid ""
2785 "struct addrinfo {\n"
2786 "    int              ai_flags;\n"
2787 "    int              ai_family;\n"
2788 "    int              ai_socktype;\n"
2789 "    int              ai_protocol;\n"
2790 "    socklen_t        ai_addrlen;\n"
2791 "    struct sockaddr *ai_addr;\n"
2792 "    char            *ai_canonname;\n"
2793 "    struct addrinfo *ai_next;\n"
2794 "};\n"
2795 msgstr ""
2796 "struct addrinfo {\n"
2797 "    int              ai_flags;\n"
2798 "    int              ai_family;\n"
2799 "    int              ai_socktype;\n"
2800 "    int              ai_protocol;\n"
2801 "    socklen_t        ai_addrlen;\n"
2802 "    struct sockaddr *ai_addr;\n"
2803 "    char            *ai_canonname;\n"
2804 "    struct addrinfo *ai_next;\n"
2805 "};\n"
2806
2807 #. type: Plain text
2808 #: build/C/man3/getaddrinfo.3:141
2809 msgid ""
2810 "The I<hints> argument points to an I<addrinfo> structure that specifies "
2811 "criteria for selecting the socket address structures returned in the list "
2812 "pointed to by I<res>.  If I<hints> is not NULL it points to an I<addrinfo> "
2813 "structure whose I<ai_family>, I<ai_socktype>, and I<ai_protocol> specify "
2814 "criteria that limit the set of socket addresses returned by B<getaddrinfo>"
2815 "(), as follows:"
2816 msgstr ""
2817 "I<hints> 引き数は I<addrinfo> 構造体を指し示し、この構造体を用いて I<res> が"
2818 "指すリストに入れて返すソケットアドレス構造体を選択するための基準を指定する。 "
2819 "I<hints> が NULL でない場合、 I<hints> は I<addrinfo> 構造体を指し示し、その"
2820 "構造体のフィールド I<ai_family>, I<ai_socktype>, I<ai_protocol> で "
2821 "B<getaddrinfo>()  が返すソケットアドレス集合に対する基準を指定する。"
2822
2823 #. type: TP
2824 #: build/C/man3/getaddrinfo.3:141
2825 #, no-wrap
2826 msgid "I<ai_family>"
2827 msgstr "I<ai_family>"
2828
2829 #. type: Plain text
2830 #: build/C/man3/getaddrinfo.3:157
2831 msgid ""
2832 "This field specifies the desired address family for the returned addresses.  "
2833 "Valid values for this field include B<AF_INET> and B<AF_INET6>.  The value "
2834 "B<AF_UNSPEC> indicates that B<getaddrinfo>()  should return socket addresses "
2835 "for any address family (either IPv4 or IPv6, for example) that can be used "
2836 "with I<node> and I<service>."
2837 msgstr ""
2838 "このフィールドは返されるアドレスの希望のアドレスファミリーを指定する。 この"
2839 "フィールドに指定できる有効な値としては B<AF_INET> と B<AF_INET6> がある。 ま"
2840 "た、値 B<AF_UNSPEC> を指定すると、 B<getaddrinfo>()  は I<node> と "
2841 "I<service> で使用できるいずれかのアドレスファミリー (例えば IPv4 か IPv6) の "
2842 "ソケットアドレスを返すことを求められる。"
2843
2844 #. type: TP
2845 #: build/C/man3/getaddrinfo.3:157
2846 #, no-wrap
2847 msgid "I<ai_socktype>"
2848 msgstr "I<ai_socktype>"
2849
2850 #. type: Plain text
2851 #: build/C/man3/getaddrinfo.3:166
2852 msgid ""
2853 "This field specifies the preferred socket type, for example B<SOCK_STREAM> "
2854 "or B<SOCK_DGRAM>.  Specifying 0 in this field indicates that socket "
2855 "addresses of any type can be returned by B<getaddrinfo>()."
2856 msgstr ""
2857 "このフィールドは推奨のソケット型 (例えば B<SOCK_STREAM> や B<SOCK_DGRAM>)  を"
2858 "指定する。 このフィールドに 0 を指定すると、任意のソケット型のソケットアドレ"
2859 "スを B<getaddrinfo>()  が返してよいことを意味する。"
2860
2861 #. type: TP
2862 #: build/C/man3/getaddrinfo.3:166
2863 #, no-wrap
2864 msgid "I<ai_protocol>"
2865 msgstr "I<ai_protocol>"
2866
2867 #. type: Plain text
2868 #: build/C/man3/getaddrinfo.3:172
2869 msgid ""
2870 "This field specifies the protocol for the returned socket addresses.  "
2871 "Specifying 0 in this field indicates that socket addresses with any protocol "
2872 "can be returned by B<getaddrinfo>()."
2873 msgstr ""
2874 "このフィールドは返されるソケットアドレスのプロトコルを指定する。 このフィール"
2875 "ドに 0 を指定すると、任意のプロトコルののソケットアドレスを B<getaddrinfo>"
2876 "()  が返してよいことを意味する。"
2877
2878 #. type: TP
2879 #: build/C/man3/getaddrinfo.3:172
2880 #, no-wrap
2881 msgid "I<ai_flags>"
2882 msgstr "I<ai_flags>"
2883
2884 #. type: Plain text
2885 #: build/C/man3/getaddrinfo.3:176
2886 msgid ""
2887 "This field specifies additional options, described below.  Multiple flags "
2888 "are specified by bitwise OR-ing them together."
2889 msgstr ""
2890 "このフィールドは、追加のオプション (下記) を指定する。 複数のフラグを指定する"
2891 "際には、それらのビット単位の OR をとって指定する。"
2892
2893 #. type: Plain text
2894 #: build/C/man3/getaddrinfo.3:180
2895 msgid ""
2896 "All the other fields in the structure pointed to by I<hints> must contain "
2897 "either 0 or a null pointer, as appropriate."
2898 msgstr "I<hints> が指し示す構造体の他のすべてのフィールドには 0 か NULL ポインタを適切に入れなければならない。"
2899
2900 #. type: Plain text
2901 #: build/C/man3/getaddrinfo.3:215
2902 msgid ""
2903 "Specifying I<hints> as NULL is equivalent to setting I<ai_socktype> and "
2904 "I<ai_protocol> to 0; I<ai_family> to B<AF_UNSPEC>; and I<ai_flags> to B<"
2905 "(AI_V4MAPPED\\ |\\ AI_ADDRCONFIG)>.  (POSIX specifies different defaults for "
2906 "I<ai_flags>; see NOTES.)  I<node> specifies either a numerical network "
2907 "address (for IPv4, numbers-and-dots notation as supported by B<inet_aton>"
2908 "(3); for IPv6, hexadecimal string format as supported by B<inet_pton>(3)), "
2909 "or a network hostname, whose network addresses are looked up and resolved.  "
2910 "If I<hints.ai_flags> contains the B<AI_NUMERICHOST> flag then I<node> must "
2911 "be a numerical network address.  The B<AI_NUMERICHOST> flag suppresses any "
2912 "potentially lengthy network host address lookups."
2913 msgstr "I<hints> に NULL を指定するのは、 I<ai_socktype> と I<ai_protocol> に 0 を、 I<ai_family> に B<AF_UNSPEC> を、 I<ai_flags> に B<(AI_V4MAPPED\\ |\\ AI_ADDRCONFIG)> を設定するのと等価である (POSIX では I<ai_flags> には別のデフォルト値が規定されている; 「備考」を参照)。 I<node> には、数値形式のネットワークアドレス (IPv4 の場合は B<inet_aton>(3)  でサポートされているドット区切りの数字による表記、 IPv6 の場合は B<inet_pton>(3)  でサポートされている 16 進数の文字列形式) もしくは ネットワークホスト名を指定する。 ネットワークホスト名を指定した場合には、そのネットワークアドレスが検索され、 名前解決が行なわれる。 I<hints.ai_flags> に B<AI_NUMERICHOST> フラグが含まれている場合は、 I<node> は数値形式のネットワークアドレスでなければならない。 B<AI_NUMERICHOST> フラグを使うと、時間の掛かる可能性のあるネットワークホストアドレスの検索は すべて抑制される。"
2914
2915 #. type: Plain text
2916 #: build/C/man3/getaddrinfo.3:240
2917 msgid ""
2918 "If the B<AI_PASSIVE> flag is specified in I<hints.ai_flags>, and I<node> is "
2919 "NULL, then the returned socket addresses will be suitable for B<bind>(2)ing "
2920 "a socket that will B<accept>(2)  connections.  The returned socket address "
2921 "will contain the \"wildcard address\" (B<INADDR_ANY> for IPv4 addresses, "
2922 "B<IN6ADDR_ANY_INIT> for IPv6 address).  The wildcard address is used by "
2923 "applications (typically servers)  that intend to accept connections on any "
2924 "of the hosts's network addresses.  If I<node> is not NULL, then the "
2925 "B<AI_PASSIVE> flag is ignored."
2926 msgstr ""
2927 "I<hints.ai_flags> に B<AI_PASSIVE> フラグが指定され、かつ I<node> が NULL の"
2928 "場合、 返されるソケットアドレスは コネクションを B<accept>(2)  するためのソ"
2929 "ケットを B<bind>(2)  するのに適したものとなる。 返されるソケットアドレスには"
2930 "「ワイルドカード・アドレス」 (IPv4 アドレスの場合は B<INADDR_ANY>、 IPv6 アド"
2931 "レスの場合は B<IN6ADDR_ANY_INIT>)  が入る。 ワイルドカード・アドレスは、任意"
2932 "のホストのネットワークアドレスで接続を 受け付けようとするアプリケーション (通"
2933 "常はサーバー) で用いられる。 I<node> が NULL でない場合、 B<AI_PASSIVE> フラ"
2934 "グは無視される。"
2935
2936 #. type: Plain text
2937 #: build/C/man3/getaddrinfo.3:260
2938 msgid ""
2939 "If the B<AI_PASSIVE> flag is not set in I<hints.ai_flags>, then the returned "
2940 "socket addresses will be suitable for use with B<connect>(2), B<sendto>(2), "
2941 "or B<sendmsg>(2).  If I<node> is NULL, then the network address will be set "
2942 "to the loopback interface address (B<INADDR_LOOPBACK> for IPv4 addresses, "
2943 "B<IN6ADDR_LOOPBACK_INIT> for IPv6 address); this is used by applications "
2944 "that intend to communicate with peers running on the same host."
2945 msgstr ""
2946 "I<hints.ai_flags> に B<AI_PASSIVE> フラグがセットされていない場合、 返される"
2947 "ソケットアドレスは B<connect>(2), B<sendto>(2), B<sendmsg>(2)  での使用に適し"
2948 "たものとなる。 I<node> が NULL の場合、ネットワークアドレスにはループバック・"
2949 "インターフェイスの アドレス (IPv4 アドレスの場合は B<INADDR_LOOPBACK> IPv6 ア"
2950 "ドレスの場合は B<IN6ADDR_LOOPBACK_INIT>)B<が設定される。> これは同じホスト上"
2951 "で動作している接続相手と通信するような アプリケーションで用いられる。"
2952
2953 #. type: Plain text
2954 #: build/C/man3/getaddrinfo.3:283
2955 msgid ""
2956 "I<service> sets the port in each returned address structure.  If this "
2957 "argument is a service name (see B<services>(5)), it is translated to the "
2958 "corresponding port number.  This argument can also be specified as a decimal "
2959 "number, which is simply converted to binary.  If I<service> is NULL, then "
2960 "the port number of the returned socket addresses will be left "
2961 "uninitialized.  If B<AI_NUMERICSERV> is specified in I<hints.ai_flags> and "
2962 "I<service> is not NULL, then I<service> must point to a string containing a "
2963 "numeric port number.  This flag is used to inhibit the invocation of a name "
2964 "resolution service in cases where it is known not to be required."
2965 msgstr ""
2966 "I<service> により、返される各アドレス構造体のポート番号が決まる。 この引き数"
2967 "がサービス名 (B<services>(5)  参照) の場合、対応するポート番号に翻訳される。 "
2968 "この引き数には 10 進数も指定することができ、 この場合にはバイナリへの変換だけ"
2969 "が行われる。 I<service> が NULL の場合、返されるソケットアドレスのポート番号"
2970 "は 初期化されないままとなる。 I<hints.ai_flags> に B<AI_NUMERICSERV> が指定さ"
2971 "れ、かつ I<service> が NULL でない場合、 I<service> は数値のポート番号を含む"
2972 "文字列を指し示さなければならない。 このフラグは、名前解決サービスが不要である"
2973 "ことが分かっている場合に、 サービスの起動を抑制するために用いられる。"
2974
2975 #. type: Plain text
2976 #: build/C/man3/getaddrinfo.3:289
2977 msgid "Either I<node> or I<service>, but not both, may be NULL."
2978 msgstr ""
2979 "I<node> と I<service> のどちらかは NULL にしてよいが、両方同時に NULL にして"
2980 "はならない。"
2981
2982 #. type: Plain text
2983 #: build/C/man3/getaddrinfo.3:305
2984 msgid ""
2985 "The B<getaddrinfo>()  function allocates and initializes a linked list of "
2986 "I<addrinfo> structures, one for each network address that matches I<node> "
2987 "and I<service>, subject to any restrictions imposed by I<hints>, and returns "
2988 "a pointer to the start of the list in I<res>.  The items in the linked list "
2989 "are linked by the I<ai_next> field."
2990 msgstr ""
2991 "B<getaddrinfo>()  関数は、 I<addrinfo> 構造体のメモリ確保を行い、 "
2992 "I<addrinfo> 構造体のリンクリストを初期化し、 I<res> にリストの先頭へのポイン"
2993 "タを入れて返す。 このとき、各構造体のネットワークアドレスは I<node> と "
2994 "I<service> に一致し、 I<hints> で課されたすべての制限を満たすものとなる。 リ"
2995 "ンクリストの要素は I<ai_next> フィールドにより連結される。"
2996
2997 #. type: Plain text
2998 #: build/C/man3/getaddrinfo.3:327
2999 msgid ""
3000 "There are several reasons why the linked list may have more than one "
3001 "I<addrinfo> structure, including: the network host is multihomed, accessible "
3002 "over multiple protocols (e.g., both B<AF_INET> and B<AF_INET6>); or the same "
3003 "service is available from multiple socket types (one B<SOCK_STREAM> address "
3004 "and another B<SOCK_DGRAM> address, for example).  Normally, the application "
3005 "should try using the addresses in the order in which they are returned.  The "
3006 "sorting function used within B<getaddrinfo>()  is defined in RFC\\ 3484; the "
3007 "order can be tweaked for a particular system by editing I</etc/gai.conf> "
3008 "(available since glibc 2.5)."
3009 msgstr ""
3010 "リンクリストの I<addrinfo> 構造体は複数個になることもあり、その理由はいくつか"
3011 "ある。 ネットワークホストがマルチホームである、 複数のプロトコルでアクセスで"
3012 "きる (例えば B<AF_INET> と B<AF_INET6> の両方) 、 複数のソケット種別で同じ"
3013 "サービスが利用できる (例えば、ひとつが B<SOCK_STREM> アドレスで、もうひとつ"
3014 "が B<SOCK_DGRAM> アドレスである)、がある。 通常は、アプリケーションは返された"
3015 "順序でアドレスを試すべきである。 B<getaddrinfo>()  の中で使用される並べ替え関"
3016 "数は RFC\\ 3484 で定義されている。 特殊なシステムでは、 I</etc/gai.conf> を編"
3017 "集することで、この順序を微調整することができる (I</etc/gai.conf> は glibc "
3018 "2.5 以降で利用できる)。"
3019
3020 #.  In glibc prior to 2.3.4, the ai_canonname of each addrinfo
3021 #.  structure was set pointing to the canonical name; that was
3022 #.  more than POSIX.1-2001 specified, or other implementations provided.
3023 #.  MTK, Aug 05
3024 #. type: Plain text
3025 #: build/C/man3/getaddrinfo.3:342
3026 msgid ""
3027 "If I<hints.ai_flags> includes the B<AI_CANONNAME> flag, then the "
3028 "I<ai_canonname> field of the first of the I<addrinfo> structures in the "
3029 "returned list is set to point to the official name of the host."
3030 msgstr ""
3031 "I<hints.ai_flags> に B<AI_CANONNAME> フラグが含まれている場合、返されるリスト"
3032 "の最初の I<addrinfo> 構造体の I<ai_canonname> フィールドはホストの公式な名前"
3033 "を指すように設定される。"
3034
3035 #. type: Plain text
3036 #: build/C/man3/getaddrinfo.3:346
3037 msgid ""
3038 "The remaining fields of each returned I<addrinfo> structure are initialized "
3039 "as follows:"
3040 msgstr ""
3041 "返される各々の I<addrinfo> 構造体の残りのフィールドは以下のように初期化され"
3042 "る。"
3043
3044 #. type: IP
3045 #: build/C/man3/getaddrinfo.3:346 build/C/man3/getaddrinfo.3:369
3046 #: build/C/man3/getaddrinfo_a.3:191 build/C/man3/getaddrinfo_a.3:195
3047 #: build/C/man3/getaddrinfo_a.3:197 build/C/man5/nsswitch.conf.5:144
3048 #: build/C/man5/nsswitch.conf.5:148 build/C/man7/unix.7:74
3049 #: build/C/man7/unix.7:91 build/C/man7/unix.7:111
3050 #, no-wrap
3051 msgid "*"
3052 msgstr "*"
3053
3054 #. type: Plain text
3055 #: build/C/man3/getaddrinfo.3:369
3056 msgid ""
3057 "The I<ai_family>, I<ai_socktype>, and I<ai_protocol> fields return the "
3058 "socket creation parameters (i.e., these fields have the same meaning as the "
3059 "corresponding arguments of B<socket>(2)).  For example, I<ai_family> might "
3060 "return B<AF_INET> or B<AF_INET6>; I<ai_socktype> might return B<SOCK_DGRAM> "
3061 "or B<SOCK_STREAM>; and I<ai_protocol> returns the protocol for the socket."
3062 msgstr ""
3063 "I<ai_family>, I<ai_socktype>, I<ai_protocol> フィールドはソケット生成パラメー"
3064 "タを返す (これらのフィールドの意味は B<socket>(2)  の同じ名前の引き数と同じで"
3065 "ある)。 例えば、 I<ai_family> は B<AF_INET> や B<AF_INET6> を返し、 "
3066 "I<ai_socktype> は B<SOCK_DGRAM> や B<SOCK_STREAM> を返し、 I<ai_protocol> は"
3067 "そのソケットのプロトコルを返す。"
3068
3069 #. type: Plain text
3070 #: build/C/man3/getaddrinfo.3:376
3071 msgid ""
3072 "A pointer to the socket address is placed in the I<ai_addr> field, and the "
3073 "length of the socket address, in bytes, is placed in the I<ai_addrlen> field."
3074 msgstr ""
3075 "I<ai_addr> フィールドにはソケットアドレスへのポインタが書き込まれ、 "
3076 "I<ai_addrlen> フィールドにはソケットアドレスの長さがバイト単位で書き込まれ"
3077 "る。"
3078
3079 #. type: Plain text
3080 #: build/C/man3/getaddrinfo.3:395
3081 #, fuzzy
3082 #| msgid ""
3083 #| "If I<hints.ai_flags> includes the B<AI_ADDRCONFIG> flag, then IPv4 "
3084 #| "addresses are returned in the list pointed to by I<res> only if the local "
3085 #| "system has at least one IPv4 address configured, and IPv6 addresses are "
3086 #| "returned only if the local system has at least one IPv6 address "
3087 #| "configured.  The loopback address is not considered for this case as "
3088 #| "valid as a configured address."
3089 msgid ""
3090 "If I<hints.ai_flags> includes the B<AI_ADDRCONFIG> flag, then IPv4 addresses "
3091 "are returned in the list pointed to by I<res> only if the local system has "
3092 "at least one IPv4 address configured, and IPv6 addresses are returned only "
3093 "if the local system has at least one IPv6 address configured.  The loopback "
3094 "address is not considered for this case as valid as a configured address.  "
3095 "This flag is useful on, for example, IPv4-only systems, to ensure that "
3096 "B<getaddrinfo>()  does not return IPv6 socket addresses that would always "
3097 "fail in B<connect>(2)  or B<bind>(2)."
3098 msgstr ""
3099 "I<hints.ai_flags> が B<AI_ADDRCONFIG> を含む場合、 I<res> が指すリスト\n"
3100 "には、ローカルシステムに最低一つの IPv4 アドレスが設定されている場合のみ\n"
3101 "IPv4 アドレスが返され、 ローカルシステムに最低一つの IPv6 アドレスが\n"
3102 "設定されている場合にのみ IPv6 アドレスが返される。なお、この場合には、\n"
3103 "ループバックアドレスは有効に設定されたアドレスとはみなされない。"
3104
3105 #. type: Plain text
3106 #: build/C/man3/getaddrinfo.3:420
3107 msgid ""
3108 "If I<hints.ai_flags> specifies the B<AI_V4MAPPED> flag, and I<hints."
3109 "ai_family> was specified as B<AF_INET6>, and no matching IPv6 addresses "
3110 "could be found, then return IPv4-mapped IPv6 addresses in the list pointed "
3111 "to by I<res>.  If both B<AI_V4MAPPED> and B<AI_ALL> are specified in I<hints."
3112 "ai_flags>, then return both IPv6 and IPv4-mapped IPv6 addresses in the list "
3113 "pointed to by I<res>.  B<AI_ALL> is ignored if B<AI_V4MAPPED> is not also "
3114 "specified."
3115 msgstr ""
3116 "I<hints.ai_flags> に B<AI_V4MAPPED> が指定されていて、 I<hints.ai_family> に "
3117 "B<AF_INET6> が指定され、 マッチする IPv6 アドレスが見つからなかった場合、 "
3118 "I<res> が指すリストには IPv4-mapped IPv6 アドレスが返される。 I<hints."
3119 "ai_flags> に B<AI_V4MAPPED> と B<AI_ALL> の両方が指定されている場合、 I<res> "
3120 "が指すリストには IPv6 アドレスと IPv4-mapped IPv6 アドレスの 両方が返され"
3121 "る。 B<AI_V4MAPPED> が指定されていない場合、 B<AI_ALL> は無視される。"
3122
3123 #. type: Plain text
3124 #: build/C/man3/getaddrinfo.3:426
3125 msgid ""
3126 "The B<freeaddrinfo>()  function frees the memory that was allocated for the "
3127 "dynamically allocated linked list I<res>."
3128 msgstr ""
3129 "B<freeaddrinfo>()  関数は、 リンクリスト I<res> に対して動的に割り当てられた"
3130 "メモリを解放する。"
3131
3132 #. type: SS
3133 #: build/C/man3/getaddrinfo.3:426
3134 #, no-wrap
3135 msgid "Extensions to getaddrinfo() for Internationalized Domain Names"
3136 msgstr "国際化ドメイン名のための getaddrinfo() の拡張"
3137
3138 #. type: Plain text
3139 #: build/C/man3/getaddrinfo.3:435
3140 msgid ""
3141 "Starting with glibc 2.3.4, B<getaddrinfo>()  has been extended to "
3142 "selectively allow the incoming and outgoing hostnames to be transparently "
3143 "converted to and from the Internationalized Domain Name (IDN) format (see "
3144 "RFC 3490, I<Internationalizing Domain Names in Applications (IDNA)>).  Four "
3145 "new flags are defined:"
3146 msgstr ""
3147 "glibc 2.3.4 から、 B<getaddrinfo>()  は入出力するホスト名を透過的に国際化ドメ"
3148 "イン名 (IDN) 形式 (RFC 3490 の I<Internationalizing Domain Names in "
3149 "Applications (IDNA)> を参照のこと) と変換することを選択的に認めるように拡張さ"
3150 "れている。 4 つの新しいフラグが定義されている:"
3151
3152 #. type: TP
3153 #: build/C/man3/getaddrinfo.3:435
3154 #, no-wrap
3155 msgid "B<AI_IDN>"
3156 msgstr "B<AI_IDN>"
3157
3158 #. type: Plain text
3159 #: build/C/man3/getaddrinfo.3:441
3160 msgid ""
3161 "If this flag is specified, then the node name given in I<node> is converted "
3162 "to IDN format if necessary.  The source encoding is that of the current "
3163 "locale."
3164 msgstr ""
3165 "このフラグが指定されると、 I<node> で与えられたノード名は必要があれば IDN 形"
3166 "式に変換される。 ソース符号化形式は現在のロケールのものである。"
3167
3168 #.  Implementation Detail:
3169 #.  To minimize effects on system performance the implementation might
3170 #.  want to check whether the input string contains any non-ASCII
3171 #.  characters.  If there are none the IDN step can be skipped completely.
3172 #.  On systems which allow not-ASCII safe encodings for a locale this
3173 #.  might be a problem.
3174 #. type: Plain text
3175 #: build/C/man3/getaddrinfo.3:453
3176 msgid ""
3177 "If the input name contains non-ASCII characters, then the IDN encoding is "
3178 "used.  Those parts of the node name (delimited by dots) that contain non-"
3179 "ASCII characters are encoded using ASCII Compatible Encoding (ACE)  before "
3180 "being passed to the name resolution functions."
3181 msgstr ""
3182 "入力名に非 ASCII 文字が含まれている場合、 IDN 符号化形式が使われる。 非 "
3183 "ASCII 文字が含まれている(ピリオドで区切られる)部分ノード名は、 名前解決機能に"
3184 "渡される前に ASCII 互換符号化形式 (ACE) を使って 符号化される。"
3185
3186 #. type: TP
3187 #: build/C/man3/getaddrinfo.3:453
3188 #, no-wrap
3189 msgid "B<AI_CANONIDN>"
3190 msgstr "B<AI_CANONIDN>"
3191
3192 #. type: Plain text
3193 #: build/C/man3/getaddrinfo.3:465
3194 msgid ""
3195 "After a successful name lookup, and if the B<AI_CANONNAME> flag was "
3196 "specified, B<getaddrinfo>()  will return the canonical name of the node "
3197 "corresponding to the I<addrinfo> structure value passed back.  The return "
3198 "value is an exact copy of the value returned by the name resolution function."
3199 msgstr ""
3200 "B<AI_CANONNAME> が指定されている場合、 B<getaddrinfo>()  は名前の検索に成功し"
3201 "た後、 返された I<addrinfo> 構造体に対応するノードの正規名を返す。 返り値は名"
3202 "前解決機能から返された値の正確なコピーである。"
3203
3204 #. Implementation Detail:
3205 #. If no component of the returned name starts with xn\-\- the IDN
3206 #. step can be skipped, therefore avoiding unnecessary slowdowns.
3207 #. type: Plain text
3208 #: build/C/man3/getaddrinfo.3:478
3209 msgid ""
3210 "If the name is encoded using ACE, then it will contain the I<xn--> prefix "
3211 "for one or more components of the name.  To convert these components into a "
3212 "readable form the B<AI_CANONIDN> flag can be passed in addition to "
3213 "B<AI_CANONNAME>.  The resulting string is encoded using the current locale's "
3214 "encoding."
3215 msgstr ""
3216 "B<AI_CANONIDN> 名前が ACE で符号化されている場合、一つまたは複数の名前の構成"
3217 "要素の先頭に I<xn--> を含んでいる。 これらの構成要素を読み込み可能な形に変換"
3218 "するために、 B<AI_CANONNAME> と共に B<AI_CANONIDN> フラグを渡すことも出来"
3219 "る。 返される文字列は現在のロケールの符号化形式で符号化されている。"
3220
3221 #. type: TP
3222 #: build/C/man3/getaddrinfo.3:478
3223 #, no-wrap
3224 msgid "B<AI_IDN_ALLOW_UNASSIGNED>, B<AI_IDN_USE_STD3_ASCII_RULES>"
3225 msgstr "B<AI_IDN_ALLOW_UNASSIGNED>, B<AI_IDN_USE_STD3_ASCII_RULES>"
3226
3227 #. type: Plain text
3228 #: build/C/man3/getaddrinfo.3:485 build/C/man3/getnameinfo.3:139
3229 msgid ""
3230 "Setting these flags will enable the IDNA_ALLOW_UNASSIGNED (allow unassigned "
3231 "Unicode code points) and IDNA_USE_STD3_ASCII_RULES (check output to make "
3232 "sure it is a STD3 conforming hostname)  flags respectively to be used in the "
3233 "IDNA handling."
3234 msgstr ""
3235 "これらのフラグをセットすると、IDNA 処理で使用されるフラグ "
3236 "IDNA_ALLOW_UNASSIGNED (未割り当ての Unicode のコードポイントを許容) と "
3237 "IDNA_USE_STD3_ASCII_RULES (出力が STD3 準拠のホスト名かをチェックする)  がそ"
3238 "れぞれ有効になる。"
3239
3240 #. type: SH
3241 #: build/C/man3/getaddrinfo.3:485 build/C/man3/getaddrinfo_a.3:242
3242 #: build/C/man3/gethostbyname.3:280 build/C/man3/getipnodebyname.3:186
3243 #: build/C/man3/getnameinfo.3:139 build/C/man3/getnetent.3:130
3244 #: build/C/man3/getnetent_r.3:118 build/C/man2/getpeername.2:68
3245 #: build/C/man3/getprotoent.3:123 build/C/man3/getprotoent_r.3:108
3246 #: build/C/man3/getservent.3:142 build/C/man3/getservent_r.3:107
3247 #: build/C/man3/inet_ntop.3:83 build/C/man3/inet_pton.3:116
3248 #: build/C/man3/rcmd.3:239 build/C/man3/resolver.3:245
3249 #: build/C/man3/setnetgrent.3:86 build/C/man2/shutdown.2:69
3250 #, no-wrap
3251 msgid "RETURN VALUE"
3252 msgstr "返り値"
3253
3254 #.  FIXME glibc defines the following additional errors, some which
3255 #.  can probably be returned by getaddrinfo(); they need to
3256 #.  be documented.
3257 #.  #ifdef __USE_GNU
3258 #.  #define EAI_INPROGRESS  -100  /* Processing request in progress.  */
3259 #.  #define EAI_CANCELED    -101  /* Request canceled.  */
3260 #.  #define EAI_NOTCANCELED -102  /* Request not canceled.  */
3261 #.  #define EAI_ALLDONE     -103  /* All requests done.  */
3262 #.  #define EAI_INTR        -104  /* Interrupted by a signal.  */
3263 #.  #define EAI_IDN_ENCODE  -105  /* IDN encoding failed.  */
3264 #.  #endif
3265 #. type: Plain text
3266 #: build/C/man3/getaddrinfo.3:499
3267 msgid ""
3268 "B<getaddrinfo>()  returns 0 if it succeeds, or one of the following nonzero "
3269 "error codes:"
3270 msgstr ""
3271 "B<getaddrinfo>()  は成功すると 0 を返し、失敗すると以下の非 0 のエラーコード"
3272 "のいずれかを返す。"
3273
3274 #. type: TP
3275 #: build/C/man3/getaddrinfo.3:499
3276 #, no-wrap
3277 msgid "B<EAI_ADDRFAMILY>"
3278 msgstr "B<EAI_ADDRFAMILY>"
3279
3280 #.  Not in SUSv3
3281 #. type: Plain text
3282 #: build/C/man3/getaddrinfo.3:504
3283 msgid ""
3284 "The specified network host does not have any network addresses in the "
3285 "requested address family."
3286 msgstr ""
3287 "指定されたネットワークホストには、 要求されたアドレスファミリーのネットワーク"
3288 "アドレスがない。"
3289
3290 #. type: TP
3291 #: build/C/man3/getaddrinfo.3:504 build/C/man3/getaddrinfo_a.3:247
3292 #: build/C/man3/getaddrinfo_a.3:264 build/C/man3/getnameinfo.3:155
3293 #, no-wrap
3294 msgid "B<EAI_AGAIN>"
3295 msgstr "B<EAI_AGAIN>"
3296
3297 #. type: Plain text
3298 #: build/C/man3/getaddrinfo.3:508
3299 msgid ""
3300 "The name server returned a temporary failure indication.  Try again later."
3301 msgstr ""
3302 "ネームサーバーから一時的な失敗 (temporary failure)  を意味する返事が返され"
3303 "た。後でもう一度試してみよ。"
3304
3305 #. type: TP
3306 #: build/C/man3/getaddrinfo.3:508 build/C/man3/getnameinfo.3:159
3307 #, no-wrap
3308 msgid "B<EAI_BADFLAGS>"
3309 msgstr "B<EAI_BADFLAGS>"
3310
3311 #. type: Plain text
3312 #: build/C/man3/getaddrinfo.3:518
3313 msgid ""
3314 "I<hints.ai_flags> contains invalid flags; or, I<hints.ai_flags> included "
3315 "B<AI_CANONNAME> and I<name> was NULL."
3316 msgstr ""
3317 "I<hints.ai_flags> のフラグに不正なフラグが含まれている。または、 I<hints."
3318 "ai_flags> に B<AI_CANONNAME> が含まれていて、かつ I<name> が NULL であった。"
3319
3320 #. type: TP
3321 #: build/C/man3/getaddrinfo.3:518 build/C/man3/getnameinfo.3:164
3322 #, no-wrap
3323 msgid "B<EAI_FAIL>"
3324 msgstr "B<EAI_FAIL>"
3325
3326 #. type: Plain text
3327 #: build/C/man3/getaddrinfo.3:521
3328 msgid "The name server returned a permanent failure indication."
3329 msgstr ""
3330 "ネームサーバーから恒久的な失敗 (permanent failure)  を意味する返事が返され"
3331 "た。"
3332
3333 #. type: TP
3334 #: build/C/man3/getaddrinfo.3:521 build/C/man3/getnameinfo.3:167
3335 #, no-wrap
3336 msgid "B<EAI_FAMILY>"
3337 msgstr "B<EAI_FAMILY>"
3338
3339 #. type: Plain text
3340 #: build/C/man3/getaddrinfo.3:524
3341 msgid "The requested address family is not supported."
3342 msgstr "要求されたアドレスファミリーがサポートされていない。"
3343
3344 #. type: TP
3345 #: build/C/man3/getaddrinfo.3:524 build/C/man3/getaddrinfo_a.3:252
3346 #: build/C/man3/getnameinfo.3:171
3347 #, no-wrap
3348 msgid "B<EAI_MEMORY>"
3349 msgstr "B<EAI_MEMORY>"
3350
3351 #. type: Plain text
3352 #: build/C/man3/getaddrinfo.3:527 build/C/man3/getaddrinfo_a.3:255
3353 #: build/C/man3/getnameinfo.3:174 build/C/man7/unix.7:361
3354 msgid "Out of memory."
3355 msgstr "メモリが足りない。"
3356
3357 #. type: TP
3358 #: build/C/man3/getaddrinfo.3:527
3359 #, no-wrap
3360 msgid "B<EAI_NODATA>"
3361 msgstr "B<EAI_NODATA>"
3362
3363 #.  Not in SUSv3
3364 #. type: Plain text
3365 #: build/C/man3/getaddrinfo.3:532
3366 msgid ""
3367 "The specified network host exists, but does not have any network addresses "
3368 "defined."
3369 msgstr ""
3370 "指定されたネットワークホストは存在するが、 ネットワークアドレスがひとつも定義"
3371 "されていない。"
3372
3373 #. type: TP
3374 #: build/C/man3/getaddrinfo.3:532 build/C/man3/getnameinfo.3:174
3375 #, no-wrap
3376 msgid "B<EAI_NONAME>"
3377 msgstr "B<EAI_NONAME>"
3378
3379 #. type: Plain text
3380 #: build/C/man3/getaddrinfo.3:549
3381 msgid ""
3382 "The I<node> or I<service> is not known; or both I<node> and I<service> are "
3383 "NULL; or B<AI_NUMERICSERV> was specified in I<hints.ai_flags> and I<service> "
3384 "was not a numeric port-number string."
3385 msgstr ""
3386 "I<node> と I<service> のどちらかが不明、または I<node> と I<service> の両方"
3387 "が NULL だった場合、または B<AI_NUMERICSERV> が I<hints.ai_flags> に指定され"
3388 "ていて、 I<hints.ai_flags> と I<service> が数値のポート番号の文字列でない。"
3389
3390 #. type: TP
3391 #: build/C/man3/getaddrinfo.3:549
3392 #, no-wrap
3393 msgid "B<EAI_SERVICE>"
3394 msgstr "B<EAI_SERVICE>"
3395
3396 #. type: Plain text
3397 #: build/C/man3/getaddrinfo.3:570
3398 msgid ""
3399 "The requested service is not available for the requested socket type.  It "
3400 "may be available through another socket type.  For example, this error could "
3401 "occur if I<service> was \"shell\" (a service available only on stream "
3402 "sockets), and either I<hints.ai_protocol> was B<IPPROTO_UDP>, or I<hints."
3403 "ai_socktype> was B<SOCK_DGRAM>; or the error could occur if I<service> was "
3404 "not NULL, and I<hints.ai_socktype> was B<SOCK_RAW> (a socket type that does "
3405 "not support the concept of services)."
3406 msgstr ""
3407 "要求されたサービスは、要求されたソケットタイプでは利用できない。 他のソケット"
3408 "タイプでなら利用可能かもしれない。 このエラーが発生する例としては、 "
3409 "I<service> が \"shell\" (ストリーム・ソケットでのみ利用できるサービス) で、 "
3410 "I<hints.ai_protocol> に B<IPPROTO_UDP> が指定されたり、 I<hints.ai_socktype> "
3411 "に B<SOCK_DGRAM> が指定されたりした場合がある。 また、 I<service> が NULL 以"
3412 "外で、 I<hints.ai_socktype> に B<SOCK_RAW> (サービスの考え方をサポートしてい"
3413 "ないソケット種別)  が指定された場合にも、このエラーが発生する。"
3414
3415 #. type: TP
3416 #: build/C/man3/getaddrinfo.3:570
3417 #, no-wrap
3418 msgid "B<EAI_SOCKTYPE>"
3419 msgstr "B<EAI_SOCKTYPE>"
3420
3421 #. type: Plain text
3422 #: build/C/man3/getaddrinfo.3:582
3423 msgid ""
3424 "The requested socket type is not supported.  This could occur, for example, "
3425 "if I<hints.ai_socktype> and I<hints.ai_protocol> are inconsistent (e.g., "
3426 "B<SOCK_DGRAM> and B<IPPROTO_TCP>, respectively)."
3427 msgstr ""
3428 "要求されたソケットタイプがサポートされていない。 このエラーが発生する例として"
3429 "は、 I<hints.ai_socktype> と I<hints.ai_protocol> が矛盾している場合 (例えば "
3430 "I<hints.ai_socktype> が B<SOCK_DGRAM> で I<hints.ai_protocol> が "
3431 "B<IPPROTO_TCP>)  がある。"
3432
3433 #. type: TP
3434 #: build/C/man3/getaddrinfo.3:582 build/C/man3/getaddrinfo_a.3:255
3435 #: build/C/man3/getnameinfo.3:187
3436 #, no-wrap
3437 msgid "B<EAI_SYSTEM>"
3438 msgstr "B<EAI_SYSTEM>"
3439
3440 #. type: Plain text
3441 #: build/C/man3/getaddrinfo.3:587
3442 msgid "Other system error, check I<errno> for details."
3443 msgstr "その他のシステムエラー。詳しくは I<errno> を調べること。"
3444
3445 #. type: Plain text
3446 #: build/C/man3/getaddrinfo.3:592
3447 msgid ""
3448 "The B<gai_strerror>()  function translates these error codes to a human "
3449 "readable string, suitable for error reporting."
3450 msgstr ""
3451 "B<gai_strerror>()  関数を用いると、これらのエラーコードを人間に可読な文字列に"
3452 "変換できるので、 エラー報告に適するだろう。"
3453
3454 #. type: Plain text
3455 #: build/C/man3/getaddrinfo.3:599
3456 msgid ""
3457 "POSIX.1-2001.  The B<getaddrinfo>()  function is documented in RFC\\ 2553."
3458 msgstr "POSIX.1-2001.  B<getaddrinfo>()  関数は RFC 2553 に記載されている。"
3459
3460 #. type: Plain text
3461 #: build/C/man3/getaddrinfo.3:604
3462 msgid ""
3463 "B<getaddrinfo>()  supports the I<address>B<%>I<scope-id> notation for "
3464 "specifying the IPv6 scope-ID."
3465 msgstr ""
3466 "B<getaddrinfo>()  は、IPv6 scope-ID を指定するために I<address>B<%>I<scope-"
3467 "id> 記法をサポートしている。"
3468
3469 #. type: Plain text
3470 #: build/C/man3/getaddrinfo.3:612
3471 msgid ""
3472 "B<AI_ADDRCONFIG>, B<AI_ALL>, and B<AI_V4MAPPED> are available since glibc "
3473 "2.3.3.  B<AI_NUMERICSERV> is available since glibc 2.3.4."
3474 msgstr ""
3475 "B<AI_ADDRCONFIG>, B<AI_ALL>, B<AI_V4MAPPED> は glibc 2.3.3 以降で利用可能であ"
3476 "る。 B<AI_NUMERICSERV> は glibc 2.3.4 以降で利用可能である。"
3477
3478 #. type: Plain text
3479 #: build/C/man3/getaddrinfo.3:622
3480 msgid ""
3481 "According to POSIX.1-2001, specifying I<hints> as NULL should cause "
3482 "I<ai_flags> to be assumed as 0.  The GNU C library instead assumes a value "
3483 "of B<(AI_V4MAPPED\\ |\\ AI_ADDRCONFIG)> for this case, since this value is "
3484 "considered an improvement on the specification."
3485 msgstr ""
3486 "POSIX.1-2001 によると、 I<hints> に NULL が指定された場合、 I<ai_flags> を 0 "
3487 "とみなすべきとされている。 GNU C ライブラリでは、この場合に、代わりに "
3488 "I<ai_flags> を B<(AI_V4MAPPED\\ |\\ AI_ADDRCONFIG)> とみなすようになってい"
3489 "る。 この値の方が標準規格の改善になると考えられているからである。"
3490
3491 #.  getnameinfo.3 refers to this example
3492 #.  socket.2 refers to this example
3493 #.  bind.2 refers to this example
3494 #.  connect.2 refers to this example
3495 #.  recvfrom.2 refers to this example
3496 #.  sendto.2 refers to this example
3497 #. type: Plain text
3498 #: build/C/man3/getaddrinfo.3:636
3499 msgid ""
3500 "The following programs demonstrate the use of B<getaddrinfo>(), "
3501 "B<gai_strerror>(), B<freeaddrinfo>(), and B<getnameinfo>(3).  The programs "
3502 "are an echo server and client for UDP datagrams."
3503 msgstr ""
3504 "以下のプログラムは、 B<getaddrinfo>(), B<gai_strerror>(), B<freeaddrinfo>(), "
3505 "B<getnameinfo>(3)  の使い方を示したものである。 プログラムは UDP データグラム"
3506 "の echo サーバとクライアントである。"
3507
3508 #. type: SS
3509 #: build/C/man3/getaddrinfo.3:636
3510 #, no-wrap
3511 msgid "Server program"
3512 msgstr "サーバのプログラム"
3513
3514 #. type: Plain text
3515 #: build/C/man3/getaddrinfo.3:646
3516 #, no-wrap
3517 msgid ""
3518 "#include E<lt>sys/types.hE<gt>\n"
3519 "#include E<lt>stdio.hE<gt>\n"
3520 "#include E<lt>stdlib.hE<gt>\n"
3521 "#include E<lt>unistd.hE<gt>\n"
3522 "#include E<lt>string.hE<gt>\n"
3523 "#include E<lt>sys/socket.hE<gt>\n"
3524 "#include E<lt>netdb.hE<gt>\n"
3525 msgstr ""
3526 "#include E<lt>sys/types.hE<gt>\n"
3527 "#include E<lt>stdio.hE<gt>\n"
3528 "#include E<lt>stdlib.hE<gt>  \n"
3529 "#include E<lt>unistd.hE<gt>\n"
3530 "#include E<lt>string.hE<gt>\n"
3531 "#include E<lt>sys/socket.hE<gt>\n"
3532 "#include E<lt>netdb.hE<gt>\n"
3533
3534 #. type: Plain text
3535 #: build/C/man3/getaddrinfo.3:648 build/C/man3/getaddrinfo.3:743
3536 #, no-wrap
3537 msgid "#define BUF_SIZE 500\n"
3538 msgstr "#define BUF_SIZE 500\n"
3539
3540 #. type: Plain text
3541 #: build/C/man3/getaddrinfo.3:659
3542 #, no-wrap
3543 msgid ""
3544 "int\n"
3545 "main(int argc, char *argv[])\n"
3546 "{\n"
3547 "    struct addrinfo hints;\n"
3548 "    struct addrinfo *result, *rp;\n"
3549 "    int sfd, s;\n"
3550 "    struct sockaddr_storage peer_addr;\n"
3551 "    socklen_t peer_addr_len;\n"
3552 "    ssize_t nread;\n"
3553 "    char buf[BUF_SIZE];\n"
3554 msgstr ""
3555 "int\n"
3556 "main(int argc, char *argv[])\n"
3557 "{\n"
3558 "    struct addrinfo hints;\n"
3559 "    struct addrinfo *result, *rp;\n"
3560 "    int sfd, s;\n"
3561 "    struct sockaddr_storage peer_addr;\n"
3562 "    socklen_t peer_addr_len;\n"
3563 "    ssize_t nread;\n"
3564 "    char buf[BUF_SIZE];\n"
3565
3566 #. type: Plain text
3567 #: build/C/man3/getaddrinfo.3:664
3568 #, no-wrap
3569 msgid ""
3570 "    if (argc != 2) {\n"
3571 "        fprintf(stderr, \"Usage: %s port\\en\", argv[0]);\n"
3572 "        exit(EXIT_FAILURE);\n"
3573 "    }\n"
3574 msgstr ""
3575 "    if (argc != 2) {\n"
3576 "        fprintf(stderr, \"Usage: %s port\\en\", argv[0]);\n"
3577 "        exit(EXIT_FAILURE);\n"
3578 "    }\n"
3579
3580 #. type: Plain text
3581 #: build/C/man3/getaddrinfo.3:673
3582 #, no-wrap
3583 msgid ""
3584 "    memset(&hints, 0, sizeof(struct addrinfo));\n"
3585 "    hints.ai_family = AF_UNSPEC;    /* Allow IPv4 or IPv6 */\n"
3586 "    hints.ai_socktype = SOCK_DGRAM; /* Datagram socket */\n"
3587 "    hints.ai_flags = AI_PASSIVE;    /* For wildcard IP address */\n"
3588 "    hints.ai_protocol = 0;          /* Any protocol */\n"
3589 "    hints.ai_canonname = NULL;\n"
3590 "    hints.ai_addr = NULL;\n"
3591 "    hints.ai_next = NULL;\n"
3592 msgstr ""
3593 "    memset(&hints, 0, sizeof(struct addrinfo));\n"
3594 "    hints.ai_family = AF_UNSPEC;    /* Allow IPv4 or IPv6 */\n"
3595 "    hints.ai_socktype = SOCK_DGRAM; /* Datagram socket */\n"
3596 "    hints.ai_flags = AI_PASSIVE;    /* For wildcard IP address */\n"
3597 "    hints.ai_protocol = 0;          /* Any protocol */\n"
3598 "    hints.ai_canonname = NULL;\n"
3599 "    hints.ai_addr = NULL;\n"
3600 "    hints.ai_next = NULL;\n"
3601
3602 #. type: Plain text
3603 #: build/C/man3/getaddrinfo.3:679
3604 #, no-wrap
3605 msgid ""
3606 "    s = getaddrinfo(NULL, argv[1], &hints, &result);\n"
3607 "    if (s != 0) {\n"
3608 "        fprintf(stderr, \"getaddrinfo: %s\\en\", gai_strerror(s));\n"
3609 "        exit(EXIT_FAILURE);\n"
3610 "    }\n"
3611 msgstr ""
3612 "    s = getaddrinfo(NULL, argv[1], &hints, &result);\n"
3613 "    if (s != 0) {\n"
3614 "        fprintf(stderr, \"getaddrinfo: %s\\en\", gai_strerror(s));\n"
3615 "        exit(EXIT_FAILURE);\n"
3616 "    }\n"
3617
3618 #. type: Plain text
3619 #: build/C/man3/getaddrinfo.3:684
3620 #, no-wrap
3621 msgid ""
3622 "    /* getaddrinfo() returns a list of address structures.\n"
3623 "       Try each address until we successfully bind(2).\n"
3624 "       If socket(2) (or bind(2)) fails, we (close the socket\n"
3625 "       and) try the next address. */\n"
3626 msgstr ""
3627 "    /* getaddrinfo() returns a list of address structures.\n"
3628 "       Try each address until we successfully bind(2).\n"
3629 "       If socket(2) (or bind(2)) fails, we (close the socket\n"
3630 "       and) try the next address. */\n"
3631
3632 #. type: Plain text
3633 #: build/C/man3/getaddrinfo.3:690
3634 #, no-wrap
3635 msgid ""
3636 "    for (rp = result; rp != NULL; rp = rp-E<gt>ai_next) {\n"
3637 "        sfd = socket(rp-E<gt>ai_family, rp-E<gt>ai_socktype,\n"
3638 "                rp-E<gt>ai_protocol);\n"
3639 "        if (sfd == -1)\n"
3640 "            continue;\n"
3641 msgstr ""
3642 "    for (rp = result; rp != NULL; rp = rp-E<gt>ai_next) {\n"
3643 "        sfd = socket(rp-E<gt>ai_family, rp-E<gt>ai_socktype, \n"
3644 "                rp-E<gt>ai_protocol);\n"
3645 "        if (sfd == -1)\n"
3646 "            continue;\n"
3647
3648 #. type: Plain text
3649 #: build/C/man3/getaddrinfo.3:693
3650 #, no-wrap
3651 msgid ""
3652 "        if (bind(sfd, rp-E<gt>ai_addr, rp-E<gt>ai_addrlen) == 0)\n"
3653 "            break;                  /* Success */\n"
3654 msgstr ""
3655 "        if (bind(sfd, rp-E<gt>ai_addr, rp-E<gt>ai_addrlen) == 0)\n"
3656 "            break;                  /* Success */\n"
3657
3658 #. type: Plain text
3659 #: build/C/man3/getaddrinfo.3:696 build/C/man3/getaddrinfo.3:789
3660 #, no-wrap
3661 msgid ""
3662 "        close(sfd);\n"
3663 "    }\n"
3664 msgstr ""
3665 "        close(sfd);\n"
3666 "    }\n"
3667
3668 #. type: Plain text
3669 #: build/C/man3/getaddrinfo.3:701
3670 #, no-wrap
3671 msgid ""
3672 "    if (rp == NULL) {               /* No address succeeded */\n"
3673 "        fprintf(stderr, \"Could not bind\\en\");\n"
3674 "        exit(EXIT_FAILURE);\n"
3675 "    }\n"
3676 msgstr ""
3677 "    if (rp == NULL) {               /* No address succeeded */\n"
3678 "        fprintf(stderr, \"Could not bind\\en\");\n"
3679 "        exit(EXIT_FAILURE);\n"
3680 "    }\n"
3681
3682 #. type: Plain text
3683 #: build/C/man3/getaddrinfo.3:703 build/C/man3/getaddrinfo.3:796
3684 #, no-wrap
3685 msgid "    freeaddrinfo(result);           /* No longer needed */\n"
3686 msgstr "    freeaddrinfo(result);           /* No longer needed */\n"
3687
3688 #. type: Plain text
3689 #: build/C/man3/getaddrinfo.3:705
3690 #, no-wrap
3691 msgid "    /* Read datagrams and echo them back to sender */\n"
3692 msgstr "    /* Read datagrams and echo them back to sender */\n"
3693
3694 #. type: Plain text
3695 #: build/C/man3/getaddrinfo.3:712
3696 #, no-wrap
3697 msgid ""
3698 "    for (;;) {\n"
3699 "        peer_addr_len = sizeof(struct sockaddr_storage);\n"
3700 "        nread = recvfrom(sfd, buf, BUF_SIZE, 0,\n"
3701 "                (struct sockaddr *) &peer_addr, &peer_addr_len);\n"
3702 "        if (nread == -1)\n"
3703 "            continue;               /* Ignore failed request */\n"
3704 msgstr ""
3705 "    for (;;) {\n"
3706 "        peer_addr_len = sizeof(struct sockaddr_storage);\n"
3707 "        nread = recvfrom(sfd, buf, BUF_SIZE, 0,\n"
3708 "                (struct sockaddr *) &peer_addr, &peer_addr_len);\n"
3709 "        if (nread == -1)\n"
3710 "            continue;               /* Ignore failed request */\n"
3711
3712 #. type: Plain text
3713 #: build/C/man3/getaddrinfo.3:714
3714 #, no-wrap
3715 msgid "        char host[NI_MAXHOST], service[NI_MAXSERV];\n"
3716 msgstr "        char host[NI_MAXHOST], service[NI_MAXSERV];\n"
3717
3718 #. type: Plain text
3719 #: build/C/man3/getaddrinfo.3:723
3720 #, no-wrap
3721 msgid ""
3722 "        s = getnameinfo((struct sockaddr *) &peer_addr,\n"
3723 "                        peer_addr_len, host, NI_MAXHOST,\n"
3724 "                        service, NI_MAXSERV, NI_NUMERICSERV);\n"
3725 "       if (s == 0)\n"
3726 "            printf(\"Received %ld bytes from %s:%s\\en\",\n"
3727 "                    (long) nread, host, service);\n"
3728 "        else\n"
3729 "            fprintf(stderr, \"getnameinfo: %s\\en\", gai_strerror(s));\n"
3730 msgstr ""
3731 "        s = getnameinfo((struct sockaddr *) &peer_addr,\n"
3732 "                        peer_addr_len, host, NI_MAXHOST,\n"
3733 "                        service, NI_MAXSERV, NI_NUMERICSERV);\n"
3734 "       if (s == 0)\n"
3735 "            printf(\"Received %ld bytes from %s:%s\\en\",\n"
3736 "                    (long) nread, host, service);\n"
3737 "        else\n"
3738 "            fprintf(stderr, \"getnameinfo: %s\\en\", gai_strerror(s));\n"
3739
3740 #. type: Plain text
3741 #: build/C/man3/getaddrinfo.3:730
3742 #, no-wrap
3743 msgid ""
3744 "        if (sendto(sfd, buf, nread, 0,\n"
3745 "                    (struct sockaddr *) &peer_addr,\n"
3746 "                    peer_addr_len) != nread)\n"
3747 "            fprintf(stderr, \"Error sending response\\en\");\n"
3748 "    }\n"
3749 "}\n"
3750 msgstr ""
3751 "        if (sendto(sfd, buf, nread, 0,\n"
3752 "                    (struct sockaddr *) &peer_addr,\n"
3753 "                    peer_addr_len) != nread)\n"
3754 "            fprintf(stderr, \"Error sending response\\en\");\n"
3755 "    }\n"
3756 "}\n"
3757
3758 #. type: SS
3759 #: build/C/man3/getaddrinfo.3:731
3760 #, no-wrap
3761 msgid "Client program"
3762 msgstr "クライアントのプログラム"
3763
3764 #. type: Plain text
3765 #: build/C/man3/getaddrinfo.3:741
3766 #, no-wrap
3767 msgid ""
3768 "#include E<lt>sys/types.hE<gt>\n"
3769 "#include E<lt>sys/socket.hE<gt>\n"
3770 "#include E<lt>netdb.hE<gt>\n"
3771 "#include E<lt>stdio.hE<gt>\n"
3772 "#include E<lt>stdlib.hE<gt>\n"
3773 "#include E<lt>unistd.hE<gt>\n"
3774 "#include E<lt>string.hE<gt>\n"
3775 msgstr ""
3776 "#include E<lt>sys/types.hE<gt>\n"
3777 "#include E<lt>sys/socket.hE<gt>\n"
3778 "#include E<lt>netdb.hE<gt>\n"
3779 "#include E<lt>stdio.hE<gt>\n"
3780 "#include E<lt>stdlib.hE<gt>\n"
3781 "#include E<lt>unistd.hE<gt>\n"
3782 "#include E<lt>string.hE<gt>\n"
3783
3784 #. type: Plain text
3785 #: build/C/man3/getaddrinfo.3:753
3786 #, no-wrap
3787 msgid ""
3788 "int\n"
3789 "main(int argc, char *argv[])\n"
3790 "{\n"
3791 "    struct addrinfo hints;\n"
3792 "    struct addrinfo *result, *rp;\n"
3793 "    int sfd, s, j;\n"
3794 "    size_t len;\n"
3795 "    ssize_t nread;\n"
3796 "    char buf[BUF_SIZE];\n"
3797 msgstr ""
3798 "int\n"
3799 "main(int argc, char *argv[])\n"
3800 "{\n"
3801 "    struct addrinfo hints;\n"
3802 "    struct addrinfo *result, *rp;\n"
3803 "    int sfd, s, j;\n"
3804 "    size_t len;\n"
3805 "    ssize_t nread;\n"
3806 "    char buf[BUF_SIZE];\n"
3807
3808 #. type: Plain text
3809 #: build/C/man3/getaddrinfo.3:758
3810 #, no-wrap
3811 msgid ""
3812 "    if (argc E<lt> 3) {\n"
3813 "        fprintf(stderr, \"Usage: %s host port msg...\\en\", argv[0]);\n"
3814 "        exit(EXIT_FAILURE);\n"
3815 "    }\n"
3816 msgstr ""
3817 "    if (argc E<lt> 3) {\n"
3818 "        fprintf(stderr, \"Usage: %s host port msg...\\en\", argv[0]);\n"
3819 "        exit(EXIT_FAILURE);\n"
3820 "    }\n"
3821
3822 #. type: Plain text
3823 #: build/C/man3/getaddrinfo.3:760
3824 #, no-wrap
3825 msgid "    /* Obtain address(es) matching host/port */\n"
3826 msgstr "    /* Obtain address(es) matching host/port */\n"
3827
3828 #. type: Plain text
3829 #: build/C/man3/getaddrinfo.3:766
3830 #, no-wrap
3831 msgid ""
3832 "    memset(&hints, 0, sizeof(struct addrinfo));\n"
3833 "    hints.ai_family = AF_UNSPEC;    /* Allow IPv4 or IPv6 */\n"
3834 "    hints.ai_socktype = SOCK_DGRAM; /* Datagram socket */\n"
3835 "    hints.ai_flags = 0;\n"
3836 "    hints.ai_protocol = 0;          /* Any protocol */\n"
3837 msgstr ""
3838 "    memset(&hints, 0, sizeof(struct addrinfo));\n"
3839 "    hints.ai_family = AF_UNSPEC;    /* Allow IPv4 or IPv6 */\n"
3840 "    hints.ai_socktype = SOCK_DGRAM; /* Datagram socket */\n"
3841 "    hints.ai_flags = 0;\n"
3842 "    hints.ai_protocol = 0;          /* Any protocol */\n"
3843
3844 #. type: Plain text
3845 #: build/C/man3/getaddrinfo.3:772
3846 #, no-wrap
3847 msgid ""
3848 "    s = getaddrinfo(argv[1], argv[2], &hints, &result);\n"
3849 "    if (s != 0) {\n"
3850 "        fprintf(stderr, \"getaddrinfo: %s\\en\", gai_strerror(s));\n"
3851 "        exit(EXIT_FAILURE);\n"
3852 "    }\n"
3853 msgstr ""
3854 "    s = getaddrinfo(argv[1], argv[2], &hints, &result);\n"
3855 "    if (s != 0) {\n"
3856 "        fprintf(stderr, \"getaddrinfo: %s\\en\", gai_strerror(s));\n"
3857 "        exit(EXIT_FAILURE);\n"
3858 "    }\n"
3859
3860 #. type: Plain text
3861 #: build/C/man3/getaddrinfo.3:777
3862 #, no-wrap
3863 msgid ""
3864 "    /* getaddrinfo() returns a list of address structures.\n"
3865 "       Try each address until we successfully connect(2).\n"
3866 "       If socket(2) (or connect(2)) fails, we (close the socket\n"
3867 "       and) try the next address. */\n"
3868 msgstr ""
3869 "    /* getaddrinfo() returns a list of address structures.\n"
3870 "       Try each address until we successfully connect(2).\n"
3871 "       If socket(2) (or connect(2)) fails, we (close the socket\n"
3872 "       and) try the next address. */\n"
3873
3874 #. type: Plain text
3875 #: build/C/man3/getaddrinfo.3:783
3876 #, no-wrap
3877 msgid ""
3878 "    for (rp = result; rp != NULL; rp = rp-E<gt>ai_next) {\n"
3879 "        sfd = socket(rp-E<gt>ai_family, rp-E<gt>ai_socktype,\n"
3880 "                     rp-E<gt>ai_protocol);\n"
3881 "        if (sfd == -1)\n"
3882 "            continue;\n"
3883 msgstr ""
3884 "    for (rp = result; rp != NULL; rp = rp-E<gt>ai_next) {\n"
3885 "        sfd = socket(rp-E<gt>ai_family, rp-E<gt>ai_socktype,\n"
3886 "                     rp-E<gt>ai_protocol);\n"
3887 "        if (sfd == -1)\n"
3888 "            continue;\n"
3889
3890 #. type: Plain text
3891 #: build/C/man3/getaddrinfo.3:786
3892 #, no-wrap
3893 msgid ""
3894 "        if (connect(sfd, rp-E<gt>ai_addr, rp-E<gt>ai_addrlen) != -1)\n"
3895 "            break;                  /* Success */\n"
3896 msgstr ""
3897 "        if (connect(sfd, rp-E<gt>ai_addr, rp-E<gt>ai_addrlen) != -1)\n"
3898 "            break;                  /* Success */\n"
3899
3900 #. type: Plain text
3901 #: build/C/man3/getaddrinfo.3:794
3902 #, no-wrap
3903 msgid ""
3904 "    if (rp == NULL) {               /* No address succeeded */\n"
3905 "        fprintf(stderr, \"Could not connect\\en\");\n"
3906 "        exit(EXIT_FAILURE);\n"
3907 "    }\n"
3908 msgstr ""
3909 "    if (rp == NULL) {               /* No address succeeded */\n"
3910 "        fprintf(stderr, \"Could not connect\\en\");\n"
3911 "        exit(EXIT_FAILURE);\n"
3912 "    }\n"
3913
3914 #. type: Plain text
3915 #: build/C/man3/getaddrinfo.3:799
3916 #, no-wrap
3917 msgid ""
3918 "    /* Send remaining command-line arguments as separate\n"
3919 "       datagrams, and read responses from server */\n"
3920 msgstr ""
3921 "    /* Send remaining command-line arguments as separate \n"
3922 "       datagrams, and read responses from server */\n"
3923
3924 #. type: Plain text
3925 #: build/C/man3/getaddrinfo.3:803
3926 #, no-wrap
3927 msgid ""
3928 "    for (j = 3; j E<lt> argc; j++) {\n"
3929 "        len = strlen(argv[j]) + 1;\n"
3930 "                /* +1 for terminating null byte */\n"
3931 msgstr ""
3932 "    for (j = 3; j E<lt> argc; j++) {\n"
3933 "        len = strlen(argv[j]) + 1;\n"
3934 "                /* +1 for terminating null byte */\n"
3935
3936 #. type: Plain text
3937 #: build/C/man3/getaddrinfo.3:809
3938 #, no-wrap
3939 msgid ""
3940 "        if (len + 1 E<gt> BUF_SIZE) {\n"
3941 "            fprintf(stderr,\n"
3942 "                    \"Ignoring long message in argument %d\\en\", j);\n"
3943 "            continue;\n"
3944 "        }\n"
3945 msgstr ""
3946 "        if (len + 1 E<gt> BUF_SIZE) {\n"
3947 "            fprintf(stderr,\n"
3948 "                    \"Ignoring long message in argument %d\\en\", j);\n"
3949 "            continue;\n"
3950 "        }\n"
3951
3952 #. type: Plain text
3953 #: build/C/man3/getaddrinfo.3:814
3954 #, no-wrap
3955 msgid ""
3956 "        if (write(sfd, argv[j], len) != len) {\n"
3957 "            fprintf(stderr, \"partial/failed write\\en\");\n"
3958 "            exit(EXIT_FAILURE);\n"
3959 "        }\n"
3960 msgstr ""
3961 "        if (write(sfd, argv[j], len) != len) {\n"
3962 "            fprintf(stderr, \"partial/failed write\\en\");\n"
3963 "            exit(EXIT_FAILURE);\n"
3964 "        }\n"
3965
3966 #. type: Plain text
3967 #: build/C/man3/getaddrinfo.3:820
3968 #, no-wrap
3969 msgid ""
3970 "        nread = read(sfd, buf, BUF_SIZE);\n"
3971 "        if (nread == -1) {\n"
3972 "            perror(\"read\");\n"
3973 "            exit(EXIT_FAILURE);\n"
3974 "        }\n"
3975 msgstr ""
3976 "        nread = read(sfd, buf, BUF_SIZE);\n"
3977 "        if (nread == -1) {\n"
3978 "            perror(\"read\");\n"
3979 "            exit(EXIT_FAILURE);\n"
3980 "        }\n"
3981
3982 #. type: Plain text
3983 #: build/C/man3/getaddrinfo.3:823
3984 #, no-wrap
3985 msgid ""
3986 "        printf(\"Received %ld bytes: %s\\en\", (long) nread, buf);\n"
3987 "    }\n"
3988 msgstr ""
3989 "        printf(\"Received %ld bytes: %s\\en\", (long) nread, buf);\n"
3990 "    }\n"
3991
3992 #.  .BR getipnodebyaddr (3),
3993 #.  .BR getipnodebyname (3),
3994 #. type: Plain text
3995 #: build/C/man3/getaddrinfo.3:837
3996 msgid ""
3997 "B<getaddrinfo_a>(3), B<gethostbyname>(3), B<getnameinfo>(3), B<inet>(3), "
3998 "B<gai.conf>(5), B<hostname>(7), B<ip>(7)"
3999 msgstr ""
4000 "B<getaddrinfo_a>(3), B<gethostbyname>(3), B<getnameinfo>(3), B<inet>(3), "
4001 "B<gai.conf>(5), B<hostname>(7), B<ip>(7)"
4002
4003 #. type: TH
4004 #: build/C/man3/getaddrinfo_a.3:29
4005 #, no-wrap
4006 msgid "GETADDRINFO_A"
4007 msgstr "GETADDRINFO_A"
4008
4009 #. type: TH
4010 #: build/C/man3/getaddrinfo_a.3:29
4011 #, no-wrap
4012 msgid "2010-09-27"
4013 msgstr "2010-09-27"
4014
4015 #. type: Plain text
4016 #: build/C/man3/getaddrinfo_a.3:33
4017 msgid ""
4018 "getaddrinfo_a, gai_suspend, gai_error, gai_cancel - asynchronous network "
4019 "address and service translation"
4020 msgstr ""
4021
4022 #. type: Plain text
4023 #: build/C/man3/getaddrinfo_a.3:37
4024 #, no-wrap
4025 msgid ""
4026 "B<#define _GNU_SOURCE>         /* See feature_test_macros(7) */\n"
4027 "B<#include E<lt>netdb.hE<gt>>\n"
4028 msgstr ""
4029 "B<#define _GNU_SOURCE>         /* feature_test_macros(7) 参照 */\n"
4030 "B<#include E<lt>netdb.hE<gt>>\n"
4031
4032 #. type: Plain text
4033 #: build/C/man3/getaddrinfo_a.3:40
4034 #, no-wrap
4035 msgid ""
4036 "B<int getaddrinfo_a(int >I<mode>B<, struct gaicb *>I<list[]>B<,>\n"
4037 "B<                int >I<nitems>B<, struct sigevent *>I<sevp>B<);>\n"
4038 msgstr ""
4039 "B<int getaddrinfo_a(int >I<mode>B<, struct gaicb *>I<list[]>B<,>\n"
4040 "B<                int >I<nitems>B<, struct sigevent *>I<sevp>B<);>\n"
4041
4042 #. type: Plain text
4043 #: build/C/man3/getaddrinfo_a.3:43
4044 #, no-wrap
4045 msgid ""
4046 "B<int gai_suspend(struct gaicb *>I<list[]>B<, int >I<nitems>B<,>\n"
4047 "B<                struct timespec *>I<timeout>B<);>\n"
4048 msgstr ""
4049 "B<int gai_suspend(struct gaicb *>I<list[]>B<, int >I<nitems>B<,>\n"
4050 "B<                struct timespec *>I<timeout>B<);>\n"
4051
4052 #. type: Plain text
4053 #: build/C/man3/getaddrinfo_a.3:45
4054 #, no-wrap
4055 msgid "B<int gai_error(struct gaicb *>I<req>B<);>\n"
4056 msgstr "B<int gai_error(struct gaicb *>I<req>B<);>\n"
4057
4058 #. type: Plain text
4059 #: build/C/man3/getaddrinfo_a.3:47
4060 #, no-wrap
4061 msgid "B<int gai_cancel(struct gaicb *>I<req>B<);>\n"
4062 msgstr "B<int gai_cancel(struct gaicb *>I<req>B<);>\n"
4063
4064 #. type: Plain text
4065 #: build/C/man3/getaddrinfo_a.3:49
4066 #, no-wrap
4067 msgid "Link with I<-lanl>.\n"
4068 msgstr "I<-lanl> でリンクする。\n"
4069
4070 #. type: Plain text
4071 #: build/C/man3/getaddrinfo_a.3:57
4072 msgid ""
4073 "The B<getaddrinfo_a>()  function performs the same task as B<getaddrinfo>"
4074 "(3), but allows multiple name look-ups to be performed asynchronously, with "
4075 "optional notification on completion of look-up operations."
4076 msgstr ""
4077
4078 #. type: Plain text
4079 #: build/C/man3/getaddrinfo_a.3:61
4080 msgid "The I<mode> argument has one of the following values:"
4081 msgstr ""
4082
4083 #. type: TP
4084 #: build/C/man3/getaddrinfo_a.3:61
4085 #, no-wrap
4086 msgid "B<GAI_WAIT>"
4087 msgstr "B<GAI_WAIT>"
4088
4089 #. type: Plain text
4090 #: build/C/man3/getaddrinfo_a.3:65
4091 msgid ""
4092 "Perform the look-ups synchronously.  The call blocks until the look-ups have "
4093 "completed."
4094 msgstr ""
4095
4096 #. type: TP
4097 #: build/C/man3/getaddrinfo_a.3:65
4098 #, no-wrap
4099 msgid "B<GAI_NOWAIT>"
4100 msgstr "B<GAI_NOWAIT>"
4101
4102 #. type: Plain text
4103 #: build/C/man3/getaddrinfo_a.3:73
4104 msgid ""
4105 "Perform the look-ups asynchronously.  The call returns immediately, and the "
4106 "requests are resolved in the background.  See the discussion of the I<sevp> "
4107 "argument below."
4108 msgstr ""
4109
4110 #. type: Plain text
4111 #: build/C/man3/getaddrinfo_a.3:88
4112 msgid ""
4113 "The array I<list> specifies the look-up requests to process.  The I<nitems> "
4114 "argument specifies the number of elements in I<list>.  The requested look-up "
4115 "operations are started in parallel.  NULL elements in I<list> are ignored.  "
4116 "Each request is described by a I<gaicb> structure, defined as follows:"
4117 msgstr ""
4118
4119 #. type: Plain text
4120 #: build/C/man3/getaddrinfo_a.3:97
4121 #, no-wrap
4122 msgid ""
4123 "struct gaicb {\n"
4124 "    const char            *ar_name;\n"
4125 "    const char            *ar_service;\n"
4126 "    const struct addrinfo *ar_request;\n"
4127 "    struct addrinfo       *ar_result;\n"
4128 "};\n"
4129 msgstr ""
4130 "struct gaicb {\n"
4131 "    const char            *ar_name;\n"
4132 "    const char            *ar_service;\n"
4133 "    const struct addrinfo *ar_request;\n"
4134 "    struct addrinfo       *ar_result;\n"
4135 "};\n"
4136
4137 #. type: Plain text
4138 #: build/C/man3/getaddrinfo_a.3:128
4139 msgid ""
4140 "The elements of this structure correspond to the arguments of B<getaddrinfo>"
4141 "(3).  Thus, I<ar_name> corresponds to the I<node> argument and I<ar_service> "
4142 "to the I<service> argument, identifying an Internet host and a service.  The "
4143 "I<ar_request> element corresponds to the I<hints> argument, specifying the "
4144 "criteria for selecting the returned socket address structures.  Finally, "
4145 "I<ar_result> corresponds to the I<res> argument; you do not need to "
4146 "initialize this element, it will be automatically set when the request is "
4147 "resolved.  The I<addrinfo> structure referenced by the last two elements is "
4148 "described in B<getaddrinfo>(3)."
4149 msgstr ""
4150
4151 #. type: Plain text
4152 #: build/C/man3/getaddrinfo_a.3:144
4153 msgid ""
4154 "When I<mode> is specified as B<GAI_NOWAIT>, notifications about resolved "
4155 "requests can be obtained by employing the I<sigevent> structure pointed to "
4156 "by the I<sevp> argument.  For the definition and general details of this "
4157 "structure, see B<sigevent>(7).  The I<sevp-E<gt>sigev_notify> field can have "
4158 "the following values:"
4159 msgstr ""
4160
4161 #. type: TP
4162 #: build/C/man3/getaddrinfo_a.3:144
4163 #, no-wrap
4164 msgid "B<SIGEV_NONE>"
4165 msgstr "B<SIGEV_NONE>"
4166
4167 #. type: Plain text
4168 #: build/C/man3/getaddrinfo_a.3:147
4169 msgid "Don't provide any notification."
4170 msgstr ""
4171
4172 #. type: TP
4173 #: build/C/man3/getaddrinfo_a.3:147
4174 #, no-wrap
4175 msgid "B<SIGEV_SIGNAL>"
4176 msgstr "B<SIGEV_SIGNAL>"
4177
4178 #.  si_pid and si_uid are also set, to the values of the calling process,
4179 #.  which doesn't provide useful information, so we'll skip mentioning it.
4180 #. type: Plain text
4181 #: build/C/man3/getaddrinfo_a.3:163
4182 msgid ""
4183 "When a look-up completes, generate the signal I<sigev_signo> for the "
4184 "process.  See B<sigevent>(7)  for general details.  The I<si_code> field of "
4185 "the I<siginfo_t> structure will be set to B<SI_ASYNCNL>."
4186 msgstr ""
4187
4188 #. type: TP
4189 #: build/C/man3/getaddrinfo_a.3:163
4190 #, no-wrap
4191 msgid "B<SIGEV_THREAD>"
4192 msgstr "B<SIGEV_THREAD>"
4193
4194 #. type: Plain text
4195 #: build/C/man3/getaddrinfo_a.3:171
4196 msgid ""
4197 "When a look-up completes, invoke I<sigev_notify_function> as if it were the "
4198 "start function of a new thread.  See B<sigevent>(7)  for details."
4199 msgstr ""
4200
4201 #. type: Plain text
4202 #: build/C/man3/getaddrinfo_a.3:180
4203 msgid ""
4204 "For B<SIGEV_SIGNAL> and B<SIGEV_THREAD>, it may be useful to point I<sevp-"
4205 "E<gt>sigev_value.sival_ptr> to I<list>."
4206 msgstr ""
4207
4208 #. type: Plain text
4209 #: build/C/man3/getaddrinfo_a.3:191
4210 msgid ""
4211 "The B<gai_suspend>()  function suspends execution of the calling thread, "
4212 "waiting for the completion of one or more requests in the array I<list>.  "
4213 "The I<nitems> argument specifies the size of the array I<list>.  The call "
4214 "blocks until one of the following occurs:"
4215 msgstr ""
4216
4217 #. type: Plain text
4218 #: build/C/man3/getaddrinfo_a.3:195
4219 msgid "One or more of the operations in I<list> completes."
4220 msgstr ""
4221
4222 #. type: Plain text
4223 #: build/C/man3/getaddrinfo_a.3:197
4224 msgid "The call is interrupted by a signal that is caught."
4225 msgstr ""
4226
4227 #. type: Plain text
4228 #: build/C/man3/getaddrinfo_a.3:210
4229 msgid ""
4230 "The time interval specified in I<timeout> elapses.  This argument specifies "
4231 "a timeout in seconds plus nanoseconds (see B<nanosleep>(2)  for details of "
4232 "the I<timespec> structure).  If I<timeout> is NULL, then the call blocks "
4233 "indefinitely (until one of the events above occurs)."
4234 msgstr ""
4235
4236 #. type: Plain text
4237 #: build/C/man3/getaddrinfo_a.3:215
4238 msgid ""
4239 "No explicit indication of which request was completed is given; you must "
4240 "determine which request(s) have completed by iterating with B<gai_error>()  "
4241 "over the list of requests."
4242 msgstr ""
4243
4244 #. type: Plain text
4245 #: build/C/man3/getaddrinfo_a.3:225
4246 msgid ""
4247 "The B<gai_error>()  function returns the status of the request I<req>: "
4248 "either B<EAI_INPROGRESS> if the request was not completed yet, 0 if it was "
4249 "handled successfully, or an error code if the request could not be resolved."
4250 msgstr ""
4251
4252 #. type: Plain text
4253 #: build/C/man3/getaddrinfo_a.3:242
4254 msgid ""
4255 "The B<gai_cancel>()  function cancels the request I<req>.  If the request "
4256 "has been canceled successfully, the error status of the request will be set "
4257 "to B<EAI_CANCELLED> and normal asynchronous notification will be performed.  "
4258 "The request cannot be canceled if it is currently being processed; in that "
4259 "case, it will be handled as if B<gai_cancel>()  has never been called.  If "
4260 "I<req> is NULL, an attempt is made to cancel all outstanding requests that "
4261 "the process has made."
4262 msgstr ""
4263
4264 #. type: Plain text
4265 #: build/C/man3/getaddrinfo_a.3:247
4266 msgid ""
4267 "The B<getaddrinfo_a>()  function returns 0 if all of the requests have been "
4268 "enqueued successfully, or one of the following nonzero error codes:"
4269 msgstr ""
4270
4271 #. type: Plain text
4272 #: build/C/man3/getaddrinfo_a.3:252
4273 msgid ""
4274 "The resources necessary to enqueue the look-up requests were not available.  "
4275 "The application may check the error status of each request to determine "
4276 "which ones failed."
4277 msgstr ""
4278
4279 #. type: Plain text
4280 #: build/C/man3/getaddrinfo_a.3:259
4281 msgid "I<mode> is invalid."
4282 msgstr ""
4283
4284 #. type: Plain text
4285 #: build/C/man3/getaddrinfo_a.3:264
4286 msgid ""
4287 "The B<gai_suspend>()  function returns 0 if at least one of the listed "
4288 "requests has been completed.  Otherwise, it returns one of the following "
4289 "nonzero error codes:"
4290 msgstr ""
4291
4292 #. type: Plain text
4293 #: build/C/man3/getaddrinfo_a.3:267
4294 msgid ""
4295 "The given timeout expired before any of the requests could be completed."
4296 msgstr ""
4297
4298 #. type: TP
4299 #: build/C/man3/getaddrinfo_a.3:267 build/C/man3/getaddrinfo_a.3:297
4300 #, no-wrap
4301 msgid "B<EAI_ALLDONE>"
4302 msgstr "B<EAI_ALLDONE>"
4303
4304 #. type: Plain text
4305 #: build/C/man3/getaddrinfo_a.3:270
4306 msgid "There were no actual requests given to the function."
4307 msgstr ""
4308
4309 #. type: TP
4310 #: build/C/man3/getaddrinfo_a.3:270
4311 #, no-wrap
4312 msgid "B<EAI_INTR>"
4313 msgstr "B<EAI_INTR>"
4314
4315 #. type: Plain text
4316 #: build/C/man3/getaddrinfo_a.3:275
4317 msgid ""
4318 "A signal has interrupted the function.  Note that this interruption might "
4319 "have been caused by signal notification of some completed look-up request."
4320 msgstr ""
4321
4322 #. type: Plain text
4323 #: build/C/man3/getaddrinfo_a.3:287
4324 msgid ""
4325 "The B<gai_error>()  function can return B<EAI_INPROGRESS> for an unfinished "
4326 "look-up request, 0 for a successfully completed look-up (as described "
4327 "above), one of the error codes that could be returned by B<getaddrinfo>(3), "
4328 "or the error code B<EAI_CANCELLED> if the request has been canceled "
4329 "explicitly before it could be finished."
4330 msgstr ""
4331
4332 #. type: Plain text
4333 #: build/C/man3/getaddrinfo_a.3:291
4334 msgid "The B<gai_cancel>()  function can return one of these values:"
4335 msgstr ""
4336
4337 #. type: TP
4338 #: build/C/man3/getaddrinfo_a.3:291
4339 #, no-wrap
4340 msgid "B<EAI_CANCELLED>"
4341 msgstr "B<EAI_CANCELLED>"
4342
4343 #. type: Plain text
4344 #: build/C/man3/getaddrinfo_a.3:294
4345 msgid "The request has been canceled successfully."
4346 msgstr ""
4347
4348 #. type: TP
4349 #: build/C/man3/getaddrinfo_a.3:294
4350 #, no-wrap
4351 msgid "B<EAI_NOTCANCELLED>"
4352 msgstr "B<EAI_NOTCANCELLED>"
4353
4354 #. type: Plain text
4355 #: build/C/man3/getaddrinfo_a.3:297
4356 msgid "The request has not been canceled."
4357 msgstr ""
4358
4359 #. type: Plain text
4360 #: build/C/man3/getaddrinfo_a.3:300
4361 msgid "The request has already completed."
4362 msgstr ""
4363
4364 #. type: Plain text
4365 #: build/C/man3/getaddrinfo_a.3:305 build/C/man3/getnameinfo.3:197
4366 msgid ""
4367 "The B<gai_strerror>(3)  function translates these error codes to a human "
4368 "readable string, suitable for error reporting."
4369 msgstr ""
4370 "B<gai_strerror>(3) 関数を使うと、これらのエラー・コードを、エラー・レポートに"
4371 "適した 人間が読みやすい文字列に翻訳してくれる。"
4372
4373 #. type: Plain text
4374 #: build/C/man3/getaddrinfo_a.3:308
4375 msgid ""
4376 "These functions are GNU extensions; they first appeared in glibc in version "
4377 "2.2.3."
4378 msgstr ""
4379
4380 #. type: Plain text
4381 #: build/C/man3/getaddrinfo_a.3:314
4382 msgid ""
4383 "The interface of B<getaddrinfo_a>()  was modeled after the B<lio_listio>(3)  "
4384 "interface."
4385 msgstr ""
4386
4387 #. type: Plain text
4388 #: build/C/man3/getaddrinfo_a.3:318
4389 msgid ""
4390 "Two examples are provided: a simple example that resolves several requests "
4391 "in parallel synchronously, and a complex example showing some of the "
4392 "asynchronous capabilities."
4393 msgstr ""
4394
4395 #. type: SS
4396 #: build/C/man3/getaddrinfo_a.3:318
4397 #, no-wrap
4398 msgid "Synchronous example"
4399 msgstr ""
4400
4401 #. type: Plain text
4402 #: build/C/man3/getaddrinfo_a.3:323
4403 msgid ""
4404 "The program below simply resolves several hostnames in parallel, giving a "
4405 "speed-up compared to resolving the hostnames sequentially using "
4406 "B<getaddrinfo>(3).  The program might be used like this:"
4407 msgstr ""
4408
4409 #. type: Plain text
4410 #: build/C/man3/getaddrinfo_a.3:330
4411 #, no-wrap
4412 msgid ""
4413 "$ B<./a.out ftp.us.kernel.org enoent.linuxfoundation.org gnu.cz>\n"
4414 "ftp.us.kernel.org: 128.30.2.36\n"
4415 "enoent.linuxfoundation.org: Name or service not known\n"
4416 "gnu.cz: 87.236.197.13\n"
4417 msgstr ""
4418 "$ B<./a.out ftp.us.kernel.org enoent.linuxfoundation.org gnu.cz>\n"
4419 "ftp.us.kernel.org: 128.30.2.36\n"
4420 "enoent.linuxfoundation.org: Name or service not known\n"
4421 "gnu.cz: 87.236.197.13\n"
4422
4423 #. type: Plain text
4424 #: build/C/man3/getaddrinfo_a.3:334
4425 msgid "Here is the program source code"
4426 msgstr ""
4427
4428 #. type: Plain text
4429 #: build/C/man3/getaddrinfo_a.3:341 build/C/man3/getaddrinfo_a.3:430
4430 #, no-wrap
4431 msgid ""
4432 "#define _GNU_SOURCE\n"
4433 "#include E<lt>netdb.hE<gt>\n"
4434 "#include E<lt>stdio.hE<gt>\n"
4435 "#include E<lt>stdlib.hE<gt>\n"
4436 "#include E<lt>string.hE<gt>\n"
4437 msgstr ""
4438 "#define _GNU_SOURCE\n"
4439 "#include E<lt>netdb.hE<gt>\n"
4440 "#include E<lt>stdio.hE<gt>\n"
4441 "#include E<lt>stdlib.hE<gt>\n"
4442 "#include E<lt>string.hE<gt>\n"
4443
4444 #. type: Plain text
4445 #: build/C/man3/getaddrinfo_a.3:349
4446 #, no-wrap
4447 msgid ""
4448 "int\n"
4449 "main(int argc, char *argv[])\n"
4450 "{\n"
4451 "    int i, ret;\n"
4452 "    struct gaicb *reqs[argc - 1];\n"
4453 "    char host[NI_MAXHOST];\n"
4454 "    struct addrinfo *res;\n"
4455 msgstr ""
4456 "int\n"
4457 "main(int argc, char *argv[])\n"
4458 "{\n"
4459 "    int i, ret;\n"
4460 "    struct gaicb *reqs[argc - 1];\n"
4461 "    char host[NI_MAXHOST];\n"
4462 "    struct addrinfo *res;\n"
4463
4464 #. type: Plain text
4465 #: build/C/man3/getaddrinfo_a.3:354
4466 #, no-wrap
4467 msgid ""
4468 "    if (argc E<lt> 2) {\n"
4469 "        fprintf(stderr, \"Usage: %s HOST...\\en\", argv[0]);\n"
4470 "        exit(EXIT_FAILURE);\n"
4471 "    }\n"
4472 msgstr ""
4473 "    if (argc E<lt> 2) {\n"
4474 "        fprintf(stderr, \"Usage: %s HOST...\\en\", argv[0]);\n"
4475 "        exit(EXIT_FAILURE);\n"
4476 "    }\n"
4477
4478 #. type: Plain text
4479 #: build/C/man3/getaddrinfo_a.3:364
4480 #, no-wrap
4481 msgid ""
4482 "    for (i = 0; i E<lt> argc - 1; i++) {\n"
4483 "        reqs[i] = malloc(sizeof(*reqs[0]));\n"
4484 "        if (reqs[i] == NULL) {\n"
4485 "            perror(\"malloc\");\n"
4486 "            exit(EXIT_FAILURE);\n"
4487 "        }\n"
4488 "        memset(reqs[i], 0, sizeof(*reqs[0]));\n"
4489 "        reqs[i]-E<gt>ar_name = argv[i + 1];\n"
4490 "    }\n"
4491 msgstr ""
4492 "    for (i = 0; i E<lt> argc - 1; i++) {\n"
4493 "        reqs[i] = malloc(sizeof(*reqs[0]));\n"
4494 "        if (reqs[i] == NULL) {\n"
4495 "            perror(\"malloc\");\n"
4496 "            exit(EXIT_FAILURE);\n"
4497 "        }\n"
4498 "        memset(reqs[i], 0, sizeof(*reqs[0]));\n"
4499 "        reqs[i]-E<gt>ar_name = argv[i + 1];\n"
4500 "    }\n"
4501
4502 #. type: Plain text
4503 #: build/C/man3/getaddrinfo_a.3:371
4504 #, no-wrap
4505 msgid ""
4506 "    ret = getaddrinfo_a(GAI_WAIT, reqs, argc - 1, NULL);\n"
4507 "    if (ret != 0) {\n"
4508 "        fprintf(stderr, \"getaddrinfo_a() failed: %s\\en\",\n"
4509 "                gai_strerror(ret));\n"
4510 "        exit(EXIT_FAILURE);\n"
4511 "    }\n"
4512 msgstr ""
4513 "    ret = getaddrinfo_a(GAI_WAIT, reqs, argc - 1, NULL);\n"
4514 "    if (ret != 0) {\n"
4515 "        fprintf(stderr, \"getaddrinfo_a() failed: %s\\en\",\n"
4516 "                gai_strerror(ret));\n"
4517 "        exit(EXIT_FAILURE);\n"
4518 "    }\n"
4519
4520 #. type: Plain text
4521 #: build/C/man3/getaddrinfo_a.3:377
4522 #, no-wrap
4523 msgid ""
4524 "    for (i = 0; i E<lt> argc - 1; i++) {\n"
4525 "        printf(\"%s: \", reqs[i]-E<gt>ar_name);\n"
4526 "        ret = gai_error(reqs[i]);\n"
4527 "        if (ret == 0) {\n"
4528 "            res = reqs[i]-E<gt>ar_result;\n"
4529 msgstr ""
4530 "    for (i = 0; i E<lt> argc - 1; i++) {\n"
4531 "        printf(\"%s: \", reqs[i]-E<gt>ar_name);\n"
4532 "        ret = gai_error(reqs[i]);\n"
4533 "        if (ret == 0) {\n"
4534 "            res = reqs[i]-E<gt>ar_result;\n"
4535
4536 #. type: Plain text
4537 #: build/C/man3/getaddrinfo_a.3:387
4538 #, no-wrap
4539 msgid ""
4540 "            ret = getnameinfo(res-E<gt>ai_addr, res-E<gt>ai_addrlen,\n"
4541 "                    host, sizeof(host),\n"
4542 "                    NULL, 0, NI_NUMERICHOST);\n"
4543 "            if (ret != 0) {\n"
4544 "                fprintf(stderr, \"getnameinfo() failed: %s\\en\",\n"
4545 "                        gai_strerror(ret));\n"
4546 "                exit(EXIT_FAILURE);\n"
4547 "            }\n"
4548 "            puts(host);\n"
4549 msgstr ""
4550 "            ret = getnameinfo(res-E<gt>ai_addr, res-E<gt>ai_addrlen,\n"
4551 "                    host, sizeof(host),\n"
4552 "                    NULL, 0, NI_NUMERICHOST);\n"
4553 "            if (ret != 0) {\n"
4554 "                fprintf(stderr, \"getnameinfo() failed: %s\\en\",\n"
4555 "                        gai_strerror(ret));\n"
4556 "                exit(EXIT_FAILURE);\n"
4557 "            }\n"
4558 "            puts(host);\n"
4559
4560 #. type: Plain text
4561 #: build/C/man3/getaddrinfo_a.3:394
4562 #, no-wrap
4563 msgid ""
4564 "        } else {\n"
4565 "            puts(gai_strerror(ret));\n"
4566 "        }\n"
4567 "    }\n"
4568 "    exit(EXIT_SUCCESS);\n"
4569 "}\n"
4570 msgstr ""
4571 "        } else {\n"
4572 "            puts(gai_strerror(ret));\n"
4573 "        }\n"
4574 "    }\n"
4575 "    exit(EXIT_SUCCESS);\n"
4576 "}\n"
4577
4578 #. type: SS
4579 #: build/C/man3/getaddrinfo_a.3:395
4580 #, no-wrap
4581 msgid "Asynchronous example"
4582 msgstr ""
4583
4584 #. type: Plain text
4585 #: build/C/man3/getaddrinfo_a.3:400
4586 msgid ""
4587 "This example shows a simple interactive B<getaddrinfo_a>()  front-end.  The "
4588 "notification facility is not demonstrated."
4589 msgstr ""
4590
4591 #. type: Plain text
4592 #: build/C/man3/getaddrinfo_a.3:402
4593 msgid "An example session might look like this:"
4594 msgstr ""
4595
4596 #. type: Plain text
4597 #: build/C/man3/getaddrinfo_a.3:419
4598 #, no-wrap
4599 msgid ""
4600 "$ B<./a.out>\n"
4601 "E<gt> a ftp.us.kernel.org enoent.linuxfoundation.org gnu.cz\n"
4602 "E<gt> c 2\n"
4603 "[2] gnu.cz: Request not canceled\n"
4604 "E<gt> w 0 1\n"
4605 "[00] ftp.us.kernel.org: Finished\n"
4606 "E<gt> l\n"
4607 "[00] ftp.us.kernel.org: 216.165.129.139\n"
4608 "[01] enoent.linuxfoundation.org: Processing request in progress\n"
4609 "[02] gnu.cz: 87.236.197.13\n"
4610 "E<gt> l\n"
4611 "[00] ftp.us.kernel.org: 216.165.129.139\n"
4612 "[01] enoent.linuxfoundation.org: Name or service not known\n"
4613 "[02] gnu.cz: 87.236.197.13\n"
4614 msgstr ""
4615 "$ B<./a.out>\n"
4616 "E<gt> a ftp.us.kernel.org enoent.linuxfoundation.org gnu.cz\n"
4617 "E<gt> c 2\n"
4618 "[2] gnu.cz: Request not canceled\n"
4619 "E<gt> w 0 1\n"
4620 "[00] ftp.us.kernel.org: Finished\n"
4621 "E<gt> l\n"
4622 "[00] ftp.us.kernel.org: 216.165.129.139\n"
4623 "[01] enoent.linuxfoundation.org: Processing request in progress\n"
4624 "[02] gnu.cz: 87.236.197.13\n"
4625 "E<gt> l\n"
4626 "[00] ftp.us.kernel.org: 216.165.129.139\n"
4627 "[01] enoent.linuxfoundation.org: Name or service not known\n"
4628 "[02] gnu.cz: 87.236.197.13\n"
4629
4630 #. type: Plain text
4631 #: build/C/man3/getaddrinfo_a.3:423
4632 msgid "The program source is as follows:"
4633 msgstr ""
4634
4635 #. type: Plain text
4636 #: build/C/man3/getaddrinfo_a.3:433
4637 #, no-wrap
4638 msgid ""
4639 "static struct gaicb **reqs = NULL;\n"
4640 "static int nreqs = 0;\n"
4641 msgstr ""
4642 "static struct gaicb **reqs = NULL;\n"
4643 "static int nreqs = 0;\n"
4644
4645 #. type: Plain text
4646 #: build/C/man3/getaddrinfo_a.3:438
4647 #, no-wrap
4648 msgid ""
4649 "static char *\n"
4650 "getcmd(void)\n"
4651 "{\n"
4652 "    static char buf[256];\n"
4653 msgstr ""
4654 "static char *\n"
4655 "getcmd(void)\n"
4656 "{\n"
4657 "    static char buf[256];\n"
4658
4659 #. type: Plain text
4660 #: build/C/man3/getaddrinfo_a.3:442
4661 #, no-wrap
4662 msgid ""
4663 "    fputs(\"E<gt> \", stdout); fflush(stdout);\n"
4664 "    if (fgets(buf, sizeof(buf), stdin) == NULL)\n"
4665 "        return NULL;\n"
4666 msgstr ""
4667 "    fputs(\"E<gt> \", stdout); fflush(stdout);\n"
4668 "    if (fgets(buf, sizeof(buf), stdin) == NULL)\n"
4669 "        return NULL;\n"
4670
4671 #. type: Plain text
4672 #: build/C/man3/getaddrinfo_a.3:445
4673 #, no-wrap
4674 msgid ""
4675 "    if (buf[strlen(buf) - 1] == \\(aq\\en\\(aq)\n"
4676 "        buf[strlen(buf) - 1] = 0;\n"
4677 msgstr ""
4678 "    if (buf[strlen(buf) - 1] == \\(aq\\en\\(aq)\n"
4679 "        buf[strlen(buf) - 1] = 0;\n"
4680
4681 #. type: Plain text
4682 #: build/C/man3/getaddrinfo_a.3:448
4683 #, no-wrap
4684 msgid ""
4685 "    return buf;\n"
4686 "}\n"
4687 msgstr ""
4688 "    return buf;\n"
4689 "}\n"
4690
4691 #. type: Plain text
4692 #: build/C/man3/getaddrinfo_a.3:456
4693 #, no-wrap
4694 msgid ""
4695 "/* Add requests for specified hostnames */\n"
4696 "static void\n"
4697 "add_requests(void)\n"
4698 "{\n"
4699 "    int nreqs_base = nreqs;\n"
4700 "    char *host;\n"
4701 "    int ret;\n"
4702 msgstr ""
4703 "/* Add requests for specified hostnames */\n"
4704 "static void\n"
4705 "add_requests(void)\n"
4706 "{\n"
4707 "    int nreqs_base = nreqs;\n"
4708 "    char *host;\n"
4709 "    int ret;\n"
4710
4711 #. type: Plain text
4712 #: build/C/man3/getaddrinfo_a.3:460
4713 #, no-wrap
4714 msgid ""
4715 "    while ((host = strtok(NULL, \" \"))) {\n"
4716 "        nreqs++;\n"
4717 "        reqs = realloc(reqs, nreqs * sizeof(reqs[0]));\n"
4718 msgstr ""
4719 "    while ((host = strtok(NULL, \" \"))) {\n"
4720 "        nreqs++;\n"
4721 "        reqs = realloc(reqs, nreqs * sizeof(reqs[0]));\n"
4722
4723 #. type: Plain text
4724 #: build/C/man3/getaddrinfo_a.3:464
4725 #, no-wrap
4726 msgid ""
4727 "        reqs[nreqs - 1] = calloc(1, sizeof(*reqs[0]));\n"
4728 "        reqs[nreqs - 1]-E<gt>ar_name = strdup(host);\n"
4729 "    }\n"
4730 msgstr ""
4731 "        reqs[nreqs - 1] = calloc(1, sizeof(*reqs[0]));\n"
4732 "        reqs[nreqs - 1]-E<gt>ar_name = strdup(host);\n"
4733 "    }\n"
4734
4735 #. type: Plain text
4736 #: build/C/man3/getaddrinfo_a.3:466
4737 #, no-wrap
4738 msgid "    /* Queue nreqs_base..nreqs requests. */\n"
4739 msgstr "    /* Queue nreqs_base..nreqs requests. */\n"
4740
4741 #. type: Plain text
4742 #: build/C/man3/getaddrinfo_a.3:475
4743 #, no-wrap
4744 msgid ""
4745 "    ret = getaddrinfo_a(GAI_NOWAIT, &reqs[nreqs_base],\n"
4746 "                        nreqs - nreqs_base, NULL);\n"
4747 "    if (ret) {\n"
4748 "        fprintf(stderr, \"getaddrinfo_a() failed: %s\\en\",\n"
4749 "                gai_strerror(ret));\n"
4750 "        exit(EXIT_FAILURE);\n"
4751 "    }\n"
4752 "}\n"
4753 msgstr ""
4754 "    ret = getaddrinfo_a(GAI_NOWAIT, &reqs[nreqs_base],\n"
4755 "                        nreqs - nreqs_base, NULL);\n"
4756 "    if (ret) {\n"
4757 "        fprintf(stderr, \"getaddrinfo_a() failed: %s\\en\",\n"
4758 "                gai_strerror(ret));\n"
4759 "        exit(EXIT_FAILURE);\n"
4760 "    }\n"
4761 "}\n"
4762
4763 #. type: Plain text
4764 #: build/C/man3/getaddrinfo_a.3:484
4765 #, no-wrap
4766 msgid ""
4767 "/* Wait until at least one of specified requests completes */\n"
4768 "static void\n"
4769 "wait_requests(void)\n"
4770 "{\n"
4771 "    char *id;\n"
4772 "    int i, ret, n;\n"
4773 "    struct gaicb const **wait_reqs = calloc(nreqs, sizeof(*wait_reqs));\n"
4774 "                /* NULL elements are ignored by gai_suspend(). */\n"
4775 msgstr ""
4776 "/* Wait until at least one of specified requests completes */\n"
4777 "static void\n"
4778 "wait_requests(void)\n"
4779 "{\n"
4780 "    char *id;\n"
4781 "    int i, ret, n;\n"
4782 "    struct gaicb const **wait_reqs = calloc(nreqs, sizeof(*wait_reqs));\n"
4783 "                /* NULL elements are ignored by gai_suspend(). */\n"
4784
4785 #. type: Plain text
4786 #: build/C/man3/getaddrinfo_a.3:487 build/C/man3/getaddrinfo_a.3:524
4787 #, no-wrap
4788 msgid ""
4789 "    while ((id = strtok(NULL, \" \")) != NULL) {\n"
4790 "        n = atoi(id);\n"
4791 msgstr ""
4792 "    while ((id = strtok(NULL, \" \")) != NULL) {\n"
4793 "        n = atoi(id);\n"
4794
4795 #. type: Plain text
4796 #: build/C/man3/getaddrinfo_a.3:492 build/C/man3/getaddrinfo_a.3:529
4797 #, no-wrap
4798 msgid ""
4799 "        if (n E<gt>= nreqs) {\n"
4800 "            printf(\"Bad request number: %s\\en\", id);\n"
4801 "            return;\n"
4802 "        }\n"
4803 msgstr ""
4804 "        if (n E<gt>= nreqs) {\n"
4805 "            printf(\"Bad request number: %s\\en\", id);\n"
4806 "            return;\n"
4807 "        }\n"
4808
4809 #. type: Plain text
4810 #: build/C/man3/getaddrinfo_a.3:495
4811 #, no-wrap
4812 msgid ""
4813 "        wait_reqs[n] = reqs[n];\n"
4814 "    }\n"
4815 msgstr ""
4816 "        wait_reqs[n] = reqs[n];\n"
4817 "    }\n"
4818
4819 #. type: Plain text
4820 #: build/C/man3/getaddrinfo_a.3:501
4821 #, no-wrap
4822 msgid ""
4823 "    ret = gai_suspend(wait_reqs, nreqs, NULL);\n"
4824 "    if (ret) {\n"
4825 "        printf(\"gai_suspend(): %s\\en\", gai_strerror(ret));\n"
4826 "        return;\n"
4827 "    }\n"
4828 msgstr ""
4829 "    ret = gai_suspend(wait_reqs, nreqs, NULL);\n"
4830 "    if (ret) {\n"
4831 "        printf(\"gai_suspend(): %s\\en\", gai_strerror(ret));\n"
4832 "        return;\n"
4833 "    }\n"
4834
4835 #. type: Plain text
4836 #: build/C/man3/getaddrinfo_a.3:505
4837 #, no-wrap
4838 msgid ""
4839 "    for (i = 0; i E<lt> nreqs; i++) {\n"
4840 "        if (wait_reqs[i] == NULL)\n"
4841 "            continue;\n"
4842 msgstr ""
4843 "    for (i = 0; i E<lt> nreqs; i++) {\n"
4844 "        if (wait_reqs[i] == NULL)\n"
4845 "            continue;\n"
4846
4847 #. type: Plain text
4848 #: build/C/man3/getaddrinfo_a.3:509
4849 #, no-wrap
4850 msgid ""
4851 "        ret = gai_error(reqs[i]);\n"
4852 "        if (ret == EAI_INPROGRESS)\n"
4853 "            continue;\n"
4854 msgstr ""
4855 "        ret = gai_error(reqs[i]);\n"
4856 "        if (ret == EAI_INPROGRESS)\n"
4857 "            continue;\n"
4858
4859 #. type: Plain text
4860 #: build/C/man3/getaddrinfo_a.3:514
4861 #, no-wrap
4862 msgid ""
4863 "        printf(\"[%02d] %s: %s\\en\", i, reqs[i]-E<gt>ar_name,\n"
4864 "               ret == 0 ? \"Finished\" : gai_strerror(ret));\n"
4865 "    }\n"
4866 "}\n"
4867 msgstr ""
4868 "        printf(\"[%02d] %s: %s\\en\", i, reqs[i]-E<gt>ar_name,\n"
4869 "               ret == 0 ? \"Finished\" : gai_strerror(ret));\n"
4870 "    }\n"
4871 "}\n"
4872
4873 #. type: Plain text
4874 #: build/C/man3/getaddrinfo_a.3:521
4875 #, no-wrap
4876 msgid ""
4877 "/* Cancel specified requests */\n"
4878 "static void\n"
4879 "cancel_requests(void)\n"
4880 "{\n"
4881 "    char *id;\n"
4882 "    int ret, n;\n"
4883 msgstr ""
4884 "/* Cancel specified requests */\n"
4885 "static void\n"
4886 "cancel_requests(void)\n"
4887 "{\n"
4888 "    char *id;\n"
4889 "    int ret, n;\n"
4890
4891 #. type: Plain text
4892 #: build/C/man3/getaddrinfo_a.3:535
4893 #, no-wrap
4894 msgid ""
4895 "        ret = gai_cancel(reqs[n]);\n"
4896 "        printf(\"[%s] %s: %s\\en\", id, reqs[atoi(id)]-E<gt>ar_name,\n"
4897 "               gai_strerror(ret));\n"
4898 "    }\n"
4899 "}\n"
4900 msgstr ""
4901 "        ret = gai_cancel(reqs[n]);\n"
4902 "        printf(\"[%s] %s: %s\\en\", id, reqs[atoi(id)]-E<gt>ar_name,\n"
4903 "               gai_strerror(ret));\n"
4904 "    }\n"
4905 "}\n"
4906
4907 #. type: Plain text
4908 #: build/C/man3/getaddrinfo_a.3:543
4909 #, no-wrap
4910 msgid ""
4911 "/* List all requests */\n"
4912 "static void\n"
4913 "list_requests(void)\n"
4914 "{\n"
4915 "    int i, ret;\n"
4916 "    char host[NI_MAXHOST];\n"
4917 "    struct addrinfo *res;\n"
4918 msgstr ""
4919 "/* List all requests */\n"
4920 "static void\n"
4921 "list_requests(void)\n"
4922 "{\n"
4923 "    int i, ret;\n"
4924 "    char host[NI_MAXHOST];\n"
4925 "    struct addrinfo *res;\n"
4926
4927 #. type: Plain text
4928 #: build/C/man3/getaddrinfo_a.3:547
4929 #, no-wrap
4930 msgid ""
4931 "    for (i = 0; i E<lt> nreqs; i++) {\n"
4932 "        printf(\"[%02d] %s: \", i, reqs[i]-E<gt>ar_name);\n"
4933 "        ret = gai_error(reqs[i]);\n"
4934 msgstr ""
4935 "    for (i = 0; i E<lt> nreqs; i++) {\n"
4936 "        printf(\"[%02d] %s: \", i, reqs[i]-E<gt>ar_name);\n"
4937 "        ret = gai_error(reqs[i]);\n"
4938
4939 #. type: Plain text
4940 #: build/C/man3/getaddrinfo_a.3:550
4941 #, no-wrap
4942 msgid ""
4943 "        if (!ret) {\n"
4944 "            res = reqs[i]-E<gt>ar_result;\n"
4945 msgstr ""
4946 "        if (!ret) {\n"
4947 "            res = reqs[i]-E<gt>ar_result;\n"
4948
4949 #. type: Plain text
4950 #: build/C/man3/getaddrinfo_a.3:565
4951 #, no-wrap
4952 msgid ""
4953 "            ret = getnameinfo(res-E<gt>ai_addr, res-E<gt>ai_addrlen,\n"
4954 "                              host, sizeof(host),\n"
4955 "                              NULL, 0, NI_NUMERICHOST);\n"
4956 "            if (ret) {\n"
4957 "                fprintf(stderr, \"getnameinfo() failed: %s\\en\",\n"
4958 "                        gai_strerror(ret));\n"
4959 "                exit(EXIT_FAILURE);\n"
4960 "            }\n"
4961 "            puts(host);\n"
4962 "        } else {\n"
4963 "            puts(gai_strerror(ret));\n"
4964 "        }\n"
4965 "    }\n"
4966 "}\n"
4967 msgstr ""
4968 "            ret = getnameinfo(res-E<gt>ai_addr, res-E<gt>ai_addrlen,\n"
4969 "                              host, sizeof(host),\n"
4970 "                              NULL, 0, NI_NUMERICHOST);\n"
4971 "            if (ret) {\n"
4972 "                fprintf(stderr, \"getnameinfo() failed: %s\\en\",\n"
4973 "                        gai_strerror(ret));\n"
4974 "                exit(EXIT_FAILURE);\n"
4975 "            }\n"
4976 "            puts(host);\n"
4977 "        } else {\n"
4978 "            puts(gai_strerror(ret));\n"
4979 "        }\n"
4980 "    }\n"
4981 "}\n"
4982
4983 #. type: Plain text
4984 #: build/C/man3/getaddrinfo_a.3:571
4985 #, no-wrap
4986 msgid ""
4987 "int\n"
4988 "main(int argc, char *argv[])\n"
4989 "{\n"
4990 "    char *cmdline;\n"
4991 "    char *cmd;\n"
4992 msgstr ""
4993 "int\n"
4994 "main(int argc, char *argv[])\n"
4995 "{\n"
4996 "    char *cmdline;\n"
4997 "    char *cmd;\n"
4998
4999 #. type: Plain text
5000 #: build/C/man3/getaddrinfo_a.3:574
5001 #, no-wrap
5002 msgid ""
5003 "    while ((cmdline = getcmd()) != NULL) {\n"
5004 "        cmd = strtok(cmdline, \" \");\n"
5005 msgstr ""
5006 "    while ((cmdline = getcmd()) != NULL) {\n"
5007 "        cmd = strtok(cmdline, \" \");\n"
5008
5009 #. type: Plain text
5010 #: build/C/man3/getaddrinfo_a.3:599
5011 #, no-wrap
5012 msgid ""
5013 "        if (cmd == NULL) {\n"
5014 "            list_requests();\n"
5015 "        } else {\n"
5016 "            switch (cmd[0]) {\n"
5017 "            case \\(aqa\\(aq:\n"
5018 "                add_requests();\n"
5019 "                break;\n"
5020 "            case \\(aqw\\(aq:\n"
5021 "                wait_requests();\n"
5022 "                break;\n"
5023 "            case \\(aqc\\(aq:\n"
5024 "                cancel_requests();\n"
5025 "                break;\n"
5026 "            case \\(aql\\(aq:\n"
5027 "                list_requests();\n"
5028 "                break;\n"
5029 "            default:\n"
5030 "                fprintf(stderr, \"Bad command: %c\\en\", cmd[0]);\n"
5031 "                break;\n"
5032 "            }\n"
5033 "        }\n"
5034 "    }\n"
5035 "    exit(EXIT_SUCCESS);\n"
5036 "}\n"
5037 msgstr ""
5038 "        if (cmd == NULL) {\n"
5039 "            list_requests();\n"
5040 "        } else {\n"
5041 "            switch (cmd[0]) {\n"
5042 "            case \\(aqa\\(aq:\n"
5043 "                add_requests();\n"
5044 "                break;\n"
5045 "            case \\(aqw\\(aq:\n"
5046 "                wait_requests();\n"
5047 "                break;\n"
5048 "            case \\(aqc\\(aq:\n"
5049 "                cancel_requests();\n"
5050 "                break;\n"
5051 "            case \\(aql\\(aq:\n"
5052 "                list_requests();\n"
5053 "                break;\n"
5054 "            default:\n"
5055 "                fprintf(stderr, \"Bad command: %c\\en\", cmd[0]);\n"
5056 "                break;\n"
5057 "            }\n"
5058 "        }\n"
5059 "    }\n"
5060 "    exit(EXIT_SUCCESS);\n"
5061 "}\n"
5062
5063 #. type: Plain text
5064 #: build/C/man3/getaddrinfo_a.3:607
5065 msgid ""
5066 "B<getaddrinfo>(3), B<inet>(3), B<lio_listio>(3), B<hostname>(7), B<ip>(7), "
5067 "B<sigevent>(7)"
5068 msgstr ""
5069 "B<getaddrinfo>(3), B<inet>(3), B<lio_listio>(3), B<hostname>(7), B<ip>(7), "
5070 "B<sigevent>(7)"
5071
5072 #. type: TH
5073 #: build/C/man1/getent.1:24
5074 #, no-wrap
5075 msgid "GETENT"
5076 msgstr "GETENT"
5077
5078 #. type: TH
5079 #: build/C/man1/getent.1:24
5080 #, no-wrap
5081 msgid "2013-03-15"
5082 msgstr "2013-03-15"
5083
5084 #. type: TH
5085 #: build/C/man1/getent.1:24
5086 #, no-wrap
5087 msgid "User Commands"
5088 msgstr "User Commands"
5089
5090 #. type: Plain text
5091 #: build/C/man1/getent.1:27
5092 msgid "getent - get entries from Name Service Switch libraries"
5093 msgstr "getent - 名前サービス切り替えライブラリからエントリーを取得する"
5094
5095 #. type: Plain text
5096 #: build/C/man1/getent.1:30
5097 msgid "B<getent> I<database> [I<key> ...]"
5098 msgstr "B<getent> I<database> [I<key> ...]"
5099
5100 #. type: Plain text
5101 #: build/C/man1/getent.1:45
5102 msgid ""
5103 "The B<getent> command displays entries from databases supported by the Name "
5104 "Service Switch libraries, which are configured in I</etc/nsswitch.conf>.  If "
5105 "one or more I<key> arguments are provided, then only the entries that match "
5106 "the supplied keys will be displayed.  Otherwise, if no I<key> is provided, "
5107 "all entries will be displayed (unless the database does not support "
5108 "enumeration)."
5109 msgstr ""
5110 "B<getent> コマンドは、 名前サービス切り替えライブラリでサポートされているデー"
5111 "タベースのエントリーを表示する。 名前サービス切り替えライブラリの設定は I</"
5112 "etc/nsswitch.conf> で行う。 一つ以上の I<key> 引き数が指定されると、 指定され"
5113 "たキーにマッチするエントリーだけが表示される。 I<key> が指定されなかった場"
5114 "合、 すべてのエントリーが表示される (データベースで列挙 (enumeration) がサ"
5115 "ポートされていない場合を除く)。"
5116
5117 #. type: Plain text
5118 #: build/C/man1/getent.1:49
5119 msgid ""
5120 "The I<database> may be any of those supported by the GNU C Library, listed "
5121 "below:"
5122 msgstr ""
5123 "I<database> には GNU C ライブラリでサポートされているデータベースのいずれかを"
5124 "指定できる。 以下にそのリストを示す。"
5125
5126 #. type: TP
5127 #: build/C/man1/getent.1:50
5128 #, no-wrap
5129 msgid "B<ahosts>"
5130 msgstr "B<ahosts>"
5131
5132 #. type: Plain text
5133 #: build/C/man1/getent.1:71
5134 msgid ""
5135 "When no I<key> is provided, use B<sethostent>(3), B<gethostent>(3), and "
5136 "B<endhostent>(3)  to enumerate the hosts database.  This is identical to "
5137 "using B<hosts>.  When one or more I<key> arguments are provided, pass each "
5138 "I<key> in succession to B<getaddrinfo>(3)  with the address family "
5139 "B<AF_UNSPEC>, enumerating each socket address structure returned."
5140 msgstr ""
5141 "I<key> が指定されなかった場合、 B<sethostent>(3), B<gethostent>(3), "
5142 "B<endhostent>(3) を使用して hosts データベースを列挙する。 これは B<hosts> を"
5143 "使うのと全く同じである。 I<key> 引き数が一つ以上指定された場合は、 それぞれ"
5144 "の I<key> についてアドレスファミリー B<AF_UNSPEC> で B<getaddrinfo>(3) を呼び"
5145 "出し、 返された各々のソケットアドレス構造体を列挙する。"
5146
5147 #. type: TP
5148 #: build/C/man1/getent.1:71
5149 #, no-wrap
5150 msgid "B<ahostsv4>"
5151 msgstr "B<ahostsv4>"
5152
5153 #. type: Plain text
5154 #: build/C/man1/getent.1:77
5155 msgid "Same as B<ahosts>, but use the address family B<AF_INET>."
5156 msgstr ""
5157 "B<ahosts> を同じだが、 アドレスファミリーとして B<AF_INET> を使用する。"
5158
5159 #. type: TP
5160 #: build/C/man1/getent.1:77
5161 #, no-wrap
5162 msgid "B<ahostsv6>"
5163 msgstr "B<ahostsv6>"
5164
5165 #. type: Plain text
5166 #: build/C/man1/getent.1:88
5167 msgid ""
5168 "Same as B<ahosts>, but use the address family B<AF_INET6>.  The call to "
5169 "B<getaddrinfo>(3)  in this case includes the B<AI_V4MAPPED> flag."
5170 msgstr ""
5171 "B<ahosts> を同じだが、 アドレスファミリーとして B<AF_INET6> を使用する。 この"
5172 "場合の B<getaddrinfo>(3) の呼び出しでは B<AI_V4MAPPED> も指定される。"
5173
5174 #. type: TP
5175 #: build/C/man1/getent.1:88 build/C/man5/nsswitch.conf.5:44
5176 #, no-wrap
5177 msgid "B<aliases>"
5178 msgstr "B<aliases>"
5179
5180 #. type: Plain text
5181 #: build/C/man1/getent.1:105
5182 msgid ""
5183 "When no I<key> is provided, use B<setaliasent>(3), B<getaliasent>(3), and "
5184 "B<endaliasent>(3)  to enumerate the aliases database.  When one or more "
5185 "I<key> arguments are provided, pass each I<key> in succession to "
5186 "B<getaliasbyname>(3)  and display the result."
5187 msgstr ""
5188 "I<key> が指定されなかった場合、 B<setaliasent>(3), B<getaliasent>(3), "
5189 "B<endaliasent>(3) を使用して aliases データベースを列挙する。 I<key> 引き数が"
5190 "一つ以上指定された場合は、 それぞれの I<key> についてB<getaliasbyname>(3) を"
5191 "呼び出し、 結果を表示する。"
5192
5193 #. type: TP
5194 #: build/C/man1/getent.1:105 build/C/man5/nsswitch.conf.5:49
5195 #, no-wrap
5196 msgid "B<ethers>"
5197 msgstr "B<ethers>"
5198
5199 #. type: Plain text
5200 #: build/C/man1/getent.1:121
5201 msgid ""
5202 "When one or more I<key> arguments are provided, pass each I<key> in "
5203 "succession to B<ether_aton>(3)  and B<ether_hostton>(3)  until a result is "
5204 "obtained, and display the result.  Enumeration is not supported on "
5205 "B<ethers>, so a I<key> must be provided."
5206 msgstr ""
5207 "I<key> 引き数が一つ以上指定された場合、 結果が得られるまで、 それぞれの "
5208 "I<key> について B<ether_aton>(3) と B<ether_hostton>(3) を順に呼び出し、 結果"
5209 "を表示する。 B<ethers> では列挙はサポートされていない。 したがって、 I<key> "
5210 "は指定しなければならない。"
5211
5212 #. type: TP
5213 #: build/C/man1/getent.1:121 build/C/man5/nsswitch.conf.5:52
5214 #, no-wrap
5215 msgid "B<group>"
5216 msgstr "B<group>"
5217
5218 #. type: Plain text
5219 #: build/C/man1/getent.1:142
5220 msgid ""
5221 "When no I<key> is provided, use B<setgrent>(3), B<getgrent>(3), and "
5222 "B<endgrent>(3)  to enumerate the group database.  When one or more I<key> "
5223 "arguments are provided, pass each numeric I<key> to B<getgrgid>(3)  and each "
5224 "nonnumeric I<key> to B<getgrnam>(3)  and display the result."
5225 msgstr ""
5226 "I<key> が指定されなかった場合、 B<setgrent>(3), B<getgrent>(3), B<endgrent>"
5227 "(3) を使用して group データベースを列挙する。 I<key> 引き数が一つ以上指定され"
5228 "た場合は、 それぞれの I<key> について、 数値であれば B<getgrgid>(3) を、 数値"
5229 "以外であれば B<getgrnam>(3) を呼び出し、 結果を表示する。"
5230
5231 #. type: TP
5232 #: build/C/man1/getent.1:142
5233 #, no-wrap
5234 msgid "B<gshadow>"
5235 msgstr "B<gshadow>"
5236
5237 #. type: Plain text
5238 #: build/C/man1/getent.1:159
5239 msgid ""
5240 "When no I<key> is provided, use B<setsgent>(3), B<getsgent>(3), and "
5241 "B<endsgent>(3)  to enumerate the gshadow database.  When one or more I<key> "
5242 "arguments are provided, pass each I<key> in succession to B<getsgnam>(3)  "
5243 "and display the result."
5244 msgstr ""
5245 "I<key> が指定されなかった場合、 B<setsgent>(3), B<getsgent>(3), B<endsgent>"
5246 "(3) を使用して gshadow データベースを列挙する。 I<key> 引き数が一つ以上指定さ"
5247 "れた場合は、 それぞれの I<key> について B<getsgnam>(3) を呼び出し、 結果を表"
5248 "示する。"
5249
5250 #. type: TP
5251 #: build/C/man1/getent.1:159 build/C/man5/nsswitch.conf.5:57
5252 #, no-wrap
5253 msgid "B<hosts>"
5254 msgstr "B<hosts>"
5255
5256 #. type: Plain text
5257 #: build/C/man1/getent.1:182
5258 msgid ""
5259 "When no I<key> is provided, use B<sethostent>(3), B<gethostent>(3), and "
5260 "B<endhostent>(3)  to enumerate the hosts database.  When one or more I<key> "
5261 "arguments are provided, pass each I<key> to B<gethostbyaddr>(3)  or "
5262 "B<gethostbyname2>(3), depending on whether a call to B<inet_pton>(3)  "
5263 "indicates that the I<key> is an IPv6 or IPv4 address or not, and display the "
5264 "result."
5265 msgstr ""
5266 "I<key> が指定されなかった場合、 B<sethostent>(3), B<gethostent>(3), "
5267 "B<endhostent>(3) を使用して hosts データベースを列挙する。 I<key> 引き数が一"
5268 "つ以上指定された場合は、 それぞれの I<key> について B<gethostbyaddr>(3) か "
5269 "B<gethostbyname2>(3) を呼び出し、 結果を表示する。 B<gethostbyaddr>(3) か "
5270 "B<gethostbyname2>(3) のどちらを呼び出すかは、B<inet_pton>(3) の呼び出しで、 "
5271 "I<key> が IPv6 や IPv4 アドレスか、 そうでないか、 判定され、その結果によって"
5272 "決まる。"
5273
5274 #. type: TP
5275 #: build/C/man1/getent.1:182 build/C/man5/nsswitch.conf.5:62
5276 #, no-wrap
5277 msgid "B<initgroups>"
5278 msgstr "B<initgroups>"
5279
5280 #. type: Plain text
5281 #: build/C/man1/getent.1:196
5282 msgid ""
5283 "When one or more I<key> arguments are provided, pass each I<key> in "
5284 "succession to B<getgrouplist>(3)  and display the result.  Enumeration is "
5285 "not supported on B<initgroups>, so a I<key> must be provided."
5286 msgstr ""
5287 "I<key> 引き数が一つ以上指定された場合、 結果が得られるまで、 それぞれの "
5288 "I<key> について B<getgrouplist>(3) を呼び出し、 結果を表示する。 "
5289 "B<initgroups> では列挙はサポートされていない。 したがって、 I<key> は指定しな"
5290 "ければならない。"
5291
5292 #. type: TP
5293 #: build/C/man1/getent.1:196 build/C/man5/nsswitch.conf.5:67
5294 #, no-wrap
5295 msgid "B<netgroup>"
5296 msgstr "B<netgroup>"
5297
5298 #. type: Plain text
5299 #: build/C/man1/getent.1:222
5300 msgid ""
5301 "When one I<key> is provided, pass the I<key> to B<setnetgrent>(3)  and, "
5302 "using B<getnetgrent>(3)  display the resulting string triple (I<hostname>, "
5303 "I<username>, I<domainname>).  Alternatively, three I<keys> may be provided, "
5304 "which are interpreted as the I<hostname>, I<username> and I<domainname> to "
5305 "match to a netgroup name via B<innetgr>(3).  Enumeration is not supported on "
5306 "B<netgroup>, so either one or three I<keys> must be provided."
5307 msgstr ""
5308 "1 個の I<key> を指定すると、 その I<key> を B<setnetgrent>(3) に渡し、 "
5309 "B<getnetgrent>(3) を使って結果の 3 つ組の文字列 (I<hostname>, I<username>, "
5310 "I<domainname>) を表示する。 代わりに、 3 個の I<key> を指定することもでき"
5311 "る。 3 個の I<key> は I<hostname>, I<username>, I<domainname> と解釈され、 "
5312 "B<innetgr>(3) を使って対応する netgroup があるか照合される。 B<netgroup> では"
5313 "列挙はサポートされていない。 したがって、 1 個か 3 個のいずれかの I<key> を指"
5314 "定しなければならない。"
5315
5316 #. type: TP
5317 #: build/C/man1/getent.1:222 build/C/man5/nsswitch.conf.5:71
5318 #, no-wrap
5319 msgid "B<networks>"
5320 msgstr "B<networks>"
5321
5322 #. type: Plain text
5323 #: build/C/man1/getent.1:243
5324 msgid ""
5325 "When no I<key> is provided, use B<setnetent>(3), B<getnetent>(3), and "
5326 "B<endnetent>(3)  to enumerate the networks database.  When one or more "
5327 "I<key> arguments are provided, pass each numeric I<key> to B<getnetbyaddr>"
5328 "(3)  and each nonnumeric I<key> to B<getnetbyname>(3)  and display the "
5329 "result."
5330 msgstr ""
5331 "I<key> が指定されなかった場合、 B<setnetent>(3), B<getnetent>(3), "
5332 "B<endnetent>(3) を使用して networks データベースを列挙する。 I<key> 引き数が"
5333 "一つ以上指定された場合は、 それぞれの I<key> について、 数値であれば "
5334 "B<getnetbyaddr>(3) を、 数値以外であれば B<getnetbyname>(3) を呼び出し、 結果"
5335 "を表示する。"
5336
5337 #. type: TP
5338 #: build/C/man1/getent.1:243 build/C/man5/nsswitch.conf.5:76
5339 #, no-wrap
5340 msgid "B<passwd>"
5341 msgstr "B<passwd>"
5342
5343 #. type: Plain text
5344 #: build/C/man1/getent.1:264
5345 msgid ""
5346 "When no I<key> is provided, use B<setpwent>(3), B<getpwent>(3), and "
5347 "B<endpwent>(3)  to enumerate the passwd database.  When one or more I<key> "
5348 "arguments are provided, pass each numeric I<key> to B<getpwuid>(3)  and each "
5349 "nonnumeric I<key> to B<getpwnam>(3)  and display the result."
5350 msgstr ""
5351 "I<key> が指定されなかった場合、 B<setpwent>(3), B<getpwent>(3), B<endpwent>"
5352 "(3) を使用して passwd データベースを列挙する。 I<key> 引き数が一つ以上指定さ"
5353 "れた場合は、 それぞれの I<key> について、 数値であれば B<getpwgid>(3) を、 数"
5354 "値以外であれば B<getpwnam>(3) を呼び出し、 結果を表示する。"
5355
5356 #. type: TP
5357 #: build/C/man1/getent.1:264 build/C/man5/nsswitch.conf.5:81
5358 #, no-wrap
5359 msgid "B<protocols>"
5360 msgstr "B<protocols>"
5361
5362 #. type: Plain text
5363 #: build/C/man1/getent.1:285
5364 msgid ""
5365 "When no I<key> is provided, use B<setprotoent>(3), B<getprotoent>(3), and "
5366 "B<endprotoent>(3)  to enumerate the protocols database.  When one or more "
5367 "I<key> arguments are provided, pass each numeric I<key> to "
5368 "B<getprotobynumber>(3)  and each nonnumeric I<key> to B<getprotobyname>(3)  "
5369 "and display the result."
5370 msgstr ""
5371 "I<key> が指定されなかった場合、 B<setprotoent>(3), B<getprotoent>(3), "
5372 "B<endprotoent>(3) を使用して protocols データベースを列挙する。 I<key> 引き数"
5373 "が一つ以上指定された場合は、 それぞれの I<key> について、 数値であれば "
5374 "B<getprotobynumber>(3) を、 数値以外であれば B<getprotobyname>(3) を呼び出"
5375 "し、 結果を表示する。"
5376
5377 #. type: TP
5378 #: build/C/man1/getent.1:285 build/C/man5/nsswitch.conf.5:89
5379 #, no-wrap
5380 msgid "B<rpc>"
5381 msgstr "B<rpc>"
5382
5383 #. type: Plain text
5384 #: build/C/man1/getent.1:306
5385 msgid ""
5386 "When no I<key> is provided, use B<setrpcent>(3), B<getrpcent>(3), and "
5387 "B<endrpcent>(3)  to enumerate the rpc database.  When one or more I<key> "
5388 "arguments are provided, pass each numeric I<key> to B<getrpcbynumber>(3)  "
5389 "and each nonnumeric I<key> to B<getrpcbyname>(3)  and display the result."
5390 msgstr ""
5391 "I<key> が指定されなかった場合、 B<setrpcent>(3), B<getrpcent>(3), "
5392 "B<endrpcent>(3) を使用して rpc データベースを列挙する。 I<key> 引き数が一つ以"
5393 "上指定された場合は、 それぞれの I<key> について、 数値であれば "
5394 "B<getrpcbynumber>(3) を、 数値以外であれば B<getrpcbyname>(3) を呼び出し、 結"
5395 "果を表示する。"
5396
5397 #. type: TP
5398 #: build/C/man1/getent.1:306 build/C/man5/nsswitch.conf.5:94
5399 #, no-wrap
5400 msgid "B<services>"
5401 msgstr "B<services>"
5402
5403 #. type: Plain text
5404 #: build/C/man1/getent.1:327
5405 msgid ""
5406 "When no I<key> is provided, use B<setservent>(3), B<getservent>(3), and "
5407 "B<endservent>(3)  to enumerate the services database.  When one or more "
5408 "I<key> arguments are provided, pass each numeric I<key> to B<getservbynumber>"
5409 "(3)  and each nonnumeric I<key> to B<getservbyname>(3)  and display the "
5410 "result."
5411 msgstr ""
5412 "I<key> が指定されなかった場合、 B<setservent>(3), B<getservent>(3), "
5413 "B<endservent>(3) を使用して services データベースを列挙する。 I<key> 引き数が"
5414 "一つ以上指定された場合は、 それぞれの I<key> について、 数値であれば "
5415 "B<getservbynumber>(3) を、 数値以外であれば B<getservbyname>(3) を呼び出し、 "
5416 "結果を表示する。"
5417
5418 #. type: TP
5419 #: build/C/man1/getent.1:327 build/C/man5/nsswitch.conf.5:99
5420 #, no-wrap
5421 msgid "B<shadow>"
5422 msgstr "B<shadow>"
5423
5424 #. type: Plain text
5425 #: build/C/man1/getent.1:344
5426 msgid ""
5427 "When no I<key> is provided, use B<setspent>(3), B<getspent>(3), and "
5428 "B<endspent>(3)  to enumerate the shadow database.  When one or more I<key> "
5429 "arguments are provided, pass each I<key> in succession to B<getspnam>(3)  "
5430 "and display the result."
5431 msgstr ""
5432 "I<key> が指定されなかった場合、 B<setspent>(3), B<getspent>(3), B<endspent>"
5433 "(3) を使用して shadow データベースを列挙する。 I<key> 引き数が一つ以上指定さ"
5434 "れた場合は、 それぞれの I<key> について B<getspnam>(3) を呼び出し、 結果を表"
5435 "示する。"
5436
5437 #. type: SH
5438 #: build/C/man1/getent.1:345
5439 #, no-wrap
5440 msgid "EXIT STATUS"
5441 msgstr "終了ステータス"
5442
5443 #. type: Plain text
5444 #: build/C/man1/getent.1:348
5445 msgid "One of the following exit values can be returned by B<getent>:"
5446 msgstr "B<getent> は以下のいずれかの終了ステータスを返す。"
5447
5448 #. type: TP
5449 #: build/C/man1/getent.1:349
5450 #, no-wrap
5451 msgid "B<0>"
5452 msgstr "B<0>"
5453
5454 #. type: Plain text
5455 #: build/C/man1/getent.1:352
5456 msgid "Command completed successfully."
5457 msgstr "コマンドが正常に完了した。"
5458
5459 #. type: TP
5460 #: build/C/man1/getent.1:352
5461 #, no-wrap
5462 msgid "B<1>"
5463 msgstr "B<1>"
5464
5465 #. type: Plain text
5466 #: build/C/man1/getent.1:357
5467 msgid "Missing arguments, or I<database> unknown."
5468 msgstr "引き数が不足しているか、 知らない I<database> が指定された。"
5469
5470 #. type: TP
5471 #: build/C/man1/getent.1:357
5472 #, no-wrap
5473 msgid "B<2>"
5474 msgstr "B<2>"
5475
5476 #. type: Plain text
5477 #: build/C/man1/getent.1:363
5478 msgid "One or more supplied I<key> could not be found in the I<database>."
5479 msgstr "指定された I<key> が I<database> で見つからなかった。"
5480
5481 #. type: TP
5482 #: build/C/man1/getent.1:363
5483 #, no-wrap
5484 msgid "B<3>"
5485 msgstr "B<3>"
5486
5487 #. type: Plain text
5488 #: build/C/man1/getent.1:367
5489 msgid "Enumeration not supported on this I<database>."
5490 msgstr "この I<database> では列挙はサポートされていない。"
5491
5492 #. type: Plain text
5493 #: build/C/man1/getent.1:370
5494 msgid "B<nsswitch.conf>(5)"
5495 msgstr "B<nsswitch.conf>(5)"
5496
5497 #. type: TH
5498 #: build/C/man3/gethostbyname.3:38
5499 #, no-wrap
5500 msgid "GETHOSTBYNAME"
5501 msgstr "GETHOSTBYNAME"
5502
5503 #. type: TH
5504 #: build/C/man3/gethostbyname.3:38
5505 #, no-wrap
5506 msgid "2014-03-11"
5507 msgstr "2014-03-11"
5508
5509 #. type: Plain text
5510 #: build/C/man3/gethostbyname.3:46
5511 msgid ""
5512 "gethostbyname, gethostbyaddr, sethostent, gethostent, endhostent, h_errno, "
5513 "herror, hstrerror, gethostbyaddr_r, gethostbyname2, gethostbyname2_r, "
5514 "gethostbyname_r, gethostent_r - get network host entry"
5515 msgstr ""
5516 "gethostbyname, gethostbyaddr, sethostent, gethostent, endhostent, h_errno, "
5517 "herror, hstrerror, gethostbyaddr_r, gethostbyname2, gethostbyname2_r, "
5518 "gethostbyname_r, gethostent_r - ネットワーク上のホストのエントリを取得する"
5519
5520 #. type: Plain text
5521 #: build/C/man3/gethostbyname.3:50
5522 #, no-wrap
5523 msgid ""
5524 "B<#include E<lt>netdb.hE<gt>>\n"
5525 "B<extern int h_errno;>\n"
5526 msgstr ""
5527 "B<#include E<lt>netdb.hE<gt>>\n"
5528 "B<extern int h_errno;>\n"
5529
5530 #. type: Plain text
5531 #: build/C/man3/gethostbyname.3:52
5532 #, no-wrap
5533 msgid "B<struct hostent *gethostbyname(const char *>I<name>B<);>\n"
5534 msgstr "B<struct hostent *gethostbyname(const char *>I<name>B<);>\n"
5535
5536 #. type: Plain text
5537 #: build/C/man3/gethostbyname.3:56
5538 #, no-wrap
5539 msgid ""
5540 "B<#include E<lt>sys/socket.hE<gt>>       /* for AF_INET */\n"
5541 "B<struct hostent *gethostbyaddr(const void *>I<addr>B<,>\n"
5542 "B<                              socklen_t >I<len>B<, int >I<type>B<);>\n"
5543 msgstr ""
5544 "B<#include E<lt>sys/socket.hE<gt>>       /* AF_INET を使う場合 */\n"
5545 "B<struct hostent *gethostbyaddr(const void *>I<addr>B<,>\n"
5546 "B<                              socklen_t >I<len>B<, int >I<type>B<);>\n"
5547
5548 #. type: Plain text
5549 #: build/C/man3/gethostbyname.3:58
5550 #, no-wrap
5551 msgid "B<void sethostent(int >I<stayopen>B<);>\n"
5552 msgstr "B<void sethostent(int >I<stayopen>B<);>\n"
5553
5554 #. type: Plain text
5555 #: build/C/man3/gethostbyname.3:60
5556 #, no-wrap
5557 msgid "B<void endhostent(void);>\n"
5558 msgstr "B<void endhostent(void);>\n"
5559
5560 #. type: Plain text
5561 #: build/C/man3/gethostbyname.3:62
5562 #, no-wrap
5563 msgid "B<void herror(const char *>I<s>B<);>\n"
5564 msgstr "B<void herror(const char *>I<s>B<);>\n"
5565
5566 #. type: Plain text
5567 #: build/C/man3/gethostbyname.3:64
5568 #, no-wrap
5569 msgid "B<const char *hstrerror(int >I<err>B<);>\n"
5570 msgstr "B<const char *hstrerror(int >I<err>B<);>\n"
5571
5572 #. type: Plain text
5573 #: build/C/man3/gethostbyname.3:66
5574 #, no-wrap
5575 msgid "/* System V/POSIX extension */\n"
5576 msgstr "/* System V/POSIX 拡張 */\n"
5577
5578 #. type: Plain text
5579 #: build/C/man3/gethostbyname.3:68
5580 #, no-wrap
5581 msgid "B<struct hostent *gethostent(void);>\n"
5582 msgstr "B<struct hostent *gethostent(void);>\n"
5583
5584 #. type: Plain text
5585 #: build/C/man3/gethostbyname.3:72
5586 #, no-wrap
5587 msgid "B<struct hostent *gethostbyname2(const char *>I<name>B<, int >I<af>B<);>\n"
5588 msgstr "B<struct hostent *gethostbyname2(const char *>I<name>B<, int >I<af>B<);>\n"
5589
5590 #. type: Plain text
5591 #: build/C/man3/gethostbyname.3:76
5592 #, no-wrap
5593 msgid ""
5594 "B<int gethostent_r(>\n"
5595 "B<        struct hostent *>I<ret>B<, char *>I<buf>B<, size_t >I<buflen>B<,>\n"
5596 "B<        struct hostent **>I<result>B<, int *>I<h_errnop>B<);>\n"
5597 msgstr ""
5598 "B<int gethostent_r(>\n"
5599 "B<        struct hostent *>I<ret>B<, char *>I<buf>B<, size_t >I<buflen>B<,>\n"
5600 "B<        struct hostent **>I<result>B<, int *>I<h_errnop>B<);>\n"
5601
5602 #. type: Plain text
5603 #: build/C/man3/gethostbyname.3:80
5604 #, no-wrap
5605 msgid ""
5606 "B<int gethostbyaddr_r(const void *>I<addr>B<, socklen_t >I<len>B<, int >I<type>B<,>\n"
5607 "B<        struct hostent *>I<ret>B<, char *>I<buf>B<, size_t >I<buflen>B<,>\n"
5608 "B<        struct hostent **>I<result>B<, int *>I<h_errnop>B<);>\n"
5609 msgstr ""
5610 "B<int gethostbyaddr_r(const void *>I<addr>B<, socklen_t >I<len>B<, int >I<type>B<,>\n"
5611 "B<        struct hostent *>I<ret>B<, char *>I<buf>B<, size_t >I<buflen>B<,>\n"
5612 "B<        struct hostent **>I<result>B<, int *>I<h_errnop>B<);>\n"
5613
5614 #. type: Plain text
5615 #: build/C/man3/gethostbyname.3:84
5616 #, no-wrap
5617 msgid ""
5618 "B<int gethostbyname_r(const char *>I<name>B<,>\n"
5619 "B<        struct hostent *>I<ret>B<, char *>I<buf>B<, size_t >I<buflen>B<,>\n"
5620 "B<        struct hostent **>I<result>B<, int *>I<h_errnop>B<);>\n"
5621 msgstr ""
5622 "B<int gethostbyname_r(const char *>I<name>B<,>\n"
5623 "B<        struct hostent *>I<ret>B<, char *>I<buf>B<, size_t >I<buflen>B<,>\n"
5624 "B<        struct hostent **>I<result>B<, int *>I<h_errnop>B<);>\n"
5625
5626 #. type: Plain text
5627 #: build/C/man3/gethostbyname.3:88
5628 #, no-wrap
5629 msgid ""
5630 "B<int gethostbyname2_r(const char *>I<name>B<, int >I<af,>\n"
5631 "B<        struct hostent *>I<ret>B<, char *>I<buf>B<, size_t >I<buflen>B<,>\n"
5632 "B<        struct hostent **>I<result>B<, int *>I<h_errnop>B<);>\n"
5633 msgstr ""
5634 "B<int gethostbyname2_r(const char *>I<name>B<, int >I<af,>\n"
5635 "B<        struct hostent *>I<ret>B<, char *>I<buf>B<, size_t >I<buflen>B<,>\n"
5636 "B<        struct hostent **>I<result>B<, int *>I<h_errnop>B<);>\n"
5637
5638 #. type: Plain text
5639 #: build/C/man3/gethostbyname.3:102
5640 msgid ""
5641 "B<gethostbyname2>(), B<gethostent_r>(), B<gethostbyaddr_r>(), "
5642 "B<gethostbyname_r>(), B<gethostbyname2_r>():"
5643 msgstr ""
5644 "B<gethostbyname2>(), B<gethostent_r>(), B<gethostbyaddr_r>(), "
5645 "B<gethostbyname_r>(), B<gethostbyname2_r>():"
5646
5647 #. type: Plain text
5648 #: build/C/man3/gethostbyname.3:104 build/C/man3/gethostbyname.3:112
5649 #: build/C/man3/getnetent_r.3:60 build/C/man3/getprotoent_r.3:57
5650 #: build/C/man3/getservent_r.3:57
5651 msgid "_BSD_SOURCE || _SVID_SOURCE"
5652 msgstr "_BSD_SOURCE || _SVID_SOURCE"
5653
5654 #. type: Plain text
5655 #: build/C/man3/gethostbyname.3:108
5656 msgid "B<herror>(), B<hstrerror>():"
5657 msgstr "B<herror>(), B<hstrerror>():"
5658
5659 #. type: TP
5660 #: build/C/man3/gethostbyname.3:109
5661 #, no-wrap
5662 msgid "Since glibc 2.8:"
5663 msgstr "glibc 2.8 以降:"
5664
5665 #. type: TP
5666 #: build/C/man3/gethostbyname.3:112
5667 #, no-wrap
5668 msgid "Before glibc 2.8:"
5669 msgstr "glibc 2.8 より前:"
5670
5671 #. type: Plain text
5672 #: build/C/man3/gethostbyname.3:115 build/C/man3/gethostbyname.3:126
5673 msgid "none"
5674 msgstr "なし"
5675
5676 #. type: Plain text
5677 #: build/C/man3/gethostbyname.3:118
5678 msgid "B<h_errno>:"
5679 msgstr "B<h_errno>:"
5680
5681 #. type: TP
5682 #: build/C/man3/gethostbyname.3:119
5683 #, no-wrap
5684 msgid "Since glibc 2.12:"
5685 msgstr "glibc 2.12 以降:"
5686
5687 #. type: Plain text
5688 #: build/C/man3/gethostbyname.3:123
5689 #, no-wrap
5690 msgid ""
5691 "_BSD_SOURCE || _SVID_SOURCE ||\n"
5692 "    (_POSIX_C_SOURCE E<lt> 200809L && _XOPEN_SOURCE E<lt> 700)\n"
5693 msgstr ""
5694 "_BSD_SOURCE || _SVID_SOURCE ||\n"
5695 "    (_POSIX_C_SOURCE E<lt> 200809L && _XOPEN_SOURCE E<lt> 700)\n"
5696
5697 #. type: TP
5698 #: build/C/man3/gethostbyname.3:123
5699 #, no-wrap
5700 msgid "Before glibc 2.12:"
5701 msgstr "glibc 2.12 より前:"
5702
5703 #. type: Plain text
5704 #: build/C/man3/gethostbyname.3:143
5705 msgid ""
5706 "The B<gethostbyname*>(), B<gethostbyaddr*>(), B<herror>(), and B<hstrerror>"
5707 "()  functions are obsolete.  Applications should use B<getaddrinfo>(3), "
5708 "B<getnameinfo>(3), and B<gai_strerror>(3)  instead."
5709 msgstr ""
5710 "関数 B<gethostbyname*>(), B<gethostbyaddr*>(), B<herror>(), B<hstrerror> は過"
5711 "去のものである。 アプリケーションは、代わりに B<getaddrinfo>(3), "
5712 "B<getnameinfo>(3), B<gai_strerror>(3) を使用すること。"
5713
5714 #. type: Plain text
5715 #: build/C/man3/gethostbyname.3:184
5716 msgid ""
5717 "The B<gethostbyname>()  function returns a structure of type I<hostent> for "
5718 "the given host I<name>.  Here I<name> is either a hostname, or an IPv4 "
5719 "address in standard dot notation (as for B<inet_addr>(3)), or an IPv6 "
5720 "address in colon (and possibly dot) notation.  (See RFC\\ 1884 for the "
5721 "description of IPv6 addresses.)  If I<name> is an IPv4 or IPv6 address, no "
5722 "lookup is performed and B<gethostbyname>()  simply copies I<name> into the "
5723 "I<h_name> field and its I<struct in_addr> equivalent into the I<h_addr_list"
5724 "[0]> field of the returned I<hostent> structure.  If I<name> doesn't end in "
5725 "a dot and the environment variable B<HOSTALIASES> is set, the alias file "
5726 "pointed to by B<HOSTALIASES> will first be searched for I<name> (see "
5727 "B<hostname>(7)  for the file format).  The current domain and its parents "
5728 "are searched unless I<name> ends in a dot."
5729 msgstr ""
5730 "B<gethostbyname>()  関数は与えられたホスト名 I<name> に対応する構造体 "
5731 "I<hostent> を返す。 I<name> にはホスト名、ドット区切りの IPv4 アドレス "
5732 "(B<inet_addr>(3)  参照)、コロン区切りの IPv6 アドレス (おそらくドット区切りで"
5733 "も大丈夫)  のいずれかを指定する (IPv6 アドレスの記述方法については RFC\\ "
5734 "1884 を参考にしてほしい)。 I<name> が IPv4 か IPv6 のアドレスだった場合、 名"
5735 "前解決 (lookup) は行われない。その場合には、 B<gethostbyname>()  は I<name> "
5736 "をそのまま I<hostent> 構造体の I<h_name> フィールドにコピーし、 さらに "
5737 "I<name> を I<struct in_addr> 形式で表したデータを I<hostent> 構造体の "
5738 "I<h_addr_list[0]> フィールドに入れて、その I<hostent> 構造体を返す。 I<name> "
5739 "がドットで終了していて、かつ環境変数 B<HOSTALIASES> が設定されている場合、ま"
5740 "ず B<HOSTALIASES> で指定されているエイリアスファイルから I<name> のエントリが"
5741 "検索される (ファイルのフォーマットについては B<hostname>(7)  を参照のこと)。 "
5742 "I<name> がドットで終了していなければ、現在のドメインとその親ドメインが検索さ"
5743 "れる。"
5744
5745 #. type: Plain text
5746 #: build/C/man3/gethostbyname.3:200
5747 msgid ""
5748 "The B<gethostbyaddr>()  function returns a structure of type I<hostent> for "
5749 "the given host address I<addr> of length I<len> and address type I<type>.  "
5750 "Valid address types are B<AF_INET> and B<AF_INET6>.  The host address "
5751 "argument is a pointer to a struct of a type depending on the address type, "
5752 "for example a I<struct in_addr *> (probably obtained via a call to "
5753 "B<inet_addr>(3))  for address type B<AF_INET>."
5754 msgstr ""
5755 "B<gethostbyaddr>()  関数は与えられたホストアドレス I<addr> (長さ I<len>、 タ"
5756 "イプ I<type>) に対応する構造体 I<hostent> を返す。 用いることのできるタイプ"
5757 "は B<AF_INET> と B<AF_INET6> である。 ホストアドレス引き数はアドレスタイプに"
5758 "依存した 構造体へのポインタである。 例えば、アドレスタイプ B<AF_INET> に対し"
5759 "ては (B<inet_addr>(3)  の呼び出しで得られる)  I<struct in_addr *> である。"
5760
5761 #. type: Plain text
5762 #: build/C/man3/gethostbyname.3:207
5763 msgid ""
5764 "The B<sethostent>()  function specifies, if I<stayopen> is true (1), that a "
5765 "connected TCP socket should be used for the name server queries and that the "
5766 "connection should remain open during successive queries.  Otherwise, name "
5767 "server queries will use UDP datagrams."
5768 msgstr ""
5769 "B<sethostent>()  関数は、ネームサーバへの接続形態を指定する。 I<stayopen> が"
5770 "真 (1) ならば、ネームサーバへの問い合わせには、 接続された TCP ソケットを用"
5771 "い、連続した問い合わせの間に接続を維持する。 偽ならばネームサーバへの問い合わ"
5772 "せに UDP データグラムを用いる。"
5773
5774 #. type: Plain text
5775 #: build/C/man3/gethostbyname.3:212
5776 msgid ""
5777 "The B<endhostent>()  function ends the use of a TCP connection for name "
5778 "server queries."
5779 msgstr ""
5780 "B<endhostent>()  関数はネームサーバへの問い合わせに用いた TCP 接続の利用を終"
5781 "了する。"
5782
5783 #. type: Plain text
5784 #: build/C/man3/gethostbyname.3:217
5785 msgid ""
5786 "The (obsolete)  B<herror>()  function prints the error message associated "
5787 "with the current value of I<h_errno> on I<stderr>."
5788 msgstr ""
5789 "(廃止予定の)  B<herror>()  関数は現在の I<h_errno> に対応するエラーメッセージ"
5790 "を標準エラー I<stderr> に出力する。"
5791
5792 #. type: Plain text
5793 #: build/C/man3/gethostbyname.3:222
5794 msgid ""
5795 "The (obsolete)  B<hstrerror>()  function takes an error number (typically "
5796 "I<h_errno>) and returns the corresponding message string."
5797 msgstr ""
5798 "(廃止予定の)  B<hstrerror>()  関数はエラー番号 (通常は I<h_errno>) を引き数に"
5799 "取り、 対応するエラーメッセージ文字列を返す。"
5800
5801 #.  (See
5802 #.  .BR resolv+ (8)).
5803 #. type: Plain text
5804 #: build/C/man3/gethostbyname.3:239
5805 msgid ""
5806 "The domain name queries carried out by B<gethostbyname>()  and "
5807 "B<gethostbyaddr>()  use a combination of any or all of the name server "
5808 "B<named>(8), a broken out line from I</etc/hosts>, and the Network "
5809 "Information Service (NIS or YP), depending upon the contents of the I<order> "
5810 "line in I</etc/host.conf>.  The default action is to query B<named>(8), "
5811 "followed by I</etc/hosts>."
5812 msgstr ""
5813 "B<gethostbyname>()  と B<gethostbyaddr>()  によって実行されるドメイン名の問い"
5814 "合わせでは、ネームサーバ B<named>(8)、 I</etc/hosts> のデータ行、および "
5815 "Network Information Service (NIS または YP)  が組み合わせて使用される。何が使"
5816 "用されるかは、 I</etc/host.conf> の I<order> 行の内容により決まる。 デフォル"
5817 "トでは、まず B<named>(8)  に問い合わせを行い、次いで I</etc/hosts> を参照す"
5818 "る。"
5819
5820 #. type: Plain text
5821 #: build/C/man3/gethostbyname.3:241
5822 msgid "The I<hostent> structure is defined in I<E<lt>netdb.hE<gt>> as follows:"
5823 msgstr "I<hostent> 構造体は I<E<lt>netdb.hE<gt>> で以下のように定義されている:"
5824
5825 #. type: Plain text
5826 #: build/C/man3/gethostbyname.3:253
5827 #, no-wrap
5828 msgid ""
5829 "struct hostent {\n"
5830 "    char  *h_name;            /* official name of host */\n"
5831 "    char **h_aliases;         /* alias list */\n"
5832 "    int    h_addrtype;        /* host address type */\n"
5833 "    int    h_length;          /* length of address */\n"
5834 "    char **h_addr_list;       /* list of addresses */\n"
5835 "}\n"
5836 "#define h_addr h_addr_list[0] /* for backward compatibility */\n"
5837 msgstr ""
5838 "struct hostent {\n"
5839 "    char  *h_name;            /* official name of host */\n"
5840 "    char **h_aliases;         /* alias list */\n"
5841 "    int    h_addrtype;        /* host address type */\n"
5842 "    int    h_length;          /* length of address */\n"
5843 "    char **h_addr_list;       /* list of addresses */\n"
5844 "}\n"
5845 "#define h_addr h_addr_list[0] /* 過去との互換性のため */\n"
5846
5847 #. type: Plain text
5848 #: build/C/man3/gethostbyname.3:257
5849 msgid "The members of the I<hostent> structure are:"
5850 msgstr "I<hostent> 構造体のメンバは以下の通り。"
5851
5852 #. type: TP
5853 #: build/C/man3/gethostbyname.3:257 build/C/man3/getipnodebyname.3:210
5854 #, no-wrap
5855 msgid "I<h_name>"
5856 msgstr "I<h_name>"
5857
5858 #. type: Plain text
5859 #: build/C/man3/gethostbyname.3:260
5860 msgid "The official name of the host."
5861 msgstr "ホストの正式名 (official name)。"
5862
5863 #. type: TP
5864 #: build/C/man3/gethostbyname.3:260 build/C/man3/getipnodebyname.3:213
5865 #, no-wrap
5866 msgid "I<h_aliases>"
5867 msgstr "I<h_aliases>"
5868
5869 #. type: Plain text
5870 #: build/C/man3/gethostbyname.3:263
5871 msgid ""
5872 "An array of alternative names for the host, terminated by a null pointer."
5873 msgstr "ホストの別名の配列。配列は NULL ポインタで終端される。"
5874
5875 #. type: TP
5876 #: build/C/man3/gethostbyname.3:263 build/C/man3/getipnodebyname.3:217
5877 #, no-wrap
5878 msgid "I<h_addrtype>"
5879 msgstr "I<h_addrtype>"
5880
5881 #. type: Plain text
5882 #: build/C/man3/gethostbyname.3:270
5883 msgid "The type of address; always B<AF_INET> or B<AF_INET6> at present."
5884 msgstr "アドレスのタイプ。現在はすべて B<AF_INET> または B<AF_INET6> である。"
5885
5886 #. type: TP
5887 #: build/C/man3/gethostbyname.3:270 build/C/man3/getipnodebyname.3:239
5888 #, no-wrap
5889 msgid "I<h_length>"
5890 msgstr "I<h_length>"
5891
5892 #. type: Plain text
5893 #: build/C/man3/gethostbyname.3:273
5894 msgid "The length of the address in bytes."
5895 msgstr "バイト単位で表したアドレスの長さ。"
5896
5897 #. type: TP
5898 #: build/C/man3/gethostbyname.3:273 build/C/man3/getipnodebyname.3:253
5899 #, no-wrap
5900 msgid "I<h_addr_list>"
5901 msgstr "I<h_addr_list>"
5902
5903 #. type: Plain text
5904 #: build/C/man3/gethostbyname.3:277
5905 msgid ""
5906 "An array of pointers to network addresses for the host (in network byte "
5907 "order), terminated by a null pointer."
5908 msgstr ""
5909 "ホストのネットワークアドレスへのポインタの配列。 配列は NULL ポインタで終端さ"
5910 "れる。 ネットワークアドレスはネットワークバイトオーダ形式である。"
5911
5912 #. type: TP
5913 #: build/C/man3/gethostbyname.3:277
5914 #, no-wrap
5915 msgid "I<h_addr>"
5916 msgstr "I<h_addr>"
5917
5918 #. type: Plain text
5919 #: build/C/man3/gethostbyname.3:280
5920 msgid "The first address in I<h_addr_list> for backward compatibility."
5921 msgstr ""
5922 "I<h_addr_list> の最初のアドレス。過去との互換性を保つためのものである。"
5923
5924 #. type: Plain text
5925 #: build/C/man3/gethostbyname.3:292
5926 msgid ""
5927 "The B<gethostbyname>()  and B<gethostbyaddr>()  functions return the "
5928 "I<hostent> structure or a null pointer if an error occurs.  On error, the "
5929 "I<h_errno> variable holds an error number.  When non-NULL, the return value "
5930 "may point at static data, see the notes below."
5931 msgstr ""
5932 "B<gethostbyname>()  および B<gethostbyaddr>()  関数は I<hostent> 構造体を返"
5933 "す。エラーが起こったら NULL ポインタを返す。エラーの際には I<h_errno> 変数が"
5934 "エラーの番号を保持する。 返り値が NULL でない場合、静的データをポインタで指し"
5935 "ていることもある。 以下の「注意」を参照すること。"
5936
5937 #. type: Plain text
5938 #: build/C/man3/gethostbyname.3:294
5939 msgid "The variable I<h_errno> can have the following values:"
5940 msgstr "I<h_errno> 変数は以下の値を取りうる。"
5941
5942 #. type: TP
5943 #: build/C/man3/gethostbyname.3:294 build/C/man3/getipnodebyname.3:190
5944 #, no-wrap
5945 msgid "B<HOST_NOT_FOUND>"
5946 msgstr "B<HOST_NOT_FOUND>"
5947
5948 #. type: Plain text
5949 #: build/C/man3/gethostbyname.3:297
5950 msgid "The specified host is unknown."
5951 msgstr "指定したホストが見つからない。"
5952
5953 #. type: TP
5954 #: build/C/man3/gethostbyname.3:297
5955 #, no-wrap
5956 msgid "B<NO_ADDRESS> or B<NO_DATA>"
5957 msgstr "B<NO_ADDRESS  または  NO_DATA>"
5958
5959 #. type: Plain text
5960 #: build/C/man3/gethostbyname.3:300
5961 msgid "The requested name is valid but does not have an IP address."
5962 msgstr "指定した名前は有効だが IP アドレスを持っていない。"
5963
5964 #. type: TP
5965 #: build/C/man3/gethostbyname.3:300 build/C/man3/getipnodebyname.3:199
5966 #, no-wrap
5967 msgid "B<NO_RECOVERY>"
5968 msgstr "B<NO_RECOVERY>"
5969
5970 #. type: Plain text
5971 #: build/C/man3/gethostbyname.3:303
5972 msgid "A nonrecoverable name server error occurred."
5973 msgstr "ネームサーバの復旧不能なエラーが起こった。"
5974
5975 #. type: TP
5976 #: build/C/man3/gethostbyname.3:303 build/C/man3/getipnodebyname.3:202
5977 #, no-wrap
5978 msgid "B<TRY_AGAIN>"
5979 msgstr "B<TRY_AGAIN>"
5980
5981 #. type: Plain text
5982 #: build/C/man3/gethostbyname.3:307
5983 msgid ""
5984 "A temporary error occurred on an authoritative name server.  Try again later."
5985 msgstr ""
5986 "authoritative なネームサーバで一時的なエラーが起こった。 時間をおいてもう一度"
5987 "試すこと。"
5988
5989 #. type: TP
5990 #: build/C/man3/gethostbyname.3:308 build/C/man5/host.conf.5:181
5991 #, no-wrap
5992 msgid "I</etc/host.conf>"
5993 msgstr "I</etc/host.conf>"
5994
5995 #. type: Plain text
5996 #: build/C/man3/gethostbyname.3:311
5997 msgid "resolver configuration file"
5998 msgstr "名前解決の設定ファイル"
5999
6000 #. type: Plain text
6001 #: build/C/man3/gethostbyname.3:311 build/C/man5/host.conf.5:187
6002 #: build/C/man5/hosts.5:88
6003 #, no-wrap
6004 msgid "I</etc/hosts>"
6005 msgstr "I</etc/hosts>"
6006
6007 #. type: Plain text
6008 #: build/C/man3/gethostbyname.3:314
6009 msgid "host database file"
6010 msgstr "ホストのデータベースファイル"
6011
6012 #. type: Plain text
6013 #: build/C/man3/gethostbyname.3:314 build/C/man5/nsswitch.conf.5:306
6014 #: build/C/man3/setnetgrent.3:92
6015 #, no-wrap
6016 msgid "I</etc/nsswitch.conf>"
6017 msgstr "I</etc/nsswitch.conf>"
6018
6019 #. type: Plain text
6020 #: build/C/man3/gethostbyname.3:317
6021 msgid "name service switch configuration"
6022 msgstr "ネームサービス切替設定"
6023
6024 #. type: Plain text
6025 #: build/C/man3/gethostbyname.3:341
6026 msgid ""
6027 "POSIX.1-2001 specifies B<gethostbyname>(), B<gethostbyaddr>(), B<sethostent>"
6028 "(), B<endhostent>(), B<gethostent>(), and I<h_errno>; B<gethostbyname>(), "
6029 "B<gethostbyaddr>(), and I<h_errno> are marked obsolescent in that standard.  "
6030 "POSIX.1-2008 removes the specifications of B<gethostbyname>(), "
6031 "B<gethostbyaddr>(), and I<h_errno>, recommending the use of B<getaddrinfo>"
6032 "(3)  and B<getnameinfo>(3)  instead."
6033 msgstr ""
6034 "POSIX.1-2001 では、 B<gethostbyname>(), B<gethostbyaddr>(), B<sethostent>(), "
6035 "B<endhostent>(), B<gethostent>(), I<h_errno> が規定されており、 "
6036 "B<gethostbyaddr>()  と B<gethostbyname>()  は廃止予定であるとされている。 "
6037 "POSIX.1-2008 では B<gethostbyname>(), B<gethostbyaddr>(), I<h_errno> の仕様が"
6038 "削除されている。 代わりに、 B<getaddrinfo>(3)  と B<getnameinfo>(3)  の使用が"
6039 "推奨されている。"
6040
6041 #. type: Plain text
6042 #: build/C/man3/gethostbyname.3:351
6043 msgid ""
6044 "The functions B<gethostbyname>()  and B<gethostbyaddr>()  may return "
6045 "pointers to static data, which may be overwritten by later calls.  Copying "
6046 "the I<struct hostent> does not suffice, since it contains pointers; a deep "
6047 "copy is required."
6048 msgstr ""
6049 "B<gethostbyname>()  および B<gethostbyaddr>()  関数は静的データへのポインタを"
6050 "返す。 このポインタは、その後の呼び出しで上書きされるかもしれない。 "
6051 "I<hostent> 構造体はポインタを含んでいるので、構造体のコピーだけでは不十分であ"
6052 "る; より深いコピーが必要である。"
6053
6054 #. type: Plain text
6055 #: build/C/man3/gethostbyname.3:375
6056 msgid ""
6057 "In the original BSD implementation the I<len> argument of B<gethostbyname>"
6058 "()  was an I<int>.  The SUSv2 standard is buggy and declares the I<len> "
6059 "argument of B<gethostbyaddr>()  to be of type I<size_t>.  (That is wrong, "
6060 "because it has to be I<int>, and I<size_t> is not.  POSIX.1-2001 makes it "
6061 "I<socklen_t>, which is OK.)  See also B<accept>(2)."
6062 msgstr ""
6063 "オリジナルの BSD の実装では、 B<gethostbyname>()  の I<len> 引き数は I<int> "
6064 "であった。 SUSv2 標準はバグが多く、 B<gethostbyaddr>()  の I<len> パラメータ"
6065 "を I<size_t> 型として宣言している。 (これは誤りで、 I<size_t> 型ではなく "
6066 "I<int> 型でなければならない。 POSIX.1-2001 ではこれを I<socklen_t> としている"
6067 "が、これは OK。)  B<accept>(2)  も参照。"
6068
6069 #. type: Plain text
6070 #: build/C/man3/gethostbyname.3:381
6071 msgid ""
6072 "The BSD prototype for B<gethostbyaddr>()  uses I<const char\\ *> for the "
6073 "first argument."
6074 msgstr ""
6075 "B<gethostbyaddr>()  の BSD のプロトタイプは、最初の引き数として I<const char"
6076 "\\ *> を使う。"
6077
6078 #. type: SS
6079 #: build/C/man3/gethostbyname.3:381
6080 #, no-wrap
6081 msgid "System V/POSIX extension"
6082 msgstr "System V/POSIX 拡張"
6083
6084 #.  e.g., Linux, FreeBSD, UnixWare, HP-UX
6085 #.  e.g., FreeBSD, AIX
6086 #. type: Plain text
6087 #: build/C/man3/gethostbyname.3:398
6088 msgid ""
6089 "POSIX requires the B<gethostent>()  call, that should return the next entry "
6090 "in the host data base.  When using DNS/BIND this does not make much sense, "
6091 "but it may be reasonable if the host data base is a file that can be read "
6092 "line by line.  On many systems a routine of this name reads from the file I</"
6093 "etc/hosts>.  It may be available only when the library was built without DNS "
6094 "support.  The glibc version will ignore ipv6 entries.  This function is not "
6095 "reentrant, and glibc adds a reentrant version B<gethostent_r>()."
6096 msgstr ""
6097 "POSIX では、 B<gethostent>()  が必須とされている。 この関数はホストデータベー"
6098 "スの次のエントリを返す。 DNS/BIND を使う場合はあまり意味を持たないが、 ホスト"
6099 "データベースが 1 行ずつ読み込まれるファイルである場合は意味がある。 多くのシ"
6100 "ステムでは、この名前のルーチンはファイル I</etc/hosts> を読み込む。 DNS サ"
6101 "ポートなしでライブラリがビルドされた場合にのみ利用可能である。 glibc 版は "
6102 "ipv6 エントリを無視する。 この関数はリエントラント (reentrant) ではなく、 "
6103 "glibc にはリエントラント版の B<gethostent_r>()  が追加された。"
6104
6105 #. type: SS
6106 #: build/C/man3/gethostbyname.3:398
6107 #, no-wrap
6108 msgid "GNU extensions"
6109 msgstr "GNU 拡張"
6110
6111 #. type: Plain text
6112 #: build/C/man3/gethostbyname.3:404
6113 msgid ""
6114 "Glibc2 also has a B<gethostbyname2>()  that works like B<gethostbyname>(), "
6115 "but permits to specify the address family to which the address must belong."
6116 msgstr ""
6117 "glibc2 には B<gethostbyname2>()  もあり、 B<gethostbyname>()  と同じように動"
6118 "作するが、 こちらはアドレスが属するアドレスファミリーを指定することができる。"
6119
6120 #. type: Plain text
6121 #: build/C/man3/gethostbyname.3:438
6122 msgid ""
6123 "Glibc2 also has reentrant versions B<gethostent_r>(), B<gethostbyaddr_r>(), "
6124 "B<gethostbyname_r>()  and B<gethostbyname2_r>().  The caller supplies a "
6125 "I<hostent> structure I<ret> which will be filled in on success, and a "
6126 "temporary work buffer I<buf> of size I<buflen>.  After the call, I<result> "
6127 "will point to the result on success.  In case of an error or if no entry is "
6128 "found I<result> will be NULL.  The functions return 0 on success and a "
6129 "nonzero error number on failure.  In addition to the errors returned by the "
6130 "nonreentrant versions of these functions, if I<buf> is too small, the "
6131 "functions will return B<ERANGE>, and the call should be retried with a "
6132 "larger buffer.  The global variable I<h_errno> is not modified, but the "
6133 "address of a variable in which to store error numbers is passed in "
6134 "I<h_errnop>."
6135 msgstr ""
6136 "glibc2 にはリエントラントな B<gethostent_r>(), B<gethostbyaddr_r>(), "
6137 "B<gethostbyname_r>()  と B<gethostbyname2_r>()  もある。 呼び出し側は、成功時"
6138 "に結果が格納される I<hostent> 構造体 I<ret> と、大きさ I<buflen> の一時的な作"
6139 "業バッファ I<buf> を提供する。 コール終了後、成功した場合 I<result> は結果を"
6140 "指している。 エラーの場合、またはエントリが見つからなかった場合、 I<result> "
6141 "は NULL になる。 これらの関数は、成功した場合 0 を返し、失敗の場合は 0 以外の"
6142 "エラー番号を返す。 これらの関数のリエントラントでないバージョンが返すエラーに"
6143 "加えて、 これらの関数は、 I<buf> が小さすぎた場合に B<ERANGE> を返す。この場"
6144 "合はもっと大きなバッファを用意して 関数呼び出しを再度行うべきである。 大域変"
6145 "数 I<h_errno> は変更されないが、エラー番号を格納する変数のアドレスが "
6146 "I<h_errnop> に渡される。"
6147
6148 #.  http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=482973
6149 #. type: Plain text
6150 #: build/C/man3/gethostbyname.3:443
6151 msgid ""
6152 "B<gethostbyname>()  does not recognize components of a dotted IPv4 address "
6153 "string that are expressed in hexadecimal."
6154 msgstr ""
6155 "B<gethostbyname>()  は、16進数表現のドット区切りの IPv4 アドレス文字列の要素"
6156 "を認識しない。"
6157
6158 #.  .BR getipnodebyaddr (3),
6159 #.  .BR getipnodebyname (3),
6160 #.  .BR resolv+ (8)
6161 #. type: Plain text
6162 #: build/C/man3/gethostbyname.3:457
6163 msgid ""
6164 "B<getaddrinfo>(3), B<getnameinfo>(3), B<inet>(3), B<inet_ntop>(3), "
6165 "B<inet_pton>(3), B<resolver>(3), B<hosts>(5), B<nsswitch.conf>(5), "
6166 "B<hostname>(7), B<named>(8)"
6167 msgstr ""
6168 "B<getaddrinfo>(3), B<getnameinfo>(3), B<inet>(3), B<inet_ntop>(3), "
6169 "B<inet_pton>(3), B<resolver>(3), B<hosts>(5), B<nsswitch.conf>(5), "
6170 "B<hostname>(7), B<named>(8)"
6171
6172 #. type: TH
6173 #: build/C/man3/getipnodebyname.3:26
6174 #, no-wrap
6175 msgid "GETIPNODEBYNAME"
6176 msgstr "GETIPNODEBYNAME"
6177
6178 #. type: TH
6179 #: build/C/man3/getipnodebyname.3:26
6180 #, no-wrap
6181 msgid "2010-09-04"
6182 msgstr "2010-09-04"
6183
6184 #. type: Plain text
6185 #: build/C/man3/getipnodebyname.3:30
6186 msgid ""
6187 "getipnodebyname, getipnodebyaddr, freehostent - get network hostnames and "
6188 "addresses"
6189 msgstr ""
6190 "getipnodebyname, getipnodebyaddr, freehostent - ネットワークホストの名前とア"
6191 "ドレスの取得"
6192
6193 #. type: Plain text
6194 #: build/C/man3/getipnodebyname.3:38
6195 #, no-wrap
6196 msgid ""
6197 "B<struct hostent *getipnodebyname(const char *>I<name>B<, int >I<af>B<,>\n"
6198 "B<                                int >I<flags>B<, int *>I<error_num>B<);>\n"
6199 msgstr ""
6200 "B<struct hostent *getipnodebyname(const char *>I<name>B<, int >I<af>B<,>\n"
6201 "B<                                int >I<flags>B<, int *>I<error_num>B<);>\n"
6202
6203 #. type: Plain text
6204 #: build/C/man3/getipnodebyname.3:41
6205 #, no-wrap
6206 msgid ""
6207 "B<struct hostent *getipnodebyaddr(const void *>I<addr>B<, size_t >I<len>B<,>\n"
6208 "B<                                int >I<af>B<, int *>I<error_num>B<);>\n"
6209 msgstr ""
6210 "B<struct hostent *getipnodebyaddr(const void *>I<addr>B<, size_t >I<len>B<,>\n"
6211 "B<                                int >I<af>B<, int *>I<error_num>B<);>\n"
6212
6213 #. type: Plain text
6214 #: build/C/man3/getipnodebyname.3:43
6215 #, no-wrap
6216 msgid "B<void freehostent(struct hostent *>I<ip>B<);>\n"
6217 msgstr "B<void freehostent(struct hostent *>I<ip>B<);>\n"
6218
6219 #. type: Plain text
6220 #: build/C/man3/getipnodebyname.3:51
6221 msgid ""
6222 "These functions are deprecated (and unavailable in glibc).  Use "
6223 "B<getaddrinfo>(3)  and B<getnameinfo>(3)  instead."
6224 msgstr ""
6225 "これらの関数は非推奨である (glibc では利用できない)。 代わりに B<getaddrinfo>"
6226 "(3)  と B<getnameinfo>(3)  を使うこと。"
6227
6228 #. type: Plain text
6229 #: build/C/man3/getipnodebyname.3:59
6230 msgid ""
6231 "The B<getipnodebyname>()  and B<getipnodebyaddr>()  functions return the "
6232 "names and addresses of a network host.  These functions return a pointer to "
6233 "the following structure:"
6234 msgstr ""
6235 "B<getipnodebyname>()  と B<getipnodebyaddr>()  は、ネットワークホストの名前と"
6236 "アドレスを返す。 これらの関数は、以下の構造体へのポインタを返す。"
6237
6238 #. type: Plain text
6239 #: build/C/man3/getipnodebyname.3:69
6240 #, no-wrap
6241 msgid ""
6242 "struct hostent {\n"
6243 "    char  *h_name;\n"
6244 "    char **h_aliases;\n"
6245 "    int    h_addrtype;\n"
6246 "    int    h_length;\n"
6247 "    char **h_addr_list;\n"
6248 "};\n"
6249 msgstr ""
6250 "struct hostent {\n"
6251 "    char  *h_name;\n"
6252 "    char **h_aliases;\n"
6253 "    int    h_addrtype;\n"
6254 "    int    h_length;\n"
6255 "    char **h_addr_list;\n"
6256 "};\n"
6257
6258 #. type: Plain text
6259 #: build/C/man3/getipnodebyname.3:82
6260 msgid ""
6261 "These functions replace the B<gethostbyname>(3)  and B<gethostbyaddr>(3)  "
6262 "functions, which could access only the IPv4 network address family.  The "
6263 "B<getipnodebyname>()  and B<getipnodebyaddr>()  functions can access "
6264 "multiple network address families."
6265 msgstr ""
6266 "これらの関数は、 IPv4 ネットワークアドレスファミリにしかアクセスできない "
6267 "B<gethostbyname>(3)  や B<gethostbyaddr>(3)  を置き換えるものである。 "
6268 "B<getipnodebyname>()  関数と B<getipnodebyaddr>()  関数は複数のネットワークア"
6269 "ドレスファミリーにアクセス可能になっている。"
6270
6271 #. type: Plain text
6272 #: build/C/man3/getipnodebyname.3:93
6273 msgid ""
6274 "Unlike the B<gethostby> functions, these functions return pointers to "
6275 "dynamically allocated memory.  The B<freehostent>()  function is used to "
6276 "release the dynamically allocated memory after the caller no longer needs "
6277 "the I<hostent> structure."
6278 msgstr ""
6279 "これらの関数は、 B<gethostby> の関数群と異なり、動的に割り当てられたメモリへ"
6280 "のポインタを返す。 呼び出し元がこれらの I<hostent> 構造体を必要としなくなった"
6281 "後は、 B<freehostent>()  関数を用いれば動的な割り当てメモリを解放できる。"
6282
6283 #. type: SS
6284 #: build/C/man3/getipnodebyname.3:93
6285 #, no-wrap
6286 msgid "getipnodebyname() arguments"
6287 msgstr "getipnodebyname() の引き数"
6288
6289 #. type: Plain text
6290 #: build/C/man3/getipnodebyname.3:104
6291 msgid ""
6292 "The B<getipnodebyname>()  function looks up network addresses for the host "
6293 "specified by the I<name> argument.  The I<af> argument specifies one of the "
6294 "following values:"
6295 msgstr ""
6296 "B<getipnodebyname>()  関数は I<name> 引き数で指定されたホストのネットワークア"
6297 "ドレスを引く。 I<af> 引き数には以下の値のいずれかを指定する。"
6298
6299 #. type: TP
6300 #: build/C/man3/getipnodebyname.3:104 build/C/man3/getipnodebyname.3:166
6301 #: build/C/man3/inet_ntop.3:57 build/C/man3/inet_pton.3:53
6302 #, no-wrap
6303 msgid "B<AF_INET>"
6304 msgstr "B<AF_INET>"
6305
6306 #. type: Plain text
6307 #: build/C/man3/getipnodebyname.3:110
6308 msgid ""
6309 "The I<name> argument points to a dotted-quad IPv4 address or a name of an "
6310 "IPv4 network host."
6311 msgstr ""
6312 "I<name> 引き数は、ドットで 4 つに区切られた IPv4 アドレスか、 IPv4 ネットワー"
6313 "クホストの名前へのポインタである。"
6314
6315 #. type: TP
6316 #: build/C/man3/getipnodebyname.3:110 build/C/man3/getipnodebyname.3:176
6317 #: build/C/man3/inet_ntop.3:70 build/C/man3/inet_pton.3:67
6318 #, no-wrap
6319 msgid "B<AF_INET6>"
6320 msgstr "B<AF_INET6>"
6321
6322 #. type: Plain text
6323 #: build/C/man3/getipnodebyname.3:116
6324 msgid ""
6325 "The I<name> argument points to a hexadecimal IPv6 address or a name of an "
6326 "IPv6 network host."
6327 msgstr ""
6328 "I<name> 引き数は、16 進の IPv6 アドレスか、 IPv6 ネットワークホストの名前への"
6329 "ポインタである。"
6330
6331 #. type: Plain text
6332 #: build/C/man3/getipnodebyname.3:125
6333 msgid ""
6334 "The I<flags> argument specifies additional options.  More than one option "
6335 "can be specified by bitwise OR-ing them together.  I<flags> should be set to "
6336 "0 if no options are desired."
6337 msgstr ""
6338 "I<flags> パラメータには追加のオプションを指定する。 複数のフラグを指定するに"
6339 "は、それらのビット単位の OR をとって指定すればよい。 オプションをひとつも指定"
6340 "したくないときには、 I<flags> に 0 を設定する必要がある。"
6341
6342 #. type: TP
6343 #: build/C/man3/getipnodebyname.3:125
6344 #, no-wrap
6345 msgid "B<AI_V4MAPPED>"
6346 msgstr "B<AI_V4MAPPED>"
6347
6348 #. type: Plain text
6349 #: build/C/man3/getipnodebyname.3:132
6350 msgid ""
6351 "This flag is used with B<AF_INET6> to request a query for IPv4 addresses "
6352 "instead of IPv6 addresses; the IPv4 addresses will be mapped to IPv6 "
6353 "addresses."
6354 msgstr ""
6355 "このフラグは B<AF_INET6> と共に用いられ、IPv6 アドレスの代わりに IPv4 アドレ"
6356 "スを問い合わせる。 問い合わせる IPv4 アドレスは IPv6 アドレスにマップされる。"
6357
6358 #. type: TP
6359 #: build/C/man3/getipnodebyname.3:132
6360 #, no-wrap
6361 msgid "B<AI_ALL>"
6362 msgstr "B<AI_ALL>"
6363
6364 #. type: Plain text
6365 #: build/C/man3/getipnodebyname.3:138
6366 msgid ""
6367 "This flag is used with B<AI_V4MAPPED> to request a query for both IPv4 and "
6368 "IPv6 addresses.  Any IPv4 address found will be mapped to an IPv6 address."
6369 msgstr ""
6370 "このフラグは B<AI_V4MAPPED> と共に用いられ、IPv4 アドレスと IPv6 アドレスの両"
6371 "方を問い合わせる。 見つかった IPv4 アドレスは、すべて IPv6 アドレスにマップさ"
6372 "れる。"
6373
6374 #. type: TP
6375 #: build/C/man3/getipnodebyname.3:138
6376 #, no-wrap
6377 msgid "B<AI_ADDRCONFIG>"
6378 msgstr "B<AI_ADDRCONFIG>"
6379
6380 #. type: Plain text
6381 #: build/C/man3/getipnodebyname.3:150
6382 msgid ""
6383 "This flag is used with B<AF_INET6> to further request that queries for IPv6 "
6384 "addresses should not be made unless the system has at least one IPv6 address "
6385 "assigned to a network interface, and that queries for IPv4 addresses should "
6386 "not be made unless the system has at least one IPv4 address assigned to a "
6387 "network interface.  This flag may be used by itself or with the "
6388 "B<AI_V4MAPPED> flag."
6389 msgstr ""
6390 "このフラグは B<AF_INET6> と共に用いられ、 IPv6 が割り当てられたネットワークイ"
6391 "ンターフェースが システムにひとつもなければ IPv6 アドレスの問い合わせを行わ"
6392 "ず、 IPv4 が割り当てられたネットワークインターフェースが システムにひとつもな"
6393 "ければ IPv4 アドレスの問い合わせを行わないように要求する。 このフラグは単独で"
6394 "も、あるいは B<AI_V4MAPPED> フラグと共にでも用いることができる。"
6395
6396 #. type: TP
6397 #: build/C/man3/getipnodebyname.3:150
6398 #, no-wrap
6399 msgid "B<AI_DEFAULT>"
6400 msgstr "B<AI_DEFAULT>"
6401
6402 #. type: Plain text
6403 #: build/C/man3/getipnodebyname.3:154
6404 msgid "This flag is equivalent to B<(AI_ADDRCONFIG | AI_V4MAPPED)>."
6405 msgstr "このフラグは B<(AI_ADDRCONFIG>|B<AI_V4MAPPED)> と等価である。"
6406
6407 #. type: SS
6408 #: build/C/man3/getipnodebyname.3:154
6409 #, no-wrap
6410 msgid "getipnodebyaddr() arguments"
6411 msgstr "getipnodebyaddr() の引き数"
6412
6413 #. type: Plain text
6414 #: build/C/man3/getipnodebyname.3:166
6415 msgid ""
6416 "The B<getipnodebyaddr>()  function looks up the name of the host whose "
6417 "network address is specified by the I<addr> argument.  The I<af> argument "
6418 "specifies one of the following values:"
6419 msgstr ""
6420 "B<getipnodebyaddr>()  関数は、ネットワークアドレスが I<addr> 引き数で指定され"
6421 "たホストの名前を引く。 I<af> 引き数には以下の値のいずれかを指定する。"
6422
6423 #. type: Plain text
6424 #: build/C/man3/getipnodebyname.3:176
6425 msgid ""
6426 "The I<addr> argument points to a I<struct in_addr> and I<len> must be set to "
6427 "I<sizeof(struct in_addr)>."
6428 msgstr ""
6429 "I<addr> 引き数は I<struct in_addr> へのポインターであり、 I<len> 引き数は "
6430 "I<sizeof(struct in_addr)> に設定しなければならない。"
6431
6432 #. type: Plain text
6433 #: build/C/man3/getipnodebyname.3:186
6434 msgid ""
6435 "The I<addr> argument points to a I<struct in6_addr> and I<len> must be set "
6436 "to I<sizeof(struct in6_addr)>."
6437 msgstr ""
6438 "I<addr> 引き数は I<struct in6_addr> へのポインターであり、 I<len> 引き数は "
6439 "I<sizeof(struct in6_addr)> に設定しなければならない。"
6440
6441 #. type: Plain text
6442 #: build/C/man3/getipnodebyname.3:190
6443 msgid ""
6444 "NULL is returned if an error occurred, and I<error_num> will contain an "
6445 "error code from the following list:"
6446 msgstr "エラーが起こると NULL が返され、 I<error_num> に以下にリストされたエラーコードのいずれかが設定される。"
6447
6448 #. type: Plain text
6449 #: build/C/man3/getipnodebyname.3:193
6450 msgid "The hostname or network address was not found."
6451 msgstr "ホスト名またはネットワークアドレスが見つからなかった。"
6452
6453 #. type: TP
6454 #: build/C/man3/getipnodebyname.3:193
6455 #, no-wrap
6456 msgid "B<NO_ADDRESS>"
6457 msgstr "B<NO_ADDRESS>"
6458
6459 #. type: Plain text
6460 #: build/C/man3/getipnodebyname.3:199
6461 msgid ""
6462 "The domain name server recognized the network address or name, but no answer "
6463 "was returned.  This can happen if the network host has only IPv4 addresses "
6464 "and a request has been made for IPv6 information only, or vice versa."
6465 msgstr ""
6466 "ドメインネームサーバーは そのネットワークアドレスまたはネットワーク名を認識し"
6467 "たが、 返事が返ってこなかった。原因としては、 例えば IPv4 アドレスしか持たな"
6468 "いネットワークホストに対して IPv6 の情報の問い合わせが行われた (およびその"
6469 "逆) などが考えられる。"
6470
6471 #. type: Plain text
6472 #: build/C/man3/getipnodebyname.3:202
6473 msgid "The domain name server returned a permanent failure response."
6474 msgstr ""
6475 "ドメインネームサーバーから恒久的な失敗 (permanent failure)  を意味する返事が"
6476 "返された。"
6477
6478 #. type: Plain text
6479 #: build/C/man3/getipnodebyname.3:206
6480 msgid ""
6481 "The domain name server returned a temporary failure response.  You might "
6482 "have better luck next time."
6483 msgstr ""
6484 "ネームサーバーから一時的な失敗 (temporary failure)  を意味する返事が返され"
6485 "た。次にはもうちょっと運が必要かも。"
6486
6487 #. type: Plain text
6488 #: build/C/man3/getipnodebyname.3:210
6489 msgid ""
6490 "A successful query returns a pointer to a I<hostent> structure that contains "
6491 "the following fields:"
6492 msgstr ""
6493 "問い合わせに成功すると、 I<hostent> 構造体へのポインタが返される。 この構造体"
6494 "は以下のフィールドからなる。"
6495
6496 #. type: Plain text
6497 #: build/C/man3/getipnodebyname.3:213
6498 msgid "This is the official name of this network host."
6499 msgstr "これはこのネットワークホストのオフィシャルな名前である。"
6500
6501 #. type: Plain text
6502 #: build/C/man3/getipnodebyname.3:217
6503 msgid ""
6504 "This is an array of pointers to unofficial aliases for the same host.  The "
6505 "array is terminated by a null pointer."
6506 msgstr "これは、そのホストのオフィシャルでない別名へのポインターの配列である。 配列は NULL ポインターで終端する。"
6507
6508 #. type: Plain text
6509 #: build/C/man3/getipnodebyname.3:239
6510 msgid ""
6511 "This is a copy of the I<af> argument to B<getipnodebyname>()  or "
6512 "B<getipnodebyaddr>().  I<h_addrtype> will always be B<AF_INET> if the I<af> "
6513 "argument was B<AF_INET>.  I<h_addrtype> will always be B<AF_INET6> if the "
6514 "I<af> argument was B<AF_INET6>."
6515 msgstr ""
6516 "これは B<getipnodebyname>()  または B<getipnodebyaddr>()  に与えられた I<af> "
6517 "引き数のコピーである。 I<af> 引き数が B<AF_INET> なら I<h_addrtype> は常に "
6518 "B<AF_INET> になり、 I<af> 引き数が B<AF_INET6> なら I<h_addrtype> も常に "
6519 "B<AF_INET6> になる。"
6520
6521 #. type: Plain text
6522 #: build/C/man3/getipnodebyname.3:253
6523 msgid ""
6524 "This field will be set to I<sizeof(struct in_addr)> if I<h_addrtype> is "
6525 "B<AF_INET>, and to I<sizeof(struct in6_addr)> if I<h_addrtype> is "
6526 "B<AF_INET6>."
6527 msgstr ""
6528 "このフィールドは、 I<h_addrtype> が B<AF_INET> なら I<sizeof(struct in_addr)"
6529 "> に、 I<h_addrtype> が B<AF_INET6> なら I<sizeof(struct in6_addr)> に設定さ"
6530 "れる。"
6531
6532 #. type: Plain text
6533 #: build/C/man3/getipnodebyname.3:258
6534 msgid ""
6535 "This is an array of one or more pointers to network address structures for "
6536 "the network host.  The array is terminated by a null pointer."
6537 msgstr "これはひとつ以上のポインターの配列で、 それぞれのポインターは、 そのネットワークホストに対応するネットワークアドレス構造体を指す。 この配列は NULL ポインターで終端する。"
6538
6539 #.  Not in POSIX.1-2001.
6540 #. type: Plain text
6541 #: build/C/man3/getipnodebyname.3:261
6542 msgid "RFC\\ 2553."
6543 msgstr "RFC\\ 2553."
6544
6545 #. type: Plain text
6546 #: build/C/man3/getipnodebyname.3:266
6547 msgid ""
6548 "These functions were present in glibc 2.1.91-95, but were removed again.  "
6549 "Several UNIX-like systems support them, but all call them deprecated."
6550 msgstr ""
6551 "これらの関数は glibc 2.1.91-95 に存在したが、再び削除された。 いくつかの "
6552 "UNIX 風システムはこれらの関数に対応しているが、 これらの関数は全て推奨されな"
6553 "い。"
6554
6555 #. type: Plain text
6556 #: build/C/man3/getipnodebyname.3:271
6557 msgid "B<getaddrinfo>(3), B<getnameinfo>(3), B<inet_ntop>(3), B<inet_pton>(3)"
6558 msgstr "B<getaddrinfo>(3), B<getnameinfo>(3), B<inet_ntop>(3), B<inet_pton>(3)"
6559
6560 #. type: TH
6561 #: build/C/man3/getnameinfo.3:10
6562 #, no-wrap
6563 msgid "GETNAMEINFO"
6564 msgstr "GETNAMEINFO"
6565
6566 #. type: TH
6567 #: build/C/man3/getnameinfo.3:10
6568 #, no-wrap
6569 msgid "2013-01-15"
6570 msgstr "2013-01-15"
6571
6572 #. type: Plain text
6573 #: build/C/man3/getnameinfo.3:13
6574 msgid ""
6575 "getnameinfo - address-to-name translation in protocol-independent manner"
6576 msgstr ""
6577 "getnameinfo - アドレスから名前への変換をプロトコルに依存しないかたちで行う"
6578
6579 #. type: Plain text
6580 #: build/C/man3/getnameinfo.3:17
6581 #, no-wrap
6582 msgid ""
6583 "B<#include E<lt>sys/socket.hE<gt>>\n"
6584 "B<#include E<lt>netdb.hE<gt>>\n"
6585 msgstr ""
6586 "B<#include E<lt>sys/socket.hE<gt>>\n"
6587 "B<#include E<lt>netdb.hE<gt>>\n"
6588
6589 #. type: Plain text
6590 #: build/C/man3/getnameinfo.3:21
6591 #, no-wrap
6592 msgid ""
6593 "B<int getnameinfo(const struct sockaddr *>I<sa>B<, socklen_t >I<salen>B<,>\n"
6594 "B<                char *>I<host>B<, size_t >I<hostlen>B<,>\n"
6595 "B<                char *>I<serv>B<, size_t >I<servlen>B<, int >I<flags>B<);>\n"
6596 msgstr ""
6597 "B<int getnameinfo(const struct sockaddr *>I<sa>B<, socklen_t >I<salen>B<,>\n"
6598 "B<                char *>I<host>B<, size_t >I<hostlen>B<,>\n"
6599 "B<                char *>I<serv>B<, size_t >I<servlen>B<, int >I<flags>B<);>\n"
6600
6601 #. type: Plain text
6602 #: build/C/man3/getnameinfo.3:31
6603 msgid ""
6604 "B<getnameinfo>(): _POSIX_C_SOURCE\\ E<gt>=\\ 1 || _XOPEN_SOURCE || "
6605 "_POSIX_SOURCE"
6606 msgstr ""
6607 "B<getnameinfo>(): _POSIX_C_SOURCE\\ E<gt>=\\ 1 || _XOPEN_SOURCE || "
6608 "_POSIX_SOURCE"
6609
6610 #. type: Plain text
6611 #: build/C/man3/getnameinfo.3:47
6612 msgid ""
6613 "The B<getnameinfo>()  function is the inverse of B<getaddrinfo>(3): it "
6614 "converts a socket address to a corresponding host and service, in a protocol-"
6615 "independent manner.  It combines the functionality of B<gethostbyaddr>(3)  "
6616 "and B<getservbyport>(3), but unlike those functions, B<getnameinfo>()  is "
6617 "reentrant and allows programs to eliminate IPv4-versus-IPv6 dependencies."
6618 msgstr ""
6619 "B<getnameinfo>()  関数は、 B<getaddrinfo>(3)  の逆の動作を行う。つまり、プロ"
6620 "トコルに依存しないかたちで ソケットアドレスから対応するホスト名とサービスへの"
6621 "変換を行う。 この関数は B<gethostbyaddr>(3)  と B<getservbyport>(3)  の機能を"
6622 "一つにしたものだが、 これらの関数と違い、 B<getnameinfo>(3)  はリエントラント"
6623 "であり、IPv4 と IPv6 の差分に依存しないかたちで プログラムを書くことができ"
6624 "る。"
6625
6626 #. type: Plain text
6627 #: build/C/man3/getnameinfo.3:70
6628 msgid ""
6629 "The I<sa> argument is a pointer to a generic socket address structure (of "
6630 "type I<sockaddr_in> or I<sockaddr_in6>)  of size I<salen> that holds the "
6631 "input IP address and port number.  The arguments I<host> and I<serv> are "
6632 "pointers to caller-allocated buffers (of size I<hostlen> and I<servlen> "
6633 "respectively) into which B<getnameinfo>()  places null-terminated strings "
6634 "containing the host and service names respectively."
6635 msgstr ""
6636 "I<sa> 引き数は、 IP アドレスとポート番号の情報を保持している 汎用的なソケット"
6637 "アドレス構造体 (I<sockaddr_in> 型または I<sockaddr_in6> 型) へのポインタであ"
6638 "る。 I<salen> は I<sa> のサイズである。 I<host> と I<serv> 引き数は、(それぞ"
6639 "れサイズが I<hostlen> と I<servlen> の) 呼び出し側で確保されたバッファへのポ"
6640 "インタであり、 ホスト名とサービス名を含む NULL 終端された文字列が それぞれの"
6641 "バッファに格納される。"
6642
6643 #. type: Plain text
6644 #: build/C/man3/getnameinfo.3:83
6645 msgid ""
6646 "The caller can specify that no hostname (or no service name)  is required by "
6647 "providing a NULL I<host> (or I<serv>)  argument or a zero I<hostlen> (or "
6648 "I<servlen>)  argument.  However, at least one of hostname or service name "
6649 "must be requested."
6650 msgstr ""
6651 "ホスト名が不要であることをこの関数に伝えるには、 I<host> に NULL を指定する"
6652 "か、 I<hostlen> に 0 を指定する。同様に、サービス名が不要な場合は、 I<serv> "
6653 "に NULL を指定するか、 I<servlen> に 0 を指定する。 しかし、ホスト名とサービ"
6654 "ス名の両方を不要だと指定することはできない (いずれか一方は要求すること)。"
6655
6656 #. type: Plain text
6657 #: build/C/man3/getnameinfo.3:89
6658 msgid ""
6659 "The I<flags> argument modifies the behavior of B<getnameinfo>()  as follows:"
6660 msgstr ""
6661 "I<flags> 引き数で B<getnameinfo>()  の動作を変えることができる。指定できる値"
6662 "は以下の通り:"
6663
6664 #. type: TP
6665 #: build/C/man3/getnameinfo.3:89
6666 #, no-wrap
6667 msgid "B<NI_NAMEREQD>"
6668 msgstr "B<NI_NAMEREQD>"
6669
6670 #. type: Plain text
6671 #: build/C/man3/getnameinfo.3:92
6672 msgid "If set, then an error is returned if the hostname cannot be determined."
6673 msgstr "指定すると、ホスト名が決定できなかった場合にエラーを返す。"
6674
6675 #. type: TP
6676 #: build/C/man3/getnameinfo.3:92
6677 #, no-wrap
6678 msgid "B<NI_DGRAM>"
6679 msgstr "B<NI_DGRAM>"
6680
6681 #. type: Plain text
6682 #: build/C/man3/getnameinfo.3:98
6683 msgid ""
6684 "If set, then the service is datagram (UDP) based rather than stream (TCP) "
6685 "based.  This is required for the few ports (512-514)  that have different "
6686 "services for UDP and TCP."
6687 msgstr ""
6688 "指定すると、ストリームベース (TCP) でなくデータグラムベース (UDP)  のサービス"
6689 "を対象にする。数は少ないが、 UDP と TCP で違うサービスを提供しているポート "
6690 "(512-514) に対して必要となる。"
6691
6692 #. type: TP
6693 #: build/C/man3/getnameinfo.3:98
6694 #, no-wrap
6695 msgid "B<NI_NOFQDN>"
6696 msgstr "B<NI_NOFQDN>"
6697
6698 #. type: Plain text
6699 #: build/C/man3/getnameinfo.3:102
6700 msgid ""
6701 "If set, return only the hostname part of the fully qualified domain name for "
6702 "local hosts."
6703 msgstr ""
6704 "指定すると、ローカルなホストには fully qualified domain name (FQDN) の ホスト"
6705 "名の部分のみを返す。"
6706
6707 #. type: TP
6708 #: build/C/man3/getnameinfo.3:102
6709 #, no-wrap
6710 msgid "B<NI_NUMERICHOST>"
6711 msgstr "B<NI_NUMERICHOST>"
6712
6713 #.  For example, by calling
6714 #.  .BR inet_ntop ()
6715 #.  instead of
6716 #.  .BR gethostbyaddr ().
6717 #.  POSIX.1-2003 has NI_NUMERICSCOPE, but glibc doesn't have it.
6718 #. type: Plain text
6719 #: build/C/man3/getnameinfo.3:112
6720 msgid ""
6721 "If set, then the numeric form of the hostname is returned.  (When not set, "
6722 "this will still happen in case the node's name cannot be determined.)"
6723 msgstr ""
6724 "指定すると、数値形式のホスト名が返される。 (指定しなくても、ノードの名前が決"
6725 "定できない場合は数値形式が返ることがある)。"
6726
6727 #. type: TP
6728 #: build/C/man3/getnameinfo.3:112
6729 #, no-wrap
6730 msgid "B<NI_NUMERICSERV>"
6731 msgstr "B<NI_NUMERICSERV>"
6732
6733 #. type: Plain text
6734 #: build/C/man3/getnameinfo.3:117
6735 msgid ""
6736 "If set, then the numeric form of the service address is returned.  (When not "
6737 "set, this will still happen in case the service's name cannot be determined.)"
6738 msgstr ""
6739 "指定すると、数値形式のサービス名 (例えばポート番号) が返される (指定しなくて"
6740 "も、サービス名が決定できない場合は数値形式が返ることがある)。"
6741
6742 #. type: SS
6743 #: build/C/man3/getnameinfo.3:117
6744 #, no-wrap
6745 msgid "Extensions to getnameinfo() for Internationalized Domain Names"
6746 msgstr "国際化ドメイン名のための getnameinfo() の拡張"
6747
6748 #. type: Plain text
6749 #: build/C/man3/getnameinfo.3:126
6750 msgid ""
6751 "Starting with glibc 2.3.4, B<getnameinfo>()  has been extended to "
6752 "selectively allow hostnames to be transparently converted to and from the "
6753 "Internationalized Domain Name (IDN) format (see RFC 3490, "
6754 "I<Internationalizing Domain Names in Applications (IDNA)>).  Three new flags "
6755 "are defined:"
6756 msgstr ""
6757 "glibc 2.3.4 から、 B<getnameinfo>()  に拡張が行われ、ホスト名と 国際化ドメイ"
6758 "ン名 (Internationalized Domain Name; IDN) 形式との間で 透過的な変換ができるよ"
6759 "うになっている (IDN 形式については RFC 3490 の I<Internationalizing Domain "
6760 "Names in Applications (IDNA)> を参照)。3つのフラグが新たに定義されている:"
6761
6762 #. type: TP
6763 #: build/C/man3/getnameinfo.3:126
6764 #, no-wrap
6765 msgid "B<NI_IDN>"
6766 msgstr "B<NI_IDN>"
6767
6768 #. type: Plain text
6769 #: build/C/man3/getnameinfo.3:132
6770 msgid ""
6771 "If this flag is used, then the name found in the lookup process is converted "
6772 "from IDN format to the locale's encoding if necessary.  ASCII-only names are "
6773 "not affected by the conversion, which makes this flag usable in existing "
6774 "programs and environments."
6775 msgstr ""
6776 "このフラグを指定すると、必要であれば、検索処理で見つかった名前は IDN 形式から"
6777 "ロケールに応じた符号化形式に変換される。 ASCII 文字だけの名前はこの変換では影"
6778 "響を受けない。このため、 既存のプログラムや環境でこのフラグを使うことができ"
6779 "る。"
6780
6781 #. type: TP
6782 #: build/C/man3/getnameinfo.3:132
6783 #, no-wrap
6784 msgid "B<NI_IDN_ALLOW_UNASSIGNED>, B<NI_IDN_USE_STD3_ASCII_RULES>"
6785 msgstr "B<NI_IDN_ALLOW_UNASSIGNED>, B<NI_IDN_USE_STD3_ASCII_RULES>"
6786
6787 #.  FIXME glibc defines the following additional errors, some which
6788 #.  can probably be returned by getnameinfo(); they need to
6789 #.  be documented.
6790 #.  #ifdef __USE_GNU
6791 #.  #define EAI_INPROGRESS  -100  /* Processing request in progress.  */
6792 #.  #define EAI_CANCELED    -101  /* Request canceled.  */
6793 #.  #define EAI_NOTCANCELED -102  /* Request not canceled.  */
6794 #.  #define EAI_ALLDONE     -103  /* All requests done.  */
6795 #.  #define EAI_INTR        -104  /* Interrupted by a signal.  */
6796 #.  #define EAI_IDN_ENCODE  -105  /* IDN encoding failed.  */
6797 #.  #endif
6798 #. type: Plain text
6799 #: build/C/man3/getnameinfo.3:155
6800 msgid ""
6801 "On success 0 is returned, and node and service names, if requested, are "
6802 "filled with null-terminated strings, possibly truncated to fit the specified "
6803 "buffer lengths.  On error, one of the following nonzero error codes is "
6804 "returned:"
6805 msgstr ""
6806 "成功すると 0 が返り、(要求されていれば) ノードとサービスの名前が NULL 終端さ"
6807 "れた文字列の形式でそれぞれの指定バッファに返される (バッファの長さにあうよう"
6808 "に縮められるかもしれない)。 エラーの場合は、以下の 0 以外のエラー・コードが返"
6809 "される:"
6810
6811 #. type: Plain text
6812 #: build/C/man3/getnameinfo.3:159
6813 msgid "The name could not be resolved at this time.  Try again later."
6814 msgstr "指定された名前が現時点では解決できなかった。 後で再試行してみること。"
6815
6816 #. type: Plain text
6817 #: build/C/man3/getnameinfo.3:164
6818 msgid "The I<flags> argument has an invalid value."
6819 msgstr "I<flags> 引き数に不正な値が与えられた。"
6820
6821 #. type: Plain text
6822 #: build/C/man3/getnameinfo.3:167
6823 msgid "A nonrecoverable error occurred."
6824 msgstr "回復できないエラーが発生した。"
6825
6826 #. type: Plain text
6827 #: build/C/man3/getnameinfo.3:171
6828 msgid ""
6829 "The address family was not recognized, or the address length was invalid for "
6830 "the specified family."
6831 msgstr ""
6832 "指定したアドレスファミリーが認識できなかった。 あるいはアドレスの長さが指定さ"
6833 "れたファミリーに合うものでなかった。"
6834
6835 #. type: Plain text
6836 #: build/C/man3/getnameinfo.3:180
6837 msgid ""
6838 "The name does not resolve for the supplied arguments.  B<NI_NAMEREQD> is set "
6839 "and the host's name cannot be located, or neither hostname nor service name "
6840 "were requested."
6841 msgstr ""
6842 "与えられたパラメータでは名前が解決できない。 B<NI_NAMEREQD> が設定されていた"
6843 "がホスト名が決定できなかったか、 ホスト名もサービス名も要求されなかった。"
6844
6845 #. type: TP
6846 #: build/C/man3/getnameinfo.3:180
6847 #, no-wrap
6848 msgid "B<EAI_OVERFLOW>"
6849 msgstr "B<EAI_OVERFLOW>"
6850
6851 #. type: Plain text
6852 #: build/C/man3/getnameinfo.3:187
6853 msgid "The buffer pointed to by I<host> or I<serv> was too small."
6854 msgstr "I<host> または I<serv> が指しているバッファが小さすぎた。"
6855
6856 #. type: Plain text
6857 #: build/C/man3/getnameinfo.3:192
6858 msgid "A system error occurred.  The error code can be found in I<errno>."
6859 msgstr "システムエラーが起った。 エラーコードは I<errno> に設定される。"
6860
6861 #. type: Plain text
6862 #: build/C/man3/getnameinfo.3:199
6863 msgid "/etc/hosts"
6864 msgstr "/etc/hosts"
6865
6866 #. type: Plain text
6867 #: build/C/man3/getnameinfo.3:201
6868 msgid "/etc/nsswitch.conf"
6869 msgstr "/etc/nsswitch.conf"
6870
6871 #. type: Plain text
6872 #: build/C/man3/getnameinfo.3:203
6873 msgid "/etc/resolv.conf"
6874 msgstr "/etc/resolv.conf"
6875
6876 #. type: Plain text
6877 #: build/C/man3/getnameinfo.3:206
6878 msgid "B<getnameinfo>()  is provided in glibc since version 2.1."
6879 msgstr "B<getnameinfo>()  は、glibc バージョン 2.1 以降で提供されている。"
6880
6881 #. type: Plain text
6882 #: build/C/man3/getnameinfo.3:208
6883 msgid "RFC\\ 2553, POSIX.1-2001."
6884 msgstr "RFC\\ 2553, POSIX.1-2001."
6885
6886 #. type: Plain text
6887 #: build/C/man3/getnameinfo.3:213
6888 msgid ""
6889 "In order to assist the programmer in choosing reasonable sizes for the "
6890 "supplied buffers, I<E<lt>netdb.hE<gt>> defines the constants"
6891 msgstr ""
6892 "適切なバッファサイズを選択できるように、 I<E<lt>netdb.hE<gt>> に以下の定数が"
6893 "定義されている。"
6894
6895 #. type: Plain text
6896 #: build/C/man3/getnameinfo.3:218
6897 #, no-wrap
6898 msgid ""
6899 "#define NI_MAXHOST      1025\n"
6900 "#define NI_MAXSERV      32\n"
6901 msgstr ""
6902 "#define NI_MAXHOST      1025\n"
6903 "#define NI_MAXSERV      32\n"
6904
6905 #. type: Plain text
6906 #: build/C/man3/getnameinfo.3:228
6907 msgid ""
6908 "Since glibc 2.8, these definitions are exposed only if one of the feature "
6909 "test macros B<_BSD_SOURCE>, B<_SVID_SOURCE>, or B<_GNU_SOURCE> is defined."
6910 msgstr ""
6911 "glibc 2.8 以降では、機能検査マクロ B<_BSD_SOURCE>, B<_SVID_SOURCE>, "
6912 "B<_GNU_SOURCE> のいずれかが定義された場合にのみ、これらの定義が公開される。"
6913
6914 #. type: Plain text
6915 #: build/C/man3/getnameinfo.3:236
6916 msgid ""
6917 "The former is the constant B<MAXDNAME> in recent versions of BIND's "
6918 "I<E<lt>arpa/nameser.hE<gt>> header file.  The latter is a guess based on the "
6919 "services listed in the current Assigned Numbers RFC."
6920 msgstr ""
6921 "前者は、最近のバージョンの BIND のヘッダファイル I<E<lt>arpa/nameser.hE<gt>> "
6922 "中の定数 B<MAXDNAME> と同じ値である。 後者は、割り当て済の数値について記した"
6923 "現在の RFC に 列挙されてサービスから推量した値である。"
6924
6925 #. type: Plain text
6926 #: build/C/man3/getnameinfo.3:241
6927 msgid ""
6928 "The following code tries to get the numeric hostname and service name, for a "
6929 "given socket address.  Note that there is no hardcoded reference to a "
6930 "particular address family."
6931 msgstr ""
6932 "以下のコードは、指定されたソケットアドレスに対する ホストとサービスの数値表式"
6933 "を取得しようと試みる。 特定のアドレスファミリーに対する参照情報は 一切ハード"
6934 "コードされていないことに着目してほしい。"
6935
6936 #. type: Plain text
6937 #: build/C/man3/getnameinfo.3:247
6938 #, no-wrap
6939 msgid ""
6940 "struct sockaddr *sa;    /* input */\n"
6941 "socklen_t len;         /* input */\n"
6942 "char hbuf[NI_MAXHOST], sbuf[NI_MAXSERV];\n"
6943 msgstr ""
6944 "struct sockaddr *sa;    /* input */\n"
6945 "socklen_t len;          /* input */\n"
6946 "char hbuf[NI_MAXHOST], sbuf[NI_MAXSERV];\n"
6947
6948 #. type: Plain text
6949 #: build/C/man3/getnameinfo.3:251
6950 #, no-wrap
6951 msgid ""
6952 "if (getnameinfo(sa, len, hbuf, sizeof(hbuf), sbuf,\n"
6953 "            sizeof(sbuf), NI_NUMERICHOST | NI_NUMERICSERV) == 0)\n"
6954 "    printf(\"host=%s, serv=%s\\en\", hbuf, sbuf);\n"
6955 msgstr ""
6956 "if (getnameinfo(sa, len, hbuf, sizeof(hbuf), sbuf,\n"
6957 "            sizeof(sbuf), NI_NUMERICHOST | NI_NUMERICSERV) == 0)\n"
6958 "    printf(\"host=%s, serv=%s\\en\", hbuf, sbuf);\n"
6959
6960 #. type: Plain text
6961 #: build/C/man3/getnameinfo.3:256
6962 msgid ""
6963 "The following version checks if the socket address has a reverse address "
6964 "mapping."
6965 msgstr ""
6966 "以下ではソケットアドレスに 逆向きのアドレスマッピングが存在するかをチェックし"
6967 "ている。"
6968
6969 #. type: Plain text
6970 #: build/C/man3/getnameinfo.3:262
6971 #, no-wrap
6972 msgid ""
6973 "struct sockaddr *sa;    /* input */\n"
6974 "socklen_t len;         /* input */\n"
6975 "char hbuf[NI_MAXHOST];\n"
6976 msgstr ""
6977 "struct sockaddr *sa;    /* input */\n"
6978 "socklen_t len;          /* input */\n"
6979 "char hbuf[NI_MAXHOST];\n"
6980
6981 #. type: Plain text
6982 #: build/C/man3/getnameinfo.3:268
6983 #, no-wrap
6984 msgid ""
6985 "if (getnameinfo(sa, len, hbuf, sizeof(hbuf),\n"
6986 "            NULL, 0, NI_NAMEREQD))\n"
6987 "    printf(\"could not resolve hostname\");\n"
6988 "else\n"
6989 "    printf(\"host=%s\\en\", hbuf);\n"
6990 msgstr ""
6991 "if (getnameinfo(sa, len, hbuf, sizeof(hbuf),\n"
6992 "            NULL, 0, NI_NAMEREQD))\n"
6993 "    printf(\"could not resolve hostname\");\n"
6994 "else\n"
6995 "    printf(\"host=%s\\en\", hbuf);\n"
6996
6997 #. type: Plain text
6998 #: build/C/man3/getnameinfo.3:275
6999 msgid ""
7000 "An example program using B<getnameinfo>()  can be found in B<getaddrinfo>(3)."
7001 msgstr ""
7002 "B<getnameinfo>()  を使ったプログラム例が B<getaddrinfo>(3)  に記載されてい"
7003 "る。"
7004
7005 #. type: Plain text
7006 #: build/C/man3/getnameinfo.3:290
7007 msgid ""
7008 "B<accept>(2), B<getpeername>(2), B<getsockname>(2), B<recvfrom>(2), B<socket>"
7009 "(2), B<getaddrinfo>(3), B<gethostbyaddr>(3), B<getservbyname>(3), "
7010 "B<getservbyport>(3), B<inet_ntop>(3), B<hosts>(5), B<services>(5), "
7011 "B<hostname>(7), B<named>(8)"
7012 msgstr ""
7013 "B<accept>(2), B<getpeername>(2), B<getsockname>(2), B<recvfrom>(2), B<socket>"
7014 "(2), B<getaddrinfo>(3), B<gethostbyaddr>(3), B<getservbyname>(3), "
7015 "B<getservbyport>(3), B<inet_ntop>(3), B<hosts>(5), B<services>(5), "
7016 "B<hostname>(7), B<named>(8)"
7017
7018 #. type: Plain text
7019 #: build/C/man3/getnameinfo.3:294
7020 msgid ""
7021 "R. Gilligan, S. Thomson, J. Bound and W. Stevens, I<Basic Socket Interface "
7022 "Extensions for IPv6>, RFC\\ 2553, March 1999."
7023 msgstr ""
7024 "R. Gilligan, S. Thomson, J. Bound and W. Stevens, I<Basic Socket Interface "
7025 "Extensions for IPv6>, RFC\\ 2553, March 1999."
7026
7027 #. type: Plain text
7028 #: build/C/man3/getnameinfo.3:300
7029 msgid ""
7030 "Tatsuya Jinmei and Atsushi Onoe, I<An Extension of Format for IPv6 Scoped "
7031 "Addresses>, internet draft, work in progress E<.UR ftp://ftp.ietf.org\\:/"
7032 "internet-drafts\\:/draft-ietf-ipngwg-scopedaddr-format-02.txt> E<.UE .>"
7033 msgstr ""
7034 "Tatsuya Jinmei and Atsushi Onoe, I<An Extension of Format for IPv6 Scoped "
7035 "Addresses>, internet draft, work in progress E<.UR ftp://ftp.ietf.org\\:/"
7036 "internet-drafts\\:/draft-ietf-ipngwg-scopedaddr-format-02.txt> E<.UE .>"
7037
7038 #. type: Plain text
7039 #: build/C/man3/getnameinfo.3:305
7040 msgid ""
7041 "Craig Metz, I<Protocol Independence Using the Sockets API>, Proceedings of "
7042 "the freenix track: 2000 USENIX annual technical conference, June 2000"
7043 msgstr ""
7044 "Craig Metz, I<Protocol Independence Using the Sockets API>, Proceedings of "
7045 "the freenix track: 2000 USENIX annual technical conference, June 2000"
7046
7047 #. type: Plain text
7048 #: build/C/man3/getnameinfo.3:308
7049 msgid ""
7050 "E<.UR http://www.usenix.org\\:/publications\\:/library\\:/proceedings\\:/"
7051 "usenix2000\\:/freenix\\:/metzprotocol.html> E<.UE .>"
7052 msgstr ""
7053 "E<.UR http://www.usenix.org\\:/publications\\:/library\\:/proceedings\\:/"
7054 "usenix2000\\:/freenix\\:/metzprotocol.html> E<.UE .>"
7055
7056 #. type: TH
7057 #: build/C/man3/getnetent.3:30
7058 #, no-wrap
7059 msgid "GETNETENT"
7060 msgstr "GETNETENT"
7061
7062 #. type: TH
7063 #: build/C/man3/getnetent.3:30 build/C/man3/getprotoent.3:30
7064 #: build/C/man3/getservent.3:34
7065 #, no-wrap
7066 msgid "2008-08-19"
7067 msgstr "2008-08-19"
7068
7069 #. type: Plain text
7070 #: build/C/man3/getnetent.3:34
7071 msgid ""
7072 "getnetent, getnetbyname, getnetbyaddr, setnetent, endnetent - get network "
7073 "entry"
7074 msgstr ""
7075 "getnetent, getnetbyname, getnetbyaddr, setnetent, endnetent - ネットワークエ"
7076 "ントリを取得する"
7077
7078 #. type: Plain text
7079 #: build/C/man3/getnetent.3:37 build/C/man3/getnetent_r.3:33
7080 #: build/C/man3/getprotoent.3:37 build/C/man3/getprotoent_r.3:33
7081 #: build/C/man3/getservent.3:41 build/C/man3/getservent_r.3:33
7082 #: build/C/man3/setnetgrent.3:17
7083 #, no-wrap
7084 msgid "B<#include E<lt>netdb.hE<gt>>\n"
7085 msgstr "B<#include E<lt>netdb.hE<gt>>\n"
7086
7087 #. type: Plain text
7088 #: build/C/man3/getnetent.3:39
7089 #, no-wrap
7090 msgid "B<struct netent *getnetent(void);>\n"
7091 msgstr "B<struct netent *getnetent(void);>\n"
7092
7093 #. type: Plain text
7094 #: build/C/man3/getnetent.3:41
7095 #, no-wrap
7096 msgid "B<struct netent *getnetbyname(const char *>I<name>B<);>\n"
7097 msgstr "B<struct netent *getnetbyname(const char *>I<name>B<);>\n"
7098
7099 #. type: Plain text
7100 #: build/C/man3/getnetent.3:43
7101 #, no-wrap
7102 msgid "B<struct netent *getnetbyaddr(uint32_t >I<net>B<, int >I<type>B<);>\n"
7103 msgstr "B<struct netent *getnetbyaddr(uint32_t >I<net>B<, int >I<type>B<);>\n"
7104
7105 #. type: Plain text
7106 #: build/C/man3/getnetent.3:45
7107 #, no-wrap
7108 msgid "B<void setnetent(int >I<stayopen>B<);>\n"
7109 msgstr "B<void setnetent(int >I<stayopen>B<);>\n"
7110
7111 #. type: Plain text
7112 #: build/C/man3/getnetent.3:47
7113 #, no-wrap
7114 msgid "B<void endnetent(void);>\n"
7115 msgstr "B<void endnetent(void);>\n"
7116
7117 #. type: Plain text
7118 #: build/C/man3/getnetent.3:57
7119 msgid ""
7120 "The B<getnetent>()  function reads the next entry from the networks database "
7121 "and returns a I<netent> structure containing the broken-out fields from the "
7122 "entry.  A connection is opened to the database if necessary."
7123 msgstr ""
7124 "B<getnetent>()  関数はネットワークデータベースから次のエントリを読み込み、 そ"
7125 "のエントリを I<netent> 構造体の要素別のフィールドに格納し、 その構造体を返"
7126 "す。 必要であれば、データベースへの接続がオープンされる。"
7127
7128 #. type: Plain text
7129 #: build/C/man3/getnetent.3:66
7130 msgid ""
7131 "The B<getnetbyname>()  function returns a I<netent> structure for the entry "
7132 "from the database that matches the network I<name>."
7133 msgstr ""
7134 "B<getnetbyname>()  関数は、ネットワーク名 I<name> にマッチするエントリを デー"
7135 "タベースから探し、そのエントリを収めた I<netent> 構造体を返す。"
7136
7137 #. type: Plain text
7138 #: build/C/man3/getnetent.3:80
7139 msgid ""
7140 "The B<getnetbyaddr>()  function returns a I<netent> structure for the entry "
7141 "from the database that matches the network number I<net> of type I<type>.  "
7142 "The I<net> argument must be in host byte order."
7143 msgstr ""
7144 "B<getnetbyaddr>()  関数は、I<type> 型のネットワーク番号 I<net> にマッチするエ"
7145 "ントリを データベースから探し、そのエントリを収めた I<netent> 構造体を返す。 "
7146 "I<net> 引き数はホスト・バイトオーダでなければならない。"
7147
7148 #. type: Plain text
7149 #: build/C/man3/getnetent.3:92
7150 msgid ""
7151 "The B<setnetent>()  function opens a connection to the database, and sets "
7152 "the next entry to the first entry.  If I<stayopen> is nonzero, then the "
7153 "connection to the database will not be closed between calls to one of the "
7154 "B<getnet*>()  functions."
7155 msgstr ""
7156 "B<setnetent>()  関数はデータベースへの接続をオープンし、 次の読み込みエントリ"
7157 "を先頭のエントリに設定する。 I<stayopen> が 0 でない場合、 一つ一つの "
7158 "B<getnet*>()  関数の呼び出し間でデータベースへの接続をクローズしない。"
7159
7160 #. type: Plain text
7161 #: build/C/man3/getnetent.3:96
7162 msgid "The B<endnetent>()  function closes the connection to the database."
7163 msgstr "B<endnetent>()  関数はデータベースへの接続をクローズする。"
7164
7165 #. type: Plain text
7166 #: build/C/man3/getnetent.3:102
7167 msgid "The I<netent> structure is defined in I<E<lt>netdb.hE<gt>> as follows:"
7168 msgstr "I<netent> 構造体は I<E<lt>netdb.hE<gt>> で以下のように定義されている。"
7169
7170 #. type: Plain text
7171 #: build/C/man3/getnetent.3:111
7172 #, no-wrap
7173 msgid ""
7174 "struct netent {\n"
7175 "    char      *n_name;     /* official network name */\n"
7176 "    char     **n_aliases;  /* alias list */\n"
7177 "    int        n_addrtype; /* net address type */\n"
7178 "    uint32_t   n_net;      /* network number */\n"
7179 "}\n"
7180 msgstr ""
7181 "struct netent {\n"
7182 "    char      *n_name;     /* official network name */\n"
7183 "    char     **n_aliases;  /* alias list */\n"
7184 "    int        n_addrtype; /* net address type */\n"
7185 "    uint32_t   n_net;      /* network number */\n"
7186 "}\n"
7187
7188 #. type: Plain text
7189 #: build/C/man3/getnetent.3:117
7190 msgid "The members of the I<netent> structure are:"
7191 msgstr "I<netent> 構造体のメンバは以下の通り。"
7192
7193 #. type: TP
7194 #: build/C/man3/getnetent.3:117
7195 #, no-wrap
7196 msgid "I<n_name>"
7197 msgstr "I<n_name>"
7198
7199 #. type: Plain text
7200 #: build/C/man3/getnetent.3:120
7201 msgid "The official name of the network."
7202 msgstr "ネットワークの正式名 (official name)。"
7203
7204 #. type: TP
7205 #: build/C/man3/getnetent.3:120
7206 #, no-wrap
7207 msgid "I<n_aliases>"
7208 msgstr "I<n_aliases>"
7209
7210 #. type: Plain text
7211 #: build/C/man3/getnetent.3:123
7212 msgid "A NULL-terminated list of alternative names for the network."
7213 msgstr "ネットワークの別名からなるリスト。 リストは NULL で終端される。"
7214
7215 #. type: TP
7216 #: build/C/man3/getnetent.3:123
7217 #, no-wrap
7218 msgid "I<n_addrtype>"
7219 msgstr "I<n_addrtype>"
7220
7221 #. type: Plain text
7222 #: build/C/man3/getnetent.3:127
7223 msgid "The type of the network number; always B<AF_INET>."
7224 msgstr "ネットワーク番号の形式。現在は B<AF_INET> のみ。"
7225
7226 #. type: TP
7227 #: build/C/man3/getnetent.3:127
7228 #, no-wrap
7229 msgid "I<n_net>"
7230 msgstr "I<n_net>"
7231
7232 #. type: Plain text
7233 #: build/C/man3/getnetent.3:130
7234 msgid "The network number in host byte order."
7235 msgstr "ホスト・バイトオーダ形式のネットワーク番号。"
7236
7237 #. type: Plain text
7238 #: build/C/man3/getnetent.3:141
7239 msgid ""
7240 "The B<getnetent>(), B<getnetbyname>()  and B<getnetbyaddr>()  functions "
7241 "return a pointer to a statically allocated I<netent> structure, or a null "
7242 "pointer if an error occurs or the end of the file is reached."
7243 msgstr ""
7244 "B<getnetent>(), B<getnetbyname>(), B<getnetbyaddr>()  関数は、静的に割り当て"
7245 "られた I<netent> 構造体へのポインタを返す。 エラーが起こったり、ファイルの末"
7246 "尾に達した場合は NULL ポインタを返す。"
7247
7248 #. type: TP
7249 #: build/C/man3/getnetent.3:142 build/C/man5/networks.5:71
7250 #, no-wrap
7251 msgid "I</etc/networks>"
7252 msgstr "I</etc/networks>"
7253
7254 #. type: Plain text
7255 #: build/C/man3/getnetent.3:145
7256 msgid "networks database file"
7257 msgstr "ネットワークデータベースファイル"
7258
7259 #. type: Plain text
7260 #: build/C/man3/getnetent.3:147 build/C/man3/getprotoent.3:142
7261 #: build/C/man3/getservent.3:159
7262 msgid "4.3BSD, POSIX.1-2001."
7263 msgstr "4.3BSD, POSIX.1-2001."
7264
7265 #. type: Plain text
7266 #: build/C/man3/getnetent.3:154
7267 msgid ""
7268 "In glibc versions before 2.2, the I<net> argument of B<getnetbyaddr>()  was "
7269 "of type I<long>."
7270 msgstr ""
7271 "バージョン 2.2 より前の glibc では、 B<getnetbyaddr>()  の引き数 I<net> は "
7272 "I<long> 型だった。"
7273
7274 #.  .BR networks (5)
7275 #. type: Plain text
7276 #: build/C/man3/getnetent.3:159
7277 msgid "B<getnetent_r>(3), B<getprotoent>(3), B<getservent>(3)"
7278 msgstr "B<getnetent_r>(3), B<getprotoent>(3), B<getservent>(3)"
7279
7280 #. type: Plain text
7281 #: build/C/man3/getnetent.3:161
7282 msgid "RFC\\ 1101"
7283 msgstr "RFC\\ 1101"
7284
7285 #. type: TH
7286 #: build/C/man3/getnetent_r.3:26
7287 #, no-wrap
7288 msgid "GETNETENT_R"
7289 msgstr "GETNETENT_R"
7290
7291 #. type: Plain text
7292 #: build/C/man3/getnetent_r.3:30
7293 msgid ""
7294 "getnetent_r, getnetbyname_r, getnetbyaddr_r - get network entry (reentrant)"
7295 msgstr ""
7296 "getnetent_r, getnetbyname_r, getnetbyaddr_r - ネットワークエントリを\n"
7297 "取得する (リエントラント版)"
7298
7299 #. type: Plain text
7300 #: build/C/man3/getnetent_r.3:37
7301 #, no-wrap
7302 msgid ""
7303 "B<int getnetent_r(struct netent *>I<result_buf>B<, char *>I<buf>B<,>\n"
7304 "B<                size_t >I<buflen>B<, struct netent **>I<result>B<,>\n"
7305 "B<                int *>I<h_errnop>B<);>\n"
7306 msgstr ""
7307 "B<int getnetent_r(struct netent *>I<result_buf>B<, char *>I<buf>B<,>\n"
7308 "B<                size_t >I<buflen>B<, struct netent **>I<result>B<,>\n"
7309 "B<                int *>I<h_errnop>B<);>\n"
7310
7311 #. type: Plain text
7312 #: build/C/man3/getnetent_r.3:42
7313 #, no-wrap
7314 msgid ""
7315 "B<int getnetbyname_r(const char *>I<name>B<,>\n"
7316 "B<                struct netent *>I<result_buf>B<, char *>I<buf>B<,>\n"
7317 "B<                size_t >I<buflen>B<, struct netent **>I<result>B<,>\n"
7318 "B<                int *>I<h_errnop>B<);>\n"
7319 msgstr ""
7320 "B<int getnetbyname_r(const char *>I<name>B<,>\n"
7321 "B<                struct netent *>I<result_buf>B<, char *>I<buf>B<,>\n"
7322 "B<                size_t >I<buflen>B<, struct netent **>I<result>B<,>\n"
7323 "B<                int *>I<h_errnop>B<);>\n"
7324
7325 #. type: Plain text
7326 #: build/C/man3/getnetent_r.3:47
7327 #, no-wrap
7328 msgid ""
7329 "B<int getnetbyaddr_r(uint32_t >I<net>B<, int >I<type>B<,>\n"
7330 "B<                struct netent *>I<result_buf>B<, char *>I<buf>B<,>\n"
7331 "B<                size_t >I<buflen>B<, struct netent **>I<result>B<,>\n"
7332 "B<                int *>I<h_errnop>B<);>\n"
7333 msgstr ""
7334 "B<int getnetbyaddr_r(uint32_t >I<net>B<, int >I<type>B<,>\n"
7335 "B<                struct netent *>I<result_buf>B<, char *>I<buf>B<,>\n"
7336 "B<                size_t >I<buflen>B<, struct netent **>I<result>B<,>\n"
7337 "B<                int *>I<h_errnop>B<);>\n"
7338
7339 #. type: Plain text
7340 #: build/C/man3/getnetent_r.3:58
7341 msgid "B<getnetent_r>(), B<getnetbyname_r>(), B<getnetbyaddr_r>():"
7342 msgstr "B<getnetent_r>(), B<getnetbyname_r>(), B<getnetbyaddr_r>():"
7343
7344 #. type: Plain text
7345 #: build/C/man3/getnetent_r.3:79
7346 msgid ""
7347 "The B<getnetent_r>(), B<getnetbyname_r>(), and B<getnetbyaddr_r>()  "
7348 "functions are the reentrant equivalents of, respectively, B<getnetent>(3), "
7349 "B<getnetbyname>(3), and B<getnetbynumber>(3).  They differ in the way that "
7350 "the I<netent> structure is returned, and in the function calling signature "
7351 "and return value.  This manual page describes just the differences from the "
7352 "nonreentrant functions."
7353 msgstr ""
7354 "関数 B<getnetent_r>(), B<getnetbyname_r>(), B<getnetbyaddr_r>() は、\n"
7355 "それぞれ B<getnetent>(3), B<getnetbyname>(3), B<getnetbynumber>(3) の\n"
7356 "リエントラント版である。\n"
7357 "I<netent> 構造体の返し方と、関数呼び出し時の引き数と返り値が異なる。\n"
7358 "このマニュアルページでは、リエントラントでない関数との違いだけを\n"
7359 "説明する。"
7360
7361 #. type: Plain text
7362 #: build/C/man3/getnetent_r.3:85
7363 msgid ""
7364 "Instead of returning a pointer to a statically allocated I<netent> structure "
7365 "as the function result, these functions copy the structure into the location "
7366 "pointed to by I<result_buf>."
7367 msgstr ""
7368 "これらの関数は、関数の結果として静的に割り当てられた I<netent> 構造体\n"
7369 "へのポインタを返すのではなく、 I<netent> 構造体を I<result_buf> が\n"
7370 "指す場所にコピーする。"
7371
7372 #.  I can find no information on the required/recommended buffer size;
7373 #.  the nonreentrant functions use a 1024 byte buffer -- mtk.
7374 #. type: Plain text
7375 #: build/C/man3/getnetent_r.3:102
7376 msgid ""
7377 "The I<buf> array is used to store the string fields pointed to by the "
7378 "returned I<netent> structure.  (The nonreentrant functions allocate these "
7379 "strings in static storage.)  The size of this array is specified in "
7380 "I<buflen>.  If I<buf> is too small, the call fails with the error B<ERANGE>, "
7381 "and the caller must try again with a larger buffer.  (A buffer of length "
7382 "1024 bytes should be sufficient for most applications.)"
7383 msgstr ""
7384 "配列 I<buf> は、返される I<netent> 構造体が指す文字列フィールドを格納\n"
7385 "するのに使用される (リエントラントでない関数の場合は、\n"
7386 "これらの文字列は静的な領域に格納される)。\n"
7387 "この配列の大きさは I<buflen> で指定される。\n"
7388 "I<buf> が小さすぎる場合、関数呼び出しはエラー B<ERANGE> で失敗し、\n"
7389 "呼び出し側ではもっと大きなバッファで再度呼び出す必要がある (ほとんどの\n"
7390 "アプリケーションでは、長さ 1024 バイトのバッファで十分なはずである)。"
7391
7392 #. type: Plain text
7393 #: build/C/man3/getnetent_r.3:110
7394 msgid ""
7395 "If the function call successfully obtains a network record, then I<*result> "
7396 "is set pointing to I<result_buf>; otherwise, I<*result> is set to NULL."
7397 msgstr ""
7398 "関数呼び出しでネットワークレコードの取得に成功すると、\n"
7399 "I<*result> は I<result_buf> を指すように設定される。\n"
7400 "それ以外の場合は I<*result> に NULL が設定される。"
7401
7402 #.  getnetent.3 doesn't document any use of h_errno, but nevertheless
7403 #.  the nonreentrant functions no seem to set h_errno.
7404 #. type: Plain text
7405 #: build/C/man3/getnetent_r.3:118
7406 msgid ""
7407 "The buffer pointed to by I<h_errnop> is used to return the value that would "
7408 "be stored in the global variable I<h_errno> by the nonreentrant versions of "
7409 "these functions."
7410 msgstr ""
7411 "I<h_errnop> が指すバッファは、リエントラントでない関数では\n"
7412 "グローバル変数 I<h_errno> に格納されていた値を返すのに使用される。"
7413
7414 #. type: Plain text
7415 #: build/C/man3/getnetent_r.3:121 build/C/man3/getprotoent_r.3:111
7416 msgid ""
7417 "On success, these functions return 0.  On error, they return one of the "
7418 "positive error numbers listed in ERRORS."
7419 msgstr ""
7420 "成功すると、これらの関数は 0 を返す。エラーの場合、「エラー」の節の\n"
7421 "リストにある正のエラー番号のいずれかを返す。"
7422
7423 #. type: Plain text
7424 #: build/C/man3/getnetent_r.3:129
7425 msgid ""
7426 "On error, record not found (B<getnetbyname_r>(), B<getnetbyaddr_r>()), or "
7427 "end of input (B<getnetent_r>())  I<result> is set to NULL."
7428 msgstr ""
7429 "エラーの場合、レコードが見つからなかった場合 (B<getnetbyname_r>(),\n"
7430 "B<getnetbyaddr_r>()) やこれ以上レコードがない場合 (B<getnetent_r>())、\n"
7431 "I<result> には NULL が設定される。"
7432
7433 #. type: Plain text
7434 #: build/C/man3/getnetent_r.3:134
7435 msgid "(B<getnetent_r>())  No more records in database."
7436 msgstr "(B<getnetent_r>())  データベースにこれ以上レコードがない。"
7437
7438 #. type: TP
7439 #: build/C/man3/getnetent_r.3:134 build/C/man3/getprotoent_r.3:124
7440 #: build/C/man3/getservent_r.3:123
7441 #, no-wrap
7442 msgid "B<ERANGE>"
7443 msgstr "B<ERANGE>"
7444
7445 #. type: Plain text
7446 #: build/C/man3/getnetent_r.3:141 build/C/man3/getprotoent_r.3:131
7447 #: build/C/man3/getservent_r.3:130
7448 msgid ""
7449 "I<buf> is too small.  Try again with a larger buffer (and increased "
7450 "I<buflen>)."
7451 msgstr ""
7452 "I<buf> が小さすぎる。もっと大きなバッファにして \n"
7453 "(または I<buflen> を増やして) 再度呼び出すこと。"
7454
7455 #. type: Plain text
7456 #: build/C/man3/getnetent_r.3:145 build/C/man3/getprotoent_r.3:135
7457 #: build/C/man3/getservent_r.3:134
7458 msgid ""
7459 "These functions are GNU extensions.  Functions with similar names exist on "
7460 "some other systems, though typically with different calling signatures."
7461 msgstr ""
7462 "これらの関数は GNU による拡張である。\n"
7463 "他のシステムにも同様の名前の関数が存在する場合があるが、\n"
7464 "通常は関数の引き数が異なる。"
7465
7466 #. type: Plain text
7467 #: build/C/man3/getnetent_r.3:148
7468 msgid "B<getnetent>(3), B<networks>(5)"
7469 msgstr "B<getnetent>(3), B<networks>(5)"
7470
7471 #. type: TH
7472 #: build/C/man2/getpeername.2:42
7473 #, no-wrap
7474 msgid "GETPEERNAME"
7475 msgstr "GETPEERNAME"
7476
7477 #. type: TH
7478 #: build/C/man2/getpeername.2:42 build/C/man5/nsswitch.conf.5:25
7479 #, no-wrap
7480 msgid "2013-02-12"
7481 msgstr "2013-02-12"
7482
7483 #. type: Plain text
7484 #: build/C/man2/getpeername.2:45
7485 msgid "getpeername - get name of connected peer socket"
7486 msgstr "getpeername - 接続している相手ソケットの名前を取得する"
7487
7488 #. type: Plain text
7489 #: build/C/man2/getpeername.2:50
7490 msgid ""
7491 "B<int getpeername(int >I<sockfd>B<, struct sockaddr *>I<addr>B<, socklen_t "
7492 "*>I<addrlen>B<);>"
7493 msgstr ""
7494 "B<int getpeername(int >I<sockfd>B<, struct sockaddr *>I<addr>B<, socklen_t "
7495 "*>I<addrlen>B<);>"
7496
7497 #. type: Plain text
7498 #: build/C/man2/getpeername.2:63
7499 msgid ""
7500 "B<getpeername>()  returns the address of the peer connected to the socket "
7501 "I<sockfd>, in the buffer pointed to by I<addr>.  The I<addrlen> argument "
7502 "should be initialized to indicate the amount of space pointed to by "
7503 "I<addr>.  On return it contains the actual size of the name returned (in "
7504 "bytes).  The name is truncated if the buffer provided is too small."
7505 msgstr ""
7506 "B<getpeername>()  は、ソケット(socket)  I<sockfd> に接続している相手のアドレ"
7507 "スを、 I<addr> が指すバッファに格納して返す。 I<addrlen> 引き数は、 I<addr> "
7508 "が指している領域のサイズに初期化しておかなければならない。 関数が返る時に"
7509 "は、 I<addrlen> には実際に返された名前のサイズが (バイト単位で) 格納される。 "
7510 "提供されたバッファが小さすぎた場合には、名前は切り詰められる。"
7511
7512 #. type: Plain text
7513 #: build/C/man2/getpeername.2:68
7514 msgid ""
7515 "The returned address is truncated if the buffer provided is too small; in "
7516 "this case, I<addrlen> will return a value greater than was supplied to the "
7517 "call."
7518 msgstr ""
7519 "渡されたバッファが小さ過ぎた場合は、返されるアドレスの末尾が切り詰められる。 "
7520 "この場合には、 I<addrlen> には、呼び出し時に指定された値よりも大きな値が格納"
7521 "される。"
7522
7523 #. type: Plain text
7524 #: build/C/man2/getpeername.2:73 build/C/man2/shutdown.2:74
7525 msgid ""
7526 "On success, zero is returned.  On error, -1 is returned, and I<errno> is set "
7527 "appropriately."
7528 msgstr ""
7529 "成功した場合は 0 が返される。エラーの場合は -1 が返され、 I<errno> が適切に設"
7530 "定される。"
7531
7532 #. type: TP
7533 #: build/C/man2/getpeername.2:74 build/C/man2/shutdown.2:75
7534 #, no-wrap
7535 msgid "B<EBADF>"
7536 msgstr "B<EBADF>"
7537
7538 #. type: Plain text
7539 #: build/C/man2/getpeername.2:79
7540 msgid "The argument I<sockfd> is not a valid descriptor."
7541 msgstr "引き数 I<sockfd> が有効なディスクリプタでない。"
7542
7543 #. type: TP
7544 #: build/C/man2/getpeername.2:79 build/C/man7/packet.7:470
7545 #: build/C/man7/raw.7:149 build/C/man7/unix.7:336
7546 #, no-wrap
7547 msgid "B<EFAULT>"
7548 msgstr "B<EFAULT>"
7549
7550 #. type: Plain text
7551 #: build/C/man2/getpeername.2:85
7552 msgid ""
7553 "The I<addr> argument points to memory not in a valid part of the process "
7554 "address space."
7555 msgstr ""
7556 "I<addr> 引き数の指しているメモリが有効なプロセスのアドレス空間の 一部でない。"
7557
7558 #. type: Plain text
7559 #: build/C/man2/getpeername.2:89
7560 msgid "I<addrlen> is invalid (e.g., is negative)."
7561 msgstr "I<addrlen> が不正である (例えば、負で場合など)。"
7562
7563 #. type: TP
7564 #: build/C/man2/getpeername.2:89 build/C/man7/packet.7:482
7565 #, no-wrap
7566 msgid "B<ENOBUFS>"
7567 msgstr "B<ENOBUFS>"
7568
7569 #. type: Plain text
7570 #: build/C/man2/getpeername.2:93
7571 msgid ""
7572 "Insufficient resources were available in the system to perform the operation."
7573 msgstr "この操作を行なうのに十分な資源がシステムに存在しない。"
7574
7575 #. type: Plain text
7576 #: build/C/man2/getpeername.2:96
7577 msgid "The socket is not connected."
7578 msgstr "ソケットが接続していない。"
7579
7580 #. type: TP
7581 #: build/C/man2/getpeername.2:96 build/C/man2/shutdown.2:87
7582 #, no-wrap
7583 msgid "B<ENOTSOCK>"
7584 msgstr "B<ENOTSOCK>"
7585
7586 #. type: Plain text
7587 #: build/C/man2/getpeername.2:101
7588 msgid "The argument I<sockfd> is a file, not a socket."
7589 msgstr "引き数 I<sockfd> がソケットでなくてファイルである。"
7590
7591 #. type: Plain text
7592 #: build/C/man2/getpeername.2:105
7593 msgid ""
7594 "SVr4, 4.4BSD (the B<getpeername>()  function call first appeared in 4.2BSD), "
7595 "POSIX.1-2001."
7596 msgstr ""
7597 "SVr4, 4.4BSD (B<getpeername>()  関数は 4.2BSD で登場した), POSIX.1-2001."
7598
7599 #. type: Plain text
7600 #: build/C/man2/getpeername.2:116
7601 msgid ""
7602 "The third argument of B<getpeername>()  is in reality an I<int\\ *> (and "
7603 "this is what 4.x BSD and libc4 and libc5 have).  Some POSIX confusion "
7604 "resulted in the present I<socklen_t>, also used by glibc.  See also B<accept>"
7605 "(2)."
7606 msgstr ""
7607 "B<getpeername>()  の三番目の引き数は実際には I<`int\\ *'> である (4.x BSD, "
7608 "libc4, libc5 では このようになっている)。 POSIX では紆余曲折を経て現在の "
7609 "I<socklen_t> になっており、 glibc でも I<socklen_t> を使っている。 B<accept>"
7610 "(2)  も参照のこと。"
7611
7612 #. type: Plain text
7613 #: build/C/man2/getpeername.2:143
7614 msgid ""
7615 "For stream sockets, once a B<connect>(2)  has been performed, either socket "
7616 "can call B<getpeername>()  to obtain the address of the peer socket.  On the "
7617 "other hand, datagram sockets are connectionless.  Calling B<connect>(2)  on "
7618 "a datagram socket merely sets the peer address for outgoing datagrams sent "
7619 "with B<write>(2)  or B<recv>(2).  The caller of B<connect>(2)  can use "
7620 "B<getpeername>()  to obtain the peer address that it earlier set for the "
7621 "socket.  However, the peer socket is unaware of this information, and "
7622 "calling B<getpeername>()  on the peer socket will return no useful "
7623 "information (unless a B<connect>(2)  call was also executed on the peer).  "
7624 "Note also that the receiver of a datagram can obtain the address of the "
7625 "sender when using B<recvfrom>(2)."
7626 msgstr ""
7627 "ストリームソケットでは、 いったん B<connect>(2) が実行されると、 どのソケット"
7628 "も B<getpeername>() を使って相手ソケットのアドレスを取得できる。 一方、データ"
7629 "グラムソケットはコネクションレスである (接続がない)。 データグラムソケットに"
7630 "対する B<connect>(2) の呼び出しは、 B<write>(2) や B<recv>(2) で送信される出"
7631 "力データグラムの相手アドレスを設定するだけである。\n"
7632 "B<connect>(2) の呼び出し元は、 B<getpeername>() を使って、それ以前にそのソ"
7633 "ケットに設定された相手アドレスを取得することができる。 しかし、相手ソケットは"
7634 "この情報を知らないので、 相手ソケットで B<getpeername>() を呼び出しても、 役"
7635 "に立つ情報は得られない (相手側でも B<connect>(2) が呼び出されている場合を除"
7636 "く)。 なお、データグラムの受信側では B<recvfrom>(2) を使って送信元アドレスを "
7637 "取得できることも覚えておいてほしい。"
7638
7639 #. type: Plain text
7640 #: build/C/man2/getpeername.2:150
7641 msgid ""
7642 "B<accept>(2), B<bind>(2), B<getsockname>(2), B<ip>(7), B<socket>(7), B<unix>"
7643 "(7)"
7644 msgstr ""
7645 "B<accept>(2), B<bind>(2), B<getsockname>(2), B<ip>(7), B<socket>(7), B<unix>"
7646 "(7)"
7647
7648 #. type: TH
7649 #: build/C/man3/getprotoent.3:30
7650 #, no-wrap
7651 msgid "GETPROTOENT"
7652 msgstr "GETPROTOENT"
7653
7654 #. type: Plain text
7655 #: build/C/man3/getprotoent.3:34
7656 msgid ""
7657 "getprotoent, getprotobyname, getprotobynumber, setprotoent, endprotoent - "
7658 "get protocol entry"
7659 msgstr ""
7660 "getprotoent, getprotobyname, getprotobynumber, setprotoent, endprotoent - プ"
7661 "ロトコルのエントリを取得する"
7662
7663 #. type: Plain text
7664 #: build/C/man3/getprotoent.3:39
7665 #, no-wrap
7666 msgid "B<struct protoent *getprotoent(void);>\n"
7667 msgstr "B<struct protoent *getprotoent(void);>\n"
7668
7669 #. type: Plain text
7670 #: build/C/man3/getprotoent.3:41
7671 #, no-wrap
7672 msgid "B<struct protoent *getprotobyname(const char *>I<name>B<);>\n"
7673 msgstr "B<struct protoent *getprotobyname(const char *>I<name>B<);>\n"
7674
7675 #. type: Plain text
7676 #: build/C/man3/getprotoent.3:43
7677 #, no-wrap
7678 msgid "B<struct protoent *getprotobynumber(int >I<proto>B<);>\n"
7679 msgstr "B<struct protoent *getprotobynumber(int >I<proto>B<);>\n"
7680
7681 #. type: Plain text
7682 #: build/C/man3/getprotoent.3:45
7683 #, no-wrap
7684 msgid "B<void setprotoent(int >I<stayopen>B<);>\n"
7685 msgstr "B<void setprotoent(int >I<stayopen>B<);>\n"
7686
7687 #. type: Plain text
7688 #: build/C/man3/getprotoent.3:47
7689 #, no-wrap
7690 msgid "B<void endprotoent(void);>\n"
7691 msgstr "B<void endprotoent(void);>\n"
7692
7693 #. type: Plain text
7694 #: build/C/man3/getprotoent.3:58
7695 msgid ""
7696 "The B<getprotoent>()  function reads the next entry from the protocols "
7697 "database (see B<protocols>(5))  and returns a I<protoent> structure "
7698 "containing the broken-out fields from the entry.  A connection is opened to "
7699 "the database if necessary."
7700 msgstr ""
7701 "B<getprotoent>()  関数は、プロトコルのデータベース (B<protocols>(5)  参照) か"
7702 "ら次のエントリを読み込み、 そのエントリを I<protoent> 構造体の要素別のフィー"
7703 "ルドに格納し、 その構造体を返す。 必要であれば、データベースへの接続がオープ"
7704 "ンされる。"
7705
7706 #. type: Plain text
7707 #: build/C/man3/getprotoent.3:68
7708 msgid ""
7709 "The B<getprotobyname>()  function returns a I<protoent> structure for the "
7710 "entry from the database that matches the protocol name I<name>.  A "
7711 "connection is opened to the database if necessary."
7712 msgstr ""
7713 "B<getprotobyname>()  関数は、プロトコル名 I<name> にマッチするエントリを デー"
7714 "タベースから探し、そのエントリを収めた I<protoent> 構造体を返す。 必要であれ"
7715 "ば、データベースへの接続がオープンされる。"
7716
7717 #. type: Plain text
7718 #: build/C/man3/getprotoent.3:78
7719 msgid ""
7720 "The B<getprotobynumber>()  function returns a I<protoent> structure for the "
7721 "entry from the database that matches the protocol number I<number>.  A "
7722 "connection is opened to the database if necessary."
7723 msgstr ""
7724 "B<getprotobynumber>()  関数は、プロトコル番号 I<number> にマッチするエントリ"
7725 "を データベースから探し、そのエントリを収めた I<protoent> 構造体を返す。 必要"
7726 "であれば、データベースへの接続がオープンされる。"
7727
7728 #. type: Plain text
7729 #: build/C/man3/getprotoent.3:90
7730 msgid ""
7731 "The B<setprotoent>()  function opens a connection to the database, and sets "
7732 "the next entry to the first entry.  If I<stayopen> is nonzero, then the "
7733 "connection to the database will not be closed between calls to one of the "
7734 "B<getproto*>()  functions."
7735 msgstr ""
7736 "B<setprotoent>()  関数はデータベースへの接続をオープンし、 次の読み込みエント"
7737 "リを先頭のエントリに設定する。 I<stayopen> が 0 でない場合、 一つ一つの "
7738 "B<getproto*>()  関数の呼び出し間でデータベースへの接続をクローズしない。"
7739
7740 #. type: Plain text
7741 #: build/C/man3/getprotoent.3:94
7742 msgid "The B<endprotoent>()  function closes the connection to the database."
7743 msgstr "B<endprotoent>()  関数はデータベースへの接続をクローズする。"
7744
7745 #. type: Plain text
7746 #: build/C/man3/getprotoent.3:100
7747 msgid ""
7748 "The I<protoent> structure is defined in I<E<lt>netdb.hE<gt>> as follows:"
7749 msgstr ""
7750 "I<protoent> 構造体は I<E<lt>netdb.hE<gt>> で以下のように定義されている。"
7751
7752 #. type: Plain text
7753 #: build/C/man3/getprotoent.3:108
7754 #, no-wrap
7755 msgid ""
7756 "struct protoent {\n"
7757 "    char  *p_name;       /* official protocol name */\n"
7758 "    char **p_aliases;    /* alias list */\n"
7759 "    int    p_proto;      /* protocol number */\n"
7760 "}\n"
7761 msgstr ""
7762 "struct protoent {\n"
7763 "    char  *p_name;       /* official protocol name */\n"
7764 "    char **p_aliases;    /* alias list */\n"
7765 "    int    p_proto;      /* protocol number */\n"
7766 "}\n"
7767
7768 #. type: Plain text
7769 #: build/C/man3/getprotoent.3:114
7770 msgid "The members of the I<protoent> structure are:"
7771 msgstr "I<protoent> 構造体のメンバーは以下の通り。"
7772
7773 #. type: TP
7774 #: build/C/man3/getprotoent.3:114
7775 #, no-wrap
7776 msgid "I<p_name>"
7777 msgstr "I<p_name>"
7778
7779 #. type: Plain text
7780 #: build/C/man3/getprotoent.3:117
7781 msgid "The official name of the protocol."
7782 msgstr "プロトコルの正式名 (official name)。"
7783
7784 #. type: TP
7785 #: build/C/man3/getprotoent.3:117
7786 #, no-wrap
7787 msgid "I<p_aliases>"
7788 msgstr "I<p_aliases>"
7789
7790 #. type: Plain text
7791 #: build/C/man3/getprotoent.3:120
7792 msgid "A NULL-terminated list of alternative names for the protocol."
7793 msgstr "プロトコルの別名のリスト。 リストは NULL で終端される。"
7794
7795 #. type: TP
7796 #: build/C/man3/getprotoent.3:120
7797 #, no-wrap
7798 msgid "I<p_proto>"
7799 msgstr "I<p_proto>"
7800
7801 #. type: Plain text
7802 #: build/C/man3/getprotoent.3:123
7803 msgid "The protocol number."
7804 msgstr "プロトコルの番号"
7805
7806 #. type: Plain text
7807 #: build/C/man3/getprotoent.3:134
7808 msgid ""
7809 "The B<getprotoent>(), B<getprotobyname>()  and B<getprotobynumber>()  "
7810 "functions return a pointer to a statically allocated I<protoent> structure, "
7811 "or a null pointer if an error occurs or the end of the file is reached."
7812 msgstr ""
7813 "B<getprotoent>(), B<getprotobyname>(), B<getprotobynumber>()  関数は、静的に"
7814 "割り当てられた I<protoent> 構造体へのポインタを返す。 エラーが起こったり、"
7815 "ファイルの最後に達した場合は NULL を返す。"
7816
7817 #. type: TP
7818 #: build/C/man3/getprotoent.3:136 build/C/man5/protocols.5:78
7819 #, no-wrap
7820 msgid "I</etc/protocols>"
7821 msgstr "I</etc/protocols>"
7822
7823 #. type: Plain text
7824 #: build/C/man3/getprotoent.3:139
7825 msgid "protocol database file"
7826 msgstr "プロトコルのデータベースファイル"
7827
7828 #. type: Plain text
7829 #: build/C/man3/getprotoent.3:147
7830 msgid "B<getnetent>(3), B<getprotoent_r>(3), B<getservent>(3), B<protocols>(5)"
7831 msgstr ""
7832 "B<getnetent>(3), B<getprotoent_r>(3), B<getservent>(3), B<protocols>(5)"
7833
7834 #. type: TH
7835 #: build/C/man3/getprotoent_r.3:26
7836 #, no-wrap
7837 msgid "GETPROTOENT_R"
7838 msgstr "GETPROTOENT_R"
7839
7840 #. type: Plain text
7841 #: build/C/man3/getprotoent_r.3:30
7842 msgid ""
7843 "getprotoent_r, getprotobyname_r, getprotobynumber_r - get protocol entry "
7844 "(reentrant)"
7845 msgstr ""
7846 "getprotoent_r, getprotobyname_r, getprotobynumber_r - プロトコル\n"
7847 "エントリを取得する (リエントラント版)"
7848
7849 #. type: Plain text
7850 #: build/C/man3/getprotoent_r.3:36
7851 #, no-wrap
7852 msgid ""
7853 "B<int getprotoent_r(struct protoent *>I<result_buf>B<, char *>I<buf>B<,>\n"
7854 "B<                size_t >I<buflen>B<, struct protoent **>I<result>B<);>\n"
7855 msgstr ""
7856 "B<int getprotoent_r(struct protoent *>I<result_buf>B<, char *>I<buf>B<,>\n"
7857 "B<                size_t >I<buflen>B<, struct protoent **>I<result>B<);>\n"
7858
7859 #. type: Plain text
7860 #: build/C/man3/getprotoent_r.3:40
7861 #, no-wrap
7862 msgid ""
7863 "B<int getprotobyname_r(const char *>I<name>B<,>\n"
7864 "B<                struct protoent *>I<result_buf>B<, char *>I<buf>B<,>\n"
7865 "B<                size_t >I<buflen>B<, struct protoent **>I<result>B<);>\n"
7866 msgstr ""
7867 "B<int getprotobyname_r(const char *>I<name>B<,>\n"
7868 "B<                struct protoent *>I<result_buf>B<, char *>I<buf>B<,>\n"
7869 "B<                size_t >I<buflen>B<, struct protoent **>I<result>B<);>\n"
7870
7871 #. type: Plain text
7872 #: build/C/man3/getprotoent_r.3:44
7873 #, no-wrap
7874 msgid ""
7875 "B<int getprotobynumber_r(int >I<proto>B<,>\n"
7876 "B<                struct protoent *>I<result_buf>B<, char *>I<buf>B<,>\n"
7877 "B<                size_t >I<buflen>B<, struct protoent **>I<result>B<);>\n"
7878 msgstr ""
7879 "B<int getprotobynumber_r(int >I<proto>B<,>\n"
7880 "B<                struct protoent *>I<result_buf>B<, char *>I<buf>B<,>\n"
7881 "B<                size_t >I<buflen>B<, struct protoent **>I<result>B<);>\n"
7882
7883 #. type: Plain text
7884 #: build/C/man3/getprotoent_r.3:55
7885 msgid "B<getprotoent_r>(), B<getprotobyname_r>(), B<getprotobynumber_r>():"
7886 msgstr "B<getprotoent_r>(), B<getprotobyname_r>(), B<getprotobynumber_r>():"
7887
7888 #. type: Plain text
7889 #: build/C/man3/getprotoent_r.3:76
7890 msgid ""
7891 "The B<getprotoent_r>(), B<getprotobyname_r>(), and B<getprotobynumber_r>()  "
7892 "functions are the reentrant equivalents of, respectively, B<getprotoent>(3), "
7893 "B<getprotobyname>(3), and B<getprotobynumber>(3).  They differ in the way "
7894 "that the I<protoent> structure is returned, and in the function calling "
7895 "signature and return value.  This manual page describes just the differences "
7896 "from the nonreentrant functions."
7897 msgstr ""
7898 "関数 B<getprotoent_r>(), B<getprotobyname_r>(),\n"
7899 "B<getprotobynumber_r>() は、それぞれ B<getprotoent>(3),\n"
7900 "B<getprotobyname>(3), B<getprotobynumber>(3) のリエントラント版である。\n"
7901 "I<protoent> 構造体の返し方と、関数呼び出し時の引き数と返り値が異なる。\n"
7902 "このマニュアルページでは、リエントラントでない関数との違いだけを\n"
7903 "説明する。"
7904
7905 #. type: Plain text
7906 #: build/C/man3/getprotoent_r.3:82
7907 msgid ""
7908 "Instead of returning a pointer to a statically allocated I<protoent> "
7909 "structure as the function result, these functions copy the structure into "
7910 "the location pointed to by I<result_buf>."
7911 msgstr ""
7912 "これらの関数は、関数の結果として静的に割り当てられた I<protoent> 構造体\n"
7913 "へのポインタを返すのではなく、 I<protoent> 構造体を I<result_buf> が\n"
7914 "指す場所にコピーする。"
7915
7916 #.  I can find no information on the required/recommended buffer size;
7917 #.  the nonreentrant functions use a 1024 byte buffer.
7918 #.  The 1024 byte value is also what the Solaris man page suggests. -- mtk
7919 #. type: Plain text
7920 #: build/C/man3/getprotoent_r.3:100
7921 msgid ""
7922 "The I<buf> array is used to store the string fields pointed to by the "
7923 "returned I<protoent> structure.  (The nonreentrant functions allocate these "
7924 "strings in static storage.)  The size of this array is specified in "
7925 "I<buflen>.  If I<buf> is too small, the call fails with the error B<ERANGE>, "
7926 "and the caller must try again with a larger buffer.  (A buffer of length "
7927 "1024 bytes should be sufficient for most applications.)"
7928 msgstr ""
7929 "配列 I<buf> は、返される I<protoent> 構造体が指す文字列フィールドを\n"
7930 "格納するのに使用される (リエントラントでない関数の場合は、\n"
7931 "これらの文字列は静的な領域に格納される)。\n"
7932 "この配列の大きさは I<buflen> で指定される。\n"
7933 "I<buf> が小さすぎる場合、関数呼び出しはエラー B<ERANGE> で失敗し、\n"
7934 "呼び出し側ではもっと大きなバッファで再度呼び出す必要がある (ほとんどの\n"
7935 "アプリケーションでは、長さ 1024 バイトのバッファで十分なはずである)。"
7936
7937 #. type: Plain text
7938 #: build/C/man3/getprotoent_r.3:108
7939 msgid ""
7940 "If the function call successfully obtains a protocol record, then I<*result> "
7941 "is set pointing to I<result_buf>; otherwise, I<*result> is set to NULL."
7942 msgstr ""
7943 "関数呼び出しでプロトコルレコードの取得に成功すると、\n"
7944 "I<*result> は I<result_buf> を指すように設定される。\n"
7945 "それ以外の場合は I<*result> に NULL が設定される。"
7946
7947 #. type: Plain text
7948 #: build/C/man3/getprotoent_r.3:119
7949 msgid ""
7950 "On error, record not found (B<getprotobyname_r>(), B<getprotobynumber_r>()), "
7951 "or end of input (B<getprotoent_r>())  I<result> is set to NULL."
7952 msgstr ""
7953 "エラーの場合、レコードが見つからなかった場合 (B<getprotobyname_r>(),\n"
7954 "B<getprotobyaddr_r>()) やこれ以上レコードがない場合\n"
7955 "(B<getprotoent_r>())、I<result> には NULL が設定される。"
7956
7957 #. type: Plain text
7958 #: build/C/man3/getprotoent_r.3:124
7959 msgid "(B<getprotoent_r>())  No more records in database."
7960 msgstr "(B<getprotoent_r>())  データベースにこれ以上レコードがない。"
7961
7962 #. type: Plain text
7963 #: build/C/man3/getprotoent_r.3:149
7964 msgid ""
7965 "The program below uses B<getprotobyname_r>()  to retrieve the protocol "
7966 "record for the protocol named in its first command-line argument.  If a "
7967 "second (integer) command-line argument is supplied, it is used as the "
7968 "initial value for I<buflen>; if B<getprotobyname_r>()  fails with the error "
7969 "B<ERANGE>, the program retries with larger buffer sizes.  The following "
7970 "shell session shows a couple of sample runs:"
7971 msgstr ""
7972 "以下のプログラムは、 B<getprotobyname_r>() を使って、最初のコマンド\n"
7973 "ライン引き数で指定された名前のプロトコルのレコードを取得する。\n"
7974 "二番目のコマンドライン引き数 (整数値) が指定された場合は、\n"
7975 "その値が I<buflen> の初期値として使用される。\n"
7976 "B<getprotobyname_r>() がエラー B<ERANGE> で失敗すると、プログラムは\n"
7977 "より大きなバッファサイズで再度 B<getprotobyname_r> を呼び出す。\n"
7978 "下記のシェルのセッションは、実行例を示している。"
7979
7980 #. type: Plain text
7981 #: build/C/man3/getprotoent_r.3:160
7982 #, no-wrap
7983 msgid ""
7984 "$B< ./a.out tcp 1>\n"
7985 "ERANGE! Retrying with larger buffer\n"
7986 "getprotobyname_r() returned: 0 (success)  (buflen=78)\n"
7987 "p_name=tcp; p_proto=6; aliases=TCP\n"
7988 "$B< ./a.out xxx 1>\n"
7989 "ERANGE! Retrying with larger buffer\n"
7990 "getprotobyname_r() returned: 0 (success)  (buflen=100)\n"
7991 "Call failed/record not found\n"
7992 msgstr ""
7993 "$B< ./a.out tcp 1>\n"
7994 "ERANGE! Retrying with larger buffer\n"
7995 "getprotobyname_r() returned: 0 (success)  (buflen=78)\n"
7996 "p_name=tcp; p_proto=6; aliases=TCP\n"
7997 "$B< ./a.out xxx 1>\n"
7998 "ERANGE! Retrying with larger buffer\n"
7999 "getprotobyname_r() returned: 0 (success)  (buflen=100)\n"
8000 "Call failed/record not found\n"
8001
8002 #. type: Plain text
8003 #: build/C/man3/getprotoent_r.3:172 build/C/man3/getservent_r.3:170
8004 #, no-wrap
8005 msgid ""
8006 "#define _GNU_SOURCE\n"
8007 "#include E<lt>ctype.hE<gt>\n"
8008 "#include E<lt>netdb.hE<gt>\n"
8009 "#include E<lt>stdlib.hE<gt>\n"
8010 "#include E<lt>stdio.hE<gt>\n"
8011 "#include E<lt>errno.hE<gt>\n"
8012 "#include E<lt>string.hE<gt>\n"
8013 msgstr ""
8014 "#define _GNU_SOURCE\n"
8015 "#include E<lt>ctype.hE<gt>\n"
8016 "#include E<lt>netdb.hE<gt>\n"
8017 "#include E<lt>stdlib.hE<gt>\n"
8018 "#include E<lt>stdio.hE<gt>\n"
8019 "#include E<lt>errno.hE<gt>\n"
8020 "#include E<lt>string.hE<gt>\n"
8021
8022 #. type: Plain text
8023 #: build/C/man3/getprotoent_r.3:174 build/C/man3/getservent_r.3:172
8024 #, no-wrap
8025 msgid "#define MAX_BUF 10000\n"
8026 msgstr "#define MAX_BUF 10000\n"
8027
8028 #. type: Plain text
8029 #: build/C/man3/getprotoent_r.3:183
8030 #, no-wrap
8031 msgid ""
8032 "int\n"
8033 "main(int argc, char *argv[])\n"
8034 "{\n"
8035 "    int buflen, erange_cnt, s;\n"
8036 "    struct protoent result_buf;\n"
8037 "    struct protoent *result;\n"
8038 "    char buf[MAX_BUF];\n"
8039 "    char **p;\n"
8040 msgstr ""
8041 "int\n"
8042 "main(int argc, char *argv[])\n"
8043 "{\n"
8044 "    int buflen, erange_cnt, s;\n"
8045 "    struct protoent result_buf;\n"
8046 "    struct protoent *result;\n"
8047 "    char buf[MAX_BUF];\n"
8048 "    char **p;\n"
8049
8050 #. type: Plain text
8051 #: build/C/man3/getprotoent_r.3:188
8052 #, no-wrap
8053 msgid ""
8054 "    if (argc E<lt> 2) {\n"
8055 "        printf(\"Usage: %s proto-name [buflen]\\en\", argv[0]);\n"
8056 "        exit(EXIT_FAILURE);\n"
8057 "    }\n"
8058 msgstr ""
8059 "    if (argc E<lt> 2) {\n"
8060 "        printf(\"Usage: %s proto-name [buflen]\\en\", argv[0]);\n"
8061 "        exit(EXIT_FAILURE);\n"
8062 "    }\n"
8063
8064 #. type: Plain text
8065 #: build/C/man3/getprotoent_r.3:192
8066 #, no-wrap
8067 msgid ""
8068 "    buflen = 1024;\n"
8069 "    if (argc E<gt> 2)\n"
8070 "        buflen = atoi(argv[2]);\n"
8071 msgstr ""
8072 "    buflen = 1024;\n"
8073 "    if (argc E<gt> 2)\n"
8074 "        buflen = atoi(argv[2]);\n"
8075
8076 #. type: Plain text
8077 #: build/C/man3/getprotoent_r.3:197 build/C/man3/getservent_r.3:200
8078 #, no-wrap
8079 msgid ""
8080 "    if (buflen E<gt> MAX_BUF) {\n"
8081 "        printf(\"Exceeded buffer limit (%d)\\en\", MAX_BUF);\n"
8082 "        exit(EXIT_FAILURE);\n"
8083 "    }\n"
8084 msgstr ""
8085 "    if (buflen E<gt> MAX_BUF) {\n"
8086 "        printf(\"Exceeded buffer limit (%d)\\en\", MAX_BUF);\n"
8087 "        exit(EXIT_FAILURE);\n"
8088 "    }\n"
8089
8090 #. type: Plain text
8091 #: build/C/man3/getprotoent_r.3:206
8092 #, no-wrap
8093 msgid ""
8094 "    erange_cnt = 0;\n"
8095 "    do {\n"
8096 "        s = getprotobyname_r(argv[1], &result_buf,\n"
8097 "                     buf, buflen, &result);\n"
8098 "        if (s == ERANGE) {\n"
8099 "            if (erange_cnt == 0)\n"
8100 "                printf(\"ERANGE! Retrying with larger buffer\\en\");\n"
8101 "            erange_cnt++;\n"
8102 msgstr ""
8103 "    erange_cnt = 0;\n"
8104 "    do {\n"
8105 "        s = getprotobyname_r(argv[1], &result_buf,\n"
8106 "                     buf, buflen, &result);\n"
8107 "        if (s == ERANGE) {\n"
8108 "            if (erange_cnt == 0)\n"
8109 "                printf(\"ERANGE! Retrying with larger buffer\\en\");\n"
8110 "            erange_cnt++;\n"
8111
8112 #. type: Plain text
8113 #: build/C/man3/getprotoent_r.3:209 build/C/man3/getservent_r.3:212
8114 #, no-wrap
8115 msgid ""
8116 "            /* Increment a byte at a time so we can see exactly\n"
8117 "               what size buffer was required */\n"
8118 msgstr ""
8119 "            /* Increment a byte at a time so we can see exactly\n"
8120 "               what size buffer was required */\n"
8121
8122 #. type: Plain text
8123 #: build/C/man3/getprotoent_r.3:211 build/C/man3/getservent_r.3:214
8124 #, no-wrap
8125 msgid "            buflen++;\n"
8126 msgstr "            buflen++;\n"
8127
8128 #. type: Plain text
8129 #: build/C/man3/getprotoent_r.3:218 build/C/man3/getservent_r.3:221
8130 #, no-wrap
8131 msgid ""
8132 "            if (buflen E<gt> MAX_BUF) {\n"
8133 "                printf(\"Exceeded buffer limit (%d)\\en\", MAX_BUF);\n"
8134 "                exit(EXIT_FAILURE);\n"
8135 "            }\n"
8136 "        }\n"
8137 "    } while (s == ERANGE);\n"
8138 msgstr ""
8139 "            if (buflen E<gt> MAX_BUF) {\n"
8140 "                printf(\"Exceeded buffer limit (%d)\\en\", MAX_BUF);\n"
8141 "                exit(EXIT_FAILURE);\n"
8142 "            }\n"
8143 "        }\n"
8144 "    } while (s == ERANGE);\n"
8145
8146 #. type: Plain text
8147 #: build/C/man3/getprotoent_r.3:222
8148 #, no-wrap
8149 msgid ""
8150 "    printf(\"getprotobyname_r() returned: %s  (buflen=%d)\\en\",\n"
8151 "            (s == 0) ? \"0 (success)\" : (s == ENOENT) ? \"ENOENT\" :\n"
8152 "            strerror(s), buflen);\n"
8153 msgstr ""
8154 "    printf(\"getprotobyname_r() returned: %s  (buflen=%d)\\en\",\n"
8155 "            (s == 0) ? \"0 (success)\" : (s == ENOENT) ? \"ENOENT\" :\n"
8156 "            strerror(s), buflen);\n"
8157
8158 #. type: Plain text
8159 #: build/C/man3/getprotoent_r.3:227 build/C/man3/getservent_r.3:230
8160 #, no-wrap
8161 msgid ""
8162 "    if (s != 0 || result == NULL) {\n"
8163 "        printf(\"Call failed/record not found\\en\");\n"
8164 "        exit(EXIT_FAILURE);\n"
8165 "    }\n"
8166 msgstr ""
8167 "    if (s != 0 || result == NULL) {\n"
8168 "        printf(\"Call failed/record not found\\en\");\n"
8169 "        exit(EXIT_FAILURE);\n"
8170 "    }\n"
8171
8172 #. type: Plain text
8173 #: build/C/man3/getprotoent_r.3:233
8174 #, no-wrap
8175 msgid ""
8176 "    printf(\"p_name=%s; p_proto=%d; aliases=\",\n"
8177 "                result_buf.p_name, result_buf.p_proto);\n"
8178 "    for (p = result_buf.p_aliases; *p != NULL; p++)\n"
8179 "        printf(\"%s \", *p);\n"
8180 "    printf(\"\\en\");\n"
8181 msgstr ""
8182 "    printf(\"p_name=%s; p_proto=%d; aliases=\",\n"
8183 "                result_buf.p_name, result_buf.p_proto);\n"
8184 "    for (p = result_buf.p_aliases; *p != NULL; p++)\n"
8185 "        printf(\"%s \", *p);\n"
8186 "    printf(\"\\en\");\n"
8187
8188 #. type: Plain text
8189 #: build/C/man3/getprotoent_r.3:240
8190 msgid "B<getprotoent>(3), B<protocols>(5)"
8191 msgstr "B<getprotoent>(3), B<protocols>(5)"
8192
8193 #. type: TH
8194 #: build/C/man3/getservent.3:34
8195 #, no-wrap
8196 msgid "GETSERVENT"
8197 msgstr "GETSERVENT"
8198
8199 #. type: Plain text
8200 #: build/C/man3/getservent.3:38
8201 msgid ""
8202 "getservent, getservbyname, getservbyport, setservent, endservent - get "
8203 "service entry"
8204 msgstr ""
8205 "getservent, getservbyname, getservbyport, setservent, endservent - サービスの"
8206 "エントリを取得する"
8207
8208 #. type: Plain text
8209 #: build/C/man3/getservent.3:43
8210 #, no-wrap
8211 msgid "B<struct servent *getservent(void);>\n"
8212 msgstr "B<struct servent *getservent(void);>\n"
8213
8214 #. type: Plain text
8215 #: build/C/man3/getservent.3:45
8216 #, no-wrap
8217 msgid "B<struct servent *getservbyname(const char *>I<name>B<, const char *>I<proto>B<);>\n"
8218 msgstr "B<struct servent *getservbyname(const char *>I<name>B<, const char *>I<proto>B<);>\n"
8219
8220 #. type: Plain text
8221 #: build/C/man3/getservent.3:47
8222 #, no-wrap
8223 msgid "B<struct servent *getservbyport(int >I<port>B<, const char *>I<proto>B<);>\n"
8224 msgstr "B<struct servent *getservbyport(int >I<port>B<, const char *>I<proto>B<);>\n"
8225
8226 #. type: Plain text
8227 #: build/C/man3/getservent.3:49
8228 #, no-wrap
8229 msgid "B<void setservent(int >I<stayopen>B<);>\n"
8230 msgstr "B<void setservent(int >I<stayopen>B<);>\n"
8231
8232 #. type: Plain text
8233 #: build/C/man3/getservent.3:51
8234 #, no-wrap
8235 msgid "B<void endservent(void);>\n"
8236 msgstr "B<void endservent(void);>\n"
8237
8238 #. type: Plain text
8239 #: build/C/man3/getservent.3:62
8240 msgid ""
8241 "The B<getservent>()  function reads the next entry from the services "
8242 "database (see B<services>(5))  and returns a I<servent> structure containing "
8243 "the broken-out fields from the entry.  A connection is opened to the "
8244 "database if necessary."
8245 msgstr ""
8246 "B<getservent>()  関数はサービスのデータベース (B<services>(5)  参照) から次の"
8247 "エントリを読み込み、 そのエントリを I<servent> 構造体の要素別のフィールドに格"
8248 "納し、 その構造体を返す。 必要であれば、データベースへの接続がオープンされ"
8249 "る。"
8250
8251 #. type: Plain text
8252 #: build/C/man3/getservent.3:77
8253 msgid ""
8254 "The B<getservbyname>()  function returns a I<servent> structure for the "
8255 "entry from the database that matches the service I<name> using protocol "
8256 "I<proto>.  If I<proto> is NULL, any protocol will be matched.  A connection "
8257 "is opened to the database if necessary."
8258 msgstr ""
8259 "B<getservbyname>()  関数は、 プロトコル I<proto> を用いるサービスの名前 "
8260 "I<name> にマッチするエントリをデータベースから探し、 そのエントリを収めた "
8261 "I<servent> 構造体を返す。 I<proto> が NULL の場合は、任意のプロトコルにマッチ"
8262 "する。 必要であれば、データベースへの接続がオープンされる。"
8263
8264 #. type: Plain text
8265 #: build/C/man3/getservent.3:93
8266 msgid ""
8267 "The B<getservbyport>()  function returns a I<servent> structure for the "
8268 "entry from the database that matches the port I<port> (given in network byte "
8269 "order)  using protocol I<proto>.  If I<proto> is NULL, any protocol will be "
8270 "matched.  A connection is opened to the database if necessary."
8271 msgstr ""
8272 "B<getservbyport>()  関数は、 プロトコル I<proto> を用いるサービスのポート番"
8273 "号 I<port> にマッチするエントリをデータベースから探し、 そのエントリの内容を"
8274 "収めた I<servent> 構造体を返す (ポート番号 I<port> はネットワーク・バイトオー"
8275 "ダで指定する)。 I<proto> が NULL の場合は任意のプロトコルにマッチする。 必要"
8276 "であれば、データベースへの接続がオープンされる。"
8277
8278 #. type: Plain text
8279 #: build/C/man3/getservent.3:105
8280 msgid ""
8281 "The B<setservent>()  function opens a connection to the database, and sets "
8282 "the next entry to the first entry.  If I<stayopen> is nonzero, then the "
8283 "connection to the database will not be closed between calls to one of the "
8284 "B<getserv*>()  functions."
8285 msgstr ""
8286 "B<setservent>()  関数はデータベースへの接続をオープンし、 次の読み込みエント"
8287 "リを先頭のエントリに設定する。 I<stayopen> が 0 でない場合、 一つ一つの "
8288 "B<getserv*>()  関数の呼び出し間でデータベースへの接続をクローズしない。"
8289
8290 #. type: Plain text
8291 #: build/C/man3/getservent.3:109
8292 msgid "The B<endservent>()  function closes the connection to the database."
8293 msgstr "B<endservent>()  関数はデータベースへの接続をクローズする。"
8294
8295 #. type: Plain text
8296 #: build/C/man3/getservent.3:115
8297 msgid "The I<servent> structure is defined in I<E<lt>netdb.hE<gt>> as follows:"
8298 msgstr ""
8299 "I<servent> 構造体は I<E<lt>netdb.hE<gt>> で以下のように定義されている。"
8300
8301 #. type: Plain text
8302 #: build/C/man3/getservent.3:124
8303 #, no-wrap
8304 msgid ""
8305 "struct servent {\n"
8306 "    char  *s_name;       /* official service name */\n"
8307 "    char **s_aliases;    /* alias list */\n"
8308 "    int    s_port;       /* port number */\n"
8309 "    char  *s_proto;      /* protocol to use */\n"
8310 "}\n"
8311 msgstr ""
8312 "struct servent {\n"
8313 "    char  *s_name;       /* official service name */\n"
8314 "    char **s_aliases;    /* alias list */\n"
8315 "    int    s_port;       /* port number */\n"
8316 "    char  *s_proto;      /* protocol to use */\n"
8317 "}\n"
8318
8319 #. type: Plain text
8320 #: build/C/man3/getservent.3:130
8321 msgid "The members of the I<servent> structure are:"
8322 msgstr "I<servent> 構造体のメンバーは以下の通り。"
8323
8324 #. type: TP
8325 #: build/C/man3/getservent.3:130
8326 #, no-wrap
8327 msgid "I<s_name>"
8328 msgstr "I<s_name>"
8329
8330 #. type: Plain text
8331 #: build/C/man3/getservent.3:133
8332 msgid "The official name of the service."
8333 msgstr "サービスの正式名 (official name)。"
8334
8335 #. type: TP
8336 #: build/C/man3/getservent.3:133
8337 #, no-wrap
8338 msgid "I<s_aliases>"
8339 msgstr "I<s_aliases>"
8340
8341 #. type: Plain text
8342 #: build/C/man3/getservent.3:136
8343 msgid "A NULL-terminated list of alternative names for the service."
8344 msgstr "サービスの別名のリスト。 リストは NULL で終端される。"
8345
8346 #. type: TP
8347 #: build/C/man3/getservent.3:136
8348 #, no-wrap
8349 msgid "I<s_port>"
8350 msgstr "I<s_port>"
8351
8352 #. type: Plain text
8353 #: build/C/man3/getservent.3:139
8354 msgid "The port number for the service given in network byte order."
8355 msgstr "サービスのポート番号。ネットワークバイトオーダで指定される。"
8356
8357 #. type: TP
8358 #: build/C/man3/getservent.3:139
8359 #, no-wrap
8360 msgid "I<s_proto>"
8361 msgstr "I<s_proto>"
8362
8363 #. type: Plain text
8364 #: build/C/man3/getservent.3:142
8365 msgid "The name of the protocol to use with this service."
8366 msgstr "このサービスと共に用いるプロトコルの名前。"
8367
8368 #. type: Plain text
8369 #: build/C/man3/getservent.3:153
8370 msgid ""
8371 "The B<getservent>(), B<getservbyname>()  and B<getservbyport>()  functions "
8372 "return a pointer to a statically allocated I<servent> structure, or NULL if "
8373 "an error occurs or the end of the file is reached."
8374 msgstr ""
8375 "B<getservent>(), B<getservbyname>(), B<getservbyport>()  関数は、 静的に割り"
8376 "当てられた I<servent> 構造体へのポインタを返す。 エラーが起こったり、ファイル"
8377 "の末尾に達した場合は NULL を返す。"
8378
8379 #. type: TP
8380 #: build/C/man3/getservent.3:154 build/C/man5/services.5:186
8381 #, no-wrap
8382 msgid "I</etc/services>"
8383 msgstr "I</etc/services>"
8384
8385 #. type: Plain text
8386 #: build/C/man3/getservent.3:157
8387 msgid "services database file"
8388 msgstr "サービスのデータベースファイル"
8389
8390 #. type: Plain text
8391 #: build/C/man3/getservent.3:164
8392 msgid "B<getnetent>(3), B<getprotoent>(3), B<getservent_r>(3), B<services>(5)"
8393 msgstr "B<getnetent>(3), B<getprotoent>(3), B<getservent_r>(3), B<services>(5)"
8394
8395 #. type: TH
8396 #: build/C/man3/getservent_r.3:26
8397 #, no-wrap
8398 msgid "GETSERVENT_R"
8399 msgstr "GETSERVENT_R"
8400
8401 #. type: Plain text
8402 #: build/C/man3/getservent_r.3:30
8403 msgid ""
8404 "getservent_r, getservbyname_r, getservbyport_r - get service entry "
8405 "(reentrant)"
8406 msgstr ""
8407 "getservent_r, getservbyname_r, getservbyport_r - サービスエントリを\n"
8408 "取得する (リエントラント版)"
8409
8410 #. type: Plain text
8411 #: build/C/man3/getservent_r.3:36
8412 #, no-wrap
8413 msgid ""
8414 "B<int getservent_r(struct servent *>I<result_buf>B<, char *>I<buf>B<,>\n"
8415 "B<                size_t >I<buflen>B<, struct servent **>I<result>B<);>\n"
8416 msgstr ""
8417 "B<int getservent_r(struct servent *>I<result_buf>B<, char *>I<buf>B<,>\n"
8418 "B<                size_t >I<buflen>B<, struct servent **>I<result>B<);>\n"
8419
8420 #. type: Plain text
8421 #: build/C/man3/getservent_r.3:40
8422 #, no-wrap
8423 msgid ""
8424 "B<int getservbyname_r(const char *>I<name>B<, const char *>I<proto>B<,>\n"
8425 "B<                struct servent *>I<result_buf>B<, char *>I<buf>B<,>\n"
8426 "B<                size_t >I<buflen>B<, struct servent **>I<result>B<);>\n"
8427 msgstr ""
8428 "B<int getservbyname_r(const char *>I<name>B<, const char *>I<proto>B<,>\n"
8429 "B<                struct servent *>I<result_buf>B<, char *>I<buf>B<,>\n"
8430 "B<                size_t >I<buflen>B<, struct servent **>I<result>B<);>\n"
8431
8432 #. type: Plain text
8433 #: build/C/man3/getservent_r.3:44
8434 #, no-wrap
8435 msgid ""
8436 "B<int getservbyport_r(int >I<port>B<, const char *>I<proto>B<,>\n"
8437 "B<                struct servent *>I<result_buf>B<, char *>I<buf>B<,>\n"
8438 "B<                size_t >I<buflen>B<, struct servent **>I<result>B<);>\n"
8439 msgstr ""
8440 "B<int getservbyport_r(int >I<port>B<, const char *>I<proto>B<,>\n"
8441 "B<                struct servent *>I<result_buf>B<, char *>I<buf>B<,>\n"
8442 "B<                size_t >I<buflen>B<, struct servent **>I<result>B<);>\n"
8443
8444 #. type: Plain text
8445 #: build/C/man3/getservent_r.3:55
8446 msgid "B<getservent_r>(), B<getservbyname_r>(), B<getservbyport_r>():"
8447 msgstr "B<getservent_r>(), B<getservbyname_r>(), B<getservbyport_r>():"
8448
8449 #. type: Plain text
8450 #: build/C/man3/getservent_r.3:76
8451 msgid ""
8452 "The B<getservent_r>(), B<getservbyname_r>(), and B<getservbyport_r>()  "
8453 "functions are the reentrant equivalents of, respectively, B<getservent>(3), "
8454 "B<getservbyname>(3), and B<getservbyport>(3).  They differ in the way that "
8455 "the I<servent> structure is returned, and in the function calling signature "
8456 "and return value.  This manual page describes just the differences from the "
8457 "nonreentrant functions."
8458 msgstr ""
8459 "関数 B<getservent_r>(), B<getservbyname_r>(), B<getservbyport_r>() は、\n"
8460 "それぞれ B<getservent>(3), B<getservbyname>(3), B<getservbyport>(3) の\n"
8461 "リエントラント版である。\n"
8462 "I<servent> 構造体の返し方と、関数呼び出し時の引き数と返り値が異なる。\n"
8463 "このマニュアルページでは、リエントラントでない関数との違いだけを\n"
8464 "説明する。"
8465
8466 #. type: Plain text
8467 #: build/C/man3/getservent_r.3:82
8468 msgid ""
8469 "Instead of returning a pointer to a statically allocated I<servent> "
8470 "structure as the function result, these functions copy the structure into "
8471 "the location pointed to by I<result_buf>."
8472 msgstr ""
8473 "これらの関数は、関数の結果として静的に割り当てられた I<servent> 構造体\n"
8474 "へのポインタを返すのではなく、 I<servent> 構造体を I<result_buf> が\n"
8475 "指す場所にコピーする。"
8476
8477 #.  I can find no information on the required/recommended buffer size;
8478 #.  the nonreentrant functions use a 1024 byte buffer -- mtk.
8479 #. type: Plain text
8480 #: build/C/man3/getservent_r.3:99
8481 msgid ""
8482 "The I<buf> array is used to store the string fields pointed to by the "
8483 "returned I<servent> structure.  (The nonreentrant functions allocate these "
8484 "strings in static storage.)  The size of this array is specified in "
8485 "I<buflen>.  If I<buf> is too small, the call fails with the error B<ERANGE>, "
8486 "and the caller must try again with a larger buffer.  (A buffer of length "
8487 "1024 bytes should be sufficient for most applications.)"
8488 msgstr ""
8489 "配列 I<buf> は、返される I<servent> 構造体が指す文字列フィールドを\n"
8490 "格納するのに使用される (リエントラントでない関数の場合は、\n"
8491 "これらの文字列は静的な領域に格納される)。\n"
8492 "この配列の大きさは I<buflen> で指定される。\n"
8493 "I<buf> が小さすぎる場合、関数呼び出しはエラー B<ERANGE> で失敗し、\n"
8494 "呼び出し側ではもっと大きなバッファで再度呼び出す必要がある (ほとんどの\n"
8495 "アプリケーションでは、長さ 1024 バイトのバッファで十分なはずである)。"
8496
8497 #. type: Plain text
8498 #: build/C/man3/getservent_r.3:107
8499 msgid ""
8500 "If the function call successfully obtains a service record, then I<*result> "
8501 "is set pointing to I<result_buf>; otherwise, I<*result> is set to NULL."
8502 msgstr ""
8503 "関数呼び出しでサービスレコードの取得に成功すると、\n"
8504 "I<*result> は I<result_buf> を指すように設定される。\n"
8505 "それ以外の場合は I<*result> に NULL が設定される。"
8506
8507 #. type: Plain text
8508 #: build/C/man3/getservent_r.3:110
8509 msgid ""
8510 "On success, these functions return 0.  On error, they return one of the "
8511 "positive error numbers listed in errors."
8512 msgstr ""
8513 "成功すると、これらの関数は 0 を返す。エラーの場合、「エラー」の節の\n"
8514 "リストにある正のエラー番号のいずれかを返す。"
8515
8516 #. type: Plain text
8517 #: build/C/man3/getservent_r.3:118
8518 msgid ""
8519 "On error, record not found (B<getservbyname_r>(), B<getservbyport_r>()), or "
8520 "end of input (B<getservent_r>())  I<result> is set to NULL."
8521 msgstr ""
8522 "エラーの場合、レコードが見つからなかった場合 (B<getservbyname_r>(),\n"
8523 "B<getservbyaddr_r>()) やこれ以上レコードがない場合 (B<getservent_r>())、\n"
8524 "I<result> には NULL が設定される。"
8525
8526 #. type: Plain text
8527 #: build/C/man3/getservent_r.3:123
8528 msgid "(B<getservent_r>())  No more records in database."
8529 msgstr "(B<getservent_r>())  データベースにこれ以上レコードがない。"
8530
8531 #. type: Plain text
8532 #: build/C/man3/getservent_r.3:148
8533 msgid ""
8534 "The program below uses B<getservbyport_r>()  to retrieve the service record "
8535 "for the port and protocol named in its first command-line argument.  If a "
8536 "third (integer) command-line argument is supplied, it is used as the initial "
8537 "value for I<buflen>; if B<getservbyport_r>()  fails with the error "
8538 "B<ERANGE>, the program retries with larger buffer sizes.  The following "
8539 "shell session shows a couple of sample runs:"
8540 msgstr ""
8541 "以下のプログラムは、 B<getservbyport_r>() を使って、コマンド\n"
8542 "ライン引き数で指定されたポート番号とプロトコル名を持つ\n"
8543 "サービスレコードを取得する。\n"
8544 "三番目のコマンドライン引き数 (整数値) が指定された場合は、\n"
8545 "その値が I<buflen> の初期値として使用される。\n"
8546 "B<getservbyport_r>() がエラー B<ERANGE> で失敗すると、プログラムは\n"
8547 "より大きなバッファサイズで再度 B<getservbyport_r> を呼び出す。\n"
8548 "下記のシェルのセッションは実行例を示している。"
8549
8550 #. type: Plain text
8551 #: build/C/man3/getservent_r.3:158
8552 #, no-wrap
8553 msgid ""
8554 "$B< ./a.out 7 tcp 1>\n"
8555 "ERANGE! Retrying with larger buffer\n"
8556 "getservbyport_r() returned: 0 (success)  (buflen=87)\n"
8557 "s_name=echo; s_proto=tcp; s_port=7; aliases=\n"
8558 "$B< ./a.out 77777 tcp>\n"
8559 "getservbyport_r() returned: 0 (success)  (buflen=1024)\n"
8560 "Call failed/record not found\n"
8561 msgstr ""
8562 "$B< ./a.out 7 tcp 1>\n"
8563 "ERANGE! Retrying with larger buffer\n"
8564 "getservbyport_r() returned: 0 (success)  (buflen=87)\n"
8565 "s_name=echo; s_proto=tcp; s_port=7; aliases=\n"
8566 "$B< ./a.out 77777 tcp>\n"
8567 "getservbyport_r() returned: 0 (success)  (buflen=1024)\n"
8568 "Call failed/record not found\n"
8569
8570 #. type: Plain text
8571 #: build/C/man3/getservent_r.3:182
8572 #, no-wrap
8573 msgid ""
8574 "int\n"
8575 "main(int argc, char *argv[])\n"
8576 "{\n"
8577 "    int buflen, erange_cnt, port, s;\n"
8578 "    struct servent result_buf;\n"
8579 "    struct servent *result;\n"
8580 "    char buf[MAX_BUF];\n"
8581 "    char *protop;\n"
8582 "    char **p;\n"
8583 msgstr ""
8584 "int\n"
8585 "main(int argc, char *argv[])\n"
8586 "{\n"
8587 "    int buflen, erange_cnt, port, s;\n"
8588 "    struct servent result_buf;\n"
8589 "    struct servent *result;\n"
8590 "    char buf[MAX_BUF];\n"
8591 "    char *protop;\n"
8592 "    char **p;\n"
8593
8594 #. type: Plain text
8595 #: build/C/man3/getservent_r.3:187
8596 #, no-wrap
8597 msgid ""
8598 "    if (argc E<lt> 3) {\n"
8599 "        printf(\"Usage: %s port-num proto-name [buflen]\\en\", argv[0]);\n"
8600 "        exit(EXIT_FAILURE);\n"
8601 "    }\n"
8602 msgstr ""
8603 "    if (argc E<lt> 3) {\n"
8604 "        printf(\"Usage: %s port-num proto-name [buflen]\\en\", argv[0]);\n"
8605 "        exit(EXIT_FAILURE);\n"
8606 "    }\n"
8607
8608 #. type: Plain text
8609 #: build/C/man3/getservent_r.3:191
8610 #, no-wrap
8611 msgid ""
8612 "    port = htons(atoi(argv[1]));\n"
8613 "    protop = (strcmp(argv[2], \"null\") == 0 ||\n"
8614 "              strcmp(argv[2], \"NULL\") == 0) ?  NULL : argv[2];\n"
8615 msgstr ""
8616 "    port = htons(atoi(argv[1]));\n"
8617 "    protop = (strcmp(argv[2], \"null\") == 0 ||\n"
8618 "              strcmp(argv[2], \"NULL\") == 0) ?  NULL : argv[2];\n"
8619
8620 #. type: Plain text
8621 #: build/C/man3/getservent_r.3:195
8622 #, no-wrap
8623 msgid ""
8624 "    buflen = 1024;\n"
8625 "    if (argc E<gt> 3)\n"
8626 "        buflen = atoi(argv[3]);\n"
8627 msgstr ""
8628 "    buflen = 1024;\n"
8629 "    if (argc E<gt> 3)\n"
8630 "        buflen = atoi(argv[3]);\n"
8631
8632 #. type: Plain text
8633 #: build/C/man3/getservent_r.3:209
8634 #, no-wrap
8635 msgid ""
8636 "    erange_cnt = 0;\n"
8637 "    do {\n"
8638 "        s = getservbyport_r(port, protop, &result_buf,\n"
8639 "                     buf, buflen, &result);\n"
8640 "        if (s == ERANGE) {\n"
8641 "            if (erange_cnt == 0)\n"
8642 "                printf(\"ERANGE! Retrying with larger buffer\\en\");\n"
8643 "            erange_cnt++;\n"
8644 msgstr ""
8645 "    erange_cnt = 0;\n"
8646 "    do {\n"
8647 "        s = getservbyport_r(port, protop, &result_buf,\n"
8648 "                     buf, buflen, &result);\n"
8649 "        if (s == ERANGE) {\n"
8650 "            if (erange_cnt == 0)\n"
8651 "                printf(\"ERANGE! Retrying with larger buffer\\en\");\n"
8652 "            erange_cnt++;\n"
8653
8654 #. type: Plain text
8655 #: build/C/man3/getservent_r.3:225
8656 #, no-wrap
8657 msgid ""
8658 "    printf(\"getservbyport_r() returned: %s  (buflen=%d)\\en\",\n"
8659 "            (s == 0) ? \"0 (success)\" : (s == ENOENT) ? \"ENOENT\" :\n"
8660 "            strerror(s), buflen);\n"
8661 msgstr ""
8662 "    printf(\"getservbyport_r() returned: %s  (buflen=%d)\\en\",\n"
8663 "            (s == 0) ? \"0 (success)\" : (s == ENOENT) ? \"ENOENT\" :\n"
8664 "            strerror(s), buflen);\n"
8665
8666 #. type: Plain text
8667 #: build/C/man3/getservent_r.3:237
8668 #, no-wrap
8669 msgid ""
8670 "    printf(\"s_name=%s; s_proto=%s; s_port=%d; aliases=\",\n"
8671 "                result_buf.s_name, result_buf.s_proto,\n"
8672 "                ntohs(result_buf.s_port));\n"
8673 "    for (p = result_buf.s_aliases; *p != NULL; p++)\n"
8674 "        printf(\"%s \", *p);\n"
8675 "    printf(\"\\en\");\n"
8676 msgstr ""
8677 "    printf(\"s_name=%s; s_proto=%s; s_port=%d; aliases=\",\n"
8678 "                result_buf.s_name, result_buf.s_proto,\n"
8679 "                ntohs(result_buf.s_port));\n"
8680 "    for (p = result_buf.s_aliases; *p != NULL; p++)\n"
8681 "        printf(\"%s \", *p);\n"
8682 "    printf(\"\\en\");\n"
8683
8684 #. type: Plain text
8685 #: build/C/man3/getservent_r.3:244
8686 msgid "B<getservent>(3), B<services>(5)"
8687 msgstr "B<getservent>(3), B<services>(5)"
8688
8689 #. type: TH
8690 #: build/C/man5/host.conf.5:26
8691 #, no-wrap
8692 msgid "HOST.CONF"
8693 msgstr "HOST.CONF"
8694
8695 #. type: TH
8696 #: build/C/man5/host.conf.5:26
8697 #, no-wrap
8698 msgid "2003-08-23"
8699 msgstr "2003-08-23"
8700
8701 #. type: TH
8702 #: build/C/man5/host.conf.5:26 build/C/man5/networks.5:26
8703 #, no-wrap
8704 msgid "Linux System Administration"
8705 msgstr "Linux System Administration"
8706
8707 #. type: Plain text
8708 #: build/C/man5/host.conf.5:29
8709 msgid "host.conf - resolver configuration file"
8710 msgstr "host.conf - レゾルバ設定ファイル"
8711
8712 #. type: Plain text
8713 #: build/C/man5/host.conf.5:38
8714 msgid ""
8715 "The file I</etc/host.conf> contains configuration information specific to "
8716 "the resolver library.  It should contain one configuration keyword per line, "
8717 "followed by appropriate configuration information.  The keywords recognized "
8718 "are I<order>, I<trim>, I<multi>, I<nospoof>, I<spoof>, and I<reorder>.  "
8719 "These keywords are described below."
8720 msgstr ""
8721 "ファイル I</etc/host.conf> には、レゾルバライブラリの詳細な設定情報が含まれて"
8722 "いる。 このファイルには、1 行毎に 1 つの設定キーワードと それに続く適切な設定"
8723 "情報がなければならない。 認識されるキーワードは I<order>, I<trim>, I<multi>, "
8724 "I<nospoof>, I<spoof>, I<reorder> である。 各キーワードを、以下で説明する。"
8725
8726 #. type: TP
8727 #: build/C/man5/host.conf.5:38
8728 #, no-wrap
8729 msgid "I<order>"
8730 msgstr "I<order>"
8731
8732 #. type: Plain text
8733 #: build/C/man5/host.conf.5:44
8734 msgid ""
8735 "This keyword specifies how host lookups are to be performed.  It should be "
8736 "followed by one or more lookup methods, separated by commas.  Valid methods "
8737 "are I<bind>, I<hosts>, and I<nis>."
8738 msgstr ""
8739 "このキーワードは、ホストのルックアップ方式を指定する。 このキーワードの後に"
8740 "は、コンマで分けた 1 つ以上のルックアップ方式が続かなくてはならない。 使用可"
8741 "能な方式は I<bind>, I<hosts>, I<nis> である。"
8742
8743 #. type: TP
8744 #: build/C/man5/host.conf.5:44
8745 #, no-wrap
8746 msgid "I<trim>"
8747 msgstr "I<trim>"
8748
8749 #. type: Plain text
8750 #: build/C/man5/host.conf.5:61
8751 msgid ""
8752 "This keyword may be listed more than once.  Each time it should be followed "
8753 "by a list of domains, separated by colons (\\(aq:\\(aq), semicolons (\\(aq;"
8754 "\\(aq) or commas (\\(aq,\\(aq), with the leading dot.  When set, the resolv+ "
8755 "library will automatically trim the given domain name from the end of any "
8756 "hostname resolved via DNS.  This is intended for use with local hosts and "
8757 "domains.  (Related note: trim will not affect hostnames gathered via NIS or "
8758 "the hosts file.  Care should be taken to ensure that the first hostname for "
8759 "each entry in the hosts file is fully qualified or unqualified, as "
8760 "appropriate for the local installation.)"
8761 msgstr ""
8762 "このキーワードは、2 回以上リストすることができる。 毎回、このキーワードの後に"
8763 "は、 ドットではじまる 1 つ以上のドメイン名のリストを続けなければならない。 ド"
8764 "メイン名はコロン (\\(aq:\\(aq)、セミコロン (\\(aq;\\(aq)、コンマ (\\(aq,"
8765 "\\(aq)  で区切る。 このキーワードが設定されると、resolv+ ライブラリは DNS で"
8766 "レゾルブされた すべてのホスト名の後ろから与えられたドメイン名を自動的に取り去"
8767 "る。 このキーワードはローカルなホストとドメインで使用することを意図してい"
8768 "る。 (関連した注意 : NIS または hosts ファイルで集められたホスト名に trim は"
8769 "影響しない。 hosts ファイルの各エントリの最初のホスト名を、 完全なドメイン名"
8770 "付きのものにするかしないかは、 ホストごとのインストールポリシーにあわせて 適"
8771 "切に選択する必要がある。注意すること。)"
8772
8773 #. type: TP
8774 #: build/C/man5/host.conf.5:61
8775 #, no-wrap
8776 msgid "I<multi>"
8777 msgstr "I<multi>"
8778
8779 #. type: Plain text
8780 #: build/C/man5/host.conf.5:76
8781 msgid ""
8782 "Valid values are I<on> and I<off>.  If set to I<on>, the resolv+ library "
8783 "will return all valid addresses for a host that appears in the I</etc/hosts> "
8784 "file, instead of only the first.  This is I<off> by default, as it may cause "
8785 "a substantial performance loss at sites with large hosts files."
8786 msgstr ""
8787 "有効な値は I<on> と I<off> である。 I<on> に設定された場合、最初のエントリの"
8788 "みを例外として、 resolv+ ライブラリは I</etc/hosts> ファイルに現れるホストに"
8789 "対して全ての有効なアドレスを返そうとする。 大きな hosts ファイルを持つサイト"
8790 "では、 この設定は非常な性能の低下を招くので、 デフォルトでは I<off> である。"
8791
8792 #. type: TP
8793 #: build/C/man5/host.conf.5:76
8794 #, no-wrap
8795 msgid "I<nospoof>"
8796 msgstr "I<nospoof>"
8797
8798 #. type: Plain text
8799 #: build/C/man5/host.conf.5:91
8800 msgid ""
8801 "Valid values are I<on> and I<off>.  If set to I<on>, the resolv+ library "
8802 "will attempt to prevent hostname spoofing to enhance the security of "
8803 "B<rlogin> and B<rsh>.  It works as follows: after performing a host address "
8804 "lookup, resolv+ will perform a hostname lookup for that address.  If the two "
8805 "hostnames do not match, the query will fail.  The default value is I<off>."
8806 msgstr ""
8807 "有効な値は I<on> と I<off> である。 I<on> に設定された場合、resolv+ ライブラ"
8808 "リは B<rlogin> と B<rsh> のセキュリティを向上させるためホスト名の偽装を防止し"
8809 "ようとする。 これは、「ホストアドレスのルックアップを行った後、 resolv+ はそ"
8810 "のアドレスに対してホスト名のルックアップを行い、 もし 2 つのホスト名が一致し"
8811 "なかった場合は、クエリーは失敗する。」 というように動作する。 デフォルトの値"
8812 "は I<off> である。"
8813
8814 #. type: TP
8815 #: build/C/man5/host.conf.5:91
8816 #, no-wrap
8817 msgid "I<spoofalert>"
8818 msgstr "I<spoofalert>"
8819
8820 #. type: Plain text
8821 #: build/C/man5/host.conf.5:103
8822 msgid ""
8823 "Valid values are I<on> and I<off>.  If this option is set to I<on> and the "
8824 "I<nospoof> option is also set, resolv+ will log a warning of the error via "
8825 "the syslog facility.  The default value is I<off>."
8826 msgstr ""
8827 "有効な値は I<on> と I<off> である。 このオプションが I<on> に設定されてい"
8828 "て、 I<nospoof> オプションも (on に) 設定されている場合、 resolv+ は syslog "
8829 "機能を通じてエラーに関する警告のログをとる。 デフォルトの値は I<off> である。"
8830
8831 #. type: TP
8832 #: build/C/man5/host.conf.5:103
8833 #, no-wrap
8834 msgid "I<spoof>"
8835 msgstr "I<spoof>"
8836
8837 #. type: Plain text
8838 #: build/C/man5/host.conf.5:122
8839 msgid ""
8840 "Valid values are I<off>, I<nowarn> and I<warn>.  If this option is set to "
8841 "I<off>, spoofed addresses are permitted and no warnings will be emitted via "
8842 "the syslog facility.  If this option is set to I<warn>, resolv+ will attempt "
8843 "to prevent hostname spoofing to enhance the security and log a warning of "
8844 "the error via the syslog facility.  If this option is set to I<nowarn>, the "
8845 "resolv+ library will attempt to prevent hostname spoofing to enhance the "
8846 "security but not emit warnings via the syslog facility.  Setting this option "
8847 "to anything else is equal to setting it to I<nowarn>."
8848 msgstr ""
8849 "有効な値は I<off>, I<nowarn>, I<warn> である。 このオプションを I<off> に設定"
8850 "すると、偽装されたアドレスを許可して、 syslog 機能を通じた警告を発しない。 こ"
8851 "のオプションを I<warn> に設定すると、resolv+ はセキュリティを高めるためにホス"
8852 "ト名の偽装を防止し、 syslog 機能を通じてエラーに関する警告のログをとる。 この"
8853 "オプションを I<nowarn> に設定すると、resolv+ はセキュリティを高めるためにホス"
8854 "ト名の偽装を防止するが、 syslog 機能を通じた警告は発しない。 このオプションを"
8855 "何も設定しない場合は、 I<nowarn> を設定したのと同じになる。"
8856
8857 #. type: TP
8858 #: build/C/man5/host.conf.5:122
8859 #, no-wrap
8860 msgid "I<reorder>"
8861 msgstr "I<reorder>"
8862
8863 #. type: Plain text
8864 #: build/C/man5/host.conf.5:135
8865 msgid ""
8866 "Valid values are I<on> and I<off>.  If set to I<on>, resolv+ will attempt to "
8867 "reorder host addresses so that local addresses (i.e., on the same subnet) "
8868 "are listed first when a B<gethostbyname>(3)  is performed.  Reordering is "
8869 "done for all lookup methods.  The default value is I<off>."
8870 msgstr ""
8871 "有効な値は I<on> と I<off> である。 I<on> に設定されると、 B<gethostbyname "
8872 "(3)> が実行されるとき、resolv+ ライブラリは、ローカルな (つまり、同じサブネッ"
8873 "トにある) アドレスが最初にリストされるように ホストアドレスを並べ変える。 す"
8874 "べてのルックアップ方式に対して並べ変えが行われる。 デフォルトの値は、 I<off> "
8875 "である。"
8876
8877 #. type: SH
8878 #: build/C/man5/host.conf.5:135
8879 #, no-wrap
8880 msgid "ENVIRONMENT"
8881 msgstr "環境変数"
8882
8883 #. type: Plain text
8884 #: build/C/man5/host.conf.5:139
8885 msgid ""
8886 "There are six environment variables that can be used to allow users to "
8887 "override the behavior which is configured in I</etc/host.conf>."
8888 msgstr ""
8889 "I</etc/host.conf> で設定されている動作を、ユーザが上書きできる 6 つの環境変数"
8890 "がある。"
8891
8892 #. type: TP
8893 #: build/C/man5/host.conf.5:139
8894 #, no-wrap
8895 msgid "B<RESOLV_HOST_CONF>"
8896 msgstr "B<RESOLV_HOST_CONF>"
8897
8898 #. type: Plain text
8899 #: build/C/man5/host.conf.5:143
8900 msgid ""
8901 "If set this variable points to a file that should be read instead of I</etc/"
8902 "host.conf>."
8903 msgstr ""
8904 "この変数を設定すると、 I</etc/host.conf> の代りに読み込むファイルを設定でき"
8905 "る。"
8906
8907 #. type: TP
8908 #: build/C/man5/host.conf.5:143
8909 #, no-wrap
8910 msgid "B<RESOLV_SERV_ORDER>"
8911 msgstr "B<RESOLV_SERV_ORDER>"
8912
8913 #. type: Plain text
8914 #: build/C/man5/host.conf.5:148
8915 msgid "Overrides the I<order> command."
8916 msgstr "I<order> コマンドを上書きする。"
8917
8918 #. type: TP
8919 #: build/C/man5/host.conf.5:148
8920 #, no-wrap
8921 msgid "B<RESOLV_SPOOF_CHECK>"
8922 msgstr "B<RESOLV_SPOOF_CHECK>"
8923
8924 #. type: Plain text
8925 #: build/C/man5/host.conf.5:157
8926 msgid ""
8927 "Overrides the I<nospoof>, I<spoofalert> and I<spoof> commands in the same "
8928 "way as the I<spoof> command is parsed.  Valid values are I<off>, I<nowarn> "
8929 "and I<warn>."
8930 msgstr ""
8931 "I<spoof> コマンドを解析するのと同じ方式で、 I<nospoof>, I<spoofalert>, "
8932 "I<spoof> コマンドを上書きできる。 有効な値は I<off>, I<nowarn>, I<warn> であ"
8933 "る。"
8934
8935 #. type: TP
8936 #: build/C/man5/host.conf.5:157
8937 #, no-wrap
8938 msgid "B<RESOLV_MULTI>"
8939 msgstr "B<RESOLV_MULTI>"
8940
8941 #. type: Plain text
8942 #: build/C/man5/host.conf.5:162
8943 msgid "Overrides the I<multi> command."
8944 msgstr "I<multi> コマンドを上書きする。"
8945
8946 #. type: TP
8947 #: build/C/man5/host.conf.5:162
8948 #, no-wrap
8949 msgid "B<RESOLV_REORDER>"
8950 msgstr "B<RESOLV_REORDER>"
8951
8952 #. type: Plain text
8953 #: build/C/man5/host.conf.5:167
8954 msgid "Overrides the I<reorder> command."
8955 msgstr "I<reorder> コマンドを上書きする。"
8956
8957 #. type: TP
8958 #: build/C/man5/host.conf.5:167
8959 #, no-wrap
8960 msgid "B<RESOLV_ADD_TRIM_DOMAINS>"
8961 msgstr "B<RESOLV_ADD_TRIM_DOMAINS>"
8962
8963 #. type: Plain text
8964 #: build/C/man5/host.conf.5:172
8965 msgid ""
8966 "A list of domains, separated by colons (\\(aq:\\(aq), semicolons (\\(aq;"
8967 "\\(aq) or commas (\\(aq,\\(aq), with the leading dot, which will be added to "
8968 "the list of domains that should be trimmed."
8969 msgstr ""
8970 "コロン (\\(aq:\\(aq)、セミコロン (\\(aq;\\(aq)、コンマ (\\(aq,\\(aq) で区切っ"
8971 "た ドット (\\(aq.\\(aq) で始まるドメイン名のリスト。 ホスト名から取り去るドメ"
8972 "イン名のリストに追加する。"
8973
8974 #. type: TP
8975 #: build/C/man5/host.conf.5:172
8976 #, no-wrap
8977 msgid "B<RESOLV_OVERRIDE_TRIM_DOMAINS>"
8978 msgstr "B<RESOLV_OVERRIDE_TRIM_DOMAINS>"
8979
8980 #. type: Plain text
8981 #: build/C/man5/host.conf.5:180
8982 msgid ""
8983 "A list of domains, separated by colons (\\(aq:\\(aq), semicolons (\\(aq;"
8984 "\\(aq) or commas (\\(aq,\\(aq), with the leading dot, which will replace the "
8985 "list of domains that should be trimmed.  Overrides the I<trim> command."
8986 msgstr ""
8987 "コロン (\\(aq:\\(aq)、セミコロン (\\(aq;\\(aq)、コンマ (\\(aq,\\(aq) で区切っ"
8988 "た ドット (\\(aq.\\(aq) で始まるドメイン名のリスト。 ホスト名から取り去るドメ"
8989 "イン名のリストを上書きする。 I<trim> コマンドを上書きする。"
8990
8991 #. type: Plain text
8992 #: build/C/man5/host.conf.5:184 build/C/man5/host.conf.5:187
8993 msgid "Resolver configuration file"
8994 msgstr "リゾルバ設定ファイル"
8995
8996 #. type: TP
8997 #: build/C/man5/host.conf.5:184
8998 #, no-wrap
8999 msgid "I</etc/resolv.conf>"
9000 msgstr "I</etc/resolv.conf>"
9001
9002 #. type: Plain text
9003 #: build/C/man5/host.conf.5:190
9004 msgid "Local hosts database"
9005 msgstr "ローカルの hosts データベース"
9006
9007 #. type: Plain text
9008 #: build/C/man5/host.conf.5:199
9009 msgid ""
9010 "The following differences exist compared to the original implementation.  A "
9011 "new command I<spoof> and a new environment variable B<RESOLV_SPOOF_CHECK> "
9012 "can take arguments like I<off>, I<nowarn> and I<warn>.  Line comments can "
9013 "appear anywhere and not only at the beginning of a line."
9014 msgstr ""
9015 "元々の実装に比べて以下のような違いがある。 新しいコマンド I<spoof> と新しい環"
9016 "境変数 B<RESOLV_SPOOF_CHECK> は、引き数 I<off>, I<nowarn>, I<warn> をとる。 "
9017 "コメントは行頭だけではなく、どこに書いてもよい。"
9018
9019 #. type: Plain text
9020 #: build/C/man5/host.conf.5:204
9021 msgid "B<gethostbyname>(3), B<hostname>(7), B<named>(8), B<resolv+>(8)"
9022 msgstr "B<gethostbyname>(3), B<hostname>(7), B<named>(8), B<resolv+>(8)"
9023
9024 #. type: TH
9025 #: build/C/man7/hostname.7:39
9026 #, no-wrap
9027 msgid "HOSTNAME"
9028 msgstr "HOSTNAME"
9029
9030 #. type: TH
9031 #: build/C/man7/hostname.7:39
9032 #, no-wrap
9033 msgid "2010-11-07"
9034 msgstr "2010-11-07"
9035
9036 #. type: Plain text
9037 #: build/C/man7/hostname.7:42
9038 msgid "hostname - hostname resolution description"
9039 msgstr "hostname - ホスト名の名前解決の説明"
9040
9041 #. type: Plain text
9042 #: build/C/man7/hostname.7:46
9043 msgid ""
9044 "Hostnames are domains, where a domain is a hierarchical, dot-separated list "
9045 "of subdomains; for example, the machine monet, in the Berkeley subdomain of "
9046 "the EDU domain would be represented as \"monet.Berkeley.EDU\"."
9047 msgstr ""
9048 "ホスト名は、階層構造でドット区切りのサブドメインである。\n"
9049 "例えば、 EDU ドメインの Berkeley サブドメインのマシン monet は、\n"
9050 "\"monet.Berkeley.EDU\" と表現される。"
9051
9052 #. type: Plain text
9053 #: build/C/man7/hostname.7:55
9054 msgid ""
9055 "Hostnames are often used with network client and server programs, which must "
9056 "generally translate the name to an address for use.  (This task is generally "
9057 "performed by either B<getaddrinfo>(3)  or the obsolete B<gethostbyname>"
9058 "(3).)  Hostnames are resolved by the Internet name resolver in the following "
9059 "fashion."
9060 msgstr ""
9061 "ホスト名は、ネットワーククライアントやサーバのプログラムでは一般的に\n"
9062 "使用され、使用する際には名前からアドレスに変換しなければならない (一般\n"
9063 "的にはアドレスへの変換処理は B<getaddrinfo>(3) か (廃止予定の)\n"
9064 "B<gethostbyname>(3) で行われる)。ホスト名の解決は、\n"
9065 "インターネット・ネームリゾルバによって以下の方法で実行される。"
9066
9067 #. type: Plain text
9068 #: build/C/man7/hostname.7:68
9069 msgid ""
9070 "If the name consists of a single component, that is, contains no dot, and if "
9071 "the environment variable B<HOSTALIASES> is set to the name of a file, that "
9072 "file is searched for any string matching the input hostname.  The file "
9073 "should consist of lines made up of two white-space separated strings, the "
9074 "first of which is the hostname alias, and the second of which is the "
9075 "complete hostname to be substituted for that alias.  If a case-insensitive "
9076 "match is found between the hostname to be resolved and the first field of a "
9077 "line in the file, the substituted name is looked up with no further "
9078 "processing."
9079 msgstr ""
9080 "ホスト名がドットを含まない単一要素で構成されていて、環境変数\n"
9081 "B<HOSTALIASES> にファイル名が設定されている場合、入力されたホスト名に\n"
9082 "マッチする文字列を検索するのに指定されたファイルが使用される。\n"
9083 "そのファイルの各行は、ホワイトスペースで区切られた文字列 2 つで\n"
9084 "構成され、各行の最初の文字列がホスト名のエイリアス (別名) で、\n"
9085 "二番目の文字列がそのエイリアスに対応する完全なホスト名である。\n"
9086 "解決するホスト名と一致するホスト名のエイリアス (ファイルの各行の最初の\n"
9087 "フィールド) が見つかれば、完全なホスト名に置き換えられ、\n"
9088 "それ以上の変換処理は行わずに、そのホスト名で検索処理が行われる\n"
9089 "(ホスト名とエイリアスの照合では大文字、小文字の違いは無視される)。"
9090
9091 #. type: Plain text
9092 #: build/C/man7/hostname.7:72
9093 msgid ""
9094 "If the input name ends with a trailing dot, the trailing dot is removed, and "
9095 "the remaining name is looked up with no further processing."
9096 msgstr ""
9097 "入力されたホスト名の末尾がドットの場合、\n"
9098 "末尾のドットは削除され、それ以上の処理は行われず、\n"
9099 "(末尾のドットを削除した) 残りの名前で検索が行われる。"
9100
9101 #. type: Plain text
9102 #: build/C/man7/hostname.7:85
9103 msgid ""
9104 "If the input name does not end with a trailing dot, it is looked up by "
9105 "searching through a list of domains until a match is found.  The default "
9106 "search list includes first the local domain, then its parent domains with at "
9107 "least 2 name components (longest first).  For example, in the domain CS."
9108 "Berkeley.EDU, the name lithium.CChem will be checked first as lithium.CChem."
9109 "CS.Berkeley.EDU and then as lithium.CChem.Berkeley.EDU.  Lithium.CChem.EDU "
9110 "will not be tried, as there is only one component remaining from the local "
9111 "domain.  The search path can be changed from the default by a system-wide "
9112 "configuration file (see B<resolver>(5))."
9113 msgstr ""
9114 "入力された名前の末尾がドットでない場合、\n"
9115 "マッチするものが見つかるまでドメインのリストの検索が行われる。\n"
9116 "デフォルトのドメインの検索リストは、先頭ローカルのドメインで、\n"
9117 "親ドメインが (長いものから順に) 続く (親ドメインはドット区切りで\n"
9118 "少なくとも 2 要素あるものだけが使用される)。\n"
9119 "例えば、 CS.Berkeley.EDU ドメインで、\n"
9120 "lithium.CChem というホスト名の場合には、\n"
9121 "最初に lithium.CChem.CS.Berkeley.EDU が確認され、\n"
9122 "次に lithium.CChem.Berkeley.EDU が確認される。\n"
9123 "Lithium.CChem.EDU はチェックされない。\n"
9124 "なぜなら、ローカルドメイン CS.Berkeley.EDU で残っているドメインは\n"
9125 "EDU で、これは一つしか要素がないからである。\n"
9126 "検索リストはシステム全体で共通の設定ファイルでデフォルト値から\n"
9127 "変更できる (B<resolver>(5) 参照)。"
9128
9129 #.  .SH HISTORY
9130 #.  Hostname appeared in
9131 #.  4.2BSD.
9132 #. type: Plain text
9133 #: build/C/man7/hostname.7:93
9134 msgid "B<gethostbyname>(3), B<resolver>(5), B<mailaddr>(7), B<named>(8)"
9135 msgstr "B<gethostbyname>(3), B<resolver>(5), B<mailaddr>(7), B<named>(8)"
9136
9137 #. type: TH
9138 #: build/C/man5/hosts.5:27
9139 #, no-wrap
9140 msgid "HOSTS"
9141 msgstr "HOSTS"
9142
9143 #. type: TH
9144 #: build/C/man5/hosts.5:27
9145 #, no-wrap
9146 msgid "2002-06-16"
9147 msgstr "2002-06-16"
9148
9149 #. type: Plain text
9150 #: build/C/man5/hosts.5:30
9151 msgid "hosts - static table lookup for hostnames"
9152 msgstr "hosts - ホスト名の静的なルックアップテーブル"
9153
9154 #. type: Plain text
9155 #: build/C/man5/hosts.5:32
9156 msgid "B</etc/hosts>"
9157 msgstr "B</etc/hosts>"
9158
9159 #. type: Plain text
9160 #: build/C/man5/hosts.5:40
9161 msgid ""
9162 "This manual page describes the format of the I</etc/hosts> file.  This file "
9163 "is a simple text file that associates IP addresses with hostnames, one line "
9164 "per IP address.  For each host a single line should be present with the "
9165 "following information:"
9166 msgstr ""
9167 "このマニュアルページは、 I</etc/hosts> ファイルのフォーマットについて記述して"
9168 "いる。 このファイルは簡単なテキストファイルで、1 行に 1 つの IP アドレスがあ"
9169 "り、 IP アドレスとホスト名を関連づけている。 各ホストについて、次のような情報"
9170 "が 1 行で与えられる。"
9171
9172 #. type: Plain text
9173 #: build/C/man5/hosts.5:43
9174 msgid "IP_address canonical_hostname [aliases...]"
9175 msgstr "IPアドレス 正式なホスト名 [エイリアス...]"
9176
9177 #. type: Plain text
9178 #: build/C/man5/hosts.5:56
9179 msgid ""
9180 "Fields of the entry are separated by any number of blanks and/or tab "
9181 "characters.  Text from a \"#\" character until the end of the line is a "
9182 "comment, and is ignored.  Host names may contain only alphanumeric "
9183 "characters, minus signs (\"-\"), and periods (\".\").  They must begin with "
9184 "an alphabetic character and end with an alphanumeric character.  Optional "
9185 "aliases provide for name changes, alternate spellings, shorter hostnames, or "
9186 "generic hostnames (for example, I<localhost>)."
9187 msgstr ""
9188 "エントリのフィールドは、空白またはタブ (複数でも可) で区切られる。 \"#\" 文字"
9189 "から行末までのテキストはコメントとして無視される。 ホスト名は英数字・マイナス"
9190 "記号 (\"-\")・ピリオド (\".\") を含むことができる。 ホスト名は英文字 "
9191 "(alphabetic character) で始まって、 英数字 (alphanumeric characte) で終わらな"
9192 "ければならない。 エイリアスはオプションであり、名前の変更、別のスペル、 短い"
9193 "ホスト名、一般的に使われるホスト名 (例えば I<localhost>)  などのために用意さ"
9194 "れている。"
9195
9196 #. type: Plain text
9197 #: build/C/man5/hosts.5:64
9198 msgid ""
9199 "The Berkeley Internet Name Domain (BIND) Server implements the Internet name "
9200 "server for UNIX systems.  It augments or replaces the I</etc/hosts> file or "
9201 "hostname lookup, and frees a host from relying on I</etc/hosts> being up to "
9202 "date and complete."
9203 msgstr ""
9204 "Berkeley Internet Name Domain (BIND) サーバは、 UNIX システムのためのインター"
9205 "ネットネームサーバを実装している。 これは、 I</etc/hosts> ファイルやホスト名"
9206 "ルックアップを拡張したり置き換えたりするものである。 これにより各ホストは I</"
9207 "etc/hosts> を最新かつ完全に保たなくてもよくなる。"
9208
9209 #. type: Plain text
9210 #: build/C/man5/hosts.5:67
9211 msgid ""
9212 "In modern systems, even though the host table has been superseded by DNS, it "
9213 "is still widely used for:"
9214 msgstr ""
9215 "ホストテーブルは、DNS にとって代わられたにもかかわらず、 現在のシステムにおい"
9216 "て次のような用途で広く使われている。"
9217
9218 #. type: TP
9219 #: build/C/man5/hosts.5:67
9220 #, no-wrap
9221 msgid "B<bootstrapping>"
9222 msgstr "B<ブート時>"
9223
9224 #. type: Plain text
9225 #: build/C/man5/hosts.5:73
9226 msgid ""
9227 "Most systems have a small host table containing the name and address "
9228 "information for important hosts on the local network.  This is useful when "
9229 "DNS is not running, for example during system bootup."
9230 msgstr ""
9231 "大部分のシステムは、ローカルネットワークにおいて重要なホストの 名前とアドレス"
9232 "が含まれた小さなホストテーブルを持っている。 これは、システムのブート時など"
9233 "の DNS が稼働していないときに役立つ。"
9234
9235 #. type: TP
9236 #: build/C/man5/hosts.5:73
9237 #, no-wrap
9238 msgid "B<NIS>"
9239 msgstr "B<NIS>"
9240
9241 #. type: Plain text
9242 #: build/C/man5/hosts.5:79
9243 msgid ""
9244 "Sites that use NIS use the host table as input to the NIS host database.  "
9245 "Even though NIS can be used with DNS, most NIS sites still use the host "
9246 "table with an entry for all local hosts as a backup."
9247 msgstr ""
9248 "NIS を使用しているサイトは、ホストテーブルを NIS ホストデータベースの入力とし"
9249 "て用いる。 NIS を DNS と共に使用できるにもかかわらず、 大部分の NIS サイトは"
9250 "未だに、 全てのローカルホストのエントリをもつホストテーブルを バックアップと"
9251 "して使用している。"
9252
9253 #. type: TP
9254 #: build/C/man5/hosts.5:79
9255 #, no-wrap
9256 msgid "B<isolated nodes>"
9257 msgstr "B<隔絶されたノード>"
9258
9259 #. type: Plain text
9260 #: build/C/man5/hosts.5:86
9261 msgid ""
9262 "Very small sites that are isolated from the network use the host table "
9263 "instead of DNS.  If the local information rarely changes, and the network is "
9264 "not connected to the Internet, DNS offers little advantage."
9265 msgstr ""
9266 "ネットワークから隔絶された非常に小さなサイトは、 DNS の代わりにホストテーブル"
9267 "を使用している。 ローカル情報が稀にしか変更されず、 ネットワークがインター"
9268 "ネットと接続されていない場合、 DNS にそれほどの利点はない。"
9269
9270 #. type: Plain text
9271 #: build/C/man5/hosts.5:91
9272 msgid ""
9273 "Modifications to this file normally take effect immediately, except in cases "
9274 "where the file is cached by applications."
9275 msgstr ""
9276 "このファイルへの変更は通常すぐに反映される。但し、アプリケーション によりファ"
9277 "イルの内容がキャッシュされている場合はこの限りではない。"
9278
9279 #. type: SS
9280 #: build/C/man5/hosts.5:91
9281 #, no-wrap
9282 msgid "Historical notes"
9283 msgstr "歴史的な経緯"
9284
9285 #. type: Plain text
9286 #: build/C/man5/hosts.5:94
9287 msgid ""
9288 "RFC\\ 952 gave the original format for the host table, though it has since "
9289 "changed."
9290 msgstr ""
9291 "ホストテーブルのフォーマットはその後変更されているが、 元々のフォーマットは "
9292 "RFC\\ 952 には記載されている。"
9293
9294 #. type: Plain text
9295 #: build/C/man5/hosts.5:107
9296 msgid ""
9297 "Before the advent of DNS, the host table was the only way of resolving "
9298 "hostnames on the fledgling Internet.  Indeed, this file could be created "
9299 "from the official host data base maintained at the Network Information "
9300 "Control Center (NIC), though local changes were often required to bring it "
9301 "up to date regarding unofficial aliases and/or unknown hosts.  The NIC no "
9302 "longer maintains the hosts.txt files, though looking around at the time of "
9303 "writing (circa 2000), there are historical hosts.txt files on the WWW.  I "
9304 "just found three, from 92, 94, and 95."
9305 msgstr ""
9306 "DNS の登場以前、ホストテーブルは、駆け出したばかりのインターネットにおける ホ"
9307 "スト名解決の唯一の方法であった。 実際、このファイルは Network Information "
9308 "Control Center (NIC) によって 管理される公式ホストデータベースから作成するこ"
9309 "とができた。 しかし、非公式なエイリアスや不明なホストを扱えるように、 最新に"
9310 "保つためのローカルな変更が頻繁に必要とされた。 NIC は既に hosts.txt を管理し"
9311 "ていないが、 これを書いている (2000 年頃の) 時点で調べてみると、 WWW 上に歴史"
9312 "的な hosts.txt が存在する。 92, 94, 95 年のものが見つかった。"
9313
9314 #. type: Plain text
9315 #: build/C/man5/hosts.5:114
9316 #, no-wrap
9317 msgid ""
9318 "127.0.0.1       localhost\n"
9319 "192.168.1.10    foo.mydomain.org       foo\n"
9320 "192.168.1.13    bar.mydomain.org       bar\n"
9321 "146.82.138.7    master.debian.org      master\n"
9322 "209.237.226.90  www.opensource.org\n"
9323 msgstr ""
9324 "127.0.0.1       localhost\n"
9325 "192.168.1.10    foo.mydomain.org       foo\n"
9326 "192.168.1.13    bar.mydomain.org       bar\n"
9327 "146.82.138.7    master.debian.org      master\n"
9328 "209.237.226.90  www.opensource.org\n"
9329
9330 #. type: Plain text
9331 #: build/C/man5/hosts.5:121
9332 msgid ""
9333 "B<hostname>(1), B<resolver>(3), B<resolver>(5), B<hostname>(7), B<named>(8)"
9334 msgstr ""
9335 "B<hostname>(1), B<resolver>(3), B<resolver>(5), B<hostname>(7), B<named>(8)"
9336
9337 #.  .SH AUTHOR
9338 #.  This manual page was written by Manoj Srivastava <srivasta@debian.org>,
9339 #.  for the Debian GNU/Linux system.
9340 #. type: Plain text
9341 #: build/C/man5/hosts.5:126
9342 msgid "Internet RFC\\ 952"
9343 msgstr "Internet RFC\\ 952"
9344
9345 #. type: TH
9346 #: build/C/man5/hosts.equiv.5:6
9347 #, no-wrap
9348 msgid "HOSTS.EQUIV"
9349 msgstr "HOSTS.EQUIV"
9350
9351 #. type: TH
9352 #: build/C/man5/hosts.equiv.5:6
9353 #, no-wrap
9354 msgid "2003-08-24"
9355 msgstr "2003-08-24"
9356
9357 #. type: Plain text
9358 #: build/C/man5/hosts.equiv.5:11
9359 msgid ""
9360 "/etc/hosts.equiv - list of hosts and users that are granted \"trusted\" B<r> "
9361 "command access to your system"
9362 msgstr ""
9363 "/etc/hosts.equiv - 「信頼された」B<r> コマンドによるシステムへの アクセスを許"
9364 "可するホストおよびユーザのリスト"
9365
9366 #. type: Plain text
9367 #: build/C/man5/hosts.equiv.5:22
9368 msgid ""
9369 "The B<hosts.equiv> file allows or denies hosts and users to use the B<r>-"
9370 "commands (e.g., B<rlogin>, B<rsh>, or B<rcp>)  without supplying a password."
9371 msgstr ""
9372 "B<hosts.equiv> ファイルは B<r>-コマンド (B<rlogin>, B<rsh>, B<rcp> など) によ"
9373 "るパスワードなしでの利用を 許可/拒否するホスト/ユーザを設定する。"
9374
9375 #. type: Plain text
9376 #: build/C/man5/hosts.equiv.5:24
9377 msgid "The file uses the following format:"
9378 msgstr "このファイルでは以下の書式を用いる。"
9379
9380 #. type: TP
9381 #: build/C/man5/hosts.equiv.5:24
9382 #, no-wrap
9383 msgid "I<[ + | - ]> I<[hostname]> I<[username]>"
9384 msgstr "I<[ + | - ]> I<[hostname]> I<[username]>"
9385
9386 #. type: Plain text
9387 #: build/C/man5/hosts.equiv.5:43
9388 msgid ""
9389 "The I<hostname> is the name of a host which is logically equivalent to the "
9390 "local host.  Users logged into that host are allowed to access like-named "
9391 "user accounts on the local host without supplying a password.  The "
9392 "I<hostname> may be (optionally) preceded by a plus (+) sign.  If the plus "
9393 "sign is used alone it allows any host to access your system.  You can "
9394 "explicitly deny access to a host by preceding the I<hostname> by a minus (-) "
9395 "sign.  Users from that host must always supply a password.  For security "
9396 "reasons you should always use the FQDN of the hostname and not the short "
9397 "hostname."
9398 msgstr ""
9399 "I<hostname> は、ローカルホストと論理的に等価なホストの名前である。 そのホスト"
9400 "にログインしているユーザは、パスワードなしで ローカルホストの同じ名前のユーザ"
9401 "アカウントにアカウントできる。 I<hostname> の前にはプラス記号 (+) を置いても"
9402 "よい。プラス記号が単独で置かれた場合は、 このシステムへのアクセスをあらゆるホ"
9403 "ストに対して許可したことになる。 アクセスを明示的に拒否するには、 "
9404 "I<hostname> の前にマイナス記号 (-) を付ける。そのホストからのユーザは 常にパ"
9405 "スワードを要求される。セキュリティ上、ホスト名は 短い名前ではなく常に FQDN を"
9406 "使って指定すべきである。"
9407
9408 #. type: Plain text
9409 #: build/C/man5/hosts.equiv.5:61
9410 msgid ""
9411 "The I<username> entry grants a specific user access to all user accounts "
9412 "(except root) without supplying a password.  That means the user is NOT "
9413 "restricted to like-named accounts.  The I<username> may be (optionally) "
9414 "preceded by a plus (+) sign.  You can also explicitly deny access to a "
9415 "specific user by preceding the I<username> with a minus (-) sign.  This says "
9416 "that the user is not trusted no matter what other entries for that host "
9417 "exist."
9418 msgstr ""
9419 "I<username> エントリは、特定のユーザに対して、 (root 以外の) あらゆるユーザア"
9420 "カウント へのアクセスをパスワードなしで許可する。すなわち、そのユーザは同じ名"
9421 "前の アカウント以外にもアクセスできる。 I<username> の前にはプラス記号 (+) を"
9422 "置いてもよい。 特定のユーザからのアクセスを明示的に拒否するには、 "
9423 "I<username> の前にマイナス記号 (-) を付ける。こうすると、 ホストのエントリが"
9424 "なんと言おうとも、そのユーザは信頼されないことになる。"
9425
9426 #. type: Plain text
9427 #: build/C/man5/hosts.equiv.5:63
9428 msgid "Netgroups can be specified by preceding the netgroup by an @ sign."
9429 msgstr "netgroup を指定することもでき、その場合は @ 記号を前につける。"
9430
9431 #. type: Plain text
9432 #: build/C/man5/hosts.equiv.5:69
9433 msgid ""
9434 "Be extremely careful when using the plus (+) sign.  A simple typographical "
9435 "error could result in a standalone plus sign.  A standalone plus sign is a "
9436 "wildcard character that means \"any host\"!"
9437 msgstr ""
9438 "プラス記号 (+) を利用する際にはくれぐれも注意すること。 単純なミスタイプで、"
9439 "単独のプラス記号を置いてしまうことがある。 単独のプラス記号は「すべてのホス"
9440 "ト」を表すワイルドカードになってしまう!"
9441
9442 #. type: Plain text
9443 #: build/C/man5/hosts.equiv.5:71
9444 msgid "I</etc/hosts.equiv>"
9445 msgstr "I</etc/hosts.equiv>"
9446
9447 #. type: Plain text
9448 #: build/C/man5/hosts.equiv.5:76
9449 msgid ""
9450 "Some systems will honor the contents of this file only when it has owner "
9451 "root and no write permission for anybody else.  Some exceptionally paranoid "
9452 "systems even require that there be no other hard links to the file."
9453 msgstr ""
9454 "システムによっては、このファイルの内容が効力を持つのは、 このファイルの所有者"
9455 "が root で、 かつそれ以外に書き込み権限がない場合に限定されていることもあ"
9456 "る。 また、非常に制限がきついシステムでは、このファイルに対する他の ハードリ"
9457 "ンクがないことが要求される場合もある。"
9458
9459 #. type: Plain text
9460 #: build/C/man5/hosts.equiv.5:84
9461 msgid ""
9462 "Modern systems use the Pluggable Authentication Modules library (PAM).  With "
9463 "PAM a standalone plus sign is considered a wildcard character which means "
9464 "\"any host\" only when the word I<promiscuous> is added to the auth "
9465 "component line in your PAM file for the particular service (e.g., B<rlogin>)."
9466 msgstr ""
9467 "最近のシステムでは Pluggable Authentication Modules library (PAM) が 使われて"
9468 "いる。PAM では、単独のプラス記号が「すべてのホスト」を表す ワイルドカードとし"
9469 "て扱われるのは、特定のサービス (例えば B<rlogin>)  用の PAM ファイルで auth "
9470 "行にキーワード I<promiscuous> が追加されている場合のみである。"
9471
9472 #. type: Plain text
9473 #: build/C/man5/hosts.equiv.5:88
9474 msgid "B<rhosts>(5), B<rlogind>(8), B<rshd>(8)"
9475 msgstr "B<rhosts>(5), B<rlogind>(8), B<rshd>(8)"
9476
9477 #. type: TH
9478 #: build/C/man7/icmp.7:12
9479 #, no-wrap
9480 msgid "ICMP"
9481 msgstr "ICMP"
9482
9483 #. type: TH
9484 #: build/C/man7/icmp.7:12 build/C/man8/nscd.8:23 build/C/man7/raw.7:13
9485 #: build/C/man7/unix.7:18
9486 #, no-wrap
9487 msgid "2012-05-10"
9488 msgstr "2012-05-10"
9489
9490 #. type: Plain text
9491 #: build/C/man7/icmp.7:15
9492 msgid "icmp - Linux IPv4 ICMP kernel module."
9493 msgstr "icmp - Linux IPv4 ICMP カーネルモジュール"
9494
9495 #. type: Plain text
9496 #: build/C/man7/icmp.7:23
9497 msgid ""
9498 "This kernel protocol module implements the Internet Control Message Protocol "
9499 "defined in RFC\\ 792.  It is used to signal error conditions and for "
9500 "diagnosis.  The user doesn't interact directly with this module; instead it "
9501 "communicates with the other protocols in the kernel and these pass the ICMP "
9502 "errors to the application layers.  The kernel ICMP module also answers ICMP "
9503 "requests."
9504 msgstr ""
9505 "このカーネルモジュールは RFC\\ 792 で定義されている Internet Control Message "
9506 "Protocol を実装したものである。 このプロトコルはエラー状況を知らせたり診断を"
9507 "行うために用いられる。 ユーザーはこのモジュールとは直接には通信できない。 こ"
9508 "のモジュールはカーネルの他のプロトコルと通信し、 それらのプロトコルが ICMP エ"
9509 "ラーをアプリケーションレイヤに渡す。 カーネルの ICMP モジュールは ICMP リクエ"
9510 "ストに対する応答も行う。"
9511
9512 #. type: Plain text
9513 #: build/C/man7/icmp.7:35
9514 msgid ""
9515 "A user protocol may receive ICMP packets for all local sockets by opening a "
9516 "raw socket with the protocol B<IPPROTO_ICMP>.  See B<raw>(7)  for more "
9517 "information.  The types of ICMP packets passed to the socket can be filtered "
9518 "using the B<ICMP_FILTER> socket option.  ICMP packets are always processed "
9519 "by the kernel too, even when passed to a user socket."
9520 msgstr ""
9521 "raw ソケットをプロトコル B<IPPROTO_ICMP> でオープンすれば、 ユーザープロトコ"
9522 "ルはローカルなソケット全てに対する ICMP パケットを受信することができる。 詳細"
9523 "は B<raw>(7)  を参照のこと。 ソケットに渡される ICMP パケットのタイプは "
9524 "B<ICMP_FILTER> オプションによってフィルターできる。 ICMP パケットは (たとえ"
9525 "ユーザーソケットに渡される場合でも)、 常にカーネルによって (も) 処理される。"
9526
9527 #. type: Plain text
9528 #: build/C/man7/icmp.7:41
9529 msgid ""
9530 "Linux limits the rate of ICMP error packets to each destination.  "
9531 "B<ICMP_REDIRECT> and B<ICMP_DEST_UNREACH> are also limited by the "
9532 "destination route of the incoming packets."
9533 msgstr ""
9534 "Linux では ICMP エラーパケットのレートをそれぞれの送り先に対して 制限してい"
9535 "る。 B<ICMP_REDIRECT> と B<ICMP_DEST_UNREACH> も到着したパケットの行き先経路 "
9536 "(destination route) を制限する。"
9537
9538 #.  FIXME better description needed
9539 #. type: Plain text
9540 #: build/C/man7/icmp.7:54
9541 msgid ""
9542 "ICMP supports a set of I</proc> interfaces to configure some global IP "
9543 "parameters.  The parameters can be accessed by reading or writing files in "
9544 "the directory I</proc/sys/net/ipv4/>.  Most of these parameters are rate "
9545 "limitations for specific ICMP types.  Linux 2.2 uses a token bucket filter "
9546 "to limit ICMPs.  The value is the timeout in jiffies until the token bucket "
9547 "filter is cleared after a burst.  A jiffy is a system dependent unit, "
9548 "usually 10ms on i386 and about 1ms on alpha and ia64."
9549 msgstr ""
9550 "ICMP では、いくつかのグローバルパラメータを設定するための I</proc> ファイル群"
9551 "が用意されている。 これらのパラメータには、 I</proc/sys/net/ipv4/> ディレクト"
9552 "リ内のファイルの読み書きでアクセスできる。 これらのパラメータのほとんどは特定"
9553 "の ICMP タイプに対するレート制限 (rate limitation) である。 Linux 2.2 は "
9554 "ICMP の制限にトークン・バケット・フィルタ (token bucket filter) を用いる。 そ"
9555 "れぞれの値は、バーストの後にトークン・バケット・フィルタがクリア されるまでの"
9556 "タイムアウトを秒単位で表したものである。最小単位(jiffy)は システム依存の単位"
9557 "で i386 システムは通常 10ms、alpha や ia64 では 1ms である。"
9558
9559 #. type: TP
9560 #: build/C/man7/icmp.7:54
9561 #, no-wrap
9562 msgid "I<icmp_destunreach_rate> (Linux 2.2 to 2.4.9)"
9563 msgstr "I<icmp_destunreach_rate> (Linux 2.2 から 2.4.9 まで)"
9564
9565 #.  Precisely: from 2.1.102
9566 #. type: Plain text
9567 #: build/C/man7/icmp.7:63
9568 msgid ""
9569 "Maximum rate to send ICMP Destination Unreachable packets.  This limits the "
9570 "rate at which packets are sent to any individual route or destination.  The "
9571 "limit does not affect sending of B<ICMP_FRAG_NEEDED> packets needed for path "
9572 "MTU discovery."
9573 msgstr ""
9574 "ICMP 不達パケット (Destination Unreachable packet) を送る最大レート。 これは"
9575 "特定のルートまたは行き先にパケットを送信するレートを制限する。 この制限は、 "
9576 "path MTU discovery に必要な B<ICMP_FRAG_NEEDED> パケットの送信には影響しな"
9577 "い。"
9578
9579 #. type: TP
9580 #: build/C/man7/icmp.7:63
9581 #, no-wrap
9582 msgid "I<icmp_echo_ignore_all> (since Linux 2.2)"
9583 msgstr "I<icmp_echo_ignore_all> (Linux 2.2 以降)"
9584
9585 #.  Precisely: 2.1.68
9586 #. type: Plain text
9587 #: build/C/man7/icmp.7:69
9588 msgid "If this value is nonzero, Linux will ignore all B<ICMP_ECHO> requests."
9589 msgstr ""
9590 "この値が非ゼロの場合は、 Linux はすべての B<ICMP_ECHO> 要求を無視する。"
9591
9592 #. type: TP
9593 #: build/C/man7/icmp.7:69
9594 #, no-wrap
9595 msgid "I<icmp_echo_ignore_broadcasts> (since Linux 2.2)"
9596 msgstr "I<icmp_echo_ignore_broadcasts> (Linux 2.2 以降)"
9597
9598 #.  Precisely: from 2.1.68
9599 #. type: Plain text
9600 #: build/C/man7/icmp.7:75
9601 msgid ""
9602 "If this value is nonzero, Linux will ignore all B<ICMP_ECHO> packets sent to "
9603 "broadcast addresses."
9604 msgstr ""
9605 "この値が非ゼロの場合は、 Linux はブロードキャストアドレスに送られたすべての "
9606 "B<ICMP_ECHO> 要求を無視する。"
9607
9608 #. type: TP
9609 #: build/C/man7/icmp.7:75
9610 #, no-wrap
9611 msgid "I<icmp_echoreply_rate> (Linux 2.2 to 2.4.9)"
9612 msgstr "I<icmp_echoreply_rate> (Linux 2.2 から 2.4.9 まで)"
9613
9614 #.  Precisely: from 2.1.102
9615 #. type: Plain text
9616 #: build/C/man7/icmp.7:83
9617 msgid ""
9618 "Maximum rate for sending B<ICMP_ECHOREPLY> packets in response to "
9619 "B<ICMP_ECHOREQUEST> packets."
9620 msgstr ""
9621 "B<ICMP_ECHOREQUEST> パケットに応答する B<ICMP_ECHOREPLY> パケットの最大送信"
9622 "レート。"
9623
9624 #. type: TP
9625 #: build/C/man7/icmp.7:83
9626 #, no-wrap
9627 msgid "I<icmp_errors_use_inbound_ifaddr> (Boolean; default: disabled; since Linux 2.6.12)"
9628 msgstr "I<icmp_errors_use_inbound_ifaddr> (Boolean; default: disabled; Linux 2.6.12 以降)"
9629
9630 #.  The following taken from 2.6.28-rc4 Documentation/networking/ip-sysctl.txt
9631 #. type: Plain text
9632 #: build/C/man7/icmp.7:88
9633 msgid ""
9634 "If disabled, ICMP error messages are sent with the primary address of the "
9635 "exiting interface."
9636 msgstr ""
9637 "これを無効にすると、ICMP エラーメッセージは、 出力インタフェースのプライマリ"
9638 "アドレスで送信される。"
9639
9640 #. type: Plain text
9641 #: build/C/man7/icmp.7:94
9642 msgid ""
9643 "If enabled, the message will be sent with the primary address of the "
9644 "interface that received the packet that caused the ICMP error.  This is the "
9645 "behavior that many network administrators will expect from a router.  And it "
9646 "can make debugging complicated network layouts much easier."
9647 msgstr ""
9648 "これを有効にすると、エラーメッセージは ICMP エラーの原因となったパケットを 受"
9649 "信したインタフェースのプライマアドレスで送信される。 この動作は、多くのネット"
9650 "ワーク管理者がルータに対して期待しているものであり、 これにより複雑なネット"
9651 "ワークレイアウトのデバッグがより容易になる。"
9652
9653 #. type: Plain text
9654 #: build/C/man7/icmp.7:98
9655 msgid ""
9656 "Note that if no primary address exists for the interface selected, then the "
9657 "primary address of the first non-loopback interface that has one will be "
9658 "used regardless of this setting."
9659 msgstr ""
9660 "選択されたインタフェースでプライマリアドレスが存在しない場合は、 この設定に関"
9661 "わらず、最初のループバック以外のインタフェースで、 プライマリアドレスを持つイ"
9662 "ンタフェースのプライマリアドレスが使用される点に 注意すること。"
9663
9664 #. type: TP
9665 #: build/C/man7/icmp.7:98
9666 #, no-wrap
9667 msgid "I<icmp_ignore_bogus_error_responses> (Boolean; default: disabled; since Linux 2.2)"
9668 msgstr "I<icmp_ignore_bogus_error_responses> (Boolean; default: disabled; Linux 2.2 以降)"
9669
9670 #.  precisely: since 2.1.32
9671 #.  The following taken from 2.6.28-rc4 Documentation/networking/ip-sysctl.txt
9672 #. type: Plain text
9673 #: build/C/man7/icmp.7:106
9674 msgid ""
9675 "Some routers violate RFC1122 by sending bogus responses to broadcast "
9676 "frames.  Such violations are normally logged via a kernel warning.  If this "
9677 "parameter is enabled, the kernel will not give such warnings, which will "
9678 "avoid log file clutter."
9679 msgstr ""
9680 "ルータの中には、RFC1122 に違反し、ブロードキャストフレームに対して 偽の応答を"
9681 "送信するものがある。 このような違反は通常カーネルの警告としてログに記録され"
9682 "る。 このパラメータを有効にすると、カーネルはこのような警告を出さなくなり、 "
9683 "ログファイルに雑音のような情報が記録されるのを避けることができる。"
9684
9685 #. type: TP
9686 #: build/C/man7/icmp.7:106
9687 #, no-wrap
9688 msgid "I<icmp_paramprob_rate> (Linux 2.2 to 2.4.9)"
9689 msgstr "I<icmp_paramprob_rate> (Linux 2.2 から 2.4.9 まで)"
9690
9691 #.  Precisely: from 2.1.102
9692 #. type: Plain text
9693 #: build/C/man7/icmp.7:113
9694 msgid ""
9695 "Maximum rate for sending B<ICMP_PARAMETERPROB> packets.  These packets are "
9696 "sent when a packet arrives with an invalid IP header."
9697 msgstr ""
9698 "B<ICMP_PARAMETERPROB> パケットの最大送信レート。 これらのパケットは不正な IP "
9699 "ヘッダを持つパケットが到着した場合に 送信される。"
9700
9701 #. type: TP
9702 #: build/C/man7/icmp.7:113
9703 #, no-wrap
9704 msgid "I<icmp_ratelimit> (integer; default: 1000; since Linux 2.4.10)"
9705 msgstr "I<icmp_ratelimit> (integer; default: 1000; Linux 2.4.10 以降)"
9706
9707 #.  The following taken from 2.6.28-rc4 Documentation/networking/ip-sysctl.txt
9708 #. type: Plain text
9709 #: build/C/man7/icmp.7:121
9710 msgid ""
9711 "Limit the maximum rates for sending ICMP packets whose type matches "
9712 "I<icmp_ratemask> (see below) to specific targets.  0 to disable any "
9713 "limiting, otherwise the minimum space between responses in milliseconds."
9714 msgstr ""
9715 "種別が I<icmp_ratemask> (下記参照) にマッチした ICMP パケットの、 特定の送信"
9716 "先への送信レートの最大値を制限する。 0 はレート制限を無効にすることを、 0 以"
9717 "外の値は応答間の最小間隔 (ミリ秒単位) を示す。"
9718
9719 #. type: TP
9720 #: build/C/man7/icmp.7:121
9721 #, no-wrap
9722 msgid "I<icmp_ratemask> (integer; default: see below; since Linux 2.4.10)"
9723 msgstr "I<icmp_ratemask> (integer; default: 下記参照; Linux 2.4.10 以降)"
9724
9725 #.  The following taken from 2.6.28-rc4 Documentation/networking/ip-sysctl.txt
9726 #. type: Plain text
9727 #: build/C/man7/icmp.7:125
9728 msgid "Mask made of ICMP types for which rates are being limited."
9729 msgstr "レート制限を行う ICMP タイプを決めるマスク。"
9730
9731 #. type: Plain text
9732 #: build/C/man7/icmp.7:127
9733 msgid "Significant bits: IHGFEDCBA9876543210"
9734 msgstr "有効ビット: IHGFEDCBA9876543210"
9735
9736 #. type: Plain text
9737 #: build/C/man7/icmp.7:129
9738 msgid "Default mask: 0000001100000011000 (0x1818)"
9739 msgstr "デフォルトマスク: 0000001100000011000 (0x1818)"
9740
9741 #. type: Plain text
9742 #: build/C/man7/icmp.7:132
9743 msgid ""
9744 "Bit definitions (see the Linux kernel source file I<include/linux/icmp.h>):"
9745 msgstr ""
9746 "ビット定義 (Linux カーネルソースファイル I<include/linux/icmp.h> を参照):"
9747
9748 #. type: tbl table
9749 #: build/C/man7/icmp.7:136
9750 #, no-wrap
9751 msgid "0 Echo Reply\n"
9752 msgstr "0 Echo Reply\n"
9753
9754 #. type: tbl table
9755 #: build/C/man7/icmp.7:137
9756 #, no-wrap
9757 msgid "3 Destination Unreachable *\n"
9758 msgstr "3 Destination Unreachable *\n"
9759
9760 #. type: tbl table
9761 #: build/C/man7/icmp.7:138
9762 #, no-wrap
9763 msgid "4 Source Quench *\n"
9764 msgstr "4 Source Quench *\n"
9765
9766 #. type: tbl table
9767 #: build/C/man7/icmp.7:139
9768 #, no-wrap
9769 msgid "5 Redirect\n"
9770 msgstr "5 Redirect\n"
9771
9772 #. type: tbl table
9773 #: build/C/man7/icmp.7:140
9774 #, no-wrap
9775 msgid "8 Echo Request\n"
9776 msgstr "8 Echo Request\n"
9777
9778 #. type: tbl table
9779 #: build/C/man7/icmp.7:141
9780 #, no-wrap
9781 msgid "B Time Exceeded *\n"
9782 msgstr "B Time Exceeded *\n"
9783
9784 #. type: tbl table
9785 #: build/C/man7/icmp.7:142
9786 #, no-wrap
9787 msgid "C Parameter Problem *\n"
9788 msgstr "C Parameter Problem *\n"
9789
9790 #. type: tbl table
9791 #: build/C/man7/icmp.7:143
9792 #, no-wrap
9793 msgid "D Timestamp Request\n"
9794 msgstr "D Timestamp Request\n"
9795
9796 #. type: tbl table
9797 #: build/C/man7/icmp.7:144
9798 #, no-wrap
9799 msgid "E Timestamp Reply\n"
9800 msgstr "E Timestamp Reply\n"
9801
9802 #. type: tbl table
9803 #: build/C/man7/icmp.7:145
9804 #, no-wrap
9805 msgid "F Info Request\n"
9806 msgstr "F Info Request\n"
9807
9808 #. type: tbl table
9809 #: build/C/man7/icmp.7:146
9810 #, no-wrap
9811 msgid "G Info Reply\n"
9812 msgstr "G Info Reply\n"
9813
9814 #. type: tbl table
9815 #: build/C/man7/icmp.7:147
9816 #, no-wrap
9817 msgid "H Address Mask Request\n"
9818 msgstr "H Address Mask Request\n"
9819
9820 #. type: tbl table
9821 #: build/C/man7/icmp.7:148
9822 #, no-wrap
9823 msgid "I Address Mask Reply\n"
9824 msgstr "I Address Mask Reply\n"
9825
9826 #. type: Plain text
9827 #: build/C/man7/icmp.7:154
9828 msgid ""
9829 "The bits marked with an asterisk are rate limited by default (see the "
9830 "default mask above)."
9831 msgstr ""
9832 "アスタリスク印 (*) が付いたビットは、 デフォルトでレート制限が有効になってい"
9833 "る (上記のマスクのデフォルトも参照)。"
9834
9835 #. type: TP
9836 #: build/C/man7/icmp.7:154
9837 #, no-wrap
9838 msgid "I<icmp_timeexceed_rate> (Linux 2.2 to 2.4.9)"
9839 msgstr "I<icmp_timeexceed_rate> (Linux 2.2 から 2.4.9 まで)"
9840
9841 #. type: Plain text
9842 #: build/C/man7/icmp.7:161
9843 msgid ""
9844 "Maximum rate for sending B<ICMP_TIME_EXCEEDED> packets.  These packets are "
9845 "sent to prevent loops when a packet has crossed too many hops."
9846 msgstr ""
9847 "B<ICMP_TIME_EXCEEDED> パケットの最大送信レート。 これらのパケットはパケットが"
9848 "あまりに多くの hop を通過した場合に、 ループを防ぐために送られる。"
9849
9850 #. type: Plain text
9851 #: build/C/man7/icmp.7:165
9852 msgid "Support for the B<ICMP_ADDRESS> request was removed in 2.2."
9853 msgstr "B<ICMP_ADDRESS> 要求に対するサポートは 2.2 で削除された。"
9854
9855 #. type: Plain text
9856 #: build/C/man7/icmp.7:169
9857 msgid "Support for B<ICMP_SOURCE_QUENCH> was removed in Linux 2.2."
9858 msgstr "B<ICMP_SOURCE_QUENCH> は Linux 2.2 で削除された。"
9859
9860 #.  not really true ATM
9861 #.  .PP
9862 #.  Linux ICMP should be compliant to RFC 1122.
9863 #. type: Plain text
9864 #: build/C/man7/icmp.7:177
9865 msgid ""
9866 "As many other implementations don't support B<IPPROTO_ICMP> raw sockets, "
9867 "this feature should not be relied on in portable programs."
9868 msgstr ""
9869 "他の多くの実装では、 B<IPPROTO_ICMP> raw ソケットがサポートされていない。 こ"
9870 "の機能は移植性が必要なプログラムでは用いるべきでない。"
9871
9872 #. type: Plain text
9873 #: build/C/man7/icmp.7:182
9874 msgid ""
9875 "B<ICMP_REDIRECT> packets are not sent when Linux is not acting as a router.  "
9876 "They are also accepted only from the old gateway defined in the routing "
9877 "table and the redirect routes are expired after some time."
9878 msgstr ""
9879 "Linux がルーターとして動作していないときには、 B<ICMP_REDIRECT> パケットは送"
9880 "信されない。 またこれらが受け取られるのも、発信元がルーティングテーブルに定義"
9881 "されている 古いゲートウェイで、リダイレクト・ルート (redirect route) が 適当"
9882 "な時間の後に期限切れになっている場合に限られる。"
9883
9884 #. type: Plain text
9885 #: build/C/man7/icmp.7:186
9886 msgid ""
9887 "The 64-bit timestamp returned by B<ICMP_TIMESTAMP> is in milliseconds since "
9888 "the Epoch, 1970-01-01 00:00:00 +0000 (UTC)."
9889 msgstr ""
9890 "B<ICMP_TIMESTAMP> から返される 64 ビットのタイムスタンプは、 紀元 (Epoch) で"
9891 "ある 1970-01-01 00:00:00 +0000 (UTC)  からの経過時間をミリ秒単位で表したもの"
9892 "である。"
9893
9894 #. type: Plain text
9895 #: build/C/man7/icmp.7:191
9896 msgid ""
9897 "Linux ICMP internally uses a raw socket to send ICMPs.  This raw socket may "
9898 "appear in B<netstat>(8)  output with a zero inode."
9899 msgstr ""
9900 "Linux ICMP は ICMP を送るために内部で raw ソケットを用いる。 raw ソケットは "
9901 "B<netstat>(8)  の出力に 0 inode として出力される。"
9902
9903 #. type: Plain text
9904 #: build/C/man7/icmp.7:193
9905 msgid "B<ip>(7)"
9906 msgstr "B<ip>(7)"
9907
9908 #. type: Plain text
9909 #: build/C/man7/icmp.7:195
9910 msgid "RFC\\ 792 for a description of the ICMP protocol."
9911 msgstr "B<RFC\\ 792>: ICMP プロトコルの説明"
9912
9913 #. type: TH
9914 #: build/C/man3/inet.3:42
9915 #, no-wrap
9916 msgid "INET"
9917 msgstr "INET"
9918
9919 #. type: TH
9920 #: build/C/man3/inet.3:42
9921 #, no-wrap
9922 msgid "2013-02-10"
9923 msgstr "2013-02-10"
9924
9925 #. type: Plain text
9926 #: build/C/man3/inet.3:46
9927 msgid ""
9928 "inet_aton, inet_addr, inet_network, inet_ntoa, inet_makeaddr, inet_lnaof, "
9929 "inet_netof - Internet address manipulation routines"
9930 msgstr ""
9931 "inet_aton, inet_addr, inet_network, inet_ntoa, inet_makeaddr, inet_lnaof, "
9932 "inet_netof - インターネットアドレス操作ルーチン"
9933
9934 #. type: Plain text
9935 #: build/C/man3/inet.3:51
9936 #, no-wrap
9937 msgid ""
9938 "B<#include E<lt>sys/socket.hE<gt>>\n"
9939 "B<#include E<lt>netinet/in.hE<gt>>\n"
9940 "B<#include E<lt>arpa/inet.hE<gt>>\n"
9941 msgstr ""
9942 "B<#include E<lt>sys/socket.hE<gt>>\n"
9943 "B<#include E<lt>netinet/in.hE<gt>>\n"
9944 "B<#include E<lt>arpa/inet.hE<gt>>\n"
9945
9946 #. type: Plain text
9947 #: build/C/man3/inet.3:53
9948 #, no-wrap
9949 msgid "B<int inet_aton(const char *>I<cp>B<, struct in_addr *>I<inp>B<);>\n"
9950 msgstr "B<int inet_aton(const char *>I<cp>B<, struct in_addr *>I<inp>B<);>\n"
9951
9952 #. type: Plain text
9953 #: build/C/man3/inet.3:55
9954 #, no-wrap
9955 msgid "B<in_addr_t inet_addr(const char *>I<cp>B<);>\n"
9956 msgstr "B<in_addr_t inet_addr(const char *>I<cp>B<);>\n"
9957
9958 #. type: Plain text
9959 #: build/C/man3/inet.3:57
9960 #, no-wrap
9961 msgid "B<in_addr_t inet_network(const char *>I<cp>B<);>\n"
9962 msgstr "B<in_addr_t inet_network(const char *>I<cp>B<);>\n"
9963
9964 #. type: Plain text
9965 #: build/C/man3/inet.3:59
9966 #, no-wrap
9967 msgid "B<char *inet_ntoa(struct in_addr >I<in>B<);>\n"
9968 msgstr "B<char *inet_ntoa(struct in_addr >I<in>B<);>\n"
9969
9970 #. type: Plain text
9971 #: build/C/man3/inet.3:61
9972 #, no-wrap
9973 msgid "B<struct in_addr inet_makeaddr(int >I<net>B<, int >I<host>B<);>\n"
9974 msgstr "B<struct in_addr inet_makeaddr(int >I<net>B<, int >I<host>B<);>\n"
9975
9976 #. type: Plain text
9977 #: build/C/man3/inet.3:63
9978 #, no-wrap
9979 msgid "B<in_addr_t inet_lnaof(struct in_addr >I<in>B<);>\n"
9980 msgstr "B<in_addr_t inet_lnaof(struct in_addr >I<in>B<);>\n"
9981
9982 #. type: Plain text
9983 #: build/C/man3/inet.3:65
9984 #, no-wrap
9985 msgid "B<in_addr_t inet_netof(struct in_addr >I<in>B<);>\n"
9986 msgstr "B<in_addr_t inet_netof(struct in_addr >I<in>B<);>\n"
9987
9988 #. type: Plain text
9989 #: build/C/man3/inet.3:75
9990 msgid "B<inet_aton>(), B<inet_ntoa>(): _BSD_SOURCE || _SVID_SOURCE"
9991 msgstr "B<inet_aton>(), B<inet_ntoa>(): _BSD_SOURCE || _SVID_SOURCE"
9992
9993 #. type: Plain text
9994 #: build/C/man3/inet.3:85
9995 msgid ""
9996 "B<inet_aton>()  converts the Internet host address I<cp> from the IPv4 "
9997 "numbers-and-dots notation into binary form (in network byte order)  and "
9998 "stores it in the structure that I<inp> points to.  B<inet_aton>()  returns "
9999 "nonzero if the address is valid, zero if not.  The address supplied in I<cp> "
10000 "can have one of the following forms:"
10001 msgstr ""
10002 "B<inet_aton>()  は、インターネットホストのアドレス I<cp> を、 IPv4 の数値と"
10003 "ドットによる表記から (ネットワークバイトオーダの) バイナリ値へ 変換し、変換結"
10004 "果を I<inp> が指している構造体に格納する。 アドレスが有効な場合 0 以外を返"
10005 "し、そうでない場合は 0 を返す。 I<cp> で渡すアドレスとして、以下の形式を用い"
10006 "ることができる。"
10007
10008 #. type: TP
10009 #: build/C/man3/inet.3:85
10010 #, no-wrap
10011 msgid "I<a.b.c.d>"
10012 msgstr "I<a.b.c.d>"
10013
10014 #. type: Plain text
10015 #: build/C/man3/inet.3:89
10016 msgid ""
10017 "Each of the four numeric parts specifies a byte of the address; the bytes "
10018 "are assigned in left-to-right order to produce the binary address."
10019 msgstr ""
10020 "4 つの数字のそれぞれはアドレスの各バイトを示す。 これらのバイトは左から右の順"
10021 "序でバイナリアドレスに割り当てられる。"
10022
10023 #. type: TP
10024 #: build/C/man3/inet.3:89
10025 #, no-wrap
10026 msgid "I<a.b.c>"
10027 msgstr "I<a.b.c>"
10028
10029 #. type: Plain text
10030 #: build/C/man3/inet.3:102
10031 msgid ""
10032 "Parts I<a> and I<b> specify the first two bytes of the binary address.  Part "
10033 "I<c> is interpreted as a 16-bit value that defines the rightmost two bytes "
10034 "of the binary address.  This notation is suitable for specifying (outmoded) "
10035 "Class B network addresses."
10036 msgstr ""
10037 "I<a> と I<b> はバイナリアドレスの最初の 2 バイトを示す。 I<c> は 16 ビット値"
10038 "と解釈され、バイナリアドレスの右側の 2 バイトを表す。 この表記は、(過去のもの"
10039 "となった) クラス B ネットワークアドレスを 指定するのに適している。"
10040
10041 #. type: TP
10042 #: build/C/man3/inet.3:102
10043 #, no-wrap
10044 msgid "I<a.b>"
10045 msgstr "I<a.b>"
10046
10047 #. type: Plain text
10048 #: build/C/man3/inet.3:113
10049 msgid ""
10050 "Part I<a> specifies the first byte of the binary address.  Part I<b> is "
10051 "interpreted as a 24-bit value that defines the rightmost three bytes of the "
10052 "binary address.  This notation is suitable for specifying (outmoded) Class C "
10053 "network addresses."
10054 msgstr ""
10055 "I<a> はバイナリアドレスの最初のバイトを示す。 I<b> は 24 ビット値と解釈され、"
10056 "バイナリアドレスの右側の 3 バイトを表す。 この表記は、(過去のものとなった) ク"
10057 "ラス C ネットワークアドレスを 指定するのに適している。"
10058
10059 #. type: TP
10060 #: build/C/man3/inet.3:113
10061 #, no-wrap
10062 msgid "I<a>"
10063 msgstr "I<a>"
10064
10065 #. type: Plain text
10066 #: build/C/man3/inet.3:119
10067 msgid ""
10068 "The value I<a> is interpreted as a 32-bit value that is stored directly into "
10069 "the binary address without any byte rearrangement."
10070 msgstr ""
10071 "値 I<a> は 32 ビット値と解釈され、バイトの再配置は行われず、 そのままバイナリ"
10072 "アドレスとして格納される。"
10073
10074 #. type: Plain text
10075 #: build/C/man3/inet.3:132
10076 msgid ""
10077 "In all of the above forms, components of the dotted address can be specified "
10078 "in decimal, octal (with a leading I<0>), or hexadecimal, with a leading "
10079 "I<0X>).  Addresses in any of these forms are collectively termed I<IPV4 "
10080 "numbers-and-dots notation>.  The form that uses exactly four decimal numbers "
10081 "is referred to as I<IPv4 dotted-decimal notation> (or sometimes: I<IPv4 "
10082 "dotted-quad notation>)."
10083 msgstr ""
10084 "上記の全ての形式で、ドット区切りのアドレスの各要素は、10 進数、 8 進数 (先頭"
10085 "に I<0> を付ける)、 16 進数 (先頭に I<0X> を付ける) で指定できる。 これらの形"
10086 "式のアドレスをまとめて I<IPv4 の数値とドットによる表記 (IPv4 numbers-and-"
10087 "dots notation)> と呼ぶ。 また、10 進数 4 つだけを使った形式を I<IPv4 のドット"
10088 "区切りの 10 進数表記 (IPv4 dotted-decimal notation)> と呼ぶ (I<IPv4 のドット"
10089 "区切り 4 分割表記 (IPv4 dotted-decimal notation)> と呼ぶこともある)。"
10090
10091 #. type: Plain text
10092 #: build/C/man3/inet.3:149
10093 msgid ""
10094 "The B<inet_addr>()  function converts the Internet host address I<cp> from "
10095 "IPv4 numbers-and-dots notation into binary data in network byte order.  If "
10096 "the input is invalid, B<INADDR_NONE> (usually -1) is returned.  Use of this "
10097 "function is problematic because -1 is a valid address (255.255.255.255).  "
10098 "Avoid its use in favor of B<inet_aton>(), B<inet_pton>(3), or B<getaddrinfo>"
10099 "(3)  which provide a cleaner way to indicate error return."
10100 msgstr ""
10101 "B<inet_addr>()  関数は、インターネットホストのアドレス I<cp> を、 IPv4 の数値"
10102 "とドットによる表記からネットワークバイトオーダでの バイナリ値へ変換して返"
10103 "す。 入力が不正な場合、 B<INADDR_NONE> (普通は -1) を返す。 -1 は有効なアドレ"
10104 "ス (255.255.255.255) なので、この関数を使うと 問題になるかもしれない。 この関"
10105 "数を使うのは避け、代わりに B<inet_aton>(), B<inet_pton>(3), B<getaddrinfo>"
10106 "(3)  を使うのがよい。 これらの関数の方が、エラーの通知がよりきれいな方法で行"
10107 "われる。"
10108
10109 #. type: Plain text
10110 #: build/C/man3/inet.3:159
10111 msgid ""
10112 "The B<inet_network>()  function converts I<cp>, a string in IPv4 numbers-and-"
10113 "dots notation, into a number in host byte order suitable for use as an "
10114 "Internet network address.  On success, the converted address is returned.  "
10115 "If the input is invalid, -1 is returned."
10116 msgstr ""
10117 "B<inet_network>()  関数は、 IPv4 の数値とドットによる表記の文字列 I<cp> を、 "
10118 "インターネットアドレスとしての使用に適した ホストバイトオーダの数値に変換す"
10119 "る。 成功すると、変換されたアドレスを返す。 入力が不正な場合は -1 を返す。"
10120
10121 #. type: Plain text
10122 #: build/C/man3/inet.3:167
10123 msgid ""
10124 "The B<inet_ntoa>()  function converts the Internet host address I<in>, given "
10125 "in network byte order, to a string in IPv4 dotted-decimal notation.  The "
10126 "string is returned in a statically allocated buffer, which subsequent calls "
10127 "will overwrite."
10128 msgstr ""
10129 "B<inet_ntoa>()  関数は、ネットワークバイトオーダで渡されたインターネットホス"
10130 "トアドレス I<in> を、 IPv4 のドット区切りの 10 進数表記の文字列に変換する。 "
10131 "文字列は静的に割当てられたバッファに格納されて返されるので、 この後でこの関数"
10132 "を再度呼び出すと文字列は上書きされる。"
10133
10134 #. type: Plain text
10135 #: build/C/man3/inet.3:173
10136 msgid ""
10137 "The B<inet_lnaof>()  function returns the local network address part of the "
10138 "Internet address I<in>.  The returned value is in host byte order."
10139 msgstr ""
10140 "B<inet_lnaof>()  関数は、インターネットアドレス I<in> のローカルネットワーク"
10141 "部分を返す。 この返り値はホストバイトオーダである。"
10142
10143 #. type: Plain text
10144 #: build/C/man3/inet.3:179
10145 msgid ""
10146 "The B<inet_netof>()  function returns the network number part of the "
10147 "Internet address I<in>.  The returned value is in host byte order."
10148 msgstr ""
10149 "B<inet_netof>()  関数は、インターネットアドレス I<in> のネットワーク部分を返"
10150 "す。 この返り値はホストバイトオーダである。"
10151
10152 #. type: Plain text
10153 #: build/C/man3/inet.3:190
10154 msgid ""
10155 "The B<inet_makeaddr>()  function is the converse of B<inet_netof>()  and "
10156 "B<inet_lnaof>().  It returns an Internet host address in network byte order, "
10157 "created by combining the network number I<net> with the local address "
10158 "I<host>, both in host byte order."
10159 msgstr ""
10160 "B<inet_makeaddr>()  関数は B<inet_netof>()  と B<inet_lnaof>()  の逆の機能を"
10161 "持つ。 ネットワーク番号 I<net> と、ローカルアドレス I<host> を 組み合わせて生"
10162 "成した、インターネットホストアドレスを ネットワークバイトオーダで返す。 "
10163 "I<host>, I<net> はともにホストバイトオーダである。"
10164
10165 #. type: Plain text
10166 #: build/C/man3/inet.3:200
10167 msgid ""
10168 "The structure I<in_addr> as used in B<inet_ntoa>(), B<inet_makeaddr>(), "
10169 "B<inet_lnaof>()  and B<inet_netof>()  is defined in I<E<lt>netinet/in."
10170 "hE<gt>> as:"
10171 msgstr ""
10172 "B<inet_ntoa>(), B<inet_makeaddr>(), B<inet_lnaof>(), B<inet_netof>()  で使用"
10173 "する構造体 I<in_addr> は I<E<lt>netinet/in.hE<gt>> で次のように定義されてい"
10174 "る:"
10175
10176 #. type: Plain text
10177 #: build/C/man3/inet.3:204
10178 #, no-wrap
10179 msgid "typedef uint32_t in_addr_t;\n"
10180 msgstr "typedef uint32_t in_addr_t;\n"
10181
10182 #. type: Plain text
10183 #: build/C/man3/inet.3:208
10184 #, no-wrap
10185 msgid ""
10186 "struct in_addr {\n"
10187 "    in_addr_t s_addr;\n"
10188 "};\n"
10189 msgstr ""
10190 "struct in_addr {\n"
10191 "    in_addr_t s_addr;\n"
10192 "};\n"
10193
10194 #. type: Plain text
10195 #: build/C/man3/inet.3:218
10196 msgid ""
10197 "4.3BSD.  B<inet_addr>()  and B<inet_ntoa>()  are specified in POSIX.1-2001.  "
10198 "B<inet_aton>()  is not specified in POSIX.1-2001, but is available on most "
10199 "systems."
10200 msgstr ""
10201 "4.3BSD.  B<inet_addr>(), B<inet_ntoa>()  は POSIX.1-2001 で規定されている。 "
10202 "B<inet_aton>()  は POSIX.1-2001 で規定されていないが、ほとんどのシステムで利"
10203 "用可能である。"
10204
10205 #. type: Plain text
10206 #: build/C/man3/inet.3:222
10207 msgid ""
10208 "On the i386 the host byte order is Least Significant Byte first (little "
10209 "endian), whereas the network byte order, as used on the Internet, is Most "
10210 "Significant Byte first (big endian)."
10211 msgstr ""
10212 "i386 ではホストバイトオーダは Least Significant Byte (LSB) first (リトルエン"
10213 "ディアン) だが、 インターネットで使われるネットワークバイトオーダは Most "
10214 "Significant Byte (MSB) first (ビッグエンディアン)  である点に注意すること。"
10215
10216 #. type: Plain text
10217 #: build/C/man3/inet.3:231
10218 msgid ""
10219 "B<inet_lnaof>(), B<inet_netof>(), and B<inet_makeaddr>()  are legacy "
10220 "functions that assume they are dealing with I<classful network addresses>.  "
10221 "Classful networking divides IPv4 network addresses into host and network "
10222 "components at byte boundaries, as follows:"
10223 msgstr ""
10224 "B<inet_lnaof>(), B<inet_netof>(), B<inet_makeaddr>()  は過去の名残であり、渡"
10225 "されたアドレスが I<クラスフル・ネットワークアドレス (classful network "
10226 "addresses)> であると仮定して処理を行う。 クラスフル・ネットワークアドレスで"
10227 "は、以下にあるように、 IPv4 ネットワークアドレスをバイト境界でネットワーク部"
10228 "とホスト部に分割する。"
10229
10230 #. type: TP
10231 #: build/C/man3/inet.3:231
10232 #, no-wrap
10233 msgid "Class A"
10234 msgstr "Class A"
10235
10236 #. type: Plain text
10237 #: build/C/man3/inet.3:237
10238 msgid ""
10239 "This address type is indicated by the value 0 in the most significant bit of "
10240 "the (network byte ordered) address.  The network address is contained in the "
10241 "most significant byte, and the host address occupies the remaining three "
10242 "bytes."
10243 msgstr ""
10244 "(ネットワークバイトオーダの) アドレスの最上位ビットが 0 の場合、 このアドレス"
10245 "種別となる。このアドレス種別では、 最上位バイトがネットワークアドレスを表"
10246 "し、 残りの 3 バイトがホストアドレスを表す。"
10247
10248 #. type: TP
10249 #: build/C/man3/inet.3:237
10250 #, no-wrap
10251 msgid "Class B"
10252 msgstr "Class B"
10253
10254 #. type: Plain text
10255 #: build/C/man3/inet.3:243
10256 msgid ""
10257 "This address type is indicated by the binary value 10 in the most "
10258 "significant two bits of the address.  The network address is contained in "
10259 "the two most significant bytes, and the host address occupies the remaining "
10260 "two bytes."
10261 msgstr ""
10262 "(ネットワークバイトオーダの) アドレスの上位側 2 ビットがバイナリ値で 10 の場"
10263 "合、このアドレス種別となる。このアドレス種別では、 上位 2 バイトがネットワー"
10264 "クアドレスを表し、 残りの 2 バイトがホストアドレスを表す。"
10265
10266 #. type: TP
10267 #: build/C/man3/inet.3:243
10268 #, no-wrap
10269 msgid "Class C"
10270 msgstr "Class C"
10271
10272 #. type: Plain text
10273 #: build/C/man3/inet.3:249
10274 msgid ""
10275 "This address type is indicated by the binary value 110 in the most "
10276 "significant three bits of the address.  The network address is contained in "
10277 "the three most significant bytes, and the host address occupies the "
10278 "remaining byte."
10279 msgstr ""
10280 "(ネットワークバイトオーダの) アドレスの上位側 3 ビットがバイナリ値で 110 の場"
10281 "合、このアドレス種別となる。このアドレス種別では、 上位 3 バイトがネットワー"
10282 "クアドレスを表し、 残りの 1 バイトがホストアドレスを表す。"
10283
10284 #. type: Plain text
10285 #: build/C/man3/inet.3:254
10286 msgid ""
10287 "Classful network addresses are now obsolete, having been superseded by "
10288 "Classless Inter-Domain Routing (CIDR), which divides addresses into network "
10289 "and host components at arbitrary bit (rather than byte) boundaries."
10290 msgstr ""
10291 "クラスフル・ネットワークアドレスは現在では廃止され、 クラスレス・ドメイン間"
10292 "ルーチン (CIDR) に取って代わられた。 CIDR では、アドレスを任意のビット境界 "
10293 "(バイト境界ではない) で ネットワーク部とホスト部に分割する。"
10294
10295 #. type: Plain text
10296 #: build/C/man3/inet.3:261
10297 msgid ""
10298 "An example of the use of B<inet_aton>()  and B<inet_ntoa>()  is shown "
10299 "below.  Here are some example runs:"
10300 msgstr ""
10301 "以下は B<inet_aton>()  と B<inet_ntoa>()  の使用例である。このように実行す"
10302 "る。"
10303
10304 #. type: Plain text
10305 #: build/C/man3/inet.3:268
10306 #, no-wrap
10307 msgid ""
10308 "$B< ./a.out 226.000.000.037>      # Last byte is in octal\n"
10309 "226.0.0.31\n"
10310 "$B< ./a.out 0x7f.1         >      # First byte is in hex\n"
10311 "127.0.0.1\n"
10312 msgstr ""
10313 "$B< ./a.out 226.000.000.037>      # Last byte is in octal\n"
10314 "226.0.0.31\n"
10315 "$B< ./a.out 0x7f.1         >      # First byte is in hex\n"
10316 "127.0.0.1\n"
10317
10318 #. type: Plain text
10319 #: build/C/man3/inet.3:277
10320 #, no-wrap
10321 msgid ""
10322 "#define _BSD_SOURCE\n"
10323 "#include E<lt>arpa/inet.hE<gt>\n"
10324 "#include E<lt>stdio.hE<gt>\n"
10325 "#include E<lt>stdlib.hE<gt>\n"
10326 msgstr ""
10327 "#define _BSD_SOURCE\n"
10328 "#include E<lt>arpa/inet.hE<gt>\n"
10329 "#include E<lt>stdio.hE<gt>\n"
10330 "#include E<lt>stdlib.hE<gt>\n"
10331
10332 #. type: Plain text
10333 #: build/C/man3/inet.3:282
10334 #, no-wrap
10335 msgid ""
10336 "int\n"
10337 "main(int argc, char *argv[])\n"
10338 "{\n"
10339 "    struct in_addr addr;\n"
10340 msgstr ""
10341 "int\n"
10342 "main(int argc, char *argv[])\n"
10343 "{\n"
10344 "    struct in_addr addr;\n"
10345
10346 #. type: Plain text
10347 #: build/C/man3/inet.3:287
10348 #, no-wrap
10349 msgid ""
10350 "    if (argc != 2) {\n"
10351 "        fprintf(stderr, \"%s E<lt>dotted-addressE<gt>\\en\", argv[0]);\n"
10352 "        exit(EXIT_FAILURE);\n"
10353 "    }\n"
10354 msgstr ""
10355 "    if (argc != 2) {\n"
10356 "        fprintf(stderr, \"%s E<lt>dotted-addressE<gt>\\en\", argv[0]);\n"
10357 "        exit(EXIT_FAILURE);\n"
10358 "    }\n"
10359
10360 #. type: Plain text
10361 #: build/C/man3/inet.3:292
10362 #, no-wrap
10363 msgid ""
10364 "    if (inet_aton(argv[1], &addr) == 0) {\n"
10365 "        fprintf(stderr, \"Invalid address\\en\");\n"
10366 "        exit(EXIT_FAILURE);\n"
10367 "    }\n"
10368 msgstr ""
10369 "    if (inet_aton(argv[1], &addr) == 0) {\n"
10370 "        fprintf(stderr, \"Invalid address\\en\");\n"
10371 "        exit(EXIT_FAILURE);\n"
10372 "    }\n"
10373
10374 #. type: Plain text
10375 #: build/C/man3/inet.3:296
10376 #, no-wrap
10377 msgid ""
10378 "    printf(\"%s\\en\", inet_ntoa(addr));\n"
10379 "    exit(EXIT_SUCCESS);\n"
10380 "}\n"
10381 msgstr ""
10382 "    printf(\"%s\\en\", inet_ntoa(addr));\n"
10383 "    exit(EXIT_SUCCESS);\n"
10384 "}\n"
10385
10386 #. type: Plain text
10387 #: build/C/man3/inet.3:307
10388 msgid ""
10389 "B<byteorder>(3), B<getaddrinfo>(3), B<gethostbyname>(3), B<getnameinfo>(3), "
10390 "B<getnetent>(3), B<inet_ntop>(3), B<inet_pton>(3), B<hosts>(5), B<networks>"
10391 "(5)"
10392 msgstr ""
10393 "B<byteorder>(3), B<getaddrinfo>(3), B<gethostbyname>(3), B<getnameinfo>(3), "
10394 "B<getnetent>(3), B<inet_ntop>(3), B<inet_pton>(3), B<hosts>(5), B<networks>"
10395 "(5)"
10396
10397 #. type: TH
10398 #: build/C/man3/inet_ntop.3:26
10399 #, no-wrap
10400 msgid "INET_NTOP"
10401 msgstr "INET_NTOP"
10402
10403 #. type: TH
10404 #: build/C/man3/inet_ntop.3:26
10405 #, no-wrap
10406 msgid "2008-11-11"
10407 msgstr "2008-11-11"
10408
10409 #. type: Plain text
10410 #: build/C/man3/inet_ntop.3:29
10411 msgid "inet_ntop - convert IPv4 and IPv6 addresses from binary to text form"
10412 msgstr "inet_ntop - IPv4/IPv6 アドレスをバイナリ形式からテキスト形式に変換する"
10413
10414 #. type: Plain text
10415 #: build/C/man3/inet_ntop.3:35
10416 #, no-wrap
10417 msgid ""
10418 "B<const char *inet_ntop(int >I<af>B<, const void *>I<src>B<,>\n"
10419 "B<                      char *>I<dst>B<, socklen_t >I<size>B<);>\n"
10420 msgstr ""
10421 "B<const char *inet_ntop(int >I<af>B<, const void *>I<src>B<,>\n"
10422 "B<                      char *>I<dst>B<, socklen_t >I<size>B<);>\n"
10423
10424 #. type: Plain text
10425 #: build/C/man3/inet_ntop.3:48
10426 msgid ""
10427 "This function converts the network address structure I<src> in the I<af> "
10428 "address family into a character string.  The resulting string is copied to "
10429 "the buffer pointed to by I<dst>, which must be a non-null pointer.  The "
10430 "caller specifies the number of bytes available in this buffer in the "
10431 "argument I<size>."
10432 msgstr ""
10433 "この関数は、 I<af> アドレスファミリーのネットワークアドレス構造体 I<src> を文"
10434 "字列に変換する。 変換結果の文字列は、 I<dst> が指すバッファにコピーされる。 "
10435 "I<dst> は NULL でないポインタでなければならない。 呼び出し時に、このバッファ"
10436 "で利用できるバイト数を 引き数 I<size> に指定する。"
10437
10438 #. type: Plain text
10439 #: build/C/man3/inet_ntop.3:57
10440 msgid ""
10441 "B<inet_ntop>()  extends the B<inet_ntoa>(3)  function to support multiple "
10442 "address families, B<inet_ntoa>(3)  is now considered to be deprecated in "
10443 "favor of B<inet_ntop>().  The following address families are currently "
10444 "supported:"
10445 msgstr ""
10446 "B<inet_ntop>()  は B<inet_ntoa>(3)  関数を拡張して複数のアドレスファミリーを"
10447 "扱えるようにしたものである。 今後は B<inet_ntoa>(3)  は使わず、 B<inet_ntop>"
10448 "()  を使うようにすると良いだろう。 現在サポートされているアドレスファミリーは"
10449 "以下の通り:"
10450
10451 #. type: Plain text
10452 #: build/C/man3/inet_ntop.3:70
10453 msgid ""
10454 "I<src> points to a I<struct in_addr> (in network byte order)  which is "
10455 "converted to an IPv4 network address in the dotted-decimal format, \"I<ddd."
10456 "ddd.ddd.ddd>\".  The buffer I<dst> must be at least B<INET_ADDRSTRLEN> bytes "
10457 "long."
10458 msgstr ""
10459 "この場合 I<src> は (ネットワークバイトオーダーの)  I<struct in_addr> へのポイ"
10460 "ンタとみなされ、この構造体の内容が ドット区切りの 10 進数形式 \"I<ddd.ddd."
10461 "ddd.ddd>\" の IPv4 ネットワークアドレスに変換される。 バッファ I<dst> は少な"
10462 "くとも B<INET_ADDRSTRLEN> バイトの長さを持たなければならない。"
10463
10464 #. type: Plain text
10465 #: build/C/man3/inet_ntop.3:83
10466 msgid ""
10467 "I<src> points to a I<struct in6_addr> (in network byte order)  which is "
10468 "converted to a representation of this address in the most appropriate IPv6 "
10469 "network address format for this address.  The buffer I<dst> must be at least "
10470 "B<INET6_ADDRSTRLEN> bytes long."
10471 msgstr ""
10472 "この場合 I<src> は (ネットワークバイトオーダーの)  I<struct in6_addr> へのポ"
10473 "インタとみなされ、この構造体の内容が、 (このアドレスに対してもっとも適切な)  "
10474 "IPv6 ネットワークアドレスの表示形式に変換される。 バッファ I<dst> は少なくと"
10475 "も B<INET6_ADDRSTRLEN> バイトの長さを持たなければならない。"
10476
10477 #. type: Plain text
10478 #: build/C/man3/inet_ntop.3:91
10479 msgid ""
10480 "On success, B<inet_ntop>()  returns a non-null pointer to I<dst>.  NULL is "
10481 "returned if there was an error, with I<errno> set to indicate the error."
10482 msgstr ""
10483 "成功すると、 B<inet_ntop>()  は I<dst> への (NULL でない) ポインタを返す。 エ"
10484 "ラーがあった場合は NULL を返し、 I<errno> をエラーを示す値に適切に設定する。"
10485
10486 #. type: TP
10487 #: build/C/man3/inet_ntop.3:92
10488 #, no-wrap
10489 msgid "B<EAFNOSUPPORT>"
10490 msgstr "B<EAFNOSUPPORT>"
10491
10492 #. type: Plain text
10493 #: build/C/man3/inet_ntop.3:96
10494 msgid "I<af> was not a valid address family."
10495 msgstr "I<af> がサポートされているアドレスファミリーでなかった。"
10496
10497 #. type: TP
10498 #: build/C/man3/inet_ntop.3:96
10499 #, no-wrap
10500 msgid "B<ENOSPC>"
10501 msgstr "B<ENOSPC>"
10502
10503 #. type: Plain text
10504 #: build/C/man3/inet_ntop.3:100
10505 msgid "The converted address string would exceed the size given by I<size>."
10506 msgstr ""
10507 "変換されたアドレス文字列の長さが I<size> で指定されたサイズを超過してしまう。"
10508
10509 #.  2.1.3: size_t, 2.1.91: socklen_t
10510 #. type: Plain text
10511 #: build/C/man3/inet_ntop.3:112
10512 msgid ""
10513 "POSIX.1-2001.  Note that RFC\\ 2553 defines a prototype where the last "
10514 "argument I<size> is of type I<size_t>.  Many systems follow RFC\\ 2553.  "
10515 "Glibc 2.0 and 2.1 have I<size_t>, but 2.2 and later have I<socklen_t>."
10516 msgstr ""
10517 "POSIX.1-2001.  RFC\\ 2553 では最後の引き数 I<size> のプロトタイプを "
10518 "I<size_t> 型と定義している。多くのシステムでは RFC\\ 2553 にしたがっている。 "
10519 "glibc 2.0 と 2.1 では I<size_t> だが、 glibc 2.2 以降では I<socklen_t> となっ"
10520 "ている。"
10521
10522 #. type: Plain text
10523 #: build/C/man3/inet_ntop.3:115
10524 msgid "B<AF_INET6> converts IPv4-mapped IPv6 addresses into an IPv6 format."
10525 msgstr ""
10526 "B<AF_INET6> は IPv4 がマップされた IPv6 アドレスを IPv6 形式に変換してしま"
10527 "う。"
10528
10529 #. type: Plain text
10530 #: build/C/man3/inet_ntop.3:118
10531 msgid "See B<inet_pton>(3)."
10532 msgstr "B<inet_pton>(3)  を参照。"
10533
10534 #. type: Plain text
10535 #: build/C/man3/inet_ntop.3:122
10536 msgid "B<getnameinfo>(3), B<inet>(3), B<inet_pton>(3)"
10537 msgstr "B<getnameinfo>(3), B<inet>(3), B<inet_pton>(3)"
10538
10539 #. type: TH
10540 #: build/C/man3/inet_pton.3:27
10541 #, no-wrap
10542 msgid "INET_PTON"
10543 msgstr "INET_PTON"
10544
10545 #. type: TH
10546 #: build/C/man3/inet_pton.3:27
10547 #, no-wrap
10548 msgid "2008-06-18"
10549 msgstr "2008-06-18"
10550
10551 #. type: Plain text
10552 #: build/C/man3/inet_pton.3:30
10553 msgid "inet_pton - convert IPv4 and IPv6 addresses from text to binary form"
10554 msgstr "inet_pton - IPv4/IPv6 アドレスをテキスト形式からバイナリ形式に変換する"
10555
10556 #. type: Plain text
10557 #: build/C/man3/inet_pton.3:35
10558 #, no-wrap
10559 msgid "B<int inet_pton(int >I<af>B<, const char *>I<src>B<, void *>I<dst>B<);>\n"
10560 msgstr "B<int inet_pton(int >I<af>B<, const char *>I<src>B<, void *>I<dst>B<);>\n"
10561
10562 #. type: Plain text
10563 #: build/C/man3/inet_pton.3:51
10564 msgid ""
10565 "This function converts the character string I<src> into a network address "
10566 "structure in the I<af> address family, then copies the network address "
10567 "structure to I<dst>.  The I<af> argument must be either B<AF_INET> or "
10568 "B<AF_INET6>."
10569 msgstr ""
10570 "この関数は文字列 I<src> を、アドレスファミリー I<af> のネットワークアドレス構"
10571 "造体に変換し、 I<dst> にコピーする。 I<af> 引き数は B<AF_INET> か "
10572 "B<AF_INET6> のどちらかでなければならない。"
10573
10574 #. type: Plain text
10575 #: build/C/man3/inet_pton.3:53
10576 msgid "The following address families are currently supported:"
10577 msgstr "現在サポートされているアドレスファミリーは以下の通りである。"
10578
10579 #. type: Plain text
10580 #: build/C/man3/inet_pton.3:67
10581 msgid ""
10582 "I<src> points to a character string containing an IPv4 network address in "
10583 "dotted-decimal format, \"I<ddd.ddd.ddd.ddd>\", where I<ddd> is a decimal "
10584 "number of up to three digits in the range 0 to 255.  The address is "
10585 "converted to a I<struct in_addr> and copied to I<dst>, which must be I<sizeof"
10586 "(struct in_addr)> (4) bytes (32 bits) long."
10587 msgstr ""
10588 "I<src> はドット区切りの 10 進数形式 \"I<ddd.ddd.ddd.ddd>\" の IPv4 ネットワー"
10589 "クアドレス文字列へのポインタである。 I<ddd> は 0 から 255 までの範囲の最大 3 "
10590 "桁の 10 進数である。 このアドレスは I<struct in_addr> に変換されて I<dst> に"
10591 "コピーされる。 I<dst> の長さは I<sizeof(struct in_addr)> (4) バイト (32ビッ"
10592 "ト) でなければならない。"
10593
10594 #. type: Plain text
10595 #: build/C/man3/inet_pton.3:79
10596 msgid ""
10597 "I<src> points to a character string containing an IPv6 network address.  The "
10598 "address is converted to a I<struct in6_addr> and copied to I<dst>, which "
10599 "must be I<sizeof(struct in6_addr)> (16) bytes (128 bits) long.  The allowed "
10600 "formats for IPv6 addresses follow these rules:"
10601 msgstr ""
10602 "I<src> は IPv6 ネットワークアドレスが格納された文字列へのポインタである。 こ"
10603 "のアドレスは I<struct in6_addr> に変換されて I<dst> にコピーされる。 I<dst> "
10604 "の長さは I<sizeof(struct in6_addr)> (16) バイト (128 ビット) でなければならな"
10605 "い。 以下の 3 つのルールにしたがった形式が IPv6 アドレスとして入力できる。"
10606
10607 #. type: IP
10608 #: build/C/man3/inet_pton.3:80
10609 #, no-wrap
10610 msgid "1."
10611 msgstr "1."
10612
10613 #. type: Plain text
10614 #: build/C/man3/inet_pton.3:87
10615 msgid ""
10616 "The preferred format is I<x:x:x:x:x:x:x:x>.  This form consists of eight "
10617 "hexadecimal numbers, each of which expresses a 16-bit value (i.e., each I<x> "
10618 "can be up to 4 hex digits)."
10619 msgstr ""
10620 "推奨形式は I<x:x:x:x:x:x:x:x> である。この形式は 8 個の 16 進数から構成さ"
10621 "れ、 各々の 16 進数は 16 ビット値を表す (I<x> は最大 4 桁の 16 進数である)。"
10622
10623 #. type: IP
10624 #: build/C/man3/inet_pton.3:87
10625 #, no-wrap
10626 msgid "2."
10627 msgstr "2."
10628
10629 #. type: Plain text
10630 #: build/C/man3/inet_pton.3:100
10631 msgid ""
10632 "A series of contiguous zero values in the preferred format can be "
10633 "abbreviated to I<::>.  Only one instance of I<::> can occur in an address.  "
10634 "For example, the loopback address I<0:0:0:0:0:0:0:1> can be abbreviated as "
10635 "I<::1>.  The wildcard address, consisting of all zeros, can be written as "
10636 "I<::>."
10637 msgstr ""
10638 "推奨形式の中の連続する 0 の列は I<::> に短縮できる。アドレス中で使用できる "
10639 "I<::> は 1 個だけである。 例えば、ループバックアドレス I<0:0:0:0:0:0:0:1> は "
10640 "I<::1> と短縮できる。 全ビットが 0 で構成されるワイルドカードアドレスは I<::"
10641 "> と記載できる。"
10642
10643 #. type: IP
10644 #: build/C/man3/inet_pton.3:100
10645 #, no-wrap
10646 msgid "3."
10647 msgstr "3."
10648
10649 #. type: Plain text
10650 #: build/C/man3/inet_pton.3:113
10651 msgid ""
10652 "An alternate format is useful for expressing IPv4-mapped IPv6 addresses.  "
10653 "This form is written as I<x:x:x:x:x:x:d.d.d.d>, where the six leading I<x>s "
10654 "are hexadecimal values that define the six most-significant 16-bit pieces of "
10655 "the address (i.e., 96 bits), and the I<d>s express a value in dotted-decimal "
10656 "notation that defines the least significant 32 bits of the address.  An "
10657 "example of such an address is I<::FFFF:204.152.189.116>."
10658 msgstr ""
10659 "IPv4 をマッピングした IPv6 アドレスを表記するには別の形式が便利である。 この"
10660 "別の形式は I<x:x:x:x:x:x:d.d.d.d> と書くことができる。 最初の 6 個の I<x> は"
10661 "アドレスを 16 ビット単位に区切ったときの上位側 6 個分 (つまり 96 ビット分)  "
10662 "を定義する 16 進数であり、 I<d> の部分はアドレスの下位 32 ビットをドット区切"
10663 "りの 10 進数表記で表したものである。 I<::FFFF:204.152.189.116> はこの形式の例"
10664 "である。"
10665
10666 #. type: Plain text
10667 #: build/C/man3/inet_pton.3:116
10668 msgid ""
10669 "See RFC 2373 for further details on the representation of IPv6 addresses."
10670 msgstr "IPv6 アドレスの表現方法の詳細については RFC 2373 を参照のこと。"
10671
10672 #. type: Plain text
10673 #: build/C/man3/inet_pton.3:129
10674 msgid ""
10675 "B<inet_pton>()  returns 1 on success (network address was successfully "
10676 "converted).  0 is returned if I<src> does not contain a character string "
10677 "representing a valid network address in the specified address family.  If "
10678 "I<af> does not contain a valid address family, -1 is returned and I<errno> "
10679 "is set to B<EAFNOSUPPORT>."
10680 msgstr ""
10681 "成功する (ネットワークアドレスが正常に変換される) と、 B<inet_pton>()  は 1 "
10682 "を返す。 I<src> が指定されたアドレスファミリーに対する 正しいネットワークアド"
10683 "レス表記でない場合には、 0 を返す。 I<af> がサポートされているアドレスファミ"
10684 "リーでない場合には、 -1 を返し、 I<errno> に B<EAFNOSUPPORT> を設定する。"
10685
10686 #. type: Plain text
10687 #: build/C/man3/inet_pton.3:150
10688 msgid ""
10689 "Unlike B<inet_aton>(3)  and B<inet_addr>(3), B<inet_pton>()  supports IPv6 "
10690 "addresses.  On the other hand, B<inet_pton>()  accepts only IPv4 addresses "
10691 "in dotted-decimal notation, whereas B<inet_aton>(3)  and B<inet_addr>(3)  "
10692 "allow the more general numbers-and-dots notation (hexadecimal and octal "
10693 "number formats, and formats that don't require all four bytes to be "
10694 "explicitly written).  For an interface that handles both IPv6 addresses, and "
10695 "IPv4 addresses in numbers-and-dots notation, see B<getaddrinfo>(3)."
10696 msgstr ""
10697 "B<inet_aton>(3)  や B<inet_addr>(3)  と異なり、 B<inet_pton>()  は IPv6 アド"
10698 "レスに対応している。 一方で、 B<inet_pton>()  が受け付ける IPv4 アドレスは"
10699 "ドット区切りの 10 進数表記だけである。 これに対し、 B<inet_aton>(3)  や "
10700 "B<inet_addr>(3)  ではもっと一般的なドット区切りの数字表記 (16 進数や 8 進数の"
10701 "形式や、 4 バイト全てを明示的に書かなくてもよい形式) が使用できる。 ドット区"
10702 "切りの数字表記で IPv6 アドレスと IPv4 アドレスの両方を扱える インターフェイス"
10703 "については、 B<getaddrinfo>(3)  を参照のこと。"
10704
10705 #. type: Plain text
10706 #: build/C/man3/inet_pton.3:156
10707 msgid ""
10708 "B<AF_INET6> does not recognize IPv4 addresses.  An explicit IPv4-mapped IPv6 "
10709 "address must be supplied in I<src> instead."
10710 msgstr ""
10711 "B<AF_INET6> は IPv4 アドレスを認識しない。 代わりに IPv4 アドレスをマッピング"
10712 "した IPv6 アドレスを I<src> に与えなければならない。"
10713
10714 #. type: Plain text
10715 #: build/C/man3/inet_pton.3:162
10716 msgid ""
10717 "The program below demonstrates the use of B<inet_pton>()  and B<inet_ntop>"
10718 "(3).  Here are some example runs:"
10719 msgstr ""
10720 "以下のプログラムは B<inet_pton>()  と B<inet_ntop>(3)  の使用例を示すものであ"
10721 "る。 実行すると以下のようになる。"
10722
10723 #. type: Plain text
10724 #: build/C/man3/inet_pton.3:171
10725 #, no-wrap
10726 msgid ""
10727 "$B< ./a.out i6 0:0:0:0:0:0:0:0>\n"
10728 "::\n"
10729 "$B< ./a.out i6 1:0:0:0:0:0:0:8>\n"
10730 "1::8\n"
10731 "$B< ./a.out i6 0:0:0:0:0:FFFF:204.152.189.116>\n"
10732 "::ffff:204.152.189.116\n"
10733 msgstr ""
10734 "$B< ./a.out i6 0:0:0:0:0:0:0:0>\n"
10735 "::\n"
10736 "$B< ./a.out i6 1:0:0:0:0:0:0:8>\n"
10737 "1::8\n"
10738 "$B< ./a.out i6 0:0:0:0:0:FFFF:204.152.189.116>\n"
10739 "::ffff:204.152.189.116\n"
10740
10741 #. type: Plain text
10742 #: build/C/man3/inet_pton.3:180
10743 #, no-wrap
10744 msgid ""
10745 "#include E<lt>arpa/inet.hE<gt>\n"
10746 "#include E<lt>stdio.hE<gt>\n"
10747 "#include E<lt>stdlib.hE<gt>\n"
10748 "#include E<lt>string.hE<gt>\n"
10749 msgstr ""
10750 "#include E<lt>arpa/inet.hE<gt>\n"
10751 "#include E<lt>stdio.hE<gt>\n"
10752 "#include E<lt>stdlib.hE<gt>\n"
10753 "#include E<lt>string.hE<gt>\n"
10754
10755 #. type: Plain text
10756 #: build/C/man3/inet_pton.3:187
10757 #, no-wrap
10758 msgid ""
10759 "int\n"
10760 "main(int argc, char *argv[])\n"
10761 "{\n"
10762 "    unsigned char buf[sizeof(struct in6_addr)];\n"
10763 "    int domain, s;\n"
10764 "    char str[INET6_ADDRSTRLEN];\n"
10765 msgstr ""
10766 "int\n"
10767 "main(int argc, char *argv[])\n"
10768 "{\n"
10769 "    unsigned char buf[sizeof(struct in6_addr)];\n"
10770 "    int domain, s;\n"
10771 "    char str[INET6_ADDRSTRLEN];\n"
10772
10773 #. type: Plain text
10774 #: build/C/man3/inet_pton.3:192
10775 #, no-wrap
10776 msgid ""
10777 "    if (argc != 3) {\n"
10778 "        fprintf(stderr, \"Usage: %s {i4|i6|E<lt>numE<gt>} string\\en\", argv[0]);\n"
10779 "        exit(EXIT_FAILURE);\n"
10780 "    }\n"
10781 msgstr ""
10782 "    if (argc != 3) {\n"
10783 "        fprintf(stderr, \"Usage: %s {i4|i6|E<lt>numE<gt>} string\\en\", argv[0]);\n"
10784 "        exit(EXIT_FAILURE);\n"
10785 "    }\n"
10786
10787 #. type: Plain text
10788 #: build/C/man3/inet_pton.3:195
10789 #, no-wrap
10790 msgid ""
10791 "    domain = (strcmp(argv[1], \"i4\") == 0) ? AF_INET :\n"
10792 "             (strcmp(argv[1], \"i6\") == 0) ? AF_INET6 : atoi(argv[1]);\n"
10793 msgstr ""
10794 "    domain = (strcmp(argv[1], \"i4\") == 0) ? AF_INET :\n"
10795 "             (strcmp(argv[1], \"i6\") == 0) ? AF_INET6 : atoi(argv[1]);\n"
10796
10797 #. type: Plain text
10798 #: build/C/man3/inet_pton.3:204
10799 #, no-wrap
10800 msgid ""
10801 "    s = inet_pton(domain, argv[2], buf);\n"
10802 "    if (s E<lt>= 0) {\n"
10803 "        if (s == 0)\n"
10804 "            fprintf(stderr, \"Not in presentation format\");\n"
10805 "        else\n"
10806 "            perror(\"inet_pton\");\n"
10807 "        exit(EXIT_FAILURE);\n"
10808 "    }\n"
10809 msgstr ""
10810 "    s = inet_pton(domain, argv[2], buf);\n"
10811 "    if (s E<lt>= 0) {\n"
10812 "        if (s == 0)\n"
10813 "            fprintf(stderr, \"Not in presentation format\");\n"
10814 "        else\n"
10815 "            perror(\"inet_pton\");\n"
10816 "        exit(EXIT_FAILURE);\n"
10817 "    }\n"
10818
10819 #. type: Plain text
10820 #: build/C/man3/inet_pton.3:209
10821 #, no-wrap
10822 msgid ""
10823 "    if (inet_ntop(domain, buf, str, INET6_ADDRSTRLEN) == NULL) {\n"
10824 "        perror(\"inet_ntop\");\n"
10825 "        exit(EXIT_FAILURE);\n"
10826 "    }\n"
10827 msgstr ""
10828 "    if (inet_ntop(domain, buf, str, INET6_ADDRSTRLEN) == NULL) {\n"
10829 "        perror(\"inet_ntop\");\n"
10830 "        exit(EXIT_FAILURE);\n"
10831 "    }\n"
10832
10833 #. type: Plain text
10834 #: build/C/man3/inet_pton.3:211
10835 #, no-wrap
10836 msgid "    printf(\"%s\\en\", str);\n"
10837 msgstr "    printf(\"%s\\en\", str);\n"
10838
10839 #. type: Plain text
10840 #: build/C/man3/inet_pton.3:219
10841 msgid "B<getaddrinfo>(3), B<inet>(3), B<inet_ntop>(3)"
10842 msgstr "B<getaddrinfo>(3), B<inet>(3), B<inet_ntop>(3)"
10843
10844 #. type: TH
10845 #: build/C/man7/ip.7:36
10846 #, no-wrap
10847 msgid "IP"
10848 msgstr "IP"
10849
10850 #. type: TH
10851 #: build/C/man7/ip.7:36
10852 #, no-wrap
10853 msgid "2013-09-17"
10854 msgstr "2013-09-17"
10855
10856 #. type: Plain text
10857 #: build/C/man7/ip.7:39
10858 msgid "ip - Linux IPv4 protocol implementation"
10859 msgstr "ip - Linux IPv4 プロトコルの実装"
10860
10861 #. type: Plain text
10862 #: build/C/man7/ip.7:45 build/C/man7/ipv6.7:93 build/C/man7/raw.7:20
10863 #: build/C/man7/tcp.7:83 build/C/man7/udp.7:19
10864 msgid "B<#include E<lt>netinet/in.hE<gt>>"
10865 msgstr "B<#include E<lt>netinet/in.hE<gt>>"
10866
10867 #. type: Plain text
10868 #: build/C/man7/ip.7:47
10869 msgid "B<#include E<lt>netinet/ip.hE<gt> >/* superset of previous */"
10870 msgstr "B<#include E<lt>netinet/ip.hE<gt> >/* 上記のスーパーセット */"
10871
10872 #. type: Plain text
10873 #: build/C/man7/ip.7:49
10874 msgid "I<tcp_socket>B< = socket(AF_INET, SOCK_STREAM, 0);>"
10875 msgstr "I<tcp_socket>B< = socket(AF_INET, SOCK_STREAM, 0);>"
10876
10877 #. type: Plain text
10878 #: build/C/man7/ip.7:51
10879 msgid "I<udp_socket>B< = socket(AF_INET, SOCK_DGRAM, 0);>"
10880 msgstr "I<udp_socket>B< = socket(AF_INET, SOCK_DGRAM, 0);>"
10881
10882 #. type: Plain text
10883 #: build/C/man7/ip.7:53
10884 msgid "I<raw_socket>B< = socket(AF_INET, SOCK_RAW, >I<protocol>B<);>"
10885 msgstr "I<raw_socket>B< = socket(AF_INET, SOCK_RAW, >I<protocol>B<);>"
10886
10887 #.  FIXME has someone verified that 2.1 is really 1812 compliant?
10888 #. type: Plain text
10889 #: build/C/man7/ip.7:60
10890 msgid ""
10891 "Linux implements the Internet Protocol, version 4, described in RFC\\ 791 "
10892 "and RFC\\ 1122.  B<ip> contains a level 2 multicasting implementation "
10893 "conforming to RFC\\ 1112.  It also contains an IP router including a packet "
10894 "filter."
10895 msgstr ""
10896 "Linux は RFC\\ 791 と RFC\\ 1122 で記述されている Internet Protocol, version "
10897 "4 を実装している。 B<ip> には RFC\\ 1112 に準拠した level 2 マルチキャストの"
10898 "実装が含まれている。 またパケットフィルタ機能を含む IP ルーターも実装されてい"
10899 "る。"
10900
10901 #. type: Plain text
10902 #: build/C/man7/ip.7:64
10903 msgid ""
10904 "The programming interface is BSD-sockets compatible.  For more information "
10905 "on sockets, see B<socket>(7)."
10906 msgstr ""
10907 "プログラミング・インターフェースは BSD ソケットと互換である。 ソケットに関す"
10908 "るより詳細な情報は B<socket>(7)  を参照のこと。"
10909
10910 #. type: Plain text
10911 #: build/C/man7/ip.7:95
10912 msgid ""
10913 "An IP socket is created by calling the B<socket>(2)  function as B<socket"
10914 "(AF_INET, >I<socket_type>B<, >I<protocol>B<)>.  Valid socket types are "
10915 "B<SOCK_STREAM> to open a B<tcp>(7)  socket, B<SOCK_DGRAM> to open a B<udp>"
10916 "(7)  socket, or B<SOCK_RAW> to open a B<raw>(7)  socket to access the IP "
10917 "protocol directly.  I<protocol> is the IP protocol in the IP header to be "
10918 "received or sent.  The only valid values for I<protocol> are 0 and "
10919 "B<IPPROTO_TCP> for TCP sockets, and 0 and B<IPPROTO_UDP> for UDP sockets.  "
10920 "For B<SOCK_RAW> you may specify a valid IANA IP protocol defined in RFC\\ "
10921 "1700 assigned numbers."
10922 msgstr ""
10923 "IP ソケットは、 B<socket>(2) 関数を B<socket(AF_INET, >I<socket_type>B<, >\n"
10924 "I<protocol>B<)> のように呼び出すことで生成される。指定できるソケットタイプ"
10925 "は\n"
10926 "3 つあり、 B<tcp>(7) ソケットをオープンする場合 B<SOCK_STREAM>、 B<udp>(7)\n"
10927 "ソケットをオープンする場合 B<SOCK_DGRAM>、 IP プロトコルに直接アクセスする\n"
10928 "ために B<raw>(7) ソケットをオープンする場合には B<SOCK_RAW> である。 \n"
10929 "I<protocol> は送受信される IP ヘッダに書かれる IP プロトコルである。\n"
10930 "指定できる値は、 TCP ソケットには 0 か B<IPPROTO_TCP>、 UDP ソケットには \n"
10931 "0 か B<IPPROTO_UDP> に限られる。 B<SOCK_RAW> に対しては、 RFC\\ 1700 で定義\n"
10932 "されている有効な IANA IP プロトコルを、 割り当てられている番号で指定する\n"
10933 "ことができる。"
10934
10935 #. type: Plain text
10936 #: build/C/man7/ip.7:117
10937 msgid ""
10938 "When a process wants to receive new incoming packets or connections, it "
10939 "should bind a socket to a local interface address using B<bind>(2).  In this "
10940 "case, only one IP socket may be bound to any given local (address, port) "
10941 "pair.  When B<INADDR_ANY> is specified in the bind call, the socket will be "
10942 "bound to I<all> local interfaces.  When B<listen>(2)  is called on an "
10943 "unbound socket, the socket is automatically bound to a random free port with "
10944 "the local address set to B<INADDR_ANY>.  When B<connect>(2)  is called on an "
10945 "unbound socket, the socket is automatically bound to a random free port or "
10946 "to a usable shared port with the local address set to B<INADDR_ANY>."
10947 msgstr ""
10948 "あるプロセスで、やってくるパケットを受信したり 接続要求を受けたりしたい場合に"
10949 "は、 そのプロセスはローカルなインターフェースアドレスに、 B<bind>(2) を用いて"
10950 "ソケットをバインドしなければならない。 この場合、 ローカルの「アドレスとポー"
10951 "ト」のペアに対してバインドできる IP ソケットは一つだけである。 B<bind>(2) の"
10952 "呼び出しで B<INADDR_ANY> が指定されていた場合は、 ソケットは I<すべて> のロー"
10953 "カルインターフェースにバインドされる。 B<listen>(2) がバインドされていないソ"
10954 "ケットに対してコールされると、 そのソケットは、 ローカルポートはランダムに選"
10955 "択された空いているポートで、 ローカルアドレスは B<INADDR_ANY> で自動的にバイ"
10956 "ンドされる。 B<connect>(2) がバインドされていないソケットに対してコールされる"
10957 "と、 そのソケットは、 ローカルポートはランダムに選択された空いているポートか"
10958 "未使用の共有ポートで、 ローカルアドレスは B<INADDR_ANY> で自動的にバインドさ"
10959 "れる。"
10960
10961 #. type: Plain text
10962 #: build/C/man7/ip.7:123
10963 msgid ""
10964 "A TCP local socket address that has been bound is unavailable for some time "
10965 "after closing, unless the B<SO_REUSEADDR> flag has been set.  Care should be "
10966 "taken when using this flag as it makes TCP less reliable."
10967 msgstr ""
10968 "B<SO_REUSEADDR> フラグがセットされていない場合には、 バインドされていた TCP "
10969 "ローカルソケットアドレスは クローズされた後しばらくの間使えなくなる。 "
10970 "B<SO_REUSEADDR> フラグを使うと TCP の信頼性を低下させるので、 使うときには注"
10971 "意が必要である。"
10972
10973 #. type: Plain text
10974 #: build/C/man7/ip.7:134
10975 msgid ""
10976 "An IP socket address is defined as a combination of an IP interface address "
10977 "and a 16-bit port number.  The basic IP protocol does not supply port "
10978 "numbers, they are implemented by higher level protocols like B<udp>(7)  and "
10979 "B<tcp>(7).  On raw sockets I<sin_port> is set to the IP protocol."
10980 msgstr ""
10981 "IP ソケットアドレスは、 IP インターフェースアドレスと 16ビットのポート番号の"
10982 "組み合わせで定義される。 IP プロトコルそのものはポート番号を扱わない。 ポート"
10983 "番号は、 B<udp>(7)  や B<tcp>(7)  といった、上位のプロトコルで実装される。 "
10984 "raw ソケットでは、 I<sin_port> が IP プロトコルにセットされる。"
10985
10986 #. type: Plain text
10987 #: build/C/man7/ip.7:142
10988 #, no-wrap
10989 msgid ""
10990 "struct sockaddr_in {\n"
10991 "    sa_family_t    sin_family; /* address family: AF_INET */\n"
10992 "    in_port_t      sin_port;   /* port in network byte order */\n"
10993 "    struct in_addr sin_addr;   /* internet address */\n"
10994 "};\n"
10995 msgstr ""
10996 "struct sockaddr_in {\n"
10997 "    sa_family_t    sin_family; /* address family: AF_INET */\n"
10998 "    in_port_t      sin_port;   /* port in network byte order */\n"
10999 "    struct in_addr sin_addr;   /* internet address */\n"
11000 "};\n"
11001
11002 #. type: Plain text
11003 #: build/C/man7/ip.7:147
11004 #, no-wrap
11005 msgid ""
11006 "/* Internet address. */\n"
11007 "struct in_addr {\n"
11008 "    uint32_t       s_addr;     /* address in network byte order */\n"
11009 "};\n"
11010 msgstr ""
11011 "/* Internet address. */\n"
11012 "struct in_addr {\n"
11013 "    uint32_t       s_addr;     /* address in network byte order */\n"
11014 "};\n"
11015
11016 #. type: Plain text
11017 #: build/C/man7/ip.7:172
11018 msgid ""
11019 "I<sin_family> is always set to B<AF_INET>.  This is required; in Linux 2.2 "
11020 "most networking functions return B<EINVAL> when this setting is missing.  "
11021 "I<sin_port> contains the port in network byte order.  The port numbers below "
11022 "1024 are called I<privileged ports> (or sometimes: I<reserved ports>).  Only "
11023 "privileged processes (i.e., those having the B<CAP_NET_BIND_SERVICE> "
11024 "capability) may B<bind>(2)  to these sockets.  Note that the raw IPv4 "
11025 "protocol as such has no concept of a port, they are implemented only by "
11026 "higher protocols like B<tcp>(7)  and B<udp>(7)."
11027 msgstr ""
11028 "I<sin_familiy> には常に B<AF_INET> をセットする。これは必須である。 Linux "
11029 "2.2 では、このセットを忘れると ほとんどのネットワーク関数は B<EINVAL> を返す"
11030 "ようになっている。 I<sin_port> にはポート番号をネットワークバイトオーダーで指"
11031 "定する。 1024 未満のポート番号は I<特権ポート (privileged ports)> と呼ばれる "
11032 "(I<予約ポート (reserved ports)> とも時々呼ばれる)。 特権プロセス "
11033 "(B<CAP_NET_BIND_SERVICE> ケーパビリティを持つプロセス) 以外のプロセスは、これ"
11034 "らのポートには B<bind>(2)  できない。 IPv4 プロトコルそのものにはポートに関す"
11035 "る概念がない。ポートが実装されるのは、 B<tcp>(7)  や B<udp>(7) といった、上位"
11036 "のプロトコルにおいてのみである。"
11037
11038 #. type: Plain text
11039 #: build/C/man7/ip.7:191
11040 msgid ""
11041 "I<sin_addr> is the IP host address.  The I<s_addr> member of I<struct "
11042 "in_addr> contains the host interface address in network byte order.  "
11043 "I<in_addr> should be assigned one of the B<INADDR_*> values (e.g., "
11044 "B<INADDR_ANY>)  or set using the B<inet_aton>(3), B<inet_addr>(3), "
11045 "B<inet_makeaddr>(3)  library functions or directly with the name resolver "
11046 "(see B<gethostbyname>(3))."
11047 msgstr ""
11048 "I<sin_addr> は IP ホストアドレスである。 I<struct in_addr> の I<s_addr> \n"
11049 "メンバには、ホストのインターフェースアドレスを ネットワークバイトオーダーで\n"
11050 "指定する。 I<in_addr> は、B<INADDR_*> の一つ (例えば B<INADDR_ANY>) を代入す"
11051 "る、\n"
11052 "ライブラリ関数 B<inet_aton>(3), B<inet_addr>(3), B<inet_makeaddr>(3) を用い"
11053 "る、\n"
11054 "あるいは名前解決機構 (name resolver) を直接用いる、のどれかで設定すべきであ"
11055 "る。\n"
11056 "(B<gethostbyname>(3) を見よ)。"
11057
11058 #.  Leave a loophole for XTP @)
11059 #. type: Plain text
11060 #: build/C/man7/ip.7:203
11061 msgid ""
11062 "IPv4 addresses are divided into unicast, broadcast and multicast addresses.  "
11063 "Unicast addresses specify a single interface of a host, broadcast addresses "
11064 "specify all hosts on a network and multicast addresses address all hosts in "
11065 "a multicast group.  Datagrams to broadcast addresses can be sent or received "
11066 "only when the B<SO_BROADCAST> socket flag is set.  In the current "
11067 "implementation, connection-oriented sockets are allowed to use only unicast "
11068 "addresses."
11069 msgstr ""
11070 "IPv4 アドレスには、ユニキャストアドレス、 ブロードキャストアドレス、マルチ"
11071 "キャストアドレスがある。 ユニキャストアドレスは、あるホストの一つのアドレスを"
11072 "指定する。 ブロードキャストアドレスは、あるネットワーク上の全てのホストを指定"
11073 "する。 マルチキャストアドレスは、マルチキャストグループに所属する 全てのホス"
11074 "トを指定する。ブロードキャストアドレスへのデータグラムは、 B<SO_BROADCAST> ソ"
11075 "ケットフラグがセットされていないと送信・受信できない。 現在の実装では、接続指"
11076 "向のソケットにはユニキャストアドレスしか使えない。"
11077
11078 #. type: Plain text
11079 #: build/C/man7/ip.7:211
11080 msgid ""
11081 "Note that the address and the port are always stored in network byte order.  "
11082 "In particular, this means that you need to call B<htons>(3)  on the number "
11083 "that is assigned to a port.  All address/port manipulation functions in the "
11084 "standard library work in network byte order."
11085 msgstr ""
11086 "アドレスとポートは常にネットワークバイトオーダーで格納されることに注意せよ。 "
11087 "具体的には、ポートを指定する数値には B<htons>(3)  を呼び出す必要がある。 標準"
11088 "ライブラリにあるアドレス/ポート操作関数は すべてネットワークバイトオーダーで"
11089 "動作する。"
11090
11091 #. type: Plain text
11092 #: build/C/man7/ip.7:224
11093 msgid ""
11094 "There are several special addresses: B<INADDR_LOOPBACK> (127.0.0.1)  always "
11095 "refers to the local host via the loopback device; B<INADDR_ANY> (0.0.0.0)  "
11096 "means any address for binding; B<INADDR_BROADCAST> (255.255.255.255)  means "
11097 "any host and has the same effect on bind as B<INADDR_ANY> for historical "
11098 "reasons."
11099 msgstr ""
11100 "特別なアドレスがいくつか存在する: B<INADDR_LOOPBACK>(127.0.0.1)  は loopback "
11101 "デバイスを通して常にローカルなホストを参照する。 B<INADDR_ANY>(0.0.0.0)  は任"
11102 "意のアドレスを意味し、バインド用である。 B<INADDR_BROADCAST>"
11103 "(255.255.255.255)  は任意のホストを意味し、歴史的理由から、バインドの際には "
11104 "B<INADDR_ANY> と同じ効果になる。"
11105
11106 #.  or SOL_IP on Linux
11107 #. type: Plain text
11108 #: build/C/man7/ip.7:233
11109 msgid ""
11110 "IP supports some protocol-specific socket options that can be set with "
11111 "B<setsockopt>(2)  and read with B<getsockopt>(2).  The socket option level "
11112 "for IP is B<IPPROTO_IP>.  A boolean integer flag is zero when it is false, "
11113 "otherwise true."
11114 msgstr ""
11115 "IP にはプロトコル固有のソケットオプションがいくつか存在し、 B<setsockopt>"
11116 "(2)  で設定が、 B<getsockopt>(2)  で取得ができる。 IP のソケットオプションレ"
11117 "ベルは B<IPPROTO_IP> である。 ブール整数値のフラグでは、 0 は偽、それ以外は真"
11118 "を意味する。"
11119
11120 #. type: TP
11121 #: build/C/man7/ip.7:233
11122 #, no-wrap
11123 msgid "B<IP_ADD_MEMBERSHIP> (since Linux 1.2)"
11124 msgstr "B<IP_ADD_MEMBERSHIP> (Linux 1.2 以降)"
11125
11126 #. type: Plain text
11127 #: build/C/man7/ip.7:239
11128 msgid "Join a multicast group.  Argument is an I<ip_mreqn> structure."
11129 msgstr "マルチキャストグループに参加する。 引き数は I<ip_mreqn> 構造体である。"
11130
11131 #. type: Plain text
11132 #: build/C/man7/ip.7:249
11133 #, no-wrap
11134 msgid ""
11135 "struct ip_mreqn {\n"
11136 "    struct in_addr imr_multiaddr; /* IP multicast group\n"
11137 "                                     address */\n"
11138 "    struct in_addr imr_address;   /* IP address of local\n"
11139 "                                     interface */\n"
11140 "    int            imr_ifindex;   /* interface index */\n"
11141 "};\n"
11142 msgstr ""
11143 "struct ip_mreqn {\n"
11144 "    struct in_addr imr_multiaddr; /* IP multicast group\n"
11145 "                                     address */\n"
11146 "    struct in_addr imr_address;   /* IP address of local\n"
11147 "                                     interface */\n"
11148 "    int            imr_ifindex;   /* interface index */\n"
11149 "};\n"
11150
11151 #.  (i.e., within the 224.0.0.0-239.255.255.255 range)
11152 #. type: Plain text
11153 #: build/C/man7/ip.7:270
11154 msgid ""
11155 "I<imr_multiaddr> contains the address of the multicast group the application "
11156 "wants to join or leave.  It must be a valid multicast address (or "
11157 "B<setsockopt>(2)  fails with the error B<EINVAL>).  I<imr_address> is the "
11158 "address of the local interface with which the system should join the "
11159 "multicast group; if it is equal to B<INADDR_ANY> an appropriate interface is "
11160 "chosen by the system.  I<imr_ifindex> is the interface index of the "
11161 "interface that should join/leave the I<imr_multiaddr> group, or 0 to "
11162 "indicate any interface."
11163 msgstr ""
11164 "I<imr_multiaddr> には、アプリケーションが参加または脱退したい マルチキャスト"
11165 "グループのアドレスが入る。 指定するアドレスは有効なマルチキャストアドレスでな"
11166 "ければならない (さもなければ B<setsockopt>(2)  がエラー B<EINVAL> で失敗す"
11167 "る)。 I<imr_address> はシステムがマルチキャストグループに参加する際に用いる "
11168 "ローカルなインターフェースのアドレスである。 これが B<INADDR_ANY> であった場"
11169 "合には、適切なインターフェースがシステムによって選択される。 I<imr_ifindex> "
11170 "は I<imr_multiaddr> グループに参加/脱退するインターフェースの interface "
11171 "index である。 どのインターフェースでもよい場合は 0 にする。"
11172
11173 #. type: Plain text
11174 #: build/C/man7/ip.7:285
11175 msgid ""
11176 "The I<ip_mreqn> structure is available only since Linux 2.2.  For "
11177 "compatibility, the old I<ip_mreq> structure (present since Linux 1.2) is "
11178 "still supported; it differs from I<ip_mreqn> only by not including the "
11179 "I<imr_ifindex> field.  Only valid as a B<setsockopt>(2)."
11180 msgstr ""
11181 "I<ip_mreqn> 構造体は Linux 2.2 以降でのみ利用可能である。互換性のため、 古い "
11182 "I<ip_mreq> 構造体 (Linux 1.2 以降で存在する) もまだサポートされている。 "
11183 "I<ip_mreqn> との違いは、 I<imr_ifindex> フィールドを含まないことだけである。 "
11184 "B<setsockopt>(2) でのみ使える。"
11185
11186 #. type: TP
11187 #: build/C/man7/ip.7:285
11188 #, no-wrap
11189 msgid "B<IP_ADD_SOURCE_MEMBERSHIP> (since Linux 2.4.22 / 2.5.68)"
11190 msgstr "B<IP_ADD_SOURCE_MEMBERSHIP> (Linux 2.4.22 以降 / 2.5.68 以降)"
11191
11192 #. type: Plain text
11193 #: build/C/man7/ip.7:292
11194 msgid ""
11195 "Join a multicast group and allow receiving data only from a specified "
11196 "source.  Argument is an I<ip_mreq_source> structure."
11197 msgstr ""
11198 "マルチキャストグループに参加、指定された送信元からのデータの受信のみを許可す"
11199 "る。 引き数は I<ip_mreq_source> 構造体である。"
11200
11201 #. type: Plain text
11202 #: build/C/man7/ip.7:303
11203 #, no-wrap
11204 msgid ""
11205 "struct ip_mreq_source {\n"
11206 "    struct in_addr imr_multiaddr;  /* IP multicast group\n"
11207 "                                      address */\n"
11208 "    struct in_addr imr_interface;  /* IP address of local\n"
11209 "                                      interface */\n"
11210 "    struct in_addr imr_sourceaddr; /* IP address of\n"
11211 "                                      multicast source */\n"
11212 "};\n"
11213 msgstr ""
11214 "struct ip_mreq_source {\n"
11215 "    struct in_addr imr_multiaddr;  /* IP multicast group\n"
11216 "                                      address */\n"
11217 "    struct in_addr imr_interface;  /* IP address of local\n"
11218 "                                      interface */\n"
11219 "    struct in_addr imr_sourceaddr; /* IP address of\n"
11220 "                                      multicast source */\n"
11221 "};\n"
11222
11223 #. type: Plain text
11224 #: build/C/man7/ip.7:324
11225 msgid ""
11226 "The I<ip_mreq_source> structure is similar to I<ip_mreqn> described under "
11227 "B<IP_ADD_MEMBERSIP>.  The I<imr_multiaddr> field contains the address of the "
11228 "multicast group the application wants to join or leave.  The "
11229 "I<imr_interface> field is the address of the local interface with which the "
11230 "system should join the multicast group.  Finally, the I<imr_sourceaddr> "
11231 "field contains the address of the source the application wants to receive "
11232 "data from."
11233 msgstr ""
11234 "I<ip_mreq_source> 構造体は B<IP_ADD_MEMBERSIP> の項で説明した I<ip_mreqn> に"
11235 "似ている。 I<imr_multiaddr> フィールドには、アプリケーションが参加または脱退"
11236 "したいマルチキャストグループのアドレスが入る。 I<imr_interface> フィールド"
11237 "は、 マルチキャストグループに参加する際に システムが使用すべきローカルイン"
11238 "ターフェースのアドレスである。 I<imr_sourceaddr> フィールドには、アプリケー"
11239 "ションがデータを受信したい送信元のアドレスが入る。"
11240
11241 #. type: Plain text
11242 #: build/C/man7/ip.7:327
11243 msgid ""
11244 "This option can be used multiple times to allow receiving data from more "
11245 "than one source."
11246 msgstr ""
11247 "このオプションを複数回使うことで、 複数の送信元からのデータ受信を許可すること"
11248 "ができる。"
11249
11250 #. type: TP
11251 #: build/C/man7/ip.7:327
11252 #, no-wrap
11253 msgid "B<IP_BLOCK_SOURCE> (since Linux 2.4.22 / 2.5.68)"
11254 msgstr "B<IP_BLOCK_SOURCE> (since Linux 2.4.22 以降 / 2.5.68 以降)"
11255
11256 #. type: Plain text
11257 #: build/C/man7/ip.7:335
11258 msgid ""
11259 "Stop receiving multicast data from a specific source in a given group.  This "
11260 "is valid only after the application has subscribed to the multicast group "
11261 "using either B<IP_ADD_MEMBERSHIP> or B<IP_ADD_SOURCE_MEMBERSHIP>."
11262 msgstr ""
11263 "指定したグループで、指定した送信元からのマルチキャストデータの受信を停止す"
11264 "る。 このオプションは、アプリケーションが  B<IP_ADD_MEMBERSHIP> か "
11265 "B<IP_ADD_SOURCE_MEMBERSHIP> のいずれかを使ってマルチキャストグループに参加し"
11266 "た後でのみ有効である。"
11267
11268 #. type: Plain text
11269 #: build/C/man7/ip.7:340 build/C/man7/ip.7:362 build/C/man7/ip.7:923
11270 msgid ""
11271 "Argument is an I<ip_mreq_source> structure as described under "
11272 "B<IP_ADD_SOURCE_MEMBERSHIP>."
11273 msgstr ""
11274 "引き数は I<ip_mreq_source> 構造体である。 B<IP_ADD_SOURCE_MEMBERSHIP> の項に"
11275 "説明がある。"
11276
11277 #. type: TP
11278 #: build/C/man7/ip.7:340
11279 #, no-wrap
11280 msgid "B<IP_DROP_MEMBERSHIP> (since Linux 1.2)"
11281 msgstr "B<IP_DROP_MEMBERSHIP> (Linux 1.2 以降)"
11282
11283 #. type: Plain text
11284 #: build/C/man7/ip.7:349
11285 msgid ""
11286 "Leave a multicast group.  Argument is an I<ip_mreqn> or I<ip_mreq> structure "
11287 "similar to B<IP_ADD_MEMBERSHIP>."
11288 msgstr ""
11289 "マルチキャストグループから抜ける。引き数は B<IP_ADD_MEMBERSHIP> と同様に "
11290 "I<ip_mreqn> または I<ip_mreq> 構造体である。"
11291
11292 #. type: TP
11293 #: build/C/man7/ip.7:349
11294 #, no-wrap
11295 msgid "B<IP_DROP_SOURCE_MEMBERSHIP> (since Linux 2.4.22 / 2.5.68)"
11296 msgstr "B<IP_DROP_SOURCE_MEMBERSHIP> (Linux 2.4.22 以降 / 2.5.68 以降)"
11297
11298 #. type: Plain text
11299 #: build/C/man7/ip.7:357
11300 msgid ""
11301 "Leave a source-specific group\\(emthat is, stop receiving data from a given "
11302 "multicast group that come from a given source.  If the application has "
11303 "subscribed to multiple sources within the same group, data from the "
11304 "remaining sources will still be delivered.  To stop receiving data from all "
11305 "sources at once, use B<IP_LEAVE_GROUP>."
11306 msgstr ""
11307 "送信元を指定してグループから抜ける。 つまり、 指定したマルチキャストグループ"
11308 "の指定された送信元からのデータ受信を停止する。 アプリケーションは同じマルチ"
11309 "キャストグループで複数の送信元を購読 (subscribe) している場合には、 残りの送"
11310 "信元からのデータの受信は引き続き配信される。 すべての送信元からのデータ受信を"
11311 "一度で停止するには B<IP_LEAVE_GROUP> を使うこと。"
11312
11313 #. type: TP
11314 #: build/C/man7/ip.7:362
11315 #, no-wrap
11316 msgid "B<IP_FREEBIND> (since Linux 2.4)"
11317 msgstr "B<IP_FREEBIND> (Linux 2.4 以降)"
11318
11319 #.  Precisely: 2.4.0-test10
11320 #. type: Plain text
11321 #: build/C/man7/ip.7:375
11322 msgid ""
11323 "If enabled, this boolean option allows binding to an IP address that is "
11324 "nonlocal or does not (yet) exist.  This permits listening on a socket, "
11325 "without requiring the underlying network interface or the specified dynamic "
11326 "IP address to be up at the time that the application is trying to bind to "
11327 "it.  This option is the per-socket equivalent of the I<ip_nonlocal_bind> I</"
11328 "proc> interface described below."
11329 msgstr ""
11330 "このブール値のオプションを有効にすると、ローカルではない IP アドレスや存在\n"
11331 "しない IP アドレスをバインドできるようになる。これを使うと、対応するネット\n"
11332 "ワークインターフェイスがなかったり、アプリケーションがソケットをバインドしよ"
11333 "うと\n"
11334 "する時点で特定の動的 IP アドレスが有効になっていなかったりしても、ソケット"
11335 "を\n"
11336 "接続待ち状態 (listening) にできるようになる。\n"
11337 "このオプションは、下記に説明がある I<ip_nonlocal_bind> I</proc> インターフェ"
11338 "イス\n"
11339 "のソケット単位の設定である。"
11340
11341 #. type: TP
11342 #: build/C/man7/ip.7:375
11343 #, no-wrap
11344 msgid "B<IP_HDRINCL> (since Linux 2.0)"
11345 msgstr "B<IP_HDRINCL> (Linux 2.0 以降)"
11346
11347 #. type: Plain text
11348 #: build/C/man7/ip.7:391
11349 msgid ""
11350 "If enabled, the user supplies an IP header in front of the user data.  Only "
11351 "valid for B<SOCK_RAW> sockets.  See B<raw>(7)  for more information.  When "
11352 "this flag is enabled the values set by B<IP_OPTIONS>, B<IP_TTL> and "
11353 "B<IP_TOS> are ignored."
11354 msgstr ""
11355 "有効になっていると、ユーザは IP ヘッダをユーザーデータの前に与える。 "
11356 "B<SOCK_RAW> ソケットでのみ有効である。詳細は B<raw>(7)  を見よ。このフラグが"
11357 "有効になっていると、 B<IP_OPTIONS>, B<IP_TTL>, B<IP_TOS> は無視される。"
11358
11359 #. type: TP
11360 #: build/C/man7/ip.7:391
11361 #, no-wrap
11362 msgid "B<IP_MSFILTER> (since Linux 2.4.22 / 2.5.68)"
11363 msgstr "B<IP_MSFILTER> (since Linux 2.4.22 以降 / 2.5.68 以降)"
11364
11365 #. type: Plain text
11366 #: build/C/man7/ip.7:397
11367 msgid ""
11368 "This option provides access to the advanced full-state filtering API.  "
11369 "Argument is an I<ip_msfilter> structure."
11370 msgstr ""
11371 "このオプションを使うと、 高度なフィルタリング API へアクセスできる。 この "
11372 "API ではすべての状態にアクセスできる。 引き数は I<ip_msfilter> 構造体である。"
11373
11374 #. type: Plain text
11375 #: build/C/man7/ip.7:406
11376 #, no-wrap
11377 msgid ""
11378 "struct ip_msfilter {\n"
11379 "    struct in_addr imsf_multiaddr; /* IP multicast group\n"
11380 "                                      address */\n"
11381 "    struct in_addr imsf_interface; /* IP address of local\n"
11382 "                                      interface */\n"
11383 "    uint32_t       imsf_fmode;     /* Filter-mode */\n"
11384 msgstr ""
11385 "struct ip_msfilter {\n"
11386 "    struct in_addr imsf_multiaddr; /* IP multicast group\n"
11387 "                                      address */\n"
11388 "    struct in_addr imsf_interface; /* IP address of local\n"
11389 "                                      interface */\n"
11390 "    uint32_t       imsf_fmode;     /* Filter-mode */\n"
11391
11392 #. type: Plain text
11393 #: build/C/man7/ip.7:412
11394 #, no-wrap
11395 msgid ""
11396 "    uint32_t       imsf_numsrc;    /* Number of sources in\n"
11397 "                                      the following array */\n"
11398 "    struct in_addr imsf_slist[1];  /* Array of source\n"
11399 "                                      addresses */\n"
11400 "};\n"
11401 msgstr ""
11402 "    uint32_t       imsf_numsrc;    /* Number of sources in\n"
11403 "                                      the following array */\n"
11404 "    struct in_addr imsf_slist[1];  /* Array of source\n"
11405 "                                      addresses */\n"
11406 "};\n"
11407
11408 #. type: Plain text
11409 #: build/C/man7/ip.7:427
11410 msgid ""
11411 "There are two macros, B<MCAST_INCLUDE> and B<MCAST_EXCLUDE>, which can be "
11412 "used to specify the filtering mode.  Additionally, the B<IP_MSFILTER_SIZE>"
11413 "(n)  macro exists to determine how much memory is needed to store "
11414 "I<ip_msfilter> structure with I<n> sources in the source list."
11415 msgstr ""
11416 "B<MCAST_INCLUDE> と B<MCAST_EXCLUDE> の 2 つのマクロがあり、 フィルタリング"
11417 "モードを指定するのに使用できる。 また、 B<IP_MSFILTER_SIZE>(n) マクロがあ"
11418 "り、 送信元リストに I<n> 個の送信元が入った I<ip_msfilter> 構造体を格納するの"
11419 "に必要なメモリ量を判定することができる。"
11420
11421 #. type: Plain text
11422 #: build/C/man7/ip.7:430
11423 msgid ""
11424 "For the full description of multicast source filtering refer to RFC 3376."
11425 msgstr "マルチキャスト送信元フィルタリングの全容は RFC\\ 3376 を参照のこと。"
11426
11427 #. type: TP
11428 #: build/C/man7/ip.7:430
11429 #, no-wrap
11430 msgid "B<IP_MTU> (since Linux 2.2)"
11431 msgstr "B<IP_MTU> (Linux 2.2 以降)"
11432
11433 #.  Precisely: 2.1.124
11434 #. type: Plain text
11435 #: build/C/man7/ip.7:438
11436 msgid ""
11437 "Retrieve the current known path MTU of the current socket.  Valid only when "
11438 "the socket has been connected.  Returns an integer.  Only valid as a "
11439 "B<getsockopt>(2)."
11440 msgstr ""
11441 "ソケットの、既知の path MTU を取得する。 ソケットが接続している場合のみ有効で"
11442 "ある。 B<getsockopt>(2)  でのみ使える。"
11443
11444 #. type: TP
11445 #: build/C/man7/ip.7:438
11446 #, no-wrap
11447 msgid "B<IP_MTU_DISCOVER> (since Linux 2.2)"
11448 msgstr "B<IP_MTU_DISCOVER> (Linux 2.2 以降)"
11449
11450 #.  Precisely: 2.1.124
11451 #. type: Plain text
11452 #: build/C/man7/ip.7:459
11453 msgid ""
11454 "Set or receive the Path MTU Discovery setting for a socket.  When enabled, "
11455 "Linux will perform Path MTU Discovery as defined in RFC\\ 1191 on "
11456 "B<SOCK_STREAM> sockets.  For non-B<SOCK_STREAM> sockets, B<IP_PMTUDISC_DO> "
11457 "forces the don't-fragment flag to be set on all outgoing packets.  It is the "
11458 "user's responsibility to packetize the data in MTU-sized chunks and to do "
11459 "the retransmits if necessary.  The kernel will reject (with B<EMSGSIZE>)  "
11460 "datagrams that are bigger than the known path MTU.  B<IP_PMTUDISC_WANT> will "
11461 "fragment a datagram if needed according to the path MTU, or will set the "
11462 "don't-fragment flag otherwise."
11463 msgstr ""
11464 "ソケットの Path MTU Discovery の設定をセット・取得する。\n"
11465 "有効になっていると、Linux は B<SOCK_STREAM> ソケットに対して\n"
11466 "RFC\\ 1191 で定義されている Path MTU Discovery を行う。\n"
11467 "B<SOCK_STREAM> でないソケットについては、 B<IP_PMTUDISC_DO> をセットする"
11468 "と、\n"
11469 "全ての送信パケットでフラグメント不許可フラグ (don't-fragment flag) が必ず\n"
11470 "セットされるようになる。 B<SOCK_STREAM> でないソケットでは、\n"
11471 "パケットを MTU のサイズの塊に分割したり、必要に応じて再送したりするのは、\n"
11472 "ユーザが責任を持って行う必要がある。\n"
11473 "既知の Path MTU よりも大きなデータグラムの送信が要求されると、\n"
11474 "カーネルは (B<EMSGSIZE> で) 送信を拒否する。\n"
11475 "B<IP_PMTUDISC_WANT> の場合は、 Path MTU に基づいて必要であればデータグラム\n"
11476 "の分割が行われ、それ以外の場合はフラグメント不許可フラグがセットされる。"
11477
11478 #. type: Plain text
11479 #: build/C/man7/ip.7:467
11480 msgid ""
11481 "The system-wide default can be toggled between B<IP_PMTUDISC_WANT> and "
11482 "B<IP_PMTUDISC_DONT> by writing (respectively, zero and nonzero values) to "
11483 "the I</proc/sys/net/ipv4/ip_no_pmtu_disc> file."
11484 msgstr ""
11485 "システム全体のデフォルトは B<IP_PMTUDISC_WANT> と B<IP_PMTUDISC_DONT> の\n"
11486 "どちらかに設定することができる。設定の変更は、\n"
11487 "I</proc/sys/net/ipv4/ip_no_pmtu_disc> ファイルに、0 (B<IP_PMTUDISC_WANT>) "
11488 "か\n"
11489 "0 以外 (B<IP_PMTUDISC_DONT>) を書き込むことで行う。"
11490
11491 #. type: tbl table
11492 #: build/C/man7/ip.7:471
11493 #, no-wrap
11494 msgid "Path MTU discovery value:Meaning\n"
11495 msgstr "Path MTU discovery 値:意味\n"
11496
11497 #. type: tbl table
11498 #: build/C/man7/ip.7:472
11499 #, no-wrap
11500 msgid "IP_PMTUDISC_WANT:Use per-route settings.\n"
11501 msgstr "IP_PMTUDISC_WANT:ルートごとの設定を用いる。\n"
11502
11503 #. type: tbl table
11504 #: build/C/man7/ip.7:473
11505 #, no-wrap
11506 msgid "IP_PMTUDISC_DONT:Never do Path MTU Discovery.\n"
11507 msgstr "IP_PMTUDISC_DONT:Path MTU Discovery を行わない。\n"
11508
11509 #. type: tbl table
11510 #: build/C/man7/ip.7:474
11511 #, no-wrap
11512 msgid "IP_PMTUDISC_DO:Always do Path MTU Discovery.\n"
11513 msgstr "IP_PMTUDISC_DO:常に Path MTU Discovery を行う。\n"
11514
11515 #. type: tbl table
11516 #: build/C/man7/ip.7:475
11517 #, no-wrap
11518 msgid "IP_PMTUDISC_PROBE:Set DF but ignore Path MTU.\n"
11519 msgstr "IP_PMTUDISC_PROBE:DFビットをセットするが、Path MTU を無視する。\n"
11520
11521 #. type: Plain text
11522 #: build/C/man7/ip.7:493
11523 msgid ""
11524 "When PMTU discovery is enabled, the kernel automatically keeps track of the "
11525 "path MTU per destination host.  When it is connected to a specific peer with "
11526 "B<connect>(2), the currently known path MTU can be retrieved conveniently "
11527 "using the B<IP_MTU> socket option (e.g., after an B<EMSGSIZE> error "
11528 "occurred).  The path MTU may change over time.  For connectionless sockets "
11529 "with many destinations, the new MTU for a given destination can also be "
11530 "accessed using the error queue (see B<IP_RECVERR>).  A new error will be "
11531 "queued for every incoming MTU update."
11532 msgstr ""
11533 "path MTU discovery が有効になっていると、カーネルは宛先ホストごとに 自動的"
11534 "に\n"
11535 "path MTU を処理する。特定の相手に B<connect>(2) で接続した場合には、\n"
11536 "B<IP_MTU> ソケットオプションを用いれば、既知の path MTU の取得に便利である\n"
11537 "(たとえば B<EMSGSIZE> エラーが起きた後など)。 path MTU は時間とともに変化す"
11538 "る\n"
11539 "かもしれない。 宛先がたくさんあるコネクションレスなソケットでは、 与えられ"
11540 "た\n"
11541 "宛先に対する新しい MTU にも、 エラーキューを用いてアクセスすることができる\n"
11542 "(B<IP_RECVERR> を見よ)。 MTU 更新が到着するごとに、新たなエラーがキューイン"
11543 "グ\n"
11544 "される。"
11545
11546 #. type: Plain text
11547 #: build/C/man7/ip.7:498
11548 msgid ""
11549 "While MTU discovery is in progress, initial packets from datagram sockets "
11550 "may be dropped.  Applications using UDP should be aware of this and not take "
11551 "it into account for their packet retransmit strategy."
11552 msgstr ""
11553 "MTU discovery の進行中には、データグラムソケットからの初期パケットは 到着しな"
11554 "いかもしれない。 UDP を用いるアプリケーションでは、 このことを気にかけてお"
11555 "き、 パケットの再送アルゴリズムにこの分を除外させるべきである。"
11556
11557 #.  FIXME this is an ugly hack
11558 #. type: Plain text
11559 #: build/C/man7/ip.7:503
11560 msgid ""
11561 "To bootstrap the path MTU discovery process on unconnected sockets, it is "
11562 "possible to start with a big datagram size (up to 64K-headers bytes long) "
11563 "and let it shrink by updates of the path MTU."
11564 msgstr ""
11565 "接続していないソケットに対して path MTU discovery プロセスを立ち上げるには、 "
11566 "大きなデータグラムサイズ (最大 64K ヘッダバイト長) からはじめて、 path MTU が"
11567 "更新されるまでサイズを縮めていくことも可能である。"
11568
11569 #. type: Plain text
11570 #: build/C/man7/ip.7:512
11571 msgid ""
11572 "To get an initial estimate of the path MTU, connect a datagram socket to the "
11573 "destination address using B<connect>(2)  and retrieve the MTU by calling "
11574 "B<getsockopt>(2)  with the B<IP_MTU> option."
11575 msgstr ""
11576 "path MTU の値をまず見積もってみるには、宛先アドレスに B<connect>(2)  を使って"
11577 "データグラムソケットを接続し、 B<getsockopt>(2)  を B<IP_MTU> オプションとと"
11578 "もに呼び、 MTU を取得することである。"
11579
11580 #. type: Plain text
11581 #: build/C/man7/ip.7:524
11582 msgid ""
11583 "It is possible to implement RFC 4821 MTU probing with B<SOCK_DGRAM> or "
11584 "B<SOCK_RAW> sockets by setting a value of B<IP_PMTUDISC_PROBE> (available "
11585 "since Linux 2.6.22).  This is also particularly useful for diagnostic tools "
11586 "such as B<tracepath>(8)  that wish to deliberately send probe packets larger "
11587 "than the observed Path MTU."
11588 msgstr ""
11589 "B<IP_PMTUDISC_PROBE> (Linux 2.6.22 以降で利用可能) を設定することで、 "
11590 "B<SOCK_DGRAM> や B<SOCK_RAW> のソケットで RFC 4821 の MTU 探索を実装すること"
11591 "が可能である。 また、この機能は、 B<tracepath>(8)  のような診断ツールで特に有"
11592 "用である。これらのツールでは、 観測された Path MTU よりも大きな探索パケットを"
11593 "意図的に 送信しようとする。"
11594
11595 #. type: TP
11596 #: build/C/man7/ip.7:524
11597 #, no-wrap
11598 msgid "B<IP_MULTICAST_ALL> (since Linux 2.6.31)"
11599 msgstr "B<IP_MULTICAST_ALL> (Linux 2.6.31 以降)"
11600
11601 #. type: Plain text
11602 #: build/C/man7/ip.7:538
11603 msgid ""
11604 "This option can be used to modify the delivery policy of multicast messages "
11605 "to sockets bound to the wildcard B<INADDR_ANY> address.  The argument is a "
11606 "boolean integer (defaults to 1).  If set to 1, the socket will receive "
11607 "messages from all the groups that have been joined globally on the whole "
11608 "system.  Otherwise, it will deliver messages only from the groups that have "
11609 "been explicitly joined (for example via the B<IP_ADD_MEMBERSHIP> option) on "
11610 "this particular socket."
11611 msgstr ""
11612 "このオプションを使って、 マルチキャストメッセージの、 ワイルドカードの "
11613 "B<INADDR_ANY> アドレスにバインドされているソケットへの 配送ポリシーを変更する"
11614 "ことができる。 引き数はブート値の整数で、 デフォルト値は 1 である。 このオプ"
11615 "ションを 1 に設定されている場合、そのソケットでは、このシステムで参加している"
11616 "すべてのグループからのメッセージが受信される。 それ以外の場合は、そのソケット"
11617 "では、 そのソケットに対して (B<IP_ADD_MEMBERSHIP> などを使って) 明示的に参加"
11618 "が指定されたグループからのメッセージだけが受信される。"
11619
11620 #. type: TP
11621 #: build/C/man7/ip.7:538
11622 #, no-wrap
11623 msgid "B<IP_MULTICAST_IF> (since Linux 1.2)"
11624 msgstr "B<IP_MULTICAST_IF> (Linux 1.2 以降)"
11625
11626 #.  net: IP_MULTICAST_IF setsockopt now recognizes struct mreq
11627 #.  Commit: 3a084ddb4bf299a6e898a9a07c89f3917f0713f7
11628 #. type: Plain text
11629 #: build/C/man7/ip.7:550
11630 msgid ""
11631 "Set the local device for a multicast socket.  Argument is an I<ip_mreqn> or "
11632 "I<ip_mreq> (since Linux 3.5)  structure similar to B<IP_ADD_MEMBERSHIP>."
11633 msgstr ""
11634 "ローカルデバイスをマルチキャストソケットとして設定する。引き数は "
11635 "B<IP_ADD_MEMBERSHIP> と同様に I<ip_mreqn> 構造体か I<ip_mreq> 構造体 (Linux "
11636 "3.5 以降) である。"
11637
11638 #. type: Plain text
11639 #: build/C/man7/ip.7:554
11640 msgid "When an invalid socket option is passed, B<ENOPROTOOPT> is returned."
11641 msgstr "不正なソケットオプションが渡されると、 B<ENOPROTOOPT> が返される。"
11642
11643 #. type: TP
11644 #: build/C/man7/ip.7:554
11645 #, no-wrap
11646 msgid "B<IP_MULTICAST_LOOP> (since Linux 1.2)"
11647 msgstr "B<IP_MULTICAST_LOOP> (Linux 1.2 以降)"
11648
11649 #. type: Plain text
11650 #: build/C/man7/ip.7:558
11651 msgid ""
11652 "Set or read a boolean integer argument that determines whether sent "
11653 "multicast packets should be looped back to the local sockets."
11654 msgstr ""
11655 "マルチキャストパケットをローカルなソケットにループバックするかどうかを 定める"
11656 "ブール値の整数引き数を設定・取得する。"
11657
11658 #. type: TP
11659 #: build/C/man7/ip.7:558
11660 #, no-wrap
11661 msgid "B<IP_MULTICAST_TTL> (since Linux 1.2)"
11662 msgstr "B<IP_MULTICAST_TTL> (Linux 1.2 以降)"
11663
11664 #. type: Plain text
11665 #: build/C/man7/ip.7:566
11666 msgid ""
11667 "Set or read the time-to-live value of outgoing multicast packets for this "
11668 "socket.  It is very important for multicast packets to set the smallest TTL "
11669 "possible.  The default is 1 which means that multicast packets don't leave "
11670 "the local network unless the user program explicitly requests it.  Argument "
11671 "is an integer."
11672 msgstr ""
11673 "このソケットから発信されるマルチキャストパケットの time-to-live 値を設定・取"
11674 "得する。 マルチキャストパケットに対しては、できるだけ小さな TTL に設定するこ"
11675 "とがとても重要である。デフォルトは 1 で、 ユーザープログラムが明示的に要求し"
11676 "ない限り マルチキャストパケットはローカルなネットワークから出ないことにな"
11677 "る。 引き数に整数を取る。"
11678
11679 #. type: TP
11680 #: build/C/man7/ip.7:566
11681 #, no-wrap
11682 msgid "B<IP_NODEFRAG> (since Linux 2.6.36)"
11683 msgstr "B<IP_NODEFRAG> (Linux 2.6.36 以降)"
11684
11685 #. type: Plain text
11686 #: build/C/man7/ip.7:574
11687 msgid ""
11688 "If enabled (argument is nonzero), the reassembly of outgoing packets is "
11689 "disabled in the netfilter layer.  This option is valid only for B<SOCK_RAW> "
11690 "sockets.  The argument is an integer."
11691 msgstr ""
11692 "有効 (引き数が 0 以外の場合) になっていると、netfilter 層での出力パケットの\n"
11693 "再構築 (reassembly) が行われなくなる。このオプションは B<SOCK_RAW> ソケット\n"
11694 "においてのみ有効である。引き数は整数である。"
11695
11696 #. type: TP
11697 #: build/C/man7/ip.7:574
11698 #, no-wrap
11699 msgid "B<IP_OPTIONS> (since Linux 2.0)"
11700 msgstr "B<IP_OPTIONS> (Linux 2.0 以降)"
11701
11702 #.  Precisely: 1.3.30
11703 #. type: Plain text
11704 #: build/C/man7/ip.7:603
11705 msgid ""
11706 "Set or get the IP options to be sent with every packet from this socket.  "
11707 "The arguments are a pointer to a memory buffer containing the options and "
11708 "the option length.  The B<setsockopt>(2)  call sets the IP options "
11709 "associated with a socket.  The maximum option size for IPv4 is 40 bytes.  "
11710 "See RFC\\ 791 for the allowed options.  When the initial connection request "
11711 "packet for a B<SOCK_STREAM> socket contains IP options, the IP options will "
11712 "be set automatically to the options from the initial packet with routing "
11713 "headers reversed.  Incoming packets are not allowed to change options after "
11714 "the connection is established.  The processing of all incoming source "
11715 "routing options is disabled by default and can be enabled by using the "
11716 "I<accept_source_route> I</proc> interface.  Other options like timestamps "
11717 "are still handled.  For datagram sockets, IP options can be only set by the "
11718 "local user.  Calling B<getsockopt>(2)  with B<IP_OPTIONS> puts the current "
11719 "IP options used for sending into the supplied buffer."
11720 msgstr ""
11721 "このソケットから送られるパケット全てに付随する IP オプションを 設定・取得す"
11722 "る。オプションを保存しているメモリバッファへのポインタと オプションの長さとを"
11723 "引き数に取る。 B<setsockopt>(2)  を呼び出すと、ソケットに関連づけられる IP オ"
11724 "プションを設定できる。 IPv4 におけるオプションのサイズの最大値は 40 バイトで"
11725 "ある。 用いることのできるオプションについては RFC\\ 791 を見よ。 "
11726 "B<SOCK_STREAM> ソケットに対する初期接続要求パケットに IP オプションが含まれて"
11727 "いると、 ルーティングヘッダを付けて戻されてくる初期パケットの IP オプションに"
11728 "同じオプションがセットされる。接続が確立された後、 やってきたパケットのオプ"
11729 "ションを変更することはできない。 デフォルトでは。外部から受信したパケットの全"
11730 "ての source routing オプション の処理は無効となっており、 I</proc> インタ"
11731 "フェースの I<accept_source_route> を使うとこれを有効にできる。これを無効にし"
11732 "ていても timestamps など の他のオプションの処理は行われる。データグラムソケッ"
11733 "トでは、 IP オプションはローカルユーザーしか設定できない。 B<getsockopt>(2)  "
11734 "を B<IP_OPTIONS> をつけて呼ぶと、現在送信に用いられている IP オプションを 引"
11735 "き数に与えたバッファに取得できる。"
11736
11737 #. type: TP
11738 #: build/C/man7/ip.7:603
11739 #, no-wrap
11740 msgid "B<IP_PKTINFO> (since Linux 2.2)"
11741 msgstr "B<IP_PKTINFO> (Linux 2.2 以降)"
11742
11743 #.  Precisely: 2.1.68
11744 #. type: Plain text
11745 #: build/C/man7/ip.7:620
11746 msgid ""
11747 "Pass an B<IP_PKTINFO> ancillary message that contains a I<pktinfo> structure "
11748 "that supplies some information about the incoming packet.  This only works "
11749 "for datagram oriented sockets.  The argument is a flag that tells the socket "
11750 "whether the B<IP_PKTINFO> message should be passed or not.  The message "
11751 "itself can only be sent/retrieved as control message with a packet using "
11752 "B<recvmsg>(2)  or B<sendmsg>(2)."
11753 msgstr ""
11754 "B<IP_PKTINFO> 補助メッセージを渡す。これには到着パケットに関する情報を提供す"
11755 "る I<pktinfo> 構造体が含まれている。 データグラム指向のソケットでしか動作しな"
11756 "い。 引き数は B<IP_PKTINFO> メッセージを通過させるかどうかをソケットに知らせ"
11757 "るフラグである。 メッセージ自身は B<recvmsg>(2)  または B<sendmsg>(2)  を用い"
11758 "たパケットの制御メッセージとしてのみ送受信できる。"
11759
11760 #. type: Plain text
11761 #: build/C/man7/ip.7:629
11762 #, no-wrap
11763 msgid ""
11764 "struct in_pktinfo {\n"
11765 "    unsigned int   ipi_ifindex;  /* Interface index */\n"
11766 "    struct in_addr ipi_spec_dst; /* Local address */\n"
11767 "    struct in_addr ipi_addr;     /* Header Destination\n"
11768 "                                    address */\n"
11769 "};\n"
11770 msgstr ""
11771 "struct in_pktinfo {\n"
11772 "    unsigned int   ipi_ifindex;  /* Interface index */\n"
11773 "    struct in_addr ipi_spec_dst; /* Local address */\n"
11774 "    struct in_addr ipi_addr;     /* Header Destination\n"
11775 "                                    address */\n"
11776 "};\n"
11777
11778 #.  FIXME elaborate on that.
11779 #.  This field is grossly misnamed
11780 #. type: Plain text
11781 #: build/C/man7/ip.7:654
11782 msgid ""
11783 "I<ipi_ifindex> is the unique index of the interface the packet was received "
11784 "on.  I<ipi_spec_dst> is the local address of the packet and I<ipi_addr> is "
11785 "the destination address in the packet header.  If B<IP_PKTINFO> is passed to "
11786 "B<sendmsg>(2)  and I<ipi_spec_dst> is not zero, then it is used as the local "
11787 "source address for the routing table lookup and for setting up IP source "
11788 "route options.  When I<ipi_ifindex> is not zero, the primary local address "
11789 "of the interface specified by the index overwrites I<ipi_spec_dst> for the "
11790 "routing table lookup."
11791 msgstr ""
11792 "I<ipi_ifindex> はパケットが受信されたインターフェースの、他と重ならないイン"
11793 "デックスである。 I<ipi_spec_dst> はパケットのローカルアドレスである。 "
11794 "I<ipi_addr> はパケットヘッダにある宛先アドレスである。 B<IP_PKTINFO> が "
11795 "B<sendmsg>(2)  に渡されて、かつ I<ipi_spec_dst> が 0 以外の場合、 "
11796 "I<ipi_spec_dst> はルーティングテーブルを検索する際にローカルな送信元アドレス"
11797 "として使用され、 IP source route オプションを設定するのにも使用される。 "
11798 "I<ipi_ifindex> が 0 以外の場合、このインデックスによって指定されるインター"
11799 "フェースの プライマリローカルアドレスで I<ipi_spec_dst> を上書きし、ルーティ"
11800 "ングテーブルを検索する。"
11801
11802 #. type: TP
11803 #: build/C/man7/ip.7:654
11804 #, no-wrap
11805 msgid "B<IP_RECVERR> (since Linux 2.2)"
11806 msgstr "B<IP_RECVERR> (Linux 2.2 以降)"
11807
11808 #.  Precisely: 2.1.15
11809 #.  or SOL_IP on Linux
11810 #. type: Plain text
11811 #: build/C/man7/ip.7:676
11812 msgid ""
11813 "Enable extended reliable error message passing.  When enabled on a datagram "
11814 "socket, all generated errors will be queued in a per-socket error queue.  "
11815 "When the user receives an error from a socket operation, the errors can be "
11816 "received by calling B<recvmsg>(2)  with the B<MSG_ERRQUEUE> flag set.  The "
11817 "I<sock_extended_err> structure describing the error will be passed in an "
11818 "ancillary message with the type B<IP_RECVERR> and the level B<IPPROTO_IP>.  "
11819 "This is useful for reliable error handling on unconnected sockets.  The "
11820 "received data portion of the error queue contains the error packet."
11821 msgstr ""
11822 "エラーメッセージの受け渡しに、信頼性の高い拡張された方法を有効にする。 データ"
11823 "グラムソケットに対して有効になっていると、 発生したエラーは全てソケットごとの"
11824 "エラーキューに保存される。 ユーザーはソケット操作からエラーを受け取ったと"
11825 "き、 B<recvmsg>(2)  を B<MSG_ERRQUEUE> フラグとともに呼べばそのエラーを取得で"
11826 "きる。 そのエラーを記述する I<sock_extended_err> 構造体が、タイプ "
11827 "B<IP_RECVERR>・ レベル B<IPPROTO_IP> の補助メッセージとして渡される。 これは"
11828 "接続志向でないソケットで信頼性の高いエラー処理を行いたい場合に 有用である。エ"
11829 "ラーキューの受信データフラグメントには エラーパケットが含まれる。"
11830
11831 #. type: Plain text
11832 #: build/C/man7/ip.7:682
11833 msgid ""
11834 "The B<IP_RECVERR> control message contains a I<sock_extended_err> structure:"
11835 msgstr ""
11836 "B<IP_RECVERR> 制御メッセージには I<sock_extended_err> 構造体が含まれる:"
11837
11838 #. type: Plain text
11839 #: build/C/man7/ip.7:690
11840 #, no-wrap
11841 msgid ""
11842 "#define SO_EE_ORIGIN_NONE    0\n"
11843 "#define SO_EE_ORIGIN_LOCAL   1\n"
11844 "#define SO_EE_ORIGIN_ICMP    2\n"
11845 "#define SO_EE_ORIGIN_ICMP6   3\n"
11846 msgstr ""
11847 "#define SO_EE_ORIGIN_NONE    0\n"
11848 "#define SO_EE_ORIGIN_LOCAL   1\n"
11849 "#define SO_EE_ORIGIN_ICMP    2\n"
11850 "#define SO_EE_ORIGIN_ICMP6   3\n"
11851
11852 #. type: Plain text
11853 #: build/C/man7/ip.7:701
11854 #, no-wrap
11855 msgid ""
11856 "struct sock_extended_err {\n"
11857 "    uint32_t ee_errno;   /* error number */\n"
11858 "    uint8_t  ee_origin;  /* where the error originated */\n"
11859 "    uint8_t  ee_type;    /* type */\n"
11860 "    uint8_t  ee_code;    /* code */\n"
11861 "    uint8_t  ee_pad;\n"
11862 "    uint32_t ee_info;    /* additional information */\n"
11863 "    uint32_t ee_data;    /* other data */\n"
11864 "    /* More data may follow */\n"
11865 "};\n"
11866 msgstr ""
11867 "struct sock_extended_err {\n"
11868 "    uint32_t ee_errno;   /* error number */\n"
11869 "    uint8_t  ee_origin;  /* where the error originated */\n"
11870 "    uint8_t  ee_type;    /* type */\n"
11871 "    uint8_t  ee_code;    /* code */\n"
11872 "    uint8_t  ee_pad;\n"
11873 "    uint32_t ee_info;    /* additional information */\n"
11874 "    uint32_t ee_data;    /* other data */\n"
11875 "    /* More data may follow */\n"
11876 "};\n"
11877
11878 #. type: Plain text
11879 #: build/C/man7/ip.7:703
11880 #, no-wrap
11881 msgid "struct sockaddr *SO_EE_OFFENDER(struct sock_extended_err *);\n"
11882 msgstr "struct sockaddr *SO_EE_OFFENDER(struct sock_extended_err *);\n"
11883
11884 #. type: Plain text
11885 #: build/C/man7/ip.7:726
11886 msgid ""
11887 "I<ee_errno> contains the I<errno> number of the queued error.  I<ee_origin> "
11888 "is the origin code of where the error originated.  The other fields are "
11889 "protocol-specific.  The macro B<SO_EE_OFFENDER> returns a pointer to the "
11890 "address of the network object where the error originated from given a "
11891 "pointer to the ancillary message.  If this address is not known, the "
11892 "I<sa_family> member of the I<sockaddr> contains B<AF_UNSPEC> and the other "
11893 "fields of the I<sockaddr> are undefined."
11894 msgstr ""
11895 "I<ee_errno> にはキューに入っているエラーの I<errno> 番号が入る。 "
11896 "I<ee_origin> にはエラーが発生した場所を示すコードが入る。 その他のフィールド"
11897 "はプロトコル依存である。 B<SO_EE_OFFENDER> マクロは与えられた補助メッセージへ"
11898 "のポインタから エラーの発生したネットワークオブジェクトのアドレスへのポインタ"
11899 "を返す。 アドレスが不明な場合、 I<sockaddr> 構造体の I<sa_family> フィールド"
11900 "は B<AF_UNSPEC> となり、その他のフィールド値は不定である。"
11901
11902 #.  FIXME . Is it a good idea to document that? It is a dubious feature.
11903 #.  On
11904 #.  .B SOCK_STREAM
11905 #.  sockets,
11906 #.  .B IP_RECVERR
11907 #.  has slightly different semantics. Instead of
11908 #.  saving the errors for the next timeout, it passes all incoming
11909 #.  errors immediately to the user.
11910 #.  This might be useful for very short-lived TCP connections which
11911 #.  need fast error handling. Use this option with care:
11912 #.  it makes TCP unreliable
11913 #.  by not allowing it to recover properly from routing
11914 #.  shifts and other normal
11915 #.  conditions and breaks the protocol specification.
11916 #. type: Plain text
11917 #: build/C/man7/ip.7:785
11918 msgid ""
11919 "IP uses the I<sock_extended_err> structure as follows: I<ee_origin> is set "
11920 "to B<SO_EE_ORIGIN_ICMP> for errors received as an ICMP packet, or "
11921 "B<SO_EE_ORIGIN_LOCAL> for locally generated errors.  Unknown values should "
11922 "be ignored.  I<ee_type> and I<ee_code> are set from the type and code fields "
11923 "of the ICMP header.  I<ee_info> contains the discovered MTU for B<EMSGSIZE> "
11924 "errors.  The message also contains the I<sockaddr_in of the node> caused the "
11925 "error, which can be accessed with the B<SO_EE_OFFENDER> macro.  The "
11926 "I<sin_family> field of the B<SO_EE_OFFENDER> address is B<AF_UNSPEC> when "
11927 "the source was unknown.  When the error originated from the network, all IP "
11928 "options (B<IP_OPTIONS>, B<IP_TTL>, etc.) enabled on the socket and contained "
11929 "in the error packet are passed as control messages.  The payload of the "
11930 "packet causing the error is returned as normal payload.  Note that TCP has "
11931 "no error queue; B<MSG_ERRQUEUE> is not permitted on B<SOCK_STREAM> sockets.  "
11932 "B<IP_RECVERR> is valid for TCP, but all errors are returned by socket "
11933 "function return or B<SO_ERROR> only."
11934 msgstr ""
11935 "IP は以下のような I<sock_extended_err> 構造体を用いる: I<ee_origin> は、エ"
11936 "ラー\n"
11937 "が ICMP パケットとして受信された場合には B<SO_EE_ORIGIN_ICMP> にセットさ"
11938 "れ、\n"
11939 "ローカルで起こった場合には B<SO_EE_ORIGIN_LOCAL> にセットされる。 不明な値"
11940 "は\n"
11941 "無視される。 I<ee_type> と I<ee_code> は ICMP ヘッダの type フィールドと\n"
11942 "code フィールドの値にセットされる。 I<ee_info> には B<EMSGSIZE> エラーに対"
11943 "す\n"
11944 "る discover された MTU が入る。 メッセージにはエラーを引き起こしたノードの\n"
11945 "I<sockaddr_in> 構造体も含まれる。 これには B<SO_EE_OFFENDER> マクロを使って"
11946 "ア\n"
11947 "クセスできる。 ソースが不明の場合、 B<SO_EE_OFFENDER> アドレスの\n"
11948 "I<sin_family> フィールドは B<AF_UNSPEC> となる。 エラーがネットワークで起き"
11949 "た\n"
11950 "場合には、 ソケットで有効になっていたすべての IP オプション (B<IP_OPTIONS>,\n"
11951 "B<IP_TTL> など) とエラーパケットに含まれていたすべての IP オプションとが、 "
11952 "制\n"
11953 "御メッセージとして渡される。 エラーを起こしたパケットのペイロード (payload)\n"
11954 "は 普通のペイロードとして返される。 TCP にはエラーキューがないことに注意し"
11955 "て\n"
11956 "ほしい。 B<MSG_ERRQUEUE> は B<SOCK_STREAM> ソケットに対しては使えない。 TCP\n"
11957 "では B<IP_RECVERR> だけが有効だが、ソケット関数から返されるエラーは\n"
11958 "B<SO_ERROR> だけになる。"
11959
11960 #. type: Plain text
11961 #: build/C/man7/ip.7:790
11962 msgid ""
11963 "For raw sockets, B<IP_RECVERR> enables passing of all received ICMP errors "
11964 "to the application, otherwise errors are only reported on connected sockets"
11965 msgstr ""
11966 "raw ソケットに対して B<IP_RECVERR> を指定すると、受信したすべての ICMP エラー"
11967 "をアプリケーションに 渡すようになる。指定しないと、 接続済みのソケットに対す"
11968 "るエラーだけを報告する。"
11969
11970 #. type: Plain text
11971 #: build/C/man7/ip.7:794
11972 msgid ""
11973 "It sets or retrieves an integer boolean flag.  B<IP_RECVERR> defaults to off."
11974 msgstr ""
11975 "このオプションはブール値のフラグを設定・取得する。 B<IP_RECVERR> はデフォルト"
11976 "ではオフになっている。"
11977
11978 #. type: TP
11979 #: build/C/man7/ip.7:794
11980 #, no-wrap
11981 msgid "B<IP_RECVOPTS> (since Linux 2.2)"
11982 msgstr "B<IP_RECVOPTS> (Linux 2.2 以降)"
11983
11984 #.  Precisely: 2.1.15
11985 #. type: Plain text
11986 #: build/C/man7/ip.7:805
11987 msgid ""
11988 "Pass all incoming IP options to the user in a B<IP_OPTIONS> control "
11989 "message.  The routing header and other options are already filled in for the "
11990 "local host.  Not supported for B<SOCK_STREAM> sockets."
11991 msgstr ""
11992 "到着した全ての IP オプションを B<IP_OPTION> コントロールメッセージに入れて"
11993 "ユーザーに渡す。 ルーティングヘッダとその他のオプションとは、 ローカルホスト"
11994 "に対してはあらかじめ記入されている。 B<SOCK_STREAM> ソケットではサポートされ"
11995 "ていない。"
11996
11997 #. type: TP
11998 #: build/C/man7/ip.7:805
11999 #, no-wrap
12000 msgid "B<IP_RECVORIGDSTADDR> (since Linux 2.6.29)"
12001 msgstr "B<IP_RECVORIGDSTADDR> (Linux 2.6.29 以降)"
12002
12003 #.  commit e8b2dfe9b4501ed0047459b2756ba26e5a940a69
12004 #. type: Plain text
12005 #: build/C/man7/ip.7:816
12006 msgid ""
12007 "This boolean option enables the B<IP_ORIGDSTADDR> ancillary message in "
12008 "B<recvmsg>(2), in which the kernel returns the original destination address "
12009 "of the datagram being received.  The ancillary message contains a I<struct "
12010 "sockaddr_in>."
12011 msgstr ""
12012 "このブール値のオプションがセットされると、\n"
12013 "B<recvmsg>(2) で B<IP_ORIGDSTADDR> 補助メッセージが有効になる。\n"
12014 "カーネルはデータグラムを受信した元の宛先アドレスをこの補助メッセージで返"
12015 "す。\n"
12016 "この補助メッセージには I<struct sockaddr_in> が格納される。"
12017
12018 #. type: TP
12019 #: build/C/man7/ip.7:816
12020 #, no-wrap
12021 msgid "B<IP_RECVTOS> (since Linux 2.2)"
12022 msgstr "B<IP_RECVTOS> (Linux 2.2 以降)"
12023
12024 #.  Precisely: 2.1.68
12025 #. type: Plain text
12026 #: build/C/man7/ip.7:825
12027 msgid ""
12028 "If enabled the B<IP_TOS> ancillary message is passed with incoming packets.  "
12029 "It contains a byte which specifies the Type of Service/Precedence field of "
12030 "the packet header.  Expects a boolean integer flag."
12031 msgstr ""
12032 "有効になっていると、 B<IP_TOS> 補助メッセージが到着パケットとともに渡され"
12033 "る。 これにはパケットヘッダの Service/Precedence フィールドのタイプを指定する"
12034 "バイトデータが含まれている。 ブール整数値のフラグをとる。"
12035
12036 #. type: TP
12037 #: build/C/man7/ip.7:825
12038 #, no-wrap
12039 msgid "B<IP_RECVTTL> (since Linux 2.2)"
12040 msgstr "B<IP_RECVTTL> (Linux 2.2 以降)"
12041
12042 #.  Precisely: 2.1.68
12043 #. type: Plain text
12044 #: build/C/man7/ip.7:835
12045 msgid ""
12046 "When this flag is set, pass a B<IP_TTL> control message with the time to "
12047 "live field of the received packet as a byte.  Not supported for "
12048 "B<SOCK_STREAM> sockets."
12049 msgstr ""
12050 "このフラグがセットされていると、 B<IP_TTL> コントロールメッセージが受信パケッ"
12051 "トの time-to-live フィールドのバイトデータとともに渡される。 B<SOCK_STREAM> "
12052 "ソケットではサポートされていない。"
12053
12054 #. type: TP
12055 #: build/C/man7/ip.7:835
12056 #, no-wrap
12057 msgid "B<IP_RETOPTS> (since Linux 2.2)"
12058 msgstr "B<IP_RETOPTS>"
12059
12060 #.  Precisely: 2.1.15
12061 #. type: Plain text
12062 #: build/C/man7/ip.7:842
12063 msgid ""
12064 "Identical to B<IP_RECVOPTS>, but returns raw unprocessed options with "
12065 "timestamp and route record options not filled in for this hop."
12066 msgstr ""
12067 "B<IP_RETOPTS> (Linux 2.2 以降)  B<IP_RECVOPTS> と等価だが、未処理の生のオプ"
12068 "ションを、 この hop では記入されない timestamp レコードと route レコードとと"
12069 "もに返す。"
12070
12071 #. type: TP
12072 #: build/C/man7/ip.7:842
12073 #, no-wrap
12074 msgid "B<IP_ROUTER_ALERT> (since Linux 2.2)"
12075 msgstr "B<IP_ROUTER_ALERT> (Linux 2.2 以降)"
12076
12077 #.  Precisely: 2.1.68
12078 #. type: Plain text
12079 #: build/C/man7/ip.7:854
12080 msgid ""
12081 "Pass all to-be forwarded packets with the IP Router Alert option set to this "
12082 "socket.  Only valid for raw sockets.  This is useful, for instance, for user-"
12083 "space RSVP daemons.  The tapped packets are not forwarded by the kernel; it "
12084 "is the user's responsibility to send them out again.  Socket binding is "
12085 "ignored, such packets are only filtered by protocol.  Expects an integer "
12086 "flag."
12087 msgstr ""
12088 "フォワードすべきパケットを IP Router Alert オプションをつけて このソケットに"
12089 "渡す。 raw ソケットに対してのみ有効である。これはたとえばユーザー空間の RSVP "
12090 "デーモンに対して便利である。タップされたパケットは カーネルによってはフォワー"
12091 "ドされないので、これらを再送するのは ユーザーの責任となる。ソケットのバインド"
12092 "は無視され、 このようなパケットはプロトコルによってのみフィルタリングされ"
12093 "る。 整数値のフラグを取る。"
12094
12095 #. type: TP
12096 #: build/C/man7/ip.7:854
12097 #, no-wrap
12098 msgid "B<IP_TOS> (since Linux 1.0)"
12099 msgstr "B<IP_TOS> (Linux 1.0 以降)"
12100
12101 #.  FIXME elaborate on this
12102 #.  Needs CAP_NET_ADMIN
12103 #.  Boolean
12104 #.  Since Linux 2.6.27
12105 #.  Author: KOVACS Krisztian <hidden@sch.bme.hu>
12106 #.  http://lwn.net/Articles/252545/
12107 #. type: Plain text
12108 #: build/C/man7/ip.7:888
12109 msgid ""
12110 "Set or receive the Type-Of-Service (TOS) field that is sent with every IP "
12111 "packet originating from this socket.  It is used to prioritize packets on "
12112 "the network.  TOS is a byte.  There are some standard TOS flags defined: "
12113 "B<IPTOS_LOWDELAY> to minimize delays for interactive traffic, "
12114 "B<IPTOS_THROUGHPUT> to optimize throughput, B<IPTOS_RELIABILITY> to optimize "
12115 "for reliability, B<IPTOS_MINCOST> should be used for \"filler data\" where "
12116 "slow transmission doesn't matter.  At most one of these TOS values can be "
12117 "specified.  Other bits are invalid and shall be cleared.  Linux sends "
12118 "B<IPTOS_LOWDELAY> datagrams first by default, but the exact behavior depends "
12119 "on the configured queueing discipline.  Some high priority levels may "
12120 "require superuser privileges (the B<CAP_NET_ADMIN> capability).  The "
12121 "priority can also be set in a protocol independent way by the "
12122 "(B<SOL_SOCKET>, B<SO_PRIORITY>)  socket option (see B<socket>(7))."
12123 msgstr ""
12124 "このソケットから送信されるすべての IP パケットに適用される Type-Of-Service "
12125 "(TOS) フィールドを設定・取得する。 これはネットワーク上でのパケットの優先度を"
12126 "決めるために用いられる。 TOS はバイトデータである。標準の TOS フラグがいくつ"
12127 "か定義されている。 B<IPTOS_LOWDELAY> はインタラクティブなトラフィックの遅延を"
12128 "最小にする。 B<IPTOS_THROUGHPUT> はスループットを最大にする。 "
12129 "B<IPTOS_RELIABILITY> は信頼性を最高にする。 B<IPTOS_MINCOST> は転送速度が遅く"
12130 "てもかまわないとき、「データを詰め込む」のに用いられる。 これらのうち、 1 つ"
12131 "までだけを設定できる。 他のビットは無効で、クリアされる。 Linux はデフォルト"
12132 "では B<IPTOS_LOWDELAY> データグラムを最初に送信する。 しかし、正確な振る舞い"
12133 "はキュー処理の設定に依存する。 高い優先度にするにはスーパーユーザー権限 "
12134 "(B<CAP_NET_ADMIN> ケーパビリティ) が必要となるかもしれない。 優先度は "
12135 "(B<SOL_SOCKET>, B<SO_PRIORITY>)  ソケットオプションを用いれば、 プロトコルに"
12136 "依存しない形でも設定できる (B<socket>(7)  を見よ)。"
12137
12138 #. type: TP
12139 #: build/C/man7/ip.7:888
12140 #, no-wrap
12141 msgid "B<IP_TRANSPARENT> (since Linux 2.6.24)"
12142 msgstr "B<IP_TRANSPARENT> (Linux 2.6.24 以降)"
12143
12144 #.  commit f5715aea4564f233767ea1d944b2637a5fd7cd2e
12145 #.      This patch introduces the IP_TRANSPARENT socket option: enabling that
12146 #.      will make the IPv4 routing omit the non-local source address check on
12147 #.      output. Setting IP_TRANSPARENT requires NET_ADMIN capability.
12148 #.  http://lwn.net/Articles/252545/
12149 #. type: Plain text
12150 #: build/C/man7/ip.7:905
12151 msgid ""
12152 "Setting this boolean option enables transparent proxying on this socket.  "
12153 "This socket option allows the calling application to bind to a nonlocal IP "
12154 "address and operate both as a client and a server with the foreign address "
12155 "as the local endpoint.  NOTE: this requires that routing be set up in a way "
12156 "that packets going to the foreign address are routed through the TProxy "
12157 "box.  Enabling this socket option requires superuser privileges (the "
12158 "B<CAP_NET_ADMIN> capability)."
12159 msgstr ""
12160 "このブール値のオプションを有効にすると、\n"
12161 "このソケットで透過プロキシ (transparent proxy) ができるようになる。\n"
12162 "このソケットオプションを使うと、呼び出したアプリケーションは、\n"
12163 "ローカルではない IP アドレスをバインドして、ローカルの端点として自分以外の\n"
12164 "アドレス (foreign address) を持つクライアントやサーバの両方として\n"
12165 "動作できるようになる。\n"
12166 "B<注意>: この機能が動作するためには、自分以外のアドレス宛のパケットが\n"
12167 "透過プロキシが動作するマシン (TProxy box) 経由で転送されるように、\n"
12168 "ルーティングが設定される必要がある。\n"
12169 "このソケットオプションを有効にするには、スーパーユーザ特権\n"
12170 "(B<CAP_NET_ADMIN> ケーパビリティ) が必要である。"
12171
12172 #. type: Plain text
12173 #: build/C/man7/ip.7:908
12174 msgid ""
12175 "TProxy redirection with the iptables TPROXY target also requires that this "
12176 "option be set on the redirected socket."
12177 msgstr ""
12178 "iptables の TPROXY ターゲットで透過プロキシリダイレクション \n"
12179 "(TProxy redirection) を行うには、リダイレクトされるソケットに対して\n"
12180 "このオプションを設定する必要がある。"
12181
12182 #. type: TP
12183 #: build/C/man7/ip.7:908
12184 #, no-wrap
12185 msgid "B<IP_TTL> (since Linux 1.0)"
12186 msgstr "B<IP_TTL> (Linux 1.0 以降)"
12187
12188 #. type: Plain text
12189 #: build/C/man7/ip.7:912
12190 msgid ""
12191 "Set or retrieve the current time-to-live field that is used in every packet "
12192 "sent from this socket."
12193 msgstr ""
12194 "time-to-live フィールドの値を設定または取得する。 この値はこのソケットから送"
12195 "信されるすべてのパケットに用いられる。"
12196
12197 #. type: TP
12198 #: build/C/man7/ip.7:912
12199 #, no-wrap
12200 msgid "B<IP_UNBLOCK_SOURCE> (since Linux 2.4.22 / 2.5.68)"
12201 msgstr "B<IP_UNBLOCK_SOURCE> (Linux 2.4.22 以降 / 2.5.68 以降)"
12202
12203 #. type: Plain text
12204 #: build/C/man7/ip.7:918
12205 msgid ""
12206 "Unblock previously blocked multicast source.  Returns B<EADDRNOTAVAIL> when "
12207 "given source is not being blocked."
12208 msgstr ""
12209 "それ以前はブロックされていたマルチキャストの送信元のブロックを解除する。 指定"
12210 "した送信元がブロックされていない場合は B<EADDRNOTAVAIL> を返す。"
12211
12212 #.  FIXME As at 2.6.12, 14 Jun 2005, the following are undocumented:
12213 #.      ip_queue_maxlen
12214 #.      ip_conntrack_max
12215 #. type: Plain text
12216 #: build/C/man7/ip.7:939
12217 msgid ""
12218 "The IP protocol supports a set of I</proc> interfaces to configure some "
12219 "global parameters.  The parameters can be accessed by reading or writing "
12220 "files in the directory I</proc/sys/net/ipv4/>.  Interfaces described as "
12221 "I<Boolean> take an integer value, with a nonzero value (\"true\") meaning "
12222 "that the corresponding option is enabled, and a zero value (\"false\")  "
12223 "meaning that the option is disabled."
12224 msgstr ""
12225 "IP プロトコルでは、いくつかのグローバルパラメータを設定するための I</proc> "
12226 "ファイル群が用意されている。 これらのパラメータには、 I</proc/sys/net/ipv4/> "
12227 "ディレクトリ内のファイルの読み書きでアクセスできる。 I<Boolean> と書かれたイ"
12228 "ンタフェースは整数値をとり、 0 以外の値 (\"true\") は対応するオプションが有"
12229 "効、 0 値 (\"false\") は無効、であることを意味する。"
12230
12231 #. type: TP
12232 #: build/C/man7/ip.7:939
12233 #, no-wrap
12234 msgid "I<ip_always_defrag> (Boolean; since Linux 2.2.13)"
12235 msgstr "I<ip_always_defrag> (Boolean; Linux 2.2.13 以降)"
12236
12237 #. type: Plain text
12238 #: build/C/man7/ip.7:945
12239 msgid ""
12240 "[New with kernel 2.2.13; in earlier kernel versions this feature was "
12241 "controlled at compile time by the B<CONFIG_IP_ALWAYS_DEFRAG> option; this "
12242 "option is not present in 2.4.x and later]"
12243 msgstr ""
12244 "[2.2.13 で新規登場。以前のバージョンのカーネルでは、この機能は コンパイル時"
12245 "に B<CONFIG_IP_ALWAYS_DEFRAG> オプションによって制御されていた; このファイル"
12246 "は 2.4.x 以降では存在しない]"
12247
12248 #. type: Plain text
12249 #: build/C/man7/ip.7:952
12250 msgid ""
12251 "When this boolean flag is enabled (not equal 0), incoming fragments (parts "
12252 "of IP packets that arose when some host between origin and destination "
12253 "decided that the packets were too large and cut them into pieces) will be "
12254 "reassembled (defragmented) before being processed, even if they are about to "
12255 "be forwarded."
12256 msgstr ""
12257 "このブール値のフラグが有効になっている (0 以外になっている) と、 到着したフラ"
12258 "グメント (IP パケットの一部で、 発信元と発信先の間のどこかのホストで、そのパ"
12259 "ケットが 大きすぎると判断され、分割された場合に生じる)  は、たとえフォワード"
12260 "される場合であっても 処理前に再構築 (デフラグメント) される。"
12261
12262 #. type: Plain text
12263 #: build/C/man7/ip.7:959
12264 msgid ""
12265 "Only enable if running either a firewall that is the sole link to your "
12266 "network or a transparent proxy; never ever use it for a normal router or "
12267 "host.  Otherwise fragmented communication can be disturbed if the fragments "
12268 "travel over different links.  Defragmentation also has a large memory and "
12269 "CPU time cost."
12270 msgstr ""
12271 "ファイアウォールがローカル側のネットワークに唯一のリンクを持っている 場合や、"
12272 "透過プロクシの場合に限って有効にすべきである。 通常のルーターやホストでは決し"
12273 "て使用することのないように。 さもないとフラグメントが別のリンクを経由して伝わ"
12274 "る場合に、 通信のフラグメント化ができなくなってしまう。 またフラグメント再構"
12275 "築処理はメモリと CPU 時間のコストが非常に大きい。"
12276
12277 #. type: Plain text
12278 #: build/C/man7/ip.7:963
12279 msgid ""
12280 "This is automagically turned on when masquerading or transparent proxying "
12281 "are configured."
12282 msgstr ""
12283 "これはマスカレードや透過プロクシが設定されると、 不思議な仕組みによって自動的"
12284 "に有効になる。"
12285
12286 #. type: TP
12287 #: build/C/man7/ip.7:963
12288 #, no-wrap
12289 msgid "I<ip_autoconfig> (since Linux 2.2 to 2.6.17)"
12290 msgstr "I<ip_autoconfig> (Linux 2.2 以降 2.6.17 まで)"
12291
12292 #.  Precisely: since 2.1.68
12293 #.  FIXME document ip_autoconfig
12294 #. type: Plain text
12295 #: build/C/man7/ip.7:969
12296 msgid "Not documented."
12297 msgstr "まだ記述していない。"
12298
12299 #. type: TP
12300 #: build/C/man7/ip.7:969
12301 #, no-wrap
12302 msgid "I<ip_default_ttl> (integer; default: 64; since Linux 2.2)"
12303 msgstr "I<ip_default_ttl> (integer; default: 64; Linux 2.2 以降)"
12304
12305 #.  Precisely: 2.1.15
12306 #. type: Plain text
12307 #: build/C/man7/ip.7:977
12308 msgid ""
12309 "Set the default time-to-live value of outgoing packets.  This can be changed "
12310 "per socket with the B<IP_TTL> option."
12311 msgstr ""
12312 "送出されるパケットの time-to-live 値のデフォルトをセットする。 これは "
12313 "B<IP_TTL> オプションを用いれば、パケットごとに変えることもできる。"
12314
12315 #. type: TP
12316 #: build/C/man7/ip.7:977
12317 #, no-wrap
12318 msgid "I<ip_dynaddr> (Boolean; default: disabled; since Linux 2.0.31)"
12319 msgstr "I<ip_dynaddr> (Boolean; default: disabled; Linux 2.0.31 以降)"
12320
12321 #. type: Plain text
12322 #: build/C/man7/ip.7:984
12323 msgid ""
12324 "Enable dynamic socket address and masquerading entry rewriting on interface "
12325 "address change.  This is useful for dialup interface with changing IP "
12326 "addresses.  0 means no rewriting, 1 turns it on and 2 enables verbose mode."
12327 msgstr ""
12328 "動的ソケットアドレスと、インターフェースアドレスが変更された際の マスカレード"
12329 "エントリの再書き込みを有効にする。 ダイアルアップインターフェースで、 IP アド"
12330 "レスが変更される場合に便利である。"
12331
12332 #. type: TP
12333 #: build/C/man7/ip.7:984
12334 #, no-wrap
12335 msgid "I<ip_forward> (Boolean; default: disabled; since Linux 1.2)"
12336 msgstr "I<ip_forward> (Boolean; default: disabled; Linux 1.2 以降)"
12337
12338 #. type: Plain text
12339 #: build/C/man7/ip.7:989
12340 msgid ""
12341 "Enable IP forwarding with a boolean flag.  IP forwarding can be also set on "
12342 "a per-interface basis."
12343 msgstr ""
12344 "IP forwarding を有効にするかどうかのブール値フラグ。 IP forwarding するかどう"
12345 "かはインターフェースごとにも設定できる。"
12346
12347 #. type: TP
12348 #: build/C/man7/ip.7:989
12349 #, no-wrap
12350 msgid "I<ip_local_port_range> (since Linux 2.2)"
12351 msgstr "I<ip_local_port_range> (Linux 2.2 以降)"
12352
12353 #.  Precisely: since 2.1.68
12354 #. type: Plain text
12355 #: build/C/man7/ip.7:1003
12356 msgid ""
12357 "Contains two integers that define the default local port range allocated to "
12358 "sockets.  Allocation starts with the first number and ends with the second "
12359 "number.  Note that these should not conflict with the ports used by "
12360 "masquerading (although the case is handled).  Also arbitrary choices may "
12361 "cause problems with some firewall packet filters that make assumptions about "
12362 "the local ports in use.  First number should be at least greater than 1024, "
12363 "or better, greater than 4096, to avoid clashes with well known ports and to "
12364 "minimize firewall problems."
12365 msgstr ""
12366 "ソケットに割り当てられているデフォルトのローカルポートの範囲を定める 二つの整"
12367 "数を与える。割り当ては 1 番目の番号から始まり、 2 番目の番号で終わる。 これら"
12368 "はマスカレードで用いられているポートと重なってはならない (その場合も取り扱わ"
12369 "れるが)。 ファイアウォールのパケットフィルターが「利用中のローカルポート」 に"
12370 "ついて何らかの仮定をしている場合には、 番号を勝手に決めてしまうと問題が起きる"
12371 "かもしれない。 1 番目の番号は少なくとも 1024 より大きくすべきである。 良く使"
12372 "われるポートとの衝突を避けたり、ファイアウォールの問題を 回避したければ、 "
12373 "4096 よりも大きくするほうが良いだろう。"
12374
12375 #. type: TP
12376 #: build/C/man7/ip.7:1003
12377 #, no-wrap
12378 msgid "I<ip_no_pmtu_disc> (Boolean; default: disabled; since Linux 2.2)"
12379 msgstr "I<ip_no_pmtu_disc> (Boolean; default: disabled; Linux 2.2 以降)"
12380
12381 #.  Precisely: 2.1.15
12382 #.  The following is from 2.6.12: Documentation/networking/ip-sysctl.txt
12383 #. type: Plain text
12384 #: build/C/man7/ip.7:1015
12385 msgid ""
12386 "If enabled, don't do Path MTU Discovery for TCP sockets by default.  Path "
12387 "MTU discovery may fail if misconfigured firewalls (that drop all ICMP "
12388 "packets) or misconfigured interfaces (e.g., a point-to-point link where the "
12389 "both ends don't agree on the MTU) are on the path.  It is better to fix the "
12390 "broken routers on the path than to turn off Path MTU Discovery globally, "
12391 "because not doing it incurs a high cost to the network."
12392 msgstr ""
12393 "有効になっていると、デフォルトで TCP ソケットに対する Path MTU Discoverty を"
12394 "行わない。 Path MTU Discovery は、 正しく設定されていない (ICMP パケットを全"
12395 "てドロップする) ファイアウォールや、 (point-to-point リンクで双方の MTU が一"
12396 "致していない場合など)  正しく設定されていないインターフェースが経路上に存在す"
12397 "ると失敗してしまう。 Path MTU Discovery をグローバルに無効にするよりは、 壊れ"
12398 "ているルータを直すほうが良い。 Path MTU Discovery を無効にするとネットワーク"
12399 "のコストが 大きくなってしまうからである。"
12400
12401 #. type: TP
12402 #: build/C/man7/ip.7:1015
12403 #, no-wrap
12404 msgid "I<ip_nonlocal_bind> (Boolean; default: disabled; since Linux 2.4)"
12405 msgstr "I<ip_nonlocal_bind> (Boolean; default: disabled; Linux 2.4 以降)"
12406
12407 #.  Precisely: patch-2.4.0-test10
12408 #.  The following is from 2.6.12: Documentation/networking/ip-sysctl.txt
12409 #. type: Plain text
12410 #: build/C/man7/ip.7:1024
12411 msgid ""
12412 "If set, allows processes to B<bind>(2)  to nonlocal IP addresses, which can "
12413 "be quite useful, but may break some applications."
12414 msgstr ""
12415 "セットされていれば、プロセスが自分以外の IP アドレスを B<bind>(2)  できるよう"
12416 "になる。これはかなり便利だが、うまく動かないアプリケーションもある。"
12417
12418 #. type: TP
12419 #: build/C/man7/ip.7:1024
12420 #, no-wrap
12421 msgid "I<ip6frag_time> (integer; default: 30)"
12422 msgstr "I<ip6frag_time> (integer; default: 30)"
12423
12424 #.  The following is from 2.6.12: Documentation/networking/ip-sysctl.txt
12425 #. type: Plain text
12426 #: build/C/man7/ip.7:1029
12427 msgid "Time in seconds to keep an IPv6 fragment in memory."
12428 msgstr "IPv6 フラグメントをメモリに保持しておく時間 (秒単位)。"
12429
12430 #. type: TP
12431 #: build/C/man7/ip.7:1029
12432 #, no-wrap
12433 msgid "I<ip6frag_secret_interval> (integer; default: 600)"
12434 msgstr "I<ip6frag_secret_interval> (integer; default: 600)"
12435
12436 #. type: Plain text
12437 #: build/C/man7/ip.7:1033
12438 msgid ""
12439 "Regeneration interval (in seconds) of the hash secret (or lifetime for the "
12440 "hash secret) for IPv6 fragments."
12441 msgstr ""
12442 "IPv6 フラグメントの hash secret の生成間隔 (hash secret の寿命)  (秒単位)。"
12443
12444 #. type: TP
12445 #: build/C/man7/ip.7:1033
12446 #, no-wrap
12447 msgid "I<ipfrag_high_thresh> (integer), I<ipfrag_low_thresh> (integer)"
12448 msgstr "I<ipfrag_high_thresh> (integer), I<ipfrag_low_thresh> (integer)"
12449
12450 #. type: Plain text
12451 #: build/C/man7/ip.7:1040
12452 msgid ""
12453 "If the amount of queued IP fragments reaches I<ipfrag_high_thresh>, the "
12454 "queue is pruned down to I<ipfrag_low_thresh>.  Contains an integer with the "
12455 "number of bytes."
12456 msgstr ""
12457 "キューイングされている IP フラグメントの量が I<ipfrag_high_thresh> に達する"
12458 "と、キューの内容は I<ipfrag_low_thresh> にまで切り捨てられる。それぞれの大き"
12459 "さを バイト単位で表す整数値が入っている。"
12460
12461 #. type: TP
12462 #: build/C/man7/ip.7:1040
12463 #, no-wrap
12464 msgid "I<neigh/*>"
12465 msgstr "I<neigh/*>"
12466
12467 #.  FIXME Document the conf/*/* interfaces
12468 #.  FIXME Document the route/* interfaces
12469 #.  FIXME document them all
12470 #. type: Plain text
12471 #: build/C/man7/ip.7:1047
12472 msgid "See B<arp>(7)."
12473 msgstr "B<arp>(7)  を見よ。"
12474
12475 #.  2006-04-02, mtk
12476 #.  commented out the following because ipchains is obsolete
12477 #.  .PP
12478 #.  The ioctls to configure firewalling are documented in
12479 #.  .BR ipfw (4)
12480 #.  from the
12481 #.  .B ipchains
12482 #.  package.
12483 #. type: Plain text
12484 #: build/C/man7/ip.7:1060
12485 msgid "All ioctls described in B<socket>(7)  apply to B<ip>."
12486 msgstr "B<socket>(7)  に記述されている ioctl は、すべて B<ip> にも適用される。"
12487
12488 #.  FIXME Add a discussion of multicasting
12489 #. type: Plain text
12490 #: build/C/man7/ip.7:1064
12491 msgid ""
12492 "Ioctls to configure generic device parameters are described in B<netdevice>"
12493 "(7)."
12494 msgstr ""
12495 "ジェネリックデバイスのパラメータを設定する ioctl については B<netdevice>(7)  "
12496 "に記述されている。"
12497
12498 #. type: Plain text
12499 #: build/C/man7/ip.7:1084
12500 msgid ""
12501 "The user tried to execute an operation without the necessary permissions.  "
12502 "These include: sending a packet to a broadcast address without having the "
12503 "B<SO_BROADCAST> flag set; sending a packet via a I<prohibit> route; "
12504 "modifying firewall settings without superuser privileges (the "
12505 "B<CAP_NET_ADMIN> capability); binding to a privileged port without superuser "
12506 "privileges (the B<CAP_NET_BIND_SERVICE> capability)."
12507 msgstr ""
12508 "必要な権限のないユーザーが操作を実行しようとした。 以下のような場合が考えられ"
12509 "る: B<SO_BROADCAST> フラグを設定していない状態でブロードキャストアドレスに パ"
12510 "ケットを送ろうとした。 I<prohibit> なルートを通してパケットを送ろうとした。 "
12511 "スーパーユーザー権限 (B<CAP_NET_ADMIN> ケーパビリティ) なしでファイアウォール"
12512 "の設定を変更しようとした。 スーパーユーザー権限 (B<CAP_NET_BIND_SERVICE> ケー"
12513 "パビリティ) なしで特権ポートにバインドしようとした。"
12514
12515 #. type: Plain text
12516 #: build/C/man7/ip.7:1097
12517 msgid "An connection operation on a nonblocking socket is already in progress."
12518 msgstr "非ブロッキングソケットに対する接続操作が既に実行中である。"
12519
12520 #. type: Plain text
12521 #: build/C/man7/ip.7:1106
12522 msgid ""
12523 "No valid routing table entry matches the destination address.  This error "
12524 "can be caused by a ICMP message from a remote router or for the local "
12525 "routing table."
12526 msgstr ""
12527 "宛先アドレスにマッチする有効なエントリがルーティングテーブルに 存在しない。こ"
12528 "のエラーはリモートルータからの、 あるいはローカルルーティングテーブルへの "
12529 "ICMP メッセージによって引き起こされることがある。"
12530
12531 #. type: Plain text
12532 #: build/C/man7/ip.7:1112
12533 msgid ""
12534 "Invalid argument passed.  For send operations this can be caused by sending "
12535 "to a I<blackhole> route."
12536 msgstr ""
12537 "不正な引き数が渡された。送信操作において、 I<blackhole> ルートに送信しようと"
12538 "するとこのエラーが起こることがある。"
12539
12540 #. type: Plain text
12541 #: build/C/man7/ip.7:1119
12542 msgid "Datagram is bigger than an MTU on the path and it cannot be fragmented."
12543 msgstr "データグラムが path MTU よりも大きく、フラグメント化もできない。"
12544
12545 #. type: TP
12546 #: build/C/man7/ip.7:1119
12547 #, no-wrap
12548 msgid "B<ENOBUFS>, B<ENOMEM>"
12549 msgstr "B<ENOBUFS>, B<ENOMEM>"
12550
12551 #. type: Plain text
12552 #: build/C/man7/ip.7:1124
12553 msgid ""
12554 "Not enough free memory.  This often means that the memory allocation is "
12555 "limited by the socket buffer limits, not by the system memory, but this is "
12556 "not 100% consistent."
12557 msgstr ""
12558 "空きメモリが足りない。 このエラーは、メモリアロケーションがソケットバッファ"
12559 "の 大きさによって制限されていることを意味しているのが通常であるが、 100% そう"
12560 "だというわけではない。"
12561
12562 #. type: Plain text
12563 #: build/C/man7/ip.7:1142
12564 msgid ""
12565 "User doesn't have permission to set high priority, change configuration, or "
12566 "send signals to the requested process or group."
12567 msgstr ""
12568 "高い優先度を設定したり、設定を変更したり、要求されたプロセスや プロセスグルー"
12569 "プにシグナルを送ったりするのに必要な権限を、 ユーザーが持っていない。"
12570
12571 #. type: Plain text
12572 #: build/C/man7/ip.7:1148
12573 msgid "The socket is not configured or an unknown socket type was requested."
12574 msgstr "ソケットが未設定であるか、知らないソケットタイプが要求された。"
12575
12576 #. type: Plain text
12577 #: build/C/man7/ip.7:1155
12578 msgid ""
12579 "Other errors may be generated by the overlaying protocols; see B<tcp>(7), "
12580 "B<raw>(7), B<udp>(7)  and B<socket>(7)."
12581 msgstr ""
12582 "他のエラーが上層のプロトコルによって生じるかもしれない。 B<tcp>(7), B<raw>"
12583 "(7), B<udp>(7), B<socket>(7)  などを参照のこと。"
12584
12585 #.  IP_PASSSEC is Linux-specific
12586 #.  IP_XFRM_POLICY is Linux-specific
12587 #.  IP_IPSEC_POLICY is a nonstandard extension, also present on some BSDs
12588 #. type: Plain text
12589 #: build/C/man7/ip.7:1170
12590 msgid ""
12591 "B<IP_FREEBIND>, B<IP_MSFILTER>, B<IP_MTU>, B<IP_MTU_DISCOVER>, "
12592 "B<IP_RECVORIGDSTADDR>, B<IP_PKTINFO>, B<IP_RECVERR>, B<IP_ROUTER_ALERT>, and "
12593 "B<IP_TRANSPARENT> are Linux-specific."
12594 msgstr ""
12595 "B<IP_FREEBIND>, B<IP_MSFILTER>, B<IP_MTU>, B<IP_MTU_DISCOVER>, "
12596 "B<IP_RECVORIGDSTADDR>,\n"
12597 "B<IP_PKTINFO>, B<IP_RECVERR>, B<IP_ROUTER_ALERT>, and B<IP_TRANSPARENT> \n"
12598 "は Linux 固有である。"
12599
12600 #. type: Plain text
12601 #: build/C/man7/ip.7:1179
12602 msgid ""
12603 "Be very careful with the B<SO_BROADCAST> option - it is not privileged in "
12604 "Linux.  It is easy to overload the network with careless broadcasts.  For "
12605 "new application protocols it is better to use a multicast group instead of "
12606 "broadcasting.  Broadcasting is discouraged."
12607 msgstr ""
12608 "B<SO_BROADCAST> オプションの利用には、くれぐれも注意すること。\n"
12609 "これは Linux では特権操作ではない。\n"
12610 "不注意なブロードキャストを行うと、ネットワークは簡単に過負荷状態になる。\n"
12611 "新しいアプリケーションプロトコルには、ブロードキャストではなく\n"
12612 "マルチキャストグループを用いるほうがよい。 ブロードキャストは推奨されない。"
12613
12614 #. type: Plain text
12615 #: build/C/man7/ip.7:1189
12616 msgid ""
12617 "Some other BSD sockets implementations provide B<IP_RCVDSTADDR> and "
12618 "B<IP_RECVIF> socket options to get the destination address and the interface "
12619 "of received datagrams.  Linux has the more general B<IP_PKTINFO> for the "
12620 "same task."
12621 msgstr ""
12622 "他の BSD のソケット実装では、 B<IP_RCVDSTADDR> と B<IP_RECVIF> といったソケッ"
12623 "トオプションがサポートされており、 宛先アドレスや受信データグラムのインター"
12624 "フェースが取得できるように なっていることもある。 Linux で同じことをやらせる"
12625 "には、より一般的な B<IP_PKTINFO> が使える。"
12626
12627 #. type: Plain text
12628 #: build/C/man7/ip.7:1198
12629 msgid ""
12630 "Some BSD sockets implementations also provide an B<IP_RECVTTL> option, but "
12631 "an ancillary message with type B<IP_RECVTTL> is passed with the incoming "
12632 "packet.  This is different from the B<IP_TTL> option used in Linux."
12633 msgstr ""
12634 "いくつかの BSD のソケット実装では B<IP_RECVTTL> オプションも提供されている"
12635 "が、タイプ B<IP_RECVTTL> の補助メッセージは受信パケットとともに渡される。 こ"
12636 "れは Linux で使われている B<IP_TTL> オプションとは異なる動作である。"
12637
12638 #. type: Plain text
12639 #: build/C/man7/ip.7:1204
12640 msgid ""
12641 "Using B<SOL_IP> socket options level isn't portable, BSD-based stacks use "
12642 "B<IPPROTO_IP> level."
12643 msgstr ""
12644 "B<SOL_IP> ソケットオプションレベルは移植性がない。 BSD ベースのプロトコルス"
12645 "タックでは B<IPPROTO_IP> レベルが使用されている。"
12646
12647 #. type: Plain text
12648 #: build/C/man7/ip.7:1217
12649 msgid ""
12650 "For compatibility with Linux 2.0, the obsolete B<socket(AF_INET, "
12651 "SOCK_PACKET, >I<protocol>B<)> syntax is still supported to open a B<packet>"
12652 "(7)  socket.  This is deprecated and should be replaced by B<socket"
12653 "(AF_PACKET, SOCK_RAW, >I<protocol>B<)> instead.  The main difference is the "
12654 "new I<sockaddr_ll> address structure for generic link layer information "
12655 "instead of the old B<sockaddr_pkt>."
12656 msgstr ""
12657 "Linux 2.0 との互換性のために、 obsolete な B<socket(AF_INET, SOCK_PACKET, "
12658 ">I<protocol>B<)> という書式でも B<packet>(7)  をオープンできるようになってい"
12659 "るが、これはお勧めできない。今後は B<socket(AF_PACKET, SOCK_RAW, "
12660 ">I<protocol>B<)> を代わりに用いるべきである。主な違いは、ジェネリックなリンク"
12661 "層用の I<sockaddr_ll> アドレス構造体が、古い B<sockaddr_pkt> に変わって用いら"
12662 "れるようになったことである。"
12663
12664 #. type: Plain text
12665 #: build/C/man7/ip.7:1222
12666 msgid ""
12667 "The ioctls to configure IP-specific interface options and ARP tables are not "
12668 "described."
12669 msgstr ""
12670 "IP 固有のインターフェースオプションを指定するための ioctl と ARP テーブルのこ"
12671 "とが記述されていない。"
12672
12673 #. type: Plain text
12674 #: build/C/man7/ip.7:1226
12675 msgid ""
12676 "Some versions of glibc forget to declare I<in_pktinfo>.  Workaround "
12677 "currently is to copy it into your program from this man page."
12678 msgstr ""
12679 "glibc のバージョンによっては I<in_pktinfo> の定義を忘れているものがある。 現"
12680 "時点でのとりあえずの対策としては、この man ページにある定義をプログラム中に "
12681 "コピーすることである。"
12682
12683 #.  .SH AUTHORS
12684 #.  This man page was written by Andi Kleen.
12685 #. type: Plain text
12686 #: build/C/man7/ip.7:1236
12687 msgid ""
12688 "Receiving the original destination address with B<MSG_ERRQUEUE> in "
12689 "I<msg_name> by B<recvmsg>(2)  does not work in some 2.2 kernels."
12690 msgstr ""
12691 "B<recvmsg>(2)  で I<msg_name> に B<MSG_ERRQUEUE> を指定して、受信パケットに"
12692 "入っていた宛先アドレスを取得する方法は 2.2 カーネルの一部でうまく動かない。"
12693
12694 #. type: Plain text
12695 #: build/C/man7/ip.7:1249
12696 msgid ""
12697 "B<recvmsg>(2), B<sendmsg>(2), B<byteorder>(3), B<ipfw>(4), B<capabilities>"
12698 "(7), B<icmp>(7), B<ipv6>(7), B<netlink>(7), B<raw>(7), B<socket>(7), B<tcp>"
12699 "(7), B<udp>(7)"
12700 msgstr ""
12701 "B<recvmsg>(2), B<sendmsg>(2), B<byteorder>(3), B<ipfw>(4), B<capabilities>"
12702 "(7), B<icmp>(7), B<ipv6>(7), B<netlink>(7), B<raw>(7), B<socket>(7), B<tcp>"
12703 "(7), B<udp>(7)"
12704
12705 #.  FIXME autobind INADDR REUSEADDR
12706 #. type: Plain text
12707 #: build/C/man7/ip.7:1254
12708 msgid ""
12709 "RFC\\ 791 for the original IP specification.  RFC\\ 1122 for the IPv4 host "
12710 "requirements.  RFC\\ 1812 for the IPv4 router requirements."
12711 msgstr ""
12712 "RFC\\ 791: 元々の IP 仕様。 RFC\\ 1122: IPv4 ホストの要件。 RFC\\ 1812: IPv4 "
12713 "ルータの要件。"
12714
12715 #. type: TH
12716 #: build/C/man7/ipv6.7:86
12717 #, no-wrap
12718 msgid "IPV6"
12719 msgstr "IPV6"
12720
12721 #. type: TH
12722 #: build/C/man7/ipv6.7:86
12723 #, no-wrap
12724 msgid "2012-12-16"
12725 msgstr "2012-12-16"
12726
12727 #. type: Plain text
12728 #: build/C/man7/ipv6.7:89
12729 msgid "ipv6 - Linux IPv6 protocol implementation"
12730 msgstr "ipv6 - Linux IPv6 プロトコルの実装"
12731
12732 #. type: Plain text
12733 #: build/C/man7/ipv6.7:95
12734 msgid "I<tcp6_socket>B< = socket(AF_INET6, SOCK_STREAM, 0);>"
12735 msgstr "I<tcp6_socket>B< = socket(AF_INET6, SOCK_STREAM, 0);>"
12736
12737 #. type: Plain text
12738 #: build/C/man7/ipv6.7:97
12739 msgid "I<raw6_socket>B< = socket(AF_INET6, SOCK_RAW, >I<protocol>B<);>"
12740 msgstr "I<raw6_socket>B< = socket(AF_INET6, SOCK_RAW, >I<protocol>B<);>"
12741
12742 #. type: Plain text
12743 #: build/C/man7/ipv6.7:99
12744 msgid "I<udp6_socket>B< = socket(AF_INET6, SOCK_DGRAM, >I<protocol>B<);>"
12745 msgstr "I<udp6_socket>B< = socket(AF_INET6, SOCK_DGRAM, >I<protocol>B<);>"
12746
12747 #. type: Plain text
12748 #: build/C/man7/ipv6.7:106
12749 msgid ""
12750 "Linux 2.2 optionally implements the Internet Protocol, version 6.  This man "
12751 "page contains a description of the IPv6 basic API as implemented by the "
12752 "Linux kernel and glibc 2.1.  The interface is based on the BSD sockets "
12753 "interface; see B<socket>(7)."
12754 msgstr ""
12755 "Linux 2.2 では、Internet Protocol, version 6 を オプションとして実装してい"
12756 "る。 この man ページでは、Linux カーネルと glibc 2.1 での実装に基づいて、 "
12757 "IPv6 の基本的な API を解説する。 インターフェースは BSD ソケットインター"
12758 "フェースをもとにしている。 B<socket>(7)  を参照。"
12759
12760 #. type: Plain text
12761 #: build/C/man7/ipv6.7:111
12762 msgid ""
12763 "The IPv6 API aims to be mostly compatible with the IPv4 API (see B<ip>(7)).  "
12764 "Only differences are described in this man page."
12765 msgstr ""
12766 "IPv6 API は、 IPv4 API (B<ip>(7)  参照) とほぼ互換になることを目指している。 "
12767 "この man ページでは相違点のみを解説する。"
12768
12769 #. type: Plain text
12770 #: build/C/man7/ipv6.7:123
12771 msgid ""
12772 "To bind an B<AF_INET6> socket to any process, the local address should be "
12773 "copied from the I<in6addr_any> variable which has I<in6_addr> type.  In "
12774 "static initializations, B<IN6ADDR_ANY_INIT> may also be used, which expands "
12775 "to a constant expression.  Both of them are in network byte order."
12776 msgstr ""
12777 "B<AF_INET6> ソケットを何らかのプロセスにバインドするには、 ローカルアドレス"
12778 "を I<in6_addr> 型の変数 I<in6addr_any> からコピーしてくる必要がある。 static "
12779 "な初期値 B<IN6ADDR_ANY_INIT> も用いることができ、これは定数式に展開される。 "
12780 "これらの両者はネットワークバイトオーダーである。"
12781
12782 #. type: Plain text
12783 #: build/C/man7/ipv6.7:130
12784 msgid ""
12785 "The IPv6 loopback address (::1) is available in the global "
12786 "I<in6addr_loopback> variable.  For initializations, B<IN6ADDR_LOOPBACK_INIT> "
12787 "should be used."
12788 msgstr ""
12789 "IPv6 のループバックアドレス (::1) は global 変数 I<in6addr_loopback> から取得"
12790 "できる。初期化には B<IN6ADDR_LOOPBACK_INIT> を用いるべきである。"
12791
12792 #. type: Plain text
12793 #: build/C/man7/ipv6.7:137
12794 msgid ""
12795 "IPv4 connections can be handled with the v6 API by using the v4-mapped-on-v6 "
12796 "address type; thus a program only needs to support this API type to support "
12797 "both protocols.  This is handled transparently by the address handling "
12798 "functions in the C library."
12799 msgstr ""
12800 "v4-mapped-on-v6 アドレス型を用いることで、 IPv4 接続も v6 API で扱うことがで"
12801 "きる。 こうすれば、プログラムは v6 の API をサポートするだけで、 両方のプロト"
12802 "コルをサポートできる。 v4-mapped-on-v6 アドレス型は C ライブラリ内部のアドレ"
12803 "スを 扱う関数によって透過的に処理される。"
12804
12805 #. type: Plain text
12806 #: build/C/man7/ipv6.7:142
12807 msgid ""
12808 "IPv4 and IPv6 share the local port space.  When you get an IPv4 connection "
12809 "or packet to a IPv6 socket, its source address will be mapped to v6 and it "
12810 "will be mapped to v6."
12811 msgstr ""
12812 "IPv4 と IPv6 はローカルポート空間を共有する。 IPv4 の接続 (またはパケット) "
12813 "を IPv6 ソケットが取得すると、 発信元アドレスが v6 にマップされ、その接続 (パ"
12814 "ケット) も v6 にマップされる。"
12815
12816 #. type: Plain text
12817 #: build/C/man7/ipv6.7:152
12818 #, no-wrap
12819 msgid ""
12820 "struct sockaddr_in6 {\n"
12821 "    sa_family_t     sin6_family;   /* AF_INET6 */\n"
12822 "    in_port_t       sin6_port;     /* port number */\n"
12823 "    uint32_t        sin6_flowinfo; /* IPv6 flow information */\n"
12824 "    struct in6_addr sin6_addr;     /* IPv6 address */\n"
12825 "    uint32_t        sin6_scope_id; /* Scope ID (new in 2.4) */\n"
12826 "};\n"
12827 msgstr ""
12828 "struct sockaddr_in6 {\n"
12829 "    sa_family_t     sin6_family;   /* AF_INET6 */\n"
12830 "    in_port_t       sin6_port;     /* port number */\n"
12831 "    uint32_t        sin6_flowinfo; /* IPv6 flow information */\n"
12832 "    struct in6_addr sin6_addr;     /* IPv6 address */\n"
12833 "    uint32_t        sin6_scope_id; /* Scope ID (new in 2.4) */\n"
12834 "};\n"
12835
12836 #. type: Plain text
12837 #: build/C/man7/ipv6.7:156
12838 #, no-wrap
12839 msgid ""
12840 "struct in6_addr {\n"
12841 "    unsigned char   s6_addr[16];   /* IPv6 address */\n"
12842 "};\n"
12843 msgstr ""
12844 "struct in6_addr {\n"
12845 "    unsigned char   s6_addr[16];   /* IPv6 address */\n"
12846 "};\n"
12847
12848 #. type: Plain text
12849 #: build/C/man7/ipv6.7:178
12850 msgid ""
12851 "I<sin6_family> is always set to B<AF_INET6>; I<sin6_port> is the protocol "
12852 "port (see I<sin_port> in B<ip>(7)); I<sin6_flowinfo> is the IPv6 flow "
12853 "identifier; I<sin6_addr> is the 128-bit IPv6 address.  I<sin6_scope_id> is "
12854 "an ID depending on the scope of the address.  It is new in Linux 2.4.  Linux "
12855 "supports it only for link-local addresses, in that case I<sin6_scope_id> "
12856 "contains the interface index (see B<netdevice>(7))"
12857 msgstr ""
12858 "I<sin6_family> は常に B<AF_INET6> に設定される。\n"
12859 "I<sin6_port> はプロトコルポートである (B<ip>(7) の I<sin_port> を参照)。\n"
12860 "I<sin6_flowinfo> は IPv6 のフロー指定子 (flow identifier) である。\n"
12861 "I<sin6_addr> は 128 ビットの IPv6 アドレスである。 I<sin6_scope_id> は\n"
12862 "アドレスのスコープに依存した ID である (これは Linux 2.4 で導入された)。\n"
12863 "Linux の場合は、これはリンクローカルアドレスでのみサポートされている。\n"
12864 "この場合 I<sin6_scope_id> にはインターフェースのインデックスが含まれる\n"
12865 "ことになる (B<netdevice>(7) を参照)。"
12866
12867 #. type: Plain text
12868 #: build/C/man7/ipv6.7:184
12869 msgid ""
12870 "IPv6 supports several address types: unicast to address a single host, "
12871 "multicast to address a group of hosts, anycast to address the nearest member "
12872 "of a group of hosts (not implemented in Linux), IPv4-on-IPv6 to address a "
12873 "IPv4 host, and other reserved address types."
12874 msgstr ""
12875 "IPv6 は何種類かのアドレスタイプをサポートしている。 単一のホストをアドレスす"
12876 "るための unicast、 ホストのグループをアドレスするための multicast、 ホストの"
12877 "グループ中で最も近くにいるものをアドレスするための anycast (これは Linux では"
12878 "実装されていない)、 IPv4 ホストをアドレスするための IPv4-on-IPv6。 他にも予約"
12879 "済みのアドレスタイプがある。"
12880
12881 #. type: Plain text
12882 #: build/C/man7/ipv6.7:190
12883 msgid ""
12884 "The address notation for IPv6 is a group of 8 4-digit hexadecimal numbers, "
12885 "separated with a \\(aq:\\(aq.  \\&\"::\" stands for a string of 0 bits.  "
12886 "Special addresses are ::1 for loopback and ::FFFF:E<lt>IPv4 addressE<gt> for "
12887 "IPv4-mapped-on-IPv6."
12888 msgstr ""
12889 "IPv6 でのアドレス表記は 4 桁の 16 進数 8 個からなり、 \\(aq:\\(aq は区切り文"
12890 "字はで、\"::\" は 0 ビットの文字列を表す。 特殊なアドレスとして、ループバック"
12891 "を表す ::1、 IPv4-mapped-on-IPv6 を表す ::FFFF::E<lt>IPv4 アドレスE<gt> があ"
12892 "る。"
12893
12894 #. type: Plain text
12895 #: build/C/man7/ipv6.7:192
12896 msgid "The port space of IPv6 is shared with IPv4."
12897 msgstr "IPv6 のポート空間は IPv4 と共有されている。"
12898
12899 #. type: Plain text
12900 #: build/C/man7/ipv6.7:200
12901 msgid ""
12902 "IPv6 supports some protocol-specific socket options that can be set with "
12903 "B<setsockopt>(2)  and read with B<getsockopt>(2).  The socket option level "
12904 "for IPv6 is B<IPPROTO_IPV6>.  A boolean integer flag is zero when it is "
12905 "false, otherwise true."
12906 msgstr ""
12907 "IPv6 はプロトコル固有のソケットオプションをいくつかサポートしている。 これら"
12908 "は B<setsockopt>(2)  で設定でき、 B<getsockopt>(2)  で取得できる。 IPv6 のソ"
12909 "ケットオプションレベルは B<IPPROTO_IPV6> である。 ブール整数のフラグは、0 が"
12910 "偽であり、それ以外は真である。"
12911
12912 #. type: TP
12913 #: build/C/man7/ipv6.7:200
12914 #, no-wrap
12915 msgid "B<IPV6_ADDRFORM>"
12916 msgstr "B<IPV6_ADDRFORM>"
12917
12918 #. type: Plain text
12919 #: build/C/man7/ipv6.7:214
12920 msgid ""
12921 "Turn an B<AF_INET6> socket into a socket of a different address family.  "
12922 "Only B<AF_INET> is currently supported for that.  It is allowed only for "
12923 "IPv6 sockets that are connected and bound to a v4-mapped-on-v6 address.  The "
12924 "argument is a pointer to an integer containing B<AF_INET>.  This is useful "
12925 "to pass v4-mapped sockets as file descriptors to programs that don't know "
12926 "how to deal with the IPv6 API."
12927 msgstr ""
12928 "B<AF_INET6> ソケットを別のアドレスファミリーのソケットに変える。 現在は "
12929 "B<AF_INET> のみが変更先のアドレスファミリーとしてサポートされている。 これが"
12930 "許可されるのは、IPv6 が接続され、 v4-mapped-on-v6 アドレスにバインドされた場"
12931 "合に限られる。 引き数は B<AF_INET> が入っている整数へのポインタである。 v4-"
12932 "mapped ソケットを、IPv6 API を扱えないプログラムに対して ファイルディスクリプ"
12933 "ターとして渡す場合に便利。"
12934
12935 #. type: TP
12936 #: build/C/man7/ipv6.7:214
12937 #, no-wrap
12938 msgid "B<IPV6_ADD_MEMBERSHIP, IPV6_DROP_MEMBERSHIP>"
12939 msgstr "B<IPV6_ADD_MEMBERSHIP, IPV6_DROP_MEMBERSHIP>"
12940
12941 #. type: Plain text
12942 #: build/C/man7/ipv6.7:219
12943 msgid ""
12944 "Control membership in multicast groups.  Argument is a pointer to a I<struct "
12945 "ipv6_mreq>."
12946 msgstr ""
12947 "multicast グループのメンバーを制御する。 引き数は I<struct ipv6_mreq> 構造体"
12948 "へのポインタ。"
12949
12950 #. type: TP
12951 #: build/C/man7/ipv6.7:219
12952 #, no-wrap
12953 msgid "B<IPV6_MTU>"
12954 msgstr "B<IPV6_MTU>"
12955
12956 #. type: Plain text
12957 #: build/C/man7/ipv6.7:225
12958 msgid ""
12959 "B<getsockopt>(): Retrieve the current known path MTU of the current socket.  "
12960 "Only valid when the socket has been connected.  Returns an integer."
12961 msgstr ""
12962 "B<getsockopt>(): ソケットの、既知の path MTU を取得する。ソケットが接続してい"
12963 "る場合のみ有効である。整数を返す。"
12964
12965 #. type: Plain text
12966 #: build/C/man7/ipv6.7:231
12967 msgid ""
12968 "B<setsockopt>(): Set the MTU to be used for the socket.  The MTU is limited "
12969 "by the device MTU or the path MTU when path MTU discovery is enabled.  "
12970 "Argument is a pointer to integer."
12971 msgstr ""
12972 "B<setsockopt>(): そのソケットに対して用いる MTU の値を設定する。 MTU の大きさ"
12973 "は、 そのデバイスの MTU または (Path MTU Discovery が可能なら) その経路の "
12974 "MTU の大きさ以下でなければならない。 引き数は整数へのポインタ。"
12975
12976 #. type: TP
12977 #: build/C/man7/ipv6.7:231
12978 #, no-wrap
12979 msgid "B<IPV6_MTU_DISCOVER>"
12980 msgstr "B<IPV6_MTU_DISCOVER>"
12981
12982 #. type: Plain text
12983 #: build/C/man7/ipv6.7:239
12984 msgid ""
12985 "Control path-MTU discovery on the socket.  See B<IP_MTU_DISCOVER> in B<ip>"
12986 "(7)  for details."
12987 msgstr ""
12988 "そのソケットでの Path MTU Discovery を制御する。 詳細は B<ip>(7)  の "
12989 "B<IP_MTU_DISCOVER> を参照。"
12990
12991 #. type: TP
12992 #: build/C/man7/ipv6.7:239
12993 #, no-wrap
12994 msgid "B<IPV6_MULTICAST_HOPS>"
12995 msgstr "B<IPV6_MULTICAST_HOPS>"
12996
12997 #. type: Plain text
12998 #: build/C/man7/ipv6.7:246
12999 msgid ""
13000 "Set the multicast hop limit for the socket.  Argument is a pointer to an "
13001 "integer.  -1 in the value means use the route default, otherwise it should "
13002 "be between 0 and 255."
13003 msgstr ""
13004 "そのソケットでの multicast の hop 数の上限値を設定する。 引き数は整数へのポイ"
13005 "ンタである。 -1 を指定すると経路のデフォルトを用いることを意味する。 それ以外"
13006 "の場合は 0 から 255 の範囲を指定する。"
13007
13008 #. type: TP
13009 #: build/C/man7/ipv6.7:246
13010 #, no-wrap
13011 msgid "B<IPV6_MULTICAST_IF>"
13012 msgstr "B<IPV6_MULTICAST_IF>"
13013
13014 #. type: Plain text
13015 #: build/C/man7/ipv6.7:257
13016 msgid ""
13017 "Set the device for outgoing multicast packets on the socket.  This is "
13018 "allowed only for B<SOCK_DGRAM> and B<SOCK_RAW> socket.  The argument is a "
13019 "pointer to an interface index (see B<netdevice>(7))  in an integer."
13020 msgstr ""
13021 "そのソケットでの、送信 multicast パケットに用いるデバイスを設定する。 これは "
13022 "B<SOCK_DGRAM> および B<SOCK_RAW> 各ソケットでのみ許される。 引き数はインター"
13023 "フェースのインデックスの整数値 (B<netdevice>(7)  を参照) へのポインタである。"
13024
13025 #. type: TP
13026 #: build/C/man7/ipv6.7:257
13027 #, no-wrap
13028 msgid "B<IPV6_MULTICAST_LOOP>"
13029 msgstr "B<IPV6_MULTICAST_LOOP>"
13030
13031 #. type: Plain text
13032 #: build/C/man7/ipv6.7:261
13033 msgid ""
13034 "Control whether the socket sees multicast packets that it has send itself.  "
13035 "Argument is a pointer to boolean."
13036 msgstr ""
13037 "ソケットが、自分自身の送信した multicast パケットを監視するかどうかを制御す"
13038 "る。 引き数はブール値へのポインタ。"
13039
13040 #. type: TP
13041 #: build/C/man7/ipv6.7:261
13042 #, no-wrap
13043 msgid "B<IPV6_RECVPKTINFO> (since Linux 2.6.14)"
13044 msgstr "B<IPV6_RECVPKTINFO> (Linux 2.6.14 以降)"
13045
13046 #. type: Plain text
13047 #: build/C/man7/ipv6.7:275
13048 msgid ""
13049 "Set delivery of the B<IPV6_PKTINFO> control message on incoming datagrams.  "
13050 "Such control messages contain a I<struct in6_pktinfo>, as per RFC 3542.  "
13051 "Only allowed for B<SOCK_DGRAM> or B<SOCK_RAW> sockets.  Argument is a "
13052 "pointer to a boolean value in an integer."
13053 msgstr ""
13054 "データグラムの到着時における B<IPV6_PKTINFO> 制御メッセージを配送するかどうか"
13055 "を設定する。 制御メッセージは RFC 3542 に基づき I<struct in6_pktinfo> に格納"
13056 "される。 B<SOCK_DGRAM> ソケットまたは B<SOCK_RAW> ソケットに対してのみ許可さ"
13057 "れる。 引き数はブール値の入った整数。"
13058
13059 #. type: Plain text
13060 #: build/C/man7/ipv6.7:278
13061 #, no-wrap
13062 msgid "B<IPV6_RTHDR, IPV6_AUTHHDR, IPV6_DSTOPTS, IPV6_HOPOPTS, IPV6_FLOWINFO, IPV6_HOPLIMIT>\n"
13063 msgstr "B<IPV6_RTHDR, IPV6_AUTHHDR, IPV6_DSTOPTS, IPV6_HOPOPTS, IPV6_FLOWINFO, IPV6_HOPLIMIT>\n"
13064
13065 #. type: Plain text
13066 #: build/C/man7/ipv6.7:303
13067 msgid ""
13068 "Set delivery of control messages for incoming datagrams containing extension "
13069 "headers from the received packet.  B<IPV6_RTHDR> delivers the routing "
13070 "header, B<IPV6_AUTHHDR> delivers the authentication header, B<IPV6_DSTOPTS> "
13071 "delivers the destination options, B<IPV6_HOPOPTS> delivers the hop options, "
13072 "B<IPV6_FLOWINFO> delivers an integer containing the flow ID, "
13073 "B<IPV6_HOPLIMIT> delivers an integer containing the hop count of the "
13074 "packet.  The control messages have the same type as the socket option.  All "
13075 "these header options can also be set for outgoing packets by putting the "
13076 "appropriate control message into the control buffer of B<sendmsg>(2).  Only "
13077 "allowed for B<SOCK_DGRAM> or B<SOCK_RAW> sockets.  Argument is a pointer to "
13078 "a boolean value."
13079 msgstr ""
13080 "受信パケットのデータグラムに拡張ヘッダが含まれている場合の、 制御メッセージの"
13081 "配送を設定する。 B<IPV6_RTHDR>: routing ヘッダを配送するかどうか。 "
13082 "B<IPV6_AUTHHDR>: authentication ヘッダを配送するかどうか。 B<IPV6_DSTOPTS>: "
13083 "destination オプションを配送するかどうか。 B<IPV6_HOPOPTS>: hop オプションを"
13084 "配送するかどうか。 B<IPV6_FLOWINFO>: flow ID を含む整数を配送するかどうか。 "
13085 "B<IPV6_HOPLIMIT>: パケットの hop カウントを含む整数を配送するかどうか。 制御"
13086 "メッセージはソケットオプションのものと同じタイプを持つ。 これらのすべてのヘッ"
13087 "ダオプションは、 適切な制御メッセージを B<sendmsg>(2)  の制御バッファーに書き"
13088 "こめば、 送信パケットにでも設定できる。 B<SOCK_DGRAM> ソケットまたは "
13089 "B<SOCK_RAW> ソケットでのみ許される。引き数はブール値へのポインタ。"
13090
13091 #. type: TP
13092 #: build/C/man7/ipv6.7:303
13093 #, no-wrap
13094 msgid "B<IPV6_RECVERR>"
13095 msgstr "B<IPV6_RECVERR>"
13096
13097 #. type: Plain text
13098 #: build/C/man7/ipv6.7:312
13099 msgid ""
13100 "Control receiving of asynchronous error options.  See B<IP_RECVERR> in B<ip>"
13101 "(7)  for details.  Argument is a pointer to boolean."
13102 msgstr ""
13103 "非同期エラー (asynchronous error) オプションの受信を制御する。 詳細は B<ip>"
13104 "(7)  の B<IP_RECVERR> を参照。 引き数はブール値へのポインタ。"
13105
13106 #. type: TP
13107 #: build/C/man7/ipv6.7:312
13108 #, no-wrap
13109 msgid "B<IPV6_ROUTER_ALERT>"
13110 msgstr "B<IPV6_ROUTER_ALERT>"
13111
13112 #. type: Plain text
13113 #: build/C/man7/ipv6.7:327
13114 msgid ""
13115 "Pass forwarded packets containing a router alert hop-by-hop option to this "
13116 "socket.  Only allowed for B<SOCK_RAW> sockets.  The tapped packets are not "
13117 "forwarded by the kernel, it is the user's responsibility to send them out "
13118 "again.  Argument is a pointer to an integer.  A positive integer indicates a "
13119 "router alert option value to intercept.  Packets carrying a router alert "
13120 "option with a value field containing this integer will be delivered to the "
13121 "socket.  A negative integer disables delivery of packets with router alert "
13122 "options to this socket."
13123 msgstr ""
13124 "このソケットで、router alert hop-by-hop オプションの付いた転送パケットを 通す"
13125 "かどうかを制御する。 B<SOCK_RAW> ソケットでのみ許可される。 tap されたパケッ"
13126 "トはカーネルによっては転送されない。そうしたパケットを 再度送信するのはユー"
13127 "ザーの責任である。 引き数は整数 (integer) へのポインタ。 正の整数は傍受を行"
13128 "う router alert オプション値を示す。 オプション値がこの整数である router "
13129 "alert オプションの付いたパケットは ソケットに配送される。負の整数を指定する"
13130 "と、このソケットへの router alert オプションの付いたパケットの配送が行われな"
13131 "い。"
13132
13133 #. type: TP
13134 #: build/C/man7/ipv6.7:327
13135 #, no-wrap
13136 msgid "B<IPV6_UNICAST_HOPS>"
13137 msgstr "B<IPV6_UNICAST_HOPS>"
13138
13139 #. type: Plain text
13140 #: build/C/man7/ipv6.7:333
13141 msgid ""
13142 "Set the unicast hop limit for the socket.  Argument is a pointer to an "
13143 "integer.  -1 in the value means use the route default, otherwise it should "
13144 "be between 0 and 255."
13145 msgstr ""
13146 "そのソケットでの unicast の hop 数の上限値を設定する。 引き数は整数へのポイン"
13147 "タである。 -1 を指定すると経路のデフォルトを用いることを意味する。 それ以外の"
13148 "場合は 0 から 255 の範囲を指定する。"
13149
13150 #. type: TP
13151 #: build/C/man7/ipv6.7:333
13152 #, no-wrap
13153 msgid "B<IPV6_V6ONLY> (since Linux 2.4.21 and 2.6)"
13154 msgstr "B<IPV6_V6ONLY> (Linux 2.4.21 以降および 2.6 以降)"
13155
13156 #.  See RFC 3493
13157 #. type: Plain text
13158 #: build/C/man7/ipv6.7:340
13159 msgid ""
13160 "If this flag is set to true (nonzero), then the socket is restricted to "
13161 "sending and receiving IPv6 packets only.  In this case, an IPv4 and an IPv6 "
13162 "application can bind to a single port at the same time."
13163 msgstr ""
13164 "このフラグを真 (0 以外) に設定すると、そのソケットは IPv6 パケットだけを 送受"
13165 "信するように制限される。 この場合、IPv4 アプリケーションと IPv6 アプリケー"
13166 "ションが同時に 一つのポートをバインドできる。"
13167
13168 #. type: Plain text
13169 #: build/C/man7/ipv6.7:344
13170 msgid ""
13171 "If this flag is set to false (zero), then the socket can be used to send and "
13172 "receive packets to and from an IPv6 address or an IPv4-mapped IPv6 address."
13173 msgstr ""
13174 "このフラグを偽 (0) に設定すると、そのソケットはパケットの送受信に IPv6 アドレ"
13175 "スと IPv4-mapped IPv6 アドレスの両方を使用できる。"
13176
13177 #. type: Plain text
13178 #: build/C/man7/ipv6.7:346
13179 msgid "The argument is a pointer to a boolean value in an integer."
13180 msgstr "引き数はブール値の入った整数へのポインタである。"
13181
13182 #.  FLOWLABEL_MGR, FLOWINFO_SEND
13183 #. type: Plain text
13184 #: build/C/man7/ipv6.7:351
13185 msgid ""
13186 "The default value for this flag is defined by the contents of the file I</"
13187 "proc/sys/net/ipv6/bindv6only>.  The default value for that file is 0 (false)."
13188 msgstr ""
13189 "このフラグのデフォルト値はファイル I</proc/sys/net/ipv6/bindv6only> の内容に"
13190 "より定義される。 このファイルのデフォルト値は 0 (偽) である。"
13191
13192 #. type: Plain text
13193 #: build/C/man7/ipv6.7:363
13194 msgid ""
13195 "The user tried to B<bind>(2)  to a link-local IPv6 address, but the "
13196 "I<sin6_scope_id> in the supplied I<sockaddr_in6> structure is not a valid "
13197 "interface index."
13198 msgstr ""
13199 "ユーザがリンクローカルの IPv6 アドレスを B<bind>(2) しようとしたが、\n"
13200 "指定された I<sockaddr_in6> 構造体の I<sin6_scope_id> が\n"
13201 "有効なインターフェースのインデックスでなかった。"
13202
13203 #. type: Plain text
13204 #: build/C/man7/ipv6.7:368
13205 msgid ""
13206 "The older I<libinet6> libc5 based IPv6 API implementation for Linux is not "
13207 "described here and may vary in details."
13208 msgstr ""
13209 "IPv6 API を libc5 ベースで Linux 向けに実装した、以前の I<libinet6> について"
13210 "はここでは記述していない。 おそらく細かいところには相違点があるだろう。"
13211
13212 #. type: Plain text
13213 #: build/C/man7/ipv6.7:384
13214 msgid ""
13215 "Linux 2.4 will break binary compatibility for the I<sockaddr_in6> for 64-bit "
13216 "hosts by changing the alignment of I<in6_addr> and adding an additional "
13217 "I<sin6_scope_id> field.  The kernel interfaces stay compatible, but a "
13218 "program including I<sockaddr_in6> or I<in6_addr> into other structures may "
13219 "not be.  This is not a problem for 32-bit hosts like i386."
13220 msgstr ""
13221 "Linux 2.4 では 64 ビットのホストに対して I<sockaddr_in6> のバイナリ互換性が保"
13222 "たれていない。 I<in6_addr> のアラインメントが変更され、また I<sin6_scope_id> "
13223 "フィールドが新たに追加されたからである。 カーネルインターフェースの互換性は保"
13224 "たれているが、 I<sockaddr_in6> や I<in6_addr> を他の構造体に含んでいるような"
13225 "プログラムでは 保たれないかもしれない。 これは i386 のような 32 ビットのホス"
13226 "トでは問題にならない。"
13227
13228 #. type: Plain text
13229 #: build/C/man7/ipv6.7:392
13230 msgid ""
13231 "The I<sin6_flowinfo> field is new in Linux 2.4.  It is transparently passed/"
13232 "read by the kernel when the passed address length contains it.  Some "
13233 "programs that pass a longer address buffer and then check the outgoing "
13234 "address length may break."
13235 msgstr ""
13236 "I<sin6_flowinfo> フィールドは Linux 2.4 で登場した。 これが渡されたアドレス長"
13237 "に含まれていると、 カーネルに透過的に渡され、読まれる。 より長いアドレスバッ"
13238 "ファを渡し、 そして送信アドレスの長さをチェックするようなプログラムは うまく"
13239 "動かないかもしれない。"
13240
13241 #. type: Plain text
13242 #: build/C/man7/ipv6.7:402
13243 msgid ""
13244 "The I<sockaddr_in6> structure is bigger than the generic I<sockaddr>.  "
13245 "Programs that assume that all address types can be stored safely in a "
13246 "I<struct sockaddr> need to be changed to use I<struct sockaddr_storage> for "
13247 "that instead."
13248 msgstr ""
13249 "I<sockaddr_in6> 構造体はジェネリックな I<sockaddr> よりも大きい。 すべてのア"
13250 "ドレスタイプが I<struct sockaddr> の中に安全に納められると仮定しているプログ"
13251 "ラムは、代わりに I<struct sockaddr_storage> を用いるように変更する必要があ"
13252 "る。"
13253
13254 #. type: Plain text
13255 #: build/C/man7/ipv6.7:407
13256 msgid ""
13257 "The IPv6 extended API as in RFC\\ 2292 is currently only partly implemented; "
13258 "although the 2.2 kernel has near complete support for receiving options, the "
13259 "macros for generating IPv6 options are missing in glibc 2.1."
13260 msgstr ""
13261 "IPv6 拡張 API は、現在まだ RFC\\ 2292 を完全には実装していない。 2.2 カーネル"
13262 "は受信オプションをほぼ完全にサポートサポートしているが、 glibc2.1 には IPv6 "
13263 "オプションを生成するマクロが存在していない。"
13264
13265 #. type: Plain text
13266 #: build/C/man7/ipv6.7:409
13267 msgid "IPSec support for EH and AH headers is missing."
13268 msgstr "EH および AH ヘッダ での IPSec のサポートは存在しない。"
13269
13270 #. type: Plain text
13271 #: build/C/man7/ipv6.7:411
13272 msgid "Flow label management is not complete and not documented here."
13273 msgstr "フローラベル管理はまだ完全でなく、ここにも記述されていない。"
13274
13275 #. type: Plain text
13276 #: build/C/man7/ipv6.7:413
13277 msgid "This man page is not complete."
13278 msgstr "この man ページはまだ完成していない。"
13279
13280 #. type: Plain text
13281 #: build/C/man7/ipv6.7:416
13282 msgid "B<cmsg>(3), B<ip>(7)"
13283 msgstr "B<cmsg>(3), B<ip>(7)"
13284
13285 #. type: Plain text
13286 #: build/C/man7/ipv6.7:420
13287 msgid ""
13288 "RFC\\ 2553: IPv6 BASIC API; Linux tries to be compliant to this.  RFC\\ "
13289 "2460: IPv6 specification."
13290 msgstr ""
13291 "RFC\\ 2553: IPv6 BASIC API; Linux はこの RFC に準拠するようにしている。 RFC"
13292 "\\ 2460: IPv6 specification."
13293
13294 #. type: TH
13295 #: build/C/man7/netdevice.7:18
13296 #, no-wrap
13297 msgid "NETDEVICE"
13298 msgstr "NETDEVICE"
13299
13300 #. type: TH
13301 #: build/C/man7/netdevice.7:18
13302 #, no-wrap
13303 msgid "2014-01-24"
13304 msgstr "2014-01-24"
13305
13306 #. type: Plain text
13307 #: build/C/man7/netdevice.7:21
13308 msgid "netdevice - low-level access to Linux network devices"
13309 msgstr "netdevice - Linux ネットワークデバイスへの低レベルアクセス"
13310
13311 #. type: Plain text
13312 #: build/C/man7/netdevice.7:23
13313 msgid "B<#include E<lt>sys/ioctl.hE<gt>>"
13314 msgstr "B<#include E<lt>sys/ioctl.hE<gt>>"
13315
13316 #. type: Plain text
13317 #: build/C/man7/netdevice.7:25
13318 msgid "B<#include E<lt>net/if.hE<gt>>"
13319 msgstr "B<#include E<lt>net/if.hE<gt>>"
13320
13321 #. type: Plain text
13322 #: build/C/man7/netdevice.7:28
13323 msgid ""
13324 "This man page describes the sockets interface which is used to configure "
13325 "network devices."
13326 msgstr ""
13327 "この man ページでは、ネットワークデバイスを設定するために 用いるソケットイン"
13328 "ターフェースについて解説する。"
13329
13330 #. type: Plain text
13331 #: build/C/man7/netdevice.7:35
13332 msgid ""
13333 "Linux supports some standard ioctls to configure network devices.  They can "
13334 "be used on any socket's file descriptor regardless of the family or type.  "
13335 "Most of them pass an I<ifreq> structure:"
13336 msgstr "Linux はネットワークデバイスを設定するための標準的な ioctl を いくつか備えている。これらはどんなソケットのファイルディスクリプタにも 用いることができる。ファミリーやタイプは何でもよい。 これらの ioctl のほとんどは I<ifreq> 構造体を渡す。"
13337
13338 #. type: Plain text
13339 #: build/C/man7/netdevice.7:56
13340 #, no-wrap
13341 msgid ""
13342 "struct ifreq {\n"
13343 "    char ifr_name[IFNAMSIZ]; /* Interface name */\n"
13344 "    union {\n"
13345 "        struct sockaddr ifr_addr;\n"
13346 "        struct sockaddr ifr_dstaddr;\n"
13347 "        struct sockaddr ifr_broadaddr;\n"
13348 "        struct sockaddr ifr_netmask;\n"
13349 "        struct sockaddr ifr_hwaddr;\n"
13350 "        short           ifr_flags;\n"
13351 "        int             ifr_ifindex;\n"
13352 "        int             ifr_metric;\n"
13353 "        int             ifr_mtu;\n"
13354 "        struct ifmap    ifr_map;\n"
13355 "        char            ifr_slave[IFNAMSIZ];\n"
13356 "        char            ifr_newname[IFNAMSIZ];\n"
13357 "        char           *ifr_data;\n"
13358 "    };\n"
13359 "};\n"
13360 msgstr ""
13361 "struct ifreq {\n"
13362 "    char ifr_name[IFNAMSIZ]; /* Interface name */\n"
13363 "    union {\n"
13364 "        struct sockaddr ifr_addr;\n"
13365 "        struct sockaddr ifr_dstaddr;\n"
13366 "        struct sockaddr ifr_broadaddr;\n"
13367 "        struct sockaddr ifr_netmask;\n"
13368 "        struct sockaddr ifr_hwaddr;\n"
13369 "        short           ifr_flags;\n"
13370 "        int             ifr_ifindex;\n"
13371 "        int             ifr_metric;\n"
13372 "        int             ifr_mtu;\n"
13373 "        struct ifmap    ifr_map;\n"
13374 "        char            ifr_slave[IFNAMSIZ];\n"
13375 "        char            ifr_newname[IFNAMSIZ];\n"
13376 "        char           *ifr_data;\n"
13377 "    };\n"
13378 "};\n"
13379
13380 #. type: Plain text
13381 #: build/C/man7/netdevice.7:64
13382 msgid ""
13383 "Normally, the user specifies which device to affect by setting I<ifr_name> "
13384 "to the name of the interface.  All other members of the structure may share "
13385 "memory."
13386 msgstr ""
13387 "通常、ユーザーによる設定対象デバイスの指定は、 I<ifr_name> にインターフェース"
13388 "の名前をセットすることによって行う。 他の構造体の全てのメンバは、メモリを共有"
13389 "する。"
13390
13391 #. type: Plain text
13392 #: build/C/man7/netdevice.7:72
13393 msgid ""
13394 "If an ioctl is marked as privileged, then using it requires an effective "
13395 "user ID of 0 or the B<CAP_NET_ADMIN> capability.  If this is not the case "
13396 "B<EPERM> will be returned."
13397 msgstr ""
13398 "「特権が必要」と記述されている ioctl を実行するには、 実効ユーザー ID が 0 "
13399 "か、 B<CAP_NET_ADMIN> 権限が必要である。これが満たされていない場合は "
13400 "B<EPERM> が返される。"
13401
13402 #. type: TP
13403 #: build/C/man7/netdevice.7:72
13404 #, no-wrap
13405 msgid "B<SIOCGIFNAME>"
13406 msgstr "B<SIOCGIFNAME>"
13407
13408 #. type: Plain text
13409 #: build/C/man7/netdevice.7:80
13410 msgid ""
13411 "Given the I<ifr_ifindex>, return the name of the interface in I<ifr_name>.  "
13412 "This is the only ioctl which returns its result in I<ifr_name>."
13413 msgstr ""
13414 "I<ifr_ifindex> を受け取り、インターフェースの名前を I<ifr_name> に入れて返"
13415 "す。これは結果を I<ifr_name> として返す唯一の ioctl である。"
13416
13417 #. type: TP
13418 #: build/C/man7/netdevice.7:80
13419 #, no-wrap
13420 msgid "B<SIOCGIFINDEX>"
13421 msgstr "B<SIOCGIFINDEX>"
13422
13423 #. type: Plain text
13424 #: build/C/man7/netdevice.7:84
13425 msgid "Retrieve the interface index of the interface into I<ifr_ifindex>."
13426 msgstr ""
13427 "インターフェースの interface index を取得し、 I<ifr_ifindex> に入れて返す。"
13428
13429 #. type: TP
13430 #: build/C/man7/netdevice.7:84
13431 #, no-wrap
13432 msgid "B<SIOCGIFFLAGS>, B<SIOCSIFFLAGS>"
13433 msgstr "B<SIOCGIFFLAGS>, B<SIOCSIFFLAGS>"
13434
13435 #.  Do not right adjust text blocks in tables
13436 #. type: Plain text
13437 #: build/C/man7/netdevice.7:90
13438 msgid ""
13439 "Get or set the active flag word of the device.  I<ifr_flags> contains a bit "
13440 "mask of the following values:"
13441 msgstr ""
13442 "デバイスの active フラグワードを取得または設定する。 I<ifr_flags> には以下の"
13443 "値のビットマスクが入る。"
13444
13445 #. type: tbl table
13446 #: build/C/man7/netdevice.7:95
13447 #, no-wrap
13448 msgid "Device flags\n"
13449 msgstr "デバイスフラグ\n"
13450
13451 #. type: tbl table
13452 #: build/C/man7/netdevice.7:96
13453 #, no-wrap
13454 msgid "IFF_UP:Interface is running.\n"
13455 msgstr "IFF_UP:インターフェースは動作中。\n"
13456
13457 #. type: tbl table
13458 #: build/C/man7/netdevice.7:97
13459 #, no-wrap
13460 msgid "IFF_BROADCAST:Valid broadcast address set.\n"
13461 msgstr "IFF_BROADCAST:有効なブロードキャストアドレスがセットされている。\n"
13462
13463 #. type: tbl table
13464 #: build/C/man7/netdevice.7:98
13465 #, no-wrap
13466 msgid "IFF_DEBUG:Internal debugging flag.\n"
13467 msgstr "IFF_DEBUG:内部のデバッグフラグ。\n"
13468
13469 #. type: tbl table
13470 #: build/C/man7/netdevice.7:99
13471 #, no-wrap
13472 msgid "IFF_LOOPBACK:Interface is a loopback interface.\n"
13473 msgstr "IFF_LOOPBACK:インターフェースはループバックである。\n"
13474
13475 #. type: tbl table
13476 #: build/C/man7/netdevice.7:100
13477 #, no-wrap
13478 msgid "IFF_POINTOPOINT:Interface is a point-to-point link.\n"
13479 msgstr "IFF_POINTOPOINT:インターフェースは point-to-point リンクである。\n"
13480
13481 #. type: tbl table
13482 #: build/C/man7/netdevice.7:101
13483 #, no-wrap
13484 msgid "IFF_RUNNING:Resources allocated.\n"
13485 msgstr "IFF_RUNNING:リソースが割り当て済み。\n"
13486
13487 #. type: tbl table
13488 #: build/C/man7/netdevice.7:102
13489 #, no-wrap
13490 msgid "IFF_NOARP:T{\n"
13491 msgstr "IFF_NOARP:T{\n"
13492
13493 #. type: tbl table
13494 #: build/C/man7/netdevice.7:103
13495 #, no-wrap
13496 msgid "No arp protocol, L2 destination address not set.\n"
13497 msgstr "arp プロトコルがない。 L2 宛先アドレスが設定されていない。\n"
13498
13499 #. type: tbl table
13500 #: build/C/man7/netdevice.7:104 build/C/man7/netdevice.7:115
13501 #, no-wrap
13502 msgid "T}\n"
13503 msgstr "T}\n"
13504
13505 #. type: tbl table
13506 #: build/C/man7/netdevice.7:105
13507 #, no-wrap
13508 msgid "IFF_PROMISC:Interface is in promiscuous mode.\n"
13509 msgstr "IFF_PROMISC:インターフェースは promiscuous モードである。\n"
13510
13511 #. type: tbl table
13512 #: build/C/man7/netdevice.7:106
13513 #, no-wrap
13514 msgid "IFF_NOTRAILERS:Avoid use of trailers.\n"
13515 msgstr "IFF_NOTRAILERS:trailer の利用を避ける。\n"
13516
13517 #. type: tbl table
13518 #: build/C/man7/netdevice.7:107
13519 #, no-wrap
13520 msgid "IFF_ALLMULTI:Receive all multicast packets.\n"
13521 msgstr "IFF_ALLMULTI:全てのマルチキャストパケットを受信する。\n"
13522
13523 #. type: tbl table
13524 #: build/C/man7/netdevice.7:108
13525 #, no-wrap
13526 msgid "IFF_MASTER:Master of a load balancing bundle.\n"
13527 msgstr "IFF_MASTER:負荷分散グループのマスターである。\n"
13528
13529 #. type: tbl table
13530 #: build/C/man7/netdevice.7:109
13531 #, no-wrap
13532 msgid "IFF_SLAVE:Slave of a load balancing bundle.\n"
13533 msgstr "IFF_SLAVE:負荷分散グループのスレーブである。\n"
13534
13535 #. type: tbl table
13536 #: build/C/man7/netdevice.7:110
13537 #, no-wrap
13538 msgid "IFF_MULTICAST:Supports multicast\n"
13539 msgstr "IFF_MULTICAST:マルチキャストをサポートしている。\n"
13540
13541 #. type: tbl table
13542 #: build/C/man7/netdevice.7:111
13543 #, no-wrap
13544 msgid "IFF_PORTSEL:Is able to select media type via ifmap.\n"
13545 msgstr "IFF_PORTSEL:ifmap によってメディアタイプを選択できる。\n"
13546
13547 #. type: tbl table
13548 #: build/C/man7/netdevice.7:112
13549 #, no-wrap
13550 msgid "IFF_AUTOMEDIA:Auto media selection active.\n"
13551 msgstr "IFF_AUTOMEDIA:自動メディア選択が有効になっている。\n"
13552
13553 #. type: tbl table
13554 #: build/C/man7/netdevice.7:113
13555 #, no-wrap
13556 msgid "IFF_DYNAMIC:T{\n"
13557 msgstr "IFF_DYNAMIC:T{\n"
13558
13559 #. type: tbl table
13560 #: build/C/man7/netdevice.7:114
13561 #, no-wrap
13562 msgid "The addresses are lost when the interface goes down.\n"
13563 msgstr "このインターフェースが閉じると、アドレスは失われる。\n"
13564
13565 #. type: tbl table
13566 #: build/C/man7/netdevice.7:116
13567 #, no-wrap
13568 msgid "IFF_LOWER_UP:Driver signals L1 up (since Linux 2.6.17)\n"
13569 msgstr "IFF_LOWER_UP:ドライバからの L1 アップの通知 (Linux 2.6.17 以降)\n"
13570
13571 #. type: tbl table
13572 #: build/C/man7/netdevice.7:117
13573 #, no-wrap
13574 msgid "IFF_DORMANT:Driver signals dormant (since Linux 2.6.17)\n"
13575 msgstr "IFF_DORMANT:ドライバからの休止状態の通知 (Linux 2.6.17 以降)\n"
13576
13577 #. type: tbl table
13578 #: build/C/man7/netdevice.7:118
13579 #, no-wrap
13580 msgid "IFF_ECHO:Echo sent packets (since Linux 2.6.25)\n"
13581 msgstr "IFF_ECHO:送られたパケットをエコーする (Linux 2.6.25 以降)\n"
13582
13583 #. type: Plain text
13584 #: build/C/man7/netdevice.7:124
13585 msgid ""
13586 "Setting the active flag word is a privileged operation, but any process may "
13587 "read it."
13588 msgstr ""
13589 "active フラグワードの設定は特権が必要な操作である。\n"
13590 "読み出しはどんなプロセスからも可能である。"
13591
13592 #. type: TP
13593 #: build/C/man7/netdevice.7:124
13594 #, no-wrap
13595 msgid "B<SIOCGIFPFLAGS>, B<SIOCSIFPFLAGS>"
13596 msgstr "B<SIOCGIFPFLAGS>, B<SIOCSIFPFLAGS>"
13597
13598 #. type: Plain text
13599 #: build/C/man7/netdevice.7:129
13600 msgid ""
13601 "Get or set extended (private) flags for the device.  I<ifr_flags> contains a "
13602 "bit mask of the following values:"
13603 msgstr ""
13604 "デバイスの拡張 (プライベート) フラグを取得または設定する。\n"
13605 "I<ifr_flags> には以下の値のビットマスクが入る。"
13606
13607 #. type: tbl table
13608 #: build/C/man7/netdevice.7:133
13609 #, no-wrap
13610 msgid "Private flags\n"
13611 msgstr "プライベートフラグ\n"
13612
13613 #. type: tbl table
13614 #: build/C/man7/netdevice.7:134
13615 #, no-wrap
13616 msgid "IFF_802_1Q_VLAN:Interface is 802.1Q VLAN device.\n"
13617 msgstr "IFF_802_1Q_VLAN:インターフェースは 802.1Q VLAN デバイスである。\n"
13618
13619 #. type: tbl table
13620 #: build/C/man7/netdevice.7:135
13621 #, no-wrap
13622 msgid "IFF_EBRIDGE:Interface is Ethernet bridging device.\n"
13623 msgstr "IFF_EBRIDGE:インターフェースは Ethernet ブリッジデバイスである。\n"
13624
13625 #. type: tbl table
13626 #: build/C/man7/netdevice.7:136
13627 #, no-wrap
13628 msgid "IFF_SLAVE_INACTIVE:Interface is inactive bonding slave.\n"
13629 msgstr "IFF_SLAVE_INACTIVE:インターフェースは非アクティブな bonding のスレーブである。\n"
13630
13631 #. type: tbl table
13632 #: build/C/man7/netdevice.7:137
13633 #, no-wrap
13634 msgid "IFF_MASTER_8023AD:Interface is 802.3ad bonding master.\n"
13635 msgstr "IFF_MASTER_8023AD:インターフェースは 802.3ad bonding のマスターである。\n"
13636
13637 #. type: tbl table
13638 #: build/C/man7/netdevice.7:138
13639 #, no-wrap
13640 msgid "IFF_MASTER_ALB:Interface is balanced-alb bonding master.\n"
13641 msgstr "IFF_MASTER_ALB:インターフェースは balanced-alb bonding のマスターである。\n"
13642
13643 #. type: tbl table
13644 #: build/C/man7/netdevice.7:139
13645 #, no-wrap
13646 msgid "IFF_BONDING:Interface is a bonding master or slave.\n"
13647 msgstr "IFF_BONDING:インターフェースは bonding のマスターかスレーブである。\n"
13648
13649 #. type: tbl table
13650 #: build/C/man7/netdevice.7:140
13651 #, no-wrap
13652 msgid "IFF_SLAVE_NEEDARP:Interface needs ARPs for validation.\n"
13653 msgstr "IFF_SLAVE_NEEDARP:インターフェースは検証に APR が必要である。\n"
13654
13655 #. type: tbl table
13656 #: build/C/man7/netdevice.7:141
13657 #, no-wrap
13658 msgid "IFF_ISATAP:Interface is RFC4214 ISATAP interface.\n"
13659 msgstr "IFF_ISATAP:インターフェースは RFC4214 ISATAP インターフェースである。\n"
13660
13661 #. type: Plain text
13662 #: build/C/man7/netdevice.7:145
13663 msgid ""
13664 "Setting the extended (private) interface flags is a privileged operation."
13665 msgstr "拡張 (プライベート) インターフェースフラグの設定には特権が必要である。"
13666
13667 #. type: TP
13668 #: build/C/man7/netdevice.7:145
13669 #, no-wrap
13670 msgid "B<SIOCGIFADDR>, B<SIOCSIFADDR>"
13671 msgstr "B<SIOCGIFADDR>, B<SIOCSIFADDR>"
13672
13673 #. type: Plain text
13674 #: build/C/man7/netdevice.7:153
13675 msgid ""
13676 "Get or set the address of the device using I<ifr_addr>.  Setting the "
13677 "interface address is a privileged operation.  For compatibility, only "
13678 "B<AF_INET> addresses are accepted or returned."
13679 msgstr ""
13680 "I<ifr_addr> を用いてデバイスのアドレスの設定/取得を行う。\n"
13681 "インターフェースのアドレスの設定は特権が必要な操作である。\n"
13682 "互換性確保のため、設定/取得ができるのは B<AF_INET> アドレスだけである。"
13683
13684 #. type: TP
13685 #: build/C/man7/netdevice.7:153
13686 #, no-wrap
13687 msgid "B<SIOCGIFDSTADDR>, B<SIOCSIFDSTADDR>"
13688 msgstr "B<SIOCGIFDSTADDR>, B<SIOCSIFDSTADDR>"
13689
13690 #. type: Plain text
13691 #: build/C/man7/netdevice.7:161
13692 msgid ""
13693 "Get or set the destination address of a point-to-point device using "
13694 "I<ifr_dstaddr>.  For compatibility, only B<AF_INET> addresses are accepted "
13695 "or returned.  Setting the destination address is a privileged operation."
13696 msgstr ""
13697 "point-to-point デバイスの宛先アドレスを I<ifr_dstaddr> を用いて\n"
13698 "設定/取得する。互換性確保のため、\n"
13699 "設定/取得ができるのは B<AF_INET> アドレスだけである。\n"
13700 "宛先アドレスの設定は特権が必要な操作である。"
13701
13702 #. type: TP
13703 #: build/C/man7/netdevice.7:161
13704 #, no-wrap
13705 msgid "B<SIOCGIFBRDADDR>, B<SIOCSIFBRDADDR>"
13706 msgstr "B<SIOCGIFBRDADDR>, B<SIOCSIFBRDADDR>"
13707
13708 #. type: Plain text
13709 #: build/C/man7/netdevice.7:169
13710 msgid ""
13711 "Get or set the broadcast address for a device using I<ifr_brdaddr>.  For "
13712 "compatibility, only B<AF_INET> addresses are accepted or returned.  Setting "
13713 "the broadcast address is a privileged operation."
13714 msgstr ""
13715 "デバイスのブロードキャストアドレスを I<ifr_brdaddr> を用いて\n"
13716 "設定/取得する。互換性確保のため、\n"
13717 "設定/取得ができるのは B<AF_INET> アドレスだけである。\n"
13718 "ブロードキャストアドレスの設定は特権が必要な操作である。"
13719
13720 #. type: TP
13721 #: build/C/man7/netdevice.7:169
13722 #, no-wrap
13723 msgid "B<SIOCGIFNETMASK>, B<SIOCSIFNETMASK>"
13724 msgstr "B<SIOCGIFNETMASK>, B<SIOCSIFNETMASK>"
13725
13726 #. type: Plain text
13727 #: build/C/man7/netdevice.7:177
13728 msgid ""
13729 "Get or set the network mask for a device using I<ifr_netmask>.  For "
13730 "compatibility, only B<AF_INET> addresses are accepted or returned.  Setting "
13731 "the network mask is a privileged operation."
13732 msgstr ""
13733 "デバイスのネットワークマスクを I<ifr_netmask> を用いて\n"
13734 "設定/取得する。互換性確保のため、\n"
13735 "設定/取得ができるのは B<AF_INET> アドレスだけである。\n"
13736 "ネットワークマスクの設定は特権が必要な操作である。"
13737
13738 #. type: TP
13739 #: build/C/man7/netdevice.7:177
13740 #, no-wrap
13741 msgid "B<SIOCGIFMETRIC>, B<SIOCSIFMETRIC>"
13742 msgstr "B<SIOCGIFMETRIC>, B<SIOCSIFMETRIC>"
13743
13744 #. type: Plain text
13745 #: build/C/man7/netdevice.7:186
13746 msgid ""
13747 "Get or set the metric of the device using I<ifr_metric>.  This is currently "
13748 "not implemented; it sets I<ifr_metric> to 0 if you attempt to read it and "
13749 "returns B<EOPNOTSUPP> if you attempt to set it."
13750 msgstr ""
13751 "デバイスのメトリックを I<ifr_metric> を用いて取得・設定する。 これはまだ実装"
13752 "されていない。読み出そうとすると I<ifr_metric> に 0 をセットして返り、設定し"
13753 "ようとすると B<EOPNOTSUPP> が返る。"
13754
13755 #. type: TP
13756 #: build/C/man7/netdevice.7:186
13757 #, no-wrap
13758 msgid "B<SIOCGIFMTU>, B<SIOCSIFMTU>"
13759 msgstr "B<SIOCGIFMTU>, B<SIOCSIFMTU>"
13760
13761 #. type: Plain text
13762 #: build/C/man7/netdevice.7:193
13763 msgid ""
13764 "Get or set the MTU (Maximum Transfer Unit) of a device using I<ifr_mtu>.  "
13765 "Setting the MTU is a privileged operation.  Setting the MTU to too small "
13766 "values may cause kernel crashes."
13767 msgstr ""
13768 "デバイスの MTU (Maximum Transfer Unit) を I<ifr_mtu> を用いて取得・設定す"
13769 "る。 MTU の設定は特権が必要な操作である。 MTU の値を小さくしすぎるとカーネル"
13770 "がクラッシュするかもしれない。"
13771
13772 #. type: TP
13773 #: build/C/man7/netdevice.7:193
13774 #, no-wrap
13775 msgid "B<SIOCGIFHWADDR>, B<SIOCSIFHWADDR>"
13776 msgstr "B<SIOCGIFHWADDR>, B<SIOCSIFHWADDR>"
13777
13778 #. type: Plain text
13779 #: build/C/man7/netdevice.7:204
13780 msgid ""
13781 "Get or set the hardware address of a device using I<ifr_hwaddr>.  The "
13782 "hardware address is specified in a struct I<sockaddr>.  I<sa_family> "
13783 "contains the ARPHRD_* device type, I<sa_data> the L2 hardware address "
13784 "starting from byte 0.  Setting the hardware address is a privileged "
13785 "operation."
13786 msgstr ""
13787 "デバイスのハードウェアアドレスを I<ifr_hwaddr> を用いて取得・設定する。 ハー"
13788 "ドウェアアドレスは I<sockaddr> 構造体に設定される。 I<sa_family> には "
13789 "ARPHRD_* デバイスタイプが入り、 I<sa_data> にはバイト 0 から始まる L2 ハード"
13790 "ウェアアドレスが入る。 ハードウェアアドレスの設定は特権が必要な操作である。"
13791
13792 #. type: TP
13793 #: build/C/man7/netdevice.7:204
13794 #, no-wrap
13795 msgid "B<SIOCSIFHWBROADCAST>"
13796 msgstr "B<SIOCSIFHWBROADCAST>"
13797
13798 #. type: Plain text
13799 #: build/C/man7/netdevice.7:209
13800 msgid ""
13801 "Set the hardware broadcast address of a device from I<ifr_hwaddr>.  This is "
13802 "a privileged operation."
13803 msgstr ""
13804 "デバイスのハードウェアブロードキャストアドレスを I<ifr_hwaddr> の値に設定す"
13805 "る。この操作には特権が必要である。"
13806
13807 #. type: TP
13808 #: build/C/man7/netdevice.7:209
13809 #, no-wrap
13810 msgid "B<SIOCGIFMAP>, B<SIOCSIFMAP>"
13811 msgstr "B<SIOCGIFMAP>, B<SIOCSIFMAP>"
13812
13813 #. type: Plain text
13814 #: build/C/man7/netdevice.7:214
13815 msgid ""
13816 "Get or set the interface's hardware parameters using I<ifr_map>.  Setting "
13817 "the parameters is a privileged operation."
13818 msgstr ""
13819 "インターフェースのハードウェアのパラメータを I<ifr_map> を用いて取得・設定す"
13820 "る。 パラメータの設定は特権が必要な操作である。"
13821
13822 #. type: Plain text
13823 #: build/C/man7/netdevice.7:225
13824 #, no-wrap
13825 msgid ""
13826 "struct ifmap {\n"
13827 "    unsigned long   mem_start;\n"
13828 "    unsigned long   mem_end;\n"
13829 "    unsigned short  base_addr;\n"
13830 "    unsigned char   irq;\n"
13831 "    unsigned char   dma;\n"
13832 "    unsigned char   port;\n"
13833 "};\n"
13834 msgstr ""
13835 "struct ifmap {\n"
13836 "    unsigned long   mem_start;\n"
13837 "    unsigned long   mem_end;\n"
13838 "    unsigned short  base_addr;\n"
13839 "    unsigned char   irq;\n"
13840 "    unsigned char   dma;\n"
13841 "    unsigned char   port;\n"
13842 "};\n"
13843
13844 #. type: Plain text
13845 #: build/C/man7/netdevice.7:230
13846 msgid ""
13847 "The interpretation of the ifmap structure depends on the device driver and "
13848 "the architecture."
13849 msgstr "ifmap 構造体の解釈はデバイスドライバとアーキテクチャに依存する。"
13850
13851 #. type: TP
13852 #: build/C/man7/netdevice.7:230
13853 #, no-wrap
13854 msgid "B<SIOCADDMULTI>, B<SIOCDELMULTI>"
13855 msgstr "B<SIOCADDMULTI>, B<SIOCDELMULTI>"
13856
13857 #. type: Plain text
13858 #: build/C/man7/netdevice.7:239
13859 msgid ""
13860 "Add an address to or delete an address from the device's link layer "
13861 "multicast filters using I<ifr_hwaddr>.  These are privileged operations.  "
13862 "See also B<packet>(7)  for an alternative."
13863 msgstr ""
13864 "デバイスのリンク層のマルチキャストフィルターから、 I<ifr_hwaddr> のアドレスを"
13865 "追加・削除する。これらの操作には特権が必要である。 別の方法が B<packet>(7)  "
13866 "で解説されている。"
13867
13868 #. type: TP
13869 #: build/C/man7/netdevice.7:239
13870 #, no-wrap
13871 msgid "B<SIOCGIFTXQLEN>, B<SIOCSIFTXQLEN>"
13872 msgstr "B<SIOCGIFTXQLEN>, B<SIOCSIFTXQLEN>"
13873
13874 #. type: Plain text
13875 #: build/C/man7/netdevice.7:244
13876 msgid ""
13877 "Get or set the transmit queue length of a device using I<ifr_qlen>.  Setting "
13878 "the transmit queue length is a privileged operation."
13879 msgstr ""
13880 "デバイスの送信キューの長さを I<ifr_qlen> に取得・設定する。送信キューの長さの"
13881 "設定には特権が必要である。"
13882
13883 #. type: TP
13884 #: build/C/man7/netdevice.7:244
13885 #, no-wrap
13886 msgid "B<SIOCSIFNAME>"
13887 msgstr "B<SIOCSIFNAME>"
13888
13889 #. type: Plain text
13890 #: build/C/man7/netdevice.7:253
13891 msgid ""
13892 "Changes the name of the interface specified in I<ifr_name> to "
13893 "I<ifr_newname>.  This is a privileged operation.  It is allowed only when "
13894 "the interface is not up."
13895 msgstr ""
13896 "I<ifr_name> で指定したインターフェースの名前を I<ifr_newname> に変更する。こ"
13897 "の操作には特権が必要である。インターフェースが up していない 時にのみ使用でき"
13898 "る。"
13899
13900 #. type: TP
13901 #: build/C/man7/netdevice.7:253
13902 #, no-wrap
13903 msgid "B<SIOCGIFCONF>"
13904 msgstr "B<SIOCGIFCONF>"
13905
13906 #. type: Plain text
13907 #: build/C/man7/netdevice.7:263
13908 msgid ""
13909 "Return a list of interface (transport layer) addresses.  This currently "
13910 "means only addresses of the B<AF_INET> (IPv4) family for compatibility.  "
13911 "Unlike the others, this ioctl passes an I<ifconf> structure:"
13912 msgstr ""
13913
13914 #. type: Plain text
13915 #: build/C/man7/netdevice.7:273
13916 #, no-wrap
13917 msgid ""
13918 "struct ifconf {\n"
13919 "    int                 ifc_len; /* size of buffer */\n"
13920 "    union {\n"
13921 "        char           *ifc_buf; /* buffer address */\n"
13922 "        struct ifreq   *ifc_req; /* array of structures */\n"
13923 "    };\n"
13924 "};\n"
13925 msgstr ""
13926 "struct ifconf {\n"
13927 "    int                 ifc_len; /* size of buffer */\n"
13928 "    union {\n"
13929 "        char           *ifc_buf; /* buffer address */\n"
13930 "        struct ifreq   *ifc_req; /* array of structures */\n"
13931 "    };\n"
13932 "};\n"
13933
13934 #. type: Plain text
13935 #: build/C/man7/netdevice.7:299
13936 msgid ""
13937 "If I<ifc_req> is NULL, B<SIOCGIFCONF> returns the necessary buffer size in "
13938 "bytes for receiving all available addresses in I<ifc_len>.  Otherwise "
13939 "I<ifc_req> contains a pointer to an array of I<ifreq> structures to be "
13940 "filled with all currently active L3 interface addresses.  I<ifc_len> "
13941 "contains the size of the array in bytes.  Within each I<ifreq> structure, "
13942 "I<ifr_name> will receive the interface name, and I<ifr_addr> the address.  "
13943 "The actual number of bytes transferred is returned in I<ifc_len>."
13944 msgstr ""
13945
13946 #. type: Plain text
13947 #: build/C/man7/netdevice.7:315
13948 msgid ""
13949 "If the size specified by I<ifc_len> is insufficient to store all the "
13950 "addresses, the kernel will skip the exceeding ones and return success.  "
13951 "There is no reliable way of detecting this condition once it has occurred.  "
13952 "It is therefore recommended to either determine the necessary buffer size "
13953 "beforehand by calling B<SIOCGIFCONF> with I<ifc_req> set to NULL, or to "
13954 "retry the call with a bigger buffer whenever I<ifc_len> upon return differs "
13955 "by less than I<sizeof(struct ifreq)> from its original value."
13956 msgstr ""
13957
13958 #.  Slaving isn't supported in 2.2
13959 #.  .
13960 #.  .TP
13961 #.  .BR SIOCGIFSLAVE ", " SIOCSIFSLAVE
13962 #.  Get or set the slave device using
13963 #.  .IR ifr_slave .
13964 #.  Setting the slave device is a privileged operation.
13965 #.  .PP
13966 #.  FIXME add amateur radio stuff.
13967 #. type: Plain text
13968 #: build/C/man7/netdevice.7:332
13969 msgid ""
13970 "If an error occurs accessing the I<ifconf> or I<ifreq> structures, B<EFAULT> "
13971 "will be returned."
13972 msgstr ""
13973
13974 #. type: Plain text
13975 #: build/C/man7/netdevice.7:338
13976 msgid ""
13977 "Most protocols support their own ioctls to configure protocol-specific "
13978 "interface options.  See the protocol man pages for a description.  For "
13979 "configuring IP addresses, see B<ip>(7)."
13980 msgstr "ほとんどのプロトコルには、専用のインターフェースオプションを 設定するための独自の ioctl が存在する。 説明は各プロトコルの man ページを見よ。 IP アドレスの設定に関しては B<ip>(7) を参照。"
13981
13982 #. type: Plain text
13983 #: build/C/man7/netdevice.7:341
13984 msgid ""
13985 "In addition, some devices support private ioctls.  These are not described "
13986 "here."
13987 msgstr ""
13988 "さらに、デバイスによってはプライベートな ioctl がある。 これらはここでは説明"
13989 "しない。"
13990
13991 #. type: Plain text
13992 #: build/C/man7/netdevice.7:349
13993 msgid ""
13994 "Strictly speaking, B<SIOCGIFCONF> and the other ioctls that accept or return "
13995 "only B<AF_INET> socket addresses, are IP-specific and belong in B<ip>(7)."
13996 msgstr ""
13997 "厳密にいうと、 B<SIOCGIFCONF> や、 B<AF_INET> ソケットアドレスだけを\n"
13998 "引き数に取ったり返したりする他の ioctl は IP 固有であり、 B<ip>(7) \n"
13999 "に属する。"
14000
14001 #. type: Plain text
14002 #: build/C/man7/netdevice.7:354
14003 msgid ""
14004 "The names of interfaces with no addresses or that don't have the "
14005 "B<IFF_RUNNING> flag set can be found via I</proc/net/dev>."
14006 msgstr ""
14007 "アドレスがなかったり、 B<IFF_RUNNING> フラグがセットされていないインター"
14008 "フェースの名前は I</proc/net/dev> で知ることができる。"
14009
14010 #. type: Plain text
14011 #: build/C/man7/netdevice.7:359
14012 msgid ""
14013 "Local IPv6 IP addresses can be found via I</proc/net> or via B<rtnetlink>(7)."
14014 msgstr ""
14015 "ローカル IPV6 IP アドレスは I</proc/net> か B<rtnetlink>(7)  で知ることができ"
14016 "る。"
14017
14018 #. type: Plain text
14019 #: build/C/man7/netdevice.7:365
14020 msgid ""
14021 "glibc 2.1 is missing the I<ifr_newname> macro in I<E<lt>net/if.hE<gt>>.  Add "
14022 "the following to your program as a workaround:"
14023 msgstr ""
14024 "glibc 2.1 では I<E<lt>net/if.hE<gt>> に I<ifr_newname> マクロがない。 とりあ"
14025 "えずの対応策として、以下のコードを追加しておくこと。"
14026
14027 #. type: Plain text
14028 #: build/C/man7/netdevice.7:371
14029 #, no-wrap
14030 msgid ""
14031 "#ifndef ifr_newname\n"
14032 "#define ifr_newname     ifr_ifru.ifru_slave\n"
14033 "#endif\n"
14034 msgstr ""
14035 "#ifndef ifr_newname\n"
14036 "#define ifr_newname     ifr_ifru.ifru_slave\n"
14037 "#endif\n"
14038
14039 #. type: Plain text
14040 #: build/C/man7/netdevice.7:378
14041 msgid "B<proc>(5), B<capabilities>(7), B<ip>(7), B<rtnetlink>(7)"
14042 msgstr "B<proc>(5), B<capabilities>(7), B<ip>(7), B<rtnetlink>(7)"
14043
14044 #. type: TH
14045 #: build/C/man5/networks.5:26
14046 #, no-wrap
14047 msgid "NETWORKS"
14048 msgstr "NETWORKS"
14049
14050 #. type: TH
14051 #: build/C/man5/networks.5:26
14052 #, no-wrap
14053 msgid "2008-09-04"
14054 msgstr "2008-09-04"
14055
14056 #. type: TH
14057 #: build/C/man5/networks.5:26
14058 #, no-wrap
14059 msgid "GNU/Linux"
14060 msgstr "GNU/Linux"
14061
14062 #. type: Plain text
14063 #: build/C/man5/networks.5:29
14064 msgid "networks - network name information"
14065 msgstr "networks - ネットワーク名の情報"
14066
14067 #. type: Plain text
14068 #: build/C/man5/networks.5:35
14069 msgid ""
14070 "The file I</etc/networks> is a plain ASCII file that describes known DARPA "
14071 "networks and symbolic names for these networks.  Each line represents a "
14072 "network and has the following structure:"
14073 msgstr ""
14074 "I</etc/networks> ファイルは、通常の ASCII ファイルで、よく使われる\n"
14075 "DARPA ネットワークとその分かりやすい名前を記載したファイルである。\n"
14076 "各行が一つのネットワークを表し、以下の構造となっている。"
14077
14078 #. type: Plain text
14079 #: build/C/man5/networks.5:38
14080 msgid "I<name number aliases ...>"
14081 msgstr "I<name number aliases ...>"
14082
14083 #. type: Plain text
14084 #: build/C/man5/networks.5:46
14085 msgid ""
14086 "where the fields are delimited by spaces or tabs.  Empty lines are ignored.  "
14087 "The hash character (B<#>) indicates the start of a comment: this character, "
14088 "and the remaining characters up to the end of the current line, are ignored "
14089 "by library functions that process the file."
14090 msgstr ""
14091 "フィールドはスペースかタブで区切られる。空行は無視される。\n"
14092 "ハッシュ文字 (B<#>) はコメントの開始を示し、このファイルを処理する\n"
14093 "ライブラリ関数はこの文字とその行のそれ以降の文字を無視する。"
14094
14095 #. type: Plain text
14096 #: build/C/man5/networks.5:48 build/C/man5/protocols.5:59
14097 msgid "The field descriptions are:"
14098 msgstr "フィールドの説明は以下のとおり。"
14099
14100 #. type: TP
14101 #: build/C/man5/networks.5:48
14102 #, no-wrap
14103 msgid "I<name>"
14104 msgstr "I<name>"
14105
14106 #. type: Plain text
14107 #: build/C/man5/networks.5:53
14108 msgid ""
14109 "The symbolic name for the network.  Network names can contain any printable "
14110 "characters execept white-space characters or the comment character."
14111 msgstr ""
14112 "ネットワークの分かりやすい名前 (symbolic name)。\n"
14113 "ネットワーク名には、ホワイトスペースとコメント文字以外の\n"
14114 "印字可能な文字を使うことができる。"
14115
14116 #. type: TP
14117 #: build/C/man5/networks.5:53 build/C/man5/protocols.5:67
14118 #, no-wrap
14119 msgid "I<number>"
14120 msgstr "I<number>"
14121
14122 #. type: Plain text
14123 #: build/C/man5/networks.5:58
14124 msgid ""
14125 "The official number for this network in numbers-and-dots notation (see "
14126 "B<inet>(3)).  The trailing \".0\" (for the host component of the network "
14127 "address) may be omitted."
14128 msgstr ""
14129 "このネットワークの正式な数字での値。\n"
14130 "ドット区切りの数字表記 (B<inet>(3) 参照) で記載する。\n"
14131 "末尾の \".0\" (ネットワークアドレスのホスト部分) は省略してもよい。"
14132
14133 #. type: TP
14134 #: build/C/man5/networks.5:58 build/C/man5/protocols.5:71
14135 #: build/C/man5/services.5:120
14136 #, no-wrap
14137 msgid "I<aliases>"
14138 msgstr "I<aliases>"
14139
14140 #. type: Plain text
14141 #: build/C/man5/networks.5:61
14142 msgid "Optional aliases for the network."
14143 msgstr "そのネットワークの別名 (省略可能)。"
14144
14145 #. type: Plain text
14146 #: build/C/man5/networks.5:70
14147 msgid ""
14148 "This file is read by the B<route>(8)  and B<netstat>(8)  utilities.  Only "
14149 "Class A, B or C networks are supported, partitioned networks (i.e., "
14150 "network/26 or network/28) are not supported by this facility."
14151 msgstr ""
14152 "このファイルは、 B<route>(8) と B<netstat>(8) ユーティリティにより\n"
14153 "利用される。クラス A, B, C のネットワークだけがサポートされており、\n"
14154 "(network/26 や network/28 といった) 分割されたネットワークは\n"
14155 "このファイルではサポートされていない。"
14156
14157 #. type: Plain text
14158 #: build/C/man5/networks.5:74
14159 msgid "The networks definition file."
14160 msgstr "ネットワーク定義ファイル。"
14161
14162 #. type: Plain text
14163 #: build/C/man5/networks.5:80
14164 msgid ""
14165 "B<getnetbyaddr>(3), B<getnetbyname>(3), B<getnetent>(3), B<netstat>(8), "
14166 "B<route>(8)"
14167 msgstr ""
14168 "B<getnetbyaddr>(3), B<getnetbyname>(3), B<getnetent>(3), B<netstat>(8), "
14169 "B<route>(8)"
14170
14171 #. type: TH
14172 #: build/C/man8/nscd.8:23
14173 #, no-wrap
14174 msgid "NSCD"
14175 msgstr "NSCD"
14176
14177 #. type: Plain text
14178 #: build/C/man8/nscd.8:26
14179 msgid "nscd - name service cache daemon"
14180 msgstr "nscd - ネームサービスキャッシュデーモン"
14181
14182 #. type: Plain text
14183 #: build/C/man8/nscd.8:34
14184 msgid ""
14185 "Nscd is a daemon that provides a cache for the most common name service "
14186 "requests.  The default configuration file, I</etc/nscd.conf>, determines the "
14187 "behavior of the cache daemon.  See B<nscd.conf>(5)."
14188 msgstr ""
14189 "nscd は一般的なネームサービスに必要な多くのものを キャッシュとして提供する"
14190 "デーモンである。 デフォルトの設定ファイル I</etc/nscd.conf> でキャッシュデー"
14191 "モンの動作を決定する。 B<nscd.conf>(5)  を見よ。"
14192
14193 #. type: Plain text
14194 #: build/C/man8/nscd.8:47
14195 msgid ""
14196 "Nscd provides caching for accesses of the B<passwd>(5), B<group>(5), and "
14197 "B<hosts>(5)  databases through standard libc interfaces, such as B<getpwnam>"
14198 "(3), B<getpwuid>(3), B<getgrnam>(3), B<getgrgid>(3), B<gethostbyname>(3), "
14199 "and others."
14200 msgstr ""
14201 "nscd は B<passwd>(5), B<group>(5), B<hosts>(5)  データベースへのアクセスの"
14202 "キャッシュを B<getpwnam>(3), B<getpwuid>(3), B<getgrnam>(3), B<getgrgid>(3), "
14203 "B<gethostbyname>(3)  などの標準 libc インターフェースを通して提供する。"
14204
14205 #. type: Plain text
14206 #: build/C/man8/nscd.8:56
14207 msgid ""
14208 "There are two caches for each database: a positive one for items found, and "
14209 "a negative one for items not found.  Each cache has a separate TTL (time-to-"
14210 "live)  period for its data.  Note that the shadow file is specifically not "
14211 "cached.  B<getspnam>(3)  calls remain uncached as a result."
14212 msgstr ""
14213 "各データベースには 2 つのキャッシュがある。 肯定的 (positive) なキャッシュは"
14214 "見つかったアイテムをキャッシュし、 否定的 (negative) なキャッシュは見つからな"
14215 "かったアイテムをキャッシュする。 各キャッシュはデータの TTL (time-to-live, 生"
14216 "存時間) を個別に持っている。 特例として shadow ファイルはキャッシュされない点"
14217 "に注意すること。 B<getspnam>(3)  を呼び出しても結果としてキャッシュされないま"
14218 "まになる。"
14219
14220 #. type: SH
14221 #: build/C/man8/nscd.8:56
14222 #, no-wrap
14223 msgid "OPTIONS"
14224 msgstr "オプション"
14225
14226 #. type: TP
14227 #: build/C/man8/nscd.8:57
14228 #, no-wrap
14229 msgid "B<--help>"
14230 msgstr "B<--help>"
14231
14232 #. type: Plain text
14233 #: build/C/man8/nscd.8:60
14234 msgid "will give you a list with all options and what they do."
14235 msgstr "全てのオプションとその動作をリストして表示する。"
14236
14237 #. type: Plain text
14238 #: build/C/man8/nscd.8:83
14239 msgid ""
14240 "The daemon will try to watch for changes in configuration files appropriate "
14241 "for each database (e.g., I</etc/passwd> for the I<passwd> database or I</etc/"
14242 "hosts> and I</etc/resolv.conf> for the I<hosts> database), and flush the "
14243 "cache when these are changed.  However, this will happen only after a short "
14244 "delay (unless the B<inotify>(7)  mechanism is available and glibc 2.9 or "
14245 "later is available), and this auto-detection does not cover configuration "
14246 "files required by nonstandard NSS modules, if any are specified in I</etc/"
14247 "nsswitch.conf>.  In that case, you need to run the following command after "
14248 "changing the configuration file of the database so that B<nscd> invalidates "
14249 "its cache:"
14250 msgstr ""
14251 "デーモンは( I<passwd> データベースについては I</etc/passwd>、 I<hosts> データ"
14252 "ベースについては I</etc/hosts> と I</etc/resolv.conf> というような)それぞれの"
14253 "データベースのための設定ファイルを見張って、 これらが変更されるとキャッシュを"
14254 "フラッシュする。 しかし、これは( B<inotify>(7)  が利用可能で、glibc 2.9 以降"
14255 "が利用可能な場合を除いて)  短い遅延の後に起こり、またこの自動検出は非標準 "
14256 "NSS モジュールが I</etc/nsswitch.conf> で指定されている場合はその設定ファイル"
14257 "には対応しない。 この場合、データベースの設定ファイルを変更した後、 B<nscd> "
14258 "のキャッシュを無効にするために以下のコマンドを実行する必要がある:"
14259
14260 #. type: Plain text
14261 #: build/C/man8/nscd.8:85
14262 #, no-wrap
14263 msgid "    $ B<nscd -i> I<E<lt>databaseE<gt>>\n"
14264 msgstr "    $ B<nscd -i> I<E<lt>databaseE<gt>>\n"
14265
14266 #.  .SH AUTHOR
14267 #.  .B nscd
14268 #.  was written by Thorsten Kukuk and Ulrich Drepper.
14269 #. type: Plain text
14270 #: build/C/man8/nscd.8:91
14271 msgid "B<nscd.conf>(5), B<nsswitch.conf>(5)"
14272 msgstr "B<nscd.conf>(5), B<nsswitch.conf>(5)"
14273
14274 #. type: TH
14275 #: build/C/man5/nscd.conf.5:20
14276 #, no-wrap
14277 msgid "NSCD.CONF"
14278 msgstr "NSCD.CONF"
14279
14280 #. type: TH
14281 #: build/C/man5/nscd.conf.5:20
14282 #, no-wrap
14283 msgid "2014-02-07"
14284 msgstr "2014-02-07"
14285
14286 #. type: Plain text
14287 #: build/C/man5/nscd.conf.5:23
14288 msgid "/etc/nscd.conf - name service cache daemon configuration file"
14289 msgstr "/etc/nscd.conf - ネームサービスキャッシュデーモンの設定ファイル"
14290
14291 #. type: Plain text
14292 #: build/C/man5/nscd.conf.5:36
14293 msgid ""
14294 "The file I</etc/nscd.conf> is read from B<nscd>(8)  at startup.  Each line "
14295 "specifies either an attribute and a value, or an attribute, service, and a "
14296 "value.  Fields are separated either by SPACE or TAB characters.  A \\(aq#"
14297 "\\(aq (number sign) indicates the beginning of a comment; following "
14298 "characters, up to the end of the line, are not interpreted by nscd."
14299 msgstr ""
14300 "B<nscd>(8)  は起動時にファイル I</etc/nscd.conf> を読み込む。 各行には「属"
14301 "性・値」または「属性・サービス・値」を指定する。 フィールドはスペース文字また"
14302 "はタブ文字で区切られる。 \\(aq#\\(aq (ナンバー記号) はコメントの始まりを表"
14303 "す。 この記号から行末までは nscd によって解釈されない。"
14304
14305 #. type: Plain text
14306 #: build/C/man5/nscd.conf.5:39
14307 msgid ""
14308 "Valid services are I<passwd>, I<group>, I<hosts>, I<services>, or "
14309 "I<netgroup>."
14310 msgstr ""
14311 "指定可能なサービスは I<passwd>, I<group>, I<hosts>, I<services>, I<netgroup> "
14312 "である。"
14313
14314 #. type: Plain text
14315 #: build/C/man5/nscd.conf.5:42
14316 msgid "B<logfile> I<debug-file-name>"
14317 msgstr "B<logfile> I<debug-file-name>"
14318
14319 #. type: Plain text
14320 #: build/C/man5/nscd.conf.5:44
14321 msgid "Specifies name of the file to which debug info should be written."
14322 msgstr "デバッグ情報が書き込まれるファイルの名前を指定する。"
14323
14324 #. type: Plain text
14325 #: build/C/man5/nscd.conf.5:48
14326 msgid "B<debug-level> I<value>"
14327 msgstr "B<debug-level> I<value>"
14328
14329 #. type: Plain text
14330 #: build/C/man5/nscd.conf.5:51
14331 msgid "Sets the desired debug level.  The default is 0."
14332 msgstr "希望するデバッグレベルを設定する。デフォルトは 0。"
14333
14334 #. type: Plain text
14335 #: build/C/man5/nscd.conf.5:55
14336 msgid "B<threads> I<number>"
14337 msgstr "B<threads> I<number>"
14338
14339 #. type: Plain text
14340 #: build/C/man5/nscd.conf.5:59
14341 msgid ""
14342 "This is the number of threads that are started to wait for requests.  At "
14343 "least five threads will always be created."
14344 msgstr ""
14345 "スレッドをいくつ起動してリクエストを待つのかを指定する。 少なくとも 5 つのス"
14346 "レッドが常に作成される。"
14347
14348 #. type: Plain text
14349 #: build/C/man5/nscd.conf.5:63
14350 msgid "B<max-threads> I<number>"
14351 msgstr "B<max-threads> I<number>"
14352
14353 #. type: Plain text
14354 #: build/C/man5/nscd.conf.5:66
14355 msgid "Specifies the maximum number of threads.  The default is 32."
14356 msgstr "スレッドの最大数を指定する。デフォルトは 32。"
14357
14358 #. type: Plain text
14359 #: build/C/man5/nscd.conf.5:70
14360 msgid "B<server-user> I<user>"
14361 msgstr "B<server-user> I<user>"
14362
14363 #. type: Plain text
14364 #: build/C/man5/nscd.conf.5:74
14365 msgid ""
14366 "If this option is set, nscd will run as this user and not as root.  If a "
14367 "separate cache for every user is used (-S parameter), this option is ignored."
14368 msgstr ""
14369 "このオプションが設定されると、 nscd は root ではなく、この user として実行さ"
14370 "れる。 (-S パラメータにより) 各ユーザー毎に別々のキャッシュが使われる場合、 "
14371 "このオプションは無視される。"
14372
14373 #. type: Plain text
14374 #: build/C/man5/nscd.conf.5:78
14375 msgid "B<stat-user> I<user>"
14376 msgstr "B<stat-user> I<user>"
14377
14378 #. type: Plain text
14379 #: build/C/man5/nscd.conf.5:80
14380 msgid "Specifies the user who is allowed to request statistics."
14381 msgstr "統計情報の参照を許可するユーザを指定する。"
14382
14383 #. type: Plain text
14384 #: build/C/man5/nscd.conf.5:85
14385 msgid "B<reload-count> unlimited | I<number>"
14386 msgstr "B<reload-count> unlimited | I<number>"
14387
14388 #. type: Plain text
14389 #: build/C/man5/nscd.conf.5:89
14390 msgid ""
14391 "Limit on the number of times a cached entry gets reloaded without being used "
14392 "before it gets removed.  The default is 5."
14393 msgstr ""
14394 "キャッシュされたエントリが使用されなかったときに、 削除される前に何回リロード"
14395 "されるかを設定する。デフォルトは 5。"
14396
14397 #. type: Plain text
14398 #: build/C/man5/nscd.conf.5:93
14399 msgid "B<paranoia> I<E<lt>yes|noE<gt>>"
14400 msgstr "B<paranoia> I<E<lt>yes|noE<gt>>"
14401
14402 #. type: Plain text
14403 #: build/C/man5/nscd.conf.5:96
14404 msgid ""
14405 "Enabling paranoia mode causes nscd to restart itself periodically.  The "
14406 "default is no."
14407 msgstr ""
14408 "パラノイアモードを有効にする。 パラノイアモードでは nscd を定期的に再起動す"
14409 "る。デフォルトは無効。"
14410
14411 #. type: Plain text
14412 #: build/C/man5/nscd.conf.5:100
14413 msgid "B<restart-interval> I<time>"
14414 msgstr "B<restart-interval> I<time>"
14415
14416 #. type: Plain text
14417 #: build/C/man5/nscd.conf.5:108
14418 msgid ""
14419 "Sets the restart interval to I<time> seconds if periodic restart is enabled "
14420 "by enabling B<paranoia> mode.  The default is 3600."
14421 msgstr ""
14422 "パラノイアモードが有効で定期的に再起動する場合の、 再起動間隔を I<time> 秒に"
14423 "設定する。デフォルトは 3600。"
14424
14425 #. type: Plain text
14426 #: build/C/man5/nscd.conf.5:113
14427 msgid "B<enable-cache> I<service> I<E<lt>yes|noE<gt>>"
14428 msgstr "B<enable-cache> I<service> I<E<lt>yes|noE<gt>>"
14429
14430 #. type: Plain text
14431 #: build/C/man5/nscd.conf.5:118
14432 msgid "Enables or disables the specified I<service> cache.  The default is no."
14433 msgstr ""
14434 "指定した I<service> のキャッシュを有効または無効にする。デフォルトは無効。"
14435
14436 #. type: Plain text
14437 #: build/C/man5/nscd.conf.5:123
14438 msgid "B<positive-time-to-live> I<service> I<value>"
14439 msgstr "B<positive-time-to-live> I<service> I<value>"
14440
14441 #. type: Plain text
14442 #: build/C/man5/nscd.conf.5:131
14443 msgid ""
14444 "Sets the TTL (time-to-live) for positive entries (successful queries)  in "
14445 "the specified cache for I<service>.  I<Value> is in seconds.  Larger values "
14446 "increase cache hit rates and reduce mean response times, but increase "
14447 "problems with cache coherence."
14448 msgstr ""
14449 "指定した I<service> のキャッシュにあるポジティブエントリ (成功した問い合わ"
14450 "せ) の TTL (time-to-live) を設定する。 I<value> の単位は秒である。 値を大きく"
14451 "すると、ヒット率が高くなり平均応答時間を短くできるが、 キャッシュのコヒーレン"
14452 "ス (coherence, キャッシュが実際のデータと一致していること) に問題が生じる。"
14453
14454 #. type: Plain text
14455 #: build/C/man5/nscd.conf.5:136
14456 msgid "B<negative-time-to-live> I<service> I<value>"
14457 msgstr "B<negative-time-to-live> I<service> I<value>"
14458
14459 #. type: Plain text
14460 #: build/C/man5/nscd.conf.5:146
14461 msgid ""
14462 "Sets the TTL (time-to-live) for negative entries (unsuccessful queries)  in "
14463 "the specified cache for I<service>.  I<Value> is in seconds.  Can result in "
14464 "significant performance improvements if there are several files owned by "
14465 "UIDs (user IDs) not in system databases (for example untarring the Linux "
14466 "kernel sources as root); should be kept small to reduce cache coherency "
14467 "problems."
14468 msgstr ""
14469 "指定した I<service> のキャッシュにあるネガティブエントリ (失敗した問い合わ"
14470 "せ) の TTL (time-to-live) を設定する。 I<value> の単位は秒である。 システム"
14471 "データベースにない UID (ユーザーID) で所有されるファイル (たとえば root で "
14472 "tar を展開した Linux カーネルのソース) が少ないと、 顕著な性能の向上が見られ"
14473 "る。 キャッシュのコヒーレンス問題を少なくするために小さな値にすべきである。"
14474
14475 #. type: Plain text
14476 #: build/C/man5/nscd.conf.5:151
14477 msgid "B<suggested-size> I<service> I<value>"
14478 msgstr "B<suggested-size> I<service> I<value>"
14479
14480 #. type: Plain text
14481 #: build/C/man5/nscd.conf.5:156
14482 msgid ""
14483 "This is the internal hash table size, I<value> should remain a prime number "
14484 "for optimum efficiency.  The default is 211."
14485 msgstr ""
14486 "内部ハッシュテーブルの大きさを指定する。 効率を最適にするために I<value> は素"
14487 "数にしておくべきである。デフォルトは 211 である。"
14488
14489 #. type: Plain text
14490 #: build/C/man5/nscd.conf.5:161
14491 msgid "B<check-files> I<service> I<E<lt>yes|noE<gt>>"
14492 msgstr "B<check-files> I<service> I<E<lt>yes|noE<gt>>"
14493
14494 #. type: Plain text
14495 #: build/C/man5/nscd.conf.5:173
14496 msgid ""
14497 "Enables or disables checking the file belonging to the specified I<service> "
14498 "for changes.  The files are I</etc/passwd>, I</etc/group>, I</etc/hosts>, I</"
14499 "etc/services> and I</etc/netgroup>.  The default is yes."
14500 msgstr ""
14501 "指定した I<service> に関連するファイルの変更のチェックを有効または無効にす"
14502 "る。 ファイルは I</etc/passwd>, I</etc/group>, I</etc/hosts> である。デフォル"
14503 "トは有効。"
14504
14505 #. type: Plain text
14506 #: build/C/man5/nscd.conf.5:178
14507 msgid "B<persistent> I<service> I<E<lt>yes|noE<gt>>"
14508 msgstr "B<persistent> I<service> I<E<lt>yes|noE<gt>>"
14509
14510 #. type: Plain text
14511 #: build/C/man5/nscd.conf.5:185
14512 msgid ""
14513 "Keep the content of the cache for I<service> over server restarts; useful "
14514 "when B<paranoia> mode is set.  The default is no."
14515 msgstr ""
14516 "サーバの再起動の前後で I<service> のキャッシュ内容を保持する。 B<paranoia> "
14517 "モードが有効の場合に便利である。デフォルトは保持しない。"
14518
14519 #. type: Plain text
14520 #: build/C/man5/nscd.conf.5:190
14521 msgid "B<shared> I<service> I<E<lt>yes|noE<gt>>"
14522 msgstr "B<shared> I<service> I<E<lt>yes|noE<gt>>"
14523
14524 #. type: Plain text
14525 #: build/C/man5/nscd.conf.5:197
14526 msgid ""
14527 "The memory mapping of the nscd databases for I<service> is shared with the "
14528 "clients so that they can directly search in them instead of having to ask "
14529 "the daemon over the socket each time a lookup is performed.  The default is "
14530 "no."
14531 msgstr ""
14532 "I<service> の nscd データベースのメモリ・マッピングをクライアント間で共有す"
14533 "る。 これにより、検索を実行する度にソケット経由でデーモンに問い合わせを 行わ"
14534 "ずに、直接データベースを検索できるようになる。デフォルトは共有しない。"
14535
14536 #. type: Plain text
14537 #: build/C/man5/nscd.conf.5:202
14538 msgid "B<max-db-size> I<service> I<bytes>"
14539 msgstr "B<max-db-size> I<service> I<bytes>"
14540
14541 #. type: Plain text
14542 #: build/C/man5/nscd.conf.5:206
14543 msgid ""
14544 "The maximum allowable size, in bytes, of the database files for the "
14545 "I<service>.  The default is 33554432."
14546 msgstr ""
14547 "I<service> のデータベースファイルの最大許容サイズ (バイト単位)。 デフォルト値"
14548 "は 33554432 である。"
14549
14550 #. type: Plain text
14551 #: build/C/man5/nscd.conf.5:211
14552 msgid "B<auto-propagate> I<service> I<E<lt>yes|noE<gt>>"
14553 msgstr "B<auto-propagate> I<service> I<E<lt>yes|noE<gt>>"
14554
14555 #. type: Plain text
14556 #: build/C/man5/nscd.conf.5:231
14557 msgid ""
14558 "When set to I<no> for I<passwd> or I<group> service, then the I<.byname> "
14559 "requests are not added to I<passwd.byuid> or I<group.bygid> cache.  This can "
14560 "help with tables containing multiple records for the same ID.  The default "
14561 "is yes.  This option is valid only for services I<passwd> and I<group>."
14562 msgstr ""
14563 "サービス I<passwd> か I<group> で I<no> に設定すると、 I<.byname> 要求は "
14564 "I<passwd.byuid> や I<group.bygid> のキャッシュに追加されない。 このオプション"
14565 "は、 同じ ID を持つレコードが複数あるテーブルの場合に役に立つ。 デフォルトは "
14566 "yes である。 このオプションはサービス I<passwd> と I<group> でのみ有効であ"
14567 "る。"
14568
14569 #. type: Plain text
14570 #: build/C/man5/nscd.conf.5:239
14571 msgid ""
14572 "The default values stated in this manual page originate from the source code "
14573 "of B<nscd>(8)  and are used if not overridden in the configuration file.  "
14574 "The default values used in the configuration file of your distribution might "
14575 "differ."
14576 msgstr ""
14577
14578 #.  .SH AUTHOR
14579 #.  .B nscd
14580 #.  was written by Thorsten Kukuk and Ulrich Drepper.
14581 #. type: Plain text
14582 #: build/C/man5/nscd.conf.5:244
14583 msgid "B<nscd>(8)"
14584 msgstr "B<nscd>(8)"
14585
14586 #. type: TH
14587 #: build/C/man5/nss.5:19
14588 #, no-wrap
14589 msgid "NSS"
14590 msgstr "NSS"
14591
14592 #. type: Plain text
14593 #: build/C/man5/nss.5:22
14594 msgid "nss - Name Service Switch configuration file"
14595 msgstr "nss - 名前サービス切り替え (Name Service Switch) の設定ファイル"
14596
14597 #. type: Plain text
14598 #: build/C/man5/nss.5:29
14599 msgid ""
14600 "Each call to a function which retrieves data from a system database like the "
14601 "password or group database is handled by the Name Service Switch "
14602 "implementation in the GNU C library.  The various services provided are "
14603 "implemented by independent modules, each of which naturally varies widely "
14604 "from the other."
14605 msgstr ""
14606
14607 #. type: Plain text
14608 #: build/C/man5/nss.5:38
14609 msgid ""
14610 "The default implementations coming with the GNU C library are by default "
14611 "conservative and do not use unsafe data.  This might be very costly in some "
14612 "situations, especially when the databases are large.  Some modules allow the "
14613 "system administrator to request taking shortcuts if these are known to be "
14614 "safe.  It is then the system administrator's responsibility to ensure the "
14615 "assumption is correct."
14616 msgstr ""
14617
14618 #. type: Plain text
14619 #: build/C/man5/nss.5:42
14620 msgid ""
14621 "There are other modules where the implementation changed over time.  If an "
14622 "implementation used to sacrifice speed for memory consumption it might "
14623 "create problems if the preference is switched."
14624 msgstr ""
14625
14626 #. type: Plain text
14627 #: build/C/man5/nss.5:51
14628 msgid ""
14629 "The I</etc/default/nss> file contains a number of variable assignments.  "
14630 "Each variable controls the behavior of one or more NSS modules.  White "
14631 "spaces are ignored.  Lines beginning with \\(aq#\\(aq are treated as "
14632 "comments."
14633 msgstr ""
14634
14635 #. type: Plain text
14636 #: build/C/man5/nss.5:53
14637 msgid "The variables currently recognized are:"
14638 msgstr "現在のところ認識される変数は次の通り。"
14639
14640 #. type: TP
14641 #: build/C/man5/nss.5:53
14642 #, no-wrap
14643 msgid "B<NETID_AUTHORITATIVE => I<TRUE>|I<FALSE>"
14644 msgstr "B<NETID_AUTHORITATIVE => I<TRUE>|I<FALSE>"
14645
14646 #. type: Plain text
14647 #: build/C/man5/nss.5:68
14648 msgid ""
14649 "If set to TRUE, the NIS backend for the B<initgroups>(3)  function will "
14650 "accept the information from the I<netid.byname> NIS map as authoritative.  "
14651 "This can speed up the function significantly if the I<group.byname> map is "
14652 "large.  The content of the I<netid.byname> map is used B<as is>.  The system "
14653 "administrator has to make sure it is correctly generated."
14654 msgstr ""
14655
14656 #. type: TP
14657 #: build/C/man5/nss.5:68
14658 #, no-wrap
14659 msgid "B<SERVICES_AUTHORITATIVE => I<TRUE>|I<FALSE>"
14660 msgstr "B<SERVICES_AUTHORITATIVE => I<TRUE>|I<FALSE>"
14661
14662 #. type: Plain text
14663 #: build/C/man5/nss.5:80
14664 msgid ""
14665 "If set to TRUE, the NIS backend for the B<getservbyname>(3)  and "
14666 "B<getservbyname_r>(3)  functions will assume that the I<services."
14667 "byservicename> NIS map exists and is authoritative, particularly that it "
14668 "contains both keys with /proto and without /proto for both primary service "
14669 "names and service aliases.  The system administrator has to make sure it is "
14670 "correctly generated."
14671 msgstr ""
14672
14673 #. type: TP
14674 #: build/C/man5/nss.5:80
14675 #, no-wrap
14676 msgid "B<SETENT_BATCH_READ => I<TRUE>|I<FALSE>"
14677 msgstr "B<SETENT_BATCH_READ => I<TRUE>|I<FALSE>"
14678
14679 #. type: Plain text
14680 #: build/C/man5/nss.5:98
14681 msgid ""
14682 "If set to TRUE, the NIS backend for the B<setpwent>(3)  and B<setgrent>(3)  "
14683 "functions will read the entire database at once and then hand out the "
14684 "requests one by one from memory with every corresponding B<getpwent>(3)  or "
14685 "B<getgrent>(3)  call respectively.  Otherwise each B<getpwent>(3)  or "
14686 "B<getgrent>(3)  call might result in a network communication with the server "
14687 "to get the next entry."
14688 msgstr ""
14689
14690 #. type: Plain text
14691 #: build/C/man5/nss.5:100
14692 msgid "I</etc/default/nss>"
14693 msgstr "I</etc/default/nss>"
14694
14695 #. type: Plain text
14696 #: build/C/man5/nss.5:102
14697 msgid ""
14698 "The default configuration corresponds to the following configuration file:"
14699 msgstr "デフォルト設定は、 以下の設定ファイルと同じである。"
14700
14701 #.  .SH AUTHOR
14702 #.  Ulrich Drepper <drepper@redhat.com>
14703 #. type: Plain text
14704 #: build/C/man5/nss.5:110
14705 #, no-wrap
14706 msgid ""
14707 "NETID_AUTHORITATIVE=FALSE\n"
14708 "SERVICES_AUTHORITATIVE=FALSE\n"
14709 "SETENT_BATCH_READ=FALSE\n"
14710 msgstr ""
14711 "NETID_AUTHORITATIVE=FALSE\n"
14712 "SERVICES_AUTHORITATIVE=FALSE\n"
14713 "SETENT_BATCH_READ=FALSE\n"
14714
14715 #. type: Plain text
14716 #: build/C/man5/nss.5:112
14717 msgid "I<nsswitch.conf>"
14718 msgstr "I<nsswitch.conf>"
14719
14720 #. type: TH
14721 #: build/C/man5/nsswitch.conf.5:25
14722 #, no-wrap
14723 msgid "NSSWITCH.CONF"
14724 msgstr "NSSWITCH.CONF"
14725
14726 #. type: Plain text
14727 #: build/C/man5/nsswitch.conf.5:28
14728 msgid "nsswitch.conf - Name Service Switch configuration file"
14729 msgstr "nsswitch.conf - ネームサービススイッチの設定ファイル"
14730
14731 #. type: Plain text
14732 #: build/C/man5/nsswitch.conf.5:36
14733 msgid ""
14734 "The Name Service Switch (NSS) configuration file, I</etc/nsswitch.conf>, is "
14735 "used by the GNU C Library to determine the sources from which to obtain name-"
14736 "service information in a range of categories, and in what order.  Each "
14737 "category of information is identified by a database name."
14738 msgstr ""
14739 "ネームサービススイッチ (Name Service Switch; NSS) の設定ファイル\n"
14740 "I</etc/nsswitch.conf> は、 GNU C ライブラリが\n"
14741 "いろいろなカテゴリの名前サービス情報を、どの情報源から\n"
14742 "どの順序で取得するかを判断するのに使用される\n"
14743 "(情報の各カテゴリはデータベース名で識別される)。"
14744
14745 #. type: Plain text
14746 #: build/C/man5/nsswitch.conf.5:42
14747 msgid ""
14748 "The file is plain ASCII text, with columns separated by spaces or tab "
14749 "characters.  The first column specifies the database name.  The remaining "
14750 "columns describe the order of sources to query and a limited set of actions "
14751 "that can be performed by lookup result."
14752 msgstr ""
14753 "設定ファイルは通常の ASCII テキストで、列はスペースかタブ文字で\n"
14754 "区切られる。最初の列はデータベース名を示す。\n"
14755 "残りの列は、情報を問い合わせる情報源の順序と、\n"
14756 "検索結果に対して実行するアクションを規定する。"
14757
14758 #. type: Plain text
14759 #: build/C/man5/nsswitch.conf.5:44
14760 msgid "The following databases are understood by the GNU C Library:"
14761 msgstr "GNU C ライブラリでは以下のデータベースを扱うことができる。"
14762
14763 #. type: Plain text
14764 #: build/C/man5/nsswitch.conf.5:49
14765 msgid "Mail aliases, used by B<getaliasent>(3)  and related functions."
14766 msgstr "メールのエイリアス。 B<getaliasent>(3) や関連する関数が使用する。"
14767
14768 #. type: Plain text
14769 #: build/C/man5/nsswitch.conf.5:52
14770 msgid "Ethernet numbers."
14771 msgstr "イーサーネット番号。"
14772
14773 #. type: Plain text
14774 #: build/C/man5/nsswitch.conf.5:57
14775 msgid "Groups of users, used by B<getgrent>(3)  and related functions."
14776 msgstr "ユーザーのグループ。 B<getgrent>(3) や関連する関数が使用する。"
14777
14778 #. type: Plain text
14779 #: build/C/man5/nsswitch.conf.5:62
14780 msgid ""
14781 "Host names and numbers, used by B<gethostbyname>(3)  and related functions."
14782 msgstr "ホスト名とホスト番号。 B<gethostbyname>(3) や関連する関数が使用する。"
14783
14784 #. type: Plain text
14785 #: build/C/man5/nsswitch.conf.5:67
14786 msgid "Supplementary group access list, used by B<getgrouplist>(3)  function."
14787 msgstr "補助グループアクセスリスト。 B<getgrouplist>(3) 関数が使用する。"
14788
14789 #. type: Plain text
14790 #: build/C/man5/nsswitch.conf.5:71
14791 msgid ""
14792 "Network-wide list of hosts and users, used for access rules.  C libraries "
14793 "before glibc 2.1 supported netgroups only over NIS."
14794 msgstr ""
14795 "ネットワークワイドに用いられるホストやユーザーのリスト。アクセス制限に利用\n"
14796 "される。 glibc 2.1 より前の C ライブラリは、 NIS による netgroup のみを\n"
14797 "サポートしていた。"
14798
14799 #. type: Plain text
14800 #: build/C/man5/nsswitch.conf.5:76
14801 msgid ""
14802 "Network names and numbers, used by B<getnetent>(3)  and related functions."
14803 msgstr "ネットワーク名と番号。 B<getnetent>(3) と関連する関数が使用する。"
14804
14805 #. type: Plain text
14806 #: build/C/man5/nsswitch.conf.5:81
14807 msgid "User passwords, used by B<getpwent>(3)  and related functions."
14808 msgstr "ユーザーパスワード。 B<getpwent>(3) や関連する関数が使用する。"
14809
14810 #. type: Plain text
14811 #: build/C/man5/nsswitch.conf.5:86
14812 msgid "Network protocols, used by B<getprotoent>(3)  and related functions."
14813 msgstr "ネットワークプロトコル。 B<getprotoent>(3) や関連する関数が使用する。"
14814
14815 #. type: TP
14816 #: build/C/man5/nsswitch.conf.5:86
14817 #, no-wrap
14818 msgid "B<publickey>"
14819 msgstr "B<publickey>"
14820
14821 #. type: Plain text
14822 #: build/C/man5/nsswitch.conf.5:89
14823 msgid "Public and secret keys for Secure_RPC used by NFS and NIS+."
14824 msgstr "NIS+ と NFS によって用いられる secure_rpc の公開鍵と秘密鍵。"
14825
14826 #. type: Plain text
14827 #: build/C/man5/nsswitch.conf.5:94
14828 msgid ""
14829 "Remote procedure call names and numbers, used by B<getrpcbyname>(3)  and "
14830 "related functions."
14831 msgstr ""
14832 "リモート手続き呼び出し (remote procedure call) の名前と番号。 \n"
14833 "B<getrpcbyname>(3) と関連する関数が使用する。"
14834
14835 #. type: Plain text
14836 #: build/C/man5/nsswitch.conf.5:99
14837 msgid "Network services, used by B<getservent>(3)  and related functions."
14838 msgstr "ネットワークサービス。 B<getservent>(3) や関連する関数が使用する。"
14839
14840 #. type: Plain text
14841 #: build/C/man5/nsswitch.conf.5:104
14842 msgid "Shadow user passwords, used by B<getspnam>(3)  and related functions."
14843 msgstr "シャドウユーザーパスワード。 B<getspnam>(3) や関連する関数が使用する。"
14844
14845 #. type: Plain text
14846 #: build/C/man5/nsswitch.conf.5:108
14847 msgid "Here is an example I</etc/nsswitch.conf> file:"
14848 msgstr "以下は I</etc/nsswitch.conf> ファイルの例である。"
14849
14850 #. type: TP
14851 #: build/C/man5/nsswitch.conf.5:111
14852 #, no-wrap
14853 msgid "passwd:"
14854 msgstr "passwd:"
14855
14856 #. type: Plain text
14857 #: build/C/man5/nsswitch.conf.5:114 build/C/man5/nsswitch.conf.5:117
14858 #: build/C/man5/nsswitch.conf.5:120
14859 msgid "compat"
14860 msgstr "compat"
14861
14862 #. type: TP
14863 #: build/C/man5/nsswitch.conf.5:114
14864 #, no-wrap
14865 msgid "group:"
14866 msgstr "group:"
14867
14868 #. type: TP
14869 #: build/C/man5/nsswitch.conf.5:117
14870 #, no-wrap
14871 msgid "shadow:"
14872 msgstr "shadow:"
14873
14874 #. type: TP
14875 #: build/C/man5/nsswitch.conf.5:121
14876 #, no-wrap
14877 msgid "hosts:"
14878 msgstr "hosts:"
14879
14880 #. type: Plain text
14881 #: build/C/man5/nsswitch.conf.5:124
14882 msgid "dns [!UNAVAIL=return] files"
14883 msgstr "dns [!UNAVAIL=return] files"
14884
14885 #. type: TP
14886 #: build/C/man5/nsswitch.conf.5:124
14887 #, no-wrap
14888 msgid "networks:"
14889 msgstr "networks:"
14890
14891 #. type: Plain text
14892 #: build/C/man5/nsswitch.conf.5:127 build/C/man5/nsswitch.conf.5:130
14893 #: build/C/man5/nsswitch.conf.5:133 build/C/man5/nsswitch.conf.5:136
14894 #: build/C/man5/nsswitch.conf.5:139
14895 msgid "nis [NOTFOUND=return] files"
14896 msgstr "nis [NOTFOUND=return] files"
14897
14898 #. type: TP
14899 #: build/C/man5/nsswitch.conf.5:127
14900 #, no-wrap
14901 msgid "ethers:"
14902 msgstr "ethers:"
14903
14904 #. type: TP
14905 #: build/C/man5/nsswitch.conf.5:130
14906 #, no-wrap
14907 msgid "protocols:"
14908 msgstr "protocols:"
14909
14910 #. type: TP
14911 #: build/C/man5/nsswitch.conf.5:133
14912 #, no-wrap
14913 msgid "rpc:"
14914 msgstr "rpc:"
14915
14916 #. type: TP
14917 #: build/C/man5/nsswitch.conf.5:136
14918 #, no-wrap
14919 msgid "services:"
14920 msgstr "services:"
14921
14922 #. type: Plain text
14923 #: build/C/man5/nsswitch.conf.5:144
14924 msgid "The first column is the database name.  The remaining columns specify:"
14925 msgstr ""
14926 "最初の列はデータベース名である。\n"
14927 "残りの列で以下を指定する。"
14928
14929 #. type: Plain text
14930 #: build/C/man5/nsswitch.conf.5:148
14931 msgid ""
14932 "One or more service specifications, for example, \"files\", \"db\", or \"nis"
14933 "\".  The order of the services on the line determines the order in which "
14934 "those services will be queried, in turn, until a result is found."
14935 msgstr ""
14936 "1 個以上のサービス指定 (例: \"files\", \"db\", \"nis\")。この行に記載された\n"
14937 "サービスの順序で、結果が得られるまで、指定されたサービスに対する\n"
14938 "問い合わせが順番に行われる。"
14939
14940 #. type: Plain text
14941 #: build/C/man5/nsswitch.conf.5:151
14942 msgid ""
14943 "Optional actions to perform if a particular result is obtained from the "
14944 "preceding service, for example, \"[NOTFOUND=return]\"."
14945 msgstr ""
14946 "特定の結果が直前のサービスで得られた場合に実行されるアクション\n"
14947 "(例: \"[NOTFOUND=return]\")。アクションは省略可能である。"
14948
14949 #. type: Plain text
14950 #: build/C/man5/nsswitch.conf.5:177
14951 msgid ""
14952 "The service specifications supported on your system depend on the presence "
14953 "of shared libraries, and are therefore extensible.  Libraries called I</lib/"
14954 "libnss_SERVICE.so.>B<X> will provide the named I<SERVICE>.  On a standard "
14955 "installation, you can use \"files\", \"db\", \"nis\", and \"nisplus\".  For "
14956 "the B<hosts> database, you can additionally specify \"dns\".  For the "
14957 "B<passwd>, B<group>, and B<shadow> databases, you can additionally specify "
14958 "\"compat\" (see B<Compatibility mode> below).  The version number B<X> may "
14959 "be 1 for glibc 2.0, or 2 for glibc 2.1 and later.  On systems with "
14960 "additional libraries installed, you may have access to further services such "
14961 "as \"hesiod\", \"ldap\", \"winbind\" and \"wins\"."
14962 msgstr ""
14963 "利用しているシステムでどのサービス指定が利用できるかは、共有ライブラリ\n"
14964 "があるかどうかに依存しており、そのためサービス指定は拡張できるように\n"
14965 "なっている。I</lib/libnss_SERVICE.so.>B<X> という名前のライブラリが\n"
14966 "I<SERVICE> という名前のサービスを提供する。標準のインストールを行った\n"
14967 "場合、\"files\", \"db\", \"nis\", \"nisplus\" が利用できる。\n"
14968 "データベース B<hosts> の場合には、追加で \"dns\" も指定できる。\n"
14969 "データベース B<passwd>, B<group>, B<shadow> の場合には、追加で\n"
14970 "\"compat\" (下記の B<互換モード> を参照)。バージョン番号 B<X> は、\n"
14971 "glibc 2.0 の場合は 1、glibc 2.1 の場合は 2 で、それ以降も同様である。\n"
14972 "追加のライブラリがインストールされているシステムでは、\"hesiod\",\n"
14973 "\"ldap\", \"winbind\", \"wins\" などの追加のサービスが利用できる。"
14974
14975 #. type: Plain text
14976 #: build/C/man5/nsswitch.conf.5:182
14977 msgid ""
14978 "An action may also be specified following a service specification.  The "
14979 "action modifies the behavior following a result obtained from the preceding "
14980 "data source.  Action items take the general form:"
14981 msgstr ""
14982 "サービス指定の次にアクションを指定することもできる。アクションを\n"
14983 "使うと、直前のデータ源から結果が得られた後の動作を変更できる。\n"
14984 "アクション指定は、一般的には以下の形式となる。"
14985
14986 #. type: Plain text
14987 #: build/C/man5/nsswitch.conf.5:185
14988 msgid "[I<STATUS>=I<ACTION>]"
14989 msgstr "[I<STATUS>=I<ACTION>]"
14990
14991 #. type: Plain text
14992 #: build/C/man5/nsswitch.conf.5:187
14993 msgid "[!I<STATUS>=I<ACTION>]"
14994 msgstr "[!I<STATUS>=I<ACTION>]"
14995
14996 #. type: Plain text
14997 #: build/C/man5/nsswitch.conf.5:190
14998 msgid "where"
14999 msgstr "STATUS と ACTION はそれぞれ以下の値を取る。"
15000
15001 #. type: Plain text
15002 #: build/C/man5/nsswitch.conf.5:201
15003 msgid "I<STATUS> =E<gt> B<success> | B<notfound> | B<unavail> | B<tryagain>"
15004 msgstr "I<STATUS> =E<gt> B<success> | B<notfound> | B<unavail> | B<tryagain>"
15005
15006 #. type: Plain text
15007 #: build/C/man5/nsswitch.conf.5:207
15008 msgid "I<ACTION> =E<gt> B<return> | B<continue>"
15009 msgstr "I<ACTION> =E<gt> B<return> | B<continue>"
15010
15011 #. type: Plain text
15012 #: build/C/man5/nsswitch.conf.5:212
15013 msgid ""
15014 "The ! negates the test, matching all possible results except the one "
15015 "specified.  The case of the keywords is not significant."
15016 msgstr ""
15017 "! はテスト結果を反転させる。\n"
15018 "つまり、指定された以外の全ての結果にマッチする。\n"
15019 "キーワードの大文字、小文字は無視される。"
15020
15021 #. type: Plain text
15022 #: build/C/man5/nsswitch.conf.5:217
15023 msgid ""
15024 "The I<STATUS> value is matched against the result of the lookup function "
15025 "called by the preceding service specification, and can be one of:"
15026 msgstr ""
15027 "I<STATUS> は、直前のサービス指定で呼び出しされた検索処理の結果に\n"
15028 "対して照合が行われる。 I<STATUS> には以下のいずれかを指定できる。"
15029
15030 #. type: TP
15031 #: build/C/man5/nsswitch.conf.5:218
15032 #, no-wrap
15033 msgid "B<success>"
15034 msgstr "B<success>"
15035
15036 #. type: Plain text
15037 #: build/C/man5/nsswitch.conf.5:222
15038 msgid ""
15039 "No error occurred and the requested entry is returned.  The default action "
15040 "for this condition is \"return\"."
15041 msgstr ""
15042 "エラーは発生せず、要求されたエントリが返された。\n"
15043 "この場合のデフォルトのアクションは \"return\" である。"
15044
15045 #. type: TP
15046 #: build/C/man5/nsswitch.conf.5:222
15047 #, no-wrap
15048 msgid "B<notfound>"
15049 msgstr "B<notfound>"
15050
15051 #. type: Plain text
15052 #: build/C/man5/nsswitch.conf.5:226
15053 msgid ""
15054 "The lookup succeeded, but the requested entry was not found.  The default "
15055 "action for this condition is \"continue\"."
15056 msgstr ""
15057 "検索は成功したが、要求されたエントリが見つからなかった。\n"
15058 "この場合のデフォルトのアクションは \"continue\" である。"
15059
15060 #. type: TP
15061 #: build/C/man5/nsswitch.conf.5:226
15062 #, no-wrap
15063 msgid "B<unavail>"
15064 msgstr "B<unavail>"
15065
15066 #. type: Plain text
15067 #: build/C/man5/nsswitch.conf.5:233
15068 msgid ""
15069 "The service is permanently unavailable.  This can mean either that the "
15070 "required file cannot be read, or, for network services, that the server is "
15071 "not available or does not allow queries.  The default action for this "
15072 "condition is \"continue\"."
15073 msgstr ""
15074 "サービスが永続的に利用できない。\n"
15075 "必要なファイルを読み込むことができない、\n"
15076 "ネットワークサービスの場合には、サーバが利用できないとか、\n"
15077 "サーバが問い合わせを許可していない、などが考えられる。\n"
15078 "この場合のデフォルトのアクションは \"continue\" である。"
15079
15080 #. type: TP
15081 #: build/C/man5/nsswitch.conf.5:233
15082 #, no-wrap
15083 msgid "B<tryagain>"
15084 msgstr "B<tryagain>"
15085
15086 #. type: Plain text
15087 #: build/C/man5/nsswitch.conf.5:239
15088 msgid ""
15089 "The service is temporarily unavailable.  This could mean a file is locked or "
15090 "a server currently cannot accept more connections.  The default action for "
15091 "this condition is \"continue\"."
15092 msgstr ""
15093 "サービスが一時的に利用できない。\n"
15094 "ファイルがロックされている、サーバがこれ以上接続を受け付けることができな"
15095 "い、\n"
15096 "などが考えられる。デフォル トのアクションは \"continue\" である。"
15097
15098 #. type: Plain text
15099 #: build/C/man5/nsswitch.conf.5:244
15100 msgid "The I<ACTION> value can be one of:"
15101 msgstr "I<ACTION> には以下のいずれかを指定できる。"
15102
15103 #. type: TP
15104 #: build/C/man5/nsswitch.conf.5:245
15105 #, no-wrap
15106 msgid "B<return>"
15107 msgstr "B<return>"
15108
15109 #. type: Plain text
15110 #: build/C/man5/nsswitch.conf.5:257
15111 msgid ""
15112 "Return a result now.  Do not call any further lookup functions.  However, "
15113 "for compatibility reasons, if this is the selected action for the B<group> "
15114 "database and the B<notfound> status, and the configuration file does not "
15115 "contain the B<initgroups> line, the next lookup function is always called, "
15116 "without affecting the search result."
15117 msgstr ""
15118 "結果をすぐに返す。 これ以上検索処理は呼び出されない。 ただし、互換性のため、 "
15119 "選択されたアクションが B<group> データベースに対するもので、 ステータスが "
15120 "B<notfound> であった場合で、 設定ファイルに B<initgroups> の行が含まれていな"
15121 "い場合には、次の検索処理は常に呼び出される (検索結果への影響はない)。"
15122
15123 #. type: TP
15124 #: build/C/man5/nsswitch.conf.5:257
15125 #, no-wrap
15126 msgid "B<continue>"
15127 msgstr "B<continue>"
15128
15129 #. type: Plain text
15130 #: build/C/man5/nsswitch.conf.5:260
15131 msgid "Call the next lookup function."
15132 msgstr "次の検索処理を呼び出す。"
15133
15134 #. type: SS
15135 #: build/C/man5/nsswitch.conf.5:261
15136 #, no-wrap
15137 msgid "Compatibility mode (compat)"
15138 msgstr "互換モード (compat)"
15139
15140 #. type: Plain text
15141 #: build/C/man5/nsswitch.conf.5:267
15142 msgid ""
15143 "The NSS \"compat\" service is similar to \"files\" except that it "
15144 "additionally permits special entries in I</etc/passwd> for granting users or "
15145 "members of netgroups access to the system.  The following entries are valid "
15146 "in this mode:"
15147 msgstr ""
15148 "NSS \"compat\" サービスは \"files\" と似ているが、システムにアクセスできる\n"
15149 "ユーザやネットグループ (netgroup) のメンバの指定に I</etc/passwd> で\n"
15150 "特別なエントリを追加で使うことができる点が異なる。\n"
15151 "このモードでは、以下のエントリを使うことができる。"
15152
15153 #. type: TP
15154 #: build/C/man5/nsswitch.conf.5:268
15155 #, no-wrap
15156 msgid "B<+>I<user>"
15157 msgstr "B<+>I<user>"
15158
15159 #. type: Plain text
15160 #: build/C/man5/nsswitch.conf.5:273
15161 msgid "Include the specified I<user> from the NIS passwd map."
15162 msgstr "NIS パスワードマップの指定された I<user> を含める。"
15163
15164 #. type: TP
15165 #: build/C/man5/nsswitch.conf.5:273
15166 #, no-wrap
15167 msgid "B<+@>I<netgroup>"
15168 msgstr "B<+@>I<netgroup>"
15169
15170 #. type: Plain text
15171 #: build/C/man5/nsswitch.conf.5:277
15172 msgid "Include all users in the given I<netgroup>."
15173 msgstr "指定された I<netgroup> の全ユーザを含める。"
15174
15175 #. type: TP
15176 #: build/C/man5/nsswitch.conf.5:277
15177 #, no-wrap
15178 msgid "B<->I<user>"
15179 msgstr "B<->I<user>"
15180
15181 #. type: Plain text
15182 #: build/C/man5/nsswitch.conf.5:282
15183 msgid "Exclude the specified I<user> from the NIS passwd map."
15184 msgstr "NIS パスワードマップの指定された I<user> を除外する。"
15185
15186 #. type: TP
15187 #: build/C/man5/nsswitch.conf.5:282
15188 #, no-wrap
15189 msgid "B<-@>I<netgroup>"
15190 msgstr "B<-@>I<netgroup>"
15191
15192 #. type: Plain text
15193 #: build/C/man5/nsswitch.conf.5:286
15194 msgid "Exclude all users in the given I<netgroup>."
15195 msgstr "指定された I<netgroup> の全ユーザを除外する。"
15196
15197 #. type: TP
15198 #: build/C/man5/nsswitch.conf.5:286
15199 #, no-wrap
15200 msgid "B<+>"
15201 msgstr "B<+>"
15202
15203 #. type: Plain text
15204 #: build/C/man5/nsswitch.conf.5:290
15205 msgid ""
15206 "Include every user, except previously excluded ones, from the NIS passwd map."
15207 msgstr ""
15208 "NIS パスワードマップのユーザのうち、\n"
15209 "それまでに除外されていない全てのユーザを含める。"
15210
15211 #. type: Plain text
15212 #: build/C/man5/nsswitch.conf.5:298
15213 msgid ""
15214 "By default the source is \"nis\", but this may be overridden by specifying "
15215 "\"nisplus\" as the source for the pseudo-databases B<passwd_compat>, "
15216 "B<group_compat>, and B<shadow_compat>."
15217 msgstr ""
15218 "デフォルトでは、データ源は \"nis\" だが、\n"
15219 "擬似データベース B<passwd_compat>, B<group_compat>, B<shadow_compat>\n"
15220 "ではデータ源として \"nisplus\" を指定することもできる。"
15221
15222 #. type: Plain text
15223 #: build/C/man5/nsswitch.conf.5:305
15224 msgid ""
15225 "A service named I<SERVICE> is implemented by a shared object library named "
15226 "I<libnss_SERVICE.so.>B<X> that resides in I</lib>."
15227 msgstr ""
15228 "I<SERVICE> という名前のサービスは I<libnss_SERVICE.so.>B<X> という\n"
15229 "名前の共有オブジェクトライブラリで実装されている。\n"
15230 "これは I</lib> に置かれる。"
15231
15232 #. type: Plain text
15233 #: build/C/man5/nsswitch.conf.5:310
15234 msgid "NSS configuration file."
15235 msgstr "NSS の設定ファイル。"
15236
15237 #. type: TP
15238 #: build/C/man5/nsswitch.conf.5:310
15239 #, no-wrap
15240 msgid "I</lib/libnss_compat.so.>B<X>"
15241 msgstr "I</lib/libnss_compat.so.>B<X>"
15242
15243 #. type: Plain text
15244 #: build/C/man5/nsswitch.conf.5:313
15245 msgid "implements \"compat\" source."
15246 msgstr "\"compat\" ソースを実装したもの。"
15247
15248 #. type: TP
15249 #: build/C/man5/nsswitch.conf.5:313
15250 #, no-wrap
15251 msgid "I</lib/libnss_db.so.>B<X>"
15252 msgstr "I</lib/libnss_db.so.>B<X>"
15253
15254 #. type: Plain text
15255 #: build/C/man5/nsswitch.conf.5:316
15256 msgid "implements \"db\" source."
15257 msgstr "\"db\" ソースを実装したもの。"
15258
15259 #. type: TP
15260 #: build/C/man5/nsswitch.conf.5:316
15261 #, no-wrap
15262 msgid "I</lib/libnss_dns.so.>B<X>"
15263 msgstr "I</lib/libnss_dns.so.>B<X>"
15264
15265 #. type: Plain text
15266 #: build/C/man5/nsswitch.conf.5:319
15267 msgid "implements \"dns\" source."
15268 msgstr "\"dns\" ソースを実装したもの。"
15269
15270 #. type: TP
15271 #: build/C/man5/nsswitch.conf.5:319
15272 #, no-wrap
15273 msgid "I</lib/libnss_files.so.>B<X>"
15274 msgstr "I</lib/libnss_files.so.>B<X>"
15275
15276 #. type: Plain text
15277 #: build/C/man5/nsswitch.conf.5:322
15278 msgid "implements \"files\" source."
15279 msgstr "\"files\" ソースを実装したもの。"
15280
15281 #. type: TP
15282 #: build/C/man5/nsswitch.conf.5:322
15283 #, no-wrap
15284 msgid "I</lib/libnss_hesiod.so.>B<X>"
15285 msgstr "I</lib/libnss_hesiod.so.>B<X>"
15286
15287 #. type: Plain text
15288 #: build/C/man5/nsswitch.conf.5:325
15289 msgid "implements \"hesiod\" source."
15290 msgstr "\"hesoid\" ソースを実装したもの。"
15291
15292 #. type: TP
15293 #: build/C/man5/nsswitch.conf.5:325
15294 #, no-wrap
15295 msgid "I</lib/libnss_nis.so.>B<X>"
15296 msgstr "I</lib/libnss_nis.so.>B<X>"
15297
15298 #. type: Plain text
15299 #: build/C/man5/nsswitch.conf.5:328
15300 msgid "implements \"nis\" source."
15301 msgstr "\"nis\" ソースを実装したもの。"
15302
15303 #. type: TP
15304 #: build/C/man5/nsswitch.conf.5:328
15305 #, no-wrap
15306 msgid "I</lib/libnss_nisplus.so.>B<X>"
15307 msgstr "I</lib/libnss_nisplus.so.>B<X>"
15308
15309 #. type: Plain text
15310 #: build/C/man5/nsswitch.conf.5:331
15311 msgid "implements \"nisplus\" source."
15312 msgstr "\"nisplus\" ソースを実装したもの。"
15313
15314 #. type: Plain text
15315 #: build/C/man5/nsswitch.conf.5:339
15316 msgid ""
15317 "Within each process that uses B<nsswitch.conf>, the entire file is read only "
15318 "once.  If the file is later changed, the process will continue using the old "
15319 "configuration."
15320 msgstr ""
15321 "I<nsswitch.conf> を利用するプロセスは、ファイルは一度しか読み込まない。\n"
15322 "その後で nsswitch.conf が書き換えられても、そのプロセスは古い設定のままで\n"
15323 "動作を継続する。"
15324
15325 #. type: Plain text
15326 #: build/C/man5/nsswitch.conf.5:352
15327 msgid ""
15328 "Traditionally, there was only a single source for service information, often "
15329 "in the form of a single configuration file (e.g., I</etc/passwd>).  However, "
15330 "as other name services, such as the Network Information Service (NIS) and "
15331 "the Domain Name Service (DNS), became popular, a method was needed that "
15332 "would be more flexible than fixed search orders coded into the C library.  "
15333 "The Name Service Switch mechanism, which was based on the mechanism used by "
15334 "Sun Microsystems in the Solaris 2 C library, introduced a cleaner solution "
15335 "to the problem."
15336 msgstr ""
15337 "伝統的には、サービス情報の情報源は一つだけであり、\n"
15338 "その設定ファイルの形式も一つであった (例えば I</etc/passwd>)。\n"
15339 "一方で、 Network Information Service (NIS) や Domain Name Service\n"
15340 "(DNS) などの他の名前サービスが一般的になるに連れて、C ライブラリに埋め\n"
15341 "込まれた固定順序ではなく、検索順序を柔軟に指定する方法が必要になった。\n"
15342 "ネームサービススイッチ機構は、この問題に対するよりきれいな解決方法と\n"
15343 "なっている。ネームサービススイッチ機構は、 Sun Microsystems が \n"
15344 "Solaris 2 の C ライブラリで使った機構が基になっている。"
15345
15346 #. type: Plain text
15347 #: build/C/man5/nsswitch.conf.5:355
15348 msgid "B<getent>(1), B<nss>(5)"
15349 msgstr "B<getent>(1), B<nss>(5)"
15350
15351 #. type: TH
15352 #: build/C/man7/packet.7:12
15353 #, no-wrap
15354 msgid "PACKET"
15355 msgstr "PACKET"
15356
15357 #. type: TH
15358 #: build/C/man7/packet.7:12
15359 #, no-wrap
15360 msgid "2014-02-26"
15361 msgstr "2014-02-26"
15362
15363 #. type: Plain text
15364 #: build/C/man7/packet.7:15
15365 msgid "packet - packet interface on device level"
15366 msgstr "packet - デバイスレベルのパケットインターフェース"
15367
15368 #. type: Plain text
15369 #: build/C/man7/packet.7:18
15370 #, no-wrap
15371 msgid "B<#include E<lt>sys/socket.hE<gt>>\n"
15372 msgstr "B<#include E<lt>sys/socket.hE<gt>>\n"
15373
15374 #. type: Plain text
15375 #: build/C/man7/packet.7:20
15376 #, no-wrap
15377 msgid "B<#include E<lt>netpacket/packet.hE<gt>>\n"
15378 msgstr "B<#include E<lt>netpacket/packet.hE<gt>>\n"
15379
15380 #. type: Plain text
15381 #: build/C/man7/packet.7:22
15382 #, no-wrap
15383 msgid "B<#include E<lt>net/ethernet.hE<gt> /* the L2 protocols */>\n"
15384 msgstr "B<#include E<lt>net/ethernet.hE<gt> /* the L2 protocols */>\n"
15385
15386 #. type: Plain text
15387 #: build/C/man7/packet.7:24
15388 #, no-wrap
15389 msgid "B<packet_socket = socket(AF_PACKET, int >I<socket_type>B<, int >I<protocol>B<);>\n"
15390 msgstr "B<packet_socket = socket(AF_PACKET, int >I<socket_type>B<, int >I<protocol>B<);>\n"
15391
15392 #. type: Plain text
15393 #: build/C/man7/packet.7:30
15394 msgid ""
15395 "Packet sockets are used to receive or send raw packets at the device driver "
15396 "(OSI Layer 2) level.  They allow the user to implement protocol modules in "
15397 "user space on top of the physical layer."
15398 msgstr ""
15399 "packet ソケットは、デバイスドライバ (OSI レイヤ 2) レベルで 生のパケット "
15400 "(raw packet) を送受信するために用いられる。 packet ソケットを使うと、ユーザー"
15401 "空間で物理層の上に プロトコルモジュールを実装することができる。"
15402
15403 #. type: Plain text
15404 #: build/C/man7/packet.7:51
15405 msgid ""
15406 "The I<socket_type> is either B<SOCK_RAW> for raw packets including the link-"
15407 "level header or B<SOCK_DGRAM> for cooked packets with the link-level header "
15408 "removed.  The link-level header information is available in a common format "
15409 "in a I<sockaddr_ll>.  I<protocol> is the IEEE 802.3 protocol number in "
15410 "network byte order.  See the I<E<lt>linux/if_ether.hE<gt>> include file for "
15411 "a list of allowed protocols.  When protocol is set to B<htons(ETH_P_ALL)> "
15412 "then all protocols are received.  All incoming packets of that protocol type "
15413 "will be passed to the packet socket before they are passed to the protocols "
15414 "implemented in the kernel."
15415 msgstr ""
15416 "I<socket_type> には B<SOCK_RAW> と B<SOCK_DGRAM> のいずれかを指定する。 "
15417 "B<SOCK_RAW> はリンクレベルヘッダを含む raw パケットを、 B<SOCK_DGRAM> はリン"
15418 "クレベルヘッダが削除された加工済みパケットを示す。 リンクレベルヘッダ情報は "
15419 "I<sockaddr_ll> で共通のフォーマットで入手できる。 I<protocol> には IEEE "
15420 "802.3 プロトコル番号を ネットワークバイトオーダーで指定する。 指定できるプロ"
15421 "トコルのリストは、インクルードファイル I<E<lt>linux/if_ether.hE<gt>> を参照。"
15422 "プロトコルを B<htons(ETH_P_ALL)> にすると、全てのプロトコルが受信される。 外"
15423 "部から来たパケットのうち指定したプロトコルのものは、 カーネルに実装されている"
15424 "プロトコルに渡される前の段階で、 packet ソケットに渡される。"
15425
15426 #. type: Plain text
15427 #: build/C/man7/packet.7:55
15428 msgid ""
15429 "Only processes with effective UID 0 or the B<CAP_NET_RAW> capability may "
15430 "open packet sockets."
15431 msgstr ""
15432 "packet ソケットをオープンできるのは、 実効ユーザーID が 0 のプロセスか、 "
15433 "B<CAP_NET_RAW> ケーパビリティを持つプロセスだけである。"
15434
15435 #. type: Plain text
15436 #: build/C/man7/packet.7:73
15437 msgid ""
15438 "B<SOCK_RAW> packets are passed to and from the device driver without any "
15439 "changes in the packet data.  When receiving a packet, the address is still "
15440 "parsed and passed in a standard I<sockaddr_ll> address structure.  When "
15441 "transmitting a packet, the user supplied buffer should contain the physical "
15442 "layer header.  That packet is then queued unmodified to the network driver "
15443 "of the interface defined by the destination address.  Some device drivers "
15444 "always add other headers.  B<SOCK_RAW> is similar to but not compatible with "
15445 "the obsolete B<AF_INET/SOCK_PACKET> of Linux 2.0."
15446 msgstr ""
15447 "B<SOCK_RAW> パケットでは、パケットをデバイスドライバと受け渡しする際、 パケッ"
15448 "トデータに変更が行われることはない。 パケットの受信時には、アドレスの解析だけ"
15449 "は行われ、 標準的な I<sockaddr_ll> アドレス構造体に渡される。パケットの送信時"
15450 "には、ユーザが指定する バッファに物理層のヘッダが含まれている必要がある。 パ"
15451 "ケットはそのまま修正を受けずに、行き先アドレスから決定される インターフェース"
15452 "のネットワークドライバにキューイングされる。 デバイスドライバによっては、他の"
15453 "ヘッダを常に追加するものもある。 B<SOCK_RAW> は Linux 2.0 の obosolete な "
15454 "B<AF_INET/SOCK_PACKET> と似ているが、互換性があるわけではない。"
15455
15456 #. type: Plain text
15457 #: build/C/man7/packet.7:83
15458 msgid ""
15459 "B<SOCK_DGRAM> operates on a slightly higher level.  The physical header is "
15460 "removed before the packet is passed to the user.  Packets sent through a "
15461 "B<SOCK_DGRAM> packet socket get a suitable physical layer header based on "
15462 "the information in the I<sockaddr_ll> destination address before they are "
15463 "queued."
15464 msgstr ""
15465 "B<SOCK_DGRAM> はやや高位のレベルで動作する。物理ヘッダは、パケットがユーザー"
15466 "に 渡される前に削除される。 B<SOCK_DGRAM> の packet ソケットを通して送られる"
15467 "パケットは、 I<sockaddr_ll> の行き先アドレスの情報に基づき、適切な物理層の"
15468 "ヘッダが付加されてから、 キューに送られる。"
15469
15470 #. type: Plain text
15471 #: build/C/man7/packet.7:96
15472 msgid ""
15473 "By default all packets of the specified protocol type are passed to a packet "
15474 "socket.  To get packets only from a specific interface use B<bind>(2)  "
15475 "specifying an address in a I<struct sockaddr_ll> to bind the packet socket "
15476 "to an interface.  Only the I<sll_protocol> and the I<sll_ifindex> address "
15477 "fields are used for purposes of binding."
15478 msgstr ""
15479 "デフォルトでは、指定したプロトコル型のパケットはすべて packet ソケットに送ら"
15480 "れる。特定のインターフェースからのパケットだけを 取得したい場合には、 "
15481 "I<struct sockaddr_ll> にアドレスを指定して B<bind>(2)  を呼び、 packet ソケッ"
15482 "トをそのインターフェースに結び付ける (バインドする)。 バインドの際には、アド"
15483 "レスフィールドのうち I<sll_protocol> と I<sll_ifindex> だけが用いられる。"
15484
15485 #. type: Plain text
15486 #: build/C/man7/packet.7:100
15487 msgid "The B<connect>(2)  operation is not supported on packet sockets."
15488 msgstr "B<connect>(2)  操作は packet ソケットではサポートされていない。"
15489
15490 #. type: Plain text
15491 #: build/C/man7/packet.7:109
15492 msgid ""
15493 "When the B<MSG_TRUNC> flag is passed to B<recvmsg>(2), B<recv>(2), "
15494 "B<recvfrom>(2)  the real length of the packet on the wire is always "
15495 "returned, even when it is longer than the buffer."
15496 msgstr ""
15497 "B<MSG_TRUNC> フラグが B<recvmsg>(2), B<recv>(2), B<recvfrom>(2)  に渡される"
15498 "と、 (バッファサイズより大きかったとしても) 常に実際に通信された パケットの長"
15499 "さが返される。"
15500
15501 #. type: SS
15502 #: build/C/man7/packet.7:109
15503 #, no-wrap
15504 msgid "Address types"
15505 msgstr "アドレスのタイプ"
15506
15507 #. type: Plain text
15508 #: build/C/man7/packet.7:113
15509 msgid "The I<sockaddr_ll> is a device independent physical layer address."
15510 msgstr "I<sockaddr_ll> はデバイスに依存しない物理層のアドレスである。"
15511
15512 #. type: Plain text
15513 #: build/C/man7/packet.7:125
15514 #, no-wrap
15515 msgid ""
15516 "struct sockaddr_ll {\n"
15517 "    unsigned short sll_family;   /* Always AF_PACKET */\n"
15518 "    unsigned short sll_protocol; /* Physical layer protocol */\n"
15519 "    int            sll_ifindex;  /* Interface number */\n"
15520 "    unsigned short sll_hatype;   /* ARP hardware type */\n"
15521 "    unsigned char  sll_pkttype;  /* Packet type */\n"
15522 "    unsigned char  sll_halen;    /* Length of address */\n"
15523 "    unsigned char  sll_addr[8];  /* Physical layer address */\n"
15524 "};\n"
15525 msgstr ""
15526 "struct sockaddr_ll {\n"
15527 "    unsigned short sll_family;   /* 常に AF_PACKET */\n"
15528 "    unsigned short sll_protocol; /* 物理層のプロトコル */\n"
15529 "    int            sll_ifindex;  /* インターフェース番号 */\n"
15530 "    unsigned short sll_hatype;   /* ARP ハードウェア種別 */\n"
15531 "    unsigned char  sll_pkttype;  /* パケット種別 */\n"
15532 "    unsigned char  sll_halen;    /* アドレスの長さ */\n"
15533 "    unsigned char  sll_addr[8];  /* 物理層のアドレス */\n"
15534 "};\n"
15535
15536 #. type: Plain text
15537 #: build/C/man7/packet.7:164
15538 msgid ""
15539 "I<sll_protocol> is the standard ethernet protocol type in network byte order "
15540 "as defined in the I<E<lt>linux/if_ether.hE<gt>> include file.  It defaults "
15541 "to the socket's protocol.  I<sll_ifindex> is the interface index of the "
15542 "interface (see B<netdevice>(7)); 0 matches any interface (only permitted for "
15543 "binding).  I<sll_hatype> is an ARP type as defined in the I<E<lt>linux/"
15544 "if_arp.hE<gt>> include file.  I<sll_pkttype> contains the packet type.  "
15545 "Valid types are B<PACKET_HOST> for a packet addressed to the local host, "
15546 "B<PACKET_BROADCAST> for a physical layer broadcast packet, "
15547 "B<PACKET_MULTICAST> for a packet sent to a physical layer multicast address, "
15548 "B<PACKET_OTHERHOST> for a packet to some other host that has been caught by "
15549 "a device driver in promiscuous mode, and B<PACKET_OUTGOING> for a packet "
15550 "originated from the local host that is looped back to a packet socket.  "
15551 "These types make sense only for receiving.  I<sll_addr> and I<sll_halen> "
15552 "contain the physical layer (e.g., IEEE 802.3) address and its length.  The "
15553 "exact interpretation depends on the device."
15554 msgstr ""
15555 "I<sll_protocol> は標準的なイーサネットプロトコルのタイプで、 ネットワーク\n"
15556 "バイトオーダーで記述する。 インクルードファイル\n"
15557 "I<E<lt>linux/if_ether.hE<gt>> で定義されている。 これがこのソケットのプロト\n"
15558 "コルのデフォルトとなる。 I<sll_ifindex> はそのインターフェースの interface\n"
15559 "index である (B<netdevice>(7) を参照)。 0 は (バインドが許可されている) 任\n"
15560 "意のインターフェースにマッチする。 I<sll_hatype> は、インクルードファイル\n"
15561 "I<E<lt>linux/if_arp.hE<gt>> で定義されている ARP 種別である。\n"
15562 "I<sll_pkttype> はパケット種別である。指定できる種別は以下のいずれかである:\n"
15563 "B<PACKET_HOST> (ローカルホスト向けのパケット)、 B<PACKET_BORADCAST> (物理層\n"
15564 "のブロードキャストパケット)、 B<PACKET_MULTICAST> (物理層のマルチキャストア\n"
15565 "ドレスに送るパケット)、 B<PACKET_OTHERHOST> (他のホストに向けられたパケット\n"
15566 "のうち、 無差別モード (promiscuous mode: 後述) のデバイスドライバにより補足\n"
15567 "されたもの)、 B<PACKET_OUTGOING> (ローカルホストから発信され、 packet ソ"
15568 "ケッ\n"
15569 "トにループバックしてきたパケット)。 これらの種別が意味を持つのは受信時のみ\n"
15570 "である。 I<sll_addr> と I<sll_halen> は、物理層の (つまり IEEE 802.3 の) \n"
15571 "アドレスとその長さである。 厳密な解釈はデバイスに依存する。"
15572
15573 #. type: Plain text
15574 #: build/C/man7/packet.7:180
15575 msgid ""
15576 "When you send packets it is enough to specify I<sll_family>, I<sll_addr>, "
15577 "I<sll_halen>, I<sll_ifindex>.  The other fields should be 0.  I<sll_hatype> "
15578 "and I<sll_pkttype> are set on received packets for your information.  For "
15579 "bind only I<sll_protocol> and I<sll_ifindex> are used."
15580 msgstr ""
15581 "パケットを送る場合は、 I<sll_family>, I<sll_addr>, I<sll_halen>, "
15582 "I<sll_ifindex> を指定すれば十分である。 その他のフィールドは 0 にしておくべき"
15583 "である。 I<sll_hatype> と I<sll_pkttype> には受信したパケットの情報が設定され"
15584 "る。 バインドの際には、 I<sll_protocol> と I<sll_ifindex> だけが使用される。"
15585
15586 #. type: Plain text
15587 #: build/C/man7/packet.7:185
15588 msgid ""
15589 "Packet socket options are configured by calling B<setsockopt>(2)  with level "
15590 "B<SOL_PACKET>."
15591 msgstr "パケットソケットのオプションは、レベル B<SOL_PACKET> を指定して B<setsockopt>(2) を呼び出すことで設定できる。"
15592
15593 #. type: TP
15594 #: build/C/man7/packet.7:185
15595 #, no-wrap
15596 msgid "B<PACKET_ADD_MEMBERSHIP>"
15597 msgstr "B<PACKET_ADD_MEMBERSHIP>"
15598
15599 #. type: TP
15600 #: build/C/man7/packet.7:188
15601 #, no-wrap
15602 msgid "B<PACKET_DROP_MEMBERSHIP>"
15603 msgstr "B<PACKET_DROP_MEMBERSHIP>"
15604
15605 #. type: Plain text
15606 #: build/C/man7/packet.7:200
15607 msgid ""
15608 "Packet sockets can be used to configure physical layer multicasting and "
15609 "promiscuous mode.  B<PACKET_ADD_MEMBERSHIP> adds a binding and "
15610 "B<PACKET_DROP_MEMBERSHIP> drops it.  They both expect a I<packet_mreq> "
15611 "structure as argument:"
15612 msgstr "packet ソケットは、物理層のマルチキャストや 無差別モード (promiscuous mode) を設定して使うことができる。 B<PACKET_ADD_MEMBERSHIP> はバインドを追加し、 B<PACKET_DROP_MEMBERSHIP> はバインドを削除する。これらはいずれも I<packet_mreq> 構造体を引き数に取る。"
15613
15614 #. type: Plain text
15615 #: build/C/man7/packet.7:209
15616 #, no-wrap
15617 msgid ""
15618 "struct packet_mreq {\n"
15619 "    int            mr_ifindex;    /* interface index */\n"
15620 "    unsigned short mr_type;       /* action */\n"
15621 "    unsigned short mr_alen;       /* address length */\n"
15622 "    unsigned char  mr_address[8]; /* physical layer address */\n"
15623 "};\n"
15624 msgstr ""
15625 "struct packet_mreq {\n"
15626 "    int            mr_ifindex;    /* インターフェース番号 */\n"
15627 "    unsigned short mr_type;       /* 動作 */\n"
15628 "    unsigned short mr_alen;       /* アドレスの長さ */\n"
15629 "    unsigned char  mr_address[8]; /* 物理層のアドレス */\n"
15630 "};\n"
15631
15632 #. type: Plain text
15633 #: build/C/man7/packet.7:230
15634 msgid ""
15635 "B<mr_ifindex> contains the interface index for the interface whose status "
15636 "should be changed.  The B<mr_type> parameter specifies which action to "
15637 "perform.  B<PACKET_MR_PROMISC> enables receiving all packets on a shared "
15638 "medium (often known as \"promiscuous mode\"), B<PACKET_MR_MULTICAST> binds "
15639 "the socket to the physical layer multicast group specified in B<mr_address> "
15640 "and B<mr_alen>, and B<PACKET_MR_ALLMULTI> sets the socket up to receive all "
15641 "multicast packets arriving at the interface."
15642 msgstr ""
15643 "I<mr_ifindex> は、ステータスを変更したいインターフェースの インターフェース番"
15644 "号である。 I<mr_type> パラメータは実行する動作を指定する: "
15645 "B<PACKET_MR_PROMISC> は、共有している媒体からの全てのパケットを受信できるよう"
15646 "にする (しばしば \"無差別モード (promiscuous mode)\" と呼ばれる)。 "
15647 "B<PACKET_MR_MULTICAST> は、そのソケットを、 I<mr_address> と I<mr_alen> で指"
15648 "定される物理層のマルチキャストブループにバインドする。 B<PACKET_MR_ALLMULTI> "
15649 "は socket を up にして、そのインターフェースに到達したすべての マルチキャスト"
15650 "パケットを受信できるようにする。"
15651
15652 #. type: Plain text
15653 #: build/C/man7/packet.7:236
15654 msgid ""
15655 "In addition, the traditional ioctls B<SIOCSIFFLAGS>, B<SIOCADDMULTI>, "
15656 "B<SIOCDELMULTI> can be used for the same purpose."
15657 msgstr ""
15658 "昔からある ioctl だけでなく、 B<SIOCSIFFLAGS>, B<SIOCADDMULTI>, "
15659 "B<SIOCDELMULTI> を同じ目的に用いることができる。"
15660
15661 #. type: TP
15662 #: build/C/man7/packet.7:236
15663 #, no-wrap
15664 msgid "B<PACKET_AUXDATA> (since Linux 2.6.21)"
15665 msgstr "B<PACKET_AUXDATA> (Linux 2.6.21 以降)"
15666
15667 #.  commit 8dc4194474159660d7f37c495e3fc3f10d0db8cc
15668 #. type: Plain text
15669 #: build/C/man7/packet.7:246
15670 msgid ""
15671 "If this binary option is enabled, the packet socket passes a metadata "
15672 "structure along with each packet in the B<recvmsg>(2)  control field.  The "
15673 "structure can be read with B<cmsg>(3).  It is defined as"
15674 msgstr ""
15675
15676 #. type: Plain text
15677 #: build/C/man7/packet.7:258
15678 #, no-wrap
15679 msgid ""
15680 "struct tpacket_auxdata {\n"
15681 "    __u32 tp_status;\n"
15682 "    __u32 tp_len;      /* packet length */\n"
15683 "    __u32 tp_snaplen;  /* captured length */\n"
15684 "    __u16 tp_mac;\n"
15685 "    __u16 tp_net;\n"
15686 "    __u16 tp_vlan_tci;\n"
15687 "    __u16 tp_padding;\n"
15688 "};\n"
15689 msgstr ""
15690
15691 #. type: TP
15692 #: build/C/man7/packet.7:260
15693 #, no-wrap
15694 msgid "B<PACKET_FANOUT> (since Linux 3.1)"
15695 msgstr "B<PACKET_FANOUT> (Linux 3.1 以降)"
15696
15697 #.  commit dc99f600698dcac69b8f56dda9a8a00d645c5ffc
15698 #. type: Plain text
15699 #: build/C/man7/packet.7:282
15700 msgid ""
15701 "To scale processing across threads, packet sockets can form a fanout group.  "
15702 "In this mode, each matching packet is enqueued onto only one socket in the "
15703 "group.  A socket joins a fanout group by calling B<setsockopt>(2)  with "
15704 "level B<SOL_PACKET> and option B<PACKET_FANOUT>.  Each network namespace can "
15705 "have up to 65536 independent groups.  A socket selects a group by encoding "
15706 "the ID in the first 16 bits of the integer option value.  The first packet "
15707 "socket to join a group implicitly creates it.  To successfully join an "
15708 "existing group, subsequent packet sockets must have the same protocol, "
15709 "device settings, fanout mode and flags (see below).  Packet sockets can "
15710 "leave a fanout group only by closing the socket.  The group is deleted when "
15711 "the last socket is closed."
15712 msgstr ""
15713
15714 #.  commit 2d36097d26b5991d71a2cf4a20c1a158f0f1bfcd
15715 #. type: Plain text
15716 #: build/C/man7/packet.7:305
15717 msgid ""
15718 "Fanout supports multiple algorithms to spread traffic between sockets.  The "
15719 "default mode, B<PACKET_FANOUT_HASH>, sends packets from the same flow to the "
15720 "same socket to maintain per-flow ordering.  For each packet, it chooses a "
15721 "socket by taking the packet flow hash modulo the number of sockets in the "
15722 "group, where a flow hash is a hash over network-layer address and optional "
15723 "transport-layer port fields.  The load-balance mode B<PACKET_FANOUT_LB> "
15724 "implements a round-robin algorithm.  B<PACKET_FANOUT_CPU> selects the socket "
15725 "based on the CPU that the packet arrived on.  B<PACKET_FANOUT_ROLLOVER> "
15726 "processes all data on a single socket, moves to the next when one becomes "
15727 "backlogged.  B<PACKET_FANOUT_RND> selects the socket using a pseudo-random "
15728 "number generator.  B<PACKET_FANOUT_QM> (available since Linux 3.14)  selects "
15729 "the socket using the recorded queue_mapping of the received skb."
15730 msgstr ""
15731
15732 #. type: Plain text
15733 #: build/C/man7/packet.7:320
15734 msgid ""
15735 "Fanout modes can take additional options.  IP fragmentation causes packets "
15736 "from the same flow to have different flow hashes.  The flag "
15737 "B<PACKET_FANOUT_FLAG_DEFRAG>, if set, causes packet to be defragmented "
15738 "before fanout is applied, to preserve order even in this case.  Fanout mode "
15739 "and options are communicated in the second 16 bits of the integer option "
15740 "value.  The flag B<PACKET_FANOUT_FLAG_ROLLOVER> enables the roll over "
15741 "mechanism as a backup strategy: if the original fanout algorithm selects a "
15742 "backlogged socket, the packet rolls over to the next available one."
15743 msgstr ""
15744
15745 #. type: TP
15746 #: build/C/man7/packet.7:320
15747 #, no-wrap
15748 msgid "B<PACKET_LOSS> (with B<PACKET_TX_RING>)"
15749 msgstr ""
15750
15751 #. type: Plain text
15752 #: build/C/man7/packet.7:325
15753 msgid ""
15754 "If set, do not silently drop a packet on transmission error, but return it "
15755 "with status set to B<TP_STATUS_WRONG_FORMAT>."
15756 msgstr ""
15757
15758 #. type: TP
15759 #: build/C/man7/packet.7:325
15760 #, no-wrap
15761 msgid "B<PACKET_RESERVE> (with B<PACKET_RX_RING>)"
15762 msgstr ""
15763
15764 #. type: Plain text
15765 #: build/C/man7/packet.7:330
15766 msgid ""
15767 "By default, a packet receive ring writes packets immediately following the "
15768 "metadata structure and alignment padding.  This integer option reserves "
15769 "additional headroom."
15770 msgstr ""
15771
15772 #. type: TP
15773 #: build/C/man7/packet.7:330
15774 #, no-wrap
15775 msgid "B<PACKET_RX_RING>"
15776 msgstr ""
15777
15778 #. type: Plain text
15779 #: build/C/man7/packet.7:370
15780 msgid ""
15781 "Create a memory-mapped ring buffer for asynchronous packet reception.  The "
15782 "packet socket reserves a contiguous region of application address space, "
15783 "lays it out into an array of packet slots and copies packets (up to "
15784 "I<tp_snaplen>)  into subsequent slots.  Each packet is preceded by a "
15785 "metadata structure similar to I<tpacket_auxdata>.  The protocol fields "
15786 "encode the offset to the data from the start of the metadata header.  "
15787 "I<tp_net> stores the offset to the network layer.  If the packet socket is "
15788 "of type B<SOCK_DGRAM>, then I<tp_mac> is the same.  If it is of type "
15789 "B<SOCK_RAW>, then that field stores the offset to the link-layer frame.  "
15790 "Packet socket and application communicate the head and tail of the ring "
15791 "through the I<tp_status> field.  The packet socket owns all slots with "
15792 "status B<TP_STATUS_KERNEL>.  After filling a slot, it changes the status of "
15793 "the slot to transfer ownership to the application.  During normal operation, "
15794 "the new status is B<TP_STATUS_USER>, to signal that a correctly received "
15795 "packet has been stored.  When the application has finished processing a "
15796 "packet, it transfers ownership of the slot back to the socket by setting the "
15797 "status to B<TP_STATUS_KERNEL>.  Packet sockets implement multiple variants "
15798 "of the packet ring.  The implementation details are described in "
15799 "I<Documentation/networking/packet_mmap.txt> in the Linux kernel source tree."
15800 msgstr ""
15801
15802 #. type: TP
15803 #: build/C/man7/packet.7:370
15804 #, no-wrap
15805 msgid "B<PACKET_STATISTICS>"
15806 msgstr ""
15807
15808 #. type: Plain text
15809 #: build/C/man7/packet.7:373
15810 msgid "Retrieve packet socket statistics in the form of a structure"
15811 msgstr ""
15812
15813 #. type: Plain text
15814 #: build/C/man7/packet.7:380
15815 #, no-wrap
15816 msgid ""
15817 "struct tpacket_stats {\n"
15818 "    unsigned int tp_packets;  /* Total packet count */\n"
15819 "    unsigned int tp_drops;    /* Dropped packet count */\n"
15820 "};\n"
15821 msgstr ""
15822
15823 #. type: Plain text
15824 #: build/C/man7/packet.7:386
15825 msgid ""
15826 "Receiving statistics resets the internal counters.  The statistics structure "
15827 "differs when using a ring of variant B<TPACKET_V3>."
15828 msgstr ""
15829
15830 #. type: TP
15831 #: build/C/man7/packet.7:386
15832 #, no-wrap
15833 msgid "B<PACKET_TIMESTAMP> (with B<PACKET_RX_RING>; since Linux 2.6.36)"
15834 msgstr ""
15835
15836 #.  commit 614f60fa9d73a9e8fdff3df83381907fea7c5649
15837 #. type: Plain text
15838 #: build/C/man7/packet.7:396
15839 msgid ""
15840 "The packet receive ring always stores a timestamp in the metadata header.  "
15841 "By default, this is a software generated timestamp generated when the packet "
15842 "is copied into the ring.  This integer option selects the type of "
15843 "timestamp.  Besides the default, it support the two hardware formats "
15844 "described in I<Documentation/networking/timestamping.txt> in the Linux "
15845 "kernel source tree."
15846 msgstr ""
15847
15848 #. type: TP
15849 #: build/C/man7/packet.7:396
15850 #, no-wrap
15851 msgid "B<PACKET_TX_RING> (since Linux 2.6.31)"
15852 msgstr "B<PACKET_TX_RING> (Linux 2.6.31 以降)"
15853
15854 #.  commit 69e3c75f4d541a6eb151b3ef91f34033cb3ad6e1
15855 #. type: Plain text
15856 #: build/C/man7/packet.7:425
15857 msgid ""
15858 "Create a memory-mapped ring buffer for packet transmission.  This option is "
15859 "similar to B<PACKET_RX_RING> and takes the same arguments.  The application "
15860 "writes packets into slots with status B<TP_STATUS_AVAILABLE> and schedules "
15861 "them for transmission by changing the status to B<TP_STATUS_SEND_REQUEST>.  "
15862 "When packets are ready to be transmitted, the application calls B<send>(2)  "
15863 "or a variant thereof.  The I<buf> and I<len> fields of this call are "
15864 "ignored.  If an address is passed using B<sendto>(2)  or B<sendmsg>(2), then "
15865 "that overrides the socket default.  On successful transmission, the socket "
15866 "resets the slot to B<TP_STATUS_AVAILABLE>.  It discards packets silently on "
15867 "error unless B<PACKET_LOSS> is set."
15868 msgstr ""
15869
15870 #. type: TP
15871 #: build/C/man7/packet.7:425
15872 #, no-wrap
15873 msgid "B<PACKET_VERSION> (with B<PACKET_RX_RING>; since Linux 2.6.27)"
15874 msgstr ""
15875
15876 #.  commit bbd6ef87c544d88c30e4b762b1b61ef267a7d279
15877 #. type: Plain text
15878 #: build/C/man7/packet.7:434
15879 msgid ""
15880 "By default, B<PACKET_RX_RING> creates a packet receive ring of variant "
15881 "B<TPACKET_V1>.  To create another variant, configure the desired variant by "
15882 "setting this integer option before creating the ring."
15883 msgstr ""
15884
15885 #. type: TP
15886 #: build/C/man7/packet.7:434
15887 #, no-wrap
15888 msgid "B<PACKET_QDISC_BYPASS> (since Linux 3.14)"
15889 msgstr "B<PACKET_QDISC_BYPASS> (Linux 3.14 以降)"
15890
15891 #.  commit d346a3fae3ff1d99f5d0c819bf86edf9094a26a1
15892 #. type: Plain text
15893 #: build/C/man7/packet.7:449
15894 msgid ""
15895 "By default, packets sent through packet sockets pass through the kernel's "
15896 "qdisc (traffic control) layer, which is fine for the vast majority of use "
15897 "cases.  For traffic generator appliances using packet sockets that intend to "
15898 "brute-force flood the network\\(emfor example, to test devices under load in "
15899 "a similar fashion to pktgen\\(emthis layer can be bypassed by setting this "
15900 "integer option to 1.  A side effect is that packet buffering in the qdisc "
15901 "layer is avoided, which will lead to increased drops when network device "
15902 "transmit queues are busy; therefore, use at your own risk."
15903 msgstr ""
15904
15905 #.  FIXME Document SIOCGSTAMPNS
15906 #. type: Plain text
15907 #: build/C/man7/packet.7:456
15908 msgid ""
15909 "B<SIOCGSTAMP> can be used to receive the timestamp of the last received "
15910 "packet.  Argument is a I<struct timeval> variable."
15911 msgstr "B<SIOCGSTAMP> を用いると、最後に受信したパケットのタイムスタンプを得ることができる。 引き数は I<struct timeval> 型の変数である。"
15912
15913 #. type: Plain text
15914 #: build/C/man7/packet.7:462
15915 msgid ""
15916 "In addition, all standard ioctls defined in B<netdevice>(7)  and B<socket>"
15917 "(7)  are valid on packet sockets."
15918 msgstr ""
15919 "さらに、 B<netdevice>(7)  および B<socket>(7)  で定義されている標準の ioctl "
15920 "はいずれも packet ソケットに指定可能である。"
15921
15922 #. type: SS
15923 #: build/C/man7/packet.7:462 build/C/man7/raw.7:131 build/C/man7/tcp.7:1192
15924 #: build/C/man7/udp.7:103
15925 #, no-wrap
15926 msgid "Error handling"
15927 msgstr "エラー処理"
15928
15929 #. type: Plain text
15930 #: build/C/man7/packet.7:466
15931 msgid ""
15932 "Packet sockets do no error handling other than errors occurred while passing "
15933 "the packet to the device driver.  They don't have the concept of a pending "
15934 "error."
15935 msgstr ""
15936 "packet ソケットは、パケットをデバイスドライバに渡すときに 起きたエラーしか処"
15937 "理しない。遅延エラー (pending error)  に関する概念は持っていない。"
15938
15939 #. type: Plain text
15940 #: build/C/man7/packet.7:470
15941 msgid "Unknown multicast group address passed."
15942 msgstr "不明なマルチキャストグループアドレスが渡された。"
15943
15944 #. type: Plain text
15945 #: build/C/man7/packet.7:473
15946 msgid "User passed invalid memory address."
15947 msgstr "ユーザが渡したメモリアドレスが不正。"
15948
15949 #. type: Plain text
15950 #: build/C/man7/packet.7:476 build/C/man7/raw.7:155
15951 msgid "Invalid argument."
15952 msgstr "引き数が不正。"
15953
15954 #. type: Plain text
15955 #: build/C/man7/packet.7:479
15956 msgid "Packet is bigger than interface MTU."
15957 msgstr "パケットがインターフェースの MTU より大きい。"
15958
15959 #. type: TP
15960 #: build/C/man7/packet.7:479
15961 #, no-wrap
15962 msgid "B<ENETDOWN>"
15963 msgstr "B<ENETDOWN>"
15964
15965 #. type: Plain text
15966 #: build/C/man7/packet.7:482
15967 msgid "Interface is not up."
15968 msgstr "インターフェースが up でない。"
15969
15970 #. type: Plain text
15971 #: build/C/man7/packet.7:485
15972 msgid "Not enough memory to allocate the packet."
15973 msgstr "パケットに割り当てるメモリが足りない。"
15974
15975 #. type: Plain text
15976 #: build/C/man7/packet.7:488
15977 msgid "Unknown device name or interface index specified in interface address."
15978 msgstr ""
15979 "デバイス名が不明。あるいはインターフェースアドレスで指定された インターフェー"
15980 "スインデックスが不明。"
15981
15982 #. type: Plain text
15983 #: build/C/man7/packet.7:491
15984 msgid "No packet received."
15985 msgstr "パケットを一つも受信していない。"
15986
15987 #. type: Plain text
15988 #: build/C/man7/packet.7:494
15989 msgid "No interface address passed."
15990 msgstr "インターフェースアドレスが渡されなかった。"
15991
15992 #. type: TP
15993 #: build/C/man7/packet.7:494
15994 #, no-wrap
15995 msgid "B<ENXIO>"
15996 msgstr "B<ENXIO>"
15997
15998 #. type: Plain text
15999 #: build/C/man7/packet.7:497
16000 msgid "Interface address contained an invalid interface index."
16001 msgstr ""
16002 "インターフェースアドレスに不正なインターフェースインデックスが含まれている。"
16003
16004 #. type: Plain text
16005 #: build/C/man7/packet.7:500
16006 msgid "User has insufficient privileges to carry out this operation."
16007 msgstr "この操作を行うのに必要な権限をユーザが持っていない。"
16008
16009 #. type: Plain text
16010 #: build/C/man7/packet.7:502
16011 msgid "In addition, other errors may be generated by the low-level driver."
16012 msgstr "上記以外のエラーが、低レベルのドライバで生成されることがある。"
16013
16014 #. type: Plain text
16015 #: build/C/man7/packet.7:507
16016 msgid ""
16017 "B<AF_PACKET> is a new feature in Linux 2.2.  Earlier Linux versions "
16018 "supported only B<SOCK_PACKET>."
16019 msgstr ""
16020 "B<AF_PACKET> は Linux 2.2 の新機能である。これより古いバージョンの Linux で"
16021 "は B<SOCK_PACKET> のみをサポートしていた。"
16022
16023 #. type: Plain text
16024 #: build/C/man7/packet.7:512
16025 msgid ""
16026 "The include file I<E<lt>netpacket/packet.hE<gt>> is present since glibc "
16027 "2.1.  Older systems need:"
16028 msgstr ""
16029 "インクルードファイル I<E<lt>netpacket/packet.hE<gt>> が存在するのは glibc "
16030 "2.1 以降である。 それ以前のシステムでは以下のようにする必要がある:"
16031
16032 #. type: Plain text
16033 #: build/C/man7/packet.7:518
16034 #, no-wrap
16035 msgid ""
16036 "#include E<lt>asm/types.hE<gt>\n"
16037 "#include E<lt>linux/if_packet.hE<gt>\n"
16038 "#include E<lt>linux/if_ether.hE<gt>  /* The L2 protocols */\n"
16039 msgstr ""
16040 "#include E<lt>asm/types.hE<gt>\n"
16041 "#include E<lt>linux/if_packet.hE<gt>\n"
16042 "#include E<lt>linux/if_ether.hE<gt>  /* The L2 protocols */\n"
16043
16044 #. type: Plain text
16045 #: build/C/man7/packet.7:528
16046 msgid ""
16047 "For portable programs it is suggested to use B<AF_PACKET> via B<pcap>(3); "
16048 "although this covers only a subset of the B<AF_PACKET> features."
16049 msgstr ""
16050 "移植性の必要なプログラムでは、 B<pcap>(3)  経由で B<AF_PACKET> を用いることを"
16051 "お薦めする。ただし、この方法では B<AF_PACKET> の機能すべてを利用することはで"
16052 "きない。"
16053
16054 #. type: Plain text
16055 #: build/C/man7/packet.7:549
16056 msgid ""
16057 "The B<SOCK_DGRAM> packet sockets make no attempt to create or parse the IEEE "
16058 "802.2 LLC header for a IEEE 802.3 frame.  When B<ETH_P_802_3> is specified "
16059 "as protocol for sending the kernel creates the 802.3 frame and fills out the "
16060 "length field; the user has to supply the LLC header to get a fully "
16061 "conforming packet.  Incoming 802.3 packets are not multiplexed on the DSAP/"
16062 "SSAP protocol fields; instead they are supplied to the user as protocol "
16063 "B<ETH_P_802_2> with the LLC header prefixed.  It is thus not possible to "
16064 "bind to B<ETH_P_802_3>; bind to B<ETH_P_802_2> instead and do the protocol "
16065 "multiplex yourself.  The default for sending is the standard Ethernet DIX "
16066 "encapsulation with the protocol filled in."
16067 msgstr ""
16068 "B<SOCK_DGRAM> packet ソケットは、IEEE 802.3 フレームの IEEE 802.2 LLC ヘッダ"
16069 "の 生成や解析を行おうとしない。 B<ETH_P_802_3> が送信プロトコルに指定される"
16070 "と、カーネルは 802.3 フレームを 生成して length フィールドに書き込む。 完全に"
16071 "準拠したパケットを得るためにはユーザーが LLC ヘッダを 与える必要がある。到着"
16072 "した 802.3 パケットでは、 DSAP/SSAP protocol の各フィールドは多重化 "
16073 "(multiplex) されていない。 代わりにこれらは LLC ヘッダが前置された "
16074 "B<ETH_P_802_2> プロトコルとして与えられる。したがって、 B<ETH_P_802_3> にバイ"
16075 "ンドすることはできない。かわりに B<ETH_P_802_2> にバインドし、自分自身でプロ"
16076 "トコルの多重化を行うこと。 送信のデフォルトは、プロトコルフィールドを持つ 標"
16077 "準の Ethernet DIX encapsulation である。"
16078
16079 #. type: Plain text
16080 #: build/C/man7/packet.7:551
16081 msgid "Packet sockets are not subject to the input or output firewall chains."
16082 msgstr "packet ソケットは入出力の firewall chain に影響をうけない。"
16083
16084 #. type: Plain text
16085 #: build/C/man7/packet.7:561
16086 msgid ""
16087 "In Linux 2.0, the only way to get a packet socket was by calling B<socket"
16088 "(AF_INET, SOCK_PACKET, >I<protocol>B<)>.  This is still supported but "
16089 "strongly deprecated.  The main difference between the two methods is that "
16090 "B<SOCK_PACKET> uses the old I<struct sockaddr_pkt> to specify an interface, "
16091 "which doesn't provide physical layer independence."
16092 msgstr ""
16093 "Linux 2.0 では、 packet ソケットを得る方法は B<socket(AF_INET, SOCK_PACKET, "
16094 ">I<protocol>B<)> を呼ぶやり方しかなかった。この方法はまだサポートされている"
16095 "が、 用いないことを強く推奨する。現在の方法との主な違いは、 B<SOCK_PACKET> で"
16096 "はインターフェースの指定に古い I<struct sockaddr_pkt> を用いる点である。これ"
16097 "には物理層からの独立性がない。"
16098
16099 #. type: Plain text
16100 #: build/C/man7/packet.7:569
16101 #, no-wrap
16102 msgid ""
16103 "struct sockaddr_pkt {\n"
16104 "    unsigned short spkt_family;\n"
16105 "    unsigned char  spkt_device[14];\n"
16106 "    unsigned short spkt_protocol;\n"
16107 "};\n"
16108 msgstr ""
16109 "struct sockaddr_pkt {\n"
16110 "    unsigned short spkt_family;\n"
16111 "    unsigned char  spkt_device[14];\n"
16112 "    unsigned short spkt_protocol;\n"
16113 "};\n"
16114
16115 #. type: Plain text
16116 #: build/C/man7/packet.7:581
16117 msgid ""
16118 "I<spkt_family> contains the device type, I<spkt_protocol> is the IEEE 802.3 "
16119 "protocol type as defined in I<E<lt>sys/if_ether.hE<gt>> and I<spkt_device> "
16120 "is the device name as a null-terminated string, for example, eth0."
16121 msgstr ""
16122 "I<spkt_family> はデバイスのタイプ、 I<spkt_protocol> は I<E<lt>sys/if_ether."
16123 "hE<gt>> で定義されている IEEE 802.3 プロトコルタイプ、 I<spkt_device> はデバ"
16124 "イスの名前を NULL 終端された文字列で与えたもの (例: eth0) である。"
16125
16126 #. type: Plain text
16127 #: build/C/man7/packet.7:583
16128 msgid "This structure is obsolete and should not be used in new code."
16129 msgstr ""
16130 "この構造体は obsolete であり、 新しくコードを書く時には用いるべきでない。"
16131
16132 #. type: Plain text
16133 #: build/C/man7/packet.7:587
16134 msgid ""
16135 "glibc 2.1 does not have a define for B<SOL_PACKET>.  The suggested "
16136 "workaround is to use:"
16137 msgstr ""
16138 "glibc 2.1 には B<SOL_PACKET> の定義がない。回避策としては、以下のようにすると"
16139 "よい。"
16140
16141 #. type: Plain text
16142 #: build/C/man7/packet.7:593
16143 #, no-wrap
16144 msgid ""
16145 "#ifndef SOL_PACKET\n"
16146 "#define SOL_PACKET 263\n"
16147 "#endif\n"
16148 msgstr ""
16149 "#ifndef SOL_PACKET\n"
16150 "#define SOL_PACKET 263\n"
16151 "#endif\n"
16152
16153 #. type: Plain text
16154 #: build/C/man7/packet.7:598
16155 msgid ""
16156 "This is fixed in later glibc versions and also does not occur on libc5 "
16157 "systems."
16158 msgstr ""
16159 "この問題は新しいバージョンの glibc では修正されている。 libc5 のシステムには"
16160 "この問題はない。"
16161
16162 #. type: Plain text
16163 #: build/C/man7/packet.7:600
16164 msgid "The IEEE 802.2/803.3 LLC handling could be considered as a bug."
16165 msgstr "IEEE 802.2/803.3 の LLC の扱い方は、バグと考えても良いだろう。"
16166
16167 #. type: Plain text
16168 #: build/C/man7/packet.7:602
16169 msgid "Socket filters are not documented."
16170 msgstr "ソケットフィルターについて記載されていない。"
16171
16172 #.  .SH CREDITS
16173 #.  This man page was written by Andi Kleen with help from Matthew Wilcox.
16174 #.  AF_PACKET in Linux 2.2 was implemented
16175 #.  by Alexey Kuznetsov, based on code by Alan Cox and others.
16176 #. type: Plain text
16177 #: build/C/man7/packet.7:614
16178 msgid ""
16179 "The B<MSG_TRUNC> B<recvmsg>(2)  extension is an ugly hack and should be "
16180 "replaced by a control message.  There is currently no way to get the "
16181 "original destination address of packets via B<SOCK_DGRAM>."
16182 msgstr ""
16183 "B<MSG_TRUNC> B<recvmsg>(2)  拡張は非常にまずい対処であり、制御メッセージで置"
16184 "き換えるべきである。 今のところ B<SOCK_DGRAM> 経由でパケットについていた宛先"
16185 "アドレスを得る方法がない。"
16186
16187 #. type: Plain text
16188 #: build/C/man7/packet.7:621
16189 msgid ""
16190 "B<socket>(2), B<pcap>(3), B<capabilities>(7), B<ip>(7), B<raw>(7), B<socket>"
16191 "(7)"
16192 msgstr ""
16193 "B<socket>(2), B<pcap>(3), B<capabilities>(7), B<ip>(7), B<raw>(7), B<socket>"
16194 "(7)"
16195
16196 #. type: Plain text
16197 #: build/C/man7/packet.7:624
16198 msgid ""
16199 "RFC\\ 894 for the standard IP Ethernet encapsulation.  RFC\\ 1700 for the "
16200 "IEEE 802.3 IP encapsulation."
16201 msgstr ""
16202 "標準 IP Ethernet encapsulation に関しては RFC\\ 894 を、 IEEE 802.3 IP "
16203 "encapsulation に関しては RFC\\ 1700 を参照。"
16204
16205 #. type: Plain text
16206 #: build/C/man7/packet.7:628
16207 msgid ""
16208 "The I<E<lt>linux/if_ether.hE<gt>> include file for physical layer protocols."
16209 msgstr ""
16210 "物理層のプロトコルに関する記述は I<E<lt>linux/if_ether.hE<gt>> インクルード"
16211 "ファイルにある。"
16212
16213 #. type: TH
16214 #: build/C/man5/protocols.5:29
16215 #, no-wrap
16216 msgid "PROTOCOLS"
16217 msgstr "PROTOCOLS"
16218
16219 #. type: TH
16220 #: build/C/man5/protocols.5:29 build/C/man7/x25.7:12
16221 #, no-wrap
16222 msgid "2012-08-05"
16223 msgstr "2012-08-05"
16224
16225 #. type: Plain text
16226 #: build/C/man5/protocols.5:32
16227 msgid "protocols - protocols definition file"
16228 msgstr "protocols - プロトコル定義ファイル"
16229
16230 #. type: Plain text
16231 #: build/C/man5/protocols.5:40
16232 msgid ""
16233 "This file is a plain ASCII file, describing the various DARPA internet "
16234 "protocols that are available from the TCP/IP subsystem.  It should be "
16235 "consulted instead of using the numbers in the ARPA include files, or, even "
16236 "worse, just guessing them.  These numbers will occur in the protocol field "
16237 "of any IP header."
16238 msgstr ""
16239 "このファイルは ASCII ファイルで、TCP/IP サブシステムから利用できる いろいろ"
16240 "な DARPA インターネットプロトコルを記述している。 ARPA 関連のインクルードファ"
16241 "イル内の数値を使うべきではないし、 単に推測した値を使うのはさらに良くない。 "
16242 "代わりにこのファイルに問い合わせるべきである。 これらの数値は IP ヘッダのプロ"
16243 "トコルフィールドに現れる。"
16244
16245 #.  .. by the DDN Network Information Center.
16246 #. type: Plain text
16247 #: build/C/man5/protocols.5:46
16248 msgid ""
16249 "Keep this file untouched since changes would result in incorrect IP "
16250 "packages.  Protocol numbers and names are specified by the IANA (Internet "
16251 "Assigned Numbers Authority)."
16252 msgstr ""
16253 "このファイルは変更しないこと。変更すると IP パッケージが不正になる。 プロトコ"
16254 "ル番号とプロトコル名は IANA (Internet Assigned Numbers Authority) によって指"
16255 "定される。"
16256
16257 #. type: Plain text
16258 #: build/C/man5/protocols.5:48
16259 msgid "Each line is of the following format:"
16260 msgstr "それぞれの行は次のフォーマットである。"
16261
16262 #. type: Plain text
16263 #: build/C/man5/protocols.5:51
16264 msgid "I<protocol number aliases ...>"
16265 msgstr "I<protocol number aliases ...>"
16266
16267 #. type: Plain text
16268 #: build/C/man5/protocols.5:57
16269 msgid ""
16270 "where the fields are delimited by spaces or tabs.  Empty lines are ignored.  "
16271 "If a line contains a hash mark (#), the hash mark and the part of the line "
16272 "following it are ignored."
16273 msgstr ""
16274 "各フィールドは空白かタブで区切られていて、空行は無視される。 行にハッシュ記号"
16275 "(#)が含まれる場合、 ハッシュ記号を含むその行の残りは無視される。"
16276
16277 #. type: TP
16278 #: build/C/man5/protocols.5:59 build/C/man5/services.5:109
16279 #, no-wrap
16280 msgid "I<protocol>"
16281 msgstr "I<protocol>"
16282
16283 #. type: Plain text
16284 #: build/C/man5/protocols.5:67
16285 msgid ""
16286 "the native name for the protocol.  For example I<ip>, I<tcp>, or I<udp>."
16287 msgstr "プロトコルの固有名。たとえば I<ip>, I<tcp>, I<udp> など。"
16288
16289 #. type: Plain text
16290 #: build/C/man5/protocols.5:71
16291 msgid ""
16292 "the official number for this protocol as it will appear within the IP header."
16293 msgstr "プロトコルの公式番号、IP ヘッダに現れる。"
16294
16295 #. type: Plain text
16296 #: build/C/man5/protocols.5:74
16297 msgid "optional aliases for the protocol."
16298 msgstr "プロトコルの別名、オプション。"
16299
16300 #.  The following is not true as at glibc 2.8 (a line with a comma is
16301 #.  ignored by getservent()); it's not clear if/when it was ever true.
16302 #.    As a backward compatibility feature, the slash (/) between the
16303 #.    .I port
16304 #.    number and
16305 #.    .I protocol
16306 #.    name can in fact be either a slash or a comma (,).
16307 #.    Use of the comma in
16308 #.    modern installations is deprecated.
16309 #. type: Plain text
16310 #: build/C/man5/protocols.5:77 build/C/man5/services.5:165
16311 msgid ""
16312 "This file might be distributed over a network using a network-wide naming "
16313 "service like Yellow Pages/NIS or BIND/Hesiod."
16314 msgstr ""
16315 "このファイルは Yellow Pages/NIS や BIND/Hesiod のようなネットワーク上の名前"
16316 "サービスを用いて、ネットワークを通じて配布される可能性もある。"
16317
16318 #. type: Plain text
16319 #: build/C/man5/protocols.5:81
16320 msgid "The protocols definition file."
16321 msgstr "プロトコル定義ファイル。"
16322
16323 #. type: Plain text
16324 #: build/C/man5/protocols.5:83
16325 msgid "B<getprotoent>(3)"
16326 msgstr "B<getprotoent>(3)"
16327
16328 #. type: Plain text
16329 #: build/C/man5/protocols.5:86
16330 msgid "E<.UR http://www.iana.org\\:/assignments\\:/protocol-numbers> E<.UE>"
16331 msgstr "E<.UR http://www.iana.org\\:/assignments\\:/protocol-numbers> E<.UE>"
16332
16333 #. type: TH
16334 #: build/C/man7/raw.7:13
16335 #, no-wrap
16336 msgid "RAW"
16337 msgstr "RAW"
16338
16339 #. type: Plain text
16340 #: build/C/man7/raw.7:16
16341 msgid "raw - Linux IPv4 raw sockets"
16342 msgstr "raw - Linux の IPv4 raw ソケット"
16343
16344 #. type: Plain text
16345 #: build/C/man7/raw.7:22
16346 msgid "B<raw_socket = socket(AF_INET, SOCK_RAW, int >I<protocol>B<);>"
16347 msgstr "B<raw_socket = socket(AF_INET, SOCK_RAW, int >I<protocol>B<);>"
16348
16349 #. type: Plain text
16350 #: build/C/man7/raw.7:26
16351 msgid ""
16352 "Raw sockets allow new IPv4 protocols to be implemented in user space.  A raw "
16353 "socket receives or sends the raw datagram not including link level headers."
16354 msgstr ""
16355 "raw ソケットを使うと、新しい IPv4 プロトコルをユーザ空間で 実装できるようにな"
16356 "る。 raw ソケットは、リンクレベルヘッダを 含まない raw データグラムの送受信が"
16357 "できる。"
16358
16359 #. type: Plain text
16360 #: build/C/man7/raw.7:32
16361 msgid ""
16362 "The IPv4 layer generates an IP header when sending a packet unless the "
16363 "B<IP_HDRINCL> socket option is enabled on the socket.  When it is enabled, "
16364 "the packet must contain an IP header.  For receiving the IP header is always "
16365 "included in the packet."
16366 msgstr ""
16367 "IPv4 レイヤは、扱っているソケットで B<IP_HDRINCL> ソケットオプションが有効に"
16368 "なっていなければ、 パケットを送信するときに IP ヘッダを生成する。 "
16369 "B<IP_HDRINCL> オプションが有効になっているときは、パケットには IP ヘッダが含"
16370 "まれていなければならない。 受信時には、 IP ヘッダは常にパケットに含まれてい"
16371 "る。"
16372
16373 #. type: Plain text
16374 #: build/C/man7/raw.7:36
16375 msgid ""
16376 "Only processes with an effective user ID of 0 or the B<CAP_NET_RAW> "
16377 "capability are allowed to open raw sockets."
16378 msgstr ""
16379 "実効ユーザー ID が 0 のプロセスか、 B<CAP_NET_RAW> 権限を持つプロセスだけが "
16380 "raw ソケットをオープンすることができる。"
16381
16382 #. type: Plain text
16383 #: build/C/man7/raw.7:43
16384 msgid ""
16385 "All packets or errors matching the I<protocol> number specified for the raw "
16386 "socket are passed to this socket.  For a list of the allowed protocols see "
16387 "RFC\\ 1700 assigned numbers and B<getprotobyname>(3)."
16388 msgstr ""
16389 "この raw ソケットに指定された I<protocol> 番号にマッチする全てのパケットとエ"
16390 "ラーとが、このソケットに渡される。 許可されているプロトコルのリストは RFC\\ "
16391 "1700 の割り当て番号と B<getprotobyname>(3)  を見よ。"
16392
16393 #. type: Plain text
16394 #: build/C/man7/raw.7:53
16395 msgid ""
16396 "A protocol of B<IPPROTO_RAW> implies enabled B<IP_HDRINCL> and is able to "
16397 "send any IP protocol that is specified in the passed header.  Receiving of "
16398 "all IP protocols via B<IPPROTO_RAW> is not possible using raw sockets."
16399 msgstr ""
16400 "B<IPPROTO_RAW> のプロトコルは暗黙のうちに B<IP_HDRINCL> を有効にするので、 渡"
16401 "されたヘッダで指定された、あらゆる IP プロトコルを送信できる。 "
16402 "B<IPPROTO_RAW> 経由でのあらゆる IP プロトコルの受信は、 raw ソケットを用いて"
16403 "は行えない。"
16404
16405 #. type: tbl table
16406 #: build/C/man7/raw.7:58
16407 #, no-wrap
16408 msgid "IP Header fields modified on sending by B<IP_HDRINCL>\n"
16409 msgstr "IP ヘッダフィールド。 B<IP_HDRINCL> によって送信時に変更される。\n"
16410
16411 #. type: tbl table
16412 #: build/C/man7/raw.7:59
16413 #, no-wrap
16414 msgid "IP Checksum:Always filled in.\n"
16415 msgstr "IP チェックサム:常に変更される。\n"
16416
16417 #. type: tbl table
16418 #: build/C/man7/raw.7:60
16419 #, no-wrap
16420 msgid "Source Address:Filled in when zero.\n"
16421 msgstr "ソースアドレス:元の値が 0 の時に変更される。\n"
16422
16423 #. type: tbl table
16424 #: build/C/man7/raw.7:61
16425 #, no-wrap
16426 msgid "Packet Id:Filled in when zero.\n"
16427 msgstr "パケット ID:元の値が 0 の時に変更される。\n"
16428
16429 #. type: tbl table
16430 #: build/C/man7/raw.7:62
16431 #, no-wrap
16432 msgid "Total Length:Always filled in.\n"
16433 msgstr "全体の長さ:常に埋められる。\n"
16434
16435 #. type: Plain text
16436 #: build/C/man7/raw.7:76
16437 msgid ""
16438 "If B<IP_HDRINCL> is specified and the IP header has a nonzero destination "
16439 "address then the destination address of the socket is used to route the "
16440 "packet.  When B<MSG_DONTROUTE> is specified, the destination address should "
16441 "refer to a local interface, otherwise a routing table lookup is done anyway "
16442 "but gatewayed routes are ignored."
16443 msgstr ""
16444 "B<IP_HERINCL> が指定されていて、 IP ヘッダに 0 でない送信先アドレスが記入され"
16445 "ていた場合は、 その送信先アドレスがパケットの経路を決めるのに用いられる。 "
16446 "B<MSG_DONTROUTE> が指定されている時には、 送信先アドレスはローカルなインター"
16447 "フェースを参照するものでなければならない。 さもないと、ルーティングテーブルの"
16448 "参照はいずれにせよ行われるが、 ゲートウェイが必要な経路は無視される。"
16449
16450 #. type: Plain text
16451 #: build/C/man7/raw.7:84
16452 msgid ""
16453 "If B<IP_HDRINCL> isn't set, then IP header options can be set on raw sockets "
16454 "with B<setsockopt>(2); see B<ip>(7)  for more information."
16455 msgstr ""
16456 "B<IP_HDRINCL> がセットされていなければ、 raw ソケットの IP ヘッダオプション"
16457 "を B<setsockopt>(2)  を用いて設定することができる。詳細な情報は B<ip>(7)  を"
16458 "見よ。"
16459
16460 #. type: Plain text
16461 #: build/C/man7/raw.7:89
16462 msgid ""
16463 "In Linux 2.2, all IP header fields and options can be set using IP socket "
16464 "options.  This means raw sockets are usually needed only for new protocols "
16465 "or protocols with no user interface (like ICMP)."
16466 msgstr ""
16467 "Linux 2.2 では、 IP ヘッダの全てのフィールドとオプションとを IP ソケットオプ"
16468 "ションによって設定できる。したがって raw ソケットが必要になるのは、新しいプロ"
16469 "トコルを設計する場合か、 ユーザーインターフェースを持たないプロトコル (ICMP "
16470 "など) を扱う場合に 限られる。"
16471
16472 #. type: Plain text
16473 #: build/C/man7/raw.7:93
16474 msgid ""
16475 "When a packet is received, it is passed to any raw sockets which have been "
16476 "bound to its protocol before it is passed to other protocol handlers (e.g., "
16477 "kernel protocol modules)."
16478 msgstr ""
16479 "パケットは、受信されるとまずプロトコルにバインドしている raw ソケットに渡さ"
16480 "れ、 その後で他のプロトコルハンドラ (カーネルのプロトコルモジュールなど)  に"
16481 "渡される。"
16482
16483 #. type: Plain text
16484 #: build/C/man7/raw.7:109
16485 msgid ""
16486 "Raw sockets use the standard I<sockaddr_in> address structure defined in "
16487 "B<ip>(7).  The I<sin_port> field could be used to specify the IP protocol "
16488 "number, but it is ignored for sending in Linux 2.2 and should be always set "
16489 "to 0 (see BUGS).  For incoming packets, I<sin_port> is set to the protocol "
16490 "of the packet.  See the I<E<lt>netinet/in.hE<gt>> include file for valid IP "
16491 "protocols."
16492 msgstr ""
16493 "raw ソケットは標準の I<sockaddr_in> アドレス構造体を用いる。定義は B<ip>(7)  "
16494 "でなされている。 I<sin_port> フィールドを IP プロトコル番号の指定に用いること"
16495 "ができるが、 Linux 2.2 ではこれは送信時には無視され、常に 0 にされる (バグ の"
16496 "項を参照)。 受信パケットに対しては、 I<sin_port> はそのパケットのプロトコルに"
16497 "セットされる。 用いることのできる IP プロトコルは、インクルードファイル "
16498 "I<E<lt>netinet/in.hE<gt>> を見よ。"
16499
16500 #.  Or SOL_RAW on Linux
16501 #. type: Plain text
16502 #: build/C/man7/raw.7:118
16503 msgid ""
16504 "Raw socket options can be set with B<setsockopt>(2)  and read with "
16505 "B<getsockopt>(2)  by passing the B<IPPROTO_RAW> family flag."
16506 msgstr ""
16507 "raw ソケットのオプションは、 B<IPPROTO_RAW> ファミリーフラグを与えて "
16508 "B<setsockopt>(2)  を呼べば設定でき、 B<getsockopt>(2)  を呼べば取得できる。"
16509
16510 #. type: TP
16511 #: build/C/man7/raw.7:118
16512 #, no-wrap
16513 msgid "B<ICMP_FILTER>"
16514 msgstr "B<ICMP_FILTER>"
16515
16516 #. type: Plain text
16517 #: build/C/man7/raw.7:126
16518 msgid ""
16519 "Enable a special filter for raw sockets bound to the B<IPPROTO_ICMP> "
16520 "protocol.  The value has a bit set for each ICMP message type which should "
16521 "be filtered out.  The default is to filter no ICMP messages."
16522 msgstr ""
16523 "B<IPPROTO_ICMP> プロトコルにバインドされた raw ソケットのための特殊なフィルタ"
16524 "を有効にする。 この値は ICMP メッセージのタイプそれぞれに対して、どれをフィル"
16525 "ターアウト するかを表したビットセットである。デフォルトでは ICMP メッセージは"
16526 "全くフィルターしない。"
16527
16528 #. type: Plain text
16529 #: build/C/man7/raw.7:131
16530 msgid ""
16531 "In addition, all B<ip>(7)  B<IPPROTO_IP> socket options valid for datagram "
16532 "sockets are supported."
16533 msgstr ""
16534 "さらに、データグラムソケットに使える全ての B<ip>(7)  B<SOL_IP> ソケットオプ"
16535 "ションがサポートされている。"
16536
16537 #. type: Plain text
16538 #: build/C/man7/raw.7:144
16539 msgid ""
16540 "Errors originating from the network are passed to the user only when the "
16541 "socket is connected or the B<IP_RECVERR> flag is enabled.  For connected "
16542 "sockets, only B<EMSGSIZE> and B<EPROTO> are passed for compatibility.  With "
16543 "B<IP_RECVERR>, all network errors are saved in the error queue."
16544 msgstr ""
16545 "ネットワークで生じたエラーがユーザに渡されるのは、 ソケットが接続済みの場合"
16546 "か B<IP_RECVERR> フラグが有効になっている場合に限られる。 接続済みのソケット"
16547 "に対しては、 B<EMSGSIZE> および B<EPROTO> だけが渡される (互換性のため)。 "
16548 "B<IP_RECVERR> を設定すると、全てのネットワークエラーがエラーキューに保存され"
16549 "る。"
16550
16551 #. type: Plain text
16552 #: build/C/man7/raw.7:149
16553 msgid ""
16554 "User tried to send to a broadcast address without having the broadcast flag "
16555 "set on the socket."
16556 msgstr ""
16557 "ユーザーが broadcast フラグを設定していないソケットを用いて ブロードキャスト"
16558 "アドレスに送信を行おうとした。"
16559
16560 #. type: Plain text
16561 #: build/C/man7/raw.7:152
16562 msgid "An invalid memory address was supplied."
16563 msgstr "不正なメモリアドレスが与えられた。"
16564
16565 #. type: Plain text
16566 #: build/C/man7/raw.7:162
16567 msgid ""
16568 "Packet too big.  Either Path MTU Discovery is enabled (the "
16569 "B<IP_MTU_DISCOVER> socket flag) or the packet size exceeds the maximum "
16570 "allowed IPv4 packet size of 64KB."
16571 msgstr ""
16572 "パケットが大きすぎる。 Path MTU Discoverry が有効になっている "
16573 "(B<IP_MTU_DISCOVER> ソケットフラグ) か、パケットのサイズが IPv4 で許されてい"
16574 "る パケットサイズの最大値 64KB を越えている。"
16575
16576 #. type: TP
16577 #: build/C/man7/raw.7:162 build/C/man7/unix.7:364
16578 #, no-wrap
16579 msgid "B<EOPNOTSUPP>"
16580 msgstr "B<EOPNOTSUPP>"
16581
16582 #. type: Plain text
16583 #: build/C/man7/raw.7:166
16584 msgid "Invalid flag has been passed to a socket call (like B<MSG_OOB>)."
16585 msgstr "ソケット呼び出しに不正なフラグ (B<MSG_OOB> など) が渡された。"
16586
16587 #. type: Plain text
16588 #: build/C/man7/raw.7:172
16589 msgid ""
16590 "The user doesn't have permission to open raw sockets.  Only processes with "
16591 "an effective user ID of 0 or the B<CAP_NET_RAW> attribute may do that."
16592 msgstr ""
16593 "ユーザーは raw ソケットをオープンする権限を持っていない。 実行ユーザー ID が "
16594 "0 のプロセスか、 B<CAP_NET_RAW> 属性を持つプロセスだけがこれを行うことができ"
16595 "る。"
16596
16597 #. type: TP
16598 #: build/C/man7/raw.7:172
16599 #, no-wrap
16600 msgid "B<EPROTO>"
16601 msgstr "B<EPROTO>"
16602
16603 #. type: Plain text
16604 #: build/C/man7/raw.7:175
16605 msgid "An ICMP error has arrived reporting a parameter problem."
16606 msgstr "パラメータの問題を報告する ICMP エラーを受け取った。"
16607
16608 #. type: Plain text
16609 #: build/C/man7/raw.7:181
16610 msgid ""
16611 "B<IP_RECVERR> and B<ICMP_FILTER> are new in Linux 2.2.  They are Linux "
16612 "extensions and should not be used in portable programs."
16613 msgstr ""
16614 "B<IP_RECVERR> と B<ICMP_FILTER> は Linux 2.2 で登場した。これらは Linux での"
16615 "拡張であり、 移植性の必要なプログラムでは用いるべきでない。"
16616
16617 #. type: Plain text
16618 #: build/C/man7/raw.7:187
16619 msgid ""
16620 "Linux 2.0 enabled some bug-to-bug compatibility with BSD in the raw socket "
16621 "code when the B<SO_BSDCOMPAT> socket option was set \\(em since Linux 2.2, "
16622 "this option no longer has that effect."
16623 msgstr ""
16624 "Linux 2.0 では B<SO_BSDCOMPAT> ソケットオプションをセットすると、 BSD の raw "
16625 "ソケットにあるバグに互換性を取ることができた \\(em Linux 2.2 以降では、このオ"
16626 "プションはもはや効力を持たない。"
16627
16628 #. type: Plain text
16629 #: build/C/man7/raw.7:205
16630 msgid ""
16631 "By default, raw sockets do path MTU (Maximum Transmission Unit) discovery.  "
16632 "This means the kernel will keep track of the MTU to a specific target IP "
16633 "address and return B<EMSGSIZE> when a raw packet write exceeds it.  When "
16634 "this happens, the application should decrease the packet size.  Path MTU "
16635 "discovery can be also turned off using the B<IP_MTU_DISCOVER> socket option "
16636 "or the I</proc/sys/net/ipv4/ip_no_pmtu_disc> file, see B<ip>(7)  for "
16637 "details.  When turned off, raw sockets will fragment outgoing packets that "
16638 "exceed the interface MTU.  However, disabling it is not recommended for "
16639 "performance and reliability reasons."
16640 msgstr ""
16641 "デフォルトでは、raw ソケットは Path MTU Discovery を行う。 つまり、カーネルは"
16642 "特定の宛先 IP アドレスの MTU (Maximum Transmission Unit; 最大転送単位) を記録"
16643 "し、raw パケットの書き込みが MTU を超えた場合 B<EMSGSIZE> を返す。 "
16644 "B<EMSGSIZE> を返された場合、アプリケーションはパケットサイズを小さくすべきで"
16645 "ある。 ソケットオプション B<IP_MTU_DISCOVER> または I</proc/sys/net/ipv4/"
16646 "ip_no_pmtu_disc> ファイルを使って Path MTU Discovery を無効にすることもでき"
16647 "る (詳細は B<ip>(7)  を参照)。 Path MTU Discovery を無効にした場合は、パケッ"
16648 "トサイズが インタフェースの MTU よりも大きいと raw ソケットはそのパケットを "
16649 "フラグメント化して送出する。 しかしながら、性能と信頼性の理由から Path MTU "
16650 "Discovery を 無効にするのは推奨できない。"
16651
16652 #. type: Plain text
16653 #: build/C/man7/raw.7:214
16654 msgid ""
16655 "A raw socket can be bound to a specific local address using the B<bind>(2)  "
16656 "call.  If it isn't bound, all packets with the specified IP protocol are "
16657 "received.  In addition, a RAW socket can be bound to a specific network "
16658 "device using B<SO_BINDTODEVICE>; see B<socket>(7)."
16659 msgstr ""
16660 "B<bind>(2)  システムコールを用いると、 raw ソケットを 特定のローカルアドレス"
16661 "にバインドさせることができる。 このバインドがされていない場合は、指定した IP "
16662 "プロトコルの すべてのパケットが受信される。 さらに、 B<SO_BINDTODEVICE> を用"
16663 "いれば raw ソケットを特定のネットワークデバイスに バインドさせることもでき"
16664 "る。 B<socket>(7)  を見よ。"
16665
16666 #. type: Plain text
16667 #: build/C/man7/raw.7:225
16668 msgid ""
16669 "An B<IPPROTO_RAW> socket is send only.  If you really want to receive all IP "
16670 "packets, use a B<packet>(7)  socket with the B<ETH_P_IP> protocol.  Note "
16671 "that packet sockets don't reassemble IP fragments, unlike raw sockets."
16672 msgstr ""
16673 "B<IPPROTO_RAW> ソケットは送信専用である。もしどうしてもすべての IP パケット"
16674 "を 受信したい場合は、 B<packet>(7)  ソケットを B<ETH_P_IP> プロトコルで用いる"
16675 "こと。 packet ソケットは raw ソケットのように IP フラグメントを再構成しないこ"
16676 "とに注意。"
16677
16678 #. type: Plain text
16679 #: build/C/man7/raw.7:231
16680 msgid ""
16681 "If you want to receive all ICMP packets for a datagram socket, it is often "
16682 "better to use B<IP_RECVERR> on that particular socket; see B<ip>(7)."
16683 msgstr ""
16684 "datagram ソケットに対するすべての ICMP パケットを受信したい場合は、 特定のソ"
16685 "ケットに対して B<IP_RECVERR> を用いるほうが良い場合が多い。 B<ip>(7)  を見"
16686 "よ。"
16687
16688 #. type: Plain text
16689 #: build/C/man7/raw.7:238
16690 msgid ""
16691 "Raw sockets may tap all IP protocols in Linux, even protocols like ICMP or "
16692 "TCP which have a protocol module in the kernel.  In this case, the packets "
16693 "are passed to both the kernel module and the raw socket(s).  This should not "
16694 "be relied upon in portable programs, many other BSD socket implementation "
16695 "have limitations here."
16696 msgstr ""
16697 "raw ソケットは、 Linux のすべての IP プロトコルを受信することができる。 ICMP "
16698 "や TCP のように、カーネル内部にプロトコルモジュールを持つような ものも可能で"
16699 "ある。この場合には、パケットはカーネルモジュールと raw ソケットの両方に渡され"
16700 "る (raw ソケットが複数あればそれぞれに渡される)。 移植性の必要なプログラムで"
16701 "はこの機能に依存するべきではない。 他の多くの BSD におけるソケットの実装では"
16702 "この点において制限がある。"
16703
16704 #. type: Plain text
16705 #: build/C/man7/raw.7:243
16706 msgid ""
16707 "Linux never changes headers passed from the user (except for filling in some "
16708 "zeroed fields as described for B<IP_HDRINCL>).  This differs from many other "
16709 "implementations of raw sockets."
16710 msgstr ""
16711 "Linux はユーザーから渡されたヘッダを決して変更しない (ただし B<IP_HDRINCL> の"
16712 "説明にあるように、 0 をいくつか埋める場合を除く)。 これは他の多くの raw ソ"
16713 "ケットの実装では異なる。"
16714
16715 #. type: Plain text
16716 #: build/C/man7/raw.7:246
16717 msgid ""
16718 "RAW sockets are generally rather unportable and should be avoided in "
16719 "programs intended to be portable."
16720 msgstr ""
16721 "一般に raw ソケットは移植性がないことが多いので、 移植性が必要なプログラムで"
16722 "は避けるべきである。"
16723
16724 #. type: Plain text
16725 #: build/C/man7/raw.7:252
16726 msgid ""
16727 "Sending on raw sockets should take the IP protocol from I<sin_port>; this "
16728 "ability was lost in Linux 2.2.  The workaround is to use B<IP_HDRINCL>."
16729 msgstr ""
16730 "raw ソケットへの送信では、 IP プロトコルを I<sin_port> から取得できなければな"
16731 "らない。この機能は Linux 2.2 では使えなくなった。 B<IP_HDRINCL> を用いれば同"
16732 "様のことが実現できる。"
16733
16734 #. type: Plain text
16735 #: build/C/man7/raw.7:254
16736 msgid "Transparent proxy extensions are not described."
16737 msgstr "透過プロクシ (transparent proxy) 拡張については記述していない。"
16738
16739 #. type: Plain text
16740 #: build/C/man7/raw.7:259
16741 msgid ""
16742 "When the B<IP_HDRINCL> option is set, datagrams will not be fragmented and "
16743 "are limited to the interface MTU."
16744 msgstr ""
16745 "B<IP_HDRINCL> オプションがセットされているとデータグラムはフラグメント化され"
16746 "ず、 インターフェースの MTU の大きさに制限される。"
16747
16748 #.  .SH AUTHORS
16749 #.  This man page was written by Andi Kleen.
16750 #. type: Plain text
16751 #: build/C/man7/raw.7:269
16752 msgid ""
16753 "Setting the IP protocol for sending in I<sin_port> got lost in Linux 2.2.  "
16754 "The protocol that the socket was bound to or that was specified in the "
16755 "initial B<socket>(2)  call is always used."
16756 msgstr ""
16757 "送信用の IP プロトコルの設定を I<sin_port> にしておく機能は Linux 2.2 から使"
16758 "えなくなった。 ソケットにバインドされているプロトコルか、最初の B<socket>"
16759 "(2)  コールによって指定されたプロトコルが常に用いられる。"
16760
16761 #. type: Plain text
16762 #: build/C/man7/raw.7:275
16763 msgid ""
16764 "B<recvmsg>(2), B<sendmsg>(2), B<capabilities>(7), B<ip>(7), B<socket>(7)"
16765 msgstr ""
16766 "B<recvmsg>(2), B<sendmsg>(2), B<capabilities>(7), B<ip>(7), B<socket>(7)"
16767
16768 #. type: Plain text
16769 #: build/C/man7/raw.7:282
16770 msgid ""
16771 "B<RFC\\ 1191> for path MTU discovery.  B<RFC\\ 791> and the I<E<lt>linux/ip."
16772 "hE<gt>> header file for the IP protocol."
16773 msgstr ""
16774 "Path MTU discovery に関しては B<RFC\\ 1191> を参照。 IP プロトコルに関しては "
16775 "B<RFC\\ 791> とインクルードファイル I<E<lt>linux/ip.hE<gt>> を参照。"
16776
16777 #. type: TH
16778 #: build/C/man3/rcmd.3:43
16779 #, no-wrap
16780 msgid "RCMD"
16781 msgstr "RCMD"
16782
16783 #. type: TH
16784 #: build/C/man3/rcmd.3:43
16785 #, no-wrap
16786 msgid "2012-04-23"
16787 msgstr "2012-04-23"
16788
16789 #. type: Plain text
16790 #: build/C/man3/rcmd.3:48
16791 msgid ""
16792 "rcmd, rresvport, iruserok, ruserok, rcmd_af, rresvport_af, iruserok_af, "
16793 "ruserok_af - routines for returning a stream to a remote command"
16794 msgstr ""
16795 "rcmd, rresvport, iruserok, ruserok, rcmd_af, rresvport_af, iruserok_af, \n"
16796 "ruserok_af - リモートコマンドにストリームを返す関数群"
16797
16798 #. type: Plain text
16799 #: build/C/man3/rcmd.3:51
16800 #, no-wrap
16801 msgid "B<#include E<lt>netdb.hE<gt> \\ \\ >/* Or E<lt>unistd.hE<gt> on some systems */\n"
16802 msgstr "B<#include E<lt>netdb.hE<gt> \\ \\ >/* Or E<lt>unistd.hE<gt> on some systems */\n"
16803
16804 #. type: Plain text
16805 #: build/C/man3/rcmd.3:54
16806 #, no-wrap
16807 msgid ""
16808 "B<int rcmd(char **>I<ahost>B<, int >I<inport>B<, const char *>I<locuser>B<, >\n"
16809 "B<         const char *>I<remuser>B<, const char *>I<cmd>B<, int *>I<fd2p>B<);>\n"
16810 msgstr ""
16811 "B<int rcmd(char **>I<ahost>B<, int >I<inport>B<, const char *>I<locuser>B<, >\n"
16812 "B<         const char *>I<remuser>B<, const char *>I<cmd>B<, int *>I<fd2p>B<);>\n"
16813
16814 #. type: Plain text
16815 #: build/C/man3/rcmd.3:56
16816 #, no-wrap
16817 msgid "B<int rresvport(int *>I<port>B<);>\n"
16818 msgstr "B<int rresvport(int *>I<port>B<);>\n"
16819
16820 #. type: Plain text
16821 #: build/C/man3/rcmd.3:59
16822 #, no-wrap
16823 msgid ""
16824 "B<int iruserok(uint32_t >I<raddr>B<, int >I<superuser>B<, >\n"
16825 "B<             const char *>I<ruser>B<, const char *>I<luser>B<);>\n"
16826 msgstr ""
16827 "B<int iruserok(uint32_t >I<raddr>B<, int >I<superuser>B<, >\n"
16828 "B<             const char *>I<ruser>B<, const char *>I<luser>B<);>\n"
16829
16830 #. type: Plain text
16831 #: build/C/man3/rcmd.3:62
16832 #, no-wrap
16833 msgid ""
16834 "B<int ruserok(const char *>I<rhost>B<, int >I<superuser>B<, >\n"
16835 "B<            const char *>I<ruser>B<, const char *>I<luser>B<);>\n"
16836 msgstr ""
16837 "B<int ruserok(const char *>I<rhost>B<, int >I<superuser>B<, >\n"
16838 "B<            const char *>I<ruser>B<, const char *>I<luser>B<);>\n"
16839
16840 #. type: Plain text
16841 #: build/C/man3/rcmd.3:66
16842 #, no-wrap
16843 msgid ""
16844 "B<int rcmd_af(char **>I<ahost>B<, int >I<inport>B<, const char *>I<locuser>B<, >\n"
16845 "B<            const char *>I<remuser>B<, const char *>I<cmd>B<, int *>I<fd2p>B<,>\n"
16846 "B<            sa_family_t >I<af>B<);>\n"
16847 msgstr ""
16848 "B<int rcmd_af(char **>I<ahost>B<, int >I<inport>B<, const char *>I<locuser>B<, >\n"
16849 "B<            const char *>I<remuser>B<, const char *>I<cmd>B<, int *>I<fd2p>B<,>\n"
16850 "B<            sa_family_t >I<af>B<);>\n"
16851
16852 #. type: Plain text
16853 #: build/C/man3/rcmd.3:68
16854 #, no-wrap
16855 msgid "B<int rresvport_af(int *>I<port>B<, sa_family_t >I<af>B<);>\n"
16856 msgstr "B<int rresvport_af(int *>I<port>B<, sa_family_t >I<af>B<);>\n"
16857
16858 #. type: Plain text
16859 #: build/C/man3/rcmd.3:72
16860 #, no-wrap
16861 msgid ""
16862 "B<int iruserok_af(uint32_t >I<raddr>B<, int >I<superuser>B<, >\n"
16863 "B<                const char *>I<ruser>B<, const char *>I<luser>B<, sa_family_t >I<af>B<);>\n"
16864 msgstr ""
16865 "B<int iruserok_af(uint32_t >I<raddr>B<, int >I<superuser>B<, >\n"
16866 "B<                const char *>I<ruser>B<, const char *>I<luser>B<, sa_family_t >I<af>B<);>\n"
16867
16868 #. type: Plain text
16869 #: build/C/man3/rcmd.3:76
16870 #, no-wrap
16871 msgid ""
16872 "B<int ruserok_af(const char *>I<rhost>B<, int >I<superuser>B<, >\n"
16873 "B<               const char *>I<ruser>B<, const char *>I<luser>B<, sa_family_t >I<af>B<);>\n"
16874 msgstr ""
16875 "B<int ruserok_af(const char *>I<rhost>B<, int >I<superuser>B<, >\n"
16876 "B<               const char *>I<ruser>B<, const char *>I<luser>B<, sa_family_t >I<af>B<);>\n"
16877
16878 #. type: Plain text
16879 #: build/C/man3/rcmd.3:92
16880 msgid ""
16881 "B<rcmd>(), B<rcmd_af>(), B<rresvport>(), B<rresvport_af>(), B<iruserok>(), "
16882 "B<iruserok_af>(), B<ruserok>(), B<ruserok_af>(): _BSD_SOURCE"
16883 msgstr ""
16884 "B<rcmd>(), B<rcmd_af>(), B<rresvport>(), B<rresvport_af>(),\n"
16885 "B<iruserok>(), B<iruserok_af>(), B<ruserok>(), B<ruserok_af>():\n"
16886 "_BSD_SOURCE"
16887
16888 #. type: Plain text
16889 #: build/C/man3/rcmd.3:113
16890 msgid ""
16891 "The B<rcmd>()  function is used by the superuser to execute a command on a "
16892 "remote machine using an authentication scheme based on privileged port "
16893 "numbers.  The B<rresvport>()  function returns a descriptor to a socket with "
16894 "an address in the privileged port space.  The B<iruserok>()  and B<ruserok>"
16895 "()  functions are used by servers to authenticate clients requesting service "
16896 "with B<rcmd>().  All four functions are used by the B<rshd>(8)  server "
16897 "(among others)."
16898 msgstr ""
16899 "B<rcmd>() 関数は、スーパーユーザーがリモートマシンでコマンドを実行する\n"
16900 "ために 用いられる。このとき特権ポート番号をもとにした認証スキームが 用\n"
16901 "いられる。 B<rresvport>() 関数は、特権ポート空間のアドレスを持つソケッ\n"
16902 "トの ディスクリプターを返す。 B<iruserok>() 関数と B<ruserok>() 関数は、\n"
16903 "B<rcmd>() でサービス要求を行ったクライアントの認証を行うために サーバー\n"
16904 "が用いる関数である。 以上の 4 つの関数は、 B<rshd>(8) サーバーによって\n"
16905 "(他の関数とともに) 利用される。"
16906
16907 #. type: SS
16908 #: build/C/man3/rcmd.3:113
16909 #, no-wrap
16910 msgid "rcmd()"
16911 msgstr "rcmd()"
16912
16913 #. type: Plain text
16914 #: build/C/man3/rcmd.3:129
16915 msgid ""
16916 "The B<rcmd>()  function looks up the host I<*ahost> using B<gethostbyname>"
16917 "(3), returning -1 if the host does not exist.  Otherwise I<*ahost> is set to "
16918 "the standard name of the host and a connection is established to a server "
16919 "residing at the well-known Internet port I<inport>."
16920 msgstr ""
16921 "B<rcmd>()  関数は B<gethostbyname>(3)  を用いて I<*ahost> の参照を行う。ホス"
16922 "トが存在しない場合は -1 を返す。 見つかった場合は I<*ahost> にホストの標準名 "
16923 "(standard name) をセットして、 予約されているインターネットポート I<inport> "
16924 "経由でサーバーへの接続を確立する。"
16925
16926 #. type: Plain text
16927 #: build/C/man3/rcmd.3:158
16928 msgid ""
16929 "If the connection succeeds, a socket in the Internet domain of type "
16930 "B<SOCK_STREAM> is returned to the caller, and given to the remote command as "
16931 "I<stdin> and I<stdout>.  If I<fd2p> is nonzero, then an auxiliary channel to "
16932 "a control process will be set up, and a descriptor for it will be placed in "
16933 "I<*fd2p>.  The control process will return diagnostic output from the "
16934 "command (unit 2) on this channel, and will also accept bytes on this channel "
16935 "as being UNIX signal numbers, to be forwarded to the process group of the "
16936 "command.  If I<fd2p> is 0, then the I<stderr> (unit 2 of the remote command) "
16937 "will be made the same as the I<stdout> and no provision is made for sending "
16938 "arbitrary signals to the remote process, although you may be able to get its "
16939 "attention by using out-of-band data."
16940 msgstr ""
16941 "接続に成功したら、インターネットドメインに存在するタイプ B<SOCK_STREAM> のソ"
16942 "ケットが呼び出しもとに返される。 このソケットの相手側はリモートコマンドの "
16943 "I<stdin> および I<stdout> に接続される。 I<fd2p> がゼロでない場合は、制御プロ"
16944 "セスへの接続がもう一つ用意され、 そのディスクリプターが I<*fd2p> にセットされ"
16945 "る。 制御プロセスはリモートコマンドからの標準エラー出力 (unit 2) を このチャ"
16946 "ンネルに返す。 また制御プロセスはこの接続から受け取ったバイトデータを UNIX シ"
16947 "グナルの番号として扱い、リモートコマンドのプロセス グループへとシグナルを送"
16948 "る。 I<fd2p> がゼロの場合は、 I<stderr> (リモートコマンドの unit 2) は "
16949 "I<stdout> と一緒にまとめられる。またこの場合はリモートプロセスへ 任意のシグナ"
16950 "ルを送ることはできなくなる。 ただし帯域外 (out-of-band) データを用いれば、 リ"
16951 "モートプロセスの注意を引くことはできるかもしれない。"
16952
16953 #. type: Plain text
16954 #: build/C/man3/rcmd.3:161
16955 msgid "The protocol is described in detail in B<rshd>(8)."
16956 msgstr "プロトコルの詳細は B<rshd>(8)  に記述されている。"
16957
16958 #. type: SS
16959 #: build/C/man3/rcmd.3:161
16960 #, no-wrap
16961 msgid "rresvport()"
16962 msgstr "rresvport()"
16963
16964 #. type: Plain text
16965 #: build/C/man3/rcmd.3:183
16966 msgid ""
16967 "The B<rresvport>()  function is used to obtain a socket with a privileged "
16968 "port bound to it.  This socket is suitable for use by B<rcmd>()  and several "
16969 "other functions.  Privileged ports are those in the range 0 to 1023.  Only a "
16970 "privileged process (B<CAP_NET_BIND_SERVICE>)  is allowed to bind to a "
16971 "privileged port.  In the glibc implementation, this function restricts its "
16972 "search to the ports from 512 to 1023.  The I<port> argument is value-result: "
16973 "the value it supplies to the call is used as the starting point for a "
16974 "circular search of the port range; on (successful) return, it contains the "
16975 "port number that was bound to."
16976 msgstr ""
16977 "B<rresvport>() 関数は特権ポートにバインドされたソケットを取得するために\n"
16978 "用いられる。 このソケットは B<rcmd>() などの関数での利用に適している。\n"
16979 "インターネットポートの特権ポートは、 0 から 1023 の範囲である。特権プロ\n"
16980 "セス (B<CAP_NET_BIND_SERVICE>) だけが特権ポートをバインドすることができ\n"
16981 "る。 glibc の実装では、この関数は特権ポートの検索範囲を 512 から 1023\n"
16982 "までの範囲に制限している。 I<port> 引き数は入出力両用で使用される。呼び\n"
16983 "出し時にこの引き数で渡された値は特権ポートを巡回検索する際の開始ポイン\n"
16984 "トとして使用され、(成功で) 返る際にはこの引き数にバインドされたポート\n"
16985 "番号が格納される。"
16986
16987 #. type: SS
16988 #: build/C/man3/rcmd.3:183
16989 #, no-wrap
16990 msgid "iruserok() and ruserok()"
16991 msgstr "iruserok() と ruserok()"
16992
16993 #. type: Plain text
16994 #: build/C/man3/rcmd.3:201
16995 msgid ""
16996 "The B<iruserok>()  and B<ruserok>()  functions take a remote host's IP "
16997 "address or name, respectively, two usernames and a flag indicating whether "
16998 "the local user's name is that of the superuser.  Then, if the user is I<not> "
16999 "the superuser, it checks the I</etc/hosts.equiv> file.  If that lookup is "
17000 "not done, or is unsuccessful, the I<.rhosts> in the local user's home "
17001 "directory is checked to see if the request for service is allowed."
17002 msgstr ""
17003 "B<iruserok>()  と B<ruserok>()  関数は、まず以下の引数を取る: リモートホスト "
17004 "(B<iruserok>()  は IP アドレスで、 B<ruserok>()  はホスト名で指定)、 2 つの"
17005 "ユーザー名、ローカルユーザーの名前が スーパーユーザーのものであるかどうかを示"
17006 "すフラグ、である。 もしユーザーがB<スーパーユーザーではない>場合は、これらの"
17007 "関数は I</etc/hosts.equiv> ファイルをチェックする。ファイルが見つからなかった"
17008 "り、 内容のチェックに失敗した場合には、 ローカルユーザーのホームディレクトリ"
17009 "にある I<.rhosts> ファイルをチェックして、サービス要求が許可されているかどう"
17010 "か調べる。"
17011
17012 #. type: Plain text
17013 #: build/C/man3/rcmd.3:217
17014 msgid ""
17015 "If this file does not exist, is not a regular file, is owned by anyone other "
17016 "than the user or the superuser, or is writable by anyone other than the "
17017 "owner, the check automatically fails.  Zero is returned if the machine name "
17018 "is listed in the I<hosts.equiv> file, or the host and remote username are "
17019 "found in the I<.rhosts> file; otherwise B<iruserok>()  and B<ruserok>()  "
17020 "return -1.  If the local domain (as obtained from B<gethostname>(2))  is the "
17021 "same as the remote domain, only the machine name need be specified."
17022 msgstr ""
17023 "このファイルが存在しなかったり、 通常ファイル (regular file) ではなかった"
17024 "り、 指定ユーザーまたはスーパーユーザー以外の所有だったり、 所有者以外から書"
17025 "き込み可能だったりした場合には、 このチェックは自動的に失敗する。 マシンの名"
17026 "前が I<hosts.equiv> にリストされていたり、 ホストとリモートユーザーの名前が "
17027 "I<.rhosts> ファイルに書かれていた場合には 0 が返される。 それ以外の場合に"
17028 "は、 B<iruserok>()  と B<ruserok>()  は -1 を返す。 (B<gethostname>(2)  に"
17029 "よって取得される) ローカルドメインがリモートのドメインと同じ場合は、 マシンの"
17030 "名前だけを指定すればよい。"
17031
17032 #. type: Plain text
17033 #: build/C/man3/rcmd.3:223
17034 msgid ""
17035 "If the IP address of the remote host is known, B<iruserok>()  should be used "
17036 "in preference to B<ruserok>(), as it does not require trusting the DNS "
17037 "server for the remote host's domain."
17038 msgstr ""
17039 "リモートホストの IP アドレスがわかっている場合は、 B<ruserok>()  よりも "
17040 "B<iruserok>()B<を用いる方が良いだろう。> B<ruserok>()  はリモートホストの所属"
17041 "するドメインの DNS サーバーが信頼できなくても 使用できるからである。"
17042
17043 #. type: SS
17044 #: build/C/man3/rcmd.3:223
17045 #, no-wrap
17046 msgid "*_af() variants"
17047 msgstr "*_af() 版"
17048
17049 #. type: Plain text
17050 #: build/C/man3/rcmd.3:239
17051 msgid ""
17052 "All of the functions described above work with IPv4 (B<AF_INET>)  sockets.  "
17053 "The \"_af\" variants take an extra argument that allows the socket address "
17054 "family to be specified.  For these functions, the I<af> argument can be "
17055 "specified as B<AF_INET> or B<AF_INET6>.  In addition, B<rcmd_af>()  supports "
17056 "the use of B<AF_UNSPEC>."
17057 msgstr ""
17058 "上記で述べた関数は全て IPv4 (B<AF_INET>) ソケットで動作する。\n"
17059 "\"_af\" 版では追加の引き数があり、この引き数でソケットアドレス\n"
17060 "ファミリーを指定できる。これらの関数では、 I<af> 引き数には \n"
17061 "B<AF_INET> か B<AF_INET6> が指定できる。\n"
17062 "B<rcmd_af>() では追加で B<AF_UNSPEC> も指定できる。"
17063
17064 #. type: Plain text
17065 #: build/C/man3/rcmd.3:245
17066 msgid ""
17067 "The B<rcmd>()  function returns a valid socket descriptor on success.  It "
17068 "returns -1 on error and prints a diagnostic message on the standard error."
17069 msgstr ""
17070 "B<rcmd>()  関数は成功すると有効なソケットディスクリプターを返す。 失敗すると "
17071 "-1 を返し、標準エラー出力に診断メッセージを 表示する。"
17072
17073 #. type: Plain text
17074 #: build/C/man3/rcmd.3:256
17075 msgid ""
17076 "The B<rresvport>()  function returns a valid, bound socket descriptor on "
17077 "success.  It returns -1 on error with the global value I<errno> set "
17078 "according to the reason for failure.  The error code B<EAGAIN> is overloaded "
17079 "to mean \"All network ports in use.\""
17080 msgstr ""
17081 "B<rresvport>()  関数は、成功するとバインドされた有効なソケットディスクリプ"
17082 "ターを返す。 失敗すると -1 を返し、グローバル変数 I<errno> をエラーの原因に対"
17083 "応する値にセットする。 エラーコード B<EAGAIN> は、この関数においては「すべて"
17084 "のネットワークポートが使用中」 という意味を表す。"
17085
17086 #. type: Plain text
17087 #: build/C/man3/rcmd.3:262
17088 msgid ""
17089 "For information on the return from B<ruserok>()  and B<iruserok>(), see "
17090 "above."
17091 msgstr "B<ruserok>() と B<iruserok>() の返り値については、上述の説明を参照。"
17092
17093 #. type: Plain text
17094 #: build/C/man3/rcmd.3:270
17095 msgid ""
17096 "The functions B<iruserok_af>(), B<rcmd_af>(), B<rresvport_af>(), and "
17097 "B<ruserok_af>()  functions are provide in glibc since version 2.2."
17098 msgstr ""
17099 "関数 B<iruserok_af>(), B<rcmd_af>(), B<rresvport_af>(),\n"
17100 "B<ruserok_af>() は glibc バージョン 2.2 以降で提供されている。"
17101
17102 #. type: Plain text
17103 #: build/C/man3/rcmd.3:278
17104 msgid ""
17105 "Not in POSIX.1-2001.  Present on the BSDs, Solaris, and many other systems.  "
17106 "These functions appeared in 4.2BSD.  The \"_af\" variants are more recent "
17107 "additions, and are not present on as wide a range of systems."
17108 msgstr ""
17109 "POSIX.1-2001 にはない。 BSD 系、Solaris や他の多くのシステムに存在する。\n"
17110 "これらの関数は 4.2BSD で登場した。 \"_af\" が付くバージョンはより最近に\n"
17111 "追加されたもので、あまり多くのシステムには存在しない。"
17112
17113 #.  Bug filed 25 Nov 2007:
17114 #.  http://sources.redhat.com/bugzilla/show_bug.cgi?id=5399
17115 #. type: Plain text
17116 #: build/C/man3/rcmd.3:285
17117 msgid ""
17118 "B<iruserok>()  and B<iruserok_af>()  are declared in glibc headers only "
17119 "since version 2.12."
17120 msgstr ""
17121 "B<iruserok>() と B<iruserok_af>() は glibc バージョン 2.12 以降のヘッダ\n"
17122 "でのみ宣言されている。"
17123
17124 #. type: Plain text
17125 #: build/C/man3/rcmd.3:293
17126 msgid ""
17127 "B<rlogin>(1), B<rsh>(1), B<intro>(2), B<rexec>(3), B<rexecd>(8), B<rlogind>"
17128 "(8), B<rshd>(8)"
17129 msgstr ""
17130 "B<rlogin>(1), B<rsh>(1), B<intro>(2), B<rexec>(3), B<rexecd>(8), B<rlogind>"
17131 "(8), B<rshd>(8)"
17132
17133 #. type: TH
17134 #: build/C/man5/resolv.conf.5:23
17135 #, no-wrap
17136 msgid "RESOLV.CONF"
17137 msgstr "RESOLV.CONF"
17138
17139 #. type: TH
17140 #: build/C/man5/resolv.conf.5:23
17141 #, no-wrap
17142 msgid "2014-02-22"
17143 msgstr "2014-02-22"
17144
17145 #. type: Plain text
17146 #: build/C/man5/resolv.conf.5:27
17147 msgid "resolv.conf - resolver configuration file"
17148 msgstr "resolv.conf - レゾルバ設定ファイル"
17149
17150 #. type: Plain text
17151 #: build/C/man5/resolv.conf.5:29
17152 msgid "B</etc/resolv.conf>"
17153 msgstr "B</etc/resolv.conf>"
17154
17155 #. type: Plain text
17156 #: build/C/man5/resolv.conf.5:41
17157 #, fuzzy
17158 #| msgid ""
17159 #| "The I<resolver> is a set of routines in the C library that provide access "
17160 #| "to the Internet Domain Name System (DNS).  The resolver configuration "
17161 #| "file contains information that is read by the resolver routines the first "
17162 #| "time they are invoked by a process.  The file is designed to be human "
17163 #| "readable and contains a list of keywords with values that provide various "
17164 #| "types of resolver information."
17165 msgid ""
17166 "The I<resolver> is a set of routines in the C library that provide access to "
17167 "the Internet Domain Name System (DNS).  The resolver configuration file "
17168 "contains information that is read by the resolver routines the first time "
17169 "they are invoked by a process.  The file is designed to be human readable "
17170 "and contains a list of keywords with values that provide various types of "
17171 "resolver information.  The configuration file is considered a trusted source "
17172 "of DNS information (e.g., DNSSEC AD-bit information will be returned "
17173 "unmodified from this source)."
17174 msgstr ""
17175 "I<resolver> は、インターネットのドメインネームシステム (DNS) へのアクセスを提"
17176 "供する C ライブラリのルーチン群である。 レゾルバ設定ファイルには、レゾルバ"
17177 "ルーチンがプロセスによって最初に 起動されたときに読み込まれる情報が格納されて"
17178 "いる。 このファイルは人間に可読なように設計されている。 キーワードと値のリス"
17179 "トが含まれ、いろいろなタイプのレゾルバ情報を提供する。"
17180
17181 #. type: Plain text
17182 #: build/C/man5/resolv.conf.5:46
17183 msgid ""
17184 "If this file does not exist, only the name server on the local machine will "
17185 "be queried; the domain name is determined from the hostname and the domain "
17186 "search path is constructed from the domain name."
17187 msgstr ""
17188 "このファイルが存在しない場合、問い合わせはローカルマシン上の\n"
17189 "ネームサーバに対してのみ行われる。ドメイン名はホスト名から決定され、\n"
17190 "ドメインの検索パスはドメイン名から作成される。"
17191
17192 #. type: Plain text
17193 #: build/C/man5/resolv.conf.5:48
17194 msgid "The different configuration options are:"
17195 msgstr "この状態を変更するための設定オプションには、以下のようなものがある。"
17196
17197 #. type: TP
17198 #: build/C/man5/resolv.conf.5:48
17199 #, no-wrap
17200 msgid "B<nameserver> Name server IP address"
17201 msgstr "B<nameserver> ネームサーバの IP アドレス"
17202
17203 #. type: Plain text
17204 #: build/C/man5/resolv.conf.5:65
17205 msgid ""
17206 "Internet address of a name server that the resolver should query, either an "
17207 "IPv4 address (in dot notation), or an IPv6 address in colon (and possibly "
17208 "dot) notation as per RFC 2373.  Up to B<MAXNS> (currently 3, see "
17209 "I<E<lt>resolv.hE<gt>>) name servers may be listed, one per keyword.  If "
17210 "there are multiple servers, the resolver library queries them in the order "
17211 "listed.  If no B<nameserver> entries are present, the default is to use the "
17212 "name server on the local machine.  (The algorithm used is to try a name "
17213 "server, and if the query times out, try the next, until out of name servers, "
17214 "then repeat trying all the name servers until a maximum number of retries "
17215 "are made.)"
17216 msgstr ""
17217 "レゾルバが問い合わせをするネームサーバのインターネットアドレス。 アドレスに"
17218 "は IPv4 アドレスか IPv6 アドレスを指定する。 IPv4 アドレスはドット表記で、 "
17219 "IPv6 アドレスは RFC 2373 で定められたコロン表記 (おそらくドット表記も可) で指"
17220 "定する。 このキーワード 1 つごとに 1 台づつ、 B<MAXNS> 台 (現状では 3 台、"
17221 "I<E<lt>resolv.hE<gt>> を参照) までのネームサーバをリストできる。 複数のサーバ"
17222 "が指定された場合、レゾルバライブラリは リストされた順に問い合わせを行う。 "
17223 "B<nameserver> エントリがない場合、 デフォルトではローカルマシン上のネームサー"
17224 "バが使われる。 (ここで使われるアルゴリズムは以下のようなものである。 はじめに"
17225 "ネームサーバに問い合わせを試みる。 この問い合わせがタイムアウトになった場"
17226 "合、 次のネームサーバに問い合わせを試みる。 これをネームサーバがなくなるまで"
17227 "続ける。 それでも応答がない場合は、リトライ最大回数に達するまで 全てのネーム"
17228 "サーバに問い合わせを繰り返す。)"
17229
17230 #. type: TP
17231 #: build/C/man5/resolv.conf.5:65
17232 #, no-wrap
17233 msgid "B<domain> Local domain name."
17234 msgstr "B<domain> ローカルドメイン名"
17235
17236 #. type: Plain text
17237 #: build/C/man5/resolv.conf.5:76
17238 msgid ""
17239 "Most queries for names within this domain can use short names relative to "
17240 "the local domain.  If set to \\(aq.\\(aq, the root domain is considered.  If "
17241 "no B<domain> entry is present, the domain is determined from the local "
17242 "hostname returned by B<gethostname>(2); the domain part is taken to be "
17243 "everything after the first \\(aq.\\(aq.  Finally, if the hostname does not "
17244 "contain a domain part, the root domain is assumed."
17245 msgstr ""
17246 "このドメインにある名前の問い合わせのほとんどに、 このローカルドメインに対する"
17247 "短い名前を使用することができる。 \\(aq.\\(aq が設定された場合、 ルートドメイ"
17248 "ンが指定されたとみなされる。 B<domain> エントリがない場合、ドメイン名は "
17249 "B<gethostname>(2)  で返されるローカルホスト名から決定され、 最初の \\(aq."
17250 "\\(aq 以降の全ての部分がドメイン名とされる。 このホスト名にもドメイン部を含ん"
17251 "でいない場合、ルートドメインが仮定される。"
17252
17253 #. type: TP
17254 #: build/C/man5/resolv.conf.5:76
17255 #, no-wrap
17256 msgid "B<search> Search list for host-name lookup."
17257 msgstr "B<search> ホスト名ルックアップのための検索リスト"
17258
17259 #.  When having a resolv.conv with a line
17260 #.   search subdomain.domain.tld domain.tld
17261 #.  and doing a hostlookup, for example by
17262 #.   ping host.anothersubdomain
17263 #.  it sends dns-requests for
17264 #.   host.anothersubdomain.
17265 #.   host.anothersubdomain.subdomain.domain.tld.
17266 #.   host.anothersubdomain.domain.tld.
17267 #.  thus not only causing unnecessary traffic for the root-dns-servers
17268 #.  but broadcasting information to the outside and making man-in-the-middle
17269 #.  attacks possible.
17270 #. type: Plain text
17271 #: build/C/man5/resolv.conf.5:106
17272 msgid ""
17273 "The search list is normally determined from the local domain name; by "
17274 "default, it contains only the local domain name.  This may be changed by "
17275 "listing the desired domain search path following the I<search> keyword with "
17276 "spaces or tabs separating the names.  Resolver queries having fewer than "
17277 "I<ndots> dots (default is 1) in them will be attempted using each component "
17278 "of the search path in turn until a match is found.  For environments with "
17279 "multiple subdomains please read B<options ndots:>I<n> below to avoid man-in-"
17280 "the-middle attacks and unnecessary traffic for the root-dns-servers.  Note "
17281 "that this process may be slow and will generate a lot of network traffic if "
17282 "the servers for the listed domains are not local, and that queries will time "
17283 "out if no server is available for one of the domains."
17284 msgstr ""
17285 "検索リストは通常ローカルドメイン名から決定される。 デフォルトでは、検索リスト"
17286 "はローカルドメイン名のみである。 これを変更するには、I<search> キーワードの後"
17287 "に 希望するドメイン検索パスをスペースまたはタブで区切ってリストすればよい。 "
17288 "ドットの数が I<ndots> (デフォルトでは 1) より少ないレゾルバの問い合わせは、 "
17289 "一致するものが見つかるまで検索パスの各要素を順に使って試す。 複数のサブドメイ"
17290 "ンを持つ環境では、 第三者による攻撃 (man-in-the-middle attack) と ルート DNS "
17291 "サーバへの不必要なトラフィックを避けるために、 以下の B<options ndots:>I<n> "
17292 "を読んでほしい。 このプロセスは遅く、リストされたドメインがローカルのものでな"
17293 "い場合、 多大なネットワークトラフィックを発生させることに注意すること。 さら"
17294 "に、これらのドメインのいずれかひとつにでも適切なサーバがない場合、 問い合わせ"
17295 "がタイムアウトになる点にも注意すること。"
17296
17297 #. type: Plain text
17298 #: build/C/man5/resolv.conf.5:109
17299 msgid ""
17300 "The search list is currently limited to six domains with a total of 256 "
17301 "characters."
17302 msgstr "現状では、検索リストは 6 ドメイン・計 256 文字に制限されている。"
17303
17304 #. type: TP
17305 #: build/C/man5/resolv.conf.5:109
17306 #, no-wrap
17307 msgid "B<sortlist>"
17308 msgstr "B<sortlist>"
17309
17310 #. type: Plain text
17311 #: build/C/man5/resolv.conf.5:122
17312 msgid ""
17313 "This option allows addresses returned by B<gethostbyname>(3)  to be sorted.  "
17314 "A sortlist is specified by IP-address-netmask pairs.  The netmask is "
17315 "optional and defaults to the natural netmask of the net.  The IP address and "
17316 "optional network pairs are separated by slashes.  Up to 10 pairs may be "
17317 "specified.  Here is an example:"
17318 msgstr ""
17319 "このオプションを使うと、 B<gethostbyname>(3)  で返されるアドレスをソートさせ"
17320 "ることができる。 sortlist は IP アドレスとネットマスクのペアで指定される。 "
17321 "ネットマスクは省略可能であり、 デフォルトではネットに対するデフォルトのネット"
17322 "マスクである。 IP アドレスとオプションのネットマスクのペアはスラッシュで区切"
17323 "る。 最大 10 組のペアを指定できる。 以下に例を示す。"
17324
17325 #. type: Plain text
17326 #: build/C/man5/resolv.conf.5:125
17327 msgid "sortlist 130.155.160.0/255.255.240.0 130.155.0.0"
17328 msgstr "sortlist 130.155.160.0/255.255.240.0 130.155.0.0"
17329
17330 #. type: TP
17331 #: build/C/man5/resolv.conf.5:127
17332 #, no-wrap
17333 msgid "B<options>"
17334 msgstr "B<options>"
17335
17336 #. type: Plain text
17337 #: build/C/man5/resolv.conf.5:131
17338 msgid ""
17339 "Options allows certain internal resolver variables to be modified.  The "
17340 "syntax is"
17341 msgstr ""
17342 "options により、レゾルバの内部変数を変更することができる。 書式は以下の通りで"
17343 "ある。"
17344
17345 #. type: Plain text
17346 #: build/C/man5/resolv.conf.5:134
17347 msgid "B<options> I<option> I<...>"
17348 msgstr "B<options> I<option> I<...>"
17349
17350 #. type: Plain text
17351 #: build/C/man5/resolv.conf.5:136
17352 msgid "where I<option> is one of the following:"
17353 msgstr "ここで I<option> は次のうちのいずれかである。"
17354
17355 #. type: TP
17356 #: build/C/man5/resolv.conf.5:136
17357 #, no-wrap
17358 msgid "B<debug>"
17359 msgstr "B<debug>"
17360
17361 #.  Since glibc 2.2?
17362 #. type: Plain text
17363 #: build/C/man5/resolv.conf.5:145
17364 msgid ""
17365 "sets B<RES_DEBUG> in I<_res.options> (effective only if glibc was built with "
17366 "debug support; see B<resolver>(3))."
17367 msgstr ""
17368 "B<RES_DEBUG> を I<_res.options> にセットする (glibc がデバッグを有効にしてコ"
17369 "ンパイルされている場合にのみ有効である; B<resolver>(3) を参照)。"
17370
17371 #. type: TP
17372 #: build/C/man5/resolv.conf.5:145
17373 #, no-wrap
17374 msgid "B<ndots:>I<n>"
17375 msgstr "B<ndots:>I<n>"
17376
17377 #.  Since glibc 2.2
17378 #. type: Plain text
17379 #: build/C/man5/resolv.conf.5:159
17380 msgid ""
17381 "sets a threshold for the number of dots which must appear in a name given to "
17382 "B<res_query>(3)  (see B<resolver>(3))  before an I<initial absolute query> "
17383 "will be made.  The default for I<n> is 1, meaning that if there are any dots "
17384 "in a name, the name will be tried first as an absolute name before any "
17385 "I<search list> elements are appended to it.  The value for this option is "
17386 "silently capped to 15."
17387 msgstr ""
17388 "「I<最初の完全な名前での問い合わせ>が実行される前に、 B<res_query>(3)  "
17389 "(B<resolver>(3)  を参照) に与えられる名前に含まれているべきドットの数の閾値」"
17390 "を設定する。 I<n> のデフォルトは 1 である。 これは、名前にドットがある場合、"
17391 "I<search list> の要素が付加される前に、 その名前が完全な名前として最初に試さ"
17392 "れるということを意味している。 このオプションの値の上限は 15 であり、黙ってこ"
17393 "の値まで切り詰められる。"
17394
17395 #. type: TP
17396 #: build/C/man5/resolv.conf.5:159
17397 #, no-wrap
17398 msgid "B<timeout:>I<n>"
17399 msgstr "B<timeout:>I<n>"
17400
17401 #.  Since glibc 2.2
17402 #. type: Plain text
17403 #: build/C/man5/resolv.conf.5:170
17404 msgid ""
17405 "sets the amount of time the resolver will wait for a response from a remote "
17406 "name server before retrying the query via a different name server.  Measured "
17407 "in seconds, the default is B<RES_TIMEOUT> (currently 5, see I<E<lt>resolv."
17408 "hE<gt>>).  The value for this option is silently capped to 30."
17409 msgstr ""
17410 "「レゾルバが他のネームサーバで問い合わせをリトライする前に、 リモートネーム"
17411 "サーバからの応答を待つ時間」を設定する。 単位は秒で、デフォルトは "
17412 "B<RES_TIMEOUT> である (現状では 5 秒、I<E<lt>resolv.hE<gt>> を参照)。 このオ"
17413 "プションの値の上限は 30 であり、黙ってこの値まで切り詰められる。"
17414
17415 #. type: TP
17416 #: build/C/man5/resolv.conf.5:170
17417 #, no-wrap
17418 msgid "B<attempts:>I<n>"
17419 msgstr "B<attempts:>I<n>"
17420
17421 #. type: Plain text
17422 #: build/C/man5/resolv.conf.5:179
17423 msgid ""
17424 "sets the number of times the resolver will send a query to its name servers "
17425 "before giving up and returning an error to the calling application.  The "
17426 "default is B<RES_DFLRETRY> (currently 2, see I<E<lt>resolv.hE<gt>>).  The "
17427 "value for this option is silently capped to 5."
17428 msgstr ""
17429 "「レゾルバが諦めて呼び出し元のアプリケーションにエラーを返すまでに、 ネーム"
17430 "サーバに問い合わせを行う回数」を設定する。 デフォルトは B<RES_DFLRETRY> 回で"
17431 "ある (現状では 2 回、I<E<lt>resolv.hE<gt>> を参照)。 このオプションの値の上限"
17432 "は 5 であり、黙ってこの値まで切り詰められる。"
17433
17434 #. type: TP
17435 #: build/C/man5/resolv.conf.5:179
17436 #, no-wrap
17437 msgid "B<rotate>"
17438 msgstr "B<rotate>"
17439
17440 #.  Since glibc 2.2
17441 #. type: Plain text
17442 #: build/C/man5/resolv.conf.5:189
17443 msgid ""
17444 "sets B<RES_ROTATE> in I<_res.options>, which causes round-robin selection of "
17445 "name servers from among those listed.  This has the effect of spreading the "
17446 "query load among all listed servers, rather than having all clients try the "
17447 "first listed server first every time."
17448 msgstr ""
17449 "I<_res.options> に RES_ROTATE を設定する。リストされているネームサーバから選"
17450 "ぶときに、ラウンドロビン (round-robin) 選択を行わせる。リストされている全ての"
17451 "サーバで問い合わせの負荷を分散する効果があり、最初にリストされたサーバに全て"
17452 "のクライアントが毎回最初に問い合わせを行うわけではなくなる。"
17453
17454 #. type: TP
17455 #: build/C/man5/resolv.conf.5:189
17456 #, no-wrap
17457 msgid "B<no-check-names>"
17458 msgstr "B<no-check-names>"
17459
17460 #.  since glibc 2.2
17461 #. type: Plain text
17462 #: build/C/man5/resolv.conf.5:199
17463 msgid ""
17464 "sets B<RES_NOCHECKNAME> in I<_res.options>, which disables the modern BIND "
17465 "checking of incoming hostnames and mail names for invalid characters such as "
17466 "underscore (_), non-ASCII, or control characters."
17467 msgstr ""
17468 "I<_res.options> に B<RES_NOCHECKNAME> を設定する。 入ってくるホスト名とメール"
17469 "アドレスに、 アンダースコア (_)・ASCII 以外の文字・制御文字といった 不正な文"
17470 "字が含まれていないかを調べる 最近の BIND のチェックを無効にする。"
17471
17472 #. type: TP
17473 #: build/C/man5/resolv.conf.5:199
17474 #, no-wrap
17475 msgid "B<inet6>"
17476 msgstr "B<inet6>"
17477
17478 #.  Since glibc 2.2
17479 #. type: Plain text
17480 #: build/C/man5/resolv.conf.5:210
17481 msgid ""
17482 "sets B<RES_USE_INET6> in I<_res.options>.  This has the effect of trying a "
17483 "AAAA query before an A query inside the B<gethostbyname>(3)  function, and "
17484 "of mapping IPv4 responses in IPv6 \"tunneled form\" if no AAAA records are "
17485 "found but an A record set exists."
17486 msgstr ""
17487 "I<_res.options> に B<RES_USE_INET6> を設定する。このオプションが設定される"
17488 "と、 B<gethostbyname>(3)  関数の内部で A レコードの問い合わせを行う前に AAAA "
17489 "レコードの問い合わせを行うようになる。 また、AAAA レコードは見つからないが A "
17490 "レコードセットが存在する場合に、 IPv4 の応答を IPv6「トンネル形式」にマップす"
17491 "るようになる。"
17492
17493 #. type: TP
17494 #: build/C/man5/resolv.conf.5:210
17495 #, no-wrap
17496 msgid "B<ip6-bytestring> (since glibc 2.3.4)"
17497 msgstr "B<ip6-bytestring> (glibc 2.3.4 以降)"
17498
17499 #. type: Plain text
17500 #: build/C/man5/resolv.conf.5:219
17501 msgid ""
17502 "sets B<RES_USE_BSTRING> in I<_res.options>.  This causes reverse IPv6 "
17503 "lookups to be made using the bit-label format described in RFC\\ 2673; if "
17504 "this option is not set, then nibble format is used."
17505 msgstr ""
17506 "I<_res.options> に B<RES_USE_BSTRING> を設定する。このオプションが設定される"
17507 "と、IPv6 アドレスの逆引きで RFC\\ 2673 で規定された bit-label 形式が使用され"
17508 "るようになる。 このオプションが設定されない場合、nibble 形式が使用される。"
17509
17510 #. type: TP
17511 #: build/C/man5/resolv.conf.5:219
17512 #, no-wrap
17513 msgid "B<ip6-dotint>/B<no-ip6-dotint> (since glibc 2.3.4)"
17514 msgstr "B<ip6-dotint>/B<no-ip6-dotint> (glibc 2.3.4 以降)"
17515
17516 #. type: Plain text
17517 #: build/C/man5/resolv.conf.5:236
17518 msgid ""
17519 "Clear/set B<RES_NOIP6DOTINT> in I<_res.options>.  When this option is clear "
17520 "(B<ip6-dotint>), reverse IPv6 lookups are made in the (deprecated)  I<ip6."
17521 "int> zone; when this option is set (B<no-ip6-dotint>), reverse IPv6 lookups "
17522 "are made in the I<ip6.arpa> zone by default.  This option is set by default."
17523 msgstr ""
17524 "I<_res.options> への B<RES_NOIP6DOTINT> のセット/クリアを行う。 このオプショ"
17525 "ンがクリアされると (B<ip6-dotint>)、 IPv6 アドレスの逆引きが (非推奨の)  "
17526 "I<ip6.int> ゾーンで行われるようになり、 このオプションがセットされると (B<no-"
17527 "ip6-dotint>)、 IPv6 アドレスの逆引きがデフォルトの I<ip6.arpa> ゾーンで行われ"
17528 "るようになる。 このオプションはデフォルトでセットされる。"
17529
17530 #. type: TP
17531 #: build/C/man5/resolv.conf.5:236
17532 #, no-wrap
17533 msgid "B<edns0> (since glibc 2.6)"
17534 msgstr "B<edns0> (glibc 2.6 以降)"
17535
17536 #. type: Plain text
17537 #: build/C/man5/resolv.conf.5:243
17538 msgid ""
17539 "sets B<RES_USE_EDNSO> in I<_res.options>.  This enables support for the DNS "
17540 "extensions described in RFC\\ 2671."
17541 msgstr ""
17542 "I<_res.options> に B<RES_USE_EDNSO> をセットする。これにより、RFC\\ 2671 で規"
17543 "定されている DNS 拡張のサポートが有効になる。"
17544
17545 #. type: TP
17546 #: build/C/man5/resolv.conf.5:243
17547 #, no-wrap
17548 msgid "B<single-request> (since glibc 2.10)"
17549 msgstr "B<single-request> (glibc 2.10 以降)"
17550
17551 #. type: Plain text
17552 #: build/C/man5/resolv.conf.5:256
17553 msgid ""
17554 "sets B<RES_SNGLKUP> in I<_res.options>.  By default, glibc performs IPv4 and "
17555 "IPv6 lookups in parallel since version 2.9.  Some appliance DNS servers "
17556 "cannot handle these queries properly and make the requests time out.  This "
17557 "option disables the behavior and makes glibc perform the IPv6 and IPv4 "
17558 "requests sequentially (at the cost of some slowdown of the resolving "
17559 "process)."
17560 msgstr ""
17561 "I<_res.options> に B<RES_SNGLKUP> をセットする。\n"
17562 "glibc バージョン 2.9 以降では、 glibc はデフォルトでは\n"
17563 "IPv4 と IPv6 の検索を並行して実行する。\n"
17564 "アプライアンス DNS サーバの中には、このような問い合わせを\n"
17565 "適切に処理できず、検索要求がタイムアウトになってしまう。\n"
17566 "このオプションをセットすると、このデフォルトの動作が無効になり、\n"
17567 "glibc は IPv6 と IPv4 の検索を順番に実行するようになる\n"
17568 "(名前解決処理が若干遅くなるというデメリットがある)。"
17569
17570 #. type: TP
17571 #: build/C/man5/resolv.conf.5:256
17572 #, no-wrap
17573 msgid "B<single-request-reopen> (since glibc 2.9)"
17574 msgstr "B<single-request-reopen> (glibc 2.9 以降)"
17575
17576 #. type: Plain text
17577 #: build/C/man5/resolv.conf.5:264
17578 msgid ""
17579 "The resolver uses the same socket for the A and AAAA requests.  Some "
17580 "hardware mistakenly sends back only one reply.  When that happens the client "
17581 "system will sit and wait for the second reply.  Turning this option on "
17582 "changes this behavior so that if two requests from the same port are not "
17583 "handled correctly it will close the socket and open a new one before sending "
17584 "the second request."
17585 msgstr ""
17586 "リゾルバは同じソケットを使って A レコードと AAAA レコードの検索要求を行う。 "
17587 "いくつかのハードウェアは実装が間違っており、応答を一つしか返さない。 この状況"
17588 "になると、クライアントシステムは 2 番目の応答を待ち続けてしまう。 このオプ"
17589 "ションを有効にすると、この動作が変更され、 同じポートからの 2 つの検索要求が"
17590 "正しく処理されなかった場合、 2 番目の検索要求を送信する前にソケットをクローズ"
17591 "し 新しいソケットをオープンするようになる。"
17592
17593 #. type: Plain text
17594 #: build/C/man5/resolv.conf.5:269
17595 msgid ""
17596 "The I<domain> and I<search> keywords are mutually exclusive.  If more than "
17597 "one instance of these keywords is present, the last instance wins."
17598 msgstr ""
17599 "I<domain> と I<search> キーワードは、互いに排他的である。 これらのキーワード"
17600 "が 2 つ以上記述されている場合、 最後に記述されているものが有効になる。"
17601
17602 #. type: Plain text
17603 #: build/C/man5/resolv.conf.5:274
17604 msgid ""
17605 "The I<search> keyword of a system's I<resolv.conf> file can be overridden on "
17606 "a per-process basis by setting the environment variable B<LOCALDOMAIN> to a "
17607 "space-separated list of search domains."
17608 msgstr ""
17609 "システムの I<resolv.conf> ファイルにある I<search> キーワードは、 スペースで"
17610 "区切った検索ドメインのリストを 環境変数 B<LOCALDOMAIN> に設定することにより、"
17611 "各プロセス毎に上書きすることができる。"
17612
17613 #. type: Plain text
17614 #: build/C/man5/resolv.conf.5:280
17615 msgid ""
17616 "The I<options> keyword of a system's I<resolv.conf> file can be amended on a "
17617 "per-process basis by setting the environment variable B<RES_OPTIONS> to a "
17618 "space-separated list of resolver options as explained above under B<options>."
17619 msgstr ""
17620 "システムの I<resolv.conf> ファイルにある I<options> キーワードは、 上の "
17621 "B<options> セクションで説明したように、 スペースで区切ったレゾルバオプション"
17622 "のリストを 環境変数 B<RES_OPTIONS> に設定することにより、各プロセス毎に修正す"
17623 "ることができる。"
17624
17625 #. type: Plain text
17626 #: build/C/man5/resolv.conf.5:284
17627 msgid ""
17628 "The keyword and value must appear on a single line, and the keyword (e.g., "
17629 "B<nameserver>) must start the line.  The value follows the keyword, "
17630 "separated by white space."
17631 msgstr ""
17632 "キーワードと値は同じ行に書かなければならない。 また、(B<nameserver> のよう"
17633 "な) キーワードが行の先頭になければならない。 値はキーワードの後にスペースで区"
17634 "切って続ける。"
17635
17636 #. type: Plain text
17637 #: build/C/man5/resolv.conf.5:287
17638 msgid ""
17639 "Lines that contain a semicolon (;) or hash character (#)  in the first "
17640 "column are treated as comments."
17641 msgstr "セミコロン (;) かハッシュ文字 (#) で始まる行はコメントとして扱われる。"
17642
17643 #. type: Plain text
17644 #: build/C/man5/resolv.conf.5:290
17645 msgid "I</etc/resolv.conf>, I<E<lt>resolv.hE<gt>>"
17646 msgstr "I</etc/resolv.conf>, I<E<lt>resolv.hE<gt>>"
17647
17648 #. type: Plain text
17649 #: build/C/man5/resolv.conf.5:295
17650 msgid "B<gethostbyname>(3), B<resolver>(3), B<hostname>(7), B<named>(8)"
17651 msgstr "B<gethostbyname>(3), B<resolver>(3), B<hostname>(7), B<named>(8)"
17652
17653 #. type: Plain text
17654 #: build/C/man5/resolv.conf.5:297
17655 msgid "Name Server Operations Guide for BIND"
17656 msgstr "BIND のネームサーバオペレーションガイド"
17657
17658 #. type: TH
17659 #: build/C/man3/resolver.3:32
17660 #, no-wrap
17661 msgid "RESOLVER"
17662 msgstr "RESOLVER"
17663
17664 #. type: TH
17665 #: build/C/man3/resolver.3:32
17666 #, no-wrap
17667 msgid "2013-03-05"
17668 msgstr "2013-03-05"
17669
17670 #. type: Plain text
17671 #: build/C/man3/resolver.3:36
17672 msgid ""
17673 "res_init, res_query, res_search, res_querydomain, res_mkquery, res_send, "
17674 "dn_comp, dn_expand - resolver routines"
17675 msgstr ""
17676 "res_init, res_query, res_search, res_querydomain, res_mkquery, res_send, "
17677 "dn_comp, dn_expand - レゾルバ・ルーチン"
17678
17679 #. type: Plain text
17680 #: build/C/man3/resolver.3:42
17681 #, no-wrap
17682 msgid ""
17683 "B<#include E<lt>netinet/in.hE<gt>>\n"
17684 "B<#include E<lt>arpa/nameser.hE<gt>>\n"
17685 "B<#include E<lt>resolv.hE<gt>>\n"
17686 "B<extern struct state _res;>\n"
17687 msgstr ""
17688 "B<#include E<lt>netinet/in.hE<gt>>\n"
17689 "B<#include E<lt>arpa/nameser.hE<gt>>\n"
17690 "B<#include E<lt>resolv.hE<gt>>\n"
17691 "B<extern struct state _res;>\n"
17692
17693 #. type: Plain text
17694 #: build/C/man3/resolver.3:44
17695 #, no-wrap
17696 msgid "B<int res_init(void);>\n"
17697 msgstr "B<int res_init(void);>\n"
17698
17699 #. type: Plain text
17700 #: build/C/man3/resolver.3:46
17701 #, no-wrap
17702 msgid "B<int res_query(const char *>I<dname>B<, int >I<class>B<, int >I<type>B<,>\n"
17703 msgstr "B<int res_query(const char *>I<dname>B<, int >I<class>B<, int >I<type>B<,>\n"
17704
17705 #. type: Plain text
17706 #: build/C/man3/resolver.3:48 build/C/man3/resolver.3:53
17707 #, no-wrap
17708 msgid "B<unsigned char *>I<answer>B<, int >I<anslen>B<);>\n"
17709 msgstr "B<unsigned char *>I<answer>B<, int >I<anslen>B<);>\n"
17710
17711 #. type: Plain text
17712 #: build/C/man3/resolver.3:51
17713 #, no-wrap
17714 msgid "B<int res_search(const char *>I<dname>B<, int >I<class>B<, int >I<type>B<,>\n"
17715 msgstr "B<int res_search(const char *>I<dname>B<, int >I<class>B<, int >I<type>B<,>\n"
17716
17717 #. type: Plain text
17718 #: build/C/man3/resolver.3:56
17719 #, no-wrap
17720 msgid "B<int res_querydomain(const char *>I<name>B<, const char *>I<domain>B<,>\n"
17721 msgstr "B<int res_querydomain(const char *>I<name>B<, const char *>I<domain>B<,>\n"
17722
17723 #. type: Plain text
17724 #: build/C/man3/resolver.3:59
17725 #, no-wrap
17726 msgid ""
17727 "B<int >I<class>B<, int >I<type>B<, unsigned char *>I<answer>B<,>\n"
17728 "B<int >I<anslen>B<);>\n"
17729 msgstr ""
17730 "B<int >I<class>B<, int >I<type>B<, unsigned char *>I<answer>B<,>\n"
17731 "B<int >I<anslen>B<);>\n"
17732
17733 #. type: Plain text
17734 #: build/C/man3/resolver.3:62
17735 #, no-wrap
17736 msgid "B<int res_mkquery(int >I<op>B<, const char *>I<dname>B<, int >I<class>B<,>\n"
17737 msgstr "B<int res_mkquery(int >I<op>B<, const char *>I<dname>B<, int >I<class>B<,>\n"
17738
17739 #. type: Plain text
17740 #: build/C/man3/resolver.3:65
17741 #, no-wrap
17742 msgid ""
17743 "B<int >I<type>B<, char *>I<data>B<, int >I<datalen>B<, struct rrec *>I<newrr>B<,>\n"
17744 "B<char *>I<buf>B<, int >I<buflen>B<);>\n"
17745 msgstr ""
17746 "B<int >I<type>B<, char *>I<data>B<, int >I<datalen>B<, struct rrec *>I<newrr>B<,>\n"
17747 "B<char *>I<buf>B<, int >I<buflen>B<);>\n"
17748
17749 #. type: Plain text
17750 #: build/C/man3/resolver.3:68
17751 #, no-wrap
17752 msgid "B<int res_send(const char *>I<msg>B<, int >I<msglen>B<, char *>I<answer>B<,>\n"
17753 msgstr "B<int res_send(const char *>I<msg>B<, int >I<msglen>B<, char *>I<answer>B<,>\n"
17754
17755 #. type: Plain text
17756 #: build/C/man3/resolver.3:70
17757 #, no-wrap
17758 msgid "B<int >I<anslen>B<);>\n"
17759 msgstr "B<int >I<anslen>B<);>\n"
17760
17761 #. type: Plain text
17762 #: build/C/man3/resolver.3:73
17763 #, no-wrap
17764 msgid "B<int dn_comp(unsigned char *>I<exp_dn>B<, unsigned char *>I<comp_dn>B<,>\n"
17765 msgstr "B<int dn_comp(unsigned char *>I<exp_dn>B<, unsigned char *>I<comp_dn>B<,>\n"
17766
17767 #. type: Plain text
17768 #: build/C/man3/resolver.3:75
17769 #, no-wrap
17770 msgid "B<int >I<length>B<, unsigned char **>I<dnptrs>B<, unsigned char **>I<lastdnptr>B<);>\n"
17771 msgstr "B<int >I<length>B<, unsigned char **>I<dnptrs>B<, unsigned char **>I<lastdnptr>B<);>\n"
17772
17773 #. type: Plain text
17774 #: build/C/man3/resolver.3:78
17775 #, no-wrap
17776 msgid "B<int dn_expand(unsigned char *>I<msg>B<, unsigned char *>I<eomorig>B<,>\n"
17777 msgstr "B<int dn_expand(unsigned char *>I<msg>B<, unsigned char *>I<eomorig>B<,>\n"
17778
17779 #. type: Plain text
17780 #: build/C/man3/resolver.3:81
17781 #, no-wrap
17782 msgid ""
17783 "B<unsigned char *>I<comp_dn>B<, char *>I<exp_dn>B<,>\n"
17784 "B<int >I<length>B<);>\n"
17785 msgstr ""
17786 "B<unsigned char *>I<comp_dn>B<, char *>I<exp_dn>B<,>\n"
17787 "B<int >I<length>B<);>\n"
17788
17789 #. type: Plain text
17790 #: build/C/man3/resolver.3:85
17791 msgid "Link with I<-lresolv>."
17792 msgstr "I<-lresolv> でリンクする。"
17793
17794 #. type: Plain text
17795 #: build/C/man3/resolver.3:88
17796 msgid ""
17797 "These functions make queries to and interpret the responses from Internet "
17798 "domain name servers."
17799 msgstr ""
17800 "これらの関数はインターネットのドメインネームサーバーに問い合わせ、 その応答を"
17801 "解釈する。"
17802
17803 #. type: Plain text
17804 #: build/C/man3/resolver.3:102
17805 msgid ""
17806 "The B<res_init>()  function reads the configuration files (see B<resolv.conf>"
17807 "(5))  to get the default domain name, search order and name server address"
17808 "(es).  If no server is given, the local host is tried.  If no domain is "
17809 "given, that associated with the local host is used.  It can be overridden "
17810 "with the environment variable B<LOCALDOMAIN>.  B<res_init>()  is normally "
17811 "executed by the first call to one of the other functions."
17812 msgstr ""
17813 "B<res_init>()  関数は、デフォルトのドメイン名、検索順、ネームサーバー アドレ"
17814 "スを得るために設定ファイル (B<resolv.conf>(5) 参照) を読む。 もしサーバーが示"
17815 "されていなければローカルホストを試す。 ドメインが示されていなければローカルホ"
17816 "ストに付けられたドメインを用いる。 環境変数 B<LOCALDOMAIN> でオーバーライドで"
17817 "きる。 B<res_init>()  は、後述する関数のどれかが最初に呼び出された時、その関"
17818 "数 から実行される。"
17819
17820 #. type: Plain text
17821 #: build/C/man3/resolver.3:110
17822 msgid ""
17823 "The B<res_query>()  function queries the name server for the fully qualified "
17824 "domain name I<name> of specified I<type> and I<class>.  The reply is left in "
17825 "the buffer I<answer> of length I<anslen> supplied by the caller."
17826 msgstr ""
17827 "B<res_query>()  関数は、指定された I<type> と I<class> の 完全修飾ドメイン名 "
17828 "(FQDN) I<name> を、ネームサーバーへ問い合わせる。 応答は、呼び出した側によっ"
17829 "て用意される長さ I<anslen> の I<answer> バッファーに残される。"
17830
17831 #. type: Plain text
17832 #: build/C/man3/resolver.3:123
17833 msgid ""
17834 "The B<res_search>()  function makes a query and waits for the response like "
17835 "B<res_query>(), but in addition implements the default and search rules "
17836 "controlled by B<RES_DEFNAMES> and B<RES_DNSRCH> (see description of I<_res> "
17837 "options below)."
17838 msgstr ""
17839 "B<res_search>()  関数は、問い合わせを行い B<res_query>()  同様その応答を 待つ"
17840 "が、さらにデフォルトを実装しており B<RES_DEFNAMES> と B<RES_DNSRCH> によって"
17841 "規定される検索ルールを適用する。 (下記 I<_res> オプションの説明を参照)"
17842
17843 #. type: Plain text
17844 #: build/C/man3/resolver.3:129
17845 msgid ""
17846 "The B<res_querydomain>()  function makes a query using B<res_query>()  on "
17847 "the concatenation of I<name> and I<domain>."
17848 msgstr ""
17849 "B<res_querydomain>()  関数は I<name> と I<domain> の結合に B<res_query>()  を"
17850 "用いて問い合わせを行う。"
17851
17852 #. type: Plain text
17853 #: build/C/man3/resolver.3:132
17854 msgid ""
17855 "The following functions are lower-level routines used by B<res_query>()."
17856 msgstr "次の関数は、 B<res_query>()  で使われる下位ルーチンである。"
17857
17858 #. type: Plain text
17859 #: build/C/man3/resolver.3:143
17860 msgid ""
17861 "The B<res_mkquery>()  function constructs a query message in I<buf> of "
17862 "length I<buflen> for the domain name I<dname>.  The query type I<op> is "
17863 "usually B<QUERY>, but can be any of the types defined in I<E<lt>arpa/nameser."
17864 "hE<gt>>.  I<newrr> is currently unused."
17865 msgstr ""
17866 "B<res_mkquery>()  関数は、ドメイン名 I<dname> の為に、長さ I<buflen> の "
17867 "I<buf> に問い合わせるメッセージを作成する。 問い合わせの型 I<op> は通常 "
17868 "B<QUERY> だが、 I<E<lt>arpa/nameser.hE<gt>> で定義された型のどれでも良い。 "
17869 "I<newrr> は現在使用されていない。"
17870
17871 #. type: Plain text
17872 #: build/C/man3/resolver.3:153
17873 msgid ""
17874 "The B<res_send>()  function sends a preformatted query given in I<msg> of "
17875 "length I<msglen> and returns the answer in I<answer> which is of length "
17876 "I<anslen>.  It will call B<res_init>(), if it has not already been called."
17877 msgstr ""
17878 "B<res_send>()  関数は、長さ I<msglen> の I<msg> に決められた書式 で問い合わ"
17879 "せ、I<answer> に長さ I<anslen> の回答を返す。 まだ呼び出されていなければ "
17880 "B<res_init>()  を呼び出す。"
17881
17882 #. type: Plain text
17883 #: build/C/man3/resolver.3:166
17884 msgid ""
17885 "The B<dn_comp>()  function compresses the domain name I<exp_dn> and stores "
17886 "it in the buffer I<comp_dn> of length I<length>.  The compression uses an "
17887 "array of pointers I<dnptrs> to previously compressed names in the current "
17888 "message.  The first pointer points to the beginning of the message and the "
17889 "list ends with NULL.  The limit of the array is specified by I<lastdnptr>.  "
17890 "If I<dnptr> is NULL, domain names are not compressed.  If I<lastdnptr> is "
17891 "NULL, the list of labels is not updated."
17892 msgstr ""
17893 "B<dn_comp>()  関数はドメイン名 I<exp_dn> を圧縮して、長さ I<length> のバッ"
17894 "ファー I<comp_dn> に保存する。 圧縮にはポインター配列 I<dnptrs> を用いる。 こ"
17895 "れらのポインターは、現在のメッセージの中にある以前に圧縮された名前を指す。 最"
17896 "初のポインターはメッセージの冒頭を指し、そのリストは NULL で終わる。 配列の範"
17897 "囲は I<lastdnptr> で決められる。 I<dnptr> が NULL ならばドメイン名は圧縮され"
17898 "ない。 I<lastdnptr> が NULL ならば、そのラベルのリストはアップデートされな"
17899 "い。"
17900
17901 #. type: Plain text
17902 #: build/C/man3/resolver.3:175
17903 msgid ""
17904 "The B<dn_expand>()  function expands the compressed domain name I<comp_dn> "
17905 "to a full domain name, which is placed in the buffer I<exp_dn> of size "
17906 "I<length>.  The compressed name is contained in a query or reply message, "
17907 "and I<msg> points to the beginning of the message."
17908 msgstr ""
17909 "B<dn_expand>()  関数は、圧縮されたドメイン名 I<comp_dn> からサイズ が "
17910 "I<length> の I<exp_dn> バッファーに正式なドメイン名を展開する。 その圧縮され"
17911 "た名前は、問い合わせ、または応答メッセージに含まれていて、 I<msg> がメッセー"
17912 "ジの冒頭を指す。"
17913
17914 #. type: Plain text
17915 #: build/C/man3/resolver.3:183
17916 msgid ""
17917 "The resolver routines use global configuration and state information "
17918 "contained in the structure I<_res>, which is defined in I<E<lt>resolv."
17919 "hE<gt>>.  The only field that is normally manipulated by the user is I<_res."
17920 "options>.  This field can contain the bitwise \"OR\" of the following "
17921 "options:"
17922 msgstr ""
17923 "レゾルバ・ルーチンは、I<E<lt>resolv.hE<gt>> に定義された I<_res> 構造体に 含"
17924 "まれている全体的な設定と状態の情報を使用する。 通常ユーザーに操作できる項目"
17925 "は I<_res.options> だけである。 この項目は以下のオプションのビット単位の論理"
17926 "和にできる。"
17927
17928 #. type: TP
17929 #: build/C/man3/resolver.3:183
17930 #, no-wrap
17931 msgid "B<RES_INIT>"
17932 msgstr "B<RES_INIT>"
17933
17934 #. type: Plain text
17935 #: build/C/man3/resolver.3:188
17936 msgid "True if B<res_init>()  has been called."
17937 msgstr "B<res_init>()  が呼び出されていれば真。"
17938
17939 #. type: TP
17940 #: build/C/man3/resolver.3:188
17941 #, no-wrap
17942 msgid "B<RES_DEBUG>"
17943 msgstr "B<RES_DEBUG>"
17944
17945 #.  See resolv/README.
17946 #.  Support for RES_DEBUG was made conditional in glibc 2.2.
17947 #. type: Plain text
17948 #: build/C/man3/resolver.3:195
17949 msgid ""
17950 "Print debugging messages.  This option is available only if glibc was built "
17951 "with debugging enabled, which is not the default."
17952 msgstr ""
17953 "デバッグ情報を表示する。このオプションは、 glibc がデバッグを有効にしてコンパ"
17954 "イルされている場合にのみ利用できる。 デフォルトでは glibc のデバッグは有効に"
17955 "なっていない。"
17956
17957 #. type: TP
17958 #: build/C/man3/resolver.3:195
17959 #, no-wrap
17960 msgid "B<RES_AAONLY>"
17961 msgstr "B<RES_AAONLY>"
17962
17963 #. type: Plain text
17964 #: build/C/man3/resolver.3:202
17965 msgid ""
17966 "Accept authoritative answers only.  B<res_send>()  continues until it finds "
17967 "an authoritative answer or returns an error.  [Not currently implemented]."
17968 msgstr ""
17969 "権威付けされた (authoritative) 回答のみ受け入れる。 B<res_send>()  は、最終的"
17970 "に権威付けされた回答を得られるか、エラーが返される まで続行する。 [現在実装さ"
17971 "れていない]"
17972
17973 #. type: TP
17974 #: build/C/man3/resolver.3:202
17975 #, no-wrap
17976 msgid "B<RES_USEVC>"
17977 msgstr "B<RES_USEVC>"
17978
17979 #. type: Plain text
17980 #: build/C/man3/resolver.3:205
17981 msgid "Use TCP connections for queries rather than UDP datagrams."
17982 msgstr "問い合わせに UDP データグラムではなく TCP 接続を用いる。"
17983
17984 #. type: TP
17985 #: build/C/man3/resolver.3:205
17986 #, no-wrap
17987 msgid "B<RES_PRIMARY>"
17988 msgstr "B<RES_PRIMARY>"
17989
17990 #. type: Plain text
17991 #: build/C/man3/resolver.3:208
17992 msgid "Query primary domain name server only."
17993 msgstr "プライマリ・ドメインネームサーバーのみ問い合わせる。"
17994
17995 #. type: TP
17996 #: build/C/man3/resolver.3:208
17997 #, no-wrap
17998 msgid "B<RES_IGNTC>"
17999 msgstr "B<RES_IGNTC>"
18000
18001 #. type: Plain text
18002 #: build/C/man3/resolver.3:213
18003 msgid ""
18004 "Ignore truncation errors.  Don't retry with TCP.  [Not currently "
18005 "implemented]."
18006 msgstr ""
18007 "切り詰めエラー (truncation error) を無視する。TCP でリトライしない。 [現在実"
18008 "装されていない]"
18009
18010 #. type: TP
18011 #: build/C/man3/resolver.3:213
18012 #, no-wrap
18013 msgid "B<RES_RECURSE>"
18014 msgstr "B<RES_RECURSE>"
18015
18016 #. type: Plain text
18017 #: build/C/man3/resolver.3:220
18018 msgid ""
18019 "Set the recursion desired bit in queries.  Recursion is carried out by the "
18020 "domain name server, not by B<res_send>().  [Enabled by default]."
18021 msgstr ""
18022 "再帰要求 (recursion desired) ビットを問い合わせに設定する。 再帰は "
18023 "B<res_send>()  ではなくドメインネームサーバーによって行われる。 [デフォルトで"
18024 "有効]"
18025
18026 #. type: TP
18027 #: build/C/man3/resolver.3:220
18028 #, no-wrap
18029 msgid "B<RES_DEFNAMES>"
18030 msgstr "B<RES_DEFNAMES>"
18031
18032 #. type: Plain text
18033 #: build/C/man3/resolver.3:227
18034 msgid ""
18035 "If set, B<res_search>()  will append the default domain name to single "
18036 "component names\\(emthat is, those that do not contain a dot.  [Enabled by "
18037 "default]."
18038 msgstr ""
18039 "設定されていれば、 B<res_search>()  はデフォルトのドメイン名を一部分 のみから"
18040 "なる名前、すなわちドットを含まない名前に付け加える。 [デフォルトで有効]"
18041
18042 #. type: TP
18043 #: build/C/man3/resolver.3:227
18044 #, no-wrap
18045 msgid "B<RES_STAYOPEN>"
18046 msgstr "B<RES_STAYOPEN>"
18047
18048 #. type: Plain text
18049 #: build/C/man3/resolver.3:232
18050 msgid "Used with B<RES_USEVC> to keep the TCP connection open between queries."
18051 msgstr "問い合わせ中に TCP 接続を保つため B<RES_USEVC> と共に用いられる。"
18052
18053 #. type: TP
18054 #: build/C/man3/resolver.3:232
18055 #, no-wrap
18056 msgid "B<RES_DNSRCH>"
18057 msgstr "B<RES_DNSRCH>"
18058
18059 #. type: Plain text
18060 #: build/C/man3/resolver.3:241
18061 msgid ""
18062 "If set, B<res_search>()  will search for hostnames in the current domain and "
18063 "in parent domains.  This option is used by B<gethostbyname>(3).  [Enabled by "
18064 "default]."
18065 msgstr ""
18066 "設定されていれば、 B<res_search>()  は現在のドメインおよび親ドメインの ホスト"
18067 "名を探す。このオプションは B<gethostbyname>(3)  で用いられる。 [デフォルトで"
18068 "有効]"
18069
18070 #. type: Plain text
18071 #: build/C/man3/resolver.3:245
18072 msgid ""
18073 "This list is not complete.  You can find some other flags described in "
18074 "B<resolv.conf>(5)."
18075 msgstr ""
18076 "このリストは完全なものではない。\n"
18077 "B<resolv.conf>(5) には他にいくつかのフラグが記載されている。"
18078
18079 #. type: Plain text
18080 #: build/C/man3/resolver.3:250
18081 msgid ""
18082 "The B<res_init>()  function returns 0 on success, or -1 if an error occurs."
18083 msgstr "B<res_init>()  関数は成功すれば 0 を、エラーが発生すれば -1 を返す。"
18084
18085 #. type: Plain text
18086 #: build/C/man3/resolver.3:260
18087 msgid ""
18088 "The B<res_query>(), B<res_search>(), B<res_querydomain>(), B<res_mkquery>()  "
18089 "and B<res_send>()  functions return the length of the response, or -1 if an "
18090 "error occurs."
18091 msgstr ""
18092 "B<res_query>(), B<res_search>(), B<res_querydomain>(), B<res_mkquery>(), "
18093 "B<res_send>()  関数は応答の長さを返す。 また、エラーが発生すれば -1 を返す。"
18094
18095 #. type: Plain text
18096 #: build/C/man3/resolver.3:267
18097 msgid ""
18098 "The B<dn_comp>()  and B<dn_expand>()  functions return the length of the "
18099 "compressed name, or -1 if an error occurs."
18100 msgstr ""
18101 "B<dn_comp>()  と B<dn_expand>()  関数は圧縮されたドメイン名の長さを返す。 ま"
18102 "た、エラーが発生すれば -1 を返す。"
18103
18104 #. type: Plain text
18105 #: build/C/man3/resolver.3:271
18106 #, no-wrap
18107 msgid ""
18108 "/etc/resolv.conf          resolver configuration file\n"
18109 "/etc/host.conf            resolver configuration file\n"
18110 msgstr ""
18111 "/etc/resolv.conf          レゾルバ設定ファイル\n"
18112 "/etc/host.conf            レゾルバ設定ファイル\n"
18113
18114 #. type: Plain text
18115 #: build/C/man3/resolver.3:274
18116 msgid "4.3BSD."
18117 msgstr "4.3BSD."
18118
18119 #. type: Plain text
18120 #: build/C/man3/resolver.3:280
18121 msgid ""
18122 "B<gethostbyname>(3), B<resolv.conf>(5), B<resolver>(5), B<hostname>(7), "
18123 "B<named>(8)"
18124 msgstr ""
18125 "B<gethostbyname>(3), B<resolv.conf>(5), B<resolver>(5), B<hostname>(7), "
18126 "B<named>(8)"
18127
18128 #. type: TH
18129 #: build/C/man3/rexec.3:41
18130 #, no-wrap
18131 msgid "REXEC"
18132 msgstr "REXEC"
18133
18134 #. type: TH
18135 #: build/C/man3/rexec.3:41
18136 #, no-wrap
18137 msgid "2013-09-26"
18138 msgstr "2013-09-26"
18139
18140 #. type: Plain text
18141 #: build/C/man3/rexec.3:44
18142 msgid "rexec, rexec_af - return stream to a remote command"
18143 msgstr "rexec, rexec_af - リモートコマンドへのストリームを返す"
18144
18145 #. type: Plain text
18146 #: build/C/man3/rexec.3:48
18147 #, no-wrap
18148 msgid ""
18149 "B<#define _BSD_SOURCE>             /* See feature_test_macros(7) */\n"
18150 "B<#include E<lt>netdb.hE<gt>>\n"
18151 msgstr ""
18152 "B<#define _BSD_SOURCE>             /* feature_test_macros(7) 参照 */\n"
18153 "B<#include E<lt>netdb.hE<gt>>\n"
18154
18155 #. type: Plain text
18156 #: build/C/man3/rexec.3:51
18157 #, no-wrap
18158 msgid ""
18159 "B<int rexec(char **>I<ahost>B<, int >I<inport>B<, char *>I<user>B<, >\n"
18160 "B<          char *>I<passwd>B<, char *>I<cmd>B<, int *>I<fd2p>B<);>\n"
18161 msgstr ""
18162 "B<int rexec(char **>I<ahost>B<, int >I<inport>B<, char *>I<user>B<, >\n"
18163 "B<          char *>I<passwd>B<, char *>I<cmd>B<, int *>I<fd2p>B<);>\n"
18164
18165 #. type: Plain text
18166 #: build/C/man3/rexec.3:55
18167 #, no-wrap
18168 msgid ""
18169 "B<int rexec_af(char **>I<ahost>B<, int >I<inport>B<, char *>I<user>B<, >\n"
18170 "B<             char *>I<passwd>B<, char *>I<cmd>B<, int *>I<fd2p>B<,>\n"
18171 "B<             sa_family_t >I<af>B<);>\n"
18172 msgstr ""
18173 "B<int rexec_af(char **>I<ahost>B<, int >I<inport>B<, char *>I<user>B<, >\n"
18174 "B<             char *>I<passwd>B<, char *>I<cmd>B<, int *>I<fd2p>B<,>\n"
18175 "B<             sa_family_t >I<af>B<);>\n"
18176
18177 #. type: Plain text
18178 #: build/C/man3/rexec.3:59
18179 msgid "This interface is obsoleted by B<rcmd>(3)."
18180 msgstr "このインタフェースは B<rcmd>(3)  によって置き換えられた。"
18181
18182 #. type: Plain text
18183 #: build/C/man3/rexec.3:78
18184 msgid ""
18185 "The B<rexec>()  function looks up the host I<*ahost> using B<gethostbyname>"
18186 "(3), returning -1 if the host does not exist.  Otherwise I<*ahost> is set to "
18187 "the standard name of the host.  If a username and password are both "
18188 "specified, then these are used to authenticate to the foreign host; "
18189 "otherwise the environment and then the I<.netrc> file in user's home "
18190 "directory are searched for appropriate information.  If all this fails, the "
18191 "user is prompted for the information."
18192 msgstr ""
18193 "B<rexec>()  関数は B<gethostbyname>(3)  を使ってホスト I<*ahost> を探す。ホス"
18194 "トが存在しない場合は -1 を返し、それ以外の場合には I<*ahost> にそのホストの標"
18195 "準的な名前を設定する。 ユーザ名とパスワードの両方が指定された場合には、これら"
18196 "は 接続先のホストへの認証に利用される。そうでない場合には、 適切な情報を入手"
18197 "するために、環境変数と、そのユーザの ホームディレクトリの I<.netrc> ファイル"
18198 "が検索される。情報が見つからなかった時には、 ユーザに対して情報を入力するプロ"
18199 "ンプトが表示される。"
18200
18201 #. type: Plain text
18202 #: build/C/man3/rexec.3:89
18203 msgid ""
18204 "The port I<inport> specifies which well-known DARPA Internet port to use for "
18205 "the connection; the call I<getservbyname(\"exec\", \"tcp\")> (see "
18206 "B<getservent>(3))  will return a pointer to a structure that contains the "
18207 "necessary port.  The protocol for connection is described in detail in "
18208 "B<rexecd>(8)."
18209 msgstr ""
18210 "ポート I<inport> には、接続に使用する DARPA Internet の well-known ポートを指"
18211 "定する。 I<getservbyname(\"exec\", \"tcp\")> を呼び出すと構造体へのポインタが"
18212 "返され (B<getservent>(3)  参照)、この構造体には必要なポートが入っている。 接"
18213 "続に使用されるプロトコルについての詳細は B<rexecd>(8)  に書かれている (訳注: "
18214 "現在のところ存在しない)。"
18215
18216 #. type: Plain text
18217 #: build/C/man3/rexec.3:122
18218 msgid ""
18219 "If the connection succeeds, a socket in the Internet domain of type "
18220 "B<SOCK_STREAM> is returned to the caller, and given to the remote command as "
18221 "I<stdin> and I<stdout>.  If I<fd2p> is nonzero, then an auxiliary channel to "
18222 "a control process will be setup, and a descriptor for it will be placed in "
18223 "I<*fd2p>.  The control process will return diagnostic output from the "
18224 "command (unit 2) on this channel, and will also accept bytes on this channel "
18225 "as being UNIX signal numbers, to be forwarded to the process group of the "
18226 "command.  The diagnostic information returned does not include remote "
18227 "authorization failure, as the secondary connection is set up after "
18228 "authorization has been verified.  If I<fd2p> is 0, then the I<stderr> (unit "
18229 "2 of the remote command) will be made the same as the I<stdout> and no "
18230 "provision is made for sending arbitrary signals to the remote process, "
18231 "although you may be able to get its attention by using out-of-band data."
18232 msgstr ""
18233 "接続に成功すると、インターネットドメインの B<SOCK_STREAM> 型のソケットが返さ"
18234 "れ、そのソケットはリモートコマンドの 標準入力および標準出力となる。 I<fd2p> "
18235 "が 0 以外の場合、制御プロセスへの補助チャンネルがセットアップされ、 補助チャ"
18236 "ンネルのディスクリプタが I<*fd2p> に書かれる。 制御プロセスはコマンドからの診"
18237 "断メッセージ出力 (ファイルディスクリプタ 2)  をこのチャンネルで返す。また、こ"
18238 "のチャンネル経由で UNIX のシグナル番号を示すバイトを受信する。受信したシグナ"
18239 "ルは コマンドが属すプロセスグループに転送される。 診断情報にはリモートの認証"
18240 "失敗は含まれない。なぜなら、認証の確認が行われた 後で補助チャンネルの接続は"
18241 "セットアップされるからである。 I<fd2p> が 0 の場合、標準エラー (リモートコマ"
18242 "ンドのファイルディスクリプタ 2) は 標準出力と同様に扱われ、リモートプロセスに"
18243 "任意のシグナルを送るための 手段は提供されない。但し、リモートプロセスに対して"
18244 "トリガをかけるために、 帯域外データ (out-of-band data) を使うことはできる。"
18245
18246 #. type: SS
18247 #: build/C/man3/rexec.3:122
18248 #, no-wrap
18249 msgid "rexec_af()"
18250 msgstr "rexec_af()"
18251
18252 #. type: Plain text
18253 #: build/C/man3/rexec.3:138
18254 msgid ""
18255 "The B<rexec>()  function works over IPv4 (B<AF_INET>).  By contrast, the "
18256 "B<rexec_af>()  function provides an extra argument, I<af>, that allows the "
18257 "caller to select the protocol.  This argument can be specified as "
18258 "B<AF_INET>, B<AF_INET6>, or B<AF_UNSPEC> (to allow the implementation to "
18259 "select the protocol)."
18260 msgstr ""
18261 "B<rexec>() 関数は IPv4 (B<AF_INET>) 上で動作する。\n"
18262 "これに対して、 B<rexec_af>() 関数は追加の引き数 I<af> があり、\n"
18263 "この引き数で呼び出し側がプロトコルを選択できる。\n"
18264 "この引き数には B<AF_INET>, B<AF_INET6>, B<AF_UNSPEC> を指定できる\n"
18265 "(B<AF_UNSPEC> は実装側がプロトコルを選択することを意味する)。"
18266
18267 #. type: Plain text
18268 #: build/C/man3/rexec.3:142
18269 msgid "The B<rexec_af>()  function was added to glibc in version 2.2."
18270 msgstr "B<rexec_af>() 関数は glibc バージョン 2.9 で追加された。"
18271
18272 #. type: Plain text
18273 #: build/C/man3/rexec.3:149
18274 msgid "The B<rexec>()  and B<rexec_af>()  functions are not thread-safe."
18275 msgstr "関数 B<rexec>() と B<rexec_af>() はスレッドセーフではない。"
18276
18277 #. type: Plain text
18278 #: build/C/man3/rexec.3:158
18279 msgid ""
18280 "These functions are not in POSIX.1-2001.  The B<rexec>()  function first "
18281 "appeared in 4.2BSD, and is present on the BSDs, Solaris, and many other "
18282 "systems.  The B<rexec_af>()  function is more recent, and less widespread."
18283 msgstr ""
18284 "これらの関数は POSIX.1-2001 にはない。B<rexec>() 関数は 4.2BSD で始めて\n"
18285 "登場し、BSD 系、Solaris や他の多くのシステムに存在する。B<rexec_af>()\n"
18286 "関数はもっと新しく、それほど広く使われているわけではない。"
18287
18288 #. type: Plain text
18289 #: build/C/man3/rexec.3:162
18290 msgid ""
18291 "The B<rexec>()  function sends the unencrypted password across the network."
18292 msgstr ""
18293 "B<rexec>()  関数はネットワークに暗号化されていないパスワードを送信する。"
18294
18295 #. type: Plain text
18296 #: build/C/man3/rexec.3:167
18297 msgid ""
18298 "The underlying service is considered a big security hole and therefore not "
18299 "enabled on many sites; see B<rexecd>(8)  for explanations."
18300 msgstr ""
18301 "基礎的なサービスにおいては大きなセキュリティホールと考えられるため、 \n"
18302 "多くのサイトで無効になっている。詳細は B<rexecd>(8) を参照。"
18303
18304 #. type: Plain text
18305 #: build/C/man3/rexec.3:170
18306 msgid "B<rcmd>(3), B<rexecd>(8)"
18307 msgstr "B<rcmd>(3), B<rexecd>(8)"
18308
18309 #. type: TH
18310 #: build/C/man5/services.5:34
18311 #, no-wrap
18312 msgid "SERVICES"
18313 msgstr "SERVICES"
18314
18315 #. type: TH
18316 #: build/C/man5/services.5:34
18317 #, no-wrap
18318 msgid "2010-05-22"
18319 msgstr "2010-05-22"
18320
18321 #. type: Plain text
18322 #: build/C/man5/services.5:37
18323 msgid "services - Internet network services list"
18324 msgstr "services - インターネット ネットワークサービス リスト"
18325
18326 #. type: Plain text
18327 #: build/C/man5/services.5:52
18328 msgid ""
18329 "B<services> is a plain ASCII file providing a mapping between human-friendly "
18330 "textual names for internet services, and their underlying assigned port "
18331 "numbers and protocol types.  Every networking program should look into this "
18332 "file to get the port number (and protocol) for its service.  The C library "
18333 "routines B<getservent>(3), B<getservbyname>(3), B<getservbyport>(3), "
18334 "B<setservent>(3), and B<endservent>(3)  support querying this file from "
18335 "programs."
18336 msgstr ""
18337 "B<services> は、人が分かりやすい形のインターネットサービスの名前と、 それらの"
18338 "サービスに割り当てられたポート番号や プロトコル種別の対応関係が書かれているテ"
18339 "キストファイルである。 ネットワーク上で動作するプログラムはすべて、 そのサー"
18340 "ビスに対応するポート番号 (とプロトコル) を得るために、 このファイルを調べる必"
18341 "要がある。 C ライブラリ関数である B<getservent>(3), B<getservbyname>(3), "
18342 "B<getservbyport>(3), B<setservent>(3), B<endservent>(3)  を利用することで、プ"
18343 "ログラムはこのファイルを調べることができる。"
18344
18345 #. type: Plain text
18346 #: build/C/man5/services.5:58
18347 msgid ""
18348 "Port numbers are assigned by the IANA (Internet Assigned Numbers Authority), "
18349 "and their current policy is to assign both TCP and UDP protocols when "
18350 "assigning a port number.  Therefore, most entries will have two entries, "
18351 "even for TCP-only services."
18352 msgstr ""
18353 "ポート番号は、IANA (Internet Assigned Numbers Authority) によって 割り当てら"
18354 "れており、現在はポート番号を割り当てる際に TCP と UDP の両方のプロトコルを割"
18355 "り当てることになっている。 そのため、ほとんどのサービスに対して、 たとえ TCP "
18356 "だけのサービスの場合であっても、対応する項目が二つあることになる。"
18357
18358 #. type: Plain text
18359 #: build/C/man5/services.5:70
18360 msgid ""
18361 "Port numbers below 1024 (so-called \"low numbered\" ports) can be bound to "
18362 "only by root (see B<bind>(2), B<tcp>(7), and B<udp>(7)).  This is so clients "
18363 "connecting to low numbered ports can trust that the service running on the "
18364 "port is the standard implementation, and not a rogue service run by a user "
18365 "of the machine.  Well-known port numbers specified by the IANA are normally "
18366 "located in this root-only space."
18367 msgstr ""
18368 "1024 より小さいポート番号 (いわゆる \"low numbered\" ポート) は 管理者 "
18369 "(root) 権限によってのみ使用することができる (B<bind>(2), B<tcp>(7), B<udp>"
18370 "(7)  参照)。 これは、これらのポートに接続するクライアントに対して、 そのポー"
18371 "トで動いているサービスが標準的な実装であり、 その計算機のユーザーが動かしてい"
18372 "る 不正なサービスではないことを保証するためである。 IANA に明記されているよく"
18373 "使用されるポート番号は、 通常このような管理者だけが使用できる範囲に配置され"
18374 "る。"
18375
18376 #. type: Plain text
18377 #: build/C/man5/services.5:85
18378 msgid ""
18379 "The presence of an entry for a service in the B<services> file does not "
18380 "necessarily mean that the service is currently running on the machine.  See "
18381 "B<inetd.conf>(5)  for the configuration of Internet services offered.  Note "
18382 "that not all networking services are started by B<inetd>(8), and so won't "
18383 "appear in B<inetd.conf>(5).  In particular, news (NNTP) and mail (SMTP) "
18384 "servers are often initialized from the system boot scripts."
18385 msgstr ""
18386 "B<services> ファイルにあるサービスに対する項目があっても、必ずしもそのサービ"
18387 "スが現 在その計算機で動いている訳ではない。利用可能なインターネットサービスの"
18388 "設定に ついては B<inetd.conf>(5)  に記述されている。ただし、すべてのサービス"
18389 "が B<inetd>(8)  によって起動されるわけではないので、 B<inetd.conf>(5)  には書"
18390 "かれていないサービスもあることに注意する必要がある。 特に、ネットニュース "
18391 "(NNTP) や メール (SMTP) のサーバーは、システム起動時の スクリプトから起動され"
18392 "ることが多い。"
18393
18394 #. type: Plain text
18395 #: build/C/man5/services.5:94
18396 msgid ""
18397 "The location of the B<services> file is defined by B<_PATH_SERVICES> in "
18398 "I<E<lt>netdb.hE<gt>>.  This is usually set to I</etc/services>."
18399 msgstr ""
18400 "B<services> ファイルの場所は、 I<E<lt>netdb.hE<gt>> 中の B<_PATH_SERVICES> に"
18401 "よって定義されている。 この値は通常 I</etc/services> に設定されている。"
18402
18403 #. type: Plain text
18404 #: build/C/man5/services.5:96
18405 msgid "Each line describes one service, and is of the form:"
18406 msgstr "1 行につき 1 サービスが記述されており、以下の形式である。"
18407
18408 #. type: Plain text
18409 #: build/C/man5/services.5:98
18410 msgid "I<service-name\\ \\ \\ port>B</>I<protocol\\ \\ \\ >[I<aliases ...>]"
18411 msgstr "I<service-name\\ \\ \\ port>B</>I<protocol\\ \\ \\ >[I<aliases ...>]"
18412
18413 #. type: TP
18414 #: build/C/man5/services.5:98
18415 #, no-wrap
18416 msgid "where:"
18417 msgstr "各項目は以下の通り。"
18418
18419 #. type: TP
18420 #: build/C/man5/services.5:100
18421 #, no-wrap
18422 msgid "I<service-name>"
18423 msgstr "I<service-name>"
18424
18425 #. type: Plain text
18426 #: build/C/man5/services.5:106
18427 msgid ""
18428 "is the friendly name the service is known by and looked up under.  It is "
18429 "case sensitive.  Often, the client program is named after the I<service-"
18430 "name>."
18431 msgstr ""
18432 "サービスを表す分かりやすい名前であり、検索の際にも使用される。 大文字と小文字"
18433 "は区別される。 クライアントプログラムは I<service-name> にちなんで名付けられ"
18434 "ることが多い。"
18435
18436 #. type: TP
18437 #: build/C/man5/services.5:106
18438 #, no-wrap
18439 msgid "I<port>"
18440 msgstr "I<port>"
18441
18442 #. type: Plain text
18443 #: build/C/man5/services.5:109
18444 msgid "is the port number (in decimal) to use for this service."
18445 msgstr "サービスに対して使用されるポート番号。10 進数で指定する。"
18446
18447 #. type: Plain text
18448 #: build/C/man5/services.5:120
18449 msgid ""
18450 "is the type of protocol to be used.  This field should match an entry in the "
18451 "B<protocols>(5)  file.  Typical values include B<tcp> and B<udp>."
18452 msgstr ""
18453 "使用されるプロトコルの種類。この欄は、 B<protocols>(5)  ファイルの中の項目と"
18454 "一致している必要がある。 通常使用される値は、 B<tcp> と B<udp> である。"
18455
18456 #. type: Plain text
18457 #: build/C/man5/services.5:126
18458 msgid ""
18459 "is an optional space or tab separated list of other names for this service.  "
18460 "Again, the names are case sensitive."
18461 msgstr ""
18462 "サービスに対する別名のリスト (区切はスペースまたはタブ) で、この欄は 必要にな"
18463 "らば書くことができる。 また、別名は大文字と小文字は区別される。"
18464
18465 #. type: Plain text
18466 #: build/C/man5/services.5:128
18467 msgid "Either spaces or tabs may be used to separate the fields."
18468 msgstr "それぞれの欄の区切りには、スペースまたはタブが使用される。"
18469
18470 #. type: Plain text
18471 #: build/C/man5/services.5:132
18472 msgid ""
18473 "Comments are started by the hash sign (#) and continue until the end of the "
18474 "line.  Blank lines are skipped."
18475 msgstr ""
18476 "コメントはシャープ (#) で始まり、その行の終わりまでがコメントとみなされる。 "
18477 "空行は飛ばされる。"
18478
18479 #. type: Plain text
18480 #: build/C/man5/services.5:143
18481 msgid ""
18482 "The I<service-name> should begin in the first column of the file, since "
18483 "leading spaces are not stripped.  I<service-names> can be any printable "
18484 "characters excluding space and tab.  However, a conservative choice of "
18485 "characters should be used to minimize compatibility problems.  E.g., a-z, "
18486 "0-9, and hyphen (-) would seem a sensible choice."
18487 msgstr ""
18488 "行の始めのスペースは無視されないので、 I<service-name> は、行頭から書かなけれ"
18489 "ばならない。 I<service-names> は、スペースとタブ以外の印字可能な文字なら何で"
18490 "もよいが、しかしながら 互換性の問題を少なくするような文字を選択すべきであ"
18491 "る。 例えば、a-z 、0-9 、ハイフォン (-) を使用するのが無難と思われる。"
18492
18493 #. type: Plain text
18494 #: build/C/man5/services.5:152
18495 msgid ""
18496 "Lines not matching this format should not be present in the file.  "
18497 "(Currently, they are silently skipped by B<getservent>(3), B<getservbyname>"
18498 "(3), and B<getservbyport>(3).  However, this behavior should not be relied "
18499 "on.)"
18500 msgstr ""
18501 "指定された形式に合わない行はあってはならない (現在は、そのような行は "
18502 "B<getservent>(3), B<getservbyname>(3), B<getservbyport>(3)  によって無視され"
18503 "る。しかし、その場合の挙動は信頼できない)。"
18504
18505 #. type: Plain text
18506 #: build/C/man5/services.5:169
18507 msgid "A sample B<services> file might look like this:"
18508 msgstr "B<services> ファイルの見本を以下に示す。"
18509
18510 #. type: Plain text
18511 #: build/C/man5/services.5:182
18512 #, no-wrap
18513 msgid ""
18514 "CW<netstat         15/tcp\n"
18515 "qotd            17/tcp          quote\n"
18516 "msp             18/tcp          # message send protocol\n"
18517 "msp             18/udp          # message send protocol\n"
18518 "chargen         19/tcp          ttytst source\n"
18519 "chargen         19/udp          ttytst source\n"
18520 "ftp             21/tcp\n"
18521 "# 22 - unassigned\n"
18522 "telnet          23/tcp>\n"
18523 msgstr ""
18524 "CW<netstat         15/tcp\n"
18525 "qotd            17/tcp          quote\n"
18526 "msp             18/tcp          # message send protocol\n"
18527 "msp             18/udp          # message send protocol\n"
18528 "chargen         19/tcp          ttytst source\n"
18529 "chargen         19/udp          ttytst source\n"
18530 "ftp             21/tcp\n"
18531 "# 22 - unassigned\n"
18532 "telnet          23/tcp>\n"
18533
18534 #. type: Plain text
18535 #: build/C/man5/services.5:189
18536 msgid "The Internet network services list"
18537 msgstr "インターネット ネットワークサービスのリスト"
18538
18539 #. type: TP
18540 #: build/C/man5/services.5:189
18541 #, no-wrap
18542 msgid "I<E<lt>netdb.hE<gt>>"
18543 msgstr "I<E<lt>netdb.hE<gt>>"
18544
18545 #.  .SH BUGS
18546 #.  It's not clear when/if the following was ever true;
18547 #.  it isn't true for glibc 2.8:
18548 #.     There is a maximum of 35 aliases, due to the way the
18549 #.     .BR getservent (3)
18550 #.     code is written.
18551 #.  It's not clear when/if the following was ever true;
18552 #.  it isn't true for glibc 2.8:
18553 #.     Lines longer than
18554 #.     .B BUFSIZ
18555 #.     (currently 1024) characters will be ignored by
18556 #.     .BR getservent (3),
18557 #.     .BR getservbyname (3),
18558 #.     and
18559 #.     .BR getservbyport (3).
18560 #.     However, this will also cause the next line to be mis-parsed.
18561 #. type: Plain text
18562 #: build/C/man5/services.5:210
18563 msgid "Definition of B<_PATH_SERVICES>"
18564 msgstr "B<_PATH_SERVICES> の定義"
18565
18566 #. type: Plain text
18567 #: build/C/man5/services.5:220
18568 msgid ""
18569 "B<listen>(2), B<endservent>(3), B<getservbyname>(3), B<getservbyport>(3), "
18570 "B<getservent>(3), B<setservent>(3), B<inetd.conf>(5), B<protocols>(5), "
18571 "B<inetd>(8)"
18572 msgstr ""
18573 "B<listen>(2), B<endservent>(3), B<getservbyname>(3), B<getservbyport>(3), "
18574 "B<getservent>(3), B<setservent>(3), B<inetd.conf>(5), B<protocols>(5), "
18575 "B<inetd>(8)"
18576
18577 #. type: Plain text
18578 #: build/C/man5/services.5:222
18579 msgid "Assigned Numbers RFC, most recently RFC\\ 1700, (AKA STD0002)."
18580 msgstr ""
18581 "ポート番号の割り当てを定めている RFC (最新版は RFC\\ 1700、別名 STD0002)"
18582
18583 #. type: TH
18584 #: build/C/man3/setnetgrent.3:10
18585 #, no-wrap
18586 msgid "SETNETGRENT"
18587 msgstr "SETNETGRENT"
18588
18589 #. type: TH
18590 #: build/C/man3/setnetgrent.3:10
18591 #, no-wrap
18592 msgid "2007-07-26"
18593 msgstr "2007-07-26"
18594
18595 #. type: Plain text
18596 #: build/C/man3/setnetgrent.3:14
18597 msgid ""
18598 "setnetgrent, endnetgrent, getnetgrent, getnetgrent_r, innetgr - handle "
18599 "network group entries"
18600 msgstr ""
18601 "setnetgrent, endnetgrent, getnetgrent, getnetgrent_r, innetgr - ネットワー"
18602 "ク・グループのエントリを操作する"
18603
18604 #. type: Plain text
18605 #: build/C/man3/setnetgrent.3:19
18606 #, no-wrap
18607 msgid "B<int setnetgrent(const char *>I<netgroup>B<);>\n"
18608 msgstr "B<int setnetgrent(const char *>I<netgroup>B<);>\n"
18609
18610 #. type: Plain text
18611 #: build/C/man3/setnetgrent.3:21
18612 #, no-wrap
18613 msgid "B<void endnetgrent(void);>\n"
18614 msgstr "B<void endnetgrent(void);>\n"
18615
18616 #. type: Plain text
18617 #: build/C/man3/setnetgrent.3:23
18618 #, no-wrap
18619 msgid "B<int getnetgrent(char **>I<host>B<, char **>I<user>B<, char **>I<domain>B<);>\n"
18620 msgstr "B<int getnetgrent(char **>I<host>B<, char **>I<user>B<, char **>I<domain>B<);>\n"
18621
18622 #. type: Plain text
18623 #: build/C/man3/setnetgrent.3:26
18624 #, no-wrap
18625 msgid ""
18626 "B<int getnetgrent_r(char **>I<host>B<, char **>I<user>B<,>\n"
18627 "B<                  char **>I<domain>B<, char *>I<buf>B<, int >I<buflen>B<);>\n"
18628 msgstr ""
18629 "B<int getnetgrent_r(char **>I<host>B<, char **>I<user>B<,>\n"
18630 "B<                  char **>I<domain>B<, char *>I<buf>B<, int >I<buflen>B<);>\n"
18631
18632 #. type: Plain text
18633 #: build/C/man3/setnetgrent.3:29
18634 #, no-wrap
18635 msgid ""
18636 "B<int innetgr(const char *>I<netgroup>B<, const char *>I<host>B<,>\n"
18637 "B<            const char *>I<user>B<, const char *>I<domain>B<);>\n"
18638 msgstr ""
18639 "B<int innetgr(const char *>I<netgroup>B<, const char *>I<host>B<,>\n"
18640 "B<            const char *>I<user>B<, const char *>I<domain>B<);>\n"
18641
18642 #. type: Plain text
18643 #: build/C/man3/setnetgrent.3:43
18644 msgid ""
18645 "B<setnetgrent>(), B<endnetgrent>(), B<getnetgrent>(), B<getnetgrent_r>(), "
18646 "B<innetgr>(): _BSD_SOURCE || _SVID_SOURCE"
18647 msgstr ""
18648 "B<setnetgrent>(), B<endnetgrent>(), B<getnetgrent>(), B<getnetgrent_r>(), "
18649 "B<innetgr>(): _BSD_SOURCE || _SVID_SOURCE"
18650
18651 #. type: Plain text
18652 #: build/C/man3/setnetgrent.3:57
18653 msgid ""
18654 "The I<netgroup> is a SunOS invention.  A netgroup database is a list of "
18655 "string triples (I<hostname>, I<username>, I<domainname>)  or other netgroup "
18656 "names.  Any of the elements in a triple can be empty, which means that "
18657 "anything matches.  The functions described here allow access to the netgroup "
18658 "databases.  The file I</etc/nsswitch.conf> defines what database is searched."
18659 msgstr ""
18660 "I<netgroup> は SunOS で考案されたものである。ネットグループのデータベースの "
18661 "エントリは、 3 つの文字列のリスト (I<hostname>, I<username>, I<domainname>)  "
18662 "もしくはネットグループ名である。 前記のリストの各要素は空であってもよい。 空"
18663 "は何とでも一致することを意味する。 本ページで説明する関数を使うことで、ネット"
18664 "グループのデータベースに アクセスすることができる。どのデータベースが検索され"
18665 "るかは I</etc/nsswitch.conf> ファイルで定義されている。"
18666
18667 #. type: Plain text
18668 #: build/C/man3/setnetgrent.3:77
18669 msgid ""
18670 "The B<setnetgrent>()  call defines the netgroup that will be searched by "
18671 "subsequent B<getnetgrent>()  calls.  The B<getnetgrent>()  function "
18672 "retrieves the next netgroup entry, and returns pointers in I<host>, I<user>, "
18673 "I<domain>.  A null pointer means that the corresponding entry matches any "
18674 "string.  The pointers are valid only as long as there is no call to other "
18675 "netgroup-related functions.  To avoid this problem you can use the GNU "
18676 "function B<getnetgrent_r>()  that stores the strings in the supplied "
18677 "buffer.  To free all allocated buffers use B<endnetgrent>()."
18678 msgstr ""
18679 "B<setnetgrent>()  コールは、この後で呼ばれる B<getnetgrent>()  コールが検索す"
18680 "るネットグループを定める。 B<getnetgrent>()  関数はネットグループの次のエント"
18681 "リを取得し、 I<host>, I<user>, I<domain> にポインタを入れて返る。 NULL ポイン"
18682 "タは、対応するエントリがどんな文字列とも一致することを意味する。 得られたポイ"
18683 "ンタは、ネットグループ関係の関数のいずれかが呼ばれるまでの 間だけ有効である。"
18684 "この問題を避けるためには GNU 拡張の関数 B<getnetgrent_r>()  を使うとよい。こ"
18685 "の関数は呼び出し側が用意したバッファに 文字列を格納する。割り当て済のバッファ"
18686 "を全て解放するには B<endnetgrent>()  を使用する。"
18687
18688 #. type: Plain text
18689 #: build/C/man3/setnetgrent.3:86
18690 msgid ""
18691 "In most cases you want to check only if the triplet (I<hostname>, "
18692 "I<username>, I<domainname>)  is a member of a netgroup.  The function "
18693 "B<innetgr>()  can be used for this without calling the above three "
18694 "functions.  Again, a null pointer is a wildcard and matches any string.  The "
18695 "function is thread-safe."
18696 msgstr ""
18697 "ほとんどの場合、 (I<hostname>, I<username>, I<domainname>)  の3要素の組がネッ"
18698 "トグループのメンバーかどうかを確認したいだけであろう。 B<innetgr>()  関数を使"
18699 "うと、上記の3つの関数を呼び出さずにこの目的を達成できる。 もう一度書いておく"
18700 "が、NULL ポインタはワイルドカードであり、 あらゆる文字列と一致する。この関数"
18701 "はスレッドセーフである。"
18702
18703 #. type: Plain text
18704 #: build/C/man3/setnetgrent.3:88
18705 msgid "These functions return 1 on success and 0 for failure."
18706 msgstr "これらの関数は成功すると 1 を、失敗すると 0 を返す。"
18707
18708 #. type: Plain text
18709 #: build/C/man3/setnetgrent.3:90
18710 msgid "I</etc/netgroup>"
18711 msgstr "I</etc/netgroup>"
18712
18713 #.  getnetgrent_r() is on Solaris 8 and AIX 5.1, but not the BSDs.
18714 #. type: Plain text
18715 #: build/C/man3/setnetgrent.3:103
18716 msgid ""
18717 "These functions are not in POSIX.1-2001, but B<setnetgrent>(), B<endnetgrent>"
18718 "(), B<getnetgrent>(), and B<innetgr>()  are available on most UNIX systems.  "
18719 "B<getnetgrent_r>()  is not widely available on other systems."
18720 msgstr ""
18721 "これらの関数は POSIX.1-2001 にはないが、 setnetgrent (), endnetgrent (), "
18722 "getnetgrent (), innetgr ()  はほとんどの UNIX システムで利用可能である。 "
18723 "B<getnetgrent_r>()  は広く他のシステムで利用できるわけではない。"
18724
18725 #. type: Plain text
18726 #: build/C/man3/setnetgrent.3:107
18727 msgid "In the BSD implementation, B<setnetgrent>()  returns void."
18728 msgstr "BSD の実装では B<setnetgrent>()  は void を返す。"
18729
18730 #. type: Plain text
18731 #: build/C/man3/setnetgrent.3:111
18732 msgid "B<sethostent>(3), B<setprotoent>(3), B<setservent>(3)"
18733 msgstr "B<sethostent>(3), B<setprotoent>(3), B<setservent>(3)"
18734
18735 #. type: TH
18736 #: build/C/man2/shutdown.2:40
18737 #, no-wrap
18738 msgid "SHUTDOWN"
18739 msgstr "SHUTDOWN"
18740
18741 #. type: TH
18742 #: build/C/man2/shutdown.2:40
18743 #, no-wrap
18744 msgid "2012-09-06"
18745 msgstr "2012-09-06"
18746
18747 #. type: Plain text
18748 #: build/C/man2/shutdown.2:43
18749 msgid "shutdown - shut down part of a full-duplex connection"
18750 msgstr "shutdown - 全二重接続の一部を閉じる"
18751
18752 #. type: Plain text
18753 #: build/C/man2/shutdown.2:47
18754 msgid "B<int shutdown(int >I<sockfd>B<, int >I<how>B<);>"
18755 msgstr "B<int shutdown(int >I<sockfd>B<, int >I<how>B<);>"
18756
18757 #. type: Plain text
18758 #: build/C/man2/shutdown.2:69
18759 msgid ""
18760 "The B<shutdown>()  call causes all or part of a full-duplex connection on "
18761 "the socket associated with I<sockfd> to be shut down.  If I<how> is "
18762 "B<SHUT_RD>, further receptions will be disallowed.  If I<how> is B<SHUT_WR>, "
18763 "further transmissions will be disallowed.  If I<how> is B<SHUT_RDWR>, "
18764 "further receptions and transmissions will be disallowed."
18765 msgstr ""
18766 "B<shutdown>()  は、 I<sockfd> に関連づけられているソケットによる全二重接続 "
18767 "(full-duplex connection)  の一部または全てを閉じる。 I<how> が B<SHUT_RD> な"
18768 "らば、それ以降の受信を禁止する。 I<how> が B<SHUT_WR> ならば、それ以降の送信"
18769 "を禁止する。 I<how> が B<SHUT_RDWR> ならば、それ以降の送受信を禁止する。"
18770
18771 #. type: Plain text
18772 #: build/C/man2/shutdown.2:79
18773 msgid "I<sockfd> is not a valid descriptor."
18774 msgstr "I<sockfd> が有効なディスクリプターでない。"
18775
18776 #. type: Plain text
18777 #: build/C/man2/shutdown.2:84
18778 msgid "An invalid value was specified in I<how> (but see BUGS)."
18779 msgstr "I<how> に無効な値が指定された (バグが参照)。"
18780
18781 #. type: Plain text
18782 #: build/C/man2/shutdown.2:87
18783 msgid "The specified socket is not connected."
18784 msgstr "指定されたソケットは接続されていない。"
18785
18786 #. type: Plain text
18787 #: build/C/man2/shutdown.2:91
18788 msgid "I<sockfd> is a file, not a socket."
18789 msgstr "I<sockfd> がソケットでなくファイルである。"
18790
18791 #. type: Plain text
18792 #: build/C/man2/shutdown.2:95
18793 msgid ""
18794 "POSIX.1-2001, 4.4BSD (the B<shutdown>()  function call first appeared in "
18795 "4.2BSD)."
18796 msgstr ""
18797 "POSIX.1-2001, 4.4BSD (B<shutdown>()  関数コールは 4.2BSD で初めて登場した)。"
18798
18799 #. type: Plain text
18800 #: build/C/man2/shutdown.2:104
18801 msgid ""
18802 "The constants B<SHUT_RD>, B<SHUT_WR>, B<SHUT_RDWR> have the value 0, 1, 2, "
18803 "respectively, and are defined in I<E<lt>sys/socket.hE<gt>> since "
18804 "glibc-2.1.91."
18805 msgstr ""
18806 "B<SHUT_RD>, B<SHUT_WR>, B<SHUT_RDWR> の各定数 (それぞれ 0, 1, 2 の値を持つ) "
18807 "は glibc-2.1.91 以降、 I<E<lt>sys/socket.hE<gt>> で定義されている。"
18808
18809 #.  FIXME
18810 #.  https://bugzilla.kernel.org/show_bug.cgi?id=47111
18811 #. type: Plain text
18812 #: build/C/man2/shutdown.2:113
18813 msgid ""
18814 "As currently implemented, checks for the validity of I<how> are done in "
18815 "domain-specific code, and not all domains perform these checks.  Most "
18816 "notably, UNIX domain sockets simply ignore invalid values; this may change "
18817 "in the future."
18818 msgstr ""
18819 "現在の実装では I<how> の妥当性チェックはドメイン固有のコードの中で行われてい"
18820 "るが、 すべてのドメインでこれらのチェックが行われている訳ではない。 中でも注"
18821 "意すべきは、 UNIX ドメインソケットでは無効な値は単に無視される点である。 これ"
18822 "は将来変更されるかもしれない。"
18823
18824 #. type: Plain text
18825 #: build/C/man2/shutdown.2:117
18826 msgid "B<connect>(2), B<socket>(2), B<socket>(7)"
18827 msgstr "B<connect>(2), B<socket>(2), B<socket>(7)"
18828
18829 #. type: TH
18830 #: build/C/man7/tcp.7:76
18831 #, no-wrap
18832 msgid "TCP"
18833 msgstr "TCP"
18834
18835 #. type: TH
18836 #: build/C/man7/tcp.7:76
18837 #, no-wrap
18838 msgid "2014-01-23"
18839 msgstr "2014-01-23"
18840
18841 #. type: Plain text
18842 #: build/C/man7/tcp.7:79
18843 msgid "tcp - TCP protocol"
18844 msgstr "tcp - TCP プロトコル"
18845
18846 #. type: Plain text
18847 #: build/C/man7/tcp.7:85
18848 msgid "B<#include E<lt>netinet/tcp.hE<gt>>"
18849 msgstr "B<#include E<lt>netinet/tcp.hE<gt>>"
18850
18851 #. type: Plain text
18852 #: build/C/man7/tcp.7:87
18853 msgid "B<tcp_socket = socket(AF_INET, SOCK_STREAM, 0);>"
18854 msgstr "B<tcp_socket = socket(AF_INET, SOCK_STREAM, 0);>"
18855
18856 #. type: Plain text
18857 #: build/C/man7/tcp.7:100
18858 msgid ""
18859 "This is an implementation of the TCP protocol defined in RFC\\ 793, RFC\\ "
18860 "1122 and RFC\\ 2001 with the NewReno and SACK extensions.  It provides a "
18861 "reliable, stream-oriented, full-duplex connection between two sockets on top "
18862 "of B<ip>(7), for both v4 and v6 versions.  TCP guarantees that the data "
18863 "arrives in order and retransmits lost packets.  It generates and checks a "
18864 "per-packet checksum to catch transmission errors.  TCP does not preserve "
18865 "record boundaries."
18866 msgstr ""
18867 "これは RFC\\ 793, RFC\\ 1122, RFC\\ 2001 で定義されている TCP プロトコルを "
18868 "NewReno 拡張と SACK 拡張を含めて実装したものである。 TCP は、 B<ip>(7)  上の"
18869 "二つのソケット間に、信頼性の高い、ストリーム指向の全二重 (full-duplex) 通信を"
18870 "提供する。 v4 と v6 の両方のバージョンの B<ip>(7)  に対応している。 TCP は、"
18871 "データが順序を守って到着すること、途中で失われたパケットが 再送されることを保"
18872 "証する。また、パケット単位にチェックサムを 生成、検査することで、転送エラーを"
18873 "検知する。 TCP はレコード境界 (record boundary) を保存しない。"
18874
18875 #. type: Plain text
18876 #: build/C/man7/tcp.7:119
18877 msgid ""
18878 "A newly created TCP socket has no remote or local address and is not fully "
18879 "specified.  To create an outgoing TCP connection use B<connect>(2)  to "
18880 "establish a connection to another TCP socket.  To receive new incoming "
18881 "connections, first B<bind>(2)  the socket to a local address and port and "
18882 "then call B<listen>(2)  to put the socket into the listening state.  After "
18883 "that a new socket for each incoming connection can be accepted using "
18884 "B<accept>(2).  A socket which has had B<accept>(2)  or B<connect>(2)  "
18885 "successfully called on it is fully specified and may transmit data.  Data "
18886 "cannot be transmitted on listening or not yet connected sockets."
18887 msgstr ""
18888 "新しく生成されたばかりの TCP ソケットは、 リモートアドレスかローカルアドレス"
18889 "がなく、 したがって詳細が完全に指定された状態ではない。 外部への TCP 接続を生"
18890 "成するには、 B<connect>(2)  を用いてもう一方の TCP ソケットへの接続を確立す"
18891 "る。 外部からの新たな接続を受けるには、まず B<bind>(2)  でソケットをローカル"
18892 "なアドレスとポートに結びつけ、次に B<listen>(2)  を呼んでソケットを接続待ち受"
18893 "け状態にする。 その後、到着した接続要求に対して B<accept>(2)  を用い、ソケッ"
18894 "トを新しく生成する。 B<accept>(2)  または B<connect>(2)  のコールが成功したソ"
18895 "ケットは、詳細が完全に指定された状態となり、 データのやりとりが可能となる。接"
18896 "続待ち受け状態の (listening) ソケットや、 接続 (connect) されていないソケット"
18897 "を通してデータをやりとりすることはできない。"
18898
18899 #. type: Plain text
18900 #: build/C/man7/tcp.7:139
18901 msgid ""
18902 "Linux supports RFC\\ 1323 TCP high performance extensions.  These include "
18903 "Protection Against Wrapped Sequence Numbers (PAWS), Window Scaling and "
18904 "Timestamps.  Window scaling allows the use of large (E<gt> 64K) TCP windows "
18905 "in order to support links with high latency or bandwidth.  To make use of "
18906 "them, the send and receive buffer sizes must be increased.  They can be set "
18907 "globally with the I</proc/sys/net/ipv4/tcp_wmem> and I</proc/sys/net/ipv4/"
18908 "tcp_rmem> files, or on individual sockets by using the B<SO_SNDBUF> and "
18909 "B<SO_RCVBUF> socket options with the B<setsockopt>(2)  call."
18910 msgstr ""
18911 "Linux は RFC\\ 1323 の TCP high performance 拡張をサポートしている。 これに"
18912 "は、Protection Against Wrapped Sequence Numbers (PAWS)、 ウィンドウスケーリン"
18913 "グ、タイムスタンプなどが含まれている。 ウィンドウスケーリングを利用すると、遅"
18914 "延または帯域の大きな接続で、 (64K 以上の) 巨大な TCP ウィンドウを用いることが"
18915 "可能となる。 これを用いるには、送受信のバッファサイズを大きくしなければならな"
18916 "い。 システム全体に対するバッファサイズの変更は、ファイル I</proc/sys/net/"
18917 "ipv4/tcp_wmem> と I</proc/sys/net/ipv4/tcp_rmem> を用いて行うことができる。 "
18918 "また、個々のソケットのみを大きくしたい場合には、 B<SO_SNDBUF> や "
18919 "B<SO_RCVBUF> ソケットオプションを用いて B<setsockopt>(2)  コールを用いて設定"
18920 "すればよい。"
18921
18922 #. type: Plain text
18923 #: build/C/man7/tcp.7:170
18924 msgid ""
18925 "The maximum sizes for socket buffers declared via the B<SO_SNDBUF> and "
18926 "B<SO_RCVBUF> mechanisms are limited by the values in the I</proc/sys/net/"
18927 "core/rmem_max> and I</proc/sys/net/core/wmem_max> files.  Note that TCP "
18928 "actually allocates twice the size of the buffer requested in the "
18929 "B<setsockopt>(2)  call, and so a succeeding B<getsockopt>(2)  call will not "
18930 "return the same size of buffer as requested in the B<setsockopt>(2)  call.  "
18931 "TCP uses the extra space for administrative purposes and internal kernel "
18932 "structures, and the I</proc> file values reflect the larger sizes compared "
18933 "to the actual TCP windows.  On individual connections, the socket buffer "
18934 "size must be set prior to the B<listen>(2)  or B<connect>(2)  calls in order "
18935 "to have it take effect.  See B<socket>(7)  for more information."
18936 msgstr ""
18937 "B<SO_SNDBUF> や B<SO_RCVBUF> のメカニズムで宣言されるソケットバッファの最大サ"
18938 "イズは、ファイル I</proc/sys/net/core/rmem_max> や I</proc/sys/net/core/"
18939 "wmem_max> で指定されたシステムとしての制限値を超えることはできない。 TCP は実"
18940 "際には B<setsockopt>(2)  コールが要求したバッファサイズの二倍を割り当てる。 "
18941 "そのため、この後で B<getsockopt>(2)  コールを行うと、 B<setsockopt>(2)  で要"
18942 "求したバッファサイズとは異なる値が返る。 TCP はこの余分な空間を、管理目的や"
18943 "カーネル内部の構造体に用いている。 I</proc> ファイルの値は、これらを反映し、"
18944 "実際の TCP ウィンドウよりも大きな値となる。 各接続におけるソケットのバッファ"
18945 "サイズ変更を有効にするには、 B<listen>(2)  や B<connect>(2)  コールの前に設定"
18946 "しなければならない。 より詳しい情報は B<socket>(7)  を見よ。"
18947
18948 #. type: Plain text
18949 #: build/C/man7/tcp.7:202
18950 msgid ""
18951 "TCP supports urgent data.  Urgent data is used to signal the receiver that "
18952 "some important message is part of the data stream and that it should be "
18953 "processed as soon as possible.  To send urgent data specify the B<MSG_OOB> "
18954 "option to B<send>(2).  When urgent data is received, the kernel sends a "
18955 "B<SIGURG> signal to the process or process group that has been set as the "
18956 "socket \"owner\" using the B<SIOCSPGRP> or B<FIOSETOWN> ioctls (or the "
18957 "POSIX.1-2001-specified B<fcntl>(2)  B<F_SETOWN> operation).  When the "
18958 "B<SO_OOBINLINE> socket option is enabled, urgent data is put into the normal "
18959 "data stream (a program can test for its location using the B<SIOCATMARK> "
18960 "ioctl described below), otherwise it can be received only when the "
18961 "B<MSG_OOB> flag is set for B<recv>(2)  or B<recvmsg>(2)."
18962 msgstr ""
18963 "TCP は緊急データ (urgent data) をサポートしている。緊急データは 何らかの重要"
18964 "なメッセージがデータストリームに含まれていること、 そのデータをできるだけ早く"
18965 "処理すべきこと、を受信者に伝えるために用いられる。 緊急データを送るには、 "
18966 "B<send>(2)  に B<MSG_OOB> オプションを指定する。 緊急データを受信すると、カー"
18967 "ネルは B<SIGURG> シグナルを送信する。送信先は B<SIOCSPGRP> や B<FIOSETOWN> "
18968 "ioctl (や POSIX.1-2001 で規定されている B<fcntl>(2)  B<F_SETOWN> 操作) を用い"
18969 "てそのソケットの「所有者」として設定された プロセスかプロセスグループであ"
18970 "る。 B<SO_OOBINLINE> ソケットオプションが有効になっていると、緊急データは 通"
18971 "常のデータストリームの中に混ぜて送られる (プログラムは下記の B<SIOCATMARK> "
18972 "ioctl を使って緊急データの場所を調べることができる)。 無効になっている場合に"
18973 "は、 B<recv>(2)  や B<recvmsg>(2)  で B<MSG_OOB> フラグがセットされているとき"
18974 "にのみ、緊急データを受信できる。"
18975
18976 #. type: Plain text
18977 #: build/C/man7/tcp.7:210
18978 msgid ""
18979 "Linux 2.4 introduced a number of changes for improved throughput and "
18980 "scaling, as well as enhanced functionality.  Some of these features include "
18981 "support for zero-copy B<sendfile>(2), Explicit Congestion Notification, new "
18982 "management of TIME_WAIT sockets, keep-alive socket options and support for "
18983 "Duplicate SACK extensions."
18984 msgstr ""
18985 "Linux 2.4 では多くの変更がなされ、 スループットとスケーリングが向上し、機能も"
18986 "高まった。 これらの機能には、ゼロコピー B<sendfile>(2)、 Explicit Congestion "
18987 "Notification、 TIME_WAIT ソケットの新しい管理法、 keep-alive ソケットオプショ"
18988 "ン、 Duplicate SACK 拡張のサポートなどがある。"
18989
18990 #. type: SS
18991 #: build/C/man7/tcp.7:210
18992 #, no-wrap
18993 msgid "Address formats"
18994 msgstr "アドレスのフォーマット"
18995
18996 #. type: Plain text
18997 #: build/C/man7/tcp.7:219
18998 msgid ""
18999 "TCP is built on top of IP (see B<ip>(7)).  The address formats defined by "
19000 "B<ip>(7)  apply to TCP.  TCP supports point-to-point communication only; "
19001 "broadcasting and multicasting are not supported."
19002 msgstr ""
19003 "TCP は IP の上層に構築されている (B<ip>(7)  を参照)。 B<ip>(7)  に定義されて"
19004 "いるアドレスフォーマットは TCP にも適用される。 TCP は point-to-point の通信"
19005 "だけをサポートする。 ブロードキャストやマルチキャストはサポートしない。"
19006
19007 #. type: Plain text
19008 #: build/C/man7/tcp.7:231
19009 msgid ""
19010 "System-wide TCP parameter settings can be accessed by files in the directory "
19011 "I</proc/sys/net/ipv4/>.  In addition, most IP I</proc> interfaces also apply "
19012 "to TCP; see B<ip>(7).  Variables described as I<Boolean> take an integer "
19013 "value, with a nonzero value (\"true\") meaning that the corresponding option "
19014 "is enabled, and a zero value (\"false\")  meaning that the option is "
19015 "disabled."
19016 msgstr ""
19017 "システム全体に対する TCP パラメータの設定には、 I</proc/sys/net/ipv4/> ディレ"
19018 "クトリ内のファイルによりアクセスできる。 さらに、IP に関連する I</proc> イン"
19019 "タフェースのほとんどは TCP についても適用される。 B<ip>(7)  を参照のこと。 "
19020 "I<Boolean> は整数値で、 0 以外の値 (\"true\") は対応するオプションが有効、 0 "
19021 "値 (\"false\") は無効、であることを意味する。"
19022
19023 #. type: TP
19024 #: build/C/man7/tcp.7:231
19025 #, no-wrap
19026 msgid "I<tcp_abc> (Integer; default: 0; since Linux 2.6.15)"
19027 msgstr "I<tcp_abc> (Integer; default: 0; Linux 2.6.15 以降)"
19028
19029 #.  The following is from 2.6.28-rc4: Documentation/networking/ip-sysctl.txt
19030 #. type: Plain text
19031 #: build/C/man7/tcp.7:239
19032 msgid ""
19033 "Control the Appropriate Byte Count (ABC), defined in RFC 3465.  ABC is a way "
19034 "of increasing the congestion window (I<cwnd>)  more slowly in response to "
19035 "partial acknowledgments.  Possible values are:"
19036 msgstr ""
19037 "RFC 3465 で定義されている Appropriate Byte Count (ABC) を制御する。 ABC は、"
19038 "部分的な ACK に応じた輻輳ウィンドウ (I<cwnd>)  の増加をより緩やかにする方法で"
19039 "ある。 以下の値を指定できる。"
19040
19041 #. type: IP
19042 #: build/C/man7/tcp.7:240 build/C/man7/tcp.7:411 build/C/man7/tcp.7:432
19043 #: build/C/man7/tcp.7:576
19044 #, no-wrap
19045 msgid "0"
19046 msgstr "0"
19047
19048 #. type: Plain text
19049 #: build/C/man7/tcp.7:244
19050 msgid "increase I<cwnd> once per acknowledgment (no ABC)"
19051 msgstr "ACK を受信する毎に I<cwnd> を増やす (ABC なし)。"
19052
19053 #. type: IP
19054 #: build/C/man7/tcp.7:244 build/C/man7/tcp.7:413 build/C/man7/tcp.7:439
19055 #: build/C/man7/tcp.7:578
19056 #, no-wrap
19057 msgid "1"
19058 msgstr "1"
19059
19060 #. type: Plain text
19061 #: build/C/man7/tcp.7:248
19062 msgid "increase I<cwnd> once per acknowledgment of full sized segment"
19063 msgstr "フルサイズのセグメントの ACK を受信する毎に I<cwnd> を増やす。"
19064
19065 #. type: IP
19066 #: build/C/man7/tcp.7:248 build/C/man7/tcp.7:415 build/C/man7/tcp.7:446
19067 #: build/C/man7/tcp.7:580
19068 #, no-wrap
19069 msgid "2"
19070 msgstr "2"
19071
19072 #. type: Plain text
19073 #: build/C/man7/tcp.7:253
19074 msgid ""
19075 "allow increase I<cwnd> by two if acknowledgment is of two segments to "
19076 "compensate for delayed acknowledgments."
19077 msgstr ""
19078 "ACK が遅延 ACK (delayed acknowledgment) を相殺するための 2 セグメントに 対す"
19079 "る ACK の場合に、 I<cwnd> を 2 増やすことができる。"
19080
19081 #. type: TP
19082 #: build/C/man7/tcp.7:254
19083 #, no-wrap
19084 msgid "I<tcp_abort_on_overflow> (Boolean; default: disabled; since Linux 2.4)"
19085 msgstr "I<tcp_abort_on_overflow> (Boolean; default: disabled; Linux 2.4 以降)"
19086
19087 #.  Since 2.3.41
19088 #. type: Plain text
19089 #: build/C/man7/tcp.7:266
19090 msgid ""
19091 "Enable resetting connections if the listening service is too slow and unable "
19092 "to keep up and accept them.  It means that if overflow occurred due to a "
19093 "burst, the connection will recover.  Enable this option I<only> if you are "
19094 "really sure that the listening daemon cannot be tuned to accept connections "
19095 "faster.  Enabling this option can harm the clients of your server."
19096 msgstr ""
19097 "接続を待ち受けているサービスが遅すぎて、受信についていけない場合に、 接続をリ"
19098 "セットできるようにする。 これを用いると、バーストによってオーバーフローが起"
19099 "こったときに、 接続を回復できるようになる。このオプションを用いるのは、 受信"
19100 "デーモンを高速化できない場合に「限定する」こと。 このオプションを用いると、そ"
19101 "のサーバに接続しているクライアント にとっては害になることがある。"
19102
19103 #. type: TP
19104 #: build/C/man7/tcp.7:266
19105 #, no-wrap
19106 msgid "I<tcp_adv_win_scale> (integer; default: 2; since Linux 2.4)"
19107 msgstr "I<tcp_adv_win_scale> (integer; default: 2; Linux 2.4 以降)"
19108
19109 #.  Since 2.4.0-test7
19110 #. type: Plain text
19111 #: build/C/man7/tcp.7:278
19112 msgid ""
19113 "Count buffering overhead as I<bytes/2^tcp_adv_win_scale>, if "
19114 "I<tcp_adv_win_scale> is greater than 0; or I<bytes-bytes/2^(-"
19115 "tcp_adv_win_scale)>, if I<tcp_adv_win_scale> is less than or equal to zero."
19116 msgstr ""
19117 "バッファリングのオーバーヘッドの計算方法を、 I<tcp_adv_win_scale> が正の場合"
19118 "は I<bytes/2^tcp_adv_win_scale> に、 I<tcp_adv_win_scale> が負か 0 の場合は "
19119 "I<bytes-bytes/2^(-tcp_adv_win_scale)> とする。"
19120
19121 #. type: Plain text
19122 #: build/C/man7/tcp.7:291
19123 msgid ""
19124 "The socket receive buffer space is shared between the application and "
19125 "kernel.  TCP maintains part of the buffer as the TCP window, this is the "
19126 "size of the receive window advertised to the other end.  The rest of the "
19127 "space is used as the \"application\" buffer, used to isolate the network "
19128 "from scheduling and application latencies.  The I<tcp_adv_win_scale> default "
19129 "value of 2 implies that the space used for the application buffer is one "
19130 "fourth that of the total."
19131 msgstr ""
19132 "ソケットの受信バッファ空間はアプリケーションとカーネルで共有される。 TCP は"
19133 "バッファの一部を TCP ウィンドウとして管理し、 これを受信ウィンドウとして接続"
19134 "の他端に通知する。 空間の残りは「アプリケーション」バッファとして用いられ、 "
19135 "スケジューリングやアプリケーションの遅延からネットワークを隔離する。 "
19136 "I<tcp_adv_win_scale> のデフォルト値は 2 であり、 この場合アプリケーションバッ"
19137 "ファは全体の 1/4 になる。"
19138
19139 #. type: TP
19140 #: build/C/man7/tcp.7:291
19141 #, no-wrap
19142 msgid "I<tcp_allowed_congestion_control> (String; default: see text; since Linux 2.4.20)"
19143 msgstr "I<tcp_allowed_congestion_control> (String; default: see text; Linux 2.4.20 以降)"
19144
19145 #.  The following is from 2.6.28-rc4: Documentation/networking/ip-sysctl.txt
19146 #. type: Plain text
19147 #: build/C/man7/tcp.7:304
19148 #, fuzzy
19149 #| msgid ""
19150 #| "Show/set the congestion control algorithm choices available to "
19151 #| "unprivileged processes (see the description of the B<TCP_CONGESTION> "
19152 #| "socket option).  The list is a subset of those listed in "
19153 #| "I<tcp_available_congestion_control>.  The default value for this list is "
19154 #| "\"reno\" plus the default setting of I<tcp_congestion_control>."
19155 msgid ""
19156 "Show/set the congestion control algorithm choices available to unprivileged "
19157 "processes (see the description of the B<TCP_CONGESTION> socket option).  The "
19158 "items in the list are separated by white space and terminated by a newline "
19159 "character.  The list is a subset of those listed in "
19160 "I<tcp_available_congestion_control>.  The default value for this list is "
19161 "\"reno\" plus the default setting of I<tcp_congestion_control>."
19162 msgstr ""
19163 "非特権プロセスで利用できる輻輳制御アルゴリズムの選択肢を表示/設定する "
19164 "(B<TCP_CONGESTION> ソケットオプションの説明を参照のこと)。 このリストは "
19165 "I<tcp_available_congestion_control> で表示されるリストの部分集合となる。 この"
19166 "リストのデフォルト値は、\"reno\" と I<tcp_congestion_control> のデフォルト設"
19167 "定をあわせたものとなる。"
19168
19169 #. type: TP
19170 #: build/C/man7/tcp.7:304
19171 #, no-wrap
19172 msgid "I<tcp_available_congestion_control> (String; read-only; since Linux 2.4.20)"
19173 msgstr "I<tcp_available_congestion_control> (String; read-only; Linux 2.4.20 以降)"
19174
19175 #.  The following is from 2.6.28-rc4: Documentation/networking/ip-sysctl.txt
19176 #. type: Plain text
19177 #: build/C/man7/tcp.7:315
19178 #, fuzzy
19179 #| msgid ""
19180 #| "Show a list of the congestion-control algorithms that are registered.  "
19181 #| "This list is a limiting set for the list in "
19182 #| "I<tcp_allowed_congestion_control>.  More congestion-control algorithms "
19183 #| "may be available as modules, but not loaded."
19184 msgid ""
19185 "Show a list of the congestion-control algorithms that are registered.  The "
19186 "items in the list are separated by white space and terminated by a newline "
19187 "character.  This list is a limiting set for the list in "
19188 "I<tcp_allowed_congestion_control>.  More congestion-control algorithms may "
19189 "be available as modules, but not loaded."
19190 msgstr ""
19191 "登録されている輻輳制御アルゴリズムのリストを表示する。 このリストに載っている"
19192 "ものだけが、 I<tcp_allowed_congestion_control> に表示される。 他の輻輳制御ア"
19193 "ルゴリズムがモジュールとして利用可能だが、 モジュールがロードされていないこと"
19194 "もある。"
19195
19196 #. type: TP
19197 #: build/C/man7/tcp.7:315
19198 #, no-wrap
19199 msgid "I<tcp_app_win> (integer; default: 31; since Linux 2.4)"
19200 msgstr "I<tcp_app_win> (integer; default: 31; Linux 2.4 以降)"
19201
19202 #.  Since 2.4.0-test7
19203 #. type: Plain text
19204 #: build/C/man7/tcp.7:320
19205 msgid ""
19206 "This variable defines how many bytes of the TCP window are reserved for "
19207 "buffering overhead."
19208 msgstr ""
19209 "この変数は、TCP ウィンドウの何バイト分を バッファリングのオーバーヘッド用に予"
19210 "約するかを指定する。"
19211
19212 #.  The following is from 2.6.28-rc4: Documentation/networking/ip-sysctl.txt
19213 #. type: Plain text
19214 #: build/C/man7/tcp.7:326
19215 msgid ""
19216 "A maximum of (I<window/2^tcp_app_win>, mss) bytes in the window are reserved "
19217 "for the application buffer.  A value of 0 implies that no amount is reserved."
19218 msgstr ""
19219 "そのウィンドウの I<window/2^tcp_app_win> と mss の大きいほう (バイト単位)  が"
19220 "アプリケーションバッファとして予約される。 0 を指定すると一切予約領域を取らな"
19221 "い。"
19222
19223 #. type: TP
19224 #: build/C/man7/tcp.7:326
19225 #, no-wrap
19226 msgid "I<tcp_base_mss> (Integer; default: 512; since Linux 2.6.17)"
19227 msgstr "I<tcp_base_mss> (Integer; default: 512; Linux 2.6.17 以降)"
19228
19229 #.  The following is from 2.6.12: Documentation/networking/ip-sysctl.txt
19230 #. type: Plain text
19231 #: build/C/man7/tcp.7:335
19232 msgid ""
19233 "The initial value of I<search_low> to be used by the packetization layer "
19234 "Path MTU discovery (MTU probing).  If MTU probing is enabled, this is the "
19235 "initial MSS used by the connection."
19236 msgstr ""
19237 "パケット化レイヤの Path MTU discovery (MTU probing) で、 I<search_low> の初期"
19238 "値と使用される値。 MTU probing が有効な場合、この値はその接続の MSS の初期値"
19239 "となる。"
19240
19241 #. type: TP
19242 #: build/C/man7/tcp.7:335
19243 #, no-wrap
19244 msgid "I<tcp_bic> (Boolean; default: disabled; Linux 2.4.27/2.6.6 to 2.6.13)"
19245 msgstr "I<tcp_bic> (Boolean; default: disabled; Linux 2.4.27/2.6.6 から 2.6.13 まで)"
19246
19247 #.  The following is from 2.6.12: Documentation/networking/ip-sysctl.txt
19248 #. type: Plain text
19249 #: build/C/man7/tcp.7:349
19250 msgid ""
19251 "Enable BIC TCP congestion control algorithm.  BIC-TCP is a sender-side only "
19252 "change that ensures a linear RTT fairness under large windows while offering "
19253 "both scalability and bounded TCP-friendliness.  The protocol combines two "
19254 "schemes called additive increase and binary search increase.  When the "
19255 "congestion window is large, additive increase with a large increment ensures "
19256 "linear RTT fairness as well as good scalability.  Under small congestion "
19257 "windows, binary search increase provides TCP friendliness."
19258 msgstr ""
19259 "BIC TCP 輻輳制御アルゴリズムを有効にする。 BIC-TCP は送信側のみの変更で、 ス"
19260 "ケーラビリティと TCP 親和性 (friendliness) の両方を提供しつつ、 大きなウィン"
19261 "ドウの下での線形な RTT 公平性を保証するものである。 このプロトコルでは "
19262 "additive increase (追加的な増加) と binary search increase (二分探索増加) と"
19263 "いわれる二つの仕組みを 組み合わせている。輻輳ウィンドウが大きいときは、増分の"
19264 "大きい additive increase により、スケーラビリティを確保しながら 線形な RTT 公"
19265 "平性を保証する。 輻輳ウィンドウが小さいときには binary search increase によ"
19266 "り TCP 親和性を達成している。"
19267
19268 #. type: TP
19269 #: build/C/man7/tcp.7:349
19270 #, no-wrap
19271 msgid "I<tcp_bic_low_window> (integer; default: 14; Linux 2.4.27/2.6.6 to 2.6.13)"
19272 msgstr "I<tcp_bic_low_window> (integer; default: 14; Linux 2.4.27/2.6.6 以降 2.6.13 まで)"
19273
19274 #.  The following is from 2.6.12: Documentation/networking/ip-sysctl.txt
19275 #. type: Plain text
19276 #: build/C/man7/tcp.7:356
19277 msgid ""
19278 "Set the threshold window (in packets) where BIC TCP starts to adjust the "
19279 "congestion window.  Below this threshold BIC TCP behaves the same as the "
19280 "default TCP Reno."
19281 msgstr ""
19282 "BIC TCP が輻輳ウィンドウの調整を開始する閾値ウィンドウ (パケット単位)  を設定"
19283 "する。この閾値を下回る場合、BIC TCP はデフォルトの TCP Reno と 同じ動作をす"
19284 "る。"
19285
19286 #. type: TP
19287 #: build/C/man7/tcp.7:356
19288 #, no-wrap
19289 msgid "I<tcp_bic_fast_convergence> (Boolean; default: enabled; Linux 2.4.27/2.6.6 to 2.6.13)"
19290 msgstr "I<tcp_bic_fast_convergence> (Boolean; default: enabled; Linux 2.4.27/2.6.6 以降 2.6.13 まで)"
19291
19292 #. type: Plain text
19293 #: build/C/man7/tcp.7:360
19294 msgid ""
19295 "Force BIC TCP to more quickly respond to changes in congestion window.  "
19296 "Allows two flows sharing the same connection to converge more rapidly."
19297 msgstr ""
19298 "BIC TCP が輻輳ウィンドウの変化により速く反応するようにする。 同じコネクション"
19299 "を共有する二つのフローが一つにまとまるのを より速く行うようにする。"
19300
19301 #. type: TP
19302 #: build/C/man7/tcp.7:360
19303 #, no-wrap
19304 msgid "I<tcp_congestion_control> (String; default: see text; since Linux 2.4.13)"
19305 msgstr "I<tcp_congestion_control> (String; default: 説明参照; Linux 2.4.13 以降)"
19306
19307 #.  The following is from 2.6.28-rc4: Documentation/networking/ip-sysctl.txt
19308 #. type: Plain text
19309 #: build/C/man7/tcp.7:367
19310 msgid ""
19311 "Set the default congestion-control algorithm to be used for new "
19312 "connections.  The algorithm \"reno\" is always available, but additional "
19313 "choices may be available depending on kernel configuration.  The default "
19314 "value for this file is set as part of kernel configuration."
19315 msgstr ""
19316 "新規の接続で使用されるデフォルトの輻輳制御アルゴリズムを設定する。 \"reno\" "
19317 "アルゴリズムは常に利用可能だが、 カーネル設定次第では別の選択肢が利用できるこ"
19318 "ともある。 このファイルのデフォルト値はカーネル設定の一つとして設定される。"
19319
19320 #. type: TP
19321 #: build/C/man7/tcp.7:367
19322 #, no-wrap
19323 msgid "I<tcp_dma_copybreak> (integer; default: 4096; since Linux 2.6.24)"
19324 msgstr "I<tcp_dma_copybreak> (integer; default: 4096; Linux 2.6.24 以降)"
19325
19326 #. type: Plain text
19327 #: build/C/man7/tcp.7:374
19328 msgid ""
19329 "Lower limit, in bytes, of the size of socket reads that will be offloaded to "
19330 "a DMA copy engine, if one is present in the system and the kernel was "
19331 "configured with the B<CONFIG_NET_DMA> option."
19332 msgstr ""
19333 "システムに DMA コピーエンジンが存在し、カーネルで B<CONFIG_NET_DMA> オプショ"
19334 "ンが有効になっている場合に、 DMA コピーエンジンにオフロードされるソケットの読"
19335 "み込みサイズの下限値 (バイト単位)。"
19336
19337 #. type: TP
19338 #: build/C/man7/tcp.7:374
19339 #, no-wrap
19340 msgid "I<tcp_dsack> (Boolean; default: enabled; since Linux 2.4)"
19341 msgstr "I<tcp_dsack> (Boolean; default: enabled; Linux 2.4 以降)"
19342
19343 #.  Since 2.4.0-test7
19344 #. type: Plain text
19345 #: build/C/man7/tcp.7:378
19346 msgid "Enable RFC\\ 2883 TCP Duplicate SACK support."
19347 msgstr "RFC\\ 2883 の TCP Duplicate SACK のサポートを有効にする。"
19348
19349 #. type: TP
19350 #: build/C/man7/tcp.7:378
19351 #, no-wrap
19352 msgid "I<tcp_ecn> (Boolean; default: disabled; since Linux 2.4)"
19353 msgstr "I<tcp_ecn> (Boolean; default: disabled; Linux 2.4 以降)"
19354
19355 #.  Since 2.4.0-test7
19356 #. type: Plain text
19357 #: build/C/man7/tcp.7:385
19358 msgid ""
19359 "Enable RFC\\ 2884 Explicit Congestion Notification.  When enabled, "
19360 "connectivity to some destinations could be affected due to older, "
19361 "misbehaving routers along the path causing connections to be dropped."
19362 msgstr ""
19363 "RFC\\ 2884 の Explicit Congestion Notification を有効にする。 これを有効にす"
19364 "ると、間違った振舞いをする古いルータが 経路の途中にあるような接続先に対して影"
19365 "響が生じ、 場合によっては接続が落ちるかもしれない。"
19366
19367 #. type: TP
19368 #: build/C/man7/tcp.7:385
19369 #, no-wrap
19370 msgid "I<tcp_fack> (Boolean; default: enabled; since Linux 2.2)"
19371 msgstr "I<tcp_fack> (Boolean; default: enabled; Linux 2.2 以降)"
19372
19373 #.  Since 2.1.92
19374 #. type: Plain text
19375 #: build/C/man7/tcp.7:389
19376 msgid "Enable TCP Forward Acknowledgement support."
19377 msgstr "TCP Forward Acknowledgement のサポートを有効にする。"
19378
19379 #. type: TP
19380 #: build/C/man7/tcp.7:389
19381 #, no-wrap
19382 msgid "I<tcp_fin_timeout> (integer; default: 60; since Linux 2.2)"
19383 msgstr "I<tcp_fin_timeout> (integer; default: 60; Linux 2.2 以降)"
19384
19385 #.  Since 2.1.53
19386 #.  The following is from 2.6.12: Documentation/networking/ip-sysctl.txt
19387 #. type: Plain text
19388 #: build/C/man7/tcp.7:399
19389 msgid ""
19390 "This specifies how many seconds to wait for a final FIN packet before the "
19391 "socket is forcibly closed.  This is strictly a violation of the TCP "
19392 "specification, but required to prevent denial-of-service attacks.  In Linux "
19393 "2.2, the default value was 180."
19394 msgstr ""
19395 "ソケットを強制的にクローズする前に、 最後の FIN パケットを待つ時間を秒単位で"
19396 "指定する。 これは厳密には TCP の仕様を満たしていないが、 DoS 攻撃 (denial of "
19397 "service attack) から身を守るために必要である。 Linux 2.2 ではデフォルト値は "
19398 "180 であった。"
19399
19400 #. type: TP
19401 #: build/C/man7/tcp.7:399
19402 #, no-wrap
19403 msgid "I<tcp_frto> (integer; default: 0; since Linux 2.4.21/2.6)"
19404 msgstr "I<tcp_frto> (integer; default: 0; Linux 2.4.21/2.6 以降)"
19405
19406 #.  Since 2.4.21/2.5.43
19407 #. type: Plain text
19408 #: build/C/man7/tcp.7:408
19409 msgid ""
19410 "Enable F-RTO, an enhanced recovery algorithm for TCP retransmission timeouts "
19411 "(RTOs).  It is particularly beneficial in wireless environments where packet "
19412 "loss is typically due to random radio interference rather than intermediate "
19413 "router congestion.  See RFC 4138 for more details."
19414 msgstr ""
19415 "F-RTO を有効にする。F-RTO は TCP 再送タイムアウト (RTO) からの 復旧性能を向上"
19416 "させたアルゴリズムである。 この機能は無線環境で特に効果を発揮する。 無線環境"
19417 "では、通常は、中間ルータの輻輳ではなくランダムな無線の干渉 によりパケットロス"
19418 "が発生する。 詳細は RFC\\ 4138 を参照。"
19419
19420 #. type: Plain text
19421 #: build/C/man7/tcp.7:410
19422 msgid "This file can have one of the following values:"
19423 msgstr "このファイルは以下のいずれかの値を取ることができる。"
19424
19425 #. type: Plain text
19426 #: build/C/man7/tcp.7:413
19427 msgid "Disabled."
19428 msgstr "F-RTO を無効にする。"
19429
19430 #. type: Plain text
19431 #: build/C/man7/tcp.7:415
19432 msgid "The basic version F-RTO algorithm is enabled."
19433 msgstr "基本版の F-RTO アルゴリズムを有効にする。"
19434
19435 #. type: Plain text
19436 #: build/C/man7/tcp.7:420
19437 msgid ""
19438 "Enable SACK-enhanced F-RTO if flow uses SACK.  The basic version can be used "
19439 "also when SACK is in use though in that case scenario(s) exists where F-RTO "
19440 "interacts badly with the packet counting of the SACK-enabled TCP flow."
19441 msgstr ""
19442 "そのフローで SACK を使用する場合、SACK 拡張版の F-RTO を有効にする。 基本版"
19443 "の F-RTO も SACK が使用されている場合にも使用できるが、 基本版の場合には F-"
19444 "RTO が SACK が有効になった TCP フローでの パケット数計測と、相性が悪く相互干"
19445 "渉が起こる場面が存在する。"
19446
19447 #. type: Plain text
19448 #: build/C/man7/tcp.7:424
19449 msgid ""
19450 "Before Linux 2.6.22, this parameter was a Boolean value, supporting just "
19451 "values 0 and 1 above."
19452 msgstr ""
19453 "Linu 2.6.22 より前では、このパラメータはブール値であり、 上記の 0 と 1 のみを"
19454 "サポートしていた。"
19455
19456 #. type: TP
19457 #: build/C/man7/tcp.7:424
19458 #, no-wrap
19459 msgid "I<tcp_frto_response> (integer; default: 0; since Linux 2.6.22)"
19460 msgstr "I<tcp_frto_response> (integer; default: 0; Linux 2.6.22 以降)"
19461
19462 #. type: Plain text
19463 #: build/C/man7/tcp.7:431
19464 msgid ""
19465 "When F-RTO has detected that a TCP retransmission timeout was spurious (i.e, "
19466 "the timeout would have been avoided had TCP set a longer retransmission "
19467 "timeout), TCP has several options concerning what to do next.  Possible "
19468 "values are:"
19469 msgstr ""
19470 "F-RTO が TCP 再送タイムアウトが偽物だと検出した場合 (つまり、TCP がもっと長い"
19471 "再送タイムアウトを設定していれば タイムアウトが避けられた場合)、 次にどうする"
19472 "かに関して選択肢がいくつかある。 以下の値を選択できる。"
19473
19474 #. type: Plain text
19475 #: build/C/man7/tcp.7:439
19476 msgid ""
19477 "Rate halving based; a smooth and conservative response, results in halved "
19478 "congestion window (I<cwnd>)  and slow-start threshold (I<ssthresh>)  after "
19479 "one RTT."
19480 msgstr ""
19481 "レートを元の半分にする。 滑らかで、保守的な反応を行い、RTT 1回分の時間後に 輻"
19482 "輳ウィンドウ (I<cwnd>)  とスロースタートの閾値 (I<ssthresh>)  が半分になる。"
19483
19484 #. type: Plain text
19485 #: build/C/man7/tcp.7:446
19486 msgid ""
19487 "Very conservative response; not recommended because even though being valid, "
19488 "it interacts poorly with the rest of Linux TCP; halves I<cwnd> and "
19489 "I<ssthresh> immediately."
19490 msgstr ""
19491 "非常に保守的な反応。このオプションの使用は推奨されない。 反応が正しかった場合"
19492 "であっても、Linux TCP の他の部分と うまく連携できないからである。 I<cwnd> と "
19493 "I<ssthresh> は直ちに半分にされる。"
19494
19495 #. type: Plain text
19496 #: build/C/man7/tcp.7:455
19497 msgid ""
19498 "Aggressive response; undoes congestion-control measures that are now known "
19499 "to be unnecessary (ignoring the possibility of a lost retransmission that "
19500 "would require TCP to be more cautious); I<cwnd> and I<ssthresh> are restored "
19501 "to the values prior to timeout."
19502 msgstr ""
19503 "積極的な反応。 不要と判明した輻輳制御の測定情報を取り消す (TCP がもっと注意深"
19504 "く扱うべき再送が失われる可能性を無視する)。 。 I<cwnd> と I<ssthresh> はタイ"
19505 "ムアウト前の値に戻される。"
19506
19507 #. type: TP
19508 #: build/C/man7/tcp.7:456
19509 #, no-wrap
19510 msgid "I<tcp_keepalive_intvl> (integer; default: 75; since Linux 2.4)"
19511 msgstr "I<tcp_keepalive_intvl> (integer; default: 75; Linux 2.4 以降)"
19512
19513 #.  Since 2.3.18
19514 #. type: Plain text
19515 #: build/C/man7/tcp.7:460
19516 msgid "The number of seconds between TCP keep-alive probes."
19517 msgstr "TCP keep-alive のプローブを送る間隔 (秒単位)。"
19518
19519 #. type: TP
19520 #: build/C/man7/tcp.7:460
19521 #, no-wrap
19522 msgid "I<tcp_keepalive_probes> (integer; default: 9; since Linux 2.2)"
19523 msgstr "I<tcp_keepalive_probes> (integer; default: 9; Linux 2.2 以降)"
19524
19525 #.  Since 2.1.43
19526 #. type: Plain text
19527 #: build/C/man7/tcp.7:466
19528 msgid ""
19529 "The maximum number of TCP keep-alive probes to send before giving up and "
19530 "killing the connection if no response is obtained from the other end."
19531 msgstr ""
19532 "TCP keep-alive プローブの最大回数。 この回数だけ試しても接続先から反応が得ら"
19533 "れない場合は、 あきらめて接続を切断する。"
19534
19535 #. type: TP
19536 #: build/C/man7/tcp.7:466
19537 #, no-wrap
19538 msgid "I<tcp_keepalive_time> (integer; default: 7200; since Linux 2.2)"
19539 msgstr "I<tcp_keepalive_time> (integer; default: 7200; Linux 2.2 以降)"
19540
19541 #.  Since 2.1.43
19542 #. type: Plain text
19543 #: build/C/man7/tcp.7:478
19544 msgid ""
19545 "The number of seconds a connection needs to be idle before TCP begins "
19546 "sending out keep-alive probes.  Keep-alives are sent only when the "
19547 "B<SO_KEEPALIVE> socket option is enabled.  The default value is 7200 seconds "
19548 "(2 hours).  An idle connection is terminated after approximately an "
19549 "additional 11 minutes (9 probes an interval of 75 seconds apart) when keep-"
19550 "alive is enabled."
19551 msgstr ""
19552 "接続がアイドル状態になってから、keep-alive プローブを送信するまでの時間を秒単"
19553 "位で指定する。 B<SO_KEEPALIVE> ソケットオプションが有効になっている場合のみ "
19554 "keep-alive は送信される。 デフォルト値は 7200 秒 (2 時間)。 keep-alive が有効"
19555 "になっている場合、 さらにおよそ 11 分 (75 秒間隔の 9 プローブ分)  経過すると"
19556 "アイドル状態の接続は終了させられる。"
19557
19558 #.  The following is from 2.6.12: Documentation/networking/ip-sysctl.txt
19559 #. type: Plain text
19560 #: build/C/man7/tcp.7:483
19561 msgid ""
19562 "Note that underlying connection tracking mechanisms and application timeouts "
19563 "may be much shorter."
19564 msgstr ""
19565 "下層にある接続追跡機構やアプリケーションでのタイムアウトは、 もっとずっと短い"
19566 "かもしれない。"
19567
19568 #. type: TP
19569 #: build/C/man7/tcp.7:483
19570 #, no-wrap
19571 msgid "I<tcp_low_latency> (Boolean; default: disabled; since Linux 2.4.21/2.6)"
19572 msgstr "I<tcp_low_latency> (Boolean; default: disabled; Linux 2.4.21/2.6 以降)"
19573
19574 #.  Since 2.4.21/2.5.60
19575 #. type: Plain text
19576 #: build/C/man7/tcp.7:491
19577 msgid ""
19578 "If enabled, the TCP stack makes decisions that prefer lower latency as "
19579 "opposed to higher throughput.  It this option is disabled, then higher "
19580 "throughput is preferred.  An example of an application where this default "
19581 "should be changed would be a Beowulf compute cluster."
19582 msgstr ""
19583 "有効にすると、TCP スタックはスループットを高くするよりも 遅延を少なくすること"
19584 "を優先して判断を行う。 このオプションを無効にすると、スループットを高くするこ"
19585 "とが優先される。 このデフォルト値を変更した方がよいアプリケーションの例として"
19586 "は Beowulf コンピュータクラスタが挙げられるだろう。"
19587
19588 #. type: TP
19589 #: build/C/man7/tcp.7:491
19590 #, no-wrap
19591 msgid "I<tcp_max_orphans> (integer; default: see below; since Linux 2.4)"
19592 msgstr "I<tcp_max_orphans> (integer; default: see below; Linux 2.4 以降)"
19593
19594 #.  Since 2.3.41
19595 #. type: Plain text
19596 #: build/C/man7/tcp.7:505
19597 msgid ""
19598 "The maximum number of orphaned (not attached to any user file handle) TCP "
19599 "sockets allowed in the system.  When this number is exceeded, the orphaned "
19600 "connection is reset and a warning is printed.  This limit exists only to "
19601 "prevent simple denial-of-service attacks.  Lowering this limit is not "
19602 "recommended.  Network conditions might require you to increase the number of "
19603 "orphans allowed, but note that each orphan can eat up to ~64K of unswappable "
19604 "memory.  The default initial value is set equal to the kernel parameter "
19605 "NR_FILE.  This initial default is adjusted depending on the memory in the "
19606 "system."
19607 msgstr ""
19608 "システムが許容する、 orphan な (どのユーザファイルハンドルにもアタッチされて"
19609 "いない)  TCP ソケットの最大数。 この数を越えると、orphan な接続はリセットさ"
19610 "れ、警告が表示される。 この制限が存在するのは、単純な使用不能 (denial-of-"
19611 "service) 攻撃を 防ぐために過ぎない。この値を小さくすることは推奨しない。 ネッ"
19612 "トワークの条件によっては、この数値を大きくしないといけないかもしれないが、 "
19613 "orphan なソケットひとつあたり 64K 程度のスワップ不可能なメモリを消費すること"
19614 "も注意せよ。 デフォルトの初期値はカーネルパラメータの NR_FILE と等しい。 この"
19615 "初期デフォルト値はシステムのメモリに応じて調整される。"
19616
19617 #. type: TP
19618 #: build/C/man7/tcp.7:505
19619 #, no-wrap
19620 msgid "I<tcp_max_syn_backlog> (integer; default: see below; since Linux 2.2)"
19621 msgstr "I<tcp_max_syn_backlog> (integer; default: 下記参照; Linux 2.2 以降)"
19622
19623 #.  Since 2.1.53
19624 #. type: Plain text
19625 #: build/C/man7/tcp.7:522
19626 msgid ""
19627 "The maximum number of queued connection requests which have still not "
19628 "received an acknowledgement from the connecting client.  If this number is "
19629 "exceeded, the kernel will begin dropping requests.  The default value of 256 "
19630 "is increased to 1024 when the memory present in the system is adequate or "
19631 "greater (E<gt>= 128Mb), and reduced to 128 for those systems with very low "
19632 "memory (E<lt>= 32Mb).  It is recommended that if this needs to be increased "
19633 "above 1024, TCP_SYNQ_HSIZE in I<include/net/tcp.h> be modified to keep "
19634 "TCP_SYNQ_HSIZE*16E<lt>=tcp_max_syn_backlog, and the kernel be recompiled."
19635 msgstr ""
19636 "接続してきているクライアントから ack を受信していない状態の接続リクエストを"
19637 "キューに置ける最大数。 この数値を越えると、カーネルはリクエストを捨て始め"
19638 "る。 デフォルトの値は 256 で、 システムに充分なメモリがある (128Mb 以上) 場合"
19639 "は 1024 になり、 メモリが非常に少ない場合 (32 Mb 以下) は 128 になる。 この数"
19640 "値を 1024 以上に増やしたい場合は、 I<include/net/tcp.h> の TCP_SYNQ_HSIZE を "
19641 "TCP_SYNQ_HSIZE*16E<lt>=tcp_max_syn_backlog のように修正し、 カーネルを再コン"
19642 "パイルすることを奨める。"
19643
19644 #. type: TP
19645 #: build/C/man7/tcp.7:522
19646 #, no-wrap
19647 msgid "I<tcp_max_tw_buckets> (integer; default: see below; since Linux 2.4)"
19648 msgstr "I<tcp_max_tw_buckets> (integer; default: 下記参照; Linux 2.4 以降)"
19649
19650 #.  Since 2.3.41
19651 #. type: Plain text
19652 #: build/C/man7/tcp.7:532
19653 msgid ""
19654 "The maximum number of sockets in TIME_WAIT state allowed in the system.  "
19655 "This limit exists only to prevent simple denial-of-service attacks.  The "
19656 "default value of NR_FILE*2 is adjusted depending on the memory in the "
19657 "system.  If this number is exceeded, the socket is closed and a warning is "
19658 "printed."
19659 msgstr ""
19660 "システムが許容する TIME_WAIT 状態にあるソケットの最大数。 この制限が存在する"
19661 "のは、 単純な使用不能 (denial-of-service) 攻撃を防ぐために過ぎない。 デフォル"
19662 "ト値は NR_FILE*2 で、システムのメモリに応じて調整される。 この数値を越える"
19663 "と、そのようなソケットはクローズされ、警告が表示される。"
19664
19665 #. type: TP
19666 #: build/C/man7/tcp.7:532
19667 #, no-wrap
19668 msgid "I<tcp_moderate_rcvbuf> (Boolean; default: enabled; since Linux 2.4.17/2.6.7)"
19669 msgstr "I<tcp_moderate_rcvbuf> (Boolean; default: enabled; Linux 2.4.17/2.6.7 以降)"
19670
19671 #.  The following is from 2.6.28-rc4: Documentation/networking/ip-sysctl.txt
19672 #. type: Plain text
19673 #: build/C/man7/tcp.7:539
19674 msgid ""
19675 "If enabled, TCP performs receive buffer auto-tuning, attempting to "
19676 "automatically size the buffer (no greater than I<tcp_rmem[2]>)  to match the "
19677 "size required by the path for full throughput."
19678 msgstr ""
19679 "有効にすると、TCP は受信バッファの自動調整を行う。 具体的には、 (I<tcp_rmem"
19680 "[2]> を超えない範囲で) バッファの大きさを自動的に変化させ、 その経路で最大の"
19681 "スループットを達成するのに必要な大きさに合わせようとする。"
19682
19683 #. type: TP
19684 #: build/C/man7/tcp.7:539
19685 #, no-wrap
19686 msgid "I<tcp_mem> (since Linux 2.4)"
19687 msgstr "I<tcp_mem> (Linux 2.4 以降)"
19688
19689 #.  Since 2.4.0-test7
19690 #. type: Plain text
19691 #: build/C/man7/tcp.7:551
19692 msgid ""
19693 "This is a vector of 3 integers: [low, pressure, high].  These bounds, "
19694 "measured in units of the system page size, are used by TCP to track its "
19695 "memory usage.  The defaults are calculated at boot time from the amount of "
19696 "available memory.  (TCP can only use I<low memory> for this, which is "
19697 "limited to around 900 megabytes on 32-bit systems.  64-bit systems do not "
19698 "suffer this limitation.)"
19699 msgstr ""
19700 "これは 3 つの整数 [low, pressure, high] からなるベクトル値である。 これらは "
19701 "TCP がメモリ使用量を追跡するために用いられる (使用量はシステムのページサイズ"
19702 "単位で計測される)。 デフォルトはブート時に利用できるメモリの量から計算され"
19703 "る。 (実際には、TCP は I<low memory> のみを使用する。値は 32ビットシステムで"
19704 "は約 900 メガバイトに制限される。 64 ビットシステムではこの制限はない。)"
19705
19706 #. type: TP
19707 #: build/C/man7/tcp.7:552
19708 #, no-wrap
19709 msgid "I<low>"
19710 msgstr "I<low>"
19711
19712 #. type: Plain text
19713 #: build/C/man7/tcp.7:556
19714 msgid ""
19715 "TCP doesn't regulate its memory allocation when the number of pages it has "
19716 "allocated globally is below this number."
19717 msgstr ""
19718 "TCP は、グローバルにアロケートしたページがこの数値以下の場合は、 メモリアロ"
19719 "ケーションを調整しない。"
19720
19721 #. type: TP
19722 #: build/C/man7/tcp.7:556 build/C/man7/udp.7:151
19723 #, no-wrap
19724 msgid "I<pressure>"
19725 msgstr "I<pressure>"
19726
19727 #. type: Plain text
19728 #: build/C/man7/tcp.7:565
19729 msgid ""
19730 "When the amount of memory allocated by TCP exceeds this number of pages, TCP "
19731 "moderates its memory consumption.  This memory pressure state is exited once "
19732 "the number of pages allocated falls below the I<low> mark."
19733 msgstr ""
19734 "TCP がアロケートしたメモリがこの数値分のページ数を越えると、 TCP はメモリ消費"
19735 "を抑えるようになる。 アロケートしたページ数が I<low> 以下になると、このメモリ"
19736 "圧迫状態から脱する。"
19737
19738 #. type: TP
19739 #: build/C/man7/tcp.7:565
19740 #, no-wrap
19741 msgid "I<high>"
19742 msgstr "I<high>"
19743
19744 #. type: Plain text
19745 #: build/C/man7/tcp.7:569
19746 msgid ""
19747 "The maximum number of pages, globally, that TCP will allocate.  This value "
19748 "overrides any other limits imposed by the kernel."
19749 msgstr ""
19750 "TCP がグローバルに割り当てるページ数の最大値。 この値はカーネルによって課され"
19751 "るあらゆる制限よりも優先される。"
19752
19753 #. type: TP
19754 #: build/C/man7/tcp.7:570
19755 #, no-wrap
19756 msgid "I<tcp_mtu_probing> (integer; default: 0; since Linux 2.6.17)"
19757 msgstr "I<tcp_mtu_probing> (integer; default: 0; Linux 2.6.17 以降)"
19758
19759 #.  The following is from 2.6.28-rc4: Documentation/networking/ip-sysctl.txt
19760 #. type: Plain text
19761 #: build/C/man7/tcp.7:575
19762 msgid ""
19763 "This parameter controls TCP Packetization-Layer Path MTU Discovery.  The "
19764 "following values may be assigned to the file:"
19765 msgstr ""
19766 "このパラメータは、TCP のパケット化レイヤの Path MTU discovery を制御する。 こ"
19767 "のファイルには以下の値を設定できる。"
19768
19769 #. type: Plain text
19770 #: build/C/man7/tcp.7:578
19771 msgid "Disabled"
19772 msgstr "無効にする。"
19773
19774 #. type: Plain text
19775 #: build/C/man7/tcp.7:580
19776 msgid "Disabled by default, enabled when an ICMP black hole detected"
19777 msgstr ""
19778 "デフォルトでは無効だが、ICMP ブラックホールが検出された場合は有効にする。"
19779
19780 #. type: Plain text
19781 #: build/C/man7/tcp.7:583
19782 msgid "Always enabled, use initial MSS of I<tcp_base_mss>."
19783 msgstr "常に有効にする。 MSS の初期値として I<tcp_base_mss> が使用される。"
19784
19785 #. type: TP
19786 #: build/C/man7/tcp.7:584
19787 #, no-wrap
19788 msgid "I<tcp_no_metrics_save> (Boolean; default: disabled; since Linux 2.6.6)"
19789 msgstr "I<tcp_no_metrics_save> (Boolean; default: disabled; Linux 2.6.6 以降)"
19790
19791 #.  The following is from 2.6.28-rc4: Documentation/networking/ip-sysctl.txt
19792 #. type: Plain text
19793 #: build/C/man7/tcp.7:595
19794 msgid ""
19795 "By default, TCP saves various connection metrics in the route cache when the "
19796 "connection closes, so that connections established in the near future can "
19797 "use these to set initial conditions.  Usually, this increases overall "
19798 "performance, but it may sometimes cause performance degradation.  If "
19799 "I<tcp_no_metrics_save> is enabled, TCP will not cache metrics on closing "
19800 "connections."
19801 msgstr ""
19802 "デフォルトでは、TCP は接続クローズ時に各種の接続パラメータを ルートキャッ"
19803 "シュ (route cache) に保存し、近い将来に接続が確立された際に これらの情報を初"
19804 "期状態として使用できるようになっている。 通常は、これにより全体として性能が向"
19805 "上するが、 時として性能の劣化を引き起こすこともある。 I<tcp_no_metrics_save> "
19806 "を有効にすると、TCP は接続クローズ時に接続パラメータをキャッシュ しなくなる。"
19807
19808 #. type: TP
19809 #: build/C/man7/tcp.7:595
19810 #, no-wrap
19811 msgid "I<tcp_orphan_retries> (integer; default: 8; since Linux 2.4)"
19812 msgstr "I<tcp_orphan_retries> (integer; default: 8; Linux 2.4 以降)"
19813
19814 #.  Since 2.3.41
19815 #. type: Plain text
19816 #: build/C/man7/tcp.7:600
19817 msgid ""
19818 "The maximum number of attempts made to probe the other end of a connection "
19819 "which has been closed by our end."
19820 msgstr "こちらからクローズした接続について、 先方をプローブする最大試行数。"
19821
19822 #. type: TP
19823 #: build/C/man7/tcp.7:600
19824 #, no-wrap
19825 msgid "I<tcp_reordering> (integer; default: 3; since Linux 2.4)"
19826 msgstr "I<tcp_reordering> (integer; default: 3; Linux 2.4 以降)"
19827
19828 #.  Since 2.4.0-test7
19829 #. type: Plain text
19830 #: build/C/man7/tcp.7:609
19831 msgid ""
19832 "The maximum a packet can be reordered in a TCP packet stream without TCP "
19833 "assuming packet loss and going into slow start.  It is not advisable to "
19834 "change this number.  This is a packet reordering detection metric designed "
19835 "to minimize unnecessary back off and retransmits provoked by reordering of "
19836 "packets on a connection."
19837 msgstr ""
19838 "TCP パケットストリームでパケット順序の逆転が発生しただけであり、 パケットロス"
19839 "が起こったとはみなさない、パケット数の最大値。 この値を超えてパケットの順序逆"
19840 "転が起こると、パケットロスが生じたと みなし、slow start に入る。 この数値は変"
19841 "更しないほうが良い。 これは、接続中のパケットの並び替えによって生じる 不必要"
19842 "な速度低下や再送を最小化するように設計された、 パケット並び替え (packet "
19843 "reordering) の検知メトリックなのである。"
19844
19845 #. type: TP
19846 #: build/C/man7/tcp.7:609
19847 #, no-wrap
19848 msgid "I<tcp_retrans_collapse> (Boolean; default: enabled; since Linux 2.2)"
19849 msgstr "I<tcp_retrans_collapse> (Boolean; default: enabled; Linux 2.2 以降)"
19850
19851 #.  Since 2.1.96
19852 #. type: Plain text
19853 #: build/C/man7/tcp.7:613
19854 msgid "Try to send full-sized packets during retransmit."
19855 msgstr "再送の際にフルサイズのパケットを送ろうとする。"
19856
19857 #. type: TP
19858 #: build/C/man7/tcp.7:613
19859 #, no-wrap
19860 msgid "I<tcp_retries1> (integer; default: 3; since Linux 2.2)"
19861 msgstr "I<tcp_retries1> (integer; default: 3; Linux 2.2 以降)"
19862
19863 #.  Since 2.1.43
19864 #. type: Plain text
19865 #: build/C/man7/tcp.7:623
19866 msgid ""
19867 "The number of times TCP will attempt to retransmit a packet on an "
19868 "established connection normally, without the extra effort of getting the "
19869 "network layers involved.  Once we exceed this number of retransmits, we "
19870 "first have the network layer update the route if possible before each new "
19871 "retransmit.  The default is the RFC specified minimum of 3."
19872 msgstr ""
19873 "普通に確立されている接続上に、 TCP がネットワーク層を巻き込まずに再送を試みる"
19874 "回数。 再送がこの回数を越えると、まず最初に、 新しい再送を送る前に可能なら"
19875 "ネットワーク層に経路を更新させる。 デフォルトは RFC が指定している最少数であ"
19876 "る 3。"
19877
19878 #. type: TP
19879 #: build/C/man7/tcp.7:623
19880 #, no-wrap
19881 msgid "I<tcp_retries2> (integer; default: 15; since Linux 2.2)"
19882 msgstr "I<tcp_retries2> (integer; default: 15; Linux 2.2 以降)"
19883
19884 #.  Since 2.1.43
19885 #. type: Plain text
19886 #: build/C/man7/tcp.7:633
19887 msgid ""
19888 "The maximum number of times a TCP packet is retransmitted in established "
19889 "state before giving up.  The default value is 15, which corresponds to a "
19890 "duration of approximately between 13 to 30 minutes, depending on the "
19891 "retransmission timeout.  The RFC\\ 1122 specified minimum limit of 100 "
19892 "seconds is typically deemed too short."
19893 msgstr ""
19894 "確立状態の接続に、この回数 TCP パケットの再送信を 行なってもだめな場合はあき"
19895 "らめる。 デフォルト値は 15 で、これは (再送のタイムアウトに依存するが)  およ"
19896 "そ 13〜30 分程度の期間に対応する。 RFC\\ 1122 は最小の限界を 100 秒と置いてい"
19897 "るが、 これはたいていの場合には短すぎると思われる。"
19898
19899 #. type: TP
19900 #: build/C/man7/tcp.7:633
19901 #, no-wrap
19902 msgid "I<tcp_rfc1337> (Boolean; default: disabled; since Linux 2.2)"
19903 msgstr "I<tcp_rfc1337> (Boolean; default: disabled; Linux 2.2 以降)"
19904
19905 #.  Since 2.1.90
19906 #. type: Plain text
19907 #: build/C/man7/tcp.7:641
19908 msgid ""
19909 "Enable TCP behavior conformant with RFC\\ 1337.  When disabled, if a RST is "
19910 "received in TIME_WAIT state, we close the socket immediately without waiting "
19911 "for the end of the TIME_WAIT period."
19912 msgstr ""
19913 "TCP の動作を RFC\\ 1337 に準拠させる。 無効にすると、TIME_WAIT 状態のときに "
19914 "RST が受信された場合、 TIME_WAIT 期間の終了を待たずにそのソケットを直ちにク"
19915 "ローズする。"
19916
19917 #. type: TP
19918 #: build/C/man7/tcp.7:641
19919 #, no-wrap
19920 msgid "I<tcp_rmem> (since Linux 2.4)"
19921 msgstr "I<tcp_rmem> (Linux 2.4 以降)"
19922
19923 #.  Since 2.4.0-test7
19924 #. type: Plain text
19925 #: build/C/man7/tcp.7:649
19926 msgid ""
19927 "This is a vector of 3 integers: [min, default, max].  These parameters are "
19928 "used by TCP to regulate receive buffer sizes.  TCP dynamically adjusts the "
19929 "size of the receive buffer from the defaults listed below, in the range of "
19930 "these values, depending on memory available in the system."
19931 msgstr ""
19932 "これは 3 つの整数 [min, default, max] からなるベクトル値である。 これらは "
19933 "TCP が受信バッファサイズを調整するために用いられる。 TCP は、システムで利用で"
19934 "きるメモリに応じて、 受信バッファのサイズをこれらの変数の範囲で 以下に示すデ"
19935 "フォルトから動的に調整する。"
19936
19937 #. type: TP
19938 #: build/C/man7/tcp.7:650 build/C/man7/tcp.7:826 build/C/man7/udp.7:145
19939 #, no-wrap
19940 msgid "I<min>"
19941 msgstr "I<min>"
19942
19943 #. type: Plain text
19944 #: build/C/man7/tcp.7:665
19945 msgid ""
19946 "minimum size of the receive buffer used by each TCP socket.  The default "
19947 "value is the system page size.  (On Linux 2.4, the default value is 4K, "
19948 "lowered to B<PAGE_SIZE> bytes in low-memory systems.)  This value is used to "
19949 "ensure that in memory pressure mode, allocations below this size will still "
19950 "succeed.  This is not used to bound the size of the receive buffer declared "
19951 "using B<SO_RCVBUF> on a socket."
19952 msgstr ""
19953 "各 TCP ソケットが用いる受信バッファの最小サイズ。 デフォルト値はシステムの"
19954 "ページサイズである (Linux 2.4 では、デフォルト値は 4K バイトで、 メモリの少な"
19955 "いシステムでは B<PAGE_SIZE> バイトに減らされる)。 この値は、メモリ圧迫モード"
19956 "においても、 このサイズの割り当てが成功することを保証するために用いられる。 "
19957 "これは、 B<SO_RCVBUF> を用いてソケットの最低受信バッファサイズを宣言する際に"
19958 "は用いられない。"
19959
19960 #. type: TP
19961 #: build/C/man7/tcp.7:665 build/C/man7/tcp.7:836
19962 #, no-wrap
19963 msgid "I<default>"
19964 msgstr "I<default>"
19965
19966 #. type: Plain text
19967 #: build/C/man7/tcp.7:679
19968 msgid ""
19969 "the default size of the receive buffer for a TCP socket.  This value "
19970 "overwrites the initial default buffer size from the generic global I<net."
19971 "core.rmem_default> defined for all protocols.  The default value is 87380 "
19972 "bytes.  (On Linux 2.4, this will be lowered to 43689 in low-memory "
19973 "systems.)  If larger receive buffer sizes are desired, this value should be "
19974 "increased (to affect all sockets).  To employ large TCP windows, the I<net."
19975 "ipv4.tcp_window_scaling> must be enabled (default)."
19976 msgstr ""
19977 "TCP ソケットの受信バッファのデフォルトサイズ。 この値は、すべてのプロトコルに"
19978 "対して定義されている、 ジェネリックなグローバルのデフォルトバッファサイズ "
19979 "I<net.core.rmem_default> より優先される。 デフォルト値は 87380 バイトである "
19980 "(Linux 2.4 では、メモリの少ないシステムの場合 43689 まで減らされる)。 大きな"
19981 "受信バッファサイズが必要な場合は、 この値を増やすべきである (すべてのソケット"
19982 "に影響する)。 大きな TCP ウィンドウを用いるには、 I<net.ipv4."
19983 "tcp_window_scaling> を有効にしておかなければならない (デフォルトは有効)。"
19984
19985 #. type: TP
19986 #: build/C/man7/tcp.7:679 build/C/man7/tcp.7:850 build/C/man7/udp.7:157
19987 #, no-wrap
19988 msgid "I<max>"
19989 msgstr "I<max>"
19990
19991 #. type: Plain text
19992 #: build/C/man7/tcp.7:688
19993 msgid ""
19994 "the maximum size of the receive buffer used by each TCP socket.  This value "
19995 "does not override the global I<net.core.rmem_max>.  This is not used to "
19996 "limit the size of the receive buffer declared using B<SO_RCVBUF> on a "
19997 "socket.  The default value is calculated using the formula"
19998 msgstr ""
19999 "各 TCP ソケットで用いる受信バッファの最大サイズ。 この値よりもグローバルの "
20000 "I<net.core.rmem_max> が優先される。 これは、 B<SO_RCVBUF> を用いてソケットの"
20001 "受信バッファサイズ制限を宣言する際には用いられない。 デフォルト値は以下の式で"
20002 "計算される。"
20003
20004 #. type: Plain text
20005 #: build/C/man7/tcp.7:690
20006 #, no-wrap
20007 msgid "    max(87380, min(4MB, I<tcp_mem>[1]*PAGE_SIZE/128))\n"
20008 msgstr "    max(87380, min(4MB, I<tcp_mem>[1]*PAGE_SIZE/128))\n"
20009
20010 #. type: Plain text
20011 #: build/C/man7/tcp.7:693
20012 msgid ""
20013 "(On Linux 2.4, the default is 87380*2 bytes, lowered to 87380 in low-memory "
20014 "systems)."
20015 msgstr ""
20016 "(Linux 2.4 では、デフォルト値は 87380*2 バイトで、 メモリの少ないシステムで"
20017 "は 87380 まで減らされる。)"
20018
20019 #. type: TP
20020 #: build/C/man7/tcp.7:694
20021 #, no-wrap
20022 msgid "I<tcp_sack> (Boolean; default: enabled; since Linux 2.2)"
20023 msgstr "I<tcp_sack> (Boolean; default: enabled; Linux 2.2 以降)"
20024
20025 #.  Since 2.1.36
20026 #. type: Plain text
20027 #: build/C/man7/tcp.7:698
20028 msgid "Enable RFC\\ 2018 TCP Selective Acknowledgements."
20029 msgstr "RFC\\ 2018 の TCP Selective Acknowledgements を有効にする。"
20030
20031 #. type: TP
20032 #: build/C/man7/tcp.7:698
20033 #, no-wrap
20034 msgid "I<tcp_slow_start_after_idle> (Boolean; default: enabled; since Linux 2.6.18)"
20035 msgstr "I<tcp_slow_start_after_idle> (Boolean; default: enabled; Linux 2.6.18 以降)"
20036
20037 #.  The following is from 2.6.28-rc4: Documentation/networking/ip-sysctl.txt
20038 #. type: Plain text
20039 #: build/C/man7/tcp.7:706
20040 msgid ""
20041 "If enabled, provide RFC 2861 behavior and time out the congestion window "
20042 "after an idle period.  An idle period is defined as the current RTO "
20043 "(retransmission timeout).  If disabled, the congestion window will not be "
20044 "timed out after an idle period."
20045 msgstr ""
20046 "有効にすると、RFC 2861 の動作が行われ、 アイドル時間経過後に輻輳ウィンドウを"
20047 "タイムアウトさせる。 アイドル時間は現在の RTO (再送タイムアウト) で定義され"
20048 "る。 無効にすると、輻輳ウィンドウはアイドル時間経過後もタイムアウトされない。"
20049
20050 #. type: TP
20051 #: build/C/man7/tcp.7:706
20052 #, no-wrap
20053 msgid "I<tcp_stdurg> (Boolean; default: disabled; since Linux 2.2)"
20054 msgstr "I<tcp_stdurg> (Boolean; default: disabled; Linux 2.2 以降)"
20055
20056 #.  Since 2.1.44
20057 #.  RFC 793 was ambiguous in its specification of the meaning of the
20058 #.  urgent pointer.  RFC 1122 (and RFC 961) fixed on a particular
20059 #.  resolution of this ambiguity (unfortunately the "wrong" one).
20060 #. type: Plain text
20061 #: build/C/man7/tcp.7:720
20062 msgid ""
20063 "If this option is enabled, then use the RFC\\ 1122 interpretation of the TCP "
20064 "urgent-pointer field.  According to this interpretation, the urgent pointer "
20065 "points to the last byte of urgent data.  If this option is disabled, then "
20066 "use the BSD-compatible interpretation of the urgent pointer: the urgent "
20067 "pointer points to the first byte after the urgent data.  Enabling this "
20068 "option may lead to interoperability problems."
20069 msgstr ""
20070 "このオプションを有効にすると、 TCP 緊急ポインタ (urgent-pointer)  フィールド"
20071 "を RFC\\ 1122 に従った解釈を行う。 この解釈に従うと、緊急ポインタは緊急データ"
20072 "の最後のバイトを指す。 このオプションを無効にすると、緊急ポインタの解釈が "
20073 "BSD 互換の方法で 行われる: 緊急ポインタは緊急データの後の最初のバイトを指"
20074 "す。 このオプションを有効にすると、相互運用性に問題が生じるかもしれない。"
20075
20076 #. type: TP
20077 #: build/C/man7/tcp.7:720
20078 #, no-wrap
20079 msgid "I<tcp_syn_retries> (integer; default: 5; since Linux 2.2)"
20080 msgstr "I<tcp_syn_retries> (integer; default: 5; Linux 2.2 以降)"
20081
20082 #.  Since 2.1.38
20083 #. type: Plain text
20084 #: build/C/man7/tcp.7:727
20085 msgid ""
20086 "The maximum number of times initial SYNs for an active TCP connection "
20087 "attempt will be retransmitted.  This value should not be higher than 255.  "
20088 "The default value is 5, which corresponds to approximately 180 seconds."
20089 msgstr ""
20090 "アクティブな TCP 接続に初期 SYN の再送を試みる最大回数。 この数値は 255 より"
20091 "も大きくすべきではない。 デフォルトの値は 5 で、およそ 180 秒に対応する。"
20092
20093 #. type: TP
20094 #: build/C/man7/tcp.7:727
20095 #, no-wrap
20096 msgid "I<tcp_synack_retries> (integer; default: 5; since Linux 2.2)"
20097 msgstr "I<tcp_synack_retries> (integer; default: 5; Linux 2.2 以降)"
20098
20099 #.  Since 2.1.38
20100 #. type: Plain text
20101 #: build/C/man7/tcp.7:733
20102 msgid ""
20103 "The maximum number of times a SYN/ACK segment for a passive TCP connection "
20104 "will be retransmitted.  This number should not be higher than 255."
20105 msgstr ""
20106 "passive な TCP 接続の SYN/ACK セグメントで再送を試みる最大数。 この数値は "
20107 "255 よりも大きくすべきではない。"
20108
20109 #. type: TP
20110 #: build/C/man7/tcp.7:733
20111 #, no-wrap
20112 msgid "I<tcp_syncookies> (Boolean; since Linux 2.2)"
20113 msgstr "I<tcp_syncookies> (Boolean; Linux 2.2 以降)"
20114
20115 #.  Since 2.1.43
20116 #. type: Plain text
20117 #: build/C/man7/tcp.7:753
20118 msgid ""
20119 "Enable TCP syncookies.  The kernel must be compiled with "
20120 "B<CONFIG_SYN_COOKIES>.  Send out syncookies when the syn backlog queue of a "
20121 "socket overflows.  The syncookies feature attempts to protect a socket from "
20122 "a SYN flood attack.  This should be used as a last resort, if at all.  This "
20123 "is a violation of the TCP protocol, and conflicts with other areas of TCP "
20124 "such as TCP extensions.  It can cause problems for clients and relays.  It "
20125 "is not recommended as a tuning mechanism for heavily loaded servers to help "
20126 "with overloaded or misconfigured conditions.  For recommended alternatives "
20127 "see I<tcp_max_syn_backlog>, I<tcp_synack_retries>, and "
20128 "I<tcp_abort_on_overflow>."
20129 msgstr ""
20130 "TCP syncookies を有効にする。カーネルは B<CONFIG_SYNCOOKIES> をつけてコンパイ"
20131 "ルしておかなければならない。 ソケットのバックログキューがオーバーフローする"
20132 "と、 syncookies が送信される。 syncookies 機能は、SYN flood 攻撃からソケット"
20133 "を守ろうとする。 これはいずれにしても、最終手段として用いるべきである。 これ"
20134 "は TCP プロトコルに違反しており、 TCP 拡張のような、TCP の他の部分と衝突して"
20135 "しまう。 クライアントやリレーで問題が起こることもある。 過負荷や設定間違いに"
20136 "よって負荷の大きな状態にあるサーバを調整して救うための 機構とみなすべきではな"
20137 "い。 そのような用途には、代わりに I<tcp_max_syn_backlog>, "
20138 "I<tcp_synack_retries>, I<tcp_abort_on_overflow> などの使用を考えること。"
20139
20140 #. type: TP
20141 #: build/C/man7/tcp.7:753
20142 #, no-wrap
20143 msgid "I<tcp_timestamps> (Boolean; default: enabled; since Linux 2.2)"
20144 msgstr "I<tcp_timestamps> (Boolean; default: enabled; Linux 2.2 以降)"
20145
20146 #.  Since 2.1.36
20147 #. type: Plain text
20148 #: build/C/man7/tcp.7:757
20149 msgid "Enable RFC\\ 1323 TCP timestamps."
20150 msgstr "RFC\\ 1323 の TCP timestamps を有効にする。"
20151
20152 #. type: TP
20153 #: build/C/man7/tcp.7:757
20154 #, no-wrap
20155 msgid "I<tcp_tso_win_divisor> (integer; default: 3; since Linux 2.6.9)"
20156 msgstr "I<tcp_tso_win_divisor> (integer; default: 3; Linux 2.6.9 以降)"
20157
20158 #. type: Plain text
20159 #: build/C/man7/tcp.7:763
20160 msgid ""
20161 "This parameter controls what percentage of the congestion window can be "
20162 "consumed by a single TCP Segmentation Offload (TSO) frame.  The setting of "
20163 "this parameter is a tradeoff between burstiness and building larger TSO "
20164 "frames."
20165 msgstr ""
20166 "このパラメータは、一つの TCP Segmentation Offload (TSO) フレームで 消費できる"
20167 "輻輳ウィンドウの割合 (パーセント) を制御する。 バースト性と、どれだけ大きな "
20168 "TSO フレームを構築するかのはトレードオフであり、 このパラメータはその度合いを"
20169 "設定する。"
20170
20171 #. type: TP
20172 #: build/C/man7/tcp.7:763
20173 #, no-wrap
20174 msgid "I<tcp_tw_recycle> (Boolean; default: disabled; since Linux 2.4)"
20175 msgstr "I<tcp_tw_recycle> (Boolean; default: disabled; Linux 2.4 以降)"
20176
20177 #.  Since 2.3.15
20178 #.  The following is from 2.6.12: Documentation/networking/ip-sysctl.txt
20179 #. type: Plain text
20180 #: build/C/man7/tcp.7:772
20181 msgid ""
20182 "Enable fast recycling of TIME_WAIT sockets.  Enabling this option is not "
20183 "recommended since this causes problems when working with NAT (Network "
20184 "Address Translation)."
20185 msgstr ""
20186 "TIME_WAIT ソケットの素早い再利用を有効にする。 このオプションを有効にする"
20187 "と、 NAT (ネットワークアドレス変換) を用いていると問題が生じるので、 あまり推"
20188 "奨しない。"
20189
20190 #. type: TP
20191 #: build/C/man7/tcp.7:772
20192 #, no-wrap
20193 msgid "I<tcp_tw_reuse> (Boolean; default: disabled; since Linux 2.4.19/2.6)"
20194 msgstr "I<tcp_tw_reuse> (Boolean; default: disabled; Linux 2.4.19/2.6 以降)"
20195
20196 #.  Since 2.4.19/2.5.43
20197 #.  The following is from 2.6.12: Documentation/networking/ip-sysctl.txt
20198 #. type: Plain text
20199 #: build/C/man7/tcp.7:780
20200 msgid ""
20201 "Allow to reuse TIME_WAIT sockets for new connections when it is safe from "
20202 "protocol viewpoint.  It should not be changed without advice/request of "
20203 "technical experts."
20204 msgstr ""
20205 "プロトコルの面から見て問題ない場合に新規コネクションに TIME_WAIT 状態のソケッ"
20206 "トを再利用することを許可する。技術的に詳しい人の助言や 要請なしにこのオプショ"
20207 "ンを変更すべきではない。"
20208
20209 #. type: TP
20210 #: build/C/man7/tcp.7:780
20211 #, no-wrap
20212 msgid "I<tcp_vegas_cong_avoid> (Boolean; default: disabled; Linux 2.2 to 2.6.13)"
20213 msgstr "I<tcp_vegas_cong_avoid> (Boolean; default: disabled; Linux 2.2 から 2.6.13 まで)"
20214
20215 #.  Since 2.1.8; removed in 2.6.13
20216 #.  The following is from 2.6.12: Documentation/networking/ip-sysctl.txt
20217 #. type: Plain text
20218 #: build/C/man7/tcp.7:791
20219 msgid ""
20220 "Enable TCP Vegas congestion avoidance algorithm.  TCP Vegas is a sender-side "
20221 "only change to TCP that anticipates the onset of congestion by estimating "
20222 "the bandwidth.  TCP Vegas adjusts the sending rate by modifying the "
20223 "congestion window.  TCP Vegas should provide less packet loss, but it is not "
20224 "as aggressive as TCP Reno."
20225 msgstr ""
20226 "TCP Vegas 輻輳制御アルゴリズムを有効にする。 TCP Vegas は帯域を推測することで"
20227 "輻輳の起こり始めを予想するように TCP の送信側のみに変更を加えたものである。 "
20228 "TCP Vegas は輻輳ウィンドウを修正することで、送信レートを調整する。 TCP Vegas "
20229 "は TCP Reno と比べてパケットロスは少ないが、 TCP Reno ほど積極的な挙動はしな"
20230 "い。"
20231
20232 #. type: TP
20233 #: build/C/man7/tcp.7:791
20234 #, no-wrap
20235 msgid "I<tcp_westwood> (Boolean; default: disabled; Linux 2.4.26/2.6.3 to 2.6.13)"
20236 msgstr "I<tcp_westwood> (Boolean; default: disabled; Linux 2.4.26/2.6.3 から 2.6.13 まで)"
20237
20238 #. type: Plain text
20239 #: build/C/man7/tcp.7:803
20240 msgid ""
20241 "Enable TCP Westwood+ congestion control algorithm.  TCP Westwood+ is a "
20242 "sender-side only modification of the TCP Reno protocol stack that optimizes "
20243 "the performance of TCP congestion control.  It is based on end-to-end "
20244 "bandwidth estimation to set congestion window and slow start threshold after "
20245 "a congestion episode.  Using this estimation, TCP Westwood+ adaptively sets "
20246 "a slow start threshold and a congestion window which takes into account the "
20247 "bandwidth used at the time congestion is experienced.  TCP Westwood+ "
20248 "significantly increases fairness with respect to TCP Reno in wired networks "
20249 "and throughput over wireless links."
20250 msgstr ""
20251 "TCP Westwood+ 輻輳制御アルゴリズムを有効にする。 TCP Westwood+ は TCP 輻輳制"
20252 "御の性能を最適化するように TCP Reno の プロトコルスタックの送信側のみに修正を"
20253 "加えたものである。 輻輳が起こった後で、輻輳ウィンドウや slow start の閾値を "
20254 "通信両端間の帯域の推測に基づいて設定する。 この推測を使って、TCP Westwood+ は"
20255 "輻輳が発生した時に使っていた 帯域を考慮に入れた slow start の閾値と輻輳ウィン"
20256 "ドウを設定する。 TCP Westwood+ は、有線ネットワークにおける TCP Reno の公平"
20257 "性 (fairness) と、無線リンクでのスループットを大きく向上する。"
20258
20259 #. type: TP
20260 #: build/C/man7/tcp.7:803
20261 #, no-wrap
20262 msgid "I<tcp_window_scaling> (Boolean; default: enabled; since Linux 2.2)"
20263 msgstr "I<tcp_window_scaling> (Boolean; default: enabled; Linux 2.2 以降)"
20264
20265 #.  Since 2.1.36
20266 #. type: Plain text
20267 #: build/C/man7/tcp.7:817
20268 msgid ""
20269 "Enable RFC\\ 1323 TCP window scaling.  This feature allows the use of a "
20270 "large window (E<gt> 64K) on a TCP connection, should the other end support "
20271 "it.  Normally, the 16 bit window length field in the TCP header limits the "
20272 "window size to less than 64K bytes.  If larger windows are desired, "
20273 "applications can increase the size of their socket buffers and the window "
20274 "scaling option will be employed.  If I<tcp_window_scaling> is disabled, TCP "
20275 "will not negotiate the use of window scaling with the other end during "
20276 "connection setup."
20277 msgstr ""
20278 "RFC\\ 1323 の TCP ウィンドウスケーリングを有効にする。 この機能を用いると、接"
20279 "続先が対応していれば、 TCP 接続で大きな (64K 以上の) ウィンドウが使えるように"
20280 "なる。 通常は TCP ヘッダのウインドウ長フィールドは 16 ビットなので、 ウィンド"
20281 "ウサイズは 64K バイト以下に限られる。 もっと大きなウィンドウを使いたい場合"
20282 "は、 アプリケーションはソケットバッファのサイズを増やして、 ウィンドウスケー"
20283 "リングのオプションを利用すればよい。 I<tcp_window_scaling> を無効にしている"
20284 "と、 TCP は他端との接続設定の際に、 ウィンドウスケーリングのネゴシエーション"
20285 "を行なわない。"
20286
20287 #. type: TP
20288 #: build/C/man7/tcp.7:817
20289 #, no-wrap
20290 msgid "I<tcp_wmem> (since Linux 2.4)"
20291 msgstr "I<tcp_wmem> (Linux 2.4 以降)"
20292
20293 #.  Since 2.4.0-test7
20294 #. type: Plain text
20295 #: build/C/man7/tcp.7:825
20296 msgid ""
20297 "This is a vector of 3 integers: [min, default, max].  These parameters are "
20298 "used by TCP to regulate send buffer sizes.  TCP dynamically adjusts the size "
20299 "of the send buffer from the default values listed below, in the range of "
20300 "these values, depending on memory available."
20301 msgstr ""
20302 "これは 3 つの整数 [min, default, max] からなるベクトル値である。 これらは "
20303 "TCP が送信バッファサイズを調整するために用いられる。 TCP は、システムで利用で"
20304 "きるメモリに応じて、送信バッファのサイズを これらの変数の範囲で以下に示すデ"
20305 "フォルトから動的に調整する。"
20306
20307 #. type: Plain text
20308 #: build/C/man7/tcp.7:836
20309 msgid ""
20310 "Minimum size of the send buffer used by each TCP socket.  The default value "
20311 "is the system page size.  (On Linux 2.4, the default value is 4K bytes.)  "
20312 "This value is used to ensure that in memory pressure mode, allocations below "
20313 "this size will still succeed.  This is not used to bound the size of the "
20314 "send buffer declared using B<SO_SNDBUF> on a socket."
20315 msgstr ""
20316 "各 TCP ソケットが用いる送信バッファの最小サイズ。 デフォルト値はシステムの"
20317 "ページサイズである (Linux 2.4 では、デフォルト値は 4K である)。 この値は、メ"
20318 "モリ圧迫モードにおいても、 このサイズ以下の割り当てが成功することを保証するた"
20319 "めに用いられる。 これは、 B<SO_SNDBUF> を用いてソケットの最低送信バッファサイ"
20320 "ズを宣言する際には用いられない。"
20321
20322 #.  True in Linux 2.4 and 2.6
20323 #. type: Plain text
20324 #: build/C/man7/tcp.7:850
20325 msgid ""
20326 "The default size of the send buffer for a TCP socket.  This value overwrites "
20327 "the initial default buffer size from the generic global I</proc/sys/net/core/"
20328 "wmem_default> defined for all protocols.  The default value is 16K bytes.  "
20329 "If larger send buffer sizes are desired, this value should be increased (to "
20330 "affect all sockets).  To employ large TCP windows, the I</proc/sys/net/ipv4/"
20331 "tcp_window_scaling> must be set to a nonzero value (default)."
20332 msgstr ""
20333 "TCP ソケットの送信バッファのデフォルトサイズ。 この値は、すべてのプロトコルに"
20334 "対して定義されている、 ジェネリックなグローバルのデフォルトバッファサイズ I</"
20335 "proc/sys/net/core/wmem_default> より優先される。 デフォルト値は 16K バイトで"
20336 "ある。 大きな送信バッファサイズが必要な場合は、 この値を増やすべきである (す"
20337 "べてのソケットに影響する)。 大きな TCP ウィンドウを用いるには、 I</proc/sys/"
20338 "net/ipv4/tcp_window_scaling> を 0 以外の値 (デフォルト値) にしておかなければ"
20339 "ならない。"
20340
20341 #. type: Plain text
20342 #: build/C/man7/tcp.7:859
20343 msgid ""
20344 "The maximum size of the send buffer used by each TCP socket.  This value "
20345 "does not override the value in I</proc/sys/net/core/wmem_max>.  This is not "
20346 "used to limit the size of the send buffer declared using B<SO_SNDBUF> on a "
20347 "socket.  The default value is calculated using the formula"
20348 msgstr ""
20349 "各 TCP ソケットで用いる送信バッファの最大サイズ。 この値よりも I</proc/sys/"
20350 "net/core/wmem_max> が優先される。 これは B<SO_SNDBUF> を用いてソケットの送信"
20351 "バッファサイズ制限を宣言する際には用いられない。 デフォルト値は以下の式で計算"
20352 "される。"
20353
20354 #. type: Plain text
20355 #: build/C/man7/tcp.7:861
20356 #, no-wrap
20357 msgid "    max(65536, min(4MB, I<tcp_mem>[1]*PAGE_SIZE/128))\n"
20358 msgstr "    max(65536, min(4MB, I<tcp_mem>[1]*PAGE_SIZE/128))\n"
20359
20360 #. type: Plain text
20361 #: build/C/man7/tcp.7:864
20362 msgid ""
20363 "(On Linux 2.4, the default value is 128K bytes, lowered 64K depending on low-"
20364 "memory systems.)"
20365 msgstr ""
20366 "(Linux 2.4 では、デフォルト値は 128K バイトで、 メモリの少ないシステムでは "
20367 "64K にまで減らされる。)"
20368
20369 #. type: TP
20370 #: build/C/man7/tcp.7:865
20371 #, no-wrap
20372 msgid "I<tcp_workaround_signed_windows> (Boolean; default: disabled; since Linux 2.6.26)"
20373 msgstr "I<tcp_workaround_signed_windows> (Boolean; default: disabled; Linux 2.6.26 以降)"
20374
20375 #. type: Plain text
20376 #: build/C/man7/tcp.7:871
20377 msgid ""
20378 "If enabled, assume that no receipt of a window-scaling option means that the "
20379 "remote TCP is broken and treats the window as a signed quantity.  If "
20380 "disabled, assume that the remote TCP is not broken even if we do not receive "
20381 "a window scaling option from it."
20382 msgstr ""
20383 "有効にすると、ウィンドウスケーリングオプションを受信しないのは、 接続相手の "
20384 "TCP が壊れていると考え、ウィンドウを符号付きの量とみなす。 無効にすると、接続"
20385 "相手からウィンドウスケーリングオプションを受信しなかった 場合であっても、接続"
20386 "相手の TCP が壊れているとはみなさない。"
20387
20388 #.  or SOL_TCP on Linux
20389 #. type: Plain text
20390 #: build/C/man7/tcp.7:889
20391 msgid ""
20392 "To set or get a TCP socket option, call B<getsockopt>(2)  to read or "
20393 "B<setsockopt>(2)  to write the option with the option level argument set to "
20394 "B<IPPROTO_TCP>.  Unless otherwise noted, I<optval> is a pointer to an "
20395 "I<int>.  In addition, most B<IPPROTO_IP> socket options are valid on TCP "
20396 "sockets.  For more information see B<ip>(7)."
20397 msgstr ""
20398 "TCP ソケットのオプションは、 オプションレベル引数に I<IPPROTO_TCP> を指定し"
20399 "た B<setsockopt>(2)  で設定でき、 B<getsockopt>(2)  で取得できる。 注釈がない"
20400 "限り、 I<optval> は I<int> へのポインタである。 さらに、ほとんどの "
20401 "B<IPPROTO_IP> ソケットオプションも TCP ソケットに対して有効である。詳細は "
20402 "B<ip>(7)  を見よ。"
20403
20404 #. type: TP
20405 #: build/C/man7/tcp.7:889
20406 #, no-wrap
20407 msgid "B<TCP_CONGESTION> (since Linux 2.6.13)"
20408 msgstr "B<TCP_CONGESTION> (Linux 2.6.13 以降)"
20409
20410 #.          commit 5f8ef48d240963093451bcf83df89f1a1364f51d
20411 #.          Author: Stephen Hemminger <shemminger@osdl.org>
20412 #. type: Plain text
20413 #: build/C/man7/tcp.7:905
20414 msgid ""
20415 "The argument for this option is a string.  This option allows the caller to "
20416 "set the TCP congestion control algorithm to be used, on a per-socket basis.  "
20417 "Unprivileged processes are restricted to choosing one of the algorithms in "
20418 "I<tcp_allowed_congestion_control> (described above).  Privileged processes "
20419 "(B<CAP_NET_ADMIN>)  can choose from any of the available congestion-control "
20420 "algorithms (see the description of I<tcp_available_congestion_control> "
20421 "above)."
20422 msgstr ""
20423
20424 #. type: TP
20425 #: build/C/man7/tcp.7:905
20426 #, no-wrap
20427 msgid "B<TCP_CORK> (since Linux 2.2)"
20428 msgstr "B<TCP_CORK> (Linux 2.2 以降)"
20429
20430 #.  precisely: since 2.1.127
20431 #. type: Plain text
20432 #: build/C/man7/tcp.7:921
20433 msgid ""
20434 "If set, don't send out partial frames.  All queued partial frames are sent "
20435 "when the option is cleared again.  This is useful for prepending headers "
20436 "before calling B<sendfile>(2), or for throughput optimization.  As currently "
20437 "implemented, there is a 200 millisecond ceiling on the time for which output "
20438 "is corked by B<TCP_CORK>.  If this ceiling is reached, then queued data is "
20439 "automatically transmitted.  This option can be combined with B<TCP_NODELAY> "
20440 "only since Linux 2.5.71.  This option should not be used in code intended to "
20441 "be portable."
20442 msgstr ""
20443 "セットされると、 partial フレームを送信しない。 このオプションが解除される"
20444 "と、 キューイングされた partial フレームが送られる。これは B<sendfile>(2)  を"
20445 "呼ぶ前にヘッダを前置したり、 スループットを最適化したい場合に便利である。 現"
20446 "在の実装では、 B<TCP_CORK> で出力を抑えることができる時間の上限は 200 ミリ秒"
20447 "である。 この上限に達すると、キューイングされたデータは自動的に送信される。 "
20448 "Linux 2.5.71 以降においてのみ、このオプションを B<TCP_NODELAY> と同時に用いる"
20449 "ことができる。 移植性の必要なプログラムではこのオプションを用いるべきではな"
20450 "い。"
20451
20452 #. type: TP
20453 #: build/C/man7/tcp.7:921
20454 #, no-wrap
20455 msgid "B<TCP_DEFER_ACCEPT> (since Linux 2.4)"
20456 msgstr "B<TCP_DEFER_ACCEPT> (Linux 2.4 以降)"
20457
20458 #.  Precisely: since 2.3.38
20459 #.  Useful references:
20460 #.  http://www.techrepublic.com/article/take-advantage-of-tcp-ip-options-to-optimize-data-transmission/
20461 #.  http://unix.stackexchange.com/questions/94104/real-world-use-of-tcp-defer-accept
20462 #. type: Plain text
20463 #: build/C/man7/tcp.7:932
20464 msgid ""
20465 "Allow a listener to be awakened only when data arrives on the socket.  Takes "
20466 "an integer value (seconds), this can bound the maximum number of attempts "
20467 "TCP will make to complete the connection.  This option should not be used in "
20468 "code intended to be portable."
20469 msgstr ""
20470 "これを用いると、リスナはデータがソケットに到着した時のみ目覚めるようになる。 "
20471 "整数値 (秒) をとり、 TCP が接続を完了しようと試みる回数を制限できる。 移植性"
20472 "の必要なプログラムではこのオプションを用いるべきではない。"
20473
20474 #. type: TP
20475 #: build/C/man7/tcp.7:932
20476 #, no-wrap
20477 msgid "B<TCP_INFO> (since Linux 2.4)"
20478 msgstr "B<TCP_INFO> (Linux 2.4 以降)"
20479
20480 #. type: Plain text
20481 #: build/C/man7/tcp.7:938
20482 msgid ""
20483 "Used to collect information about this socket.  The kernel returns a "
20484 "I<struct tcp_info> as defined in the file I</usr/include/linux/tcp.h>.  This "
20485 "option should not be used in code intended to be portable."
20486 msgstr ""
20487 "このソケットの情報を収集するのに用いる。 カーネルは I</usr/include/linux/tcp."
20488 "h> ファイルで定義されている I<struct tcp_info> を返す。 移植性の必要なプログ"
20489 "ラムではこのオプションを用いるべきではない。"
20490
20491 #. type: TP
20492 #: build/C/man7/tcp.7:938
20493 #, no-wrap
20494 msgid "B<TCP_KEEPCNT> (since Linux 2.4)"
20495 msgstr "B<TCP_KEEPCNT> (Linux 2.4 以降)"
20496
20497 #.  Precisely: since 2.3.18
20498 #. type: Plain text
20499 #: build/C/man7/tcp.7:945
20500 msgid ""
20501 "The maximum number of keepalive probes TCP should send before dropping the "
20502 "connection.  This option should not be used in code intended to be portable."
20503 msgstr ""
20504 "接続を落とす前に TCP が試みる keepalive プローブの最大回数。 移植性の必要なプ"
20505 "ログラムではこのオプションを用いるべきではない。"
20506
20507 #. type: TP
20508 #: build/C/man7/tcp.7:945
20509 #, no-wrap
20510 msgid "B<TCP_KEEPIDLE> (since Linux 2.4)"
20511 msgstr "B<TCP_KEEPIDLE> (Linux 2.4 以降)"
20512
20513 #.  Precisely: since 2.3.18
20514 #. type: Plain text
20515 #: build/C/man7/tcp.7:954
20516 msgid ""
20517 "The time (in seconds) the connection needs to remain idle before TCP starts "
20518 "sending keepalive probes, if the socket option B<SO_KEEPALIVE> has been set "
20519 "on this socket.  This option should not be used in code intended to be "
20520 "portable."
20521 msgstr ""
20522 "この時間 (秒単位) を越えて接続がアイドル状態に留まっていると、 このソケット"
20523 "に B<SO_KEEPALIVE> ソケットオプションが設定されている場合、 TCP は keepalive "
20524 "プローブを送りはじめる。 移植性の必要なプログラムではこのオプションを用いるべ"
20525 "きではない。"
20526
20527 #. type: TP
20528 #: build/C/man7/tcp.7:954
20529 #, no-wrap
20530 msgid "B<TCP_KEEPINTVL> (since Linux 2.4)"
20531 msgstr "B<TCP_KEEPINTVL> (Linux 2.4 以降)"
20532
20533 #.  Precisely: since 2.3.18
20534 #. type: Plain text
20535 #: build/C/man7/tcp.7:959
20536 msgid ""
20537 "The time (in seconds) between individual keepalive probes.  This option "
20538 "should not be used in code intended to be portable."
20539 msgstr ""
20540 "各 keepalive プローブの間隔 (秒単位)。 移植性の必要なプログラムではこのオプ"
20541 "ションを用いるべきではない。"
20542
20543 #. type: TP
20544 #: build/C/man7/tcp.7:959
20545 #, no-wrap
20546 msgid "B<TCP_LINGER2> (since Linux 2.4)"
20547 msgstr "B<TCP_LINGER2> (Linux 2.4 以降)"
20548
20549 #.  Precisely: since 2.3.41
20550 #. type: Plain text
20551 #: build/C/man7/tcp.7:971
20552 msgid ""
20553 "The lifetime of orphaned FIN_WAIT2 state sockets.  This option can be used "
20554 "to override the system-wide setting in the file I</proc/sys/net/ipv4/"
20555 "tcp_fin_timeout> for this socket.  This is not to be confused with the "
20556 "B<socket>(7)  level option B<SO_LINGER>.  This option should not be used in "
20557 "code intended to be portable."
20558 msgstr ""
20559 "orphan された FIN_WAIT2 状態のソケットの寿命。 このオプションを用いると、シス"
20560 "テム全体に適用されるファイル I</proc/sys/net/ipv4/tcp_fin_timeout> の値を、こ"
20561 "のソケットに対してのみ変更できる。 B<socket>(7)  レベルのオプション "
20562 "B<SO_LINGER> と混同しないこと。 移植性の必要なプログラムではこのオプションを"
20563 "用いるべきではない。"
20564
20565 #. type: TP
20566 #: build/C/man7/tcp.7:971
20567 #, no-wrap
20568 msgid "B<TCP_MAXSEG>"
20569 msgstr "B<TCP_MAXSEG>"
20570
20571 #.  Present in Linux 1.0
20572 #. type: Plain text
20573 #: build/C/man7/tcp.7:981
20574 msgid ""
20575 "The maximum segment size for outgoing TCP packets.  In Linux 2.2 and "
20576 "earlier, and in Linux 2.6.28 and later, if this option is set before "
20577 "connection establishment, it also changes the MSS value announced to the "
20578 "other end in the initial packet.  Values greater than the (eventual) "
20579 "interface MTU have no effect.  TCP will also impose its minimum and maximum "
20580 "bounds over the value provided."
20581 msgstr ""
20582 "送出 TCP パケットの最大セグメントサイズ。 Linux 2.2 以前と Linux\n"
20583 "2.6.28 以降では、このオプションを接続確立の前に設定すると、初期パケット\n"
20584 "で他端にアナウンスする MSS の値も変化する。インターフェースの MTU より\n"
20585 "も大きな (あるいは大きくなってしまった) 値は効果を持たない。 また TCP\n"
20586 "は、この値よりも最小・最大の制限の方を優先する。"
20587
20588 #. type: TP
20589 #: build/C/man7/tcp.7:981
20590 #, no-wrap
20591 msgid "B<TCP_NODELAY>"
20592 msgstr "B<TCP_NODELAY>"
20593
20594 #.  Present in Linux 1.0
20595 #. type: Plain text
20596 #: build/C/man7/tcp.7:998
20597 msgid ""
20598 "If set, disable the Nagle algorithm.  This means that segments are always "
20599 "sent as soon as possible, even if there is only a small amount of data.  "
20600 "When not set, data is buffered until there is a sufficient amount to send "
20601 "out, thereby avoiding the frequent sending of small packets, which results "
20602 "in poor utilization of the network.  This option is overridden by "
20603 "B<TCP_CORK>; however, setting this option forces an explicit flush of "
20604 "pending output, even if B<TCP_CORK> is currently set."
20605 msgstr ""
20606 "設定すると Nagle アルゴリズムを無効にする。 すなわち、データ量が少ない場合で"
20607 "も 各セグメントは可能な限り早く送信される。 設定されていないと、 送信する分だ"
20608 "け溜まるまでデータはバッファされ、 小さなパケットを頻繁に送らずにすみ、 ネッ"
20609 "トワークを有効に利用できる。 このオプションは B<TCP_CORK> により上書きされ"
20610 "る。しかしながら、 B<TCP_CORK> が設定されている場合であっても、このオプション"
20611 "を設定すると、 送信待ちの出力を明示的に掃き出す (flush) ことになる。"
20612
20613 #. type: TP
20614 #: build/C/man7/tcp.7:998
20615 #, no-wrap
20616 msgid "B<TCP_QUICKACK> (since Linux 2.4.4)"
20617 msgstr "B<TCP_QUICKACK> (Linux 2.4.4 以降)"
20618
20619 #. type: Plain text
20620 #: build/C/man7/tcp.7:1013
20621 msgid ""
20622 "Enable quickack mode if set or disable quickack mode if cleared.  In "
20623 "quickack mode, acks are sent immediately, rather than delayed if needed in "
20624 "accordance to normal TCP operation.  This flag is not permanent, it only "
20625 "enables a switch to or from quickack mode.  Subsequent operation of the TCP "
20626 "protocol will once again enter/leave quickack mode depending on internal "
20627 "protocol processing and factors such as delayed ack timeouts occurring and "
20628 "data transfer.  This option should not be used in code intended to be "
20629 "portable."
20630 msgstr ""
20631 "設定されていると quickack モードを有効にし、クリアされると無効にする。 通常"
20632 "の TCP 動作では ack は必要に応じて遅延されるのに対し、 quickack モードでは "
20633 "ack はすぐに送信される。 このフラグは永続的なものではなく、 quickack モードか"
20634 "ら/モードへ切り替えるためのものである。 これ以降の TCP プロトコルの動作によっ"
20635 "ては、 内部のプロトコル処理や、遅延 ack タイムアウトの発生、 データ転送などの"
20636 "要因によって、 再び quickack から出たり入ったりする。 移植性の必要なプログラ"
20637 "ムではこのオプションを用いるべきではない。"
20638
20639 #. type: TP
20640 #: build/C/man7/tcp.7:1013
20641 #, no-wrap
20642 msgid "B<TCP_SYNCNT> (since Linux 2.4)"
20643 msgstr "B<TCP_SYNCNT> (Linux 2.4 以降)"
20644
20645 #.  Precisely: since 2.3.18
20646 #. type: Plain text
20647 #: build/C/man7/tcp.7:1020
20648 msgid ""
20649 "Set the number of SYN retransmits that TCP should send before aborting the "
20650 "attempt to connect.  It cannot exceed 255.  This option should not be used "
20651 "in code intended to be portable."
20652 msgstr ""
20653 "接続の試行を中止させる前に TCP が送る SYN 再送数を設定する。 これは 255 より"
20654 "大きくはできない。 移植性の必要なプログラムではこのオプションを用いるべきでは"
20655 "ない。"
20656
20657 #. type: TP
20658 #: build/C/man7/tcp.7:1020
20659 #, no-wrap
20660 msgid "B<TCP_USER_TIMEOUT> (since Linux 2.6.37)"
20661 msgstr "B<TCP_USER_TIMEOUT> (Linux 2.6.37 以降)"
20662
20663 #.          commit dca43c75e7e545694a9dd6288553f55c53e2a3a3
20664 #.          Author: Jerry Chu <hkchu@google.com>
20665 #.  The following text taken nearly verbatim from Jerry Chu's (excellent)
20666 #.  commit message.
20667 #. type: Plain text
20668 #: build/C/man7/tcp.7:1038
20669 msgid ""
20670 "This option takes an I<unsigned int> as an argument.  When the value is "
20671 "greater than 0, it specifies the maximum amount of time in milliseconds that "
20672 "transmitted data may remain unacknowledged before TCP will forcibly close "
20673 "the corresponding connection and return B<ETIMEDOUT> to the application.  If "
20674 "the option value is specified as 0, TCP will to use the system default."
20675 msgstr ""
20676
20677 #. type: Plain text
20678 #: build/C/man7/tcp.7:1045
20679 msgid ""
20680 "Increasing user timeouts allows a TCP connection to survive extended periods "
20681 "without end-to-end connectivity.  Decreasing user timeouts allows "
20682 "applications to \"fail fast\", if so desired.  Otherwise, failure may take "
20683 "up to 20 minutes with the current system defaults in a normal WAN "
20684 "environment."
20685 msgstr ""
20686
20687 #. type: Plain text
20688 #: build/C/man7/tcp.7:1055
20689 msgid ""
20690 "This option can be set during any state of a TCP connection, but is only "
20691 "effective during the synchronized states of a connection (ESTABLISHED, FIN-"
20692 "WAIT-1, FIN-WAIT-2, CLOSE-WAIT, CLOSING, and LAST-ACK).  Moreover, when used "
20693 "with the TCP keepalive (B<SO_KEEPALIVE>)  option, B<TCP_USER_TIMEOUT> will "
20694 "override keepalive to determine when to close a connection due to keepalive "
20695 "failure."
20696 msgstr ""
20697
20698 #. type: Plain text
20699 #: build/C/man7/tcp.7:1058
20700 msgid ""
20701 "The option has no effect on when TCP retransmits a packet, nor when a "
20702 "keepalive probe is sent."
20703 msgstr ""
20704
20705 #. type: Plain text
20706 #: build/C/man7/tcp.7:1062
20707 msgid ""
20708 "This option, like many others, will be inherited by the socket returned by "
20709 "B<accept>(2), if it was set on the listening socket."
20710 msgstr ""
20711
20712 #. type: Plain text
20713 #: build/C/man7/tcp.7:1065
20714 msgid ""
20715 "Further details on the user timeout feature can be found in RFC\\ 793 and RFC"
20716 "\\ 5482 (\"TCP User Timeout Option\")."
20717 msgstr ""
20718
20719 #. type: TP
20720 #: build/C/man7/tcp.7:1065
20721 #, no-wrap
20722 msgid "B<TCP_WINDOW_CLAMP> (since Linux 2.4)"
20723 msgstr "B<TCP_WINDOW_CLAMP> (Linux 2.4 以降)"
20724
20725 #.  Precisely: since 2.3.41
20726 #. type: Plain text
20727 #: build/C/man7/tcp.7:1072
20728 msgid ""
20729 "Bound the size of the advertised window to this value.  The kernel imposes a "
20730 "minimum size of SOCK_MIN_RCVBUF/2.  This option should not be used in code "
20731 "intended to be portable."
20732 msgstr ""
20733 "広報するウィンドウのサイズをこの値に固定する。 カーネルによって最小サイズは "
20734 "SOCK_MIN_RCVBUF/2 に制限されている。 このオプションは移植性の必要なコードでは"
20735 "用いるべきでない。"
20736
20737 #. type: SS
20738 #: build/C/man7/tcp.7:1072 build/C/man7/unix.7:177
20739 #, no-wrap
20740 msgid "Sockets API"
20741 msgstr "ソケット API"
20742
20743 #. type: Plain text
20744 #: build/C/man7/tcp.7:1081
20745 msgid ""
20746 "TCP provides limited support for out-of-band data, in the form of (a single "
20747 "byte of) urgent data.  In Linux this means if the other end sends newer out-"
20748 "of-band data the older urgent data is inserted as normal data into the "
20749 "stream (even when B<SO_OOBINLINE> is not set).  This differs from BSD-based "
20750 "stacks."
20751 msgstr ""
20752 "TCP は帯域外データ (out-of-band data) を限定的にサポートしており、 (1 バイト"
20753 "の) 緊急データという形である。 つまり Linux においては、 接続先が (新しいやり"
20754 "方の) 帯域外データを送ってきた場合、 (古いやり方の)  緊急データは通常のデータ"
20755 "としてストリームに挿入されることになる (これは B<SO_OOBINLINE> がセットされて"
20756 "いる場合でも同様である)。 これは BSD ベースのスタックとは異なる。"
20757
20758 #. type: Plain text
20759 #: build/C/man7/tcp.7:1088
20760 msgid ""
20761 "Linux uses the BSD compatible interpretation of the urgent pointer field by "
20762 "default.  This violates RFC\\ 1122, but is required for interoperability "
20763 "with other stacks.  It can be changed via I</proc/sys/net/ipv4/tcp_stdurg>."
20764 msgstr ""
20765 "Linux は、デフォルトでは urgent ポインタフィールドの解釈に BSD 互換の方法を用"
20766 "いる。これは RFC\\ 1122 に反しているが、 他のスタックと同時に動作させるにはや"
20767 "むを得ない。これは I</proc/sys/net/ipv4/tcp_stdurg> によって変更できる。"
20768
20769 #. type: Plain text
20770 #: build/C/man7/tcp.7:1093
20771 msgid ""
20772 "It is possible to peek at out-of-band data using the B<recv>(2)  B<MSG_PEEK> "
20773 "flag."
20774 msgstr ""
20775 "B<recv>(2)  の B<MSG_PEEK> フラグを使うと、帯域外データを覗き見することができ"
20776 "る。"
20777
20778 #. type: Plain text
20779 #: build/C/man7/tcp.7:1109
20780 msgid ""
20781 "Since version 2.4, Linux supports the use of B<MSG_TRUNC> in the I<flags> "
20782 "argument of B<recv>(2)  (and B<recvmsg>(2)).  This flag causes the received "
20783 "bytes of data to be discarded, rather than passed back in a caller-supplied "
20784 "buffer.  Since Linux 2.4.4, B<MSG_TRUNC> also has this effect when used in "
20785 "conjunction with B<MSG_OOB> to receive out-of-band data."
20786 msgstr "Linux 2.4 以降では、 B<recv>(2)  (や B<recvmsg>(2))  の I<flags> 引き数に B<MSG_TRUNC> を使うことができる。 このフラグを指定すると、受信データは、呼び出し元から渡されたバッファ にコピーされて返されるのではなく、廃棄されるようになる。 Linux 2.4.4 以降では、 B<MSG_TRUNC> を、帯域外データを受信するための B<MSG_OOB> と組み合わせて使った場合にも、これと同じ効果を持つようになっている。"
20787
20788 #. type: Plain text
20789 #: build/C/man7/tcp.7:1115 build/C/man7/unix.7:290
20790 msgid ""
20791 "The following B<ioctl>(2)  calls return information in I<value>.  The "
20792 "correct syntax is:"
20793 msgstr ""
20794 "以下の B<ioctl>(2) 呼び出しは I<value> に情報を入れて返す。\n"
20795 "正しい書式は以下の通り。"
20796
20797 #. type: Plain text
20798 #: build/C/man7/tcp.7:1120
20799 #, no-wrap
20800 msgid ""
20801 "B<int>I< value>B<;>\n"
20802 "I<error>B< = ioctl(>I<tcp_socket>B<, >I<ioctl_type>B<, &>I<value>B<);>\n"
20803 msgstr ""
20804 "B<int>I< value>B<;>\n"
20805 "I<error>B< = ioctl(>I<tcp_socket>B<, >I<ioctl_type>B<, &>I<value>B<);>\n"
20806
20807 #. type: Plain text
20808 #: build/C/man7/tcp.7:1125
20809 msgid "I<ioctl_type> is one of the following:"
20810 msgstr "I<ioctl_type> は以下のいずれか一つである:"
20811
20812 #. type: TP
20813 #: build/C/man7/tcp.7:1125 build/C/man7/unix.7:300
20814 #, no-wrap
20815 msgid "B<SIOCINQ>"
20816 msgstr "B<SIOCINQ>"
20817
20818 #.  FIXME http://sources.redhat.com/bugzilla/show_bug.cgi?id=12002,
20819 #.  filed 2010-09-10, may cause SIOCINQ to be defined in glibc headers
20820 #.  SIOCOUTQ also has an effect for UNIX domain sockets, but not
20821 #.  quite what userland might expect. It seems to return the number
20822 #.  of bytes allocated for buffers containing pending output.
20823 #.  That number is normally larger than the number of bytes of pending
20824 #.  output. Since this info is, from userland's point of view, imprecise,
20825 #.  and it may well change, probably best not to document this now.
20826 #. type: Plain text
20827 #: build/C/man7/tcp.7:1141 build/C/man7/unix.7:322
20828 msgid ""
20829 "Returns the amount of queued unread data in the receive buffer.  The socket "
20830 "must not be in LISTEN state, otherwise an error (B<EINVAL>)  is returned.  "
20831 "B<SIOCINQ> is defined in I<E<lt>linux/sockios.hE<gt>>.  Alternatively, you "
20832 "can use the synonymous B<FIONREAD>, defined in I<E<lt>sys/ioctl.hE<gt>>."
20833 msgstr ""
20834 "受信バッファのキューにある、まだ読んでいないデータの量を返す。ソケットは\n"
20835 "LISTEN 状態にあってはならず、さもないとエラー (B<EINVAL>) が返る。\n"
20836 "B<SIOCINQ> は I<E<lt>linux/sockios.hE<gt>> で定義されている。\n"
20837 "代わりに、I<E<lt>sys/ioctl.hE<gt>> で定義されている、同義語の B<FIONREAD>\n"
20838 "を使うこともできる。"
20839
20840 #. type: TP
20841 #: build/C/man7/tcp.7:1141
20842 #, no-wrap
20843 msgid "B<SIOCATMARK>"
20844 msgstr "B<SIOCATMARK>"
20845
20846 #. type: Plain text
20847 #: build/C/man7/tcp.7:1146
20848 msgid ""
20849 "Returns true (i.e., I<value> is nonzero) if the inbound data stream is at "
20850 "the urgent mark."
20851 msgstr ""
20852 "受信データストリームが緊急マークの位置であれば、真を返す (つまり I<value> が "
20853 "0 以外)。"
20854
20855 #. type: Plain text
20856 #: build/C/man7/tcp.7:1162
20857 msgid ""
20858 "If the B<SO_OOBINLINE> socket option is set, and B<SIOCATMARK> returns true, "
20859 "then the next read from the socket will return the urgent data.  If the "
20860 "B<SO_OOBINLINE> socket option is not set, and B<SIOCATMARK> returns true, "
20861 "then the next read from the socket will return the bytes following the "
20862 "urgent data (to actually read the urgent data requires the B<recv(MSG_OOB)> "
20863 "flag)."
20864 msgstr ""
20865 "B<SO_OOBINLINE> ソケットオプションが設定されていて、 B<SIOCATMARK> が真を返し"
20866 "た場合、次のソケットからの読み込みでは緊急データが 返される。 "
20867 "B<SO_OOBINLINE> ソケットオプションが設定されておらず、 B<SIOCATMARK> が真を返"
20868 "した場合、次のソケットからの読み込みでは緊急データに 続くデータが返される (実"
20869 "際に緊急データを読み込むには B<recv(MSG_OOB)> とフラグをつける必要がある)。"
20870
20871 #. type: Plain text
20872 #: build/C/man7/tcp.7:1176
20873 msgid ""
20874 "Note that a read never reads across the urgent mark.  If an application is "
20875 "informed of the presence of urgent data via B<select>(2)  (using the "
20876 "I<exceptfds> argument) or through delivery of a B<SIGURG> signal, then it "
20877 "can advance up to the mark using a loop which repeatedly tests B<SIOCATMARK> "
20878 "and performs a read (requesting any number of bytes) as long as "
20879 "B<SIOCATMARK> returns false."
20880 msgstr ""
20881 "データの一回の読み込みでは緊急マークを跨がっての読み込みは行われない。 アプリ"
20882 "ケーションが緊急データの存在を (I<exceptfds> 引き数を使って)  B<select>(2)  "
20883 "経由または B<SIGURG> シグナルの配送を通じて知らされた場合、 B<SIOCATMARK> の"
20884 "チェックと読み込み (何バイト読み込み要求をしてもよい) を B<SIOCATMARK> が偽を"
20885 "返さなくなるまで繰り返し行うことで、緊急マークの位置まで 読み進めることができ"
20886 "る。"
20887
20888 #. type: TP
20889 #: build/C/man7/tcp.7:1176
20890 #, no-wrap
20891 msgid "B<SIOCOUTQ>"
20892 msgstr "B<SIOCOUTQ>"
20893
20894 #.  FIXME http://sources.redhat.com/bugzilla/show_bug.cgi?id=12002,
20895 #.  filed 2010-09-10, may cause SIOCOUTQ to be defined in glibc headers
20896 #. type: Plain text
20897 #: build/C/man7/tcp.7:1192
20898 msgid ""
20899 "Returns the amount of unsent data in the socket send queue.  The socket must "
20900 "not be in LISTEN state, otherwise an error (B<EINVAL>)  is returned.  "
20901 "B<SIOCOUTQ> is defined in I<E<lt>linux/sockios.hE<gt>>.  Alternatively, you "
20902 "can use the synonymous B<TIOCOUTQ>, defined in I<E<lt>sys/ioctl.hE<gt>>."
20903 msgstr ""
20904 "ソケットの送信キューに残っている未送信データの量を返す。ソケットは LISTEN "
20905 "状\n"
20906 "態にあってはならない。 LISTEN 状態の場合にはエラー (B<EINVAL>) となる。\n"
20907 "B<SIOCOUTQ> は I<E<lt>linux/sockios.hE<gt>> で定義されている。\n"
20908 "代わりに、I<E<lt>sys/ioctl.hE<gt>> で定義されている、同義語の B<TIOCOUTQ> "
20909 "を\n"
20910 "使うこともできる。"
20911
20912 #. type: Plain text
20913 #: build/C/man7/tcp.7:1197
20914 msgid ""
20915 "When a network error occurs, TCP tries to resend the packet.  If it doesn't "
20916 "succeed after some time, either B<ETIMEDOUT> or the last received error on "
20917 "this connection is reported."
20918 msgstr ""
20919 "ネットワークエラーが起こると、 TCP はパケットの再送を試みる。 何回かやっても"
20920 "成功しなければ、この接続に対して B<ETIMEOUT> エラーか最後に受信したエラーが返"
20921 "される。"
20922
20923 #. type: Plain text
20924 #: build/C/man7/tcp.7:1208
20925 msgid ""
20926 "Some applications require a quicker error notification.  This can be enabled "
20927 "with the B<IPPROTO_IP> level B<IP_RECVERR> socket option.  When this option "
20928 "is enabled, all incoming errors are immediately passed to the user program.  "
20929 "Use this option with care \\(em it makes TCP less tolerant to routing "
20930 "changes and other normal network conditions."
20931 msgstr ""
20932 "アプリケーションによっては、もっと早くエラーを知らせてほしい場合がある。 これ"
20933 "には B<IPPROTO_IP> レベルの B<IP_RECVERR> ソケットオプションを用いると良い。"
20934 "このオプションが有効になっていると、 到着したエラーはすべてただちにユーザープ"
20935 "ログラムに渡される。 このオプションは慎重に用いること \\(em ルーティングの変"
20936 "更など、 通常ありうるネットワーク状態に対して TCP をより脆弱にしてしまう。"
20937
20938 #. type: TP
20939 #: build/C/man7/tcp.7:1209
20940 #, no-wrap
20941 msgid "B<EAFNOTSUPPORT>"
20942 msgstr "B<EAFNOTSUPPORT>"
20943
20944 #. type: Plain text
20945 #: build/C/man7/tcp.7:1215
20946 msgid "Passed socket address type in I<sin_family> was not B<AF_INET>."
20947 msgstr ""
20948 "I<sin_family> に渡されたソケットアドレスのタイプが B<AF_INET> ではなかった。"
20949
20950 #. type: Plain text
20951 #: build/C/man7/tcp.7:1219
20952 msgid ""
20953 "The other end closed the socket unexpectedly or a read is executed on a shut "
20954 "down socket."
20955 msgstr ""
20956 "接続先が予期しなかったかたちでソケットをクローズした。 またはシャットダウンさ"
20957 "れたソケットに読み込みが実行された。"
20958
20959 #. type: TP
20960 #: build/C/man7/tcp.7:1219
20961 #, no-wrap
20962 msgid "B<ETIMEDOUT>"
20963 msgstr "B<ETIMEDOUT>"
20964
20965 #. type: Plain text
20966 #: build/C/man7/tcp.7:1222
20967 msgid "The other end didn't acknowledge retransmitted data after some time."
20968 msgstr "接続先が、何回かデータを再送しても反応しない。"
20969
20970 #. type: Plain text
20971 #: build/C/man7/tcp.7:1226
20972 msgid ""
20973 "Any errors defined for B<ip>(7)  or the generic socket layer may also be "
20974 "returned for TCP."
20975 msgstr ""
20976 "B<ip>(7)  で定義されているエラーや、ジェネリックなソケット層におけるエラーも "
20977 "TCP に返されることがある。"
20978
20979 #. type: Plain text
20980 #: build/C/man7/tcp.7:1233
20981 msgid ""
20982 "Support for Explicit Congestion Notification, zero-copy B<sendfile>(2), "
20983 "reordering support and some SACK extensions (DSACK) were introduced in 2.4.  "
20984 "Support for forward acknowledgement (FACK), TIME_WAIT recycling, and per-"
20985 "connection keepalive socket options were introduced in 2.3."
20986 msgstr ""
20987 "Explicit Congestion Notification、zero-copy の B<sendfile>(2)、 並び替えのサ"
20988 "ポート、SACK 拡張 (DSACK) などのサポートは 2.4 で導入された。 フォワード確認 "
20989 "(FACK)、TIME_WAIT リサイクル、接続ごとの keepalive に対するソケットオプション"
20990 "は 2.3 で導入された。"
20991
20992 #. type: Plain text
20993 #: build/C/man7/tcp.7:1235
20994 msgid "Not all errors are documented."
20995 msgstr "まだ説明されていないエラーがある。"
20996
20997 #.  Only a single Linux kernel version is described
20998 #.  Info for 2.2 was lost. Should be added again,
20999 #.  or put into a separate page.
21000 #.  .SH AUTHORS
21001 #.  This man page was originally written by Andi Kleen.
21002 #.  It was updated for 2.4 by Nivedita Singhvi with input from
21003 #.  Alexey Kuznetsov's Documentation/networking/ip-sysctl.txt
21004 #.  document.
21005 #. type: Plain text
21006 #: build/C/man7/tcp.7:1245
21007 msgid "IPv6 is not described."
21008 msgstr "IPv6 に関する記述がない。"
21009
21010 #. type: Plain text
21011 #: build/C/man7/tcp.7:1257
21012 msgid ""
21013 "B<accept>(2), B<bind>(2), B<connect>(2), B<getsockopt>(2), B<listen>(2), "
21014 "B<recvmsg>(2), B<sendfile>(2), B<sendmsg>(2), B<socket>(2), B<ip>(7), "
21015 "B<socket>(7)"
21016 msgstr ""
21017 "B<accept>(2), B<bind>(2), B<connect>(2), B<getsockopt>(2), B<listen>(2), "
21018 "B<recvmsg>(2), B<sendfile>(2), B<sendmsg>(2), B<socket>(2), B<ip>(7), "
21019 "B<socket>(7)"
21020
21021 #. type: Plain text
21022 #: build/C/man7/tcp.7:1259
21023 msgid "RFC\\ 793 for the TCP specification."
21024 msgstr "RFC\\ 793: TCP の仕様。"
21025
21026 #. type: Plain text
21027 #: build/C/man7/tcp.7:1261
21028 msgid ""
21029 "RFC\\ 1122 for the TCP requirements and a description of the Nagle algorithm."
21030 msgstr "RFC\\ 1122: TCP の要求事項と Nagle アルゴリズムの記述。"
21031
21032 #. type: Plain text
21033 #: build/C/man7/tcp.7:1263
21034 msgid "RFC\\ 1323 for TCP timestamp and window scaling options."
21035 msgstr "RFC\\ 1323: TCP のタイムスタンプ・ウィンドウスケーリング各オプション。"
21036
21037 #. type: Plain text
21038 #: build/C/man7/tcp.7:1265
21039 msgid "RFC\\ 1337 for a description of TIME_WAIT assassination hazards."
21040 msgstr "RFC\\ 1337: TIME_WAIT assassination hazard に関する説明。"
21041
21042 #. type: Plain text
21043 #: build/C/man7/tcp.7:1267
21044 msgid "RFC\\ 3168 for a description of Explicit Congestion Notification."
21045 msgstr "RFC\\ 3168: Explicit Congestion Notification に関する説明。"
21046
21047 #. type: Plain text
21048 #: build/C/man7/tcp.7:1269
21049 msgid "RFC\\ 2581 for TCP congestion control algorithms."
21050 msgstr "RFC\\ 2581: TCP 輻輳制御アルゴリズム。"
21051
21052 #. type: Plain text
21053 #: build/C/man7/tcp.7:1271
21054 msgid "RFC\\ 2018 and RFC\\ 2883 for SACK and extensions to SACK."
21055 msgstr "RFC\\ 2018 と RFC\\ 2883: SACK とその拡張。"
21056
21057 #. type: TH
21058 #: build/C/man7/udp.7:12
21059 #, no-wrap
21060 msgid "UDP"
21061 msgstr "UDP"
21062
21063 #. type: TH
21064 #: build/C/man7/udp.7:12
21065 #, no-wrap
21066 msgid "2013-07-31"
21067 msgstr "2013-07-31"
21068
21069 #. type: Plain text
21070 #: build/C/man7/udp.7:15
21071 msgid "udp - User Datagram Protocol for IPv4"
21072 msgstr "udp - IPv4 の ユーザーデータグラムプロトコル"
21073
21074 #. type: Plain text
21075 #: build/C/man7/udp.7:21
21076 msgid "B<#include E<lt>netinet/udp.hE<gt>>"
21077 msgstr "B<#include E<lt>netinet/udp.hE<gt>>"
21078
21079 #. type: Plain text
21080 #: build/C/man7/udp.7:23
21081 msgid "B<udp_socket = socket(AF_INET, SOCK_DGRAM, 0);>"
21082 msgstr "B<udp_socket = socket(AF_INET, SOCK_DGRAM, 0);>"
21083
21084 #. type: Plain text
21085 #: build/C/man7/udp.7:29
21086 msgid ""
21087 "This is an implementation of the User Datagram Protocol described in RFC\\ "
21088 "768.  It implements a connectionless, unreliable datagram packet service.  "
21089 "Packets may be reordered or duplicated before they arrive.  UDP generates "
21090 "and checks checksums to catch transmission errors."
21091 msgstr ""
21092 "これは RFC\\ 768 で記述されている User Datagram Protocol の実装である。 UDP "
21093 "はコネクションレスの、信頼性の低いデータパケットサービスである。 パケットは到"
21094 "着前に並び替えられたり複製されたりする。 UDP は転送エラーを検出するために"
21095 "チェックサムを生成・チェックする。"
21096
21097 #. type: Plain text
21098 #: build/C/man7/udp.7:58
21099 msgid ""
21100 "When a UDP socket is created, its local and remote addresses are "
21101 "unspecified.  Datagrams can be sent immediately using B<sendto>(2)  or "
21102 "B<sendmsg>(2)  with a valid destination address as an argument.  When "
21103 "B<connect>(2)  is called on the socket, the default destination address is "
21104 "set and datagrams can now be sent using B<send>(2)  or B<write>(2)  without "
21105 "specifying a destination address.  It is still possible to send to other "
21106 "destinations by passing an address to B<sendto>(2)  or B<sendmsg>(2).  In "
21107 "order to receive packets, the socket can be bound to a local address first "
21108 "by using B<bind>(2).  Otherwise the socket layer will automatically assign a "
21109 "free local port out of the range defined by I</proc/sys/net/ipv4/"
21110 "ip_local_port_range> and bind the socket to B<INADDR_ANY>."
21111 msgstr ""
21112 "UDP ソケットが生成されるとき、 ローカルアドレスやリモートアドレスは指定されな"
21113 "い。 正しい行き先アドレスを引数として B<sendto>(2)  や B<sendmsg>(2)  を呼べ"
21114 "ば、データグラムはただちに送信される。 ソケットに対して B<connect>(2)  を呼ぶ"
21115 "と、デフォルトの行き先アドレスが設定され、 B<send>(2)  や B<write>(2)  を使っ"
21116 "て、行き先アドレスの指定なしにデータグラムを送信できるようになる。 この場合で"
21117 "も、行き先アドレスを B<sendto>(2)  や B<sendmsg>(2)  に渡せば、デフォルト以外"
21118 "のアドレスに送信可能である。 パケットを受信するために、まずソケットを B<bind>"
21119 "(2)  を用いてローカルなアドレスにバインドさせることもできる。 そうでない場合"
21120 "は、ソケット層は自動的に I</proc/sys/net/ipv4/ip_local_port_range> で定義され"
21121 "ている範囲の外で空いているローカルなポートを割り当て、 ソケットを "
21122 "B<INADDR_ANY> にバインドする。"
21123
21124 #. type: Plain text
21125 #: build/C/man7/udp.7:66
21126 msgid ""
21127 "All receive operations return only one packet.  When the packet is smaller "
21128 "than the passed buffer, only that much data is returned; when it is bigger, "
21129 "the packet is truncated and the B<MSG_TRUNC> flag is set.  B<MSG_WAITALL> is "
21130 "not supported."
21131 msgstr ""
21132 "受信動作はパケットを一つだけ返す。渡したバッファよりもパケットが 小さければ、"
21133 "そのパケットの大きさのデータだけが返される。 逆にバッファよりも大きい場合はパ"
21134 "ケットは丸められ、 B<MSG_TRUNC> フラグがセットされる。 B<MSG_WAITALL> はサ"
21135 "ポートしていない。"
21136
21137 #. type: Plain text
21138 #: build/C/man7/udp.7:75
21139 msgid ""
21140 "IP options may be sent or received using the socket options described in "
21141 "B<ip>(7).  They are processed by the kernel only when the appropriate I</"
21142 "proc> parameter is enabled (but still passed to the user even when it is "
21143 "turned off).  See B<ip>(7)."
21144 msgstr ""
21145 "IP オプションは、 B<ip>(7)  に記述されているソケットオプションを用いて読み書"
21146 "きできる。 これらは適切な I</proc> パラメータが有効な場合に限ってカーネルに"
21147 "よって処理される (しかし無効になっている場合でもユーザーには渡される)。 B<ip>"
21148 "(7)  を参照のこと。"
21149
21150 #. type: Plain text
21151 #: build/C/man7/udp.7:80
21152 msgid ""
21153 "When the B<MSG_DONTROUTE> flag is set on sending, the destination address "
21154 "must refer to a local interface address and the packet is sent only to that "
21155 "interface."
21156 msgstr ""
21157 "B<MSG_DONTROUTE> フラグが送信時にセットされている場合には、 行き先アドレスは"
21158 "ローカルなインターフェースアドレスから 参照できなければならない。パケットはそ"
21159 "のインターフェースにしか送られない。"
21160
21161 #. type: Plain text
21162 #: build/C/man7/udp.7:98
21163 msgid ""
21164 "By default, Linux UDP does path MTU (Maximum Transmission Unit) discovery.  "
21165 "This means the kernel will keep track of the MTU to a specific target IP "
21166 "address and return B<EMSGSIZE> when a UDP packet write exceeds it.  When "
21167 "this happens, the application should decrease the packet size.  Path MTU "
21168 "discovery can be also turned off using the B<IP_MTU_DISCOVER> socket option "
21169 "or the I</proc/sys/net/ipv4/ip_no_pmtu_disc> file; see B<ip>(7)  for "
21170 "details.  When turned off, UDP will fragment outgoing UDP packets that "
21171 "exceed the interface MTU.  However, disabling it is not recommended for "
21172 "performance and reliability reasons."
21173 msgstr ""
21174 "デフォルトでは、Linux の UDP は Path MTU Discovery を行う。 つまり、カーネル"
21175 "は特定の宛先 IP アドレスの MTU (Maximum Transmission Unit; 最大転送単位) を記"
21176 "録し、UDP パケットの書き込みが MTU を超えた場合 B<EMSGSIZE> を返す。 "
21177 "B<EMSGSIZE> を返された場合、アプリケーションはパケットサイズを小さくすべきで"
21178 "ある。 ソケットオプション B<IP_MTU_DISCOVER> または I</proc/sys/net/ipv4/"
21179 "ip_no_pmtu_disc> ファイルを使って Path MTU Discovery を無効にすることもでき"
21180 "る (詳細は B<ip>(7)  を参照)。 Path MTU Discovery を無効にした場合は、パケッ"
21181 "トサイズが インタフェースの MTU よりも大きいと UDP はそのパケットを フラグメ"
21182 "ント化して送出する。 しかしながら、性能と信頼性の理由から Path MTU Discovery "
21183 "を 無効にするのは推奨できない。"
21184
21185 #. type: Plain text
21186 #: build/C/man7/udp.7:103
21187 msgid "UDP uses the IPv4 I<sockaddr_in> address format described in B<ip>(7)."
21188 msgstr ""
21189 "UDP は IPv4 の I<sockaddr_in> アドレスフォーマットを用いる。これは B<ip>(7)  "
21190 "に記述されている。"
21191
21192 #. type: Plain text
21193 #: build/C/man7/udp.7:114
21194 msgid ""
21195 "All fatal errors will be passed to the user as an error return even when the "
21196 "socket is not connected.  This includes asynchronous errors received from "
21197 "the network.  You may get an error for an earlier packet that was sent on "
21198 "the same socket.  This behavior differs from many other BSD socket "
21199 "implementations which don't pass any errors unless the socket is connected.  "
21200 "Linux's behavior is mandated by B<RFC\\ 1122>."
21201 msgstr ""
21202 "致命的なエラーは、たとえソケットが接続されていなくても、 すべてエラー戻り値と"
21203 "してユーザーに渡される。 これにはネットワークから受け取る非同期エラーも含まれ"
21204 "る。 同じソケットを使って送信した昔のパケットに関するエラーを受け取るかもしれ"
21205 "ない。 この振る舞いは他の BSD ソケットの実装の多くとは異なる。 これらではソ"
21206 "ケットが接続されていない場合はエラーを全く返さない。 Linux の振る舞いは B<RFC"
21207 "\\ 1122> での指定に従ったものである。"
21208
21209 #. type: Plain text
21210 #: build/C/man7/udp.7:128
21211 msgid ""
21212 "For compatibility with legacy code, in Linux 2.0 and 2.2 it was possible to "
21213 "set the B<SO_BSDCOMPAT> B<SOL_SOCKET> option to receive remote errors only "
21214 "when the socket has been connected (except for B<EPROTO> and B<EMSGSIZE>).  "
21215 "Locally generated errors are always passed.  Support for this socket option "
21216 "was removed in later kernels; see B<socket>(7)  for further information."
21217 msgstr ""
21218 "Linux 2.0 と 2.2 では、古いコードとの互換性のために、 B<SO_BSDCOMPAT> "
21219 "B<SOL_SOCKET> オプションを設定すれば、ソケットが接続されている 場合に限ってリ"
21220 "モートのエラーを受信するようにできた (B<EPROTO> と B<EMSGSIZE> を除く)。 ロー"
21221 "カルで生成されたエラーは常に渡される。 このソケットオプションのサポートはそれ"
21222 "以降のバージョンの Linux で 削除された。詳細は B<socket>(7)  を参照。"
21223
21224 #. type: Plain text
21225 #: build/C/man7/udp.7:137
21226 msgid ""
21227 "When the B<IP_RECVERR> option is enabled, all errors are stored in the "
21228 "socket error queue, and can be received by B<recvmsg>(2)  with the "
21229 "B<MSG_ERRQUEUE> flag set."
21230 msgstr ""
21231 "B<IP_RECVERR> オプションが有効になっていると、 すべてのエラーはソケットのエ"
21232 "ラーキューに保存される。 これは B<MSG_ERRQUEUE> フラグをセットして B<recvmsg>"
21233 "(2)  を呼べば受信できる。"
21234
21235 #. type: Plain text
21236 #: build/C/man7/udp.7:140
21237 msgid ""
21238 "System-wide UDP parameter settings can be accessed by files in the directory "
21239 "I</proc/sys/net/ipv4/>."
21240 msgstr ""
21241 "システム全体の UDP パラメータ設定には、 I</proc/sys/net/ipv4/> ディレクトリ内"
21242 "のファイルの読み書きでアクセスできる。"
21243
21244 #. type: TP
21245 #: build/C/man7/udp.7:140
21246 #, no-wrap
21247 msgid "I<udp_mem> (since Linux 2.6.25)"
21248 msgstr "I<udp_mem> (Linux 2.6.25 以降)"
21249
21250 #. type: Plain text
21251 #: build/C/man7/udp.7:144
21252 msgid ""
21253 "This is a vector of three integers governing the number of pages allowed for "
21254 "queueing by all UDP sockets."
21255 msgstr ""
21256 "これは 3 つの整数からなるベクトル値で、 UDP の全ソケットのキューで利用可能な"
21257 "ページ数を制御する。"
21258
21259 #. type: Plain text
21260 #: build/C/man7/udp.7:151
21261 msgid ""
21262 "Below this number of pages, UDP is not bothered about its memory appetite.  "
21263 "When the amount of memory allocated by UDP exceeds this number, UDP starts "
21264 "to moderate memory usage."
21265 msgstr ""
21266 "このページ数より少なければ、UDP はそのメモリ使用に関して 干渉されない。 UDP "
21267 "に割り当てられたメモリ総量がこの値を超過すると、 UDP はメモリ使用量を調整し始"
21268 "める。"
21269
21270 #. type: Plain text
21271 #: build/C/man7/udp.7:157
21272 msgid ""
21273 "This value was introduced to follow the format of I<tcp_mem> (see B<tcp>(7))."
21274 msgstr ""
21275 "この値は I<tcp_mem> の形式 (B<tcp>(7)  参照) と合わせるために導入された"
21276
21277 #. type: Plain text
21278 #: build/C/man7/udp.7:160
21279 msgid "Number of pages allowed for queueing by all UDP sockets."
21280 msgstr "UDP の全ソケットのキューで利用可能なページ数。"
21281
21282 #. type: Plain text
21283 #: build/C/man7/udp.7:164
21284 msgid ""
21285 "Defaults values for these three items are calculated at boot time from the "
21286 "amount of available memory."
21287 msgstr ""
21288 "これらの 3 つの値のデフォルト値は、 ブート時に利用可能なメモリ総量から計算さ"
21289 "れる。"
21290
21291 #. type: TP
21292 #: build/C/man7/udp.7:164
21293 #, no-wrap
21294 msgid "I<udp_rmem_min> (integer; default value: PAGE_SIZE; since Linux 2.6.25)"
21295 msgstr "I<udp_rmem_min> (integer; デフォルト値: PAGE_SIZE; Linux 2.6.25 以降)"
21296
21297 #. type: Plain text
21298 #: build/C/man7/udp.7:171
21299 msgid ""
21300 "Minimal size, in bytes, of receive buffers used by UDP sockets in "
21301 "moderation.  Each UDP socket is able to use the size for receiving data, "
21302 "even if total pages of UDP sockets exceed I<udp_mem> pressure."
21303 msgstr ""
21304 "メモリ使用量の調整中に、UDP ソケットが使用できる受信バッファの最小値 (バイト"
21305 "単位)。 UDP の全ソケットのページ使用量の合計が I<udp_mem> pressure を超過して"
21306 "いる場合であっても、 各 UDP ソケットはデータの受信にこのサイズ分だけは使用す"
21307 "ることができる。"
21308
21309 #. type: TP
21310 #: build/C/man7/udp.7:171
21311 #, no-wrap
21312 msgid "I<udp_wmem_min> (integer; default value: PAGE_SIZE; since Linux 2.6.25)"
21313 msgstr "I<udp_wmem_min> (integer; デフォルト値: PAGE_SIZE; Linux 2.6.25 以降)"
21314
21315 #. type: Plain text
21316 #: build/C/man7/udp.7:178
21317 msgid ""
21318 "Minimal size, in bytes, of send buffer used by UDP sockets in moderation.  "
21319 "Each UDP socket is able to use the size for sending data, even if total "
21320 "pages of UDP sockets exceed I<udp_mem> pressure."
21321 msgstr ""
21322 "メモリ使用量の調整中に、UDP ソケットが使用できる送信バッファの最小値 (バイト"
21323 "単位)。 UDP の全ソケットのページ使用量の合計が I<udp_mem> pressure を超過して"
21324 "いる場合であっても、 各 UDP ソケットはデータの送信にこのサイズ分だけは使用す"
21325 "ることができる。"
21326
21327 #. type: Plain text
21328 #: build/C/man7/udp.7:189
21329 msgid ""
21330 "To set or get a UDP socket option, call B<getsockopt>(2)  to read or "
21331 "B<setsockopt>(2)  to write the option with the option level argument set to "
21332 "B<IPPROTO_UDP>.  Unless otherwise noted, I<optval> is a pointer to an I<int>."
21333 msgstr ""
21334 "UDP ソケットオプションを設定または取得するには、 取得には B<getsockopt>(2)  "
21335 "を、設定には B<setsockopt>(2)  をオプションレベル引数に B<IPPROTO_UDP> を指定"
21336 "して呼び出す。 注釈がない限り、 I<optval> は I<int> へのポインタである。"
21337
21338 #. type: TP
21339 #: build/C/man7/udp.7:189
21340 #, no-wrap
21341 msgid "B<UDP_CORK> (since Linux 2.5.44)"
21342 msgstr "B<UDP_CORK> (Linux 2.5.44 以降)"
21343
21344 #.  FIXME document UDP_ENCAP (new in kernel 2.5.67)
21345 #.  From include/linux/udp.h:
21346 #.  /* UDP encapsulation types */
21347 #.  #define UDP_ENCAP_ESPINUDP_NON_IKE      1 /* draft-ietf-ipsec-nat-t-ike-00/01 */
21348 #.  #define UDP_ENCAP_ESPINUDP      2 /* draft-ietf-ipsec-udp-encaps-06 */
21349 #.  #define UDP_ENCAP_L2TPINUDP     3 /* rfc2661 */
21350 #. type: Plain text
21351 #: build/C/man7/udp.7:202
21352 msgid ""
21353 "If this option is enabled, then all data output on this socket is "
21354 "accumulated into a single datagram that is transmitted when the option is "
21355 "disabled.  This option should not be used in code intended to be portable."
21356 msgstr ""
21357 "このオプションが指定されると、このソケットの全てのデータ出力は 一つのデータグ"
21358 "ラムに蓄積され、このオプションが無効化された時に 送信される。 このオプション"
21359 "は移植性を考慮したコードでは用いるべきではない。"
21360
21361 #. type: Plain text
21362 #: build/C/man7/udp.7:206
21363 msgid "These ioctls can be accessed using B<ioctl>(2).  The correct syntax is:"
21364 msgstr ""
21365 "以下に示す ioctl は B<ioctl>(2)  を使ってアクセスできる。 正しい文法は以下の"
21366 "通り。"
21367
21368 #. type: Plain text
21369 #: build/C/man7/udp.7:211
21370 #, no-wrap
21371 msgid ""
21372 "B<int>I< value>B<;>\n"
21373 "I<error>B< = ioctl(>I<udp_socket>B<, >I<ioctl_type>B<, &>I<value>B<);>\n"
21374 msgstr ""
21375 "B<int>I< value>B<;>\n"
21376 "I<error>B< = ioctl(>I<udp_socket>B<, >I<ioctl_type>B<, &>I<value>B<);>\n"
21377
21378 #. type: TP
21379 #: build/C/man7/udp.7:213
21380 #, no-wrap
21381 msgid "B<FIONREAD> (B<SIOCINQ>)"
21382 msgstr "B<FIONREAD> (B<SIOCINQ>)"
21383
21384 #.  See http://www.securiteam.com/unixfocus/5KP0I15IKO.html
21385 #.  "GNUnet DoS (UDP Socket Unreachable)", 14 May 2006
21386 #. type: Plain text
21387 #: build/C/man7/udp.7:231
21388 msgid ""
21389 "Gets a pointer to an integer as argument.  Returns the size of the next "
21390 "pending datagram in the integer in bytes, or 0 when no datagram is pending.  "
21391 "B<Warning:> Using B<FIONREAD>, it is impossible to distinguish the case "
21392 "where no datagram is pending from the case where the next pending datagram "
21393 "contains zero bytes of data.  It is safer to use B<select>(2), B<poll>(2), "
21394 "or B<epoll>(7)  to distinguish these cases."
21395 msgstr ""
21396 "整数へのポインタを引き数に取り、そのポインタに、次の処理待ちのデータグラム"
21397 "の\n"
21398 "サイズをバイト単位で返す。処理待ちのデータグラムがない場合は 0 を返す。\n"
21399 "B<警告>: B<FIONREAD> を使った場合、処理待ちのデータグラムがない場合と、\n"
21400 "次の処理待ちデータグラムが 0 バイトのデータの場合を区別することができない。\n"
21401 "この両者を区別したい場合は、B<select>(2), B<poll>(2), B<epoll>(7) \n"
21402 "を使う方が安全である。"
21403
21404 #. type: TP
21405 #: build/C/man7/udp.7:231
21406 #, no-wrap
21407 msgid "B<TIOCOUTQ> (B<SIOCOUTQ>)"
21408 msgstr "B<TIOCOUTQ> (B<SIOCOUTQ>)"
21409
21410 #. type: Plain text
21411 #: build/C/man7/udp.7:235
21412 msgid ""
21413 "Returns the number of data bytes in the local send queue.  Only supported "
21414 "with Linux 2.4 and above."
21415 msgstr ""
21416 "ローカル送信キューにあるデータサイズをバイト単位で返す。 Linux 2.4 以上でのみ"
21417 "対応している。"
21418
21419 #. type: Plain text
21420 #: build/C/man7/udp.7:241
21421 msgid ""
21422 "In addition, all ioctls documented in B<ip>(7)  and B<socket>(7)  are "
21423 "supported."
21424 msgstr ""
21425 "さらに、 B<ip>(7)  と B<socket>(7)  で述べられている全ての ioctl も対応してい"
21426 "る。"
21427
21428 #. type: Plain text
21429 #: build/C/man7/udp.7:247
21430 msgid ""
21431 "All errors documented for B<socket>(7)  or B<ip>(7)  may be returned by a "
21432 "send or receive on a UDP socket."
21433 msgstr ""
21434 "B<socket>(7)  や B<ip>(7)  に記述されている全てのエラーが、 UDP ソケットの送"
21435 "受信で返される可能性がある。"
21436
21437 #. type: TP
21438 #: build/C/man7/udp.7:247 build/C/man7/unix.7:327
21439 #, no-wrap
21440 msgid "B<ECONNREFUSED>"
21441 msgstr "B<ECONNREFUSED>"
21442
21443 #. type: Plain text
21444 #: build/C/man7/udp.7:251
21445 msgid ""
21446 "No receiver was associated with the destination address.  This might be "
21447 "caused by a previous packet sent over the socket."
21448 msgstr ""
21449 "行き先アドレスに関連づけられている受信者がいない。 これは以前のパケットがその"
21450 "パケットを 上書き送信してしまっているからであることが多い。"
21451
21452 #.  .SH CREDITS
21453 #.  This man page was written by Andi Kleen.
21454 #. type: Plain text
21455 #: build/C/man7/udp.7:256
21456 msgid "B<IP_RECVERR> is a new feature in Linux 2.2."
21457 msgstr "B<IP_RECVERR> は Linux 2.2 の新しい機能である。"
21458
21459 #. type: Plain text
21460 #: build/C/man7/udp.7:261
21461 msgid "B<ip>(7), B<raw>(7), B<socket>(7), B<udplite>(7)"
21462 msgstr "B<ip>(7), B<raw>(7), B<socket>(7), B<udplite>(7)"
21463
21464 #. type: Plain text
21465 #: build/C/man7/udp.7:263
21466 msgid "RFC\\ 768 for the User Datagram Protocol."
21467 msgstr "RFC\\ 768 : User Datagram Protocol"
21468
21469 #. type: Plain text
21470 #: build/C/man7/udp.7:265
21471 msgid "RFC\\ 1122 for the host requirements."
21472 msgstr "RFC\\ 1122 : ホストの必要条件"
21473
21474 #. type: Plain text
21475 #: build/C/man7/udp.7:267
21476 msgid "RFC\\ 1191 for a description of path MTU discovery."
21477 msgstr "RFC\\ 1191 : path MTU discovery の記述"
21478
21479 #. type: TH
21480 #: build/C/man7/udplite.7:27
21481 #, no-wrap
21482 msgid "UDPLITE"
21483 msgstr "UDPLITE"
21484
21485 #. type: TH
21486 #: build/C/man7/udplite.7:27
21487 #, no-wrap
21488 msgid "2008-12-03"
21489 msgstr "2008-12-03"
21490
21491 #. type: Plain text
21492 #: build/C/man7/udplite.7:30
21493 msgid "udplite - Lightweight User Datagram Protocol"
21494 msgstr "udplite - 軽量なユーザーデータグラムプロトコル"
21495
21496 #. type: Plain text
21497 #: build/C/man7/udplite.7:38
21498 msgid "B<sockfd = socket(AF_INET, SOCK_DGRAM, IPPROTO_UDPLITE);>"
21499 msgstr "B<sockfd = socket(AF_INET, SOCK_DGRAM, IPPROTO_UDPLITE);>"
21500
21501 #. type: Plain text
21502 #: build/C/man7/udplite.7:41
21503 msgid ""
21504 "This is an implementation of the Lightweight User Datagram Protocol (UDP-"
21505 "Lite), as described in RFC\\ 3828."
21506 msgstr ""
21507 "これは RFC\\ 3828 に書かれている軽量なユーザーデータグラムプロトコル "
21508 "(Lightweight User Datagram Protocol; UDP-Lite) の実装である。"
21509
21510 #. type: Plain text
21511 #: build/C/man7/udplite.7:47
21512 msgid ""
21513 "UDP-Lite is an extension of UDP (RFC\\ 768) to support variable-length "
21514 "checksums.  This has advantages for some types of multimedia transport that "
21515 "may be able to make use of slightly damaged datagrams, rather than having "
21516 "them discarded by lower-layer protocols."
21517 msgstr ""
21518 "UDP-Lite は UDP (RFC\\ 768) の拡張で、可変長のチェックサムをサポートしてい"
21519 "る。 このプロトコルが効果を発揮するのは、少しだけ壊れたデータグラムがあった場"
21520 "合に、 そのデータグラムを下位レイヤーのプロトコルに廃棄させるのではなく、 そ"
21521 "れを利用することができるような、ある種のマルチメディア転送においてである。"
21522
21523 #. type: Plain text
21524 #: build/C/man7/udplite.7:53
21525 msgid ""
21526 "The variable-length checksum coverage is set via a B<setsockopt>(2)  "
21527 "option.  If this option is not set, the only difference to UDP is in using a "
21528 "different IP protocol identifier (IANA number 136)."
21529 msgstr ""
21530 "可変長のチェックサムの対象範囲は B<setsockopt>(2)  オプション経由で設定され"
21531 "る。 このオプションが設定されていない場合、UDP と異なるのは 違う IP プロトコ"
21532 "ル識別子 (IANA 番号 136) を使用する点だけである。"
21533
21534 #. type: Plain text
21535 #: build/C/man7/udplite.7:58
21536 msgid ""
21537 "The UDP-Lite implementation is a full extension of B<udp>(7)\\(emthat is, it "
21538 "shares the same API and API behaviour, and in addition offers two socket "
21539 "options to control the checksum coverage."
21540 msgstr ""
21541 "UDP-Lite の実装は B<udp>(7)  の完全な拡張、すなわち API と API の動作は同じで"
21542 "ある。 これに加えて、2 つのソケットオプションがチェックサムの対象範囲を 制御"
21543 "するために提供されている。"
21544
21545 #. type: Plain text
21546 #: build/C/man7/udplite.7:67
21547 msgid ""
21548 "UDP-Litev4 uses the I<sockaddr_in> address format described in B<ip>(7).  "
21549 "UDP-Litev6 uses the I<sockaddr_in6> address format described in B<ipv6>(7)."
21550 msgstr ""
21551 "UDP-Litev4 は B<ip>(7)  で説明されている I<sockaddr_in> アドレスを使用する。 "
21552 "UDP-Litev6 は B<ipv6>(7)  で説明されている I<sockaddr_in6> アドレスを使用す"
21553 "る。"
21554
21555 #. type: Plain text
21556 #: build/C/man7/udplite.7:80
21557 msgid ""
21558 "To set or get a UDP-Lite socket option, call B<getsockopt>(2)  to read or "
21559 "B<setsockopt>(2)  to write the option with the option level argument set to "
21560 "B<IPPROTO_UDPLITE>.  In addition, all B<IPPROTO_UDP> socket options are "
21561 "valid on a UDP-Lite socket.  See B<udp>(7)  for more information."
21562 msgstr ""
21563 "UDP-Lite のソケットオプションを設定/取得するには、 オプションレベル引き数に "
21564 "B<IPPROTO_UDPLITE> を指定して、取得時には B<getsockopt>(2)  を、設定時には "
21565 "B<setsockopt>(2)  を呼び出す。さらに、全ての B<IPPROTO_UDP> のソケットオプ"
21566 "ションが UDP-Lite ソケットでも使用できる。 詳細は B<udp>(7)  を参照のこと。"
21567
21568 #. type: Plain text
21569 #: build/C/man7/udplite.7:82
21570 msgid "The following two options are specific to UDP-Lite."
21571 msgstr "以下の 2 つが UDP-Lite に固有のオプションである。"
21572
21573 #. type: TP
21574 #: build/C/man7/udplite.7:82
21575 #, no-wrap
21576 msgid "B<UDPLITE_SEND_CSCOV>"
21577 msgstr "B<UDPLITE_SEND_CSCOV>"
21578
21579 #. type: Plain text
21580 #: build/C/man7/udplite.7:87
21581 msgid ""
21582 "This option sets the sender checksum coverage and takes an I<int> as "
21583 "argument, with a checksum coverage value in the range 0..2^16-1."
21584 msgstr ""
21585 "このオプションは送信側のチェックサムの対象範囲を設定する。 I<int> 型を引き数"
21586 "として取り、設定可能な値の範囲は 0 から 2^16-1 までである。"
21587
21588 #. type: Plain text
21589 #: build/C/man7/udplite.7:91
21590 msgid ""
21591 "A value of 0 means that the entire datagram is always covered.  Values from "
21592 "1-7 are illegal (RFC\\ 3828, 3.1) and are rounded up to the minimum coverage "
21593 "of 8."
21594 msgstr ""
21595 "値 0 はデータグラム全体が常にチェックサムの対象となることを意味する。 値 1〜"
21596 "7 は不正であり (RFC\\ 3828 の 3.1 章)、範囲の設定として最小値である 8 に切り"
21597 "上げられる。"
21598
21599 #. type: Plain text
21600 #: build/C/man7/udplite.7:97
21601 msgid ""
21602 "With regard to IPv6 jumbograms (RFC\\ 2675), the UDP-Litev6 checksum "
21603 "coverage is limited to the first 2^16-1 octets, as per RFC\\ 3828, 3.5.  "
21604 "Higher values are therefore silently truncated to 2^16-1.  If in doubt, the "
21605 "current coverage value can always be queried using B<getsockopt>(2)."
21606 msgstr ""
21607 "IPv6 の jumbograms (巨大なデータグラム; RFC\\ 2675) の場合には、 UDP-Litev6 "
21608 "のチェックサムの対象範囲は、RFC\\ 3828 の 3.5 章にあるように、 先頭から "
21609 "2^16-1 オクテットまでに限定される。 そのため、それより大きな値は 2^16-1 に"
21610 "黙って切り詰められる。 現在の対象範囲の値を知りたければ、いつでも "
21611 "B<getsockopt>(2)  を使って値を問い合わせることができる。"
21612
21613 #. type: TP
21614 #: build/C/man7/udplite.7:97
21615 #, no-wrap
21616 msgid "B<UDPLITE_RECV_CSCOV>"
21617 msgstr "B<UDPLITE_RECV_CSCOV>"
21618
21619 #. type: Plain text
21620 #: build/C/man7/udplite.7:108
21621 msgid ""
21622 "This is the receiver-side analogue and uses the same argument format and "
21623 "value range as B<UDPLITE_SEND_CSCOV>.  This option is not required to enable "
21624 "traffic with partial checksum coverage.  Its function is that of a traffic "
21625 "filter: when enabled, it instructs the kernel to drop all packets which have "
21626 "a coverage I<less> than the specified coverage value."
21627 msgstr ""
21628 "これは受信側のチェックサムの対象範囲を設定するもので、 使用される引き数形式と"
21629 "値の範囲は B<UDPLITE_SEND_CSCOV> と同じである。 このオプションは、部分的な"
21630 "チェックサム対象範囲を持つトラフィックを 有効にするのに必要なわけではなく、ト"
21631 "ラフィックフィルターとして機能する。 このオプションが有効にすると、カーネルは"
21632 "指定されたチェックサム対象範囲 よりも「短かい」対象範囲を持つパケットを全て廃"
21633 "棄するようになる。"
21634
21635 #.  SO_NO_CHECK exists and is supported by UDPv4, but is
21636 #.  commented out in socket(7), hence also commented out here
21637 #. .PP
21638 #. Since UDP-Lite mandates checksums, checksumming can not be disabled
21639 #. via the
21640 #. .B SO_NO_CHECK
21641 #. option from
21642 #. .BR socket (7).
21643 #. type: Plain text
21644 #: build/C/man7/udplite.7:121
21645 msgid ""
21646 "When the value of B<UDPLITE_RECV_CSCOV> exceeds the actual packet coverage, "
21647 "incoming packets are silently dropped, but may generate a warning message in "
21648 "the system log."
21649 msgstr ""
21650 "B<UDPLITE_RECV_CSCOV> の値が実際のパケットのチェックサム対象範囲よりも大きい"
21651 "場合、 受信したパケットは黙って廃棄される。 ただし、システムログに対して警告"
21652 "メッセージが生成されるかもしれない。"
21653
21654 #. type: Plain text
21655 #: build/C/man7/udplite.7:126
21656 msgid ""
21657 "All errors documented for B<udp>(7)  may be returned.  UDP-Lite does not add "
21658 "further errors."
21659 msgstr ""
21660 "B<udp>(7)  について書かれている全てのエラーは返る可能性がある。 UDP-Lite 自体"
21661 "は新たなエラーは追加していない。"
21662
21663 #. type: Plain text
21664 #: build/C/man7/udplite.7:129
21665 msgid "I</proc/net/snmp> - basic UDP-Litev4 statistics counters."
21666 msgstr "I</proc/net/snmp> - UDP-Litev4 の基本的な統計情報カウンター。"
21667
21668 #. type: Plain text
21669 #: build/C/man7/udplite.7:132
21670 msgid "I</proc/net/snmp6> - basic UDP-Litev6 statistics counters."
21671 msgstr "I</proc/net/snmp6> - UDP-Litev6 の基本的な統計情報カウンター。"
21672
21673 #. type: Plain text
21674 #: build/C/man7/udplite.7:134
21675 msgid "UDP-Litev4/v6 first appeared in Linux 2.6.20."
21676 msgstr "UDP-Litev4/v6 は Linux 2.6.20 で初めて登場した。"
21677
21678 #.  FIXME . remove this section once glibc supports UDP-Lite
21679 #. type: Plain text
21680 #: build/C/man7/udplite.7:137
21681 msgid "Where glibc support is missing, the following definitions are needed:"
21682 msgstr "glibc によるサポートがない場合は、以下の定義を行う必要がある。"
21683
21684 #.  The following two are defined in the kernel in linux/net/udplite.h
21685 #. type: Plain text
21686 #: build/C/man7/udplite.7:144
21687 #, no-wrap
21688 msgid ""
21689 "#define IPPROTO_UDPLITE     136\n"
21690 "#define UDPLITE_SEND_CSCOV  10\n"
21691 "#define UDPLITE_RECV_CSCOV  11\n"
21692 msgstr ""
21693 "#define IPPROTO_UDPLITE     136\n"
21694 "#define UDPLITE_SEND_CSCOV  10\n"
21695 "#define UDPLITE_RECV_CSCOV  11\n"
21696
21697 #. type: Plain text
21698 #: build/C/man7/udplite.7:151
21699 msgid "B<ip>(7), B<ipv6>(7), B<socket>(7), B<udp>(7)"
21700 msgstr "B<ip>(7), B<ipv6>(7), B<socket>(7), B<udp>(7)"
21701
21702 #. type: Plain text
21703 #: build/C/man7/udplite.7:153
21704 msgid "RFC\\ 3828 for the Lightweight User Datagram Protocol (UDP-Lite)."
21705 msgstr "RFC\\ 3828 for the Lightweight User Datagram Protocol (UDP-Lite)."
21706
21707 #. type: Plain text
21708 #: build/C/man7/udplite.7:156
21709 msgid "I<Documentation/networking/udplite.txt> in the Linux kernel source tree"
21710 msgstr "Linux カーネルソース内の I<Documentation/networking/udplite.txt>"
21711
21712 #. type: TH
21713 #: build/C/man7/unix.7:18
21714 #, no-wrap
21715 msgid "UNIX"
21716 msgstr "UNIX"
21717
21718 #. type: Plain text
21719 #: build/C/man7/unix.7:21
21720 msgid "unix - sockets for local interprocess communication"
21721 msgstr "unix - ローカルな プロセス間通信用のソケット"
21722
21723 #. type: Plain text
21724 #: build/C/man7/unix.7:25
21725 msgid "B<#include E<lt>sys/un.hE<gt>>"
21726 msgstr "B<#include E<lt>sys/un.hE<gt>>"
21727
21728 #. type: Plain text
21729 #: build/C/man7/unix.7:27
21730 msgid "I<unix_socket>B< = socket(AF_UNIX, type, 0);>"
21731 msgstr "I<unix_socket>B< = socket(AF_UNIX, type, 0);>"
21732
21733 #. type: Plain text
21734 #: build/C/man7/unix.7:29
21735 msgid "I<error>B< = socketpair(AF_UNIX, type, 0, int *>I<sv>B<);>"
21736 msgstr "I<error>B< = socketpair(AF_UNIX, type, 0, int *>I<sv>B<);>"
21737
21738 #. type: Plain text
21739 #: build/C/man7/unix.7:40
21740 msgid ""
21741 "The B<AF_UNIX> (also known as B<AF_LOCAL>)  socket family is used to "
21742 "communicate between processes on the same machine efficiently.  "
21743 "Traditionally, UNIX domain sockets can be either unnamed, or bound to a "
21744 "filesystem pathname (marked as being of type socket).  Linux also supports "
21745 "an abstract namespace which is independent of the filesystem."
21746 msgstr ""
21747 "B<AF_UNIX> (B<AF_LOCAL> とも言われる) ソケットファミリーは、同じマシン上で\n"
21748 "プロセス同士が 効率的に通信するために用いられる。伝統的に、UNIX ドメイン\n"
21749 "ソケットは、名前なしにもできるし、 (ソケット型であると印のついた) ファイル\n"
21750 "システムのパス名に 結び付けることもできる。さらに Linux では、ファイル\n"
21751 "システムに依存しない抽象名前空間 (abstract namespace) もサポートしている。"
21752
21753 #. type: Plain text
21754 #: build/C/man7/unix.7:52
21755 msgid ""
21756 "Valid types are: B<SOCK_STREAM>, for a stream-oriented socket and "
21757 "B<SOCK_DGRAM>, for a datagram-oriented socket that preserves message "
21758 "boundaries (as on most UNIX implementations, UNIX domain datagram sockets "
21759 "are always reliable and don't reorder datagrams); and (since Linux 2.6.4)  "
21760 "B<SOCK_SEQPACKET>, for a connection-oriented socket that preserves message "
21761 "boundaries and delivers messages in the order that they were sent."
21762 msgstr ""
21763 "有効なタイプを以下に示す。 B<SOCK_STREAM> はストリーム指向のソケットであ"
21764 "る。\n"
21765 "B<SOCK_DGRAM> はメッセージ境界を保存するデータグラム指向のソケットである\n"
21766 "(ほとんどの UNIX の実装では、UNIX ドメイン・データグラム・ソケットは 常に\n"
21767 "信頼でき、データグラムの並び替えは行わない)。 \n"
21768 "B<SOCK_SEQPACKET> はメッセージ境界を保存し、送信された順序でメッセージを\n"
21769 "届ける接続指向ソケット である (Linux 2.6.4 以降で利用できる)。"
21770
21771 #. type: Plain text
21772 #: build/C/man7/unix.7:55
21773 msgid ""
21774 "UNIX domain sockets support passing file descriptors or process credentials "
21775 "to other processes using ancillary data."
21776 msgstr ""
21777 "UNIX ドメインソケットでは、補助データを使って ファイルディスクリプタや\n"
21778 "プロセスの信任状 (credential) を 送受信することもできる。"
21779
21780 #. type: Plain text
21781 #: build/C/man7/unix.7:57
21782 msgid "A UNIX domain socket address is represented in the following structure:"
21783 msgstr "UNIX ドメインソケットのアドレスは以下の構造体で表現される。"
21784
21785 #. type: Plain text
21786 #: build/C/man7/unix.7:61
21787 #, no-wrap
21788 msgid "#define UNIX_PATH_MAX    108\n"
21789 msgstr "#define UNIX_PATH_MAX    108\n"
21790
21791 #. type: Plain text
21792 #: build/C/man7/unix.7:66
21793 #, no-wrap
21794 msgid ""
21795 "struct sockaddr_un {\n"
21796 "    sa_family_t sun_family;               /* AF_UNIX */\n"
21797 "    char        sun_path[UNIX_PATH_MAX];  /* pathname */\n"
21798 "};\n"
21799 msgstr ""
21800 "struct sockaddr_un {\n"
21801 "    sa_family_t sun_family;               /* AF_UNIX */\n"
21802 "    char        sun_path[UNIX_PATH_MAX];  /* pathname */\n"
21803 "};\n"
21804
21805 #. type: Plain text
21806 #: build/C/man7/unix.7:72
21807 msgid "I<sun_family> always contains B<AF_UNIX>."
21808 msgstr "I<sun_family> には必ず B<AF_UNIX> が入っている。"
21809
21810 #. type: Plain text
21811 #: build/C/man7/unix.7:74
21812 msgid "Three types of address are distinguished in this structure:"
21813 msgstr "この構造体では 3 種類のアドレスが区別される。"
21814
21815 #. type: Plain text
21816 #: build/C/man7/unix.7:85
21817 msgid ""
21818 "I<pathname>: a UNIX domain socket can be bound to a null-terminated "
21819 "filesystem pathname using B<bind>(2).  When the address of the socket is "
21820 "returned by B<getsockname>(2), B<getpeername>(2), and B<accept>(2), its "
21821 "length is"
21822 msgstr "I<pathname (パス名)>: B<bind>(2) を使って、UNIX ドメインソケットを NULL 終端されたファイルシステム上の パス名に結び付けることができる。 B<getsockname>(2), B<getpeername>(2), B<accept>(2) がソケットのアドレスを返す際には、その長さは"
21823
21824 #. type: Plain text
21825 #: build/C/man7/unix.7:87
21826 #, no-wrap
21827 msgid "    offsetof(struct sockaddr_un, sun_path) + strlen(sun_path) + 1\n"
21828 msgstr "    offsetof(struct sockaddr_un, sun_path) + strlen(sun_path) + 1\n"
21829
21830 #. type: Plain text
21831 #: build/C/man7/unix.7:91
21832 msgid "and I<sun_path> contains the null-terminated pathname."
21833 msgstr "であり、 I<sun_path> に NULL 終端されたパス名が格納される。"
21834
21835 #.  There is quite some variation across implementations: FreeBSD
21836 #.  says the length is 16 bytes, HP-UX 11 says it's zero bytes.
21837 #. type: Plain text
21838 #: build/C/man7/unix.7:111
21839 msgid ""
21840 "I<unnamed>: A stream socket that has not been bound to a pathname using "
21841 "B<bind>(2)  has no name.  Likewise, the two sockets created by B<socketpair>"
21842 "(2)  are unnamed.  When the address of an unnamed socket is returned by "
21843 "B<getsockname>(2), B<getpeername>(2), and B<accept>(2), its length is "
21844 "I<sizeof(sa_family_t)>, and I<sun_path> should not be inspected."
21845 msgstr ""
21846 "I<unnamed (名前なし)>: B<bind>(2)  を使ってパス名に結び付けることができないス"
21847 "トリーム型のソケットは 名前を持たない。同様に、 B<socketpair>(2)  で作成され"
21848 "る 2 つのソケットも名前を持たない。 B<getsockname>(2), B<getpeername>(2), "
21849 "B<accept>(2)  が名前なしのソケットのアドレスを返す際には、 その長さは "
21850 "I<sizeof(sa_family_t)> であり、 I<sun_path> は検査すべきではない。"
21851
21852 #. type: Plain text
21853 #: build/C/man7/unix.7:137
21854 msgid ""
21855 "I<abstract>: an abstract socket address is distinguished by the fact that "
21856 "I<sun_path[0]> is a null byte (\\(aq\\e0\\(aq).  The socket's address in "
21857 "this namespace is given by the additional bytes in I<sun_path> that are "
21858 "covered by the specified length of the address structure.  (Null bytes in "
21859 "the name have no special significance.)  The name has no connection with "
21860 "filesystem pathnames.  When the address of an abstract socket is returned by "
21861 "B<getsockname>(2), B<getpeername>(2), and B<accept>(2), the returned "
21862 "I<addrlen> is greater than I<sizeof(sa_family_t)> (i.e., greater than 2), "
21863 "and the name of the socket is contained in the first I<(addrlen - sizeof"
21864 "(sa_family_t))> bytes of I<sun_path>.  The abstract socket namespace is a "
21865 "nonportable Linux extension."
21866 msgstr ""
21867 "I<abstract (抽象)>: 抽象ソケットアドレスは、 I<sun_path[0]> が NULL バイト\n"
21868 "(\\(aq\\e0\\(aq) であることで区別される。この名前空間におけるソケットのアドレ"
21869 "ス\n"
21870 "は、 I<sun_path> の残りのバイトの、アドレス構造体の指定された長さの範囲で表"
21871 "さ\n"
21872 "れる (名前中の NULL バイトには特別な意味はない)。この名前はファイルシステム"
21873 "の\n"
21874 "パス名とは何の関係もない。 B<getsockname>(2), B<getpeername>(2),\n"
21875 "B<accept>(2) が抽象ソケットのアドレスを返す際には、返される I<addrlen> は\n"
21876 "I<sizeof(sa_family_t)> より大きく (つまり 2 より大きく)、ソケットの名前は\n"
21877 "I<sun_path> の最初の I<(addrlen - sizeof(sa_family_t))> バイトに格納され"
21878 "る。\n"
21879 "ソケットの抽象名前空間は Linux による拡張であり、移植性はない。"
21880
21881 #. type: Plain text
21882 #: build/C/man7/unix.7:150
21883 msgid ""
21884 "For historical reasons these socket options are specified with a "
21885 "B<SOL_SOCKET> type even though they are B<AF_UNIX> specific.  They can be "
21886 "set with B<setsockopt>(2)  and read with B<getsockopt>(2)  by specifying "
21887 "B<SOL_SOCKET> as the socket family."
21888 msgstr ""
21889 "歴史的な理由により、これらのオプションは たとえ B<AF_UNIX> 固有のオプションで"
21890 "あっても B<SOL_SOCKET> 型で指定する。 ソケットファミリーとして B<SOL_SOCKET> "
21891 "を指定すると、 B<setsockopt>(2)  でオプションが設定でき、 B<getsockopt>(2)  "
21892 "で取得ができる。"
21893
21894 #. type: TP
21895 #: build/C/man7/unix.7:150
21896 #, no-wrap
21897 msgid "B<SO_PASSCRED>"
21898 msgstr "B<SO_PASSCRED>"
21899
21900 #. type: Plain text
21901 #: build/C/man7/unix.7:157
21902 msgid ""
21903 "Enables the receiving of the credentials of the sending process in an "
21904 "ancillary message.  When this option is set and the socket is not yet "
21905 "connected a unique name in the abstract namespace will be generated "
21906 "automatically.  Expects an integer boolean flag."
21907 msgstr ""
21908 "送信プロセスの補助メッセージで信任状を受信できるようにする。このオプション"
21909 "が\n"
21910 "セットされていて、まだソケットが接続されていないと、抽象名前空間に他と重な"
21911 "ら\n"
21912 "ない名前が自動的に生成される。ブール整数値のフラグを取る。"
21913
21914 #. type: SS
21915 #: build/C/man7/unix.7:157
21916 #, no-wrap
21917 msgid "Autobind feature"
21918 msgstr "自動バインド (autobind) 機能"
21919
21920 #.  i.e., sizeof(short)
21921 #. type: Plain text
21922 #: build/C/man7/unix.7:177
21923 msgid ""
21924 "If a B<bind>(2)  call specifies I<addrlen> as I<sizeof(sa_family_t)>, or the "
21925 "B<SO_PASSCRED> socket option was specified for a socket that was not "
21926 "explicitly bound to an address, then the socket is autobound to an abstract "
21927 "address.  The address consists of a null byte followed by 5 bytes in the "
21928 "character set I<[0-9a-f]>.  Thus, there is a limit of 2^20 autobind "
21929 "addresses.  (From Linux 2.1.15, when the autobind feature was added, 8 bytes "
21930 "were used, and the limit was thus 2^32 autobind addresses.  The change to 5 "
21931 "bytes came in Linux 2.3.15.)"
21932 msgstr ""
21933 "B<bind>(2) 呼び出しで I<sizeof(sa_family_t)> として I<addrlen> を指定する"
21934 "か、\n"
21935 "アドレスに明示的にバインドされていないソケットに対して\n"
21936 "B<SO_PASSCRED> ソケットオプションが指定されていた場合、\n"
21937 "そのソケットは抽象アドレスに自動的にバインドされる。\n"
21938 "このアドレスは、1 個の NULL バイトの後に、文字集合 I<[0-9a-f]> のバイトが\n"
21939 "5 個続く形式である。したがって、自動的にバインドされるアドレス数には\n"
21940 "2^20 個という上限が存在する。\n"
21941 "(Linux 2.1.15 以降で、自動バインド機能が追加されたときには、\n"
21942 "8 バイトが使われており、自動バインドアドレス数の上限は 2^32 であった。\n"
21943 "Linux 2.3.15 で 5 バイトに変更された。)"
21944
21945 #. type: Plain text
21946 #: build/C/man7/unix.7:180
21947 msgid ""
21948 "The following paragraphs describe domain-specific details and unsupported "
21949 "features of the sockets API for UNIX domain sockets on Linux."
21950 msgstr ""
21951 "この節では、Linux の UNIX ドメインソケットでの、ドメイン固有の詳細仕様と\n"
21952 "ソケット API でサポートされていない機能について説明する。"
21953
21954 #. type: Plain text
21955 #: build/C/man7/unix.7:188
21956 msgid ""
21957 "UNIX domain sockets do not support the transmission of out-of-band data (the "
21958 "B<MSG_OOB> flag for B<send>(2)  and B<recv>(2))."
21959 msgstr ""
21960 "UNIX ドメインソケットでは、帯域外データ (out-of-band data) の 送信\n"
21961 "(B<send>(2) と B<recv>(2) の B<MSG_OOB> フラグ) はサポートされていない。"
21962
21963 #. type: Plain text
21964 #: build/C/man7/unix.7:193
21965 msgid ""
21966 "The B<send>(2)  B<MSG_MORE> flag is not supported by UNIX domain sockets."
21967 msgstr ""
21968 "B<send>(2) B<MSG_MORE> フラグは UNIX ドメインソケットではサポートされていな"
21969 "い。"
21970
21971 #. type: Plain text
21972 #: build/C/man7/unix.7:201
21973 msgid ""
21974 "The use of B<MSG_TRUNC> in the I<flags> argument of B<recv>(2)  is not "
21975 "supported by UNIX domain sockets."
21976 msgstr ""
21977 "B<recv>(2) の I<flags> 引き数での B<MSG_TRUNC> の使用は UNIX ドメイン\n"
21978 "ソケットではサポートされていない。"
21979
21980 #. type: Plain text
21981 #: build/C/man7/unix.7:213
21982 msgid ""
21983 "The B<SO_SNDBUF> socket option does have an effect for UNIX domain sockets, "
21984 "but the B<SO_RCVBUF> option does not.  For datagram sockets, the "
21985 "B<SO_SNDBUF> value imposes an upper limit on the size of outgoing "
21986 "datagrams.  This limit is calculated as the doubled (see B<socket>(7))  "
21987 "option value less 32 bytes used for overhead."
21988 msgstr ""
21989 "B<SO_SNDBUF> ソケットオプションは UNIX ドメインソケットで効果を持つが、\n"
21990 "B<SO_RCVBUF> は効果がない。 データグラム・ソケットでは、 B<SO_SNDBUF> の値"
21991 "が\n"
21992 "出力データグラムの上限サイズとなる。 実際の上限値は、 B<SO_SNDBUF> オプショ"
21993 "ン\n"
21994 "として設定された値の 2倍 (B<socket>(7) 参照) からオーバヘッドとして使用され"
21995 "る\n"
21996 "32 バイトを引いた値となる。"
21997
21998 #. type: SS
21999 #: build/C/man7/unix.7:213
22000 #, no-wrap
22001 msgid "Ancillary messages"
22002 msgstr "補助メッセージ"
22003
22004 #. type: Plain text
22005 #: build/C/man7/unix.7:235
22006 msgid ""
22007 "Ancillary data is sent and received using B<sendmsg>(2)  and B<recvmsg>(2).  "
22008 "For historical reasons the ancillary message types listed below are "
22009 "specified with a B<SOL_SOCKET> type even though they are B<AF_UNIX> "
22010 "specific.  To send them set the I<cmsg_level> field of the struct I<cmsghdr> "
22011 "to B<SOL_SOCKET> and the I<cmsg_type> field to the type.  For more "
22012 "information see B<cmsg>(3)."
22013 msgstr ""
22014 "補助データを送受するには、 B<sendmsg>(2)  や B<recvmsg>(2)  を使用する。 歴史"
22015 "的な理由により、以下に示す補助メッセージの型は たとえ B<AF_UNIX> 固有のもので"
22016 "あっても B<SOL_SOCKET> 型で指定する。 これらを送るには、構造体 I<cmsghdr> の "
22017 "I<cmsg_level> フィールドに B<SOL_SOCKET> をセットし、 I<cmsg_type> フィールド"
22018 "にタイプをセットする。 詳細は B<cmsg>(3)  を見よ。"
22019
22020 #. type: TP
22021 #: build/C/man7/unix.7:235
22022 #, no-wrap
22023 msgid "B<SCM_RIGHTS>"
22024 msgstr "B<SCM_RIGHTS>"
22025
22026 #. type: Plain text
22027 #: build/C/man7/unix.7:241
22028 msgid ""
22029 "Send or receive a set of open file descriptors from another process.  The "
22030 "data portion contains an integer array of the file descriptors.  The passed "
22031 "file descriptors behave as though they have been created with B<dup>(2)."
22032 msgstr ""
22033 "他のプロセスでオープンされたファイルディスクリプタのセットを送受信する。 デー"
22034 "タ部分にファイルディスクリプタの整数配列が入っている。 渡されたファイルディス"
22035 "クリプタは、あたかも B<dup>(2)  で生成されたかのように振る舞う。"
22036
22037 #. type: TP
22038 #: build/C/man7/unix.7:241
22039 #, no-wrap
22040 msgid "B<SCM_CREDENTIALS>"
22041 msgstr "B<SCM_CREDENTIALS>"
22042
22043 #. type: Plain text
22044 #: build/C/man7/unix.7:251
22045 msgid ""
22046 "Send or receive UNIX credentials.  This can be used for authentication.  The "
22047 "credentials are passed as a I<struct ucred> ancillary message.  Thus "
22048 "structure is defined in I<E<lt>sys/socket.hE<gt>> as follows:"
22049 msgstr ""
22050 "UNIX 信任状を送受信する。これは認証に用いることができる。\n"
22051 "信任状は I<struct ucred> の補助メッセージとして渡される。\n"
22052 "この構造体は I<E<lt>sys/socket.hE<gt>> で以下のように定義されている。"
22053
22054 #. type: Plain text
22055 #: build/C/man7/unix.7:259
22056 #, no-wrap
22057 msgid ""
22058 "struct ucred {\n"
22059 "    pid_t pid;    /* process ID of the sending process */\n"
22060 "    uid_t uid;    /* user ID of the sending process */\n"
22061 "    gid_t gid;    /* group ID of the sending process */\n"
22062 "};\n"
22063 msgstr ""
22064 "struct ucred {\n"
22065 "    pid_t pid;    /* process ID of the sending process */\n"
22066 "    uid_t uid;    /* user ID of the sending process */\n"
22067 "    gid_t gid;    /* group ID of the sending process */\n"
22068 "};\n"
22069
22070 #. type: Plain text
22071 #: build/C/man7/unix.7:268
22072 msgid ""
22073 "Since glibc 2.8, the B<_GNU_SOURCE> feature test macro must be defined "
22074 "(before including I<any> header files) in order to obtain the definition of "
22075 "this structure."
22076 msgstr ""
22077 "glibc 2.8 以降では、この構造体の定義を得るためには\n"
22078 "(I<どの>ヘッダファイルをインクルードするよりも前に)\n"
22079 "機能検査マクロ B<_GNU_SOURCE> を定義しなければならない。"
22080
22081 #. type: Plain text
22082 #: build/C/man7/unix.7:284
22083 msgid ""
22084 "The credentials which the sender specifies are checked by the kernel.  A "
22085 "process with effective user ID 0 is allowed to specify values that do not "
22086 "match its own.  The sender must specify its own process ID (unless it has "
22087 "the capability B<CAP_SYS_ADMIN>), its user ID, effective user ID, or saved "
22088 "set-user-ID (unless it has B<CAP_SETUID>), and its group ID, effective group "
22089 "ID, or saved set-group-ID (unless it has B<CAP_SETGID>).  To receive a "
22090 "I<struct ucred> message the B<SO_PASSCRED> option must be enabled on the "
22091 "socket."
22092 msgstr ""
22093 "送信側が指定した信任状は、カーネルがチェックする。 実効ユーザー ID が 0 のプ"
22094 "ロセスには、 自分自身以外の値を指定する事が許される。 送信側は以下の 3 つを指"
22095 "定しなければならない。 1) 自分自身のプロセス ID (B<CAP_SYS_ADMIN> 権限を持っ"
22096 "ていない場合)、 2) 自分自身のユーザー ID あるいは実効ユーザー ID か保存 set-"
22097 "user-ID (B<CAP_SETUID> 権限を持っていない場合)、 3) 自分自身のグループ ID あ"
22098 "るいは実行グループ ID か保存 set-group-ID (B<CAP_SETGID> を持っていない場"
22099 "合)。 I<struct ucred> メッセージを受信するためには、ソケットに対し "
22100 "B<SO_PASSCRED> オプションを有効にしなくてはならない。"
22101
22102 #. type: Plain text
22103 #: build/C/man7/unix.7:295
22104 #, no-wrap
22105 msgid ""
22106 "B<int>I< value>B<;>\n"
22107 "I<error>B< = ioctl(>I<unix_socket>B<, >I<ioctl_type>B<, &>I<value>B<);>\n"
22108 msgstr ""
22109 "B<int>I< value>B<;>\n"
22110 "I<error>B< = ioctl(>I<unix_socket>B<, >I<ioctl_type>B<, &>I<value>B<);>\n"
22111
22112 #. type: Plain text
22113 #: build/C/man7/unix.7:300
22114 msgid "I<ioctl_type> can be:"
22115 msgstr "I<ioctl_type> には以下を指定できる:"
22116
22117 #. type: Plain text
22118 #: build/C/man7/unix.7:327
22119 msgid ""
22120 "The specified local address is already in use or the filesystem socket "
22121 "object already exists."
22122 msgstr ""
22123 "指定したローカルアドレスが既に使用されているか、ファイルシステムの\n"
22124 "ソケットオブジェクトが既に存在している。"
22125
22126 #. type: Plain text
22127 #: build/C/man7/unix.7:333
22128 msgid ""
22129 "The remote address specified by B<connect>(2)  was not a listening socket.  "
22130 "This error can also occur if the target filename is not a socket."
22131 msgstr ""
22132 "B<connect>(2) により指定されたリモートアドレスが接続待ちソケットではなかっ"
22133 "た。\n"
22134 "ターゲットアドレスがソケットではない場合にもこのエラーが発生する。"
22135
22136 #. type: TP
22137 #: build/C/man7/unix.7:333
22138 #, no-wrap
22139 msgid "B<ECONNRESET>"
22140 msgstr "B<ECONNRESET>"
22141
22142 #. type: Plain text
22143 #: build/C/man7/unix.7:336
22144 msgid "Remote socket was unexpectedly closed."
22145 msgstr "リモートソケットが予期しないかたちでクローズされた。"
22146
22147 #. type: Plain text
22148 #: build/C/man7/unix.7:339
22149 msgid "User memory address was not valid."
22150 msgstr "ユーザーメモリアドレスが不正。"
22151
22152 #. type: Plain text
22153 #: build/C/man7/unix.7:348
22154 msgid ""
22155 "Invalid argument passed.  A common cause is that the value B<AF_UNIX> was "
22156 "not specified in the I<sun_type> field of passed addresses, or the socket "
22157 "was in an invalid state for the applied operation."
22158 msgstr ""
22159 "渡した引数が不正。よくある原因としては、渡したアドレスの I<sun_type> フィー"
22160 "ル\n"
22161 "ドに B<AF_UNIX> が指定されていなかった、行おうとした操作に対してソケットが"
22162 "有\n"
22163 "効な状態ではなかった、など。"
22164
22165 #. type: Plain text
22166 #: build/C/man7/unix.7:353
22167 msgid ""
22168 "B<connect>(2)  called on an already connected socket or a target address was "
22169 "specified on a connected socket."
22170 msgstr ""
22171 "既に接続されているソケットに対して B<connect>(2)  が呼ばれた。または、指定し"
22172 "たターゲットアドレスが 既に接続済みのソケットだった。"
22173
22174 #. type: Plain text
22175 #: build/C/man7/unix.7:358
22176 msgid ""
22177 "The pathname in the remote address specified to B<connect>(2)  did not exist."
22178 msgstr "B<connect>(2) に指定されたリモートアドレスのパス名が存在しなかった。"
22179
22180 #. type: TP
22181 #: build/C/man7/unix.7:358
22182 #, no-wrap
22183 msgid "B<ENOMEM>"
22184 msgstr "B<ENOMEM>"
22185
22186 #. type: Plain text
22187 #: build/C/man7/unix.7:364
22188 msgid ""
22189 "Socket operation needs a target address, but the socket is not connected."
22190 msgstr ""
22191 "ソケット操作にターゲットアドレスが必要だが、 このソケットは接続されていない。"
22192
22193 #. type: Plain text
22194 #: build/C/man7/unix.7:368
22195 msgid ""
22196 "Stream operation called on non-stream oriented socket or tried to use the "
22197 "out-of-band data option."
22198 msgstr ""
22199 "ストリーム指向でないソケットに対してストリーム操作が呼び出された。 または帯域"
22200 "外データオプションを用いようとした。"
22201
22202 #. type: Plain text
22203 #: build/C/man7/unix.7:372
22204 msgid "The sender passed invalid credentials in the I<struct ucred>."
22205 msgstr "送信者が I<struct ucred> に不正な信任状を渡した。"
22206
22207 #. type: Plain text
22208 #: build/C/man7/unix.7:384
22209 msgid ""
22210 "Remote socket was closed on a stream socket.  If enabled, a B<SIGPIPE> is "
22211 "sent as well.  This can be avoided by passing the B<MSG_NOSIGNAL> flag to "
22212 "B<sendmsg>(2)  or B<recvmsg>(2)."
22213 msgstr ""
22214 "リモートソケットがストリームソケット上でクローズされた。 可能な場合は "
22215 "B<SIGPIPE> も同時に送られる。これを避けるには B<MSG_NOSIGNAL> フラグを "
22216 "B<sendmsg>(2)  や B<recvmsg>(2)  に渡す。"
22217
22218 #. type: TP
22219 #: build/C/man7/unix.7:384
22220 #, no-wrap
22221 msgid "B<EPROTONOSUPPORT>"
22222 msgstr "B<EPROTONOSUPPORT>"
22223
22224 #. type: Plain text
22225 #: build/C/man7/unix.7:388
22226 msgid "Passed protocol is not B<AF_UNIX>."
22227 msgstr "渡されたプロトコルが B<AF_UNIX> でない。"
22228
22229 #. type: TP
22230 #: build/C/man7/unix.7:388
22231 #, no-wrap
22232 msgid "B<EPROTOTYPE>"
22233 msgstr "B<EPROTOTYPE>"
22234
22235 #. type: Plain text
22236 #: build/C/man7/unix.7:394
22237 msgid ""
22238 "Remote socket does not match the local socket type (B<SOCK_DGRAM> versus "
22239 "B<SOCK_STREAM>)"
22240 msgstr ""
22241 "リモートソケットとローカルソケットのタイプが一致していなかった "
22242 "(B<SOCK_DGRAM> と B<SOCK_STREAM>)。"
22243
22244 #. type: Plain text
22245 #: build/C/man7/unix.7:397
22246 msgid "Unknown socket type."
22247 msgstr "未知のソケットタイプ。"
22248
22249 #. type: Plain text
22250 #: build/C/man7/unix.7:401
22251 msgid ""
22252 "Other errors can be generated by the generic socket layer or by the "
22253 "filesystem while generating a filesystem socket object.  See the appropriate "
22254 "manual pages for more information."
22255 msgstr ""
22256 "他にも汎用のソケット層でエラーが起こったり、 ファイルシステム上にソケットオブ"
22257 "ジェクトを作ろうとした場合に ファイルシステムのエラーが起こることがある。 そ"
22258 "れぞれの詳細は適切な man ページを参照すること。"
22259
22260 #. type: Plain text
22261 #: build/C/man7/unix.7:407
22262 msgid ""
22263 "B<SCM_CREDENTIALS> and the abstract namespace were introduced with Linux 2.2 "
22264 "and should not be used in portable programs.  (Some BSD-derived systems also "
22265 "support credential passing, but the implementation details differ.)"
22266 msgstr ""
22267 "B<SCM_CREDENTIALS> と抽象名前空間は、Linux 2.2 で導入された。 移植性が必要な"
22268 "プログラムでは使うべきではない。 (BSD 由来のシステムの中にも信任状の送受信を"
22269 "サポートしているものがあるが、 その実装の詳細はシステムによって異なる)"
22270
22271 #. type: Plain text
22272 #: build/C/man7/unix.7:418
22273 msgid ""
22274 "In the Linux implementation, sockets which are visible in the filesystem "
22275 "honor the permissions of the directory they are in.  Their owner, group and "
22276 "their permissions can be changed.  Creation of a new socket will fail if the "
22277 "process does not have write and search (execute) permission on the directory "
22278 "the socket is created in.  Connecting to the socket object requires read/"
22279 "write permission.  This behavior differs from many BSD-derived systems which "
22280 "ignore permissions for UNIX domain sockets.  Portable programs should not "
22281 "rely on this feature for security."
22282 msgstr ""
22283 "Linux の実装では、 ファイルシステム上から見えるソケットは、 それらが置かれて"
22284 "いるディレクトリのパーミッションに従う。 ソケットの所有者、 グループ、 パー"
22285 "ミッションは変更できる。 新しいソケットを作るとき、 作ろうとするディレクトリ"
22286 "に対して プロセスが書き込みと検索 (実行) 権限を持っていなければ、 作成に失敗"
22287 "する。 ソケットオブジェクトに接続するには、 read/write 権限が必要である。 こ"
22288 "の動作は、 多くの BSD 由来のシステムとは異なっている (BSD では UNIX ドメイン"
22289 "ソケットに対してはパーミッションを無視する)。 移植性の必要なプログラムでは、"
22290 "セキュリティをこの仕様に依存してはならない。"
22291
22292 #. type: Plain text
22293 #: build/C/man7/unix.7:426
22294 msgid ""
22295 "Binding to a socket with a filename creates a socket in the filesystem that "
22296 "must be deleted by the caller when it is no longer needed (using B<unlink>"
22297 "(2)).  The usual UNIX close-behind semantics apply; the socket can be "
22298 "unlinked at any time and will be finally removed from the filesystem when "
22299 "the last reference to it is closed."
22300 msgstr ""
22301 "ファイル名を指定してソケットにバインドすると、ファイルシステムにソケットが\n"
22302 "生成される。これは必要なくなったときに呼びだしたユーザーが削除しなければ\n"
22303 "ならない (B<unlink>(2) を用いる)。 UNIX で通常使われる「背後で閉じる方式」\n"
22304 "が適用される。ソケットはいつでも unlink することができ、最後の参照が\n"
22305 "クローズされたときにファイルシステムから削除される。"
22306
22307 #. type: Plain text
22308 #: build/C/man7/unix.7:435
22309 msgid ""
22310 "To pass file descriptors or credentials over a B<SOCK_STREAM>, you need to "
22311 "send or receive at least one byte of nonancillary data in the same B<sendmsg>"
22312 "(2)  or B<recvmsg>(2)  call."
22313 msgstr ""
22314 "B<SOCK_STREAM> 上でファイルディスクリプタや信任状を渡すためには、同じ "
22315 "B<sendmsg>(2)  や B<recvmsg>(2)  コールで補助データ以外のデータを少なくとも "
22316 "1 バイト送信/受信する必要がある。"
22317
22318 #. type: Plain text
22319 #: build/C/man7/unix.7:437
22320 msgid ""
22321 "UNIX domain stream sockets do not support the notion of out-of-band data."
22322 msgstr ""
22323 "UNIX ドメインのストリーム・ソケットでは、 帯域外データの概念はサポートされな"
22324 "い。"
22325
22326 #. type: Plain text
22327 #: build/C/man7/unix.7:440
22328 msgid "See B<bind>(2)."
22329 msgstr "B<bind>(2)  参照。"
22330
22331 #. type: Plain text
22332 #: build/C/man7/unix.7:445
22333 msgid "For an example of the use of B<SCM_RIGHTS> see B<cmsg>(3)."
22334 msgstr "B<SCM_RIGHTS> の使用例については B<cmsg>(3) を参照。"
22335
22336 #. type: Plain text
22337 #: build/C/man7/unix.7:454
22338 msgid ""
22339 "B<recvmsg>(2), B<sendmsg>(2), B<socket>(2), B<socketpair>(2), B<cmsg>(3), "
22340 "B<capabilities>(7), B<credentials>(7), B<socket>(7)"
22341 msgstr ""
22342 "B<recvmsg>(2), B<sendmsg>(2), B<socket>(2), B<socketpair>(2), B<cmsg>(3), "
22343 "B<capabilities>(7), B<credentials>(7), B<socket>(7)"
22344
22345 #. type: TH
22346 #: build/C/man7/x25.7:12
22347 #, no-wrap
22348 msgid "X25"
22349 msgstr "X25"
22350
22351 #. type: Plain text
22352 #: build/C/man7/x25.7:15
22353 msgid "x25 - ITU-T X.25 / ISO-8208 protocol interface."
22354 msgstr "x25 - ITU-T X.25 / ISO-8208 プロトコルインターフェース"
22355
22356 #. type: Plain text
22357 #: build/C/man7/x25.7:19
22358 msgid "B<#include E<lt>linux/x25.hE<gt>>"
22359 msgstr "B<#include E<lt>linux/x25.hE<gt>>"
22360
22361 #. type: Plain text
22362 #: build/C/man7/x25.7:21
22363 msgid "B<x25_socket = socket(AF_X25, SOCK_SEQPACKET, 0);>"
22364 msgstr "B<x25_socket = socket(AF_X25, SOCK_SEQPACKET, 0);>"
22365
22366 #. type: Plain text
22367 #: build/C/man7/x25.7:30
22368 msgid ""
22369 "X25 sockets provide an interface to the X.25 packet layer protocol.  This "
22370 "allows applications to communicate over a public X.25 data network as "
22371 "standardized by International Telecommunication Union's recommendation X.25 "
22372 "(X.25 DTE-DCE mode).  X25 sockets can also be used for communication without "
22373 "an intermediate X.25 network (X.25 DTE-DTE mode) as described in ISO-8208."
22374 msgstr ""
22375 "X25 ソケットは X.25 パケット層プロトコルに対するインターフェースを提供する。 "
22376 "これにより、アプリケーションはパブリックな X.25 データネットワークで 通信する"
22377 "ことができるようになる。 X.25 は International Telecommunication Union's "
22378 "recommendation X.25 (X.25 DTE-DCE mode) で標準化されている。 X25 ソケットは、"
22379 "中間層のない X.25 ネットワーク (X.25 DTE-DTE mode)  での通信にも用いることが"
22380 "できる。 DTE-DTE モードは ISO-8208 に記述されている。"
22381
22382 #. type: Plain text
22383 #: build/C/man7/x25.7:47
22384 msgid ""
22385 "Message boundaries are preserved \\(em a B<read>(2)  from a socket will "
22386 "retrieve the same chunk of data as output with the corresponding B<write>"
22387 "(2)  to the peer socket.  When necessary, the kernel takes care of "
22388 "segmenting and reassembling long messages by means of the X.25 M-bit.  There "
22389 "is no hard-coded upper limit for the message size.  However, reassembling of "
22390 "a long message might fail if there is a temporary lack of system resources "
22391 "or when other constraints (such as socket memory or buffer size limits) "
22392 "become effective.  If that occurs, the X.25 connection will be reset."
22393 msgstr ""
22394 "メッセージ境界は保存される。ソケットからの B<read>(2)  は、反対側のソケットか"
22395 "らの対応する B<write>(2)  と同じ大きさのデータを受け取り、出力する。 必要があ"
22396 "る場合は、カーネルが長いメッセージの 分割 (segmenting) と再構成 "
22397 "(reassembling) を行う。 これには X.25 の M ビットが用いられる。 メッセージサ"
22398 "イズには、ハードコーディングされた上限はない。 しかし、一時的にシステムリソー"
22399 "スが足りなかったり、 他の制約 (ソケットメモリバッファのサイズ制限など) が 効"
22400 "いてしまうと、長いメッセージの再構成には失敗するかもしれない。 この場合、そ"
22401 "の X.25 接続はリセットされることになる。"
22402
22403 #. type: SS
22404 #: build/C/man7/x25.7:47
22405 #, no-wrap
22406 msgid "Socket addresses"
22407 msgstr "ソケットアドレス"
22408
22409 #. type: Plain text
22410 #: build/C/man7/x25.7:54
22411 msgid ""
22412 "The B<AF_X25> socket address family uses the I<struct sockaddr_x25> for "
22413 "representing network addresses as defined in ITU-T recommendation X.121."
22414 msgstr ""
22415 "B<AF_X25> ソケットアドレスファミリーは、ネットワークアドレスを表すために "
22416 "I<struct sockaddr_x25> を用いる。これは ITU-T recommendation X.121 で定義され"
22417 "ている。"
22418
22419 #. type: Plain text
22420 #: build/C/man7/x25.7:61
22421 #, no-wrap
22422 msgid ""
22423 "struct sockaddr_x25 {\n"
22424 "    sa_family_t sx25_family;    /* must be AF_X25 */\n"
22425 "    x25_address sx25_addr;      /* X.121 Address */\n"
22426 "};\n"
22427 msgstr ""
22428 "struct sockaddr_x25 {\n"
22429 "    sa_family_t sx25_family;    /* must be AF_X25 */\n"
22430 "    x25_address sx25_addr;      /* X.121 Address */\n"
22431 "};\n"
22432
22433 #. type: Plain text
22434 #: build/C/man7/x25.7:72
22435 msgid ""
22436 "I<sx25_addr> contains a char array I<x25_addr[]> to be interpreted as a null-"
22437 "terminated string.  I<sx25_addr.x25_addr[]> consists of up to 15 (not "
22438 "counting the terminating null byte) ASCII characters forming the X.121 "
22439 "address.  Only the decimal digit characters from \\(aq0\\(aq to \\(aq9\\(aq "
22440 "are allowed."
22441 msgstr ""
22442 "I<sx25_addr> には char 配列 I<x25_addr[]> を含まれる。これは 0 で終端する文字"
22443 "列として解釈される。 I<sx25_addr.x25_addr[]> は 15 個までの ASCII 文字を含む"
22444 "ことができ (終端のヌルバイトは含まない)、 これが X.121 アドレスをなす。 10 進"
22445 "の数文字、\\(aq0\\(aq から \\(aq9\\(aq までだけが許される。"
22446
22447 #. type: Plain text
22448 #: build/C/man7/x25.7:81
22449 msgid ""
22450 "The following X.25-specific socket options can be set by using B<setsockopt>"
22451 "(2)  and read with B<getsockopt>(2)  with the I<level> argument set to "
22452 "B<SOL_X25>."
22453 msgstr ""
22454 "以下の X.25 特有のソケットオプションは、 B<setsockopt>(2)  で設定でき、 "
22455 "B<getsockopt>(2)  で取得できる。このとき I<level> 引き数には B<SOL_X25> を指"
22456 "定する。"
22457
22458 #. type: TP
22459 #: build/C/man7/x25.7:81
22460 #, no-wrap
22461 msgid "B<X25_QBITINCL>"
22462 msgstr "B<X25_QBITINCL>"
22463
22464 #. type: Plain text
22465 #: build/C/man7/x25.7:100
22466 msgid ""
22467 "Controls whether the X.25 Q-bit (Qualified Data Bit) is accessible by the "
22468 "user.  It expects an integer argument.  If set to 0 (default), the Q-bit is "
22469 "never set for outgoing packets and the Q-bit of incoming packets is "
22470 "ignored.  If set to 1, an additional first byte is prepended to each message "
22471 "read from or written to the socket.  For data read from the socket, a 0 "
22472 "first byte indicates that the Q-bits of the corresponding incoming data "
22473 "packets were not set.  A first byte with value 1 indicates that the Q-bit of "
22474 "the corresponding incoming data packets was set.  If the first byte of the "
22475 "data written to the socket is 1 the Q-bit of the corresponding outgoing data "
22476 "packets will be set.  If the first byte is 0 the Q-bit will not be set."
22477 msgstr ""
22478 "X.25 の Q ビット (Qualified データビット) にユーザーがアクセス できるかどうか"
22479 "をコントロールする。整数の引数を取る。 0 にセットすると、 Q ビットは発信パ"
22480 "ケットには決してセットされず、 受信パケットでは無視される (デフォルト)。 1 に"
22481 "セットすると、ソケットから読む、あるいはソケットに送る メッセージそれぞれに先"
22482 "頭バイトが前置される。 ソケットから読んだデータでは、先頭バイトが 0 だと、 こ"
22483 "の到着データパケットに対応する Q ビットはセットされていなかったことになる。 "
22484 "先頭バイトが 1 だと、到着データパケットの Q ビットがセットされていたことにな"
22485 "る。 ソケットに書き込むデータの先頭バイトが 1 だと、 その発信パケットの Q "
22486 "ビットをセットする。 0 だと、 Q ビットをセットしない。"
22487
22488 #. type: Plain text
22489 #: build/C/man7/x25.7:102
22490 msgid "The AF_X25 protocol family is a new feature of Linux 2.2."
22491 msgstr "AF_X25 プロトコルファミリは Linux 2.2 の新機能である。"
22492
22493 #. type: Plain text
22494 #: build/C/man7/x25.7:105
22495 msgid "Plenty, as the X.25 PLP implementation is B<CONFIG_EXPERIMENTAL>."
22496 msgstr "X.25 PLP 実装は B<CONFIG_EXPERIMENTAL> なので、たくさんあるだろう。"
22497
22498 #. type: Plain text
22499 #: build/C/man7/x25.7:107
22500 msgid "This man page is incomplete."
22501 msgstr "この man ページは完成していない。"
22502
22503 #. type: Plain text
22504 #: build/C/man7/x25.7:114
22505 msgid ""
22506 "There is no dedicated application programmer's header file yet; you need to "
22507 "include the kernel header file I<E<lt>linux/x25.hE<gt>>.  "
22508 "B<CONFIG_EXPERIMENTAL> might also imply that future versions of the "
22509 "interface are not binary compatible."
22510 msgstr ""
22511 "まだアプリケーションプログラマー用のヘッダファイルがない。 カーネルのヘッダ"
22512 "ファイル I<E<lt>linux/x25.hE<gt>> をインクルードしなければならない。 "
22513 "B<CONFIG_EXPERIMENTAL> なので、将来のバージョンのインターフェースでは バイナ"
22514 "リ互換性が失われるかもしれない。"
22515
22516 #. type: Plain text
22517 #: build/C/man7/x25.7:118
22518 msgid ""
22519 "X.25 N-Reset events are not propagated to the user process yet.  Thus, if a "
22520 "reset occurred, data might be lost without notice."
22521 msgstr ""
22522 "X.25 N-Reset イベントは、まだユーザープロセスに伝播しない。 したがってリセッ"
22523 "トが起こると、データは通知無しに失われる。"
22524
22525 #. type: Plain text
22526 #: build/C/man7/x25.7:121
22527 msgid "B<socket>(2), B<socket>(7)"
22528 msgstr "B<socket>(2), B<socket>(7)"
22529
22530 #. type: Plain text
22531 #: build/C/man7/x25.7:127
22532 msgid ""
22533 "Jonathan Simon Naylor: \\(lqThe Re-Analysis and Re-Implementation of X.25."
22534 "\\(rq The URL is E<.UR ftp://ftp.pspt.fi\\:/pub\\:/ham\\:/linux\\:/ax25\\:/"
22535 "x25doc.tgz> E<.UE .>"
22536 msgstr ""
22537 "Jonathan Simon Naylor: \\(lqThe Re-Analysis and Re-Implementation of X.25."
22538 "\\(rq The URL is E<.UR ftp://ftp.pspt.fi\\:/pub\\:/ham\\:/linux\\:/ax25\\:/"
22539 "x25doc.tgz> E<.UE .>"
22540
22541 #~ msgid ""
22542 #~ "Return a list of interface (transport layer) addresses.  This currently "
22543 #~ "means only addresses of the B<AF_INET> (IPv4) family for compatibility.  "
22544 #~ "The user passes a I<ifconf> structure as argument to the ioctl.  It "
22545 #~ "contains a pointer to an array of I<ifreq> structures in I<ifc_req> and "
22546 #~ "its length in bytes in I<ifc_len>.  The kernel fills the ifreqs with all "
22547 #~ "current L3 interface addresses that are running: I<ifr_name> contains the "
22548 #~ "interface name (eth0:1 etc.), I<ifr_addr> the address.  The kernel "
22549 #~ "returns with the actual length in I<ifc_len>.  If I<ifc_len> is equal to "
22550 #~ "the original length the buffer probably has overflowed and you should "
22551 #~ "retry with a bigger buffer to get all addresses.  When no error occurs "
22552 #~ "the ioctl returns 0; otherwise -1.  Overflow is not an error."
22553 #~ msgstr ""
22554 #~ "インターフェース(トランスポート層)アドレスのリストを返す。 現在のところ、"
22555 #~ "互換性のために B<AF_INET> (IPv4) ファミリーのアドレスのみである。 ユーザー"
22556 #~ "は I<ifconf> 構造体を ioctl の引数として渡す。 I<ifconf> 構造体には、 "
22557 #~ "I<ifreq> 構造体の配列へのポインタである I<ifc_req> と、バイト単位の配列の"
22558 #~ "長さを指定する I<ifc_len> が含まれる。 カーネルは ifreqs を現在動作してい"
22559 #~ "る全ての L3 インターフェースアドレスで埋める。 I<ifr_name> にはインター"
22560 #~ "フェース名 (eth0:1 など) が入り、 I<ifr_addr> にはアドレスが入る。 カーネ"
22561 #~ "ルは実際の長さを I<ifc_len> に返す。 I<ifc_len> が元のバッファの長さと同じ"
22562 #~ "だった場合、 オーバーフローを起こしている可能性があるので、 全てのアドレス"
22563 #~ "を取得するためにより大きなバッファで再試行するべきである。 エラーがなかっ"
22564 #~ "た場合は ioctl は 0 を返す。 エラーがあった場合は -1 を返す。 オーバーフ"
22565 #~ "ローはエラーとは見なされない。"