OSDN Git Service

(split) LDP: Update POT and ja.po to LDP v3.37.
[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: 2012-03-22 04:26+0900\n"
10 "PO-Revision-Date: 2012-03-22 00:32+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:9
20 #, no-wrap
21 msgid "ARP"
22 msgstr "ARP"
23
24 #. type: TH
25 #: build/C/man7/arp.7:9
26 #, no-wrap
27 msgid "2008-11-25"
28 msgstr "2008-11-25"
29
30 #. type: TH
31 #: build/C/man7/arp.7:9 build/C/man3/cmsg.3:7 build/C/man7/ddp.7:7
32 #: build/C/man1/getent.1:23 build/C/man3/getipnodebyname.3:24
33 #: build/C/man2/getpeername.2:40 build/C/man5/host.conf.5:26
34 #: build/C/man7/hostname.7:37 build/C/man5/hosts.5:27
35 #: build/C/man5/hosts.equiv.5:3 build/C/man7/icmp.7:7
36 #: build/C/man3/inet_ntop.3:24 build/C/man3/inet_pton.3:25
37 #: build/C/man7/ip.7:12 build/C/man7/ipv6.7:7 build/C/man7/netdevice.7:12
38 #: build/C/man5/nsswitch.conf.5:27 build/C/man7/packet.7:7
39 #: build/C/man5/protocols.5:28 build/C/man7/raw.7:9 build/C/man3/rcmd.3:41
40 #: build/C/man3/rexec.3:39 build/C/man5/services.5:34
41 #: build/C/man2/shutdown.2:38 build/C/man7/tcp.7:16 build/C/man7/udp.7:8
42 #: build/C/man7/udplite.7:25 build/C/man7/unix.7:15 build/C/man7/x25.7:7
43 #, no-wrap
44 msgid "Linux"
45 msgstr "Linux"
46
47 #. type: TH
48 #: build/C/man7/arp.7:9 build/C/man3/byteorder.3:30 build/C/man3/cmsg.3:7
49 #: build/C/man7/ddp.7:7 build/C/man3/endian.3:26 build/C/man3/ether_aton.3:31
50 #: build/C/man3/getaddrinfo.3:41 build/C/man3/getaddrinfo_a.3:27
51 #: build/C/man3/gethostbyname.3:36 build/C/man3/getipnodebyname.3:24
52 #: build/C/man3/getnameinfo.3:7 build/C/man3/getnetent.3:28
53 #: build/C/man3/getnetent_r.3:24 build/C/man2/getpeername.2:40
54 #: build/C/man3/getprotoent.3:28 build/C/man3/getprotoent_r.3:24
55 #: build/C/man3/getservent.3:32 build/C/man3/getservent_r.3:24
56 #: build/C/man7/hostname.7:37 build/C/man5/hosts.5:27
57 #: build/C/man5/hosts.equiv.5:3 build/C/man7/icmp.7:7 build/C/man3/inet.3:42
58 #: build/C/man3/inet_ntop.3:24 build/C/man3/inet_pton.3:25
59 #: build/C/man7/ip.7:12 build/C/man7/ipv6.7:7 build/C/man7/netdevice.7:12
60 #: build/C/man8/nscd.8:23 build/C/man5/nscd.conf.5:20
61 #: build/C/man5/nsswitch.conf.5:27 build/C/man7/packet.7:7
62 #: build/C/man5/protocols.5:28 build/C/man7/raw.7:9 build/C/man3/rcmd.3:41
63 #: build/C/man5/resolv.conf.5:21 build/C/man3/resolver.3:30
64 #: build/C/man3/rexec.3:39 build/C/man5/services.5:34
65 #: build/C/man3/setnetgrent.3:5 build/C/man2/shutdown.2:38
66 #: build/C/man7/tcp.7:16 build/C/man7/udp.7:8 build/C/man7/udplite.7:25
67 #: build/C/man7/unix.7:15 build/C/man7/x25.7:7
68 #, no-wrap
69 msgid "Linux Programmer's Manual"
70 msgstr "Linux Programmer's Manual"
71
72 #. type: SH
73 #: build/C/man7/arp.7:10 build/C/man3/byteorder.3:31 build/C/man3/cmsg.3:8
74 #: build/C/man7/ddp.7:8 build/C/man3/endian.3:27 build/C/man3/ether_aton.3:32
75 #: build/C/man3/getaddrinfo.3:42 build/C/man3/getaddrinfo_a.3:28
76 #: build/C/man1/getent.1:24 build/C/man3/gethostbyname.3:37
77 #: build/C/man3/getipnodebyname.3:25 build/C/man3/getnameinfo.3:8
78 #: build/C/man3/getnetent.3:29 build/C/man3/getnetent_r.3:25
79 #: build/C/man2/getpeername.2:41 build/C/man3/getprotoent.3:29
80 #: build/C/man3/getprotoent_r.3:25 build/C/man3/getservent.3:33
81 #: build/C/man3/getservent_r.3:25 build/C/man5/host.conf.5:27
82 #: build/C/man7/hostname.7:38 build/C/man5/hosts.5:28
83 #: build/C/man5/hosts.equiv.5:4 build/C/man7/icmp.7:8 build/C/man3/inet.3:43
84 #: build/C/man3/inet_ntop.3:25 build/C/man3/inet_pton.3:26
85 #: build/C/man7/ip.7:13 build/C/man7/ipv6.7:8 build/C/man7/netdevice.7:13
86 #: build/C/man5/networks.5:25 build/C/man8/nscd.8:24
87 #: build/C/man5/nscd.conf.5:21 build/C/man5/nsswitch.conf.5:28
88 #: build/C/man7/packet.7:8 build/C/man5/protocols.5:29 build/C/man7/raw.7:10
89 #: build/C/man3/rcmd.3:42 build/C/man5/resolv.conf.5:23
90 #: build/C/man3/resolver.3:31 build/C/man3/rexec.3:40
91 #: build/C/man5/services.5:35 build/C/man3/setnetgrent.3:6
92 #: build/C/man2/shutdown.2:39 build/C/man7/tcp.7:17 build/C/man7/udp.7:9
93 #: build/C/man7/udplite.7:26 build/C/man7/unix.7:16 build/C/man7/x25.7:8
94 #, no-wrap
95 msgid "NAME"
96 msgstr "名前"
97
98 #. type: Plain text
99 #: build/C/man7/arp.7:12
100 msgid "arp - Linux ARP kernel module."
101 msgstr "arp - Linux ARP カーネルモジュール"
102
103 #. type: SH
104 #: build/C/man7/arp.7:12 build/C/man3/byteorder.3:46 build/C/man3/cmsg.3:33
105 #: build/C/man7/ddp.7:18 build/C/man3/endian.3:51 build/C/man3/ether_aton.3:57
106 #: build/C/man3/getaddrinfo.3:73 build/C/man3/getaddrinfo_a.3:48
107 #: build/C/man1/getent.1:28 build/C/man3/gethostbyname.3:116
108 #: build/C/man3/getipnodebyname.3:42 build/C/man3/getnameinfo.3:29
109 #: build/C/man3/getnetent.3:46 build/C/man3/getnetent_r.3:60
110 #: build/C/man2/getpeername.2:48 build/C/man3/getprotoent.3:46
111 #: build/C/man3/getprotoent_r.3:57 build/C/man3/getservent.3:50
112 #: build/C/man3/getservent_r.3:57 build/C/man5/host.conf.5:29
113 #: build/C/man7/hostname.7:40 build/C/man5/hosts.5:32
114 #: build/C/man5/hosts.equiv.5:7 build/C/man7/icmp.7:10 build/C/man3/inet.3:75
115 #: build/C/man3/inet_ntop.3:34 build/C/man3/inet_pton.3:34
116 #: build/C/man7/ip.7:29 build/C/man7/ipv6.7:20 build/C/man7/netdevice.7:19
117 #: build/C/man5/networks.5:27 build/C/man8/nscd.8:26
118 #: build/C/man5/nscd.conf.5:23 build/C/man5/nsswitch.conf.5:30
119 #: build/C/man7/packet.7:20 build/C/man5/protocols.5:31 build/C/man7/raw.7:18
120 #: build/C/man3/rcmd.3:70 build/C/man5/resolv.conf.5:27
121 #: build/C/man3/resolver.3:83 build/C/man3/rexec.3:50
122 #: build/C/man5/services.5:37 build/C/man3/setnetgrent.3:39
123 #: build/C/man2/shutdown.2:45 build/C/man7/tcp.7:27 build/C/man7/udp.7:17
124 #: build/C/man7/udplite.7:36 build/C/man7/unix.7:27 build/C/man7/x25.7:16
125 #, no-wrap
126 msgid "DESCRIPTION"
127 msgstr "説明"
128
129 #. type: Plain text
130 #: build/C/man7/arp.7:20
131 msgid ""
132 "This kernel protocol module implements the Address Resolution Protocol "
133 "defined in RFC\\ 826.  It is used to convert between Layer2 hardware "
134 "addresses and IPv4 protocol addresses on directly connected networks.  The "
135 "user normally doesn't interact directly with this module except to configure "
136 "it; instead it provides a service for other protocols in the kernel."
137 msgstr ""
138 "このカーネルプロトコルモジュールは、 RFC\\ 826 で定義されている Address "
139 "Resolution Protocol を 実装したものである。 ARP は、ダイレクトに接続された"
140 "ネットワーク上で、 第 2 層のハードウェアアドレスをIPv4 プロトコルアドレスに "
141 "変換するために用いられる。ユーザーは設定の場合を除いて 通常直接このモジュール"
142 "に関ることはない。 これはカーネル内部の他のプロトコルにサービスを提供するもの"
143 "である。"
144
145 #. type: Plain text
146 #: build/C/man7/arp.7:33
147 msgid ""
148 "A user process can receive ARP packets by using B<packet>(7)  sockets.  "
149 "There is also a mechanism for managing the ARP cache in user-space by using "
150 "B<netlink>(7)  sockets.  The ARP table can also be controlled via B<ioctl>"
151 "(2)  on any B<AF_INET> socket."
152 msgstr ""
153 "ユーザープロセスは、 B<packet>(7)  ソケットを用いれば ARP パケットを受信する"
154 "ことができる。 ARP キャッシュをユーザー空間で管理することもできる。 これには "
155 "B<netlink>(7)  を用いる。 ARP テーブルも制御可能で、これには任意の "
156 "B<AF_INET> ソケットに B<ioctl>(2)  を用いる。"
157
158 #. type: Plain text
159 #: build/C/man7/arp.7:45
160 msgid ""
161 "The ARP module maintains a cache of mappings between hardware addresses and "
162 "protocol addresses.  The cache has a limited size so old and less frequently "
163 "used entries are garbage-collected.  Entries which are marked as permanent "
164 "are never deleted by the garbage-collector.  The cache can be directly "
165 "manipulated by the use of ioctls and its behavior can be tuned by the I</"
166 "proc> interfaces described below."
167 msgstr ""
168 "ARP モジュールはハードウェアアドレスからプロトコルアドレスへの マッピングの"
169 "キャッシュを管理する。キャッシュの大きさには制限が あるので、古いエントリや利"
170 "用されないエントリはガベージコレクト される。 permanent (保存) マークがつけら"
171 "れたエントリは、 決してガベージコレクタによって消去されない。 ioctl を用いれ"
172 "ばキャッシュを直接操作することもできる。 また後述の I</proc> インタフェースに"
173 "よりキャッシュの振る舞いを調整できる。"
174
175 #. type: Plain text
176 #: build/C/man7/arp.7:68
177 msgid ""
178 "When there is no positive feedback for an existing mapping after some time "
179 "(see the I</proc> interfaces below), a neighbor cache entry is considered "
180 "stale.  Positive feedback can be gotten from a higher layer; for example "
181 "from a successful TCP ACK.  Other protocols can signal forward progress "
182 "using the B<MSG_CONFIRM> flag to B<sendmsg>(2).  When there is no forward "
183 "progress, ARP tries to reprobe.  It first tries to ask a local arp daemon "
184 "B<app_solicit> times for an updated MAC address.  If that fails and an old "
185 "MAC address is known, a unicast probe is sent B<ucast_solicit> times.  If "
186 "that fails too, it will broadcast a new ARP request to the network.  "
187 "Requests are only sent when there is data queued for sending."
188 msgstr ""
189 "存在しているマッピングに対して、 正のフィードバックが一定時間ない (後述の I</"
190 "proc> インタフェースを見よ) と、 近傍キャッシュエントリ (neighbor cache "
191 "entry) は 古くなった (stale) とみなされる。 正のフィードバックは高位のレイ"
192 "ヤーからも取得できる (例えば TCP ACK が成功した場合など)。 他のプロトコル"
193 "は、 B<sendmsg>(2)  に B<MSG_CONFIRM> フラグを用いることによって、 フォワード"
194 "プログレス (forward progress) をシグナルできる。 フォワードプログレスがなけれ"
195 "ば、 ARP は再びプローブを試みる。 まずローカルな arp デーモンに問合わせを行"
196 "い、 更新された MAC アドレスを取得しようとする。 このリクエストに "
197 "B<app_solicit> 回失敗すると、古い MAC アドレスがわかっている場合は、 unicast "
198 "のプローブが B<ucaset_solicit> 回送られる。これにも失敗すると、新しい ARP リ"
199 "クエスト をネットワークにブロードキャストする。 リクエストは、データが送信"
200 "キューになければ送られない。"
201
202 #. type: Plain text
203 #: build/C/man7/arp.7:73
204 msgid ""
205 "Linux will automatically add a nonpermanent proxy arp entry when it receives "
206 "a request for an address it forwards to and proxy arp is enabled on the "
207 "receiving interface.  When there is a reject route for the target, no proxy "
208 "arp entry is added."
209 msgstr ""
210 "Linux は、あるアドレスへのリクエストを受信・フォワードし、 受信したインター"
211 "フェースで代理 arp が有効になっている場合には、 自動的にそのアドレスを "
212 "nonpermanent な代理 arp エントリに追加する。 そのターゲットに reject route が"
213 "あった場合には、 代理 arp エントリは一切追加されない。"
214
215 #. type: SS
216 #: build/C/man7/arp.7:73 build/C/man7/ddp.7:139 build/C/man7/ip.7:898
217 #: build/C/man7/netdevice.7:66 build/C/man7/packet.7:225
218 #: build/C/man7/tcp.7:996 build/C/man7/udp.7:192 build/C/man7/unix.7:277
219 #, no-wrap
220 msgid "Ioctls"
221 msgstr "ioctl"
222
223 #. type: Plain text
224 #: build/C/man7/arp.7:80
225 msgid ""
226 "Three ioctls are available on all B<AF_INET> sockets.  They take a pointer "
227 "to a I<struct arpreq> as their argument."
228 msgstr ""
229 "すべての B<AF_INET> ソケットでは、 3 つの ioctl が使用できる。 これらは "
230 "I<struct arpreq> へのポインタを引数に取る。"
231
232 #. type: Plain text
233 #: build/C/man7/arp.7:90
234 #, no-wrap
235 msgid ""
236 "struct arpreq {\n"
237 "    struct sockaddr arp_pa;      /* protocol address */\n"
238 "    struct sockaddr arp_ha;      /* hardware address */\n"
239 "    int             arp_flags;   /* flags */\n"
240 "    struct sockaddr arp_netmask; /* netmask of protocol address */\n"
241 "    char            arp_dev[16];\n"
242 "};\n"
243 msgstr ""
244 "struct arpreq {\n"
245 "    struct sockaddr arp_pa;      /* protocol address */\n"
246 "    struct sockaddr arp_ha;      /* hardware address */\n"
247 "    int             arp_flags;   /* flags */\n"
248 "    struct sockaddr arp_netmask; /* netmask of protocol address */\n"
249 "    char            arp_dev[16];\n"
250 "};\n"
251
252 #. type: Plain text
253 #: build/C/man7/arp.7:99
254 msgid ""
255 "B<SIOCSARP>, B<SIOCDARP> and B<SIOCGARP> respectively set, delete and get an "
256 "ARP mapping.  Setting and deleting ARP maps are privileged operations and "
257 "may only be performed by a process with the B<CAP_NET_ADMIN> capability or "
258 "an effective UID of 0."
259 msgstr ""
260 "B<SIOCSARP>, B<SIOCDARP>, B<SIOCGARP> は、それぞれ ARP マッピングを設定・削"
261 "除・取得する。 ARP マップの設定と削除は特権が必要な操作であり、 "
262 "B<CAP_NET_ADMIN> 権限を持つプロセスか、実行ユーザー ID が 0 のプロセス でなけ"
263 "れば実行できない。"
264
265 #. type: Plain text
266 #: build/C/man7/arp.7:109
267 msgid ""
268 "I<arp_pa> must be an B<AF_INET> address and I<arp_ha> must have the same "
269 "type as the device which is specified in I<arp_dev>.  I<arp_dev> is a zero-"
270 "terminated string which names a device."
271 msgstr ""
272 "I<arp_pa> は B<AF_INET> アドレスでなければならず、 I<arp_ha> は I<arp_dev> で"
273 "設定されたデバイスと同じタイプでなければならない。 I<arp_dev> はデバイスの名"
274 "前を示す、ゼロで終端された文字列である。"
275
276 #. type: tbl table
277 #: build/C/man7/arp.7:114
278 #, no-wrap
279 msgid "I<arp_flags>\n"
280 msgstr "I<arp_flags>\n"
281
282 #. type: tbl table
283 #: build/C/man7/arp.7:115
284 #, no-wrap
285 msgid "flag:meaning\n"
286 msgstr "フラグ:意味\n"
287
288 #. type: tbl table
289 #: build/C/man7/arp.7:116
290 #, no-wrap
291 msgid "ATF_COM:Lookup complete\n"
292 msgstr "ATF_COM:参照完了\n"
293
294 #. type: tbl table
295 #: build/C/man7/arp.7:117
296 #, no-wrap
297 msgid "ATF_PERM:Permanent entry\n"
298 msgstr "ATF_PERM:エントリを peramanent にする\n"
299
300 #. type: tbl table
301 #: build/C/man7/arp.7:118
302 #, no-wrap
303 msgid "ATF_PUBL:Publish entry\n"
304 msgstr "ATF_PUBL:エントリを publish する\n"
305
306 #. type: tbl table
307 #: build/C/man7/arp.7:119
308 #, no-wrap
309 msgid "ATF_USETRAILERS:Trailers requested\n"
310 msgstr "ATF_USETRAILERS:trailer が必要\n"
311
312 #. type: tbl table
313 #: build/C/man7/arp.7:120
314 #, no-wrap
315 msgid "ATF_NETMASK:Use a netmask\n"
316 msgstr "ATF_NETMASK:netmask を用いる\n"
317
318 #. type: tbl table
319 #: build/C/man7/arp.7:121
320 #, no-wrap
321 msgid "ATF_DONTPUB:Don't answer\n"
322 msgstr "ATF_DONTPUB:回答しない\n"
323
324 #. type: Plain text
325 #: build/C/man7/arp.7:135
326 msgid ""
327 "If the B<ATF_NETMASK> flag is set, then I<arp_netmask> should be valid.  "
328 "Linux 2.2 does not support proxy network ARP entries, so this should be set "
329 "to 0xffffffff, or 0 to remove an existing proxy arp entry.  "
330 "B<ATF_USETRAILERS> is obsolete and should not be used."
331 msgstr ""
332 "B<ATF_NETMASK> フラグがセットされているときには、 I<arp_netmask> が有効でなけ"
333 "ればならない。 Linux 2.2 は代理ネットワーク ARP エントリをサポートしていない"
334 "ので、 これは 0xffffffff にセットしておくか、あるいは 現存の代理 arp エントリ"
335 "を削除したい場合には 0 にしておく必要がある。 B<ATF_USETRAILERS> は obsolete "
336 "なので、用いるべきでない。"
337
338 #. type: SS
339 #: build/C/man7/arp.7:135 build/C/man7/ddp.7:117 build/C/man7/icmp.7:36
340 #: build/C/man7/ip.7:774 build/C/man7/tcp.7:159 build/C/man7/udp.7:131
341 #, no-wrap
342 msgid "/proc interfaces"
343 msgstr "/proc インタフェース"
344
345 #. type: Plain text
346 #: build/C/man7/arp.7:148
347 msgid ""
348 "ARP supports a range of I</proc> interfaces to configure parameters on a "
349 "global or per-interface basis.  The interfaces can be accessed by reading or "
350 "writing the I</proc/sys/net/ipv4/neigh/*/*> files.  Each interface in the "
351 "system has its own directory in I</proc/sys/net/ipv4/neigh/>.  The setting "
352 "in the \"default\" directory is used for all newly created devices.  Unless "
353 "otherwise specified, time-related interfaces are specified in seconds."
354 msgstr ""
355 "ARP では、グローバルなパラメータやインターフェースごとのパラメータを I</"
356 "proc> インタフェースを通して設定することができる。 これらのインタフェースに"
357 "は、 I<proc/sys/net/ipv4/neigh/*/*> ファイルの読み書きによりアクセスできる。 "
358 "システムにあるそれぞれのインターフェースには、 それぞれ対応するディレクトリ"
359 "が I</proc/sys/net/ipv4/neigh/> 以下にある。 \"default\" ディレクトリに対して"
360 "設定をすると、 それ以降生成されるデバイス全てに対してその設定が用いられる。 "
361 "特に指定がなければ、時間に関る sysctl の単位は秒である。"
362
363 #. type: TP
364 #: build/C/man7/arp.7:148
365 #, no-wrap
366 msgid "I<anycast_delay> (since Linux 2.2)"
367 msgstr "I<anycast_delay> (Linux 2.2 以降)"
368
369 #.  Precisely: 2.1.79
370 #. type: Plain text
371 #: build/C/man7/arp.7:155
372 msgid ""
373 "The maximum number of jiffies to delay before replying to a IPv6 neighbor "
374 "solicitation message.  Anycast support is not yet implemented.  Defaults to "
375 "1 second."
376 msgstr ""
377 "IPv6 の近傍要請メッセージ (neighbor soliciation message)  に応答するまでの最"
378 "大遅延時間 (jiffy 単位)。 anycast のサポートはまだ実装されていない。 デフォル"
379 "トは 1 秒。"
380
381 #. type: TP
382 #: build/C/man7/arp.7:155
383 #, no-wrap
384 msgid "I<app_solicit> (since Linux 2.2)"
385 msgstr "I<app_solicit> (Linux 2.2 以降)"
386
387 #.  Precisely: 2.1.79
388 #. type: Plain text
389 #: build/C/man7/arp.7:162
390 msgid ""
391 "The maximum number of probes to send to the user space ARP daemon via "
392 "netlink before dropping back to multicast probes (see I<mcast_solicit>).  "
393 "Defaults to 0."
394 msgstr ""
395 "ユーザー空間の ARP デーモンに netlink を用いて探索させる最大回数。 これを越え"
396 "るとマルチキャストによる探索に移行する (I<mcast_solicit> を見よ)。"
397
398 #. type: TP
399 #: build/C/man7/arp.7:162
400 #, no-wrap
401 msgid "I<base_reachable_time> (since Linux 2.2)"
402 msgstr "I<base_reachable_time> (Linux 2.2 以降)"
403
404 #.  Precisely: 2.1.79
405 #. type: Plain text
406 #: build/C/man7/arp.7:173
407 msgid ""
408 "Once a neighbor has been found, the entry is considered to be valid for at "
409 "least a random value between I<base_reachable_time>/2 and "
410 "3*I<base_reachable_time>/2.  An entry's validity will be extended if it "
411 "receives positive feedback from higher level protocols.  Defaults to 30 "
412 "seconds.  This file is now obsolete in favor of I<base_reachable_time_ms>."
413 msgstr ""
414 "近傍のホストがみつかると、そのエントリは I<base_reachable_time>/2 から "
415 "3*I<base_reachable_time>/2 の間のランダムな値の時間、有効であるとみなされ"
416 "る。 エントリの有効性は、高位のプロトコルからポジティブなフィードバックを 受"
417 "け取ると延長される。デフォルトは 30 秒。 このファイルは現在は非推奨であり、代"
418 "わりに I<base_reachable_time_ms> を使うこと。"
419
420 #. type: TP
421 #: build/C/man7/arp.7:173
422 #, no-wrap
423 msgid "I<base_reachable_time_ms> (since Linux 2.6.12)"
424 msgstr "I<base_reachable_time_ms> (Linux 2.6.12 以降)"
425
426 #. type: Plain text
427 #: build/C/man7/arp.7:179
428 msgid ""
429 "As for I<base_reachable_time>, but measures time in milliseconds.  Defaults "
430 "to 30000 milliseconds."
431 msgstr ""
432 "I<base_reachable_time> と同じだが、時間をミリ秒単位で測る。 デフォルトは "
433 "30000 ミリ秒である。"
434
435 #. type: TP
436 #: build/C/man7/arp.7:179
437 #, no-wrap
438 msgid "I<delay_first_probe_time> (since Linux 2.2)"
439 msgstr "I<delay_first_probe_time> (Linux 2.2 以降)"
440
441 #.  Precisely: 2.1.79
442 #. type: Plain text
443 #: build/C/man7/arp.7:185
444 msgid ""
445 "Delay before first probe after it has been decided that a neighbor is "
446 "stale.  Defaults to 5 seconds."
447 msgstr ""
448 "近傍ホストのエントリが古くなったと判断された後に 最初に探索を行うまでの遅延時"
449 "間。デフォルトは 5 秒。"
450
451 #. type: TP
452 #: build/C/man7/arp.7:185
453 #, no-wrap
454 msgid "I<gc_interval> (since Linux 2.2)"
455 msgstr "I<gc_interval> (Linux 2.2 以降)"
456
457 #.  Precisely: 2.1.79
458 #. type: Plain text
459 #: build/C/man7/arp.7:191
460 msgid ""
461 "How frequently the garbage collector for neighbor entries should attempt to "
462 "run.  Defaults to 30 seconds."
463 msgstr ""
464 "ガベージ・コレクタを近傍ホストエントリに対して実行させる頻度。 デフォルトは "
465 "30 秒。"
466
467 #. type: TP
468 #: build/C/man7/arp.7:191
469 #, no-wrap
470 msgid "I<gc_stale_time> (since Linux 2.2)"
471 msgstr "I<gc_stale_time> (Linux 2.2 以降)"
472
473 #.  Precisely: 2.1.79
474 #. type: Plain text
475 #: build/C/man7/arp.7:198
476 msgid ""
477 "Determines how often to check for stale neighbor entries.  When a neighbor "
478 "entry is considered stale, it is resolved again before sending data to it.  "
479 "Defaults to 60 seconds."
480 msgstr ""
481 "古くなった近傍ホストエントリに対してチェックを行う頻度。 近傍ホストエントリが"
482 "古くなったとみなされると、そのエントリに データを送る前には再度解決が行われ"
483 "る。 デフォルトは 60 秒。"
484
485 #. type: TP
486 #: build/C/man7/arp.7:198
487 #, no-wrap
488 msgid "I<gc_thresh1> (since Linux 2.2)"
489 msgstr "I<gc_thresh1> (Linux 2.2 以降)"
490
491 #.  Precisely: 2.1.79
492 #. type: Plain text
493 #: build/C/man7/arp.7:205
494 msgid ""
495 "The minimum number of entries to keep in the ARP cache.  The garbage "
496 "collector will not run if there are fewer than this number of entries in the "
497 "cache.  Defaults to 128."
498 msgstr ""
499 "ARP キャッシュに保存するエントリ数の最小値。 この数より少ないエントリしか"
500 "キャッシュになければ、 ガベージ・コレクタは実行されない。 デフォルトは 128。"
501
502 #. type: TP
503 #: build/C/man7/arp.7:205
504 #, no-wrap
505 msgid "I<gc_thresh2> (since Linux 2.2)"
506 msgstr "I<gc_thresh2> (Linux 2.2 以降)"
507
508 #.  Precisely: 2.1.79
509 #. type: Plain text
510 #: build/C/man7/arp.7:212
511 msgid ""
512 "The soft maximum number of entries to keep in the ARP cache.  The garbage "
513 "collector will allow the number of entries to exceed this for 5 seconds "
514 "before collection will be performed.  Defaults to 512."
515 msgstr ""
516 "ARP キャッシュに保存されるエントリ数のソフトな最大値。 キャッシュのエントリが"
517 "この数を 5 秒間越えつづけると、 ガベージ・コレクタが実行される。 デフォルト"
518 "は 512。"
519
520 #. type: TP
521 #: build/C/man7/arp.7:212
522 #, no-wrap
523 msgid "I<gc_thresh3> (since Linux 2.2)"
524 msgstr "I<gc_thresh3> (Linux 2.2 以降)"
525
526 #.  Precisely: 2.1.79
527 #. type: Plain text
528 #: build/C/man7/arp.7:219
529 msgid ""
530 "The hard maximum number of entries to keep in the ARP cache.  The garbage "
531 "collector will always run if there are more than this number of entries in "
532 "the cache.  Defaults to 1024."
533 msgstr ""
534 "ARP キャッシュに保存されるエントリ数のハードな最大値。 キャッシュのエントリが"
535 "この数を越えると、 ガベージ・コレクタはただちに実行される。 デフォルトは "
536 "1024。"
537
538 #. type: TP
539 #: build/C/man7/arp.7:219
540 #, no-wrap
541 msgid "I<locktime> (since Linux 2.2)"
542 msgstr "I<locktime> (Linux 2.2 以降)"
543
544 #.  Precisely: 2.1.79
545 #. type: Plain text
546 #: build/C/man7/arp.7:226
547 msgid ""
548 "The minimum number of jiffies to keep an ARP entry in the cache.  This "
549 "prevents ARP cache thrashing if there is more than one potential mapping "
550 "(generally due to network misconfiguration).  Defaults to 1 second."
551 msgstr ""
552 "ARP エントリをキャッシュに保存する時間の最小値 (jiffy 単位)。 可能性のある"
553 "マッピングが一つ以上ある (たいていはネットワーク設定のミス)  場合に、 ARP "
554 "キャッシュのスラッシングが起きることを防ぐ。 デフォルトは 1 秒。"
555
556 #. type: TP
557 #: build/C/man7/arp.7:226
558 #, no-wrap
559 msgid "I<mcast_solicit> (since Linux 2.2)"
560 msgstr "I<mcast_solicit> (Linux 2.2 以降)"
561
562 #.  Precisely: 2.1.79
563 #. type: Plain text
564 #: build/C/man7/arp.7:232
565 msgid ""
566 "The maximum number of attempts to resolve an address by multicast/broadcast "
567 "before marking the entry as unreachable.  Defaults to 3."
568 msgstr ""
569 "エントリを unreachable マークする前に、 アドレスをマルチキャスト/ブロードキャ"
570 "ストで解決しようとする 試行回数の最大値。 デフォルトは 3。"
571
572 #. type: TP
573 #: build/C/man7/arp.7:232
574 #, no-wrap
575 msgid "I<proxy_delay> (since Linux 2.2)"
576 msgstr "I<proxy_delay> (Linux 2.2 以降)"
577
578 #.  Precisely: 2.1.79
579 #. type: Plain text
580 #: build/C/man7/arp.7:240
581 msgid ""
582 "When an ARP request for a known proxy-ARP address is received, delay up to "
583 "I<proxy_delay> jiffies before replying.  This is used to prevent network "
584 "flooding in some cases.  Defaults to 0.8 seconds."
585 msgstr ""
586 "既知の代理 ARP アドレスに対して ARP リクエストを受信した場合に、 応答前に最"
587 "大 I<proxy_delay> jiffy まで遅延する。これは場合によって生じる ネットワーク・"
588 "フラッディング (network flooding) を避けるために用いる。 デフォルトは 0.8 "
589 "秒。"
590
591 #. type: TP
592 #: build/C/man7/arp.7:240
593 #, no-wrap
594 msgid "I<proxy_qlen> (since Linux 2.2)"
595 msgstr "I<proxy_qlen> (Linux 2.2 以降)"
596
597 #.  Precisely: 2.1.79
598 #. type: Plain text
599 #: build/C/man7/arp.7:245
600 msgid ""
601 "The maximum number of packets which may be queued to proxy-ARP addresses.  "
602 "Defaults to 64."
603 msgstr ""
604 "代理 ARP アドレスに対してキューイングできる最大のパケット数。 デフォルトは "
605 "64。"
606
607 #. type: TP
608 #: build/C/man7/arp.7:245
609 #, no-wrap
610 msgid "I<retrans_time> (since Linux 2.2)"
611 msgstr "I<retrans_time> (Linux 2.2 以降)"
612
613 #.  Precisely: 2.1.79
614 #. type: Plain text
615 #: build/C/man7/arp.7:252
616 msgid ""
617 "The number of jiffies to delay before retransmitting a request.  Defaults to "
618 "1 second.  This file is now obsolete in favor of I<retrans_time_ms>."
619 msgstr ""
620 "リクエストを再度送るまでの遅延時間 (jiffy 単位)。 デフォルトは 1 秒。 この"
621 "ファイルは現在は非推奨であり、代わりに I<retrans_time_ms> を使うこと。"
622
623 #. type: TP
624 #: build/C/man7/arp.7:252
625 #, no-wrap
626 msgid "I<retrans_time_ms> (since Linux 2.6.12)"
627 msgstr "I<retrans_time_ms> (Linux 2.6.12 以降)"
628
629 #. type: Plain text
630 #: build/C/man7/arp.7:256
631 msgid ""
632 "The number of milliseconds to delay before retransmitting a request.  "
633 "Defaults to 1000 milliseconds."
634 msgstr ""
635 "リクエストを再度送るまでの遅延時間 (ミリ秒単位)。 デフォルトは 1000 ミリ秒。"
636
637 #. type: TP
638 #: build/C/man7/arp.7:256
639 #, no-wrap
640 msgid "I<ucast_solicit> (since Linux 2.2)"
641 msgstr "I<ucast_solicit> (Linux 2.2 以降)"
642
643 #.  Precisely: 2.1.79
644 #. type: Plain text
645 #: build/C/man7/arp.7:263
646 msgid ""
647 "The maximum number of attempts to send unicast probes before asking the ARP "
648 "daemon (see I<app_solicit>).  Defaults to 3."
649 msgstr ""
650 "ARP デーモンへの問い合わせを行う前に行う unicast 探索の最大試行数 "
651 "(I<app_solicit> を見よ)。デフォルトは 3。"
652
653 #. type: TP
654 #: build/C/man7/arp.7:263
655 #, no-wrap
656 msgid "I<unres_qlen> (since Linux 2.2)"
657 msgstr "I<unres_qlen> (Linux 2.2 以降)"
658
659 #.  Precisely: 2.1.79
660 #. type: Plain text
661 #: build/C/man7/arp.7:269
662 msgid ""
663 "The maximum number of packets which may be queued for each unresolved "
664 "address by other network layers.  Defaults to 3."
665 msgstr ""
666 "解決されていないアドレスに対して、 他のネットワーク層からキューイングできる最"
667 "大パケット数。 デフォルトは 3。"
668
669 #. type: SH
670 #: build/C/man7/arp.7:269 build/C/man7/ddp.7:216 build/C/man3/endian.3:72
671 #: build/C/man3/getnameinfo.3:200 build/C/man7/icmp.7:155
672 #: build/C/man7/ipv6.7:270 build/C/man7/packet.7:277 build/C/man7/raw.7:171
673 #: build/C/man7/tcp.7:1113 build/C/man7/udp.7:241 build/C/man7/udplite.7:142
674 #: build/C/man7/unix.7:394 build/C/man7/x25.7:95
675 #, no-wrap
676 msgid "VERSIONS"
677 msgstr "バージョン"
678
679 #. type: Plain text
680 #: build/C/man7/arp.7:276
681 msgid ""
682 "The I<struct arpreq> changed in Linux 2.0 to include the I<arp_dev> member "
683 "and the ioctl numbers changed at the same time.  Support for the old ioctls "
684 "was dropped in Linux 2.2."
685 msgstr ""
686 "Linux 2.0 で、 I<struct arpreq> に I<arp_dev> メンバーが含まれるように変更が"
687 "あった。また同時に ioctl 番号も変更された。古い ioctl は Linux 2.2 で用いるこ"
688 "とができなくなった。"
689
690 #. type: Plain text
691 #: build/C/man7/arp.7:282
692 msgid ""
693 "Support for proxy arp entries for networks (netmask not equal 0xffffffff)  "
694 "was dropped in Linux 2.2.  It is replaced by automatic proxy arp setup by "
695 "the kernel for all reachable hosts on other interfaces (when forwarding and "
696 "proxy arp is enabled for the interface)."
697 msgstr ""
698 "ネットワークに対する代理 arp エントリ (netmask が 0xffffffff でない)  は、 "
699 "Linux 2.2 で用いることができなくなった。 これはカーネルによって設定される、別"
700 "のインターフェースにおける 到達可能なすべてのホストに対する自動代理 arp に"
701 "よって置き換えられた (そのインターフェースでフォワーディングと代理 arp が有効"
702 "になっている場合)。"
703
704 #. type: Plain text
705 #: build/C/man7/arp.7:286
706 msgid "The I<neigh/*> interfaces did not exist before Linux 2.2."
707 msgstr "I<neigh/*> の各インタフェースは Linux 2.2 以前には存在しない。"
708
709 #. type: SH
710 #: build/C/man7/arp.7:286 build/C/man7/ddp.7:239 build/C/man3/ether_aton.3:125
711 #: build/C/man3/gethostbyname.3:422 build/C/man3/inet_ntop.3:110
712 #: build/C/man3/inet_pton.3:148 build/C/man7/ip.7:1067 build/C/man7/ipv6.7:309
713 #: build/C/man7/netdevice.7:262 build/C/man7/packet.7:358
714 #: build/C/man7/raw.7:248 build/C/man3/rcmd.3:211 build/C/man3/rexec.3:123
715 #: build/C/man7/tcp.7:1120 build/C/man7/udplite.7:124 build/C/man7/x25.7:97
716 #, no-wrap
717 msgid "BUGS"
718 msgstr "バグ"
719
720 #. type: Plain text
721 #: build/C/man7/arp.7:290
722 msgid ""
723 "Some timer settings are specified in jiffies, which is architecture- and "
724 "kernel version-dependent; see B<time>(7)."
725 msgstr ""
726 "いくつかのタイマー設定は jiffy で指定されるが、 jiffy はアーキテクチャやカー"
727 "ネルのバージョンに依存する。 B<time>(7)  を参照のこと。"
728
729 #. type: Plain text
730 #: build/C/man7/arp.7:296
731 msgid ""
732 "There is no way to signal positive feedback from user space.  This means "
733 "connection-oriented protocols implemented in user space will generate "
734 "excessive ARP traffic, because ndisc will regularly reprobe the MAC "
735 "address.  The same problem applies for some kernel protocols (e.g., NFS over "
736 "UDP)."
737 msgstr ""
738 "ユーザー空間からポジティブなフィードバックを送る方法が存在しない。 つまり接続"
739 "指向 (connection-oriented) のプロトコルをユーザー空間で 実装すると、余計な "
740 "ARP トラフィックの原因となる。 なぜなら ndisc は定期的に MAC アドレスを再探索"
741 "するからである。 同様の問題はいくつかのカーネルプロトコル (NFS over UDP な"
742 "ど) にも存在する。"
743
744 #. type: Plain text
745 #: build/C/man7/arp.7:299
746 msgid ""
747 "This man page mashes IPv4 specific and shared between IPv4 and IPv6 "
748 "functionality together."
749 msgstr ""
750 "この man ページでは IPv4 特有の機能と IPv4・IPv6 で共有される機能とがごっちゃ"
751 "になっている。"
752
753 #. type: SH
754 #: build/C/man7/arp.7:299 build/C/man3/byteorder.3:77 build/C/man3/cmsg.3:213
755 #: build/C/man7/ddp.7:244 build/C/man3/endian.3:149
756 #: build/C/man3/ether_aton.3:129 build/C/man3/getaddrinfo.3:813
757 #: build/C/man3/getaddrinfo_a.3:600 build/C/man1/getent.1:366
758 #: build/C/man3/gethostbyname.3:427 build/C/man3/getipnodebyname.3:264
759 #: build/C/man3/getnameinfo.3:272 build/C/man3/getnetent.3:133
760 #: build/C/man3/getnetent_r.3:143 build/C/man2/getpeername.2:114
761 #: build/C/man3/getprotoent.3:122 build/C/man3/getprotoent_r.3:235
762 #: build/C/man3/getservent.3:131 build/C/man3/getservent_r.3:239
763 #: build/C/man5/host.conf.5:199 build/C/man7/hostname.7:83
764 #: build/C/man5/hosts.5:115 build/C/man5/hosts.equiv.5:62
765 #: build/C/man7/icmp.7:185 build/C/man3/inet.3:297
766 #: build/C/man3/inet_ntop.3:116 build/C/man3/inet_pton.3:213
767 #: build/C/man7/ip.7:1086 build/C/man7/ipv6.7:320 build/C/man7/netdevice.7:276
768 #: build/C/man5/networks.5:73 build/C/man8/nscd.8:85
769 #: build/C/man5/nscd.conf.5:186 build/C/man7/packet.7:389
770 #: build/C/man5/protocols.5:80 build/C/man7/raw.7:265 build/C/man3/rcmd.3:216
771 #: build/C/man5/resolv.conf.5:260 build/C/man3/resolver.3:263
772 #: build/C/man3/rexec.3:132 build/C/man5/services.5:209
773 #: build/C/man3/setnetgrent.3:102 build/C/man2/shutdown.2:97
774 #: build/C/man7/tcp.7:1132 build/C/man7/udp.7:246 build/C/man7/udplite.7:144
775 #: build/C/man7/unix.7:438 build/C/man7/x25.7:113
776 #, no-wrap
777 msgid "SEE ALSO"
778 msgstr "関連項目"
779
780 #. type: Plain text
781 #: build/C/man7/arp.7:302
782 msgid "B<capabilities>(7), B<ip>(7)"
783 msgstr "B<capabilities>(7), B<ip>(7)"
784
785 #. type: Plain text
786 #: build/C/man7/arp.7:304
787 msgid "RFC\\ 826 for a description of ARP."
788 msgstr "B<RFC\\ 826>: ARP に関する説明"
789
790 #. type: Plain text
791 #: build/C/man7/arp.7:307
792 msgid ""
793 "RFC\\ 2461 for a description of IPv6 neighbor discovery and the base "
794 "algorithms used."
795 msgstr ""
796 "B<RFC\\ 2461>: IPv6 neighbor discovery に関する説明と、 利用されている基礎ア"
797 "ルゴリズム"
798
799 #. type: Plain text
800 #: build/C/man7/arp.7:309
801 msgid "Linux 2.2+ IPv4 ARP uses the IPv6 algorithms when applicable."
802 msgstr ""
803 "Linux 2.2 以降の IPv4 ARP は、 可能な場合は IPv6 のアルゴリズムを用いる。"
804
805 #. type: SH
806 #: build/C/man7/arp.7:309 build/C/man3/byteorder.3:81 build/C/man3/cmsg.3:218
807 #: build/C/man7/ddp.7:249 build/C/man3/endian.3:151
808 #: build/C/man3/ether_aton.3:131 build/C/man3/getaddrinfo.3:822
809 #: build/C/man3/getaddrinfo_a.3:607 build/C/man1/getent.1:368
810 #: build/C/man3/gethostbyname.3:441 build/C/man3/getipnodebyname.3:269
811 #: build/C/man3/getnameinfo.3:302 build/C/man3/getnetent.3:140
812 #: build/C/man3/getnetent_r.3:146 build/C/man2/getpeername.2:121
813 #: build/C/man3/getprotoent.3:127 build/C/man3/getprotoent_r.3:238
814 #: build/C/man3/getservent.3:136 build/C/man3/getservent_r.3:242
815 #: build/C/man5/host.conf.5:204 build/C/man7/hostname.7:91
816 #: build/C/man5/hosts.5:125 build/C/man5/hosts.equiv.5:66
817 #: build/C/man7/icmp.7:189 build/C/man3/inet.3:307
818 #: build/C/man3/inet_ntop.3:120 build/C/man3/inet_pton.3:217
819 #: build/C/man7/ip.7:1104 build/C/man7/ipv6.7:328 build/C/man7/netdevice.7:281
820 #: build/C/man5/networks.5:79 build/C/man8/nscd.8:91
821 #: build/C/man5/nscd.conf.5:191 build/C/man5/nsswitch.conf.5:286
822 #: build/C/man7/packet.7:404 build/C/man5/protocols.5:84
823 #: build/C/man7/raw.7:279 build/C/man3/rcmd.3:224
824 #: build/C/man5/resolv.conf.5:267 build/C/man3/resolver.3:269
825 #: build/C/man3/rexec.3:135 build/C/man5/services.5:221
826 #: build/C/man3/setnetgrent.3:106 build/C/man2/shutdown.2:101
827 #: build/C/man7/tcp.7:1158 build/C/man7/udp.7:257 build/C/man7/udplite.7:153
828 #: build/C/man7/unix.7:447 build/C/man7/x25.7:123
829 #, no-wrap
830 msgid "COLOPHON"
831 msgstr ""
832
833 #. type: Plain text
834 #: build/C/man7/arp.7:316 build/C/man3/byteorder.3:88 build/C/man3/cmsg.3:225
835 #: build/C/man7/ddp.7:256 build/C/man3/endian.3:158
836 #: build/C/man3/ether_aton.3:138 build/C/man3/getaddrinfo.3:829
837 #: build/C/man3/getaddrinfo_a.3:614 build/C/man1/getent.1:375
838 #: build/C/man3/gethostbyname.3:448 build/C/man3/getipnodebyname.3:276
839 #: build/C/man3/getnameinfo.3:309 build/C/man3/getnetent.3:147
840 #: build/C/man3/getnetent_r.3:153 build/C/man2/getpeername.2:128
841 #: build/C/man3/getprotoent.3:134 build/C/man3/getprotoent_r.3:245
842 #: build/C/man3/getservent.3:143 build/C/man3/getservent_r.3:249
843 #: build/C/man5/host.conf.5:211 build/C/man7/hostname.7:98
844 #: build/C/man5/hosts.5:132 build/C/man5/hosts.equiv.5:73
845 #: build/C/man7/icmp.7:196 build/C/man3/inet.3:314
846 #: build/C/man3/inet_ntop.3:127 build/C/man3/inet_pton.3:224
847 #: build/C/man7/ip.7:1111 build/C/man7/ipv6.7:335 build/C/man7/netdevice.7:288
848 #: build/C/man5/networks.5:86 build/C/man8/nscd.8:98
849 #: build/C/man5/nscd.conf.5:198 build/C/man5/nsswitch.conf.5:293
850 #: build/C/man7/packet.7:411 build/C/man5/protocols.5:91
851 #: build/C/man7/raw.7:286 build/C/man3/rcmd.3:231
852 #: build/C/man5/resolv.conf.5:274 build/C/man3/resolver.3:276
853 #: build/C/man3/rexec.3:142 build/C/man5/services.5:228
854 #: build/C/man3/setnetgrent.3:113 build/C/man2/shutdown.2:108
855 #: build/C/man7/tcp.7:1165 build/C/man7/udp.7:264 build/C/man7/udplite.7:160
856 #: build/C/man7/unix.7:454 build/C/man7/x25.7:130
857 msgid ""
858 "This page is part of release 3.37 of the Linux I<man-pages> project.  A "
859 "description of the project, and information about reporting bugs, can be "
860 "found at http://www.kernel.org/doc/man-pages/."
861 msgstr ""
862
863 #. type: TH
864 #: build/C/man3/byteorder.3:30
865 #, no-wrap
866 msgid "BYTEORDER"
867 msgstr "BYTEORDER"
868
869 #. type: TH
870 #: build/C/man3/byteorder.3:30
871 #, no-wrap
872 msgid "2009-01-15"
873 msgstr "2009-01-15"
874
875 #. type: TH
876 #: build/C/man3/byteorder.3:30 build/C/man3/endian.3:26
877 #: build/C/man3/ether_aton.3:31 build/C/man3/getaddrinfo.3:41
878 #: build/C/man3/getaddrinfo_a.3:27 build/C/man3/getnameinfo.3:7
879 #: build/C/man3/getnetent.3:28 build/C/man3/getnetent_r.3:24
880 #: build/C/man3/getprotoent.3:28 build/C/man3/getprotoent_r.3:24
881 #: build/C/man3/getservent.3:32 build/C/man3/getservent_r.3:24
882 #: build/C/man3/inet.3:42 build/C/man8/nscd.8:23 build/C/man5/nscd.conf.5:20
883 #: build/C/man3/resolver.3:30 build/C/man3/setnetgrent.3:5
884 #, no-wrap
885 msgid "GNU"
886 msgstr "GNU"
887
888 #. type: Plain text
889 #: build/C/man3/byteorder.3:34
890 msgid ""
891 "htonl, htons, ntohl, ntohs - convert values between host and network byte "
892 "order"
893 msgstr ""
894 "htonl, htons, ntohl, ntohs - ホストバイトオーダーとネットワークバイトオーダー"
895 "の間で値を変換する"
896
897 #. type: SH
898 #: build/C/man3/byteorder.3:34 build/C/man3/cmsg.3:10 build/C/man7/ddp.7:10
899 #: build/C/man3/endian.3:31 build/C/man3/ether_aton.3:35
900 #: build/C/man3/getaddrinfo.3:45 build/C/man3/getaddrinfo_a.3:31
901 #: build/C/man1/getent.1:26 build/C/man3/gethostbyname.3:44
902 #: build/C/man3/getipnodebyname.3:28 build/C/man3/getnameinfo.3:10
903 #: build/C/man3/getnetent.3:32 build/C/man3/getnetent_r.3:28
904 #: build/C/man2/getpeername.2:43 build/C/man3/getprotoent.3:32
905 #: build/C/man3/getprotoent_r.3:28 build/C/man3/getservent.3:36
906 #: build/C/man3/getservent_r.3:28 build/C/man5/hosts.5:30
907 #: build/C/man3/inet.3:46 build/C/man3/inet_ntop.3:27
908 #: build/C/man3/inet_pton.3:28 build/C/man7/ip.7:15 build/C/man7/ipv6.7:10
909 #: build/C/man7/netdevice.7:15 build/C/man7/packet.7:10 build/C/man7/raw.7:12
910 #: build/C/man3/rcmd.3:45 build/C/man5/resolv.conf.5:25
911 #: build/C/man3/resolver.3:34 build/C/man3/rexec.3:42
912 #: build/C/man3/setnetgrent.3:9 build/C/man2/shutdown.2:41
913 #: build/C/man7/tcp.7:19 build/C/man7/udp.7:11 build/C/man7/udplite.7:28
914 #: build/C/man7/unix.7:19 build/C/man7/x25.7:10
915 #, no-wrap
916 msgid "SYNOPSIS"
917 msgstr "書式"
918
919 #. type: Plain text
920 #: build/C/man3/byteorder.3:37 build/C/man3/inet_ntop.3:30
921 #: build/C/man3/inet_pton.3:31
922 #, no-wrap
923 msgid "B<#include E<lt>arpa/inet.hE<gt>>\n"
924 msgstr "B<#include E<lt>arpa/inet.hE<gt>>\n"
925
926 #. type: Plain text
927 #: build/C/man3/byteorder.3:39
928 #, no-wrap
929 msgid "B<uint32_t htonl(uint32_t >I<hostlong>B<);>\n"
930 msgstr "B<uint32_t htonl(uint32_t >I<hostlong>B<);>\n"
931
932 #. type: Plain text
933 #: build/C/man3/byteorder.3:41
934 #, no-wrap
935 msgid "B<uint16_t htons(uint16_t >I<hostshort>B<);>\n"
936 msgstr "B<uint16_t htons(uint16_t >I<hostshort>B<);>\n"
937
938 #. type: Plain text
939 #: build/C/man3/byteorder.3:43
940 #, no-wrap
941 msgid "B<uint32_t ntohl(uint32_t >I<netlong>B<);>\n"
942 msgstr "B<uint32_t ntohl(uint32_t >I<netlong>B<);>\n"
943
944 #. type: Plain text
945 #: build/C/man3/byteorder.3:45
946 #, no-wrap
947 msgid "B<uint16_t ntohs(uint16_t >I<netshort>B<);>\n"
948 msgstr "B<uint16_t ntohs(uint16_t >I<netshort>B<);>\n"
949
950 #. type: Plain text
951 #: build/C/man3/byteorder.3:51
952 msgid ""
953 "The B<htonl>()  function converts the unsigned integer I<hostlong> from host "
954 "byte order to network byte order."
955 msgstr ""
956 "B<htonl>()  関数は unsigned integer I<hostlong> を ホストバイトオーダーから"
957 "ネットワークバイトオーダーに変換する。"
958
959 #. type: Plain text
960 #: build/C/man3/byteorder.3:56
961 msgid ""
962 "The B<htons>()  function converts the unsigned short integer I<hostshort> "
963 "from host byte order to network byte order."
964 msgstr ""
965 "B<htons>()  関数は unsigned short integer I<hostshort> を ホストバイトオー"
966 "ダーからネットワークバイトオーダーに変換する。"
967
968 #. type: Plain text
969 #: build/C/man3/byteorder.3:61
970 msgid ""
971 "The B<ntohl>()  function converts the unsigned integer I<netlong> from "
972 "network byte order to host byte order."
973 msgstr ""
974 "B<ntohl>()  関数は unsigned integer I<netlong> を ネットワークバイトオーダー"
975 "からホストバイトオーダーに変換する。"
976
977 #. type: Plain text
978 #: build/C/man3/byteorder.3:66
979 msgid ""
980 "The B<ntohs>()  function converts the unsigned short integer I<netshort> "
981 "from network byte order to host byte order."
982 msgstr ""
983 "B<ntohs>()  関数は unsigned short integer I<netshort> を ネットワークバイト"
984 "オーダーからホストバイトオーダーに変換する。"
985
986 #. type: Plain text
987 #: build/C/man3/byteorder.3:70
988 msgid ""
989 "On the i386 the host byte order is Least Significant Byte first, whereas the "
990 "network byte order, as used on the Internet, is Most Significant Byte first."
991 msgstr ""
992 "i80x86 のホストバイトオーダーでは最下位バイトが若いアドレスに配置されるが、 "
993 "インターネットで用いられるネットワークバイトオーダーでは最上位バイト が先に配"
994 "置される。"
995
996 #. type: SH
997 #: build/C/man3/byteorder.3:70 build/C/man3/cmsg.3:137
998 #: build/C/man3/endian.3:74 build/C/man3/ether_aton.3:123
999 #: build/C/man3/getaddrinfo.3:580 build/C/man3/getaddrinfo_a.3:303
1000 #: build/C/man3/gethostbyname.3:301 build/C/man3/getipnodebyname.3:256
1001 #: build/C/man3/getnameinfo.3:203 build/C/man3/getnetent.3:124
1002 #: build/C/man3/getnetent_r.3:139 build/C/man2/getpeername.2:99
1003 #: build/C/man3/getprotoent.3:120 build/C/man3/getprotoent_r.3:129
1004 #: build/C/man3/getservent.3:129 build/C/man3/getservent_r.3:128
1005 #: build/C/man3/inet.3:210 build/C/man3/inet_ntop.3:98
1006 #: build/C/man3/inet_pton.3:127 build/C/man3/rcmd.3:205
1007 #: build/C/man3/resolver.3:261 build/C/man3/rexec.3:116
1008 #: build/C/man3/setnetgrent.3:87 build/C/man2/shutdown.2:84
1009 #, no-wrap
1010 msgid "CONFORMING TO"
1011 msgstr "準拠"
1012
1013 #. type: Plain text
1014 #: build/C/man3/byteorder.3:72 build/C/man3/inet_pton.3:129
1015 msgid "POSIX.1-2001."
1016 msgstr "POSIX.1-2001."
1017
1018 #. type: Plain text
1019 #: build/C/man3/byteorder.3:77
1020 msgid ""
1021 "Some systems require the inclusion of I<E<lt>netinet/in.hE<gt>> instead of "
1022 "I<E<lt>arpa/inet.hE<gt>>."
1023 msgstr ""
1024 "いくつかのシステムでは、 I<E<lt>arpa/inet.hE<gt>> の代わりに I<E<lt>netinet/"
1025 "in.hE<gt>> をインクルードする必要がある。"
1026
1027 #. type: Plain text
1028 #: build/C/man3/byteorder.3:81
1029 msgid "B<endian>(3), B<gethostbyname>(3), B<getservent>(3)"
1030 msgstr "B<endian>(3), B<gethostbyname>(3), B<getservent>(3)"
1031
1032 #. type: TH
1033 #: build/C/man3/cmsg.3:7
1034 #, no-wrap
1035 msgid "CMSG"
1036 msgstr "CMSG"
1037
1038 #. type: TH
1039 #: build/C/man3/cmsg.3:7 build/C/man7/ddp.7:7 build/C/man7/raw.7:9
1040 #, no-wrap
1041 msgid "2008-11-20"
1042 msgstr "2008-11-20"
1043
1044 #. type: Plain text
1045 #: build/C/man3/cmsg.3:10
1046 msgid ""
1047 "CMSG_ALIGN, CMSG_SPACE, CMSG_NXTHDR, CMSG_FIRSTHDR - Access ancillary data"
1048 msgstr ""
1049 "CMSG_ALIGN, CMSG_SPACE, CMSG_NXTHDR, CMSG_FIRSTHDR - 補助データにアクセスす"
1050 "る。"
1051
1052 #. type: Plain text
1053 #: build/C/man3/cmsg.3:12 build/C/man7/ddp.7:12 build/C/man2/getpeername.2:45
1054 #: build/C/man7/ip.7:17 build/C/man7/ipv6.7:12 build/C/man7/raw.7:14
1055 #: build/C/man2/shutdown.2:43 build/C/man7/tcp.7:21 build/C/man7/udp.7:13
1056 #: build/C/man7/udplite.7:30 build/C/man7/unix.7:21 build/C/man7/x25.7:12
1057 msgid "B<#include E<lt>sys/socket.hE<gt>>"
1058 msgstr "B<#include E<lt>sys/socket.hE<gt>>"
1059
1060 #. type: Plain text
1061 #: build/C/man3/cmsg.3:14
1062 msgid "B<struct cmsghdr *CMSG_FIRSTHDR(struct msghdr *>I<msgh>B<);>"
1063 msgstr "B<struct cmsghdr *CMSG_FIRSTHDR(struct msghdr *>I<msgh>B<);>"
1064
1065 #. type: Plain text
1066 #: build/C/man3/cmsg.3:16
1067 msgid ""
1068 "B<struct cmsghdr *CMSG_NXTHDR(struct msghdr *>I<msgh>B<, struct cmsghdr "
1069 "*>I<cmsg>B<);>"
1070 msgstr ""
1071 "B<struct cmsghdr *CMSG_NXTHDR(struct msghdr *>I<msgh>B<, struct cmsghdr "
1072 "*>I<cmsg>B<);>"
1073
1074 #. type: Plain text
1075 #: build/C/man3/cmsg.3:18
1076 msgid "B<size_t CMSG_ALIGN(size_t >I<length>B<);>"
1077 msgstr "B<size_t CMSG_ALIGN(size_t >I<length>B<);>"
1078
1079 #. type: Plain text
1080 #: build/C/man3/cmsg.3:20
1081 msgid "B<size_t CMSG_SPACE(size_t >I<length>B<);>"
1082 msgstr "B<size_t CMSG_SPACE(size_t >I<length>B<);>"
1083
1084 #. type: Plain text
1085 #: build/C/man3/cmsg.3:22
1086 msgid "B<size_t CMSG_LEN(size_t >I<length>B<);>"
1087 msgstr "B<size_t CMSG_LEN(size_t >I<length>B<);>"
1088
1089 #. type: Plain text
1090 #: build/C/man3/cmsg.3:24
1091 msgid "B<unsigned char *CMSG_DATA(struct cmsghdr *>I<cmsg>B<);>"
1092 msgstr "B<unsigned char *CMSG_DATA(struct cmsghdr *>I<cmsg>B<);>"
1093
1094 #. type: Plain text
1095 #: build/C/man3/cmsg.3:32
1096 #, no-wrap
1097 msgid ""
1098 "struct cmsghdr {\n"
1099 "    socklen_t cmsg_len;    /* data byte count, including header */\n"
1100 "    int       cmsg_level;  /* originating protocol */\n"
1101 "    int       cmsg_type;   /* protocol-specific type */\n"
1102 "    /* followed by unsigned char cmsg_data[]; */\n"
1103 "};\n"
1104 msgstr ""
1105 "struct cmsghdr {\n"
1106 "    socklen_t cmsg_len;    /* data byte count, including header */\n"
1107 "    int       cmsg_level;  /* originating protocol */\n"
1108 "    int       cmsg_type;   /* protocol-specific type */\n"
1109 "    /* followed by unsigned char cmsg_data[]; */\n"
1110 "};\n"
1111
1112 #. type: Plain text
1113 #: build/C/man3/cmsg.3:47
1114 msgid ""
1115 "These macros are used to create and access control messages (also called "
1116 "ancillary data) that are not a part of the socket payload.  This control "
1117 "information may include the interface the packet was received on, various "
1118 "rarely used header fields, an extended error description, a set of file "
1119 "descriptors or UNIX credentials.  For instance, control messages can be used "
1120 "to send additional header fields such as IP options.  Ancillary data is sent "
1121 "by calling B<sendmsg>(2)  and received by calling B<recvmsg>(2).  See their "
1122 "manual pages for more information."
1123 msgstr ""
1124 "これらのマクロは制御メッセージ (補助データ (ancillary data) とも呼ばれる) を"
1125 "作り、 それにアクセスするために使われる。 制御メッセージはソケットにのるデー"
1126 "タではない。 この制御情報は、到着したパケットへのインターフェイス、様々なあま"
1127 "り 使われないヘッダーフィールド、エラー記述の拡張、ファイルデスクリ プタの集"
1128 "合や、UNIXにおける信頼情報 (credential) を含んでいる。 制御メッセージは、例え"
1129 "ば IP オプションのような追加ヘッダーフィールドを 送るのに使う事ができる。 補"
1130 "助データは、 B<sendmsg>(2)  を呼び出して送り、 B<recvmsg>(2)  を呼び出して受"
1131 "け取る。 詳細はそれらのマニュアルページを参照。"
1132
1133 #. type: Plain text
1134 #: build/C/man3/cmsg.3:58
1135 msgid ""
1136 "Ancillary data is a sequence of I<struct cmsghdr> structures with appended "
1137 "data.  This sequence should only be accessed using the macros described in "
1138 "this manual page and never directly.  See the specific protocol man pages "
1139 "for the available control message types.  The maximum ancillary buffer size "
1140 "allowed per socket can be set using I</proc/sys/net/core/optmem_max>; see "
1141 "B<socket>(7)."
1142 msgstr ""
1143 "補助データは I<struct cmsghdr> 構造体のシーケンスに追加データが付加されたもの"
1144 "である。 このシーケンスにはこのマニュアルページに書かれている マクロを使って"
1145 "アクセスすべきで、直接アクセスすべきではない。 使用可能な制御メッセージのタイ"
1146 "プについては、 それぞれのプロトコルのマニュアルページを参照のこと。 接続毎の"
1147 "最大補助用バッファサイズは I</proc/sys/net/core/optmem_max> を使って設定でき"
1148 "る。 B<socket>(7)  を参照。"
1149
1150 #. type: Plain text
1151 #: build/C/man3/cmsg.3:65
1152 msgid ""
1153 "B<CMSG_FIRSTHDR>()  returns a pointer to the first I<cmsghdr> in the "
1154 "ancillary data buffer associated with the passed I<msghdr>."
1155 msgstr ""
1156 "B<CMSG_FIRSTHDR>()  は、渡した I<msghdr> に関連した補助データバッファ中の、最"
1157 "初の I<cmsghdr> へのポインタを返す。"
1158
1159 #. type: Plain text
1160 #: build/C/man3/cmsg.3:72
1161 msgid ""
1162 "B<CMSG_NXTHDR>()  returns the next valid I<cmsghdr> after the passed "
1163 "I<cmsghdr>.  It returns NULL when there isn't enough space left in the "
1164 "buffer."
1165 msgstr ""
1166 "B<CMSG_NXTHDR>()  は、渡した I<cmsghdr> の次にくる (有効な)  I<cmsghdr> を返"
1167 "す。 バッファに十分な空きが無い場合、NULL を返す。"
1168
1169 #. type: Plain text
1170 #: build/C/man3/cmsg.3:77
1171 msgid ""
1172 "B<CMSG_ALIGN>(), given a length, returns it including the required "
1173 "alignment.  This is a constant expression."
1174 msgstr ""
1175 "B<CMSG_ALIGN>()  に長さを与えると、必要なアラインメントを加味した長さを返して"
1176 "くる。 これは定数式である。"
1177
1178 #. type: Plain text
1179 #: build/C/man3/cmsg.3:82
1180 msgid ""
1181 "B<CMSG_SPACE>()  returns the number of bytes an ancillary element with "
1182 "payload of the passed data length occupies.  This is a constant expression."
1183 msgstr ""
1184 "B<CMSG_SPACE>()  は、与えたデータ長が占めるのに必要な補助要素 (ancillary "
1185 "element) の バイト数を返す。これは定数式である。"
1186
1187 #. type: Plain text
1188 #: build/C/man3/cmsg.3:86
1189 msgid "B<CMSG_DATA>()  returns a pointer to the data portion of a I<cmsghdr>."
1190 msgstr "B<CMSG_DATA>()  は、 I<cmsghdr> のデータ部分へのポインタを返す。"
1191
1192 #. type: Plain text
1193 #: build/C/man3/cmsg.3:97
1194 msgid ""
1195 "B<CMSG_LEN>()  returns the value to store in the I<cmsg_len> member of the "
1196 "I<cmsghdr> structure, taking into account any necessary alignment.  It takes "
1197 "the data length as an argument.  This is a constant expression."
1198 msgstr ""
1199 "B<CMSG_LEN>()  は、 I<cmsghdr> 構造体の I<cmsg_len> メンバにデータを格納する"
1200 "際に必要な値を返す。アラインメントも考慮に入れ られる。 引数としてデータ長を"
1201 "とる。これは定数式である。"
1202
1203 #. type: Plain text
1204 #: build/C/man3/cmsg.3:130
1205 msgid ""
1206 "To create ancillary data, first initialize the I<msg_controllen> member of "
1207 "the I<msghdr> with the length of the control message buffer.  Use "
1208 "B<CMSG_FIRSTHDR>()  on the I<msghdr> to get the first control message and "
1209 "B<CMSG_NXTHDR>()  to get all subsequent ones.  In each control message, "
1210 "initialize I<cmsg_len> (with B<CMSG_LEN>()), the other I<cmsghdr> header "
1211 "fields, and the data portion using B<CMSG_DATA>().  Finally, the "
1212 "I<msg_controllen> field of the I<msghdr> should be set to the sum of the "
1213 "B<CMSG_SPACE>()  of the length of all control messages in the buffer.  For "
1214 "more information on the I<msghdr>, see B<recvmsg>(2)."
1215 msgstr ""
1216 "補助データを作るためには最初に I<msghdr> のメンバー I<msg_controllen> を、制"
1217 "御メッセージバッファの長さで初期化する。 B<CMSG_FIRSTHDR>()  を I<msghdr> に"
1218 "用いると最初の制御メッセージが得られ、 B<CMSG_NXTHDR>()  を使うと次の制御メッ"
1219 "セージが得られる。 それぞれの制御メッセージでは、 I<cmsg_len> を初期化する "
1220 "(B<CMSG_LEN>()  を使う)。 その他の I<cmsghdr> ヘッダーフィールド、そしてデー"
1221 "タ部分に対しても B<CMSG_DATA>()  を使って初期化をする。 最後に I<msghdr> の "
1222 "I<msg_controllen> フィールドに、バッファ中の制御メッセージの長さの "
1223 "B<CMSG_SPACE>()  の合計がセットされる。 I<msghdr> についての詳細は B<recvmsg>"
1224 "(2)  を参照。"
1225
1226 #. type: Plain text
1227 #: build/C/man3/cmsg.3:137
1228 msgid ""
1229 "When the control message buffer is too short to store all messages, the "
1230 "B<MSG_CTRUNC> flag is set in the I<msg_flags> member of the I<msghdr>."
1231 msgstr ""
1232 "制御メッセージバッファが全てのメッセージを納めるのには短すぎる場合、 "
1233 "I<msghdr> の I<msg_flags> メンバーに B<MSG_CTRUNC> フラグがセットされる。"
1234
1235 #. type: Plain text
1236 #: build/C/man3/cmsg.3:142
1237 msgid ""
1238 "This ancillary data model conforms to the POSIX.1g draft, 4.4BSD-Lite, the "
1239 "IPv6 advanced API described in RFC\\ 2292 and the SUSv2.  B<CMSG_ALIGN>()  "
1240 "is a Linux extension."
1241 msgstr ""
1242 "この補助データモデルは、POSIX.1g draft, 4.4BSD-Lite, RFC\\ 2292 に 記述されて"
1243 "いる IPv6 advanced API, そして SUSv2 に準拠している。 B<CMSG_ALIGN>()  は "
1244 "Linux の拡張である。"
1245
1246 #. type: SH
1247 #: build/C/man3/cmsg.3:142 build/C/man7/ddp.7:221 build/C/man3/endian.3:89
1248 #: build/C/man3/getaddrinfo.3:585 build/C/man3/getaddrinfo_a.3:306
1249 #: build/C/man3/gethostbyname.3:325 build/C/man3/getipnodebyname.3:259
1250 #: build/C/man3/getnameinfo.3:205 build/C/man3/getnetent.3:126
1251 #: build/C/man2/getpeername.2:103 build/C/man5/host.conf.5:190
1252 #: build/C/man5/hosts.5:88 build/C/man5/hosts.equiv.5:49
1253 #: build/C/man7/icmp.7:163 build/C/man3/inet.3:218
1254 #: build/C/man3/inet_pton.3:129 build/C/man7/ip.7:1006 build/C/man7/ipv6.7:299
1255 #: build/C/man7/netdevice.7:247 build/C/man8/nscd.8:60
1256 #: build/C/man5/nsswitch.conf.5:277 build/C/man7/packet.7:295
1257 #: build/C/man7/raw.7:183 build/C/man3/setnetgrent.3:98
1258 #: build/C/man2/shutdown.2:88 build/C/man7/unix.7:400
1259 #, no-wrap
1260 msgid "NOTES"
1261 msgstr "注意"
1262
1263 #. type: Plain text
1264 #: build/C/man3/cmsg.3:147
1265 msgid ""
1266 "For portability, ancillary data should be accessed only using the macros "
1267 "described here.  B<CMSG_ALIGN>()  is a Linux extension and should be not "
1268 "used in portable programs."
1269 msgstr ""
1270 "移植性のために、補助データへのアクセスには、 ここで述べられているマクロを使う"
1271 "だけにすべきである。 B<CMSG_ALIGN>()  は Linux での拡張であり、移植性を考えた"
1272 "プログラムでは使うべきではない。"
1273
1274 #. type: Plain text
1275 #: build/C/man3/cmsg.3:157
1276 msgid ""
1277 "In Linux, B<CMSG_LEN>(), B<CMSG_DATA>(), and B<CMSG_ALIGN>()  are constant "
1278 "expressions (assuming their argument is constant); this could be used to "
1279 "declare the size of global variables.  This may be not portable, however."
1280 msgstr ""
1281 "Linux では B<CMSG_LEN>(), B<CMSG_DATA>(), B<CMSG_ALIGN>()  は定数式である (そ"
1282 "れらの引数が定数とみなされる)。 このことは、大域変数のサイズを宣言するのに使"
1283 "える。 しかし移植性はなくなるだろう。"
1284
1285 #. type: SH
1286 #: build/C/man3/cmsg.3:157 build/C/man3/endian.3:105
1287 #: build/C/man3/getaddrinfo.3:608 build/C/man3/getaddrinfo_a.3:312
1288 #: build/C/man3/getnameinfo.3:233 build/C/man3/getprotoent_r.3:133
1289 #: build/C/man3/getservent_r.3:132 build/C/man5/hosts.5:107
1290 #: build/C/man3/inet.3:254 build/C/man3/inet_ntop.3:113
1291 #: build/C/man3/inet_pton.3:154 build/C/man7/unix.7:430
1292 #, no-wrap
1293 msgid "EXAMPLE"
1294 msgstr "例"
1295
1296 #. type: Plain text
1297 #: build/C/man3/cmsg.3:161
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:168
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:185
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:191
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:199
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:211
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:216
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:218
1416 msgid "RFC\\ 2292"
1417 msgstr "RFC\\ 2292"
1418
1419 #. type: TH
1420 #: build/C/man7/ddp.7:7
1421 #, no-wrap
1422 msgid "DDP"
1423 msgstr "DDP"
1424
1425 #. type: Plain text
1426 #: build/C/man7/ddp.7:10
1427 msgid "ddp - Linux AppleTalk protocol implementation"
1428 msgstr "ddp - Linux での AppleTalk プロトコルの実装"
1429
1430 #. type: Plain text
1431 #: build/C/man7/ddp.7:14
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:16
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:18
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:29
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:34
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:55
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:60
1486 msgid ""
1487 "Raw sockets may be only opened 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:60 build/C/man7/ip.7:96 build/C/man7/ipv6.7:63
1495 #: build/C/man7/raw.7:89 build/C/man7/udp.7:92 build/C/man7/udplite.7:56
1496 #: build/C/man7/unix.7:53
1497 #, no-wrap
1498 msgid "Address Format"
1499 msgstr "アドレスのフォーマット"
1500
1501 #. type: Plain text
1502 #: build/C/man7/ddp.7:63
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:70
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:76
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:115
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:115 build/C/man7/ip.7:197 build/C/man7/ipv6.7:113
1568 #: build/C/man7/packet.7:174 build/C/man7/raw.7:105 build/C/man7/tcp.7:809
1569 #: build/C/man7/udp.7:172 build/C/man7/udplite.7:65 build/C/man7/unix.7:133
1570 #: build/C/man7/x25.7:67
1571 #, no-wrap
1572 msgid "Socket Options"
1573 msgstr "ソケットオプション"
1574
1575 #. type: Plain text
1576 #: build/C/man7/ddp.7:117
1577 msgid "No protocol-specific socket options are supported."
1578 msgstr "プロトコル固有のソケットオプションはない。"
1579
1580 #. type: Plain text
1581 #: build/C/man7/ddp.7:123
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:123
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:126
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:126
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:129
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:129
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:133
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:133
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:136
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:139
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:144
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:144 build/C/man3/gethostbyname.3:276
1655 #: build/C/man3/getnetent_r.3:127 build/C/man2/getpeername.2:71
1656 #: build/C/man3/getprotoent_r.3:117 build/C/man3/getservent_r.3:116
1657 #: build/C/man3/inet_ntop.3:89 build/C/man7/ip.7:915 build/C/man7/packet.7:241
1658 #: build/C/man7/raw.7:140 build/C/man2/shutdown.2:72 build/C/man7/tcp.7:1095
1659 #: build/C/man7/udp.7:231 build/C/man7/udplite.7:119 build/C/man7/unix.7:315
1660 #, no-wrap
1661 msgid "ERRORS"
1662 msgstr "エラー"
1663
1664 #. type: TP
1665 #: build/C/man7/ddp.7:148 build/C/man7/ip.7:919 build/C/man7/raw.7:141
1666 #, no-wrap
1667 msgid "B<EACCES>"
1668 msgstr "B<EACCES>"
1669
1670 #. type: Plain text
1671 #: build/C/man7/ddp.7:155
1672 msgid ""
1673 "The user tried to execute an operation without the necessary permissions.  "
1674 "These include sending to a broadcast address without having the broadcast "
1675 "flag set, and trying to bind to a reserved port without effective user ID 0 "
1676 "or B<CAP_NET_BIND_SERVICE>."
1677 msgstr ""
1678 "ユーザが行おうとした操作に必要な権限を持っていない。 broadcast フラグをセット"
1679 "せずにブロードキャストアドレスへ送信を行おうとした、 実効ユーザー ID が 0 で"
1680 "なく、 B<CAP_NET_BIND_SERVICE> 権限のないプロセスで特権ポートをバインドしよう"
1681 "とした、などが考えられる。"
1682
1683 #. type: TP
1684 #: build/C/man7/ddp.7:155 build/C/man7/ip.7:935 build/C/man7/unix.7:316
1685 #, no-wrap
1686 msgid "B<EADDRINUSE>"
1687 msgstr "B<EADDRINUSE>"
1688
1689 #. type: Plain text
1690 #: build/C/man7/ddp.7:158 build/C/man7/ip.7:938
1691 msgid "Tried to bind to an address already in use."
1692 msgstr "既に使用されているアドレスにバインドしようとした。"
1693
1694 #. type: TP
1695 #: build/C/man7/ddp.7:158 build/C/man7/ip.7:938 build/C/man7/packet.7:242
1696 #, no-wrap
1697 msgid "B<EADDRNOTAVAIL>"
1698 msgstr "B<EADDRNOTAVAIL>"
1699
1700 #. type: Plain text
1701 #: build/C/man7/ddp.7:162 build/C/man7/ip.7:942
1702 msgid ""
1703 "A nonexistent interface was requested or the requested source address was "
1704 "not local."
1705 msgstr ""
1706 "存在しないインターフェースが要求された。または 要求されたソースアドレスがロー"
1707 "カルでない。"
1708
1709 #. type: TP
1710 #: build/C/man7/ddp.7:162 build/C/man7/ip.7:942
1711 #, no-wrap
1712 msgid "B<EAGAIN>"
1713 msgstr "B<EAGAIN>"
1714
1715 #. type: Plain text
1716 #: build/C/man7/ddp.7:165 build/C/man7/ip.7:945
1717 msgid "Operation on a nonblocking socket would block."
1718 msgstr "非ブロッキングソケットに対してブロックする操作を行った。"
1719
1720 #. type: TP
1721 #: build/C/man7/ddp.7:165 build/C/man7/ip.7:945
1722 #, no-wrap
1723 msgid "B<EALREADY>"
1724 msgstr "B<EALREADY>"
1725
1726 #. type: Plain text
1727 #: build/C/man7/ddp.7:168
1728 msgid "A connection operation on a nonblocking socket is already in progress."
1729 msgstr "非ブロッキングソケットに対する接続操作が既に実行中である。"
1730
1731 #. type: TP
1732 #: build/C/man7/ddp.7:168 build/C/man7/ip.7:948
1733 #, no-wrap
1734 msgid "B<ECONNABORTED>"
1735 msgstr "B<ECONNABORTED>"
1736
1737 #. type: Plain text
1738 #: build/C/man7/ddp.7:172 build/C/man7/ip.7:952
1739 msgid "A connection was closed during an B<accept>(2)."
1740 msgstr "B<accept>(2)  の途中で接続がクローズされた。"
1741
1742 #. type: TP
1743 #: build/C/man7/ddp.7:172 build/C/man7/ip.7:952
1744 #, no-wrap
1745 msgid "B<EHOSTUNREACH>"
1746 msgstr "B<EHOSTUNREACH>"
1747
1748 #. type: Plain text
1749 #: build/C/man7/ddp.7:175
1750 msgid "No routing table entry matches the destination address."
1751 msgstr "行き先アドレスにマッチするエントリがルーティングテーブルにない。"
1752
1753 #. type: TP
1754 #: build/C/man7/ddp.7:175 build/C/man2/getpeername.2:83 build/C/man7/ip.7:957
1755 #: build/C/man7/packet.7:248 build/C/man7/raw.7:148 build/C/man7/unix.7:332
1756 #, no-wrap
1757 msgid "B<EINVAL>"
1758 msgstr "B<EINVAL>"
1759
1760 #. type: Plain text
1761 #: build/C/man7/ddp.7:178
1762 msgid "Invalid argument passed."
1763 msgstr "渡した引数が不正。"
1764
1765 #. type: TP
1766 #: build/C/man7/ddp.7:178 build/C/man7/ip.7:963 build/C/man7/unix.7:341
1767 #, no-wrap
1768 msgid "B<EISCONN>"
1769 msgstr "B<EISCONN>"
1770
1771 #. type: Plain text
1772 #: build/C/man7/ddp.7:182 build/C/man7/ip.7:967
1773 msgid "B<connect>(2)  was called on an already connected socket."
1774 msgstr "接続済みのソケットに対して B<connect>(2)  が呼ばれた。"
1775
1776 #. type: TP
1777 #: build/C/man7/ddp.7:182 build/C/man7/ip.7:967 build/C/man7/packet.7:251
1778 #: build/C/man7/raw.7:151
1779 #, no-wrap
1780 msgid "B<EMSGSIZE>"
1781 msgstr "B<EMSGSIZE>"
1782
1783 #. type: Plain text
1784 #: build/C/man7/ddp.7:185
1785 msgid "Datagram is bigger than the DDP MTU."
1786 msgstr "データグラムが DDP MTU より大きい。"
1787
1788 #. type: TP
1789 #: build/C/man7/ddp.7:185 build/C/man7/packet.7:260
1790 #, no-wrap
1791 msgid "B<ENODEV>"
1792 msgstr "B<ENODEV>"
1793
1794 #. type: Plain text
1795 #: build/C/man7/ddp.7:188
1796 msgid "Network device not available or not capable of sending IP."
1797 msgstr "ネットワークデバイスがない。あるいは IP を送ることができない。"
1798
1799 #. type: TP
1800 #: build/C/man7/ddp.7:188 build/C/man3/getnetent_r.3:128
1801 #: build/C/man3/getprotoent_r.3:118 build/C/man3/getservent_r.3:117
1802 #: build/C/man7/ip.7:975 build/C/man7/packet.7:263 build/C/man7/unix.7:346
1803 #, no-wrap
1804 msgid "B<ENOENT>"
1805 msgstr "B<ENOENT>"
1806
1807 #. type: Plain text
1808 #: build/C/man7/ddp.7:192 build/C/man7/ip.7:979
1809 msgid "B<SIOCGSTAMP> was called on a socket where no packet arrived."
1810 msgstr "パケットが到着していないソケットに対して B<SIOCGSTAMP> が呼ばれた。"
1811
1812 #. type: TP
1813 #: build/C/man7/ddp.7:192
1814 #, no-wrap
1815 msgid "B<ENOMEM> and B<ENOBUFS>"
1816 msgstr "B<ENOMEM> と B<ENOBUFS>"
1817
1818 #. type: Plain text
1819 #: build/C/man7/ddp.7:195
1820 msgid "Not enough memory available."
1821 msgstr "メモリが足りない。"
1822
1823 #. type: TP
1824 #: build/C/man7/ddp.7:195 build/C/man7/ip.7:979
1825 #, no-wrap
1826 msgid "B<ENOPKG>"
1827 msgstr "B<ENOPKG>"
1828
1829 #. type: Plain text
1830 #: build/C/man7/ddp.7:198 build/C/man7/ip.7:982
1831 msgid "A kernel subsystem was not configured."
1832 msgstr "カーネルサブシステムが設定されていない。"
1833
1834 #. type: TP
1835 #: build/C/man7/ddp.7:198 build/C/man7/ip.7:982
1836 #, no-wrap
1837 msgid "B<ENOPROTOOPT> and B<EOPNOTSUPP>"
1838 msgstr "B<ENOPROTOOPT> と B<EOPNOTSUPP>"
1839
1840 #. type: Plain text
1841 #: build/C/man7/ddp.7:201 build/C/man7/ip.7:985
1842 msgid "Invalid socket option passed."
1843 msgstr "無効なソケットオプションが渡された。"
1844
1845 #. type: TP
1846 #: build/C/man7/ddp.7:201 build/C/man2/getpeername.2:91 build/C/man7/ip.7:985
1847 #: build/C/man7/packet.7:266 build/C/man2/shutdown.2:77
1848 #: build/C/man7/unix.7:354
1849 #, no-wrap
1850 msgid "B<ENOTCONN>"
1851 msgstr "B<ENOTCONN>"
1852
1853 #. type: Plain text
1854 #: build/C/man7/ddp.7:205 build/C/man7/ip.7:989
1855 msgid ""
1856 "The operation is only defined on a connected socket, but the socket wasn't "
1857 "connected."
1858 msgstr ""
1859 "接続されていないソケットに対して、 接続状態でしか定義されていない操作を行おう"
1860 "とした。"
1861
1862 #. type: TP
1863 #: build/C/man7/ddp.7:205 build/C/man7/ip.7:989 build/C/man7/packet.7:272
1864 #: build/C/man7/raw.7:162 build/C/man7/unix.7:361
1865 #, no-wrap
1866 msgid "B<EPERM>"
1867 msgstr "B<EPERM>"
1868
1869 #. type: Plain text
1870 #: build/C/man7/ddp.7:210
1871 msgid ""
1872 "User doesn't have permission to set high priority, make a configuration "
1873 "change, or send signals to the requested process or group,"
1874 msgstr ""
1875 "高い優先度に設定したり、設定を変更したり、 指定したプロセスやグループにシグナ"
1876 "ルを送るのに必要な権限を ユーザが持っていない。"
1877
1878 #. type: TP
1879 #: build/C/man7/ddp.7:210 build/C/man7/ip.7:993 build/C/man7/tcp.7:1102
1880 #: build/C/man7/unix.7:365
1881 #, no-wrap
1882 msgid "B<EPIPE>"
1883 msgstr "B<EPIPE>"
1884
1885 #. type: Plain text
1886 #: build/C/man7/ddp.7:213 build/C/man7/ip.7:996
1887 msgid "The connection was unexpectedly closed or shut down by the other end."
1888 msgstr ""
1889 "接続が接続相手によって、予期しないやり方でクローズまたはシャットダウンされ"
1890 "た。"
1891
1892 #. type: TP
1893 #: build/C/man7/ddp.7:213 build/C/man7/ip.7:996 build/C/man7/unix.7:387
1894 #, no-wrap
1895 msgid "B<ESOCKTNOSUPPORT>"
1896 msgstr "B<ESOCKTNOSUPPORT>"
1897
1898 #. type: Plain text
1899 #: build/C/man7/ddp.7:216
1900 msgid "The socket was unconfigured, or an unknown socket type was requested."
1901 msgstr "ソケットが設定されていない。または未知のソケットタイプが要求された。"
1902
1903 #. type: Plain text
1904 #: build/C/man7/ddp.7:221
1905 msgid ""
1906 "Appletalk is supported by Linux 2.0 or higher.  The I</proc> interfaces "
1907 "exist since Linux 2.2."
1908 msgstr ""
1909 "Appletalk は Linux 2.0 以降でサポートされている。 I</proc> インタフェースは "
1910 "Linux 2.2 以降に存在する。"
1911
1912 #. type: Plain text
1913 #: build/C/man7/ddp.7:227
1914 msgid ""
1915 "Be very careful with the B<SO_BROADCAST> option - it is not privileged in "
1916 "Linux.  It is easy to overload the network with careless sending to "
1917 "broadcast addresses."
1918 msgstr ""
1919 "B<SO_BROADCAST> オプションを用いる時には慎重の上にも慎重になってほしい。 "
1920 "Linux ではこれに特権を必要としない。 不注意にブロードキャストアドレスに送信を"
1921 "行うと、 ネットワークの状態が簡単に変更されてしまう。"
1922
1923 #. type: SS
1924 #: build/C/man7/ddp.7:227 build/C/man7/ip.7:1054 build/C/man7/packet.7:326
1925 #, no-wrap
1926 msgid "Compatibility"
1927 msgstr "移植性"
1928
1929 #. type: Plain text
1930 #: build/C/man7/ddp.7:234
1931 msgid ""
1932 "The basic AppleTalk socket interface is compatible with B<netatalk> on BSD-"
1933 "derived systems.  Many BSD systems fail to check B<SO_BROADCAST> when "
1934 "sending broadcast frames; this can lead to compatibility problems."
1935 msgstr ""
1936 "基本的な Appletalk ソケットインターフェースは BSD 由来のシステムにおける "
1937 "B<netatalk> と互換性がある。多くの BSD システムでは、 ブロードキャストフレー"
1938 "ムを送信しようとしたときの B<SO_BROADCAST> のチェックに失敗する。これは互換性"
1939 "の問題となるかもしれない。"
1940
1941 #. type: Plain text
1942 #: build/C/man7/ddp.7:239
1943 msgid ""
1944 "The raw socket mode is unique to Linux and exists to support the alternative "
1945 "CAP package and AppleTalk monitoring tools more easily."
1946 msgstr ""
1947 "raw ソケットモードは Linux 独特のもので、もう一方の実装である CAP パッケージ"
1948 "や、 Appletalk モニタツールをより簡単に実装できるようになる。"
1949
1950 #. type: Plain text
1951 #: build/C/man7/ddp.7:241 build/C/man7/ip.7:1069
1952 msgid "There are too many inconsistent error values."
1953 msgstr "エラーの値がまったく首尾一貫していない。"
1954
1955 #. type: Plain text
1956 #: build/C/man7/ddp.7:244
1957 msgid ""
1958 "The ioctls used to configure routing tables, devices, AARP tables and other "
1959 "devices are not yet described."
1960 msgstr ""
1961 "ルーティングテーブル・デバイス・ AARP テーブル・その他のデバイスを 設定するた"
1962 "めに用いられる ioctl がまだ記述されていない。"
1963
1964 #. type: Plain text
1965 #: build/C/man7/ddp.7:249
1966 msgid "B<recvmsg>(2), B<sendmsg>(2), B<capabilities>(7), B<socket>(7)"
1967 msgstr "B<recvmsg>(2), B<sendmsg>(2), B<capabilities>(7), B<socket>(7)"
1968
1969 #. type: TH
1970 #: build/C/man3/endian.3:26
1971 #, no-wrap
1972 msgid "ENDIAN"
1973 msgstr "ENDIAN"
1974
1975 #. type: TH
1976 #: build/C/man3/endian.3:26 build/C/man3/getnetent_r.3:24
1977 #: build/C/man3/getprotoent_r.3:24 build/C/man3/getservent_r.3:24
1978 #: build/C/man3/rexec.3:39 build/C/man7/tcp.7:16
1979 #, no-wrap
1980 msgid "2010-09-10"
1981 msgstr "2010-09-10"
1982
1983 #. type: Plain text
1984 #: build/C/man3/endian.3:31
1985 msgid ""
1986 "htobe16, htole16, be16toh, le16toh, htobe32, htole32, be32toh, le32toh, "
1987 "htobe64, htole64, be64toh, le64toh - convert values between host and big-/"
1988 "little-endian byte order"
1989 msgstr ""
1990 "htobe16, htole16, be16toh, le16toh, htobe32, htole32, be32toh, le32toh, "
1991 "htobe64, htole64, be64toh, le64toh - convert values between host and big-/"
1992 "little-endian byte order"
1993
1994 #. type: Plain text
1995 #: build/C/man3/endian.3:35
1996 #, no-wrap
1997 msgid ""
1998 "B<#define _BSD_SOURCE>             /* See feature_test_macros(7) */\n"
1999 "B<#include E<lt>endian.hE<gt>>\n"
2000 msgstr ""
2001 "B<#define _BSD_SOURCE>             /* See feature_test_macros(7) */\n"
2002 "B<#include E<lt>endian.hE<gt>>\n"
2003
2004 #. type: Plain text
2005 #: build/C/man3/endian.3:40
2006 #, no-wrap
2007 msgid ""
2008 "B<uint16_t htobe16(uint16_t >I<host_16bits>B<);>\n"
2009 "B<uint16_t htole16(uint16_t >I<host_16bits>B<);>\n"
2010 "B<uint16_t be16toh(uint16_t >I<big_endian_16bits>B<);>\n"
2011 "B<uint16_t le16toh(uint16_t >I<little_endian_16bits>B<);>\n"
2012 msgstr ""
2013 "B<uint16_t htobe16(uint16_t >I<host_16bits>B<);>\n"
2014 "B<uint16_t htole16(uint16_t >I<host_16bits>B<);>\n"
2015 "B<uint16_t be16toh(uint16_t >I<big_endian_16bits>B<);>\n"
2016 "B<uint16_t le16toh(uint16_t >I<little_endian_16bits>B<);>\n"
2017
2018 #. type: Plain text
2019 #: build/C/man3/endian.3:45
2020 #, no-wrap
2021 msgid ""
2022 "B<uint32_t htobe32(uint32_t >I<host_32bits>B<);>\n"
2023 "B<uint32_t htole32(uint32_t >I<host_32bits>B<);>\n"
2024 "B<uint32_t be32toh(uint32_t >I<big_endian_32bits>B<);>\n"
2025 "B<uint32_t le32toh(uint32_t >I<little_endian_32bits>B<);>\n"
2026 msgstr ""
2027 "B<uint32_t htobe32(uint32_t >I<host_32bits>B<);>\n"
2028 "B<uint32_t htole32(uint32_t >I<host_32bits>B<);>\n"
2029 "B<uint32_t be32toh(uint32_t >I<big_endian_32bits>B<);>\n"
2030 "B<uint32_t le32toh(uint32_t >I<little_endian_32bits>B<);>\n"
2031
2032 #. type: Plain text
2033 #: build/C/man3/endian.3:50
2034 #, no-wrap
2035 msgid ""
2036 "B<uint64_t htobe64(uint64_t >I<host_64bits>B<);>\n"
2037 "B<uint64_t htole64(uint64_t >I<host_64bits>B<);>\n"
2038 "B<uint64_t be64toh(uint64_t >I<big_endian_64bits>B<);>\n"
2039 "B<uint64_t le64toh(uint64_t >I<little_endian_64bits>B<);>\n"
2040 msgstr ""
2041 "B<uint64_t htobe64(uint64_t >I<host_64bits>B<);>\n"
2042 "B<uint64_t htole64(uint64_t >I<host_64bits>B<);>\n"
2043 "B<uint64_t be64toh(uint64_t >I<big_endian_64bits>B<);>\n"
2044 "B<uint64_t le64toh(uint64_t >I<little_endian_64bits>B<);>\n"
2045
2046 #. type: Plain text
2047 #: build/C/man3/endian.3:55
2048 msgid ""
2049 "These functions convert the byte encoding of integer values from the byte "
2050 "order that the current CPU (the \"host\") uses, to and from little-endian "
2051 "and big-endian byte order."
2052 msgstr ""
2053 "These functions convert the byte encoding of integer values from the byte "
2054 "order that the current CPU (the \"host\") uses, to and from little-endian "
2055 "and big-endian byte order."
2056
2057 #. type: Plain text
2058 #: build/C/man3/endian.3:60
2059 msgid ""
2060 "The number, I<nn>, in the name of each function indicates the size of "
2061 "integer handled by the function, either 16, 32, or 64 bits."
2062 msgstr ""
2063 "The number, I<nn>, in the name of each function indicates the size of "
2064 "integer handled by the function, either 16, 32, or 64 bits."
2065
2066 #. type: Plain text
2067 #: build/C/man3/endian.3:63
2068 msgid ""
2069 "The functions with names of the form \"htobeI<nn>\" convert from host byte "
2070 "order to big-endian order."
2071 msgstr ""
2072 "The functions with names of the form \"htobeI<nn>\" convert from host byte "
2073 "order to big-endian order."
2074
2075 #. type: Plain text
2076 #: build/C/man3/endian.3:66
2077 msgid ""
2078 "The functions with names of the form \"htoleI<nn>\" convert from host byte "
2079 "order to little-endian order."
2080 msgstr ""
2081 "The functions with names of the form \"htoleI<nn>\" convert from host byte "
2082 "order to little-endian order."
2083
2084 #. type: Plain text
2085 #: build/C/man3/endian.3:69
2086 msgid ""
2087 "The functions with names of the form \"beI<nn>toh\" convert from big-endian "
2088 "order to host byte order."
2089 msgstr ""
2090 "The functions with names of the form \"beI<nn>toh\" convert from big-endian "
2091 "order to host byte order."
2092
2093 #. type: Plain text
2094 #: build/C/man3/endian.3:72
2095 msgid ""
2096 "The functions with names of the form \"leI<nn>toh\" convert from little-"
2097 "endian order to host byte order."
2098 msgstr ""
2099 "The functions with names of the form \"leI<nn>toh\" convert from little-"
2100 "endian order to host byte order."
2101
2102 #. type: Plain text
2103 #: build/C/man3/endian.3:74
2104 msgid "These function were added to glibc in version 2.9."
2105 msgstr "These function were added to glibc in version 2.9."
2106
2107 #. type: Plain text
2108 #: build/C/man3/endian.3:89
2109 msgid ""
2110 "These functions are nonstandard.  Similar functions are present on the BSDs, "
2111 "where the required header file is I<E<lt>sys/endian.hE<gt>> instead of "
2112 "I<E<lt>endian.hE<gt>>.  Unfortunately, NetBSD, FreeBSD, and glibc haven't "
2113 "followed the original OpenBSD naming convention for these functions, whereby "
2114 "the I<nn> component always appears at the end of the function name (thus, "
2115 "for example, in NetBSD, FreeBSD, and glibc, the equivalent of OpenBSDs "
2116 "\"betoh32\" is \"be32toh\")."
2117 msgstr ""
2118 "These functions are nonstandard.  Similar functions are present on the BSDs, "
2119 "where the required header file is I<E<lt>sys/endian.hE<gt>> instead of "
2120 "I<E<lt>endian.hE<gt>>.  Unfortunately, NetBSD, FreeBSD, and glibc haven't "
2121 "followed the original OpenBSD naming convention for these functions, whereby "
2122 "the I<nn> component always appears at the end of the function name (thus, "
2123 "for example, in NetBSD, FreeBSD, and glibc, the equivalent of OpenBSDs "
2124 "\"betoh32\" is \"be32toh\")."
2125
2126 #. type: Plain text
2127 #: build/C/man3/endian.3:97
2128 msgid ""
2129 "These functions are similar to the older B<byteorder>(3)  family of "
2130 "functions.  For example, B<be32toh>()  is identical to B<ntohl>()B<.>"
2131 msgstr ""
2132 "These functions are similar to the older B<byteorder>(3)  family of "
2133 "functions.  For example, B<be32toh>()  is identical to B<ntohl>()B<.>"
2134
2135 #. type: Plain text
2136 #: build/C/man3/endian.3:105
2137 msgid ""
2138 "The advantage of the B<byteorder>(3)  functions is that they are standard "
2139 "functions available on all UNIX systems.  On the other hand, the fact that "
2140 "they were designed for use in the context of TCP/IP means that they lack the "
2141 "64-bit and little-endian variants described in this page."
2142 msgstr ""
2143 "The advantage of the B<byteorder>(3)  functions is that they are standard "
2144 "functions available on all UNIX systems.  On the other hand, the fact that "
2145 "they were designed for use in the context of TCP/IP means that they lack the "
2146 "64-bit and little-endian variants described in this page."
2147
2148 #. type: Plain text
2149 #: build/C/man3/endian.3:112
2150 msgid ""
2151 "The program below display the results of converting an integer from host "
2152 "byte order to both little-endian and big-endian byte order.  Since host byte "
2153 "order is either little-endian or big-endian, only one of these conversions "
2154 "will have an effect.  When we run this program on a little-endian system "
2155 "such as x86-32, we see the following:"
2156 msgstr ""
2157 "The program below display the results of converting an integer from host "
2158 "byte order to both little-endian and big-endian byte order.  Since host byte "
2159 "order is either little-endian or big-endian, only one of these conversions "
2160 "will have an effect.  When we run this program on a little-endian system "
2161 "such as x86-32, we see the following:"
2162
2163 #. type: Plain text
2164 #: build/C/man3/endian.3:119
2165 #, no-wrap
2166 msgid ""
2167 "$ B<./a.out>\n"
2168 "x.u32 = 0x44332211\n"
2169 "htole32(x.u32) = 0x44332211\n"
2170 "htobe32(x.u32) = 0x11223344\n"
2171 msgstr ""
2172 "$ B<./a.out>\n"
2173 "x.u32 = 0x44332211\n"
2174 "htole32(x.u32) = 0x44332211\n"
2175 "htobe32(x.u32) = 0x11223344\n"
2176
2177 #. type: SS
2178 #: build/C/man3/endian.3:121 build/C/man3/getprotoent_r.3:160
2179 #: build/C/man3/getservent_r.3:158 build/C/man3/inet.3:270
2180 #: build/C/man3/inet_pton.3:171
2181 #, no-wrap
2182 msgid "Program source"
2183 msgstr "プログラムのソース"
2184
2185 #. type: Plain text
2186 #: build/C/man3/endian.3:128
2187 #, no-wrap
2188 msgid ""
2189 "#include E<lt>endian.hE<gt>\n"
2190 "#include E<lt>stdint.hE<gt>\n"
2191 "#include E<lt>stdio.hE<gt>\n"
2192 "#include E<lt>stdlib.hE<gt>\n"
2193 msgstr ""
2194 "#include E<lt>endian.hE<gt>\n"
2195 "#include E<lt>stdint.hE<gt>\n"
2196 "#include E<lt>stdio.hE<gt>\n"
2197 "#include E<lt>stdlib.hE<gt>\n"
2198
2199 #. type: Plain text
2200 #: build/C/man3/endian.3:136
2201 #, no-wrap
2202 msgid ""
2203 "int\n"
2204 "main(int argc, char *argv[])\n"
2205 "{\n"
2206 "    union {\n"
2207 "\tuint32_t u32;\n"
2208 "\tuint8_t arr[4];\n"
2209 "    } x;\n"
2210 msgstr ""
2211 "int\n"
2212 "main(int argc, char *argv[])\n"
2213 "{\n"
2214 "    union {\n"
2215 "\tuint32_t u32;\n"
2216 "\tuint8_t arr[4];\n"
2217 "    } x;\n"
2218
2219 #. type: Plain text
2220 #: build/C/man3/endian.3:141
2221 #, no-wrap
2222 msgid ""
2223 "    x.arr[0] = 0x11;\t/* Lowest-address byte */\n"
2224 "    x.arr[1] = 0x22;\n"
2225 "    x.arr[2] = 0x33;\n"
2226 "    x.arr[3] = 0x44;\t/* Highest-address byte */\n"
2227 msgstr ""
2228 "    x.arr[0] = 0x11;\t/* Lowest-address byte */\n"
2229 "    x.arr[1] = 0x22;\n"
2230 "    x.arr[2] = 0x33;\n"
2231 "    x.arr[3] = 0x44;\t/* Highest-address byte */\n"
2232
2233 #. type: Plain text
2234 #: build/C/man3/endian.3:145
2235 #, no-wrap
2236 msgid ""
2237 "    printf(\"x.u32 = 0x%x\\en\", x.u32);\n"
2238 "    printf(\"htole32(x.u32) = 0x%x\\en\", htole32(x.u32));\n"
2239 "    printf(\"htobe32(x.u32) = 0x%x\\en\", htobe32(x.u32));\n"
2240 msgstr ""
2241 "    printf(\"x.u32 = 0x%x\\en\", x.u32);\n"
2242 "    printf(\"htole32(x.u32) = 0x%x\\en\", htole32(x.u32));\n"
2243 "    printf(\"htobe32(x.u32) = 0x%x\\en\", htobe32(x.u32));\n"
2244
2245 #. type: Plain text
2246 #: build/C/man3/endian.3:148 build/C/man3/getaddrinfo.3:812
2247 #: build/C/man3/getprotoent_r.3:234 build/C/man3/getservent_r.3:238
2248 #: build/C/man3/inet_pton.3:212
2249 #, no-wrap
2250 msgid ""
2251 "    exit(EXIT_SUCCESS);\n"
2252 "}\n"
2253 msgstr ""
2254 "    exit(EXIT_SUCCESS);\n"
2255 "}\n"
2256
2257 #. type: Plain text
2258 #: build/C/man3/endian.3:151
2259 msgid "B<byteorder>(3)"
2260 msgstr "B<byteorder>(3)"
2261
2262 #. type: TH
2263 #: build/C/man3/ether_aton.3:31
2264 #, no-wrap
2265 msgid "ETHER_ATON"
2266 msgstr "ETHER_ATON"
2267
2268 #. type: TH
2269 #: build/C/man3/ether_aton.3:31
2270 #, no-wrap
2271 msgid "2002-07-20"
2272 msgstr "2002-07-20"
2273
2274 #. type: Plain text
2275 #: build/C/man3/ether_aton.3:35
2276 msgid ""
2277 "ether_aton, ether_ntoa, ether_ntohost, ether_hostton, ether_line, "
2278 "ether_ntoa_r, ether_aton_r - Ethernet address manipulation routines"
2279 msgstr ""
2280 "ether_aton, ether_ntoa, ether_ntohost, ether_hostton, ether_line, "
2281 "ether_ntoa_r, ether_aton_r - Ethernet アドレスの操作用関数"
2282
2283 #. type: Plain text
2284 #: build/C/man3/ether_aton.3:38
2285 #, no-wrap
2286 msgid "B<#include E<lt>netinet/ether.hE<gt>>\n"
2287 msgstr "B<#include E<lt>netinet/ether.hE<gt>>\n"
2288
2289 #. type: Plain text
2290 #: build/C/man3/ether_aton.3:40
2291 #, no-wrap
2292 msgid "B<char *ether_ntoa(const struct ether_addr *>I<addr>B<);>\n"
2293 msgstr "B<char *ether_ntoa(const struct ether_addr *>I<addr>B<);>\n"
2294
2295 #. type: Plain text
2296 #: build/C/man3/ether_aton.3:42
2297 #, no-wrap
2298 msgid "B<struct ether_addr *ether_aton(const char *>I<asc>B<);>\n"
2299 msgstr "B<struct ether_addr *ether_aton(const char *>I<asc>B<);>\n"
2300
2301 #. type: Plain text
2302 #: build/C/man3/ether_aton.3:44
2303 #, no-wrap
2304 msgid "B<int ether_ntohost(char *>I<hostname>B<, const struct ether_addr *>I<addr>B<);>\n"
2305 msgstr "B<int ether_ntohost(char *>I<hostname>B<, const struct ether_addr *>I<addr>B<);>\n"
2306
2307 #. type: Plain text
2308 #: build/C/man3/ether_aton.3:46
2309 #, no-wrap
2310 msgid "B<int ether_hostton(const char *>I<hostname>B<, struct ether_addr *>I<addr>B<);>\n"
2311 msgstr "B<int ether_hostton(const char *>I<hostname>B<, struct ether_addr *>I<addr>B<);>\n"
2312
2313 #. type: Plain text
2314 #: build/C/man3/ether_aton.3:49
2315 #, no-wrap
2316 msgid ""
2317 "B<int ether_line(const char *>I<line>B<, struct ether_addr *>I<addr>B<,>\n"
2318 "B<               char *>I<hostname>B<);>\n"
2319 msgstr ""
2320 "B<int ether_line(const char *>I<line>B<, struct ether_addr *>I<addr>B<,>\n"
2321 "B<               char *>I<hostname>B<);>\n"
2322
2323 #. type: Plain text
2324 #: build/C/man3/ether_aton.3:51 build/C/man3/gethostbyname.3:68
2325 #, no-wrap
2326 msgid "/* GNU extensions */\n"
2327 msgstr "/* GNU 拡張 */\n"
2328
2329 #. type: Plain text
2330 #: build/C/man3/ether_aton.3:53
2331 #, no-wrap
2332 msgid "B<char *ether_ntoa_r(const struct ether_addr *>I<addr>B<, char *>I<buf>B<);>\n"
2333 msgstr "B<char *ether_ntoa_r(const struct ether_addr *>I<addr>B<, char *>I<buf>B<);>\n"
2334
2335 #. type: Plain text
2336 #: build/C/man3/ether_aton.3:56
2337 #, no-wrap
2338 msgid ""
2339 "B<struct ether_addr *ether_aton_r(const char *>I<asc>B<,>\n"
2340 "B<                                struct ether_addr *>I<addr>B<);>\n"
2341 msgstr ""
2342 "B<struct ether_addr *ether_aton_r(const char *>I<asc>B<,>\n"
2343 "B<                                struct ether_addr *>I<addr>B<);>\n"
2344
2345 #. type: Plain text
2346 #: build/C/man3/ether_aton.3:66
2347 msgid ""
2348 "B<ether_aton>()  converts the 48-bit Ethernet host address I<asc> from the "
2349 "standard hex-digits-and-colons notation into binary data in network byte "
2350 "order and returns a pointer to it in a statically allocated buffer, which "
2351 "subsequent calls will overwrite.  B<ether_aton>()  returns NULL if the "
2352 "address is invalid."
2353 msgstr ""
2354 "関数 B<ether_aton>()  は、標準的な 16進数とコロンの形式で書かれた 48ビットの "
2355 "Ethernet ホストアドレス I<asc> を、ネットワークでのバイト順 (byte order)  の"
2356 "バイナリデータに変換し、静的に割り当てられたバッファに格納されたデータ へのポ"
2357 "インタを返す。このバッファは、これ以降の関数呼び出しで上書きされる。 アドレス"
2358 "が不正な場合、 B<ether_aton>()  は NULL を返す。"
2359
2360 #. type: Plain text
2361 #: build/C/man3/ether_aton.3:74
2362 msgid ""
2363 "The B<ether_ntoa>()  function converts the Ethernet host address I<addr> "
2364 "given in network byte order to a string in standard hex-digits-and-colons "
2365 "notation, omitting leading zeros.  The string is returned in a statically "
2366 "allocated buffer, which subsequent calls will overwrite."
2367 msgstr ""
2368 "関数 B<ether_ntoa>()  は、ネットワークのバイト順で表された Ethernet ホストア"
2369 "ドレス I<addr> を、標準的な 16進数とコロンの形式の文字列に変換する。 但し、先"
2370 "頭の 0 は省略される。変換後の文字列は静的に割り当てられたバッファ に格納され"
2371 "て返される。このバッファは、これ以降の関数呼び出しで上書きされる。"
2372
2373 #. type: Plain text
2374 #: build/C/man3/ether_aton.3:81
2375 msgid ""
2376 "The B<ether_ntohost>()  function maps an Ethernet address to the "
2377 "corresponding hostname in I</etc/ethers> and returns nonzero if it cannot be "
2378 "found."
2379 msgstr ""
2380 "関数 B<ether_ntohost>()  は、Ethernet アドレスに対応するホスト名を I</etc/"
2381 "ethers> を検索して割り当てる。対応するホスト名が見つからなかった場合は、 非 "
2382 "0 を返す。"
2383
2384 #. type: Plain text
2385 #: build/C/man3/ether_aton.3:88
2386 msgid ""
2387 "The B<ether_hostton>()  function maps a hostname to the corresponding "
2388 "Ethernet address in I</etc/ethers> and returns nonzero if it cannot be found."
2389 msgstr ""
2390 "関数 B<ether_hostton>()  は、ホスト名に対応する Ethernet アドレスを I</etc/"
2391 "ethers> を検索して割り当てる。対応するホスト名が見つからなかった場合は、 非 "
2392 "0 を返す。"
2393
2394 #. type: Plain text
2395 #: build/C/man3/ether_aton.3:100
2396 msgid ""
2397 "The B<ether_line>()  function parses a line in I</etc/ethers> format "
2398 "(ethernet address followed by whitespace followed by hostname; \\(aq#\\(aq "
2399 "introduces a comment) and returns an address and hostname pair, or nonzero "
2400 "if it cannot be parsed.  The buffer pointed to by I<hostname> must be "
2401 "sufficiently long, for example, have the same length as I<line>."
2402 msgstr ""
2403 "関数 B<ether_line>()  は、 I</etc/ethers> 形式になった行を解析し、 アドレスと"
2404 "ホスト名の組を返す (I</etc/ethers> 形式は、Ethernet アドレス、ホスト名が空白"
2405 "文字 (whitespace)  で区切られた書式で、\\(aq#\\(aq 以降はコメントとみなされ"
2406 "る)。 解析できなかった場合は、非 0 を返す。 I<hostname> で指定されたバッファ"
2407 "は十分な長さが必要である。つまり、 I<line> と同じ長さでなければならない。"
2408
2409 #. type: Plain text
2410 #: build/C/man3/ether_aton.3:111
2411 msgid ""
2412 "The functions B<ether_ntoa_r>()  and B<ether_aton_r>()  are reentrant thread-"
2413 "safe versions of B<ether_ntoa>()  and B<ether_aton>()  respectively, and do "
2414 "not use static buffers."
2415 msgstr ""
2416 "関数 B<ether_ntoa_r>()  と B<ether_aton_r>()  は、 それぞれ B<ether_ntoa>()  "
2417 "と B<ether_aton>()  の リエントラントでスレッドセーフなバージョンであり、 静"
2418 "的なバッファを使用しない。"
2419
2420 #. type: Plain text
2421 #: build/C/man3/ether_aton.3:115
2422 msgid ""
2423 "The structure I<ether_addr> is defined in I<E<lt>net/ethernet.hE<gt>> as:"
2424 msgstr ""
2425 "I<ether_addr> 構造体は I<E<lt>net/ethernet.hE<gt>> で次のように定義されてい"
2426 "る:"
2427
2428 #. type: Plain text
2429 #: build/C/man3/ether_aton.3:121
2430 #, no-wrap
2431 msgid ""
2432 "struct ether_addr {\n"
2433 "    uint8_t ether_addr_octet[6];\n"
2434 "}\n"
2435 msgstr ""
2436 "struct ether_addr {\n"
2437 "    uint8_t ether_addr_octet[6];\n"
2438 "}\n"
2439
2440 #. type: Plain text
2441 #: build/C/man3/ether_aton.3:125
2442 msgid "4.3BSD, SunOS."
2443 msgstr "4.3BSD, SunOS."
2444
2445 #. type: Plain text
2446 #: build/C/man3/ether_aton.3:129
2447 msgid "The glibc 2.2.5 implementation of B<ether_line>()  is broken."
2448 msgstr "glibc 2.2.5 での B<ether_line>()  の実装はおかしい。"
2449
2450 #. type: Plain text
2451 #: build/C/man3/ether_aton.3:131
2452 msgid "B<ethers>(5)"
2453 msgstr "B<ethers>(5)"
2454
2455 #. type: TH
2456 #: build/C/man3/getaddrinfo.3:41
2457 #, no-wrap
2458 msgid "GETADDRINFO"
2459 msgstr "GETADDRINFO"
2460
2461 #. type: TH
2462 #: build/C/man3/getaddrinfo.3:41 build/C/man3/getaddrinfo_a.3:27
2463 #, no-wrap
2464 msgid "2010-09-27"
2465 msgstr "2010-09-27"
2466
2467 #. type: Plain text
2468 #: build/C/man3/getaddrinfo.3:45
2469 msgid ""
2470 "getaddrinfo, freeaddrinfo, gai_strerror - network address and service "
2471 "translation"
2472 msgstr ""
2473 "getaddrinfo, freeaddrinfo, gai_strerror - ネットワークのアドレスとサービスを"
2474 "変換する"
2475
2476 #. type: Plain text
2477 #: build/C/man3/getaddrinfo.3:50 build/C/man3/getipnodebyname.3:33
2478 #, no-wrap
2479 msgid ""
2480 "B<#include E<lt>sys/types.hE<gt>>\n"
2481 "B<#include E<lt>sys/socket.hE<gt>>\n"
2482 "B<#include E<lt>netdb.hE<gt>>\n"
2483 msgstr ""
2484 "B<#include E<lt>sys/types.hE<gt>>\n"
2485 "B<#include E<lt>sys/socket.hE<gt>>\n"
2486 "B<#include E<lt>netdb.hE<gt>>\n"
2487
2488 #. type: Plain text
2489 #: build/C/man3/getaddrinfo.3:54
2490 #, no-wrap
2491 msgid ""
2492 "B<int getaddrinfo(const char *>I<node>B<, const char *>I<service>B<,>\n"
2493 "B<                const struct addrinfo *>I<hints>B<,>\n"
2494 "B<                struct addrinfo **>I<res>B<);>\n"
2495 msgstr ""
2496 "B<int getaddrinfo(const char *>I<node>B<, const char *>I<service>B<,>\n"
2497 "B<                const struct addrinfo *>I<hints>B<,>\n"
2498 "B<                struct addrinfo **>I<res>B<);>\n"
2499
2500 #. type: Plain text
2501 #: build/C/man3/getaddrinfo.3:56
2502 #, no-wrap
2503 msgid "B<void freeaddrinfo(struct addrinfo *>I<res>B<);>\n"
2504 msgstr "B<void freeaddrinfo(struct addrinfo *>I<res>B<);>\n"
2505
2506 #. type: Plain text
2507 #: build/C/man3/getaddrinfo.3:58
2508 #, no-wrap
2509 msgid "B<const char *gai_strerror(int >I<errcode>B<);>\n"
2510 msgstr "B<const char *gai_strerror(int >I<errcode>B<);>\n"
2511
2512 #. type: Plain text
2513 #: build/C/man3/getaddrinfo.3:63 build/C/man3/gethostbyname.3:91
2514 #: build/C/man3/getnameinfo.3:23 build/C/man3/getnetent_r.3:50
2515 #: build/C/man3/getprotoent_r.3:47 build/C/man3/getservent_r.3:47
2516 #: build/C/man3/inet.3:70 build/C/man3/rcmd.3:64 build/C/man3/setnetgrent.3:29
2517 msgid ""
2518 "Feature Test Macro Requirements for glibc (see B<feature_test_macros>(7)):"
2519 msgstr "glibc 向けの機能検査マクロの要件 (B<feature_test_macros>(7)  参照):"
2520
2521 #. type: Plain text
2522 #: build/C/man3/getaddrinfo.3:69
2523 msgid "B<getaddrinfo>(), B<freeaddrinfo>(), B<gai_strerror>():"
2524 msgstr "B<getaddrinfo>(), B<freeaddrinfo>(), B<gai_strerror>():"
2525
2526 #. type: Plain text
2527 #: build/C/man3/getaddrinfo.3:71
2528 msgid "_POSIX_C_SOURCE\\ E<gt>=\\ 1 || _XOPEN_SOURCE || _POSIX_SOURCE"
2529 msgstr "_POSIX_C_SOURCE\\ E<gt>=\\ 1 || _XOPEN_SOURCE || _POSIX_SOURCE"
2530
2531 #.  .BR getipnodebyname (3),
2532 #.  .BR getipnodebyaddr (3),
2533 #. type: Plain text
2534 #: build/C/man3/getaddrinfo.3:98
2535 msgid ""
2536 "Given I<node> and I<service>, which identify an Internet host and a service, "
2537 "B<getaddrinfo>()  returns one or more I<addrinfo> structures, each of which "
2538 "contains an Internet address that can be specified in a call to B<bind>(2)  "
2539 "or B<connect>(2).  The B<getaddrinfo>()  function combines the functionality "
2540 "provided by the B<getservbyname>(3)  and B<getservbyport>(3)  functions into "
2541 "a single interface, but unlike the latter functions, B<getaddrinfo>()  is "
2542 "reentrant and allows programs to eliminate IPv4-versus-IPv6 dependencies."
2543 msgstr ""
2544 "B<getaddrinfo>()  は、(インターネットのホストとサービスを識別する)  I<node> "
2545 "と I<service> を渡すと、一つ以上の I<addrinfo> 構造体を返す。それぞれの "
2546 "I<addrinfo> 構造体には、 B<bind>(2)  や B<connect>(2)  を呼び出す際に指定でき"
2547 "るインターネットアドレスが格納されている。 B<getaddrinfo>()  関数は、 "
2548 "B<getservbyname>(3)  と B<getservbyport>(3)  の機能をまとめて一つのインター"
2549 "フェースにしたものであるが、 これらの関数と違い、 B<getaddrinfo>()  はリエン"
2550 "トラントであり、 B<getaddrinfo>()  を使うことでプログラムは IPv4 と IPv6 の違"
2551 "いに関する依存関係を なくすことができる。"
2552
2553 #. type: Plain text
2554 #: build/C/man3/getaddrinfo.3:104
2555 msgid ""
2556 "The I<addrinfo> structure used by B<getaddrinfo>()  contains the following "
2557 "fields:"
2558 msgstr ""
2559 "B<getaddrinfo>()  が用いる I<addrinfo> 構造体は以下のフィールドを含む。"
2560
2561 #. type: Plain text
2562 #: build/C/man3/getaddrinfo.3:117
2563 #, no-wrap
2564 msgid ""
2565 "struct addrinfo {\n"
2566 "    int              ai_flags;\n"
2567 "    int              ai_family;\n"
2568 "    int              ai_socktype;\n"
2569 "    int              ai_protocol;\n"
2570 "    size_t           ai_addrlen;\n"
2571 "    struct sockaddr *ai_addr;\n"
2572 "    char            *ai_canonname;\n"
2573 "    struct addrinfo *ai_next;\n"
2574 "};\n"
2575 msgstr ""
2576 "struct addrinfo {\n"
2577 "    int              ai_flags;\n"
2578 "    int              ai_family;\n"
2579 "    int              ai_socktype;\n"
2580 "    int              ai_protocol;\n"
2581 "    size_t           ai_addrlen;\n"
2582 "    struct sockaddr *ai_addr;\n"
2583 "    char            *ai_canonname;\n"
2584 "    struct addrinfo *ai_next;\n"
2585 "};\n"
2586
2587 #. type: Plain text
2588 #: build/C/man3/getaddrinfo.3:139
2589 msgid ""
2590 "The I<hints> argument points to an I<addrinfo> structure that specifies "
2591 "criteria for selecting the socket address structures returned in the list "
2592 "pointed to by I<res>.  If I<hints> is not NULL it points to an I<addrinfo> "
2593 "structure whose I<ai_family>, I<ai_socktype>, and I<ai_protocol> specify "
2594 "criteria that limit the set of socket addresses returned by B<getaddrinfo>"
2595 "(), as follows:"
2596 msgstr ""
2597 "I<hints> 引き数は I<addrinfo> 構造体を指し示し、この構造体を用いて I<res> が"
2598 "指すリストに入れて返すソケットアドレス構造体を選択するための基準を指定する。 "
2599 "I<hints> が NULL でない場合、 I<hints> は I<addrinfo> 構造体を指し示し、その"
2600 "構造体のフィールド I<ai_family>, I<ai_socktype>, I<ai_protocol> で "
2601 "B<getaddrinfo>()  が返すソケットアドレス集合に対する基準を指定する。"
2602
2603 #. type: TP
2604 #: build/C/man3/getaddrinfo.3:139
2605 #, no-wrap
2606 msgid "I<ai_family>"
2607 msgstr "I<ai_family>"
2608
2609 #. type: Plain text
2610 #: build/C/man3/getaddrinfo.3:155
2611 msgid ""
2612 "This field specifies the desired address family for the returned addresses.  "
2613 "Valid values for this field include B<AF_INET> and B<AF_INET6>.  The value "
2614 "B<AF_UNSPEC> indicates that B<getaddrinfo>()  should return socket addresses "
2615 "for any address family (either IPv4 or IPv6, for example) that can be used "
2616 "with I<node> and I<service>."
2617 msgstr ""
2618 "このフィールドは返されるアドレスの希望のアドレスファミリーを指定する。 この"
2619 "フィールドに指定できる有効な値としては B<AF_INET> と B<AF_INET6> がある。 ま"
2620 "た、値 B<AF_UNSPEC> を指定すると、 B<getaddrinfo>()  は I<node> と "
2621 "I<service> で使用できるいずれかのアドレスファミリー (例えば IPv4 か IPv6) の "
2622 "ソケットアドレスを返すことを求められる。"
2623
2624 #. type: TP
2625 #: build/C/man3/getaddrinfo.3:155
2626 #, no-wrap
2627 msgid "I<ai_socktype>"
2628 msgstr "I<ai_socktype>"
2629
2630 #. type: Plain text
2631 #: build/C/man3/getaddrinfo.3:164
2632 msgid ""
2633 "This field specifies the preferred socket type, for example B<SOCK_STREAM> "
2634 "or B<SOCK_DGRAM>.  Specifying 0 in this field indicates that socket "
2635 "addresses of any type can be returned by B<getaddrinfo>()."
2636 msgstr ""
2637 "このフィールドは推奨のソケット型 (例えば B<SOCK_STREAM> や B<SOCK_DGRAM>)  を"
2638 "指定する。 このフィールドに 0 を指定すると、任意のソケット型のソケットアドレ"
2639 "スを B<getaddrinfo>()  が返してよいことを意味する。"
2640
2641 #. type: TP
2642 #: build/C/man3/getaddrinfo.3:164
2643 #, no-wrap
2644 msgid "I<ai_protocol>"
2645 msgstr "I<ai_protocol>"
2646
2647 #. type: Plain text
2648 #: build/C/man3/getaddrinfo.3:170
2649 msgid ""
2650 "This field specifies the protocol for the returned socket addresses.  "
2651 "Specifying 0 in this field indicates that socket addresses with any protocol "
2652 "can be returned by B<getaddrinfo>()."
2653 msgstr ""
2654 "このフィールドは返されるソケットアドレスのプロトコルを指定する。 このフィール"
2655 "ドに 0 を指定すると、任意のプロトコルののソケットアドレスを B<getaddrinfo>"
2656 "()  が返してよいことを意味する。"
2657
2658 #. type: TP
2659 #: build/C/man3/getaddrinfo.3:170
2660 #, no-wrap
2661 msgid "I<ai_flags>"
2662 msgstr "I<ai_flags>"
2663
2664 #. type: Plain text
2665 #: build/C/man3/getaddrinfo.3:174
2666 msgid ""
2667 "This field specifies additional options, described below.  Multiple flags "
2668 "are specified by bitwise OR-ing them together."
2669 msgstr ""
2670 "このフィールドは、追加のオプション (下記) を指定する。 複数のフラグを指定する"
2671 "際には、それらのビット単位の OR をとって指定する。"
2672
2673 #. type: Plain text
2674 #: build/C/man3/getaddrinfo.3:192
2675 msgid ""
2676 "All the other fields in the structure pointed to by I<hints> must contain "
2677 "either 0 or a NULL pointer, as appropriate.  Specifying I<hints> as NULL is "
2678 "equivalent to setting I<ai_socktype> and I<ai_protocol> to 0; I<ai_family> "
2679 "to B<AF_UNSPEC>; and I<ai_flags> to B<(AI_V4MAPPED\\ |\\ AI_ADDRCONFIG)>."
2680 msgstr ""
2681 "I<hints> が指し示す構造体の他のすべてのフィールドには 0 か NULL ポインタを適"
2682 "切に入れなければならない。 I<hints> に NULL を指定するのは、 I<ai_socktype> "
2683 "と I<ai_protocol> に 0 を、 I<ai_family> に B<AF_UNSPEC> を、 I<ai_flags> に "
2684 "B<(AI_V4MAPPED\\ |\\ AI_ADDRCONFIG)> を設定するのと等価である。"
2685
2686 #. type: Plain text
2687 #: build/C/man3/getaddrinfo.3:210
2688 msgid ""
2689 "I<node> specifies either a numerical network address (for IPv4, numbers-and-"
2690 "dots notation as supported by B<inet_aton>(3); for IPv6, hexadecimal string "
2691 "format as supported by B<inet_pton>(3)), or a network hostname, whose "
2692 "network addresses are looked up and resolved.  If I<hints.ai_flags> contains "
2693 "the B<AI_NUMERICHOST> flag then I<node> must be a numerical network "
2694 "address.  The B<AI_NUMERICHOST> flag suppresses any potentially lengthy "
2695 "network host address lookups."
2696 msgstr ""
2697 "I<node> には、数値形式のネットワークアドレス (IPv4 の場合は B<inet_aton>(3)  "
2698 "でサポートされているドット区切りの数字による表記、 IPv6 の場合は B<inet_pton>"
2699 "(3)  でサポートされている 16 進数の文字列形式) もしくは ネットワークホスト名"
2700 "を指定する。 ネットワークホスト名を指定した場合には、そのネットワークアドレス"
2701 "が検索され、 名前解決が行なわれる。 I<hints.ai_flags> に B<AI_NUMERICHOST> フ"
2702 "ラグが含まれている場合は、 I<node> は数値形式のネットワークアドレスでなければ"
2703 "ならない。 B<AI_NUMERICHOST> フラグを使うと、時間の掛かる可能性のあるネット"
2704 "ワークホストアドレスの検索は すべて抑制される。"
2705
2706 #. type: Plain text
2707 #: build/C/man3/getaddrinfo.3:235
2708 msgid ""
2709 "If the B<AI_PASSIVE> flag is specified in I<hints.ai_flags>, and I<node> is "
2710 "NULL, then the returned socket addresses will be suitable for B<bind>(2)ing "
2711 "a socket that will B<accept>(2)  connections.  The returned socket address "
2712 "will contain the \"wildcard address\" (B<INADDR_ANY> for IPv4 addresses, "
2713 "B<IN6ADDR_ANY_INIT> for IPv6 address).  The wildcard address is used by "
2714 "applications (typically servers)  that intend to accept connections on any "
2715 "of the hosts's network addresses.  If I<node> is not NULL, then the "
2716 "B<AI_PASSIVE> flag is ignored."
2717 msgstr ""
2718 "I<hints.ai_flags> に B<AI_PASSIVE> フラグが指定され、かつ I<node> が NULL の"
2719 "場合、 返されるソケットアドレスは コネクションを B<accept>(2)  するためのソ"
2720 "ケットを B<bind>(2)  するのに適したものとなる。 返されるソケットアドレスには"
2721 "「ワイルドカード・アドレス」 (IPv4 アドレスの場合は B<INADDR_ANY>、 IPv6 アド"
2722 "レスの場合は B<IN6ADDR_ANY_INIT>)  が入る。 ワイルドカード・アドレスは、任意"
2723 "のホストのネットワークアドレスで接続を 受け付けようとするアプリケーション (通"
2724 "常はサーバー) で用いられる。 I<node> が NULL でない場合、 B<AI_PASSIVE> フラ"
2725 "グは無視される。"
2726
2727 #. type: Plain text
2728 #: build/C/man3/getaddrinfo.3:255
2729 msgid ""
2730 "If the B<AI_PASSIVE> flag is not set in I<hints.ai_flags>, then the returned "
2731 "socket addresses will be suitable for use with B<connect>(2), B<sendto>(2), "
2732 "or B<sendmsg>(2).  If I<node> is NULL, then the network address will be set "
2733 "to the loopback interface address (B<INADDR_LOOPBACK> for IPv4 addresses, "
2734 "B<IN6ADDR_LOOPBACK_INIT> for IPv6 address); this is used by applications "
2735 "that intend to communicate with peers running on the same host."
2736 msgstr ""
2737 "I<hints.ai_flags> に B<AI_PASSIVE> フラグがセットされていない場合、 返される"
2738 "ソケットアドレスは B<connect>(2), B<sendto>(2), B<sendmsg>(2)  での使用に適し"
2739 "たものとなる。 I<node> が NULL の場合、ネットワークアドレスにはループバック・"
2740 "インターフェイスの アドレス (IPv4 アドレスの場合は B<INADDR_LOOPBACK> IPv6 ア"
2741 "ドレスの場合は B<IN6ADDR_LOOPBACK_INIT>)B<が設定される。> これは同じホスト上"
2742 "で動作している接続相手と通信するような アプリケーションで用いられる。"
2743
2744 #. type: Plain text
2745 #: build/C/man3/getaddrinfo.3:278
2746 msgid ""
2747 "I<service> sets the port in each returned address structure.  If this "
2748 "argument is a service name (see B<services>(5)), it is translated to the "
2749 "corresponding port number.  This argument can also be specified as a decimal "
2750 "number, which is simply converted to binary.  If I<service> is NULL, then "
2751 "the port number of the returned socket addresses will be left "
2752 "uninitialized.  If B<AI_NUMERICSERV> is specified in I<hints.ai_flags> and "
2753 "I<service> is not NULL, then I<service> must point to a string containing a "
2754 "numeric port number.  This flag is used to inhibit the invocation of a name "
2755 "resolution service in cases where it is known not to be required."
2756 msgstr ""
2757 "I<service> により、返される各アドレス構造体のポート番号が決まる。 この引き数"
2758 "がサービス名 (B<services>(5)  参照) の場合、対応するポート番号に翻訳される。 "
2759 "この引き数には 10 進数も指定することができ、 この場合にはバイナリへの変換だけ"
2760 "が行われる。 I<service> が NULL の場合、返されるソケットアドレスのポート番号"
2761 "は 初期化されないままとなる。 I<hints.ai_flags> に B<AI_NUMERICSERV> が指定さ"
2762 "れ、かつ I<service> が NULL でない場合、 I<service> は数値のポート番号を含む"
2763 "文字列を指し示さなければならない。 このフラグは、名前解決サービスが不要である"
2764 "ことが分かっている場合に、 サービスの起動を抑制するために用いられる。"
2765
2766 #. type: Plain text
2767 #: build/C/man3/getaddrinfo.3:284
2768 msgid "Either I<node> or I<service>, but not both, may be NULL."
2769 msgstr ""
2770 "I<node> と I<service> のどちらかは NULL にしてよいが、両方同時に NULL にして"
2771 "はならない。"
2772
2773 #. type: Plain text
2774 #: build/C/man3/getaddrinfo.3:300
2775 msgid ""
2776 "The B<getaddrinfo>()  function allocates and initializes a linked list of "
2777 "I<addrinfo> structures, one for each network address that matches I<node> "
2778 "and I<service>, subject to any restrictions imposed by I<hints>, and returns "
2779 "a pointer to the start of the list in I<res>.  The items in the linked list "
2780 "are linked by the I<ai_next> field."
2781 msgstr ""
2782 "B<getaddrinfo>()  関数は、 I<addrinfo> 構造体のメモリ確保を行い、 "
2783 "I<addrinfo> 構造体のリンクリストを初期化し、 I<res> にリストの先頭へのポイン"
2784 "タを入れて返す。 このとき、各構造体のネットワークアドレスは I<node> と "
2785 "I<service> に一致し、 I<hints> で課されたすべての制限を満たすものとなる。 リ"
2786 "ンクリストの要素は I<ai_next> フィールドにより連結される。"
2787
2788 #. type: Plain text
2789 #: build/C/man3/getaddrinfo.3:322
2790 msgid ""
2791 "There are several reasons why the linked list may have more than one "
2792 "I<addrinfo> structure, including: the network host is multihomed, accessible "
2793 "over multiple protocols (e.g. both B<AF_INET> and B<AF_INET6>); or the same "
2794 "service is available from multiple socket types (one B<SOCK_STREAM> address "
2795 "and another B<SOCK_DGRAM> address, for example).  Normally, the application "
2796 "should try using the addresses in the order in which they are returned.  The "
2797 "sorting function used within B<getaddrinfo>()  is defined in RFC\\ 3484; the "
2798 "order can be tweaked for a particular system by editing I</etc/gai.conf> "
2799 "(available since glibc 2.5)."
2800 msgstr ""
2801 "リンクリストの I<addrinfo> 構造体は複数個になることもあり、その理由はいくつか"
2802 "ある。 ネットワークホストがマルチホームである、 複数のプロトコルでアクセスで"
2803 "きる (例えば B<AF_INET> と B<AF_INET6> の両方) 、 複数のソケット種別で同じ"
2804 "サービスが利用できる (例えば、ひとつが B<SOCK_STREM> アドレスで、もうひとつ"
2805 "が B<SOCK_DGRAM> アドレスである)、がある。 通常は、アプリケーションは返された"
2806 "順序でアドレスを試すべきである。 B<getaddrinfo>()  の中で使用される並べ替え関"
2807 "数は RFC\\ 3484 で定義されている。 特殊なシステムでは、 I</etc/gai.conf> を編"
2808 "集することで、この順序を微調整することができる (I</etc/gai.conf> は glibc "
2809 "2.5 以降で利用できる)。"
2810
2811 #.  In glibc prior to 2.3.4, the ai_canonname of each addrinfo
2812 #.  structure was set pointing to the canonical name; that was
2813 #.  more than POSIX.1-2001 specified, or other implementations provided.
2814 #.  MTK, Aug 05
2815 #. type: Plain text
2816 #: build/C/man3/getaddrinfo.3:337
2817 msgid ""
2818 "If I<hints.ai_flags> includes the B<AI_CANONNAME> flag, then the "
2819 "I<ai_canonname> field of the first of the I<addrinfo> structures in the "
2820 "returned list is set to point to the official name of the host."
2821 msgstr ""
2822 "I<hints.ai_flags> に B<AI_CANONNAME> フラグが含まれている場合、返されるリスト"
2823 "の最初の I<addrinfo> 構造体の I<ai_canonname> フィールドはホストの公式な名前"
2824 "を指すように設定される。"
2825
2826 #. type: Plain text
2827 #: build/C/man3/getaddrinfo.3:341
2828 msgid ""
2829 "The remaining fields of each returned I<addrinfo> structure are initialized "
2830 "as follows:"
2831 msgstr ""
2832 "返される各々の I<addrinfo> 構造体の残りのフィールドは以下のように初期化され"
2833 "る。"
2834
2835 #. type: IP
2836 #: build/C/man3/getaddrinfo.3:341 build/C/man3/getaddrinfo.3:364
2837 #: build/C/man3/getaddrinfo_a.3:189 build/C/man3/getaddrinfo_a.3:193
2838 #: build/C/man3/getaddrinfo_a.3:195 build/C/man7/unix.7:72
2839 #: build/C/man7/unix.7:87 build/C/man7/unix.7:107
2840 #, no-wrap
2841 msgid "*"
2842 msgstr "*"
2843
2844 #. type: Plain text
2845 #: build/C/man3/getaddrinfo.3:364
2846 msgid ""
2847 "The I<ai_family>, I<ai_socktype>, and I<ai_protocol> fields return the "
2848 "socket creation parameters (i.e., these fields have the same meaning as the "
2849 "corresponding arguments of B<socket>(2)).  For example, I<ai_family> might "
2850 "return B<AF_INET> or B<AF_INET6>; I<ai_socktype> might return B<SOCK_DGRAM> "
2851 "or B<SOCK_STREAM>; and I<ai_protocol> returns the protocol for the socket."
2852 msgstr ""
2853 "I<ai_family>, I<ai_socktype>, I<ai_protocol> フィールドはソケット生成パラメー"
2854 "タを返す (これらのフィールドの意味は B<socket>(2)  の同じ名前の引き数と同じで"
2855 "ある)。 例えば、 I<ai_family> は B<AF_INET> や B<AF_INET6> を返し、 "
2856 "I<ai_socktype> は B<SOCK_DGRAM> や B<SOCK_STREAM> を返し、 I<ai_protocol> は"
2857 "そのソケットのプロトコルを返す。"
2858
2859 #. type: Plain text
2860 #: build/C/man3/getaddrinfo.3:371
2861 msgid ""
2862 "A pointer to the socket address is placed in the I<ai_addr> field, and the "
2863 "length of the socket address, in bytes, is placed in the I<ai_addrlen> field."
2864 msgstr ""
2865 "I<ai_addr> フィールドにはソケットアドレスへのポインタが書き込まれ、 "
2866 "I<ai_addrlen> フィールドにはソケットアドレスの長さがバイト単位で書き込まれ"
2867 "る。"
2868
2869 #. type: Plain text
2870 #: build/C/man3/getaddrinfo.3:381
2871 msgid ""
2872 "If I<hints.ai_flags> includes the B<AI_ADDRCONFIG> flag, then IPv4 addresses "
2873 "are returned in the list pointed to by I<res> only if the local system has "
2874 "at least one IPv4 address configured, and IPv6 addresses are only returned "
2875 "if the local system has at least one IPv6 address configured."
2876 msgstr ""
2877 "I<hints.ai_flags> が B<AI_ADDRCONFIG> を含む場合、 I<res> が指すリストには、 "
2878 "ローカルシステムに最低一つの IPv4 アドレスが設定されている場合は IPv4 アドレ"
2879 "スが返され、 ローカルシステムに最低一つの IPv6 アドレスが設定されている場合"
2880 "は IPv6 アドレスが返される。"
2881
2882 #. type: Plain text
2883 #: build/C/man3/getaddrinfo.3:406
2884 msgid ""
2885 "If I<hint.ai_flags> specifies the B<AI_V4MAPPED> flag, and I<hints."
2886 "ai_family> was specified as B<AF_INET6>, and no matching IPv6 addresses "
2887 "could be found, then return IPv4-mapped IPv6 addresses in the list pointed "
2888 "to by I<res>.  If both B<AI_V4MAPPED> and B<AI_ALL> are specified in I<hints."
2889 "ai_flags>, then return both IPv6 and IPv4-mapped IPv6 addresses in the list "
2890 "pointed to by I<res>.  B<AI_ALL> is ignored if B<AI_V4MAPPED> is not also "
2891 "specified."
2892 msgstr ""
2893 "I<hint.ai_flags> に B<AI_V4MAPPED> が指定されていて、 I<hints.ai_family> に "
2894 "B<AF_INET6> が指定され、 マッチする IPv6 アドレスが見つからなかった場合、 "
2895 "I<res> が指すリストには IPv4-mapped IPv6 アドレスが返される。 I<hints."
2896 "ai_flags> に B<AI_V4MAPPED> と B<AI_ALL> の両方が指定されている場合、 I<res> "
2897 "が指すリストには IPv6 アドレスと IPv4-mapped IPv6 アドレスの 両方が返され"
2898 "る。 B<AI_V4MAPPED> が指定されていない場合、 B<AI_ALL> は無視される。"
2899
2900 #. type: Plain text
2901 #: build/C/man3/getaddrinfo.3:412
2902 msgid ""
2903 "The B<freeaddrinfo>()  function frees the memory that was allocated for the "
2904 "dynamically allocated linked list I<res>."
2905 msgstr ""
2906 "B<freeaddrinfo>()  関数は、 リンクリスト I<res> に対して動的に割り当てられた"
2907 "メモリを解放する。"
2908
2909 #. type: SS
2910 #: build/C/man3/getaddrinfo.3:412 build/C/man3/getnameinfo.3:114
2911 #, no-wrap
2912 msgid "Extensions to getaddrinfo() for Internationalized Domain Names"
2913 msgstr "国際化ドメイン名のための getaddrinfo() の拡張"
2914
2915 #. type: Plain text
2916 #: build/C/man3/getaddrinfo.3:421
2917 msgid ""
2918 "Starting with glibc 2.3.4, B<getaddrinfo>()  has been extended to "
2919 "selectively allow the incoming and outgoing hostnames to be transparently "
2920 "converted to and from the Internationalized Domain Name (IDN) format (see "
2921 "RFC 3490, I<Internationalizing Domain Names in Applications (IDNA)>).  Four "
2922 "new flags are defined:"
2923 msgstr ""
2924 "glibc 2.3.4 から、 B<getaddrinfo>()  は入出力するホスト名を透過的に国際化ドメ"
2925 "イン名 (IDN) 形式 (RFC 3490 の I<Internationalizing Domain Names in "
2926 "Applications (IDNA)> を参照のこと) と変換することを選択的に認めるように拡張さ"
2927 "れている。 4 つの新しいフラグが定義されている:"
2928
2929 #. type: TP
2930 #: build/C/man3/getaddrinfo.3:421
2931 #, no-wrap
2932 msgid "B<AI_IDN>"
2933 msgstr "B<AI_IDN>"
2934
2935 #. type: Plain text
2936 #: build/C/man3/getaddrinfo.3:427
2937 msgid ""
2938 "If this flag is specified, then the node name given in I<node> is converted "
2939 "to IDN format if necessary.  The source encoding is that of the current "
2940 "locale."
2941 msgstr ""
2942 "このフラグが指定されると、 I<node> で与えられたノード名は必要があれば IDN 形"
2943 "式に変換される。 ソース符号化形式は現在のロケールのものである。"
2944
2945 #.  Implementation Detail:
2946 #.  To minimize effects on system performance the implementation might
2947 #.  want to check whether the input string contains any non-ASCII
2948 #.  characters.  If there are none the IDN step can be skipped completely.
2949 #.  On systems which allow not-ASCII safe encodings for a locale this
2950 #.  might be a problem.
2951 #. type: Plain text
2952 #: build/C/man3/getaddrinfo.3:439
2953 msgid ""
2954 "If the input name contains non-ASCII characters, then the IDN encoding is "
2955 "used.  Those parts of the node name (delimited by dots) that contain non-"
2956 "ASCII characters are encoded using ASCII Compatible Encoding (ACE)  before "
2957 "being passed to the name resolution functions."
2958 msgstr ""
2959 "入力名に非 ASCII 文字が含まれている場合、 IDN 符号化形式が使われる。 非 "
2960 "ASCII 文字が含まれている(ピリオドで区切られる)部分ノード名は、 名前解決機能に"
2961 "渡される前に ASCII 互換符号化形式 (ACE) を使って 符号化される。"
2962
2963 #. type: TP
2964 #: build/C/man3/getaddrinfo.3:439
2965 #, no-wrap
2966 msgid "B<AI_CANONIDN>"
2967 msgstr "B<AI_CANONIDN>"
2968
2969 #. type: Plain text
2970 #: build/C/man3/getaddrinfo.3:451
2971 msgid ""
2972 "After a successful name lookup, and if the B<AI_CANONNAME> flag was "
2973 "specified, B<getaddrinfo>()  will return the canonical name of the node "
2974 "corresponding to the I<addrinfo> structure value passed back.  The return "
2975 "value is an exact copy of the value returned by the name resolution function."
2976 msgstr ""
2977 "B<AI_CANONNAME> が指定されている場合、 B<getaddrinfo>()  は名前の検索に成功し"
2978 "た後、 返された I<addrinfo> 構造体に対応するノードの正規名を返す。 返り値は名"
2979 "前解決機能から返された値の正確なコピーである。"
2980
2981 #. Implementation Detail:
2982 #. If no component of the returned name starts with xn\-\- the IDN
2983 #. step can be skipped, therefore avoiding unnecessary slowdowns.
2984 #. type: Plain text
2985 #: build/C/man3/getaddrinfo.3:464
2986 msgid ""
2987 "If the name is encoded using ACE, then it will contain the I<xn--> prefix "
2988 "for one or more components of the name.  To convert these components into a "
2989 "readable form the B<AI_CANONIDN> flag can be passed in addition to "
2990 "B<AI_CANONNAME>.  The resulting string is encoded using the current locale's "
2991 "encoding."
2992 msgstr ""
2993 "B<AI_CANONIDN> 名前が ACE で符号化されている場合、一つまたは複数の名前の構成"
2994 "要素の先頭に I<xn--> を含んでいる。 これらの構成要素を読み込み可能な形に変換"
2995 "するために、 B<AI_CANONNAME> と共に B<AI_CANONIDN> フラグを渡すことも出来"
2996 "る。 返される文字列は現在のロケールの符号化形式で符号化されている。"
2997
2998 #. type: TP
2999 #: build/C/man3/getaddrinfo.3:464
3000 #, no-wrap
3001 msgid "B<AI_IDN_ALLOW_UNASSIGNED>, B<AI_IDN_USE_STD3_ASCII_RULES>"
3002 msgstr "B<AI_IDN_ALLOW_UNASSIGNED>, B<AI_IDN_USE_STD3_ASCII_RULES>"
3003
3004 #. type: Plain text
3005 #: build/C/man3/getaddrinfo.3:471 build/C/man3/getnameinfo.3:136
3006 msgid ""
3007 "Setting these flags will enable the IDNA_ALLOW_UNASSIGNED (allow unassigned "
3008 "Unicode code points) and IDNA_USE_STD3_ASCII_RULES (check output to make "
3009 "sure it is a STD3 conforming hostname)  flags respectively to be used in the "
3010 "IDNA handling."
3011 msgstr ""
3012 "これらのフラグをセットすると、IDNA 処理で使用されるフラグ "
3013 "IDNA_ALLOW_UNASSIGNED (未割り当ての Unicode のコードポイントを許容) と "
3014 "IDNA_USE_STD3_ASCII_RULES (出力が STD3 準拠のホスト名かをチェックする)  がそ"
3015 "れぞれ有効になる。"
3016
3017 #. type: SH
3018 #: build/C/man3/getaddrinfo.3:471 build/C/man3/getaddrinfo_a.3:240
3019 #: build/C/man3/gethostbyname.3:264 build/C/man3/getipnodebyname.3:184
3020 #: build/C/man3/getnameinfo.3:136 build/C/man3/getnetent.3:111
3021 #: build/C/man3/getnetent_r.3:116 build/C/man2/getpeername.2:66
3022 #: build/C/man3/getprotoent.3:105 build/C/man3/getprotoent_r.3:106
3023 #: build/C/man3/getservent.3:116 build/C/man3/getservent_r.3:105
3024 #: build/C/man3/inet_ntop.3:81 build/C/man3/inet_pton.3:114
3025 #: build/C/man3/rcmd.3:188 build/C/man3/resolver.3:234
3026 #: build/C/man3/setnetgrent.3:81 build/C/man2/shutdown.2:67
3027 #, no-wrap
3028 msgid "RETURN VALUE"
3029 msgstr "返り値"
3030
3031 #.  FIXME glibc defines the following additional errors, some which
3032 #.  can probably be returned by getaddrinfo(); they need to
3033 #.  be documented.
3034 #.  #ifdef __USE_GNU
3035 #.  #define EAI_INPROGRESS  -100  /* Processing request in progress.  */
3036 #.  #define EAI_CANCELED    -101  /* Request canceled.  */
3037 #.  #define EAI_NOTCANCELED -102  /* Request not canceled.  */
3038 #.  #define EAI_ALLDONE     -103  /* All requests done.  */
3039 #.  #define EAI_INTR        -104  /* Interrupted by a signal.  */
3040 #.  #define EAI_IDN_ENCODE  -105  /* IDN encoding failed.  */
3041 #.  #endif
3042 #. type: Plain text
3043 #: build/C/man3/getaddrinfo.3:485
3044 msgid ""
3045 "B<getaddrinfo>()  returns 0 if it succeeds, or one of the following nonzero "
3046 "error codes:"
3047 msgstr ""
3048 "B<getaddrinfo>()  は成功すると 0 を返し、失敗すると以下の非 0 のエラーコード"
3049 "のいずれかを返す。"
3050
3051 #. type: TP
3052 #: build/C/man3/getaddrinfo.3:485
3053 #, no-wrap
3054 msgid "B<EAI_ADDRFAMILY>"
3055 msgstr "B<EAI_ADDRFAMILY>"
3056
3057 #.  Not in SUSv3
3058 #. type: Plain text
3059 #: build/C/man3/getaddrinfo.3:490
3060 msgid ""
3061 "The specified network host does not have any network addresses in the "
3062 "requested address family."
3063 msgstr ""
3064 "指定されたネットワークホストには、 要求されたアドレスファミリーのネットワーク"
3065 "アドレスがない。"
3066
3067 #. type: TP
3068 #: build/C/man3/getaddrinfo.3:490 build/C/man3/getaddrinfo_a.3:245
3069 #: build/C/man3/getaddrinfo_a.3:262 build/C/man3/getnameinfo.3:152
3070 #, no-wrap
3071 msgid "B<EAI_AGAIN>"
3072 msgstr "B<EAI_AGAIN>"
3073
3074 #. type: Plain text
3075 #: build/C/man3/getaddrinfo.3:494
3076 msgid ""
3077 "The name server returned a temporary failure indication.  Try again later."
3078 msgstr ""
3079 "ネームサーバーから一時的な失敗 (temporary failure)  を意味する返事が返され"
3080 "た。後でもう一度試してみよ。"
3081
3082 #. type: TP
3083 #: build/C/man3/getaddrinfo.3:494 build/C/man3/getnameinfo.3:156
3084 #, no-wrap
3085 msgid "B<EAI_BADFLAGS>"
3086 msgstr "B<EAI_BADFLAGS>"
3087
3088 #. type: Plain text
3089 #: build/C/man3/getaddrinfo.3:504
3090 msgid ""
3091 "I<hints.ai_flags> contains invalid flags; or, I<hints.ai_flags> included "
3092 "B<AI_CANONNAME> and I<name> was NULL."
3093 msgstr ""
3094 "I<hints.ai_flags> のフラグに不正なフラグが含まれている。または、 I<hints."
3095 "ai_flags> に B<AI_CANONNAME> が含まれていて、かつ I<name> が NULL であった。"
3096
3097 #. type: TP
3098 #: build/C/man3/getaddrinfo.3:504 build/C/man3/getnameinfo.3:161
3099 #, no-wrap
3100 msgid "B<EAI_FAIL>"
3101 msgstr "B<EAI_FAIL>"
3102
3103 #. type: Plain text
3104 #: build/C/man3/getaddrinfo.3:507
3105 msgid "The name server returned a permanent failure indication."
3106 msgstr ""
3107 "ネームサーバーから恒久的な失敗 (permanent failure)  を意味する返事が返され"
3108 "た。"
3109
3110 #. type: TP
3111 #: build/C/man3/getaddrinfo.3:507 build/C/man3/getnameinfo.3:164
3112 #, no-wrap
3113 msgid "B<EAI_FAMILY>"
3114 msgstr "B<EAI_FAMILY>"
3115
3116 #. type: Plain text
3117 #: build/C/man3/getaddrinfo.3:510
3118 msgid "The requested address family is not supported."
3119 msgstr "要求されたアドレスファミリーがサポートされていない。"
3120
3121 #. type: TP
3122 #: build/C/man3/getaddrinfo.3:510 build/C/man3/getaddrinfo_a.3:250
3123 #: build/C/man3/getnameinfo.3:168
3124 #, no-wrap
3125 msgid "B<EAI_MEMORY>"
3126 msgstr "B<EAI_MEMORY>"
3127
3128 #. type: Plain text
3129 #: build/C/man3/getaddrinfo.3:513 build/C/man3/getaddrinfo_a.3:253
3130 #: build/C/man3/getnameinfo.3:171 build/C/man7/unix.7:354
3131 msgid "Out of memory."
3132 msgstr "メモリが足りない。"
3133
3134 #. type: TP
3135 #: build/C/man3/getaddrinfo.3:513
3136 #, no-wrap
3137 msgid "B<EAI_NODATA>"
3138 msgstr "B<EAI_NODATA>"
3139
3140 #.  Not in SUSv3
3141 #. type: Plain text
3142 #: build/C/man3/getaddrinfo.3:518
3143 msgid ""
3144 "The specified network host exists, but does not have any network addresses "
3145 "defined."
3146 msgstr ""
3147 "指定されたネットワークホストは存在するが、 ネットワークアドレスがひとつも定義"
3148 "されていない。"
3149
3150 #. type: TP
3151 #: build/C/man3/getaddrinfo.3:518 build/C/man3/getnameinfo.3:171
3152 #, no-wrap
3153 msgid "B<EAI_NONAME>"
3154 msgstr "B<EAI_NONAME>"
3155
3156 #. type: Plain text
3157 #: build/C/man3/getaddrinfo.3:535
3158 msgid ""
3159 "The I<node> or I<service> is not known; or both I<node> and I<service> are "
3160 "NULL; or B<AI_NUMERICSERV> was specified in I<hints.ai_flags> and I<service> "
3161 "was not a numeric port-number string."
3162 msgstr ""
3163 "I<node> と I<service> のどちらかが不明、または I<node> と I<service> の両方"
3164 "が NULL だった場合、または B<AI_NUMERICSERV> が I<hints.ai_flags> に指定され"
3165 "ていて、 I<hints.ai_flags> と I<service> が数値のポート番号の文字列でない。"
3166
3167 #. type: TP
3168 #: build/C/man3/getaddrinfo.3:535
3169 #, no-wrap
3170 msgid "B<EAI_SERVICE>"
3171 msgstr "B<EAI_SERVICE>"
3172
3173 #. type: Plain text
3174 #: build/C/man3/getaddrinfo.3:556
3175 msgid ""
3176 "The requested service is not available for the requested socket type.  It "
3177 "may be available through another socket type.  For example, this error could "
3178 "occur if I<service> was \"shell\" (a service only available on stream "
3179 "sockets), and either I<hints.ai_protocol> was B<IPPROTO_UDP>, or I<hints."
3180 "ai_socktype> was B<SOCK_DGRAM>; or the error could occur if I<service> was "
3181 "not NULL, and I<hints.ai_socktype> was B<SOCK_RAW> (a socket type that does "
3182 "not support the concept of services)."
3183 msgstr ""
3184 "要求されたサービスは、要求されたソケットタイプでは利用できない。 他のソケット"
3185 "タイプでなら利用可能かもしれない。 このエラーが発生する例としては、 "
3186 "I<service> が \"shell\" (ストリーム・ソケットでのみ利用できるサービス) で、 "
3187 "I<hints.ai_protocol> に B<IPPROTO_UDP> が指定されたり、 I<hints.ai_socktype> "
3188 "に B<SOCK_DGRAM> が指定されたりした場合がある。 また、 I<service> が NULL 以"
3189 "外で、 I<hints.ai_socktype> に B<SOCK_RAW> (サービスの考え方をサポートしてい"
3190 "ないソケット種別)  が指定された場合にも、このエラーが発生する。"
3191
3192 #. type: TP
3193 #: build/C/man3/getaddrinfo.3:556
3194 #, no-wrap
3195 msgid "B<EAI_SOCKTYPE>"
3196 msgstr "B<EAI_SOCKTYPE>"
3197
3198 #. type: Plain text
3199 #: build/C/man3/getaddrinfo.3:568
3200 msgid ""
3201 "The requested socket type is not supported.  This could occur, for example, "
3202 "if I<hints.ai_socktype> and I<hints.ai_protocol> are inconsistent (e.g., "
3203 "B<SOCK_DGRAM> and B<IPPROTO_TCP>, respectively)."
3204 msgstr ""
3205 "要求されたソケットタイプがサポートされていない。 このエラーが発生する例として"
3206 "は、 I<hints.ai_socktype> と I<hints.ai_protocol> が矛盾している場合 (例えば "
3207 "I<hints.ai_socktype> が B<SOCK_DGRAM> で I<hints.ai_protocol> が "
3208 "B<IPPROTO_TCP>)  がある。"
3209
3210 #. type: TP
3211 #: build/C/man3/getaddrinfo.3:568 build/C/man3/getaddrinfo_a.3:253
3212 #: build/C/man3/getnameinfo.3:184
3213 #, no-wrap
3214 msgid "B<EAI_SYSTEM>"
3215 msgstr "B<EAI_SYSTEM>"
3216
3217 #. type: Plain text
3218 #: build/C/man3/getaddrinfo.3:573
3219 msgid "Other system error, check I<errno> for details."
3220 msgstr "その他のシステムエラー。詳しくは I<errno> を調べること。"
3221
3222 #. type: Plain text
3223 #: build/C/man3/getaddrinfo.3:578
3224 msgid ""
3225 "The B<gai_strerror>()  function translates these error codes to a human "
3226 "readable string, suitable for error reporting."
3227 msgstr ""
3228 "B<gai_strerror>()  関数を用いると、これらのエラーコードを人間に可読な文字列に"
3229 "変換できるので、 エラー報告に適するだろう。"
3230
3231 #. type: SH
3232 #: build/C/man3/getaddrinfo.3:578 build/C/man3/gethostbyname.3:291
3233 #: build/C/man3/getnameinfo.3:194 build/C/man3/getnetent.3:120
3234 #: build/C/man3/getprotoent.3:114 build/C/man3/getservent.3:125
3235 #: build/C/man5/host.conf.5:180 build/C/man5/hosts.5:86
3236 #: build/C/man5/hosts.equiv.5:47 build/C/man5/networks.5:69
3237 #: build/C/man5/nsswitch.conf.5:246 build/C/man5/protocols.5:76
3238 #: build/C/man5/resolv.conf.5:257 build/C/man3/resolver.3:256
3239 #: build/C/man5/services.5:184 build/C/man3/setnetgrent.3:83
3240 #: build/C/man7/udplite.7:136
3241 #, no-wrap
3242 msgid "FILES"
3243 msgstr "ファイル"
3244
3245 #. type: Plain text
3246 #: build/C/man3/getaddrinfo.3:580
3247 msgid "I</etc/gai.conf>"
3248 msgstr "I</etc/gai.conf>"
3249
3250 #. type: Plain text
3251 #: build/C/man3/getaddrinfo.3:585
3252 msgid ""
3253 "POSIX.1-2001.  The B<getaddrinfo>()  function is documented in RFC\\ 2553."
3254 msgstr "POSIX.1-2001.  B<getaddrinfo>()  関数は RFC 2553 に記載されている。"
3255
3256 #. type: Plain text
3257 #: build/C/man3/getaddrinfo.3:590
3258 msgid ""
3259 "B<getaddrinfo>()  supports the I<address>B<%>I<scope-id> notation for "
3260 "specifying the IPv6 scope-ID."
3261 msgstr ""
3262 "B<getaddrinfo>()  は、IPv6 scope-ID を指定するために I<address>B<%>I<scope-"
3263 "id> 記法をサポートしている。"
3264
3265 #. type: Plain text
3266 #: build/C/man3/getaddrinfo.3:598
3267 msgid ""
3268 "B<AI_ADDRCONFIG>, B<AI_ALL>, and B<AI_V4MAPPED> are available since glibc "
3269 "2.3.3.  B<AI_NUMERICSERV> is available since glibc 2.3.4."
3270 msgstr ""
3271 "B<AI_ADDRCONFIG>, B<AI_ALL>, B<AI_V4MAPPED> は glibc 2.3.3 以降で利用可能であ"
3272 "る。 B<AI_NUMERICSERV> は glibc 2.3.4 以降で利用可能である。"
3273
3274 #. type: Plain text
3275 #: build/C/man3/getaddrinfo.3:608
3276 msgid ""
3277 "According to POSIX.1-2001, specifying I<hints> as NULL should cause "
3278 "I<ai_flags> to be assumed as 0.  The GNU C library instead assumes a value "
3279 "of B<(AI_V4MAPPED\\ |\\ AI_ADDRCONFIG)> for this case, since this value is "
3280 "considered an improvement on the specification."
3281 msgstr ""
3282 "POSIX.1-2001 によると、 I<hints> に NULL が指定された場合、 I<ai_flags> を 0 "
3283 "とみなすべきとされている。 GNU C ライブラリでは、この場合に、代わりに "
3284 "I<ai_flags> を B<(AI_V4MAPPED\\ |\\ AI_ADDRCONFIG)> とみなすようになってい"
3285 "る。 この値の方が標準規格の改善になると考えられているからである。"
3286
3287 #.  getnameinfo.3 refers to this example
3288 #.  socket.2 refers to this example
3289 #.  bind.2 refers to this example
3290 #.  connect.2 refers to this example
3291 #.  recvfrom.2 refers to this example
3292 #.  sendto.2 refers to this example
3293 #. type: Plain text
3294 #: build/C/man3/getaddrinfo.3:622
3295 msgid ""
3296 "The following programs demonstrate the use of B<getaddrinfo>(), "
3297 "B<gai_strerror>(), B<freeaddrinfo>(), and B<getnameinfo>(3).  The programs "
3298 "are an echo server and client for UDP datagrams."
3299 msgstr ""
3300 "以下のプログラムは、 B<getaddrinfo>(), B<gai_strerror>(), B<freeaddrinfo>(), "
3301 "B<getnameinfo>(3)  の使い方を示したものである。 プログラムは UDP データグラム"
3302 "の echo サーバとクライアントである。"
3303
3304 #. type: SS
3305 #: build/C/man3/getaddrinfo.3:622
3306 #, no-wrap
3307 msgid "Server program"
3308 msgstr "サーバのプログラム"
3309
3310 #. type: Plain text
3311 #: build/C/man3/getaddrinfo.3:632
3312 #, no-wrap
3313 msgid ""
3314 "#include E<lt>sys/types.hE<gt>\n"
3315 "#include E<lt>stdio.hE<gt>\n"
3316 "#include E<lt>stdlib.hE<gt>\n"
3317 "#include E<lt>unistd.hE<gt>\n"
3318 "#include E<lt>string.hE<gt>\n"
3319 "#include E<lt>sys/socket.hE<gt>\n"
3320 "#include E<lt>netdb.hE<gt>\n"
3321 msgstr ""
3322 "#include E<lt>sys/types.hE<gt>\n"
3323 "#include E<lt>stdio.hE<gt>\n"
3324 "#include E<lt>stdlib.hE<gt>  \n"
3325 "#include E<lt>unistd.hE<gt>\n"
3326 "#include E<lt>string.hE<gt>\n"
3327 "#include E<lt>sys/socket.hE<gt>\n"
3328 "#include E<lt>netdb.hE<gt>\n"
3329
3330 #. type: Plain text
3331 #: build/C/man3/getaddrinfo.3:634 build/C/man3/getaddrinfo.3:729
3332 #, no-wrap
3333 msgid "#define BUF_SIZE 500\n"
3334 msgstr "#define BUF_SIZE 500\n"
3335
3336 #. type: Plain text
3337 #: build/C/man3/getaddrinfo.3:645
3338 #, no-wrap
3339 msgid ""
3340 "int\n"
3341 "main(int argc, char *argv[])\n"
3342 "{\n"
3343 "    struct addrinfo hints;\n"
3344 "    struct addrinfo *result, *rp;\n"
3345 "    int sfd, s;\n"
3346 "    struct sockaddr_storage peer_addr;\n"
3347 "    socklen_t peer_addr_len;\n"
3348 "    ssize_t nread;\n"
3349 "    char buf[BUF_SIZE];\n"
3350 msgstr ""
3351 "int\n"
3352 "main(int argc, char *argv[])\n"
3353 "{\n"
3354 "    struct addrinfo hints;\n"
3355 "    struct addrinfo *result, *rp;\n"
3356 "    int sfd, s;\n"
3357 "    struct sockaddr_storage peer_addr;\n"
3358 "    socklen_t peer_addr_len;\n"
3359 "    ssize_t nread;\n"
3360 "    char buf[BUF_SIZE];\n"
3361
3362 #. type: Plain text
3363 #: build/C/man3/getaddrinfo.3:650
3364 #, no-wrap
3365 msgid ""
3366 "    if (argc != 2) {\n"
3367 "        fprintf(stderr, \"Usage: %s port\\en\", argv[0]);\n"
3368 "        exit(EXIT_FAILURE);\n"
3369 "    }\n"
3370 msgstr ""
3371 "    if (argc != 2) {\n"
3372 "        fprintf(stderr, \"Usage: %s port\\en\", argv[0]);\n"
3373 "        exit(EXIT_FAILURE);\n"
3374 "    }\n"
3375
3376 #. type: Plain text
3377 #: build/C/man3/getaddrinfo.3:659
3378 #, no-wrap
3379 msgid ""
3380 "    memset(&hints, 0, sizeof(struct addrinfo));\n"
3381 "    hints.ai_family = AF_UNSPEC;    /* Allow IPv4 or IPv6 */\n"
3382 "    hints.ai_socktype = SOCK_DGRAM; /* Datagram socket */\n"
3383 "    hints.ai_flags = AI_PASSIVE;    /* For wildcard IP address */\n"
3384 "    hints.ai_protocol = 0;          /* Any protocol */\n"
3385 "    hints.ai_canonname = NULL;\n"
3386 "    hints.ai_addr = NULL;\n"
3387 "    hints.ai_next = NULL;\n"
3388 msgstr ""
3389 "    memset(&hints, 0, sizeof(struct addrinfo));\n"
3390 "    hints.ai_family = AF_UNSPEC;    /* Allow IPv4 or IPv6 */\n"
3391 "    hints.ai_socktype = SOCK_DGRAM; /* Datagram socket */\n"
3392 "    hints.ai_flags = AI_PASSIVE;    /* For wildcard IP address */\n"
3393 "    hints.ai_protocol = 0;          /* Any protocol */\n"
3394 "    hints.ai_canonname = NULL;\n"
3395 "    hints.ai_addr = NULL;\n"
3396 "    hints.ai_next = NULL;\n"
3397
3398 #. type: Plain text
3399 #: build/C/man3/getaddrinfo.3:665
3400 #, no-wrap
3401 msgid ""
3402 "    s = getaddrinfo(NULL, argv[1], &hints, &result);\n"
3403 "    if (s != 0) {\n"
3404 "        fprintf(stderr, \"getaddrinfo: %s\\en\", gai_strerror(s));\n"
3405 "        exit(EXIT_FAILURE);\n"
3406 "    }\n"
3407 msgstr ""
3408 "    s = getaddrinfo(NULL, argv[1], &hints, &result);\n"
3409 "    if (s != 0) {\n"
3410 "        fprintf(stderr, \"getaddrinfo: %s\\en\", gai_strerror(s));\n"
3411 "        exit(EXIT_FAILURE);\n"
3412 "    }\n"
3413
3414 #. type: Plain text
3415 #: build/C/man3/getaddrinfo.3:670
3416 #, no-wrap
3417 msgid ""
3418 "    /* getaddrinfo() returns a list of address structures.\n"
3419 "       Try each address until we successfully bind(2).\n"
3420 "       If socket(2) (or bind(2)) fails, we (close the socket\n"
3421 "       and) try the next address. */\n"
3422 msgstr ""
3423 "    /* getaddrinfo() returns a list of address structures.\n"
3424 "       Try each address until we successfully bind(2).\n"
3425 "       If socket(2) (or bind(2)) fails, we (close the socket\n"
3426 "       and) try the next address. */\n"
3427
3428 #. type: Plain text
3429 #: build/C/man3/getaddrinfo.3:676
3430 #, no-wrap
3431 msgid ""
3432 "    for (rp = result; rp != NULL; rp = rp-E<gt>ai_next) {\n"
3433 "        sfd = socket(rp-E<gt>ai_family, rp-E<gt>ai_socktype,\n"
3434 "                rp-E<gt>ai_protocol);\n"
3435 "        if (sfd == -1)\n"
3436 "            continue;\n"
3437 msgstr ""
3438 "    for (rp = result; rp != NULL; rp = rp-E<gt>ai_next) {\n"
3439 "        sfd = socket(rp-E<gt>ai_family, rp-E<gt>ai_socktype, \n"
3440 "                rp-E<gt>ai_protocol);\n"
3441 "        if (sfd == -1)\n"
3442 "            continue;\n"
3443
3444 #. type: Plain text
3445 #: build/C/man3/getaddrinfo.3:679
3446 #, no-wrap
3447 msgid ""
3448 "        if (bind(sfd, rp-E<gt>ai_addr, rp-E<gt>ai_addrlen) == 0)\n"
3449 "            break;                  /* Success */\n"
3450 msgstr ""
3451 "        if (bind(sfd, rp-E<gt>ai_addr, rp-E<gt>ai_addrlen) == 0)\n"
3452 "            break;                  /* Success */\n"
3453
3454 #. type: Plain text
3455 #: build/C/man3/getaddrinfo.3:682 build/C/man3/getaddrinfo.3:775
3456 #, no-wrap
3457 msgid ""
3458 "        close(sfd);\n"
3459 "    }\n"
3460 msgstr ""
3461 "        close(sfd);\n"
3462 "    }\n"
3463
3464 #. type: Plain text
3465 #: build/C/man3/getaddrinfo.3:687
3466 #, no-wrap
3467 msgid ""
3468 "    if (rp == NULL) {               /* No address succeeded */\n"
3469 "        fprintf(stderr, \"Could not bind\\en\");\n"
3470 "        exit(EXIT_FAILURE);\n"
3471 "    }\n"
3472 msgstr ""
3473 "    if (rp == NULL) {               /* No address succeeded */\n"
3474 "        fprintf(stderr, \"Could not bind\\en\");\n"
3475 "        exit(EXIT_FAILURE);\n"
3476 "    }\n"
3477
3478 #. type: Plain text
3479 #: build/C/man3/getaddrinfo.3:689 build/C/man3/getaddrinfo.3:782
3480 #, no-wrap
3481 msgid "    freeaddrinfo(result);           /* No longer needed */\n"
3482 msgstr "    freeaddrinfo(result);           /* No longer needed */\n"
3483
3484 #. type: Plain text
3485 #: build/C/man3/getaddrinfo.3:691
3486 #, no-wrap
3487 msgid "    /* Read datagrams and echo them back to sender */\n"
3488 msgstr "    /* Read datagrams and echo them back to sender */\n"
3489
3490 #. type: Plain text
3491 #: build/C/man3/getaddrinfo.3:698
3492 #, no-wrap
3493 msgid ""
3494 "    for (;;) {\n"
3495 "        peer_addr_len = sizeof(struct sockaddr_storage);\n"
3496 "        nread = recvfrom(sfd, buf, BUF_SIZE, 0,\n"
3497 "                (struct sockaddr *) &peer_addr, &peer_addr_len);\n"
3498 "        if (nread == -1)\n"
3499 "            continue;               /* Ignore failed request */\n"
3500 msgstr ""
3501 "    for (;;) {\n"
3502 "        peer_addr_len = sizeof(struct sockaddr_storage);\n"
3503 "        nread = recvfrom(sfd, buf, BUF_SIZE, 0,\n"
3504 "                (struct sockaddr *) &peer_addr, &peer_addr_len);\n"
3505 "        if (nread == -1)\n"
3506 "            continue;               /* Ignore failed request */\n"
3507
3508 #. type: Plain text
3509 #: build/C/man3/getaddrinfo.3:700
3510 #, no-wrap
3511 msgid "        char host[NI_MAXHOST], service[NI_MAXSERV];\n"
3512 msgstr "        char host[NI_MAXHOST], service[NI_MAXSERV];\n"
3513
3514 #. type: Plain text
3515 #: build/C/man3/getaddrinfo.3:709
3516 #, no-wrap
3517 msgid ""
3518 "        s = getnameinfo((struct sockaddr *) &peer_addr,\n"
3519 "                        peer_addr_len, host, NI_MAXHOST,\n"
3520 "                        service, NI_MAXSERV, NI_NUMERICSERV);\n"
3521 "       if (s == 0)\n"
3522 "            printf(\"Received %ld bytes from %s:%s\\en\",\n"
3523 "                    (long) nread, host, service);\n"
3524 "        else\n"
3525 "            fprintf(stderr, \"getnameinfo: %s\\en\", gai_strerror(s));\n"
3526 msgstr ""
3527 "        s = getnameinfo((struct sockaddr *) &peer_addr,\n"
3528 "                        peer_addr_len, host, NI_MAXHOST,\n"
3529 "                        service, NI_MAXSERV, NI_NUMERICSERV);\n"
3530 "       if (s == 0)\n"
3531 "            printf(\"Received %ld bytes from %s:%s\\en\",\n"
3532 "                    (long) nread, host, service);\n"
3533 "        else\n"
3534 "            fprintf(stderr, \"getnameinfo: %s\\en\", gai_strerror(s));\n"
3535
3536 #. type: Plain text
3537 #: build/C/man3/getaddrinfo.3:716
3538 #, no-wrap
3539 msgid ""
3540 "        if (sendto(sfd, buf, nread, 0,\n"
3541 "                    (struct sockaddr *) &peer_addr,\n"
3542 "                    peer_addr_len) != nread)\n"
3543 "            fprintf(stderr, \"Error sending response\\en\");\n"
3544 "    }\n"
3545 "}\n"
3546 msgstr ""
3547 "        if (sendto(sfd, buf, nread, 0,\n"
3548 "                    (struct sockaddr *) &peer_addr,\n"
3549 "                    peer_addr_len) != nread)\n"
3550 "            fprintf(stderr, \"Error sending response\\en\");\n"
3551 "    }\n"
3552 "}\n"
3553
3554 #. type: SS
3555 #: build/C/man3/getaddrinfo.3:717
3556 #, no-wrap
3557 msgid "Client program"
3558 msgstr "クライアントのプログラム"
3559
3560 #. type: Plain text
3561 #: build/C/man3/getaddrinfo.3:727
3562 #, no-wrap
3563 msgid ""
3564 "#include E<lt>sys/types.hE<gt>\n"
3565 "#include E<lt>sys/socket.hE<gt>\n"
3566 "#include E<lt>netdb.hE<gt>\n"
3567 "#include E<lt>stdio.hE<gt>\n"
3568 "#include E<lt>stdlib.hE<gt>\n"
3569 "#include E<lt>unistd.hE<gt>\n"
3570 "#include E<lt>string.hE<gt>\n"
3571 msgstr ""
3572 "#include E<lt>sys/types.hE<gt>\n"
3573 "#include E<lt>sys/socket.hE<gt>\n"
3574 "#include E<lt>netdb.hE<gt>\n"
3575 "#include E<lt>stdio.hE<gt>\n"
3576 "#include E<lt>stdlib.hE<gt>\n"
3577 "#include E<lt>unistd.hE<gt>\n"
3578 "#include E<lt>string.hE<gt>\n"
3579
3580 #. type: Plain text
3581 #: build/C/man3/getaddrinfo.3:739
3582 #, no-wrap
3583 msgid ""
3584 "int\n"
3585 "main(int argc, char *argv[])\n"
3586 "{\n"
3587 "    struct addrinfo hints;\n"
3588 "    struct addrinfo *result, *rp;\n"
3589 "    int sfd, s, j;\n"
3590 "    size_t len;\n"
3591 "    ssize_t nread;\n"
3592 "    char buf[BUF_SIZE];\n"
3593 msgstr ""
3594 "int\n"
3595 "main(int argc, char *argv[])\n"
3596 "{\n"
3597 "    struct addrinfo hints;\n"
3598 "    struct addrinfo *result, *rp;\n"
3599 "    int sfd, s, j;\n"
3600 "    size_t len;\n"
3601 "    ssize_t nread;\n"
3602 "    char buf[BUF_SIZE];\n"
3603
3604 #. type: Plain text
3605 #: build/C/man3/getaddrinfo.3:744
3606 #, no-wrap
3607 msgid ""
3608 "    if (argc E<lt> 3) {\n"
3609 "        fprintf(stderr, \"Usage: %s host port msg...\\en\", argv[0]);\n"
3610 "        exit(EXIT_FAILURE);\n"
3611 "    }\n"
3612 msgstr ""
3613 "    if (argc E<lt> 3) {\n"
3614 "        fprintf(stderr, \"Usage: %s host port msg...\\en\", argv[0]);\n"
3615 "        exit(EXIT_FAILURE);\n"
3616 "    }\n"
3617
3618 #. type: Plain text
3619 #: build/C/man3/getaddrinfo.3:746
3620 #, no-wrap
3621 msgid "    /* Obtain address(es) matching host/port */\n"
3622 msgstr "    /* Obtain address(es) matching host/port */\n"
3623
3624 #. type: Plain text
3625 #: build/C/man3/getaddrinfo.3:752
3626 #, no-wrap
3627 msgid ""
3628 "    memset(&hints, 0, sizeof(struct addrinfo));\n"
3629 "    hints.ai_family = AF_UNSPEC;    /* Allow IPv4 or IPv6 */\n"
3630 "    hints.ai_socktype = SOCK_DGRAM; /* Datagram socket */\n"
3631 "    hints.ai_flags = 0;\n"
3632 "    hints.ai_protocol = 0;          /* Any protocol */\n"
3633 msgstr ""
3634 "    memset(&hints, 0, sizeof(struct addrinfo));\n"
3635 "    hints.ai_family = AF_UNSPEC;    /* Allow IPv4 or IPv6 */\n"
3636 "    hints.ai_socktype = SOCK_DGRAM; /* Datagram socket */\n"
3637 "    hints.ai_flags = 0;\n"
3638 "    hints.ai_protocol = 0;          /* Any protocol */\n"
3639
3640 #. type: Plain text
3641 #: build/C/man3/getaddrinfo.3:758
3642 #, no-wrap
3643 msgid ""
3644 "    s = getaddrinfo(argv[1], argv[2], &hints, &result);\n"
3645 "    if (s != 0) {\n"
3646 "        fprintf(stderr, \"getaddrinfo: %s\\en\", gai_strerror(s));\n"
3647 "        exit(EXIT_FAILURE);\n"
3648 "    }\n"
3649 msgstr ""
3650 "    s = getaddrinfo(argv[1], argv[2], &hints, &result);\n"
3651 "    if (s != 0) {\n"
3652 "        fprintf(stderr, \"getaddrinfo: %s\\en\", gai_strerror(s));\n"
3653 "        exit(EXIT_FAILURE);\n"
3654 "    }\n"
3655
3656 #. type: Plain text
3657 #: build/C/man3/getaddrinfo.3:763
3658 #, no-wrap
3659 msgid ""
3660 "    /* getaddrinfo() returns a list of address structures.\n"
3661 "       Try each address until we successfully connect(2).\n"
3662 "       If socket(2) (or connect(2)) fails, we (close the socket\n"
3663 "       and) try the next address. */\n"
3664 msgstr ""
3665 "    /* getaddrinfo() returns a list of address structures.\n"
3666 "       Try each address until we successfully connect(2).\n"
3667 "       If socket(2) (or connect(2)) fails, we (close the socket\n"
3668 "       and) try the next address. */\n"
3669
3670 #. type: Plain text
3671 #: build/C/man3/getaddrinfo.3:769
3672 #, no-wrap
3673 msgid ""
3674 "    for (rp = result; rp != NULL; rp = rp-E<gt>ai_next) {\n"
3675 "        sfd = socket(rp-E<gt>ai_family, rp-E<gt>ai_socktype,\n"
3676 "                     rp-E<gt>ai_protocol);\n"
3677 "        if (sfd == -1)\n"
3678 "            continue;\n"
3679 msgstr ""
3680 "    for (rp = result; rp != NULL; rp = rp-E<gt>ai_next) {\n"
3681 "        sfd = socket(rp-E<gt>ai_family, rp-E<gt>ai_socktype,\n"
3682 "                     rp-E<gt>ai_protocol);\n"
3683 "        if (sfd == -1)\n"
3684 "            continue;\n"
3685
3686 #. type: Plain text
3687 #: build/C/man3/getaddrinfo.3:772
3688 #, no-wrap
3689 msgid ""
3690 "        if (connect(sfd, rp-E<gt>ai_addr, rp-E<gt>ai_addrlen) != -1)\n"
3691 "            break;                  /* Success */\n"
3692 msgstr ""
3693 "        if (connect(sfd, rp-E<gt>ai_addr, rp-E<gt>ai_addrlen) != -1)\n"
3694 "            break;                  /* Success */\n"
3695
3696 #. type: Plain text
3697 #: build/C/man3/getaddrinfo.3:780
3698 #, no-wrap
3699 msgid ""
3700 "    if (rp == NULL) {               /* No address succeeded */\n"
3701 "        fprintf(stderr, \"Could not connect\\en\");\n"
3702 "        exit(EXIT_FAILURE);\n"
3703 "    }\n"
3704 msgstr ""
3705 "    if (rp == NULL) {               /* No address succeeded */\n"
3706 "        fprintf(stderr, \"Could not connect\\en\");\n"
3707 "        exit(EXIT_FAILURE);\n"
3708 "    }\n"
3709
3710 #. type: Plain text
3711 #: build/C/man3/getaddrinfo.3:785
3712 #, no-wrap
3713 msgid ""
3714 "    /* Send remaining command-line arguments as separate\n"
3715 "       datagrams, and read responses from server */\n"
3716 msgstr ""
3717 "    /* Send remaining command-line arguments as separate \n"
3718 "       datagrams, and read responses from server */\n"
3719
3720 #. type: Plain text
3721 #: build/C/man3/getaddrinfo.3:789
3722 #, no-wrap
3723 msgid ""
3724 "    for (j = 3; j E<lt> argc; j++) {\n"
3725 "        len = strlen(argv[j]) + 1;\n"
3726 "                /* +1 for terminating null byte */\n"
3727 msgstr ""
3728 "    for (j = 3; j E<lt> argc; j++) {\n"
3729 "        len = strlen(argv[j]) + 1;\n"
3730 "                /* +1 for terminating null byte */\n"
3731
3732 #. type: Plain text
3733 #: build/C/man3/getaddrinfo.3:795
3734 #, no-wrap
3735 msgid ""
3736 "        if (len + 1 E<gt> BUF_SIZE) {\n"
3737 "            fprintf(stderr,\n"
3738 "                    \"Ignoring long message in argument %d\\en\", j);\n"
3739 "            continue;\n"
3740 "        }\n"
3741 msgstr ""
3742 "        if (len + 1 E<gt> BUF_SIZE) {\n"
3743 "            fprintf(stderr,\n"
3744 "                    \"Ignoring long message in argument %d\\en\", j);\n"
3745 "            continue;\n"
3746 "        }\n"
3747
3748 #. type: Plain text
3749 #: build/C/man3/getaddrinfo.3:800
3750 #, no-wrap
3751 msgid ""
3752 "        if (write(sfd, argv[j], len) != len) {\n"
3753 "            fprintf(stderr, \"partial/failed write\\en\");\n"
3754 "            exit(EXIT_FAILURE);\n"
3755 "        }\n"
3756 msgstr ""
3757 "        if (write(sfd, argv[j], len) != len) {\n"
3758 "            fprintf(stderr, \"partial/failed write\\en\");\n"
3759 "            exit(EXIT_FAILURE);\n"
3760 "        }\n"
3761
3762 #. type: Plain text
3763 #: build/C/man3/getaddrinfo.3:806
3764 #, no-wrap
3765 msgid ""
3766 "        nread = read(sfd, buf, BUF_SIZE);\n"
3767 "        if (nread == -1) {\n"
3768 "            perror(\"read\");\n"
3769 "            exit(EXIT_FAILURE);\n"
3770 "        }\n"
3771 msgstr ""
3772 "        nread = read(sfd, buf, BUF_SIZE);\n"
3773 "        if (nread == -1) {\n"
3774 "            perror(\"read\");\n"
3775 "            exit(EXIT_FAILURE);\n"
3776 "        }\n"
3777
3778 #. type: Plain text
3779 #: build/C/man3/getaddrinfo.3:809
3780 #, no-wrap
3781 msgid ""
3782 "        printf(\"Received %ld bytes: %s\\en\", (long) nread, buf);\n"
3783 "    }\n"
3784 msgstr ""
3785 "        printf(\"Received %ld bytes: %s\\en\", (long) nread, buf);\n"
3786 "    }\n"
3787
3788 #.  .BR getipnodebyaddr (3),
3789 #.  .BR getipnodebyname (3),
3790 #. type: Plain text
3791 #: build/C/man3/getaddrinfo.3:822
3792 msgid ""
3793 "B<getaddrinfo_a>(3), B<gethostbyname>(3), B<getnameinfo>(3), B<inet>(3), "
3794 "B<hostname>(7), B<ip>(7)"
3795 msgstr ""
3796 "B<getaddrinfo_a>(3), B<gethostbyname>(3), B<getnameinfo>(3), B<inet>(3), "
3797 "B<hostname>(7), B<ip>(7)"
3798
3799 #. type: TH
3800 #: build/C/man3/getaddrinfo_a.3:27
3801 #, no-wrap
3802 msgid "GETADDRINFO_A"
3803 msgstr "GETADDRINFO_A"
3804
3805 #. type: Plain text
3806 #: build/C/man3/getaddrinfo_a.3:31
3807 msgid ""
3808 "getaddrinfo_a, gai_suspend, gai_error, gai_cancel - asynchronous network "
3809 "address and service translation"
3810 msgstr ""
3811 "getaddrinfo_a, gai_suspend, gai_error, gai_cancel - asynchronous network "
3812 "address and service translation"
3813
3814 #. type: Plain text
3815 #: build/C/man3/getaddrinfo_a.3:35
3816 #, no-wrap
3817 msgid ""
3818 "B<#define _GNU_SOURCE>         /* See feature_test_macros(7) */\n"
3819 "B<#include E<lt>netdb.hE<gt>>\n"
3820 msgstr ""
3821 "B<#define _GNU_SOURCE>         /* See feature_test_macros(7) */\n"
3822 "B<#include E<lt>netdb.hE<gt>>\n"
3823
3824 #. type: Plain text
3825 #: build/C/man3/getaddrinfo_a.3:38
3826 #, no-wrap
3827 msgid ""
3828 "B<int getaddrinfo_a(int >I<mode>B<, struct gaicb *>I<list[]>B<,>\n"
3829 "B<                int >I<nitems>B<, struct sigevent *>I<sevp>B<);>\n"
3830 msgstr ""
3831 "B<int getaddrinfo_a(int >I<mode>B<, struct gaicb *>I<list[]>B<,>\n"
3832 "B<                int >I<nitems>B<, struct sigevent *>I<sevp>B<);>\n"
3833
3834 #. type: Plain text
3835 #: build/C/man3/getaddrinfo_a.3:41
3836 #, no-wrap
3837 msgid ""
3838 "B<int gai_suspend(struct gaicb *>I<list[]>B<, int >I<nitems>B<,>\n"
3839 "B<                struct timespec *>I<timeout>B<);>\n"
3840 msgstr ""
3841 "B<int gai_suspend(struct gaicb *>I<list[]>B<, int >I<nitems>B<,>\n"
3842 "B<                struct timespec *>I<timeout>B<);>\n"
3843
3844 #. type: Plain text
3845 #: build/C/man3/getaddrinfo_a.3:43
3846 #, no-wrap
3847 msgid "B<int gai_error(struct gaicb *>I<req>B<);>\n"
3848 msgstr "B<int gai_error(struct gaicb *>I<req>B<);>\n"
3849
3850 #. type: Plain text
3851 #: build/C/man3/getaddrinfo_a.3:45
3852 #, no-wrap
3853 msgid "B<int gai_cancel(struct gaicb *>I<req>B<);>\n"
3854 msgstr "B<int gai_cancel(struct gaicb *>I<req>B<);>\n"
3855
3856 #. type: Plain text
3857 #: build/C/man3/getaddrinfo_a.3:47
3858 #, no-wrap
3859 msgid "Link with I<-lanl>.\n"
3860 msgstr "Link with I<-lanl>.\n"
3861
3862 #. type: Plain text
3863 #: build/C/man3/getaddrinfo_a.3:55
3864 msgid ""
3865 "The B<getaddrinfo_a>()  function performs the same task as B<getaddrinfo>"
3866 "(3), but allows multiple name look-ups to be performed asynchronously, with "
3867 "optional notification on completion of look-up operations."
3868 msgstr ""
3869 "The B<getaddrinfo_a>()  function performs the same task as B<getaddrinfo>"
3870 "(3), but allows multiple name look-ups to be performed asynchronously, with "
3871 "optional notification on completion of look-up operations."
3872
3873 #. type: Plain text
3874 #: build/C/man3/getaddrinfo_a.3:59
3875 msgid "The I<mode> argument has one of the following values:"
3876 msgstr "The I<mode> argument has one of the following values:"
3877
3878 #. type: TP
3879 #: build/C/man3/getaddrinfo_a.3:59
3880 #, no-wrap
3881 msgid "B<GAI_WAIT>"
3882 msgstr "B<GAI_WAIT>"
3883
3884 #. type: Plain text
3885 #: build/C/man3/getaddrinfo_a.3:63
3886 msgid ""
3887 "Perform the look-ups synchronously.  The call blocks until the look-ups have "
3888 "completed."
3889 msgstr ""
3890 "Perform the look-ups synchronously.  The call blocks until the look-ups have "
3891 "completed."
3892
3893 #. type: TP
3894 #: build/C/man3/getaddrinfo_a.3:63
3895 #, no-wrap
3896 msgid "B<GAI_NOWAIT>"
3897 msgstr "B<GAI_NOWAIT>"
3898
3899 #. type: Plain text
3900 #: build/C/man3/getaddrinfo_a.3:71
3901 msgid ""
3902 "Perform the look-ups asynchronously.  The call returns immediately, and the "
3903 "requests are resolved in the background.  See the discussion of the I<sevp> "
3904 "argument below."
3905 msgstr ""
3906 "Perform the look-ups asynchronously.  The call returns immediately, and the "
3907 "requests are resolved in the background.  See the discussion of the I<sevp> "
3908 "argument below."
3909
3910 #. type: Plain text
3911 #: build/C/man3/getaddrinfo_a.3:86
3912 msgid ""
3913 "The array I<list> specifies the look-up requests to process.  The I<nitems> "
3914 "argument specifies the number of elements in I<list>.  The requested look-up "
3915 "operations are started in parallel.  NULL elements in I<list> are ignored.  "
3916 "Each request is described by a I<gaicb> structure, defined as follows:"
3917 msgstr ""
3918 "The array I<list> specifies the look-up requests to process.  The I<nitems> "
3919 "argument specifies the number of elements in I<list>.  The requested look-up "
3920 "operations are started in parallel.  NULL elements in I<list> are ignored.  "
3921 "Each request is described by a I<gaicb> structure, defined as follows:"
3922
3923 #. type: Plain text
3924 #: build/C/man3/getaddrinfo_a.3:95
3925 #, no-wrap
3926 msgid ""
3927 "struct gaicb {\n"
3928 "    const char            *ar_name;\n"
3929 "    const char            *ar_service;\n"
3930 "    const struct addrinfo *ar_request;\n"
3931 "    struct addrinfo       *ar_result;\n"
3932 "};\n"
3933 msgstr ""
3934 "struct gaicb {\n"
3935 "    const char            *ar_name;\n"
3936 "    const char            *ar_service;\n"
3937 "    const struct addrinfo *ar_request;\n"
3938 "    struct addrinfo       *ar_result;\n"
3939 "};\n"
3940
3941 #. type: Plain text
3942 #: build/C/man3/getaddrinfo_a.3:126
3943 msgid ""
3944 "The elements of this structure correspond to the arguments of B<getaddrinfo>"
3945 "(3).  Thus, I<ar_name> corresponds to the I<node> argument and I<ar_service> "
3946 "to the I<service> argument, identifying an Internet host and a service.  The "
3947 "I<ar_request> element corresponds to the I<hints> argument, specifying the "
3948 "criteria for selecting the returned socket address structures.  Finally, "
3949 "I<ar_result> corresponds to the I<res> argument; you do not need to "
3950 "initialize this element, it will be automatically set when the request is "
3951 "resolved.  The I<addrinfo> structure referenced by the last two elements is "
3952 "described in B<getaddrinfo>(3)."
3953 msgstr ""
3954 "The elements of this structure correspond to the arguments of B<getaddrinfo>"
3955 "(3).  Thus, I<ar_name> corresponds to the I<node> argument and I<ar_service> "
3956 "to the I<service> argument, identifying an Internet host and a service.  The "
3957 "I<ar_request> element corresponds to the I<hints> argument, specifying the "
3958 "criteria for selecting the returned socket address structures.  Finally, "
3959 "I<ar_result> corresponds to the I<res> argument; you do not need to "
3960 "initialize this element, it will be automatically set when the request is "
3961 "resolved.  The I<addrinfo> structure referenced by the last two elements is "
3962 "described in B<getaddrinfo>(3)."
3963
3964 #. type: Plain text
3965 #: build/C/man3/getaddrinfo_a.3:142
3966 msgid ""
3967 "When I<mode> is specified as B<GAI_NOWAIT>, notifications about resolved "
3968 "requests can be obtained by employing the I<sigevent> structure pointed to "
3969 "by the I<sevp> argument.  For the definition and general details of this "
3970 "structure, see B<sigevent>(7).  The I<sevp-E<gt>sigev_notify> field can have "
3971 "the following values:"
3972 msgstr ""
3973 "When I<mode> is specified as B<GAI_NOWAIT>, notifications about resolved "
3974 "requests can be obtained by employing the I<sigevent> structure pointed to "
3975 "by the I<sevp> argument.  For the definition and general details of this "
3976 "structure, see B<sigevent>(7).  The I<sevp-E<gt>sigev_notify> field can have "
3977 "the following values:"
3978
3979 #. type: TP
3980 #: build/C/man3/getaddrinfo_a.3:142
3981 #, no-wrap
3982 msgid "B<SIGEV_NONE>"
3983 msgstr "B<SIGEV_NONE>"
3984
3985 #. type: Plain text
3986 #: build/C/man3/getaddrinfo_a.3:145
3987 msgid "Don't provide any notification."
3988 msgstr "Don't provide any notification."
3989
3990 #. type: TP
3991 #: build/C/man3/getaddrinfo_a.3:145
3992 #, no-wrap
3993 msgid "B<SIGEV_SIGNAL>"
3994 msgstr "B<SIGEV_SIGNAL>"
3995
3996 #.  si_pid and si_uid are also set, to the values of the calling process,
3997 #.  which doesn't provide useful information, so we'll skip mentioning it.
3998 #. type: Plain text
3999 #: build/C/man3/getaddrinfo_a.3:161
4000 msgid ""
4001 "When a look-up completes, generate the signal I<sigev_signo> for the "
4002 "process.  See B<sigevent>(7)  for general details.  The I<si_code> field of "
4003 "the I<siginfo_t> structure will be set to B<SI_ASYNCNL>."
4004 msgstr ""
4005 "When a look-up completes, generate the signal I<sigev_signo> for the "
4006 "process.  See B<sigevent>(7)  for general details.  The I<si_code> field of "
4007 "the I<siginfo_t> structure will be set to B<SI_ASYNCNL>."
4008
4009 #. type: TP
4010 #: build/C/man3/getaddrinfo_a.3:161
4011 #, no-wrap
4012 msgid "B<SIGEV_THREAD>"
4013 msgstr "B<SIGEV_THREAD>"
4014
4015 #. type: Plain text
4016 #: build/C/man3/getaddrinfo_a.3:169
4017 msgid ""
4018 "When a look-up completes, invoke I<sigev_notify_function> as if it were the "
4019 "start function of a new thread.  See B<sigevent>(7)  for details."
4020 msgstr ""
4021 "When a look-up completes, invoke I<sigev_notify_function> as if it were the "
4022 "start function of a new thread.  See B<sigevent>(7)  for details."
4023
4024 #. type: Plain text
4025 #: build/C/man3/getaddrinfo_a.3:178
4026 msgid ""
4027 "For B<SIGEV_SIGNAL> and B<SIGEV_THREAD>, it may be useful to point I<sevp-"
4028 "E<gt>sigev_value.sival_ptr> to I<list>."
4029 msgstr ""
4030 "For B<SIGEV_SIGNAL> and B<SIGEV_THREAD>, it may be useful to point I<sevp-"
4031 "E<gt>sigev_value.sival_ptr> to I<list>."
4032
4033 #. type: Plain text
4034 #: build/C/man3/getaddrinfo_a.3:189
4035 msgid ""
4036 "The B<gai_suspend>()  function suspends execution of the calling thread, "
4037 "waiting for the completion of one or more requests in the array I<list>.  "
4038 "The I<nitems> argument specifies the size of the array I<list>.  The call "
4039 "blocks until one of the following occurs:"
4040 msgstr ""
4041 "The B<gai_suspend>()  function suspends execution of the calling thread, "
4042 "waiting for the completion of one or more requests in the array I<list>.  "
4043 "The I<nitems> argument specifies the size of the array I<list>.  The call "
4044 "blocks until one of the following occurs:"
4045
4046 #. type: Plain text
4047 #: build/C/man3/getaddrinfo_a.3:193
4048 msgid "One or more of the operations in I<list> completes."
4049 msgstr "One or more of the operations in I<list> completes."
4050
4051 #. type: Plain text
4052 #: build/C/man3/getaddrinfo_a.3:195
4053 msgid "The call is interrupted by a signal that is caught."
4054 msgstr "The call is interrupted by a signal that is caught."
4055
4056 #. type: Plain text
4057 #: build/C/man3/getaddrinfo_a.3:208
4058 msgid ""
4059 "The time interval specified in I<timeout> elapses.  This argument specifies "
4060 "a timeout in seconds plus nanoseconds (see B<nanosleep>(2)  for details of "
4061 "the I<timespec> structure).  If I<timeout> is NULL, then the call blocks "
4062 "indefinitely (until one of the events above occurs)."
4063 msgstr ""
4064 "The time interval specified in I<timeout> elapses.  This argument specifies "
4065 "a timeout in seconds plus nanoseconds (see B<nanosleep>(2)  for details of "
4066 "the I<timespec> structure).  If I<timeout> is NULL, then the call blocks "
4067 "indefinitely (until one of the events above occurs)."
4068
4069 #. type: Plain text
4070 #: build/C/man3/getaddrinfo_a.3:213
4071 msgid ""
4072 "No explicit indication of which request was completed is given; you must "
4073 "determine which request(s) have completed by iterating with B<gai_error>()  "
4074 "over the list of requests."
4075 msgstr ""
4076 "No explicit indication of which request was completed is given; you must "
4077 "determine which request(s) have completed by iterating with B<gai_error>()  "
4078 "over the list of requests."
4079
4080 #. type: Plain text
4081 #: build/C/man3/getaddrinfo_a.3:223
4082 msgid ""
4083 "The B<gai_error>()  function returns the status of the request I<req>: "
4084 "either B<EAI_INPROGRESS> if the request was not completed yet, 0 if it was "
4085 "handled successfully, or an error code if the request could not be resolved."
4086 msgstr ""
4087 "The B<gai_error>()  function returns the status of the request I<req>: "
4088 "either B<EAI_INPROGRESS> if the request was not completed yet, 0 if it was "
4089 "handled successfully, or an error code if the request could not be resolved."
4090
4091 #. type: Plain text
4092 #: build/C/man3/getaddrinfo_a.3:240
4093 msgid ""
4094 "The B<gai_cancel>()  function cancels the request I<req>.  If the request "
4095 "has been canceled successfully, the error status of the request will be set "
4096 "to B<EAI_CANCELLED> and normal asynchronous notification will be performed.  "
4097 "The request cannot be canceled if it is currently being processed; in that "
4098 "case, it will be handled as if B<gai_cancel>()  has never been called.  If "
4099 "I<req> is NULL, an attempt is made to cancel all outstanding requests that "
4100 "the process has made."
4101 msgstr ""
4102 "The B<gai_cancel>()  function cancels the request I<req>.  If the request "
4103 "has been canceled successfully, the error status of the request will be set "
4104 "to B<EAI_CANCELLED> and normal asynchronous notification will be performed.  "
4105 "The request cannot be canceled if it is currently being processed; in that "
4106 "case, it will be handled as if B<gai_cancel>()  has never been called.  If "
4107 "I<req> is NULL, an attempt is made to cancel all outstanding requests that "
4108 "the process has made."
4109
4110 #. type: Plain text
4111 #: build/C/man3/getaddrinfo_a.3:245
4112 msgid ""
4113 "The B<getaddrinfo_a>()  function returns 0 if all of the requests have been "
4114 "enqueued successfully, or one of the following nonzero error codes:"
4115 msgstr ""
4116 "The B<getaddrinfo_a>()  function returns 0 if all of the requests have been "
4117 "enqueued successfully, or one of the following nonzero error codes:"
4118
4119 #. type: Plain text
4120 #: build/C/man3/getaddrinfo_a.3:250
4121 msgid ""
4122 "The resources necessary to enqueue the look-up requests were not available.  "
4123 "The application may check the error status of each request to determine "
4124 "which ones failed."
4125 msgstr ""
4126 "The resources necessary to enqueue the look-up requests were not available.  "
4127 "The application may check the error status of each request to determine "
4128 "which ones failed."
4129
4130 #. type: Plain text
4131 #: build/C/man3/getaddrinfo_a.3:257
4132 msgid "I<mode> is invalid."
4133 msgstr "I<mode> is invalid."
4134
4135 #. type: Plain text
4136 #: build/C/man3/getaddrinfo_a.3:262
4137 msgid ""
4138 "The B<gai_suspend>()  function returns 0 if at least one of the listed "
4139 "requests has been completed.  Otherwise, it returns one of the following "
4140 "nonzero error codes:"
4141 msgstr ""
4142 "The B<gai_suspend>()  function returns 0 if at least one of the listed "
4143 "requests has been completed.  Otherwise, it returns one of the following "
4144 "nonzero error codes:"
4145
4146 #. type: Plain text
4147 #: build/C/man3/getaddrinfo_a.3:265
4148 msgid ""
4149 "The given timeout expired before any of the requests could be completed."
4150 msgstr ""
4151 "The given timeout expired before any of the requests could be completed."
4152
4153 #. type: TP
4154 #: build/C/man3/getaddrinfo_a.3:265 build/C/man3/getaddrinfo_a.3:295
4155 #, no-wrap
4156 msgid "B<EAI_ALLDONE>"
4157 msgstr "B<EAI_ALLDONE>"
4158
4159 #. type: Plain text
4160 #: build/C/man3/getaddrinfo_a.3:268
4161 msgid "There were no actual requests given to the function."
4162 msgstr "There were no actual requests given to the function."
4163
4164 #. type: TP
4165 #: build/C/man3/getaddrinfo_a.3:268
4166 #, no-wrap
4167 msgid "B<EAI_INTR>"
4168 msgstr "B<EAI_INTR>"
4169
4170 #. type: Plain text
4171 #: build/C/man3/getaddrinfo_a.3:273
4172 msgid ""
4173 "A signal has interrupted the function.  Note that this interruption might "
4174 "have been caused by signal notification of some completed look-up request."
4175 msgstr ""
4176 "A signal has interrupted the function.  Note that this interruption might "
4177 "have been caused by signal notification of some completed look-up request."
4178
4179 #. type: Plain text
4180 #: build/C/man3/getaddrinfo_a.3:285
4181 msgid ""
4182 "The B<gai_error>()  function can return B<EAI_INPROGRESS> for an unfinished "
4183 "look-up request, 0 for a successfully completed look-up (as described "
4184 "above), one of the error codes that could be returned by B<getaddrinfo>(3), "
4185 "or the error code B<EAI_CANCELLED> if the request has been canceled "
4186 "explicitly before it could be finished."
4187 msgstr ""
4188 "The B<gai_error>()  function can return B<EAI_INPROGRESS> for an unfinished "
4189 "look-up request, 0 for a successfully completed look-up (as described "
4190 "above), one of the error codes that could be returned by B<getaddrinfo>(3), "
4191 "or the error code B<EAI_CANCELLED> if the request has been canceled "
4192 "explicitly before it could be finished."
4193
4194 #. type: Plain text
4195 #: build/C/man3/getaddrinfo_a.3:289
4196 msgid "The B<gai_cancel>()  function can return one of these values:"
4197 msgstr "The B<gai_cancel>()  function can return one of these values:"
4198
4199 #. type: TP
4200 #: build/C/man3/getaddrinfo_a.3:289
4201 #, no-wrap
4202 msgid "B<EAI_CANCELLED>"
4203 msgstr "B<EAI_CANCELLED>"
4204
4205 #. type: Plain text
4206 #: build/C/man3/getaddrinfo_a.3:292
4207 msgid "The request has been canceled successfully."
4208 msgstr "The request has been canceled successfully."
4209
4210 #. type: TP
4211 #: build/C/man3/getaddrinfo_a.3:292
4212 #, no-wrap
4213 msgid "B<EAI_NOTCANCELLED>"
4214 msgstr "B<EAI_NOTCANCELLED>"
4215
4216 #. type: Plain text
4217 #: build/C/man3/getaddrinfo_a.3:295
4218 msgid "The request has not been canceled."
4219 msgstr "The request has not been canceled."
4220
4221 #. type: Plain text
4222 #: build/C/man3/getaddrinfo_a.3:298
4223 msgid "The request has already completed."
4224 msgstr "The request has already completed."
4225
4226 #. type: Plain text
4227 #: build/C/man3/getaddrinfo_a.3:303 build/C/man3/getnameinfo.3:194
4228 msgid ""
4229 "The B<gai_strerror>(3)  function translates these error codes to a human "
4230 "readable string, suitable for error reporting."
4231 msgstr ""
4232 "B<gai_strerror>(3) 関数を使うと、これらのエラー・コードを、エラー・レポートに"
4233 "適した 人間が読みやすい文字列に翻訳してくれる。"
4234
4235 #. type: Plain text
4236 #: build/C/man3/getaddrinfo_a.3:306
4237 msgid ""
4238 "These functions are GNU extensions; they first appeared in glibc in version "
4239 "2.2.3."
4240 msgstr ""
4241 "These functions are GNU extensions; they first appeared in glibc in version "
4242 "2.2.3."
4243
4244 #. type: Plain text
4245 #: build/C/man3/getaddrinfo_a.3:312
4246 msgid ""
4247 "The interface of B<getaddrinfo_a>()  was modeled after the B<lio_listio>(3)  "
4248 "interface."
4249 msgstr ""
4250 "The interface of B<getaddrinfo_a>()  was modeled after the B<lio_listio>(3)  "
4251 "interface."
4252
4253 #. type: Plain text
4254 #: build/C/man3/getaddrinfo_a.3:316
4255 msgid ""
4256 "Two examples are provided: a simple example that resolves several requests "
4257 "in parallel synchronously, and a complex example showing some of the "
4258 "asynchronous capabilities."
4259 msgstr ""
4260 "Two examples are provided: a simple example that resolves several requests "
4261 "in parallel synchronously, and a complex example showing some of the "
4262 "asynchronous capabilities."
4263
4264 #. type: SS
4265 #: build/C/man3/getaddrinfo_a.3:316
4266 #, no-wrap
4267 msgid "Synchronous Example"
4268 msgstr "Synchronous Example"
4269
4270 #. type: Plain text
4271 #: build/C/man3/getaddrinfo_a.3:321
4272 msgid ""
4273 "The program below simply resolves several hostnames in parallel, giving a "
4274 "speed-up compared to resolving the hostnames sequentially using "
4275 "B<getaddrinfo>(3).  The program might be used like this:"
4276 msgstr ""
4277 "The program below simply resolves several hostnames in parallel, giving a "
4278 "speed-up compared to resolving the hostnames sequentially using "
4279 "B<getaddrinfo>(3).  The program might be used like this:"
4280
4281 #. type: Plain text
4282 #: build/C/man3/getaddrinfo_a.3:328
4283 #, no-wrap
4284 msgid ""
4285 "$ B<./a.out ftp.us.kernel.org enoent.linuxfoundation.org gnu.cz>\n"
4286 "ftp.us.kernel.org: 128.30.2.36\n"
4287 "enoent.linuxfoundation.org: Name or service not known\n"
4288 "gnu.cz: 87.236.197.13\n"
4289 msgstr ""
4290 "$ B<./a.out ftp.us.kernel.org enoent.linuxfoundation.org gnu.cz>\n"
4291 "ftp.us.kernel.org: 128.30.2.36\n"
4292 "enoent.linuxfoundation.org: Name or service not known\n"
4293 "gnu.cz: 87.236.197.13\n"
4294
4295 #. type: Plain text
4296 #: build/C/man3/getaddrinfo_a.3:332
4297 msgid "Here is the program source code"
4298 msgstr "Here is the program source code"
4299
4300 #. type: Plain text
4301 #: build/C/man3/getaddrinfo_a.3:339 build/C/man3/getaddrinfo_a.3:430
4302 #, no-wrap
4303 msgid ""
4304 "#define _GNU_SOURCE\n"
4305 "#include E<lt>netdb.hE<gt>\n"
4306 "#include E<lt>stdio.hE<gt>\n"
4307 "#include E<lt>stdlib.hE<gt>\n"
4308 "#include E<lt>string.hE<gt>\n"
4309 msgstr ""
4310 "#define _GNU_SOURCE\n"
4311 "#include E<lt>netdb.hE<gt>\n"
4312 "#include E<lt>stdio.hE<gt>\n"
4313 "#include E<lt>stdlib.hE<gt>\n"
4314 "#include E<lt>string.hE<gt>\n"
4315
4316 #. type: Plain text
4317 #: build/C/man3/getaddrinfo_a.3:347
4318 #, no-wrap
4319 msgid ""
4320 "int\n"
4321 "main(int argc, char *argv[])\n"
4322 "{\n"
4323 "    int i, ret;\n"
4324 "    struct gaicb *reqs[argc - 1];\n"
4325 "    char host[NI_MAXHOST];\n"
4326 "    struct addrinfo *res;\n"
4327 msgstr ""
4328 "int\n"
4329 "main(int argc, char *argv[])\n"
4330 "{\n"
4331 "    int i, ret;\n"
4332 "    struct gaicb *reqs[argc - 1];\n"
4333 "    char host[NI_MAXHOST];\n"
4334 "    struct addrinfo *res;\n"
4335
4336 #. type: Plain text
4337 #: build/C/man3/getaddrinfo_a.3:352
4338 #, no-wrap
4339 msgid ""
4340 "    if (argc E<lt> 2) {\n"
4341 "        fprintf(stderr, \"Usage: %s HOST...\\en\", argv[0]);\n"
4342 "        exit(EXIT_FAILURE);\n"
4343 "    }\n"
4344 msgstr ""
4345 "    if (argc E<lt> 2) {\n"
4346 "        fprintf(stderr, \"Usage: %s HOST...\\en\", argv[0]);\n"
4347 "        exit(EXIT_FAILURE);\n"
4348 "    }\n"
4349
4350 #. type: Plain text
4351 #: build/C/man3/getaddrinfo_a.3:362
4352 #, no-wrap
4353 msgid ""
4354 "    for (i = 0; i E<lt> argc - 1; i++) {\n"
4355 "        reqs[i] = malloc(sizeof(*reqs[0]));\n"
4356 "        if (reqs[i] == NULL) {\n"
4357 "            perror(\"malloc\");\n"
4358 "            exit(EXIT_FAILURE);\n"
4359 "        }\n"
4360 "        memset(reqs[i], 0, sizeof(*reqs[0]));\n"
4361 "        reqs[i]-E<gt>ar_name = argv[i + 1];\n"
4362 "    }\n"
4363 msgstr ""
4364 "    for (i = 0; i E<lt> argc - 1; i++) {\n"
4365 "        reqs[i] = malloc(sizeof(*reqs[0]));\n"
4366 "        if (reqs[i] == NULL) {\n"
4367 "            perror(\"malloc\");\n"
4368 "            exit(EXIT_FAILURE);\n"
4369 "        }\n"
4370 "        memset(reqs[i], 0, sizeof(*reqs[0]));\n"
4371 "        reqs[i]-E<gt>ar_name = argv[i + 1];\n"
4372 "    }\n"
4373
4374 #. type: Plain text
4375 #: build/C/man3/getaddrinfo_a.3:369
4376 #, no-wrap
4377 msgid ""
4378 "    ret = getaddrinfo_a(GAI_WAIT, reqs, argc - 1, NULL);\n"
4379 "    if (ret != 0) {\n"
4380 "        fprintf(stderr, \"getaddrinfo_a() failed: %s\\en\",\n"
4381 "                gai_strerror(ret));\n"
4382 "        exit(EXIT_FAILURE);\n"
4383 "    }\n"
4384 msgstr ""
4385 "    ret = getaddrinfo_a(GAI_WAIT, reqs, argc - 1, NULL);\n"
4386 "    if (ret != 0) {\n"
4387 "        fprintf(stderr, \"getaddrinfo_a() failed: %s\\en\",\n"
4388 "                gai_strerror(ret));\n"
4389 "        exit(EXIT_FAILURE);\n"
4390 "    }\n"
4391
4392 #. type: Plain text
4393 #: build/C/man3/getaddrinfo_a.3:375
4394 #, no-wrap
4395 msgid ""
4396 "    for (i = 0; i E<lt> argc - 1; i++) {\n"
4397 "        printf(\"%s: \", reqs[i]-E<gt>ar_name);\n"
4398 "        ret = gai_error(reqs[i]);\n"
4399 "        if (ret == 0) {\n"
4400 "            res = reqs[i]-E<gt>ar_result;\n"
4401 msgstr ""
4402 "    for (i = 0; i E<lt> argc - 1; i++) {\n"
4403 "        printf(\"%s: \", reqs[i]-E<gt>ar_name);\n"
4404 "        ret = gai_error(reqs[i]);\n"
4405 "        if (ret == 0) {\n"
4406 "            res = reqs[i]-E<gt>ar_result;\n"
4407
4408 #. type: Plain text
4409 #: build/C/man3/getaddrinfo_a.3:385
4410 #, no-wrap
4411 msgid ""
4412 "            ret = getnameinfo(res-E<gt>ai_addr, res-E<gt>ai_addrlen,\n"
4413 "                    host, sizeof(host),\n"
4414 "                    NULL, 0, NI_NUMERICHOST);\n"
4415 "            if (ret != 0) {\n"
4416 "                fprintf(stderr, \"getnameinfo() failed: %s\\en\",\n"
4417 "                        gai_strerror(ret));\n"
4418 "                exit(EXIT_FAILURE);\n"
4419 "            }\n"
4420 "            puts(host);\n"
4421 msgstr ""
4422 "            ret = getnameinfo(res-E<gt>ai_addr, res-E<gt>ai_addrlen,\n"
4423 "                    host, sizeof(host),\n"
4424 "                    NULL, 0, NI_NUMERICHOST);\n"
4425 "            if (ret != 0) {\n"
4426 "                fprintf(stderr, \"getnameinfo() failed: %s\\en\",\n"
4427 "                        gai_strerror(ret));\n"
4428 "                exit(EXIT_FAILURE);\n"
4429 "            }\n"
4430 "            puts(host);\n"
4431
4432 #. type: Plain text
4433 #: build/C/man3/getaddrinfo_a.3:392
4434 #, no-wrap
4435 msgid ""
4436 "        } else {\n"
4437 "            puts(gai_strerror(ret));\n"
4438 "        }\n"
4439 "    }\n"
4440 "    exit(EXIT_SUCCESS);\n"
4441 "}\n"
4442 msgstr ""
4443 "        } else {\n"
4444 "            puts(gai_strerror(ret));\n"
4445 "        }\n"
4446 "    }\n"
4447 "    exit(EXIT_SUCCESS);\n"
4448 "}\n"
4449
4450 #. type: SS
4451 #: build/C/man3/getaddrinfo_a.3:394
4452 #, no-wrap
4453 msgid "Asynchronous Example"
4454 msgstr "Asynchronous Example"
4455
4456 #. type: Plain text
4457 #: build/C/man3/getaddrinfo_a.3:399
4458 msgid ""
4459 "This example shows a simple interactive B<getaddrinfo_a>()  front-end.  The "
4460 "notification facility is not demonstrated."
4461 msgstr ""
4462 "This example shows a simple interactive B<getaddrinfo_a>()  front-end.  The "
4463 "notification facility is not demonstrated."
4464
4465 #. type: Plain text
4466 #: build/C/man3/getaddrinfo_a.3:401
4467 msgid "An example session might look like like this:"
4468 msgstr "An example session might look like like this:"
4469
4470 #. type: Plain text
4471 #: build/C/man3/getaddrinfo_a.3:418
4472 #, no-wrap
4473 msgid ""
4474 "$ B<./a.out>\n"
4475 "E<gt> a ftp.us.kernel.org enoent.linuxfoundation.org gnu.cz\n"
4476 "E<gt> c 2\n"
4477 "[2] gnu.cz: Request not canceled\n"
4478 "E<gt> w 0 1\n"
4479 "[00] ftp.us.kernel.org: Finished\n"
4480 "E<gt> l\n"
4481 "[00] ftp.us.kernel.org: 216.165.129.139\n"
4482 "[01] enoent.linuxfoundation.org: Processing request in progress\n"
4483 "[02] gnu.cz: 87.236.197.13\n"
4484 "E<gt> l\n"
4485 "[00] ftp.us.kernel.org: 216.165.129.139\n"
4486 "[01] enoent.linuxfoundation.org: Name or service not known\n"
4487 "[02] gnu.cz: 87.236.197.13\n"
4488 msgstr ""
4489 "$ B<./a.out>\n"
4490 "E<gt> a ftp.us.kernel.org enoent.linuxfoundation.org gnu.cz\n"
4491 "E<gt> c 2\n"
4492 "[2] gnu.cz: Request not canceled\n"
4493 "E<gt> w 0 1\n"
4494 "[00] ftp.us.kernel.org: Finished\n"
4495 "E<gt> l\n"
4496 "[00] ftp.us.kernel.org: 216.165.129.139\n"
4497 "[01] enoent.linuxfoundation.org: Processing request in progress\n"
4498 "[02] gnu.cz: 87.236.197.13\n"
4499 "E<gt> l\n"
4500 "[00] ftp.us.kernel.org: 216.165.129.139\n"
4501 "[01] enoent.linuxfoundation.org: Name or service not known\n"
4502 "[02] gnu.cz: 87.236.197.13\n"
4503
4504 #. type: Plain text
4505 #: build/C/man3/getaddrinfo_a.3:422
4506 msgid "The program source goes as follows:"
4507 msgstr "The program source goes as follows:"
4508
4509 #. type: Plain text
4510 #: build/C/man3/getaddrinfo_a.3:433
4511 #, no-wrap
4512 msgid ""
4513 "static struct gaicb **reqs = NULL;\n"
4514 "static int nreqs = 0;\n"
4515 msgstr ""
4516 "static struct gaicb **reqs = NULL;\n"
4517 "static int nreqs = 0;\n"
4518
4519 #. type: Plain text
4520 #: build/C/man3/getaddrinfo_a.3:438
4521 #, no-wrap
4522 msgid ""
4523 "static char *\n"
4524 "getcmd(void)\n"
4525 "{\n"
4526 "    static char buf[256];\n"
4527 msgstr ""
4528 "static char *\n"
4529 "getcmd(void)\n"
4530 "{\n"
4531 "    static char buf[256];\n"
4532
4533 #. type: Plain text
4534 #: build/C/man3/getaddrinfo_a.3:442
4535 #, no-wrap
4536 msgid ""
4537 "    fputs(\"E<gt> \", stdout); fflush(stdout);\n"
4538 "    if (fgets(buf, sizeof(buf), stdin) == NULL)\n"
4539 "        return NULL;\n"
4540 msgstr ""
4541 "    fputs(\"E<gt> \", stdout); fflush(stdout);\n"
4542 "    if (fgets(buf, sizeof(buf), stdin) == NULL)\n"
4543 "        return NULL;\n"
4544
4545 #. type: Plain text
4546 #: build/C/man3/getaddrinfo_a.3:445
4547 #, no-wrap
4548 msgid ""
4549 "    if (buf[strlen(buf) - 1] == \\(aq\\en\\(aq)\n"
4550 "        buf[strlen(buf) - 1] = 0;\n"
4551 msgstr ""
4552 "    if (buf[strlen(buf) - 1] == \\(aq\\en\\(aq)\n"
4553 "        buf[strlen(buf) - 1] = 0;\n"
4554
4555 #. type: Plain text
4556 #: build/C/man3/getaddrinfo_a.3:448
4557 #, no-wrap
4558 msgid ""
4559 "    return buf;\n"
4560 "}\n"
4561 msgstr ""
4562 "    return buf;\n"
4563 "}\n"
4564
4565 #. type: Plain text
4566 #: build/C/man3/getaddrinfo_a.3:456
4567 #, no-wrap
4568 msgid ""
4569 "/* Add requests for specified hostnames */\n"
4570 "static void\n"
4571 "add_requests(void)\n"
4572 "{\n"
4573 "    int nreqs_base = nreqs;\n"
4574 "    char *host;\n"
4575 "    int ret;\n"
4576 msgstr ""
4577 "/* Add requests for specified hostnames */\n"
4578 "static void\n"
4579 "add_requests(void)\n"
4580 "{\n"
4581 "    int nreqs_base = nreqs;\n"
4582 "    char *host;\n"
4583 "    int ret;\n"
4584
4585 #. type: Plain text
4586 #: build/C/man3/getaddrinfo_a.3:460
4587 #, no-wrap
4588 msgid ""
4589 "    while ((host = strtok(NULL, \" \"))) {\n"
4590 "        nreqs++;\n"
4591 "        reqs = realloc(reqs, nreqs * sizeof(reqs[0]));\n"
4592 msgstr ""
4593 "    while ((host = strtok(NULL, \" \"))) {\n"
4594 "        nreqs++;\n"
4595 "        reqs = realloc(reqs, nreqs * sizeof(reqs[0]));\n"
4596
4597 #. type: Plain text
4598 #: build/C/man3/getaddrinfo_a.3:464
4599 #, no-wrap
4600 msgid ""
4601 "        reqs[nreqs - 1] = calloc(1, sizeof(*reqs[0]));\n"
4602 "        reqs[nreqs - 1]-E<gt>ar_name = strdup(host);\n"
4603 "    }\n"
4604 msgstr ""
4605 "        reqs[nreqs - 1] = calloc(1, sizeof(*reqs[0]));\n"
4606 "        reqs[nreqs - 1]-E<gt>ar_name = strdup(host);\n"
4607 "    }\n"
4608
4609 #. type: Plain text
4610 #: build/C/man3/getaddrinfo_a.3:466
4611 #, no-wrap
4612 msgid "    /* Queue nreqs_base..nreqs requests. */\n"
4613 msgstr "    /* Queue nreqs_base..nreqs requests. */\n"
4614
4615 #. type: Plain text
4616 #: build/C/man3/getaddrinfo_a.3:475
4617 #, no-wrap
4618 msgid ""
4619 "    ret = getaddrinfo_a(GAI_NOWAIT, &reqs[nreqs_base],\n"
4620 "                        nreqs - nreqs_base, NULL);\n"
4621 "    if (ret) {\n"
4622 "        fprintf(stderr, \"getaddrinfo_a() failed: %s\\en\",\n"
4623 "                gai_strerror(ret));\n"
4624 "        exit(EXIT_FAILURE);\n"
4625 "    }\n"
4626 "}\n"
4627 msgstr ""
4628 "    ret = getaddrinfo_a(GAI_NOWAIT, &reqs[nreqs_base],\n"
4629 "                        nreqs - nreqs_base, NULL);\n"
4630 "    if (ret) {\n"
4631 "        fprintf(stderr, \"getaddrinfo_a() failed: %s\\en\",\n"
4632 "                gai_strerror(ret));\n"
4633 "        exit(EXIT_FAILURE);\n"
4634 "    }\n"
4635 "}\n"
4636
4637 #. type: Plain text
4638 #: build/C/man3/getaddrinfo_a.3:484
4639 #, no-wrap
4640 msgid ""
4641 "/* Wait until at least one of specified requests completes */\n"
4642 "static void\n"
4643 "wait_requests(void)\n"
4644 "{\n"
4645 "    char *id;\n"
4646 "    int i, ret, n;\n"
4647 "    struct gaicb const **wait_reqs = calloc(nreqs, sizeof(*wait_reqs));\n"
4648 "                /* NULL elements are ignored by gai_suspend(). */\n"
4649 msgstr ""
4650 "/* Wait until at least one of specified requests completes */\n"
4651 "static void\n"
4652 "wait_requests(void)\n"
4653 "{\n"
4654 "    char *id;\n"
4655 "    int i, ret, n;\n"
4656 "    struct gaicb const **wait_reqs = calloc(nreqs, sizeof(*wait_reqs));\n"
4657 "                /* NULL elements are ignored by gai_suspend(). */\n"
4658
4659 #. type: Plain text
4660 #: build/C/man3/getaddrinfo_a.3:487 build/C/man3/getaddrinfo_a.3:524
4661 #, no-wrap
4662 msgid ""
4663 "    while ((id = strtok(NULL, \" \")) != NULL) {\n"
4664 "        n = atoi(id);\n"
4665 msgstr ""
4666 "    while ((id = strtok(NULL, \" \")) != NULL) {\n"
4667 "        n = atoi(id);\n"
4668
4669 #. type: Plain text
4670 #: build/C/man3/getaddrinfo_a.3:492 build/C/man3/getaddrinfo_a.3:529
4671 #, no-wrap
4672 msgid ""
4673 "        if (n E<gt>= nreqs) {\n"
4674 "            printf(\"Bad request number: %s\\en\", id);\n"
4675 "            return;\n"
4676 "        }\n"
4677 msgstr ""
4678 "        if (n E<gt>= nreqs) {\n"
4679 "            printf(\"Bad request number: %s\\en\", id);\n"
4680 "            return;\n"
4681 "        }\n"
4682
4683 #. type: Plain text
4684 #: build/C/man3/getaddrinfo_a.3:495
4685 #, no-wrap
4686 msgid ""
4687 "        wait_reqs[n] = reqs[n];\n"
4688 "    }\n"
4689 msgstr ""
4690 "        wait_reqs[n] = reqs[n];\n"
4691 "    }\n"
4692
4693 #. type: Plain text
4694 #: build/C/man3/getaddrinfo_a.3:501
4695 #, no-wrap
4696 msgid ""
4697 "    ret = gai_suspend(wait_reqs, nreqs, NULL);\n"
4698 "    if (ret) {\n"
4699 "        printf(\"gai_suspend(): %s\\en\", gai_strerror(ret));\n"
4700 "        return;\n"
4701 "    }\n"
4702 msgstr ""
4703 "    ret = gai_suspend(wait_reqs, nreqs, NULL);\n"
4704 "    if (ret) {\n"
4705 "        printf(\"gai_suspend(): %s\\en\", gai_strerror(ret));\n"
4706 "        return;\n"
4707 "    }\n"
4708
4709 #. type: Plain text
4710 #: build/C/man3/getaddrinfo_a.3:505
4711 #, no-wrap
4712 msgid ""
4713 "    for (i = 0; i E<lt> nreqs; i++) {\n"
4714 "        if (wait_reqs[i] == NULL)\n"
4715 "            continue;\n"
4716 msgstr ""
4717 "    for (i = 0; i E<lt> nreqs; i++) {\n"
4718 "        if (wait_reqs[i] == NULL)\n"
4719 "            continue;\n"
4720
4721 #. type: Plain text
4722 #: build/C/man3/getaddrinfo_a.3:509
4723 #, no-wrap
4724 msgid ""
4725 "        ret = gai_error(reqs[i]);\n"
4726 "        if (ret == EAI_INPROGRESS)\n"
4727 "            continue;\n"
4728 msgstr ""
4729 "        ret = gai_error(reqs[i]);\n"
4730 "        if (ret == EAI_INPROGRESS)\n"
4731 "            continue;\n"
4732
4733 #. type: Plain text
4734 #: build/C/man3/getaddrinfo_a.3:514
4735 #, no-wrap
4736 msgid ""
4737 "        printf(\"[%02d] %s: %s\\en\", i, reqs[i]-E<gt>ar_name,\n"
4738 "               ret == 0 ? \"Finished\" : gai_strerror(ret));\n"
4739 "    }\n"
4740 "}\n"
4741 msgstr ""
4742 "        printf(\"[%02d] %s: %s\\en\", i, reqs[i]-E<gt>ar_name,\n"
4743 "               ret == 0 ? \"Finished\" : gai_strerror(ret));\n"
4744 "    }\n"
4745 "}\n"
4746
4747 #. type: Plain text
4748 #: build/C/man3/getaddrinfo_a.3:521
4749 #, no-wrap
4750 msgid ""
4751 "/* Cancel specified requests */\n"
4752 "static void\n"
4753 "cancel_requests(void)\n"
4754 "{\n"
4755 "    char *id;\n"
4756 "    int ret, n;\n"
4757 msgstr ""
4758 "/* Cancel specified requests */\n"
4759 "static void\n"
4760 "cancel_requests(void)\n"
4761 "{\n"
4762 "    char *id;\n"
4763 "    int ret, n;\n"
4764
4765 #. type: Plain text
4766 #: build/C/man3/getaddrinfo_a.3:535
4767 #, no-wrap
4768 msgid ""
4769 "        ret = gai_cancel(reqs[n]);\n"
4770 "        printf(\"[%s] %s: %s\\en\", id, reqs[atoi(id)]-E<gt>ar_name,\n"
4771 "               gai_strerror(ret));\n"
4772 "    }\n"
4773 "}\n"
4774 msgstr ""
4775 "        ret = gai_cancel(reqs[n]);\n"
4776 "        printf(\"[%s] %s: %s\\en\", id, reqs[atoi(id)]-E<gt>ar_name,\n"
4777 "               gai_strerror(ret));\n"
4778 "    }\n"
4779 "}\n"
4780
4781 #. type: Plain text
4782 #: build/C/man3/getaddrinfo_a.3:543
4783 #, no-wrap
4784 msgid ""
4785 "/* List all requests */\n"
4786 "static void\n"
4787 "list_requests(void)\n"
4788 "{\n"
4789 "    int i, ret;\n"
4790 "    char host[NI_MAXHOST];\n"
4791 "    struct addrinfo *res;\n"
4792 msgstr ""
4793 "/* List all requests */\n"
4794 "static void\n"
4795 "list_requests(void)\n"
4796 "{\n"
4797 "    int i, ret;\n"
4798 "    char host[NI_MAXHOST];\n"
4799 "    struct addrinfo *res;\n"
4800
4801 #. type: Plain text
4802 #: build/C/man3/getaddrinfo_a.3:547
4803 #, no-wrap
4804 msgid ""
4805 "    for (i = 0; i E<lt> nreqs; i++) {\n"
4806 "        printf(\"[%02d] %s: \", i, reqs[i]-E<gt>ar_name);\n"
4807 "        ret = gai_error(reqs[i]);\n"
4808 msgstr ""
4809 "    for (i = 0; i E<lt> nreqs; i++) {\n"
4810 "        printf(\"[%02d] %s: \", i, reqs[i]-E<gt>ar_name);\n"
4811 "        ret = gai_error(reqs[i]);\n"
4812
4813 #. type: Plain text
4814 #: build/C/man3/getaddrinfo_a.3:550
4815 #, no-wrap
4816 msgid ""
4817 "        if (!ret) {\n"
4818 "            res = reqs[i]-E<gt>ar_result;\n"
4819 msgstr ""
4820 "        if (!ret) {\n"
4821 "            res = reqs[i]-E<gt>ar_result;\n"
4822
4823 #. type: Plain text
4824 #: build/C/man3/getaddrinfo_a.3:565
4825 #, no-wrap
4826 msgid ""
4827 "            ret = getnameinfo(res-E<gt>ai_addr, res-E<gt>ai_addrlen,\n"
4828 "                              host, sizeof(host),\n"
4829 "                              NULL, 0, NI_NUMERICHOST);\n"
4830 "            if (ret) {\n"
4831 "                fprintf(stderr, \"getnameinfo() failed: %s\\en\",\n"
4832 "                        gai_strerror(ret));\n"
4833 "                exit(EXIT_FAILURE);\n"
4834 "            }\n"
4835 "            puts(host);\n"
4836 "        } else {\n"
4837 "            puts(gai_strerror(ret));\n"
4838 "        }\n"
4839 "    }\n"
4840 "}\n"
4841 msgstr ""
4842 "            ret = getnameinfo(res-E<gt>ai_addr, res-E<gt>ai_addrlen,\n"
4843 "                              host, sizeof(host),\n"
4844 "                              NULL, 0, NI_NUMERICHOST);\n"
4845 "            if (ret) {\n"
4846 "                fprintf(stderr, \"getnameinfo() failed: %s\\en\",\n"
4847 "                        gai_strerror(ret));\n"
4848 "                exit(EXIT_FAILURE);\n"
4849 "            }\n"
4850 "            puts(host);\n"
4851 "        } else {\n"
4852 "            puts(gai_strerror(ret));\n"
4853 "        }\n"
4854 "    }\n"
4855 "}\n"
4856
4857 #. type: Plain text
4858 #: build/C/man3/getaddrinfo_a.3:571
4859 #, no-wrap
4860 msgid ""
4861 "int\n"
4862 "main(int argc, char *argv[])\n"
4863 "{\n"
4864 "    char *cmdline;\n"
4865 "    char *cmd;\n"
4866 msgstr ""
4867 "int\n"
4868 "main(int argc, char *argv[])\n"
4869 "{\n"
4870 "    char *cmdline;\n"
4871 "    char *cmd;\n"
4872
4873 #. type: Plain text
4874 #: build/C/man3/getaddrinfo_a.3:574
4875 #, no-wrap
4876 msgid ""
4877 "    while ((cmdline = getcmd()) != NULL) {\n"
4878 "        cmd = strtok(cmdline, \" \");\n"
4879 msgstr ""
4880 "    while ((cmdline = getcmd()) != NULL) {\n"
4881 "        cmd = strtok(cmdline, \" \");\n"
4882
4883 #. type: Plain text
4884 #: build/C/man3/getaddrinfo_a.3:599
4885 #, no-wrap
4886 msgid ""
4887 "        if (cmd == NULL) {\n"
4888 "            list_requests();\n"
4889 "        } else {\n"
4890 "            switch (cmd[0]) {\n"
4891 "            case \\(aqa\\(aq:\n"
4892 "                add_requests();\n"
4893 "                break;\n"
4894 "            case \\(aqw\\(aq:\n"
4895 "                wait_requests();\n"
4896 "                break;\n"
4897 "            case \\(aqc\\(aq:\n"
4898 "                cancel_requests();\n"
4899 "                break;\n"
4900 "            case \\(aql\\(aq:\n"
4901 "                list_requests();\n"
4902 "                break;\n"
4903 "            default:\n"
4904 "                fprintf(stderr, \"Bad command: %c\\en\", cmd[0]);\n"
4905 "                break;\n"
4906 "            }\n"
4907 "        }\n"
4908 "    }\n"
4909 "    exit(EXIT_SUCCESS);\n"
4910 "}\n"
4911 msgstr ""
4912 "        if (cmd == NULL) {\n"
4913 "            list_requests();\n"
4914 "        } else {\n"
4915 "            switch (cmd[0]) {\n"
4916 "            case \\(aqa\\(aq:\n"
4917 "                add_requests();\n"
4918 "                break;\n"
4919 "            case \\(aqw\\(aq:\n"
4920 "                wait_requests();\n"
4921 "                break;\n"
4922 "            case \\(aqc\\(aq:\n"
4923 "                cancel_requests();\n"
4924 "                break;\n"
4925 "            case \\(aql\\(aq:\n"
4926 "                list_requests();\n"
4927 "                break;\n"
4928 "            default:\n"
4929 "                fprintf(stderr, \"Bad command: %c\\en\", cmd[0]);\n"
4930 "                break;\n"
4931 "            }\n"
4932 "        }\n"
4933 "    }\n"
4934 "    exit(EXIT_SUCCESS);\n"
4935 "}\n"
4936
4937 #. type: Plain text
4938 #: build/C/man3/getaddrinfo_a.3:607
4939 msgid ""
4940 "B<getaddrinfo>(3), B<inet>(3), B<lio_listio>(3), B<hostname>(7), B<ip>(7), "
4941 "B<sigevent>(7)"
4942 msgstr ""
4943 "B<getaddrinfo>(3), B<inet>(3), B<lio_listio>(3), B<hostname>(7), B<ip>(7), "
4944 "B<sigevent>(7)"
4945
4946 #. type: TH
4947 #: build/C/man1/getent.1:23
4948 #, fuzzy, no-wrap
4949 #| msgid "GETNETENT"
4950 msgid "GETENT"
4951 msgstr "GETNETENT"
4952
4953 #. type: TH
4954 #: build/C/man1/getent.1:23
4955 #, fuzzy, no-wrap
4956 #| msgid "2011-09-08"
4957 msgid "2011-10-31"
4958 msgstr "2011-09-08"
4959
4960 #. type: TH
4961 #: build/C/man1/getent.1:23
4962 #, no-wrap
4963 msgid "User Commands"
4964 msgstr ""
4965
4966 #. type: Plain text
4967 #: build/C/man1/getent.1:26
4968 msgid "getent - get entries from Name Service Switch libraries"
4969 msgstr ""
4970
4971 #. type: Plain text
4972 #: build/C/man1/getent.1:28
4973 msgid "B<getent >I<database>B< [ >I<key>B< ... ]>"
4974 msgstr ""
4975
4976 #. type: Plain text
4977 #: build/C/man1/getent.1:43
4978 msgid ""
4979 "The I<getent> command displays entries from databases supported by the Name "
4980 "Service Switch libraries, which are configured in I</etc/nsswitch.conf>.  If "
4981 "one or more I<key> arguments are provided, then only the entries that match "
4982 "the supplied keys will be displayed.  Otherwise, if no I<key> is provided, "
4983 "all entries will be displayed (unless the database does not support "
4984 "enumeration)."
4985 msgstr ""
4986
4987 #. type: Plain text
4988 #: build/C/man1/getent.1:47
4989 msgid ""
4990 "The I<database> may be any of those supported by the GNU C Library, listed "
4991 "below:"
4992 msgstr ""
4993
4994 #. type: TP
4995 #: build/C/man1/getent.1:48
4996 #, fuzzy, no-wrap
4997 #| msgid "B<hosts>"
4998 msgid "B<ahosts>"
4999 msgstr "B<hosts>"
5000
5001 #. type: Plain text
5002 #: build/C/man1/getent.1:69
5003 msgid ""
5004 "When no I<key> is provided, use B<sethostent>(3), B<gethostent>(3), and "
5005 "B<endhostent>(3)  to enumerate the hosts database.  This is identical to "
5006 "using B<hosts>.  When one or more I<key> arguments are provided, pass each "
5007 "I<key> in succession to B<getaddrinfo>(3)  with the address family "
5008 "B<AF_UNSPEC>, enumerating each socket address structure returned."
5009 msgstr ""
5010
5011 #. type: TP
5012 #: build/C/man1/getent.1:69
5013 #, fuzzy, no-wrap
5014 #| msgid "B<hosts>"
5015 msgid "B<ahostsv4>"
5016 msgstr "B<hosts>"
5017
5018 #. type: Plain text
5019 #: build/C/man1/getent.1:75
5020 msgid "Same as B<ahosts>, but use the address family B<AF_INET>."
5021 msgstr ""
5022
5023 #. type: TP
5024 #: build/C/man1/getent.1:75
5025 #, fuzzy, no-wrap
5026 #| msgid "B<hosts>"
5027 msgid "B<ahostsv6>"
5028 msgstr "B<hosts>"
5029
5030 #. type: Plain text
5031 #: build/C/man1/getent.1:86
5032 msgid ""
5033 "Same as B<ahosts>, but use the address family B<AF_INET6>.  The call to "
5034 "B<getaddrinfo>(3)  in this case includes the B<AI_V4MAPPED> flag."
5035 msgstr ""
5036
5037 #. type: TP
5038 #: build/C/man1/getent.1:86 build/C/man5/nsswitch.conf.5:51
5039 #, no-wrap
5040 msgid "B<aliases>"
5041 msgstr "B<aliases>"
5042
5043 #. type: Plain text
5044 #: build/C/man1/getent.1:103
5045 msgid ""
5046 "When no I<key> is provided, use B<setaliasent>(3), B<getaliasent>(3), and "
5047 "B<endaliasent>(3)  to enumerate the aliases database.  When one or more "
5048 "I<key> arguments are provided, pass each I<key> in succession to "
5049 "B<getaliasbyname>(3)  and display the result."
5050 msgstr ""
5051
5052 #. type: TP
5053 #: build/C/man1/getent.1:103 build/C/man5/nsswitch.conf.5:56
5054 #, no-wrap
5055 msgid "B<ethers>"
5056 msgstr "B<ethers>"
5057
5058 #. type: Plain text
5059 #: build/C/man1/getent.1:119
5060 msgid ""
5061 "When one or more I<key> arguments are provided, pass each I<key> in "
5062 "succession to B<ether_aton>(3)  and B<ether_hostton>(3)  until a result is "
5063 "obtained, and display the result.  Enumeration is not supported on "
5064 "B<ethers>, so a I<key> must be provided."
5065 msgstr ""
5066
5067 #. type: TP
5068 #: build/C/man1/getent.1:119 build/C/man5/nsswitch.conf.5:59
5069 #, no-wrap
5070 msgid "B<group>"
5071 msgstr "B<group>"
5072
5073 #. type: Plain text
5074 #: build/C/man1/getent.1:140
5075 msgid ""
5076 "When no I<key> is provided, use B<setgrent>(3), B<getgrent>(3), and "
5077 "B<endgrent>(3)  to enumerate the group database.  When one or more I<key> "
5078 "arguments are provided, pass each numeric I<key> to B<getgrgid>(3)  and each "
5079 "nonnumeric I<key> to B<getgrnam>(3)  and display the result."
5080 msgstr ""
5081
5082 #. type: TP
5083 #: build/C/man1/getent.1:140
5084 #, fuzzy, no-wrap
5085 #| msgid "B<shadow>"
5086 msgid "B<gshadow>"
5087 msgstr "B<shadow>"
5088
5089 #. type: Plain text
5090 #: build/C/man1/getent.1:157
5091 msgid ""
5092 "When no I<key> is provided, use B<setsgent>(3), B<getsgent>(3), and "
5093 "B<endsgent>(3)  to enumerate the gshadow database.  When one or more I<key> "
5094 "arguments are provided, pass each I<key> in succession to B<getsgnam>(3)  "
5095 "and display the result."
5096 msgstr ""
5097
5098 #. type: TP
5099 #: build/C/man1/getent.1:157 build/C/man5/nsswitch.conf.5:64
5100 #, no-wrap
5101 msgid "B<hosts>"
5102 msgstr "B<hosts>"
5103
5104 #. type: Plain text
5105 #: build/C/man1/getent.1:180
5106 msgid ""
5107 "When no I<key> is provided, use B<sethostent>(3), B<gethostent>(3), and "
5108 "B<endhostent>(3)  to enumerate the hosts database.  When one or more I<key> "
5109 "arguments are provided, pass each I<key> to B<gethostbyaddr>(3)  or "
5110 "B<gethostbyname2>(3), depending on whether a call to B<inet_pton>(3)  "
5111 "indicates that the I<key> is an IPv6 or IPv4 address or not, and display the "
5112 "result."
5113 msgstr ""
5114
5115 #. type: TP
5116 #: build/C/man1/getent.1:180
5117 #, fuzzy, no-wrap
5118 #| msgid "B<netgroup>"
5119 msgid "B<initgroups>"
5120 msgstr "B<netgroup>"
5121
5122 #. type: Plain text
5123 #: build/C/man1/getent.1:194
5124 msgid ""
5125 "When one or more I<key> arguments are provided, pass each I<key> in "
5126 "succession to B<getgrouplist>(3)  and display the result.  Enumeration is "
5127 "not supported on B<initgroups>, so a I<key> must be provided."
5128 msgstr ""
5129
5130 #. type: TP
5131 #: build/C/man1/getent.1:194 build/C/man5/nsswitch.conf.5:69
5132 #, no-wrap
5133 msgid "B<netgroup>"
5134 msgstr "B<netgroup>"
5135
5136 #. type: Plain text
5137 #: build/C/man1/getent.1:220
5138 msgid ""
5139 "When one I<key> is provided, pass the I<key> to B<setnetgrent>(3)  and, "
5140 "using B<getnetgrent>(3)  display the resulting string triple (I<hostname>, "
5141 "I<username>, I<domainname>).  Alternatively, three I<keys> may be provided, "
5142 "which are interpreted as the I<hostname>, I<username> and I<domainname> to "
5143 "match to a netgroup name via B<innetgr>(3).  Enumeration is not supported on "
5144 "B<initgroups>, so either one or three I<keys> must be provided."
5145 msgstr ""
5146
5147 #. type: TP
5148 #: build/C/man1/getent.1:220 build/C/man5/nsswitch.conf.5:73
5149 #, no-wrap
5150 msgid "B<networks>"
5151 msgstr "B<networks>"
5152
5153 #. type: Plain text
5154 #: build/C/man1/getent.1:241
5155 msgid ""
5156 "When no I<key> is provided, use B<setnetent>(3), B<getnetent>(3), and "
5157 "B<endnetent>(3)  to enumerate the networks database.  When one or more "
5158 "I<key> arguments are provided, pass each numeric I<key> to B<getnetbyaddr>"
5159 "(3)  and each nonnumeric I<key> to B<getnetbyname>(3)  and display the "
5160 "result."
5161 msgstr ""
5162
5163 #. type: TP
5164 #: build/C/man1/getent.1:241 build/C/man5/nsswitch.conf.5:78
5165 #, no-wrap
5166 msgid "B<passwd>"
5167 msgstr "B<passwd>"
5168
5169 #. type: Plain text
5170 #: build/C/man1/getent.1:262
5171 msgid ""
5172 "When no I<key> is provided, use B<setpwent>(3), B<getpwent>(3), and "
5173 "B<endpwent>(3)  to enumerate the passwd database.  When one or more I<key> "
5174 "arguments are provided, pass each numeric I<key> to B<getpwuid>(3)  and each "
5175 "nonnumeric I<key> to B<getpwnam>(3)  and display the result."
5176 msgstr ""
5177
5178 #. type: TP
5179 #: build/C/man1/getent.1:262 build/C/man5/nsswitch.conf.5:83
5180 #, no-wrap
5181 msgid "B<protocols>"
5182 msgstr "B<protocols>"
5183
5184 #. type: Plain text
5185 #: build/C/man1/getent.1:283
5186 msgid ""
5187 "When no I<key> is provided, use B<setprotoent>(3), B<getprotoent>(3), and "
5188 "B<endprotoent>(3)  to enumerate the protocols database.  When one or more "
5189 "I<key> arguments are provided, pass each numeric I<key> to "
5190 "B<getprotobynumber>(3)  and each nonnumeric I<key> to B<getprotobyname>(3)  "
5191 "and display the result."
5192 msgstr ""
5193
5194 #. type: TP
5195 #: build/C/man1/getent.1:283 build/C/man5/nsswitch.conf.5:91
5196 #, no-wrap
5197 msgid "B<rpc>"
5198 msgstr "B<rpc>"
5199
5200 #. type: Plain text
5201 #: build/C/man1/getent.1:304
5202 msgid ""
5203 "When no I<key> is provided, use B<setrpcent>(3), B<getrpcent>(3), and "
5204 "B<endrpcent>(3)  to enumerate the rpc database.  When one or more I<key> "
5205 "arguments are provided, pass each numeric I<key> to B<getrpcbynumber>(3)  "
5206 "and each nonnumeric I<key> to B<getrpcbyname>(3)  and display the result."
5207 msgstr ""
5208
5209 #. type: TP
5210 #: build/C/man1/getent.1:304 build/C/man5/nsswitch.conf.5:96
5211 #, no-wrap
5212 msgid "B<services>"
5213 msgstr "B<services>"
5214
5215 #. type: Plain text
5216 #: build/C/man1/getent.1:325
5217 msgid ""
5218 "When no I<key> is provided, use B<setservent>(3), B<getservent>(3), and "
5219 "B<endservent>(3)  to enumerate the services database.  When one or more "
5220 "I<key> arguments are provided, pass each numeric I<key> to B<getservbynumber>"
5221 "(3)  and each nonnumeric I<key> to B<getservbyname>(3)  and display the "
5222 "result."
5223 msgstr ""
5224
5225 #. type: TP
5226 #: build/C/man1/getent.1:325 build/C/man5/nsswitch.conf.5:101
5227 #, no-wrap
5228 msgid "B<shadow>"
5229 msgstr "B<shadow>"
5230
5231 #. type: Plain text
5232 #: build/C/man1/getent.1:342
5233 msgid ""
5234 "When no I<key> is provided, use B<setspent>(3), B<getspent>(3), and "
5235 "B<endspent>(3)  to enumerate the shadow database.  When one or more I<key> "
5236 "arguments are provided, pass each I<key> in succession to B<getspnam>(3)  "
5237 "and display the result."
5238 msgstr ""
5239
5240 #. type: SH
5241 #: build/C/man1/getent.1:343
5242 #, no-wrap
5243 msgid "EXIT STATUS"
5244 msgstr ""
5245
5246 #. type: Plain text
5247 #: build/C/man1/getent.1:346
5248 msgid "One of the following exit values can be returned by B<getent>:"
5249 msgstr ""
5250
5251 #. type: TP
5252 #: build/C/man1/getent.1:347
5253 #, no-wrap
5254 msgid "B<0>"
5255 msgstr ""
5256
5257 #. type: Plain text
5258 #: build/C/man1/getent.1:350
5259 msgid "Command completed successfully."
5260 msgstr ""
5261
5262 #. type: TP
5263 #: build/C/man1/getent.1:350
5264 #, no-wrap
5265 msgid "B<1>"
5266 msgstr ""
5267
5268 #. type: Plain text
5269 #: build/C/man1/getent.1:355
5270 msgid "Missing arguments, or I<database> unknown."
5271 msgstr ""
5272
5273 #. type: TP
5274 #: build/C/man1/getent.1:355
5275 #, no-wrap
5276 msgid "B<2>"
5277 msgstr ""
5278
5279 #. type: Plain text
5280 #: build/C/man1/getent.1:361
5281 msgid "One or more supplied I<key> could not be found in the I<database>."
5282 msgstr ""
5283
5284 #. type: TP
5285 #: build/C/man1/getent.1:361
5286 #, no-wrap
5287 msgid "B<3>"
5288 msgstr ""
5289
5290 #. type: Plain text
5291 #: build/C/man1/getent.1:365
5292 msgid "Enumeration not supported on this I<database>."
5293 msgstr ""
5294
5295 #. type: Plain text
5296 #: build/C/man1/getent.1:368
5297 #, fuzzy
5298 #| msgid "I</etc/nsswitch.conf>"
5299 msgid "B<nsswitch.conf>(5)"
5300 msgstr "I</etc/nsswitch.conf>"
5301
5302 #. type: TH
5303 #: build/C/man3/gethostbyname.3:36
5304 #, no-wrap
5305 msgid "GETHOSTBYNAME"
5306 msgstr "GETHOSTBYNAME"
5307
5308 #. type: TH
5309 #: build/C/man3/gethostbyname.3:36
5310 #, no-wrap
5311 msgid "2010-10-04"
5312 msgstr "2010-10-04"
5313
5314 #. type: Plain text
5315 #: build/C/man3/gethostbyname.3:44
5316 msgid ""
5317 "gethostbyname, gethostbyaddr, sethostent, gethostent, endhostent, h_errno, "
5318 "herror, hstrerror, gethostbyaddr_r, gethostbyname2, gethostbyname2_r, "
5319 "gethostbyname_r, gethostent_r - get network host entry"
5320 msgstr ""
5321 "gethostbyname, gethostbyaddr, sethostent, gethostent, endhostent, h_errno, "
5322 "herror, hstrerror, gethostbyaddr_r, gethostbyname2, gethostbyname2_r, "
5323 "gethostbyname_r, gethostent_r - ネットワーク上のホストのエントリを取得する"
5324
5325 #. type: Plain text
5326 #: build/C/man3/gethostbyname.3:48
5327 #, no-wrap
5328 msgid ""
5329 "B<#include E<lt>netdb.hE<gt>>\n"
5330 "B<extern int h_errno;>\n"
5331 msgstr ""
5332 "B<#include E<lt>netdb.hE<gt>>\n"
5333 "B<extern int h_errno;>\n"
5334
5335 #. type: Plain text
5336 #: build/C/man3/gethostbyname.3:50
5337 #, no-wrap
5338 msgid "B<struct hostent *gethostbyname(const char *>I<name>B<);>\n"
5339 msgstr "B<struct hostent *gethostbyname(const char *>I<name>B<);>\n"
5340
5341 #. type: Plain text
5342 #: build/C/man3/gethostbyname.3:54
5343 #, no-wrap
5344 msgid ""
5345 "B<#include E<lt>sys/socket.hE<gt>>       /* for AF_INET */\n"
5346 "B<struct hostent *gethostbyaddr(const void *>I<addr>B<,>\n"
5347 "B<                              socklen_t >I<len>B<, int >I<type>B<);>\n"
5348 msgstr ""
5349 "B<#include E<lt>sys/socket.hE<gt>>       /* AF_INET を使う場合 */\n"
5350 "B<struct hostent *gethostbyaddr(const void *>I<addr>B<,>\n"
5351 "B<                              socklen_t >I<len>B<, int >I<type>B<);>\n"
5352
5353 #. type: Plain text
5354 #: build/C/man3/gethostbyname.3:56
5355 #, no-wrap
5356 msgid "B<void sethostent(int >I<stayopen>B<);>\n"
5357 msgstr "B<void sethostent(int >I<stayopen>B<);>\n"
5358
5359 #. type: Plain text
5360 #: build/C/man3/gethostbyname.3:58
5361 #, no-wrap
5362 msgid "B<void endhostent(void);>\n"
5363 msgstr "B<void endhostent(void);>\n"
5364
5365 #. type: Plain text
5366 #: build/C/man3/gethostbyname.3:60
5367 #, no-wrap
5368 msgid "B<void herror(const char *>I<s>B<);>\n"
5369 msgstr "B<void herror(const char *>I<s>B<);>\n"
5370
5371 #. type: Plain text
5372 #: build/C/man3/gethostbyname.3:62
5373 #, no-wrap
5374 msgid "B<const char *hstrerror(int >I<err>B<);>\n"
5375 msgstr "B<const char *hstrerror(int >I<err>B<);>\n"
5376
5377 #. type: Plain text
5378 #: build/C/man3/gethostbyname.3:64
5379 #, no-wrap
5380 msgid "/* System V/POSIX extension */\n"
5381 msgstr "/* System V/POSIX 拡張 */\n"
5382
5383 #. type: Plain text
5384 #: build/C/man3/gethostbyname.3:66
5385 #, no-wrap
5386 msgid "B<struct hostent *gethostent(void);>\n"
5387 msgstr "B<struct hostent *gethostent(void);>\n"
5388
5389 #. type: Plain text
5390 #: build/C/man3/gethostbyname.3:70
5391 #, no-wrap
5392 msgid "B<struct hostent *gethostbyname2(const char *>I<name>B<, int >I<af>B<);>\n"
5393 msgstr "B<struct hostent *gethostbyname2(const char *>I<name>B<, int >I<af>B<);>\n"
5394
5395 #. type: Plain text
5396 #: build/C/man3/gethostbyname.3:74
5397 #, no-wrap
5398 msgid ""
5399 "B<int gethostent_r(>\n"
5400 "B<        struct hostent *>I<ret>B<, char *>I<buf>B<, size_t >I<buflen>B<,>\n"
5401 "B<        struct hostent **>I<result>B<, int *>I<h_errnop>B<);>\n"
5402 msgstr ""
5403 "B<int gethostent_r(>\n"
5404 "B<        struct hostent *>I<ret>B<, char *>I<buf>B<, size_t >I<buflen>B<,>\n"
5405 "B<        struct hostent **>I<result>B<, int *>I<h_errnop>B<);>\n"
5406
5407 #. type: Plain text
5408 #: build/C/man3/gethostbyname.3:78
5409 #, no-wrap
5410 msgid ""
5411 "B<int gethostbyaddr_r(const void *>I<addr>B<, socklen_t >I<len>B<, int >I<type>B<,>\n"
5412 "B<        struct hostent *>I<ret>B<, char *>I<buf>B<, size_t >I<buflen>B<,>\n"
5413 "B<        struct hostent **>I<result>B<, int *>I<h_errnop>B<);>\n"
5414 msgstr ""
5415 "B<int gethostbyaddr_r(const void *>I<addr>B<, socklen_t >I<len>B<, int >I<type>B<,>\n"
5416 "B<        struct hostent *>I<ret>B<, char *>I<buf>B<, size_t >I<buflen>B<,>\n"
5417 "B<        struct hostent **>I<result>B<, int *>I<h_errnop>B<);>\n"
5418
5419 #. type: Plain text
5420 #: build/C/man3/gethostbyname.3:82
5421 #, no-wrap
5422 msgid ""
5423 "B<int gethostbyname_r(const char *>I<name>B<,>\n"
5424 "B<        struct hostent *>I<ret>B<, char *>I<buf>B<, size_t >I<buflen>B<,>\n"
5425 "B<        struct hostent **>I<result>B<, int *>I<h_errnop>B<);>\n"
5426 msgstr ""
5427 "B<int gethostbyname_r(const char *>I<name>B<,>\n"
5428 "B<        struct hostent *>I<ret>B<, char *>I<buf>B<, size_t >I<buflen>B<,>\n"
5429 "B<        struct hostent **>I<result>B<, int *>I<h_errnop>B<);>\n"
5430
5431 #. type: Plain text
5432 #: build/C/man3/gethostbyname.3:86
5433 #, no-wrap
5434 msgid ""
5435 "B<int gethostbyname2_r(const char *>I<name>B<, int >I<af,>\n"
5436 "B<        struct hostent *>I<ret>B<, char *>I<buf>B<, size_t >I<buflen>B<,>\n"
5437 "B<        struct hostent **>I<result>B<, int *>I<h_errnop>B<);>\n"
5438 msgstr ""
5439 "B<int gethostbyname2_r(const char *>I<name>B<, int >I<af,>\n"
5440 "B<        struct hostent *>I<ret>B<, char *>I<buf>B<, size_t >I<buflen>B<,>\n"
5441 "B<        struct hostent **>I<result>B<, int *>I<h_errnop>B<);>\n"
5442
5443 #. type: Plain text
5444 #: build/C/man3/gethostbyname.3:100
5445 msgid ""
5446 "B<gethostbyname2>(), B<gethostent_r>(), B<gethostbyaddr_r>(), "
5447 "B<gethostbyname_r>(), B<gethostbyname2_r>():"
5448 msgstr ""
5449 "B<gethostbyname2>(), B<gethostent_r>(), B<gethostbyaddr_r>(), "
5450 "B<gethostbyname_r>(), B<gethostbyname2_r>():"
5451
5452 #. type: Plain text
5453 #: build/C/man3/gethostbyname.3:102 build/C/man3/getnetent_r.3:58
5454 #: build/C/man3/getprotoent_r.3:55 build/C/man3/getservent_r.3:55
5455 msgid "_BSD_SOURCE || _SVID_SOURCE"
5456 msgstr "_BSD_SOURCE || _SVID_SOURCE"
5457
5458 #. type: Plain text
5459 #: build/C/man3/gethostbyname.3:106
5460 msgid "B<herror>(), B<hstrerror>():"
5461 msgstr "B<herror>(), B<hstrerror>():"
5462
5463 #. type: TP
5464 #: build/C/man3/gethostbyname.3:107
5465 #, no-wrap
5466 msgid "Since glibc 2.8:"
5467 msgstr "glibc 2.8 以降:"
5468
5469 #. type: Plain text
5470 #: build/C/man3/gethostbyname.3:110
5471 msgid "_BSD_SOURCE || _SVID_SOURCE || _GNU_SOURCE"
5472 msgstr "_BSD_SOURCE || _SVID_SOURCE || _GNU_SOURCE"
5473
5474 #. type: TP
5475 #: build/C/man3/gethostbyname.3:110
5476 #, no-wrap
5477 msgid "Before glibc 2.8:"
5478 msgstr "glibc 2.8 より前:"
5479
5480 #. type: Plain text
5481 #: build/C/man3/gethostbyname.3:113
5482 msgid "none"
5483 msgstr "なし"
5484
5485 #. type: Plain text
5486 #: build/C/man3/gethostbyname.3:127
5487 msgid ""
5488 "The B<gethostbyname*>()  and B<gethostbyaddr*>()  functions are obsolete.  "
5489 "Applications should use B<getaddrinfo>(3)  and B<getnameinfo>(3)  instead."
5490 msgstr ""
5491 "B<gethostbyname*>()  と B<gethostbyaddr*>()  は過去のものである。 アプリケー"
5492 "ションでは、代わりに B<getaddrinfo>(3)  と B<getnameinfo>(3)  を使用するこ"
5493 "と。"
5494
5495 #. type: Plain text
5496 #: build/C/man3/gethostbyname.3:168
5497 msgid ""
5498 "The B<gethostbyname>()  function returns a structure of type I<hostent> for "
5499 "the given host I<name>.  Here I<name> is either a hostname, or an IPv4 "
5500 "address in standard dot notation (as for B<inet_addr>(3)), or an IPv6 "
5501 "address in colon (and possibly dot) notation.  (See RFC\\ 1884 for the "
5502 "description of IPv6 addresses.)  If I<name> is an IPv4 or IPv6 address, no "
5503 "lookup is performed and B<gethostbyname>()  simply copies I<name> into the "
5504 "I<h_name> field and its I<struct in_addr> equivalent into the I<h_addr_list"
5505 "[0]> field of the returned I<hostent> structure.  If I<name> doesn't end in "
5506 "a dot and the environment variable B<HOSTALIASES> is set, the alias file "
5507 "pointed to by B<HOSTALIASES> will first be searched for I<name> (see "
5508 "B<hostname>(7)  for the file format).  The current domain and its parents "
5509 "are searched unless I<name> ends in a dot."
5510 msgstr ""
5511 "B<gethostbyname>()  関数は与えられたホスト名 I<name> に対応する構造体 "
5512 "I<hostent> を返す。 I<name> にはホスト名、ドット区切りの IPv4 アドレス "
5513 "(B<inet_addr>(3)  参照)、コロン区切りの IPv6 アドレス (おそらくドット区切りで"
5514 "も大丈夫)  のいずれかを指定する (IPv6 アドレスの記述方法については RFC\\ "
5515 "1884 を参考にしてほしい)。 I<name> が IPv4 か IPv6 のアドレスだった場合、 名"
5516 "前解決 (lookup) は行われない。その場合には、 B<gethostbyname>()  は I<name> "
5517 "をそのまま I<hostent> 構造体の I<h_name> フィールドにコピーし、 さらに "
5518 "I<name> を I<struct in_addr> 形式で表したデータを I<hostent> 構造体の "
5519 "I<h_addr_list[0]> フィールドに入れて、その I<hostent> 構造体を返す。 I<name> "
5520 "がドットで終了していて、かつ環境変数 B<HOSTALIASES> が設定されている場合、ま"
5521 "ず B<HOSTALIASES> で指定されているエイリアスファイルから I<name> のエントリが"
5522 "検索される (ファイルのフォーマットについては B<hostname>(7)  を参照のこと)。 "
5523 "I<name> がドットで終了していなければ、現在のドメインとその親ドメインが検索さ"
5524 "れる。"
5525
5526 #. type: Plain text
5527 #: build/C/man3/gethostbyname.3:184
5528 msgid ""
5529 "The B<gethostbyaddr>()  function returns a structure of type I<hostent> for "
5530 "the given host address I<addr> of length I<len> and address type I<type>.  "
5531 "Valid address types are B<AF_INET> and B<AF_INET6>.  The host address "
5532 "argument is a pointer to a struct of a type depending on the address type, "
5533 "for example a I<struct in_addr *> (probably obtained via a call to "
5534 "B<inet_addr>(3))  for address type B<AF_INET>."
5535 msgstr ""
5536 "B<gethostbyaddr>()  関数は与えられたホストアドレス I<addr> (長さ I<len>、 タ"
5537 "イプ I<type>) に対応する構造体 I<hostent> を返す。 用いることのできるタイプ"
5538 "は B<AF_INET> と B<AF_INET6> である。 ホストアドレス引き数はアドレスタイプに"
5539 "依存した 構造体へのポインタである。 例えば、アドレスタイプ B<AF_INET> に対し"
5540 "ては (B<inet_addr>(3)  の呼び出しで得られる)  I<struct in_addr *> である。"
5541
5542 #. type: Plain text
5543 #: build/C/man3/gethostbyname.3:191
5544 msgid ""
5545 "The B<sethostent>()  function specifies, if I<stayopen> is true (1), that a "
5546 "connected TCP socket should be used for the name server queries and that the "
5547 "connection should remain open during successive queries.  Otherwise, name "
5548 "server queries will use UDP datagrams."
5549 msgstr ""
5550 "B<sethostent>()  関数は、ネームサーバへの接続形態を指定する。 I<stayopen> が"
5551 "真 (1) ならば、ネームサーバへの問い合わせには、 接続された TCP ソケットを用"
5552 "い、連続した問い合わせの間に接続を維持する。 偽ならばネームサーバへの問い合わ"
5553 "せに UDP データグラムを用いる。"
5554
5555 #. type: Plain text
5556 #: build/C/man3/gethostbyname.3:196
5557 msgid ""
5558 "The B<endhostent>()  function ends the use of a TCP connection for name "
5559 "server queries."
5560 msgstr ""
5561 "B<endhostent>()  関数はネームサーバへの問い合わせに用いた TCP 接続の利用を終"
5562 "了する。"
5563
5564 #. type: Plain text
5565 #: build/C/man3/gethostbyname.3:201
5566 msgid ""
5567 "The (obsolete)  B<herror>()  function prints the error message associated "
5568 "with the current value of I<h_errno> on I<stderr>."
5569 msgstr ""
5570 "(廃止予定の)  B<herror>()  関数は現在の I<h_errno> に対応するエラーメッセージ"
5571 "を標準エラー I<stderr> に出力する。"
5572
5573 #. type: Plain text
5574 #: build/C/man3/gethostbyname.3:206
5575 msgid ""
5576 "The (obsolete)  B<hstrerror>()  function takes an error number (typically "
5577 "I<h_errno>) and returns the corresponding message string."
5578 msgstr ""
5579 "(廃止予定の)  B<hstrerror>()  関数はエラー番号 (通常は I<h_errno>) を引き数に"
5580 "取り、 対応するエラーメッセージ文字列を返す。"
5581
5582 #.  (See
5583 #.  .BR resolv+ (8)).
5584 #. type: Plain text
5585 #: build/C/man3/gethostbyname.3:223
5586 msgid ""
5587 "The domain name queries carried out by B<gethostbyname>()  and "
5588 "B<gethostbyaddr>()  use a combination of any or all of the name server "
5589 "B<named>(8), a broken out line from I</etc/hosts>, and the Network "
5590 "Information Service (NIS or YP), depending upon the contents of the I<order> "
5591 "line in I</etc/host.conf>.  The default action is to query B<named>(8), "
5592 "followed by I</etc/hosts>."
5593 msgstr ""
5594 "B<gethostbyname>()  と B<gethostbyaddr>()  によって実行されるドメイン名の問い"
5595 "合わせでは、ネームサーバ B<named>(8)、 I</etc/hosts> のデータ行、および "
5596 "Network Information Service (NIS または YP)  が組み合わせて使用される。何が使"
5597 "用されるかは、 I</etc/host.conf> の I<order> 行の内容により決まる。 デフォル"
5598 "トでは、まず B<named>(8)  に問い合わせを行い、次いで I</etc/hosts> を参照す"
5599 "る。"
5600
5601 #. type: Plain text
5602 #: build/C/man3/gethostbyname.3:225
5603 msgid "The I<hostent> structure is defined in I<E<lt>netdb.hE<gt>> as follows:"
5604 msgstr "I<hostent> 構造体は I<E<lt>netdb.hE<gt>> で以下のように定義されている:"
5605
5606 #. type: Plain text
5607 #: build/C/man3/gethostbyname.3:237
5608 #, no-wrap
5609 msgid ""
5610 "struct hostent {\n"
5611 "    char  *h_name;            /* official name of host */\n"
5612 "    char **h_aliases;         /* alias list */\n"
5613 "    int    h_addrtype;        /* host address type */\n"
5614 "    int    h_length;          /* length of address */\n"
5615 "    char **h_addr_list;       /* list of addresses */\n"
5616 "}\n"
5617 "#define h_addr h_addr_list[0] /* for backward compatibility */\n"
5618 msgstr ""
5619 "struct hostent {\n"
5620 "    char  *h_name;            /* official name of host */\n"
5621 "    char **h_aliases;         /* alias list */\n"
5622 "    int    h_addrtype;        /* host address type */\n"
5623 "    int    h_length;          /* length of address */\n"
5624 "    char **h_addr_list;       /* list of addresses */\n"
5625 "}\n"
5626 "#define h_addr h_addr_list[0] /* 過去との互換性のため */\n"
5627
5628 #. type: Plain text
5629 #: build/C/man3/gethostbyname.3:241
5630 msgid "The members of the I<hostent> structure are:"
5631 msgstr "I<hostent> 構造体のメンバは以下の通り。"
5632
5633 #. type: TP
5634 #: build/C/man3/gethostbyname.3:241 build/C/man3/getipnodebyname.3:208
5635 #, no-wrap
5636 msgid "I<h_name>"
5637 msgstr "I<h_name>"
5638
5639 #. type: Plain text
5640 #: build/C/man3/gethostbyname.3:244
5641 msgid "The official name of the host."
5642 msgstr "ホストの正式名 (official name)。"
5643
5644 #. type: TP
5645 #: build/C/man3/gethostbyname.3:244 build/C/man3/getipnodebyname.3:211
5646 #, no-wrap
5647 msgid "I<h_aliases>"
5648 msgstr "I<h_aliases>"
5649
5650 #. type: Plain text
5651 #: build/C/man3/gethostbyname.3:247
5652 msgid ""
5653 "An array of alternative names for the host, terminated by a NULL pointer."
5654 msgstr "ホストの別名の配列。配列は NULL ポインタで終端される。"
5655
5656 #. type: TP
5657 #: build/C/man3/gethostbyname.3:247 build/C/man3/getipnodebyname.3:215
5658 #, no-wrap
5659 msgid "I<h_addrtype>"
5660 msgstr "I<h_addrtype>"
5661
5662 #. type: Plain text
5663 #: build/C/man3/gethostbyname.3:254
5664 msgid "The type of address; always B<AF_INET> or B<AF_INET6> at present."
5665 msgstr "アドレスのタイプ。現在はすべて B<AF_INET> または B<AF_INET6> である。"
5666
5667 #. type: TP
5668 #: build/C/man3/gethostbyname.3:254 build/C/man3/getipnodebyname.3:237
5669 #, no-wrap
5670 msgid "I<h_length>"
5671 msgstr "I<h_length>"
5672
5673 #. type: Plain text
5674 #: build/C/man3/gethostbyname.3:257
5675 msgid "The length of the address in bytes."
5676 msgstr "バイト単位で表したアドレスの長さ。"
5677
5678 #. type: TP
5679 #: build/C/man3/gethostbyname.3:257 build/C/man3/getipnodebyname.3:251
5680 #, no-wrap
5681 msgid "I<h_addr_list>"
5682 msgstr "I<h_addr_list>"
5683
5684 #. type: Plain text
5685 #: build/C/man3/gethostbyname.3:261
5686 msgid ""
5687 "An array of pointers to network addresses for the host (in network byte "
5688 "order), terminated by a NULL pointer."
5689 msgstr ""
5690 "ホストのネットワークアドレスへのポインタの配列。 配列は NULL ポインタで終端さ"
5691 "れる。 ネットワークアドレスはネットワークバイトオーダ形式である。"
5692
5693 #. type: TP
5694 #: build/C/man3/gethostbyname.3:261
5695 #, no-wrap
5696 msgid "I<h_addr>"
5697 msgstr "I<h_addr>"
5698
5699 #. type: Plain text
5700 #: build/C/man3/gethostbyname.3:264
5701 msgid "The first address in I<h_addr_list> for backward compatibility."
5702 msgstr ""
5703 "I<h_addr_list> の最初のアドレス。過去との互換性を保つためのものである。"
5704
5705 #. type: Plain text
5706 #: build/C/man3/gethostbyname.3:276
5707 msgid ""
5708 "The B<gethostbyname>()  and B<gethostbyaddr>()  functions return the "
5709 "I<hostent> structure or a NULL pointer if an error occurs.  On error, the "
5710 "I<h_errno> variable holds an error number.  When non-NULL, the return value "
5711 "may point at static data, see the notes below."
5712 msgstr ""
5713 "B<gethostbyname>()  および B<gethostbyaddr>()  関数は I<hostent> 構造体を返"
5714 "す。エラーが起こったら NULL ポインタを返す。エラーの際には I<h_errno> 変数が"
5715 "エラーの番号を保持する。 返り値が NULL でない場合、静的データをポインタで指し"
5716 "ていることもある。 以下の「注意」を参照すること。"
5717
5718 #. type: Plain text
5719 #: build/C/man3/gethostbyname.3:278
5720 msgid "The variable I<h_errno> can have the following values:"
5721 msgstr "I<h_errno> 変数は以下の値を取りうる。"
5722
5723 #. type: TP
5724 #: build/C/man3/gethostbyname.3:278 build/C/man3/getipnodebyname.3:188
5725 #, no-wrap
5726 msgid "B<HOST_NOT_FOUND>"
5727 msgstr "B<HOST_NOT_FOUND>"
5728
5729 #. type: Plain text
5730 #: build/C/man3/gethostbyname.3:281
5731 msgid "The specified host is unknown."
5732 msgstr "指定したホストが見つからない。"
5733
5734 #. type: TP
5735 #: build/C/man3/gethostbyname.3:281
5736 #, no-wrap
5737 msgid "B<NO_ADDRESS> or B<NO_DATA>"
5738 msgstr "B<NO_ADDRESS  または  NO_DATA>"
5739
5740 #. type: Plain text
5741 #: build/C/man3/gethostbyname.3:284
5742 msgid "The requested name is valid but does not have an IP address."
5743 msgstr "指定した名前は有効だが IP アドレスを持っていない。"
5744
5745 #. type: TP
5746 #: build/C/man3/gethostbyname.3:284 build/C/man3/getipnodebyname.3:197
5747 #, no-wrap
5748 msgid "B<NO_RECOVERY>"
5749 msgstr "B<NO_RECOVERY>"
5750
5751 #. type: Plain text
5752 #: build/C/man3/gethostbyname.3:287
5753 msgid "A nonrecoverable name server error occurred."
5754 msgstr "ネームサーバの復旧不能なエラーが起こった。"
5755
5756 #. type: TP
5757 #: build/C/man3/gethostbyname.3:287 build/C/man3/getipnodebyname.3:200
5758 #, no-wrap
5759 msgid "B<TRY_AGAIN>"
5760 msgstr "B<TRY_AGAIN>"
5761
5762 #. type: Plain text
5763 #: build/C/man3/gethostbyname.3:291
5764 msgid ""
5765 "A temporary error occurred on an authoritative name server.  Try again later."
5766 msgstr ""
5767 "authoritative なネームサーバで一時的なエラーが起こった。 時間をおいてもう一度"
5768 "試すこと。"
5769
5770 #. type: TP
5771 #: build/C/man3/gethostbyname.3:292 build/C/man5/host.conf.5:181
5772 #, no-wrap
5773 msgid "I</etc/host.conf>"
5774 msgstr "I</etc/host.conf>"
5775
5776 #. type: Plain text
5777 #: build/C/man3/gethostbyname.3:295
5778 msgid "resolver configuration file"
5779 msgstr "名前解決の設定ファイル"
5780
5781 #. type: Plain text
5782 #: build/C/man3/gethostbyname.3:295 build/C/man5/host.conf.5:187
5783 #: build/C/man5/hosts.5:88
5784 #, no-wrap
5785 msgid "I</etc/hosts>"
5786 msgstr "I</etc/hosts>"
5787
5788 #. type: Plain text
5789 #: build/C/man3/gethostbyname.3:298
5790 msgid "host database file"
5791 msgstr "ホストのデータベースファイル"
5792
5793 #. type: Plain text
5794 #: build/C/man3/gethostbyname.3:298 build/C/man5/nsswitch.conf.5:251
5795 #: build/C/man3/setnetgrent.3:87
5796 #, no-wrap
5797 msgid "I</etc/nsswitch.conf>"
5798 msgstr "I</etc/nsswitch.conf>"
5799
5800 #. type: Plain text
5801 #: build/C/man3/gethostbyname.3:301
5802 msgid "name service switch configuration"
5803 msgstr "ネームサービス切替設定"
5804
5805 #. type: Plain text
5806 #: build/C/man3/gethostbyname.3:325
5807 msgid ""
5808 "POSIX.1-2001 specifies B<gethostbyname>(), B<gethostbyaddr>(), B<sethostent>"
5809 "(), B<endhostent>(), B<gethostent>(), and I<h_errno>; B<gethostbyname>(), "
5810 "B<gethostbyaddr>(), and I<h_errno> are marked obsolescent in that standard.  "
5811 "POSIX.1-2008 removes the specifications of B<gethostbyname>(), "
5812 "B<gethostbyaddr>(), and I<h_errno>, recommending the use of B<getaddrinfo>"
5813 "(3)  and B<getnameinfo>(3)  instead."
5814 msgstr ""
5815 "POSIX.1-2001 では、 B<gethostbyname>(), B<gethostbyaddr>(), B<sethostent>(), "
5816 "B<endhostent>(), B<gethostent>(), I<h_errno> が規定されており、 "
5817 "B<gethostbyaddr>()  と B<gethostbyname>()  は廃止予定であるとされている。 "
5818 "POSIX.1-2008 では B<gethostbyname>(), B<gethostbyaddr>(), I<h_errno> の仕様が"
5819 "削除されている。 代わりに、 B<getaddrinfo>(3)  と B<getnameinfo>(3)  の使用が"
5820 "推奨されている。"
5821
5822 #. type: Plain text
5823 #: build/C/man3/gethostbyname.3:335
5824 msgid ""
5825 "The functions B<gethostbyname>()  and B<gethostbyaddr>()  may return "
5826 "pointers to static data, which may be overwritten by later calls.  Copying "
5827 "the I<struct hostent> does not suffice, since it contains pointers; a deep "
5828 "copy is required."
5829 msgstr ""
5830 "B<gethostbyname>()  および B<gethostbyaddr>()  関数は静的データへのポインタを"
5831 "返す。 このポインタは、その後の呼び出しで上書きされるかもしれない。 "
5832 "I<hostent> 構造体はポインタを含んでいるので、構造体のコピーだけでは不十分であ"
5833 "る; より深いコピーが必要である。"
5834
5835 #. type: Plain text
5836 #: build/C/man3/gethostbyname.3:359
5837 msgid ""
5838 "In the original BSD implementation the I<len> argument of B<gethostbyname>"
5839 "()  was an I<int>.  The SUSv2 standard is buggy and declares the I<len> "
5840 "argument of B<gethostbyaddr>()  to be of type I<size_t>.  (That is wrong, "
5841 "because it has to be I<int>, and I<size_t> is not.  POSIX.1-2001 makes it "
5842 "I<socklen_t>, which is OK.)  See also B<accept>(2)."
5843 msgstr ""
5844 "オリジナルの BSD の実装では、 B<gethostbyname>()  の I<len> 引き数は I<int> "
5845 "であった。 SUSv2 標準はバグが多く、 B<gethostbyaddr>()  の I<len> パラメータ"
5846 "を I<size_t> 型として宣言している。 (これは誤りで、 I<size_t> 型ではなく "
5847 "I<int> 型でなければならない。 POSIX.1-2001 ではこれを I<socklen_t> としている"
5848 "が、これは OK。)  B<accept>(2)  も参照。"
5849
5850 #. type: Plain text
5851 #: build/C/man3/gethostbyname.3:365
5852 msgid ""
5853 "The BSD prototype for B<gethostbyaddr>()  uses I<const char *> for the first "
5854 "argument."
5855 msgstr ""
5856 "B<gethostbyaddr>()  の BSD のプロトタイプは、最初の引き数として I<const char "
5857 "*> を使う。"
5858
5859 #. type: SS
5860 #: build/C/man3/gethostbyname.3:365
5861 #, no-wrap
5862 msgid "System V/POSIX Extension"
5863 msgstr "System V/POSIX 拡張"
5864
5865 #.  e.g., Linux, FreeBSD, UnixWare, HP-UX
5866 #.  e.g., FreeBSD, AIX
5867 #. type: Plain text
5868 #: build/C/man3/gethostbyname.3:382
5869 msgid ""
5870 "POSIX requires the B<gethostent>()  call, that should return the next entry "
5871 "in the host data base.  When using DNS/BIND this does not make much sense, "
5872 "but it may be reasonable if the host data base is a file that can be read "
5873 "line by line.  On many systems a routine of this name reads from the file I</"
5874 "etc/hosts>.  It may be available only when the library was built without DNS "
5875 "support.  The glibc version will ignore ipv6 entries.  This function is not "
5876 "reentrant, and glibc adds a reentrant version B<gethostent_r>()."
5877 msgstr ""
5878 "POSIX では、 B<gethostent>()  が必須とされている。 この関数はホストデータベー"
5879 "スの次のエントリを返す。 DNS/BIND を使う場合はあまり意味を持たないが、 ホスト"
5880 "データベースが 1 行ずつ読み込まれるファイルである場合は意味がある。 多くのシ"
5881 "ステムでは、この名前のルーチンはファイル I</etc/hosts> を読み込む。 DNS サ"
5882 "ポートなしでライブラリがビルドされた場合にのみ利用可能である。 glibc 版は "
5883 "ipv6 エントリを無視する。 この関数はリエントラント (reentrant) ではなく、 "
5884 "glibc にはリエントラント版の B<gethostent_r>()  が追加された。"
5885
5886 #. type: SS
5887 #: build/C/man3/gethostbyname.3:382
5888 #, no-wrap
5889 msgid "GNU Extensions"
5890 msgstr "GNU 拡張"
5891
5892 #. type: Plain text
5893 #: build/C/man3/gethostbyname.3:388
5894 msgid ""
5895 "Glibc2 also has a B<gethostbyname2>()  that works like B<gethostbyname>(), "
5896 "but permits to specify the address family to which the address must belong."
5897 msgstr ""
5898 "glibc2 には B<gethostbyname2>()  もあり、 B<gethostbyname>()  と同じように動"
5899 "作するが、 こちらはアドレスが属するアドレスファミリーを指定することができる。"
5900
5901 #. type: Plain text
5902 #: build/C/man3/gethostbyname.3:422
5903 msgid ""
5904 "Glibc2 also has reentrant versions B<gethostent_r>(), B<gethostbyaddr_r>(), "
5905 "B<gethostbyname_r>()  and B<gethostbyname2_r>().  The caller supplies a "
5906 "I<hostent> structure I<ret> which will be filled in on success, and a "
5907 "temporary work buffer I<buf> of size I<buflen>.  After the call, I<result> "
5908 "will point to the result on success.  In case of an error or if no entry is "
5909 "found I<result> will be NULL.  The functions return 0 on success and a "
5910 "nonzero error number on failure.  In addition to the errors returned by the "
5911 "nonreentrant versions of these functions, if I<buf> is too small, the "
5912 "functions will return B<ERANGE>, and the call should be retried with a "
5913 "larger buffer.  The global variable I<h_errno> is not modified, but the "
5914 "address of a variable in which to store error numbers is passed in "
5915 "I<h_errnop>."
5916 msgstr ""
5917 "glibc2 にはリエントラントな B<gethostent_r>(), B<gethostbyaddr_r>(), "
5918 "B<gethostbyname_r>()  と B<gethostbyname2_r>()  もある。 呼び出し側は、成功時"
5919 "に結果が格納される I<hostent> 構造体 I<ret> と、大きさ I<buflen> の一時的な作"
5920 "業バッファ I<buf> を提供する。 コール終了後、成功した場合 I<result> は結果を"
5921 "指している。 エラーの場合、またはエントリが見つからなかった場合、 I<result> "
5922 "は NULL になる。 これらの関数は、成功した場合 0 を返し、失敗の場合は 0 以外の"
5923 "エラー番号を返す。 これらの関数のリエントラントでないバージョンが返すエラーに"
5924 "加えて、 これらの関数は、 I<buf> が小さすぎた場合に B<ERANGE> を返す。この場"
5925 "合はもっと大きなバッファを用意して 関数呼び出しを再度行うべきである。 大域変"
5926 "数 I<h_errno> は変更されないが、エラー番号を格納する変数のアドレスが "
5927 "I<h_errnop> に渡される。"
5928
5929 #.  http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=482973
5930 #. type: Plain text
5931 #: build/C/man3/gethostbyname.3:427
5932 msgid ""
5933 "B<gethostbyname>()  does not recognize components of a dotted IPv4 address "
5934 "string that are expressed in hexadecimal."
5935 msgstr ""
5936 "B<gethostbyname>()  は、16進数表現のドット区切りの IPv4 アドレス文字列の要素"
5937 "を認識しない。"
5938
5939 #.  .BR getipnodebyaddr (3),
5940 #.  .BR getipnodebyname (3),
5941 #.  .BR resolv+ (8)
5942 #. type: Plain text
5943 #: build/C/man3/gethostbyname.3:441
5944 msgid ""
5945 "B<getaddrinfo>(3), B<getnameinfo>(3), B<inet>(3), B<inet_ntop>(3), "
5946 "B<inet_pton>(3), B<resolver>(3), B<hosts>(5), B<nsswitch.conf>(5), "
5947 "B<hostname>(7), B<named>(8)"
5948 msgstr ""
5949 "B<getaddrinfo>(3), B<getnameinfo>(3), B<inet>(3), B<inet_ntop>(3), "
5950 "B<inet_pton>(3), B<resolver>(3), B<hosts>(5), B<nsswitch.conf>(5), "
5951 "B<hostname>(7), B<named>(8)"
5952
5953 #. type: TH
5954 #: build/C/man3/getipnodebyname.3:24
5955 #, no-wrap
5956 msgid "GETIPNODEBYNAME"
5957 msgstr "GETIPNODEBYNAME"
5958
5959 #. type: TH
5960 #: build/C/man3/getipnodebyname.3:24
5961 #, no-wrap
5962 msgid "2010-09-04"
5963 msgstr "2010-09-04"
5964
5965 #. type: Plain text
5966 #: build/C/man3/getipnodebyname.3:28
5967 msgid ""
5968 "getipnodebyname, getipnodebyaddr, freehostent - get network hostnames and "
5969 "addresses"
5970 msgstr ""
5971 "getipnodebyname, getipnodebyaddr, freehostent - ネットワークホストの名前とア"
5972 "ドレスの取得"
5973
5974 #. type: Plain text
5975 #: build/C/man3/getipnodebyname.3:36
5976 #, no-wrap
5977 msgid ""
5978 "B<struct hostent *getipnodebyname(const char *>I<name>B<, int >I<af>B<,>\n"
5979 "B<                                int >I<flags>B<, int *>I<error_num>B<);>\n"
5980 msgstr ""
5981 "B<struct hostent *getipnodebyname(const char *>I<name>B<, int >I<af>B<,>\n"
5982 "B<                                int >I<flags>B<, int *>I<error_num>B<);>\n"
5983
5984 #. type: Plain text
5985 #: build/C/man3/getipnodebyname.3:39
5986 #, no-wrap
5987 msgid ""
5988 "B<struct hostent *getipnodebyaddr(const void *>I<addr>B<, size_t >I<len>B<,>\n"
5989 "B<                                int >I<af>B<, int *>I<error_num>B<);>\n"
5990 msgstr ""
5991 "B<struct hostent *getipnodebyaddr(const void *>I<addr>B<, size_t >I<len>B<,>\n"
5992 "B<                                int >I<af>B<, int *>I<error_num>B<);>\n"
5993
5994 #. type: Plain text
5995 #: build/C/man3/getipnodebyname.3:41
5996 #, no-wrap
5997 msgid "B<void freehostent(struct hostent *>I<ip>B<);>\n"
5998 msgstr "B<void freehostent(struct hostent *>I<ip>B<);>\n"
5999
6000 #. type: Plain text
6001 #: build/C/man3/getipnodebyname.3:49
6002 msgid ""
6003 "These functions are deprecated (and unavailable in glibc).  Use "
6004 "B<getaddrinfo>(3)  and B<getnameinfo>(3)  instead."
6005 msgstr ""
6006 "これらの関数は非推奨である (glibc では利用できない)。 代わりに B<getaddrinfo>"
6007 "(3)  と B<getnameinfo>(3)  を使うこと。"
6008
6009 #. type: Plain text
6010 #: build/C/man3/getipnodebyname.3:57
6011 msgid ""
6012 "The B<getipnodebyname>()  and B<getipnodebyaddr>()  functions return the "
6013 "names and addresses of a network host.  These functions return a pointer to "
6014 "the following structure:"
6015 msgstr ""
6016 "B<getipnodebyname>()  と B<getipnodebyaddr>()  は、ネットワークホストの名前と"
6017 "アドレスを返す。 これらの関数は、以下の構造体へのポインタを返す。"
6018
6019 #. type: Plain text
6020 #: build/C/man3/getipnodebyname.3:67
6021 #, no-wrap
6022 msgid ""
6023 "struct hostent {\n"
6024 "    char  *h_name;\n"
6025 "    char **h_aliases;\n"
6026 "    int    h_addrtype;\n"
6027 "    int    h_length;\n"
6028 "    char **h_addr_list;\n"
6029 "};\n"
6030 msgstr ""
6031 "struct hostent {\n"
6032 "    char  *h_name;\n"
6033 "    char **h_aliases;\n"
6034 "    int    h_addrtype;\n"
6035 "    int    h_length;\n"
6036 "    char **h_addr_list;\n"
6037 "};\n"
6038
6039 #. type: Plain text
6040 #: build/C/man3/getipnodebyname.3:80
6041 msgid ""
6042 "These functions replace the B<gethostbyname>(3)  and B<gethostbyaddr>(3)  "
6043 "functions, which could only access the IPv4 network address family.  The "
6044 "B<getipnodebyname>()  and B<getipnodebyaddr>()  functions can access "
6045 "multiple network address families."
6046 msgstr ""
6047 "これらの関数は、 IPv4 ネットワークアドレスファミリにしかアクセスできない "
6048 "B<gethostbyname>(3)  や B<gethostbyaddr>(3)  を置き換えるものである。 "
6049 "B<getipnodebyname>()  関数と B<getipnodebyaddr>()  関数は複数のネットワークア"
6050 "ドレスファミリーにアクセス可能になっている。"
6051
6052 #. type: Plain text
6053 #: build/C/man3/getipnodebyname.3:91
6054 msgid ""
6055 "Unlike the B<gethostby> functions, these functions return pointers to "
6056 "dynamically allocated memory.  The B<freehostent>()  function is used to "
6057 "release the dynamically allocated memory after the caller no longer needs "
6058 "the I<hostent> structure."
6059 msgstr ""
6060 "これらの関数は、 B<gethostby> の関数群と異なり、動的に割り当てられたメモリへ"
6061 "のポインタを返す。 呼び出し元がこれらの I<hostent> 構造体を必要としなくなった"
6062 "後は、 B<freehostent>()  関数を用いれば動的な割り当てメモリを解放できる。"
6063
6064 #. type: SS
6065 #: build/C/man3/getipnodebyname.3:91
6066 #, no-wrap
6067 msgid "getipnodebyname() arguments"
6068 msgstr "getipnodebyname() の引き数"
6069
6070 #. type: Plain text
6071 #: build/C/man3/getipnodebyname.3:102
6072 msgid ""
6073 "The B<getipnodebyname>()  function looks up network addresses for the host "
6074 "specified by the I<name> argument.  The I<af> argument specifies one of the "
6075 "following values:"
6076 msgstr ""
6077 "B<getipnodebyname>()  関数は I<name> 引き数で指定されたホストのネットワークア"
6078 "ドレスを引く。 I<af> 引き数には以下の値のいずれかを指定する。"
6079
6080 #. type: TP
6081 #: build/C/man3/getipnodebyname.3:102 build/C/man3/getipnodebyname.3:164
6082 #: build/C/man3/inet_ntop.3:55 build/C/man3/inet_pton.3:51
6083 #, no-wrap
6084 msgid "B<AF_INET>"
6085 msgstr "B<AF_INET>"
6086
6087 #. type: Plain text
6088 #: build/C/man3/getipnodebyname.3:108
6089 msgid ""
6090 "The I<name> argument points to a dotted-quad IPv4 address or a name of an "
6091 "IPv4 network host."
6092 msgstr ""
6093 "I<name> 引き数は、ドットで 4 つに区切られた IPv4 アドレスか、 IPv4 ネットワー"
6094 "クホストの名前へのポインタである。"
6095
6096 #. type: TP
6097 #: build/C/man3/getipnodebyname.3:108 build/C/man3/getipnodebyname.3:174
6098 #: build/C/man3/inet_ntop.3:68 build/C/man3/inet_pton.3:65
6099 #, no-wrap
6100 msgid "B<AF_INET6>"
6101 msgstr "B<AF_INET6>"
6102
6103 #. type: Plain text
6104 #: build/C/man3/getipnodebyname.3:114
6105 msgid ""
6106 "The I<name> argument points to a hexadecimal IPv6 address or a name of an "
6107 "IPv6 network host."
6108 msgstr ""
6109 "I<name> 引き数は、16 進の IPv6 アドレスか、 IPv6 ネットワークホストの名前への"
6110 "ポインタである。"
6111
6112 #. type: Plain text
6113 #: build/C/man3/getipnodebyname.3:123
6114 msgid ""
6115 "The I<flags> argument specifies additional options.  More than one option "
6116 "can be specified by bitwise OR-ing them together.  I<flags> should be set to "
6117 "0 if no options are desired."
6118 msgstr ""
6119 "I<flags> パラメータには追加のオプションを指定する。 複数のフラグを指定するに"
6120 "は、それらのビット単位の OR をとって指定すればよい。 オプションをひとつも指定"
6121 "したくないときには、 I<flags> に 0 を設定する必要がある。"
6122
6123 #. type: TP
6124 #: build/C/man3/getipnodebyname.3:123
6125 #, no-wrap
6126 msgid "B<AI_V4MAPPED>"
6127 msgstr "B<AI_V4MAPPED>"
6128
6129 #. type: Plain text
6130 #: build/C/man3/getipnodebyname.3:130
6131 msgid ""
6132 "This flag is used with B<AF_INET6> to request a query for IPv4 addresses "
6133 "instead of IPv6 addresses; the IPv4 addresses will be mapped to IPv6 "
6134 "addresses."
6135 msgstr ""
6136 "このフラグは B<AF_INET6> と共に用いられ、IPv6 アドレスの代わりに IPv4 アドレ"
6137 "スを問い合わせる。 問い合わせる IPv4 アドレスは IPv6 アドレスにマップされる。"
6138
6139 #. type: TP
6140 #: build/C/man3/getipnodebyname.3:130
6141 #, no-wrap
6142 msgid "B<AI_ALL>"
6143 msgstr "B<AI_ALL>"
6144
6145 #. type: Plain text
6146 #: build/C/man3/getipnodebyname.3:136
6147 msgid ""
6148 "This flag is used with B<AI_V4MAPPED> to request a query for both IPv4 and "
6149 "IPv6 addresses.  Any IPv4 address found will be mapped to an IPv6 address."
6150 msgstr ""
6151 "このフラグは B<AI_V4MAPPED> と共に用いられ、IPv4 アドレスと IPv6 アドレスの両"
6152 "方を問い合わせる。 見つかった IPv4 アドレスは、すべて IPv6 アドレスにマップさ"
6153 "れる。"
6154
6155 #. type: TP
6156 #: build/C/man3/getipnodebyname.3:136
6157 #, no-wrap
6158 msgid "B<AI_ADDRCONFIG>"
6159 msgstr "B<AI_ADDRCONFIG>"
6160
6161 #. type: Plain text
6162 #: build/C/man3/getipnodebyname.3:148
6163 msgid ""
6164 "This flag is used with B<AF_INET6> to further request that queries for IPv6 "
6165 "addresses should not be made unless the system has at least one IPv6 address "
6166 "assigned to a network interface, and that queries for IPv4 addresses should "
6167 "not be made unless the system has at least one IPv4 address assigned to a "
6168 "network interface.  This flag may be used by itself or with the "
6169 "B<AI_V4MAPPED> flag."
6170 msgstr ""
6171 "このフラグは B<AF_INET6> と共に用いられ、 IPv6 が割り当てられたネットワークイ"
6172 "ンターフェースが システムにひとつもなければ IPv6 アドレスの問い合わせを行わ"
6173 "ず、 IPv4 が割り当てられたネットワークインターフェースが システムにひとつもな"
6174 "ければ IPv4 アドレスの問い合わせを行わないように要求する。 このフラグは単独で"
6175 "も、あるいは B<AI_V4MAPPED> フラグと共にでも用いることができる。"
6176
6177 #. type: TP
6178 #: build/C/man3/getipnodebyname.3:148
6179 #, no-wrap
6180 msgid "B<AI_DEFAULT>"
6181 msgstr "B<AI_DEFAULT>"
6182
6183 #. type: Plain text
6184 #: build/C/man3/getipnodebyname.3:152
6185 msgid "This flag is equivalent to B<(AI_ADDRCONFIG | AI_V4MAPPED)>."
6186 msgstr "このフラグは B<(AI_ADDRCONFIG>|B<AI_V4MAPPED)> と等価である。"
6187
6188 #. type: SS
6189 #: build/C/man3/getipnodebyname.3:152
6190 #, no-wrap
6191 msgid "getipnodebyaddr() arguments"
6192 msgstr "getipnodebyaddr() の引き数"
6193
6194 #. type: Plain text
6195 #: build/C/man3/getipnodebyname.3:164
6196 msgid ""
6197 "The B<getipnodebyaddr>()  function looks up the name of the host whose "
6198 "network address is specified by the I<addr> argument.  The I<af> argument "
6199 "specifies one of the following values:"
6200 msgstr ""
6201 "B<getipnodebyaddr>()  関数は、ネットワークアドレスが I<addr> 引き数で指定され"
6202 "たホストの名前を引く。 I<af> 引き数には以下の値のいずれかを指定する。"
6203
6204 #. type: Plain text
6205 #: build/C/man3/getipnodebyname.3:174
6206 msgid ""
6207 "The I<addr> argument points to a I<struct in_addr> and I<len> must be set to "
6208 "I<sizeof(struct in_addr)>."
6209 msgstr ""
6210 "I<addr> 引き数は I<struct in_addr> へのポインターであり、 I<len> 引き数は "
6211 "I<sizeof(struct in_addr)> に設定しなければならない。"
6212
6213 #. type: Plain text
6214 #: build/C/man3/getipnodebyname.3:184
6215 msgid ""
6216 "The I<addr> argument points to a I<struct in6_addr> and I<len> must be set "
6217 "to I<sizeof(struct in6_addr)>."
6218 msgstr ""
6219 "I<addr> 引き数は I<struct in6_addr> へのポインターであり、 I<len> 引き数は "
6220 "I<sizeof(struct in6_addr)> に設定しなければならない。"
6221
6222 #. type: Plain text
6223 #: build/C/man3/getipnodebyname.3:188
6224 msgid ""
6225 "A NULL pointer is returned if an error occurred, and I<error_num> will "
6226 "contain an error code from the following list:"
6227 msgstr ""
6228 "エラーが起こるとヌル・ポインターが返され、 I<error_num> に以下にリストされた"
6229 "エラーコードのいずれかが設定される。"
6230
6231 #. type: Plain text
6232 #: build/C/man3/getipnodebyname.3:191
6233 msgid "The hostname or network address was not found."
6234 msgstr "ホスト名またはネットワークアドレスが見つからなかった。"
6235
6236 #. type: TP
6237 #: build/C/man3/getipnodebyname.3:191
6238 #, no-wrap
6239 msgid "B<NO_ADDRESS>"
6240 msgstr "B<NO_ADDRESS>"
6241
6242 #. type: Plain text
6243 #: build/C/man3/getipnodebyname.3:197
6244 msgid ""
6245 "The domain name server recognized the network address or name, but no answer "
6246 "was returned.  This can happen if the network host has only IPv4 addresses "
6247 "and a request has been made for IPv6 information only, or vice versa."
6248 msgstr ""
6249 "ドメインネームサーバーは そのネットワークアドレスまたはネットワーク名を認識し"
6250 "たが、 返事が返ってこなかった。原因としては、 例えば IPv4 アドレスしか持たな"
6251 "いネットワークホストに対して IPv6 の情報の問い合わせが行われた (およびその"
6252 "逆) などが考えられる。"
6253
6254 #. type: Plain text
6255 #: build/C/man3/getipnodebyname.3:200
6256 msgid "The domain name server returned a permanent failure response."
6257 msgstr ""
6258 "ドメインネームサーバーから恒久的な失敗 (permanent failure)  を意味する返事が"
6259 "返された。"
6260
6261 #. type: Plain text
6262 #: build/C/man3/getipnodebyname.3:204
6263 msgid ""
6264 "The domain name server returned a temporary failure response.  You might "
6265 "have better luck next time."
6266 msgstr ""
6267 "ネームサーバーから一時的な失敗 (temporary failure)  を意味する返事が返され"
6268 "た。次にはもうちょっと運が必要かも。"
6269
6270 #. type: Plain text
6271 #: build/C/man3/getipnodebyname.3:208
6272 msgid ""
6273 "A successful query returns a pointer to a I<hostent> structure that contains "
6274 "the following fields:"
6275 msgstr ""
6276 "問い合わせに成功すると、 I<hostent> 構造体へのポインタが返される。 この構造体"
6277 "は以下のフィールドからなる。"
6278
6279 #. type: Plain text
6280 #: build/C/man3/getipnodebyname.3:211
6281 msgid "This is the official name of this network host."
6282 msgstr "これはこのネットワークホストのオフィシャルな名前である。"
6283
6284 #. type: Plain text
6285 #: build/C/man3/getipnodebyname.3:215
6286 msgid ""
6287 "This is an array of pointers to unofficial aliases for the same host.  The "
6288 "array is terminated by a NULL pointer."
6289 msgstr ""
6290 "これは、そのホストのオフィシャルでない別名へのポインターの配列である。 配列は"
6291 "ヌル・ポインターで終端する。"
6292
6293 #. type: Plain text
6294 #: build/C/man3/getipnodebyname.3:237
6295 msgid ""
6296 "This is a copy of the I<af> argument to B<getipnodebyname>()  or "
6297 "B<getipnodebyaddr>().  I<h_addrtype> will always be B<AF_INET> if the I<af> "
6298 "argument was B<AF_INET>.  I<h_addrtype> will always be B<AF_INET6> if the "
6299 "I<af> argument was B<AF_INET6>."
6300 msgstr ""
6301 "これは B<getipnodebyname>()  または B<getipnodebyaddr>()  に与えられた I<af> "
6302 "引き数のコピーである。 I<af> 引き数が B<AF_INET> なら I<h_addrtype> は常に "
6303 "B<AF_INET> になり、 I<af> 引き数が B<AF_INET6> なら I<h_addrtype> も常に "
6304 "B<AF_INET6> になる。"
6305
6306 #. type: Plain text
6307 #: build/C/man3/getipnodebyname.3:251
6308 msgid ""
6309 "This field will be set to I<sizeof(struct in_addr)> if I<h_addrtype> is "
6310 "B<AF_INET>, and to I<sizeof(struct in6_addr)> if I<h_addrtype> is "
6311 "B<AF_INET6>."
6312 msgstr ""
6313 "このフィールドは、 I<h_addrtype> が B<AF_INET> なら I<sizeof(struct in_addr)"
6314 "> に、 I<h_addrtype> が B<AF_INET6> なら I<sizeof(struct in6_addr)> に設定さ"
6315 "れる。"
6316
6317 #. type: Plain text
6318 #: build/C/man3/getipnodebyname.3:256
6319 msgid ""
6320 "This is an array of one or more pointers to network address structures for "
6321 "the network host.  The array is terminated by a NULL pointer."
6322 msgstr ""
6323 "これはひとつ以上のポインターの配列で、 それぞれのポインターは、 そのネット"
6324 "ワークホストに対応するネットワークアドレス構造体を指す。 この配列はヌル・ポイ"
6325 "ンターで終端する。"
6326
6327 #.  Not in POSIX.1-2001.
6328 #. type: Plain text
6329 #: build/C/man3/getipnodebyname.3:259
6330 msgid "RFC\\ 2553."
6331 msgstr "RFC\\ 2553."
6332
6333 #. type: Plain text
6334 #: build/C/man3/getipnodebyname.3:264
6335 msgid ""
6336 "These functions were present in glibc 2.1.91-95, but were removed again.  "
6337 "Several UNIX-like systems support them, but all call them deprecated."
6338 msgstr ""
6339 "これらの関数は glibc 2.1.91-95 に存在したが、再び削除された。 いくつかの "
6340 "UNIX 風システムはこれらの関数に対応しているが、 これらの関数は全て推奨されな"
6341 "い。"
6342
6343 #. type: Plain text
6344 #: build/C/man3/getipnodebyname.3:269
6345 msgid "B<getaddrinfo>(3), B<getnameinfo>(3), B<inet_ntop>(3), B<inet_pton>(3)"
6346 msgstr "B<getaddrinfo>(3), B<getnameinfo>(3), B<inet_ntop>(3), B<inet_pton>(3)"
6347
6348 #. type: TH
6349 #: build/C/man3/getnameinfo.3:7
6350 #, no-wrap
6351 msgid "GETNAMEINFO"
6352 msgstr "GETNAMEINFO"
6353
6354 #. type: TH
6355 #: build/C/man3/getnameinfo.3:7
6356 #, no-wrap
6357 msgid "2009-12-03"
6358 msgstr "2009-12-03"
6359
6360 #. type: Plain text
6361 #: build/C/man3/getnameinfo.3:10
6362 msgid ""
6363 "getnameinfo - address-to-name translation in protocol-independent manner"
6364 msgstr ""
6365 "getnameinfo - アドレスから名前への変換をプロトコルに依存しないかたちで行う"
6366
6367 #. type: Plain text
6368 #: build/C/man3/getnameinfo.3:14
6369 #, no-wrap
6370 msgid ""
6371 "B<#include E<lt>sys/socket.hE<gt>>\n"
6372 "B<#include E<lt>netdb.hE<gt>>\n"
6373 msgstr ""
6374 "B<#include E<lt>sys/socket.hE<gt>>\n"
6375 "B<#include E<lt>netdb.hE<gt>>\n"
6376
6377 #. type: Plain text
6378 #: build/C/man3/getnameinfo.3:18
6379 #, no-wrap
6380 msgid ""
6381 "B<int getnameinfo(const struct sockaddr *>I<sa>B<, socklen_t >I<salen>B<,>\n"
6382 "B<                char *>I<host>B<, size_t >I<hostlen>B<,>\n"
6383 "B<                char *>I<serv>B<, size_t >I<servlen>B<, int >I<flags>B<);>\n"
6384 msgstr ""
6385 "B<int getnameinfo(const struct sockaddr *>I<sa>B<, socklen_t >I<salen>B<,>\n"
6386 "B<                char *>I<host>B<, size_t >I<hostlen>B<,>\n"
6387 "B<                char *>I<serv>B<, size_t >I<servlen>B<, int >I<flags>B<);>\n"
6388
6389 #. type: Plain text
6390 #: build/C/man3/getnameinfo.3:28
6391 msgid ""
6392 "B<getnameinfo>(): _POSIX_C_SOURCE\\ E<gt>=\\ 1 || _XOPEN_SOURCE || "
6393 "_POSIX_SOURCE"
6394 msgstr ""
6395 "B<getnameinfo>(): _POSIX_C_SOURCE\\ E<gt>=\\ 1 || _XOPEN_SOURCE || "
6396 "_POSIX_SOURCE"
6397
6398 #. type: Plain text
6399 #: build/C/man3/getnameinfo.3:44
6400 msgid ""
6401 "The B<getnameinfo>()  function is the inverse of B<getaddrinfo>(3): it "
6402 "converts a socket address to a corresponding host and service, in a protocol-"
6403 "independent manner.  It combines the functionality of B<gethostbyaddr>(3)  "
6404 "and B<getservbyport>(3), but unlike those functions, B<getaddrinfo>(3)  is "
6405 "reentrant and allows programs to eliminate IPv4-versus-IPv6 dependencies."
6406 msgstr ""
6407 "B<getnameinfo>()  関数は、 B<getaddrinfo>(3)  の逆の動作を行う。つまり、プロ"
6408 "トコルに依存しないかたちで ソケットアドレスから対応するホスト名とサービスへの"
6409 "変換を行う。 この関数は B<gethostbyaddr>(3)  と B<getservbyport>(3)  の機能を"
6410 "一つにしたものだが、 これらの関数と違い、 B<getnameinfo>(3)  はリエントラント"
6411 "であり、IPv4 と IPv6 の差分に依存しないかたちで プログラムを書くことができ"
6412 "る。"
6413
6414 #. type: Plain text
6415 #: build/C/man3/getnameinfo.3:67
6416 msgid ""
6417 "The I<sa> argument is a pointer to a generic socket address structure (of "
6418 "type I<sockaddr_in> or I<sockaddr_in6>)  of size I<salen> that holds the "
6419 "input IP address and port number.  The arguments I<host> and I<serv> are "
6420 "pointers to caller-allocated buffers (of size I<hostlen> and I<servlen> "
6421 "respectively) into which B<getnameinfo>()  places null-terminated strings "
6422 "containing the host and service names respectively."
6423 msgstr ""
6424 "I<sa> 引き数は、 IP アドレスとポート番号の情報を保持している 汎用的なソケット"
6425 "アドレス構造体 (I<sockaddr_in> 型または I<sockaddr_in6> 型) へのポインタであ"
6426 "る。 I<salen> は I<sa> のサイズである。 I<host> と I<serv> 引き数は、(それぞ"
6427 "れサイズが I<hostlen> と I<servlen> の) 呼び出し側で確保されたバッファへのポ"
6428 "インタであり、 ホスト名とサービス名を含む NULL 終端された文字列が それぞれの"
6429 "バッファに格納される。"
6430
6431 #. type: Plain text
6432 #: build/C/man3/getnameinfo.3:80
6433 msgid ""
6434 "The caller can specify that no hostname (or no service name)  is required by "
6435 "providing a NULL I<host> (or I<serv>)  argument or a zero I<hostlen> (or "
6436 "I<servlen>)  argument.  However, at least one of hostname or service name "
6437 "must be requested."
6438 msgstr ""
6439 "ホスト名が不要であることをこの関数に伝えるには、 I<host> に NULL を指定する"
6440 "か、 I<hostlen> に 0 を指定する。同様に、サービス名が不要な場合は、 I<serv> "
6441 "に NULL を指定するか、 I<servlen> に 0 を指定する。 しかし、ホスト名とサービ"
6442 "ス名の両方を不要だと指定することはできない (いずれか一方は要求すること)。"
6443
6444 #. type: Plain text
6445 #: build/C/man3/getnameinfo.3:86
6446 msgid ""
6447 "The I<flags> argument modifies the behavior of B<getnameinfo>()  as follows:"
6448 msgstr ""
6449 "I<flags> 引き数で B<getnameinfo>()  の動作を変えることができる。指定できる値"
6450 "は以下の通り:"
6451
6452 #. type: TP
6453 #: build/C/man3/getnameinfo.3:86
6454 #, no-wrap
6455 msgid "B<NI_NAMEREQD>"
6456 msgstr "B<NI_NAMEREQD>"
6457
6458 #. type: Plain text
6459 #: build/C/man3/getnameinfo.3:89
6460 msgid "If set, then an error is returned if the hostname cannot be determined."
6461 msgstr "指定すると、ホスト名が決定できなかった場合にエラーを返す。"
6462
6463 #. type: TP
6464 #: build/C/man3/getnameinfo.3:89
6465 #, no-wrap
6466 msgid "B<NI_DGRAM>"
6467 msgstr "B<NI_DGRAM>"
6468
6469 #. type: Plain text
6470 #: build/C/man3/getnameinfo.3:95
6471 msgid ""
6472 "If set, then the service is datagram (UDP) based rather than stream (TCP) "
6473 "based.  This is required for the few ports (512-514)  that have different "
6474 "services for UDP and TCP."
6475 msgstr ""
6476 "指定すると、ストリームベース (TCP) でなくデータグラムベース (UDP)  のサービス"
6477 "を対象にする。数は少ないが、 UDP と TCP で違うサービスを提供しているポート "
6478 "(512-514) に対して必要となる。"
6479
6480 #. type: TP
6481 #: build/C/man3/getnameinfo.3:95
6482 #, no-wrap
6483 msgid "B<NI_NOFQDN>"
6484 msgstr "B<NI_NOFQDN>"
6485
6486 #. type: Plain text
6487 #: build/C/man3/getnameinfo.3:99
6488 msgid ""
6489 "If set, return only the hostname part of the fully qualified domain name for "
6490 "local hosts."
6491 msgstr ""
6492 "指定すると、ローカルなホストには fully qualified domain name (FQDN) の ホスト"
6493 "名の部分のみを返す。"
6494
6495 #. type: TP
6496 #: build/C/man3/getnameinfo.3:99
6497 #, no-wrap
6498 msgid "B<NI_NUMERICHOST>"
6499 msgstr "B<NI_NUMERICHOST>"
6500
6501 #.  For example, by calling
6502 #.  .BR inet_ntop ()
6503 #.  instead of
6504 #.  .BR gethostbyaddr ().
6505 #.  POSIX.1-2003 has NI_NUMERICSCOPE, but glibc doesn't have it.
6506 #. type: Plain text
6507 #: build/C/man3/getnameinfo.3:109
6508 msgid ""
6509 "If set, then the numeric form of the hostname is returned.  (When not set, "
6510 "this will still happen in case the node's name cannot be determined.)"
6511 msgstr ""
6512 "指定すると、数値形式のホスト名が返される。 (指定しなくても、ノードの名前が決"
6513 "定できない場合は数値形式が返ることがある)。"
6514
6515 #. type: TP
6516 #: build/C/man3/getnameinfo.3:109
6517 #, no-wrap
6518 msgid "B<NI_NUMERICSERV>"
6519 msgstr "B<NI_NUMERICSERV>"
6520
6521 #. type: Plain text
6522 #: build/C/man3/getnameinfo.3:114
6523 msgid ""
6524 "If set, then the numeric form of the service address is returned.  (When not "
6525 "set, this will still happen in case the service's name cannot be determined.)"
6526 msgstr ""
6527 "指定すると、数値形式のサービス名 (例えばポート番号) が返される (指定しなくて"
6528 "も、サービス名が決定できない場合は数値形式が返ることがある)。"
6529
6530 #. type: Plain text
6531 #: build/C/man3/getnameinfo.3:123
6532 msgid ""
6533 "Starting with glibc 2.3.4, B<getnameinfo>()  has been extended to "
6534 "selectively allow hostnames to be transparently converted to and from the "
6535 "Internationalized Domain Name (IDN) format (see RFC 3490, "
6536 "I<Internationalizing Domain Names in Applications (IDNA)>).  Three new flags "
6537 "are defined:"
6538 msgstr ""
6539 "glibc 2.3.4 から、 B<getnameinfo>()  に拡張が行われ、ホスト名と 国際化ドメイ"
6540 "ン名 (Internationalized Domain Name; IDN) 形式との間で 透過的な変換ができるよ"
6541 "うになっている (IDN 形式については RFC 3490 の I<Internationalizing Domain "
6542 "Names in Applications (IDNA)> を参照)。3つのフラグが新たに定義されている:"
6543
6544 #. type: TP
6545 #: build/C/man3/getnameinfo.3:123
6546 #, no-wrap
6547 msgid "B<NI_IDN>"
6548 msgstr "B<NI_IDN>"
6549
6550 #. type: Plain text
6551 #: build/C/man3/getnameinfo.3:129
6552 msgid ""
6553 "If this flag is used, then the name found in the lookup process is converted "
6554 "from IDN format to the locale's encoding if necessary.  ASCII-only names are "
6555 "not affected by the conversion, which makes this flag usable in existing "
6556 "programs and environments."
6557 msgstr ""
6558 "このフラグを指定すると、必要であれば、検索処理で見つかった名前は IDN 形式から"
6559 "ロケールに応じた符号化形式に変換される。 ASCII 文字だけの名前はこの変換では影"
6560 "響を受けない。このため、 既存のプログラムや環境でこのフラグを使うことができ"
6561 "る。"
6562
6563 #. type: TP
6564 #: build/C/man3/getnameinfo.3:129
6565 #, no-wrap
6566 msgid "B<NI_IDN_ALLOW_UNASSIGNED>, B<NI_IDN_USE_STD3_ASCII_RULES>"
6567 msgstr "B<NI_IDN_ALLOW_UNASSIGNED>, B<NI_IDN_USE_STD3_ASCII_RULES>"
6568
6569 #.  FIXME glibc defines the following additional errors, some which
6570 #.  can probably be returned by getnameinfo(); they need to
6571 #.  be documented.
6572 #.  #ifdef __USE_GNU
6573 #.  #define EAI_INPROGRESS  -100  /* Processing request in progress.  */
6574 #.  #define EAI_CANCELED    -101  /* Request canceled.  */
6575 #.  #define EAI_NOTCANCELED -102  /* Request not canceled.  */
6576 #.  #define EAI_ALLDONE     -103  /* All requests done.  */
6577 #.  #define EAI_INTR        -104  /* Interrupted by a signal.  */
6578 #.  #define EAI_IDN_ENCODE  -105  /* IDN encoding failed.  */
6579 #.  #endif
6580 #. type: Plain text
6581 #: build/C/man3/getnameinfo.3:152
6582 msgid ""
6583 "On success 0 is returned, and node and service names, if requested, are "
6584 "filled with null-terminated strings, possibly truncated to fit the specified "
6585 "buffer lengths.  On error one of the following nonzero error codes is "
6586 "returned:"
6587 msgstr ""
6588 "成功すると 0 が返り、(要求されていれば) ノードとサービスの名前が NULL 終端さ"
6589 "れた文字列の形式でそれぞれの指定バッファに返される (バッファの長さにあうよう"
6590 "に縮められるかもしれない)。 エラーの場合は、以下の 0 以外のエラー・コードが返"
6591 "される:"
6592
6593 #. type: Plain text
6594 #: build/C/man3/getnameinfo.3:156
6595 msgid "The name could not be resolved at this time.  Try again later."
6596 msgstr "指定された名前が現時点では解決できなかった。 後で再試行してみること。"
6597
6598 #. type: Plain text
6599 #: build/C/man3/getnameinfo.3:161
6600 msgid "The I<flags> argument has an invalid value."
6601 msgstr "I<flags> 引き数に不正な値が与えられた。"
6602
6603 #. type: Plain text
6604 #: build/C/man3/getnameinfo.3:164
6605 msgid "A nonrecoverable error occurred."
6606 msgstr "回復できないエラーが発生した。"
6607
6608 #. type: Plain text
6609 #: build/C/man3/getnameinfo.3:168
6610 msgid ""
6611 "The address family was not recognized, or the address length was invalid for "
6612 "the specified family."
6613 msgstr ""
6614 "指定したアドレスファミリーが認識できなかった。 あるいはアドレスの長さが指定さ"
6615 "れたファミリーに合うものでなかった。"
6616
6617 #. type: Plain text
6618 #: build/C/man3/getnameinfo.3:177
6619 msgid ""
6620 "The name does not resolve for the supplied arguments.  B<NI_NAMEREQD> is set "
6621 "and the host's name cannot be located, or neither hostname nor service name "
6622 "were requested."
6623 msgstr ""
6624 "与えられたパラメータでは名前が解決できない。 B<NI_NAMEREQD> が設定されていた"
6625 "がホスト名が決定できなかったか、 ホスト名もサービス名も要求されなかった。"
6626
6627 #. type: TP
6628 #: build/C/man3/getnameinfo.3:177
6629 #, no-wrap
6630 msgid "B<EAI_OVERFLOW>"
6631 msgstr "B<EAI_OVERFLOW>"
6632
6633 #. type: Plain text
6634 #: build/C/man3/getnameinfo.3:184
6635 msgid "The buffer pointed to by I<host> or I<serv> was too small."
6636 msgstr "I<host> または I<serv> が指しているバッファが小さすぎた。"
6637
6638 #. type: Plain text
6639 #: build/C/man3/getnameinfo.3:189
6640 msgid "A system error occurred.  The error code can be found in I<errno>."
6641 msgstr "システムエラーが起った。 エラーコードは I<errno> に設定される。"
6642
6643 #. type: Plain text
6644 #: build/C/man3/getnameinfo.3:196
6645 msgid "/etc/hosts"
6646 msgstr "/etc/hosts"
6647
6648 #. type: Plain text
6649 #: build/C/man3/getnameinfo.3:198
6650 msgid "/etc/nsswitch.conf"
6651 msgstr "/etc/nsswitch.conf"
6652
6653 #. type: Plain text
6654 #: build/C/man3/getnameinfo.3:200
6655 msgid "/etc/resolv.conf"
6656 msgstr "/etc/resolv.conf"
6657
6658 #. type: Plain text
6659 #: build/C/man3/getnameinfo.3:203
6660 msgid "B<getnameinfo>()  is provided in glibc since version 2.1."
6661 msgstr "B<getnameinfo>()  は、glibc バージョン 2.1 以降で提供されている。"
6662
6663 #. type: Plain text
6664 #: build/C/man3/getnameinfo.3:205
6665 msgid "RFC\\ 2553, POSIX.1-2001."
6666 msgstr "RFC\\ 2553, POSIX.1-2001."
6667
6668 #. type: Plain text
6669 #: build/C/man3/getnameinfo.3:210
6670 msgid ""
6671 "In order to assist the programmer in choosing reasonable sizes for the "
6672 "supplied buffers, I<E<lt>netdb.hE<gt>> defines the constants"
6673 msgstr ""
6674 "適切なバッファサイズを選択できるように、 I<E<lt>netdb.hE<gt>> に以下の定数が"
6675 "定義されている。"
6676
6677 #. type: Plain text
6678 #: build/C/man3/getnameinfo.3:215
6679 #, no-wrap
6680 msgid ""
6681 "#define NI_MAXHOST      1025\n"
6682 "#define NI_MAXSERV      32\n"
6683 msgstr ""
6684 "#define NI_MAXHOST      1025\n"
6685 "#define NI_MAXSERV      32\n"
6686
6687 #. type: Plain text
6688 #: build/C/man3/getnameinfo.3:225
6689 msgid ""
6690 "Since glibc 2.8, these definitions are exposed only if one of the feature "
6691 "test macros B<_BSD_SOURCE>, B<_SVID_SOURCE>, or B<_GNU_SOURCE> is defined."
6692 msgstr ""
6693 "glibc 2.8 以降では、機能検査マクロ B<_BSD_SOURCE>, B<_SVID_SOURCE>, "
6694 "B<_GNU_SOURCE> のいずれかが定義された場合にのみ、これらの定義が公開される。"
6695
6696 #. type: Plain text
6697 #: build/C/man3/getnameinfo.3:233
6698 msgid ""
6699 "The former is the constant B<MAXDNAME> in recent versions of BIND's "
6700 "I<E<lt>arpa/nameser.hE<gt>> header file.  The latter is a guess based on the "
6701 "services listed in the current Assigned Numbers RFC."
6702 msgstr ""
6703 "前者は、最近のバージョンの BIND のヘッダファイル I<E<lt>arpa/nameser.hE<gt>> "
6704 "中の定数 B<MAXDNAME> と同じ値である。 後者は、割り当て済の数値について記した"
6705 "現在の RFC に 列挙されてサービスから推量した値である。"
6706
6707 #. type: Plain text
6708 #: build/C/man3/getnameinfo.3:238
6709 msgid ""
6710 "The following code tries to get the numeric hostname and service name, for a "
6711 "given socket address.  Note that there is no hardcoded reference to a "
6712 "particular address family."
6713 msgstr ""
6714 "以下のコードは、指定されたソケットアドレスに対する ホストとサービスの数値表式"
6715 "を取得しようと試みる。 特定のアドレスファミリーに対する参照情報は 一切ハード"
6716 "コードされていないことに着目してほしい。"
6717
6718 #. type: Plain text
6719 #: build/C/man3/getnameinfo.3:244
6720 #, no-wrap
6721 msgid ""
6722 "struct sockaddr *sa;    /* input */\n"
6723 "socklen_t len;         /* input */\n"
6724 "char hbuf[NI_MAXHOST], sbuf[NI_MAXSERV];\n"
6725 msgstr ""
6726 "struct sockaddr *sa;    /* input */\n"
6727 "socklen_t len;          /* input */\n"
6728 "char hbuf[NI_MAXHOST], sbuf[NI_MAXSERV];\n"
6729
6730 #. type: Plain text
6731 #: build/C/man3/getnameinfo.3:248
6732 #, no-wrap
6733 msgid ""
6734 "if (getnameinfo(sa, len, hbuf, sizeof(hbuf), sbuf,\n"
6735 "            sizeof(sbuf), NI_NUMERICHOST | NI_NUMERICSERV) == 0)\n"
6736 "    printf(\"host=%s, serv=%s\\en\", hbuf, sbuf);\n"
6737 msgstr ""
6738 "if (getnameinfo(sa, len, hbuf, sizeof(hbuf), sbuf,\n"
6739 "            sizeof(sbuf), NI_NUMERICHOST | NI_NUMERICSERV) == 0)\n"
6740 "    printf(\"host=%s, serv=%s\\en\", hbuf, sbuf);\n"
6741
6742 #. type: Plain text
6743 #: build/C/man3/getnameinfo.3:253
6744 msgid ""
6745 "The following version checks if the socket address has a reverse address "
6746 "mapping."
6747 msgstr ""
6748 "以下ではソケットアドレスに 逆向きのアドレスマッピングが存在するかをチェックし"
6749 "ている。"
6750
6751 #. type: Plain text
6752 #: build/C/man3/getnameinfo.3:259
6753 #, no-wrap
6754 msgid ""
6755 "struct sockaddr *sa;    /* input */\n"
6756 "socklen_t len;         /* input */\n"
6757 "char hbuf[NI_MAXHOST];\n"
6758 msgstr ""
6759 "struct sockaddr *sa;    /* input */\n"
6760 "socklen_t len;          /* input */\n"
6761 "char hbuf[NI_MAXHOST];\n"
6762
6763 #. type: Plain text
6764 #: build/C/man3/getnameinfo.3:265
6765 #, no-wrap
6766 msgid ""
6767 "if (getnameinfo(sa, len, hbuf, sizeof(hbuf),\n"
6768 "            NULL, 0, NI_NAMEREQD))\n"
6769 "    printf(\"could not resolve hostname\");\n"
6770 "else\n"
6771 "    printf(\"host=%s\\en\", hbuf);\n"
6772 msgstr ""
6773 "if (getnameinfo(sa, len, hbuf, sizeof(hbuf),\n"
6774 "            NULL, 0, NI_NAMEREQD))\n"
6775 "    printf(\"could not resolve hostname\");\n"
6776 "else\n"
6777 "    printf(\"host=%s\\en\", hbuf);\n"
6778
6779 #. type: Plain text
6780 #: build/C/man3/getnameinfo.3:272
6781 msgid ""
6782 "An example program using B<getnameinfo>()  can be found in B<getaddrinfo>(3)."
6783 msgstr ""
6784 "B<getnameinfo>()  を使ったプログラム例が B<getaddrinfo>(3)  に記載されてい"
6785 "る。"
6786
6787 #. type: Plain text
6788 #: build/C/man3/getnameinfo.3:287
6789 msgid ""
6790 "B<accept>(2), B<getpeername>(2), B<getsockname>(2), B<recvfrom>(2), B<socket>"
6791 "(2), B<getaddrinfo>(3), B<gethostbyaddr>(3), B<getservbyname>(3), "
6792 "B<getservbyport>(3), B<inet_ntop>(3), B<hosts>(5), B<services>(5), "
6793 "B<hostname>(7), B<named>(8)"
6794 msgstr ""
6795 "B<accept>(2), B<getpeername>(2), B<getsockname>(2), B<recvfrom>(2), B<socket>"
6796 "(2), B<getaddrinfo>(3), B<gethostbyaddr>(3), B<getservbyname>(3), "
6797 "B<getservbyport>(3), B<inet_ntop>(3), B<hosts>(5), B<services>(5), "
6798 "B<hostname>(7), B<named>(8)"
6799
6800 #. type: Plain text
6801 #: build/C/man3/getnameinfo.3:291
6802 msgid ""
6803 "R. Gilligan, S. Thomson, J. Bound and W. Stevens, I<Basic Socket Interface "
6804 "Extensions for IPv6>, RFC\\ 2553, March 1999."
6805 msgstr ""
6806 "R. Gilligan, S. Thomson, J. Bound and W. Stevens, I<Basic Socket Interface "
6807 "Extensions for IPv6>, RFC\\ 2553, March 1999."
6808
6809 #. type: Plain text
6810 #: build/C/man3/getnameinfo.3:296
6811 msgid ""
6812 "Tatsuya Jinmei and Atsushi Onoe, I<An Extension of Format for IPv6 Scoped "
6813 "Addresses>, internet draft, work in progress.  ftp://ftp.ietf.org/internet-"
6814 "drafts/draft-ietf-ipngwg-scopedaddr-format-02.txt"
6815 msgstr ""
6816 "Tatsuya Jinmei and Atsushi Onoe, I<An Extension of Format for IPv6 Scoped "
6817 "Addresses>, internet draft, work in progress.  ftp://ftp.ietf.org/internet-"
6818 "drafts/draft-ietf-ipngwg-scopedaddr-format-02.txt"
6819
6820 #. type: Plain text
6821 #: build/C/man3/getnameinfo.3:302
6822 msgid ""
6823 "Craig Metz, I<Protocol Independence Using the Sockets API>, Proceedings of "
6824 "the freenix track: 2000 USENIX annual technical conference, June 2000.  "
6825 "http://www.usenix.org/publications/library/proceedings/usenix2000/freenix/"
6826 "metzprotocol.html"
6827 msgstr ""
6828 "Craig Metz, I<Protocol Independence Using the Sockets API>, Proceedings of "
6829 "the freenix track: 2000 USENIX annual technical conference, June 2000.  "
6830 "http://www.usenix.org/publications/library/proceedings/usenix2000/freenix/"
6831 "metzprotocol.html"
6832
6833 #. type: TH
6834 #: build/C/man3/getnetent.3:28
6835 #, no-wrap
6836 msgid "GETNETENT"
6837 msgstr "GETNETENT"
6838
6839 #. type: TH
6840 #: build/C/man3/getnetent.3:28 build/C/man3/getprotoent.3:28
6841 #: build/C/man3/getservent.3:32
6842 #, no-wrap
6843 msgid "2008-08-19"
6844 msgstr "2008-08-19"
6845
6846 #. type: Plain text
6847 #: build/C/man3/getnetent.3:32
6848 msgid ""
6849 "getnetent, getnetbyname, getnetbyaddr, setnetent, endnetent - get network "
6850 "entry"
6851 msgstr ""
6852 "getnetent, getnetbyname, getnetbyaddr, setnetent, endnetent - ネットワークエ"
6853 "ントリを取得する"
6854
6855 #. type: Plain text
6856 #: build/C/man3/getnetent.3:35 build/C/man3/getnetent_r.3:31
6857 #: build/C/man3/getprotoent.3:35 build/C/man3/getprotoent_r.3:31
6858 #: build/C/man3/getservent.3:39 build/C/man3/getservent_r.3:31
6859 #: build/C/man3/setnetgrent.3:12
6860 #, no-wrap
6861 msgid "B<#include E<lt>netdb.hE<gt>>\n"
6862 msgstr "B<#include E<lt>netdb.hE<gt>>\n"
6863
6864 #. type: Plain text
6865 #: build/C/man3/getnetent.3:37
6866 #, no-wrap
6867 msgid "B<struct netent *getnetent(void);>\n"
6868 msgstr "B<struct netent *getnetent(void);>\n"
6869
6870 #. type: Plain text
6871 #: build/C/man3/getnetent.3:39
6872 #, no-wrap
6873 msgid "B<struct netent *getnetbyname(const char *>I<name>B<);>\n"
6874 msgstr "B<struct netent *getnetbyname(const char *>I<name>B<);>\n"
6875
6876 #. type: Plain text
6877 #: build/C/man3/getnetent.3:41
6878 #, no-wrap
6879 msgid "B<struct netent *getnetbyaddr(uint32_t >I<net>B<, int >I<type>B<);>\n"
6880 msgstr "B<struct netent *getnetbyaddr(uint32_t >I<net>B<, int >I<type>B<);>\n"
6881
6882 #. type: Plain text
6883 #: build/C/man3/getnetent.3:43
6884 #, no-wrap
6885 msgid "B<void setnetent(int >I<stayopen>B<);>\n"
6886 msgstr "B<void setnetent(int >I<stayopen>B<);>\n"
6887
6888 #. type: Plain text
6889 #: build/C/man3/getnetent.3:45
6890 #, no-wrap
6891 msgid "B<void endnetent(void);>\n"
6892 msgstr "B<void endnetent(void);>\n"
6893
6894 #. type: Plain text
6895 #: build/C/man3/getnetent.3:53
6896 msgid ""
6897 "The B<getnetent>()  function reads the next entry from the networks database "
6898 "and returns a I<netent> structure containing the broken-out fields from the "
6899 "entry.  A connection is opened to the database if necessary."
6900 msgstr ""
6901 "B<getnetent>()  関数はネットワークデータベースから次のエントリを読み込み、 そ"
6902 "のエントリを I<netent> 構造体の要素別のフィールドに格納し、 その構造体を返"
6903 "す。 必要であれば、データベースへの接続がオープンされる。"
6904
6905 #. type: Plain text
6906 #: build/C/man3/getnetent.3:59
6907 msgid ""
6908 "The B<getnetbyname>()  function returns a I<netent> structure for the entry "
6909 "from the database that matches the network I<name>."
6910 msgstr ""
6911 "B<getnetbyname>()  関数は、ネットワーク名 I<name> にマッチするエントリを デー"
6912 "タベースから探し、そのエントリを収めた I<netent> 構造体を返す。"
6913
6914 #. type: Plain text
6915 #: build/C/man3/getnetent.3:69
6916 msgid ""
6917 "The B<getnetbyaddr>()  function returns a I<netent> structure for the entry "
6918 "from the database that matches the network number I<net> of type I<type>.  "
6919 "The I<net> argument must be in host byte order."
6920 msgstr ""
6921 "B<getnetbyaddr>()  関数は、I<type> 型のネットワーク番号 I<net> にマッチするエ"
6922 "ントリを データベースから探し、そのエントリを収めた I<netent> 構造体を返す。 "
6923 "I<net> 引き数はホスト・バイトオーダでなければならない。"
6924
6925 #. type: Plain text
6926 #: build/C/man3/getnetent.3:79
6927 msgid ""
6928 "The B<setnetent>()  function opens a connection to the database, and sets "
6929 "the next entry to the first entry.  If I<stayopen> is nonzero, then the "
6930 "connection to the database will not be closed between calls to one of the "
6931 "B<getnet*>()  functions."
6932 msgstr ""
6933 "B<setnetent>()  関数はデータベースへの接続をオープンし、 次の読み込みエントリ"
6934 "を先頭のエントリに設定する。 I<stayopen> が 0 でない場合、 一つ一つの "
6935 "B<getnet*>()  関数の呼び出し間でデータベースへの接続をクローズしない。"
6936
6937 #. type: Plain text
6938 #: build/C/man3/getnetent.3:83
6939 msgid "The B<endnetent>()  function closes the connection to the database."
6940 msgstr "B<endnetent>()  関数はデータベースへの接続をクローズする。"
6941
6942 #. type: Plain text
6943 #: build/C/man3/getnetent.3:85
6944 msgid "The I<netent> structure is defined in I<E<lt>netdb.hE<gt>> as follows:"
6945 msgstr "I<netent> 構造体は I<E<lt>netdb.hE<gt>> で以下のように定義されている。"
6946
6947 #. type: Plain text
6948 #: build/C/man3/getnetent.3:94
6949 #, no-wrap
6950 msgid ""
6951 "struct netent {\n"
6952 "    char      *n_name;     /* official network name */\n"
6953 "    char     **n_aliases;  /* alias list */\n"
6954 "    int        n_addrtype; /* net address type */\n"
6955 "    uint32_t   n_net;      /* network number */\n"
6956 "}\n"
6957 msgstr ""
6958 "struct netent {\n"
6959 "    char      *n_name;     /* official network name */\n"
6960 "    char     **n_aliases;  /* alias list */\n"
6961 "    int        n_addrtype; /* net address type */\n"
6962 "    uint32_t   n_net;      /* network number */\n"
6963 "}\n"
6964
6965 #. type: Plain text
6966 #: build/C/man3/getnetent.3:98
6967 msgid "The members of the I<netent> structure are:"
6968 msgstr "I<netent> 構造体のメンバは以下の通り。"
6969
6970 #. type: TP
6971 #: build/C/man3/getnetent.3:98
6972 #, no-wrap
6973 msgid "I<n_name>"
6974 msgstr "I<n_name>"
6975
6976 #. type: Plain text
6977 #: build/C/man3/getnetent.3:101
6978 msgid "The official name of the network."
6979 msgstr "ネットワークの正式名 (official name)。"
6980
6981 #. type: TP
6982 #: build/C/man3/getnetent.3:101
6983 #, no-wrap
6984 msgid "I<n_aliases>"
6985 msgstr "I<n_aliases>"
6986
6987 #. type: Plain text
6988 #: build/C/man3/getnetent.3:104
6989 msgid "A NULL-terminated list of alternative names for the network."
6990 msgstr "ネットワークの別名からなるリスト。 リストは NULL で終端される。"
6991
6992 #. type: TP
6993 #: build/C/man3/getnetent.3:104
6994 #, no-wrap
6995 msgid "I<n_addrtype>"
6996 msgstr "I<n_addrtype>"
6997
6998 #. type: Plain text
6999 #: build/C/man3/getnetent.3:108
7000 msgid "The type of the network number; always B<AF_INET>."
7001 msgstr "ネットワーク番号の形式。現在は B<AF_INET> のみ。"
7002
7003 #. type: TP
7004 #: build/C/man3/getnetent.3:108
7005 #, no-wrap
7006 msgid "I<n_net>"
7007 msgstr "I<n_net>"
7008
7009 #. type: Plain text
7010 #: build/C/man3/getnetent.3:111
7011 msgid "The network number in host byte order."
7012 msgstr "ホスト・バイトオーダ形式のネットワーク番号。"
7013
7014 #. type: Plain text
7015 #: build/C/man3/getnetent.3:120
7016 msgid ""
7017 "The B<getnetent>(), B<getnetbyname>()  and B<getnetbyaddr>()  functions "
7018 "return a pointer to a statically allocated I<netent> structure, or a NULL "
7019 "pointer if an error occurs or the end of the file is reached."
7020 msgstr ""
7021 "B<getnetent>(), B<getnetbyname>(), B<getnetbyaddr>()  関数は、静的に割り当て"
7022 "られた I<netent> 構造体へのポインタを返す。 エラーが起こったり、ファイルの末"
7023 "尾に達した場合は NULL ポインタを返す。"
7024
7025 #. type: TP
7026 #: build/C/man3/getnetent.3:121 build/C/man5/networks.5:70
7027 #, no-wrap
7028 msgid "I</etc/networks>"
7029 msgstr "I</etc/networks>"
7030
7031 #. type: Plain text
7032 #: build/C/man3/getnetent.3:124
7033 msgid "networks database file"
7034 msgstr "ネットワークデータベースファイル"
7035
7036 #. type: Plain text
7037 #: build/C/man3/getnetent.3:126 build/C/man3/getprotoent.3:122
7038 #: build/C/man3/getservent.3:131
7039 msgid "4.3BSD, POSIX.1-2001."
7040 msgstr "4.3BSD, POSIX.1-2001."
7041
7042 #. type: Plain text
7043 #: build/C/man3/getnetent.3:133
7044 msgid ""
7045 "In glibc versions before 2.2, the I<net> argument of B<getnetbyaddr>()  was "
7046 "of type I<long>."
7047 msgstr ""
7048 "バージョン 2.2 より前の glibc では、 B<getnetbyaddr>()  の引き数 I<net> は "
7049 "I<long> 型だった。"
7050
7051 #.  .BR networks (5)
7052 #. type: Plain text
7053 #: build/C/man3/getnetent.3:138
7054 msgid "B<getnetent_r>(3), B<getprotoent>(3), B<getservent>(3)"
7055 msgstr "B<getnetent_r>(3), B<getprotoent>(3), B<getservent>(3)"
7056
7057 #. type: Plain text
7058 #: build/C/man3/getnetent.3:140
7059 msgid "RFC\\ 1101"
7060 msgstr "RFC\\ 1101"
7061
7062 #. type: TH
7063 #: build/C/man3/getnetent_r.3:24
7064 #, no-wrap
7065 msgid "GETNETENT_R"
7066 msgstr "GETNETENT_R"
7067
7068 #. type: Plain text
7069 #: build/C/man3/getnetent_r.3:28
7070 msgid ""
7071 "getnetent_r, getnetbyname_r, getnetbyaddr_r - get network entry (reentrant)"
7072 msgstr ""
7073 "getnetent_r, getnetbyname_r, getnetbyaddr_r - get network entry (reentrant)"
7074
7075 #. type: Plain text
7076 #: build/C/man3/getnetent_r.3:35
7077 #, no-wrap
7078 msgid ""
7079 "B<int getnetent_r(struct netent *>I<result_buf>B<, char *>I<buf>B<,>\n"
7080 "B<                size_t >I<buflen>B<, struct netent **>I<result>B<,>\n"
7081 "B<                int *>I<h_errnop>B<);>\n"
7082 msgstr ""
7083 "B<int getnetent_r(struct netent *>I<result_buf>B<, char *>I<buf>B<,>\n"
7084 "B<                size_t >I<buflen>B<, struct netent **>I<result>B<,>\n"
7085 "B<                int *>I<h_errnop>B<);>\n"
7086
7087 #. type: Plain text
7088 #: build/C/man3/getnetent_r.3:40
7089 #, no-wrap
7090 msgid ""
7091 "B<int getnetbyname_r(const char *>I<name>B<,>\n"
7092 "B<                struct netent *>I<result_buf>B<, char *>I<buf>B<,>\n"
7093 "B<                size_t >I<buflen>B<, struct netent **>I<result>B<,>\n"
7094 "B<                int *>I<h_errnop>B<);>\n"
7095 msgstr ""
7096 "B<int getnetbyname_r(const char *>I<name>B<,>\n"
7097 "B<                struct netent *>I<result_buf>B<, char *>I<buf>B<,>\n"
7098 "B<                size_t >I<buflen>B<, struct netent **>I<result>B<,>\n"
7099 "B<                int *>I<h_errnop>B<);>\n"
7100
7101 #. type: Plain text
7102 #: build/C/man3/getnetent_r.3:45
7103 #, no-wrap
7104 msgid ""
7105 "B<int getnetbyaddr_r(uint32_t >I<net>B<, int >I<type>B<,>\n"
7106 "B<                struct netent *>I<result_buf>B<, char *>I<buf>B<,>\n"
7107 "B<                size_t >I<buflen>B<, struct netent **>I<result>B<,>\n"
7108 "B<                int *>I<h_errnop>B<);>\n"
7109 msgstr ""
7110 "B<int getnetbyaddr_r(uint32_t >I<net>B<, int >I<type>B<,>\n"
7111 "B<                struct netent *>I<result_buf>B<, char *>I<buf>B<,>\n"
7112 "B<                size_t >I<buflen>B<, struct netent **>I<result>B<,>\n"
7113 "B<                int *>I<h_errnop>B<);>\n"
7114
7115 #. type: Plain text
7116 #: build/C/man3/getnetent_r.3:56
7117 msgid "B<getnetent_r>(), B<getnetbyname_r>(), B<getnetbyaddr_r>():"
7118 msgstr "B<getnetent_r>(), B<getnetbyname_r>(), B<getnetbyaddr_r>():"
7119
7120 #. type: Plain text
7121 #: build/C/man3/getnetent_r.3:77
7122 msgid ""
7123 "The B<getnetent_r>(), B<getnetbyname_r>(), and B<getnetbyaddr_r>()  "
7124 "functions are the reentrant equivalents of, respectively, B<getnetent>(3), "
7125 "B<getnetbyname>(3), and B<getnetbynumber>(3).  They differ in the way that "
7126 "the I<netent> structure is returned, and in the function calling signature "
7127 "and return value.  This manual page describes just the differences from the "
7128 "nonreentrant functions."
7129 msgstr ""
7130 "The B<getnetent_r>(), B<getnetbyname_r>(), and B<getnetbyaddr_r>()  "
7131 "functions are the reentrant equivalents of, respectively, B<getnetent>(3), "
7132 "B<getnetbyname>(3), and B<getnetbynumber>(3).  They differ in the way that "
7133 "the I<netent> structure is returned, and in the function calling signature "
7134 "and return value.  This manual page describes just the differences from the "
7135 "nonreentrant functions."
7136
7137 #. type: Plain text
7138 #: build/C/man3/getnetent_r.3:83
7139 msgid ""
7140 "Instead of returning a pointer to a statically allocated I<netent> structure "
7141 "as the function result, these functions copy the structure into the location "
7142 "pointed to by I<result_buf>."
7143 msgstr ""
7144 "Instead of returning a pointer to a statically allocated I<netent> structure "
7145 "as the function result, these functions copy the structure into the location "
7146 "pointed to by I<result_buf>."
7147
7148 #.  I can find no information on the required/recommended buffer size;
7149 #.  the nonreentrant functions use a 1024 byte buffer -- mtk.
7150 #. type: Plain text
7151 #: build/C/man3/getnetent_r.3:100
7152 msgid ""
7153 "The I<buf> array is used to store the string fields pointed to by the "
7154 "returned I<netent> structure.  (The nonreentrant functions allocate these "
7155 "strings in static storage.)  The size of this array is specified in "
7156 "I<buflen>.  If I<buf> is too small, the call fails with the error B<ERANGE>, "
7157 "and the caller must try again with a larger buffer.  (A buffer of length "
7158 "1024 bytes should be sufficient for most applications.)"
7159 msgstr ""
7160 "The I<buf> array is used to store the string fields pointed to by the "
7161 "returned I<netent> structure.  (The nonreentrant functions allocate these "
7162 "strings in static storage.)  The size of this array is specified in "
7163 "I<buflen>.  If I<buf> is too small, the call fails with the error B<ERANGE>, "
7164 "and the caller must try again with a larger buffer.  (A buffer of length "
7165 "1024 bytes should be sufficient for most applications.)"
7166
7167 #. type: Plain text
7168 #: build/C/man3/getnetent_r.3:108
7169 msgid ""
7170 "If the function call successfully obtains a network record, then I<*result> "
7171 "is set pointing to I<result_buf>; otherwise, I<*result> is set to NULL."
7172 msgstr ""
7173 "If the function call successfully obtains a network record, then I<*result> "
7174 "is set pointing to I<result_buf>; otherwise, I<*result> is set to NULL."
7175
7176 #.  getnetent.3 doesn't document any use of h_errno, but nevertheless
7177 #.  the nonreentrant functions no seem to set h_errno.
7178 #. type: Plain text
7179 #: build/C/man3/getnetent_r.3:116
7180 msgid ""
7181 "The buffer pointed to by I<h_errnop> is used to return the value that would "
7182 "be stored in the global variable I<h_errno> by the nonreentrant versions of "
7183 "these functions."
7184 msgstr ""
7185 "The buffer pointed to by I<h_errnop> is used to return the value that would "
7186 "be stored in the global variable I<h_errno> by the nonreentrant versions of "
7187 "these functions."
7188
7189 #. type: Plain text
7190 #: build/C/man3/getnetent_r.3:119 build/C/man3/getprotoent_r.3:109
7191 msgid ""
7192 "On success, these functions return 0.  On error, they return one of the "
7193 "positive error numbers listed in ERRORS."
7194 msgstr ""
7195 "On success, these functions return 0.  On error, they return one of the "
7196 "positive error numbers listed in ERRORS."
7197
7198 #. type: Plain text
7199 #: build/C/man3/getnetent_r.3:127
7200 msgid ""
7201 "On error, record not found (B<getnetbyname_r>(), B<getnetbyaddr_r>()), or "
7202 "end of input (B<getnetent_r>())  I<result> is set to NULL."
7203 msgstr ""
7204 "On error, record not found (B<getnetbyname_r>(), B<getnetbyaddr_r>()), or "
7205 "end of input (B<getnetent_r>())  I<result> is set to NULL."
7206
7207 #. type: Plain text
7208 #: build/C/man3/getnetent_r.3:132
7209 msgid "(B<getnetent_r>())  No more records in database."
7210 msgstr "(B<getnetent_r>())  No more records in database."
7211
7212 #. type: TP
7213 #: build/C/man3/getnetent_r.3:132 build/C/man3/getprotoent_r.3:122
7214 #: build/C/man3/getservent_r.3:121
7215 #, no-wrap
7216 msgid "B<ERANGE>"
7217 msgstr "B<ERANGE>"
7218
7219 #. type: Plain text
7220 #: build/C/man3/getnetent_r.3:139 build/C/man3/getprotoent_r.3:129
7221 #: build/C/man3/getservent_r.3:128
7222 msgid ""
7223 "I<buf> is too small.  Try again with a larger buffer (and increased "
7224 "I<buflen>)."
7225 msgstr ""
7226 "I<buf> is too small.  Try again with a larger buffer (and increased "
7227 "I<buflen>)."
7228
7229 #. type: Plain text
7230 #: build/C/man3/getnetent_r.3:143 build/C/man3/getprotoent_r.3:133
7231 #: build/C/man3/getservent_r.3:132
7232 msgid ""
7233 "These functions are GNU extensions.  Functions with similar names exist on "
7234 "some other systems, though typically with different calling signatures."
7235 msgstr ""
7236 "These functions are GNU extensions.  Functions with similar names exist on "
7237 "some other systems, though typically with different calling signatures."
7238
7239 #. type: Plain text
7240 #: build/C/man3/getnetent_r.3:146
7241 msgid "B<getnetent>(3), B<networks>(5)"
7242 msgstr "B<getnetent>(3), B<networks>(5)"
7243
7244 #. type: TH
7245 #: build/C/man2/getpeername.2:40
7246 #, no-wrap
7247 msgid "GETPEERNAME"
7248 msgstr "GETPEERNAME"
7249
7250 #. type: TH
7251 #: build/C/man2/getpeername.2:40 build/C/man2/shutdown.2:38
7252 #: build/C/man7/udplite.7:25
7253 #, no-wrap
7254 msgid "2008-12-03"
7255 msgstr "2008-12-03"
7256
7257 #. type: Plain text
7258 #: build/C/man2/getpeername.2:43
7259 msgid "getpeername - get name of connected peer socket"
7260 msgstr "getpeername - 接続している相手ソケットの名前を取得する"
7261
7262 #. type: Plain text
7263 #: build/C/man2/getpeername.2:48
7264 msgid ""
7265 "B<int getpeername(int >I<sockfd>B<, struct sockaddr *>I<addr>B<, socklen_t "
7266 "*>I<addrlen>B<);>"
7267 msgstr ""
7268 "B<int getpeername(int >I<sockfd>B<, struct sockaddr *>I<addr>B<, socklen_t "
7269 "*>I<addrlen>B<);>"
7270
7271 #. type: Plain text
7272 #: build/C/man2/getpeername.2:61
7273 msgid ""
7274 "B<getpeername>()  returns the address of the peer connected to the socket "
7275 "I<sockfd>, in the buffer pointed to by I<addr>.  The I<addrlen> argument "
7276 "should be initialized to indicate the amount of space pointed to by "
7277 "I<addr>.  On return it contains the actual size of the name returned (in "
7278 "bytes).  The name is truncated if the buffer provided is too small."
7279 msgstr ""
7280 "B<getpeername>()  は、ソケット(socket)  I<sockfd> に接続している相手のアドレ"
7281 "スを、 I<addr> が指すバッファに格納して返す。 I<addrlen> 引き数は、 I<addr> "
7282 "が指している領域のサイズに初期化しておかなければならない。 関数が返る時に"
7283 "は、 I<addrlen> には実際に返された名前のサイズが (バイト単位で) 格納される。 "
7284 "提供されたバッファが小さすぎた場合には、名前は切り詰められる。"
7285
7286 #. type: Plain text
7287 #: build/C/man2/getpeername.2:66
7288 msgid ""
7289 "The returned address is truncated if the buffer provided is too small; in "
7290 "this case, I<addrlen> will return a value greater than was supplied to the "
7291 "call."
7292 msgstr ""
7293 "渡されたバッファが小さ過ぎた場合は、返されるアドレスの末尾が切り詰められる。 "
7294 "この場合には、 I<addrlen> には、呼び出し時に指定された値よりも大きな値が格納"
7295 "される。"
7296
7297 #. type: Plain text
7298 #: build/C/man2/getpeername.2:71 build/C/man2/shutdown.2:72
7299 msgid ""
7300 "On success, zero is returned.  On error, -1 is returned, and I<errno> is set "
7301 "appropriately."
7302 msgstr ""
7303 "成功した場合は 0 が返される。エラーの場合は -1 が返され、 I<errno> が適切に設"
7304 "定される。"
7305
7306 #. type: TP
7307 #: build/C/man2/getpeername.2:72 build/C/man2/shutdown.2:73
7308 #, no-wrap
7309 msgid "B<EBADF>"
7310 msgstr "B<EBADF>"
7311
7312 #. type: Plain text
7313 #: build/C/man2/getpeername.2:77
7314 msgid "The argument I<sockfd> is not a valid descriptor."
7315 msgstr "引き数 I<sockfd> が有効なディスクリプタでない。"
7316
7317 #. type: TP
7318 #: build/C/man2/getpeername.2:77 build/C/man7/packet.7:245
7319 #: build/C/man7/raw.7:145 build/C/man7/unix.7:329
7320 #, no-wrap
7321 msgid "B<EFAULT>"
7322 msgstr "B<EFAULT>"
7323
7324 #. type: Plain text
7325 #: build/C/man2/getpeername.2:83
7326 msgid ""
7327 "The I<addr> argument points to memory not in a valid part of the process "
7328 "address space."
7329 msgstr ""
7330 "I<addr> 引き数の指しているメモリが有効なプロセスのアドレス空間の 一部でない。"
7331
7332 #. type: Plain text
7333 #: build/C/man2/getpeername.2:87
7334 msgid "I<addrlen> is invalid (e.g., is negative)."
7335 msgstr "I<addrlen> が不正である (例えば、負で場合など)。"
7336
7337 #. type: TP
7338 #: build/C/man2/getpeername.2:87 build/C/man7/packet.7:257
7339 #, no-wrap
7340 msgid "B<ENOBUFS>"
7341 msgstr "B<ENOBUFS>"
7342
7343 #. type: Plain text
7344 #: build/C/man2/getpeername.2:91
7345 msgid ""
7346 "Insufficient resources were available in the system to perform the operation."
7347 msgstr "この操作を行なうのに十分な資源がシステムに存在しない。"
7348
7349 #. type: Plain text
7350 #: build/C/man2/getpeername.2:94
7351 msgid "The socket is not connected."
7352 msgstr "ソケットが接続していない。"
7353
7354 #. type: TP
7355 #: build/C/man2/getpeername.2:94 build/C/man2/shutdown.2:80
7356 #, no-wrap
7357 msgid "B<ENOTSOCK>"
7358 msgstr "B<ENOTSOCK>"
7359
7360 #. type: Plain text
7361 #: build/C/man2/getpeername.2:99
7362 msgid "The argument I<sockfd> is a file, not a socket."
7363 msgstr "引き数 I<sockfd> がソケットでなくてファイルである。"
7364
7365 #. type: Plain text
7366 #: build/C/man2/getpeername.2:103
7367 msgid ""
7368 "SVr4, 4.4BSD (the B<getpeername>()  function call first appeared in 4.2BSD), "
7369 "POSIX.1-2001."
7370 msgstr ""
7371 "SVr4, 4.4BSD (B<getpeername>()  関数は 4.2BSD で登場した), POSIX.1-2001."
7372
7373 #. type: Plain text
7374 #: build/C/man2/getpeername.2:114
7375 msgid ""
7376 "The third argument of B<getpeername>()  is in reality an I<int *> (and this "
7377 "is what 4.x BSD and libc4 and libc5 have).  Some POSIX confusion resulted in "
7378 "the present I<socklen_t>, also used by glibc.  See also B<accept>(2)."
7379 msgstr ""
7380 "B<getpeername>()  の三番目の引き数は実際には I<`int *'> である (4.x BSD, "
7381 "libc4, libc5 では このようになっている)。 POSIX では紆余曲折を経て現在の "
7382 "I<socklen_t> になっており、 glibc でも I<socklen_t> を使っている。 B<accept>"
7383 "(2)  も参照のこと。"
7384
7385 #. type: Plain text
7386 #: build/C/man2/getpeername.2:121
7387 msgid ""
7388 "B<accept>(2), B<bind>(2), B<getsockname>(2), B<ip>(7), B<socket>(7), B<unix>"
7389 "(7)"
7390 msgstr ""
7391 "B<accept>(2), B<bind>(2), B<getsockname>(2), B<ip>(7), B<socket>(7), B<unix>"
7392 "(7)"
7393
7394 #. type: TH
7395 #: build/C/man3/getprotoent.3:28
7396 #, no-wrap
7397 msgid "GETPROTOENT"
7398 msgstr "GETPROTOENT"
7399
7400 #. type: Plain text
7401 #: build/C/man3/getprotoent.3:32
7402 msgid ""
7403 "getprotoent, getprotobyname, getprotobynumber, setprotoent, endprotoent - "
7404 "get protocol entry"
7405 msgstr ""
7406 "getprotoent, getprotobyname, getprotobynumber, setprotoent, endprotoent - プ"
7407 "ロトコルのエントリを取得する"
7408
7409 #. type: Plain text
7410 #: build/C/man3/getprotoent.3:37
7411 #, no-wrap
7412 msgid "B<struct protoent *getprotoent(void);>\n"
7413 msgstr "B<struct protoent *getprotoent(void);>\n"
7414
7415 #. type: Plain text
7416 #: build/C/man3/getprotoent.3:39
7417 #, no-wrap
7418 msgid "B<struct protoent *getprotobyname(const char *>I<name>B<);>\n"
7419 msgstr "B<struct protoent *getprotobyname(const char *>I<name>B<);>\n"
7420
7421 #. type: Plain text
7422 #: build/C/man3/getprotoent.3:41
7423 #, no-wrap
7424 msgid "B<struct protoent *getprotobynumber(int >I<proto>B<);>\n"
7425 msgstr "B<struct protoent *getprotobynumber(int >I<proto>B<);>\n"
7426
7427 #. type: Plain text
7428 #: build/C/man3/getprotoent.3:43
7429 #, no-wrap
7430 msgid "B<void setprotoent(int >I<stayopen>B<);>\n"
7431 msgstr "B<void setprotoent(int >I<stayopen>B<);>\n"
7432
7433 #. type: Plain text
7434 #: build/C/man3/getprotoent.3:45
7435 #, no-wrap
7436 msgid "B<void endprotoent(void);>\n"
7437 msgstr "B<void endprotoent(void);>\n"
7438
7439 #. type: Plain text
7440 #: build/C/man3/getprotoent.3:54
7441 msgid ""
7442 "The B<getprotoent>()  function reads the next entry from the protocols "
7443 "database (see B<protocols>(5))  and returns a I<protoent> structure "
7444 "containing the broken-out fields from the entry.  A connection is opened to "
7445 "the database if necessary."
7446 msgstr ""
7447 "B<getprotoent>()  関数は、プロトコルのデータベース (B<protocols>(5)  参照) か"
7448 "ら次のエントリを読み込み、 そのエントリを I<protoent> 構造体の要素別のフィー"
7449 "ルドに格納し、 その構造体を返す。 必要であれば、データベースへの接続がオープ"
7450 "ンされる。"
7451
7452 #. type: Plain text
7453 #: build/C/man3/getprotoent.3:61
7454 msgid ""
7455 "The B<getprotobyname>()  function returns a I<protoent> structure for the "
7456 "entry from the database that matches the protocol name I<name>.  A "
7457 "connection is opened to the database if necessary."
7458 msgstr ""
7459 "B<getprotobyname>()  関数は、プロトコル名 I<name> にマッチするエントリを デー"
7460 "タベースから探し、そのエントリを収めた I<protoent> 構造体を返す。 必要であれ"
7461 "ば、データベースへの接続がオープンされる。"
7462
7463 #. type: Plain text
7464 #: build/C/man3/getprotoent.3:68
7465 msgid ""
7466 "The B<getprotobynumber>()  function returns a I<protoent> structure for the "
7467 "entry from the database that matches the protocol number I<number>.  A "
7468 "connection is opened to the database if necessary."
7469 msgstr ""
7470 "B<getprotobynumber>()  関数は、プロトコル番号 I<number> にマッチするエントリ"
7471 "を データベースから探し、そのエントリを収めた I<protoent> 構造体を返す。 必要"
7472 "であれば、データベースへの接続がオープンされる。"
7473
7474 #. type: Plain text
7475 #: build/C/man3/getprotoent.3:78
7476 msgid ""
7477 "The B<setprotoent>()  function opens a connection to the database, and sets "
7478 "the next entry to the first entry.  If I<stayopen> is nonzero, then the "
7479 "connection to the database will not be closed between calls to one of the "
7480 "B<getproto*>()  functions."
7481 msgstr ""
7482 "B<setprotoent>()  関数はデータベースへの接続をオープンし、 次の読み込みエント"
7483 "リを先頭のエントリに設定する。 I<stayopen> が 0 でない場合、 一つ一つの "
7484 "B<getproto*>()  関数の呼び出し間でデータベースへの接続をクローズしない。"
7485
7486 #. type: Plain text
7487 #: build/C/man3/getprotoent.3:82
7488 msgid "The B<endprotoent>()  function closes the connection to the database."
7489 msgstr "B<endprotoent>()  関数はデータベースへの接続をクローズする。"
7490
7491 #. type: Plain text
7492 #: build/C/man3/getprotoent.3:84
7493 msgid ""
7494 "The I<protoent> structure is defined in I<E<lt>netdb.hE<gt>> as follows:"
7495 msgstr ""
7496 "I<protoent> 構造体は I<E<lt>netdb.hE<gt>> で以下のように定義されている。"
7497
7498 #. type: Plain text
7499 #: build/C/man3/getprotoent.3:92
7500 #, no-wrap
7501 msgid ""
7502 "struct protoent {\n"
7503 "    char  *p_name;       /* official protocol name */\n"
7504 "    char **p_aliases;    /* alias list */\n"
7505 "    int    p_proto;      /* protocol number */\n"
7506 "}\n"
7507 msgstr ""
7508 "struct protoent {\n"
7509 "    char  *p_name;       /* official protocol name */\n"
7510 "    char **p_aliases;    /* alias list */\n"
7511 "    int    p_proto;      /* protocol number */\n"
7512 "}\n"
7513
7514 #. type: Plain text
7515 #: build/C/man3/getprotoent.3:96
7516 msgid "The members of the I<protoent> structure are:"
7517 msgstr "I<protoent> 構造体のメンバーは以下の通り。"
7518
7519 #. type: TP
7520 #: build/C/man3/getprotoent.3:96
7521 #, no-wrap
7522 msgid "I<p_name>"
7523 msgstr "I<p_name>"
7524
7525 #. type: Plain text
7526 #: build/C/man3/getprotoent.3:99
7527 msgid "The official name of the protocol."
7528 msgstr "プロトコルの正式名 (official name)。"
7529
7530 #. type: TP
7531 #: build/C/man3/getprotoent.3:99
7532 #, no-wrap
7533 msgid "I<p_aliases>"
7534 msgstr "I<p_aliases>"
7535
7536 #. type: Plain text
7537 #: build/C/man3/getprotoent.3:102
7538 msgid "A NULL-terminated list of alternative names for the protocol."
7539 msgstr "プロトコルの別名のリスト。 リストは NULL で終端される。"
7540
7541 #. type: TP
7542 #: build/C/man3/getprotoent.3:102
7543 #, no-wrap
7544 msgid "I<p_proto>"
7545 msgstr "I<p_proto>"
7546
7547 #. type: Plain text
7548 #: build/C/man3/getprotoent.3:105
7549 msgid "The protocol number."
7550 msgstr "プロトコルの番号"
7551
7552 #. type: Plain text
7553 #: build/C/man3/getprotoent.3:114
7554 msgid ""
7555 "The B<getprotoent>(), B<getprotobyname>()  and B<getprotobynumber>()  "
7556 "functions return a pointer to a statically allocated I<protoent> structure, "
7557 "or a NULL pointer if an error occurs or the end of the file is reached."
7558 msgstr ""
7559 "B<getprotoent>(), B<getprotobyname>(), B<getprotobynumber>()  関数は、静的に"
7560 "割り当てられた I<protoent> 構造体へのポインタを返す。 エラーが起こったり、"
7561 "ファイルの最後に達した場合は NULL ポインタを返す。"
7562
7563 #. type: TP
7564 #: build/C/man3/getprotoent.3:116 build/C/man5/protocols.5:77
7565 #, no-wrap
7566 msgid "I</etc/protocols>"
7567 msgstr "I</etc/protocols>"
7568
7569 #. type: Plain text
7570 #: build/C/man3/getprotoent.3:119
7571 msgid "protocol database file"
7572 msgstr "プロトコルのデータベースファイル"
7573
7574 #. type: Plain text
7575 #: build/C/man3/getprotoent.3:127
7576 msgid "B<getnetent>(3), B<getprotoent_r>(3), B<getservent>(3), B<protocols>(5)"
7577 msgstr ""
7578 "B<getnetent>(3), B<getprotoent_r>(3), B<getservent>(3), B<protocols>(5)"
7579
7580 #. type: TH
7581 #: build/C/man3/getprotoent_r.3:24
7582 #, no-wrap
7583 msgid "GETPROTOENT_R"
7584 msgstr "GETPROTOENT_R"
7585
7586 #. type: Plain text
7587 #: build/C/man3/getprotoent_r.3:28
7588 msgid ""
7589 "getprotoent_r, getprotobyname_r, getprotobynumber_r - get protocol entry "
7590 "(reentrant)"
7591 msgstr ""
7592 "getprotoent_r, getprotobyname_r, getprotobynumber_r - get protocol entry "
7593 "(reentrant)"
7594
7595 #. type: Plain text
7596 #: build/C/man3/getprotoent_r.3:34
7597 #, no-wrap
7598 msgid ""
7599 "B<int getprotoent_r(struct protoent *>I<result_buf>B<, char *>I<buf>B<,>\n"
7600 "B<                size_t >I<buflen>B<, struct protoent **>I<result>B<);>\n"
7601 msgstr ""
7602 "B<int getprotoent_r(struct protoent *>I<result_buf>B<, char *>I<buf>B<,>\n"
7603 "B<                size_t >I<buflen>B<, struct protoent **>I<result>B<);>\n"
7604
7605 #. type: Plain text
7606 #: build/C/man3/getprotoent_r.3:38
7607 #, no-wrap
7608 msgid ""
7609 "B<int getprotobyname_r(const char *>I<name>B<,>\n"
7610 "B<                struct protoent *>I<result_buf>B<, char *>I<buf>B<,>\n"
7611 "B<                size_t >I<buflen>B<, struct protoent **>I<result>B<);>\n"
7612 msgstr ""
7613 "B<int getprotobyname_r(const char *>I<name>B<,>\n"
7614 "B<                struct protoent *>I<result_buf>B<, char *>I<buf>B<,>\n"
7615 "B<                size_t >I<buflen>B<, struct protoent **>I<result>B<);>\n"
7616
7617 #. type: Plain text
7618 #: build/C/man3/getprotoent_r.3:42
7619 #, no-wrap
7620 msgid ""
7621 "B<int getprotobynumber_r(int >I<proto>B<,>\n"
7622 "B<                struct protoent *>I<result_buf>B<, char *>I<buf>B<,>\n"
7623 "B<                size_t >I<buflen>B<, struct protoent **>I<result>B<);>\n"
7624 msgstr ""
7625 "B<int getprotobynumber_r(int >I<proto>B<,>\n"
7626 "B<                struct protoent *>I<result_buf>B<, char *>I<buf>B<,>\n"
7627 "B<                size_t >I<buflen>B<, struct protoent **>I<result>B<);>\n"
7628
7629 #. type: Plain text
7630 #: build/C/man3/getprotoent_r.3:53
7631 msgid "B<getprotoent_r>(), B<getprotobyname_r>(), B<getprotobynumber_r>():"
7632 msgstr "B<getprotoent_r>(), B<getprotobyname_r>(), B<getprotobynumber_r>():"
7633
7634 #. type: Plain text
7635 #: build/C/man3/getprotoent_r.3:74
7636 msgid ""
7637 "The B<getprotoent_r>(), B<getprotobyname_r>(), and B<getprotobynumber_r>()  "
7638 "functions are the reentrant equivalents of, respectively, B<getprotoent>(3), "
7639 "B<getprotobyname>(3), and B<getprotobynumber>(3).  They differ in the way "
7640 "that the I<protoent> structure is returned, and in the function calling "
7641 "signature and return value.  This manual page describes just the differences "
7642 "from the nonreentrant functions."
7643 msgstr ""
7644 "The B<getprotoent_r>(), B<getprotobyname_r>(), and B<getprotobynumber_r>()  "
7645 "functions are the reentrant equivalents of, respectively, B<getprotoent>(3), "
7646 "B<getprotobyname>(3), and B<getprotobynumber>(3).  They differ in the way "
7647 "that the I<protoent> structure is returned, and in the function calling "
7648 "signature and return value.  This manual page describes just the differences "
7649 "from the nonreentrant functions."
7650
7651 #. type: Plain text
7652 #: build/C/man3/getprotoent_r.3:80
7653 msgid ""
7654 "Instead of returning a pointer to a statically allocated I<protoent> "
7655 "structure as the function result, these functions copy the structure into "
7656 "the location pointed to by I<result_buf>."
7657 msgstr ""
7658 "Instead of returning a pointer to a statically allocated I<protoent> "
7659 "structure as the function result, these functions copy the structure into "
7660 "the location pointed to by I<result_buf>."
7661
7662 #.  I can find no information on the required/recommended buffer size;
7663 #.  the nonreentrant functions use a 1024 byte buffer.
7664 #.  The 1024 byte value is also what the Solaris man page suggests. -- mtk
7665 #. type: Plain text
7666 #: build/C/man3/getprotoent_r.3:98
7667 msgid ""
7668 "The I<buf> array is used to store the string fields pointed to by the "
7669 "returned I<protoent> structure.  (The nonreentrant functions allocate these "
7670 "strings in static storage.)  The size of this array is specified in "
7671 "I<buflen>.  If I<buf> is too small, the call fails with the error B<ERANGE>, "
7672 "and the caller must try again with a larger buffer.  (A buffer of length "
7673 "1024 bytes should be sufficient for most applications.)"
7674 msgstr ""
7675 "The I<buf> array is used to store the string fields pointed to by the "
7676 "returned I<protoent> structure.  (The nonreentrant functions allocate these "
7677 "strings in static storage.)  The size of this array is specified in "
7678 "I<buflen>.  If I<buf> is too small, the call fails with the error B<ERANGE>, "
7679 "and the caller must try again with a larger buffer.  (A buffer of length "
7680 "1024 bytes should be sufficient for most applications.)"
7681
7682 #. type: Plain text
7683 #: build/C/man3/getprotoent_r.3:106
7684 msgid ""
7685 "If the function call successfully obtains a protocol record, then I<*result> "
7686 "is set pointing to I<result_buf>; otherwise, I<*result> is set to NULL."
7687 msgstr ""
7688 "If the function call successfully obtains a protocol record, then I<*result> "
7689 "is set pointing to I<result_buf>; otherwise, I<*result> is set to NULL."
7690
7691 #. type: Plain text
7692 #: build/C/man3/getprotoent_r.3:117
7693 msgid ""
7694 "On error, record not found (B<getprotobyname_r>(), B<getprotobynumber_r>()), "
7695 "or end of input (B<getprotoent_r>())  I<result> is set to NULL."
7696 msgstr ""
7697 "On error, record not found (B<getprotobyname_r>(), B<getprotobynumber_r>()), "
7698 "or end of input (B<getprotoent_r>())  I<result> is set to NULL."
7699
7700 #. type: Plain text
7701 #: build/C/man3/getprotoent_r.3:122
7702 msgid "(B<getprotoent_r>())  No more records in database."
7703 msgstr "(B<getprotoent_r>())  No more records in database."
7704
7705 #. type: Plain text
7706 #: build/C/man3/getprotoent_r.3:147
7707 msgid ""
7708 "The program below uses B<getprotobyname_r>()  to retrieve the protocol "
7709 "record for the protocol named in its first command-line argument.  If a "
7710 "second (integer) command-line argument is supplied, it is used as the "
7711 "initial value for I<buflen>; if B<getprotobyname_r>()  fails with the error "
7712 "B<ERANGE>, the program retries with larger buffer sizes.  The following "
7713 "shell session shows a couple of sample runs:"
7714 msgstr ""
7715 "The program below uses B<getprotobyname_r>()  to retrieve the protocol "
7716 "record for the protocol named in its first command-line argument.  If a "
7717 "second (integer) command-line argument is supplied, it is used as the "
7718 "initial value for I<buflen>; if B<getprotobyname_r>()  fails with the error "
7719 "B<ERANGE>, the program retries with larger buffer sizes.  The following "
7720 "shell session shows a couple of sample runs:"
7721
7722 #. type: Plain text
7723 #: build/C/man3/getprotoent_r.3:158
7724 #, no-wrap
7725 msgid ""
7726 "$B< ./a.out tcp 1>\n"
7727 "ERANGE! Retrying with larger buffer\n"
7728 "getprotobyname_r() returned: 0 (success)  (buflen=78)\n"
7729 "p_name=tcp; p_proto=6; aliases=TCP\n"
7730 "$B< ./a.out xxx 1>\n"
7731 "ERANGE! Retrying with larger buffer\n"
7732 "getprotobyname_r() returned: 0 (success)  (buflen=100)\n"
7733 "Call failed/record not found\n"
7734 msgstr ""
7735 "$B< ./a.out tcp 1>\n"
7736 "ERANGE! Retrying with larger buffer\n"
7737 "getprotobyname_r() returned: 0 (success)  (buflen=78)\n"
7738 "p_name=tcp; p_proto=6; aliases=TCP\n"
7739 "$B< ./a.out xxx 1>\n"
7740 "ERANGE! Retrying with larger buffer\n"
7741 "getprotobyname_r() returned: 0 (success)  (buflen=100)\n"
7742 "Call failed/record not found\n"
7743
7744 #. type: Plain text
7745 #: build/C/man3/getprotoent_r.3:170 build/C/man3/getservent_r.3:168
7746 #, no-wrap
7747 msgid ""
7748 "#define _GNU_SOURCE\n"
7749 "#include E<lt>ctype.hE<gt>\n"
7750 "#include E<lt>netdb.hE<gt>\n"
7751 "#include E<lt>stdlib.hE<gt>\n"
7752 "#include E<lt>stdio.hE<gt>\n"
7753 "#include E<lt>errno.hE<gt>\n"
7754 "#include E<lt>string.hE<gt>\n"
7755 msgstr ""
7756 "#define _GNU_SOURCE\n"
7757 "#include E<lt>ctype.hE<gt>\n"
7758 "#include E<lt>netdb.hE<gt>\n"
7759 "#include E<lt>stdlib.hE<gt>\n"
7760 "#include E<lt>stdio.hE<gt>\n"
7761 "#include E<lt>errno.hE<gt>\n"
7762 "#include E<lt>string.hE<gt>\n"
7763
7764 #. type: Plain text
7765 #: build/C/man3/getprotoent_r.3:172 build/C/man3/getservent_r.3:170
7766 #, no-wrap
7767 msgid "#define MAX_BUF 10000\n"
7768 msgstr "#define MAX_BUF 10000\n"
7769
7770 #. type: Plain text
7771 #: build/C/man3/getprotoent_r.3:181
7772 #, no-wrap
7773 msgid ""
7774 "int\n"
7775 "main(int argc, char *argv[])\n"
7776 "{\n"
7777 "    int buflen, erange_cnt, s;\n"
7778 "    struct protoent result_buf;\n"
7779 "    struct protoent *result;\n"
7780 "    char buf[MAX_BUF];\n"
7781 "    char **p;\n"
7782 msgstr ""
7783 "int\n"
7784 "main(int argc, char *argv[])\n"
7785 "{\n"
7786 "    int buflen, erange_cnt, s;\n"
7787 "    struct protoent result_buf;\n"
7788 "    struct protoent *result;\n"
7789 "    char buf[MAX_BUF];\n"
7790 "    char **p;\n"
7791
7792 #. type: Plain text
7793 #: build/C/man3/getprotoent_r.3:186
7794 #, no-wrap
7795 msgid ""
7796 "    if (argc E<lt> 2) {\n"
7797 "        printf(\"Usage: %s proto-name [buflen]\\en\", argv[0]);\n"
7798 "        exit(EXIT_FAILURE);\n"
7799 "    }\n"
7800 msgstr ""
7801 "    if (argc E<lt> 2) {\n"
7802 "        printf(\"Usage: %s proto-name [buflen]\\en\", argv[0]);\n"
7803 "        exit(EXIT_FAILURE);\n"
7804 "    }\n"
7805
7806 #. type: Plain text
7807 #: build/C/man3/getprotoent_r.3:190
7808 #, no-wrap
7809 msgid ""
7810 "    buflen = 1024;\n"
7811 "    if (argc E<gt> 2)\n"
7812 "        buflen = atoi(argv[2]);\n"
7813 msgstr ""
7814 "    buflen = 1024;\n"
7815 "    if (argc E<gt> 2)\n"
7816 "        buflen = atoi(argv[2]);\n"
7817
7818 #. type: Plain text
7819 #: build/C/man3/getprotoent_r.3:195 build/C/man3/getservent_r.3:198
7820 #, no-wrap
7821 msgid ""
7822 "    if (buflen E<gt> MAX_BUF) {\n"
7823 "        printf(\"Exceeded buffer limit (%d)\\en\", MAX_BUF);\n"
7824 "        exit(EXIT_FAILURE);\n"
7825 "    }\n"
7826 msgstr ""
7827 "    if (buflen E<gt> MAX_BUF) {\n"
7828 "        printf(\"Exceeded buffer limit (%d)\\en\", MAX_BUF);\n"
7829 "        exit(EXIT_FAILURE);\n"
7830 "    }\n"
7831
7832 #. type: Plain text
7833 #: build/C/man3/getprotoent_r.3:204
7834 #, no-wrap
7835 msgid ""
7836 "    erange_cnt = 0;\n"
7837 "    do {\n"
7838 "        s = getprotobyname_r(argv[1], &result_buf,\n"
7839 "                     buf, buflen, &result);\n"
7840 "        if (s == ERANGE) {\n"
7841 "            if (erange_cnt == 0)\n"
7842 "                printf(\"ERANGE! Retrying with larger buffer\\en\");\n"
7843 "            erange_cnt++;\n"
7844 msgstr ""
7845 "    erange_cnt = 0;\n"
7846 "    do {\n"
7847 "        s = getprotobyname_r(argv[1], &result_buf,\n"
7848 "                     buf, buflen, &result);\n"
7849 "        if (s == ERANGE) {\n"
7850 "            if (erange_cnt == 0)\n"
7851 "                printf(\"ERANGE! Retrying with larger buffer\\en\");\n"
7852 "            erange_cnt++;\n"
7853
7854 #. type: Plain text
7855 #: build/C/man3/getprotoent_r.3:207 build/C/man3/getservent_r.3:210
7856 #, no-wrap
7857 msgid ""
7858 "            /* Increment a byte at a time so we can see exactly\n"
7859 "               what size buffer was required */\n"
7860 msgstr ""
7861 "            /* Increment a byte at a time so we can see exactly\n"
7862 "               what size buffer was required */\n"
7863
7864 #. type: Plain text
7865 #: build/C/man3/getprotoent_r.3:209 build/C/man3/getservent_r.3:212
7866 #, no-wrap
7867 msgid "            buflen++;\n"
7868 msgstr "            buflen++;\n"
7869
7870 #. type: Plain text
7871 #: build/C/man3/getprotoent_r.3:216 build/C/man3/getservent_r.3:219
7872 #, no-wrap
7873 msgid ""
7874 "            if (buflen E<gt> MAX_BUF) {\n"
7875 "                printf(\"Exceeded buffer limit (%d)\\en\", MAX_BUF);\n"
7876 "                exit(EXIT_FAILURE);\n"
7877 "            }\n"
7878 "        }\n"
7879 "    } while (s == ERANGE);\n"
7880 msgstr ""
7881 "            if (buflen E<gt> MAX_BUF) {\n"
7882 "                printf(\"Exceeded buffer limit (%d)\\en\", MAX_BUF);\n"
7883 "                exit(EXIT_FAILURE);\n"
7884 "            }\n"
7885 "        }\n"
7886 "    } while (s == ERANGE);\n"
7887
7888 #. type: Plain text
7889 #: build/C/man3/getprotoent_r.3:220
7890 #, no-wrap
7891 msgid ""
7892 "    printf(\"getprotobyname_r() returned: %s  (buflen=%d)\\en\",\n"
7893 "            (s == 0) ? \"0 (success)\" : (s == ENOENT) ? \"ENOENT\" :\n"
7894 "            strerror(s), buflen);\n"
7895 msgstr ""
7896 "    printf(\"getprotobyname_r() returned: %s  (buflen=%d)\\en\",\n"
7897 "            (s == 0) ? \"0 (success)\" : (s == ENOENT) ? \"ENOENT\" :\n"
7898 "            strerror(s), buflen);\n"
7899
7900 #. type: Plain text
7901 #: build/C/man3/getprotoent_r.3:225 build/C/man3/getservent_r.3:228
7902 #, no-wrap
7903 msgid ""
7904 "    if (s != 0 || result == NULL) {\n"
7905 "        printf(\"Call failed/record not found\\en\");\n"
7906 "        exit(EXIT_FAILURE);\n"
7907 "    }\n"
7908 msgstr ""
7909 "    if (s != 0 || result == NULL) {\n"
7910 "        printf(\"Call failed/record not found\\en\");\n"
7911 "        exit(EXIT_FAILURE);\n"
7912 "    }\n"
7913
7914 #. type: Plain text
7915 #: build/C/man3/getprotoent_r.3:231
7916 #, no-wrap
7917 msgid ""
7918 "    printf(\"p_name=%s; p_proto=%d; aliases=\",\n"
7919 "                result_buf.p_name, result_buf.p_proto);\n"
7920 "    for (p = result_buf.p_aliases; *p != NULL; p++)\n"
7921 "        printf(\"%s \", *p);\n"
7922 "    printf(\"\\en\");\n"
7923 msgstr ""
7924 "    printf(\"p_name=%s; p_proto=%d; aliases=\",\n"
7925 "                result_buf.p_name, result_buf.p_proto);\n"
7926 "    for (p = result_buf.p_aliases; *p != NULL; p++)\n"
7927 "        printf(\"%s \", *p);\n"
7928 "    printf(\"\\en\");\n"
7929
7930 #. type: Plain text
7931 #: build/C/man3/getprotoent_r.3:238
7932 msgid "B<getprotoent>(3), B<protocols>(5)"
7933 msgstr "B<getprotoent>(3), B<protocols>(5)"
7934
7935 #. type: TH
7936 #: build/C/man3/getservent.3:32
7937 #, no-wrap
7938 msgid "GETSERVENT"
7939 msgstr "GETSERVENT"
7940
7941 #. type: Plain text
7942 #: build/C/man3/getservent.3:36
7943 msgid ""
7944 "getservent, getservbyname, getservbyport, setservent, endservent - get "
7945 "service entry"
7946 msgstr ""
7947 "getservent, getservbyname, getservbyport, setservent, endservent - サービスの"
7948 "エントリを取得する"
7949
7950 #. type: Plain text
7951 #: build/C/man3/getservent.3:41
7952 #, no-wrap
7953 msgid "B<struct servent *getservent(void);>\n"
7954 msgstr "B<struct servent *getservent(void);>\n"
7955
7956 #. type: Plain text
7957 #: build/C/man3/getservent.3:43
7958 #, no-wrap
7959 msgid "B<struct servent *getservbyname(const char *>I<name>B<, const char *>I<proto>B<);>\n"
7960 msgstr "B<struct servent *getservbyname(const char *>I<name>B<, const char *>I<proto>B<);>\n"
7961
7962 #. type: Plain text
7963 #: build/C/man3/getservent.3:45
7964 #, no-wrap
7965 msgid "B<struct servent *getservbyport(int >I<port>B<, const char *>I<proto>B<);>\n"
7966 msgstr "B<struct servent *getservbyport(int >I<port>B<, const char *>I<proto>B<);>\n"
7967
7968 #. type: Plain text
7969 #: build/C/man3/getservent.3:47
7970 #, no-wrap
7971 msgid "B<void setservent(int >I<stayopen>B<);>\n"
7972 msgstr "B<void setservent(int >I<stayopen>B<);>\n"
7973
7974 #. type: Plain text
7975 #: build/C/man3/getservent.3:49
7976 #, no-wrap
7977 msgid "B<void endservent(void);>\n"
7978 msgstr "B<void endservent(void);>\n"
7979
7980 #. type: Plain text
7981 #: build/C/man3/getservent.3:58
7982 msgid ""
7983 "The B<getservent>()  function reads the next entry from the services "
7984 "database (see B<services>(5))  and returns a I<servent> structure containing "
7985 "the broken-out fields from the entry.  A connection is opened to the "
7986 "database if necessary."
7987 msgstr ""
7988 "B<getservent>()  関数はサービスのデータベース (B<services>(5)  参照) から次の"
7989 "エントリを読み込み、 そのエントリを I<servent> 構造体の要素別のフィールドに格"
7990 "納し、 その構造体を返す。 必要であれば、データベースへの接続がオープンされ"
7991 "る。"
7992
7993 #. type: Plain text
7994 #: build/C/man3/getservent.3:66
7995 msgid ""
7996 "The B<getservbyname>()  function returns a I<servent> structure for the "
7997 "entry from the database that matches the service I<name> using protocol "
7998 "I<proto>.  If I<proto> is NULL, any protocol will be matched.  A connection "
7999 "is opened to the database if necessary."
8000 msgstr ""
8001 "B<getservbyname>()  関数は、 プロトコル I<proto> を用いるサービスの名前 "
8002 "I<name> にマッチするエントリをデータベースから探し、 そのエントリを収めた "
8003 "I<servent> 構造体を返す。 I<proto> が NULL の場合は、任意のプロトコルにマッチ"
8004 "する。 必要であれば、データベースへの接続がオープンされる。"
8005
8006 #. type: Plain text
8007 #: build/C/man3/getservent.3:75
8008 msgid ""
8009 "The B<getservbyport>()  function returns a I<servent> structure for the "
8010 "entry from the database that matches the port I<port> (given in network byte "
8011 "order)  using protocol I<proto>.  If I<proto> is NULL, any protocol will be "
8012 "matched.  A connection is opened to the database if necessary."
8013 msgstr ""
8014 "B<getservbyport>()  関数は、 プロトコル I<proto> を用いるサービスのポート番"
8015 "号 I<port> にマッチするエントリをデータベースから探し、 そのエントリの内容を"
8016 "収めた I<servent> 構造体を返す (ポート番号 I<port> はネットワーク・バイトオー"
8017 "ダで指定する)。 I<proto> が NULL の場合は任意のプロトコルにマッチする。 必要"
8018 "であれば、データベースへの接続がオープンされる。"
8019
8020 #. type: Plain text
8021 #: build/C/man3/getservent.3:85
8022 msgid ""
8023 "The B<setservent>()  function opens a connection to the database, and sets "
8024 "the next entry to the first entry.  If I<stayopen> is nonzero, then the "
8025 "connection to the database will not be closed between calls to one of the "
8026 "B<getserv*>()  functions."
8027 msgstr ""
8028 "B<setservent>()  関数はデータベースへの接続をオープンし、 次の読み込みエント"
8029 "リを先頭のエントリに設定する。 I<stayopen> が 0 でない場合、 一つ一つの "
8030 "B<getserv*>()  関数の呼び出し間でデータベースへの接続をクローズしない。"
8031
8032 #. type: Plain text
8033 #: build/C/man3/getservent.3:89
8034 msgid "The B<endservent>()  function closes the connection to the database."
8035 msgstr "B<endservent>()  関数はデータベースへの接続をクローズする。"
8036
8037 #. type: Plain text
8038 #: build/C/man3/getservent.3:91
8039 msgid "The I<servent> structure is defined in I<E<lt>netdb.hE<gt>> as follows:"
8040 msgstr ""
8041 "I<servent> 構造体は I<E<lt>netdb.hE<gt>> で以下のように定義されている。"
8042
8043 #. type: Plain text
8044 #: build/C/man3/getservent.3:100
8045 #, no-wrap
8046 msgid ""
8047 "struct servent {\n"
8048 "    char  *s_name;       /* official service name */\n"
8049 "    char **s_aliases;    /* alias list */\n"
8050 "    int    s_port;       /* port number */\n"
8051 "    char  *s_proto;      /* protocol to use */\n"
8052 "}\n"
8053 msgstr ""
8054 "struct servent {\n"
8055 "    char  *s_name;       /* official service name */\n"
8056 "    char **s_aliases;    /* alias list */\n"
8057 "    int    s_port;       /* port number */\n"
8058 "    char  *s_proto;      /* protocol to use */\n"
8059 "}\n"
8060
8061 #. type: Plain text
8062 #: build/C/man3/getservent.3:104
8063 msgid "The members of the I<servent> structure are:"
8064 msgstr "I<servent> 構造体のメンバーは以下の通り。"
8065
8066 #. type: TP
8067 #: build/C/man3/getservent.3:104
8068 #, no-wrap
8069 msgid "I<s_name>"
8070 msgstr "I<s_name>"
8071
8072 #. type: Plain text
8073 #: build/C/man3/getservent.3:107
8074 msgid "The official name of the service."
8075 msgstr "サービスの正式名 (official name)。"
8076
8077 #. type: TP
8078 #: build/C/man3/getservent.3:107
8079 #, no-wrap
8080 msgid "I<s_aliases>"
8081 msgstr "I<s_aliases>"
8082
8083 #. type: Plain text
8084 #: build/C/man3/getservent.3:110
8085 msgid "A NULL-terminated list of alternative names for the service."
8086 msgstr "サービスの別名のリスト。 リストは NULL で終端される。"
8087
8088 #. type: TP
8089 #: build/C/man3/getservent.3:110
8090 #, no-wrap
8091 msgid "I<s_port>"
8092 msgstr "I<s_port>"
8093
8094 #. type: Plain text
8095 #: build/C/man3/getservent.3:113
8096 msgid "The port number for the service given in network byte order."
8097 msgstr "サービスのポート番号。ネットワークバイトオーダで指定される。"
8098
8099 #. type: TP
8100 #: build/C/man3/getservent.3:113
8101 #, no-wrap
8102 msgid "I<s_proto>"
8103 msgstr "I<s_proto>"
8104
8105 #. type: Plain text
8106 #: build/C/man3/getservent.3:116
8107 msgid "The name of the protocol to use with this service."
8108 msgstr "このサービスと共に用いるプロトコルの名前。"
8109
8110 #. type: Plain text
8111 #: build/C/man3/getservent.3:125
8112 msgid ""
8113 "The B<getservent>(), B<getservbyname>()  and B<getservbyport>()  functions "
8114 "return a pointer to a statically allocated I<servent> structure, or a NULL "
8115 "pointer if an error occurs or the end of the file is reached."
8116 msgstr ""
8117 "B<getservent>(), B<getservbyname>(), B<getservbyport>()  関数は、 静的に割り"
8118 "当てられた I<servent> 構造体へのポインタを返す。 エラーが起こったり、ファイル"
8119 "の末尾に達した場合は NULL ポインタを返す。"
8120
8121 #. type: TP
8122 #: build/C/man3/getservent.3:126 build/C/man5/services.5:185
8123 #, no-wrap
8124 msgid "I</etc/services>"
8125 msgstr "I</etc/services>"
8126
8127 #. type: Plain text
8128 #: build/C/man3/getservent.3:129
8129 msgid "services database file"
8130 msgstr "サービスのデータベースファイル"
8131
8132 #. type: Plain text
8133 #: build/C/man3/getservent.3:136
8134 msgid "B<getnetent>(3), B<getprotoent>(3), B<getservent_r>(3), B<services>(5)"
8135 msgstr "B<getnetent>(3), B<getprotoent>(3), B<getservent_r>(3), B<services>(5)"
8136
8137 #. type: TH
8138 #: build/C/man3/getservent_r.3:24
8139 #, no-wrap
8140 msgid "GETSERVENT_R"
8141 msgstr "GETSERVENT_R"
8142
8143 #. type: Plain text
8144 #: build/C/man3/getservent_r.3:28
8145 msgid ""
8146 "getservent_r, getservbyname_r, getservbyport_r - get service entry "
8147 "(reentrant)"
8148 msgstr ""
8149 "getservent_r, getservbyname_r, getservbyport_r - get service entry "
8150 "(reentrant)"
8151
8152 #. type: Plain text
8153 #: build/C/man3/getservent_r.3:34
8154 #, no-wrap
8155 msgid ""
8156 "B<int getservent_r(struct servent *>I<result_buf>B<, char *>I<buf>B<,>\n"
8157 "B<                size_t >I<buflen>B<, struct servent **>I<result>B<);>\n"
8158 msgstr ""
8159 "B<int getservent_r(struct servent *>I<result_buf>B<, char *>I<buf>B<,>\n"
8160 "B<                size_t >I<buflen>B<, struct servent **>I<result>B<);>\n"
8161
8162 #. type: Plain text
8163 #: build/C/man3/getservent_r.3:38
8164 #, no-wrap
8165 msgid ""
8166 "B<int getservbyname_r(const char *>I<name>B<, const char *>I<proto>B<,>\n"
8167 "B<                struct servent *>I<result_buf>B<, char *>I<buf>B<,>\n"
8168 "B<                size_t >I<buflen>B<, struct servent **>I<result>B<);>\n"
8169 msgstr ""
8170 "B<int getservbyname_r(const char *>I<name>B<, const char *>I<proto>B<,>\n"
8171 "B<                struct servent *>I<result_buf>B<, char *>I<buf>B<,>\n"
8172 "B<                size_t >I<buflen>B<, struct servent **>I<result>B<);>\n"
8173
8174 #. type: Plain text
8175 #: build/C/man3/getservent_r.3:42
8176 #, no-wrap
8177 msgid ""
8178 "B<int getservbyport_r(int >I<port>B<, const char *>I<proto>B<,>\n"
8179 "B<                struct servent *>I<result_buf>B<, char *>I<buf>B<,>\n"
8180 "B<                size_t >I<buflen>B<, struct servent **>I<result>B<);>\n"
8181 msgstr ""
8182 "B<int getservbyport_r(int >I<port>B<, const char *>I<proto>B<,>\n"
8183 "B<                struct servent *>I<result_buf>B<, char *>I<buf>B<,>\n"
8184 "B<                size_t >I<buflen>B<, struct servent **>I<result>B<);>\n"
8185
8186 #. type: Plain text
8187 #: build/C/man3/getservent_r.3:53
8188 msgid "B<getservent_r>(), B<getservbyname_r>(), B<getservbyport_r>():"
8189 msgstr "B<getservent_r>(), B<getservbyname_r>(), B<getservbyport_r>():"
8190
8191 #. type: Plain text
8192 #: build/C/man3/getservent_r.3:74
8193 msgid ""
8194 "The B<getservent_r>(), B<getservbyname_r>(), and B<getservbyport_r>()  "
8195 "functions are the reentrant equivalents of, respectively, B<getservent>(3), "
8196 "B<getservbyname>(3), and B<getservbyport>(3).  They differ in the way that "
8197 "the I<servent> structure is returned, and in the function calling signature "
8198 "and return value.  This manual page describes just the differences from the "
8199 "nonreentrant functions."
8200 msgstr ""
8201 "The B<getservent_r>(), B<getservbyname_r>(), and B<getservbyport_r>()  "
8202 "functions are the reentrant equivalents of, respectively, B<getservent>(3), "
8203 "B<getservbyname>(3), and B<getservbyport>(3).  They differ in the way that "
8204 "the I<servent> structure is returned, and in the function calling signature "
8205 "and return value.  This manual page describes just the differences from the "
8206 "nonreentrant functions."
8207
8208 #. type: Plain text
8209 #: build/C/man3/getservent_r.3:80
8210 msgid ""
8211 "Instead of returning a pointer to a statically allocated I<servent> "
8212 "structure as the function result, these functions copy the structure into "
8213 "the location pointed to by I<result_buf>."
8214 msgstr ""
8215 "Instead of returning a pointer to a statically allocated I<servent> "
8216 "structure as the function result, these functions copy the structure into "
8217 "the location pointed to by I<result_buf>."
8218
8219 #.  I can find no information on the required/recommended buffer size;
8220 #.  the nonreentrant functions use a 1024 byte buffer -- mtk.
8221 #. type: Plain text
8222 #: build/C/man3/getservent_r.3:97
8223 msgid ""
8224 "The I<buf> array is used to store the string fields pointed to by the "
8225 "returned I<servent> structure.  (The nonreentrant functions allocate these "
8226 "strings in static storage.)  The size of this array is specified in "
8227 "I<buflen>.  If I<buf> is too small, the call fails with the error B<ERANGE>, "
8228 "and the caller must try again with a larger buffer.  (A buffer of length "
8229 "1024 bytes should be sufficient for most applications.)"
8230 msgstr ""
8231 "The I<buf> array is used to store the string fields pointed to by the "
8232 "returned I<servent> structure.  (The nonreentrant functions allocate these "
8233 "strings in static storage.)  The size of this array is specified in "
8234 "I<buflen>.  If I<buf> is too small, the call fails with the error B<ERANGE>, "
8235 "and the caller must try again with a larger buffer.  (A buffer of length "
8236 "1024 bytes should be sufficient for most applications.)"
8237
8238 #. type: Plain text
8239 #: build/C/man3/getservent_r.3:105
8240 msgid ""
8241 "If the function call successfully obtains a service record, then I<*result> "
8242 "is set pointing to I<result_buf>; otherwise, I<*result> is set to NULL."
8243 msgstr ""
8244 "If the function call successfully obtains a service record, then I<*result> "
8245 "is set pointing to I<result_buf>; otherwise, I<*result> is set to NULL."
8246
8247 #. type: Plain text
8248 #: build/C/man3/getservent_r.3:108
8249 msgid ""
8250 "On success, these functions return 0.  On error, they return one of the "
8251 "positive error numbers listed in errors."
8252 msgstr ""
8253 "On success, these functions return 0.  On error, they return one of the "
8254 "positive error numbers listed in errors."
8255
8256 #. type: Plain text
8257 #: build/C/man3/getservent_r.3:116
8258 msgid ""
8259 "On error, record not found (B<getservbyname_r>(), B<getservbyport_r>()), or "
8260 "end of input (B<getservent_r>())  I<result> is set to NULL."
8261 msgstr ""
8262 "On error, record not found (B<getservbyname_r>(), B<getservbyport_r>()), or "
8263 "end of input (B<getservent_r>())  I<result> is set to NULL."
8264
8265 #. type: Plain text
8266 #: build/C/man3/getservent_r.3:121
8267 msgid "(B<getservent_r>())  No more records in database."
8268 msgstr "(B<getservent_r>())  No more records in database."
8269
8270 #. type: Plain text
8271 #: build/C/man3/getservent_r.3:146
8272 msgid ""
8273 "The program below uses B<getservbyport_r>()  to retrieve the service record "
8274 "for the port and protocol named in its first command-line argument.  If a "
8275 "third (integer) command-line argument is supplied, it is used as the initial "
8276 "value for I<buflen>; if B<getservbyport_r>()  fails with the error "
8277 "B<ERANGE>, the program retries with larger buffer sizes.  The following "
8278 "shell session shows a couple of sample runs:"
8279 msgstr ""
8280 "The program below uses B<getservbyport_r>()  to retrieve the service record "
8281 "for the port and protocol named in its first command-line argument.  If a "
8282 "third (integer) command-line argument is supplied, it is used as the initial "
8283 "value for I<buflen>; if B<getservbyport_r>()  fails with the error "
8284 "B<ERANGE>, the program retries with larger buffer sizes.  The following "
8285 "shell session shows a couple of sample runs:"
8286
8287 #. type: Plain text
8288 #: build/C/man3/getservent_r.3:156
8289 #, no-wrap
8290 msgid ""
8291 "$B< ./a.out 7 tcp 1>\n"
8292 "ERANGE! Retrying with larger buffer\n"
8293 "getservbyport_r() returned: 0 (success)  (buflen=87)\n"
8294 "s_name=echo; s_proto=tcp; s_port=7; aliases=\n"
8295 "$B< ./a.out 77777 tcp>\n"
8296 "getservbyport_r() returned: 0 (success)  (buflen=1024)\n"
8297 "Call failed/record not found\n"
8298 msgstr ""
8299 "$B< ./a.out 7 tcp 1>\n"
8300 "ERANGE! Retrying with larger buffer\n"
8301 "getservbyport_r() returned: 0 (success)  (buflen=87)\n"
8302 "s_name=echo; s_proto=tcp; s_port=7; aliases=\n"
8303 "$B< ./a.out 77777 tcp>\n"
8304 "getservbyport_r() returned: 0 (success)  (buflen=1024)\n"
8305 "Call failed/record not found\n"
8306
8307 #. type: Plain text
8308 #: build/C/man3/getservent_r.3:180
8309 #, no-wrap
8310 msgid ""
8311 "int\n"
8312 "main(int argc, char *argv[])\n"
8313 "{\n"
8314 "    int buflen, erange_cnt, port, s;\n"
8315 "    struct servent result_buf;\n"
8316 "    struct servent *result;\n"
8317 "    char buf[MAX_BUF];\n"
8318 "    char *protop;\n"
8319 "    char **p;\n"
8320 msgstr ""
8321 "int\n"
8322 "main(int argc, char *argv[])\n"
8323 "{\n"
8324 "    int buflen, erange_cnt, port, s;\n"
8325 "    struct servent result_buf;\n"
8326 "    struct servent *result;\n"
8327 "    char buf[MAX_BUF];\n"
8328 "    char *protop;\n"
8329 "    char **p;\n"
8330
8331 #. type: Plain text
8332 #: build/C/man3/getservent_r.3:185
8333 #, no-wrap
8334 msgid ""
8335 "    if (argc E<lt> 3) {\n"
8336 "        printf(\"Usage: %s port-num proto-name [buflen]\\en\", argv[0]);\n"
8337 "        exit(EXIT_FAILURE);\n"
8338 "    }\n"
8339 msgstr ""
8340 "    if (argc E<lt> 3) {\n"
8341 "        printf(\"Usage: %s port-num proto-name [buflen]\\en\", argv[0]);\n"
8342 "        exit(EXIT_FAILURE);\n"
8343 "    }\n"
8344
8345 #. type: Plain text
8346 #: build/C/man3/getservent_r.3:189
8347 #, no-wrap
8348 msgid ""
8349 "    port = htons(atoi(argv[1]));\n"
8350 "    protop = (strcmp(argv[2], \"null\") == 0 ||\n"
8351 "\t      strcmp(argv[2], \"NULL\") == 0) ?  NULL : argv[2];\n"
8352 msgstr ""
8353 "    port = htons(atoi(argv[1]));\n"
8354 "    protop = (strcmp(argv[2], \"null\") == 0 ||\n"
8355 "\t      strcmp(argv[2], \"NULL\") == 0) ?  NULL : argv[2];\n"
8356
8357 #. type: Plain text
8358 #: build/C/man3/getservent_r.3:193
8359 #, no-wrap
8360 msgid ""
8361 "    buflen = 1024;\n"
8362 "    if (argc E<gt> 3)\n"
8363 "        buflen = atoi(argv[3]);\n"
8364 msgstr ""
8365 "    buflen = 1024;\n"
8366 "    if (argc E<gt> 3)\n"
8367 "        buflen = atoi(argv[3]);\n"
8368
8369 #. type: Plain text
8370 #: build/C/man3/getservent_r.3:207
8371 #, no-wrap
8372 msgid ""
8373 "    erange_cnt = 0;\n"
8374 "    do {\n"
8375 "        s = getservbyport_r(port, protop, &result_buf,\n"
8376 "                     buf, buflen, &result);\n"
8377 "        if (s == ERANGE) {\n"
8378 "            if (erange_cnt == 0)\n"
8379 "                printf(\"ERANGE! Retrying with larger buffer\\en\");\n"
8380 "            erange_cnt++;\n"
8381 msgstr ""
8382 "    erange_cnt = 0;\n"
8383 "    do {\n"
8384 "        s = getservbyport_r(port, protop, &result_buf,\n"
8385 "                     buf, buflen, &result);\n"
8386 "        if (s == ERANGE) {\n"
8387 "            if (erange_cnt == 0)\n"
8388 "                printf(\"ERANGE! Retrying with larger buffer\\en\");\n"
8389 "            erange_cnt++;\n"
8390
8391 #. type: Plain text
8392 #: build/C/man3/getservent_r.3:223
8393 #, no-wrap
8394 msgid ""
8395 "    printf(\"getservbyport_r() returned: %s  (buflen=%d)\\en\",\n"
8396 "            (s == 0) ? \"0 (success)\" : (s == ENOENT) ? \"ENOENT\" :\n"
8397 "            strerror(s), buflen);\n"
8398 msgstr ""
8399 "    printf(\"getservbyport_r() returned: %s  (buflen=%d)\\en\",\n"
8400 "            (s == 0) ? \"0 (success)\" : (s == ENOENT) ? \"ENOENT\" :\n"
8401 "            strerror(s), buflen);\n"
8402
8403 #. type: Plain text
8404 #: build/C/man3/getservent_r.3:235
8405 #, no-wrap
8406 msgid ""
8407 "    printf(\"s_name=%s; s_proto=%s; s_port=%d; aliases=\",\n"
8408 "                result_buf.s_name, result_buf.s_proto,\n"
8409 "                ntohs(result_buf.s_port));\n"
8410 "    for (p = result_buf.s_aliases; *p != NULL; p++)\n"
8411 "        printf(\"%s \", *p);\n"
8412 "    printf(\"\\en\");\n"
8413 msgstr ""
8414 "    printf(\"s_name=%s; s_proto=%s; s_port=%d; aliases=\",\n"
8415 "                result_buf.s_name, result_buf.s_proto,\n"
8416 "                ntohs(result_buf.s_port));\n"
8417 "    for (p = result_buf.s_aliases; *p != NULL; p++)\n"
8418 "        printf(\"%s \", *p);\n"
8419 "    printf(\"\\en\");\n"
8420
8421 #. type: Plain text
8422 #: build/C/man3/getservent_r.3:242
8423 msgid "B<getservent>(3), B<services>(5)"
8424 msgstr "B<getservent>(3), B<services>(5)"
8425
8426 #. type: TH
8427 #: build/C/man5/host.conf.5:26
8428 #, no-wrap
8429 msgid "HOST.CONF"
8430 msgstr "HOST.CONF"
8431
8432 #. type: TH
8433 #: build/C/man5/host.conf.5:26
8434 #, no-wrap
8435 msgid "2003-08-23"
8436 msgstr "2003-08-23"
8437
8438 #. type: TH
8439 #: build/C/man5/host.conf.5:26 build/C/man5/networks.5:24
8440 #, no-wrap
8441 msgid "Linux System Administration"
8442 msgstr "Linux System Administration"
8443
8444 #. type: Plain text
8445 #: build/C/man5/host.conf.5:29
8446 msgid "host.conf - resolver configuration file"
8447 msgstr "host.conf - レゾルバ設定ファイル"
8448
8449 #. type: Plain text
8450 #: build/C/man5/host.conf.5:38
8451 msgid ""
8452 "The file I</etc/host.conf> contains configuration information specific to "
8453 "the resolver library.  It should contain one configuration keyword per line, "
8454 "followed by appropriate configuration information.  The keywords recognized "
8455 "are I<order>, I<trim>, I<multi>, I<nospoof>, I<spoof>, and I<reorder>.  "
8456 "These keywords are described below."
8457 msgstr ""
8458 "ファイル I</etc/host.conf> には、レゾルバライブラリの詳細な設定情報が含まれて"
8459 "いる。 このファイルには、1 行毎に 1 つの設定キーワードと それに続く適切な設定"
8460 "情報がなければならない。 認識されるキーワードは I<order>, I<trim>, I<multi>, "
8461 "I<nospoof>, I<spoof>, I<reorder> である。 各キーワードを、以下で説明する。"
8462
8463 #. type: TP
8464 #: build/C/man5/host.conf.5:38
8465 #, no-wrap
8466 msgid "I<order>"
8467 msgstr "I<order>"
8468
8469 #. type: Plain text
8470 #: build/C/man5/host.conf.5:44
8471 msgid ""
8472 "This keyword specifies how host lookups are to be performed.  It should be "
8473 "followed by one or more lookup methods, separated by commas.  Valid methods "
8474 "are I<bind>, I<hosts>, and I<nis>."
8475 msgstr ""
8476 "このキーワードは、ホストのルックアップ方式を指定する。 このキーワードの後に"
8477 "は、コンマで分けた 1 つ以上のルックアップ方式が続かなくてはならない。 使用可"
8478 "能な方式は I<bind>, I<hosts>, I<nis> である。"
8479
8480 #. type: TP
8481 #: build/C/man5/host.conf.5:44
8482 #, no-wrap
8483 msgid "I<trim>"
8484 msgstr "I<trim>"
8485
8486 #. type: Plain text
8487 #: build/C/man5/host.conf.5:61
8488 msgid ""
8489 "This keyword may be listed more than once.  Each time it should be followed "
8490 "by a list of domains, separated by colons (\\(aq:\\(aq), semicolons (\\(aq;"
8491 "\\(aq) or commas (\\(aq,\\(aq), with the leading dot.  When set, the resolv+ "
8492 "library will automatically trim the given domain name from the end of any "
8493 "hostname resolved via DNS.  This is intended for use with local hosts and "
8494 "domains.  (Related note: trim will not affect hostnames gathered via NIS or "
8495 "the hosts file.  Care should be taken to ensure that the first hostname for "
8496 "each entry in the hosts file is fully qualified or unqualified, as "
8497 "appropriate for the local installation.)"
8498 msgstr ""
8499 "このキーワードは、2 回以上リストすることができる。 毎回、このキーワードの後に"
8500 "は、 ドットではじまる 1 つ以上のドメイン名のリストを続けなければならない。 ド"
8501 "メイン名はコロン (\\(aq:\\(aq)、セミコロン (\\(aq;\\(aq)、コンマ (\\(aq,"
8502 "\\(aq)  で区切る。 このキーワードが設定されると、resolv+ ライブラリは DNS で"
8503 "レゾルブされた すべてのホスト名の後ろから与えられたドメイン名を自動的に取り去"
8504 "る。 このキーワードはローカルなホストとドメインで使用することを意図してい"
8505 "る。 (関連した注意 : NIS または hosts ファイルで集められたホスト名に trim は"
8506 "影響しない。 hosts ファイルの各エントリの最初のホスト名を、 完全なドメイン名"
8507 "付きのものにするかしないかは、 ホストごとのインストールポリシーにあわせて 適"
8508 "切に選択する必要がある。注意すること。)"
8509
8510 #. type: TP
8511 #: build/C/man5/host.conf.5:61
8512 #, no-wrap
8513 msgid "I<multi>"
8514 msgstr "I<multi>"
8515
8516 #. type: Plain text
8517 #: build/C/man5/host.conf.5:76
8518 msgid ""
8519 "Valid values are I<on> and I<off>.  If set to I<on>, the resolv+ library "
8520 "will return all valid addresses for a host that appears in the I</etc/hosts> "
8521 "file, instead of only the first.  This is I<off> by default, as it may cause "
8522 "a substantial performance loss at sites with large hosts files."
8523 msgstr ""
8524 "有効な値は I<on> と I<off> である。 I<on> に設定された場合、最初のエントリの"
8525 "みを例外として、 resolv+ ライブラリは I</etc/hosts> ファイルに現れるホストに"
8526 "対して全ての有効なアドレスを返そうとする。 大きな hosts ファイルを持つサイト"
8527 "では、 この設定は非常な性能の低下を招くので、 デフォルトでは I<off> である。"
8528
8529 #. type: TP
8530 #: build/C/man5/host.conf.5:76
8531 #, no-wrap
8532 msgid "I<nospoof>"
8533 msgstr "I<nospoof>"
8534
8535 #. type: Plain text
8536 #: build/C/man5/host.conf.5:91
8537 msgid ""
8538 "Valid values are I<on> and I<off>.  If set to I<on>, the resolv+ library "
8539 "will attempt to prevent hostname spoofing to enhance the security of "
8540 "B<rlogin> and B<rsh>.  It works as follows: after performing a host address "
8541 "lookup, resolv+ will perform a hostname lookup for that address.  If the two "
8542 "hostnames do not match, the query will fail.  The default value is I<off>."
8543 msgstr ""
8544 "有効な値は I<on> と I<off> である。 I<on> に設定された場合、resolv+ ライブラ"
8545 "リは B<rlogin> と B<rsh> のセキュリティを向上させるためホスト名の偽装を防止し"
8546 "ようとする。 これは、「ホストアドレスのルックアップを行った後、 resolv+ はそ"
8547 "のアドレスに対してホスト名のルックアップを行い、 もし 2 つのホスト名が一致し"
8548 "なかった場合は、クエリーは失敗する。」 というように動作する。 デフォルトの値"
8549 "は I<off> である。"
8550
8551 #. type: TP
8552 #: build/C/man5/host.conf.5:91
8553 #, no-wrap
8554 msgid "I<spoofalert>"
8555 msgstr "I<spoofalert>"
8556
8557 #. type: Plain text
8558 #: build/C/man5/host.conf.5:103
8559 msgid ""
8560 "Valid values are I<on> and I<off>.  If this option is set to I<on> and the "
8561 "I<nospoof> option is also set, resolv+ will log a warning of the error via "
8562 "the syslog facility.  The default value is I<off>."
8563 msgstr ""
8564 "有効な値は I<on> と I<off> である。 このオプションが I<on> に設定されてい"
8565 "て、 I<nospoof> オプションも (on に) 設定されている場合、 resolv+ は syslog "
8566 "機能を通じてエラーに関する警告のログをとる。 デフォルトの値は I<off> である。"
8567
8568 #. type: TP
8569 #: build/C/man5/host.conf.5:103
8570 #, no-wrap
8571 msgid "I<spoof>"
8572 msgstr "I<spoof>"
8573
8574 #. type: Plain text
8575 #: build/C/man5/host.conf.5:122
8576 msgid ""
8577 "Valid values are I<off>, I<nowarn> and I<warn>.  If this option is set to "
8578 "I<off>, spoofed addresses are permitted and no warnings will be emitted via "
8579 "the syslog facility.  If this option is set to I<warn>, resolv+ will attempt "
8580 "to prevent hostname spoofing to enhance the security and log a warning of "
8581 "the error via the syslog facility.  If this option is set to I<nowarn>, the "
8582 "resolv+ library will attempt to prevent hostname spoofing to enhance the "
8583 "security but not emit warnings via the syslog facility.  Setting this option "
8584 "to anything else is equal to setting it to I<nowarn>."
8585 msgstr ""
8586 "有効な値は I<off>, I<nowarn>, I<warn> である。 このオプションを I<off> に設定"
8587 "すると、偽装されたアドレスを許可して、 syslog 機能を通じた警告を発しない。 こ"
8588 "のオプションを I<warn> に設定すると、resolv+ はセキュリティを高めるためにホス"
8589 "ト名の偽装を防止し、 syslog 機能を通じてエラーに関する警告のログをとる。 この"
8590 "オプションを I<nowarn> に設定すると、resolv+ はセキュリティを高めるためにホス"
8591 "ト名の偽装を防止するが、 syslog 機能を通じた警告は発しない。 このオプションを"
8592 "何も設定しない場合は、 I<nowarn> を設定したのと同じになる。"
8593
8594 #. type: TP
8595 #: build/C/man5/host.conf.5:122
8596 #, no-wrap
8597 msgid "I<reorder>"
8598 msgstr "I<reorder>"
8599
8600 #. type: Plain text
8601 #: build/C/man5/host.conf.5:135
8602 msgid ""
8603 "Valid values are I<on> and I<off>.  If set to I<on>, resolv+ will attempt to "
8604 "reorder host addresses so that local addresses (i.e., on the same subnet) "
8605 "are listed first when a B<gethostbyname>(3)  is performed.  Reordering is "
8606 "done for all lookup methods.  The default value is I<off>."
8607 msgstr ""
8608 "有効な値は I<on> と I<off> である。 I<on> に設定されると、 B<gethostbyname "
8609 "(3)> が実行されるとき、resolv+ ライブラリは、ローカルな (つまり、同じサブネッ"
8610 "トにある) アドレスが最初にリストされるように ホストアドレスを並べ変える。 す"
8611 "べてのルックアップ方式に対して並べ変えが行われる。 デフォルトの値は、 I<off> "
8612 "である。"
8613
8614 #. type: SH
8615 #: build/C/man5/host.conf.5:135
8616 #, no-wrap
8617 msgid "ENVIRONMENT"
8618 msgstr "環境変数"
8619
8620 #. type: Plain text
8621 #: build/C/man5/host.conf.5:139
8622 msgid ""
8623 "There are six environment variables that can be used to allow users to "
8624 "override the behavior which is configured in I</etc/host.conf>."
8625 msgstr ""
8626 "I</etc/host.conf> で設定されている動作を、ユーザが上書きできる 6 つの環境変数"
8627 "がある。"
8628
8629 #. type: TP
8630 #: build/C/man5/host.conf.5:139
8631 #, no-wrap
8632 msgid "B<RESOLV_HOST_CONF>"
8633 msgstr "B<RESOLV_HOST_CONF>"
8634
8635 #. type: Plain text
8636 #: build/C/man5/host.conf.5:143
8637 msgid ""
8638 "If set this variable points to a file that should be read instead of I</etc/"
8639 "host.conf>."
8640 msgstr ""
8641 "この変数を設定すると、 I</etc/host.conf> の代りに読み込むファイルを設定でき"
8642 "る。"
8643
8644 #. type: TP
8645 #: build/C/man5/host.conf.5:143
8646 #, no-wrap
8647 msgid "B<RESOLV_SERV_ORDER>"
8648 msgstr "B<RESOLV_SERV_ORDER>"
8649
8650 #. type: Plain text
8651 #: build/C/man5/host.conf.5:148
8652 msgid "Overrides the I<order> command."
8653 msgstr "I<order> コマンドを上書きする。"
8654
8655 #. type: TP
8656 #: build/C/man5/host.conf.5:148
8657 #, no-wrap
8658 msgid "B<RESOLV_SPOOF_CHECK>"
8659 msgstr "B<RESOLV_SPOOF_CHECK>"
8660
8661 #. type: Plain text
8662 #: build/C/man5/host.conf.5:157
8663 msgid ""
8664 "Overrides the I<nospoof>, I<spoofalert> and I<spoof> commands in the same "
8665 "way as the I<spoof> command is parsed.  Valid values are I<off>, I<nowarn> "
8666 "and I<warn>."
8667 msgstr ""
8668 "I<spoof> コマンドを解析するのと同じ方式で、 I<nospoof>, I<spoofalert>, "
8669 "I<spoof> コマンドを上書きできる。 有効な値は I<off>, I<nowarn>, I<warn> であ"
8670 "る。"
8671
8672 #. type: TP
8673 #: build/C/man5/host.conf.5:157
8674 #, no-wrap
8675 msgid "B<RESOLV_MULTI>"
8676 msgstr "B<RESOLV_MULTI>"
8677
8678 #. type: Plain text
8679 #: build/C/man5/host.conf.5:162
8680 msgid "Overrides the I<multi> command."
8681 msgstr "I<multi> コマンドを上書きする。"
8682
8683 #. type: TP
8684 #: build/C/man5/host.conf.5:162
8685 #, no-wrap
8686 msgid "B<RESOLV_REORDER>"
8687 msgstr "B<RESOLV_REORDER>"
8688
8689 #. type: Plain text
8690 #: build/C/man5/host.conf.5:167
8691 msgid "Overrides the I<reorder> command."
8692 msgstr "I<reorder> コマンドを上書きする。"
8693
8694 #. type: TP
8695 #: build/C/man5/host.conf.5:167
8696 #, no-wrap
8697 msgid "B<RESOLV_ADD_TRIM_DOMAINS>"
8698 msgstr "B<RESOLV_ADD_TRIM_DOMAINS>"
8699
8700 #. type: Plain text
8701 #: build/C/man5/host.conf.5:172
8702 msgid ""
8703 "A list of domains, separated by colons (\\(aq:\\(aq), semicolons (\\(aq;"
8704 "\\(aq) or commas (\\(aq,\\(aq), with the leading dot, which will be added to "
8705 "the list of domains that should be trimmed."
8706 msgstr ""
8707 "コロン (\\(aq:\\(aq)、セミコロン (\\(aq;\\(aq)、コンマ (\\(aq,\\(aq) で区切っ"
8708 "た ドット (\\(aq.\\(aq) で始まるドメイン名のリスト。 ホスト名から取り去るドメ"
8709 "イン名のリストに追加する。"
8710
8711 #. type: TP
8712 #: build/C/man5/host.conf.5:172
8713 #, no-wrap
8714 msgid "B<RESOLV_OVERRIDE_TRIM_DOMAINS>"
8715 msgstr "B<RESOLV_OVERRIDE_TRIM_DOMAINS>"
8716
8717 #. type: Plain text
8718 #: build/C/man5/host.conf.5:180
8719 msgid ""
8720 "A list of domains, separated by colons (\\(aq:\\(aq), semicolons (\\(aq;"
8721 "\\(aq) or commas (\\(aq,\\(aq), with the leading dot, which will replace the "
8722 "list of domains that should be trimmed.  Overrides the I<trim> command."
8723 msgstr ""
8724 "コロン (\\(aq:\\(aq)、セミコロン (\\(aq;\\(aq)、コンマ (\\(aq,\\(aq) で区切っ"
8725 "た ドット (\\(aq.\\(aq) で始まるドメイン名のリスト。 ホスト名から取り去るドメ"
8726 "イン名のリストを上書きする。 I<trim> コマンドを上書きする。"
8727
8728 #. type: Plain text
8729 #: build/C/man5/host.conf.5:184 build/C/man5/host.conf.5:187
8730 msgid "Resolver configuration file"
8731 msgstr "リゾルバ設定ファイル"
8732
8733 #. type: TP
8734 #: build/C/man5/host.conf.5:184
8735 #, no-wrap
8736 msgid "I</etc/resolv.conf>"
8737 msgstr "I</etc/resolv.conf>"
8738
8739 #. type: Plain text
8740 #: build/C/man5/host.conf.5:190
8741 msgid "Local hosts database"
8742 msgstr "ローカルの hosts データベース"
8743
8744 #. type: Plain text
8745 #: build/C/man5/host.conf.5:199
8746 msgid ""
8747 "The following differences exist compared to the original implementation.  A "
8748 "new command I<spoof> and a new environment variable B<RESOLV_SPOOF_CHECK> "
8749 "can take arguments like I<off>, I<nowarn> and I<warn>.  Line comments can "
8750 "appear anywhere and not only at the beginning of a line."
8751 msgstr ""
8752 "元々の実装に比べて以下のような違いがある。 新しいコマンド I<spoof> と新しい環"
8753 "境変数 B<RESOLV_SPOOF_CHECK> は、引き数 I<off>, I<nowarn>, I<warn> をとる。 "
8754 "コメントは行頭だけではなく、どこに書いてもよい。"
8755
8756 #. type: Plain text
8757 #: build/C/man5/host.conf.5:204
8758 msgid "B<gethostbyname>(3), B<hostname>(7), B<named>(8), B<resolv+>(8)"
8759 msgstr "B<gethostbyname>(3), B<hostname>(7), B<named>(8), B<resolv+>(8)"
8760
8761 #. type: TH
8762 #: build/C/man7/hostname.7:37
8763 #, no-wrap
8764 msgid "HOSTNAME"
8765 msgstr "HOSTNAME"
8766
8767 #. type: TH
8768 #: build/C/man7/hostname.7:37
8769 #, no-wrap
8770 msgid "2010-11-07"
8771 msgstr "2010-11-07"
8772
8773 #. type: Plain text
8774 #: build/C/man7/hostname.7:40
8775 msgid "hostname - hostname resolution description"
8776 msgstr "hostname - hostname resolution description"
8777
8778 #. type: Plain text
8779 #: build/C/man7/hostname.7:44
8780 msgid ""
8781 "Hostnames are domains, where a domain is a hierarchical, dot-separated list "
8782 "of subdomains; for example, the machine monet, in the Berkeley subdomain of "
8783 "the EDU domain would be represented as \"monet.Berkeley.EDU\"."
8784 msgstr ""
8785 "Hostnames are domains, where a domain is a hierarchical, dot-separated list "
8786 "of subdomains; for example, the machine monet, in the Berkeley subdomain of "
8787 "the EDU domain would be represented as \"monet.Berkeley.EDU\"."
8788
8789 #. type: Plain text
8790 #: build/C/man7/hostname.7:53
8791 msgid ""
8792 "Hostnames are often used with network client and server programs, which must "
8793 "generally translate the name to an address for use.  (This task is generally "
8794 "performed by either B<getaddrinfo>(3)  or the obsolete B<gethostbyname>"
8795 "(3).)  Hostnames are resolved by the Internet name resolver in the following "
8796 "fashion."
8797 msgstr ""
8798 "Hostnames are often used with network client and server programs, which must "
8799 "generally translate the name to an address for use.  (This task is generally "
8800 "performed by either B<getaddrinfo>(3)  or the obsolete B<gethostbyname>"
8801 "(3).)  Hostnames are resolved by the Internet name resolver in the following "
8802 "fashion."
8803
8804 #. type: Plain text
8805 #: build/C/man7/hostname.7:66
8806 msgid ""
8807 "If the name consists of a single component, that is, contains no dot, and if "
8808 "the environment variable B<HOSTALIASES> is set to the name of a file, that "
8809 "file is searched for any string matching the input hostname.  The file "
8810 "should consist of lines made up of two white-space separated strings, the "
8811 "first of which is the hostname alias, and the second of which is the "
8812 "complete hostname to be substituted for that alias.  If a case-insensitive "
8813 "match is found between the hostname to be resolved and the first field of a "
8814 "line in the file, the substituted name is looked up with no further "
8815 "processing."
8816 msgstr ""
8817 "If the name consists of a single component, that is, contains no dot, and if "
8818 "the environment variable B<HOSTALIASES> is set to the name of a file, that "
8819 "file is searched for any string matching the input hostname.  The file "
8820 "should consist of lines made up of two white-space separated strings, the "
8821 "first of which is the hostname alias, and the second of which is the "
8822 "complete hostname to be substituted for that alias.  If a case-insensitive "
8823 "match is found between the hostname to be resolved and the first field of a "
8824 "line in the file, the substituted name is looked up with no further "
8825 "processing."
8826
8827 #. type: Plain text
8828 #: build/C/man7/hostname.7:70
8829 msgid ""
8830 "If the input name ends with a trailing dot, the trailing dot is removed, and "
8831 "the remaining name is looked up with no further processing."
8832 msgstr ""
8833 "If the input name ends with a trailing dot, the trailing dot is removed, and "
8834 "the remaining name is looked up with no further processing."
8835
8836 #. type: Plain text
8837 #: build/C/man7/hostname.7:83
8838 msgid ""
8839 "If the input name does not end with a trailing dot, it is looked up by "
8840 "searching through a list of domains until a match is found.  The default "
8841 "search list includes first the local domain, then its parent domains with at "
8842 "least 2 name components (longest first).  For example, in the domain CS."
8843 "Berkeley.EDU, the name lithium.CChem will be checked first as lithium.CChem."
8844 "CS.Berkeley.EDU and then as lithium.CChem.Berkeley.EDU.  Lithium.CChem.EDU "
8845 "will not be tried, as there is only one component remaining from the local "
8846 "domain.  The search path can be changed from the default by a system-wide "
8847 "configuration file (see B<resolver>(5))."
8848 msgstr ""
8849 "If the input name does not end with a trailing dot, it is looked up by "
8850 "searching through a list of domains until a match is found.  The default "
8851 "search list includes first the local domain, then its parent domains with at "
8852 "least 2 name components (longest first).  For example, in the domain CS."
8853 "Berkeley.EDU, the name lithium.CChem will be checked first as lithium.CChem."
8854 "CS.Berkeley.EDU and then as lithium.CChem.Berkeley.EDU.  Lithium.CChem.EDU "
8855 "will not be tried, as there is only one component remaining from the local "
8856 "domain.  The search path can be changed from the default by a system-wide "
8857 "configuration file (see B<resolver>(5))."
8858
8859 #.  .SH HISTORY
8860 #.  Hostname appeared in
8861 #.  4.2BSD.
8862 #. type: Plain text
8863 #: build/C/man7/hostname.7:91
8864 msgid "B<gethostbyname>(3), B<resolver>(5), B<mailaddr>(7), B<named>(8)"
8865 msgstr "B<gethostbyname>(3), B<resolver>(5), B<mailaddr>(7), B<named>(8)"
8866
8867 #. type: TH
8868 #: build/C/man5/hosts.5:27
8869 #, no-wrap
8870 msgid "HOSTS"
8871 msgstr "HOSTS"
8872
8873 #. type: TH
8874 #: build/C/man5/hosts.5:27
8875 #, no-wrap
8876 msgid "2002-06-16"
8877 msgstr "2002-06-16"
8878
8879 #. type: Plain text
8880 #: build/C/man5/hosts.5:30
8881 msgid "hosts - static table lookup for hostnames"
8882 msgstr "hosts - ホスト名の静的なルックアップテーブル"
8883
8884 #. type: Plain text
8885 #: build/C/man5/hosts.5:32
8886 msgid "B</etc/hosts>"
8887 msgstr "B</etc/hosts>"
8888
8889 #. type: Plain text
8890 #: build/C/man5/hosts.5:40
8891 msgid ""
8892 "This manual page describes the format of the I</etc/hosts> file.  This file "
8893 "is a simple text file that associates IP addresses with hostnames, one line "
8894 "per IP address.  For each host a single line should be present with the "
8895 "following information:"
8896 msgstr ""
8897 "このマニュアルページは、 I</etc/hosts> ファイルのフォーマットについて記述して"
8898 "いる。 このファイルは簡単なテキストファイルで、1 行に 1 つの IP アドレスがあ"
8899 "り、 IP アドレスとホスト名を関連づけている。 各ホストについて、次のような情報"
8900 "が 1 行で与えられる。"
8901
8902 #. type: Plain text
8903 #: build/C/man5/hosts.5:43
8904 msgid "IP_address canonical_hostname [aliases...]"
8905 msgstr "IPアドレス 正式なホスト名 [エイリアス...]"
8906
8907 #. type: Plain text
8908 #: build/C/man5/hosts.5:56
8909 msgid ""
8910 "Fields of the entry are separated by any number of blanks and/or tab "
8911 "characters.  Text from a \"#\" character until the end of the line is a "
8912 "comment, and is ignored.  Host names may contain only alphanumeric "
8913 "characters, minus signs (\"-\"), and periods (\".\").  They must begin with "
8914 "an alphabetic character and end with an alphanumeric character.  Optional "
8915 "aliases provide for name changes, alternate spellings, shorter hostnames, or "
8916 "generic hostnames (for example, I<localhost>)."
8917 msgstr ""
8918 "エントリのフィールドは、空白またはタブ (複数でも可) で区切られる。 \"#\" 文字"
8919 "から行末までのテキストはコメントとして無視される。 ホスト名は英数字・マイナス"
8920 "記号 (\"-\")・ピリオド (\".\") を含むことができる。 ホスト名は英文字 "
8921 "(alphabetic character) で始まって、 英数字 (alphanumeric characte) で終わらな"
8922 "ければならない。 エイリアスはオプションであり、名前の変更、別のスペル、 短い"
8923 "ホスト名、一般的に使われるホスト名 (例えば I<localhost>)  などのために用意さ"
8924 "れている。"
8925
8926 #. type: Plain text
8927 #: build/C/man5/hosts.5:64
8928 msgid ""
8929 "The Berkeley Internet Name Domain (BIND) Server implements the Internet name "
8930 "server for UNIX systems.  It augments or replaces the I</etc/hosts> file or "
8931 "hostname lookup, and frees a host from relying on I</etc/hosts> being up to "
8932 "date and complete."
8933 msgstr ""
8934 "Berkeley Internet Name Domain (BIND) サーバは、 UNIX システムのためのインター"
8935 "ネットネームサーバを実装している。 これは、 I</etc/hosts> ファイルやホスト名"
8936 "ルックアップを拡張したり置き換えたりするものである。 これにより各ホストは I</"
8937 "etc/hosts> を最新かつ完全に保たなくてもよくなる。"
8938
8939 #. type: Plain text
8940 #: build/C/man5/hosts.5:67
8941 msgid ""
8942 "In modern systems, even though the host table has been superseded by DNS, it "
8943 "is still widely used for:"
8944 msgstr ""
8945 "ホストテーブルは、DNS にとって代わられたにもかかわらず、 現在のシステムにおい"
8946 "て次のような用途で広く使われている。"
8947
8948 #. type: TP
8949 #: build/C/man5/hosts.5:67
8950 #, no-wrap
8951 msgid "B<bootstrapping>"
8952 msgstr "B<ブート時>"
8953
8954 #. type: Plain text
8955 #: build/C/man5/hosts.5:73
8956 msgid ""
8957 "Most systems have a small host table containing the name and address "
8958 "information for important hosts on the local network.  This is useful when "
8959 "DNS is not running, for example during system bootup."
8960 msgstr ""
8961 "大部分のシステムは、ローカルネットワークにおいて重要なホストの 名前とアドレス"
8962 "が含まれた小さなホストテーブルを持っている。 これは、システムのブート時など"
8963 "の DNS が稼働していないときに役立つ。"
8964
8965 #. type: TP
8966 #: build/C/man5/hosts.5:73
8967 #, no-wrap
8968 msgid "B<NIS>"
8969 msgstr "B<NIS>"
8970
8971 #. type: Plain text
8972 #: build/C/man5/hosts.5:79
8973 msgid ""
8974 "Sites that use NIS use the host table as input to the NIS host database.  "
8975 "Even though NIS can be used with DNS, most NIS sites still use the host "
8976 "table with an entry for all local hosts as a backup."
8977 msgstr ""
8978 "NIS を使用しているサイトは、ホストテーブルを NIS ホストデータベースの入力とし"
8979 "て用いる。 NIS を DNS と共に使用できるにもかかわらず、 大部分の NIS サイトは"
8980 "未だに、 全てのローカルホストのエントリをもつホストテーブルを バックアップと"
8981 "して使用している。"
8982
8983 #. type: TP
8984 #: build/C/man5/hosts.5:79
8985 #, no-wrap
8986 msgid "B<isolated nodes>"
8987 msgstr "B<隔絶されたノード>"
8988
8989 #. type: Plain text
8990 #: build/C/man5/hosts.5:86
8991 msgid ""
8992 "Very small sites that are isolated from the network use the host table "
8993 "instead of DNS.  If the local information rarely changes, and the network is "
8994 "not connected to the Internet, DNS offers little advantage."
8995 msgstr ""
8996 "ネットワークから隔絶された非常に小さなサイトは、 DNS の代わりにホストテーブル"
8997 "を使用している。 ローカル情報が稀にしか変更されず、 ネットワークがインター"
8998 "ネットと接続されていない場合、 DNS にそれほどの利点はない。"
8999
9000 #. type: Plain text
9001 #: build/C/man5/hosts.5:91
9002 msgid ""
9003 "Modifications to this file normally take effect immediately, except in cases "
9004 "where the file is cached by applications."
9005 msgstr ""
9006 "このファイルへの変更は通常すぐに反映される。但し、アプリケーション によりファ"
9007 "イルの内容がキャッシュされている場合はこの限りではない。"
9008
9009 #. type: SS
9010 #: build/C/man5/hosts.5:91
9011 #, no-wrap
9012 msgid "Historical Notes"
9013 msgstr "歴史的な経緯"
9014
9015 #. type: Plain text
9016 #: build/C/man5/hosts.5:94
9017 msgid ""
9018 "RFC\\ 952 gave the original format for the host table, though it has since "
9019 "changed."
9020 msgstr ""
9021 "ホストテーブルのフォーマットはその後変更されているが、 元々のフォーマットは "
9022 "RFC\\ 952 には記載されている。"
9023
9024 #. type: Plain text
9025 #: build/C/man5/hosts.5:107
9026 msgid ""
9027 "Before the advent of DNS, the host table was the only way of resolving "
9028 "hostnames on the fledgling Internet.  Indeed, this file could be created "
9029 "from the official host data base maintained at the Network Information "
9030 "Control Center (NIC), though local changes were often required to bring it "
9031 "up to date regarding unofficial aliases and/or unknown hosts.  The NIC no "
9032 "longer maintains the hosts.txt files, though looking around at the time of "
9033 "writing (circa 2000), there are historical hosts.txt files on the WWW.  I "
9034 "just found three, from 92, 94, and 95."
9035 msgstr ""
9036 "DNS の登場以前、ホストテーブルは、駆け出したばかりのインターネットにおける ホ"
9037 "スト名解決の唯一の方法であった。 実際、このファイルは Network Information "
9038 "Control Center (NIC) によって 管理される公式ホストデータベースから作成するこ"
9039 "とができた。 しかし、非公式なエイリアスや不明なホストを扱えるように、 最新に"
9040 "保つためのローカルな変更が頻繁に必要とされた。 NIC は既に hosts.txt を管理し"
9041 "ていないが、 これを書いている (2000 年頃の) 時点で調べてみると、 WWW 上に歴史"
9042 "的な hosts.txt が存在する。 92, 94, 95 年のものが見つかった。"
9043
9044 #. type: Plain text
9045 #: build/C/man5/hosts.5:114
9046 #, no-wrap
9047 msgid ""
9048 "127.0.0.1       localhost\n"
9049 "192.168.1.10    foo.mydomain.org       foo\n"
9050 "192.168.1.13    bar.mydomain.org       bar\n"
9051 "146.82.138.7    master.debian.org      master\n"
9052 "209.237.226.90  www.opensource.org\n"
9053 msgstr ""
9054 "127.0.0.1       localhost\n"
9055 "192.168.1.10    foo.mydomain.org       foo\n"
9056 "192.168.1.13    bar.mydomain.org       bar\n"
9057 "146.82.138.7    master.debian.org      master\n"
9058 "209.237.226.90  www.opensource.org\n"
9059
9060 #.  .SH AUTHOR
9061 #.  This manual page was written by Manoj Srivastava <srivasta@debian.org>,
9062 #.  for the Debian GNU/Linux system.
9063 #. type: Plain text
9064 #: build/C/man5/hosts.5:125
9065 msgid ""
9066 "B<hostname>(1), B<resolver>(3), B<resolver>(5), B<hostname>(7), B<named>(8), "
9067 "Internet RFC\\ 952"
9068 msgstr ""
9069 "B<hostname>(1), B<resolver>(3), B<resolver>(5), B<hostname>(7), B<named>(8), "
9070 "Internet RFC\\ 952"
9071
9072 #. type: TH
9073 #: build/C/man5/hosts.equiv.5:3
9074 #, no-wrap
9075 msgid "HOSTS.EQUIV"
9076 msgstr "HOSTS.EQUIV"
9077
9078 #. type: TH
9079 #: build/C/man5/hosts.equiv.5:3
9080 #, no-wrap
9081 msgid "2003-08-24"
9082 msgstr "2003-08-24"
9083
9084 #. type: Plain text
9085 #: build/C/man5/hosts.equiv.5:7
9086 msgid ""
9087 "/etc/hosts.equiv - list of hosts and users that are granted \"trusted\" B<r> "
9088 "command access to your system"
9089 msgstr ""
9090 "/etc/hosts.equiv - 「信頼された」B<r> コマンドによるシステムへの アクセスを許"
9091 "可するホストおよびユーザのリスト"
9092
9093 #. type: Plain text
9094 #: build/C/man5/hosts.equiv.5:11
9095 msgid ""
9096 "The B<hosts.equiv> file allows or denies hosts and users to use the B<r>-"
9097 "commands (e.g., B<rlogin>, B<rsh> or B<rcp>) without supplying a password."
9098 msgstr ""
9099 "B<hosts.equiv> ファイルは B<r>-コマンド (B<rlogin>, B<rsh>, B<rcp> など) によ"
9100 "るパスワードなしでの利用を 許可/拒否するホスト/ユーザを設定する。"
9101
9102 #. type: Plain text
9103 #: build/C/man5/hosts.equiv.5:13
9104 msgid "The file uses the following format:"
9105 msgstr "このファイルでは以下の書式を用いる。"
9106
9107 #. type: TP
9108 #: build/C/man5/hosts.equiv.5:13
9109 #, no-wrap
9110 msgid "I<[ + | - ]> I<[hostname]> I<[username]>"
9111 msgstr "I<[ + | - ]> I<[hostname]> I<[username]>"
9112
9113 #. type: Plain text
9114 #: build/C/man5/hosts.equiv.5:27
9115 msgid ""
9116 "The I<hostname> is the name of a host which is logically equivalent to the "
9117 "local host.  Users logged into that host are allowed to access like-named "
9118 "user accounts on the local host without supplying a password.  The "
9119 "I<hostname> may be (optionally) preceded by a plus (+) sign.  If the plus "
9120 "sign is used alone it allows any host to access your system.  You can "
9121 "explicitly deny access to a host by preceding the I<hostname> by a minus (-) "
9122 "sign.  Users from that host must always supply a password.  For security "
9123 "reasons you should always use the FQDN of the hostname and not the short "
9124 "hostname."
9125 msgstr ""
9126 "I<hostname> は、ローカルホストと論理的に等価なホストの名前である。 そのホスト"
9127 "にログインしているユーザは、パスワードなしで ローカルホストの同じ名前のユーザ"
9128 "アカウントにアカウントできる。 I<hostname> の前にはプラス記号 (+) を置いても"
9129 "よい。プラス記号が単独で置かれた場合は、 このシステムへのアクセスをあらゆるホ"
9130 "ストに対して許可したことになる。 アクセスを明示的に拒否するには、 "
9131 "I<hostname> の前にマイナス記号 (-) を付ける。そのホストからのユーザは 常にパ"
9132 "スワードを要求される。セキュリティ上、ホスト名は 短い名前ではなく常に FQDN を"
9133 "使って指定すべきである。"
9134
9135 #. type: Plain text
9136 #: build/C/man5/hosts.equiv.5:39
9137 msgid ""
9138 "The I<username> entry grants a specific user access to all user accounts "
9139 "(except root) without supplying a password.  That means the user is NOT "
9140 "restricted to like-named accounts.  The I<username> may be (optionally) "
9141 "preceded by a plus (+) sign.  You can also explicitly deny access to a "
9142 "specific user by preceding the I<username> with a minus (-) sign.  This says "
9143 "that the user is not trusted no matter what other entries for that host "
9144 "exist."
9145 msgstr ""
9146 "I<username> エントリは、特定のユーザに対して、 (root 以外の) あらゆるユーザア"
9147 "カウント へのアクセスをパスワードなしで許可する。すなわち、そのユーザは同じ名"
9148 "前の アカウント以外にもアクセスできる。 I<username> の前にはプラス記号 (+) を"
9149 "置いてもよい。 特定のユーザからのアクセスを明示的に拒否するには、 "
9150 "I<username> の前にマイナス記号 (-) を付ける。こうすると、 ホストのエントリが"
9151 "なんと言おうとも、そのユーザは信頼されないことになる。"
9152
9153 #. type: Plain text
9154 #: build/C/man5/hosts.equiv.5:41
9155 msgid "Netgroups can be specified by preceding the netgroup by an @ sign."
9156 msgstr "netgroup を指定することもでき、その場合は @ 記号を前につける。"
9157
9158 #. type: Plain text
9159 #: build/C/man5/hosts.equiv.5:47
9160 msgid ""
9161 "Be extremely careful when using the plus (+) sign.  A simple typographical "
9162 "error could result in a standalone plus sign.  A standalone plus sign is a "
9163 "wildcard character that means \"any host\"!"
9164 msgstr ""
9165 "プラス記号 (+) を利用する際にはくれぐれも注意すること。 単純なミスタイプで、"
9166 "単独のプラス記号を置いてしまうことがある。 単独のプラス記号は「すべてのホス"
9167 "ト」を表すワイルドカードになってしまう!"
9168
9169 #. type: Plain text
9170 #: build/C/man5/hosts.equiv.5:49
9171 msgid "I</etc/hosts.equiv>"
9172 msgstr "I</etc/hosts.equiv>"
9173
9174 #. type: Plain text
9175 #: build/C/man5/hosts.equiv.5:54
9176 msgid ""
9177 "Some systems will only honor the contents of this file when it has owner "
9178 "root and no write permission for anybody else.  Some exceptionally paranoid "
9179 "systems even require that there be no other hard links to the file."
9180 msgstr ""
9181 "システムによっては、このファイルの内容が効力を持つのは、 このファイルの所有者"
9182 "が root で、 かつそれ以外に書き込み権限がない場合に限定されていることもあ"
9183 "る。 また、非常に制限がきついシステムでは、このファイルに対する他の ハードリ"
9184 "ンクがないことが要求される場合もある。"
9185
9186 #. type: Plain text
9187 #: build/C/man5/hosts.equiv.5:62
9188 msgid ""
9189 "Modern systems use the Pluggable Authentication Modules library (PAM).  With "
9190 "PAM a standalone plus sign is only considered a wildcard character which "
9191 "means \"any host\" when the word I<promiscuous> is added to the auth "
9192 "component line in your PAM file for the particular service (e.g., B<rlogin>)."
9193 msgstr ""
9194 "最近のシステムでは Pluggable Authentication Modules library (PAM) が 使われて"
9195 "いる。PAM では、単独のプラス記号が「すべてのホスト」を表す ワイルドカードとし"
9196 "て扱われるのは、特定のサービス (例えば B<rlogin>)  用の PAM ファイルで auth "
9197 "行にキーワード I<promiscuous> が追加されている場合のみである。"
9198
9199 #. type: Plain text
9200 #: build/C/man5/hosts.equiv.5:66
9201 msgid "B<rhosts>(5), B<rlogind>(8), B<rshd>(8)"
9202 msgstr "B<rhosts>(5), B<rlogind>(8), B<rshd>(8)"
9203
9204 #. type: TH
9205 #: build/C/man7/icmp.7:7
9206 #, no-wrap
9207 msgid "ICMP"
9208 msgstr "ICMP"
9209
9210 #. type: TH
9211 #: build/C/man7/icmp.7:7
9212 #, no-wrap
9213 msgid "2010-02-25"
9214 msgstr "2010-02-25"
9215
9216 #. type: Plain text
9217 #: build/C/man7/icmp.7:10
9218 msgid "icmp, IPPROTO_ICMP - Linux IPv4 ICMP kernel module."
9219 msgstr "icmp, IPPROTO_ICMP - Linux IPv4 ICMP カーネルモジュール"
9220
9221 #. type: Plain text
9222 #: build/C/man7/icmp.7:18
9223 msgid ""
9224 "This kernel protocol module implements the Internet Control Message Protocol "
9225 "defined in RFC\\ 792.  It is used to signal error conditions and for "
9226 "diagnosis.  The user doesn't interact directly with this module; instead it "
9227 "communicates with the other protocols in the kernel and these pass the ICMP "
9228 "errors to the application layers.  The kernel ICMP module also answers ICMP "
9229 "requests."
9230 msgstr ""
9231 "このカーネルモジュールは RFC\\ 792 で定義されている Internet Control Message "
9232 "Protocol を実装したものである。 このプロトコルはエラー状況を知らせたり診断を"
9233 "行うために用いられる。 ユーザーはこのモジュールとは直接には通信できない。 こ"
9234 "のモジュールはカーネルの他のプロトコルと通信し、 それらのプロトコルが ICMP エ"
9235 "ラーをアプリケーションレイヤに渡す。 カーネルの ICMP モジュールは ICMP リクエ"
9236 "ストに対する応答も行う。"
9237
9238 #. type: Plain text
9239 #: build/C/man7/icmp.7:30
9240 msgid ""
9241 "A user protocol may receive ICMP packets for all local sockets by opening a "
9242 "raw socket with the protocol B<IPPROTO_ICMP>.  See B<raw>(7)  for more "
9243 "information.  The types of ICMP packets passed to the socket can be filtered "
9244 "using the B<ICMP_FILTER> socket option.  ICMP packets are always processed "
9245 "by the kernel too, even when passed to a user socket."
9246 msgstr ""
9247 "raw ソケットをプロトコル B<IPPROTO_ICMP> でオープンすれば、 ユーザープロトコ"
9248 "ルはローカルなソケット全てに対する ICMP パケットを受信することができる。 詳細"
9249 "は B<raw>(7)  を参照のこと。 ソケットに渡される ICMP パケットのタイプは "
9250 "B<ICMP_FILTER> オプションによってフィルターできる。 ICMP パケットは (たとえ"
9251 "ユーザーソケットに渡される場合でも)、 常にカーネルによって (も) 処理される。"
9252
9253 #. type: Plain text
9254 #: build/C/man7/icmp.7:36
9255 msgid ""
9256 "Linux limits the rate of ICMP error packets to each destination.  "
9257 "B<ICMP_REDIRECT> and B<ICMP_DEST_UNREACH> are also limited by the "
9258 "destination route of the incoming packets."
9259 msgstr ""
9260 "Linux では ICMP エラーパケットのレートをそれぞれの送り先に対して 制限してい"
9261 "る。 B<ICMP_REDIRECT> と B<ICMP_DEST_UNREACH> も到着したパケットの行き先経路 "
9262 "(destination route) を制限する。"
9263
9264 #.  FIXME better description needed
9265 #. type: Plain text
9266 #: build/C/man7/icmp.7:49
9267 msgid ""
9268 "ICMP supports a set of I</proc> interfaces to configure some global IP "
9269 "parameters.  The parameters can be accessed by reading or writing files in "
9270 "the directory I</proc/sys/net/ipv4/>.  Most of these parameters are rate "
9271 "limitations for specific ICMP types.  Linux 2.2 uses a token bucket filter "
9272 "to limit ICMPs.  The value is the timeout in jiffies until the token bucket "
9273 "filter is cleared after a burst.  A jiffy is a system dependent unit, "
9274 "usually 10ms on i386 and about 1ms on alpha and ia64."
9275 msgstr ""
9276 "ICMP では、いくつかのグローバルパラメータを設定するための I</proc> ファイル群"
9277 "が用意されている。 これらのパラメータには、 I</proc/sys/net/ipv4/> ディレクト"
9278 "リ内のファイルの読み書きでアクセスできる。 これらのパラメータのほとんどは特定"
9279 "の ICMP タイプに対するレート制限 (rate limitation) である。 Linux 2.2 は "
9280 "ICMP の制限にトークン・バケット・フィルタ (token bucket filter) を用いる。 そ"
9281 "れぞれの値は、バーストの後にトークン・バケット・フィルタがクリア されるまでの"
9282 "タイムアウトを秒単位で表したものである。最小単位(jiffy)は システム依存の単位"
9283 "で i386 システムは通常 10ms、alpha や ia64 では 1ms である。"
9284
9285 #. type: TP
9286 #: build/C/man7/icmp.7:49
9287 #, no-wrap
9288 msgid "I<icmp_destunreach_rate> (Linux 2.2 to 2.4.9)"
9289 msgstr "I<icmp_destunreach_rate> (Linux 2.2 から 2.4.9 まで)"
9290
9291 #.  Precisely: from 2.1.102
9292 #. type: Plain text
9293 #: build/C/man7/icmp.7:58
9294 msgid ""
9295 "Maximum rate to send ICMP Destination Unreachable packets.  This limits the "
9296 "rate at which packets are sent to any individual route or destination.  The "
9297 "limit does not affect sending of B<ICMP_FRAG_NEEDED> packets needed for path "
9298 "MTU discovery."
9299 msgstr ""
9300 "ICMP 不達パケット (Destination Unreachable packet) を送る最大レート。 これは"
9301 "特定のルートまたは行き先にパケットを送信するレートを制限する。 この制限は、 "
9302 "path MTU discovery に必要な B<ICMP_FRAG_NEEDED> パケットの送信には影響しな"
9303 "い。"
9304
9305 #. type: TP
9306 #: build/C/man7/icmp.7:58
9307 #, no-wrap
9308 msgid "I<icmp_echo_ignore_all> (since Linux 2.2)"
9309 msgstr "I<icmp_echo_ignore_all> (Linux 2.2 以降)"
9310
9311 #.  Precisely: 2.1.68
9312 #. type: Plain text
9313 #: build/C/man7/icmp.7:64
9314 msgid "If this value is nonzero, Linux will ignore all B<ICMP_ECHO> requests."
9315 msgstr ""
9316 "この値が非ゼロの場合は、 Linux はすべての B<ICMP_ECHO> 要求を無視する。"
9317
9318 #. type: TP
9319 #: build/C/man7/icmp.7:64
9320 #, no-wrap
9321 msgid "I<icmp_echo_ignore_broadcasts> (since Linux 2.2)"
9322 msgstr "I<icmp_echo_ignore_broadcasts> (Linux 2.2 以降)"
9323
9324 #.  Precisely: from 2.1.68
9325 #. type: Plain text
9326 #: build/C/man7/icmp.7:70
9327 msgid ""
9328 "If this value is nonzero, Linux will ignore all B<ICMP_ECHO> packets sent to "
9329 "broadcast addresses."
9330 msgstr ""
9331 "この値が非ゼロの場合は、 Linux はブロードキャストアドレスに送られたすべての "
9332 "B<ICMP_ECHO> 要求を無視する。"
9333
9334 #. type: TP
9335 #: build/C/man7/icmp.7:70
9336 #, no-wrap
9337 msgid "I<icmp_echoreply_rate> (Linux 2.2 to 2.4.9)"
9338 msgstr "I<icmp_echoreply_rate> (Linux 2.2 から 2.4.9 まで)"
9339
9340 #.  Precisely: from 2.1.102
9341 #. type: Plain text
9342 #: build/C/man7/icmp.7:78
9343 msgid ""
9344 "Maximum rate for sending B<ICMP_ECHOREPLY> packets in response to "
9345 "B<ICMP_ECHOREQUEST> packets."
9346 msgstr ""
9347 "B<ICMP_ECHOREQUEST> パケットに応答する B<ICMP_ECHOREPLY> パケットの最大送信"
9348 "レート。"
9349
9350 #. type: TP
9351 #: build/C/man7/icmp.7:78
9352 #, no-wrap
9353 msgid "I<icmp_errors_use_inbound_ifaddr> (Boolean; default: disabled; since Linux 2.6.12)"
9354 msgstr "I<icmp_errors_use_inbound_ifaddr> (Boolean; default: disabled; Linux 2.6.12 以降)"
9355
9356 #.  The following taken from 2.6.28-rc4 Documentation/networking/ip-sysctl.txt
9357 #. type: Plain text
9358 #: build/C/man7/icmp.7:83
9359 msgid ""
9360 "If disabled, ICMP error messages are sent with the primary address of the "
9361 "exiting interface."
9362 msgstr ""
9363 "これを無効にすると、ICMP エラーメッセージは、 出力インタフェースのプライマリ"
9364 "アドレスで送信される。"
9365
9366 #. type: Plain text
9367 #: build/C/man7/icmp.7:89
9368 msgid ""
9369 "If enabled, the message will be sent with the primary address of the "
9370 "interface that received the packet that caused the ICMP error.  This is the "
9371 "behavior that many network administrators will expect from a router.  And it "
9372 "can make debugging complicated network layouts much easier."
9373 msgstr ""
9374 "これを有効にすると、エラーメッセージは ICMP エラーの原因となったパケットを 受"
9375 "信したインタフェースのプライマアドレスで送信される。 この動作は、多くのネット"
9376 "ワーク管理者がルータに対して期待しているものであり、 これにより複雑なネット"
9377 "ワークレイアウトのデバッグがより容易になる。"
9378
9379 #. type: Plain text
9380 #: build/C/man7/icmp.7:93
9381 msgid ""
9382 "Note that if no primary address exists for the interface selected, then the "
9383 "primary address of the first non-loopback interface that has one will be "
9384 "used regardless of this setting."
9385 msgstr ""
9386 "選択されたインタフェースでプライマリアドレスが存在しない場合は、 この設定に関"
9387 "わらず、最初のループバック以外のインタフェースで、 プライマリアドレスを持つイ"
9388 "ンタフェースのプライマリアドレスが使用される点に 注意すること。"
9389
9390 #. type: TP
9391 #: build/C/man7/icmp.7:93
9392 #, no-wrap
9393 msgid "I<icmp_ignore_bogus_error_responses> (Boolean; default: disabled; since Linux 2.2)"
9394 msgstr "I<icmp_ignore_bogus_error_responses> (Boolean; default: disabled; Linux 2.2 以降)"
9395
9396 #.  precisely: since 2.1.32
9397 #.  The following taken from 2.6.28-rc4 Documentation/networking/ip-sysctl.txt
9398 #. type: Plain text
9399 #: build/C/man7/icmp.7:101
9400 msgid ""
9401 "Some routers violate RFC1122 by sending bogus responses to broadcast "
9402 "frames.  Such violations are normally logged via a kernel warning.  If this "
9403 "parameter is enabled, the kernel will not give such warnings, which will "
9404 "avoid log file clutter."
9405 msgstr ""
9406 "ルータの中には、RFC1122 に違反し、ブロードキャストフレームに対して 偽の応答を"
9407 "送信するものがある。 このような違反は通常カーネルの警告としてログに記録され"
9408 "る。 このパラメータを有効にすると、カーネルはこのような警告を出さなくなり、 "
9409 "ログファイルに雑音のような情報が記録されるのを避けることができる。"
9410
9411 #. type: TP
9412 #: build/C/man7/icmp.7:101
9413 #, no-wrap
9414 msgid "I<icmp_paramprob_rate> (Linux 2.2 to 2.4.9)"
9415 msgstr "I<icmp_paramprob_rate> (Linux 2.2 から 2.4.9 まで)"
9416
9417 #.  Precisely: from 2.1.102
9418 #. type: Plain text
9419 #: build/C/man7/icmp.7:108
9420 msgid ""
9421 "Maximum rate for sending B<ICMP_PARAMETERPROB> packets.  These packets are "
9422 "sent when a packet arrives with an invalid IP header."
9423 msgstr ""
9424 "B<ICMP_PARAMETERPROB> パケットの最大送信レート。 これらのパケットは不正な IP "
9425 "ヘッダを持つパケットが到着した場合に 送信される。"
9426
9427 #. type: TP
9428 #: build/C/man7/icmp.7:108
9429 #, no-wrap
9430 msgid "I<icmp_ratelimit> (integer; default: 1000; since Linux 2.4.10)"
9431 msgstr "I<icmp_ratelimit> (integer; default: 1000; Linux 2.4.10 以降)"
9432
9433 #.  The following taken from 2.6.28-rc4 Documentation/networking/ip-sysctl.txt
9434 #. type: Plain text
9435 #: build/C/man7/icmp.7:116
9436 msgid ""
9437 "Limit the maximum rates for sending ICMP packets whose type matches "
9438 "I<icmp_ratemask> (see below) to specific targets.  0 to disable any "
9439 "limiting, otherwise the minimum space between responses in milliseconds."
9440 msgstr ""
9441 "種別が I<icmp_ratemask> (下記参照) にマッチした ICMP パケットの、 特定の送信"
9442 "先への送信レートの最大値を制限する。 0 はレート制限を無効にすることを、 0 以"
9443 "外の値は応答間の最小間隔 (ミリ秒単位) を示す。"
9444
9445 #. type: TP
9446 #: build/C/man7/icmp.7:116
9447 #, no-wrap
9448 msgid "I<icmp_ratemask> (integer; default: see below; since Linux 2.4.10)"
9449 msgstr "I<icmp_ratemask> (integer; default: 下記参照; Linux 2.4.10 以降)"
9450
9451 #.  The following taken from 2.6.28-rc4 Documentation/networking/ip-sysctl.txt
9452 #. type: Plain text
9453 #: build/C/man7/icmp.7:120
9454 msgid "Mask made of ICMP types for which rates are being limited."
9455 msgstr "レート制限を行う ICMP タイプを決めるマスク。"
9456
9457 #. type: Plain text
9458 #: build/C/man7/icmp.7:122
9459 msgid "Significant bits: IHGFEDCBA9876543210"
9460 msgstr "有効ビット: IHGFEDCBA9876543210"
9461
9462 #. type: Plain text
9463 #: build/C/man7/icmp.7:124
9464 msgid "Default mask: 0000001100000011000 (0x1818)"
9465 msgstr "デフォルトマスク: 0000001100000011000 (0x1818)"
9466
9467 #. type: Plain text
9468 #: build/C/man7/icmp.7:127
9469 msgid "Bit definitions (see the kernel source file I<include/linux/icmp.h>):"
9470 msgstr "ビット定義 (カーネルソースファイル I<include/linux/icmp.h> を参照):"
9471
9472 #. type: Plain text
9473 #: build/C/man7/icmp.7:143
9474 #, no-wrap
9475 msgid ""
9476 "0 Echo Reply\n"
9477 "3 Destination Unreachable *\n"
9478 "4 Source Quench *\n"
9479 "5 Redirect\n"
9480 "8 Echo Request\n"
9481 "B Time Exceeded *\n"
9482 "C Parameter Problem *\n"
9483 "D Timestamp Request\n"
9484 "E Timestamp Reply\n"
9485 "F Info Request\n"
9486 "G Info Reply\n"
9487 "H Address Mask Request\n"
9488 "I Address Mask Reply\n"
9489 msgstr ""
9490 "0 Echo Reply\n"
9491 "3 Destination Unreachable *\n"
9492 "4 Source Quench *\n"
9493 "5 Redirect\n"
9494 "8 Echo Request\n"
9495 "B Time Exceeded *\n"
9496 "C Parameter Problem *\n"
9497 "D Timestamp Request\n"
9498 "E Timestamp Reply\n"
9499 "F Info Request\n"
9500 "G Info Reply\n"
9501 "H Address Mask Request\n"
9502 "I Address Mask Reply\n"
9503
9504 #. type: Plain text
9505 #: build/C/man7/icmp.7:148
9506 msgid ""
9507 "The bits marked with an asterisk are rate limited by default (see the "
9508 "default mask above)."
9509 msgstr ""
9510 "アスタリスク印が付いたビットは、デフォルトでレート制限が有効に なっている (上"
9511 "記のマスクのデフォルトも参照)。"
9512
9513 #. type: TP
9514 #: build/C/man7/icmp.7:148
9515 #, no-wrap
9516 msgid "I<icmp_timeexceed_rate> (Linux 2.2 to 2.4.9)"
9517 msgstr "I<icmp_timeexceed_rate> (Linux 2.2 から 2.4.9 まで)"
9518
9519 #. type: Plain text
9520 #: build/C/man7/icmp.7:155
9521 msgid ""
9522 "Maximum rate for sending B<ICMP_TIME_EXCEEDED> packets.  These packets are "
9523 "sent to prevent loops when a packet has crossed too many hops."
9524 msgstr ""
9525 "B<ICMP_TIME_EXCEEDED> パケットの最大送信レート。 これらのパケットはパケットが"
9526 "あまりに多くの hop を通過した場合に、 ループを防ぐために送られる。"
9527
9528 #. type: Plain text
9529 #: build/C/man7/icmp.7:159
9530 msgid "Support for the B<ICMP_ADDRESS> request was removed in 2.2."
9531 msgstr "B<ICMP_ADDRESS> 要求に対するサポートは 2.2 で削除された。"
9532
9533 #. type: Plain text
9534 #: build/C/man7/icmp.7:163
9535 msgid "Support for B<ICMP_SOURCE_QUENCH> was removed in Linux 2.2."
9536 msgstr "B<ICMP_SOURCE_QUENCH> は Linux 2.2 で削除された。"
9537
9538 #.  not really true ATM
9539 #.  .PP
9540 #.  Linux ICMP should be compliant to RFC 1122.
9541 #. type: Plain text
9542 #: build/C/man7/icmp.7:171
9543 msgid ""
9544 "As many other implementations don't support B<IPPROTO_ICMP> raw sockets, "
9545 "this feature should not be relied on in portable programs."
9546 msgstr ""
9547 "他の多くの実装では、 B<IPPROTO_ICMP> raw ソケットがサポートされていない。 こ"
9548 "の機能は移植性が必要なプログラムでは用いるべきでない。"
9549
9550 #. type: Plain text
9551 #: build/C/man7/icmp.7:176
9552 msgid ""
9553 "B<ICMP_REDIRECT> packets are not sent when Linux is not acting as a router.  "
9554 "They are also only accepted from the old gateway defined in the routing "
9555 "table and the redirect routes are expired after some time."
9556 msgstr ""
9557 "Linux がルーターとして動作していないときには、 B<ICMP_REDIRECT> パケットは送"
9558 "信されない。 またこれらが受け取られるのも、発信元がルーティングテーブルに定義"
9559 "されている 古いゲートウェイで、リダイレクト・ルート (redirect route) が 適当"
9560 "な時間の後に期限切れになっている場合に限られる。"
9561
9562 #. type: Plain text
9563 #: build/C/man7/icmp.7:180
9564 msgid ""
9565 "The 64-bit timestamp returned by B<ICMP_TIMESTAMP> is in milliseconds since "
9566 "the Epoch, 1970-01-01 00:00:00 +0000 (UTC)."
9567 msgstr ""
9568 "B<ICMP_TIMESTAMP> から返される 64 ビットのタイムスタンプは、 紀元 (Epoch) で"
9569 "ある 1970-01-01 00:00:00 +0000 (UTC)  からの経過時間をミリ秒単位で表したもの"
9570 "である。"
9571
9572 #. type: Plain text
9573 #: build/C/man7/icmp.7:185
9574 msgid ""
9575 "Linux ICMP internally uses a raw socket to send ICMPs.  This raw socket may "
9576 "appear in B<netstat>(8)  output with a zero inode."
9577 msgstr ""
9578 "Linux ICMP は ICMP を送るために内部で raw ソケットを用いる。 raw ソケットは "
9579 "B<netstat>(8)  の出力に 0 inode として出力される。"
9580
9581 #. type: Plain text
9582 #: build/C/man7/icmp.7:187
9583 msgid "B<ip>(7)"
9584 msgstr "B<ip>(7)"
9585
9586 #. type: Plain text
9587 #: build/C/man7/icmp.7:189
9588 msgid "RFC\\ 792 for a description of the ICMP protocol."
9589 msgstr "B<RFC\\ 792>: ICMP プロトコルの説明"
9590
9591 #. type: TH
9592 #: build/C/man3/inet.3:42
9593 #, no-wrap
9594 msgid "INET"
9595 msgstr "INET"
9596
9597 #. type: TH
9598 #: build/C/man3/inet.3:42
9599 #, no-wrap
9600 msgid "2008-06-19"
9601 msgstr "2008-06-19"
9602
9603 #. type: Plain text
9604 #: build/C/man3/inet.3:46
9605 msgid ""
9606 "inet_aton, inet_addr, inet_network, inet_ntoa, inet_makeaddr, inet_lnaof, "
9607 "inet_netof - Internet address manipulation routines"
9608 msgstr ""
9609 "inet_aton, inet_addr, inet_network, inet_ntoa, inet_makeaddr, inet_lnaof, "
9610 "inet_netof - インターネットアドレス操作ルーチン"
9611
9612 #. type: Plain text
9613 #: build/C/man3/inet.3:51
9614 #, no-wrap
9615 msgid ""
9616 "B<#include E<lt>sys/socket.hE<gt>>\n"
9617 "B<#include E<lt>netinet/in.hE<gt>>\n"
9618 "B<#include E<lt>arpa/inet.hE<gt>>\n"
9619 msgstr ""
9620 "B<#include E<lt>sys/socket.hE<gt>>\n"
9621 "B<#include E<lt>netinet/in.hE<gt>>\n"
9622 "B<#include E<lt>arpa/inet.hE<gt>>\n"
9623
9624 #. type: Plain text
9625 #: build/C/man3/inet.3:53
9626 #, no-wrap
9627 msgid "B<int inet_aton(const char *>I<cp>B<, struct in_addr *>I<inp>B<);>\n"
9628 msgstr "B<int inet_aton(const char *>I<cp>B<, struct in_addr *>I<inp>B<);>\n"
9629
9630 #. type: Plain text
9631 #: build/C/man3/inet.3:55
9632 #, no-wrap
9633 msgid "B<in_addr_t inet_addr(const char *>I<cp>B<);>\n"
9634 msgstr "B<in_addr_t inet_addr(const char *>I<cp>B<);>\n"
9635
9636 #. type: Plain text
9637 #: build/C/man3/inet.3:57
9638 #, no-wrap
9639 msgid "B<in_addr_t inet_network(const char *>I<cp>B<);>\n"
9640 msgstr "B<in_addr_t inet_network(const char *>I<cp>B<);>\n"
9641
9642 #. type: Plain text
9643 #: build/C/man3/inet.3:59
9644 #, no-wrap
9645 msgid "B<char *inet_ntoa(struct in_addr >I<in>B<);>\n"
9646 msgstr "B<char *inet_ntoa(struct in_addr >I<in>B<);>\n"
9647
9648 #. type: Plain text
9649 #: build/C/man3/inet.3:61
9650 #, no-wrap
9651 msgid "B<struct in_addr inet_makeaddr(int >I<net>B<, int >I<host>B<);>\n"
9652 msgstr "B<struct in_addr inet_makeaddr(int >I<net>B<, int >I<host>B<);>\n"
9653
9654 #. type: Plain text
9655 #: build/C/man3/inet.3:63
9656 #, no-wrap
9657 msgid "B<in_addr_t inet_lnaof(struct in_addr >I<in>B<);>\n"
9658 msgstr "B<in_addr_t inet_lnaof(struct in_addr >I<in>B<);>\n"
9659
9660 #. type: Plain text
9661 #: build/C/man3/inet.3:65
9662 #, no-wrap
9663 msgid "B<in_addr_t inet_netof(struct in_addr >I<in>B<);>\n"
9664 msgstr "B<in_addr_t inet_netof(struct in_addr >I<in>B<);>\n"
9665
9666 #. type: Plain text
9667 #: build/C/man3/inet.3:75
9668 msgid "B<inet_aton>(), B<inet_ntoa>(): _BSD_SOURCE || _SVID_SOURCE"
9669 msgstr "B<inet_aton>(), B<inet_ntoa>(): _BSD_SOURCE || _SVID_SOURCE"
9670
9671 #. type: Plain text
9672 #: build/C/man3/inet.3:85
9673 msgid ""
9674 "B<inet_aton>()  converts the Internet host address I<cp> from the IPv4 "
9675 "numbers-and-dots notation into binary form (in network byte order)  and "
9676 "stores it in the structure that I<inp> points to.  B<inet_aton>()  returns "
9677 "nonzero if the address is valid, zero if not.  The address supplied in I<cp> "
9678 "can have one of the following forms:"
9679 msgstr ""
9680 "B<inet_aton>()  は、インターネットホストのアドレス I<cp> を、 IPv4 の数値と"
9681 "ドットによる表記から (ネットワークバイトオーダの) バイナリ値へ 変換し、変換結"
9682 "果を I<inp> が指している構造体に格納する。 アドレスが有効な場合 0 以外を返"
9683 "し、そうでない場合は 0 を返す。 I<cp> で渡すアドレスとして、以下の形式を用い"
9684 "ることができる。"
9685
9686 #. type: TP
9687 #: build/C/man3/inet.3:85
9688 #, no-wrap
9689 msgid "I<a.b.c.d>"
9690 msgstr "I<a.b.c.d>"
9691
9692 #. type: Plain text
9693 #: build/C/man3/inet.3:89
9694 msgid ""
9695 "Each of the four numeric parts specifies a byte of the address; the bytes "
9696 "are assigned in left-to-right order to produce the binary address."
9697 msgstr ""
9698 "4 つの数字のそれぞれはアドレスの各バイトを示す。 これらのバイトは左から右の順"
9699 "序でバイナリアドレスに割り当てられる。"
9700
9701 #. type: TP
9702 #: build/C/man3/inet.3:89
9703 #, no-wrap
9704 msgid "I<a.b.c>"
9705 msgstr "I<a.b.c>"
9706
9707 #. type: Plain text
9708 #: build/C/man3/inet.3:102
9709 msgid ""
9710 "Parts I<a> and I<b> specify the first two bytes of the binary address.  Part "
9711 "I<c> is interpreted as a 16-bit value that defines the rightmost two bytes "
9712 "of the binary address.  This notation is suitable for specifying (outmoded) "
9713 "Class B network addresses."
9714 msgstr ""
9715 "I<a> と I<b> はバイナリアドレスの最初の 2 バイトを示す。 I<c> は 16 ビット値"
9716 "と解釈され、バイナリアドレスの右側の 2 バイトを表す。 この表記は、(過去のもの"
9717 "となった) クラス B ネットワークアドレスを 指定するのに適している。"
9718
9719 #. type: TP
9720 #: build/C/man3/inet.3:102
9721 #, no-wrap
9722 msgid "I<a.b>"
9723 msgstr "I<a.b>"
9724
9725 #. type: Plain text
9726 #: build/C/man3/inet.3:113
9727 msgid ""
9728 "Part I<a> specifies the first byte of the binary address.  Part I<b> is "
9729 "interpreted as a 24-bit value that defines the rightmost three bytes of the "
9730 "binary address.  This notation is suitable for specifying (outmoded) Class C "
9731 "network addresses."
9732 msgstr ""
9733 "I<a> はバイナリアドレスの最初のバイトを示す。 I<b> は 24 ビット値と解釈され、"
9734 "バイナリアドレスの右側の 3 バイトを表す。 この表記は、(過去のものとなった) ク"
9735 "ラス C ネットワークアドレスを 指定するのに適している。"
9736
9737 #. type: TP
9738 #: build/C/man3/inet.3:113
9739 #, no-wrap
9740 msgid "I<a>"
9741 msgstr "I<a>"
9742
9743 #. type: Plain text
9744 #: build/C/man3/inet.3:119
9745 msgid ""
9746 "The value I<a> is interpreted as a 32-bit value that is stored directly into "
9747 "the binary address without any byte rearrangement."
9748 msgstr ""
9749 "値 I<a> は 32 ビット値と解釈され、バイトの再配置は行われず、 そのままバイナリ"
9750 "アドレスとして格納される。"
9751
9752 #. type: Plain text
9753 #: build/C/man3/inet.3:132
9754 msgid ""
9755 "In all of the above forms, components of the dotted address can be specified "
9756 "in decimal, octal (with a leading I<0>), or hexadecimal, with a leading "
9757 "I<0X>).  Addresses in any of these forms are collectively termed I<IPV4 "
9758 "numbers-and-dots notation>.  The form that uses exactly four decimal numbers "
9759 "is referred to as I<IPv4 dotted-decimal notation> (or sometimes: I<IPv4 "
9760 "dotted-quad notation>)."
9761 msgstr ""
9762 "上記の全ての形式で、ドット区切りのアドレスの各要素は、10 進数、 8 進数 (先頭"
9763 "に I<0> を付ける)、 16 進数 (先頭に I<0X> を付ける) で指定できる。 これらの形"
9764 "式のアドレスをまとめて I<IPv4 の数値とドットによる表記 (IPv4 numbers-and-"
9765 "dots notation)> と呼ぶ。 また、10 進数 4 つだけを使った形式を I<IPv4 のドット"
9766 "区切りの 10 進数表記 (IPv4 dotted-decimal notation)> と呼ぶ (I<IPv4 のドット"
9767 "区切り 4 分割表記 (IPv4 dotted-decimal notation)> と呼ぶこともある)。"
9768
9769 #. type: Plain text
9770 #: build/C/man3/inet.3:149
9771 msgid ""
9772 "The B<inet_addr>()  function converts the Internet host address I<cp> from "
9773 "IPv4 numbers-and-dots notation into binary data in network byte order.  If "
9774 "the input is invalid, B<INADDR_NONE> (usually -1) is returned.  Use of this "
9775 "function is problematic because -1 is a valid address (255.255.255.255).  "
9776 "Avoid its use in favor of B<inet_aton>(), B<inet_pton>(3), or B<getaddrinfo>"
9777 "(3)  which provide a cleaner way to indicate error return."
9778 msgstr ""
9779 "B<inet_addr>()  関数は、インターネットホストのアドレス I<cp> を、 IPv4 の数値"
9780 "とドットによる表記からネットワークバイトオーダでの バイナリ値へ変換して返"
9781 "す。 入力が不正な場合、 B<INADDR_NONE> (普通は -1) を返す。 -1 は有効なアドレ"
9782 "ス (255.255.255.255) なので、この関数を使うと 問題になるかもしれない。 この関"
9783 "数を使うのは避け、代わりに B<inet_aton>(), B<inet_pton>(3), B<getaddrinfo>"
9784 "(3)  を使うのがよい。 これらの関数の方が、エラーの通知がよりきれいな方法で行"
9785 "われる。"
9786
9787 #. type: Plain text
9788 #: build/C/man3/inet.3:159
9789 msgid ""
9790 "The B<inet_network>()  function converts I<cp>, a string in IPv4 numbers-and-"
9791 "dots notation, into a number in host byte order suitable for use as an "
9792 "Internet network address.  On success, the converted address is returned.  "
9793 "If the input is invalid, -1 is returned."
9794 msgstr ""
9795 "B<inet_network>()  関数は、 IPv4 の数値とドットによる表記の文字列 I<cp> を、 "
9796 "インターネットアドレスとしての使用に適した ホストバイトオーダの数値に変換す"
9797 "る。 成功すると、変換されたアドレスを返す。 入力が不正な場合は -1 を返す。"
9798
9799 #. type: Plain text
9800 #: build/C/man3/inet.3:167
9801 msgid ""
9802 "The B<inet_ntoa>()  function converts the Internet host address I<in>, given "
9803 "in network byte order, to a string in IPv4 dotted-decimal notation.  The "
9804 "string is returned in a statically allocated buffer, which subsequent calls "
9805 "will overwrite."
9806 msgstr ""
9807 "B<inet_ntoa>()  関数は、ネットワークバイトオーダで渡されたインターネットホス"
9808 "トアドレス I<in> を、 IPv4 のドット区切りの 10 進数表記の文字列に変換する。 "
9809 "文字列は静的に割当てられたバッファに格納されて返されるので、 この後でこの関数"
9810 "を再度呼び出すと文字列は上書きされる。"
9811
9812 #. type: Plain text
9813 #: build/C/man3/inet.3:173
9814 msgid ""
9815 "The B<inet_lnaof>()  function returns the local network address part of the "
9816 "Internet address I<in>.  The returned value is in host byte order."
9817 msgstr ""
9818 "B<inet_lnaof>()  関数は、インターネットアドレス I<in> のローカルネットワーク"
9819 "部分を返す。 この返り値はホストバイトオーダである。"
9820
9821 #. type: Plain text
9822 #: build/C/man3/inet.3:179
9823 msgid ""
9824 "The B<inet_netof>()  function returns the network number part of the "
9825 "Internet address I<in>.  The returned value is in host byte order."
9826 msgstr ""
9827 "B<inet_netof>()  関数は、インターネットアドレス I<in> のネットワーク部分を返"
9828 "す。 この返り値はホストバイトオーダである。"
9829
9830 #. type: Plain text
9831 #: build/C/man3/inet.3:190
9832 msgid ""
9833 "The B<inet_makeaddr>()  function is the converse of B<inet_netof>()  and "
9834 "B<inet_lnaof>().  It returns an Internet host address in network byte order, "
9835 "created by combining the network number I<net> with the local address "
9836 "I<host>, both in host byte order."
9837 msgstr ""
9838 "B<inet_makeaddr>()  関数は B<inet_netof>()  と B<inet_lnaof>()  の逆の機能を"
9839 "持つ。 ネットワーク番号 I<net> と、ローカルアドレス I<host> を 組み合わせて生"
9840 "成した、インターネットホストアドレスを ネットワークバイトオーダで返す。 "
9841 "I<host>, I<net> はともにホストバイトオーダである。"
9842
9843 #. type: Plain text
9844 #: build/C/man3/inet.3:200
9845 msgid ""
9846 "The structure I<in_addr> as used in B<inet_ntoa>(), B<inet_makeaddr>(), "
9847 "B<inet_lnaof>()  and B<inet_netof>()  is defined in I<E<lt>netinet/in."
9848 "hE<gt>> as:"
9849 msgstr ""
9850 "B<inet_ntoa>(), B<inet_makeaddr>(), B<inet_lnaof>(), B<inet_netof>()  で使用"
9851 "する構造体 I<in_addr> は I<E<lt>netinet/in.hE<gt>> で次のように定義されてい"
9852 "る:"
9853
9854 #. type: Plain text
9855 #: build/C/man3/inet.3:204
9856 #, no-wrap
9857 msgid "typedef uint32_t in_addr_t;\n"
9858 msgstr "typedef uint32_t in_addr_t;\n"
9859
9860 #. type: Plain text
9861 #: build/C/man3/inet.3:208
9862 #, no-wrap
9863 msgid ""
9864 "struct in_addr {\n"
9865 "    in_addr_t s_addr;\n"
9866 "};\n"
9867 msgstr ""
9868 "struct in_addr {\n"
9869 "    in_addr_t s_addr;\n"
9870 "};\n"
9871
9872 #. type: Plain text
9873 #: build/C/man3/inet.3:218
9874 msgid ""
9875 "4.3BSD.  B<inet_addr>()  and B<inet_ntoa>()  are specified in POSIX.1-2001.  "
9876 "B<inet_aton>()  is not specified in POSIX.1-2001, but is available on most "
9877 "systems."
9878 msgstr ""
9879 "4.3BSD.  B<inet_addr>(), B<inet_ntoa>()  は POSIX.1-2001 で規定されている。 "
9880 "B<inet_aton>()  は POSIX.1-2001 で規定されていないが、ほとんどのシステムで利"
9881 "用可能である。"
9882
9883 #. type: Plain text
9884 #: build/C/man3/inet.3:222
9885 msgid ""
9886 "On the i386 the host byte order is Least Significant Byte first (little "
9887 "endian), whereas the network byte order, as used on the Internet, is Most "
9888 "Significant Byte first (big endian)."
9889 msgstr ""
9890 "i386 ではホストバイトオーダは Least Significant Byte (LSB) first (リトルエン"
9891 "ディアン) だが、 インターネットで使われるネットワークバイトオーダは Most "
9892 "Significant Byte (MSB) first (ビッグエンディアン)  である点に注意すること。"
9893
9894 #. type: Plain text
9895 #: build/C/man3/inet.3:231
9896 msgid ""
9897 "B<inet_lnaof>(), B<inet_netof>(), and B<inet_makeaddr>()  are legacy "
9898 "functions that assume they are dealing with I<classful network addresses>.  "
9899 "Classful networking divides IPv4 network addresses into host and network "
9900 "components at byte boundaries, as follows:"
9901 msgstr ""
9902 "B<inet_lnaof>(), B<inet_netof>(), B<inet_makeaddr>()  は過去の名残であり、渡"
9903 "されたアドレスが I<クラスフル・ネットワークアドレス (classful network "
9904 "addresses)> であると仮定して処理を行う。 クラスフル・ネットワークアドレスで"
9905 "は、以下にあるように、 IPv4 ネットワークアドレスをバイト境界でネットワーク部"
9906 "とホスト部に分割する。"
9907
9908 #. type: TP
9909 #: build/C/man3/inet.3:231
9910 #, no-wrap
9911 msgid "Class A"
9912 msgstr "Class A"
9913
9914 #. type: Plain text
9915 #: build/C/man3/inet.3:237
9916 msgid ""
9917 "This address type is indicated by the value 0 in the most significant bit of "
9918 "the (network byte ordered) address.  The network address is contained in the "
9919 "most significant byte, and the host address occupies the remaining three "
9920 "bytes."
9921 msgstr ""
9922 "(ネットワークバイトオーダの) アドレスの最上位ビットが 0 の場合、 このアドレス"
9923 "種別となる。このアドレス種別では、 最上位バイトがネットワークアドレスを表"
9924 "し、 残りの 3 バイトがホストアドレスを表す。"
9925
9926 #. type: TP
9927 #: build/C/man3/inet.3:237
9928 #, no-wrap
9929 msgid "Class B"
9930 msgstr "Class B"
9931
9932 #. type: Plain text
9933 #: build/C/man3/inet.3:243
9934 msgid ""
9935 "This address type is indicated by the binary value 10 in the most "
9936 "significant two bits of the address.  The network address is contained in "
9937 "the two most significant bytes, and the host address occupies the remaining "
9938 "two bytes."
9939 msgstr ""
9940 "(ネットワークバイトオーダの) アドレスの上位側 2 ビットがバイナリ値で 10 の場"
9941 "合、このアドレス種別となる。このアドレス種別では、 上位 2 バイトがネットワー"
9942 "クアドレスを表し、 残りの 2 バイトがホストアドレスを表す。"
9943
9944 #. type: TP
9945 #: build/C/man3/inet.3:243
9946 #, no-wrap
9947 msgid "Class C"
9948 msgstr "Class C"
9949
9950 #. type: Plain text
9951 #: build/C/man3/inet.3:249
9952 msgid ""
9953 "This address type is indicated by the binary value 110 in the most "
9954 "significant three bits of the address.  The network address is contained in "
9955 "the three most significant bytes, and the host address occupies the "
9956 "remaining byte."
9957 msgstr ""
9958 "(ネットワークバイトオーダの) アドレスの上位側 3 ビットがバイナリ値で 110 の場"
9959 "合、このアドレス種別となる。このアドレス種別では、 上位 3 バイトがネットワー"
9960 "クアドレスを表し、 残りの 1 バイトがホストアドレスを表す。"
9961
9962 #. type: Plain text
9963 #: build/C/man3/inet.3:254
9964 msgid ""
9965 "Classful network addresses are now obsolete, having been superseded by "
9966 "Classless Inter-Domain Routing (CIDR), which divides addresses into network "
9967 "and host components at arbitrary bit (rather than byte) boundaries."
9968 msgstr ""
9969 "クラスフル・ネットワークアドレスは現在では廃止され、 クラスレス・ドメイン間"
9970 "ルーチン (CIDR) に取って代わられた。 CIDR では、アドレスを任意のビット境界 "
9971 "(バイト境界ではない) で ネットワーク部とホスト部に分割する。"
9972
9973 #. type: Plain text
9974 #: build/C/man3/inet.3:261
9975 msgid ""
9976 "An example of the use of B<inet_aton>()  and B<inet_ntoa>()  is shown "
9977 "below.  Here are some example runs:"
9978 msgstr ""
9979 "以下は B<inet_aton>()  と B<inet_ntoa>()  の使用例である。このように実行す"
9980 "る。"
9981
9982 #. type: Plain text
9983 #: build/C/man3/inet.3:268
9984 #, no-wrap
9985 msgid ""
9986 "$B< ./a.out 226.000.000.037>      # Last byte is in octal\n"
9987 "226.0.0.31\n"
9988 "$B< ./a.out 0x7f.1         >      # First byte is in hex\n"
9989 "127.0.0.1\n"
9990 msgstr ""
9991 "$B< ./a.out 226.000.000.037>      # Last byte is in octal\n"
9992 "226.0.0.31\n"
9993 "$B< ./a.out 0x7f.1         >      # First byte is in hex\n"
9994 "127.0.0.1\n"
9995
9996 #. type: Plain text
9997 #: build/C/man3/inet.3:277
9998 #, no-wrap
9999 msgid ""
10000 "#define _BSD_SOURCE\n"
10001 "#include E<lt>arpa/inet.hE<gt>\n"
10002 "#include E<lt>stdio.hE<gt>\n"
10003 "#include E<lt>stdlib.hE<gt>\n"
10004 msgstr ""
10005 "#define _BSD_SOURCE\n"
10006 "#include E<lt>arpa/inet.hE<gt>\n"
10007 "#include E<lt>stdio.hE<gt>\n"
10008 "#include E<lt>stdlib.hE<gt>\n"
10009
10010 #. type: Plain text
10011 #: build/C/man3/inet.3:282
10012 #, no-wrap
10013 msgid ""
10014 "int\n"
10015 "main(int argc, char *argv[])\n"
10016 "{\n"
10017 "    struct in_addr addr;\n"
10018 msgstr ""
10019 "int\n"
10020 "main(int argc, char *argv[])\n"
10021 "{\n"
10022 "    struct in_addr addr;\n"
10023
10024 #. type: Plain text
10025 #: build/C/man3/inet.3:287
10026 #, no-wrap
10027 msgid ""
10028 "    if (argc != 2) {\n"
10029 "        fprintf(stderr, \"%s E<lt>dotted-addressE<gt>\\en\", argv[0]);\n"
10030 "        exit(EXIT_FAILURE);\n"
10031 "    }\n"
10032 msgstr ""
10033 "    if (argc != 2) {\n"
10034 "        fprintf(stderr, \"%s E<lt>dotted-addressE<gt>\\en\", argv[0]);\n"
10035 "        exit(EXIT_FAILURE);\n"
10036 "    }\n"
10037
10038 #. type: Plain text
10039 #: build/C/man3/inet.3:292
10040 #, no-wrap
10041 msgid ""
10042 "    if (inet_aton(argv[1], &addr) == 0) {\n"
10043 "        perror(\"inet_aton\");\n"
10044 "        exit(EXIT_FAILURE);\n"
10045 "    }\n"
10046 msgstr ""
10047 "    if (inet_aton(argv[1], &addr) == 0) {\n"
10048 "        perror(\"inet_aton\");\n"
10049 "        exit(EXIT_FAILURE);\n"
10050 "    }\n"
10051
10052 #. type: Plain text
10053 #: build/C/man3/inet.3:296
10054 #, no-wrap
10055 msgid ""
10056 "    printf(\"%s\\en\", inet_ntoa(addr));\n"
10057 "    exit(EXIT_SUCCESS);\n"
10058 "}\n"
10059 msgstr ""
10060 "    printf(\"%s\\en\", inet_ntoa(addr));\n"
10061 "    exit(EXIT_SUCCESS);\n"
10062 "}\n"
10063
10064 #. type: Plain text
10065 #: build/C/man3/inet.3:307
10066 msgid ""
10067 "B<byteorder>(3), B<getaddrinfo>(3), B<gethostbyname>(3), B<getnameinfo>(3), "
10068 "B<getnetent>(3), B<inet_ntop>(3), B<inet_pton>(3), B<hosts>(5), B<networks>"
10069 "(5)"
10070 msgstr ""
10071 "B<byteorder>(3), B<getaddrinfo>(3), B<gethostbyname>(3), B<getnameinfo>(3), "
10072 "B<getnetent>(3), B<inet_ntop>(3), B<inet_pton>(3), B<hosts>(5), B<networks>"
10073 "(5)"
10074
10075 #. type: TH
10076 #: build/C/man3/inet_ntop.3:24
10077 #, no-wrap
10078 msgid "INET_NTOP"
10079 msgstr "INET_NTOP"
10080
10081 #. type: TH
10082 #: build/C/man3/inet_ntop.3:24
10083 #, no-wrap
10084 msgid "2008-11-11"
10085 msgstr "2008-11-11"
10086
10087 #. type: Plain text
10088 #: build/C/man3/inet_ntop.3:27
10089 msgid "inet_ntop - convert IPv4 and IPv6 addresses from binary to text form"
10090 msgstr "inet_ntop - IPv4/IPv6 アドレスをバイナリ形式からテキスト形式に変換する"
10091
10092 #. type: Plain text
10093 #: build/C/man3/inet_ntop.3:33
10094 #, no-wrap
10095 msgid ""
10096 "B<const char *inet_ntop(int >I<af>B<, const void *>I<src>B<,>\n"
10097 "B<                      char *>I<dst>B<, socklen_t >I<size>B<);>\n"
10098 msgstr ""
10099 "B<const char *inet_ntop(int >I<af>B<, const void *>I<src>B<,>\n"
10100 "B<                      char *>I<dst>B<, socklen_t >I<size>B<);>\n"
10101
10102 #. type: Plain text
10103 #: build/C/man3/inet_ntop.3:46
10104 msgid ""
10105 "This function converts the network address structure I<src> in the I<af> "
10106 "address family into a character string.  The resulting string is copied to "
10107 "the buffer pointed to by I<dst>, which must be a non-NULL pointer.  The "
10108 "caller specifies the number of bytes available in this buffer in the "
10109 "argument I<size>."
10110 msgstr ""
10111 "この関数は、 I<af> アドレスファミリーのネットワークアドレス構造体 I<src> を文"
10112 "字列に変換する。 変換結果の文字列は、 I<dst> が指すバッファにコピーされる。 "
10113 "I<dst> は NULL でないポインタでなければならない。 呼び出し時に、このバッファ"
10114 "で利用できるバイト数を 引き数 I<size> に指定する。"
10115
10116 #. type: Plain text
10117 #: build/C/man3/inet_ntop.3:55
10118 msgid ""
10119 "B<inet_ntop>()  extends the B<inet_ntoa>(3)  function to support multiple "
10120 "address families, B<inet_ntoa>(3)  is now considered to be deprecated in "
10121 "favor of B<inet_ntop>().  The following address families are currently "
10122 "supported:"
10123 msgstr ""
10124 "B<inet_ntop>()  は B<inet_ntoa>(3)  関数を拡張して複数のアドレスファミリーを"
10125 "扱えるようにしたものである。 今後は B<inet_ntoa>(3)  は使わず、 B<inet_ntop>"
10126 "()  を使うようにすると良いだろう。 現在サポートされているアドレスファミリーは"
10127 "以下の通り:"
10128
10129 #. type: Plain text
10130 #: build/C/man3/inet_ntop.3:68
10131 msgid ""
10132 "I<src> points to a I<struct in_addr> (in network byte order)  which is "
10133 "converted to an IPv4 network address in the dotted-decimal format, \"I<ddd."
10134 "ddd.ddd.ddd>\".  The buffer I<dst> must be at least B<INET_ADDRSTRLEN> bytes "
10135 "long."
10136 msgstr ""
10137 "この場合 I<src> は (ネットワークバイトオーダーの)  I<struct in_addr> へのポイ"
10138 "ンタとみなされ、この構造体の内容が ドット区切りの 10 進数形式 \"I<ddd.ddd."
10139 "ddd.ddd>\" の IPv4 ネットワークアドレスに変換される。 バッファ I<dst> は少な"
10140 "くとも B<INET_ADDRSTRLEN> バイトの長さを持たなければならない。"
10141
10142 #. type: Plain text
10143 #: build/C/man3/inet_ntop.3:81
10144 msgid ""
10145 "I<src> points to a I<struct in6_addr> (in network byte order)  which is "
10146 "converted to a representation of this address in the most appropriate IPv6 "
10147 "network address format for this address.  The buffer I<dst> must be at least "
10148 "B<INET6_ADDRSTRLEN> bytes long."
10149 msgstr ""
10150 "この場合 I<src> は (ネットワークバイトオーダーの)  I<struct in6_addr> へのポ"
10151 "インタとみなされ、この構造体の内容が、 (このアドレスに対してもっとも適切な)  "
10152 "IPv6 ネットワークアドレスの表示形式に変換される。 バッファ I<dst> は少なくと"
10153 "も B<INET6_ADDRSTRLEN> バイトの長さを持たなければならない。"
10154
10155 #. type: Plain text
10156 #: build/C/man3/inet_ntop.3:89
10157 msgid ""
10158 "On success, B<inet_ntop>()  returns a non-NULL pointer to I<dst>.  NULL is "
10159 "returned if there was an error, with I<errno> set to indicate the error."
10160 msgstr ""
10161 "成功すると、 B<inet_ntop>()  は I<dst> への (NULL でない) ポインタを返す。 エ"
10162 "ラーがあった場合は NULL を返し、 I<errno> をエラーを示す値に適切に設定する。"
10163
10164 #. type: TP
10165 #: build/C/man3/inet_ntop.3:90
10166 #, no-wrap
10167 msgid "B<EAFNOSUPPORT>"
10168 msgstr "B<EAFNOSUPPORT>"
10169
10170 #. type: Plain text
10171 #: build/C/man3/inet_ntop.3:94
10172 msgid "I<af> was not a valid address family."
10173 msgstr "I<af> がサポートされているアドレスファミリーでなかった。"
10174
10175 #. type: TP
10176 #: build/C/man3/inet_ntop.3:94
10177 #, no-wrap
10178 msgid "B<ENOSPC>"
10179 msgstr "B<ENOSPC>"
10180
10181 #. type: Plain text
10182 #: build/C/man3/inet_ntop.3:98
10183 msgid "The converted address string would exceed the size given by I<size>."
10184 msgstr ""
10185 "変換されたアドレス文字列の長さが I<size> で指定されたサイズを超過してしまう。"
10186
10187 #.  2.1.3: size_t, 2.1.91: socklen_t
10188 #. type: Plain text
10189 #: build/C/man3/inet_ntop.3:110
10190 msgid ""
10191 "POSIX.1-2001.  Note that RFC\\ 2553 defines a prototype where the last "
10192 "argument I<size> is of type I<size_t>.  Many systems follow RFC\\ 2553.  "
10193 "Glibc 2.0 and 2.1 have I<size_t>, but 2.2 and later have I<socklen_t>."
10194 msgstr ""
10195 "POSIX.1-2001.  RFC\\ 2553 では最後の引き数 I<size> のプロトタイプを "
10196 "I<size_t> 型と定義している。多くのシステムでは RFC\\ 2553 にしたがっている。 "
10197 "glibc 2.0 と 2.1 では I<size_t> だが、 glibc 2.2 以降では I<socklen_t> となっ"
10198 "ている。"
10199
10200 #. type: Plain text
10201 #: build/C/man3/inet_ntop.3:113
10202 msgid "B<AF_INET6> converts IPv4-mapped IPv6 addresses into an IPv6 format."
10203 msgstr ""
10204 "B<AF_INET6> は IPv4 がマップされた IPv6 アドレスを IPv6 形式に変換してしま"
10205 "う。"
10206
10207 #. type: Plain text
10208 #: build/C/man3/inet_ntop.3:116
10209 msgid "See B<inet_pton>(3)."
10210 msgstr "B<inet_pton>(3)  を参照。"
10211
10212 #. type: Plain text
10213 #: build/C/man3/inet_ntop.3:120
10214 msgid "B<getnameinfo>(3), B<inet>(3), B<inet_pton>(3)"
10215 msgstr "B<getnameinfo>(3), B<inet>(3), B<inet_pton>(3)"
10216
10217 #. type: TH
10218 #: build/C/man3/inet_pton.3:25
10219 #, no-wrap
10220 msgid "INET_PTON"
10221 msgstr "INET_PTON"
10222
10223 #. type: TH
10224 #: build/C/man3/inet_pton.3:25
10225 #, no-wrap
10226 msgid "2008-06-18"
10227 msgstr "2008-06-18"
10228
10229 #. type: Plain text
10230 #: build/C/man3/inet_pton.3:28
10231 msgid "inet_pton - convert IPv4 and IPv6 addresses from text to binary form"
10232 msgstr "inet_pton - IPv4/IPv6 アドレスをテキスト形式からバイナリ形式に変換する"
10233
10234 #. type: Plain text
10235 #: build/C/man3/inet_pton.3:33
10236 #, no-wrap
10237 msgid "B<int inet_pton(int >I<af>B<, const char *>I<src>B<, void *>I<dst>B<);>\n"
10238 msgstr "B<int inet_pton(int >I<af>B<, const char *>I<src>B<, void *>I<dst>B<);>\n"
10239
10240 #. type: Plain text
10241 #: build/C/man3/inet_pton.3:49
10242 msgid ""
10243 "This function converts the character string I<src> into a network address "
10244 "structure in the I<af> address family, then copies the network address "
10245 "structure to I<dst>.  The I<af> argument must be either B<AF_INET> or "
10246 "B<AF_INET6>."
10247 msgstr ""
10248 "この関数は文字列 I<src> を、アドレスファミリー I<af> のネットワークアドレス構"
10249 "造体に変換し、 I<dst> にコピーする。 I<af> 引き数は B<AF_INET> か "
10250 "B<AF_INET6> のどちらかでなければならない。"
10251
10252 #. type: Plain text
10253 #: build/C/man3/inet_pton.3:51
10254 msgid "The following address families are currently supported:"
10255 msgstr "現在サポートされているアドレスファミリーは以下の通りである。"
10256
10257 #. type: Plain text
10258 #: build/C/man3/inet_pton.3:65
10259 msgid ""
10260 "I<src> points to a character string containing an IPv4 network address in "
10261 "dotted-decimal format, \"I<ddd.ddd.ddd.ddd>\", where I<ddd> is a decimal "
10262 "number of up to three digits in the range 0 to 255.  The address is "
10263 "converted to a I<struct in_addr> and copied to I<dst>, which must be I<sizeof"
10264 "(struct in_addr)> (4) bytes (32 bits) long."
10265 msgstr ""
10266 "I<src> はドット区切りの 10 進数形式 \"I<ddd.ddd.ddd.ddd>\" の IPv4 ネットワー"
10267 "クアドレス文字列へのポインタである。 I<ddd> は 0 から 255 までの範囲の最大 3 "
10268 "桁の 10 進数である。 このアドレスは I<struct in_addr> に変換されて I<dst> に"
10269 "コピーされる。 I<dst> の長さは I<sizeof(struct in_addr)> (4) バイト (32ビッ"
10270 "ト) でなければならない。"
10271
10272 #. type: Plain text
10273 #: build/C/man3/inet_pton.3:77
10274 msgid ""
10275 "I<src> points to a character string containing an IPv6 network address.  The "
10276 "address is converted to a I<struct in6_addr> and copied to I<dst>, which "
10277 "must be I<sizeof(struct in6_addr)> (16) bytes (128 bits) long.  The allowed "
10278 "formats for IPv6 addresses follow these rules:"
10279 msgstr ""
10280 "I<src> は IPv6 ネットワークアドレスが格納された文字列へのポインタである。 こ"
10281 "のアドレスは I<struct in6_addr> に変換されて I<dst> にコピーされる。 I<dst> "
10282 "の長さは I<sizeof(struct in6_addr)> (16) バイト (128 ビット) でなければならな"
10283 "い。 以下の 3 つのルールにしたがった形式が IPv6 アドレスとして入力できる。"
10284
10285 #. type: IP
10286 #: build/C/man3/inet_pton.3:78
10287 #, no-wrap
10288 msgid "1."
10289 msgstr "1."
10290
10291 #. type: Plain text
10292 #: build/C/man3/inet_pton.3:85
10293 msgid ""
10294 "The preferred format is I<x:x:x:x:x:x:x:x>.  This form consists of eight "
10295 "hexadecimal numbers, each of which expresses a 16-bit value (i.e., each I<x> "
10296 "can be up to 4 hex digits)."
10297 msgstr ""
10298 "推奨形式は I<x:x:x:x:x:x:x:x> である。この形式は 8 個の 16 進数から構成さ"
10299 "れ、 各々の 16 進数は 16 ビット値を表す (I<x> は最大 4 桁の 16 進数である)。"
10300
10301 #. type: IP
10302 #: build/C/man3/inet_pton.3:85
10303 #, no-wrap
10304 msgid "2."
10305 msgstr "2."
10306
10307 #. type: Plain text
10308 #: build/C/man3/inet_pton.3:98
10309 msgid ""
10310 "A series of contiguous zero values in the preferred format can be "
10311 "abbreviated to I<::>.  Only one instance of I<::> can occur in an address.  "
10312 "For example, the loopback address I<0:0:0:0:0:0:0:1> can be abbreviated as "
10313 "I<::1>.  The wildcard address, consisting of all zeros, can be written as "
10314 "I<::>."
10315 msgstr ""
10316 "推奨形式の中の連続する 0 の列は I<::> に短縮できる。アドレス中で使用できる "
10317 "I<::> は 1 個だけである。 例えば、ループバックアドレス I<0:0:0:0:0:0:0:1> は "
10318 "I<::1> と短縮できる。 全ビットが 0 で構成されるワイルドカードアドレスは I<::"
10319 "> と記載できる。"
10320
10321 #. type: IP
10322 #: build/C/man3/inet_pton.3:98
10323 #, no-wrap
10324 msgid "3."
10325 msgstr "3."
10326
10327 #. type: Plain text
10328 #: build/C/man3/inet_pton.3:111
10329 msgid ""
10330 "An alternate format is useful for expressing IPv4-mapped IPv6 addresses.  "
10331 "This form is written as I<x:x:x:x:x:x:d.d.d.d>, where the six leading I<x>s "
10332 "are hexadecimal values that define the six most-significant 16-bit pieces of "
10333 "the address (i.e., 96 bits), and the I<d>s express a value in dotted-decimal "
10334 "notation that defines the least significant 32 bits of the address.  An "
10335 "example of such an address is I<::FFFF:204.152.189.116>."
10336 msgstr ""
10337 "IPv4 をマッピングした IPv6 アドレスを表記するには別の形式が便利である。 この"
10338 "別の形式は I<x:x:x:x:x:x:d.d.d.d> と書くことができる。 最初の 6 個の I<x> は"
10339 "アドレスを 16 ビット単位に区切ったときの上位側 6 個分 (つまり 96 ビット分)  "
10340 "を定義する 16 進数であり、 I<d> の部分はアドレスの下位 32 ビットをドット区切"
10341 "りの 10 進数表記で表したものである。 I<::FFFF:204.152.189.116> はこの形式の例"
10342 "である。"
10343
10344 #. type: Plain text
10345 #: build/C/man3/inet_pton.3:114
10346 msgid ""
10347 "See RFC 2373 for further details on the representation of IPv6 addresses."
10348 msgstr "IPv6 アドレスの表現方法の詳細については RFC 2373 を参照のこと。"
10349
10350 #. type: Plain text
10351 #: build/C/man3/inet_pton.3:127
10352 msgid ""
10353 "B<inet_pton>()  returns 1 on success (network address was successfully "
10354 "converted).  0 is returned if I<src> does not contain a character string "
10355 "representing a valid network address in the specified address family.  If "
10356 "I<af> does not contain a valid address family, -1 is returned and I<errno> "
10357 "is set to B<EAFNOSUPPORT>."
10358 msgstr ""
10359 "成功する (ネットワークアドレスが正常に変換される) と、 B<inet_pton>()  は 1 "
10360 "を返す。 I<src> が指定されたアドレスファミリーに対する 正しいネットワークアド"
10361 "レス表記でない場合には、 0 を返す。 I<af> がサポートされているアドレスファミ"
10362 "リーでない場合には、 -1 を返し、 I<errno> に B<EAFNOSUPPORT> を設定する。"
10363
10364 #. type: Plain text
10365 #: build/C/man3/inet_pton.3:148
10366 msgid ""
10367 "Unlike B<inet_aton>(3)  and B<inet_addr>(3), B<inet_pton>()  supports IPv6 "
10368 "addresses.  On the other hand, B<inet_pton>()  only accepts IPv4 addresses "
10369 "in dotted-decimal notation, whereas B<inet_aton>(3)  and B<inet_addr>(3)  "
10370 "allow the more general numbers-and-dots notation (hexadecimal and octal "
10371 "number formats, and formats that don't require all four bytes to be "
10372 "explicitly written).  For an interface that handles both IPv6 addresses, and "
10373 "IPv4 addresses in numbers-and-dots notation, see B<getaddrinfo>(3)."
10374 msgstr ""
10375 "B<inet_aton>(3)  や B<inet_addr>(3)  と異なり、 B<inet_pton>()  は IPv6 アド"
10376 "レスに対応している。 一方で、 B<inet_pton>()  が受け付ける IPv4 アドレスは"
10377 "ドット区切りの 10 進数表記だけである。 これに対し、 B<inet_aton>(3)  や "
10378 "B<inet_addr>(3)  ではもっと一般的なドット区切りの数字表記 (16 進数や 8 進数の"
10379 "形式や、 4 バイト全てを明示的に書かなくてもよい形式) が使用できる。 ドット区"
10380 "切りの数字表記で IPv6 アドレスと IPv4 アドレスの両方を扱える インターフェイス"
10381 "については、 B<getaddrinfo>(3)  を参照のこと。"
10382
10383 #. type: Plain text
10384 #: build/C/man3/inet_pton.3:154
10385 msgid ""
10386 "B<AF_INET6> does not recognize IPv4 addresses.  An explicit IPv4-mapped IPv6 "
10387 "address must be supplied in I<src> instead."
10388 msgstr ""
10389 "B<AF_INET6> は IPv4 アドレスを認識しない。 代わりに IPv4 アドレスをマッピング"
10390 "した IPv6 アドレスを I<src> に与えなければならない。"
10391
10392 #. type: Plain text
10393 #: build/C/man3/inet_pton.3:160
10394 msgid ""
10395 "The program below demonstrates the use of B<inet_pton>()  and B<inet_ntop>"
10396 "(3).  Here are some example runs:"
10397 msgstr ""
10398 "以下のプログラムは B<inet_pton>()  と B<inet_ntop>(3)  の使用例を示すものであ"
10399 "る。 実行すると以下のようになる。"
10400
10401 #. type: Plain text
10402 #: build/C/man3/inet_pton.3:169
10403 #, no-wrap
10404 msgid ""
10405 "$B< ./a.out i6 0:0:0:0:0:0:0:0>\n"
10406 "::\n"
10407 "$B< ./a.out i6 1:0:0:0:0:0:0:8>\n"
10408 "1::8\n"
10409 "$B< ./a.out i6 0:0:0:0:0:FFFF:204.152.189.116>\n"
10410 "::ffff:204.152.189.116\n"
10411 msgstr ""
10412 "$B< ./a.out i6 0:0:0:0:0:0:0:0>\n"
10413 "::\n"
10414 "$B< ./a.out i6 1:0:0:0:0:0:0:8>\n"
10415 "1::8\n"
10416 "$B< ./a.out i6 0:0:0:0:0:FFFF:204.152.189.116>\n"
10417 "::ffff:204.152.189.116\n"
10418
10419 #. type: Plain text
10420 #: build/C/man3/inet_pton.3:178
10421 #, no-wrap
10422 msgid ""
10423 "#include E<lt>arpa/inet.hE<gt>\n"
10424 "#include E<lt>stdio.hE<gt>\n"
10425 "#include E<lt>stdlib.hE<gt>\n"
10426 "#include E<lt>string.hE<gt>\n"
10427 msgstr ""
10428 "#include E<lt>arpa/inet.hE<gt>\n"
10429 "#include E<lt>stdio.hE<gt>\n"
10430 "#include E<lt>stdlib.hE<gt>\n"
10431 "#include E<lt>string.hE<gt>\n"
10432
10433 #. type: Plain text
10434 #: build/C/man3/inet_pton.3:185
10435 #, no-wrap
10436 msgid ""
10437 "int\n"
10438 "main(int argc, char *argv[])\n"
10439 "{\n"
10440 "    unsigned char buf[sizeof(struct in6_addr)];\n"
10441 "    int domain, s;\n"
10442 "    char str[INET6_ADDRSTRLEN];\n"
10443 msgstr ""
10444 "int\n"
10445 "main(int argc, char *argv[])\n"
10446 "{\n"
10447 "    unsigned char buf[sizeof(struct in6_addr)];\n"
10448 "    int domain, s;\n"
10449 "    char str[INET6_ADDRSTRLEN];\n"
10450
10451 #. type: Plain text
10452 #: build/C/man3/inet_pton.3:190
10453 #, no-wrap
10454 msgid ""
10455 "    if (argc != 3) {\n"
10456 "        fprintf(stderr, \"Usage: %s {i4|i6|E<lt>numE<gt>} string\\en\", argv[0]);\n"
10457 "        exit(EXIT_FAILURE);\n"
10458 "    }\n"
10459 msgstr ""
10460 "    if (argc != 3) {\n"
10461 "        fprintf(stderr, \"Usage: %s {i4|i6|E<lt>numE<gt>} string\\en\", argv[0]);\n"
10462 "        exit(EXIT_FAILURE);\n"
10463 "    }\n"
10464
10465 #. type: Plain text
10466 #: build/C/man3/inet_pton.3:193
10467 #, no-wrap
10468 msgid ""
10469 "    domain = (strcmp(argv[1], \"i4\") == 0) ? AF_INET :\n"
10470 "             (strcmp(argv[1], \"i6\") == 0) ? AF_INET6 : atoi(argv[1]);\n"
10471 msgstr ""
10472 "    domain = (strcmp(argv[1], \"i4\") == 0) ? AF_INET :\n"
10473 "             (strcmp(argv[1], \"i6\") == 0) ? AF_INET6 : atoi(argv[1]);\n"
10474
10475 #. type: Plain text
10476 #: build/C/man3/inet_pton.3:202
10477 #, no-wrap
10478 msgid ""
10479 "    s = inet_pton(domain, argv[2], buf);\n"
10480 "    if (s E<lt>= 0) {\n"
10481 "        if (s == 0)\n"
10482 "            fprintf(stderr, \"Not in presentation format\");\n"
10483 "        else\n"
10484 "            perror(\"inet_pton\");\n"
10485 "        exit(EXIT_FAILURE);\n"
10486 "    }\n"
10487 msgstr ""
10488 "    s = inet_pton(domain, argv[2], buf);\n"
10489 "    if (s E<lt>= 0) {\n"
10490 "        if (s == 0)\n"
10491 "            fprintf(stderr, \"Not in presentation format\");\n"
10492 "        else\n"
10493 "            perror(\"inet_pton\");\n"
10494 "        exit(EXIT_FAILURE);\n"
10495 "    }\n"
10496
10497 #. type: Plain text
10498 #: build/C/man3/inet_pton.3:207
10499 #, no-wrap
10500 msgid ""
10501 "    if (inet_ntop(domain, buf, str, INET6_ADDRSTRLEN) == NULL) {\n"
10502 "        perror(\"inet_ntop\");\n"
10503 "        exit(EXIT_FAILURE);\n"
10504 "    }\n"
10505 msgstr ""
10506 "    if (inet_ntop(domain, buf, str, INET6_ADDRSTRLEN) == NULL) {\n"
10507 "        perror(\"inet_ntop\");\n"
10508 "        exit(EXIT_FAILURE);\n"
10509 "    }\n"
10510
10511 #. type: Plain text
10512 #: build/C/man3/inet_pton.3:209
10513 #, no-wrap
10514 msgid "    printf(\"%s\\en\", str);\n"
10515 msgstr "    printf(\"%s\\en\", str);\n"
10516
10517 #. type: Plain text
10518 #: build/C/man3/inet_pton.3:217
10519 msgid "B<getaddrinfo>(3), B<inet>(3), B<inet_ntop>(3)"
10520 msgstr "B<getaddrinfo>(3), B<inet>(3), B<inet_ntop>(3)"
10521
10522 #. type: TH
10523 #: build/C/man7/ip.7:12
10524 #, no-wrap
10525 msgid "IP"
10526 msgstr "IP"
10527
10528 #. type: TH
10529 #: build/C/man7/ip.7:12
10530 #, fuzzy, no-wrap
10531 #| msgid "2011-09-08"
10532 msgid "2011-09-22"
10533 msgstr "2011-09-08"
10534
10535 #. type: Plain text
10536 #: build/C/man7/ip.7:15
10537 msgid "ip - Linux IPv4 protocol implementation"
10538 msgstr "ip - Linux IPv4 プロトコルの実装"
10539
10540 #. type: Plain text
10541 #: build/C/man7/ip.7:21 build/C/man7/ipv6.7:14 build/C/man7/raw.7:16
10542 #: build/C/man7/tcp.7:23 build/C/man7/udp.7:15
10543 msgid "B<#include E<lt>netinet/in.hE<gt>>"
10544 msgstr "B<#include E<lt>netinet/in.hE<gt>>"
10545
10546 #. type: Plain text
10547 #: build/C/man7/ip.7:23
10548 msgid "B<#include E<lt>netinet/ip.hE<gt> >/* superset of previous */"
10549 msgstr "B<#include E<lt>netinet/ip.hE<gt> >/* 上記のスーパーセット */"
10550
10551 #. type: Plain text
10552 #: build/C/man7/ip.7:25
10553 msgid "I<tcp_socket>B< = socket(AF_INET, SOCK_STREAM, 0);>"
10554 msgstr "I<tcp_socket>B< = socket(AF_INET, SOCK_STREAM, 0);>"
10555
10556 #. type: Plain text
10557 #: build/C/man7/ip.7:27
10558 msgid "I<udp_socket>B< = socket(AF_INET, SOCK_DGRAM, 0);>"
10559 msgstr "I<udp_socket>B< = socket(AF_INET, SOCK_DGRAM, 0);>"
10560
10561 #. type: Plain text
10562 #: build/C/man7/ip.7:29
10563 msgid "I<raw_socket>B< = socket(AF_INET, SOCK_RAW, >I<protocol>B<);>"
10564 msgstr "I<raw_socket>B< = socket(AF_INET, SOCK_RAW, >I<protocol>B<);>"
10565
10566 #.  FIXME has someone verified that 2.1 is really 1812 compliant?
10567 #. type: Plain text
10568 #: build/C/man7/ip.7:36
10569 msgid ""
10570 "Linux implements the Internet Protocol, version 4, described in RFC\\ 791 "
10571 "and RFC\\ 1122.  B<ip> contains a level 2 multicasting implementation "
10572 "conforming to RFC\\ 1112.  It also contains an IP router including a packet "
10573 "filter."
10574 msgstr ""
10575 "Linux は RFC\\ 791 と RFC\\ 1122 で記述されている Internet Protocol, version "
10576 "4 を実装している。 B<ip> には RFC\\ 1112 に準拠した level 2 マルチキャストの"
10577 "実装が含まれている。 またパケットフィルタ機能を含む IP ルーターも実装されてい"
10578 "る。"
10579
10580 #. type: Plain text
10581 #: build/C/man7/ip.7:40
10582 msgid ""
10583 "The programming interface is BSD-sockets compatible.  For more information "
10584 "on sockets, see B<socket>(7)."
10585 msgstr ""
10586 "プログラミング・インターフェースは BSD ソケットと互換である。 ソケットに関す"
10587 "るより詳細な情報は B<socket>(7)  を参照のこと。"
10588
10589 #. type: Plain text
10590 #: build/C/man7/ip.7:71
10591 #, fuzzy
10592 #| msgid ""
10593 #| "An IP socket is created by calling the B<socket>(2)  function as B<socket"
10594 #| "(AF_INET, socket_type, protocol)>.  Valid socket types are B<SOCK_STREAM> "
10595 #| "to open a B<tcp>(7)  socket, B<SOCK_DGRAM> to open a B<udp>(7)  socket, "
10596 #| "or B<SOCK_RAW> to open a B<raw>(7)  socket to access the IP protocol "
10597 #| "directly.  I<protocol> is the IP protocol in the IP header to be received "
10598 #| "or sent.  The only valid values for I<protocol> are 0 and B<IPPROTO_TCP> "
10599 #| "for TCP sockets, and 0 and B<IPPROTO_UDP> for UDP sockets.  For "
10600 #| "B<SOCK_RAW> you may specify a valid IANA IP protocol defined in RFC\\ "
10601 #| "1700 assigned numbers."
10602 msgid ""
10603 "An IP socket is created by calling the B<socket>(2)  function as B<socket"
10604 "(AF_INET, >I<socket_type>B<, >I<protocol>B<)>.  Valid socket types are "
10605 "B<SOCK_STREAM> to open a B<tcp>(7)  socket, B<SOCK_DGRAM> to open a B<udp>"
10606 "(7)  socket, or B<SOCK_RAW> to open a B<raw>(7)  socket to access the IP "
10607 "protocol directly.  I<protocol> is the IP protocol in the IP header to be "
10608 "received or sent.  The only valid values for I<protocol> are 0 and "
10609 "B<IPPROTO_TCP> for TCP sockets, and 0 and B<IPPROTO_UDP> for UDP sockets.  "
10610 "For B<SOCK_RAW> you may specify a valid IANA IP protocol defined in RFC\\ "
10611 "1700 assigned numbers."
10612 msgstr ""
10613 "IP ソケットは、 B<socket>(2)  関数を B<socket(AF_INET, socket_type, protocol)"
10614 "> のように呼び出すことで生成される。 指定できるソケットタイプは 3 つあり、 "
10615 "B<tcp>(7)  ソケットをオープンする場合 B<SOCK_STREAM>、 B<udp>(7)  ソケットを"
10616 "オープンする場合 B<SOCK_DGRAM>、 IP プロトコルに直接アクセスするために B<raw>"
10617 "(7)  ソケットをオープンする場合には B<SOCK_RAW> である。 I<protocol> は送受信"
10618 "される IP ヘッダに書かれる IP プロトコルである。 指定できる値は、 TCP ソケッ"
10619 "トには 0 か B<IPPROTO_TCP>、 UDP ソケットには 0 か B<IPPROTO_UDP> に限られ"
10620 "る。 B<SOCK_RAW> に対しては、 RFC\\ 1700 で定義されている有効な IANA IP プロ"
10621 "トコルを、 割り当てられている番号で指定することができる。"
10622
10623 #.  FIXME ip current does an autobind in listen, but I'm not sure
10624 #.  if that should be documented.
10625 #. type: Plain text
10626 #: build/C/man7/ip.7:90
10627 msgid ""
10628 "When a process wants to receive new incoming packets or connections, it "
10629 "should bind a socket to a local interface address using B<bind>(2).  Only "
10630 "one IP socket may be bound to any given local (address, port) pair.  When "
10631 "B<INADDR_ANY> is specified in the bind call, the socket will be bound to "
10632 "I<all> local interfaces.  When B<listen>(2)  or B<connect>(2)  are called on "
10633 "an unbound socket, it is automatically bound to a random free port with the "
10634 "local address set to B<INADDR_ANY>."
10635 msgstr ""
10636 "あるプロセスで、やってくるパケットを受信したり 接続要求を受けたりしたい場合に"
10637 "は、 そのプロセスはローカルなインターフェースアドレスに、 B<bind>(2)  を用い"
10638 "てソケットをバインドしなければならない。 あるローカルな「アドレスとポート」の"
10639 "ペアに対してバインドできる IP ソケットは一つに限られる。 B<bind>(2)  の呼び出"
10640 "しで B<INADDR_ANY> が指定されていた場合は、ソケットはローカルなインターフェー"
10641 "スの I<すべて>にバインドされる。 B<listen>(2)  または B<connect>(2)  がバイン"
10642 "ドされていないソケットでコールされると、 そのソケットは自動的にローカルなアド"
10643 "レスを B<INADDR_ANY> にセットし、空いているポートをランダムに選んでバインドす"
10644 "る。"
10645
10646 #. type: Plain text
10647 #: build/C/man7/ip.7:96
10648 msgid ""
10649 "A TCP local socket address that has been bound is unavailable for some time "
10650 "after closing, unless the B<SO_REUSEADDR> flag has been set.  Care should be "
10651 "taken when using this flag as it makes TCP less reliable."
10652 msgstr ""
10653 "B<SO_REUSEADDR> フラグがセットされていない場合には、 バインドされていた TCP "
10654 "ローカルソケットアドレスは クローズされた後しばらくの間使えなくなる。 "
10655 "B<SO_REUSEADDR> フラグを使うと TCP の信頼性を低下させるので、 使うときには注"
10656 "意が必要である。"
10657
10658 #. type: Plain text
10659 #: build/C/man7/ip.7:107
10660 msgid ""
10661 "An IP socket address is defined as a combination of an IP interface address "
10662 "and a 16-bit port number.  The basic IP protocol does not supply port "
10663 "numbers, they are implemented by higher level protocols like B<udp>(7)  and "
10664 "B<tcp>(7).  On raw sockets I<sin_port> is set to the IP protocol."
10665 msgstr ""
10666 "IP ソケットアドレスは、 IP インターフェースアドレスと 16ビットのポート番号の"
10667 "組み合わせで定義される。 IP プロトコルそのものはポート番号を扱わない。 ポート"
10668 "番号は、 B<udp>(7)  や B<tcp>(7)  といった、上位のプロトコルで実装される。 "
10669 "raw ソケットでは、 I<sin_port> が IP プロトコルにセットされる。"
10670
10671 #. type: Plain text
10672 #: build/C/man7/ip.7:115
10673 #, no-wrap
10674 msgid ""
10675 "struct sockaddr_in {\n"
10676 "    sa_family_t    sin_family; /* address family: AF_INET */\n"
10677 "    in_port_t      sin_port;   /* port in network byte order */\n"
10678 "    struct in_addr sin_addr;   /* internet address */\n"
10679 "};\n"
10680 msgstr ""
10681 "struct sockaddr_in {\n"
10682 "    sa_family_t    sin_family; /* address family: AF_INET */\n"
10683 "    in_port_t      sin_port;   /* port in network byte order */\n"
10684 "    struct in_addr sin_addr;   /* internet address */\n"
10685 "};\n"
10686
10687 #. type: Plain text
10688 #: build/C/man7/ip.7:120
10689 #, no-wrap
10690 msgid ""
10691 "/* Internet address. */\n"
10692 "struct in_addr {\n"
10693 "    uint32_t       s_addr;     /* address in network byte order */\n"
10694 "};\n"
10695 msgstr ""
10696 "/* Internet address. */\n"
10697 "struct in_addr {\n"
10698 "    uint32_t       s_addr;     /* address in network byte order */\n"
10699 "};\n"
10700
10701 #. type: Plain text
10702 #: build/C/man7/ip.7:145
10703 msgid ""
10704 "I<sin_family> is always set to B<AF_INET>.  This is required; in Linux 2.2 "
10705 "most networking functions return B<EINVAL> when this setting is missing.  "
10706 "I<sin_port> contains the port in network byte order.  The port numbers below "
10707 "1024 are called I<privileged ports> (or sometimes: I<reserved ports>).  Only "
10708 "privileged processes (i.e., those having the B<CAP_NET_BIND_SERVICE> "
10709 "capability) may B<bind>(2)  to these sockets.  Note that the raw IPv4 "
10710 "protocol as such has no concept of a port, they are only implemented by "
10711 "higher protocols like B<tcp>(7)  and B<udp>(7)."
10712 msgstr ""
10713 "I<sin_familiy> には常に B<AF_INET> をセットする。これは必須である。 Linux "
10714 "2.2 では、このセットを忘れると ほとんどのネットワーク関数は B<EINVAL> を返す"
10715 "ようになっている。 I<sin_port> にはポート番号をネットワークバイトオーダーで指"
10716 "定する。 1024 未満のポート番号は I<特権ポート (privileged ports)> と呼ばれる "
10717 "(I<予約ポート (reserved ports)> とも時々呼ばれる)。 特権プロセス "
10718 "(B<CAP_NET_BIND_SERVICE> ケーパビリティを持つプロセス) 以外のプロセスは、これ"
10719 "らのポートには B<bind>(2)  できない。 IPv4 プロトコルそのものにはポートに関す"
10720 "る概念がない。 ポートは、 B<tcp>(7)  や B<udp>(7)  といった、上位のプロトコル"
10721 "において実装される。"
10722
10723 #. type: Plain text
10724 #: build/C/man7/ip.7:164
10725 #, fuzzy
10726 #| msgid ""
10727 #| "I<sin_addr> is the IP host address.  The I<s_addr> member of I<struct "
10728 #| "in_addr> contains the host interface address in network byte order.  "
10729 #| "I<in_addr> should be assigned one of the INADDR_* values (e.g., "
10730 #| "B<INADDR_ANY>)  or set using the B<inet_aton>(3), B<inet_addr>(3), "
10731 #| "B<inet_makeaddr>(3)  library functions or directly with the name resolver "
10732 #| "(see B<gethostbyname>(3))."
10733 msgid ""
10734 "I<sin_addr> is the IP host address.  The I<s_addr> member of I<struct "
10735 "in_addr> contains the host interface address in network byte order.  "
10736 "I<in_addr> should be assigned one of the B<INADDR_*> values (e.g., "
10737 "B<INADDR_ANY>)  or set using the B<inet_aton>(3), B<inet_addr>(3), "
10738 "B<inet_makeaddr>(3)  library functions or directly with the name resolver "
10739 "(see B<gethostbyname>(3))."
10740 msgstr ""
10741 "I<sin_addr> は IP ホストアドレスである。 I<struct in_addr> の I<s_addr> メン"
10742 "バには、ホストのインターフェースアドレスを ネットワークバイトオーダーで指定す"
10743 "る。 I<in_addr> は、INADDR_* の一つ (例えば B<INADDR_ANY>)  を代入する、 ライ"
10744 "ブラリ関数 B<inet_aton>(3), B<inet_addr>(3), B<inet_makeaddr>(3)  を用いる、"
10745 "あるいは名前解決機構 (name resolver)  を直接用いる、のどれかで設定すべきであ"
10746 "る。 (B<gethostbyname>(3)  を見よ)。"
10747
10748 #.  Leave a loophole for XTP @)
10749 #. type: Plain text
10750 #: build/C/man7/ip.7:176
10751 msgid ""
10752 "IPv4 addresses are divided into unicast, broadcast and multicast addresses.  "
10753 "Unicast addresses specify a single interface of a host, broadcast addresses "
10754 "specify all hosts on a network and multicast addresses address all hosts in "
10755 "a multicast group.  Datagrams to broadcast addresses can be only sent or "
10756 "received when the B<SO_BROADCAST> socket flag is set.  In the current "
10757 "implementation, connection-oriented sockets are only allowed to use unicast "
10758 "addresses."
10759 msgstr ""
10760 "IPv4 アドレスには、ユニキャストアドレス、 ブロードキャストアドレス、マルチ"
10761 "キャストアドレスがある。 ユニキャストアドレスは、あるホストの一つのアドレスを"
10762 "指定する。 ブロードキャストアドレスは、あるネットワーク上の全てのホストを指定"
10763 "する。 マルチキャストアドレスは、マルチキャストグループに所属する 全てのホス"
10764 "トを指定する。ブロードキャストアドレスへのデータグラムは、 B<SO_BROADCAST> ソ"
10765 "ケットフラグがセットされていないと送信・受信できない。 現在の実装では、接続指"
10766 "向のソケットにはユニキャストアドレスしか使えない。"
10767
10768 #. type: Plain text
10769 #: build/C/man7/ip.7:184
10770 msgid ""
10771 "Note that the address and the port are always stored in network byte order.  "
10772 "In particular, this means that you need to call B<htons>(3)  on the number "
10773 "that is assigned to a port.  All address/port manipulation functions in the "
10774 "standard library work in network byte order."
10775 msgstr ""
10776 "アドレスとポートは常にネットワークバイトオーダーで格納されることに注意せよ。 "
10777 "具体的には、ポートを指定する数値には B<htons>(3)  を呼び出す必要がある。 標準"
10778 "ライブラリにあるアドレス/ポート操作関数は すべてネットワークバイトオーダーで"
10779 "動作する。"
10780
10781 #. type: Plain text
10782 #: build/C/man7/ip.7:197
10783 msgid ""
10784 "There are several special addresses: B<INADDR_LOOPBACK> (127.0.0.1)  always "
10785 "refers to the local host via the loopback device; B<INADDR_ANY> (0.0.0.0)  "
10786 "means any address for binding; B<INADDR_BROADCAST> (255.255.255.255)  means "
10787 "any host and has the same effect on bind as B<INADDR_ANY> for historical "
10788 "reasons."
10789 msgstr ""
10790 "特別なアドレスがいくつか存在する: B<INADDR_LOOPBACK>(127.0.0.1)  は loopback "
10791 "デバイスを通して常にローカルなホストを参照する。 B<INADDR_ANY>(0.0.0.0)  は任"
10792 "意のアドレスを意味し、バインド用である。 B<INADDR_BROADCAST>"
10793 "(255.255.255.255)  は任意のホストを意味し、歴史的理由から、バインドの際には "
10794 "B<INADDR_ANY> と同じ効果になる。"
10795
10796 #.  or SOL_IP on Linux
10797 #. type: Plain text
10798 #: build/C/man7/ip.7:206
10799 msgid ""
10800 "IP supports some protocol-specific socket options that can be set with "
10801 "B<setsockopt>(2)  and read with B<getsockopt>(2).  The socket option level "
10802 "for IP is B<IPPROTO_IP>.  A boolean integer flag is zero when it is false, "
10803 "otherwise true."
10804 msgstr ""
10805 "IP にはプロトコル固有のソケットオプションがいくつか存在し、 B<setsockopt>"
10806 "(2)  で設定が、 B<getsockopt>(2)  で取得ができる。 IP のソケットオプションレ"
10807 "ベルは B<IPPROTO_IP> である。 ブール整数値のフラグでは、 0 は偽、それ以外は真"
10808 "を意味する。"
10809
10810 #. type: TP
10811 #: build/C/man7/ip.7:206
10812 #, no-wrap
10813 msgid "B<IP_ADD_MEMBERSHIP> (since Linux 1.2)"
10814 msgstr "B<IP_ADD_MEMBERSHIP> (Linux 1.2 以降)"
10815
10816 #. type: Plain text
10817 #: build/C/man7/ip.7:212
10818 msgid "Join a multicast group.  Argument is an I<ip_mreqn> structure."
10819 msgstr "マルチキャストグループに参加する。 引き数は I<ip_mreqn> 構造体である。"
10820
10821 #. type: Plain text
10822 #: build/C/man7/ip.7:222
10823 #, no-wrap
10824 msgid ""
10825 "struct ip_mreqn {\n"
10826 "    struct in_addr imr_multiaddr; /* IP multicast group\n"
10827 "                                     address */\n"
10828 "    struct in_addr imr_address;   /* IP address of local\n"
10829 "                                     interface */\n"
10830 "    int            imr_ifindex;   /* interface index */\n"
10831 "};\n"
10832 msgstr ""
10833 "struct ip_mreqn {\n"
10834 "    struct in_addr imr_multiaddr; /* IP multicast group\n"
10835 "                                     address */\n"
10836 "    struct in_addr imr_address;   /* IP address of local\n"
10837 "                                     interface */\n"
10838 "    int            imr_ifindex;   /* interface index */\n"
10839 "};\n"
10840
10841 #.  (i.e., within the 224.0.0.0-239.255.255.255 range)
10842 #. type: Plain text
10843 #: build/C/man7/ip.7:243
10844 msgid ""
10845 "I<imr_multiaddr> contains the address of the multicast group the application "
10846 "wants to join or leave.  It must be a valid multicast address (or "
10847 "B<setsockopt>(2)  fails with the error B<EINVAL>).  I<imr_address> is the "
10848 "address of the local interface with which the system should join the "
10849 "multicast group; if it is equal to B<INADDR_ANY> an appropriate interface is "
10850 "chosen by the system.  I<imr_ifindex> is the interface index of the "
10851 "interface that should join/leave the I<imr_multiaddr> group, or 0 to "
10852 "indicate any interface."
10853 msgstr ""
10854 "I<imr_multiaddr> には、アプリケーションが参加または撤退したい マルチキャスト"
10855 "グループのアドレスが入る。 指定するアドレスは有効なマルチキャストアドレスでな"
10856 "ければならない (さもなければ B<setsockopt>(2)  がエラー B<EINVAL> で失敗す"
10857 "る)。 I<imr_address> はシステムがマルチキャストグループに参加する際に用いる "
10858 "ローカルなインターフェースのアドレスである。 これが B<INADDR_ANY> であった場"
10859 "合には、適切なインターフェースがシステムによって選択される。 I<imr_ifindex> "
10860 "は I<imr_multiaddr> グループに参加/撤退するインターフェースの interface "
10861 "index である。 どのインターフェースでもよい場合は 0 にする。"
10862
10863 #. type: Plain text
10864 #: build/C/man7/ip.7:258
10865 #, fuzzy
10866 #| msgid ""
10867 #| "The I<ip_mreqn> is available only since Linux 2.2.  For compatibility, "
10868 #| "the old I<ip_mreq> structure (present since Linux 1.2) is still "
10869 #| "supported.  It differs from I<ip_mreqn> only by not including the "
10870 #| "I<imr_ifindex> field.  Only valid as a B<setsockopt>(2)."
10871 msgid ""
10872 "The I<ip_mreqn> structure is available only since Linux 2.2.  For "
10873 "compatibility, the old I<ip_mreq> structure (present since Linux 1.2) is "
10874 "still supported; it differs from I<ip_mreqn> only by not including the "
10875 "I<imr_ifindex> field.  Only valid as a B<setsockopt>(2)."
10876 msgstr ""
10877 "I<ip_mreqn> は Linux 2.2 以降でのみ利用可能である。 互換性のため、古い "
10878 "I<ip_mreq> 構造体 (Linux 1.2 以降で存在する) もまだサポートされている。 "
10879 "I<ip_mreqn> との違いは、 I<imr_ifindex> フィールドを含まないことだけである。 "
10880 "B<setsockopt>(2)  でのみ使える。"
10881
10882 #. type: TP
10883 #: build/C/man7/ip.7:258
10884 #, no-wrap
10885 msgid "B<IP_DROP_MEMBERSHIP> (since Linux 1.2)"
10886 msgstr "B<IP_DROP_MEMBERSHIP> (Linux 1.2 以降)"
10887
10888 #. type: Plain text
10889 #: build/C/man7/ip.7:267
10890 msgid ""
10891 "Leave a multicast group.  Argument is an I<ip_mreqn> or I<ip_mreq> structure "
10892 "similar to B<IP_ADD_MEMBERSHIP>."
10893 msgstr ""
10894 "マルチキャストグループから抜ける。引き数は B<IP_ADD_MEMBERSHIP> と同様に "
10895 "I<ip_mreqn> または I<ip_mreq> 構造体である。"
10896
10897 #. type: TP
10898 #: build/C/man7/ip.7:267
10899 #, fuzzy, no-wrap
10900 #| msgid "B<TCP_KEEPIDLE> (since Linux 2.4)"
10901 msgid "B<IP_FREEBIND> (since Linux 2.4)"
10902 msgstr "B<TCP_KEEPIDLE> (Linux 2.4 以降)"
10903
10904 #.  Precisely: 2.4.0-test10
10905 #. type: Plain text
10906 #: build/C/man7/ip.7:280
10907 msgid ""
10908 "If enabled, this boolean option allows binding to an IP address that is "
10909 "nonlocal or does not (yet) exist.  This permits listening on a socket, "
10910 "without requiring the underlying network interface or the specified dynamic "
10911 "IP address to be up at the time that the application is trying to bind to "
10912 "it.  This option is the per-socket equivalent of the I<ip_nonlocal_bind> I</"
10913 "proc> interface described below."
10914 msgstr ""
10915
10916 #. type: TP
10917 #: build/C/man7/ip.7:280
10918 #, no-wrap
10919 msgid "B<IP_HDRINCL> (since Linux 2.0)"
10920 msgstr "B<IP_HDRINCL> (Linux 2.0 以降)"
10921
10922 #.  FIXME Document IP_IPSEC_POLICY
10923 #.  Since Linux 2.5.47
10924 #.  Needs CAP_NET_ADMIN
10925 #. type: Plain text
10926 #: build/C/man7/ip.7:300
10927 msgid ""
10928 "If enabled, the user supplies an IP header in front of the user data.  Only "
10929 "valid for B<SOCK_RAW> sockets.  See B<raw>(7)  for more information.  When "
10930 "this flag is enabled the values set by B<IP_OPTIONS>, B<IP_TTL> and "
10931 "B<IP_TOS> are ignored."
10932 msgstr ""
10933 "有効になっていると、ユーザは IP ヘッダをユーザーデータの前に与える。 "
10934 "B<SOCK_RAW> ソケットでのみ有効である。詳細は B<raw>(7)  を見よ。このフラグが"
10935 "有効になっていると、 B<IP_OPTIONS>, B<IP_TTL>, B<IP_TOS> は無視される。"
10936
10937 #. type: TP
10938 #: build/C/man7/ip.7:300
10939 #, no-wrap
10940 msgid "B<IP_MTU> (since Linux 2.2)"
10941 msgstr "B<IP_MTU> (Linux 2.2 以降)"
10942
10943 #.  Precisely: 2.1.124
10944 #. type: Plain text
10945 #: build/C/man7/ip.7:308
10946 msgid ""
10947 "Retrieve the current known path MTU of the current socket.  Only valid when "
10948 "the socket has been connected.  Returns an integer.  Only valid as a "
10949 "B<getsockopt>(2)."
10950 msgstr ""
10951 "ソケットの、既知の path MTU を取得する。 ソケットが接続している場合のみ有効で"
10952 "ある。 B<getsockopt>(2)  でのみ使える。"
10953
10954 #. type: TP
10955 #: build/C/man7/ip.7:308
10956 #, no-wrap
10957 msgid "B<IP_MTU_DISCOVER> (since Linux 2.2)"
10958 msgstr "B<IP_MTU_DISCOVER> (Linux 2.2 以降)"
10959
10960 #.  Precisely: 2.1.124
10961 #. type: Plain text
10962 #: build/C/man7/ip.7:329
10963 #, fuzzy
10964 #| msgid ""
10965 #| "Set or receive the Path MTU Discovery setting for a socket.  When "
10966 #| "enabled, Linux will perform Path MTU Discovery as defined in RFC\\ 1191 "
10967 #| "on this socket.  The don't-fragment flag is set on all outgoing "
10968 #| "datagrams.  The system-wide default is controlled by the I</proc/sys/net/"
10969 #| "ipv4/ip_no_pmtu_disc> file for B<SOCK_STREAM> sockets, and disabled on "
10970 #| "all others.  For non-B<SOCK_STREAM> sockets, it is the user's "
10971 #| "responsibility to packetize the data in MTU sized chunks and to do the "
10972 #| "retransmits if necessary.  The kernel will reject packets that are bigger "
10973 #| "than the known path MTU if this flag is set (with B<EMSGSIZE> )."
10974 msgid ""
10975 "Set or receive the Path MTU Discovery setting for a socket.  When enabled, "
10976 "Linux will perform Path MTU Discovery as defined in RFC\\ 1191 on "
10977 "B<SOCK_STREAM> sockets.  For non-B<SOCK_STREAM> sockets, B<IP_PMTUDISC_DO> "
10978 "forces the don't-fragment flag to be set on all outgoing packets.  It is the "
10979 "user's responsibility to packetize the data in MTU-sized chunks and to do "
10980 "the retransmits if necessary.  The kernel will reject (with B<EMSGSIZE>)  "
10981 "datagrams that are bigger than the known path MTU.  B<IP_PMTUDISC_WANT> will "
10982 "fragment a datagram if needed according to the path MTU, or will set the "
10983 "don't-fragment flag otherwise."
10984 msgstr ""
10985 "ソケットの Path MTU Discovery の設定をセット・取得する。 有効になっている"
10986 "と、 Linux はこのソケットに対して RFC\\ 1191 で定義されている Path MTU "
10987 "Discovery を行う。 発信データグラムには、全て「フラグメント不許可」フラグが"
10988 "セットされる。 システム全体に対するデフォルトは、 B<SOCK_STREAM> ソケットに対"
10989 "しては I</proc/sys/net/ipv4/ip_no_pmtu_disc> ファイルにより制御できる。 その"
10990 "他については無効となっている。 B<SOCK_STREAM> でないソケットに対しては、 ユー"
10991 "ザーがデータを MTU のサイズの塊にパケット化したり、 必要な場合には再送したり"
10992 "しなければならない。 このフラグがセットされていると、 カーネルは既知の path "
10993 "MTU より大きなパケットを拒否する (B<EMSGSIZE> となる)。"
10994
10995 #. type: Plain text
10996 #: build/C/man7/ip.7:337
10997 msgid ""
10998 "The system-wide default can be toggled between B<IP_PMTUDISC_WANT> and "
10999 "B<IP_PMTUDISC_DONT> by writing (respectively, zero and nonzero values) to "
11000 "the I</proc/sys/net/ipv4/ip_no_pmtu_disc> file."
11001 msgstr ""
11002
11003 #. type: tbl table
11004 #: build/C/man7/ip.7:342
11005 #, fuzzy, no-wrap
11006 #| msgid "Path MTU discovery flags:Meaning\n"
11007 msgid "Path MTU discovery value:Meaning\n"
11008 msgstr "Path MTU discovery フラグ:意味\n"
11009
11010 #. type: tbl table
11011 #: build/C/man7/ip.7:343
11012 #, no-wrap
11013 msgid "IP_PMTUDISC_WANT:Use per-route settings.\n"
11014 msgstr "IP_PMTUDISC_WANT:ルートごとの設定を用いる。\n"
11015
11016 #. type: tbl table
11017 #: build/C/man7/ip.7:344
11018 #, no-wrap
11019 msgid "IP_PMTUDISC_DONT:Never do Path MTU Discovery.\n"
11020 msgstr "IP_PMTUDISC_DONT:Path MTU Discovery を行わない。\n"
11021
11022 #. type: tbl table
11023 #: build/C/man7/ip.7:345
11024 #, no-wrap
11025 msgid "IP_PMTUDISC_DO:Always do Path MTU Discovery.\n"
11026 msgstr "IP_PMTUDISC_DO:常に Path MTU Discovery を行う。\n"
11027
11028 #. type: tbl table
11029 #: build/C/man7/ip.7:346
11030 #, no-wrap
11031 msgid "IP_PMTUDISC_PROBE:Set DF but ignore Path MTU.\n"
11032 msgstr "IP_PMTUDISC_PROBE:DFビットをセットするが、Path MTU を無視する。\n"
11033
11034 #. type: Plain text
11035 #: build/C/man7/ip.7:364
11036 #, fuzzy
11037 #| msgid ""
11038 #| "When PMTU discovery is enabled, the kernel automatically keeps track of "
11039 #| "the path MTU per destination host.  When it is connected to a specific "
11040 #| "peer with B<connect>(2), the currently known path MTU can be retrieved "
11041 #| "conveniently using the B<IP_MTU> socket option (e.g., after a B<EMSGSIZE> "
11042 #| "error occurred).  It may change over time.  For connectionless sockets "
11043 #| "with many destinations, the new MTU for a given destination can also be "
11044 #| "accessed using the error queue (see B<IP_RECVERR>).  A new error will be "
11045 #| "queued for every incoming MTU update."
11046 msgid ""
11047 "When PMTU discovery is enabled, the kernel automatically keeps track of the "
11048 "path MTU per destination host.  When it is connected to a specific peer with "
11049 "B<connect>(2), the currently known path MTU can be retrieved conveniently "
11050 "using the B<IP_MTU> socket option (e.g., after an B<EMSGSIZE> error "
11051 "occurred).  The path MTU may change over time.  For connectionless sockets "
11052 "with many destinations, the new MTU for a given destination can also be "
11053 "accessed using the error queue (see B<IP_RECVERR>).  A new error will be "
11054 "queued for every incoming MTU update."
11055 msgstr ""
11056 "path MTU discovery が有効になっていると、カーネルは宛先ホストごとに 自動的に "
11057 "path MTU を処理する。特定の相手に B<connect>(2)  で接続した場合には、 "
11058 "B<IP_MTU> ソケットオプションを用いれば、既知の path MTU の取得に便利である "
11059 "(たとえば B<EMSGSIZE> エラーが起きた後など)。これは時間とともに変化するかもし"
11060 "れない。 宛先がたくさんあるコネクションレスなソケットでは、 与えられた宛先に"
11061 "対する新しい MTU にも、 エラーキューを用いてアクセスすることができる "
11062 "(B<IP_RECVERR> を見よ)。 MTU 更新が到着するごとに、新たなエラーがキューイング"
11063 "される。"
11064
11065 #. type: Plain text
11066 #: build/C/man7/ip.7:369
11067 msgid ""
11068 "While MTU discovery is in progress, initial packets from datagram sockets "
11069 "may be dropped.  Applications using UDP should be aware of this and not take "
11070 "it into account for their packet retransmit strategy."
11071 msgstr ""
11072 "MTU discovery の進行中には、データグラムソケットからの初期パケットは 到着しな"
11073 "いかもしれない。 UDP を用いるアプリケーションでは、 このことを気にかけてお"
11074 "き、 パケットの再送アルゴリズムにこの分を除外させるべきである。"
11075
11076 #.  FIXME this is an ugly hack
11077 #. type: Plain text
11078 #: build/C/man7/ip.7:374
11079 msgid ""
11080 "To bootstrap the path MTU discovery process on unconnected sockets, it is "
11081 "possible to start with a big datagram size (up to 64K-headers bytes long) "
11082 "and let it shrink by updates of the path MTU."
11083 msgstr ""
11084 "接続していないソケットに対して path MTU discovery プロセスを立ち上げるには、 "
11085 "大きなデータグラムサイズ (最大 64K ヘッダバイト長) からはじめて、 path MTU が"
11086 "更新されるまでサイズを縮めていくことも可能である。"
11087
11088 #. type: Plain text
11089 #: build/C/man7/ip.7:383
11090 msgid ""
11091 "To get an initial estimate of the path MTU, connect a datagram socket to the "
11092 "destination address using B<connect>(2)  and retrieve the MTU by calling "
11093 "B<getsockopt>(2)  with the B<IP_MTU> option."
11094 msgstr ""
11095 "path MTU の値をまず見積もってみるには、宛先アドレスに B<connect>(2)  を使って"
11096 "データグラムソケットを接続し、 B<getsockopt>(2)  を B<IP_MTU> オプションとと"
11097 "もに呼び、 MTU を取得することである。"
11098
11099 #. type: Plain text
11100 #: build/C/man7/ip.7:395
11101 msgid ""
11102 "It is possible to implement RFC 4821 MTU probing with B<SOCK_DGRAM> or "
11103 "B<SOCK_RAW> sockets by setting a value of B<IP_PMTUDISC_PROBE> (available "
11104 "since Linux 2.6.22).  This is also particularly useful for diagnostic tools "
11105 "such as B<tracepath>(8)  that wish to deliberately send probe packets larger "
11106 "than the observed Path MTU."
11107 msgstr ""
11108 "B<IP_PMTUDISC_PROBE> (Linux 2.6.22 以降で利用可能) を設定することで、 "
11109 "B<SOCK_DGRAM> や B<SOCK_RAW> のソケットで RFC 4821 の MTU 探索を実装すること"
11110 "が可能である。 また、この機能は、 B<tracepath>(8)  のような診断ツールで特に有"
11111 "用である。これらのツールでは、 観測された Path MTU よりも大きな探索パケットを"
11112 "意図的に 送信しようとする。"
11113
11114 #. type: TP
11115 #: build/C/man7/ip.7:395
11116 #, no-wrap
11117 msgid "B<IP_MULTICAST_IF> (since Linux 1.2)"
11118 msgstr "B<IP_MULTICAST_IF> (Linux 1.2 以降)"
11119
11120 #. type: Plain text
11121 #: build/C/man7/ip.7:404
11122 msgid ""
11123 "Set the local device for a multicast socket.  Argument is an I<ip_mreqn> or "
11124 "I<ip_mreq> structure similar to B<IP_ADD_MEMBERSHIP>."
11125 msgstr ""
11126 "ローカルデバイスをマルチキャストソケットとして設定する。引き数は "
11127 "B<IP_ADD_MEMBERSHIP> と同様に I<ip_mreqn> または I<ip_mreq> 構造体である。"
11128
11129 #. type: Plain text
11130 #: build/C/man7/ip.7:408
11131 msgid "When an invalid socket option is passed, B<ENOPROTOOPT> is returned."
11132 msgstr "不正なソケットオプションが渡されると、 B<ENOPROTOOPT> が返される。"
11133
11134 #. type: TP
11135 #: build/C/man7/ip.7:408
11136 #, no-wrap
11137 msgid "B<IP_MULTICAST_LOOP> (since Linux 1.2)"
11138 msgstr "B<IP_MULTICAST_LOOP> (Linux 1.2 以降)"
11139
11140 #. type: Plain text
11141 #: build/C/man7/ip.7:412
11142 msgid ""
11143 "Set or read a boolean integer argument that determines whether sent "
11144 "multicast packets should be looped back to the local sockets."
11145 msgstr ""
11146 "マルチキャストパケットをローカルなソケットにループバックするかどうかを 定める"
11147 "ブール値の整数引き数を設定・取得する。"
11148
11149 #. type: TP
11150 #: build/C/man7/ip.7:412
11151 #, no-wrap
11152 msgid "B<IP_MULTICAST_TTL> (since Linux 1.2)"
11153 msgstr "B<IP_MULTICAST_TTL> (Linux 1.2 以降)"
11154
11155 #. type: Plain text
11156 #: build/C/man7/ip.7:420
11157 msgid ""
11158 "Set or read the time-to-live value of outgoing multicast packets for this "
11159 "socket.  It is very important for multicast packets to set the smallest TTL "
11160 "possible.  The default is 1 which means that multicast packets don't leave "
11161 "the local network unless the user program explicitly requests it.  Argument "
11162 "is an integer."
11163 msgstr ""
11164 "このソケットから発信されるマルチキャストパケットの time-to-live 値を設定・取"
11165 "得する。 マルチキャストパケットに対しては、できるだけ小さな TTL に設定するこ"
11166 "とがとても重要である。デフォルトは 1 で、 ユーザープログラムが明示的に要求し"
11167 "ない限り マルチキャストパケットはローカルなネットワークから出ないことにな"
11168 "る。 引き数に整数を取る。"
11169
11170 #. type: TP
11171 #: build/C/man7/ip.7:420
11172 #, fuzzy, no-wrap
11173 #| msgid "B<IP_ROUTER_ALERT> (since Linux 2.2)"
11174 msgid "B<IP_NODEFRAG> (since Linux 2.6.36)"
11175 msgstr "B<IP_ROUTER_ALERT> (Linux 2.2 以降)"
11176
11177 #. type: Plain text
11178 #: build/C/man7/ip.7:428
11179 msgid ""
11180 "If enabled (argument is nonzero), the reassembly of outgoing packets is "
11181 "disabled in the netfilter layer.  This option is only valid for B<SOCK_RAW> "
11182 "sockets.  The argument is an integer."
11183 msgstr ""
11184
11185 #. type: TP
11186 #: build/C/man7/ip.7:428
11187 #, no-wrap
11188 msgid "B<IP_OPTIONS> (since Linux 2.0)"
11189 msgstr "B<IP_OPTIONS> (Linux 2.0 以降)"
11190
11191 #.  Precisely: 1.3.30
11192 #.  FIXME Document IP_PASSSEC
11193 #.  Boolean
11194 #.  Since Linux 2.6.17
11195 #.  commit 2c7946a7bf45ae86736ab3b43d0085e43947945c
11196 #.  Author: Catherine Zhang <cxzhang@watson.ibm.com>
11197 #. type: Plain text
11198 #: build/C/man7/ip.7:462
11199 msgid ""
11200 "Set or get the IP options to be sent with every packet from this socket.  "
11201 "The arguments are a pointer to a memory buffer containing the options and "
11202 "the option length.  The B<setsockopt>(2)  call sets the IP options "
11203 "associated with a socket.  The maximum option size for IPv4 is 40 bytes.  "
11204 "See RFC\\ 791 for the allowed options.  When the initial connection request "
11205 "packet for a B<SOCK_STREAM> socket contains IP options, the IP options will "
11206 "be set automatically to the options from the initial packet with routing "
11207 "headers reversed.  Incoming packets are not allowed to change options after "
11208 "the connection is established.  The processing of all incoming source "
11209 "routing options is disabled by default and can be enabled by using the "
11210 "I<accept_source_route> I</proc> interface.  Other options like timestamps "
11211 "are still handled.  For datagram sockets, IP options can be only set by the "
11212 "local user.  Calling B<getsockopt>(2)  with B<IP_OPTIONS> puts the current "
11213 "IP options used for sending into the supplied buffer."
11214 msgstr ""
11215 "このソケットから送られるパケット全てに付随する IP オプションを 設定・取得す"
11216 "る。オプションを保存しているメモリバッファへのポインタと オプションの長さとを"
11217 "引き数に取る。 B<setsockopt>(2)  を呼び出すと、ソケットに関連づけられる IP オ"
11218 "プションを設定できる。 IPv4 におけるオプションのサイズの最大値は 40 バイトで"
11219 "ある。 用いることのできるオプションについては RFC\\ 791 を見よ。 "
11220 "B<SOCK_STREAM> ソケットに対する初期接続要求パケットに IP オプションが含まれて"
11221 "いると、 ルーティングヘッダを付けて戻されてくる初期パケットの IP オプションに"
11222 "同じオプションがセットされる。接続が確立された後、 やってきたパケットのオプ"
11223 "ションを変更することはできない。 デフォルトでは。外部から受信したパケットの全"
11224 "ての source routing オプション の処理は無効となっており、 I</proc> インタ"
11225 "フェースの I<accept_source_route> を使うとこれを有効にできる。これを無効にし"
11226 "ていても timestamps など の他のオプションの処理は行われる。データグラムソケッ"
11227 "トでは、 IP オプションはローカルユーザーしか設定できない。 B<getsockopt>(2)  "
11228 "を B<IP_OPTIONS> をつけて呼ぶと、現在送信に用いられている IP オプションを 引"
11229 "き数に与えたバッファに取得できる。"
11230
11231 #. type: TP
11232 #: build/C/man7/ip.7:462
11233 #, no-wrap
11234 msgid "B<IP_PKTINFO> (since Linux 2.2)"
11235 msgstr "B<IP_PKTINFO> (Linux 2.2 以降)"
11236
11237 #.  Precisely: 2.1.68
11238 #. type: Plain text
11239 #: build/C/man7/ip.7:479
11240 msgid ""
11241 "Pass an B<IP_PKTINFO> ancillary message that contains a I<pktinfo> structure "
11242 "that supplies some information about the incoming packet.  This only works "
11243 "for datagram oriented sockets.  The argument is a flag that tells the socket "
11244 "whether the B<IP_PKTINFO> message should be passed or not.  The message "
11245 "itself can only be sent/retrieved as control message with a packet using "
11246 "B<recvmsg>(2)  or B<sendmsg>(2)."
11247 msgstr ""
11248 "B<IP_PKTINFO> 補助メッセージを渡す。これには到着パケットに関する情報を提供す"
11249 "る I<pktinfo> 構造体が含まれている。 データグラム指向のソケットでしか動作しな"
11250 "い。 引き数は B<IP_PKTINFO> メッセージを通過させるかどうかをソケットに知らせ"
11251 "るフラグである。 メッセージ自身は B<recvmsg>(2)  または B<sendmsg>(2)  を用い"
11252 "たパケットの制御メッセージとしてのみ送受信できる。"
11253
11254 #. type: Plain text
11255 #: build/C/man7/ip.7:488
11256 #, no-wrap
11257 msgid ""
11258 "struct in_pktinfo {\n"
11259 "    unsigned int   ipi_ifindex;  /* Interface index */\n"
11260 "    struct in_addr ipi_spec_dst; /* Local address */\n"
11261 "    struct in_addr ipi_addr;     /* Header Destination\n"
11262 "                                    address */\n"
11263 "};\n"
11264 msgstr ""
11265 "struct in_pktinfo {\n"
11266 "    unsigned int   ipi_ifindex;  /* Interface index */\n"
11267 "    struct in_addr ipi_spec_dst; /* Local address */\n"
11268 "    struct in_addr ipi_addr;     /* Header Destination\n"
11269 "                                    address */\n"
11270 "};\n"
11271
11272 #.  FIXME elaborate on that.
11273 #.  This field is grossly misnamed
11274 #. type: Plain text
11275 #: build/C/man7/ip.7:513
11276 msgid ""
11277 "I<ipi_ifindex> is the unique index of the interface the packet was received "
11278 "on.  I<ipi_spec_dst> is the local address of the packet and I<ipi_addr> is "
11279 "the destination address in the packet header.  If B<IP_PKTINFO> is passed to "
11280 "B<sendmsg>(2)  and I<ipi_spec_dst> is not zero, then it is used as the local "
11281 "source address for the routing table lookup and for setting up IP source "
11282 "route options.  When I<ipi_ifindex> is not zero, the primary local address "
11283 "of the interface specified by the index overwrites I<ipi_spec_dst> for the "
11284 "routing table lookup."
11285 msgstr ""
11286 "I<ipi_ifindex> はパケットが受信されたインターフェースの、他と重ならないイン"
11287 "デックスである。 I<ipi_spec_dst> はパケットのローカルアドレスである。 "
11288 "I<ipi_addr> はパケットヘッダにある宛先アドレスである。 B<IP_PKTINFO> が "
11289 "B<sendmsg>(2)  に渡されて、かつ I<ipi_spec_dst> が 0 以外の場合、 "
11290 "I<ipi_spec_dst> はルーティングテーブルを検索する際にローカルな送信元アドレス"
11291 "として使用され、 IP source route オプションを設定するのにも使用される。 "
11292 "I<ipi_ifindex> が 0 以外の場合、このインデックスによって指定されるインター"
11293 "フェースの プライマリローカルアドレスで I<ipi_spec_dst> を上書きし、ルーティ"
11294 "ングテーブルを検索する。"
11295
11296 #. type: TP
11297 #: build/C/man7/ip.7:513
11298 #, no-wrap
11299 msgid "B<IP_RECVERR> (since Linux 2.2)"
11300 msgstr "B<IP_RECVERR> (Linux 2.2 以降)"
11301
11302 #.  Precisely: 2.1.15
11303 #.  or SOL_IP on Linux
11304 #. type: Plain text
11305 #: build/C/man7/ip.7:535
11306 msgid ""
11307 "Enable extended reliable error message passing.  When enabled on a datagram "
11308 "socket, all generated errors will be queued in a per-socket error queue.  "
11309 "When the user receives an error from a socket operation, the errors can be "
11310 "received by calling B<recvmsg>(2)  with the B<MSG_ERRQUEUE> flag set.  The "
11311 "I<sock_extended_err> structure describing the error will be passed in an "
11312 "ancillary message with the type B<IP_RECVERR> and the level B<IPPROTO_IP>.  "
11313 "This is useful for reliable error handling on unconnected sockets.  The "
11314 "received data portion of the error queue contains the error packet."
11315 msgstr ""
11316 "エラーメッセージの受け渡しに、信頼性の高い拡張された方法を有効にする。 データ"
11317 "グラムソケットに対して有効になっていると、 発生したエラーは全てソケットごとの"
11318 "エラーキューに保存される。 ユーザーはソケット操作からエラーを受け取ったと"
11319 "き、 B<recvmsg>(2)  を B<MSG_ERRQUEUE> フラグとともに呼べばそのエラーを取得で"
11320 "きる。 そのエラーを記述する I<sock_extended_err> 構造体が、タイプ "
11321 "B<IP_RECVERR>・ レベル B<IPPROTO_IP> の補助メッセージとして渡される。 これは"
11322 "接続志向でないソケットで信頼性の高いエラー処理を行いたい場合に 有用である。エ"
11323 "ラーキューの受信データフラグメントには エラーパケットが含まれる。"
11324
11325 #. type: Plain text
11326 #: build/C/man7/ip.7:541
11327 msgid ""
11328 "The B<IP_RECVERR> control message contains a I<sock_extended_err> structure:"
11329 msgstr ""
11330 "B<IP_RECVERR> 制御メッセージには I<sock_extended_err> 構造体が含まれる:"
11331
11332 #. type: Plain text
11333 #: build/C/man7/ip.7:549
11334 #, no-wrap
11335 msgid ""
11336 "#define SO_EE_ORIGIN_NONE    0\n"
11337 "#define SO_EE_ORIGIN_LOCAL   1\n"
11338 "#define SO_EE_ORIGIN_ICMP    2\n"
11339 "#define SO_EE_ORIGIN_ICMP6   3\n"
11340 msgstr ""
11341 "#define SO_EE_ORIGIN_NONE    0\n"
11342 "#define SO_EE_ORIGIN_LOCAL   1\n"
11343 "#define SO_EE_ORIGIN_ICMP    2\n"
11344 "#define SO_EE_ORIGIN_ICMP6   3\n"
11345
11346 #. type: Plain text
11347 #: build/C/man7/ip.7:560
11348 #, no-wrap
11349 msgid ""
11350 "struct sock_extended_err {\n"
11351 "    uint32_t ee_errno;   /* error number */\n"
11352 "    uint8_t  ee_origin;  /* where the error originated */\n"
11353 "    uint8_t  ee_type;    /* type */\n"
11354 "    uint8_t  ee_code;    /* code */\n"
11355 "    uint8_t  ee_pad;\n"
11356 "    uint32_t ee_info;    /* additional information */\n"
11357 "    uint32_t ee_data;    /* other data */\n"
11358 "    /* More data may follow */\n"
11359 "};\n"
11360 msgstr ""
11361 "struct sock_extended_err {\n"
11362 "    uint32_t ee_errno;   /* error number */\n"
11363 "    uint8_t  ee_origin;  /* where the error originated */\n"
11364 "    uint8_t  ee_type;    /* type */\n"
11365 "    uint8_t  ee_code;    /* code */\n"
11366 "    uint8_t  ee_pad;\n"
11367 "    uint32_t ee_info;    /* additional information */\n"
11368 "    uint32_t ee_data;    /* other data */\n"
11369 "    /* More data may follow */\n"
11370 "};\n"
11371
11372 #. type: Plain text
11373 #: build/C/man7/ip.7:562
11374 #, no-wrap
11375 msgid "struct sockaddr *SO_EE_OFFENDER(struct sock_extended_err *);\n"
11376 msgstr "struct sockaddr *SO_EE_OFFENDER(struct sock_extended_err *);\n"
11377
11378 #. type: Plain text
11379 #: build/C/man7/ip.7:585
11380 msgid ""
11381 "I<ee_errno> contains the I<errno> number of the queued error.  I<ee_origin> "
11382 "is the origin code of where the error originated.  The other fields are "
11383 "protocol-specific.  The macro B<SO_EE_OFFENDER> returns a pointer to the "
11384 "address of the network object where the error originated from given a "
11385 "pointer to the ancillary message.  If this address is not known, the "
11386 "I<sa_family> member of the I<sockaddr> contains B<AF_UNSPEC> and the other "
11387 "fields of the I<sockaddr> are undefined."
11388 msgstr ""
11389 "I<ee_errno> にはキューに入っているエラーの I<errno> 番号が入る。 "
11390 "I<ee_origin> にはエラーが発生した場所を示すコードが入る。 その他のフィールド"
11391 "はプロトコル依存である。 B<SO_EE_OFFENDER> マクロは与えられた補助メッセージへ"
11392 "のポインタから エラーの発生したネットワークオブジェクトのアドレスへのポインタ"
11393 "を返す。 アドレスが不明な場合、 I<sockaddr> 構造体の I<sa_family> フィールド"
11394 "は B<AF_UNSPEC> となり、その他のフィールド値は不定である。"
11395
11396 #.  FIXME . Is it a good idea to document that? It is a dubious feature.
11397 #.  On
11398 #.  .B SOCK_STREAM
11399 #.  sockets,
11400 #.  .B IP_RECVERR
11401 #.  has slightly different semantics. Instead of
11402 #.  saving the errors for the next timeout, it passes all incoming
11403 #.  errors immediately to the user.
11404 #.  This might be useful for very short-lived TCP connections which
11405 #.  need fast error handling. Use this option with care:
11406 #.  it makes TCP unreliable
11407 #.  by not allowing it to recover properly from routing
11408 #.  shifts and other normal
11409 #.  conditions and breaks the protocol specification.
11410 #. type: Plain text
11411 #: build/C/man7/ip.7:644
11412 #, fuzzy
11413 #| msgid ""
11414 #| "IP uses the I<sock_extended_err> structure as follows: I<ee_origin> is "
11415 #| "set to B<SO_EE_ORIGIN_ICMP> for errors received as an ICMP packet, or "
11416 #| "B<SO_EE_ORIGIN_LOCAL> for locally generated errors.  Unknown values "
11417 #| "should be ignored.  I<ee_type> and I<ee_code> are set from the type and "
11418 #| "code fields of the ICMP header.  I<ee_info> contains the discovered MTU "
11419 #| "for B<EMSGSIZE> errors.  The message also contains the I<sockaddr_in of "
11420 #| "the node> caused the error, which can be accessed with the "
11421 #| "B<SO_EE_OFFENDER> macro.  The I<sin_family> field of the SO_EE_OFFENDER "
11422 #| "address is B<AF_UNSPEC> when the source was unknown.  When the error "
11423 #| "originated from the network, all IP options (I<IP_OPTIONS>, I<IP_TTL>, "
11424 #| "etc.) enabled on the socket and contained in the error packet are passed "
11425 #| "as control messages.  The payload of the packet causing the error is "
11426 #| "returned as normal payload.  Note that TCP has no error queue; "
11427 #| "B<MSG_ERRQUEUE> is not permitted on B<SOCK_STREAM> sockets.  "
11428 #| "B<IP_RECVERR> is valid for TCP, but all errors are returned by socket "
11429 #| "function return or B<SO_ERROR> only."
11430 msgid ""
11431 "IP uses the I<sock_extended_err> structure as follows: I<ee_origin> is set "
11432 "to B<SO_EE_ORIGIN_ICMP> for errors received as an ICMP packet, or "
11433 "B<SO_EE_ORIGIN_LOCAL> for locally generated errors.  Unknown values should "
11434 "be ignored.  I<ee_type> and I<ee_code> are set from the type and code fields "
11435 "of the ICMP header.  I<ee_info> contains the discovered MTU for B<EMSGSIZE> "
11436 "errors.  The message also contains the I<sockaddr_in of the node> caused the "
11437 "error, which can be accessed with the B<SO_EE_OFFENDER> macro.  The "
11438 "I<sin_family> field of the B<SO_EE_OFFENDER> address is B<AF_UNSPEC> when "
11439 "the source was unknown.  When the error originated from the network, all IP "
11440 "options (B<IP_OPTIONS>, B<IP_TTL>, etc.) enabled on the socket and contained "
11441 "in the error packet are passed as control messages.  The payload of the "
11442 "packet causing the error is returned as normal payload.  Note that TCP has "
11443 "no error queue; B<MSG_ERRQUEUE> is not permitted on B<SOCK_STREAM> sockets.  "
11444 "B<IP_RECVERR> is valid for TCP, but all errors are returned by socket "
11445 "function return or B<SO_ERROR> only."
11446 msgstr ""
11447 "IP は以下のような I<sock_extended_err> 構造体を用いる: I<ee_origin> は、 エ"
11448 "ラーが ICMP パケットとして受信された場合には B<SO_EE_ORIGIN_ICMP> にセットさ"
11449 "れ、ローカルで起こった場合には B<SO_EE_ORIGIN_LOCAL> にセットされる。 不明な"
11450 "値は無視される。 I<ee_type> と I<ee_code> は ICMP ヘッダの type フィールドと "
11451 "code フィールドの値にセットされる。 I<ee_info> には B<EMSGSIZE> エラーに対す"
11452 "る discover された MTU が入る。 メッセージにはエラーを引き起こしたノードの "
11453 "I<sockaddr_in> 構造体も含まれる。 これには B<SO_EE_OFFENDER> マクロを使ってア"
11454 "クセスできる。 ソースが不明の場合、 SO_EE_OFFENDER アドレスの I<sin_family> "
11455 "フィールドは B<AF_UNSPEC> となる。 エラーがネットワークで起きた場合には、 ソ"
11456 "ケットで有効になっていたすべての IP オプション (B<IP_OPTIONS>, B<IP_TTL> な"
11457 "ど) とエラーパケットに含まれていたすべての IP オプションとが、 制御メッセージ"
11458 "として渡される。 エラーを起こしたパケットのペイロード (payload) は 普通のペイ"
11459 "ロードとして返される。 TCP にはエラーキューがないことに注意してほしい。 "
11460 "B<MSG_ERRQUEUE> は B<SOCK_STREAM> ソケットに対しては使えない。 TCP では "
11461 "B<IP_RECVERR> だけが有効だが、ソケット関数から返されるエラーは B<SO_ERROR> だ"
11462 "けになる。"
11463
11464 #. type: Plain text
11465 #: build/C/man7/ip.7:649
11466 msgid ""
11467 "For raw sockets, B<IP_RECVERR> enables passing of all received ICMP errors "
11468 "to the application, otherwise errors are only reported on connected sockets"
11469 msgstr ""
11470 "raw ソケットに対して B<IP_RECVERR> を指定すると、受信したすべての ICMP エラー"
11471 "をアプリケーションに 渡すようになる。指定しないと、 接続済みのソケットに対す"
11472 "るエラーだけを報告する。"
11473
11474 #. type: Plain text
11475 #: build/C/man7/ip.7:653
11476 msgid ""
11477 "It sets or retrieves an integer boolean flag.  B<IP_RECVERR> defaults to off."
11478 msgstr ""
11479 "このオプションはブール値のフラグを設定・取得する。 B<IP_RECVERR> はデフォルト"
11480 "ではオフになっている。"
11481
11482 #. type: TP
11483 #: build/C/man7/ip.7:653
11484 #, no-wrap
11485 msgid "B<IP_RECVOPTS> (since Linux 2.2)"
11486 msgstr "B<IP_RECVOPTS> (Linux 2.2 以降)"
11487
11488 #.  Precisely: 2.1.15
11489 #. type: Plain text
11490 #: build/C/man7/ip.7:664
11491 msgid ""
11492 "Pass all incoming IP options to the user in a B<IP_OPTIONS> control "
11493 "message.  The routing header and other options are already filled in for the "
11494 "local host.  Not supported for B<SOCK_STREAM> sockets."
11495 msgstr ""
11496 "到着した全ての IP オプションを B<IP_OPTION> コントロールメッセージに入れて"
11497 "ユーザーに渡す。 ルーティングヘッダとその他のオプションとは、 ローカルホスト"
11498 "に対してはあらかじめ記入されている。 B<SOCK_STREAM> ソケットではサポートされ"
11499 "ていない。"
11500
11501 #. type: TP
11502 #: build/C/man7/ip.7:664
11503 #, fuzzy, no-wrap
11504 #| msgid "B<IP_RECVERR> (since Linux 2.2)"
11505 msgid "B<IP_RECVORIGDSTADDR> (since Linux 2.6.29)"
11506 msgstr "B<IP_RECVERR> (Linux 2.2 以降)"
11507
11508 #.  commit e8b2dfe9b4501ed0047459b2756ba26e5a940a69
11509 #. type: Plain text
11510 #: build/C/man7/ip.7:675
11511 msgid ""
11512 "This boolean option enables the B<IP_ORIGDSTADDR> ancillary message in "
11513 "B<recvmsg>(2), in which the kernel returns the original destination address "
11514 "of the datagram being received.  The ancillary message contains a I<struct "
11515 "sockaddr_in>."
11516 msgstr ""
11517
11518 #. type: TP
11519 #: build/C/man7/ip.7:675
11520 #, no-wrap
11521 msgid "B<IP_RECVTOS> (since Linux 2.2)"
11522 msgstr "B<IP_RECVTOS> (Linux 2.2 以降)"
11523
11524 #.  Precisely: 2.1.68
11525 #. type: Plain text
11526 #: build/C/man7/ip.7:684
11527 msgid ""
11528 "If enabled the B<IP_TOS> ancillary message is passed with incoming packets.  "
11529 "It contains a byte which specifies the Type of Service/Precedence field of "
11530 "the packet header.  Expects a boolean integer flag."
11531 msgstr ""
11532 "有効になっていると、 B<IP_TOS> 補助メッセージが到着パケットとともに渡され"
11533 "る。 これにはパケットヘッダの Service/Precedence フィールドのタイプを指定する"
11534 "バイトデータが含まれている。 ブール整数値のフラグをとる。"
11535
11536 #. type: TP
11537 #: build/C/man7/ip.7:684
11538 #, no-wrap
11539 msgid "B<IP_RECVTTL> (since Linux 2.2)"
11540 msgstr "B<IP_RECVTTL> (Linux 2.2 以降)"
11541
11542 #.  Precisely: 2.1.68
11543 #. type: Plain text
11544 #: build/C/man7/ip.7:694
11545 msgid ""
11546 "When this flag is set, pass a B<IP_TTL> control message with the time to "
11547 "live field of the received packet as a byte.  Not supported for "
11548 "B<SOCK_STREAM> sockets."
11549 msgstr ""
11550 "このフラグがセットされていると、 B<IP_TTL> コントロールメッセージが受信パケッ"
11551 "トの time-to-live フィールドのバイトデータとともに渡される。 B<SOCK_STREAM> "
11552 "ソケットではサポートされていない。"
11553
11554 #. type: TP
11555 #: build/C/man7/ip.7:694
11556 #, no-wrap
11557 msgid "B<IP_RETOPTS> (since Linux 2.2)"
11558 msgstr "B<IP_RETOPTS>"
11559
11560 #.  Precisely: 2.1.15
11561 #. type: Plain text
11562 #: build/C/man7/ip.7:701
11563 msgid ""
11564 "Identical to B<IP_RECVOPTS>, but returns raw unprocessed options with "
11565 "timestamp and route record options not filled in for this hop."
11566 msgstr ""
11567 "B<IP_RETOPTS> (Linux 2.2 以降)  B<IP_RECVOPTS> と等価だが、未処理の生のオプ"
11568 "ションを、 この hop では記入されない timestamp レコードと route レコードとと"
11569 "もに返す。"
11570
11571 #. type: TP
11572 #: build/C/man7/ip.7:701
11573 #, no-wrap
11574 msgid "B<IP_ROUTER_ALERT> (since Linux 2.2)"
11575 msgstr "B<IP_ROUTER_ALERT> (Linux 2.2 以降)"
11576
11577 #.  Precisely: 2.1.68
11578 #. type: Plain text
11579 #: build/C/man7/ip.7:713
11580 msgid ""
11581 "Pass all to-be forwarded packets with the IP Router Alert option set to this "
11582 "socket.  Only valid for raw sockets.  This is useful, for instance, for user-"
11583 "space RSVP daemons.  The tapped packets are not forwarded by the kernel; it "
11584 "is the user's responsibility to send them out again.  Socket binding is "
11585 "ignored, such packets are only filtered by protocol.  Expects an integer "
11586 "flag."
11587 msgstr ""
11588 "フォワードすべきパケットを IP Router Alert オプションをつけて このソケットに"
11589 "渡す。 raw ソケットに対してのみ有効である。これはたとえばユーザー空間の RSVP "
11590 "デーモンに対して便利である。タップされたパケットは カーネルによってはフォワー"
11591 "ドされないので、これらを再送するのは ユーザーの責任となる。ソケットのバインド"
11592 "は無視され、 このようなパケットはプロトコルによってのみフィルタリングされ"
11593 "る。 整数値のフラグを取る。"
11594
11595 #. type: TP
11596 #: build/C/man7/ip.7:713
11597 #, no-wrap
11598 msgid "B<IP_TOS> (since Linux 1.0)"
11599 msgstr "B<IP_TOS> (Linux 1.0 以降)"
11600
11601 #.  FIXME elaborate on this
11602 #.  Needs CAP_NET_ADMIN
11603 #.  Boolean
11604 #.  Since Linux 2.6.27
11605 #.  Author: KOVACS Krisztian <hidden@sch.bme.hu>
11606 #.  http://lwn.net/Articles/252545/
11607 #. type: Plain text
11608 #: build/C/man7/ip.7:747
11609 msgid ""
11610 "Set or receive the Type-Of-Service (TOS) field that is sent with every IP "
11611 "packet originating from this socket.  It is used to prioritize packets on "
11612 "the network.  TOS is a byte.  There are some standard TOS flags defined: "
11613 "B<IPTOS_LOWDELAY> to minimize delays for interactive traffic, "
11614 "B<IPTOS_THROUGHPUT> to optimize throughput, B<IPTOS_RELIABILITY> to optimize "
11615 "for reliability, B<IPTOS_MINCOST> should be used for \"filler data\" where "
11616 "slow transmission doesn't matter.  At most one of these TOS values can be "
11617 "specified.  Other bits are invalid and shall be cleared.  Linux sends "
11618 "B<IPTOS_LOWDELAY> datagrams first by default, but the exact behavior depends "
11619 "on the configured queueing discipline.  Some high priority levels may "
11620 "require superuser privileges (the B<CAP_NET_ADMIN> capability).  The "
11621 "priority can also be set in a protocol independent way by the "
11622 "(B<SOL_SOCKET>, B<SO_PRIORITY>)  socket option (see B<socket>(7))."
11623 msgstr ""
11624 "このソケットから送信されるすべての IP パケットに適用される Type-Of-Service "
11625 "(TOS) フィールドを設定・取得する。 これはネットワーク上でのパケットの優先度を"
11626 "決めるために用いられる。 TOS はバイトデータである。標準の TOS フラグがいくつ"
11627 "か定義されている。 B<IPTOS_LOWDELAY> はインタラクティブなトラフィックの遅延を"
11628 "最小にする。 B<IPTOS_THROUGHPUT> はスループットを最大にする。 "
11629 "B<IPTOS_RELIABILITY> は信頼性を最高にする。 B<IPTOS_MINCOST> は転送速度が遅く"
11630 "てもかまわないとき、「データを詰め込む」のに用いられる。 これらのうち、 1 つ"
11631 "までだけを設定できる。 他のビットは無効で、クリアされる。 Linux はデフォルト"
11632 "では B<IPTOS_LOWDELAY> データグラムを最初に送信する。 しかし、正確な振る舞い"
11633 "はキュー処理の設定に依存する。 高い優先度にするにはスーパーユーザー権限 "
11634 "(B<CAP_NET_ADMIN> ケーパビリティ) が必要となるかもしれない。 優先度は "
11635 "(B<SOL_SOCKET>, B<SO_PRIORITY>)  ソケットオプションを用いれば、 プロトコルに"
11636 "依存しない形でも設定できる (B<socket>(7)  を見よ)。"
11637
11638 #. type: TP
11639 #: build/C/man7/ip.7:747
11640 #, fuzzy, no-wrap
11641 #| msgid "B<IP_ROUTER_ALERT> (since Linux 2.2)"
11642 msgid "B<IP_TRANSPARENT> (since Linux 2.6.24)"
11643 msgstr "B<IP_ROUTER_ALERT> (Linux 2.2 以降)"
11644
11645 #.  commit f5715aea4564f233767ea1d944b2637a5fd7cd2e
11646 #.      This patch introduces the IP_TRANSPARENT socket option: enabling that
11647 #.      will make the IPv4 routing omit the non-local source address check on
11648 #.      output. Setting IP_TRANSPARENT requires NET_ADMIN capability.
11649 #.  http://lwn.net/Articles/252545/
11650 #. type: Plain text
11651 #: build/C/man7/ip.7:764
11652 msgid ""
11653 "Setting this boolean option enables transparent proxying on this socket.  "
11654 "This socket option allows the calling application to bind to a nonlocal IP "
11655 "address and operate both as a client and a server with the foreign address "
11656 "as the local endpoint.  NOTE: this requires that routing be set up in a way "
11657 "that packets going to the foreign address are routed through the TProxy "
11658 "box.  Enabling this socket option requires superuser privileges (the "
11659 "B<CAP_NET_ADMIN> capability)."
11660 msgstr ""
11661
11662 #. type: Plain text
11663 #: build/C/man7/ip.7:767
11664 msgid ""
11665 "TProxy redirection with the iptables TPROXY target also requires that this "
11666 "option be set on the redirected socket."
11667 msgstr ""
11668
11669 #. type: TP
11670 #: build/C/man7/ip.7:767
11671 #, no-wrap
11672 msgid "B<IP_TTL> (since Linux 1.0)"
11673 msgstr "B<IP_TTL> (Linux 1.0 以降)"
11674
11675 #.  FIXME Document IP_XFRM_POLICY
11676 #.  Since Linux 2.5.48
11677 #.  Needs CAP_NET_ADMIN
11678 #. type: Plain text
11679 #: build/C/man7/ip.7:774
11680 msgid ""
11681 "Set or retrieve the current time-to-live field that is used in every packet "
11682 "sent from this socket."
11683 msgstr ""
11684 "time-to-live フィールドの値を設定または取得する。 この値はこのソケットから送"
11685 "信されるすべてのパケットに用いられる。"
11686
11687 #.  FIXME As at 2.6.12, 14 Jun 2005, the following are undocumented:
11688 #.      ip_queue_maxlen
11689 #.      ip_conntrack_max
11690 #. type: Plain text
11691 #: build/C/man7/ip.7:790
11692 msgid ""
11693 "The IP protocol supports a set of I</proc> interfaces to configure some "
11694 "global parameters.  The parameters can be accessed by reading or writing "
11695 "files in the directory I</proc/sys/net/ipv4/>.  Interfaces described as "
11696 "I<Boolean> take an integer value, with a nonzero value (\"true\") meaning "
11697 "that the corresponding option is enabled, and a zero value (\"false\")  "
11698 "meaning that the option is disabled."
11699 msgstr ""
11700 "IP プロトコルでは、いくつかのグローバルパラメータを設定するための I</proc> "
11701 "ファイル群が用意されている。 これらのパラメータには、 I</proc/sys/net/ipv4/> "
11702 "ディレクトリ内のファイルの読み書きでアクセスできる。 I<Boolean> と書かれたイ"
11703 "ンタフェースは整数値をとり、 0 以外の値 (\"true\") は対応するオプションが有"
11704 "効、 0 値 (\"false\") は無効、であることを意味する。"
11705
11706 #. type: TP
11707 #: build/C/man7/ip.7:790
11708 #, no-wrap
11709 msgid "I<ip_always_defrag> (Boolean; since Linux 2.2.13)"
11710 msgstr "I<ip_always_defrag> (Boolean; Linux 2.2.13 以降)"
11711
11712 #. type: Plain text
11713 #: build/C/man7/ip.7:796
11714 msgid ""
11715 "[New with kernel 2.2.13; in earlier kernel versions this feature was "
11716 "controlled at compile time by the B<CONFIG_IP_ALWAYS_DEFRAG> option; this "
11717 "option is not present in 2.4.x and later]"
11718 msgstr ""
11719 "[2.2.13 で新規登場。以前のバージョンのカーネルでは、この機能は コンパイル時"
11720 "に B<CONFIG_IP_ALWAYS_DEFRAG> オプションによって制御されていた; このファイル"
11721 "は 2.4.x 以降では存在しない]"
11722
11723 #. type: Plain text
11724 #: build/C/man7/ip.7:803
11725 msgid ""
11726 "When this boolean flag is enabled (not equal 0), incoming fragments (parts "
11727 "of IP packets that arose when some host between origin and destination "
11728 "decided that the packets were too large and cut them into pieces) will be "
11729 "reassembled (defragmented) before being processed, even if they are about to "
11730 "be forwarded."
11731 msgstr ""
11732 "このブール値のフラグが有効になっている (0 以外になっている) と、 到着したフラ"
11733 "グメント (IP パケットの一部で、 発信元と発信先の間のどこかのホストで、そのパ"
11734 "ケットが 大きすぎると判断され、分割された場合に生じる)  は、たとえフォワード"
11735 "される場合であっても 処理前に再構築 (デフラグメント) される。"
11736
11737 #. type: Plain text
11738 #: build/C/man7/ip.7:810
11739 msgid ""
11740 "Only enable if running either a firewall that is the sole link to your "
11741 "network or a transparent proxy; never ever use it for a normal router or "
11742 "host.  Otherwise fragmented communication can be disturbed if the fragments "
11743 "travel over different links.  Defragmentation also has a large memory and "
11744 "CPU time cost."
11745 msgstr ""
11746 "ファイアウォールがローカル側のネットワークに唯一のリンクを持っている 場合や、"
11747 "透過プロクシの場合に限って有効にすべきである。 通常のルーターやホストでは決し"
11748 "て使用することのないように。 さもないとフラグメントが別のリンクを経由して伝わ"
11749 "る場合に、 通信のフラグメント化ができなくなってしまう。 またフラグメント再構"
11750 "築処理はメモリと CPU 時間のコストが非常に大きい。"
11751
11752 #. type: Plain text
11753 #: build/C/man7/ip.7:814
11754 msgid ""
11755 "This is automagically turned on when masquerading or transparent proxying "
11756 "are configured."
11757 msgstr ""
11758 "これはマスカレードや透過プロクシが設定されると、 不思議な仕組みによって自動的"
11759 "に有効になる。"
11760
11761 #. type: TP
11762 #: build/C/man7/ip.7:814
11763 #, no-wrap
11764 msgid "I<ip_autoconfig> (since Linux 2.2 to 2.6.17)"
11765 msgstr "I<ip_autoconfig> (Linux 2.2 以降 2.6.17 まで)"
11766
11767 #.  Precisely: since 2.1.68
11768 #.  FIXME document ip_autoconfig
11769 #. type: Plain text
11770 #: build/C/man7/ip.7:820
11771 msgid "Not documented."
11772 msgstr "まだ記述していない。"
11773
11774 #. type: TP
11775 #: build/C/man7/ip.7:820
11776 #, no-wrap
11777 msgid "I<ip_default_ttl> (integer; default: 64; since Linux 2.2)"
11778 msgstr "I<ip_default_ttl> (integer; default: 64; Linux 2.2 以降)"
11779
11780 #.  Precisely: 2.1.15
11781 #. type: Plain text
11782 #: build/C/man7/ip.7:828
11783 msgid ""
11784 "Set the default time-to-live value of outgoing packets.  This can be changed "
11785 "per socket with the B<IP_TTL> option."
11786 msgstr ""
11787 "送出されるパケットの time-to-live 値のデフォルトをセットする。 これは "
11788 "B<IP_TTL> オプションを用いれば、パケットごとに変えることもできる。"
11789
11790 #. type: TP
11791 #: build/C/man7/ip.7:828
11792 #, no-wrap
11793 msgid "I<ip_dynaddr> (Boolean; default: disabled; since Linux 2.0.31)"
11794 msgstr "I<ip_dynaddr> (Boolean; default: disabled; Linux 2.0.31 以降)"
11795
11796 #. type: Plain text
11797 #: build/C/man7/ip.7:835
11798 msgid ""
11799 "Enable dynamic socket address and masquerading entry rewriting on interface "
11800 "address change.  This is useful for dialup interface with changing IP "
11801 "addresses.  0 means no rewriting, 1 turns it on and 2 enables verbose mode."
11802 msgstr ""
11803 "動的ソケットアドレスと、インターフェースアドレスが変更された際の マスカレード"
11804 "エントリの再書き込みを有効にする。 ダイアルアップインターフェースで、 IP アド"
11805 "レスが変更される場合に便利である。"
11806
11807 #. type: TP
11808 #: build/C/man7/ip.7:835
11809 #, no-wrap
11810 msgid "I<ip_forward> (Boolean; default: disabled; since Linux 1.2)"
11811 msgstr "I<ip_forward> (Boolean; default: disabled; Linux 1.2 以降)"
11812
11813 #. type: Plain text
11814 #: build/C/man7/ip.7:840
11815 msgid ""
11816 "Enable IP forwarding with a boolean flag.  IP forwarding can be also set on "
11817 "a per-interface basis."
11818 msgstr ""
11819 "IP forwarding を有効にするかどうかのブール値フラグ。 IP forwarding するかどう"
11820 "かはインターフェースごとにも設定できる。"
11821
11822 #. type: TP
11823 #: build/C/man7/ip.7:840
11824 #, no-wrap
11825 msgid "I<ip_local_port_range> (since Linux 2.2)"
11826 msgstr "I<ip_local_port_range> (Linux 2.2 以降)"
11827
11828 #.  Precisely: since 2.1.68
11829 #. type: Plain text
11830 #: build/C/man7/ip.7:854
11831 msgid ""
11832 "Contains two integers that define the default local port range allocated to "
11833 "sockets.  Allocation starts with the first number and ends with the second "
11834 "number.  Note that these should not conflict with the ports used by "
11835 "masquerading (although the case is handled).  Also arbitrary choices may "
11836 "cause problems with some firewall packet filters that make assumptions about "
11837 "the local ports in use.  First number should be at least greater than 1024, "
11838 "or better, greater than 4096, to avoid clashes with well known ports and to "
11839 "minimize firewall problems."
11840 msgstr ""
11841 "ソケットに割り当てられているデフォルトのローカルポートの範囲を定める 二つの整"
11842 "数を与える。割り当ては 1 番目の番号から始まり、 2 番目の番号で終わる。 これら"
11843 "はマスカレードで用いられているポートと重なってはならない (その場合も取り扱わ"
11844 "れるが)。 ファイアウォールのパケットフィルターが「利用中のローカルポート」 に"
11845 "ついて何らかの仮定をしている場合には、 番号を勝手に決めてしまうと問題が起きる"
11846 "かもしれない。 1 番目の番号は少なくとも 1024 より大きくすべきである。 良く使"
11847 "われるポートとの衝突を避けたり、ファイアウォールの問題を 回避したければ、 "
11848 "4096 よりも大きくするほうが良いだろう。"
11849
11850 #. type: TP
11851 #: build/C/man7/ip.7:854
11852 #, no-wrap
11853 msgid "I<ip_no_pmtu_disc> (Boolean; default: disabled; since Linux 2.2)"
11854 msgstr "I<ip_no_pmtu_disc> (Boolean; default: disabled; Linux 2.2 以降)"
11855
11856 #.  Precisely: 2.1.15
11857 #.  The following is from 2.6.12: Documentation/networking/ip-sysctl.txt
11858 #. type: Plain text
11859 #: build/C/man7/ip.7:866
11860 msgid ""
11861 "If enabled, don't do Path MTU Discovery for TCP sockets by default.  Path "
11862 "MTU discovery may fail if misconfigured firewalls (that drop all ICMP "
11863 "packets) or misconfigured interfaces (e.g., a point-to-point link where the "
11864 "both ends don't agree on the MTU) are on the path.  It is better to fix the "
11865 "broken routers on the path than to turn off Path MTU Discovery globally, "
11866 "because not doing it incurs a high cost to the network."
11867 msgstr ""
11868 "有効になっていると、デフォルトで TCP ソケットに対する Path MTU Discoverty を"
11869 "行わない。 Path MTU Discovery は、 正しく設定されていない (ICMP パケットを全"
11870 "てドロップする) ファイアウォールや、 (point-to-point リンクで双方の MTU が一"
11871 "致していない場合など)  正しく設定されていないインターフェースが経路上に存在す"
11872 "ると失敗してしまう。 Path MTU Discovery をグローバルに無効にするよりは、 壊れ"
11873 "ているルータを直すほうが良い。 Path MTU Discovery を無効にするとネットワーク"
11874 "のコストが 大きくなってしまうからである。"
11875
11876 #. type: TP
11877 #: build/C/man7/ip.7:866
11878 #, no-wrap
11879 msgid "I<ip_nonlocal_bind> (Boolean; default: disabled; since Linux 2.4)"
11880 msgstr "I<ip_nonlocal_bind> (Boolean; default: disabled; Linux 2.4 以降)"
11881
11882 #.  Precisely: patch-2.4.0-test10
11883 #.  The following is from 2.6.12: Documentation/networking/ip-sysctl.txt
11884 #. type: Plain text
11885 #: build/C/man7/ip.7:875
11886 msgid ""
11887 "If set, allows processes to B<bind>(2)  to nonlocal IP addresses, which can "
11888 "be quite useful, but may break some applications."
11889 msgstr ""
11890 "セットされていれば、プロセスが自分以外の IP アドレスを B<bind>(2)  できるよう"
11891 "になる。これはかなり便利だが、うまく動かないアプリケーションもある。"
11892
11893 #. type: TP
11894 #: build/C/man7/ip.7:875
11895 #, fuzzy, no-wrap
11896 #| msgid "I<ip6frag_time> (integer; default 30)"
11897 msgid "I<ip6frag_time> (integer; default: 30)"
11898 msgstr "I<ip6frag_time> (integer; default 30)"
11899
11900 #.  The following is from 2.6.12: Documentation/networking/ip-sysctl.txt
11901 #. type: Plain text
11902 #: build/C/man7/ip.7:880
11903 msgid "Time in seconds to keep an IPv6 fragment in memory."
11904 msgstr "IPv6 フラグメントをメモリに保持しておく時間 (秒単位)。"
11905
11906 #. type: TP
11907 #: build/C/man7/ip.7:880
11908 #, fuzzy, no-wrap
11909 #| msgid "I<ip6frag_secret_interval> (integer; default 600)"
11910 msgid "I<ip6frag_secret_interval> (integer; default: 600)"
11911 msgstr "I<ip6frag_secret_interval> (integer; default 600)"
11912
11913 #. type: Plain text
11914 #: build/C/man7/ip.7:884
11915 msgid ""
11916 "Regeneration interval (in seconds) of the hash secret (or lifetime for the "
11917 "hash secret) for IPv6 fragments."
11918 msgstr ""
11919 "IPv6 フラグメントの hash secret の生成間隔 (hash secret の寿命)  (秒単位)。"
11920
11921 #. type: TP
11922 #: build/C/man7/ip.7:884
11923 #, no-wrap
11924 msgid "I<ipfrag_high_thresh> (integer), I<ipfrag_low_thresh> (integer)"
11925 msgstr "I<ipfrag_high_thresh> (integer), I<ipfrag_low_thresh> (integer)"
11926
11927 #. type: Plain text
11928 #: build/C/man7/ip.7:891
11929 msgid ""
11930 "If the amount of queued IP fragments reaches I<ipfrag_high_thresh>, the "
11931 "queue is pruned down to I<ipfrag_low_thresh>.  Contains an integer with the "
11932 "number of bytes."
11933 msgstr ""
11934 "キューイングされている IP フラグメントの量が I<ipfrag_high_thresh> に達する"
11935 "と、キューの内容は I<ipfrag_low_thresh> にまで切り捨てられる。それぞれの大き"
11936 "さを バイト単位で表す整数値が入っている。"
11937
11938 #. type: TP
11939 #: build/C/man7/ip.7:891
11940 #, no-wrap
11941 msgid "I<neigh/*>"
11942 msgstr "I<neigh/*>"
11943
11944 #.  FIXME Document the conf/*/* interfaces
11945 #.  FIXME Document the route/* interfaces
11946 #.  FIXME document them all
11947 #. type: Plain text
11948 #: build/C/man7/ip.7:898
11949 msgid "See B<arp>(7)."
11950 msgstr "B<arp>(7)  を見よ。"
11951
11952 #.  2006-04-02, mtk
11953 #.  commented out the following because ipchains is obsolete
11954 #.  .PP
11955 #.  The ioctls to configure firewalling are documented in
11956 #.  .BR ipfw (4)
11957 #.  from the
11958 #.  .B ipchains
11959 #.  package.
11960 #. type: Plain text
11961 #: build/C/man7/ip.7:911
11962 msgid "All ioctls described in B<socket>(7)  apply to B<ip>."
11963 msgstr "B<socket>(7)  に記述されている ioctl は、すべて B<ip> にも適用される。"
11964
11965 #.  FIXME Add a discussion of multicasting
11966 #. type: Plain text
11967 #: build/C/man7/ip.7:915
11968 msgid ""
11969 "Ioctls to configure generic device parameters are described in B<netdevice>"
11970 "(7)."
11971 msgstr ""
11972 "ジェネリックデバイスのパラメータを設定する ioctl については B<netdevice>(7)  "
11973 "に記述されている。"
11974
11975 #. type: Plain text
11976 #: build/C/man7/ip.7:935
11977 msgid ""
11978 "The user tried to execute an operation without the necessary permissions.  "
11979 "These include: sending a packet to a broadcast address without having the "
11980 "B<SO_BROADCAST> flag set; sending a packet via a I<prohibit> route; "
11981 "modifying firewall settings without superuser privileges (the "
11982 "B<CAP_NET_ADMIN> capability); binding to a privileged port without superuser "
11983 "privileges (the B<CAP_NET_BIND_SERVICE> capability)."
11984 msgstr ""
11985 "必要な権限のないユーザーが操作を実行しようとした。 以下のような場合が考えられ"
11986 "る: B<SO_BROADCAST> フラグを設定していない状態でブロードキャストアドレスに パ"
11987 "ケットを送ろうとした。 I<prohibit> なルートを通してパケットを送ろうとした。 "
11988 "スーパーユーザー権限 (B<CAP_NET_ADMIN> ケーパビリティ) なしでファイアウォール"
11989 "の設定を変更しようとした。 スーパーユーザー権限 (B<CAP_NET_BIND_SERVICE> ケー"
11990 "パビリティ) なしで特権ポートにバインドしようとした。"
11991
11992 #. type: Plain text
11993 #: build/C/man7/ip.7:948
11994 msgid "An connection operation on a nonblocking socket is already in progress."
11995 msgstr "非ブロッキングソケットに対する接続操作が既に実行中である。"
11996
11997 #. type: Plain text
11998 #: build/C/man7/ip.7:957
11999 msgid ""
12000 "No valid routing table entry matches the destination address.  This error "
12001 "can be caused by a ICMP message from a remote router or for the local "
12002 "routing table."
12003 msgstr ""
12004 "宛先アドレスにマッチする有効なエントリがルーティングテーブルに 存在しない。こ"
12005 "のエラーはリモートルータからの、 あるいはローカルルーティングテーブルへの "
12006 "ICMP メッセージによって引き起こされることがある。"
12007
12008 #. type: Plain text
12009 #: build/C/man7/ip.7:963
12010 msgid ""
12011 "Invalid argument passed.  For send operations this can be caused by sending "
12012 "to a I<blackhole> route."
12013 msgstr ""
12014 "不正な引き数が渡された。送信操作において、 I<blackhole> ルートに送信しようと"
12015 "するとこのエラーが起こることがある。"
12016
12017 #. type: Plain text
12018 #: build/C/man7/ip.7:970
12019 msgid "Datagram is bigger than an MTU on the path and it cannot be fragmented."
12020 msgstr "データグラムが path MTU よりも大きく、フラグメント化もできない。"
12021
12022 #. type: TP
12023 #: build/C/man7/ip.7:970
12024 #, no-wrap
12025 msgid "B<ENOBUFS>, B<ENOMEM>"
12026 msgstr "B<ENOBUFS>, B<ENOMEM>"
12027
12028 #. type: Plain text
12029 #: build/C/man7/ip.7:975
12030 msgid ""
12031 "Not enough free memory.  This often means that the memory allocation is "
12032 "limited by the socket buffer limits, not by the system memory, but this is "
12033 "not 100% consistent."
12034 msgstr ""
12035 "空きメモリが足りない。 このエラーは、メモリアロケーションがソケットバッファ"
12036 "の 大きさによって制限されていることを意味しているのが通常であるが、 100% そう"
12037 "だというわけではない。"
12038
12039 #. type: Plain text
12040 #: build/C/man7/ip.7:993
12041 msgid ""
12042 "User doesn't have permission to set high priority, change configuration, or "
12043 "send signals to the requested process or group."
12044 msgstr ""
12045 "高い優先度を設定したり、設定を変更したり、要求されたプロセスや プロセスグルー"
12046 "プにシグナルを送ったりするのに必要な権限を、 ユーザーが持っていない。"
12047
12048 #. type: Plain text
12049 #: build/C/man7/ip.7:999
12050 msgid "The socket is not configured or an unknown socket type was requested."
12051 msgstr "ソケットが未設定であるか、知らないソケットタイプが要求された。"
12052
12053 #. type: Plain text
12054 #: build/C/man7/ip.7:1006
12055 msgid ""
12056 "Other errors may be generated by the overlaying protocols; see B<tcp>(7), "
12057 "B<raw>(7), B<udp>(7)  and B<socket>(7)."
12058 msgstr ""
12059 "他のエラーが上層のプロトコルによって生じるかもしれない。 B<tcp>(7), B<raw>"
12060 "(7), B<udp>(7), B<socket>(7)  などを参照のこと。"
12061
12062 #.  IP_PASSSEC is Linux-specific
12063 #.  IP_XFRM_POLICY is Linux-specific
12064 #.  IP_IPSEC_POLICY is a nonstandard extension, also present on some BSDs
12065 #. type: Plain text
12066 #: build/C/man7/ip.7:1020
12067 msgid ""
12068 "B<IP_FREEBIND>, B<IP_MTU>, B<IP_MTU_DISCOVER>, B<IP_RECVORIGDSTADDR>, "
12069 "B<IP_PKTINFO>, B<IP_RECVERR>, B<IP_ROUTER_ALERT>, and B<IP_TRANSPARENT> are "
12070 "Linux-specific."
12071 msgstr ""
12072
12073 #. type: Plain text
12074 #: build/C/man7/ip.7:1029
12075 #, fuzzy
12076 #| msgid ""
12077 #| "B<IP_MTU>, B<IP_MTU_DISCOVER>, B<IP_PKTINFO>, B<IP_RECVERR> and "
12078 #| "B<IP_ROUTER_ALERT> are Linux-specific and should not be used in programs "
12079 #| "intended to be portable.  Be very careful with the B<SO_BROADCAST> option "
12080 #| "- it is not privileged in Linux.  It is easy to overload the network with "
12081 #| "careless broadcasts.  For new application protocols it is better to use a "
12082 #| "multicast group instead of broadcasting.  Broadcasting is discouraged."
12083 msgid ""
12084 "Be very careful with the B<SO_BROADCAST> option - it is not privileged in "
12085 "Linux.  It is easy to overload the network with careless broadcasts.  For "
12086 "new application protocols it is better to use a multicast group instead of "
12087 "broadcasting.  Broadcasting is discouraged."
12088 msgstr ""
12089 "B<IP_MTU>, B<IP_MTU_DISCOVER>, B<IP_PKTINFO>, B<IP_RECVERR>, "
12090 "B<IP_ROUTER_ALERT> は Linux 固有であり、移植性を考慮したプログラムでは 用いる"
12091 "べきではない。 B<SO_BROADCAST> オプションの利用には、くれぐれも注意するこ"
12092 "と。 これは Linux では特権操作ではない。 不注意なブロードキャストを行うと、"
12093 "ネットワークは簡単に過負荷状態になる。 新しいアプリケーションプロトコルには、"
12094 "ブロードキャストではなく マルチキャストグループを用いるほうがよい。 ブロード"
12095 "キャストは推奨されない。"
12096
12097 #. type: Plain text
12098 #: build/C/man7/ip.7:1039
12099 msgid ""
12100 "Some other BSD sockets implementations provide B<IP_RCVDSTADDR> and "
12101 "B<IP_RECVIF> socket options to get the destination address and the interface "
12102 "of received datagrams.  Linux has the more general B<IP_PKTINFO> for the "
12103 "same task."
12104 msgstr ""
12105 "他の BSD のソケット実装では、 B<IP_RCVDSTADDR> と B<IP_RECVIF> といったソケッ"
12106 "トオプションがサポートされており、 宛先アドレスや受信データグラムのインター"
12107 "フェースが取得できるように なっていることもある。 Linux で同じことをやらせる"
12108 "には、より一般的な B<IP_PKTINFO> が使える。"
12109
12110 #. type: Plain text
12111 #: build/C/man7/ip.7:1048
12112 msgid ""
12113 "Some BSD sockets implementations also provide an B<IP_RECVTTL> option, but "
12114 "an ancillary message with type B<IP_RECVTTL> is passed with the incoming "
12115 "packet.  This is different from the B<IP_TTL> option used in Linux."
12116 msgstr ""
12117 "いくつかの BSD のソケット実装では B<IP_RECVTTL> オプションも提供されている"
12118 "が、タイプ B<IP_RECVTTL> の補助メッセージは受信パケットとともに渡される。 こ"
12119 "れは Linux で使われている B<IP_TTL> オプションとは異なる動作である。"
12120
12121 #. type: Plain text
12122 #: build/C/man7/ip.7:1054
12123 msgid ""
12124 "Using B<SOL_IP> socket options level isn't portable, BSD-based stacks use "
12125 "B<IPPROTO_IP> level."
12126 msgstr ""
12127 "B<SOL_IP> ソケットオプションレベルは移植性がない。 BSD ベースのプロトコルス"
12128 "タックでは B<IPPROTO_IP> レベルが使用されている。"
12129
12130 #. type: Plain text
12131 #: build/C/man7/ip.7:1067
12132 msgid ""
12133 "For compatibility with Linux 2.0, the obsolete B<socket(AF_INET, "
12134 "SOCK_PACKET, >I<protocol>B<)> syntax is still supported to open a B<packet>"
12135 "(7)  socket.  This is deprecated and should be replaced by B<socket"
12136 "(AF_PACKET, SOCK_RAW, >I<protocol>B<)> instead.  The main difference is the "
12137 "new I<sockaddr_ll> address structure for generic link layer information "
12138 "instead of the old B<sockaddr_pkt>."
12139 msgstr ""
12140 "Linux 2.0 との互換性のために、 obsolete な B<socket(AF_INET, SOCK_PACKET, "
12141 ">I<protocol>B<)> という書式でも B<packet>(7)  をオープンできるようになってい"
12142 "るが、これはお勧めできない。今後は B<socket(AF_PACKET, SOCK_RAW, "
12143 ">I<protocol>B<)> を代わりに用いるべきである。主な違いは、ジェネリックなリンク"
12144 "層用の I<sockaddr_ll> アドレス構造体が、古い B<sockaddr_pkt> に変わって用いら"
12145 "れるようになったことである。"
12146
12147 #. type: Plain text
12148 #: build/C/man7/ip.7:1072
12149 msgid ""
12150 "The ioctls to configure IP-specific interface options and ARP tables are not "
12151 "described."
12152 msgstr ""
12153 "IP 固有のインターフェースオプションを指定するための ioctl と ARP テーブルのこ"
12154 "とが記述されていない。"
12155
12156 #. type: Plain text
12157 #: build/C/man7/ip.7:1076
12158 msgid ""
12159 "Some versions of glibc forget to declare I<in_pktinfo>.  Workaround "
12160 "currently is to copy it into your program from this man page."
12161 msgstr ""
12162 "glibc のバージョンによっては I<in_pktinfo> の定義を忘れているものがある。 現"
12163 "時点でのとりあえずの対策としては、この man ページにある定義をプログラム中に "
12164 "コピーすることである。"
12165
12166 #.  .SH AUTHORS
12167 #.  This man page was written by Andi Kleen.
12168 #. type: Plain text
12169 #: build/C/man7/ip.7:1086
12170 msgid ""
12171 "Receiving the original destination address with B<MSG_ERRQUEUE> in "
12172 "I<msg_name> by B<recvmsg>(2)  does not work in some 2.2 kernels."
12173 msgstr ""
12174 "B<recvmsg>(2)  で I<msg_name> に B<MSG_ERRQUEUE> を指定して、受信パケットに"
12175 "入っていた宛先アドレスを取得する方法は 2.2 カーネルの一部でうまく動かない。"
12176
12177 #. type: Plain text
12178 #: build/C/man7/ip.7:1097
12179 msgid ""
12180 "B<recvmsg>(2), B<sendmsg>(2), B<byteorder>(3), B<ipfw>(4), B<capabilities>"
12181 "(7), B<netlink>(7), B<raw>(7), B<socket>(7), B<tcp>(7), B<udp>(7)"
12182 msgstr ""
12183 "B<recvmsg>(2), B<sendmsg>(2), B<byteorder>(3), B<ipfw>(4), B<capabilities>"
12184 "(7), B<netlink>(7), B<raw>(7), B<socket>(7), B<tcp>(7), B<udp>(7)"
12185
12186 #. type: Plain text
12187 #: build/C/man7/ip.7:1099
12188 msgid "RFC\\ 791 for the original IP specification."
12189 msgstr "B<RFC\\ 791>: オリジナルの IP の仕様"
12190
12191 #. type: Plain text
12192 #: build/C/man7/ip.7:1101
12193 msgid "RFC\\ 1122 for the IPv4 host requirements."
12194 msgstr "B<RFC\\ 1122>: IPv4 ホストの必要条件"
12195
12196 #.  FIXME autobind INADDR REUSEADDR
12197 #. type: Plain text
12198 #: build/C/man7/ip.7:1104
12199 msgid "RFC\\ 1812 for the IPv4 router requirements."
12200 msgstr "B<RFC\\ 1812>: IPv4 ルータの必要条件"
12201
12202 #. type: TH
12203 #: build/C/man7/ipv6.7:7
12204 #, no-wrap
12205 msgid "IPV6"
12206 msgstr "IPV6"
12207
12208 #. type: TH
12209 #: build/C/man7/ipv6.7:7
12210 #, no-wrap
12211 msgid "2011-09-08"
12212 msgstr "2011-09-08"
12213
12214 #. type: Plain text
12215 #: build/C/man7/ipv6.7:10
12216 msgid "ipv6, AF_INET6 - Linux IPv6 protocol implementation"
12217 msgstr "ipv6, AF_INET6 - Linux の IPv6 プロトコル実装"
12218
12219 #. type: Plain text
12220 #: build/C/man7/ipv6.7:16
12221 msgid "I<tcp6_socket>B< = socket(AF_INET6, SOCK_STREAM, 0);>"
12222 msgstr "I<tcp6_socket>B< = socket(AF_INET6, SOCK_STREAM, 0);>"
12223
12224 #. type: Plain text
12225 #: build/C/man7/ipv6.7:18
12226 msgid "I<raw6_socket>B< = socket(AF_INET6, SOCK_RAW, >I<protocol>B<);>"
12227 msgstr "I<raw6_socket>B< = socket(AF_INET6, SOCK_RAW, >I<protocol>B<);>"
12228
12229 #. type: Plain text
12230 #: build/C/man7/ipv6.7:20
12231 msgid "I<udp6_socket>B< = socket(AF_INET6, SOCK_DGRAM, >I<protocol>B<);>"
12232 msgstr "I<udp6_socket>B< = socket(AF_INET6, SOCK_DGRAM, >I<protocol>B<);>"
12233
12234 #. type: Plain text
12235 #: build/C/man7/ipv6.7:27
12236 msgid ""
12237 "Linux 2.2 optionally implements the Internet Protocol, version 6.  This man "
12238 "page contains a description of the IPv6 basic API as implemented by the "
12239 "Linux kernel and glibc 2.1.  The interface is based on the BSD sockets "
12240 "interface; see B<socket>(7)."
12241 msgstr ""
12242 "Linux 2.2 では、Internet Protocol, version 6 を オプションとして実装してい"
12243 "る。 この man ページでは、Linux カーネルと glibc 2.1 での実装に基づいて、 "
12244 "IPv6 の基本的な API を解説する。 インターフェースは BSD ソケットインター"
12245 "フェースをもとにしている。 B<socket>(7)  を参照。"
12246
12247 #. type: Plain text
12248 #: build/C/man7/ipv6.7:32
12249 msgid ""
12250 "The IPv6 API aims to be mostly compatible with the IPv4 API (see B<ip>(7)).  "
12251 "Only differences are described in this man page."
12252 msgstr ""
12253 "IPv6 API は、 IPv4 API (B<ip>(7)  参照) とほぼ互換になることを目指している。 "
12254 "この man ページでは相違点のみを解説する。"
12255
12256 #. type: Plain text
12257 #: build/C/man7/ipv6.7:44
12258 msgid ""
12259 "To bind an B<AF_INET6> socket to any process, the local address should be "
12260 "copied from the I<in6addr_any> variable which has I<in6_addr> type.  In "
12261 "static initializations, B<IN6ADDR_ANY_INIT> may also be used, which expands "
12262 "to a constant expression.  Both of them are in network byte order."
12263 msgstr ""
12264 "B<AF_INET6> ソケットを何らかのプロセスにバインドするには、 ローカルアドレス"
12265 "を I<in6_addr> 型の変数 I<in6addr_any> からコピーしてくる必要がある。 static "
12266 "な初期値 B<IN6ADDR_ANY_INIT> も用いることができ、これは定数式に展開される。 "
12267 "これらの両者はネットワークバイトオーダーである。"
12268
12269 #. type: Plain text
12270 #: build/C/man7/ipv6.7:51
12271 msgid ""
12272 "The IPv6 loopback address (::1) is available in the global "
12273 "I<in6addr_loopback> variable.  For initializations, B<IN6ADDR_LOOPBACK_INIT> "
12274 "should be used."
12275 msgstr ""
12276 "IPv6 のループバックアドレス (::1) は global 変数 I<in6addr_loopback> から取得"
12277 "できる。初期化には B<IN6ADDR_LOOPBACK_INIT> を用いるべきである。"
12278
12279 #. type: Plain text
12280 #: build/C/man7/ipv6.7:58
12281 msgid ""
12282 "IPv4 connections can be handled with the v6 API by using the v4-mapped-on-v6 "
12283 "address type; thus a program only needs to support this API type to support "
12284 "both protocols.  This is handled transparently by the address handling "
12285 "functions in the C library."
12286 msgstr ""
12287 "v4-mapped-on-v6 アドレス型を用いることで、 IPv4 接続も v6 API で扱うことがで"
12288 "きる。 こうすれば、プログラムは v6 の API をサポートするだけで、 両方のプロト"
12289 "コルをサポートできる。 v4-mapped-on-v6 アドレス型は C ライブラリ内部のアドレ"
12290 "スを 扱う関数によって透過的に処理される。"
12291
12292 #. type: Plain text
12293 #: build/C/man7/ipv6.7:63
12294 msgid ""
12295 "IPv4 and IPv6 share the local port space.  When you get an IPv4 connection "
12296 "or packet to a IPv6 socket, its source address will be mapped to v6 and it "
12297 "will be mapped to v6."
12298 msgstr ""
12299 "IPv4 と IPv6 はローカルポート空間を共有する。 IPv4 の接続 (またはパケット) "
12300 "を IPv6 ソケットが取得すると、 発信元アドレスが v6 にマップされ、その接続 (パ"
12301 "ケット) も v6 にマップされる。"
12302
12303 #. type: Plain text
12304 #: build/C/man7/ipv6.7:73
12305 #, no-wrap
12306 msgid ""
12307 "struct sockaddr_in6 {\n"
12308 "    sa_family_t     sin6_family;   /* AF_INET6 */\n"
12309 "    in_port_t       sin6_port;     /* port number */\n"
12310 "    uint32_t        sin6_flowinfo; /* IPv6 flow information */\n"
12311 "    struct in6_addr sin6_addr;     /* IPv6 address */\n"
12312 "    uint32_t        sin6_scope_id; /* Scope ID (new in 2.4) */\n"
12313 "};\n"
12314 msgstr ""
12315 "struct sockaddr_in6 {\n"
12316 "    sa_family_t     sin6_family;   /* AF_INET6 */\n"
12317 "    in_port_t       sin6_port;     /* port number */\n"
12318 "    uint32_t        sin6_flowinfo; /* IPv6 flow information */\n"
12319 "    struct in6_addr sin6_addr;     /* IPv6 address */\n"
12320 "    uint32_t        sin6_scope_id; /* Scope ID (new in 2.4) */\n"
12321 "};\n"
12322
12323 #. type: Plain text
12324 #: build/C/man7/ipv6.7:77
12325 #, no-wrap
12326 msgid ""
12327 "struct in6_addr {\n"
12328 "    unsigned char   s6_addr[16];   /* IPv6 address */\n"
12329 "};\n"
12330 msgstr ""
12331 "struct in6_addr {\n"
12332 "    unsigned char   s6_addr[16];   /* IPv6 address */\n"
12333 "};\n"
12334
12335 #. type: Plain text
12336 #: build/C/man7/ipv6.7:99
12337 msgid ""
12338 "I<sin6_family> is always set to B<AF_INET6>; I<sin6_port> is the protocol "
12339 "port (see I<sin_port> in B<ip>(7)); I<sin6_flowinfo> is the IPv6 flow "
12340 "identifier; I<sin6_addr> is the 128-bit IPv6 address.  I<sin6_scope_id> is "
12341 "an ID depending on the scope of the address.  It is new in Linux 2.4.  Linux "
12342 "only supports it for link scope addresses, in that case I<sin6_scope_id> "
12343 "contains the interface index (see B<netdevice>(7))"
12344 msgstr ""
12345 "I<sin6_family> は常に B<AF_INET6> に設定される。 I<sin6_port> はプロトコル"
12346 "ポートである (B<ip>(7)  の I<sin_port> を参照)。 I<sin6_flowinfo> は IPv6 の"
12347 "フロー指定子 (flow identifier) である。 I<sin6_addr> は 128 ビットの IPv6 ア"
12348 "ドレスである。 I<sin6_scope_id> はアドレスのスコープに依存した ID である (こ"
12349 "れは Linux 2.4 で導入された)。 Linux の場合は、これはリンクスコープアドレスで"
12350 "しかサポートされない。 この場合 I<sin6_scope_id> にはインターフェースのイン"
12351 "デックスが含まれることになる (B<netdevice>(7)  を参照)。"
12352
12353 #. type: Plain text
12354 #: build/C/man7/ipv6.7:105
12355 msgid ""
12356 "IPv6 supports several address types: unicast to address a single host, "
12357 "multicast to address a group of hosts, anycast to address the nearest member "
12358 "of a group of hosts (not implemented in Linux), IPv4-on-IPv6 to address a "
12359 "IPv4 host, and other reserved address types."
12360 msgstr ""
12361 "IPv6 は何種類かのアドレスタイプをサポートしている。 単一のホストをアドレスす"
12362 "るための unicast、 ホストのグループをアドレスするための multicast、 ホストの"
12363 "グループ中で最も近くにいるものをアドレスするための anycast (これは Linux では"
12364 "実装されていない)、 IPv4 ホストをアドレスするための IPv4-on-IPv6。 他にも予約"
12365 "済みのアドレスタイプがある。"
12366
12367 #. type: Plain text
12368 #: build/C/man7/ipv6.7:111
12369 msgid ""
12370 "The address notation for IPv6 is a group of 8 4-digit hexadecimal numbers, "
12371 "separated with a \\(aq:\\(aq.  \\&\"::\" stands for a string of 0 bits.  "
12372 "Special addresses are ::1 for loopback and ::FFFF:E<lt>IPv4 addressE<gt> for "
12373 "IPv4-mapped-on-IPv6."
12374 msgstr ""
12375 "IPv6 でのアドレス表記は 4 桁の 16 進数 8 個からなり、 \\(aq:\\(aq は区切り文"
12376 "字はで、\"::\" は 0 ビットの文字列を表す。 特殊なアドレスとして、ループバック"
12377 "を表す ::1、 IPv4-mapped-on-IPv6 を表す ::FFFF::E<lt>IPv4 アドレスE<gt> があ"
12378 "る。"
12379
12380 #. type: Plain text
12381 #: build/C/man7/ipv6.7:113
12382 msgid "The port space of IPv6 is shared with IPv4."
12383 msgstr "IPv6 のポート空間は IPv4 と共有されている。"
12384
12385 #. type: Plain text
12386 #: build/C/man7/ipv6.7:121
12387 msgid ""
12388 "IPv6 supports some protocol-specific socket options that can be set with "
12389 "B<setsockopt>(2)  and read with B<getsockopt>(2).  The socket option level "
12390 "for IPv6 is B<IPPROTO_IPV6>.  A boolean integer flag is zero when it is "
12391 "false, otherwise true."
12392 msgstr ""
12393 "IPv6 はプロトコル固有のソケットオプションをいくつかサポートしている。 これら"
12394 "は B<setsockopt>(2)  で設定でき、 B<getsockopt>(2)  で取得できる。 IPv6 のソ"
12395 "ケットオプションレベルは B<IPPROTO_IPV6> である。 ブール整数のフラグは、0 が"
12396 "偽であり、それ以外は真である。"
12397
12398 #. type: TP
12399 #: build/C/man7/ipv6.7:121
12400 #, no-wrap
12401 msgid "B<IPV6_ADDRFORM>"
12402 msgstr "B<IPV6_ADDRFORM>"
12403
12404 #. type: Plain text
12405 #: build/C/man7/ipv6.7:135
12406 msgid ""
12407 "Turn an B<AF_INET6> socket into a socket of a different address family.  "
12408 "Only B<AF_INET> is currently supported for that.  It is only allowed for "
12409 "IPv6 sockets that are connected and bound to a v4-mapped-on-v6 address.  The "
12410 "argument is a pointer to an integer containing B<AF_INET>.  This is useful "
12411 "to pass v4-mapped sockets as file descriptors to programs that don't know "
12412 "how to deal with the IPv6 API."
12413 msgstr ""
12414 "B<AF_INET6> ソケットを別のアドレスファミリーのソケットに変える。 現在は "
12415 "B<AF_INET> のみが変更先のアドレスファミリーとしてサポートされている。 これが"
12416 "許可されるのは、IPv6 が接続され、 v4-mapped-on-v6 アドレスにバインドされた場"
12417 "合に限られる。 引き数は B<AF_INET> が入っている整数へのポインタである。 v4-"
12418 "mapped ソケットを、IPv6 API を扱えないプログラムに対して ファイルディスクリプ"
12419 "ターとして渡す場合に便利。"
12420
12421 #. type: TP
12422 #: build/C/man7/ipv6.7:135
12423 #, no-wrap
12424 msgid "B<IPV6_ADD_MEMBERSHIP, IPV6_DROP_MEMBERSHIP>"
12425 msgstr "B<IPV6_ADD_MEMBERSHIP, IPV6_DROP_MEMBERSHIP>"
12426
12427 #.  FIXME IPV6_CHECKSUM is not documented, and probably should be
12428 #.  FIXME IPV6_JOIN_ANYCAST is not documented, and probably should be
12429 #.  FIXME IPV6_LEAVE_ANYCAST is not documented, and probably should be
12430 #.  FIXME IPV6_RECVPKTINFO is not documented, and probably should be
12431 #.  FIXME IPV6_2292PKTINFO is not documented, and probably should be
12432 #.  FIXME there are probably many other IPV6_* socket options that
12433 #.  should be documented
12434 #. type: Plain text
12435 #: build/C/man7/ipv6.7:148
12436 msgid ""
12437 "Control membership in multicast groups.  Argument is a pointer to a I<struct "
12438 "ipv6_mreq> structure."
12439 msgstr ""
12440 "multicast グループのメンバーを制御する。 引き数は I<struct ipv6_mreq> 構造体"
12441 "へのポインタ。"
12442
12443 #. type: TP
12444 #: build/C/man7/ipv6.7:148
12445 #, no-wrap
12446 msgid "B<IPV6_MTU>"
12447 msgstr "B<IPV6_MTU>"
12448
12449 #. type: Plain text
12450 #: build/C/man7/ipv6.7:154
12451 msgid ""
12452 "Set the MTU to be used for the socket.  The MTU is limited by the device MTU "
12453 "or the path MTU when path MTU discovery is enabled.  Argument is a pointer "
12454 "to integer."
12455 msgstr ""
12456 "そのソケットに対して用いる MTU の値を設定する。 MTU の大きさは、 そのデバイス"
12457 "の MTU または (Path MTU Discovery が可能なら) その経路の MTU の大きさ以下でな"
12458 "ければならない。 引き数は整数へのポインタ。"
12459
12460 #. type: TP
12461 #: build/C/man7/ipv6.7:154
12462 #, no-wrap
12463 msgid "B<IPV6_MTU_DISCOVER>"
12464 msgstr "B<IPV6_MTU_DISCOVER>"
12465
12466 #. type: Plain text
12467 #: build/C/man7/ipv6.7:162
12468 msgid ""
12469 "Control path-MTU discovery on the socket.  See B<IP_MTU_DISCOVER> in B<ip>"
12470 "(7)  for details."
12471 msgstr ""
12472 "そのソケットでの Path MTU Discovery を制御する。 詳細は B<ip>(7)  の "
12473 "B<IP_MTU_DISCOVER> を参照。"
12474
12475 #. type: TP
12476 #: build/C/man7/ipv6.7:162
12477 #, no-wrap
12478 msgid "B<IPV6_MULTICAST_HOPS>"
12479 msgstr "B<IPV6_MULTICAST_HOPS>"
12480
12481 #. type: Plain text
12482 #: build/C/man7/ipv6.7:169
12483 msgid ""
12484 "Set the multicast hop limit for the socket.  Argument is a pointer to an "
12485 "integer.  -1 in the value means use the route default, otherwise it should "
12486 "be between 0 and 255."
12487 msgstr ""
12488 "そのソケットでの multicast の hop 数の上限値を設定する。 引き数は整数へのポイ"
12489 "ンタである。 -1 を指定すると経路のデフォルトを用いることを意味する。 それ以外"
12490 "の場合は 0 から 255 の範囲を指定する。"
12491
12492 #. type: TP
12493 #: build/C/man7/ipv6.7:169
12494 #, no-wrap
12495 msgid "B<IPV6_MULTICAST_IF>"
12496 msgstr "B<IPV6_MULTICAST_IF>"
12497
12498 #. type: Plain text
12499 #: build/C/man7/ipv6.7:181
12500 msgid ""
12501 "Set the device for outgoing multicast packets on the socket.  This is only "
12502 "allowed for B<SOCK_DGRAM> and B<SOCK_RAW> socket.  The argument is a pointer "
12503 "to an interface index (see B<netdevice>(7))  in an integer."
12504 msgstr ""
12505 "そのソケットでの、送信 multicast パケットに用いるデバイスを設定する。 これは "
12506 "B<SOCK_DGRAM> および B<SOCK_RAW> 各ソケットでのみ許される。 引き数はインター"
12507 "フェースのインデックスの整数値 (B<netdevice>(7)  を参照) へのポインタである。"
12508
12509 #. type: TP
12510 #: build/C/man7/ipv6.7:181
12511 #, no-wrap
12512 msgid "B<IPV6_MULTICAST_LOOP>"
12513 msgstr "B<IPV6_MULTICAST_LOOP>"
12514
12515 #. type: Plain text
12516 #: build/C/man7/ipv6.7:185
12517 msgid ""
12518 "Control whether the socket sees multicast packets that it has send itself.  "
12519 "Argument is a pointer to boolean."
12520 msgstr ""
12521 "ソケットが、自分自身の送信した multicast パケットを監視するかどうかを制御す"
12522 "る。 引き数はブール値へのポインタ。"
12523
12524 #. type: TP
12525 #: build/C/man7/ipv6.7:185
12526 #, no-wrap
12527 msgid "B<IPV6_PKTINFO>"
12528 msgstr "B<IPV6_PKTINFO>"
12529
12530 #. type: Plain text
12531 #: build/C/man7/ipv6.7:196
12532 msgid ""
12533 "Set delivery of the B<IPV6_PKTINFO> control message on incoming datagrams.  "
12534 "Only allowed for B<SOCK_DGRAM> or B<SOCK_RAW> sockets.  Argument is a "
12535 "pointer to a boolean value in an integer."
12536 msgstr ""
12537 "データグラムの到着時における B<IPV6_PKTINFO> 制御メッセージを配送するかどうか"
12538 "を設定する。 B<SOCK_DGRAM> ソケットまたは B<SOCK_RAW> ソケットに対してのみ許"
12539 "可される。 引き数はブール値の入った整数。"
12540
12541 #. type: Plain text
12542 #: build/C/man7/ipv6.7:199
12543 msgid ""
12544 "B<IPV6_RTHDR, IPV6_AUTHHDR, IPV6_DSTOPTS, IPV6_HOPOPTS, IPV6_FLOWINFO, "
12545 "IPV6_HOPLIMIT>"
12546 msgstr ""
12547 "B<IPV6_RTHDR, IPV6_AUTHHDR, IPV6_DSTOPTS, IPV6_HOPOPTS, IPV6_FLOWINFO, "
12548 "IPV6_HOPLIMIT>"
12549
12550 #. type: Plain text
12551 #: build/C/man7/ipv6.7:224
12552 msgid ""
12553 "Set delivery of control messages for incoming datagrams containing extension "
12554 "headers from the received packet.  B<IPV6_RTHDR> delivers the routing "
12555 "header, B<IPV6_AUTHHDR> delivers the authentication header, B<IPV6_DSTOPTS> "
12556 "delivers the destination options, B<IPV6_HOPOPTS> delivers the hop options, "
12557 "B<IPV6_FLOWINFO> delivers an integer containing the flow ID, "
12558 "B<IPV6_HOPLIMIT> delivers an integer containing the hop count of the "
12559 "packet.  The control messages have the same type as the socket option.  All "
12560 "these header options can also be set for outgoing packets by putting the "
12561 "appropriate control message into the control buffer of B<sendmsg>(2).  Only "
12562 "allowed for B<SOCK_DGRAM> or B<SOCK_RAW> sockets.  Argument is a pointer to "
12563 "a boolean value."
12564 msgstr ""
12565 "受信パケットのデータグラムに拡張ヘッダが含まれている場合の、 制御メッセージの"
12566 "配送を設定する。 B<IPV6_RTHDR>: routing ヘッダを配送するかどうか。 "
12567 "B<IPV6_AUTHHDR>: authentication ヘッダを配送するかどうか。 B<IPV6_DSTOPTS>: "
12568 "destination オプションを配送するかどうか。 B<IPV6_HOPOPTS>: hop オプションを"
12569 "配送するかどうか。 B<IPV6_FLOWINFO>: flow ID を含む整数を配送するかどうか。 "
12570 "B<IPV6_HOPLIMIT>: パケットの hop カウントを含む整数を配送するかどうか。 制御"
12571 "メッセージはソケットオプションのものと同じタイプを持つ。 これらのすべてのヘッ"
12572 "ダオプションは、 適切な制御メッセージを B<sendmsg>(2)  の制御バッファーに書き"
12573 "こめば、 送信パケットにでも設定できる。 B<SOCK_DGRAM> ソケットまたは "
12574 "B<SOCK_RAW> ソケットでのみ許される。引き数はブール値へのポインタ。"
12575
12576 #. type: TP
12577 #: build/C/man7/ipv6.7:224
12578 #, no-wrap
12579 msgid "B<IPV6_RECVERR>"
12580 msgstr "B<IPV6_RECVERR>"
12581
12582 #. type: Plain text
12583 #: build/C/man7/ipv6.7:233
12584 msgid ""
12585 "Control receiving of asynchronous error options.  See B<IP_RECVERR> in B<ip>"
12586 "(7)  for details.  Argument is a pointer to boolean."
12587 msgstr ""
12588 "非同期エラー (asynchronous error) オプションの受信を制御する。 詳細は B<ip>"
12589 "(7)  の B<IP_RECVERR> を参照。 引き数はブール値へのポインタ。"
12590
12591 #. type: TP
12592 #: build/C/man7/ipv6.7:233
12593 #, no-wrap
12594 msgid "B<IPV6_ROUTER_ALERT>"
12595 msgstr "B<IPV6_ROUTER_ALERT>"
12596
12597 #. type: Plain text
12598 #: build/C/man7/ipv6.7:246
12599 msgid ""
12600 "Pass forwarded packets containing a router alert hop-by-hop option to this "
12601 "socket.  Only allowed for SOCK_RAW sockets.  The tapped packets are not "
12602 "forwarded by the kernel, it is the user's responsibility to send them out "
12603 "again.  Argument is a pointer to an integer.  A positive integer indicates a "
12604 "router alert option value to intercept.  Packets carrying a router alert "
12605 "option with a value field containing this integer will be delivered to the "
12606 "socket.  A negative integer disables delivery of packets with router alert "
12607 "options to this socket."
12608 msgstr ""
12609 "このソケットで、router alert hop-by-hop オプションの付いた転送パケットを 通す"
12610 "かどうかを制御する。 B<SOCK_RAW> ソケットでのみ許可される。 tap されたパケッ"
12611 "トはカーネルによっては転送されない。そうしたパケットを 再度送信するのはユー"
12612 "ザーの責任である。 引き数は整数 (integer) へのポインタ。 正の整数は傍受を行"
12613 "う router alert オプション値を示す。 オプション値がこの整数である router "
12614 "alert オプションの付いたパケットは ソケットに配送される。負の整数を指定する"
12615 "と、このソケットへの router alert オプションの付いたパケットの配送が行われな"
12616 "い。"
12617
12618 #. type: TP
12619 #: build/C/man7/ipv6.7:246
12620 #, no-wrap
12621 msgid "B<IPV6_UNICAST_HOPS>"
12622 msgstr "B<IPV6_UNICAST_HOPS>"
12623
12624 #. type: Plain text
12625 #: build/C/man7/ipv6.7:252
12626 msgid ""
12627 "Set the unicast hop limit for the socket.  Argument is a pointer to an "
12628 "integer.  -1 in the value means use the route default, otherwise it should "
12629 "be between 0 and 255."
12630 msgstr ""
12631 "そのソケットでの unicast の hop 数の上限値を設定する。 引き数は整数へのポイン"
12632 "タである。 -1 を指定すると経路のデフォルトを用いることを意味する。 それ以外の"
12633 "場合は 0 から 255 の範囲を指定する。"
12634
12635 #. type: TP
12636 #: build/C/man7/ipv6.7:252
12637 #, no-wrap
12638 msgid "B<IPV6_V6ONLY> (since Linux 2.4.21 and 2.6)"
12639 msgstr "B<IPV6_V6ONLY> (Linux 2.4.21 以降および 2.6 以降)"
12640
12641 #.  See RFC 3493
12642 #. type: Plain text
12643 #: build/C/man7/ipv6.7:259
12644 msgid ""
12645 "If this flag is set to true (nonzero), then the socket is restricted to "
12646 "sending and receiving IPv6 packets only.  In this case, an IPv4 and an IPv6 "
12647 "application can bind to a single port at the same time."
12648 msgstr ""
12649 "このフラグを真 (0 以外) に設定すると、そのソケットは IPv6 パケットだけを 送受"
12650 "信するように制限される。 この場合、IPv4 アプリケーションと IPv6 アプリケー"
12651 "ションが同時に 一つのポートをバインドできる。"
12652
12653 #. type: Plain text
12654 #: build/C/man7/ipv6.7:263
12655 msgid ""
12656 "If this flag is set to false (zero), then the socket can be used to send and "
12657 "receive packets to and from an IPv6 address or an IPv4-mapped IPv6 address."
12658 msgstr ""
12659 "このフラグを偽 (0) に設定すると、そのソケットはパケットの送受信に IPv6 アドレ"
12660 "スと IPv4-mapped IPv6 アドレスの両方を使用できる。"
12661
12662 #. type: Plain text
12663 #: build/C/man7/ipv6.7:265
12664 msgid "The argument is a pointer to a boolean value in an integer."
12665 msgstr "引き数はブール値の入った整数へのポインタである。"
12666
12667 #.  FLOWLABEL_MGR, FLOWINFO_SEND
12668 #. type: Plain text
12669 #: build/C/man7/ipv6.7:270
12670 msgid ""
12671 "The default value for this flag is defined by the contents of the file I</"
12672 "proc/sys/net/ipv6/bindv6only>.  The default value for that file is 0 (false)."
12673 msgstr ""
12674 "このフラグのデフォルト値はファイル I</proc/sys/net/ipv6/bindv6only> の内容に"
12675 "より定義される。 このファイルのデフォルト値は 0 (偽) である。"
12676
12677 #. type: Plain text
12678 #: build/C/man7/ipv6.7:275
12679 msgid ""
12680 "The older I<libinet6> libc5 based IPv6 API implementation for Linux is not "
12681 "described here and may vary in details."
12682 msgstr ""
12683 "IPv6 API を libc5 ベースで Linux 向けに実装した、以前の I<libinet6> について"
12684 "はここでは記述していない。 おそらく細かいところには相違点があるだろう。"
12685
12686 #. type: Plain text
12687 #: build/C/man7/ipv6.7:291
12688 msgid ""
12689 "Linux 2.4 will break binary compatibility for the I<sockaddr_in6> for 64-bit "
12690 "hosts by changing the alignment of I<in6_addr> and adding an additional "
12691 "I<sin6_scope_id> field.  The kernel interfaces stay compatible, but a "
12692 "program including I<sockaddr_in6> or I<in6_addr> into other structures may "
12693 "not be.  This is not a problem for 32-bit hosts like i386."
12694 msgstr ""
12695 "Linux 2.4 では 64 ビットのホストに対して I<sockaddr_in6> のバイナリ互換性が保"
12696 "たれていない。 I<in6_addr> のアラインメントが変更され、また I<sin6_scope_id> "
12697 "フィールドが新たに追加されたからである。 カーネルインターフェースの互換性は保"
12698 "たれているが、 I<sockaddr_in6> や I<in6_addr> を他の構造体に含んでいるような"
12699 "プログラムでは 保たれないかもしれない。 これは i386 のような 32 ビットのホス"
12700 "トでは問題にならない。"
12701
12702 #. type: Plain text
12703 #: build/C/man7/ipv6.7:299
12704 msgid ""
12705 "The I<sin6_flowinfo> field is new in Linux 2.4.  It is transparently passed/"
12706 "read by the kernel when the passed address length contains it.  Some "
12707 "programs that pass a longer address buffer and then check the outgoing "
12708 "address length may break."
12709 msgstr ""
12710 "I<sin6_flowinfo> フィールドは Linux 2.4 で登場した。 これが渡されたアドレス長"
12711 "に含まれていると、 カーネルに透過的に渡され、読まれる。 より長いアドレスバッ"
12712 "ファを渡し、 そして送信アドレスの長さをチェックするようなプログラムは うまく"
12713 "動かないかもしれない。"
12714
12715 #. type: Plain text
12716 #: build/C/man7/ipv6.7:309
12717 msgid ""
12718 "The I<sockaddr_in6> structure is bigger than the generic I<sockaddr>.  "
12719 "Programs that assume that all address types can be stored safely in a "
12720 "I<struct sockaddr> need to be changed to use I<struct sockaddr_storage> for "
12721 "that instead."
12722 msgstr ""
12723 "I<sockaddr_in6> 構造体はジェネリックな I<sockaddr> よりも大きい。 すべてのア"
12724 "ドレスタイプが I<struct sockaddr> の中に安全に納められると仮定しているプログ"
12725 "ラムは、代わりに I<struct sockaddr_storage> を用いるように変更する必要があ"
12726 "る。"
12727
12728 #. type: Plain text
12729 #: build/C/man7/ipv6.7:314
12730 msgid ""
12731 "The IPv6 extended API as in RFC\\ 2292 is currently only partly implemented; "
12732 "although the 2.2 kernel has near complete support for receiving options, the "
12733 "macros for generating IPv6 options are missing in glibc 2.1."
12734 msgstr ""
12735 "IPv6 拡張 API は、現在まだ RFC\\ 2292 を完全には実装していない。 2.2 カーネル"
12736 "は受信オプションをほぼ完全にサポートサポートしているが、 glibc2.1 には IPv6 "
12737 "オプションを生成するマクロが存在していない。"
12738
12739 #. type: Plain text
12740 #: build/C/man7/ipv6.7:316
12741 msgid "IPSec support for EH and AH headers is missing."
12742 msgstr "EH および AH ヘッダ での IPSec のサポートは存在しない。"
12743
12744 #. type: Plain text
12745 #: build/C/man7/ipv6.7:318
12746 msgid "Flow label management is not complete and not documented here."
12747 msgstr "フローラベル管理はまだ完全でなく、ここにも記述されていない。"
12748
12749 #. type: Plain text
12750 #: build/C/man7/ipv6.7:320
12751 msgid "This man page is not complete."
12752 msgstr "この man ページはまだ完成していない。"
12753
12754 #. type: Plain text
12755 #: build/C/man7/ipv6.7:323
12756 msgid "B<cmsg>(3), B<ip>(7)"
12757 msgstr "B<cmsg>(3), B<ip>(7)"
12758
12759 #. type: Plain text
12760 #: build/C/man7/ipv6.7:326
12761 msgid "RFC\\ 2553: IPv6 BASIC API.  Linux tries to be compliant to this."
12762 msgstr ""
12763 "RFC\\ 2553: IPv6 BASIC API.  Linux はこの RFC に準拠するようにしている。"
12764
12765 #. type: Plain text
12766 #: build/C/man7/ipv6.7:328
12767 msgid "RFC\\ 2460: IPv6 specification."
12768 msgstr "RFC\\ 2460: IPv6 specification."
12769
12770 #. type: TH
12771 #: build/C/man7/netdevice.7:12
12772 #, no-wrap
12773 msgid "NETDEVICE"
12774 msgstr "NETDEVICE"
12775
12776 #. type: TH
12777 #: build/C/man7/netdevice.7:12
12778 #, no-wrap
12779 msgid "2009-01-14"
12780 msgstr "2009-01-14"
12781
12782 #. type: Plain text
12783 #: build/C/man7/netdevice.7:15
12784 msgid "netdevice - Low level access to Linux network devices"
12785 msgstr "netdevice - Linux ネットワークデバイスへの低レベルアクセス"
12786
12787 #. type: Plain text
12788 #: build/C/man7/netdevice.7:17
12789 msgid "B<#include E<lt>sys/ioctl.hE<gt>>"
12790 msgstr "B<#include E<lt>sys/ioctl.hE<gt>>"
12791
12792 #. type: Plain text
12793 #: build/C/man7/netdevice.7:19
12794 msgid "B<#include E<lt>net/if.hE<gt>>"
12795 msgstr "B<#include E<lt>net/if.hE<gt>>"
12796
12797 #. type: Plain text
12798 #: build/C/man7/netdevice.7:22
12799 msgid ""
12800 "This man page describes the sockets interface which is used to configure "
12801 "network devices."
12802 msgstr ""
12803 "この man ページでは、ネットワークデバイスを設定するために 用いるソケットイン"
12804 "ターフェースについて解説する。"
12805
12806 #. type: Plain text
12807 #: build/C/man7/netdevice.7:29
12808 msgid ""
12809 "Linux supports some standard ioctls to configure network devices.  They can "
12810 "be used on any socket's file descriptor regardless of the family or type.  "
12811 "They pass an I<ifreq> structure:"
12812 msgstr ""
12813 "Linux はネットワークデバイスを設定するための標準的な ioctl を いくつか備えて"
12814 "いる。これらはどんなソケットのファイルディスクリプタにも 用いることができる。"
12815 "ファミリーやタイプは何でもよい。 これらの ioctl は I<ifreq> 構造体を渡す。"
12816
12817 #. type: Plain text
12818 #: build/C/man7/netdevice.7:50
12819 #, no-wrap
12820 msgid ""
12821 "struct ifreq {\n"
12822 "    char ifr_name[IFNAMSIZ]; /* Interface name */\n"
12823 "    union {\n"
12824 "        struct sockaddr ifr_addr;\n"
12825 "        struct sockaddr ifr_dstaddr;\n"
12826 "        struct sockaddr ifr_broadaddr;\n"
12827 "        struct sockaddr ifr_netmask;\n"
12828 "        struct sockaddr ifr_hwaddr;\n"
12829 "        short           ifr_flags;\n"
12830 "        int             ifr_ifindex;\n"
12831 "        int             ifr_metric;\n"
12832 "        int             ifr_mtu;\n"
12833 "        struct ifmap    ifr_map;\n"
12834 "        char            ifr_slave[IFNAMSIZ];\n"
12835 "        char            ifr_newname[IFNAMSIZ];\n"
12836 "        char           *ifr_data;\n"
12837 "    };\n"
12838 "};\n"
12839 msgstr ""
12840 "struct ifreq {\n"
12841 "    char ifr_name[IFNAMSIZ]; /* Interface name */\n"
12842 "    union {\n"
12843 "        struct sockaddr ifr_addr;\n"
12844 "        struct sockaddr ifr_dstaddr;\n"
12845 "        struct sockaddr ifr_broadaddr;\n"
12846 "        struct sockaddr ifr_netmask;\n"
12847 "        struct sockaddr ifr_hwaddr;\n"
12848 "        short           ifr_flags;\n"
12849 "        int             ifr_ifindex;\n"
12850 "        int             ifr_metric;\n"
12851 "        int             ifr_mtu;\n"
12852 "        struct ifmap    ifr_map;\n"
12853 "        char            ifr_slave[IFNAMSIZ];\n"
12854 "        char            ifr_newname[IFNAMSIZ];\n"
12855 "        char           *ifr_data;\n"
12856 "    };\n"
12857 "};\n"
12858
12859 #. type: Plain text
12860 #: build/C/man7/netdevice.7:58
12861 #, no-wrap
12862 msgid ""
12863 "struct ifconf {\n"
12864 "    int                 ifc_len; /* size of buffer */\n"
12865 "    union {\n"
12866 "        char           *ifc_buf; /* buffer address */\n"
12867 "        struct ifreq   *ifc_req; /* array of structures */\n"
12868 "    };\n"
12869 "};\n"
12870 msgstr ""
12871 "struct ifconf {\n"
12872 "    int                 ifc_len; /* size of buffer */\n"
12873 "    union {\n"
12874 "        char           *ifc_buf; /* buffer address */\n"
12875 "        struct ifreq   *ifc_req; /* array of structures */\n"
12876 "    };\n"
12877 "};\n"
12878
12879 #. type: Plain text
12880 #: build/C/man7/netdevice.7:66
12881 msgid ""
12882 "Normally, the user specifies which device to affect by setting I<ifr_name> "
12883 "to the name of the interface.  All other members of the structure may share "
12884 "memory."
12885 msgstr ""
12886 "通常、ユーザーによる設定対象デバイスの指定は、 I<ifr_name> にインターフェース"
12887 "の名前をセットすることによって行う。 他の構造体の全てのメンバは、メモリを共有"
12888 "する。"
12889
12890 #. type: Plain text
12891 #: build/C/man7/netdevice.7:74
12892 msgid ""
12893 "If an ioctl is marked as privileged then using it requires an effective user "
12894 "ID of 0 or the B<CAP_NET_ADMIN> capability.  If this is not the case "
12895 "B<EPERM> will be returned."
12896 msgstr ""
12897 "「特権が必要」と記述されている ioctl を実行するには、 実効ユーザー ID が 0 "
12898 "か、 B<CAP_NET_ADMIN> 権限が必要である。これが満たされていない場合は "
12899 "B<EPERM> が返される。"
12900
12901 #. type: TP
12902 #: build/C/man7/netdevice.7:74
12903 #, no-wrap
12904 msgid "B<SIOCGIFNAME>"
12905 msgstr "B<SIOCGIFNAME>"
12906
12907 #. type: Plain text
12908 #: build/C/man7/netdevice.7:82
12909 msgid ""
12910 "Given the I<ifr_ifindex>, return the name of the interface in I<ifr_name>.  "
12911 "This is the only ioctl which returns its result in I<ifr_name>."
12912 msgstr ""
12913 "I<ifr_ifindex> を受け取り、インターフェースの名前を I<ifr_name> に入れて返"
12914 "す。これは結果を I<ifr_name> として返す唯一の ioctl である。"
12915
12916 #. type: TP
12917 #: build/C/man7/netdevice.7:82
12918 #, no-wrap
12919 msgid "B<SIOCGIFINDEX>"
12920 msgstr "B<SIOCGIFINDEX>"
12921
12922 #. type: Plain text
12923 #: build/C/man7/netdevice.7:86
12924 msgid "Retrieve the interface index of the interface into I<ifr_ifindex>."
12925 msgstr ""
12926 "インターフェースの interface index を取得し、 I<ifr_ifindex> に入れて返す。"
12927
12928 #. type: TP
12929 #: build/C/man7/netdevice.7:86
12930 #, no-wrap
12931 msgid "B<SIOCGIFFLAGS>, B<SIOCSIFFLAGS>"
12932 msgstr "B<SIOCGIFFLAGS>, B<SIOCSIFFLAGS>"
12933
12934 #. type: Plain text
12935 #: build/C/man7/netdevice.7:91
12936 msgid ""
12937 "Get or set the active flag word of the device.  I<ifr_flags> contains a bit "
12938 "mask of the following values:"
12939 msgstr ""
12940 "デバイスの active フラグワードを取得または設定する。 I<ifr_flags> には以下の"
12941 "値のビットマスクが入る。"
12942
12943 #. type: tbl table
12944 #: build/C/man7/netdevice.7:95
12945 #, no-wrap
12946 msgid "Device flags\n"
12947 msgstr "デバイスフラグ\n"
12948
12949 #. type: tbl table
12950 #: build/C/man7/netdevice.7:96
12951 #, no-wrap
12952 msgid "IFF_UP:Interface is running.\n"
12953 msgstr "IFF_UP:インターフェースは動作中。\n"
12954
12955 #. type: tbl table
12956 #: build/C/man7/netdevice.7:97
12957 #, no-wrap
12958 msgid "IFF_BROADCAST:Valid broadcast address set.\n"
12959 msgstr "IFF_BROADCAST:有効なブロードキャストアドレスがセットされている。\n"
12960
12961 #. type: tbl table
12962 #: build/C/man7/netdevice.7:98
12963 #, no-wrap
12964 msgid "IFF_DEBUG:Internal debugging flag.\n"
12965 msgstr "IFF_DEBUG:内部のデバッグフラグ。\n"
12966
12967 #. type: tbl table
12968 #: build/C/man7/netdevice.7:99
12969 #, no-wrap
12970 msgid "IFF_LOOPBACK:Interface is a loopback interface.\n"
12971 msgstr "IFF_LOOPBACK:インターフェースはループバックである。\n"
12972
12973 #. type: tbl table
12974 #: build/C/man7/netdevice.7:100
12975 #, no-wrap
12976 msgid "IFF_POINTOPOINT:Interface is a point-to-point link.\n"
12977 msgstr "IFF_POINTOPOINT:インターフェースは point-to-point リンクである。\n"
12978
12979 #. type: tbl table
12980 #: build/C/man7/netdevice.7:101
12981 #, no-wrap
12982 msgid "IFF_RUNNING:Resources allocated.\n"
12983 msgstr "IFF_RUNNING:リソースが割り当て済み。\n"
12984
12985 #. type: tbl table
12986 #: build/C/man7/netdevice.7:102
12987 #, no-wrap
12988 msgid "IFF_NOARP:No arp protocol, L2 destination address not set.\n"
12989 msgstr "IFF_NOARP:arp プロトコルがない。\n"
12990
12991 #. type: tbl table
12992 #: build/C/man7/netdevice.7:103
12993 #, no-wrap
12994 msgid "IFF_PROMISC:Interface is in promiscuous mode.\n"
12995 msgstr "IFF_PROMISC:インターフェースは promiscuous モードである。\n"
12996
12997 #. type: tbl table
12998 #: build/C/man7/netdevice.7:104
12999 #, no-wrap
13000 msgid "IFF_NOTRAILERS:Avoid use of trailers.\n"
13001 msgstr "IFF_NOTRAILERS:trailer の利用を避ける。\n"
13002
13003 #. type: tbl table
13004 #: build/C/man7/netdevice.7:105
13005 #, no-wrap
13006 msgid "IFF_ALLMULTI:Receive all multicast packets.\n"
13007 msgstr "IFF_ALLMULTI:全てのマルチキャストパケットを受信する。\n"
13008
13009 #. type: tbl table
13010 #: build/C/man7/netdevice.7:106
13011 #, no-wrap
13012 msgid "IFF_MASTER:Master of a load balancing bundle.\n"
13013 msgstr "IFF_MASTER:負荷分散グループのマスターである。\n"
13014
13015 #. type: tbl table
13016 #: build/C/man7/netdevice.7:107
13017 #, no-wrap
13018 msgid "IFF_SLAVE:Slave of a load balancing bundle.\n"
13019 msgstr "IFF_SLAVE:負荷分散グループのスレーブである。\n"
13020
13021 #. type: tbl table
13022 #: build/C/man7/netdevice.7:108
13023 #, no-wrap
13024 msgid "IFF_MULTICAST:Supports multicast\n"
13025 msgstr "IFF_MULTICAST:マルチキャストをサポートしている。\n"
13026
13027 #. type: tbl table
13028 #: build/C/man7/netdevice.7:109
13029 #, no-wrap
13030 msgid "IFF_PORTSEL:Is able to select media type via ifmap.\n"
13031 msgstr "IFF_PORTSEL:ifmap によってメディアタイプを選択できる。\n"
13032
13033 #. type: tbl table
13034 #: build/C/man7/netdevice.7:110
13035 #, no-wrap
13036 msgid "IFF_AUTOMEDIA:Auto media selection active.\n"
13037 msgstr "IFF_AUTOMEDIA:自動メディア選択が有効になっている。\n"
13038
13039 #. type: tbl table
13040 #: build/C/man7/netdevice.7:111
13041 #, no-wrap
13042 msgid "IFF_DYNAMIC:T{\n"
13043 msgstr "IFF_DYNAMIC:T{\n"
13044
13045 #. type: tbl table
13046 #: build/C/man7/netdevice.7:112
13047 #, no-wrap
13048 msgid "The addresses are lost when the interface goes down.\n"
13049 msgstr "このインターフェースが閉じると、アドレスは失われる。\n"
13050
13051 #. type: tbl table
13052 #: build/C/man7/netdevice.7:113
13053 #, no-wrap
13054 msgid "T}\n"
13055 msgstr "T}\n"
13056
13057 #. type: tbl table
13058 #: build/C/man7/netdevice.7:114
13059 #, no-wrap
13060 msgid "IFF_LOWER_UP:Driver signals L1 up (since Linux 2.6.17)\n"
13061 msgstr "IFF_LOWER_UP:ドライバからの L1 アップの通知 (Linux 2.6.17 以降)\n"
13062
13063 #. type: tbl table
13064 #: build/C/man7/netdevice.7:115
13065 #, no-wrap
13066 msgid "IFF_DORMANT:Driver signals dormant (since Linux 2.6.17)\n"
13067 msgstr "IFF_DORMANT:ドライバからの休止状態の通知 (Linux 2.6.17 以降)\n"
13068
13069 #. type: tbl table
13070 #: build/C/man7/netdevice.7:116
13071 #, no-wrap
13072 msgid "IFF_ECHO:Echo sent packets (since Linux 2.6.25)\n"
13073 msgstr "IFF_ECHO:送られたパケットをエコーする (Linux 2.6.25 以降)\n"
13074
13075 #. type: Plain text
13076 #: build/C/man7/netdevice.7:122
13077 msgid ""
13078 "Setting the active flag word is a privileged operation, but any process may "
13079 "read it."
13080 msgstr ""
13081 "active フラグワードの設定は特権が必要な操作である。 しかし読み出しはどんなプ"
13082 "ロセスからも可能である。"
13083
13084 #. type: TP
13085 #: build/C/man7/netdevice.7:122
13086 #, no-wrap
13087 msgid "B<SIOCGIFMETRIC>, B<SIOCSIFMETRIC>"
13088 msgstr "B<SIOCGIFMETRIC>, B<SIOCSIFMETRIC>"
13089
13090 #. type: Plain text
13091 #: build/C/man7/netdevice.7:131
13092 msgid ""
13093 "Get or set the metric of the device using I<ifr_metric>.  This is currently "
13094 "not implemented; it sets I<ifr_metric> to 0 if you attempt to read it and "
13095 "returns B<EOPNOTSUPP> if you attempt to set it."
13096 msgstr ""
13097 "デバイスのメトリックを I<ifr_metric> を用いて取得・設定する。 これはまだ実装"
13098 "されていない。読み出そうとすると I<ifr_metric> に 0 をセットして返り、設定し"
13099 "ようとすると B<EOPNOTSUPP> が返る。"
13100
13101 #. type: TP
13102 #: build/C/man7/netdevice.7:131
13103 #, no-wrap
13104 msgid "B<SIOCGIFMTU>, B<SIOCSIFMTU>"
13105 msgstr "B<SIOCGIFMTU>, B<SIOCSIFMTU>"
13106
13107 #. type: Plain text
13108 #: build/C/man7/netdevice.7:138
13109 msgid ""
13110 "Get or set the MTU (Maximum Transfer Unit) of a device using I<ifr_mtu>.  "
13111 "Setting the MTU is a privileged operation.  Setting the MTU to too small "
13112 "values may cause kernel crashes."
13113 msgstr ""
13114 "デバイスの MTU (Maximum Transfer Unit) を I<ifr_mtu> を用いて取得・設定す"
13115 "る。 MTU の設定は特権が必要な操作である。 MTU の値を小さくしすぎるとカーネル"
13116 "がクラッシュするかもしれない。"
13117
13118 #. type: TP
13119 #: build/C/man7/netdevice.7:138
13120 #, no-wrap
13121 msgid "B<SIOCGIFHWADDR>, B<SIOCSIFHWADDR>"
13122 msgstr "B<SIOCGIFHWADDR>, B<SIOCSIFHWADDR>"
13123
13124 #. type: Plain text
13125 #: build/C/man7/netdevice.7:149
13126 msgid ""
13127 "Get or set the hardware address of a device using I<ifr_hwaddr>.  The "
13128 "hardware address is specified in a struct I<sockaddr>.  I<sa_family> "
13129 "contains the ARPHRD_* device type, I<sa_data> the L2 hardware address "
13130 "starting from byte 0.  Setting the hardware address is a privileged "
13131 "operation."
13132 msgstr ""
13133 "デバイスのハードウェアアドレスを I<ifr_hwaddr> を用いて取得・設定する。 ハー"
13134 "ドウェアアドレスは I<sockaddr> 構造体に設定される。 I<sa_family> には "
13135 "ARPHRD_* デバイスタイプが入り、 I<sa_data> にはバイト 0 から始まる L2 ハード"
13136 "ウェアアドレスが入る。 ハードウェアアドレスの設定は特権が必要な操作である。"
13137
13138 #. type: TP
13139 #: build/C/man7/netdevice.7:149
13140 #, no-wrap
13141 msgid "B<SIOCSIFHWBROADCAST>"
13142 msgstr "B<SIOCSIFHWBROADCAST>"
13143
13144 #. type: Plain text
13145 #: build/C/man7/netdevice.7:154
13146 msgid ""
13147 "Set the hardware broadcast address of a device from I<ifr_hwaddr>.  This is "
13148 "a privileged operation."
13149 msgstr ""
13150 "デバイスのハードウェアブロードキャストアドレスを I<ifr_hwaddr> の値に設定す"
13151 "る。この操作には特権が必要である。"
13152
13153 #. type: TP
13154 #: build/C/man7/netdevice.7:154
13155 #, no-wrap
13156 msgid "B<SIOCGIFMAP>, B<SIOCSIFMAP>"
13157 msgstr "B<SIOCGIFMAP>, B<SIOCSIFMAP>"
13158
13159 #. type: Plain text
13160 #: build/C/man7/netdevice.7:159
13161 msgid ""
13162 "Get or set the interface's hardware parameters using I<ifr_map>.  Setting "
13163 "the parameters is a privileged operation."
13164 msgstr ""
13165 "インターフェースのハードウェアのパラメータを I<ifr_map> を用いて取得・設定す"
13166 "る。 パラメータの設定は特権が必要な操作である。"
13167
13168 #. type: Plain text
13169 #: build/C/man7/netdevice.7:170
13170 #, no-wrap
13171 msgid ""
13172 "struct ifmap {\n"
13173 "    unsigned long   mem_start;\n"
13174 "    unsigned long   mem_end;\n"
13175 "    unsigned short  base_addr;\n"
13176 "    unsigned char   irq;\n"
13177 "    unsigned char   dma;\n"
13178 "    unsigned char   port;\n"
13179 "};\n"
13180 msgstr ""
13181 "struct ifmap {\n"
13182 "    unsigned long   mem_start;\n"
13183 "    unsigned long   mem_end;\n"
13184 "    unsigned short  base_addr;\n"
13185 "    unsigned char   irq;\n"
13186 "    unsigned char   dma;\n"
13187 "    unsigned char   port;\n"
13188 "};\n"
13189
13190 #. type: Plain text
13191 #: build/C/man7/netdevice.7:175
13192 msgid ""
13193 "The interpretation of the ifmap structure depends on the device driver and "
13194 "the architecture."
13195 msgstr "ifmap 構造体の解釈はデバイスドライバとアーキテクチャに依存する。"
13196
13197 #. type: TP
13198 #: build/C/man7/netdevice.7:175
13199 #, no-wrap
13200 msgid "B<SIOCADDMULTI>, B<SIOCDELMULTI>"
13201 msgstr "B<SIOCADDMULTI>, B<SIOCDELMULTI>"
13202
13203 #. type: Plain text
13204 #: build/C/man7/netdevice.7:184
13205 msgid ""
13206 "Add an address to or delete an address from the device's link layer "
13207 "multicast filters using I<ifr_hwaddr>.  These are privileged operations.  "
13208 "See also B<packet>(7)  for an alternative."
13209 msgstr ""
13210 "デバイスのリンク層のマルチキャストフィルターから、 I<ifr_hwaddr> のアドレスを"
13211 "追加・削除する。これらの操作には特権が必要である。 別の方法が B<packet>(7)  "
13212 "で解説されている。"
13213
13214 #. type: TP
13215 #: build/C/man7/netdevice.7:184
13216 #, no-wrap
13217 msgid "B<SIOCGIFTXQLEN>, B<SIOCSIFTXQLEN>"
13218 msgstr "B<SIOCGIFTXQLEN>, B<SIOCSIFTXQLEN>"
13219
13220 #. type: Plain text
13221 #: build/C/man7/netdevice.7:189
13222 msgid ""
13223 "Get or set the transmit queue length of a device using I<ifr_qlen>.  Setting "
13224 "the transmit queue length is a privileged operation."
13225 msgstr ""
13226 "デバイスの送信キューの長さを I<ifr_qlen> に取得・設定する。送信キューの長さの"
13227 "設定には特権が必要である。"
13228
13229 #. type: TP
13230 #: build/C/man7/netdevice.7:189
13231 #, no-wrap
13232 msgid "B<SIOCSIFNAME>"
13233 msgstr "B<SIOCSIFNAME>"
13234
13235 #. type: Plain text
13236 #: build/C/man7/netdevice.7:198
13237 msgid ""
13238 "Changes the name of the interface specified in I<ifr_name> to "
13239 "I<ifr_newname>.  This is a privileged operation.  It is only allowed when "
13240 "the interface is not up."
13241 msgstr ""
13242 "I<ifr_name> で指定したインターフェースの名前を I<ifr_newname> に変更する。こ"
13243 "の操作には特権が必要である。インターフェースが up していない 時にのみ使用でき"
13244 "る。"
13245
13246 #. type: TP
13247 #: build/C/man7/netdevice.7:198
13248 #, no-wrap
13249 msgid "B<SIOCGIFCONF>"
13250 msgstr "B<SIOCGIFCONF>"
13251
13252 #.  Slaving isn't supported in 2.2
13253 #.  .
13254 #.  .TP
13255 #.  .BR SIOCGIFSLAVE ", " SIOCSIFSLAVE
13256 #.  Get or set the slave device using
13257 #.  .IR ifr_slave .
13258 #.  Setting the slave device is a privileged operation.
13259 #.  .PP
13260 #.  FIXME add amateur radio stuff.
13261 #. type: Plain text
13262 #: build/C/man7/netdevice.7:238
13263 msgid ""
13264 "Return a list of interface (transport layer) addresses.  This currently "
13265 "means only addresses of the B<AF_INET> (IPv4) family for compatibility.  The "
13266 "user passes a I<ifconf> structure as argument to the ioctl.  It contains a "
13267 "pointer to an array of I<ifreq> structures in I<ifc_req> and its length in "
13268 "bytes in I<ifc_len>.  The kernel fills the ifreqs with all current L3 "
13269 "interface addresses that are running: I<ifr_name> contains the interface "
13270 "name (eth0:1 etc.), I<ifr_addr> the address.  The kernel returns with the "
13271 "actual length in I<ifc_len>.  If I<ifc_len> is equal to the original length "
13272 "the buffer probably has overflowed and you should retry with a bigger buffer "
13273 "to get all addresses.  When no error occurs the ioctl returns 0; otherwise "
13274 "-1.  Overflow is not an error."
13275 msgstr ""
13276 "インターフェース(トランスポート層)アドレスのリストを返す。 現在のところ、互換"
13277 "性のために B<AF_INET> (IPv4) ファミリーのアドレスのみである。 ユーザーは "
13278 "I<ifconf> 構造体を ioctl の引数として渡す。 I<ifconf> 構造体には、 I<ifreq> "
13279 "構造体の配列へのポインタである I<ifc_req> と、バイト単位の配列の長さを指定す"
13280 "る I<ifc_len> が含まれる。 カーネルは ifreqs を現在動作している全ての L3 イン"
13281 "ターフェースアドレスで埋める。 I<ifr_name> にはインターフェース名 (eth0:1 な"
13282 "ど) が入り、 I<ifr_addr> にはアドレスが入る。 カーネルは実際の長さを "
13283 "I<ifc_len> に返す。 I<ifc_len> が元のバッファの長さと同じだった場合、 オー"
13284 "バーフローを起こしている可能性があるので、 全てのアドレスを取得するためにより"
13285 "大きなバッファで再試行するべきである。 エラーがなかった場合は ioctl は 0 を返"
13286 "す。 エラーがあった場合は -1 を返す。 オーバーフローはエラーとは見なされな"
13287 "い。"
13288
13289 #. type: Plain text
13290 #: build/C/man7/netdevice.7:244
13291 msgid ""
13292 "Most protocols support their own ioctls to configure protocol-specific "
13293 "interface options.  See the protocol man pages for a description.  For "
13294 "configuring IP addresses see B<ip>(7)."
13295 msgstr ""
13296 "ほとんどのプロトコルには、専用のインターフェースオプションを 設定するための独"
13297 "自の ioctl が存在する。 説明は各プロトコルの man ページを見よ。"
13298
13299 #. type: Plain text
13300 #: build/C/man7/netdevice.7:247
13301 msgid ""
13302 "In addition some devices support private ioctls.  These are not described "
13303 "here."
13304 msgstr ""
13305 "さらに、デバイスによってはプライベートな ioctl がある。 これらはここでは説明"
13306 "しない。"
13307
13308 #. type: Plain text
13309 #: build/C/man7/netdevice.7:252
13310 msgid ""
13311 "Strictly speaking, B<SIOCGIFCONF> is IP specific and belongs in B<ip>(7)."
13312 msgstr "厳密にいうと、 B<SIOCGIFCONF> は IP 固有であり、 B<ip>(7)  に属する。"
13313
13314 #. type: Plain text
13315 #: build/C/man7/netdevice.7:257
13316 msgid ""
13317 "The names of interfaces with no addresses or that don't have the "
13318 "B<IFF_RUNNING> flag set can be found via I</proc/net/dev>."
13319 msgstr ""
13320 "アドレスがなかったり、 B<IFF_RUNNING> フラグがセットされていないインター"
13321 "フェースの名前は I</proc/net/dev> で知ることができる。"
13322
13323 #. type: Plain text
13324 #: build/C/man7/netdevice.7:262
13325 msgid ""
13326 "Local IPv6 IP addresses can be found via I</proc/net> or via B<rtnetlink>(7)."
13327 msgstr ""
13328 "ローカル IPV6 IP アドレスは I</proc/net> か B<rtnetlink>(7)  で知ることができ"
13329 "る。"
13330
13331 #. type: Plain text
13332 #: build/C/man7/netdevice.7:268
13333 msgid ""
13334 "glibc 2.1 is missing the I<ifr_newname> macro in I<E<lt>net/if.hE<gt>>.  Add "
13335 "the following to your program as a workaround:"
13336 msgstr ""
13337 "glibc 2.1 では I<E<lt>net/if.hE<gt>> に I<ifr_newname> マクロがない。 とりあ"
13338 "えずの対応策として、以下のコードを追加しておくこと。"
13339
13340 #. type: Plain text
13341 #: build/C/man7/netdevice.7:274
13342 #, no-wrap
13343 msgid ""
13344 "#ifndef ifr_newname\n"
13345 "#define ifr_newname     ifr_ifru.ifru_slave\n"
13346 "#endif\n"
13347 msgstr ""
13348 "#ifndef ifr_newname\n"
13349 "#define ifr_newname     ifr_ifru.ifru_slave\n"
13350 "#endif\n"
13351
13352 #. type: Plain text
13353 #: build/C/man7/netdevice.7:281
13354 msgid "B<proc>(5), B<capabilities>(7), B<ip>(7), B<rtnetlink>(7)"
13355 msgstr "B<proc>(5), B<capabilities>(7), B<ip>(7), B<rtnetlink>(7)"
13356
13357 #. type: TH
13358 #: build/C/man5/networks.5:24
13359 #, no-wrap
13360 msgid "NETWORKS"
13361 msgstr "NETWORKS"
13362
13363 #. type: TH
13364 #: build/C/man5/networks.5:24
13365 #, no-wrap
13366 msgid "2008-09-04"
13367 msgstr "2008-09-04"
13368
13369 #. type: TH
13370 #: build/C/man5/networks.5:24
13371 #, no-wrap
13372 msgid "GNU/Linux"
13373 msgstr "GNU/Linux"
13374
13375 #. type: Plain text
13376 #: build/C/man5/networks.5:27
13377 msgid "networks - network name information"
13378 msgstr "networks - network name information"
13379
13380 #. type: Plain text
13381 #: build/C/man5/networks.5:33
13382 msgid ""
13383 "The file I</etc/networks> is a plain ASCII file that describes known DARPA "
13384 "networks and symbolic names for these networks.  Each line represents a "
13385 "network and has the following structure:"
13386 msgstr ""
13387 "The file I</etc/networks> is a plain ASCII file that describes known DARPA "
13388 "networks and symbolic names for these networks.  Each line represents a "
13389 "network and has the following structure:"
13390
13391 #. type: Plain text
13392 #: build/C/man5/networks.5:36
13393 msgid "I<name number aliases ...>"
13394 msgstr "I<name number aliases ...>"
13395
13396 #. type: Plain text
13397 #: build/C/man5/networks.5:44
13398 msgid ""
13399 "where the fields are delimited by spaces or tabs.  Empty lines are ignored.  "
13400 "The hash character (B<#>) indicates the start of a comment: this character, "
13401 "and the remaining characters up to the end of the current line, are ignored "
13402 "by library functions that process the file."
13403 msgstr ""
13404 "where the fields are delimited by spaces or tabs.  Empty lines are ignored.  "
13405 "The hash character (B<#>) indicates the start of a comment: this character, "
13406 "and the remaining characters up to the end of the current line, are ignored "
13407 "by library functions that process the file."
13408
13409 #. type: Plain text
13410 #: build/C/man5/networks.5:46 build/C/man5/protocols.5:58
13411 msgid "The field descriptions are:"
13412 msgstr "フィールドの説明は以下のとおり。"
13413
13414 #. type: TP
13415 #: build/C/man5/networks.5:47
13416 #, no-wrap
13417 msgid "I<name>"
13418 msgstr "I<name>"
13419
13420 #. type: Plain text
13421 #: build/C/man5/networks.5:52
13422 msgid ""
13423 "The symbolic name for the network.  Network names can contain any printable "
13424 "characters execept white-space characters or the comment character."
13425 msgstr ""
13426 "The symbolic name for the network.  Network names can contain any printable "
13427 "characters execept white-space characters or the comment character."
13428
13429 #. type: TP
13430 #: build/C/man5/networks.5:52 build/C/man5/protocols.5:66
13431 #, no-wrap
13432 msgid "I<number>"
13433 msgstr "I<number>"
13434
13435 #. type: Plain text
13436 #: build/C/man5/networks.5:57
13437 msgid ""
13438 "The official number for this network in numbers-and-dots notation (see "
13439 "B<inet>(3)).  The trailing \".0\" (for the host component of the network "
13440 "address) may be omitted."
13441 msgstr ""
13442 "The official number for this network in numbers-and-dots notation (see "
13443 "B<inet>(3)).  The trailing \".0\" (for the host component of the network "
13444 "address) may be omitted."
13445
13446 #. type: TP
13447 #: build/C/man5/networks.5:57 build/C/man5/protocols.5:70
13448 #: build/C/man5/services.5:120
13449 #, no-wrap
13450 msgid "I<aliases>"
13451 msgstr "I<aliases>"
13452
13453 #. type: Plain text
13454 #: build/C/man5/networks.5:60
13455 msgid "Optional aliases for the network."
13456 msgstr "Optional aliases for the network."
13457
13458 #. type: Plain text
13459 #: build/C/man5/networks.5:69
13460 msgid ""
13461 "This file is read by the B<route>(8)  and B<netstat>(8)  utilities.  Only "
13462 "Class A, B or C networks are supported, partitioned networks (i.e., "
13463 "network/26 or network/28) are not supported by this facility."
13464 msgstr ""
13465 "This file is read by the B<route>(8)  and B<netstat>(8)  utilities.  Only "
13466 "Class A, B or C networks are supported, partitioned networks (i.e., "
13467 "network/26 or network/28) are not supported by this facility."
13468
13469 #. type: Plain text
13470 #: build/C/man5/networks.5:73
13471 msgid "The networks definition file."
13472 msgstr "The networks definition file."
13473
13474 #. type: Plain text
13475 #: build/C/man5/networks.5:79
13476 msgid ""
13477 "B<getnetbyaddr>(3), B<getnetbyname>(3), B<getnetent>(3), B<netstat>(8), "
13478 "B<route>(8)"
13479 msgstr ""
13480 "B<getnetbyaddr>(3), B<getnetbyname>(3), B<getnetent>(3), B<netstat>(8), "
13481 "B<route>(8)"
13482
13483 #. type: TH
13484 #: build/C/man8/nscd.8:23
13485 #, no-wrap
13486 msgid "NSCD"
13487 msgstr "NSCD"
13488
13489 #. type: TH
13490 #: build/C/man8/nscd.8:23
13491 #, no-wrap
13492 msgid "2008-12-05"
13493 msgstr "2008-12-05"
13494
13495 #. type: Plain text
13496 #: build/C/man8/nscd.8:26
13497 msgid "/usr/sbin/nscd - name service cache daemon"
13498 msgstr "/usr/sbin/nscd - ネームサービスキャッシュデーモン"
13499
13500 #. type: Plain text
13501 #: build/C/man8/nscd.8:34
13502 msgid ""
13503 "Nscd is a daemon that provides a cache for the most common name service "
13504 "requests.  The default configuration file, I</etc/nscd.conf>, determines the "
13505 "behavior of the cache daemon.  See B<nscd.conf>(5)."
13506 msgstr ""
13507 "nscd は一般的なネームサービスに必要な多くのものを キャッシュとして提供する"
13508 "デーモンである。 デフォルトの設定ファイル I</etc/nscd.conf> でキャッシュデー"
13509 "モンの動作を決定する。 B<nscd.conf>(5)  を見よ。"
13510
13511 #. type: Plain text
13512 #: build/C/man8/nscd.8:47
13513 msgid ""
13514 "Nscd provides caching for accesses of the B<passwd>(5), B<group>(5), and "
13515 "B<hosts>(5)  databases through standard libc interfaces, such as B<getpwnam>"
13516 "(3), B<getpwuid>(3), B<getgrnam>(3), B<getgrgid>(3), B<gethostbyname>(3), "
13517 "and others."
13518 msgstr ""
13519 "nscd は B<passwd>(5), B<group>(5), B<hosts>(5)  データベースへのアクセスの"
13520 "キャッシュを B<getpwnam>(3), B<getpwuid>(3), B<getgrnam>(3), B<getgrgid>(3), "
13521 "B<gethostbyname>(3)  などの標準 libc インターフェースを通して提供する。"
13522
13523 #. type: Plain text
13524 #: build/C/man8/nscd.8:56
13525 msgid ""
13526 "There are two caches for each database: a positive one for items found, and "
13527 "a negative one for items not found.  Each cache has a separate TTL (time-to-"
13528 "live)  period for its data.  Note that the shadow file is specifically not "
13529 "cached.  B<getspnam>(3)  calls remain uncached as a result."
13530 msgstr ""
13531 "各データベースには 2 つのキャッシュがある。 肯定的 (positive) なキャッシュは"
13532 "見つかったアイテムをキャッシュし、 否定的 (negative) なキャッシュは見つからな"
13533 "かったアイテムをキャッシュする。 各キャッシュはデータの TTL (time-to-live, 生"
13534 "存時間) を個別に持っている。 特例として shadow ファイルはキャッシュされない点"
13535 "に注意すること。 B<getspnam>(3)  を呼び出しても結果としてキャッシュされないま"
13536 "まになる。"
13537
13538 #. type: SH
13539 #: build/C/man8/nscd.8:56
13540 #, no-wrap
13541 msgid "OPTIONS"
13542 msgstr "オプション"
13543
13544 #. type: TP
13545 #: build/C/man8/nscd.8:57
13546 #, no-wrap
13547 msgid "B<--help>"
13548 msgstr "B<--help>"
13549
13550 #. type: Plain text
13551 #: build/C/man8/nscd.8:60
13552 msgid "will give you a list with all options and what they do."
13553 msgstr "全てのオプションとその動作をリストして表示する。"
13554
13555 #. type: Plain text
13556 #: build/C/man8/nscd.8:83
13557 msgid ""
13558 "The daemon will try to watch for changes in configuration files appropriate "
13559 "for each database (e.g.  I</etc/passwd> for the I<passwd> database or I</etc/"
13560 "hosts> and I</etc/resolv.conf> for the I<hosts> database), and flush the "
13561 "cache when these are changed.  However, this will happen only after a short "
13562 "delay (unless the B<inotify>(7)  mechanism is available and glibc 2.9 or "
13563 "later is available), and this auto-detection does not cover configuration "
13564 "files required by nonstandard NSS modules, if any are specified in I</etc/"
13565 "nsswitch.conf>.  In that case, you need to run the following command after "
13566 "changing the configuration file of the database so that B<nscd> invalidates "
13567 "its cache:"
13568 msgstr ""
13569 "デーモンは( I<passwd> データベースについては I</etc/passwd>、 I<hosts> データ"
13570 "ベースについては I</etc/hosts> と I</etc/resolv.conf> というような)それぞれの"
13571 "データベースのための設定ファイルを見張って、 これらが変更されるとキャッシュを"
13572 "フラッシュする。 しかし、これは( B<inotify>(7)  が利用可能で、glibc 2.9 以降"
13573 "が利用可能な場合を除いて)  短い遅延の後に起こり、またこの自動検出は非標準 "
13574 "NSS モジュールが I</etc/nsswitch.conf> で指定されている場合はその設定ファイル"
13575 "には対応しない。 この場合、データベースの設定ファイルを変更した後、 B<nscd> "
13576 "のキャッシュを無効にするために以下のコマンドを実行する必要がある:"
13577
13578 #. type: Plain text
13579 #: build/C/man8/nscd.8:85
13580 #, no-wrap
13581 msgid "    $ B<nscd -i> I<E<lt>databaseE<gt>>\n"
13582 msgstr "    $ B<nscd -i> I<E<lt>databaseE<gt>>\n"
13583
13584 #.  .SH AUTHOR
13585 #.  .B nscd
13586 #.  was written by Thorsten Kukuk and Ulrich Drepper.
13587 #. type: Plain text
13588 #: build/C/man8/nscd.8:91
13589 msgid "B<nscd.conf>(5), B<nsswitch.conf>(5)"
13590 msgstr "B<nscd.conf>(5), B<nsswitch.conf>(5)"
13591
13592 #. type: TH
13593 #: build/C/man5/nscd.conf.5:20
13594 #, no-wrap
13595 msgid "NSCD.CONF"
13596 msgstr "NSCD.CONF"
13597
13598 #. type: TH
13599 #: build/C/man5/nscd.conf.5:20
13600 #, no-wrap
13601 msgid "1999-10-01"
13602 msgstr "1999-10-01"
13603
13604 #. type: Plain text
13605 #: build/C/man5/nscd.conf.5:23
13606 msgid "/etc/nscd.conf - name service cache daemon configuration file"
13607 msgstr "/etc/nscd.conf - ネームサービスキャッシュデーモンの設定ファイル"
13608
13609 #. type: Plain text
13610 #: build/C/man5/nscd.conf.5:36
13611 msgid ""
13612 "The file I</etc/nscd.conf> is read from B<nscd>(8)  at startup.  Each line "
13613 "specifies either an attribute and a value, or an attribute, service, and a "
13614 "value.  Fields are separated either by SPACE or TAB characters.  A \\(aq#"
13615 "\\(aq (number sign) indicates the beginning of a comment; following "
13616 "characters, up to the end of the line, are not interpreted by nscd."
13617 msgstr ""
13618 "B<nscd>(8)  は起動時にファイル I</etc/nscd.conf> を読み込む。 各行には「属"
13619 "性・値」または「属性・サービス・値」を指定する。 フィールドはスペース文字また"
13620 "はタブ文字で区切られる。 \\(aq#\\(aq (ナンバー記号) はコメントの始まりを表"
13621 "す。 この記号から行末までは nscd によって解釈されない。"
13622
13623 #. type: Plain text
13624 #: build/C/man5/nscd.conf.5:38
13625 msgid "Valid services are I<passwd>, I<group>, or I<hosts>."
13626 msgstr "指定可能なサービスは I<passwd>, I<group>, I<hosts> である。"
13627
13628 #. type: Plain text
13629 #: build/C/man5/nscd.conf.5:41
13630 msgid "B<logfile> I<debug-file-name>"
13631 msgstr "B<logfile> I<debug-file-name>"
13632
13633 #. type: Plain text
13634 #: build/C/man5/nscd.conf.5:43
13635 msgid "Specifies name of the file to which debug info should be written."
13636 msgstr "デバッグ情報が書き込まれるファイルの名前を指定する。"
13637
13638 #. type: Plain text
13639 #: build/C/man5/nscd.conf.5:47
13640 msgid "B<debug-level> I<value>"
13641 msgstr "B<debug-level> I<value>"
13642
13643 #. type: Plain text
13644 #: build/C/man5/nscd.conf.5:49
13645 msgid "Sets the desired debug level."
13646 msgstr "希望するデバッグレベルを設定する。"
13647
13648 #. type: Plain text
13649 #: build/C/man5/nscd.conf.5:53
13650 msgid "B<threads> I<number>"
13651 msgstr "B<threads> I<number>"
13652
13653 #. type: Plain text
13654 #: build/C/man5/nscd.conf.5:57
13655 msgid ""
13656 "This is the number of threads that are started to wait for requests.  At "
13657 "least five threads will always be created."
13658 msgstr ""
13659 "スレッドをいくつ起動してリクエストを待つのかを指定する。 少なくとも 5 つのス"
13660 "レッドが常に作成される。"
13661
13662 #. type: Plain text
13663 #: build/C/man5/nscd.conf.5:61
13664 msgid "B<server-user> I<user>"
13665 msgstr "B<server-user> I<user>"
13666
13667 #. type: Plain text
13668 #: build/C/man5/nscd.conf.5:65
13669 msgid ""
13670 "If this option is set, nscd will run as this user and not as root.  If a "
13671 "separate cache for every user is used (-S parameter), this option is ignored."
13672 msgstr ""
13673 "このオプションが設定されると、 nscd は root ではなく、この user として実行さ"
13674 "れる。 (-S パラメータにより) 各ユーザー毎に別々のキャッシュが使われる場合、 "
13675 "このオプションは無視される。"
13676
13677 #. type: Plain text
13678 #: build/C/man5/nscd.conf.5:70
13679 msgid "B<enable-cache> I<service> I<E<lt>yes|noE<gt>>"
13680 msgstr "B<enable-cache> I<service> I<E<lt>yes|noE<gt>>"
13681
13682 #. type: Plain text
13683 #: build/C/man5/nscd.conf.5:74
13684 msgid "Enables or disables the specified I<service> cache."
13685 msgstr "指定した I<service> のキャッシュを有効または無効にする。"
13686
13687 #. type: Plain text
13688 #: build/C/man5/nscd.conf.5:79
13689 msgid "B<positive-time-to-live> I<service> I<value>"
13690 msgstr "B<positive-time-to-live> I<service> I<value>"
13691
13692 #. type: Plain text
13693 #: build/C/man5/nscd.conf.5:87
13694 msgid ""
13695 "Sets the TTL (time-to-live) for positive entries (successful queries)  in "
13696 "the specified cache for I<service>.  I<Value> is in seconds.  Larger values "
13697 "increase cache hit rates and reduce mean response times, but increase "
13698 "problems with cache coherence."
13699 msgstr ""
13700 "指定した I<service> のキャッシュにあるポジティブエントリ (成功した問い合わ"
13701 "せ) の TTL (time-to-live) を設定する。 I<value> の単位は秒である。 値を大きく"
13702 "すると、ヒット率が高くなり平均応答時間を短くできるが、 キャッシュのコヒーレン"
13703 "ス (coherence, キャッシュが実際のデータと一致していること) に問題が生じる。"
13704
13705 #. type: Plain text
13706 #: build/C/man5/nscd.conf.5:92
13707 msgid "B<negative-time-to-live> I<service> I<value>"
13708 msgstr "B<negative-time-to-live> I<service> I<value>"
13709
13710 #. type: Plain text
13711 #: build/C/man5/nscd.conf.5:102
13712 msgid ""
13713 "Sets the TTL (time-to-live) for negative entries (unsuccessful queries)  in "
13714 "the specified cache for I<service>.  I<Value> is in seconds.  Can result in "
13715 "significant performance improvements if there are several files owned by "
13716 "UIDs (user IDs) not in system databases (for example untarring the linux "
13717 "kernel sources as root); should be kept small to reduce cache coherency "
13718 "problems."
13719 msgstr ""
13720 "指定した I<service> のキャッシュにあるネガティブエントリ (失敗した問い合わ"
13721 "せ) の TTL (time-to-live) を設定する。 I<value> の単位は秒である。 システム"
13722 "データベースにない UID (ユーザーID) で所有されるファイル (たとえば root で "
13723 "tar を展開した linux カーネルのソース) が少ないと、 顕著な性能の向上が見られ"
13724 "る。 キャッシュのコヒーレンス問題を少なくするために小さな値にすべきである。"
13725
13726 #. type: Plain text
13727 #: build/C/man5/nscd.conf.5:107
13728 msgid "B<suggested-size> I<service> I<value>"
13729 msgstr "B<suggested-size> I<service> I<value>"
13730
13731 #. type: Plain text
13732 #: build/C/man5/nscd.conf.5:111
13733 msgid ""
13734 "This is the internal hash table size, I<value> should remain a prime number "
13735 "for optimum efficiency."
13736 msgstr ""
13737 "内部ハッシュテーブルの大きさを指定する。 効率を最適にするために I<value> は素"
13738 "数にしておくべきである。"
13739
13740 #. type: Plain text
13741 #: build/C/man5/nscd.conf.5:116
13742 msgid "B<check-files> I<service> I<E<lt>yes|noE<gt>>"
13743 msgstr "B<check-files> I<service> I<E<lt>yes|noE<gt>>"
13744
13745 #. type: Plain text
13746 #: build/C/man5/nscd.conf.5:125
13747 msgid ""
13748 "Enables or disables checking the file belonging to the specified I<service> "
13749 "for changes.  The files are I</etc/passwd>, I</etc/group>, and I</etc/hosts>."
13750 msgstr ""
13751 "指定した I<service> に関連するファイルの変更のチェックを有効または無効にす"
13752 "る。 ファイルは I</etc/passwd>, I</etc/group>, I</etc/hosts> である。"
13753
13754 #. type: Plain text
13755 #: build/C/man5/nscd.conf.5:129
13756 msgid "B<max-threads> I<threads>"
13757 msgstr "B<max-threads> I<threads>"
13758
13759 #. type: Plain text
13760 #: build/C/man5/nscd.conf.5:131
13761 msgid "Specifies the maximum number of threads to be started."
13762 msgstr "開始するスレッドの最大数を指定する。"
13763
13764 #. type: Plain text
13765 #: build/C/man5/nscd.conf.5:135
13766 msgid "B<stat-user> I<username>"
13767 msgstr "B<stat-user> I<username>"
13768
13769 #. type: Plain text
13770 #: build/C/man5/nscd.conf.5:137
13771 msgid "Specifies the user who is allowed to request statistics."
13772 msgstr "統計情報の参照を許可するユーザを指定する。"
13773
13774 #. type: Plain text
13775 #: build/C/man5/nscd.conf.5:142
13776 msgid "B<reload-count> unlimited | I<number>"
13777 msgstr "B<reload-count> unlimited | I<number>"
13778
13779 #. type: Plain text
13780 #: build/C/man5/nscd.conf.5:146
13781 msgid ""
13782 "Limit on the number of times a cached entry gets reloaded without being used "
13783 "before it gets removed.  The default is 5."
13784 msgstr ""
13785 "キャッシュされたエントリが使用されなかったときに、 削除される前に何回リロード"
13786 "されるかを設定する。"
13787
13788 #. type: Plain text
13789 #: build/C/man5/nscd.conf.5:150
13790 msgid "B<paranoia> I<E<lt>yes|noE<gt>>"
13791 msgstr "B<paranoia> I<E<lt>yes|noE<gt>>"
13792
13793 #. type: Plain text
13794 #: build/C/man5/nscd.conf.5:152
13795 msgid "Enabling paranoia mode causes nscd to restart itself periodically."
13796 msgstr ""
13797 "パラノイアモードを有効にする。 パラノイアモードでは nscd を定期的に再起動す"
13798 "る。"
13799
13800 #. type: Plain text
13801 #: build/C/man5/nscd.conf.5:156
13802 msgid "B<restart-interval> I<time>"
13803 msgstr "B<restart-interval> I<time>"
13804
13805 #. type: Plain text
13806 #: build/C/man5/nscd.conf.5:163
13807 msgid ""
13808 "Sets the restart interval to I<time> seconds if periodic restart is enabled "
13809 "by enabling B<paranoia> mode."
13810 msgstr ""
13811 "パラノイアモードが有効で定期的に再起動する場合の、 再起動間隔を I<time> 秒に"
13812 "設定する。"
13813
13814 #. type: Plain text
13815 #: build/C/man5/nscd.conf.5:168
13816 msgid "B<persistent> I<service> I<E<lt>yes|noE<gt>>"
13817 msgstr "B<persistent> I<service> I<E<lt>yes|noE<gt>>"
13818
13819 #. type: Plain text
13820 #: build/C/man5/nscd.conf.5:174
13821 msgid ""
13822 "Keep the content of the cache for I<service> over server restarts; useful "
13823 "when B<paranoia> mode is set."
13824 msgstr ""
13825 "サーバの再起動の前後で I<service> のキャッシュ内容を保持する。 B<paranoia> "
13826 "モードが有効の場合に便利である。"
13827
13828 #. type: Plain text
13829 #: build/C/man5/nscd.conf.5:179
13830 msgid "B<shared> I<service> I<E<lt>yes|noE<gt>>"
13831 msgstr "B<shared> I<service> I<E<lt>yes|noE<gt>>"
13832
13833 #. type: Plain text
13834 #: build/C/man5/nscd.conf.5:185
13835 msgid ""
13836 "The memory mapping of the nscd databases for I<service> is shared with the "
13837 "clients so that they can directly search in them instead of having to ask "
13838 "the daemon over the socket each time a lookup is performed."
13839 msgstr ""
13840 "I<service> の nscd データベースのメモリ・マッピングをクライアント間で共有す"
13841 "る。 これにより、検索を実行する度にソケット経由でデーモンに問い合わせを 行わ"
13842 "ずに、直接データベースを検索できるようになる。"
13843
13844 #.  .SH AUTHOR
13845 #.  .B nscd
13846 #.  was written by Thorsten Kukuk and Ulrich Drepper.
13847 #. type: Plain text
13848 #: build/C/man5/nscd.conf.5:191
13849 msgid "B<nscd>(8)"
13850 msgstr "B<nscd>(8)"
13851
13852 #. type: TH
13853 #: build/C/man5/nsswitch.conf.5:27
13854 #, no-wrap
13855 msgid "NSSWITCH.CONF"
13856 msgstr "NSSWITCH.CONF"
13857
13858 #. type: TH
13859 #: build/C/man5/nsswitch.conf.5:27
13860 #, no-wrap
13861 msgid "1999-01-17"
13862 msgstr "1999-01-17"
13863
13864 #. type: Plain text
13865 #: build/C/man5/nsswitch.conf.5:30
13866 msgid ""
13867 "nsswitch.conf - System Databases and Name Service Switch configuration file"
13868 msgstr ""
13869 "nsswitch.conf - システムデータベースとネームサービススイッチの設定ファイル"
13870
13871 #. type: Plain text
13872 #: build/C/man5/nsswitch.conf.5:38
13873 msgid ""
13874 "Various functions in the C Library need to be configured to work correctly "
13875 "in the local environment.  Traditionally, this was done by using files (e."
13876 "g., I</etc/passwd>), but other nameservices (like the Network Information "
13877 "Service (NIS) and the Domain Name Service (DNS))  became popular, and were "
13878 "hacked into the C library, usually with a fixed search order."
13879 msgstr ""
13880 "C ライブラリの機能の中には、ローカルな環境で正しく動作させるには設定が 必要な"
13881 "ものが多数存在する。伝統的にこれはファイル (例えば I</etc/passwd>) を 用いる"
13882 "ことで実現されてきた。しかし他のネームサービス (Network Information Service "
13883 "(NIS) や Domain Name Service (DNS)) が一般的になり、 これらが C ライブラリに"
13884 "取り込まれるようになっていった。ただし通常、検 索の順序は固定されていた。"
13885
13886 #. type: Plain text
13887 #: build/C/man5/nsswitch.conf.5:49
13888 msgid ""
13889 "The Linux libc5 with NYS support and the GNU C Library 2.x (libc.so.6)  "
13890 "contain a cleaner solution of this problem.  It is designed after a method "
13891 "used by Sun Microsystems in the C library of Solaris 2.  We follow their "
13892 "name and call this scheme \"Name Service Switch\" (NSS).  The sources for "
13893 "the \"databases\" and their lookup order are specified in the I</etc/"
13894 "nsswitch.conf> file."
13895 msgstr ""
13896 "NYS をサポートした Linux libc5 や GNU C Linrary 2.x (libc.so.6) では、 この問"
13897 "題はより見通し良く解決できるようになっている。これらは Sun Microsystems が "
13898 "Solaris 2 の C ライブラリで用いた方法にならっている。 以下ではこの仕組みを "
13899 "\"Name Service Switch\" (NSS) と呼ぶ。データベース の情報源と、それらを閲覧す"
13900 "る順序を指定したのが I</etc/nsswitch.conf> ファイルである。"
13901
13902 #. type: Plain text
13903 #: build/C/man5/nsswitch.conf.5:51
13904 msgid "The following databases are available in the NSS:"
13905 msgstr "NSS(ネームサービススィッチ) では以下のデータベースを扱うことができる。"
13906
13907 #. type: Plain text
13908 #: build/C/man5/nsswitch.conf.5:56
13909 msgid "Mail aliases, used by B<sendmail>(8).  Presently ignored."
13910 msgstr "B<sendmail>(8)  で用いられるメールエイリアス。 現在は無視される。"
13911
13912 #. type: Plain text
13913 #: build/C/man5/nsswitch.conf.5:59
13914 msgid "Ethernet numbers."
13915 msgstr "イーサーネット番号。"
13916
13917 #. type: Plain text
13918 #: build/C/man5/nsswitch.conf.5:64
13919 msgid "Groups of users, used by B<getgrent>(3)  functions."
13920 msgstr "ユーザーのグループ。 B<getgrent>(3)  関数によって用いられる。"
13921
13922 #. type: Plain text
13923 #: build/C/man5/nsswitch.conf.5:69
13924 msgid ""
13925 "Host names and numbers, used by B<gethostbyname>(3)  and similar functions."
13926 msgstr ""
13927 "ホスト名とホスト番号。 B<gethostbyname>(3)  などの関数によって用いられる。"
13928
13929 #. type: Plain text
13930 #: build/C/man5/nsswitch.conf.5:73
13931 msgid ""
13932 "Network wide list of hosts and users, used for access rules.  C libraries "
13933 "before glibc 2.1 only support netgroups over NIS."
13934 msgstr ""
13935 "ネットワークワイドに用いられるホストやユーザーのリスト。アクセス制限に 利用さ"
13936 "れる。 glibc 2.1 以前の C ライブラリは、 NIS 上でだけ netgroup をサポートして"
13937 "いる。"
13938
13939 #. type: Plain text
13940 #: build/C/man5/nsswitch.conf.5:78
13941 msgid "Network names and numbers, used by B<getnetent>(3)  functions."
13942 msgstr "ネットワーク名と番号。 B<getnetent>(3)  関数によって用いられる。"
13943
13944 #. type: Plain text
13945 #: build/C/man5/nsswitch.conf.5:83
13946 msgid "User passwords, used by B<getpwent>(3)  functions."
13947 msgstr "ユーザーパスワード。 B<getpwent>(3)  関数によって用いられる。"
13948
13949 #. type: Plain text
13950 #: build/C/man5/nsswitch.conf.5:88
13951 msgid "Network protocols, used by B<getprotoent>(3)  functions."
13952 msgstr "ネットワークプロトコル。 B<getprotoent>(3)  関数によって用いられる。"
13953
13954 #. type: TP
13955 #: build/C/man5/nsswitch.conf.5:88
13956 #, no-wrap
13957 msgid "B<publickey>"
13958 msgstr "B<publickey>"
13959
13960 #. type: Plain text
13961 #: build/C/man5/nsswitch.conf.5:91
13962 msgid "Public and secret keys for Secure_RPC used by NFS and NIS+."
13963 msgstr "NIS+ と NFS によって用いられる secure_rpc の公開鍵と秘密鍵。"
13964
13965 #. type: Plain text
13966 #: build/C/man5/nsswitch.conf.5:96
13967 msgid ""
13968 "Remote procedure call names and numbers, used by B<getrpcbyname>(3)  and "
13969 "similar functions."
13970 msgstr ""
13971 "リモートプロシジャーコール (remote procedure call) の名前と番号。 "
13972 "B<getrpcbyname>(3)  などの関数によって用いられる。"
13973
13974 #. type: Plain text
13975 #: build/C/man5/nsswitch.conf.5:101
13976 msgid "Network services, used by B<getservent>(3)  functions."
13977 msgstr "ネットワークサービス。 B<getservent>(3)  関数によって用いられる。"
13978
13979 #. type: Plain text
13980 #: build/C/man5/nsswitch.conf.5:105
13981 msgid "Shadow user passwords, used by B<getspnam>(3)."
13982 msgstr "シャドウユーザーパスワード。 B<getspnam>(3)  によって用いられる。"
13983
13984 #. type: Plain text
13985 #: build/C/man5/nsswitch.conf.5:111
13986 msgid ""
13987 "An example I</etc/nsswitch.conf> (namely, the default used when I</etc/"
13988 "nsswitch.conf> is missing):"
13989 msgstr ""
13990 "I</etc/nsswitch.conf> ファイルの一例を以下に示す (ここに示す内容は I</etc/"
13991 "nsswitch.conf> ファイルがない場合のデフォルトと同じである)。"
13992
13993 #. type: TP
13994 #: build/C/man5/nsswitch.conf.5:113
13995 #, no-wrap
13996 msgid "passwd:"
13997 msgstr "passwd:"
13998
13999 #. type: Plain text
14000 #: build/C/man5/nsswitch.conf.5:116 build/C/man5/nsswitch.conf.5:119
14001 #: build/C/man5/nsswitch.conf.5:122
14002 msgid "compat"
14003 msgstr "compat"
14004
14005 #. type: TP
14006 #: build/C/man5/nsswitch.conf.5:116
14007 #, no-wrap
14008 msgid "group:"
14009 msgstr "group:"
14010
14011 #. type: TP
14012 #: build/C/man5/nsswitch.conf.5:119
14013 #, no-wrap
14014 msgid "shadow:"
14015 msgstr "shadow:"
14016
14017 #. type: TP
14018 #: build/C/man5/nsswitch.conf.5:123
14019 #, no-wrap
14020 msgid "hosts:"
14021 msgstr "hosts:"
14022
14023 #. type: Plain text
14024 #: build/C/man5/nsswitch.conf.5:126
14025 msgid "dns [!UNAVAIL=return] files"
14026 msgstr "dns [!UNAVAIL=return] files"
14027
14028 #. type: TP
14029 #: build/C/man5/nsswitch.conf.5:126
14030 #, no-wrap
14031 msgid "networks:"
14032 msgstr "networks:"
14033
14034 #. type: Plain text
14035 #: build/C/man5/nsswitch.conf.5:129 build/C/man5/nsswitch.conf.5:132
14036 #: build/C/man5/nsswitch.conf.5:135 build/C/man5/nsswitch.conf.5:138
14037 #: build/C/man5/nsswitch.conf.5:141
14038 msgid "nis [NOTFOUND=return] files"
14039 msgstr "nis [NOTFOUND=return] files"
14040
14041 #. type: TP
14042 #: build/C/man5/nsswitch.conf.5:129
14043 #, no-wrap
14044 msgid "ethers:"
14045 msgstr "ethers:"
14046
14047 #. type: TP
14048 #: build/C/man5/nsswitch.conf.5:132
14049 #, no-wrap
14050 msgid "protocols:"
14051 msgstr "protocols:"
14052
14053 #. type: TP
14054 #: build/C/man5/nsswitch.conf.5:135
14055 #, no-wrap
14056 msgid "rpc:"
14057 msgstr "rpc:"
14058
14059 #. type: TP
14060 #: build/C/man5/nsswitch.conf.5:138
14061 #, no-wrap
14062 msgid "services:"
14063 msgstr "services:"
14064
14065 #. type: Plain text
14066 #: build/C/man5/nsswitch.conf.5:146
14067 msgid ""
14068 "The first column is the database.  The rest of the line specifies how the "
14069 "lookup process works.  You can specify the way it works for each database "
14070 "individually."
14071 msgstr ""
14072 "最初のカラムはデータベース名である。 行の残りでは閲覧プロセスの動作を指定して"
14073 "いる。 それぞれのデータベースに対して、閲覧方法は独立に設定できる。"
14074
14075 #. type: Plain text
14076 #: build/C/man5/nsswitch.conf.5:149
14077 msgid ""
14078 "The configuration specification for each database can contain two different "
14079 "items:"
14080 msgstr ""
14081 "各々のデータベースの設定には以下の 2 種類の内容を指定することができる。"
14082
14083 #. type: TP
14084 #: build/C/man5/nsswitch.conf.5:150
14085 #, no-wrap
14086 msgid "* The service specification like `files', `db', or `nis'."
14087 msgstr "* サービスの指定。 `files', `db', `nis' など。"
14088
14089 #. type: TP
14090 #: build/C/man5/nsswitch.conf.5:152
14091 #, no-wrap
14092 msgid "* The reaction on lookup result like `[NOTFOUND=return]'."
14093 msgstr "* 閲覧結果に対するリアクション。 `[NOTFOUND=return]' など。"
14094
14095 #. type: Plain text
14096 #: build/C/man5/nsswitch.conf.5:160
14097 msgid ""
14098 "For libc5 with NYS, the allowed service specifications are `files', `nis', "
14099 "and `nisplus'.  For hosts, you could specify `dns' as extra service, for "
14100 "passwd and group `compat', but not for shadow."
14101 msgstr ""
14102 "NYS 機能を組み込んだ libc5 では、指定できるサービスは `files'、 `nis'、 "
14103 "`nisplus' のいずれかである。 hosts に対しては `dns' も指定できる。また "
14104 "passwd と group に対しては `compat' も指定できる。 shadow には `compat' の指"
14105 "定はできない。"
14106
14107 #. type: Plain text
14108 #: build/C/man5/nsswitch.conf.5:173
14109 msgid ""
14110 "For glibc, you must have a file called B</lib/libnss_SERVICE.so.>I<X> for "
14111 "every SERVICE you are using.  On a standard installation, you could use "
14112 "`files', `db', `nis', and `nisplus'.  For hosts, you could specify `dns' as "
14113 "extra service, for passwd, group, and shadow `compat'.  These services will "
14114 "not be used by libc5 with NYS.  The version number I<X> is 1 for glibc 2.0 "
14115 "and 2 for glibc 2.1."
14116 msgstr ""
14117 "glibc では、利用しようとするサービス SERVICE それぞれに対し て B</lib/"
14118 "libnss_SERVICE.so.>I<X> というファイルが必要になる。標準的なインストールでは "
14119 "`files'、 `db'、 `nis'、 `nisplus' が利用できるようになっていることが多い。 "
14120 "hosts に対 しては `dns' も指定でき、 passwd、 group、 shadow に対しては "
14121 "`compat' も指定できる。 これらのサービスは libc5+NYS の環境では利用できな"
14122 "い。 バージョン番号 I<X> は、 glibc 2.0 用なら 1、 glibc 2.1 用なら 2 であ"
14123 "る。"
14124
14125 #. type: Plain text
14126 #: build/C/man5/nsswitch.conf.5:179
14127 msgid ""
14128 "The second item in the specification gives the user much finer control on "
14129 "the lookup process.  Action items are placed between two service names and "
14130 "are written within brackets.  The general form is"
14131 msgstr ""
14132 "二つめの指定方法は閲覧プロセスをより詳細に制御するためのものである。ア クショ"
14133 "ン指定 (action item) はサービス名の間に、角かっこ [] で括られて 記述される。"
14134 "一般的な書式は以下の通り。"
14135
14136 #. type: Plain text
14137 #: build/C/man5/nsswitch.conf.5:181
14138 msgid "`[' ( `!'? STATUS `=' ACTION )+ `]'"
14139 msgstr "`[' ( `!'? STATUS `=' ACTION )+ `]'"
14140
14141 #. type: Plain text
14142 #: build/C/man5/nsswitch.conf.5:183
14143 msgid "where"
14144 msgstr "STATUS と ACTION はそれぞれ以下の値を取る。"
14145
14146 #. type: TP
14147 #: build/C/man5/nsswitch.conf.5:185
14148 #, no-wrap
14149 msgid "STATUS =E<gt> success | notfound | unavail | tryagain"
14150 msgstr "STATUS =E<gt> success | notfound | unavail | tryagain"
14151
14152 #. type: TP
14153 #: build/C/man5/nsswitch.conf.5:187
14154 #, no-wrap
14155 msgid "ACTION =E<gt> return | continue"
14156 msgstr "ACTION =E<gt> return | continue"
14157
14158 #. type: Plain text
14159 #: build/C/man5/nsswitch.conf.5:195
14160 msgid ""
14161 "The case of the keywords is insignificant.  The STATUS values are the "
14162 "results of a call to a lookup function of a specific service.  They mean:"
14163 msgstr ""
14164 "キーワードの大文字小文字は区別されない。 STATUS の値は特定の機能に対し て閲覧"
14165 "を行った結果である。それぞれの意味は以下の通り。"
14166
14167 #. type: TP
14168 #: build/C/man5/nsswitch.conf.5:195
14169 #, no-wrap
14170 msgid "B<success>"
14171 msgstr "B<success>"
14172
14173 #. type: Plain text
14174 #: build/C/man5/nsswitch.conf.5:200
14175 msgid ""
14176 "No error occurred and the wanted entry is returned.  The default action for "
14177 "this is `return'."
14178 msgstr ""
14179 "エラーは起こらず、必要なエントリが返された。この結果に対するデフォルト のアク"
14180 "ションは `return' である。"
14181
14182 #. type: TP
14183 #: build/C/man5/nsswitch.conf.5:200
14184 #, no-wrap
14185 msgid "B<notfound>"
14186 msgstr "B<notfound>"
14187
14188 #. type: Plain text
14189 #: build/C/man5/nsswitch.conf.5:204
14190 msgid ""
14191 "The lookup process succeeded, but the needed value was not found.  The "
14192 "default action is `continue'."
14193 msgstr ""
14194 "閲覧プロセスは成功したが、必要な値が見つからなかった。デフォルトの アクション"
14195 "は `continue'。"
14196
14197 #. type: TP
14198 #: build/C/man5/nsswitch.conf.5:204
14199 #, no-wrap
14200 msgid "B<unavail>"
14201 msgstr "B<unavail>"
14202
14203 #. type: Plain text
14204 #: build/C/man5/nsswitch.conf.5:212
14205 msgid ""
14206 "The service is permanently unavailable.  This can either mean the needed "
14207 "file is not available, or, for DNS, the server is not available or does not "
14208 "allow queries.  The default action is `continue'."
14209 msgstr ""
14210 "サービスが(永続的に)利用できない。必要なファイルが存在しない、DNS の 場合に"
14211 "はサーバに対する問い合わせが許可されていない、などがありうる。 デフォルトのア"
14212 "クションは `continue'。"
14213
14214 #. type: TP
14215 #: build/C/man5/nsswitch.conf.5:212
14216 #, no-wrap
14217 msgid "B<tryagain>"
14218 msgstr "B<tryagain>"
14219
14220 #. type: Plain text
14221 #: build/C/man5/nsswitch.conf.5:218
14222 msgid ""
14223 "The service is temporarily unavailable.  This could mean a file is locked or "
14224 "a server currently cannot accept more connections.  The default action is "
14225 "`continue'."
14226 msgstr ""
14227 "サービスが一時的に利用できない。ファイルがロックされている、サーバの接 続数が"
14228 "リミットを越えていて現在利用できない、などが考えられる。デフォル トのアクショ"
14229 "ンは `continue'。"
14230
14231 #. type: SS
14232 #: build/C/man5/nsswitch.conf.5:218
14233 #, no-wrap
14234 msgid "Interaction with +/- syntax (compat mode)"
14235 msgstr "+/- 書式との関係 (compat モード)"
14236
14237 #. type: Plain text
14238 #: build/C/man5/nsswitch.conf.5:246
14239 msgid ""
14240 "Linux libc5 without NYS does not have the name service switch but does allow "
14241 "the user some policy control.  In I</etc/passwd> you could have entries of "
14242 "the form +user or +@netgroup (include the specified user from the NIS passwd "
14243 "map), -user or -@netgroup (exclude the specified user), and + (include every "
14244 "user, except the excluded ones, from the NIS passwd map).  Since most people "
14245 "only put a + at the end of I</etc/passwd> to include everything from NIS, "
14246 "the switch provides a faster alternative for this case (`passwd: files nis') "
14247 "which doesn't require the single + entry in I</etc/passwd>, I</etc/group>, "
14248 "and I</etc/shadow>.  If this is not sufficient, the NSS `compat' service "
14249 "provides full +/- semantics.  By default, the source is `nis', but this may "
14250 "be overridden by specifying `nisplus' as source for the pseudo-databases "
14251 "B<passwd_compat>, B<group_compat> and B<shadow_compat>.  These pseudo-"
14252 "databases are only available in GNU C Library."
14253 msgstr ""
14254 "NYS 機能を組み込んでいない libc5 は、ネームサービススイッチの機能を持っ てい"
14255 "ない。しかしある程度のポリシー制御は行うことができる。 I</etc/passwd> では "
14256 "+user や +@netgroup (NIS の passwd マップから指定したユーザを取り込 む)、 -"
14257 "user や -@netgroup (指定したユーザを除外する)、 + (NIS の passwd マップから、"
14258 "除外されたユーザ以外の全てのエントリを取り込む) な どを指定することができ"
14259 "る。 ほとんどの場合は I</etc/passwd> の最後に + を付けて NIS のすべてを取り込"
14260 "んでいるだけなので、 ネームサービススイッチを用いて (`passwd: files nis') の"
14261 "ようにすればより高速な動作が期待でき、 また I</etc/passwd>, I</etc/group>, "
14262 "I</etc/shadow> に + だけのエントリを書かなくてすむ。 より細かな制御を行いたい"
14263 "場合は、 NSS の `compat' サービスを用いれば +/- 書式をフルに用いることができ"
14264 "る。デフォルトではソースは `nis' になっ ているが、これは擬似データベース "
14265 "B<passwd_compat>,B<group_compat>,B<shadow_compat> などに `nisplus' を指定する"
14266 "ことで上書きできる。 これらの擬似データベースは GNU C ライブラリでしか利用で"
14267 "きない。"
14268
14269 #. type: Plain text
14270 #: build/C/man5/nsswitch.conf.5:251
14271 msgid ""
14272 "A service named SERVICE is implemented by a shared object library named "
14273 "B<libnss_SERVICE.so.>I<X> that resides in I</lib>."
14274 msgstr ""
14275 "SERVICE という名前のサービスは libnss_SERVICE.so.1 という名前の共有オ ブジェ"
14276 "クトライブラリで実装されている。これは /lib に置かれる。"
14277
14278 #. type: Plain text
14279 #: build/C/man5/nsswitch.conf.5:255
14280 msgid "configuration file"
14281 msgstr "設定ファイル。"
14282
14283 #. type: TP
14284 #: build/C/man5/nsswitch.conf.5:255
14285 #, no-wrap
14286 msgid "B</lib/libnss_compat.so.>I<X>"
14287 msgstr "B</lib/libnss_compat.so.>I<X>"
14288
14289 #. type: Plain text
14290 #: build/C/man5/nsswitch.conf.5:258
14291 msgid "implements `compat' source for glibc2"
14292 msgstr "glibc2 に対して `compat' ソースを実装したもの。"
14293
14294 #. type: TP
14295 #: build/C/man5/nsswitch.conf.5:258
14296 #, no-wrap
14297 msgid "B</lib/libnss_db.so.>I<X>"
14298 msgstr "B</lib/libnss_db.so.>I<X>"
14299
14300 #. type: Plain text
14301 #: build/C/man5/nsswitch.conf.5:261
14302 msgid "implements `db' source for glibc2"
14303 msgstr "glibc2 に対して `db' ソースを実装したもの。"
14304
14305 #. type: TP
14306 #: build/C/man5/nsswitch.conf.5:261
14307 #, no-wrap
14308 msgid "B</lib/libnss_dns.so.>I<X>"
14309 msgstr "B</lib/libnss_dns.so.>I<X>"
14310
14311 #. type: Plain text
14312 #: build/C/man5/nsswitch.conf.5:264
14313 msgid "implements `dns' source for glibc2"
14314 msgstr "glibc2 に対して `dns' ソースを実装したもの。"
14315
14316 #. type: TP
14317 #: build/C/man5/nsswitch.conf.5:264
14318 #, no-wrap
14319 msgid "B</lib/libnss_files.so.>I<X>"
14320 msgstr "B</lib/libnss_files.so.>I<X>"
14321
14322 #. type: Plain text
14323 #: build/C/man5/nsswitch.conf.5:267
14324 msgid "implements `files' source for glibc2"
14325 msgstr "glibc2 に対して `files' ソースを実装したもの。"
14326
14327 #. type: TP
14328 #: build/C/man5/nsswitch.conf.5:267
14329 #, no-wrap
14330 msgid "B</lib/libnss_hesiod.so.>I<X>"
14331 msgstr "B</lib/libnss_hesoid.so.>I<X>"
14332
14333 #. type: Plain text
14334 #: build/C/man5/nsswitch.conf.5:270
14335 msgid "implements `hesiod' source for glibc2"
14336 msgstr "glibc2 に対して `hesoid' ソースを実装したもの。"
14337
14338 #. type: TP
14339 #: build/C/man5/nsswitch.conf.5:270
14340 #, no-wrap
14341 msgid "B</lib/libnss_nis.so.>I<X>"
14342 msgstr "B</lib/libnss_nis.so.>I<X>"
14343
14344 #. type: Plain text
14345 #: build/C/man5/nsswitch.conf.5:273
14346 msgid "implements `nis' source for glibc2"
14347 msgstr "glibc2 に対して `nis' ソースを実装したもの。"
14348
14349 #. type: TP
14350 #: build/C/man5/nsswitch.conf.5:273
14351 #, no-wrap
14352 msgid "I</lib/libnss_nisplus.so.2>"
14353 msgstr "I</lib/libnss_nisplus.so.2>"
14354
14355 #. type: Plain text
14356 #: build/C/man5/nsswitch.conf.5:276
14357 msgid "implements `nisplus' source for glibc 2.1"
14358 msgstr "glibc 2.1 に対して `nisplus' ソースを実装したもの。"
14359
14360 #. type: Plain text
14361 #: build/C/man5/nsswitch.conf.5:282
14362 msgid ""
14363 "Within each process that uses B<nsswitch.conf>, the entire file is read only "
14364 "once; if the file is later changed, the process will continue using the old "
14365 "configuration."
14366 msgstr ""
14367 "I<nsswitch.conf> を利用するそれぞれのプロセスでは、ファイルは一度しか読み込ま"
14368 "れない。 もし nsswitch.conf があとで書き換えられても、 そのプロセスは古い設定"
14369 "のままで動作を継続する。"
14370
14371 #. type: Plain text
14372 #: build/C/man5/nsswitch.conf.5:286
14373 msgid ""
14374 "With Solaris, it isn't possible to link programs using the NSS Service "
14375 "statically.  With Linux, this is no problem."
14376 msgstr ""
14377 "Solaris では NSS サービスを用いたプログラムをスタティックにリンクする ことは"
14378 "できない。 Linux では問題なくスタティックリンクできる。"
14379
14380 #. type: TH
14381 #: build/C/man7/packet.7:7
14382 #, no-wrap
14383 msgid "PACKET"
14384 msgstr "PACKET"
14385
14386 #. type: TH
14387 #: build/C/man7/packet.7:7 build/C/man7/x25.7:7
14388 #, no-wrap
14389 msgid "2008-08-08"
14390 msgstr "2008-08-08"
14391
14392 #. type: Plain text
14393 #: build/C/man7/packet.7:10
14394 msgid "packet, AF_PACKET - packet interface on device level."
14395 msgstr "packet, AF_PACKET - デバイスレベルのパケットインターフェース"
14396
14397 #. type: Plain text
14398 #: build/C/man7/packet.7:13
14399 #, no-wrap
14400 msgid "B<#include E<lt>sys/socket.hE<gt>>\n"
14401 msgstr "B<#include E<lt>sys/socket.hE<gt>>\n"
14402
14403 #. type: Plain text
14404 #: build/C/man7/packet.7:15
14405 #, no-wrap
14406 msgid "B<#include E<lt>netpacket/packet.hE<gt>>\n"
14407 msgstr "B<#include E<lt>netpacket/packet.hE<gt>>\n"
14408
14409 #. type: Plain text
14410 #: build/C/man7/packet.7:17
14411 #, no-wrap
14412 msgid "B<#include E<lt>net/ethernet.hE<gt> /* the L2 protocols */>\n"
14413 msgstr "B<#include E<lt>net/ethernet.hE<gt> /* the L2 protocols */>\n"
14414
14415 #. type: Plain text
14416 #: build/C/man7/packet.7:19
14417 #, no-wrap
14418 msgid "B<packet_socket = socket(AF_PACKET, int >I<socket_type>B<, int >I<protocol>B<);>\n"
14419 msgstr "B<packet_socket = socket(AF_PACKET, int >I<socket_type>B<, int >I<protocol>B<);>\n"
14420
14421 #. type: Plain text
14422 #: build/C/man7/packet.7:25
14423 msgid ""
14424 "Packet sockets are used to receive or send raw packets at the device driver "
14425 "(OSI Layer 2) level.  They allow the user to implement protocol modules in "
14426 "user space on top of the physical layer."
14427 msgstr ""
14428 "packet ソケットは、デバイスドライバ (OSI レイヤ 2) レベルで 生のパケット "
14429 "(raw packet) を送受信するために用いられる。 packet ソケットを使うと、ユーザー"
14430 "空間で物理層の上に プロトコルモジュールを実装することができる。"
14431
14432 #. type: Plain text
14433 #: build/C/man7/packet.7:47
14434 msgid ""
14435 "The I<socket_type> is either B<SOCK_RAW> for raw packets including the link "
14436 "level header or B<SOCK_DGRAM> for cooked packets with the link level header "
14437 "removed.  The link level header information is available in a common format "
14438 "in a I<sockaddr_ll>.  I<protocol> is the IEEE 802.3 protocol number in "
14439 "network order.  See the I<E<lt>linux/if_ether.hE<gt>> include file for a "
14440 "list of allowed protocols.  When protocol is set to B<htons(ETH_P_ALL)> then "
14441 "all protocols are received.  All incoming packets of that protocol type will "
14442 "be passed to the packet socket before they are passed to the protocols "
14443 "implemented in the kernel."
14444 msgstr ""
14445 "I<socket_type> には B<SOCK_RAW> と B<SOCK_DGRAM> のいずれかを指定する。 "
14446 "B<SOCK_RAW> はリンクレベルヘッダを含む raw パケットを、 B<SOCK_DGRAM> はリン"
14447 "クレベルヘッダが削除された加工済みパケットを示す。 リンクレベルヘッダ情報は "
14448 "I<sockaddr_ll> で共通のフォーマットで入手できる。 I<protocol> には IEEE "
14449 "802.3 プロトコル番号を ネットワークバイトオーダーで指定する。 指定できるプロ"
14450 "トコルのリストは、インクルードファイル I<E<lt>linux/if_ether.hE<gt>> を参照。"
14451 "プロトコルを B<htons(ETH_P_ALL)> にすると、全てのプロトコルが受信される。 外"
14452 "部から来たパケットのうち指定したプロトコルのものは、 カーネルに実装されている"
14453 "プロトコルに渡される前の段階で、 packet ソケットに渡される。"
14454
14455 #. type: Plain text
14456 #: build/C/man7/packet.7:51
14457 msgid ""
14458 "Only processes with effective UID 0 or the B<CAP_NET_RAW> capability may "
14459 "open packet sockets."
14460 msgstr ""
14461 "packet ソケットをオープンできるのは、 実効ユーザーID が 0 のプロセスか、 "
14462 "B<CAP_NET_RAW> ケーパビリティを持つプロセスだけである。"
14463
14464 #. type: Plain text
14465 #: build/C/man7/packet.7:69
14466 msgid ""
14467 "B<SOCK_RAW> packets are passed to and from the device driver without any "
14468 "changes in the packet data.  When receiving a packet, the address is still "
14469 "parsed and passed in a standard I<sockaddr_ll> address structure.  When "
14470 "transmitting a packet, the user supplied buffer should contain the physical "
14471 "layer header.  That packet is then queued unmodified to the network driver "
14472 "of the interface defined by the destination address.  Some device drivers "
14473 "always add other headers.  B<SOCK_RAW> is similar to but not compatible with "
14474 "the obsolete B<AF_INET/SOCK_PACKET> of Linux 2.0."
14475 msgstr ""
14476 "B<SOCK_RAW> パケットでは、パケットをデバイスドライバと受け渡しする際、 パケッ"
14477 "トデータに変更が行われることはない。 パケットの受信時には、アドレスの解析だけ"
14478 "は行われ、 標準的な I<sockaddr_ll> アドレス構造体に渡される。パケットの送信時"
14479 "には、ユーザが指定する バッファに物理層のヘッダが含まれている必要がある。 パ"
14480 "ケットはそのまま修正を受けずに、行き先アドレスから決定される インターフェース"
14481 "のネットワークドライバにキューイングされる。 デバイスドライバによっては、他の"
14482 "ヘッダを常に追加するものもある。 B<SOCK_RAW> は Linux 2.0 の obosolete な "
14483 "B<AF_INET/SOCK_PACKET> と似ているが、互換性があるわけではない。"
14484
14485 #. type: Plain text
14486 #: build/C/man7/packet.7:79
14487 msgid ""
14488 "B<SOCK_DGRAM> operates on a slightly higher level.  The physical header is "
14489 "removed before the packet is passed to the user.  Packets sent through a "
14490 "B<SOCK_DGRAM> packet socket get a suitable physical layer header based on "
14491 "the information in the I<sockaddr_ll> destination address before they are "
14492 "queued."
14493 msgstr ""
14494 "B<SOCK_DGRAM> はやや高位のレベルで動作する。物理ヘッダは、パケットがユーザー"
14495 "に 渡される前に削除される。 B<SOCK_DGRAM> の packet ソケットを通して送られる"
14496 "パケットは、 I<sockaddr_ll> の行き先アドレスの情報に基づき、適切な物理層の"
14497 "ヘッダが付加されてから、 キューに送られる。"
14498
14499 #. type: Plain text
14500 #: build/C/man7/packet.7:92
14501 msgid ""
14502 "By default all packets of the specified protocol type are passed to a packet "
14503 "socket.  To only get packets from a specific interface use B<bind>(2)  "
14504 "specifying an address in a I<struct sockaddr_ll> to bind the packet socket "
14505 "to an interface.  Only the I<sll_protocol> and the I<sll_ifindex> address "
14506 "fields are used for purposes of binding."
14507 msgstr ""
14508 "デフォルトでは、指定したプロトコル型のパケットはすべて packet ソケットに送ら"
14509 "れる。特定のインターフェースからのパケットだけを 取得したい場合には、 "
14510 "I<struct sockaddr_ll> にアドレスを指定して B<bind>(2)  を呼び、 packet ソケッ"
14511 "トをそのインターフェースに結び付ける (バインドする)。 バインドの際には、アド"
14512 "レスフィールドのうち I<sll_protocol> と I<sll_ifindex> だけが用いられる。"
14513
14514 #. type: Plain text
14515 #: build/C/man7/packet.7:96
14516 msgid "The B<connect>(2)  operation is not supported on packet sockets."
14517 msgstr "B<connect>(2)  操作は packet ソケットではサポートされていない。"
14518
14519 #. type: Plain text
14520 #: build/C/man7/packet.7:105
14521 msgid ""
14522 "When the B<MSG_TRUNC> flag is passed to B<recvmsg>(2), B<recv>(2), "
14523 "B<recvfrom>(2)  the real length of the packet on the wire is always "
14524 "returned, even when it is longer than the buffer."
14525 msgstr ""
14526 "B<MSG_TRUNC> フラグが B<recvmsg>(2), B<recv>(2), B<recvfrom>(2)  に渡される"
14527 "と、 (バッファサイズより大きかったとしても) 常に実際に通信された パケットの長"
14528 "さが返される。"
14529
14530 #. type: SS
14531 #: build/C/man7/packet.7:105
14532 #, no-wrap
14533 msgid "Address Types"
14534 msgstr "アドレスのタイプ"
14535
14536 #. type: Plain text
14537 #: build/C/man7/packet.7:107
14538 msgid "The sockaddr_ll is a device independent physical layer address."
14539 msgstr "sockaddr_ll はデバイスに依存しない物理層のアドレスである。"
14540
14541 #. type: Plain text
14542 #: build/C/man7/packet.7:119
14543 #, no-wrap
14544 msgid ""
14545 "struct sockaddr_ll {\n"
14546 "    unsigned short sll_family;   /* Always AF_PACKET */\n"
14547 "    unsigned short sll_protocol; /* Physical layer protocol */\n"
14548 "    int            sll_ifindex;  /* Interface number */\n"
14549 "    unsigned short sll_hatype;   /* Header type */\n"
14550 "    unsigned char  sll_pkttype;  /* Packet type */\n"
14551 "    unsigned char  sll_halen;    /* Length of address */\n"
14552 "    unsigned char  sll_addr[8];  /* Physical layer address */\n"
14553 "};\n"
14554 msgstr ""
14555 "struct sockaddr_ll {\n"
14556 "    unsigned short sll_family;   /* 常に AF_PACKET */\n"
14557 "    unsigned short sll_protocol; /* 物理層のプロトコル */\n"
14558 "    int            sll_ifindex;  /* インターフェース番号 */\n"
14559 "    unsigned short sll_hatype;   /* ヘッダ種別 */\n"
14560 "    unsigned char  sll_pkttype;  /* パケット種別 */\n"
14561 "    unsigned char  sll_halen;    /* アドレスの長さ */\n"
14562 "    unsigned char  sll_addr[8];  /* 物理層のアドレス */\n"
14563 "};\n"
14564
14565 #. type: Plain text
14566 #: build/C/man7/packet.7:158
14567 msgid ""
14568 "I<sll_protocol> is the standard ethernet protocol type in network order as "
14569 "defined in the I<E<lt>linux/if_ether.hE<gt>> include file.  It defaults to "
14570 "the socket's protocol.  I<sll_ifindex> is the interface index of the "
14571 "interface (see B<netdevice>(7)); 0 matches any interface (only permitted for "
14572 "binding).  I<sll_hatype> is a ARP type as defined in the I<E<lt>linux/if_arp."
14573 "hE<gt>> include file.  I<sll_pkttype> contains the packet type.  Valid types "
14574 "are B<PACKET_HOST> for a packet addressed to the local host, "
14575 "B<PACKET_BROADCAST> for a physical layer broadcast packet, "
14576 "B<PACKET_MULTICAST> for a packet sent to a physical layer multicast address, "
14577 "B<PACKET_OTHERHOST> for a packet to some other host that has been caught by "
14578 "a device driver in promiscuous mode, and B<PACKET_OUTGOING> for a packet "
14579 "originated from the local host that is looped back to a packet socket.  "
14580 "These types make only sense for receiving.  I<sll_addr> and I<sll_halen> "
14581 "contain the physical layer (e.g., IEEE 802.3) address and its length.  The "
14582 "exact interpretation depends on the device."
14583 msgstr ""
14584 "I<sll_protocol> は標準的なイーサネットプロトコルのタイプで、 ネットワークバイ"
14585 "トオーダーで記述する。 インクルードファイル I<E<lt>linux/if_ether.hE<gt>> で"
14586 "定義されている。 これがこのソケットのプロトコルのデフォルトとなる。 "
14587 "I<sll_ifindex> はそのインターフェースの interface index である (B<netdevice>"
14588 "(7)  を参照)。 0 は (バインドが許可されている)  任意のインターフェースにマッ"
14589 "チする。 I<sll_hatype> は、インクルードファイル I<E<lt>linux/if_arp.hE<gt>> "
14590 "で定義されている ARP 種別である。 I<sll_pkttype> はパケット種別である。指定で"
14591 "きる種別は以下のいずれかである: B<PACKET_HOST> (ローカルホスト向けのパケッ"
14592 "ト)、 B<PACKET_BORADCAST> (物理層のブロードキャストパケット)、 "
14593 "B<PACKET_MULTICAST> (物理層のマルチキャストアドレスに送るパケット)、 "
14594 "B<PACKET_OTHERHOST> (他のホストに向けられたパケットのうち、 無差別モード "
14595 "(promiscuous mode: 後述) のデバイスドライバにより補足されたもの)、 "
14596 "B<PACKET_OUTGOING> (ローカルホストから発信され、 packet ソケットにループバッ"
14597 "クしてきたパケット)。 これらの種別が意味を持つのは受信時のみである。 "
14598 "I<sll_addr> と I<sll_halen> は、物理層の (つまり IEEE 802.3 の) アドレスとそ"
14599 "の長さである。 厳密な解釈はデバイスに依存する。"
14600
14601 #. type: Plain text
14602 #: build/C/man7/packet.7:174
14603 msgid ""
14604 "When you send packets it is enough to specify I<sll_family>, I<sll_addr>, "
14605 "I<sll_halen>, I<sll_ifindex>.  The other fields should be 0.  I<sll_hatype> "
14606 "and I<sll_pkttype> are set on received packets for your information.  For "
14607 "bind only I<sll_protocol> and I<sll_ifindex> are used."
14608 msgstr ""
14609 "パケットを送る場合は、 I<sll_family>, I<sll_addr>, I<sll_halen>, "
14610 "I<sll_ifindex> を指定すれば十分である。 その他のフィールドは 0 にしておくべき"
14611 "である。 I<sll_hatype> と I<sll_pkttype> には受信したパケットの情報が設定され"
14612 "る。 バインドの際には、 I<sll_protocol> と I<sll_ifindex> だけが使用される。"
14613
14614 #. type: Plain text
14615 #: build/C/man7/packet.7:189
14616 msgid ""
14617 "Packet sockets can be used to configure physical layer multicasting and "
14618 "promiscuous mode.  It works by calling B<setsockopt>(2)  on a packet socket "
14619 "for B<SOL_PACKET> and one of the options B<PACKET_ADD_MEMBERSHIP> to add a "
14620 "binding or B<PACKET_DROP_MEMBERSHIP> to drop it.  They both expect a "
14621 "B<packet_mreq> structure as argument:"
14622 msgstr ""
14623 "packet ソケットは、物理層のマルチキャストや 無差別モード (promiscuous mode) "
14624 "を設定して使うことができる。 これには B<SOL_PACKET> と以下のオプションのいず"
14625 "れかを指定して B<setsockopt>(2)  を呼べばよい。 バインドを追加する場合は "
14626 "B<PACKET_ADD_MEMBERSHIP> であり、取り去る場合は B<PACKET_DROP_MEMBERSHIP> で"
14627 "ある。これらはいずれも B<packet_mreq> 構造体を引き数に取る。"
14628
14629 #. type: Plain text
14630 #: build/C/man7/packet.7:198
14631 #, no-wrap
14632 msgid ""
14633 "struct packet_mreq {\n"
14634 "    int            mr_ifindex;    /* interface index */\n"
14635 "    unsigned short mr_type;       /* action */\n"
14636 "    unsigned short mr_alen;       /* address length */\n"
14637 "    unsigned char  mr_address[8]; /* physical layer address */\n"
14638 "};\n"
14639 msgstr ""
14640 "struct packet_mreq {\n"
14641 "    int            mr_ifindex;    /* インターフェース番号 */\n"
14642 "    unsigned short mr_type;       /* 動作 */\n"
14643 "    unsigned short mr_alen;       /* アドレスの長さ */\n"
14644 "    unsigned char  mr_address[8]; /* 物理層のアドレス */\n"
14645 "};\n"
14646
14647 #. type: Plain text
14648 #: build/C/man7/packet.7:219
14649 msgid ""
14650 "B<mr_ifindex> contains the interface index for the interface whose status "
14651 "should be changed.  The B<mr_type> parameter specifies which action to "
14652 "perform.  B<PACKET_MR_PROMISC> enables receiving all packets on a shared "
14653 "medium (often known as \"promiscuous mode\"), B<PACKET_MR_MULTICAST> binds "
14654 "the socket to the physical layer multicast group specified in B<mr_address> "
14655 "and B<mr_alen>, and B<PACKET_MR_ALLMULTI> sets the socket up to receive all "
14656 "multicast packets arriving at the interface."
14657 msgstr ""
14658 "I<mr_ifindex> は、ステータスを変更したいインターフェースの インターフェース番"
14659 "号である。 I<mr_type> パラメータは実行する動作を指定する: "
14660 "B<PACKET_MR_PROMISC> は、共有している媒体からの全てのパケットを受信できるよう"
14661 "にする (しばしば \"無差別モード (promiscuous mode)\" と呼ばれる)。 "
14662 "B<PACKET_MR_MULTICAST> は、そのソケットを、 I<mr_address> と I<mr_alen> で指"
14663 "定される物理層のマルチキャストブループにバインドする。 B<PACKET_MR_ALLMULTI> "
14664 "は socket を up にして、そのインターフェースに到達したすべての マルチキャスト"
14665 "パケットを受信できるようにする。"
14666
14667 #. type: Plain text
14668 #: build/C/man7/packet.7:225
14669 msgid ""
14670 "In addition the traditional ioctls B<SIOCSIFFLAGS>, B<SIOCADDMULTI>, "
14671 "B<SIOCDELMULTI> can be used for the same purpose."
14672 msgstr ""
14673 "昔からある ioctl だけでなく、 B<SIOCSIFFLAGS>, B<SIOCADDMULTI>, "
14674 "B<SIOCDELMULTI> を同じ目的に用いることができる。"
14675
14676 #.  FIXME Document SIOCGSTAMPNS
14677 #. type: Plain text
14678 #: build/C/man7/packet.7:231
14679 msgid ""
14680 "B<SIOCGSTAMP> can be used to receive the timestamp of the last received "
14681 "packet.  Argument is a I<struct timeval.>"
14682 msgstr ""
14683 "B<SIOCGSTAMP> を用いると、最後に受信したパケットのタイムスタンプを得ることが"
14684 "できる。 引き数は I<struct timeval> である。"
14685
14686 #. type: Plain text
14687 #: build/C/man7/packet.7:237
14688 msgid ""
14689 "In addition all standard ioctls defined in B<netdevice>(7)  and B<socket>"
14690 "(7)  are valid on packet sockets."
14691 msgstr ""
14692 "さらに、 B<netdevice>(7)  および B<socket>(7)  で定義されている標準の ioctl "
14693 "はいずれも packet ソケットに指定可能である。"
14694
14695 #. type: SS
14696 #: build/C/man7/packet.7:237 build/C/man7/raw.7:127 build/C/man7/tcp.7:1079
14697 #: build/C/man7/udp.7:97
14698 #, no-wrap
14699 msgid "Error Handling"
14700 msgstr "エラー処理"
14701
14702 #. type: Plain text
14703 #: build/C/man7/packet.7:241
14704 msgid ""
14705 "Packet sockets do no error handling other than errors occurred while passing "
14706 "the packet to the device driver.  They don't have the concept of a pending "
14707 "error."
14708 msgstr ""
14709 "packet ソケットは、パケットをデバイスドライバに渡すときに 起きたエラーしか処"
14710 "理しない。遅延エラー (pending error)  に関する概念は持っていない。"
14711
14712 #. type: Plain text
14713 #: build/C/man7/packet.7:245
14714 msgid "Unknown multicast group address passed."
14715 msgstr "不明なマルチキャストグループアドレスが渡された。"
14716
14717 #. type: Plain text
14718 #: build/C/man7/packet.7:248
14719 msgid "User passed invalid memory address."
14720 msgstr "ユーザが渡したメモリアドレスが不正。"
14721
14722 #. type: Plain text
14723 #: build/C/man7/packet.7:251 build/C/man7/raw.7:151
14724 msgid "Invalid argument."
14725 msgstr "引き数が不正。"
14726
14727 #. type: Plain text
14728 #: build/C/man7/packet.7:254
14729 msgid "Packet is bigger than interface MTU."
14730 msgstr "パケットがインターフェースの MTU より大きい。"
14731
14732 #. type: TP
14733 #: build/C/man7/packet.7:254
14734 #, no-wrap
14735 msgid "B<ENETDOWN>"
14736 msgstr "B<ENETDOWN>"
14737
14738 #. type: Plain text
14739 #: build/C/man7/packet.7:257
14740 msgid "Interface is not up."
14741 msgstr "インターフェースが up でない。"
14742
14743 #. type: Plain text
14744 #: build/C/man7/packet.7:260
14745 msgid "Not enough memory to allocate the packet."
14746 msgstr "パケットに割り当てるメモリが足りない。"
14747
14748 #. type: Plain text
14749 #: build/C/man7/packet.7:263
14750 msgid "Unknown device name or interface index specified in interface address."
14751 msgstr ""
14752 "デバイス名が不明。あるいはインターフェースアドレスで指定された インターフェー"
14753 "スインデックスが不明。"
14754
14755 #. type: Plain text
14756 #: build/C/man7/packet.7:266
14757 msgid "No packet received."
14758 msgstr "パケットを一つも受信していない。"
14759
14760 #. type: Plain text
14761 #: build/C/man7/packet.7:269
14762 msgid "No interface address passed."
14763 msgstr "インターフェースアドレスが渡されなかった。"
14764
14765 #. type: TP
14766 #: build/C/man7/packet.7:269
14767 #, no-wrap
14768 msgid "B<ENXIO>"
14769 msgstr "B<ENXIO>"
14770
14771 #. type: Plain text
14772 #: build/C/man7/packet.7:272
14773 msgid "Interface address contained an invalid interface index."
14774 msgstr ""
14775 "インターフェースアドレスに不正なインターフェースインデックスが含まれている。"
14776
14777 #. type: Plain text
14778 #: build/C/man7/packet.7:275
14779 msgid "User has insufficient privileges to carry out this operation."
14780 msgstr "この操作を行うのに必要な権限をユーザが持っていない。"
14781
14782 #. type: Plain text
14783 #: build/C/man7/packet.7:277
14784 msgid "In addition other errors may be generated by the low-level driver."
14785 msgstr "上記以外のエラーが、低レベルのドライバで生成されることがある。"
14786
14787 #. type: Plain text
14788 #: build/C/man7/packet.7:282
14789 msgid ""
14790 "B<AF_PACKET> is a new feature in Linux 2.2.  Earlier Linux versions "
14791 "supported only B<SOCK_PACKET>."
14792 msgstr ""
14793 "B<AF_PACKET> は Linux 2.2 の新機能である。これより古いバージョンの Linux で"
14794 "は B<SOCK_PACKET> のみをサポートしていた。"
14795
14796 #. type: Plain text
14797 #: build/C/man7/packet.7:287
14798 msgid ""
14799 "The include file I<E<lt>netpacket/packet.hE<gt>> is present since glibc "
14800 "2.1.  Older systems need:"
14801 msgstr ""
14802 "インクルードファイル I<E<lt>netpacket/packet.hE<gt>> が存在するのは glibc "
14803 "2.1 以降である。 それ以前のシステムでは以下のようにする必要がある:"
14804
14805 #. type: Plain text
14806 #: build/C/man7/packet.7:293
14807 #, no-wrap
14808 msgid ""
14809 "#include E<lt>asm/types.hE<gt>\n"
14810 "#include E<lt>linux/if_packet.hE<gt>\n"
14811 "#include E<lt>linux/if_ether.hE<gt>  /* The L2 protocols */\n"
14812 msgstr ""
14813 "#include E<lt>asm/types.hE<gt>\n"
14814 "#include E<lt>linux/if_packet.hE<gt>\n"
14815 "#include E<lt>linux/if_ether.hE<gt>  /* The L2 protocols */\n"
14816
14817 #. type: Plain text
14818 #: build/C/man7/packet.7:303
14819 msgid ""
14820 "For portable programs it is suggested to use B<AF_PACKET> via B<pcap>(3); "
14821 "although this only covers a subset of the B<AF_PACKET> features."
14822 msgstr ""
14823 "移植性の必要なプログラムでは、 B<pcap>(3)  経由で B<AF_PACKET> を用いることを"
14824 "お薦めする。ただし、この方法では B<AF_PACKET> の機能すべてを利用することはで"
14825 "きない。"
14826
14827 #. type: Plain text
14828 #: build/C/man7/packet.7:324
14829 msgid ""
14830 "The B<SOCK_DGRAM> packet sockets make no attempt to create or parse the IEEE "
14831 "802.2 LLC header for a IEEE 802.3 frame.  When B<ETH_P_802_3> is specified "
14832 "as protocol for sending the kernel creates the 802.3 frame and fills out the "
14833 "length field; the user has to supply the LLC header to get a fully "
14834 "conforming packet.  Incoming 802.3 packets are not multiplexed on the DSAP/"
14835 "SSAP protocol fields; instead they are supplied to the user as protocol "
14836 "B<ETH_P_802_2> with the LLC header prepended.  It is thus not possible to "
14837 "bind to B<ETH_P_802_3>; bind to B<ETH_P_802_2> instead and do the protocol "
14838 "multiplex yourself.  The default for sending is the standard Ethernet DIX "
14839 "encapsulation with the protocol filled in."
14840 msgstr ""
14841 "B<SOCK_DGRAM> packet ソケットは、IEEE 802.3 フレームの IEEE 802.2 LLC ヘッダ"
14842 "の 生成や解析を行おうとしない。 B<ETH_P_802_3> が送信プロトコルに指定される"
14843 "と、カーネルは 802.3 フレームを 生成して length フィールドに書き込む。 完全に"
14844 "準拠したパケットを得るためにはユーザーが LLC ヘッダを 与える必要がある。到着"
14845 "した 802.3 パケットでは、 DSAP/SSAP protocol の各フィールドは多重化 "
14846 "(multiplex) されていない。 代わりにこれらは LLC ヘッダが前置された "
14847 "B<ETH_P_802_2> プロトコルとして与えられる。したがって、 B<ETH_P_802_3> にバイ"
14848 "ンドすることはできない。かわりに B<ETH_P_802_2> にバインドし、自分自身でプロ"
14849 "トコルの多重化を行うこと。 送信のデフォルトは、プロトコルフィールドを持つ 標"
14850 "準の Ethernet DIX encapsulation である。"
14851
14852 #. type: Plain text
14853 #: build/C/man7/packet.7:326
14854 msgid "Packet sockets are not subject to the input or output firewall chains."
14855 msgstr "packet ソケットは入出力の firewall chain に影響をうけない。"
14856
14857 #. type: Plain text
14858 #: build/C/man7/packet.7:336
14859 msgid ""
14860 "In Linux 2.0, the only way to get a packet socket was by calling B<socket"
14861 "(AF_INET, SOCK_PACKET, >I<protocol>B<)>.  This is still supported but "
14862 "strongly deprecated.  The main difference between the two methods is that "
14863 "B<SOCK_PACKET> uses the old I<struct sockaddr_pkt> to specify an interface, "
14864 "which doesn't provide physical layer independence."
14865 msgstr ""
14866 "Linux 2.0 では、 packet ソケットを得る方法は B<socket(AF_INET, SOCK_PACKET, "
14867 ">I<protocol>B<)> を呼ぶやり方しかなかった。この方法はまだサポートされている"
14868 "が、 用いないことを強く推奨する。現在の方法との主な違いは、 B<SOCK_PACKET> で"
14869 "はインターフェースの指定に古い I<struct sockaddr_pkt> を用いる点である。これ"
14870 "には物理層からの独立性がない。"
14871
14872 #. type: Plain text
14873 #: build/C/man7/packet.7:344
14874 #, no-wrap
14875 msgid ""
14876 "struct sockaddr_pkt {\n"
14877 "    unsigned short spkt_family;\n"
14878 "    unsigned char  spkt_device[14];\n"
14879 "    unsigned short spkt_protocol;\n"
14880 "};\n"
14881 msgstr ""
14882 "struct sockaddr_pkt {\n"
14883 "    unsigned short spkt_family;\n"
14884 "    unsigned char  spkt_device[14];\n"
14885 "    unsigned short spkt_protocol;\n"
14886 "};\n"
14887
14888 #. type: Plain text
14889 #: build/C/man7/packet.7:356
14890 msgid ""
14891 "I<spkt_family> contains the device type, I<spkt_protocol> is the IEEE 802.3 "
14892 "protocol type as defined in I<E<lt>sys/if_ether.hE<gt>> and I<spkt_device> "
14893 "is the device name as a null-terminated string, for example, eth0."
14894 msgstr ""
14895 "I<spkt_family> はデバイスのタイプ、 I<spkt_protocol> は I<E<lt>sys/if_ether."
14896 "hE<gt>> で定義されている IEEE 802.3 プロトコルタイプ、 I<spkt_device> はデバ"
14897 "イスの名前を NULL 終端された文字列で与えたもの (例: eth0) である。"
14898
14899 #. type: Plain text
14900 #: build/C/man7/packet.7:358
14901 msgid "This structure is obsolete and should not be used in new code."
14902 msgstr ""
14903 "この構造体は obsolete であり、 新しくコードを書く時には用いるべきでない。"
14904
14905 #. type: Plain text
14906 #: build/C/man7/packet.7:362
14907 msgid ""
14908 "glibc 2.1 does not have a define for B<SOL_PACKET>.  The suggested "
14909 "workaround is to use:"
14910 msgstr ""
14911 "glibc 2.1 には B<SOL_PACKET> の定義がない。回避策としては、以下のようにすると"
14912 "よい。"
14913
14914 #. type: Plain text
14915 #: build/C/man7/packet.7:368
14916 #, no-wrap
14917 msgid ""
14918 "#ifndef SOL_PACKET\n"
14919 "#define SOL_PACKET 263\n"
14920 "#endif\n"
14921 msgstr ""
14922 "#ifndef SOL_PACKET\n"
14923 "#define SOL_PACKET 263\n"
14924 "#endif\n"
14925
14926 #. type: Plain text
14927 #: build/C/man7/packet.7:373
14928 msgid ""
14929 "This is fixed in later glibc versions and also does not occur on libc5 "
14930 "systems."
14931 msgstr ""
14932 "この問題は新しいバージョンの glibc では修正されている。 libc5 のシステムには"
14933 "この問題はない。"
14934
14935 #. type: Plain text
14936 #: build/C/man7/packet.7:375
14937 msgid "The IEEE 802.2/803.3 LLC handling could be considered as a bug."
14938 msgstr "IEEE 802.2/803.3 の LLC の扱い方は、バグと考えても良いだろう。"
14939
14940 #. type: Plain text
14941 #: build/C/man7/packet.7:377
14942 msgid "Socket filters are not documented."
14943 msgstr "ソケットフィルターについて記載されていない。"
14944
14945 #.  .SH CREDITS
14946 #.  This man page was written by Andi Kleen with help from Matthew Wilcox.
14947 #.  AF_PACKET in Linux 2.2 was implemented
14948 #.  by Alexey Kuznetsov, based on code by Alan Cox and others.
14949 #. type: Plain text
14950 #: build/C/man7/packet.7:389
14951 msgid ""
14952 "The B<MSG_TRUNC> B<recvmsg>(2)  extension is an ugly hack and should be "
14953 "replaced by a control message.  There is currently no way to get the "
14954 "original destination address of packets via B<SOCK_DGRAM>."
14955 msgstr ""
14956 "B<MSG_TRUNC> B<recvmsg>(2)  拡張は非常にまずい対処であり、制御メッセージで置"
14957 "き換えるべきである。 今のところ B<SOCK_DGRAM> 経由でパケットについていた宛先"
14958 "アドレスを得る方法がない。"
14959
14960 #. type: Plain text
14961 #: build/C/man7/packet.7:396
14962 msgid ""
14963 "B<socket>(2), B<pcap>(3), B<capabilities>(7), B<ip>(7), B<raw>(7), B<socket>"
14964 "(7)"
14965 msgstr ""
14966 "B<socket>(2), B<pcap>(3), B<capabilities>(7), B<ip>(7), B<raw>(7), B<socket>"
14967 "(7)"
14968
14969 #. type: Plain text
14970 #: build/C/man7/packet.7:398
14971 msgid "RFC\\ 894 for the standard IP Ethernet encapsulation."
14972 msgstr "標準 IP Ethernet encapsulation に関する情報は RFC\\ 894 にある。"
14973
14974 #. type: Plain text
14975 #: build/C/man7/packet.7:400
14976 msgid "RFC\\ 1700 for the IEEE 802.3 IP encapsulation."
14977 msgstr "IEEE 802.3 IP encapsulation に関する情報は RFC\\ 1700 にある。"
14978
14979 #. type: Plain text
14980 #: build/C/man7/packet.7:404
14981 msgid ""
14982 "The I<E<lt>linux/if_ether.hE<gt>> include file for physical layer protocols."
14983 msgstr ""
14984 "物理層のプロトコルに関する記述は I<E<lt>linux/if_ether.hE<gt>> インクルード"
14985 "ファイルにある。"
14986
14987 #. type: TH
14988 #: build/C/man5/protocols.5:28
14989 #, no-wrap
14990 msgid "PROTOCOLS"
14991 msgstr "PROTOCOLS"
14992
14993 #. type: TH
14994 #: build/C/man5/protocols.5:28
14995 #, no-wrap
14996 msgid "2008-09-23"
14997 msgstr "2008-09-23"
14998
14999 #. type: Plain text
15000 #: build/C/man5/protocols.5:31
15001 msgid "protocols - protocols definition file"
15002 msgstr "protocols - プロトコル定義ファイル"
15003
15004 #. type: Plain text
15005 #: build/C/man5/protocols.5:39
15006 msgid ""
15007 "This file is a plain ASCII file, describing the various DARPA internet "
15008 "protocols that are available from the TCP/IP subsystem.  It should be "
15009 "consulted instead of using the numbers in the ARPA include files, or, even "
15010 "worse, just guessing them.  These numbers will occur in the protocol field "
15011 "of any IP header."
15012 msgstr ""
15013 "このファイルは ASCII ファイルで、TCP/IP サブシステムから利用できる いろいろ"
15014 "な DARPA インターネットプロトコルを記述している。 ARPA 関連のインクルードファ"
15015 "イル内の数値を使うべきではないし、 単に推測した値を使うのはさらに良くない。 "
15016 "代わりにこのファイルに問い合わせるべきである。 これらの数値は IP ヘッダのプロ"
15017 "トコルフィールドに現れる。"
15018
15019 #.  .. by the DDN Network Information Center.
15020 #. type: Plain text
15021 #: build/C/man5/protocols.5:45
15022 msgid ""
15023 "Keep this file untouched since changes would result in incorrect IP "
15024 "packages.  Protocol numbers and names are specified by the IANA (Internet "
15025 "Assigned Numbers Authority)."
15026 msgstr ""
15027 "このファイルは変更しないこと。変更すると IP パッケージが不正になる。 プロトコ"
15028 "ル番号とプロトコル名は IANA (Internet Assigned Numbers Authority) によって指"
15029 "定される。"
15030
15031 #. type: Plain text
15032 #: build/C/man5/protocols.5:47
15033 msgid "Each line is of the following format:"
15034 msgstr "それぞれの行は次のフォーマットである。"
15035
15036 #. type: Plain text
15037 #: build/C/man5/protocols.5:50
15038 msgid "I<protocol number aliases ...>"
15039 msgstr "I<protocol number aliases ...>"
15040
15041 #. type: Plain text
15042 #: build/C/man5/protocols.5:56
15043 msgid ""
15044 "where the fields are delimited by spaces or tabs.  Empty lines are ignored.  "
15045 "If a line contains a hash mark (#), the hash mark and the part of the line "
15046 "following it are ignored."
15047 msgstr ""
15048 "各フィールドは空白かタブで区切られていて、空行は無視される。 行にハッシュ記号"
15049 "(#)が含まれる場合、 ハッシュ記号を含むその行の残りは無視される。"
15050
15051 #. type: TP
15052 #: build/C/man5/protocols.5:58 build/C/man5/services.5:109
15053 #, no-wrap
15054 msgid "I<protocol>"
15055 msgstr "I<protocol>"
15056
15057 #. type: Plain text
15058 #: build/C/man5/protocols.5:66
15059 msgid ""
15060 "the native name for the protocol.  For example I<ip>, I<tcp>, or I<udp>."
15061 msgstr "プロトコルの固有名。たとえば I<ip>, I<tcp>, I<udp> など。"
15062
15063 #. type: Plain text
15064 #: build/C/man5/protocols.5:70
15065 msgid ""
15066 "the official number for this protocol as it will appear within the IP header."
15067 msgstr "プロトコルの公式番号、IP ヘッダに現れる。"
15068
15069 #. type: Plain text
15070 #: build/C/man5/protocols.5:73
15071 msgid "optional aliases for the protocol."
15072 msgstr "プロトコルの別名、オプション。"
15073
15074 #.  The following is not true as at glibc 2.8 (a line with a comma is
15075 #.  ignored by getservent()); it's not clear if/when it was ever true.
15076 #.    As a backward compatibility feature, the slash (/) between the
15077 #.    .I port
15078 #.    number and
15079 #.    .I protocol
15080 #.    name can in fact be either a slash or a comma (,).
15081 #.    Use of the comma in
15082 #.    modern installations is deprecated.
15083 #. type: Plain text
15084 #: build/C/man5/protocols.5:76 build/C/man5/services.5:165
15085 msgid ""
15086 "This file might be distributed over a network using a network-wide naming "
15087 "service like Yellow Pages/NIS or BIND/Hesiod."
15088 msgstr ""
15089 "このファイルは Yellow Pages/NIS や BIND/Hesiod のようなネットワーク上の名前"
15090 "サービスを用いて、ネットワークを通じて配布される可能性もある。"
15091
15092 #. type: Plain text
15093 #: build/C/man5/protocols.5:80
15094 msgid "The protocols definition file."
15095 msgstr "プロトコル定義ファイル。"
15096
15097 #. type: Plain text
15098 #: build/C/man5/protocols.5:82
15099 msgid "B<getprotoent>(3)"
15100 msgstr "B<getprotoent>(3)"
15101
15102 #. type: Plain text
15103 #: build/C/man5/protocols.5:84
15104 msgid "http://www.iana.org/assignments/protocol-numbers"
15105 msgstr "http://www.iana.org/assignments/protocol-numbers"
15106
15107 #. type: TH
15108 #: build/C/man7/raw.7:9
15109 #, no-wrap
15110 msgid "RAW"
15111 msgstr "RAW"
15112
15113 #. type: Plain text
15114 #: build/C/man7/raw.7:12
15115 msgid "raw, SOCK_RAW - Linux IPv4 raw sockets"
15116 msgstr "raw, SOCK_RAW - Linux の IPv4 raw ソケット"
15117
15118 #. type: Plain text
15119 #: build/C/man7/raw.7:18
15120 msgid "B<raw_socket = socket(AF_INET, SOCK_RAW, int >I<protocol>B<);>"
15121 msgstr "B<raw_socket = socket(AF_INET, SOCK_RAW, int >I<protocol>B<);>"
15122
15123 #. type: Plain text
15124 #: build/C/man7/raw.7:22
15125 msgid ""
15126 "Raw sockets allow new IPv4 protocols to be implemented in user space.  A raw "
15127 "socket receives or sends the raw datagram not including link level headers."
15128 msgstr ""
15129 "raw ソケットを使うと、新しい IPv4 プロトコルをユーザ空間で 実装できるようにな"
15130 "る。 raw ソケットは、リンクレベルヘッダを 含まない raw データグラムの送受信が"
15131 "できる。"
15132
15133 #. type: Plain text
15134 #: build/C/man7/raw.7:28
15135 msgid ""
15136 "The IPv4 layer generates an IP header when sending a packet unless the "
15137 "B<IP_HDRINCL> socket option is enabled on the socket.  When it is enabled, "
15138 "the packet must contain an IP header.  For receiving the IP header is always "
15139 "included in the packet."
15140 msgstr ""
15141 "IPv4 レイヤは、扱っているソケットで B<IP_HDRINCL> ソケットオプションが有効に"
15142 "なっていなければ、 パケットを送信するときに IP ヘッダを生成する。 "
15143 "B<IP_HDRINCL> オプションが有効になっているときは、パケットには IP ヘッダが含"
15144 "まれていなければならない。 受信時には、 IP ヘッダは常にパケットに含まれてい"
15145 "る。"
15146
15147 #. type: Plain text
15148 #: build/C/man7/raw.7:32
15149 msgid ""
15150 "Only processes with an effective user ID of 0 or the B<CAP_NET_RAW> "
15151 "capability are allowed to open raw sockets."
15152 msgstr ""
15153 "実効ユーザー ID が 0 のプロセスか、 B<CAP_NET_RAW> 権限を持つプロセスだけが "
15154 "raw ソケットをオープンすることができる。"
15155
15156 #. type: Plain text
15157 #: build/C/man7/raw.7:39
15158 msgid ""
15159 "All packets or errors matching the I<protocol> number specified for the raw "
15160 "socket are passed to this socket.  For a list of the allowed protocols see "
15161 "RFC\\ 1700 assigned numbers and B<getprotobyname>(3)."
15162 msgstr ""
15163 "この raw ソケットに指定された I<protocol> 番号にマッチする全てのパケットとエ"
15164 "ラーとが、このソケットに渡される。 許可されているプロトコルのリストは RFC\\ "
15165 "1700 の割り当て番号と B<getprotobyname>(3)  を見よ。"
15166
15167 #. type: Plain text
15168 #: build/C/man7/raw.7:49
15169 msgid ""
15170 "A protocol of B<IPPROTO_RAW> implies enabled B<IP_HDRINCL> and is able to "
15171 "send any IP protocol that is specified in the passed header.  Receiving of "
15172 "all IP protocols via B<IPPROTO_RAW> is not possible using raw sockets."
15173 msgstr ""
15174 "B<IPPROTO_RAW> のプロトコルは暗黙のうちに B<IP_HDRINCL> を有効にするので、 渡"
15175 "されたヘッダで指定された、あらゆる IP プロトコルを送信できる。 "
15176 "B<IPPROTO_RAW> 経由でのあらゆる IP プロトコルの受信は、 raw ソケットを用いて"
15177 "は行えない。"
15178
15179 #. type: tbl table
15180 #: build/C/man7/raw.7:54
15181 #, no-wrap
15182 msgid "IP Header fields modified on sending by B<IP_HDRINCL>\n"
15183 msgstr "IP ヘッダフィールド。 B<IP_HDRINCL> によって送信時に変更される。\n"
15184
15185 #. type: tbl table
15186 #: build/C/man7/raw.7:55
15187 #, no-wrap
15188 msgid "IP Checksum:Always filled in.\n"
15189 msgstr "IP チェックサム:常に変更される。\n"
15190
15191 #. type: tbl table
15192 #: build/C/man7/raw.7:56
15193 #, no-wrap
15194 msgid "Source Address:Filled in when zero.\n"
15195 msgstr "ソースアドレス:元の値が 0 の時に変更される。\n"
15196
15197 #. type: tbl table
15198 #: build/C/man7/raw.7:57
15199 #, no-wrap
15200 msgid "Packet Id:Filled in when zero.\n"
15201 msgstr "パケット ID:元の値が 0 の時に変更される。\n"
15202
15203 #. type: tbl table
15204 #: build/C/man7/raw.7:58
15205 #, no-wrap
15206 msgid "Total Length:Always filled in.\n"
15207 msgstr "全体の長さ:常に埋められる。\n"
15208
15209 #. type: Plain text
15210 #: build/C/man7/raw.7:72
15211 msgid ""
15212 "If B<IP_HDRINCL> is specified and the IP header has a nonzero destination "
15213 "address then the destination address of the socket is used to route the "
15214 "packet.  When B<MSG_DONTROUTE> is specified, the destination address should "
15215 "refer to a local interface, otherwise a routing table lookup is done anyway "
15216 "but gatewayed routes are ignored."
15217 msgstr ""
15218 "B<IP_HERINCL> が指定されていて、 IP ヘッダに 0 でない送信先アドレスが記入され"
15219 "ていた場合は、 その送信先アドレスがパケットの経路を決めるのに用いられる。 "
15220 "B<MSG_DONTROUTE> が指定されている時には、 送信先アドレスはローカルなインター"
15221 "フェースを参照するものでなければならない。 さもないと、ルーティングテーブルの"
15222 "参照はいずれにせよ行われるが、 ゲートウェイが必要な経路は無視される。"
15223
15224 #. type: Plain text
15225 #: build/C/man7/raw.7:80
15226 msgid ""
15227 "If B<IP_HDRINCL> isn't set, then IP header options can be set on raw sockets "
15228 "with B<setsockopt>(2); see B<ip>(7)  for more information."
15229 msgstr ""
15230 "B<IP_HDRINCL> がセットされていなければ、 raw ソケットの IP ヘッダオプション"
15231 "を B<setsockopt>(2)  を用いて設定することができる。詳細な情報は B<ip>(7)  を"
15232 "見よ。"
15233
15234 #. type: Plain text
15235 #: build/C/man7/raw.7:85
15236 msgid ""
15237 "In Linux 2.2, all IP header fields and options can be set using IP socket "
15238 "options.  This means raw sockets are usually only needed for new protocols "
15239 "or protocols with no user interface (like ICMP)."
15240 msgstr ""
15241 "Linux 2.2 では、 IP ヘッダの全てのフィールドとオプションとを IP ソケットオプ"
15242 "ションによって設定できる。したがって raw ソケットが必要になるのは、新しいプロ"
15243 "トコルを設計する場合か、 ユーザーインターフェースを持たないプロトコル (ICMP "
15244 "など) を扱う場合に 限られる。"
15245
15246 #. type: Plain text
15247 #: build/C/man7/raw.7:89
15248 msgid ""
15249 "When a packet is received, it is passed to any raw sockets which have been "
15250 "bound to its protocol before it is passed to other protocol handlers (e.g., "
15251 "kernel protocol modules)."
15252 msgstr ""
15253 "パケットは、受信されるとまずプロトコルにバインドしている raw ソケットに渡さ"
15254 "れ、 その後で他のプロトコルハンドラ (カーネルのプロトコルモジュールなど)  に"
15255 "渡される。"
15256
15257 #. type: Plain text
15258 #: build/C/man7/raw.7:105
15259 msgid ""
15260 "Raw sockets use the standard I<sockaddr_in> address structure defined in "
15261 "B<ip>(7).  The I<sin_port> field could be used to specify the IP protocol "
15262 "number, but it is ignored for sending in Linux 2.2 and should be always set "
15263 "to 0 (see BUGS).  For incoming packets, I<sin_port> is set to the protocol "
15264 "of the packet.  See the I<E<lt>netinet/in.hE<gt>> include file for valid IP "
15265 "protocols."
15266 msgstr ""
15267 "raw ソケットは標準の I<sockaddr_in> アドレス構造体を用いる。定義は B<ip>(7)  "
15268 "でなされている。 I<sin_port> フィールドを IP プロトコル番号の指定に用いること"
15269 "ができるが、 Linux 2.2 ではこれは送信時には無視され、常に 0 にされる (バグ の"
15270 "項を参照)。 受信パケットに対しては、 I<sin_port> はそのパケットのプロトコルに"
15271 "セットされる。 用いることのできる IP プロトコルは、インクルードファイル "
15272 "I<E<lt>netinet/in.hE<gt>> を見よ。"
15273
15274 #.  Or SOL_RAW on Linux
15275 #. type: Plain text
15276 #: build/C/man7/raw.7:114
15277 msgid ""
15278 "Raw socket options can be set with B<setsockopt>(2)  and read with "
15279 "B<getsockopt>(2)  by passing the B<IPPROTO_RAW> family flag."
15280 msgstr ""
15281 "raw ソケットのオプションは、 B<IPPROTO_RAW> ファミリーフラグを与えて "
15282 "B<setsockopt>(2)  を呼べば設定でき、 B<getsockopt>(2)  を呼べば取得できる。"
15283
15284 #. type: TP
15285 #: build/C/man7/raw.7:114
15286 #, no-wrap
15287 msgid "B<ICMP_FILTER>"
15288 msgstr "B<ICMP_FILTER>"
15289
15290 #. type: Plain text
15291 #: build/C/man7/raw.7:122
15292 msgid ""
15293 "Enable a special filter for raw sockets bound to the B<IPPROTO_ICMP> "
15294 "protocol.  The value has a bit set for each ICMP message type which should "
15295 "be filtered out.  The default is to filter no ICMP messages."
15296 msgstr ""
15297 "B<IPPROTO_ICMP> プロトコルにバインドされた raw ソケットのための特殊なフィルタ"
15298 "を有効にする。 この値は ICMP メッセージのタイプそれぞれに対して、どれをフィル"
15299 "ターアウト するかを表したビットセットである。デフォルトでは ICMP メッセージは"
15300 "全くフィルターしない。"
15301
15302 #. type: Plain text
15303 #: build/C/man7/raw.7:127
15304 msgid ""
15305 "In addition, all B<ip>(7)  B<IPPROTO_IP> socket options valid for datagram "
15306 "sockets are supported."
15307 msgstr ""
15308 "さらに、データグラムソケットに使える全ての B<ip>(7)  B<SOL_IP> ソケットオプ"
15309 "ションがサポートされている。"
15310
15311 #. type: Plain text
15312 #: build/C/man7/raw.7:140
15313 msgid ""
15314 "Errors originating from the network are only passed to the user when the "
15315 "socket is connected or the B<IP_RECVERR> flag is enabled.  For connected "
15316 "sockets, only B<EMSGSIZE> and B<EPROTO> are passed for compatibility.  With "
15317 "B<IP_RECVERR>, all network errors are saved in the error queue."
15318 msgstr ""
15319 "ネットワークで生じたエラーがユーザに渡されるのは、 ソケットが接続済みの場合"
15320 "か B<IP_RECVERR> フラグが有効になっている場合に限られる。 接続済みのソケット"
15321 "に対しては、 B<EMSGSIZE> および B<EPROTO> だけが渡される (互換性のため)。 "
15322 "B<IP_RECVERR> を設定すると、全てのネットワークエラーがエラーキューに保存され"
15323 "る。"
15324
15325 #. type: Plain text
15326 #: build/C/man7/raw.7:145
15327 msgid ""
15328 "User tried to send to a broadcast address without having the broadcast flag "
15329 "set on the socket."
15330 msgstr ""
15331 "ユーザーが broadcast フラグを設定していないソケットを用いて ブロードキャスト"
15332 "アドレスに送信を行おうとした。"
15333
15334 #. type: Plain text
15335 #: build/C/man7/raw.7:148
15336 msgid "An invalid memory address was supplied."
15337 msgstr "不正なメモリアドレスが与えられた。"
15338
15339 #. type: Plain text
15340 #: build/C/man7/raw.7:158
15341 msgid ""
15342 "Packet too big.  Either Path MTU Discovery is enabled (the "
15343 "B<IP_MTU_DISCOVER> socket flag) or the packet size exceeds the maximum "
15344 "allowed IPv4 packet size of 64KB."
15345 msgstr ""
15346 "パケットが大きすぎる。 Path MTU Discoverry が有効になっている "
15347 "(B<IP_MTU_DISCOVER> ソケットフラグ) か、パケットのサイズが IPv4 で許されてい"
15348 "る パケットサイズの最大値 64KB を越えている。"
15349
15350 #. type: TP
15351 #: build/C/man7/raw.7:158 build/C/man7/unix.7:357
15352 #, no-wrap
15353 msgid "B<EOPNOTSUPP>"
15354 msgstr "B<EOPNOTSUPP>"
15355
15356 #. type: Plain text
15357 #: build/C/man7/raw.7:162
15358 msgid "Invalid flag has been passed to a socket call (like B<MSG_OOB>)."
15359 msgstr "ソケット呼び出しに不正なフラグ (B<MSG_OOB> など) が渡された。"
15360
15361 #. type: Plain text
15362 #: build/C/man7/raw.7:168
15363 msgid ""
15364 "The user doesn't have permission to open raw sockets.  Only processes with "
15365 "an effective user ID of 0 or the B<CAP_NET_RAW> attribute may do that."
15366 msgstr ""
15367 "ユーザーは raw ソケットをオープンする権限を持っていない。 実行ユーザー ID が "
15368 "0 のプロセスか、 B<CAP_NET_RAW> 属性を持つプロセスだけがこれを行うことができ"
15369 "る。"
15370
15371 #. type: TP
15372 #: build/C/man7/raw.7:168
15373 #, no-wrap
15374 msgid "B<EPROTO>"
15375 msgstr "B<EPROTO>"
15376
15377 #. type: Plain text
15378 #: build/C/man7/raw.7:171
15379 msgid "An ICMP error has arrived reporting a parameter problem."
15380 msgstr "パラメータの問題を報告する ICMP エラーを受け取った。"
15381
15382 #. type: Plain text
15383 #: build/C/man7/raw.7:177
15384 msgid ""
15385 "B<IP_RECVERR> and B<ICMP_FILTER> are new in Linux 2.2.  They are Linux "
15386 "extensions and should not be used in portable programs."
15387 msgstr ""
15388 "B<IP_RECVERR> と B<ICMP_FILTER> は Linux 2.2 で登場した。これらは Linux での"
15389 "拡張であり、 移植性の必要なプログラムでは用いるべきでない。"
15390
15391 #. type: Plain text
15392 #: build/C/man7/raw.7:183
15393 msgid ""
15394 "Linux 2.0 enabled some bug-to-bug compatibility with BSD in the raw socket "
15395 "code when the B<SO_BSDCOMPAT> socket option was set \\(em since Linux 2.2, "
15396 "this option no longer has that effect."
15397 msgstr ""
15398 "Linux 2.0 では B<SO_BSDCOMPAT> ソケットオプションをセットすると、 BSD の raw "
15399 "ソケットにあるバグに互換性を取ることができた \\(em Linux 2.2 以降では、このオ"
15400 "プションはもはや効力を持たない。"
15401
15402 #. type: Plain text
15403 #: build/C/man7/raw.7:201
15404 msgid ""
15405 "By default, raw sockets do path MTU (Maximum Transmission Unit) discovery.  "
15406 "This means the kernel will keep track of the MTU to a specific target IP "
15407 "address and return B<EMSGSIZE> when a raw packet write exceeds it.  When "
15408 "this happens, the application should decrease the packet size.  Path MTU "
15409 "discovery can be also turned off using the B<IP_MTU_DISCOVER> socket option "
15410 "or the I</proc/sys/net/ipv4/ip_no_pmtu_disc> file, see B<ip>(7)  for "
15411 "details.  When turned off, raw sockets will fragment outgoing packets that "
15412 "exceed the interface MTU.  However, disabling it is not recommended for "
15413 "performance and reliability reasons."
15414 msgstr ""
15415 "デフォルトでは、raw ソケットは Path MTU Discovery を行う。 つまり、カーネルは"
15416 "特定の宛先 IP アドレスの MTU (Maximum Transmission Unit; 最大転送単位) を記録"
15417 "し、raw パケットの書き込みが MTU を超えた場合 B<EMSGSIZE> を返す。 "
15418 "B<EMSGSIZE> を返された場合、アプリケーションはパケットサイズを小さくすべきで"
15419 "ある。 ソケットオプション B<IP_MTU_DISCOVER> または I</proc/sys/net/ipv4/"
15420 "ip_no_pmtu_disc> ファイルを使って Path MTU Discovery を無効にすることもでき"
15421 "る (詳細は B<ip>(7)  を参照)。 Path MTU Discovery を無効にした場合は、パケッ"
15422 "トサイズが インタフェースの MTU よりも大きいと raw ソケットはそのパケットを "
15423 "フラグメント化して送出する。 しかしながら、性能と信頼性の理由から Path MTU "
15424 "Discovery を 無効にするのは推奨できない。"
15425
15426 #. type: Plain text
15427 #: build/C/man7/raw.7:210
15428 msgid ""
15429 "A raw socket can be bound to a specific local address using the B<bind>(2)  "
15430 "call.  If it isn't bound, all packets with the specified IP protocol are "
15431 "received.  In addition, a RAW socket can be bound to a specific network "
15432 "device using B<SO_BINDTODEVICE>; see B<socket>(7)."
15433 msgstr ""
15434 "B<bind>(2)  システムコールを用いると、 raw ソケットを 特定のローカルアドレス"
15435 "にバインドさせることができる。 このバインドがされていない場合は、指定した IP "
15436 "プロトコルの すべてのパケットが受信される。 さらに、 B<SO_BINDTODEVICE> を用"
15437 "いれば raw ソケットを特定のネットワークデバイスに バインドさせることもでき"
15438 "る。 B<socket>(7)  を見よ。"
15439
15440 #. type: Plain text
15441 #: build/C/man7/raw.7:221
15442 msgid ""
15443 "An B<IPPROTO_RAW> socket is send only.  If you really want to receive all IP "
15444 "packets, use a B<packet>(7)  socket with the B<ETH_P_IP> protocol.  Note "
15445 "that packet sockets don't reassemble IP fragments, unlike raw sockets."
15446 msgstr ""
15447 "B<IPPROTO_RAW> ソケットは送信専用である。もしどうしてもすべての IP パケット"
15448 "を 受信したい場合は、 B<packet>(7)  ソケットを B<ETH_P_IP> プロトコルで用いる"
15449 "こと。 packet ソケットは raw ソケットのように IP フラグメントを再構成しないこ"
15450 "とに注意。"
15451
15452 #. type: Plain text
15453 #: build/C/man7/raw.7:227
15454 msgid ""
15455 "If you want to receive all ICMP packets for a datagram socket, it is often "
15456 "better to use B<IP_RECVERR> on that particular socket; see B<ip>(7)."
15457 msgstr ""
15458 "datagram ソケットに対するすべての ICMP パケットを受信したい場合は、 特定のソ"
15459 "ケットに対して B<IP_RECVERR> を用いるほうが良い場合が多い。 B<ip>(7)  を見"
15460 "よ。"
15461
15462 #. type: Plain text
15463 #: build/C/man7/raw.7:234
15464 msgid ""
15465 "Raw sockets may tap all IP protocols in Linux, even protocols like ICMP or "
15466 "TCP which have a protocol module in the kernel.  In this case, the packets "
15467 "are passed to both the kernel module and the raw socket(s).  This should not "
15468 "be relied upon in portable programs, many other BSD socket implementation "
15469 "have limitations here."
15470 msgstr ""
15471 "raw ソケットは、 Linux のすべての IP プロトコルを受信することができる。 ICMP "
15472 "や TCP のように、カーネル内部にプロトコルモジュールを持つような ものも可能で"
15473 "ある。この場合には、パケットはカーネルモジュールと raw ソケットの両方に渡され"
15474 "る (raw ソケットが複数あればそれぞれに渡される)。 移植性の必要なプログラムで"
15475 "はこの機能に依存するべきではない。 他の多くの BSD におけるソケットの実装では"
15476 "この点において制限がある。"
15477
15478 #. type: Plain text
15479 #: build/C/man7/raw.7:239
15480 msgid ""
15481 "Linux never changes headers passed from the user (except for filling in some "
15482 "zeroed fields as described for B<IP_HDRINCL>).  This differs from many other "
15483 "implementations of raw sockets."
15484 msgstr ""
15485 "Linux はユーザーから渡されたヘッダを決して変更しない (ただし B<IP_HDRINCL> の"
15486 "説明にあるように、 0 をいくつか埋める場合を除く)。 これは他の多くの raw ソ"
15487 "ケットの実装では異なる。"
15488
15489 #. type: Plain text
15490 #: build/C/man7/raw.7:242
15491 msgid ""
15492 "RAW sockets are generally rather unportable and should be avoided in "
15493 "programs intended to be portable."
15494 msgstr ""
15495 "一般に raw ソケットは移植性がないことが多いので、 移植性が必要なプログラムで"
15496 "は避けるべきである。"
15497
15498 #. type: Plain text
15499 #: build/C/man7/raw.7:248
15500 msgid ""
15501 "Sending on raw sockets should take the IP protocol from I<sin_port>; this "
15502 "ability was lost in Linux 2.2.  The workaround is to use B<IP_HDRINCL>."
15503 msgstr ""
15504 "raw ソケットへの送信では、 IP プロトコルを I<sin_port> から取得できなければな"
15505 "らない。この機能は Linux 2.2 では使えなくなった。 B<IP_HDRINCL> を用いれば同"
15506 "様のことが実現できる。"
15507
15508 #. type: Plain text
15509 #: build/C/man7/raw.7:250
15510 msgid "Transparent proxy extensions are not described."
15511 msgstr "透過プロクシ (transparent proxy) 拡張については記述していない。"
15512
15513 #. type: Plain text
15514 #: build/C/man7/raw.7:255
15515 msgid ""
15516 "When the B<IP_HDRINCL> option is set, datagrams will not be fragmented and "
15517 "are limited to the interface MTU."
15518 msgstr ""
15519 "B<IP_HDRINCL> オプションがセットされているとデータグラムはフラグメント化され"
15520 "ず、 インターフェースの MTU の大きさに制限される。"
15521
15522 #.  .SH AUTHORS
15523 #.  This man page was written by Andi Kleen.
15524 #. type: Plain text
15525 #: build/C/man7/raw.7:265
15526 msgid ""
15527 "Setting the IP protocol for sending in I<sin_port> got lost in Linux 2.2.  "
15528 "The protocol that the socket was bound to or that was specified in the "
15529 "initial B<socket>(2)  call is always used."
15530 msgstr ""
15531 "送信用の IP プロトコルの設定を I<sin_port> にしておく機能は Linux 2.2 から使"
15532 "えなくなった。 ソケットにバインドされているプロトコルか、最初の B<socket>"
15533 "(2)  コールによって指定されたプロトコルが常に用いられる。"
15534
15535 #. type: Plain text
15536 #: build/C/man7/raw.7:271
15537 msgid ""
15538 "B<recvmsg>(2), B<sendmsg>(2), B<capabilities>(7), B<ip>(7), B<socket>(7)"
15539 msgstr ""
15540 "B<recvmsg>(2), B<sendmsg>(2), B<capabilities>(7), B<ip>(7), B<socket>(7)"
15541
15542 #. type: Plain text
15543 #: build/C/man7/raw.7:274
15544 msgid "B<RFC\\ 1191> for path MTU discovery."
15545 msgstr "パス MTU 発見に関する情報は B<RFC\\ 1191> にある"
15546
15547 #. type: Plain text
15548 #: build/C/man7/raw.7:279
15549 msgid ""
15550 "B<RFC\\ 791> and the I<E<lt>linux/ip.hE<gt>> include file for the IP "
15551 "protocol."
15552 msgstr ""
15553 "IP プロトコルに関しては B<RFC\\ 791> とインクルードファイル I<E<lt>linux/ip."
15554 "hE<gt>> を参照。"
15555
15556 #. type: TH
15557 #: build/C/man3/rcmd.3:41
15558 #, no-wrap
15559 msgid "RCMD"
15560 msgstr "RCMD"
15561
15562 #. type: TH
15563 #: build/C/man3/rcmd.3:41
15564 #, no-wrap
15565 msgid "2007-12-28"
15566 msgstr "2007-12-28"
15567
15568 #. type: Plain text
15569 #: build/C/man3/rcmd.3:45
15570 msgid ""
15571 "rcmd, rresvport, iruserok, ruserok - routines for returning a stream to a "
15572 "remote command"
15573 msgstr ""
15574 "rcmd, rresvport, iruserok, ruserok - リモートコマンドにストリームを返す関数群"
15575
15576 #. type: Plain text
15577 #: build/C/man3/rcmd.3:48
15578 #, no-wrap
15579 msgid "B<#include E<lt>netdb.hE<gt> \\ \\ >/* Or E<lt>unistd.hE<gt> on some systems */\n"
15580 msgstr "B<#include E<lt>netdb.hE<gt> \\ \\ >/* Or E<lt>unistd.hE<gt> on some systems */\n"
15581
15582 #. type: Plain text
15583 #: build/C/man3/rcmd.3:51
15584 #, no-wrap
15585 msgid ""
15586 "B<int rcmd(char **>I<ahost>B<, int >I<inport>B<, const char *>I<locuser>B<, >\n"
15587 "B<         const char *>I<remuser>B<, const char *>I<cmd>B<, int *>I<fd2p>B<);>\n"
15588 msgstr ""
15589 "B<int rcmd(char **>I<ahost>B<, int >I<inport>B<, const char *>I<locuser>B<, >\n"
15590 "B<         const char *>I<remuser>B<, const char *>I<cmd>B<, int *>I<fd2p>B<);>\n"
15591
15592 #. type: Plain text
15593 #: build/C/man3/rcmd.3:53
15594 #, no-wrap
15595 msgid "B<int rresvport(int *>I<port>B<);>\n"
15596 msgstr "B<int rresvport(int *>I<port>B<);>\n"
15597
15598 #. type: Plain text
15599 #: build/C/man3/rcmd.3:56
15600 #, no-wrap
15601 msgid ""
15602 "B<int iruserok(uint32_t >I<raddr>B<, int >I<superuser>B<, >\n"
15603 "B<             const char *>I<ruser>B<, const char *>I<luser>B<);>\n"
15604 msgstr ""
15605 "B<int iruserok(uint32_t >I<raddr>B<, int >I<superuser>B<, >\n"
15606 "B<             const char *>I<ruser>B<, const char *>I<luser>B<);>\n"
15607
15608 #. type: Plain text
15609 #: build/C/man3/rcmd.3:59
15610 #, no-wrap
15611 msgid ""
15612 "B<int ruserok(const char *>I<rhost>B<, int >I<superuser>B<, >\n"
15613 "B<            const char *>I<ruser>B<, const char *>I<luser>B<);>\n"
15614 msgstr ""
15615 "B<int ruserok(const char *>I<rhost>B<, int >I<superuser>B<, >\n"
15616 "B<            const char *>I<ruser>B<, const char *>I<luser>B<);>\n"
15617
15618 #. type: Plain text
15619 #: build/C/man3/rcmd.3:70
15620 msgid "B<rcmd>(), B<rresvport>(), B<ruserok>(): _BSD_SOURCE"
15621 msgstr "B<rcmd>(), B<rresvport>(), B<ruserok>(): _BSD_SOURCE"
15622
15623 #. type: Plain text
15624 #: build/C/man3/rcmd.3:92
15625 msgid ""
15626 "The B<rcmd>()  function is used by the superuser to execute a command on a "
15627 "remote machine using an authentication scheme based on privileged port "
15628 "numbers.  The B<rresvport>()  function returns a descriptor to a socket with "
15629 "an address in the privileged port space.  The B<iruserok>()  and B<ruserok>"
15630 "()  functions are used by servers to authenticate clients requesting service "
15631 "with B<rcmd>().  All four functions are present in the same file and are "
15632 "used by the B<rshd>(8)  server (among others)."
15633 msgstr ""
15634 "B<rcmd>()  関数は、スーパーユーザーがリモートマシンでコマンドを実行するため"
15635 "に 用いられる。このとき特権ポート番号をもとにした認証スキームが 用いられる。 "
15636 "B<rresvport>()  関数は、特権ポート空間のアドレスを持つソケットの ディスクリプ"
15637 "ターを返す。 B<iruserok>()  関数と B<ruserok>()  関数は、 B<rcmd>()  でサービ"
15638 "ス要求を行ったクライアントの認証を行うために サーバーが用いる関数である。 以"
15639 "上の 4 つの関数は、すべて同じファイルに記述されており、 B<rshd>(8)  サーバー"
15640 "によって (他の関数とともに) 利用される。"
15641
15642 #. type: Plain text
15643 #: build/C/man3/rcmd.3:107
15644 msgid ""
15645 "The B<rcmd>()  function looks up the host I<*ahost> using B<gethostbyname>"
15646 "(3), returning -1 if the host does not exist.  Otherwise I<*ahost> is set to "
15647 "the standard name of the host and a connection is established to a server "
15648 "residing at the well-known Internet port I<inport>."
15649 msgstr ""
15650 "B<rcmd>()  関数は B<gethostbyname>(3)  を用いて I<*ahost> の参照を行う。ホス"
15651 "トが存在しない場合は -1 を返す。 見つかった場合は I<*ahost> にホストの標準名 "
15652 "(standard name) をセットして、 予約されているインターネットポート I<inport> "
15653 "経由でサーバーへの接続を確立する。"
15654
15655 #. type: Plain text
15656 #: build/C/man3/rcmd.3:136
15657 msgid ""
15658 "If the connection succeeds, a socket in the Internet domain of type "
15659 "B<SOCK_STREAM> is returned to the caller, and given to the remote command as "
15660 "I<stdin> and I<stdout>.  If I<fd2p> is nonzero, then an auxiliary channel to "
15661 "a control process will be set up, and a descriptor for it will be placed in "
15662 "I<*fd2p>.  The control process will return diagnostic output from the "
15663 "command (unit 2) on this channel, and will also accept bytes on this channel "
15664 "as being UNIX signal numbers, to be forwarded to the process group of the "
15665 "command.  If I<fd2p> is 0, then the I<stderr> (unit 2 of the remote command) "
15666 "will be made the same as the I<stdout> and no provision is made for sending "
15667 "arbitrary signals to the remote process, although you may be able to get its "
15668 "attention by using out-of-band data."
15669 msgstr ""
15670 "接続に成功したら、インターネットドメインに存在するタイプ B<SOCK_STREAM> のソ"
15671 "ケットが呼び出しもとに返される。 このソケットの相手側はリモートコマンドの "
15672 "I<stdin> および I<stdout> に接続される。 I<fd2p> がゼロでない場合は、制御プロ"
15673 "セスへの接続がもう一つ用意され、 そのディスクリプターが I<*fd2p> にセットされ"
15674 "る。 制御プロセスはリモートコマンドからの標準エラー出力 (unit 2) を このチャ"
15675 "ンネルに返す。 また制御プロセスはこの接続から受け取ったバイトデータを UNIX シ"
15676 "グナルの番号として扱い、リモートコマンドのプロセス グループへとシグナルを送"
15677 "る。 I<fd2p> がゼロの場合は、 I<stderr> (リモートコマンドの unit 2) は "
15678 "I<stdout> と一緒にまとめられる。またこの場合はリモートプロセスへ 任意のシグナ"
15679 "ルを送ることはできなくなる。 ただし帯域外 (out-of-band) データを用いれば、 リ"
15680 "モートプロセスの注意を引くことはできるかもしれない。"
15681
15682 #. type: Plain text
15683 #: build/C/man3/rcmd.3:139
15684 msgid "The protocol is described in detail in B<rshd>(8)."
15685 msgstr "プロトコルの詳細は B<rshd>(8)  に記述されている。"
15686
15687 #. type: Plain text
15688 #: build/C/man3/rcmd.3:149
15689 msgid ""
15690 "The B<rresvport>()  function is used to obtain a socket with a privileged "
15691 "address bound to it.  This socket is suitable for use by B<rcmd>()  and "
15692 "several other functions.  Privileged Internet ports are those in the range 0 "
15693 "to 1023.  Only the superuser is allowed to bind an address of this sort to a "
15694 "socket."
15695 msgstr ""
15696 "B<rresvport>()  関数は特権アドレスにバインドされたソケットを取得するために用"
15697 "いられる。 このソケットは B<rcmd>()  などの関数での利用に適している。インター"
15698 "ネットポートの特権ポートは、 0 から 1023 の範囲である。スーパーユーザーだけが"
15699 "これらのアドレスを ソケットにバインドすることができる。"
15700
15701 #. type: Plain text
15702 #: build/C/man3/rcmd.3:166
15703 msgid ""
15704 "The B<iruserok>()  and B<ruserok>()  functions take a remote host's IP "
15705 "address or name, respectively, two usernames and a flag indicating whether "
15706 "the local user's name is that of the superuser.  Then, if the user is I<not> "
15707 "the superuser, it checks the I</etc/hosts.equiv> file.  If that lookup is "
15708 "not done, or is unsuccessful, the I<.rhosts> in the local user's home "
15709 "directory is checked to see if the request for service is allowed."
15710 msgstr ""
15711 "B<iruserok>()  と B<ruserok>()  関数は、まず以下の引数を取る: リモートホスト "
15712 "(B<iruserok>()  は IP アドレスで、 B<ruserok>()  はホスト名で指定)、 2 つの"
15713 "ユーザー名、ローカルユーザーの名前が スーパーユーザーのものであるかどうかを示"
15714 "すフラグ、である。 もしユーザーがB<スーパーユーザーではない>場合は、これらの"
15715 "関数は I</etc/hosts.equiv> ファイルをチェックする。ファイルが見つからなかった"
15716 "り、 内容のチェックに失敗した場合には、 ローカルユーザーのホームディレクトリ"
15717 "にある I<.rhosts> ファイルをチェックして、サービス要求が許可されているかどう"
15718 "か調べる。"
15719
15720 #. type: Plain text
15721 #: build/C/man3/rcmd.3:182
15722 msgid ""
15723 "If this file does not exist, is not a regular file, is owned by anyone other "
15724 "than the user or the superuser, or is writable by anyone other than the "
15725 "owner, the check automatically fails.  Zero is returned if the machine name "
15726 "is listed in the I<hosts.equiv> file, or the host and remote username are "
15727 "found in the I<.rhosts> file; otherwise B<iruserok>()  and B<ruserok>()  "
15728 "return -1.  If the local domain (as obtained from B<gethostname>(2))  is the "
15729 "same as the remote domain, only the machine name need be specified."
15730 msgstr ""
15731 "このファイルが存在しなかったり、 通常ファイル (regular file) ではなかった"
15732 "り、 指定ユーザーまたはスーパーユーザー以外の所有だったり、 所有者以外から書"
15733 "き込み可能だったりした場合には、 このチェックは自動的に失敗する。 マシンの名"
15734 "前が I<hosts.equiv> にリストされていたり、 ホストとリモートユーザーの名前が "
15735 "I<.rhosts> ファイルに書かれていた場合には 0 が返される。 それ以外の場合に"
15736 "は、 B<iruserok>()  と B<ruserok>()  は -1 を返す。 (B<gethostname>(2)  に"
15737 "よって取得される) ローカルドメインがリモートのドメインと同じ場合は、 マシンの"
15738 "名前だけを指定すればよい。"
15739
15740 #. type: Plain text
15741 #: build/C/man3/rcmd.3:188
15742 msgid ""
15743 "If the IP address of the remote host is known, B<iruserok>()  should be used "
15744 "in preference to B<ruserok>(), as it does not require trusting the DNS "
15745 "server for the remote host's domain."
15746 msgstr ""
15747 "リモートホストの IP アドレスがわかっている場合は、 B<ruserok>()  よりも "
15748 "B<iruserok>()B<を用いる方が良いだろう。> B<ruserok>()  はリモートホストの所属"
15749 "するドメインの DNS サーバーが信頼できなくても 使用できるからである。"
15750
15751 #. type: Plain text
15752 #: build/C/man3/rcmd.3:194
15753 msgid ""
15754 "The B<rcmd>()  function returns a valid socket descriptor on success.  It "
15755 "returns -1 on error and prints a diagnostic message on the standard error."
15756 msgstr ""
15757 "B<rcmd>()  関数は成功すると有効なソケットディスクリプターを返す。 失敗すると "
15758 "-1 を返し、標準エラー出力に診断メッセージを 表示する。"
15759
15760 #. type: Plain text
15761 #: build/C/man3/rcmd.3:205
15762 msgid ""
15763 "The B<rresvport>()  function returns a valid, bound socket descriptor on "
15764 "success.  It returns -1 on error with the global value I<errno> set "
15765 "according to the reason for failure.  The error code B<EAGAIN> is overloaded "
15766 "to mean \"All network ports in use.\""
15767 msgstr ""
15768 "B<rresvport>()  関数は、成功するとバインドされた有効なソケットディスクリプ"
15769 "ターを返す。 失敗すると -1 を返し、グローバル変数 I<errno> をエラーの原因に対"
15770 "応する値にセットする。 エラーコード B<EAGAIN> は、この関数においては「すべて"
15771 "のネットワークポートが使用中」 という意味を表す。"
15772
15773 #. type: Plain text
15774 #: build/C/man3/rcmd.3:211
15775 msgid ""
15776 "Not in POSIX.1-2001.  Present on the BSDs, Solaris, and many other systems.  "
15777 "These functions appeared in 4.2BSD."
15778 msgstr ""
15779 "POSIX.1-2001 にはない。 BSD 系、Solaris や他の多くのシステムに存在する。 これ"
15780 "らの関数は 4.2BSD で登場した。"
15781
15782 #.  Bug filed 25 Nov 2007:
15783 #.  http://sources.redhat.com/bugzilla/show_bug.cgi?id=5399
15784 #. type: Plain text
15785 #: build/C/man3/rcmd.3:216
15786 msgid "B<iruserok>()  is not declared in glibc headers."
15787 msgstr "B<iruserok>()  は glibc のヘッダでは宣言されていない。"
15788
15789 #. type: Plain text
15790 #: build/C/man3/rcmd.3:224
15791 msgid ""
15792 "B<rlogin>(1), B<rsh>(1), B<intro>(2), B<rexec>(3), B<rexecd>(8), B<rlogind>"
15793 "(8), B<rshd>(8)"
15794 msgstr ""
15795 "B<rlogin>(1), B<rsh>(1), B<intro>(2), B<rexec>(3), B<rexecd>(8), B<rlogind>"
15796 "(8), B<rshd>(8)"
15797
15798 #. type: TH
15799 #: build/C/man5/resolv.conf.5:21
15800 #, no-wrap
15801 msgid "RESOLV.CONF"
15802 msgstr "RESOLV.CONF"
15803
15804 #. type: TH
15805 #: build/C/man5/resolv.conf.5:21
15806 #, fuzzy, no-wrap
15807 #| msgid "2002-07-20"
15808 msgid "2012-02-08"
15809 msgstr "2002-07-20"
15810
15811 #. type: Plain text
15812 #: build/C/man5/resolv.conf.5:25
15813 msgid "resolv.conf - resolver configuration file"
15814 msgstr "resolv.conf - レゾルバ設定ファイル"
15815
15816 #. type: Plain text
15817 #: build/C/man5/resolv.conf.5:27
15818 msgid "B</etc/resolv.conf>"
15819 msgstr "B</etc/resolv.conf>"
15820
15821 #. type: Plain text
15822 #: build/C/man5/resolv.conf.5:36
15823 msgid ""
15824 "The I<resolver> is a set of routines in the C library that provide access to "
15825 "the Internet Domain Name System (DNS).  The resolver configuration file "
15826 "contains information that is read by the resolver routines the first time "
15827 "they are invoked by a process.  The file is designed to be human readable "
15828 "and contains a list of keywords with values that provide various types of "
15829 "resolver information."
15830 msgstr ""
15831 "I<resolver> は、インターネットのドメインネームシステム (DNS) へのアクセスを提"
15832 "供する C ライブラリのルーチン群である。 レゾルバ設定ファイルには、レゾルバ"
15833 "ルーチンがプロセスによって最初に 起動されたときに読み込まれる情報が格納されて"
15834 "いる。 このファイルは人間に可読なように設計されている。 キーワードと値のリス"
15835 "トが含まれ、いろいろなタイプのレゾルバ情報を提供する。"
15836
15837 #. type: Plain text
15838 #: build/C/man5/resolv.conf.5:41
15839 msgid ""
15840 "On a normally configured system this file should not be necessary.  The only "
15841 "name server to be queried will be on the local machine; the domain name is "
15842 "determined from the hostname and the domain search path is constructed from "
15843 "the domain name."
15844 msgstr ""
15845 "普通に設定されたシステムでは、このファイルは必要ない。 問い合わせをされる唯一"
15846 "のネームサーバはローカルマシン上にある。 ドメイン名はホスト名から決定され、 "
15847 "ドメインの検索パスはドメイン名から作成される。"
15848
15849 #. type: Plain text
15850 #: build/C/man5/resolv.conf.5:43
15851 msgid "The different configuration options are:"
15852 msgstr "この状態を変更するための設定オプションには、以下のようなものがある。"
15853
15854 #. type: TP
15855 #: build/C/man5/resolv.conf.5:43
15856 #, no-wrap
15857 msgid "B<nameserver> Name server IP address"
15858 msgstr "B<nameserver> ネームサーバの IP アドレス"
15859
15860 #. type: Plain text
15861 #: build/C/man5/resolv.conf.5:59
15862 msgid ""
15863 "Internet address (in dot notation) of a name server that the resolver should "
15864 "query.  Up to B<MAXNS> (currently 3, see I<E<lt>resolv.hE<gt>>) name servers "
15865 "may be listed, one per keyword.  If there are multiple servers, the resolver "
15866 "library queries them in the order listed.  If no B<nameserver> entries are "
15867 "present, the default is to use the name server on the local machine.  (The "
15868 "algorithm used is to try a name server, and if the query times out, try the "
15869 "next, until out of name servers, then repeat trying all the name servers "
15870 "until a maximum number of retries are made.)"
15871 msgstr ""
15872 "レゾルバが問い合わせをするネームサーバの (ドット表記の) インターネットアドレ"
15873 "ス。 このキーワード 1 つごとに 1 台づつ、 B<MAXNS> 台 (現状では 3 台、"
15874 "I<E<lt>resolv.hE<gt>> を参照) までのネームサーバをリストできる。 複数のサーバ"
15875 "が指定された場合、レゾルバライブラリは リストされた順に問い合わせを行う。 "
15876 "B<nameserver> エントリがない場合、 デフォルトではローカルマシン上のネームサー"
15877 "バが使われる。 (ここで使われるアルゴリズムは以下のようなものである。 はじめに"
15878 "ネームサーバに問い合わせを試みる。 この問い合わせがタイムアウトになった場"
15879 "合、 次のネームサーバに問い合わせを試みる。 これをネームサーバがなくなるまで"
15880 "続ける。 それでも応答がない場合は、リトライ最大回数に達するまで 全てのネーム"
15881 "サーバに問い合わせを繰り返す。)"
15882
15883 #. type: TP
15884 #: build/C/man5/resolv.conf.5:59
15885 #, no-wrap
15886 msgid "B<domain> Local domain name."
15887 msgstr "B<domain> ローカルドメイン名"
15888
15889 #. type: Plain text
15890 #: build/C/man5/resolv.conf.5:69
15891 msgid ""
15892 "Most queries for names within this domain can use short names relative to "
15893 "the local domain.  If no B<domain> entry is present, the domain is "
15894 "determined from the local hostname returned by B<gethostname>(2); the domain "
15895 "part is taken to be everything after the first \\(aq.\\(aq.  Finally, if the "
15896 "hostname does not contain a domain part, the root domain is assumed."
15897 msgstr ""
15898 "このドメインにある名前の問い合わせのほとんどに、 このローカルドメインにおける"
15899 "短い名前を使用することができる。 B<domain> エントリがない場合、ドメイン名は "
15900 "B<gethostname>(2)  で返されるローカルホスト名から決定され、 最初の \\(aq."
15901 "\\(aq 以降の全ての部分がドメイン名とされる。 このホスト名にもドメイン部を含ん"
15902 "でいない場合、ルートドメインが仮定される。"
15903
15904 #. type: TP
15905 #: build/C/man5/resolv.conf.5:69
15906 #, no-wrap
15907 msgid "B<search> Search list for host-name lookup."
15908 msgstr "B<search> ホスト名ルックアップのための検索リスト"
15909
15910 #.  When having a resolv.conv with a line
15911 #.   search subdomain.domain.tld domain.tld
15912 #.  and doing a hostlookup, for example by
15913 #.   ping host.anothersubdomain
15914 #.  it sends dns-requests for
15915 #.   host.anothersubdomain.
15916 #.   host.anothersubdomain.subdomain.domain.tld.
15917 #.   host.anothersubdomain.domain.tld.
15918 #.  thus not only causing unnecessary traffic for the root-dns-servers
15919 #.  but broadcasting information to the outside and making man-in-the-middle
15920 #.  attacks possible.
15921 #. type: Plain text
15922 #: build/C/man5/resolv.conf.5:99
15923 msgid ""
15924 "The search list is normally determined from the local domain name; by "
15925 "default, it contains only the local domain name.  This may be changed by "
15926 "listing the desired domain search path following the I<search> keyword with "
15927 "spaces or tabs separating the names.  Resolver queries having fewer than "
15928 "I<ndots> dots (default is 1) in them will be attempted using each component "
15929 "of the search path in turn until a match is found.  For environments with "
15930 "multiple subdomains please read B<options ndots:>I<n> below to avoid man-in-"
15931 "the-middle attacks and unnecessary traffic for the root-dns-servers.  Note "
15932 "that this process may be slow and will generate a lot of network traffic if "
15933 "the servers for the listed domains are not local, and that queries will time "
15934 "out if no server is available for one of the domains."
15935 msgstr ""
15936 "検索リストは通常ローカルドメイン名から決定される。 デフォルトでは、検索リスト"
15937 "はローカルドメイン名のみである。 これを変更するには、I<search> キーワードの後"
15938 "に 希望するドメイン検索パスをスペースまたはタブで区切ってリストすればよい。 "
15939 "ドットの数が I<ndots> (デフォルトでは 1) より少ないレゾルバの問い合わせは、 "
15940 "一致するものが見つかるまで検索パスの各要素を順に使って試す。 複数のサブドメイ"
15941 "ンを持つ環境では、 第三者による攻撃 (man-in-the-middle attack) と ルート DNS "
15942 "サーバへの不必要なトラフィックを避けるために、 以下の B<options ndots:>I<n> "
15943 "を読んでほしい。 このプロセスは遅く、リストされたドメインがローカルのものでな"
15944 "い場合、 多大なネットワークトラフィックを発生させることに注意すること。 さら"
15945 "に、これらのドメインのいずれかひとつにでも適切なサーバがない場合、 問い合わせ"
15946 "がタイムアウトになる点にも注意すること。"
15947
15948 #. type: Plain text
15949 #: build/C/man5/resolv.conf.5:102
15950 msgid ""
15951 "The search list is currently limited to six domains with a total of 256 "
15952 "characters."
15953 msgstr "現状では、検索リストは 6 ドメイン・計 256 文字に制限されている。"
15954
15955 #. type: TP
15956 #: build/C/man5/resolv.conf.5:102
15957 #, no-wrap
15958 msgid "B<sortlist>"
15959 msgstr "B<sortlist>"
15960
15961 #. type: Plain text
15962 #: build/C/man5/resolv.conf.5:115
15963 msgid ""
15964 "This option allows addresses returned by B<gethostbyname>(3)  to be sorted.  "
15965 "A sortlist is specified by IP-address-netmask pairs.  The netmask is "
15966 "optional and defaults to the natural netmask of the net.  The IP address and "
15967 "optional network pairs are separated by slashes.  Up to 10 pairs may be "
15968 "specified.  Here is an example:"
15969 msgstr ""
15970 "このオプションを使うと、 B<gethostbyname>(3)  で返されるアドレスをソートさせ"
15971 "ることができる。 sortlist は IP アドレスとネットマスクのペアで指定される。 "
15972 "ネットマスクは省略可能であり、 デフォルトではネットに対するデフォルトのネット"
15973 "マスクである。 IP アドレスとオプションのネットマスクのペアはスラッシュで区切"
15974 "る。 最大 10 組のペアを指定できる。 以下に例を示す。"
15975
15976 #. type: Plain text
15977 #: build/C/man5/resolv.conf.5:118
15978 msgid "sortlist 130.155.160.0/255.255.240.0 130.155.0.0"
15979 msgstr "sortlist 130.155.160.0/255.255.240.0 130.155.0.0"
15980
15981 #. type: TP
15982 #: build/C/man5/resolv.conf.5:120
15983 #, no-wrap
15984 msgid "B<options>"
15985 msgstr "B<options>"
15986
15987 #. type: Plain text
15988 #: build/C/man5/resolv.conf.5:124
15989 msgid ""
15990 "Options allows certain internal resolver variables to be modified.  The "
15991 "syntax is"
15992 msgstr ""
15993 "options により、レゾルバの内部変数を変更することができる。 書式は以下の通りで"
15994 "ある。"
15995
15996 #. type: Plain text
15997 #: build/C/man5/resolv.conf.5:127
15998 msgid "B<options> I<option> I<...>"
15999 msgstr "B<options> I<option> I<...>"
16000
16001 #. type: Plain text
16002 #: build/C/man5/resolv.conf.5:129
16003 msgid "where I<option> is one of the following:"
16004 msgstr "ここで I<option> は次のうちのいずれかである。"
16005
16006 #. type: TP
16007 #: build/C/man5/resolv.conf.5:129
16008 #, no-wrap
16009 msgid "B<debug>"
16010 msgstr "B<debug>"
16011
16012 #.  Since glibc 2.2?
16013 #. type: Plain text
16014 #: build/C/man5/resolv.conf.5:136
16015 msgid "sets B<RES_DEBUG> in I<_res.options>."
16016 msgstr "I<_res.options> に B<RES_DEBUG> を設定する。"
16017
16018 #. type: TP
16019 #: build/C/man5/resolv.conf.5:136
16020 #, no-wrap
16021 msgid "B<ndots:>I<n>"
16022 msgstr "B<ndots:>I<n>"
16023
16024 #.  Since glibc 2.2
16025 #. type: Plain text
16026 #: build/C/man5/resolv.conf.5:150
16027 msgid ""
16028 "sets a threshold for the number of dots which must appear in a name given to "
16029 "B<res_query>(3)  (see B<resolver>(3))  before an I<initial absolute query> "
16030 "will be made.  The default for I<n> is 1, meaning that if there are any dots "
16031 "in a name, the name will be tried first as an absolute name before any "
16032 "I<search list> elements are appended to it.  The value for this option is "
16033 "silently capped to 15."
16034 msgstr ""
16035 "「I<最初の完全な名前での問い合わせ>が実行される前に、 B<res_query>(3)  "
16036 "(B<resolver>(3)  を参照) に与えられる名前に含まれているべきドットの数の閾値」"
16037 "を設定する。 I<n> のデフォルトは 1 である。 これは、名前にドットがある場合、"
16038 "I<search list> の要素が付加される前に、 その名前が完全な名前として最初に試さ"
16039 "れるということを意味している。 このオプションの値の上限は 15 であり、黙ってこ"
16040 "の値まで切り詰められる。"
16041
16042 #. type: TP
16043 #: build/C/man5/resolv.conf.5:150
16044 #, no-wrap
16045 msgid "B<timeout:>I<n>"
16046 msgstr "B<timeout:>I<n>"
16047
16048 #.  Since glibc 2.2
16049 #. type: Plain text
16050 #: build/C/man5/resolv.conf.5:161
16051 msgid ""
16052 "sets the amount of time the resolver will wait for a response from a remote "
16053 "name server before retrying the query via a different name server.  Measured "
16054 "in seconds, the default is B<RES_TIMEOUT> (currently 5, see I<E<lt>resolv."
16055 "hE<gt>>).  The value for this option is silently capped to 30."
16056 msgstr ""
16057 "「レゾルバが他のネームサーバで問い合わせをリトライする前に、 リモートネーム"
16058 "サーバからの応答を待つ時間」を設定する。 単位は秒で、デフォルトは "
16059 "B<RES_TIMEOUT> である (現状では 5 秒、I<E<lt>resolv.hE<gt>> を参照)。 このオ"
16060 "プションの値の上限は 30 であり、黙ってこの値まで切り詰められる。"
16061
16062 #. type: TP
16063 #: build/C/man5/resolv.conf.5:161
16064 #, no-wrap
16065 msgid "B<attempts:>I<n>"
16066 msgstr "B<attempts:>I<n>"
16067
16068 #. type: Plain text
16069 #: build/C/man5/resolv.conf.5:170
16070 msgid ""
16071 "sets the number of times the resolver will send a query to its name servers "
16072 "before giving up and returning an error to the calling application.  The "
16073 "default is B<RES_DFLRETRY> (currently 2, see I<E<lt>resolv.hE<gt>>).  The "
16074 "value for this option is silently capped to 5."
16075 msgstr ""
16076 "「レゾルバが諦めて呼び出し元のアプリケーションにエラーを返すまでに、 ネーム"
16077 "サーバに問い合わせを行う回数」を設定する。 デフォルトは B<RES_DFLRETRY> 回で"
16078 "ある (現状では 2 回、I<E<lt>resolv.hE<gt>> を参照)。 このオプションの値の上限"
16079 "は 5 であり、黙ってこの値まで切り詰められる。"
16080
16081 #. type: TP
16082 #: build/C/man5/resolv.conf.5:170
16083 #, no-wrap
16084 msgid "B<rotate>"
16085 msgstr "B<rotate>"
16086
16087 #.  Since glibc 2.2
16088 #. type: Plain text
16089 #: build/C/man5/resolv.conf.5:180
16090 msgid ""
16091 "sets B<RES_ROTATE> in I<_res.options>, which causes round robin selection of "
16092 "nameservers from among those listed.  This has the effect of spreading the "
16093 "query load among all listed servers, rather than having all clients try the "
16094 "first listed server first every time."
16095 msgstr ""
16096 "I<_res.options> に RES_ROTATE を設定する。 リストされているネームサーバから選"
16097 "ぶときに、 ラウンドロビン (round robin) 選択を行わせる。 リストされている全て"
16098 "のサーバで問い合わせの負荷を分散する効果があり、 最初にリストされたサーバに全"
16099 "てのクライアントが 毎回最初に問い合わせを行うわけではなくなる。"
16100
16101 #. type: TP
16102 #: build/C/man5/resolv.conf.5:180
16103 #, no-wrap
16104 msgid "B<no-check-names>"
16105 msgstr "B<no-check-names>"
16106
16107 #.  since glibc 2.2
16108 #. type: Plain text
16109 #: build/C/man5/resolv.conf.5:190
16110 msgid ""
16111 "sets B<RES_NOCHECKNAME> in I<_res.options>, which disables the modern BIND "
16112 "checking of incoming hostnames and mail names for invalid characters such as "
16113 "underscore (_), non-ASCII, or control characters."
16114 msgstr ""
16115 "I<_res.options> に B<RES_NOCHECKNAME> を設定する。 入ってくるホスト名とメール"
16116 "アドレスに、 アンダースコア (_)・ASCII 以外の文字・制御文字といった 不正な文"
16117 "字が含まれていないかを調べる 最近の BIND のチェックを無効にする。"
16118
16119 #. type: TP
16120 #: build/C/man5/resolv.conf.5:190
16121 #, no-wrap
16122 msgid "B<inet6>"
16123 msgstr "B<inet6>"
16124
16125 #.  Since glibc 2.2
16126 #. type: Plain text
16127 #: build/C/man5/resolv.conf.5:201
16128 msgid ""
16129 "sets B<RES_USE_INET6> in I<_res.options>.  This has the effect of trying a "
16130 "AAAA query before an A query inside the B<gethostbyname>(3)  function, and "
16131 "of mapping IPv4 responses in IPv6 \"tunneled form\" if no AAAA records are "
16132 "found but an A record set exists."
16133 msgstr ""
16134 "I<_res.options> に B<RES_USE_INET6> を設定する。このオプションが設定される"
16135 "と、 B<gethostbyname>(3)  関数の内部で A レコードの問い合わせを行う前に AAAA "
16136 "レコードの問い合わせを行うようになる。 また、AAAA レコードは見つからないが A "
16137 "レコードセットが存在する場合に、 IPv4 の応答を IPv6「トンネル形式」にマップす"
16138 "るようになる。"
16139
16140 #. type: TP
16141 #: build/C/man5/resolv.conf.5:201
16142 #, no-wrap
16143 msgid "B<ip6-bytestring> (since glibc 2.3.4)"
16144 msgstr "B<ip6-bytestring> (glibc 2.3.4 以降)"
16145
16146 #. type: Plain text
16147 #: build/C/man5/resolv.conf.5:210
16148 msgid ""
16149 "sets B<RES_USE_BSTRING> in I<_res.options>.  This causes reverse IPv6 "
16150 "lookups to be made using the bit-label format described in RFC\\ 2673; if "
16151 "this option is not set, then nibble format is used."
16152 msgstr ""
16153 "I<_res.options> に B<RES_USE_BSTRING> を設定する。このオプションが設定される"
16154 "と、IPv6 アドレスの逆引きで RFC\\ 2673 で規定された bit-label 形式が使用され"
16155 "るようになる。 このオプションが設定されない場合、nibble 形式が使用される。"
16156
16157 #. type: TP
16158 #: build/C/man5/resolv.conf.5:210
16159 #, no-wrap
16160 msgid "B<ip6-dotint>/B<no-ip6-dotint> (since glibc 2.3.4)"
16161 msgstr "B<ip6-dotint>/B<no-ip6-dotint> (glibc 2.3.4 以降)"
16162
16163 #. type: Plain text
16164 #: build/C/man5/resolv.conf.5:227
16165 msgid ""
16166 "Clear/set B<RES_NOIP6DOTINT> in I<_res.options>.  When this option is clear "
16167 "(B<ip6-dotint>), reverse IPv6 lookups are made in the (deprecated)  I<ip6."
16168 "int> zone; when this option is set (B<no-ip6-dotint>), reverse IPv6 lookups "
16169 "are made in the I<ip6.arpa> zone by default.  This option is set by default."
16170 msgstr ""
16171 "I<_res.options> への B<RES_NOIP6DOTINT> のセット/クリアを行う。 このオプショ"
16172 "ンがクリアされると (B<ip6-dotint>)、 IPv6 アドレスの逆引きが (非推奨の)  "
16173 "I<ip6.int> ゾーンで行われるようになり、 このオプションがセットされると (B<no-"
16174 "ip6-dotint>)、 IPv6 アドレスの逆引きがデフォルトの I<ip6.arpa> ゾーンで行われ"
16175 "るようになる。 このオプションはデフォルトでセットされる。"
16176
16177 #. type: TP
16178 #: build/C/man5/resolv.conf.5:227
16179 #, no-wrap
16180 msgid "B<edns0> (since glibc 2.6)"
16181 msgstr "B<edns0> (glibc 2.6 以降)"
16182
16183 #. type: Plain text
16184 #: build/C/man5/resolv.conf.5:234
16185 msgid ""
16186 "sets B<RES_USE_EDNSO> in I<_res.options>.  This enables support for the DNS "
16187 "extensions described in RFC\\ 2671."
16188 msgstr ""
16189 "I<_res.options> に B<RES_USE_EDNSO> をセットする。これにより、RFC\\ 2671 で規"
16190 "定されている DNS 拡張のサポートが有効になる。"
16191
16192 #. type: Plain text
16193 #: build/C/man5/resolv.conf.5:239
16194 msgid ""
16195 "The I<domain> and I<search> keywords are mutually exclusive.  If more than "
16196 "one instance of these keywords is present, the last instance wins."
16197 msgstr ""
16198 "I<domain> と I<search> キーワードは、互いに排他的である。 これらのキーワード"
16199 "が 2 つ以上記述されている場合、 最後に記述されているものが有効になる。"
16200
16201 #. type: Plain text
16202 #: build/C/man5/resolv.conf.5:244
16203 msgid ""
16204 "The I<search> keyword of a system's I<resolv.conf> file can be overridden on "
16205 "a per-process basis by setting the environment variable B<LOCALDOMAIN> to a "
16206 "space-separated list of search domains."
16207 msgstr ""
16208 "システムの I<resolv.conf> ファイルにある I<search> キーワードは、 スペースで"
16209 "区切った検索ドメインのリストを 環境変数 B<LOCALDOMAIN> に設定することにより、"
16210 "各プロセス毎に上書きすることができる。"
16211
16212 #. type: Plain text
16213 #: build/C/man5/resolv.conf.5:250
16214 msgid ""
16215 "The I<options> keyword of a system's I<resolv.conf> file can be amended on a "
16216 "per-process basis by setting the environment variable B<RES_OPTIONS> to a "
16217 "space-separated list of resolver options as explained above under B<options>."
16218 msgstr ""
16219 "システムの I<resolv.conf> ファイルにある I<options> キーワードは、 上の "
16220 "B<options> セクションで説明したように、 スペースで区切ったレゾルバオプション"
16221 "のリストを 環境変数 B<RES_OPTIONS> に設定することにより、各プロセス毎に修正す"
16222 "ることができる。"
16223
16224 #. type: Plain text
16225 #: build/C/man5/resolv.conf.5:254
16226 msgid ""
16227 "The keyword and value must appear on a single line, and the keyword (e.g., "
16228 "B<nameserver>) must start the line.  The value follows the keyword, "
16229 "separated by white space."
16230 msgstr ""
16231 "キーワードと値は同じ行に書かなければならない。 また、(B<nameserver> のよう"
16232 "な) キーワードが行の先頭になければならない。 値はキーワードの後にスペースで区"
16233 "切って続ける。"
16234
16235 #. type: Plain text
16236 #: build/C/man5/resolv.conf.5:257
16237 msgid ""
16238 "Lines that contain a semicolon (;) or hash character (#)  in the first "
16239 "column are treated as comments."
16240 msgstr ""
16241
16242 #. type: Plain text
16243 #: build/C/man5/resolv.conf.5:260
16244 msgid "I</etc/resolv.conf>, I<E<lt>resolv.hE<gt>>"
16245 msgstr "I</etc/resolv.conf>, I<E<lt>resolv.hE<gt>>"
16246
16247 #. type: Plain text
16248 #: build/C/man5/resolv.conf.5:265
16249 msgid "B<gethostbyname>(3), B<resolver>(3), B<hostname>(7), B<named>(8)"
16250 msgstr "B<gethostbyname>(3), B<resolver>(3), B<hostname>(7), B<named>(8)"
16251
16252 #. type: Plain text
16253 #: build/C/man5/resolv.conf.5:267
16254 msgid "Name Server Operations Guide for BIND"
16255 msgstr "BIND のネームサーバオペレーションガイド"
16256
16257 #. type: TH
16258 #: build/C/man3/resolver.3:30
16259 #, no-wrap
16260 msgid "RESOLVER"
16261 msgstr "RESOLVER"
16262
16263 #. type: TH
16264 #: build/C/man3/resolver.3:30
16265 #, no-wrap
16266 msgid "2010-06-17"
16267 msgstr "2010-06-17"
16268
16269 #. type: Plain text
16270 #: build/C/man3/resolver.3:34
16271 msgid ""
16272 "res_init, res_query, res_search, res_querydomain, res_mkquery, res_send, "
16273 "dn_comp, dn_expand - resolver routines"
16274 msgstr ""
16275 "res_init, res_query, res_search, res_querydomain, res_mkquery, res_send, "
16276 "dn_comp, dn_expand - レゾルバ・ルーチン"
16277
16278 #. type: Plain text
16279 #: build/C/man3/resolver.3:40
16280 #, no-wrap
16281 msgid ""
16282 "B<#include E<lt>netinet/in.hE<gt>>\n"
16283 "B<#include E<lt>arpa/nameser.hE<gt>>\n"
16284 "B<#include E<lt>resolv.hE<gt>>\n"
16285 "B<extern struct state _res;>\n"
16286 msgstr ""
16287 "B<#include E<lt>netinet/in.hE<gt>>\n"
16288 "B<#include E<lt>arpa/nameser.hE<gt>>\n"
16289 "B<#include E<lt>resolv.hE<gt>>\n"
16290 "B<extern struct state _res;>\n"
16291
16292 #. type: Plain text
16293 #: build/C/man3/resolver.3:42
16294 #, no-wrap
16295 msgid "B<int res_init(void);>\n"
16296 msgstr "B<int res_init(void);>\n"
16297
16298 #. type: Plain text
16299 #: build/C/man3/resolver.3:44
16300 #, no-wrap
16301 msgid "B<int res_query(const char *>I<dname>B<, int >I<class>B<, int >I<type>B<,>\n"
16302 msgstr "B<int res_query(const char *>I<dname>B<, int >I<class>B<, int >I<type>B<,>\n"
16303
16304 #. type: Plain text
16305 #: build/C/man3/resolver.3:46 build/C/man3/resolver.3:51
16306 #, no-wrap
16307 msgid "B<unsigned char *>I<answer>B<, int >I<anslen>B<);>\n"
16308 msgstr "B<unsigned char *>I<answer>B<, int >I<anslen>B<);>\n"
16309
16310 #. type: Plain text
16311 #: build/C/man3/resolver.3:49
16312 #, no-wrap
16313 msgid "B<int res_search(const char *>I<dname>B<, int >I<class>B<, int >I<type>B<,>\n"
16314 msgstr "B<int res_search(const char *>I<dname>B<, int >I<class>B<, int >I<type>B<,>\n"
16315
16316 #. type: Plain text
16317 #: build/C/man3/resolver.3:54
16318 #, no-wrap
16319 msgid "B<int res_querydomain(const char *>I<name>B<, const char *>I<domain>B<,>\n"
16320 msgstr "B<int res_querydomain(const char *>I<name>B<, const char *>I<domain>B<,>\n"
16321
16322 #. type: Plain text
16323 #: build/C/man3/resolver.3:57
16324 #, no-wrap
16325 msgid ""
16326 "B<int >I<class>B<, int >I<type>B<, unsigned char *>I<answer>B<,>\n"
16327 "B<int >I<anslen>B<);>\n"
16328 msgstr ""
16329 "B<int >I<class>B<, int >I<type>B<, unsigned char *>I<answer>B<,>\n"
16330 "B<int >I<anslen>B<);>\n"
16331
16332 #. type: Plain text
16333 #: build/C/man3/resolver.3:60
16334 #, no-wrap
16335 msgid "B<int res_mkquery(int >I<op>B<, const char *>I<dname>B<, int >I<class>B<,>\n"
16336 msgstr "B<int res_mkquery(int >I<op>B<, const char *>I<dname>B<, int >I<class>B<,>\n"
16337
16338 #. type: Plain text
16339 #: build/C/man3/resolver.3:63
16340 #, no-wrap
16341 msgid ""
16342 "B<int >I<type>B<, char *>I<data>B<, int >I<datalen>B<, struct rrec *>I<newrr>B<,>\n"
16343 "B<char *>I<buf>B<, int >I<buflen>B<);>\n"
16344 msgstr ""
16345 "B<int >I<type>B<, char *>I<data>B<, int >I<datalen>B<, struct rrec *>I<newrr>B<,>\n"
16346 "B<char *>I<buf>B<, int >I<buflen>B<);>\n"
16347
16348 #. type: Plain text
16349 #: build/C/man3/resolver.3:66
16350 #, no-wrap
16351 msgid "B<int res_send(const char *>I<msg>B<, int >I<msglen>B<, char *>I<answer>B<,>\n"
16352 msgstr "B<int res_send(const char *>I<msg>B<, int >I<msglen>B<, char *>I<answer>B<,>\n"
16353
16354 #. type: Plain text
16355 #: build/C/man3/resolver.3:68
16356 #, no-wrap
16357 msgid "B<int >I<anslen>B<);>\n"
16358 msgstr "B<int >I<anslen>B<);>\n"
16359
16360 #. type: Plain text
16361 #: build/C/man3/resolver.3:71
16362 #, no-wrap
16363 msgid "B<int dn_comp(unsigned char *>I<exp_dn>B<, unsigned char *>I<comp_dn>B<,>\n"
16364 msgstr "B<int dn_comp(unsigned char *>I<exp_dn>B<, unsigned char *>I<comp_dn>B<,>\n"
16365
16366 #. type: Plain text
16367 #: build/C/man3/resolver.3:73
16368 #, no-wrap
16369 msgid "B<int >I<length>B<, unsigned char **>I<dnptrs>B<, unsigned char **>I<lastdnptr>B<);>\n"
16370 msgstr "B<int >I<length>B<, unsigned char **>I<dnptrs>B<, unsigned char **>I<lastdnptr>B<);>\n"
16371
16372 #. type: Plain text
16373 #: build/C/man3/resolver.3:76
16374 #, no-wrap
16375 msgid "B<int dn_expand(unsigned char *>I<msg>B<, unsigned char *>I<eomorig>B<,>\n"
16376 msgstr "B<int dn_expand(unsigned char *>I<msg>B<, unsigned char *>I<eomorig>B<,>\n"
16377
16378 #. type: Plain text
16379 #: build/C/man3/resolver.3:79
16380 #, no-wrap
16381 msgid ""
16382 "B<unsigned char *>I<comp_dn>B<, char *>I<exp_dn>B<,>\n"
16383 "B<int >I<length>B<);>\n"
16384 msgstr ""
16385 "B<unsigned char *>I<comp_dn>B<, char *>I<exp_dn>B<,>\n"
16386 "B<int >I<length>B<);>\n"
16387
16388 #. type: Plain text
16389 #: build/C/man3/resolver.3:83
16390 msgid "Link with I<-lresolv>."
16391 msgstr "I<-lresolv> でリンクする。"
16392
16393 #. type: Plain text
16394 #: build/C/man3/resolver.3:86
16395 msgid ""
16396 "These functions make queries to and interpret the responses from Internet "
16397 "domain name servers."
16398 msgstr ""
16399 "これらの関数はインターネットのドメインネームサーバーに問い合わせ、 その応答を"
16400 "解釈する。"
16401
16402 #. type: Plain text
16403 #: build/C/man3/resolver.3:99
16404 msgid ""
16405 "The B<res_init>()  function reads the configuration files (see resolv.conf"
16406 "(5)) to get the default domain name, search order and name server address"
16407 "(es).  If no server is given, the local host is tried.  If no domain is "
16408 "given, that associated with the local host is used.  It can be overridden "
16409 "with the environment variable B<LOCALDOMAIN>.  B<res_init>()  is normally "
16410 "executed by the first call to one of the other functions."
16411 msgstr ""
16412 "B<res_init>()  関数は、デフォルトのドメイン名、検索順、ネームサーバー アドレ"
16413 "スを得るために設定ファイル (resolv.conf(5) 参照) を読む。 もしサーバーが示さ"
16414 "れていなければローカルホストを試す。 ドメインが示されていなければローカルホス"
16415 "トに付けられたドメインを用いる。 環境変数 B<LOCALDOMAIN> でオーバーライドでき"
16416 "る。 B<res_init>()  は、後述する関数のどれかが最初に呼び出された時、その関数 "
16417 "から実行される。"
16418
16419 #. type: Plain text
16420 #: build/C/man3/resolver.3:107
16421 msgid ""
16422 "The B<res_query>()  function queries the name server for the fully qualified "
16423 "domain name I<name> of specified I<type> and I<class>.  The reply is left in "
16424 "the buffer I<answer> of length I<anslen> supplied by the caller."
16425 msgstr ""
16426 "B<res_query>()  関数は、指定された I<type> と I<class> の 完全修飾ドメイン名 "
16427 "(FQDN) I<name> を、ネームサーバーへ問い合わせる。 応答は、呼び出した側によっ"
16428 "て用意される長さ I<anslen> の I<answer> バッファーに残される。"
16429
16430 #. type: Plain text
16431 #: build/C/man3/resolver.3:120
16432 msgid ""
16433 "The B<res_search>()  function makes a query and waits for the response like "
16434 "B<res_query>(), but in addition implements the default and search rules "
16435 "controlled by B<RES_DEFNAMES> and B<RES_DNSRCH> (see description of I<_res> "
16436 "options below)."
16437 msgstr ""
16438 "B<res_search>()  関数は、問い合わせを行い B<res_query>()  同様その応答を 待つ"
16439 "が、さらにデフォルトを実装しており B<RES_DEFNAMES> と B<RES_DNSRCH> によって"
16440 "規定される検索ルールを適用する。 (下記 I<_res> オプションの説明を参照)"
16441
16442 #. type: Plain text
16443 #: build/C/man3/resolver.3:126
16444 msgid ""
16445 "The B<res_querydomain>()  function makes a query using B<res_query>()  on "
16446 "the concatenation of I<name> and I<domain>."
16447 msgstr ""
16448 "B<res_querydomain>()  関数は I<name> と I<domain> の結合に B<res_query>()  を"
16449 "用いて問い合わせを行う。"
16450
16451 #. type: Plain text
16452 #: build/C/man3/resolver.3:129
16453 msgid ""
16454 "The following functions are lower-level routines used by B<res_query>()."
16455 msgstr "次の関数は、 B<res_query>()  で使われる下位ルーチンである。"
16456
16457 #. type: Plain text
16458 #: build/C/man3/resolver.3:140
16459 msgid ""
16460 "The B<res_mkquery>()  function constructs a query message in I<buf> of "
16461 "length I<buflen> for the domain name I<dname>.  The query type I<op> is "
16462 "usually B<QUERY>, but can be any of the types defined in I<E<lt>arpa/nameser."
16463 "hE<gt>>.  I<newrr> is currently unused."
16464 msgstr ""
16465 "B<res_mkquery>()  関数は、ドメイン名 I<dname> の為に、長さ I<buflen> の "
16466 "I<buf> に問い合わせるメッセージを作成する。 問い合わせの型 I<op> は通常 "
16467 "B<QUERY> だが、 I<E<lt>arpa/nameser.hE<gt>> で定義された型のどれでも良い。 "
16468 "I<newrr> は現在使用されていない。"
16469
16470 #. type: Plain text
16471 #: build/C/man3/resolver.3:150
16472 msgid ""
16473 "The B<res_send>()  function sends a preformatted query given in I<msg> of "
16474 "length I<msglen> and returns the answer in I<answer> which is of length "
16475 "I<anslen>.  It will call B<res_init>(), if it has not already been called."
16476 msgstr ""
16477 "B<res_send>()  関数は、長さ I<msglen> の I<msg> に決められた書式 で問い合わ"
16478 "せ、I<answer> に長さ I<anslen> の回答を返す。 まだ呼び出されていなければ "
16479 "B<res_init>()  を呼び出す。"
16480
16481 #. type: Plain text
16482 #: build/C/man3/resolver.3:163
16483 msgid ""
16484 "The B<dn_comp>()  function compresses the domain name I<exp_dn> and stores "
16485 "it in the buffer I<comp_dn> of length I<length>.  The compression uses an "
16486 "array of pointers I<dnptrs> to previously compressed names in the current "
16487 "message.  The first pointer points to the beginning of the message and the "
16488 "list ends with NULL.  The limit of the array is specified by I<lastdnptr>.  "
16489 "If I<dnptr> is NULL, domain names are not compressed.  If I<lastdnptr> is "
16490 "NULL, the list of labels is not updated."
16491 msgstr ""
16492 "B<dn_comp>()  関数はドメイン名 I<exp_dn> を圧縮して、長さ I<length> のバッ"
16493 "ファー I<comp_dn> に保存する。 圧縮にはポインター配列 I<dnptrs> を用いる。 こ"
16494 "れらのポインターは、現在のメッセージの中にある以前に圧縮された名前を指す。 最"
16495 "初のポインターはメッセージの冒頭を指し、そのリストは NULL で終わる。 配列の範"
16496 "囲は I<lastdnptr> で決められる。 I<dnptr> が NULL ならばドメイン名は圧縮され"
16497 "ない。 I<lastdnptr> が NULL ならば、そのラベルのリストはアップデートされな"
16498 "い。"
16499
16500 #. type: Plain text
16501 #: build/C/man3/resolver.3:172
16502 msgid ""
16503 "The B<dn_expand>()  function expands the compressed domain name I<comp_dn> "
16504 "to a full domain name, which is placed in the buffer I<exp_dn> of size "
16505 "I<length>.  The compressed name is contained in a query or reply message, "
16506 "and I<msg> points to the beginning of the message."
16507 msgstr ""
16508 "B<dn_expand>()  関数は、圧縮されたドメイン名 I<comp_dn> からサイズ が "
16509 "I<length> の I<exp_dn> バッファーに正式なドメイン名を展開する。 その圧縮され"
16510 "た名前は、問い合わせ、または応答メッセージに含まれていて、 I<msg> がメッセー"
16511 "ジの冒頭を指す。"
16512
16513 #. type: Plain text
16514 #: build/C/man3/resolver.3:180
16515 msgid ""
16516 "The resolver routines use global configuration and state information "
16517 "contained in the structure I<_res>, which is defined in I<E<lt>resolv."
16518 "hE<gt>>.  The only field that is normally manipulated by the user is I<_res."
16519 "options>.  This field can contain the bitwise \"OR\" of the following "
16520 "options:"
16521 msgstr ""
16522 "レゾルバ・ルーチンは、I<E<lt>resolv.hE<gt>> に定義された I<_res> 構造体に 含"
16523 "まれている全体的な設定と状態の情報を使用する。 通常ユーザーに操作できる項目"
16524 "は I<_res.options> だけである。 この項目は以下のオプションのビット単位の論理"
16525 "和にできる。"
16526
16527 #. type: TP
16528 #: build/C/man3/resolver.3:180
16529 #, no-wrap
16530 msgid "B<RES_INIT>"
16531 msgstr "B<RES_INIT>"
16532
16533 #. type: Plain text
16534 #: build/C/man3/resolver.3:185
16535 msgid "True if B<res_init>()  has been called."
16536 msgstr "B<res_init>()  が呼び出されていれば真。"
16537
16538 #. type: TP
16539 #: build/C/man3/resolver.3:185
16540 #, no-wrap
16541 msgid "B<RES_DEBUG>"
16542 msgstr "B<RES_DEBUG>"
16543
16544 #. type: Plain text
16545 #: build/C/man3/resolver.3:188
16546 msgid "Print debugging messages."
16547 msgstr "デバッグ・メッセージを出力する。"
16548
16549 #. type: TP
16550 #: build/C/man3/resolver.3:188
16551 #, no-wrap
16552 msgid "B<RES_AAONLY>"
16553 msgstr "B<RES_AAONLY>"
16554
16555 #. type: Plain text
16556 #: build/C/man3/resolver.3:195
16557 msgid ""
16558 "Accept authoritative answers only.  B<res_send>()  continues until it finds "
16559 "an authoritative answer or returns an error.  [Not currently implemented]."
16560 msgstr ""
16561 "権威付けされた (authoritative) 回答のみ受け入れる。 B<res_send>()  は、最終的"
16562 "に権威付けされた回答を得られるか、エラーが返される まで続行する。 [現在実装さ"
16563 "れていない]"
16564
16565 #. type: TP
16566 #: build/C/man3/resolver.3:195
16567 #, no-wrap
16568 msgid "B<RES_USEVC>"
16569 msgstr "B<RES_USEVC>"
16570
16571 #. type: Plain text
16572 #: build/C/man3/resolver.3:198
16573 msgid "Use TCP connections for queries rather than UDP datagrams."
16574 msgstr "問い合わせに UDP データグラムではなく TCP 接続を用いる。"
16575
16576 #. type: TP
16577 #: build/C/man3/resolver.3:198
16578 #, no-wrap
16579 msgid "B<RES_PRIMARY>"
16580 msgstr "B<RES_PRIMARY>"
16581
16582 #. type: Plain text
16583 #: build/C/man3/resolver.3:201
16584 msgid "Query primary domain name server only."
16585 msgstr "プライマリ・ドメインネームサーバーのみ問い合わせる。"
16586
16587 #. type: TP
16588 #: build/C/man3/resolver.3:201
16589 #, no-wrap
16590 msgid "B<RES_IGNTC>"
16591 msgstr "B<RES_IGNTC>"
16592
16593 #. type: Plain text
16594 #: build/C/man3/resolver.3:206
16595 msgid ""
16596 "Ignore truncation errors.  Don't retry with TCP.  [Not currently "
16597 "implemented]."
16598 msgstr ""
16599 "切り詰めエラー (truncation error) を無視する。TCP でリトライしない。 [現在実"
16600 "装されていない]"
16601
16602 #. type: TP
16603 #: build/C/man3/resolver.3:206
16604 #, no-wrap
16605 msgid "B<RES_RECURSE>"
16606 msgstr "B<RES_RECURSE>"
16607
16608 #. type: Plain text
16609 #: build/C/man3/resolver.3:213
16610 msgid ""
16611 "Set the recursion desired bit in queries.  Recursion is carried out by the "
16612 "domain name server, not by B<res_send>().  [Enabled by default]."
16613 msgstr ""
16614 "再帰要求 (recursion desired) ビットを問い合わせに設定する。 再帰は "
16615 "B<res_send>()  ではなくドメインネームサーバーによって行われる。 [デフォルトで"
16616 "有効]"
16617
16618 #. type: TP
16619 #: build/C/man3/resolver.3:213
16620 #, no-wrap
16621 msgid "B<RES_DEFNAMES>"
16622 msgstr "B<RES_DEFNAMES>"
16623
16624 #. type: Plain text
16625 #: build/C/man3/resolver.3:220
16626 msgid ""
16627 "If set, B<res_search>()  will append the default domain name to single "
16628 "component names, i.e., those that do not contain a dot.  [Enabled by "
16629 "default]."
16630 msgstr ""
16631 "設定されていれば、 B<res_search>()  はデフォルトのドメイン名を一部分 のみから"
16632 "なる名前、すなわちドットを含まない名前に付け加える。 [デフォルトで有効]"
16633
16634 #. type: TP
16635 #: build/C/man3/resolver.3:220
16636 #, no-wrap
16637 msgid "B<RES_STAYOPEN>"
16638 msgstr "B<RES_STAYOPEN>"
16639
16640 #. type: Plain text
16641 #: build/C/man3/resolver.3:225
16642 msgid "Used with B<RES_USEVC> to keep the TCP connection open between queries."
16643 msgstr "問い合わせ中に TCP 接続を保つため B<RES_USEVC> と共に用いられる。"
16644
16645 #. type: TP
16646 #: build/C/man3/resolver.3:225
16647 #, no-wrap
16648 msgid "B<RES_DNSRCH>"
16649 msgstr "B<RES_DNSRCH>"
16650
16651 #. type: Plain text
16652 #: build/C/man3/resolver.3:234
16653 msgid ""
16654 "If set, B<res_search>()  will search for hostnames in the current domain and "
16655 "in parent domains.  This option is used by B<gethostbyname>(3).  [Enabled by "
16656 "default]."
16657 msgstr ""
16658 "設定されていれば、 B<res_search>()  は現在のドメインおよび親ドメインの ホスト"
16659 "名を探す。このオプションは B<gethostbyname>(3)  で用いられる。 [デフォルトで"
16660 "有効]"
16661
16662 #. type: Plain text
16663 #: build/C/man3/resolver.3:239
16664 msgid ""
16665 "The B<res_init>()  function returns 0 on success, or -1 if an error occurs."
16666 msgstr "B<res_init>()  関数は成功すれば 0 を、エラーが発生すれば -1 を返す。"
16667
16668 #. type: Plain text
16669 #: build/C/man3/resolver.3:249
16670 msgid ""
16671 "The B<res_query>(), B<res_search>(), B<res_querydomain>(), B<res_mkquery>()  "
16672 "and B<res_send>()  functions return the length of the response, or -1 if an "
16673 "error occurs."
16674 msgstr ""
16675 "B<res_query>(), B<res_search>(), B<res_querydomain>(), B<res_mkquery>(), "
16676 "B<res_send>()  関数は応答の長さを返す。 また、エラーが発生すれば -1 を返す。"
16677
16678 #. type: Plain text
16679 #: build/C/man3/resolver.3:256
16680 msgid ""
16681 "The B<dn_comp>()  and B<dn_expand>()  functions return the length of the "
16682 "compressed name, or -1 if an error occurs."
16683 msgstr ""
16684 "B<dn_comp>()  と B<dn_expand>()  関数は圧縮されたドメイン名の長さを返す。 ま"
16685 "た、エラーが発生すれば -1 を返す。"
16686
16687 #. type: Plain text
16688 #: build/C/man3/resolver.3:260
16689 #, no-wrap
16690 msgid ""
16691 "/etc/resolv.conf          resolver configuration file\n"
16692 "/etc/host.conf            resolver configuration file\n"
16693 msgstr ""
16694 "/etc/resolv.conf          レゾルバ設定ファイル\n"
16695 "/etc/host.conf            レゾルバ設定ファイル\n"
16696
16697 #. type: Plain text
16698 #: build/C/man3/resolver.3:263
16699 msgid "4.3BSD."
16700 msgstr "4.3BSD."
16701
16702 #. type: Plain text
16703 #: build/C/man3/resolver.3:269
16704 msgid ""
16705 "B<gethostbyname>(3), B<resolv.conf>(5), B<resolver>(5), B<hostname>(7), "
16706 "B<named>(8)"
16707 msgstr ""
16708 "B<gethostbyname>(3), B<resolv.conf>(5), B<resolver>(5), B<hostname>(7), "
16709 "B<named>(8)"
16710
16711 #. type: TH
16712 #: build/C/man3/rexec.3:39
16713 #, no-wrap
16714 msgid "REXEC"
16715 msgstr "REXEC"
16716
16717 #. type: Plain text
16718 #: build/C/man3/rexec.3:42
16719 msgid "rexec - return stream to a remote command"
16720 msgstr "rexec - リモートコマンドへのストリームを返す"
16721
16722 #. type: Plain text
16723 #: build/C/man3/rexec.3:46
16724 #, no-wrap
16725 msgid ""
16726 "B<#define _BSD_SOURCE>             /* See feature_test_macros(7) */\n"
16727 "B<#include E<lt>netdb.hE<gt>>\n"
16728 msgstr ""
16729 "B<#define _BSD_SOURCE>             /* feature_test_macros(7) 参照 */\n"
16730 "B<#include E<lt>netdb.hE<gt>>\n"
16731
16732 #. type: Plain text
16733 #: build/C/man3/rexec.3:49
16734 #, no-wrap
16735 msgid ""
16736 "B<int rexec(char **>I<ahost>B<, int >I<inport>B<, char *>I<user>B<, >\n"
16737 "B<          char *>I<passwd>B<, char *>I<cmd>B<, int *>I<fd2p>B<);>\n"
16738 msgstr ""
16739 "B<int rexec(char **>I<ahost>B<, int >I<inport>B<, char *>I<user>B<, >\n"
16740 "B<          char *>I<passwd>B<, char *>I<cmd>B<, int *>I<fd2p>B<);>\n"
16741
16742 #. type: Plain text
16743 #: build/C/man3/rexec.3:53
16744 msgid "This interface is obsoleted by B<rcmd>(3)."
16745 msgstr "このインタフェースは B<rcmd>(3)  によって置き換えられた。"
16746
16747 #. type: Plain text
16748 #: build/C/man3/rexec.3:72
16749 msgid ""
16750 "The B<rexec>()  function looks up the host I<*ahost> using B<gethostbyname>"
16751 "(3), returning -1 if the host does not exist.  Otherwise I<*ahost> is set to "
16752 "the standard name of the host.  If a username and password are both "
16753 "specified, then these are used to authenticate to the foreign host; "
16754 "otherwise the environment and then the user's I<.netrc> file in his home "
16755 "directory are searched for appropriate information.  If all this fails, the "
16756 "user is prompted for the information."
16757 msgstr ""
16758 "B<rexec>()  関数は B<gethostbyname>(3)  を使ってホスト I<*ahost> を探す。ホス"
16759 "トが存在しない場合は -1 を返し、それ以外の場合には I<*ahost> にそのホストの標"
16760 "準的な名前を設定する。 ユーザ名とパスワードの両方が指定された場合には、これら"
16761 "は 接続先のホストへの認証に利用される。そうでない場合には、 適切な情報を入手"
16762 "するために、環境変数と、そのユーザの ホームディレクトリの I<.netrc> ファイル"
16763 "が検索される。情報が見つからなかった時には、 ユーザに対して情報を入力するプロ"
16764 "ンプトが表示される。"
16765
16766 #. type: Plain text
16767 #: build/C/man3/rexec.3:83
16768 msgid ""
16769 "The port I<inport> specifies which well-known DARPA Internet port to use for "
16770 "the connection; the call I<getservbyname(\"exec\", \"tcp\")> (see "
16771 "B<getservent>(3))  will return a pointer to a structure that contains the "
16772 "necessary port.  The protocol for connection is described in detail in "
16773 "B<rexecd>(8)."
16774 msgstr ""
16775 "ポート I<inport> には、接続に使用する DARPA Internet の well-known ポートを指"
16776 "定する。 I<getservbyname(\"exec\", \"tcp\")> を呼び出すと構造体へのポインタが"
16777 "返され (B<getservent>(3)  参照)、この構造体には必要なポートが入っている。 接"
16778 "続に使用されるプロトコルについての詳細は B<rexecd>(8)  に書かれている (訳注: "
16779 "現在のところ存在しない)。"
16780
16781 #. type: Plain text
16782 #: build/C/man3/rexec.3:116
16783 msgid ""
16784 "If the connection succeeds, a socket in the Internet domain of type "
16785 "B<SOCK_STREAM> is returned to the caller, and given to the remote command as "
16786 "I<stdin> and I<stdout>.  If I<fd2p> is nonzero, then an auxiliary channel to "
16787 "a control process will be setup, and a descriptor for it will be placed in "
16788 "I<*fd2p>.  The control process will return diagnostic output from the "
16789 "command (unit 2) on this channel, and will also accept bytes on this channel "
16790 "as being UNIX signal numbers, to be forwarded to the process group of the "
16791 "command.  The diagnostic information returned does not include remote "
16792 "authorization failure, as the secondary connection is set up after "
16793 "authorization has been verified.  If I<fd2p> is 0, then the I<stderr> (unit "
16794 "2 of the remote command) will be made the same as the I<stdout> and no "
16795 "provision is made for sending arbitrary signals to the remote process, "
16796 "although you may be able to get its attention by using out-of-band data."
16797 msgstr ""
16798 "接続に成功すると、インターネットドメインの B<SOCK_STREAM> 型のソケットが返さ"
16799 "れ、そのソケットはリモートコマンドの 標準入力および標準出力となる。 I<fd2p> "
16800 "が 0 以外の場合、制御プロセスへの補助チャンネルがセットアップされ、 補助チャ"
16801 "ンネルのディスクリプタが I<*fd2p> に書かれる。 制御プロセスはコマンドからの診"
16802 "断メッセージ出力 (ファイルディスクリプタ 2)  をこのチャンネルで返す。また、こ"
16803 "のチャンネル経由で UNIX のシグナル番号を示すバイトを受信する。受信したシグナ"
16804 "ルは コマンドが属すプロセスグループに転送される。 診断情報にはリモートの認証"
16805 "失敗は含まれない。なぜなら、認証の確認が行われた 後で補助チャンネルの接続は"
16806 "セットアップされるからである。 I<fd2p> が 0 の場合、標準エラー (リモートコマ"
16807 "ンドのファイルディスクリプタ 2) は 標準出力と同様に扱われ、リモートプロセスに"
16808 "任意のシグナルを送るための 手段は提供されない。但し、リモートプロセスに対して"
16809 "トリガをかけるために、 帯域外データ (out-of-band data) を使うことはできる。"
16810
16811 #. type: Plain text
16812 #: build/C/man3/rexec.3:123
16813 msgid ""
16814 "Not in POSIX.1-2001.  Present on the BSDs, Solaris, and many other systems.  "
16815 "The B<rexec>()  function appeared in 4.2BSD."
16816 msgstr ""
16817 "POSIX.1-2001 にはない。 BSD 系、Solaris や他の多くのシステムに存在する。 "
16818 "B<rexec>()  関数は 4.2BSD で始めて登場した。"
16819
16820 #. type: Plain text
16821 #: build/C/man3/rexec.3:127
16822 msgid ""
16823 "The B<rexec>()  function sends the unencrypted password across the network."
16824 msgstr ""
16825 "B<rexec>()  関数はネットワークに暗号化されていないパスワードを送信する。"
16826
16827 #. type: Plain text
16828 #: build/C/man3/rexec.3:132
16829 msgid ""
16830 "The underlying service is considered a big security hole and therefore not "
16831 "enabled on many sites, see B<rexecd>(8)  for explanations."
16832 msgstr ""
16833 "基礎的なサービスにおいては大きなセキュリティホールと考えられるため、 多くのサ"
16834 "イトで無効になっている。詳細は B<rexecd>(8)  を参照。"
16835
16836 #. type: Plain text
16837 #: build/C/man3/rexec.3:135
16838 msgid "B<rcmd>(3), B<rexecd>(8)"
16839 msgstr "B<rcmd>(3), B<rexecd>(8)"
16840
16841 #. type: TH
16842 #: build/C/man5/services.5:34
16843 #, no-wrap
16844 msgid "SERVICES"
16845 msgstr "SERVICES"
16846
16847 #. type: TH
16848 #: build/C/man5/services.5:34
16849 #, no-wrap
16850 msgid "2010-05-22"
16851 msgstr "2010-05-22"
16852
16853 #. type: Plain text
16854 #: build/C/man5/services.5:37
16855 msgid "services - Internet network services list"
16856 msgstr "services - インターネット ネットワークサービス リスト"
16857
16858 #. type: Plain text
16859 #: build/C/man5/services.5:52
16860 msgid ""
16861 "B<services> is a plain ASCII file providing a mapping between human-friendly "
16862 "textual names for internet services, and their underlying assigned port "
16863 "numbers and protocol types.  Every networking program should look into this "
16864 "file to get the port number (and protocol) for its service.  The C library "
16865 "routines B<getservent>(3), B<getservbyname>(3), B<getservbyport>(3), "
16866 "B<setservent>(3), and B<endservent>(3)  support querying this file from "
16867 "programs."
16868 msgstr ""
16869 "B<services> は、人が分かりやすい形のインターネットサービスの名前と、 それらの"
16870 "サービスに割り当てられたポート番号や プロトコル種別の対応関係が書かれているテ"
16871 "キストファイルである。 ネットワーク上で動作するプログラムはすべて、 そのサー"
16872 "ビスに対応するポート番号 (とプロトコル) を得るために、 このファイルを調べる必"
16873 "要がある。 C ライブラリ関数である B<getservent>(3), B<getservbyname>(3), "
16874 "B<getservbyport>(3), B<setservent>(3), B<endservent>(3)  を利用することで、プ"
16875 "ログラムはこのファイルを調べることができる。"
16876
16877 #. type: Plain text
16878 #: build/C/man5/services.5:58
16879 msgid ""
16880 "Port numbers are assigned by the IANA (Internet Assigned Numbers Authority), "
16881 "and their current policy is to assign both TCP and UDP protocols when "
16882 "assigning a port number.  Therefore, most entries will have two entries, "
16883 "even for TCP-only services."
16884 msgstr ""
16885 "ポート番号は、IANA (Internet Assigned Numbers Authority) によって 割り当てら"
16886 "れており、現在はポート番号を割り当てる際に TCP と UDP の両方のプロトコルを割"
16887 "り当てることになっている。 そのため、ほとんどのサービスに対して、 たとえ TCP "
16888 "だけのサービスの場合であっても、対応する項目が二つあることになる。"
16889
16890 #. type: Plain text
16891 #: build/C/man5/services.5:70
16892 msgid ""
16893 "Port numbers below 1024 (so-called \"low numbered\" ports) can only be bound "
16894 "to by root (see B<bind>(2), B<tcp>(7), and B<udp>(7)).  This is so clients "
16895 "connecting to low numbered ports can trust that the service running on the "
16896 "port is the standard implementation, and not a rogue service run by a user "
16897 "of the machine.  Well-known port numbers specified by the IANA are normally "
16898 "located in this root-only space."
16899 msgstr ""
16900 "1024 より小さいポート番号 (いわゆる \"low numbered\" ポート) は 管理者 "
16901 "(root) 権限によってのみ使用することができる (B<bind>(2), B<tcp>(7), B<udp>"
16902 "(7)  参照)。 これは、これらのポートに接続するクライアントに対して、 そのポー"
16903 "トで動いているサービスが標準的な実装であり、 その計算機のユーザーが動かしてい"
16904 "る 不正なサービスではないことを保証するためである。 IANA に明記されているよく"
16905 "使用されるポート番号は、 通常このような管理者だけが使用できる範囲に配置され"
16906 "る。"
16907
16908 #. type: Plain text
16909 #: build/C/man5/services.5:85
16910 msgid ""
16911 "The presence of an entry for a service in the B<services> file does not "
16912 "necessarily mean that the service is currently running on the machine.  See "
16913 "B<inetd.conf>(5)  for the configuration of Internet services offered.  Note "
16914 "that not all networking services are started by B<inetd>(8), and so won't "
16915 "appear in B<inetd.conf>(5).  In particular, news (NNTP) and mail (SMTP) "
16916 "servers are often initialized from the system boot scripts."
16917 msgstr ""
16918 "B<services> ファイルにあるサービスに対する項目があっても、必ずしもそのサービ"
16919 "スが現 在その計算機で動いている訳ではない。利用可能なインターネットサービスの"
16920 "設定に ついては B<inetd.conf>(5)  に記述されている。ただし、すべてのサービス"
16921 "が B<inetd>(8)  によって起動されるわけではないので、 B<inetd.conf>(5)  には書"
16922 "かれていないサービスもあることに注意する必要がある。 特に、ネットニュース "
16923 "(NNTP) や メール (SMTP) のサーバーは、システム起動時の スクリプトから起動され"
16924 "ることが多い。"
16925
16926 #. type: Plain text
16927 #: build/C/man5/services.5:94
16928 msgid ""
16929 "The location of the B<services> file is defined by B<_PATH_SERVICES> in "
16930 "I<E<lt>netdb.hE<gt>>.  This is usually set to I</etc/services>."
16931 msgstr ""
16932 "B<services> ファイルの場所は、 I<E<lt>netdb.hE<gt>> 中の B<_PATH_SERVICES> に"
16933 "よって定義されている。 この値は通常 I</etc/services> に設定されている。"
16934
16935 #. type: Plain text
16936 #: build/C/man5/services.5:96
16937 msgid "Each line describes one service, and is of the form:"
16938 msgstr "1 行につき 1 サービスが記述されており、以下の形式である。"
16939
16940 #. type: Plain text
16941 #: build/C/man5/services.5:98
16942 msgid "I<service-name\\ \\ \\ port>B</>I<protocol\\ \\ \\ >[I<aliases ...>]"
16943 msgstr "I<service-name\\ \\ \\ port>B</>I<protocol\\ \\ \\ >[I<aliases ...>]"
16944
16945 #. type: TP
16946 #: build/C/man5/services.5:98
16947 #, no-wrap
16948 msgid "where:"
16949 msgstr "各項目は以下の通り。"
16950
16951 #. type: TP
16952 #: build/C/man5/services.5:100
16953 #, no-wrap
16954 msgid "I<service-name>"
16955 msgstr "I<service-name>"
16956
16957 #. type: Plain text
16958 #: build/C/man5/services.5:106
16959 msgid ""
16960 "is the friendly name the service is known by and looked up under.  It is "
16961 "case sensitive.  Often, the client program is named after the I<service-"
16962 "name>."
16963 msgstr ""
16964 "サービスを表す分かりやすい名前であり、検索の際にも使用される。 大文字と小文字"
16965 "は区別される。 クライアントプログラムは I<service-name> にちなんで名付けられ"
16966 "ることが多い。"
16967
16968 #. type: TP
16969 #: build/C/man5/services.5:106
16970 #, no-wrap
16971 msgid "I<port>"
16972 msgstr "I<port>"
16973
16974 #. type: Plain text
16975 #: build/C/man5/services.5:109
16976 msgid "is the port number (in decimal) to use for this service."
16977 msgstr "サービスに対して使用されるポート番号。10 進数で指定する。"
16978
16979 #. type: Plain text
16980 #: build/C/man5/services.5:120
16981 msgid ""
16982 "is the type of protocol to be used.  This field should match an entry in the "
16983 "B<protocols>(5)  file.  Typical values include B<tcp> and B<udp>."
16984 msgstr ""
16985 "使用されるプロトコルの種類。この欄は、 B<protocols>(5)  ファイルの中の項目と"
16986 "一致している必要がある。 通常使用される値は、 B<tcp> と B<udp> である。"
16987
16988 #. type: Plain text
16989 #: build/C/man5/services.5:126
16990 msgid ""
16991 "is an optional space or tab separated list of other names for this service.  "
16992 "Again, the names are case sensitive."
16993 msgstr ""
16994 "サービスに対する別名のリスト (区切はスペースまたはタブ) で、この欄は 必要にな"
16995 "らば書くことができる。 また、別名は大文字と小文字は区別される。"
16996
16997 #. type: Plain text
16998 #: build/C/man5/services.5:128
16999 msgid "Either spaces or tabs may be used to separate the fields."
17000 msgstr "それぞれの欄の区切りには、スペースまたはタブが使用される。"
17001
17002 #. type: Plain text
17003 #: build/C/man5/services.5:132
17004 msgid ""
17005 "Comments are started by the hash sign (#) and continue until the end of the "
17006 "line.  Blank lines are skipped."
17007 msgstr ""
17008 "コメントはシャープ (#) で始まり、その行の終わりまでがコメントとみなされる。 "
17009 "空行は飛ばされる。"
17010
17011 #. type: Plain text
17012 #: build/C/man5/services.5:143
17013 msgid ""
17014 "The I<service-name> should begin in the first column of the file, since "
17015 "leading spaces are not stripped.  I<service-names> can be any printable "
17016 "characters excluding space and tab.  However, a conservative choice of "
17017 "characters should be used to minimize compatibility problems.  E.g., a-z, "
17018 "0-9, and hyphen (-) would seem a sensible choice."
17019 msgstr ""
17020 "行の始めのスペースは無視されないので、 I<service-name> は、行頭から書かなけれ"
17021 "ばならない。 I<service-names> は、スペースとタブ以外の印字可能な文字なら何で"
17022 "もよいが、しかしながら 互換性の問題を少なくするような文字を選択すべきであ"
17023 "る。 例えば、a-z 、0-9 、ハイフォン (-) を使用するのが無難と思われる。"
17024
17025 #. type: Plain text
17026 #: build/C/man5/services.5:152
17027 msgid ""
17028 "Lines not matching this format should not be present in the file.  "
17029 "(Currently, they are silently skipped by B<getservent>(3), B<getservbyname>"
17030 "(3), and B<getservbyport>(3).  However, this behavior should not be relied "
17031 "on.)"
17032 msgstr ""
17033 "指定された形式に合わない行はあってはならない (現在は、そのような行は "
17034 "B<getservent>(3), B<getservbyname>(3), B<getservbyport>(3)  によって無視され"
17035 "る。しかし、その場合の挙動は信頼できない)。"
17036
17037 #. type: Plain text
17038 #: build/C/man5/services.5:169
17039 msgid "A sample B<services> file might look like this:"
17040 msgstr "B<services> ファイルの見本を以下に示す。"
17041
17042 #. type: ta
17043 #: build/C/man5/services.5:172
17044 #, no-wrap
17045 msgid "3i"
17046 msgstr "3i"
17047
17048 #. type: Plain text
17049 #: build/C/man5/services.5:182
17050 #, no-wrap
17051 msgid ""
17052 "netstat         15/tcp\n"
17053 "qotd            17/tcp          quote\n"
17054 "msp             18/tcp          # message send protocol\n"
17055 "msp             18/udp          # message send protocol\n"
17056 "chargen         19/tcp          ttytst source\n"
17057 "chargen         19/udp          ttytst source\n"
17058 "ftp             21/tcp\n"
17059 "# 22 - unassigned\n"
17060 "telnet          23/tcp\n"
17061 msgstr ""
17062 "netstat         15/tcp\n"
17063 "qotd            17/tcp          quote\n"
17064 "msp             18/tcp          # message send protocol\n"
17065 "msp             18/udp          # message send protocol\n"
17066 "chargen         19/tcp          ttytst source\n"
17067 "chargen         19/udp          ttytst source\n"
17068 "ftp             21/tcp\n"
17069 "# 22 - unassigned\n"
17070 "telnet          23/tcp\n"
17071
17072 #. type: Plain text
17073 #: build/C/man5/services.5:188
17074 msgid "The Internet network services list"
17075 msgstr "インターネット ネットワークサービスのリスト"
17076
17077 #. type: TP
17078 #: build/C/man5/services.5:188
17079 #, no-wrap
17080 msgid "I<E<lt>netdb.hE<gt>>"
17081 msgstr "I<E<lt>netdb.hE<gt>>"
17082
17083 #.  .SH BUGS
17084 #.  It's not clear when/if the following was ever true;
17085 #.  it isn't true for glibc 2.8:
17086 #.     There is a maximum of 35 aliases, due to the way the
17087 #.     .BR getservent (3)
17088 #.     code is written.
17089 #.  It's not clear when/if the following was ever true;
17090 #.  it isn't true for glibc 2.8:
17091 #.     Lines longer than
17092 #.     .B BUFSIZ
17093 #.     (currently 1024) characters will be ignored by
17094 #.     .BR getservent (3),
17095 #.     .BR getservbyname (3),
17096 #.     and
17097 #.     .BR getservbyport (3).
17098 #.     However, this will also cause the next line to be mis-parsed.
17099 #. type: Plain text
17100 #: build/C/man5/services.5:209
17101 msgid "Definition of B<_PATH_SERVICES>"
17102 msgstr "B<_PATH_SERVICES> の定義"
17103
17104 #. type: Plain text
17105 #: build/C/man5/services.5:219
17106 msgid ""
17107 "B<listen>(2), B<endservent>(3), B<getservbyname>(3), B<getservbyport>(3), "
17108 "B<getservent>(3), B<setservent>(3), B<inetd.conf>(5), B<protocols>(5), "
17109 "B<inetd>(8)"
17110 msgstr ""
17111 "B<listen>(2), B<endservent>(3), B<getservbyname>(3), B<getservbyport>(3), "
17112 "B<getservent>(3), B<setservent>(3), B<inetd.conf>(5), B<protocols>(5), "
17113 "B<inetd>(8)"
17114
17115 #. type: Plain text
17116 #: build/C/man5/services.5:221
17117 msgid "Assigned Numbers RFC, most recently RFC\\ 1700, (AKA STD0002)"
17118 msgstr ""
17119 "ポート番号の割り当てを定めている RFC (最新版は RFC\\ 1700、別名 STD0002)"
17120
17121 #. type: TH
17122 #: build/C/man3/setnetgrent.3:5
17123 #, no-wrap
17124 msgid "SETNETGRENT"
17125 msgstr "SETNETGRENT"
17126
17127 #. type: TH
17128 #: build/C/man3/setnetgrent.3:5
17129 #, no-wrap
17130 msgid "2007-07-26"
17131 msgstr "2007-07-26"
17132
17133 #. type: Plain text
17134 #: build/C/man3/setnetgrent.3:9
17135 msgid ""
17136 "setnetgrent, endnetgrent, getnetgrent, getnetgrent_r, innetgr - handle "
17137 "network group entries"
17138 msgstr ""
17139 "setnetgrent, endnetgrent, getnetgrent, getnetgrent_r, innetgr - ネットワー"
17140 "ク・グループのエントリを操作する"
17141
17142 #. type: Plain text
17143 #: build/C/man3/setnetgrent.3:14
17144 #, no-wrap
17145 msgid "B<int setnetgrent(const char *>I<netgroup>B<);>\n"
17146 msgstr "B<int setnetgrent(const char *>I<netgroup>B<);>\n"
17147
17148 #. type: Plain text
17149 #: build/C/man3/setnetgrent.3:16
17150 #, no-wrap
17151 msgid "B<void endnetgrent(void);>\n"
17152 msgstr "B<void endnetgrent(void);>\n"
17153
17154 #. type: Plain text
17155 #: build/C/man3/setnetgrent.3:18
17156 #, no-wrap
17157 msgid "B<int getnetgrent(char **>I<host>B<, char **>I<user>B<, char **>I<domain>B<);>\n"
17158 msgstr "B<int getnetgrent(char **>I<host>B<, char **>I<user>B<, char **>I<domain>B<);>\n"
17159
17160 #. type: Plain text
17161 #: build/C/man3/setnetgrent.3:21
17162 #, no-wrap
17163 msgid ""
17164 "B<int getnetgrent_r(char **>I<host>B<, char **>I<user>B<,>\n"
17165 "B<                  char **>I<domain>B<, char *>I<buf>B<, int >I<buflen>B<);>\n"
17166 msgstr ""
17167 "B<int getnetgrent_r(char **>I<host>B<, char **>I<user>B<,>\n"
17168 "B<                  char **>I<domain>B<, char *>I<buf>B<, int >I<buflen>B<);>\n"
17169
17170 #. type: Plain text
17171 #: build/C/man3/setnetgrent.3:24
17172 #, no-wrap
17173 msgid ""
17174 "B<int innetgr(const char *>I<netgroup>B<, const char *>I<host>B<,>\n"
17175 "B<            const char *>I<user>B<, const char *>I<domain>B<);>\n"
17176 msgstr ""
17177 "B<int innetgr(const char *>I<netgroup>B<, const char *>I<host>B<,>\n"
17178 "B<            const char *>I<user>B<, const char *>I<domain>B<);>\n"
17179
17180 #. type: Plain text
17181 #: build/C/man3/setnetgrent.3:38
17182 msgid ""
17183 "B<setnetgrent>(), B<endnetgrent>(), B<getnetgrent>(), B<getnetgrent_r>(), "
17184 "B<innetgr>(): _BSD_SOURCE || _SVID_SOURCE"
17185 msgstr ""
17186 "B<setnetgrent>(), B<endnetgrent>(), B<getnetgrent>(), B<getnetgrent_r>(), "
17187 "B<innetgr>(): _BSD_SOURCE || _SVID_SOURCE"
17188
17189 #. type: Plain text
17190 #: build/C/man3/setnetgrent.3:52
17191 msgid ""
17192 "The I<netgroup> is a SunOS invention.  A netgroup database is a list of "
17193 "string triples (I<hostname>, I<username>, I<domainname>)  or other netgroup "
17194 "names.  Any of the elements in a triple can be empty, which means that "
17195 "anything matches.  The functions described here allow access to the netgroup "
17196 "databases.  The file I</etc/nsswitch.conf> defines what database is searched."
17197 msgstr ""
17198 "I<netgroup> は SunOS で考案されたものである。ネットグループのデータベースの "
17199 "エントリは、 3 つの文字列のリスト (I<hostname>, I<username>, I<domainname>)  "
17200 "もしくはネットグループ名である。 前記のリストの各要素は空であってもよい。 空"
17201 "は何とでも一致することを意味する。 本ページで説明する関数を使うことで、ネット"
17202 "グループのデータベースに アクセスすることができる。どのデータベースが検索され"
17203 "るかは I</etc/nsswitch.conf> ファイルで定義されている。"
17204
17205 #. type: Plain text
17206 #: build/C/man3/setnetgrent.3:72
17207 msgid ""
17208 "The B<setnetgrent>()  call defines the netgroup that will be searched by "
17209 "subsequent B<getnetgrent>()  calls.  The B<getnetgrent>()  function "
17210 "retrieves the next netgroup entry, and returns pointers in I<host>, I<user>, "
17211 "I<domain>.  A NULL pointer means that the corresponding entry matches any "
17212 "string.  The pointers are valid only as long as there is no call to other "
17213 "netgroup-related functions.  To avoid this problem you can use the GNU "
17214 "function B<getnetgrent_r>()  that stores the strings in the supplied "
17215 "buffer.  To free all allocated buffers use B<endnetgrent>()."
17216 msgstr ""
17217 "B<setnetgrent>()  コールは、この後で呼ばれる B<getnetgrent>()  コールが検索す"
17218 "るネットグループを定める。 B<getnetgrent>()  関数はネットグループの次のエント"
17219 "リを取得し、 I<host>, I<user>, I<domain> にポインタを入れて返る。 NULL ポイン"
17220 "タは、対応するエントリがどんな文字列とも一致することを意味する。 得られたポイ"
17221 "ンタは、ネットグループ関係の関数のいずれかが呼ばれるまでの 間だけ有効である。"
17222 "この問題を避けるためには GNU 拡張の関数 B<getnetgrent_r>()  を使うとよい。こ"
17223 "の関数は呼び出し側が用意したバッファに 文字列を格納する。割り当て済のバッファ"
17224 "を全て解放するには B<endnetgrent>()  を使用する。"
17225
17226 #. type: Plain text
17227 #: build/C/man3/setnetgrent.3:81
17228 msgid ""
17229 "In most cases you only want to check if the triplet (I<hostname>, "
17230 "I<username>, I<domainname>)  is a member of a netgroup.  The function "
17231 "B<innetgr>()  can be used for this without calling the above three "
17232 "functions.  Again, a NULL pointer is a wildcard and matches any string.  The "
17233 "function is thread-safe."
17234 msgstr ""
17235 "ほとんどの場合、 (I<hostname>, I<username>, I<domainname>)  の3要素の組がネッ"
17236 "トグループのメンバーかどうかを確認したいだけであろう。 B<innetgr>()  関数を使"
17237 "うと、上記の3つの関数を呼び出さずにこの目的を達成できる。 もう一度書いておく"
17238 "が、NULL ポインタはワイルドカードであり、 あらゆる文字列と一致する。この関数"
17239 "はスレッドセーフである。"
17240
17241 #. type: Plain text
17242 #: build/C/man3/setnetgrent.3:83
17243 msgid "These functions return 1 on success and 0 for failure."
17244 msgstr "これらの関数は成功すると 1 を、失敗すると 0 を返す。"
17245
17246 #. type: Plain text
17247 #: build/C/man3/setnetgrent.3:85
17248 msgid "I</etc/netgroup>"
17249 msgstr "I</etc/netgroup>"
17250
17251 #.  getnetgrent_r() is on Solaris 8 and AIX 5.1, but not the BSDs.
17252 #. type: Plain text
17253 #: build/C/man3/setnetgrent.3:98
17254 msgid ""
17255 "These functions are not in POSIX.1-2001, but B<setnetgrent>(), B<endnetgrent>"
17256 "(), B<getnetgrent>(), and B<innetgr>()  are available on most UNIX systems.  "
17257 "B<getnetgrent_r>()  is not widely available on other systems."
17258 msgstr ""
17259 "これらの関数は POSIX.1-2001 にはないが、 setnetgrent (), endnetgrent (), "
17260 "getnetgrent (), innetgr ()  はほとんどの UNIX システムで利用可能である。 "
17261 "B<getnetgrent_r>()  は広く他のシステムで利用できるわけではない。"
17262
17263 #. type: Plain text
17264 #: build/C/man3/setnetgrent.3:102
17265 msgid "In the BSD implementation, B<setnetgrent>()  returns void."
17266 msgstr "BSD の実装では B<setnetgrent>()  は void を返す。"
17267
17268 #. type: Plain text
17269 #: build/C/man3/setnetgrent.3:106
17270 msgid "B<sethostent>(3), B<setprotoent>(3), B<setservent>(3)"
17271 msgstr "B<sethostent>(3), B<setprotoent>(3), B<setservent>(3)"
17272
17273 #. type: TH
17274 #: build/C/man2/shutdown.2:38
17275 #, no-wrap
17276 msgid "SHUTDOWN"
17277 msgstr "SHUTDOWN"
17278
17279 #. type: Plain text
17280 #: build/C/man2/shutdown.2:41
17281 msgid "shutdown - shut down part of a full-duplex connection"
17282 msgstr "shutdown - 全二重接続の一部を閉じる"
17283
17284 #. type: Plain text
17285 #: build/C/man2/shutdown.2:45
17286 msgid "B<int shutdown(int >I<sockfd>B<, int >I<how>B<);>"
17287 msgstr "B<int shutdown(int >I<sockfd>B<, int >I<how>B<);>"
17288
17289 #. type: Plain text
17290 #: build/C/man2/shutdown.2:67
17291 msgid ""
17292 "The B<shutdown>()  call causes all or part of a full-duplex connection on "
17293 "the socket associated with I<sockfd> to be shut down.  If I<how> is "
17294 "B<SHUT_RD>, further receptions will be disallowed.  If I<how> is B<SHUT_WR>, "
17295 "further transmissions will be disallowed.  If I<how> is B<SHUT_RDWR>, "
17296 "further receptions and transmissions will be disallowed."
17297 msgstr ""
17298 "B<shutdown>()  は、 I<sockfd> に関連づけられているソケットによる全二重接続 "
17299 "(full-duplex connection)  の一部または全てを閉じる。 I<how> が B<SHUT_RD> な"
17300 "らば、それ以降の受信を禁止する。 I<how> が B<SHUT_WR> ならば、それ以降の送信"
17301 "を禁止する。 I<how> が B<SHUT_RDWR> ならば、それ以降の送受信を禁止する。"
17302
17303 #. type: Plain text
17304 #: build/C/man2/shutdown.2:77
17305 msgid "I<sockfd> is not a valid descriptor."
17306 msgstr "I<sockfd> が有効なディスクリプターでない。"
17307
17308 #. type: Plain text
17309 #: build/C/man2/shutdown.2:80
17310 msgid "The specified socket is not connected."
17311 msgstr "指定されたソケットは接続されていない。"
17312
17313 #. type: Plain text
17314 #: build/C/man2/shutdown.2:84
17315 msgid "I<sockfd> is a file, not a socket."
17316 msgstr "I<sockfd> がソケットでなくファイルである。"
17317
17318 #. type: Plain text
17319 #: build/C/man2/shutdown.2:88
17320 msgid ""
17321 "POSIX.1-2001, 4.4BSD (the B<shutdown>()  function call first appeared in "
17322 "4.2BSD)."
17323 msgstr ""
17324 "POSIX.1-2001, 4.4BSD (B<shutdown>()  関数コールは 4.2BSD で初めて登場した)。"
17325
17326 #. type: Plain text
17327 #: build/C/man2/shutdown.2:97
17328 msgid ""
17329 "The constants B<SHUT_RD>, B<SHUT_WR>, B<SHUT_RDWR> have the value 0, 1, 2, "
17330 "respectively, and are defined in I<E<lt>sys/socket.hE<gt>> since "
17331 "glibc-2.1.91."
17332 msgstr ""
17333 "B<SHUT_RD>, B<SHUT_WR>, B<SHUT_RDWR> の各定数 (それぞれ 0, 1, 2 の値を持つ) "
17334 "は glibc-2.1.91 以降、 I<E<lt>sys/socket.hE<gt>> で定義されている。"
17335
17336 #. type: Plain text
17337 #: build/C/man2/shutdown.2:101
17338 msgid "B<connect>(2), B<socket>(2), B<socket>(7)"
17339 msgstr "B<connect>(2), B<socket>(2), B<socket>(7)"
17340
17341 #. type: TH
17342 #: build/C/man7/tcp.7:16
17343 #, no-wrap
17344 msgid "TCP"
17345 msgstr "TCP"
17346
17347 #. type: Plain text
17348 #: build/C/man7/tcp.7:19
17349 msgid "tcp - TCP protocol"
17350 msgstr "tcp - TCP プロトコル"
17351
17352 #. type: Plain text
17353 #: build/C/man7/tcp.7:25
17354 msgid "B<#include E<lt>netinet/tcp.hE<gt>>"
17355 msgstr "B<#include E<lt>netinet/tcp.hE<gt>>"
17356
17357 #. type: Plain text
17358 #: build/C/man7/tcp.7:27
17359 msgid "B<tcp_socket = socket(AF_INET, SOCK_STREAM, 0);>"
17360 msgstr "B<tcp_socket = socket(AF_INET, SOCK_STREAM, 0);>"
17361
17362 #. type: Plain text
17363 #: build/C/man7/tcp.7:40
17364 msgid ""
17365 "This is an implementation of the TCP protocol defined in RFC\\ 793, RFC\\ "
17366 "1122 and RFC\\ 2001 with the NewReno and SACK extensions.  It provides a "
17367 "reliable, stream-oriented, full-duplex connection between two sockets on top "
17368 "of B<ip>(7), for both v4 and v6 versions.  TCP guarantees that the data "
17369 "arrives in order and retransmits lost packets.  It generates and checks a "
17370 "per-packet checksum to catch transmission errors.  TCP does not preserve "
17371 "record boundaries."
17372 msgstr ""
17373 "これは RFC\\ 793, RFC\\ 1122, RFC\\ 2001 で定義されている TCP プロトコルを "
17374 "NewReno 拡張と SACK 拡張を含めて実装したものである。 TCP は、 B<ip>(7)  上の"
17375 "二つのソケット間に、信頼性の高い、ストリーム指向の全二重 (full-duplex) 通信を"
17376 "提供する。 v4 と v6 の両方のバージョンの B<ip>(7)  に対応している。 TCP は、"
17377 "データが順序を守って到着すること、途中で失われたパケットが 再送されることを保"
17378 "証する。また、パケット単位にチェックサムを 生成、検査することで、転送エラーを"
17379 "検知する。 TCP はレコード境界 (record boundary) を保存しない。"
17380
17381 #. type: Plain text
17382 #: build/C/man7/tcp.7:59
17383 msgid ""
17384 "A newly created TCP socket has no remote or local address and is not fully "
17385 "specified.  To create an outgoing TCP connection use B<connect>(2)  to "
17386 "establish a connection to another TCP socket.  To receive new incoming "
17387 "connections, first B<bind>(2)  the socket to a local address and port and "
17388 "then call B<listen>(2)  to put the socket into the listening state.  After "
17389 "that a new socket for each incoming connection can be accepted using "
17390 "B<accept>(2).  A socket which has had B<accept>(2)  or B<connect>(2)  "
17391 "successfully called on it is fully specified and may transmit data.  Data "
17392 "cannot be transmitted on listening or not yet connected sockets."
17393 msgstr ""
17394 "新しく生成されたばかりの TCP ソケットは、 リモートアドレスかローカルアドレス"
17395 "がなく、 したがって詳細が完全に指定された状態ではない。 外部への TCP 接続を生"
17396 "成するには、 B<connect>(2)  を用いてもう一方の TCP ソケットへの接続を確立す"
17397 "る。 外部からの新たな接続を受けるには、まず B<bind>(2)  でソケットをローカル"
17398 "なアドレスとポートに結びつけ、次に B<listen>(2)  を呼んでソケットを接続待ち受"
17399 "け状態にする。 その後、到着した接続要求に対して B<accept>(2)  を用い、ソケッ"
17400 "トを新しく生成する。 B<accept>(2)  または B<connect>(2)  のコールが成功したソ"
17401 "ケットは、詳細が完全に指定された状態となり、 データのやりとりが可能となる。接"
17402 "続待ち受け状態の (listening) ソケットや、 接続 (connect) されていないソケット"
17403 "を通してデータをやりとりすることはできない。"
17404
17405 #. type: Plain text
17406 #: build/C/man7/tcp.7:79
17407 msgid ""
17408 "Linux supports RFC\\ 1323 TCP high performance extensions.  These include "
17409 "Protection Against Wrapped Sequence Numbers (PAWS), Window Scaling and "
17410 "Timestamps.  Window scaling allows the use of large (E<gt> 64K) TCP windows "
17411 "in order to support links with high latency or bandwidth.  To make use of "
17412 "them, the send and receive buffer sizes must be increased.  They can be set "
17413 "globally with the I</proc/sys/net/ipv4/tcp_wmem> and I</proc/sys/net/ipv4/"
17414 "tcp_rmem> files, or on individual sockets by using the B<SO_SNDBUF> and "
17415 "B<SO_RCVBUF> socket options with the B<setsockopt>(2)  call."
17416 msgstr ""
17417 "Linux は RFC\\ 1323 の TCP high performance 拡張をサポートしている。 これに"
17418 "は、Protection Against Wrapped Sequence Numbers (PAWS)、 ウィンドウスケーリン"
17419 "グ、タイムスタンプなどが含まれている。 ウィンドウスケーリングを利用すると、遅"
17420 "延または帯域の大きな接続で、 (64K 以上の) 巨大な TCP ウィンドウを用いることが"
17421 "可能となる。 これを用いるには、送受信のバッファサイズを大きくしなければならな"
17422 "い。 システム全体に対するバッファサイズの変更は、ファイル I</proc/sys/net/"
17423 "ipv4/tcp_wmem> と I</proc/sys/net/ipv4/tcp_rmem> を用いて行うことができる。 "
17424 "また、個々のソケットのみを大きくしたい場合には、 B<SO_SNDBUF> や "
17425 "B<SO_RCVBUF> ソケットオプションを用いて B<setsockopt>(2)  コールを用いて設定"
17426 "すればよい。"
17427
17428 #. type: Plain text
17429 #: build/C/man7/tcp.7:110
17430 msgid ""
17431 "The maximum sizes for socket buffers declared via the B<SO_SNDBUF> and "
17432 "B<SO_RCVBUF> mechanisms are limited by the values in the I</proc/sys/net/"
17433 "core/rmem_max> and I</proc/sys/net/core/wmem_max> files.  Note that TCP "
17434 "actually allocates twice the size of the buffer requested in the "
17435 "B<setsockopt>(2)  call, and so a succeeding B<getsockopt>(2)  call will not "
17436 "return the same size of buffer as requested in the B<setsockopt>(2)  call.  "
17437 "TCP uses the extra space for administrative purposes and internal kernel "
17438 "structures, and the I</proc> file values reflect the larger sizes compared "
17439 "to the actual TCP windows.  On individual connections, the socket buffer "
17440 "size must be set prior to the B<listen>(2)  or B<connect>(2)  calls in order "
17441 "to have it take effect.  See B<socket>(7)  for more information."
17442 msgstr ""
17443 "B<SO_SNDBUF> や B<SO_RCVBUF> のメカニズムで宣言されるソケットバッファの最大サ"
17444 "イズは、ファイル I</proc/sys/net/core/rmem_max> や I</proc/sys/net/core/"
17445 "wmem_max> で指定されたシステムとしての制限値を超えることはできない。 TCP は実"
17446 "際には B<setsockopt>(2)  コールが要求したバッファサイズの二倍を割り当てる。 "
17447 "そのため、この後で B<getsockopt>(2)  コールを行うと、 B<setsockopt>(2)  で要"
17448 "求したバッファサイズとは異なる値が返る。 TCP はこの余分な空間を、管理目的や"
17449 "カーネル内部の構造体に用いている。 I</proc> ファイルの値は、これらを反映し、"
17450 "実際の TCP ウィンドウよりも大きな値となる。 各接続におけるソケットのバッファ"
17451 "サイズ変更を有効にするには、 B<listen>(2)  や B<connect>(2)  コールの前に設定"
17452 "しなければならない。 より詳しい情報は B<socket>(7)  を見よ。"
17453
17454 #. type: Plain text
17455 #: build/C/man7/tcp.7:142
17456 msgid ""
17457 "TCP supports urgent data.  Urgent data is used to signal the receiver that "
17458 "some important message is part of the data stream and that it should be "
17459 "processed as soon as possible.  To send urgent data specify the B<MSG_OOB> "
17460 "option to B<send>(2).  When urgent data is received, the kernel sends a "
17461 "B<SIGURG> signal to the process or process group that has been set as the "
17462 "socket \"owner\" using the B<SIOCSPGRP> or B<FIOSETOWN> ioctls (or the "
17463 "POSIX.1-2001-specified B<fcntl>(2)  B<F_SETOWN> operation).  When the "
17464 "B<SO_OOBINLINE> socket option is enabled, urgent data is put into the normal "
17465 "data stream (a program can test for its location using the B<SIOCATMARK> "
17466 "ioctl described below), otherwise it can be only received when the "
17467 "B<MSG_OOB> flag is set for B<recv>(2)  or B<recvmsg>(2)."
17468 msgstr ""
17469 "TCP は緊急データ (urgent data) をサポートしている。緊急データは 何らかの重要"
17470 "なメッセージがデータストリームに含まれていること、 そのデータをできるだけ早く"
17471 "処理すべきこと、を受信者に伝えるために用いられる。 緊急データを送るには、 "
17472 "B<send>(2)  に B<MSG_OOB> オプションを指定する。 緊急データを受信すると、カー"
17473 "ネルは B<SIGURG> シグナルを送信する。送信先は B<SIOCSPGRP> や B<FIOSETOWN> "
17474 "ioctl (や POSIX.1-2001 で規定されている B<fcntl>(2)  B<F_SETOWN> 操作) を用い"
17475 "てそのソケットの「所有者」として設定された プロセスかプロセスグループであ"
17476 "る。 B<SO_OOBINLINE> ソケットオプションが有効になっていると、緊急データは 通"
17477 "常のデータストリームの中に混ぜて送られる (プログラムは下記の B<SIOCATMARK> "
17478 "ioctl を使って緊急データの場所を調べることができる)。 無効になっている場合に"
17479 "は、 B<recv>(2)  や B<recvmsg>(2)  で B<MSG_OOB> フラグがセットされているとき"
17480 "にのみ、緊急データを受信できる。"
17481
17482 #. type: Plain text
17483 #: build/C/man7/tcp.7:150
17484 msgid ""
17485 "Linux 2.4 introduced a number of changes for improved throughput and "
17486 "scaling, as well as enhanced functionality.  Some of these features include "
17487 "support for zero-copy B<sendfile>(2), Explicit Congestion Notification, new "
17488 "management of TIME_WAIT sockets, keep-alive socket options and support for "
17489 "Duplicate SACK extensions."
17490 msgstr ""
17491 "Linux 2.4 では多くの変更がなされ、 スループットとスケーリングが向上し、機能も"
17492 "高まった。 これらの機能には、ゼロコピー B<sendfile>(2)、 Explicit Congestion "
17493 "Notification、 TIME_WAIT ソケットの新しい管理法、 keep-alive ソケットオプショ"
17494 "ン、 Duplicate SACK 拡張のサポートなどがある。"
17495
17496 #. type: SS
17497 #: build/C/man7/tcp.7:150
17498 #, no-wrap
17499 msgid "Address Formats"
17500 msgstr "アドレスのフォーマット"
17501
17502 #. type: Plain text
17503 #: build/C/man7/tcp.7:159
17504 msgid ""
17505 "TCP is built on top of IP (see B<ip>(7)).  The address formats defined by "
17506 "B<ip>(7)  apply to TCP.  TCP only supports point-to-point communication; "
17507 "broadcasting and multicasting are not supported."
17508 msgstr ""
17509 "TCP は IP の上層に構築されている (B<ip>(7)  を参照)。 B<ip>(7)  に定義されて"
17510 "いるアドレスフォーマットは TCP にも適用される。 TCP は point-to-point の通信"
17511 "だけをサポートする。 ブロードキャストやマルチキャストはサポートしない。"
17512
17513 #. type: Plain text
17514 #: build/C/man7/tcp.7:171
17515 msgid ""
17516 "System-wide TCP parameter settings can be accessed by files in the directory "
17517 "I</proc/sys/net/ipv4/>.  In addition, most IP I</proc> interfaces also apply "
17518 "to TCP; see B<ip>(7).  Variables described as I<Boolean> take an integer "
17519 "value, with a nonzero value (\"true\") meaning that the corresponding option "
17520 "is enabled, and a zero value (\"false\")  meaning that the option is "
17521 "disabled."
17522 msgstr ""
17523 "システム全体に対する TCP パラメータの設定には、 I</proc/sys/net/ipv4/> ディレ"
17524 "クトリ内のファイルによりアクセスできる。 さらに、IP に関連する I</proc> イン"
17525 "タフェースのほとんどは TCP についても適用される。 B<ip>(7)  を参照のこと。 "
17526 "I<Boolean> は整数値で、 0 以外の値 (\"true\") は対応するオプションが有効、 0 "
17527 "値 (\"false\") は無効、であることを意味する。"
17528
17529 #. type: TP
17530 #: build/C/man7/tcp.7:171
17531 #, no-wrap
17532 msgid "I<tcp_abc> (Integer; default: 0; since Linux 2.6.15)"
17533 msgstr "I<tcp_abc> (Integer; default: 0; Linux 2.6.15 以降)"
17534
17535 #.  The following is from 2.6.28-rc4: Documentation/networking/ip-sysctl.txt
17536 #. type: Plain text
17537 #: build/C/man7/tcp.7:179
17538 msgid ""
17539 "Control the Appropriate Byte Count (ABC), defined in RFC 3465.  ABC is a way "
17540 "of increasing the congestion window (I<cwnd>)  more slowly in response to "
17541 "partial acknowledgments.  Possible values are:"
17542 msgstr ""
17543 "RFC 3465 で定義されている Appropriate Byte Count (ABC) を制御する。 ABC は、"
17544 "部分的な ACK に応じた輻輳ウィンドウ (I<cwnd>)  の増加をより緩やかにする方法で"
17545 "ある。 以下の値を指定できる。"
17546
17547 #. type: IP
17548 #: build/C/man7/tcp.7:180 build/C/man7/tcp.7:349 build/C/man7/tcp.7:370
17549 #: build/C/man7/tcp.7:514
17550 #, no-wrap
17551 msgid "0"
17552 msgstr "0"
17553
17554 #. type: Plain text
17555 #: build/C/man7/tcp.7:184
17556 msgid "increase I<cwnd> once per acknowledgment (no ABC)"
17557 msgstr "ACK を受信する毎に I<cwnd> を増やす (ABC なし)。"
17558
17559 #. type: IP
17560 #: build/C/man7/tcp.7:184 build/C/man7/tcp.7:351 build/C/man7/tcp.7:377
17561 #: build/C/man7/tcp.7:516
17562 #, no-wrap
17563 msgid "1"
17564 msgstr "1"
17565
17566 #. type: Plain text
17567 #: build/C/man7/tcp.7:188
17568 msgid "increase I<cwnd> once per acknowledgment of full sized segment"
17569 msgstr "フルサイズのセグメントの ACK を受信する毎に I<cwnd> を増やす。"
17570
17571 #. type: IP
17572 #: build/C/man7/tcp.7:188 build/C/man7/tcp.7:353 build/C/man7/tcp.7:384
17573 #: build/C/man7/tcp.7:518
17574 #, no-wrap
17575 msgid "2"
17576 msgstr "2"
17577
17578 #. type: Plain text
17579 #: build/C/man7/tcp.7:193
17580 msgid ""
17581 "allow increase I<cwnd> by two if acknowledgment is of two segments to "
17582 "compensate for delayed acknowledgments."
17583 msgstr ""
17584 "ACK が遅延 ACK (delayed acknowledgment) を相殺するための 2 セグメントに 対す"
17585 "る ACK の場合に、 I<cwnd> を 2 増やすことができる。"
17586
17587 #. type: TP
17588 #: build/C/man7/tcp.7:194
17589 #, no-wrap
17590 msgid "I<tcp_abort_on_overflow> (Boolean; default: disabled; since Linux 2.4)"
17591 msgstr "I<tcp_abort_on_overflow> (Boolean; default: disabled; Linux 2.4 以降)"
17592
17593 #.  Since 2.3.41
17594 #. type: Plain text
17595 #: build/C/man7/tcp.7:206
17596 msgid ""
17597 "Enable resetting connections if the listening service is too slow and unable "
17598 "to keep up and accept them.  It means that if overflow occurred due to a "
17599 "burst, the connection will recover.  Enable this option I<only> if you are "
17600 "really sure that the listening daemon cannot be tuned to accept connections "
17601 "faster.  Enabling this option can harm the clients of your server."
17602 msgstr ""
17603 "接続を待ち受けているサービスが遅すぎて、受信についていけない場合に、 接続をリ"
17604 "セットできるようにする。 これを用いると、バーストによってオーバーフローが起"
17605 "こったときに、 接続を回復できるようになる。このオプションを用いるのは、 受信"
17606 "デーモンを高速化できない場合に「限定する」こと。 このオプションを用いると、そ"
17607 "のサーバに接続しているクライアント にとっては害になることがある。"
17608
17609 #. type: TP
17610 #: build/C/man7/tcp.7:206
17611 #, no-wrap
17612 msgid "I<tcp_adv_win_scale> (integer; default: 2; since Linux 2.4)"
17613 msgstr "I<tcp_adv_win_scale> (integer; default: 2; Linux 2.4 以降)"
17614
17615 #.  Since 2.4.0-test7
17616 #. type: Plain text
17617 #: build/C/man7/tcp.7:218
17618 msgid ""
17619 "Count buffering overhead as I<bytes/2^tcp_adv_win_scale>, if "
17620 "I<tcp_adv_win_scale> is greater than 0; or I<bytes-bytes/2^(-"
17621 "tcp_adv_win_scale)>, if I<tcp_adv_win_scale> is less than or equal to zero."
17622 msgstr ""
17623 "バッファリングのオーバーヘッドの計算方法を、 I<tcp_adv_win_scale> が正の場合"
17624 "は I<bytes/2^tcp_adv_win_scale> に、 I<tcp_adv_win_scale> が負か 0 の場合は "
17625 "I<bytes-bytes/2^(-tcp_adv_win_scale)> とする。"
17626
17627 #. type: Plain text
17628 #: build/C/man7/tcp.7:231
17629 msgid ""
17630 "The socket receive buffer space is shared between the application and "
17631 "kernel.  TCP maintains part of the buffer as the TCP window, this is the "
17632 "size of the receive window advertised to the other end.  The rest of the "
17633 "space is used as the \"application\" buffer, used to isolate the network "
17634 "from scheduling and application latencies.  The I<tcp_adv_win_scale> default "
17635 "value of 2 implies that the space used for the application buffer is one "
17636 "fourth that of the total."
17637 msgstr ""
17638 "ソケットの受信バッファ空間はアプリケーションとカーネルで共有される。 TCP は"
17639 "バッファの一部を TCP ウィンドウとして管理し、 これを受信ウィンドウとして接続"
17640 "の他端に通知する。 空間の残りは「アプリケーション」バッファとして用いられ、 "
17641 "スケジューリングやアプリケーションの遅延からネットワークを隔離する。 "
17642 "I<tcp_adv_win_scale> のデフォルト値は 2 であり、 この場合アプリケーションバッ"
17643 "ファは全体の 1/4 になる。"
17644
17645 #. type: TP
17646 #: build/C/man7/tcp.7:231
17647 #, no-wrap
17648 msgid "I<tcp_allowed_congestion_control> (String; default: see text; since Linux 2.4.20)"
17649 msgstr "I<tcp_allowed_congestion_control> (String; default: see text; Linux 2.4.20 以降)"
17650
17651 #.  The following is from 2.6.28-rc4: Documentation/networking/ip-sysctl.txt
17652 #.  FIXME How are the items in this delimited? Null bytes, spaces, commas?
17653 #. type: Plain text
17654 #: build/C/man7/tcp.7:243
17655 msgid ""
17656 "Show/set the congestion control algorithm choices available to unprivileged "
17657 "processes (see the description of the B<TCP_CONGESTION> socket option).  The "
17658 "list is a subset of those listed in I<tcp_available_congestion_control>.  "
17659 "The default value for this list is \"reno\" plus the default setting of "
17660 "I<tcp_congestion_control>."
17661 msgstr ""
17662 "非特権プロセスで利用できる輻輳制御アルゴリズムの選択肢を表示/設定する "
17663 "(B<TCP_CONGESTION> ソケットオプションの説明を参照のこと)。 このリストは "
17664 "I<tcp_available_congestion_control> で表示されるリストの部分集合となる。 この"
17665 "リストのデフォルト値は、\"reno\" と I<tcp_congestion_control> のデフォルト設"
17666 "定をあわせたものとなる。"
17667
17668 #. type: TP
17669 #: build/C/man7/tcp.7:243
17670 #, no-wrap
17671 msgid "I<tcp_available_congestion_control> (String; read-only; since Linux 2.4.20)"
17672 msgstr "I<tcp_available_congestion_control> (String; read-only; Linux 2.4.20 以降)"
17673
17674 #.  The following is from 2.6.28-rc4: Documentation/networking/ip-sysctl.txt
17675 #.  FIXME How are the items in this delimited? Null bytes, spaces, commas?
17676 #. type: Plain text
17677 #: build/C/man7/tcp.7:253
17678 msgid ""
17679 "Show a list of the congestion-control algorithms that are registered.  This "
17680 "list is a limiting set for the list in I<tcp_allowed_congestion_control>.  "
17681 "More congestion-control algorithms may be available as modules, but not "
17682 "loaded."
17683 msgstr ""
17684 "登録されている輻輳制御アルゴリズムのリストを表示する。 このリストに載っている"
17685 "ものだけが、 I<tcp_allowed_congestion_control> に表示される。 他の輻輳制御ア"
17686 "ルゴリズムがモジュールとして利用可能だが、 モジュールがロードされていないこと"
17687 "もある。"
17688
17689 #. type: TP
17690 #: build/C/man7/tcp.7:253
17691 #, no-wrap
17692 msgid "I<tcp_app_win> (integer; default: 31; since Linux 2.4)"
17693 msgstr "I<tcp_app_win> (integer; default: 31; Linux 2.4 以降)"
17694
17695 #.  Since 2.4.0-test7
17696 #. type: Plain text
17697 #: build/C/man7/tcp.7:258
17698 msgid ""
17699 "This variable defines how many bytes of the TCP window are reserved for "
17700 "buffering overhead."
17701 msgstr ""
17702 "この変数は、TCP ウィンドウの何バイト分を バッファリングのオーバーヘッド用に予"
17703 "約するかを指定する。"
17704
17705 #.  The following is from 2.6.28-rc4: Documentation/networking/ip-sysctl.txt
17706 #. type: Plain text
17707 #: build/C/man7/tcp.7:264
17708 msgid ""
17709 "A maximum of (I<window/2^tcp_app_win>, mss) bytes in the window are reserved "
17710 "for the application buffer.  A value of 0 implies that no amount is reserved."
17711 msgstr ""
17712 "そのウィンドウの I<window/2^tcp_app_win> と mss の大きいほう (バイト単位)  が"
17713 "アプリケーションバッファとして予約される。 0 を指定すると一切予約領域を取らな"
17714 "い。"
17715
17716 #. type: TP
17717 #: build/C/man7/tcp.7:264
17718 #, no-wrap
17719 msgid "I<tcp_base_mss> (Integer; default: 512; since Linux 2.6.17)"
17720 msgstr "I<tcp_base_mss> (Integer; default: 512; Linux 2.6.17 以降)"
17721
17722 #.  The following is from 2.6.12: Documentation/networking/ip-sysctl.txt
17723 #. type: Plain text
17724 #: build/C/man7/tcp.7:273
17725 msgid ""
17726 "The initial value of I<search_low> to be used by the packetization layer "
17727 "Path MTU discovery (MTU probing).  If MTU probing is enabled, this is the "
17728 "initial MSS used by the connection."
17729 msgstr ""
17730 "パケット化レイヤの Path MTU discovery (MTU probing) で、 I<search_low> の初期"
17731 "値と使用される値。 MTU probing が有効な場合、この値はその接続の MSS の初期値"
17732 "となる。"
17733
17734 #. type: TP
17735 #: build/C/man7/tcp.7:273
17736 #, no-wrap
17737 msgid "I<tcp_bic> (Boolean; default: disabled; Linux 2.4.27/2.6.6 to 2.6.13)"
17738 msgstr "I<tcp_bic> (Boolean; default: disabled; Linux 2.4.27/2.6.6 から 2.6.13 まで)"
17739
17740 #.  The following is from 2.6.12: Documentation/networking/ip-sysctl.txt
17741 #. type: Plain text
17742 #: build/C/man7/tcp.7:287
17743 msgid ""
17744 "Enable BIC TCP congestion control algorithm.  BIC-TCP is a sender-side only "
17745 "change that ensures a linear RTT fairness under large windows while offering "
17746 "both scalability and bounded TCP-friendliness.  The protocol combines two "
17747 "schemes called additive increase and binary search increase.  When the "
17748 "congestion window is large, additive increase with a large increment ensures "
17749 "linear RTT fairness as well as good scalability.  Under small congestion "
17750 "windows, binary search increase provides TCP friendliness."
17751 msgstr ""
17752 "BIC TCP 輻輳制御アルゴリズムを有効にする。 BIC-TCP は送信側のみの変更で、 ス"
17753 "ケーラビリティと TCP 親和性 (friendliness) の両方を提供しつつ、 大きなウィン"
17754 "ドウの下での線形な RTT 公平性を保証するものである。 このプロトコルでは "
17755 "additive increase (追加的な増加) と binary search increase (二分探索増加) と"
17756 "いわれる二つの仕組みを 組み合わせている。輻輳ウィンドウが大きいときは、増分の"
17757 "大きい additive increase により、スケーラビリティを確保しながら 線形な RTT 公"
17758 "平性を保証する。 輻輳ウィンドウが小さいときには binary search increase によ"
17759 "り TCP 親和性を達成している。"
17760
17761 #. type: TP
17762 #: build/C/man7/tcp.7:287
17763 #, no-wrap
17764 msgid "I<tcp_bic_low_window> (integer; default: 14; Linux 2.4.27/2.6.6 to 2.6.13)"
17765 msgstr "I<tcp_bic_low_window> (integer; default: 14; Linux 2.4.27/2.6.6 以降 2.6.13 まで)"
17766
17767 #.  The following is from 2.6.12: Documentation/networking/ip-sysctl.txt
17768 #. type: Plain text
17769 #: build/C/man7/tcp.7:294
17770 msgid ""
17771 "Set the threshold window (in packets) where BIC TCP starts to adjust the "
17772 "congestion window.  Below this threshold BIC TCP behaves the same as the "
17773 "default TCP Reno."
17774 msgstr ""
17775 "BIC TCP が輻輳ウィンドウの調整を開始する閾値ウィンドウ (パケット単位)  を設定"
17776 "する。この閾値を下回る場合、BIC TCP はデフォルトの TCP Reno と 同じ動作をす"
17777 "る。"
17778
17779 #. type: TP
17780 #: build/C/man7/tcp.7:294
17781 #, no-wrap
17782 msgid "I<tcp_bic_fast_convergence> (Boolean; default: enabled; Linux 2.4.27/2.6.6 to 2.6.13)"
17783 msgstr "I<tcp_bic_fast_convergence> (Boolean; default: enabled; Linux 2.4.27/2.6.6 以降 2.6.13 まで)"
17784
17785 #. type: Plain text
17786 #: build/C/man7/tcp.7:298
17787 msgid ""
17788 "Force BIC TCP to more quickly respond to changes in congestion window.  "
17789 "Allows two flows sharing the same connection to converge more rapidly."
17790 msgstr ""
17791 "BIC TCP が輻輳ウィンドウの変化により速く反応するようにする。 同じコネクション"
17792 "を共有する二つのフローが一つにまとまるのを より速く行うようにする。"
17793
17794 #. type: TP
17795 #: build/C/man7/tcp.7:298
17796 #, no-wrap
17797 msgid "I<tcp_congestion_control> (String; default: see text; since Linux 2.4.13)"
17798 msgstr "I<tcp_congestion_control> (String; default: 説明参照; Linux 2.4.13 以降)"
17799
17800 #.  The following is from 2.6.28-rc4: Documentation/networking/ip-sysctl.txt
17801 #. type: Plain text
17802 #: build/C/man7/tcp.7:305
17803 msgid ""
17804 "Set the default congestion-control algorithm to be used for new "
17805 "connections.  The algorithm \"reno\" is always available, but additional "
17806 "choices may be available depending on kernel configuration.  The default "
17807 "value for this file is set as part of kernel configuration."
17808 msgstr ""
17809 "新規の接続で使用されるデフォルトの輻輳制御アルゴリズムを設定する。 \"reno\" "
17810 "アルゴリズムは常に利用可能だが、 カーネル設定次第では別の選択肢が利用できるこ"
17811 "ともある。 このファイルのデフォルト値はカーネル設定の一つとして設定される。"
17812
17813 #. type: TP
17814 #: build/C/man7/tcp.7:305
17815 #, no-wrap
17816 msgid "I<tcp_dma_copybreak> (integer; default: 4096; since Linux 2.6.24)"
17817 msgstr "I<tcp_dma_copybreak> (integer; default: 4096; Linux 2.6.24 以降)"
17818
17819 #. type: Plain text
17820 #: build/C/man7/tcp.7:312
17821 msgid ""
17822 "Lower limit, in bytes, of the size of socket reads that will be offloaded to "
17823 "a DMA copy engine, if one is present in the system and the kernel was "
17824 "configured with the B<CONFIG_NET_DMA> option."
17825 msgstr ""
17826 "システムに DMA コピーエンジンが存在し、カーネルで B<CONFIG_NET_DMA> オプショ"
17827 "ンが有効になっている場合に、 DMA コピーエンジンにオフロードされるソケットの読"
17828 "み込みサイズの下限値 (バイト単位)。"
17829
17830 #. type: TP
17831 #: build/C/man7/tcp.7:312
17832 #, no-wrap
17833 msgid "I<tcp_dsack> (Boolean; default: enabled; since Linux 2.4)"
17834 msgstr "I<tcp_dsack> (Boolean; default: enabled; Linux 2.4 以降)"
17835
17836 #.  Since 2.4.0-test7
17837 #. type: Plain text
17838 #: build/C/man7/tcp.7:316
17839 msgid "Enable RFC\\ 2883 TCP Duplicate SACK support."
17840 msgstr "RFC\\ 2883 の TCP Duplicate SACK のサポートを有効にする。"
17841
17842 #. type: TP
17843 #: build/C/man7/tcp.7:316
17844 #, no-wrap
17845 msgid "I<tcp_ecn> (Boolean; default: disabled; since Linux 2.4)"
17846 msgstr "I<tcp_ecn> (Boolean; default: disabled; Linux 2.4 以降)"
17847
17848 #.  Since 2.4.0-test7
17849 #. type: Plain text
17850 #: build/C/man7/tcp.7:323
17851 msgid ""
17852 "Enable RFC\\ 2884 Explicit Congestion Notification.  When enabled, "
17853 "connectivity to some destinations could be affected due to older, "
17854 "misbehaving routers along the path causing connections to be dropped."
17855 msgstr ""
17856 "RFC\\ 2884 の Explicit Congestion Notification を有効にする。 これを有効にす"
17857 "ると、間違った振舞いをする古いルータが 経路の途中にあるような接続先に対して影"
17858 "響が生じ、 場合によっては接続が落ちるかもしれない。"
17859
17860 #. type: TP
17861 #: build/C/man7/tcp.7:323
17862 #, no-wrap
17863 msgid "I<tcp_fack> (Boolean; default: enabled; since Linux 2.2)"
17864 msgstr "I<tcp_fack> (Boolean; default: enabled; Linux 2.2 以降)"
17865
17866 #.  Since 2.1.92
17867 #. type: Plain text
17868 #: build/C/man7/tcp.7:327
17869 msgid "Enable TCP Forward Acknowledgement support."
17870 msgstr "TCP Forward Acknowledgement のサポートを有効にする。"
17871
17872 #. type: TP
17873 #: build/C/man7/tcp.7:327
17874 #, no-wrap
17875 msgid "I<tcp_fin_timeout> (integer; default: 60; since Linux 2.2)"
17876 msgstr "I<tcp_fin_timeout> (integer; default: 60; Linux 2.2 以降)"
17877
17878 #.  Since 2.1.53
17879 #.  The following is from 2.6.12: Documentation/networking/ip-sysctl.txt
17880 #. type: Plain text
17881 #: build/C/man7/tcp.7:337
17882 msgid ""
17883 "This specifies how many seconds to wait for a final FIN packet before the "
17884 "socket is forcibly closed.  This is strictly a violation of the TCP "
17885 "specification, but required to prevent denial-of-service attacks.  In Linux "
17886 "2.2, the default value was 180."
17887 msgstr ""
17888 "ソケットを強制的にクローズする前に、 最後の FIN パケットを待つ時間を秒単位で"
17889 "指定する。 これは厳密には TCP の仕様を満たしていないが、 DoS 攻撃 (denial of "
17890 "service attack) から身を守るために必要である。 Linux 2.2 ではデフォルト値は "
17891 "180 であった。"
17892
17893 #. type: TP
17894 #: build/C/man7/tcp.7:337
17895 #, no-wrap
17896 msgid "I<tcp_frto> (integer; default: 0; since Linux 2.4.21/2.6)"
17897 msgstr "I<tcp_frto> (integer; default: 0; Linux 2.4.21/2.6 以降)"
17898
17899 #.  Since 2.4.21/2.5.43
17900 #. type: Plain text
17901 #: build/C/man7/tcp.7:346
17902 msgid ""
17903 "Enable F-RTO, an enhanced recovery algorithm for TCP retransmission timeouts "
17904 "(RTOs).  It is particularly beneficial in wireless environments where packet "
17905 "loss is typically due to random radio interference rather than intermediate "
17906 "router congestion.  See RFC 4138 for more details."
17907 msgstr ""
17908 "F-RTO を有効にする。F-RTO は TCP 再送タイムアウト (RTO) からの 復旧性能を向上"
17909 "させたアルゴリズムである。 この機能は無線環境で特に効果を発揮する。 無線環境"
17910 "では、通常は、中間ルータの輻輳ではなくランダムな無線の干渉 によりパケットロス"
17911 "が発生する。 詳細は RFC\\ 4138 を参照。"
17912
17913 #. type: Plain text
17914 #: build/C/man7/tcp.7:348
17915 msgid "This file can have one of the following values:"
17916 msgstr "このファイルは以下のいずれかの値を取ることができる。"
17917
17918 #. type: Plain text
17919 #: build/C/man7/tcp.7:351
17920 msgid "Disabled."
17921 msgstr "F-RTO を無効にする。"
17922
17923 #. type: Plain text
17924 #: build/C/man7/tcp.7:353
17925 msgid "The basic version F-RTO algorithm is enabled."
17926 msgstr "基本版の F-RTO アルゴリズムを有効にする。"
17927
17928 #. type: Plain text
17929 #: build/C/man7/tcp.7:358
17930 msgid ""
17931 "Enable SACK-enhanced F-RTO if flow uses SACK.  The basic version can be used "
17932 "also when SACK is in use though in that case scenario(s) exists where F-RTO "
17933 "interacts badly with the packet counting of the SACK-enabled TCP flow."
17934 msgstr ""
17935 "そのフローで SACK を使用する場合、SACK 拡張版の F-RTO を有効にする。 基本版"
17936 "の F-RTO も SACK が使用されている場合にも使用できるが、 基本版の場合には F-"
17937 "RTO が SACK が有効になった TCP フローでの パケット数計測と、相性が悪く相互干"
17938 "渉が起こる場面が存在する。"
17939
17940 #. type: Plain text
17941 #: build/C/man7/tcp.7:362
17942 msgid ""
17943 "Before Linux 2.6.22, this parameter was a Boolean value, supporting just "
17944 "values 0 and 1 above."
17945 msgstr ""
17946 "Linu 2.6.22 より前では、このパラメータはブール値であり、 上記の 0 と 1 のみを"
17947 "サポートしていた。"
17948
17949 #. type: TP
17950 #: build/C/man7/tcp.7:362
17951 #, no-wrap
17952 msgid "I<tcp_frto_response> (integer; default: 0; since Linux 2.6.22)"
17953 msgstr "I<tcp_frto_response> (integer; default: 0; Linux 2.6.22 以降)"
17954
17955 #. type: Plain text
17956 #: build/C/man7/tcp.7:369
17957 msgid ""
17958 "When F-RTO has detected that a TCP retransmission timeout was spurious (i.e, "
17959 "the timeout would have been avoided had TCP set a longer retransmission "
17960 "timeout), TCP has several options concerning what to do next.  Possible "
17961 "values are:"
17962 msgstr ""
17963 "F-RTO が TCP 再送タイムアウトが偽物だと検出した場合 (つまり、TCP がもっと長い"
17964 "再送タイムアウトを設定していれば タイムアウトが避けられた場合)、 次にどうする"
17965 "かに関して選択肢がいくつかある。 以下の値を選択できる。"
17966
17967 #. type: Plain text
17968 #: build/C/man7/tcp.7:377
17969 msgid ""
17970 "Rate halving based; a smooth and conservative response, results in halved "
17971 "congestion window (I<cwnd>)  and slow-start threshold (I<ssthresh>)  after "
17972 "one RTT."
17973 msgstr ""
17974 "レートを元の半分にする。 滑らかで、保守的な反応を行い、RTT 1回分の時間後に 輻"
17975 "輳ウィンドウ (I<cwnd>)  とスロースタートの閾値 (I<ssthresh>)  が半分になる。"
17976
17977 #. type: Plain text
17978 #: build/C/man7/tcp.7:384
17979 msgid ""
17980 "Very conservative response; not recommended because even though being valid, "
17981 "it interacts poorly with the rest of Linux TCP; halves I<cwnd> and "
17982 "I<ssthresh> immediately."
17983 msgstr ""
17984 "非常に保守的な反応。このオプションの使用は推奨されない。 反応が正しかった場合"
17985 "であっても、Linux TCP の他の部分と うまく連携できないからである。 I<cwnd> と "
17986 "I<ssthresh> は直ちに半分にされる。"
17987
17988 #. type: Plain text
17989 #: build/C/man7/tcp.7:393
17990 msgid ""
17991 "Aggressive response; undoes congestion-control measures that are now known "
17992 "to be unnecessary (ignoring the possibility of a lost retransmission that "
17993 "would require TCP to be more cautious); I<cwnd> and I<ssthresh> are restored "
17994 "to the values prior to timeout."
17995 msgstr ""
17996 "積極的な反応。 不要と判明した輻輳制御の測定情報を取り消す (TCP がもっと注意深"
17997 "く扱うべき再送が失われる可能性を無視する)。 。 I<cwnd> と I<ssthresh> はタイ"
17998 "ムアウト前の値に戻される。"
17999
18000 #. type: TP
18001 #: build/C/man7/tcp.7:394
18002 #, no-wrap
18003 msgid "I<tcp_keepalive_intvl> (integer; default: 75; since Linux 2.4)"
18004 msgstr "I<tcp_keepalive_intvl> (integer; default: 75; Linux 2.4 以降)"
18005
18006 #.  Since 2.3.18
18007 #. type: Plain text
18008 #: build/C/man7/tcp.7:398
18009 msgid "The number of seconds between TCP keep-alive probes."
18010 msgstr "TCP keep-alive のプローブを送る間隔 (秒単位)。"
18011
18012 #. type: TP
18013 #: build/C/man7/tcp.7:398
18014 #, no-wrap
18015 msgid "I<tcp_keepalive_probes> (integer; default: 9; since Linux 2.2)"
18016 msgstr "I<tcp_keepalive_probes> (integer; default: 9; Linux 2.2 以降)"
18017
18018 #.  Since 2.1.43
18019 #. type: Plain text
18020 #: build/C/man7/tcp.7:404
18021 msgid ""
18022 "The maximum number of TCP keep-alive probes to send before giving up and "
18023 "killing the connection if no response is obtained from the other end."
18024 msgstr ""
18025 "TCP keep-alive プローブの最大回数。 この回数だけ試しても接続先から反応が得ら"
18026 "れない場合は、 あきらめて接続を切断する。"
18027
18028 #. type: TP
18029 #: build/C/man7/tcp.7:404
18030 #, no-wrap
18031 msgid "I<tcp_keepalive_time> (integer; default: 7200; since Linux 2.2)"
18032 msgstr "I<tcp_keepalive_time> (integer; default: 7200; Linux 2.2 以降)"
18033
18034 #.  Since 2.1.43
18035 #. type: Plain text
18036 #: build/C/man7/tcp.7:416
18037 msgid ""
18038 "The number of seconds a connection needs to be idle before TCP begins "
18039 "sending out keep-alive probes.  Keep-alives are only sent when the "
18040 "B<SO_KEEPALIVE> socket option is enabled.  The default value is 7200 seconds "
18041 "(2 hours).  An idle connection is terminated after approximately an "
18042 "additional 11 minutes (9 probes an interval of 75 seconds apart) when keep-"
18043 "alive is enabled."
18044 msgstr ""
18045 "接続がアイドル状態になってから、keep-alive プローブを送信するまでの時間を秒単"
18046 "位で指定する。 B<SO_KEEPALIVE> ソケットオプションが有効になっていないと keep-"
18047 "alive は送られない。 デフォルト値は 7200 秒 (2 時間)。 keep-alive が有効に"
18048 "なっている場合、 さらにおよそ 11 分 (75 秒間隔の 9 プローブ分)  経過するとア"
18049 "イドル状態の接続は終了させられる。"
18050
18051 #.  The following is from 2.6.12: Documentation/networking/ip-sysctl.txt
18052 #. type: Plain text
18053 #: build/C/man7/tcp.7:421
18054 msgid ""
18055 "Note that underlying connection tracking mechanisms and application timeouts "
18056 "may be much shorter."
18057 msgstr ""
18058 "下層にある接続追跡機構やアプリケーションでのタイムアウトは、 もっとずっと短い"
18059 "かもしれない。"
18060
18061 #. type: TP
18062 #: build/C/man7/tcp.7:421
18063 #, no-wrap
18064 msgid "I<tcp_low_latency> (Boolean; default: disabled; since Linux 2.4.21/2.6)"
18065 msgstr "I<tcp_low_latency> (Boolean; default: disabled; Linux 2.4.21/2.6 以降)"
18066
18067 #.  Since 2.4.21/2.5.60
18068 #. type: Plain text
18069 #: build/C/man7/tcp.7:429
18070 msgid ""
18071 "If enabled, the TCP stack makes decisions that prefer lower latency as "
18072 "opposed to higher throughput.  It this option is disabled, then higher "
18073 "throughput is preferred.  An example of an application where this default "
18074 "should be changed would be a Beowulf compute cluster."
18075 msgstr ""
18076 "有効にすると、TCP スタックはスループットを高くするよりも 遅延を少なくすること"
18077 "を優先して判断を行う。 このオプションを無効にすると、スループットを高くするこ"
18078 "とが優先される。 このデフォルト値を変更した方がよいアプリケーションの例として"
18079 "は Beowulf コンピュータクラスタが挙げられるだろう。"
18080
18081 #. type: TP
18082 #: build/C/man7/tcp.7:429
18083 #, no-wrap
18084 msgid "I<tcp_max_orphans> (integer; default: see below; since Linux 2.4)"
18085 msgstr "I<tcp_max_orphans> (integer; default: see below; Linux 2.4 以降)"
18086
18087 #.  Since 2.3.41
18088 #. type: Plain text
18089 #: build/C/man7/tcp.7:443
18090 msgid ""
18091 "The maximum number of orphaned (not attached to any user file handle) TCP "
18092 "sockets allowed in the system.  When this number is exceeded, the orphaned "
18093 "connection is reset and a warning is printed.  This limit exists only to "
18094 "prevent simple denial-of-service attacks.  Lowering this limit is not "
18095 "recommended.  Network conditions might require you to increase the number of "
18096 "orphans allowed, but note that each orphan can eat up to ~64K of unswappable "
18097 "memory.  The default initial value is set equal to the kernel parameter "
18098 "NR_FILE.  This initial default is adjusted depending on the memory in the "
18099 "system."
18100 msgstr ""
18101 "システムが許容する、 orphan な (どのユーザファイルハンドルにもアタッチされて"
18102 "いない)  TCP ソケットの最大数。 この数を越えると、orphan な接続はリセットさ"
18103 "れ、警告が表示される。 この制限が存在するのは、単純な使用不能 (denial-of-"
18104 "service) 攻撃を 防ぐために過ぎない。この値を小さくすることは推奨しない。 ネッ"
18105 "トワークの条件によっては、この数値を大きくしないといけないかもしれないが、 "
18106 "orphan なソケットひとつあたり 64K 程度のスワップ不可能なメモリを消費すること"
18107 "も注意せよ。 デフォルトの初期値はカーネルパラメータの NR_FILE と等しい。 この"
18108 "初期デフォルト値はシステムのメモリに応じて調整される。"
18109
18110 #. type: TP
18111 #: build/C/man7/tcp.7:443
18112 #, no-wrap
18113 msgid "I<tcp_max_syn_backlog> (integer; default: see below; since Linux 2.2)"
18114 msgstr "I<tcp_max_syn_backlog> (integer; default: 下記参照; Linux 2.2 以降)"
18115
18116 #.  Since 2.1.53
18117 #. type: Plain text
18118 #: build/C/man7/tcp.7:460
18119 msgid ""
18120 "The maximum number of queued connection requests which have still not "
18121 "received an acknowledgement from the connecting client.  If this number is "
18122 "exceeded, the kernel will begin dropping requests.  The default value of 256 "
18123 "is increased to 1024 when the memory present in the system is adequate or "
18124 "greater (E<gt>= 128Mb), and reduced to 128 for those systems with very low "
18125 "memory (E<lt>= 32Mb).  It is recommended that if this needs to be increased "
18126 "above 1024, TCP_SYNQ_HSIZE in I<include/net/tcp.h> be modified to keep "
18127 "TCP_SYNQ_HSIZE*16E<lt>=tcp_max_syn_backlog, and the kernel be recompiled."
18128 msgstr ""
18129 "接続してきているクライアントから ack を受信していない状態の接続リクエストを"
18130 "キューに置ける最大数。 この数値を越えると、カーネルはリクエストを捨て始め"
18131 "る。 デフォルトの値は 256 で、 システムに充分なメモリがある (128Mb 以上) 場合"
18132 "は 1024 になり、 メモリが非常に少ない場合 (32 Mb 以下) は 128 になる。 この数"
18133 "値を 1024 以上に増やしたい場合は、 I<include/net/tcp.h> の TCP_SYNQ_HSIZE を "
18134 "TCP_SYNQ_HSIZE*16E<lt>=tcp_max_syn_backlog のように修正し、 カーネルを再コン"
18135 "パイルすることを奨める。"
18136
18137 #. type: TP
18138 #: build/C/man7/tcp.7:460
18139 #, no-wrap
18140 msgid "I<tcp_max_tw_buckets> (integer; default: see below; since Linux 2.4)"
18141 msgstr "I<tcp_max_tw_buckets> (integer; default: 下記参照; Linux 2.4 以降)"
18142
18143 #.  Since 2.3.41
18144 #. type: Plain text
18145 #: build/C/man7/tcp.7:470
18146 msgid ""
18147 "The maximum number of sockets in TIME_WAIT state allowed in the system.  "
18148 "This limit exists only to prevent simple denial-of-service attacks.  The "
18149 "default value of NR_FILE*2 is adjusted depending on the memory in the "
18150 "system.  If this number is exceeded, the socket is closed and a warning is "
18151 "printed."
18152 msgstr ""
18153 "システムが許容する TIME_WAIT 状態にあるソケットの最大数。 この制限が存在する"
18154 "のは、 単純な使用不能 (denial-of-service) 攻撃を防ぐために過ぎない。 デフォル"
18155 "ト値は NR_FILE*2 で、システムのメモリに応じて調整される。 この数値を越える"
18156 "と、そのようなソケットはクローズされ、警告が表示される。"
18157
18158 #. type: TP
18159 #: build/C/man7/tcp.7:470
18160 #, no-wrap
18161 msgid "I<tcp_moderate_rcvbuf> (Boolean; default: enabled; since Linux 2.4.17/2.6.7)"
18162 msgstr "I<tcp_moderate_rcvbuf> (Boolean; default: enabled; Linux 2.4.17/2.6.7 以降)"
18163
18164 #.  The following is from 2.6.28-rc4: Documentation/networking/ip-sysctl.txt
18165 #. type: Plain text
18166 #: build/C/man7/tcp.7:477
18167 msgid ""
18168 "If enabled, TCP performs receive buffer auto-tuning, attempting to "
18169 "automatically size the buffer (no greater than I<tcp_rmem[2]>)  to match the "
18170 "size required by the path for full throughput."
18171 msgstr ""
18172 "有効にすると、TCP は受信バッファの自動調整を行う。 具体的には、 (I<tcp_rmem"
18173 "[2]> を超えない範囲で) バッファの大きさを自動的に変化させ、 その経路で最大の"
18174 "スループットを達成するのに必要な大きさに合わせようとする。"
18175
18176 #. type: TP
18177 #: build/C/man7/tcp.7:477
18178 #, no-wrap
18179 msgid "I<tcp_mem> (since Linux 2.4)"
18180 msgstr "I<tcp_mem> (Linux 2.4 以降)"
18181
18182 #.  Since 2.4.0-test7
18183 #. type: Plain text
18184 #: build/C/man7/tcp.7:489
18185 msgid ""
18186 "This is a vector of 3 integers: [low, pressure, high].  These bounds, "
18187 "measured in units of the system page size, are used by TCP to track its "
18188 "memory usage.  The defaults are calculated at boot time from the amount of "
18189 "available memory.  (TCP can only use I<low memory> for this, which is "
18190 "limited to around 900 megabytes on 32-bit systems.  64-bit systems do not "
18191 "suffer this limitation.)"
18192 msgstr ""
18193 "これは 3 つの整数 [low, pressure, high] からなるベクトル値である。 これらは "
18194 "TCP がメモリ使用量を追跡するために用いられる (使用量はシステムのページサイズ"
18195 "単位で計測される)。 デフォルトはブート時に利用できるメモリの量から計算され"
18196 "る。 (実際には、TCP は I<low memory> のみを使用する。値は 32ビットシステムで"
18197 "は約 900 メガバイトに制限される。 64 ビットシステムではこの制限はない。)"
18198
18199 #. type: TP
18200 #: build/C/man7/tcp.7:490
18201 #, no-wrap
18202 msgid "I<low>"
18203 msgstr "I<low>"
18204
18205 #. type: Plain text
18206 #: build/C/man7/tcp.7:494
18207 msgid ""
18208 "TCP doesn't regulate its memory allocation when the number of pages it has "
18209 "allocated globally is below this number."
18210 msgstr ""
18211 "TCP は、グローバルにアロケートしたページがこの数値以下の場合は、 メモリアロ"
18212 "ケーションを調整しない。"
18213
18214 #. type: TP
18215 #: build/C/man7/tcp.7:494 build/C/man7/udp.7:145
18216 #, no-wrap
18217 msgid "I<pressure>"
18218 msgstr "I<pressure>"
18219
18220 #. type: Plain text
18221 #: build/C/man7/tcp.7:503
18222 msgid ""
18223 "When the amount of memory allocated by TCP exceeds this number of pages, TCP "
18224 "moderates its memory consumption.  This memory pressure state is exited once "
18225 "the number of pages allocated falls below the I<low> mark."
18226 msgstr ""
18227 "TCP がアロケートしたメモリがこの数値分のページ数を越えると、 TCP はメモリ消費"
18228 "を抑えるようになる。 アロケートしたページ数が I<low> 以下になると、このメモリ"
18229 "圧迫状態から脱する。"
18230
18231 #. type: TP
18232 #: build/C/man7/tcp.7:503
18233 #, no-wrap
18234 msgid "I<high>"
18235 msgstr "I<high>"
18236
18237 #. type: Plain text
18238 #: build/C/man7/tcp.7:507
18239 msgid ""
18240 "The maximum number of pages, globally, that TCP will allocate.  This value "
18241 "overrides any other limits imposed by the kernel."
18242 msgstr ""
18243 "TCP がグローバルに割り当てるページ数の最大値。 この値はカーネルによって課され"
18244 "るあらゆる制限よりも優先される。"
18245
18246 #. type: TP
18247 #: build/C/man7/tcp.7:508
18248 #, no-wrap
18249 msgid "I<tcp_mtu_probing> (integer; default: 0; since Linux 2.6.17)"
18250 msgstr "I<tcp_mtu_probing> (integer; default: 0; Linux 2.6.17 以降)"
18251
18252 #.  The following is from 2.6.28-rc4: Documentation/networking/ip-sysctl.txt
18253 #. type: Plain text
18254 #: build/C/man7/tcp.7:513
18255 msgid ""
18256 "This parameter controls TCP Packetization-Layer Path MTU Discovery.  The "
18257 "following values may be assigned to the file:"
18258 msgstr ""
18259 "このパラメータは、TCP のパケット化レイヤの Path MTU discovery を制御する。 こ"
18260 "のファイルには以下の値を設定できる。"
18261
18262 #. type: Plain text
18263 #: build/C/man7/tcp.7:516
18264 msgid "Disabled"
18265 msgstr "無効にする。"
18266
18267 #. type: Plain text
18268 #: build/C/man7/tcp.7:518
18269 msgid "Disabled by default, enabled when an ICMP black hole detected"
18270 msgstr ""
18271 "デフォルトでは無効だが、ICMP ブラックホールが検出された場合は有効にする。"
18272
18273 #. type: Plain text
18274 #: build/C/man7/tcp.7:521
18275 msgid "Always enabled, use initial MSS of I<tcp_base_mss>."
18276 msgstr "常に有効にする。 MSS の初期値として I<tcp_base_mss> が使用される。"
18277
18278 #. type: TP
18279 #: build/C/man7/tcp.7:522
18280 #, no-wrap
18281 msgid "I<tcp_no_metrics_save> (Boolean; default: disabled; since Linux 2.6.6)"
18282 msgstr "I<tcp_no_metrics_save> (Boolean; default: disabled; Linux 2.6.6 以降)"
18283
18284 #.  The following is from 2.6.28-rc4: Documentation/networking/ip-sysctl.txt
18285 #. type: Plain text
18286 #: build/C/man7/tcp.7:533
18287 msgid ""
18288 "By default, TCP saves various connection metrics in the route cache when the "
18289 "connection closes, so that connections established in the near future can "
18290 "use these to set initial conditions.  Usually, this increases overall "
18291 "performance, but it may sometimes cause performance degradation.  If "
18292 "I<tcp_no_metrics_save> is enabled, TCP will not cache metrics on closing "
18293 "connections."
18294 msgstr ""
18295 "デフォルトでは、TCP は接続クローズ時に各種の接続パラメータを ルートキャッ"
18296 "シュ (route cache) に保存し、近い将来に接続が確立された際に これらの情報を初"
18297 "期状態として使用できるようになっている。 通常は、これにより全体として性能が向"
18298 "上するが、 時として性能の劣化を引き起こすこともある。 I<tcp_no_metrics_save> "
18299 "を有効にすると、TCP は接続クローズ時に接続パラメータをキャッシュ しなくなる。"
18300
18301 #. type: TP
18302 #: build/C/man7/tcp.7:533
18303 #, no-wrap
18304 msgid "I<tcp_orphan_retries> (integer; default: 8; since Linux 2.4)"
18305 msgstr "I<tcp_orphan_retries> (integer; default: 8; Linux 2.4 以降)"
18306
18307 #.  Since 2.3.41
18308 #. type: Plain text
18309 #: build/C/man7/tcp.7:538
18310 msgid ""
18311 "The maximum number of attempts made to probe the other end of a connection "
18312 "which has been closed by our end."
18313 msgstr "こちらからクローズした接続について、 先方をプローブする最大試行数。"
18314
18315 #. type: TP
18316 #: build/C/man7/tcp.7:538
18317 #, no-wrap
18318 msgid "I<tcp_reordering> (integer; default: 3; since Linux 2.4)"
18319 msgstr "I<tcp_reordering> (integer; default: 3; Linux 2.4 以降)"
18320
18321 #.  Since 2.4.0-test7
18322 #. type: Plain text
18323 #: build/C/man7/tcp.7:547
18324 msgid ""
18325 "The maximum a packet can be reordered in a TCP packet stream without TCP "
18326 "assuming packet loss and going into slow start.  It is not advisable to "
18327 "change this number.  This is a packet reordering detection metric designed "
18328 "to minimize unnecessary back off and retransmits provoked by reordering of "
18329 "packets on a connection."
18330 msgstr ""
18331 "TCP パケットストリームでパケット順序の逆転が発生しただけであり、 パケットロス"
18332 "が起こったとはみなさない、パケット数の最大値。 この値を超えてパケットの順序逆"
18333 "転が起こると、パケットロスが生じたと みなし、slow start に入る。 この数値は変"
18334 "更しないほうが良い。 これは、接続中のパケットの並び替えによって生じる 不必要"
18335 "な速度低下や再送を最小化するように設計された、 パケット並び替え (packet "
18336 "reordering) の検知メトリックなのである。"
18337
18338 #. type: TP
18339 #: build/C/man7/tcp.7:547
18340 #, no-wrap
18341 msgid "I<tcp_retrans_collapse> (Boolean; default: enabled; since Linux 2.2)"
18342 msgstr "I<tcp_retrans_collapse> (Boolean; default: enabled; Linux 2.2 以降)"
18343
18344 #.  Since 2.1.96
18345 #. type: Plain text
18346 #: build/C/man7/tcp.7:551
18347 msgid "Try to send full-sized packets during retransmit."
18348 msgstr "再送の際にフルサイズのパケットを送ろうとする。"
18349
18350 #. type: TP
18351 #: build/C/man7/tcp.7:551
18352 #, no-wrap
18353 msgid "I<tcp_retries1> (integer; default: 3; since Linux 2.2)"
18354 msgstr "I<tcp_retries1> (integer; default: 3; Linux 2.2 以降)"
18355
18356 #.  Since 2.1.43
18357 #. type: Plain text
18358 #: build/C/man7/tcp.7:561
18359 msgid ""
18360 "The number of times TCP will attempt to retransmit a packet on an "
18361 "established connection normally, without the extra effort of getting the "
18362 "network layers involved.  Once we exceed this number of retransmits, we "
18363 "first have the network layer update the route if possible before each new "
18364 "retransmit.  The default is the RFC specified minimum of 3."
18365 msgstr ""
18366 "普通に確立されている接続上に、 TCP がネットワーク層を巻き込まずに再送を試みる"
18367 "回数。 再送がこの回数を越えると、まず最初に、 新しい再送を送る前に可能なら"
18368 "ネットワーク層に経路を更新させる。 デフォルトは RFC が指定している最少数であ"
18369 "る 3。"
18370
18371 #. type: TP
18372 #: build/C/man7/tcp.7:561
18373 #, no-wrap
18374 msgid "I<tcp_retries2> (integer; default: 15; since Linux 2.2)"
18375 msgstr "I<tcp_retries2> (integer; default: 15; Linux 2.2 以降)"
18376
18377 #.  Since 2.1.43
18378 #. type: Plain text
18379 #: build/C/man7/tcp.7:571
18380 msgid ""
18381 "The maximum number of times a TCP packet is retransmitted in established "
18382 "state before giving up.  The default value is 15, which corresponds to a "
18383 "duration of approximately between 13 to 30 minutes, depending on the "
18384 "retransmission timeout.  The RFC\\ 1122 specified minimum limit of 100 "
18385 "seconds is typically deemed too short."
18386 msgstr ""
18387 "確立状態の接続に、この回数 TCP パケットの再送信を 行なってもだめな場合はあき"
18388 "らめる。 デフォルト値は 15 で、これは (再送のタイムアウトに依存するが)  およ"
18389 "そ 13〜30 分程度の期間に対応する。 RFC\\ 1122 は最小の限界を 100 秒と置いてい"
18390 "るが、 これはたいていの場合には短すぎると思われる。"
18391
18392 #. type: TP
18393 #: build/C/man7/tcp.7:571
18394 #, no-wrap
18395 msgid "I<tcp_rfc1337> (Boolean; default: disabled; since Linux 2.2)"
18396 msgstr "I<tcp_rfc1337> (Boolean; default: disabled; Linux 2.2 以降)"
18397
18398 #.  Since 2.1.90
18399 #. type: Plain text
18400 #: build/C/man7/tcp.7:579
18401 msgid ""
18402 "Enable TCP behavior conformant with RFC\\ 1337.  When disabled, if a RST is "
18403 "received in TIME_WAIT state, we close the socket immediately without waiting "
18404 "for the end of the TIME_WAIT period."
18405 msgstr ""
18406 "TCP の動作を RFC\\ 1337 に準拠させる。 無効にすると、TIME_WAIT 状態のときに "
18407 "RST が受信された場合、 TIME_WAIT 期間の終了を待たずにそのソケットを直ちにク"
18408 "ローズする。"
18409
18410 #. type: TP
18411 #: build/C/man7/tcp.7:579
18412 #, no-wrap
18413 msgid "I<tcp_rmem> (since Linux 2.4)"
18414 msgstr "I<tcp_rmem> (Linux 2.4 以降)"
18415
18416 #.  Since 2.4.0-test7
18417 #. type: Plain text
18418 #: build/C/man7/tcp.7:587
18419 msgid ""
18420 "This is a vector of 3 integers: [min, default, max].  These parameters are "
18421 "used by TCP to regulate receive buffer sizes.  TCP dynamically adjusts the "
18422 "size of the receive buffer from the defaults listed below, in the range of "
18423 "these values, depending on memory available in the system."
18424 msgstr ""
18425 "これは 3 つの整数 [min, default, max] からなるベクトル値である。 これらは "
18426 "TCP が受信バッファサイズを調整するために用いられる。 TCP は、システムで利用で"
18427 "きるメモリに応じて、 受信バッファのサイズをこれらの変数の範囲で 以下に示すデ"
18428 "フォルトから動的に調整する。"
18429
18430 #. type: TP
18431 #: build/C/man7/tcp.7:588 build/C/man7/tcp.7:764 build/C/man7/udp.7:139
18432 #, no-wrap
18433 msgid "I<min>"
18434 msgstr "I<min>"
18435
18436 #. type: Plain text
18437 #: build/C/man7/tcp.7:603
18438 msgid ""
18439 "minimum size of the receive buffer used by each TCP socket.  The default "
18440 "value is the system page size.  (On Linux 2.4, the default value is 4K, "
18441 "lowered to B<PAGE_SIZE> bytes in low-memory systems.)  This value is used to "
18442 "ensure that in memory pressure mode, allocations below this size will still "
18443 "succeed.  This is not used to bound the size of the receive buffer declared "
18444 "using B<SO_RCVBUF> on a socket."
18445 msgstr ""
18446 "各 TCP ソケットが用いる受信バッファの最小サイズ。 デフォルト値はシステムの"
18447 "ページサイズである (Linux 2.4 では、デフォルト値は 4K バイトで、 メモリの少な"
18448 "いシステムでは B<PAGE_SIZE> バイトに減らされる)。 この値は、メモリ圧迫モード"
18449 "においても、 このサイズの割り当てが成功することを保証するために用いられる。 "
18450 "これは、 B<SO_RCVBUF> を用いてソケットの最低受信バッファサイズを宣言する際に"
18451 "は用いられない。"
18452
18453 #. type: TP
18454 #: build/C/man7/tcp.7:603 build/C/man7/tcp.7:774
18455 #, no-wrap
18456 msgid "I<default>"
18457 msgstr "I<default>"
18458
18459 #. type: Plain text
18460 #: build/C/man7/tcp.7:617
18461 msgid ""
18462 "the default size of the receive buffer for a TCP socket.  This value "
18463 "overwrites the initial default buffer size from the generic global I<net."
18464 "core.rmem_default> defined for all protocols.  The default value is 87380 "
18465 "bytes.  (On Linux 2.4, this will be lowered to 43689 in low-memory "
18466 "systems.)  If larger receive buffer sizes are desired, this value should be "
18467 "increased (to affect all sockets).  To employ large TCP windows, the I<net."
18468 "ipv4.tcp_window_scaling> must be enabled (default)."
18469 msgstr ""
18470 "TCP ソケットの受信バッファのデフォルトサイズ。 この値は、すべてのプロトコルに"
18471 "対して定義されている、 ジェネリックなグローバルのデフォルトバッファサイズ "
18472 "I<net.core.rmem_default> より優先される。 デフォルト値は 87380 バイトである "
18473 "(Linux 2.4 では、メモリの少ないシステムの場合 43689 まで減らされる)。 大きな"
18474 "受信バッファサイズが必要な場合は、 この値を増やすべきである (すべてのソケット"
18475 "に影響する)。 大きな TCP ウィンドウを用いるには、 I<net.ipv4."
18476 "tcp_window_scaling> を有効にしておかなければならない (デフォルトは有効)。"
18477
18478 #. type: TP
18479 #: build/C/man7/tcp.7:617 build/C/man7/tcp.7:788 build/C/man7/udp.7:151
18480 #, no-wrap
18481 msgid "I<max>"
18482 msgstr "I<max>"
18483
18484 #. type: Plain text
18485 #: build/C/man7/tcp.7:626
18486 msgid ""
18487 "the maximum size of the receive buffer used by each TCP socket.  This value "
18488 "does not override the global I<net.core.rmem_max>.  This is not used to "
18489 "limit the size of the receive buffer declared using B<SO_RCVBUF> on a "
18490 "socket.  The default value is calculated using the formula"
18491 msgstr ""
18492 "各 TCP ソケットで用いる受信バッファの最大サイズ。 この値よりもグローバルの "
18493 "I<net.core.rmem_max> が優先される。 これは、 B<SO_RCVBUF> を用いてソケットの"
18494 "受信バッファサイズ制限を宣言する際には用いられない。 デフォルト値は以下の式で"
18495 "計算される。"
18496
18497 #. type: Plain text
18498 #: build/C/man7/tcp.7:628
18499 #, no-wrap
18500 msgid "    max(87380, min(4MB, I<tcp_mem>[1]*PAGE_SIZE/128))\n"
18501 msgstr "    max(87380, min(4MB, I<tcp_mem>[1]*PAGE_SIZE/128))\n"
18502
18503 #. type: Plain text
18504 #: build/C/man7/tcp.7:631
18505 msgid ""
18506 "(On Linux 2.4, the default is 87380*2 bytes, lowered to 87380 in low-memory "
18507 "systems)."
18508 msgstr ""
18509 "(Linux 2.4 では、デフォルト値は 87380*2 バイトで、 メモリの少ないシステムで"
18510 "は 87380 まで減らされる。)"
18511
18512 #. type: TP
18513 #: build/C/man7/tcp.7:632
18514 #, no-wrap
18515 msgid "I<tcp_sack> (Boolean; default: enabled; since Linux 2.2)"
18516 msgstr "I<tcp_sack> (Boolean; default: enabled; Linux 2.2 以降)"
18517
18518 #.  Since 2.1.36
18519 #. type: Plain text
18520 #: build/C/man7/tcp.7:636
18521 msgid "Enable RFC\\ 2018 TCP Selective Acknowledgements."
18522 msgstr "RFC\\ 2018 の TCP Selective Acknowledgements を有効にする。"
18523
18524 #. type: TP
18525 #: build/C/man7/tcp.7:636
18526 #, no-wrap
18527 msgid "I<tcp_slow_start_after_idle> (Boolean; default: enabled; since Linux 2.6.18)"
18528 msgstr "I<tcp_slow_start_after_idle> (Boolean; default: enabled; Linux 2.6.18 以降)"
18529
18530 #.  The following is from 2.6.28-rc4: Documentation/networking/ip-sysctl.txt
18531 #. type: Plain text
18532 #: build/C/man7/tcp.7:644
18533 msgid ""
18534 "If enabled, provide RFC 2861 behavior and time out the congestion window "
18535 "after an idle period.  An idle period is defined as the current RTO "
18536 "(retransmission timeout).  If disabled, the congestion window will not be "
18537 "timed out after an idle period."
18538 msgstr ""
18539 "有効にすると、RFC 2861 の動作が行われ、 アイドル時間経過後に輻輳ウィンドウを"
18540 "タイムアウトさせる。 アイドル時間は現在の RTO (再送タイムアウト) で定義され"
18541 "る。 無効にすると、輻輳ウィンドウはアイドル時間経過後もタイムアウトされない。"
18542
18543 #. type: TP
18544 #: build/C/man7/tcp.7:644
18545 #, no-wrap
18546 msgid "I<tcp_stdurg> (Boolean; default: disabled; since Linux 2.2)"
18547 msgstr "I<tcp_stdurg> (Boolean; default: disabled; Linux 2.2 以降)"
18548
18549 #.  Since 2.1.44
18550 #.  RFC 793 was ambiguous in its specification of the meaning of the
18551 #.  urgent pointer.  RFC 1122 (and RFC 961) fixed on a particular
18552 #.  resolution of this ambiguity (unfortunately the "wrong" one).
18553 #. type: Plain text
18554 #: build/C/man7/tcp.7:658
18555 msgid ""
18556 "If this option is enabled, then use the RFC\\ 1122 interpretation of the TCP "
18557 "urgent-pointer field.  According to this interpretation, the urgent pointer "
18558 "points to the last byte of urgent data.  If this option is disabled, then "
18559 "use the BSD-compatible interpretation of the urgent pointer: the urgent "
18560 "pointer points to the first byte after the urgent data.  Enabling this "
18561 "option may lead to interoperability problems."
18562 msgstr ""
18563 "このオプションを有効にすると、 TCP 緊急ポインタ (urgent-pointer)  フィールド"
18564 "を RFC\\ 1122 に従った解釈を行う。 この解釈に従うと、緊急ポインタは緊急データ"
18565 "の最後のバイトを指す。 このオプションを無効にすると、緊急ポインタの解釈が "
18566 "BSD 互換の方法で 行われる: 緊急ポインタは緊急データの後の最初のバイトを指"
18567 "す。 このオプションを有効にすると、相互運用性に問題が生じるかもしれない。"
18568
18569 #. type: TP
18570 #: build/C/man7/tcp.7:658
18571 #, no-wrap
18572 msgid "I<tcp_syn_retries> (integer; default: 5; since Linux 2.2)"
18573 msgstr "I<tcp_syn_retries> (integer; default: 5; Linux 2.2 以降)"
18574
18575 #.  Since 2.1.38
18576 #. type: Plain text
18577 #: build/C/man7/tcp.7:665
18578 msgid ""
18579 "The maximum number of times initial SYNs for an active TCP connection "
18580 "attempt will be retransmitted.  This value should not be higher than 255.  "
18581 "The default value is 5, which corresponds to approximately 180 seconds."
18582 msgstr ""
18583 "アクティブな TCP 接続に初期 SYN の再送を試みる最大回数。 この数値は 255 より"
18584 "も大きくすべきではない。 デフォルトの値は 5 で、およそ 180 秒に対応する。"
18585
18586 #. type: TP
18587 #: build/C/man7/tcp.7:665
18588 #, no-wrap
18589 msgid "I<tcp_synack_retries> (integer; default: 5; since Linux 2.2)"
18590 msgstr "I<tcp_synack_retries> (integer; default: 5; Linux 2.2 以降)"
18591
18592 #.  Since 2.1.38
18593 #. type: Plain text
18594 #: build/C/man7/tcp.7:671
18595 msgid ""
18596 "The maximum number of times a SYN/ACK segment for a passive TCP connection "
18597 "will be retransmitted.  This number should not be higher than 255."
18598 msgstr ""
18599 "passive な TCP 接続の SYN/ACK セグメントで再送を試みる最大数。 この数値は "
18600 "255 よりも大きくすべきではない。"
18601
18602 #. type: TP
18603 #: build/C/man7/tcp.7:671
18604 #, no-wrap
18605 msgid "I<tcp_syncookies> (Boolean; since Linux 2.2)"
18606 msgstr "I<tcp_syncookies> (Boolean; Linux 2.2 以降)"
18607
18608 #.  Since 2.1.43
18609 #. type: Plain text
18610 #: build/C/man7/tcp.7:691
18611 msgid ""
18612 "Enable TCP syncookies.  The kernel must be compiled with "
18613 "B<CONFIG_SYN_COOKIES>.  Send out syncookies when the syn backlog queue of a "
18614 "socket overflows.  The syncookies feature attempts to protect a socket from "
18615 "a SYN flood attack.  This should be used as a last resort, if at all.  This "
18616 "is a violation of the TCP protocol, and conflicts with other areas of TCP "
18617 "such as TCP extensions.  It can cause problems for clients and relays.  It "
18618 "is not recommended as a tuning mechanism for heavily loaded servers to help "
18619 "with overloaded or misconfigured conditions.  For recommended alternatives "
18620 "see I<tcp_max_syn_backlog>, I<tcp_synack_retries>, and "
18621 "I<tcp_abort_on_overflow>."
18622 msgstr ""
18623 "TCP syncookies を有効にする。カーネルは B<CONFIG_SYNCOOKIES> をつけてコンパイ"
18624 "ルしておかなければならない。 ソケットのバックログキューがオーバーフローする"
18625 "と、 syncookies が送信される。 syncookies 機能は、SYN flood 攻撃からソケット"
18626 "を守ろうとする。 これはいずれにしても、最終手段として用いるべきである。 これ"
18627 "は TCP プロトコルに違反しており、 TCP 拡張のような、TCP の他の部分と衝突して"
18628 "しまう。 クライアントやリレーで問題が起こることもある。 過負荷や設定間違いに"
18629 "よって負荷の大きな状態にあるサーバを調整して救うための 機構とみなすべきではな"
18630 "い。 そのような用途には、代わりに I<tcp_max_syn_backlog>, "
18631 "I<tcp_synack_retries>, I<tcp_abort_on_overflow> などの使用を考えること。"
18632
18633 #. type: TP
18634 #: build/C/man7/tcp.7:691
18635 #, no-wrap
18636 msgid "I<tcp_timestamps> (Boolean; default: enabled; since Linux 2.2)"
18637 msgstr "I<tcp_timestamps> (Boolean; default: enabled; Linux 2.2 以降)"
18638
18639 #.  Since 2.1.36
18640 #. type: Plain text
18641 #: build/C/man7/tcp.7:695
18642 msgid "Enable RFC\\ 1323 TCP timestamps."
18643 msgstr "RFC\\ 1323 の TCP timestamps を有効にする。"
18644
18645 #. type: TP
18646 #: build/C/man7/tcp.7:695
18647 #, no-wrap
18648 msgid "I<tcp_tso_win_divisor> (integer; default: 3; since Linux 2.6.9)"
18649 msgstr "I<tcp_tso_win_divisor> (integer; default: 3; Linux 2.6.9 以降)"
18650
18651 #. type: Plain text
18652 #: build/C/man7/tcp.7:701
18653 msgid ""
18654 "This parameter controls what percentage of the congestion window can be "
18655 "consumed by a single TCP Segmentation Offload (TSO) frame.  The setting of "
18656 "this parameter is a tradeoff between burstiness and building larger TSO "
18657 "frames."
18658 msgstr ""
18659 "このパラメータは、一つの TCP Segmentation Offload (TSO) フレームで 消費できる"
18660 "輻輳ウィンドウの割合 (パーセント) を制御する。 バースト性と、どれだけ大きな "
18661 "TSO フレームを構築するかのはトレードオフであり、 このパラメータはその度合いを"
18662 "設定する。"
18663
18664 #. type: TP
18665 #: build/C/man7/tcp.7:701
18666 #, no-wrap
18667 msgid "I<tcp_tw_recycle> (Boolean; default: disabled; since Linux 2.4)"
18668 msgstr "I<tcp_tw_recycle> (Boolean; default: disabled; Linux 2.4 以降)"
18669
18670 #.  Since 2.3.15
18671 #.  The following is from 2.6.12: Documentation/networking/ip-sysctl.txt
18672 #. type: Plain text
18673 #: build/C/man7/tcp.7:710
18674 msgid ""
18675 "Enable fast recycling of TIME_WAIT sockets.  Enabling this option is not "
18676 "recommended since this causes problems when working with NAT (Network "
18677 "Address Translation)."
18678 msgstr ""
18679 "TIME_WAIT ソケットの素早い再利用を有効にする。 このオプションを有効にする"
18680 "と、 NAT (ネットワークアドレス変換) を用いていると問題が生じるので、 あまり推"
18681 "奨しない。"
18682
18683 #. type: TP
18684 #: build/C/man7/tcp.7:710
18685 #, no-wrap
18686 msgid "I<tcp_tw_reuse> (Boolean; default: disabled; since Linux 2.4.19/2.6)"
18687 msgstr "I<tcp_tw_reuse> (Boolean; default: disabled; Linux 2.4.19/2.6 以降)"
18688
18689 #.  Since 2.4.19/2.5.43
18690 #.  The following is from 2.6.12: Documentation/networking/ip-sysctl.txt
18691 #. type: Plain text
18692 #: build/C/man7/tcp.7:718
18693 msgid ""
18694 "Allow to reuse TIME_WAIT sockets for new connections when it is safe from "
18695 "protocol viewpoint.  It should not be changed without advice/request of "
18696 "technical experts."
18697 msgstr ""
18698 "プロトコルの面から見て問題ない場合に新規コネクションに TIME_WAIT 状態のソケッ"
18699 "トを再利用することを許可する。技術的に詳しい人の助言や 要請なしにこのオプショ"
18700 "ンを変更すべきではない。"
18701
18702 #. type: TP
18703 #: build/C/man7/tcp.7:718
18704 #, no-wrap
18705 msgid "I<tcp_vegas_cong_avoid> (Boolean; default: disabled; Linux 2.2 to 2.6.13)"
18706 msgstr "I<tcp_vegas_cong_avoid> (Boolean; default: disabled; Linux 2.2 から 2.6.13 まで)"
18707
18708 #.  Since 2.1.8; removed in 2.6.13
18709 #.  The following is from 2.6.12: Documentation/networking/ip-sysctl.txt
18710 #. type: Plain text
18711 #: build/C/man7/tcp.7:729
18712 msgid ""
18713 "Enable TCP Vegas congestion avoidance algorithm.  TCP Vegas is a sender-side "
18714 "only change to TCP that anticipates the onset of congestion by estimating "
18715 "the bandwidth.  TCP Vegas adjusts the sending rate by modifying the "
18716 "congestion window.  TCP Vegas should provide less packet loss, but it is not "
18717 "as aggressive as TCP Reno."
18718 msgstr ""
18719 "TCP Vegas 輻輳制御アルゴリズムを有効にする。 TCP Vegas は帯域を推測することで"
18720 "輻輳の起こり始めを予想するように TCP の送信側のみに変更を加えたものである。 "
18721 "TCP Vegas は輻輳ウィンドウを修正することで、送信レートを調整する。 TCP Vegas "
18722 "は TCP Reno と比べてパケットロスは少ないが、 TCP Reno ほど積極的な挙動はしな"
18723 "い。"
18724
18725 #. type: TP
18726 #: build/C/man7/tcp.7:729
18727 #, no-wrap
18728 msgid "I<tcp_westwood> (Boolean; default: disabled; Linux 2.4.26/2.6.3 to 2.6.13)"
18729 msgstr "I<tcp_westwood> (Boolean; default: disabled; Linux 2.4.26/2.6.3 から 2.6.13 まで)"
18730
18731 #. type: Plain text
18732 #: build/C/man7/tcp.7:741
18733 msgid ""
18734 "Enable TCP Westwood+ congestion control algorithm.  TCP Westwood+ is a "
18735 "sender-side only modification of the TCP Reno protocol stack that optimizes "
18736 "the performance of TCP congestion control.  It is based on end-to-end "
18737 "bandwidth estimation to set congestion window and slow start threshold after "
18738 "a congestion episode.  Using this estimation, TCP Westwood+ adaptively sets "
18739 "a slow start threshold and a congestion window which takes into account the "
18740 "bandwidth used at the time congestion is experienced.  TCP Westwood+ "
18741 "significantly increases fairness with respect to TCP Reno in wired networks "
18742 "and throughput over wireless links."
18743 msgstr ""
18744 "TCP Westwood+ 輻輳制御アルゴリズムを有効にする。 TCP Westwood+ は TCP 輻輳制"
18745 "御の性能を最適化するように TCP Reno の プロトコルスタックの送信側のみに修正を"
18746 "加えたものである。 輻輳が起こった後で、輻輳ウィンドウや slow start の閾値を "
18747 "通信両端間の帯域の推測に基づいて設定する。 この推測を使って、TCP Westwood+ は"
18748 "輻輳が発生した時に使っていた 帯域を考慮に入れた slow start の閾値と輻輳ウィン"
18749 "ドウを設定する。 TCP Westwood+ は、有線ネットワークにおける TCP Reno の公平"
18750 "性 (fairness) と、無線リンクでのスループットを大きく向上する。"
18751
18752 #. type: TP
18753 #: build/C/man7/tcp.7:741
18754 #, no-wrap
18755 msgid "I<tcp_window_scaling> (Boolean; default: enabled; since Linux 2.2)"
18756 msgstr "I<tcp_window_scaling> (Boolean; default: enabled; Linux 2.2 以降)"
18757
18758 #.  Since 2.1.36
18759 #. type: Plain text
18760 #: build/C/man7/tcp.7:755
18761 msgid ""
18762 "Enable RFC\\ 1323 TCP window scaling.  This feature allows the use of a "
18763 "large window (E<gt> 64K) on a TCP connection, should the other end support "
18764 "it.  Normally, the 16 bit window length field in the TCP header limits the "
18765 "window size to less than 64K bytes.  If larger windows are desired, "
18766 "applications can increase the size of their socket buffers and the window "
18767 "scaling option will be employed.  If I<tcp_window_scaling> is disabled, TCP "
18768 "will not negotiate the use of window scaling with the other end during "
18769 "connection setup."
18770 msgstr ""
18771 "RFC\\ 1323 の TCP ウィンドウスケーリングを有効にする。 この機能を用いると、接"
18772 "続先が対応していれば、 TCP 接続で大きな (64K 以上の) ウィンドウが使えるように"
18773 "なる。 通常は TCP ヘッダのウインドウ長フィールドは 16 ビットなので、 ウィンド"
18774 "ウサイズは 64K バイト以下に限られる。 もっと大きなウィンドウを使いたい場合"
18775 "は、 アプリケーションはソケットバッファのサイズを増やして、 ウィンドウスケー"
18776 "リングのオプションを利用すればよい。 I<tcp_window_scaling> を無効にしている"
18777 "と、 TCP は他端との接続設定の際に、 ウィンドウスケーリングのネゴシエーション"
18778 "を行なわない。"
18779
18780 #. type: TP
18781 #: build/C/man7/tcp.7:755
18782 #, no-wrap
18783 msgid "I<tcp_wmem> (since Linux 2.4)"
18784 msgstr "I<tcp_wmem> (Linux 2.4 以降)"
18785
18786 #.  Since 2.4.0-test7
18787 #. type: Plain text
18788 #: build/C/man7/tcp.7:763
18789 msgid ""
18790 "This is a vector of 3 integers: [min, default, max].  These parameters are "
18791 "used by TCP to regulate send buffer sizes.  TCP dynamically adjusts the size "
18792 "of the send buffer from the default values listed below, in the range of "
18793 "these values, depending on memory available."
18794 msgstr ""
18795 "これは 3 つの整数 [min, default, max] からなるベクトル値である。 これらは "
18796 "TCP が送信バッファサイズを調整するために用いられる。 TCP は、システムで利用で"
18797 "きるメモリに応じて、送信バッファのサイズを これらの変数の範囲で以下に示すデ"
18798 "フォルトから動的に調整する。"
18799
18800 #. type: Plain text
18801 #: build/C/man7/tcp.7:774
18802 msgid ""
18803 "Minimum size of the send buffer used by each TCP socket.  The default value "
18804 "is the system page size.  (On Linux 2.4, the default value is 4K bytes.)  "
18805 "This value is used to ensure that in memory pressure mode, allocations below "
18806 "this size will still succeed.  This is not used to bound the size of the "
18807 "send buffer declared using B<SO_SNDBUF> on a socket."
18808 msgstr ""
18809 "各 TCP ソケットが用いる送信バッファの最小サイズ。 デフォルト値はシステムの"
18810 "ページサイズである (Linux 2.4 では、デフォルト値は 4K である)。 この値は、メ"
18811 "モリ圧迫モードにおいても、 このサイズ以下の割り当てが成功することを保証するた"
18812 "めに用いられる。 これは、 B<SO_SNDBUF> を用いてソケットの最低送信バッファサイ"
18813 "ズを宣言する際には用いられない。"
18814
18815 #.  True in Linux 2.4 and 2.6
18816 #. type: Plain text
18817 #: build/C/man7/tcp.7:788
18818 msgid ""
18819 "The default size of the send buffer for a TCP socket.  This value overwrites "
18820 "the initial default buffer size from the generic global I</proc/sys/net/core/"
18821 "wmem_default> defined for all protocols.  The default value is 16K bytes.  "
18822 "If larger send buffer sizes are desired, this value should be increased (to "
18823 "affect all sockets).  To employ large TCP windows, the I</proc/sys/net/ipv4/"
18824 "tcp_window_scaling> must be set to a nonzero value (default)."
18825 msgstr ""
18826 "TCP ソケットの送信バッファのデフォルトサイズ。 この値は、すべてのプロトコルに"
18827 "対して定義されている、 ジェネリックなグローバルのデフォルトバッファサイズ I</"
18828 "proc/sys/net/core/wmem_default> より優先される。 デフォルト値は 16K バイトで"
18829 "ある。 大きな送信バッファサイズが必要な場合は、 この値を増やすべきである (す"
18830 "べてのソケットに影響する)。 大きな TCP ウィンドウを用いるには、 I</proc/sys/"
18831 "net/ipv4/tcp_window_scaling> を 0 以外の値 (デフォルト値) にしておかなければ"
18832 "ならない。"
18833
18834 #. type: Plain text
18835 #: build/C/man7/tcp.7:797
18836 msgid ""
18837 "The maximum size of the send buffer used by each TCP socket.  This value "
18838 "does not override the value in I</proc/sys/net/core/wmem_max>.  This is not "
18839 "used to limit the size of the send buffer declared using B<SO_SNDBUF> on a "
18840 "socket.  The default value is calculated using the formula"
18841 msgstr ""
18842 "各 TCP ソケットで用いる送信バッファの最大サイズ。 この値よりも I</proc/sys/"
18843 "net/core/wmem_max> が優先される。 これは B<SO_SNDBUF> を用いてソケットの送信"
18844 "バッファサイズ制限を宣言する際には用いられない。 デフォルト値は以下の式で計算"
18845 "される。"
18846
18847 #. type: Plain text
18848 #: build/C/man7/tcp.7:799
18849 #, no-wrap
18850 msgid "    max(65536, min(4MB, I<tcp_mem>[1]*PAGE_SIZE/128))\n"
18851 msgstr "    max(65536, min(4MB, I<tcp_mem>[1]*PAGE_SIZE/128))\n"
18852
18853 #. type: Plain text
18854 #: build/C/man7/tcp.7:802
18855 msgid ""
18856 "(On Linux 2.4, the default value is 128K bytes, lowered 64K depending on low-"
18857 "memory systems.)"
18858 msgstr ""
18859 "(Linux 2.4 では、デフォルト値は 128K バイトで、 メモリの少ないシステムでは "
18860 "64K にまで減らされる。)"
18861
18862 #. type: TP
18863 #: build/C/man7/tcp.7:803
18864 #, no-wrap
18865 msgid "I<tcp_workaround_signed_windows> (Boolean; default: disabled; since Linux 2.6.26)"
18866 msgstr "I<tcp_workaround_signed_windows> (Boolean; default: disabled; Linux 2.6.26 以降)"
18867
18868 #. type: Plain text
18869 #: build/C/man7/tcp.7:809
18870 msgid ""
18871 "If enabled, assume that no receipt of a window-scaling option means that the "
18872 "remote TCP is broken and treats the window as a signed quantity.  If "
18873 "disabled, assume that the remote TCP is not broken even if we do not receive "
18874 "a window scaling option from it."
18875 msgstr ""
18876 "有効にすると、ウィンドウスケーリングオプションを受信しないのは、 接続相手の "
18877 "TCP が壊れていると考え、ウィンドウを符号付きの量とみなす。 無効にすると、接続"
18878 "相手からウィンドウスケーリングオプションを受信しなかった 場合であっても、接続"
18879 "相手の TCP が壊れているとはみなさない。"
18880
18881 #.  or SOL_TCP on Linux
18882 #.  FIXME Document TCP_CONGESTION (new in 2.6.13)
18883 #. type: Plain text
18884 #: build/C/man7/tcp.7:824
18885 msgid ""
18886 "To set or get a TCP socket option, call B<getsockopt>(2)  to read or "
18887 "B<setsockopt>(2)  to write the option with the option level argument set to "
18888 "B<IPPROTO_TCP>.  In addition, most B<IPPROTO_IP> socket options are valid on "
18889 "TCP sockets.  For more information see B<ip>(7)."
18890 msgstr ""
18891 "TCP ソケットのオプションは、 オプションレベル引数に I<IPPROTO_TCP> を指定し"
18892 "た B<setsockopt>(2)  で設定でき、 B<getsockopt>(2)  で取得できる。 さらに、ほ"
18893 "とんどの B<IPPROTO_IP> ソケットオプションも TCP ソケットに対して有効である。"
18894 "詳細は B<ip>(7)  を見よ。"
18895
18896 #. type: TP
18897 #: build/C/man7/tcp.7:824
18898 #, no-wrap
18899 msgid "B<TCP_CORK> (since Linux 2.2)"
18900 msgstr "B<TCP_CORK> (Linux 2.2 以降)"
18901
18902 #.  precisely: since 2.1.127
18903 #. type: Plain text
18904 #: build/C/man7/tcp.7:840
18905 msgid ""
18906 "If set, don't send out partial frames.  All queued partial frames are sent "
18907 "when the option is cleared again.  This is useful for prepending headers "
18908 "before calling B<sendfile>(2), or for throughput optimization.  As currently "
18909 "implemented, there is a 200 millisecond ceiling on the time for which output "
18910 "is corked by B<TCP_CORK>.  If this ceiling is reached, then queued data is "
18911 "automatically transmitted.  This option can be combined with B<TCP_NODELAY> "
18912 "only since Linux 2.5.71.  This option should not be used in code intended to "
18913 "be portable."
18914 msgstr ""
18915 "セットされると、 partial フレームを送信しない。 このオプションが解除される"
18916 "と、 キューイングされた partial フレームが送られる。これは B<sendfile>(2)  を"
18917 "呼ぶ前にヘッダを前置したり、 スループットを最適化したい場合に便利である。 現"
18918 "在の実装では、 B<TCP_CORK> で出力を抑えることができる時間の上限は 200 ミリ秒"
18919 "である。 この上限に達すると、キューイングされたデータは自動的に送信される。 "
18920 "Linux 2.5.71 以降においてのみ、このオプションを B<TCP_NODELAY> と同時に用いる"
18921 "ことができる。 移植性の必要なプログラムではこのオプションを用いるべきではな"
18922 "い。"
18923
18924 #. type: TP
18925 #: build/C/man7/tcp.7:840
18926 #, no-wrap
18927 msgid "B<TCP_DEFER_ACCEPT> (since Linux 2.4)"
18928 msgstr "B<TCP_DEFER_ACCEPT> (Linux 2.4 以降)"
18929
18930 #.  Precisely: since 2.3.38
18931 #. type: Plain text
18932 #: build/C/man7/tcp.7:848
18933 msgid ""
18934 "Allow a listener to be awakened only when data arrives on the socket.  Takes "
18935 "an integer value (seconds), this can bound the maximum number of attempts "
18936 "TCP will make to complete the connection.  This option should not be used in "
18937 "code intended to be portable."
18938 msgstr ""
18939 "これを用いると、リスナはデータがソケットに到着した時のみ目覚めるようになる。 "
18940 "整数値 (秒) をとり、 TCP が接続を完了しようと試みる回数を制限できる。 移植性"
18941 "の必要なプログラムではこのオプションを用いるべきではない。"
18942
18943 #. type: TP
18944 #: build/C/man7/tcp.7:848
18945 #, no-wrap
18946 msgid "B<TCP_INFO> (since Linux 2.4)"
18947 msgstr "B<TCP_INFO> (Linux 2.4 以降)"
18948
18949 #. type: Plain text
18950 #: build/C/man7/tcp.7:854
18951 msgid ""
18952 "Used to collect information about this socket.  The kernel returns a "
18953 "I<struct tcp_info> as defined in the file I</usr/include/linux/tcp.h>.  This "
18954 "option should not be used in code intended to be portable."
18955 msgstr ""
18956 "このソケットの情報を収集するのに用いる。 カーネルは I</usr/include/linux/tcp."
18957 "h> ファイルで定義されている I<struct tcp_info> を返す。 移植性の必要なプログ"
18958 "ラムではこのオプションを用いるべきではない。"
18959
18960 #. type: TP
18961 #: build/C/man7/tcp.7:854
18962 #, no-wrap
18963 msgid "B<TCP_KEEPCNT> (since Linux 2.4)"
18964 msgstr "B<TCP_KEEPCNT> (Linux 2.4 以降)"
18965
18966 #.  Precisely: since 2.3.18
18967 #. type: Plain text
18968 #: build/C/man7/tcp.7:861
18969 msgid ""
18970 "The maximum number of keepalive probes TCP should send before dropping the "
18971 "connection.  This option should not be used in code intended to be portable."
18972 msgstr ""
18973 "接続を落とす前に TCP が試みる keepalive プローブの最大回数。 移植性の必要なプ"
18974 "ログラムではこのオプションを用いるべきではない。"
18975
18976 #. type: TP
18977 #: build/C/man7/tcp.7:861
18978 #, no-wrap
18979 msgid "B<TCP_KEEPIDLE> (since Linux 2.4)"
18980 msgstr "B<TCP_KEEPIDLE> (Linux 2.4 以降)"
18981
18982 #.  Precisely: since 2.3.18
18983 #. type: Plain text
18984 #: build/C/man7/tcp.7:870
18985 msgid ""
18986 "The time (in seconds) the connection needs to remain idle before TCP starts "
18987 "sending keepalive probes, if the socket option B<SO_KEEPALIVE> has been set "
18988 "on this socket.  This option should not be used in code intended to be "
18989 "portable."
18990 msgstr ""
18991 "この時間 (秒単位) を越えて接続がアイドル状態に留まっていると、 このソケット"
18992 "に B<SO_KEEPALIVE> ソケットオプションが設定されている場合、 TCP は keepalive "
18993 "プローブを送りはじめる。 移植性の必要なプログラムではこのオプションを用いるべ"
18994 "きではない。"
18995
18996 #. type: TP
18997 #: build/C/man7/tcp.7:870
18998 #, no-wrap
18999 msgid "B<TCP_KEEPINTVL> (since Linux 2.4)"
19000 msgstr "B<TCP_KEEPINTVL> (Linux 2.4 以降)"
19001
19002 #.  Precisely: since 2.3.18
19003 #. type: Plain text
19004 #: build/C/man7/tcp.7:875
19005 msgid ""
19006 "The time (in seconds) between individual keepalive probes.  This option "
19007 "should not be used in code intended to be portable."
19008 msgstr ""
19009 "各 keepalive プローブの間隔 (秒単位)。 移植性の必要なプログラムではこのオプ"
19010 "ションを用いるべきではない。"
19011
19012 #. type: TP
19013 #: build/C/man7/tcp.7:875
19014 #, no-wrap
19015 msgid "B<TCP_LINGER2> (since Linux 2.4)"
19016 msgstr "B<TCP_LINGER2> (Linux 2.4 以降)"
19017
19018 #.  Precisely: since 2.3.41
19019 #. type: Plain text
19020 #: build/C/man7/tcp.7:887
19021 msgid ""
19022 "The lifetime of orphaned FIN_WAIT2 state sockets.  This option can be used "
19023 "to override the system-wide setting in the file I</proc/sys/net/ipv4/"
19024 "tcp_fin_timeout> for this socket.  This is not to be confused with the "
19025 "B<socket>(7)  level option B<SO_LINGER>.  This option should not be used in "
19026 "code intended to be portable."
19027 msgstr ""
19028 "orphan された FIN_WAIT2 状態のソケットの寿命。 このオプションを用いると、シス"
19029 "テム全体に適用されるファイル I</proc/sys/net/ipv4/tcp_fin_timeout> の値を、こ"
19030 "のソケットに対してのみ変更できる。 B<socket>(7)  レベルのオプション "
19031 "B<SO_LINGER> と混同しないこと。 移植性の必要なプログラムではこのオプションを"
19032 "用いるべきではない。"
19033
19034 #. type: TP
19035 #: build/C/man7/tcp.7:887
19036 #, no-wrap
19037 msgid "B<TCP_MAXSEG>"
19038 msgstr "B<TCP_MAXSEG>"
19039
19040 #.  Present in Linux 1.0
19041 #.  FIXME
19042 #.  Document TCP_MD5SIG, added in Linux 2.6.20,
19043 #.  Needs CONFIG_TCP_MD5SIG
19044 #.  From net/inet/Kconfig
19045 #.  bool "TCP: MD5 Signature Option support (RFC2385) (EXPERIMENTAL)"
19046 #.  RFC2385 specifies a method of giving MD5 protection to TCP sessions.
19047 #.  Its main (only?) use is to protect BGP sessions between core routers
19048 #.  on the Internet.
19049 #.  There is a TCP_MD5SIG option documented in FreeBSD's tcp(4),
19050 #.  but probably many details are different on Linux
19051 #.  Authors were yoshfuji@linux-ipv6.org and Dave Muller
19052 #.  http://thread.gmane.org/gmane.linux.network/47490
19053 #.  http://www.daemon-systems.org/man/tcp.4.html
19054 #.  http://article.gmane.org/gmane.os.netbsd.devel.network/3767/match=tcp_md5sig+freebsd
19055 #. type: Plain text
19056 #: build/C/man7/tcp.7:911
19057 msgid ""
19058 "The maximum segment size for outgoing TCP packets.  If this option is set "
19059 "before connection establishment, it also changes the MSS value announced to "
19060 "the other end in the initial packet.  Values greater than the (eventual) "
19061 "interface MTU have no effect.  TCP will also impose its minimum and maximum "
19062 "bounds over the value provided."
19063 msgstr ""
19064 "送出 TCP パケットの最大セグメントサイズ。 このオプションを接続確立の前に設定"
19065 "すると、 初期パケットで他端にアナウンスする MSS の値も変化する。 インター"
19066 "フェースの MTU よりも大きな (あるいは大きくなってしまった)  値は効果を持たな"
19067 "い。 また TCP は、この値よりも最小・最大の制限の方を優先する。"
19068
19069 #. type: TP
19070 #: build/C/man7/tcp.7:911
19071 #, no-wrap
19072 msgid "B<TCP_NODELAY>"
19073 msgstr "B<TCP_NODELAY>"
19074
19075 #.  Present in Linux 1.0
19076 #. type: Plain text
19077 #: build/C/man7/tcp.7:928
19078 msgid ""
19079 "If set, disable the Nagle algorithm.  This means that segments are always "
19080 "sent as soon as possible, even if there is only a small amount of data.  "
19081 "When not set, data is buffered until there is a sufficient amount to send "
19082 "out, thereby avoiding the frequent sending of small packets, which results "
19083 "in poor utilization of the network.  This option is overridden by "
19084 "B<TCP_CORK>; however, setting this option forces an explicit flush of "
19085 "pending output, even if B<TCP_CORK> is currently set."
19086 msgstr ""
19087 "設定すると Nagle アルゴリズムを無効にする。 すなわち、データ量が少ない場合で"
19088 "も 各セグメントは可能な限り早く送信される。 設定されていないと、 送信する分だ"
19089 "け溜まるまでデータはバッファされ、 小さなパケットを頻繁に送らずにすみ、 ネッ"
19090 "トワークを有効に利用できる。 このオプションは B<TCP_CORK> により上書きされ"
19091 "る。しかしながら、 B<TCP_CORK> が設定されている場合であっても、このオプション"
19092 "を設定すると、 送信待ちの出力を明示的に掃き出す (flush) ことになる。"
19093
19094 #. type: TP
19095 #: build/C/man7/tcp.7:928
19096 #, no-wrap
19097 msgid "B<TCP_QUICKACK> (since Linux 2.4.4)"
19098 msgstr "B<TCP_QUICKACK> (Linux 2.4.4 以降)"
19099
19100 #.  FIXME Document TCP_USER_TIMEOUT (new in 2.6.37)
19101 #.  See commit dca43c75e7e545694a9dd6288553f55c53e2a3a3
19102 #. type: Plain text
19103 #: build/C/man7/tcp.7:945
19104 msgid ""
19105 "Enable quickack mode if set or disable quickack mode if cleared.  In "
19106 "quickack mode, acks are sent immediately, rather than delayed if needed in "
19107 "accordance to normal TCP operation.  This flag is not permanent, it only "
19108 "enables a switch to or from quickack mode.  Subsequent operation of the TCP "
19109 "protocol will once again enter/leave quickack mode depending on internal "
19110 "protocol processing and factors such as delayed ack timeouts occurring and "
19111 "data transfer.  This option should not be used in code intended to be "
19112 "portable."
19113 msgstr ""
19114 "設定されていると quickack モードを有効にし、クリアされると無効にする。 通常"
19115 "の TCP 動作では ack は必要に応じて遅延されるのに対し、 quickack モードでは "
19116 "ack はすぐに送信される。 このフラグは永続的なものではなく、 quickack モードか"
19117 "ら/モードへ切り替えるためのものである。 これ以降の TCP プロトコルの動作によっ"
19118 "ては、 内部のプロトコル処理や、遅延 ack タイムアウトの発生、 データ転送などの"
19119 "要因によって、 再び quickack から出たり入ったりする。 移植性の必要なプログラ"
19120 "ムではこのオプションを用いるべきではない。"
19121
19122 #. type: TP
19123 #: build/C/man7/tcp.7:945
19124 #, no-wrap
19125 msgid "B<TCP_SYNCNT> (since Linux 2.4)"
19126 msgstr "B<TCP_SYNCNT> (Linux 2.4 以降)"
19127
19128 #.  Precisely: since 2.3.18
19129 #. type: Plain text
19130 #: build/C/man7/tcp.7:952
19131 msgid ""
19132 "Set the number of SYN retransmits that TCP should send before aborting the "
19133 "attempt to connect.  It cannot exceed 255.  This option should not be used "
19134 "in code intended to be portable."
19135 msgstr ""
19136 "接続の試行を中止させる前に TCP が送る SYN 再送数を設定する。 これは 255 より"
19137 "大きくはできない。 移植性の必要なプログラムではこのオプションを用いるべきでは"
19138 "ない。"
19139
19140 #. type: TP
19141 #: build/C/man7/tcp.7:952
19142 #, no-wrap
19143 msgid "B<TCP_WINDOW_CLAMP> (since Linux 2.4)"
19144 msgstr "B<TCP_WINDOW_CLAMP> (Linux 2.4 以降)"
19145
19146 #.  Precisely: since 2.3.41
19147 #. type: Plain text
19148 #: build/C/man7/tcp.7:959
19149 msgid ""
19150 "Bound the size of the advertised window to this value.  The kernel imposes a "
19151 "minimum size of SOCK_MIN_RCVBUF/2.  This option should not be used in code "
19152 "intended to be portable."
19153 msgstr ""
19154 "広報するウィンドウのサイズをこの値に固定する。 カーネルによって最小サイズは "
19155 "SOCK_MIN_RCVBUF/2 に制限されている。 このオプションは移植性の必要なコードでは"
19156 "用いるべきでない。"
19157
19158 #. type: SS
19159 #: build/C/man7/tcp.7:959 build/C/man7/unix.7:170
19160 #, no-wrap
19161 msgid "Sockets API"
19162 msgstr "ソケット API"
19163
19164 #. type: Plain text
19165 #: build/C/man7/tcp.7:968
19166 msgid ""
19167 "TCP provides limited support for out-of-band data, in the form of (a single "
19168 "byte of) urgent data.  In Linux this means if the other end sends newer out-"
19169 "of-band data the older urgent data is inserted as normal data into the "
19170 "stream (even when B<SO_OOBINLINE> is not set).  This differs from BSD-based "
19171 "stacks."
19172 msgstr ""
19173 "TCP は帯域外データ (out-of-band data) を限定的にサポートしており、 (1 バイト"
19174 "の) 緊急データという形である。 つまり Linux においては、 接続先が (新しいやり"
19175 "方の) 帯域外データを送ってきた場合、 (古いやり方の)  緊急データは通常のデータ"
19176 "としてストリームに挿入されることになる (これは B<SO_OOBINLINE> がセットされて"
19177 "いる場合でも同様である)。 これは BSD ベースのスタックとは異なる。"
19178
19179 #. type: Plain text
19180 #: build/C/man7/tcp.7:975
19181 msgid ""
19182 "Linux uses the BSD compatible interpretation of the urgent pointer field by "
19183 "default.  This violates RFC\\ 1122, but is required for interoperability "
19184 "with other stacks.  It can be changed via I</proc/sys/net/ipv4/tcp_stdurg>."
19185 msgstr ""
19186 "Linux は、デフォルトでは urgent ポインタフィールドの解釈に BSD 互換の方法を用"
19187 "いる。これは RFC\\ 1122 に反しているが、 他のスタックと同時に動作させるにはや"
19188 "むを得ない。これは I</proc/sys/net/ipv4/tcp_stdurg> によって変更できる。"
19189
19190 #. type: Plain text
19191 #: build/C/man7/tcp.7:980
19192 msgid ""
19193 "It is possible to peek at out-of-band data using the I<recv>(2)  B<MSG_PEEK> "
19194 "flag."
19195 msgstr ""
19196 "B<recv>(2)  の B<MSG_PEEK> フラグを使うと、帯域外データを覗き見することができ"
19197 "る。"
19198
19199 #. type: Plain text
19200 #: build/C/man7/tcp.7:996
19201 msgid ""
19202 "Since version 2.4, Linux supports the use of B<MSG_TRUNC> in the I<flags> "
19203 "argument of B<recv>(2)  (and B<recvmsg>(2)).  This flag causes the received "
19204 "bytes of data to be discarded, rather than passed back in a caller-supplied "
19205 "buffer.  Since Linux 2.4.4, B<MSG_PEEK> also has this effect when used in "
19206 "conjunction with B<MSG_OOB> to receive out-of-band data."
19207 msgstr ""
19208 "Linux 2.4 以降では、 B<recv>(2)  (や B<recvmsg>(2))  の I<flags> 引き数に "
19209 "B<MSG_TRUNC> を使うことができる。 このフラグを指定すると、受信データは、呼び"
19210 "出し元から渡されたバッファ にコピーされて返されるのではなく、廃棄されるように"
19211 "なる。 Linux 2.4.4 以降では、 B<MSG_PEEK> を、帯域外データを受信するための "
19212 "B<MSG_OOB> と組み合わせて使った場合にも、これと同じ効果を持つようになってい"
19213 "る。"
19214
19215 #. type: Plain text
19216 #: build/C/man7/tcp.7:1002 build/C/man7/unix.7:283
19217 #, fuzzy
19218 #| msgid ""
19219 #| "These following B<ioctl>(2)  calls return information in I<value>.  The "
19220 #| "correct syntax is:"
19221 msgid ""
19222 "The following B<ioctl>(2)  calls return information in I<value>.  The "
19223 "correct syntax is:"
19224 msgstr ""
19225 "以下の B<ioctl>(2)  呼び出しは I<value> に情報を入れて返す。 正しい書式は以下"
19226 "の通り。"
19227
19228 #. type: Plain text
19229 #: build/C/man7/tcp.7:1007
19230 #, no-wrap
19231 msgid ""
19232 "B<int>I< value>B<;>\n"
19233 "I<error>B< = ioctl(>I<tcp_socket>B<, >I<ioctl_type>B<, &>I<value>B<);>\n"
19234 msgstr ""
19235 "B<int>I< value>B<;>\n"
19236 "I<error>B< = ioctl(>I<tcp_socket>B<, >I<ioctl_type>B<, &>I<value>B<);>\n"
19237
19238 #. type: Plain text
19239 #: build/C/man7/tcp.7:1012
19240 msgid "I<ioctl_type> is one of the following:"
19241 msgstr "I<ioctl_type> は以下のいずれか一つである:"
19242
19243 #. type: TP
19244 #: build/C/man7/tcp.7:1012 build/C/man7/unix.7:293
19245 #, no-wrap
19246 msgid "B<SIOCINQ>"
19247 msgstr "B<SIOCINQ>"
19248
19249 #.  FIXME http://sources.redhat.com/bugzilla/show_bug.cgi?id=12002,
19250 #.  filed 2010-09-10, may cause SIOCINQ to be defined in glibc headers
19251 #.  SIOCOUTQ also has an effect for UNIX domain sockets, but not
19252 #.  quite what userland might expect. It seems to return the number
19253 #.  of bytes allocated for buffers containing pending output.
19254 #.  That number is normally larger than the number of bytes of pending
19255 #.  output. Since this info is, from userland's point of view, imprecise,
19256 #.  and it may well change, probably best not to document this now.
19257 #. type: Plain text
19258 #: build/C/man7/tcp.7:1028 build/C/man7/unix.7:315
19259 #, fuzzy
19260 #| msgid ""
19261 #| "Returns the amount of queued unread data in the receive buffer.  The "
19262 #| "socket must not be in LISTEN state, otherwise an error (B<EINVAL>)  is "
19263 #| "returned."
19264 msgid ""
19265 "Returns the amount of queued unread data in the receive buffer.  The socket "
19266 "must not be in LISTEN state, otherwise an error (B<EINVAL>)  is returned.  "
19267 "B<SIOCINQ> is defined in I<E<lt>linux/sockios.hE<gt>>.  Alternatively, you "
19268 "can use the synonymous B<FIONREAD>, defined in I<E<lt>sys/ioctl.hE<gt>>."
19269 msgstr ""
19270 "受信バッファのキューにある、まだ読んでいないデータの量を返す。 ソケットは "
19271 "LISTEN 状態にあってはならず、 さもないとエラー (B<EINVAL>)  が返る。"
19272
19273 #. type: TP
19274 #: build/C/man7/tcp.7:1028
19275 #, no-wrap
19276 msgid "B<SIOCATMARK>"
19277 msgstr "B<SIOCATMARK>"
19278
19279 #. type: Plain text
19280 #: build/C/man7/tcp.7:1033
19281 msgid ""
19282 "Returns true (i.e., I<value> is nonzero) if the inbound data stream is at "
19283 "the urgent mark."
19284 msgstr ""
19285 "受信データストリームが緊急マークの位置であれば、真を返す (つまり I<value> が "
19286 "0 以外)。"
19287
19288 #. type: Plain text
19289 #: build/C/man7/tcp.7:1049
19290 msgid ""
19291 "If the B<SO_OOBINLINE> socket option is set, and B<SIOCATMARK> returns true, "
19292 "then the next read from the socket will return the urgent data.  If the "
19293 "B<SO_OOBINLINE> socket option is not set, and B<SIOCATMARK> returns true, "
19294 "then the next read from the socket will return the bytes following the "
19295 "urgent data (to actually read the urgent data requires the B<recv(MSG_OOB)> "
19296 "flag)."
19297 msgstr ""
19298 "B<SO_OOBINLINE> ソケットオプションが設定されていて、 B<SIOCATMARK> が真を返し"
19299 "た場合、次のソケットからの読み込みでは緊急データが 返される。 "
19300 "B<SO_OOBINLINE> ソケットオプションが設定されておらず、 B<SIOCATMARK> が真を返"
19301 "した場合、次のソケットからの読み込みでは緊急データに 続くデータが返される (実"
19302 "際に緊急データを読み込むには B<recv(MSG_OOB)> とフラグをつける必要がある)。"
19303
19304 #. type: Plain text
19305 #: build/C/man7/tcp.7:1063
19306 msgid ""
19307 "Note that a read never reads across the urgent mark.  If an application is "
19308 "informed of the presence of urgent data via B<select>(2)  (using the "
19309 "I<exceptfds> argument) or through delivery of a B<SIGURG> signal, then it "
19310 "can advance up to the mark using a loop which repeatedly tests B<SIOCATMARK> "
19311 "and performs a read (requesting any number of bytes) as long as "
19312 "B<SIOCATMARK> returns false."
19313 msgstr ""
19314 "データの一回の読み込みでは緊急マークを跨がっての読み込みは行われない。 アプリ"
19315 "ケーションが緊急データの存在を (I<exceptfds> 引き数を使って)  B<select>(2)  "
19316 "経由または B<SIGURG> シグナルの配送を通じて知らされた場合、 B<SIOCATMARK> の"
19317 "チェックと読み込み (何バイト読み込み要求をしてもよい) を B<SIOCATMARK> が偽を"
19318 "返さなくなるまで繰り返し行うことで、緊急マークの位置まで 読み進めることができ"
19319 "る。"
19320
19321 #. type: TP
19322 #: build/C/man7/tcp.7:1063
19323 #, no-wrap
19324 msgid "B<SIOCOUTQ>"
19325 msgstr "B<SIOCOUTQ>"
19326
19327 #.  FIXME http://sources.redhat.com/bugzilla/show_bug.cgi?id=12002,
19328 #.  filed 2010-09-10, may cause SIOCOUTQ to be defined in glibc headers
19329 #. type: Plain text
19330 #: build/C/man7/tcp.7:1079
19331 #, fuzzy
19332 #| msgid ""
19333 #| "Returns the amount of unsent data in the socket send queue.  The socket "
19334 #| "must not be in LISTEN state, otherwise an error (B<EINVAL>)  is returned."
19335 msgid ""
19336 "Returns the amount of unsent data in the socket send queue.  The socket must "
19337 "not be in LISTEN state, otherwise an error (B<EINVAL>)  is returned.  "
19338 "B<SIOCOUTQ> is defined in I<E<lt>linux/sockios.hE<gt>>.  Alternatively, you "
19339 "can use the synonymous B<TIOCOUTQ>, defined in I<E<lt>sys/ioctl.hE<gt>>."
19340 msgstr ""
19341 "ソケットの送信キューに残っている未送信データの量を返す。 ソケットは LISTEN 状"
19342 "態にあってはならない。 LISTEN 状態の場合にはエラー (B<EINVAL>)  となる。"
19343
19344 #. type: Plain text
19345 #: build/C/man7/tcp.7:1084
19346 msgid ""
19347 "When a network error occurs, TCP tries to resend the packet.  If it doesn't "
19348 "succeed after some time, either B<ETIMEDOUT> or the last received error on "
19349 "this connection is reported."
19350 msgstr ""
19351 "ネットワークエラーが起こると、 TCP はパケットの再送を試みる。 何回かやっても"
19352 "成功しなければ、この接続に対して B<ETIMEOUT> エラーか最後に受信したエラーが返"
19353 "される。"
19354
19355 #. type: Plain text
19356 #: build/C/man7/tcp.7:1095
19357 msgid ""
19358 "Some applications require a quicker error notification.  This can be enabled "
19359 "with the B<IPPROTO_IP> level B<IP_RECVERR> socket option.  When this option "
19360 "is enabled, all incoming errors are immediately passed to the user program.  "
19361 "Use this option with care \\(em it makes TCP less tolerant to routing "
19362 "changes and other normal network conditions."
19363 msgstr ""
19364 "アプリケーションによっては、もっと早くエラーを知らせてほしい場合がある。 これ"
19365 "には B<IPPROTO_IP> レベルの B<IP_RECVERR> ソケットオプションを用いると良い。"
19366 "このオプションが有効になっていると、 到着したエラーはすべてただちにユーザープ"
19367 "ログラムに渡される。 このオプションは慎重に用いること \\(em ルーティングの変"
19368 "更など、 通常ありうるネットワーク状態に対して TCP をより脆弱にしてしまう。"
19369
19370 #. type: TP
19371 #: build/C/man7/tcp.7:1096
19372 #, no-wrap
19373 msgid "B<EAFNOTSUPPORT>"
19374 msgstr "B<EAFNOTSUPPORT>"
19375
19376 #. type: Plain text
19377 #: build/C/man7/tcp.7:1102
19378 msgid "Passed socket address type in I<sin_family> was not B<AF_INET>."
19379 msgstr ""
19380 "I<sin_family> に渡されたソケットアドレスのタイプが B<AF_INET> ではなかった。"
19381
19382 #. type: Plain text
19383 #: build/C/man7/tcp.7:1106
19384 msgid ""
19385 "The other end closed the socket unexpectedly or a read is executed on a shut "
19386 "down socket."
19387 msgstr ""
19388 "接続先が予期しなかったかたちでソケットをクローズした。 またはシャットダウンさ"
19389 "れたソケットに読み込みが実行された。"
19390
19391 #. type: TP
19392 #: build/C/man7/tcp.7:1106
19393 #, no-wrap
19394 msgid "B<ETIMEDOUT>"
19395 msgstr "B<ETIMEDOUT>"
19396
19397 #. type: Plain text
19398 #: build/C/man7/tcp.7:1109
19399 msgid "The other end didn't acknowledge retransmitted data after some time."
19400 msgstr "接続先が、何回かデータを再送しても反応しない。"
19401
19402 #. type: Plain text
19403 #: build/C/man7/tcp.7:1113
19404 msgid ""
19405 "Any errors defined for B<ip>(7)  or the generic socket layer may also be "
19406 "returned for TCP."
19407 msgstr ""
19408 "B<ip>(7)  で定義されているエラーや、ジェネリックなソケット層におけるエラーも "
19409 "TCP に返されることがある。"
19410
19411 #. type: Plain text
19412 #: build/C/man7/tcp.7:1120
19413 msgid ""
19414 "Support for Explicit Congestion Notification, zero-copy B<sendfile>(2), "
19415 "reordering support and some SACK extensions (DSACK) were introduced in 2.4.  "
19416 "Support for forward acknowledgement (FACK), TIME_WAIT recycling, and per-"
19417 "connection keepalive socket options were introduced in 2.3."
19418 msgstr ""
19419 "Explicit Congestion Notification、zero-copy の B<sendfile>(2)、 並び替えのサ"
19420 "ポート、SACK 拡張 (DSACK) などのサポートは 2.4 で導入された。 フォワード確認 "
19421 "(FACK)、TIME_WAIT リサイクル、接続ごとの keepalive に対するソケットオプション"
19422 "は 2.3 で導入された。"
19423
19424 #. type: Plain text
19425 #: build/C/man7/tcp.7:1122
19426 msgid "Not all errors are documented."
19427 msgstr "まだ説明されていないエラーがある。"
19428
19429 #.  Only a single Linux kernel version is described
19430 #.  Info for 2.2 was lost. Should be added again,
19431 #.  or put into a separate page.
19432 #.  .SH AUTHORS
19433 #.  This man page was originally written by Andi Kleen.
19434 #.  It was updated for 2.4 by Nivedita Singhvi with input from
19435 #.  Alexey Kuznetsov's Documentation/networking/ip-sysctl.txt
19436 #.  document.
19437 #. type: Plain text
19438 #: build/C/man7/tcp.7:1132
19439 msgid "IPv6 is not described."
19440 msgstr "IPv6 に関する記述がない。"
19441
19442 #. type: Plain text
19443 #: build/C/man7/tcp.7:1144
19444 msgid ""
19445 "B<accept>(2), B<bind>(2), B<connect>(2), B<getsockopt>(2), B<listen>(2), "
19446 "B<recvmsg>(2), B<sendfile>(2), B<sendmsg>(2), B<socket>(2), B<ip>(7), "
19447 "B<socket>(7)"
19448 msgstr ""
19449 "B<accept>(2), B<bind>(2), B<connect>(2), B<getsockopt>(2), B<listen>(2), "
19450 "B<recvmsg>(2), B<sendfile>(2), B<sendmsg>(2), B<socket>(2), B<ip>(7), "
19451 "B<socket>(7)"
19452
19453 #. type: Plain text
19454 #: build/C/man7/tcp.7:1146
19455 msgid "RFC\\ 793 for the TCP specification."
19456 msgstr "RFC\\ 793: TCP の仕様。"
19457
19458 #. type: Plain text
19459 #: build/C/man7/tcp.7:1148
19460 msgid ""
19461 "RFC\\ 1122 for the TCP requirements and a description of the Nagle algorithm."
19462 msgstr "RFC\\ 1122: TCP の要求事項と Nagle アルゴリズムの記述。"
19463
19464 #. type: Plain text
19465 #: build/C/man7/tcp.7:1150
19466 msgid "RFC\\ 1323 for TCP timestamp and window scaling options."
19467 msgstr "RFC\\ 1323: TCP のタイムスタンプ・ウィンドウスケーリング各オプション。"
19468
19469 #. type: Plain text
19470 #: build/C/man7/tcp.7:1152
19471 msgid "RFC\\ 1644 for a description of TIME_WAIT assassination hazards."
19472 msgstr "RFC\\ 1644: TIME_WAIT assassination hazard に関する記述。"
19473
19474 #. type: Plain text
19475 #: build/C/man7/tcp.7:1154
19476 msgid "RFC\\ 3168 for a description of Explicit Congestion Notification."
19477 msgstr "RFC\\ 3168: Explicit Congestion Notification に関する記述。"
19478
19479 #. type: Plain text
19480 #: build/C/man7/tcp.7:1156
19481 msgid "RFC\\ 2581 for TCP congestion control algorithms."
19482 msgstr "RFC\\ 2581: TCP 輻輳制御アルゴリズム。"
19483
19484 #. type: Plain text
19485 #: build/C/man7/tcp.7:1158
19486 msgid "RFC\\ 2018 and RFC\\ 2883 for SACK and extensions to SACK."
19487 msgstr "RFC\\ 2018 と RFC\\ 2883: SACK とその拡張。"
19488
19489 #. type: TH
19490 #: build/C/man7/udp.7:8
19491 #, no-wrap
19492 msgid "UDP"
19493 msgstr "UDP"
19494
19495 #. type: TH
19496 #: build/C/man7/udp.7:8
19497 #, fuzzy, no-wrap
19498 #| msgid "2010-06-17"
19499 msgid "2010-06-13"
19500 msgstr "2010-06-17"
19501
19502 #. type: Plain text
19503 #: build/C/man7/udp.7:11
19504 msgid "udp - User Datagram Protocol for IPv4"
19505 msgstr "udp - IPv4 の ユーザーデータグラムプロトコル"
19506
19507 #. type: Plain text
19508 #: build/C/man7/udp.7:17
19509 msgid "B<udp_socket = socket(AF_INET, SOCK_DGRAM, 0);>"
19510 msgstr "B<udp_socket = socket(AF_INET, SOCK_DGRAM, 0);>"
19511
19512 #. type: Plain text
19513 #: build/C/man7/udp.7:23
19514 msgid ""
19515 "This is an implementation of the User Datagram Protocol described in RFC\\ "
19516 "768.  It implements a connectionless, unreliable datagram packet service.  "
19517 "Packets may be reordered or duplicated before they arrive.  UDP generates "
19518 "and checks checksums to catch transmission errors."
19519 msgstr ""
19520 "これは RFC\\ 768 で記述されている User Datagram Protocol の実装である。 UDP "
19521 "はコネクションレスの、信頼性の低いデータパケットサービスである。 パケットは到"
19522 "着前に並び替えられたり複製されたりする。 UDP は転送エラーを検出するために"
19523 "チェックサムを生成・チェックする。"
19524
19525 #. type: Plain text
19526 #: build/C/man7/udp.7:52
19527 msgid ""
19528 "When a UDP socket is created, its local and remote addresses are "
19529 "unspecified.  Datagrams can be sent immediately using B<sendto>(2)  or "
19530 "B<sendmsg>(2)  with a valid destination address as an argument.  When "
19531 "B<connect>(2)  is called on the socket, the default destination address is "
19532 "set and datagrams can now be sent using B<send>(2)  or B<write>(2)  without "
19533 "specifying a destination address.  It is still possible to send to other "
19534 "destinations by passing an address to B<sendto>(2)  or B<sendmsg>(2).  In "
19535 "order to receive packets, the socket can be bound to a local address first "
19536 "by using B<bind>(2).  Otherwise the socket layer will automatically assign a "
19537 "free local port out of the range defined by I</proc/sys/net/ipv4/"
19538 "ip_local_port_range> and bind the socket to B<INADDR_ANY>."
19539 msgstr ""
19540 "UDP ソケットが生成されるとき、 ローカルアドレスやリモートアドレスは指定されな"
19541 "い。 正しい行き先アドレスを引数として B<sendto>(2)  や B<sendmsg>(2)  を呼べ"
19542 "ば、データグラムはただちに送信される。 ソケットに対して B<connect>(2)  を呼ぶ"
19543 "と、デフォルトの行き先アドレスが設定され、 B<send>(2)  や B<write>(2)  を使っ"
19544 "て、行き先アドレスの指定なしにデータグラムを送信できるようになる。 この場合で"
19545 "も、行き先アドレスを B<sendto>(2)  や B<sendmsg>(2)  に渡せば、デフォルト以外"
19546 "のアドレスに送信可能である。 パケットを受信するために、まずソケットを B<bind>"
19547 "(2)  を用いてローカルなアドレスにバインドさせることもできる。 そうでない場合"
19548 "は、ソケット層は自動的に I</proc/sys/net/ipv4/ip_local_port_range> で定義され"
19549 "ている範囲の外で空いているローカルなポートを割り当て、 ソケットを "
19550 "B<INADDR_ANY> にバインドする。"
19551
19552 #. type: Plain text
19553 #: build/C/man7/udp.7:60
19554 msgid ""
19555 "All receive operations return only one packet.  When the packet is smaller "
19556 "than the passed buffer, only that much data is returned; when it is bigger, "
19557 "the packet is truncated and the B<MSG_TRUNC> flag is set.  B<MSG_WAITALL> is "
19558 "not supported."
19559 msgstr ""
19560 "受信動作はパケットを一つだけ返す。渡したバッファよりもパケットが 小さければ、"
19561 "そのパケットの大きさのデータだけが返される。 逆にバッファよりも大きい場合はパ"
19562 "ケットは丸められ、 B<MSG_TRUNC> フラグがセットされる。 B<MSG_WAITALL> はサ"
19563 "ポートしていない。"
19564
19565 #. type: Plain text
19566 #: build/C/man7/udp.7:69
19567 msgid ""
19568 "IP options may be sent or received using the socket options described in "
19569 "B<ip>(7).  They are only processed by the kernel when the appropriate I</"
19570 "proc> parameter is enabled (but still passed to the user even when it is "
19571 "turned off).  See B<ip>(7)."
19572 msgstr ""
19573 "IP オプションは、 B<ip>(7)  に記述されているソケットオプションを用いて読み書"
19574 "きできる。 これらは適切な I</proc> パラメータが有効な場合に限ってカーネルに"
19575 "よって処理される (しかし無効になっている場合でもユーザーには渡される)。 B<ip>"
19576 "(7)  を参照のこと。"
19577
19578 #. type: Plain text
19579 #: build/C/man7/udp.7:74
19580 msgid ""
19581 "When the B<MSG_DONTROUTE> flag is set on sending, the destination address "
19582 "must refer to a local interface address and the packet is only sent to that "
19583 "interface."
19584 msgstr ""
19585 "B<MSG_DONTROUTE> フラグが送信時にセットされている場合には、 行き先アドレスは"
19586 "ローカルなインターフェースアドレスから 参照できなければならない。パケットはそ"
19587 "のインターフェースにしか送られない。"
19588
19589 #. type: Plain text
19590 #: build/C/man7/udp.7:92
19591 msgid ""
19592 "By default, Linux UDP does path MTU (Maximum Transmission Unit) discovery.  "
19593 "This means the kernel will keep track of the MTU to a specific target IP "
19594 "address and return B<EMSGSIZE> when a UDP packet write exceeds it.  When "
19595 "this happens, the application should decrease the packet size.  Path MTU "
19596 "discovery can be also turned off using the B<IP_MTU_DISCOVER> socket option "
19597 "or the I</proc/sys/net/ipv4/ip_no_pmtu_disc> file; see B<ip>(7)  for "
19598 "details.  When turned off, UDP will fragment outgoing UDP packets that "
19599 "exceed the interface MTU.  However, disabling it is not recommended for "
19600 "performance and reliability reasons."
19601 msgstr ""
19602 "デフォルトでは、Linux の UDP は Path MTU Discovery を行う。 つまり、カーネル"
19603 "は特定の宛先 IP アドレスの MTU (Maximum Transmission Unit; 最大転送単位) を記"
19604 "録し、UDP パケットの書き込みが MTU を超えた場合 B<EMSGSIZE> を返す。 "
19605 "B<EMSGSIZE> を返された場合、アプリケーションはパケットサイズを小さくすべきで"
19606 "ある。 ソケットオプション B<IP_MTU_DISCOVER> または I</proc/sys/net/ipv4/"
19607 "ip_no_pmtu_disc> ファイルを使って Path MTU Discovery を無効にすることもでき"
19608 "る (詳細は B<ip>(7)  を参照)。 Path MTU Discovery を無効にした場合は、パケッ"
19609 "トサイズが インタフェースの MTU よりも大きいと UDP はそのパケットを フラグメ"
19610 "ント化して送出する。 しかしながら、性能と信頼性の理由から Path MTU Discovery "
19611 "を 無効にするのは推奨できない。"
19612
19613 #. type: Plain text
19614 #: build/C/man7/udp.7:97
19615 msgid "UDP uses the IPv4 I<sockaddr_in> address format described in B<ip>(7)."
19616 msgstr ""
19617 "UDP は IPv4 の I<sockaddr_in> アドレスフォーマットを用いる。これは B<ip>(7)  "
19618 "に記述されている。"
19619
19620 #. type: Plain text
19621 #: build/C/man7/udp.7:108
19622 msgid ""
19623 "All fatal errors will be passed to the user as an error return even when the "
19624 "socket is not connected.  This includes asynchronous errors received from "
19625 "the network.  You may get an error for an earlier packet that was sent on "
19626 "the same socket.  This behavior differs from many other BSD socket "
19627 "implementations which don't pass any errors unless the socket is connected.  "
19628 "Linux's behavior is mandated by B<RFC\\ 1122>."
19629 msgstr ""
19630 "致命的なエラーは、たとえソケットが接続されていなくても、 すべてエラー戻り値と"
19631 "してユーザーに渡される。 これにはネットワークから受け取る非同期エラーも含まれ"
19632 "る。 同じソケットを使って送信した昔のパケットに関するエラーを受け取るかもしれ"
19633 "ない。 この振る舞いは他の BSD ソケットの実装の多くとは異なる。 これらではソ"
19634 "ケットが接続されていない場合はエラーを全く返さない。 Linux の振る舞いは B<RFC"
19635 "\\ 1122> での指定に従ったものである。"
19636
19637 #. type: Plain text
19638 #: build/C/man7/udp.7:122
19639 msgid ""
19640 "For compatibility with legacy code, in Linux 2.0 and 2.2 it was possible to "
19641 "set the B<SO_BSDCOMPAT> B<SOL_SOCKET> option to receive remote errors only "
19642 "when the socket has been connected (except for B<EPROTO> and B<EMSGSIZE>).  "
19643 "Locally generated errors are always passed.  Support for this socket option "
19644 "was removed in later kernels; see B<socket>(7)  for further information."
19645 msgstr ""
19646 "Linux 2.0 と 2.2 では、古いコードとの互換性のために、 B<SO_BSDCOMPAT> "
19647 "B<SOL_SOCKET> オプションを設定すれば、ソケットが接続されている 場合に限ってリ"
19648 "モートのエラーを受信するようにできた (B<EPROTO> と B<EMSGSIZE> を除く)。 ロー"
19649 "カルで生成されたエラーは常に渡される。 このソケットオプションのサポートはそれ"
19650 "以降のバージョンの Linux で 削除された。詳細は B<socket>(7)  を参照。"
19651
19652 #. type: Plain text
19653 #: build/C/man7/udp.7:131
19654 msgid ""
19655 "When the B<IP_RECVERR> option is enabled, all errors are stored in the "
19656 "socket error queue, and can be received by B<recvmsg>(2)  with the "
19657 "B<MSG_ERRQUEUE> flag set."
19658 msgstr ""
19659 "B<IP_RECVERR> オプションが有効になっていると、 すべてのエラーはソケットのエ"
19660 "ラーキューに保存される。 これは B<MSG_ERRQUEUE> フラグをセットして B<recvmsg>"
19661 "(2)  を呼べば受信できる。"
19662
19663 #. type: Plain text
19664 #: build/C/man7/udp.7:134
19665 msgid ""
19666 "System-wide UDP parameter settings can be accessed by files in the directory "
19667 "I</proc/sys/net/ipv4/>."
19668 msgstr ""
19669 "システム全体の UDP パラメータ設定には、 I</proc/sys/net/ipv4/> ディレクトリ内"
19670 "のファイルの読み書きでアクセスできる。"
19671
19672 #. type: TP
19673 #: build/C/man7/udp.7:134
19674 #, no-wrap
19675 msgid "I<udp_mem> (since Linux 2.6.25)"
19676 msgstr "I<udp_mem> (Linux 2.6.25 以降)"
19677
19678 #. type: Plain text
19679 #: build/C/man7/udp.7:138
19680 msgid ""
19681 "This is a vector of three integers governing the number of pages allowed for "
19682 "queueing by all UDP sockets."
19683 msgstr ""
19684 "これは 3 つの整数からなるベクトル値で、 UDP の全ソケットのキューで利用可能な"
19685 "ページ数を制御する。"
19686
19687 #. type: Plain text
19688 #: build/C/man7/udp.7:145
19689 msgid ""
19690 "Below this number of pages, UDP is not bothered about its memory appetite.  "
19691 "When the amount of memory allocated by UDP exceeds this number, UDP starts "
19692 "to moderate memory usage."
19693 msgstr ""
19694 "このページ数より少なければ、UDP はそのメモリ使用に関して 干渉されない。 UDP "
19695 "に割り当てられたメモリ総量がこの値を超過すると、 UDP はメモリ使用量を調整し始"
19696 "める。"
19697
19698 #. type: Plain text
19699 #: build/C/man7/udp.7:151
19700 msgid ""
19701 "This value was introduced to follow the format of I<tcp_mem> (see B<tcp>(7))."
19702 msgstr ""
19703 "この値は I<tcp_mem> の形式 (B<tcp>(7)  参照) と合わせるために導入された"
19704
19705 #. type: Plain text
19706 #: build/C/man7/udp.7:154
19707 msgid "Number of pages allowed for queueing by all UDP sockets."
19708 msgstr "UDP の全ソケットのキューで利用可能なページ数。"
19709
19710 #. type: Plain text
19711 #: build/C/man7/udp.7:158
19712 msgid ""
19713 "Defaults values for these three items are calculated at boot time from the "
19714 "amount of available memory."
19715 msgstr ""
19716 "これらの 3 つの値のデフォルト値は、 ブート時に利用可能なメモリ総量から計算さ"
19717 "れる。"
19718
19719 #. type: TP
19720 #: build/C/man7/udp.7:158
19721 #, no-wrap
19722 msgid "I<udp_rmem_min> (integer; default value: PAGE_SIZE; since Linux 2.6.25)"
19723 msgstr "I<udp_rmem_min> (integer; デフォルト値: PAGE_SIZE; Linux 2.6.25 以降)"
19724
19725 #. type: Plain text
19726 #: build/C/man7/udp.7:165
19727 msgid ""
19728 "Minimal size, in bytes, of receive buffers used by UDP sockets in "
19729 "moderation.  Each UDP socket is able to use the size for receiving data, "
19730 "even if total pages of UDP sockets exceed I<udp_mem> pressure."
19731 msgstr ""
19732 "メモリ使用量の調整中に、UDP ソケットが使用できる受信バッファの最小値 (バイト"
19733 "単位)。 UDP の全ソケットのページ使用量の合計が I<udp_mem> pressure を超過して"
19734 "いる場合であっても、 各 UDP ソケットはデータの受信にこのサイズ分だけは使用す"
19735 "ることができる。"
19736
19737 #. type: TP
19738 #: build/C/man7/udp.7:165
19739 #, no-wrap
19740 msgid "I<udp_wmem_min> (integer; default value: PAGE_SIZE; since Linux 2.6.25)"
19741 msgstr "I<udp_wmem_min> (integer; デフォルト値: PAGE_SIZE; Linux 2.6.25 以降)"
19742
19743 #. type: Plain text
19744 #: build/C/man7/udp.7:172
19745 msgid ""
19746 "Minimal size, in bytes, of send buffer used by UDP sockets in moderation.  "
19747 "Each UDP socket is able to use the size for sending data, even if total "
19748 "pages of UDP sockets exceed I<udp_mem> pressure."
19749 msgstr ""
19750 "メモリ使用量の調整中に、UDP ソケットが使用できる送信バッファの最小値 (バイト"
19751 "単位)。 UDP の全ソケットのページ使用量の合計が I<udp_mem> pressure を超過して"
19752 "いる場合であっても、 各 UDP ソケットはデータの送信にこのサイズ分だけは使用す"
19753 "ることができる。"
19754
19755 #. type: Plain text
19756 #: build/C/man7/udp.7:179
19757 msgid ""
19758 "To set or get a UDP socket option, call B<getsockopt>(2)  to read or "
19759 "B<setsockopt>(2)  to write the option with the option level argument set to "
19760 "B<IPPROTO_UDP>."
19761 msgstr ""
19762 "UDP ソケットオプションを設定または取得するには、 取得には B<getsockopt>(2)  "
19763 "を、設定には B<setsockopt>(2)  をオプションレベル引数に B<IPPROTO_UDP> を指定"
19764 "して呼び出す。"
19765
19766 #. type: TP
19767 #: build/C/man7/udp.7:179
19768 #, no-wrap
19769 msgid "B<UDP_CORK> (since Linux 2.5.44)"
19770 msgstr "B<UDP_CORK> (Linux 2.5.44 以降)"
19771
19772 #.  FIXME document UDP_ENCAP (new in kernel 2.5.67)
19773 #.  From include/linux/udp.h:
19774 #.  /* UDP encapsulation types */
19775 #.  #define UDP_ENCAP_ESPINUDP_NON_IKE      1 /* draft-ietf-ipsec-nat-t-ike-00/01 */
19776 #.  #define UDP_ENCAP_ESPINUDP      2 /* draft-ietf-ipsec-udp-encaps-06 */
19777 #.  #define UDP_ENCAP_L2TPINUDP     3 /* rfc2661 */
19778 #. type: Plain text
19779 #: build/C/man7/udp.7:192
19780 msgid ""
19781 "If this option is enabled, then all data output on this socket is "
19782 "accumulated into a single datagram that is transmitted when the option is "
19783 "disabled.  This option should not be used in code intended to be portable."
19784 msgstr ""
19785 "このオプションが指定されると、このソケットの全てのデータ出力は 一つのデータグ"
19786 "ラムに蓄積され、このオプションが無効化された時に 送信される。 このオプション"
19787 "は移植性を考慮したコードでは用いるべきではない。"
19788
19789 #. type: Plain text
19790 #: build/C/man7/udp.7:196
19791 msgid "These ioctls can be accessed using B<ioctl>(2).  The correct syntax is:"
19792 msgstr ""
19793 "以下に示す ioctl は B<ioctl>(2)  を使ってアクセスできる。 正しい文法は以下の"
19794 "通り。"
19795
19796 #. type: Plain text
19797 #: build/C/man7/udp.7:201
19798 #, no-wrap
19799 msgid ""
19800 "B<int>I< value>B<;>\n"
19801 "I<error>B< = ioctl(>I<udp_socket>B<, >I<ioctl_type>B<, &>I<value>B<);>\n"
19802 msgstr ""
19803 "B<int>I< value>B<;>\n"
19804 "I<error>B< = ioctl(>I<udp_socket>B<, >I<ioctl_type>B<, &>I<value>B<);>\n"
19805
19806 #. type: TP
19807 #: build/C/man7/udp.7:203
19808 #, no-wrap
19809 msgid "B<FIONREAD> (B<SIOCINQ>)"
19810 msgstr "B<FIONREAD> (B<SIOCINQ>)"
19811
19812 #.  See http://www.securiteam.com/unixfocus/5KP0I15IKO.html
19813 #.  "GNUnet DoS (UDP Socket Unreachable)", 14 May 2006
19814 #. type: Plain text
19815 #: build/C/man7/udp.7:221
19816 msgid ""
19817 "Gets a pointer to an integer as argument.  Returns the size of the next "
19818 "pending datagram in the integer in bytes, or 0 when no datagram is pending.  "
19819 "B<Warning:> Using B<FIONREAD>, it is impossible to distinguish the case "
19820 "where no datagram is pending from the case where the next pending datagram "
19821 "contains zero bytes of data.  It is safer to use B<select>(2), B<poll>(2), "
19822 "or B<epoll>(7)  to distinguish these cases."
19823 msgstr ""
19824
19825 #. type: TP
19826 #: build/C/man7/udp.7:221
19827 #, no-wrap
19828 msgid "B<TIOCOUTQ> (B<SIOCOUTQ>)"
19829 msgstr "B<TIOCOUTQ> (B<SIOCOUTQ>)"
19830
19831 #. type: Plain text
19832 #: build/C/man7/udp.7:225
19833 msgid ""
19834 "Returns the number of data bytes in the local send queue.  Only supported "
19835 "with Linux 2.4 and above."
19836 msgstr ""
19837 "ローカル送信キューにあるデータサイズをバイト単位で返す。 Linux 2.4 以上でのみ"
19838 "対応している。"
19839
19840 #. type: Plain text
19841 #: build/C/man7/udp.7:231
19842 msgid ""
19843 "In addition all ioctls documented in B<ip>(7)  and B<socket>(7)  are "
19844 "supported."
19845 msgstr ""
19846 "さらに、 B<ip>(7)  と B<socket>(7)  で述べられている全ての ioctl も対応してい"
19847 "る。"
19848
19849 #. type: Plain text
19850 #: build/C/man7/udp.7:237
19851 msgid ""
19852 "All errors documented for B<socket>(7)  or B<ip>(7)  may be returned by a "
19853 "send or receive on a UDP socket."
19854 msgstr ""
19855 "B<socket>(7)  や B<ip>(7)  に記述されている全てのエラーが、 UDP ソケットの送"
19856 "受信で返される可能性がある。"
19857
19858 #. type: TP
19859 #: build/C/man7/udp.7:237 build/C/man7/unix.7:320
19860 #, no-wrap
19861 msgid "B<ECONNREFUSED>"
19862 msgstr "B<ECONNREFUSED>"
19863
19864 #. type: Plain text
19865 #: build/C/man7/udp.7:241
19866 msgid ""
19867 "No receiver was associated with the destination address.  This might be "
19868 "caused by a previous packet sent over the socket."
19869 msgstr ""
19870 "行き先アドレスに関連づけられている受信者がいない。 これは以前のパケットがその"
19871 "パケットを 上書き送信してしまっているからであることが多い。"
19872
19873 #.  .SH CREDITS
19874 #.  This man page was written by Andi Kleen.
19875 #. type: Plain text
19876 #: build/C/man7/udp.7:246
19877 msgid "B<IP_RECVERR> is a new feature in Linux 2.2."
19878 msgstr "B<IP_RECVERR> は Linux 2.2 の新しい機能である。"
19879
19880 #. type: Plain text
19881 #: build/C/man7/udp.7:251
19882 msgid "B<ip>(7), B<raw>(7), B<socket>(7), B<udplite>(7)"
19883 msgstr "B<ip>(7), B<raw>(7), B<socket>(7), B<udplite>(7)"
19884
19885 #. type: Plain text
19886 #: build/C/man7/udp.7:253
19887 msgid "RFC\\ 768 for the User Datagram Protocol."
19888 msgstr "RFC\\ 768 : User Datagram Protocol"
19889
19890 #. type: Plain text
19891 #: build/C/man7/udp.7:255
19892 msgid "RFC\\ 1122 for the host requirements."
19893 msgstr "RFC\\ 1122 : ホストの必要条件"
19894
19895 #. type: Plain text
19896 #: build/C/man7/udp.7:257
19897 msgid "RFC\\ 1191 for a description of path MTU discovery."
19898 msgstr "RFC\\ 1191 : path MTU discovery の記述"
19899
19900 #. type: TH
19901 #: build/C/man7/udplite.7:25
19902 #, no-wrap
19903 msgid "UDPLITE"
19904 msgstr "UDPLITE"
19905
19906 #. type: Plain text
19907 #: build/C/man7/udplite.7:28
19908 msgid "udplite - Lightweight User Datagram Protocol"
19909 msgstr "udplite - 軽量なユーザーデータグラムプロトコル"
19910
19911 #. type: Plain text
19912 #: build/C/man7/udplite.7:36
19913 msgid "B<sockfd = socket(AF_INET, SOCK_DGRAM, IPPROTO_UDPLITE);>"
19914 msgstr "B<sockfd = socket(AF_INET, SOCK_DGRAM, IPPROTO_UDPLITE);>"
19915
19916 #. type: Plain text
19917 #: build/C/man7/udplite.7:39
19918 msgid ""
19919 "This is an implementation of the Lightweight User Datagram Protocol (UDP-"
19920 "Lite), as described in RFC\\ 3828."
19921 msgstr ""
19922 "これは RFC\\ 3828 に書かれている軽量なユーザーデータグラムプロトコル "
19923 "(Lightweight User Datagram Protocol; UDP-Lite) の実装である。"
19924
19925 #. type: Plain text
19926 #: build/C/man7/udplite.7:45
19927 msgid ""
19928 "UDP-Lite is an extension of UDP (RFC\\ 768) to support variable-length "
19929 "checksums.  This has advantages for some types of multimedia transport that "
19930 "may be able to make use of slightly damaged datagrams, rather than having "
19931 "them discarded by lower-layer protocols."
19932 msgstr ""
19933 "UDP-Lite は UDP (RFC\\ 768) の拡張で、可変長のチェックサムをサポートしてい"
19934 "る。 このプロトコルが効果を発揮するのは、少しだけ壊れたデータグラムがあった場"
19935 "合に、 そのデータグラムを下位レイヤーのプロトコルに廃棄させるのではなく、 そ"
19936 "れを利用することができるような、ある種のマルチメディア転送においてである。"
19937
19938 #. type: Plain text
19939 #: build/C/man7/udplite.7:51
19940 msgid ""
19941 "The variable-length checksum coverage is set via a B<setsockopt>(2)  "
19942 "option.  If this option is not set, the only difference to UDP is in using a "
19943 "different IP protocol identifier (IANA number 136)."
19944 msgstr ""
19945 "可変長のチェックサムの対象範囲は B<setsockopt>(2)  オプション経由で設定され"
19946 "る。 このオプションが設定されていない場合、UDP と異なるのは 違う IP プロトコ"
19947 "ル識別子 (IANA 番号 136) を使用する点だけである。"
19948
19949 #. type: Plain text
19950 #: build/C/man7/udplite.7:56
19951 msgid ""
19952 "The UDP-Lite implementation is a full extension of B<udp>(7), i.e., it "
19953 "shares the same API and API behaviour, and in addition offers two socket "
19954 "options to control the checksum coverage."
19955 msgstr ""
19956 "UDP-Lite の実装は B<udp>(7)  の完全な拡張、すなわち API と API の動作は同じで"
19957 "ある。 これに加えて、2 つのソケットオプションがチェックサムの対象範囲を 制御"
19958 "するために提供されている。"
19959
19960 #. type: Plain text
19961 #: build/C/man7/udplite.7:65
19962 msgid ""
19963 "UDP-Litev4 uses the I<sockaddr_in> address format described in B<ip>(7).  "
19964 "UDP-Litev6 uses the I<sockaddr_in6> address format described in B<ipv6>(7)."
19965 msgstr ""
19966 "UDP-Litev4 は B<ip>(7)  で説明されている I<sockaddr_in> アドレスを使用する。 "
19967 "UDP-Litev6 は B<ipv6>(7)  で説明されている I<sockaddr_in6> アドレスを使用す"
19968 "る。"
19969
19970 #. type: Plain text
19971 #: build/C/man7/udplite.7:78
19972 msgid ""
19973 "To set or get a UDP-Lite socket option, call B<getsockopt>(2)  to read or "
19974 "B<setsockopt>(2)  to write the option with the option level argument set to "
19975 "B<IPPROTO_UDPLITE>.  In addition, all B<IPPROTO_UDP> socket options are "
19976 "valid on a UDP-Lite socket.  See B<udp>(7)  for more information."
19977 msgstr ""
19978 "UDP-Lite のソケットオプションを設定/取得するには、 オプションレベル引き数に "
19979 "B<IPPROTO_UDPLITE> を指定して、取得時には B<getsockopt>(2)  を、設定時には "
19980 "B<setsockopt>(2)  を呼び出す。さらに、全ての B<IPPROTO_UDP> のソケットオプ"
19981 "ションが UDP-Lite ソケットでも使用できる。 詳細は B<udp>(7)  を参照のこと。"
19982
19983 #. type: Plain text
19984 #: build/C/man7/udplite.7:80
19985 msgid "The following two options are specific to UDP-Lite."
19986 msgstr "以下の 2 つが UDP-Lite に固有のオプションである。"
19987
19988 #. type: TP
19989 #: build/C/man7/udplite.7:80
19990 #, no-wrap
19991 msgid "B<UDPLITE_SEND_CSCOV>"
19992 msgstr "B<UDPLITE_SEND_CSCOV>"
19993
19994 #. type: Plain text
19995 #: build/C/man7/udplite.7:85
19996 msgid ""
19997 "This option sets the sender checksum coverage and takes an I<int> as "
19998 "argument, with a checksum coverage value in the range 0..2^16-1."
19999 msgstr ""
20000 "このオプションは送信側のチェックサムの対象範囲を設定する。 I<int> 型を引き数"
20001 "として取り、設定可能な値の範囲は 0 から 2^16-1 までである。"
20002
20003 #. type: Plain text
20004 #: build/C/man7/udplite.7:89
20005 msgid ""
20006 "A value of 0 means that the entire datagram is always covered.  Values from "
20007 "1-7 are illegal (RFC\\ 3828, 3.1) and are rounded up to the minimum coverage "
20008 "of 8."
20009 msgstr ""
20010 "値 0 はデータグラム全体が常にチェックサムの対象となることを意味する。 値 1〜"
20011 "7 は不正であり (RFC\\ 3828 の 3.1 章)、範囲の設定として最小値である 8 に切り"
20012 "上げられる。"
20013
20014 #. type: Plain text
20015 #: build/C/man7/udplite.7:95
20016 msgid ""
20017 "With regard to IPv6 jumbograms (RFC\\ 2675), the UDP-Litev6 checksum "
20018 "coverage is limited to the first 2^16-1 octets, as per RFC\\ 3828, 3.5.  "
20019 "Higher values are therefore silently truncated to 2^16-1.  If in doubt, the "
20020 "current coverage value can always be queried using B<getsockopt>(2)."
20021 msgstr ""
20022 "IPv6 の jumbograms (巨大なデータグラム; RFC\\ 2675) の場合には、 UDP-Litev6 "
20023 "のチェックサムの対象範囲は、RFC\\ 3828 の 3.5 章にあるように、 先頭から "
20024 "2^16-1 オクテットまでに限定される。 そのため、それより大きな値は 2^16-1 に"
20025 "黙って切り詰められる。 現在の対象範囲の値を知りたければ、いつでも "
20026 "B<getsockopt>(2)  を使って値を問い合わせることができる。"
20027
20028 #. type: TP
20029 #: build/C/man7/udplite.7:95
20030 #, no-wrap
20031 msgid "B<UDPLITE_RECV_CSCOV>"
20032 msgstr "B<UDPLITE_RECV_CSCOV>"
20033
20034 #. type: Plain text
20035 #: build/C/man7/udplite.7:106
20036 msgid ""
20037 "This is the receiver-side analogue and uses the same argument format and "
20038 "value range as B<UDPLITE_SEND_CSCOV>.  This option is not required to enable "
20039 "traffic with partial checksum coverage.  Its function is that of a traffic "
20040 "filter: when enabled, it instructs the kernel to drop all packets which have "
20041 "a coverage I<less> than the specified coverage value."
20042 msgstr ""
20043 "これは受信側のチェックサムの対象範囲を設定するもので、 使用される引き数形式と"
20044 "値の範囲は B<UDPLITE_SEND_CSCOV> と同じである。 このオプションは、部分的な"
20045 "チェックサム対象範囲を持つトラフィックを 有効にするのに必要なわけではなく、ト"
20046 "ラフィックフィルターとして機能する。 このオプションが有効にすると、カーネルは"
20047 "指定されたチェックサム対象範囲 よりも「短かい」対象範囲を持つパケットを全て廃"
20048 "棄するようになる。"
20049
20050 #.  SO_NO_CHECK exists and is supported by UDPv4, but is
20051 #.  commented out in socket(7), hence also commented out here
20052 #. .PP
20053 #. Since UDP-Lite mandates checksums, checksumming can not be disabled
20054 #. via the
20055 #. .B SO_NO_CHECK
20056 #. option from
20057 #. .BR socket (7).
20058 #. type: Plain text
20059 #: build/C/man7/udplite.7:119
20060 msgid ""
20061 "When the value of B<UDPLITE_RECV_CSCOV> exceeds the actual packet coverage, "
20062 "incoming packets are silently dropped, but may generate a warning message in "
20063 "the system log."
20064 msgstr ""
20065 "B<UDPLITE_RECV_CSCOV> の値が実際のパケットのチェックサム対象範囲よりも大きい"
20066 "場合、 受信したパケットは黙って廃棄される。 ただし、システムログに対して警告"
20067 "メッセージが生成されるかもしれない。"
20068
20069 #. type: Plain text
20070 #: build/C/man7/udplite.7:124
20071 msgid ""
20072 "All errors documented for B<udp>(7)  may be returned.  UDP-Lite does not add "
20073 "further errors."
20074 msgstr ""
20075 "B<udp>(7)  について書かれている全てのエラーは返る可能性がある。 UDP-Lite 自体"
20076 "は新たなエラーは追加していない。"
20077
20078 #.  FIXME . remove this section once glibc supports UDP-Lite
20079 #. type: Plain text
20080 #: build/C/man7/udplite.7:127
20081 msgid "Where glibc support is missing, the following definitions are needed:"
20082 msgstr "glibc によるサポートがない場合は、以下の定義を行う必要がある。"
20083
20084 #.  The following two are defined in the kernel in linux/net/udplite.h
20085 #. type: Plain text
20086 #: build/C/man7/udplite.7:134
20087 #, no-wrap
20088 msgid ""
20089 "#define IPPROTO_UDPLITE     136\n"
20090 "#define UDPLITE_SEND_CSCOV  10\n"
20091 "#define UDPLITE_RECV_CSCOV  11\n"
20092 msgstr ""
20093 "#define IPPROTO_UDPLITE     136\n"
20094 "#define UDPLITE_SEND_CSCOV  10\n"
20095 "#define UDPLITE_RECV_CSCOV  11\n"
20096
20097 #. type: Plain text
20098 #: build/C/man7/udplite.7:139
20099 msgid "I</proc/net/snmp> - basic UDP-Litev4 statistics counters."
20100 msgstr "I</proc/net/snmp> - UDP-Litev4 の基本的な統計情報カウンター。"
20101
20102 #. type: Plain text
20103 #: build/C/man7/udplite.7:142
20104 msgid "I</proc/net/snmp6> - basic UDP-Litev6 statistics counters."
20105 msgstr "I</proc/net/snmp6> - UDP-Litev6 の基本的な統計情報カウンター。"
20106
20107 #. type: Plain text
20108 #: build/C/man7/udplite.7:144
20109 msgid "UDP-Litev4/v6 first appeared in Linux 2.6.20."
20110 msgstr "UDP-Litev4/v6 は Linux 2.6.20 で初めて登場した。"
20111
20112 #. type: Plain text
20113 #: build/C/man7/udplite.7:149
20114 msgid "B<ip>(7), B<ipv6>(7), B<socket>(7), B<udp>(7)"
20115 msgstr "B<ip>(7), B<ipv6>(7), B<socket>(7), B<udp>(7)"
20116
20117 #. type: Plain text
20118 #: build/C/man7/udplite.7:151
20119 msgid "RFC\\ 3828 for the Lightweight User Datagram Protocol (UDP-Lite)"
20120 msgstr "RFC\\ 3828 for the Lightweight User Datagram Protocol (UDP-Lite)"
20121
20122 #. type: Plain text
20123 #: build/C/man7/udplite.7:153
20124 msgid "I<Documentation/networking/udplite.txt>"
20125 msgstr "I<Documentation/networking/udplite.txt>"
20126
20127 #. type: TH
20128 #: build/C/man7/unix.7:15
20129 #, no-wrap
20130 msgid "UNIX"
20131 msgstr "UNIX"
20132
20133 #. type: TH
20134 #: build/C/man7/unix.7:15
20135 #, fuzzy, no-wrap
20136 #| msgid "2011-09-08"
20137 msgid "2011-09-15"
20138 msgstr "2011-09-08"
20139
20140 #. type: Plain text
20141 #: build/C/man7/unix.7:19
20142 msgid "unix, AF_UNIX, AF_LOCAL - Sockets for local interprocess communication"
20143 msgstr "unix, AF_UNIX, AF_LOCAL - ローカルな プロセス間通信用のソケット"
20144
20145 #. type: Plain text
20146 #: build/C/man7/unix.7:23
20147 msgid "B<#include E<lt>sys/un.hE<gt>>"
20148 msgstr "B<#include E<lt>sys/un.hE<gt>>"
20149
20150 #. type: Plain text
20151 #: build/C/man7/unix.7:25
20152 msgid "I<unix_socket>B< = socket(AF_UNIX, type, 0);>"
20153 msgstr "I<unix_socket>B< = socket(AF_UNIX, type, 0);>"
20154
20155 #. type: Plain text
20156 #: build/C/man7/unix.7:27
20157 msgid "I<error>B< = socketpair(AF_UNIX, type, 0, int *>I<sv>B<);>"
20158 msgstr "I<error>B< = socketpair(AF_UNIX, type, 0, int *>I<sv>B<);>"
20159
20160 #. type: Plain text
20161 #: build/C/man7/unix.7:38
20162 #, fuzzy
20163 #| msgid ""
20164 #| "The B<AF_UNIX> (also known as B<AF_LOCAL>)  socket family is used to "
20165 #| "communicate between processes on the same machine efficiently.  "
20166 #| "Traditionally, Unix sockets can be either unnamed, or bound to a file "
20167 #| "system pathname (marked as being of type socket).  Linux also supports an "
20168 #| "abstract namespace which is independent of the file system."
20169 msgid ""
20170 "The B<AF_UNIX> (also known as B<AF_LOCAL>)  socket family is used to "
20171 "communicate between processes on the same machine efficiently.  "
20172 "Traditionally, UNIX domain sockets can be either unnamed, or bound to a file "
20173 "system pathname (marked as being of type socket).  Linux also supports an "
20174 "abstract namespace which is independent of the file system."
20175 msgstr ""
20176 "B<AF_UNIX> (B<AF_LOCAL> とも言われる) ソケットファミリーは、同じマシン上でプ"
20177 "ロセス同士が 効率的に通信するために用いられる。 伝統的に、Unix ソケットは、名"
20178 "前なしにもできるし、 (ソケット型であると印のついた) ファイルシステムのパス名"
20179 "に 結び付けることもできる。 さらに Linux では、ファイルシステムに依存しない "
20180 "抽象名前空間 (abstract namespace) もサポートしている。"
20181
20182 #. type: Plain text
20183 #: build/C/man7/unix.7:50
20184 #, fuzzy
20185 #| msgid ""
20186 #| "Valid types are: B<SOCK_STREAM>, for a stream-oriented socket and "
20187 #| "B<SOCK_DGRAM>, for a datagram-oriented socket that preserves message "
20188 #| "boundaries (as on most Unix implementations, Unix domain datagram sockets "
20189 #| "are always reliable and don't reorder datagrams); and (since Linux "
20190 #| "2.6.4)  B<SOCK_SEQPACKET>, for a connection-oriented socket that "
20191 #| "preserves message boundaries and delivers messages in the order that they "
20192 #| "were sent."
20193 msgid ""
20194 "Valid types are: B<SOCK_STREAM>, for a stream-oriented socket and "
20195 "B<SOCK_DGRAM>, for a datagram-oriented socket that preserves message "
20196 "boundaries (as on most UNIX implementations, UNIX domain datagram sockets "
20197 "are always reliable and don't reorder datagrams); and (since Linux 2.6.4)  "
20198 "B<SOCK_SEQPACKET>, for a connection-oriented socket that preserves message "
20199 "boundaries and delivers messages in the order that they were sent."
20200 msgstr ""
20201 "有効なタイプを以下に示す。 B<SOCK_STREAM> はストリーム指向のソケットである。 "
20202 "B<SOCK_DGRAM> はメッセージ境界を保存するデータグラム指向のソケットである (ほ"
20203 "とんどの Unix の実装では、Unix ドメイン・データグラム・ソケットは 常に信頼で"
20204 "き、データグラムの並び替えは行わない)。 B<SOCK_SEQPACKET> はメッセージ境界を"
20205 "保存し、送信された順序でメッセージを届ける接続指向ソケット である (Linux "
20206 "2.6.4 以降で利用できる)。"
20207
20208 #. type: Plain text
20209 #: build/C/man7/unix.7:53
20210 #, fuzzy
20211 #| msgid ""
20212 #| "Unix sockets support passing file descriptors or process credentials to "
20213 #| "other processes using ancillary data."
20214 msgid ""
20215 "UNIX domain sockets support passing file descriptors or process credentials "
20216 "to other processes using ancillary data."
20217 msgstr ""
20218 "Unix ソケットでは、補助データを使って ファイルディスクリプタやプロセスの信任"
20219 "状 (credential) を 送受信することもできる。"
20220
20221 #. type: Plain text
20222 #: build/C/man7/unix.7:55
20223 #, fuzzy
20224 #| msgid ""
20225 #| "A Unix domain socket address is represented in the following structure:"
20226 msgid "A UNIX domain socket address is represented in the following structure:"
20227 msgstr "Unix ドメインソケットのアドレスは以下の構造体で表現される。"
20228
20229 #. type: Plain text
20230 #: build/C/man7/unix.7:59
20231 #, no-wrap
20232 msgid "#define UNIX_PATH_MAX    108\n"
20233 msgstr "#define UNIX_PATH_MAX    108\n"
20234
20235 #. type: Plain text
20236 #: build/C/man7/unix.7:64
20237 #, no-wrap
20238 msgid ""
20239 "struct sockaddr_un {\n"
20240 "    sa_family_t sun_family;               /* AF_UNIX */\n"
20241 "    char        sun_path[UNIX_PATH_MAX];  /* pathname */\n"
20242 "};\n"
20243 msgstr ""
20244 "struct sockaddr_un {\n"
20245 "    sa_family_t sun_family;               /* AF_UNIX */\n"
20246 "    char        sun_path[UNIX_PATH_MAX];  /* pathname */\n"
20247 "};\n"
20248
20249 #. type: Plain text
20250 #: build/C/man7/unix.7:70
20251 msgid "I<sun_family> always contains B<AF_UNIX>."
20252 msgstr "I<sun_family> には必ず B<AF_UNIX> が入っている。"
20253
20254 #. type: Plain text
20255 #: build/C/man7/unix.7:72
20256 msgid "Three types of address are distinguished in this structure:"
20257 msgstr "この構造体では 3 種類のアドレスが区別される。"
20258
20259 #. type: Plain text
20260 #: build/C/man7/unix.7:87
20261 #, fuzzy
20262 #| msgid ""
20263 #| "I<pathname>: a Unix domain socket can be bound to a null-terminated file "
20264 #| "system pathname using B<bind>(2).  When the address of the socket is "
20265 #| "returned by B<getsockname>(2), B<getpeername>(2), and B<accept>(2), its "
20266 #| "length is I<sizeof(sa_family_t) + strlen(sun_path) + 1>, and I<sun_path> "
20267 #| "contains the null-terminated pathname."
20268 msgid ""
20269 "I<pathname>: a UNIX domain socket can be bound to a null-terminated file "
20270 "system pathname using B<bind>(2).  When the address of the socket is "
20271 "returned by B<getsockname>(2), B<getpeername>(2), and B<accept>(2), its "
20272 "length is I<offsetof(struct sockaddr_un, sun_path) + strlen(sun_path) + 1>, "
20273 "and I<sun_path> contains the null-terminated pathname."
20274 msgstr ""
20275 "I<pathname (パス名)>: B<bind>(2)  を使って、Unix ドメインソケットを NULL 終端"
20276 "されたファイルシステム上の パス名に結び付けることができる。 B<getsockname>"
20277 "(2), B<getpeername>(2), B<accept>(2)  がソケットのアドレスを返す際には、 その"
20278 "長さは I<sizeof(sa_family_t) + strlen(sun_path) + 1> であり、 I<sun_path> に "
20279 "NULL 終端されたパス名が格納される。"
20280
20281 #.  There is quite some variation across implementations: FreeBSD
20282 #.  says the length is 16 bytes, HP-UX 11 says it's zero bytes.
20283 #. type: Plain text
20284 #: build/C/man7/unix.7:107
20285 msgid ""
20286 "I<unnamed>: A stream socket that has not been bound to a pathname using "
20287 "B<bind>(2)  has no name.  Likewise, the two sockets created by B<socketpair>"
20288 "(2)  are unnamed.  When the address of an unnamed socket is returned by "
20289 "B<getsockname>(2), B<getpeername>(2), and B<accept>(2), its length is "
20290 "I<sizeof(sa_family_t)>, and I<sun_path> should not be inspected."
20291 msgstr ""
20292 "I<unnamed (名前なし)>: B<bind>(2)  を使ってパス名に結び付けることができないス"
20293 "トリーム型のソケットは 名前を持たない。同様に、 B<socketpair>(2)  で作成され"
20294 "る 2 つのソケットも名前を持たない。 B<getsockname>(2), B<getpeername>(2), "
20295 "B<accept>(2)  が名前なしのソケットのアドレスを返す際には、 その長さは "
20296 "I<sizeof(sa_family_t)> であり、 I<sun_path> は検査すべきではない。"
20297
20298 #. type: Plain text
20299 #: build/C/man7/unix.7:133
20300 #, fuzzy
20301 #| msgid ""
20302 #| "I<abstract>: an abstract socket address is distinguished by the fact that "
20303 #| "I<sun_path[0]> is a null byte ('\\e0').  All of the remaining bytes in "
20304 #| "I<sun_path> define the \"name\" of the socket.  (Null bytes in the name "
20305 #| "have no special significance.)  The name has no connection with file "
20306 #| "system pathnames.  The socket's address in this namespace is given by the "
20307 #| "rest of the bytes in I<sun_path>.  When the address of an abstract socket "
20308 #| "is returned by B<getsockname>(2), B<getpeername>(2), and B<accept>(2), "
20309 #| "its length is I<sizeof(struct sockaddr_un)>, and I<sun_path> contains the "
20310 #| "abstract name.  The abstract socket namespace is a nonportable Linux "
20311 #| "extension."
20312 msgid ""
20313 "I<abstract>: an abstract socket address is distinguished by the fact that "
20314 "I<sun_path[0]> is a null byte (\\(aq\\e0\\(aq).  The socket's address in "
20315 "this namespace is given by the additional bytes in I<sun_path> that are "
20316 "covered by the specified length of the address structure.  (Null bytes in "
20317 "the name have no special significance.)  The name has no connection with "
20318 "file system pathnames.  When the address of an abstract socket is returned "
20319 "by B<getsockname>(2), B<getpeername>(2), and B<accept>(2), the returned "
20320 "I<addrlen> is greater than I<sizeof(sa_family_t)> (i.e., greater than 2), "
20321 "and the name of the socket is contained in the first I<(addrlen - sizeof"
20322 "(sa_family_t))> bytes of I<sun_path>.  The abstract socket namespace is a "
20323 "nonportable Linux extension."
20324 msgstr ""
20325 "I<abstract (抽象)>: 抽象ソケットアドレスは、 I<sun_path[0]> がヌルバイト "
20326 "('\\e0') であることから区別できる。 I<sun_path> の残りの全バイトによりソケッ"
20327 "トの「名前」が定義される (名前中のヌルバイトには特別な意味はない)。 この名前"
20328 "はファイルシステムのパス名とは何の関係もない。 この名前空間におけるソケットの"
20329 "アドレスは、 I<sun_path> の残りのバイトで表される。 B<getsockname>(2), "
20330 "B<getpeername>(2), B<accept>(2)  が抽象ソケットのアドレスを返す際には、その長"
20331 "さは I<sizeof(struct sockaddr_un)> であり、 I<sun_path> に抽象名前空間の名前"
20332 "が格納される。 ソケットの抽象名前空間は Linux による拡張であり、移植性はな"
20333 "い。"
20334
20335 #. type: Plain text
20336 #: build/C/man7/unix.7:146
20337 msgid ""
20338 "For historical reasons these socket options are specified with a "
20339 "B<SOL_SOCKET> type even though they are B<AF_UNIX> specific.  They can be "
20340 "set with B<setsockopt>(2)  and read with B<getsockopt>(2)  by specifying "
20341 "B<SOL_SOCKET> as the socket family."
20342 msgstr ""
20343 "歴史的な理由により、これらのオプションは たとえ B<AF_UNIX> 固有のオプションで"
20344 "あっても B<SOL_SOCKET> 型で指定する。 ソケットファミリーとして B<SOL_SOCKET> "
20345 "を指定すると、 B<setsockopt>(2)  でオプションが設定でき、 B<getsockopt>(2)  "
20346 "で取得ができる。"
20347
20348 #. type: TP
20349 #: build/C/man7/unix.7:146
20350 #, no-wrap
20351 msgid "B<SO_PASSCRED>"
20352 msgstr "B<SO_PASSCRED>"
20353
20354 #. type: Plain text
20355 #: build/C/man7/unix.7:153
20356 #, fuzzy
20357 #| msgid ""
20358 #| "Enables the receiving of the credentials of the sending process ancillary "
20359 #| "message.  When this option is set and the socket is not yet connected a "
20360 #| "unique name in the abstract namespace will be generated automatically.  "
20361 #| "Expects an integer boolean flag."
20362 msgid ""
20363 "Enables the receiving of the credentials of the sending process in an "
20364 "ancillary message.  When this option is set and the socket is not yet "
20365 "connected a unique name in the abstract namespace will be generated "
20366 "automatically.  Expects an integer boolean flag."
20367 msgstr ""
20368 "送信プロセスの補助メッセージとして信任状を受信できるようにする。 このオプショ"
20369 "ンがセットされていて、まだソケットが接続されていないと、 抽象名前空間に他と重"
20370 "ならない名前が自動的に生成される。 ブール整数値のフラグを取る。"
20371
20372 #. type: SS
20373 #: build/C/man7/unix.7:153
20374 #, no-wrap
20375 msgid "Autobind Feature"
20376 msgstr ""
20377
20378 #.  i.e. sizeof(short)
20379 #. type: Plain text
20380 #: build/C/man7/unix.7:170
20381 msgid ""
20382 "If a B<bind>(2)  call specifies I<addrlen> as I<sizeof(sa_family_t)>, or the "
20383 "B<SO_PASSCRED> socket option was specified for a socket that was not "
20384 "explicitly bound to an address, then the socket is autobound to an abstract "
20385 "address.  The address consists of a null byte followed by 5 bytes in the "
20386 "character set I<[0-9a-f]>.  (Thus, there is a limit of 2^20 autobind "
20387 "addresses.)"
20388 msgstr ""
20389
20390 #. type: Plain text
20391 #: build/C/man7/unix.7:173
20392 #, fuzzy
20393 #| msgid ""
20394 #| "The following paragraphs describe domain-specific details and unsupported "
20395 #| "features of the sockets API for Unix domain sockets on Linux."
20396 msgid ""
20397 "The following paragraphs describe domain-specific details and unsupported "
20398 "features of the sockets API for UNIX domain sockets on Linux."
20399 msgstr ""
20400 "この節では、Linux の Unix ドメイン・ソケットでの、 ドメイン固有の詳細仕様とソ"
20401 "ケット API でサポートされていない機能に ついて説明する。"
20402
20403 #. type: Plain text
20404 #: build/C/man7/unix.7:181
20405 #, fuzzy
20406 #| msgid ""
20407 #| "Unix domain sockets do not support the transmission of out-of-band data "
20408 #| "(the B<MSG_OOB> flag for B<send>(2)  and B<recv>(2))."
20409 msgid ""
20410 "UNIX domain sockets do not support the transmission of out-of-band data (the "
20411 "B<MSG_OOB> flag for B<send>(2)  and B<recv>(2))."
20412 msgstr ""
20413 "Unix ドメイン・ソケットでは、帯域外データ (out-of-band data) の 送信 (B<send>"
20414 "(2)  と B<recv>(2)  の B<MSG_OOB> フラグ) はサポートされていない。"
20415
20416 #. type: Plain text
20417 #: build/C/man7/unix.7:186
20418 #, fuzzy
20419 #| msgid ""
20420 #| "The B<send>(2)  B<MSG_MORE> flag is not supported by Unix domain sockets."
20421 msgid ""
20422 "The B<send>(2)  B<MSG_MORE> flag is not supported by UNIX domain sockets."
20423 msgstr ""
20424 "B<send>(2)  B<MSG_MORE> フラグは Unix ドメイン・ソケットではサポートされてい"
20425 "ない。"
20426
20427 #. type: Plain text
20428 #: build/C/man7/unix.7:194
20429 #, fuzzy
20430 #| msgid ""
20431 #| "The use of B<MSG_TRUNC> in the I<flags> argument of B<recv>(2)  is not "
20432 #| "supported by Unix domain sockets."
20433 msgid ""
20434 "The use of B<MSG_TRUNC> in the I<flags> argument of B<recv>(2)  is not "
20435 "supported by UNIX domain sockets."
20436 msgstr ""
20437 "B<recv>(2)  の I<flags> 引き数での B<MSG_TRUNC> の使用は Unix ドメイン・ソ"
20438 "ケットではサポートされていない。"
20439
20440 #. type: Plain text
20441 #: build/C/man7/unix.7:206
20442 #, fuzzy
20443 #| msgid ""
20444 #| "The B<SO_SNDBUF> socket option does have an effect for Unix domain "
20445 #| "sockets, but the B<SO_RCVBUF> option does not.  For datagram sockets, the "
20446 #| "B<SO_SNDBUF> value imposes an upper limit on the size of outgoing "
20447 #| "datagrams.  This limit is calculated as the doubled (see B<socket>(7))  "
20448 #| "option value less 32 bytes used for overhead."
20449 msgid ""
20450 "The B<SO_SNDBUF> socket option does have an effect for UNIX domain sockets, "
20451 "but the B<SO_RCVBUF> option does not.  For datagram sockets, the "
20452 "B<SO_SNDBUF> value imposes an upper limit on the size of outgoing "
20453 "datagrams.  This limit is calculated as the doubled (see B<socket>(7))  "
20454 "option value less 32 bytes used for overhead."
20455 msgstr ""
20456 "B<SO_SNDBUF> ソケットオプションは Unix ドメイン・ソケットで効果を持つが、 "
20457 "B<SO_RCVBUF> は効果がない。 データグラム・ソケットでは、 B<SO_SNDBUF> の値が"
20458 "出力データグラムの上限サイズとなる。 実際の上限値は、 B<SO_SNDBUF> オプション"
20459 "として設定された値の 2倍 (B<socket>(7)  参照) からオーバヘッドとして使用され"
20460 "る 32 バイトを引いた値となる。"
20461
20462 #. type: SS
20463 #: build/C/man7/unix.7:206
20464 #, no-wrap
20465 msgid "Ancillary Messages"
20466 msgstr "補助メッセージ"
20467
20468 #. type: Plain text
20469 #: build/C/man7/unix.7:228
20470 msgid ""
20471 "Ancillary data is sent and received using B<sendmsg>(2)  and B<recvmsg>(2).  "
20472 "For historical reasons the ancillary message types listed below are "
20473 "specified with a B<SOL_SOCKET> type even though they are B<AF_UNIX> "
20474 "specific.  To send them set the I<cmsg_level> field of the struct I<cmsghdr> "
20475 "to B<SOL_SOCKET> and the I<cmsg_type> field to the type.  For more "
20476 "information see B<cmsg>(3)."
20477 msgstr ""
20478 "補助データを送受するには、 B<sendmsg>(2)  や B<recvmsg>(2)  を使用する。 歴史"
20479 "的な理由により、以下に示す補助メッセージの型は たとえ B<AF_UNIX> 固有のもので"
20480 "あっても B<SOL_SOCKET> 型で指定する。 これらを送るには、構造体 I<cmsghdr> の "
20481 "I<cmsg_level> フィールドに B<SOL_SOCKET> をセットし、 I<cmsg_type> フィールド"
20482 "にタイプをセットする。 詳細は B<cmsg>(3)  を見よ。"
20483
20484 #. type: TP
20485 #: build/C/man7/unix.7:228
20486 #, no-wrap
20487 msgid "B<SCM_RIGHTS>"
20488 msgstr "B<SCM_RIGHTS>"
20489
20490 #. type: Plain text
20491 #: build/C/man7/unix.7:234
20492 msgid ""
20493 "Send or receive a set of open file descriptors from another process.  The "
20494 "data portion contains an integer array of the file descriptors.  The passed "
20495 "file descriptors behave as though they have been created with B<dup>(2)."
20496 msgstr ""
20497 "他のプロセスでオープンされたファイルディスクリプタのセットを送受信する。 デー"
20498 "タ部分にファイルディスクリプタの整数配列が入っている。 渡されたファイルディス"
20499 "クリプタは、あたかも B<dup>(2)  で生成されたかのように振る舞う。"
20500
20501 #. type: TP
20502 #: build/C/man7/unix.7:234
20503 #, no-wrap
20504 msgid "B<SCM_CREDENTIALS>"
20505 msgstr "B<SCM_CREDENTIALS>"
20506
20507 #. type: Plain text
20508 #: build/C/man7/unix.7:244
20509 #, fuzzy
20510 #| msgid ""
20511 #| "Send or receive Unix credentials.  This can be used for authentication.  "
20512 #| "The credentials are passed as a I<struct ucred> ancillary message.  Thus "
20513 #| "structure is defined in I<E<lt>sys/socket.hE<gt>> as follows:"
20514 msgid ""
20515 "Send or receive UNIX credentials.  This can be used for authentication.  The "
20516 "credentials are passed as a I<struct ucred> ancillary message.  Thus "
20517 "structure is defined in I<E<lt>sys/socket.hE<gt>> as follows:"
20518 msgstr ""
20519 "Unix 信任状を送受信する。これは認証に用いることができる。 信任状は、 "
20520 "I<struct ucred> の補助メッセージとして渡される。 この構造体は I<E<lt>sys/"
20521 "socket.hE<gt>> で以下のように定義されている。"
20522
20523 #. type: Plain text
20524 #: build/C/man7/unix.7:252
20525 #, no-wrap
20526 msgid ""
20527 "struct ucred {\n"
20528 "    pid_t pid;    /* process ID of the sending process */\n"
20529 "    uid_t uid;    /* user ID of the sending process */\n"
20530 "    gid_t gid;    /* group ID of the sending process */\n"
20531 "};\n"
20532 msgstr ""
20533 "struct ucred {\n"
20534 "    pid_t pid;    /* process ID of the sending process */\n"
20535 "    uid_t uid;    /* user ID of the sending process */\n"
20536 "    gid_t gid;    /* group ID of the sending process */\n"
20537 "};\n"
20538
20539 #. type: Plain text
20540 #: build/C/man7/unix.7:261
20541 #, fuzzy
20542 #| msgid ""
20543 #| "Since glibc 2.8, the B<_GNU_SOURCE> feature test macro must be defined in "
20544 #| "order to obtain the definition of this structure."
20545 msgid ""
20546 "Since glibc 2.8, the B<_GNU_SOURCE> feature test macro must be defined "
20547 "(before including I<any> header files) in order to obtain the definition of "
20548 "this structure."
20549 msgstr ""
20550 "glibc 2.8 以降では、この構造体の定義を得るためには機能検査マクロ "
20551 "B<_GNU_SOURCE> を定義しなければならない。"
20552
20553 #. type: Plain text
20554 #: build/C/man7/unix.7:277
20555 msgid ""
20556 "The credentials which the sender specifies are checked by the kernel.  A "
20557 "process with effective user ID 0 is allowed to specify values that do not "
20558 "match its own.  The sender must specify its own process ID (unless it has "
20559 "the capability B<CAP_SYS_ADMIN>), its user ID, effective user ID, or saved "
20560 "set-user-ID (unless it has B<CAP_SETUID>), and its group ID, effective group "
20561 "ID, or saved set-group-ID (unless it has B<CAP_SETGID>).  To receive a "
20562 "I<struct ucred> message the B<SO_PASSCRED> option must be enabled on the "
20563 "socket."
20564 msgstr ""
20565 "送信側が指定した信任状は、カーネルがチェックする。 実効ユーザー ID が 0 のプ"
20566 "ロセスには、 自分自身以外の値を指定する事が許される。 送信側は以下の 3 つを指"
20567 "定しなければならない。 1) 自分自身のプロセス ID (B<CAP_SYS_ADMIN> 権限を持っ"
20568 "ていない場合)、 2) 自分自身のユーザー ID あるいは実効ユーザー ID か保存 set-"
20569 "user-ID (B<CAP_SETUID> 権限を持っていない場合)、 3) 自分自身のグループ ID あ"
20570 "るいは実行グループ ID か保存 set-group-ID (B<CAP_SETGID> を持っていない場"
20571 "合)。 I<struct ucred> メッセージを受信するためには、ソケットに対し "
20572 "B<SO_PASSCRED> オプションを有効にしなくてはならない。"
20573
20574 #. type: Plain text
20575 #: build/C/man7/unix.7:288
20576 #, fuzzy, no-wrap
20577 #| msgid ""
20578 #| "B<int>I< value>B<;>\n"
20579 #| "I<error>B< = ioctl(>I<udp_socket>B<, >I<ioctl_type>B<, &>I<value>B<);>\n"
20580 msgid ""
20581 "B<int>I< value>B<;>\n"
20582 "I<error>B< = ioctl(>I<unix_socket>B<, >I<ioctl_type>B<, &>I<value>B<);>\n"
20583 msgstr ""
20584 "B<int>I< value>B<;>\n"
20585 "I<error>B< = ioctl(>I<udp_socket>B<, >I<ioctl_type>B<, &>I<value>B<);>\n"
20586
20587 #. type: Plain text
20588 #: build/C/man7/unix.7:293
20589 #, fuzzy
20590 #| msgid "I<ioctl_type> is one of the following:"
20591 msgid "I<ioctl_type> can be:"
20592 msgstr "I<ioctl_type> は以下のいずれか一つである:"
20593
20594 #. type: Plain text
20595 #: build/C/man7/unix.7:320
20596 #, fuzzy
20597 #| msgid ""
20598 #| "Selected local address is already taken or file system socket object "
20599 #| "already exists."
20600 msgid ""
20601 "The specified local address is already in use or the file system socket "
20602 "object already exists."
20603 msgstr ""
20604 "選択したソケットが既に用いられていた。または、 ファイルシステムのソケットオブ"
20605 "ジェクトが既に存在していた。"
20606
20607 #. type: Plain text
20608 #: build/C/man7/unix.7:326
20609 msgid ""
20610 "The remote address specified by B<connect>(2)  was not a listening socket.  "
20611 "This error can also occur if the target filename is not a socket."
20612 msgstr ""
20613
20614 #. type: TP
20615 #: build/C/man7/unix.7:326
20616 #, no-wrap
20617 msgid "B<ECONNRESET>"
20618 msgstr "B<ECONNRESET>"
20619
20620 #. type: Plain text
20621 #: build/C/man7/unix.7:329
20622 msgid "Remote socket was unexpectedly closed."
20623 msgstr "リモートソケットが予期しないかたちでクローズされた。"
20624
20625 #. type: Plain text
20626 #: build/C/man7/unix.7:332
20627 msgid "User memory address was not valid."
20628 msgstr "ユーザーメモリアドレスが不正。"
20629
20630 #. type: Plain text
20631 #: build/C/man7/unix.7:341
20632 #, fuzzy
20633 #| msgid ""
20634 #| "Invalid argument passed.  A common cause is the missing setting of "
20635 #| "AF_UNIX in the I<sun_type> field of passed addresses or the socket being "
20636 #| "in an invalid state for the applied operation."
20637 msgid ""
20638 "Invalid argument passed.  A common cause is that the value B<AF_UNIX> was "
20639 "not specified in the I<sun_type> field of passed addresses, or the socket "
20640 "was in an invalid state for the applied operation."
20641 msgstr ""
20642 "渡した引数が不正。よくある原因は、 渡したアドレスの I<sun_type> フィールドに "
20643 "AF_UNIX を設定しなかった、 行おうとした操作に対してソケットの状態が有効ではな"
20644 "かった、など。"
20645
20646 #. type: Plain text
20647 #: build/C/man7/unix.7:346
20648 msgid ""
20649 "B<connect>(2)  called on an already connected socket or a target address was "
20650 "specified on a connected socket."
20651 msgstr ""
20652 "既に接続されているソケットに対して B<connect>(2)  が呼ばれた。または、指定し"
20653 "たターゲットアドレスが 既に接続済みのソケットだった。"
20654
20655 #. type: Plain text
20656 #: build/C/man7/unix.7:351
20657 msgid ""
20658 "The pathname in the remote address specified to B<connect>(2)  did not exist."
20659 msgstr ""
20660
20661 #. type: TP
20662 #: build/C/man7/unix.7:351
20663 #, no-wrap
20664 msgid "B<ENOMEM>"
20665 msgstr "B<ENOMEM>"
20666
20667 #. type: Plain text
20668 #: build/C/man7/unix.7:357
20669 msgid ""
20670 "Socket operation needs a target address, but the socket is not connected."
20671 msgstr ""
20672 "ソケット操作にターゲットアドレスが必要だが、 このソケットは接続されていない。"
20673
20674 #. type: Plain text
20675 #: build/C/man7/unix.7:361
20676 msgid ""
20677 "Stream operation called on non-stream oriented socket or tried to use the "
20678 "out-of-band data option."
20679 msgstr ""
20680 "ストリーム指向でないソケットに対してストリーム操作が呼び出された。 または帯域"
20681 "外データオプションを用いようとした。"
20682
20683 #. type: Plain text
20684 #: build/C/man7/unix.7:365
20685 msgid "The sender passed invalid credentials in the I<struct ucred>."
20686 msgstr "送信者が I<struct ucred> に不正な信任状を渡した。"
20687
20688 #. type: Plain text
20689 #: build/C/man7/unix.7:377
20690 msgid ""
20691 "Remote socket was closed on a stream socket.  If enabled, a B<SIGPIPE> is "
20692 "sent as well.  This can be avoided by passing the B<MSG_NOSIGNAL> flag to "
20693 "B<sendmsg>(2)  or B<recvmsg>(2)."
20694 msgstr ""
20695 "リモートソケットがストリームソケット上でクローズされた。 可能な場合は "
20696 "B<SIGPIPE> も同時に送られる。これを避けるには B<MSG_NOSIGNAL> フラグを "
20697 "B<sendmsg>(2)  や B<recvmsg>(2)  に渡す。"
20698
20699 #. type: TP
20700 #: build/C/man7/unix.7:377
20701 #, no-wrap
20702 msgid "B<EPROTONOSUPPORT>"
20703 msgstr "B<EPROTONOSUPPORT>"
20704
20705 #. type: Plain text
20706 #: build/C/man7/unix.7:381
20707 #, fuzzy
20708 #| msgid "Passed protocol is not AF_UNIX."
20709 msgid "Passed protocol is not B<AF_UNIX>."
20710 msgstr "渡されたプロトコルが AF_UNIX でない。"
20711
20712 #. type: TP
20713 #: build/C/man7/unix.7:381
20714 #, no-wrap
20715 msgid "B<EPROTOTYPE>"
20716 msgstr "B<EPROTOTYPE>"
20717
20718 #. type: Plain text
20719 #: build/C/man7/unix.7:387
20720 #, fuzzy
20721 #| msgid ""
20722 #| "Remote socket does not match the local socket type (B<SOCK_DGRAM> vs.  "
20723 #| "B<SOCK_STREAM>)"
20724 msgid ""
20725 "Remote socket does not match the local socket type (B<SOCK_DGRAM> versus "
20726 "B<SOCK_STREAM>)"
20727 msgstr ""
20728 "リモートソケットとローカルソケットのタイプが一致していなかった "
20729 "(B<SOCK_DGRAM> と B<SOCK_STREAM>)。"
20730
20731 #. type: Plain text
20732 #: build/C/man7/unix.7:390
20733 msgid "Unknown socket type."
20734 msgstr "未知のソケットタイプ。"
20735
20736 #. type: Plain text
20737 #: build/C/man7/unix.7:394
20738 msgid ""
20739 "Other errors can be generated by the generic socket layer or by the file "
20740 "system while generating a file system socket object.  See the appropriate "
20741 "manual pages for more information."
20742 msgstr ""
20743 "他にも汎用のソケット層でエラーが起こったり、 ファイルシステム上にソケットオブ"
20744 "ジェクトを作ろうとした場合に ファイルシステムのエラーが起こることがある。 そ"
20745 "れぞれの詳細は適切な man ページを参照すること。"
20746
20747 #. type: Plain text
20748 #: build/C/man7/unix.7:400
20749 msgid ""
20750 "B<SCM_CREDENTIALS> and the abstract namespace were introduced with Linux 2.2 "
20751 "and should not be used in portable programs.  (Some BSD-derived systems also "
20752 "support credential passing, but the implementation details differ.)"
20753 msgstr ""
20754 "B<SCM_CREDENTIALS> と抽象名前空間は、Linux 2.2 で導入された。 移植性が必要な"
20755 "プログラムでは使うべきではない。 (BSD 由来のシステムの中にも信任状の送受信を"
20756 "サポートしているものがあるが、 その実装の詳細はシステムによって異なる)"
20757
20758 #. type: Plain text
20759 #: build/C/man7/unix.7:411
20760 #, fuzzy
20761 #| msgid ""
20762 #| "In the Linux implementation, sockets which are visible in the file system "
20763 #| "honor the permissions of the directory they are in.  Their owner, group "
20764 #| "and their permissions can be changed.  Creation of a new socket will fail "
20765 #| "if the process does not have write and search (execute) permission on the "
20766 #| "directory the socket is created in.  Connecting to the socket object "
20767 #| "requires read/write permission.  This behavior differs from many BSD-"
20768 #| "derived systems which ignore permissions for Unix sockets.  Portable "
20769 #| "programs should not rely on this feature for security."
20770 msgid ""
20771 "In the Linux implementation, sockets which are visible in the file system "
20772 "honor the permissions of the directory they are in.  Their owner, group and "
20773 "their permissions can be changed.  Creation of a new socket will fail if the "
20774 "process does not have write and search (execute) permission on the directory "
20775 "the socket is created in.  Connecting to the socket object requires read/"
20776 "write permission.  This behavior differs from many BSD-derived systems which "
20777 "ignore permissions for UNIX domain sockets.  Portable programs should not "
20778 "rely on this feature for security."
20779 msgstr ""
20780 "Linux の実装では、ファイルシステム上から見えるソケットは、 それらが置かれてい"
20781 "るディレクトリのパーミッションに従う。 ソケットの所有者、グループ、パーミッ"
20782 "ションは変更できる。 新しいソケットを作るとき、作ろうとするディレクトリに対し"
20783 "て プロセスが書き込みと検索 (実行) 権限を持っていなければ、作成に失敗する。 "
20784 "ソケットオブジェクトに接続するには、 read/write 権限が必要である。 この動作"
20785 "は、多くの BSD 由来のシステムとは異なっている (BSD では Unix ソケットに対して"
20786 "はパーミッションを無視する)。 移植性の必要なプログラムでは、 セキュリティをこ"
20787 "の仕様に依存してはならない。"
20788
20789 #. type: Plain text
20790 #: build/C/man7/unix.7:419
20791 #, fuzzy
20792 #| msgid ""
20793 #| "Binding to a socket with a filename creates a socket in the file system "
20794 #| "that must be deleted by the caller when it is no longer needed (using "
20795 #| "B<unlink>(2)).  The usual Unix close-behind semantics apply; the socket "
20796 #| "can be unlinked at any time and will be finally removed from the file "
20797 #| "system when the last reference to it is closed."
20798 msgid ""
20799 "Binding to a socket with a filename creates a socket in the file system that "
20800 "must be deleted by the caller when it is no longer needed (using B<unlink>"
20801 "(2)).  The usual UNIX close-behind semantics apply; the socket can be "
20802 "unlinked at any time and will be finally removed from the file system when "
20803 "the last reference to it is closed."
20804 msgstr ""
20805 "ファイル名を指定してソケットにバインドすると、 ファイルシステムにソケットが生"
20806 "成される。 これは必要なくなったときに呼びだしたユーザーが削除しなければならな"
20807 "い (B<unlink>(2)  を用いる)。 Unix で通常使われる「背後で閉じる方式」が適用さ"
20808 "れる。 ソケットはいつでも unlink することができ、最後の参照が クローズされた"
20809 "ときにファイルシステムから削除される。"
20810
20811 #. type: Plain text
20812 #: build/C/man7/unix.7:428
20813 msgid ""
20814 "To pass file descriptors or credentials over a B<SOCK_STREAM>, you need to "
20815 "send or receive at least one byte of nonancillary data in the same B<sendmsg>"
20816 "(2)  or B<recvmsg>(2)  call."
20817 msgstr ""
20818 "B<SOCK_STREAM> 上でファイルディスクリプタや信任状を渡すためには、同じ "
20819 "B<sendmsg>(2)  や B<recvmsg>(2)  コールで補助データ以外のデータを少なくとも "
20820 "1 バイト送信/受信する必要がある。"
20821
20822 #. type: Plain text
20823 #: build/C/man7/unix.7:430
20824 #, fuzzy
20825 #| msgid ""
20826 #| "Unix domain stream sockets do not support the notion of out-of-band data."
20827 msgid ""
20828 "UNIX domain stream sockets do not support the notion of out-of-band data."
20829 msgstr ""
20830 "Unix ドメインのストリーム・ソケットでは、 帯域外データの概念はサポートされな"
20831 "い。"
20832
20833 #. type: Plain text
20834 #: build/C/man7/unix.7:433
20835 msgid "See B<bind>(2)."
20836 msgstr "B<bind>(2)  参照。"
20837
20838 #. type: Plain text
20839 #: build/C/man7/unix.7:438
20840 msgid "For an example of the use of B<SCM_RIGHTS> see B<cmsg>(3)."
20841 msgstr ""
20842
20843 #. type: Plain text
20844 #: build/C/man7/unix.7:447
20845 msgid ""
20846 "B<recvmsg>(2), B<sendmsg>(2), B<socket>(2), B<socketpair>(2), B<cmsg>(3), "
20847 "B<capabilities>(7), B<credentials>(7), B<socket>(7)"
20848 msgstr ""
20849 "B<recvmsg>(2), B<sendmsg>(2), B<socket>(2), B<socketpair>(2), B<cmsg>(3), "
20850 "B<capabilities>(7), B<credentials>(7), B<socket>(7)"
20851
20852 #. type: TH
20853 #: build/C/man7/x25.7:7
20854 #, no-wrap
20855 msgid "X25"
20856 msgstr "X25"
20857
20858 #. type: Plain text
20859 #: build/C/man7/x25.7:10
20860 msgid "x25, AF_X25 - ITU-T X.25 / ISO-8208 protocol interface."
20861 msgstr "x25, AF_X25 - ITU-T X.25 / ISO-8208 プロトコルインターフェース"
20862
20863 #. type: Plain text
20864 #: build/C/man7/x25.7:14
20865 msgid "B<#include E<lt>linux/x25.hE<gt>>"
20866 msgstr "B<#include E<lt>linux/x25.hE<gt>>"
20867
20868 #. type: Plain text
20869 #: build/C/man7/x25.7:16
20870 msgid "B<x25_socket = socket(AF_X25, SOCK_SEQPACKET, 0);>"
20871 msgstr "B<x25_socket = socket(AF_X25, SOCK_SEQPACKET, 0);>"
20872
20873 #. type: Plain text
20874 #: build/C/man7/x25.7:25
20875 msgid ""
20876 "X25 sockets provide an interface to the X.25 packet layer protocol.  This "
20877 "allows applications to communicate over a public X.25 data network as "
20878 "standardized by International Telecommunication Union's recommendation X.25 "
20879 "(X.25 DTE-DCE mode).  X25 sockets can also be used for communication without "
20880 "an intermediate X.25 network (X.25 DTE-DTE mode) as described in ISO-8208."
20881 msgstr ""
20882 "X25 ソケットは X.25 パケット層プロトコルに対するインターフェースを提供する。 "
20883 "これにより、アプリケーションはパブリックな X.25 データネットワークで 通信する"
20884 "ことができるようになる。 X.25 は International Telecommunication Union's "
20885 "recommendation X.25 (X.25 DTE-DCE mode) で標準化されている。 X25 ソケットは、"
20886 "中間層のない X.25 ネットワーク (X.25 DTE-DTE mode)  での通信にも用いることが"
20887 "できる。 DTE-DTE モードは ISO-8208 に記述されている。"
20888
20889 #. type: Plain text
20890 #: build/C/man7/x25.7:42
20891 msgid ""
20892 "Message boundaries are preserved \\(em a B<read>(2)  from a socket will "
20893 "retrieve the same chunk of data as output with the corresponding B<write>"
20894 "(2)  to the peer socket.  When necessary, the kernel takes care of "
20895 "segmenting and reassembling long messages by means of the X.25 M-bit.  There "
20896 "is no hard-coded upper limit for the message size.  However, reassembling of "
20897 "a long message might fail if there is a temporary lack of system resources "
20898 "or when other constraints (such as socket memory or buffer size limits) "
20899 "become effective.  If that occurs, the X.25 connection will be reset."
20900 msgstr ""
20901 "メッセージ境界は保存される。ソケットからの B<read>(2)  は、反対側のソケットか"
20902 "らの対応する B<write>(2)  と同じ大きさのデータを受け取り、出力する。 必要があ"
20903 "る場合は、カーネルが長いメッセージの 分割 (segmenting) と再構成 "
20904 "(reassembling) を行う。 これには X.25 の M ビットが用いられる。 メッセージサ"
20905 "イズには、ハードコーディングされた上限はない。 しかし、一時的にシステムリソー"
20906 "スが足りなかったり、 他の制約 (ソケットメモリバッファのサイズ制限など) が 効"
20907 "いてしまうと、長いメッセージの再構成には失敗するかもしれない。 この場合、そ"
20908 "の X.25 接続はリセットされることになる。"
20909
20910 #. type: SS
20911 #: build/C/man7/x25.7:42
20912 #, no-wrap
20913 msgid "Socket Addresses"
20914 msgstr "ソケットアドレス"
20915
20916 #. type: Plain text
20917 #: build/C/man7/x25.7:49
20918 msgid ""
20919 "The B<AF_X25> socket address family uses the I<struct sockaddr_x25> for "
20920 "representing network addresses as defined in ITU-T recommendation X.121."
20921 msgstr ""
20922 "B<AF_X25> ソケットアドレスファミリーは、ネットワークアドレスを表すために "
20923 "I<struct sockaddr_x25> を用いる。これは ITU-T recommendation X.121 で定義され"
20924 "ている。"
20925
20926 #. type: Plain text
20927 #: build/C/man7/x25.7:56
20928 #, no-wrap
20929 msgid ""
20930 "struct sockaddr_x25 {\n"
20931 "    sa_family_t sx25_family;    /* must be AF_X25 */\n"
20932 "    x25_address sx25_addr;      /* X.121 Address */\n"
20933 "};\n"
20934 msgstr ""
20935 "struct sockaddr_x25 {\n"
20936 "    sa_family_t sx25_family;    /* must be AF_X25 */\n"
20937 "    x25_address sx25_addr;      /* X.121 Address */\n"
20938 "};\n"
20939
20940 #. type: Plain text
20941 #: build/C/man7/x25.7:67
20942 msgid ""
20943 "I<sx25_addr> contains a char array I<x25_addr[]> to be interpreted as a null-"
20944 "terminated string.  I<sx25_addr.x25_addr[]> consists of up to 15 (not "
20945 "counting the terminating 0) ASCII characters forming the X.121 address.  "
20946 "Only the decimal digit characters from \\(aq0\\(aq to \\(aq9\\(aq are "
20947 "allowed."
20948 msgstr ""
20949 "I<sx25_addr> には char 配列 I<x25_addr[]> を含まれる。これは 0 で終端する文字"
20950 "列として解釈される。 I<sx25_addr.x25_addr[]> は 15 個までの ASCII 文字を含む"
20951 "ことができ (終端の 0 は含まない)、 これが X.121 アドレスをなす。 10 進の数文"
20952 "字、\\(aq0\\(aq から \\(aq9\\(aq までだけが許される。"
20953
20954 #. type: Plain text
20955 #: build/C/man7/x25.7:76
20956 msgid ""
20957 "The following X.25-specific socket options can be set by using B<setsockopt>"
20958 "(2)  and read with B<getsockopt>(2)  with the I<level> argument set to "
20959 "B<SOL_X25>."
20960 msgstr ""
20961 "以下の X.25 特有のソケットオプションは、 B<setsockopt>(2)  で設定でき、 "
20962 "B<getsockopt>(2)  で取得できる。このとき I<level> 引き数には B<SOL_X25> を指"
20963 "定する。"
20964
20965 #. type: TP
20966 #: build/C/man7/x25.7:76
20967 #, no-wrap
20968 msgid "B<X25_QBITINCL>"
20969 msgstr "B<X25_QBITINCL>"
20970
20971 #. type: Plain text
20972 #: build/C/man7/x25.7:95
20973 msgid ""
20974 "Controls whether the X.25 Q-bit (Qualified Data Bit) is accessible by the "
20975 "user.  It expects an integer argument.  If set to 0 (default), the Q-bit is "
20976 "never set for outgoing packets and the Q-bit of incoming packets is "
20977 "ignored.  If set to 1, an additional first byte is prepended to each message "
20978 "read from or written to the socket.  For data read from the socket, a 0 "
20979 "first byte indicates that the Q-bits of the corresponding incoming data "
20980 "packets were not set.  A first byte with value 1 indicates that the Q-bit of "
20981 "the corresponding incoming data packets was set.  If the first byte of the "
20982 "data written to the socket is 1 the Q-bit of the corresponding outgoing data "
20983 "packets will be set.  If the first byte is 0 the Q-bit will not be set."
20984 msgstr ""
20985 "X.25 の Q ビット (Qualified データビット) にユーザーがアクセス できるかどうか"
20986 "をコントロールする。整数の引数を取る。 0 にセットすると、 Q ビットは発信パ"
20987 "ケットには決してセットされず、 受信パケットでは無視される (デフォルト)。 1 に"
20988 "セットすると、ソケットから読む、あるいはソケットに送る メッセージそれぞれに先"
20989 "頭バイトが前置される。 ソケットから読んだデータでは、先頭バイトが 0 だと、 こ"
20990 "の到着データパケットに対応する Q ビットはセットされていなかったことになる。 "
20991 "先頭バイトが 1 だと、到着データパケットの Q ビットがセットされていたことにな"
20992 "る。 ソケットに書き込むデータの先頭バイトが 1 だと、 その発信パケットの Q "
20993 "ビットをセットする。 0 だと、 Q ビットをセットしない。"
20994
20995 #. type: Plain text
20996 #: build/C/man7/x25.7:97
20997 msgid "The AF_X25 protocol family is a new feature of Linux 2.2."
20998 msgstr "AF_X25 プロトコルファミリは Linux 2.2 の新機能である。"
20999
21000 #. type: Plain text
21001 #: build/C/man7/x25.7:100
21002 msgid "Plenty, as the X.25 PLP implementation is B<CONFIG_EXPERIMENTAL>."
21003 msgstr "X.25 PLP 実装は B<CONFIG_EXPERIMENTAL> なので、たくさんあるだろう。"
21004
21005 #. type: Plain text
21006 #: build/C/man7/x25.7:102
21007 msgid "This man page is incomplete."
21008 msgstr "この man ページは完成していない。"
21009
21010 #. type: Plain text
21011 #: build/C/man7/x25.7:109
21012 msgid ""
21013 "There is no dedicated application programmer's header file yet; you need to "
21014 "include the kernel header file I<E<lt>linux/x25.hE<gt>>.  "
21015 "B<CONFIG_EXPERIMENTAL> might also imply that future versions of the "
21016 "interface are not binary compatible."
21017 msgstr ""
21018 "まだアプリケーションプログラマー用のヘッダファイルがない。 カーネルのヘッダ"
21019 "ファイル I<E<lt>linux/x25.hE<gt>> をインクルードしなければならない。 "
21020 "B<CONFIG_EXPERIMENTAL> なので、将来のバージョンのインターフェースでは バイナ"
21021 "リ互換性が失われるかもしれない。"
21022
21023 #. type: Plain text
21024 #: build/C/man7/x25.7:113
21025 msgid ""
21026 "X.25 N-Reset events are not propagated to the user process yet.  Thus, if a "
21027 "reset occurred, data might be lost without notice."
21028 msgstr ""
21029 "X.25 N-Reset イベントは、まだユーザープロセスに伝播しない。 したがってリセッ"
21030 "トが起こると、データは通知無しに失われる。"
21031
21032 #. type: Plain text
21033 #: build/C/man7/x25.7:116
21034 msgid "B<socket>(2), B<socket>(7)"
21035 msgstr "B<socket>(2), B<socket>(7)"
21036
21037 #. type: Plain text
21038 #: build/C/man7/x25.7:120
21039 msgid ""
21040 "Jonathan Simon Naylor: \\(lqThe Re-Analysis and Re-Implementation of X.25."
21041 "\\(rq The URL is"
21042 msgstr "Jonathan Simon Naylor: \\(lqX.25 の再分析と再実装\\(rq"
21043
21044 #. type: Plain text
21045 #: build/C/man7/x25.7:122
21046 msgid "I<ftp://ftp.pspt.fi/pub/ham/linux/ax25/x25doc.tgz>"
21047 msgstr "URL は I<ftp://ftp.pspt.fi/pub/ham/linux/ax25/x25doc.tgz>"
21048
21049 #~ msgid "2009-03-01"
21050 #~ msgstr "2009-03-01"
21051
21052 #~ msgid "2009-02-28"
21053 #~ msgstr "2009-02-28"
21054
21055 #~ msgid "2009-09-30"
21056 #~ msgstr "2009-09-30"
21057
21058 #~ msgid ""
21059 #~ "Gets a pointer to an integer as argument.  Returns the size of the next "
21060 #~ "pending datagram in the integer in bytes, or 0 when no datagram is "
21061 #~ "pending."
21062 #~ msgstr ""
21063 #~ "integer のポインタを引数として取る。 次に待機しているデータグラムのサイズ"
21064 #~ "をバイト単位の整数で返す。 待機しているデータグラムがない場合は 0 を返す。"
21065
21066 #~ msgid "2008-12-01"
21067 #~ msgstr "2008-12-01"
21068
21069 #~ msgid ""
21070 #~ "B<connect>(2)  called with a socket object that isn't listening.  This "
21071 #~ "can happen when the remote socket does not exist or the filename is not a "
21072 #~ "socket."
21073 #~ msgstr ""
21074 #~ "listen 状態にないソケットオブジェクトに対して B<connect>(2)  が呼ばれた。"
21075 #~ "リモートソケットが存在していなかった、 ファイル名がソケットではなかった、"
21076 #~ "などのときに起こる。"