OSDN Git Service

LDP: Update POT and ja.po to LDP v3.77
[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: 2015-01-11 03:52+0900\n"
10 "PO-Revision-Date: 2015-01-09 06:53+0900\n"
11 "Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
12 "Language-Team: LANGUAGE <LL@li.org>\n"
13 "Language: \n"
14 "MIME-Version: 1.0\n"
15 "Content-Type: text/plain; charset=UTF-8\n"
16 "Content-Transfer-Encoding: 8bit\n"
17
18 #. type: TH
19 #: build/C/man7/arp.7:13
20 #, no-wrap
21 msgid "ARP"
22 msgstr "ARP"
23
24 #. type: TH
25 #: build/C/man7/arp.7:13
26 #, no-wrap
27 msgid "2008-11-25"
28 msgstr "2008-11-25"
29
30 #. type: TH
31 #: build/C/man7/arp.7:13 build/C/man3/cmsg.3:11 build/C/man7/ddp.7:12
32 #: build/C/man5/gai.conf.5:19 build/C/man1/getent.1:24
33 #: build/C/man3/getipnodebyname.3:26 build/C/man2/getpeername.2:42
34 #: build/C/man5/host.conf.5:26 build/C/man7/hostname.7:39
35 #: build/C/man5/hosts.5:27 build/C/man5/hosts.equiv.5:6 build/C/man7/icmp.7:12
36 #: build/C/man3/inet_net_pton.3:26 build/C/man3/inet_ntop.3:26
37 #: build/C/man3/inet_pton.3:27 build/C/man7/ip.7:36 build/C/man7/ipv6.7:86
38 #: build/C/man7/netdevice.7:18 build/C/man5/nss.5:19
39 #: build/C/man5/nsswitch.conf.5:25 build/C/man7/packet.7:12
40 #: build/C/man5/protocols.5:29 build/C/man7/raw.7:13 build/C/man3/rcmd.3:43
41 #: build/C/man3/rexec.3:41 build/C/man5/services.5:34
42 #: build/C/man2/shutdown.2:40 build/C/man7/tcp.7:76 build/C/man7/udp.7:12
43 #: build/C/man7/udplite.7:27 build/C/man7/unix.7:20 build/C/man7/x25.7:12
44 #, no-wrap
45 msgid "Linux"
46 msgstr "Linux"
47
48 #. type: TH
49 #: build/C/man7/arp.7:13 build/C/man3/byteorder.3:32 build/C/man3/cmsg.3:11
50 #: build/C/man7/ddp.7:12 build/C/man3/endian.3:28 build/C/man3/ether_aton.3:31
51 #: build/C/man5/gai.conf.5:19 build/C/man3/getaddrinfo.3:44
52 #: build/C/man3/getaddrinfo_a.3:29 build/C/man3/gethostbyname.3:38
53 #: build/C/man3/getipnodebyname.3:26 build/C/man3/getnameinfo.3:10
54 #: build/C/man3/getnetent.3:30 build/C/man3/getnetent_r.3:26
55 #: build/C/man2/getpeername.2:42 build/C/man3/getprotoent.3:30
56 #: build/C/man3/getprotoent_r.3:26 build/C/man3/getservent.3:34
57 #: build/C/man3/getservent_r.3:26 build/C/man7/hostname.7:39
58 #: build/C/man5/hosts.5:27 build/C/man5/hosts.equiv.5:6 build/C/man7/icmp.7:12
59 #: build/C/man3/inet.3:42 build/C/man3/inet_net_pton.3:26
60 #: build/C/man3/inet_ntop.3:26 build/C/man3/inet_pton.3:27
61 #: build/C/man7/ip.7:36 build/C/man7/ipv6.7:86 build/C/man7/netdevice.7:18
62 #: build/C/man8/nscd.8:23 build/C/man5/nscd.conf.5:20 build/C/man5/nss.5:19
63 #: build/C/man5/nsswitch.conf.5:25 build/C/man7/packet.7:12
64 #: build/C/man5/protocols.5:29 build/C/man7/raw.7:13 build/C/man3/rcmd.3:43
65 #: build/C/man5/resolv.conf.5:23 build/C/man3/resolver.3:32
66 #: build/C/man3/rexec.3:41 build/C/man5/services.5:34
67 #: build/C/man3/setnetgrent.3:10 build/C/man2/shutdown.2:40
68 #: build/C/man7/tcp.7:76 build/C/man7/udp.7:12 build/C/man7/udplite.7:27
69 #: build/C/man7/unix.7:20 build/C/man7/x25.7:12
70 #, no-wrap
71 msgid "Linux Programmer's Manual"
72 msgstr "Linux Programmer's Manual"
73
74 #. type: SH
75 #: build/C/man7/arp.7:14 build/C/man3/byteorder.3:33 build/C/man3/cmsg.3:12
76 #: build/C/man7/ddp.7:13 build/C/man3/endian.3:29 build/C/man3/ether_aton.3:32
77 #: build/C/man5/gai.conf.5:20 build/C/man3/getaddrinfo.3:45
78 #: build/C/man3/getaddrinfo_a.3:30 build/C/man1/getent.1:25
79 #: build/C/man3/gethostbyname.3:39 build/C/man3/getipnodebyname.3:27
80 #: build/C/man3/getnameinfo.3:11 build/C/man3/getnetent.3:31
81 #: build/C/man3/getnetent_r.3:27 build/C/man2/getpeername.2:43
82 #: build/C/man3/getprotoent.3:31 build/C/man3/getprotoent_r.3:27
83 #: build/C/man3/getservent.3:35 build/C/man3/getservent_r.3:27
84 #: build/C/man5/host.conf.5:27 build/C/man7/hostname.7:40
85 #: build/C/man5/hosts.5:28 build/C/man5/hosts.equiv.5:7 build/C/man7/icmp.7:13
86 #: build/C/man3/inet.3:43 build/C/man3/inet_net_pton.3:27
87 #: build/C/man3/inet_ntop.3:27 build/C/man3/inet_pton.3:28
88 #: build/C/man7/ip.7:37 build/C/man7/ipv6.7:87 build/C/man7/netdevice.7:19
89 #: build/C/man5/networks.5:27 build/C/man8/nscd.8:24
90 #: build/C/man5/nscd.conf.5:21 build/C/man5/nss.5:20
91 #: build/C/man5/nsswitch.conf.5:26 build/C/man7/packet.7:13
92 #: build/C/man5/protocols.5:30 build/C/man7/raw.7:14 build/C/man3/rcmd.3:44
93 #: build/C/man5/resolv.conf.5:25 build/C/man3/resolver.3:33
94 #: build/C/man3/rexec.3:42 build/C/man5/services.5:35
95 #: build/C/man3/setnetgrent.3:11 build/C/man2/shutdown.2:41
96 #: build/C/man7/tcp.7:77 build/C/man7/udp.7:13 build/C/man7/udplite.7:28
97 #: build/C/man7/unix.7:21 build/C/man7/x25.7:13
98 #, no-wrap
99 msgid "NAME"
100 msgstr "名前"
101
102 #. type: Plain text
103 #: build/C/man7/arp.7:16
104 msgid "arp - Linux ARP kernel module."
105 msgstr "arp - Linux ARP カーネルモジュール"
106
107 #. type: SH
108 #: build/C/man7/arp.7:16 build/C/man3/byteorder.3:48 build/C/man3/cmsg.3:37
109 #: build/C/man7/ddp.7:23 build/C/man3/endian.3:53 build/C/man3/ether_aton.3:57
110 #: build/C/man5/gai.conf.5:22 build/C/man3/getaddrinfo.3:76
111 #: build/C/man3/getaddrinfo_a.3:50 build/C/man1/getent.1:30
112 #: build/C/man3/gethostbyname.3:129 build/C/man3/getipnodebyname.3:44
113 #: build/C/man3/getnameinfo.3:32 build/C/man3/getnetent.3:48
114 #: build/C/man3/getnetent_r.3:62 build/C/man2/getpeername.2:50
115 #: build/C/man3/getprotoent.3:48 build/C/man3/getprotoent_r.3:59
116 #: build/C/man3/getservent.3:52 build/C/man3/getservent_r.3:59
117 #: build/C/man5/host.conf.5:29 build/C/man7/hostname.7:42
118 #: build/C/man5/hosts.5:32 build/C/man5/hosts.equiv.5:11
119 #: build/C/man7/icmp.7:15 build/C/man3/inet.3:75
120 #: build/C/man3/inet_net_pton.3:61 build/C/man3/inet_ntop.3:36
121 #: build/C/man3/inet_pton.3:36 build/C/man7/ip.7:53 build/C/man7/ipv6.7:99
122 #: build/C/man7/netdevice.7:25 build/C/man5/networks.5:29
123 #: build/C/man8/nscd.8:26 build/C/man5/nscd.conf.5:23 build/C/man5/nss.5:22
124 #: build/C/man5/nsswitch.conf.5:28 build/C/man7/packet.7:25
125 #: build/C/man5/protocols.5:32 build/C/man7/raw.7:22 build/C/man3/rcmd.3:92
126 #: build/C/man5/resolv.conf.5:29 build/C/man3/resolver.3:85
127 #: build/C/man3/rexec.3:56 build/C/man5/services.5:37
128 #: build/C/man3/setnetgrent.3:44 build/C/man2/shutdown.2:47
129 #: build/C/man7/tcp.7:87 build/C/man7/udp.7:23 build/C/man7/udplite.7:38
130 #: build/C/man7/unix.7:31 build/C/man7/x25.7:21
131 #, no-wrap
132 msgid "DESCRIPTION"
133 msgstr "説明"
134
135 #. type: Plain text
136 #: build/C/man7/arp.7:24
137 msgid ""
138 "This kernel protocol module implements the Address Resolution Protocol "
139 "defined in RFC\\ 826.  It is used to convert between Layer2 hardware "
140 "addresses and IPv4 protocol addresses on directly connected networks.  The "
141 "user normally doesn't interact directly with this module except to configure "
142 "it; instead it provides a service for other protocols in the kernel."
143 msgstr ""
144 "このカーネルプロトコルモジュールは、 RFC\\ 826 で定義されている Address "
145 "Resolution Protocol を 実装したものである。 ARP は、ダイレクトに接続された"
146 "ネットワーク上で、 第 2 層のハードウェアアドレスをIPv4 プロトコルアドレスに "
147 "変換するために用いられる。ユーザーは設定の場合を除いて 通常直接このモジュール"
148 "に関ることはない。 これはカーネル内部の他のプロトコルにサービスを提供するもの"
149 "である。"
150
151 #. type: Plain text
152 #: build/C/man7/arp.7:37
153 msgid ""
154 "A user process can receive ARP packets by using B<packet>(7)  sockets.  "
155 "There is also a mechanism for managing the ARP cache in user-space by using "
156 "B<netlink>(7)  sockets.  The ARP table can also be controlled via "
157 "B<ioctl>(2)  on any B<AF_INET> socket."
158 msgstr ""
159 "ユーザープロセスは、 B<packet>(7)  ソケットを用いれば ARP パケットを受信する"
160 "ことができる。 ARP キャッシュをユーザー空間で管理することもできる。 これには "
161 "B<netlink>(7)  を用いる。 ARP テーブルも制御可能で、これには任意の "
162 "B<AF_INET> ソケットに B<ioctl>(2)  を用いる。"
163
164 #. type: Plain text
165 #: build/C/man7/arp.7:49
166 msgid ""
167 "The ARP module maintains a cache of mappings between hardware addresses and "
168 "protocol addresses.  The cache has a limited size so old and less frequently "
169 "used entries are garbage-collected.  Entries which are marked as permanent "
170 "are never deleted by the garbage-collector.  The cache can be directly "
171 "manipulated by the use of ioctls and its behavior can be tuned by the I</"
172 "proc> interfaces described below."
173 msgstr ""
174 "ARP モジュールはハードウェアアドレスからプロトコルアドレスへの マッピングの"
175 "キャッシュを管理する。キャッシュの大きさには制限が あるので、古いエントリや利"
176 "用されないエントリはガベージコレクト される。 permanent (保存) マークがつけら"
177 "れたエントリは、 決してガベージコレクタによって消去されない。 ioctl を用いれ"
178 "ばキャッシュを直接操作することもできる。 また後述の I</proc> インタフェースに"
179 "よりキャッシュの振る舞いを調整できる。"
180
181 #. type: Plain text
182 #: build/C/man7/arp.7:72
183 msgid ""
184 "When there is no positive feedback for an existing mapping after some time "
185 "(see the I</proc> interfaces below), a neighbor cache entry is considered "
186 "stale.  Positive feedback can be gotten from a higher layer; for example "
187 "from a successful TCP ACK.  Other protocols can signal forward progress "
188 "using the B<MSG_CONFIRM> flag to B<sendmsg>(2).  When there is no forward "
189 "progress, ARP tries to reprobe.  It first tries to ask a local arp daemon "
190 "B<app_solicit> times for an updated MAC address.  If that fails and an old "
191 "MAC address is known, a unicast probe is sent B<ucast_solicit> times.  If "
192 "that fails too, it will broadcast a new ARP request to the network.  "
193 "Requests are sent only when there is data queued for sending."
194 msgstr ""
195 "存在しているマッピングに対して、 正のフィードバックが一定時間ない (後述の I</"
196 "proc> インタフェースを見よ) と、 近傍キャッシュエントリ (neighbor cache "
197 "entry) は 古くなった (stale) とみなされる。 正のフィードバックは高位のレイ"
198 "ヤーからも取得できる (例えば TCP ACK が成功した場合など)。 他のプロトコル"
199 "は、 B<sendmsg>(2)  に B<MSG_CONFIRM> フラグを用いることによって、 フォワード"
200 "プログレス (forward progress) をシグナルできる。 フォワードプログレスがなけれ"
201 "ば、 ARP は再びプローブを試みる。 まずローカルな arp デーモンに問合わせを行"
202 "い、 更新された MAC アドレスを取得しようとする。 このリクエストに "
203 "B<app_solicit> 回失敗すると、古い MAC アドレスがわかっている場合は、 unicast "
204 "のプローブが B<ucaset_solicit> 回送られる。これにも失敗すると、新しい ARP リ"
205 "クエスト をネットワークにブロードキャストする。 リクエストは、データが送信"
206 "キューにある場合のみ送られる。"
207
208 #. type: Plain text
209 #: build/C/man7/arp.7:77
210 msgid ""
211 "Linux will automatically add a nonpermanent proxy arp entry when it receives "
212 "a request for an address it forwards to and proxy arp is enabled on the "
213 "receiving interface.  When there is a reject route for the target, no proxy "
214 "arp entry is added."
215 msgstr ""
216 "Linux は、あるアドレスへのリクエストを受信・フォワードし、 受信したインター"
217 "フェースで代理 arp が有効になっている場合には、 自動的にそのアドレスを "
218 "nonpermanent な代理 arp エントリに追加する。 そのターゲットに reject route が"
219 "あった場合には、 代理 arp エントリは一切追加されない。"
220
221 #. type: SS
222 #: build/C/man7/arp.7:77 build/C/man7/ddp.7:144 build/C/man7/ip.7:1075
223 #: build/C/man7/netdevice.7:64 build/C/man7/packet.7:479
224 #: build/C/man7/tcp.7:1127 build/C/man7/udp.7:202 build/C/man7/unix.7:367
225 #, no-wrap
226 msgid "Ioctls"
227 msgstr "ioctl"
228
229 #. type: Plain text
230 #: build/C/man7/arp.7:84
231 msgid ""
232 "Three ioctls are available on all B<AF_INET> sockets.  They take a pointer "
233 "to a I<struct arpreq> as their argument."
234 msgstr ""
235 "すべての B<AF_INET> ソケットでは、 3 つの ioctl が使用できる。 これらは "
236 "I<struct arpreq> へのポインタを引数に取る。"
237
238 #. type: Plain text
239 #: build/C/man7/arp.7:94
240 #, no-wrap
241 msgid ""
242 "struct arpreq {\n"
243 "    struct sockaddr arp_pa;      /* protocol address */\n"
244 "    struct sockaddr arp_ha;      /* hardware address */\n"
245 "    int             arp_flags;   /* flags */\n"
246 "    struct sockaddr arp_netmask; /* netmask of protocol address */\n"
247 "    char            arp_dev[16];\n"
248 "};\n"
249 msgstr ""
250 "struct arpreq {\n"
251 "    struct sockaddr arp_pa;      /* protocol address */\n"
252 "    struct sockaddr arp_ha;      /* hardware address */\n"
253 "    int             arp_flags;   /* flags */\n"
254 "    struct sockaddr arp_netmask; /* netmask of protocol address */\n"
255 "    char            arp_dev[16];\n"
256 "};\n"
257
258 #. type: Plain text
259 #: build/C/man7/arp.7:103
260 msgid ""
261 "B<SIOCSARP>, B<SIOCDARP> and B<SIOCGARP> respectively set, delete and get an "
262 "ARP mapping.  Setting and deleting ARP maps are privileged operations and "
263 "may be performed only by a process with the B<CAP_NET_ADMIN> capability or "
264 "an effective UID of 0."
265 msgstr ""
266 "B<SIOCSARP>, B<SIOCDARP>, B<SIOCGARP> は、それぞれ ARP マッピングを設定・削"
267 "除・取得する。 ARP マップの設定と削除は特権が必要な操作であり、 "
268 "B<CAP_NET_ADMIN> 権限を持つプロセスか、実行ユーザー ID が 0 のプロセス でなけ"
269 "れば実行できない。"
270
271 #. type: Plain text
272 #: build/C/man7/arp.7:113
273 msgid ""
274 "I<arp_pa> must be an B<AF_INET> address and I<arp_ha> must have the same "
275 "type as the device which is specified in I<arp_dev>.  I<arp_dev> is a zero-"
276 "terminated string which names a device."
277 msgstr ""
278 "I<arp_pa> は B<AF_INET> アドレスでなければならず、 I<arp_ha> は I<arp_dev> で"
279 "設定されたデバイスと同じタイプでなければならない。 I<arp_dev> はデバイスの名"
280 "前を示す、ゼロで終端された文字列である。"
281
282 #. type: tbl table
283 #: build/C/man7/arp.7:118
284 #, no-wrap
285 msgid "I<arp_flags>\n"
286 msgstr "I<arp_flags>\n"
287
288 #. type: tbl table
289 #: build/C/man7/arp.7:119
290 #, no-wrap
291 msgid "flag:meaning\n"
292 msgstr "フラグ:意味\n"
293
294 #. type: tbl table
295 #: build/C/man7/arp.7:120
296 #, no-wrap
297 msgid "ATF_COM:Lookup complete\n"
298 msgstr "ATF_COM:参照完了\n"
299
300 #. type: tbl table
301 #: build/C/man7/arp.7:121
302 #, no-wrap
303 msgid "ATF_PERM:Permanent entry\n"
304 msgstr "ATF_PERM:エントリを peramanent にする\n"
305
306 #. type: tbl table
307 #: build/C/man7/arp.7:122
308 #, no-wrap
309 msgid "ATF_PUBL:Publish entry\n"
310 msgstr "ATF_PUBL:エントリを publish する\n"
311
312 #. type: tbl table
313 #: build/C/man7/arp.7:123
314 #, no-wrap
315 msgid "ATF_USETRAILERS:Trailers requested\n"
316 msgstr "ATF_USETRAILERS:trailer が必要\n"
317
318 #. type: tbl table
319 #: build/C/man7/arp.7:124
320 #, no-wrap
321 msgid "ATF_NETMASK:Use a netmask\n"
322 msgstr "ATF_NETMASK:netmask を用いる\n"
323
324 #. type: tbl table
325 #: build/C/man7/arp.7:125
326 #, no-wrap
327 msgid "ATF_DONTPUB:Don't answer\n"
328 msgstr "ATF_DONTPUB:回答しない\n"
329
330 #. type: Plain text
331 #: build/C/man7/arp.7:138
332 msgid ""
333 "If the B<ATF_NETMASK> flag is set, then I<arp_netmask> should be valid.  "
334 "Linux 2.2 does not support proxy network ARP entries, so this should be set "
335 "to 0xffffffff, or 0 to remove an existing proxy arp entry.  "
336 "B<ATF_USETRAILERS> is obsolete and should not be used."
337 msgstr ""
338 "B<ATF_NETMASK> フラグがセットされているときには、 I<arp_netmask> が有効でなけ"
339 "ればならない。 Linux 2.2 は代理ネットワーク ARP エントリをサポートしていない"
340 "ので、 これは 0xffffffff にセットしておくか、あるいは 現存の代理 arp エントリ"
341 "を削除したい場合には 0 にしておく必要がある。 B<ATF_USETRAILERS> は obsolete "
342 "なので、用いるべきでない。"
343
344 #. type: SS
345 #: build/C/man7/arp.7:138 build/C/man7/ddp.7:122 build/C/man7/icmp.7:41
346 #: build/C/man7/ip.7:926 build/C/man7/tcp.7:219 build/C/man7/udp.7:137
347 #, no-wrap
348 msgid "/proc interfaces"
349 msgstr "/proc インタフェース"
350
351 #. type: Plain text
352 #: build/C/man7/arp.7:151
353 msgid ""
354 "ARP supports a range of I</proc> interfaces to configure parameters on a "
355 "global or per-interface basis.  The interfaces can be accessed by reading or "
356 "writing the I</proc/sys/net/ipv4/neigh/*/*> files.  Each interface in the "
357 "system has its own directory in I</proc/sys/net/ipv4/neigh/>.  The setting "
358 "in the \"default\" directory is used for all newly created devices.  Unless "
359 "otherwise specified, time-related interfaces are specified in seconds."
360 msgstr ""
361 "ARP では、グローバルなパラメータやインターフェースごとのパラメータを I</"
362 "proc> インタフェースを通して設定することができる。 これらのインタフェースに"
363 "は、 I<proc/sys/net/ipv4/neigh/*/*> ファイルの読み書きによりアクセスできる。 "
364 "システムにあるそれぞれのインターフェースには、 それぞれ対応するディレクトリ"
365 "が I</proc/sys/net/ipv4/neigh/> 以下にある。 \"default\" ディレクトリに対して"
366 "設定をすると、 それ以降生成されるデバイス全てに対してその設定が用いられる。 "
367 "特に指定がなければ、時間に関る sysctl の単位は秒である。"
368
369 #. type: TP
370 #: build/C/man7/arp.7:151
371 #, no-wrap
372 msgid "I<anycast_delay> (since Linux 2.2)"
373 msgstr "I<anycast_delay> (Linux 2.2 以降)"
374
375 #.  Precisely: 2.1.79
376 #. type: Plain text
377 #: build/C/man7/arp.7:158
378 msgid ""
379 "The maximum number of jiffies to delay before replying to a IPv6 neighbor "
380 "solicitation message.  Anycast support is not yet implemented.  Defaults to "
381 "1 second."
382 msgstr ""
383 "IPv6 の近傍要請メッセージ (neighbor soliciation message)  に応答するまでの最"
384 "大遅延時間 (jiffy 単位)。 anycast のサポートはまだ実装されていない。 デフォル"
385 "トは 1 秒。"
386
387 #. type: TP
388 #: build/C/man7/arp.7:158
389 #, no-wrap
390 msgid "I<app_solicit> (since Linux 2.2)"
391 msgstr "I<app_solicit> (Linux 2.2 以降)"
392
393 #.  Precisely: 2.1.79
394 #. type: Plain text
395 #: build/C/man7/arp.7:165
396 msgid ""
397 "The maximum number of probes to send to the user space ARP daemon via "
398 "netlink before dropping back to multicast probes (see I<mcast_solicit>).  "
399 "Defaults to 0."
400 msgstr ""
401 "ユーザー空間の ARP デーモンに netlink を用いて探索させる最大回数。 これを越え"
402 "るとマルチキャストによる探索に移行する (I<mcast_solicit> を見よ)。"
403
404 #. type: TP
405 #: build/C/man7/arp.7:165
406 #, no-wrap
407 msgid "I<base_reachable_time> (since Linux 2.2)"
408 msgstr "I<base_reachable_time> (Linux 2.2 以降)"
409
410 #.  Precisely: 2.1.79
411 #. type: Plain text
412 #: build/C/man7/arp.7:176
413 msgid ""
414 "Once a neighbor has been found, the entry is considered to be valid for at "
415 "least a random value between I<base_reachable_time>/2 and "
416 "3*I<base_reachable_time>/2.  An entry's validity will be extended if it "
417 "receives positive feedback from higher level protocols.  Defaults to 30 "
418 "seconds.  This file is now obsolete in favor of I<base_reachable_time_ms>."
419 msgstr ""
420 "近傍のホストがみつかると、そのエントリは I<base_reachable_time>/2 から "
421 "3*I<base_reachable_time>/2 の間のランダムな値の時間、有効であるとみなされ"
422 "る。 エントリの有効性は、高位のプロトコルからポジティブなフィードバックを 受"
423 "け取ると延長される。デフォルトは 30 秒。 このファイルは現在は非推奨であり、代"
424 "わりに I<base_reachable_time_ms> を使うこと。"
425
426 #. type: TP
427 #: build/C/man7/arp.7:176
428 #, no-wrap
429 msgid "I<base_reachable_time_ms> (since Linux 2.6.12)"
430 msgstr "I<base_reachable_time_ms> (Linux 2.6.12 以降)"
431
432 #. type: Plain text
433 #: build/C/man7/arp.7:182
434 msgid ""
435 "As for I<base_reachable_time>, but measures time in milliseconds.  Defaults "
436 "to 30000 milliseconds."
437 msgstr ""
438 "I<base_reachable_time> と同じだが、時間をミリ秒単位で測る。 デフォルトは "
439 "30000 ミリ秒である。"
440
441 #. type: TP
442 #: build/C/man7/arp.7:182
443 #, no-wrap
444 msgid "I<delay_first_probe_time> (since Linux 2.2)"
445 msgstr "I<delay_first_probe_time> (Linux 2.2 以降)"
446
447 #.  Precisely: 2.1.79
448 #. type: Plain text
449 #: build/C/man7/arp.7:188
450 msgid ""
451 "Delay before first probe after it has been decided that a neighbor is "
452 "stale.  Defaults to 5 seconds."
453 msgstr ""
454 "近傍ホストのエントリが古くなったと判断された後に 最初に探索を行うまでの遅延時"
455 "間。デフォルトは 5 秒。"
456
457 #. type: TP
458 #: build/C/man7/arp.7:188
459 #, no-wrap
460 msgid "I<gc_interval> (since Linux 2.2)"
461 msgstr "I<gc_interval> (Linux 2.2 以降)"
462
463 #.  Precisely: 2.1.79
464 #. type: Plain text
465 #: build/C/man7/arp.7:194
466 msgid ""
467 "How frequently the garbage collector for neighbor entries should attempt to "
468 "run.  Defaults to 30 seconds."
469 msgstr ""
470 "ガベージ・コレクタを近傍ホストエントリに対して実行させる頻度。 デフォルトは "
471 "30 秒。"
472
473 #. type: TP
474 #: build/C/man7/arp.7:194
475 #, no-wrap
476 msgid "I<gc_stale_time> (since Linux 2.2)"
477 msgstr "I<gc_stale_time> (Linux 2.2 以降)"
478
479 #.  Precisely: 2.1.79
480 #. type: Plain text
481 #: build/C/man7/arp.7:201
482 msgid ""
483 "Determines how often to check for stale neighbor entries.  When a neighbor "
484 "entry is considered stale, it is resolved again before sending data to it.  "
485 "Defaults to 60 seconds."
486 msgstr ""
487 "古くなった近傍ホストエントリに対してチェックを行う頻度。 近傍ホストエントリが"
488 "古くなったとみなされると、そのエントリに データを送る前には再度解決が行われ"
489 "る。 デフォルトは 60 秒。"
490
491 #. type: TP
492 #: build/C/man7/arp.7:201
493 #, no-wrap
494 msgid "I<gc_thresh1> (since Linux 2.2)"
495 msgstr "I<gc_thresh1> (Linux 2.2 以降)"
496
497 #.  Precisely: 2.1.79
498 #. type: Plain text
499 #: build/C/man7/arp.7:208
500 msgid ""
501 "The minimum number of entries to keep in the ARP cache.  The garbage "
502 "collector will not run if there are fewer than this number of entries in the "
503 "cache.  Defaults to 128."
504 msgstr ""
505 "ARP キャッシュに保存するエントリ数の最小値。 この数より少ないエントリしか"
506 "キャッシュになければ、 ガベージ・コレクタは実行されない。 デフォルトは 128。"
507
508 #. type: TP
509 #: build/C/man7/arp.7:208
510 #, no-wrap
511 msgid "I<gc_thresh2> (since Linux 2.2)"
512 msgstr "I<gc_thresh2> (Linux 2.2 以降)"
513
514 #.  Precisely: 2.1.79
515 #. type: Plain text
516 #: build/C/man7/arp.7:215
517 msgid ""
518 "The soft maximum number of entries to keep in the ARP cache.  The garbage "
519 "collector will allow the number of entries to exceed this for 5 seconds "
520 "before collection will be performed.  Defaults to 512."
521 msgstr ""
522 "ARP キャッシュに保存されるエントリ数のソフトな最大値。 キャッシュのエントリが"
523 "この数を 5 秒間越えつづけると、 ガベージ・コレクタが実行される。 デフォルト"
524 "は 512。"
525
526 #. type: TP
527 #: build/C/man7/arp.7:215
528 #, no-wrap
529 msgid "I<gc_thresh3> (since Linux 2.2)"
530 msgstr "I<gc_thresh3> (Linux 2.2 以降)"
531
532 #.  Precisely: 2.1.79
533 #. type: Plain text
534 #: build/C/man7/arp.7:222
535 msgid ""
536 "The hard maximum number of entries to keep in the ARP cache.  The garbage "
537 "collector will always run if there are more than this number of entries in "
538 "the cache.  Defaults to 1024."
539 msgstr ""
540 "ARP キャッシュに保存されるエントリ数のハードな最大値。 キャッシュのエントリが"
541 "この数を越えると、 ガベージ・コレクタはただちに実行される。 デフォルトは "
542 "1024。"
543
544 #. type: TP
545 #: build/C/man7/arp.7:222
546 #, no-wrap
547 msgid "I<locktime> (since Linux 2.2)"
548 msgstr "I<locktime> (Linux 2.2 以降)"
549
550 #.  Precisely: 2.1.79
551 #. type: Plain text
552 #: build/C/man7/arp.7:229
553 msgid ""
554 "The minimum number of jiffies to keep an ARP entry in the cache.  This "
555 "prevents ARP cache thrashing if there is more than one potential mapping "
556 "(generally due to network misconfiguration).  Defaults to 1 second."
557 msgstr ""
558 "ARP エントリをキャッシュに保存する時間の最小値 (jiffy 単位)。 可能性のある"
559 "マッピングが一つ以上ある (たいていはネットワーク設定のミス)  場合に、 ARP "
560 "キャッシュのスラッシングが起きることを防ぐ。 デフォルトは 1 秒。"
561
562 #. type: TP
563 #: build/C/man7/arp.7:229
564 #, no-wrap
565 msgid "I<mcast_solicit> (since Linux 2.2)"
566 msgstr "I<mcast_solicit> (Linux 2.2 以降)"
567
568 #.  Precisely: 2.1.79
569 #. type: Plain text
570 #: build/C/man7/arp.7:235
571 msgid ""
572 "The maximum number of attempts to resolve an address by multicast/broadcast "
573 "before marking the entry as unreachable.  Defaults to 3."
574 msgstr ""
575 "エントリを unreachable マークする前に、 アドレスをマルチキャスト/ブロードキャ"
576 "ストで解決しようとする 試行回数の最大値。 デフォルトは 3。"
577
578 #. type: TP
579 #: build/C/man7/arp.7:235
580 #, no-wrap
581 msgid "I<proxy_delay> (since Linux 2.2)"
582 msgstr "I<proxy_delay> (Linux 2.2 以降)"
583
584 #.  Precisely: 2.1.79
585 #. type: Plain text
586 #: build/C/man7/arp.7:243
587 msgid ""
588 "When an ARP request for a known proxy-ARP address is received, delay up to "
589 "I<proxy_delay> jiffies before replying.  This is used to prevent network "
590 "flooding in some cases.  Defaults to 0.8 seconds."
591 msgstr ""
592 "既知の代理 ARP アドレスに対して ARP リクエストを受信した場合に、 応答前に最"
593 "大 I<proxy_delay> jiffy まで遅延する。これは場合によって生じる ネットワーク・"
594 "フラッディング (network flooding) を避けるために用いる。 デフォルトは 0.8 "
595 "秒。"
596
597 #. type: TP
598 #: build/C/man7/arp.7:243
599 #, no-wrap
600 msgid "I<proxy_qlen> (since Linux 2.2)"
601 msgstr "I<proxy_qlen> (Linux 2.2 以降)"
602
603 #.  Precisely: 2.1.79
604 #. type: Plain text
605 #: build/C/man7/arp.7:248
606 msgid ""
607 "The maximum number of packets which may be queued to proxy-ARP addresses.  "
608 "Defaults to 64."
609 msgstr ""
610 "代理 ARP アドレスに対してキューイングできる最大のパケット数。 デフォルトは "
611 "64。"
612
613 #. type: TP
614 #: build/C/man7/arp.7:248
615 #, no-wrap
616 msgid "I<retrans_time> (since Linux 2.2)"
617 msgstr "I<retrans_time> (Linux 2.2 以降)"
618
619 #.  Precisely: 2.1.79
620 #. type: Plain text
621 #: build/C/man7/arp.7:255
622 msgid ""
623 "The number of jiffies to delay before retransmitting a request.  Defaults to "
624 "1 second.  This file is now obsolete in favor of I<retrans_time_ms>."
625 msgstr ""
626 "リクエストを再度送るまでの遅延時間 (jiffy 単位)。 デフォルトは 1 秒。 この"
627 "ファイルは現在は非推奨であり、代わりに I<retrans_time_ms> を使うこと。"
628
629 #. type: TP
630 #: build/C/man7/arp.7:255
631 #, no-wrap
632 msgid "I<retrans_time_ms> (since Linux 2.6.12)"
633 msgstr "I<retrans_time_ms> (Linux 2.6.12 以降)"
634
635 #. type: Plain text
636 #: build/C/man7/arp.7:259
637 msgid ""
638 "The number of milliseconds to delay before retransmitting a request.  "
639 "Defaults to 1000 milliseconds."
640 msgstr ""
641 "リクエストを再度送るまでの遅延時間 (ミリ秒単位)。 デフォルトは 1000 ミリ秒。"
642
643 #. type: TP
644 #: build/C/man7/arp.7:259
645 #, no-wrap
646 msgid "I<ucast_solicit> (since Linux 2.2)"
647 msgstr "I<ucast_solicit> (Linux 2.2 以降)"
648
649 #.  Precisely: 2.1.79
650 #. type: Plain text
651 #: build/C/man7/arp.7:266
652 msgid ""
653 "The maximum number of attempts to send unicast probes before asking the ARP "
654 "daemon (see I<app_solicit>).  Defaults to 3."
655 msgstr ""
656 "ARP デーモンへの問い合わせを行う前に行う unicast 探索の最大試行数 "
657 "(I<app_solicit> を見よ)。デフォルトは 3。"
658
659 #. type: TP
660 #: build/C/man7/arp.7:266
661 #, no-wrap
662 msgid "I<unres_qlen> (since Linux 2.2)"
663 msgstr "I<unres_qlen> (Linux 2.2 以降)"
664
665 #.  Precisely: 2.1.79
666 #. type: Plain text
667 #: build/C/man7/arp.7:272
668 msgid ""
669 "The maximum number of packets which may be queued for each unresolved "
670 "address by other network layers.  Defaults to 3."
671 msgstr ""
672 "解決されていないアドレスに対して、 他のネットワーク層からキューイングできる最"
673 "大パケット数。 デフォルトは 3。"
674
675 #. type: SH
676 #: build/C/man7/arp.7:272 build/C/man7/ddp.7:221 build/C/man3/endian.3:74
677 #: build/C/man3/getnameinfo.3:203 build/C/man7/icmp.7:161
678 #: build/C/man7/ipv6.7:362 build/C/man7/packet.7:532 build/C/man7/raw.7:175
679 #: build/C/man3/rcmd.3:262 build/C/man3/rexec.3:138 build/C/man7/tcp.7:1244
680 #: build/C/man7/udp.7:251 build/C/man7/udplite.7:132 build/C/man7/unix.7:484
681 #: build/C/man7/x25.7:100
682 #, no-wrap
683 msgid "VERSIONS"
684 msgstr "バージョン"
685
686 #. type: Plain text
687 #: build/C/man7/arp.7:279
688 msgid ""
689 "The I<struct arpreq> changed in Linux 2.0 to include the I<arp_dev> member "
690 "and the ioctl numbers changed at the same time.  Support for the old ioctls "
691 "was dropped in Linux 2.2."
692 msgstr ""
693 "Linux 2.0 で、 I<struct arpreq> に I<arp_dev> メンバーが含まれるように変更が"
694 "あった。また同時に ioctl 番号も変更された。古い ioctl は Linux 2.2 で用いるこ"
695 "とができなくなった。"
696
697 #. type: Plain text
698 #: build/C/man7/arp.7:285
699 msgid ""
700 "Support for proxy arp entries for networks (netmask not equal 0xffffffff)  "
701 "was dropped in Linux 2.2.  It is replaced by automatic proxy arp setup by "
702 "the kernel for all reachable hosts on other interfaces (when forwarding and "
703 "proxy arp is enabled for the interface)."
704 msgstr ""
705 "ネットワークに対する代理 arp エントリ (netmask が 0xffffffff でない)  は、 "
706 "Linux 2.2 で用いることができなくなった。 これはカーネルによって設定される、別"
707 "のインターフェースにおける 到達可能なすべてのホストに対する自動代理 arp に"
708 "よって置き換えられた (そのインターフェースでフォワーディングと代理 arp が有効"
709 "になっている場合)。"
710
711 #. type: Plain text
712 #: build/C/man7/arp.7:289
713 msgid "The I<neigh/*> interfaces did not exist before Linux 2.2."
714 msgstr "I<neigh/*> の各インタフェースは Linux 2.2 以前には存在しない。"
715
716 #. type: SH
717 #: build/C/man7/arp.7:289 build/C/man7/ddp.7:244 build/C/man3/ether_aton.3:151
718 #: build/C/man3/gethostbyname.3:438 build/C/man3/inet_ntop.3:112
719 #: build/C/man3/inet_pton.3:150 build/C/man7/ip.7:1245 build/C/man7/ipv6.7:396
720 #: build/C/man7/netdevice.7:359 build/C/man7/packet.7:601
721 #: build/C/man7/raw.7:252 build/C/man3/rcmd.3:278 build/C/man3/rexec.3:158
722 #: build/C/man2/shutdown.2:104 build/C/man7/tcp.7:1251
723 #: build/C/man7/udplite.7:134 build/C/man7/unix.7:521 build/C/man7/x25.7:102
724 #, no-wrap
725 msgid "BUGS"
726 msgstr "バグ"
727
728 #. type: Plain text
729 #: build/C/man7/arp.7:293
730 msgid ""
731 "Some timer settings are specified in jiffies, which is architecture- and "
732 "kernel version-dependent; see B<time>(7)."
733 msgstr ""
734 "いくつかのタイマー設定は jiffy で指定されるが、 jiffy はアーキテクチャやカー"
735 "ネルのバージョンに依存する。 B<time>(7)  を参照のこと。"
736
737 #. type: Plain text
738 #: build/C/man7/arp.7:299
739 msgid ""
740 "There is no way to signal positive feedback from user space.  This means "
741 "connection-oriented protocols implemented in user space will generate "
742 "excessive ARP traffic, because ndisc will regularly reprobe the MAC "
743 "address.  The same problem applies for some kernel protocols (e.g., NFS over "
744 "UDP)."
745 msgstr ""
746 "ユーザー空間からポジティブなフィードバックを送る方法が存在しない。 つまり接続"
747 "指向 (connection-oriented) のプロトコルをユーザー空間で 実装すると、余計な "
748 "ARP トラフィックの原因となる。 なぜなら ndisc は定期的に MAC アドレスを再探索"
749 "するからである。 同様の問題はいくつかのカーネルプロトコル (NFS over UDP な"
750 "ど) にも存在する。"
751
752 #. type: Plain text
753 #: build/C/man7/arp.7:302
754 msgid ""
755 "This man page mashes together functionality that is IPv4-specific with "
756 "functionality that is shared between IPv4 and IPv6."
757 msgstr ""
758 "この man ページでは IPv4 特有の機能と IPv4 とIPv6 で共通の機能を一緒に説明し"
759 "ている。"
760
761 #. type: SH
762 #: build/C/man7/arp.7:302 build/C/man3/byteorder.3:92 build/C/man3/cmsg.3:222
763 #: build/C/man7/ddp.7:249 build/C/man3/endian.3:151
764 #: build/C/man3/ether_aton.3:157 build/C/man5/gai.conf.5:93
765 #: build/C/man3/getaddrinfo.3:828 build/C/man3/getaddrinfo_a.3:600
766 #: build/C/man1/getent.1:368 build/C/man3/gethostbyname.3:443
767 #: build/C/man3/getipnodebyname.3:266 build/C/man3/getnameinfo.3:282
768 #: build/C/man3/getnetent.3:154 build/C/man3/getnetent_r.3:145
769 #: build/C/man2/getpeername.2:143 build/C/man3/getprotoent.3:142
770 #: build/C/man3/getprotoent_r.3:237 build/C/man3/getservent.3:159
771 #: build/C/man3/getservent_r.3:241 build/C/man5/host.conf.5:199
772 #: build/C/man7/hostname.7:85 build/C/man5/hosts.5:115
773 #: build/C/man5/hosts.equiv.5:84 build/C/man7/icmp.7:191
774 #: build/C/man3/inet.3:305 build/C/man3/inet_net_pton.3:390
775 #: build/C/man3/inet_ntop.3:118 build/C/man3/inet_pton.3:215
776 #: build/C/man7/ip.7:1272 build/C/man7/ipv6.7:407 build/C/man7/netdevice.7:373
777 #: build/C/man5/networks.5:74 build/C/man8/nscd.8:85
778 #: build/C/man5/nscd.conf.5:239 build/C/man5/nss.5:110
779 #: build/C/man5/nsswitch.conf.5:352 build/C/man7/packet.7:631
780 #: build/C/man5/protocols.5:81 build/C/man7/raw.7:269 build/C/man3/rcmd.3:285
781 #: build/C/man5/resolv.conf.5:301 build/C/man3/resolver.3:274
782 #: build/C/man3/rexec.3:167 build/C/man5/services.5:210
783 #: build/C/man3/setnetgrent.3:107 build/C/man2/shutdown.2:113
784 #: build/C/man7/tcp.7:1263 build/C/man7/udp.7:256 build/C/man7/udplite.7:146
785 #: build/C/man7/unix.7:616 build/C/man7/x25.7:118
786 #, no-wrap
787 msgid "SEE ALSO"
788 msgstr "関連項目"
789
790 #. type: Plain text
791 #: build/C/man7/arp.7:305
792 msgid "B<capabilities>(7), B<ip>(7)"
793 msgstr "B<capabilities>(7), B<ip>(7)"
794
795 #. type: Plain text
796 #: build/C/man7/arp.7:310
797 msgid ""
798 "RFC\\ 826 for a description of ARP.  RFC\\ 2461 for a description of IPv6 "
799 "neighbor discovery and the base algorithms used.  Linux 2.2+ IPv4 ARP uses "
800 "the IPv6 algorithms when applicable."
801 msgstr ""
802 "RFC \\ 826: ARP の説明。 RFC\\ 2461: IPv6 neighbor discovery の説明と利用され"
803 "ている基礎アルゴリズム。 Linux 2.2 以降では IPv4 ARP は可能な場合は IPv6 アル"
804 "ゴリズムを使っている。"
805
806 #. type: SH
807 #: build/C/man7/arp.7:310 build/C/man3/byteorder.3:96 build/C/man3/cmsg.3:227
808 #: build/C/man7/ddp.7:254 build/C/man3/endian.3:153
809 #: build/C/man3/ether_aton.3:159 build/C/man5/gai.conf.5:96
810 #: build/C/man3/getaddrinfo.3:838 build/C/man3/getaddrinfo_a.3:607
811 #: build/C/man1/getent.1:370 build/C/man3/gethostbyname.3:457
812 #: build/C/man3/getipnodebyname.3:271 build/C/man3/getnameinfo.3:315
813 #: build/C/man3/getnetent.3:161 build/C/man3/getnetent_r.3:148
814 #: build/C/man2/getpeername.2:150 build/C/man3/getprotoent.3:147
815 #: build/C/man3/getprotoent_r.3:240 build/C/man3/getservent.3:164
816 #: build/C/man3/getservent_r.3:244 build/C/man5/host.conf.5:204
817 #: build/C/man7/hostname.7:93 build/C/man5/hosts.5:126
818 #: build/C/man5/hosts.equiv.5:88 build/C/man7/icmp.7:195
819 #: build/C/man3/inet.3:316 build/C/man3/inet_net_pton.3:393
820 #: build/C/man3/inet_ntop.3:122 build/C/man3/inet_pton.3:219
821 #: build/C/man7/ip.7:1289 build/C/man7/ipv6.7:414 build/C/man7/netdevice.7:378
822 #: build/C/man5/networks.5:80 build/C/man8/nscd.8:91
823 #: build/C/man5/nscd.conf.5:244 build/C/man5/nss.5:112
824 #: build/C/man5/nsswitch.conf.5:355 build/C/man7/packet.7:654
825 #: build/C/man5/protocols.5:86 build/C/man7/raw.7:282 build/C/man3/rcmd.3:293
826 #: build/C/man5/resolv.conf.5:308 build/C/man3/resolver.3:280
827 #: build/C/man3/rexec.3:170 build/C/man5/services.5:222
828 #: build/C/man3/setnetgrent.3:111 build/C/man2/shutdown.2:117
829 #: build/C/man7/tcp.7:1289 build/C/man7/udp.7:267 build/C/man7/udplite.7:156
830 #: build/C/man7/unix.7:625 build/C/man7/x25.7:127
831 #, no-wrap
832 msgid "COLOPHON"
833 msgstr "この文書について"
834
835 #. type: Plain text
836 #: build/C/man7/arp.7:318 build/C/man3/byteorder.3:104 build/C/man3/cmsg.3:235
837 #: build/C/man7/ddp.7:262 build/C/man3/endian.3:161
838 #: build/C/man3/ether_aton.3:167 build/C/man5/gai.conf.5:104
839 #: build/C/man3/getaddrinfo.3:846 build/C/man3/getaddrinfo_a.3:615
840 #: build/C/man1/getent.1:378 build/C/man3/gethostbyname.3:465
841 #: build/C/man3/getipnodebyname.3:279 build/C/man3/getnameinfo.3:323
842 #: build/C/man3/getnetent.3:169 build/C/man3/getnetent_r.3:156
843 #: build/C/man2/getpeername.2:158 build/C/man3/getprotoent.3:155
844 #: build/C/man3/getprotoent_r.3:248 build/C/man3/getservent.3:172
845 #: build/C/man3/getservent_r.3:252 build/C/man5/host.conf.5:212
846 #: build/C/man7/hostname.7:101 build/C/man5/hosts.5:134
847 #: build/C/man5/hosts.equiv.5:96 build/C/man7/icmp.7:203
848 #: build/C/man3/inet.3:324 build/C/man3/inet_net_pton.3:401
849 #: build/C/man3/inet_ntop.3:130 build/C/man3/inet_pton.3:227
850 #: build/C/man7/ip.7:1297 build/C/man7/ipv6.7:422 build/C/man7/netdevice.7:386
851 #: build/C/man5/networks.5:88 build/C/man8/nscd.8:99
852 #: build/C/man5/nscd.conf.5:252 build/C/man5/nss.5:120
853 #: build/C/man5/nsswitch.conf.5:363 build/C/man7/packet.7:662
854 #: build/C/man5/protocols.5:94 build/C/man7/raw.7:290 build/C/man3/rcmd.3:301
855 #: build/C/man5/resolv.conf.5:316 build/C/man3/resolver.3:288
856 #: build/C/man3/rexec.3:178 build/C/man5/services.5:230
857 #: build/C/man3/setnetgrent.3:119 build/C/man2/shutdown.2:125
858 #: build/C/man7/tcp.7:1297 build/C/man7/udp.7:275 build/C/man7/udplite.7:164
859 #: build/C/man7/unix.7:633 build/C/man7/x25.7:135
860 #, fuzzy
861 #| msgid ""
862 #| "This page is part of release 3.76 of the Linux I<man-pages> project.  A "
863 #| "description of the project, information about reporting bugs, and the "
864 #| "latest version of this page, can be found at \\%http://www.kernel.org/doc/"
865 #| "man-pages/."
866 msgid ""
867 "This page is part of release 3.77 of the Linux I<man-pages> project.  A "
868 "description of the project, information about reporting bugs, and the latest "
869 "version of this page, can be found at \\%http://www.kernel.org/doc/man-"
870 "pages/."
871 msgstr ""
872 "この man ページは Linux I<man-pages> プロジェクトのリリース 3.76 の一部\n"
873 "である。プロジェクトの説明とバグ報告に関する情報は\n"
874 "http://www.kernel.org/doc/man-pages/ に書かれている。"
875
876 #. type: TH
877 #: build/C/man3/byteorder.3:32
878 #, no-wrap
879 msgid "BYTEORDER"
880 msgstr "BYTEORDER"
881
882 #. type: TH
883 #: build/C/man3/byteorder.3:32
884 #, no-wrap
885 msgid "2014-04-08"
886 msgstr "2014-04-08"
887
888 #. type: TH
889 #: build/C/man3/byteorder.3:32 build/C/man3/endian.3:28
890 #: build/C/man3/ether_aton.3:31 build/C/man3/getaddrinfo.3:44
891 #: build/C/man3/getaddrinfo_a.3:29 build/C/man3/getnameinfo.3:10
892 #: build/C/man3/getnetent.3:30 build/C/man3/getnetent_r.3:26
893 #: build/C/man3/getprotoent.3:30 build/C/man3/getprotoent_r.3:26
894 #: build/C/man3/getservent.3:34 build/C/man3/getservent_r.3:26
895 #: build/C/man3/inet.3:42 build/C/man8/nscd.8:23 build/C/man5/nscd.conf.5:20
896 #: build/C/man3/resolver.3:32 build/C/man3/setnetgrent.3:10
897 #, no-wrap
898 msgid "GNU"
899 msgstr "GNU"
900
901 #. type: Plain text
902 #: build/C/man3/byteorder.3:36
903 msgid ""
904 "htonl, htons, ntohl, ntohs - convert values between host and network byte "
905 "order"
906 msgstr ""
907 "htonl, htons, ntohl, ntohs - ホストバイトオーダーとネットワークバイトオーダー"
908 "の間で値を変換する"
909
910 #. type: SH
911 #: build/C/man3/byteorder.3:36 build/C/man3/cmsg.3:14 build/C/man7/ddp.7:15
912 #: build/C/man3/endian.3:33 build/C/man3/ether_aton.3:35
913 #: build/C/man3/getaddrinfo.3:48 build/C/man3/getaddrinfo_a.3:33
914 #: build/C/man1/getent.1:27 build/C/man3/gethostbyname.3:46
915 #: build/C/man3/getipnodebyname.3:30 build/C/man3/getnameinfo.3:13
916 #: build/C/man3/getnetent.3:34 build/C/man3/getnetent_r.3:30
917 #: build/C/man2/getpeername.2:45 build/C/man3/getprotoent.3:34
918 #: build/C/man3/getprotoent_r.3:30 build/C/man3/getservent.3:38
919 #: build/C/man3/getservent_r.3:30 build/C/man5/hosts.5:30
920 #: build/C/man3/inet.3:46 build/C/man3/inet_net_pton.3:29
921 #: build/C/man3/inet_ntop.3:29 build/C/man3/inet_pton.3:30
922 #: build/C/man7/ip.7:39 build/C/man7/ipv6.7:89 build/C/man7/netdevice.7:21
923 #: build/C/man7/packet.7:15 build/C/man7/raw.7:16 build/C/man3/rcmd.3:48
924 #: build/C/man5/resolv.conf.5:27 build/C/man3/resolver.3:36
925 #: build/C/man3/rexec.3:44 build/C/man3/setnetgrent.3:14
926 #: build/C/man2/shutdown.2:43 build/C/man7/tcp.7:79 build/C/man7/udp.7:15
927 #: build/C/man7/udplite.7:30 build/C/man7/unix.7:23 build/C/man7/x25.7:15
928 #, no-wrap
929 msgid "SYNOPSIS"
930 msgstr "書式"
931
932 #. type: Plain text
933 #: build/C/man3/byteorder.3:39 build/C/man3/inet_net_pton.3:32
934 #: build/C/man3/inet_ntop.3:32 build/C/man3/inet_pton.3:33
935 #, no-wrap
936 msgid "B<#include E<lt>arpa/inet.hE<gt>>\n"
937 msgstr "B<#include E<lt>arpa/inet.hE<gt>>\n"
938
939 #. type: Plain text
940 #: build/C/man3/byteorder.3:41
941 #, no-wrap
942 msgid "B<uint32_t htonl(uint32_t >I<hostlong>B<);>\n"
943 msgstr "B<uint32_t htonl(uint32_t >I<hostlong>B<);>\n"
944
945 #. type: Plain text
946 #: build/C/man3/byteorder.3:43
947 #, no-wrap
948 msgid "B<uint16_t htons(uint16_t >I<hostshort>B<);>\n"
949 msgstr "B<uint16_t htons(uint16_t >I<hostshort>B<);>\n"
950
951 #. type: Plain text
952 #: build/C/man3/byteorder.3:45
953 #, no-wrap
954 msgid "B<uint32_t ntohl(uint32_t >I<netlong>B<);>\n"
955 msgstr "B<uint32_t ntohl(uint32_t >I<netlong>B<);>\n"
956
957 #. type: Plain text
958 #: build/C/man3/byteorder.3:47
959 #, no-wrap
960 msgid "B<uint16_t ntohs(uint16_t >I<netshort>B<);>\n"
961 msgstr "B<uint16_t ntohs(uint16_t >I<netshort>B<);>\n"
962
963 #. type: Plain text
964 #: build/C/man3/byteorder.3:54
965 msgid ""
966 "The B<htonl>()  function converts the unsigned integer I<hostlong> from host "
967 "byte order to network byte order."
968 msgstr ""
969 "B<htonl>()  関数は unsigned integer I<hostlong> を ホストバイトオーダーから"
970 "ネットワークバイトオーダーに変換する。"
971
972 #. type: Plain text
973 #: build/C/man3/byteorder.3:60
974 msgid ""
975 "The B<htons>()  function converts the unsigned short integer I<hostshort> "
976 "from host byte order to network byte order."
977 msgstr ""
978 "B<htons>()  関数は unsigned short integer I<hostshort> を ホストバイトオー"
979 "ダーからネットワークバイトオーダーに変換する。"
980
981 #. type: Plain text
982 #: build/C/man3/byteorder.3:66
983 msgid ""
984 "The B<ntohl>()  function converts the unsigned integer I<netlong> from "
985 "network byte order to host byte order."
986 msgstr ""
987 "B<ntohl>()  関数は unsigned integer I<netlong> を ネットワークバイトオーダー"
988 "からホストバイトオーダーに変換する。"
989
990 #. type: Plain text
991 #: build/C/man3/byteorder.3:72
992 msgid ""
993 "The B<ntohs>()  function converts the unsigned short integer I<netshort> "
994 "from network byte order to host byte order."
995 msgstr ""
996 "B<ntohs>()  関数は unsigned short integer I<netshort> を ネットワークバイト"
997 "オーダーからホストバイトオーダーに変換する。"
998
999 #. type: Plain text
1000 #: build/C/man3/byteorder.3:76
1001 msgid ""
1002 "On the i386 the host byte order is Least Significant Byte first, whereas the "
1003 "network byte order, as used on the Internet, is Most Significant Byte first."
1004 msgstr ""
1005 "i80x86 のホストバイトオーダーでは最下位バイトが若いアドレスに配置されるが、 "
1006 "インターネットで用いられるネットワークバイトオーダーでは最上位バイト が先に配"
1007 "置される。"
1008
1009 #. type: SH
1010 #: build/C/man3/byteorder.3:76 build/C/man3/ether_aton.3:127
1011 #: build/C/man3/rexec.3:142
1012 #, no-wrap
1013 msgid "ATTRIBUTES"
1014 msgstr "属性"
1015
1016 #. type: SS
1017 #: build/C/man3/byteorder.3:77 build/C/man3/rexec.3:143
1018 #, no-wrap
1019 msgid "Multithreading (see pthreads(7))"
1020 msgstr "マルチスレッディング (pthreads(7) 参照)"
1021
1022 #. type: Plain text
1023 #: build/C/man3/byteorder.3:85
1024 msgid ""
1025 "The B<htonl>(), B<htons>(), B<ntohl>(), and B<ntohs>()  functions are thread-"
1026 "safe."
1027 msgstr ""
1028 "関数 B<htonl>(), B<htons>(), B<ntohl>(), B<ntohs>() はスレッドセーフである。"
1029
1030 #. type: SH
1031 #: build/C/man3/byteorder.3:85 build/C/man3/cmsg.3:141
1032 #: build/C/man3/endian.3:76 build/C/man3/ether_aton.3:149
1033 #: build/C/man3/getaddrinfo.3:595 build/C/man3/getaddrinfo_a.3:305
1034 #: build/C/man3/gethostbyname.3:317 build/C/man3/getipnodebyname.3:258
1035 #: build/C/man3/getnameinfo.3:206 build/C/man3/getnetent.3:145
1036 #: build/C/man3/getnetent_r.3:141 build/C/man2/getpeername.2:101
1037 #: build/C/man3/getprotoent.3:140 build/C/man3/getprotoent_r.3:131
1038 #: build/C/man3/getservent.3:157 build/C/man3/getservent_r.3:130
1039 #: build/C/man3/inet.3:218 build/C/man3/inet_net_pton.3:159
1040 #: build/C/man3/inet_ntop.3:100 build/C/man3/inet_pton.3:129
1041 #: build/C/man3/rcmd.3:270 build/C/man3/resolver.3:272
1042 #: build/C/man3/rexec.3:149 build/C/man3/setnetgrent.3:92
1043 #: build/C/man2/shutdown.2:91
1044 #, no-wrap
1045 msgid "CONFORMING TO"
1046 msgstr "準拠"
1047
1048 #. type: Plain text
1049 #: build/C/man3/byteorder.3:87 build/C/man3/inet_pton.3:131
1050 msgid "POSIX.1-2001."
1051 msgstr "POSIX.1-2001."
1052
1053 #. type: Plain text
1054 #: build/C/man3/byteorder.3:92
1055 msgid ""
1056 "Some systems require the inclusion of I<E<lt>netinet/in.hE<gt>> instead of "
1057 "I<E<lt>arpa/inet.hE<gt>>."
1058 msgstr ""
1059 "いくつかのシステムでは、 I<E<lt>arpa/inet.hE<gt>> の代わりに I<E<lt>netinet/"
1060 "in.hE<gt>> をインクルードする必要がある。"
1061
1062 #. type: Plain text
1063 #: build/C/man3/byteorder.3:96
1064 msgid "B<endian>(3), B<gethostbyname>(3), B<getservent>(3)"
1065 msgstr "B<endian>(3), B<gethostbyname>(3), B<getservent>(3)"
1066
1067 #. type: TH
1068 #: build/C/man3/cmsg.3:11
1069 #, no-wrap
1070 msgid "CMSG"
1071 msgstr "CMSG"
1072
1073 #. type: TH
1074 #: build/C/man3/cmsg.3:11 build/C/man5/resolv.conf.5:23 build/C/man7/unix.7:20
1075 #, no-wrap
1076 msgid "2014-12-31"
1077 msgstr "2014-12-31"
1078
1079 #. type: Plain text
1080 #: build/C/man3/cmsg.3:14
1081 msgid ""
1082 "CMSG_ALIGN, CMSG_SPACE, CMSG_NXTHDR, CMSG_FIRSTHDR - access ancillary data"
1083 msgstr ""
1084 "CMSG_ALIGN, CMSG_SPACE, CMSG_NXTHDR, CMSG_FIRSTHDR - 補助データにアクセスす"
1085 "る。"
1086
1087 #. type: Plain text
1088 #: build/C/man3/cmsg.3:16 build/C/man7/ddp.7:17 build/C/man2/getpeername.2:47
1089 #: build/C/man7/ip.7:41 build/C/man7/ipv6.7:91 build/C/man7/raw.7:18
1090 #: build/C/man2/shutdown.2:45 build/C/man7/tcp.7:81 build/C/man7/udp.7:17
1091 #: build/C/man7/udplite.7:32 build/C/man7/unix.7:25 build/C/man7/x25.7:17
1092 msgid "B<#include E<lt>sys/socket.hE<gt>>"
1093 msgstr "B<#include E<lt>sys/socket.hE<gt>>"
1094
1095 #. type: Plain text
1096 #: build/C/man3/cmsg.3:18
1097 msgid "B<struct cmsghdr *CMSG_FIRSTHDR(struct msghdr *>I<msgh>B<);>"
1098 msgstr "B<struct cmsghdr *CMSG_FIRSTHDR(struct msghdr *>I<msgh>B<);>"
1099
1100 #. type: Plain text
1101 #: build/C/man3/cmsg.3:20
1102 msgid ""
1103 "B<struct cmsghdr *CMSG_NXTHDR(struct msghdr *>I<msgh>B<, struct cmsghdr "
1104 "*>I<cmsg>B<);>"
1105 msgstr ""
1106 "B<struct cmsghdr *CMSG_NXTHDR(struct msghdr *>I<msgh>B<, struct cmsghdr "
1107 "*>I<cmsg>B<);>"
1108
1109 #. type: Plain text
1110 #: build/C/man3/cmsg.3:22
1111 msgid "B<size_t CMSG_ALIGN(size_t >I<length>B<);>"
1112 msgstr "B<size_t CMSG_ALIGN(size_t >I<length>B<);>"
1113
1114 #. type: Plain text
1115 #: build/C/man3/cmsg.3:24
1116 msgid "B<size_t CMSG_SPACE(size_t >I<length>B<);>"
1117 msgstr "B<size_t CMSG_SPACE(size_t >I<length>B<);>"
1118
1119 #. type: Plain text
1120 #: build/C/man3/cmsg.3:26
1121 msgid "B<size_t CMSG_LEN(size_t >I<length>B<);>"
1122 msgstr "B<size_t CMSG_LEN(size_t >I<length>B<);>"
1123
1124 #. type: Plain text
1125 #: build/C/man3/cmsg.3:28
1126 msgid "B<unsigned char *CMSG_DATA(struct cmsghdr *>I<cmsg>B<);>"
1127 msgstr "B<unsigned char *CMSG_DATA(struct cmsghdr *>I<cmsg>B<);>"
1128
1129 #. type: Plain text
1130 #: build/C/man3/cmsg.3:36
1131 #, no-wrap
1132 msgid ""
1133 "struct cmsghdr {\n"
1134 "    socklen_t cmsg_len;    /* data byte count, including header */\n"
1135 "    int       cmsg_level;  /* originating protocol */\n"
1136 "    int       cmsg_type;   /* protocol-specific type */\n"
1137 "    /* followed by unsigned char cmsg_data[]; */\n"
1138 "};\n"
1139 msgstr ""
1140 "struct cmsghdr {\n"
1141 "    socklen_t cmsg_len;    /* data byte count, including header */\n"
1142 "    int       cmsg_level;  /* originating protocol */\n"
1143 "    int       cmsg_type;   /* protocol-specific type */\n"
1144 "    /* followed by unsigned char cmsg_data[]; */\n"
1145 "};\n"
1146
1147 #. type: Plain text
1148 #: build/C/man3/cmsg.3:51
1149 msgid ""
1150 "These macros are used to create and access control messages (also called "
1151 "ancillary data) that are not a part of the socket payload.  This control "
1152 "information may include the interface the packet was received on, various "
1153 "rarely used header fields, an extended error description, a set of file "
1154 "descriptors or UNIX credentials.  For instance, control messages can be used "
1155 "to send additional header fields such as IP options.  Ancillary data is sent "
1156 "by calling B<sendmsg>(2)  and received by calling B<recvmsg>(2).  See their "
1157 "manual pages for more information."
1158 msgstr ""
1159 "これらのマクロは制御メッセージ (補助データ (ancillary data) とも呼ばれる) を"
1160 "作り、 それにアクセスするために使われる。 制御メッセージはソケットにのるデー"
1161 "タではない。 この制御情報は、到着したパケットへのインターフェイス、様々なあま"
1162 "り 使われないヘッダーフィールド、エラー記述の拡張、ファイルデスクリ プタの集"
1163 "合や、UNIXにおける信頼情報 (credential) を含んでいる。 制御メッセージは、例え"
1164 "ば IP オプションのような追加ヘッダーフィールドを 送るのに使う事ができる。 補"
1165 "助データは、 B<sendmsg>(2)  を呼び出して送り、 B<recvmsg>(2)  を呼び出して受"
1166 "け取る。 詳細はそれらのマニュアルページを参照。"
1167
1168 #. type: Plain text
1169 #: build/C/man3/cmsg.3:62
1170 msgid ""
1171 "Ancillary data is a sequence of I<struct cmsghdr> structures with appended "
1172 "data.  This sequence should be accessed using only the macros described in "
1173 "this manual page and never directly.  See the specific protocol man pages "
1174 "for the available control message types.  The maximum ancillary buffer size "
1175 "allowed per socket can be set using I</proc/sys/net/core/optmem_max>; see "
1176 "B<socket>(7)."
1177 msgstr ""
1178 "補助データは I<struct cmsghdr> 構造体のシーケンスに追加データが付加されたもの"
1179 "である。 このシーケンスにはこのマニュアルページに書かれている マクロを使って"
1180 "アクセスすべきで、直接アクセスすべきではない。 使用可能な制御メッセージのタイ"
1181 "プについては、 それぞれのプロトコルのマニュアルページを参照のこと。 接続毎の"
1182 "最大補助用バッファサイズは I</proc/sys/net/core/optmem_max> を使って設定でき"
1183 "る。 B<socket>(7)  を参照。"
1184
1185 #. type: Plain text
1186 #: build/C/man3/cmsg.3:69
1187 msgid ""
1188 "B<CMSG_FIRSTHDR>()  returns a pointer to the first I<cmsghdr> in the "
1189 "ancillary data buffer associated with the passed I<msghdr>."
1190 msgstr ""
1191 "B<CMSG_FIRSTHDR>()  は、渡した I<msghdr> に関連した補助データバッファ中の、最"
1192 "初の I<cmsghdr> へのポインタを返す。"
1193
1194 #. type: Plain text
1195 #: build/C/man3/cmsg.3:76
1196 msgid ""
1197 "B<CMSG_NXTHDR>()  returns the next valid I<cmsghdr> after the passed "
1198 "I<cmsghdr>.  It returns NULL when there isn't enough space left in the "
1199 "buffer."
1200 msgstr ""
1201 "B<CMSG_NXTHDR>()  は、渡した I<cmsghdr> の次にくる (有効な)  I<cmsghdr> を返"
1202 "す。 バッファに十分な空きが無い場合、NULL を返す。"
1203
1204 #. type: Plain text
1205 #: build/C/man3/cmsg.3:81
1206 msgid ""
1207 "B<CMSG_ALIGN>(), given a length, returns it including the required "
1208 "alignment.  This is a constant expression."
1209 msgstr ""
1210 "B<CMSG_ALIGN>()  に長さを与えると、必要なアラインメントを加味した長さを返して"
1211 "くる。 これは定数式である。"
1212
1213 #. type: Plain text
1214 #: build/C/man3/cmsg.3:86
1215 msgid ""
1216 "B<CMSG_SPACE>()  returns the number of bytes an ancillary element with "
1217 "payload of the passed data length occupies.  This is a constant expression."
1218 msgstr ""
1219 "B<CMSG_SPACE>()  は、与えたデータ長が占めるのに必要な補助要素 (ancillary "
1220 "element) の バイト数を返す。これは定数式である。"
1221
1222 #. type: Plain text
1223 #: build/C/man3/cmsg.3:90
1224 msgid "B<CMSG_DATA>()  returns a pointer to the data portion of a I<cmsghdr>."
1225 msgstr "B<CMSG_DATA>()  は、 I<cmsghdr> のデータ部分へのポインタを返す。"
1226
1227 #. type: Plain text
1228 #: build/C/man3/cmsg.3:101
1229 msgid ""
1230 "B<CMSG_LEN>()  returns the value to store in the I<cmsg_len> member of the "
1231 "I<cmsghdr> structure, taking into account any necessary alignment.  It takes "
1232 "the data length as an argument.  This is a constant expression."
1233 msgstr ""
1234 "B<CMSG_LEN>()  は、 I<cmsghdr> 構造体の I<cmsg_len> メンバにデータを格納する"
1235 "際に必要な値を返す。アラインメントも考慮に入れ られる。 引数としてデータ長を"
1236 "とる。これは定数式である。"
1237
1238 #. type: Plain text
1239 #: build/C/man3/cmsg.3:134
1240 msgid ""
1241 "To create ancillary data, first initialize the I<msg_controllen> member of "
1242 "the I<msghdr> with the length of the control message buffer.  Use "
1243 "B<CMSG_FIRSTHDR>()  on the I<msghdr> to get the first control message and "
1244 "B<CMSG_NXTHDR>()  to get all subsequent ones.  In each control message, "
1245 "initialize I<cmsg_len> (with B<CMSG_LEN>()), the other I<cmsghdr> header "
1246 "fields, and the data portion using B<CMSG_DATA>().  Finally, the "
1247 "I<msg_controllen> field of the I<msghdr> should be set to the sum of the "
1248 "B<CMSG_SPACE>()  of the length of all control messages in the buffer.  For "
1249 "more information on the I<msghdr>, see B<recvmsg>(2)."
1250 msgstr ""
1251 "補助データを作るためには最初に I<msghdr> のメンバー I<msg_controllen> を、制"
1252 "御メッセージバッファの長さで初期化する。 B<CMSG_FIRSTHDR>()  を I<msghdr> に"
1253 "用いると最初の制御メッセージが得られ、 B<CMSG_NXTHDR>()  を使うと次の制御メッ"
1254 "セージが得られる。 それぞれの制御メッセージでは、 I<cmsg_len> を初期化する "
1255 "(B<CMSG_LEN>()  を使う)。 その他の I<cmsghdr> ヘッダーフィールド、そしてデー"
1256 "タ部分に対しても B<CMSG_DATA>()  を使って初期化をする。 最後に I<msghdr> の "
1257 "I<msg_controllen> フィールドに、バッファ中の制御メッセージの長さの "
1258 "B<CMSG_SPACE>()  の合計がセットされる。 I<msghdr> についての詳細は "
1259 "B<recvmsg>(2)  を参照。"
1260
1261 #. type: Plain text
1262 #: build/C/man3/cmsg.3:141
1263 msgid ""
1264 "When the control message buffer is too short to store all messages, the "
1265 "B<MSG_CTRUNC> flag is set in the I<msg_flags> member of the I<msghdr>."
1266 msgstr ""
1267 "制御メッセージバッファが全てのメッセージを納めるのには短すぎる場合、 "
1268 "I<msghdr> の I<msg_flags> メンバーに B<MSG_CTRUNC> フラグがセットされる。"
1269
1270 #. type: Plain text
1271 #: build/C/man3/cmsg.3:146
1272 msgid ""
1273 "This ancillary data model conforms to the POSIX.1g draft, 4.4BSD-Lite, the "
1274 "IPv6 advanced API described in RFC\\ 2292 and SUSv2.  B<CMSG_ALIGN>()  is a "
1275 "Linux extension."
1276 msgstr ""
1277 "この補助データモデルは、POSIX.1g draft, 4.4BSD-Lite, RFC\\ 2292 に 記述されて"
1278 "いる IPv6 advanced API, そして SUSv2 に準拠している。 B<CMSG_ALIGN>()  は "
1279 "Linux の拡張である。"
1280
1281 #. type: SH
1282 #: build/C/man3/cmsg.3:146 build/C/man7/ddp.7:226 build/C/man3/endian.3:91
1283 #: build/C/man3/getaddrinfo.3:600 build/C/man3/getaddrinfo_a.3:308
1284 #: build/C/man3/gethostbyname.3:341 build/C/man3/getipnodebyname.3:261
1285 #: build/C/man3/getnameinfo.3:208 build/C/man3/getnetent.3:147
1286 #: build/C/man2/getpeername.2:105 build/C/man5/host.conf.5:190
1287 #: build/C/man5/hosts.5:88 build/C/man5/hosts.equiv.5:71
1288 #: build/C/man7/icmp.7:169 build/C/man3/inet.3:226
1289 #: build/C/man3/inet_net_pton.3:165 build/C/man3/inet_pton.3:131
1290 #: build/C/man7/ip.7:1183 build/C/man7/ipv6.7:386 build/C/man7/netdevice.7:341
1291 #: build/C/man8/nscd.8:60 build/C/man5/nscd.conf.5:232
1292 #: build/C/man5/nsswitch.conf.5:333 build/C/man7/packet.7:538
1293 #: build/C/man7/raw.7:187 build/C/man3/setnetgrent.3:103
1294 #: build/C/man2/shutdown.2:95 build/C/man7/unix.7:490
1295 #, no-wrap
1296 msgid "NOTES"
1297 msgstr "注意"
1298
1299 #. type: Plain text
1300 #: build/C/man3/cmsg.3:151
1301 msgid ""
1302 "For portability, ancillary data should be accessed using only the macros "
1303 "described here.  B<CMSG_ALIGN>()  is a Linux extension and should not be "
1304 "used in portable programs."
1305 msgstr ""
1306 "移植性のために、補助データへのアクセスには、 ここで述べられているマクロだけを"
1307 "使うべきである。 B<CMSG_ALIGN>()  は Linux での拡張であり、移植性を考えたプロ"
1308 "グラムでは使うべきではない。"
1309
1310 #. type: Plain text
1311 #: build/C/man3/cmsg.3:161
1312 msgid ""
1313 "In Linux, B<CMSG_LEN>(), B<CMSG_DATA>(), and B<CMSG_ALIGN>()  are constant "
1314 "expressions (assuming their argument is constant); this could be used to "
1315 "declare the size of global variables.  This may not be portable, however."
1316 msgstr ""
1317 "Linux では B<CMSG_LEN>(), B<CMSG_DATA>(), B<CMSG_ALIGN>()  は定数式である (そ"
1318 "れらの引数が定数とみなされる)。 このことは、大域変数のサイズを宣言するのに使"
1319 "える。 しかし移植性はなくなるだろう。"
1320
1321 #. type: SH
1322 #: build/C/man3/cmsg.3:161 build/C/man3/endian.3:107
1323 #: build/C/man5/gai.conf.5:74 build/C/man3/getaddrinfo.3:623
1324 #: build/C/man3/getaddrinfo_a.3:314 build/C/man3/getnameinfo.3:243
1325 #: build/C/man3/getprotoent_r.3:135 build/C/man3/getservent_r.3:134
1326 #: build/C/man5/hosts.5:107 build/C/man3/inet.3:262
1327 #: build/C/man3/inet_net_pton.3:247 build/C/man3/inet_ntop.3:115
1328 #: build/C/man3/inet_pton.3:156 build/C/man5/nss.5:100 build/C/man7/unix.7:608
1329 #, no-wrap
1330 msgid "EXAMPLE"
1331 msgstr "例"
1332
1333 #. type: Plain text
1334 #: build/C/man3/cmsg.3:165
1335 msgid ""
1336 "This code looks for the B<IP_TTL> option in a received ancillary buffer:"
1337 msgstr ""
1338 "次のコードは、受け取った補助バッファから B<IP_TTL> オプションを探すものであ"
1339 "る。"
1340
1341 #. type: Plain text
1342 #: build/C/man3/cmsg.3:172
1343 #, no-wrap
1344 msgid ""
1345 "struct msghdr msgh;\n"
1346 "struct cmsghdr *cmsg;\n"
1347 "int *ttlptr;\n"
1348 "int received_ttl;\n"
1349 msgstr ""
1350 "struct msghdr msgh;\n"
1351 "struct cmsghdr *cmsg;\n"
1352 "int *ttlptr;\n"
1353 "int received_ttl;\n"
1354
1355 #. type: Plain text
1356 #: build/C/man3/cmsg.3:189
1357 #, no-wrap
1358 msgid ""
1359 "/* Receive auxiliary data in msgh */\n"
1360 "for (cmsg = CMSG_FIRSTHDR(&msgh); cmsg != NULL;\n"
1361 "        cmsg = CMSG_NXTHDR(&msgh,cmsg)) {\n"
1362 "    if (cmsg-E<gt>cmsg_level == IPPROTO_IP\n"
1363 "            && cmsg-E<gt>cmsg_type == IP_TTL) {\n"
1364 "        ttlptr = (int *) CMSG_DATA(cmsg);\n"
1365 "        received_ttl = *ttlptr;\n"
1366 "        break;\n"
1367 "    }\n"
1368 "}\n"
1369 "if (cmsg == NULL) {\n"
1370 "    /*\n"
1371 "     * Error: IP_TTL not enabled or small buffer\n"
1372 "     * or I/O error.\n"
1373 "     */\n"
1374 "}\n"
1375 msgstr ""
1376 "/* Receive auxiliary data in msgh */\n"
1377 "for (cmsg = CMSG_FIRSTHDR(&msgh); cmsg != NULL;\n"
1378 "        cmsg = CMSG_NXTHDR(&msgh,cmsg)) {\n"
1379 "    if (cmsg-E<gt>cmsg_level == IPPROTO_IP\n"
1380 "            && cmsg-E<gt>cmsg_type == IP_TTL) {\n"
1381 "        ttlptr = (int *) CMSG_DATA(cmsg);\n"
1382 "        received_ttl = *ttlptr;\n"
1383 "        break;\n"
1384 "    }\n"
1385 "}\n"
1386 "if (cmsg == NULL) {\n"
1387 "    /*\n"
1388 "     * Error: IP_TTL not enabled or small buffer\n"
1389 "     * or I/O error.\n"
1390 "     */\n"
1391 "}\n"
1392
1393 #. type: Plain text
1394 #: build/C/man3/cmsg.3:195
1395 msgid ""
1396 "The code below passes an array of file descriptors over a UNIX domain socket "
1397 "using B<SCM_RIGHTS>:"
1398 msgstr ""
1399 "以下のコードは、 B<SCM_RIGHTS> を使い、ファイルデスクリプタの配列を UNIX ドメ"
1400 "インソケットを通して送るものである。"
1401
1402 #. type: Plain text
1403 #: build/C/man3/cmsg.3:208
1404 #, no-wrap
1405 msgid ""
1406 "struct msghdr msg = {0};\n"
1407 "struct cmsghdr *cmsg;\n"
1408 "int myfds[NUM_FD]; /* Contains the file descriptors to pass. */\n"
1409 "union {\n"
1410 "    /* ancillary data buffer, wrapped in a union in order to ensure it is\n"
1411 "       suitably aligned */\n"
1412 "    char buf[CMSG_SPACE(sizeof myfds)];\n"
1413 "    struct cmsghdr align;\n"
1414 "} u;\n"
1415 "int *fdptr;\n"
1416 msgstr ""
1417 "struct msghdr msg = {0};\n"
1418 "struct cmsghdr *cmsg;\n"
1419 "int myfds[NUM_FD]; /* Contains the file descriptors to pass. */\n"
1420 "union {\n"
1421 "    /* ancillary data buffer, wrapped in a union in order to ensure it is\n"
1422 "       suitably aligned */\n"
1423 "    char buf[CMSG_SPACE(sizeof myfds)];\n"
1424 "    struct cmsghdr align;\n"
1425 "} u;\n"
1426 "int *fdptr;\n"
1427
1428 #. type: Plain text
1429 #: build/C/man3/cmsg.3:220
1430 #, no-wrap
1431 msgid ""
1432 "msg.msg_control = u.buf;\n"
1433 "msg.msg_controllen = sizeof u.buf;\n"
1434 "cmsg = CMSG_FIRSTHDR(&msg);\n"
1435 "cmsg-E<gt>cmsg_level = SOL_SOCKET;\n"
1436 "cmsg-E<gt>cmsg_type = SCM_RIGHTS;\n"
1437 "cmsg-E<gt>cmsg_len = CMSG_LEN(sizeof(int) * NUM_FD);\n"
1438 "/* Initialize the payload: */\n"
1439 "fdptr = (int *) CMSG_DATA(cmsg);\n"
1440 "memcpy(fdptr, myfds, NUM_FD * sizeof(int));\n"
1441 "/* Sum of the length of all control messages in the buffer: */\n"
1442 "msg.msg_controllen = cmsg-E<gt>cmsg_len;\n"
1443 msgstr ""
1444 "msg.msg_control = u.buf;\n"
1445 "msg.msg_controllen = sizeof u.buf;\n"
1446 "cmsg = CMSG_FIRSTHDR(&msg);\n"
1447 "cmsg-E<gt>cmsg_level = SOL_SOCKET;\n"
1448 "cmsg-E<gt>cmsg_type = SCM_RIGHTS;\n"
1449 "cmsg-E<gt>cmsg_len = CMSG_LEN(sizeof(int) * NUM_FD);\n"
1450 "/* Initialize the payload: */\n"
1451 "fdptr = (int *) CMSG_DATA(cmsg);\n"
1452 "memcpy(fdptr, myfds, NUM_FD * sizeof(int));\n"
1453 "/* Sum of the length of all control messages in the buffer: */\n"
1454 "msg.msg_controllen = cmsg-E<gt>cmsg_len;\n"
1455
1456 #. type: Plain text
1457 #: build/C/man3/cmsg.3:225
1458 msgid "B<recvmsg>(2), B<sendmsg>(2)"
1459 msgstr "B<recvmsg>(2), B<sendmsg>(2)"
1460
1461 #. type: Plain text
1462 #: build/C/man3/cmsg.3:227
1463 msgid "RFC\\ 2292"
1464 msgstr "RFC\\ 2292"
1465
1466 #. type: TH
1467 #: build/C/man7/ddp.7:12
1468 #, no-wrap
1469 msgid "DDP"
1470 msgstr "DDP"
1471
1472 #. type: TH
1473 #: build/C/man7/ddp.7:12
1474 #, no-wrap
1475 msgid "2008-11-20"
1476 msgstr "2008-11-20"
1477
1478 #. type: Plain text
1479 #: build/C/man7/ddp.7:15
1480 msgid "ddp - Linux AppleTalk protocol implementation"
1481 msgstr "ddp - Linux での AppleTalk プロトコルの実装"
1482
1483 #. type: Plain text
1484 #: build/C/man7/ddp.7:19
1485 msgid "B<#include E<lt>netatalk/at.hE<gt>>"
1486 msgstr "B<#include E<lt>netatalk/at.hE<gt>>"
1487
1488 #. type: Plain text
1489 #: build/C/man7/ddp.7:21
1490 msgid "I<ddp_socket>B< = socket(AF_APPLETALK, SOCK_DGRAM, 0);>"
1491 msgstr "I<ddp_socket>B< = socket(AF_APPLETALK, SOCK_DGRAM, 0);>"
1492
1493 #. type: Plain text
1494 #: build/C/man7/ddp.7:23
1495 msgid "I<raw_socket>B< = socket(AF_APPLETALK, SOCK_RAW, >I<protocol>B<);>"
1496 msgstr "I<raw_socket>B< = socket(AF_APPLETALK, SOCK_RAW, >I<protocol>B<);>"
1497
1498 #. type: Plain text
1499 #: build/C/man7/ddp.7:34
1500 msgid ""
1501 "Linux implements the AppleTalk protocols described in I<Inside AppleTalk>.  "
1502 "Only the DDP layer and AARP are present in the kernel.  They are designed to "
1503 "be used via the B<netatalk> protocol libraries.  This page documents the "
1504 "interface for those who wish or need to use the DDP layer directly."
1505 msgstr ""
1506 "Linux は I<Inside AppleTalk> に記述されている AppleTalk プロトコルを実装して"
1507 "いる。 カーネルにあるのは DDP 層と AARP だけである。これらは B<netatalk> プロ"
1508 "トコルライブラリを通して利用されるように設計されている。 このページは DDP 層"
1509 "を直接利用したいユーザーのために、 インターフェースを記述したものである。"
1510
1511 #. type: Plain text
1512 #: build/C/man7/ddp.7:39
1513 msgid ""
1514 "The communication between AppleTalk and the user program works using a BSD-"
1515 "compatible socket interface.  For more information on sockets, see "
1516 "B<socket>(7)."
1517 msgstr ""
1518 "AppleTalk とユーザープログラムとの通信には、 BSD 互換のソケットインターフェー"
1519 "スを利用する。 ソケットに関するより詳しい情報は B<socket>(7)  を見よ。"
1520
1521 #. type: Plain text
1522 #: build/C/man7/ddp.7:60
1523 msgid ""
1524 "An AppleTalk socket is created by calling the B<socket>(2)  function with a "
1525 "B<AF_APPLETALK> socket family argument.  Valid socket types are "
1526 "B<SOCK_DGRAM> to open a B<ddp> socket or B<SOCK_RAW> to open a B<raw> "
1527 "socket.  I<protocol> is the AppleTalk protocol to be received or sent.  For "
1528 "B<SOCK_RAW> you must specify B<ATPROTO_DDP>."
1529 msgstr ""
1530 "AppleTalk ソケットは、 ソケットファミリーの引数に B<AF_APPLETALK> を指定して "
1531 "B<socket>(2)  関数を呼び出すことによって生成される。指定できるソケットタイプ"
1532 "は、 B<ddp> ソケットをオープンする場合には B<SOCK_DGRAM>、 B<raw> ソケットを"
1533 "オープンする場合には B<SOCK_RAW> である。 I<protocol> は送受信される "
1534 "AppleTalk プロトコルである。 ソケットタイプに B<SOCK_RAW> を指定した場合は、"
1535 "プロトコルに B<ATPROTO_DDP> を指定しなければならない。"
1536
1537 #. type: Plain text
1538 #: build/C/man7/ddp.7:65
1539 msgid ""
1540 "Raw sockets may be opened only by a process with effective user ID 0 or when "
1541 "the process has the B<CAP_NET_RAW> capability."
1542 msgstr ""
1543 "raw ソケットは実効ユーザー ID が 0 のプロセスか、 B<CAT_NEW_RAW> 権限を持った"
1544 "プロセスでないとオープンできない。"
1545
1546 #. type: SS
1547 #: build/C/man7/ddp.7:65 build/C/man7/ip.7:123 build/C/man7/ipv6.7:142
1548 #: build/C/man7/raw.7:93 build/C/man7/udp.7:98 build/C/man7/udplite.7:58
1549 #: build/C/man7/unix.7:57
1550 #, no-wrap
1551 msgid "Address format"
1552 msgstr "アドレスのフォーマット"
1553
1554 #. type: Plain text
1555 #: build/C/man7/ddp.7:68
1556 msgid ""
1557 "An AppleTalk socket address is defined as a combination of a network number, "
1558 "a node number, and a port number."
1559 msgstr ""
1560 "AppleTalk ソケットアドレスはネットワーク番号・ノード番号・ポート番号の 組み合"
1561 "わせで定義される。"
1562
1563 #. type: Plain text
1564 #: build/C/man7/ddp.7:75
1565 #, no-wrap
1566 msgid ""
1567 "struct at_addr {\n"
1568 "    unsigned short s_net;\n"
1569 "    unsigned char  s_node;\n"
1570 "};\n"
1571 msgstr ""
1572 "struct at_addr {\n"
1573 "    unsigned short s_net;\n"
1574 "    unsigned char  s_node;\n"
1575 "};\n"
1576
1577 #. type: Plain text
1578 #: build/C/man7/ddp.7:81
1579 #, no-wrap
1580 msgid ""
1581 "struct sockaddr_atalk {\n"
1582 "    sa_family_t    sat_family;    /* address family */\n"
1583 "    unsigned char  sat_port;      /* port */\n"
1584 "    struct at_addr sat_addr;      /* net/node */\n"
1585 "};\n"
1586 msgstr ""
1587 "struct sockaddr_atalk {\n"
1588 "    sa_family_t    sat_family;    /* address family */\n"
1589 "    unsigned char  sat_port;      /* port */\n"
1590 "    struct at_addr sat_addr;      /* net/node */\n"
1591 "};\n"
1592
1593 #.  FIXME . this doesn't make sense [johnl]
1594 #. type: Plain text
1595 #: build/C/man7/ddp.7:120
1596 msgid ""
1597 "I<sat_family> is always set to B<AF_APPLETALK>.  I<sat_port> contains the "
1598 "port.  The port numbers below 129 are known as I<reserved ports>.  Only "
1599 "processes with the effective user ID 0 or the B<CAP_NET_BIND_SERVICE> "
1600 "capability may B<bind>(2)  to these sockets.  I<sat_addr> is the host "
1601 "address.  The I<net> member of I<struct at_addr> contains the host network "
1602 "in network byte order.  The value of B<AT_ANYNET> is a wildcard and also "
1603 "implies \\(lqthis network.\\(rq The I<node> member of I<struct at_addr> "
1604 "contains the host node number.  The value of B<AT_ANYNODE> is a wildcard and "
1605 "also implies \\(lqthis node.\\(rq The value of B<ATADDR_BCAST> is a link "
1606 "local broadcast address."
1607 msgstr ""
1608 "I<sat_family> は常に B<AF_APPLETALK> に設定する。 I<sat_port> はポートを与え"
1609 "る。ポート番号が 129 以下のポートは 「予約ポート (reserved port)」 と呼ばれ"
1610 "る。実効ユーザー ID が 0 のプロセスか、 B<CAP_NET_BIND_SERVICE> 権限を持つプ"
1611 "ロセスだけが、このようなソケットを B<bind>(2)  できる。 I<sat_addr> はホスト"
1612 "アドレスである。 I<struct at_addr> のメンバー I<s_net> にはホストのネットワー"
1613 "クをネットワークバイトオーダーで与える。値 B<AT_ANYNET> はワイルドカードで、"
1614 "「このネットワーク」も暗黙のうちに含まれる。 I<struct at_addr> のメンバー "
1615 "I<s_node> にはホストのノード番号を与える。値 B<AT_ANYNODE> はワイルドカード"
1616 "で、「このノード」も暗黙のうちに含まれる。値 B<ATADDR_BCAST> はローカルなブ"
1617 "ロードキャストアドレスである。"
1618
1619 #. type: SS
1620 #: build/C/man7/ddp.7:120 build/C/man7/ip.7:224 build/C/man7/ipv6.7:192
1621 #: build/C/man7/packet.7:180 build/C/man7/raw.7:109 build/C/man7/tcp.7:889
1622 #: build/C/man7/udp.7:178 build/C/man7/udplite.7:67 build/C/man7/unix.7:220
1623 #: build/C/man7/x25.7:72
1624 #, no-wrap
1625 msgid "Socket options"
1626 msgstr "ソケットオプション"
1627
1628 #. type: Plain text
1629 #: build/C/man7/ddp.7:122
1630 msgid "No protocol-specific socket options are supported."
1631 msgstr "プロトコル固有のソケットオプションはない。"
1632
1633 #. type: Plain text
1634 #: build/C/man7/ddp.7:128
1635 msgid ""
1636 "IP supports a set of I</proc> interfaces to configure some global AppleTalk "
1637 "parameters.  The parameters can be accessed by reading or writing files in "
1638 "the directory I</proc/sys/net/atalk/>."
1639 msgstr ""
1640 "Appletalk のグローバルパラメータのいくつかは、 I</proc> インタフェースを通し"
1641 "て設定することができる。 これらのパラメータには、 I</proc/sys/net/atalk/> "
1642 "ディレクトリ内のファイルの読み書きでアクセスできる。"
1643
1644 #. type: TP
1645 #: build/C/man7/ddp.7:128
1646 #, no-wrap
1647 msgid "I<aarp-expiry-time>"
1648 msgstr "I<aarp-expiry-time>"
1649
1650 #. type: Plain text
1651 #: build/C/man7/ddp.7:131
1652 msgid "The time interval (in seconds) before an AARP cache entry expires."
1653 msgstr "AARP キャッシュエントリを破棄するまでのタイムインターバル (秒単位)。"
1654
1655 #. type: TP
1656 #: build/C/man7/ddp.7:131
1657 #, no-wrap
1658 msgid "I<aarp-resolve-time>"
1659 msgstr "I<aarp-resolve-time>"
1660
1661 #. type: Plain text
1662 #: build/C/man7/ddp.7:134
1663 msgid "The time interval (in seconds) before an AARP cache entry is resolved."
1664 msgstr "AARP キャッシュエントリが解決されるまでのタイムインターバル (秒単位)。"
1665
1666 #. type: TP
1667 #: build/C/man7/ddp.7:134
1668 #, no-wrap
1669 msgid "I<aarp-retransmit-limit>"
1670 msgstr "I<aarp-retransmit-limit>"
1671
1672 #. type: Plain text
1673 #: build/C/man7/ddp.7:138
1674 msgid ""
1675 "The number of retransmissions of an AARP query before the node is declared "
1676 "dead."
1677 msgstr ""
1678 "AARP クエリーの最大再送信回数。この回数を越えると、 そのノードは dead である"
1679 "とみなされる。"
1680
1681 #. type: TP
1682 #: build/C/man7/ddp.7:138
1683 #, no-wrap
1684 msgid "I<aarp-tick-time>"
1685 msgstr "I<aarp-tick-time>"
1686
1687 #. type: Plain text
1688 #: build/C/man7/ddp.7:141
1689 msgid "The timer rate (in seconds) for the timer driving AARP."
1690 msgstr "タイマー動作する AARP のタイマーレート (秒単位)"
1691
1692 #. type: Plain text
1693 #: build/C/man7/ddp.7:144
1694 msgid ""
1695 "The default values match the specification and should never need to be "
1696 "changed."
1697 msgstr ""
1698 "デフォルトの値で仕様にマッチしているので、 変更する必要は全くないはずである。"
1699
1700 #.  FIXME . Add a section about multicasting
1701 #. type: Plain text
1702 #: build/C/man7/ddp.7:149
1703 msgid "All ioctls described in B<socket>(7)  apply to DDP."
1704 msgstr "B<socket>(7)  に記述されているすべての ioctl が DDP にも適用される。"
1705
1706 #. type: SH
1707 #: build/C/man7/ddp.7:149 build/C/man3/gethostbyname.3:292
1708 #: build/C/man3/getnetent_r.3:129 build/C/man2/getpeername.2:73
1709 #: build/C/man3/getprotoent_r.3:119 build/C/man3/getservent_r.3:118
1710 #: build/C/man3/inet_net_pton.3:145 build/C/man3/inet_ntop.3:91
1711 #: build/C/man7/ip.7:1092 build/C/man7/ipv6.7:351 build/C/man7/packet.7:496
1712 #: build/C/man7/raw.7:144 build/C/man2/shutdown.2:74 build/C/man7/tcp.7:1226
1713 #: build/C/man7/udp.7:241 build/C/man7/udplite.7:121 build/C/man7/unix.7:405
1714 #, no-wrap
1715 msgid "ERRORS"
1716 msgstr "エラー"
1717
1718 #. type: TP
1719 #: build/C/man7/ddp.7:153 build/C/man7/ip.7:1096 build/C/man7/raw.7:145
1720 #, no-wrap
1721 msgid "B<EACCES>"
1722 msgstr "B<EACCES>"
1723
1724 #. type: Plain text
1725 #: build/C/man7/ddp.7:160
1726 msgid ""
1727 "The user tried to execute an operation without the necessary permissions.  "
1728 "These include sending to a broadcast address without having the broadcast "
1729 "flag set, and trying to bind to a reserved port without effective user ID 0 "
1730 "or B<CAP_NET_BIND_SERVICE>."
1731 msgstr ""
1732 "ユーザが行おうとした操作に必要な権限を持っていない。 broadcast フラグをセット"
1733 "せずにブロードキャストアドレスへ送信を行おうとした、 実効ユーザー ID が 0 で"
1734 "なく、 B<CAP_NET_BIND_SERVICE> 権限のないプロセスで特権ポートをバインドしよう"
1735 "とした、などが考えられる。"
1736
1737 #. type: TP
1738 #: build/C/man7/ddp.7:160 build/C/man7/ip.7:1112 build/C/man7/unix.7:406
1739 #, no-wrap
1740 msgid "B<EADDRINUSE>"
1741 msgstr "B<EADDRINUSE>"
1742
1743 #. type: Plain text
1744 #: build/C/man7/ddp.7:163 build/C/man7/ip.7:1115
1745 msgid "Tried to bind to an address already in use."
1746 msgstr "既に使用されているアドレスにバインドしようとした。"
1747
1748 #. type: TP
1749 #: build/C/man7/ddp.7:163 build/C/man7/ip.7:1115 build/C/man7/packet.7:497
1750 #, no-wrap
1751 msgid "B<EADDRNOTAVAIL>"
1752 msgstr "B<EADDRNOTAVAIL>"
1753
1754 #. type: Plain text
1755 #: build/C/man7/ddp.7:167 build/C/man7/ip.7:1119
1756 msgid ""
1757 "A nonexistent interface was requested or the requested source address was "
1758 "not local."
1759 msgstr ""
1760 "存在しないインターフェースが要求された。または 要求されたソースアドレスがロー"
1761 "カルでない。"
1762
1763 #. type: TP
1764 #: build/C/man7/ddp.7:167 build/C/man7/ip.7:1119
1765 #, no-wrap
1766 msgid "B<EAGAIN>"
1767 msgstr "B<EAGAIN>"
1768
1769 #. type: Plain text
1770 #: build/C/man7/ddp.7:170 build/C/man7/ip.7:1122
1771 msgid "Operation on a nonblocking socket would block."
1772 msgstr "非ブロッキングソケットに対してブロックする操作を行った。"
1773
1774 #. type: TP
1775 #: build/C/man7/ddp.7:170 build/C/man7/ip.7:1122
1776 #, no-wrap
1777 msgid "B<EALREADY>"
1778 msgstr "B<EALREADY>"
1779
1780 #. type: Plain text
1781 #: build/C/man7/ddp.7:173
1782 msgid "A connection operation on a nonblocking socket is already in progress."
1783 msgstr "非ブロッキングソケットに対する接続操作が既に実行中である。"
1784
1785 #. type: TP
1786 #: build/C/man7/ddp.7:173 build/C/man7/ip.7:1125
1787 #, no-wrap
1788 msgid "B<ECONNABORTED>"
1789 msgstr "B<ECONNABORTED>"
1790
1791 #. type: Plain text
1792 #: build/C/man7/ddp.7:177 build/C/man7/ip.7:1129
1793 msgid "A connection was closed during an B<accept>(2)."
1794 msgstr "B<accept>(2)  の途中で接続がクローズされた。"
1795
1796 #. type: TP
1797 #: build/C/man7/ddp.7:177 build/C/man7/ip.7:1129
1798 #, no-wrap
1799 msgid "B<EHOSTUNREACH>"
1800 msgstr "B<EHOSTUNREACH>"
1801
1802 #. type: Plain text
1803 #: build/C/man7/ddp.7:180
1804 msgid "No routing table entry matches the destination address."
1805 msgstr "行き先アドレスにマッチするエントリがルーティングテーブルにない。"
1806
1807 #. type: TP
1808 #: build/C/man7/ddp.7:180 build/C/man2/getpeername.2:85 build/C/man7/ip.7:1134
1809 #: build/C/man7/packet.7:503 build/C/man7/raw.7:152 build/C/man2/shutdown.2:79
1810 #: build/C/man7/unix.7:422
1811 #, no-wrap
1812 msgid "B<EINVAL>"
1813 msgstr "B<EINVAL>"
1814
1815 #. type: Plain text
1816 #: build/C/man7/ddp.7:183
1817 msgid "Invalid argument passed."
1818 msgstr "渡した引数が不正。"
1819
1820 #. type: TP
1821 #: build/C/man7/ddp.7:183 build/C/man7/ip.7:1140 build/C/man7/unix.7:431
1822 #, no-wrap
1823 msgid "B<EISCONN>"
1824 msgstr "B<EISCONN>"
1825
1826 #. type: Plain text
1827 #: build/C/man7/ddp.7:187 build/C/man7/ip.7:1144
1828 msgid "B<connect>(2)  was called on an already connected socket."
1829 msgstr "接続済みのソケットに対して B<connect>(2)  が呼ばれた。"
1830
1831 #. type: TP
1832 #: build/C/man7/ddp.7:187 build/C/man3/inet_net_pton.3:151
1833 #: build/C/man7/ip.7:1144 build/C/man7/packet.7:506 build/C/man7/raw.7:155
1834 #, no-wrap
1835 msgid "B<EMSGSIZE>"
1836 msgstr "B<EMSGSIZE>"
1837
1838 #. type: Plain text
1839 #: build/C/man7/ddp.7:190
1840 msgid "Datagram is bigger than the DDP MTU."
1841 msgstr "データグラムが DDP MTU より大きい。"
1842
1843 #. type: TP
1844 #: build/C/man7/ddp.7:190 build/C/man7/ipv6.7:352 build/C/man7/packet.7:515
1845 #, no-wrap
1846 msgid "B<ENODEV>"
1847 msgstr "B<ENODEV>"
1848
1849 #. type: Plain text
1850 #: build/C/man7/ddp.7:193
1851 msgid "Network device not available or not capable of sending IP."
1852 msgstr "ネットワークデバイスがない。あるいは IP を送ることができない。"
1853
1854 #. type: TP
1855 #: build/C/man7/ddp.7:193 build/C/man3/getnetent_r.3:130
1856 #: build/C/man3/getprotoent_r.3:120 build/C/man3/getservent_r.3:119
1857 #: build/C/man3/inet_net_pton.3:154 build/C/man7/ip.7:1152
1858 #: build/C/man7/packet.7:518 build/C/man7/unix.7:436
1859 #, no-wrap
1860 msgid "B<ENOENT>"
1861 msgstr "B<ENOENT>"
1862
1863 #. type: Plain text
1864 #: build/C/man7/ddp.7:197 build/C/man7/ip.7:1156
1865 msgid "B<SIOCGSTAMP> was called on a socket where no packet arrived."
1866 msgstr "パケットが到着していないソケットに対して B<SIOCGSTAMP> が呼ばれた。"
1867
1868 #. type: TP
1869 #: build/C/man7/ddp.7:197
1870 #, no-wrap
1871 msgid "B<ENOMEM> and B<ENOBUFS>"
1872 msgstr "B<ENOMEM> と B<ENOBUFS>"
1873
1874 #. type: Plain text
1875 #: build/C/man7/ddp.7:200
1876 msgid "Not enough memory available."
1877 msgstr "メモリが足りない。"
1878
1879 #. type: TP
1880 #: build/C/man7/ddp.7:200 build/C/man7/ip.7:1156
1881 #, no-wrap
1882 msgid "B<ENOPKG>"
1883 msgstr "B<ENOPKG>"
1884
1885 #. type: Plain text
1886 #: build/C/man7/ddp.7:203 build/C/man7/ip.7:1159
1887 msgid "A kernel subsystem was not configured."
1888 msgstr "カーネルサブシステムが設定されていない。"
1889
1890 #. type: TP
1891 #: build/C/man7/ddp.7:203 build/C/man7/ip.7:1159
1892 #, no-wrap
1893 msgid "B<ENOPROTOOPT> and B<EOPNOTSUPP>"
1894 msgstr "B<ENOPROTOOPT> と B<EOPNOTSUPP>"
1895
1896 #. type: Plain text
1897 #: build/C/man7/ddp.7:206 build/C/man7/ip.7:1162
1898 msgid "Invalid socket option passed."
1899 msgstr "無効なソケットオプションが渡された。"
1900
1901 #. type: TP
1902 #: build/C/man7/ddp.7:206 build/C/man2/getpeername.2:93 build/C/man7/ip.7:1162
1903 #: build/C/man7/packet.7:521 build/C/man2/shutdown.2:84
1904 #: build/C/man7/unix.7:444
1905 #, no-wrap
1906 msgid "B<ENOTCONN>"
1907 msgstr "B<ENOTCONN>"
1908
1909 #. type: Plain text
1910 #: build/C/man7/ddp.7:210 build/C/man7/ip.7:1166
1911 msgid ""
1912 "The operation is defined only on a connected socket, but the socket wasn't "
1913 "connected."
1914 msgstr ""
1915 "接続されていないソケットに対して、 接続状態でしか定義されていない操作を行おう"
1916 "とした。"
1917
1918 #. type: TP
1919 #: build/C/man7/ddp.7:210 build/C/man7/ip.7:1166 build/C/man7/packet.7:527
1920 #: build/C/man7/raw.7:166 build/C/man7/unix.7:451
1921 #, no-wrap
1922 msgid "B<EPERM>"
1923 msgstr "B<EPERM>"
1924
1925 #. type: Plain text
1926 #: build/C/man7/ddp.7:215
1927 msgid ""
1928 "User doesn't have permission to set high priority, make a configuration "
1929 "change, or send signals to the requested process or group."
1930 msgstr ""
1931 "高い優先度に設定したり、設定を変更したり、 指定したプロセスやグループにシグナ"
1932 "ルを送るのに必要な権限を ユーザが持っていない。"
1933
1934 #. type: TP
1935 #: build/C/man7/ddp.7:215 build/C/man7/ip.7:1170 build/C/man7/tcp.7:1233
1936 #: build/C/man7/unix.7:455
1937 #, no-wrap
1938 msgid "B<EPIPE>"
1939 msgstr "B<EPIPE>"
1940
1941 #. type: Plain text
1942 #: build/C/man7/ddp.7:218 build/C/man7/ip.7:1173
1943 msgid "The connection was unexpectedly closed or shut down by the other end."
1944 msgstr ""
1945 "接続が接続相手によって、予期しないやり方でクローズまたはシャットダウンされ"
1946 "た。"
1947
1948 #. type: TP
1949 #: build/C/man7/ddp.7:218 build/C/man7/ip.7:1173 build/C/man7/unix.7:477
1950 #, no-wrap
1951 msgid "B<ESOCKTNOSUPPORT>"
1952 msgstr "B<ESOCKTNOSUPPORT>"
1953
1954 #. type: Plain text
1955 #: build/C/man7/ddp.7:221
1956 msgid "The socket was unconfigured, or an unknown socket type was requested."
1957 msgstr "ソケットが設定されていない。または未知のソケットタイプが要求された。"
1958
1959 #. type: Plain text
1960 #: build/C/man7/ddp.7:226
1961 msgid ""
1962 "AppleTalk is supported by Linux 2.0 or higher.  The I</proc> interfaces "
1963 "exist since Linux 2.2."
1964 msgstr ""
1965 "AppleTalk は Linux 2.0 以降でサポートされている。 I</proc> インタフェースは "
1966 "Linux 2.2 以降に存在する。"
1967
1968 #. type: Plain text
1969 #: build/C/man7/ddp.7:232
1970 msgid ""
1971 "Be very careful with the B<SO_BROADCAST> option - it is not privileged in "
1972 "Linux.  It is easy to overload the network with careless sending to "
1973 "broadcast addresses."
1974 msgstr ""
1975 "B<SO_BROADCAST> オプションを用いる時には慎重の上にも慎重になってほしい。 "
1976 "Linux ではこれに特権を必要としない。 不注意にブロードキャストアドレスに送信を"
1977 "行うと、 ネットワークの状態が簡単に変更されてしまう。"
1978
1979 #. type: SS
1980 #: build/C/man7/ddp.7:232 build/C/man7/ip.7:1232 build/C/man7/packet.7:569
1981 #, no-wrap
1982 msgid "Compatibility"
1983 msgstr "移植性"
1984
1985 #. type: Plain text
1986 #: build/C/man7/ddp.7:239
1987 msgid ""
1988 "The basic AppleTalk socket interface is compatible with B<netatalk> on BSD-"
1989 "derived systems.  Many BSD systems fail to check B<SO_BROADCAST> when "
1990 "sending broadcast frames; this can lead to compatibility problems."
1991 msgstr ""
1992 "基本的な Appletalk ソケットインターフェースは BSD 由来のシステムにおける "
1993 "B<netatalk> と互換性がある。多くの BSD システムでは、 ブロードキャストフレー"
1994 "ムを送信しようとしたときの B<SO_BROADCAST> のチェックに失敗する。これは互換性"
1995 "の問題となるかもしれない。"
1996
1997 #. type: Plain text
1998 #: build/C/man7/ddp.7:244
1999 msgid ""
2000 "The raw socket mode is unique to Linux and exists to support the alternative "
2001 "CAP package and AppleTalk monitoring tools more easily."
2002 msgstr ""
2003 "raw ソケットモードは Linux 独特のもので、もう一方の実装である CAP パッケージ"
2004 "や、 Appletalk モニタツールをより簡単に実装できるようになる。"
2005
2006 #. type: Plain text
2007 #: build/C/man7/ddp.7:246 build/C/man7/ip.7:1247
2008 msgid "There are too many inconsistent error values."
2009 msgstr "エラーの値がまったく首尾一貫していない。"
2010
2011 #. type: Plain text
2012 #: build/C/man7/ddp.7:249
2013 msgid ""
2014 "The ioctls used to configure routing tables, devices, AARP tables and other "
2015 "devices are not yet described."
2016 msgstr ""
2017 "ルーティングテーブル・デバイス・ AARP テーブル・その他のデバイスを 設定するた"
2018 "めに用いられる ioctl がまだ記述されていない。"
2019
2020 #. type: Plain text
2021 #: build/C/man7/ddp.7:254
2022 msgid "B<recvmsg>(2), B<sendmsg>(2), B<capabilities>(7), B<socket>(7)"
2023 msgstr "B<recvmsg>(2), B<sendmsg>(2), B<capabilities>(7), B<socket>(7)"
2024
2025 #. type: TH
2026 #: build/C/man3/endian.3:28
2027 #, no-wrap
2028 msgid "ENDIAN"
2029 msgstr "ENDIAN"
2030
2031 #. type: TH
2032 #: build/C/man3/endian.3:28 build/C/man3/getnetent_r.3:26
2033 #: build/C/man3/getprotoent_r.3:26 build/C/man3/getservent_r.3:26
2034 #, no-wrap
2035 msgid "2010-09-10"
2036 msgstr "2010-09-10"
2037
2038 #. type: Plain text
2039 #: build/C/man3/endian.3:33
2040 msgid ""
2041 "htobe16, htole16, be16toh, le16toh, htobe32, htole32, be32toh, le32toh, "
2042 "htobe64, htole64, be64toh, le64toh - convert values between host and big-/"
2043 "little-endian byte order"
2044 msgstr ""
2045 "htobe16, htole16, be16toh, le16toh, htobe32, htole32, be32toh,\n"
2046 "le32toh, htobe64, htole64, be64toh, le64toh - ホストバイトオーダーと\n"
2047 "ビッグ/リトルエンディアンバイトオーダーの間で値の変換を行う"
2048
2049 #. type: Plain text
2050 #: build/C/man3/endian.3:37
2051 #, no-wrap
2052 msgid ""
2053 "B<#define _BSD_SOURCE>             /* See feature_test_macros(7) */\n"
2054 "B<#include E<lt>endian.hE<gt>>\n"
2055 msgstr ""
2056 "B<#define _BSD_SOURCE>             /* feature_test_macros(7) 参照 */\n"
2057 "B<#include E<lt>endian.hE<gt>>\n"
2058
2059 #. type: Plain text
2060 #: build/C/man3/endian.3:42
2061 #, no-wrap
2062 msgid ""
2063 "B<uint16_t htobe16(uint16_t >I<host_16bits>B<);>\n"
2064 "B<uint16_t htole16(uint16_t >I<host_16bits>B<);>\n"
2065 "B<uint16_t be16toh(uint16_t >I<big_endian_16bits>B<);>\n"
2066 "B<uint16_t le16toh(uint16_t >I<little_endian_16bits>B<);>\n"
2067 msgstr ""
2068 "B<uint16_t htobe16(uint16_t >I<host_16bits>B<);>\n"
2069 "B<uint16_t htole16(uint16_t >I<host_16bits>B<);>\n"
2070 "B<uint16_t be16toh(uint16_t >I<big_endian_16bits>B<);>\n"
2071 "B<uint16_t le16toh(uint16_t >I<little_endian_16bits>B<);>\n"
2072
2073 #. type: Plain text
2074 #: build/C/man3/endian.3:47
2075 #, no-wrap
2076 msgid ""
2077 "B<uint32_t htobe32(uint32_t >I<host_32bits>B<);>\n"
2078 "B<uint32_t htole32(uint32_t >I<host_32bits>B<);>\n"
2079 "B<uint32_t be32toh(uint32_t >I<big_endian_32bits>B<);>\n"
2080 "B<uint32_t le32toh(uint32_t >I<little_endian_32bits>B<);>\n"
2081 msgstr ""
2082 "B<uint32_t htobe32(uint32_t >I<host_32bits>B<);>\n"
2083 "B<uint32_t htole32(uint32_t >I<host_32bits>B<);>\n"
2084 "B<uint32_t be32toh(uint32_t >I<big_endian_32bits>B<);>\n"
2085 "B<uint32_t le32toh(uint32_t >I<little_endian_32bits>B<);>\n"
2086
2087 #. type: Plain text
2088 #: build/C/man3/endian.3:52
2089 #, no-wrap
2090 msgid ""
2091 "B<uint64_t htobe64(uint64_t >I<host_64bits>B<);>\n"
2092 "B<uint64_t htole64(uint64_t >I<host_64bits>B<);>\n"
2093 "B<uint64_t be64toh(uint64_t >I<big_endian_64bits>B<);>\n"
2094 "B<uint64_t le64toh(uint64_t >I<little_endian_64bits>B<);>\n"
2095 msgstr ""
2096 "B<uint64_t htobe64(uint64_t >I<host_64bits>B<);>\n"
2097 "B<uint64_t htole64(uint64_t >I<host_64bits>B<);>\n"
2098 "B<uint64_t be64toh(uint64_t >I<big_endian_64bits>B<);>\n"
2099 "B<uint64_t le64toh(uint64_t >I<little_endian_64bits>B<);>\n"
2100
2101 #. type: Plain text
2102 #: build/C/man3/endian.3:57
2103 msgid ""
2104 "These functions convert the byte encoding of integer values from the byte "
2105 "order that the current CPU (the \"host\") uses, to and from little-endian "
2106 "and big-endian byte order."
2107 msgstr ""
2108 "これらの関数は、整数値のバイトエンコーディングを、\n"
2109 "使用中の CPU (\"ホスト\") のバイトオーダーから\n"
2110 "リトルエンディアンやビッグエンディアンバイトオーダーへの変換や\n"
2111 "その逆の変換を行う。"
2112
2113 #. type: Plain text
2114 #: build/C/man3/endian.3:62
2115 msgid ""
2116 "The number, I<nn>, in the name of each function indicates the size of "
2117 "integer handled by the function, either 16, 32, or 64 bits."
2118 msgstr ""
2119 "各関数の名前に付いている数字 I<nn> は、その関数が扱う整数のサイズ\n"
2120 "(16, 32, 64 ビットのどれか) を示している。"
2121
2122 #. type: Plain text
2123 #: build/C/man3/endian.3:65
2124 msgid ""
2125 "The functions with names of the form \"htobeI<nn>\" convert from host byte "
2126 "order to big-endian order."
2127 msgstr ""
2128 "名前が \"htobeI<nn>\" という形の関数は、ホストバイトオーダーから\n"
2129 "ビッグエンディアンバイトオーダーへの変換を行う。"
2130
2131 #. type: Plain text
2132 #: build/C/man3/endian.3:68
2133 msgid ""
2134 "The functions with names of the form \"htoleI<nn>\" convert from host byte "
2135 "order to little-endian order."
2136 msgstr ""
2137 "名前が \"htoleI<nn>\" という形の関数は、ホストバイトオーダーから\n"
2138 "リトルエンディアンバイトオーダーへの変換を行う。"
2139
2140 #. type: Plain text
2141 #: build/C/man3/endian.3:71
2142 msgid ""
2143 "The functions with names of the form \"beI<nn>toh\" convert from big-endian "
2144 "order to host byte order."
2145 msgstr ""
2146 "名前が \"beI<nn>toh\" という形の関数は、ビッグエンディアンバイトオーダー\n"
2147 "からホストバイトオーダーへの変換を行う。"
2148
2149 #. type: Plain text
2150 #: build/C/man3/endian.3:74
2151 msgid ""
2152 "The functions with names of the form \"leI<nn>toh\" convert from little-"
2153 "endian order to host byte order."
2154 msgstr ""
2155 "名前が \"leI<nn>toh\" という形の関数は、リトルエンディアンバイトオーダー\n"
2156 "からホストバイトオーダーへの変換を行う。"
2157
2158 #. type: Plain text
2159 #: build/C/man3/endian.3:76
2160 msgid "These functions were added to glibc in version 2.9."
2161 msgstr "これらの関数は glibc バージョン 2.9 で追加された。"
2162
2163 #. type: Plain text
2164 #: build/C/man3/endian.3:91
2165 msgid ""
2166 "These functions are nonstandard.  Similar functions are present on the BSDs, "
2167 "where the required header file is I<E<lt>sys/endian.hE<gt>> instead of "
2168 "I<E<lt>endian.hE<gt>>.  Unfortunately, NetBSD, FreeBSD, and glibc haven't "
2169 "followed the original OpenBSD naming convention for these functions, whereby "
2170 "the I<nn> component always appears at the end of the function name (thus, "
2171 "for example, in NetBSD, FreeBSD, and glibc, the equivalent of OpenBSDs "
2172 "\"betoh32\" is \"be32toh\")."
2173 msgstr ""
2174 "これらの関数は非標準である。\n"
2175 "BSD には同様の関数が存在するが、 BSD では\n"
2176 "必要なヘッダファイルは I<E<lt>endian.hE<gt>> ではなく\n"
2177 "I<E<lt>sys/endian.hE<gt>> である。\n"
2178 "不幸なことに、 NetBSD, FreeBSD, glibc では、\n"
2179 "これらの関数の元々の OpenBSD での、 I<nn> は常に関数名の末尾に置く\n"
2180 "という名前付けルールが踏襲されていない\n"
2181 "(そのため、例を挙げると、 OpenBSD の \"betoh32\" と等価な関数は\n"
2182 "NetBSD, FreeBSD, glibc では \"be32toh\" となる)。"
2183
2184 #. type: Plain text
2185 #: build/C/man3/endian.3:99
2186 msgid ""
2187 "These functions are similar to the older B<byteorder>(3)  family of "
2188 "functions.  For example, B<be32toh>()  is identical to B<ntohl>()."
2189 msgstr ""
2190 "これらの関数は、前からある B<byteorder>(3) 系の関数と同じである。\n"
2191 "例えば、 B<be32toh>() は B<ntohl>() と等価である。"
2192
2193 #. type: Plain text
2194 #: build/C/man3/endian.3:107
2195 msgid ""
2196 "The advantage of the B<byteorder>(3)  functions is that they are standard "
2197 "functions available on all UNIX systems.  On the other hand, the fact that "
2198 "they were designed for use in the context of TCP/IP means that they lack the "
2199 "64-bit and little-endian variants described in this page."
2200 msgstr ""
2201 "B<byteorder>(3) 系の関数のメリットは、これらが\n"
2202 "全ての UNIX システムで利用可能な標準関数である点である。\n"
2203 "一方で、これらの関数は TCP/IP 処理で使用されることを想定して\n"
2204 "設計されたため、このページで説明している 64 ビット版や\n"
2205 "リトルエンディアン版などが存在しない。"
2206
2207 #. type: Plain text
2208 #: build/C/man3/endian.3:114
2209 msgid ""
2210 "The program below display the results of converting an integer from host "
2211 "byte order to both little-endian and big-endian byte order.  Since host byte "
2212 "order is either little-endian or big-endian, only one of these conversions "
2213 "will have an effect.  When we run this program on a little-endian system "
2214 "such as x86-32, we see the following:"
2215 msgstr ""
2216 "以下のプログラムは、整数をホストバイトオーダーからリトルエンディアンと\n"
2217 "ビットエンディアンの両方のバイトオーダーに変換し、その結果を表示する。\n"
2218 "ホストバイトオーダーはリトルエンディアンかビットエンディアンのいずれか\n"
2219 "なので、変換に意味があるのはどちらか一方だけである。\n"
2220 "このプログラムを x86-32 などのリトルエンディアンのシステムで実行した\n"
2221 "場合の実行結果は下記のようになる。"
2222
2223 #. type: Plain text
2224 #: build/C/man3/endian.3:121
2225 #, no-wrap
2226 msgid ""
2227 "$ B<./a.out>\n"
2228 "x.u32 = 0x44332211\n"
2229 "htole32(x.u32) = 0x44332211\n"
2230 "htobe32(x.u32) = 0x11223344\n"
2231 msgstr ""
2232 "$ B<./a.out>\n"
2233 "x.u32 = 0x44332211\n"
2234 "htole32(x.u32) = 0x44332211\n"
2235 "htobe32(x.u32) = 0x11223344\n"
2236
2237 #. type: SS
2238 #: build/C/man3/endian.3:123 build/C/man3/getprotoent_r.3:162
2239 #: build/C/man3/getservent_r.3:160 build/C/man3/inet.3:278
2240 #: build/C/man3/inet_net_pton.3:331 build/C/man3/inet_pton.3:173
2241 #, no-wrap
2242 msgid "Program source"
2243 msgstr "プログラムのソース"
2244
2245 #. type: Plain text
2246 #: build/C/man3/endian.3:130
2247 #, no-wrap
2248 msgid ""
2249 "#include E<lt>endian.hE<gt>\n"
2250 "#include E<lt>stdint.hE<gt>\n"
2251 "#include E<lt>stdio.hE<gt>\n"
2252 "#include E<lt>stdlib.hE<gt>\n"
2253 msgstr ""
2254 "#include E<lt>endian.hE<gt>\n"
2255 "#include E<lt>stdint.hE<gt>\n"
2256 "#include E<lt>stdio.hE<gt>\n"
2257 "#include E<lt>stdlib.hE<gt>\n"
2258
2259 #. type: Plain text
2260 #: build/C/man3/endian.3:138
2261 #, no-wrap
2262 msgid ""
2263 "int\n"
2264 "main(int argc, char *argv[])\n"
2265 "{\n"
2266 "    union {\n"
2267 "        uint32_t u32;\n"
2268 "        uint8_t arr[4];\n"
2269 "    } x;\n"
2270 msgstr ""
2271 "int\n"
2272 "main(int argc, char *argv[])\n"
2273 "{\n"
2274 "    union {\n"
2275 "        uint32_t u32;\n"
2276 "        uint8_t arr[4];\n"
2277 "    } x;\n"
2278
2279 #. type: Plain text
2280 #: build/C/man3/endian.3:143
2281 #, no-wrap
2282 msgid ""
2283 "    x.arr[0] = 0x11;\t/* Lowest-address byte */\n"
2284 "    x.arr[1] = 0x22;\n"
2285 "    x.arr[2] = 0x33;\n"
2286 "    x.arr[3] = 0x44;\t/* Highest-address byte */\n"
2287 msgstr ""
2288 "    x.arr[0] = 0x11;\t/* Lowest-address byte */\n"
2289 "    x.arr[1] = 0x22;\n"
2290 "    x.arr[2] = 0x33;\n"
2291 "    x.arr[3] = 0x44;\t/* Highest-address byte */\n"
2292
2293 #. type: Plain text
2294 #: build/C/man3/endian.3:147
2295 #, no-wrap
2296 msgid ""
2297 "    printf(\"x.u32 = 0x%x\\en\", x.u32);\n"
2298 "    printf(\"htole32(x.u32) = 0x%x\\en\", htole32(x.u32));\n"
2299 "    printf(\"htobe32(x.u32) = 0x%x\\en\", htobe32(x.u32));\n"
2300 msgstr ""
2301 "    printf(\"x.u32 = 0x%x\\en\", x.u32);\n"
2302 "    printf(\"htole32(x.u32) = 0x%x\\en\", htole32(x.u32));\n"
2303 "    printf(\"htobe32(x.u32) = 0x%x\\en\", htobe32(x.u32));\n"
2304
2305 #. type: Plain text
2306 #: build/C/man3/endian.3:150 build/C/man3/getaddrinfo.3:827
2307 #: build/C/man3/getprotoent_r.3:236 build/C/man3/getservent_r.3:240
2308 #: build/C/man3/inet_net_pton.3:389 build/C/man3/inet_pton.3:214
2309 #, no-wrap
2310 msgid ""
2311 "    exit(EXIT_SUCCESS);\n"
2312 "}\n"
2313 msgstr ""
2314 "    exit(EXIT_SUCCESS);\n"
2315 "}\n"
2316
2317 #. type: Plain text
2318 #: build/C/man3/endian.3:153
2319 msgid "B<byteorder>(3)"
2320 msgstr "B<byteorder>(3)"
2321
2322 #. type: TH
2323 #: build/C/man3/ether_aton.3:31
2324 #, no-wrap
2325 msgid "ETHER_ATON"
2326 msgstr "ETHER_ATON"
2327
2328 #. type: TH
2329 #: build/C/man3/ether_aton.3:31 build/C/man7/udplite.7:27
2330 #, no-wrap
2331 msgid "2014-07-08"
2332 msgstr "2014-07-08"
2333
2334 #. type: Plain text
2335 #: build/C/man3/ether_aton.3:35
2336 msgid ""
2337 "ether_aton, ether_ntoa, ether_ntohost, ether_hostton, ether_line, "
2338 "ether_ntoa_r, ether_aton_r - Ethernet address manipulation routines"
2339 msgstr ""
2340 "ether_aton, ether_ntoa, ether_ntohost, ether_hostton, ether_line, "
2341 "ether_ntoa_r, ether_aton_r - Ethernet アドレスの操作用関数"
2342
2343 #. type: Plain text
2344 #: build/C/man3/ether_aton.3:38
2345 #, no-wrap
2346 msgid "B<#include E<lt>netinet/ether.hE<gt>>\n"
2347 msgstr "B<#include E<lt>netinet/ether.hE<gt>>\n"
2348
2349 #. type: Plain text
2350 #: build/C/man3/ether_aton.3:40
2351 #, no-wrap
2352 msgid "B<char *ether_ntoa(const struct ether_addr *>I<addr>B<);>\n"
2353 msgstr "B<char *ether_ntoa(const struct ether_addr *>I<addr>B<);>\n"
2354
2355 #. type: Plain text
2356 #: build/C/man3/ether_aton.3:42
2357 #, no-wrap
2358 msgid "B<struct ether_addr *ether_aton(const char *>I<asc>B<);>\n"
2359 msgstr "B<struct ether_addr *ether_aton(const char *>I<asc>B<);>\n"
2360
2361 #. type: Plain text
2362 #: build/C/man3/ether_aton.3:44
2363 #, no-wrap
2364 msgid "B<int ether_ntohost(char *>I<hostname>B<, const struct ether_addr *>I<addr>B<);>\n"
2365 msgstr "B<int ether_ntohost(char *>I<hostname>B<, const struct ether_addr *>I<addr>B<);>\n"
2366
2367 #. type: Plain text
2368 #: build/C/man3/ether_aton.3:46
2369 #, no-wrap
2370 msgid "B<int ether_hostton(const char *>I<hostname>B<, struct ether_addr *>I<addr>B<);>\n"
2371 msgstr "B<int ether_hostton(const char *>I<hostname>B<, struct ether_addr *>I<addr>B<);>\n"
2372
2373 #. type: Plain text
2374 #: build/C/man3/ether_aton.3:49
2375 #, no-wrap
2376 msgid ""
2377 "B<int ether_line(const char *>I<line>B<, struct ether_addr *>I<addr>B<,>\n"
2378 "B<               char *>I<hostname>B<);>\n"
2379 msgstr ""
2380 "B<int ether_line(const char *>I<line>B<, struct ether_addr *>I<addr>B<,>\n"
2381 "B<               char *>I<hostname>B<);>\n"
2382
2383 #. type: Plain text
2384 #: build/C/man3/ether_aton.3:51 build/C/man3/gethostbyname.3:70
2385 #, no-wrap
2386 msgid "/* GNU extensions */\n"
2387 msgstr "/* GNU 拡張 */\n"
2388
2389 #. type: Plain text
2390 #: build/C/man3/ether_aton.3:53
2391 #, no-wrap
2392 msgid "B<char *ether_ntoa_r(const struct ether_addr *>I<addr>B<, char *>I<buf>B<);>\n"
2393 msgstr "B<char *ether_ntoa_r(const struct ether_addr *>I<addr>B<, char *>I<buf>B<);>\n"
2394
2395 #. type: Plain text
2396 #: build/C/man3/ether_aton.3:56
2397 #, no-wrap
2398 msgid ""
2399 "B<struct ether_addr *ether_aton_r(const char *>I<asc>B<,>\n"
2400 "B<                                struct ether_addr *>I<addr>B<);>\n"
2401 msgstr ""
2402 "B<struct ether_addr *ether_aton_r(const char *>I<asc>B<,>\n"
2403 "B<                                struct ether_addr *>I<addr>B<);>\n"
2404
2405 #. type: Plain text
2406 #: build/C/man3/ether_aton.3:67
2407 msgid ""
2408 "B<ether_aton>()  converts the 48-bit Ethernet host address I<asc> from the "
2409 "standard hex-digits-and-colons notation into binary data in network byte "
2410 "order and returns a pointer to it in a statically allocated buffer, which "
2411 "subsequent calls will overwrite.  B<ether_aton>()  returns NULL if the "
2412 "address is invalid."
2413 msgstr ""
2414 "関数 B<ether_aton>()  は、標準的な 16進数とコロンの形式で書かれた 48ビットの "
2415 "Ethernet ホストアドレス I<asc> を、ネットワークでのバイト順 (byte order)  の"
2416 "バイナリデータに変換し、静的に割り当てられたバッファに格納されたデータ へのポ"
2417 "インタを返す。このバッファは、これ以降の関数呼び出しで上書きされる。 アドレス"
2418 "が不正な場合、 B<ether_aton>()  は NULL を返す。"
2419
2420 #. type: Plain text
2421 #: build/C/man3/ether_aton.3:76
2422 msgid ""
2423 "The B<ether_ntoa>()  function converts the Ethernet host address I<addr> "
2424 "given in network byte order to a string in standard hex-digits-and-colons "
2425 "notation, omitting leading zeros.  The string is returned in a statically "
2426 "allocated buffer, which subsequent calls will overwrite."
2427 msgstr ""
2428 "関数 B<ether_ntoa>()  は、ネットワークのバイト順で表された Ethernet ホストア"
2429 "ドレス I<addr> を、標準的な 16進数とコロンの形式の文字列に変換する。 但し、先"
2430 "頭の 0 は省略される。変換後の文字列は静的に割り当てられたバッファ に格納され"
2431 "て返される。このバッファは、これ以降の関数呼び出しで上書きされる。"
2432
2433 #. type: Plain text
2434 #: build/C/man3/ether_aton.3:83
2435 msgid ""
2436 "The B<ether_ntohost>()  function maps an Ethernet address to the "
2437 "corresponding hostname in I</etc/ethers> and returns nonzero if it cannot be "
2438 "found."
2439 msgstr ""
2440 "関数 B<ether_ntohost>()  は、Ethernet アドレスに対応するホスト名を I</etc/"
2441 "ethers> を検索して割り当てる。対応するホスト名が見つからなかった場合は、 非 "
2442 "0 を返す。"
2443
2444 #. type: Plain text
2445 #: build/C/man3/ether_aton.3:90
2446 msgid ""
2447 "The B<ether_hostton>()  function maps a hostname to the corresponding "
2448 "Ethernet address in I</etc/ethers> and returns nonzero if it cannot be found."
2449 msgstr ""
2450 "関数 B<ether_hostton>()  は、ホスト名に対応する Ethernet アドレスを I</etc/"
2451 "ethers> を検索して割り当てる。対応するホスト名が見つからなかった場合は、 非 "
2452 "0 を返す。"
2453
2454 #. type: Plain text
2455 #: build/C/man3/ether_aton.3:102
2456 msgid ""
2457 "The B<ether_line>()  function parses a line in I</etc/ethers> format "
2458 "(ethernet address followed by whitespace followed by hostname; \\(aq#\\(aq "
2459 "introduces a comment) and returns an address and hostname pair, or nonzero "
2460 "if it cannot be parsed.  The buffer pointed to by I<hostname> must be "
2461 "sufficiently long, for example, have the same length as I<line>."
2462 msgstr ""
2463 "関数 B<ether_line>()  は、 I</etc/ethers> 形式になった行を解析し、 アドレスと"
2464 "ホスト名の組を返す (I</etc/ethers> 形式は、Ethernet アドレス、ホスト名が空白"
2465 "文字 (whitespace)  で区切られた書式で、\\(aq#\\(aq 以降はコメントとみなされ"
2466 "る)。 解析できなかった場合は、非 0 を返す。 I<hostname> で指定されたバッファ"
2467 "は十分な長さが必要である。つまり、 I<line> と同じ長さでなければならない。"
2468
2469 #. type: Plain text
2470 #: build/C/man3/ether_aton.3:113
2471 msgid ""
2472 "The functions B<ether_ntoa_r>()  and B<ether_aton_r>()  are reentrant thread-"
2473 "safe versions of B<ether_ntoa>()  and B<ether_aton>()  respectively, and do "
2474 "not use static buffers."
2475 msgstr ""
2476 "関数 B<ether_ntoa_r>()  と B<ether_aton_r>()  は、 それぞれ B<ether_ntoa>()  "
2477 "と B<ether_aton>()  の リエントラントでスレッドセーフなバージョンであり、 静"
2478 "的なバッファを使用しない。"
2479
2480 #. type: Plain text
2481 #: build/C/man3/ether_aton.3:119
2482 msgid ""
2483 "The structure I<ether_addr> is defined in I<E<lt>net/ethernet.hE<gt>> as:"
2484 msgstr ""
2485 "I<ether_addr> 構造体は I<E<lt>net/ethernet.hE<gt>> で次のように定義されてい"
2486 "る:"
2487
2488 #. type: Plain text
2489 #: build/C/man3/ether_aton.3:125
2490 #, no-wrap
2491 msgid ""
2492 "struct ether_addr {\n"
2493 "    uint8_t ether_addr_octet[6];\n"
2494 "}\n"
2495 msgstr ""
2496 "struct ether_addr {\n"
2497 "    uint8_t ether_addr_octet[6];\n"
2498 "}\n"
2499
2500 #. type: Plain text
2501 #: build/C/man3/ether_aton.3:130
2502 msgid ""
2503 "For an explanation of the terms used in this section, see B<attributes>(7)."
2504 msgstr "この節で使用されている用語の説明は B<attributes>(7) を参照のこと。"
2505
2506 #. type: tbl table
2507 #: build/C/man3/ether_aton.3:135
2508 #, no-wrap
2509 msgid "Interface\tAttribute\tValue\n"
2510 msgstr "Interface\tAttribute\tValue\n"
2511
2512 #. type: tbl table
2513 #: build/C/man3/ether_aton.3:136 build/C/man3/ether_aton.3:140
2514 #, no-wrap
2515 msgid "T{\n"
2516 msgstr "T{\n"
2517
2518 #. type: tbl table
2519 #: build/C/man3/ether_aton.3:137
2520 #, no-wrap
2521 msgid "B<ether_aton>(),\n"
2522 msgstr "B<ether_aton>(),\n"
2523
2524 #. type: tbl table
2525 #: build/C/man3/ether_aton.3:138
2526 #, no-wrap
2527 msgid "B<ether_ntoa>()\n"
2528 msgstr "B<ether_ntoa>()\n"
2529
2530 #. type: tbl table
2531 #: build/C/man3/ether_aton.3:139
2532 #, no-wrap
2533 msgid "T}\tThread safety\tMT-Unsafe\n"
2534 msgstr "T}\tThread safety\tMT-Unsafe\n"
2535
2536 #. type: tbl table
2537 #: build/C/man3/ether_aton.3:141
2538 #, no-wrap
2539 msgid "B<ether_ntohost>(),\n"
2540 msgstr "B<ether_ntohost>(),\n"
2541
2542 #. type: tbl table
2543 #: build/C/man3/ether_aton.3:142
2544 #, no-wrap
2545 msgid "B<ether_hostton>(),\n"
2546 msgstr "B<ether_hostton>(),\n"
2547
2548 #. type: tbl table
2549 #: build/C/man3/ether_aton.3:143
2550 #, no-wrap
2551 msgid "B<ether_line>(),\n"
2552 msgstr "B<ether_line>(),\n"
2553
2554 #. type: tbl table
2555 #: build/C/man3/ether_aton.3:144
2556 #, no-wrap
2557 msgid "B<ether_ntoa_r>(),\n"
2558 msgstr "B<ether_ntoa_r>(),\n"
2559
2560 #. type: tbl table
2561 #: build/C/man3/ether_aton.3:145
2562 #, no-wrap
2563 msgid "B<ether_aton_r>()\n"
2564 msgstr "B<ether_aton_r>()\n"
2565
2566 #. type: tbl table
2567 #: build/C/man3/ether_aton.3:146
2568 #, no-wrap
2569 msgid "T}\tThread safety\tMT-Safe\n"
2570 msgstr "T}\tThread safety\tMT-Safe\n"
2571
2572 #. type: Plain text
2573 #: build/C/man3/ether_aton.3:151
2574 msgid "4.3BSD, SunOS."
2575 msgstr "4.3BSD, SunOS."
2576
2577 #.  The fix was presumably commit c0a0f9a32c8baa6ab93d00eb42d92c02e9e146d7
2578 #.  which was in glibc 2.3
2579 #. type: Plain text
2580 #: build/C/man3/ether_aton.3:157
2581 msgid ""
2582 "In glibc 2.2.5 and earlier, the implementation of B<ether_line>()  is broken."
2583 msgstr "glibc 2.2.5 以前では、 B<ether_line>()  の実装はおかしい。"
2584
2585 #. type: Plain text
2586 #: build/C/man3/ether_aton.3:159
2587 msgid "B<ethers>(5)"
2588 msgstr "B<ethers>(5)"
2589
2590 #. type: TH
2591 #: build/C/man5/gai.conf.5:19
2592 #, no-wrap
2593 msgid "GAI.CONF"
2594 msgstr "GAI.CONF"
2595
2596 #. type: TH
2597 #: build/C/man5/gai.conf.5:19 build/C/man5/nss.5:19
2598 #, no-wrap
2599 msgid "2013-02-13"
2600 msgstr "2013-02-13"
2601
2602 #. type: Plain text
2603 #: build/C/man5/gai.conf.5:22
2604 msgid "gai.conf - getaddrinfo(3) configuration file"
2605 msgstr "gai.conf - getaddrinfo(3) 設定ファイル"
2606
2607 #. type: Plain text
2608 #: build/C/man5/gai.conf.5:36
2609 msgid ""
2610 "A call to B<getaddrinfo>(3)  might return multiple answers.  According to RFC"
2611 "\\ 3484 these answers must be sorted so that the answer with the highest "
2612 "success rate is first in the list.  The RFC provides an algorithm for the "
2613 "sorting.  The static rules are not always adequate, though.  For this "
2614 "reason, the RFC also requires that system administrators should have the "
2615 "possibility to dynamically change the sorting.  For the glibc "
2616 "implementation, this can be achieved with the I</etc/gai.conf> file."
2617 msgstr ""
2618 "B<getaddrinfo>(3) の呼び出しでは、複数の答えが返る場合がある。 RFC\\ 3484 に"
2619 "よれば、 これらの答えは、 最も成功の可能性が高い答えがリストの先頭になるよう"
2620 "な順番に並び替えなければならない。 RFC には、 並び替えのアルゴリズムが書かれ"
2621 "ている。 しかしながら、 静的なルールが常に適切という訳ではない。 この理由か"
2622 "ら、 RFC では、 並び替え方法をシステム管理者が動的に変更できるようにすること"
2623 "も要求している。 glibc の実装では、 I</etc/gai.conf> ファイルでこれが実現でき"
2624 "るようになっている。"
2625
2626 #. type: Plain text
2627 #: build/C/man5/gai.conf.5:40
2628 msgid ""
2629 "Each line in the configuration file consists of a keyword and its "
2630 "parameters.  White spaces in any place are ignored.  Lines starting with "
2631 "\\(aq#\\(aq are comments and are ignored."
2632 msgstr ""
2633 "設定ファイルの各行は、キーワードとそのパラメータで構成される。 ホワイトスペー"
2634 "スはどこにあっても全て無視される。 \\(aq#\\(aq で始まる行はコメントで、 無視"
2635 "される。"
2636
2637 #. type: Plain text
2638 #: build/C/man5/gai.conf.5:42
2639 msgid "The keywords currently recognized are:"
2640 msgstr "現在のところ、認識されるキーワードは以下の通りである。"
2641
2642 #. type: TP
2643 #: build/C/man5/gai.conf.5:42
2644 #, no-wrap
2645 msgid "B<label> I<netmask> I<precedence>"
2646 msgstr "B<label> I<netmask> I<precedence>"
2647
2648 #. type: Plain text
2649 #: build/C/man5/gai.conf.5:51
2650 msgid ""
2651 "The value is added to the label table used in the RFC\\ 3484 sorting.  If "
2652 "any B<label> definition is present in the configuration file is present, the "
2653 "default table is not used.  All the label definitions of the default table "
2654 "which are to be maintained have to be duplicated.  Following the keyword, "
2655 "the line has to contain a network mask and a label value."
2656 msgstr ""
2657 "指定した値は RFC\\ 3484 の並び替えで使用されるラベルテーブルに追加される。 設"
2658 "定ファイルに B<label> 定義が一つでもあれば、デフォルトテーブルは使用されな"
2659 "い。 デフォルトテーブルのすべてのラベル定義はきちんと管理されていれば、 重複"
2660 "が発生するはずだからである。 ラベル行では、 キーワードの後に、 ネットワークマ"
2661 "スクとラベル値が含まれていなければならない。"
2662
2663 #. type: TP
2664 #: build/C/man5/gai.conf.5:51
2665 #, no-wrap
2666 msgid "B<precedence> I<netmask> I<precedence>"
2667 msgstr "B<precedence> I<netmask> I<precedence>"
2668
2669 #. type: Plain text
2670 #: build/C/man5/gai.conf.5:58
2671 msgid ""
2672 "This keyword is similar to B<label>, but instead the value is added to the "
2673 "precedence table as specified in RFC\\ 3484.  Once again, the presence of a "
2674 "single B<precedence> line in the configuration file causes the default table "
2675 "to not be used."
2676 msgstr ""
2677 "このキーワードは B<label> に似ているが、 指定された値を RFC\\ 3484 で規定され"
2678 "た優先度テーブルに追加する点が異なる。 繰り返しになるが、 設定ファイルに "
2679 "B<precedence> が一つでもあれば、デフォルトテーブルは使用されない。"
2680
2681 #. type: TP
2682 #: build/C/man5/gai.conf.5:58
2683 #, no-wrap
2684 msgid "B<reload> E<lt>B<yes>|B<no>E<gt>"
2685 msgstr "B<reload> E<lt>B<yes>|B<no>E<gt>"
2686
2687 #. type: Plain text
2688 #: build/C/man5/gai.conf.5:67
2689 msgid ""
2690 "This keyword controls whether a process checks whether the configuration "
2691 "file has been changed since the last time it was read.  If the value is "
2692 "\"B<yes>\", the file is reread.  This might cause problems in multithreaded "
2693 "applications and is generally a bad idea.  The default is \"B<no>\"."
2694 msgstr ""
2695 "このキーワードは、 設定ファイルが前回の読み出し以降に変更されているかをプロセ"
2696 "スが確認するかを制御する。 値が \"B<yes>\" であれば、 ファイルが再読み込みさ"
2697 "れる。 再読み込みはマルチスレッドアプリケーションで問題を起こす可能性があ"
2698 "り、 一般にはよい考えとは言えない。 デフォルトは \"B<no>\" である。"
2699
2700 #. type: TP
2701 #: build/C/man5/gai.conf.5:67
2702 #, no-wrap
2703 msgid "B<scopev4> I<mask> I<value>"
2704 msgstr "B<scopev4> I<mask> I<value>"
2705
2706 #. type: Plain text
2707 #: build/C/man5/gai.conf.5:72
2708 msgid ""
2709 "Add another rule to the RFC\\ 3484 scope table for IPv4 address.  By "
2710 "default, the scope IDs described in section 3.2 in RFC\\ 3438 are used.  "
2711 "Changing these defaults should hardly ever be necessary."
2712 msgstr ""
2713 "IPv4 アドレス用の RFC\\ 3484 スコープテーブルに別のルールを追加する。 デフォ"
2714 "ルトでは、 RFC\\ 3438 のセクション 3.2 で説明されているスコープ ID が使用され"
2715 "る。 これらのデフォルト値の変更が必要になることはまずないだろう。"
2716
2717 #. type: SH
2718 #: build/C/man5/gai.conf.5:72 build/C/man3/getaddrinfo.3:593
2719 #: build/C/man3/gethostbyname.3:307 build/C/man3/getnameinfo.3:197
2720 #: build/C/man3/getnetent.3:141 build/C/man3/getprotoent.3:134
2721 #: build/C/man3/getservent.3:153 build/C/man5/host.conf.5:180
2722 #: build/C/man5/hosts.5:86 build/C/man5/hosts.equiv.5:69
2723 #: build/C/man5/networks.5:70 build/C/man5/nss.5:98
2724 #: build/C/man5/nsswitch.conf.5:298 build/C/man5/protocols.5:77
2725 #: build/C/man5/resolv.conf.5:298 build/C/man3/resolver.3:267
2726 #: build/C/man5/services.5:185 build/C/man3/setnetgrent.3:88
2727 #: build/C/man7/udplite.7:126
2728 #, no-wrap
2729 msgid "FILES"
2730 msgstr "ファイル"
2731
2732 #. type: Plain text
2733 #: build/C/man5/gai.conf.5:74 build/C/man3/getaddrinfo.3:595
2734 msgid "I</etc/gai.conf>"
2735 msgstr "I</etc/gai.conf>"
2736
2737 #. type: Plain text
2738 #: build/C/man5/gai.conf.5:77
2739 msgid ""
2740 "The default table according to RFC\\ 3484 would be specified with the "
2741 "following configuration file:"
2742 msgstr ""
2743 "RFC\\ 3484 で規定されているデフォルトテーブルは、 以下の設定ファイルを指定す"
2744 "るのと同じである。"
2745
2746 #. type: Plain text
2747 #: build/C/man5/gai.conf.5:89
2748 #, no-wrap
2749 msgid ""
2750 "label  ::1/128       0\n"
2751 "label  ::/0          1\n"
2752 "label  2002::/16     2\n"
2753 "label ::/96          3\n"
2754 "label ::ffff:0:0/96  4\n"
2755 "precedence  ::1/128       50\n"
2756 "precedence  ::/0          40\n"
2757 "precedence  2002::/16     30\n"
2758 "precedence ::/96          20\n"
2759 "precedence ::ffff:0:0/96  10\n"
2760 msgstr ""
2761 "label  ::1/128       0\n"
2762 "label  ::/0          1\n"
2763 "label  2002::/16     2\n"
2764 "label ::/96          3\n"
2765 "label ::ffff:0:0/96  4\n"
2766 "precedence  ::1/128       50\n"
2767 "precedence  ::/0          40\n"
2768 "precedence  2002::/16     30\n"
2769 "precedence ::/96          20\n"
2770 "precedence ::ffff:0:0/96  10\n"
2771
2772 #. type: Plain text
2773 #: build/C/man5/gai.conf.5:96
2774 msgid "B<getaddrinfo>(3), RFC\\ 3484"
2775 msgstr "B<getaddrinfo>(3), RFC\\ 3484"
2776
2777 #. type: TH
2778 #: build/C/man3/getaddrinfo.3:44
2779 #, no-wrap
2780 msgid "GETADDRINFO"
2781 msgstr "GETADDRINFO"
2782
2783 #. type: TH
2784 #: build/C/man3/getaddrinfo.3:44
2785 #, no-wrap
2786 msgid "2014-04-06"
2787 msgstr "2014-04-06"
2788
2789 #. type: Plain text
2790 #: build/C/man3/getaddrinfo.3:48
2791 msgid ""
2792 "getaddrinfo, freeaddrinfo, gai_strerror - network address and service "
2793 "translation"
2794 msgstr ""
2795 "getaddrinfo, freeaddrinfo, gai_strerror - ネットワークのアドレスとサービスを"
2796 "変換する"
2797
2798 #. type: Plain text
2799 #: build/C/man3/getaddrinfo.3:53 build/C/man3/getipnodebyname.3:35
2800 #, no-wrap
2801 msgid ""
2802 "B<#include E<lt>sys/types.hE<gt>>\n"
2803 "B<#include E<lt>sys/socket.hE<gt>>\n"
2804 "B<#include E<lt>netdb.hE<gt>>\n"
2805 msgstr ""
2806 "B<#include E<lt>sys/types.hE<gt>>\n"
2807 "B<#include E<lt>sys/socket.hE<gt>>\n"
2808 "B<#include E<lt>netdb.hE<gt>>\n"
2809
2810 #. type: Plain text
2811 #: build/C/man3/getaddrinfo.3:57
2812 #, no-wrap
2813 msgid ""
2814 "B<int getaddrinfo(const char *>I<node>B<, const char *>I<service>B<,>\n"
2815 "B<                const struct addrinfo *>I<hints>B<,>\n"
2816 "B<                struct addrinfo **>I<res>B<);>\n"
2817 msgstr ""
2818 "B<int getaddrinfo(const char *>I<node>B<, const char *>I<service>B<,>\n"
2819 "B<                const struct addrinfo *>I<hints>B<,>\n"
2820 "B<                struct addrinfo **>I<res>B<);>\n"
2821
2822 #. type: Plain text
2823 #: build/C/man3/getaddrinfo.3:59
2824 #, no-wrap
2825 msgid "B<void freeaddrinfo(struct addrinfo *>I<res>B<);>\n"
2826 msgstr "B<void freeaddrinfo(struct addrinfo *>I<res>B<);>\n"
2827
2828 #. type: Plain text
2829 #: build/C/man3/getaddrinfo.3:61
2830 #, no-wrap
2831 msgid "B<const char *gai_strerror(int >I<errcode>B<);>\n"
2832 msgstr "B<const char *gai_strerror(int >I<errcode>B<);>\n"
2833
2834 #. type: Plain text
2835 #: build/C/man3/getaddrinfo.3:66 build/C/man3/gethostbyname.3:93
2836 #: build/C/man3/getnameinfo.3:26 build/C/man3/getnetent_r.3:52
2837 #: build/C/man3/getprotoent_r.3:49 build/C/man3/getservent_r.3:49
2838 #: build/C/man3/inet.3:70 build/C/man3/inet_net_pton.3:45
2839 #: build/C/man3/rcmd.3:81 build/C/man3/setnetgrent.3:34
2840 msgid ""
2841 "Feature Test Macro Requirements for glibc (see B<feature_test_macros>(7)):"
2842 msgstr "glibc 向けの機能検査マクロの要件 (B<feature_test_macros>(7)  参照):"
2843
2844 #. type: Plain text
2845 #: build/C/man3/getaddrinfo.3:72
2846 msgid "B<getaddrinfo>(), B<freeaddrinfo>(), B<gai_strerror>():"
2847 msgstr "B<getaddrinfo>(), B<freeaddrinfo>(), B<gai_strerror>():"
2848
2849 #. type: Plain text
2850 #: build/C/man3/getaddrinfo.3:74
2851 msgid "_POSIX_C_SOURCE\\ E<gt>=\\ 1 || _XOPEN_SOURCE || _POSIX_SOURCE"
2852 msgstr "_POSIX_C_SOURCE\\ E<gt>=\\ 1 || _XOPEN_SOURCE || _POSIX_SOURCE"
2853
2854 #.  .BR getipnodebyname (3),
2855 #.  .BR getipnodebyaddr (3),
2856 #. type: Plain text
2857 #: build/C/man3/getaddrinfo.3:101
2858 msgid ""
2859 "Given I<node> and I<service>, which identify an Internet host and a service, "
2860 "B<getaddrinfo>()  returns one or more I<addrinfo> structures, each of which "
2861 "contains an Internet address that can be specified in a call to B<bind>(2)  "
2862 "or B<connect>(2).  The B<getaddrinfo>()  function combines the functionality "
2863 "provided by the B<gethostbyname>(3)  and B<getservbyname>(3)  functions into "
2864 "a single interface, but unlike the latter functions, B<getaddrinfo>()  is "
2865 "reentrant and allows programs to eliminate IPv4-versus-IPv6 dependencies."
2866 msgstr ""
2867 "B<getaddrinfo>()  は、(インターネットのホストとサービスを識別する)  I<node> "
2868 "と I<service> を渡すと、一つ以上の I<addrinfo> 構造体を返す。それぞれの "
2869 "I<addrinfo> 構造体には、 B<bind>(2)  や B<connect>(2)  を呼び出す際に指定でき"
2870 "るインターネットアドレスが格納されている。 B<getaddrinfo>()  関数は、 "
2871 "B<gethostbyname>(3) と B<getservbyname>(3) の機能をまとめて一つのインター"
2872 "フェースにしたものであるが、 これらの関数と違い、 B<getaddrinfo>() はリエント"
2873 "ラントであり、 B<getaddrinfo>() を使うことでプログラムは IPv4 と IPv6 の違い"
2874 "に関する依存関係を なくすことができる。"
2875
2876 #. type: Plain text
2877 #: build/C/man3/getaddrinfo.3:107
2878 msgid ""
2879 "The I<addrinfo> structure used by B<getaddrinfo>()  contains the following "
2880 "fields:"
2881 msgstr ""
2882 "B<getaddrinfo>()  が用いる I<addrinfo> 構造体は以下のフィールドを含む。"
2883
2884 #. type: Plain text
2885 #: build/C/man3/getaddrinfo.3:120
2886 #, no-wrap
2887 msgid ""
2888 "struct addrinfo {\n"
2889 "    int              ai_flags;\n"
2890 "    int              ai_family;\n"
2891 "    int              ai_socktype;\n"
2892 "    int              ai_protocol;\n"
2893 "    socklen_t        ai_addrlen;\n"
2894 "    struct sockaddr *ai_addr;\n"
2895 "    char            *ai_canonname;\n"
2896 "    struct addrinfo *ai_next;\n"
2897 "};\n"
2898 msgstr ""
2899 "struct addrinfo {\n"
2900 "    int              ai_flags;\n"
2901 "    int              ai_family;\n"
2902 "    int              ai_socktype;\n"
2903 "    int              ai_protocol;\n"
2904 "    socklen_t        ai_addrlen;\n"
2905 "    struct sockaddr *ai_addr;\n"
2906 "    char            *ai_canonname;\n"
2907 "    struct addrinfo *ai_next;\n"
2908 "};\n"
2909
2910 #. type: Plain text
2911 #: build/C/man3/getaddrinfo.3:142
2912 msgid ""
2913 "The I<hints> argument points to an I<addrinfo> structure that specifies "
2914 "criteria for selecting the socket address structures returned in the list "
2915 "pointed to by I<res>.  If I<hints> is not NULL it points to an I<addrinfo> "
2916 "structure whose I<ai_family>, I<ai_socktype>, and I<ai_protocol> specify "
2917 "criteria that limit the set of socket addresses returned by "
2918 "B<getaddrinfo>(), as follows:"
2919 msgstr ""
2920 "I<hints> 引き数は I<addrinfo> 構造体を指し示し、この構造体を用いて I<res> が"
2921 "指すリストに入れて返すソケットアドレス構造体を選択するための基準を指定する。 "
2922 "I<hints> が NULL でない場合、 I<hints> は I<addrinfo> 構造体を指し示し、その"
2923 "構造体のフィールド I<ai_family>, I<ai_socktype>, I<ai_protocol> で "
2924 "B<getaddrinfo>()  が返すソケットアドレス集合に対する基準を指定する。"
2925
2926 #. type: TP
2927 #: build/C/man3/getaddrinfo.3:142
2928 #, no-wrap
2929 msgid "I<ai_family>"
2930 msgstr "I<ai_family>"
2931
2932 #. type: Plain text
2933 #: build/C/man3/getaddrinfo.3:158
2934 msgid ""
2935 "This field specifies the desired address family for the returned addresses.  "
2936 "Valid values for this field include B<AF_INET> and B<AF_INET6>.  The value "
2937 "B<AF_UNSPEC> indicates that B<getaddrinfo>()  should return socket addresses "
2938 "for any address family (either IPv4 or IPv6, for example) that can be used "
2939 "with I<node> and I<service>."
2940 msgstr ""
2941 "このフィールドは返されるアドレスの希望のアドレスファミリーを指定する。 この"
2942 "フィールドに指定できる有効な値としては B<AF_INET> と B<AF_INET6> がある。 ま"
2943 "た、値 B<AF_UNSPEC> を指定すると、 B<getaddrinfo>()  は I<node> と "
2944 "I<service> で使用できるいずれかのアドレスファミリー (例えば IPv4 か IPv6) の "
2945 "ソケットアドレスを返すことを求められる。"
2946
2947 #. type: TP
2948 #: build/C/man3/getaddrinfo.3:158
2949 #, no-wrap
2950 msgid "I<ai_socktype>"
2951 msgstr "I<ai_socktype>"
2952
2953 #. type: Plain text
2954 #: build/C/man3/getaddrinfo.3:167
2955 msgid ""
2956 "This field specifies the preferred socket type, for example B<SOCK_STREAM> "
2957 "or B<SOCK_DGRAM>.  Specifying 0 in this field indicates that socket "
2958 "addresses of any type can be returned by B<getaddrinfo>()."
2959 msgstr ""
2960 "このフィールドは推奨のソケット型 (例えば B<SOCK_STREAM> や B<SOCK_DGRAM>)  を"
2961 "指定する。 このフィールドに 0 を指定すると、任意のソケット型のソケットアドレ"
2962 "スを B<getaddrinfo>()  が返してよいことを意味する。"
2963
2964 #. type: TP
2965 #: build/C/man3/getaddrinfo.3:167
2966 #, no-wrap
2967 msgid "I<ai_protocol>"
2968 msgstr "I<ai_protocol>"
2969
2970 #. type: Plain text
2971 #: build/C/man3/getaddrinfo.3:173
2972 msgid ""
2973 "This field specifies the protocol for the returned socket addresses.  "
2974 "Specifying 0 in this field indicates that socket addresses with any protocol "
2975 "can be returned by B<getaddrinfo>()."
2976 msgstr ""
2977 "このフィールドは返されるソケットアドレスのプロトコルを指定する。 このフィール"
2978 "ドに 0 を指定すると、任意のプロトコルののソケットアドレスを "
2979 "B<getaddrinfo>()  が返してよいことを意味する。"
2980
2981 #. type: TP
2982 #: build/C/man3/getaddrinfo.3:173
2983 #, no-wrap
2984 msgid "I<ai_flags>"
2985 msgstr "I<ai_flags>"
2986
2987 #. type: Plain text
2988 #: build/C/man3/getaddrinfo.3:177
2989 msgid ""
2990 "This field specifies additional options, described below.  Multiple flags "
2991 "are specified by bitwise OR-ing them together."
2992 msgstr ""
2993 "このフィールドは、追加のオプション (下記) を指定する。 複数のフラグを指定する"
2994 "際には、それらのビット単位の OR をとって指定する。"
2995
2996 #. type: Plain text
2997 #: build/C/man3/getaddrinfo.3:181
2998 msgid ""
2999 "All the other fields in the structure pointed to by I<hints> must contain "
3000 "either 0 or a null pointer, as appropriate."
3001 msgstr ""
3002 "I<hints> が指し示す構造体の他のすべてのフィールドには 0 かヌルポインタを適切"
3003 "に入れなければならない。"
3004
3005 #. type: Plain text
3006 #: build/C/man3/getaddrinfo.3:216
3007 msgid ""
3008 "Specifying I<hints> as NULL is equivalent to setting I<ai_socktype> and "
3009 "I<ai_protocol> to 0; I<ai_family> to B<AF_UNSPEC>; and I<ai_flags> to "
3010 "B<(AI_V4MAPPED\\ |\\ AI_ADDRCONFIG)>.  (POSIX specifies different defaults "
3011 "for I<ai_flags>; see NOTES.)  I<node> specifies either a numerical network "
3012 "address (for IPv4, numbers-and-dots notation as supported by "
3013 "B<inet_aton>(3); for IPv6, hexadecimal string format as supported by "
3014 "B<inet_pton>(3)), or a network hostname, whose network addresses are looked "
3015 "up and resolved.  If I<hints.ai_flags> contains the B<AI_NUMERICHOST> flag, "
3016 "then I<node> must be a numerical network address.  The B<AI_NUMERICHOST> "
3017 "flag suppresses any potentially lengthy network host address lookups."
3018 msgstr ""
3019 "I<hints> に NULL を指定するのは、 I<ai_socktype> と I<ai_protocol> に 0 を、 "
3020 "I<ai_family> に B<AF_UNSPEC> を、 I<ai_flags> に B<(AI_V4MAPPED\\ |\\ "
3021 "AI_ADDRCONFIG)> を設定するのと等価である (POSIX では I<ai_flags> には別のデ"
3022 "フォルト値が規定されている; 「備考」を参照)。 I<node> には、数値形式のネット"
3023 "ワークアドレス (IPv4 の場合は B<inet_aton>(3)  でサポートされているドット区切"
3024 "りの数字による表記、 IPv6 の場合は B<inet_pton>(3)  でサポートされている 16 "
3025 "進数の文字列形式) もしくは ネットワークホスト名を指定する。 ネットワークホス"
3026 "ト名を指定した場合には、そのネットワークアドレスが検索され、 名前解決が行なわ"
3027 "れる。 I<hints.ai_flags> に B<AI_NUMERICHOST> フラグが含まれている場合は、 "
3028 "I<node> は数値形式のネットワークアドレスでなければならない。 "
3029 "B<AI_NUMERICHOST> フラグを使うと、時間の掛かる可能性のあるネットワークホスト"
3030 "アドレスの検索は すべて抑制される。"
3031
3032 #. type: Plain text
3033 #: build/C/man3/getaddrinfo.3:241
3034 msgid ""
3035 "If the B<AI_PASSIVE> flag is specified in I<hints.ai_flags>, and I<node> is "
3036 "NULL, then the returned socket addresses will be suitable for B<bind>(2)ing "
3037 "a socket that will B<accept>(2)  connections.  The returned socket address "
3038 "will contain the \"wildcard address\" (B<INADDR_ANY> for IPv4 addresses, "
3039 "B<IN6ADDR_ANY_INIT> for IPv6 address).  The wildcard address is used by "
3040 "applications (typically servers)  that intend to accept connections on any "
3041 "of the hosts's network addresses.  If I<node> is not NULL, then the "
3042 "B<AI_PASSIVE> flag is ignored."
3043 msgstr ""
3044 "I<hints.ai_flags> に B<AI_PASSIVE> フラグが指定され、かつ I<node> が NULL の"
3045 "場合、 返されるソケットアドレスは コネクションを B<accept>(2)  するためのソ"
3046 "ケットを B<bind>(2)  するのに適したものとなる。 返されるソケットアドレスには"
3047 "「ワイルドカード・アドレス」 (IPv4 アドレスの場合は B<INADDR_ANY>、 IPv6 アド"
3048 "レスの場合は B<IN6ADDR_ANY_INIT>)  が入る。 ワイルドカード・アドレスは、任意"
3049 "のホストのネットワークアドレスで接続を 受け付けようとするアプリケーション (通"
3050 "常はサーバー) で用いられる。 I<node> が NULL でない場合、 B<AI_PASSIVE> フラ"
3051 "グは無視される。"
3052
3053 #. type: Plain text
3054 #: build/C/man3/getaddrinfo.3:261
3055 msgid ""
3056 "If the B<AI_PASSIVE> flag is not set in I<hints.ai_flags>, then the returned "
3057 "socket addresses will be suitable for use with B<connect>(2), B<sendto>(2), "
3058 "or B<sendmsg>(2).  If I<node> is NULL, then the network address will be set "
3059 "to the loopback interface address (B<INADDR_LOOPBACK> for IPv4 addresses, "
3060 "B<IN6ADDR_LOOPBACK_INIT> for IPv6 address); this is used by applications "
3061 "that intend to communicate with peers running on the same host."
3062 msgstr ""
3063 "I<hints.ai_flags> に B<AI_PASSIVE> フラグがセットされていない場合、 返される"
3064 "ソケットアドレスは B<connect>(2), B<sendto>(2), B<sendmsg>(2)  での使用に適し"
3065 "たものとなる。 I<node> が NULL の場合、ネットワークアドレスにはループバック・"
3066 "インターフェイスの アドレス (IPv4 アドレスの場合は B<INADDR_LOOPBACK> IPv6 ア"
3067 "ドレスの場合は B<IN6ADDR_LOOPBACK_INIT>)B<が設定される。> これは同じホスト上"
3068 "で動作している接続相手と通信するような アプリケーションで用いられる。"
3069
3070 #. type: Plain text
3071 #: build/C/man3/getaddrinfo.3:284
3072 msgid ""
3073 "I<service> sets the port in each returned address structure.  If this "
3074 "argument is a service name (see B<services>(5)), it is translated to the "
3075 "corresponding port number.  This argument can also be specified as a decimal "
3076 "number, which is simply converted to binary.  If I<service> is NULL, then "
3077 "the port number of the returned socket addresses will be left "
3078 "uninitialized.  If B<AI_NUMERICSERV> is specified in I<hints.ai_flags> and "
3079 "I<service> is not NULL, then I<service> must point to a string containing a "
3080 "numeric port number.  This flag is used to inhibit the invocation of a name "
3081 "resolution service in cases where it is known not to be required."
3082 msgstr ""
3083 "I<service> により、返される各アドレス構造体のポート番号が決まる。 この引き数"
3084 "がサービス名 (B<services>(5)  参照) の場合、対応するポート番号に翻訳される。 "
3085 "この引き数には 10 進数も指定することができ、 この場合にはバイナリへの変換だけ"
3086 "が行われる。 I<service> が NULL の場合、返されるソケットアドレスのポート番号"
3087 "は 初期化されないままとなる。 I<hints.ai_flags> に B<AI_NUMERICSERV> が指定さ"
3088 "れ、かつ I<service> が NULL でない場合、 I<service> は数値のポート番号を含む"
3089 "文字列を指し示さなければならない。 このフラグは、名前解決サービスが不要である"
3090 "ことが分かっている場合に、 サービスの起動を抑制するために用いられる。"
3091
3092 #. type: Plain text
3093 #: build/C/man3/getaddrinfo.3:290
3094 msgid "Either I<node> or I<service>, but not both, may be NULL."
3095 msgstr ""
3096 "I<node> と I<service> のどちらかは NULL にしてよいが、両方同時に NULL にして"
3097 "はならない。"
3098
3099 #. type: Plain text
3100 #: build/C/man3/getaddrinfo.3:306
3101 msgid ""
3102 "The B<getaddrinfo>()  function allocates and initializes a linked list of "
3103 "I<addrinfo> structures, one for each network address that matches I<node> "
3104 "and I<service>, subject to any restrictions imposed by I<hints>, and returns "
3105 "a pointer to the start of the list in I<res>.  The items in the linked list "
3106 "are linked by the I<ai_next> field."
3107 msgstr ""
3108 "B<getaddrinfo>()  関数は、 I<addrinfo> 構造体のメモリ確保を行い、 "
3109 "I<addrinfo> 構造体のリンクリストを初期化し、 I<res> にリストの先頭へのポイン"
3110 "タを入れて返す。 このとき、各構造体のネットワークアドレスは I<node> と "
3111 "I<service> に一致し、 I<hints> で課されたすべての制限を満たすものとなる。 リ"
3112 "ンクリストの要素は I<ai_next> フィールドにより連結される。"
3113
3114 #. type: Plain text
3115 #: build/C/man3/getaddrinfo.3:328
3116 msgid ""
3117 "There are several reasons why the linked list may have more than one "
3118 "I<addrinfo> structure, including: the network host is multihomed, accessible "
3119 "over multiple protocols (e.g., both B<AF_INET> and B<AF_INET6>); or the same "
3120 "service is available from multiple socket types (one B<SOCK_STREAM> address "
3121 "and another B<SOCK_DGRAM> address, for example).  Normally, the application "
3122 "should try using the addresses in the order in which they are returned.  The "
3123 "sorting function used within B<getaddrinfo>()  is defined in RFC\\ 3484; the "
3124 "order can be tweaked for a particular system by editing I</etc/gai.conf> "
3125 "(available since glibc 2.5)."
3126 msgstr ""
3127 "リンクリストの I<addrinfo> 構造体は複数個になることもあり、その理由はいくつか"
3128 "ある。 ネットワークホストがマルチホームである、 複数のプロトコルでアクセスで"
3129 "きる (例えば B<AF_INET> と B<AF_INET6> の両方) 、 複数のソケット種別で同じ"
3130 "サービスが利用できる (例えば、ひとつが B<SOCK_STREM> アドレスで、もうひとつ"
3131 "が B<SOCK_DGRAM> アドレスである)、がある。 通常は、アプリケーションは返された"
3132 "順序でアドレスを試すべきである。 B<getaddrinfo>()  の中で使用される並べ替え関"
3133 "数は RFC\\ 3484 で定義されている。 特殊なシステムでは、 I</etc/gai.conf> を編"
3134 "集することで、この順序を微調整することができる (I</etc/gai.conf> は glibc "
3135 "2.5 以降で利用できる)。"
3136
3137 #.  In glibc prior to 2.3.4, the ai_canonname of each addrinfo
3138 #.  structure was set pointing to the canonical name; that was
3139 #.  more than POSIX.1-2001 specified, or other implementations provided.
3140 #.  MTK, Aug 05
3141 #. type: Plain text
3142 #: build/C/man3/getaddrinfo.3:343
3143 msgid ""
3144 "If I<hints.ai_flags> includes the B<AI_CANONNAME> flag, then the "
3145 "I<ai_canonname> field of the first of the I<addrinfo> structures in the "
3146 "returned list is set to point to the official name of the host."
3147 msgstr ""
3148 "I<hints.ai_flags> に B<AI_CANONNAME> フラグが含まれている場合、返されるリスト"
3149 "の最初の I<addrinfo> 構造体の I<ai_canonname> フィールドはホストの公式な名前"
3150 "を指すように設定される。"
3151
3152 #. type: Plain text
3153 #: build/C/man3/getaddrinfo.3:347
3154 msgid ""
3155 "The remaining fields of each returned I<addrinfo> structure are initialized "
3156 "as follows:"
3157 msgstr ""
3158 "返される各々の I<addrinfo> 構造体の残りのフィールドは以下のように初期化され"
3159 "る。"
3160
3161 #. type: IP
3162 #: build/C/man3/getaddrinfo.3:347 build/C/man3/getaddrinfo.3:370
3163 #: build/C/man3/getaddrinfo_a.3:191 build/C/man3/getaddrinfo_a.3:195
3164 #: build/C/man3/getaddrinfo_a.3:197 build/C/man3/inet_net_pton.3:207
3165 #: build/C/man3/inet_net_pton.3:213 build/C/man3/inet_net_pton.3:220
3166 #: build/C/man3/inet_net_pton.3:227 build/C/man3/inet_net_pton.3:234
3167 #: build/C/man7/ip.7:1001 build/C/man7/ip.7:1004 build/C/man7/ip.7:1007
3168 #: build/C/man7/ip.7:1010 build/C/man5/nsswitch.conf.5:144
3169 #: build/C/man5/nsswitch.conf.5:148 build/C/man7/unix.7:95
3170 #: build/C/man7/unix.7:120 build/C/man7/unix.7:136 build/C/man7/unix.7:162
3171 #: build/C/man7/unix.7:166 build/C/man7/unix.7:170
3172 #, no-wrap
3173 msgid "*"
3174 msgstr "*"
3175
3176 #. type: Plain text
3177 #: build/C/man3/getaddrinfo.3:370
3178 msgid ""
3179 "The I<ai_family>, I<ai_socktype>, and I<ai_protocol> fields return the "
3180 "socket creation parameters (i.e., these fields have the same meaning as the "
3181 "corresponding arguments of B<socket>(2)).  For example, I<ai_family> might "
3182 "return B<AF_INET> or B<AF_INET6>; I<ai_socktype> might return B<SOCK_DGRAM> "
3183 "or B<SOCK_STREAM>; and I<ai_protocol> returns the protocol for the socket."
3184 msgstr ""
3185 "I<ai_family>, I<ai_socktype>, I<ai_protocol> フィールドはソケット生成パラメー"
3186 "タを返す (これらのフィールドの意味は B<socket>(2)  の同じ名前の引き数と同じで"
3187 "ある)。 例えば、 I<ai_family> は B<AF_INET> や B<AF_INET6> を返し、 "
3188 "I<ai_socktype> は B<SOCK_DGRAM> や B<SOCK_STREAM> を返し、 I<ai_protocol> は"
3189 "そのソケットのプロトコルを返す。"
3190
3191 #. type: Plain text
3192 #: build/C/man3/getaddrinfo.3:377
3193 msgid ""
3194 "A pointer to the socket address is placed in the I<ai_addr> field, and the "
3195 "length of the socket address, in bytes, is placed in the I<ai_addrlen> field."
3196 msgstr ""
3197 "I<ai_addr> フィールドにはソケットアドレスへのポインタが書き込まれ、 "
3198 "I<ai_addrlen> フィールドにはソケットアドレスの長さがバイト単位で書き込まれ"
3199 "る。"
3200
3201 #. type: Plain text
3202 #: build/C/man3/getaddrinfo.3:396
3203 msgid ""
3204 "If I<hints.ai_flags> includes the B<AI_ADDRCONFIG> flag, then IPv4 addresses "
3205 "are returned in the list pointed to by I<res> only if the local system has "
3206 "at least one IPv4 address configured, and IPv6 addresses are returned only "
3207 "if the local system has at least one IPv6 address configured.  The loopback "
3208 "address is not considered for this case as valid as a configured address.  "
3209 "This flag is useful on, for example, IPv4-only systems, to ensure that "
3210 "B<getaddrinfo>()  does not return IPv6 socket addresses that would always "
3211 "fail in B<connect>(2)  or B<bind>(2)."
3212 msgstr ""
3213 "I<hints.ai_flags> が B<AI_ADDRCONFIG> を含む場合、 I<res> が指すリストには、"
3214 "ローカルシステムに最低一つの IPv4 アドレスが設定されている場合のみ IPv4 アド"
3215 "レスが返され、 ローカルシステムに最低一つの IPv6 アドレスが設定されている場合"
3216 "にのみ IPv6 アドレスが返される。 なお、この場合には、ループバックアドレスは有"
3217 "効に設定されたアドレスとはみなされない。 このフラグは、例えば、IPv4 だけのシ"
3218 "ステムで、 B<getaddrinfo>() が必ず IPv6 ソケットアドレスを返さないことを保証"
3219 "するのに役立つ。 IPv4 だけのシステムでは、IPv6 アドレスは B<connect>(2) や "
3220 "B<bind>(2) で必ず失敗することになる。"
3221
3222 #. type: Plain text
3223 #: build/C/man3/getaddrinfo.3:421
3224 msgid ""
3225 "If I<hints.ai_flags> specifies the B<AI_V4MAPPED> flag, and I<hints."
3226 "ai_family> was specified as B<AF_INET6>, and no matching IPv6 addresses "
3227 "could be found, then return IPv4-mapped IPv6 addresses in the list pointed "
3228 "to by I<res>.  If both B<AI_V4MAPPED> and B<AI_ALL> are specified in I<hints."
3229 "ai_flags>, then return both IPv6 and IPv4-mapped IPv6 addresses in the list "
3230 "pointed to by I<res>.  B<AI_ALL> is ignored if B<AI_V4MAPPED> is not also "
3231 "specified."
3232 msgstr ""
3233 "I<hints.ai_flags> に B<AI_V4MAPPED> が指定されていて、 I<hints.ai_family> に "
3234 "B<AF_INET6> が指定され、 マッチする IPv6 アドレスが見つからなかった場合、 "
3235 "I<res> が指すリストには IPv4-mapped IPv6 アドレスが返される。 I<hints."
3236 "ai_flags> に B<AI_V4MAPPED> と B<AI_ALL> の両方が指定されている場合、 I<res> "
3237 "が指すリストには IPv6 アドレスと IPv4-mapped IPv6 アドレスの 両方が返され"
3238 "る。 B<AI_V4MAPPED> が指定されていない場合、 B<AI_ALL> は無視される。"
3239
3240 #. type: Plain text
3241 #: build/C/man3/getaddrinfo.3:427
3242 msgid ""
3243 "The B<freeaddrinfo>()  function frees the memory that was allocated for the "
3244 "dynamically allocated linked list I<res>."
3245 msgstr ""
3246 "B<freeaddrinfo>()  関数は、 リンクリスト I<res> に対して動的に割り当てられた"
3247 "メモリを解放する。"
3248
3249 #. type: SS
3250 #: build/C/man3/getaddrinfo.3:427
3251 #, no-wrap
3252 msgid "Extensions to getaddrinfo() for Internationalized Domain Names"
3253 msgstr "国際化ドメイン名のための getaddrinfo() の拡張"
3254
3255 #. type: Plain text
3256 #: build/C/man3/getaddrinfo.3:436
3257 msgid ""
3258 "Starting with glibc 2.3.4, B<getaddrinfo>()  has been extended to "
3259 "selectively allow the incoming and outgoing hostnames to be transparently "
3260 "converted to and from the Internationalized Domain Name (IDN) format (see "
3261 "RFC 3490, I<Internationalizing Domain Names in Applications (IDNA)>).  Four "
3262 "new flags are defined:"
3263 msgstr ""
3264 "glibc 2.3.4 から、 B<getaddrinfo>()  は入出力するホスト名を透過的に国際化ドメ"
3265 "イン名 (IDN) 形式 (RFC 3490 の I<Internationalizing Domain Names in "
3266 "Applications (IDNA)> を参照のこと) と変換することを選択的に認めるように拡張さ"
3267 "れている。 4 つの新しいフラグが定義されている:"
3268
3269 #. type: TP
3270 #: build/C/man3/getaddrinfo.3:436
3271 #, no-wrap
3272 msgid "B<AI_IDN>"
3273 msgstr "B<AI_IDN>"
3274
3275 #. type: Plain text
3276 #: build/C/man3/getaddrinfo.3:442
3277 msgid ""
3278 "If this flag is specified, then the node name given in I<node> is converted "
3279 "to IDN format if necessary.  The source encoding is that of the current "
3280 "locale."
3281 msgstr ""
3282 "このフラグが指定されると、 I<node> で与えられたノード名は必要があれば IDN 形"
3283 "式に変換される。 ソース符号化形式は現在のロケールのものである。"
3284
3285 #.  Implementation Detail:
3286 #.  To minimize effects on system performance the implementation might
3287 #.  want to check whether the input string contains any non-ASCII
3288 #.  characters.  If there are none the IDN step can be skipped completely.
3289 #.  On systems which allow not-ASCII safe encodings for a locale this
3290 #.  might be a problem.
3291 #. type: Plain text
3292 #: build/C/man3/getaddrinfo.3:454
3293 msgid ""
3294 "If the input name contains non-ASCII characters, then the IDN encoding is "
3295 "used.  Those parts of the node name (delimited by dots) that contain non-"
3296 "ASCII characters are encoded using ASCII Compatible Encoding (ACE)  before "
3297 "being passed to the name resolution functions."
3298 msgstr ""
3299 "入力名に非 ASCII 文字が含まれている場合、 IDN 符号化形式が使われる。 非 "
3300 "ASCII 文字が含まれている(ピリオドで区切られる)部分ノード名は、 名前解決機能に"
3301 "渡される前に ASCII 互換符号化形式 (ACE) を使って 符号化される。"
3302
3303 #. type: TP
3304 #: build/C/man3/getaddrinfo.3:454
3305 #, no-wrap
3306 msgid "B<AI_CANONIDN>"
3307 msgstr "B<AI_CANONIDN>"
3308
3309 #. type: Plain text
3310 #: build/C/man3/getaddrinfo.3:466
3311 msgid ""
3312 "After a successful name lookup, and if the B<AI_CANONNAME> flag was "
3313 "specified, B<getaddrinfo>()  will return the canonical name of the node "
3314 "corresponding to the I<addrinfo> structure value passed back.  The return "
3315 "value is an exact copy of the value returned by the name resolution function."
3316 msgstr ""
3317 "B<AI_CANONNAME> が指定されている場合、 B<getaddrinfo>()  は名前の検索に成功し"
3318 "た後、 返された I<addrinfo> 構造体に対応するノードの正規名を返す。 返り値は名"
3319 "前解決機能から返された値の正確なコピーである。"
3320
3321 #. Implementation Detail:
3322 #. If no component of the returned name starts with xn\-\- the IDN
3323 #. step can be skipped, therefore avoiding unnecessary slowdowns.
3324 #. type: Plain text
3325 #: build/C/man3/getaddrinfo.3:479
3326 msgid ""
3327 "If the name is encoded using ACE, then it will contain the I<xn--> prefix "
3328 "for one or more components of the name.  To convert these components into a "
3329 "readable form the B<AI_CANONIDN> flag can be passed in addition to "
3330 "B<AI_CANONNAME>.  The resulting string is encoded using the current locale's "
3331 "encoding."
3332 msgstr ""
3333 "B<AI_CANONIDN> 名前が ACE で符号化されている場合、一つまたは複数の名前の構成"
3334 "要素の先頭に I<xn--> を含んでいる。 これらの構成要素を読み込み可能な形に変換"
3335 "するために、 B<AI_CANONNAME> と共に B<AI_CANONIDN> フラグを渡すことも出来"
3336 "る。 返される文字列は現在のロケールの符号化形式で符号化されている。"
3337
3338 #. type: TP
3339 #: build/C/man3/getaddrinfo.3:479
3340 #, no-wrap
3341 msgid "B<AI_IDN_ALLOW_UNASSIGNED>, B<AI_IDN_USE_STD3_ASCII_RULES>"
3342 msgstr "B<AI_IDN_ALLOW_UNASSIGNED>, B<AI_IDN_USE_STD3_ASCII_RULES>"
3343
3344 #. type: Plain text
3345 #: build/C/man3/getaddrinfo.3:486 build/C/man3/getnameinfo.3:139
3346 msgid ""
3347 "Setting these flags will enable the IDNA_ALLOW_UNASSIGNED (allow unassigned "
3348 "Unicode code points) and IDNA_USE_STD3_ASCII_RULES (check output to make "
3349 "sure it is a STD3 conforming hostname)  flags respectively to be used in the "
3350 "IDNA handling."
3351 msgstr ""
3352 "これらのフラグをセットすると、IDNA 処理で使用されるフラグ "
3353 "IDNA_ALLOW_UNASSIGNED (未割り当ての Unicode のコードポイントを許容) と "
3354 "IDNA_USE_STD3_ASCII_RULES (出力が STD3 準拠のホスト名かをチェックする)  がそ"
3355 "れぞれ有効になる。"
3356
3357 #. type: SH
3358 #: build/C/man3/getaddrinfo.3:486 build/C/man3/getaddrinfo_a.3:242
3359 #: build/C/man3/gethostbyname.3:280 build/C/man3/getipnodebyname.3:186
3360 #: build/C/man3/getnameinfo.3:139 build/C/man3/getnetent.3:130
3361 #: build/C/man3/getnetent_r.3:118 build/C/man2/getpeername.2:68
3362 #: build/C/man3/getprotoent.3:123 build/C/man3/getprotoent_r.3:108
3363 #: build/C/man3/getservent.3:142 build/C/man3/getservent_r.3:107
3364 #: build/C/man3/inet_net_pton.3:130 build/C/man3/inet_ntop.3:83
3365 #: build/C/man3/inet_pton.3:116 build/C/man3/rcmd.3:239
3366 #: build/C/man3/resolver.3:245 build/C/man3/setnetgrent.3:86
3367 #: build/C/man2/shutdown.2:69
3368 #, no-wrap
3369 msgid "RETURN VALUE"
3370 msgstr "返り値"
3371
3372 #.  FIXME glibc defines the following additional errors, some which
3373 #.  can probably be returned by getaddrinfo(); they need to
3374 #.  be documented.
3375 #.  #ifdef __USE_GNU
3376 #.  #define EAI_INPROGRESS  -100  /* Processing request in progress.  */
3377 #.  #define EAI_CANCELED    -101  /* Request canceled.  */
3378 #.  #define EAI_NOTCANCELED -102  /* Request not canceled.  */
3379 #.  #define EAI_ALLDONE     -103  /* All requests done.  */
3380 #.  #define EAI_INTR        -104  /* Interrupted by a signal.  */
3381 #.  #define EAI_IDN_ENCODE  -105  /* IDN encoding failed.  */
3382 #.  #endif
3383 #. type: Plain text
3384 #: build/C/man3/getaddrinfo.3:500
3385 msgid ""
3386 "B<getaddrinfo>()  returns 0 if it succeeds, or one of the following nonzero "
3387 "error codes:"
3388 msgstr ""
3389 "B<getaddrinfo>()  は成功すると 0 を返し、失敗すると以下の非 0 のエラーコード"
3390 "のいずれかを返す。"
3391
3392 #. type: TP
3393 #: build/C/man3/getaddrinfo.3:500
3394 #, no-wrap
3395 msgid "B<EAI_ADDRFAMILY>"
3396 msgstr "B<EAI_ADDRFAMILY>"
3397
3398 #.  Not in SUSv3
3399 #. type: Plain text
3400 #: build/C/man3/getaddrinfo.3:505
3401 msgid ""
3402 "The specified network host does not have any network addresses in the "
3403 "requested address family."
3404 msgstr ""
3405 "指定されたネットワークホストには、 要求されたアドレスファミリーのネットワーク"
3406 "アドレスがない。"
3407
3408 #. type: TP
3409 #: build/C/man3/getaddrinfo.3:505 build/C/man3/getaddrinfo_a.3:247
3410 #: build/C/man3/getaddrinfo_a.3:264 build/C/man3/getnameinfo.3:155
3411 #, no-wrap
3412 msgid "B<EAI_AGAIN>"
3413 msgstr "B<EAI_AGAIN>"
3414
3415 #. type: Plain text
3416 #: build/C/man3/getaddrinfo.3:509
3417 msgid ""
3418 "The name server returned a temporary failure indication.  Try again later."
3419 msgstr ""
3420 "ネームサーバーから一時的な失敗 (temporary failure)  を意味する返事が返され"
3421 "た。後でもう一度試してみよ。"
3422
3423 #. type: TP
3424 #: build/C/man3/getaddrinfo.3:509 build/C/man3/getnameinfo.3:159
3425 #, no-wrap
3426 msgid "B<EAI_BADFLAGS>"
3427 msgstr "B<EAI_BADFLAGS>"
3428
3429 #. type: Plain text
3430 #: build/C/man3/getaddrinfo.3:519
3431 msgid ""
3432 "I<hints.ai_flags> contains invalid flags; or, I<hints.ai_flags> included "
3433 "B<AI_CANONNAME> and I<name> was NULL."
3434 msgstr ""
3435 "I<hints.ai_flags> のフラグに不正なフラグが含まれている。または、 I<hints."
3436 "ai_flags> に B<AI_CANONNAME> が含まれていて、かつ I<name> が NULL であった。"
3437
3438 #. type: TP
3439 #: build/C/man3/getaddrinfo.3:519 build/C/man3/getnameinfo.3:164
3440 #, no-wrap
3441 msgid "B<EAI_FAIL>"
3442 msgstr "B<EAI_FAIL>"
3443
3444 #. type: Plain text
3445 #: build/C/man3/getaddrinfo.3:522
3446 msgid "The name server returned a permanent failure indication."
3447 msgstr ""
3448 "ネームサーバーから恒久的な失敗 (permanent failure)  を意味する返事が返され"
3449 "た。"
3450
3451 #. type: TP
3452 #: build/C/man3/getaddrinfo.3:522 build/C/man3/getnameinfo.3:167
3453 #, no-wrap
3454 msgid "B<EAI_FAMILY>"
3455 msgstr "B<EAI_FAMILY>"
3456
3457 #. type: Plain text
3458 #: build/C/man3/getaddrinfo.3:525
3459 msgid "The requested address family is not supported."
3460 msgstr "要求されたアドレスファミリーがサポートされていない。"
3461
3462 #. type: TP
3463 #: build/C/man3/getaddrinfo.3:525 build/C/man3/getaddrinfo_a.3:252
3464 #: build/C/man3/getnameinfo.3:171
3465 #, no-wrap
3466 msgid "B<EAI_MEMORY>"
3467 msgstr "B<EAI_MEMORY>"
3468
3469 #. type: Plain text
3470 #: build/C/man3/getaddrinfo.3:528 build/C/man3/getaddrinfo_a.3:255
3471 #: build/C/man3/getnameinfo.3:174 build/C/man7/unix.7:444
3472 msgid "Out of memory."
3473 msgstr "メモリが足りない。"
3474
3475 #. type: TP
3476 #: build/C/man3/getaddrinfo.3:528
3477 #, no-wrap
3478 msgid "B<EAI_NODATA>"
3479 msgstr "B<EAI_NODATA>"
3480
3481 #.  Not in SUSv3
3482 #. type: Plain text
3483 #: build/C/man3/getaddrinfo.3:533
3484 msgid ""
3485 "The specified network host exists, but does not have any network addresses "
3486 "defined."
3487 msgstr ""
3488 "指定されたネットワークホストは存在するが、 ネットワークアドレスがひとつも定義"
3489 "されていない。"
3490
3491 #. type: TP
3492 #: build/C/man3/getaddrinfo.3:533 build/C/man3/getnameinfo.3:174
3493 #, no-wrap
3494 msgid "B<EAI_NONAME>"
3495 msgstr "B<EAI_NONAME>"
3496
3497 #. type: Plain text
3498 #: build/C/man3/getaddrinfo.3:550
3499 msgid ""
3500 "The I<node> or I<service> is not known; or both I<node> and I<service> are "
3501 "NULL; or B<AI_NUMERICSERV> was specified in I<hints.ai_flags> and I<service> "
3502 "was not a numeric port-number string."
3503 msgstr ""
3504 "I<node> と I<service> のどちらかが不明、または I<node> と I<service> の両方"
3505 "が NULL だった場合、または B<AI_NUMERICSERV> が I<hints.ai_flags> に指定され"
3506 "ていて、 I<hints.ai_flags> と I<service> が数値のポート番号の文字列でない。"
3507
3508 #. type: TP
3509 #: build/C/man3/getaddrinfo.3:550
3510 #, no-wrap
3511 msgid "B<EAI_SERVICE>"
3512 msgstr "B<EAI_SERVICE>"
3513
3514 #. type: Plain text
3515 #: build/C/man3/getaddrinfo.3:571
3516 msgid ""
3517 "The requested service is not available for the requested socket type.  It "
3518 "may be available through another socket type.  For example, this error could "
3519 "occur if I<service> was \"shell\" (a service available only on stream "
3520 "sockets), and either I<hints.ai_protocol> was B<IPPROTO_UDP>, or I<hints."
3521 "ai_socktype> was B<SOCK_DGRAM>; or the error could occur if I<service> was "
3522 "not NULL, and I<hints.ai_socktype> was B<SOCK_RAW> (a socket type that does "
3523 "not support the concept of services)."
3524 msgstr ""
3525 "要求されたサービスは、要求されたソケットタイプでは利用できない。 他のソケット"
3526 "タイプでなら利用可能かもしれない。 このエラーが発生する例としては、 "
3527 "I<service> が \"shell\" (ストリーム・ソケットでのみ利用できるサービス) で、 "
3528 "I<hints.ai_protocol> に B<IPPROTO_UDP> が指定されたり、 I<hints.ai_socktype> "
3529 "に B<SOCK_DGRAM> が指定されたりした場合がある。 また、 I<service> が NULL 以"
3530 "外で、 I<hints.ai_socktype> に B<SOCK_RAW> (サービスの考え方をサポートしてい"
3531 "ないソケット種別)  が指定された場合にも、このエラーが発生する。"
3532
3533 #. type: TP
3534 #: build/C/man3/getaddrinfo.3:571
3535 #, no-wrap
3536 msgid "B<EAI_SOCKTYPE>"
3537 msgstr "B<EAI_SOCKTYPE>"
3538
3539 #. type: Plain text
3540 #: build/C/man3/getaddrinfo.3:583
3541 msgid ""
3542 "The requested socket type is not supported.  This could occur, for example, "
3543 "if I<hints.ai_socktype> and I<hints.ai_protocol> are inconsistent (e.g., "
3544 "B<SOCK_DGRAM> and B<IPPROTO_TCP>, respectively)."
3545 msgstr ""
3546 "要求されたソケットタイプがサポートされていない。 このエラーが発生する例として"
3547 "は、 I<hints.ai_socktype> と I<hints.ai_protocol> が矛盾している場合 (例えば "
3548 "I<hints.ai_socktype> が B<SOCK_DGRAM> で I<hints.ai_protocol> が "
3549 "B<IPPROTO_TCP>)  がある。"
3550
3551 #. type: TP
3552 #: build/C/man3/getaddrinfo.3:583 build/C/man3/getaddrinfo_a.3:255
3553 #: build/C/man3/getnameinfo.3:187
3554 #, no-wrap
3555 msgid "B<EAI_SYSTEM>"
3556 msgstr "B<EAI_SYSTEM>"
3557
3558 #. type: Plain text
3559 #: build/C/man3/getaddrinfo.3:588
3560 msgid "Other system error, check I<errno> for details."
3561 msgstr "その他のシステムエラー。詳しくは I<errno> を調べること。"
3562
3563 #. type: Plain text
3564 #: build/C/man3/getaddrinfo.3:593
3565 msgid ""
3566 "The B<gai_strerror>()  function translates these error codes to a human "
3567 "readable string, suitable for error reporting."
3568 msgstr ""
3569 "B<gai_strerror>()  関数を用いると、これらのエラーコードを人間に可読な文字列に"
3570 "変換できるので、 エラー報告に適するだろう。"
3571
3572 #. type: Plain text
3573 #: build/C/man3/getaddrinfo.3:600
3574 msgid ""
3575 "POSIX.1-2001.  The B<getaddrinfo>()  function is documented in RFC\\ 2553."
3576 msgstr "POSIX.1-2001.  B<getaddrinfo>()  関数は RFC 2553 に記載されている。"
3577
3578 #. type: Plain text
3579 #: build/C/man3/getaddrinfo.3:605
3580 msgid ""
3581 "B<getaddrinfo>()  supports the I<address>B<%>I<scope-id> notation for "
3582 "specifying the IPv6 scope-ID."
3583 msgstr ""
3584 "B<getaddrinfo>()  は、IPv6 scope-ID を指定するために I<address>B<%>I<scope-"
3585 "id> 記法をサポートしている。"
3586
3587 #. type: Plain text
3588 #: build/C/man3/getaddrinfo.3:613
3589 msgid ""
3590 "B<AI_ADDRCONFIG>, B<AI_ALL>, and B<AI_V4MAPPED> are available since glibc "
3591 "2.3.3.  B<AI_NUMERICSERV> is available since glibc 2.3.4."
3592 msgstr ""
3593 "B<AI_ADDRCONFIG>, B<AI_ALL>, B<AI_V4MAPPED> は glibc 2.3.3 以降で利用可能であ"
3594 "る。 B<AI_NUMERICSERV> は glibc 2.3.4 以降で利用可能である。"
3595
3596 #. type: Plain text
3597 #: build/C/man3/getaddrinfo.3:623
3598 msgid ""
3599 "According to POSIX.1-2001, specifying I<hints> as NULL should cause "
3600 "I<ai_flags> to be assumed as 0.  The GNU C library instead assumes a value "
3601 "of B<(AI_V4MAPPED\\ |\\ AI_ADDRCONFIG)> for this case, since this value is "
3602 "considered an improvement on the specification."
3603 msgstr ""
3604 "POSIX.1-2001 によると、 I<hints> に NULL が指定された場合、 I<ai_flags> を 0 "
3605 "とみなすべきとされている。 GNU C ライブラリでは、この場合に、代わりに "
3606 "I<ai_flags> を B<(AI_V4MAPPED\\ |\\ AI_ADDRCONFIG)> とみなすようになってい"
3607 "る。 この値の方が標準規格の改善になると考えられているからである。"
3608
3609 #.  getnameinfo.3 refers to this example
3610 #.  socket.2 refers to this example
3611 #.  bind.2 refers to this example
3612 #.  connect.2 refers to this example
3613 #.  recvfrom.2 refers to this example
3614 #.  sendto.2 refers to this example
3615 #. type: Plain text
3616 #: build/C/man3/getaddrinfo.3:637
3617 msgid ""
3618 "The following programs demonstrate the use of B<getaddrinfo>(), "
3619 "B<gai_strerror>(), B<freeaddrinfo>(), and B<getnameinfo>(3).  The programs "
3620 "are an echo server and client for UDP datagrams."
3621 msgstr ""
3622 "以下のプログラムは、 B<getaddrinfo>(), B<gai_strerror>(), B<freeaddrinfo>(), "
3623 "B<getnameinfo>(3)  の使い方を示したものである。 プログラムは UDP データグラム"
3624 "の echo サーバとクライアントである。"
3625
3626 #. type: SS
3627 #: build/C/man3/getaddrinfo.3:637
3628 #, no-wrap
3629 msgid "Server program"
3630 msgstr "サーバのプログラム"
3631
3632 #. type: Plain text
3633 #: build/C/man3/getaddrinfo.3:647
3634 #, no-wrap
3635 msgid ""
3636 "#include E<lt>sys/types.hE<gt>\n"
3637 "#include E<lt>stdio.hE<gt>\n"
3638 "#include E<lt>stdlib.hE<gt>\n"
3639 "#include E<lt>unistd.hE<gt>\n"
3640 "#include E<lt>string.hE<gt>\n"
3641 "#include E<lt>sys/socket.hE<gt>\n"
3642 "#include E<lt>netdb.hE<gt>\n"
3643 msgstr ""
3644 "#include E<lt>sys/types.hE<gt>\n"
3645 "#include E<lt>stdio.hE<gt>\n"
3646 "#include E<lt>stdlib.hE<gt>  \n"
3647 "#include E<lt>unistd.hE<gt>\n"
3648 "#include E<lt>string.hE<gt>\n"
3649 "#include E<lt>sys/socket.hE<gt>\n"
3650 "#include E<lt>netdb.hE<gt>\n"
3651
3652 #. type: Plain text
3653 #: build/C/man3/getaddrinfo.3:649 build/C/man3/getaddrinfo.3:744
3654 #, no-wrap
3655 msgid "#define BUF_SIZE 500\n"
3656 msgstr "#define BUF_SIZE 500\n"
3657
3658 #. type: Plain text
3659 #: build/C/man3/getaddrinfo.3:660
3660 #, no-wrap
3661 msgid ""
3662 "int\n"
3663 "main(int argc, char *argv[])\n"
3664 "{\n"
3665 "    struct addrinfo hints;\n"
3666 "    struct addrinfo *result, *rp;\n"
3667 "    int sfd, s;\n"
3668 "    struct sockaddr_storage peer_addr;\n"
3669 "    socklen_t peer_addr_len;\n"
3670 "    ssize_t nread;\n"
3671 "    char buf[BUF_SIZE];\n"
3672 msgstr ""
3673 "int\n"
3674 "main(int argc, char *argv[])\n"
3675 "{\n"
3676 "    struct addrinfo hints;\n"
3677 "    struct addrinfo *result, *rp;\n"
3678 "    int sfd, s;\n"
3679 "    struct sockaddr_storage peer_addr;\n"
3680 "    socklen_t peer_addr_len;\n"
3681 "    ssize_t nread;\n"
3682 "    char buf[BUF_SIZE];\n"
3683
3684 #. type: Plain text
3685 #: build/C/man3/getaddrinfo.3:665
3686 #, no-wrap
3687 msgid ""
3688 "    if (argc != 2) {\n"
3689 "        fprintf(stderr, \"Usage: %s port\\en\", argv[0]);\n"
3690 "        exit(EXIT_FAILURE);\n"
3691 "    }\n"
3692 msgstr ""
3693 "    if (argc != 2) {\n"
3694 "        fprintf(stderr, \"Usage: %s port\\en\", argv[0]);\n"
3695 "        exit(EXIT_FAILURE);\n"
3696 "    }\n"
3697
3698 #. type: Plain text
3699 #: build/C/man3/getaddrinfo.3:674
3700 #, no-wrap
3701 msgid ""
3702 "    memset(&hints, 0, sizeof(struct addrinfo));\n"
3703 "    hints.ai_family = AF_UNSPEC;    /* Allow IPv4 or IPv6 */\n"
3704 "    hints.ai_socktype = SOCK_DGRAM; /* Datagram socket */\n"
3705 "    hints.ai_flags = AI_PASSIVE;    /* For wildcard IP address */\n"
3706 "    hints.ai_protocol = 0;          /* Any protocol */\n"
3707 "    hints.ai_canonname = NULL;\n"
3708 "    hints.ai_addr = NULL;\n"
3709 "    hints.ai_next = NULL;\n"
3710 msgstr ""
3711 "    memset(&hints, 0, sizeof(struct addrinfo));\n"
3712 "    hints.ai_family = AF_UNSPEC;    /* Allow IPv4 or IPv6 */\n"
3713 "    hints.ai_socktype = SOCK_DGRAM; /* Datagram socket */\n"
3714 "    hints.ai_flags = AI_PASSIVE;    /* For wildcard IP address */\n"
3715 "    hints.ai_protocol = 0;          /* Any protocol */\n"
3716 "    hints.ai_canonname = NULL;\n"
3717 "    hints.ai_addr = NULL;\n"
3718 "    hints.ai_next = NULL;\n"
3719
3720 #. type: Plain text
3721 #: build/C/man3/getaddrinfo.3:680
3722 #, no-wrap
3723 msgid ""
3724 "    s = getaddrinfo(NULL, argv[1], &hints, &result);\n"
3725 "    if (s != 0) {\n"
3726 "        fprintf(stderr, \"getaddrinfo: %s\\en\", gai_strerror(s));\n"
3727 "        exit(EXIT_FAILURE);\n"
3728 "    }\n"
3729 msgstr ""
3730 "    s = getaddrinfo(NULL, argv[1], &hints, &result);\n"
3731 "    if (s != 0) {\n"
3732 "        fprintf(stderr, \"getaddrinfo: %s\\en\", gai_strerror(s));\n"
3733 "        exit(EXIT_FAILURE);\n"
3734 "    }\n"
3735
3736 #. type: Plain text
3737 #: build/C/man3/getaddrinfo.3:685
3738 #, no-wrap
3739 msgid ""
3740 "    /* getaddrinfo() returns a list of address structures.\n"
3741 "       Try each address until we successfully bind(2).\n"
3742 "       If socket(2) (or bind(2)) fails, we (close the socket\n"
3743 "       and) try the next address. */\n"
3744 msgstr ""
3745 "    /* getaddrinfo() returns a list of address structures.\n"
3746 "       Try each address until we successfully bind(2).\n"
3747 "       If socket(2) (or bind(2)) fails, we (close the socket\n"
3748 "       and) try the next address. */\n"
3749
3750 #. type: Plain text
3751 #: build/C/man3/getaddrinfo.3:691
3752 #, no-wrap
3753 msgid ""
3754 "    for (rp = result; rp != NULL; rp = rp-E<gt>ai_next) {\n"
3755 "        sfd = socket(rp-E<gt>ai_family, rp-E<gt>ai_socktype,\n"
3756 "                rp-E<gt>ai_protocol);\n"
3757 "        if (sfd == -1)\n"
3758 "            continue;\n"
3759 msgstr ""
3760 "    for (rp = result; rp != NULL; rp = rp-E<gt>ai_next) {\n"
3761 "        sfd = socket(rp-E<gt>ai_family, rp-E<gt>ai_socktype, \n"
3762 "                rp-E<gt>ai_protocol);\n"
3763 "        if (sfd == -1)\n"
3764 "            continue;\n"
3765
3766 #. type: Plain text
3767 #: build/C/man3/getaddrinfo.3:694
3768 #, no-wrap
3769 msgid ""
3770 "        if (bind(sfd, rp-E<gt>ai_addr, rp-E<gt>ai_addrlen) == 0)\n"
3771 "            break;                  /* Success */\n"
3772 msgstr ""
3773 "        if (bind(sfd, rp-E<gt>ai_addr, rp-E<gt>ai_addrlen) == 0)\n"
3774 "            break;                  /* Success */\n"
3775
3776 #. type: Plain text
3777 #: build/C/man3/getaddrinfo.3:697 build/C/man3/getaddrinfo.3:790
3778 #, no-wrap
3779 msgid ""
3780 "        close(sfd);\n"
3781 "    }\n"
3782 msgstr ""
3783 "        close(sfd);\n"
3784 "    }\n"
3785
3786 #. type: Plain text
3787 #: build/C/man3/getaddrinfo.3:702
3788 #, no-wrap
3789 msgid ""
3790 "    if (rp == NULL) {               /* No address succeeded */\n"
3791 "        fprintf(stderr, \"Could not bind\\en\");\n"
3792 "        exit(EXIT_FAILURE);\n"
3793 "    }\n"
3794 msgstr ""
3795 "    if (rp == NULL) {               /* No address succeeded */\n"
3796 "        fprintf(stderr, \"Could not bind\\en\");\n"
3797 "        exit(EXIT_FAILURE);\n"
3798 "    }\n"
3799
3800 #. type: Plain text
3801 #: build/C/man3/getaddrinfo.3:704 build/C/man3/getaddrinfo.3:797
3802 #, no-wrap
3803 msgid "    freeaddrinfo(result);           /* No longer needed */\n"
3804 msgstr "    freeaddrinfo(result);           /* No longer needed */\n"
3805
3806 #. type: Plain text
3807 #: build/C/man3/getaddrinfo.3:706
3808 #, no-wrap
3809 msgid "    /* Read datagrams and echo them back to sender */\n"
3810 msgstr "    /* Read datagrams and echo them back to sender */\n"
3811
3812 #. type: Plain text
3813 #: build/C/man3/getaddrinfo.3:713
3814 #, no-wrap
3815 msgid ""
3816 "    for (;;) {\n"
3817 "        peer_addr_len = sizeof(struct sockaddr_storage);\n"
3818 "        nread = recvfrom(sfd, buf, BUF_SIZE, 0,\n"
3819 "                (struct sockaddr *) &peer_addr, &peer_addr_len);\n"
3820 "        if (nread == -1)\n"
3821 "            continue;               /* Ignore failed request */\n"
3822 msgstr ""
3823 "    for (;;) {\n"
3824 "        peer_addr_len = sizeof(struct sockaddr_storage);\n"
3825 "        nread = recvfrom(sfd, buf, BUF_SIZE, 0,\n"
3826 "                (struct sockaddr *) &peer_addr, &peer_addr_len);\n"
3827 "        if (nread == -1)\n"
3828 "            continue;               /* Ignore failed request */\n"
3829
3830 #. type: Plain text
3831 #: build/C/man3/getaddrinfo.3:715
3832 #, no-wrap
3833 msgid "        char host[NI_MAXHOST], service[NI_MAXSERV];\n"
3834 msgstr "        char host[NI_MAXHOST], service[NI_MAXSERV];\n"
3835
3836 #. type: Plain text
3837 #: build/C/man3/getaddrinfo.3:724
3838 #, no-wrap
3839 msgid ""
3840 "        s = getnameinfo((struct sockaddr *) &peer_addr,\n"
3841 "                        peer_addr_len, host, NI_MAXHOST,\n"
3842 "                        service, NI_MAXSERV, NI_NUMERICSERV);\n"
3843 "       if (s == 0)\n"
3844 "            printf(\"Received %zd bytes from %s:%s\\en\",\n"
3845 "                    nread, host, service);\n"
3846 "        else\n"
3847 "            fprintf(stderr, \"getnameinfo: %s\\en\", gai_strerror(s));\n"
3848 msgstr ""
3849 "        s = getnameinfo((struct sockaddr *) &peer_addr,\n"
3850 "                        peer_addr_len, host, NI_MAXHOST,\n"
3851 "                        service, NI_MAXSERV, NI_NUMERICSERV);\n"
3852 "       if (s == 0)\n"
3853 "            printf(\"Received %zd bytes from %s:%s\\en\",\n"
3854 "                    nread, host, service);\n"
3855 "        else\n"
3856 "            fprintf(stderr, \"getnameinfo: %s\\en\", gai_strerror(s));\n"
3857
3858 #. type: Plain text
3859 #: build/C/man3/getaddrinfo.3:731
3860 #, no-wrap
3861 msgid ""
3862 "        if (sendto(sfd, buf, nread, 0,\n"
3863 "                    (struct sockaddr *) &peer_addr,\n"
3864 "                    peer_addr_len) != nread)\n"
3865 "            fprintf(stderr, \"Error sending response\\en\");\n"
3866 "    }\n"
3867 "}\n"
3868 msgstr ""
3869 "        if (sendto(sfd, buf, nread, 0,\n"
3870 "                    (struct sockaddr *) &peer_addr,\n"
3871 "                    peer_addr_len) != nread)\n"
3872 "            fprintf(stderr, \"Error sending response\\en\");\n"
3873 "    }\n"
3874 "}\n"
3875
3876 #. type: SS
3877 #: build/C/man3/getaddrinfo.3:732
3878 #, no-wrap
3879 msgid "Client program"
3880 msgstr "クライアントのプログラム"
3881
3882 #. type: Plain text
3883 #: build/C/man3/getaddrinfo.3:742
3884 #, no-wrap
3885 msgid ""
3886 "#include E<lt>sys/types.hE<gt>\n"
3887 "#include E<lt>sys/socket.hE<gt>\n"
3888 "#include E<lt>netdb.hE<gt>\n"
3889 "#include E<lt>stdio.hE<gt>\n"
3890 "#include E<lt>stdlib.hE<gt>\n"
3891 "#include E<lt>unistd.hE<gt>\n"
3892 "#include E<lt>string.hE<gt>\n"
3893 msgstr ""
3894 "#include E<lt>sys/types.hE<gt>\n"
3895 "#include E<lt>sys/socket.hE<gt>\n"
3896 "#include E<lt>netdb.hE<gt>\n"
3897 "#include E<lt>stdio.hE<gt>\n"
3898 "#include E<lt>stdlib.hE<gt>\n"
3899 "#include E<lt>unistd.hE<gt>\n"
3900 "#include E<lt>string.hE<gt>\n"
3901
3902 #. type: Plain text
3903 #: build/C/man3/getaddrinfo.3:754
3904 #, no-wrap
3905 msgid ""
3906 "int\n"
3907 "main(int argc, char *argv[])\n"
3908 "{\n"
3909 "    struct addrinfo hints;\n"
3910 "    struct addrinfo *result, *rp;\n"
3911 "    int sfd, s, j;\n"
3912 "    size_t len;\n"
3913 "    ssize_t nread;\n"
3914 "    char buf[BUF_SIZE];\n"
3915 msgstr ""
3916 "int\n"
3917 "main(int argc, char *argv[])\n"
3918 "{\n"
3919 "    struct addrinfo hints;\n"
3920 "    struct addrinfo *result, *rp;\n"
3921 "    int sfd, s, j;\n"
3922 "    size_t len;\n"
3923 "    ssize_t nread;\n"
3924 "    char buf[BUF_SIZE];\n"
3925
3926 #. type: Plain text
3927 #: build/C/man3/getaddrinfo.3:759
3928 #, no-wrap
3929 msgid ""
3930 "    if (argc E<lt> 3) {\n"
3931 "        fprintf(stderr, \"Usage: %s host port msg...\\en\", argv[0]);\n"
3932 "        exit(EXIT_FAILURE);\n"
3933 "    }\n"
3934 msgstr ""
3935 "    if (argc E<lt> 3) {\n"
3936 "        fprintf(stderr, \"Usage: %s host port msg...\\en\", argv[0]);\n"
3937 "        exit(EXIT_FAILURE);\n"
3938 "    }\n"
3939
3940 #. type: Plain text
3941 #: build/C/man3/getaddrinfo.3:761
3942 #, no-wrap
3943 msgid "    /* Obtain address(es) matching host/port */\n"
3944 msgstr "    /* Obtain address(es) matching host/port */\n"
3945
3946 #. type: Plain text
3947 #: build/C/man3/getaddrinfo.3:767
3948 #, no-wrap
3949 msgid ""
3950 "    memset(&hints, 0, sizeof(struct addrinfo));\n"
3951 "    hints.ai_family = AF_UNSPEC;    /* Allow IPv4 or IPv6 */\n"
3952 "    hints.ai_socktype = SOCK_DGRAM; /* Datagram socket */\n"
3953 "    hints.ai_flags = 0;\n"
3954 "    hints.ai_protocol = 0;          /* Any protocol */\n"
3955 msgstr ""
3956 "    memset(&hints, 0, sizeof(struct addrinfo));\n"
3957 "    hints.ai_family = AF_UNSPEC;    /* Allow IPv4 or IPv6 */\n"
3958 "    hints.ai_socktype = SOCK_DGRAM; /* Datagram socket */\n"
3959 "    hints.ai_flags = 0;\n"
3960 "    hints.ai_protocol = 0;          /* Any protocol */\n"
3961
3962 #. type: Plain text
3963 #: build/C/man3/getaddrinfo.3:773
3964 #, no-wrap
3965 msgid ""
3966 "    s = getaddrinfo(argv[1], argv[2], &hints, &result);\n"
3967 "    if (s != 0) {\n"
3968 "        fprintf(stderr, \"getaddrinfo: %s\\en\", gai_strerror(s));\n"
3969 "        exit(EXIT_FAILURE);\n"
3970 "    }\n"
3971 msgstr ""
3972 "    s = getaddrinfo(argv[1], argv[2], &hints, &result);\n"
3973 "    if (s != 0) {\n"
3974 "        fprintf(stderr, \"getaddrinfo: %s\\en\", gai_strerror(s));\n"
3975 "        exit(EXIT_FAILURE);\n"
3976 "    }\n"
3977
3978 #. type: Plain text
3979 #: build/C/man3/getaddrinfo.3:778
3980 #, no-wrap
3981 msgid ""
3982 "    /* getaddrinfo() returns a list of address structures.\n"
3983 "       Try each address until we successfully connect(2).\n"
3984 "       If socket(2) (or connect(2)) fails, we (close the socket\n"
3985 "       and) try the next address. */\n"
3986 msgstr ""
3987 "    /* getaddrinfo() returns a list of address structures.\n"
3988 "       Try each address until we successfully connect(2).\n"
3989 "       If socket(2) (or connect(2)) fails, we (close the socket\n"
3990 "       and) try the next address. */\n"
3991
3992 #. type: Plain text
3993 #: build/C/man3/getaddrinfo.3:784
3994 #, no-wrap
3995 msgid ""
3996 "    for (rp = result; rp != NULL; rp = rp-E<gt>ai_next) {\n"
3997 "        sfd = socket(rp-E<gt>ai_family, rp-E<gt>ai_socktype,\n"
3998 "                     rp-E<gt>ai_protocol);\n"
3999 "        if (sfd == -1)\n"
4000 "            continue;\n"
4001 msgstr ""
4002 "    for (rp = result; rp != NULL; rp = rp-E<gt>ai_next) {\n"
4003 "        sfd = socket(rp-E<gt>ai_family, rp-E<gt>ai_socktype,\n"
4004 "                     rp-E<gt>ai_protocol);\n"
4005 "        if (sfd == -1)\n"
4006 "            continue;\n"
4007
4008 #. type: Plain text
4009 #: build/C/man3/getaddrinfo.3:787
4010 #, no-wrap
4011 msgid ""
4012 "        if (connect(sfd, rp-E<gt>ai_addr, rp-E<gt>ai_addrlen) != -1)\n"
4013 "            break;                  /* Success */\n"
4014 msgstr ""
4015 "        if (connect(sfd, rp-E<gt>ai_addr, rp-E<gt>ai_addrlen) != -1)\n"
4016 "            break;                  /* Success */\n"
4017
4018 #. type: Plain text
4019 #: build/C/man3/getaddrinfo.3:795
4020 #, no-wrap
4021 msgid ""
4022 "    if (rp == NULL) {               /* No address succeeded */\n"
4023 "        fprintf(stderr, \"Could not connect\\en\");\n"
4024 "        exit(EXIT_FAILURE);\n"
4025 "    }\n"
4026 msgstr ""
4027 "    if (rp == NULL) {               /* No address succeeded */\n"
4028 "        fprintf(stderr, \"Could not connect\\en\");\n"
4029 "        exit(EXIT_FAILURE);\n"
4030 "    }\n"
4031
4032 #. type: Plain text
4033 #: build/C/man3/getaddrinfo.3:800
4034 #, no-wrap
4035 msgid ""
4036 "    /* Send remaining command-line arguments as separate\n"
4037 "       datagrams, and read responses from server */\n"
4038 msgstr ""
4039 "    /* Send remaining command-line arguments as separate \n"
4040 "       datagrams, and read responses from server */\n"
4041
4042 #. type: Plain text
4043 #: build/C/man3/getaddrinfo.3:804
4044 #, no-wrap
4045 msgid ""
4046 "    for (j = 3; j E<lt> argc; j++) {\n"
4047 "        len = strlen(argv[j]) + 1;\n"
4048 "                /* +1 for terminating null byte */\n"
4049 msgstr ""
4050 "    for (j = 3; j E<lt> argc; j++) {\n"
4051 "        len = strlen(argv[j]) + 1;\n"
4052 "                /* +1 for terminating null byte */\n"
4053
4054 #. type: Plain text
4055 #: build/C/man3/getaddrinfo.3:810
4056 #, no-wrap
4057 msgid ""
4058 "        if (len + 1 E<gt> BUF_SIZE) {\n"
4059 "            fprintf(stderr,\n"
4060 "                    \"Ignoring long message in argument %d\\en\", j);\n"
4061 "            continue;\n"
4062 "        }\n"
4063 msgstr ""
4064 "        if (len + 1 E<gt> BUF_SIZE) {\n"
4065 "            fprintf(stderr,\n"
4066 "                    \"Ignoring long message in argument %d\\en\", j);\n"
4067 "            continue;\n"
4068 "        }\n"
4069
4070 #. type: Plain text
4071 #: build/C/man3/getaddrinfo.3:815
4072 #, no-wrap
4073 msgid ""
4074 "        if (write(sfd, argv[j], len) != len) {\n"
4075 "            fprintf(stderr, \"partial/failed write\\en\");\n"
4076 "            exit(EXIT_FAILURE);\n"
4077 "        }\n"
4078 msgstr ""
4079 "        if (write(sfd, argv[j], len) != len) {\n"
4080 "            fprintf(stderr, \"partial/failed write\\en\");\n"
4081 "            exit(EXIT_FAILURE);\n"
4082 "        }\n"
4083
4084 #. type: Plain text
4085 #: build/C/man3/getaddrinfo.3:821
4086 #, no-wrap
4087 msgid ""
4088 "        nread = read(sfd, buf, BUF_SIZE);\n"
4089 "        if (nread == -1) {\n"
4090 "            perror(\"read\");\n"
4091 "            exit(EXIT_FAILURE);\n"
4092 "        }\n"
4093 msgstr ""
4094 "        nread = read(sfd, buf, BUF_SIZE);\n"
4095 "        if (nread == -1) {\n"
4096 "            perror(\"read\");\n"
4097 "            exit(EXIT_FAILURE);\n"
4098 "        }\n"
4099
4100 #. type: Plain text
4101 #: build/C/man3/getaddrinfo.3:824
4102 #, no-wrap
4103 msgid ""
4104 "        printf(\"Received %zd bytes: %s\\en\", nread, buf);\n"
4105 "    }\n"
4106 msgstr ""
4107 "        printf(\"Received %zd bytes: %s\\en\", nread, buf);\n"
4108 "    }\n"
4109
4110 #.  .BR getipnodebyaddr (3),
4111 #.  .BR getipnodebyname (3),
4112 #. type: Plain text
4113 #: build/C/man3/getaddrinfo.3:838
4114 msgid ""
4115 "B<getaddrinfo_a>(3), B<gethostbyname>(3), B<getnameinfo>(3), B<inet>(3), "
4116 "B<gai.conf>(5), B<hostname>(7), B<ip>(7)"
4117 msgstr ""
4118 "B<getaddrinfo_a>(3), B<gethostbyname>(3), B<getnameinfo>(3), B<inet>(3), "
4119 "B<gai.conf>(5), B<hostname>(7), B<ip>(7)"
4120
4121 #. type: TH
4122 #: build/C/man3/getaddrinfo_a.3:29
4123 #, no-wrap
4124 msgid "GETADDRINFO_A"
4125 msgstr "GETADDRINFO_A"
4126
4127 #. type: TH
4128 #: build/C/man3/getaddrinfo_a.3:29 build/C/man3/getnameinfo.3:10
4129 #: build/C/man3/inet.3:42 build/C/man3/inet_net_pton.3:26
4130 #: build/C/man3/rcmd.3:43 build/C/man3/resolver.3:32 build/C/man3/rexec.3:41
4131 #: build/C/man3/setnetgrent.3:10
4132 #, no-wrap
4133 msgid "2014-05-28"
4134 msgstr "2014-05-28"
4135
4136 #. type: Plain text
4137 #: build/C/man3/getaddrinfo_a.3:33
4138 msgid ""
4139 "getaddrinfo_a, gai_suspend, gai_error, gai_cancel - asynchronous network "
4140 "address and service translation"
4141 msgstr ""
4142
4143 #. type: Plain text
4144 #: build/C/man3/getaddrinfo_a.3:37
4145 #, no-wrap
4146 msgid ""
4147 "B<#define _GNU_SOURCE>         /* See feature_test_macros(7) */\n"
4148 "B<#include E<lt>netdb.hE<gt>>\n"
4149 msgstr ""
4150 "B<#define _GNU_SOURCE>         /* feature_test_macros(7) 参照 */\n"
4151 "B<#include E<lt>netdb.hE<gt>>\n"
4152
4153 #. type: Plain text
4154 #: build/C/man3/getaddrinfo_a.3:40
4155 #, no-wrap
4156 msgid ""
4157 "B<int getaddrinfo_a(int >I<mode>B<, struct gaicb *>I<list[]>B<,>\n"
4158 "B<                int >I<nitems>B<, struct sigevent *>I<sevp>B<);>\n"
4159 msgstr ""
4160 "B<int getaddrinfo_a(int >I<mode>B<, struct gaicb *>I<list[]>B<,>\n"
4161 "B<                int >I<nitems>B<, struct sigevent *>I<sevp>B<);>\n"
4162
4163 #. type: Plain text
4164 #: build/C/man3/getaddrinfo_a.3:43
4165 #, no-wrap
4166 msgid ""
4167 "B<int gai_suspend(const struct gaicb * const >I<list[]>B<, int >I<nitems>B<,>\n"
4168 "B<                const struct timespec *>I<timeout>B<);>\n"
4169 msgstr ""
4170 "B<int gai_suspend(const struct gaicb * const >I<list[]>B<, int >I<nitems>B<,>\n"
4171 "B<                const struct timespec *>I<timeout>B<);>\n"
4172
4173 #. type: Plain text
4174 #: build/C/man3/getaddrinfo_a.3:45
4175 #, no-wrap
4176 msgid "B<int gai_error(struct gaicb *>I<req>B<);>\n"
4177 msgstr "B<int gai_error(struct gaicb *>I<req>B<);>\n"
4178
4179 #. type: Plain text
4180 #: build/C/man3/getaddrinfo_a.3:47
4181 #, no-wrap
4182 msgid "B<int gai_cancel(struct gaicb *>I<req>B<);>\n"
4183 msgstr "B<int gai_cancel(struct gaicb *>I<req>B<);>\n"
4184
4185 #. type: Plain text
4186 #: build/C/man3/getaddrinfo_a.3:49
4187 #, no-wrap
4188 msgid "Link with I<-lanl>.\n"
4189 msgstr "I<-lanl> でリンクする。\n"
4190
4191 #. type: Plain text
4192 #: build/C/man3/getaddrinfo_a.3:57
4193 msgid ""
4194 "The B<getaddrinfo_a>()  function performs the same task as "
4195 "B<getaddrinfo>(3), but allows multiple name look-ups to be performed "
4196 "asynchronously, with optional notification on completion of look-up "
4197 "operations."
4198 msgstr ""
4199
4200 #. type: Plain text
4201 #: build/C/man3/getaddrinfo_a.3:61
4202 msgid "The I<mode> argument has one of the following values:"
4203 msgstr ""
4204
4205 #. type: TP
4206 #: build/C/man3/getaddrinfo_a.3:61
4207 #, no-wrap
4208 msgid "B<GAI_WAIT>"
4209 msgstr "B<GAI_WAIT>"
4210
4211 #. type: Plain text
4212 #: build/C/man3/getaddrinfo_a.3:65
4213 msgid ""
4214 "Perform the look-ups synchronously.  The call blocks until the look-ups have "
4215 "completed."
4216 msgstr ""
4217
4218 #. type: TP
4219 #: build/C/man3/getaddrinfo_a.3:65
4220 #, no-wrap
4221 msgid "B<GAI_NOWAIT>"
4222 msgstr "B<GAI_NOWAIT>"
4223
4224 #. type: Plain text
4225 #: build/C/man3/getaddrinfo_a.3:73
4226 msgid ""
4227 "Perform the look-ups asynchronously.  The call returns immediately, and the "
4228 "requests are resolved in the background.  See the discussion of the I<sevp> "
4229 "argument below."
4230 msgstr ""
4231
4232 #. type: Plain text
4233 #: build/C/man3/getaddrinfo_a.3:88
4234 msgid ""
4235 "The array I<list> specifies the look-up requests to process.  The I<nitems> "
4236 "argument specifies the number of elements in I<list>.  The requested look-up "
4237 "operations are started in parallel.  NULL elements in I<list> are ignored.  "
4238 "Each request is described by a I<gaicb> structure, defined as follows:"
4239 msgstr ""
4240
4241 #. type: Plain text
4242 #: build/C/man3/getaddrinfo_a.3:97
4243 #, no-wrap
4244 msgid ""
4245 "struct gaicb {\n"
4246 "    const char            *ar_name;\n"
4247 "    const char            *ar_service;\n"
4248 "    const struct addrinfo *ar_request;\n"
4249 "    struct addrinfo       *ar_result;\n"
4250 "};\n"
4251 msgstr ""
4252 "struct gaicb {\n"
4253 "    const char            *ar_name;\n"
4254 "    const char            *ar_service;\n"
4255 "    const struct addrinfo *ar_request;\n"
4256 "    struct addrinfo       *ar_result;\n"
4257 "};\n"
4258
4259 #. type: Plain text
4260 #: build/C/man3/getaddrinfo_a.3:128
4261 msgid ""
4262 "The elements of this structure correspond to the arguments of "
4263 "B<getaddrinfo>(3).  Thus, I<ar_name> corresponds to the I<node> argument and "
4264 "I<ar_service> to the I<service> argument, identifying an Internet host and a "
4265 "service.  The I<ar_request> element corresponds to the I<hints> argument, "
4266 "specifying the criteria for selecting the returned socket address "
4267 "structures.  Finally, I<ar_result> corresponds to the I<res> argument; you "
4268 "do not need to initialize this element, it will be automatically set when "
4269 "the request is resolved.  The I<addrinfo> structure referenced by the last "
4270 "two elements is described in B<getaddrinfo>(3)."
4271 msgstr ""
4272
4273 #. type: Plain text
4274 #: build/C/man3/getaddrinfo_a.3:144
4275 msgid ""
4276 "When I<mode> is specified as B<GAI_NOWAIT>, notifications about resolved "
4277 "requests can be obtained by employing the I<sigevent> structure pointed to "
4278 "by the I<sevp> argument.  For the definition and general details of this "
4279 "structure, see B<sigevent>(7).  The I<sevp-E<gt>sigev_notify> field can have "
4280 "the following values:"
4281 msgstr ""
4282
4283 #. type: TP
4284 #: build/C/man3/getaddrinfo_a.3:144
4285 #, no-wrap
4286 msgid "B<SIGEV_NONE>"
4287 msgstr "B<SIGEV_NONE>"
4288
4289 #. type: Plain text
4290 #: build/C/man3/getaddrinfo_a.3:147
4291 msgid "Don't provide any notification."
4292 msgstr ""
4293
4294 #. type: TP
4295 #: build/C/man3/getaddrinfo_a.3:147
4296 #, no-wrap
4297 msgid "B<SIGEV_SIGNAL>"
4298 msgstr "B<SIGEV_SIGNAL>"
4299
4300 #.  si_pid and si_uid are also set, to the values of the calling process,
4301 #.  which doesn't provide useful information, so we'll skip mentioning it.
4302 #. type: Plain text
4303 #: build/C/man3/getaddrinfo_a.3:163
4304 msgid ""
4305 "When a look-up completes, generate the signal I<sigev_signo> for the "
4306 "process.  See B<sigevent>(7)  for general details.  The I<si_code> field of "
4307 "the I<siginfo_t> structure will be set to B<SI_ASYNCNL>."
4308 msgstr ""
4309
4310 #. type: TP
4311 #: build/C/man3/getaddrinfo_a.3:163
4312 #, no-wrap
4313 msgid "B<SIGEV_THREAD>"
4314 msgstr "B<SIGEV_THREAD>"
4315
4316 #. type: Plain text
4317 #: build/C/man3/getaddrinfo_a.3:171
4318 msgid ""
4319 "When a look-up completes, invoke I<sigev_notify_function> as if it were the "
4320 "start function of a new thread.  See B<sigevent>(7)  for details."
4321 msgstr ""
4322
4323 #. type: Plain text
4324 #: build/C/man3/getaddrinfo_a.3:180
4325 msgid ""
4326 "For B<SIGEV_SIGNAL> and B<SIGEV_THREAD>, it may be useful to point I<sevp-"
4327 "E<gt>sigev_value.sival_ptr> to I<list>."
4328 msgstr ""
4329
4330 #. type: Plain text
4331 #: build/C/man3/getaddrinfo_a.3:191
4332 msgid ""
4333 "The B<gai_suspend>()  function suspends execution of the calling thread, "
4334 "waiting for the completion of one or more requests in the array I<list>.  "
4335 "The I<nitems> argument specifies the size of the array I<list>.  The call "
4336 "blocks until one of the following occurs:"
4337 msgstr ""
4338
4339 #. type: Plain text
4340 #: build/C/man3/getaddrinfo_a.3:195
4341 msgid "One or more of the operations in I<list> completes."
4342 msgstr ""
4343
4344 #. type: Plain text
4345 #: build/C/man3/getaddrinfo_a.3:197
4346 msgid "The call is interrupted by a signal that is caught."
4347 msgstr ""
4348
4349 #. type: Plain text
4350 #: build/C/man3/getaddrinfo_a.3:210
4351 msgid ""
4352 "The time interval specified in I<timeout> elapses.  This argument specifies "
4353 "a timeout in seconds plus nanoseconds (see B<nanosleep>(2)  for details of "
4354 "the I<timespec> structure).  If I<timeout> is NULL, then the call blocks "
4355 "indefinitely (until one of the events above occurs)."
4356 msgstr ""
4357
4358 #. type: Plain text
4359 #: build/C/man3/getaddrinfo_a.3:215
4360 msgid ""
4361 "No explicit indication of which request was completed is given; you must "
4362 "determine which request(s) have completed by iterating with B<gai_error>()  "
4363 "over the list of requests."
4364 msgstr ""
4365
4366 #. type: Plain text
4367 #: build/C/man3/getaddrinfo_a.3:225
4368 msgid ""
4369 "The B<gai_error>()  function returns the status of the request I<req>: "
4370 "either B<EAI_INPROGRESS> if the request was not completed yet, 0 if it was "
4371 "handled successfully, or an error code if the request could not be resolved."
4372 msgstr ""
4373
4374 #. type: Plain text
4375 #: build/C/man3/getaddrinfo_a.3:242
4376 msgid ""
4377 "The B<gai_cancel>()  function cancels the request I<req>.  If the request "
4378 "has been canceled successfully, the error status of the request will be set "
4379 "to B<EAI_CANCELLED> and normal asynchronous notification will be performed.  "
4380 "The request cannot be canceled if it is currently being processed; in that "
4381 "case, it will be handled as if B<gai_cancel>()  has never been called.  If "
4382 "I<req> is NULL, an attempt is made to cancel all outstanding requests that "
4383 "the process has made."
4384 msgstr ""
4385
4386 #. type: Plain text
4387 #: build/C/man3/getaddrinfo_a.3:247
4388 msgid ""
4389 "The B<getaddrinfo_a>()  function returns 0 if all of the requests have been "
4390 "enqueued successfully, or one of the following nonzero error codes:"
4391 msgstr ""
4392
4393 #. type: Plain text
4394 #: build/C/man3/getaddrinfo_a.3:252
4395 msgid ""
4396 "The resources necessary to enqueue the look-up requests were not available.  "
4397 "The application may check the error status of each request to determine "
4398 "which ones failed."
4399 msgstr ""
4400
4401 #. type: Plain text
4402 #: build/C/man3/getaddrinfo_a.3:259
4403 msgid "I<mode> is invalid."
4404 msgstr ""
4405
4406 #. type: Plain text
4407 #: build/C/man3/getaddrinfo_a.3:264
4408 msgid ""
4409 "The B<gai_suspend>()  function returns 0 if at least one of the listed "
4410 "requests has been completed.  Otherwise, it returns one of the following "
4411 "nonzero error codes:"
4412 msgstr ""
4413
4414 #. type: Plain text
4415 #: build/C/man3/getaddrinfo_a.3:267
4416 msgid ""
4417 "The given timeout expired before any of the requests could be completed."
4418 msgstr ""
4419
4420 #. type: TP
4421 #: build/C/man3/getaddrinfo_a.3:267 build/C/man3/getaddrinfo_a.3:297
4422 #, no-wrap
4423 msgid "B<EAI_ALLDONE>"
4424 msgstr "B<EAI_ALLDONE>"
4425
4426 #. type: Plain text
4427 #: build/C/man3/getaddrinfo_a.3:270
4428 msgid "There were no actual requests given to the function."
4429 msgstr ""
4430
4431 #. type: TP
4432 #: build/C/man3/getaddrinfo_a.3:270
4433 #, no-wrap
4434 msgid "B<EAI_INTR>"
4435 msgstr "B<EAI_INTR>"
4436
4437 #. type: Plain text
4438 #: build/C/man3/getaddrinfo_a.3:275
4439 msgid ""
4440 "A signal has interrupted the function.  Note that this interruption might "
4441 "have been caused by signal notification of some completed look-up request."
4442 msgstr ""
4443
4444 #. type: Plain text
4445 #: build/C/man3/getaddrinfo_a.3:287
4446 msgid ""
4447 "The B<gai_error>()  function can return B<EAI_INPROGRESS> for an unfinished "
4448 "look-up request, 0 for a successfully completed look-up (as described "
4449 "above), one of the error codes that could be returned by B<getaddrinfo>(3), "
4450 "or the error code B<EAI_CANCELLED> if the request has been canceled "
4451 "explicitly before it could be finished."
4452 msgstr ""
4453
4454 #. type: Plain text
4455 #: build/C/man3/getaddrinfo_a.3:291
4456 msgid "The B<gai_cancel>()  function can return one of these values:"
4457 msgstr ""
4458
4459 #. type: TP
4460 #: build/C/man3/getaddrinfo_a.3:291
4461 #, no-wrap
4462 msgid "B<EAI_CANCELLED>"
4463 msgstr "B<EAI_CANCELLED>"
4464
4465 #. type: Plain text
4466 #: build/C/man3/getaddrinfo_a.3:294
4467 msgid "The request has been canceled successfully."
4468 msgstr ""
4469
4470 #. type: TP
4471 #: build/C/man3/getaddrinfo_a.3:294
4472 #, no-wrap
4473 msgid "B<EAI_NOTCANCELLED>"
4474 msgstr "B<EAI_NOTCANCELLED>"
4475
4476 #. type: Plain text
4477 #: build/C/man3/getaddrinfo_a.3:297
4478 msgid "The request has not been canceled."
4479 msgstr ""
4480
4481 #. type: Plain text
4482 #: build/C/man3/getaddrinfo_a.3:300
4483 msgid "The request has already completed."
4484 msgstr ""
4485
4486 #. type: Plain text
4487 #: build/C/man3/getaddrinfo_a.3:305 build/C/man3/getnameinfo.3:197
4488 msgid ""
4489 "The B<gai_strerror>(3)  function translates these error codes to a human "
4490 "readable string, suitable for error reporting."
4491 msgstr ""
4492 "B<gai_strerror>(3) 関数を使うと、これらのエラー・コードを、エラー・レポートに"
4493 "適した 人間が読みやすい文字列に翻訳してくれる。"
4494
4495 #. type: Plain text
4496 #: build/C/man3/getaddrinfo_a.3:308
4497 msgid ""
4498 "These functions are GNU extensions; they first appeared in glibc in version "
4499 "2.2.3."
4500 msgstr ""
4501
4502 #. type: Plain text
4503 #: build/C/man3/getaddrinfo_a.3:314
4504 msgid ""
4505 "The interface of B<getaddrinfo_a>()  was modeled after the B<lio_listio>(3)  "
4506 "interface."
4507 msgstr ""
4508
4509 #. type: Plain text
4510 #: build/C/man3/getaddrinfo_a.3:318
4511 msgid ""
4512 "Two examples are provided: a simple example that resolves several requests "
4513 "in parallel synchronously, and a complex example showing some of the "
4514 "asynchronous capabilities."
4515 msgstr ""
4516
4517 #. type: SS
4518 #: build/C/man3/getaddrinfo_a.3:318
4519 #, no-wrap
4520 msgid "Synchronous example"
4521 msgstr ""
4522
4523 #. type: Plain text
4524 #: build/C/man3/getaddrinfo_a.3:323
4525 msgid ""
4526 "The program below simply resolves several hostnames in parallel, giving a "
4527 "speed-up compared to resolving the hostnames sequentially using "
4528 "B<getaddrinfo>(3).  The program might be used like this:"
4529 msgstr ""
4530
4531 #. type: Plain text
4532 #: build/C/man3/getaddrinfo_a.3:330
4533 #, no-wrap
4534 msgid ""
4535 "$ B<./a.out ftp.us.kernel.org enoent.linuxfoundation.org gnu.cz>\n"
4536 "ftp.us.kernel.org: 128.30.2.36\n"
4537 "enoent.linuxfoundation.org: Name or service not known\n"
4538 "gnu.cz: 87.236.197.13\n"
4539 msgstr ""
4540 "$ B<./a.out ftp.us.kernel.org enoent.linuxfoundation.org gnu.cz>\n"
4541 "ftp.us.kernel.org: 128.30.2.36\n"
4542 "enoent.linuxfoundation.org: Name or service not known\n"
4543 "gnu.cz: 87.236.197.13\n"
4544
4545 #. type: Plain text
4546 #: build/C/man3/getaddrinfo_a.3:334
4547 msgid "Here is the program source code"
4548 msgstr ""
4549
4550 #. type: Plain text
4551 #: build/C/man3/getaddrinfo_a.3:341 build/C/man3/getaddrinfo_a.3:430
4552 #, no-wrap
4553 msgid ""
4554 "#define _GNU_SOURCE\n"
4555 "#include E<lt>netdb.hE<gt>\n"
4556 "#include E<lt>stdio.hE<gt>\n"
4557 "#include E<lt>stdlib.hE<gt>\n"
4558 "#include E<lt>string.hE<gt>\n"
4559 msgstr ""
4560 "#define _GNU_SOURCE\n"
4561 "#include E<lt>netdb.hE<gt>\n"
4562 "#include E<lt>stdio.hE<gt>\n"
4563 "#include E<lt>stdlib.hE<gt>\n"
4564 "#include E<lt>string.hE<gt>\n"
4565
4566 #. type: Plain text
4567 #: build/C/man3/getaddrinfo_a.3:349
4568 #, no-wrap
4569 msgid ""
4570 "int\n"
4571 "main(int argc, char *argv[])\n"
4572 "{\n"
4573 "    int i, ret;\n"
4574 "    struct gaicb *reqs[argc - 1];\n"
4575 "    char host[NI_MAXHOST];\n"
4576 "    struct addrinfo *res;\n"
4577 msgstr ""
4578 "int\n"
4579 "main(int argc, char *argv[])\n"
4580 "{\n"
4581 "    int i, ret;\n"
4582 "    struct gaicb *reqs[argc - 1];\n"
4583 "    char host[NI_MAXHOST];\n"
4584 "    struct addrinfo *res;\n"
4585
4586 #. type: Plain text
4587 #: build/C/man3/getaddrinfo_a.3:354
4588 #, no-wrap
4589 msgid ""
4590 "    if (argc E<lt> 2) {\n"
4591 "        fprintf(stderr, \"Usage: %s HOST...\\en\", argv[0]);\n"
4592 "        exit(EXIT_FAILURE);\n"
4593 "    }\n"
4594 msgstr ""
4595 "    if (argc E<lt> 2) {\n"
4596 "        fprintf(stderr, \"Usage: %s HOST...\\en\", argv[0]);\n"
4597 "        exit(EXIT_FAILURE);\n"
4598 "    }\n"
4599
4600 #. type: Plain text
4601 #: build/C/man3/getaddrinfo_a.3:364
4602 #, no-wrap
4603 msgid ""
4604 "    for (i = 0; i E<lt> argc - 1; i++) {\n"
4605 "        reqs[i] = malloc(sizeof(*reqs[0]));\n"
4606 "        if (reqs[i] == NULL) {\n"
4607 "            perror(\"malloc\");\n"
4608 "            exit(EXIT_FAILURE);\n"
4609 "        }\n"
4610 "        memset(reqs[i], 0, sizeof(*reqs[0]));\n"
4611 "        reqs[i]-E<gt>ar_name = argv[i + 1];\n"
4612 "    }\n"
4613 msgstr ""
4614 "    for (i = 0; i E<lt> argc - 1; i++) {\n"
4615 "        reqs[i] = malloc(sizeof(*reqs[0]));\n"
4616 "        if (reqs[i] == NULL) {\n"
4617 "            perror(\"malloc\");\n"
4618 "            exit(EXIT_FAILURE);\n"
4619 "        }\n"
4620 "        memset(reqs[i], 0, sizeof(*reqs[0]));\n"
4621 "        reqs[i]-E<gt>ar_name = argv[i + 1];\n"
4622 "    }\n"
4623
4624 #. type: Plain text
4625 #: build/C/man3/getaddrinfo_a.3:371
4626 #, no-wrap
4627 msgid ""
4628 "    ret = getaddrinfo_a(GAI_WAIT, reqs, argc - 1, NULL);\n"
4629 "    if (ret != 0) {\n"
4630 "        fprintf(stderr, \"getaddrinfo_a() failed: %s\\en\",\n"
4631 "                gai_strerror(ret));\n"
4632 "        exit(EXIT_FAILURE);\n"
4633 "    }\n"
4634 msgstr ""
4635 "    ret = getaddrinfo_a(GAI_WAIT, reqs, argc - 1, NULL);\n"
4636 "    if (ret != 0) {\n"
4637 "        fprintf(stderr, \"getaddrinfo_a() failed: %s\\en\",\n"
4638 "                gai_strerror(ret));\n"
4639 "        exit(EXIT_FAILURE);\n"
4640 "    }\n"
4641
4642 #. type: Plain text
4643 #: build/C/man3/getaddrinfo_a.3:377
4644 #, no-wrap
4645 msgid ""
4646 "    for (i = 0; i E<lt> argc - 1; i++) {\n"
4647 "        printf(\"%s: \", reqs[i]-E<gt>ar_name);\n"
4648 "        ret = gai_error(reqs[i]);\n"
4649 "        if (ret == 0) {\n"
4650 "            res = reqs[i]-E<gt>ar_result;\n"
4651 msgstr ""
4652 "    for (i = 0; i E<lt> argc - 1; i++) {\n"
4653 "        printf(\"%s: \", reqs[i]-E<gt>ar_name);\n"
4654 "        ret = gai_error(reqs[i]);\n"
4655 "        if (ret == 0) {\n"
4656 "            res = reqs[i]-E<gt>ar_result;\n"
4657
4658 #. type: Plain text
4659 #: build/C/man3/getaddrinfo_a.3:387
4660 #, no-wrap
4661 msgid ""
4662 "            ret = getnameinfo(res-E<gt>ai_addr, res-E<gt>ai_addrlen,\n"
4663 "                    host, sizeof(host),\n"
4664 "                    NULL, 0, NI_NUMERICHOST);\n"
4665 "            if (ret != 0) {\n"
4666 "                fprintf(stderr, \"getnameinfo() failed: %s\\en\",\n"
4667 "                        gai_strerror(ret));\n"
4668 "                exit(EXIT_FAILURE);\n"
4669 "            }\n"
4670 "            puts(host);\n"
4671 msgstr ""
4672 "            ret = getnameinfo(res-E<gt>ai_addr, res-E<gt>ai_addrlen,\n"
4673 "                    host, sizeof(host),\n"
4674 "                    NULL, 0, NI_NUMERICHOST);\n"
4675 "            if (ret != 0) {\n"
4676 "                fprintf(stderr, \"getnameinfo() failed: %s\\en\",\n"
4677 "                        gai_strerror(ret));\n"
4678 "                exit(EXIT_FAILURE);\n"
4679 "            }\n"
4680 "            puts(host);\n"
4681
4682 #. type: Plain text
4683 #: build/C/man3/getaddrinfo_a.3:394
4684 #, no-wrap
4685 msgid ""
4686 "        } else {\n"
4687 "            puts(gai_strerror(ret));\n"
4688 "        }\n"
4689 "    }\n"
4690 "    exit(EXIT_SUCCESS);\n"
4691 "}\n"
4692 msgstr ""
4693 "        } else {\n"
4694 "            puts(gai_strerror(ret));\n"
4695 "        }\n"
4696 "    }\n"
4697 "    exit(EXIT_SUCCESS);\n"
4698 "}\n"
4699
4700 #. type: SS
4701 #: build/C/man3/getaddrinfo_a.3:395
4702 #, no-wrap
4703 msgid "Asynchronous example"
4704 msgstr ""
4705
4706 #. type: Plain text
4707 #: build/C/man3/getaddrinfo_a.3:400
4708 msgid ""
4709 "This example shows a simple interactive B<getaddrinfo_a>()  front-end.  The "
4710 "notification facility is not demonstrated."
4711 msgstr ""
4712
4713 #. type: Plain text
4714 #: build/C/man3/getaddrinfo_a.3:402
4715 msgid "An example session might look like this:"
4716 msgstr ""
4717
4718 #. type: Plain text
4719 #: build/C/man3/getaddrinfo_a.3:419
4720 #, no-wrap
4721 msgid ""
4722 "$ B<./a.out>\n"
4723 "E<gt> a ftp.us.kernel.org enoent.linuxfoundation.org gnu.cz\n"
4724 "E<gt> c 2\n"
4725 "[2] gnu.cz: Request not canceled\n"
4726 "E<gt> w 0 1\n"
4727 "[00] ftp.us.kernel.org: Finished\n"
4728 "E<gt> l\n"
4729 "[00] ftp.us.kernel.org: 216.165.129.139\n"
4730 "[01] enoent.linuxfoundation.org: Processing request in progress\n"
4731 "[02] gnu.cz: 87.236.197.13\n"
4732 "E<gt> l\n"
4733 "[00] ftp.us.kernel.org: 216.165.129.139\n"
4734 "[01] enoent.linuxfoundation.org: Name or service not known\n"
4735 "[02] gnu.cz: 87.236.197.13\n"
4736 msgstr ""
4737 "$ B<./a.out>\n"
4738 "E<gt> a ftp.us.kernel.org enoent.linuxfoundation.org gnu.cz\n"
4739 "E<gt> c 2\n"
4740 "[2] gnu.cz: Request not canceled\n"
4741 "E<gt> w 0 1\n"
4742 "[00] ftp.us.kernel.org: Finished\n"
4743 "E<gt> l\n"
4744 "[00] ftp.us.kernel.org: 216.165.129.139\n"
4745 "[01] enoent.linuxfoundation.org: Processing request in progress\n"
4746 "[02] gnu.cz: 87.236.197.13\n"
4747 "E<gt> l\n"
4748 "[00] ftp.us.kernel.org: 216.165.129.139\n"
4749 "[01] enoent.linuxfoundation.org: Name or service not known\n"
4750 "[02] gnu.cz: 87.236.197.13\n"
4751
4752 #. type: Plain text
4753 #: build/C/man3/getaddrinfo_a.3:423
4754 msgid "The program source is as follows:"
4755 msgstr ""
4756
4757 #. type: Plain text
4758 #: build/C/man3/getaddrinfo_a.3:433
4759 #, no-wrap
4760 msgid ""
4761 "static struct gaicb **reqs = NULL;\n"
4762 "static int nreqs = 0;\n"
4763 msgstr ""
4764 "static struct gaicb **reqs = NULL;\n"
4765 "static int nreqs = 0;\n"
4766
4767 #. type: Plain text
4768 #: build/C/man3/getaddrinfo_a.3:438
4769 #, no-wrap
4770 msgid ""
4771 "static char *\n"
4772 "getcmd(void)\n"
4773 "{\n"
4774 "    static char buf[256];\n"
4775 msgstr ""
4776 "static char *\n"
4777 "getcmd(void)\n"
4778 "{\n"
4779 "    static char buf[256];\n"
4780
4781 #. type: Plain text
4782 #: build/C/man3/getaddrinfo_a.3:442
4783 #, no-wrap
4784 msgid ""
4785 "    fputs(\"E<gt> \", stdout); fflush(stdout);\n"
4786 "    if (fgets(buf, sizeof(buf), stdin) == NULL)\n"
4787 "        return NULL;\n"
4788 msgstr ""
4789 "    fputs(\"E<gt> \", stdout); fflush(stdout);\n"
4790 "    if (fgets(buf, sizeof(buf), stdin) == NULL)\n"
4791 "        return NULL;\n"
4792
4793 #. type: Plain text
4794 #: build/C/man3/getaddrinfo_a.3:445
4795 #, no-wrap
4796 msgid ""
4797 "    if (buf[strlen(buf) - 1] == \\(aq\\en\\(aq)\n"
4798 "        buf[strlen(buf) - 1] = 0;\n"
4799 msgstr ""
4800 "    if (buf[strlen(buf) - 1] == \\(aq\\en\\(aq)\n"
4801 "        buf[strlen(buf) - 1] = 0;\n"
4802
4803 #. type: Plain text
4804 #: build/C/man3/getaddrinfo_a.3:448
4805 #, no-wrap
4806 msgid ""
4807 "    return buf;\n"
4808 "}\n"
4809 msgstr ""
4810 "    return buf;\n"
4811 "}\n"
4812
4813 #. type: Plain text
4814 #: build/C/man3/getaddrinfo_a.3:456
4815 #, no-wrap
4816 msgid ""
4817 "/* Add requests for specified hostnames */\n"
4818 "static void\n"
4819 "add_requests(void)\n"
4820 "{\n"
4821 "    int nreqs_base = nreqs;\n"
4822 "    char *host;\n"
4823 "    int ret;\n"
4824 msgstr ""
4825 "/* Add requests for specified hostnames */\n"
4826 "static void\n"
4827 "add_requests(void)\n"
4828 "{\n"
4829 "    int nreqs_base = nreqs;\n"
4830 "    char *host;\n"
4831 "    int ret;\n"
4832
4833 #. type: Plain text
4834 #: build/C/man3/getaddrinfo_a.3:460
4835 #, no-wrap
4836 msgid ""
4837 "    while ((host = strtok(NULL, \" \"))) {\n"
4838 "        nreqs++;\n"
4839 "        reqs = realloc(reqs, nreqs * sizeof(reqs[0]));\n"
4840 msgstr ""
4841 "    while ((host = strtok(NULL, \" \"))) {\n"
4842 "        nreqs++;\n"
4843 "        reqs = realloc(reqs, nreqs * sizeof(reqs[0]));\n"
4844
4845 #. type: Plain text
4846 #: build/C/man3/getaddrinfo_a.3:464
4847 #, no-wrap
4848 msgid ""
4849 "        reqs[nreqs - 1] = calloc(1, sizeof(*reqs[0]));\n"
4850 "        reqs[nreqs - 1]-E<gt>ar_name = strdup(host);\n"
4851 "    }\n"
4852 msgstr ""
4853 "        reqs[nreqs - 1] = calloc(1, sizeof(*reqs[0]));\n"
4854 "        reqs[nreqs - 1]-E<gt>ar_name = strdup(host);\n"
4855 "    }\n"
4856
4857 #. type: Plain text
4858 #: build/C/man3/getaddrinfo_a.3:466
4859 #, no-wrap
4860 msgid "    /* Queue nreqs_base..nreqs requests. */\n"
4861 msgstr "    /* Queue nreqs_base..nreqs requests. */\n"
4862
4863 #. type: Plain text
4864 #: build/C/man3/getaddrinfo_a.3:475
4865 #, no-wrap
4866 msgid ""
4867 "    ret = getaddrinfo_a(GAI_NOWAIT, &reqs[nreqs_base],\n"
4868 "                        nreqs - nreqs_base, NULL);\n"
4869 "    if (ret) {\n"
4870 "        fprintf(stderr, \"getaddrinfo_a() failed: %s\\en\",\n"
4871 "                gai_strerror(ret));\n"
4872 "        exit(EXIT_FAILURE);\n"
4873 "    }\n"
4874 "}\n"
4875 msgstr ""
4876 "    ret = getaddrinfo_a(GAI_NOWAIT, &reqs[nreqs_base],\n"
4877 "                        nreqs - nreqs_base, NULL);\n"
4878 "    if (ret) {\n"
4879 "        fprintf(stderr, \"getaddrinfo_a() failed: %s\\en\",\n"
4880 "                gai_strerror(ret));\n"
4881 "        exit(EXIT_FAILURE);\n"
4882 "    }\n"
4883 "}\n"
4884
4885 #. type: Plain text
4886 #: build/C/man3/getaddrinfo_a.3:484
4887 #, no-wrap
4888 msgid ""
4889 "/* Wait until at least one of specified requests completes */\n"
4890 "static void\n"
4891 "wait_requests(void)\n"
4892 "{\n"
4893 "    char *id;\n"
4894 "    int i, ret, n;\n"
4895 "    struct gaicb const **wait_reqs = calloc(nreqs, sizeof(*wait_reqs));\n"
4896 "                /* NULL elements are ignored by gai_suspend(). */\n"
4897 msgstr ""
4898 "/* Wait until at least one of specified requests completes */\n"
4899 "static void\n"
4900 "wait_requests(void)\n"
4901 "{\n"
4902 "    char *id;\n"
4903 "    int i, ret, n;\n"
4904 "    struct gaicb const **wait_reqs = calloc(nreqs, sizeof(*wait_reqs));\n"
4905 "                /* NULL elements are ignored by gai_suspend(). */\n"
4906
4907 #. type: Plain text
4908 #: build/C/man3/getaddrinfo_a.3:487 build/C/man3/getaddrinfo_a.3:524
4909 #, no-wrap
4910 msgid ""
4911 "    while ((id = strtok(NULL, \" \")) != NULL) {\n"
4912 "        n = atoi(id);\n"
4913 msgstr ""
4914 "    while ((id = strtok(NULL, \" \")) != NULL) {\n"
4915 "        n = atoi(id);\n"
4916
4917 #. type: Plain text
4918 #: build/C/man3/getaddrinfo_a.3:492 build/C/man3/getaddrinfo_a.3:529
4919 #, no-wrap
4920 msgid ""
4921 "        if (n E<gt>= nreqs) {\n"
4922 "            printf(\"Bad request number: %s\\en\", id);\n"
4923 "            return;\n"
4924 "        }\n"
4925 msgstr ""
4926 "        if (n E<gt>= nreqs) {\n"
4927 "            printf(\"Bad request number: %s\\en\", id);\n"
4928 "            return;\n"
4929 "        }\n"
4930
4931 #. type: Plain text
4932 #: build/C/man3/getaddrinfo_a.3:495
4933 #, no-wrap
4934 msgid ""
4935 "        wait_reqs[n] = reqs[n];\n"
4936 "    }\n"
4937 msgstr ""
4938 "        wait_reqs[n] = reqs[n];\n"
4939 "    }\n"
4940
4941 #. type: Plain text
4942 #: build/C/man3/getaddrinfo_a.3:501
4943 #, no-wrap
4944 msgid ""
4945 "    ret = gai_suspend(wait_reqs, nreqs, NULL);\n"
4946 "    if (ret) {\n"
4947 "        printf(\"gai_suspend(): %s\\en\", gai_strerror(ret));\n"
4948 "        return;\n"
4949 "    }\n"
4950 msgstr ""
4951 "    ret = gai_suspend(wait_reqs, nreqs, NULL);\n"
4952 "    if (ret) {\n"
4953 "        printf(\"gai_suspend(): %s\\en\", gai_strerror(ret));\n"
4954 "        return;\n"
4955 "    }\n"
4956
4957 #. type: Plain text
4958 #: build/C/man3/getaddrinfo_a.3:505
4959 #, no-wrap
4960 msgid ""
4961 "    for (i = 0; i E<lt> nreqs; i++) {\n"
4962 "        if (wait_reqs[i] == NULL)\n"
4963 "            continue;\n"
4964 msgstr ""
4965 "    for (i = 0; i E<lt> nreqs; i++) {\n"
4966 "        if (wait_reqs[i] == NULL)\n"
4967 "            continue;\n"
4968
4969 #. type: Plain text
4970 #: build/C/man3/getaddrinfo_a.3:509
4971 #, no-wrap
4972 msgid ""
4973 "        ret = gai_error(reqs[i]);\n"
4974 "        if (ret == EAI_INPROGRESS)\n"
4975 "            continue;\n"
4976 msgstr ""
4977 "        ret = gai_error(reqs[i]);\n"
4978 "        if (ret == EAI_INPROGRESS)\n"
4979 "            continue;\n"
4980
4981 #. type: Plain text
4982 #: build/C/man3/getaddrinfo_a.3:514
4983 #, no-wrap
4984 msgid ""
4985 "        printf(\"[%02d] %s: %s\\en\", i, reqs[i]-E<gt>ar_name,\n"
4986 "               ret == 0 ? \"Finished\" : gai_strerror(ret));\n"
4987 "    }\n"
4988 "}\n"
4989 msgstr ""
4990 "        printf(\"[%02d] %s: %s\\en\", i, reqs[i]-E<gt>ar_name,\n"
4991 "               ret == 0 ? \"Finished\" : gai_strerror(ret));\n"
4992 "    }\n"
4993 "}\n"
4994
4995 #. type: Plain text
4996 #: build/C/man3/getaddrinfo_a.3:521
4997 #, no-wrap
4998 msgid ""
4999 "/* Cancel specified requests */\n"
5000 "static void\n"
5001 "cancel_requests(void)\n"
5002 "{\n"
5003 "    char *id;\n"
5004 "    int ret, n;\n"
5005 msgstr ""
5006 "/* Cancel specified requests */\n"
5007 "static void\n"
5008 "cancel_requests(void)\n"
5009 "{\n"
5010 "    char *id;\n"
5011 "    int ret, n;\n"
5012
5013 #. type: Plain text
5014 #: build/C/man3/getaddrinfo_a.3:535
5015 #, no-wrap
5016 msgid ""
5017 "        ret = gai_cancel(reqs[n]);\n"
5018 "        printf(\"[%s] %s: %s\\en\", id, reqs[atoi(id)]-E<gt>ar_name,\n"
5019 "               gai_strerror(ret));\n"
5020 "    }\n"
5021 "}\n"
5022 msgstr ""
5023 "        ret = gai_cancel(reqs[n]);\n"
5024 "        printf(\"[%s] %s: %s\\en\", id, reqs[atoi(id)]-E<gt>ar_name,\n"
5025 "               gai_strerror(ret));\n"
5026 "    }\n"
5027 "}\n"
5028
5029 #. type: Plain text
5030 #: build/C/man3/getaddrinfo_a.3:543
5031 #, no-wrap
5032 msgid ""
5033 "/* List all requests */\n"
5034 "static void\n"
5035 "list_requests(void)\n"
5036 "{\n"
5037 "    int i, ret;\n"
5038 "    char host[NI_MAXHOST];\n"
5039 "    struct addrinfo *res;\n"
5040 msgstr ""
5041 "/* List all requests */\n"
5042 "static void\n"
5043 "list_requests(void)\n"
5044 "{\n"
5045 "    int i, ret;\n"
5046 "    char host[NI_MAXHOST];\n"
5047 "    struct addrinfo *res;\n"
5048
5049 #. type: Plain text
5050 #: build/C/man3/getaddrinfo_a.3:547
5051 #, no-wrap
5052 msgid ""
5053 "    for (i = 0; i E<lt> nreqs; i++) {\n"
5054 "        printf(\"[%02d] %s: \", i, reqs[i]-E<gt>ar_name);\n"
5055 "        ret = gai_error(reqs[i]);\n"
5056 msgstr ""
5057 "    for (i = 0; i E<lt> nreqs; i++) {\n"
5058 "        printf(\"[%02d] %s: \", i, reqs[i]-E<gt>ar_name);\n"
5059 "        ret = gai_error(reqs[i]);\n"
5060
5061 #. type: Plain text
5062 #: build/C/man3/getaddrinfo_a.3:550
5063 #, no-wrap
5064 msgid ""
5065 "        if (!ret) {\n"
5066 "            res = reqs[i]-E<gt>ar_result;\n"
5067 msgstr ""
5068 "        if (!ret) {\n"
5069 "            res = reqs[i]-E<gt>ar_result;\n"
5070
5071 #. type: Plain text
5072 #: build/C/man3/getaddrinfo_a.3:565
5073 #, no-wrap
5074 msgid ""
5075 "            ret = getnameinfo(res-E<gt>ai_addr, res-E<gt>ai_addrlen,\n"
5076 "                              host, sizeof(host),\n"
5077 "                              NULL, 0, NI_NUMERICHOST);\n"
5078 "            if (ret) {\n"
5079 "                fprintf(stderr, \"getnameinfo() failed: %s\\en\",\n"
5080 "                        gai_strerror(ret));\n"
5081 "                exit(EXIT_FAILURE);\n"
5082 "            }\n"
5083 "            puts(host);\n"
5084 "        } else {\n"
5085 "            puts(gai_strerror(ret));\n"
5086 "        }\n"
5087 "    }\n"
5088 "}\n"
5089 msgstr ""
5090 "            ret = getnameinfo(res-E<gt>ai_addr, res-E<gt>ai_addrlen,\n"
5091 "                              host, sizeof(host),\n"
5092 "                              NULL, 0, NI_NUMERICHOST);\n"
5093 "            if (ret) {\n"
5094 "                fprintf(stderr, \"getnameinfo() failed: %s\\en\",\n"
5095 "                        gai_strerror(ret));\n"
5096 "                exit(EXIT_FAILURE);\n"
5097 "            }\n"
5098 "            puts(host);\n"
5099 "        } else {\n"
5100 "            puts(gai_strerror(ret));\n"
5101 "        }\n"
5102 "    }\n"
5103 "}\n"
5104
5105 #. type: Plain text
5106 #: build/C/man3/getaddrinfo_a.3:571
5107 #, no-wrap
5108 msgid ""
5109 "int\n"
5110 "main(int argc, char *argv[])\n"
5111 "{\n"
5112 "    char *cmdline;\n"
5113 "    char *cmd;\n"
5114 msgstr ""
5115 "int\n"
5116 "main(int argc, char *argv[])\n"
5117 "{\n"
5118 "    char *cmdline;\n"
5119 "    char *cmd;\n"
5120
5121 #. type: Plain text
5122 #: build/C/man3/getaddrinfo_a.3:574
5123 #, no-wrap
5124 msgid ""
5125 "    while ((cmdline = getcmd()) != NULL) {\n"
5126 "        cmd = strtok(cmdline, \" \");\n"
5127 msgstr ""
5128 "    while ((cmdline = getcmd()) != NULL) {\n"
5129 "        cmd = strtok(cmdline, \" \");\n"
5130
5131 #. type: Plain text
5132 #: build/C/man3/getaddrinfo_a.3:599
5133 #, no-wrap
5134 msgid ""
5135 "        if (cmd == NULL) {\n"
5136 "            list_requests();\n"
5137 "        } else {\n"
5138 "            switch (cmd[0]) {\n"
5139 "            case \\(aqa\\(aq:\n"
5140 "                add_requests();\n"
5141 "                break;\n"
5142 "            case \\(aqw\\(aq:\n"
5143 "                wait_requests();\n"
5144 "                break;\n"
5145 "            case \\(aqc\\(aq:\n"
5146 "                cancel_requests();\n"
5147 "                break;\n"
5148 "            case \\(aql\\(aq:\n"
5149 "                list_requests();\n"
5150 "                break;\n"
5151 "            default:\n"
5152 "                fprintf(stderr, \"Bad command: %c\\en\", cmd[0]);\n"
5153 "                break;\n"
5154 "            }\n"
5155 "        }\n"
5156 "    }\n"
5157 "    exit(EXIT_SUCCESS);\n"
5158 "}\n"
5159 msgstr ""
5160 "        if (cmd == NULL) {\n"
5161 "            list_requests();\n"
5162 "        } else {\n"
5163 "            switch (cmd[0]) {\n"
5164 "            case \\(aqa\\(aq:\n"
5165 "                add_requests();\n"
5166 "                break;\n"
5167 "            case \\(aqw\\(aq:\n"
5168 "                wait_requests();\n"
5169 "                break;\n"
5170 "            case \\(aqc\\(aq:\n"
5171 "                cancel_requests();\n"
5172 "                break;\n"
5173 "            case \\(aql\\(aq:\n"
5174 "                list_requests();\n"
5175 "                break;\n"
5176 "            default:\n"
5177 "                fprintf(stderr, \"Bad command: %c\\en\", cmd[0]);\n"
5178 "                break;\n"
5179 "            }\n"
5180 "        }\n"
5181 "    }\n"
5182 "    exit(EXIT_SUCCESS);\n"
5183 "}\n"
5184
5185 #. type: Plain text
5186 #: build/C/man3/getaddrinfo_a.3:607
5187 msgid ""
5188 "B<getaddrinfo>(3), B<inet>(3), B<lio_listio>(3), B<hostname>(7), B<ip>(7), "
5189 "B<sigevent>(7)"
5190 msgstr ""
5191 "B<getaddrinfo>(3), B<inet>(3), B<lio_listio>(3), B<hostname>(7), B<ip>(7), "
5192 "B<sigevent>(7)"
5193
5194 #. type: TH
5195 #: build/C/man1/getent.1:24
5196 #, no-wrap
5197 msgid "GETENT"
5198 msgstr "GETENT"
5199
5200 #. type: TH
5201 #: build/C/man1/getent.1:24
5202 #, no-wrap
5203 msgid "2013-03-15"
5204 msgstr "2013-03-15"
5205
5206 #. type: TH
5207 #: build/C/man1/getent.1:24
5208 #, no-wrap
5209 msgid "User Commands"
5210 msgstr "User Commands"
5211
5212 #. type: Plain text
5213 #: build/C/man1/getent.1:27
5214 msgid "getent - get entries from Name Service Switch libraries"
5215 msgstr "getent - 名前サービス切り替えライブラリからエントリーを取得する"
5216
5217 #. type: Plain text
5218 #: build/C/man1/getent.1:30
5219 msgid "B<getent> I<database> [I<key> ...]"
5220 msgstr "B<getent> I<database> [I<key> ...]"
5221
5222 #. type: Plain text
5223 #: build/C/man1/getent.1:45
5224 msgid ""
5225 "The B<getent> command displays entries from databases supported by the Name "
5226 "Service Switch libraries, which are configured in I</etc/nsswitch.conf>.  If "
5227 "one or more I<key> arguments are provided, then only the entries that match "
5228 "the supplied keys will be displayed.  Otherwise, if no I<key> is provided, "
5229 "all entries will be displayed (unless the database does not support "
5230 "enumeration)."
5231 msgstr ""
5232 "B<getent> コマンドは、 名前サービス切り替えライブラリでサポートされているデー"
5233 "タベースのエントリーを表示する。 名前サービス切り替えライブラリの設定は I</"
5234 "etc/nsswitch.conf> で行う。 一つ以上の I<key> 引き数が指定されると、 指定され"
5235 "たキーにマッチするエントリーだけが表示される。 I<key> が指定されなかった場"
5236 "合、 すべてのエントリーが表示される (データベースで列挙 (enumeration) がサ"
5237 "ポートされていない場合を除く)。"
5238
5239 #. type: Plain text
5240 #: build/C/man1/getent.1:49
5241 msgid ""
5242 "The I<database> may be any of those supported by the GNU C Library, listed "
5243 "below:"
5244 msgstr ""
5245 "I<database> には GNU C ライブラリでサポートされているデータベースのいずれかを"
5246 "指定できる。 以下にそのリストを示す。"
5247
5248 #. type: TP
5249 #: build/C/man1/getent.1:50
5250 #, no-wrap
5251 msgid "B<ahosts>"
5252 msgstr "B<ahosts>"
5253
5254 #. type: Plain text
5255 #: build/C/man1/getent.1:71
5256 msgid ""
5257 "When no I<key> is provided, use B<sethostent>(3), B<gethostent>(3), and "
5258 "B<endhostent>(3)  to enumerate the hosts database.  This is identical to "
5259 "using B<hosts>.  When one or more I<key> arguments are provided, pass each "
5260 "I<key> in succession to B<getaddrinfo>(3)  with the address family "
5261 "B<AF_UNSPEC>, enumerating each socket address structure returned."
5262 msgstr ""
5263 "I<key> が指定されなかった場合、 B<sethostent>(3), B<gethostent>(3), "
5264 "B<endhostent>(3) を使用して hosts データベースを列挙する。 これは B<hosts> を"
5265 "使うのと全く同じである。 I<key> 引き数が一つ以上指定された場合は、 それぞれ"
5266 "の I<key> についてアドレスファミリー B<AF_UNSPEC> で B<getaddrinfo>(3) を呼び"
5267 "出し、 返された各々のソケットアドレス構造体を列挙する。"
5268
5269 #. type: TP
5270 #: build/C/man1/getent.1:71
5271 #, no-wrap
5272 msgid "B<ahostsv4>"
5273 msgstr "B<ahostsv4>"
5274
5275 #. type: Plain text
5276 #: build/C/man1/getent.1:77
5277 msgid "Same as B<ahosts>, but use the address family B<AF_INET>."
5278 msgstr ""
5279 "B<ahosts> を同じだが、 アドレスファミリーとして B<AF_INET> を使用する。"
5280
5281 #. type: TP
5282 #: build/C/man1/getent.1:77
5283 #, no-wrap
5284 msgid "B<ahostsv6>"
5285 msgstr "B<ahostsv6>"
5286
5287 #. type: Plain text
5288 #: build/C/man1/getent.1:88
5289 msgid ""
5290 "Same as B<ahosts>, but use the address family B<AF_INET6>.  The call to "
5291 "B<getaddrinfo>(3)  in this case includes the B<AI_V4MAPPED> flag."
5292 msgstr ""
5293 "B<ahosts> を同じだが、 アドレスファミリーとして B<AF_INET6> を使用する。 この"
5294 "場合の B<getaddrinfo>(3) の呼び出しでは B<AI_V4MAPPED> も指定される。"
5295
5296 #. type: TP
5297 #: build/C/man1/getent.1:88 build/C/man5/nsswitch.conf.5:44
5298 #, no-wrap
5299 msgid "B<aliases>"
5300 msgstr "B<aliases>"
5301
5302 #. type: Plain text
5303 #: build/C/man1/getent.1:105
5304 msgid ""
5305 "When no I<key> is provided, use B<setaliasent>(3), B<getaliasent>(3), and "
5306 "B<endaliasent>(3)  to enumerate the aliases database.  When one or more "
5307 "I<key> arguments are provided, pass each I<key> in succession to "
5308 "B<getaliasbyname>(3)  and display the result."
5309 msgstr ""
5310 "I<key> が指定されなかった場合、 B<setaliasent>(3), B<getaliasent>(3), "
5311 "B<endaliasent>(3) を使用して aliases データベースを列挙する。 I<key> 引き数が"
5312 "一つ以上指定された場合は、 それぞれの I<key> についてB<getaliasbyname>(3) を"
5313 "呼び出し、 結果を表示する。"
5314
5315 #. type: TP
5316 #: build/C/man1/getent.1:105 build/C/man5/nsswitch.conf.5:49
5317 #, no-wrap
5318 msgid "B<ethers>"
5319 msgstr "B<ethers>"
5320
5321 #. type: Plain text
5322 #: build/C/man1/getent.1:121
5323 msgid ""
5324 "When one or more I<key> arguments are provided, pass each I<key> in "
5325 "succession to B<ether_aton>(3)  and B<ether_hostton>(3)  until a result is "
5326 "obtained, and display the result.  Enumeration is not supported on "
5327 "B<ethers>, so a I<key> must be provided."
5328 msgstr ""
5329 "I<key> 引き数が一つ以上指定された場合、 結果が得られるまで、 それぞれの "
5330 "I<key> について B<ether_aton>(3) と B<ether_hostton>(3) を順に呼び出し、 結果"
5331 "を表示する。 B<ethers> では列挙はサポートされていない。 したがって、 I<key> "
5332 "は指定しなければならない。"
5333
5334 #. type: TP
5335 #: build/C/man1/getent.1:121 build/C/man5/nsswitch.conf.5:52
5336 #, no-wrap
5337 msgid "B<group>"
5338 msgstr "B<group>"
5339
5340 #. type: Plain text
5341 #: build/C/man1/getent.1:142
5342 msgid ""
5343 "When no I<key> is provided, use B<setgrent>(3), B<getgrent>(3), and "
5344 "B<endgrent>(3)  to enumerate the group database.  When one or more I<key> "
5345 "arguments are provided, pass each numeric I<key> to B<getgrgid>(3)  and each "
5346 "nonnumeric I<key> to B<getgrnam>(3)  and display the result."
5347 msgstr ""
5348 "I<key> が指定されなかった場合、 B<setgrent>(3), B<getgrent>(3), "
5349 "B<endgrent>(3) を使用して group データベースを列挙する。 I<key> 引き数が一つ"
5350 "以上指定された場合は、 それぞれの I<key> について、 数値であれば "
5351 "B<getgrgid>(3) を、 数値以外であれば B<getgrnam>(3) を呼び出し、 結果を表示す"
5352 "る。"
5353
5354 #. type: TP
5355 #: build/C/man1/getent.1:142
5356 #, no-wrap
5357 msgid "B<gshadow>"
5358 msgstr "B<gshadow>"
5359
5360 #. type: Plain text
5361 #: build/C/man1/getent.1:159
5362 msgid ""
5363 "When no I<key> is provided, use B<setsgent>(3), B<getsgent>(3), and "
5364 "B<endsgent>(3)  to enumerate the gshadow database.  When one or more I<key> "
5365 "arguments are provided, pass each I<key> in succession to B<getsgnam>(3)  "
5366 "and display the result."
5367 msgstr ""
5368 "I<key> が指定されなかった場合、 B<setsgent>(3), B<getsgent>(3), "
5369 "B<endsgent>(3) を使用して gshadow データベースを列挙する。 I<key> 引き数が一"
5370 "つ以上指定された場合は、 それぞれの I<key> について B<getsgnam>(3) を呼び出"
5371 "し、 結果を表示する。"
5372
5373 #. type: TP
5374 #: build/C/man1/getent.1:159 build/C/man5/nsswitch.conf.5:57
5375 #, no-wrap
5376 msgid "B<hosts>"
5377 msgstr "B<hosts>"
5378
5379 #. type: Plain text
5380 #: build/C/man1/getent.1:182
5381 msgid ""
5382 "When no I<key> is provided, use B<sethostent>(3), B<gethostent>(3), and "
5383 "B<endhostent>(3)  to enumerate the hosts database.  When one or more I<key> "
5384 "arguments are provided, pass each I<key> to B<gethostbyaddr>(3)  or "
5385 "B<gethostbyname2>(3), depending on whether a call to B<inet_pton>(3)  "
5386 "indicates that the I<key> is an IPv6 or IPv4 address or not, and display the "
5387 "result."
5388 msgstr ""
5389 "I<key> が指定されなかった場合、 B<sethostent>(3), B<gethostent>(3), "
5390 "B<endhostent>(3) を使用して hosts データベースを列挙する。 I<key> 引き数が一"
5391 "つ以上指定された場合は、 それぞれの I<key> について B<gethostbyaddr>(3) か "
5392 "B<gethostbyname2>(3) を呼び出し、 結果を表示する。 B<gethostbyaddr>(3) か "
5393 "B<gethostbyname2>(3) のどちらを呼び出すかは、B<inet_pton>(3) の呼び出しで、 "
5394 "I<key> が IPv6 や IPv4 アドレスか、 そうでないか、 判定され、その結果によって"
5395 "決まる。"
5396
5397 #. type: TP
5398 #: build/C/man1/getent.1:182 build/C/man5/nsswitch.conf.5:62
5399 #, no-wrap
5400 msgid "B<initgroups>"
5401 msgstr "B<initgroups>"
5402
5403 #. type: Plain text
5404 #: build/C/man1/getent.1:196
5405 msgid ""
5406 "When one or more I<key> arguments are provided, pass each I<key> in "
5407 "succession to B<getgrouplist>(3)  and display the result.  Enumeration is "
5408 "not supported on B<initgroups>, so a I<key> must be provided."
5409 msgstr ""
5410 "I<key> 引き数が一つ以上指定された場合、 結果が得られるまで、 それぞれの "
5411 "I<key> について B<getgrouplist>(3) を呼び出し、 結果を表示する。 "
5412 "B<initgroups> では列挙はサポートされていない。 したがって、 I<key> は指定しな"
5413 "ければならない。"
5414
5415 #. type: TP
5416 #: build/C/man1/getent.1:196 build/C/man5/nsswitch.conf.5:67
5417 #, no-wrap
5418 msgid "B<netgroup>"
5419 msgstr "B<netgroup>"
5420
5421 #. type: Plain text
5422 #: build/C/man1/getent.1:222
5423 msgid ""
5424 "When one I<key> is provided, pass the I<key> to B<setnetgrent>(3)  and, "
5425 "using B<getnetgrent>(3)  display the resulting string triple (I<hostname>, "
5426 "I<username>, I<domainname>).  Alternatively, three I<keys> may be provided, "
5427 "which are interpreted as the I<hostname>, I<username> and I<domainname> to "
5428 "match to a netgroup name via B<innetgr>(3).  Enumeration is not supported on "
5429 "B<netgroup>, so either one or three I<keys> must be provided."
5430 msgstr ""
5431 "1 個の I<key> を指定すると、 その I<key> を B<setnetgrent>(3) に渡し、 "
5432 "B<getnetgrent>(3) を使って結果の 3 つ組の文字列 (I<hostname>, I<username>, "
5433 "I<domainname>) を表示する。 代わりに、 3 個の I<key> を指定することもでき"
5434 "る。 3 個の I<key> は I<hostname>, I<username>, I<domainname> と解釈され、 "
5435 "B<innetgr>(3) を使って対応する netgroup があるか照合される。 B<netgroup> では"
5436 "列挙はサポートされていない。 したがって、 1 個か 3 個のいずれかの I<key> を指"
5437 "定しなければならない。"
5438
5439 #. type: TP
5440 #: build/C/man1/getent.1:222 build/C/man5/nsswitch.conf.5:71
5441 #, no-wrap
5442 msgid "B<networks>"
5443 msgstr "B<networks>"
5444
5445 #. type: Plain text
5446 #: build/C/man1/getent.1:243
5447 msgid ""
5448 "When no I<key> is provided, use B<setnetent>(3), B<getnetent>(3), and "
5449 "B<endnetent>(3)  to enumerate the networks database.  When one or more "
5450 "I<key> arguments are provided, pass each numeric I<key> to "
5451 "B<getnetbyaddr>(3)  and each nonnumeric I<key> to B<getnetbyname>(3)  and "
5452 "display the result."
5453 msgstr ""
5454 "I<key> が指定されなかった場合、 B<setnetent>(3), B<getnetent>(3), "
5455 "B<endnetent>(3) を使用して networks データベースを列挙する。 I<key> 引き数が"
5456 "一つ以上指定された場合は、 それぞれの I<key> について、 数値であれば "
5457 "B<getnetbyaddr>(3) を、 数値以外であれば B<getnetbyname>(3) を呼び出し、 結果"
5458 "を表示する。"
5459
5460 #. type: TP
5461 #: build/C/man1/getent.1:243 build/C/man5/nsswitch.conf.5:76
5462 #, no-wrap
5463 msgid "B<passwd>"
5464 msgstr "B<passwd>"
5465
5466 #. type: Plain text
5467 #: build/C/man1/getent.1:264
5468 msgid ""
5469 "When no I<key> is provided, use B<setpwent>(3), B<getpwent>(3), and "
5470 "B<endpwent>(3)  to enumerate the passwd database.  When one or more I<key> "
5471 "arguments are provided, pass each numeric I<key> to B<getpwuid>(3)  and each "
5472 "nonnumeric I<key> to B<getpwnam>(3)  and display the result."
5473 msgstr ""
5474 "I<key> が指定されなかった場合、 B<setpwent>(3), B<getpwent>(3), "
5475 "B<endpwent>(3) を使用して passwd データベースを列挙する。 I<key> 引き数が一つ"
5476 "以上指定された場合は、 それぞれの I<key> について、 数値であれば "
5477 "B<getpwgid>(3) を、 数値以外であれば B<getpwnam>(3) を呼び出し、 結果を表示す"
5478 "る。"
5479
5480 #. type: TP
5481 #: build/C/man1/getent.1:264 build/C/man5/nsswitch.conf.5:81
5482 #, no-wrap
5483 msgid "B<protocols>"
5484 msgstr "B<protocols>"
5485
5486 #. type: Plain text
5487 #: build/C/man1/getent.1:285
5488 msgid ""
5489 "When no I<key> is provided, use B<setprotoent>(3), B<getprotoent>(3), and "
5490 "B<endprotoent>(3)  to enumerate the protocols database.  When one or more "
5491 "I<key> arguments are provided, pass each numeric I<key> to "
5492 "B<getprotobynumber>(3)  and each nonnumeric I<key> to B<getprotobyname>(3)  "
5493 "and display the result."
5494 msgstr ""
5495 "I<key> が指定されなかった場合、 B<setprotoent>(3), B<getprotoent>(3), "
5496 "B<endprotoent>(3) を使用して protocols データベースを列挙する。 I<key> 引き数"
5497 "が一つ以上指定された場合は、 それぞれの I<key> について、 数値であれば "
5498 "B<getprotobynumber>(3) を、 数値以外であれば B<getprotobyname>(3) を呼び出"
5499 "し、 結果を表示する。"
5500
5501 #. type: TP
5502 #: build/C/man1/getent.1:285 build/C/man5/nsswitch.conf.5:89
5503 #, no-wrap
5504 msgid "B<rpc>"
5505 msgstr "B<rpc>"
5506
5507 #. type: Plain text
5508 #: build/C/man1/getent.1:306
5509 msgid ""
5510 "When no I<key> is provided, use B<setrpcent>(3), B<getrpcent>(3), and "
5511 "B<endrpcent>(3)  to enumerate the rpc database.  When one or more I<key> "
5512 "arguments are provided, pass each numeric I<key> to B<getrpcbynumber>(3)  "
5513 "and each nonnumeric I<key> to B<getrpcbyname>(3)  and display the result."
5514 msgstr ""
5515 "I<key> が指定されなかった場合、 B<setrpcent>(3), B<getrpcent>(3), "
5516 "B<endrpcent>(3) を使用して rpc データベースを列挙する。 I<key> 引き数が一つ以"
5517 "上指定された場合は、 それぞれの I<key> について、 数値であれば "
5518 "B<getrpcbynumber>(3) を、 数値以外であれば B<getrpcbyname>(3) を呼び出し、 結"
5519 "果を表示する。"
5520
5521 #. type: TP
5522 #: build/C/man1/getent.1:306 build/C/man5/nsswitch.conf.5:94
5523 #, no-wrap
5524 msgid "B<services>"
5525 msgstr "B<services>"
5526
5527 #. type: Plain text
5528 #: build/C/man1/getent.1:327
5529 msgid ""
5530 "When no I<key> is provided, use B<setservent>(3), B<getservent>(3), and "
5531 "B<endservent>(3)  to enumerate the services database.  When one or more "
5532 "I<key> arguments are provided, pass each numeric I<key> to "
5533 "B<getservbynumber>(3)  and each nonnumeric I<key> to B<getservbyname>(3)  "
5534 "and display the result."
5535 msgstr ""
5536 "I<key> が指定されなかった場合、 B<setservent>(3), B<getservent>(3), "
5537 "B<endservent>(3) を使用して services データベースを列挙する。 I<key> 引き数が"
5538 "一つ以上指定された場合は、 それぞれの I<key> について、 数値であれば "
5539 "B<getservbynumber>(3) を、 数値以外であれば B<getservbyname>(3) を呼び出し、 "
5540 "結果を表示する。"
5541
5542 #. type: TP
5543 #: build/C/man1/getent.1:327 build/C/man5/nsswitch.conf.5:99
5544 #, no-wrap
5545 msgid "B<shadow>"
5546 msgstr "B<shadow>"
5547
5548 #. type: Plain text
5549 #: build/C/man1/getent.1:344
5550 msgid ""
5551 "When no I<key> is provided, use B<setspent>(3), B<getspent>(3), and "
5552 "B<endspent>(3)  to enumerate the shadow database.  When one or more I<key> "
5553 "arguments are provided, pass each I<key> in succession to B<getspnam>(3)  "
5554 "and display the result."
5555 msgstr ""
5556 "I<key> が指定されなかった場合、 B<setspent>(3), B<getspent>(3), "
5557 "B<endspent>(3) を使用して shadow データベースを列挙する。 I<key> 引き数が一つ"
5558 "以上指定された場合は、 それぞれの I<key> について B<getspnam>(3) を呼び出"
5559 "し、 結果を表示する。"
5560
5561 #. type: SH
5562 #: build/C/man1/getent.1:345
5563 #, no-wrap
5564 msgid "EXIT STATUS"
5565 msgstr "終了ステータス"
5566
5567 #. type: Plain text
5568 #: build/C/man1/getent.1:348
5569 msgid "One of the following exit values can be returned by B<getent>:"
5570 msgstr "B<getent> は以下のいずれかの終了ステータスを返す。"
5571
5572 #. type: TP
5573 #: build/C/man1/getent.1:349
5574 #, no-wrap
5575 msgid "B<0>"
5576 msgstr "B<0>"
5577
5578 #. type: Plain text
5579 #: build/C/man1/getent.1:352
5580 msgid "Command completed successfully."
5581 msgstr "コマンドが正常に完了した。"
5582
5583 #. type: TP
5584 #: build/C/man1/getent.1:352
5585 #, no-wrap
5586 msgid "B<1>"
5587 msgstr "B<1>"
5588
5589 #. type: Plain text
5590 #: build/C/man1/getent.1:357
5591 msgid "Missing arguments, or I<database> unknown."
5592 msgstr "引き数が不足しているか、 知らない I<database> が指定された。"
5593
5594 #. type: TP
5595 #: build/C/man1/getent.1:357
5596 #, no-wrap
5597 msgid "B<2>"
5598 msgstr "B<2>"
5599
5600 #. type: Plain text
5601 #: build/C/man1/getent.1:363
5602 msgid "One or more supplied I<key> could not be found in the I<database>."
5603 msgstr "指定された I<key> が I<database> で見つからなかった。"
5604
5605 #. type: TP
5606 #: build/C/man1/getent.1:363
5607 #, no-wrap
5608 msgid "B<3>"
5609 msgstr "B<3>"
5610
5611 #. type: Plain text
5612 #: build/C/man1/getent.1:367
5613 msgid "Enumeration not supported on this I<database>."
5614 msgstr "この I<database> では列挙はサポートされていない。"
5615
5616 #. type: Plain text
5617 #: build/C/man1/getent.1:370
5618 msgid "B<nsswitch.conf>(5)"
5619 msgstr "B<nsswitch.conf>(5)"
5620
5621 #. type: TH
5622 #: build/C/man3/gethostbyname.3:38
5623 #, no-wrap
5624 msgid "GETHOSTBYNAME"
5625 msgstr "GETHOSTBYNAME"
5626
5627 #. type: TH
5628 #: build/C/man3/gethostbyname.3:38
5629 #, no-wrap
5630 msgid "2014-03-11"
5631 msgstr "2014-03-11"
5632
5633 #. type: Plain text
5634 #: build/C/man3/gethostbyname.3:46
5635 msgid ""
5636 "gethostbyname, gethostbyaddr, sethostent, gethostent, endhostent, h_errno, "
5637 "herror, hstrerror, gethostbyaddr_r, gethostbyname2, gethostbyname2_r, "
5638 "gethostbyname_r, gethostent_r - get network host entry"
5639 msgstr ""
5640 "gethostbyname, gethostbyaddr, sethostent, gethostent, endhostent, h_errno, "
5641 "herror, hstrerror, gethostbyaddr_r, gethostbyname2, gethostbyname2_r, "
5642 "gethostbyname_r, gethostent_r - ネットワーク上のホストのエントリを取得する"
5643
5644 #. type: Plain text
5645 #: build/C/man3/gethostbyname.3:50
5646 #, no-wrap
5647 msgid ""
5648 "B<#include E<lt>netdb.hE<gt>>\n"
5649 "B<extern int h_errno;>\n"
5650 msgstr ""
5651 "B<#include E<lt>netdb.hE<gt>>\n"
5652 "B<extern int h_errno;>\n"
5653
5654 #. type: Plain text
5655 #: build/C/man3/gethostbyname.3:52
5656 #, no-wrap
5657 msgid "B<struct hostent *gethostbyname(const char *>I<name>B<);>\n"
5658 msgstr "B<struct hostent *gethostbyname(const char *>I<name>B<);>\n"
5659
5660 #. type: Plain text
5661 #: build/C/man3/gethostbyname.3:56
5662 #, no-wrap
5663 msgid ""
5664 "B<#include E<lt>sys/socket.hE<gt>>       /* for AF_INET */\n"
5665 "B<struct hostent *gethostbyaddr(const void *>I<addr>B<,>\n"
5666 "B<                              socklen_t >I<len>B<, int >I<type>B<);>\n"
5667 msgstr ""
5668 "B<#include E<lt>sys/socket.hE<gt>>       /* AF_INET を使う場合 */\n"
5669 "B<struct hostent *gethostbyaddr(const void *>I<addr>B<,>\n"
5670 "B<                              socklen_t >I<len>B<, int >I<type>B<);>\n"
5671
5672 #. type: Plain text
5673 #: build/C/man3/gethostbyname.3:58
5674 #, no-wrap
5675 msgid "B<void sethostent(int >I<stayopen>B<);>\n"
5676 msgstr "B<void sethostent(int >I<stayopen>B<);>\n"
5677
5678 #. type: Plain text
5679 #: build/C/man3/gethostbyname.3:60
5680 #, no-wrap
5681 msgid "B<void endhostent(void);>\n"
5682 msgstr "B<void endhostent(void);>\n"
5683
5684 #. type: Plain text
5685 #: build/C/man3/gethostbyname.3:62
5686 #, no-wrap
5687 msgid "B<void herror(const char *>I<s>B<);>\n"
5688 msgstr "B<void herror(const char *>I<s>B<);>\n"
5689
5690 #. type: Plain text
5691 #: build/C/man3/gethostbyname.3:64
5692 #, no-wrap
5693 msgid "B<const char *hstrerror(int >I<err>B<);>\n"
5694 msgstr "B<const char *hstrerror(int >I<err>B<);>\n"
5695
5696 #. type: Plain text
5697 #: build/C/man3/gethostbyname.3:66
5698 #, no-wrap
5699 msgid "/* System V/POSIX extension */\n"
5700 msgstr "/* System V/POSIX 拡張 */\n"
5701
5702 #. type: Plain text
5703 #: build/C/man3/gethostbyname.3:68
5704 #, no-wrap
5705 msgid "B<struct hostent *gethostent(void);>\n"
5706 msgstr "B<struct hostent *gethostent(void);>\n"
5707
5708 #. type: Plain text
5709 #: build/C/man3/gethostbyname.3:72
5710 #, no-wrap
5711 msgid "B<struct hostent *gethostbyname2(const char *>I<name>B<, int >I<af>B<);>\n"
5712 msgstr "B<struct hostent *gethostbyname2(const char *>I<name>B<, int >I<af>B<);>\n"
5713
5714 #. type: Plain text
5715 #: build/C/man3/gethostbyname.3:76
5716 #, no-wrap
5717 msgid ""
5718 "B<int gethostent_r(>\n"
5719 "B<        struct hostent *>I<ret>B<, char *>I<buf>B<, size_t >I<buflen>B<,>\n"
5720 "B<        struct hostent **>I<result>B<, int *>I<h_errnop>B<);>\n"
5721 msgstr ""
5722 "B<int gethostent_r(>\n"
5723 "B<        struct hostent *>I<ret>B<, char *>I<buf>B<, size_t >I<buflen>B<,>\n"
5724 "B<        struct hostent **>I<result>B<, int *>I<h_errnop>B<);>\n"
5725
5726 #. type: Plain text
5727 #: build/C/man3/gethostbyname.3:80
5728 #, no-wrap
5729 msgid ""
5730 "B<int gethostbyaddr_r(const void *>I<addr>B<, socklen_t >I<len>B<, int >I<type>B<,>\n"
5731 "B<        struct hostent *>I<ret>B<, char *>I<buf>B<, size_t >I<buflen>B<,>\n"
5732 "B<        struct hostent **>I<result>B<, int *>I<h_errnop>B<);>\n"
5733 msgstr ""
5734 "B<int gethostbyaddr_r(const void *>I<addr>B<, socklen_t >I<len>B<, int >I<type>B<,>\n"
5735 "B<        struct hostent *>I<ret>B<, char *>I<buf>B<, size_t >I<buflen>B<,>\n"
5736 "B<        struct hostent **>I<result>B<, int *>I<h_errnop>B<);>\n"
5737
5738 #. type: Plain text
5739 #: build/C/man3/gethostbyname.3:84
5740 #, no-wrap
5741 msgid ""
5742 "B<int gethostbyname_r(const char *>I<name>B<,>\n"
5743 "B<        struct hostent *>I<ret>B<, char *>I<buf>B<, size_t >I<buflen>B<,>\n"
5744 "B<        struct hostent **>I<result>B<, int *>I<h_errnop>B<);>\n"
5745 msgstr ""
5746 "B<int gethostbyname_r(const char *>I<name>B<,>\n"
5747 "B<        struct hostent *>I<ret>B<, char *>I<buf>B<, size_t >I<buflen>B<,>\n"
5748 "B<        struct hostent **>I<result>B<, int *>I<h_errnop>B<);>\n"
5749
5750 #. type: Plain text
5751 #: build/C/man3/gethostbyname.3:88
5752 #, no-wrap
5753 msgid ""
5754 "B<int gethostbyname2_r(const char *>I<name>B<, int >I<af,>\n"
5755 "B<        struct hostent *>I<ret>B<, char *>I<buf>B<, size_t >I<buflen>B<,>\n"
5756 "B<        struct hostent **>I<result>B<, int *>I<h_errnop>B<);>\n"
5757 msgstr ""
5758 "B<int gethostbyname2_r(const char *>I<name>B<, int >I<af,>\n"
5759 "B<        struct hostent *>I<ret>B<, char *>I<buf>B<, size_t >I<buflen>B<,>\n"
5760 "B<        struct hostent **>I<result>B<, int *>I<h_errnop>B<);>\n"
5761
5762 #. type: Plain text
5763 #: build/C/man3/gethostbyname.3:102
5764 msgid ""
5765 "B<gethostbyname2>(), B<gethostent_r>(), B<gethostbyaddr_r>(), "
5766 "B<gethostbyname_r>(), B<gethostbyname2_r>():"
5767 msgstr ""
5768 "B<gethostbyname2>(), B<gethostent_r>(), B<gethostbyaddr_r>(), "
5769 "B<gethostbyname_r>(), B<gethostbyname2_r>():"
5770
5771 #. type: Plain text
5772 #: build/C/man3/gethostbyname.3:104 build/C/man3/gethostbyname.3:112
5773 #: build/C/man3/getnetent_r.3:60 build/C/man3/getprotoent_r.3:57
5774 #: build/C/man3/getservent_r.3:57 build/C/man3/inet_net_pton.3:58
5775 msgid "_BSD_SOURCE || _SVID_SOURCE"
5776 msgstr "_BSD_SOURCE || _SVID_SOURCE"
5777
5778 #. type: Plain text
5779 #: build/C/man3/gethostbyname.3:108
5780 msgid "B<herror>(), B<hstrerror>():"
5781 msgstr "B<herror>(), B<hstrerror>():"
5782
5783 #. type: TP
5784 #: build/C/man3/gethostbyname.3:109
5785 #, no-wrap
5786 msgid "Since glibc 2.8:"
5787 msgstr "glibc 2.8 以降:"
5788
5789 #. type: TP
5790 #: build/C/man3/gethostbyname.3:112
5791 #, no-wrap
5792 msgid "Before glibc 2.8:"
5793 msgstr "glibc 2.8 より前:"
5794
5795 #. type: Plain text
5796 #: build/C/man3/gethostbyname.3:115 build/C/man3/gethostbyname.3:126
5797 msgid "none"
5798 msgstr "なし"
5799
5800 #. type: Plain text
5801 #: build/C/man3/gethostbyname.3:118
5802 msgid "B<h_errno>:"
5803 msgstr "B<h_errno>:"
5804
5805 #. type: TP
5806 #: build/C/man3/gethostbyname.3:119
5807 #, no-wrap
5808 msgid "Since glibc 2.12:"
5809 msgstr "glibc 2.12 以降:"
5810
5811 #. type: Plain text
5812 #: build/C/man3/gethostbyname.3:123
5813 #, no-wrap
5814 msgid ""
5815 "_BSD_SOURCE || _SVID_SOURCE ||\n"
5816 "    (_POSIX_C_SOURCE E<lt> 200809L && _XOPEN_SOURCE E<lt> 700)\n"
5817 msgstr ""
5818 "_BSD_SOURCE || _SVID_SOURCE ||\n"
5819 "    (_POSIX_C_SOURCE E<lt> 200809L && _XOPEN_SOURCE E<lt> 700)\n"
5820
5821 #. type: TP
5822 #: build/C/man3/gethostbyname.3:123
5823 #, no-wrap
5824 msgid "Before glibc 2.12:"
5825 msgstr "glibc 2.12 より前:"
5826
5827 #. type: Plain text
5828 #: build/C/man3/gethostbyname.3:143
5829 msgid ""
5830 "The B<gethostbyname*>(), B<gethostbyaddr*>(), B<herror>(), and "
5831 "B<hstrerror>()  functions are obsolete.  Applications should use "
5832 "B<getaddrinfo>(3), B<getnameinfo>(3), and B<gai_strerror>(3)  instead."
5833 msgstr ""
5834 "関数 B<gethostbyname*>(), B<gethostbyaddr*>(), B<herror>(), B<hstrerror> は過"
5835 "去のものである。 アプリケーションは、代わりに B<getaddrinfo>(3), "
5836 "B<getnameinfo>(3), B<gai_strerror>(3) を使用すること。"
5837
5838 #. type: Plain text
5839 #: build/C/man3/gethostbyname.3:184
5840 msgid ""
5841 "The B<gethostbyname>()  function returns a structure of type I<hostent> for "
5842 "the given host I<name>.  Here I<name> is either a hostname, or an IPv4 "
5843 "address in standard dot notation (as for B<inet_addr>(3)), or an IPv6 "
5844 "address in colon (and possibly dot) notation.  (See RFC\\ 1884 for the "
5845 "description of IPv6 addresses.)  If I<name> is an IPv4 or IPv6 address, no "
5846 "lookup is performed and B<gethostbyname>()  simply copies I<name> into the "
5847 "I<h_name> field and its I<struct in_addr> equivalent into the "
5848 "I<h_addr_list[0]> field of the returned I<hostent> structure.  If I<name> "
5849 "doesn't end in a dot and the environment variable B<HOSTALIASES> is set, the "
5850 "alias file pointed to by B<HOSTALIASES> will first be searched for I<name> "
5851 "(see B<hostname>(7)  for the file format).  The current domain and its "
5852 "parents are searched unless I<name> ends in a dot."
5853 msgstr ""
5854 "B<gethostbyname>()  関数は与えられたホスト名 I<name> に対応する構造体 "
5855 "I<hostent> を返す。 I<name> にはホスト名、ドット区切りの IPv4 アドレス "
5856 "(B<inet_addr>(3)  参照)、コロン区切りの IPv6 アドレス (おそらくドット区切りで"
5857 "も大丈夫)  のいずれかを指定する (IPv6 アドレスの記述方法については RFC\\ "
5858 "1884 を参考にしてほしい)。 I<name> が IPv4 か IPv6 のアドレスだった場合、 名"
5859 "前解決 (lookup) は行われない。その場合には、 B<gethostbyname>()  は I<name> "
5860 "をそのまま I<hostent> 構造体の I<h_name> フィールドにコピーし、 さらに "
5861 "I<name> を I<struct in_addr> 形式で表したデータを I<hostent> 構造体の "
5862 "I<h_addr_list[0]> フィールドに入れて、その I<hostent> 構造体を返す。 I<name> "
5863 "がドットで終了していて、かつ環境変数 B<HOSTALIASES> が設定されている場合、ま"
5864 "ず B<HOSTALIASES> で指定されているエイリアスファイルから I<name> のエントリが"
5865 "検索される (ファイルのフォーマットについては B<hostname>(7)  を参照のこと)。 "
5866 "I<name> がドットで終了していなければ、現在のドメインとその親ドメインが検索さ"
5867 "れる。"
5868
5869 #. type: Plain text
5870 #: build/C/man3/gethostbyname.3:200
5871 msgid ""
5872 "The B<gethostbyaddr>()  function returns a structure of type I<hostent> for "
5873 "the given host address I<addr> of length I<len> and address type I<type>.  "
5874 "Valid address types are B<AF_INET> and B<AF_INET6>.  The host address "
5875 "argument is a pointer to a struct of a type depending on the address type, "
5876 "for example a I<struct in_addr *> (probably obtained via a call to "
5877 "B<inet_addr>(3))  for address type B<AF_INET>."
5878 msgstr ""
5879 "B<gethostbyaddr>()  関数は与えられたホストアドレス I<addr> (長さ I<len>、 タ"
5880 "イプ I<type>) に対応する構造体 I<hostent> を返す。 用いることのできるタイプ"
5881 "は B<AF_INET> と B<AF_INET6> である。 ホストアドレス引き数はアドレスタイプに"
5882 "依存した 構造体へのポインタである。 例えば、アドレスタイプ B<AF_INET> に対し"
5883 "ては (B<inet_addr>(3)  の呼び出しで得られる)  I<struct in_addr *> である。"
5884
5885 #. type: Plain text
5886 #: build/C/man3/gethostbyname.3:207
5887 msgid ""
5888 "The B<sethostent>()  function specifies, if I<stayopen> is true (1), that a "
5889 "connected TCP socket should be used for the name server queries and that the "
5890 "connection should remain open during successive queries.  Otherwise, name "
5891 "server queries will use UDP datagrams."
5892 msgstr ""
5893 "B<sethostent>()  関数は、ネームサーバへの接続形態を指定する。 I<stayopen> が"
5894 "真 (1) ならば、ネームサーバへの問い合わせには、 接続された TCP ソケットを用"
5895 "い、連続した問い合わせの間に接続を維持する。 偽ならばネームサーバへの問い合わ"
5896 "せに UDP データグラムを用いる。"
5897
5898 #. type: Plain text
5899 #: build/C/man3/gethostbyname.3:212
5900 msgid ""
5901 "The B<endhostent>()  function ends the use of a TCP connection for name "
5902 "server queries."
5903 msgstr ""
5904 "B<endhostent>()  関数はネームサーバへの問い合わせに用いた TCP 接続の利用を終"
5905 "了する。"
5906
5907 #. type: Plain text
5908 #: build/C/man3/gethostbyname.3:217
5909 msgid ""
5910 "The (obsolete)  B<herror>()  function prints the error message associated "
5911 "with the current value of I<h_errno> on I<stderr>."
5912 msgstr ""
5913 "(廃止予定の)  B<herror>()  関数は現在の I<h_errno> に対応するエラーメッセージ"
5914 "を標準エラー I<stderr> に出力する。"
5915
5916 #. type: Plain text
5917 #: build/C/man3/gethostbyname.3:222
5918 msgid ""
5919 "The (obsolete)  B<hstrerror>()  function takes an error number (typically "
5920 "I<h_errno>) and returns the corresponding message string."
5921 msgstr ""
5922 "(廃止予定の)  B<hstrerror>()  関数はエラー番号 (通常は I<h_errno>) を引き数に"
5923 "取り、 対応するエラーメッセージ文字列を返す。"
5924
5925 #.  (See
5926 #.  .BR resolv+ (8)).
5927 #. type: Plain text
5928 #: build/C/man3/gethostbyname.3:239
5929 msgid ""
5930 "The domain name queries carried out by B<gethostbyname>()  and "
5931 "B<gethostbyaddr>()  use a combination of any or all of the name server "
5932 "B<named>(8), a broken out line from I</etc/hosts>, and the Network "
5933 "Information Service (NIS or YP), depending upon the contents of the I<order> "
5934 "line in I</etc/host.conf>.  The default action is to query B<named>(8), "
5935 "followed by I</etc/hosts>."
5936 msgstr ""
5937 "B<gethostbyname>()  と B<gethostbyaddr>()  によって実行されるドメイン名の問い"
5938 "合わせでは、ネームサーバ B<named>(8)、 I</etc/hosts> のデータ行、および "
5939 "Network Information Service (NIS または YP)  が組み合わせて使用される。何が使"
5940 "用されるかは、 I</etc/host.conf> の I<order> 行の内容により決まる。 デフォル"
5941 "トでは、まず B<named>(8)  に問い合わせを行い、次いで I</etc/hosts> を参照す"
5942 "る。"
5943
5944 #. type: Plain text
5945 #: build/C/man3/gethostbyname.3:241
5946 msgid "The I<hostent> structure is defined in I<E<lt>netdb.hE<gt>> as follows:"
5947 msgstr "I<hostent> 構造体は I<E<lt>netdb.hE<gt>> で以下のように定義されている:"
5948
5949 #. type: Plain text
5950 #: build/C/man3/gethostbyname.3:253
5951 #, no-wrap
5952 msgid ""
5953 "struct hostent {\n"
5954 "    char  *h_name;            /* official name of host */\n"
5955 "    char **h_aliases;         /* alias list */\n"
5956 "    int    h_addrtype;        /* host address type */\n"
5957 "    int    h_length;          /* length of address */\n"
5958 "    char **h_addr_list;       /* list of addresses */\n"
5959 "}\n"
5960 "#define h_addr h_addr_list[0] /* for backward compatibility */\n"
5961 msgstr ""
5962 "struct hostent {\n"
5963 "    char  *h_name;            /* official name of host */\n"
5964 "    char **h_aliases;         /* alias list */\n"
5965 "    int    h_addrtype;        /* host address type */\n"
5966 "    int    h_length;          /* length of address */\n"
5967 "    char **h_addr_list;       /* list of addresses */\n"
5968 "}\n"
5969 "#define h_addr h_addr_list[0] /* 過去との互換性のため */\n"
5970
5971 #. type: Plain text
5972 #: build/C/man3/gethostbyname.3:257
5973 msgid "The members of the I<hostent> structure are:"
5974 msgstr "I<hostent> 構造体のメンバは以下の通り。"
5975
5976 #. type: TP
5977 #: build/C/man3/gethostbyname.3:257 build/C/man3/getipnodebyname.3:210
5978 #, no-wrap
5979 msgid "I<h_name>"
5980 msgstr "I<h_name>"
5981
5982 #. type: Plain text
5983 #: build/C/man3/gethostbyname.3:260
5984 msgid "The official name of the host."
5985 msgstr "ホストの正式名 (official name)。"
5986
5987 #. type: TP
5988 #: build/C/man3/gethostbyname.3:260 build/C/man3/getipnodebyname.3:213
5989 #, no-wrap
5990 msgid "I<h_aliases>"
5991 msgstr "I<h_aliases>"
5992
5993 #. type: Plain text
5994 #: build/C/man3/gethostbyname.3:263
5995 msgid ""
5996 "An array of alternative names for the host, terminated by a null pointer."
5997 msgstr "ホストの別名の配列。配列はヌルポインタで終端される。"
5998
5999 #. type: TP
6000 #: build/C/man3/gethostbyname.3:263 build/C/man3/getipnodebyname.3:217
6001 #, no-wrap
6002 msgid "I<h_addrtype>"
6003 msgstr "I<h_addrtype>"
6004
6005 #. type: Plain text
6006 #: build/C/man3/gethostbyname.3:270
6007 msgid "The type of address; always B<AF_INET> or B<AF_INET6> at present."
6008 msgstr "アドレスのタイプ。現在はすべて B<AF_INET> または B<AF_INET6> である。"
6009
6010 #. type: TP
6011 #: build/C/man3/gethostbyname.3:270 build/C/man3/getipnodebyname.3:239
6012 #, no-wrap
6013 msgid "I<h_length>"
6014 msgstr "I<h_length>"
6015
6016 #. type: Plain text
6017 #: build/C/man3/gethostbyname.3:273
6018 msgid "The length of the address in bytes."
6019 msgstr "バイト単位で表したアドレスの長さ。"
6020
6021 #. type: TP
6022 #: build/C/man3/gethostbyname.3:273 build/C/man3/getipnodebyname.3:253
6023 #, no-wrap
6024 msgid "I<h_addr_list>"
6025 msgstr "I<h_addr_list>"
6026
6027 #. type: Plain text
6028 #: build/C/man3/gethostbyname.3:277
6029 msgid ""
6030 "An array of pointers to network addresses for the host (in network byte "
6031 "order), terminated by a null pointer."
6032 msgstr ""
6033 "ホストのネットワークアドレスへのポインタの配列。 配列はヌルポインタで終端され"
6034 "る。 ネットワークアドレスはネットワークバイトオーダ形式である。"
6035
6036 #. type: TP
6037 #: build/C/man3/gethostbyname.3:277
6038 #, no-wrap
6039 msgid "I<h_addr>"
6040 msgstr "I<h_addr>"
6041
6042 #. type: Plain text
6043 #: build/C/man3/gethostbyname.3:280
6044 msgid "The first address in I<h_addr_list> for backward compatibility."
6045 msgstr ""
6046 "I<h_addr_list> の最初のアドレス。過去との互換性を保つためのものである。"
6047
6048 #. type: Plain text
6049 #: build/C/man3/gethostbyname.3:292
6050 msgid ""
6051 "The B<gethostbyname>()  and B<gethostbyaddr>()  functions return the "
6052 "I<hostent> structure or a null pointer if an error occurs.  On error, the "
6053 "I<h_errno> variable holds an error number.  When non-NULL, the return value "
6054 "may point at static data, see the notes below."
6055 msgstr ""
6056 "B<gethostbyname>()  および B<gethostbyaddr>()  関数は I<hostent> 構造体を返"
6057 "す。エラーが起こったらヌルポインタを返す。エラーの際には I<h_errno> 変数がエ"
6058 "ラーの番号を保持する。 返り値が NULL でない場合、静的データをポインタで指して"
6059 "いることもある。 以下の「注意」を参照すること。"
6060
6061 #. type: Plain text
6062 #: build/C/man3/gethostbyname.3:294
6063 msgid "The variable I<h_errno> can have the following values:"
6064 msgstr "I<h_errno> 変数は以下の値を取りうる。"
6065
6066 #. type: TP
6067 #: build/C/man3/gethostbyname.3:294 build/C/man3/getipnodebyname.3:190
6068 #, no-wrap
6069 msgid "B<HOST_NOT_FOUND>"
6070 msgstr "B<HOST_NOT_FOUND>"
6071
6072 #. type: Plain text
6073 #: build/C/man3/gethostbyname.3:297
6074 msgid "The specified host is unknown."
6075 msgstr "指定したホストが見つからない。"
6076
6077 #. type: TP
6078 #: build/C/man3/gethostbyname.3:297
6079 #, no-wrap
6080 msgid "B<NO_ADDRESS> or B<NO_DATA>"
6081 msgstr "B<NO_ADDRESS  または  NO_DATA>"
6082
6083 #. type: Plain text
6084 #: build/C/man3/gethostbyname.3:300
6085 msgid "The requested name is valid but does not have an IP address."
6086 msgstr "指定した名前は有効だが IP アドレスを持っていない。"
6087
6088 #. type: TP
6089 #: build/C/man3/gethostbyname.3:300 build/C/man3/getipnodebyname.3:199
6090 #, no-wrap
6091 msgid "B<NO_RECOVERY>"
6092 msgstr "B<NO_RECOVERY>"
6093
6094 #. type: Plain text
6095 #: build/C/man3/gethostbyname.3:303
6096 msgid "A nonrecoverable name server error occurred."
6097 msgstr "ネームサーバの復旧不能なエラーが起こった。"
6098
6099 #. type: TP
6100 #: build/C/man3/gethostbyname.3:303 build/C/man3/getipnodebyname.3:202
6101 #, no-wrap
6102 msgid "B<TRY_AGAIN>"
6103 msgstr "B<TRY_AGAIN>"
6104
6105 #. type: Plain text
6106 #: build/C/man3/gethostbyname.3:307
6107 msgid ""
6108 "A temporary error occurred on an authoritative name server.  Try again later."
6109 msgstr ""
6110 "authoritative なネームサーバで一時的なエラーが起こった。 時間をおいてもう一度"
6111 "試すこと。"
6112
6113 #. type: TP
6114 #: build/C/man3/gethostbyname.3:308 build/C/man5/host.conf.5:181
6115 #, no-wrap
6116 msgid "I</etc/host.conf>"
6117 msgstr "I</etc/host.conf>"
6118
6119 #. type: Plain text
6120 #: build/C/man3/gethostbyname.3:311
6121 msgid "resolver configuration file"
6122 msgstr "名前解決の設定ファイル"
6123
6124 #. type: Plain text
6125 #: build/C/man3/gethostbyname.3:311 build/C/man5/host.conf.5:187
6126 #: build/C/man5/hosts.5:88
6127 #, no-wrap
6128 msgid "I</etc/hosts>"
6129 msgstr "I</etc/hosts>"
6130
6131 #. type: Plain text
6132 #: build/C/man3/gethostbyname.3:314
6133 msgid "host database file"
6134 msgstr "ホストのデータベースファイル"
6135
6136 #. type: Plain text
6137 #: build/C/man3/gethostbyname.3:314 build/C/man5/nsswitch.conf.5:306
6138 #: build/C/man3/setnetgrent.3:92
6139 #, no-wrap
6140 msgid "I</etc/nsswitch.conf>"
6141 msgstr "I</etc/nsswitch.conf>"
6142
6143 #. type: Plain text
6144 #: build/C/man3/gethostbyname.3:317
6145 msgid "name service switch configuration"
6146 msgstr "ネームサービス切替設定"
6147
6148 #. type: Plain text
6149 #: build/C/man3/gethostbyname.3:341
6150 msgid ""
6151 "POSIX.1-2001 specifies B<gethostbyname>(), B<gethostbyaddr>(), "
6152 "B<sethostent>(), B<endhostent>(), B<gethostent>(), and I<h_errno>; "
6153 "B<gethostbyname>(), B<gethostbyaddr>(), and I<h_errno> are marked "
6154 "obsolescent in that standard.  POSIX.1-2008 removes the specifications of "
6155 "B<gethostbyname>(), B<gethostbyaddr>(), and I<h_errno>, recommending the use "
6156 "of B<getaddrinfo>(3)  and B<getnameinfo>(3)  instead."
6157 msgstr ""
6158 "POSIX.1-2001 では、 B<gethostbyname>(), B<gethostbyaddr>(), B<sethostent>(), "
6159 "B<endhostent>(), B<gethostent>(), I<h_errno> が規定されており、 "
6160 "B<gethostbyaddr>()  と B<gethostbyname>()  は廃止予定であるとされている。 "
6161 "POSIX.1-2008 では B<gethostbyname>(), B<gethostbyaddr>(), I<h_errno> の仕様が"
6162 "削除されている。 代わりに、 B<getaddrinfo>(3)  と B<getnameinfo>(3)  の使用が"
6163 "推奨されている。"
6164
6165 #. type: Plain text
6166 #: build/C/man3/gethostbyname.3:351
6167 msgid ""
6168 "The functions B<gethostbyname>()  and B<gethostbyaddr>()  may return "
6169 "pointers to static data, which may be overwritten by later calls.  Copying "
6170 "the I<struct hostent> does not suffice, since it contains pointers; a deep "
6171 "copy is required."
6172 msgstr ""
6173 "B<gethostbyname>()  および B<gethostbyaddr>()  関数は静的データへのポインタを"
6174 "返す。 このポインタは、その後の呼び出しで上書きされるかもしれない。 "
6175 "I<hostent> 構造体はポインタを含んでいるので、構造体のコピーだけでは不十分であ"
6176 "る; より深いコピーが必要である。"
6177
6178 #. type: Plain text
6179 #: build/C/man3/gethostbyname.3:375
6180 msgid ""
6181 "In the original BSD implementation the I<len> argument of "
6182 "B<gethostbyname>()  was an I<int>.  The SUSv2 standard is buggy and declares "
6183 "the I<len> argument of B<gethostbyaddr>()  to be of type I<size_t>.  (That "
6184 "is wrong, because it has to be I<int>, and I<size_t> is not.  POSIX.1-2001 "
6185 "makes it I<socklen_t>, which is OK.)  See also B<accept>(2)."
6186 msgstr ""
6187 "オリジナルの BSD の実装では、 B<gethostbyname>()  の I<len> 引き数は I<int> "
6188 "であった。 SUSv2 標準はバグが多く、 B<gethostbyaddr>()  の I<len> パラメータ"
6189 "を I<size_t> 型として宣言している。 (これは誤りで、 I<size_t> 型ではなく "
6190 "I<int> 型でなければならない。 POSIX.1-2001 ではこれを I<socklen_t> としている"
6191 "が、これは OK。)  B<accept>(2)  も参照。"
6192
6193 #. type: Plain text
6194 #: build/C/man3/gethostbyname.3:381
6195 msgid ""
6196 "The BSD prototype for B<gethostbyaddr>()  uses I<const char\\ *> for the "
6197 "first argument."
6198 msgstr ""
6199 "B<gethostbyaddr>()  の BSD のプロトタイプは、最初の引き数として I<const char"
6200 "\\ *> を使う。"
6201
6202 #. type: SS
6203 #: build/C/man3/gethostbyname.3:381
6204 #, no-wrap
6205 msgid "System V/POSIX extension"
6206 msgstr "System V/POSIX 拡張"
6207
6208 #.  e.g., Linux, FreeBSD, UnixWare, HP-UX
6209 #.  e.g., FreeBSD, AIX
6210 #. type: Plain text
6211 #: build/C/man3/gethostbyname.3:398
6212 msgid ""
6213 "POSIX requires the B<gethostent>()  call, that should return the next entry "
6214 "in the host data base.  When using DNS/BIND this does not make much sense, "
6215 "but it may be reasonable if the host data base is a file that can be read "
6216 "line by line.  On many systems a routine of this name reads from the file I</"
6217 "etc/hosts>.  It may be available only when the library was built without DNS "
6218 "support.  The glibc version will ignore ipv6 entries.  This function is not "
6219 "reentrant, and glibc adds a reentrant version B<gethostent_r>()."
6220 msgstr ""
6221 "POSIX では、 B<gethostent>()  が必須とされている。 この関数はホストデータベー"
6222 "スの次のエントリを返す。 DNS/BIND を使う場合はあまり意味を持たないが、 ホスト"
6223 "データベースが 1 行ずつ読み込まれるファイルである場合は意味がある。 多くのシ"
6224 "ステムでは、この名前のルーチンはファイル I</etc/hosts> を読み込む。 DNS サ"
6225 "ポートなしでライブラリがビルドされた場合にのみ利用可能である。 glibc 版は "
6226 "ipv6 エントリを無視する。 この関数はリエントラント (reentrant) ではなく、 "
6227 "glibc にはリエントラント版の B<gethostent_r>()  が追加された。"
6228
6229 #. type: SS
6230 #: build/C/man3/gethostbyname.3:398
6231 #, no-wrap
6232 msgid "GNU extensions"
6233 msgstr "GNU 拡張"
6234
6235 #. type: Plain text
6236 #: build/C/man3/gethostbyname.3:404
6237 msgid ""
6238 "Glibc2 also has a B<gethostbyname2>()  that works like B<gethostbyname>(), "
6239 "but permits to specify the address family to which the address must belong."
6240 msgstr ""
6241 "glibc2 には B<gethostbyname2>()  もあり、 B<gethostbyname>()  と同じように動"
6242 "作するが、 こちらはアドレスが属するアドレスファミリーを指定することができる。"
6243
6244 #. type: Plain text
6245 #: build/C/man3/gethostbyname.3:438
6246 msgid ""
6247 "Glibc2 also has reentrant versions B<gethostent_r>(), B<gethostbyaddr_r>(), "
6248 "B<gethostbyname_r>()  and B<gethostbyname2_r>().  The caller supplies a "
6249 "I<hostent> structure I<ret> which will be filled in on success, and a "
6250 "temporary work buffer I<buf> of size I<buflen>.  After the call, I<result> "
6251 "will point to the result on success.  In case of an error or if no entry is "
6252 "found I<result> will be NULL.  The functions return 0 on success and a "
6253 "nonzero error number on failure.  In addition to the errors returned by the "
6254 "nonreentrant versions of these functions, if I<buf> is too small, the "
6255 "functions will return B<ERANGE>, and the call should be retried with a "
6256 "larger buffer.  The global variable I<h_errno> is not modified, but the "
6257 "address of a variable in which to store error numbers is passed in "
6258 "I<h_errnop>."
6259 msgstr ""
6260 "glibc2 にはリエントラントな B<gethostent_r>(), B<gethostbyaddr_r>(), "
6261 "B<gethostbyname_r>()  と B<gethostbyname2_r>()  もある。 呼び出し側は、成功時"
6262 "に結果が格納される I<hostent> 構造体 I<ret> と、大きさ I<buflen> の一時的な作"
6263 "業バッファ I<buf> を提供する。 コール終了後、成功した場合 I<result> は結果を"
6264 "指している。 エラーの場合、またはエントリが見つからなかった場合、 I<result> "
6265 "は NULL になる。 これらの関数は、成功した場合 0 を返し、失敗の場合は 0 以外の"
6266 "エラー番号を返す。 これらの関数のリエントラントでないバージョンが返すエラーに"
6267 "加えて、 これらの関数は、 I<buf> が小さすぎた場合に B<ERANGE> を返す。この場"
6268 "合はもっと大きなバッファを用意して 関数呼び出しを再度行うべきである。 大域変"
6269 "数 I<h_errno> は変更されないが、エラー番号を格納する変数のアドレスが "
6270 "I<h_errnop> に渡される。"
6271
6272 #.  http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=482973
6273 #. type: Plain text
6274 #: build/C/man3/gethostbyname.3:443
6275 msgid ""
6276 "B<gethostbyname>()  does not recognize components of a dotted IPv4 address "
6277 "string that are expressed in hexadecimal."
6278 msgstr ""
6279 "B<gethostbyname>()  は、16進数表現のドット区切りの IPv4 アドレス文字列の要素"
6280 "を認識しない。"
6281
6282 #.  .BR getipnodebyaddr (3),
6283 #.  .BR getipnodebyname (3),
6284 #.  .BR resolv+ (8)
6285 #. type: Plain text
6286 #: build/C/man3/gethostbyname.3:457
6287 msgid ""
6288 "B<getaddrinfo>(3), B<getnameinfo>(3), B<inet>(3), B<inet_ntop>(3), "
6289 "B<inet_pton>(3), B<resolver>(3), B<hosts>(5), B<nsswitch.conf>(5), "
6290 "B<hostname>(7), B<named>(8)"
6291 msgstr ""
6292 "B<getaddrinfo>(3), B<getnameinfo>(3), B<inet>(3), B<inet_ntop>(3), "
6293 "B<inet_pton>(3), B<resolver>(3), B<hosts>(5), B<nsswitch.conf>(5), "
6294 "B<hostname>(7), B<named>(8)"
6295
6296 #. type: TH
6297 #: build/C/man3/getipnodebyname.3:26
6298 #, no-wrap
6299 msgid "GETIPNODEBYNAME"
6300 msgstr "GETIPNODEBYNAME"
6301
6302 #. type: TH
6303 #: build/C/man3/getipnodebyname.3:26
6304 #, no-wrap
6305 msgid "2010-09-04"
6306 msgstr "2010-09-04"
6307
6308 #. type: Plain text
6309 #: build/C/man3/getipnodebyname.3:30
6310 msgid ""
6311 "getipnodebyname, getipnodebyaddr, freehostent - get network hostnames and "
6312 "addresses"
6313 msgstr ""
6314 "getipnodebyname, getipnodebyaddr, freehostent - ネットワークホストの名前とア"
6315 "ドレスの取得"
6316
6317 #. type: Plain text
6318 #: build/C/man3/getipnodebyname.3:38
6319 #, no-wrap
6320 msgid ""
6321 "B<struct hostent *getipnodebyname(const char *>I<name>B<, int >I<af>B<,>\n"
6322 "B<                                int >I<flags>B<, int *>I<error_num>B<);>\n"
6323 msgstr ""
6324 "B<struct hostent *getipnodebyname(const char *>I<name>B<, int >I<af>B<,>\n"
6325 "B<                                int >I<flags>B<, int *>I<error_num>B<);>\n"
6326
6327 #. type: Plain text
6328 #: build/C/man3/getipnodebyname.3:41
6329 #, no-wrap
6330 msgid ""
6331 "B<struct hostent *getipnodebyaddr(const void *>I<addr>B<, size_t >I<len>B<,>\n"
6332 "B<                                int >I<af>B<, int *>I<error_num>B<);>\n"
6333 msgstr ""
6334 "B<struct hostent *getipnodebyaddr(const void *>I<addr>B<, size_t >I<len>B<,>\n"
6335 "B<                                int >I<af>B<, int *>I<error_num>B<);>\n"
6336
6337 #. type: Plain text
6338 #: build/C/man3/getipnodebyname.3:43
6339 #, no-wrap
6340 msgid "B<void freehostent(struct hostent *>I<ip>B<);>\n"
6341 msgstr "B<void freehostent(struct hostent *>I<ip>B<);>\n"
6342
6343 #. type: Plain text
6344 #: build/C/man3/getipnodebyname.3:51
6345 msgid ""
6346 "These functions are deprecated (and unavailable in glibc).  Use "
6347 "B<getaddrinfo>(3)  and B<getnameinfo>(3)  instead."
6348 msgstr ""
6349 "これらの関数は非推奨である (glibc では利用できない)。 代わりに "
6350 "B<getaddrinfo>(3)  と B<getnameinfo>(3)  を使うこと。"
6351
6352 #. type: Plain text
6353 #: build/C/man3/getipnodebyname.3:59
6354 msgid ""
6355 "The B<getipnodebyname>()  and B<getipnodebyaddr>()  functions return the "
6356 "names and addresses of a network host.  These functions return a pointer to "
6357 "the following structure:"
6358 msgstr ""
6359 "B<getipnodebyname>()  と B<getipnodebyaddr>()  は、ネットワークホストの名前と"
6360 "アドレスを返す。 これらの関数は、以下の構造体へのポインタを返す。"
6361
6362 #. type: Plain text
6363 #: build/C/man3/getipnodebyname.3:69
6364 #, no-wrap
6365 msgid ""
6366 "struct hostent {\n"
6367 "    char  *h_name;\n"
6368 "    char **h_aliases;\n"
6369 "    int    h_addrtype;\n"
6370 "    int    h_length;\n"
6371 "    char **h_addr_list;\n"
6372 "};\n"
6373 msgstr ""
6374 "struct hostent {\n"
6375 "    char  *h_name;\n"
6376 "    char **h_aliases;\n"
6377 "    int    h_addrtype;\n"
6378 "    int    h_length;\n"
6379 "    char **h_addr_list;\n"
6380 "};\n"
6381
6382 #. type: Plain text
6383 #: build/C/man3/getipnodebyname.3:82
6384 msgid ""
6385 "These functions replace the B<gethostbyname>(3)  and B<gethostbyaddr>(3)  "
6386 "functions, which could access only the IPv4 network address family.  The "
6387 "B<getipnodebyname>()  and B<getipnodebyaddr>()  functions can access "
6388 "multiple network address families."
6389 msgstr ""
6390 "これらの関数は、 IPv4 ネットワークアドレスファミリにしかアクセスできない "
6391 "B<gethostbyname>(3)  や B<gethostbyaddr>(3)  を置き換えるものである。 "
6392 "B<getipnodebyname>()  関数と B<getipnodebyaddr>()  関数は複数のネットワークア"
6393 "ドレスファミリーにアクセス可能になっている。"
6394
6395 #. type: Plain text
6396 #: build/C/man3/getipnodebyname.3:93
6397 msgid ""
6398 "Unlike the B<gethostby> functions, these functions return pointers to "
6399 "dynamically allocated memory.  The B<freehostent>()  function is used to "
6400 "release the dynamically allocated memory after the caller no longer needs "
6401 "the I<hostent> structure."
6402 msgstr ""
6403 "これらの関数は、 B<gethostby> の関数群と異なり、動的に割り当てられたメモリへ"
6404 "のポインタを返す。 呼び出し元がこれらの I<hostent> 構造体を必要としなくなった"
6405 "後は、 B<freehostent>()  関数を用いれば動的な割り当てメモリを解放できる。"
6406
6407 #. type: SS
6408 #: build/C/man3/getipnodebyname.3:93
6409 #, no-wrap
6410 msgid "getipnodebyname() arguments"
6411 msgstr "getipnodebyname() の引き数"
6412
6413 #. type: Plain text
6414 #: build/C/man3/getipnodebyname.3:104
6415 msgid ""
6416 "The B<getipnodebyname>()  function looks up network addresses for the host "
6417 "specified by the I<name> argument.  The I<af> argument specifies one of the "
6418 "following values:"
6419 msgstr ""
6420 "B<getipnodebyname>()  関数は I<name> 引き数で指定されたホストのネットワークア"
6421 "ドレスを引く。 I<af> 引き数には以下の値のいずれかを指定する。"
6422
6423 #. type: TP
6424 #: build/C/man3/getipnodebyname.3:104 build/C/man3/getipnodebyname.3:166
6425 #: build/C/man3/inet_ntop.3:57 build/C/man3/inet_pton.3:53
6426 #, no-wrap
6427 msgid "B<AF_INET>"
6428 msgstr "B<AF_INET>"
6429
6430 #. type: Plain text
6431 #: build/C/man3/getipnodebyname.3:110
6432 msgid ""
6433 "The I<name> argument points to a dotted-quad IPv4 address or a name of an "
6434 "IPv4 network host."
6435 msgstr ""
6436 "I<name> 引き数は、ドットで 4 つに区切られた IPv4 アドレスか、 IPv4 ネットワー"
6437 "クホストの名前へのポインタである。"
6438
6439 #. type: TP
6440 #: build/C/man3/getipnodebyname.3:110 build/C/man3/getipnodebyname.3:176
6441 #: build/C/man3/inet_ntop.3:70 build/C/man3/inet_pton.3:67
6442 #, no-wrap
6443 msgid "B<AF_INET6>"
6444 msgstr "B<AF_INET6>"
6445
6446 #. type: Plain text
6447 #: build/C/man3/getipnodebyname.3:116
6448 msgid ""
6449 "The I<name> argument points to a hexadecimal IPv6 address or a name of an "
6450 "IPv6 network host."
6451 msgstr ""
6452 "I<name> 引き数は、16 進の IPv6 アドレスか、 IPv6 ネットワークホストの名前への"
6453 "ポインタである。"
6454
6455 #. type: Plain text
6456 #: build/C/man3/getipnodebyname.3:125
6457 msgid ""
6458 "The I<flags> argument specifies additional options.  More than one option "
6459 "can be specified by bitwise OR-ing them together.  I<flags> should be set to "
6460 "0 if no options are desired."
6461 msgstr ""
6462 "I<flags> パラメータには追加のオプションを指定する。 複数のフラグを指定するに"
6463 "は、それらのビット単位の OR をとって指定すればよい。 オプションをひとつも指定"
6464 "したくないときには、 I<flags> に 0 を設定する必要がある。"
6465
6466 #. type: TP
6467 #: build/C/man3/getipnodebyname.3:125
6468 #, no-wrap
6469 msgid "B<AI_V4MAPPED>"
6470 msgstr "B<AI_V4MAPPED>"
6471
6472 #. type: Plain text
6473 #: build/C/man3/getipnodebyname.3:132
6474 msgid ""
6475 "This flag is used with B<AF_INET6> to request a query for IPv4 addresses "
6476 "instead of IPv6 addresses; the IPv4 addresses will be mapped to IPv6 "
6477 "addresses."
6478 msgstr ""
6479 "このフラグは B<AF_INET6> と共に用いられ、IPv6 アドレスの代わりに IPv4 アドレ"
6480 "スを問い合わせる。 問い合わせる IPv4 アドレスは IPv6 アドレスにマップされる。"
6481
6482 #. type: TP
6483 #: build/C/man3/getipnodebyname.3:132
6484 #, no-wrap
6485 msgid "B<AI_ALL>"
6486 msgstr "B<AI_ALL>"
6487
6488 #. type: Plain text
6489 #: build/C/man3/getipnodebyname.3:138
6490 msgid ""
6491 "This flag is used with B<AI_V4MAPPED> to request a query for both IPv4 and "
6492 "IPv6 addresses.  Any IPv4 address found will be mapped to an IPv6 address."
6493 msgstr ""
6494 "このフラグは B<AI_V4MAPPED> と共に用いられ、IPv4 アドレスと IPv6 アドレスの両"
6495 "方を問い合わせる。 見つかった IPv4 アドレスは、すべて IPv6 アドレスにマップさ"
6496 "れる。"
6497
6498 #. type: TP
6499 #: build/C/man3/getipnodebyname.3:138
6500 #, no-wrap
6501 msgid "B<AI_ADDRCONFIG>"
6502 msgstr "B<AI_ADDRCONFIG>"
6503
6504 #. type: Plain text
6505 #: build/C/man3/getipnodebyname.3:150
6506 msgid ""
6507 "This flag is used with B<AF_INET6> to further request that queries for IPv6 "
6508 "addresses should not be made unless the system has at least one IPv6 address "
6509 "assigned to a network interface, and that queries for IPv4 addresses should "
6510 "not be made unless the system has at least one IPv4 address assigned to a "
6511 "network interface.  This flag may be used by itself or with the "
6512 "B<AI_V4MAPPED> flag."
6513 msgstr ""
6514 "このフラグは B<AF_INET6> と共に用いられ、 IPv6 が割り当てられたネットワークイ"
6515 "ンターフェースが システムにひとつもなければ IPv6 アドレスの問い合わせを行わ"
6516 "ず、 IPv4 が割り当てられたネットワークインターフェースが システムにひとつもな"
6517 "ければ IPv4 アドレスの問い合わせを行わないように要求する。 このフラグは単独で"
6518 "も、あるいは B<AI_V4MAPPED> フラグと共にでも用いることができる。"
6519
6520 #. type: TP
6521 #: build/C/man3/getipnodebyname.3:150
6522 #, no-wrap
6523 msgid "B<AI_DEFAULT>"
6524 msgstr "B<AI_DEFAULT>"
6525
6526 #. type: Plain text
6527 #: build/C/man3/getipnodebyname.3:154
6528 msgid "This flag is equivalent to B<(AI_ADDRCONFIG | AI_V4MAPPED)>."
6529 msgstr "このフラグは B<(AI_ADDRCONFIG>|B<AI_V4MAPPED)> と等価である。"
6530
6531 #. type: SS
6532 #: build/C/man3/getipnodebyname.3:154
6533 #, no-wrap
6534 msgid "getipnodebyaddr() arguments"
6535 msgstr "getipnodebyaddr() の引き数"
6536
6537 #. type: Plain text
6538 #: build/C/man3/getipnodebyname.3:166
6539 msgid ""
6540 "The B<getipnodebyaddr>()  function looks up the name of the host whose "
6541 "network address is specified by the I<addr> argument.  The I<af> argument "
6542 "specifies one of the following values:"
6543 msgstr ""
6544 "B<getipnodebyaddr>()  関数は、ネットワークアドレスが I<addr> 引き数で指定され"
6545 "たホストの名前を引く。 I<af> 引き数には以下の値のいずれかを指定する。"
6546
6547 #. type: Plain text
6548 #: build/C/man3/getipnodebyname.3:176
6549 msgid ""
6550 "The I<addr> argument points to a I<struct in_addr> and I<len> must be set to "
6551 "I<sizeof(struct in_addr)>."
6552 msgstr ""
6553 "I<addr> 引き数は I<struct in_addr> へのポインターであり、 I<len> 引き数は "
6554 "I<sizeof(struct in_addr)> に設定しなければならない。"
6555
6556 #. type: Plain text
6557 #: build/C/man3/getipnodebyname.3:186
6558 msgid ""
6559 "The I<addr> argument points to a I<struct in6_addr> and I<len> must be set "
6560 "to I<sizeof(struct in6_addr)>."
6561 msgstr ""
6562 "I<addr> 引き数は I<struct in6_addr> へのポインターであり、 I<len> 引き数は "
6563 "I<sizeof(struct in6_addr)> に設定しなければならない。"
6564
6565 #. type: Plain text
6566 #: build/C/man3/getipnodebyname.3:190
6567 msgid ""
6568 "NULL is returned if an error occurred, and I<error_num> will contain an "
6569 "error code from the following list:"
6570 msgstr ""
6571 "エラーが起こると NULL が返され、 I<error_num> に以下にリストされたエラーコー"
6572 "ドのいずれかが設定される。"
6573
6574 #. type: Plain text
6575 #: build/C/man3/getipnodebyname.3:193
6576 msgid "The hostname or network address was not found."
6577 msgstr "ホスト名またはネットワークアドレスが見つからなかった。"
6578
6579 #. type: TP
6580 #: build/C/man3/getipnodebyname.3:193
6581 #, no-wrap
6582 msgid "B<NO_ADDRESS>"
6583 msgstr "B<NO_ADDRESS>"
6584
6585 #. type: Plain text
6586 #: build/C/man3/getipnodebyname.3:199
6587 msgid ""
6588 "The domain name server recognized the network address or name, but no answer "
6589 "was returned.  This can happen if the network host has only IPv4 addresses "
6590 "and a request has been made for IPv6 information only, or vice versa."
6591 msgstr ""
6592 "ドメインネームサーバーは そのネットワークアドレスまたはネットワーク名を認識し"
6593 "たが、 返事が返ってこなかった。原因としては、 例えば IPv4 アドレスしか持たな"
6594 "いネットワークホストに対して IPv6 の情報の問い合わせが行われた (およびその"
6595 "逆) などが考えられる。"
6596
6597 #. type: Plain text
6598 #: build/C/man3/getipnodebyname.3:202
6599 msgid "The domain name server returned a permanent failure response."
6600 msgstr ""
6601 "ドメインネームサーバーから恒久的な失敗 (permanent failure)  を意味する返事が"
6602 "返された。"
6603
6604 #. type: Plain text
6605 #: build/C/man3/getipnodebyname.3:206
6606 msgid ""
6607 "The domain name server returned a temporary failure response.  You might "
6608 "have better luck next time."
6609 msgstr ""
6610 "ネームサーバーから一時的な失敗 (temporary failure)  を意味する返事が返され"
6611 "た。次にはもうちょっと運が必要かも。"
6612
6613 #. type: Plain text
6614 #: build/C/man3/getipnodebyname.3:210
6615 msgid ""
6616 "A successful query returns a pointer to a I<hostent> structure that contains "
6617 "the following fields:"
6618 msgstr ""
6619 "問い合わせに成功すると、 I<hostent> 構造体へのポインタが返される。 この構造体"
6620 "は以下のフィールドからなる。"
6621
6622 #. type: Plain text
6623 #: build/C/man3/getipnodebyname.3:213
6624 msgid "This is the official name of this network host."
6625 msgstr "これはこのネットワークホストのオフィシャルな名前である。"
6626
6627 #. type: Plain text
6628 #: build/C/man3/getipnodebyname.3:217
6629 msgid ""
6630 "This is an array of pointers to unofficial aliases for the same host.  The "
6631 "array is terminated by a null pointer."
6632 msgstr ""
6633 "これは、そのホストのオフィシャルでない別名へのポインターの配列である。 配列は"
6634 "ヌルポインターで終端する。"
6635
6636 #. type: Plain text
6637 #: build/C/man3/getipnodebyname.3:239
6638 msgid ""
6639 "This is a copy of the I<af> argument to B<getipnodebyname>()  or "
6640 "B<getipnodebyaddr>().  I<h_addrtype> will always be B<AF_INET> if the I<af> "
6641 "argument was B<AF_INET>.  I<h_addrtype> will always be B<AF_INET6> if the "
6642 "I<af> argument was B<AF_INET6>."
6643 msgstr ""
6644 "これは B<getipnodebyname>()  または B<getipnodebyaddr>()  に与えられた I<af> "
6645 "引き数のコピーである。 I<af> 引き数が B<AF_INET> なら I<h_addrtype> は常に "
6646 "B<AF_INET> になり、 I<af> 引き数が B<AF_INET6> なら I<h_addrtype> も常に "
6647 "B<AF_INET6> になる。"
6648
6649 #. type: Plain text
6650 #: build/C/man3/getipnodebyname.3:253
6651 msgid ""
6652 "This field will be set to I<sizeof(struct in_addr)> if I<h_addrtype> is "
6653 "B<AF_INET>, and to I<sizeof(struct in6_addr)> if I<h_addrtype> is "
6654 "B<AF_INET6>."
6655 msgstr ""
6656 "このフィールドは、 I<h_addrtype> が B<AF_INET> なら I<sizeof(struct "
6657 "in_addr)> に、 I<h_addrtype> が B<AF_INET6> なら I<sizeof(struct in6_addr)> "
6658 "に設定される。"
6659
6660 #. type: Plain text
6661 #: build/C/man3/getipnodebyname.3:258
6662 msgid ""
6663 "This is an array of one or more pointers to network address structures for "
6664 "the network host.  The array is terminated by a null pointer."
6665 msgstr ""
6666 "これはひとつ以上のポインターの配列で、 それぞれのポインターは、 そのネット"
6667 "ワークホストに対応するネットワークアドレス構造体を指す。 この配列はヌルポイン"
6668 "ターで終端する。"
6669
6670 #.  Not in POSIX.1-2001.
6671 #. type: Plain text
6672 #: build/C/man3/getipnodebyname.3:261
6673 msgid "RFC\\ 2553."
6674 msgstr "RFC\\ 2553."
6675
6676 #. type: Plain text
6677 #: build/C/man3/getipnodebyname.3:266
6678 msgid ""
6679 "These functions were present in glibc 2.1.91-95, but were removed again.  "
6680 "Several UNIX-like systems support them, but all call them deprecated."
6681 msgstr ""
6682 "これらの関数は glibc 2.1.91-95 に存在したが、再び削除された。 いくつかの "
6683 "UNIX 風システムはこれらの関数に対応しているが、 これらの関数は全て推奨されな"
6684 "い。"
6685
6686 #. type: Plain text
6687 #: build/C/man3/getipnodebyname.3:271
6688 msgid "B<getaddrinfo>(3), B<getnameinfo>(3), B<inet_ntop>(3), B<inet_pton>(3)"
6689 msgstr "B<getaddrinfo>(3), B<getnameinfo>(3), B<inet_ntop>(3), B<inet_pton>(3)"
6690
6691 #. type: TH
6692 #: build/C/man3/getnameinfo.3:10
6693 #, no-wrap
6694 msgid "GETNAMEINFO"
6695 msgstr "GETNAMEINFO"
6696
6697 #. type: Plain text
6698 #: build/C/man3/getnameinfo.3:13
6699 msgid ""
6700 "getnameinfo - address-to-name translation in protocol-independent manner"
6701 msgstr ""
6702 "getnameinfo - アドレスから名前への変換をプロトコルに依存しないかたちで行う"
6703
6704 #. type: Plain text
6705 #: build/C/man3/getnameinfo.3:17
6706 #, no-wrap
6707 msgid ""
6708 "B<#include E<lt>sys/socket.hE<gt>>\n"
6709 "B<#include E<lt>netdb.hE<gt>>\n"
6710 msgstr ""
6711 "B<#include E<lt>sys/socket.hE<gt>>\n"
6712 "B<#include E<lt>netdb.hE<gt>>\n"
6713
6714 #. type: Plain text
6715 #: build/C/man3/getnameinfo.3:21
6716 #, no-wrap
6717 msgid ""
6718 "B<int getnameinfo(const struct sockaddr *>I<sa>B<, socklen_t >I<salen>B<,>\n"
6719 "B<                char *>I<host>B<, socklen_t >I<hostlen>B<,>\n"
6720 "B<                char *>I<serv>B<, socklen_t >I<servlen>B<, int >I<flags>B<);>\n"
6721 msgstr ""
6722 "B<int getnameinfo(const struct sockaddr *>I<sa>B<, socklen_t >I<salen>B<,>\n"
6723 "B<                char *>I<host>B<, socklen_t >I<hostlen>B<,>\n"
6724 "B<                char *>I<serv>B<, socklen_t >I<servlen>B<, int >I<flags>B<);>\n"
6725
6726 #. type: Plain text
6727 #: build/C/man3/getnameinfo.3:31
6728 msgid ""
6729 "B<getnameinfo>(): _POSIX_C_SOURCE\\ E<gt>=\\ 1 || _XOPEN_SOURCE || "
6730 "_POSIX_SOURCE"
6731 msgstr ""
6732 "B<getnameinfo>(): _POSIX_C_SOURCE\\ E<gt>=\\ 1 || _XOPEN_SOURCE || "
6733 "_POSIX_SOURCE"
6734
6735 #. type: Plain text
6736 #: build/C/man3/getnameinfo.3:47
6737 msgid ""
6738 "The B<getnameinfo>()  function is the inverse of B<getaddrinfo>(3): it "
6739 "converts a socket address to a corresponding host and service, in a protocol-"
6740 "independent manner.  It combines the functionality of B<gethostbyaddr>(3)  "
6741 "and B<getservbyport>(3), but unlike those functions, B<getnameinfo>()  is "
6742 "reentrant and allows programs to eliminate IPv4-versus-IPv6 dependencies."
6743 msgstr ""
6744 "B<getnameinfo>()  関数は、 B<getaddrinfo>(3)  の逆の動作を行う。つまり、プロ"
6745 "トコルに依存しないかたちで ソケットアドレスから対応するホスト名とサービスへの"
6746 "変換を行う。 この関数は B<gethostbyaddr>(3)  と B<getservbyport>(3)  の機能を"
6747 "一つにしたものだが、 これらの関数と違い、 B<getnameinfo>(3)  はリエントラント"
6748 "であり、IPv4 と IPv6 の差分に依存しないかたちで プログラムを書くことができ"
6749 "る。"
6750
6751 #. type: Plain text
6752 #: build/C/man3/getnameinfo.3:70
6753 msgid ""
6754 "The I<sa> argument is a pointer to a generic socket address structure (of "
6755 "type I<sockaddr_in> or I<sockaddr_in6>)  of size I<salen> that holds the "
6756 "input IP address and port number.  The arguments I<host> and I<serv> are "
6757 "pointers to caller-allocated buffers (of size I<hostlen> and I<servlen> "
6758 "respectively) into which B<getnameinfo>()  places null-terminated strings "
6759 "containing the host and service names respectively."
6760 msgstr ""
6761 "I<sa> 引き数は、 IP アドレスとポート番号の情報を保持している 汎用的なソケット"
6762 "アドレス構造体 (I<sockaddr_in> 型または I<sockaddr_in6> 型) へのポインタであ"
6763 "る。 I<salen> は I<sa> のサイズである。 I<host> と I<serv> 引き数は、(それぞ"
6764 "れサイズが I<hostlen> と I<servlen> の) 呼び出し側で確保されたバッファへのポ"
6765 "インタであり、 ホスト名とサービス名を含むヌル終端された文字列が それぞれの"
6766 "バッファに格納される。"
6767
6768 #. type: Plain text
6769 #: build/C/man3/getnameinfo.3:83
6770 msgid ""
6771 "The caller can specify that no hostname (or no service name)  is required by "
6772 "providing a NULL I<host> (or I<serv>)  argument or a zero I<hostlen> (or "
6773 "I<servlen>)  argument.  However, at least one of hostname or service name "
6774 "must be requested."
6775 msgstr ""
6776 "ホスト名が不要であることをこの関数に伝えるには、 I<host> に NULL を指定する"
6777 "か、 I<hostlen> に 0 を指定する。同様に、サービス名が不要な場合は、 I<serv> "
6778 "に NULL を指定するか、 I<servlen> に 0 を指定する。 しかし、ホスト名とサービ"
6779 "ス名の両方を不要だと指定することはできない (いずれか一方は要求すること)。"
6780
6781 #. type: Plain text
6782 #: build/C/man3/getnameinfo.3:89
6783 msgid ""
6784 "The I<flags> argument modifies the behavior of B<getnameinfo>()  as follows:"
6785 msgstr ""
6786 "I<flags> 引き数で B<getnameinfo>()  の動作を変えることができる。指定できる値"
6787 "は以下の通り:"
6788
6789 #. type: TP
6790 #: build/C/man3/getnameinfo.3:89
6791 #, no-wrap
6792 msgid "B<NI_NAMEREQD>"
6793 msgstr "B<NI_NAMEREQD>"
6794
6795 #. type: Plain text
6796 #: build/C/man3/getnameinfo.3:92
6797 msgid "If set, then an error is returned if the hostname cannot be determined."
6798 msgstr "指定すると、ホスト名が決定できなかった場合にエラーを返す。"
6799
6800 #. type: TP
6801 #: build/C/man3/getnameinfo.3:92
6802 #, no-wrap
6803 msgid "B<NI_DGRAM>"
6804 msgstr "B<NI_DGRAM>"
6805
6806 #. type: Plain text
6807 #: build/C/man3/getnameinfo.3:98
6808 msgid ""
6809 "If set, then the service is datagram (UDP) based rather than stream (TCP) "
6810 "based.  This is required for the few ports (512-514)  that have different "
6811 "services for UDP and TCP."
6812 msgstr ""
6813 "指定すると、ストリームベース (TCP) でなくデータグラムベース (UDP)  のサービス"
6814 "を対象にする。数は少ないが、 UDP と TCP で違うサービスを提供しているポート "
6815 "(512-514) に対して必要となる。"
6816
6817 #. type: TP
6818 #: build/C/man3/getnameinfo.3:98
6819 #, no-wrap
6820 msgid "B<NI_NOFQDN>"
6821 msgstr "B<NI_NOFQDN>"
6822
6823 #. type: Plain text
6824 #: build/C/man3/getnameinfo.3:102
6825 msgid ""
6826 "If set, return only the hostname part of the fully qualified domain name for "
6827 "local hosts."
6828 msgstr ""
6829 "指定すると、ローカルなホストには fully qualified domain name (FQDN) の ホスト"
6830 "名の部分のみを返す。"
6831
6832 #. type: TP
6833 #: build/C/man3/getnameinfo.3:102
6834 #, no-wrap
6835 msgid "B<NI_NUMERICHOST>"
6836 msgstr "B<NI_NUMERICHOST>"
6837
6838 #.  For example, by calling
6839 #.  .BR inet_ntop ()
6840 #.  instead of
6841 #.  .BR gethostbyaddr ().
6842 #.  POSIX.1-2003 has NI_NUMERICSCOPE, but glibc doesn't have it.
6843 #. type: Plain text
6844 #: build/C/man3/getnameinfo.3:112
6845 msgid ""
6846 "If set, then the numeric form of the hostname is returned.  (When not set, "
6847 "this will still happen in case the node's name cannot be determined.)"
6848 msgstr ""
6849 "指定すると、数値形式のホスト名が返される。 (指定しなくても、ノードの名前が決"
6850 "定できない場合は数値形式が返ることがある)。"
6851
6852 #. type: TP
6853 #: build/C/man3/getnameinfo.3:112
6854 #, no-wrap
6855 msgid "B<NI_NUMERICSERV>"
6856 msgstr "B<NI_NUMERICSERV>"
6857
6858 #. type: Plain text
6859 #: build/C/man3/getnameinfo.3:117
6860 msgid ""
6861 "If set, then the numeric form of the service address is returned.  (When not "
6862 "set, this will still happen in case the service's name cannot be determined.)"
6863 msgstr ""
6864 "指定すると、数値形式のサービス名 (例えばポート番号) が返される (指定しなくて"
6865 "も、サービス名が決定できない場合は数値形式が返ることがある)。"
6866
6867 #. type: SS
6868 #: build/C/man3/getnameinfo.3:117
6869 #, no-wrap
6870 msgid "Extensions to getnameinfo() for Internationalized Domain Names"
6871 msgstr "国際化ドメイン名のための getnameinfo() の拡張"
6872
6873 #. type: Plain text
6874 #: build/C/man3/getnameinfo.3:126
6875 msgid ""
6876 "Starting with glibc 2.3.4, B<getnameinfo>()  has been extended to "
6877 "selectively allow hostnames to be transparently converted to and from the "
6878 "Internationalized Domain Name (IDN) format (see RFC 3490, "
6879 "I<Internationalizing Domain Names in Applications (IDNA)>).  Three new flags "
6880 "are defined:"
6881 msgstr ""
6882 "glibc 2.3.4 から、 B<getnameinfo>()  に拡張が行われ、ホスト名と 国際化ドメイ"
6883 "ン名 (Internationalized Domain Name; IDN) 形式との間で 透過的な変換ができるよ"
6884 "うになっている (IDN 形式については RFC 3490 の I<Internationalizing Domain "
6885 "Names in Applications (IDNA)> を参照)。3つのフラグが新たに定義されている:"
6886
6887 #. type: TP
6888 #: build/C/man3/getnameinfo.3:126
6889 #, no-wrap
6890 msgid "B<NI_IDN>"
6891 msgstr "B<NI_IDN>"
6892
6893 #. type: Plain text
6894 #: build/C/man3/getnameinfo.3:132
6895 msgid ""
6896 "If this flag is used, then the name found in the lookup process is converted "
6897 "from IDN format to the locale's encoding if necessary.  ASCII-only names are "
6898 "not affected by the conversion, which makes this flag usable in existing "
6899 "programs and environments."
6900 msgstr ""
6901 "このフラグを指定すると、必要であれば、検索処理で見つかった名前は IDN 形式から"
6902 "ロケールに応じた符号化形式に変換される。 ASCII 文字だけの名前はこの変換では影"
6903 "響を受けない。このため、 既存のプログラムや環境でこのフラグを使うことができ"
6904 "る。"
6905
6906 #. type: TP
6907 #: build/C/man3/getnameinfo.3:132
6908 #, no-wrap
6909 msgid "B<NI_IDN_ALLOW_UNASSIGNED>, B<NI_IDN_USE_STD3_ASCII_RULES>"
6910 msgstr "B<NI_IDN_ALLOW_UNASSIGNED>, B<NI_IDN_USE_STD3_ASCII_RULES>"
6911
6912 #.  FIXME glibc defines the following additional errors, some which
6913 #.  can probably be returned by getnameinfo(); they need to
6914 #.  be documented.
6915 #.  #ifdef __USE_GNU
6916 #.  #define EAI_INPROGRESS  -100  /* Processing request in progress.  */
6917 #.  #define EAI_CANCELED    -101  /* Request canceled.  */
6918 #.  #define EAI_NOTCANCELED -102  /* Request not canceled.  */
6919 #.  #define EAI_ALLDONE     -103  /* All requests done.  */
6920 #.  #define EAI_INTR        -104  /* Interrupted by a signal.  */
6921 #.  #define EAI_IDN_ENCODE  -105  /* IDN encoding failed.  */
6922 #.  #endif
6923 #. type: Plain text
6924 #: build/C/man3/getnameinfo.3:155
6925 msgid ""
6926 "On success 0 is returned, and node and service names, if requested, are "
6927 "filled with null-terminated strings, possibly truncated to fit the specified "
6928 "buffer lengths.  On error, one of the following nonzero error codes is "
6929 "returned:"
6930 msgstr ""
6931 "成功すると 0 が返り、(要求されていれば) ノードとサービスの名前がヌル終端され"
6932 "た文字列の形式でそれぞれの指定バッファに返される (バッファの長さにあうように"
6933 "縮められるかもしれない)。 エラーの場合は、以下の 0 以外のエラー・コードが返さ"
6934 "れる:"
6935
6936 #. type: Plain text
6937 #: build/C/man3/getnameinfo.3:159
6938 msgid "The name could not be resolved at this time.  Try again later."
6939 msgstr "指定された名前が現時点では解決できなかった。 後で再試行してみること。"
6940
6941 #. type: Plain text
6942 #: build/C/man3/getnameinfo.3:164
6943 msgid "The I<flags> argument has an invalid value."
6944 msgstr "I<flags> 引き数に不正な値が与えられた。"
6945
6946 #. type: Plain text
6947 #: build/C/man3/getnameinfo.3:167
6948 msgid "A nonrecoverable error occurred."
6949 msgstr "回復できないエラーが発生した。"
6950
6951 #. type: Plain text
6952 #: build/C/man3/getnameinfo.3:171
6953 msgid ""
6954 "The address family was not recognized, or the address length was invalid for "
6955 "the specified family."
6956 msgstr ""
6957 "指定したアドレスファミリーが認識できなかった。 あるいはアドレスの長さが指定さ"
6958 "れたファミリーに合うものでなかった。"
6959
6960 #. type: Plain text
6961 #: build/C/man3/getnameinfo.3:180
6962 msgid ""
6963 "The name does not resolve for the supplied arguments.  B<NI_NAMEREQD> is set "
6964 "and the host's name cannot be located, or neither hostname nor service name "
6965 "were requested."
6966 msgstr ""
6967 "与えられたパラメータでは名前が解決できない。 B<NI_NAMEREQD> が設定されていた"
6968 "がホスト名が決定できなかったか、 ホスト名もサービス名も要求されなかった。"
6969
6970 #. type: TP
6971 #: build/C/man3/getnameinfo.3:180
6972 #, no-wrap
6973 msgid "B<EAI_OVERFLOW>"
6974 msgstr "B<EAI_OVERFLOW>"
6975
6976 #. type: Plain text
6977 #: build/C/man3/getnameinfo.3:187
6978 msgid "The buffer pointed to by I<host> or I<serv> was too small."
6979 msgstr "I<host> または I<serv> が指しているバッファが小さすぎた。"
6980
6981 #. type: Plain text
6982 #: build/C/man3/getnameinfo.3:192
6983 msgid "A system error occurred.  The error code can be found in I<errno>."
6984 msgstr "システムエラーが起った。 エラーコードは I<errno> に設定される。"
6985
6986 #. type: Plain text
6987 #: build/C/man3/getnameinfo.3:199
6988 msgid "/etc/hosts"
6989 msgstr "/etc/hosts"
6990
6991 #. type: Plain text
6992 #: build/C/man3/getnameinfo.3:201
6993 msgid "/etc/nsswitch.conf"
6994 msgstr "/etc/nsswitch.conf"
6995
6996 #. type: Plain text
6997 #: build/C/man3/getnameinfo.3:203
6998 msgid "/etc/resolv.conf"
6999 msgstr "/etc/resolv.conf"
7000
7001 #. type: Plain text
7002 #: build/C/man3/getnameinfo.3:206
7003 msgid "B<getnameinfo>()  is provided in glibc since version 2.1."
7004 msgstr "B<getnameinfo>()  は、glibc バージョン 2.1 以降で提供されている。"
7005
7006 #. type: Plain text
7007 #: build/C/man3/getnameinfo.3:208
7008 msgid "RFC\\ 2553, POSIX.1-2001."
7009 msgstr "RFC\\ 2553, POSIX.1-2001."
7010
7011 #. type: Plain text
7012 #: build/C/man3/getnameinfo.3:213
7013 msgid ""
7014 "In order to assist the programmer in choosing reasonable sizes for the "
7015 "supplied buffers, I<E<lt>netdb.hE<gt>> defines the constants"
7016 msgstr ""
7017 "適切なバッファサイズを選択できるように、 I<E<lt>netdb.hE<gt>> に以下の定数が"
7018 "定義されている。"
7019
7020 #. type: Plain text
7021 #: build/C/man3/getnameinfo.3:218
7022 #, no-wrap
7023 msgid ""
7024 "#define NI_MAXHOST      1025\n"
7025 "#define NI_MAXSERV      32\n"
7026 msgstr ""
7027 "#define NI_MAXHOST      1025\n"
7028 "#define NI_MAXSERV      32\n"
7029
7030 #. type: Plain text
7031 #: build/C/man3/getnameinfo.3:228
7032 msgid ""
7033 "Since glibc 2.8, these definitions are exposed only if one of the feature "
7034 "test macros B<_BSD_SOURCE>, B<_SVID_SOURCE>, or B<_GNU_SOURCE> is defined."
7035 msgstr ""
7036 "glibc 2.8 以降では、機能検査マクロ B<_BSD_SOURCE>, B<_SVID_SOURCE>, "
7037 "B<_GNU_SOURCE> のいずれかが定義された場合にのみ、これらの定義が公開される。"
7038
7039 #. type: Plain text
7040 #: build/C/man3/getnameinfo.3:236
7041 msgid ""
7042 "The former is the constant B<MAXDNAME> in recent versions of BIND's "
7043 "I<E<lt>arpa/nameser.hE<gt>> header file.  The latter is a guess based on the "
7044 "services listed in the current Assigned Numbers RFC."
7045 msgstr ""
7046 "前者は、最近のバージョンの BIND のヘッダファイル I<E<lt>arpa/nameser.hE<gt>> "
7047 "中の定数 B<MAXDNAME> と同じ値である。 後者は、割り当て済の数値について記した"
7048 "現在の RFC に 列挙されてサービスから推量した値である。"
7049
7050 #. type: Plain text
7051 #: build/C/man3/getnameinfo.3:243
7052 msgid ""
7053 "Before glibc version 2.2, the I<hostlen> and I<servlen> arguments were typed "
7054 "as I<size_t>."
7055 msgstr ""
7056 "glibc バージョン 2.2 より前では、 引き数 I<hostlen>, I<servlen> の型は "
7057 "I<size_t> であった。"
7058
7059 #. type: Plain text
7060 #: build/C/man3/getnameinfo.3:248
7061 msgid ""
7062 "The following code tries to get the numeric hostname and service name, for a "
7063 "given socket address.  Note that there is no hardcoded reference to a "
7064 "particular address family."
7065 msgstr ""
7066 "以下のコードは、指定されたソケットアドレスに対する ホストとサービスの数値表式"
7067 "を取得しようと試みる。 特定のアドレスファミリーに対する参照情報は 一切ハード"
7068 "コードされていないことに着目してほしい。"
7069
7070 #. type: Plain text
7071 #: build/C/man3/getnameinfo.3:254
7072 #, no-wrap
7073 msgid ""
7074 "struct sockaddr *sa;    /* input */\n"
7075 "socklen_t len;         /* input */\n"
7076 "char hbuf[NI_MAXHOST], sbuf[NI_MAXSERV];\n"
7077 msgstr ""
7078 "struct sockaddr *sa;    /* input */\n"
7079 "socklen_t len;          /* input */\n"
7080 "char hbuf[NI_MAXHOST], sbuf[NI_MAXSERV];\n"
7081
7082 #. type: Plain text
7083 #: build/C/man3/getnameinfo.3:258
7084 #, no-wrap
7085 msgid ""
7086 "if (getnameinfo(sa, len, hbuf, sizeof(hbuf), sbuf,\n"
7087 "            sizeof(sbuf), NI_NUMERICHOST | NI_NUMERICSERV) == 0)\n"
7088 "    printf(\"host=%s, serv=%s\\en\", hbuf, sbuf);\n"
7089 msgstr ""
7090 "if (getnameinfo(sa, len, hbuf, sizeof(hbuf), sbuf,\n"
7091 "            sizeof(sbuf), NI_NUMERICHOST | NI_NUMERICSERV) == 0)\n"
7092 "    printf(\"host=%s, serv=%s\\en\", hbuf, sbuf);\n"
7093
7094 #. type: Plain text
7095 #: build/C/man3/getnameinfo.3:263
7096 msgid ""
7097 "The following version checks if the socket address has a reverse address "
7098 "mapping."
7099 msgstr ""
7100 "以下ではソケットアドレスに 逆向きのアドレスマッピングが存在するかをチェックし"
7101 "ている。"
7102
7103 #. type: Plain text
7104 #: build/C/man3/getnameinfo.3:269
7105 #, no-wrap
7106 msgid ""
7107 "struct sockaddr *sa;    /* input */\n"
7108 "socklen_t len;         /* input */\n"
7109 "char hbuf[NI_MAXHOST];\n"
7110 msgstr ""
7111 "struct sockaddr *sa;    /* input */\n"
7112 "socklen_t len;          /* input */\n"
7113 "char hbuf[NI_MAXHOST];\n"
7114
7115 #. type: Plain text
7116 #: build/C/man3/getnameinfo.3:275
7117 #, no-wrap
7118 msgid ""
7119 "if (getnameinfo(sa, len, hbuf, sizeof(hbuf),\n"
7120 "            NULL, 0, NI_NAMEREQD))\n"
7121 "    printf(\"could not resolve hostname\");\n"
7122 "else\n"
7123 "    printf(\"host=%s\\en\", hbuf);\n"
7124 msgstr ""
7125 "if (getnameinfo(sa, len, hbuf, sizeof(hbuf),\n"
7126 "            NULL, 0, NI_NAMEREQD))\n"
7127 "    printf(\"could not resolve hostname\");\n"
7128 "else\n"
7129 "    printf(\"host=%s\\en\", hbuf);\n"
7130
7131 #. type: Plain text
7132 #: build/C/man3/getnameinfo.3:282
7133 msgid ""
7134 "An example program using B<getnameinfo>()  can be found in B<getaddrinfo>(3)."
7135 msgstr ""
7136 "B<getnameinfo>()  を使ったプログラム例が B<getaddrinfo>(3)  に記載されてい"
7137 "る。"
7138
7139 #. type: Plain text
7140 #: build/C/man3/getnameinfo.3:297
7141 msgid ""
7142 "B<accept>(2), B<getpeername>(2), B<getsockname>(2), B<recvfrom>(2), "
7143 "B<socket>(2), B<getaddrinfo>(3), B<gethostbyaddr>(3), B<getservbyname>(3), "
7144 "B<getservbyport>(3), B<inet_ntop>(3), B<hosts>(5), B<services>(5), "
7145 "B<hostname>(7), B<named>(8)"
7146 msgstr ""
7147 "B<accept>(2), B<getpeername>(2), B<getsockname>(2), B<recvfrom>(2), "
7148 "B<socket>(2), B<getaddrinfo>(3), B<gethostbyaddr>(3), B<getservbyname>(3), "
7149 "B<getservbyport>(3), B<inet_ntop>(3), B<hosts>(5), B<services>(5), "
7150 "B<hostname>(7), B<named>(8)"
7151
7152 #. type: Plain text
7153 #: build/C/man3/getnameinfo.3:301
7154 msgid ""
7155 "R. Gilligan, S. Thomson, J. Bound and W. Stevens, I<Basic Socket Interface "
7156 "Extensions for IPv6>, RFC\\ 2553, March 1999."
7157 msgstr ""
7158 "R. Gilligan, S. Thomson, J. Bound and W. Stevens, I<Basic Socket Interface "
7159 "Extensions for IPv6>, RFC\\ 2553, March 1999."
7160
7161 #. type: Plain text
7162 #: build/C/man3/getnameinfo.3:307
7163 msgid ""
7164 "Tatsuya Jinmei and Atsushi Onoe, I<An Extension of Format for IPv6 Scoped "
7165 "Addresses>, internet draft, work in progress E<.UR ftp://ftp.ietf.org\\:/"
7166 "internet-drafts\\:/draft-ietf-ipngwg-scopedaddr-format-02.txt> E<.UE .>"
7167 msgstr ""
7168 "Tatsuya Jinmei and Atsushi Onoe, I<An Extension of Format for IPv6 Scoped "
7169 "Addresses>, internet draft, work in progress E<.UR ftp://ftp.ietf.org\\:/"
7170 "internet-drafts\\:/draft-ietf-ipngwg-scopedaddr-format-02.txt> E<.UE .>"
7171
7172 #. type: Plain text
7173 #: build/C/man3/getnameinfo.3:312
7174 msgid ""
7175 "Craig Metz, I<Protocol Independence Using the Sockets API>, Proceedings of "
7176 "the freenix track: 2000 USENIX annual technical conference, June 2000"
7177 msgstr ""
7178 "Craig Metz, I<Protocol Independence Using the Sockets API>, Proceedings of "
7179 "the freenix track: 2000 USENIX annual technical conference, June 2000"
7180
7181 #. type: Plain text
7182 #: build/C/man3/getnameinfo.3:315
7183 msgid ""
7184 "E<.UR http://www.usenix.org\\:/publications\\:/library\\:/proceedings\\:/"
7185 "usenix2000\\:/freenix\\:/metzprotocol.html> E<.UE .>"
7186 msgstr ""
7187 "E<.UR http://www.usenix.org\\:/publications\\:/library\\:/proceedings\\:/"
7188 "usenix2000\\:/freenix\\:/metzprotocol.html> E<.UE .>"
7189
7190 #. type: TH
7191 #: build/C/man3/getnetent.3:30
7192 #, no-wrap
7193 msgid "GETNETENT"
7194 msgstr "GETNETENT"
7195
7196 #. type: TH
7197 #: build/C/man3/getnetent.3:30 build/C/man3/getprotoent.3:30
7198 #: build/C/man3/getservent.3:34
7199 #, no-wrap
7200 msgid "2008-08-19"
7201 msgstr "2008-08-19"
7202
7203 #. type: Plain text
7204 #: build/C/man3/getnetent.3:34
7205 msgid ""
7206 "getnetent, getnetbyname, getnetbyaddr, setnetent, endnetent - get network "
7207 "entry"
7208 msgstr ""
7209 "getnetent, getnetbyname, getnetbyaddr, setnetent, endnetent - ネットワークエ"
7210 "ントリを取得する"
7211
7212 #. type: Plain text
7213 #: build/C/man3/getnetent.3:37 build/C/man3/getnetent_r.3:33
7214 #: build/C/man3/getprotoent.3:37 build/C/man3/getprotoent_r.3:33
7215 #: build/C/man3/getservent.3:41 build/C/man3/getservent_r.3:33
7216 #: build/C/man3/setnetgrent.3:17
7217 #, no-wrap
7218 msgid "B<#include E<lt>netdb.hE<gt>>\n"
7219 msgstr "B<#include E<lt>netdb.hE<gt>>\n"
7220
7221 #. type: Plain text
7222 #: build/C/man3/getnetent.3:39
7223 #, no-wrap
7224 msgid "B<struct netent *getnetent(void);>\n"
7225 msgstr "B<struct netent *getnetent(void);>\n"
7226
7227 #. type: Plain text
7228 #: build/C/man3/getnetent.3:41
7229 #, no-wrap
7230 msgid "B<struct netent *getnetbyname(const char *>I<name>B<);>\n"
7231 msgstr "B<struct netent *getnetbyname(const char *>I<name>B<);>\n"
7232
7233 #. type: Plain text
7234 #: build/C/man3/getnetent.3:43
7235 #, no-wrap
7236 msgid "B<struct netent *getnetbyaddr(uint32_t >I<net>B<, int >I<type>B<);>\n"
7237 msgstr "B<struct netent *getnetbyaddr(uint32_t >I<net>B<, int >I<type>B<);>\n"
7238
7239 #. type: Plain text
7240 #: build/C/man3/getnetent.3:45
7241 #, no-wrap
7242 msgid "B<void setnetent(int >I<stayopen>B<);>\n"
7243 msgstr "B<void setnetent(int >I<stayopen>B<);>\n"
7244
7245 #. type: Plain text
7246 #: build/C/man3/getnetent.3:47
7247 #, no-wrap
7248 msgid "B<void endnetent(void);>\n"
7249 msgstr "B<void endnetent(void);>\n"
7250
7251 #. type: Plain text
7252 #: build/C/man3/getnetent.3:57
7253 msgid ""
7254 "The B<getnetent>()  function reads the next entry from the networks database "
7255 "and returns a I<netent> structure containing the broken-out fields from the "
7256 "entry.  A connection is opened to the database if necessary."
7257 msgstr ""
7258 "B<getnetent>()  関数はネットワークデータベースから次のエントリを読み込み、 そ"
7259 "のエントリを I<netent> 構造体の要素別のフィールドに格納し、 その構造体を返"
7260 "す。 必要であれば、データベースへの接続がオープンされる。"
7261
7262 #. type: Plain text
7263 #: build/C/man3/getnetent.3:66
7264 msgid ""
7265 "The B<getnetbyname>()  function returns a I<netent> structure for the entry "
7266 "from the database that matches the network I<name>."
7267 msgstr ""
7268 "B<getnetbyname>()  関数は、ネットワーク名 I<name> にマッチするエントリを デー"
7269 "タベースから探し、そのエントリを収めた I<netent> 構造体を返す。"
7270
7271 #. type: Plain text
7272 #: build/C/man3/getnetent.3:80
7273 msgid ""
7274 "The B<getnetbyaddr>()  function returns a I<netent> structure for the entry "
7275 "from the database that matches the network number I<net> of type I<type>.  "
7276 "The I<net> argument must be in host byte order."
7277 msgstr ""
7278 "B<getnetbyaddr>()  関数は、I<type> 型のネットワーク番号 I<net> にマッチするエ"
7279 "ントリを データベースから探し、そのエントリを収めた I<netent> 構造体を返す。 "
7280 "I<net> 引き数はホスト・バイトオーダでなければならない。"
7281
7282 #. type: Plain text
7283 #: build/C/man3/getnetent.3:92
7284 msgid ""
7285 "The B<setnetent>()  function opens a connection to the database, and sets "
7286 "the next entry to the first entry.  If I<stayopen> is nonzero, then the "
7287 "connection to the database will not be closed between calls to one of the "
7288 "B<getnet*>()  functions."
7289 msgstr ""
7290 "B<setnetent>()  関数はデータベースへの接続をオープンし、 次の読み込みエントリ"
7291 "を先頭のエントリに設定する。 I<stayopen> が 0 でない場合、 一つ一つの "
7292 "B<getnet*>()  関数の呼び出し間でデータベースへの接続をクローズしない。"
7293
7294 #. type: Plain text
7295 #: build/C/man3/getnetent.3:96
7296 msgid "The B<endnetent>()  function closes the connection to the database."
7297 msgstr "B<endnetent>()  関数はデータベースへの接続をクローズする。"
7298
7299 #. type: Plain text
7300 #: build/C/man3/getnetent.3:102
7301 msgid "The I<netent> structure is defined in I<E<lt>netdb.hE<gt>> as follows:"
7302 msgstr "I<netent> 構造体は I<E<lt>netdb.hE<gt>> で以下のように定義されている。"
7303
7304 #. type: Plain text
7305 #: build/C/man3/getnetent.3:111
7306 #, no-wrap
7307 msgid ""
7308 "struct netent {\n"
7309 "    char      *n_name;     /* official network name */\n"
7310 "    char     **n_aliases;  /* alias list */\n"
7311 "    int        n_addrtype; /* net address type */\n"
7312 "    uint32_t   n_net;      /* network number */\n"
7313 "}\n"
7314 msgstr ""
7315 "struct netent {\n"
7316 "    char      *n_name;     /* official network name */\n"
7317 "    char     **n_aliases;  /* alias list */\n"
7318 "    int        n_addrtype; /* net address type */\n"
7319 "    uint32_t   n_net;      /* network number */\n"
7320 "}\n"
7321
7322 #. type: Plain text
7323 #: build/C/man3/getnetent.3:117
7324 msgid "The members of the I<netent> structure are:"
7325 msgstr "I<netent> 構造体のメンバは以下の通り。"
7326
7327 #. type: TP
7328 #: build/C/man3/getnetent.3:117
7329 #, no-wrap
7330 msgid "I<n_name>"
7331 msgstr "I<n_name>"
7332
7333 #. type: Plain text
7334 #: build/C/man3/getnetent.3:120
7335 msgid "The official name of the network."
7336 msgstr "ネットワークの正式名 (official name)。"
7337
7338 #. type: TP
7339 #: build/C/man3/getnetent.3:120
7340 #, no-wrap
7341 msgid "I<n_aliases>"
7342 msgstr "I<n_aliases>"
7343
7344 #. type: Plain text
7345 #: build/C/man3/getnetent.3:123
7346 msgid "A NULL-terminated list of alternative names for the network."
7347 msgstr "ネットワークの別名からなるリスト。 リストはヌルで終端される。"
7348
7349 #. type: TP
7350 #: build/C/man3/getnetent.3:123
7351 #, no-wrap
7352 msgid "I<n_addrtype>"
7353 msgstr "I<n_addrtype>"
7354
7355 #. type: Plain text
7356 #: build/C/man3/getnetent.3:127
7357 msgid "The type of the network number; always B<AF_INET>."
7358 msgstr "ネットワーク番号の形式。現在は B<AF_INET> のみ。"
7359
7360 #. type: TP
7361 #: build/C/man3/getnetent.3:127
7362 #, no-wrap
7363 msgid "I<n_net>"
7364 msgstr "I<n_net>"
7365
7366 #. type: Plain text
7367 #: build/C/man3/getnetent.3:130
7368 msgid "The network number in host byte order."
7369 msgstr "ホスト・バイトオーダ形式のネットワーク番号。"
7370
7371 #. type: Plain text
7372 #: build/C/man3/getnetent.3:141
7373 msgid ""
7374 "The B<getnetent>(), B<getnetbyname>()  and B<getnetbyaddr>()  functions "
7375 "return a pointer to a statically allocated I<netent> structure, or a null "
7376 "pointer if an error occurs or the end of the file is reached."
7377 msgstr ""
7378 "B<getnetent>(), B<getnetbyname>(), B<getnetbyaddr>()  関数は、静的に割り当て"
7379 "られた I<netent> 構造体へのポインタを返す。 エラーが起こったり、ファイルの末"
7380 "尾に達した場合はヌルポインタを返す。"
7381
7382 #. type: TP
7383 #: build/C/man3/getnetent.3:142 build/C/man5/networks.5:71
7384 #, no-wrap
7385 msgid "I</etc/networks>"
7386 msgstr "I</etc/networks>"
7387
7388 #. type: Plain text
7389 #: build/C/man3/getnetent.3:145
7390 msgid "networks database file"
7391 msgstr "ネットワークデータベースファイル"
7392
7393 #. type: Plain text
7394 #: build/C/man3/getnetent.3:147 build/C/man3/getprotoent.3:142
7395 #: build/C/man3/getservent.3:159
7396 msgid "4.3BSD, POSIX.1-2001."
7397 msgstr "4.3BSD, POSIX.1-2001."
7398
7399 #. type: Plain text
7400 #: build/C/man3/getnetent.3:154
7401 msgid ""
7402 "In glibc versions before 2.2, the I<net> argument of B<getnetbyaddr>()  was "
7403 "of type I<long>."
7404 msgstr ""
7405 "バージョン 2.2 より前の glibc では、 B<getnetbyaddr>()  の引き数 I<net> は "
7406 "I<long> 型だった。"
7407
7408 #.  .BR networks (5)
7409 #. type: Plain text
7410 #: build/C/man3/getnetent.3:159
7411 msgid "B<getnetent_r>(3), B<getprotoent>(3), B<getservent>(3)"
7412 msgstr "B<getnetent_r>(3), B<getprotoent>(3), B<getservent>(3)"
7413
7414 #. type: Plain text
7415 #: build/C/man3/getnetent.3:161
7416 msgid "RFC\\ 1101"
7417 msgstr "RFC\\ 1101"
7418
7419 #. type: TH
7420 #: build/C/man3/getnetent_r.3:26
7421 #, no-wrap
7422 msgid "GETNETENT_R"
7423 msgstr "GETNETENT_R"
7424
7425 #. type: Plain text
7426 #: build/C/man3/getnetent_r.3:30
7427 msgid ""
7428 "getnetent_r, getnetbyname_r, getnetbyaddr_r - get network entry (reentrant)"
7429 msgstr ""
7430 "getnetent_r, getnetbyname_r, getnetbyaddr_r - ネットワークエントリを\n"
7431 "取得する (リエントラント版)"
7432
7433 #. type: Plain text
7434 #: build/C/man3/getnetent_r.3:37
7435 #, no-wrap
7436 msgid ""
7437 "B<int getnetent_r(struct netent *>I<result_buf>B<, char *>I<buf>B<,>\n"
7438 "B<                size_t >I<buflen>B<, struct netent **>I<result>B<,>\n"
7439 "B<                int *>I<h_errnop>B<);>\n"
7440 msgstr ""
7441 "B<int getnetent_r(struct netent *>I<result_buf>B<, char *>I<buf>B<,>\n"
7442 "B<                size_t >I<buflen>B<, struct netent **>I<result>B<,>\n"
7443 "B<                int *>I<h_errnop>B<);>\n"
7444
7445 #. type: Plain text
7446 #: build/C/man3/getnetent_r.3:42
7447 #, no-wrap
7448 msgid ""
7449 "B<int getnetbyname_r(const char *>I<name>B<,>\n"
7450 "B<                struct netent *>I<result_buf>B<, char *>I<buf>B<,>\n"
7451 "B<                size_t >I<buflen>B<, struct netent **>I<result>B<,>\n"
7452 "B<                int *>I<h_errnop>B<);>\n"
7453 msgstr ""
7454 "B<int getnetbyname_r(const char *>I<name>B<,>\n"
7455 "B<                struct netent *>I<result_buf>B<, char *>I<buf>B<,>\n"
7456 "B<                size_t >I<buflen>B<, struct netent **>I<result>B<,>\n"
7457 "B<                int *>I<h_errnop>B<);>\n"
7458
7459 #. type: Plain text
7460 #: build/C/man3/getnetent_r.3:47
7461 #, no-wrap
7462 msgid ""
7463 "B<int getnetbyaddr_r(uint32_t >I<net>B<, int >I<type>B<,>\n"
7464 "B<                struct netent *>I<result_buf>B<, char *>I<buf>B<,>\n"
7465 "B<                size_t >I<buflen>B<, struct netent **>I<result>B<,>\n"
7466 "B<                int *>I<h_errnop>B<);>\n"
7467 msgstr ""
7468 "B<int getnetbyaddr_r(uint32_t >I<net>B<, int >I<type>B<,>\n"
7469 "B<                struct netent *>I<result_buf>B<, char *>I<buf>B<,>\n"
7470 "B<                size_t >I<buflen>B<, struct netent **>I<result>B<,>\n"
7471 "B<                int *>I<h_errnop>B<);>\n"
7472
7473 #. type: Plain text
7474 #: build/C/man3/getnetent_r.3:58
7475 msgid "B<getnetent_r>(), B<getnetbyname_r>(), B<getnetbyaddr_r>():"
7476 msgstr "B<getnetent_r>(), B<getnetbyname_r>(), B<getnetbyaddr_r>():"
7477
7478 #. type: Plain text
7479 #: build/C/man3/getnetent_r.3:79
7480 msgid ""
7481 "The B<getnetent_r>(), B<getnetbyname_r>(), and B<getnetbyaddr_r>()  "
7482 "functions are the reentrant equivalents of, respectively, B<getnetent>(3), "
7483 "B<getnetbyname>(3), and B<getnetbynumber>(3).  They differ in the way that "
7484 "the I<netent> structure is returned, and in the function calling signature "
7485 "and return value.  This manual page describes just the differences from the "
7486 "nonreentrant functions."
7487 msgstr ""
7488 "関数 B<getnetent_r>(), B<getnetbyname_r>(), B<getnetbyaddr_r>() は、\n"
7489 "それぞれ B<getnetent>(3), B<getnetbyname>(3), B<getnetbynumber>(3) の\n"
7490 "リエントラント版である。\n"
7491 "I<netent> 構造体の返し方と、関数呼び出し時の引き数と返り値が異なる。\n"
7492 "このマニュアルページでは、リエントラントでない関数との違いだけを\n"
7493 "説明する。"
7494
7495 #. type: Plain text
7496 #: build/C/man3/getnetent_r.3:85
7497 msgid ""
7498 "Instead of returning a pointer to a statically allocated I<netent> structure "
7499 "as the function result, these functions copy the structure into the location "
7500 "pointed to by I<result_buf>."
7501 msgstr ""
7502 "これらの関数は、関数の結果として静的に割り当てられた I<netent> 構造体\n"
7503 "へのポインタを返すのではなく、 I<netent> 構造体を I<result_buf> が\n"
7504 "指す場所にコピーする。"
7505
7506 #.  I can find no information on the required/recommended buffer size;
7507 #.  the nonreentrant functions use a 1024 byte buffer -- mtk.
7508 #. type: Plain text
7509 #: build/C/man3/getnetent_r.3:102
7510 msgid ""
7511 "The I<buf> array is used to store the string fields pointed to by the "
7512 "returned I<netent> structure.  (The nonreentrant functions allocate these "
7513 "strings in static storage.)  The size of this array is specified in "
7514 "I<buflen>.  If I<buf> is too small, the call fails with the error B<ERANGE>, "
7515 "and the caller must try again with a larger buffer.  (A buffer of length "
7516 "1024 bytes should be sufficient for most applications.)"
7517 msgstr ""
7518 "配列 I<buf> は、返される I<netent> 構造体が指す文字列フィールドを格納\n"
7519 "するのに使用される (リエントラントでない関数の場合は、\n"
7520 "これらの文字列は静的な領域に格納される)。\n"
7521 "この配列の大きさは I<buflen> で指定される。\n"
7522 "I<buf> が小さすぎる場合、関数呼び出しはエラー B<ERANGE> で失敗し、\n"
7523 "呼び出し側ではもっと大きなバッファで再度呼び出す必要がある (ほとんどの\n"
7524 "アプリケーションでは、長さ 1024 バイトのバッファで十分なはずである)。"
7525
7526 #. type: Plain text
7527 #: build/C/man3/getnetent_r.3:110
7528 msgid ""
7529 "If the function call successfully obtains a network record, then I<*result> "
7530 "is set pointing to I<result_buf>; otherwise, I<*result> is set to NULL."
7531 msgstr ""
7532 "関数呼び出しでネットワークレコードの取得に成功すると、\n"
7533 "I<*result> は I<result_buf> を指すように設定される。\n"
7534 "それ以外の場合は I<*result> に NULL が設定される。"
7535
7536 #.  getnetent.3 doesn't document any use of h_errno, but nevertheless
7537 #.  the nonreentrant functions no seem to set h_errno.
7538 #. type: Plain text
7539 #: build/C/man3/getnetent_r.3:118
7540 msgid ""
7541 "The buffer pointed to by I<h_errnop> is used to return the value that would "
7542 "be stored in the global variable I<h_errno> by the nonreentrant versions of "
7543 "these functions."
7544 msgstr ""
7545 "I<h_errnop> が指すバッファは、リエントラントでない関数では\n"
7546 "グローバル変数 I<h_errno> に格納されていた値を返すのに使用される。"
7547
7548 #. type: Plain text
7549 #: build/C/man3/getnetent_r.3:121 build/C/man3/getprotoent_r.3:111
7550 msgid ""
7551 "On success, these functions return 0.  On error, they return one of the "
7552 "positive error numbers listed in ERRORS."
7553 msgstr ""
7554 "成功すると、これらの関数は 0 を返す。エラーの場合、「エラー」の節の\n"
7555 "リストにある正のエラー番号のいずれかを返す。"
7556
7557 #. type: Plain text
7558 #: build/C/man3/getnetent_r.3:129
7559 msgid ""
7560 "On error, record not found (B<getnetbyname_r>(), B<getnetbyaddr_r>()), or "
7561 "end of input (B<getnetent_r>())  I<result> is set to NULL."
7562 msgstr ""
7563 "エラーの場合、レコードが見つからなかった場合 (B<getnetbyname_r>(),\n"
7564 "B<getnetbyaddr_r>()) やこれ以上レコードがない場合 (B<getnetent_r>())、\n"
7565 "I<result> には NULL が設定される。"
7566
7567 #. type: Plain text
7568 #: build/C/man3/getnetent_r.3:134
7569 msgid "(B<getnetent_r>())  No more records in database."
7570 msgstr "(B<getnetent_r>())  データベースにこれ以上レコードがない。"
7571
7572 #. type: TP
7573 #: build/C/man3/getnetent_r.3:134 build/C/man3/getprotoent_r.3:124
7574 #: build/C/man3/getservent_r.3:123
7575 #, no-wrap
7576 msgid "B<ERANGE>"
7577 msgstr "B<ERANGE>"
7578
7579 #. type: Plain text
7580 #: build/C/man3/getnetent_r.3:141 build/C/man3/getprotoent_r.3:131
7581 #: build/C/man3/getservent_r.3:130
7582 msgid ""
7583 "I<buf> is too small.  Try again with a larger buffer (and increased "
7584 "I<buflen>)."
7585 msgstr ""
7586 "I<buf> が小さすぎる。もっと大きなバッファにして \n"
7587 "(または I<buflen> を増やして) 再度呼び出すこと。"
7588
7589 #. type: Plain text
7590 #: build/C/man3/getnetent_r.3:145 build/C/man3/getprotoent_r.3:135
7591 #: build/C/man3/getservent_r.3:134
7592 msgid ""
7593 "These functions are GNU extensions.  Functions with similar names exist on "
7594 "some other systems, though typically with different calling signatures."
7595 msgstr ""
7596 "これらの関数は GNU による拡張である。\n"
7597 "他のシステムにも同様の名前の関数が存在する場合があるが、\n"
7598 "通常は関数の引き数が異なる。"
7599
7600 #. type: Plain text
7601 #: build/C/man3/getnetent_r.3:148
7602 msgid "B<getnetent>(3), B<networks>(5)"
7603 msgstr "B<getnetent>(3), B<networks>(5)"
7604
7605 #. type: TH
7606 #: build/C/man2/getpeername.2:42
7607 #, no-wrap
7608 msgid "GETPEERNAME"
7609 msgstr "GETPEERNAME"
7610
7611 #. type: TH
7612 #: build/C/man2/getpeername.2:42 build/C/man5/nsswitch.conf.5:25
7613 #, no-wrap
7614 msgid "2013-02-12"
7615 msgstr "2013-02-12"
7616
7617 #. type: Plain text
7618 #: build/C/man2/getpeername.2:45
7619 msgid "getpeername - get name of connected peer socket"
7620 msgstr "getpeername - 接続している相手ソケットの名前を取得する"
7621
7622 #. type: Plain text
7623 #: build/C/man2/getpeername.2:50
7624 msgid ""
7625 "B<int getpeername(int >I<sockfd>B<, struct sockaddr *>I<addr>B<, socklen_t "
7626 "*>I<addrlen>B<);>"
7627 msgstr ""
7628 "B<int getpeername(int >I<sockfd>B<, struct sockaddr *>I<addr>B<, socklen_t "
7629 "*>I<addrlen>B<);>"
7630
7631 #. type: Plain text
7632 #: build/C/man2/getpeername.2:63
7633 msgid ""
7634 "B<getpeername>()  returns the address of the peer connected to the socket "
7635 "I<sockfd>, in the buffer pointed to by I<addr>.  The I<addrlen> argument "
7636 "should be initialized to indicate the amount of space pointed to by "
7637 "I<addr>.  On return it contains the actual size of the name returned (in "
7638 "bytes).  The name is truncated if the buffer provided is too small."
7639 msgstr ""
7640 "B<getpeername>()  は、ソケット(socket)  I<sockfd> に接続している相手のアドレ"
7641 "スを、 I<addr> が指すバッファに格納して返す。 I<addrlen> 引き数は、 I<addr> "
7642 "が指している領域のサイズに初期化しておかなければならない。 関数が返る時に"
7643 "は、 I<addrlen> には実際に返された名前のサイズが (バイト単位で) 格納される。 "
7644 "提供されたバッファが小さすぎた場合には、名前は切り詰められる。"
7645
7646 #. type: Plain text
7647 #: build/C/man2/getpeername.2:68
7648 msgid ""
7649 "The returned address is truncated if the buffer provided is too small; in "
7650 "this case, I<addrlen> will return a value greater than was supplied to the "
7651 "call."
7652 msgstr ""
7653 "渡されたバッファが小さ過ぎた場合は、返されるアドレスの末尾が切り詰められる。 "
7654 "この場合には、 I<addrlen> には、呼び出し時に指定された値よりも大きな値が格納"
7655 "される。"
7656
7657 #. type: Plain text
7658 #: build/C/man2/getpeername.2:73 build/C/man2/shutdown.2:74
7659 msgid ""
7660 "On success, zero is returned.  On error, -1 is returned, and I<errno> is set "
7661 "appropriately."
7662 msgstr ""
7663 "成功した場合は 0 が返される。エラーの場合は -1 が返され、 I<errno> が適切に設"
7664 "定される。"
7665
7666 #. type: TP
7667 #: build/C/man2/getpeername.2:74 build/C/man2/shutdown.2:75
7668 #, no-wrap
7669 msgid "B<EBADF>"
7670 msgstr "B<EBADF>"
7671
7672 #. type: Plain text
7673 #: build/C/man2/getpeername.2:79
7674 msgid "The argument I<sockfd> is not a valid descriptor."
7675 msgstr "引き数 I<sockfd> が有効なディスクリプタでない。"
7676
7677 #. type: TP
7678 #: build/C/man2/getpeername.2:79 build/C/man7/packet.7:500
7679 #: build/C/man7/raw.7:149 build/C/man7/unix.7:419
7680 #, no-wrap
7681 msgid "B<EFAULT>"
7682 msgstr "B<EFAULT>"
7683
7684 #. type: Plain text
7685 #: build/C/man2/getpeername.2:85
7686 msgid ""
7687 "The I<addr> argument points to memory not in a valid part of the process "
7688 "address space."
7689 msgstr ""
7690 "I<addr> 引き数の指しているメモリが有効なプロセスのアドレス空間の 一部でない。"
7691
7692 #. type: Plain text
7693 #: build/C/man2/getpeername.2:89
7694 msgid "I<addrlen> is invalid (e.g., is negative)."
7695 msgstr "I<addrlen> が不正である (例えば、負で場合など)。"
7696
7697 #. type: TP
7698 #: build/C/man2/getpeername.2:89 build/C/man7/packet.7:512
7699 #, no-wrap
7700 msgid "B<ENOBUFS>"
7701 msgstr "B<ENOBUFS>"
7702
7703 #. type: Plain text
7704 #: build/C/man2/getpeername.2:93
7705 msgid ""
7706 "Insufficient resources were available in the system to perform the operation."
7707 msgstr "この操作を行なうのに十分な資源がシステムに存在しない。"
7708
7709 #. type: Plain text
7710 #: build/C/man2/getpeername.2:96
7711 msgid "The socket is not connected."
7712 msgstr "ソケットが接続していない。"
7713
7714 #. type: TP
7715 #: build/C/man2/getpeername.2:96 build/C/man2/shutdown.2:87
7716 #, no-wrap
7717 msgid "B<ENOTSOCK>"
7718 msgstr "B<ENOTSOCK>"
7719
7720 #. type: Plain text
7721 #: build/C/man2/getpeername.2:101
7722 msgid "The argument I<sockfd> is a file, not a socket."
7723 msgstr "引き数 I<sockfd> がソケットでなくてファイルである。"
7724
7725 #. type: Plain text
7726 #: build/C/man2/getpeername.2:105
7727 msgid ""
7728 "SVr4, 4.4BSD (the B<getpeername>()  function call first appeared in 4.2BSD), "
7729 "POSIX.1-2001."
7730 msgstr ""
7731 "SVr4, 4.4BSD (B<getpeername>()  関数は 4.2BSD で登場した), POSIX.1-2001."
7732
7733 #. type: Plain text
7734 #: build/C/man2/getpeername.2:116
7735 msgid ""
7736 "The third argument of B<getpeername>()  is in reality an I<int\\ *> (and "
7737 "this is what 4.x BSD and libc4 and libc5 have).  Some POSIX confusion "
7738 "resulted in the present I<socklen_t>, also used by glibc.  See also "
7739 "B<accept>(2)."
7740 msgstr ""
7741 "B<getpeername>()  の三番目の引き数は実際には I<`int\\ *'> である (4.x BSD, "
7742 "libc4, libc5 では このようになっている)。 POSIX では紆余曲折を経て現在の "
7743 "I<socklen_t> になっており、 glibc でも I<socklen_t> を使っている。 "
7744 "B<accept>(2)  も参照のこと。"
7745
7746 #. type: Plain text
7747 #: build/C/man2/getpeername.2:143
7748 msgid ""
7749 "For stream sockets, once a B<connect>(2)  has been performed, either socket "
7750 "can call B<getpeername>()  to obtain the address of the peer socket.  On the "
7751 "other hand, datagram sockets are connectionless.  Calling B<connect>(2)  on "
7752 "a datagram socket merely sets the peer address for outgoing datagrams sent "
7753 "with B<write>(2)  or B<recv>(2).  The caller of B<connect>(2)  can use "
7754 "B<getpeername>()  to obtain the peer address that it earlier set for the "
7755 "socket.  However, the peer socket is unaware of this information, and "
7756 "calling B<getpeername>()  on the peer socket will return no useful "
7757 "information (unless a B<connect>(2)  call was also executed on the peer).  "
7758 "Note also that the receiver of a datagram can obtain the address of the "
7759 "sender when using B<recvfrom>(2)."
7760 msgstr ""
7761 "ストリームソケットでは、 いったん B<connect>(2) が実行されると、 どのソケット"
7762 "も B<getpeername>() を使って相手ソケットのアドレスを取得できる。 一方、データ"
7763 "グラムソケットはコネクションレスである (接続がない)。 データグラムソケットに"
7764 "対する B<connect>(2) の呼び出しは、 B<write>(2) や B<recv>(2) で送信される出"
7765 "力データグラムの相手アドレスを設定するだけである。\n"
7766 "B<connect>(2) の呼び出し元は、 B<getpeername>() を使って、それ以前にそのソ"
7767 "ケットに設定された相手アドレスを取得することができる。 しかし、相手ソケットは"
7768 "この情報を知らないので、 相手ソケットで B<getpeername>() を呼び出しても、 役"
7769 "に立つ情報は得られない (相手側でも B<connect>(2) が呼び出されている場合を除"
7770 "く)。 なお、データグラムの受信側では B<recvfrom>(2) を使って送信元アドレスを "
7771 "取得できることも覚えておいてほしい。"
7772
7773 #. type: Plain text
7774 #: build/C/man2/getpeername.2:150
7775 msgid ""
7776 "B<accept>(2), B<bind>(2), B<getsockname>(2), B<ip>(7), B<socket>(7), "
7777 "B<unix>(7)"
7778 msgstr ""
7779 "B<accept>(2), B<bind>(2), B<getsockname>(2), B<ip>(7), B<socket>(7), "
7780 "B<unix>(7)"
7781
7782 #. type: TH
7783 #: build/C/man3/getprotoent.3:30
7784 #, no-wrap
7785 msgid "GETPROTOENT"
7786 msgstr "GETPROTOENT"
7787
7788 #. type: Plain text
7789 #: build/C/man3/getprotoent.3:34
7790 msgid ""
7791 "getprotoent, getprotobyname, getprotobynumber, setprotoent, endprotoent - "
7792 "get protocol entry"
7793 msgstr ""
7794 "getprotoent, getprotobyname, getprotobynumber, setprotoent, endprotoent - プ"
7795 "ロトコルのエントリを取得する"
7796
7797 #. type: Plain text
7798 #: build/C/man3/getprotoent.3:39
7799 #, no-wrap
7800 msgid "B<struct protoent *getprotoent(void);>\n"
7801 msgstr "B<struct protoent *getprotoent(void);>\n"
7802
7803 #. type: Plain text
7804 #: build/C/man3/getprotoent.3:41
7805 #, no-wrap
7806 msgid "B<struct protoent *getprotobyname(const char *>I<name>B<);>\n"
7807 msgstr "B<struct protoent *getprotobyname(const char *>I<name>B<);>\n"
7808
7809 #. type: Plain text
7810 #: build/C/man3/getprotoent.3:43
7811 #, no-wrap
7812 msgid "B<struct protoent *getprotobynumber(int >I<proto>B<);>\n"
7813 msgstr "B<struct protoent *getprotobynumber(int >I<proto>B<);>\n"
7814
7815 #. type: Plain text
7816 #: build/C/man3/getprotoent.3:45
7817 #, no-wrap
7818 msgid "B<void setprotoent(int >I<stayopen>B<);>\n"
7819 msgstr "B<void setprotoent(int >I<stayopen>B<);>\n"
7820
7821 #. type: Plain text
7822 #: build/C/man3/getprotoent.3:47
7823 #, no-wrap
7824 msgid "B<void endprotoent(void);>\n"
7825 msgstr "B<void endprotoent(void);>\n"
7826
7827 #. type: Plain text
7828 #: build/C/man3/getprotoent.3:58
7829 msgid ""
7830 "The B<getprotoent>()  function reads the next entry from the protocols "
7831 "database (see B<protocols>(5))  and returns a I<protoent> structure "
7832 "containing the broken-out fields from the entry.  A connection is opened to "
7833 "the database if necessary."
7834 msgstr ""
7835 "B<getprotoent>()  関数は、プロトコルのデータベース (B<protocols>(5)  参照) か"
7836 "ら次のエントリを読み込み、 そのエントリを I<protoent> 構造体の要素別のフィー"
7837 "ルドに格納し、 その構造体を返す。 必要であれば、データベースへの接続がオープ"
7838 "ンされる。"
7839
7840 #. type: Plain text
7841 #: build/C/man3/getprotoent.3:68
7842 msgid ""
7843 "The B<getprotobyname>()  function returns a I<protoent> structure for the "
7844 "entry from the database that matches the protocol name I<name>.  A "
7845 "connection is opened to the database if necessary."
7846 msgstr ""
7847 "B<getprotobyname>()  関数は、プロトコル名 I<name> にマッチするエントリを デー"
7848 "タベースから探し、そのエントリを収めた I<protoent> 構造体を返す。 必要であれ"
7849 "ば、データベースへの接続がオープンされる。"
7850
7851 #. type: Plain text
7852 #: build/C/man3/getprotoent.3:78
7853 msgid ""
7854 "The B<getprotobynumber>()  function returns a I<protoent> structure for the "
7855 "entry from the database that matches the protocol number I<number>.  A "
7856 "connection is opened to the database if necessary."
7857 msgstr ""
7858 "B<getprotobynumber>()  関数は、プロトコル番号 I<number> にマッチするエントリ"
7859 "を データベースから探し、そのエントリを収めた I<protoent> 構造体を返す。 必要"
7860 "であれば、データベースへの接続がオープンされる。"
7861
7862 #. type: Plain text
7863 #: build/C/man3/getprotoent.3:90
7864 msgid ""
7865 "The B<setprotoent>()  function opens a connection to the database, and sets "
7866 "the next entry to the first entry.  If I<stayopen> is nonzero, then the "
7867 "connection to the database will not be closed between calls to one of the "
7868 "B<getproto*>()  functions."
7869 msgstr ""
7870 "B<setprotoent>()  関数はデータベースへの接続をオープンし、 次の読み込みエント"
7871 "リを先頭のエントリに設定する。 I<stayopen> が 0 でない場合、 一つ一つの "
7872 "B<getproto*>()  関数の呼び出し間でデータベースへの接続をクローズしない。"
7873
7874 #. type: Plain text
7875 #: build/C/man3/getprotoent.3:94
7876 msgid "The B<endprotoent>()  function closes the connection to the database."
7877 msgstr "B<endprotoent>()  関数はデータベースへの接続をクローズする。"
7878
7879 #. type: Plain text
7880 #: build/C/man3/getprotoent.3:100
7881 msgid ""
7882 "The I<protoent> structure is defined in I<E<lt>netdb.hE<gt>> as follows:"
7883 msgstr ""
7884 "I<protoent> 構造体は I<E<lt>netdb.hE<gt>> で以下のように定義されている。"
7885
7886 #. type: Plain text
7887 #: build/C/man3/getprotoent.3:108
7888 #, no-wrap
7889 msgid ""
7890 "struct protoent {\n"
7891 "    char  *p_name;       /* official protocol name */\n"
7892 "    char **p_aliases;    /* alias list */\n"
7893 "    int    p_proto;      /* protocol number */\n"
7894 "}\n"
7895 msgstr ""
7896 "struct protoent {\n"
7897 "    char  *p_name;       /* official protocol name */\n"
7898 "    char **p_aliases;    /* alias list */\n"
7899 "    int    p_proto;      /* protocol number */\n"
7900 "}\n"
7901
7902 #. type: Plain text
7903 #: build/C/man3/getprotoent.3:114
7904 msgid "The members of the I<protoent> structure are:"
7905 msgstr "I<protoent> 構造体のメンバーは以下の通り。"
7906
7907 #. type: TP
7908 #: build/C/man3/getprotoent.3:114
7909 #, no-wrap
7910 msgid "I<p_name>"
7911 msgstr "I<p_name>"
7912
7913 #. type: Plain text
7914 #: build/C/man3/getprotoent.3:117
7915 msgid "The official name of the protocol."
7916 msgstr "プロトコルの正式名 (official name)。"
7917
7918 #. type: TP
7919 #: build/C/man3/getprotoent.3:117
7920 #, no-wrap
7921 msgid "I<p_aliases>"
7922 msgstr "I<p_aliases>"
7923
7924 #. type: Plain text
7925 #: build/C/man3/getprotoent.3:120
7926 msgid "A NULL-terminated list of alternative names for the protocol."
7927 msgstr "プロトコルの別名のリスト。 リストはヌルで終端される。"
7928
7929 #. type: TP
7930 #: build/C/man3/getprotoent.3:120
7931 #, no-wrap
7932 msgid "I<p_proto>"
7933 msgstr "I<p_proto>"
7934
7935 #. type: Plain text
7936 #: build/C/man3/getprotoent.3:123
7937 msgid "The protocol number."
7938 msgstr "プロトコルの番号"
7939
7940 #. type: Plain text
7941 #: build/C/man3/getprotoent.3:134
7942 msgid ""
7943 "The B<getprotoent>(), B<getprotobyname>()  and B<getprotobynumber>()  "
7944 "functions return a pointer to a statically allocated I<protoent> structure, "
7945 "or a null pointer if an error occurs or the end of the file is reached."
7946 msgstr ""
7947 "B<getprotoent>(), B<getprotobyname>(), B<getprotobynumber>()  関数は、静的に"
7948 "割り当てられた I<protoent> 構造体へのポインタを返す。 エラーが起こったり、"
7949 "ファイルの最後に達した場合は NULL を返す。"
7950
7951 #. type: TP
7952 #: build/C/man3/getprotoent.3:136 build/C/man5/protocols.5:78
7953 #, no-wrap
7954 msgid "I</etc/protocols>"
7955 msgstr "I</etc/protocols>"
7956
7957 #. type: Plain text
7958 #: build/C/man3/getprotoent.3:139
7959 msgid "protocol database file"
7960 msgstr "プロトコルのデータベースファイル"
7961
7962 #. type: Plain text
7963 #: build/C/man3/getprotoent.3:147
7964 msgid "B<getnetent>(3), B<getprotoent_r>(3), B<getservent>(3), B<protocols>(5)"
7965 msgstr ""
7966 "B<getnetent>(3), B<getprotoent_r>(3), B<getservent>(3), B<protocols>(5)"
7967
7968 #. type: TH
7969 #: build/C/man3/getprotoent_r.3:26
7970 #, no-wrap
7971 msgid "GETPROTOENT_R"
7972 msgstr "GETPROTOENT_R"
7973
7974 #. type: Plain text
7975 #: build/C/man3/getprotoent_r.3:30
7976 msgid ""
7977 "getprotoent_r, getprotobyname_r, getprotobynumber_r - get protocol entry "
7978 "(reentrant)"
7979 msgstr ""
7980 "getprotoent_r, getprotobyname_r, getprotobynumber_r - プロトコル\n"
7981 "エントリを取得する (リエントラント版)"
7982
7983 #. type: Plain text
7984 #: build/C/man3/getprotoent_r.3:36
7985 #, no-wrap
7986 msgid ""
7987 "B<int getprotoent_r(struct protoent *>I<result_buf>B<, char *>I<buf>B<,>\n"
7988 "B<                size_t >I<buflen>B<, struct protoent **>I<result>B<);>\n"
7989 msgstr ""
7990 "B<int getprotoent_r(struct protoent *>I<result_buf>B<, char *>I<buf>B<,>\n"
7991 "B<                size_t >I<buflen>B<, struct protoent **>I<result>B<);>\n"
7992
7993 #. type: Plain text
7994 #: build/C/man3/getprotoent_r.3:40
7995 #, no-wrap
7996 msgid ""
7997 "B<int getprotobyname_r(const char *>I<name>B<,>\n"
7998 "B<                struct protoent *>I<result_buf>B<, char *>I<buf>B<,>\n"
7999 "B<                size_t >I<buflen>B<, struct protoent **>I<result>B<);>\n"
8000 msgstr ""
8001 "B<int getprotobyname_r(const char *>I<name>B<,>\n"
8002 "B<                struct protoent *>I<result_buf>B<, char *>I<buf>B<,>\n"
8003 "B<                size_t >I<buflen>B<, struct protoent **>I<result>B<);>\n"
8004
8005 #. type: Plain text
8006 #: build/C/man3/getprotoent_r.3:44
8007 #, no-wrap
8008 msgid ""
8009 "B<int getprotobynumber_r(int >I<proto>B<,>\n"
8010 "B<                struct protoent *>I<result_buf>B<, char *>I<buf>B<,>\n"
8011 "B<                size_t >I<buflen>B<, struct protoent **>I<result>B<);>\n"
8012 msgstr ""
8013 "B<int getprotobynumber_r(int >I<proto>B<,>\n"
8014 "B<                struct protoent *>I<result_buf>B<, char *>I<buf>B<,>\n"
8015 "B<                size_t >I<buflen>B<, struct protoent **>I<result>B<);>\n"
8016
8017 #. type: Plain text
8018 #: build/C/man3/getprotoent_r.3:55
8019 msgid "B<getprotoent_r>(), B<getprotobyname_r>(), B<getprotobynumber_r>():"
8020 msgstr "B<getprotoent_r>(), B<getprotobyname_r>(), B<getprotobynumber_r>():"
8021
8022 #. type: Plain text
8023 #: build/C/man3/getprotoent_r.3:76
8024 msgid ""
8025 "The B<getprotoent_r>(), B<getprotobyname_r>(), and B<getprotobynumber_r>()  "
8026 "functions are the reentrant equivalents of, respectively, B<getprotoent>(3), "
8027 "B<getprotobyname>(3), and B<getprotobynumber>(3).  They differ in the way "
8028 "that the I<protoent> structure is returned, and in the function calling "
8029 "signature and return value.  This manual page describes just the differences "
8030 "from the nonreentrant functions."
8031 msgstr ""
8032 "関数 B<getprotoent_r>(), B<getprotobyname_r>(),\n"
8033 "B<getprotobynumber_r>() は、それぞれ B<getprotoent>(3),\n"
8034 "B<getprotobyname>(3), B<getprotobynumber>(3) のリエントラント版である。\n"
8035 "I<protoent> 構造体の返し方と、関数呼び出し時の引き数と返り値が異なる。\n"
8036 "このマニュアルページでは、リエントラントでない関数との違いだけを\n"
8037 "説明する。"
8038
8039 #. type: Plain text
8040 #: build/C/man3/getprotoent_r.3:82
8041 msgid ""
8042 "Instead of returning a pointer to a statically allocated I<protoent> "
8043 "structure as the function result, these functions copy the structure into "
8044 "the location pointed to by I<result_buf>."
8045 msgstr ""
8046 "これらの関数は、関数の結果として静的に割り当てられた I<protoent> 構造体\n"
8047 "へのポインタを返すのではなく、 I<protoent> 構造体を I<result_buf> が\n"
8048 "指す場所にコピーする。"
8049
8050 #.  I can find no information on the required/recommended buffer size;
8051 #.  the nonreentrant functions use a 1024 byte buffer.
8052 #.  The 1024 byte value is also what the Solaris man page suggests. -- mtk
8053 #. type: Plain text
8054 #: build/C/man3/getprotoent_r.3:100
8055 msgid ""
8056 "The I<buf> array is used to store the string fields pointed to by the "
8057 "returned I<protoent> structure.  (The nonreentrant functions allocate these "
8058 "strings in static storage.)  The size of this array is specified in "
8059 "I<buflen>.  If I<buf> is too small, the call fails with the error B<ERANGE>, "
8060 "and the caller must try again with a larger buffer.  (A buffer of length "
8061 "1024 bytes should be sufficient for most applications.)"
8062 msgstr ""
8063 "配列 I<buf> は、返される I<protoent> 構造体が指す文字列フィールドを\n"
8064 "格納するのに使用される (リエントラントでない関数の場合は、\n"
8065 "これらの文字列は静的な領域に格納される)。\n"
8066 "この配列の大きさは I<buflen> で指定される。\n"
8067 "I<buf> が小さすぎる場合、関数呼び出しはエラー B<ERANGE> で失敗し、\n"
8068 "呼び出し側ではもっと大きなバッファで再度呼び出す必要がある (ほとんどの\n"
8069 "アプリケーションでは、長さ 1024 バイトのバッファで十分なはずである)。"
8070
8071 #. type: Plain text
8072 #: build/C/man3/getprotoent_r.3:108
8073 msgid ""
8074 "If the function call successfully obtains a protocol record, then I<*result> "
8075 "is set pointing to I<result_buf>; otherwise, I<*result> is set to NULL."
8076 msgstr ""
8077 "関数呼び出しでプロトコルレコードの取得に成功すると、\n"
8078 "I<*result> は I<result_buf> を指すように設定される。\n"
8079 "それ以外の場合は I<*result> に NULL が設定される。"
8080
8081 #. type: Plain text
8082 #: build/C/man3/getprotoent_r.3:119
8083 msgid ""
8084 "On error, record not found (B<getprotobyname_r>(), B<getprotobynumber_r>()), "
8085 "or end of input (B<getprotoent_r>())  I<result> is set to NULL."
8086 msgstr ""
8087 "エラーの場合、レコードが見つからなかった場合 (B<getprotobyname_r>(),\n"
8088 "B<getprotobyaddr_r>()) やこれ以上レコードがない場合\n"
8089 "(B<getprotoent_r>())、I<result> には NULL が設定される。"
8090
8091 #. type: Plain text
8092 #: build/C/man3/getprotoent_r.3:124
8093 msgid "(B<getprotoent_r>())  No more records in database."
8094 msgstr "(B<getprotoent_r>())  データベースにこれ以上レコードがない。"
8095
8096 #. type: Plain text
8097 #: build/C/man3/getprotoent_r.3:149
8098 msgid ""
8099 "The program below uses B<getprotobyname_r>()  to retrieve the protocol "
8100 "record for the protocol named in its first command-line argument.  If a "
8101 "second (integer) command-line argument is supplied, it is used as the "
8102 "initial value for I<buflen>; if B<getprotobyname_r>()  fails with the error "
8103 "B<ERANGE>, the program retries with larger buffer sizes.  The following "
8104 "shell session shows a couple of sample runs:"
8105 msgstr ""
8106 "以下のプログラムは、 B<getprotobyname_r>() を使って、最初のコマンド\n"
8107 "ライン引き数で指定された名前のプロトコルのレコードを取得する。\n"
8108 "二番目のコマンドライン引き数 (整数値) が指定された場合は、\n"
8109 "その値が I<buflen> の初期値として使用される。\n"
8110 "B<getprotobyname_r>() がエラー B<ERANGE> で失敗すると、プログラムは\n"
8111 "より大きなバッファサイズで再度 B<getprotobyname_r> を呼び出す。\n"
8112 "下記のシェルのセッションは、実行例を示している。"
8113
8114 #. type: Plain text
8115 #: build/C/man3/getprotoent_r.3:160
8116 #, no-wrap
8117 msgid ""
8118 "$B< ./a.out tcp 1>\n"
8119 "ERANGE! Retrying with larger buffer\n"
8120 "getprotobyname_r() returned: 0 (success)  (buflen=78)\n"
8121 "p_name=tcp; p_proto=6; aliases=TCP\n"
8122 "$B< ./a.out xxx 1>\n"
8123 "ERANGE! Retrying with larger buffer\n"
8124 "getprotobyname_r() returned: 0 (success)  (buflen=100)\n"
8125 "Call failed/record not found\n"
8126 msgstr ""
8127 "$B< ./a.out tcp 1>\n"
8128 "ERANGE! Retrying with larger buffer\n"
8129 "getprotobyname_r() returned: 0 (success)  (buflen=78)\n"
8130 "p_name=tcp; p_proto=6; aliases=TCP\n"
8131 "$B< ./a.out xxx 1>\n"
8132 "ERANGE! Retrying with larger buffer\n"
8133 "getprotobyname_r() returned: 0 (success)  (buflen=100)\n"
8134 "Call failed/record not found\n"
8135
8136 #. type: Plain text
8137 #: build/C/man3/getprotoent_r.3:172 build/C/man3/getservent_r.3:170
8138 #, no-wrap
8139 msgid ""
8140 "#define _GNU_SOURCE\n"
8141 "#include E<lt>ctype.hE<gt>\n"
8142 "#include E<lt>netdb.hE<gt>\n"
8143 "#include E<lt>stdlib.hE<gt>\n"
8144 "#include E<lt>stdio.hE<gt>\n"
8145 "#include E<lt>errno.hE<gt>\n"
8146 "#include E<lt>string.hE<gt>\n"
8147 msgstr ""
8148 "#define _GNU_SOURCE\n"
8149 "#include E<lt>ctype.hE<gt>\n"
8150 "#include E<lt>netdb.hE<gt>\n"
8151 "#include E<lt>stdlib.hE<gt>\n"
8152 "#include E<lt>stdio.hE<gt>\n"
8153 "#include E<lt>errno.hE<gt>\n"
8154 "#include E<lt>string.hE<gt>\n"
8155
8156 #. type: Plain text
8157 #: build/C/man3/getprotoent_r.3:174 build/C/man3/getservent_r.3:172
8158 #, no-wrap
8159 msgid "#define MAX_BUF 10000\n"
8160 msgstr "#define MAX_BUF 10000\n"
8161
8162 #. type: Plain text
8163 #: build/C/man3/getprotoent_r.3:183
8164 #, no-wrap
8165 msgid ""
8166 "int\n"
8167 "main(int argc, char *argv[])\n"
8168 "{\n"
8169 "    int buflen, erange_cnt, s;\n"
8170 "    struct protoent result_buf;\n"
8171 "    struct protoent *result;\n"
8172 "    char buf[MAX_BUF];\n"
8173 "    char **p;\n"
8174 msgstr ""
8175 "int\n"
8176 "main(int argc, char *argv[])\n"
8177 "{\n"
8178 "    int buflen, erange_cnt, s;\n"
8179 "    struct protoent result_buf;\n"
8180 "    struct protoent *result;\n"
8181 "    char buf[MAX_BUF];\n"
8182 "    char **p;\n"
8183
8184 #. type: Plain text
8185 #: build/C/man3/getprotoent_r.3:188
8186 #, no-wrap
8187 msgid ""
8188 "    if (argc E<lt> 2) {\n"
8189 "        printf(\"Usage: %s proto-name [buflen]\\en\", argv[0]);\n"
8190 "        exit(EXIT_FAILURE);\n"
8191 "    }\n"
8192 msgstr ""
8193 "    if (argc E<lt> 2) {\n"
8194 "        printf(\"Usage: %s proto-name [buflen]\\en\", argv[0]);\n"
8195 "        exit(EXIT_FAILURE);\n"
8196 "    }\n"
8197
8198 #. type: Plain text
8199 #: build/C/man3/getprotoent_r.3:192
8200 #, no-wrap
8201 msgid ""
8202 "    buflen = 1024;\n"
8203 "    if (argc E<gt> 2)\n"
8204 "        buflen = atoi(argv[2]);\n"
8205 msgstr ""
8206 "    buflen = 1024;\n"
8207 "    if (argc E<gt> 2)\n"
8208 "        buflen = atoi(argv[2]);\n"
8209
8210 #. type: Plain text
8211 #: build/C/man3/getprotoent_r.3:197 build/C/man3/getservent_r.3:200
8212 #, no-wrap
8213 msgid ""
8214 "    if (buflen E<gt> MAX_BUF) {\n"
8215 "        printf(\"Exceeded buffer limit (%d)\\en\", MAX_BUF);\n"
8216 "        exit(EXIT_FAILURE);\n"
8217 "    }\n"
8218 msgstr ""
8219 "    if (buflen E<gt> MAX_BUF) {\n"
8220 "        printf(\"Exceeded buffer limit (%d)\\en\", MAX_BUF);\n"
8221 "        exit(EXIT_FAILURE);\n"
8222 "    }\n"
8223
8224 #. type: Plain text
8225 #: build/C/man3/getprotoent_r.3:206
8226 #, no-wrap
8227 msgid ""
8228 "    erange_cnt = 0;\n"
8229 "    do {\n"
8230 "        s = getprotobyname_r(argv[1], &result_buf,\n"
8231 "                     buf, buflen, &result);\n"
8232 "        if (s == ERANGE) {\n"
8233 "            if (erange_cnt == 0)\n"
8234 "                printf(\"ERANGE! Retrying with larger buffer\\en\");\n"
8235 "            erange_cnt++;\n"
8236 msgstr ""
8237 "    erange_cnt = 0;\n"
8238 "    do {\n"
8239 "        s = getprotobyname_r(argv[1], &result_buf,\n"
8240 "                     buf, buflen, &result);\n"
8241 "        if (s == ERANGE) {\n"
8242 "            if (erange_cnt == 0)\n"
8243 "                printf(\"ERANGE! Retrying with larger buffer\\en\");\n"
8244 "            erange_cnt++;\n"
8245
8246 #. type: Plain text
8247 #: build/C/man3/getprotoent_r.3:209 build/C/man3/getservent_r.3:212
8248 #, no-wrap
8249 msgid ""
8250 "            /* Increment a byte at a time so we can see exactly\n"
8251 "               what size buffer was required */\n"
8252 msgstr ""
8253 "            /* Increment a byte at a time so we can see exactly\n"
8254 "               what size buffer was required */\n"
8255
8256 #. type: Plain text
8257 #: build/C/man3/getprotoent_r.3:211 build/C/man3/getservent_r.3:214
8258 #, no-wrap
8259 msgid "            buflen++;\n"
8260 msgstr "            buflen++;\n"
8261
8262 #. type: Plain text
8263 #: build/C/man3/getprotoent_r.3:218 build/C/man3/getservent_r.3:221
8264 #, no-wrap
8265 msgid ""
8266 "            if (buflen E<gt> MAX_BUF) {\n"
8267 "                printf(\"Exceeded buffer limit (%d)\\en\", MAX_BUF);\n"
8268 "                exit(EXIT_FAILURE);\n"
8269 "            }\n"
8270 "        }\n"
8271 "    } while (s == ERANGE);\n"
8272 msgstr ""
8273 "            if (buflen E<gt> MAX_BUF) {\n"
8274 "                printf(\"Exceeded buffer limit (%d)\\en\", MAX_BUF);\n"
8275 "                exit(EXIT_FAILURE);\n"
8276 "            }\n"
8277 "        }\n"
8278 "    } while (s == ERANGE);\n"
8279
8280 #. type: Plain text
8281 #: build/C/man3/getprotoent_r.3:222
8282 #, no-wrap
8283 msgid ""
8284 "    printf(\"getprotobyname_r() returned: %s  (buflen=%d)\\en\",\n"
8285 "            (s == 0) ? \"0 (success)\" : (s == ENOENT) ? \"ENOENT\" :\n"
8286 "            strerror(s), buflen);\n"
8287 msgstr ""
8288 "    printf(\"getprotobyname_r() returned: %s  (buflen=%d)\\en\",\n"
8289 "            (s == 0) ? \"0 (success)\" : (s == ENOENT) ? \"ENOENT\" :\n"
8290 "            strerror(s), buflen);\n"
8291
8292 #. type: Plain text
8293 #: build/C/man3/getprotoent_r.3:227 build/C/man3/getservent_r.3:230
8294 #, no-wrap
8295 msgid ""
8296 "    if (s != 0 || result == NULL) {\n"
8297 "        printf(\"Call failed/record not found\\en\");\n"
8298 "        exit(EXIT_FAILURE);\n"
8299 "    }\n"
8300 msgstr ""
8301 "    if (s != 0 || result == NULL) {\n"
8302 "        printf(\"Call failed/record not found\\en\");\n"
8303 "        exit(EXIT_FAILURE);\n"
8304 "    }\n"
8305
8306 #. type: Plain text
8307 #: build/C/man3/getprotoent_r.3:233
8308 #, no-wrap
8309 msgid ""
8310 "    printf(\"p_name=%s; p_proto=%d; aliases=\",\n"
8311 "                result_buf.p_name, result_buf.p_proto);\n"
8312 "    for (p = result_buf.p_aliases; *p != NULL; p++)\n"
8313 "        printf(\"%s \", *p);\n"
8314 "    printf(\"\\en\");\n"
8315 msgstr ""
8316 "    printf(\"p_name=%s; p_proto=%d; aliases=\",\n"
8317 "                result_buf.p_name, result_buf.p_proto);\n"
8318 "    for (p = result_buf.p_aliases; *p != NULL; p++)\n"
8319 "        printf(\"%s \", *p);\n"
8320 "    printf(\"\\en\");\n"
8321
8322 #. type: Plain text
8323 #: build/C/man3/getprotoent_r.3:240
8324 msgid "B<getprotoent>(3), B<protocols>(5)"
8325 msgstr "B<getprotoent>(3), B<protocols>(5)"
8326
8327 #. type: TH
8328 #: build/C/man3/getservent.3:34
8329 #, no-wrap
8330 msgid "GETSERVENT"
8331 msgstr "GETSERVENT"
8332
8333 #. type: Plain text
8334 #: build/C/man3/getservent.3:38
8335 msgid ""
8336 "getservent, getservbyname, getservbyport, setservent, endservent - get "
8337 "service entry"
8338 msgstr ""
8339 "getservent, getservbyname, getservbyport, setservent, endservent - サービスの"
8340 "エントリを取得する"
8341
8342 #. type: Plain text
8343 #: build/C/man3/getservent.3:43
8344 #, no-wrap
8345 msgid "B<struct servent *getservent(void);>\n"
8346 msgstr "B<struct servent *getservent(void);>\n"
8347
8348 #. type: Plain text
8349 #: build/C/man3/getservent.3:45
8350 #, no-wrap
8351 msgid "B<struct servent *getservbyname(const char *>I<name>B<, const char *>I<proto>B<);>\n"
8352 msgstr "B<struct servent *getservbyname(const char *>I<name>B<, const char *>I<proto>B<);>\n"
8353
8354 #. type: Plain text
8355 #: build/C/man3/getservent.3:47
8356 #, no-wrap
8357 msgid "B<struct servent *getservbyport(int >I<port>B<, const char *>I<proto>B<);>\n"
8358 msgstr "B<struct servent *getservbyport(int >I<port>B<, const char *>I<proto>B<);>\n"
8359
8360 #. type: Plain text
8361 #: build/C/man3/getservent.3:49
8362 #, no-wrap
8363 msgid "B<void setservent(int >I<stayopen>B<);>\n"
8364 msgstr "B<void setservent(int >I<stayopen>B<);>\n"
8365
8366 #. type: Plain text
8367 #: build/C/man3/getservent.3:51
8368 #, no-wrap
8369 msgid "B<void endservent(void);>\n"
8370 msgstr "B<void endservent(void);>\n"
8371
8372 #. type: Plain text
8373 #: build/C/man3/getservent.3:62
8374 msgid ""
8375 "The B<getservent>()  function reads the next entry from the services "
8376 "database (see B<services>(5))  and returns a I<servent> structure containing "
8377 "the broken-out fields from the entry.  A connection is opened to the "
8378 "database if necessary."
8379 msgstr ""
8380 "B<getservent>()  関数はサービスのデータベース (B<services>(5)  参照) から次の"
8381 "エントリを読み込み、 そのエントリを I<servent> 構造体の要素別のフィールドに格"
8382 "納し、 その構造体を返す。 必要であれば、データベースへの接続がオープンされ"
8383 "る。"
8384
8385 #. type: Plain text
8386 #: build/C/man3/getservent.3:77
8387 msgid ""
8388 "The B<getservbyname>()  function returns a I<servent> structure for the "
8389 "entry from the database that matches the service I<name> using protocol "
8390 "I<proto>.  If I<proto> is NULL, any protocol will be matched.  A connection "
8391 "is opened to the database if necessary."
8392 msgstr ""
8393 "B<getservbyname>()  関数は、 プロトコル I<proto> を用いるサービスの名前 "
8394 "I<name> にマッチするエントリをデータベースから探し、 そのエントリを収めた "
8395 "I<servent> 構造体を返す。 I<proto> が NULL の場合は、任意のプロトコルにマッチ"
8396 "する。 必要であれば、データベースへの接続がオープンされる。"
8397
8398 #. type: Plain text
8399 #: build/C/man3/getservent.3:93
8400 msgid ""
8401 "The B<getservbyport>()  function returns a I<servent> structure for the "
8402 "entry from the database that matches the port I<port> (given in network byte "
8403 "order)  using protocol I<proto>.  If I<proto> is NULL, any protocol will be "
8404 "matched.  A connection is opened to the database if necessary."
8405 msgstr ""
8406 "B<getservbyport>()  関数は、 プロトコル I<proto> を用いるサービスのポート番"
8407 "号 I<port> にマッチするエントリをデータベースから探し、 そのエントリの内容を"
8408 "収めた I<servent> 構造体を返す (ポート番号 I<port> はネットワーク・バイトオー"
8409 "ダで指定する)。 I<proto> が NULL の場合は任意のプロトコルにマッチする。 必要"
8410 "であれば、データベースへの接続がオープンされる。"
8411
8412 #. type: Plain text
8413 #: build/C/man3/getservent.3:105
8414 msgid ""
8415 "The B<setservent>()  function opens a connection to the database, and sets "
8416 "the next entry to the first entry.  If I<stayopen> is nonzero, then the "
8417 "connection to the database will not be closed between calls to one of the "
8418 "B<getserv*>()  functions."
8419 msgstr ""
8420 "B<setservent>()  関数はデータベースへの接続をオープンし、 次の読み込みエント"
8421 "リを先頭のエントリに設定する。 I<stayopen> が 0 でない場合、 一つ一つの "
8422 "B<getserv*>()  関数の呼び出し間でデータベースへの接続をクローズしない。"
8423
8424 #. type: Plain text
8425 #: build/C/man3/getservent.3:109
8426 msgid "The B<endservent>()  function closes the connection to the database."
8427 msgstr "B<endservent>()  関数はデータベースへの接続をクローズする。"
8428
8429 #. type: Plain text
8430 #: build/C/man3/getservent.3:115
8431 msgid "The I<servent> structure is defined in I<E<lt>netdb.hE<gt>> as follows:"
8432 msgstr ""
8433 "I<servent> 構造体は I<E<lt>netdb.hE<gt>> で以下のように定義されている。"
8434
8435 #. type: Plain text
8436 #: build/C/man3/getservent.3:124
8437 #, no-wrap
8438 msgid ""
8439 "struct servent {\n"
8440 "    char  *s_name;       /* official service name */\n"
8441 "    char **s_aliases;    /* alias list */\n"
8442 "    int    s_port;       /* port number */\n"
8443 "    char  *s_proto;      /* protocol to use */\n"
8444 "}\n"
8445 msgstr ""
8446 "struct servent {\n"
8447 "    char  *s_name;       /* official service name */\n"
8448 "    char **s_aliases;    /* alias list */\n"
8449 "    int    s_port;       /* port number */\n"
8450 "    char  *s_proto;      /* protocol to use */\n"
8451 "}\n"
8452
8453 #. type: Plain text
8454 #: build/C/man3/getservent.3:130
8455 msgid "The members of the I<servent> structure are:"
8456 msgstr "I<servent> 構造体のメンバーは以下の通り。"
8457
8458 #. type: TP
8459 #: build/C/man3/getservent.3:130
8460 #, no-wrap
8461 msgid "I<s_name>"
8462 msgstr "I<s_name>"
8463
8464 #. type: Plain text
8465 #: build/C/man3/getservent.3:133
8466 msgid "The official name of the service."
8467 msgstr "サービスの正式名 (official name)。"
8468
8469 #. type: TP
8470 #: build/C/man3/getservent.3:133
8471 #, no-wrap
8472 msgid "I<s_aliases>"
8473 msgstr "I<s_aliases>"
8474
8475 #. type: Plain text
8476 #: build/C/man3/getservent.3:136
8477 msgid "A NULL-terminated list of alternative names for the service."
8478 msgstr "サービスの別名のリスト。 リストはヌルで終端される。"
8479
8480 #. type: TP
8481 #: build/C/man3/getservent.3:136
8482 #, no-wrap
8483 msgid "I<s_port>"
8484 msgstr "I<s_port>"
8485
8486 #. type: Plain text
8487 #: build/C/man3/getservent.3:139
8488 msgid "The port number for the service given in network byte order."
8489 msgstr "サービスのポート番号。ネットワークバイトオーダで指定される。"
8490
8491 #. type: TP
8492 #: build/C/man3/getservent.3:139
8493 #, no-wrap
8494 msgid "I<s_proto>"
8495 msgstr "I<s_proto>"
8496
8497 #. type: Plain text
8498 #: build/C/man3/getservent.3:142
8499 msgid "The name of the protocol to use with this service."
8500 msgstr "このサービスと共に用いるプロトコルの名前。"
8501
8502 #. type: Plain text
8503 #: build/C/man3/getservent.3:153
8504 msgid ""
8505 "The B<getservent>(), B<getservbyname>()  and B<getservbyport>()  functions "
8506 "return a pointer to a statically allocated I<servent> structure, or NULL if "
8507 "an error occurs or the end of the file is reached."
8508 msgstr ""
8509 "B<getservent>(), B<getservbyname>(), B<getservbyport>()  関数は、 静的に割り"
8510 "当てられた I<servent> 構造体へのポインタを返す。 エラーが起こったり、ファイル"
8511 "の末尾に達した場合は NULL を返す。"
8512
8513 #. type: TP
8514 #: build/C/man3/getservent.3:154 build/C/man5/services.5:186
8515 #, no-wrap
8516 msgid "I</etc/services>"
8517 msgstr "I</etc/services>"
8518
8519 #. type: Plain text
8520 #: build/C/man3/getservent.3:157
8521 msgid "services database file"
8522 msgstr "サービスのデータベースファイル"
8523
8524 #. type: Plain text
8525 #: build/C/man3/getservent.3:164
8526 msgid "B<getnetent>(3), B<getprotoent>(3), B<getservent_r>(3), B<services>(5)"
8527 msgstr "B<getnetent>(3), B<getprotoent>(3), B<getservent_r>(3), B<services>(5)"
8528
8529 #. type: TH
8530 #: build/C/man3/getservent_r.3:26
8531 #, no-wrap
8532 msgid "GETSERVENT_R"
8533 msgstr "GETSERVENT_R"
8534
8535 #. type: Plain text
8536 #: build/C/man3/getservent_r.3:30
8537 msgid ""
8538 "getservent_r, getservbyname_r, getservbyport_r - get service entry "
8539 "(reentrant)"
8540 msgstr ""
8541 "getservent_r, getservbyname_r, getservbyport_r - サービスエントリを\n"
8542 "取得する (リエントラント版)"
8543
8544 #. type: Plain text
8545 #: build/C/man3/getservent_r.3:36
8546 #, no-wrap
8547 msgid ""
8548 "B<int getservent_r(struct servent *>I<result_buf>B<, char *>I<buf>B<,>\n"
8549 "B<                size_t >I<buflen>B<, struct servent **>I<result>B<);>\n"
8550 msgstr ""
8551 "B<int getservent_r(struct servent *>I<result_buf>B<, char *>I<buf>B<,>\n"
8552 "B<                size_t >I<buflen>B<, struct servent **>I<result>B<);>\n"
8553
8554 #. type: Plain text
8555 #: build/C/man3/getservent_r.3:40
8556 #, no-wrap
8557 msgid ""
8558 "B<int getservbyname_r(const char *>I<name>B<, const char *>I<proto>B<,>\n"
8559 "B<                struct servent *>I<result_buf>B<, char *>I<buf>B<,>\n"
8560 "B<                size_t >I<buflen>B<, struct servent **>I<result>B<);>\n"
8561 msgstr ""
8562 "B<int getservbyname_r(const char *>I<name>B<, const char *>I<proto>B<,>\n"
8563 "B<                struct servent *>I<result_buf>B<, char *>I<buf>B<,>\n"
8564 "B<                size_t >I<buflen>B<, struct servent **>I<result>B<);>\n"
8565
8566 #. type: Plain text
8567 #: build/C/man3/getservent_r.3:44
8568 #, no-wrap
8569 msgid ""
8570 "B<int getservbyport_r(int >I<port>B<, const char *>I<proto>B<,>\n"
8571 "B<                struct servent *>I<result_buf>B<, char *>I<buf>B<,>\n"
8572 "B<                size_t >I<buflen>B<, struct servent **>I<result>B<);>\n"
8573 msgstr ""
8574 "B<int getservbyport_r(int >I<port>B<, const char *>I<proto>B<,>\n"
8575 "B<                struct servent *>I<result_buf>B<, char *>I<buf>B<,>\n"
8576 "B<                size_t >I<buflen>B<, struct servent **>I<result>B<);>\n"
8577
8578 #. type: Plain text
8579 #: build/C/man3/getservent_r.3:55
8580 msgid "B<getservent_r>(), B<getservbyname_r>(), B<getservbyport_r>():"
8581 msgstr "B<getservent_r>(), B<getservbyname_r>(), B<getservbyport_r>():"
8582
8583 #. type: Plain text
8584 #: build/C/man3/getservent_r.3:76
8585 msgid ""
8586 "The B<getservent_r>(), B<getservbyname_r>(), and B<getservbyport_r>()  "
8587 "functions are the reentrant equivalents of, respectively, B<getservent>(3), "
8588 "B<getservbyname>(3), and B<getservbyport>(3).  They differ in the way that "
8589 "the I<servent> structure is returned, and in the function calling signature "
8590 "and return value.  This manual page describes just the differences from the "
8591 "nonreentrant functions."
8592 msgstr ""
8593 "関数 B<getservent_r>(), B<getservbyname_r>(), B<getservbyport_r>() は、\n"
8594 "それぞれ B<getservent>(3), B<getservbyname>(3), B<getservbyport>(3) の\n"
8595 "リエントラント版である。\n"
8596 "I<servent> 構造体の返し方と、関数呼び出し時の引き数と返り値が異なる。\n"
8597 "このマニュアルページでは、リエントラントでない関数との違いだけを\n"
8598 "説明する。"
8599
8600 #. type: Plain text
8601 #: build/C/man3/getservent_r.3:82
8602 msgid ""
8603 "Instead of returning a pointer to a statically allocated I<servent> "
8604 "structure as the function result, these functions copy the structure into "
8605 "the location pointed to by I<result_buf>."
8606 msgstr ""
8607 "これらの関数は、関数の結果として静的に割り当てられた I<servent> 構造体\n"
8608 "へのポインタを返すのではなく、 I<servent> 構造体を I<result_buf> が\n"
8609 "指す場所にコピーする。"
8610
8611 #.  I can find no information on the required/recommended buffer size;
8612 #.  the nonreentrant functions use a 1024 byte buffer -- mtk.
8613 #. type: Plain text
8614 #: build/C/man3/getservent_r.3:99
8615 msgid ""
8616 "The I<buf> array is used to store the string fields pointed to by the "
8617 "returned I<servent> structure.  (The nonreentrant functions allocate these "
8618 "strings in static storage.)  The size of this array is specified in "
8619 "I<buflen>.  If I<buf> is too small, the call fails with the error B<ERANGE>, "
8620 "and the caller must try again with a larger buffer.  (A buffer of length "
8621 "1024 bytes should be sufficient for most applications.)"
8622 msgstr ""
8623 "配列 I<buf> は、返される I<servent> 構造体が指す文字列フィールドを\n"
8624 "格納するのに使用される (リエントラントでない関数の場合は、\n"
8625 "これらの文字列は静的な領域に格納される)。\n"
8626 "この配列の大きさは I<buflen> で指定される。\n"
8627 "I<buf> が小さすぎる場合、関数呼び出しはエラー B<ERANGE> で失敗し、\n"
8628 "呼び出し側ではもっと大きなバッファで再度呼び出す必要がある (ほとんどの\n"
8629 "アプリケーションでは、長さ 1024 バイトのバッファで十分なはずである)。"
8630
8631 #. type: Plain text
8632 #: build/C/man3/getservent_r.3:107
8633 msgid ""
8634 "If the function call successfully obtains a service record, then I<*result> "
8635 "is set pointing to I<result_buf>; otherwise, I<*result> is set to NULL."
8636 msgstr ""
8637 "関数呼び出しでサービスレコードの取得に成功すると、\n"
8638 "I<*result> は I<result_buf> を指すように設定される。\n"
8639 "それ以外の場合は I<*result> に NULL が設定される。"
8640
8641 #. type: Plain text
8642 #: build/C/man3/getservent_r.3:110
8643 msgid ""
8644 "On success, these functions return 0.  On error, they return one of the "
8645 "positive error numbers listed in errors."
8646 msgstr ""
8647 "成功すると、これらの関数は 0 を返す。エラーの場合、「エラー」の節の\n"
8648 "リストにある正のエラー番号のいずれかを返す。"
8649
8650 #. type: Plain text
8651 #: build/C/man3/getservent_r.3:118
8652 msgid ""
8653 "On error, record not found (B<getservbyname_r>(), B<getservbyport_r>()), or "
8654 "end of input (B<getservent_r>())  I<result> is set to NULL."
8655 msgstr ""
8656 "エラーの場合、レコードが見つからなかった場合 (B<getservbyname_r>(),\n"
8657 "B<getservbyaddr_r>()) やこれ以上レコードがない場合 (B<getservent_r>())、\n"
8658 "I<result> には NULL が設定される。"
8659
8660 #. type: Plain text
8661 #: build/C/man3/getservent_r.3:123
8662 msgid "(B<getservent_r>())  No more records in database."
8663 msgstr "(B<getservent_r>())  データベースにこれ以上レコードがない。"
8664
8665 #. type: Plain text
8666 #: build/C/man3/getservent_r.3:148
8667 msgid ""
8668 "The program below uses B<getservbyport_r>()  to retrieve the service record "
8669 "for the port and protocol named in its first command-line argument.  If a "
8670 "third (integer) command-line argument is supplied, it is used as the initial "
8671 "value for I<buflen>; if B<getservbyport_r>()  fails with the error "
8672 "B<ERANGE>, the program retries with larger buffer sizes.  The following "
8673 "shell session shows a couple of sample runs:"
8674 msgstr ""
8675 "以下のプログラムは、 B<getservbyport_r>() を使って、コマンド\n"
8676 "ライン引き数で指定されたポート番号とプロトコル名を持つ\n"
8677 "サービスレコードを取得する。\n"
8678 "三番目のコマンドライン引き数 (整数値) が指定された場合は、\n"
8679 "その値が I<buflen> の初期値として使用される。\n"
8680 "B<getservbyport_r>() がエラー B<ERANGE> で失敗すると、プログラムは\n"
8681 "より大きなバッファサイズで再度 B<getservbyport_r> を呼び出す。\n"
8682 "下記のシェルのセッションは実行例を示している。"
8683
8684 #. type: Plain text
8685 #: build/C/man3/getservent_r.3:158
8686 #, no-wrap
8687 msgid ""
8688 "$B< ./a.out 7 tcp 1>\n"
8689 "ERANGE! Retrying with larger buffer\n"
8690 "getservbyport_r() returned: 0 (success)  (buflen=87)\n"
8691 "s_name=echo; s_proto=tcp; s_port=7; aliases=\n"
8692 "$B< ./a.out 77777 tcp>\n"
8693 "getservbyport_r() returned: 0 (success)  (buflen=1024)\n"
8694 "Call failed/record not found\n"
8695 msgstr ""
8696 "$B< ./a.out 7 tcp 1>\n"
8697 "ERANGE! Retrying with larger buffer\n"
8698 "getservbyport_r() returned: 0 (success)  (buflen=87)\n"
8699 "s_name=echo; s_proto=tcp; s_port=7; aliases=\n"
8700 "$B< ./a.out 77777 tcp>\n"
8701 "getservbyport_r() returned: 0 (success)  (buflen=1024)\n"
8702 "Call failed/record not found\n"
8703
8704 #. type: Plain text
8705 #: build/C/man3/getservent_r.3:182
8706 #, no-wrap
8707 msgid ""
8708 "int\n"
8709 "main(int argc, char *argv[])\n"
8710 "{\n"
8711 "    int buflen, erange_cnt, port, s;\n"
8712 "    struct servent result_buf;\n"
8713 "    struct servent *result;\n"
8714 "    char buf[MAX_BUF];\n"
8715 "    char *protop;\n"
8716 "    char **p;\n"
8717 msgstr ""
8718 "int\n"
8719 "main(int argc, char *argv[])\n"
8720 "{\n"
8721 "    int buflen, erange_cnt, port, s;\n"
8722 "    struct servent result_buf;\n"
8723 "    struct servent *result;\n"
8724 "    char buf[MAX_BUF];\n"
8725 "    char *protop;\n"
8726 "    char **p;\n"
8727
8728 #. type: Plain text
8729 #: build/C/man3/getservent_r.3:187
8730 #, no-wrap
8731 msgid ""
8732 "    if (argc E<lt> 3) {\n"
8733 "        printf(\"Usage: %s port-num proto-name [buflen]\\en\", argv[0]);\n"
8734 "        exit(EXIT_FAILURE);\n"
8735 "    }\n"
8736 msgstr ""
8737 "    if (argc E<lt> 3) {\n"
8738 "        printf(\"Usage: %s port-num proto-name [buflen]\\en\", argv[0]);\n"
8739 "        exit(EXIT_FAILURE);\n"
8740 "    }\n"
8741
8742 #. type: Plain text
8743 #: build/C/man3/getservent_r.3:191
8744 #, no-wrap
8745 msgid ""
8746 "    port = htons(atoi(argv[1]));\n"
8747 "    protop = (strcmp(argv[2], \"null\") == 0 ||\n"
8748 "              strcmp(argv[2], \"NULL\") == 0) ?  NULL : argv[2];\n"
8749 msgstr ""
8750 "    port = htons(atoi(argv[1]));\n"
8751 "    protop = (strcmp(argv[2], \"null\") == 0 ||\n"
8752 "              strcmp(argv[2], \"NULL\") == 0) ?  NULL : argv[2];\n"
8753
8754 #. type: Plain text
8755 #: build/C/man3/getservent_r.3:195
8756 #, no-wrap
8757 msgid ""
8758 "    buflen = 1024;\n"
8759 "    if (argc E<gt> 3)\n"
8760 "        buflen = atoi(argv[3]);\n"
8761 msgstr ""
8762 "    buflen = 1024;\n"
8763 "    if (argc E<gt> 3)\n"
8764 "        buflen = atoi(argv[3]);\n"
8765
8766 #. type: Plain text
8767 #: build/C/man3/getservent_r.3:209
8768 #, no-wrap
8769 msgid ""
8770 "    erange_cnt = 0;\n"
8771 "    do {\n"
8772 "        s = getservbyport_r(port, protop, &result_buf,\n"
8773 "                     buf, buflen, &result);\n"
8774 "        if (s == ERANGE) {\n"
8775 "            if (erange_cnt == 0)\n"
8776 "                printf(\"ERANGE! Retrying with larger buffer\\en\");\n"
8777 "            erange_cnt++;\n"
8778 msgstr ""
8779 "    erange_cnt = 0;\n"
8780 "    do {\n"
8781 "        s = getservbyport_r(port, protop, &result_buf,\n"
8782 "                     buf, buflen, &result);\n"
8783 "        if (s == ERANGE) {\n"
8784 "            if (erange_cnt == 0)\n"
8785 "                printf(\"ERANGE! Retrying with larger buffer\\en\");\n"
8786 "            erange_cnt++;\n"
8787
8788 #. type: Plain text
8789 #: build/C/man3/getservent_r.3:225
8790 #, no-wrap
8791 msgid ""
8792 "    printf(\"getservbyport_r() returned: %s  (buflen=%d)\\en\",\n"
8793 "            (s == 0) ? \"0 (success)\" : (s == ENOENT) ? \"ENOENT\" :\n"
8794 "            strerror(s), buflen);\n"
8795 msgstr ""
8796 "    printf(\"getservbyport_r() returned: %s  (buflen=%d)\\en\",\n"
8797 "            (s == 0) ? \"0 (success)\" : (s == ENOENT) ? \"ENOENT\" :\n"
8798 "            strerror(s), buflen);\n"
8799
8800 #. type: Plain text
8801 #: build/C/man3/getservent_r.3:237
8802 #, no-wrap
8803 msgid ""
8804 "    printf(\"s_name=%s; s_proto=%s; s_port=%d; aliases=\",\n"
8805 "                result_buf.s_name, result_buf.s_proto,\n"
8806 "                ntohs(result_buf.s_port));\n"
8807 "    for (p = result_buf.s_aliases; *p != NULL; p++)\n"
8808 "        printf(\"%s \", *p);\n"
8809 "    printf(\"\\en\");\n"
8810 msgstr ""
8811 "    printf(\"s_name=%s; s_proto=%s; s_port=%d; aliases=\",\n"
8812 "                result_buf.s_name, result_buf.s_proto,\n"
8813 "                ntohs(result_buf.s_port));\n"
8814 "    for (p = result_buf.s_aliases; *p != NULL; p++)\n"
8815 "        printf(\"%s \", *p);\n"
8816 "    printf(\"\\en\");\n"
8817
8818 #. type: Plain text
8819 #: build/C/man3/getservent_r.3:244
8820 msgid "B<getservent>(3), B<services>(5)"
8821 msgstr "B<getservent>(3), B<services>(5)"
8822
8823 #. type: TH
8824 #: build/C/man5/host.conf.5:26
8825 #, no-wrap
8826 msgid "HOST.CONF"
8827 msgstr "HOST.CONF"
8828
8829 #. type: TH
8830 #: build/C/man5/host.conf.5:26
8831 #, no-wrap
8832 msgid "2003-08-23"
8833 msgstr "2003-08-23"
8834
8835 #. type: TH
8836 #: build/C/man5/host.conf.5:26 build/C/man5/networks.5:26
8837 #, no-wrap
8838 msgid "Linux System Administration"
8839 msgstr "Linux System Administration"
8840
8841 #. type: Plain text
8842 #: build/C/man5/host.conf.5:29
8843 msgid "host.conf - resolver configuration file"
8844 msgstr "host.conf - レゾルバ設定ファイル"
8845
8846 #. type: Plain text
8847 #: build/C/man5/host.conf.5:38
8848 msgid ""
8849 "The file I</etc/host.conf> contains configuration information specific to "
8850 "the resolver library.  It should contain one configuration keyword per line, "
8851 "followed by appropriate configuration information.  The keywords recognized "
8852 "are I<order>, I<trim>, I<multi>, I<nospoof>, I<spoof>, and I<reorder>.  "
8853 "These keywords are described below."
8854 msgstr ""
8855 "ファイル I</etc/host.conf> には、レゾルバライブラリの詳細な設定情報が含まれて"
8856 "いる。 このファイルには、1 行毎に 1 つの設定キーワードと それに続く適切な設定"
8857 "情報がなければならない。 認識されるキーワードは I<order>, I<trim>, I<multi>, "
8858 "I<nospoof>, I<spoof>, I<reorder> である。 各キーワードを、以下で説明する。"
8859
8860 #. type: TP
8861 #: build/C/man5/host.conf.5:38
8862 #, no-wrap
8863 msgid "I<order>"
8864 msgstr "I<order>"
8865
8866 #. type: Plain text
8867 #: build/C/man5/host.conf.5:44
8868 msgid ""
8869 "This keyword specifies how host lookups are to be performed.  It should be "
8870 "followed by one or more lookup methods, separated by commas.  Valid methods "
8871 "are I<bind>, I<hosts>, and I<nis>."
8872 msgstr ""
8873 "このキーワードは、ホストのルックアップ方式を指定する。 このキーワードの後に"
8874 "は、コンマで分けた 1 つ以上のルックアップ方式が続かなくてはならない。 使用可"
8875 "能な方式は I<bind>, I<hosts>, I<nis> である。"
8876
8877 #. type: TP
8878 #: build/C/man5/host.conf.5:44
8879 #, no-wrap
8880 msgid "I<trim>"
8881 msgstr "I<trim>"
8882
8883 #. type: Plain text
8884 #: build/C/man5/host.conf.5:61
8885 msgid ""
8886 "This keyword may be listed more than once.  Each time it should be followed "
8887 "by a list of domains, separated by colons (\\(aq:\\(aq), semicolons (\\(aq;"
8888 "\\(aq) or commas (\\(aq,\\(aq), with the leading dot.  When set, the resolv+ "
8889 "library will automatically trim the given domain name from the end of any "
8890 "hostname resolved via DNS.  This is intended for use with local hosts and "
8891 "domains.  (Related note: trim will not affect hostnames gathered via NIS or "
8892 "the hosts file.  Care should be taken to ensure that the first hostname for "
8893 "each entry in the hosts file is fully qualified or unqualified, as "
8894 "appropriate for the local installation.)"
8895 msgstr ""
8896 "このキーワードは、2 回以上リストすることができる。 毎回、このキーワードの後に"
8897 "は、 ドットではじまる 1 つ以上のドメイン名のリストを続けなければならない。 ド"
8898 "メイン名はコロン (\\(aq:\\(aq)、セミコロン (\\(aq;\\(aq)、コンマ (\\(aq,"
8899 "\\(aq)  で区切る。 このキーワードが設定されると、resolv+ ライブラリは DNS で"
8900 "レゾルブされた すべてのホスト名の後ろから与えられたドメイン名を自動的に取り去"
8901 "る。 このキーワードはローカルなホストとドメインで使用することを意図してい"
8902 "る。 (関連した注意 : NIS または hosts ファイルで集められたホスト名に trim は"
8903 "影響しない。 hosts ファイルの各エントリの最初のホスト名を、 完全なドメイン名"
8904 "付きのものにするかしないかは、 ホストごとのインストールポリシーにあわせて 適"
8905 "切に選択する必要がある。注意すること。)"
8906
8907 #. type: TP
8908 #: build/C/man5/host.conf.5:61
8909 #, no-wrap
8910 msgid "I<multi>"
8911 msgstr "I<multi>"
8912
8913 #. type: Plain text
8914 #: build/C/man5/host.conf.5:76
8915 msgid ""
8916 "Valid values are I<on> and I<off>.  If set to I<on>, the resolv+ library "
8917 "will return all valid addresses for a host that appears in the I</etc/hosts> "
8918 "file, instead of only the first.  This is I<off> by default, as it may cause "
8919 "a substantial performance loss at sites with large hosts files."
8920 msgstr ""
8921 "有効な値は I<on> と I<off> である。 I<on> に設定された場合、最初のエントリの"
8922 "みを例外として、 resolv+ ライブラリは I</etc/hosts> ファイルに現れるホストに"
8923 "対して全ての有効なアドレスを返そうとする。 大きな hosts ファイルを持つサイト"
8924 "では、 この設定は非常な性能の低下を招くので、 デフォルトでは I<off> である。"
8925
8926 #. type: TP
8927 #: build/C/man5/host.conf.5:76
8928 #, no-wrap
8929 msgid "I<nospoof>"
8930 msgstr "I<nospoof>"
8931
8932 #. type: Plain text
8933 #: build/C/man5/host.conf.5:91
8934 msgid ""
8935 "Valid values are I<on> and I<off>.  If set to I<on>, the resolv+ library "
8936 "will attempt to prevent hostname spoofing to enhance the security of "
8937 "B<rlogin> and B<rsh>.  It works as follows: after performing a host address "
8938 "lookup, resolv+ will perform a hostname lookup for that address.  If the two "
8939 "hostnames do not match, the query will fail.  The default value is I<off>."
8940 msgstr ""
8941 "有効な値は I<on> と I<off> である。 I<on> に設定された場合、resolv+ ライブラ"
8942 "リは B<rlogin> と B<rsh> のセキュリティを向上させるためホスト名の偽装を防止し"
8943 "ようとする。 これは、「ホストアドレスのルックアップを行った後、 resolv+ はそ"
8944 "のアドレスに対してホスト名のルックアップを行い、 もし 2 つのホスト名が一致し"
8945 "なかった場合は、クエリーは失敗する。」 というように動作する。 デフォルトの値"
8946 "は I<off> である。"
8947
8948 #. type: TP
8949 #: build/C/man5/host.conf.5:91
8950 #, no-wrap
8951 msgid "I<spoofalert>"
8952 msgstr "I<spoofalert>"
8953
8954 #. type: Plain text
8955 #: build/C/man5/host.conf.5:103
8956 msgid ""
8957 "Valid values are I<on> and I<off>.  If this option is set to I<on> and the "
8958 "I<nospoof> option is also set, resolv+ will log a warning of the error via "
8959 "the syslog facility.  The default value is I<off>."
8960 msgstr ""
8961 "有効な値は I<on> と I<off> である。 このオプションが I<on> に設定されてい"
8962 "て、 I<nospoof> オプションも (on に) 設定されている場合、 resolv+ は syslog "
8963 "機能を通じてエラーに関する警告のログをとる。 デフォルトの値は I<off> である。"
8964
8965 #. type: TP
8966 #: build/C/man5/host.conf.5:103
8967 #, no-wrap
8968 msgid "I<spoof>"
8969 msgstr "I<spoof>"
8970
8971 #. type: Plain text
8972 #: build/C/man5/host.conf.5:122
8973 msgid ""
8974 "Valid values are I<off>, I<nowarn> and I<warn>.  If this option is set to "
8975 "I<off>, spoofed addresses are permitted and no warnings will be emitted via "
8976 "the syslog facility.  If this option is set to I<warn>, resolv+ will attempt "
8977 "to prevent hostname spoofing to enhance the security and log a warning of "
8978 "the error via the syslog facility.  If this option is set to I<nowarn>, the "
8979 "resolv+ library will attempt to prevent hostname spoofing to enhance the "
8980 "security but not emit warnings via the syslog facility.  Setting this option "
8981 "to anything else is equal to setting it to I<nowarn>."
8982 msgstr ""
8983 "有効な値は I<off>, I<nowarn>, I<warn> である。 このオプションを I<off> に設定"
8984 "すると、偽装されたアドレスを許可して、 syslog 機能を通じた警告を発しない。 こ"
8985 "のオプションを I<warn> に設定すると、resolv+ はセキュリティを高めるためにホス"
8986 "ト名の偽装を防止し、 syslog 機能を通じてエラーに関する警告のログをとる。 この"
8987 "オプションを I<nowarn> に設定すると、resolv+ はセキュリティを高めるためにホス"
8988 "ト名の偽装を防止するが、 syslog 機能を通じた警告は発しない。 このオプションを"
8989 "何も設定しない場合は、 I<nowarn> を設定したのと同じになる。"
8990
8991 #. type: TP
8992 #: build/C/man5/host.conf.5:122
8993 #, no-wrap
8994 msgid "I<reorder>"
8995 msgstr "I<reorder>"
8996
8997 #. type: Plain text
8998 #: build/C/man5/host.conf.5:135
8999 msgid ""
9000 "Valid values are I<on> and I<off>.  If set to I<on>, resolv+ will attempt to "
9001 "reorder host addresses so that local addresses (i.e., on the same subnet) "
9002 "are listed first when a B<gethostbyname>(3)  is performed.  Reordering is "
9003 "done for all lookup methods.  The default value is I<off>."
9004 msgstr ""
9005 "有効な値は I<on> と I<off> である。 I<on> に設定されると、 B<gethostbyname "
9006 "(3)> が実行されるとき、resolv+ ライブラリは、ローカルな (つまり、同じサブネッ"
9007 "トにある) アドレスが最初にリストされるように ホストアドレスを並べ変える。 す"
9008 "べてのルックアップ方式に対して並べ変えが行われる。 デフォルトの値は、 I<off> "
9009 "である。"
9010
9011 #. type: SH
9012 #: build/C/man5/host.conf.5:135
9013 #, no-wrap
9014 msgid "ENVIRONMENT"
9015 msgstr "環境変数"
9016
9017 #. type: Plain text
9018 #: build/C/man5/host.conf.5:139
9019 msgid ""
9020 "There are six environment variables that can be used to allow users to "
9021 "override the behavior which is configured in I</etc/host.conf>."
9022 msgstr ""
9023 "I</etc/host.conf> で設定されている動作を、ユーザが上書きできる 6 つの環境変数"
9024 "がある。"
9025
9026 #. type: TP
9027 #: build/C/man5/host.conf.5:139
9028 #, no-wrap
9029 msgid "B<RESOLV_HOST_CONF>"
9030 msgstr "B<RESOLV_HOST_CONF>"
9031
9032 #. type: Plain text
9033 #: build/C/man5/host.conf.5:143
9034 msgid ""
9035 "If set, this variable points to a file that should be read instead of I</etc/"
9036 "host.conf>."
9037 msgstr ""
9038 "この変数を設定すると、 I</etc/host.conf> の代りに読み込むファイルを設定でき"
9039 "る。"
9040
9041 #. type: TP
9042 #: build/C/man5/host.conf.5:143
9043 #, no-wrap
9044 msgid "B<RESOLV_SERV_ORDER>"
9045 msgstr "B<RESOLV_SERV_ORDER>"
9046
9047 #. type: Plain text
9048 #: build/C/man5/host.conf.5:148
9049 msgid "Overrides the I<order> command."
9050 msgstr "I<order> コマンドを上書きする。"
9051
9052 #. type: TP
9053 #: build/C/man5/host.conf.5:148
9054 #, no-wrap
9055 msgid "B<RESOLV_SPOOF_CHECK>"
9056 msgstr "B<RESOLV_SPOOF_CHECK>"
9057
9058 #. type: Plain text
9059 #: build/C/man5/host.conf.5:157
9060 msgid ""
9061 "Overrides the I<nospoof>, I<spoofalert> and I<spoof> commands in the same "
9062 "way as the I<spoof> command is parsed.  Valid values are I<off>, I<nowarn> "
9063 "and I<warn>."
9064 msgstr ""
9065 "I<spoof> コマンドを解析するのと同じ方式で、 I<nospoof>, I<spoofalert>, "
9066 "I<spoof> コマンドを上書きできる。 有効な値は I<off>, I<nowarn>, I<warn> であ"
9067 "る。"
9068
9069 #. type: TP
9070 #: build/C/man5/host.conf.5:157
9071 #, no-wrap
9072 msgid "B<RESOLV_MULTI>"
9073 msgstr "B<RESOLV_MULTI>"
9074
9075 #. type: Plain text
9076 #: build/C/man5/host.conf.5:162
9077 msgid "Overrides the I<multi> command."
9078 msgstr "I<multi> コマンドを上書きする。"
9079
9080 #. type: TP
9081 #: build/C/man5/host.conf.5:162
9082 #, no-wrap
9083 msgid "B<RESOLV_REORDER>"
9084 msgstr "B<RESOLV_REORDER>"
9085
9086 #. type: Plain text
9087 #: build/C/man5/host.conf.5:167
9088 msgid "Overrides the I<reorder> command."
9089 msgstr "I<reorder> コマンドを上書きする。"
9090
9091 #. type: TP
9092 #: build/C/man5/host.conf.5:167
9093 #, no-wrap
9094 msgid "B<RESOLV_ADD_TRIM_DOMAINS>"
9095 msgstr "B<RESOLV_ADD_TRIM_DOMAINS>"
9096
9097 #. type: Plain text
9098 #: build/C/man5/host.conf.5:172
9099 msgid ""
9100 "A list of domains, separated by colons (\\(aq:\\(aq), semicolons (\\(aq;"
9101 "\\(aq) or commas (\\(aq,\\(aq), with the leading dot, which will be added to "
9102 "the list of domains that should be trimmed."
9103 msgstr ""
9104 "コロン (\\(aq:\\(aq)、セミコロン (\\(aq;\\(aq)、コンマ (\\(aq,\\(aq) で区切っ"
9105 "た ドット (\\(aq.\\(aq) で始まるドメイン名のリスト。 ホスト名から取り去るドメ"
9106 "イン名のリストに追加する。"
9107
9108 #. type: TP
9109 #: build/C/man5/host.conf.5:172
9110 #, no-wrap
9111 msgid "B<RESOLV_OVERRIDE_TRIM_DOMAINS>"
9112 msgstr "B<RESOLV_OVERRIDE_TRIM_DOMAINS>"
9113
9114 #. type: Plain text
9115 #: build/C/man5/host.conf.5:180
9116 msgid ""
9117 "A list of domains, separated by colons (\\(aq:\\(aq), semicolons (\\(aq;"
9118 "\\(aq) or commas (\\(aq,\\(aq), with the leading dot, which will replace the "
9119 "list of domains that should be trimmed.  Overrides the I<trim> command."
9120 msgstr ""
9121 "コロン (\\(aq:\\(aq)、セミコロン (\\(aq;\\(aq)、コンマ (\\(aq,\\(aq) で区切っ"
9122 "た ドット (\\(aq.\\(aq) で始まるドメイン名のリスト。 ホスト名から取り去るドメ"
9123 "イン名のリストを上書きする。 I<trim> コマンドを上書きする。"
9124
9125 #. type: Plain text
9126 #: build/C/man5/host.conf.5:184 build/C/man5/host.conf.5:187
9127 msgid "Resolver configuration file"
9128 msgstr "リゾルバ設定ファイル"
9129
9130 #. type: TP
9131 #: build/C/man5/host.conf.5:184
9132 #, no-wrap
9133 msgid "I</etc/resolv.conf>"
9134 msgstr "I</etc/resolv.conf>"
9135
9136 #. type: Plain text
9137 #: build/C/man5/host.conf.5:190
9138 msgid "Local hosts database"
9139 msgstr "ローカルの hosts データベース"
9140
9141 #. type: Plain text
9142 #: build/C/man5/host.conf.5:199
9143 msgid ""
9144 "The following differences exist compared to the original implementation.  A "
9145 "new command I<spoof> and a new environment variable B<RESOLV_SPOOF_CHECK> "
9146 "can take arguments like I<off>, I<nowarn> and I<warn>.  Line comments can "
9147 "appear anywhere and not only at the beginning of a line."
9148 msgstr ""
9149 "元々の実装に比べて以下のような違いがある。 新しいコマンド I<spoof> と新しい環"
9150 "境変数 B<RESOLV_SPOOF_CHECK> は、引き数 I<off>, I<nowarn>, I<warn> をとる。 "
9151 "コメントは行頭だけではなく、どこに書いてもよい。"
9152
9153 #. type: Plain text
9154 #: build/C/man5/host.conf.5:204
9155 msgid "B<gethostbyname>(3), B<hostname>(7), B<named>(8), B<resolv+>(8)"
9156 msgstr "B<gethostbyname>(3), B<hostname>(7), B<named>(8), B<resolv+>(8)"
9157
9158 #. type: TH
9159 #: build/C/man7/hostname.7:39
9160 #, no-wrap
9161 msgid "HOSTNAME"
9162 msgstr "HOSTNAME"
9163
9164 #. type: TH
9165 #: build/C/man7/hostname.7:39
9166 #, no-wrap
9167 msgid "2010-11-07"
9168 msgstr "2010-11-07"
9169
9170 #. type: Plain text
9171 #: build/C/man7/hostname.7:42
9172 msgid "hostname - hostname resolution description"
9173 msgstr "hostname - ホスト名の名前解決の説明"
9174
9175 #. type: Plain text
9176 #: build/C/man7/hostname.7:46
9177 msgid ""
9178 "Hostnames are domains, where a domain is a hierarchical, dot-separated list "
9179 "of subdomains; for example, the machine monet, in the Berkeley subdomain of "
9180 "the EDU domain would be represented as \"monet.Berkeley.EDU\"."
9181 msgstr ""
9182 "ホスト名は、階層構造でドット区切りのサブドメインである。\n"
9183 "例えば、 EDU ドメインの Berkeley サブドメインのマシン monet は、\n"
9184 "\"monet.Berkeley.EDU\" と表現される。"
9185
9186 #. type: Plain text
9187 #: build/C/man7/hostname.7:55
9188 msgid ""
9189 "Hostnames are often used with network client and server programs, which must "
9190 "generally translate the name to an address for use.  (This task is generally "
9191 "performed by either B<getaddrinfo>(3)  or the obsolete "
9192 "B<gethostbyname>(3).)  Hostnames are resolved by the Internet name resolver "
9193 "in the following fashion."
9194 msgstr ""
9195 "ホスト名は、ネットワーククライアントやサーバのプログラムでは一般的に\n"
9196 "使用され、使用する際には名前からアドレスに変換しなければならない (一般\n"
9197 "的にはアドレスへの変換処理は B<getaddrinfo>(3) か (廃止予定の)\n"
9198 "B<gethostbyname>(3) で行われる)。ホスト名の解決は、\n"
9199 "インターネット・ネームリゾルバによって以下の方法で実行される。"
9200
9201 #. type: Plain text
9202 #: build/C/man7/hostname.7:68
9203 msgid ""
9204 "If the name consists of a single component, that is, contains no dot, and if "
9205 "the environment variable B<HOSTALIASES> is set to the name of a file, that "
9206 "file is searched for any string matching the input hostname.  The file "
9207 "should consist of lines made up of two white-space separated strings, the "
9208 "first of which is the hostname alias, and the second of which is the "
9209 "complete hostname to be substituted for that alias.  If a case-insensitive "
9210 "match is found between the hostname to be resolved and the first field of a "
9211 "line in the file, the substituted name is looked up with no further "
9212 "processing."
9213 msgstr ""
9214 "ホスト名がドットを含まない単一要素で構成されていて、環境変数\n"
9215 "B<HOSTALIASES> にファイル名が設定されている場合、入力されたホスト名に\n"
9216 "マッチする文字列を検索するのに指定されたファイルが使用される。\n"
9217 "そのファイルの各行は、ホワイトスペースで区切られた文字列 2 つで\n"
9218 "構成され、各行の最初の文字列がホスト名のエイリアス (別名) で、\n"
9219 "二番目の文字列がそのエイリアスに対応する完全なホスト名である。\n"
9220 "解決するホスト名と一致するホスト名のエイリアス (ファイルの各行の最初の\n"
9221 "フィールド) が見つかれば、完全なホスト名に置き換えられ、\n"
9222 "それ以上の変換処理は行わずに、そのホスト名で検索処理が行われる\n"
9223 "(ホスト名とエイリアスの照合では大文字、小文字の違いは無視される)。"
9224
9225 #. type: Plain text
9226 #: build/C/man7/hostname.7:72
9227 msgid ""
9228 "If the input name ends with a trailing dot, the trailing dot is removed, and "
9229 "the remaining name is looked up with no further processing."
9230 msgstr ""
9231 "入力されたホスト名の末尾がドットの場合、\n"
9232 "末尾のドットは削除され、それ以上の処理は行われず、\n"
9233 "(末尾のドットを削除した) 残りの名前で検索が行われる。"
9234
9235 #. type: Plain text
9236 #: build/C/man7/hostname.7:85
9237 msgid ""
9238 "If the input name does not end with a trailing dot, it is looked up by "
9239 "searching through a list of domains until a match is found.  The default "
9240 "search list includes first the local domain, then its parent domains with at "
9241 "least 2 name components (longest first).  For example, in the domain CS."
9242 "Berkeley.EDU, the name lithium.CChem will be checked first as lithium.CChem."
9243 "CS.Berkeley.EDU and then as lithium.CChem.Berkeley.EDU.  Lithium.CChem.EDU "
9244 "will not be tried, as there is only one component remaining from the local "
9245 "domain.  The search path can be changed from the default by a system-wide "
9246 "configuration file (see B<resolver>(5))."
9247 msgstr ""
9248 "入力された名前の末尾がドットでない場合、\n"
9249 "マッチするものが見つかるまでドメインのリストの検索が行われる。\n"
9250 "デフォルトのドメインの検索リストは、先頭ローカルのドメインで、\n"
9251 "親ドメインが (長いものから順に) 続く (親ドメインはドット区切りで\n"
9252 "少なくとも 2 要素あるものだけが使用される)。\n"
9253 "例えば、 CS.Berkeley.EDU ドメインで、\n"
9254 "lithium.CChem というホスト名の場合には、\n"
9255 "最初に lithium.CChem.CS.Berkeley.EDU が確認され、\n"
9256 "次に lithium.CChem.Berkeley.EDU が確認される。\n"
9257 "Lithium.CChem.EDU はチェックされない。\n"
9258 "なぜなら、ローカルドメイン CS.Berkeley.EDU で残っているドメインは\n"
9259 "EDU で、これは一つしか要素がないからである。\n"
9260 "検索リストはシステム全体で共通の設定ファイルでデフォルト値から\n"
9261 "変更できる (B<resolver>(5) 参照)。"
9262
9263 #.  .SH HISTORY
9264 #.  Hostname appeared in
9265 #.  4.2BSD.
9266 #. type: Plain text
9267 #: build/C/man7/hostname.7:93
9268 msgid "B<gethostbyname>(3), B<resolver>(5), B<mailaddr>(7), B<named>(8)"
9269 msgstr "B<gethostbyname>(3), B<resolver>(5), B<mailaddr>(7), B<named>(8)"
9270
9271 #. type: TH
9272 #: build/C/man5/hosts.5:27
9273 #, no-wrap
9274 msgid "HOSTS"
9275 msgstr "HOSTS"
9276
9277 #. type: TH
9278 #: build/C/man5/hosts.5:27
9279 #, no-wrap
9280 msgid "2002-06-16"
9281 msgstr "2002-06-16"
9282
9283 #. type: Plain text
9284 #: build/C/man5/hosts.5:30
9285 msgid "hosts - static table lookup for hostnames"
9286 msgstr "hosts - ホスト名の静的なルックアップテーブル"
9287
9288 #. type: Plain text
9289 #: build/C/man5/hosts.5:32
9290 msgid "B</etc/hosts>"
9291 msgstr "B</etc/hosts>"
9292
9293 #. type: Plain text
9294 #: build/C/man5/hosts.5:40
9295 msgid ""
9296 "This manual page describes the format of the I</etc/hosts> file.  This file "
9297 "is a simple text file that associates IP addresses with hostnames, one line "
9298 "per IP address.  For each host a single line should be present with the "
9299 "following information:"
9300 msgstr ""
9301 "このマニュアルページは、 I</etc/hosts> ファイルのフォーマットについて記述して"
9302 "いる。 このファイルは簡単なテキストファイルで、1 行に 1 つの IP アドレスがあ"
9303 "り、 IP アドレスとホスト名を関連づけている。 各ホストについて、次のような情報"
9304 "が 1 行で与えられる。"
9305
9306 #. type: Plain text
9307 #: build/C/man5/hosts.5:43
9308 msgid "IP_address canonical_hostname [aliases...]"
9309 msgstr "IPアドレス 正式なホスト名 [エイリアス...]"
9310
9311 #. type: Plain text
9312 #: build/C/man5/hosts.5:56
9313 msgid ""
9314 "Fields of the entry are separated by any number of blanks and/or tab "
9315 "characters.  Text from a \"#\" character until the end of the line is a "
9316 "comment, and is ignored.  Host names may contain only alphanumeric "
9317 "characters, minus signs (\"-\"), and periods (\".\").  They must begin with "
9318 "an alphabetic character and end with an alphanumeric character.  Optional "
9319 "aliases provide for name changes, alternate spellings, shorter hostnames, or "
9320 "generic hostnames (for example, I<localhost>)."
9321 msgstr ""
9322 "エントリのフィールドは、空白またはタブ (複数でも可) で区切られる。 \"#\" 文字"
9323 "から行末までのテキストはコメントとして無視される。 ホスト名は英数字・マイナス"
9324 "記号 (\"-\")・ピリオド (\".\") を含むことができる。 ホスト名は英文字 "
9325 "(alphabetic character) で始まって、 英数字 (alphanumeric characte) で終わらな"
9326 "ければならない。 エイリアスはオプションであり、名前の変更、別のスペル、 短い"
9327 "ホスト名、一般的に使われるホスト名 (例えば I<localhost>)  などのために用意さ"
9328 "れている。"
9329
9330 #. type: Plain text
9331 #: build/C/man5/hosts.5:64
9332 msgid ""
9333 "The Berkeley Internet Name Domain (BIND) Server implements the Internet name "
9334 "server for UNIX systems.  It augments or replaces the I</etc/hosts> file or "
9335 "hostname lookup, and frees a host from relying on I</etc/hosts> being up to "
9336 "date and complete."
9337 msgstr ""
9338 "Berkeley Internet Name Domain (BIND) サーバは、 UNIX システムのためのインター"
9339 "ネットネームサーバを実装している。 これは、 I</etc/hosts> ファイルやホスト名"
9340 "ルックアップを拡張したり置き換えたりするものである。 これにより各ホストは I</"
9341 "etc/hosts> を最新かつ完全に保たなくてもよくなる。"
9342
9343 #. type: Plain text
9344 #: build/C/man5/hosts.5:67
9345 msgid ""
9346 "In modern systems, even though the host table has been superseded by DNS, it "
9347 "is still widely used for:"
9348 msgstr ""
9349 "ホストテーブルは、DNS にとって代わられたにもかかわらず、 現在のシステムにおい"
9350 "て次のような用途で広く使われている。"
9351
9352 #. type: TP
9353 #: build/C/man5/hosts.5:67
9354 #, no-wrap
9355 msgid "B<bootstrapping>"
9356 msgstr "B<ブート時>"
9357
9358 #. type: Plain text
9359 #: build/C/man5/hosts.5:73
9360 msgid ""
9361 "Most systems have a small host table containing the name and address "
9362 "information for important hosts on the local network.  This is useful when "
9363 "DNS is not running, for example during system bootup."
9364 msgstr ""
9365 "大部分のシステムは、ローカルネットワークにおいて重要なホストの 名前とアドレス"
9366 "が含まれた小さなホストテーブルを持っている。 これは、システムのブート時など"
9367 "の DNS が稼働していないときに役立つ。"
9368
9369 #. type: TP
9370 #: build/C/man5/hosts.5:73
9371 #, no-wrap
9372 msgid "B<NIS>"
9373 msgstr "B<NIS>"
9374
9375 #. type: Plain text
9376 #: build/C/man5/hosts.5:79
9377 msgid ""
9378 "Sites that use NIS use the host table as input to the NIS host database.  "
9379 "Even though NIS can be used with DNS, most NIS sites still use the host "
9380 "table with an entry for all local hosts as a backup."
9381 msgstr ""
9382 "NIS を使用しているサイトは、ホストテーブルを NIS ホストデータベースの入力とし"
9383 "て用いる。 NIS を DNS と共に使用できるにもかかわらず、 大部分の NIS サイトは"
9384 "未だに、 全てのローカルホストのエントリをもつホストテーブルを バックアップと"
9385 "して使用している。"
9386
9387 #. type: TP
9388 #: build/C/man5/hosts.5:79
9389 #, no-wrap
9390 msgid "B<isolated nodes>"
9391 msgstr "B<隔絶されたノード>"
9392
9393 #. type: Plain text
9394 #: build/C/man5/hosts.5:86
9395 msgid ""
9396 "Very small sites that are isolated from the network use the host table "
9397 "instead of DNS.  If the local information rarely changes, and the network is "
9398 "not connected to the Internet, DNS offers little advantage."
9399 msgstr ""
9400 "ネットワークから隔絶された非常に小さなサイトは、 DNS の代わりにホストテーブル"
9401 "を使用している。 ローカル情報が稀にしか変更されず、 ネットワークがインター"
9402 "ネットと接続されていない場合、 DNS にそれほどの利点はない。"
9403
9404 #. type: Plain text
9405 #: build/C/man5/hosts.5:91
9406 msgid ""
9407 "Modifications to this file normally take effect immediately, except in cases "
9408 "where the file is cached by applications."
9409 msgstr ""
9410 "このファイルへの変更は通常すぐに反映される。但し、アプリケーション によりファ"
9411 "イルの内容がキャッシュされている場合はこの限りではない。"
9412
9413 #. type: SS
9414 #: build/C/man5/hosts.5:91
9415 #, no-wrap
9416 msgid "Historical notes"
9417 msgstr "歴史的な経緯"
9418
9419 #. type: Plain text
9420 #: build/C/man5/hosts.5:94
9421 msgid ""
9422 "RFC\\ 952 gave the original format for the host table, though it has since "
9423 "changed."
9424 msgstr ""
9425 "ホストテーブルのフォーマットはその後変更されているが、 元々のフォーマットは "
9426 "RFC\\ 952 には記載されている。"
9427
9428 #. type: Plain text
9429 #: build/C/man5/hosts.5:107
9430 msgid ""
9431 "Before the advent of DNS, the host table was the only way of resolving "
9432 "hostnames on the fledgling Internet.  Indeed, this file could be created "
9433 "from the official host data base maintained at the Network Information "
9434 "Control Center (NIC), though local changes were often required to bring it "
9435 "up to date regarding unofficial aliases and/or unknown hosts.  The NIC no "
9436 "longer maintains the hosts.txt files, though looking around at the time of "
9437 "writing (circa 2000), there are historical hosts.txt files on the WWW.  I "
9438 "just found three, from 92, 94, and 95."
9439 msgstr ""
9440 "DNS の登場以前、ホストテーブルは、駆け出したばかりのインターネットにおける ホ"
9441 "スト名解決の唯一の方法であった。 実際、このファイルは Network Information "
9442 "Control Center (NIC) によって 管理される公式ホストデータベースから作成するこ"
9443 "とができた。 しかし、非公式なエイリアスや不明なホストを扱えるように、 最新に"
9444 "保つためのローカルな変更が頻繁に必要とされた。 NIC は既に hosts.txt を管理し"
9445 "ていないが、 これを書いている (2000 年頃の) 時点で調べてみると、 WWW 上に歴史"
9446 "的な hosts.txt が存在する。 92, 94, 95 年のものが見つかった。"
9447
9448 #. type: Plain text
9449 #: build/C/man5/hosts.5:114
9450 #, no-wrap
9451 msgid ""
9452 "127.0.0.1       localhost\n"
9453 "192.168.1.10    foo.mydomain.org       foo\n"
9454 "192.168.1.13    bar.mydomain.org       bar\n"
9455 "146.82.138.7    master.debian.org      master\n"
9456 "209.237.226.90  www.opensource.org\n"
9457 msgstr ""
9458 "127.0.0.1       localhost\n"
9459 "192.168.1.10    foo.mydomain.org       foo\n"
9460 "192.168.1.13    bar.mydomain.org       bar\n"
9461 "146.82.138.7    master.debian.org      master\n"
9462 "209.237.226.90  www.opensource.org\n"
9463
9464 #. type: Plain text
9465 #: build/C/man5/hosts.5:121
9466 msgid ""
9467 "B<hostname>(1), B<resolver>(3), B<resolver>(5), B<hostname>(7), B<named>(8)"
9468 msgstr ""
9469 "B<hostname>(1), B<resolver>(3), B<resolver>(5), B<hostname>(7), B<named>(8)"
9470
9471 #.  .SH AUTHOR
9472 #.  This manual page was written by Manoj Srivastava <srivasta@debian.org>,
9473 #.  for the Debian GNU/Linux system.
9474 #. type: Plain text
9475 #: build/C/man5/hosts.5:126
9476 msgid "Internet RFC\\ 952"
9477 msgstr "Internet RFC\\ 952"
9478
9479 #. type: TH
9480 #: build/C/man5/hosts.equiv.5:6
9481 #, no-wrap
9482 msgid "HOSTS.EQUIV"
9483 msgstr "HOSTS.EQUIV"
9484
9485 #. type: TH
9486 #: build/C/man5/hosts.equiv.5:6
9487 #, no-wrap
9488 msgid "2003-08-24"
9489 msgstr "2003-08-24"
9490
9491 #. type: Plain text
9492 #: build/C/man5/hosts.equiv.5:11
9493 msgid ""
9494 "/etc/hosts.equiv - list of hosts and users that are granted \"trusted\" B<r> "
9495 "command access to your system"
9496 msgstr ""
9497 "/etc/hosts.equiv - 「信頼された」B<r> コマンドによるシステムへの アクセスを許"
9498 "可するホストおよびユーザのリスト"
9499
9500 #. type: Plain text
9501 #: build/C/man5/hosts.equiv.5:22
9502 msgid ""
9503 "The B<hosts.equiv> file allows or denies hosts and users to use the B<r>-"
9504 "commands (e.g., B<rlogin>, B<rsh>, or B<rcp>)  without supplying a password."
9505 msgstr ""
9506 "B<hosts.equiv> ファイルは B<r>-コマンド (B<rlogin>, B<rsh>, B<rcp> など) によ"
9507 "るパスワードなしでの利用を 許可/拒否するホスト/ユーザを設定する。"
9508
9509 #. type: Plain text
9510 #: build/C/man5/hosts.equiv.5:24
9511 msgid "The file uses the following format:"
9512 msgstr "このファイルでは以下の書式を用いる。"
9513
9514 #. type: TP
9515 #: build/C/man5/hosts.equiv.5:24
9516 #, no-wrap
9517 msgid "I<[ + | - ]> I<[hostname]> I<[username]>"
9518 msgstr "I<[ + | - ]> I<[hostname]> I<[username]>"
9519
9520 #. type: Plain text
9521 #: build/C/man5/hosts.equiv.5:43
9522 msgid ""
9523 "The I<hostname> is the name of a host which is logically equivalent to the "
9524 "local host.  Users logged into that host are allowed to access like-named "
9525 "user accounts on the local host without supplying a password.  The "
9526 "I<hostname> may be (optionally) preceded by a plus (+) sign.  If the plus "
9527 "sign is used alone, it allows any host to access your system.  You can "
9528 "explicitly deny access to a host by preceding the I<hostname> by a minus (-) "
9529 "sign.  Users from that host must always supply a password.  For security "
9530 "reasons you should always use the FQDN of the hostname and not the short "
9531 "hostname."
9532 msgstr ""
9533 "I<hostname> は、ローカルホストと論理的に等価なホストの名前である。 そのホスト"
9534 "にログインしているユーザは、パスワードなしで ローカルホストの同じ名前のユーザ"
9535 "アカウントにアカウントできる。 I<hostname> の前にはプラス記号 (+) を置いても"
9536 "よい。プラス記号が単独で置かれた場合は、 このシステムへのアクセスをあらゆるホ"
9537 "ストに対して許可したことになる。 アクセスを明示的に拒否するには、 "
9538 "I<hostname> の前にマイナス記号 (-) を付ける。そのホストからのユーザは 常にパ"
9539 "スワードを要求される。セキュリティ上、ホスト名は 短い名前ではなく常に FQDN を"
9540 "使って指定すべきである。"
9541
9542 #. type: Plain text
9543 #: build/C/man5/hosts.equiv.5:61
9544 msgid ""
9545 "The I<username> entry grants a specific user access to all user accounts "
9546 "(except root) without supplying a password.  That means the user is NOT "
9547 "restricted to like-named accounts.  The I<username> may be (optionally) "
9548 "preceded by a plus (+) sign.  You can also explicitly deny access to a "
9549 "specific user by preceding the I<username> with a minus (-) sign.  This says "
9550 "that the user is not trusted no matter what other entries for that host "
9551 "exist."
9552 msgstr ""
9553 "I<username> エントリは、特定のユーザに対して、 (root 以外の) あらゆるユーザア"
9554 "カウント へのアクセスをパスワードなしで許可する。すなわち、そのユーザは同じ名"
9555 "前の アカウント以外にもアクセスできる。 I<username> の前にはプラス記号 (+) を"
9556 "置いてもよい。 特定のユーザからのアクセスを明示的に拒否するには、 "
9557 "I<username> の前にマイナス記号 (-) を付ける。こうすると、 ホストのエントリが"
9558 "なんと言おうとも、そのユーザは信頼されないことになる。"
9559
9560 #. type: Plain text
9561 #: build/C/man5/hosts.equiv.5:63
9562 msgid "Netgroups can be specified by preceding the netgroup by an @ sign."
9563 msgstr "netgroup を指定することもでき、その場合は @ 記号を前につける。"
9564
9565 #. type: Plain text
9566 #: build/C/man5/hosts.equiv.5:69
9567 msgid ""
9568 "Be extremely careful when using the plus (+) sign.  A simple typographical "
9569 "error could result in a standalone plus sign.  A standalone plus sign is a "
9570 "wildcard character that means \"any host\"!"
9571 msgstr ""
9572 "プラス記号 (+) を利用する際にはくれぐれも注意すること。 単純なミスタイプで、"
9573 "単独のプラス記号を置いてしまうことがある。 単独のプラス記号は「すべてのホス"
9574 "ト」を表すワイルドカードになってしまう!"
9575
9576 #. type: Plain text
9577 #: build/C/man5/hosts.equiv.5:71
9578 msgid "I</etc/hosts.equiv>"
9579 msgstr "I</etc/hosts.equiv>"
9580
9581 #. type: Plain text
9582 #: build/C/man5/hosts.equiv.5:76
9583 msgid ""
9584 "Some systems will honor the contents of this file only when it has owner "
9585 "root and no write permission for anybody else.  Some exceptionally paranoid "
9586 "systems even require that there be no other hard links to the file."
9587 msgstr ""
9588 "システムによっては、このファイルの内容が効力を持つのは、 このファイルの所有者"
9589 "が root で、 かつそれ以外に書き込み権限がない場合に限定されていることもあ"
9590 "る。 また、非常に制限がきついシステムでは、このファイルに対する他の ハードリ"
9591 "ンクがないことが要求される場合もある。"
9592
9593 #. type: Plain text
9594 #: build/C/man5/hosts.equiv.5:84
9595 msgid ""
9596 "Modern systems use the Pluggable Authentication Modules library (PAM).  With "
9597 "PAM a standalone plus sign is considered a wildcard character which means "
9598 "\"any host\" only when the word I<promiscuous> is added to the auth "
9599 "component line in your PAM file for the particular service (e.g., B<rlogin>)."
9600 msgstr ""
9601 "最近のシステムでは Pluggable Authentication Modules library (PAM) が 使われて"
9602 "いる。PAM では、単独のプラス記号が「すべてのホスト」を表す ワイルドカードとし"
9603 "て扱われるのは、特定のサービス (例えば B<rlogin>)  用の PAM ファイルで auth "
9604 "行にキーワード I<promiscuous> が追加されている場合のみである。"
9605
9606 #. type: Plain text
9607 #: build/C/man5/hosts.equiv.5:88
9608 msgid "B<rhosts>(5), B<rlogind>(8), B<rshd>(8)"
9609 msgstr "B<rhosts>(5), B<rlogind>(8), B<rshd>(8)"
9610
9611 #. type: TH
9612 #: build/C/man7/icmp.7:12
9613 #, no-wrap
9614 msgid "ICMP"
9615 msgstr "ICMP"
9616
9617 #. type: TH
9618 #: build/C/man7/icmp.7:12 build/C/man8/nscd.8:23 build/C/man7/raw.7:13
9619 #, no-wrap
9620 msgid "2012-05-10"
9621 msgstr "2012-05-10"
9622
9623 #. type: Plain text
9624 #: build/C/man7/icmp.7:15
9625 msgid "icmp - Linux IPv4 ICMP kernel module."
9626 msgstr "icmp - Linux IPv4 ICMP カーネルモジュール"
9627
9628 #. type: Plain text
9629 #: build/C/man7/icmp.7:23
9630 msgid ""
9631 "This kernel protocol module implements the Internet Control Message Protocol "
9632 "defined in RFC\\ 792.  It is used to signal error conditions and for "
9633 "diagnosis.  The user doesn't interact directly with this module; instead it "
9634 "communicates with the other protocols in the kernel and these pass the ICMP "
9635 "errors to the application layers.  The kernel ICMP module also answers ICMP "
9636 "requests."
9637 msgstr ""
9638 "このカーネルモジュールは RFC\\ 792 で定義されている Internet Control Message "
9639 "Protocol を実装したものである。 このプロトコルはエラー状況を知らせたり診断を"
9640 "行うために用いられる。 ユーザーはこのモジュールとは直接には通信できない。 こ"
9641 "のモジュールはカーネルの他のプロトコルと通信し、 それらのプロトコルが ICMP エ"
9642 "ラーをアプリケーションレイヤに渡す。 カーネルの ICMP モジュールは ICMP リクエ"
9643 "ストに対する応答も行う。"
9644
9645 #. type: Plain text
9646 #: build/C/man7/icmp.7:35
9647 msgid ""
9648 "A user protocol may receive ICMP packets for all local sockets by opening a "
9649 "raw socket with the protocol B<IPPROTO_ICMP>.  See B<raw>(7)  for more "
9650 "information.  The types of ICMP packets passed to the socket can be filtered "
9651 "using the B<ICMP_FILTER> socket option.  ICMP packets are always processed "
9652 "by the kernel too, even when passed to a user socket."
9653 msgstr ""
9654 "raw ソケットをプロトコル B<IPPROTO_ICMP> でオープンすれば、 ユーザープロトコ"
9655 "ルはローカルなソケット全てに対する ICMP パケットを受信することができる。 詳細"
9656 "は B<raw>(7)  を参照のこと。 ソケットに渡される ICMP パケットのタイプは "
9657 "B<ICMP_FILTER> オプションによってフィルターできる。 ICMP パケットは (たとえ"
9658 "ユーザーソケットに渡される場合でも)、 常にカーネルによって (も) 処理される。"
9659
9660 #. type: Plain text
9661 #: build/C/man7/icmp.7:41
9662 msgid ""
9663 "Linux limits the rate of ICMP error packets to each destination.  "
9664 "B<ICMP_REDIRECT> and B<ICMP_DEST_UNREACH> are also limited by the "
9665 "destination route of the incoming packets."
9666 msgstr ""
9667 "Linux では ICMP エラーパケットのレートをそれぞれの送り先に対して 制限してい"
9668 "る。 B<ICMP_REDIRECT> と B<ICMP_DEST_UNREACH> も到着したパケットの行き先経路 "
9669 "(destination route) を制限する。"
9670
9671 #.  FIXME . better description needed
9672 #. type: Plain text
9673 #: build/C/man7/icmp.7:54
9674 msgid ""
9675 "ICMP supports a set of I</proc> interfaces to configure some global IP "
9676 "parameters.  The parameters can be accessed by reading or writing files in "
9677 "the directory I</proc/sys/net/ipv4/>.  Most of these parameters are rate "
9678 "limitations for specific ICMP types.  Linux 2.2 uses a token bucket filter "
9679 "to limit ICMPs.  The value is the timeout in jiffies until the token bucket "
9680 "filter is cleared after a burst.  A jiffy is a system dependent unit, "
9681 "usually 10ms on i386 and about 1ms on alpha and ia64."
9682 msgstr ""
9683 "ICMP では、いくつかのグローバルパラメータを設定するための I</proc> ファイル群"
9684 "が用意されている。 これらのパラメータには、 I</proc/sys/net/ipv4/> ディレクト"
9685 "リ内のファイルの読み書きでアクセスできる。 これらのパラメータのほとんどは特定"
9686 "の ICMP タイプに対するレート制限 (rate limitation) である。 Linux 2.2 は "
9687 "ICMP の制限にトークン・バケット・フィルタ (token bucket filter) を用いる。 そ"
9688 "れぞれの値は、バーストの後にトークン・バケット・フィルタがクリア されるまでの"
9689 "タイムアウトを秒単位で表したものである。最小単位(jiffy)は システム依存の単位"
9690 "で i386 システムは通常 10ms、alpha や ia64 では 1ms である。"
9691
9692 #. type: TP
9693 #: build/C/man7/icmp.7:54
9694 #, no-wrap
9695 msgid "I<icmp_destunreach_rate> (Linux 2.2 to 2.4.9)"
9696 msgstr "I<icmp_destunreach_rate> (Linux 2.2 から 2.4.9 まで)"
9697
9698 #.  Precisely: from 2.1.102
9699 #. type: Plain text
9700 #: build/C/man7/icmp.7:63
9701 msgid ""
9702 "Maximum rate to send ICMP Destination Unreachable packets.  This limits the "
9703 "rate at which packets are sent to any individual route or destination.  The "
9704 "limit does not affect sending of B<ICMP_FRAG_NEEDED> packets needed for path "
9705 "MTU discovery."
9706 msgstr ""
9707 "ICMP 不達パケット (Destination Unreachable packet) を送る最大レート。 これは"
9708 "特定のルートまたは行き先にパケットを送信するレートを制限する。 この制限は、 "
9709 "path MTU discovery に必要な B<ICMP_FRAG_NEEDED> パケットの送信には影響しな"
9710 "い。"
9711
9712 #. type: TP
9713 #: build/C/man7/icmp.7:63
9714 #, no-wrap
9715 msgid "I<icmp_echo_ignore_all> (since Linux 2.2)"
9716 msgstr "I<icmp_echo_ignore_all> (Linux 2.2 以降)"
9717
9718 #.  Precisely: 2.1.68
9719 #. type: Plain text
9720 #: build/C/man7/icmp.7:69
9721 msgid "If this value is nonzero, Linux will ignore all B<ICMP_ECHO> requests."
9722 msgstr ""
9723 "この値が非ゼロの場合は、 Linux はすべての B<ICMP_ECHO> 要求を無視する。"
9724
9725 #. type: TP
9726 #: build/C/man7/icmp.7:69
9727 #, no-wrap
9728 msgid "I<icmp_echo_ignore_broadcasts> (since Linux 2.2)"
9729 msgstr "I<icmp_echo_ignore_broadcasts> (Linux 2.2 以降)"
9730
9731 #.  Precisely: from 2.1.68
9732 #. type: Plain text
9733 #: build/C/man7/icmp.7:75
9734 msgid ""
9735 "If this value is nonzero, Linux will ignore all B<ICMP_ECHO> packets sent to "
9736 "broadcast addresses."
9737 msgstr ""
9738 "この値が非ゼロの場合は、 Linux はブロードキャストアドレスに送られたすべての "
9739 "B<ICMP_ECHO> 要求を無視する。"
9740
9741 #. type: TP
9742 #: build/C/man7/icmp.7:75
9743 #, no-wrap
9744 msgid "I<icmp_echoreply_rate> (Linux 2.2 to 2.4.9)"
9745 msgstr "I<icmp_echoreply_rate> (Linux 2.2 から 2.4.9 まで)"
9746
9747 #.  Precisely: from 2.1.102
9748 #. type: Plain text
9749 #: build/C/man7/icmp.7:83
9750 msgid ""
9751 "Maximum rate for sending B<ICMP_ECHOREPLY> packets in response to "
9752 "B<ICMP_ECHOREQUEST> packets."
9753 msgstr ""
9754 "B<ICMP_ECHOREQUEST> パケットに応答する B<ICMP_ECHOREPLY> パケットの最大送信"
9755 "レート。"
9756
9757 #. type: TP
9758 #: build/C/man7/icmp.7:83
9759 #, no-wrap
9760 msgid "I<icmp_errors_use_inbound_ifaddr> (Boolean; default: disabled; since Linux 2.6.12)"
9761 msgstr "I<icmp_errors_use_inbound_ifaddr> (ブール値; デフォルト: 無効; Linux 2.6.12 以降)"
9762
9763 #.  The following taken from 2.6.28-rc4 Documentation/networking/ip-sysctl.txt
9764 #. type: Plain text
9765 #: build/C/man7/icmp.7:88
9766 msgid ""
9767 "If disabled, ICMP error messages are sent with the primary address of the "
9768 "exiting interface."
9769 msgstr ""
9770 "これを無効にすると、ICMP エラーメッセージは、 出力インタフェースのプライマリ"
9771 "アドレスで送信される。"
9772
9773 #. type: Plain text
9774 #: build/C/man7/icmp.7:94
9775 msgid ""
9776 "If enabled, the message will be sent with the primary address of the "
9777 "interface that received the packet that caused the ICMP error.  This is the "
9778 "behavior that many network administrators will expect from a router.  And it "
9779 "can make debugging complicated network layouts much easier."
9780 msgstr ""
9781 "これを有効にすると、エラーメッセージは ICMP エラーの原因となったパケットを 受"
9782 "信したインタフェースのプライマアドレスで送信される。 この動作は、多くのネット"
9783 "ワーク管理者がルータに対して期待しているものであり、 これにより複雑なネット"
9784 "ワークレイアウトのデバッグがより容易になる。"
9785
9786 #. type: Plain text
9787 #: build/C/man7/icmp.7:98
9788 msgid ""
9789 "Note that if no primary address exists for the interface selected, then the "
9790 "primary address of the first non-loopback interface that has one will be "
9791 "used regardless of this setting."
9792 msgstr ""
9793 "選択されたインタフェースでプライマリアドレスが存在しない場合は、 この設定に関"
9794 "わらず、最初のループバック以外のインタフェースで、 プライマリアドレスを持つイ"
9795 "ンタフェースのプライマリアドレスが使用される点に 注意すること。"
9796
9797 #. type: TP
9798 #: build/C/man7/icmp.7:98
9799 #, no-wrap
9800 msgid "I<icmp_ignore_bogus_error_responses> (Boolean; default: disabled; since Linux 2.2)"
9801 msgstr "I<icmp_ignore_bogus_error_responses> (ブール値; デフォルト: 無効; Linux 2.2 以降)"
9802
9803 #.  precisely: since 2.1.32
9804 #.  The following taken from 2.6.28-rc4 Documentation/networking/ip-sysctl.txt
9805 #. type: Plain text
9806 #: build/C/man7/icmp.7:106
9807 msgid ""
9808 "Some routers violate RFC1122 by sending bogus responses to broadcast "
9809 "frames.  Such violations are normally logged via a kernel warning.  If this "
9810 "parameter is enabled, the kernel will not give such warnings, which will "
9811 "avoid log file clutter."
9812 msgstr ""
9813 "ルータの中には、RFC1122 に違反し、ブロードキャストフレームに対して 偽の応答を"
9814 "送信するものがある。 このような違反は通常カーネルの警告としてログに記録され"
9815 "る。 このパラメータを有効にすると、カーネルはこのような警告を出さなくなり、 "
9816 "ログファイルに雑音のような情報が記録されるのを避けることができる。"
9817
9818 #. type: TP
9819 #: build/C/man7/icmp.7:106
9820 #, no-wrap
9821 msgid "I<icmp_paramprob_rate> (Linux 2.2 to 2.4.9)"
9822 msgstr "I<icmp_paramprob_rate> (Linux 2.2 から 2.4.9 まで)"
9823
9824 #.  Precisely: from 2.1.102
9825 #. type: Plain text
9826 #: build/C/man7/icmp.7:113
9827 msgid ""
9828 "Maximum rate for sending B<ICMP_PARAMETERPROB> packets.  These packets are "
9829 "sent when a packet arrives with an invalid IP header."
9830 msgstr ""
9831 "B<ICMP_PARAMETERPROB> パケットの最大送信レート。 これらのパケットは不正な IP "
9832 "ヘッダを持つパケットが到着した場合に 送信される。"
9833
9834 #. type: TP
9835 #: build/C/man7/icmp.7:113
9836 #, no-wrap
9837 msgid "I<icmp_ratelimit> (integer; default: 1000; since Linux 2.4.10)"
9838 msgstr "I<icmp_ratelimit> (integer; default: 1000; Linux 2.4.10 以降)"
9839
9840 #.  The following taken from 2.6.28-rc4 Documentation/networking/ip-sysctl.txt
9841 #. type: Plain text
9842 #: build/C/man7/icmp.7:121
9843 msgid ""
9844 "Limit the maximum rates for sending ICMP packets whose type matches "
9845 "I<icmp_ratemask> (see below) to specific targets.  0 to disable any "
9846 "limiting, otherwise the minimum space between responses in milliseconds."
9847 msgstr ""
9848 "種別が I<icmp_ratemask> (下記参照) にマッチした ICMP パケットの、 特定の送信"
9849 "先への送信レートの最大値を制限する。 0 はレート制限を無効にすることを、 0 以"
9850 "外の値は応答間の最小間隔 (ミリ秒単位) を示す。"
9851
9852 #. type: TP
9853 #: build/C/man7/icmp.7:121
9854 #, no-wrap
9855 msgid "I<icmp_ratemask> (integer; default: see below; since Linux 2.4.10)"
9856 msgstr "I<icmp_ratemask> (integer; default: 下記参照; Linux 2.4.10 以降)"
9857
9858 #.  The following taken from 2.6.28-rc4 Documentation/networking/ip-sysctl.txt
9859 #. type: Plain text
9860 #: build/C/man7/icmp.7:125
9861 msgid "Mask made of ICMP types for which rates are being limited."
9862 msgstr "レート制限を行う ICMP タイプを決めるマスク。"
9863
9864 #. type: Plain text
9865 #: build/C/man7/icmp.7:127
9866 msgid "Significant bits: IHGFEDCBA9876543210"
9867 msgstr "有効ビット: IHGFEDCBA9876543210"
9868
9869 #. type: Plain text
9870 #: build/C/man7/icmp.7:129
9871 msgid "Default mask: 0000001100000011000 (0x1818)"
9872 msgstr "デフォルトマスク: 0000001100000011000 (0x1818)"
9873
9874 #. type: Plain text
9875 #: build/C/man7/icmp.7:132
9876 msgid ""
9877 "Bit definitions (see the Linux kernel source file I<include/linux/icmp.h>):"
9878 msgstr ""
9879 "ビット定義 (Linux カーネルソースファイル I<include/linux/icmp.h> を参照):"
9880
9881 #. type: tbl table
9882 #: build/C/man7/icmp.7:136
9883 #, no-wrap
9884 msgid "0 Echo Reply\n"
9885 msgstr "0 Echo Reply\n"
9886
9887 #. type: tbl table
9888 #: build/C/man7/icmp.7:137
9889 #, no-wrap
9890 msgid "3 Destination Unreachable *\n"
9891 msgstr "3 Destination Unreachable *\n"
9892
9893 #. type: tbl table
9894 #: build/C/man7/icmp.7:138
9895 #, no-wrap
9896 msgid "4 Source Quench *\n"
9897 msgstr "4 Source Quench *\n"
9898
9899 #. type: tbl table
9900 #: build/C/man7/icmp.7:139
9901 #, no-wrap
9902 msgid "5 Redirect\n"
9903 msgstr "5 Redirect\n"
9904
9905 #. type: tbl table
9906 #: build/C/man7/icmp.7:140
9907 #, no-wrap
9908 msgid "8 Echo Request\n"
9909 msgstr "8 Echo Request\n"
9910
9911 #. type: tbl table
9912 #: build/C/man7/icmp.7:141
9913 #, no-wrap
9914 msgid "B Time Exceeded *\n"
9915 msgstr "B Time Exceeded *\n"
9916
9917 #. type: tbl table
9918 #: build/C/man7/icmp.7:142
9919 #, no-wrap
9920 msgid "C Parameter Problem *\n"
9921 msgstr "C Parameter Problem *\n"
9922
9923 #. type: tbl table
9924 #: build/C/man7/icmp.7:143
9925 #, no-wrap
9926 msgid "D Timestamp Request\n"
9927 msgstr "D Timestamp Request\n"
9928
9929 #. type: tbl table
9930 #: build/C/man7/icmp.7:144
9931 #, no-wrap
9932 msgid "E Timestamp Reply\n"
9933 msgstr "E Timestamp Reply\n"
9934
9935 #. type: tbl table
9936 #: build/C/man7/icmp.7:145
9937 #, no-wrap
9938 msgid "F Info Request\n"
9939 msgstr "F Info Request\n"
9940
9941 #. type: tbl table
9942 #: build/C/man7/icmp.7:146
9943 #, no-wrap
9944 msgid "G Info Reply\n"
9945 msgstr "G Info Reply\n"
9946
9947 #. type: tbl table
9948 #: build/C/man7/icmp.7:147
9949 #, no-wrap
9950 msgid "H Address Mask Request\n"
9951 msgstr "H Address Mask Request\n"
9952
9953 #. type: tbl table
9954 #: build/C/man7/icmp.7:148
9955 #, no-wrap
9956 msgid "I Address Mask Reply\n"
9957 msgstr "I Address Mask Reply\n"
9958
9959 #. type: Plain text
9960 #: build/C/man7/icmp.7:154
9961 msgid ""
9962 "The bits marked with an asterisk are rate limited by default (see the "
9963 "default mask above)."
9964 msgstr ""
9965 "アスタリスク印 (*) が付いたビットは、 デフォルトでレート制限が有効になってい"
9966 "る (上記のマスクのデフォルトも参照)。"
9967
9968 #. type: TP
9969 #: build/C/man7/icmp.7:154
9970 #, no-wrap
9971 msgid "I<icmp_timeexceed_rate> (Linux 2.2 to 2.4.9)"
9972 msgstr "I<icmp_timeexceed_rate> (Linux 2.2 から 2.4.9 まで)"
9973
9974 #. type: Plain text
9975 #: build/C/man7/icmp.7:161
9976 msgid ""
9977 "Maximum rate for sending B<ICMP_TIME_EXCEEDED> packets.  These packets are "
9978 "sent to prevent loops when a packet has crossed too many hops."
9979 msgstr ""
9980 "B<ICMP_TIME_EXCEEDED> パケットの最大送信レート。 これらのパケットはパケットが"
9981 "あまりに多くの hop を通過した場合に、 ループを防ぐために送られる。"
9982
9983 #. type: Plain text
9984 #: build/C/man7/icmp.7:165
9985 msgid "Support for the B<ICMP_ADDRESS> request was removed in 2.2."
9986 msgstr "B<ICMP_ADDRESS> 要求に対するサポートは 2.2 で削除された。"
9987
9988 #. type: Plain text
9989 #: build/C/man7/icmp.7:169
9990 msgid "Support for B<ICMP_SOURCE_QUENCH> was removed in Linux 2.2."
9991 msgstr "B<ICMP_SOURCE_QUENCH> は Linux 2.2 で削除された。"
9992
9993 #.  not really true ATM
9994 #.  .PP
9995 #.  Linux ICMP should be compliant to RFC 1122.
9996 #. type: Plain text
9997 #: build/C/man7/icmp.7:177
9998 msgid ""
9999 "As many other implementations don't support B<IPPROTO_ICMP> raw sockets, "
10000 "this feature should not be relied on in portable programs."
10001 msgstr ""
10002 "他の多くの実装では、 B<IPPROTO_ICMP> raw ソケットがサポートされていない。 こ"
10003 "の機能は移植性が必要なプログラムでは用いるべきでない。"
10004
10005 #. type: Plain text
10006 #: build/C/man7/icmp.7:182
10007 msgid ""
10008 "B<ICMP_REDIRECT> packets are not sent when Linux is not acting as a router.  "
10009 "They are also accepted only from the old gateway defined in the routing "
10010 "table and the redirect routes are expired after some time."
10011 msgstr ""
10012 "Linux がルーターとして動作していないときには、 B<ICMP_REDIRECT> パケットは送"
10013 "信されない。 またこれらが受け取られるのも、発信元がルーティングテーブルに定義"
10014 "されている 古いゲートウェイで、リダイレクト・ルート (redirect route) が 適当"
10015 "な時間の後に期限切れになっている場合に限られる。"
10016
10017 #. type: Plain text
10018 #: build/C/man7/icmp.7:186
10019 msgid ""
10020 "The 64-bit timestamp returned by B<ICMP_TIMESTAMP> is in milliseconds since "
10021 "the Epoch, 1970-01-01 00:00:00 +0000 (UTC)."
10022 msgstr ""
10023 "B<ICMP_TIMESTAMP> から返される 64 ビットのタイムスタンプは、 紀元 (Epoch) で"
10024 "ある 1970-01-01 00:00:00 +0000 (UTC)  からの経過時間をミリ秒単位で表したもの"
10025 "である。"
10026
10027 #. type: Plain text
10028 #: build/C/man7/icmp.7:191
10029 msgid ""
10030 "Linux ICMP internally uses a raw socket to send ICMPs.  This raw socket may "
10031 "appear in B<netstat>(8)  output with a zero inode."
10032 msgstr ""
10033 "Linux ICMP は ICMP を送るために内部で raw ソケットを用いる。 raw ソケットは "
10034 "B<netstat>(8)  の出力に 0 inode として出力される。"
10035
10036 #. type: Plain text
10037 #: build/C/man7/icmp.7:193
10038 msgid "B<ip>(7)"
10039 msgstr "B<ip>(7)"
10040
10041 #. type: Plain text
10042 #: build/C/man7/icmp.7:195
10043 msgid "RFC\\ 792 for a description of the ICMP protocol."
10044 msgstr "B<RFC\\ 792>: ICMP プロトコルの説明"
10045
10046 #. type: TH
10047 #: build/C/man3/inet.3:42
10048 #, no-wrap
10049 msgid "INET"
10050 msgstr "INET"
10051
10052 #. type: Plain text
10053 #: build/C/man3/inet.3:46
10054 msgid ""
10055 "inet_aton, inet_addr, inet_network, inet_ntoa, inet_makeaddr, inet_lnaof, "
10056 "inet_netof - Internet address manipulation routines"
10057 msgstr ""
10058 "inet_aton, inet_addr, inet_network, inet_ntoa, inet_makeaddr, inet_lnaof, "
10059 "inet_netof - インターネットアドレス操作ルーチン"
10060
10061 #. type: Plain text
10062 #: build/C/man3/inet.3:51
10063 #, no-wrap
10064 msgid ""
10065 "B<#include E<lt>sys/socket.hE<gt>>\n"
10066 "B<#include E<lt>netinet/in.hE<gt>>\n"
10067 "B<#include E<lt>arpa/inet.hE<gt>>\n"
10068 msgstr ""
10069 "B<#include E<lt>sys/socket.hE<gt>>\n"
10070 "B<#include E<lt>netinet/in.hE<gt>>\n"
10071 "B<#include E<lt>arpa/inet.hE<gt>>\n"
10072
10073 #. type: Plain text
10074 #: build/C/man3/inet.3:53
10075 #, no-wrap
10076 msgid "B<int inet_aton(const char *>I<cp>B<, struct in_addr *>I<inp>B<);>\n"
10077 msgstr "B<int inet_aton(const char *>I<cp>B<, struct in_addr *>I<inp>B<);>\n"
10078
10079 #. type: Plain text
10080 #: build/C/man3/inet.3:55
10081 #, no-wrap
10082 msgid "B<in_addr_t inet_addr(const char *>I<cp>B<);>\n"
10083 msgstr "B<in_addr_t inet_addr(const char *>I<cp>B<);>\n"
10084
10085 #. type: Plain text
10086 #: build/C/man3/inet.3:57
10087 #, no-wrap
10088 msgid "B<in_addr_t inet_network(const char *>I<cp>B<);>\n"
10089 msgstr "B<in_addr_t inet_network(const char *>I<cp>B<);>\n"
10090
10091 #. type: Plain text
10092 #: build/C/man3/inet.3:59
10093 #, no-wrap
10094 msgid "B<char *inet_ntoa(struct in_addr >I<in>B<);>\n"
10095 msgstr "B<char *inet_ntoa(struct in_addr >I<in>B<);>\n"
10096
10097 #. type: Plain text
10098 #: build/C/man3/inet.3:61
10099 #, no-wrap
10100 msgid "B<struct in_addr inet_makeaddr(in_addr_t >I<net>B<, in_addr_t >I<host>B<);>\n"
10101 msgstr "B<struct in_addr inet_makeaddr(in_addr_t >I<net>B<, in_addr_t >I<host>B<);>\n"
10102
10103 #. type: Plain text
10104 #: build/C/man3/inet.3:63
10105 #, no-wrap
10106 msgid "B<in_addr_t inet_lnaof(struct in_addr >I<in>B<);>\n"
10107 msgstr "B<in_addr_t inet_lnaof(struct in_addr >I<in>B<);>\n"
10108
10109 #. type: Plain text
10110 #: build/C/man3/inet.3:65
10111 #, no-wrap
10112 msgid "B<in_addr_t inet_netof(struct in_addr >I<in>B<);>\n"
10113 msgstr "B<in_addr_t inet_netof(struct in_addr >I<in>B<);>\n"
10114
10115 #. type: Plain text
10116 #: build/C/man3/inet.3:75
10117 msgid "B<inet_aton>(), B<inet_ntoa>(): _BSD_SOURCE || _SVID_SOURCE"
10118 msgstr "B<inet_aton>(), B<inet_ntoa>(): _BSD_SOURCE || _SVID_SOURCE"
10119
10120 #. type: Plain text
10121 #: build/C/man3/inet.3:85
10122 msgid ""
10123 "B<inet_aton>()  converts the Internet host address I<cp> from the IPv4 "
10124 "numbers-and-dots notation into binary form (in network byte order)  and "
10125 "stores it in the structure that I<inp> points to.  B<inet_aton>()  returns "
10126 "nonzero if the address is valid, zero if not.  The address supplied in I<cp> "
10127 "can have one of the following forms:"
10128 msgstr ""
10129 "B<inet_aton>()  は、インターネットホストのアドレス I<cp> を、 IPv4 の数値と"
10130 "ドットによる表記から (ネットワークバイトオーダの) バイナリ値へ 変換し、変換結"
10131 "果を I<inp> が指している構造体に格納する。 アドレスが有効な場合 0 以外を返"
10132 "し、そうでない場合は 0 を返す。 I<cp> で渡すアドレスとして、以下の形式を用い"
10133 "ることができる。"
10134
10135 #. type: TP
10136 #: build/C/man3/inet.3:85
10137 #, no-wrap
10138 msgid "I<a.b.c.d>"
10139 msgstr "I<a.b.c.d>"
10140
10141 #. type: Plain text
10142 #: build/C/man3/inet.3:89
10143 msgid ""
10144 "Each of the four numeric parts specifies a byte of the address; the bytes "
10145 "are assigned in left-to-right order to produce the binary address."
10146 msgstr ""
10147 "4 つの数字のそれぞれはアドレスの各バイトを示す。 これらのバイトは左から右の順"
10148 "序でバイナリアドレスに割り当てられる。"
10149
10150 #. type: TP
10151 #: build/C/man3/inet.3:89
10152 #, no-wrap
10153 msgid "I<a.b.c>"
10154 msgstr "I<a.b.c>"
10155
10156 #. type: Plain text
10157 #: build/C/man3/inet.3:102
10158 msgid ""
10159 "Parts I<a> and I<b> specify the first two bytes of the binary address.  Part "
10160 "I<c> is interpreted as a 16-bit value that defines the rightmost two bytes "
10161 "of the binary address.  This notation is suitable for specifying (outmoded) "
10162 "Class B network addresses."
10163 msgstr ""
10164 "I<a> と I<b> はバイナリアドレスの最初の 2 バイトを示す。 I<c> は 16 ビット値"
10165 "と解釈され、バイナリアドレスの右側の 2 バイトを表す。 この表記は、(過去のもの"
10166 "となった) クラス B ネットワークアドレスを 指定するのに適している。"
10167
10168 #. type: TP
10169 #: build/C/man3/inet.3:102
10170 #, no-wrap
10171 msgid "I<a.b>"
10172 msgstr "I<a.b>"
10173
10174 #. type: Plain text
10175 #: build/C/man3/inet.3:113
10176 msgid ""
10177 "Part I<a> specifies the first byte of the binary address.  Part I<b> is "
10178 "interpreted as a 24-bit value that defines the rightmost three bytes of the "
10179 "binary address.  This notation is suitable for specifying (outmoded) Class A "
10180 "network addresses."
10181 msgstr ""
10182 "I<a> はバイナリアドレスの最初のバイトを示す。 I<b> は 24 ビット値と解釈され、"
10183 "バイナリアドレスの右側の 3 バイトを表す。 この表記は、(過去のものとなった) ク"
10184 "ラス A ネットワークアドレスを 指定するのに適している。"
10185
10186 #. type: TP
10187 #: build/C/man3/inet.3:113
10188 #, no-wrap
10189 msgid "I<a>"
10190 msgstr "I<a>"
10191
10192 #. type: Plain text
10193 #: build/C/man3/inet.3:119
10194 msgid ""
10195 "The value I<a> is interpreted as a 32-bit value that is stored directly into "
10196 "the binary address without any byte rearrangement."
10197 msgstr ""
10198 "値 I<a> は 32 ビット値と解釈され、バイトの再配置は行われず、 そのままバイナリ"
10199 "アドレスとして格納される。"
10200
10201 #. type: Plain text
10202 #: build/C/man3/inet.3:132
10203 msgid ""
10204 "In all of the above forms, components of the dotted address can be specified "
10205 "in decimal, octal (with a leading I<0>), or hexadecimal, with a leading "
10206 "I<0X>).  Addresses in any of these forms are collectively termed I<IPV4 "
10207 "numbers-and-dots notation>.  The form that uses exactly four decimal numbers "
10208 "is referred to as I<IPv4 dotted-decimal notation> (or sometimes: I<IPv4 "
10209 "dotted-quad notation>)."
10210 msgstr ""
10211 "上記の全ての形式で、ドット区切りのアドレスの各要素は、10 進数、 8 進数 (先頭"
10212 "に I<0> を付ける)、 16 進数 (先頭に I<0X> を付ける) で指定できる。 これらの形"
10213 "式のアドレスをまとめて I<IPv4 の数値とドットによる表記 (IPv4 numbers-and-"
10214 "dots notation)> と呼ぶ。 また、10 進数 4 つだけを使った形式を I<IPv4 のドット"
10215 "区切りの 10 進数表記 (IPv4 dotted-decimal notation)> と呼ぶ (I<IPv4 のドット"
10216 "区切り 4 分割表記 (IPv4 dotted-decimal notation)> と呼ぶこともある)。"
10217
10218 #. type: Plain text
10219 #: build/C/man3/inet.3:140
10220 msgid ""
10221 "B<inet_aton>()  returns 1 if the supplied string was successfully "
10222 "interpreted, or 0 if the string is invalid (B<errno> is I<not> set on error)."
10223 msgstr ""
10224 "B<inet_aton>() は渡された文字列が正常に解釈できた場合 1 を返し、 文字列が不正"
10225 "な場合 0 を返す (エラーの場合に B<errno> はセットI<されない>)。"
10226
10227 #. type: Plain text
10228 #: build/C/man3/inet.3:157
10229 msgid ""
10230 "The B<inet_addr>()  function converts the Internet host address I<cp> from "
10231 "IPv4 numbers-and-dots notation into binary data in network byte order.  If "
10232 "the input is invalid, B<INADDR_NONE> (usually -1) is returned.  Use of this "
10233 "function is problematic because -1 is a valid address (255.255.255.255).  "
10234 "Avoid its use in favor of B<inet_aton>(), B<inet_pton>(3), or "
10235 "B<getaddrinfo>(3), which provide a cleaner way to indicate error return."
10236 msgstr ""
10237 "B<inet_addr>()  関数は、インターネットホストのアドレス I<cp> を、 IPv4 の数値"
10238 "とドットによる表記からネットワークバイトオーダでの バイナリ値へ変換して返"
10239 "す。 入力が不正な場合、 B<INADDR_NONE> (普通は -1) を返す。 -1 は有効なアドレ"
10240 "ス (255.255.255.255) なので、この関数を使うと 問題になるかもしれない。 この関"
10241 "数を使うのは避け、代わりに B<inet_aton>(), B<inet_pton>(3), "
10242 "B<getaddrinfo>(3)  を使うのがよい。 これらの関数の方が、エラーの通知がよりき"
10243 "れいな方法で行われる。"
10244
10245 #. type: Plain text
10246 #: build/C/man3/inet.3:167
10247 msgid ""
10248 "The B<inet_network>()  function converts I<cp>, a string in IPv4 numbers-and-"
10249 "dots notation, into a number in host byte order suitable for use as an "
10250 "Internet network address.  On success, the converted address is returned.  "
10251 "If the input is invalid, -1 is returned."
10252 msgstr ""
10253 "B<inet_network>()  関数は、 IPv4 の数値とドットによる表記の文字列 I<cp> を、 "
10254 "インターネットアドレスとしての使用に適した ホストバイトオーダの数値に変換す"
10255 "る。 成功すると、変換されたアドレスを返す。 入力が不正な場合は -1 を返す。"
10256
10257 #. type: Plain text
10258 #: build/C/man3/inet.3:175
10259 msgid ""
10260 "The B<inet_ntoa>()  function converts the Internet host address I<in>, given "
10261 "in network byte order, to a string in IPv4 dotted-decimal notation.  The "
10262 "string is returned in a statically allocated buffer, which subsequent calls "
10263 "will overwrite."
10264 msgstr ""
10265 "B<inet_ntoa>()  関数は、ネットワークバイトオーダで渡されたインターネットホス"
10266 "トアドレス I<in> を、 IPv4 のドット区切りの 10 進数表記の文字列に変換する。 "
10267 "文字列は静的に割当てられたバッファに格納されて返されるので、 この後でこの関数"
10268 "を再度呼び出すと文字列は上書きされる。"
10269
10270 #. type: Plain text
10271 #: build/C/man3/inet.3:181
10272 msgid ""
10273 "The B<inet_lnaof>()  function returns the local network address part of the "
10274 "Internet address I<in>.  The returned value is in host byte order."
10275 msgstr ""
10276 "B<inet_lnaof>()  関数は、インターネットアドレス I<in> のローカルネットワーク"
10277 "部分を返す。 この返り値はホストバイトオーダである。"
10278
10279 #. type: Plain text
10280 #: build/C/man3/inet.3:187
10281 msgid ""
10282 "The B<inet_netof>()  function returns the network number part of the "
10283 "Internet address I<in>.  The returned value is in host byte order."
10284 msgstr ""
10285 "B<inet_netof>()  関数は、インターネットアドレス I<in> のネットワーク部分を返"
10286 "す。 この返り値はホストバイトオーダである。"
10287
10288 #. type: Plain text
10289 #: build/C/man3/inet.3:198
10290 msgid ""
10291 "The B<inet_makeaddr>()  function is the converse of B<inet_netof>()  and "
10292 "B<inet_lnaof>().  It returns an Internet host address in network byte order, "
10293 "created by combining the network number I<net> with the local address "
10294 "I<host>, both in host byte order."
10295 msgstr ""
10296 "B<inet_makeaddr>()  関数は B<inet_netof>()  と B<inet_lnaof>()  の逆の機能を"
10297 "持つ。 ネットワーク番号 I<net> と、ローカルアドレス I<host> を 組み合わせて生"
10298 "成した、インターネットホストアドレスを ネットワークバイトオーダで返す。 "
10299 "I<host>, I<net> はともにホストバイトオーダである。"
10300
10301 #. type: Plain text
10302 #: build/C/man3/inet.3:208
10303 msgid ""
10304 "The structure I<in_addr> as used in B<inet_ntoa>(), B<inet_makeaddr>(), "
10305 "B<inet_lnaof>()  and B<inet_netof>()  is defined in I<E<lt>netinet/in."
10306 "hE<gt>> as:"
10307 msgstr ""
10308 "B<inet_ntoa>(), B<inet_makeaddr>(), B<inet_lnaof>(), B<inet_netof>()  で使用"
10309 "する構造体 I<in_addr> は I<E<lt>netinet/in.hE<gt>> で次のように定義されてい"
10310 "る:"
10311
10312 #. type: Plain text
10313 #: build/C/man3/inet.3:212
10314 #, no-wrap
10315 msgid "typedef uint32_t in_addr_t;\n"
10316 msgstr "typedef uint32_t in_addr_t;\n"
10317
10318 #. type: Plain text
10319 #: build/C/man3/inet.3:216
10320 #, no-wrap
10321 msgid ""
10322 "struct in_addr {\n"
10323 "    in_addr_t s_addr;\n"
10324 "};\n"
10325 msgstr ""
10326 "struct in_addr {\n"
10327 "    in_addr_t s_addr;\n"
10328 "};\n"
10329
10330 #. type: Plain text
10331 #: build/C/man3/inet.3:226
10332 msgid ""
10333 "4.3BSD.  B<inet_addr>()  and B<inet_ntoa>()  are specified in POSIX.1-2001.  "
10334 "B<inet_aton>()  is not specified in POSIX.1-2001, but is available on most "
10335 "systems."
10336 msgstr ""
10337 "4.3BSD.  B<inet_addr>(), B<inet_ntoa>()  は POSIX.1-2001 で規定されている。 "
10338 "B<inet_aton>()  は POSIX.1-2001 で規定されていないが、ほとんどのシステムで利"
10339 "用可能である。"
10340
10341 #. type: Plain text
10342 #: build/C/man3/inet.3:230
10343 msgid ""
10344 "On the i386 the host byte order is Least Significant Byte first (little "
10345 "endian), whereas the network byte order, as used on the Internet, is Most "
10346 "Significant Byte first (big endian)."
10347 msgstr ""
10348 "i386 ではホストバイトオーダは Least Significant Byte (LSB) first (リトルエン"
10349 "ディアン) だが、 インターネットで使われるネットワークバイトオーダは Most "
10350 "Significant Byte (MSB) first (ビッグエンディアン)  である点に注意すること。"
10351
10352 #. type: Plain text
10353 #: build/C/man3/inet.3:239
10354 msgid ""
10355 "B<inet_lnaof>(), B<inet_netof>(), and B<inet_makeaddr>()  are legacy "
10356 "functions that assume they are dealing with I<classful network addresses>.  "
10357 "Classful networking divides IPv4 network addresses into host and network "
10358 "components at byte boundaries, as follows:"
10359 msgstr ""
10360 "B<inet_lnaof>(), B<inet_netof>(), B<inet_makeaddr>()  は過去の名残であり、渡"
10361 "されたアドレスが I<クラスフル・ネットワークアドレス (classful network "
10362 "addresses)> であると仮定して処理を行う。 クラスフル・ネットワークアドレスで"
10363 "は、以下にあるように、 IPv4 ネットワークアドレスをバイト境界でネットワーク部"
10364 "とホスト部に分割する。"
10365
10366 #. type: TP
10367 #: build/C/man3/inet.3:239
10368 #, no-wrap
10369 msgid "Class A"
10370 msgstr "Class A"
10371
10372 #. type: Plain text
10373 #: build/C/man3/inet.3:245
10374 msgid ""
10375 "This address type is indicated by the value 0 in the most significant bit of "
10376 "the (network byte ordered) address.  The network address is contained in the "
10377 "most significant byte, and the host address occupies the remaining three "
10378 "bytes."
10379 msgstr ""
10380 "(ネットワークバイトオーダの) アドレスの最上位ビットが 0 の場合、 このアドレス"
10381 "種別となる。このアドレス種別では、 最上位バイトがネットワークアドレスを表"
10382 "し、 残りの 3 バイトがホストアドレスを表す。"
10383
10384 #. type: TP
10385 #: build/C/man3/inet.3:245
10386 #, no-wrap
10387 msgid "Class B"
10388 msgstr "Class B"
10389
10390 #. type: Plain text
10391 #: build/C/man3/inet.3:251
10392 msgid ""
10393 "This address type is indicated by the binary value 10 in the most "
10394 "significant two bits of the address.  The network address is contained in "
10395 "the two most significant bytes, and the host address occupies the remaining "
10396 "two bytes."
10397 msgstr ""
10398 "(ネットワークバイトオーダの) アドレスの上位側 2 ビットがバイナリ値で 10 の場"
10399 "合、このアドレス種別となる。このアドレス種別では、 上位 2 バイトがネットワー"
10400 "クアドレスを表し、 残りの 2 バイトがホストアドレスを表す。"
10401
10402 #. type: TP
10403 #: build/C/man3/inet.3:251
10404 #, no-wrap
10405 msgid "Class C"
10406 msgstr "Class C"
10407
10408 #. type: Plain text
10409 #: build/C/man3/inet.3:257
10410 msgid ""
10411 "This address type is indicated by the binary value 110 in the most "
10412 "significant three bits of the address.  The network address is contained in "
10413 "the three most significant bytes, and the host address occupies the "
10414 "remaining byte."
10415 msgstr ""
10416 "(ネットワークバイトオーダの) アドレスの上位側 3 ビットがバイナリ値で 110 の場"
10417 "合、このアドレス種別となる。このアドレス種別では、 上位 3 バイトがネットワー"
10418 "クアドレスを表し、 残りの 1 バイトがホストアドレスを表す。"
10419
10420 #. type: Plain text
10421 #: build/C/man3/inet.3:262
10422 msgid ""
10423 "Classful network addresses are now obsolete, having been superseded by "
10424 "Classless Inter-Domain Routing (CIDR), which divides addresses into network "
10425 "and host components at arbitrary bit (rather than byte) boundaries."
10426 msgstr ""
10427 "クラスフル・ネットワークアドレスは現在では廃止され、 クラスレス・ドメイン間"
10428 "ルーチン (CIDR) に取って代わられた。 CIDR では、アドレスを任意のビット境界 "
10429 "(バイト境界ではない) で ネットワーク部とホスト部に分割する。"
10430
10431 #. type: Plain text
10432 #: build/C/man3/inet.3:269
10433 msgid ""
10434 "An example of the use of B<inet_aton>()  and B<inet_ntoa>()  is shown "
10435 "below.  Here are some example runs:"
10436 msgstr ""
10437 "以下は B<inet_aton>()  と B<inet_ntoa>()  の使用例である。このように実行す"
10438 "る。"
10439
10440 #. type: Plain text
10441 #: build/C/man3/inet.3:276
10442 #, no-wrap
10443 msgid ""
10444 "$B< ./a.out 226.000.000.037>      # Last byte is in octal\n"
10445 "226.0.0.31\n"
10446 "$B< ./a.out 0x7f.1         >      # First byte is in hex\n"
10447 "127.0.0.1\n"
10448 msgstr ""
10449 "$B< ./a.out 226.000.000.037>      # Last byte is in octal\n"
10450 "226.0.0.31\n"
10451 "$B< ./a.out 0x7f.1         >      # First byte is in hex\n"
10452 "127.0.0.1\n"
10453
10454 #. type: Plain text
10455 #: build/C/man3/inet.3:285
10456 #, no-wrap
10457 msgid ""
10458 "#define _BSD_SOURCE\n"
10459 "#include E<lt>arpa/inet.hE<gt>\n"
10460 "#include E<lt>stdio.hE<gt>\n"
10461 "#include E<lt>stdlib.hE<gt>\n"
10462 msgstr ""
10463 "#define _BSD_SOURCE\n"
10464 "#include E<lt>arpa/inet.hE<gt>\n"
10465 "#include E<lt>stdio.hE<gt>\n"
10466 "#include E<lt>stdlib.hE<gt>\n"
10467
10468 #. type: Plain text
10469 #: build/C/man3/inet.3:290
10470 #, no-wrap
10471 msgid ""
10472 "int\n"
10473 "main(int argc, char *argv[])\n"
10474 "{\n"
10475 "    struct in_addr addr;\n"
10476 msgstr ""
10477 "int\n"
10478 "main(int argc, char *argv[])\n"
10479 "{\n"
10480 "    struct in_addr addr;\n"
10481
10482 #. type: Plain text
10483 #: build/C/man3/inet.3:295
10484 #, no-wrap
10485 msgid ""
10486 "    if (argc != 2) {\n"
10487 "        fprintf(stderr, \"%s E<lt>dotted-addressE<gt>\\en\", argv[0]);\n"
10488 "        exit(EXIT_FAILURE);\n"
10489 "    }\n"
10490 msgstr ""
10491 "    if (argc != 2) {\n"
10492 "        fprintf(stderr, \"%s E<lt>dotted-addressE<gt>\\en\", argv[0]);\n"
10493 "        exit(EXIT_FAILURE);\n"
10494 "    }\n"
10495
10496 #. type: Plain text
10497 #: build/C/man3/inet.3:300
10498 #, no-wrap
10499 msgid ""
10500 "    if (inet_aton(argv[1], &addr) == 0) {\n"
10501 "        fprintf(stderr, \"Invalid address\\en\");\n"
10502 "        exit(EXIT_FAILURE);\n"
10503 "    }\n"
10504 msgstr ""
10505 "    if (inet_aton(argv[1], &addr) == 0) {\n"
10506 "        fprintf(stderr, \"Invalid address\\en\");\n"
10507 "        exit(EXIT_FAILURE);\n"
10508 "    }\n"
10509
10510 #. type: Plain text
10511 #: build/C/man3/inet.3:304
10512 #, no-wrap
10513 msgid ""
10514 "    printf(\"%s\\en\", inet_ntoa(addr));\n"
10515 "    exit(EXIT_SUCCESS);\n"
10516 "}\n"
10517 msgstr ""
10518 "    printf(\"%s\\en\", inet_ntoa(addr));\n"
10519 "    exit(EXIT_SUCCESS);\n"
10520 "}\n"
10521
10522 #. type: Plain text
10523 #: build/C/man3/inet.3:316
10524 msgid ""
10525 "B<byteorder>(3), B<getaddrinfo>(3), B<gethostbyname>(3), B<getnameinfo>(3), "
10526 "B<getnetent>(3), B<inet_net_pton>(3), B<inet_ntop>(3), B<inet_pton>(3), "
10527 "B<hosts>(5), B<networks>(5)"
10528 msgstr ""
10529 "B<byteorder>(3), B<getaddrinfo>(3), B<gethostbyname>(3), B<getnameinfo>(3), "
10530 "B<getnetent>(3), B<inet_net_pton>(3), B<inet_ntop>(3), B<inet_pton>(3), "
10531 "B<hosts>(5), B<networks>(5)"
10532
10533 #. type: TH
10534 #: build/C/man3/inet_net_pton.3:26
10535 #, no-wrap
10536 msgid "INET_NET_PTON"
10537 msgstr "INET_NET_PTON"
10538
10539 #. type: Plain text
10540 #: build/C/man3/inet_net_pton.3:29
10541 msgid "inet_net_pton, inet_net_ntop - Internet network number conversion"
10542 msgstr ""
10543
10544 #. type: Plain text
10545 #: build/C/man3/inet_net_pton.3:35
10546 #, no-wrap
10547 msgid ""
10548 "B<int inet_net_pton(int >I<af>B<, const char *>I<pres>B<,>\n"
10549 "B<                  void *>I<netp>B<, size_t >I<nsize>B<);>\n"
10550 msgstr ""
10551 "B<int inet_net_pton(int >I<af>B<, const char *>I<pres>B<,>\n"
10552 "B<                  void *>I<netp>B<, size_t >I<nsize>B<);>\n"
10553
10554 #. type: Plain text
10555 #: build/C/man3/inet_net_pton.3:38
10556 #, no-wrap
10557 msgid ""
10558 "B<char *inet_net_ntop(int >I<af>B<, const void *>I<netp>B<, int >I<bits>B<,>\n"
10559 "B<                    char *>I<pres>B<, size_t >I<psize>B<);>\n"
10560 msgstr ""
10561 "B<char *inet_net_ntop(int >I<af>B<, const void *>I<netp>B<, int >I<bits>B<,>\n"
10562 "B<                    char *>I<pres>B<, size_t >I<psize>B<);>\n"
10563
10564 #. type: Plain text
10565 #: build/C/man3/inet_net_pton.3:41 build/C/man3/resolver.3:85
10566 msgid "Link with I<-lresolv>."
10567 msgstr "I<-lresolv> でリンクする。"
10568
10569 #. type: Plain text
10570 #: build/C/man3/inet_net_pton.3:49
10571 msgid "B<inet_net_pton>(), B<inet_net_ntop>():"
10572 msgstr "B<inet_net_pton>(), B<inet_net_ntop>():"
10573
10574 #. type: TP
10575 #: build/C/man3/inet_net_pton.3:52
10576 #, no-wrap
10577 msgid "Since glibc 2.20:"
10578 msgstr "glibc 2.20 以降:"
10579
10580 #. type: Plain text
10581 #: build/C/man3/inet_net_pton.3:55
10582 msgid "_DEFAULT_SOURCE"
10583 msgstr "_DEFAULT_SOURCE"
10584
10585 #. type: TP
10586 #: build/C/man3/inet_net_pton.3:55
10587 #, no-wrap
10588 msgid "Before glibc 2.20:"
10589 msgstr "glibc 2.20 より前:"
10590
10591 #. type: Plain text
10592 #: build/C/man3/inet_net_pton.3:64
10593 msgid ""
10594 "These functions convert network numbers between presentation (i.e., "
10595 "printable) format and network (i.e., binary) format."
10596 msgstr ""
10597
10598 #. type: Plain text
10599 #: build/C/man3/inet_net_pton.3:70
10600 msgid ""
10601 "For both functions, I<af> specifies the address family for the conversion; "
10602 "the only supported value is B<AF_INET>."
10603 msgstr ""
10604
10605 #. type: SS
10606 #: build/C/man3/inet_net_pton.3:70
10607 #, no-wrap
10608 msgid "inet_net_pton()"
10609 msgstr "inet_net_pton()"
10610
10611 #. type: Plain text
10612 #: build/C/man3/inet_net_pton.3:89
10613 msgid ""
10614 "The B<inet_net_pton>()  function converts I<pres>, a null-terminated string "
10615 "containing an Internet network number in presentation format to network "
10616 "format.  The result of the conversion, which is in network byte order, is "
10617 "placed in the buffer pointed to by I<net>.  (The I<netp> argument typically "
10618 "points to an I<in_addr> structure.)  The I<nsize> argument specifies the "
10619 "number of bytes available in I<netp>."
10620 msgstr ""
10621
10622 #. type: Plain text
10623 #: build/C/man3/inet_net_pton.3:97
10624 msgid ""
10625 "On success, B<inet_net_pton>()  returns the number of bits in the network "
10626 "number field of the result placed in I<netp>.  For a discussion of the input "
10627 "presentation format and the return value, see NOTES."
10628 msgstr ""
10629
10630 #. type: Plain text
10631 #: build/C/man3/inet_net_pton.3:107
10632 msgid ""
10633 "I<Note>: the buffer pointed to by I<netp> should be zeroed out before "
10634 "calling B<inet_net_pton>(), since the call writes only as many bytes as are "
10635 "required for the network number (or as are explicitly specified by I<pres>), "
10636 "which may be less than the number of bytes in a complete network address."
10637 msgstr ""
10638
10639 #. type: SS
10640 #: build/C/man3/inet_net_pton.3:107
10641 #, no-wrap
10642 msgid "inet_net_ntop()"
10643 msgstr "inet_net_ntop()"
10644
10645 #. type: Plain text
10646 #: build/C/man3/inet_net_pton.3:119
10647 msgid ""
10648 "The B<inet_net_ntop>()  function converts the network number in the buffer "
10649 "pointed to by I<netp> to presentation format; I<*netp> is interpreted as a "
10650 "value in network byte order.  The I<bits> argument specifies the number of "
10651 "bits in the network number in I<*netp>."
10652 msgstr ""
10653
10654 #. type: Plain text
10655 #: build/C/man3/inet_net_pton.3:130
10656 msgid ""
10657 "The null-terminated presentation-format string is placed in the buffer "
10658 "pointed to by I<pres>.  The I<psize> argument specifies the number of bytes "
10659 "available in I<pres>.  The presentation string is in CIDR format: a dotted-"
10660 "decimal number representing the network address, followed by a slash, and "
10661 "the size of the network number in bits."
10662 msgstr ""
10663
10664 #. type: Plain text
10665 #: build/C/man3/inet_net_pton.3:137
10666 msgid ""
10667 "On success, B<inet_net_pton>()  returns the number of bits in the network "
10668 "number.  On error, it returns -1, and I<errno> is set to indicate the cause "
10669 "of the error."
10670 msgstr ""
10671
10672 #. type: Plain text
10673 #: build/C/man3/inet_net_pton.3:145
10674 msgid ""
10675 "On success, B<inet_net_ntop>()  returns I<pres>.  On error, it returns NULL, "
10676 "and I<errno> is set to indicate the cause of the error."
10677 msgstr ""
10678
10679 #. type: TP
10680 #: build/C/man3/inet_net_pton.3:146 build/C/man3/inet_ntop.3:92
10681 #, no-wrap
10682 msgid "B<EAFNOSUPPORT>"
10683 msgstr "B<EAFNOSUPPORT>"
10684
10685 #. type: Plain text
10686 #: build/C/man3/inet_net_pton.3:151
10687 msgid "I<af> specified a value other than B<AF_INET>."
10688 msgstr ""
10689
10690 #. type: Plain text
10691 #: build/C/man3/inet_net_pton.3:154
10692 msgid "The size of the output buffer was insufficient."
10693 msgstr ""
10694
10695 #. type: Plain text
10696 #: build/C/man3/inet_net_pton.3:159
10697 msgid "(B<inet_net_pton>())  I<pres> was not in correct presentation format."
10698 msgstr ""
10699
10700 #. type: Plain text
10701 #: build/C/man3/inet_net_pton.3:165
10702 msgid ""
10703 "The B<inet_net_pton>()  and B<inet_net_ntop>()  functions are nonstandard, "
10704 "but widely available."
10705 msgstr ""
10706 "関数 B<inet_net_pton>() と B<inet_net_ntop>() は非標準だが、多くのシステムで"
10707 "利用可能である。"
10708
10709 #. type: SS
10710 #: build/C/man3/inet_net_pton.3:166
10711 #, no-wrap
10712 msgid "Input presentation format for inet_net_pton()"
10713 msgstr ""
10714
10715 #. type: Plain text
10716 #: build/C/man3/inet_net_pton.3:170
10717 msgid ""
10718 "The network number may be specified either as a hexadecimal value or in "
10719 "dotted-decimal notation."
10720 msgstr ""
10721
10722 #.  If the hexadecimal string is short, the remaining nibbles are zeroed.
10723 #. type: Plain text
10724 #: build/C/man3/inet_net_pton.3:175
10725 msgid ""
10726 "Hexadecimal values are indicated by an initial \"0x\" or \"0X\".  The "
10727 "hexadecimal digits populate the nibbles (half octets) of the network number "
10728 "from left to right in network byte order."
10729 msgstr ""
10730
10731 #. type: Plain text
10732 #: build/C/man3/inet_net_pton.3:179
10733 msgid ""
10734 "In dotted-decimal notation, up to four octets are specified, as decimal "
10735 "numbers separated by dots.  Thus, any of the following forms are accepted:"
10736 msgstr ""
10737
10738 #. type: Plain text
10739 #: build/C/man3/inet_net_pton.3:184
10740 #, no-wrap
10741 msgid ""
10742 "    a.b.c.d\n"
10743 "    a.b.c\n"
10744 "    a.b\n"
10745 "    a\n"
10746 msgstr ""
10747 "    a.b.c.d\n"
10748 "    a.b.c\n"
10749 "    a.b\n"
10750 "    a\n"
10751
10752 #.  Reading other man pages, some other implementations treat
10753 #.      'c' in a.b.c as a 16-bit number that populates right-most two bytes
10754 #.      'b' in a.b as a 24-bit number that populates right-most three bytes
10755 #. type: Plain text
10756 #: build/C/man3/inet_net_pton.3:192
10757 msgid ""
10758 "Each part is a number in the range 0 to 255 that populates one byte of the "
10759 "resulting network number, going from left to right, in network-byte (big "
10760 "endian) order.  Where a part is omitted, the resulting byte in the network "
10761 "number is zero."
10762 msgstr ""
10763
10764 #. type: Plain text
10765 #: build/C/man3/inet_net_pton.3:197
10766 msgid ""
10767 "For either hexadecimal or dotted-decimal format, the network number can "
10768 "optionally be followed by a slash and a number in the range 0 to 32, which "
10769 "specifies the size of the network number in bits."
10770 msgstr ""
10771
10772 #. type: SS
10773 #: build/C/man3/inet_net_pton.3:197
10774 #, no-wrap
10775 msgid "Return value of inet_net_pton()"
10776 msgstr ""
10777
10778 #. type: Plain text
10779 #: build/C/man3/inet_net_pton.3:207
10780 msgid ""
10781 "The return value of B<inet_net_pton>()  is the number of bits in the network "
10782 "number field.  If the input presentation string terminates with a slash and "
10783 "an explicit size value, then that size becomes the return value of "
10784 "B<inet_net_pton>().  Otherwise, the return value, I<bits>, is inferred as "
10785 "follows:"
10786 msgstr ""
10787
10788 #. type: Plain text
10789 #: build/C/man3/inet_net_pton.3:213
10790 msgid ""
10791 "If the most significant byte of the network number is greater than or equal "
10792 "to 240, then I<bits> is 32."
10793 msgstr ""
10794
10795 #. type: Plain text
10796 #: build/C/man3/inet_net_pton.3:220
10797 msgid ""
10798 "Otherwise, if the most significant byte of the network number is greater "
10799 "than or equal to 224, then I<bits> is 4."
10800 msgstr ""
10801
10802 #. type: Plain text
10803 #: build/C/man3/inet_net_pton.3:227
10804 msgid ""
10805 "Otherwise, if the most significant byte of the network number is greater "
10806 "than or equal to 192, then I<bits> is 24."
10807 msgstr ""
10808
10809 #. type: Plain text
10810 #: build/C/man3/inet_net_pton.3:234
10811 msgid ""
10812 "Otherwise, if the most significant byte of the network number is greater "
10813 "than or equal to 128, then I<bits> is 16."
10814 msgstr ""
10815
10816 #. type: Plain text
10817 #: build/C/man3/inet_net_pton.3:238
10818 msgid "Otherwise, I<bits> is 8."
10819 msgstr ""
10820
10821 #. type: Plain text
10822 #: build/C/man3/inet_net_pton.3:247
10823 msgid ""
10824 "If the resulting I<bits> value from the above steps is greater than or equal "
10825 "to 8, but the number of octets specified in the network number exceed "
10826 "I<bits/8>, then I<bits> is set to 8 times the number of octets actually "
10827 "specified."
10828 msgstr ""
10829
10830 #. type: Plain text
10831 #: build/C/man3/inet_net_pton.3:261
10832 msgid ""
10833 "The program below demonstrates the use of B<inet_net_pton>()  and "
10834 "B<inet_net_ntop>().  It uses B<inet_net_pton>()  to convert the presentation "
10835 "format network address provided in its first command-line argument to binary "
10836 "form, displays the return value from B<inet_net_pton>().  It then uses "
10837 "B<inet_net_ntop>()  to convert the binary form back to presentation format, "
10838 "and displays the resulting string."
10839 msgstr ""
10840
10841 #. type: Plain text
10842 #: build/C/man3/inet_net_pton.3:275
10843 msgid ""
10844 "In order to demonstrate that B<inet_net_pton>()  may not write to all bytes "
10845 "of its I<netp> argument, the program allows an optional second command-line "
10846 "argument, a number used to initialize the buffer before B<inet_net_pton>()  "
10847 "is called.  As its final line of output, the program displays all of the "
10848 "bytes of the buffer returned by B<inet_net_pton>()  allowing the user to see "
10849 "which bytes have not been touched by B<inet_net_pton>()."
10850 msgstr ""
10851
10852 #. type: Plain text
10853 #: build/C/man3/inet_net_pton.3:279
10854 msgid ""
10855 "An example run, showing that B<inet_net_pton>()  infers the number of bits "
10856 "in the network number:"
10857 msgstr ""
10858
10859 #. type: Plain text
10860 #: build/C/man3/inet_net_pton.3:286
10861 #, no-wrap
10862 msgid ""
10863 "$ B<./a.out 193.168>\n"
10864 "inet_net_pton() returned: 24\n"
10865 "inet_net_ntop() yielded:  193.168.0/24\n"
10866 "Raw address:              c1a80000\n"
10867 msgstr ""
10868 "$ B<./a.out 193.168>\n"
10869 "inet_net_pton() returned: 24\n"
10870 "inet_net_ntop() yielded:  193.168.0/24\n"
10871 "Raw address:              c1a80000\n"
10872
10873 #. type: Plain text
10874 #: build/C/man3/inet_net_pton.3:292
10875 msgid ""
10876 "Demonstrate that B<inet_net_pton>()  does not zero out unused bytes in its "
10877 "result buffer:"
10878 msgstr ""
10879
10880 #. type: Plain text
10881 #: build/C/man3/inet_net_pton.3:299
10882 #, no-wrap
10883 msgid ""
10884 "$ B<./a.out 193.168 0xffffffff>\n"
10885 "inet_net_pton() returned: 24\n"
10886 "inet_net_ntop() yielded:  193.168.0/24\n"
10887 "Raw address:              c1a800ff\n"
10888 msgstr ""
10889 "$ B<./a.out 193.168 0xffffffff>\n"
10890 "inet_net_pton() returned: 24\n"
10891 "inet_net_ntop() yielded:  193.168.0/24\n"
10892 "Raw address:              c1a800ff\n"
10893
10894 #. type: Plain text
10895 #: build/C/man3/inet_net_pton.3:307
10896 msgid ""
10897 "Demonstrate that B<inet_net_pton>()  will widen the inferred size of the "
10898 "network number, if the supplied number of bytes in the presentation string "
10899 "exceeds the inferred value:"
10900 msgstr ""
10901
10902 #. type: Plain text
10903 #: build/C/man3/inet_net_pton.3:314
10904 #, no-wrap
10905 msgid ""
10906 "$ B<./a.out 193.168.1.128>\n"
10907 "inet_net_pton() returned: 32\n"
10908 "inet_net_ntop() yielded:  193.168.1.128/32\n"
10909 "Raw address:              c1a80180\n"
10910 msgstr ""
10911 "$ B<./a.out 193.168.1.128>\n"
10912 "inet_net_pton() returned: 32\n"
10913 "inet_net_ntop() yielded:  193.168.1.128/32\n"
10914 "Raw address:              c1a80180\n"
10915
10916 #. type: Plain text
10917 #: build/C/man3/inet_net_pton.3:322
10918 msgid ""
10919 "Explicitly specifying the size of the network number overrides any inference "
10920 "about its size (but any extra bytes that are explicitly specified will still "
10921 "be used by B<inet_net_pton>(): to populate the result buffer):"
10922 msgstr ""
10923
10924 #. type: Plain text
10925 #: build/C/man3/inet_net_pton.3:329
10926 #, no-wrap
10927 msgid ""
10928 "$ B<./a.out 193.168.1.128/24>\n"
10929 "inet_net_pton() returned: 24\n"
10930 "inet_net_ntop() yielded:  193.168.1/24\n"
10931 "Raw address:              c1a80180\n"
10932 msgstr ""
10933 "$ B<./a.out 193.168.1.128/24>\n"
10934 "inet_net_pton() returned: 24\n"
10935 "inet_net_ntop() yielded:  193.168.1/24\n"
10936 "Raw address:              c1a80180\n"
10937
10938 #. type: Plain text
10939 #: build/C/man3/inet_net_pton.3:334
10940 #, no-wrap
10941 msgid "/* Link with \"-lresolv\" */\n"
10942 msgstr "/* \"-lresolv\" でリンクする */\n"
10943
10944 #. type: Plain text
10945 #: build/C/man3/inet_net_pton.3:338
10946 #, no-wrap
10947 msgid ""
10948 "#include E<lt>arpa/inet.hE<gt>\n"
10949 "#include E<lt>stdio.hE<gt>\n"
10950 "#include E<lt>stdlib.hE<gt>\n"
10951 msgstr ""
10952 "#include E<lt>arpa/inet.hE<gt>\n"
10953 "#include E<lt>stdio.hE<gt>\n"
10954 "#include E<lt>stdlib.hE<gt>\n"
10955
10956 #. type: Plain text
10957 #: build/C/man3/inet_net_pton.3:341
10958 #, no-wrap
10959 msgid ""
10960 "#define errExit(msg)    do { perror(msg); exit(EXIT_FAILURE); \\e\n"
10961 "                        } while (0)\n"
10962 msgstr ""
10963 "#define errExit(msg)    do { perror(msg); exit(EXIT_FAILURE); \\e\n"
10964 "                        } while (0)\n"
10965
10966 #. type: Plain text
10967 #: build/C/man3/inet_net_pton.3:348
10968 #, no-wrap
10969 msgid ""
10970 "int\n"
10971 "main(int argc, char *argv[])\n"
10972 "{\n"
10973 "    char buf[100];\n"
10974 "    struct in_addr addr;\n"
10975 "    int bits;\n"
10976 msgstr ""
10977 "int\n"
10978 "main(int argc, char *argv[])\n"
10979 "{\n"
10980 "    char buf[100];\n"
10981 "    struct in_addr addr;\n"
10982 "    int bits;\n"
10983
10984 #. type: Plain text
10985 #: build/C/man3/inet_net_pton.3:355
10986 #, no-wrap
10987 msgid ""
10988 "    if (argc E<lt> 2) {\n"
10989 "        fprintf(stderr,\n"
10990 "                \"Usage: %s presentation-form [addr-init-value]\\en\",\n"
10991 "                argv[0]);\n"
10992 "        exit(EXIT_FAILURE);\n"
10993 "    }\n"
10994 msgstr ""
10995 "    if (argc E<lt> 2) {\n"
10996 "        fprintf(stderr,\n"
10997 "                \"Usage: %s presentation-form [addr-init-value]\\en\",\n"
10998 "                argv[0]);\n"
10999 "        exit(EXIT_FAILURE);\n"
11000 "    }\n"
11001
11002 #. type: Plain text
11003 #: build/C/man3/inet_net_pton.3:361
11004 #, no-wrap
11005 msgid ""
11006 "    /* If argv[2] is supplied (a numeric value), use it to initialize\n"
11007 "       the output buffer given to inet_net_pton(), so that we can see\n"
11008 "       that inet_net_pton() initializes only those bytes needed for\n"
11009 "       the network number. If argv[2] is not supplied, then initialize\n"
11010 "       the buffer to zero (as is recommended practice). */\n"
11011 msgstr ""
11012
11013 #. type: Plain text
11014 #: build/C/man3/inet_net_pton.3:363
11015 #, no-wrap
11016 msgid "    addr.s_addr = (argc E<gt> 2) ? strtod(argv[2], NULL) : 0;\n"
11017 msgstr "    addr.s_addr = (argc E<gt> 2) ? strtod(argv[2], NULL) : 0;\n"
11018
11019 #. type: Plain text
11020 #: build/C/man3/inet_net_pton.3:365
11021 #, no-wrap
11022 msgid "    /* Convert presentation network number in argv[1] to binary */\n"
11023 msgstr ""
11024
11025 #. type: Plain text
11026 #: build/C/man3/inet_net_pton.3:369
11027 #, no-wrap
11028 msgid ""
11029 "    bits = inet_net_pton(AF_INET, argv[1], &addr, sizeof(addr));\n"
11030 "    if (bits == -1)\n"
11031 "        errExit(\"inet_net_ntop\");\n"
11032 msgstr ""
11033 "    bits = inet_net_pton(AF_INET, argv[1], &addr, sizeof(addr));\n"
11034 "    if (bits == -1)\n"
11035 "        errExit(\"inet_net_ntop\");\n"
11036
11037 #. type: Plain text
11038 #: build/C/man3/inet_net_pton.3:371
11039 #, no-wrap
11040 msgid "    printf(\"inet_net_pton() returned: %d\\en\", bits);\n"
11041 msgstr "    printf(\"inet_net_pton() returned: %d\\en\", bits);\n"
11042
11043 #. type: Plain text
11044 #: build/C/man3/inet_net_pton.3:374
11045 #, no-wrap
11046 msgid ""
11047 "    /* Convert binary format back to presentation, using \\(aqbits\\(aq\n"
11048 "       returned by inet_net_pton() */\n"
11049 msgstr ""
11050
11051 #. type: Plain text
11052 #: build/C/man3/inet_net_pton.3:377
11053 #, no-wrap
11054 msgid ""
11055 "    if (inet_net_ntop(AF_INET, &addr, bits, buf, sizeof(buf)) == NULL)\n"
11056 "        errExit(\"inet_net_ntop\");\n"
11057 msgstr ""
11058 "    if (inet_net_ntop(AF_INET, &addr, bits, buf, sizeof(buf)) == NULL)\n"
11059 "        errExit(\"inet_net_ntop\");\n"
11060
11061 #. type: Plain text
11062 #: build/C/man3/inet_net_pton.3:379
11063 #, no-wrap
11064 msgid "    printf(\"inet_net_ntop() yielded:  %s\\en\", buf);\n"
11065 msgstr "    printf(\"inet_net_ntop() yielded:  %s\\en\", buf);\n"
11066
11067 #. type: Plain text
11068 #: build/C/man3/inet_net_pton.3:384
11069 #, no-wrap
11070 msgid ""
11071 "    /* Display \\(aqaddr\\(aq in raw form (in network byte order), so we can\n"
11072 "       see bytes not displayed by inet_net_ntop(); some of those bytes\n"
11073 "       may not have been touched by inet_net_ntop(), and so will still\n"
11074 "       have any initial value that was specified in argv[2]. */\n"
11075 msgstr ""
11076
11077 #. type: Plain text
11078 #: build/C/man3/inet_net_pton.3:386
11079 #, no-wrap
11080 msgid "    printf(\"Raw address:              %x\\en\", htonl(addr.s_addr));\n"
11081 msgstr "    printf(\"Raw address:              %x\\en\", htonl(addr.s_addr));\n"
11082
11083 #. type: Plain text
11084 #: build/C/man3/inet_net_pton.3:393
11085 msgid "B<inet>(3), B<networks>(5)"
11086 msgstr "B<inet>(3), B<networks>(5)"
11087
11088 #. type: TH
11089 #: build/C/man3/inet_ntop.3:26
11090 #, no-wrap
11091 msgid "INET_NTOP"
11092 msgstr "INET_NTOP"
11093
11094 #. type: TH
11095 #: build/C/man3/inet_ntop.3:26
11096 #, no-wrap
11097 msgid "2008-11-11"
11098 msgstr "2008-11-11"
11099
11100 #. type: Plain text
11101 #: build/C/man3/inet_ntop.3:29
11102 msgid "inet_ntop - convert IPv4 and IPv6 addresses from binary to text form"
11103 msgstr "inet_ntop - IPv4/IPv6 アドレスをバイナリ形式からテキスト形式に変換する"
11104
11105 #. type: Plain text
11106 #: build/C/man3/inet_ntop.3:35
11107 #, no-wrap
11108 msgid ""
11109 "B<const char *inet_ntop(int >I<af>B<, const void *>I<src>B<,>\n"
11110 "B<                      char *>I<dst>B<, socklen_t >I<size>B<);>\n"
11111 msgstr ""
11112 "B<const char *inet_ntop(int >I<af>B<, const void *>I<src>B<,>\n"
11113 "B<                      char *>I<dst>B<, socklen_t >I<size>B<);>\n"
11114
11115 #. type: Plain text
11116 #: build/C/man3/inet_ntop.3:48
11117 msgid ""
11118 "This function converts the network address structure I<src> in the I<af> "
11119 "address family into a character string.  The resulting string is copied to "
11120 "the buffer pointed to by I<dst>, which must be a non-null pointer.  The "
11121 "caller specifies the number of bytes available in this buffer in the "
11122 "argument I<size>."
11123 msgstr ""
11124 "この関数は、 I<af> アドレスファミリーのネットワークアドレス構造体 I<src> を文"
11125 "字列に変換する。 変換結果の文字列は、 I<dst> が指すバッファにコピーされる。 "
11126 "I<dst> は NULL でないポインタでなければならない。 呼び出し時に、このバッファ"
11127 "で利用できるバイト数を 引き数 I<size> に指定する。"
11128
11129 #. type: Plain text
11130 #: build/C/man3/inet_ntop.3:57
11131 msgid ""
11132 "B<inet_ntop>()  extends the B<inet_ntoa>(3)  function to support multiple "
11133 "address families, B<inet_ntoa>(3)  is now considered to be deprecated in "
11134 "favor of B<inet_ntop>().  The following address families are currently "
11135 "supported:"
11136 msgstr ""
11137 "B<inet_ntop>()  は B<inet_ntoa>(3)  関数を拡張して複数のアドレスファミリーを"
11138 "扱えるようにしたものである。 今後は B<inet_ntoa>(3)  は使わず、 "
11139 "B<inet_ntop>()  を使うようにすると良いだろう。 現在サポートされているアドレス"
11140 "ファミリーは以下の通り:"
11141
11142 #. type: Plain text
11143 #: build/C/man3/inet_ntop.3:70
11144 msgid ""
11145 "I<src> points to a I<struct in_addr> (in network byte order)  which is "
11146 "converted to an IPv4 network address in the dotted-decimal format, \"I<ddd."
11147 "ddd.ddd.ddd>\".  The buffer I<dst> must be at least B<INET_ADDRSTRLEN> bytes "
11148 "long."
11149 msgstr ""
11150 "この場合 I<src> は (ネットワークバイトオーダーの)  I<struct in_addr> へのポイ"
11151 "ンタとみなされ、この構造体の内容が ドット区切りの 10 進数形式 \"I<ddd.ddd."
11152 "ddd.ddd>\" の IPv4 ネットワークアドレスに変換される。 バッファ I<dst> は少な"
11153 "くとも B<INET_ADDRSTRLEN> バイトの長さを持たなければならない。"
11154
11155 #. type: Plain text
11156 #: build/C/man3/inet_ntop.3:83
11157 msgid ""
11158 "I<src> points to a I<struct in6_addr> (in network byte order)  which is "
11159 "converted to a representation of this address in the most appropriate IPv6 "
11160 "network address format for this address.  The buffer I<dst> must be at least "
11161 "B<INET6_ADDRSTRLEN> bytes long."
11162 msgstr ""
11163 "この場合 I<src> は (ネットワークバイトオーダーの)  I<struct in6_addr> へのポ"
11164 "インタとみなされ、この構造体の内容が、 (このアドレスに対してもっとも適切な)  "
11165 "IPv6 ネットワークアドレスの表示形式に変換される。 バッファ I<dst> は少なくと"
11166 "も B<INET6_ADDRSTRLEN> バイトの長さを持たなければならない。"
11167
11168 #. type: Plain text
11169 #: build/C/man3/inet_ntop.3:91
11170 msgid ""
11171 "On success, B<inet_ntop>()  returns a non-null pointer to I<dst>.  NULL is "
11172 "returned if there was an error, with I<errno> set to indicate the error."
11173 msgstr ""
11174 "成功すると、 B<inet_ntop>()  は I<dst> への (NULL でない) ポインタを返す。 エ"
11175 "ラーがあった場合は NULL を返し、 I<errno> をエラーを示す値に適切に設定する。"
11176
11177 #. type: Plain text
11178 #: build/C/man3/inet_ntop.3:96
11179 msgid "I<af> was not a valid address family."
11180 msgstr "I<af> がサポートされているアドレスファミリーでなかった。"
11181
11182 #. type: TP
11183 #: build/C/man3/inet_ntop.3:96
11184 #, no-wrap
11185 msgid "B<ENOSPC>"
11186 msgstr "B<ENOSPC>"
11187
11188 #. type: Plain text
11189 #: build/C/man3/inet_ntop.3:100
11190 msgid "The converted address string would exceed the size given by I<size>."
11191 msgstr ""
11192 "変換されたアドレス文字列の長さが I<size> で指定されたサイズを超過してしまう。"
11193
11194 #.  2.1.3: size_t, 2.1.91: socklen_t
11195 #. type: Plain text
11196 #: build/C/man3/inet_ntop.3:112
11197 msgid ""
11198 "POSIX.1-2001.  Note that RFC\\ 2553 defines a prototype where the last "
11199 "argument I<size> is of type I<size_t>.  Many systems follow RFC\\ 2553.  "
11200 "Glibc 2.0 and 2.1 have I<size_t>, but 2.2 and later have I<socklen_t>."
11201 msgstr ""
11202 "POSIX.1-2001.  RFC\\ 2553 では最後の引き数 I<size> のプロトタイプを "
11203 "I<size_t> 型と定義している。多くのシステムでは RFC\\ 2553 にしたがっている。 "
11204 "glibc 2.0 と 2.1 では I<size_t> だが、 glibc 2.2 以降では I<socklen_t> となっ"
11205 "ている。"
11206
11207 #. type: Plain text
11208 #: build/C/man3/inet_ntop.3:115
11209 msgid "B<AF_INET6> converts IPv4-mapped IPv6 addresses into an IPv6 format."
11210 msgstr ""
11211 "B<AF_INET6> は IPv4 がマップされた IPv6 アドレスを IPv6 形式に変換してしま"
11212 "う。"
11213
11214 #. type: Plain text
11215 #: build/C/man3/inet_ntop.3:118
11216 msgid "See B<inet_pton>(3)."
11217 msgstr "B<inet_pton>(3)  を参照。"
11218
11219 #. type: Plain text
11220 #: build/C/man3/inet_ntop.3:122
11221 msgid "B<getnameinfo>(3), B<inet>(3), B<inet_pton>(3)"
11222 msgstr "B<getnameinfo>(3), B<inet>(3), B<inet_pton>(3)"
11223
11224 #. type: TH
11225 #: build/C/man3/inet_pton.3:27
11226 #, no-wrap
11227 msgid "INET_PTON"
11228 msgstr "INET_PTON"
11229
11230 #. type: TH
11231 #: build/C/man3/inet_pton.3:27
11232 #, no-wrap
11233 msgid "2008-06-18"
11234 msgstr "2008-06-18"
11235
11236 #. type: Plain text
11237 #: build/C/man3/inet_pton.3:30
11238 msgid "inet_pton - convert IPv4 and IPv6 addresses from text to binary form"
11239 msgstr "inet_pton - IPv4/IPv6 アドレスをテキスト形式からバイナリ形式に変換する"
11240
11241 #. type: Plain text
11242 #: build/C/man3/inet_pton.3:35
11243 #, no-wrap
11244 msgid "B<int inet_pton(int >I<af>B<, const char *>I<src>B<, void *>I<dst>B<);>\n"
11245 msgstr "B<int inet_pton(int >I<af>B<, const char *>I<src>B<, void *>I<dst>B<);>\n"
11246
11247 #. type: Plain text
11248 #: build/C/man3/inet_pton.3:51
11249 msgid ""
11250 "This function converts the character string I<src> into a network address "
11251 "structure in the I<af> address family, then copies the network address "
11252 "structure to I<dst>.  The I<af> argument must be either B<AF_INET> or "
11253 "B<AF_INET6>."
11254 msgstr ""
11255 "この関数は文字列 I<src> を、アドレスファミリー I<af> のネットワークアドレス構"
11256 "造体に変換し、 I<dst> にコピーする。 I<af> 引き数は B<AF_INET> か "
11257 "B<AF_INET6> のどちらかでなければならない。"
11258
11259 #. type: Plain text
11260 #: build/C/man3/inet_pton.3:53
11261 msgid "The following address families are currently supported:"
11262 msgstr "現在サポートされているアドレスファミリーは以下の通りである。"
11263
11264 #. type: Plain text
11265 #: build/C/man3/inet_pton.3:67
11266 msgid ""
11267 "I<src> points to a character string containing an IPv4 network address in "
11268 "dotted-decimal format, \"I<ddd.ddd.ddd.ddd>\", where I<ddd> is a decimal "
11269 "number of up to three digits in the range 0 to 255.  The address is "
11270 "converted to a I<struct in_addr> and copied to I<dst>, which must be "
11271 "I<sizeof(struct in_addr)> (4) bytes (32 bits) long."
11272 msgstr ""
11273 "I<src> はドット区切りの 10 進数形式 \"I<ddd.ddd.ddd.ddd>\" の IPv4 ネットワー"
11274 "クアドレス文字列へのポインタである。 I<ddd> は 0 から 255 までの範囲の最大 3 "
11275 "桁の 10 進数である。 このアドレスは I<struct in_addr> に変換されて I<dst> に"
11276 "コピーされる。 I<dst> の長さは I<sizeof(struct in_addr)> (4) バイト (32ビッ"
11277 "ト) でなければならない。"
11278
11279 #. type: Plain text
11280 #: build/C/man3/inet_pton.3:79
11281 msgid ""
11282 "I<src> points to a character string containing an IPv6 network address.  The "
11283 "address is converted to a I<struct in6_addr> and copied to I<dst>, which "
11284 "must be I<sizeof(struct in6_addr)> (16) bytes (128 bits) long.  The allowed "
11285 "formats for IPv6 addresses follow these rules:"
11286 msgstr ""
11287 "I<src> は IPv6 ネットワークアドレスが格納された文字列へのポインタである。 こ"
11288 "のアドレスは I<struct in6_addr> に変換されて I<dst> にコピーされる。 I<dst> "
11289 "の長さは I<sizeof(struct in6_addr)> (16) バイト (128 ビット) でなければならな"
11290 "い。 以下の 3 つのルールにしたがった形式が IPv6 アドレスとして入力できる。"
11291
11292 #. type: IP
11293 #: build/C/man3/inet_pton.3:80
11294 #, no-wrap
11295 msgid "1."
11296 msgstr "1."
11297
11298 #. type: Plain text
11299 #: build/C/man3/inet_pton.3:87
11300 msgid ""
11301 "The preferred format is I<x:x:x:x:x:x:x:x>.  This form consists of eight "
11302 "hexadecimal numbers, each of which expresses a 16-bit value (i.e., each I<x> "
11303 "can be up to 4 hex digits)."
11304 msgstr ""
11305 "推奨形式は I<x:x:x:x:x:x:x:x> である。この形式は 8 個の 16 進数から構成さ"
11306 "れ、 各々の 16 進数は 16 ビット値を表す (I<x> は最大 4 桁の 16 進数である)。"
11307
11308 #. type: IP
11309 #: build/C/man3/inet_pton.3:87
11310 #, no-wrap
11311 msgid "2."
11312 msgstr "2."
11313
11314 #. type: Plain text
11315 #: build/C/man3/inet_pton.3:100
11316 msgid ""
11317 "A series of contiguous zero values in the preferred format can be "
11318 "abbreviated to I<::>.  Only one instance of I<::> can occur in an address.  "
11319 "For example, the loopback address I<0:0:0:0:0:0:0:1> can be abbreviated as "
11320 "I<::1>.  The wildcard address, consisting of all zeros, can be written as "
11321 "I<::>."
11322 msgstr ""
11323 "推奨形式の中の連続する 0 の列は I<::> に短縮できる。アドレス中で使用できる "
11324 "I<::> は 1 個だけである。 例えば、ループバックアドレス I<0:0:0:0:0:0:0:1> は "
11325 "I<::1> と短縮できる。 全ビットが 0 で構成されるワイルドカードアドレスは I<::"
11326 "> と記載できる。"
11327
11328 #. type: IP
11329 #: build/C/man3/inet_pton.3:100
11330 #, no-wrap
11331 msgid "3."
11332 msgstr "3."
11333
11334 #. type: Plain text
11335 #: build/C/man3/inet_pton.3:113
11336 msgid ""
11337 "An alternate format is useful for expressing IPv4-mapped IPv6 addresses.  "
11338 "This form is written as I<x:x:x:x:x:x:d.d.d.d>, where the six leading I<x>s "
11339 "are hexadecimal values that define the six most-significant 16-bit pieces of "
11340 "the address (i.e., 96 bits), and the I<d>s express a value in dotted-decimal "
11341 "notation that defines the least significant 32 bits of the address.  An "
11342 "example of such an address is I<::FFFF:204.152.189.116>."
11343 msgstr ""
11344 "IPv4 をマッピングした IPv6 アドレスを表記するには別の形式が便利である。 この"
11345 "別の形式は I<x:x:x:x:x:x:d.d.d.d> と書くことができる。 最初の 6 個の I<x> は"
11346 "アドレスを 16 ビット単位に区切ったときの上位側 6 個分 (つまり 96 ビット分)  "
11347 "を定義する 16 進数であり、 I<d> の部分はアドレスの下位 32 ビットをドット区切"
11348 "りの 10 進数表記で表したものである。 I<::FFFF:204.152.189.116> はこの形式の例"
11349 "である。"
11350
11351 #. type: Plain text
11352 #: build/C/man3/inet_pton.3:116
11353 msgid ""
11354 "See RFC 2373 for further details on the representation of IPv6 addresses."
11355 msgstr "IPv6 アドレスの表現方法の詳細については RFC 2373 を参照のこと。"
11356
11357 #. type: Plain text
11358 #: build/C/man3/inet_pton.3:129
11359 msgid ""
11360 "B<inet_pton>()  returns 1 on success (network address was successfully "
11361 "converted).  0 is returned if I<src> does not contain a character string "
11362 "representing a valid network address in the specified address family.  If "
11363 "I<af> does not contain a valid address family, -1 is returned and I<errno> "
11364 "is set to B<EAFNOSUPPORT>."
11365 msgstr ""
11366 "成功する (ネットワークアドレスが正常に変換される) と、 B<inet_pton>()  は 1 "
11367 "を返す。 I<src> が指定されたアドレスファミリーに対する 正しいネットワークアド"
11368 "レス表記でない場合には、 0 を返す。 I<af> がサポートされているアドレスファミ"
11369 "リーでない場合には、 -1 を返し、 I<errno> に B<EAFNOSUPPORT> を設定する。"
11370
11371 #. type: Plain text
11372 #: build/C/man3/inet_pton.3:150
11373 msgid ""
11374 "Unlike B<inet_aton>(3)  and B<inet_addr>(3), B<inet_pton>()  supports IPv6 "
11375 "addresses.  On the other hand, B<inet_pton>()  accepts only IPv4 addresses "
11376 "in dotted-decimal notation, whereas B<inet_aton>(3)  and B<inet_addr>(3)  "
11377 "allow the more general numbers-and-dots notation (hexadecimal and octal "
11378 "number formats, and formats that don't require all four bytes to be "
11379 "explicitly written).  For an interface that handles both IPv6 addresses, and "
11380 "IPv4 addresses in numbers-and-dots notation, see B<getaddrinfo>(3)."
11381 msgstr ""
11382 "B<inet_aton>(3)  や B<inet_addr>(3)  と異なり、 B<inet_pton>()  は IPv6 アド"
11383 "レスに対応している。 一方で、 B<inet_pton>()  が受け付ける IPv4 アドレスは"
11384 "ドット区切りの 10 進数表記だけである。 これに対し、 B<inet_aton>(3)  や "
11385 "B<inet_addr>(3)  ではもっと一般的なドット区切りの数字表記 (16 進数や 8 進数の"
11386 "形式や、 4 バイト全てを明示的に書かなくてもよい形式) が使用できる。 ドット区"
11387 "切りの数字表記で IPv6 アドレスと IPv4 アドレスの両方を扱える インターフェイス"
11388 "については、 B<getaddrinfo>(3)  を参照のこと。"
11389
11390 #. type: Plain text
11391 #: build/C/man3/inet_pton.3:156
11392 msgid ""
11393 "B<AF_INET6> does not recognize IPv4 addresses.  An explicit IPv4-mapped IPv6 "
11394 "address must be supplied in I<src> instead."
11395 msgstr ""
11396 "B<AF_INET6> は IPv4 アドレスを認識しない。 代わりに IPv4 アドレスをマッピング"
11397 "した IPv6 アドレスを I<src> に与えなければならない。"
11398
11399 #. type: Plain text
11400 #: build/C/man3/inet_pton.3:162
11401 msgid ""
11402 "The program below demonstrates the use of B<inet_pton>()  and "
11403 "B<inet_ntop>(3).  Here are some example runs:"
11404 msgstr ""
11405 "以下のプログラムは B<inet_pton>()  と B<inet_ntop>(3)  の使用例を示すものであ"
11406 "る。 実行すると以下のようになる。"
11407
11408 #. type: Plain text
11409 #: build/C/man3/inet_pton.3:171
11410 #, no-wrap
11411 msgid ""
11412 "$B< ./a.out i6 0:0:0:0:0:0:0:0>\n"
11413 "::\n"
11414 "$B< ./a.out i6 1:0:0:0:0:0:0:8>\n"
11415 "1::8\n"
11416 "$B< ./a.out i6 0:0:0:0:0:FFFF:204.152.189.116>\n"
11417 "::ffff:204.152.189.116\n"
11418 msgstr ""
11419 "$B< ./a.out i6 0:0:0:0:0:0:0:0>\n"
11420 "::\n"
11421 "$B< ./a.out i6 1:0:0:0:0:0:0:8>\n"
11422 "1::8\n"
11423 "$B< ./a.out i6 0:0:0:0:0:FFFF:204.152.189.116>\n"
11424 "::ffff:204.152.189.116\n"
11425
11426 #. type: Plain text
11427 #: build/C/man3/inet_pton.3:180
11428 #, no-wrap
11429 msgid ""
11430 "#include E<lt>arpa/inet.hE<gt>\n"
11431 "#include E<lt>stdio.hE<gt>\n"
11432 "#include E<lt>stdlib.hE<gt>\n"
11433 "#include E<lt>string.hE<gt>\n"
11434 msgstr ""
11435 "#include E<lt>arpa/inet.hE<gt>\n"
11436 "#include E<lt>stdio.hE<gt>\n"
11437 "#include E<lt>stdlib.hE<gt>\n"
11438 "#include E<lt>string.hE<gt>\n"
11439
11440 #. type: Plain text
11441 #: build/C/man3/inet_pton.3:187
11442 #, no-wrap
11443 msgid ""
11444 "int\n"
11445 "main(int argc, char *argv[])\n"
11446 "{\n"
11447 "    unsigned char buf[sizeof(struct in6_addr)];\n"
11448 "    int domain, s;\n"
11449 "    char str[INET6_ADDRSTRLEN];\n"
11450 msgstr ""
11451 "int\n"
11452 "main(int argc, char *argv[])\n"
11453 "{\n"
11454 "    unsigned char buf[sizeof(struct in6_addr)];\n"
11455 "    int domain, s;\n"
11456 "    char str[INET6_ADDRSTRLEN];\n"
11457
11458 #. type: Plain text
11459 #: build/C/man3/inet_pton.3:192
11460 #, no-wrap
11461 msgid ""
11462 "    if (argc != 3) {\n"
11463 "        fprintf(stderr, \"Usage: %s {i4|i6|E<lt>numE<gt>} string\\en\", argv[0]);\n"
11464 "        exit(EXIT_FAILURE);\n"
11465 "    }\n"
11466 msgstr ""
11467 "    if (argc != 3) {\n"
11468 "        fprintf(stderr, \"Usage: %s {i4|i6|E<lt>numE<gt>} string\\en\", argv[0]);\n"
11469 "        exit(EXIT_FAILURE);\n"
11470 "    }\n"
11471
11472 #. type: Plain text
11473 #: build/C/man3/inet_pton.3:195
11474 #, no-wrap
11475 msgid ""
11476 "    domain = (strcmp(argv[1], \"i4\") == 0) ? AF_INET :\n"
11477 "             (strcmp(argv[1], \"i6\") == 0) ? AF_INET6 : atoi(argv[1]);\n"
11478 msgstr ""
11479 "    domain = (strcmp(argv[1], \"i4\") == 0) ? AF_INET :\n"
11480 "             (strcmp(argv[1], \"i6\") == 0) ? AF_INET6 : atoi(argv[1]);\n"
11481
11482 #. type: Plain text
11483 #: build/C/man3/inet_pton.3:204
11484 #, no-wrap
11485 msgid ""
11486 "    s = inet_pton(domain, argv[2], buf);\n"
11487 "    if (s E<lt>= 0) {\n"
11488 "        if (s == 0)\n"
11489 "            fprintf(stderr, \"Not in presentation format\");\n"
11490 "        else\n"
11491 "            perror(\"inet_pton\");\n"
11492 "        exit(EXIT_FAILURE);\n"
11493 "    }\n"
11494 msgstr ""
11495 "    s = inet_pton(domain, argv[2], buf);\n"
11496 "    if (s E<lt>= 0) {\n"
11497 "        if (s == 0)\n"
11498 "            fprintf(stderr, \"Not in presentation format\");\n"
11499 "        else\n"
11500 "            perror(\"inet_pton\");\n"
11501 "        exit(EXIT_FAILURE);\n"
11502 "    }\n"
11503
11504 #. type: Plain text
11505 #: build/C/man3/inet_pton.3:209
11506 #, no-wrap
11507 msgid ""
11508 "    if (inet_ntop(domain, buf, str, INET6_ADDRSTRLEN) == NULL) {\n"
11509 "        perror(\"inet_ntop\");\n"
11510 "        exit(EXIT_FAILURE);\n"
11511 "    }\n"
11512 msgstr ""
11513 "    if (inet_ntop(domain, buf, str, INET6_ADDRSTRLEN) == NULL) {\n"
11514 "        perror(\"inet_ntop\");\n"
11515 "        exit(EXIT_FAILURE);\n"
11516 "    }\n"
11517
11518 #. type: Plain text
11519 #: build/C/man3/inet_pton.3:211
11520 #, no-wrap
11521 msgid "    printf(\"%s\\en\", str);\n"
11522 msgstr "    printf(\"%s\\en\", str);\n"
11523
11524 #. type: Plain text
11525 #: build/C/man3/inet_pton.3:219
11526 msgid "B<getaddrinfo>(3), B<inet>(3), B<inet_ntop>(3)"
11527 msgstr "B<getaddrinfo>(3), B<inet>(3), B<inet_ntop>(3)"
11528
11529 #. type: TH
11530 #: build/C/man7/ip.7:36
11531 #, no-wrap
11532 msgid "IP"
11533 msgstr "IP"
11534
11535 #. type: TH
11536 #: build/C/man7/ip.7:36
11537 #, no-wrap
11538 msgid "2014-05-10"
11539 msgstr "2014-05-10"
11540
11541 #. type: Plain text
11542 #: build/C/man7/ip.7:39
11543 msgid "ip - Linux IPv4 protocol implementation"
11544 msgstr "ip - Linux IPv4 プロトコルの実装"
11545
11546 #. type: Plain text
11547 #: build/C/man7/ip.7:45 build/C/man7/ipv6.7:93 build/C/man7/raw.7:20
11548 #: build/C/man7/tcp.7:83 build/C/man7/udp.7:19
11549 msgid "B<#include E<lt>netinet/in.hE<gt>>"
11550 msgstr "B<#include E<lt>netinet/in.hE<gt>>"
11551
11552 #. type: Plain text
11553 #: build/C/man7/ip.7:47
11554 msgid "B<#include E<lt>netinet/ip.hE<gt> >/* superset of previous */"
11555 msgstr "B<#include E<lt>netinet/ip.hE<gt> >/* 上記のスーパーセット */"
11556
11557 #. type: Plain text
11558 #: build/C/man7/ip.7:49
11559 msgid "I<tcp_socket>B< = socket(AF_INET, SOCK_STREAM, 0);>"
11560 msgstr "I<tcp_socket>B< = socket(AF_INET, SOCK_STREAM, 0);>"
11561
11562 #. type: Plain text
11563 #: build/C/man7/ip.7:51
11564 msgid "I<udp_socket>B< = socket(AF_INET, SOCK_DGRAM, 0);>"
11565 msgstr "I<udp_socket>B< = socket(AF_INET, SOCK_DGRAM, 0);>"
11566
11567 #. type: Plain text
11568 #: build/C/man7/ip.7:53
11569 msgid "I<raw_socket>B< = socket(AF_INET, SOCK_RAW, >I<protocol>B<);>"
11570 msgstr "I<raw_socket>B< = socket(AF_INET, SOCK_RAW, >I<protocol>B<);>"
11571
11572 #.  FIXME . has someone verified that 2.1 is really 1812 compliant?
11573 #. type: Plain text
11574 #: build/C/man7/ip.7:60
11575 msgid ""
11576 "Linux implements the Internet Protocol, version 4, described in RFC\\ 791 "
11577 "and RFC\\ 1122.  B<ip> contains a level 2 multicasting implementation "
11578 "conforming to RFC\\ 1112.  It also contains an IP router including a packet "
11579 "filter."
11580 msgstr ""
11581 "Linux は RFC\\ 791 と RFC\\ 1122 で記述されている Internet Protocol, version "
11582 "4 を実装している。 B<ip> には RFC\\ 1112 に準拠した level 2 マルチキャストの"
11583 "実装が含まれている。 またパケットフィルタ機能を含む IP ルーターも実装されてい"
11584 "る。"
11585
11586 #. type: Plain text
11587 #: build/C/man7/ip.7:64
11588 msgid ""
11589 "The programming interface is BSD-sockets compatible.  For more information "
11590 "on sockets, see B<socket>(7)."
11591 msgstr ""
11592 "プログラミング・インターフェースは BSD ソケットと互換である。 ソケットに関す"
11593 "るより詳細な情報は B<socket>(7)  を参照のこと。"
11594
11595 #. type: Plain text
11596 #: build/C/man7/ip.7:95
11597 msgid ""
11598 "An IP socket is created by calling the B<socket>(2)  function as "
11599 "B<socket(AF_INET, >I<socket_type>B<, >I<protocol>B<)>.  Valid socket types "
11600 "are B<SOCK_STREAM> to open a B<tcp>(7)  socket, B<SOCK_DGRAM> to open a "
11601 "B<udp>(7)  socket, or B<SOCK_RAW> to open a B<raw>(7)  socket to access the "
11602 "IP protocol directly.  I<protocol> is the IP protocol in the IP header to be "
11603 "received or sent.  The only valid values for I<protocol> are 0 and "
11604 "B<IPPROTO_TCP> for TCP sockets, and 0 and B<IPPROTO_UDP> for UDP sockets.  "
11605 "For B<SOCK_RAW> you may specify a valid IANA IP protocol defined in RFC\\ "
11606 "1700 assigned numbers."
11607 msgstr ""
11608 "IP ソケットは、 B<socket>(2) 関数を B<socket(AF_INET, >I<socket_type>B<, >\n"
11609 "I<protocol>B<)> のように呼び出すことで生成される。指定できるソケットタイプ"
11610 "は\n"
11611 "3 つあり、 B<tcp>(7) ソケットをオープンする場合 B<SOCK_STREAM>、 B<udp>(7)\n"
11612 "ソケットをオープンする場合 B<SOCK_DGRAM>、 IP プロトコルに直接アクセスする\n"
11613 "ために B<raw>(7) ソケットをオープンする場合には B<SOCK_RAW> である。 \n"
11614 "I<protocol> は送受信される IP ヘッダに書かれる IP プロトコルである。\n"
11615 "指定できる値は、 TCP ソケットには 0 か B<IPPROTO_TCP>、 UDP ソケットには \n"
11616 "0 か B<IPPROTO_UDP> に限られる。 B<SOCK_RAW> に対しては、 RFC\\ 1700 で定義\n"
11617 "されている有効な IANA IP プロトコルを、 割り当てられている番号で指定する\n"
11618 "ことができる。"
11619
11620 #. type: Plain text
11621 #: build/C/man7/ip.7:117
11622 msgid ""
11623 "When a process wants to receive new incoming packets or connections, it "
11624 "should bind a socket to a local interface address using B<bind>(2).  In this "
11625 "case, only one IP socket may be bound to any given local (address, port) "
11626 "pair.  When B<INADDR_ANY> is specified in the bind call, the socket will be "
11627 "bound to I<all> local interfaces.  When B<listen>(2)  is called on an "
11628 "unbound socket, the socket is automatically bound to a random free port with "
11629 "the local address set to B<INADDR_ANY>.  When B<connect>(2)  is called on an "
11630 "unbound socket, the socket is automatically bound to a random free port or "
11631 "to a usable shared port with the local address set to B<INADDR_ANY>."
11632 msgstr ""
11633 "あるプロセスで、やってくるパケットを受信したり 接続要求を受けたりしたい場合に"
11634 "は、 そのプロセスはローカルなインターフェースアドレスに、 B<bind>(2) を用いて"
11635 "ソケットをバインドしなければならない。 この場合、 ローカルの「アドレスとポー"
11636 "ト」のペアに対してバインドできる IP ソケットは一つだけである。 B<bind>(2) の"
11637 "呼び出しで B<INADDR_ANY> が指定されていた場合は、 ソケットは I<すべて> のロー"
11638 "カルインターフェースにバインドされる。 B<listen>(2) がバインドされていないソ"
11639 "ケットに対してコールされると、 そのソケットは、 ローカルポートはランダムに選"
11640 "択された空いているポートで、 ローカルアドレスは B<INADDR_ANY> で自動的にバイ"
11641 "ンドされる。 B<connect>(2) がバインドされていないソケットに対してコールされる"
11642 "と、 そのソケットは、 ローカルポートはランダムに選択された空いているポートか"
11643 "未使用の共有ポートで、 ローカルアドレスは B<INADDR_ANY> で自動的にバインドさ"
11644 "れる。"
11645
11646 #. type: Plain text
11647 #: build/C/man7/ip.7:123
11648 msgid ""
11649 "A TCP local socket address that has been bound is unavailable for some time "
11650 "after closing, unless the B<SO_REUSEADDR> flag has been set.  Care should be "
11651 "taken when using this flag as it makes TCP less reliable."
11652 msgstr ""
11653 "B<SO_REUSEADDR> フラグがセットされていない場合には、 バインドされていた TCP "
11654 "ローカルソケットアドレスは クローズされた後しばらくの間使えなくなる。 "
11655 "B<SO_REUSEADDR> フラグを使うと TCP の信頼性を低下させるので、 使うときには注"
11656 "意が必要である。"
11657
11658 #. type: Plain text
11659 #: build/C/man7/ip.7:134
11660 msgid ""
11661 "An IP socket address is defined as a combination of an IP interface address "
11662 "and a 16-bit port number.  The basic IP protocol does not supply port "
11663 "numbers, they are implemented by higher level protocols like B<udp>(7)  and "
11664 "B<tcp>(7).  On raw sockets I<sin_port> is set to the IP protocol."
11665 msgstr ""
11666 "IP ソケットアドレスは、 IP インターフェースアドレスと 16ビットのポート番号の"
11667 "組み合わせで定義される。 IP プロトコルそのものはポート番号を扱わない。 ポート"
11668 "番号は、 B<udp>(7)  や B<tcp>(7)  といった、上位のプロトコルで実装される。 "
11669 "raw ソケットでは、 I<sin_port> が IP プロトコルにセットされる。"
11670
11671 #. type: Plain text
11672 #: build/C/man7/ip.7:142
11673 #, no-wrap
11674 msgid ""
11675 "struct sockaddr_in {\n"
11676 "    sa_family_t    sin_family; /* address family: AF_INET */\n"
11677 "    in_port_t      sin_port;   /* port in network byte order */\n"
11678 "    struct in_addr sin_addr;   /* internet address */\n"
11679 "};\n"
11680 msgstr ""
11681 "struct sockaddr_in {\n"
11682 "    sa_family_t    sin_family; /* address family: AF_INET */\n"
11683 "    in_port_t      sin_port;   /* port in network byte order */\n"
11684 "    struct in_addr sin_addr;   /* internet address */\n"
11685 "};\n"
11686
11687 #. type: Plain text
11688 #: build/C/man7/ip.7:147
11689 #, no-wrap
11690 msgid ""
11691 "/* Internet address. */\n"
11692 "struct in_addr {\n"
11693 "    uint32_t       s_addr;     /* address in network byte order */\n"
11694 "};\n"
11695 msgstr ""
11696 "/* Internet address. */\n"
11697 "struct in_addr {\n"
11698 "    uint32_t       s_addr;     /* address in network byte order */\n"
11699 "};\n"
11700
11701 #. type: Plain text
11702 #: build/C/man7/ip.7:172
11703 msgid ""
11704 "I<sin_family> is always set to B<AF_INET>.  This is required; in Linux 2.2 "
11705 "most networking functions return B<EINVAL> when this setting is missing.  "
11706 "I<sin_port> contains the port in network byte order.  The port numbers below "
11707 "1024 are called I<privileged ports> (or sometimes: I<reserved ports>).  Only "
11708 "privileged processes (i.e., those having the B<CAP_NET_BIND_SERVICE> "
11709 "capability) may B<bind>(2)  to these sockets.  Note that the raw IPv4 "
11710 "protocol as such has no concept of a port, they are implemented only by "
11711 "higher protocols like B<tcp>(7)  and B<udp>(7)."
11712 msgstr ""
11713 "I<sin_familiy> には常に B<AF_INET> をセットする。これは必須である。 Linux "
11714 "2.2 では、このセットを忘れると ほとんどのネットワーク関数は B<EINVAL> を返す"
11715 "ようになっている。 I<sin_port> にはポート番号をネットワークバイトオーダーで指"
11716 "定する。 1024 未満のポート番号は I<特権ポート (privileged ports)> と呼ばれる "
11717 "(I<予約ポート (reserved ports)> とも時々呼ばれる)。 特権プロセス "
11718 "(B<CAP_NET_BIND_SERVICE> ケーパビリティを持つプロセス) 以外のプロセスは、これ"
11719 "らのポートには B<bind>(2)  できない。 IPv4 プロトコルそのものにはポートに関す"
11720 "る概念がない。ポートが実装されるのは、 B<tcp>(7)  や B<udp>(7) といった、上位"
11721 "のプロトコルにおいてのみである。"
11722
11723 #. type: Plain text
11724 #: build/C/man7/ip.7:191
11725 msgid ""
11726 "I<sin_addr> is the IP host address.  The I<s_addr> member of I<struct "
11727 "in_addr> contains the host interface address in network byte order.  "
11728 "I<in_addr> should be assigned one of the B<INADDR_*> values (e.g., "
11729 "B<INADDR_ANY>)  or set using the B<inet_aton>(3), B<inet_addr>(3), "
11730 "B<inet_makeaddr>(3)  library functions or directly with the name resolver "
11731 "(see B<gethostbyname>(3))."
11732 msgstr ""
11733 "I<sin_addr> は IP ホストアドレスである。 I<struct in_addr> の I<s_addr> \n"
11734 "メンバには、ホストのインターフェースアドレスを ネットワークバイトオーダーで\n"
11735 "指定する。 I<in_addr> は、B<INADDR_*> の一つ (例えば B<INADDR_ANY>) を代入す"
11736 "る、\n"
11737 "ライブラリ関数 B<inet_aton>(3), B<inet_addr>(3), B<inet_makeaddr>(3) を用い"
11738 "る、\n"
11739 "あるいは名前解決機構 (name resolver) を直接用いる、のどれかで設定すべきであ"
11740 "る。\n"
11741 "(B<gethostbyname>(3) を見よ)。"
11742
11743 #.  Leave a loophole for XTP @)
11744 #. type: Plain text
11745 #: build/C/man7/ip.7:203
11746 msgid ""
11747 "IPv4 addresses are divided into unicast, broadcast and multicast addresses.  "
11748 "Unicast addresses specify a single interface of a host, broadcast addresses "
11749 "specify all hosts on a network and multicast addresses address all hosts in "
11750 "a multicast group.  Datagrams to broadcast addresses can be sent or received "
11751 "only when the B<SO_BROADCAST> socket flag is set.  In the current "
11752 "implementation, connection-oriented sockets are allowed to use only unicast "
11753 "addresses."
11754 msgstr ""
11755 "IPv4 アドレスには、ユニキャストアドレス、 ブロードキャストアドレス、マルチ"
11756 "キャストアドレスがある。 ユニキャストアドレスは、あるホストの一つのアドレスを"
11757 "指定する。 ブロードキャストアドレスは、あるネットワーク上の全てのホストを指定"
11758 "する。 マルチキャストアドレスは、マルチキャストグループに所属する 全てのホス"
11759 "トを指定する。ブロードキャストアドレスへのデータグラムは、 B<SO_BROADCAST> ソ"
11760 "ケットフラグがセットされていないと送信・受信できない。 現在の実装では、接続指"
11761 "向のソケットにはユニキャストアドレスしか使えない。"
11762
11763 #. type: Plain text
11764 #: build/C/man7/ip.7:211
11765 msgid ""
11766 "Note that the address and the port are always stored in network byte order.  "
11767 "In particular, this means that you need to call B<htons>(3)  on the number "
11768 "that is assigned to a port.  All address/port manipulation functions in the "
11769 "standard library work in network byte order."
11770 msgstr ""
11771 "アドレスとポートは常にネットワークバイトオーダーで格納されることに注意せよ。 "
11772 "具体的には、ポートを指定する数値には B<htons>(3)  を呼び出す必要がある。 標準"
11773 "ライブラリにあるアドレス/ポート操作関数は すべてネットワークバイトオーダーで"
11774 "動作する。"
11775
11776 #. type: Plain text
11777 #: build/C/man7/ip.7:224
11778 msgid ""
11779 "There are several special addresses: B<INADDR_LOOPBACK> (127.0.0.1)  always "
11780 "refers to the local host via the loopback device; B<INADDR_ANY> (0.0.0.0)  "
11781 "means any address for binding; B<INADDR_BROADCAST> (255.255.255.255)  means "
11782 "any host and has the same effect on bind as B<INADDR_ANY> for historical "
11783 "reasons."
11784 msgstr ""
11785 "特別なアドレスがいくつか存在する: B<INADDR_LOOPBACK>(127.0.0.1)  は loopback "
11786 "デバイスを通して常にローカルなホストを参照する。 B<INADDR_ANY>(0.0.0.0)  は任"
11787 "意のアドレスを意味し、バインド用である。 "
11788 "B<INADDR_BROADCAST>(255.255.255.255)  は任意のホストを意味し、歴史的理由か"
11789 "ら、バインドの際には B<INADDR_ANY> と同じ効果になる。"
11790
11791 #.  or SOL_IP on Linux
11792 #. type: Plain text
11793 #: build/C/man7/ip.7:233
11794 msgid ""
11795 "IP supports some protocol-specific socket options that can be set with "
11796 "B<setsockopt>(2)  and read with B<getsockopt>(2).  The socket option level "
11797 "for IP is B<IPPROTO_IP>.  A boolean integer flag is zero when it is false, "
11798 "otherwise true."
11799 msgstr ""
11800 "IP にはプロトコル固有のソケットオプションがいくつか存在し、 "
11801 "B<setsockopt>(2)  で設定が、 B<getsockopt>(2)  で取得ができる。 IP のソケット"
11802 "オプションレベルは B<IPPROTO_IP> である。 ブール整数値のフラグでは、 0 は偽、"
11803 "それ以外は真を意味する。"
11804
11805 #. type: TP
11806 #: build/C/man7/ip.7:233
11807 #, no-wrap
11808 msgid "B<IP_ADD_MEMBERSHIP> (since Linux 1.2)"
11809 msgstr "B<IP_ADD_MEMBERSHIP> (Linux 1.2 以降)"
11810
11811 #. type: Plain text
11812 #: build/C/man7/ip.7:239
11813 msgid "Join a multicast group.  Argument is an I<ip_mreqn> structure."
11814 msgstr "マルチキャストグループに参加する。 引き数は I<ip_mreqn> 構造体である。"
11815
11816 #. type: Plain text
11817 #: build/C/man7/ip.7:249
11818 #, no-wrap
11819 msgid ""
11820 "struct ip_mreqn {\n"
11821 "    struct in_addr imr_multiaddr; /* IP multicast group\n"
11822 "                                     address */\n"
11823 "    struct in_addr imr_address;   /* IP address of local\n"
11824 "                                     interface */\n"
11825 "    int            imr_ifindex;   /* interface index */\n"
11826 "};\n"
11827 msgstr ""
11828 "struct ip_mreqn {\n"
11829 "    struct in_addr imr_multiaddr; /* IP multicast group\n"
11830 "                                     address */\n"
11831 "    struct in_addr imr_address;   /* IP address of local\n"
11832 "                                     interface */\n"
11833 "    int            imr_ifindex;   /* interface index */\n"
11834 "};\n"
11835
11836 #.  (i.e., within the 224.0.0.0-239.255.255.255 range)
11837 #. type: Plain text
11838 #: build/C/man7/ip.7:270
11839 msgid ""
11840 "I<imr_multiaddr> contains the address of the multicast group the application "
11841 "wants to join or leave.  It must be a valid multicast address (or "
11842 "B<setsockopt>(2)  fails with the error B<EINVAL>).  I<imr_address> is the "
11843 "address of the local interface with which the system should join the "
11844 "multicast group; if it is equal to B<INADDR_ANY>, an appropriate interface "
11845 "is chosen by the system.  I<imr_ifindex> is the interface index of the "
11846 "interface that should join/leave the I<imr_multiaddr> group, or 0 to "
11847 "indicate any interface."
11848 msgstr ""
11849 "I<imr_multiaddr> には、アプリケーションが参加または脱退したい マルチキャスト"
11850 "グループのアドレスが入る。 指定するアドレスは有効なマルチキャストアドレスでな"
11851 "ければならない (さもなければ B<setsockopt>(2)  がエラー B<EINVAL> で失敗す"
11852 "る)。 I<imr_address> はシステムがマルチキャストグループに参加する際に用いる "
11853 "ローカルなインターフェースのアドレスである。 これが B<INADDR_ANY> であった場"
11854 "合には、適切なインターフェースがシステムによって選択される。 I<imr_ifindex> "
11855 "は I<imr_multiaddr> グループに参加/脱退するインターフェースの interface "
11856 "index である。 どのインターフェースでもよい場合は 0 にする。"
11857
11858 #. type: Plain text
11859 #: build/C/man7/ip.7:285
11860 msgid ""
11861 "The I<ip_mreqn> structure is available only since Linux 2.2.  For "
11862 "compatibility, the old I<ip_mreq> structure (present since Linux 1.2) is "
11863 "still supported; it differs from I<ip_mreqn> only by not including the "
11864 "I<imr_ifindex> field.  Only valid as a B<setsockopt>(2)."
11865 msgstr ""
11866 "I<ip_mreqn> 構造体は Linux 2.2 以降でのみ利用可能である。互換性のため、 古い "
11867 "I<ip_mreq> 構造体 (Linux 1.2 以降で存在する) もまだサポートされている。 "
11868 "I<ip_mreqn> との違いは、 I<imr_ifindex> フィールドを含まないことだけである。 "
11869 "B<setsockopt>(2) でのみ使える。"
11870
11871 #. type: TP
11872 #: build/C/man7/ip.7:285
11873 #, no-wrap
11874 msgid "B<IP_ADD_SOURCE_MEMBERSHIP> (since Linux 2.4.22 / 2.5.68)"
11875 msgstr "B<IP_ADD_SOURCE_MEMBERSHIP> (Linux 2.4.22 以降 / 2.5.68 以降)"
11876
11877 #. type: Plain text
11878 #: build/C/man7/ip.7:292
11879 msgid ""
11880 "Join a multicast group and allow receiving data only from a specified "
11881 "source.  Argument is an I<ip_mreq_source> structure."
11882 msgstr ""
11883 "マルチキャストグループに参加、指定された送信元からのデータの受信のみを許可す"
11884 "る。 引き数は I<ip_mreq_source> 構造体である。"
11885
11886 #. type: Plain text
11887 #: build/C/man7/ip.7:303
11888 #, no-wrap
11889 msgid ""
11890 "struct ip_mreq_source {\n"
11891 "    struct in_addr imr_multiaddr;  /* IP multicast group\n"
11892 "                                      address */\n"
11893 "    struct in_addr imr_interface;  /* IP address of local\n"
11894 "                                      interface */\n"
11895 "    struct in_addr imr_sourceaddr; /* IP address of\n"
11896 "                                      multicast source */\n"
11897 "};\n"
11898 msgstr ""
11899 "struct ip_mreq_source {\n"
11900 "    struct in_addr imr_multiaddr;  /* IP multicast group\n"
11901 "                                      address */\n"
11902 "    struct in_addr imr_interface;  /* IP address of local\n"
11903 "                                      interface */\n"
11904 "    struct in_addr imr_sourceaddr; /* IP address of\n"
11905 "                                      multicast source */\n"
11906 "};\n"
11907
11908 #. type: Plain text
11909 #: build/C/man7/ip.7:324
11910 msgid ""
11911 "The I<ip_mreq_source> structure is similar to I<ip_mreqn> described under "
11912 "B<IP_ADD_MEMBERSIP>.  The I<imr_multiaddr> field contains the address of the "
11913 "multicast group the application wants to join or leave.  The "
11914 "I<imr_interface> field is the address of the local interface with which the "
11915 "system should join the multicast group.  Finally, the I<imr_sourceaddr> "
11916 "field contains the address of the source the application wants to receive "
11917 "data from."
11918 msgstr ""
11919 "I<ip_mreq_source> 構造体は B<IP_ADD_MEMBERSIP> の項で説明した I<ip_mreqn> に"
11920 "似ている。 I<imr_multiaddr> フィールドには、アプリケーションが参加または脱退"
11921 "したいマルチキャストグループのアドレスが入る。 I<imr_interface> フィールド"
11922 "は、 マルチキャストグループに参加する際に システムが使用すべきローカルイン"
11923 "ターフェースのアドレスである。 I<imr_sourceaddr> フィールドには、アプリケー"
11924 "ションがデータを受信したい送信元のアドレスが入る。"
11925
11926 #. type: Plain text
11927 #: build/C/man7/ip.7:327
11928 msgid ""
11929 "This option can be used multiple times to allow receiving data from more "
11930 "than one source."
11931 msgstr ""
11932 "このオプションを複数回使うことで、 複数の送信元からのデータ受信を許可すること"
11933 "ができる。"
11934
11935 #. type: TP
11936 #: build/C/man7/ip.7:327
11937 #, no-wrap
11938 msgid "B<IP_BLOCK_SOURCE> (since Linux 2.4.22 / 2.5.68)"
11939 msgstr "B<IP_BLOCK_SOURCE> (since Linux 2.4.22 以降 / 2.5.68 以降)"
11940
11941 #. type: Plain text
11942 #: build/C/man7/ip.7:335
11943 msgid ""
11944 "Stop receiving multicast data from a specific source in a given group.  This "
11945 "is valid only after the application has subscribed to the multicast group "
11946 "using either B<IP_ADD_MEMBERSHIP> or B<IP_ADD_SOURCE_MEMBERSHIP>."
11947 msgstr ""
11948 "指定したグループで、指定した送信元からのマルチキャストデータの受信を停止す"
11949 "る。 このオプションは、アプリケーションが  B<IP_ADD_MEMBERSHIP> か "
11950 "B<IP_ADD_SOURCE_MEMBERSHIP> のいずれかを使ってマルチキャストグループに参加し"
11951 "た後でのみ有効である。"
11952
11953 #. type: Plain text
11954 #: build/C/man7/ip.7:340 build/C/man7/ip.7:362 build/C/man7/ip.7:926
11955 msgid ""
11956 "Argument is an I<ip_mreq_source> structure as described under "
11957 "B<IP_ADD_SOURCE_MEMBERSHIP>."
11958 msgstr ""
11959 "引き数は I<ip_mreq_source> 構造体である。 B<IP_ADD_SOURCE_MEMBERSHIP> の項に"
11960 "説明がある。"
11961
11962 #. type: TP
11963 #: build/C/man7/ip.7:340
11964 #, no-wrap
11965 msgid "B<IP_DROP_MEMBERSHIP> (since Linux 1.2)"
11966 msgstr "B<IP_DROP_MEMBERSHIP> (Linux 1.2 以降)"
11967
11968 #. type: Plain text
11969 #: build/C/man7/ip.7:349
11970 msgid ""
11971 "Leave a multicast group.  Argument is an I<ip_mreqn> or I<ip_mreq> structure "
11972 "similar to B<IP_ADD_MEMBERSHIP>."
11973 msgstr ""
11974 "マルチキャストグループから抜ける。引き数は B<IP_ADD_MEMBERSHIP> と同様に "
11975 "I<ip_mreqn> または I<ip_mreq> 構造体である。"
11976
11977 #. type: TP
11978 #: build/C/man7/ip.7:349
11979 #, no-wrap
11980 msgid "B<IP_DROP_SOURCE_MEMBERSHIP> (since Linux 2.4.22 / 2.5.68)"
11981 msgstr "B<IP_DROP_SOURCE_MEMBERSHIP> (Linux 2.4.22 以降 / 2.5.68 以降)"
11982
11983 #. type: Plain text
11984 #: build/C/man7/ip.7:357
11985 msgid ""
11986 "Leave a source-specific group\\(emthat is, stop receiving data from a given "
11987 "multicast group that come from a given source.  If the application has "
11988 "subscribed to multiple sources within the same group, data from the "
11989 "remaining sources will still be delivered.  To stop receiving data from all "
11990 "sources at once, use B<IP_LEAVE_GROUP>."
11991 msgstr ""
11992 "送信元を指定してグループから抜ける。 つまり、 指定したマルチキャストグループ"
11993 "の指定された送信元からのデータ受信を停止する。 アプリケーションは同じマルチ"
11994 "キャストグループで複数の送信元を購読 (subscribe) している場合には、 残りの送"
11995 "信元からのデータの受信は引き続き配信される。 すべての送信元からのデータ受信を"
11996 "一度で停止するには B<IP_LEAVE_GROUP> を使うこと。"
11997
11998 #. type: TP
11999 #: build/C/man7/ip.7:362
12000 #, no-wrap
12001 msgid "B<IP_FREEBIND> (since Linux 2.4)"
12002 msgstr "B<IP_FREEBIND> (Linux 2.4 以降)"
12003
12004 #.  Precisely: 2.4.0-test10
12005 #. type: Plain text
12006 #: build/C/man7/ip.7:375
12007 msgid ""
12008 "If enabled, this boolean option allows binding to an IP address that is "
12009 "nonlocal or does not (yet) exist.  This permits listening on a socket, "
12010 "without requiring the underlying network interface or the specified dynamic "
12011 "IP address to be up at the time that the application is trying to bind to "
12012 "it.  This option is the per-socket equivalent of the I<ip_nonlocal_bind> I</"
12013 "proc> interface described below."
12014 msgstr ""
12015 "このブール値のオプションを有効にすると、ローカルではない IP アドレスや存在\n"
12016 "しない IP アドレスをバインドできるようになる。これを使うと、対応するネット\n"
12017 "ワークインターフェイスがなかったり、アプリケーションがソケットをバインドしよ"
12018 "うと\n"
12019 "する時点で特定の動的 IP アドレスが有効になっていなかったりしても、ソケット"
12020 "を\n"
12021 "接続待ち状態 (listening) にできるようになる。\n"
12022 "このオプションは、下記に説明がある I<ip_nonlocal_bind> I</proc> インターフェ"
12023 "イス\n"
12024 "のソケット単位の設定である。"
12025
12026 #. type: TP
12027 #: build/C/man7/ip.7:375
12028 #, no-wrap
12029 msgid "B<IP_HDRINCL> (since Linux 2.0)"
12030 msgstr "B<IP_HDRINCL> (Linux 2.0 以降)"
12031
12032 #. type: Plain text
12033 #: build/C/man7/ip.7:391
12034 msgid ""
12035 "If enabled, the user supplies an IP header in front of the user data.  Only "
12036 "valid for B<SOCK_RAW> sockets.  See B<raw>(7)  for more information.  When "
12037 "this flag is enabled the values set by B<IP_OPTIONS>, B<IP_TTL> and "
12038 "B<IP_TOS> are ignored."
12039 msgstr ""
12040 "有効になっていると、ユーザは IP ヘッダをユーザーデータの前に与える。 "
12041 "B<SOCK_RAW> ソケットでのみ有効である。詳細は B<raw>(7)  を見よ。このフラグが"
12042 "有効になっていると、 B<IP_OPTIONS>, B<IP_TTL>, B<IP_TOS> は無視される。"
12043
12044 #. type: TP
12045 #: build/C/man7/ip.7:391
12046 #, no-wrap
12047 msgid "B<IP_MSFILTER> (since Linux 2.4.22 / 2.5.68)"
12048 msgstr "B<IP_MSFILTER> (since Linux 2.4.22 以降 / 2.5.68 以降)"
12049
12050 #. type: Plain text
12051 #: build/C/man7/ip.7:397
12052 msgid ""
12053 "This option provides access to the advanced full-state filtering API.  "
12054 "Argument is an I<ip_msfilter> structure."
12055 msgstr ""
12056 "このオプションを使うと、 高度なフィルタリング API へアクセスできる。 この "
12057 "API ではすべての状態にアクセスできる。 引き数は I<ip_msfilter> 構造体である。"
12058
12059 #. type: Plain text
12060 #: build/C/man7/ip.7:406
12061 #, no-wrap
12062 msgid ""
12063 "struct ip_msfilter {\n"
12064 "    struct in_addr imsf_multiaddr; /* IP multicast group\n"
12065 "                                      address */\n"
12066 "    struct in_addr imsf_interface; /* IP address of local\n"
12067 "                                      interface */\n"
12068 "    uint32_t       imsf_fmode;     /* Filter-mode */\n"
12069 msgstr ""
12070 "struct ip_msfilter {\n"
12071 "    struct in_addr imsf_multiaddr; /* IP multicast group\n"
12072 "                                      address */\n"
12073 "    struct in_addr imsf_interface; /* IP address of local\n"
12074 "                                      interface */\n"
12075 "    uint32_t       imsf_fmode;     /* Filter-mode */\n"
12076
12077 #. type: Plain text
12078 #: build/C/man7/ip.7:412
12079 #, no-wrap
12080 msgid ""
12081 "    uint32_t       imsf_numsrc;    /* Number of sources in\n"
12082 "                                      the following array */\n"
12083 "    struct in_addr imsf_slist[1];  /* Array of source\n"
12084 "                                      addresses */\n"
12085 "};\n"
12086 msgstr ""
12087 "    uint32_t       imsf_numsrc;    /* Number of sources in\n"
12088 "                                      the following array */\n"
12089 "    struct in_addr imsf_slist[1];  /* Array of source\n"
12090 "                                      addresses */\n"
12091 "};\n"
12092
12093 #. type: Plain text
12094 #: build/C/man7/ip.7:427
12095 msgid ""
12096 "There are two macros, B<MCAST_INCLUDE> and B<MCAST_EXCLUDE>, which can be "
12097 "used to specify the filtering mode.  Additionally, the "
12098 "B<IP_MSFILTER_SIZE>(n)  macro exists to determine how much memory is needed "
12099 "to store I<ip_msfilter> structure with I<n> sources in the source list."
12100 msgstr ""
12101 "B<MCAST_INCLUDE> と B<MCAST_EXCLUDE> の 2 つのマクロがあり、 フィルタリング"
12102 "モードを指定するのに使用できる。 また、 B<IP_MSFILTER_SIZE>(n) マクロがあ"
12103 "り、 送信元リストに I<n> 個の送信元が入った I<ip_msfilter> 構造体を格納するの"
12104 "に必要なメモリ量を判定することができる。"
12105
12106 #. type: Plain text
12107 #: build/C/man7/ip.7:430
12108 msgid ""
12109 "For the full description of multicast source filtering refer to RFC 3376."
12110 msgstr "マルチキャスト送信元フィルタリングの全容は RFC\\ 3376 を参照のこと。"
12111
12112 #. type: TP
12113 #: build/C/man7/ip.7:430
12114 #, no-wrap
12115 msgid "B<IP_MTU> (since Linux 2.2)"
12116 msgstr "B<IP_MTU> (Linux 2.2 以降)"
12117
12118 #.  Precisely: 2.1.124
12119 #. type: Plain text
12120 #: build/C/man7/ip.7:438
12121 msgid ""
12122 "Retrieve the current known path MTU of the current socket.  Valid only when "
12123 "the socket has been connected.  Returns an integer.  Only valid as a "
12124 "B<getsockopt>(2)."
12125 msgstr ""
12126 "ソケットの、既知の path MTU を取得する。 ソケットが接続している場合のみ有効で"
12127 "ある。 B<getsockopt>(2)  でのみ使える。"
12128
12129 #. type: TP
12130 #: build/C/man7/ip.7:438
12131 #, no-wrap
12132 msgid "B<IP_MTU_DISCOVER> (since Linux 2.2)"
12133 msgstr "B<IP_MTU_DISCOVER> (Linux 2.2 以降)"
12134
12135 #.  Precisely: 2.1.124
12136 #. type: Plain text
12137 #: build/C/man7/ip.7:459
12138 msgid ""
12139 "Set or receive the Path MTU Discovery setting for a socket.  When enabled, "
12140 "Linux will perform Path MTU Discovery as defined in RFC\\ 1191 on "
12141 "B<SOCK_STREAM> sockets.  For non-B<SOCK_STREAM> sockets, B<IP_PMTUDISC_DO> "
12142 "forces the don't-fragment flag to be set on all outgoing packets.  It is the "
12143 "user's responsibility to packetize the data in MTU-sized chunks and to do "
12144 "the retransmits if necessary.  The kernel will reject (with B<EMSGSIZE>)  "
12145 "datagrams that are bigger than the known path MTU.  B<IP_PMTUDISC_WANT> will "
12146 "fragment a datagram if needed according to the path MTU, or will set the "
12147 "don't-fragment flag otherwise."
12148 msgstr ""
12149 "ソケットの Path MTU Discovery の設定をセット・取得する。\n"
12150 "有効になっていると、Linux は B<SOCK_STREAM> ソケットに対して\n"
12151 "RFC\\ 1191 で定義されている Path MTU Discovery を行う。\n"
12152 "B<SOCK_STREAM> でないソケットについては、 B<IP_PMTUDISC_DO> をセットする"
12153 "と、\n"
12154 "全ての送信パケットでフラグメント不許可フラグ (don't-fragment flag) が必ず\n"
12155 "セットされるようになる。 B<SOCK_STREAM> でないソケットでは、\n"
12156 "パケットを MTU のサイズの塊に分割したり、必要に応じて再送したりするのは、\n"
12157 "ユーザが責任を持って行う必要がある。\n"
12158 "既知の Path MTU よりも大きなデータグラムの送信が要求されると、\n"
12159 "カーネルは (B<EMSGSIZE> で) 送信を拒否する。\n"
12160 "B<IP_PMTUDISC_WANT> の場合は、 Path MTU に基づいて必要であればデータグラム\n"
12161 "の分割が行われ、それ以外の場合はフラグメント不許可フラグがセットされる。"
12162
12163 #. type: Plain text
12164 #: build/C/man7/ip.7:467
12165 msgid ""
12166 "The system-wide default can be toggled between B<IP_PMTUDISC_WANT> and "
12167 "B<IP_PMTUDISC_DONT> by writing (respectively, zero and nonzero values) to "
12168 "the I</proc/sys/net/ipv4/ip_no_pmtu_disc> file."
12169 msgstr ""
12170 "システム全体のデフォルトは B<IP_PMTUDISC_WANT> と B<IP_PMTUDISC_DONT> の\n"
12171 "どちらかに設定することができる。設定の変更は、\n"
12172 "I</proc/sys/net/ipv4/ip_no_pmtu_disc> ファイルに、0 (B<IP_PMTUDISC_WANT>) "
12173 "か\n"
12174 "0 以外 (B<IP_PMTUDISC_DONT>) を書き込むことで行う。"
12175
12176 #. type: tbl table
12177 #: build/C/man7/ip.7:471
12178 #, no-wrap
12179 msgid "Path MTU discovery value:Meaning\n"
12180 msgstr "Path MTU discovery 値:意味\n"
12181
12182 #. type: tbl table
12183 #: build/C/man7/ip.7:472
12184 #, no-wrap
12185 msgid "IP_PMTUDISC_WANT:Use per-route settings.\n"
12186 msgstr "IP_PMTUDISC_WANT:ルートごとの設定を用いる。\n"
12187
12188 #. type: tbl table
12189 #: build/C/man7/ip.7:473
12190 #, no-wrap
12191 msgid "IP_PMTUDISC_DONT:Never do Path MTU Discovery.\n"
12192 msgstr "IP_PMTUDISC_DONT:Path MTU Discovery を行わない。\n"
12193
12194 #. type: tbl table
12195 #: build/C/man7/ip.7:474
12196 #, no-wrap
12197 msgid "IP_PMTUDISC_DO:Always do Path MTU Discovery.\n"
12198 msgstr "IP_PMTUDISC_DO:常に Path MTU Discovery を行う。\n"
12199
12200 #. type: tbl table
12201 #: build/C/man7/ip.7:475
12202 #, no-wrap
12203 msgid "IP_PMTUDISC_PROBE:Set DF but ignore Path MTU.\n"
12204 msgstr "IP_PMTUDISC_PROBE:DFビットをセットするが、Path MTU を無視する。\n"
12205
12206 #. type: Plain text
12207 #: build/C/man7/ip.7:493
12208 msgid ""
12209 "When PMTU discovery is enabled, the kernel automatically keeps track of the "
12210 "path MTU per destination host.  When it is connected to a specific peer with "
12211 "B<connect>(2), the currently known path MTU can be retrieved conveniently "
12212 "using the B<IP_MTU> socket option (e.g., after an B<EMSGSIZE> error "
12213 "occurred).  The path MTU may change over time.  For connectionless sockets "
12214 "with many destinations, the new MTU for a given destination can also be "
12215 "accessed using the error queue (see B<IP_RECVERR>).  A new error will be "
12216 "queued for every incoming MTU update."
12217 msgstr ""
12218 "path MTU discovery が有効になっていると、カーネルは宛先ホストごとに 自動的"
12219 "に\n"
12220 "path MTU を処理する。特定の相手に B<connect>(2) で接続した場合には、\n"
12221 "B<IP_MTU> ソケットオプションを用いれば、既知の path MTU の取得に便利である\n"
12222 "(たとえば B<EMSGSIZE> エラーが起きた後など)。 path MTU は時間とともに変化す"
12223 "る\n"
12224 "かもしれない。 宛先がたくさんあるコネクションレスなソケットでは、 与えられ"
12225 "た\n"
12226 "宛先に対する新しい MTU にも、 エラーキューを用いてアクセスすることができる\n"
12227 "(B<IP_RECVERR> を見よ)。 MTU 更新が到着するごとに、新たなエラーがキューイン"
12228 "グ\n"
12229 "される。"
12230
12231 #. type: Plain text
12232 #: build/C/man7/ip.7:498
12233 msgid ""
12234 "While MTU discovery is in progress, initial packets from datagram sockets "
12235 "may be dropped.  Applications using UDP should be aware of this and not take "
12236 "it into account for their packet retransmit strategy."
12237 msgstr ""
12238 "MTU discovery の進行中には、データグラムソケットからの初期パケットは 到着しな"
12239 "いかもしれない。 UDP を用いるアプリケーションでは、 このことを気にかけてお"
12240 "き、 パケットの再送アルゴリズムにこの分を除外させるべきである。"
12241
12242 #.  FIXME . this is an ugly hack
12243 #. type: Plain text
12244 #: build/C/man7/ip.7:503
12245 msgid ""
12246 "To bootstrap the path MTU discovery process on unconnected sockets, it is "
12247 "possible to start with a big datagram size (up to 64K-headers bytes long) "
12248 "and let it shrink by updates of the path MTU."
12249 msgstr ""
12250 "接続していないソケットに対して path MTU discovery プロセスを立ち上げるには、 "
12251 "大きなデータグラムサイズ (最大 64K ヘッダバイト長) からはじめて、 path MTU が"
12252 "更新されるまでサイズを縮めていくことも可能である。"
12253
12254 #. type: Plain text
12255 #: build/C/man7/ip.7:512
12256 msgid ""
12257 "To get an initial estimate of the path MTU, connect a datagram socket to the "
12258 "destination address using B<connect>(2)  and retrieve the MTU by calling "
12259 "B<getsockopt>(2)  with the B<IP_MTU> option."
12260 msgstr ""
12261 "path MTU の値をまず見積もってみるには、宛先アドレスに B<connect>(2)  を使って"
12262 "データグラムソケットを接続し、 B<getsockopt>(2)  を B<IP_MTU> オプションとと"
12263 "もに呼び、 MTU を取得することである。"
12264
12265 #. type: Plain text
12266 #: build/C/man7/ip.7:524
12267 msgid ""
12268 "It is possible to implement RFC 4821 MTU probing with B<SOCK_DGRAM> or "
12269 "B<SOCK_RAW> sockets by setting a value of B<IP_PMTUDISC_PROBE> (available "
12270 "since Linux 2.6.22).  This is also particularly useful for diagnostic tools "
12271 "such as B<tracepath>(8)  that wish to deliberately send probe packets larger "
12272 "than the observed Path MTU."
12273 msgstr ""
12274 "B<IP_PMTUDISC_PROBE> (Linux 2.6.22 以降で利用可能) を設定することで、 "
12275 "B<SOCK_DGRAM> や B<SOCK_RAW> のソケットで RFC 4821 の MTU 探索を実装すること"
12276 "が可能である。 また、この機能は、 B<tracepath>(8)  のような診断ツールで特に有"
12277 "用である。これらのツールでは、 観測された Path MTU よりも大きな探索パケットを"
12278 "意図的に 送信しようとする。"
12279
12280 #. type: TP
12281 #: build/C/man7/ip.7:524
12282 #, no-wrap
12283 msgid "B<IP_MULTICAST_ALL> (since Linux 2.6.31)"
12284 msgstr "B<IP_MULTICAST_ALL> (Linux 2.6.31 以降)"
12285
12286 #. type: Plain text
12287 #: build/C/man7/ip.7:538
12288 msgid ""
12289 "This option can be used to modify the delivery policy of multicast messages "
12290 "to sockets bound to the wildcard B<INADDR_ANY> address.  The argument is a "
12291 "boolean integer (defaults to 1).  If set to 1, the socket will receive "
12292 "messages from all the groups that have been joined globally on the whole "
12293 "system.  Otherwise, it will deliver messages only from the groups that have "
12294 "been explicitly joined (for example via the B<IP_ADD_MEMBERSHIP> option) on "
12295 "this particular socket."
12296 msgstr ""
12297 "このオプションを使って、 マルチキャストメッセージの、 ワイルドカードの "
12298 "B<INADDR_ANY> アドレスにバインドされているソケットへの 配送ポリシーを変更する"
12299 "ことができる。 引き数はブート値の整数で、 デフォルト値は 1 である。 このオプ"
12300 "ションを 1 に設定されている場合、そのソケットでは、このシステムで参加している"
12301 "すべてのグループからのメッセージが受信される。 それ以外の場合は、そのソケット"
12302 "では、 そのソケットに対して (B<IP_ADD_MEMBERSHIP> などを使って) 明示的に参加"
12303 "が指定されたグループからのメッセージだけが受信される。"
12304
12305 #. type: TP
12306 #: build/C/man7/ip.7:538
12307 #, no-wrap
12308 msgid "B<IP_MULTICAST_IF> (since Linux 1.2)"
12309 msgstr "B<IP_MULTICAST_IF> (Linux 1.2 以降)"
12310
12311 #.  net: IP_MULTICAST_IF setsockopt now recognizes struct mreq
12312 #.  Commit: 3a084ddb4bf299a6e898a9a07c89f3917f0713f7
12313 #. type: Plain text
12314 #: build/C/man7/ip.7:550
12315 msgid ""
12316 "Set the local device for a multicast socket.  Argument is an I<ip_mreqn> or "
12317 "I<ip_mreq> (since Linux 3.5)  structure similar to B<IP_ADD_MEMBERSHIP>."
12318 msgstr ""
12319 "ローカルデバイスをマルチキャストソケットとして設定する。引き数は "
12320 "B<IP_ADD_MEMBERSHIP> と同様に I<ip_mreqn> 構造体か I<ip_mreq> 構造体 (Linux "
12321 "3.5 以降) である。"
12322
12323 #. type: Plain text
12324 #: build/C/man7/ip.7:554
12325 msgid "When an invalid socket option is passed, B<ENOPROTOOPT> is returned."
12326 msgstr "不正なソケットオプションが渡されると、 B<ENOPROTOOPT> が返される。"
12327
12328 #. type: TP
12329 #: build/C/man7/ip.7:554
12330 #, no-wrap
12331 msgid "B<IP_MULTICAST_LOOP> (since Linux 1.2)"
12332 msgstr "B<IP_MULTICAST_LOOP> (Linux 1.2 以降)"
12333
12334 #. type: Plain text
12335 #: build/C/man7/ip.7:558
12336 msgid ""
12337 "Set or read a boolean integer argument that determines whether sent "
12338 "multicast packets should be looped back to the local sockets."
12339 msgstr ""
12340 "マルチキャストパケットをローカルなソケットにループバックするかどうかを 定める"
12341 "ブール値の整数引き数を設定・取得する。"
12342
12343 #. type: TP
12344 #: build/C/man7/ip.7:558
12345 #, no-wrap
12346 msgid "B<IP_MULTICAST_TTL> (since Linux 1.2)"
12347 msgstr "B<IP_MULTICAST_TTL> (Linux 1.2 以降)"
12348
12349 #. type: Plain text
12350 #: build/C/man7/ip.7:566
12351 msgid ""
12352 "Set or read the time-to-live value of outgoing multicast packets for this "
12353 "socket.  It is very important for multicast packets to set the smallest TTL "
12354 "possible.  The default is 1 which means that multicast packets don't leave "
12355 "the local network unless the user program explicitly requests it.  Argument "
12356 "is an integer."
12357 msgstr ""
12358 "このソケットから発信されるマルチキャストパケットの time-to-live 値を設定・取"
12359 "得する。 マルチキャストパケットに対しては、できるだけ小さな TTL に設定するこ"
12360 "とがとても重要である。デフォルトは 1 で、 ユーザープログラムが明示的に要求し"
12361 "ない限り マルチキャストパケットはローカルなネットワークから出ないことにな"
12362 "る。 引き数に整数を取る。"
12363
12364 #. type: TP
12365 #: build/C/man7/ip.7:566
12366 #, no-wrap
12367 msgid "B<IP_NODEFRAG> (since Linux 2.6.36)"
12368 msgstr "B<IP_NODEFRAG> (Linux 2.6.36 以降)"
12369
12370 #. type: Plain text
12371 #: build/C/man7/ip.7:574
12372 msgid ""
12373 "If enabled (argument is nonzero), the reassembly of outgoing packets is "
12374 "disabled in the netfilter layer.  This option is valid only for B<SOCK_RAW> "
12375 "sockets.  The argument is an integer."
12376 msgstr ""
12377 "有効 (引き数が 0 以外の場合) になっていると、netfilter 層での出力パケットの\n"
12378 "再構築 (reassembly) が行われなくなる。このオプションは B<SOCK_RAW> ソケット\n"
12379 "においてのみ有効である。引き数は整数である。"
12380
12381 #. type: TP
12382 #: build/C/man7/ip.7:574
12383 #, no-wrap
12384 msgid "B<IP_OPTIONS> (since Linux 2.0)"
12385 msgstr "B<IP_OPTIONS> (Linux 2.0 以降)"
12386
12387 #.  Precisely: 1.3.30
12388 #. type: Plain text
12389 #: build/C/man7/ip.7:603
12390 msgid ""
12391 "Set or get the IP options to be sent with every packet from this socket.  "
12392 "The arguments are a pointer to a memory buffer containing the options and "
12393 "the option length.  The B<setsockopt>(2)  call sets the IP options "
12394 "associated with a socket.  The maximum option size for IPv4 is 40 bytes.  "
12395 "See RFC\\ 791 for the allowed options.  When the initial connection request "
12396 "packet for a B<SOCK_STREAM> socket contains IP options, the IP options will "
12397 "be set automatically to the options from the initial packet with routing "
12398 "headers reversed.  Incoming packets are not allowed to change options after "
12399 "the connection is established.  The processing of all incoming source "
12400 "routing options is disabled by default and can be enabled by using the "
12401 "I<accept_source_route> I</proc> interface.  Other options like timestamps "
12402 "are still handled.  For datagram sockets, IP options can be only set by the "
12403 "local user.  Calling B<getsockopt>(2)  with B<IP_OPTIONS> puts the current "
12404 "IP options used for sending into the supplied buffer."
12405 msgstr ""
12406 "このソケットから送られるパケット全てに付随する IP オプションを 設定・取得す"
12407 "る。オプションを保存しているメモリバッファへのポインタと オプションの長さとを"
12408 "引き数に取る。 B<setsockopt>(2)  を呼び出すと、ソケットに関連づけられる IP オ"
12409 "プションを設定できる。 IPv4 におけるオプションのサイズの最大値は 40 バイトで"
12410 "ある。 用いることのできるオプションについては RFC\\ 791 を見よ。 "
12411 "B<SOCK_STREAM> ソケットに対する初期接続要求パケットに IP オプションが含まれて"
12412 "いると、 ルーティングヘッダを付けて戻されてくる初期パケットの IP オプションに"
12413 "同じオプションがセットされる。接続が確立された後、 やってきたパケットのオプ"
12414 "ションを変更することはできない。 デフォルトでは。外部から受信したパケットの全"
12415 "ての source routing オプション の処理は無効となっており、 I</proc> インタ"
12416 "フェースの I<accept_source_route> を使うとこれを有効にできる。これを無効にし"
12417 "ていても timestamps など の他のオプションの処理は行われる。データグラムソケッ"
12418 "トでは、 IP オプションはローカルユーザーしか設定できない。 B<getsockopt>(2)  "
12419 "を B<IP_OPTIONS> をつけて呼ぶと、現在送信に用いられている IP オプションを 引"
12420 "き数に与えたバッファに取得できる。"
12421
12422 #. type: TP
12423 #: build/C/man7/ip.7:603
12424 #, no-wrap
12425 msgid "B<IP_PKTINFO> (since Linux 2.2)"
12426 msgstr "B<IP_PKTINFO> (Linux 2.2 以降)"
12427
12428 #.  Precisely: 2.1.68
12429 #. type: Plain text
12430 #: build/C/man7/ip.7:620
12431 msgid ""
12432 "Pass an B<IP_PKTINFO> ancillary message that contains a I<pktinfo> structure "
12433 "that supplies some information about the incoming packet.  This only works "
12434 "for datagram oriented sockets.  The argument is a flag that tells the socket "
12435 "whether the B<IP_PKTINFO> message should be passed or not.  The message "
12436 "itself can only be sent/retrieved as control message with a packet using "
12437 "B<recvmsg>(2)  or B<sendmsg>(2)."
12438 msgstr ""
12439 "B<IP_PKTINFO> 補助メッセージを渡す。これには到着パケットに関する情報を提供す"
12440 "る I<pktinfo> 構造体が含まれている。 データグラム指向のソケットでしか動作しな"
12441 "い。 引き数は B<IP_PKTINFO> メッセージを通過させるかどうかをソケットに知らせ"
12442 "るフラグである。 メッセージ自身は B<recvmsg>(2)  または B<sendmsg>(2)  を用い"
12443 "たパケットの制御メッセージとしてのみ送受信できる。"
12444
12445 #. type: Plain text
12446 #: build/C/man7/ip.7:629
12447 #, no-wrap
12448 msgid ""
12449 "struct in_pktinfo {\n"
12450 "    unsigned int   ipi_ifindex;  /* Interface index */\n"
12451 "    struct in_addr ipi_spec_dst; /* Local address */\n"
12452 "    struct in_addr ipi_addr;     /* Header Destination\n"
12453 "                                    address */\n"
12454 "};\n"
12455 msgstr ""
12456 "struct in_pktinfo {\n"
12457 "    unsigned int   ipi_ifindex;  /* Interface index */\n"
12458 "    struct in_addr ipi_spec_dst; /* Local address */\n"
12459 "    struct in_addr ipi_addr;     /* Header Destination\n"
12460 "                                    address */\n"
12461 "};\n"
12462
12463 #.  FIXME . elaborate on that.
12464 #.  This field is grossly misnamed
12465 #. type: Plain text
12466 #: build/C/man7/ip.7:654
12467 msgid ""
12468 "I<ipi_ifindex> is the unique index of the interface the packet was received "
12469 "on.  I<ipi_spec_dst> is the local address of the packet and I<ipi_addr> is "
12470 "the destination address in the packet header.  If B<IP_PKTINFO> is passed to "
12471 "B<sendmsg>(2)  and I<ipi_spec_dst> is not zero, then it is used as the local "
12472 "source address for the routing table lookup and for setting up IP source "
12473 "route options.  When I<ipi_ifindex> is not zero, the primary local address "
12474 "of the interface specified by the index overwrites I<ipi_spec_dst> for the "
12475 "routing table lookup."
12476 msgstr ""
12477 "I<ipi_ifindex> はパケットが受信されたインターフェースの、他と重ならないイン"
12478 "デックスである。 I<ipi_spec_dst> はパケットのローカルアドレスである。 "
12479 "I<ipi_addr> はパケットヘッダにある宛先アドレスである。 B<IP_PKTINFO> が "
12480 "B<sendmsg>(2)  に渡されて、かつ I<ipi_spec_dst> が 0 以外の場合、 "
12481 "I<ipi_spec_dst> はルーティングテーブルを検索する際にローカルな送信元アドレス"
12482 "として使用され、 IP source route オプションを設定するのにも使用される。 "
12483 "I<ipi_ifindex> が 0 以外の場合、このインデックスによって指定されるインター"
12484 "フェースの プライマリローカルアドレスで I<ipi_spec_dst> を上書きし、ルーティ"
12485 "ングテーブルを検索する。"
12486
12487 #. type: TP
12488 #: build/C/man7/ip.7:654
12489 #, no-wrap
12490 msgid "B<IP_RECVERR> (since Linux 2.2)"
12491 msgstr "B<IP_RECVERR> (Linux 2.2 以降)"
12492
12493 #.  Precisely: 2.1.15
12494 #.  or SOL_IP on Linux
12495 #. type: Plain text
12496 #: build/C/man7/ip.7:676
12497 msgid ""
12498 "Enable extended reliable error message passing.  When enabled on a datagram "
12499 "socket, all generated errors will be queued in a per-socket error queue.  "
12500 "When the user receives an error from a socket operation, the errors can be "
12501 "received by calling B<recvmsg>(2)  with the B<MSG_ERRQUEUE> flag set.  The "
12502 "I<sock_extended_err> structure describing the error will be passed in an "
12503 "ancillary message with the type B<IP_RECVERR> and the level B<IPPROTO_IP>.  "
12504 "This is useful for reliable error handling on unconnected sockets.  The "
12505 "received data portion of the error queue contains the error packet."
12506 msgstr ""
12507 "エラーメッセージの受け渡しに、信頼性の高い拡張された方法を有効にする。 データ"
12508 "グラムソケットに対して有効になっていると、 発生したエラーは全てソケットごとの"
12509 "エラーキューに保存される。 ユーザーはソケット操作からエラーを受け取ったと"
12510 "き、 B<recvmsg>(2)  を B<MSG_ERRQUEUE> フラグとともに呼べばそのエラーを取得で"
12511 "きる。 そのエラーを記述する I<sock_extended_err> 構造体が、タイプ "
12512 "B<IP_RECVERR>・ レベル B<IPPROTO_IP> の補助メッセージとして渡される。 これは"
12513 "接続志向でないソケットで信頼性の高いエラー処理を行いたい場合に 有用である。エ"
12514 "ラーキューの受信データフラグメントには エラーパケットが含まれる。"
12515
12516 #. type: Plain text
12517 #: build/C/man7/ip.7:682
12518 msgid ""
12519 "The B<IP_RECVERR> control message contains a I<sock_extended_err> structure:"
12520 msgstr ""
12521 "B<IP_RECVERR> 制御メッセージには I<sock_extended_err> 構造体が含まれる:"
12522
12523 #. type: Plain text
12524 #: build/C/man7/ip.7:690
12525 #, no-wrap
12526 msgid ""
12527 "#define SO_EE_ORIGIN_NONE    0\n"
12528 "#define SO_EE_ORIGIN_LOCAL   1\n"
12529 "#define SO_EE_ORIGIN_ICMP    2\n"
12530 "#define SO_EE_ORIGIN_ICMP6   3\n"
12531 msgstr ""
12532 "#define SO_EE_ORIGIN_NONE    0\n"
12533 "#define SO_EE_ORIGIN_LOCAL   1\n"
12534 "#define SO_EE_ORIGIN_ICMP    2\n"
12535 "#define SO_EE_ORIGIN_ICMP6   3\n"
12536
12537 #. type: Plain text
12538 #: build/C/man7/ip.7:701
12539 #, no-wrap
12540 msgid ""
12541 "struct sock_extended_err {\n"
12542 "    uint32_t ee_errno;   /* error number */\n"
12543 "    uint8_t  ee_origin;  /* where the error originated */\n"
12544 "    uint8_t  ee_type;    /* type */\n"
12545 "    uint8_t  ee_code;    /* code */\n"
12546 "    uint8_t  ee_pad;\n"
12547 "    uint32_t ee_info;    /* additional information */\n"
12548 "    uint32_t ee_data;    /* other data */\n"
12549 "    /* More data may follow */\n"
12550 "};\n"
12551 msgstr ""
12552 "struct sock_extended_err {\n"
12553 "    uint32_t ee_errno;   /* error number */\n"
12554 "    uint8_t  ee_origin;  /* where the error originated */\n"
12555 "    uint8_t  ee_type;    /* type */\n"
12556 "    uint8_t  ee_code;    /* code */\n"
12557 "    uint8_t  ee_pad;\n"
12558 "    uint32_t ee_info;    /* additional information */\n"
12559 "    uint32_t ee_data;    /* other data */\n"
12560 "    /* More data may follow */\n"
12561 "};\n"
12562
12563 #. type: Plain text
12564 #: build/C/man7/ip.7:703
12565 #, no-wrap
12566 msgid "struct sockaddr *SO_EE_OFFENDER(struct sock_extended_err *);\n"
12567 msgstr "struct sockaddr *SO_EE_OFFENDER(struct sock_extended_err *);\n"
12568
12569 #. type: Plain text
12570 #: build/C/man7/ip.7:726
12571 msgid ""
12572 "I<ee_errno> contains the I<errno> number of the queued error.  I<ee_origin> "
12573 "is the origin code of where the error originated.  The other fields are "
12574 "protocol-specific.  The macro B<SO_EE_OFFENDER> returns a pointer to the "
12575 "address of the network object where the error originated from given a "
12576 "pointer to the ancillary message.  If this address is not known, the "
12577 "I<sa_family> member of the I<sockaddr> contains B<AF_UNSPEC> and the other "
12578 "fields of the I<sockaddr> are undefined."
12579 msgstr ""
12580 "I<ee_errno> にはキューに入っているエラーの I<errno> 番号が入る。 "
12581 "I<ee_origin> にはエラーが発生した場所を示すコードが入る。 その他のフィールド"
12582 "はプロトコル依存である。 B<SO_EE_OFFENDER> マクロは与えられた補助メッセージへ"
12583 "のポインタから エラーの発生したネットワークオブジェクトのアドレスへのポインタ"
12584 "を返す。 アドレスが不明な場合、 I<sockaddr> 構造体の I<sa_family> フィールド"
12585 "は B<AF_UNSPEC> となり、その他のフィールド値は不定である。"
12586
12587 #.  FIXME . Is it a good idea to document that? It is a dubious feature.
12588 #.  On
12589 #.  .B SOCK_STREAM
12590 #.  sockets,
12591 #.  .B IP_RECVERR
12592 #.  has slightly different semantics. Instead of
12593 #.  saving the errors for the next timeout, it passes all incoming
12594 #.  errors immediately to the user.
12595 #.  This might be useful for very short-lived TCP connections which
12596 #.  need fast error handling. Use this option with care:
12597 #.  it makes TCP unreliable
12598 #.  by not allowing it to recover properly from routing
12599 #.  shifts and other normal
12600 #.  conditions and breaks the protocol specification.
12601 #. type: Plain text
12602 #: build/C/man7/ip.7:785
12603 msgid ""
12604 "IP uses the I<sock_extended_err> structure as follows: I<ee_origin> is set "
12605 "to B<SO_EE_ORIGIN_ICMP> for errors received as an ICMP packet, or "
12606 "B<SO_EE_ORIGIN_LOCAL> for locally generated errors.  Unknown values should "
12607 "be ignored.  I<ee_type> and I<ee_code> are set from the type and code fields "
12608 "of the ICMP header.  I<ee_info> contains the discovered MTU for B<EMSGSIZE> "
12609 "errors.  The message also contains the I<sockaddr_in of the node> caused the "
12610 "error, which can be accessed with the B<SO_EE_OFFENDER> macro.  The "
12611 "I<sin_family> field of the B<SO_EE_OFFENDER> address is B<AF_UNSPEC> when "
12612 "the source was unknown.  When the error originated from the network, all IP "
12613 "options (B<IP_OPTIONS>, B<IP_TTL>, etc.) enabled on the socket and contained "
12614 "in the error packet are passed as control messages.  The payload of the "
12615 "packet causing the error is returned as normal payload.  Note that TCP has "
12616 "no error queue; B<MSG_ERRQUEUE> is not permitted on B<SOCK_STREAM> sockets.  "
12617 "B<IP_RECVERR> is valid for TCP, but all errors are returned by socket "
12618 "function return or B<SO_ERROR> only."
12619 msgstr ""
12620 "IP は以下のような I<sock_extended_err> 構造体を用いる: I<ee_origin> は、エ"
12621 "ラー\n"
12622 "が ICMP パケットとして受信された場合には B<SO_EE_ORIGIN_ICMP> にセットさ"
12623 "れ、\n"
12624 "ローカルで起こった場合には B<SO_EE_ORIGIN_LOCAL> にセットされる。 不明な値"
12625 "は\n"
12626 "無視される。 I<ee_type> と I<ee_code> は ICMP ヘッダの type フィールドと\n"
12627 "code フィールドの値にセットされる。 I<ee_info> には B<EMSGSIZE> エラーに対"
12628 "す\n"
12629 "る discover された MTU が入る。 メッセージにはエラーを引き起こしたノードの\n"
12630 "I<sockaddr_in> 構造体も含まれる。 これには B<SO_EE_OFFENDER> マクロを使って"
12631 "ア\n"
12632 "クセスできる。 ソースが不明の場合、 B<SO_EE_OFFENDER> アドレスの\n"
12633 "I<sin_family> フィールドは B<AF_UNSPEC> となる。 エラーがネットワークで起き"
12634 "た\n"
12635 "場合には、 ソケットで有効になっていたすべての IP オプション (B<IP_OPTIONS>,\n"
12636 "B<IP_TTL> など) とエラーパケットに含まれていたすべての IP オプションとが、 "
12637 "制\n"
12638 "御メッセージとして渡される。 エラーを起こしたパケットのペイロード (payload)\n"
12639 "は 普通のペイロードとして返される。 TCP にはエラーキューがないことに注意し"
12640 "て\n"
12641 "ほしい。 B<MSG_ERRQUEUE> は B<SOCK_STREAM> ソケットに対しては使えない。 TCP\n"
12642 "では B<IP_RECVERR> だけが有効だが、ソケット関数から返されるエラーは\n"
12643 "B<SO_ERROR> だけになる。"
12644
12645 #. type: Plain text
12646 #: build/C/man7/ip.7:790
12647 msgid ""
12648 "For raw sockets, B<IP_RECVERR> enables passing of all received ICMP errors "
12649 "to the application, otherwise errors are only reported on connected sockets"
12650 msgstr ""
12651 "raw ソケットに対して B<IP_RECVERR> を指定すると、受信したすべての ICMP エラー"
12652 "をアプリケーションに 渡すようになる。指定しないと、 接続済みのソケットに対す"
12653 "るエラーだけを報告する。"
12654
12655 #. type: Plain text
12656 #: build/C/man7/ip.7:794
12657 msgid ""
12658 "It sets or retrieves an integer boolean flag.  B<IP_RECVERR> defaults to off."
12659 msgstr ""
12660 "このオプションはブール値のフラグを設定・取得する。 B<IP_RECVERR> はデフォルト"
12661 "ではオフになっている。"
12662
12663 #. type: TP
12664 #: build/C/man7/ip.7:794
12665 #, no-wrap
12666 msgid "B<IP_RECVOPTS> (since Linux 2.2)"
12667 msgstr "B<IP_RECVOPTS> (Linux 2.2 以降)"
12668
12669 #.  Precisely: 2.1.15
12670 #. type: Plain text
12671 #: build/C/man7/ip.7:805
12672 msgid ""
12673 "Pass all incoming IP options to the user in a B<IP_OPTIONS> control "
12674 "message.  The routing header and other options are already filled in for the "
12675 "local host.  Not supported for B<SOCK_STREAM> sockets."
12676 msgstr ""
12677 "到着した全ての IP オプションを B<IP_OPTION> コントロールメッセージに入れて"
12678 "ユーザーに渡す。 ルーティングヘッダとその他のオプションとは、 ローカルホスト"
12679 "に対してはあらかじめ記入されている。 B<SOCK_STREAM> ソケットではサポートされ"
12680 "ていない。"
12681
12682 #. type: TP
12683 #: build/C/man7/ip.7:805
12684 #, no-wrap
12685 msgid "B<IP_RECVORIGDSTADDR> (since Linux 2.6.29)"
12686 msgstr "B<IP_RECVORIGDSTADDR> (Linux 2.6.29 以降)"
12687
12688 #.  commit e8b2dfe9b4501ed0047459b2756ba26e5a940a69
12689 #. type: Plain text
12690 #: build/C/man7/ip.7:816
12691 msgid ""
12692 "This boolean option enables the B<IP_ORIGDSTADDR> ancillary message in "
12693 "B<recvmsg>(2), in which the kernel returns the original destination address "
12694 "of the datagram being received.  The ancillary message contains a I<struct "
12695 "sockaddr_in>."
12696 msgstr ""
12697 "このブール値のオプションがセットされると、\n"
12698 "B<recvmsg>(2) で B<IP_ORIGDSTADDR> 補助メッセージが有効になる。\n"
12699 "カーネルはデータグラムを受信した元の宛先アドレスをこの補助メッセージで返"
12700 "す。\n"
12701 "この補助メッセージには I<struct sockaddr_in> が格納される。"
12702
12703 #. type: TP
12704 #: build/C/man7/ip.7:816
12705 #, no-wrap
12706 msgid "B<IP_RECVTOS> (since Linux 2.2)"
12707 msgstr "B<IP_RECVTOS> (Linux 2.2 以降)"
12708
12709 #.  Precisely: 2.1.68
12710 #. type: Plain text
12711 #: build/C/man7/ip.7:825
12712 msgid ""
12713 "If enabled, the B<IP_TOS> ancillary message is passed with incoming "
12714 "packets.  It contains a byte which specifies the Type of Service/Precedence "
12715 "field of the packet header.  Expects a boolean integer flag."
12716 msgstr ""
12717 "有効になっていると、 B<IP_TOS> 補助メッセージが到着パケットとともに渡され"
12718 "る。 これにはパケットヘッダの Service/Precedence フィールドのタイプを指定する"
12719 "バイトデータが含まれている。 ブール整数値のフラグをとる。"
12720
12721 #. type: TP
12722 #: build/C/man7/ip.7:825
12723 #, no-wrap
12724 msgid "B<IP_RECVTTL> (since Linux 2.2)"
12725 msgstr "B<IP_RECVTTL> (Linux 2.2 以降)"
12726
12727 #.  Precisely: 2.1.68
12728 #. type: Plain text
12729 #: build/C/man7/ip.7:835
12730 msgid ""
12731 "When this flag is set, pass a B<IP_TTL> control message with the time to "
12732 "live field of the received packet as a byte.  Not supported for "
12733 "B<SOCK_STREAM> sockets."
12734 msgstr ""
12735 "このフラグがセットされていると、 B<IP_TTL> コントロールメッセージが受信パケッ"
12736 "トの time-to-live フィールドのバイトデータとともに渡される。 B<SOCK_STREAM> "
12737 "ソケットではサポートされていない。"
12738
12739 #. type: TP
12740 #: build/C/man7/ip.7:835
12741 #, no-wrap
12742 msgid "B<IP_RETOPTS> (since Linux 2.2)"
12743 msgstr "B<IP_RETOPTS>"
12744
12745 #.  Precisely: 2.1.15
12746 #. type: Plain text
12747 #: build/C/man7/ip.7:842
12748 msgid ""
12749 "Identical to B<IP_RECVOPTS>, but returns raw unprocessed options with "
12750 "timestamp and route record options not filled in for this hop."
12751 msgstr ""
12752 "B<IP_RETOPTS> (Linux 2.2 以降)  B<IP_RECVOPTS> と等価だが、未処理の生のオプ"
12753 "ションを、 この hop では記入されない timestamp レコードと route レコードとと"
12754 "もに返す。"
12755
12756 #. type: TP
12757 #: build/C/man7/ip.7:842
12758 #, no-wrap
12759 msgid "B<IP_ROUTER_ALERT> (since Linux 2.2)"
12760 msgstr "B<IP_ROUTER_ALERT> (Linux 2.2 以降)"
12761
12762 #.  Precisely: 2.1.68
12763 #. type: Plain text
12764 #: build/C/man7/ip.7:854
12765 msgid ""
12766 "Pass all to-be forwarded packets with the IP Router Alert option set to this "
12767 "socket.  Only valid for raw sockets.  This is useful, for instance, for user-"
12768 "space RSVP daemons.  The tapped packets are not forwarded by the kernel; it "
12769 "is the user's responsibility to send them out again.  Socket binding is "
12770 "ignored, such packets are only filtered by protocol.  Expects an integer "
12771 "flag."
12772 msgstr ""
12773 "フォワードすべきパケットを IP Router Alert オプションをつけて このソケットに"
12774 "渡す。 raw ソケットに対してのみ有効である。これはたとえばユーザー空間の RSVP "
12775 "デーモンに対して便利である。タップされたパケットは カーネルによってはフォワー"
12776 "ドされないので、これらを再送するのは ユーザーの責任となる。ソケットのバインド"
12777 "は無視され、 このようなパケットはプロトコルによってのみフィルタリングされ"
12778 "る。 整数値のフラグを取る。"
12779
12780 #. type: TP
12781 #: build/C/man7/ip.7:854
12782 #, no-wrap
12783 msgid "B<IP_TOS> (since Linux 1.0)"
12784 msgstr "B<IP_TOS> (Linux 1.0 以降)"
12785
12786 #.  FIXME elaborate on this
12787 #.  Needs CAP_NET_ADMIN
12788 #.  Boolean
12789 #.  Since Linux 2.6.27
12790 #.  Author: KOVACS Krisztian <hidden@sch.bme.hu>
12791 #.  http://lwn.net/Articles/252545/
12792 #. type: Plain text
12793 #: build/C/man7/ip.7:888
12794 msgid ""
12795 "Set or receive the Type-Of-Service (TOS) field that is sent with every IP "
12796 "packet originating from this socket.  It is used to prioritize packets on "
12797 "the network.  TOS is a byte.  There are some standard TOS flags defined: "
12798 "B<IPTOS_LOWDELAY> to minimize delays for interactive traffic, "
12799 "B<IPTOS_THROUGHPUT> to optimize throughput, B<IPTOS_RELIABILITY> to optimize "
12800 "for reliability, B<IPTOS_MINCOST> should be used for \"filler data\" where "
12801 "slow transmission doesn't matter.  At most one of these TOS values can be "
12802 "specified.  Other bits are invalid and shall be cleared.  Linux sends "
12803 "B<IPTOS_LOWDELAY> datagrams first by default, but the exact behavior depends "
12804 "on the configured queueing discipline.  Some high priority levels may "
12805 "require superuser privileges (the B<CAP_NET_ADMIN> capability).  The "
12806 "priority can also be set in a protocol independent way by the "
12807 "(B<SOL_SOCKET>, B<SO_PRIORITY>)  socket option (see B<socket>(7))."
12808 msgstr ""
12809 "このソケットから送信されるすべての IP パケットに適用される Type-Of-Service "
12810 "(TOS) フィールドを設定・取得する。 これはネットワーク上でのパケットの優先度を"
12811 "決めるために用いられる。 TOS はバイトデータである。標準の TOS フラグがいくつ"
12812 "か定義されている。 B<IPTOS_LOWDELAY> はインタラクティブなトラフィックの遅延を"
12813 "最小にする。 B<IPTOS_THROUGHPUT> はスループットを最大にする。 "
12814 "B<IPTOS_RELIABILITY> は信頼性を最高にする。 B<IPTOS_MINCOST> は転送速度が遅く"
12815 "てもかまわないとき、「データを詰め込む」のに用いられる。 これらのうち、 1 つ"
12816 "までだけを設定できる。 他のビットは無効で、クリアされる。 Linux はデフォルト"
12817 "では B<IPTOS_LOWDELAY> データグラムを最初に送信する。 しかし、正確な振る舞い"
12818 "はキュー処理の設定に依存する。 高い優先度にするにはスーパーユーザー権限 "
12819 "(B<CAP_NET_ADMIN> ケーパビリティ) が必要となるかもしれない。 優先度は "
12820 "(B<SOL_SOCKET>, B<SO_PRIORITY>)  ソケットオプションを用いれば、 プロトコルに"
12821 "依存しない形でも設定できる (B<socket>(7)  を見よ)。"
12822
12823 #. type: TP
12824 #: build/C/man7/ip.7:888
12825 #, no-wrap
12826 msgid "B<IP_TRANSPARENT> (since Linux 2.6.24)"
12827 msgstr "B<IP_TRANSPARENT> (Linux 2.6.24 以降)"
12828
12829 #.  commit f5715aea4564f233767ea1d944b2637a5fd7cd2e
12830 #.      This patch introduces the IP_TRANSPARENT socket option: enabling that
12831 #.      will make the IPv4 routing omit the non-local source address check on
12832 #.      output. Setting IP_TRANSPARENT requires NET_ADMIN capability.
12833 #.  http://lwn.net/Articles/252545/
12834 #. type: Plain text
12835 #: build/C/man7/ip.7:908
12836 msgid ""
12837 "Setting this boolean option enables transparent proxying on this socket.  "
12838 "This socket option allows the calling application to bind to a nonlocal IP "
12839 "address and operate both as a client and a server with the foreign address "
12840 "as the local endpoint.  NOTE: this requires that routing be set up in a way "
12841 "that packets going to the foreign address are routed through the TProxy box "
12842 "(i.e., the system hosting the application that employs the B<IP_TRANSPARENT> "
12843 "socket option).  Enabling this socket option requires superuser privileges "
12844 "(the B<CAP_NET_ADMIN> capability)."
12845 msgstr ""
12846 "このブール値のオプションを有効にすると、 このソケットで透過プロキシ "
12847 "(transparent proxy) ができるようになる。 このソケットオプションを使うと、呼び"
12848 "出したアプリケーションは、 ローカルではない IP アドレスをバインドして、ローカ"
12849 "ルの端点として自分以外のアドレス (foreign address) を持つクライアントやサーバ"
12850 "の両方として動作できるようになる。 B<注意>: この機能が動作するためには、自分"
12851 "以外のアドレス宛のパケットが透過プロキシが動作するマシン (すなわちソケットオ"
12852 "プション B<IP_TRANSPARENT> を利用するアプリケーションが動作しているシステム) "
12853 "経由で転送されるように、 ルーティングが設定される必要がある。 このソケットオ"
12854 "プションを有効にするには、スーパーユーザ特権 (B<CAP_NET_ADMIN> ケーパビリ"
12855 "ティ) が必要である。"
12856
12857 #. type: Plain text
12858 #: build/C/man7/ip.7:911
12859 msgid ""
12860 "TProxy redirection with the iptables TPROXY target also requires that this "
12861 "option be set on the redirected socket."
12862 msgstr ""
12863 "iptables の TPROXY ターゲットで透過プロキシリダイレクション \n"
12864 "(TProxy redirection) を行うには、リダイレクトされるソケットに対して\n"
12865 "このオプションを設定する必要がある。"
12866
12867 #. type: TP
12868 #: build/C/man7/ip.7:911
12869 #, no-wrap
12870 msgid "B<IP_TTL> (since Linux 1.0)"
12871 msgstr "B<IP_TTL> (Linux 1.0 以降)"
12872
12873 #. type: Plain text
12874 #: build/C/man7/ip.7:915
12875 msgid ""
12876 "Set or retrieve the current time-to-live field that is used in every packet "
12877 "sent from this socket."
12878 msgstr ""
12879 "time-to-live フィールドの値を設定または取得する。 この値はこのソケットから送"
12880 "信されるすべてのパケットに用いられる。"
12881
12882 #. type: TP
12883 #: build/C/man7/ip.7:915
12884 #, no-wrap
12885 msgid "B<IP_UNBLOCK_SOURCE> (since Linux 2.4.22 / 2.5.68)"
12886 msgstr "B<IP_UNBLOCK_SOURCE> (Linux 2.4.22 以降 / 2.5.68 以降)"
12887
12888 #. type: Plain text
12889 #: build/C/man7/ip.7:921
12890 msgid ""
12891 "Unblock previously blocked multicast source.  Returns B<EADDRNOTAVAIL> when "
12892 "given source is not being blocked."
12893 msgstr ""
12894 "それ以前はブロックされていたマルチキャストの送信元のブロックを解除する。 指定"
12895 "した送信元がブロックされていない場合は B<EADDRNOTAVAIL> を返す。"
12896
12897 #.  FIXME As at 2.6.12, 14 Jun 2005, the following are undocumented:
12898 #.      ip_queue_maxlen
12899 #.      ip_conntrack_max
12900 #. type: Plain text
12901 #: build/C/man7/ip.7:942
12902 msgid ""
12903 "The IP protocol supports a set of I</proc> interfaces to configure some "
12904 "global parameters.  The parameters can be accessed by reading or writing "
12905 "files in the directory I</proc/sys/net/ipv4/>.  Interfaces described as "
12906 "I<Boolean> take an integer value, with a nonzero value (\"true\") meaning "
12907 "that the corresponding option is enabled, and a zero value (\"false\")  "
12908 "meaning that the option is disabled."
12909 msgstr ""
12910 "IP プロトコルでは、いくつかのグローバルパラメータを設定するための I</proc> "
12911 "ファイル群が用意されている。 これらのパラメータには、 I</proc/sys/net/ipv4/> "
12912 "ディレクトリ内のファイルの読み書きでアクセスできる。 I<Boolean> と書かれたイ"
12913 "ンタフェースは整数値をとり、 0 以外の値 (\"true\") は対応するオプションが有"
12914 "効、 0 値 (\"false\") は無効、であることを意味する。"
12915
12916 #. type: TP
12917 #: build/C/man7/ip.7:942
12918 #, no-wrap
12919 msgid "I<ip_always_defrag> (Boolean; since Linux 2.2.13)"
12920 msgstr "I<ip_always_defrag> (Boolean; Linux 2.2.13 以降)"
12921
12922 #. type: Plain text
12923 #: build/C/man7/ip.7:948
12924 msgid ""
12925 "[New with kernel 2.2.13; in earlier kernel versions this feature was "
12926 "controlled at compile time by the B<CONFIG_IP_ALWAYS_DEFRAG> option; this "
12927 "option is not present in 2.4.x and later]"
12928 msgstr ""
12929 "[2.2.13 で新規登場。以前のバージョンのカーネルでは、この機能は コンパイル時"
12930 "に B<CONFIG_IP_ALWAYS_DEFRAG> オプションによって制御されていた; このファイル"
12931 "は 2.4.x 以降では存在しない]"
12932
12933 #. type: Plain text
12934 #: build/C/man7/ip.7:955
12935 msgid ""
12936 "When this boolean flag is enabled (not equal 0), incoming fragments (parts "
12937 "of IP packets that arose when some host between origin and destination "
12938 "decided that the packets were too large and cut them into pieces) will be "
12939 "reassembled (defragmented) before being processed, even if they are about to "
12940 "be forwarded."
12941 msgstr ""
12942 "このブール値のフラグが有効になっている (0 以外になっている) と、 到着したフラ"
12943 "グメント (IP パケットの一部で、 発信元と発信先の間のどこかのホストで、そのパ"
12944 "ケットが 大きすぎると判断され、分割された場合に生じる)  は、たとえフォワード"
12945 "される場合であっても 処理前に再構築 (デフラグメント) される。"
12946
12947 #. type: Plain text
12948 #: build/C/man7/ip.7:962
12949 msgid ""
12950 "Only enable if running either a firewall that is the sole link to your "
12951 "network or a transparent proxy; never ever use it for a normal router or "
12952 "host.  Otherwise, fragmented communication can be disturbed if the fragments "
12953 "travel over different links.  Defragmentation also has a large memory and "
12954 "CPU time cost."
12955 msgstr ""
12956 "ファイアウォールがローカル側のネットワークに唯一のリンクを持っている 場合や、"
12957 "透過プロクシの場合に限って有効にすべきである。 通常のルーターやホストでは決し"
12958 "て使用することのないように。 さもないとフラグメントが別のリンクを経由して伝わ"
12959 "る場合に、 通信のフラグメント化ができなくなってしまう。 またフラグメント再構"
12960 "築処理はメモリと CPU 時間のコストが非常に大きい。"
12961
12962 #. type: Plain text
12963 #: build/C/man7/ip.7:966
12964 msgid ""
12965 "This is automagically turned on when masquerading or transparent proxying "
12966 "are configured."
12967 msgstr ""
12968 "これはマスカレードや透過プロクシが設定されると、 不思議な仕組みによって自動的"
12969 "に有効になる。"
12970
12971 #. type: TP
12972 #: build/C/man7/ip.7:966
12973 #, no-wrap
12974 msgid "I<ip_autoconfig> (since Linux 2.2 to 2.6.17)"
12975 msgstr "I<ip_autoconfig> (Linux 2.2 以降 2.6.17 まで)"
12976
12977 #.  Precisely: since 2.1.68
12978 #.  FIXME document ip_autoconfig
12979 #. type: Plain text
12980 #: build/C/man7/ip.7:972
12981 msgid "Not documented."
12982 msgstr "まだ記述していない。"
12983
12984 #. type: TP
12985 #: build/C/man7/ip.7:972
12986 #, no-wrap
12987 msgid "I<ip_default_ttl> (integer; default: 64; since Linux 2.2)"
12988 msgstr "I<ip_default_ttl> (integer; default: 64; Linux 2.2 以降)"
12989
12990 #.  Precisely: 2.1.15
12991 #. type: Plain text
12992 #: build/C/man7/ip.7:980
12993 msgid ""
12994 "Set the default time-to-live value of outgoing packets.  This can be changed "
12995 "per socket with the B<IP_TTL> option."
12996 msgstr ""
12997 "送出されるパケットの time-to-live 値のデフォルトをセットする。 これは "
12998 "B<IP_TTL> オプションを用いれば、パケットごとに変えることもできる。"
12999
13000 #. type: TP
13001 #: build/C/man7/ip.7:980
13002 #, no-wrap
13003 msgid "I<ip_dynaddr> (Boolean; default: disabled; since Linux 2.0.31)"
13004 msgstr "I<ip_dynaddr> (ブール値; デフォルト: 無効; Linux 2.0.31 以降)"
13005
13006 #. type: Plain text
13007 #: build/C/man7/ip.7:987
13008 msgid ""
13009 "Enable dynamic socket address and masquerading entry rewriting on interface "
13010 "address change.  This is useful for dialup interface with changing IP "
13011 "addresses.  0 means no rewriting, 1 turns it on and 2 enables verbose mode."
13012 msgstr ""
13013 "動的ソケットアドレスと、インターフェースアドレスが変更された際の マスカレード"
13014 "エントリの再書き込みを有効にする。 ダイアルアップインターフェースで、 IP アド"
13015 "レスが変更される場合に便利である。"
13016
13017 #. type: TP
13018 #: build/C/man7/ip.7:987
13019 #, no-wrap
13020 msgid "I<ip_forward> (Boolean; default: disabled; since Linux 1.2)"
13021 msgstr "I<ip_forward> (ブール値; デフォルト: 無効; Linux 1.2 以降)"
13022
13023 #. type: Plain text
13024 #: build/C/man7/ip.7:992
13025 msgid ""
13026 "Enable IP forwarding with a boolean flag.  IP forwarding can be also set on "
13027 "a per-interface basis."
13028 msgstr ""
13029 "IP forwarding を有効にするかどうかのブール値フラグ。 IP forwarding するかどう"
13030 "かはインターフェースごとにも設定できる。"
13031
13032 #. type: TP
13033 #: build/C/man7/ip.7:992
13034 #, no-wrap
13035 msgid "I<ip_local_port_range> (since Linux 2.2)"
13036 msgstr "I<ip_local_port_range> (Linux 2.2 以降)"
13037
13038 #.  Precisely: since 2.1.68
13039 #. type: Plain text
13040 #: build/C/man7/ip.7:1000
13041 msgid ""
13042 "This file contains two integers that define the default local port range "
13043 "allocated to sockets that are not explicitly bound to a port number\\(emthat "
13044 "is, the range used for I<ephemeral ports>.  An ephemeral port is allocated "
13045 "to a socket in the following circumstances:"
13046 msgstr ""
13047 "このファイルには、 ポート番号に明示的にバインドされないソケットに割り当てられ"
13048 "るデフォルトのローカルポートの範囲 \\(em つまり「一時ポート (I<ephemeral "
13049 "ports>)」に使用される範囲 \\(em を定める 2 つの整数が入っている。 一時ポート"
13050 "は以下の場合にソケットに割り当てられる。"
13051
13052 #. type: Plain text
13053 #: build/C/man7/ip.7:1004
13054 msgid ""
13055 "the port number in a socket address is specified as 0 when calling "
13056 "B<bind>(2);"
13057 msgstr ""
13058 "B<bind>(2) の呼び出し時にソケットアドレスのポート番号に 0 が指定されている。"
13059
13060 #. type: Plain text
13061 #: build/C/man7/ip.7:1007
13062 msgid ""
13063 "B<listen>(2)  is called on a stream socket that was not previously bound;"
13064 msgstr ""
13065 "バインドされていないストリームソケットに対して B<listen>(2) が呼び出された。"
13066
13067 #. type: Plain text
13068 #: build/C/man7/ip.7:1010
13069 msgid "B<connect>(2)  was called on a socket that was not previously bound;"
13070 msgstr "バインドされていないソケットに対して B<connect>(2)  が呼ばれた。"
13071
13072 #. type: Plain text
13073 #: build/C/man7/ip.7:1013
13074 msgid ""
13075 "B<sendto>(2)  is called on a datagram socket that was not previously bound."
13076 msgstr ""
13077 "バインドされていないデータグラムソケットに対して B<sendto>(2)  が呼ばれた。"
13078
13079 #. type: Plain text
13080 #: build/C/man7/ip.7:1020
13081 msgid ""
13082 "Allocation of ephemeral ports starts with the first number in "
13083 "I<ip_local_port_range> and ends with the second number.  If the range of "
13084 "ephemeral ports is exhausted, then the relevant system call returns an error "
13085 "(but see BUGS)."
13086 msgstr ""
13087 "一時ポートに割り当てられるポート番号の範囲は、 I<ip_local_port_range> の最初"
13088 "の数字から始まり、 2 番目の数字で終わる。 一時ポートの範囲を使い切った場合、 "
13089 "関連するシステムコールはエラーを返す (バグの節を参照)。"
13090
13091 #. type: Plain text
13092 #: build/C/man7/ip.7:1031
13093 msgid ""
13094 "Note that the port range in I<ip_local_port_range> should not conflict with "
13095 "the ports used by masquerading (although the case is handled).  Also, "
13096 "arbitrary choices may cause problems with some firewall packet filters that "
13097 "make assumptions about the local ports in use.  The first number should be "
13098 "at least greater than 1024, or better, greater than 4096, to avoid clashes "
13099 "with well known ports and to minimize firewall problems."
13100 msgstr ""
13101 "I<ip_local_port_range> で指定するポート番号の範囲は、 マスカレードで用いられ"
13102 "ているポートと重なってはならない (その場合も取り扱われるが)。 ファイアウォー"
13103 "ルのパケットフィルターが「利用中のローカルポート」 について何らかの仮定をして"
13104 "いる場合には、 番号を勝手に決めてしまうと問題が起きるかもしれない。 1 番目の"
13105 "番号は少なくとも 1024 より大きくすべきである。 良く使われるポートとの衝突を避"
13106 "けたり、ファイアウォールの問題を 回避したければ、 4096 よりも大きくするほうが"
13107 "良いだろう。"
13108
13109 #. type: TP
13110 #: build/C/man7/ip.7:1031
13111 #, no-wrap
13112 msgid "I<ip_no_pmtu_disc> (Boolean; default: disabled; since Linux 2.2)"
13113 msgstr "I<ip_no_pmtu_disc> (ブール値; デフォルト: 無効; Linux 2.2 以降)"
13114
13115 #.  Precisely: 2.1.15
13116 #.  The following is from 2.6.12: Documentation/networking/ip-sysctl.txt
13117 #. type: Plain text
13118 #: build/C/man7/ip.7:1043
13119 msgid ""
13120 "If enabled, don't do Path MTU Discovery for TCP sockets by default.  Path "
13121 "MTU discovery may fail if misconfigured firewalls (that drop all ICMP "
13122 "packets) or misconfigured interfaces (e.g., a point-to-point link where the "
13123 "both ends don't agree on the MTU) are on the path.  It is better to fix the "
13124 "broken routers on the path than to turn off Path MTU Discovery globally, "
13125 "because not doing it incurs a high cost to the network."
13126 msgstr ""
13127 "有効になっていると、デフォルトで TCP ソケットに対する Path MTU Discoverty を"
13128 "行わない。 Path MTU Discovery は、 正しく設定されていない (ICMP パケットを全"
13129 "てドロップする) ファイアウォールや、 (point-to-point リンクで双方の MTU が一"
13130 "致していない場合など)  正しく設定されていないインターフェースが経路上に存在す"
13131 "ると失敗してしまう。 Path MTU Discovery をグローバルに無効にするよりは、 壊れ"
13132 "ているルータを直すほうが良い。 Path MTU Discovery を無効にするとネットワーク"
13133 "のコストが 大きくなってしまうからである。"
13134
13135 #. type: TP
13136 #: build/C/man7/ip.7:1043
13137 #, no-wrap
13138 msgid "I<ip_nonlocal_bind> (Boolean; default: disabled; since Linux 2.4)"
13139 msgstr "I<ip_nonlocal_bind> (ブール値; デフォルト: 無効; Linux 2.4 以降)"
13140
13141 #.  Precisely: patch-2.4.0-test10
13142 #.  The following is from 2.6.12: Documentation/networking/ip-sysctl.txt
13143 #. type: Plain text
13144 #: build/C/man7/ip.7:1052
13145 msgid ""
13146 "If set, allows processes to B<bind>(2)  to nonlocal IP addresses, which can "
13147 "be quite useful, but may break some applications."
13148 msgstr ""
13149 "セットされていれば、プロセスが自分以外の IP アドレスを B<bind>(2)  できるよう"
13150 "になる。これはかなり便利だが、うまく動かないアプリケーションもある。"
13151
13152 #. type: TP
13153 #: build/C/man7/ip.7:1052
13154 #, no-wrap
13155 msgid "I<ip6frag_time> (integer; default: 30)"
13156 msgstr "I<ip6frag_time> (integer; default: 30)"
13157
13158 #.  The following is from 2.6.12: Documentation/networking/ip-sysctl.txt
13159 #. type: Plain text
13160 #: build/C/man7/ip.7:1057
13161 msgid "Time in seconds to keep an IPv6 fragment in memory."
13162 msgstr "IPv6 フラグメントをメモリに保持しておく時間 (秒単位)。"
13163
13164 #. type: TP
13165 #: build/C/man7/ip.7:1057
13166 #, no-wrap
13167 msgid "I<ip6frag_secret_interval> (integer; default: 600)"
13168 msgstr "I<ip6frag_secret_interval> (integer; default: 600)"
13169
13170 #. type: Plain text
13171 #: build/C/man7/ip.7:1061
13172 msgid ""
13173 "Regeneration interval (in seconds) of the hash secret (or lifetime for the "
13174 "hash secret) for IPv6 fragments."
13175 msgstr ""
13176 "IPv6 フラグメントの hash secret の生成間隔 (hash secret の寿命)  (秒単位)。"
13177
13178 #. type: TP
13179 #: build/C/man7/ip.7:1061
13180 #, no-wrap
13181 msgid "I<ipfrag_high_thresh> (integer), I<ipfrag_low_thresh> (integer)"
13182 msgstr "I<ipfrag_high_thresh> (integer), I<ipfrag_low_thresh> (integer)"
13183
13184 #. type: Plain text
13185 #: build/C/man7/ip.7:1068
13186 msgid ""
13187 "If the amount of queued IP fragments reaches I<ipfrag_high_thresh>, the "
13188 "queue is pruned down to I<ipfrag_low_thresh>.  Contains an integer with the "
13189 "number of bytes."
13190 msgstr ""
13191 "キューイングされている IP フラグメントの量が I<ipfrag_high_thresh> に達する"
13192 "と、キューの内容は I<ipfrag_low_thresh> にまで切り捨てられる。それぞれの大き"
13193 "さを バイト単位で表す整数値が入っている。"
13194
13195 #. type: TP
13196 #: build/C/man7/ip.7:1068
13197 #, no-wrap
13198 msgid "I<neigh/*>"
13199 msgstr "I<neigh/*>"
13200
13201 #.  FIXME Document the conf/*/* interfaces
13202 #.  FIXME Document the route/* interfaces
13203 #. type: Plain text
13204 #: build/C/man7/ip.7:1075
13205 msgid "See B<arp>(7)."
13206 msgstr "B<arp>(7)  を見よ。"
13207
13208 #.  2006-04-02, mtk
13209 #.  commented out the following because ipchains is obsolete
13210 #.  .PP
13211 #.  The ioctls to configure firewalling are documented in
13212 #.  .BR ipfw (4)
13213 #.  from the
13214 #.  .B ipchains
13215 #.  package.
13216 #. type: Plain text
13217 #: build/C/man7/ip.7:1088
13218 msgid "All ioctls described in B<socket>(7)  apply to B<ip>."
13219 msgstr "B<socket>(7)  に記述されている ioctl は、すべて B<ip> にも適用される。"
13220
13221 #.  FIXME Add a discussion of multicasting
13222 #. type: Plain text
13223 #: build/C/man7/ip.7:1092
13224 msgid ""
13225 "Ioctls to configure generic device parameters are described in "
13226 "B<netdevice>(7)."
13227 msgstr ""
13228 "ジェネリックデバイスのパラメータを設定する ioctl については B<netdevice>(7)  "
13229 "に記述されている。"
13230
13231 #. type: Plain text
13232 #: build/C/man7/ip.7:1112
13233 msgid ""
13234 "The user tried to execute an operation without the necessary permissions.  "
13235 "These include: sending a packet to a broadcast address without having the "
13236 "B<SO_BROADCAST> flag set; sending a packet via a I<prohibit> route; "
13237 "modifying firewall settings without superuser privileges (the "
13238 "B<CAP_NET_ADMIN> capability); binding to a privileged port without superuser "
13239 "privileges (the B<CAP_NET_BIND_SERVICE> capability)."
13240 msgstr ""
13241 "必要な権限のないユーザーが操作を実行しようとした。 以下のような場合が考えられ"
13242 "る: B<SO_BROADCAST> フラグを設定していない状態でブロードキャストアドレスに パ"
13243 "ケットを送ろうとした。 I<prohibit> なルートを通してパケットを送ろうとした。 "
13244 "スーパーユーザー権限 (B<CAP_NET_ADMIN> ケーパビリティ) なしでファイアウォール"
13245 "の設定を変更しようとした。 スーパーユーザー権限 (B<CAP_NET_BIND_SERVICE> ケー"
13246 "パビリティ) なしで特権ポートにバインドしようとした。"
13247
13248 #. type: Plain text
13249 #: build/C/man7/ip.7:1125
13250 msgid "An connection operation on a nonblocking socket is already in progress."
13251 msgstr "非ブロッキングソケットに対する接続操作が既に実行中である。"
13252
13253 #. type: Plain text
13254 #: build/C/man7/ip.7:1134
13255 msgid ""
13256 "No valid routing table entry matches the destination address.  This error "
13257 "can be caused by a ICMP message from a remote router or for the local "
13258 "routing table."
13259 msgstr ""
13260 "宛先アドレスにマッチする有効なエントリがルーティングテーブルに 存在しない。こ"
13261 "のエラーはリモートルータからの、 あるいはローカルルーティングテーブルへの "
13262 "ICMP メッセージによって引き起こされることがある。"
13263
13264 #. type: Plain text
13265 #: build/C/man7/ip.7:1140
13266 msgid ""
13267 "Invalid argument passed.  For send operations this can be caused by sending "
13268 "to a I<blackhole> route."
13269 msgstr ""
13270 "不正な引き数が渡された。送信操作において、 I<blackhole> ルートに送信しようと"
13271 "するとこのエラーが起こることがある。"
13272
13273 #. type: Plain text
13274 #: build/C/man7/ip.7:1147
13275 msgid "Datagram is bigger than an MTU on the path and it cannot be fragmented."
13276 msgstr "データグラムが path MTU よりも大きく、フラグメント化もできない。"
13277
13278 #. type: TP
13279 #: build/C/man7/ip.7:1147
13280 #, no-wrap
13281 msgid "B<ENOBUFS>, B<ENOMEM>"
13282 msgstr "B<ENOBUFS>, B<ENOMEM>"
13283
13284 #. type: Plain text
13285 #: build/C/man7/ip.7:1152
13286 msgid ""
13287 "Not enough free memory.  This often means that the memory allocation is "
13288 "limited by the socket buffer limits, not by the system memory, but this is "
13289 "not 100% consistent."
13290 msgstr ""
13291 "空きメモリが足りない。 このエラーは、メモリアロケーションがソケットバッファ"
13292 "の 大きさによって制限されていることを意味しているのが通常であるが、 100% そう"
13293 "だというわけではない。"
13294
13295 #. type: Plain text
13296 #: build/C/man7/ip.7:1170
13297 msgid ""
13298 "User doesn't have permission to set high priority, change configuration, or "
13299 "send signals to the requested process or group."
13300 msgstr ""
13301 "高い優先度を設定したり、設定を変更したり、要求されたプロセスや プロセスグルー"
13302 "プにシグナルを送ったりするのに必要な権限を、 ユーザーが持っていない。"
13303
13304 #. type: Plain text
13305 #: build/C/man7/ip.7:1176
13306 msgid "The socket is not configured or an unknown socket type was requested."
13307 msgstr "ソケットが未設定であるか、知らないソケットタイプが要求された。"
13308
13309 #. type: Plain text
13310 #: build/C/man7/ip.7:1183
13311 msgid ""
13312 "Other errors may be generated by the overlaying protocols; see B<tcp>(7), "
13313 "B<raw>(7), B<udp>(7), and B<socket>(7)."
13314 msgstr ""
13315 "他のエラーが上層のプロトコルによって生じるかもしれない。 B<tcp>(7), "
13316 "B<raw>(7), B<udp>(7), B<socket>(7)  などを参照のこと。"
13317
13318 #.  IP_PASSSEC is Linux-specific
13319 #.  IP_XFRM_POLICY is Linux-specific
13320 #.  IP_IPSEC_POLICY is a nonstandard extension, also present on some BSDs
13321 #. type: Plain text
13322 #: build/C/man7/ip.7:1198
13323 msgid ""
13324 "B<IP_FREEBIND>, B<IP_MSFILTER>, B<IP_MTU>, B<IP_MTU_DISCOVER>, "
13325 "B<IP_RECVORIGDSTADDR>, B<IP_PKTINFO>, B<IP_RECVERR>, B<IP_ROUTER_ALERT>, and "
13326 "B<IP_TRANSPARENT> are Linux-specific."
13327 msgstr ""
13328 "B<IP_FREEBIND>, B<IP_MSFILTER>, B<IP_MTU>, B<IP_MTU_DISCOVER>, "
13329 "B<IP_RECVORIGDSTADDR>,\n"
13330 "B<IP_PKTINFO>, B<IP_RECVERR>, B<IP_ROUTER_ALERT>, and B<IP_TRANSPARENT> \n"
13331 "は Linux 固有である。"
13332
13333 #. type: Plain text
13334 #: build/C/man7/ip.7:1207
13335 msgid ""
13336 "Be very careful with the B<SO_BROADCAST> option - it is not privileged in "
13337 "Linux.  It is easy to overload the network with careless broadcasts.  For "
13338 "new application protocols it is better to use a multicast group instead of "
13339 "broadcasting.  Broadcasting is discouraged."
13340 msgstr ""
13341 "B<SO_BROADCAST> オプションの利用には、くれぐれも注意すること。\n"
13342 "これは Linux では特権操作ではない。\n"
13343 "不注意なブロードキャストを行うと、ネットワークは簡単に過負荷状態になる。\n"
13344 "新しいアプリケーションプロトコルには、ブロードキャストではなく\n"
13345 "マルチキャストグループを用いるほうがよい。 ブロードキャストは推奨されない。"
13346
13347 #. type: Plain text
13348 #: build/C/man7/ip.7:1217
13349 msgid ""
13350 "Some other BSD sockets implementations provide B<IP_RCVDSTADDR> and "
13351 "B<IP_RECVIF> socket options to get the destination address and the interface "
13352 "of received datagrams.  Linux has the more general B<IP_PKTINFO> for the "
13353 "same task."
13354 msgstr ""
13355 "他の BSD のソケット実装では、 B<IP_RCVDSTADDR> と B<IP_RECVIF> といったソケッ"
13356 "トオプションがサポートされており、 宛先アドレスや受信データグラムのインター"
13357 "フェースが取得できるように なっていることもある。 Linux で同じことをやらせる"
13358 "には、より一般的な B<IP_PKTINFO> が使える。"
13359
13360 #. type: Plain text
13361 #: build/C/man7/ip.7:1226
13362 msgid ""
13363 "Some BSD sockets implementations also provide an B<IP_RECVTTL> option, but "
13364 "an ancillary message with type B<IP_RECVTTL> is passed with the incoming "
13365 "packet.  This is different from the B<IP_TTL> option used in Linux."
13366 msgstr ""
13367 "いくつかの BSD のソケット実装では B<IP_RECVTTL> オプションも提供されている"
13368 "が、タイプ B<IP_RECVTTL> の補助メッセージは受信パケットとともに渡される。 こ"
13369 "れは Linux で使われている B<IP_TTL> オプションとは異なる動作である。"
13370
13371 #. type: Plain text
13372 #: build/C/man7/ip.7:1232
13373 msgid ""
13374 "Using B<SOL_IP> socket options level isn't portable, BSD-based stacks use "
13375 "B<IPPROTO_IP> level."
13376 msgstr ""
13377 "B<SOL_IP> ソケットオプションレベルは移植性がない。 BSD ベースのプロトコルス"
13378 "タックでは B<IPPROTO_IP> レベルが使用されている。"
13379
13380 #. type: Plain text
13381 #: build/C/man7/ip.7:1245
13382 msgid ""
13383 "For compatibility with Linux 2.0, the obsolete B<socket(AF_INET, "
13384 "SOCK_PACKET, >I<protocol>B<)> syntax is still supported to open a "
13385 "B<packet>(7)  socket.  This is deprecated and should be replaced by "
13386 "B<socket(AF_PACKET, SOCK_RAW, >I<protocol>B<)> instead.  The main difference "
13387 "is the new I<sockaddr_ll> address structure for generic link layer "
13388 "information instead of the old B<sockaddr_pkt>."
13389 msgstr ""
13390 "Linux 2.0 との互換性のために、 obsolete な B<socket(AF_INET, SOCK_PACKET, "
13391 ">I<protocol>B<)> という書式でも B<packet>(7)  をオープンできるようになってい"
13392 "るが、これはお勧めできない。今後は B<socket(AF_PACKET, SOCK_RAW, "
13393 ">I<protocol>B<)> を代わりに用いるべきである。主な違いは、ジェネリックなリンク"
13394 "層用の I<sockaddr_ll> アドレス構造体が、古い B<sockaddr_pkt> に変わって用いら"
13395 "れるようになったことである。"
13396
13397 #. type: Plain text
13398 #: build/C/man7/ip.7:1255
13399 msgid ""
13400 "The error used to diagnose exhaustion of the ephemeral port range differs "
13401 "across the various system calls (B<connect>(2), B<bind>(2), B<listen>(2), "
13402 "B<sendto>(2))  that can assign ephemeral ports."
13403 msgstr ""
13404 "一時ポートの範囲の枯渇を示すのに使われるエラーは、 一時ポートの割り当てを行え"
13405 "るシステムコール (B<connect>(2), B<bind>(2), B<listen>(2), B<sendto>(2)) によ"
13406 "り異なる。"
13407
13408 #.  .PP
13409 #.  Some versions of glibc forget to declare
13410 #.  .IR in_pktinfo .
13411 #.  Workaround currently is to copy it into your program from this man page.
13412 #. type: Plain text
13413 #: build/C/man7/ip.7:1262
13414 msgid ""
13415 "The ioctls to configure IP-specific interface options and ARP tables are not "
13416 "described."
13417 msgstr ""
13418 "IP 固有のインターフェースオプションを指定するための ioctl と ARP テーブルのこ"
13419 "とが記述されていない。"
13420
13421 #.  .SH AUTHORS
13422 #.  This man page was written by Andi Kleen.
13423 #. type: Plain text
13424 #: build/C/man7/ip.7:1272
13425 msgid ""
13426 "Receiving the original destination address with B<MSG_ERRQUEUE> in "
13427 "I<msg_name> by B<recvmsg>(2)  does not work in some 2.2 kernels."
13428 msgstr ""
13429 "B<recvmsg>(2)  で I<msg_name> に B<MSG_ERRQUEUE> を指定して、受信パケットに"
13430 "入っていた宛先アドレスを取得する方法は 2.2 カーネルの一部でうまく動かない。"
13431
13432 #. type: Plain text
13433 #: build/C/man7/ip.7:1285
13434 msgid ""
13435 "B<recvmsg>(2), B<sendmsg>(2), B<byteorder>(3), B<ipfw>(4), "
13436 "B<capabilities>(7), B<icmp>(7), B<ipv6>(7), B<netlink>(7), B<raw>(7), "
13437 "B<socket>(7), B<tcp>(7), B<udp>(7)"
13438 msgstr ""
13439 "B<recvmsg>(2), B<sendmsg>(2), B<byteorder>(3), B<ipfw>(4), "
13440 "B<capabilities>(7), B<icmp>(7), B<ipv6>(7), B<netlink>(7), B<raw>(7), "
13441 "B<socket>(7), B<tcp>(7), B<udp>(7)"
13442
13443 #. type: Plain text
13444 #: build/C/man7/ip.7:1289
13445 msgid ""
13446 "RFC\\ 791 for the original IP specification.  RFC\\ 1122 for the IPv4 host "
13447 "requirements.  RFC\\ 1812 for the IPv4 router requirements."
13448 msgstr ""
13449 "RFC\\ 791: 元々の IP 仕様。 RFC\\ 1122: IPv4 ホストの要件。 RFC\\ 1812: IPv4 "
13450 "ルータの要件。"
13451
13452 #. type: TH
13453 #: build/C/man7/ipv6.7:86
13454 #, no-wrap
13455 msgid "IPV6"
13456 msgstr "IPV6"
13457
13458 #. type: TH
13459 #: build/C/man7/ipv6.7:86 build/C/man7/packet.7:12
13460 #, no-wrap
13461 msgid "2014-08-19"
13462 msgstr "2014-08-19"
13463
13464 #. type: Plain text
13465 #: build/C/man7/ipv6.7:89
13466 msgid "ipv6 - Linux IPv6 protocol implementation"
13467 msgstr "ipv6 - Linux IPv6 プロトコルの実装"
13468
13469 #. type: Plain text
13470 #: build/C/man7/ipv6.7:95
13471 msgid "I<tcp6_socket>B< = socket(AF_INET6, SOCK_STREAM, 0);>"
13472 msgstr "I<tcp6_socket>B< = socket(AF_INET6, SOCK_STREAM, 0);>"
13473
13474 #. type: Plain text
13475 #: build/C/man7/ipv6.7:97
13476 msgid "I<raw6_socket>B< = socket(AF_INET6, SOCK_RAW, >I<protocol>B<);>"
13477 msgstr "I<raw6_socket>B< = socket(AF_INET6, SOCK_RAW, >I<protocol>B<);>"
13478
13479 #. type: Plain text
13480 #: build/C/man7/ipv6.7:99
13481 msgid "I<udp6_socket>B< = socket(AF_INET6, SOCK_DGRAM, >I<protocol>B<);>"
13482 msgstr "I<udp6_socket>B< = socket(AF_INET6, SOCK_DGRAM, >I<protocol>B<);>"
13483
13484 #. type: Plain text
13485 #: build/C/man7/ipv6.7:106
13486 msgid ""
13487 "Linux 2.2 optionally implements the Internet Protocol, version 6.  This man "
13488 "page contains a description of the IPv6 basic API as implemented by the "
13489 "Linux kernel and glibc 2.1.  The interface is based on the BSD sockets "
13490 "interface; see B<socket>(7)."
13491 msgstr ""
13492 "Linux 2.2 では、Internet Protocol, version 6 を オプションとして実装してい"
13493 "る。 この man ページでは、Linux カーネルと glibc 2.1 での実装に基づいて、 "
13494 "IPv6 の基本的な API を解説する。 インターフェースは BSD ソケットインター"
13495 "フェースをもとにしている。 B<socket>(7)  を参照。"
13496
13497 #. type: Plain text
13498 #: build/C/man7/ipv6.7:111
13499 msgid ""
13500 "The IPv6 API aims to be mostly compatible with the IPv4 API (see B<ip>(7)).  "
13501 "Only differences are described in this man page."
13502 msgstr ""
13503 "IPv6 API は、 IPv4 API (B<ip>(7)  参照) とほぼ互換になることを目指している。 "
13504 "この man ページでは相違点のみを解説する。"
13505
13506 #. type: Plain text
13507 #: build/C/man7/ipv6.7:123
13508 msgid ""
13509 "To bind an B<AF_INET6> socket to any process, the local address should be "
13510 "copied from the I<in6addr_any> variable which has I<in6_addr> type.  In "
13511 "static initializations, B<IN6ADDR_ANY_INIT> may also be used, which expands "
13512 "to a constant expression.  Both of them are in network byte order."
13513 msgstr ""
13514 "B<AF_INET6> ソケットを何らかのプロセスにバインドするには、 ローカルアドレス"
13515 "を I<in6_addr> 型の変数 I<in6addr_any> からコピーしてくる必要がある。 static "
13516 "な初期値 B<IN6ADDR_ANY_INIT> も用いることができ、これは定数式に展開される。 "
13517 "これらの両者はネットワークバイトオーダーである。"
13518
13519 #. type: Plain text
13520 #: build/C/man7/ipv6.7:130
13521 msgid ""
13522 "The IPv6 loopback address (::1) is available in the global "
13523 "I<in6addr_loopback> variable.  For initializations, B<IN6ADDR_LOOPBACK_INIT> "
13524 "should be used."
13525 msgstr ""
13526 "IPv6 のループバックアドレス (::1) は global 変数 I<in6addr_loopback> から取得"
13527 "できる。初期化には B<IN6ADDR_LOOPBACK_INIT> を用いるべきである。"
13528
13529 #. type: Plain text
13530 #: build/C/man7/ipv6.7:137
13531 msgid ""
13532 "IPv4 connections can be handled with the v6 API by using the v4-mapped-on-v6 "
13533 "address type; thus a program only needs to support this API type to support "
13534 "both protocols.  This is handled transparently by the address handling "
13535 "functions in the C library."
13536 msgstr ""
13537 "v4-mapped-on-v6 アドレス型を用いることで、 IPv4 接続も v6 API で扱うことがで"
13538 "きる。 こうすれば、プログラムは v6 の API をサポートするだけで、 両方のプロト"
13539 "コルをサポートできる。 v4-mapped-on-v6 アドレス型は C ライブラリ内部のアドレ"
13540 "スを 扱う関数によって透過的に処理される。"
13541
13542 #. type: Plain text
13543 #: build/C/man7/ipv6.7:142
13544 msgid ""
13545 "IPv4 and IPv6 share the local port space.  When you get an IPv4 connection "
13546 "or packet to a IPv6 socket, its source address will be mapped to v6 and it "
13547 "will be mapped to v6."
13548 msgstr ""
13549 "IPv4 と IPv6 はローカルポート空間を共有する。 IPv4 の接続 (またはパケット) "
13550 "を IPv6 ソケットが取得すると、 発信元アドレスが v6 にマップされ、その接続 (パ"
13551 "ケット) も v6 にマップされる。"
13552
13553 #. type: Plain text
13554 #: build/C/man7/ipv6.7:152
13555 #, no-wrap
13556 msgid ""
13557 "struct sockaddr_in6 {\n"
13558 "    sa_family_t     sin6_family;   /* AF_INET6 */\n"
13559 "    in_port_t       sin6_port;     /* port number */\n"
13560 "    uint32_t        sin6_flowinfo; /* IPv6 flow information */\n"
13561 "    struct in6_addr sin6_addr;     /* IPv6 address */\n"
13562 "    uint32_t        sin6_scope_id; /* Scope ID (new in 2.4) */\n"
13563 "};\n"
13564 msgstr ""
13565 "struct sockaddr_in6 {\n"
13566 "    sa_family_t     sin6_family;   /* AF_INET6 */\n"
13567 "    in_port_t       sin6_port;     /* port number */\n"
13568 "    uint32_t        sin6_flowinfo; /* IPv6 flow information */\n"
13569 "    struct in6_addr sin6_addr;     /* IPv6 address */\n"
13570 "    uint32_t        sin6_scope_id; /* Scope ID (new in 2.4) */\n"
13571 "};\n"
13572
13573 #. type: Plain text
13574 #: build/C/man7/ipv6.7:156
13575 #, no-wrap
13576 msgid ""
13577 "struct in6_addr {\n"
13578 "    unsigned char   s6_addr[16];   /* IPv6 address */\n"
13579 "};\n"
13580 msgstr ""
13581 "struct in6_addr {\n"
13582 "    unsigned char   s6_addr[16];   /* IPv6 address */\n"
13583 "};\n"
13584
13585 #. type: Plain text
13586 #: build/C/man7/ipv6.7:178
13587 msgid ""
13588 "I<sin6_family> is always set to B<AF_INET6>; I<sin6_port> is the protocol "
13589 "port (see I<sin_port> in B<ip>(7)); I<sin6_flowinfo> is the IPv6 flow "
13590 "identifier; I<sin6_addr> is the 128-bit IPv6 address.  I<sin6_scope_id> is "
13591 "an ID depending on the scope of the address.  It is new in Linux 2.4.  Linux "
13592 "supports it only for link-local addresses, in that case I<sin6_scope_id> "
13593 "contains the interface index (see B<netdevice>(7))"
13594 msgstr ""
13595 "I<sin6_family> は常に B<AF_INET6> に設定される。\n"
13596 "I<sin6_port> はプロトコルポートである (B<ip>(7) の I<sin_port> を参照)。\n"
13597 "I<sin6_flowinfo> は IPv6 のフロー指定子 (flow identifier) である。\n"
13598 "I<sin6_addr> は 128 ビットの IPv6 アドレスである。 I<sin6_scope_id> は\n"
13599 "アドレスのスコープに依存した ID である (これは Linux 2.4 で導入された)。\n"
13600 "Linux の場合は、これはリンクローカルアドレスでのみサポートされている。\n"
13601 "この場合 I<sin6_scope_id> にはインターフェースのインデックスが含まれる\n"
13602 "ことになる (B<netdevice>(7) を参照)。"
13603
13604 #. type: Plain text
13605 #: build/C/man7/ipv6.7:184
13606 msgid ""
13607 "IPv6 supports several address types: unicast to address a single host, "
13608 "multicast to address a group of hosts, anycast to address the nearest member "
13609 "of a group of hosts (not implemented in Linux), IPv4-on-IPv6 to address a "
13610 "IPv4 host, and other reserved address types."
13611 msgstr ""
13612 "IPv6 は何種類かのアドレスタイプをサポートしている。 単一のホストをアドレスす"
13613 "るための unicast、 ホストのグループをアドレスするための multicast、 ホストの"
13614 "グループ中で最も近くにいるものをアドレスするための anycast (これは Linux では"
13615 "実装されていない)、 IPv4 ホストをアドレスするための IPv4-on-IPv6。 他にも予約"
13616 "済みのアドレスタイプがある。"
13617
13618 #. type: Plain text
13619 #: build/C/man7/ipv6.7:190
13620 msgid ""
13621 "The address notation for IPv6 is a group of 8 4-digit hexadecimal numbers, "
13622 "separated with a \\(aq:\\(aq.  \\&\"::\" stands for a string of 0 bits.  "
13623 "Special addresses are ::1 for loopback and ::FFFF:E<lt>IPv4 addressE<gt> for "
13624 "IPv4-mapped-on-IPv6."
13625 msgstr ""
13626 "IPv6 でのアドレス表記は 4 桁の 16 進数 8 個からなり、 \\(aq:\\(aq は区切り文"
13627 "字はで、\"::\" は 0 ビットの文字列を表す。 特殊なアドレスとして、ループバック"
13628 "を表す ::1、 IPv4-mapped-on-IPv6 を表す ::FFFF::E<lt>IPv4 アドレスE<gt> があ"
13629 "る。"
13630
13631 #. type: Plain text
13632 #: build/C/man7/ipv6.7:192
13633 msgid "The port space of IPv6 is shared with IPv4."
13634 msgstr "IPv6 のポート空間は IPv4 と共有されている。"
13635
13636 #. type: Plain text
13637 #: build/C/man7/ipv6.7:200
13638 msgid ""
13639 "IPv6 supports some protocol-specific socket options that can be set with "
13640 "B<setsockopt>(2)  and read with B<getsockopt>(2).  The socket option level "
13641 "for IPv6 is B<IPPROTO_IPV6>.  A boolean integer flag is zero when it is "
13642 "false, otherwise true."
13643 msgstr ""
13644 "IPv6 はプロトコル固有のソケットオプションをいくつかサポートしている。 これら"
13645 "は B<setsockopt>(2)  で設定でき、 B<getsockopt>(2)  で取得できる。 IPv6 のソ"
13646 "ケットオプションレベルは B<IPPROTO_IPV6> である。 ブール整数のフラグは、0 が"
13647 "偽であり、それ以外は真である。"
13648
13649 #. type: TP
13650 #: build/C/man7/ipv6.7:200
13651 #, no-wrap
13652 msgid "B<IPV6_ADDRFORM>"
13653 msgstr "B<IPV6_ADDRFORM>"
13654
13655 #. type: Plain text
13656 #: build/C/man7/ipv6.7:214
13657 msgid ""
13658 "Turn an B<AF_INET6> socket into a socket of a different address family.  "
13659 "Only B<AF_INET> is currently supported for that.  It is allowed only for "
13660 "IPv6 sockets that are connected and bound to a v4-mapped-on-v6 address.  The "
13661 "argument is a pointer to an integer containing B<AF_INET>.  This is useful "
13662 "to pass v4-mapped sockets as file descriptors to programs that don't know "
13663 "how to deal with the IPv6 API."
13664 msgstr ""
13665 "B<AF_INET6> ソケットを別のアドレスファミリーのソケットに変える。 現在は "
13666 "B<AF_INET> のみが変更先のアドレスファミリーとしてサポートされている。 これが"
13667 "許可されるのは、IPv6 が接続され、 v4-mapped-on-v6 アドレスにバインドされた場"
13668 "合に限られる。 引き数は B<AF_INET> が入っている整数へのポインタである。 v4-"
13669 "mapped ソケットを、IPv6 API を扱えないプログラムに対して ファイルディスクリプ"
13670 "ターとして渡す場合に便利。"
13671
13672 #. type: TP
13673 #: build/C/man7/ipv6.7:214
13674 #, no-wrap
13675 msgid "B<IPV6_ADD_MEMBERSHIP, IPV6_DROP_MEMBERSHIP>"
13676 msgstr "B<IPV6_ADD_MEMBERSHIP, IPV6_DROP_MEMBERSHIP>"
13677
13678 #. type: Plain text
13679 #: build/C/man7/ipv6.7:219
13680 msgid ""
13681 "Control membership in multicast groups.  Argument is a pointer to a I<struct "
13682 "ipv6_mreq>."
13683 msgstr ""
13684 "multicast グループのメンバーを制御する。 引き数は I<struct ipv6_mreq> 構造体"
13685 "へのポインタ。"
13686
13687 #. type: TP
13688 #: build/C/man7/ipv6.7:219
13689 #, no-wrap
13690 msgid "B<IPV6_MTU>"
13691 msgstr "B<IPV6_MTU>"
13692
13693 #. type: Plain text
13694 #: build/C/man7/ipv6.7:225
13695 msgid ""
13696 "B<getsockopt>(): Retrieve the current known path MTU of the current socket.  "
13697 "Only valid when the socket has been connected.  Returns an integer."
13698 msgstr ""
13699 "B<getsockopt>(): ソケットの、既知の path MTU を取得する。ソケットが接続してい"
13700 "る場合のみ有効である。整数を返す。"
13701
13702 #. type: Plain text
13703 #: build/C/man7/ipv6.7:231
13704 msgid ""
13705 "B<setsockopt>(): Set the MTU to be used for the socket.  The MTU is limited "
13706 "by the device MTU or the path MTU when path MTU discovery is enabled.  "
13707 "Argument is a pointer to integer."
13708 msgstr ""
13709 "B<setsockopt>(): そのソケットに対して用いる MTU の値を設定する。 MTU の大きさ"
13710 "は、 そのデバイスの MTU または (Path MTU Discovery が可能なら) その経路の "
13711 "MTU の大きさ以下でなければならない。 引き数は整数へのポインタ。"
13712
13713 #. type: TP
13714 #: build/C/man7/ipv6.7:231
13715 #, no-wrap
13716 msgid "B<IPV6_MTU_DISCOVER>"
13717 msgstr "B<IPV6_MTU_DISCOVER>"
13718
13719 #. type: Plain text
13720 #: build/C/man7/ipv6.7:239
13721 msgid ""
13722 "Control path-MTU discovery on the socket.  See B<IP_MTU_DISCOVER> in "
13723 "B<ip>(7)  for details."
13724 msgstr ""
13725 "そのソケットでの Path MTU Discovery を制御する。 詳細は B<ip>(7)  の "
13726 "B<IP_MTU_DISCOVER> を参照。"
13727
13728 #. type: TP
13729 #: build/C/man7/ipv6.7:239
13730 #, no-wrap
13731 msgid "B<IPV6_MULTICAST_HOPS>"
13732 msgstr "B<IPV6_MULTICAST_HOPS>"
13733
13734 #. type: Plain text
13735 #: build/C/man7/ipv6.7:246
13736 msgid ""
13737 "Set the multicast hop limit for the socket.  Argument is a pointer to an "
13738 "integer.  -1 in the value means use the route default, otherwise it should "
13739 "be between 0 and 255."
13740 msgstr ""
13741 "そのソケットでの multicast の hop 数の上限値を設定する。 引き数は整数へのポイ"
13742 "ンタである。 -1 を指定すると経路のデフォルトを用いることを意味する。 それ以外"
13743 "の場合は 0 から 255 の範囲を指定する。"
13744
13745 #. type: TP
13746 #: build/C/man7/ipv6.7:246
13747 #, no-wrap
13748 msgid "B<IPV6_MULTICAST_IF>"
13749 msgstr "B<IPV6_MULTICAST_IF>"
13750
13751 #. type: Plain text
13752 #: build/C/man7/ipv6.7:257
13753 msgid ""
13754 "Set the device for outgoing multicast packets on the socket.  This is "
13755 "allowed only for B<SOCK_DGRAM> and B<SOCK_RAW> socket.  The argument is a "
13756 "pointer to an interface index (see B<netdevice>(7))  in an integer."
13757 msgstr ""
13758 "そのソケットでの、送信 multicast パケットに用いるデバイスを設定する。 これは "
13759 "B<SOCK_DGRAM> および B<SOCK_RAW> 各ソケットでのみ許される。 引き数はインター"
13760 "フェースのインデックスの整数値 (B<netdevice>(7)  を参照) へのポインタである。"
13761
13762 #. type: TP
13763 #: build/C/man7/ipv6.7:257
13764 #, no-wrap
13765 msgid "B<IPV6_MULTICAST_LOOP>"
13766 msgstr "B<IPV6_MULTICAST_LOOP>"
13767
13768 #. type: Plain text
13769 #: build/C/man7/ipv6.7:261
13770 msgid ""
13771 "Control whether the socket sees multicast packets that it has send itself.  "
13772 "Argument is a pointer to boolean."
13773 msgstr ""
13774 "ソケットが、自分自身の送信した multicast パケットを監視するかどうかを制御す"
13775 "る。 引き数はブール値へのポインタ。"
13776
13777 #. type: TP
13778 #: build/C/man7/ipv6.7:261
13779 #, no-wrap
13780 msgid "B<IPV6_RECVPKTINFO> (since Linux 2.6.14)"
13781 msgstr "B<IPV6_RECVPKTINFO> (Linux 2.6.14 以降)"
13782
13783 #. type: Plain text
13784 #: build/C/man7/ipv6.7:275
13785 msgid ""
13786 "Set delivery of the B<IPV6_PKTINFO> control message on incoming datagrams.  "
13787 "Such control messages contain a I<struct in6_pktinfo>, as per RFC 3542.  "
13788 "Only allowed for B<SOCK_DGRAM> or B<SOCK_RAW> sockets.  Argument is a "
13789 "pointer to a boolean value in an integer."
13790 msgstr ""
13791 "データグラムの到着時における B<IPV6_PKTINFO> 制御メッセージを配送するかどうか"
13792 "を設定する。 制御メッセージは RFC 3542 に基づき I<struct in6_pktinfo> に格納"
13793 "される。 B<SOCK_DGRAM> ソケットまたは B<SOCK_RAW> ソケットに対してのみ許可さ"
13794 "れる。 引き数はブール値の入った整数。"
13795
13796 #. type: Plain text
13797 #: build/C/man7/ipv6.7:278
13798 #, no-wrap
13799 msgid "B<IPV6_RTHDR, IPV6_AUTHHDR, IPV6_DSTOPTS, IPV6_HOPOPTS, IPV6_FLOWINFO, IPV6_HOPLIMIT>\n"
13800 msgstr "B<IPV6_RTHDR, IPV6_AUTHHDR, IPV6_DSTOPTS, IPV6_HOPOPTS, IPV6_FLOWINFO, IPV6_HOPLIMIT>\n"
13801
13802 #. type: Plain text
13803 #: build/C/man7/ipv6.7:303
13804 msgid ""
13805 "Set delivery of control messages for incoming datagrams containing extension "
13806 "headers from the received packet.  B<IPV6_RTHDR> delivers the routing "
13807 "header, B<IPV6_AUTHHDR> delivers the authentication header, B<IPV6_DSTOPTS> "
13808 "delivers the destination options, B<IPV6_HOPOPTS> delivers the hop options, "
13809 "B<IPV6_FLOWINFO> delivers an integer containing the flow ID, "
13810 "B<IPV6_HOPLIMIT> delivers an integer containing the hop count of the "
13811 "packet.  The control messages have the same type as the socket option.  All "
13812 "these header options can also be set for outgoing packets by putting the "
13813 "appropriate control message into the control buffer of B<sendmsg>(2).  Only "
13814 "allowed for B<SOCK_DGRAM> or B<SOCK_RAW> sockets.  Argument is a pointer to "
13815 "a boolean value."
13816 msgstr ""
13817 "受信パケットのデータグラムに拡張ヘッダが含まれている場合の、 制御メッセージの"
13818 "配送を設定する。 B<IPV6_RTHDR>: routing ヘッダを配送するかどうか。 "
13819 "B<IPV6_AUTHHDR>: authentication ヘッダを配送するかどうか。 B<IPV6_DSTOPTS>: "
13820 "destination オプションを配送するかどうか。 B<IPV6_HOPOPTS>: hop オプションを"
13821 "配送するかどうか。 B<IPV6_FLOWINFO>: flow ID を含む整数を配送するかどうか。 "
13822 "B<IPV6_HOPLIMIT>: パケットの hop カウントを含む整数を配送するかどうか。 制御"
13823 "メッセージはソケットオプションのものと同じタイプを持つ。 これらのすべてのヘッ"
13824 "ダオプションは、 適切な制御メッセージを B<sendmsg>(2)  の制御バッファーに書き"
13825 "こめば、 送信パケットにでも設定できる。 B<SOCK_DGRAM> ソケットまたは "
13826 "B<SOCK_RAW> ソケットでのみ許される。引き数はブール値へのポインタ。"
13827
13828 #. type: TP
13829 #: build/C/man7/ipv6.7:303
13830 #, no-wrap
13831 msgid "B<IPV6_RECVERR>"
13832 msgstr "B<IPV6_RECVERR>"
13833
13834 #. type: Plain text
13835 #: build/C/man7/ipv6.7:312
13836 msgid ""
13837 "Control receiving of asynchronous error options.  See B<IP_RECVERR> in "
13838 "B<ip>(7)  for details.  Argument is a pointer to boolean."
13839 msgstr ""
13840 "非同期エラー (asynchronous error) オプションの受信を制御する。 詳細は "
13841 "B<ip>(7)  の B<IP_RECVERR> を参照。 引き数はブール値へのポインタ。"
13842
13843 #. type: TP
13844 #: build/C/man7/ipv6.7:312
13845 #, no-wrap
13846 msgid "B<IPV6_ROUTER_ALERT>"
13847 msgstr "B<IPV6_ROUTER_ALERT>"
13848
13849 #. type: Plain text
13850 #: build/C/man7/ipv6.7:327
13851 msgid ""
13852 "Pass forwarded packets containing a router alert hop-by-hop option to this "
13853 "socket.  Only allowed for B<SOCK_RAW> sockets.  The tapped packets are not "
13854 "forwarded by the kernel, it is the user's responsibility to send them out "
13855 "again.  Argument is a pointer to an integer.  A positive integer indicates a "
13856 "router alert option value to intercept.  Packets carrying a router alert "
13857 "option with a value field containing this integer will be delivered to the "
13858 "socket.  A negative integer disables delivery of packets with router alert "
13859 "options to this socket."
13860 msgstr ""
13861 "このソケットで、router alert hop-by-hop オプションの付いた転送パケットを 通す"
13862 "かどうかを制御する。 B<SOCK_RAW> ソケットでのみ許可される。 tap されたパケッ"
13863 "トはカーネルによっては転送されない。そうしたパケットを 再度送信するのはユー"
13864 "ザーの責任である。 引き数は整数 (integer) へのポインタ。 正の整数は傍受を行"
13865 "う router alert オプション値を示す。 オプション値がこの整数である router "
13866 "alert オプションの付いたパケットは ソケットに配送される。負の整数を指定する"
13867 "と、このソケットへの router alert オプションの付いたパケットの配送が行われな"
13868 "い。"
13869
13870 #. type: TP
13871 #: build/C/man7/ipv6.7:327
13872 #, no-wrap
13873 msgid "B<IPV6_UNICAST_HOPS>"
13874 msgstr "B<IPV6_UNICAST_HOPS>"
13875
13876 #. type: Plain text
13877 #: build/C/man7/ipv6.7:333
13878 msgid ""
13879 "Set the unicast hop limit for the socket.  Argument is a pointer to an "
13880 "integer.  -1 in the value means use the route default, otherwise it should "
13881 "be between 0 and 255."
13882 msgstr ""
13883 "そのソケットでの unicast の hop 数の上限値を設定する。 引き数は整数へのポイン"
13884 "タである。 -1 を指定すると経路のデフォルトを用いることを意味する。 それ以外の"
13885 "場合は 0 から 255 の範囲を指定する。"
13886
13887 #. type: TP
13888 #: build/C/man7/ipv6.7:333
13889 #, no-wrap
13890 msgid "B<IPV6_V6ONLY> (since Linux 2.4.21 and 2.6)"
13891 msgstr "B<IPV6_V6ONLY> (Linux 2.4.21 以降および 2.6 以降)"
13892
13893 #.  See RFC 3493
13894 #. type: Plain text
13895 #: build/C/man7/ipv6.7:340
13896 msgid ""
13897 "If this flag is set to true (nonzero), then the socket is restricted to "
13898 "sending and receiving IPv6 packets only.  In this case, an IPv4 and an IPv6 "
13899 "application can bind to a single port at the same time."
13900 msgstr ""
13901 "このフラグを真 (0 以外) に設定すると、そのソケットは IPv6 パケットだけを 送受"
13902 "信するように制限される。 この場合、IPv4 アプリケーションと IPv6 アプリケー"
13903 "ションが同時に 一つのポートをバインドできる。"
13904
13905 #. type: Plain text
13906 #: build/C/man7/ipv6.7:344
13907 msgid ""
13908 "If this flag is set to false (zero), then the socket can be used to send and "
13909 "receive packets to and from an IPv6 address or an IPv4-mapped IPv6 address."
13910 msgstr ""
13911 "このフラグを偽 (0) に設定すると、そのソケットはパケットの送受信に IPv6 アドレ"
13912 "スと IPv4-mapped IPv6 アドレスの両方を使用できる。"
13913
13914 #. type: Plain text
13915 #: build/C/man7/ipv6.7:346
13916 msgid "The argument is a pointer to a boolean value in an integer."
13917 msgstr "引き数はブール値の入った整数へのポインタである。"
13918
13919 #.  FLOWLABEL_MGR, FLOWINFO_SEND
13920 #. type: Plain text
13921 #: build/C/man7/ipv6.7:351
13922 msgid ""
13923 "The default value for this flag is defined by the contents of the file I</"
13924 "proc/sys/net/ipv6/bindv6only>.  The default value for that file is 0 (false)."
13925 msgstr ""
13926 "このフラグのデフォルト値はファイル I</proc/sys/net/ipv6/bindv6only> の内容に"
13927 "より定義される。 このファイルのデフォルト値は 0 (偽) である。"
13928
13929 #. type: Plain text
13930 #: build/C/man7/ipv6.7:362
13931 msgid ""
13932 "The user tried to B<bind>(2)  to a link-local IPv6 address, but the "
13933 "I<sin6_scope_id> in the supplied I<sockaddr_in6> structure is not a valid "
13934 "interface index."
13935 msgstr ""
13936 "ユーザがリンクローカルの IPv6 アドレスを B<bind>(2) しようとしたが、\n"
13937 "指定された I<sockaddr_in6> 構造体の I<sin6_scope_id> が\n"
13938 "有効なインターフェースのインデックスでなかった。"
13939
13940 #. type: Plain text
13941 #: build/C/man7/ipv6.7:378
13942 msgid ""
13943 "Linux 2.4 will break binary compatibility for the I<sockaddr_in6> for 64-bit "
13944 "hosts by changing the alignment of I<in6_addr> and adding an additional "
13945 "I<sin6_scope_id> field.  The kernel interfaces stay compatible, but a "
13946 "program including I<sockaddr_in6> or I<in6_addr> into other structures may "
13947 "not be.  This is not a problem for 32-bit hosts like i386."
13948 msgstr ""
13949 "Linux 2.4 では 64 ビットのホストに対して I<sockaddr_in6> のバイナリ互換性が保"
13950 "たれていない。 I<in6_addr> のアラインメントが変更され、また I<sin6_scope_id> "
13951 "フィールドが新たに追加されたからである。 カーネルインターフェースの互換性は保"
13952 "たれているが、 I<sockaddr_in6> や I<in6_addr> を他の構造体に含んでいるような"
13953 "プログラムでは 保たれないかもしれない。 これは i386 のような 32 ビットのホス"
13954 "トでは問題にならない。"
13955
13956 #. type: Plain text
13957 #: build/C/man7/ipv6.7:386
13958 msgid ""
13959 "The I<sin6_flowinfo> field is new in Linux 2.4.  It is transparently passed/"
13960 "read by the kernel when the passed address length contains it.  Some "
13961 "programs that pass a longer address buffer and then check the outgoing "
13962 "address length may break."
13963 msgstr ""
13964 "I<sin6_flowinfo> フィールドは Linux 2.4 で登場した。 これが渡されたアドレス長"
13965 "に含まれていると、 カーネルに透過的に渡され、読まれる。 より長いアドレスバッ"
13966 "ファを渡し、 そして送信アドレスの長さをチェックするようなプログラムは うまく"
13967 "動かないかもしれない。"
13968
13969 #. type: Plain text
13970 #: build/C/man7/ipv6.7:396
13971 msgid ""
13972 "The I<sockaddr_in6> structure is bigger than the generic I<sockaddr>.  "
13973 "Programs that assume that all address types can be stored safely in a "
13974 "I<struct sockaddr> need to be changed to use I<struct sockaddr_storage> for "
13975 "that instead."
13976 msgstr ""
13977 "I<sockaddr_in6> 構造体はジェネリックな I<sockaddr> よりも大きい。 すべてのア"
13978 "ドレスタイプが I<struct sockaddr> の中に安全に納められると仮定しているプログ"
13979 "ラムは、代わりに I<struct sockaddr_storage> を用いるように変更する必要があ"
13980 "る。"
13981
13982 #. type: Plain text
13983 #: build/C/man7/ipv6.7:401
13984 msgid ""
13985 "The IPv6 extended API as in RFC\\ 2292 is currently only partly implemented; "
13986 "although the 2.2 kernel has near complete support for receiving options, the "
13987 "macros for generating IPv6 options are missing in glibc 2.1."
13988 msgstr ""
13989 "IPv6 拡張 API は、現在まだ RFC\\ 2292 を完全には実装していない。 2.2 カーネル"
13990 "は受信オプションをほぼ完全にサポートサポートしているが、 glibc2.1 には IPv6 "
13991 "オプションを生成するマクロが存在していない。"
13992
13993 #. type: Plain text
13994 #: build/C/man7/ipv6.7:403
13995 msgid "IPSec support for EH and AH headers is missing."
13996 msgstr "EH および AH ヘッダ での IPSec のサポートは存在しない。"
13997
13998 #. type: Plain text
13999 #: build/C/man7/ipv6.7:405
14000 msgid "Flow label management is not complete and not documented here."
14001 msgstr "フローラベル管理はまだ完全でなく、ここにも記述されていない。"
14002
14003 #. type: Plain text
14004 #: build/C/man7/ipv6.7:407
14005 msgid "This man page is not complete."
14006 msgstr "この man ページはまだ完成していない。"
14007
14008 #. type: Plain text
14009 #: build/C/man7/ipv6.7:410
14010 msgid "B<cmsg>(3), B<ip>(7)"
14011 msgstr "B<cmsg>(3), B<ip>(7)"
14012
14013 #. type: Plain text
14014 #: build/C/man7/ipv6.7:414
14015 msgid ""
14016 "RFC\\ 2553: IPv6 BASIC API; Linux tries to be compliant to this.  RFC\\ "
14017 "2460: IPv6 specification."
14018 msgstr ""
14019 "RFC\\ 2553: IPv6 BASIC API; Linux はこの RFC に準拠するようにしている。 RFC"
14020 "\\ 2460: IPv6 specification."
14021
14022 #. type: TH
14023 #: build/C/man7/netdevice.7:18
14024 #, no-wrap
14025 msgid "NETDEVICE"
14026 msgstr "NETDEVICE"
14027
14028 #. type: TH
14029 #: build/C/man7/netdevice.7:18
14030 #, no-wrap
14031 msgid "2014-01-24"
14032 msgstr "2014-01-24"
14033
14034 #. type: Plain text
14035 #: build/C/man7/netdevice.7:21
14036 msgid "netdevice - low-level access to Linux network devices"
14037 msgstr "netdevice - Linux ネットワークデバイスへの低レベルアクセス"
14038
14039 #. type: Plain text
14040 #: build/C/man7/netdevice.7:23
14041 msgid "B<#include E<lt>sys/ioctl.hE<gt>>"
14042 msgstr "B<#include E<lt>sys/ioctl.hE<gt>>"
14043
14044 #. type: Plain text
14045 #: build/C/man7/netdevice.7:25
14046 msgid "B<#include E<lt>net/if.hE<gt>>"
14047 msgstr "B<#include E<lt>net/if.hE<gt>>"
14048
14049 #. type: Plain text
14050 #: build/C/man7/netdevice.7:28
14051 msgid ""
14052 "This man page describes the sockets interface which is used to configure "
14053 "network devices."
14054 msgstr ""
14055 "この man ページでは、ネットワークデバイスを設定するために 用いるソケットイン"
14056 "ターフェースについて解説する。"
14057
14058 #. type: Plain text
14059 #: build/C/man7/netdevice.7:35
14060 msgid ""
14061 "Linux supports some standard ioctls to configure network devices.  They can "
14062 "be used on any socket's file descriptor regardless of the family or type.  "
14063 "Most of them pass an I<ifreq> structure:"
14064 msgstr ""
14065 "Linux はネットワークデバイスを設定するための標準的な ioctl を いくつか備えて"
14066 "いる。これらはどんなソケットのファイルディスクリプタにも 用いることができる。"
14067 "ファミリーやタイプは何でもよい。 これらの ioctl のほとんどは I<ifreq> 構造体"
14068 "を渡す。"
14069
14070 #. type: Plain text
14071 #: build/C/man7/netdevice.7:56
14072 #, no-wrap
14073 msgid ""
14074 "struct ifreq {\n"
14075 "    char ifr_name[IFNAMSIZ]; /* Interface name */\n"
14076 "    union {\n"
14077 "        struct sockaddr ifr_addr;\n"
14078 "        struct sockaddr ifr_dstaddr;\n"
14079 "        struct sockaddr ifr_broadaddr;\n"
14080 "        struct sockaddr ifr_netmask;\n"
14081 "        struct sockaddr ifr_hwaddr;\n"
14082 "        short           ifr_flags;\n"
14083 "        int             ifr_ifindex;\n"
14084 "        int             ifr_metric;\n"
14085 "        int             ifr_mtu;\n"
14086 "        struct ifmap    ifr_map;\n"
14087 "        char            ifr_slave[IFNAMSIZ];\n"
14088 "        char            ifr_newname[IFNAMSIZ];\n"
14089 "        char           *ifr_data;\n"
14090 "    };\n"
14091 "};\n"
14092 msgstr ""
14093 "struct ifreq {\n"
14094 "    char ifr_name[IFNAMSIZ]; /* Interface name */\n"
14095 "    union {\n"
14096 "        struct sockaddr ifr_addr;\n"
14097 "        struct sockaddr ifr_dstaddr;\n"
14098 "        struct sockaddr ifr_broadaddr;\n"
14099 "        struct sockaddr ifr_netmask;\n"
14100 "        struct sockaddr ifr_hwaddr;\n"
14101 "        short           ifr_flags;\n"
14102 "        int             ifr_ifindex;\n"
14103 "        int             ifr_metric;\n"
14104 "        int             ifr_mtu;\n"
14105 "        struct ifmap    ifr_map;\n"
14106 "        char            ifr_slave[IFNAMSIZ];\n"
14107 "        char            ifr_newname[IFNAMSIZ];\n"
14108 "        char           *ifr_data;\n"
14109 "    };\n"
14110 "};\n"
14111
14112 #. type: Plain text
14113 #: build/C/man7/netdevice.7:64
14114 msgid ""
14115 "Normally, the user specifies which device to affect by setting I<ifr_name> "
14116 "to the name of the interface.  All other members of the structure may share "
14117 "memory."
14118 msgstr ""
14119 "通常、ユーザーによる設定対象デバイスの指定は、 I<ifr_name> にインターフェース"
14120 "の名前をセットすることによって行う。 他の構造体の全てのメンバは、メモリを共有"
14121 "する。"
14122
14123 #. type: Plain text
14124 #: build/C/man7/netdevice.7:72
14125 msgid ""
14126 "If an ioctl is marked as privileged, then using it requires an effective "
14127 "user ID of 0 or the B<CAP_NET_ADMIN> capability.  If this is not the case, "
14128 "B<EPERM> will be returned."
14129 msgstr ""
14130 "「特権が必要」と記述されている ioctl を実行するには、 実効ユーザー ID が 0 "
14131 "か、 B<CAP_NET_ADMIN> 権限が必要である。これが満たされていない場合は "
14132 "B<EPERM> が返される。"
14133
14134 #. type: TP
14135 #: build/C/man7/netdevice.7:72
14136 #, no-wrap
14137 msgid "B<SIOCGIFNAME>"
14138 msgstr "B<SIOCGIFNAME>"
14139
14140 #. type: Plain text
14141 #: build/C/man7/netdevice.7:80
14142 msgid ""
14143 "Given the I<ifr_ifindex>, return the name of the interface in I<ifr_name>.  "
14144 "This is the only ioctl which returns its result in I<ifr_name>."
14145 msgstr ""
14146 "I<ifr_ifindex> を受け取り、インターフェースの名前を I<ifr_name> に入れて返"
14147 "す。これは結果を I<ifr_name> として返す唯一の ioctl である。"
14148
14149 #. type: TP
14150 #: build/C/man7/netdevice.7:80
14151 #, no-wrap
14152 msgid "B<SIOCGIFINDEX>"
14153 msgstr "B<SIOCGIFINDEX>"
14154
14155 #. type: Plain text
14156 #: build/C/man7/netdevice.7:84
14157 msgid "Retrieve the interface index of the interface into I<ifr_ifindex>."
14158 msgstr ""
14159 "インターフェースの interface index を取得し、 I<ifr_ifindex> に入れて返す。"
14160
14161 #. type: TP
14162 #: build/C/man7/netdevice.7:84
14163 #, no-wrap
14164 msgid "B<SIOCGIFFLAGS>, B<SIOCSIFFLAGS>"
14165 msgstr "B<SIOCGIFFLAGS>, B<SIOCSIFFLAGS>"
14166
14167 #.  Do not right adjust text blocks in tables
14168 #. type: Plain text
14169 #: build/C/man7/netdevice.7:90
14170 msgid ""
14171 "Get or set the active flag word of the device.  I<ifr_flags> contains a bit "
14172 "mask of the following values:"
14173 msgstr ""
14174 "デバイスの active フラグワードを取得または設定する。 I<ifr_flags> には以下の"
14175 "値のビットマスクが入る。"
14176
14177 #. type: tbl table
14178 #: build/C/man7/netdevice.7:95
14179 #, no-wrap
14180 msgid "Device flags\n"
14181 msgstr "デバイスフラグ\n"
14182
14183 #. type: tbl table
14184 #: build/C/man7/netdevice.7:96
14185 #, no-wrap
14186 msgid "IFF_UP:Interface is running.\n"
14187 msgstr "IFF_UP:インターフェースは動作中。\n"
14188
14189 #. type: tbl table
14190 #: build/C/man7/netdevice.7:97
14191 #, no-wrap
14192 msgid "IFF_BROADCAST:Valid broadcast address set.\n"
14193 msgstr "IFF_BROADCAST:有効なブロードキャストアドレスがセットされている。\n"
14194
14195 #. type: tbl table
14196 #: build/C/man7/netdevice.7:98
14197 #, no-wrap
14198 msgid "IFF_DEBUG:Internal debugging flag.\n"
14199 msgstr "IFF_DEBUG:内部のデバッグフラグ。\n"
14200
14201 #. type: tbl table
14202 #: build/C/man7/netdevice.7:99
14203 #, no-wrap
14204 msgid "IFF_LOOPBACK:Interface is a loopback interface.\n"
14205 msgstr "IFF_LOOPBACK:インターフェースはループバックである。\n"
14206
14207 #. type: tbl table
14208 #: build/C/man7/netdevice.7:100
14209 #, no-wrap
14210 msgid "IFF_POINTOPOINT:Interface is a point-to-point link.\n"
14211 msgstr "IFF_POINTOPOINT:インターフェースは point-to-point リンクである。\n"
14212
14213 #. type: tbl table
14214 #: build/C/man7/netdevice.7:101
14215 #, no-wrap
14216 msgid "IFF_RUNNING:Resources allocated.\n"
14217 msgstr "IFF_RUNNING:リソースが割り当て済み。\n"
14218
14219 #. type: tbl table
14220 #: build/C/man7/netdevice.7:102
14221 #, no-wrap
14222 msgid "IFF_NOARP:T{\n"
14223 msgstr "IFF_NOARP:T{\n"
14224
14225 #. type: tbl table
14226 #: build/C/man7/netdevice.7:103
14227 #, no-wrap
14228 msgid "No arp protocol, L2 destination address not set.\n"
14229 msgstr "arp プロトコルがない。 L2 宛先アドレスが設定されていない。\n"
14230
14231 #. type: tbl table
14232 #: build/C/man7/netdevice.7:104 build/C/man7/netdevice.7:115
14233 #, no-wrap
14234 msgid "T}\n"
14235 msgstr "T}\n"
14236
14237 #. type: tbl table
14238 #: build/C/man7/netdevice.7:105
14239 #, no-wrap
14240 msgid "IFF_PROMISC:Interface is in promiscuous mode.\n"
14241 msgstr "IFF_PROMISC:インターフェースは promiscuous モードである。\n"
14242
14243 #. type: tbl table
14244 #: build/C/man7/netdevice.7:106
14245 #, no-wrap
14246 msgid "IFF_NOTRAILERS:Avoid use of trailers.\n"
14247 msgstr "IFF_NOTRAILERS:trailer の利用を避ける。\n"
14248
14249 #. type: tbl table
14250 #: build/C/man7/netdevice.7:107
14251 #, no-wrap
14252 msgid "IFF_ALLMULTI:Receive all multicast packets.\n"
14253 msgstr "IFF_ALLMULTI:全てのマルチキャストパケットを受信する。\n"
14254
14255 #. type: tbl table
14256 #: build/C/man7/netdevice.7:108
14257 #, no-wrap
14258 msgid "IFF_MASTER:Master of a load balancing bundle.\n"
14259 msgstr "IFF_MASTER:負荷分散グループのマスターである。\n"
14260
14261 #. type: tbl table
14262 #: build/C/man7/netdevice.7:109
14263 #, no-wrap
14264 msgid "IFF_SLAVE:Slave of a load balancing bundle.\n"
14265 msgstr "IFF_SLAVE:負荷分散グループのスレーブである。\n"
14266
14267 #. type: tbl table
14268 #: build/C/man7/netdevice.7:110
14269 #, no-wrap
14270 msgid "IFF_MULTICAST:Supports multicast\n"
14271 msgstr "IFF_MULTICAST:マルチキャストをサポートしている。\n"
14272
14273 #. type: tbl table
14274 #: build/C/man7/netdevice.7:111
14275 #, no-wrap
14276 msgid "IFF_PORTSEL:Is able to select media type via ifmap.\n"
14277 msgstr "IFF_PORTSEL:ifmap によってメディアタイプを選択できる。\n"
14278
14279 #. type: tbl table
14280 #: build/C/man7/netdevice.7:112
14281 #, no-wrap
14282 msgid "IFF_AUTOMEDIA:Auto media selection active.\n"
14283 msgstr "IFF_AUTOMEDIA:自動メディア選択が有効になっている。\n"
14284
14285 #. type: tbl table
14286 #: build/C/man7/netdevice.7:113
14287 #, no-wrap
14288 msgid "IFF_DYNAMIC:T{\n"
14289 msgstr "IFF_DYNAMIC:T{\n"
14290
14291 #. type: tbl table
14292 #: build/C/man7/netdevice.7:114
14293 #, no-wrap
14294 msgid "The addresses are lost when the interface goes down.\n"
14295 msgstr "このインターフェースが閉じると、アドレスは失われる。\n"
14296
14297 #. type: tbl table
14298 #: build/C/man7/netdevice.7:116
14299 #, no-wrap
14300 msgid "IFF_LOWER_UP:Driver signals L1 up (since Linux 2.6.17)\n"
14301 msgstr "IFF_LOWER_UP:ドライバからの L1 アップの通知 (Linux 2.6.17 以降)\n"
14302
14303 #. type: tbl table
14304 #: build/C/man7/netdevice.7:117
14305 #, no-wrap
14306 msgid "IFF_DORMANT:Driver signals dormant (since Linux 2.6.17)\n"
14307 msgstr "IFF_DORMANT:ドライバからの休止状態の通知 (Linux 2.6.17 以降)\n"
14308
14309 #. type: tbl table
14310 #: build/C/man7/netdevice.7:118
14311 #, no-wrap
14312 msgid "IFF_ECHO:Echo sent packets (since Linux 2.6.25)\n"
14313 msgstr "IFF_ECHO:送られたパケットをエコーする (Linux 2.6.25 以降)\n"
14314
14315 #. type: Plain text
14316 #: build/C/man7/netdevice.7:124
14317 msgid ""
14318 "Setting the active flag word is a privileged operation, but any process may "
14319 "read it."
14320 msgstr ""
14321 "active フラグワードの設定は特権が必要な操作である。\n"
14322 "読み出しはどんなプロセスからも可能である。"
14323
14324 #. type: TP
14325 #: build/C/man7/netdevice.7:124
14326 #, no-wrap
14327 msgid "B<SIOCGIFPFLAGS>, B<SIOCSIFPFLAGS>"
14328 msgstr "B<SIOCGIFPFLAGS>, B<SIOCSIFPFLAGS>"
14329
14330 #. type: Plain text
14331 #: build/C/man7/netdevice.7:129
14332 msgid ""
14333 "Get or set extended (private) flags for the device.  I<ifr_flags> contains a "
14334 "bit mask of the following values:"
14335 msgstr ""
14336 "デバイスの拡張 (プライベート) フラグを取得または設定する。\n"
14337 "I<ifr_flags> には以下の値のビットマスクが入る。"
14338
14339 #. type: tbl table
14340 #: build/C/man7/netdevice.7:133
14341 #, no-wrap
14342 msgid "Private flags\n"
14343 msgstr "プライベートフラグ\n"
14344
14345 #. type: tbl table
14346 #: build/C/man7/netdevice.7:134
14347 #, no-wrap
14348 msgid "IFF_802_1Q_VLAN:Interface is 802.1Q VLAN device.\n"
14349 msgstr "IFF_802_1Q_VLAN:インターフェースは 802.1Q VLAN デバイスである。\n"
14350
14351 #. type: tbl table
14352 #: build/C/man7/netdevice.7:135
14353 #, no-wrap
14354 msgid "IFF_EBRIDGE:Interface is Ethernet bridging device.\n"
14355 msgstr "IFF_EBRIDGE:インターフェースは Ethernet ブリッジデバイスである。\n"
14356
14357 #. type: tbl table
14358 #: build/C/man7/netdevice.7:136
14359 #, no-wrap
14360 msgid "IFF_SLAVE_INACTIVE:Interface is inactive bonding slave.\n"
14361 msgstr "IFF_SLAVE_INACTIVE:インターフェースは非アクティブな bonding のスレーブである。\n"
14362
14363 #. type: tbl table
14364 #: build/C/man7/netdevice.7:137
14365 #, no-wrap
14366 msgid "IFF_MASTER_8023AD:Interface is 802.3ad bonding master.\n"
14367 msgstr "IFF_MASTER_8023AD:インターフェースは 802.3ad bonding のマスターである。\n"
14368
14369 #. type: tbl table
14370 #: build/C/man7/netdevice.7:138
14371 #, no-wrap
14372 msgid "IFF_MASTER_ALB:Interface is balanced-alb bonding master.\n"
14373 msgstr "IFF_MASTER_ALB:インターフェースは balanced-alb bonding のマスターである。\n"
14374
14375 #. type: tbl table
14376 #: build/C/man7/netdevice.7:139
14377 #, no-wrap
14378 msgid "IFF_BONDING:Interface is a bonding master or slave.\n"
14379 msgstr "IFF_BONDING:インターフェースは bonding のマスターかスレーブである。\n"
14380
14381 #. type: tbl table
14382 #: build/C/man7/netdevice.7:140
14383 #, no-wrap
14384 msgid "IFF_SLAVE_NEEDARP:Interface needs ARPs for validation.\n"
14385 msgstr "IFF_SLAVE_NEEDARP:インターフェースは検証に APR が必要である。\n"
14386
14387 #. type: tbl table
14388 #: build/C/man7/netdevice.7:141
14389 #, no-wrap
14390 msgid "IFF_ISATAP:Interface is RFC4214 ISATAP interface.\n"
14391 msgstr "IFF_ISATAP:インターフェースは RFC4214 ISATAP インターフェースである。\n"
14392
14393 #. type: Plain text
14394 #: build/C/man7/netdevice.7:145
14395 msgid ""
14396 "Setting the extended (private) interface flags is a privileged operation."
14397 msgstr "拡張 (プライベート) インターフェースフラグの設定には特権が必要である。"
14398
14399 #. type: TP
14400 #: build/C/man7/netdevice.7:145
14401 #, no-wrap
14402 msgid "B<SIOCGIFADDR>, B<SIOCSIFADDR>"
14403 msgstr "B<SIOCGIFADDR>, B<SIOCSIFADDR>"
14404
14405 #. type: Plain text
14406 #: build/C/man7/netdevice.7:153
14407 msgid ""
14408 "Get or set the address of the device using I<ifr_addr>.  Setting the "
14409 "interface address is a privileged operation.  For compatibility, only "
14410 "B<AF_INET> addresses are accepted or returned."
14411 msgstr ""
14412 "I<ifr_addr> を用いてデバイスのアドレスの設定/取得を行う。\n"
14413 "インターフェースのアドレスの設定は特権が必要な操作である。\n"
14414 "互換性確保のため、設定/取得ができるのは B<AF_INET> アドレスだけである。"
14415
14416 #. type: TP
14417 #: build/C/man7/netdevice.7:153
14418 #, no-wrap
14419 msgid "B<SIOCGIFDSTADDR>, B<SIOCSIFDSTADDR>"
14420 msgstr "B<SIOCGIFDSTADDR>, B<SIOCSIFDSTADDR>"
14421
14422 #. type: Plain text
14423 #: build/C/man7/netdevice.7:161
14424 msgid ""
14425 "Get or set the destination address of a point-to-point device using "
14426 "I<ifr_dstaddr>.  For compatibility, only B<AF_INET> addresses are accepted "
14427 "or returned.  Setting the destination address is a privileged operation."
14428 msgstr ""
14429 "point-to-point デバイスの宛先アドレスを I<ifr_dstaddr> を用いて\n"
14430 "設定/取得する。互換性確保のため、\n"
14431 "設定/取得ができるのは B<AF_INET> アドレスだけである。\n"
14432 "宛先アドレスの設定は特権が必要な操作である。"
14433
14434 #. type: TP
14435 #: build/C/man7/netdevice.7:161
14436 #, no-wrap
14437 msgid "B<SIOCGIFBRDADDR>, B<SIOCSIFBRDADDR>"
14438 msgstr "B<SIOCGIFBRDADDR>, B<SIOCSIFBRDADDR>"
14439
14440 #. type: Plain text
14441 #: build/C/man7/netdevice.7:169
14442 msgid ""
14443 "Get or set the broadcast address for a device using I<ifr_brdaddr>.  For "
14444 "compatibility, only B<AF_INET> addresses are accepted or returned.  Setting "
14445 "the broadcast address is a privileged operation."
14446 msgstr ""
14447 "デバイスのブロードキャストアドレスを I<ifr_brdaddr> を用いて\n"
14448 "設定/取得する。互換性確保のため、\n"
14449 "設定/取得ができるのは B<AF_INET> アドレスだけである。\n"
14450 "ブロードキャストアドレスの設定は特権が必要な操作である。"
14451
14452 #. type: TP
14453 #: build/C/man7/netdevice.7:169
14454 #, no-wrap
14455 msgid "B<SIOCGIFNETMASK>, B<SIOCSIFNETMASK>"
14456 msgstr "B<SIOCGIFNETMASK>, B<SIOCSIFNETMASK>"
14457
14458 #. type: Plain text
14459 #: build/C/man7/netdevice.7:177
14460 msgid ""
14461 "Get or set the network mask for a device using I<ifr_netmask>.  For "
14462 "compatibility, only B<AF_INET> addresses are accepted or returned.  Setting "
14463 "the network mask is a privileged operation."
14464 msgstr ""
14465 "デバイスのネットワークマスクを I<ifr_netmask> を用いて\n"
14466 "設定/取得する。互換性確保のため、\n"
14467 "設定/取得ができるのは B<AF_INET> アドレスだけである。\n"
14468 "ネットワークマスクの設定は特権が必要な操作である。"
14469
14470 #. type: TP
14471 #: build/C/man7/netdevice.7:177
14472 #, no-wrap
14473 msgid "B<SIOCGIFMETRIC>, B<SIOCSIFMETRIC>"
14474 msgstr "B<SIOCGIFMETRIC>, B<SIOCSIFMETRIC>"
14475
14476 #. type: Plain text
14477 #: build/C/man7/netdevice.7:186
14478 msgid ""
14479 "Get or set the metric of the device using I<ifr_metric>.  This is currently "
14480 "not implemented; it sets I<ifr_metric> to 0 if you attempt to read it and "
14481 "returns B<EOPNOTSUPP> if you attempt to set it."
14482 msgstr ""
14483 "デバイスのメトリックを I<ifr_metric> を用いて取得・設定する。 これはまだ実装"
14484 "されていない。読み出そうとすると I<ifr_metric> に 0 をセットして返り、設定し"
14485 "ようとすると B<EOPNOTSUPP> が返る。"
14486
14487 #. type: TP
14488 #: build/C/man7/netdevice.7:186
14489 #, no-wrap
14490 msgid "B<SIOCGIFMTU>, B<SIOCSIFMTU>"
14491 msgstr "B<SIOCGIFMTU>, B<SIOCSIFMTU>"
14492
14493 #. type: Plain text
14494 #: build/C/man7/netdevice.7:193
14495 msgid ""
14496 "Get or set the MTU (Maximum Transfer Unit) of a device using I<ifr_mtu>.  "
14497 "Setting the MTU is a privileged operation.  Setting the MTU to too small "
14498 "values may cause kernel crashes."
14499 msgstr ""
14500 "デバイスの MTU (Maximum Transfer Unit) を I<ifr_mtu> を用いて取得・設定す"
14501 "る。 MTU の設定は特権が必要な操作である。 MTU の値を小さくしすぎるとカーネル"
14502 "がクラッシュするかもしれない。"
14503
14504 #. type: TP
14505 #: build/C/man7/netdevice.7:193
14506 #, no-wrap
14507 msgid "B<SIOCGIFHWADDR>, B<SIOCSIFHWADDR>"
14508 msgstr "B<SIOCGIFHWADDR>, B<SIOCSIFHWADDR>"
14509
14510 #. type: Plain text
14511 #: build/C/man7/netdevice.7:204
14512 msgid ""
14513 "Get or set the hardware address of a device using I<ifr_hwaddr>.  The "
14514 "hardware address is specified in a struct I<sockaddr>.  I<sa_family> "
14515 "contains the ARPHRD_* device type, I<sa_data> the L2 hardware address "
14516 "starting from byte 0.  Setting the hardware address is a privileged "
14517 "operation."
14518 msgstr ""
14519 "デバイスのハードウェアアドレスを I<ifr_hwaddr> を用いて取得・設定する。 ハー"
14520 "ドウェアアドレスは I<sockaddr> 構造体に設定される。 I<sa_family> には "
14521 "ARPHRD_* デバイスタイプが入り、 I<sa_data> にはバイト 0 から始まる L2 ハード"
14522 "ウェアアドレスが入る。 ハードウェアアドレスの設定は特権が必要な操作である。"
14523
14524 #. type: TP
14525 #: build/C/man7/netdevice.7:204
14526 #, no-wrap
14527 msgid "B<SIOCSIFHWBROADCAST>"
14528 msgstr "B<SIOCSIFHWBROADCAST>"
14529
14530 #. type: Plain text
14531 #: build/C/man7/netdevice.7:209
14532 msgid ""
14533 "Set the hardware broadcast address of a device from I<ifr_hwaddr>.  This is "
14534 "a privileged operation."
14535 msgstr ""
14536 "デバイスのハードウェアブロードキャストアドレスを I<ifr_hwaddr> の値に設定す"
14537 "る。この操作には特権が必要である。"
14538
14539 #. type: TP
14540 #: build/C/man7/netdevice.7:209
14541 #, no-wrap
14542 msgid "B<SIOCGIFMAP>, B<SIOCSIFMAP>"
14543 msgstr "B<SIOCGIFMAP>, B<SIOCSIFMAP>"
14544
14545 #. type: Plain text
14546 #: build/C/man7/netdevice.7:214
14547 msgid ""
14548 "Get or set the interface's hardware parameters using I<ifr_map>.  Setting "
14549 "the parameters is a privileged operation."
14550 msgstr ""
14551 "インターフェースのハードウェアのパラメータを I<ifr_map> を用いて取得・設定す"
14552 "る。 パラメータの設定は特権が必要な操作である。"
14553
14554 #. type: Plain text
14555 #: build/C/man7/netdevice.7:225
14556 #, no-wrap
14557 msgid ""
14558 "struct ifmap {\n"
14559 "    unsigned long   mem_start;\n"
14560 "    unsigned long   mem_end;\n"
14561 "    unsigned short  base_addr;\n"
14562 "    unsigned char   irq;\n"
14563 "    unsigned char   dma;\n"
14564 "    unsigned char   port;\n"
14565 "};\n"
14566 msgstr ""
14567 "struct ifmap {\n"
14568 "    unsigned long   mem_start;\n"
14569 "    unsigned long   mem_end;\n"
14570 "    unsigned short  base_addr;\n"
14571 "    unsigned char   irq;\n"
14572 "    unsigned char   dma;\n"
14573 "    unsigned char   port;\n"
14574 "};\n"
14575
14576 #. type: Plain text
14577 #: build/C/man7/netdevice.7:230
14578 msgid ""
14579 "The interpretation of the ifmap structure depends on the device driver and "
14580 "the architecture."
14581 msgstr "ifmap 構造体の解釈はデバイスドライバとアーキテクチャに依存する。"
14582
14583 #. type: TP
14584 #: build/C/man7/netdevice.7:230
14585 #, no-wrap
14586 msgid "B<SIOCADDMULTI>, B<SIOCDELMULTI>"
14587 msgstr "B<SIOCADDMULTI>, B<SIOCDELMULTI>"
14588
14589 #. type: Plain text
14590 #: build/C/man7/netdevice.7:239
14591 msgid ""
14592 "Add an address to or delete an address from the device's link layer "
14593 "multicast filters using I<ifr_hwaddr>.  These are privileged operations.  "
14594 "See also B<packet>(7)  for an alternative."
14595 msgstr ""
14596 "デバイスのリンク層のマルチキャストフィルターから、 I<ifr_hwaddr> のアドレスを"
14597 "追加・削除する。これらの操作には特権が必要である。 別の方法が B<packet>(7)  "
14598 "で解説されている。"
14599
14600 #. type: TP
14601 #: build/C/man7/netdevice.7:239
14602 #, no-wrap
14603 msgid "B<SIOCGIFTXQLEN>, B<SIOCSIFTXQLEN>"
14604 msgstr "B<SIOCGIFTXQLEN>, B<SIOCSIFTXQLEN>"
14605
14606 #. type: Plain text
14607 #: build/C/man7/netdevice.7:244
14608 msgid ""
14609 "Get or set the transmit queue length of a device using I<ifr_qlen>.  Setting "
14610 "the transmit queue length is a privileged operation."
14611 msgstr ""
14612 "デバイスの送信キューの長さを I<ifr_qlen> に取得・設定する。送信キューの長さの"
14613 "設定には特権が必要である。"
14614
14615 #. type: TP
14616 #: build/C/man7/netdevice.7:244
14617 #, no-wrap
14618 msgid "B<SIOCSIFNAME>"
14619 msgstr "B<SIOCSIFNAME>"
14620
14621 #. type: Plain text
14622 #: build/C/man7/netdevice.7:253
14623 msgid ""
14624 "Changes the name of the interface specified in I<ifr_name> to "
14625 "I<ifr_newname>.  This is a privileged operation.  It is allowed only when "
14626 "the interface is not up."
14627 msgstr ""
14628 "I<ifr_name> で指定したインターフェースの名前を I<ifr_newname> に変更する。こ"
14629 "の操作には特権が必要である。インターフェースが up していない 時にのみ使用でき"
14630 "る。"
14631
14632 #. type: TP
14633 #: build/C/man7/netdevice.7:253
14634 #, no-wrap
14635 msgid "B<SIOCGIFCONF>"
14636 msgstr "B<SIOCGIFCONF>"
14637
14638 #. type: Plain text
14639 #: build/C/man7/netdevice.7:263
14640 msgid ""
14641 "Return a list of interface (transport layer) addresses.  This currently "
14642 "means only addresses of the B<AF_INET> (IPv4) family for compatibility.  "
14643 "Unlike the others, this ioctl passes an I<ifconf> structure:"
14644 msgstr ""
14645 "インターフェースの (トランスポート層の) アドレスのリストを返す。 現在のとこ"
14646 "ろ、互換性のため返されるのは B<AF_INET> (IPv4) 系のアドレスだけである。 他の"
14647 "操作と違い、この ioctl では I<ifconf> 構造体を渡す。"
14648
14649 #. type: Plain text
14650 #: build/C/man7/netdevice.7:273
14651 #, no-wrap
14652 msgid ""
14653 "struct ifconf {\n"
14654 "    int                 ifc_len; /* size of buffer */\n"
14655 "    union {\n"
14656 "        char           *ifc_buf; /* buffer address */\n"
14657 "        struct ifreq   *ifc_req; /* array of structures */\n"
14658 "    };\n"
14659 "};\n"
14660 msgstr ""
14661 "struct ifconf {\n"
14662 "    int                 ifc_len; /* バッファサイズ */\n"
14663 "    union {\n"
14664 "        char           *ifc_buf; /* バッファアドレス */\n"
14665 "        struct ifreq   *ifc_req; /* 構造体の配列 */\n"
14666 "    };\n"
14667 "};\n"
14668
14669 #. type: Plain text
14670 #: build/C/man7/netdevice.7:299
14671 msgid ""
14672 "If I<ifc_req> is NULL, B<SIOCGIFCONF> returns the necessary buffer size in "
14673 "bytes for receiving all available addresses in I<ifc_len>.  Otherwise, "
14674 "I<ifc_req> contains a pointer to an array of I<ifreq> structures to be "
14675 "filled with all currently active L3 interface addresses.  I<ifc_len> "
14676 "contains the size of the array in bytes.  Within each I<ifreq> structure, "
14677 "I<ifr_name> will receive the interface name, and I<ifr_addr> the address.  "
14678 "The actual number of bytes transferred is returned in I<ifc_len>."
14679 msgstr ""
14680 "I<ifc_req> が NULL の場合、 B<SIOCGIFCONF> はすべての取得できるアドレスを受け"
14681 "取るのに必要なバッファサイズ (バイト数) を I<ifc_len> に格納して返す。 それ以"
14682 "外の場合は、I<ifc_req> には I<ifreq> 構造体の配列へのポインタを渡す。 この構"
14683 "造体の配列には現在アクティブな L3 インターフェースアドレスがすべて格納され"
14684 "る。 I<ifc_len> はバイト単位の配列のサイズを渡す。 I<ifreq> 構造体内では、 "
14685 "I<ifr_name> にインターフェース名が、 I<ifr_addr> にそのアドレスが入る。 実際"
14686 "に格納されたバイト数は I<ifc_len> で返される。"
14687
14688 #. type: Plain text
14689 #: build/C/man7/netdevice.7:315
14690 msgid ""
14691 "If the size specified by I<ifc_len> is insufficient to store all the "
14692 "addresses, the kernel will skip the exceeding ones and return success.  "
14693 "There is no reliable way of detecting this condition once it has occurred.  "
14694 "It is therefore recommended to either determine the necessary buffer size "
14695 "beforehand by calling B<SIOCGIFCONF> with I<ifc_req> set to NULL, or to "
14696 "retry the call with a bigger buffer whenever I<ifc_len> upon return differs "
14697 "by less than I<sizeof(struct ifreq)> from its original value."
14698 msgstr ""
14699 "I<ifc_len> で指定されたサイズがすべてのアドレスを格納するのに不十分な場合、 "
14700 "カーネルは超過分をスキップし、成功を返す。 この状況になった場合、それを検出す"
14701 "る信頼できる方法はない。 したがって、 前もって I<ifc_req> を NULL に設定して "
14702 "B<SIOCGIFCONF> を呼び出して必要なバッファサイズを決定するか、 返された "
14703 "I<ifc_len> と元の値の差分が I<sizeof(struct ifreq)> よりも小さい場合は必ず"
14704 "バッファを大きくして再度呼び出すか、 のいずれかを行うことが推奨される。 "
14705
14706 #.  Slaving isn't supported in 2.2
14707 #.  .
14708 #.  .TP
14709 #.  .BR SIOCGIFSLAVE ", " SIOCSIFSLAVE
14710 #.  Get or set the slave device using
14711 #.  .IR ifr_slave .
14712 #.  Setting the slave device is a privileged operation.
14713 #.  .PP
14714 #.  FIXME . add amateur radio stuff.
14715 #. type: Plain text
14716 #: build/C/man7/netdevice.7:332
14717 msgid ""
14718 "If an error occurs accessing the I<ifconf> or I<ifreq> structures, B<EFAULT> "
14719 "will be returned."
14720 msgstr ""
14721 "I<ifconf> か I<ifreq> 構造体へのアクセスでエラーが置こった場合には B<EFAULT> "
14722 "が返される。"
14723
14724 #. type: Plain text
14725 #: build/C/man7/netdevice.7:338
14726 msgid ""
14727 "Most protocols support their own ioctls to configure protocol-specific "
14728 "interface options.  See the protocol man pages for a description.  For "
14729 "configuring IP addresses, see B<ip>(7)."
14730 msgstr ""
14731 "ほとんどのプロトコルには、専用のインターフェースオプションを 設定するための独"
14732 "自の ioctl が存在する。 説明は各プロトコルの man ページを見よ。 IP アドレスの"
14733 "設定に関しては B<ip>(7) を参照。"
14734
14735 #. type: Plain text
14736 #: build/C/man7/netdevice.7:341
14737 msgid ""
14738 "In addition, some devices support private ioctls.  These are not described "
14739 "here."
14740 msgstr ""
14741 "さらに、デバイスによってはプライベートな ioctl がある。 これらはここでは説明"
14742 "しない。"
14743
14744 #. type: Plain text
14745 #: build/C/man7/netdevice.7:349
14746 msgid ""
14747 "Strictly speaking, B<SIOCGIFCONF> and the other ioctls that accept or return "
14748 "only B<AF_INET> socket addresses, are IP-specific and belong in B<ip>(7)."
14749 msgstr ""
14750 "厳密にいうと、 B<SIOCGIFCONF> や、 B<AF_INET> ソケットアドレスだけを\n"
14751 "引き数に取ったり返したりする他の ioctl は IP 固有であり、 B<ip>(7) \n"
14752 "に属する。"
14753
14754 #. type: Plain text
14755 #: build/C/man7/netdevice.7:354
14756 msgid ""
14757 "The names of interfaces with no addresses or that don't have the "
14758 "B<IFF_RUNNING> flag set can be found via I</proc/net/dev>."
14759 msgstr ""
14760 "アドレスがなかったり、 B<IFF_RUNNING> フラグがセットされていないインター"
14761 "フェースの名前は I</proc/net/dev> で知ることができる。"
14762
14763 #. type: Plain text
14764 #: build/C/man7/netdevice.7:359
14765 msgid ""
14766 "Local IPv6 IP addresses can be found via I</proc/net> or via B<rtnetlink>(7)."
14767 msgstr ""
14768 "ローカル IPV6 IP アドレスは I</proc/net> か B<rtnetlink>(7)  で知ることができ"
14769 "る。"
14770
14771 #. type: Plain text
14772 #: build/C/man7/netdevice.7:365
14773 msgid ""
14774 "glibc 2.1 is missing the I<ifr_newname> macro in I<E<lt>net/if.hE<gt>>.  Add "
14775 "the following to your program as a workaround:"
14776 msgstr ""
14777 "glibc 2.1 では I<E<lt>net/if.hE<gt>> に I<ifr_newname> マクロがない。 とりあ"
14778 "えずの対応策として、以下のコードを追加しておくこと。"
14779
14780 #. type: Plain text
14781 #: build/C/man7/netdevice.7:371
14782 #, no-wrap
14783 msgid ""
14784 "#ifndef ifr_newname\n"
14785 "#define ifr_newname     ifr_ifru.ifru_slave\n"
14786 "#endif\n"
14787 msgstr ""
14788 "#ifndef ifr_newname\n"
14789 "#define ifr_newname     ifr_ifru.ifru_slave\n"
14790 "#endif\n"
14791
14792 #. type: Plain text
14793 #: build/C/man7/netdevice.7:378
14794 msgid "B<proc>(5), B<capabilities>(7), B<ip>(7), B<rtnetlink>(7)"
14795 msgstr "B<proc>(5), B<capabilities>(7), B<ip>(7), B<rtnetlink>(7)"
14796
14797 #. type: TH
14798 #: build/C/man5/networks.5:26
14799 #, no-wrap
14800 msgid "NETWORKS"
14801 msgstr "NETWORKS"
14802
14803 #. type: TH
14804 #: build/C/man5/networks.5:26
14805 #, no-wrap
14806 msgid "2008-09-04"
14807 msgstr "2008-09-04"
14808
14809 #. type: TH
14810 #: build/C/man5/networks.5:26
14811 #, no-wrap
14812 msgid "GNU/Linux"
14813 msgstr "GNU/Linux"
14814
14815 #. type: Plain text
14816 #: build/C/man5/networks.5:29
14817 msgid "networks - network name information"
14818 msgstr "networks - ネットワーク名の情報"
14819
14820 #. type: Plain text
14821 #: build/C/man5/networks.5:35
14822 msgid ""
14823 "The file I</etc/networks> is a plain ASCII file that describes known DARPA "
14824 "networks and symbolic names for these networks.  Each line represents a "
14825 "network and has the following structure:"
14826 msgstr ""
14827 "I</etc/networks> ファイルは、通常の ASCII ファイルで、よく使われる\n"
14828 "DARPA ネットワークとその分かりやすい名前を記載したファイルである。\n"
14829 "各行が一つのネットワークを表し、以下の構造となっている。"
14830
14831 #. type: Plain text
14832 #: build/C/man5/networks.5:38
14833 msgid "I<name number aliases ...>"
14834 msgstr "I<name number aliases ...>"
14835
14836 #. type: Plain text
14837 #: build/C/man5/networks.5:46
14838 msgid ""
14839 "where the fields are delimited by spaces or tabs.  Empty lines are ignored.  "
14840 "The hash character (B<#>) indicates the start of a comment: this character, "
14841 "and the remaining characters up to the end of the current line, are ignored "
14842 "by library functions that process the file."
14843 msgstr ""
14844 "フィールドはスペースかタブで区切られる。空行は無視される。\n"
14845 "ハッシュ文字 (B<#>) はコメントの開始を示し、このファイルを処理する\n"
14846 "ライブラリ関数はこの文字とその行のそれ以降の文字を無視する。"
14847
14848 #. type: Plain text
14849 #: build/C/man5/networks.5:48 build/C/man5/protocols.5:59
14850 msgid "The field descriptions are:"
14851 msgstr "フィールドの説明は以下のとおり。"
14852
14853 #. type: TP
14854 #: build/C/man5/networks.5:48
14855 #, no-wrap
14856 msgid "I<name>"
14857 msgstr "I<name>"
14858
14859 #. type: Plain text
14860 #: build/C/man5/networks.5:53
14861 msgid ""
14862 "The symbolic name for the network.  Network names can contain any printable "
14863 "characters except white-space characters or the comment character."
14864 msgstr ""
14865 "ネットワークの分かりやすい名前 (symbolic name)。 ネットワーク名には、ホワイト"
14866 "スペースとコメント文字以外の印字可能な文字を使うことができる。"
14867
14868 #. type: TP
14869 #: build/C/man5/networks.5:53 build/C/man5/protocols.5:67
14870 #, no-wrap
14871 msgid "I<number>"
14872 msgstr "I<number>"
14873
14874 #. type: Plain text
14875 #: build/C/man5/networks.5:58
14876 msgid ""
14877 "The official number for this network in numbers-and-dots notation (see "
14878 "B<inet>(3)).  The trailing \".0\" (for the host component of the network "
14879 "address) may be omitted."
14880 msgstr ""
14881 "このネットワークの正式な数字での値。\n"
14882 "ドット区切りの数字表記 (B<inet>(3) 参照) で記載する。\n"
14883 "末尾の \".0\" (ネットワークアドレスのホスト部分) は省略してもよい。"
14884
14885 #. type: TP
14886 #: build/C/man5/networks.5:58 build/C/man5/protocols.5:71
14887 #: build/C/man5/services.5:120
14888 #, no-wrap
14889 msgid "I<aliases>"
14890 msgstr "I<aliases>"
14891
14892 #. type: Plain text
14893 #: build/C/man5/networks.5:61
14894 msgid "Optional aliases for the network."
14895 msgstr "そのネットワークの別名 (省略可能)。"
14896
14897 #. type: Plain text
14898 #: build/C/man5/networks.5:70
14899 msgid ""
14900 "This file is read by the B<route>(8)  and B<netstat>(8)  utilities.  Only "
14901 "Class A, B or C networks are supported, partitioned networks (i.e., "
14902 "network/26 or network/28) are not supported by this facility."
14903 msgstr ""
14904 "このファイルは、 B<route>(8) と B<netstat>(8) ユーティリティにより\n"
14905 "利用される。クラス A, B, C のネットワークだけがサポートされており、\n"
14906 "(network/26 や network/28 といった) 分割されたネットワークは\n"
14907 "このファイルではサポートされていない。"
14908
14909 #. type: Plain text
14910 #: build/C/man5/networks.5:74
14911 msgid "The networks definition file."
14912 msgstr "ネットワーク定義ファイル。"
14913
14914 #. type: Plain text
14915 #: build/C/man5/networks.5:80
14916 msgid ""
14917 "B<getnetbyaddr>(3), B<getnetbyname>(3), B<getnetent>(3), B<netstat>(8), "
14918 "B<route>(8)"
14919 msgstr ""
14920 "B<getnetbyaddr>(3), B<getnetbyname>(3), B<getnetent>(3), B<netstat>(8), "
14921 "B<route>(8)"
14922
14923 #. type: TH
14924 #: build/C/man8/nscd.8:23
14925 #, no-wrap
14926 msgid "NSCD"
14927 msgstr "NSCD"
14928
14929 #. type: Plain text
14930 #: build/C/man8/nscd.8:26
14931 msgid "nscd - name service cache daemon"
14932 msgstr "nscd - ネームサービスキャッシュデーモン"
14933
14934 #. type: Plain text
14935 #: build/C/man8/nscd.8:34
14936 msgid ""
14937 "Nscd is a daemon that provides a cache for the most common name service "
14938 "requests.  The default configuration file, I</etc/nscd.conf>, determines the "
14939 "behavior of the cache daemon.  See B<nscd.conf>(5)."
14940 msgstr ""
14941 "nscd は一般的なネームサービスに必要な多くのものを キャッシュとして提供する"
14942 "デーモンである。 デフォルトの設定ファイル I</etc/nscd.conf> でキャッシュデー"
14943 "モンの動作を決定する。 B<nscd.conf>(5)  を見よ。"
14944
14945 #. type: Plain text
14946 #: build/C/man8/nscd.8:47
14947 msgid ""
14948 "Nscd provides caching for accesses of the B<passwd>(5), B<group>(5), and "
14949 "B<hosts>(5)  databases through standard libc interfaces, such as "
14950 "B<getpwnam>(3), B<getpwuid>(3), B<getgrnam>(3), B<getgrgid>(3), "
14951 "B<gethostbyname>(3), and others."
14952 msgstr ""
14953 "nscd は B<passwd>(5), B<group>(5), B<hosts>(5)  データベースへのアクセスの"
14954 "キャッシュを B<getpwnam>(3), B<getpwuid>(3), B<getgrnam>(3), B<getgrgid>(3), "
14955 "B<gethostbyname>(3)  などの標準 libc インターフェースを通して提供する。"
14956
14957 #. type: Plain text
14958 #: build/C/man8/nscd.8:56
14959 msgid ""
14960 "There are two caches for each database: a positive one for items found, and "
14961 "a negative one for items not found.  Each cache has a separate TTL (time-to-"
14962 "live)  period for its data.  Note that the shadow file is specifically not "
14963 "cached.  B<getspnam>(3)  calls remain uncached as a result."
14964 msgstr ""
14965 "各データベースには 2 つのキャッシュがある。 肯定的 (positive) なキャッシュは"
14966 "見つかったアイテムをキャッシュし、 否定的 (negative) なキャッシュは見つからな"
14967 "かったアイテムをキャッシュする。 各キャッシュはデータの TTL (time-to-live, 生"
14968 "存時間) を個別に持っている。 特例として shadow ファイルはキャッシュされない点"
14969 "に注意すること。 B<getspnam>(3)  を呼び出しても結果としてキャッシュされないま"
14970 "まになる。"
14971
14972 #. type: SH
14973 #: build/C/man8/nscd.8:56
14974 #, no-wrap
14975 msgid "OPTIONS"
14976 msgstr "オプション"
14977
14978 #. type: TP
14979 #: build/C/man8/nscd.8:57
14980 #, no-wrap
14981 msgid "B<--help>"
14982 msgstr "B<--help>"
14983
14984 #. type: Plain text
14985 #: build/C/man8/nscd.8:60
14986 msgid "will give you a list with all options and what they do."
14987 msgstr "全てのオプションとその動作をリストして表示する。"
14988
14989 #. type: Plain text
14990 #: build/C/man8/nscd.8:83
14991 msgid ""
14992 "The daemon will try to watch for changes in configuration files appropriate "
14993 "for each database (e.g., I</etc/passwd> for the I<passwd> database or I</etc/"
14994 "hosts> and I</etc/resolv.conf> for the I<hosts> database), and flush the "
14995 "cache when these are changed.  However, this will happen only after a short "
14996 "delay (unless the B<inotify>(7)  mechanism is available and glibc 2.9 or "
14997 "later is available), and this auto-detection does not cover configuration "
14998 "files required by nonstandard NSS modules, if any are specified in I</etc/"
14999 "nsswitch.conf>.  In that case, you need to run the following command after "
15000 "changing the configuration file of the database so that B<nscd> invalidates "
15001 "its cache:"
15002 msgstr ""
15003 "デーモンは( I<passwd> データベースについては I</etc/passwd>、 I<hosts> データ"
15004 "ベースについては I</etc/hosts> と I</etc/resolv.conf> というような)それぞれの"
15005 "データベースのための設定ファイルを見張って、 これらが変更されるとキャッシュを"
15006 "フラッシュする。 しかし、これは( B<inotify>(7)  が利用可能で、glibc 2.9 以降"
15007 "が利用可能な場合を除いて)  短い遅延の後に起こり、またこの自動検出は非標準 "
15008 "NSS モジュールが I</etc/nsswitch.conf> で指定されている場合はその設定ファイル"
15009 "には対応しない。 この場合、データベースの設定ファイルを変更した後、 B<nscd> "
15010 "のキャッシュを無効にするために以下のコマンドを実行する必要がある:"
15011
15012 #. type: Plain text
15013 #: build/C/man8/nscd.8:85
15014 #, no-wrap
15015 msgid "    $ B<nscd -i> I<E<lt>databaseE<gt>>\n"
15016 msgstr "    $ B<nscd -i> I<E<lt>databaseE<gt>>\n"
15017
15018 #.  .SH AUTHOR
15019 #.  .B nscd
15020 #.  was written by Thorsten Kukuk and Ulrich Drepper.
15021 #. type: Plain text
15022 #: build/C/man8/nscd.8:91
15023 msgid "B<nscd.conf>(5), B<nsswitch.conf>(5)"
15024 msgstr "B<nscd.conf>(5), B<nsswitch.conf>(5)"
15025
15026 #. type: TH
15027 #: build/C/man5/nscd.conf.5:20
15028 #, no-wrap
15029 msgid "NSCD.CONF"
15030 msgstr "NSCD.CONF"
15031
15032 #. type: TH
15033 #: build/C/man5/nscd.conf.5:20
15034 #, no-wrap
15035 msgid "2014-02-07"
15036 msgstr "2014-02-07"
15037
15038 #. type: Plain text
15039 #: build/C/man5/nscd.conf.5:23
15040 msgid "/etc/nscd.conf - name service cache daemon configuration file"
15041 msgstr "/etc/nscd.conf - ネームサービスキャッシュデーモンの設定ファイル"
15042
15043 #. type: Plain text
15044 #: build/C/man5/nscd.conf.5:36
15045 msgid ""
15046 "The file I</etc/nscd.conf> is read from B<nscd>(8)  at startup.  Each line "
15047 "specifies either an attribute and a value, or an attribute, service, and a "
15048 "value.  Fields are separated either by SPACE or TAB characters.  A \\(aq#"
15049 "\\(aq (number sign) indicates the beginning of a comment; following "
15050 "characters, up to the end of the line, are not interpreted by nscd."
15051 msgstr ""
15052 "B<nscd>(8)  は起動時にファイル I</etc/nscd.conf> を読み込む。 各行には「属"
15053 "性・値」または「属性・サービス・値」を指定する。 フィールドはスペース文字また"
15054 "はタブ文字で区切られる。 \\(aq#\\(aq (ナンバー記号) はコメントの始まりを表"
15055 "す。 この記号から行末までは nscd によって解釈されない。"
15056
15057 #. type: Plain text
15058 #: build/C/man5/nscd.conf.5:39
15059 msgid ""
15060 "Valid services are I<passwd>, I<group>, I<hosts>, I<services>, or "
15061 "I<netgroup>."
15062 msgstr ""
15063 "指定可能なサービスは I<passwd>, I<group>, I<hosts>, I<services>, I<netgroup> "
15064 "である。"
15065
15066 #. type: Plain text
15067 #: build/C/man5/nscd.conf.5:42
15068 msgid "B<logfile> I<debug-file-name>"
15069 msgstr "B<logfile> I<debug-file-name>"
15070
15071 #. type: Plain text
15072 #: build/C/man5/nscd.conf.5:44
15073 msgid "Specifies name of the file to which debug info should be written."
15074 msgstr "デバッグ情報が書き込まれるファイルの名前を指定する。"
15075
15076 #. type: Plain text
15077 #: build/C/man5/nscd.conf.5:48
15078 msgid "B<debug-level> I<value>"
15079 msgstr "B<debug-level> I<value>"
15080
15081 #. type: Plain text
15082 #: build/C/man5/nscd.conf.5:51
15083 msgid "Sets the desired debug level.  The default is 0."
15084 msgstr "希望するデバッグレベルを設定する。デフォルトは 0。"
15085
15086 #. type: Plain text
15087 #: build/C/man5/nscd.conf.5:55
15088 msgid "B<threads> I<number>"
15089 msgstr "B<threads> I<number>"
15090
15091 #. type: Plain text
15092 #: build/C/man5/nscd.conf.5:59
15093 msgid ""
15094 "This is the number of threads that are started to wait for requests.  At "
15095 "least five threads will always be created."
15096 msgstr ""
15097 "スレッドをいくつ起動してリクエストを待つのかを指定する。 少なくとも 5 つのス"
15098 "レッドが常に作成される。"
15099
15100 #. type: Plain text
15101 #: build/C/man5/nscd.conf.5:63
15102 msgid "B<max-threads> I<number>"
15103 msgstr "B<max-threads> I<number>"
15104
15105 #. type: Plain text
15106 #: build/C/man5/nscd.conf.5:66
15107 msgid "Specifies the maximum number of threads.  The default is 32."
15108 msgstr "スレッドの最大数を指定する。デフォルトは 32。"
15109
15110 #. type: Plain text
15111 #: build/C/man5/nscd.conf.5:70
15112 msgid "B<server-user> I<user>"
15113 msgstr "B<server-user> I<user>"
15114
15115 #. type: Plain text
15116 #: build/C/man5/nscd.conf.5:74
15117 msgid ""
15118 "If this option is set, nscd will run as this user and not as root.  If a "
15119 "separate cache for every user is used (-S parameter), this option is ignored."
15120 msgstr ""
15121 "このオプションが設定されると、 nscd は root ではなく、この user として実行さ"
15122 "れる。 (-S パラメータにより) 各ユーザー毎に別々のキャッシュが使われる場合、 "
15123 "このオプションは無視される。"
15124
15125 #. type: Plain text
15126 #: build/C/man5/nscd.conf.5:78
15127 msgid "B<stat-user> I<user>"
15128 msgstr "B<stat-user> I<user>"
15129
15130 #. type: Plain text
15131 #: build/C/man5/nscd.conf.5:80
15132 msgid "Specifies the user who is allowed to request statistics."
15133 msgstr "統計情報の参照を許可するユーザを指定する。"
15134
15135 #. type: Plain text
15136 #: build/C/man5/nscd.conf.5:85
15137 msgid "B<reload-count> unlimited | I<number>"
15138 msgstr "B<reload-count> unlimited | I<number>"
15139
15140 #. type: Plain text
15141 #: build/C/man5/nscd.conf.5:89
15142 msgid ""
15143 "Limit on the number of times a cached entry gets reloaded without being used "
15144 "before it gets removed.  The default is 5."
15145 msgstr ""
15146 "キャッシュされたエントリが使用されなかったときに、 削除される前に何回リロード"
15147 "されるかを設定する。デフォルトは 5。"
15148
15149 #. type: Plain text
15150 #: build/C/man5/nscd.conf.5:93
15151 msgid "B<paranoia> I<E<lt>yes|noE<gt>>"
15152 msgstr "B<paranoia> I<E<lt>yes|noE<gt>>"
15153
15154 #. type: Plain text
15155 #: build/C/man5/nscd.conf.5:96
15156 msgid ""
15157 "Enabling paranoia mode causes nscd to restart itself periodically.  The "
15158 "default is no."
15159 msgstr ""
15160 "パラノイアモードを有効にする。 パラノイアモードでは nscd を定期的に再起動す"
15161 "る。デフォルトは無効。"
15162
15163 #. type: Plain text
15164 #: build/C/man5/nscd.conf.5:100
15165 msgid "B<restart-interval> I<time>"
15166 msgstr "B<restart-interval> I<time>"
15167
15168 #. type: Plain text
15169 #: build/C/man5/nscd.conf.5:108
15170 msgid ""
15171 "Sets the restart interval to I<time> seconds if periodic restart is enabled "
15172 "by enabling B<paranoia> mode.  The default is 3600."
15173 msgstr ""
15174 "パラノイアモードが有効で定期的に再起動する場合の、 再起動間隔を I<time> 秒に"
15175 "設定する。デフォルトは 3600。"
15176
15177 #. type: Plain text
15178 #: build/C/man5/nscd.conf.5:113
15179 msgid "B<enable-cache> I<service> I<E<lt>yes|noE<gt>>"
15180 msgstr "B<enable-cache> I<service> I<E<lt>yes|noE<gt>>"
15181
15182 #. type: Plain text
15183 #: build/C/man5/nscd.conf.5:118
15184 msgid "Enables or disables the specified I<service> cache.  The default is no."
15185 msgstr ""
15186 "指定した I<service> のキャッシュを有効または無効にする。デフォルトは無効。"
15187
15188 #. type: Plain text
15189 #: build/C/man5/nscd.conf.5:123
15190 msgid "B<positive-time-to-live> I<service> I<value>"
15191 msgstr "B<positive-time-to-live> I<service> I<value>"
15192
15193 #. type: Plain text
15194 #: build/C/man5/nscd.conf.5:131
15195 msgid ""
15196 "Sets the TTL (time-to-live) for positive entries (successful queries)  in "
15197 "the specified cache for I<service>.  I<Value> is in seconds.  Larger values "
15198 "increase cache hit rates and reduce mean response times, but increase "
15199 "problems with cache coherence."
15200 msgstr ""
15201 "指定した I<service> のキャッシュにあるポジティブエントリ (成功した問い合わ"
15202 "せ) の TTL (time-to-live) を設定する。 I<value> の単位は秒である。 値を大きく"
15203 "すると、ヒット率が高くなり平均応答時間を短くできるが、 キャッシュのコヒーレン"
15204 "ス (coherence, キャッシュが実際のデータと一致していること) に問題が生じる。"
15205
15206 #. type: Plain text
15207 #: build/C/man5/nscd.conf.5:136
15208 msgid "B<negative-time-to-live> I<service> I<value>"
15209 msgstr "B<negative-time-to-live> I<service> I<value>"
15210
15211 #. type: Plain text
15212 #: build/C/man5/nscd.conf.5:146
15213 msgid ""
15214 "Sets the TTL (time-to-live) for negative entries (unsuccessful queries)  in "
15215 "the specified cache for I<service>.  I<Value> is in seconds.  Can result in "
15216 "significant performance improvements if there are several files owned by "
15217 "UIDs (user IDs) not in system databases (for example untarring the Linux "
15218 "kernel sources as root); should be kept small to reduce cache coherency "
15219 "problems."
15220 msgstr ""
15221 "指定した I<service> のキャッシュにあるネガティブエントリ (失敗した問い合わ"
15222 "せ) の TTL (time-to-live) を設定する。 I<value> の単位は秒である。 システム"
15223 "データベースにない UID (ユーザーID) で所有されるファイル (たとえば root で "
15224 "tar を展開した Linux カーネルのソース) が少ないと、 顕著な性能の向上が見られ"
15225 "る。 キャッシュのコヒーレンス問題を少なくするために小さな値にすべきである。"
15226
15227 #. type: Plain text
15228 #: build/C/man5/nscd.conf.5:151
15229 msgid "B<suggested-size> I<service> I<value>"
15230 msgstr "B<suggested-size> I<service> I<value>"
15231
15232 #. type: Plain text
15233 #: build/C/man5/nscd.conf.5:156
15234 msgid ""
15235 "This is the internal hash table size, I<value> should remain a prime number "
15236 "for optimum efficiency.  The default is 211."
15237 msgstr ""
15238 "内部ハッシュテーブルの大きさを指定する。 効率を最適にするために I<value> は素"
15239 "数にしておくべきである。デフォルトは 211 である。"
15240
15241 #. type: Plain text
15242 #: build/C/man5/nscd.conf.5:161
15243 msgid "B<check-files> I<service> I<E<lt>yes|noE<gt>>"
15244 msgstr "B<check-files> I<service> I<E<lt>yes|noE<gt>>"
15245
15246 #. type: Plain text
15247 #: build/C/man5/nscd.conf.5:173
15248 msgid ""
15249 "Enables or disables checking the file belonging to the specified I<service> "
15250 "for changes.  The files are I</etc/passwd>, I</etc/group>, I</etc/hosts>, I</"
15251 "etc/services> and I</etc/netgroup>.  The default is yes."
15252 msgstr ""
15253 "指定した I<service> に関連するファイルの変更のチェックを有効または無効にす"
15254 "る。 ファイルは I</etc/passwd>, I</etc/group>, I</etc/hosts> である。デフォル"
15255 "トは有効。"
15256
15257 #. type: Plain text
15258 #: build/C/man5/nscd.conf.5:178
15259 msgid "B<persistent> I<service> I<E<lt>yes|noE<gt>>"
15260 msgstr "B<persistent> I<service> I<E<lt>yes|noE<gt>>"
15261
15262 #. type: Plain text
15263 #: build/C/man5/nscd.conf.5:185
15264 msgid ""
15265 "Keep the content of the cache for I<service> over server restarts; useful "
15266 "when B<paranoia> mode is set.  The default is no."
15267 msgstr ""
15268 "サーバの再起動の前後で I<service> のキャッシュ内容を保持する。 B<paranoia> "
15269 "モードが有効の場合に便利である。デフォルトは保持しない。"
15270
15271 #. type: Plain text
15272 #: build/C/man5/nscd.conf.5:190
15273 msgid "B<shared> I<service> I<E<lt>yes|noE<gt>>"
15274 msgstr "B<shared> I<service> I<E<lt>yes|noE<gt>>"
15275
15276 #. type: Plain text
15277 #: build/C/man5/nscd.conf.5:197
15278 msgid ""
15279 "The memory mapping of the nscd databases for I<service> is shared with the "
15280 "clients so that they can directly search in them instead of having to ask "
15281 "the daemon over the socket each time a lookup is performed.  The default is "
15282 "no."
15283 msgstr ""
15284 "I<service> の nscd データベースのメモリ・マッピングをクライアント間で共有す"
15285 "る。 これにより、検索を実行する度にソケット経由でデーモンに問い合わせを 行わ"
15286 "ずに、直接データベースを検索できるようになる。デフォルトは共有しない。"
15287
15288 #. type: Plain text
15289 #: build/C/man5/nscd.conf.5:202
15290 msgid "B<max-db-size> I<service> I<bytes>"
15291 msgstr "B<max-db-size> I<service> I<bytes>"
15292
15293 #. type: Plain text
15294 #: build/C/man5/nscd.conf.5:206
15295 msgid ""
15296 "The maximum allowable size, in bytes, of the database files for the "
15297 "I<service>.  The default is 33554432."
15298 msgstr ""
15299 "I<service> のデータベースファイルの最大許容サイズ (バイト単位)。 デフォルト値"
15300 "は 33554432 である。"
15301
15302 #. type: Plain text
15303 #: build/C/man5/nscd.conf.5:211
15304 msgid "B<auto-propagate> I<service> I<E<lt>yes|noE<gt>>"
15305 msgstr "B<auto-propagate> I<service> I<E<lt>yes|noE<gt>>"
15306
15307 #. type: Plain text
15308 #: build/C/man5/nscd.conf.5:231
15309 msgid ""
15310 "When set to I<no> for I<passwd> or I<group> service, then the I<.byname> "
15311 "requests are not added to I<passwd.byuid> or I<group.bygid> cache.  This can "
15312 "help with tables containing multiple records for the same ID.  The default "
15313 "is yes.  This option is valid only for services I<passwd> and I<group>."
15314 msgstr ""
15315 "サービス I<passwd> か I<group> で I<no> に設定すると、 I<.byname> 要求は "
15316 "I<passwd.byuid> や I<group.bygid> のキャッシュに追加されない。 このオプション"
15317 "は、 同じ ID を持つレコードが複数あるテーブルの場合に役に立つ。 デフォルトは "
15318 "yes である。 このオプションはサービス I<passwd> と I<group> でのみ有効であ"
15319 "る。"
15320
15321 #. type: Plain text
15322 #: build/C/man5/nscd.conf.5:239
15323 msgid ""
15324 "The default values stated in this manual page originate from the source code "
15325 "of B<nscd>(8)  and are used if not overridden in the configuration file.  "
15326 "The default values used in the configuration file of your distribution might "
15327 "differ."
15328 msgstr ""
15329 "このマニュアルページに書かれているデフォルト値は B<nscd>(8) のソースコードに"
15330 "書かれている値で、 設定ファイルで上書きされなかった場合に使用される。 あなた"
15331 "が利用しているディストリビューションの設定ファイルのデフォルト値は違っている"
15332 "かもしれない。"
15333
15334 #.  .SH AUTHOR
15335 #.  .B nscd
15336 #.  was written by Thorsten Kukuk and Ulrich Drepper.
15337 #. type: Plain text
15338 #: build/C/man5/nscd.conf.5:244
15339 msgid "B<nscd>(8)"
15340 msgstr "B<nscd>(8)"
15341
15342 #. type: TH
15343 #: build/C/man5/nss.5:19
15344 #, no-wrap
15345 msgid "NSS"
15346 msgstr "NSS"
15347
15348 #. type: Plain text
15349 #: build/C/man5/nss.5:22
15350 msgid "nss - Name Service Switch configuration file"
15351 msgstr "nss - 名前サービス切り替え (Name Service Switch) の設定ファイル"
15352
15353 #. type: Plain text
15354 #: build/C/man5/nss.5:29
15355 msgid ""
15356 "Each call to a function which retrieves data from a system database like the "
15357 "password or group database is handled by the Name Service Switch "
15358 "implementation in the GNU C library.  The various services provided are "
15359 "implemented by independent modules, each of which naturally varies widely "
15360 "from the other."
15361 msgstr ""
15362
15363 #. type: Plain text
15364 #: build/C/man5/nss.5:38
15365 msgid ""
15366 "The default implementations coming with the GNU C library are by default "
15367 "conservative and do not use unsafe data.  This might be very costly in some "
15368 "situations, especially when the databases are large.  Some modules allow the "
15369 "system administrator to request taking shortcuts if these are known to be "
15370 "safe.  It is then the system administrator's responsibility to ensure the "
15371 "assumption is correct."
15372 msgstr ""
15373
15374 #. type: Plain text
15375 #: build/C/man5/nss.5:42
15376 msgid ""
15377 "There are other modules where the implementation changed over time.  If an "
15378 "implementation used to sacrifice speed for memory consumption, it might "
15379 "create problems if the preference is switched."
15380 msgstr ""
15381
15382 #. type: Plain text
15383 #: build/C/man5/nss.5:51
15384 msgid ""
15385 "The I</etc/default/nss> file contains a number of variable assignments.  "
15386 "Each variable controls the behavior of one or more NSS modules.  White "
15387 "spaces are ignored.  Lines beginning with \\(aq#\\(aq are treated as "
15388 "comments."
15389 msgstr ""
15390
15391 #. type: Plain text
15392 #: build/C/man5/nss.5:53
15393 msgid "The variables currently recognized are:"
15394 msgstr "現在のところ認識される変数は次の通り。"
15395
15396 #. type: TP
15397 #: build/C/man5/nss.5:53
15398 #, no-wrap
15399 msgid "B<NETID_AUTHORITATIVE => I<TRUE>|I<FALSE>"
15400 msgstr "B<NETID_AUTHORITATIVE => I<TRUE>|I<FALSE>"
15401
15402 #. type: Plain text
15403 #: build/C/man5/nss.5:68
15404 msgid ""
15405 "If set to TRUE, the NIS backend for the B<initgroups>(3)  function will "
15406 "accept the information from the I<netid.byname> NIS map as authoritative.  "
15407 "This can speed up the function significantly if the I<group.byname> map is "
15408 "large.  The content of the I<netid.byname> map is used B<as is>.  The system "
15409 "administrator has to make sure it is correctly generated."
15410 msgstr ""
15411
15412 #. type: TP
15413 #: build/C/man5/nss.5:68
15414 #, no-wrap
15415 msgid "B<SERVICES_AUTHORITATIVE => I<TRUE>|I<FALSE>"
15416 msgstr "B<SERVICES_AUTHORITATIVE => I<TRUE>|I<FALSE>"
15417
15418 #. type: Plain text
15419 #: build/C/man5/nss.5:80
15420 msgid ""
15421 "If set to TRUE, the NIS backend for the B<getservbyname>(3)  and "
15422 "B<getservbyname_r>(3)  functions will assume that the I<services."
15423 "byservicename> NIS map exists and is authoritative, particularly that it "
15424 "contains both keys with /proto and without /proto for both primary service "
15425 "names and service aliases.  The system administrator has to make sure it is "
15426 "correctly generated."
15427 msgstr ""
15428
15429 #. type: TP
15430 #: build/C/man5/nss.5:80
15431 #, no-wrap
15432 msgid "B<SETENT_BATCH_READ => I<TRUE>|I<FALSE>"
15433 msgstr "B<SETENT_BATCH_READ => I<TRUE>|I<FALSE>"
15434
15435 #. type: Plain text
15436 #: build/C/man5/nss.5:98
15437 msgid ""
15438 "If set to TRUE, the NIS backend for the B<setpwent>(3)  and B<setgrent>(3)  "
15439 "functions will read the entire database at once and then hand out the "
15440 "requests one by one from memory with every corresponding B<getpwent>(3)  or "
15441 "B<getgrent>(3)  call respectively.  Otherwise, each B<getpwent>(3)  or "
15442 "B<getgrent>(3)  call might result in a network communication with the server "
15443 "to get the next entry."
15444 msgstr ""
15445
15446 #. type: Plain text
15447 #: build/C/man5/nss.5:100
15448 msgid "I</etc/default/nss>"
15449 msgstr "I</etc/default/nss>"
15450
15451 #. type: Plain text
15452 #: build/C/man5/nss.5:102
15453 msgid ""
15454 "The default configuration corresponds to the following configuration file:"
15455 msgstr "デフォルト設定は、 以下の設定ファイルと同じである。"
15456
15457 #.  .SH AUTHOR
15458 #.  Ulrich Drepper <drepper@redhat.com>
15459 #. type: Plain text
15460 #: build/C/man5/nss.5:110
15461 #, no-wrap
15462 msgid ""
15463 "NETID_AUTHORITATIVE=FALSE\n"
15464 "SERVICES_AUTHORITATIVE=FALSE\n"
15465 "SETENT_BATCH_READ=FALSE\n"
15466 msgstr ""
15467 "NETID_AUTHORITATIVE=FALSE\n"
15468 "SERVICES_AUTHORITATIVE=FALSE\n"
15469 "SETENT_BATCH_READ=FALSE\n"
15470
15471 #. type: Plain text
15472 #: build/C/man5/nss.5:112
15473 msgid "I<nsswitch.conf>"
15474 msgstr "I<nsswitch.conf>"
15475
15476 #. type: TH
15477 #: build/C/man5/nsswitch.conf.5:25
15478 #, no-wrap
15479 msgid "NSSWITCH.CONF"
15480 msgstr "NSSWITCH.CONF"
15481
15482 #. type: Plain text
15483 #: build/C/man5/nsswitch.conf.5:28
15484 msgid "nsswitch.conf - Name Service Switch configuration file"
15485 msgstr "nsswitch.conf - ネームサービススイッチの設定ファイル"
15486
15487 #. type: Plain text
15488 #: build/C/man5/nsswitch.conf.5:36
15489 msgid ""
15490 "The Name Service Switch (NSS) configuration file, I</etc/nsswitch.conf>, is "
15491 "used by the GNU C Library to determine the sources from which to obtain name-"
15492 "service information in a range of categories, and in what order.  Each "
15493 "category of information is identified by a database name."
15494 msgstr ""
15495 "ネームサービススイッチ (Name Service Switch; NSS) の設定ファイル\n"
15496 "I</etc/nsswitch.conf> は、 GNU C ライブラリが\n"
15497 "いろいろなカテゴリの名前サービス情報を、どの情報源から\n"
15498 "どの順序で取得するかを判断するのに使用される\n"
15499 "(情報の各カテゴリはデータベース名で識別される)。"
15500
15501 #. type: Plain text
15502 #: build/C/man5/nsswitch.conf.5:42
15503 msgid ""
15504 "The file is plain ASCII text, with columns separated by spaces or tab "
15505 "characters.  The first column specifies the database name.  The remaining "
15506 "columns describe the order of sources to query and a limited set of actions "
15507 "that can be performed by lookup result."
15508 msgstr ""
15509 "設定ファイルは通常の ASCII テキストで、列はスペースかタブ文字で\n"
15510 "区切られる。最初の列はデータベース名を示す。\n"
15511 "残りの列は、情報を問い合わせる情報源の順序と、\n"
15512 "検索結果に対して実行するアクションを規定する。"
15513
15514 #. type: Plain text
15515 #: build/C/man5/nsswitch.conf.5:44
15516 msgid "The following databases are understood by the GNU C Library:"
15517 msgstr "GNU C ライブラリでは以下のデータベースを扱うことができる。"
15518
15519 #. type: Plain text
15520 #: build/C/man5/nsswitch.conf.5:49
15521 msgid "Mail aliases, used by B<getaliasent>(3)  and related functions."
15522 msgstr "メールのエイリアス。 B<getaliasent>(3) や関連する関数が使用する。"
15523
15524 #. type: Plain text
15525 #: build/C/man5/nsswitch.conf.5:52
15526 msgid "Ethernet numbers."
15527 msgstr "イーサーネット番号。"
15528
15529 #. type: Plain text
15530 #: build/C/man5/nsswitch.conf.5:57
15531 msgid "Groups of users, used by B<getgrent>(3)  and related functions."
15532 msgstr "ユーザーのグループ。 B<getgrent>(3) や関連する関数が使用する。"
15533
15534 #. type: Plain text
15535 #: build/C/man5/nsswitch.conf.5:62
15536 msgid ""
15537 "Host names and numbers, used by B<gethostbyname>(3)  and related functions."
15538 msgstr "ホスト名とホスト番号。 B<gethostbyname>(3) や関連する関数が使用する。"
15539
15540 #. type: Plain text
15541 #: build/C/man5/nsswitch.conf.5:67
15542 msgid "Supplementary group access list, used by B<getgrouplist>(3)  function."
15543 msgstr "補助グループアクセスリスト。 B<getgrouplist>(3) 関数が使用する。"
15544
15545 #. type: Plain text
15546 #: build/C/man5/nsswitch.conf.5:71
15547 msgid ""
15548 "Network-wide list of hosts and users, used for access rules.  C libraries "
15549 "before glibc 2.1 supported netgroups only over NIS."
15550 msgstr ""
15551 "ネットワークワイドに用いられるホストやユーザーのリスト。アクセス制限に利用\n"
15552 "される。 glibc 2.1 より前の C ライブラリは、 NIS による netgroup のみを\n"
15553 "サポートしていた。"
15554
15555 #. type: Plain text
15556 #: build/C/man5/nsswitch.conf.5:76
15557 msgid ""
15558 "Network names and numbers, used by B<getnetent>(3)  and related functions."
15559 msgstr "ネットワーク名と番号。 B<getnetent>(3) と関連する関数が使用する。"
15560
15561 #. type: Plain text
15562 #: build/C/man5/nsswitch.conf.5:81
15563 msgid "User passwords, used by B<getpwent>(3)  and related functions."
15564 msgstr "ユーザーパスワード。 B<getpwent>(3) や関連する関数が使用する。"
15565
15566 #. type: Plain text
15567 #: build/C/man5/nsswitch.conf.5:86
15568 msgid "Network protocols, used by B<getprotoent>(3)  and related functions."
15569 msgstr "ネットワークプロトコル。 B<getprotoent>(3) や関連する関数が使用する。"
15570
15571 #. type: TP
15572 #: build/C/man5/nsswitch.conf.5:86
15573 #, no-wrap
15574 msgid "B<publickey>"
15575 msgstr "B<publickey>"
15576
15577 #. type: Plain text
15578 #: build/C/man5/nsswitch.conf.5:89
15579 msgid "Public and secret keys for Secure_RPC used by NFS and NIS+."
15580 msgstr "NIS+ と NFS によって用いられる secure_rpc の公開鍵と秘密鍵。"
15581
15582 #. type: Plain text
15583 #: build/C/man5/nsswitch.conf.5:94
15584 msgid ""
15585 "Remote procedure call names and numbers, used by B<getrpcbyname>(3)  and "
15586 "related functions."
15587 msgstr ""
15588 "リモート手続き呼び出し (remote procedure call) の名前と番号。 \n"
15589 "B<getrpcbyname>(3) と関連する関数が使用する。"
15590
15591 #. type: Plain text
15592 #: build/C/man5/nsswitch.conf.5:99
15593 msgid "Network services, used by B<getservent>(3)  and related functions."
15594 msgstr "ネットワークサービス。 B<getservent>(3) や関連する関数が使用する。"
15595
15596 #. type: Plain text
15597 #: build/C/man5/nsswitch.conf.5:104
15598 msgid "Shadow user passwords, used by B<getspnam>(3)  and related functions."
15599 msgstr "シャドウユーザーパスワード。 B<getspnam>(3) や関連する関数が使用する。"
15600
15601 #. type: Plain text
15602 #: build/C/man5/nsswitch.conf.5:108
15603 msgid "Here is an example I</etc/nsswitch.conf> file:"
15604 msgstr "以下は I</etc/nsswitch.conf> ファイルの例である。"
15605
15606 #. type: TP
15607 #: build/C/man5/nsswitch.conf.5:111
15608 #, no-wrap
15609 msgid "passwd:"
15610 msgstr "passwd:"
15611
15612 #. type: Plain text
15613 #: build/C/man5/nsswitch.conf.5:114 build/C/man5/nsswitch.conf.5:117
15614 #: build/C/man5/nsswitch.conf.5:120
15615 msgid "compat"
15616 msgstr "compat"
15617
15618 #. type: TP
15619 #: build/C/man5/nsswitch.conf.5:114
15620 #, no-wrap
15621 msgid "group:"
15622 msgstr "group:"
15623
15624 #. type: TP
15625 #: build/C/man5/nsswitch.conf.5:117
15626 #, no-wrap
15627 msgid "shadow:"
15628 msgstr "shadow:"
15629
15630 #. type: TP
15631 #: build/C/man5/nsswitch.conf.5:121
15632 #, no-wrap
15633 msgid "hosts:"
15634 msgstr "hosts:"
15635
15636 #. type: Plain text
15637 #: build/C/man5/nsswitch.conf.5:124
15638 msgid "dns [!UNAVAIL=return] files"
15639 msgstr "dns [!UNAVAIL=return] files"
15640
15641 #. type: TP
15642 #: build/C/man5/nsswitch.conf.5:124
15643 #, no-wrap
15644 msgid "networks:"
15645 msgstr "networks:"
15646
15647 #. type: Plain text
15648 #: build/C/man5/nsswitch.conf.5:127 build/C/man5/nsswitch.conf.5:130
15649 #: build/C/man5/nsswitch.conf.5:133 build/C/man5/nsswitch.conf.5:136
15650 #: build/C/man5/nsswitch.conf.5:139
15651 msgid "nis [NOTFOUND=return] files"
15652 msgstr "nis [NOTFOUND=return] files"
15653
15654 #. type: TP
15655 #: build/C/man5/nsswitch.conf.5:127
15656 #, no-wrap
15657 msgid "ethers:"
15658 msgstr "ethers:"
15659
15660 #. type: TP
15661 #: build/C/man5/nsswitch.conf.5:130
15662 #, no-wrap
15663 msgid "protocols:"
15664 msgstr "protocols:"
15665
15666 #. type: TP
15667 #: build/C/man5/nsswitch.conf.5:133
15668 #, no-wrap
15669 msgid "rpc:"
15670 msgstr "rpc:"
15671
15672 #. type: TP
15673 #: build/C/man5/nsswitch.conf.5:136
15674 #, no-wrap
15675 msgid "services:"
15676 msgstr "services:"
15677
15678 #. type: Plain text
15679 #: build/C/man5/nsswitch.conf.5:144
15680 msgid "The first column is the database name.  The remaining columns specify:"
15681 msgstr ""
15682 "最初の列はデータベース名である。\n"
15683 "残りの列で以下を指定する。"
15684
15685 #. type: Plain text
15686 #: build/C/man5/nsswitch.conf.5:148
15687 msgid ""
15688 "One or more service specifications, for example, \"files\", \"db\", or \"nis"
15689 "\".  The order of the services on the line determines the order in which "
15690 "those services will be queried, in turn, until a result is found."
15691 msgstr ""
15692 "1 個以上のサービス指定 (例: \"files\", \"db\", \"nis\")。この行に記載された\n"
15693 "サービスの順序で、結果が得られるまで、指定されたサービスに対する\n"
15694 "問い合わせが順番に行われる。"
15695
15696 #. type: Plain text
15697 #: build/C/man5/nsswitch.conf.5:151
15698 msgid ""
15699 "Optional actions to perform if a particular result is obtained from the "
15700 "preceding service, for example, \"[NOTFOUND=return]\"."
15701 msgstr ""
15702 "特定の結果が直前のサービスで得られた場合に実行されるアクション\n"
15703 "(例: \"[NOTFOUND=return]\")。アクションは省略可能である。"
15704
15705 #. type: Plain text
15706 #: build/C/man5/nsswitch.conf.5:177
15707 msgid ""
15708 "The service specifications supported on your system depend on the presence "
15709 "of shared libraries, and are therefore extensible.  Libraries called I</lib/"
15710 "libnss_SERVICE.so.>B<X> will provide the named I<SERVICE>.  On a standard "
15711 "installation, you can use \"files\", \"db\", \"nis\", and \"nisplus\".  For "
15712 "the B<hosts> database, you can additionally specify \"dns\".  For the "
15713 "B<passwd>, B<group>, and B<shadow> databases, you can additionally specify "
15714 "\"compat\" (see B<Compatibility mode> below).  The version number B<X> may "
15715 "be 1 for glibc 2.0, or 2 for glibc 2.1 and later.  On systems with "
15716 "additional libraries installed, you may have access to further services such "
15717 "as \"hesiod\", \"ldap\", \"winbind\" and \"wins\"."
15718 msgstr ""
15719 "利用しているシステムでどのサービス指定が利用できるかは、共有ライブラリ\n"
15720 "があるかどうかに依存しており、そのためサービス指定は拡張できるように\n"
15721 "なっている。I</lib/libnss_SERVICE.so.>B<X> という名前のライブラリが\n"
15722 "I<SERVICE> という名前のサービスを提供する。標準のインストールを行った\n"
15723 "場合、\"files\", \"db\", \"nis\", \"nisplus\" が利用できる。\n"
15724 "データベース B<hosts> の場合には、追加で \"dns\" も指定できる。\n"
15725 "データベース B<passwd>, B<group>, B<shadow> の場合には、追加で\n"
15726 "\"compat\" (下記の B<互換モード> を参照)。バージョン番号 B<X> は、\n"
15727 "glibc 2.0 の場合は 1、glibc 2.1 の場合は 2 で、それ以降も同様である。\n"
15728 "追加のライブラリがインストールされているシステムでは、\"hesiod\",\n"
15729 "\"ldap\", \"winbind\", \"wins\" などの追加のサービスが利用できる。"
15730
15731 #. type: Plain text
15732 #: build/C/man5/nsswitch.conf.5:182
15733 msgid ""
15734 "An action may also be specified following a service specification.  The "
15735 "action modifies the behavior following a result obtained from the preceding "
15736 "data source.  Action items take the general form:"
15737 msgstr ""
15738 "サービス指定の次にアクションを指定することもできる。アクションを\n"
15739 "使うと、直前のデータ源から結果が得られた後の動作を変更できる。\n"
15740 "アクション指定は、一般的には以下の形式となる。"
15741
15742 #. type: Plain text
15743 #: build/C/man5/nsswitch.conf.5:185
15744 msgid "[I<STATUS>=I<ACTION>]"
15745 msgstr "[I<STATUS>=I<ACTION>]"
15746
15747 #. type: Plain text
15748 #: build/C/man5/nsswitch.conf.5:187
15749 msgid "[!I<STATUS>=I<ACTION>]"
15750 msgstr "[!I<STATUS>=I<ACTION>]"
15751
15752 #. type: Plain text
15753 #: build/C/man5/nsswitch.conf.5:190
15754 msgid "where"
15755 msgstr "STATUS と ACTION はそれぞれ以下の値を取る。"
15756
15757 #. type: Plain text
15758 #: build/C/man5/nsswitch.conf.5:201
15759 msgid "I<STATUS> =E<gt> B<success> | B<notfound> | B<unavail> | B<tryagain>"
15760 msgstr "I<STATUS> =E<gt> B<success> | B<notfound> | B<unavail> | B<tryagain>"
15761
15762 #. type: Plain text
15763 #: build/C/man5/nsswitch.conf.5:207
15764 msgid "I<ACTION> =E<gt> B<return> | B<continue>"
15765 msgstr "I<ACTION> =E<gt> B<return> | B<continue>"
15766
15767 #. type: Plain text
15768 #: build/C/man5/nsswitch.conf.5:212
15769 msgid ""
15770 "The ! negates the test, matching all possible results except the one "
15771 "specified.  The case of the keywords is not significant."
15772 msgstr ""
15773 "! はテスト結果を反転させる。\n"
15774 "つまり、指定された以外の全ての結果にマッチする。\n"
15775 "キーワードの大文字、小文字は無視される。"
15776
15777 #. type: Plain text
15778 #: build/C/man5/nsswitch.conf.5:217
15779 msgid ""
15780 "The I<STATUS> value is matched against the result of the lookup function "
15781 "called by the preceding service specification, and can be one of:"
15782 msgstr ""
15783 "I<STATUS> は、直前のサービス指定で呼び出しされた検索処理の結果に\n"
15784 "対して照合が行われる。 I<STATUS> には以下のいずれかを指定できる。"
15785
15786 #. type: TP
15787 #: build/C/man5/nsswitch.conf.5:218
15788 #, no-wrap
15789 msgid "B<success>"
15790 msgstr "B<success>"
15791
15792 #. type: Plain text
15793 #: build/C/man5/nsswitch.conf.5:222
15794 msgid ""
15795 "No error occurred and the requested entry is returned.  The default action "
15796 "for this condition is \"return\"."
15797 msgstr ""
15798 "エラーは発生せず、要求されたエントリが返された。\n"
15799 "この場合のデフォルトのアクションは \"return\" である。"
15800
15801 #. type: TP
15802 #: build/C/man5/nsswitch.conf.5:222
15803 #, no-wrap
15804 msgid "B<notfound>"
15805 msgstr "B<notfound>"
15806
15807 #. type: Plain text
15808 #: build/C/man5/nsswitch.conf.5:226
15809 msgid ""
15810 "The lookup succeeded, but the requested entry was not found.  The default "
15811 "action for this condition is \"continue\"."
15812 msgstr ""
15813 "検索は成功したが、要求されたエントリが見つからなかった。\n"
15814 "この場合のデフォルトのアクションは \"continue\" である。"
15815
15816 #. type: TP
15817 #: build/C/man5/nsswitch.conf.5:226
15818 #, no-wrap
15819 msgid "B<unavail>"
15820 msgstr "B<unavail>"
15821
15822 #. type: Plain text
15823 #: build/C/man5/nsswitch.conf.5:233
15824 msgid ""
15825 "The service is permanently unavailable.  This can mean either that the "
15826 "required file cannot be read, or, for network services, that the server is "
15827 "not available or does not allow queries.  The default action for this "
15828 "condition is \"continue\"."
15829 msgstr ""
15830 "サービスが永続的に利用できない。\n"
15831 "必要なファイルを読み込むことができない、\n"
15832 "ネットワークサービスの場合には、サーバが利用できないとか、\n"
15833 "サーバが問い合わせを許可していない、などが考えられる。\n"
15834 "この場合のデフォルトのアクションは \"continue\" である。"
15835
15836 #. type: TP
15837 #: build/C/man5/nsswitch.conf.5:233
15838 #, no-wrap
15839 msgid "B<tryagain>"
15840 msgstr "B<tryagain>"
15841
15842 #. type: Plain text
15843 #: build/C/man5/nsswitch.conf.5:239
15844 msgid ""
15845 "The service is temporarily unavailable.  This could mean a file is locked or "
15846 "a server currently cannot accept more connections.  The default action for "
15847 "this condition is \"continue\"."
15848 msgstr ""
15849 "サービスが一時的に利用できない。\n"
15850 "ファイルがロックされている、サーバがこれ以上接続を受け付けることができな"
15851 "い、\n"
15852 "などが考えられる。デフォル トのアクションは \"continue\" である。"
15853
15854 #. type: Plain text
15855 #: build/C/man5/nsswitch.conf.5:244
15856 msgid "The I<ACTION> value can be one of:"
15857 msgstr "I<ACTION> には以下のいずれかを指定できる。"
15858
15859 #. type: TP
15860 #: build/C/man5/nsswitch.conf.5:245
15861 #, no-wrap
15862 msgid "B<return>"
15863 msgstr "B<return>"
15864
15865 #. type: Plain text
15866 #: build/C/man5/nsswitch.conf.5:257
15867 msgid ""
15868 "Return a result now.  Do not call any further lookup functions.  However, "
15869 "for compatibility reasons, if this is the selected action for the B<group> "
15870 "database and the B<notfound> status, and the configuration file does not "
15871 "contain the B<initgroups> line, the next lookup function is always called, "
15872 "without affecting the search result."
15873 msgstr ""
15874 "結果をすぐに返す。 これ以上検索処理は呼び出されない。 ただし、互換性のため、 "
15875 "選択されたアクションが B<group> データベースに対するもので、 ステータスが "
15876 "B<notfound> であった場合で、 設定ファイルに B<initgroups> の行が含まれていな"
15877 "い場合には、次の検索処理は常に呼び出される (検索結果への影響はない)。"
15878
15879 #. type: TP
15880 #: build/C/man5/nsswitch.conf.5:257
15881 #, no-wrap
15882 msgid "B<continue>"
15883 msgstr "B<continue>"
15884
15885 #. type: Plain text
15886 #: build/C/man5/nsswitch.conf.5:260
15887 msgid "Call the next lookup function."
15888 msgstr "次の検索処理を呼び出す。"
15889
15890 #. type: SS
15891 #: build/C/man5/nsswitch.conf.5:261
15892 #, no-wrap
15893 msgid "Compatibility mode (compat)"
15894 msgstr "互換モード (compat)"
15895
15896 #. type: Plain text
15897 #: build/C/man5/nsswitch.conf.5:267
15898 msgid ""
15899 "The NSS \"compat\" service is similar to \"files\" except that it "
15900 "additionally permits special entries in I</etc/passwd> for granting users or "
15901 "members of netgroups access to the system.  The following entries are valid "
15902 "in this mode:"
15903 msgstr ""
15904 "NSS \"compat\" サービスは \"files\" と似ているが、システムにアクセスできる\n"
15905 "ユーザやネットグループ (netgroup) のメンバの指定に I</etc/passwd> で\n"
15906 "特別なエントリを追加で使うことができる点が異なる。\n"
15907 "このモードでは、以下のエントリを使うことができる。"
15908
15909 #. type: TP
15910 #: build/C/man5/nsswitch.conf.5:268
15911 #, no-wrap
15912 msgid "B<+>I<user>"
15913 msgstr "B<+>I<user>"
15914
15915 #. type: Plain text
15916 #: build/C/man5/nsswitch.conf.5:273
15917 msgid "Include the specified I<user> from the NIS passwd map."
15918 msgstr "NIS パスワードマップの指定された I<user> を含める。"
15919
15920 #. type: TP
15921 #: build/C/man5/nsswitch.conf.5:273
15922 #, no-wrap
15923 msgid "B<+@>I<netgroup>"
15924 msgstr "B<+@>I<netgroup>"
15925
15926 #. type: Plain text
15927 #: build/C/man5/nsswitch.conf.5:277
15928 msgid "Include all users in the given I<netgroup>."
15929 msgstr "指定された I<netgroup> の全ユーザを含める。"
15930
15931 #. type: TP
15932 #: build/C/man5/nsswitch.conf.5:277
15933 #, no-wrap
15934 msgid "B<->I<user>"
15935 msgstr "B<->I<user>"
15936
15937 #. type: Plain text
15938 #: build/C/man5/nsswitch.conf.5:282
15939 msgid "Exclude the specified I<user> from the NIS passwd map."
15940 msgstr "NIS パスワードマップの指定された I<user> を除外する。"
15941
15942 #. type: TP
15943 #: build/C/man5/nsswitch.conf.5:282
15944 #, no-wrap
15945 msgid "B<-@>I<netgroup>"
15946 msgstr "B<-@>I<netgroup>"
15947
15948 #. type: Plain text
15949 #: build/C/man5/nsswitch.conf.5:286
15950 msgid "Exclude all users in the given I<netgroup>."
15951 msgstr "指定された I<netgroup> の全ユーザを除外する。"
15952
15953 #. type: TP
15954 #: build/C/man5/nsswitch.conf.5:286
15955 #, no-wrap
15956 msgid "B<+>"
15957 msgstr "B<+>"
15958
15959 #. type: Plain text
15960 #: build/C/man5/nsswitch.conf.5:290
15961 msgid ""
15962 "Include every user, except previously excluded ones, from the NIS passwd map."
15963 msgstr ""
15964 "NIS パスワードマップのユーザのうち、\n"
15965 "それまでに除外されていない全てのユーザを含める。"
15966
15967 #. type: Plain text
15968 #: build/C/man5/nsswitch.conf.5:298
15969 msgid ""
15970 "By default the source is \"nis\", but this may be overridden by specifying "
15971 "\"nisplus\" as the source for the pseudo-databases B<passwd_compat>, "
15972 "B<group_compat>, and B<shadow_compat>."
15973 msgstr ""
15974 "デフォルトでは、データ源は \"nis\" だが、\n"
15975 "擬似データベース B<passwd_compat>, B<group_compat>, B<shadow_compat>\n"
15976 "ではデータ源として \"nisplus\" を指定することもできる。"
15977
15978 #. type: Plain text
15979 #: build/C/man5/nsswitch.conf.5:305
15980 msgid ""
15981 "A service named I<SERVICE> is implemented by a shared object library named "
15982 "I<libnss_SERVICE.so.>B<X> that resides in I</lib>."
15983 msgstr ""
15984 "I<SERVICE> という名前のサービスは I<libnss_SERVICE.so.>B<X> という\n"
15985 "名前の共有オブジェクトライブラリで実装されている。\n"
15986 "これは I</lib> に置かれる。"
15987
15988 #. type: Plain text
15989 #: build/C/man5/nsswitch.conf.5:310
15990 msgid "NSS configuration file."
15991 msgstr "NSS の設定ファイル。"
15992
15993 #. type: TP
15994 #: build/C/man5/nsswitch.conf.5:310
15995 #, no-wrap
15996 msgid "I</lib/libnss_compat.so.>B<X>"
15997 msgstr "I</lib/libnss_compat.so.>B<X>"
15998
15999 #. type: Plain text
16000 #: build/C/man5/nsswitch.conf.5:313
16001 msgid "implements \"compat\" source."
16002 msgstr "\"compat\" ソースを実装したもの。"
16003
16004 #. type: TP
16005 #: build/C/man5/nsswitch.conf.5:313
16006 #, no-wrap
16007 msgid "I</lib/libnss_db.so.>B<X>"
16008 msgstr "I</lib/libnss_db.so.>B<X>"
16009
16010 #. type: Plain text
16011 #: build/C/man5/nsswitch.conf.5:316
16012 msgid "implements \"db\" source."
16013 msgstr "\"db\" ソースを実装したもの。"
16014
16015 #. type: TP
16016 #: build/C/man5/nsswitch.conf.5:316
16017 #, no-wrap
16018 msgid "I</lib/libnss_dns.so.>B<X>"
16019 msgstr "I</lib/libnss_dns.so.>B<X>"
16020
16021 #. type: Plain text
16022 #: build/C/man5/nsswitch.conf.5:319
16023 msgid "implements \"dns\" source."
16024 msgstr "\"dns\" ソースを実装したもの。"
16025
16026 #. type: TP
16027 #: build/C/man5/nsswitch.conf.5:319
16028 #, no-wrap
16029 msgid "I</lib/libnss_files.so.>B<X>"
16030 msgstr "I</lib/libnss_files.so.>B<X>"
16031
16032 #. type: Plain text
16033 #: build/C/man5/nsswitch.conf.5:322
16034 msgid "implements \"files\" source."
16035 msgstr "\"files\" ソースを実装したもの。"
16036
16037 #. type: TP
16038 #: build/C/man5/nsswitch.conf.5:322
16039 #, no-wrap
16040 msgid "I</lib/libnss_hesiod.so.>B<X>"
16041 msgstr "I</lib/libnss_hesiod.so.>B<X>"
16042
16043 #. type: Plain text
16044 #: build/C/man5/nsswitch.conf.5:325
16045 msgid "implements \"hesiod\" source."
16046 msgstr "\"hesoid\" ソースを実装したもの。"
16047
16048 #. type: TP
16049 #: build/C/man5/nsswitch.conf.5:325
16050 #, no-wrap
16051 msgid "I</lib/libnss_nis.so.>B<X>"
16052 msgstr "I</lib/libnss_nis.so.>B<X>"
16053
16054 #. type: Plain text
16055 #: build/C/man5/nsswitch.conf.5:328
16056 msgid "implements \"nis\" source."
16057 msgstr "\"nis\" ソースを実装したもの。"
16058
16059 #. type: TP
16060 #: build/C/man5/nsswitch.conf.5:328
16061 #, no-wrap
16062 msgid "I</lib/libnss_nisplus.so.>B<X>"
16063 msgstr "I</lib/libnss_nisplus.so.>B<X>"
16064
16065 #. type: Plain text
16066 #: build/C/man5/nsswitch.conf.5:331
16067 msgid "implements \"nisplus\" source."
16068 msgstr "\"nisplus\" ソースを実装したもの。"
16069
16070 #. type: Plain text
16071 #: build/C/man5/nsswitch.conf.5:339
16072 msgid ""
16073 "Within each process that uses B<nsswitch.conf>, the entire file is read only "
16074 "once.  If the file is later changed, the process will continue using the old "
16075 "configuration."
16076 msgstr ""
16077 "I<nsswitch.conf> を利用するプロセスは、ファイルは一度しか読み込まない。\n"
16078 "その後で nsswitch.conf が書き換えられても、そのプロセスは古い設定のままで\n"
16079 "動作を継続する。"
16080
16081 #. type: Plain text
16082 #: build/C/man5/nsswitch.conf.5:352
16083 msgid ""
16084 "Traditionally, there was only a single source for service information, often "
16085 "in the form of a single configuration file (e.g., I</etc/passwd>).  However, "
16086 "as other name services, such as the Network Information Service (NIS) and "
16087 "the Domain Name Service (DNS), became popular, a method was needed that "
16088 "would be more flexible than fixed search orders coded into the C library.  "
16089 "The Name Service Switch mechanism, which was based on the mechanism used by "
16090 "Sun Microsystems in the Solaris 2 C library, introduced a cleaner solution "
16091 "to the problem."
16092 msgstr ""
16093 "伝統的には、サービス情報の情報源は一つだけであり、\n"
16094 "その設定ファイルの形式も一つであった (例えば I</etc/passwd>)。\n"
16095 "一方で、 Network Information Service (NIS) や Domain Name Service\n"
16096 "(DNS) などの他の名前サービスが一般的になるに連れて、C ライブラリに埋め\n"
16097 "込まれた固定順序ではなく、検索順序を柔軟に指定する方法が必要になった。\n"
16098 "ネームサービススイッチ機構は、この問題に対するよりきれいな解決方法と\n"
16099 "なっている。ネームサービススイッチ機構は、 Sun Microsystems が \n"
16100 "Solaris 2 の C ライブラリで使った機構が基になっている。"
16101
16102 #. type: Plain text
16103 #: build/C/man5/nsswitch.conf.5:355
16104 msgid "B<getent>(1), B<nss>(5)"
16105 msgstr "B<getent>(1), B<nss>(5)"
16106
16107 #. type: TH
16108 #: build/C/man7/packet.7:12
16109 #, no-wrap
16110 msgid "PACKET"
16111 msgstr "PACKET"
16112
16113 #. type: Plain text
16114 #: build/C/man7/packet.7:15
16115 msgid "packet - packet interface on device level"
16116 msgstr "packet - デバイスレベルのパケットインターフェース"
16117
16118 #. type: Plain text
16119 #: build/C/man7/packet.7:18
16120 #, no-wrap
16121 msgid "B<#include E<lt>sys/socket.hE<gt>>\n"
16122 msgstr "B<#include E<lt>sys/socket.hE<gt>>\n"
16123
16124 #. type: Plain text
16125 #: build/C/man7/packet.7:20
16126 #, no-wrap
16127 msgid "B<#include E<lt>linux/if_packet.hE<gt>>\n"
16128 msgstr "B<#include E<lt>linux/if_packet.hE<gt>>\n"
16129
16130 #. type: Plain text
16131 #: build/C/man7/packet.7:22
16132 #, no-wrap
16133 msgid "B<#include E<lt>net/ethernet.hE<gt> /* the L2 protocols */>\n"
16134 msgstr "B<#include E<lt>net/ethernet.hE<gt> /* L2 プロトコル */>\n"
16135
16136 #. type: Plain text
16137 #: build/C/man7/packet.7:24
16138 #, no-wrap
16139 msgid "B<packet_socket = socket(AF_PACKET, int >I<socket_type>B<, int >I<protocol>B<);>\n"
16140 msgstr "B<packet_socket = socket(AF_PACKET, int >I<socket_type>B<, int >I<protocol>B<);>\n"
16141
16142 #. type: Plain text
16143 #: build/C/man7/packet.7:30
16144 msgid ""
16145 "Packet sockets are used to receive or send raw packets at the device driver "
16146 "(OSI Layer 2) level.  They allow the user to implement protocol modules in "
16147 "user space on top of the physical layer."
16148 msgstr ""
16149 "packet ソケットは、デバイスドライバ (OSI レイヤ 2) レベルで 生のパケット "
16150 "(raw packet) を送受信するために用いられる。 packet ソケットを使うと、ユーザー"
16151 "空間で物理層の上に プロトコルモジュールを実装することができる。"
16152
16153 #. type: Plain text
16154 #: build/C/man7/packet.7:51
16155 msgid ""
16156 "The I<socket_type> is either B<SOCK_RAW> for raw packets including the link-"
16157 "level header or B<SOCK_DGRAM> for cooked packets with the link-level header "
16158 "removed.  The link-level header information is available in a common format "
16159 "in a I<sockaddr_ll>.  I<protocol> is the IEEE 802.3 protocol number in "
16160 "network byte order.  See the I<E<lt>linux/if_ether.hE<gt>> include file for "
16161 "a list of allowed protocols.  When protocol is set to B<htons(ETH_P_ALL)> "
16162 "then all protocols are received.  All incoming packets of that protocol type "
16163 "will be passed to the packet socket before they are passed to the protocols "
16164 "implemented in the kernel."
16165 msgstr ""
16166 "I<socket_type> には B<SOCK_RAW> と B<SOCK_DGRAM> のいずれかを指定する。 "
16167 "B<SOCK_RAW> はリンクレベルヘッダを含む raw パケットを、 B<SOCK_DGRAM> はリン"
16168 "クレベルヘッダが削除された加工済みパケットを示す。 リンクレベルヘッダ情報は "
16169 "I<sockaddr_ll> で共通のフォーマットで入手できる。 I<protocol> には IEEE "
16170 "802.3 プロトコル番号を ネットワークバイトオーダーで指定する。 指定できるプロ"
16171 "トコルのリストは、インクルードファイル I<E<lt>linux/if_ether.hE<gt>> を参照。"
16172 "プロトコルを B<htons(ETH_P_ALL)> にすると、全てのプロトコルが受信される。 外"
16173 "部から来たパケットのうち指定したプロトコルのものは、 カーネルに実装されている"
16174 "プロトコルに渡される前の段階で、 packet ソケットに渡される。"
16175
16176 #. type: Plain text
16177 #: build/C/man7/packet.7:55
16178 msgid ""
16179 "Only processes with effective UID 0 or the B<CAP_NET_RAW> capability may "
16180 "open packet sockets."
16181 msgstr ""
16182 "packet ソケットをオープンできるのは、 実効ユーザーID が 0 のプロセスか、 "
16183 "B<CAP_NET_RAW> ケーパビリティを持つプロセスだけである。"
16184
16185 #. type: Plain text
16186 #: build/C/man7/packet.7:73
16187 msgid ""
16188 "B<SOCK_RAW> packets are passed to and from the device driver without any "
16189 "changes in the packet data.  When receiving a packet, the address is still "
16190 "parsed and passed in a standard I<sockaddr_ll> address structure.  When "
16191 "transmitting a packet, the user supplied buffer should contain the physical "
16192 "layer header.  That packet is then queued unmodified to the network driver "
16193 "of the interface defined by the destination address.  Some device drivers "
16194 "always add other headers.  B<SOCK_RAW> is similar to but not compatible with "
16195 "the obsolete B<AF_INET/SOCK_PACKET> of Linux 2.0."
16196 msgstr ""
16197 "B<SOCK_RAW> パケットでは、パケットをデバイスドライバと受け渡しする際、 パケッ"
16198 "トデータに変更が行われることはない。 パケットの受信時には、アドレスの解析だけ"
16199 "は行われ、 標準的な I<sockaddr_ll> アドレス構造体に渡される。パケットの送信時"
16200 "には、ユーザが指定する バッファに物理層のヘッダが含まれている必要がある。 パ"
16201 "ケットはそのまま修正を受けずに、行き先アドレスから決定される インターフェース"
16202 "のネットワークドライバにキューイングされる。 デバイスドライバによっては、他の"
16203 "ヘッダを常に追加するものもある。 B<SOCK_RAW> は Linux 2.0 の obosolete な "
16204 "B<AF_INET/SOCK_PACKET> と似ているが、互換性があるわけではない。"
16205
16206 #. type: Plain text
16207 #: build/C/man7/packet.7:83
16208 msgid ""
16209 "B<SOCK_DGRAM> operates on a slightly higher level.  The physical header is "
16210 "removed before the packet is passed to the user.  Packets sent through a "
16211 "B<SOCK_DGRAM> packet socket get a suitable physical layer header based on "
16212 "the information in the I<sockaddr_ll> destination address before they are "
16213 "queued."
16214 msgstr ""
16215 "B<SOCK_DGRAM> はやや高位のレベルで動作する。物理ヘッダは、パケットがユーザー"
16216 "に 渡される前に削除される。 B<SOCK_DGRAM> の packet ソケットを通して送られる"
16217 "パケットは、 I<sockaddr_ll> の行き先アドレスの情報に基づき、適切な物理層の"
16218 "ヘッダが付加されてから、 キューに送られる。"
16219
16220 #. type: Plain text
16221 #: build/C/man7/packet.7:96
16222 msgid ""
16223 "By default all packets of the specified protocol type are passed to a packet "
16224 "socket.  To get packets only from a specific interface use B<bind>(2)  "
16225 "specifying an address in a I<struct sockaddr_ll> to bind the packet socket "
16226 "to an interface.  Only the I<sll_protocol> and the I<sll_ifindex> address "
16227 "fields are used for purposes of binding."
16228 msgstr ""
16229 "デフォルトでは、指定したプロトコル型のパケットはすべて packet ソケットに送ら"
16230 "れる。特定のインターフェースからのパケットだけを 取得したい場合には、 "
16231 "I<struct sockaddr_ll> にアドレスを指定して B<bind>(2)  を呼び、 packet ソケッ"
16232 "トをそのインターフェースに結び付ける (バインドする)。 バインドの際には、アド"
16233 "レスフィールドのうち I<sll_protocol> と I<sll_ifindex> だけが用いられる。"
16234
16235 #. type: Plain text
16236 #: build/C/man7/packet.7:100
16237 msgid "The B<connect>(2)  operation is not supported on packet sockets."
16238 msgstr "B<connect>(2)  操作は packet ソケットではサポートされていない。"
16239
16240 #. type: Plain text
16241 #: build/C/man7/packet.7:109
16242 msgid ""
16243 "When the B<MSG_TRUNC> flag is passed to B<recvmsg>(2), B<recv>(2), "
16244 "B<recvfrom>(2)  the real length of the packet on the wire is always "
16245 "returned, even when it is longer than the buffer."
16246 msgstr ""
16247 "B<MSG_TRUNC> フラグが B<recvmsg>(2), B<recv>(2), B<recvfrom>(2)  に渡される"
16248 "と、 (バッファサイズより大きかったとしても) 常に実際に通信された パケットの長"
16249 "さが返される。"
16250
16251 #. type: SS
16252 #: build/C/man7/packet.7:109
16253 #, no-wrap
16254 msgid "Address types"
16255 msgstr "アドレスのタイプ"
16256
16257 #. type: Plain text
16258 #: build/C/man7/packet.7:113
16259 msgid "The I<sockaddr_ll> is a device independent physical layer address."
16260 msgstr "I<sockaddr_ll> はデバイスに依存しない物理層のアドレスである。"
16261
16262 #. type: Plain text
16263 #: build/C/man7/packet.7:125
16264 #, no-wrap
16265 msgid ""
16266 "struct sockaddr_ll {\n"
16267 "    unsigned short sll_family;   /* Always AF_PACKET */\n"
16268 "    unsigned short sll_protocol; /* Physical layer protocol */\n"
16269 "    int            sll_ifindex;  /* Interface number */\n"
16270 "    unsigned short sll_hatype;   /* ARP hardware type */\n"
16271 "    unsigned char  sll_pkttype;  /* Packet type */\n"
16272 "    unsigned char  sll_halen;    /* Length of address */\n"
16273 "    unsigned char  sll_addr[8];  /* Physical layer address */\n"
16274 "};\n"
16275 msgstr ""
16276 "struct sockaddr_ll {\n"
16277 "    unsigned short sll_family;   /* 常に AF_PACKET */\n"
16278 "    unsigned short sll_protocol; /* 物理層のプロトコル */\n"
16279 "    int            sll_ifindex;  /* インターフェース番号 */\n"
16280 "    unsigned short sll_hatype;   /* ARP ハードウェア種別 */\n"
16281 "    unsigned char  sll_pkttype;  /* パケット種別 */\n"
16282 "    unsigned char  sll_halen;    /* アドレスの長さ */\n"
16283 "    unsigned char  sll_addr[8];  /* 物理層のアドレス */\n"
16284 "};\n"
16285
16286 #. type: Plain text
16287 #: build/C/man7/packet.7:164
16288 msgid ""
16289 "I<sll_protocol> is the standard ethernet protocol type in network byte order "
16290 "as defined in the I<E<lt>linux/if_ether.hE<gt>> include file.  It defaults "
16291 "to the socket's protocol.  I<sll_ifindex> is the interface index of the "
16292 "interface (see B<netdevice>(7)); 0 matches any interface (only permitted for "
16293 "binding).  I<sll_hatype> is an ARP type as defined in the I<E<lt>linux/"
16294 "if_arp.hE<gt>> include file.  I<sll_pkttype> contains the packet type.  "
16295 "Valid types are B<PACKET_HOST> for a packet addressed to the local host, "
16296 "B<PACKET_BROADCAST> for a physical layer broadcast packet, "
16297 "B<PACKET_MULTICAST> for a packet sent to a physical layer multicast address, "
16298 "B<PACKET_OTHERHOST> for a packet to some other host that has been caught by "
16299 "a device driver in promiscuous mode, and B<PACKET_OUTGOING> for a packet "
16300 "originated from the local host that is looped back to a packet socket.  "
16301 "These types make sense only for receiving.  I<sll_addr> and I<sll_halen> "
16302 "contain the physical layer (e.g., IEEE 802.3) address and its length.  The "
16303 "exact interpretation depends on the device."
16304 msgstr ""
16305 "I<sll_protocol> は標準的なイーサネットプロトコルのタイプで、 ネットワーク\n"
16306 "バイトオーダーで記述する。 インクルードファイル\n"
16307 "I<E<lt>linux/if_ether.hE<gt>> で定義されている。 これがこのソケットのプロト\n"
16308 "コルのデフォルトとなる。 I<sll_ifindex> はそのインターフェースの interface\n"
16309 "index である (B<netdevice>(7) を参照)。 0 は (バインドが許可されている) 任\n"
16310 "意のインターフェースにマッチする。 I<sll_hatype> は、インクルードファイル\n"
16311 "I<E<lt>linux/if_arp.hE<gt>> で定義されている ARP 種別である。\n"
16312 "I<sll_pkttype> はパケット種別である。指定できる種別は以下のいずれかである:\n"
16313 "B<PACKET_HOST> (ローカルホスト向けのパケット)、 B<PACKET_BORADCAST> (物理層\n"
16314 "のブロードキャストパケット)、 B<PACKET_MULTICAST> (物理層のマルチキャストア\n"
16315 "ドレスに送るパケット)、 B<PACKET_OTHERHOST> (他のホストに向けられたパケット\n"
16316 "のうち、 無差別モード (promiscuous mode: 後述) のデバイスドライバにより補足\n"
16317 "されたもの)、 B<PACKET_OUTGOING> (ローカルホストから発信され、 packet ソ"
16318 "ケッ\n"
16319 "トにループバックしてきたパケット)。 これらの種別が意味を持つのは受信時のみ\n"
16320 "である。 I<sll_addr> と I<sll_halen> は、物理層の (つまり IEEE 802.3 の) \n"
16321 "アドレスとその長さである。 厳密な解釈はデバイスに依存する。"
16322
16323 #. type: Plain text
16324 #: build/C/man7/packet.7:180
16325 msgid ""
16326 "When you send packets it is enough to specify I<sll_family>, I<sll_addr>, "
16327 "I<sll_halen>, I<sll_ifindex>.  The other fields should be 0.  I<sll_hatype> "
16328 "and I<sll_pkttype> are set on received packets for your information.  For "
16329 "bind only I<sll_protocol> and I<sll_ifindex> are used."
16330 msgstr ""
16331 "パケットを送る場合は、 I<sll_family>, I<sll_addr>, I<sll_halen>, "
16332 "I<sll_ifindex> を指定すれば十分である。 その他のフィールドは 0 にしておくべき"
16333 "である。 I<sll_hatype> と I<sll_pkttype> には受信したパケットの情報が設定され"
16334 "る。 バインドの際には、 I<sll_protocol> と I<sll_ifindex> だけが使用される。"
16335
16336 #. type: Plain text
16337 #: build/C/man7/packet.7:185
16338 msgid ""
16339 "Packet socket options are configured by calling B<setsockopt>(2)  with level "
16340 "B<SOL_PACKET>."
16341 msgstr ""
16342 "パケットソケットのオプションは、レベル B<SOL_PACKET> を指定して "
16343 "B<setsockopt>(2) を呼び出すことで設定できる。"
16344
16345 #. type: TP
16346 #: build/C/man7/packet.7:185
16347 #, no-wrap
16348 msgid "B<PACKET_ADD_MEMBERSHIP>"
16349 msgstr "B<PACKET_ADD_MEMBERSHIP>"
16350
16351 #. type: TP
16352 #: build/C/man7/packet.7:188
16353 #, no-wrap
16354 msgid "B<PACKET_DROP_MEMBERSHIP>"
16355 msgstr "B<PACKET_DROP_MEMBERSHIP>"
16356
16357 #. type: Plain text
16358 #: build/C/man7/packet.7:200
16359 msgid ""
16360 "Packet sockets can be used to configure physical layer multicasting and "
16361 "promiscuous mode.  B<PACKET_ADD_MEMBERSHIP> adds a binding and "
16362 "B<PACKET_DROP_MEMBERSHIP> drops it.  They both expect a I<packet_mreq> "
16363 "structure as argument:"
16364 msgstr ""
16365 "packet ソケットは、物理層のマルチキャストや 無差別モード (promiscuous mode) "
16366 "を設定して使うことができる。 B<PACKET_ADD_MEMBERSHIP> はバインドを追加し、 "
16367 "B<PACKET_DROP_MEMBERSHIP> はバインドを削除する。これらはいずれも "
16368 "I<packet_mreq> 構造体を引き数に取る。"
16369
16370 #. type: Plain text
16371 #: build/C/man7/packet.7:209
16372 #, no-wrap
16373 msgid ""
16374 "struct packet_mreq {\n"
16375 "    int            mr_ifindex;    /* interface index */\n"
16376 "    unsigned short mr_type;       /* action */\n"
16377 "    unsigned short mr_alen;       /* address length */\n"
16378 "    unsigned char  mr_address[8]; /* physical layer address */\n"
16379 "};\n"
16380 msgstr ""
16381 "struct packet_mreq {\n"
16382 "    int            mr_ifindex;    /* インターフェース番号 */\n"
16383 "    unsigned short mr_type;       /* 動作 */\n"
16384 "    unsigned short mr_alen;       /* アドレスの長さ */\n"
16385 "    unsigned char  mr_address[8]; /* 物理層のアドレス */\n"
16386 "};\n"
16387
16388 #. type: Plain text
16389 #: build/C/man7/packet.7:230
16390 msgid ""
16391 "B<mr_ifindex> contains the interface index for the interface whose status "
16392 "should be changed.  The B<mr_type> parameter specifies which action to "
16393 "perform.  B<PACKET_MR_PROMISC> enables receiving all packets on a shared "
16394 "medium (often known as \"promiscuous mode\"), B<PACKET_MR_MULTICAST> binds "
16395 "the socket to the physical layer multicast group specified in B<mr_address> "
16396 "and B<mr_alen>, and B<PACKET_MR_ALLMULTI> sets the socket up to receive all "
16397 "multicast packets arriving at the interface."
16398 msgstr ""
16399 "I<mr_ifindex> は、ステータスを変更したいインターフェースの インターフェース番"
16400 "号である。 I<mr_type> パラメータは実行する動作を指定する: "
16401 "B<PACKET_MR_PROMISC> は、共有している媒体からの全てのパケットを受信できるよう"
16402 "にする (しばしば \"無差別モード (promiscuous mode)\" と呼ばれる)。 "
16403 "B<PACKET_MR_MULTICAST> は、そのソケットを、 I<mr_address> と I<mr_alen> で指"
16404 "定される物理層のマルチキャストブループにバインドする。 B<PACKET_MR_ALLMULTI> "
16405 "は socket を up にして、そのインターフェースに到達したすべての マルチキャスト"
16406 "パケットを受信できるようにする。"
16407
16408 #. type: Plain text
16409 #: build/C/man7/packet.7:236
16410 msgid ""
16411 "In addition, the traditional ioctls B<SIOCSIFFLAGS>, B<SIOCADDMULTI>, "
16412 "B<SIOCDELMULTI> can be used for the same purpose."
16413 msgstr ""
16414 "昔からある ioctl だけでなく、 B<SIOCSIFFLAGS>, B<SIOCADDMULTI>, "
16415 "B<SIOCDELMULTI> を同じ目的に用いることができる。"
16416
16417 #. type: TP
16418 #: build/C/man7/packet.7:236
16419 #, no-wrap
16420 msgid "B<PACKET_AUXDATA> (since Linux 2.6.21)"
16421 msgstr "B<PACKET_AUXDATA> (Linux 2.6.21 以降)"
16422
16423 #.  commit 8dc4194474159660d7f37c495e3fc3f10d0db8cc
16424 #. type: Plain text
16425 #: build/C/man7/packet.7:246
16426 msgid ""
16427 "If this binary option is enabled, the packet socket passes a metadata "
16428 "structure along with each packet in the B<recvmsg>(2)  control field.  The "
16429 "structure can be read with B<cmsg>(3).  It is defined as"
16430 msgstr ""
16431 "ブール値のオプションを有効すると、 パケットソケットは、パケットと一緒にメタ"
16432 "データ構造体を B<recvmsg>(2) コントロールフィールドで渡す。 この構造体は "
16433 "B<cmsg>(3) を使って読むことができる。 定義は以下の通りである。"
16434
16435 #. type: Plain text
16436 #: build/C/man7/packet.7:258
16437 #, no-wrap
16438 msgid ""
16439 "struct tpacket_auxdata {\n"
16440 "    __u32 tp_status;\n"
16441 "    __u32 tp_len;      /* packet length */\n"
16442 "    __u32 tp_snaplen;  /* captured length */\n"
16443 "    __u16 tp_mac;\n"
16444 "    __u16 tp_net;\n"
16445 "    __u16 tp_vlan_tci;\n"
16446 "    __u16 tp_padding;\n"
16447 "};\n"
16448 msgstr ""
16449 "struct tpacket_auxdata {\n"
16450 "    __u32 tp_status;\n"
16451 "    __u32 tp_len;      /* パケット長 */\n"
16452 "    __u32 tp_snaplen;  /* キャプチャした長さ */\n"
16453 "    __u16 tp_mac;\n"
16454 "    __u16 tp_net;\n"
16455 "    __u16 tp_vlan_tci;\n"
16456 "    __u16 tp_padding;\n"
16457 "};\n"
16458
16459 #. type: TP
16460 #: build/C/man7/packet.7:260
16461 #, no-wrap
16462 msgid "B<PACKET_FANOUT> (since Linux 3.1)"
16463 msgstr "B<PACKET_FANOUT> (Linux 3.1 以降)"
16464
16465 #.  commit dc99f600698dcac69b8f56dda9a8a00d645c5ffc
16466 #. type: Plain text
16467 #: build/C/man7/packet.7:282
16468 msgid ""
16469 "To scale processing across threads, packet sockets can form a fanout group.  "
16470 "In this mode, each matching packet is enqueued onto only one socket in the "
16471 "group.  A socket joins a fanout group by calling B<setsockopt>(2)  with "
16472 "level B<SOL_PACKET> and option B<PACKET_FANOUT>.  Each network namespace can "
16473 "have up to 65536 independent groups.  A socket selects a group by encoding "
16474 "the ID in the first 16 bits of the integer option value.  The first packet "
16475 "socket to join a group implicitly creates it.  To successfully join an "
16476 "existing group, subsequent packet sockets must have the same protocol, "
16477 "device settings, fanout mode and flags (see below).  Packet sockets can "
16478 "leave a fanout group only by closing the socket.  The group is deleted when "
16479 "the last socket is closed."
16480 msgstr ""
16481 "スレッドにまたがって処理をスケールさせるため、 パケットソケットはファンアウト"
16482 "グループを構成することができる。 このモードでは、 マッチしたそれぞれのパケッ"
16483 "トはグループ内のいずれか一つのソケットにだけキューイングされる。 ソケットを"
16484 "ファンアウトグループに参加させるには、 レベル B<SOL_PACKET> でオプション "
16485 "B<PACKET_FANOUT> を指定して B<setsockopt>(2) を呼び出す。 ネットワーク名前空"
16486 "間毎に最大 65536 個の独立したグループを持つことができる。 整数のオプション値"
16487 "の先頭 16 ビットに ID をエンコードすることで、 ソケットはグループを選択す"
16488 "る。 あるグループへの最初のパケットソケットの参加があった時点で、 グループは"
16489 "暗黙のうちに作成される。 既存のグループへの参加が成功するためには、 それ以降"
16490 "にそのグループに参加しようとするパケットソケットは、 プロトコロ、 デバイス設"
16491 "定、ファンアウトモード、フラグが同じである必要がある (下記参照)。 パケットソ"
16492 "ケットがファンアウトグループから抜けるのは、 そのソケットをクローズした場合だ"
16493 "けである。 ファンアウトグループは最後のソケットがクローズした場合に削除され"
16494 "る。"
16495
16496 #.  commit 2d36097d26b5991d71a2cf4a20c1a158f0f1bfcd
16497 #. type: Plain text
16498 #: build/C/man7/packet.7:305
16499 msgid ""
16500 "Fanout supports multiple algorithms to spread traffic between sockets.  The "
16501 "default mode, B<PACKET_FANOUT_HASH>, sends packets from the same flow to the "
16502 "same socket to maintain per-flow ordering.  For each packet, it chooses a "
16503 "socket by taking the packet flow hash modulo the number of sockets in the "
16504 "group, where a flow hash is a hash over network-layer address and optional "
16505 "transport-layer port fields.  The load-balance mode B<PACKET_FANOUT_LB> "
16506 "implements a round-robin algorithm.  B<PACKET_FANOUT_CPU> selects the socket "
16507 "based on the CPU that the packet arrived on.  B<PACKET_FANOUT_ROLLOVER> "
16508 "processes all data on a single socket, moves to the next when one becomes "
16509 "backlogged.  B<PACKET_FANOUT_RND> selects the socket using a pseudo-random "
16510 "number generator.  B<PACKET_FANOUT_QM> (available since Linux 3.14)  selects "
16511 "the socket using the recorded queue_mapping of the received skb."
16512 msgstr ""
16513 "ファンアウトでは、 複数のソケットにトラフィックを分散させるアルゴリズムを複数"
16514 "サポートしている。 デフォルトのモードである B<PACKET_FANOUT_HASH> では、同じ"
16515 "フローのパケットは同じソケットに送信され、 フロー単位の順序が維持される。 パ"
16516 "ケットごとに、パケットフローのハッシュの、そのグループのソケット数に対する剰"
16517 "余が計算され、ソケットが選択される。 なお、フローハッシュはネットワーク層のア"
16518 "ドレスとトランスポート層のポートフィールドに対するハッシュである (トランス"
16519 "ポート層ポートは存在する場合のみ)。 負荷分散モード B<PACKET_FANOUT_LB> はラウ"
16520 "ンドロビンアルゴリズムが採用されている。 B<PACKET_FANOUT_CPU> では、 パケット"
16521 "が到着した CPU に基づいてソケットを選択する。 B<PACKET_FANOUT_ROLLOVER> はす"
16522 "べてのデータを一つのソケットで処理し、 そのソケットで処理待ち (backlog) が発"
16523 "生した場合に次のソケットに移る。 B<PACKET_FANOUT_RND> では擬似乱数発生器を"
16524 "使ってソケットが選択される。 B<PACKET_FANOUT_QM> (Linux 3.14 以降で利用可能) "
16525 "では受信 skb に記録された queue_mapping を使ってソケットが選択される。"
16526
16527 #. type: Plain text
16528 #: build/C/man7/packet.7:320
16529 msgid ""
16530 "Fanout modes can take additional options.  IP fragmentation causes packets "
16531 "from the same flow to have different flow hashes.  The flag "
16532 "B<PACKET_FANOUT_FLAG_DEFRAG>, if set, causes packet to be defragmented "
16533 "before fanout is applied, to preserve order even in this case.  Fanout mode "
16534 "and options are communicated in the second 16 bits of the integer option "
16535 "value.  The flag B<PACKET_FANOUT_FLAG_ROLLOVER> enables the roll over "
16536 "mechanism as a backup strategy: if the original fanout algorithm selects a "
16537 "backlogged socket, the packet rolls over to the next available one."
16538 msgstr ""
16539 "ファンアウトモードでは追加のオプションがある。 IP フラグメンテーションが起こ"
16540 "ると、 同じフローのパケットのフローハッシュが異なるハッシュを持つことにな"
16541 "る。 フラグ B<PACKET_FANOUT_FLAG_DEFRAG> をセットすると、 パケットはファンア"
16542 "ウトを行う前にフラグメント再構築が行われるようになり、 フラグメントがあった場"
16543 "合でも順序が維持される。 ファンアウトモードとオプションは、 整数のオプション"
16544 "値の下位 16 ビットで指定される。 フラグ B<PACKET_FANOUT_FLAG_ROLLOVER> を指定"
16545 "すると、 バックアップ戦略としてロールオーバー方式が有効になる。 元のファンア"
16546 "ウトアルゴリズムが backlog ソケットを選択していれば、 パケットは次の利用可能"
16547 "なソケットにロールオーバーされる。"
16548
16549 #. type: TP
16550 #: build/C/man7/packet.7:320
16551 #, no-wrap
16552 msgid "B<PACKET_LOSS> (with B<PACKET_TX_RING>)"
16553 msgstr "B<PACKET_LOSS> (B<PACKET_TX_RING> で使用)"
16554
16555 #. type: Plain text
16556 #: build/C/man7/packet.7:343
16557 msgid ""
16558 "When a malformed packet is encountered on a transmit ring, the default is to "
16559 "reset its I<tp_status> to B<TP_STATUS_WRONG_FORMAT> and abort the "
16560 "transmission immediately.  The malformed packet blocks itself and "
16561 "subsequently enqueued packets from being sent.  The format error must be "
16562 "fixed, the associated I<tp_status> reset to B<TP_STATUS_SEND_REQUEST>, and "
16563 "the transmission process restarted via B<send>(2).  However, if "
16564 "B<PACKET_LOSS> is set, any malformed packet will be skipped, its "
16565 "I<tp_status> reset to B<TP_STATUS_AVAILABLE>, and the transmission process "
16566 "continued."
16567 msgstr ""
16568 "送信リングで不正な形式のパケットに遭遇した場合、 デフォルトではそのリングの "
16569 "I<tp_status> を B<TP_STATUS_WRONG_FORMAT> に戻し、その送信を直ちに中止する。 "
16570 "不正な形式のパケットにより、そのパケット自身とその以降にキューに入れられたパ"
16571 "ケットの送信がブロックされる。形式エラーを修正し、関連する I<tp_status> を "
16572 "B<TP_STATUS_SEND_REQUEST> に設定し直し、B<send>(2) を使って送信処理を再開しな"
16573 "ければならない。 しかしながら、 B<PACKET_LOSS> がセットされている場合、 不正"
16574 "な形式のパケットはすべてスキップされ、 その送信リングの I<tp_status> は "
16575 "B<TP_STATUS_AVAILABLE> に設定し直され、送信処理は継続される。"
16576
16577 #. type: TP
16578 #: build/C/man7/packet.7:343
16579 #, no-wrap
16580 msgid "B<PACKET_RESERVE> (with B<PACKET_RX_RING>)"
16581 msgstr "B<PACKET_RESERVE> (B<PACKET_RX_RING> で使用)"
16582
16583 #. type: Plain text
16584 #: build/C/man7/packet.7:348
16585 msgid ""
16586 "By default, a packet receive ring writes packets immediately following the "
16587 "metadata structure and alignment padding.  This integer option reserves "
16588 "additional headroom."
16589 msgstr ""
16590 "デフォルトでは、パケット受信リングはメタデータ構造体とアライメント用のパディ"
16591 "ングの直後にパケットを書き込む。 この整数オプションを設定すると、パケットの前"
16592 "に追加で領域が予約される。"
16593
16594 #. type: TP
16595 #: build/C/man7/packet.7:348
16596 #, no-wrap
16597 msgid "B<PACKET_RX_RING>"
16598 msgstr "B<PACKET_RX_RING>"
16599
16600 #. type: Plain text
16601 #: build/C/man7/packet.7:394
16602 msgid ""
16603 "Create a memory-mapped ring buffer for asynchronous packet reception.  The "
16604 "packet socket reserves a contiguous region of application address space, "
16605 "lays it out into an array of packet slots and copies packets (up to "
16606 "I<tp_snaplen>)  into subsequent slots.  Each packet is preceded by a "
16607 "metadata structure similar to I<tpacket_auxdata>.  The protocol fields "
16608 "encode the offset to the data from the start of the metadata header.  "
16609 "I<tp_net> stores the offset to the network layer.  If the packet socket is "
16610 "of type B<SOCK_DGRAM>, then I<tp_mac> is the same.  If it is of type "
16611 "B<SOCK_RAW>, then that field stores the offset to the link-layer frame.  "
16612 "Packet socket and application communicate the head and tail of the ring "
16613 "through the I<tp_status> field.  The packet socket owns all slots with "
16614 "I<tp_status> equal to B<TP_STATUS_KERNEL>.  After filling a slot, it changes "
16615 "the status of the slot to transfer ownership to the application.  During "
16616 "normal operation, the new I<tp_status> value has at least the "
16617 "B<TP_STATUS_USER> bit set to signal that a received packet has been stored.  "
16618 "When the application has finished processing a packet, it transfers "
16619 "ownership of the slot back to the socket by setting I<tp_status> equal to "
16620 "B<TP_STATUS_KERNEL>.  Packet sockets implement multiple variants of the "
16621 "packet ring.  The implementation details are described in I<Documentation/"
16622 "networking/packet_mmap.txt> in the Linux kernel source tree."
16623 msgstr ""
16624 "非同期でのパケット受信用のメモリマップされたリングバッファを作成する。 パケッ"
16625 "トソケットはアプリケーションのアドレス空間に連続する領域を確保し、 そこにパ"
16626 "ケットスロットの配列を構成し、 (最大 I<tp_snaplen> 個の) パケットを順にスロッ"
16627 "トにコピーする。 各パケットの前には I<tpacket_auxdata> に似たメタデータ構造体"
16628 "が置かれる。 プロトコルフィールドには、データの、メタデータヘッダーの先頭から"
16629 "のオフセットが入る。 I<tp_net> にはネットワーク層へのオフセットが格納され"
16630 "る。 パケットソケットが B<SOCK_DGRAM> 型の場合、 I<tp_mac> も同じである。 "
16631 "B<SOCK_RAW> 型の場合、 I<tp_net> にはリンク層のフレームへのオフセットが入"
16632 "る。 パケットソケットとアプリケーションは I<tp_status> フィールドを通してリン"
16633 "グの先頭 (head) と末尾 (tail) の情報を受け渡す。 パケットソケットは "
16634 "I<tp_status> が B<TP_STATUS_KERNEL> のすべてのスロットを所有しており、 スロッ"
16635 "トにデータが入ると、 パケットソケットはそのスロットのステータスをアプリケー"
16636 "ションに所有権を渡す状態に変更する。 通常の動作では、 新しい I<tp_status> で"
16637 "少なくとも B<TP_STATUS_USER> ビットがセットされていれば、 受信されたパケット"
16638 "が格納されたことを示している。 アプリケーションがパケットの処理を終えると、ア"
16639 "プリケーションはそのスロットの B<tp_status> を B<TP_STATUS_KERNEL> に設定し、"
16640 "そのスロットの所有権をソケットに返す。 パケットソケットは、複数バージョンのパ"
16641 "ケットリングを実装している。 実装の詳細は Linux カーネルソースツリーの "
16642 "I<Documentation/networking/packet_mmap.txt> で説明されている。"
16643
16644 #. type: TP
16645 #: build/C/man7/packet.7:394
16646 #, no-wrap
16647 msgid "B<PACKET_STATISTICS>"
16648 msgstr "B<PACKET_STATISTICS>"
16649
16650 #. type: Plain text
16651 #: build/C/man7/packet.7:397
16652 msgid "Retrieve packet socket statistics in the form of a structure"
16653 msgstr "パケットソケットの統計情報を次の構造体形式で取得する。"
16654
16655 #. type: Plain text
16656 #: build/C/man7/packet.7:404
16657 #, no-wrap
16658 msgid ""
16659 "struct tpacket_stats {\n"
16660 "    unsigned int tp_packets;  /* Total packet count */\n"
16661 "    unsigned int tp_drops;    /* Dropped packet count */\n"
16662 "};\n"
16663 msgstr ""
16664 "struct tpacket_stats {\n"
16665 "    unsigned int tp_packets;  /* 総パケット数 */\n"
16666 "    unsigned int tp_drops;    /* ドロップパケット数 */\n"
16667 "};\n"
16668
16669 #. type: Plain text
16670 #: build/C/man7/packet.7:410
16671 msgid ""
16672 "Receiving statistics resets the internal counters.  The statistics structure "
16673 "differs when using a ring of variant B<TPACKET_V3>."
16674 msgstr ""
16675 "統計情報を取得すると、内部カウンターはリセットされる。 B<TPACKET_V3> のリング"
16676 "を使う場合には、統計情報構造体は違うものになる。"
16677
16678 #. type: TP
16679 #: build/C/man7/packet.7:410
16680 #, no-wrap
16681 msgid "B<PACKET_TIMESTAMP> (with B<PACKET_RX_RING>; since Linux 2.6.36)"
16682 msgstr "B<PACKET_TIMESTAMP> (B<PACKET_RX_RING> で使用; Linux 2.6.36 以降)"
16683
16684 #.  commit 614f60fa9d73a9e8fdff3df83381907fea7c5649
16685 #. type: Plain text
16686 #: build/C/man7/packet.7:420
16687 msgid ""
16688 "The packet receive ring always stores a timestamp in the metadata header.  "
16689 "By default, this is a software generated timestamp generated when the packet "
16690 "is copied into the ring.  This integer option selects the type of "
16691 "timestamp.  Besides the default, it support the two hardware formats "
16692 "described in I<Documentation/networking/timestamping.txt> in the Linux "
16693 "kernel source tree."
16694 msgstr ""
16695 "パケット受信リングでは常にタイムスタンプがメタデータヘッダーに格納される。 デ"
16696 "フォルトでは、タイムスタンプはパケットがリングにコピーされた時点で生成される"
16697 "ソフトウェアによるタイムスタンプである。 この整数オプションによりタイムスタン"
16698 "プの種類を選択できる。 デフォルト以外では、 Linux カーネルソースツリーの "
16699 "I<Documentation/networking/timestamping.txt> に説明がある 2 種類のハードウェ"
16700 "アフォーマットがサポートされている。"
16701
16702 #. type: TP
16703 #: build/C/man7/packet.7:420
16704 #, no-wrap
16705 msgid "B<PACKET_TX_RING> (since Linux 2.6.31)"
16706 msgstr "B<PACKET_TX_RING> (Linux 2.6.31 以降)"
16707
16708 #.  commit 69e3c75f4d541a6eb151b3ef91f34033cb3ad6e1
16709 #. type: Plain text
16710 #: build/C/man7/packet.7:455
16711 msgid ""
16712 "Create a memory-mapped ring buffer for packet transmission.  This option is "
16713 "similar to B<PACKET_RX_RING> and takes the same arguments.  The application "
16714 "writes packets into slots with I<tp_status> equal to B<TP_STATUS_AVAILABLE> "
16715 "and schedules them for transmission by changing I<tp_status> to "
16716 "B<TP_STATUS_SEND_REQUEST>.  When packets are ready to be transmitted, the "
16717 "application calls B<send>(2)  or a variant thereof.  The I<buf> and I<len> "
16718 "fields of this call are ignored.  If an address is passed using "
16719 "B<sendto>(2)  or B<sendmsg>(2), then that overrides the socket default.  On "
16720 "successful transmission, the socket resets I<tp_status> to "
16721 "B<TP_STATUS_AVAILABLE>.  It immediately aborts the transmission on error "
16722 "unless B<PACKET_LOSS> is set."
16723 msgstr ""
16724 "パケット送信用のメモリマップされたリングバッファを作成する。 このオプション"
16725 "は B<PACKET_RX_RING> と同様で、同じ引き数を取る。 アプリケーションは "
16726 "I<tp_status> が B<TP_STATUS_AVAILABLE> のスロットにパケットを書き込み、 "
16727 "I<tp_status> を B<TP_STATUS_SEND_REQUEST> に変更することでそのパケットの送信"
16728 "を予約する。 パケットの送信準備ができたら、アプリケーションは続けて "
16729 "B<send>(2) 系のシステムコールを呼び出す。 システムコールの引き数 I<buf> と "
16730 "I<len> は無視される。 B<sendto>(2) や B<sendmsg>(2) を使ってアドレスが渡され"
16731 "た場合、 ソケットのデフォルト値ではなくそのアドレスが使用される。 送信に成功"
16732 "すると、ソケットはそのスロットの I<tp_status> を B<TP_STATUS_AVAILABLE> に戻"
16733 "す。 エラーの場合、 B<PACKET_LOSS> がセットされていなければ、 直ちに送信を中"
16734 "断しエラーを上げる。"
16735
16736 #. type: TP
16737 #: build/C/man7/packet.7:455
16738 #, no-wrap
16739 msgid "B<PACKET_VERSION> (with B<PACKET_RX_RING>; since Linux 2.6.27)"
16740 msgstr "B<PACKET_VERSION> (B<PACKET_RX_RING> で使用; Linux 2.6.27 以降)"
16741
16742 #.  commit bbd6ef87c544d88c30e4b762b1b61ef267a7d279
16743 #. type: Plain text
16744 #: build/C/man7/packet.7:464
16745 msgid ""
16746 "By default, B<PACKET_RX_RING> creates a packet receive ring of variant "
16747 "B<TPACKET_V1>.  To create another variant, configure the desired variant by "
16748 "setting this integer option before creating the ring."
16749 msgstr ""
16750 "デフォルトでは、 B<PACKET_RX_RING> は B<TPACKET_V1> のパケット受信リングを作"
16751 "成する。別のバージョンのリングを作成するには、そのリングを作成する前に希望す"
16752 "るバージョンが使われるようにこの整数オプションを設定すること。"
16753
16754 #. type: TP
16755 #: build/C/man7/packet.7:464
16756 #, no-wrap
16757 msgid "B<PACKET_QDISC_BYPASS> (since Linux 3.14)"
16758 msgstr "B<PACKET_QDISC_BYPASS> (Linux 3.14 以降)"
16759
16760 #.  commit d346a3fae3ff1d99f5d0c819bf86edf9094a26a1
16761 #. type: Plain text
16762 #: build/C/man7/packet.7:479
16763 msgid ""
16764 "By default, packets sent through packet sockets pass through the kernel's "
16765 "qdisc (traffic control) layer, which is fine for the vast majority of use "
16766 "cases.  For traffic generator appliances using packet sockets that intend to "
16767 "brute-force flood the network\\(emfor example, to test devices under load in "
16768 "a similar fashion to pktgen\\(emthis layer can be bypassed by setting this "
16769 "integer option to 1.  A side effect is that packet buffering in the qdisc "
16770 "layer is avoided, which will lead to increased drops when network device "
16771 "transmit queues are busy; therefore, use at your own risk."
16772 msgstr ""
16773 "デフォルトでは、パケットはカーネルの qdisc (トラフィック制御) レイヤー経由で"
16774 "渡される。 これは大半のユースケースに合っている。 ネットワークに対して可能な"
16775 "限りパケットを送信する (例えば pkggen と同様の方法で負荷対象のデバイスを試験"
16776 "する) のにパケットソケットを使うトラフィック生成アプライアンスでは、この整数"
16777 "オプションを 1 に設定することで qdisc レイヤーを飛ばすことができる。 qdisc レ"
16778 "イヤーでのパケットバッファが行われなくなるという副作用がある。 これにより、 "
16779 "ネットワークデバイスの送信キューの使用量が高い場合にパケット廃棄が起きやすく"
16780 "なる。"
16781
16782 #.  FIXME Document SIOCGSTAMPNS
16783 #. type: Plain text
16784 #: build/C/man7/packet.7:486
16785 msgid ""
16786 "B<SIOCGSTAMP> can be used to receive the timestamp of the last received "
16787 "packet.  Argument is a I<struct timeval> variable."
16788 msgstr ""
16789 "B<SIOCGSTAMP> を用いると、最後に受信したパケットのタイムスタンプを得ることが"
16790 "できる。 引き数は I<struct timeval> 型の変数である。"
16791
16792 #. type: Plain text
16793 #: build/C/man7/packet.7:492
16794 msgid ""
16795 "In addition, all standard ioctls defined in B<netdevice>(7)  and "
16796 "B<socket>(7)  are valid on packet sockets."
16797 msgstr ""
16798 "さらに、 B<netdevice>(7)  および B<socket>(7)  で定義されている標準の ioctl "
16799 "はいずれも packet ソケットに指定可能である。"
16800
16801 #. type: SS
16802 #: build/C/man7/packet.7:492 build/C/man7/raw.7:131 build/C/man7/tcp.7:1210
16803 #: build/C/man7/udp.7:103
16804 #, no-wrap
16805 msgid "Error handling"
16806 msgstr "エラー処理"
16807
16808 #. type: Plain text
16809 #: build/C/man7/packet.7:496
16810 msgid ""
16811 "Packet sockets do no error handling other than errors occurred while passing "
16812 "the packet to the device driver.  They don't have the concept of a pending "
16813 "error."
16814 msgstr ""
16815 "packet ソケットは、パケットをデバイスドライバに渡すときに 起きたエラーしか処"
16816 "理しない。遅延エラー (pending error)  に関する概念は持っていない。"
16817
16818 #. type: Plain text
16819 #: build/C/man7/packet.7:500
16820 msgid "Unknown multicast group address passed."
16821 msgstr "不明なマルチキャストグループアドレスが渡された。"
16822
16823 #. type: Plain text
16824 #: build/C/man7/packet.7:503
16825 msgid "User passed invalid memory address."
16826 msgstr "ユーザが渡したメモリアドレスが不正。"
16827
16828 #. type: Plain text
16829 #: build/C/man7/packet.7:506 build/C/man7/raw.7:155
16830 msgid "Invalid argument."
16831 msgstr "引き数が不正。"
16832
16833 #. type: Plain text
16834 #: build/C/man7/packet.7:509
16835 msgid "Packet is bigger than interface MTU."
16836 msgstr "パケットがインターフェースの MTU より大きい。"
16837
16838 #. type: TP
16839 #: build/C/man7/packet.7:509
16840 #, no-wrap
16841 msgid "B<ENETDOWN>"
16842 msgstr "B<ENETDOWN>"
16843
16844 #. type: Plain text
16845 #: build/C/man7/packet.7:512
16846 msgid "Interface is not up."
16847 msgstr "インターフェースが up でない。"
16848
16849 #. type: Plain text
16850 #: build/C/man7/packet.7:515
16851 msgid "Not enough memory to allocate the packet."
16852 msgstr "パケットに割り当てるメモリが足りない。"
16853
16854 #. type: Plain text
16855 #: build/C/man7/packet.7:518
16856 msgid "Unknown device name or interface index specified in interface address."
16857 msgstr ""
16858 "デバイス名が不明。あるいはインターフェースアドレスで指定された インターフェー"
16859 "スインデックスが不明。"
16860
16861 #. type: Plain text
16862 #: build/C/man7/packet.7:521
16863 msgid "No packet received."
16864 msgstr "パケットを一つも受信していない。"
16865
16866 #. type: Plain text
16867 #: build/C/man7/packet.7:524
16868 msgid "No interface address passed."
16869 msgstr "インターフェースアドレスが渡されなかった。"
16870
16871 #. type: TP
16872 #: build/C/man7/packet.7:524
16873 #, no-wrap
16874 msgid "B<ENXIO>"
16875 msgstr "B<ENXIO>"
16876
16877 #. type: Plain text
16878 #: build/C/man7/packet.7:527
16879 msgid "Interface address contained an invalid interface index."
16880 msgstr ""
16881 "インターフェースアドレスに不正なインターフェースインデックスが含まれている。"
16882
16883 #. type: Plain text
16884 #: build/C/man7/packet.7:530
16885 msgid "User has insufficient privileges to carry out this operation."
16886 msgstr "この操作を行うのに必要な権限をユーザが持っていない。"
16887
16888 #. type: Plain text
16889 #: build/C/man7/packet.7:532
16890 msgid "In addition, other errors may be generated by the low-level driver."
16891 msgstr "上記以外のエラーが、低レベルのドライバで生成されることがある。"
16892
16893 #. type: Plain text
16894 #: build/C/man7/packet.7:537
16895 msgid ""
16896 "B<AF_PACKET> is a new feature in Linux 2.2.  Earlier Linux versions "
16897 "supported only B<SOCK_PACKET>."
16898 msgstr ""
16899 "B<AF_PACKET> は Linux 2.2 の新機能である。これより古いバージョンの Linux で"
16900 "は B<SOCK_PACKET> のみをサポートしていた。"
16901
16902 #. type: Plain text
16903 #: build/C/man7/packet.7:546
16904 msgid ""
16905 "For portable programs it is suggested to use B<AF_PACKET> via B<pcap>(3); "
16906 "although this covers only a subset of the B<AF_PACKET> features."
16907 msgstr ""
16908 "移植性の必要なプログラムでは、 B<pcap>(3)  経由で B<AF_PACKET> を用いることを"
16909 "お薦めする。ただし、この方法では B<AF_PACKET> の機能すべてを利用することはで"
16910 "きない。"
16911
16912 #. type: Plain text
16913 #: build/C/man7/packet.7:567
16914 msgid ""
16915 "The B<SOCK_DGRAM> packet sockets make no attempt to create or parse the IEEE "
16916 "802.2 LLC header for a IEEE 802.3 frame.  When B<ETH_P_802_3> is specified "
16917 "as protocol for sending the kernel creates the 802.3 frame and fills out the "
16918 "length field; the user has to supply the LLC header to get a fully "
16919 "conforming packet.  Incoming 802.3 packets are not multiplexed on the DSAP/"
16920 "SSAP protocol fields; instead they are supplied to the user as protocol "
16921 "B<ETH_P_802_2> with the LLC header prefixed.  It is thus not possible to "
16922 "bind to B<ETH_P_802_3>; bind to B<ETH_P_802_2> instead and do the protocol "
16923 "multiplex yourself.  The default for sending is the standard Ethernet DIX "
16924 "encapsulation with the protocol filled in."
16925 msgstr ""
16926 "B<SOCK_DGRAM> packet ソケットは、IEEE 802.3 フレームの IEEE 802.2 LLC ヘッダ"
16927 "の 生成や解析を行おうとしない。 B<ETH_P_802_3> が送信プロトコルに指定される"
16928 "と、カーネルは 802.3 フレームを 生成して length フィールドに書き込む。 完全に"
16929 "準拠したパケットを得るためにはユーザーが LLC ヘッダを 与える必要がある。到着"
16930 "した 802.3 パケットでは、 DSAP/SSAP protocol の各フィールドは多重化 "
16931 "(multiplex) されていない。 代わりにこれらは LLC ヘッダが前置された "
16932 "B<ETH_P_802_2> プロトコルとして与えられる。したがって、 B<ETH_P_802_3> にバイ"
16933 "ンドすることはできない。かわりに B<ETH_P_802_2> にバインドし、自分自身でプロ"
16934 "トコルの多重化を行うこと。 送信のデフォルトは、プロトコルフィールドを持つ 標"
16935 "準の Ethernet DIX encapsulation である。"
16936
16937 #. type: Plain text
16938 #: build/C/man7/packet.7:569
16939 msgid "Packet sockets are not subject to the input or output firewall chains."
16940 msgstr "packet ソケットは入出力の firewall chain に影響をうけない。"
16941
16942 #. type: Plain text
16943 #: build/C/man7/packet.7:579
16944 msgid ""
16945 "In Linux 2.0, the only way to get a packet socket was by calling "
16946 "B<socket(AF_INET, SOCK_PACKET, >I<protocol>B<)>.  This is still supported "
16947 "but strongly deprecated.  The main difference between the two methods is "
16948 "that B<SOCK_PACKET> uses the old I<struct sockaddr_pkt> to specify an "
16949 "interface, which doesn't provide physical layer independence."
16950 msgstr ""
16951 "Linux 2.0 では、 packet ソケットを得る方法は B<socket(AF_INET, SOCK_PACKET, "
16952 ">I<protocol>B<)> を呼ぶやり方しかなかった。この方法はまだサポートされている"
16953 "が、 用いないことを強く推奨する。現在の方法との主な違いは、 B<SOCK_PACKET> で"
16954 "はインターフェースの指定に古い I<struct sockaddr_pkt> を用いる点である。これ"
16955 "には物理層からの独立性がない。"
16956
16957 #. type: Plain text
16958 #: build/C/man7/packet.7:587
16959 #, no-wrap
16960 msgid ""
16961 "struct sockaddr_pkt {\n"
16962 "    unsigned short spkt_family;\n"
16963 "    unsigned char  spkt_device[14];\n"
16964 "    unsigned short spkt_protocol;\n"
16965 "};\n"
16966 msgstr ""
16967 "struct sockaddr_pkt {\n"
16968 "    unsigned short spkt_family;\n"
16969 "    unsigned char  spkt_device[14];\n"
16970 "    unsigned short spkt_protocol;\n"
16971 "};\n"
16972
16973 #. type: Plain text
16974 #: build/C/man7/packet.7:599
16975 msgid ""
16976 "I<spkt_family> contains the device type, I<spkt_protocol> is the IEEE 802.3 "
16977 "protocol type as defined in I<E<lt>sys/if_ether.hE<gt>> and I<spkt_device> "
16978 "is the device name as a null-terminated string, for example, eth0."
16979 msgstr ""
16980 "I<spkt_family> はデバイスのタイプ、 I<spkt_protocol> は I<E<lt>sys/if_ether."
16981 "hE<gt>> で定義されている IEEE 802.3 プロトコルタイプ、 I<spkt_device> はデバ"
16982 "イスの名前をヌル終端された文字列で与えたもの (例: eth0) である。"
16983
16984 #. type: Plain text
16985 #: build/C/man7/packet.7:601
16986 msgid "This structure is obsolete and should not be used in new code."
16987 msgstr ""
16988 "この構造体は obsolete であり、 新しくコードを書く時には用いるべきでない。"
16989
16990 #. type: Plain text
16991 #: build/C/man7/packet.7:605
16992 msgid ""
16993 "glibc 2.1 does not have a define for B<SOL_PACKET>.  The suggested "
16994 "workaround is to use:"
16995 msgstr ""
16996 "glibc 2.1 には B<SOL_PACKET> の定義がない。回避策としては、以下のようにすると"
16997 "よい。"
16998
16999 #. type: Plain text
17000 #: build/C/man7/packet.7:611
17001 #, no-wrap
17002 msgid ""
17003 "#ifndef SOL_PACKET\n"
17004 "#define SOL_PACKET 263\n"
17005 "#endif\n"
17006 msgstr ""
17007 "#ifndef SOL_PACKET\n"
17008 "#define SOL_PACKET 263\n"
17009 "#endif\n"
17010
17011 #. type: Plain text
17012 #: build/C/man7/packet.7:615
17013 msgid "This is fixed in later glibc versions."
17014 msgstr "この問題はそれ以降のバージョンの glibc では修正されている。"
17015
17016 #. type: Plain text
17017 #: build/C/man7/packet.7:617
17018 msgid "The IEEE 802.2/803.3 LLC handling could be considered as a bug."
17019 msgstr "IEEE 802.2/803.3 の LLC の扱い方は、バグと考えても良いだろう。"
17020
17021 #. type: Plain text
17022 #: build/C/man7/packet.7:619
17023 msgid "Socket filters are not documented."
17024 msgstr "ソケットフィルターについて記載されていない。"
17025
17026 #.  .SH CREDITS
17027 #.  This man page was written by Andi Kleen with help from Matthew Wilcox.
17028 #.  AF_PACKET in Linux 2.2 was implemented
17029 #.  by Alexey Kuznetsov, based on code by Alan Cox and others.
17030 #. type: Plain text
17031 #: build/C/man7/packet.7:631
17032 msgid ""
17033 "The B<MSG_TRUNC> B<recvmsg>(2)  extension is an ugly hack and should be "
17034 "replaced by a control message.  There is currently no way to get the "
17035 "original destination address of packets via B<SOCK_DGRAM>."
17036 msgstr ""
17037 "B<MSG_TRUNC> B<recvmsg>(2)  拡張は非常にまずい対処であり、制御メッセージで置"
17038 "き換えるべきである。 今のところ B<SOCK_DGRAM> 経由でパケットについていた宛先"
17039 "アドレスを得る方法がない。"
17040
17041 #. type: Plain text
17042 #: build/C/man7/packet.7:638
17043 msgid ""
17044 "B<socket>(2), B<pcap>(3), B<capabilities>(7), B<ip>(7), B<raw>(7), "
17045 "B<socket>(7)"
17046 msgstr ""
17047 "B<socket>(2), B<pcap>(3), B<capabilities>(7), B<ip>(7), B<raw>(7), "
17048 "B<socket>(7)"
17049
17050 #. type: Plain text
17051 #: build/C/man7/packet.7:641
17052 msgid ""
17053 "RFC\\ 894 for the standard IP Ethernet encapsulation.  RFC\\ 1700 for the "
17054 "IEEE 802.3 IP encapsulation."
17055 msgstr ""
17056 "標準 IP Ethernet encapsulation に関しては RFC\\ 894 を、 IEEE 802.3 IP "
17057 "encapsulation に関しては RFC\\ 1700 を参照。"
17058
17059 #. type: Plain text
17060 #: build/C/man7/packet.7:645
17061 msgid ""
17062 "The I<E<lt>linux/if_ether.hE<gt>> include file for physical layer protocols."
17063 msgstr ""
17064 "物理層のプロトコルに関する記述は I<E<lt>linux/if_ether.hE<gt>> インクルード"
17065 "ファイルにある。"
17066
17067 #. type: Plain text
17068 #: build/C/man7/packet.7:654
17069 msgid ""
17070 "The Linux kernel source tree.  I</Documentation/networking/filter.txt> "
17071 "describes how to apply Berkeley Packet Filters to packet sockets.  I</tools/"
17072 "testing/selftests/net/psock_tpacket.c> contains example source code for all "
17073 "available versions of B<PACKET_RX_RING> and B<PACKET_TX_RING>."
17074 msgstr ""
17075 "Linux カーネルのソースツリー。 I</Documentation/networking/filter.txt> には "
17076 "Berkeley Packet Filters をパケットソケットにどのように適用するかの説明があ"
17077 "る。 I</tools/testing/selftests/net/psock_tpacket.c> には、 "
17078 "B<PACKET_RX_RING> と B<PACKET_TX_RING> の利用可能なすべてのバージョンのサンプ"
17079 "ルソースコードがある。"
17080
17081 #. type: TH
17082 #: build/C/man5/protocols.5:29
17083 #, no-wrap
17084 msgid "PROTOCOLS"
17085 msgstr "PROTOCOLS"
17086
17087 #. type: TH
17088 #: build/C/man5/protocols.5:29 build/C/man7/x25.7:12
17089 #, no-wrap
17090 msgid "2012-08-05"
17091 msgstr "2012-08-05"
17092
17093 #. type: Plain text
17094 #: build/C/man5/protocols.5:32
17095 msgid "protocols - protocols definition file"
17096 msgstr "protocols - プロトコル定義ファイル"
17097
17098 #. type: Plain text
17099 #: build/C/man5/protocols.5:40
17100 msgid ""
17101 "This file is a plain ASCII file, describing the various DARPA internet "
17102 "protocols that are available from the TCP/IP subsystem.  It should be "
17103 "consulted instead of using the numbers in the ARPA include files, or, even "
17104 "worse, just guessing them.  These numbers will occur in the protocol field "
17105 "of any IP header."
17106 msgstr ""
17107 "このファイルは ASCII ファイルで、TCP/IP サブシステムから利用できる いろいろ"
17108 "な DARPA インターネットプロトコルを記述している。 ARPA 関連のインクルードファ"
17109 "イル内の数値を使うべきではないし、 単に推測した値を使うのはさらに良くない。 "
17110 "代わりにこのファイルに問い合わせるべきである。 これらの数値は IP ヘッダのプロ"
17111 "トコルフィールドに現れる。"
17112
17113 #.  .. by the DDN Network Information Center.
17114 #. type: Plain text
17115 #: build/C/man5/protocols.5:46
17116 msgid ""
17117 "Keep this file untouched since changes would result in incorrect IP "
17118 "packages.  Protocol numbers and names are specified by the IANA (Internet "
17119 "Assigned Numbers Authority)."
17120 msgstr ""
17121 "このファイルは変更しないこと。変更すると IP パッケージが不正になる。 プロトコ"
17122 "ル番号とプロトコル名は IANA (Internet Assigned Numbers Authority) によって指"
17123 "定される。"
17124
17125 #. type: Plain text
17126 #: build/C/man5/protocols.5:48
17127 msgid "Each line is of the following format:"
17128 msgstr "それぞれの行は次のフォーマットである。"
17129
17130 #. type: Plain text
17131 #: build/C/man5/protocols.5:51
17132 msgid "I<protocol number aliases ...>"
17133 msgstr "I<protocol number aliases ...>"
17134
17135 #. type: Plain text
17136 #: build/C/man5/protocols.5:57
17137 msgid ""
17138 "where the fields are delimited by spaces or tabs.  Empty lines are ignored.  "
17139 "If a line contains a hash mark (#), the hash mark and the part of the line "
17140 "following it are ignored."
17141 msgstr ""
17142 "各フィールドは空白かタブで区切られていて、空行は無視される。 行にハッシュ記号"
17143 "(#)が含まれる場合、 ハッシュ記号を含むその行の残りは無視される。"
17144
17145 #. type: TP
17146 #: build/C/man5/protocols.5:59 build/C/man5/services.5:109
17147 #, no-wrap
17148 msgid "I<protocol>"
17149 msgstr "I<protocol>"
17150
17151 #. type: Plain text
17152 #: build/C/man5/protocols.5:67
17153 msgid ""
17154 "the native name for the protocol.  For example I<ip>, I<tcp>, or I<udp>."
17155 msgstr "プロトコルの固有名。たとえば I<ip>, I<tcp>, I<udp> など。"
17156
17157 #. type: Plain text
17158 #: build/C/man5/protocols.5:71
17159 msgid ""
17160 "the official number for this protocol as it will appear within the IP header."
17161 msgstr "プロトコルの公式番号、IP ヘッダに現れる。"
17162
17163 #. type: Plain text
17164 #: build/C/man5/protocols.5:74
17165 msgid "optional aliases for the protocol."
17166 msgstr "プロトコルの別名、オプション。"
17167
17168 #.  The following is not true as at glibc 2.8 (a line with a comma is
17169 #.  ignored by getservent()); it's not clear if/when it was ever true.
17170 #.    As a backward compatibility feature, the slash (/) between the
17171 #.    .I port
17172 #.    number and
17173 #.    .I protocol
17174 #.    name can in fact be either a slash or a comma (,).
17175 #.    Use of the comma in
17176 #.    modern installations is deprecated.
17177 #. type: Plain text
17178 #: build/C/man5/protocols.5:77 build/C/man5/services.5:165
17179 msgid ""
17180 "This file might be distributed over a network using a network-wide naming "
17181 "service like Yellow Pages/NIS or BIND/Hesiod."
17182 msgstr ""
17183 "このファイルは Yellow Pages/NIS や BIND/Hesiod のようなネットワーク上の名前"
17184 "サービスを用いて、ネットワークを通じて配布される可能性もある。"
17185
17186 #. type: Plain text
17187 #: build/C/man5/protocols.5:81
17188 msgid "The protocols definition file."
17189 msgstr "プロトコル定義ファイル。"
17190
17191 #. type: Plain text
17192 #: build/C/man5/protocols.5:83
17193 msgid "B<getprotoent>(3)"
17194 msgstr "B<getprotoent>(3)"
17195
17196 #. type: Plain text
17197 #: build/C/man5/protocols.5:86
17198 msgid "E<.UR http://www.iana.org\\:/assignments\\:/protocol-numbers> E<.UE>"
17199 msgstr "E<.UR http://www.iana.org\\:/assignments\\:/protocol-numbers> E<.UE>"
17200
17201 #. type: TH
17202 #: build/C/man7/raw.7:13
17203 #, no-wrap
17204 msgid "RAW"
17205 msgstr "RAW"
17206
17207 #. type: Plain text
17208 #: build/C/man7/raw.7:16
17209 msgid "raw - Linux IPv4 raw sockets"
17210 msgstr "raw - Linux の IPv4 raw ソケット"
17211
17212 #. type: Plain text
17213 #: build/C/man7/raw.7:22
17214 msgid "B<raw_socket = socket(AF_INET, SOCK_RAW, int >I<protocol>B<);>"
17215 msgstr "B<raw_socket = socket(AF_INET, SOCK_RAW, int >I<protocol>B<);>"
17216
17217 #. type: Plain text
17218 #: build/C/man7/raw.7:26
17219 msgid ""
17220 "Raw sockets allow new IPv4 protocols to be implemented in user space.  A raw "
17221 "socket receives or sends the raw datagram not including link level headers."
17222 msgstr ""
17223 "raw ソケットを使うと、新しい IPv4 プロトコルをユーザ空間で 実装できるようにな"
17224 "る。 raw ソケットは、リンクレベルヘッダを 含まない raw データグラムの送受信が"
17225 "できる。"
17226
17227 #. type: Plain text
17228 #: build/C/man7/raw.7:32
17229 msgid ""
17230 "The IPv4 layer generates an IP header when sending a packet unless the "
17231 "B<IP_HDRINCL> socket option is enabled on the socket.  When it is enabled, "
17232 "the packet must contain an IP header.  For receiving the IP header is always "
17233 "included in the packet."
17234 msgstr ""
17235 "IPv4 レイヤは、扱っているソケットで B<IP_HDRINCL> ソケットオプションが有効に"
17236 "なっていなければ、 パケットを送信するときに IP ヘッダを生成する。 "
17237 "B<IP_HDRINCL> オプションが有効になっているときは、パケットには IP ヘッダが含"
17238 "まれていなければならない。 受信時には、 IP ヘッダは常にパケットに含まれてい"
17239 "る。"
17240
17241 #. type: Plain text
17242 #: build/C/man7/raw.7:36
17243 msgid ""
17244 "Only processes with an effective user ID of 0 or the B<CAP_NET_RAW> "
17245 "capability are allowed to open raw sockets."
17246 msgstr ""
17247 "実効ユーザー ID が 0 のプロセスか、 B<CAP_NET_RAW> 権限を持つプロセスだけが "
17248 "raw ソケットをオープンすることができる。"
17249
17250 #. type: Plain text
17251 #: build/C/man7/raw.7:43
17252 msgid ""
17253 "All packets or errors matching the I<protocol> number specified for the raw "
17254 "socket are passed to this socket.  For a list of the allowed protocols see "
17255 "RFC\\ 1700 assigned numbers and B<getprotobyname>(3)."
17256 msgstr ""
17257 "この raw ソケットに指定された I<protocol> 番号にマッチする全てのパケットとエ"
17258 "ラーとが、このソケットに渡される。 許可されているプロトコルのリストは RFC\\ "
17259 "1700 の割り当て番号と B<getprotobyname>(3)  を見よ。"
17260
17261 #. type: Plain text
17262 #: build/C/man7/raw.7:53
17263 msgid ""
17264 "A protocol of B<IPPROTO_RAW> implies enabled B<IP_HDRINCL> and is able to "
17265 "send any IP protocol that is specified in the passed header.  Receiving of "
17266 "all IP protocols via B<IPPROTO_RAW> is not possible using raw sockets."
17267 msgstr ""
17268 "B<IPPROTO_RAW> のプロトコルは暗黙のうちに B<IP_HDRINCL> を有効にするので、 渡"
17269 "されたヘッダで指定された、あらゆる IP プロトコルを送信できる。 "
17270 "B<IPPROTO_RAW> 経由でのあらゆる IP プロトコルの受信は、 raw ソケットを用いて"
17271 "は行えない。"
17272
17273 #. type: tbl table
17274 #: build/C/man7/raw.7:58
17275 #, no-wrap
17276 msgid "IP Header fields modified on sending by B<IP_HDRINCL>\n"
17277 msgstr "IP ヘッダフィールド。 B<IP_HDRINCL> によって送信時に変更される。\n"
17278
17279 #. type: tbl table
17280 #: build/C/man7/raw.7:59
17281 #, no-wrap
17282 msgid "IP Checksum:Always filled in.\n"
17283 msgstr "IP チェックサム:常に変更される。\n"
17284
17285 #. type: tbl table
17286 #: build/C/man7/raw.7:60
17287 #, no-wrap
17288 msgid "Source Address:Filled in when zero.\n"
17289 msgstr "ソースアドレス:元の値が 0 の時に変更される。\n"
17290
17291 #. type: tbl table
17292 #: build/C/man7/raw.7:61
17293 #, no-wrap
17294 msgid "Packet Id:Filled in when zero.\n"
17295 msgstr "パケット ID:元の値が 0 の時に変更される。\n"
17296
17297 #. type: tbl table
17298 #: build/C/man7/raw.7:62
17299 #, no-wrap
17300 msgid "Total Length:Always filled in.\n"
17301 msgstr "全体の長さ:常に埋められる。\n"
17302
17303 #. type: Plain text
17304 #: build/C/man7/raw.7:76
17305 msgid ""
17306 "If B<IP_HDRINCL> is specified and the IP header has a nonzero destination "
17307 "address, then the destination address of the socket is used to route the "
17308 "packet.  When B<MSG_DONTROUTE> is specified, the destination address should "
17309 "refer to a local interface, otherwise a routing table lookup is done anyway "
17310 "but gatewayed routes are ignored."
17311 msgstr ""
17312 "B<IP_HERINCL> が指定されていて、 IP ヘッダに 0 でない送信先アドレスが記入され"
17313 "ていた場合は、 その送信先アドレスがパケットの経路を決めるのに用いられる。 "
17314 "B<MSG_DONTROUTE> が指定されている時には、 送信先アドレスはローカルなインター"
17315 "フェースを参照するものでなければならない。 さもないと、ルーティングテーブルの"
17316 "参照はいずれにせよ行われるが、 ゲートウェイが必要な経路は無視される。"
17317
17318 #. type: Plain text
17319 #: build/C/man7/raw.7:84
17320 msgid ""
17321 "If B<IP_HDRINCL> isn't set, then IP header options can be set on raw sockets "
17322 "with B<setsockopt>(2); see B<ip>(7)  for more information."
17323 msgstr ""
17324 "B<IP_HDRINCL> がセットされていなければ、 raw ソケットの IP ヘッダオプション"
17325 "を B<setsockopt>(2)  を用いて設定することができる。詳細な情報は B<ip>(7)  を"
17326 "見よ。"
17327
17328 #. type: Plain text
17329 #: build/C/man7/raw.7:89
17330 msgid ""
17331 "In Linux 2.2, all IP header fields and options can be set using IP socket "
17332 "options.  This means raw sockets are usually needed only for new protocols "
17333 "or protocols with no user interface (like ICMP)."
17334 msgstr ""
17335 "Linux 2.2 では、 IP ヘッダの全てのフィールドとオプションとを IP ソケットオプ"
17336 "ションによって設定できる。したがって raw ソケットが必要になるのは、新しいプロ"
17337 "トコルを設計する場合か、 ユーザーインターフェースを持たないプロトコル (ICMP "
17338 "など) を扱う場合に 限られる。"
17339
17340 #. type: Plain text
17341 #: build/C/man7/raw.7:93
17342 msgid ""
17343 "When a packet is received, it is passed to any raw sockets which have been "
17344 "bound to its protocol before it is passed to other protocol handlers (e.g., "
17345 "kernel protocol modules)."
17346 msgstr ""
17347 "パケットは、受信されるとまずプロトコルにバインドしている raw ソケットに渡さ"
17348 "れ、 その後で他のプロトコルハンドラ (カーネルのプロトコルモジュールなど)  に"
17349 "渡される。"
17350
17351 #. type: Plain text
17352 #: build/C/man7/raw.7:109
17353 msgid ""
17354 "Raw sockets use the standard I<sockaddr_in> address structure defined in "
17355 "B<ip>(7).  The I<sin_port> field could be used to specify the IP protocol "
17356 "number, but it is ignored for sending in Linux 2.2 and should be always set "
17357 "to 0 (see BUGS).  For incoming packets, I<sin_port> is set to the protocol "
17358 "of the packet.  See the I<E<lt>netinet/in.hE<gt>> include file for valid IP "
17359 "protocols."
17360 msgstr ""
17361 "raw ソケットは標準の I<sockaddr_in> アドレス構造体を用いる。定義は B<ip>(7)  "
17362 "でなされている。 I<sin_port> フィールドを IP プロトコル番号の指定に用いること"
17363 "ができるが、 Linux 2.2 ではこれは送信時には無視され、常に 0 にされる (バグ の"
17364 "項を参照)。 受信パケットに対しては、 I<sin_port> はそのパケットのプロトコルに"
17365 "セットされる。 用いることのできる IP プロトコルは、インクルードファイル "
17366 "I<E<lt>netinet/in.hE<gt>> を見よ。"
17367
17368 #.  Or SOL_RAW on Linux
17369 #. type: Plain text
17370 #: build/C/man7/raw.7:118
17371 msgid ""
17372 "Raw socket options can be set with B<setsockopt>(2)  and read with "
17373 "B<getsockopt>(2)  by passing the B<IPPROTO_RAW> family flag."
17374 msgstr ""
17375 "raw ソケットのオプションは、 B<IPPROTO_RAW> ファミリーフラグを与えて "
17376 "B<setsockopt>(2)  を呼べば設定でき、 B<getsockopt>(2)  を呼べば取得できる。"
17377
17378 #. type: TP
17379 #: build/C/man7/raw.7:118
17380 #, no-wrap
17381 msgid "B<ICMP_FILTER>"
17382 msgstr "B<ICMP_FILTER>"
17383
17384 #. type: Plain text
17385 #: build/C/man7/raw.7:126
17386 msgid ""
17387 "Enable a special filter for raw sockets bound to the B<IPPROTO_ICMP> "
17388 "protocol.  The value has a bit set for each ICMP message type which should "
17389 "be filtered out.  The default is to filter no ICMP messages."
17390 msgstr ""
17391 "B<IPPROTO_ICMP> プロトコルにバインドされた raw ソケットのための特殊なフィルタ"
17392 "を有効にする。 この値は ICMP メッセージのタイプそれぞれに対して、どれをフィル"
17393 "ターアウト するかを表したビットセットである。デフォルトでは ICMP メッセージは"
17394 "全くフィルターしない。"
17395
17396 #. type: Plain text
17397 #: build/C/man7/raw.7:131
17398 msgid ""
17399 "In addition, all B<ip>(7)  B<IPPROTO_IP> socket options valid for datagram "
17400 "sockets are supported."
17401 msgstr ""
17402 "さらに、データグラムソケットに使える全ての B<ip>(7)  B<SOL_IP> ソケットオプ"
17403 "ションがサポートされている。"
17404
17405 #. type: Plain text
17406 #: build/C/man7/raw.7:144
17407 msgid ""
17408 "Errors originating from the network are passed to the user only when the "
17409 "socket is connected or the B<IP_RECVERR> flag is enabled.  For connected "
17410 "sockets, only B<EMSGSIZE> and B<EPROTO> are passed for compatibility.  With "
17411 "B<IP_RECVERR>, all network errors are saved in the error queue."
17412 msgstr ""
17413 "ネットワークで生じたエラーがユーザに渡されるのは、 ソケットが接続済みの場合"
17414 "か B<IP_RECVERR> フラグが有効になっている場合に限られる。 接続済みのソケット"
17415 "に対しては、 B<EMSGSIZE> および B<EPROTO> だけが渡される (互換性のため)。 "
17416 "B<IP_RECVERR> を設定すると、全てのネットワークエラーがエラーキューに保存され"
17417 "る。"
17418
17419 #. type: Plain text
17420 #: build/C/man7/raw.7:149
17421 msgid ""
17422 "User tried to send to a broadcast address without having the broadcast flag "
17423 "set on the socket."
17424 msgstr ""
17425 "ユーザーが broadcast フラグを設定していないソケットを用いて ブロードキャスト"
17426 "アドレスに送信を行おうとした。"
17427
17428 #. type: Plain text
17429 #: build/C/man7/raw.7:152
17430 msgid "An invalid memory address was supplied."
17431 msgstr "不正なメモリアドレスが与えられた。"
17432
17433 #. type: Plain text
17434 #: build/C/man7/raw.7:162
17435 msgid ""
17436 "Packet too big.  Either Path MTU Discovery is enabled (the "
17437 "B<IP_MTU_DISCOVER> socket flag) or the packet size exceeds the maximum "
17438 "allowed IPv4 packet size of 64KB."
17439 msgstr ""
17440 "パケットが大きすぎる。 Path MTU Discoverry が有効になっている "
17441 "(B<IP_MTU_DISCOVER> ソケットフラグ) か、パケットのサイズが IPv4 で許されてい"
17442 "る パケットサイズの最大値 64KB を越えている。"
17443
17444 #. type: TP
17445 #: build/C/man7/raw.7:162 build/C/man7/unix.7:447
17446 #, no-wrap
17447 msgid "B<EOPNOTSUPP>"
17448 msgstr "B<EOPNOTSUPP>"
17449
17450 #. type: Plain text
17451 #: build/C/man7/raw.7:166
17452 msgid "Invalid flag has been passed to a socket call (like B<MSG_OOB>)."
17453 msgstr "ソケット呼び出しに不正なフラグ (B<MSG_OOB> など) が渡された。"
17454
17455 #. type: Plain text
17456 #: build/C/man7/raw.7:172
17457 msgid ""
17458 "The user doesn't have permission to open raw sockets.  Only processes with "
17459 "an effective user ID of 0 or the B<CAP_NET_RAW> attribute may do that."
17460 msgstr ""
17461 "ユーザーは raw ソケットをオープンする権限を持っていない。 実行ユーザー ID が "
17462 "0 のプロセスか、 B<CAP_NET_RAW> 属性を持つプロセスだけがこれを行うことができ"
17463 "る。"
17464
17465 #. type: TP
17466 #: build/C/man7/raw.7:172
17467 #, no-wrap
17468 msgid "B<EPROTO>"
17469 msgstr "B<EPROTO>"
17470
17471 #. type: Plain text
17472 #: build/C/man7/raw.7:175
17473 msgid "An ICMP error has arrived reporting a parameter problem."
17474 msgstr "パラメータの問題を報告する ICMP エラーを受け取った。"
17475
17476 #. type: Plain text
17477 #: build/C/man7/raw.7:181
17478 msgid ""
17479 "B<IP_RECVERR> and B<ICMP_FILTER> are new in Linux 2.2.  They are Linux "
17480 "extensions and should not be used in portable programs."
17481 msgstr ""
17482 "B<IP_RECVERR> と B<ICMP_FILTER> は Linux 2.2 で登場した。これらは Linux での"
17483 "拡張であり、 移植性の必要なプログラムでは用いるべきでない。"
17484
17485 #. type: Plain text
17486 #: build/C/man7/raw.7:187
17487 msgid ""
17488 "Linux 2.0 enabled some bug-to-bug compatibility with BSD in the raw socket "
17489 "code when the B<SO_BSDCOMPAT> socket option was set \\(em since Linux 2.2, "
17490 "this option no longer has that effect."
17491 msgstr ""
17492 "Linux 2.0 では B<SO_BSDCOMPAT> ソケットオプションをセットすると、 BSD の raw "
17493 "ソケットにあるバグに互換性を取ることができた \\(em Linux 2.2 以降では、このオ"
17494 "プションはもはや効力を持たない。"
17495
17496 #. type: Plain text
17497 #: build/C/man7/raw.7:205
17498 msgid ""
17499 "By default, raw sockets do path MTU (Maximum Transmission Unit) discovery.  "
17500 "This means the kernel will keep track of the MTU to a specific target IP "
17501 "address and return B<EMSGSIZE> when a raw packet write exceeds it.  When "
17502 "this happens, the application should decrease the packet size.  Path MTU "
17503 "discovery can be also turned off using the B<IP_MTU_DISCOVER> socket option "
17504 "or the I</proc/sys/net/ipv4/ip_no_pmtu_disc> file, see B<ip>(7)  for "
17505 "details.  When turned off, raw sockets will fragment outgoing packets that "
17506 "exceed the interface MTU.  However, disabling it is not recommended for "
17507 "performance and reliability reasons."
17508 msgstr ""
17509 "デフォルトでは、raw ソケットは Path MTU Discovery を行う。 つまり、カーネルは"
17510 "特定の宛先 IP アドレスの MTU (Maximum Transmission Unit; 最大転送単位) を記録"
17511 "し、raw パケットの書き込みが MTU を超えた場合 B<EMSGSIZE> を返す。 "
17512 "B<EMSGSIZE> を返された場合、アプリケーションはパケットサイズを小さくすべきで"
17513 "ある。 ソケットオプション B<IP_MTU_DISCOVER> または I</proc/sys/net/ipv4/"
17514 "ip_no_pmtu_disc> ファイルを使って Path MTU Discovery を無効にすることもでき"
17515 "る (詳細は B<ip>(7)  を参照)。 Path MTU Discovery を無効にした場合は、パケッ"
17516 "トサイズが インタフェースの MTU よりも大きいと raw ソケットはそのパケットを "
17517 "フラグメント化して送出する。 しかしながら、性能と信頼性の理由から Path MTU "
17518 "Discovery を 無効にするのは推奨できない。"
17519
17520 #. type: Plain text
17521 #: build/C/man7/raw.7:214
17522 msgid ""
17523 "A raw socket can be bound to a specific local address using the B<bind>(2)  "
17524 "call.  If it isn't bound, all packets with the specified IP protocol are "
17525 "received.  In addition, a RAW socket can be bound to a specific network "
17526 "device using B<SO_BINDTODEVICE>; see B<socket>(7)."
17527 msgstr ""
17528 "B<bind>(2)  システムコールを用いると、 raw ソケットを 特定のローカルアドレス"
17529 "にバインドさせることができる。 このバインドがされていない場合は、指定した IP "
17530 "プロトコルの すべてのパケットが受信される。 さらに、 B<SO_BINDTODEVICE> を用"
17531 "いれば raw ソケットを特定のネットワークデバイスに バインドさせることもでき"
17532 "る。 B<socket>(7)  を見よ。"
17533
17534 #. type: Plain text
17535 #: build/C/man7/raw.7:225
17536 msgid ""
17537 "An B<IPPROTO_RAW> socket is send only.  If you really want to receive all IP "
17538 "packets, use a B<packet>(7)  socket with the B<ETH_P_IP> protocol.  Note "
17539 "that packet sockets don't reassemble IP fragments, unlike raw sockets."
17540 msgstr ""
17541 "B<IPPROTO_RAW> ソケットは送信専用である。もしどうしてもすべての IP パケット"
17542 "を 受信したい場合は、 B<packet>(7)  ソケットを B<ETH_P_IP> プロトコルで用いる"
17543 "こと。 packet ソケットは raw ソケットのように IP フラグメントを再構成しないこ"
17544 "とに注意。"
17545
17546 #. type: Plain text
17547 #: build/C/man7/raw.7:231
17548 msgid ""
17549 "If you want to receive all ICMP packets for a datagram socket, it is often "
17550 "better to use B<IP_RECVERR> on that particular socket; see B<ip>(7)."
17551 msgstr ""
17552 "datagram ソケットに対するすべての ICMP パケットを受信したい場合は、 特定のソ"
17553 "ケットに対して B<IP_RECVERR> を用いるほうが良い場合が多い。 B<ip>(7)  を見"
17554 "よ。"
17555
17556 #. type: Plain text
17557 #: build/C/man7/raw.7:238
17558 msgid ""
17559 "Raw sockets may tap all IP protocols in Linux, even protocols like ICMP or "
17560 "TCP which have a protocol module in the kernel.  In this case, the packets "
17561 "are passed to both the kernel module and the raw socket(s).  This should not "
17562 "be relied upon in portable programs, many other BSD socket implementation "
17563 "have limitations here."
17564 msgstr ""
17565 "raw ソケットは、 Linux のすべての IP プロトコルを受信することができる。 ICMP "
17566 "や TCP のように、カーネル内部にプロトコルモジュールを持つような ものも可能で"
17567 "ある。この場合には、パケットはカーネルモジュールと raw ソケットの両方に渡され"
17568 "る (raw ソケットが複数あればそれぞれに渡される)。 移植性の必要なプログラムで"
17569 "はこの機能に依存するべきではない。 他の多くの BSD におけるソケットの実装では"
17570 "この点において制限がある。"
17571
17572 #. type: Plain text
17573 #: build/C/man7/raw.7:243
17574 msgid ""
17575 "Linux never changes headers passed from the user (except for filling in some "
17576 "zeroed fields as described for B<IP_HDRINCL>).  This differs from many other "
17577 "implementations of raw sockets."
17578 msgstr ""
17579 "Linux はユーザーから渡されたヘッダを決して変更しない (ただし B<IP_HDRINCL> の"
17580 "説明にあるように、 0 をいくつか埋める場合を除く)。 これは他の多くの raw ソ"
17581 "ケットの実装では異なる。"
17582
17583 #. type: Plain text
17584 #: build/C/man7/raw.7:246
17585 msgid ""
17586 "RAW sockets are generally rather unportable and should be avoided in "
17587 "programs intended to be portable."
17588 msgstr ""
17589 "一般に raw ソケットは移植性がないことが多いので、 移植性が必要なプログラムで"
17590 "は避けるべきである。"
17591
17592 #. type: Plain text
17593 #: build/C/man7/raw.7:252
17594 msgid ""
17595 "Sending on raw sockets should take the IP protocol from I<sin_port>; this "
17596 "ability was lost in Linux 2.2.  The workaround is to use B<IP_HDRINCL>."
17597 msgstr ""
17598 "raw ソケットへの送信では、 IP プロトコルを I<sin_port> から取得できなければな"
17599 "らない。この機能は Linux 2.2 では使えなくなった。 B<IP_HDRINCL> を用いれば同"
17600 "様のことが実現できる。"
17601
17602 #. type: Plain text
17603 #: build/C/man7/raw.7:254
17604 msgid "Transparent proxy extensions are not described."
17605 msgstr "透過プロクシ (transparent proxy) 拡張については記述していない。"
17606
17607 #. type: Plain text
17608 #: build/C/man7/raw.7:259
17609 msgid ""
17610 "When the B<IP_HDRINCL> option is set, datagrams will not be fragmented and "
17611 "are limited to the interface MTU."
17612 msgstr ""
17613 "B<IP_HDRINCL> オプションがセットされているとデータグラムはフラグメント化され"
17614 "ず、 インターフェースの MTU の大きさに制限される。"
17615
17616 #.  .SH AUTHORS
17617 #.  This man page was written by Andi Kleen.
17618 #. type: Plain text
17619 #: build/C/man7/raw.7:269
17620 msgid ""
17621 "Setting the IP protocol for sending in I<sin_port> got lost in Linux 2.2.  "
17622 "The protocol that the socket was bound to or that was specified in the "
17623 "initial B<socket>(2)  call is always used."
17624 msgstr ""
17625 "送信用の IP プロトコルの設定を I<sin_port> にしておく機能は Linux 2.2 から使"
17626 "えなくなった。 ソケットにバインドされているプロトコルか、最初の "
17627 "B<socket>(2)  コールによって指定されたプロトコルが常に用いられる。"
17628
17629 #. type: Plain text
17630 #: build/C/man7/raw.7:275
17631 msgid ""
17632 "B<recvmsg>(2), B<sendmsg>(2), B<capabilities>(7), B<ip>(7), B<socket>(7)"
17633 msgstr ""
17634 "B<recvmsg>(2), B<sendmsg>(2), B<capabilities>(7), B<ip>(7), B<socket>(7)"
17635
17636 #. type: Plain text
17637 #: build/C/man7/raw.7:282
17638 msgid ""
17639 "B<RFC\\ 1191> for path MTU discovery.  B<RFC\\ 791> and the I<E<lt>linux/ip."
17640 "hE<gt>> header file for the IP protocol."
17641 msgstr ""
17642 "Path MTU discovery に関しては B<RFC\\ 1191> を参照。 IP プロトコルに関しては "
17643 "B<RFC\\ 791> とインクルードファイル I<E<lt>linux/ip.hE<gt>> を参照。"
17644
17645 #. type: TH
17646 #: build/C/man3/rcmd.3:43
17647 #, no-wrap
17648 msgid "RCMD"
17649 msgstr "RCMD"
17650
17651 #. type: Plain text
17652 #: build/C/man3/rcmd.3:48
17653 msgid ""
17654 "rcmd, rresvport, iruserok, ruserok, rcmd_af, rresvport_af, iruserok_af, "
17655 "ruserok_af - routines for returning a stream to a remote command"
17656 msgstr ""
17657 "rcmd, rresvport, iruserok, ruserok, rcmd_af, rresvport_af, iruserok_af, \n"
17658 "ruserok_af - リモートコマンドにストリームを返す関数群"
17659
17660 #. type: Plain text
17661 #: build/C/man3/rcmd.3:51
17662 #, no-wrap
17663 msgid "B<#include E<lt>netdb.hE<gt> \\ \\ >/* Or E<lt>unistd.hE<gt> on some systems */\n"
17664 msgstr "B<#include E<lt>netdb.hE<gt> \\ \\ >/* Or E<lt>unistd.hE<gt> on some systems */\n"
17665
17666 #. type: Plain text
17667 #: build/C/man3/rcmd.3:54
17668 #, no-wrap
17669 msgid ""
17670 "B<int rcmd(char **>I<ahost>B<, unsigned short >I<inport>B<, const char *>I<locuser>B<, >\n"
17671 "B<         const char *>I<remuser>B<, const char *>I<cmd>B<, int *>I<fd2p>B<);>\n"
17672 msgstr ""
17673 "B<int rcmd(char **>I<ahost>B<, unsigned short >I<inport>B<, const char *>I<locuser>B<, >\n"
17674 "B<         const char *>I<remuser>B<, const char *>I<cmd>B<, int *>I<fd2p>B<);>\n"
17675
17676 #. type: Plain text
17677 #: build/C/man3/rcmd.3:56
17678 #, no-wrap
17679 msgid "B<int rresvport(int *>I<port>B<);>\n"
17680 msgstr "B<int rresvport(int *>I<port>B<);>\n"
17681
17682 #. type: Plain text
17683 #: build/C/man3/rcmd.3:59
17684 #, no-wrap
17685 msgid ""
17686 "B<int iruserok(uint32_t >I<raddr>B<, int >I<superuser>B<, >\n"
17687 "B<             const char *>I<ruser>B<, const char *>I<luser>B<);>\n"
17688 msgstr ""
17689 "B<int iruserok(uint32_t >I<raddr>B<, int >I<superuser>B<, >\n"
17690 "B<             const char *>I<ruser>B<, const char *>I<luser>B<);>\n"
17691
17692 #. type: Plain text
17693 #: build/C/man3/rcmd.3:62
17694 #, no-wrap
17695 msgid ""
17696 "B<int ruserok(const char *>I<rhost>B<, int >I<superuser>B<, >\n"
17697 "B<            const char *>I<ruser>B<, const char *>I<luser>B<);>\n"
17698 msgstr ""
17699 "B<int ruserok(const char *>I<rhost>B<, int >I<superuser>B<, >\n"
17700 "B<            const char *>I<ruser>B<, const char *>I<luser>B<);>\n"
17701
17702 #. type: Plain text
17703 #: build/C/man3/rcmd.3:66
17704 #, no-wrap
17705 msgid ""
17706 "B<int rcmd_af(char **>I<ahost>B<, unsigned short >I<inport>B<, const char *>I<locuser>B<, >\n"
17707 "B<            const char *>I<remuser>B<, const char *>I<cmd>B<, int *>I<fd2p>B<,>\n"
17708 "B<            sa_family_t >I<af>B<);>\n"
17709 msgstr ""
17710 "B<int rcmd_af(char **>I<ahost>B<, unsigned short >I<inport>B<, const char *>I<locuser>B<, >\n"
17711 "B<            const char *>I<remuser>B<, const char *>I<cmd>B<, int *>I<fd2p>B<,>\n"
17712 "B<            sa_family_t >I<af>B<);>\n"
17713
17714 #. type: Plain text
17715 #: build/C/man3/rcmd.3:68
17716 #, no-wrap
17717 msgid "B<int rresvport_af(int *>I<port>B<, sa_family_t >I<af>B<);>\n"
17718 msgstr "B<int rresvport_af(int *>I<port>B<, sa_family_t >I<af>B<);>\n"
17719
17720 #. type: Plain text
17721 #: build/C/man3/rcmd.3:72
17722 #, no-wrap
17723 msgid ""
17724 "B<int iruserok_af(const void *>I<raddr>B<, int >I<superuser>B<, >\n"
17725 "B<                const char *>I<ruser>B<, const char *>I<luser>B<, sa_family_t >I<af>B<);>\n"
17726 msgstr ""
17727 "B<int iruserok_af(const void *>I<raddr>B<, int >I<superuser>B<, >\n"
17728 "B<                const char *>I<ruser>B<, const char *>I<luser>B<, sa_family_t >I<af>B<);>\n"
17729
17730 #. type: Plain text
17731 #: build/C/man3/rcmd.3:76
17732 #, no-wrap
17733 msgid ""
17734 "B<int ruserok_af(const char *>I<rhost>B<, int >I<superuser>B<, >\n"
17735 "B<               const char *>I<ruser>B<, const char *>I<luser>B<, sa_family_t >I<af>B<);>\n"
17736 msgstr ""
17737 "B<int ruserok_af(const char *>I<rhost>B<, int >I<superuser>B<, >\n"
17738 "B<               const char *>I<ruser>B<, const char *>I<luser>B<, sa_family_t >I<af>B<);>\n"
17739
17740 #. type: Plain text
17741 #: build/C/man3/rcmd.3:92
17742 msgid ""
17743 "B<rcmd>(), B<rcmd_af>(), B<rresvport>(), B<rresvport_af>(), B<iruserok>(), "
17744 "B<iruserok_af>(), B<ruserok>(), B<ruserok_af>(): _BSD_SOURCE"
17745 msgstr ""
17746 "B<rcmd>(), B<rcmd_af>(), B<rresvport>(), B<rresvport_af>(),\n"
17747 "B<iruserok>(), B<iruserok_af>(), B<ruserok>(), B<ruserok_af>():\n"
17748 "_BSD_SOURCE"
17749
17750 #. type: Plain text
17751 #: build/C/man3/rcmd.3:113
17752 msgid ""
17753 "The B<rcmd>()  function is used by the superuser to execute a command on a "
17754 "remote machine using an authentication scheme based on privileged port "
17755 "numbers.  The B<rresvport>()  function returns a descriptor to a socket with "
17756 "an address in the privileged port space.  The B<iruserok>()  and "
17757 "B<ruserok>()  functions are used by servers to authenticate clients "
17758 "requesting service with B<rcmd>().  All four functions are used by the "
17759 "B<rshd>(8)  server (among others)."
17760 msgstr ""
17761 "B<rcmd>() 関数は、スーパーユーザーがリモートマシンでコマンドを実行する\n"
17762 "ために 用いられる。このとき特権ポート番号をもとにした認証スキームが 用\n"
17763 "いられる。 B<rresvport>() 関数は、特権ポート空間のアドレスを持つソケッ\n"
17764 "トの ディスクリプターを返す。 B<iruserok>() 関数と B<ruserok>() 関数は、\n"
17765 "B<rcmd>() でサービス要求を行ったクライアントの認証を行うために サーバー\n"
17766 "が用いる関数である。 以上の 4 つの関数は、 B<rshd>(8) サーバーによって\n"
17767 "(他の関数とともに) 利用される。"
17768
17769 #. type: SS
17770 #: build/C/man3/rcmd.3:113
17771 #, no-wrap
17772 msgid "rcmd()"
17773 msgstr "rcmd()"
17774
17775 #. type: Plain text
17776 #: build/C/man3/rcmd.3:129
17777 msgid ""
17778 "The B<rcmd>()  function looks up the host I<*ahost> using "
17779 "B<gethostbyname>(3), returning -1 if the host does not exist.  Otherwise, "
17780 "I<*ahost> is set to the standard name of the host and a connection is "
17781 "established to a server residing at the well-known Internet port I<inport>."
17782 msgstr ""
17783 "B<rcmd>()  関数は B<gethostbyname>(3)  を用いて I<*ahost> の参照を行う。ホス"
17784 "トが存在しない場合は -1 を返す。 見つかった場合は I<*ahost> にホストの標準名 "
17785 "(standard name) をセットして、 予約されているインターネットポート I<inport> "
17786 "経由でサーバーへの接続を確立する。"
17787
17788 #. type: Plain text
17789 #: build/C/man3/rcmd.3:158
17790 msgid ""
17791 "If the connection succeeds, a socket in the Internet domain of type "
17792 "B<SOCK_STREAM> is returned to the caller, and given to the remote command as "
17793 "I<stdin> and I<stdout>.  If I<fd2p> is nonzero, then an auxiliary channel to "
17794 "a control process will be set up, and a descriptor for it will be placed in "
17795 "I<*fd2p>.  The control process will return diagnostic output from the "
17796 "command (unit 2) on this channel, and will also accept bytes on this channel "
17797 "as being UNIX signal numbers, to be forwarded to the process group of the "
17798 "command.  If I<fd2p> is 0, then the I<stderr> (unit 2 of the remote command) "
17799 "will be made the same as the I<stdout> and no provision is made for sending "
17800 "arbitrary signals to the remote process, although you may be able to get its "
17801 "attention by using out-of-band data."
17802 msgstr ""
17803 "接続に成功したら、インターネットドメインに存在するタイプ B<SOCK_STREAM> のソ"
17804 "ケットが呼び出しもとに返される。 このソケットの相手側はリモートコマンドの "
17805 "I<stdin> および I<stdout> に接続される。 I<fd2p> がゼロでない場合は、制御プロ"
17806 "セスへの接続がもう一つ用意され、 そのディスクリプターが I<*fd2p> にセットされ"
17807 "る。 制御プロセスはリモートコマンドからの標準エラー出力 (unit 2) を このチャ"
17808 "ンネルに返す。 また制御プロセスはこの接続から受け取ったバイトデータを UNIX シ"
17809 "グナルの番号として扱い、リモートコマンドのプロセス グループへとシグナルを送"
17810 "る。 I<fd2p> がゼロの場合は、 I<stderr> (リモートコマンドの unit 2) は "
17811 "I<stdout> と一緒にまとめられる。またこの場合はリモートプロセスへ 任意のシグナ"
17812 "ルを送ることはできなくなる。 ただし帯域外 (out-of-band) データを用いれば、 リ"
17813 "モートプロセスの注意を引くことはできるかもしれない。"
17814
17815 #. type: Plain text
17816 #: build/C/man3/rcmd.3:161
17817 msgid "The protocol is described in detail in B<rshd>(8)."
17818 msgstr "プロトコルの詳細は B<rshd>(8)  に記述されている。"
17819
17820 #. type: SS
17821 #: build/C/man3/rcmd.3:161
17822 #, no-wrap
17823 msgid "rresvport()"
17824 msgstr "rresvport()"
17825
17826 #. type: Plain text
17827 #: build/C/man3/rcmd.3:183
17828 msgid ""
17829 "The B<rresvport>()  function is used to obtain a socket with a privileged "
17830 "port bound to it.  This socket is suitable for use by B<rcmd>()  and several "
17831 "other functions.  Privileged ports are those in the range 0 to 1023.  Only a "
17832 "privileged process (B<CAP_NET_BIND_SERVICE>)  is allowed to bind to a "
17833 "privileged port.  In the glibc implementation, this function restricts its "
17834 "search to the ports from 512 to 1023.  The I<port> argument is value-result: "
17835 "the value it supplies to the call is used as the starting point for a "
17836 "circular search of the port range; on (successful) return, it contains the "
17837 "port number that was bound to."
17838 msgstr ""
17839 "B<rresvport>() 関数は特権ポートにバインドされたソケットを取得するために\n"
17840 "用いられる。 このソケットは B<rcmd>() などの関数での利用に適している。\n"
17841 "インターネットポートの特権ポートは、 0 から 1023 の範囲である。特権プロ\n"
17842 "セス (B<CAP_NET_BIND_SERVICE>) だけが特権ポートをバインドすることができ\n"
17843 "る。 glibc の実装では、この関数は特権ポートの検索範囲を 512 から 1023\n"
17844 "までの範囲に制限している。 I<port> 引き数は入出力両用で使用される。呼び\n"
17845 "出し時にこの引き数で渡された値は特権ポートを巡回検索する際の開始ポイン\n"
17846 "トとして使用され、(成功で) 返る際にはこの引き数にバインドされたポート\n"
17847 "番号が格納される。"
17848
17849 #. type: SS
17850 #: build/C/man3/rcmd.3:183
17851 #, no-wrap
17852 msgid "iruserok() and ruserok()"
17853 msgstr "iruserok() と ruserok()"
17854
17855 #. type: Plain text
17856 #: build/C/man3/rcmd.3:201
17857 msgid ""
17858 "The B<iruserok>()  and B<ruserok>()  functions take a remote host's IP "
17859 "address or name, respectively, two usernames and a flag indicating whether "
17860 "the local user's name is that of the superuser.  Then, if the user is I<not> "
17861 "the superuser, it checks the I</etc/hosts.equiv> file.  If that lookup is "
17862 "not done, or is unsuccessful, the I<.rhosts> in the local user's home "
17863 "directory is checked to see if the request for service is allowed."
17864 msgstr ""
17865 "B<iruserok>()  と B<ruserok>()  関数は、まず以下の引数を取る: リモートホスト "
17866 "(B<iruserok>()  は IP アドレスで、 B<ruserok>()  はホスト名で指定)、 2 つの"
17867 "ユーザー名、ローカルユーザーの名前が スーパーユーザーのものであるかどうかを示"
17868 "すフラグ、である。 もしユーザーがB<スーパーユーザーではない>場合は、これらの"
17869 "関数は I</etc/hosts.equiv> ファイルをチェックする。ファイルが見つからなかった"
17870 "り、 内容のチェックに失敗した場合には、 ローカルユーザーのホームディレクトリ"
17871 "にある I<.rhosts> ファイルをチェックして、サービス要求が許可されているかどう"
17872 "か調べる。"
17873
17874 #. type: Plain text
17875 #: build/C/man3/rcmd.3:217
17876 msgid ""
17877 "If this file does not exist, is not a regular file, is owned by anyone other "
17878 "than the user or the superuser, or is writable by anyone other than the "
17879 "owner, the check automatically fails.  Zero is returned if the machine name "
17880 "is listed in the I<hosts.equiv> file, or the host and remote username are "
17881 "found in the I<.rhosts> file; otherwise B<iruserok>()  and B<ruserok>()  "
17882 "return -1.  If the local domain (as obtained from B<gethostname>(2))  is the "
17883 "same as the remote domain, only the machine name need be specified."
17884 msgstr ""
17885 "このファイルが存在しなかったり、 通常ファイル (regular file) ではなかった"
17886 "り、 指定ユーザーまたはスーパーユーザー以外の所有だったり、 所有者以外から書"
17887 "き込み可能だったりした場合には、 このチェックは自動的に失敗する。 マシンの名"
17888 "前が I<hosts.equiv> にリストされていたり、 ホストとリモートユーザーの名前が "
17889 "I<.rhosts> ファイルに書かれていた場合には 0 が返される。 それ以外の場合に"
17890 "は、 B<iruserok>()  と B<ruserok>()  は -1 を返す。 (B<gethostname>(2)  に"
17891 "よって取得される) ローカルドメインがリモートのドメインと同じ場合は、 マシンの"
17892 "名前だけを指定すればよい。"
17893
17894 #. type: Plain text
17895 #: build/C/man3/rcmd.3:223
17896 msgid ""
17897 "If the IP address of the remote host is known, B<iruserok>()  should be used "
17898 "in preference to B<ruserok>(), as it does not require trusting the DNS "
17899 "server for the remote host's domain."
17900 msgstr ""
17901 "リモートホストの IP アドレスがわかっている場合は、 B<ruserok>()  よりも "
17902 "B<iruserok>()B<を用いる方が良いだろう。> B<ruserok>()  はリモートホストの所属"
17903 "するドメインの DNS サーバーが信頼できなくても 使用できるからである。"
17904
17905 #. type: SS
17906 #: build/C/man3/rcmd.3:223
17907 #, no-wrap
17908 msgid "*_af() variants"
17909 msgstr "*_af() 版"
17910
17911 #. type: Plain text
17912 #: build/C/man3/rcmd.3:239
17913 msgid ""
17914 "All of the functions described above work with IPv4 (B<AF_INET>)  sockets.  "
17915 "The \"_af\" variants take an extra argument that allows the socket address "
17916 "family to be specified.  For these functions, the I<af> argument can be "
17917 "specified as B<AF_INET> or B<AF_INET6>.  In addition, B<rcmd_af>()  supports "
17918 "the use of B<AF_UNSPEC>."
17919 msgstr ""
17920 "上記で述べた関数は全て IPv4 (B<AF_INET>) ソケットで動作する。\n"
17921 "\"_af\" 版では追加の引き数があり、この引き数でソケットアドレス\n"
17922 "ファミリーを指定できる。これらの関数では、 I<af> 引き数には \n"
17923 "B<AF_INET> か B<AF_INET6> が指定できる。\n"
17924 "B<rcmd_af>() では追加で B<AF_UNSPEC> も指定できる。"
17925
17926 #. type: Plain text
17927 #: build/C/man3/rcmd.3:245
17928 msgid ""
17929 "The B<rcmd>()  function returns a valid socket descriptor on success.  It "
17930 "returns -1 on error and prints a diagnostic message on the standard error."
17931 msgstr ""
17932 "B<rcmd>()  関数は成功すると有効なソケットディスクリプターを返す。 失敗すると "
17933 "-1 を返し、標準エラー出力に診断メッセージを 表示する。"
17934
17935 #. type: Plain text
17936 #: build/C/man3/rcmd.3:256
17937 msgid ""
17938 "The B<rresvport>()  function returns a valid, bound socket descriptor on "
17939 "success.  It returns -1 on error with the global value I<errno> set "
17940 "according to the reason for failure.  The error code B<EAGAIN> is overloaded "
17941 "to mean \"All network ports in use.\""
17942 msgstr ""
17943 "B<rresvport>()  関数は、成功するとバインドされた有効なソケットディスクリプ"
17944 "ターを返す。 失敗すると -1 を返し、グローバル変数 I<errno> をエラーの原因に対"
17945 "応する値にセットする。 エラーコード B<EAGAIN> は、この関数においては「すべて"
17946 "のネットワークポートが使用中」 という意味を表す。"
17947
17948 #. type: Plain text
17949 #: build/C/man3/rcmd.3:262
17950 msgid ""
17951 "For information on the return from B<ruserok>()  and B<iruserok>(), see "
17952 "above."
17953 msgstr "B<ruserok>() と B<iruserok>() の返り値については、上述の説明を参照。"
17954
17955 #. type: Plain text
17956 #: build/C/man3/rcmd.3:270
17957 msgid ""
17958 "The functions B<iruserok_af>(), B<rcmd_af>(), B<rresvport_af>(), and "
17959 "B<ruserok_af>()  functions are provide in glibc since version 2.2."
17960 msgstr ""
17961 "関数 B<iruserok_af>(), B<rcmd_af>(), B<rresvport_af>(),\n"
17962 "B<ruserok_af>() は glibc バージョン 2.2 以降で提供されている。"
17963
17964 #. type: Plain text
17965 #: build/C/man3/rcmd.3:278
17966 msgid ""
17967 "Not in POSIX.1-2001.  Present on the BSDs, Solaris, and many other systems.  "
17968 "These functions appeared in 4.2BSD.  The \"_af\" variants are more recent "
17969 "additions, and are not present on as wide a range of systems."
17970 msgstr ""
17971 "POSIX.1-2001 にはない。 BSD 系、Solaris や他の多くのシステムに存在する。\n"
17972 "これらの関数は 4.2BSD で登場した。 \"_af\" が付くバージョンはより最近に\n"
17973 "追加されたもので、あまり多くのシステムには存在しない。"
17974
17975 #.  Bug filed 25 Nov 2007:
17976 #.  http://sources.redhat.com/bugzilla/show_bug.cgi?id=5399
17977 #. type: Plain text
17978 #: build/C/man3/rcmd.3:285
17979 msgid ""
17980 "B<iruserok>()  and B<iruserok_af>()  are declared in glibc headers only "
17981 "since version 2.12."
17982 msgstr ""
17983 "B<iruserok>() と B<iruserok_af>() は glibc バージョン 2.12 以降のヘッダ\n"
17984 "でのみ宣言されている。"
17985
17986 #. type: Plain text
17987 #: build/C/man3/rcmd.3:293
17988 msgid ""
17989 "B<rlogin>(1), B<rsh>(1), B<intro>(2), B<rexec>(3), B<rexecd>(8), "
17990 "B<rlogind>(8), B<rshd>(8)"
17991 msgstr ""
17992 "B<rlogin>(1), B<rsh>(1), B<intro>(2), B<rexec>(3), B<rexecd>(8), "
17993 "B<rlogind>(8), B<rshd>(8)"
17994
17995 #. type: TH
17996 #: build/C/man5/resolv.conf.5:23
17997 #, no-wrap
17998 msgid "RESOLV.CONF"
17999 msgstr "RESOLV.CONF"
18000
18001 #. type: Plain text
18002 #: build/C/man5/resolv.conf.5:27
18003 msgid "resolv.conf - resolver configuration file"
18004 msgstr "resolv.conf - レゾルバ設定ファイル"
18005
18006 #. type: Plain text
18007 #: build/C/man5/resolv.conf.5:29
18008 msgid "B</etc/resolv.conf>"
18009 msgstr "B</etc/resolv.conf>"
18010
18011 #. type: Plain text
18012 #: build/C/man5/resolv.conf.5:41
18013 msgid ""
18014 "The I<resolver> is a set of routines in the C library that provide access to "
18015 "the Internet Domain Name System (DNS).  The resolver configuration file "
18016 "contains information that is read by the resolver routines the first time "
18017 "they are invoked by a process.  The file is designed to be human readable "
18018 "and contains a list of keywords with values that provide various types of "
18019 "resolver information.  The configuration file is considered a trusted source "
18020 "of DNS information (e.g., DNSSEC AD-bit information will be returned "
18021 "unmodified from this source)."
18022 msgstr ""
18023 "I<resolver> は、インターネットのドメインネームシステム (DNS) へのアクセスを提"
18024 "供する C ライブラリのルーチン群である。 レゾルバ設定ファイルには、レゾルバ"
18025 "ルーチンがプロセスによって最初に 起動されたときに読み込まれる情報が格納されて"
18026 "いる。 このファイルは人間に可読なように設計されている。 キーワードと値のリス"
18027 "トが含まれ、いろいろなタイプのレゾルバ情報を提供する。 設定ファイルは DNS 情"
18028 "報の信頼できる情報源とみなされる (例えば、このファイルからの DNSSEC AD ビット"
18029 "情報は変更されずにそのまま返される)。"
18030
18031 #. type: Plain text
18032 #: build/C/man5/resolv.conf.5:46
18033 msgid ""
18034 "If this file does not exist, only the name server on the local machine will "
18035 "be queried; the domain name is determined from the hostname and the domain "
18036 "search path is constructed from the domain name."
18037 msgstr ""
18038 "このファイルが存在しない場合、問い合わせはローカルマシン上の\n"
18039 "ネームサーバに対してのみ行われる。ドメイン名はホスト名から決定され、\n"
18040 "ドメインの検索パスはドメイン名から作成される。"
18041
18042 #. type: Plain text
18043 #: build/C/man5/resolv.conf.5:48
18044 msgid "The different configuration options are:"
18045 msgstr "この状態を変更するための設定オプションには、以下のようなものがある。"
18046
18047 #. type: TP
18048 #: build/C/man5/resolv.conf.5:48
18049 #, no-wrap
18050 msgid "B<nameserver> Name server IP address"
18051 msgstr "B<nameserver> ネームサーバの IP アドレス"
18052
18053 #. type: Plain text
18054 #: build/C/man5/resolv.conf.5:65
18055 msgid ""
18056 "Internet address of a name server that the resolver should query, either an "
18057 "IPv4 address (in dot notation), or an IPv6 address in colon (and possibly "
18058 "dot) notation as per RFC 2373.  Up to B<MAXNS> (currently 3, see "
18059 "I<E<lt>resolv.hE<gt>>) name servers may be listed, one per keyword.  If "
18060 "there are multiple servers, the resolver library queries them in the order "
18061 "listed.  If no B<nameserver> entries are present, the default is to use the "
18062 "name server on the local machine.  (The algorithm used is to try a name "
18063 "server, and if the query times out, try the next, until out of name servers, "
18064 "then repeat trying all the name servers until a maximum number of retries "
18065 "are made.)"
18066 msgstr ""
18067 "レゾルバが問い合わせをするネームサーバのインターネットアドレス。 アドレスに"
18068 "は IPv4 アドレスか IPv6 アドレスを指定する。 IPv4 アドレスはドット表記で、 "
18069 "IPv6 アドレスは RFC 2373 で定められたコロン表記 (おそらくドット表記も可) で指"
18070 "定する。 このキーワード 1 つごとに 1 台づつ、 B<MAXNS> 台 (現状では 3 台、"
18071 "I<E<lt>resolv.hE<gt>> を参照) までのネームサーバをリストできる。 複数のサーバ"
18072 "が指定された場合、レゾルバライブラリは リストされた順に問い合わせを行う。 "
18073 "B<nameserver> エントリがない場合、 デフォルトではローカルマシン上のネームサー"
18074 "バが使われる。 (ここで使われるアルゴリズムは以下のようなものである。 はじめに"
18075 "ネームサーバに問い合わせを試みる。 この問い合わせがタイムアウトになった場"
18076 "合、 次のネームサーバに問い合わせを試みる。 これをネームサーバがなくなるまで"
18077 "続ける。 それでも応答がない場合は、リトライ最大回数に達するまで 全てのネーム"
18078 "サーバに問い合わせを繰り返す。)"
18079
18080 #. type: TP
18081 #: build/C/man5/resolv.conf.5:65
18082 #, no-wrap
18083 msgid "B<domain> Local domain name."
18084 msgstr "B<domain> ローカルドメイン名"
18085
18086 #. type: Plain text
18087 #: build/C/man5/resolv.conf.5:76
18088 msgid ""
18089 "Most queries for names within this domain can use short names relative to "
18090 "the local domain.  If set to \\(aq.\\(aq, the root domain is considered.  If "
18091 "no B<domain> entry is present, the domain is determined from the local "
18092 "hostname returned by B<gethostname>(2); the domain part is taken to be "
18093 "everything after the first \\(aq.\\(aq.  Finally, if the hostname does not "
18094 "contain a domain part, the root domain is assumed."
18095 msgstr ""
18096 "このドメインにある名前の問い合わせのほとんどに、 このローカルドメインに対する"
18097 "短い名前を使用することができる。 \\(aq.\\(aq が設定された場合、 ルートドメイ"
18098 "ンが指定されたとみなされる。 B<domain> エントリがない場合、ドメイン名は "
18099 "B<gethostname>(2)  で返されるローカルホスト名から決定され、 最初の \\(aq."
18100 "\\(aq 以降の全ての部分がドメイン名とされる。 このホスト名にもドメイン部を含ん"
18101 "でいない場合、ルートドメインが仮定される。"
18102
18103 #. type: TP
18104 #: build/C/man5/resolv.conf.5:76
18105 #, no-wrap
18106 msgid "B<search> Search list for host-name lookup."
18107 msgstr "B<search> ホスト名ルックアップのための検索リスト"
18108
18109 #.  When having a resolv.conv with a line
18110 #.   search subdomain.domain.tld domain.tld
18111 #.  and doing a hostlookup, for example by
18112 #.   ping host.anothersubdomain
18113 #.  it sends dns-requests for
18114 #.   host.anothersubdomain.
18115 #.   host.anothersubdomain.subdomain.domain.tld.
18116 #.   host.anothersubdomain.domain.tld.
18117 #.  thus not only causing unnecessary traffic for the root-dns-servers
18118 #.  but broadcasting information to the outside and making man-in-the-middle
18119 #.  attacks possible.
18120 #. type: Plain text
18121 #: build/C/man5/resolv.conf.5:106
18122 msgid ""
18123 "The search list is normally determined from the local domain name; by "
18124 "default, it contains only the local domain name.  This may be changed by "
18125 "listing the desired domain search path following the I<search> keyword with "
18126 "spaces or tabs separating the names.  Resolver queries having fewer than "
18127 "I<ndots> dots (default is 1) in them will be attempted using each component "
18128 "of the search path in turn until a match is found.  For environments with "
18129 "multiple subdomains please read B<options ndots:>I<n> below to avoid man-in-"
18130 "the-middle attacks and unnecessary traffic for the root-dns-servers.  Note "
18131 "that this process may be slow and will generate a lot of network traffic if "
18132 "the servers for the listed domains are not local, and that queries will time "
18133 "out if no server is available for one of the domains."
18134 msgstr ""
18135 "検索リストは通常ローカルドメイン名から決定される。 デフォルトでは、検索リスト"
18136 "はローカルドメイン名のみである。 これを変更するには、I<search> キーワードの後"
18137 "に 希望するドメイン検索パスをスペースまたはタブで区切ってリストすればよい。 "
18138 "ドットの数が I<ndots> (デフォルトでは 1) より少ないレゾルバの問い合わせは、 "
18139 "一致するものが見つかるまで検索パスの各要素を順に使って試す。 複数のサブドメイ"
18140 "ンを持つ環境では、 第三者による攻撃 (man-in-the-middle attack) と ルート DNS "
18141 "サーバへの不必要なトラフィックを避けるために、 以下の B<options ndots:>I<n> "
18142 "を読んでほしい。 このプロセスは遅く、リストされたドメインがローカルのものでな"
18143 "い場合、 多大なネットワークトラフィックを発生させることに注意すること。 さら"
18144 "に、これらのドメインのいずれかひとつにでも適切なサーバがない場合、 問い合わせ"
18145 "がタイムアウトになる点にも注意すること。"
18146
18147 #. type: Plain text
18148 #: build/C/man5/resolv.conf.5:109
18149 msgid ""
18150 "The search list is currently limited to six domains with a total of 256 "
18151 "characters."
18152 msgstr "現状では、検索リストは 6 ドメイン・計 256 文字に制限されている。"
18153
18154 #. type: TP
18155 #: build/C/man5/resolv.conf.5:109
18156 #, no-wrap
18157 msgid "B<sortlist>"
18158 msgstr "B<sortlist>"
18159
18160 #. type: Plain text
18161 #: build/C/man5/resolv.conf.5:122
18162 msgid ""
18163 "This option allows addresses returned by B<gethostbyname>(3)  to be sorted.  "
18164 "A sortlist is specified by IP-address-netmask pairs.  The netmask is "
18165 "optional and defaults to the natural netmask of the net.  The IP address and "
18166 "optional network pairs are separated by slashes.  Up to 10 pairs may be "
18167 "specified.  Here is an example:"
18168 msgstr ""
18169 "このオプションを使うと、 B<gethostbyname>(3)  で返されるアドレスをソートさせ"
18170 "ることができる。 sortlist は IP アドレスとネットマスクのペアで指定される。 "
18171 "ネットマスクは省略可能であり、 デフォルトではネットに対するデフォルトのネット"
18172 "マスクである。 IP アドレスとオプションのネットマスクのペアはスラッシュで区切"
18173 "る。 最大 10 組のペアを指定できる。 以下に例を示す。"
18174
18175 #. type: Plain text
18176 #: build/C/man5/resolv.conf.5:125
18177 msgid "sortlist 130.155.160.0/255.255.240.0 130.155.0.0"
18178 msgstr "sortlist 130.155.160.0/255.255.240.0 130.155.0.0"
18179
18180 #. type: TP
18181 #: build/C/man5/resolv.conf.5:127
18182 #, no-wrap
18183 msgid "B<options>"
18184 msgstr "B<options>"
18185
18186 #. type: Plain text
18187 #: build/C/man5/resolv.conf.5:131
18188 msgid ""
18189 "Options allows certain internal resolver variables to be modified.  The "
18190 "syntax is"
18191 msgstr ""
18192 "options により、レゾルバの内部変数を変更することができる。 書式は以下の通りで"
18193 "ある。"
18194
18195 #. type: Plain text
18196 #: build/C/man5/resolv.conf.5:134
18197 msgid "B<options> I<option> I<...>"
18198 msgstr "B<options> I<option> I<...>"
18199
18200 #. type: Plain text
18201 #: build/C/man5/resolv.conf.5:136
18202 msgid "where I<option> is one of the following:"
18203 msgstr "ここで I<option> は次のうちのいずれかである。"
18204
18205 #. type: TP
18206 #: build/C/man5/resolv.conf.5:136
18207 #, no-wrap
18208 msgid "B<debug>"
18209 msgstr "B<debug>"
18210
18211 #.  Since glibc 2.2?
18212 #. type: Plain text
18213 #: build/C/man5/resolv.conf.5:145
18214 msgid ""
18215 "sets B<RES_DEBUG> in I<_res.options> (effective only if glibc was built with "
18216 "debug support; see B<resolver>(3))."
18217 msgstr ""
18218 "B<RES_DEBUG> を I<_res.options> にセットする (glibc がデバッグを有効にしてコ"
18219 "ンパイルされている場合にのみ有効である; B<resolver>(3) を参照)。"
18220
18221 #. type: TP
18222 #: build/C/man5/resolv.conf.5:145
18223 #, no-wrap
18224 msgid "B<ndots:>I<n>"
18225 msgstr "B<ndots:>I<n>"
18226
18227 #.  Since glibc 2.2
18228 #. type: Plain text
18229 #: build/C/man5/resolv.conf.5:159
18230 msgid ""
18231 "sets a threshold for the number of dots which must appear in a name given to "
18232 "B<res_query>(3)  (see B<resolver>(3))  before an I<initial absolute query> "
18233 "will be made.  The default for I<n> is 1, meaning that if there are any dots "
18234 "in a name, the name will be tried first as an absolute name before any "
18235 "I<search list> elements are appended to it.  The value for this option is "
18236 "silently capped to 15."
18237 msgstr ""
18238 "「I<最初の完全な名前での問い合わせ>が実行される前に、 B<res_query>(3)  "
18239 "(B<resolver>(3)  を参照) に与えられる名前に含まれているべきドットの数の閾値」"
18240 "を設定する。 I<n> のデフォルトは 1 である。 これは、名前にドットがある場合、"
18241 "I<search list> の要素が付加される前に、 その名前が完全な名前として最初に試さ"
18242 "れるということを意味している。 このオプションの値の上限は 15 であり、黙ってこ"
18243 "の値まで切り詰められる。"
18244
18245 #. type: TP
18246 #: build/C/man5/resolv.conf.5:159
18247 #, no-wrap
18248 msgid "B<timeout:>I<n>"
18249 msgstr "B<timeout:>I<n>"
18250
18251 #.  Since glibc 2.2
18252 #. type: Plain text
18253 #: build/C/man5/resolv.conf.5:170
18254 msgid ""
18255 "sets the amount of time the resolver will wait for a response from a remote "
18256 "name server before retrying the query via a different name server.  Measured "
18257 "in seconds, the default is B<RES_TIMEOUT> (currently 5, see I<E<lt>resolv."
18258 "hE<gt>>).  The value for this option is silently capped to 30."
18259 msgstr ""
18260 "「レゾルバが他のネームサーバで問い合わせをリトライする前に、 リモートネーム"
18261 "サーバからの応答を待つ時間」を設定する。 単位は秒で、デフォルトは "
18262 "B<RES_TIMEOUT> である (現状では 5 秒、I<E<lt>resolv.hE<gt>> を参照)。 このオ"
18263 "プションの値の上限は 30 であり、黙ってこの値まで切り詰められる。"
18264
18265 #. type: TP
18266 #: build/C/man5/resolv.conf.5:170
18267 #, no-wrap
18268 msgid "B<attempts:>I<n>"
18269 msgstr "B<attempts:>I<n>"
18270
18271 #. type: Plain text
18272 #: build/C/man5/resolv.conf.5:179
18273 msgid ""
18274 "sets the number of times the resolver will send a query to its name servers "
18275 "before giving up and returning an error to the calling application.  The "
18276 "default is B<RES_DFLRETRY> (currently 2, see I<E<lt>resolv.hE<gt>>).  The "
18277 "value for this option is silently capped to 5."
18278 msgstr ""
18279 "「レゾルバが諦めて呼び出し元のアプリケーションにエラーを返すまでに、 ネーム"
18280 "サーバに問い合わせを行う回数」を設定する。 デフォルトは B<RES_DFLRETRY> 回で"
18281 "ある (現状では 2 回、I<E<lt>resolv.hE<gt>> を参照)。 このオプションの値の上限"
18282 "は 5 であり、黙ってこの値まで切り詰められる。"
18283
18284 #. type: TP
18285 #: build/C/man5/resolv.conf.5:179
18286 #, no-wrap
18287 msgid "B<rotate>"
18288 msgstr "B<rotate>"
18289
18290 #.  Since glibc 2.2
18291 #. type: Plain text
18292 #: build/C/man5/resolv.conf.5:189
18293 msgid ""
18294 "sets B<RES_ROTATE> in I<_res.options>, which causes round-robin selection of "
18295 "name servers from among those listed.  This has the effect of spreading the "
18296 "query load among all listed servers, rather than having all clients try the "
18297 "first listed server first every time."
18298 msgstr ""
18299 "I<_res.options> に RES_ROTATE を設定する。リストされているネームサーバから選"
18300 "ぶときに、ラウンドロビン (round-robin) 選択を行わせる。リストされている全ての"
18301 "サーバで問い合わせの負荷を分散する効果があり、最初にリストされたサーバに全て"
18302 "のクライアントが毎回最初に問い合わせを行うわけではなくなる。"
18303
18304 #. type: TP
18305 #: build/C/man5/resolv.conf.5:189
18306 #, no-wrap
18307 msgid "B<no-check-names>"
18308 msgstr "B<no-check-names>"
18309
18310 #.  since glibc 2.2
18311 #. type: Plain text
18312 #: build/C/man5/resolv.conf.5:199
18313 msgid ""
18314 "sets B<RES_NOCHECKNAME> in I<_res.options>, which disables the modern BIND "
18315 "checking of incoming hostnames and mail names for invalid characters such as "
18316 "underscore (_), non-ASCII, or control characters."
18317 msgstr ""
18318 "I<_res.options> に B<RES_NOCHECKNAME> を設定する。 入ってくるホスト名とメール"
18319 "アドレスに、 アンダースコア (_)・ASCII 以外の文字・制御文字といった 不正な文"
18320 "字が含まれていないかを調べる 最近の BIND のチェックを無効にする。"
18321
18322 #. type: TP
18323 #: build/C/man5/resolv.conf.5:199
18324 #, no-wrap
18325 msgid "B<inet6>"
18326 msgstr "B<inet6>"
18327
18328 #.  Since glibc 2.2
18329 #. type: Plain text
18330 #: build/C/man5/resolv.conf.5:210
18331 msgid ""
18332 "sets B<RES_USE_INET6> in I<_res.options>.  This has the effect of trying a "
18333 "AAAA query before an A query inside the B<gethostbyname>(3)  function, and "
18334 "of mapping IPv4 responses in IPv6 \"tunneled form\" if no AAAA records are "
18335 "found but an A record set exists."
18336 msgstr ""
18337 "I<_res.options> に B<RES_USE_INET6> を設定する。このオプションが設定される"
18338 "と、 B<gethostbyname>(3)  関数の内部で A レコードの問い合わせを行う前に AAAA "
18339 "レコードの問い合わせを行うようになる。 また、AAAA レコードは見つからないが A "
18340 "レコードセットが存在する場合に、 IPv4 の応答を IPv6「トンネル形式」にマップす"
18341 "るようになる。"
18342
18343 #. type: TP
18344 #: build/C/man5/resolv.conf.5:210
18345 #, no-wrap
18346 msgid "B<ip6-bytestring> (since glibc 2.3.4)"
18347 msgstr "B<ip6-bytestring> (glibc 2.3.4 以降)"
18348
18349 #. type: Plain text
18350 #: build/C/man5/resolv.conf.5:219
18351 msgid ""
18352 "sets B<RES_USE_BSTRING> in I<_res.options>.  This causes reverse IPv6 "
18353 "lookups to be made using the bit-label format described in RFC\\ 2673; if "
18354 "this option is not set, then nibble format is used."
18355 msgstr ""
18356 "I<_res.options> に B<RES_USE_BSTRING> を設定する。このオプションが設定される"
18357 "と、IPv6 アドレスの逆引きで RFC\\ 2673 で規定された bit-label 形式が使用され"
18358 "るようになる。 このオプションが設定されない場合、nibble 形式が使用される。"
18359
18360 #. type: TP
18361 #: build/C/man5/resolv.conf.5:219
18362 #, no-wrap
18363 msgid "B<ip6-dotint>/B<no-ip6-dotint> (since glibc 2.3.4)"
18364 msgstr "B<ip6-dotint>/B<no-ip6-dotint> (glibc 2.3.4 以降)"
18365
18366 #. type: Plain text
18367 #: build/C/man5/resolv.conf.5:236
18368 msgid ""
18369 "Clear/set B<RES_NOIP6DOTINT> in I<_res.options>.  When this option is clear "
18370 "(B<ip6-dotint>), reverse IPv6 lookups are made in the (deprecated)  I<ip6."
18371 "int> zone; when this option is set (B<no-ip6-dotint>), reverse IPv6 lookups "
18372 "are made in the I<ip6.arpa> zone by default.  This option is set by default."
18373 msgstr ""
18374 "I<_res.options> への B<RES_NOIP6DOTINT> のセット/クリアを行う。 このオプショ"
18375 "ンがクリアされると (B<ip6-dotint>)、 IPv6 アドレスの逆引きが (非推奨の)  "
18376 "I<ip6.int> ゾーンで行われるようになり、 このオプションがセットされると (B<no-"
18377 "ip6-dotint>)、 IPv6 アドレスの逆引きがデフォルトの I<ip6.arpa> ゾーンで行われ"
18378 "るようになる。 このオプションはデフォルトでセットされる。"
18379
18380 #. type: TP
18381 #: build/C/man5/resolv.conf.5:236
18382 #, no-wrap
18383 msgid "B<edns0> (since glibc 2.6)"
18384 msgstr "B<edns0> (glibc 2.6 以降)"
18385
18386 #. type: Plain text
18387 #: build/C/man5/resolv.conf.5:243
18388 msgid ""
18389 "sets B<RES_USE_EDNSO> in I<_res.options>.  This enables support for the DNS "
18390 "extensions described in RFC\\ 2671."
18391 msgstr ""
18392 "I<_res.options> に B<RES_USE_EDNSO> をセットする。これにより、RFC\\ 2671 で規"
18393 "定されている DNS 拡張のサポートが有効になる。"
18394
18395 #. type: TP
18396 #: build/C/man5/resolv.conf.5:243
18397 #, no-wrap
18398 msgid "B<single-request> (since glibc 2.10)"
18399 msgstr "B<single-request> (glibc 2.10 以降)"
18400
18401 #. type: Plain text
18402 #: build/C/man5/resolv.conf.5:256
18403 msgid ""
18404 "sets B<RES_SNGLKUP> in I<_res.options>.  By default, glibc performs IPv4 and "
18405 "IPv6 lookups in parallel since version 2.9.  Some appliance DNS servers "
18406 "cannot handle these queries properly and make the requests time out.  This "
18407 "option disables the behavior and makes glibc perform the IPv6 and IPv4 "
18408 "requests sequentially (at the cost of some slowdown of the resolving "
18409 "process)."
18410 msgstr ""
18411 "I<_res.options> に B<RES_SNGLKUP> をセットする。\n"
18412 "glibc バージョン 2.9 以降では、 glibc はデフォルトでは\n"
18413 "IPv4 と IPv6 の検索を並行して実行する。\n"
18414 "アプライアンス DNS サーバの中には、このような問い合わせを\n"
18415 "適切に処理できず、検索要求がタイムアウトになってしまう。\n"
18416 "このオプションをセットすると、このデフォルトの動作が無効になり、\n"
18417 "glibc は IPv6 と IPv4 の検索を順番に実行するようになる\n"
18418 "(名前解決処理が若干遅くなるというデメリットがある)。"
18419
18420 #. type: TP
18421 #: build/C/man5/resolv.conf.5:256
18422 #, no-wrap
18423 msgid "B<single-request-reopen> (since glibc 2.9)"
18424 msgstr "B<single-request-reopen> (glibc 2.9 以降)"
18425
18426 #. type: Plain text
18427 #: build/C/man5/resolv.conf.5:264
18428 msgid ""
18429 "The resolver uses the same socket for the A and AAAA requests.  Some "
18430 "hardware mistakenly sends back only one reply.  When that happens the client "
18431 "system will sit and wait for the second reply.  Turning this option on "
18432 "changes this behavior so that if two requests from the same port are not "
18433 "handled correctly it will close the socket and open a new one before sending "
18434 "the second request."
18435 msgstr ""
18436 "リゾルバは同じソケットを使って A レコードと AAAA レコードの検索要求を行う。 "
18437 "いくつかのハードウェアは実装が間違っており、応答を一つしか返さない。 この状況"
18438 "になると、クライアントシステムは 2 番目の応答を待ち続けてしまう。 このオプ"
18439 "ションを有効にすると、この動作が変更され、 同じポートからの 2 つの検索要求が"
18440 "正しく処理されなかった場合、 2 番目の検索要求を送信する前にソケットをクローズ"
18441 "し 新しいソケットをオープンするようになる。"
18442
18443 #. type: TP
18444 #: build/C/man5/resolv.conf.5:264
18445 #, no-wrap
18446 msgid "B<no-tld-query> (since glibc 2.14)"
18447 msgstr "B<no-tld-query> (glibc 2.14 以降)"
18448
18449 #. type: Plain text
18450 #: build/C/man5/resolv.conf.5:275
18451 msgid ""
18452 "sets RES_NOTLDQUERY in I<_res.options>.  This option causes B<res_nsearch()> "
18453 "to not attempt to resolve an unqualified name as if it were a top level "
18454 "domain (TLD).  This option can cause problems if the site has ``localhost'' "
18455 "as a TLD rather than having localhost on one or more elements of the search "
18456 "list.  This option has no effect if neither RES_DEFNAMES or RES_DNSRCH is "
18457 "set."
18458 msgstr ""
18459 "RES_NOTLDQUERY を I<_res.options> にセットする。 このオプションを設定する"
18460 "と、 B<res_nsearch>() が完全なドメイン名ではない名前のトップレベルドメイン "
18461 "(TLD) としての検索を行わなくなる。 これにより、localhost に検索リストの要素を"
18462 "つけるのではなく、``localhost'' を TLD として設定しているようなサイトでは問題"
18463 "が起こる可能性がある。 RES_DEFNAMES も RES_DNSRCH もセットされていない場合に"
18464 "は、このオプションは効果はない。"
18465
18466 #. type: Plain text
18467 #: build/C/man5/resolv.conf.5:280
18468 msgid ""
18469 "The I<domain> and I<search> keywords are mutually exclusive.  If more than "
18470 "one instance of these keywords is present, the last instance wins."
18471 msgstr ""
18472 "I<domain> と I<search> キーワードは、互いに排他的である。 これらのキーワード"
18473 "が 2 つ以上記述されている場合、 最後に記述されているものが有効になる。"
18474
18475 #. type: Plain text
18476 #: build/C/man5/resolv.conf.5:285
18477 msgid ""
18478 "The I<search> keyword of a system's I<resolv.conf> file can be overridden on "
18479 "a per-process basis by setting the environment variable B<LOCALDOMAIN> to a "
18480 "space-separated list of search domains."
18481 msgstr ""
18482 "システムの I<resolv.conf> ファイルにある I<search> キーワードは、 スペースで"
18483 "区切った検索ドメインのリストを 環境変数 B<LOCALDOMAIN> に設定することにより、"
18484 "各プロセス毎に上書きすることができる。"
18485
18486 #. type: Plain text
18487 #: build/C/man5/resolv.conf.5:291
18488 msgid ""
18489 "The I<options> keyword of a system's I<resolv.conf> file can be amended on a "
18490 "per-process basis by setting the environment variable B<RES_OPTIONS> to a "
18491 "space-separated list of resolver options as explained above under B<options>."
18492 msgstr ""
18493 "システムの I<resolv.conf> ファイルにある I<options> キーワードは、 上の "
18494 "B<options> セクションで説明したように、 スペースで区切ったレゾルバオプション"
18495 "のリストを 環境変数 B<RES_OPTIONS> に設定することにより、各プロセス毎に修正す"
18496 "ることができる。"
18497
18498 #. type: Plain text
18499 #: build/C/man5/resolv.conf.5:295
18500 msgid ""
18501 "The keyword and value must appear on a single line, and the keyword (e.g., "
18502 "B<nameserver>) must start the line.  The value follows the keyword, "
18503 "separated by white space."
18504 msgstr ""
18505 "キーワードと値は同じ行に書かなければならない。 また、(B<nameserver> のよう"
18506 "な) キーワードが行の先頭になければならない。 値はキーワードの後にスペースで区"
18507 "切って続ける。"
18508
18509 #. type: Plain text
18510 #: build/C/man5/resolv.conf.5:298
18511 msgid ""
18512 "Lines that contain a semicolon (;) or hash character (#)  in the first "
18513 "column are treated as comments."
18514 msgstr "セミコロン (;) かハッシュ文字 (#) で始まる行はコメントとして扱われる。"
18515
18516 #. type: Plain text
18517 #: build/C/man5/resolv.conf.5:301
18518 msgid "I</etc/resolv.conf>, I<E<lt>resolv.hE<gt>>"
18519 msgstr "I</etc/resolv.conf>, I<E<lt>resolv.hE<gt>>"
18520
18521 #. type: Plain text
18522 #: build/C/man5/resolv.conf.5:306
18523 msgid "B<gethostbyname>(3), B<resolver>(3), B<hostname>(7), B<named>(8)"
18524 msgstr "B<gethostbyname>(3), B<resolver>(3), B<hostname>(7), B<named>(8)"
18525
18526 #. type: Plain text
18527 #: build/C/man5/resolv.conf.5:308
18528 msgid "Name Server Operations Guide for BIND"
18529 msgstr "BIND のネームサーバオペレーションガイド"
18530
18531 #. type: TH
18532 #: build/C/man3/resolver.3:32
18533 #, no-wrap
18534 msgid "RESOLVER"
18535 msgstr "RESOLVER"
18536
18537 #. type: Plain text
18538 #: build/C/man3/resolver.3:36
18539 msgid ""
18540 "res_init, res_query, res_search, res_querydomain, res_mkquery, res_send, "
18541 "dn_comp, dn_expand - resolver routines"
18542 msgstr ""
18543 "res_init, res_query, res_search, res_querydomain, res_mkquery, res_send, "
18544 "dn_comp, dn_expand - レゾルバ・ルーチン"
18545
18546 #. type: Plain text
18547 #: build/C/man3/resolver.3:42
18548 #, no-wrap
18549 msgid ""
18550 "B<#include E<lt>netinet/in.hE<gt>>\n"
18551 "B<#include E<lt>arpa/nameser.hE<gt>>\n"
18552 "B<#include E<lt>resolv.hE<gt>>\n"
18553 "B<extern struct __res_state _res;>\n"
18554 msgstr ""
18555 "B<#include E<lt>netinet/in.hE<gt>>\n"
18556 "B<#include E<lt>arpa/nameser.hE<gt>>\n"
18557 "B<#include E<lt>resolv.hE<gt>>\n"
18558 "B<extern struct __res_state _res;>\n"
18559
18560 #. type: Plain text
18561 #: build/C/man3/resolver.3:44
18562 #, no-wrap
18563 msgid "B<int res_init(void);>\n"
18564 msgstr "B<int res_init(void);>\n"
18565
18566 #. type: Plain text
18567 #: build/C/man3/resolver.3:46
18568 #, no-wrap
18569 msgid "B<int res_query(const char *>I<dname>B<, int >I<class>B<, int >I<type>B<,>\n"
18570 msgstr "B<int res_query(const char *>I<dname>B<, int >I<class>B<, int >I<type>B<,>\n"
18571
18572 #. type: Plain text
18573 #: build/C/man3/resolver.3:48 build/C/man3/resolver.3:53
18574 #: build/C/man3/resolver.3:70
18575 #, no-wrap
18576 msgid "B<unsigned char *>I<answer>B<, int >I<anslen>B<);>\n"
18577 msgstr "B<unsigned char *>I<answer>B<, int >I<anslen>B<);>\n"
18578
18579 #. type: Plain text
18580 #: build/C/man3/resolver.3:51
18581 #, no-wrap
18582 msgid "B<int res_search(const char *>I<dname>B<, int >I<class>B<, int >I<type>B<,>\n"
18583 msgstr "B<int res_search(const char *>I<dname>B<, int >I<class>B<, int >I<type>B<,>\n"
18584
18585 #. type: Plain text
18586 #: build/C/man3/resolver.3:56
18587 #, no-wrap
18588 msgid "B<int res_querydomain(const char *>I<name>B<, const char *>I<domain>B<,>\n"
18589 msgstr "B<int res_querydomain(const char *>I<name>B<, const char *>I<domain>B<,>\n"
18590
18591 #. type: Plain text
18592 #: build/C/man3/resolver.3:59
18593 #, no-wrap
18594 msgid ""
18595 "B<int >I<class>B<, int >I<type>B<, unsigned char *>I<answer>B<,>\n"
18596 "B<int >I<anslen>B<);>\n"
18597 msgstr ""
18598 "B<int >I<class>B<, int >I<type>B<, unsigned char *>I<answer>B<,>\n"
18599 "B<int >I<anslen>B<);>\n"
18600
18601 #. type: Plain text
18602 #: build/C/man3/resolver.3:62
18603 #, no-wrap
18604 msgid "B<int res_mkquery(int >I<op>B<, const char *>I<dname>B<, int >I<class>B<,>\n"
18605 msgstr "B<int res_mkquery(int >I<op>B<, const char *>I<dname>B<, int >I<class>B<,>\n"
18606
18607 #. type: Plain text
18608 #: build/C/man3/resolver.3:65
18609 #, no-wrap
18610 msgid ""
18611 "B<int >I<type>B<, const unsigned char *>I<data>B<, int >I<datalen>B<,>\n"
18612 "B<const unsigned char *>I<newrr>B<, unsigned char *>I<buf>B<, int >I<buflen>B<);>\n"
18613 msgstr ""
18614 "B<int >I<type>B<, const unsigned char *>I<data>B<, int >I<datalen>B<,>\n"
18615 "B<const unsigned char *>I<newrr>B<, unsigned char *>I<buf>B<, int >I<buflen>B<);>\n"
18616
18617 #. type: Plain text
18618 #: build/C/man3/resolver.3:68
18619 #, no-wrap
18620 msgid "B<int res_send(const unsigned char *>I<msg>B<, int >I<msglen>B<,>\n"
18621 msgstr "B<int res_send(const unsigned char *>I<msg>B<, int >I<msglen>B<,>\n"
18622
18623 #. type: Plain text
18624 #: build/C/man3/resolver.3:73
18625 #, no-wrap
18626 msgid "B<int dn_comp(const char *>I<exp_dn>B<, unsigned char *>I<comp_dn>B<,>\n"
18627 msgstr "B<int dn_comp(const char *>I<exp_dn>B<, unsigned char *>I<comp_dn>B<,>\n"
18628
18629 #. type: Plain text
18630 #: build/C/man3/resolver.3:75
18631 #, no-wrap
18632 msgid "B<int >I<length>B<, unsigned char **>I<dnptrs>B<, unsigned char **>I<lastdnptr>B<);>\n"
18633 msgstr "B<int >I<length>B<, unsigned char **>I<dnptrs>B<, unsigned char **>I<lastdnptr>B<);>\n"
18634
18635 #. type: Plain text
18636 #: build/C/man3/resolver.3:78
18637 #, no-wrap
18638 msgid "B<int dn_expand(const unsigned char *>I<msg>B<, const unsigned char *>I<eomorig>B<,>\n"
18639 msgstr "B<int dn_expand(const unsigned char *>I<msg>B<, const unsigned char *>I<eomorig>B<,>\n"
18640
18641 #. type: Plain text
18642 #: build/C/man3/resolver.3:81
18643 #, no-wrap
18644 msgid ""
18645 "B<const unsigned char *>I<comp_dn>B<, char *>I<exp_dn>B<,>\n"
18646 "B<int >I<length>B<);>\n"
18647 msgstr ""
18648 "B<const unsigned char *>I<comp_dn>B<, char *>I<exp_dn>B<,>\n"
18649 "B<int >I<length>B<);>\n"
18650
18651 #. type: Plain text
18652 #: build/C/man3/resolver.3:88
18653 msgid ""
18654 "These functions make queries to and interpret the responses from Internet "
18655 "domain name servers."
18656 msgstr ""
18657 "これらの関数はインターネットのドメインネームサーバーに問い合わせ、 その応答を"
18658 "解釈する。"
18659
18660 #. type: Plain text
18661 #: build/C/man3/resolver.3:102
18662 msgid ""
18663 "The B<res_init>()  function reads the configuration files (see B<resolv."
18664 "conf>(5))  to get the default domain name, search order and name server "
18665 "address(es).  If no server is given, the local host is tried.  If no domain "
18666 "is given, that associated with the local host is used.  It can be overridden "
18667 "with the environment variable B<LOCALDOMAIN>.  B<res_init>()  is normally "
18668 "executed by the first call to one of the other functions."
18669 msgstr ""
18670 "B<res_init>()  関数は、デフォルトのドメイン名、検索順、ネームサーバー アドレ"
18671 "スを得るために設定ファイル (B<resolv.conf>(5) 参照) を読む。 もしサーバーが示"
18672 "されていなければローカルホストを試す。 ドメインが示されていなければローカルホ"
18673 "ストに付けられたドメインを用いる。 環境変数 B<LOCALDOMAIN> でオーバーライドで"
18674 "きる。 B<res_init>()  は、後述する関数のどれかが最初に呼び出された時、その関"
18675 "数 から実行される。"
18676
18677 #. type: Plain text
18678 #: build/C/man3/resolver.3:110
18679 msgid ""
18680 "The B<res_query>()  function queries the name server for the fully qualified "
18681 "domain name I<name> of specified I<type> and I<class>.  The reply is left in "
18682 "the buffer I<answer> of length I<anslen> supplied by the caller."
18683 msgstr ""
18684 "B<res_query>()  関数は、指定された I<type> と I<class> の 完全修飾ドメイン名 "
18685 "(FQDN) I<name> を、ネームサーバーへ問い合わせる。 応答は、呼び出した側によっ"
18686 "て用意される長さ I<anslen> の I<answer> バッファーに残される。"
18687
18688 #. type: Plain text
18689 #: build/C/man3/resolver.3:123
18690 msgid ""
18691 "The B<res_search>()  function makes a query and waits for the response like "
18692 "B<res_query>(), but in addition implements the default and search rules "
18693 "controlled by B<RES_DEFNAMES> and B<RES_DNSRCH> (see description of I<_res> "
18694 "options below)."
18695 msgstr ""
18696 "B<res_search>()  関数は、問い合わせを行い B<res_query>()  同様その応答を 待つ"
18697 "が、さらにデフォルトを実装しており B<RES_DEFNAMES> と B<RES_DNSRCH> によって"
18698 "規定される検索ルールを適用する。 (下記 I<_res> オプションの説明を参照)"
18699
18700 #. type: Plain text
18701 #: build/C/man3/resolver.3:129
18702 msgid ""
18703 "The B<res_querydomain>()  function makes a query using B<res_query>()  on "
18704 "the concatenation of I<name> and I<domain>."
18705 msgstr ""
18706 "B<res_querydomain>()  関数は I<name> と I<domain> の結合に B<res_query>()  を"
18707 "用いて問い合わせを行う。"
18708
18709 #. type: Plain text
18710 #: build/C/man3/resolver.3:132
18711 msgid ""
18712 "The following functions are lower-level routines used by B<res_query>()."
18713 msgstr "次の関数は、 B<res_query>()  で使われる下位ルーチンである。"
18714
18715 #. type: Plain text
18716 #: build/C/man3/resolver.3:143
18717 msgid ""
18718 "The B<res_mkquery>()  function constructs a query message in I<buf> of "
18719 "length I<buflen> for the domain name I<dname>.  The query type I<op> is "
18720 "usually B<QUERY>, but can be any of the types defined in I<E<lt>arpa/nameser."
18721 "hE<gt>>.  I<newrr> is currently unused."
18722 msgstr ""
18723 "B<res_mkquery>()  関数は、ドメイン名 I<dname> の為に、長さ I<buflen> の "
18724 "I<buf> に問い合わせるメッセージを作成する。 問い合わせの型 I<op> は通常 "
18725 "B<QUERY> だが、 I<E<lt>arpa/nameser.hE<gt>> で定義された型のどれでも良い。 "
18726 "I<newrr> は現在使用されていない。"
18727
18728 #. type: Plain text
18729 #: build/C/man3/resolver.3:153
18730 msgid ""
18731 "The B<res_send>()  function sends a preformatted query given in I<msg> of "
18732 "length I<msglen> and returns the answer in I<answer> which is of length "
18733 "I<anslen>.  It will call B<res_init>(), if it has not already been called."
18734 msgstr ""
18735 "B<res_send>()  関数は、長さ I<msglen> の I<msg> に決められた書式 で問い合わ"
18736 "せ、I<answer> に長さ I<anslen> の回答を返す。 まだ呼び出されていなければ "
18737 "B<res_init>()  を呼び出す。"
18738
18739 #. type: Plain text
18740 #: build/C/man3/resolver.3:166
18741 msgid ""
18742 "The B<dn_comp>()  function compresses the domain name I<exp_dn> and stores "
18743 "it in the buffer I<comp_dn> of length I<length>.  The compression uses an "
18744 "array of pointers I<dnptrs> to previously compressed names in the current "
18745 "message.  The first pointer points to the beginning of the message and the "
18746 "list ends with NULL.  The limit of the array is specified by I<lastdnptr>.  "
18747 "If I<dnptr> is NULL, domain names are not compressed.  If I<lastdnptr> is "
18748 "NULL, the list of labels is not updated."
18749 msgstr ""
18750 "B<dn_comp>()  関数はドメイン名 I<exp_dn> を圧縮して、長さ I<length> のバッ"
18751 "ファー I<comp_dn> に保存する。 圧縮にはポインター配列 I<dnptrs> を用いる。 こ"
18752 "れらのポインターは、現在のメッセージの中にある以前に圧縮された名前を指す。 最"
18753 "初のポインターはメッセージの冒頭を指し、そのリストは NULL で終わる。 配列の範"
18754 "囲は I<lastdnptr> で決められる。 I<dnptr> が NULL ならばドメイン名は圧縮され"
18755 "ない。 I<lastdnptr> が NULL ならば、そのラベルのリストはアップデートされな"
18756 "い。"
18757
18758 #. type: Plain text
18759 #: build/C/man3/resolver.3:175
18760 msgid ""
18761 "The B<dn_expand>()  function expands the compressed domain name I<comp_dn> "
18762 "to a full domain name, which is placed in the buffer I<exp_dn> of size "
18763 "I<length>.  The compressed name is contained in a query or reply message, "
18764 "and I<msg> points to the beginning of the message."
18765 msgstr ""
18766 "B<dn_expand>()  関数は、圧縮されたドメイン名 I<comp_dn> からサイズ が "
18767 "I<length> の I<exp_dn> バッファーに正式なドメイン名を展開する。 その圧縮され"
18768 "た名前は、問い合わせ、または応答メッセージに含まれていて、 I<msg> がメッセー"
18769 "ジの冒頭を指す。"
18770
18771 #. type: Plain text
18772 #: build/C/man3/resolver.3:183
18773 msgid ""
18774 "The resolver routines use global configuration and state information "
18775 "contained in the structure I<_res>, which is defined in I<E<lt>resolv."
18776 "hE<gt>>.  The only field that is normally manipulated by the user is I<_res."
18777 "options>.  This field can contain the bitwise \"OR\" of the following "
18778 "options:"
18779 msgstr ""
18780 "レゾルバ・ルーチンは、I<E<lt>resolv.hE<gt>> に定義された I<_res> 構造体に 含"
18781 "まれている全体的な設定と状態の情報を使用する。 通常ユーザーに操作できる項目"
18782 "は I<_res.options> だけである。 この項目は以下のオプションのビット単位の論理"
18783 "和にできる。"
18784
18785 #. type: TP
18786 #: build/C/man3/resolver.3:183
18787 #, no-wrap
18788 msgid "B<RES_INIT>"
18789 msgstr "B<RES_INIT>"
18790
18791 #. type: Plain text
18792 #: build/C/man3/resolver.3:188
18793 msgid "True if B<res_init>()  has been called."
18794 msgstr "B<res_init>()  が呼び出されていれば真。"
18795
18796 #. type: TP
18797 #: build/C/man3/resolver.3:188
18798 #, no-wrap
18799 msgid "B<RES_DEBUG>"
18800 msgstr "B<RES_DEBUG>"
18801
18802 #.  See resolv/README.
18803 #.  Support for RES_DEBUG was made conditional in glibc 2.2.
18804 #. type: Plain text
18805 #: build/C/man3/resolver.3:195
18806 msgid ""
18807 "Print debugging messages.  This option is available only if glibc was built "
18808 "with debugging enabled, which is not the default."
18809 msgstr ""
18810 "デバッグ情報を表示する。このオプションは、 glibc がデバッグを有効にしてコンパ"
18811 "イルされている場合にのみ利用できる。 デフォルトでは glibc のデバッグは有効に"
18812 "なっていない。"
18813
18814 #. type: TP
18815 #: build/C/man3/resolver.3:195
18816 #, no-wrap
18817 msgid "B<RES_AAONLY>"
18818 msgstr "B<RES_AAONLY>"
18819
18820 #. type: Plain text
18821 #: build/C/man3/resolver.3:202
18822 msgid ""
18823 "Accept authoritative answers only.  B<res_send>()  continues until it finds "
18824 "an authoritative answer or returns an error.  [Not currently implemented]."
18825 msgstr ""
18826 "権威付けされた (authoritative) 回答のみ受け入れる。 B<res_send>()  は、最終的"
18827 "に権威付けされた回答を得られるか、エラーが返される まで続行する。 [現在実装さ"
18828 "れていない]"
18829
18830 #. type: TP
18831 #: build/C/man3/resolver.3:202
18832 #, no-wrap
18833 msgid "B<RES_USEVC>"
18834 msgstr "B<RES_USEVC>"
18835
18836 #. type: Plain text
18837 #: build/C/man3/resolver.3:205
18838 msgid "Use TCP connections for queries rather than UDP datagrams."
18839 msgstr "問い合わせに UDP データグラムではなく TCP 接続を用いる。"
18840
18841 #. type: TP
18842 #: build/C/man3/resolver.3:205
18843 #, no-wrap
18844 msgid "B<RES_PRIMARY>"
18845 msgstr "B<RES_PRIMARY>"
18846
18847 #. type: Plain text
18848 #: build/C/man3/resolver.3:208
18849 msgid "Query primary domain name server only."
18850 msgstr "プライマリ・ドメインネームサーバーのみ問い合わせる。"
18851
18852 #. type: TP
18853 #: build/C/man3/resolver.3:208
18854 #, no-wrap
18855 msgid "B<RES_IGNTC>"
18856 msgstr "B<RES_IGNTC>"
18857
18858 #. type: Plain text
18859 #: build/C/man3/resolver.3:213
18860 msgid ""
18861 "Ignore truncation errors.  Don't retry with TCP.  [Not currently "
18862 "implemented]."
18863 msgstr ""
18864 "切り詰めエラー (truncation error) を無視する。TCP でリトライしない。 [現在実"
18865 "装されていない]"
18866
18867 #. type: TP
18868 #: build/C/man3/resolver.3:213
18869 #, no-wrap
18870 msgid "B<RES_RECURSE>"
18871 msgstr "B<RES_RECURSE>"
18872
18873 #. type: Plain text
18874 #: build/C/man3/resolver.3:220
18875 msgid ""
18876 "Set the recursion desired bit in queries.  Recursion is carried out by the "
18877 "domain name server, not by B<res_send>().  [Enabled by default]."
18878 msgstr ""
18879 "再帰要求 (recursion desired) ビットを問い合わせに設定する。 再帰は "
18880 "B<res_send>()  ではなくドメインネームサーバーによって行われる。 [デフォルトで"
18881 "有効]"
18882
18883 #. type: TP
18884 #: build/C/man3/resolver.3:220
18885 #, no-wrap
18886 msgid "B<RES_DEFNAMES>"
18887 msgstr "B<RES_DEFNAMES>"
18888
18889 #. type: Plain text
18890 #: build/C/man3/resolver.3:227
18891 msgid ""
18892 "If set, B<res_search>()  will append the default domain name to single "
18893 "component names\\(emthat is, those that do not contain a dot.  [Enabled by "
18894 "default]."
18895 msgstr ""
18896 "設定されていれば、 B<res_search>()  はデフォルトのドメイン名を一部分 のみから"
18897 "なる名前、すなわちドットを含まない名前に付け加える。 [デフォルトで有効]"
18898
18899 #. type: TP
18900 #: build/C/man3/resolver.3:227
18901 #, no-wrap
18902 msgid "B<RES_STAYOPEN>"
18903 msgstr "B<RES_STAYOPEN>"
18904
18905 #. type: Plain text
18906 #: build/C/man3/resolver.3:232
18907 msgid "Used with B<RES_USEVC> to keep the TCP connection open between queries."
18908 msgstr "問い合わせ中に TCP 接続を保つため B<RES_USEVC> と共に用いられる。"
18909
18910 #. type: TP
18911 #: build/C/man3/resolver.3:232
18912 #, no-wrap
18913 msgid "B<RES_DNSRCH>"
18914 msgstr "B<RES_DNSRCH>"
18915
18916 #. type: Plain text
18917 #: build/C/man3/resolver.3:241
18918 msgid ""
18919 "If set, B<res_search>()  will search for hostnames in the current domain and "
18920 "in parent domains.  This option is used by B<gethostbyname>(3).  [Enabled by "
18921 "default]."
18922 msgstr ""
18923 "設定されていれば、 B<res_search>()  は現在のドメインおよび親ドメインの ホスト"
18924 "名を探す。このオプションは B<gethostbyname>(3)  で用いられる。 [デフォルトで"
18925 "有効]"
18926
18927 #. type: Plain text
18928 #: build/C/man3/resolver.3:245
18929 msgid ""
18930 "This list is not complete.  You can find some other flags described in "
18931 "B<resolv.conf>(5)."
18932 msgstr ""
18933 "このリストは完全なものではない。\n"
18934 "B<resolv.conf>(5) には他にいくつかのフラグが記載されている。"
18935
18936 #. type: Plain text
18937 #: build/C/man3/resolver.3:250
18938 msgid ""
18939 "The B<res_init>()  function returns 0 on success, or -1 if an error occurs."
18940 msgstr "B<res_init>()  関数は成功すれば 0 を、エラーが発生すれば -1 を返す。"
18941
18942 #. type: Plain text
18943 #: build/C/man3/resolver.3:260
18944 msgid ""
18945 "The B<res_query>(), B<res_search>(), B<res_querydomain>(), B<res_mkquery>()  "
18946 "and B<res_send>()  functions return the length of the response, or -1 if an "
18947 "error occurs."
18948 msgstr ""
18949 "B<res_query>(), B<res_search>(), B<res_querydomain>(), B<res_mkquery>(), "
18950 "B<res_send>()  関数は応答の長さを返す。 また、エラーが発生すれば -1 を返す。"
18951
18952 #. type: Plain text
18953 #: build/C/man3/resolver.3:267
18954 msgid ""
18955 "The B<dn_comp>()  and B<dn_expand>()  functions return the length of the "
18956 "compressed name, or -1 if an error occurs."
18957 msgstr ""
18958 "B<dn_comp>()  と B<dn_expand>()  関数は圧縮されたドメイン名の長さを返す。 ま"
18959 "た、エラーが発生すれば -1 を返す。"
18960
18961 #. type: Plain text
18962 #: build/C/man3/resolver.3:271
18963 #, no-wrap
18964 msgid ""
18965 "/etc/resolv.conf          resolver configuration file\n"
18966 "/etc/host.conf            resolver configuration file\n"
18967 msgstr ""
18968 "/etc/resolv.conf          レゾルバ設定ファイル\n"
18969 "/etc/host.conf            レゾルバ設定ファイル\n"
18970
18971 #. type: Plain text
18972 #: build/C/man3/resolver.3:274
18973 msgid "4.3BSD."
18974 msgstr "4.3BSD."
18975
18976 #. type: Plain text
18977 #: build/C/man3/resolver.3:280
18978 msgid ""
18979 "B<gethostbyname>(3), B<resolv.conf>(5), B<resolver>(5), B<hostname>(7), "
18980 "B<named>(8)"
18981 msgstr ""
18982 "B<gethostbyname>(3), B<resolv.conf>(5), B<resolver>(5), B<hostname>(7), "
18983 "B<named>(8)"
18984
18985 #. type: TH
18986 #: build/C/man3/rexec.3:41
18987 #, no-wrap
18988 msgid "REXEC"
18989 msgstr "REXEC"
18990
18991 #. type: Plain text
18992 #: build/C/man3/rexec.3:44
18993 msgid "rexec, rexec_af - return stream to a remote command"
18994 msgstr "rexec, rexec_af - リモートコマンドへのストリームを返す"
18995
18996 #. type: Plain text
18997 #: build/C/man3/rexec.3:48
18998 #, no-wrap
18999 msgid ""
19000 "B<#define _BSD_SOURCE>             /* See feature_test_macros(7) */\n"
19001 "B<#include E<lt>netdb.hE<gt>>\n"
19002 msgstr ""
19003 "B<#define _BSD_SOURCE>             /* feature_test_macros(7) 参照 */\n"
19004 "B<#include E<lt>netdb.hE<gt>>\n"
19005
19006 #. type: Plain text
19007 #: build/C/man3/rexec.3:51
19008 #, no-wrap
19009 msgid ""
19010 "B<int rexec(char **>I<ahost>B<, int >I<inport>B<, const char *>I<user>B<, >\n"
19011 "B<          const char *>I<passwd>B<, const char *>I<cmd>B<, int *>I<fd2p>B<);>\n"
19012 msgstr ""
19013 "B<int rexec(char **>I<ahost>B<, int >I<inport>B<, const char *>I<user>B<, >\n"
19014 "B<          const char *>I<passwd>B<, const char *>I<cmd>B<, int *>I<fd2p>B<);>\n"
19015
19016 #. type: Plain text
19017 #: build/C/man3/rexec.3:55
19018 #, no-wrap
19019 msgid ""
19020 "B<int rexec_af(char **>I<ahost>B<, int >I<inport>B<, const char *>I<user>B<, >\n"
19021 "B<             const char *>I<passwd>B<, const char *>I<cmd>B<, int *>I<fd2p>B<,>\n"
19022 "B<             sa_family_t >I<af>B<);>\n"
19023 msgstr ""
19024 "B<int rexec_af(char **>I<ahost>B<, int >I<inport>B<, const char *>I<user>B<, >\n"
19025 "B<             const char *>I<passwd>B<, const char *>I<cmd>B<, int *>I<fd2p>B<,>\n"
19026 "B<             sa_family_t >I<af>B<);>\n"
19027
19028 #. type: Plain text
19029 #: build/C/man3/rexec.3:59
19030 msgid "This interface is obsoleted by B<rcmd>(3)."
19031 msgstr "このインタフェースは B<rcmd>(3)  によって置き換えられた。"
19032
19033 #. type: Plain text
19034 #: build/C/man3/rexec.3:78
19035 msgid ""
19036 "The B<rexec>()  function looks up the host I<*ahost> using "
19037 "B<gethostbyname>(3), returning -1 if the host does not exist.  Otherwise, "
19038 "I<*ahost> is set to the standard name of the host.  If a username and "
19039 "password are both specified, then these are used to authenticate to the "
19040 "foreign host; otherwise the environment and then the I<.netrc> file in "
19041 "user's home directory are searched for appropriate information.  If all this "
19042 "fails, the user is prompted for the information."
19043 msgstr ""
19044 "B<rexec>()  関数は B<gethostbyname>(3)  を使ってホスト I<*ahost> を探す。ホス"
19045 "トが存在しない場合は -1 を返し、それ以外の場合には I<*ahost> にそのホストの標"
19046 "準的な名前を設定する。 ユーザ名とパスワードの両方が指定された場合には、これら"
19047 "は 接続先のホストへの認証に利用される。そうでない場合には、 適切な情報を入手"
19048 "するために、環境変数と、そのユーザの ホームディレクトリの I<.netrc> ファイル"
19049 "が検索される。情報が見つからなかった時には、 ユーザに対して情報を入力するプロ"
19050 "ンプトが表示される。"
19051
19052 #. type: Plain text
19053 #: build/C/man3/rexec.3:89
19054 msgid ""
19055 "The port I<inport> specifies which well-known DARPA Internet port to use for "
19056 "the connection; the call I<getservbyname(\"exec\", \"tcp\")> (see "
19057 "B<getservent>(3))  will return a pointer to a structure that contains the "
19058 "necessary port.  The protocol for connection is described in detail in "
19059 "B<rexecd>(8)."
19060 msgstr ""
19061 "ポート I<inport> には、接続に使用する DARPA Internet の well-known ポートを指"
19062 "定する。 I<getservbyname(\"exec\", \"tcp\")> を呼び出すと構造体へのポインタが"
19063 "返され (B<getservent>(3)  参照)、この構造体には必要なポートが入っている。 接"
19064 "続に使用されるプロトコルについての詳細は B<rexecd>(8)  に書かれている (訳注: "
19065 "現在のところ存在しない)。"
19066
19067 #. type: Plain text
19068 #: build/C/man3/rexec.3:122
19069 msgid ""
19070 "If the connection succeeds, a socket in the Internet domain of type "
19071 "B<SOCK_STREAM> is returned to the caller, and given to the remote command as "
19072 "I<stdin> and I<stdout>.  If I<fd2p> is nonzero, then an auxiliary channel to "
19073 "a control process will be setup, and a descriptor for it will be placed in "
19074 "I<*fd2p>.  The control process will return diagnostic output from the "
19075 "command (unit 2) on this channel, and will also accept bytes on this channel "
19076 "as being UNIX signal numbers, to be forwarded to the process group of the "
19077 "command.  The diagnostic information returned does not include remote "
19078 "authorization failure, as the secondary connection is set up after "
19079 "authorization has been verified.  If I<fd2p> is 0, then the I<stderr> (unit "
19080 "2 of the remote command) will be made the same as the I<stdout> and no "
19081 "provision is made for sending arbitrary signals to the remote process, "
19082 "although you may be able to get its attention by using out-of-band data."
19083 msgstr ""
19084 "接続に成功すると、インターネットドメインの B<SOCK_STREAM> 型のソケットが返さ"
19085 "れ、そのソケットはリモートコマンドの 標準入力および標準出力となる。 I<fd2p> "
19086 "が 0 以外の場合、制御プロセスへの補助チャンネルがセットアップされ、 補助チャ"
19087 "ンネルのディスクリプタが I<*fd2p> に書かれる。 制御プロセスはコマンドからの診"
19088 "断メッセージ出力 (ファイルディスクリプタ 2)  をこのチャンネルで返す。また、こ"
19089 "のチャンネル経由で UNIX のシグナル番号を示すバイトを受信する。受信したシグナ"
19090 "ルは コマンドが属すプロセスグループに転送される。 診断情報にはリモートの認証"
19091 "失敗は含まれない。なぜなら、認証の確認が行われた 後で補助チャンネルの接続は"
19092 "セットアップされるからである。 I<fd2p> が 0 の場合、標準エラー (リモートコマ"
19093 "ンドのファイルディスクリプタ 2) は 標準出力と同様に扱われ、リモートプロセスに"
19094 "任意のシグナルを送るための 手段は提供されない。但し、リモートプロセスに対して"
19095 "トリガをかけるために、 帯域外データ (out-of-band data) を使うことはできる。"
19096
19097 #. type: SS
19098 #: build/C/man3/rexec.3:122
19099 #, no-wrap
19100 msgid "rexec_af()"
19101 msgstr "rexec_af()"
19102
19103 #. type: Plain text
19104 #: build/C/man3/rexec.3:138
19105 msgid ""
19106 "The B<rexec>()  function works over IPv4 (B<AF_INET>).  By contrast, the "
19107 "B<rexec_af>()  function provides an extra argument, I<af>, that allows the "
19108 "caller to select the protocol.  This argument can be specified as "
19109 "B<AF_INET>, B<AF_INET6>, or B<AF_UNSPEC> (to allow the implementation to "
19110 "select the protocol)."
19111 msgstr ""
19112 "B<rexec>() 関数は IPv4 (B<AF_INET>) 上で動作する。\n"
19113 "これに対して、 B<rexec_af>() 関数は追加の引き数 I<af> があり、\n"
19114 "この引き数で呼び出し側がプロトコルを選択できる。\n"
19115 "この引き数には B<AF_INET>, B<AF_INET6>, B<AF_UNSPEC> を指定できる\n"
19116 "(B<AF_UNSPEC> は実装側がプロトコルを選択することを意味する)。"
19117
19118 #. type: Plain text
19119 #: build/C/man3/rexec.3:142
19120 msgid "The B<rexec_af>()  function was added to glibc in version 2.2."
19121 msgstr "B<rexec_af>() 関数は glibc バージョン 2.9 で追加された。"
19122
19123 #. type: Plain text
19124 #: build/C/man3/rexec.3:149
19125 msgid "The B<rexec>()  and B<rexec_af>()  functions are not thread-safe."
19126 msgstr "関数 B<rexec>() と B<rexec_af>() はスレッドセーフではない。"
19127
19128 #. type: Plain text
19129 #: build/C/man3/rexec.3:158
19130 msgid ""
19131 "These functions are not in POSIX.1-2001.  The B<rexec>()  function first "
19132 "appeared in 4.2BSD, and is present on the BSDs, Solaris, and many other "
19133 "systems.  The B<rexec_af>()  function is more recent, and less widespread."
19134 msgstr ""
19135 "これらの関数は POSIX.1-2001 にはない。B<rexec>() 関数は 4.2BSD で始めて\n"
19136 "登場し、BSD 系、Solaris や他の多くのシステムに存在する。B<rexec_af>()\n"
19137 "関数はもっと新しく、それほど広く使われているわけではない。"
19138
19139 #. type: Plain text
19140 #: build/C/man3/rexec.3:162
19141 msgid ""
19142 "The B<rexec>()  function sends the unencrypted password across the network."
19143 msgstr ""
19144 "B<rexec>()  関数はネットワークに暗号化されていないパスワードを送信する。"
19145
19146 #. type: Plain text
19147 #: build/C/man3/rexec.3:167
19148 msgid ""
19149 "The underlying service is considered a big security hole and therefore not "
19150 "enabled on many sites; see B<rexecd>(8)  for explanations."
19151 msgstr ""
19152 "基礎的なサービスにおいては大きなセキュリティホールと考えられるため、 \n"
19153 "多くのサイトで無効になっている。詳細は B<rexecd>(8) を参照。"
19154
19155 #. type: Plain text
19156 #: build/C/man3/rexec.3:170
19157 msgid "B<rcmd>(3), B<rexecd>(8)"
19158 msgstr "B<rcmd>(3), B<rexecd>(8)"
19159
19160 #. type: TH
19161 #: build/C/man5/services.5:34
19162 #, no-wrap
19163 msgid "SERVICES"
19164 msgstr "SERVICES"
19165
19166 #. type: TH
19167 #: build/C/man5/services.5:34
19168 #, no-wrap
19169 msgid "2010-05-22"
19170 msgstr "2010-05-22"
19171
19172 #. type: Plain text
19173 #: build/C/man5/services.5:37
19174 msgid "services - Internet network services list"
19175 msgstr "services - インターネット ネットワークサービス リスト"
19176
19177 #. type: Plain text
19178 #: build/C/man5/services.5:52
19179 msgid ""
19180 "B<services> is a plain ASCII file providing a mapping between human-friendly "
19181 "textual names for internet services, and their underlying assigned port "
19182 "numbers and protocol types.  Every networking program should look into this "
19183 "file to get the port number (and protocol) for its service.  The C library "
19184 "routines B<getservent>(3), B<getservbyname>(3), B<getservbyport>(3), "
19185 "B<setservent>(3), and B<endservent>(3)  support querying this file from "
19186 "programs."
19187 msgstr ""
19188 "B<services> は、人が分かりやすい形のインターネットサービスの名前と、 それらの"
19189 "サービスに割り当てられたポート番号や プロトコル種別の対応関係が書かれているテ"
19190 "キストファイルである。 ネットワーク上で動作するプログラムはすべて、 そのサー"
19191 "ビスに対応するポート番号 (とプロトコル) を得るために、 このファイルを調べる必"
19192 "要がある。 C ライブラリ関数である B<getservent>(3), B<getservbyname>(3), "
19193 "B<getservbyport>(3), B<setservent>(3), B<endservent>(3)  を利用することで、プ"
19194 "ログラムはこのファイルを調べることができる。"
19195
19196 #. type: Plain text
19197 #: build/C/man5/services.5:58
19198 msgid ""
19199 "Port numbers are assigned by the IANA (Internet Assigned Numbers Authority), "
19200 "and their current policy is to assign both TCP and UDP protocols when "
19201 "assigning a port number.  Therefore, most entries will have two entries, "
19202 "even for TCP-only services."
19203 msgstr ""
19204 "ポート番号は、IANA (Internet Assigned Numbers Authority) によって 割り当てら"
19205 "れており、現在はポート番号を割り当てる際に TCP と UDP の両方のプロトコルを割"
19206 "り当てることになっている。 そのため、ほとんどのサービスに対して、 たとえ TCP "
19207 "だけのサービスの場合であっても、対応する項目が二つあることになる。"
19208
19209 #. type: Plain text
19210 #: build/C/man5/services.5:70
19211 msgid ""
19212 "Port numbers below 1024 (so-called \"low numbered\" ports) can be bound to "
19213 "only by root (see B<bind>(2), B<tcp>(7), and B<udp>(7)).  This is so clients "
19214 "connecting to low numbered ports can trust that the service running on the "
19215 "port is the standard implementation, and not a rogue service run by a user "
19216 "of the machine.  Well-known port numbers specified by the IANA are normally "
19217 "located in this root-only space."
19218 msgstr ""
19219 "1024 より小さいポート番号 (いわゆる \"low numbered\" ポート) は 管理者 "
19220 "(root) 権限によってのみ使用することができる (B<bind>(2), B<tcp>(7), "
19221 "B<udp>(7)  参照)。 これは、これらのポートに接続するクライアントに対して、 そ"
19222 "のポートで動いているサービスが標準的な実装であり、 その計算機のユーザーが動か"
19223 "している 不正なサービスではないことを保証するためである。 IANA に明記されてい"
19224 "るよく使用されるポート番号は、 通常このような管理者だけが使用できる範囲に配置"
19225 "される。"
19226
19227 #. type: Plain text
19228 #: build/C/man5/services.5:85
19229 msgid ""
19230 "The presence of an entry for a service in the B<services> file does not "
19231 "necessarily mean that the service is currently running on the machine.  See "
19232 "B<inetd.conf>(5)  for the configuration of Internet services offered.  Note "
19233 "that not all networking services are started by B<inetd>(8), and so won't "
19234 "appear in B<inetd.conf>(5).  In particular, news (NNTP) and mail (SMTP) "
19235 "servers are often initialized from the system boot scripts."
19236 msgstr ""
19237 "B<services> ファイルにあるサービスに対する項目があっても、必ずしもそのサービ"
19238 "スが現 在その計算機で動いている訳ではない。利用可能なインターネットサービスの"
19239 "設定に ついては B<inetd.conf>(5)  に記述されている。ただし、すべてのサービス"
19240 "が B<inetd>(8)  によって起動されるわけではないので、 B<inetd.conf>(5)  には書"
19241 "かれていないサービスもあることに注意する必要がある。 特に、ネットニュース "
19242 "(NNTP) や メール (SMTP) のサーバーは、システム起動時の スクリプトから起動され"
19243 "ることが多い。"
19244
19245 #. type: Plain text
19246 #: build/C/man5/services.5:94
19247 msgid ""
19248 "The location of the B<services> file is defined by B<_PATH_SERVICES> in "
19249 "I<E<lt>netdb.hE<gt>>.  This is usually set to I</etc/services>."
19250 msgstr ""
19251 "B<services> ファイルの場所は、 I<E<lt>netdb.hE<gt>> 中の B<_PATH_SERVICES> に"
19252 "よって定義されている。 この値は通常 I</etc/services> に設定されている。"
19253
19254 #. type: Plain text
19255 #: build/C/man5/services.5:96
19256 msgid "Each line describes one service, and is of the form:"
19257 msgstr "1 行につき 1 サービスが記述されており、以下の形式である。"
19258
19259 #. type: Plain text
19260 #: build/C/man5/services.5:98
19261 msgid "I<service-name\\ \\ \\ port>B</>I<protocol\\ \\ \\ >[I<aliases ...>]"
19262 msgstr "I<service-name\\ \\ \\ port>B</>I<protocol\\ \\ \\ >[I<aliases ...>]"
19263
19264 #. type: TP
19265 #: build/C/man5/services.5:98
19266 #, no-wrap
19267 msgid "where:"
19268 msgstr "各項目は以下の通り。"
19269
19270 #. type: TP
19271 #: build/C/man5/services.5:100
19272 #, no-wrap
19273 msgid "I<service-name>"
19274 msgstr "I<service-name>"
19275
19276 #. type: Plain text
19277 #: build/C/man5/services.5:106
19278 msgid ""
19279 "is the friendly name the service is known by and looked up under.  It is "
19280 "case sensitive.  Often, the client program is named after the I<service-"
19281 "name>."
19282 msgstr ""
19283 "サービスを表す分かりやすい名前であり、検索の際にも使用される。 大文字と小文字"
19284 "は区別される。 クライアントプログラムは I<service-name> にちなんで名付けられ"
19285 "ることが多い。"
19286
19287 #. type: TP
19288 #: build/C/man5/services.5:106
19289 #, no-wrap
19290 msgid "I<port>"
19291 msgstr "I<port>"
19292
19293 #. type: Plain text
19294 #: build/C/man5/services.5:109
19295 msgid "is the port number (in decimal) to use for this service."
19296 msgstr "サービスに対して使用されるポート番号。10 進数で指定する。"
19297
19298 #. type: Plain text
19299 #: build/C/man5/services.5:120
19300 msgid ""
19301 "is the type of protocol to be used.  This field should match an entry in the "
19302 "B<protocols>(5)  file.  Typical values include B<tcp> and B<udp>."
19303 msgstr ""
19304 "使用されるプロトコルの種類。この欄は、 B<protocols>(5)  ファイルの中の項目と"
19305 "一致している必要がある。 通常使用される値は、 B<tcp> と B<udp> である。"
19306
19307 #. type: Plain text
19308 #: build/C/man5/services.5:126
19309 msgid ""
19310 "is an optional space or tab separated list of other names for this service.  "
19311 "Again, the names are case sensitive."
19312 msgstr ""
19313 "サービスに対する別名のリスト (区切はスペースまたはタブ) で、この欄は 必要にな"
19314 "らば書くことができる。 また、別名は大文字と小文字は区別される。"
19315
19316 #. type: Plain text
19317 #: build/C/man5/services.5:128
19318 msgid "Either spaces or tabs may be used to separate the fields."
19319 msgstr "それぞれの欄の区切りには、スペースまたはタブが使用される。"
19320
19321 #. type: Plain text
19322 #: build/C/man5/services.5:132
19323 msgid ""
19324 "Comments are started by the hash sign (#) and continue until the end of the "
19325 "line.  Blank lines are skipped."
19326 msgstr ""
19327 "コメントはシャープ (#) で始まり、その行の終わりまでがコメントとみなされる。 "
19328 "空行は飛ばされる。"
19329
19330 #. type: Plain text
19331 #: build/C/man5/services.5:143
19332 msgid ""
19333 "The I<service-name> should begin in the first column of the file, since "
19334 "leading spaces are not stripped.  I<service-names> can be any printable "
19335 "characters excluding space and tab.  However, a conservative choice of "
19336 "characters should be used to minimize compatibility problems.  For example, "
19337 "a-z, 0-9, and hyphen (-) would seem a sensible choice."
19338 msgstr ""
19339 "行の始めのスペースは無視されないので、 I<service-name> は、行頭から書かなけれ"
19340 "ばならない。 I<service-names> は、スペースとタブ以外の印字可能な文字なら何で"
19341 "もよいが、しかしながら 互換性の問題を少なくするような文字を選択すべきであ"
19342 "る。 例えば、a-z 、0-9 、ハイフォン (-) を使用するのが無難と思われる。"
19343
19344 #. type: Plain text
19345 #: build/C/man5/services.5:152
19346 msgid ""
19347 "Lines not matching this format should not be present in the file.  "
19348 "(Currently, they are silently skipped by B<getservent>(3), "
19349 "B<getservbyname>(3), and B<getservbyport>(3).  However, this behavior should "
19350 "not be relied on.)"
19351 msgstr ""
19352 "指定された形式に合わない行はあってはならない (現在は、そのような行は "
19353 "B<getservent>(3), B<getservbyname>(3), B<getservbyport>(3)  によって無視され"
19354 "る。しかし、その場合の挙動は信頼できない)。"
19355
19356 #. type: Plain text
19357 #: build/C/man5/services.5:169
19358 msgid "A sample B<services> file might look like this:"
19359 msgstr "B<services> ファイルの見本を以下に示す。"
19360
19361 #. type: Plain text
19362 #: build/C/man5/services.5:182
19363 #, no-wrap
19364 msgid ""
19365 "CW<netstat         15/tcp\n"
19366 "qotd            17/tcp          quote\n"
19367 "msp             18/tcp          # message send protocol\n"
19368 "msp             18/udp          # message send protocol\n"
19369 "chargen         19/tcp          ttytst source\n"
19370 "chargen         19/udp          ttytst source\n"
19371 "ftp             21/tcp\n"
19372 "# 22 - unassigned\n"
19373 "telnet          23/tcp>\n"
19374 msgstr ""
19375 "CW<netstat         15/tcp\n"
19376 "qotd            17/tcp          quote\n"
19377 "msp             18/tcp          # message send protocol\n"
19378 "msp             18/udp          # message send protocol\n"
19379 "chargen         19/tcp          ttytst source\n"
19380 "chargen         19/udp          ttytst source\n"
19381 "ftp             21/tcp\n"
19382 "# 22 - unassigned\n"
19383 "telnet          23/tcp>\n"
19384
19385 #. type: Plain text
19386 #: build/C/man5/services.5:189
19387 msgid "The Internet network services list"
19388 msgstr "インターネット ネットワークサービスのリスト"
19389
19390 #. type: TP
19391 #: build/C/man5/services.5:189
19392 #, no-wrap
19393 msgid "I<E<lt>netdb.hE<gt>>"
19394 msgstr "I<E<lt>netdb.hE<gt>>"
19395
19396 #.  .SH BUGS
19397 #.  It's not clear when/if the following was ever true;
19398 #.  it isn't true for glibc 2.8:
19399 #.     There is a maximum of 35 aliases, due to the way the
19400 #.     .BR getservent (3)
19401 #.     code is written.
19402 #.  It's not clear when/if the following was ever true;
19403 #.  it isn't true for glibc 2.8:
19404 #.     Lines longer than
19405 #.     .B BUFSIZ
19406 #.     (currently 1024) characters will be ignored by
19407 #.     .BR getservent (3),
19408 #.     .BR getservbyname (3),
19409 #.     and
19410 #.     .BR getservbyport (3).
19411 #.     However, this will also cause the next line to be mis-parsed.
19412 #. type: Plain text
19413 #: build/C/man5/services.5:210
19414 msgid "Definition of B<_PATH_SERVICES>"
19415 msgstr "B<_PATH_SERVICES> の定義"
19416
19417 #. type: Plain text
19418 #: build/C/man5/services.5:220
19419 msgid ""
19420 "B<listen>(2), B<endservent>(3), B<getservbyname>(3), B<getservbyport>(3), "
19421 "B<getservent>(3), B<setservent>(3), B<inetd.conf>(5), B<protocols>(5), "
19422 "B<inetd>(8)"
19423 msgstr ""
19424 "B<listen>(2), B<endservent>(3), B<getservbyname>(3), B<getservbyport>(3), "
19425 "B<getservent>(3), B<setservent>(3), B<inetd.conf>(5), B<protocols>(5), "
19426 "B<inetd>(8)"
19427
19428 #. type: Plain text
19429 #: build/C/man5/services.5:222
19430 msgid "Assigned Numbers RFC, most recently RFC\\ 1700, (AKA STD0002)."
19431 msgstr ""
19432 "ポート番号の割り当てを定めている RFC (最新版は RFC\\ 1700、別名 STD0002)"
19433
19434 #. type: TH
19435 #: build/C/man3/setnetgrent.3:10
19436 #, no-wrap
19437 msgid "SETNETGRENT"
19438 msgstr "SETNETGRENT"
19439
19440 #. type: Plain text
19441 #: build/C/man3/setnetgrent.3:14
19442 msgid ""
19443 "setnetgrent, endnetgrent, getnetgrent, getnetgrent_r, innetgr - handle "
19444 "network group entries"
19445 msgstr ""
19446 "setnetgrent, endnetgrent, getnetgrent, getnetgrent_r, innetgr - ネットワー"
19447 "ク・グループのエントリを操作する"
19448
19449 #. type: Plain text
19450 #: build/C/man3/setnetgrent.3:19
19451 #, no-wrap
19452 msgid "B<int setnetgrent(const char *>I<netgroup>B<);>\n"
19453 msgstr "B<int setnetgrent(const char *>I<netgroup>B<);>\n"
19454
19455 #. type: Plain text
19456 #: build/C/man3/setnetgrent.3:21
19457 #, no-wrap
19458 msgid "B<void endnetgrent(void);>\n"
19459 msgstr "B<void endnetgrent(void);>\n"
19460
19461 #. type: Plain text
19462 #: build/C/man3/setnetgrent.3:23
19463 #, no-wrap
19464 msgid "B<int getnetgrent(char **>I<host>B<, char **>I<user>B<, char **>I<domain>B<);>\n"
19465 msgstr "B<int getnetgrent(char **>I<host>B<, char **>I<user>B<, char **>I<domain>B<);>\n"
19466
19467 #. type: Plain text
19468 #: build/C/man3/setnetgrent.3:26
19469 #, no-wrap
19470 msgid ""
19471 "B<int getnetgrent_r(char **>I<host>B<, char **>I<user>B<,>\n"
19472 "B<                  char **>I<domain>B<, char *>I<buf>B<, size_t >I<buflen>B<);>\n"
19473 msgstr ""
19474 "B<int getnetgrent_r(char **>I<host>B<, char **>I<user>B<,>\n"
19475 "B<                  char **>I<domain>B<, char *>I<buf>B<, size_t >I<buflen>B<);>\n"
19476
19477 #. type: Plain text
19478 #: build/C/man3/setnetgrent.3:29
19479 #, no-wrap
19480 msgid ""
19481 "B<int innetgr(const char *>I<netgroup>B<, const char *>I<host>B<,>\n"
19482 "B<            const char *>I<user>B<, const char *>I<domain>B<);>\n"
19483 msgstr ""
19484 "B<int innetgr(const char *>I<netgroup>B<, const char *>I<host>B<,>\n"
19485 "B<            const char *>I<user>B<, const char *>I<domain>B<);>\n"
19486
19487 #. type: Plain text
19488 #: build/C/man3/setnetgrent.3:43
19489 msgid ""
19490 "B<setnetgrent>(), B<endnetgrent>(), B<getnetgrent>(), B<getnetgrent_r>(), "
19491 "B<innetgr>(): _BSD_SOURCE || _SVID_SOURCE"
19492 msgstr ""
19493 "B<setnetgrent>(), B<endnetgrent>(), B<getnetgrent>(), B<getnetgrent_r>(), "
19494 "B<innetgr>(): _BSD_SOURCE || _SVID_SOURCE"
19495
19496 #. type: Plain text
19497 #: build/C/man3/setnetgrent.3:57
19498 msgid ""
19499 "The I<netgroup> is a SunOS invention.  A netgroup database is a list of "
19500 "string triples (I<hostname>, I<username>, I<domainname>)  or other netgroup "
19501 "names.  Any of the elements in a triple can be empty, which means that "
19502 "anything matches.  The functions described here allow access to the netgroup "
19503 "databases.  The file I</etc/nsswitch.conf> defines what database is searched."
19504 msgstr ""
19505 "I<netgroup> は SunOS で考案されたものである。ネットグループのデータベースの "
19506 "エントリは、 3 つの文字列のリスト (I<hostname>, I<username>, I<domainname>)  "
19507 "もしくはネットグループ名である。 前記のリストの各要素は空であってもよい。 空"
19508 "は何とでも一致することを意味する。 本ページで説明する関数を使うことで、ネット"
19509 "グループのデータベースに アクセスすることができる。どのデータベースが検索され"
19510 "るかは I</etc/nsswitch.conf> ファイルで定義されている。"
19511
19512 #. type: Plain text
19513 #: build/C/man3/setnetgrent.3:77
19514 msgid ""
19515 "The B<setnetgrent>()  call defines the netgroup that will be searched by "
19516 "subsequent B<getnetgrent>()  calls.  The B<getnetgrent>()  function "
19517 "retrieves the next netgroup entry, and returns pointers in I<host>, I<user>, "
19518 "I<domain>.  A null pointer means that the corresponding entry matches any "
19519 "string.  The pointers are valid only as long as there is no call to other "
19520 "netgroup-related functions.  To avoid this problem you can use the GNU "
19521 "function B<getnetgrent_r>()  that stores the strings in the supplied "
19522 "buffer.  To free all allocated buffers use B<endnetgrent>()."
19523 msgstr ""
19524 "B<setnetgrent>()  コールは、この後で呼ばれる B<getnetgrent>()  コールが検索す"
19525 "るネットグループを定める。 B<getnetgrent>()  関数はネットグループの次のエント"
19526 "リを取得し、 I<host>, I<user>, I<domain> にポインタを入れて返る。ヌルポインタ"
19527 "は、対応するエントリがどんな文字列とも一致することを意味する。 得られたポイン"
19528 "タは、ネットグループ関係の関数のいずれかが呼ばれるまでの 間だけ有効である。こ"
19529 "の問題を避けるためには GNU 拡張の関数 B<getnetgrent_r>()  を使うとよい。この"
19530 "関数は呼び出し側が用意したバッファに 文字列を格納する。割り当て済のバッファを"
19531 "全て解放するには B<endnetgrent>()  を使用する。"
19532
19533 #. type: Plain text
19534 #: build/C/man3/setnetgrent.3:86
19535 msgid ""
19536 "In most cases you want to check only if the triplet (I<hostname>, "
19537 "I<username>, I<domainname>)  is a member of a netgroup.  The function "
19538 "B<innetgr>()  can be used for this without calling the above three "
19539 "functions.  Again, a null pointer is a wildcard and matches any string.  The "
19540 "function is thread-safe."
19541 msgstr ""
19542 "ほとんどの場合、 (I<hostname>, I<username>, I<domainname>)  の3要素の組がネッ"
19543 "トグループのメンバーかどうかを確認したいだけであろう。 B<innetgr>()  関数を使"
19544 "うと、上記の3つの関数を呼び出さずにこの目的を達成できる。 もう一度書いておく"
19545 "が、NULL ポインタはワイルドカードであり、 あらゆる文字列と一致する。この関数"
19546 "はスレッドセーフである。"
19547
19548 #. type: Plain text
19549 #: build/C/man3/setnetgrent.3:88
19550 msgid "These functions return 1 on success and 0 for failure."
19551 msgstr "これらの関数は成功すると 1 を、失敗すると 0 を返す。"
19552
19553 #. type: Plain text
19554 #: build/C/man3/setnetgrent.3:90
19555 msgid "I</etc/netgroup>"
19556 msgstr "I</etc/netgroup>"
19557
19558 #.  getnetgrent_r() is on Solaris 8 and AIX 5.1, but not the BSDs.
19559 #. type: Plain text
19560 #: build/C/man3/setnetgrent.3:103
19561 msgid ""
19562 "These functions are not in POSIX.1-2001, but B<setnetgrent>(), "
19563 "B<endnetgrent>(), B<getnetgrent>(), and B<innetgr>()  are available on most "
19564 "UNIX systems.  B<getnetgrent_r>()  is not widely available on other systems."
19565 msgstr ""
19566 "これらの関数は POSIX.1-2001 にはないが、 setnetgrent (), endnetgrent (), "
19567 "getnetgrent (), innetgr ()  はほとんどの UNIX システムで利用可能である。 "
19568 "B<getnetgrent_r>()  は広く他のシステムで利用できるわけではない。"
19569
19570 #. type: Plain text
19571 #: build/C/man3/setnetgrent.3:107
19572 msgid "In the BSD implementation, B<setnetgrent>()  returns void."
19573 msgstr "BSD の実装では B<setnetgrent>()  は void を返す。"
19574
19575 #. type: Plain text
19576 #: build/C/man3/setnetgrent.3:111
19577 msgid "B<sethostent>(3), B<setprotoent>(3), B<setservent>(3)"
19578 msgstr "B<sethostent>(3), B<setprotoent>(3), B<setservent>(3)"
19579
19580 #. type: TH
19581 #: build/C/man2/shutdown.2:40
19582 #, no-wrap
19583 msgid "SHUTDOWN"
19584 msgstr "SHUTDOWN"
19585
19586 #. type: TH
19587 #: build/C/man2/shutdown.2:40
19588 #, no-wrap
19589 msgid "2012-09-06"
19590 msgstr "2012-09-06"
19591
19592 #. type: Plain text
19593 #: build/C/man2/shutdown.2:43
19594 msgid "shutdown - shut down part of a full-duplex connection"
19595 msgstr "shutdown - 全二重接続の一部を閉じる"
19596
19597 #. type: Plain text
19598 #: build/C/man2/shutdown.2:47
19599 msgid "B<int shutdown(int >I<sockfd>B<, int >I<how>B<);>"
19600 msgstr "B<int shutdown(int >I<sockfd>B<, int >I<how>B<);>"
19601
19602 #. type: Plain text
19603 #: build/C/man2/shutdown.2:69
19604 msgid ""
19605 "The B<shutdown>()  call causes all or part of a full-duplex connection on "
19606 "the socket associated with I<sockfd> to be shut down.  If I<how> is "
19607 "B<SHUT_RD>, further receptions will be disallowed.  If I<how> is B<SHUT_WR>, "
19608 "further transmissions will be disallowed.  If I<how> is B<SHUT_RDWR>, "
19609 "further receptions and transmissions will be disallowed."
19610 msgstr ""
19611 "B<shutdown>()  は、 I<sockfd> に関連づけられているソケットによる全二重接続 "
19612 "(full-duplex connection)  の一部または全てを閉じる。 I<how> が B<SHUT_RD> な"
19613 "らば、それ以降の受信を禁止する。 I<how> が B<SHUT_WR> ならば、それ以降の送信"
19614 "を禁止する。 I<how> が B<SHUT_RDWR> ならば、それ以降の送受信を禁止する。"
19615
19616 #. type: Plain text
19617 #: build/C/man2/shutdown.2:79
19618 msgid "I<sockfd> is not a valid descriptor."
19619 msgstr "I<sockfd> が有効なディスクリプターでない。"
19620
19621 #. type: Plain text
19622 #: build/C/man2/shutdown.2:84
19623 msgid "An invalid value was specified in I<how> (but see BUGS)."
19624 msgstr "I<how> に無効な値が指定された (バグが参照)。"
19625
19626 #. type: Plain text
19627 #: build/C/man2/shutdown.2:87
19628 msgid "The specified socket is not connected."
19629 msgstr "指定されたソケットは接続されていない。"
19630
19631 #. type: Plain text
19632 #: build/C/man2/shutdown.2:91
19633 msgid "I<sockfd> is a file, not a socket."
19634 msgstr "I<sockfd> がソケットでなくファイルである。"
19635
19636 #. type: Plain text
19637 #: build/C/man2/shutdown.2:95
19638 msgid ""
19639 "POSIX.1-2001, 4.4BSD (the B<shutdown>()  function call first appeared in "
19640 "4.2BSD)."
19641 msgstr ""
19642 "POSIX.1-2001, 4.4BSD (B<shutdown>()  関数コールは 4.2BSD で初めて登場した)。"
19643
19644 #. type: Plain text
19645 #: build/C/man2/shutdown.2:104
19646 msgid ""
19647 "The constants B<SHUT_RD>, B<SHUT_WR>, B<SHUT_RDWR> have the value 0, 1, 2, "
19648 "respectively, and are defined in I<E<lt>sys/socket.hE<gt>> since "
19649 "glibc-2.1.91."
19650 msgstr ""
19651 "B<SHUT_RD>, B<SHUT_WR>, B<SHUT_RDWR> の各定数 (それぞれ 0, 1, 2 の値を持つ) "
19652 "は glibc-2.1.91 以降、 I<E<lt>sys/socket.hE<gt>> で定義されている。"
19653
19654 #.  FIXME .
19655 #.  https://bugzilla.kernel.org/show_bug.cgi?id=47111
19656 #. type: Plain text
19657 #: build/C/man2/shutdown.2:113
19658 msgid ""
19659 "As currently implemented, checks for the validity of I<how> are done in "
19660 "domain-specific code, and not all domains perform these checks.  Most "
19661 "notably, UNIX domain sockets simply ignore invalid values; this may change "
19662 "in the future."
19663 msgstr ""
19664 "現在の実装では I<how> の妥当性チェックはドメイン固有のコードの中で行われてい"
19665 "るが、 すべてのドメインでこれらのチェックが行われている訳ではない。 中でも注"
19666 "意すべきは、 UNIX ドメインソケットでは無効な値は単に無視される点である。 これ"
19667 "は将来変更されるかもしれない。"
19668
19669 #. type: Plain text
19670 #: build/C/man2/shutdown.2:117
19671 msgid "B<connect>(2), B<socket>(2), B<socket>(7)"
19672 msgstr "B<connect>(2), B<socket>(2), B<socket>(7)"
19673
19674 #. type: TH
19675 #: build/C/man7/tcp.7:76
19676 #, no-wrap
19677 msgid "TCP"
19678 msgstr "TCP"
19679
19680 #. type: TH
19681 #: build/C/man7/tcp.7:76
19682 #, fuzzy, no-wrap
19683 #| msgid "2014-01-24"
19684 msgid "2015-01-10"
19685 msgstr "2014-01-24"
19686
19687 #. type: Plain text
19688 #: build/C/man7/tcp.7:79
19689 msgid "tcp - TCP protocol"
19690 msgstr "tcp - TCP プロトコル"
19691
19692 #. type: Plain text
19693 #: build/C/man7/tcp.7:85
19694 msgid "B<#include E<lt>netinet/tcp.hE<gt>>"
19695 msgstr "B<#include E<lt>netinet/tcp.hE<gt>>"
19696
19697 #. type: Plain text
19698 #: build/C/man7/tcp.7:87
19699 msgid "B<tcp_socket = socket(AF_INET, SOCK_STREAM, 0);>"
19700 msgstr "B<tcp_socket = socket(AF_INET, SOCK_STREAM, 0);>"
19701
19702 #. type: Plain text
19703 #: build/C/man7/tcp.7:100
19704 msgid ""
19705 "This is an implementation of the TCP protocol defined in RFC\\ 793, RFC\\ "
19706 "1122 and RFC\\ 2001 with the NewReno and SACK extensions.  It provides a "
19707 "reliable, stream-oriented, full-duplex connection between two sockets on top "
19708 "of B<ip>(7), for both v4 and v6 versions.  TCP guarantees that the data "
19709 "arrives in order and retransmits lost packets.  It generates and checks a "
19710 "per-packet checksum to catch transmission errors.  TCP does not preserve "
19711 "record boundaries."
19712 msgstr ""
19713 "これは RFC\\ 793, RFC\\ 1122, RFC\\ 2001 で定義されている TCP プロトコルを "
19714 "NewReno 拡張と SACK 拡張を含めて実装したものである。 TCP は、 B<ip>(7)  上の"
19715 "二つのソケット間に、信頼性の高い、ストリーム指向の全二重 (full-duplex) 通信を"
19716 "提供する。 v4 と v6 の両方のバージョンの B<ip>(7)  に対応している。 TCP は、"
19717 "データが順序を守って到着すること、途中で失われたパケットが 再送されることを保"
19718 "証する。また、パケット単位にチェックサムを 生成、検査することで、転送エラーを"
19719 "検知する。 TCP はレコード境界 (record boundary) を保存しない。"
19720
19721 #. type: Plain text
19722 #: build/C/man7/tcp.7:119
19723 msgid ""
19724 "A newly created TCP socket has no remote or local address and is not fully "
19725 "specified.  To create an outgoing TCP connection use B<connect>(2)  to "
19726 "establish a connection to another TCP socket.  To receive new incoming "
19727 "connections, first B<bind>(2)  the socket to a local address and port and "
19728 "then call B<listen>(2)  to put the socket into the listening state.  After "
19729 "that a new socket for each incoming connection can be accepted using "
19730 "B<accept>(2).  A socket which has had B<accept>(2)  or B<connect>(2)  "
19731 "successfully called on it is fully specified and may transmit data.  Data "
19732 "cannot be transmitted on listening or not yet connected sockets."
19733 msgstr ""
19734 "新しく生成されたばかりの TCP ソケットは、 リモートアドレスかローカルアドレス"
19735 "がなく、 したがって詳細が完全に指定された状態ではない。 外部への TCP 接続を生"
19736 "成するには、 B<connect>(2)  を用いてもう一方の TCP ソケットへの接続を確立す"
19737 "る。 外部からの新たな接続を受けるには、まず B<bind>(2)  でソケットをローカル"
19738 "なアドレスとポートに結びつけ、次に B<listen>(2)  を呼んでソケットを接続待ち受"
19739 "け状態にする。 その後、到着した接続要求に対して B<accept>(2)  を用い、ソケッ"
19740 "トを新しく生成する。 B<accept>(2)  または B<connect>(2)  のコールが成功したソ"
19741 "ケットは、詳細が完全に指定された状態となり、 データのやりとりが可能となる。接"
19742 "続待ち受け状態の (listening) ソケットや、 接続 (connect) されていないソケット"
19743 "を通してデータをやりとりすることはできない。"
19744
19745 #. type: Plain text
19746 #: build/C/man7/tcp.7:139
19747 msgid ""
19748 "Linux supports RFC\\ 1323 TCP high performance extensions.  These include "
19749 "Protection Against Wrapped Sequence Numbers (PAWS), Window Scaling and "
19750 "Timestamps.  Window scaling allows the use of large (E<gt> 64K) TCP windows "
19751 "in order to support links with high latency or bandwidth.  To make use of "
19752 "them, the send and receive buffer sizes must be increased.  They can be set "
19753 "globally with the I</proc/sys/net/ipv4/tcp_wmem> and I</proc/sys/net/ipv4/"
19754 "tcp_rmem> files, or on individual sockets by using the B<SO_SNDBUF> and "
19755 "B<SO_RCVBUF> socket options with the B<setsockopt>(2)  call."
19756 msgstr ""
19757 "Linux は RFC\\ 1323 の TCP high performance 拡張をサポートしている。 これに"
19758 "は、Protection Against Wrapped Sequence Numbers (PAWS)、 ウィンドウスケーリン"
19759 "グ、タイムスタンプなどが含まれている。 ウィンドウスケーリングを利用すると、遅"
19760 "延または帯域の大きな接続で、 (64K 以上の) 巨大な TCP ウィンドウを用いることが"
19761 "可能となる。 これを用いるには、送受信のバッファサイズを大きくしなければならな"
19762 "い。 システム全体に対するバッファサイズの変更は、ファイル I</proc/sys/net/"
19763 "ipv4/tcp_wmem> と I</proc/sys/net/ipv4/tcp_rmem> を用いて行うことができる。 "
19764 "また、個々のソケットのみを大きくしたい場合には、 B<SO_SNDBUF> や "
19765 "B<SO_RCVBUF> ソケットオプションを用いて B<setsockopt>(2)  コールを用いて設定"
19766 "すればよい。"
19767
19768 #. type: Plain text
19769 #: build/C/man7/tcp.7:170
19770 msgid ""
19771 "The maximum sizes for socket buffers declared via the B<SO_SNDBUF> and "
19772 "B<SO_RCVBUF> mechanisms are limited by the values in the I</proc/sys/net/"
19773 "core/rmem_max> and I</proc/sys/net/core/wmem_max> files.  Note that TCP "
19774 "actually allocates twice the size of the buffer requested in the "
19775 "B<setsockopt>(2)  call, and so a succeeding B<getsockopt>(2)  call will not "
19776 "return the same size of buffer as requested in the B<setsockopt>(2)  call.  "
19777 "TCP uses the extra space for administrative purposes and internal kernel "
19778 "structures, and the I</proc> file values reflect the larger sizes compared "
19779 "to the actual TCP windows.  On individual connections, the socket buffer "
19780 "size must be set prior to the B<listen>(2)  or B<connect>(2)  calls in order "
19781 "to have it take effect.  See B<socket>(7)  for more information."
19782 msgstr ""
19783 "B<SO_SNDBUF> や B<SO_RCVBUF> のメカニズムで宣言されるソケットバッファの最大サ"
19784 "イズは、ファイル I</proc/sys/net/core/rmem_max> や I</proc/sys/net/core/"
19785 "wmem_max> で指定されたシステムとしての制限値を超えることはできない。 TCP は実"
19786 "際には B<setsockopt>(2)  コールが要求したバッファサイズの二倍を割り当てる。 "
19787 "そのため、この後で B<getsockopt>(2)  コールを行うと、 B<setsockopt>(2)  で要"
19788 "求したバッファサイズとは異なる値が返る。 TCP はこの余分な空間を、管理目的や"
19789 "カーネル内部の構造体に用いている。 I</proc> ファイルの値は、これらを反映し、"
19790 "実際の TCP ウィンドウよりも大きな値となる。 各接続におけるソケットのバッファ"
19791 "サイズ変更を有効にするには、 B<listen>(2)  や B<connect>(2)  コールの前に設定"
19792 "しなければならない。 より詳しい情報は B<socket>(7)  を見よ。"
19793
19794 #. type: Plain text
19795 #: build/C/man7/tcp.7:202
19796 msgid ""
19797 "TCP supports urgent data.  Urgent data is used to signal the receiver that "
19798 "some important message is part of the data stream and that it should be "
19799 "processed as soon as possible.  To send urgent data specify the B<MSG_OOB> "
19800 "option to B<send>(2).  When urgent data is received, the kernel sends a "
19801 "B<SIGURG> signal to the process or process group that has been set as the "
19802 "socket \"owner\" using the B<SIOCSPGRP> or B<FIOSETOWN> ioctls (or the "
19803 "POSIX.1-2001-specified B<fcntl>(2)  B<F_SETOWN> operation).  When the "
19804 "B<SO_OOBINLINE> socket option is enabled, urgent data is put into the normal "
19805 "data stream (a program can test for its location using the B<SIOCATMARK> "
19806 "ioctl described below), otherwise it can be received only when the "
19807 "B<MSG_OOB> flag is set for B<recv>(2)  or B<recvmsg>(2)."
19808 msgstr ""
19809 "TCP は緊急データ (urgent data) をサポートしている。緊急データは 何らかの重要"
19810 "なメッセージがデータストリームに含まれていること、 そのデータをできるだけ早く"
19811 "処理すべきこと、を受信者に伝えるために用いられる。 緊急データを送るには、 "
19812 "B<send>(2)  に B<MSG_OOB> オプションを指定する。 緊急データを受信すると、カー"
19813 "ネルは B<SIGURG> シグナルを送信する。送信先は B<SIOCSPGRP> や B<FIOSETOWN> "
19814 "ioctl (や POSIX.1-2001 で規定されている B<fcntl>(2)  B<F_SETOWN> 操作) を用い"
19815 "てそのソケットの「所有者」として設定された プロセスかプロセスグループであ"
19816 "る。 B<SO_OOBINLINE> ソケットオプションが有効になっていると、緊急データは 通"
19817 "常のデータストリームの中に混ぜて送られる (プログラムは下記の B<SIOCATMARK> "
19818 "ioctl を使って緊急データの場所を調べることができる)。 無効になっている場合に"
19819 "は、 B<recv>(2)  や B<recvmsg>(2)  で B<MSG_OOB> フラグがセットされているとき"
19820 "にのみ、緊急データを受信できる。"
19821
19822 #. type: Plain text
19823 #: build/C/man7/tcp.7:210
19824 msgid ""
19825 "Linux 2.4 introduced a number of changes for improved throughput and "
19826 "scaling, as well as enhanced functionality.  Some of these features include "
19827 "support for zero-copy B<sendfile>(2), Explicit Congestion Notification, new "
19828 "management of TIME_WAIT sockets, keep-alive socket options and support for "
19829 "Duplicate SACK extensions."
19830 msgstr ""
19831 "Linux 2.4 では多くの変更がなされ、 スループットとスケーリングが向上し、機能も"
19832 "高まった。 これらの機能には、ゼロコピー B<sendfile>(2)、 Explicit Congestion "
19833 "Notification、 TIME_WAIT ソケットの新しい管理法、 keep-alive ソケットオプショ"
19834 "ン、 Duplicate SACK 拡張のサポートなどがある。"
19835
19836 #. type: SS
19837 #: build/C/man7/tcp.7:210
19838 #, no-wrap
19839 msgid "Address formats"
19840 msgstr "アドレスのフォーマット"
19841
19842 #. type: Plain text
19843 #: build/C/man7/tcp.7:219
19844 msgid ""
19845 "TCP is built on top of IP (see B<ip>(7)).  The address formats defined by "
19846 "B<ip>(7)  apply to TCP.  TCP supports point-to-point communication only; "
19847 "broadcasting and multicasting are not supported."
19848 msgstr ""
19849 "TCP は IP の上層に構築されている (B<ip>(7)  を参照)。 B<ip>(7)  に定義されて"
19850 "いるアドレスフォーマットは TCP にも適用される。 TCP は point-to-point の通信"
19851 "だけをサポートする。 ブロードキャストやマルチキャストはサポートしない。"
19852
19853 #. type: Plain text
19854 #: build/C/man7/tcp.7:231
19855 msgid ""
19856 "System-wide TCP parameter settings can be accessed by files in the directory "
19857 "I</proc/sys/net/ipv4/>.  In addition, most IP I</proc> interfaces also apply "
19858 "to TCP; see B<ip>(7).  Variables described as I<Boolean> take an integer "
19859 "value, with a nonzero value (\"true\") meaning that the corresponding option "
19860 "is enabled, and a zero value (\"false\")  meaning that the option is "
19861 "disabled."
19862 msgstr ""
19863 "システム全体に対する TCP パラメータの設定には、 I</proc/sys/net/ipv4/> ディレ"
19864 "クトリ内のファイルによりアクセスできる。 さらに、IP に関連する I</proc> イン"
19865 "タフェースのほとんどは TCP についても適用される。 B<ip>(7)  を参照のこと。 "
19866 "I<Boolean> は整数値で、 0 以外の値 (\"true\") は対応するオプションが有効、 0 "
19867 "値 (\"false\") は無効、であることを意味する。"
19868
19869 #. type: TP
19870 #: build/C/man7/tcp.7:231
19871 #, no-wrap
19872 msgid "I<tcp_abc> (Integer; default: 0; since Linux 2.6.15)"
19873 msgstr "I<tcp_abc> (Integer; default: 0; Linux 2.6.15 以降)"
19874
19875 #.  The following is from 2.6.28-rc4: Documentation/networking/ip-sysctl.txt
19876 #. type: Plain text
19877 #: build/C/man7/tcp.7:239
19878 msgid ""
19879 "Control the Appropriate Byte Count (ABC), defined in RFC 3465.  ABC is a way "
19880 "of increasing the congestion window (I<cwnd>)  more slowly in response to "
19881 "partial acknowledgments.  Possible values are:"
19882 msgstr ""
19883 "RFC 3465 で定義されている Appropriate Byte Count (ABC) を制御する。 ABC は、"
19884 "部分的な ACK に応じた輻輳ウィンドウ (I<cwnd>)  の増加をより緩やかにする方法で"
19885 "ある。 以下の値を指定できる。"
19886
19887 #. type: IP
19888 #: build/C/man7/tcp.7:240 build/C/man7/tcp.7:428 build/C/man7/tcp.7:449
19889 #: build/C/man7/tcp.7:593
19890 #, no-wrap
19891 msgid "0"
19892 msgstr "0"
19893
19894 #. type: Plain text
19895 #: build/C/man7/tcp.7:244
19896 msgid "increase I<cwnd> once per acknowledgment (no ABC)"
19897 msgstr "ACK を受信する毎に I<cwnd> を増やす (ABC なし)。"
19898
19899 #. type: IP
19900 #: build/C/man7/tcp.7:244 build/C/man7/tcp.7:430 build/C/man7/tcp.7:456
19901 #: build/C/man7/tcp.7:595
19902 #, no-wrap
19903 msgid "1"
19904 msgstr "1"
19905
19906 #. type: Plain text
19907 #: build/C/man7/tcp.7:248
19908 msgid "increase I<cwnd> once per acknowledgment of full sized segment"
19909 msgstr "フルサイズのセグメントの ACK を受信する毎に I<cwnd> を増やす。"
19910
19911 #. type: IP
19912 #: build/C/man7/tcp.7:248 build/C/man7/tcp.7:432 build/C/man7/tcp.7:463
19913 #: build/C/man7/tcp.7:597
19914 #, no-wrap
19915 msgid "2"
19916 msgstr "2"
19917
19918 #. type: Plain text
19919 #: build/C/man7/tcp.7:253
19920 msgid ""
19921 "allow increase I<cwnd> by two if acknowledgment is of two segments to "
19922 "compensate for delayed acknowledgments."
19923 msgstr ""
19924 "ACK が遅延 ACK (delayed acknowledgment) を相殺するための 2 セグメントに 対す"
19925 "る ACK の場合に、 I<cwnd> を 2 増やすことができる。"
19926
19927 #. type: TP
19928 #: build/C/man7/tcp.7:254
19929 #, no-wrap
19930 msgid "I<tcp_abort_on_overflow> (Boolean; default: disabled; since Linux 2.4)"
19931 msgstr "I<tcp_abort_on_overflow> (ブール値; デフォルト: 無効; Linux 2.4 以降)"
19932
19933 #.  Since 2.3.41
19934 #. type: Plain text
19935 #: build/C/man7/tcp.7:266
19936 msgid ""
19937 "Enable resetting connections if the listening service is too slow and unable "
19938 "to keep up and accept them.  It means that if overflow occurred due to a "
19939 "burst, the connection will recover.  Enable this option I<only> if you are "
19940 "really sure that the listening daemon cannot be tuned to accept connections "
19941 "faster.  Enabling this option can harm the clients of your server."
19942 msgstr ""
19943 "接続を待ち受けているサービスが遅すぎて、受信についていけない場合に、 接続をリ"
19944 "セットできるようにする。 これを用いると、バーストによってオーバーフローが起"
19945 "こったときに、 接続を回復できるようになる。このオプションを用いるのは、 受信"
19946 "デーモンを高速化できない場合に「限定する」こと。 このオプションを用いると、そ"
19947 "のサーバに接続しているクライアント にとっては害になることがある。"
19948
19949 #. type: TP
19950 #: build/C/man7/tcp.7:266
19951 #, no-wrap
19952 msgid "I<tcp_adv_win_scale> (integer; default: 2; since Linux 2.4)"
19953 msgstr "I<tcp_adv_win_scale> (integer; default: 2; Linux 2.4 以降)"
19954
19955 #.  Since 2.4.0-test7
19956 #. type: Plain text
19957 #: build/C/man7/tcp.7:278
19958 msgid ""
19959 "Count buffering overhead as I<bytes/2^tcp_adv_win_scale>, if "
19960 "I<tcp_adv_win_scale> is greater than 0; or I<bytes-bytes/2^(-"
19961 "tcp_adv_win_scale)>, if I<tcp_adv_win_scale> is less than or equal to zero."
19962 msgstr ""
19963 "バッファリングのオーバーヘッドの計算方法を、 I<tcp_adv_win_scale> が正の場合"
19964 "は I<bytes/2^tcp_adv_win_scale> に、 I<tcp_adv_win_scale> が負か 0 の場合は "
19965 "I<bytes-bytes/2^(-tcp_adv_win_scale)> とする。"
19966
19967 #. type: Plain text
19968 #: build/C/man7/tcp.7:291
19969 msgid ""
19970 "The socket receive buffer space is shared between the application and "
19971 "kernel.  TCP maintains part of the buffer as the TCP window, this is the "
19972 "size of the receive window advertised to the other end.  The rest of the "
19973 "space is used as the \"application\" buffer, used to isolate the network "
19974 "from scheduling and application latencies.  The I<tcp_adv_win_scale> default "
19975 "value of 2 implies that the space used for the application buffer is one "
19976 "fourth that of the total."
19977 msgstr ""
19978 "ソケットの受信バッファ空間はアプリケーションとカーネルで共有される。 TCP は"
19979 "バッファの一部を TCP ウィンドウとして管理し、 これを受信ウィンドウとして接続"
19980 "の他端に通知する。 空間の残りは「アプリケーション」バッファとして用いられ、 "
19981 "スケジューリングやアプリケーションの遅延からネットワークを隔離する。 "
19982 "I<tcp_adv_win_scale> のデフォルト値は 2 であり、 この場合アプリケーションバッ"
19983 "ファは全体の 1/4 になる。"
19984
19985 #. type: TP
19986 #: build/C/man7/tcp.7:291
19987 #, no-wrap
19988 msgid "I<tcp_allowed_congestion_control> (String; default: see text; since Linux 2.4.20)"
19989 msgstr "I<tcp_allowed_congestion_control> (String; default: see text; Linux 2.4.20 以降)"
19990
19991 #.  The following is from 2.6.28-rc4: Documentation/networking/ip-sysctl.txt
19992 #. type: Plain text
19993 #: build/C/man7/tcp.7:304
19994 msgid ""
19995 "Show/set the congestion control algorithm choices available to unprivileged "
19996 "processes (see the description of the B<TCP_CONGESTION> socket option).  The "
19997 "items in the list are separated by white space and terminated by a newline "
19998 "character.  The list is a subset of those listed in "
19999 "I<tcp_available_congestion_control>.  The default value for this list is "
20000 "\"reno\" plus the default setting of I<tcp_congestion_control>."
20001 msgstr ""
20002 "非特権プロセスで利用できる輻輳制御アルゴリズムの選択肢を表示/設定する "
20003 "(B<TCP_CONGESTION> ソケットオプションの説明を参照のこと)。 このリストの要素は"
20004 "ホワイトスペースで区切られ、改行文字で終端される。 このリストは "
20005 "I<tcp_available_congestion_control> で表示されるリストの部分集合となる。 この"
20006 "リストのデフォルト値は、\"reno\" と I<tcp_congestion_control> のデフォルト設"
20007 "定をあわせたものとなる。"
20008
20009 #. type: TP
20010 #: build/C/man7/tcp.7:304
20011 #, no-wrap
20012 msgid "I<tcp_autocorking> (Boolean; default: enabled; since Linux 3.14)"
20013 msgstr "I<tcp_autocorking> (ブール値; デフォルト: 有効; Linux 3.14 以降)"
20014
20015 #.  commit f54b311142a92ea2e42598e347b84e1655caf8e3
20016 #.  Text heavily based on Documentation/networking/ip-sysctl.txt
20017 #. type: Plain text
20018 #: build/C/man7/tcp.7:321
20019 msgid ""
20020 "If this option is enabled, the kernel tries to coalesce small writes (from "
20021 "consecutive B<write>(2)  and B<sendmsg>(2)  calls) as much as possible, in "
20022 "order to decrease the total number of sent packets.  Coalescing is done if "
20023 "at least one prior packet for the flow is waiting in Qdisc queues or device "
20024 "transmit queue.  Applications can still use the B<TCP_CORK> socket option to "
20025 "obtain optimal behavior when they know how/when to uncork their sockets."
20026 msgstr ""
20027 "このオプションを有効にすると、 送信総パケット数を減らすため、 カーネルは小さ"
20028 "な write (連続する B<write>(2) や B<sendmsg>(2) の呼び出し) を可能な限り結合"
20029 "しようとする。 パケットの結合が行われるのは、そのフローの前のパケットが少なく"
20030 "とも一つは qdisc キューかデバイスの送信キューで送信待ちの場合である。 このオ"
20031 "プションが有効な場合でも B<TCP_CORK> オプションを使うことができ、アプリケー"
20032 "ションがソケットの「コルク解除」(送信待ち状態の解除) をいつどのように行えばよ"
20033 "いか分かっている場合には、最適な動作をさせることができる。"
20034
20035 #. type: TP
20036 #: build/C/man7/tcp.7:321
20037 #, no-wrap
20038 msgid "I<tcp_available_congestion_control> (String; read-only; since Linux 2.4.20)"
20039 msgstr "I<tcp_available_congestion_control> (String; read-only; Linux 2.4.20 以降)"
20040
20041 #.  The following is from 2.6.28-rc4: Documentation/networking/ip-sysctl.txt
20042 #. type: Plain text
20043 #: build/C/man7/tcp.7:332
20044 msgid ""
20045 "Show a list of the congestion-control algorithms that are registered.  The "
20046 "items in the list are separated by white space and terminated by a newline "
20047 "character.  This list is a limiting set for the list in "
20048 "I<tcp_allowed_congestion_control>.  More congestion-control algorithms may "
20049 "be available as modules, but not loaded."
20050 msgstr ""
20051 "登録されている輻輳制御アルゴリズムのリストを表示する。 このリストの要素はホワ"
20052 "イトスペースで区切られ、改行文字で終端される。 このリストに載っているものだけ"
20053 "が、 I<tcp_allowed_congestion_control> に表示される。 他の輻輳制御アルゴリズ"
20054 "ムがモジュールとして利用可能だが、 モジュールがロードされていないこともある。"
20055
20056 #. type: TP
20057 #: build/C/man7/tcp.7:332
20058 #, no-wrap
20059 msgid "I<tcp_app_win> (integer; default: 31; since Linux 2.4)"
20060 msgstr "I<tcp_app_win> (integer; default: 31; Linux 2.4 以降)"
20061
20062 #.  Since 2.4.0-test7
20063 #. type: Plain text
20064 #: build/C/man7/tcp.7:337
20065 msgid ""
20066 "This variable defines how many bytes of the TCP window are reserved for "
20067 "buffering overhead."
20068 msgstr ""
20069 "この変数は、TCP ウィンドウの何バイト分を バッファリングのオーバーヘッド用に予"
20070 "約するかを指定する。"
20071
20072 #.  The following is from 2.6.28-rc4: Documentation/networking/ip-sysctl.txt
20073 #. type: Plain text
20074 #: build/C/man7/tcp.7:343
20075 msgid ""
20076 "A maximum of (I<window/2^tcp_app_win>, mss) bytes in the window are reserved "
20077 "for the application buffer.  A value of 0 implies that no amount is reserved."
20078 msgstr ""
20079 "そのウィンドウの I<window/2^tcp_app_win> と mss の大きいほう (バイト単位)  が"
20080 "アプリケーションバッファとして予約される。 0 を指定すると一切予約領域を取らな"
20081 "い。"
20082
20083 #. type: TP
20084 #: build/C/man7/tcp.7:343
20085 #, no-wrap
20086 msgid "I<tcp_base_mss> (Integer; default: 512; since Linux 2.6.17)"
20087 msgstr "I<tcp_base_mss> (Integer; default: 512; Linux 2.6.17 以降)"
20088
20089 #.  The following is from 2.6.12: Documentation/networking/ip-sysctl.txt
20090 #. type: Plain text
20091 #: build/C/man7/tcp.7:352
20092 msgid ""
20093 "The initial value of I<search_low> to be used by the packetization layer "
20094 "Path MTU discovery (MTU probing).  If MTU probing is enabled, this is the "
20095 "initial MSS used by the connection."
20096 msgstr ""
20097 "パケット化レイヤの Path MTU discovery (MTU probing) で、 I<search_low> の初期"
20098 "値と使用される値。 MTU probing が有効な場合、この値はその接続の MSS の初期値"
20099 "となる。"
20100
20101 #. type: TP
20102 #: build/C/man7/tcp.7:352
20103 #, no-wrap
20104 msgid "I<tcp_bic> (Boolean; default: disabled; Linux 2.4.27/2.6.6 to 2.6.13)"
20105 msgstr "I<tcp_bic> (ブール値; デフォルト: 無効; Linux 2.4.27/2.6.6 から 2.6.13 まで)"
20106
20107 #.  The following is from 2.6.12: Documentation/networking/ip-sysctl.txt
20108 #. type: Plain text
20109 #: build/C/man7/tcp.7:366
20110 msgid ""
20111 "Enable BIC TCP congestion control algorithm.  BIC-TCP is a sender-side only "
20112 "change that ensures a linear RTT fairness under large windows while offering "
20113 "both scalability and bounded TCP-friendliness.  The protocol combines two "
20114 "schemes called additive increase and binary search increase.  When the "
20115 "congestion window is large, additive increase with a large increment ensures "
20116 "linear RTT fairness as well as good scalability.  Under small congestion "
20117 "windows, binary search increase provides TCP friendliness."
20118 msgstr ""
20119 "BIC TCP 輻輳制御アルゴリズムを有効にする。 BIC-TCP は送信側のみの変更で、 ス"
20120 "ケーラビリティと TCP 親和性 (friendliness) の両方を提供しつつ、 大きなウィン"
20121 "ドウの下での線形な RTT 公平性を保証するものである。 このプロトコルでは "
20122 "additive increase (追加的な増加) と binary search increase (二分探索増加) と"
20123 "いわれる二つの仕組みを 組み合わせている。輻輳ウィンドウが大きいときは、増分の"
20124 "大きい additive increase により、スケーラビリティを確保しながら 線形な RTT 公"
20125 "平性を保証する。 輻輳ウィンドウが小さいときには binary search increase によ"
20126 "り TCP 親和性を達成している。"
20127
20128 #. type: TP
20129 #: build/C/man7/tcp.7:366
20130 #, no-wrap
20131 msgid "I<tcp_bic_low_window> (integer; default: 14; Linux 2.4.27/2.6.6 to 2.6.13)"
20132 msgstr "I<tcp_bic_low_window> (integer; default: 14; Linux 2.4.27/2.6.6 以降 2.6.13 まで)"
20133
20134 #.  The following is from 2.6.12: Documentation/networking/ip-sysctl.txt
20135 #. type: Plain text
20136 #: build/C/man7/tcp.7:373
20137 msgid ""
20138 "Set the threshold window (in packets) where BIC TCP starts to adjust the "
20139 "congestion window.  Below this threshold BIC TCP behaves the same as the "
20140 "default TCP Reno."
20141 msgstr ""
20142 "BIC TCP が輻輳ウィンドウの調整を開始する閾値ウィンドウ (パケット単位)  を設定"
20143 "する。この閾値を下回る場合、BIC TCP はデフォルトの TCP Reno と 同じ動作をす"
20144 "る。"
20145
20146 #. type: TP
20147 #: build/C/man7/tcp.7:373
20148 #, no-wrap
20149 msgid "I<tcp_bic_fast_convergence> (Boolean; default: enabled; Linux 2.4.27/2.6.6 to 2.6.13)"
20150 msgstr "I<tcp_bic_fast_convergence> (ブール値; デフォルト: 有効; Linux 2.4.27/2.6.6 以降 2.6.13 まで)"
20151
20152 #. type: Plain text
20153 #: build/C/man7/tcp.7:377
20154 msgid ""
20155 "Force BIC TCP to more quickly respond to changes in congestion window.  "
20156 "Allows two flows sharing the same connection to converge more rapidly."
20157 msgstr ""
20158 "BIC TCP が輻輳ウィンドウの変化により速く反応するようにする。 同じコネクション"
20159 "を共有する二つのフローが一つにまとまるのを より速く行うようにする。"
20160
20161 #. type: TP
20162 #: build/C/man7/tcp.7:377
20163 #, no-wrap
20164 msgid "I<tcp_congestion_control> (String; default: see text; since Linux 2.4.13)"
20165 msgstr "I<tcp_congestion_control> (String; default: 説明参照; Linux 2.4.13 以降)"
20166
20167 #.  The following is from 2.6.28-rc4: Documentation/networking/ip-sysctl.txt
20168 #. type: Plain text
20169 #: build/C/man7/tcp.7:384
20170 msgid ""
20171 "Set the default congestion-control algorithm to be used for new "
20172 "connections.  The algorithm \"reno\" is always available, but additional "
20173 "choices may be available depending on kernel configuration.  The default "
20174 "value for this file is set as part of kernel configuration."
20175 msgstr ""
20176 "新規の接続で使用されるデフォルトの輻輳制御アルゴリズムを設定する。 \"reno\" "
20177 "アルゴリズムは常に利用可能だが、 カーネル設定次第では別の選択肢が利用できるこ"
20178 "ともある。 このファイルのデフォルト値はカーネル設定の一つとして設定される。"
20179
20180 #. type: TP
20181 #: build/C/man7/tcp.7:384
20182 #, no-wrap
20183 msgid "I<tcp_dma_copybreak> (integer; default: 4096; since Linux 2.6.24)"
20184 msgstr "I<tcp_dma_copybreak> (integer; default: 4096; Linux 2.6.24 以降)"
20185
20186 #. type: Plain text
20187 #: build/C/man7/tcp.7:391
20188 msgid ""
20189 "Lower limit, in bytes, of the size of socket reads that will be offloaded to "
20190 "a DMA copy engine, if one is present in the system and the kernel was "
20191 "configured with the B<CONFIG_NET_DMA> option."
20192 msgstr ""
20193 "システムに DMA コピーエンジンが存在し、カーネルで B<CONFIG_NET_DMA> オプショ"
20194 "ンが有効になっている場合に、 DMA コピーエンジンにオフロードされるソケットの読"
20195 "み込みサイズの下限値 (バイト単位)。"
20196
20197 #. type: TP
20198 #: build/C/man7/tcp.7:391
20199 #, no-wrap
20200 msgid "I<tcp_dsack> (Boolean; default: enabled; since Linux 2.4)"
20201 msgstr "I<tcp_dsack> (ブール値; デフォルト: 有効; Linux 2.4 以降)"
20202
20203 #.  Since 2.4.0-test7
20204 #. type: Plain text
20205 #: build/C/man7/tcp.7:395
20206 msgid "Enable RFC\\ 2883 TCP Duplicate SACK support."
20207 msgstr "RFC\\ 2883 の TCP Duplicate SACK のサポートを有効にする。"
20208
20209 #. type: TP
20210 #: build/C/man7/tcp.7:395
20211 #, no-wrap
20212 msgid "I<tcp_ecn> (Boolean; default: disabled; since Linux 2.4)"
20213 msgstr "I<tcp_ecn> (ブール値; デフォルト: 無効; Linux 2.4 以降)"
20214
20215 #.  Since 2.4.0-test7
20216 #. type: Plain text
20217 #: build/C/man7/tcp.7:402
20218 msgid ""
20219 "Enable RFC\\ 2884 Explicit Congestion Notification.  When enabled, "
20220 "connectivity to some destinations could be affected due to older, "
20221 "misbehaving routers along the path causing connections to be dropped."
20222 msgstr ""
20223 "RFC\\ 2884 の Explicit Congestion Notification を有効にする。 これを有効にす"
20224 "ると、間違った振舞いをする古いルータが 経路の途中にあるような接続先に対して影"
20225 "響が生じ、 場合によっては接続が落ちるかもしれない。"
20226
20227 #. type: TP
20228 #: build/C/man7/tcp.7:402
20229 #, no-wrap
20230 msgid "I<tcp_fack> (Boolean; default: enabled; since Linux 2.2)"
20231 msgstr "I<tcp_fack> (ブール値; デフォルト: 有効; Linux 2.2 以降)"
20232
20233 #.  Since 2.1.92
20234 #. type: Plain text
20235 #: build/C/man7/tcp.7:406
20236 msgid "Enable TCP Forward Acknowledgement support."
20237 msgstr "TCP Forward Acknowledgement のサポートを有効にする。"
20238
20239 #. type: TP
20240 #: build/C/man7/tcp.7:406
20241 #, no-wrap
20242 msgid "I<tcp_fin_timeout> (integer; default: 60; since Linux 2.2)"
20243 msgstr "I<tcp_fin_timeout> (integer; default: 60; Linux 2.2 以降)"
20244
20245 #.  Since 2.1.53
20246 #.  The following is from 2.6.12: Documentation/networking/ip-sysctl.txt
20247 #. type: Plain text
20248 #: build/C/man7/tcp.7:416
20249 msgid ""
20250 "This specifies how many seconds to wait for a final FIN packet before the "
20251 "socket is forcibly closed.  This is strictly a violation of the TCP "
20252 "specification, but required to prevent denial-of-service attacks.  In Linux "
20253 "2.2, the default value was 180."
20254 msgstr ""
20255 "ソケットを強制的にクローズする前に、 最後の FIN パケットを待つ時間を秒単位で"
20256 "指定する。 これは厳密には TCP の仕様を満たしていないが、 DoS 攻撃 (denial of "
20257 "service attack) から身を守るために必要である。 Linux 2.2 ではデフォルト値は "
20258 "180 であった。"
20259
20260 #. type: TP
20261 #: build/C/man7/tcp.7:416
20262 #, no-wrap
20263 msgid "I<tcp_frto> (integer; default: 0; since Linux 2.4.21/2.6)"
20264 msgstr "I<tcp_frto> (integer; default: 0; Linux 2.4.21/2.6 以降)"
20265
20266 #.  Since 2.4.21/2.5.43
20267 #. type: Plain text
20268 #: build/C/man7/tcp.7:425
20269 msgid ""
20270 "Enable F-RTO, an enhanced recovery algorithm for TCP retransmission timeouts "
20271 "(RTOs).  It is particularly beneficial in wireless environments where packet "
20272 "loss is typically due to random radio interference rather than intermediate "
20273 "router congestion.  See RFC 4138 for more details."
20274 msgstr ""
20275 "F-RTO を有効にする。F-RTO は TCP 再送タイムアウト (RTO) からの 復旧性能を向上"
20276 "させたアルゴリズムである。 この機能は無線環境で特に効果を発揮する。 無線環境"
20277 "では、通常は、中間ルータの輻輳ではなくランダムな無線の干渉 によりパケットロス"
20278 "が発生する。 詳細は RFC\\ 4138 を参照。"
20279
20280 #. type: Plain text
20281 #: build/C/man7/tcp.7:427
20282 msgid "This file can have one of the following values:"
20283 msgstr "このファイルは以下のいずれかの値を取ることができる。"
20284
20285 #. type: Plain text
20286 #: build/C/man7/tcp.7:430
20287 msgid "Disabled."
20288 msgstr "F-RTO を無効にする。"
20289
20290 #. type: Plain text
20291 #: build/C/man7/tcp.7:432
20292 msgid "The basic version F-RTO algorithm is enabled."
20293 msgstr "基本版の F-RTO アルゴリズムを有効にする。"
20294
20295 #. type: Plain text
20296 #: build/C/man7/tcp.7:437
20297 msgid ""
20298 "Enable SACK-enhanced F-RTO if flow uses SACK.  The basic version can be used "
20299 "also when SACK is in use though in that case scenario(s) exists where F-RTO "
20300 "interacts badly with the packet counting of the SACK-enabled TCP flow."
20301 msgstr ""
20302 "そのフローで SACK を使用する場合、SACK 拡張版の F-RTO を有効にする。 基本版"
20303 "の F-RTO も SACK が使用されている場合にも使用できるが、 基本版の場合には F-"
20304 "RTO が SACK が有効になった TCP フローでの パケット数計測と、相性が悪く相互干"
20305 "渉が起こる場面が存在する。"
20306
20307 #. type: Plain text
20308 #: build/C/man7/tcp.7:441
20309 msgid ""
20310 "Before Linux 2.6.22, this parameter was a Boolean value, supporting just "
20311 "values 0 and 1 above."
20312 msgstr ""
20313 "Linu 2.6.22 より前では、このパラメータはブール値であり、 上記の 0 と 1 のみを"
20314 "サポートしていた。"
20315
20316 #. type: TP
20317 #: build/C/man7/tcp.7:441
20318 #, no-wrap
20319 msgid "I<tcp_frto_response> (integer; default: 0; since Linux 2.6.22)"
20320 msgstr "I<tcp_frto_response> (integer; default: 0; Linux 2.6.22 以降)"
20321
20322 #. type: Plain text
20323 #: build/C/man7/tcp.7:448
20324 msgid ""
20325 "When F-RTO has detected that a TCP retransmission timeout was spurious (i.e, "
20326 "the timeout would have been avoided had TCP set a longer retransmission "
20327 "timeout), TCP has several options concerning what to do next.  Possible "
20328 "values are:"
20329 msgstr ""
20330 "F-RTO が TCP 再送タイムアウトが偽物だと検出した場合 (つまり、TCP がもっと長い"
20331 "再送タイムアウトを設定していれば タイムアウトが避けられた場合)、 次にどうする"
20332 "かに関して選択肢がいくつかある。 以下の値を選択できる。"
20333
20334 #. type: Plain text
20335 #: build/C/man7/tcp.7:456
20336 msgid ""
20337 "Rate halving based; a smooth and conservative response, results in halved "
20338 "congestion window (I<cwnd>)  and slow-start threshold (I<ssthresh>)  after "
20339 "one RTT."
20340 msgstr ""
20341 "レートを元の半分にする。 滑らかで、保守的な反応を行い、RTT 1回分の時間後に 輻"
20342 "輳ウィンドウ (I<cwnd>)  とスロースタートの閾値 (I<ssthresh>)  が半分になる。"
20343
20344 #. type: Plain text
20345 #: build/C/man7/tcp.7:463
20346 msgid ""
20347 "Very conservative response; not recommended because even though being valid, "
20348 "it interacts poorly with the rest of Linux TCP; halves I<cwnd> and "
20349 "I<ssthresh> immediately."
20350 msgstr ""
20351 "非常に保守的な反応。このオプションの使用は推奨されない。 反応が正しかった場合"
20352 "であっても、Linux TCP の他の部分と うまく連携できないからである。 I<cwnd> と "
20353 "I<ssthresh> は直ちに半分にされる。"
20354
20355 #. type: Plain text
20356 #: build/C/man7/tcp.7:472
20357 msgid ""
20358 "Aggressive response; undoes congestion-control measures that are now known "
20359 "to be unnecessary (ignoring the possibility of a lost retransmission that "
20360 "would require TCP to be more cautious); I<cwnd> and I<ssthresh> are restored "
20361 "to the values prior to timeout."
20362 msgstr ""
20363 "積極的な反応。 不要と判明した輻輳制御の測定情報を取り消す (TCP がもっと注意深"
20364 "く扱うべき再送が失われる可能性を無視する)。 。 I<cwnd> と I<ssthresh> はタイ"
20365 "ムアウト前の値に戻される。"
20366
20367 #. type: TP
20368 #: build/C/man7/tcp.7:473
20369 #, no-wrap
20370 msgid "I<tcp_keepalive_intvl> (integer; default: 75; since Linux 2.4)"
20371 msgstr "I<tcp_keepalive_intvl> (integer; default: 75; Linux 2.4 以降)"
20372
20373 #.  Since 2.3.18
20374 #. type: Plain text
20375 #: build/C/man7/tcp.7:477
20376 msgid "The number of seconds between TCP keep-alive probes."
20377 msgstr "TCP keep-alive のプローブを送る間隔 (秒単位)。"
20378
20379 #. type: TP
20380 #: build/C/man7/tcp.7:477
20381 #, no-wrap
20382 msgid "I<tcp_keepalive_probes> (integer; default: 9; since Linux 2.2)"
20383 msgstr "I<tcp_keepalive_probes> (integer; default: 9; Linux 2.2 以降)"
20384
20385 #.  Since 2.1.43
20386 #. type: Plain text
20387 #: build/C/man7/tcp.7:483
20388 msgid ""
20389 "The maximum number of TCP keep-alive probes to send before giving up and "
20390 "killing the connection if no response is obtained from the other end."
20391 msgstr ""
20392 "TCP keep-alive プローブの最大回数。 この回数だけ試しても接続先から反応が得ら"
20393 "れない場合は、 あきらめて接続を切断する。"
20394
20395 #. type: TP
20396 #: build/C/man7/tcp.7:483
20397 #, no-wrap
20398 msgid "I<tcp_keepalive_time> (integer; default: 7200; since Linux 2.2)"
20399 msgstr "I<tcp_keepalive_time> (integer; default: 7200; Linux 2.2 以降)"
20400
20401 #.  Since 2.1.43
20402 #. type: Plain text
20403 #: build/C/man7/tcp.7:495
20404 msgid ""
20405 "The number of seconds a connection needs to be idle before TCP begins "
20406 "sending out keep-alive probes.  Keep-alives are sent only when the "
20407 "B<SO_KEEPALIVE> socket option is enabled.  The default value is 7200 seconds "
20408 "(2 hours).  An idle connection is terminated after approximately an "
20409 "additional 11 minutes (9 probes an interval of 75 seconds apart) when keep-"
20410 "alive is enabled."
20411 msgstr ""
20412 "接続がアイドル状態になってから、keep-alive プローブを送信するまでの時間を秒単"
20413 "位で指定する。 B<SO_KEEPALIVE> ソケットオプションが有効になっている場合のみ "
20414 "keep-alive は送信される。 デフォルト値は 7200 秒 (2 時間)。 keep-alive が有効"
20415 "になっている場合、 さらにおよそ 11 分 (75 秒間隔の 9 プローブ分)  経過すると"
20416 "アイドル状態の接続は終了させられる。"
20417
20418 #.  The following is from 2.6.12: Documentation/networking/ip-sysctl.txt
20419 #. type: Plain text
20420 #: build/C/man7/tcp.7:500
20421 msgid ""
20422 "Note that underlying connection tracking mechanisms and application timeouts "
20423 "may be much shorter."
20424 msgstr ""
20425 "下層にある接続追跡機構やアプリケーションでのタイムアウトは、 もっとずっと短い"
20426 "かもしれない。"
20427
20428 #. type: TP
20429 #: build/C/man7/tcp.7:500
20430 #, no-wrap
20431 msgid "I<tcp_low_latency> (Boolean; default: disabled; since Linux 2.4.21/2.6)"
20432 msgstr "I<tcp_low_latency> (ブール値; デフォルト: 無効; Linux 2.4.21/2.6 以降)"
20433
20434 #.  Since 2.4.21/2.5.60
20435 #. type: Plain text
20436 #: build/C/man7/tcp.7:508
20437 msgid ""
20438 "If enabled, the TCP stack makes decisions that prefer lower latency as "
20439 "opposed to higher throughput.  It this option is disabled, then higher "
20440 "throughput is preferred.  An example of an application where this default "
20441 "should be changed would be a Beowulf compute cluster."
20442 msgstr ""
20443 "有効にすると、TCP スタックはスループットを高くするよりも 遅延を少なくすること"
20444 "を優先して判断を行う。 このオプションを無効にすると、スループットを高くするこ"
20445 "とが優先される。 このデフォルト値を変更した方がよいアプリケーションの例として"
20446 "は Beowulf コンピュータクラスタが挙げられるだろう。"
20447
20448 #. type: TP
20449 #: build/C/man7/tcp.7:508
20450 #, no-wrap
20451 msgid "I<tcp_max_orphans> (integer; default: see below; since Linux 2.4)"
20452 msgstr "I<tcp_max_orphans> (integer; default: see below; Linux 2.4 以降)"
20453
20454 #.  Since 2.3.41
20455 #. type: Plain text
20456 #: build/C/man7/tcp.7:522
20457 msgid ""
20458 "The maximum number of orphaned (not attached to any user file handle) TCP "
20459 "sockets allowed in the system.  When this number is exceeded, the orphaned "
20460 "connection is reset and a warning is printed.  This limit exists only to "
20461 "prevent simple denial-of-service attacks.  Lowering this limit is not "
20462 "recommended.  Network conditions might require you to increase the number of "
20463 "orphans allowed, but note that each orphan can eat up to ~64K of unswappable "
20464 "memory.  The default initial value is set equal to the kernel parameter "
20465 "NR_FILE.  This initial default is adjusted depending on the memory in the "
20466 "system."
20467 msgstr ""
20468 "システムが許容する、 orphan な (どのユーザファイルハンドルにもアタッチされて"
20469 "いない)  TCP ソケットの最大数。 この数を越えると、orphan な接続はリセットさ"
20470 "れ、警告が表示される。 この制限が存在するのは、単純な使用不能 (denial-of-"
20471 "service) 攻撃を 防ぐために過ぎない。この値を小さくすることは推奨しない。 ネッ"
20472 "トワークの条件によっては、この数値を大きくしないといけないかもしれないが、 "
20473 "orphan なソケットひとつあたり 64K 程度のスワップ不可能なメモリを消費すること"
20474 "も注意せよ。 デフォルトの初期値はカーネルパラメータの NR_FILE と等しい。 この"
20475 "初期デフォルト値はシステムのメモリに応じて調整される。"
20476
20477 #. type: TP
20478 #: build/C/man7/tcp.7:522
20479 #, no-wrap
20480 msgid "I<tcp_max_syn_backlog> (integer; default: see below; since Linux 2.2)"
20481 msgstr "I<tcp_max_syn_backlog> (integer; default: 下記参照; Linux 2.2 以降)"
20482
20483 #.  Since 2.1.53
20484 #. type: Plain text
20485 #: build/C/man7/tcp.7:539
20486 msgid ""
20487 "The maximum number of queued connection requests which have still not "
20488 "received an acknowledgement from the connecting client.  If this number is "
20489 "exceeded, the kernel will begin dropping requests.  The default value of 256 "
20490 "is increased to 1024 when the memory present in the system is adequate or "
20491 "greater (E<gt>= 128Mb), and reduced to 128 for those systems with very low "
20492 "memory (E<lt>= 32Mb).  It is recommended that if this needs to be increased "
20493 "above 1024, TCP_SYNQ_HSIZE in I<include/net/tcp.h> be modified to keep "
20494 "TCP_SYNQ_HSIZE*16E<lt>=tcp_max_syn_backlog, and the kernel be recompiled."
20495 msgstr ""
20496 "接続してきているクライアントから ack を受信していない状態の接続リクエストを"
20497 "キューに置ける最大数。 この数値を越えると、カーネルはリクエストを捨て始め"
20498 "る。 デフォルトの値は 256 で、 システムに充分なメモリがある (128Mb 以上) 場合"
20499 "は 1024 になり、 メモリが非常に少ない場合 (32 Mb 以下) は 128 になる。 この数"
20500 "値を 1024 以上に増やしたい場合は、 I<include/net/tcp.h> の TCP_SYNQ_HSIZE を "
20501 "TCP_SYNQ_HSIZE*16E<lt>=tcp_max_syn_backlog のように修正し、 カーネルを再コン"
20502 "パイルすることを奨める。"
20503
20504 #. type: TP
20505 #: build/C/man7/tcp.7:539
20506 #, no-wrap
20507 msgid "I<tcp_max_tw_buckets> (integer; default: see below; since Linux 2.4)"
20508 msgstr "I<tcp_max_tw_buckets> (integer; default: 下記参照; Linux 2.4 以降)"
20509
20510 #.  Since 2.3.41
20511 #. type: Plain text
20512 #: build/C/man7/tcp.7:549
20513 msgid ""
20514 "The maximum number of sockets in TIME_WAIT state allowed in the system.  "
20515 "This limit exists only to prevent simple denial-of-service attacks.  The "
20516 "default value of NR_FILE*2 is adjusted depending on the memory in the "
20517 "system.  If this number is exceeded, the socket is closed and a warning is "
20518 "printed."
20519 msgstr ""
20520 "システムが許容する TIME_WAIT 状態にあるソケットの最大数。 この制限が存在する"
20521 "のは、 単純な使用不能 (denial-of-service) 攻撃を防ぐために過ぎない。 デフォル"
20522 "ト値は NR_FILE*2 で、システムのメモリに応じて調整される。 この数値を越える"
20523 "と、そのようなソケットはクローズされ、警告が表示される。"
20524
20525 #. type: TP
20526 #: build/C/man7/tcp.7:549
20527 #, no-wrap
20528 msgid "I<tcp_moderate_rcvbuf> (Boolean; default: enabled; since Linux 2.4.17/2.6.7)"
20529 msgstr "I<tcp_moderate_rcvbuf> (ブール値; デフォルト: 有効; Linux 2.4.17/2.6.7 以降)"
20530
20531 #.  The following is from 2.6.28-rc4: Documentation/networking/ip-sysctl.txt
20532 #. type: Plain text
20533 #: build/C/man7/tcp.7:556
20534 msgid ""
20535 "If enabled, TCP performs receive buffer auto-tuning, attempting to "
20536 "automatically size the buffer (no greater than I<tcp_rmem[2]>)  to match the "
20537 "size required by the path for full throughput."
20538 msgstr ""
20539 "有効にすると、TCP は受信バッファの自動調整を行う。 具体的には、 "
20540 "(I<tcp_rmem[2]> を超えない範囲で) バッファの大きさを自動的に変化させ、 その経"
20541 "路で最大のスループットを達成するのに必要な大きさに合わせようとする。"
20542
20543 #. type: TP
20544 #: build/C/man7/tcp.7:556
20545 #, no-wrap
20546 msgid "I<tcp_mem> (since Linux 2.4)"
20547 msgstr "I<tcp_mem> (Linux 2.4 以降)"
20548
20549 #.  Since 2.4.0-test7
20550 #. type: Plain text
20551 #: build/C/man7/tcp.7:568
20552 msgid ""
20553 "This is a vector of 3 integers: [low, pressure, high].  These bounds, "
20554 "measured in units of the system page size, are used by TCP to track its "
20555 "memory usage.  The defaults are calculated at boot time from the amount of "
20556 "available memory.  (TCP can only use I<low memory> for this, which is "
20557 "limited to around 900 megabytes on 32-bit systems.  64-bit systems do not "
20558 "suffer this limitation.)"
20559 msgstr ""
20560 "これは 3 つの整数 [low, pressure, high] からなるベクトル値である。 これらは "
20561 "TCP がメモリ使用量を追跡するために用いられる (使用量はシステムのページサイズ"
20562 "単位で計測される)。 デフォルトはブート時に利用できるメモリの量から計算され"
20563 "る。 (実際には、TCP は I<low memory> のみを使用する。値は 32ビットシステムで"
20564 "は約 900 メガバイトに制限される。 64 ビットシステムではこの制限はない。)"
20565
20566 #. type: TP
20567 #: build/C/man7/tcp.7:569
20568 #, no-wrap
20569 msgid "I<low>"
20570 msgstr "I<low>"
20571
20572 #. type: Plain text
20573 #: build/C/man7/tcp.7:573
20574 msgid ""
20575 "TCP doesn't regulate its memory allocation when the number of pages it has "
20576 "allocated globally is below this number."
20577 msgstr ""
20578 "TCP は、グローバルにアロケートしたページがこの数値以下の場合は、 メモリアロ"
20579 "ケーションを調整しない。"
20580
20581 #. type: TP
20582 #: build/C/man7/tcp.7:573 build/C/man7/udp.7:151
20583 #, no-wrap
20584 msgid "I<pressure>"
20585 msgstr "I<pressure>"
20586
20587 #. type: Plain text
20588 #: build/C/man7/tcp.7:582
20589 msgid ""
20590 "When the amount of memory allocated by TCP exceeds this number of pages, TCP "
20591 "moderates its memory consumption.  This memory pressure state is exited once "
20592 "the number of pages allocated falls below the I<low> mark."
20593 msgstr ""
20594 "TCP がアロケートしたメモリがこの数値分のページ数を越えると、 TCP はメモリ消費"
20595 "を抑えるようになる。 アロケートしたページ数が I<low> 以下になると、このメモリ"
20596 "圧迫状態から脱する。"
20597
20598 #. type: TP
20599 #: build/C/man7/tcp.7:582
20600 #, no-wrap
20601 msgid "I<high>"
20602 msgstr "I<high>"
20603
20604 #. type: Plain text
20605 #: build/C/man7/tcp.7:586
20606 msgid ""
20607 "The maximum number of pages, globally, that TCP will allocate.  This value "
20608 "overrides any other limits imposed by the kernel."
20609 msgstr ""
20610 "TCP がグローバルに割り当てるページ数の最大値。 この値はカーネルによって課され"
20611 "るあらゆる制限よりも優先される。"
20612
20613 #. type: TP
20614 #: build/C/man7/tcp.7:587
20615 #, no-wrap
20616 msgid "I<tcp_mtu_probing> (integer; default: 0; since Linux 2.6.17)"
20617 msgstr "I<tcp_mtu_probing> (integer; default: 0; Linux 2.6.17 以降)"
20618
20619 #.  The following is from 2.6.28-rc4: Documentation/networking/ip-sysctl.txt
20620 #. type: Plain text
20621 #: build/C/man7/tcp.7:592
20622 msgid ""
20623 "This parameter controls TCP Packetization-Layer Path MTU Discovery.  The "
20624 "following values may be assigned to the file:"
20625 msgstr ""
20626 "このパラメータは、TCP のパケット化レイヤの Path MTU discovery を制御する。 こ"
20627 "のファイルには以下の値を設定できる。"
20628
20629 #. type: Plain text
20630 #: build/C/man7/tcp.7:595
20631 msgid "Disabled"
20632 msgstr "無効にする。"
20633
20634 #. type: Plain text
20635 #: build/C/man7/tcp.7:597
20636 msgid "Disabled by default, enabled when an ICMP black hole detected"
20637 msgstr ""
20638 "デフォルトでは無効だが、ICMP ブラックホールが検出された場合は有効にする。"
20639
20640 #. type: Plain text
20641 #: build/C/man7/tcp.7:600
20642 msgid "Always enabled, use initial MSS of I<tcp_base_mss>."
20643 msgstr "常に有効にする。 MSS の初期値として I<tcp_base_mss> が使用される。"
20644
20645 #. type: TP
20646 #: build/C/man7/tcp.7:601
20647 #, no-wrap
20648 msgid "I<tcp_no_metrics_save> (Boolean; default: disabled; since Linux 2.6.6)"
20649 msgstr "I<tcp_no_metrics_save> (ブール値; デフォルト: 無効; Linux 2.6.6 以降)"
20650
20651 #.  The following is from 2.6.28-rc4: Documentation/networking/ip-sysctl.txt
20652 #. type: Plain text
20653 #: build/C/man7/tcp.7:612
20654 msgid ""
20655 "By default, TCP saves various connection metrics in the route cache when the "
20656 "connection closes, so that connections established in the near future can "
20657 "use these to set initial conditions.  Usually, this increases overall "
20658 "performance, but it may sometimes cause performance degradation.  If "
20659 "I<tcp_no_metrics_save> is enabled, TCP will not cache metrics on closing "
20660 "connections."
20661 msgstr ""
20662 "デフォルトでは、TCP は接続クローズ時に各種の接続パラメータを ルートキャッ"
20663 "シュ (route cache) に保存し、近い将来に接続が確立された際に これらの情報を初"
20664 "期状態として使用できるようになっている。 通常は、これにより全体として性能が向"
20665 "上するが、 時として性能の劣化を引き起こすこともある。 I<tcp_no_metrics_save> "
20666 "を有効にすると、TCP は接続クローズ時に接続パラメータをキャッシュ しなくなる。"
20667
20668 #. type: TP
20669 #: build/C/man7/tcp.7:612
20670 #, no-wrap
20671 msgid "I<tcp_orphan_retries> (integer; default: 8; since Linux 2.4)"
20672 msgstr "I<tcp_orphan_retries> (integer; default: 8; Linux 2.4 以降)"
20673
20674 #.  Since 2.3.41
20675 #. type: Plain text
20676 #: build/C/man7/tcp.7:617
20677 msgid ""
20678 "The maximum number of attempts made to probe the other end of a connection "
20679 "which has been closed by our end."
20680 msgstr "こちらからクローズした接続について、 先方をプローブする最大試行数。"
20681
20682 #. type: TP
20683 #: build/C/man7/tcp.7:617
20684 #, no-wrap
20685 msgid "I<tcp_reordering> (integer; default: 3; since Linux 2.4)"
20686 msgstr "I<tcp_reordering> (integer; default: 3; Linux 2.4 以降)"
20687
20688 #.  Since 2.4.0-test7
20689 #. type: Plain text
20690 #: build/C/man7/tcp.7:626
20691 msgid ""
20692 "The maximum a packet can be reordered in a TCP packet stream without TCP "
20693 "assuming packet loss and going into slow start.  It is not advisable to "
20694 "change this number.  This is a packet reordering detection metric designed "
20695 "to minimize unnecessary back off and retransmits provoked by reordering of "
20696 "packets on a connection."
20697 msgstr ""
20698 "TCP パケットストリームでパケット順序の逆転が発生しただけであり、 パケットロス"
20699 "が起こったとはみなさない、パケット数の最大値。 この値を超えてパケットの順序逆"
20700 "転が起こると、パケットロスが生じたと みなし、slow start に入る。 この数値は変"
20701 "更しないほうが良い。 これは、接続中のパケットの並び替えによって生じる 不必要"
20702 "な速度低下や再送を最小化するように設計された、 パケット並び替え (packet "
20703 "reordering) の検知メトリックなのである。"
20704
20705 #. type: TP
20706 #: build/C/man7/tcp.7:626
20707 #, no-wrap
20708 msgid "I<tcp_retrans_collapse> (Boolean; default: enabled; since Linux 2.2)"
20709 msgstr "I<tcp_retrans_collapse> (ブール値; デフォルト: 有効; Linux 2.2 以降)"
20710
20711 #.  Since 2.1.96
20712 #. type: Plain text
20713 #: build/C/man7/tcp.7:630
20714 msgid "Try to send full-sized packets during retransmit."
20715 msgstr "再送の際にフルサイズのパケットを送ろうとする。"
20716
20717 #. type: TP
20718 #: build/C/man7/tcp.7:630
20719 #, no-wrap
20720 msgid "I<tcp_retries1> (integer; default: 3; since Linux 2.2)"
20721 msgstr "I<tcp_retries1> (integer; default: 3; Linux 2.2 以降)"
20722
20723 #.  Since 2.1.43
20724 #. type: Plain text
20725 #: build/C/man7/tcp.7:640
20726 msgid ""
20727 "The number of times TCP will attempt to retransmit a packet on an "
20728 "established connection normally, without the extra effort of getting the "
20729 "network layers involved.  Once we exceed this number of retransmits, we "
20730 "first have the network layer update the route if possible before each new "
20731 "retransmit.  The default is the RFC specified minimum of 3."
20732 msgstr ""
20733 "普通に確立されている接続上に、 TCP がネットワーク層を巻き込まずに再送を試みる"
20734 "回数。 再送がこの回数を越えると、まず最初に、 新しい再送を送る前に可能なら"
20735 "ネットワーク層に経路を更新させる。 デフォルトは RFC が指定している最少数であ"
20736 "る 3。"
20737
20738 #. type: TP
20739 #: build/C/man7/tcp.7:640
20740 #, no-wrap
20741 msgid "I<tcp_retries2> (integer; default: 15; since Linux 2.2)"
20742 msgstr "I<tcp_retries2> (integer; default: 15; Linux 2.2 以降)"
20743
20744 #.  Since 2.1.43
20745 #. type: Plain text
20746 #: build/C/man7/tcp.7:650
20747 msgid ""
20748 "The maximum number of times a TCP packet is retransmitted in established "
20749 "state before giving up.  The default value is 15, which corresponds to a "
20750 "duration of approximately between 13 to 30 minutes, depending on the "
20751 "retransmission timeout.  The RFC\\ 1122 specified minimum limit of 100 "
20752 "seconds is typically deemed too short."
20753 msgstr ""
20754 "確立状態の接続に、この回数 TCP パケットの再送信を 行なってもだめな場合はあき"
20755 "らめる。 デフォルト値は 15 で、これは (再送のタイムアウトに依存するが)  およ"
20756 "そ 13〜30 分程度の期間に対応する。 RFC\\ 1122 は最小の限界を 100 秒と置いてい"
20757 "るが、 これはたいていの場合には短すぎると思われる。"
20758
20759 #. type: TP
20760 #: build/C/man7/tcp.7:650
20761 #, no-wrap
20762 msgid "I<tcp_rfc1337> (Boolean; default: disabled; since Linux 2.2)"
20763 msgstr "I<tcp_rfc1337> (ブール値; デフォルト: 無効; Linux 2.2 以降)"
20764
20765 #.  Since 2.1.90
20766 #. type: Plain text
20767 #: build/C/man7/tcp.7:658
20768 msgid ""
20769 "Enable TCP behavior conformant with RFC\\ 1337.  When disabled, if a RST is "
20770 "received in TIME_WAIT state, we close the socket immediately without waiting "
20771 "for the end of the TIME_WAIT period."
20772 msgstr ""
20773 "TCP の動作を RFC\\ 1337 に準拠させる。 無効にすると、TIME_WAIT 状態のときに "
20774 "RST が受信された場合、 TIME_WAIT 期間の終了を待たずにそのソケットを直ちにク"
20775 "ローズする。"
20776
20777 #. type: TP
20778 #: build/C/man7/tcp.7:658
20779 #, no-wrap
20780 msgid "I<tcp_rmem> (since Linux 2.4)"
20781 msgstr "I<tcp_rmem> (Linux 2.4 以降)"
20782
20783 #.  Since 2.4.0-test7
20784 #. type: Plain text
20785 #: build/C/man7/tcp.7:666
20786 msgid ""
20787 "This is a vector of 3 integers: [min, default, max].  These parameters are "
20788 "used by TCP to regulate receive buffer sizes.  TCP dynamically adjusts the "
20789 "size of the receive buffer from the defaults listed below, in the range of "
20790 "these values, depending on memory available in the system."
20791 msgstr ""
20792 "これは 3 つの整数 [min, default, max] からなるベクトル値である。 これらは "
20793 "TCP が受信バッファサイズを調整するために用いられる。 TCP は、システムで利用で"
20794 "きるメモリに応じて、 受信バッファのサイズをこれらの変数の範囲で 以下に示すデ"
20795 "フォルトから動的に調整する。"
20796
20797 #. type: TP
20798 #: build/C/man7/tcp.7:667 build/C/man7/tcp.7:844 build/C/man7/udp.7:145
20799 #, no-wrap
20800 msgid "I<min>"
20801 msgstr "I<min>"
20802
20803 #. type: Plain text
20804 #: build/C/man7/tcp.7:682
20805 msgid ""
20806 "minimum size of the receive buffer used by each TCP socket.  The default "
20807 "value is the system page size.  (On Linux 2.4, the default value is 4K, "
20808 "lowered to B<PAGE_SIZE> bytes in low-memory systems.)  This value is used to "
20809 "ensure that in memory pressure mode, allocations below this size will still "
20810 "succeed.  This is not used to bound the size of the receive buffer declared "
20811 "using B<SO_RCVBUF> on a socket."
20812 msgstr ""
20813 "各 TCP ソケットが用いる受信バッファの最小サイズ。 デフォルト値はシステムの"
20814 "ページサイズである (Linux 2.4 では、デフォルト値は 4K バイトで、 メモリの少な"
20815 "いシステムでは B<PAGE_SIZE> バイトに減らされる)。 この値は、メモリ圧迫モード"
20816 "においても、 このサイズの割り当てが成功することを保証するために用いられる。 "
20817 "これは、 B<SO_RCVBUF> を用いてソケットの最低受信バッファサイズを宣言する際に"
20818 "は用いられない。"
20819
20820 #. type: TP
20821 #: build/C/man7/tcp.7:682 build/C/man7/tcp.7:854
20822 #, no-wrap
20823 msgid "I<default>"
20824 msgstr "I<default>"
20825
20826 #. type: Plain text
20827 #: build/C/man7/tcp.7:696
20828 msgid ""
20829 "the default size of the receive buffer for a TCP socket.  This value "
20830 "overwrites the initial default buffer size from the generic global I<net."
20831 "core.rmem_default> defined for all protocols.  The default value is 87380 "
20832 "bytes.  (On Linux 2.4, this will be lowered to 43689 in low-memory "
20833 "systems.)  If larger receive buffer sizes are desired, this value should be "
20834 "increased (to affect all sockets).  To employ large TCP windows, the I<net."
20835 "ipv4.tcp_window_scaling> must be enabled (default)."
20836 msgstr ""
20837 "TCP ソケットの受信バッファのデフォルトサイズ。 この値は、すべてのプロトコルに"
20838 "対して定義されている、 ジェネリックなグローバルのデフォルトバッファサイズ "
20839 "I<net.core.rmem_default> より優先される。 デフォルト値は 87380 バイトである "
20840 "(Linux 2.4 では、メモリの少ないシステムの場合 43689 まで減らされる)。 大きな"
20841 "受信バッファサイズが必要な場合は、 この値を増やすべきである (すべてのソケット"
20842 "に影響する)。 大きな TCP ウィンドウを用いるには、 I<net.ipv4."
20843 "tcp_window_scaling> を有効にしておかなければならない (デフォルトは有効)。"
20844
20845 #. type: TP
20846 #: build/C/man7/tcp.7:696 build/C/man7/tcp.7:868 build/C/man7/udp.7:157
20847 #, no-wrap
20848 msgid "I<max>"
20849 msgstr "I<max>"
20850
20851 #. type: Plain text
20852 #: build/C/man7/tcp.7:705
20853 msgid ""
20854 "the maximum size of the receive buffer used by each TCP socket.  This value "
20855 "does not override the global I<net.core.rmem_max>.  This is not used to "
20856 "limit the size of the receive buffer declared using B<SO_RCVBUF> on a "
20857 "socket.  The default value is calculated using the formula"
20858 msgstr ""
20859 "各 TCP ソケットで用いる受信バッファの最大サイズ。 この値よりもグローバルの "
20860 "I<net.core.rmem_max> が優先される。 これは、 B<SO_RCVBUF> を用いてソケットの"
20861 "受信バッファサイズ制限を宣言する際には用いられない。 デフォルト値は以下の式で"
20862 "計算される。"
20863
20864 #. type: Plain text
20865 #: build/C/man7/tcp.7:707
20866 #, no-wrap
20867 msgid "    max(87380, min(4MB, I<tcp_mem>[1]*PAGE_SIZE/128))\n"
20868 msgstr "    max(87380, min(4MB, I<tcp_mem>[1]*PAGE_SIZE/128))\n"
20869
20870 #. type: Plain text
20871 #: build/C/man7/tcp.7:710
20872 msgid ""
20873 "(On Linux 2.4, the default is 87380*2 bytes, lowered to 87380 in low-memory "
20874 "systems)."
20875 msgstr ""
20876 "(Linux 2.4 では、デフォルト値は 87380*2 バイトで、 メモリの少ないシステムで"
20877 "は 87380 まで減らされる。)"
20878
20879 #. type: TP
20880 #: build/C/man7/tcp.7:711
20881 #, no-wrap
20882 msgid "I<tcp_sack> (Boolean; default: enabled; since Linux 2.2)"
20883 msgstr "I<tcp_sack> (ブール値; デフォルト: 有効; Linux 2.2 以降)"
20884
20885 #.  Since 2.1.36
20886 #. type: Plain text
20887 #: build/C/man7/tcp.7:715
20888 msgid "Enable RFC\\ 2018 TCP Selective Acknowledgements."
20889 msgstr "RFC\\ 2018 の TCP Selective Acknowledgements を有効にする。"
20890
20891 #. type: TP
20892 #: build/C/man7/tcp.7:715
20893 #, no-wrap
20894 msgid "I<tcp_slow_start_after_idle> (Boolean; default: enabled; since Linux 2.6.18)"
20895 msgstr "I<tcp_slow_start_after_idle> (ブール値; デフォルト: 有効; Linux 2.6.18 以降)"
20896
20897 #.  The following is from 2.6.28-rc4: Documentation/networking/ip-sysctl.txt
20898 #. type: Plain text
20899 #: build/C/man7/tcp.7:723
20900 msgid ""
20901 "If enabled, provide RFC 2861 behavior and time out the congestion window "
20902 "after an idle period.  An idle period is defined as the current RTO "
20903 "(retransmission timeout).  If disabled, the congestion window will not be "
20904 "timed out after an idle period."
20905 msgstr ""
20906 "有効にすると、RFC 2861 の動作が行われ、 アイドル時間経過後に輻輳ウィンドウを"
20907 "タイムアウトさせる。 アイドル時間は現在の RTO (再送タイムアウト) で定義され"
20908 "る。 無効にすると、輻輳ウィンドウはアイドル時間経過後もタイムアウトされない。"
20909
20910 #. type: TP
20911 #: build/C/man7/tcp.7:723
20912 #, no-wrap
20913 msgid "I<tcp_stdurg> (Boolean; default: disabled; since Linux 2.2)"
20914 msgstr "I<tcp_stdurg> (ブール値; デフォルト: 無効; Linux 2.2 以降)"
20915
20916 #.  Since 2.1.44
20917 #.  RFC 793 was ambiguous in its specification of the meaning of the
20918 #.  urgent pointer.  RFC 1122 (and RFC 961) fixed on a particular
20919 #.  resolution of this ambiguity (unfortunately the "wrong" one).
20920 #. type: Plain text
20921 #: build/C/man7/tcp.7:737
20922 msgid ""
20923 "If this option is enabled, then use the RFC\\ 1122 interpretation of the TCP "
20924 "urgent-pointer field.  According to this interpretation, the urgent pointer "
20925 "points to the last byte of urgent data.  If this option is disabled, then "
20926 "use the BSD-compatible interpretation of the urgent pointer: the urgent "
20927 "pointer points to the first byte after the urgent data.  Enabling this "
20928 "option may lead to interoperability problems."
20929 msgstr ""
20930 "このオプションを有効にすると、 TCP 緊急ポインタ (urgent-pointer)  フィールド"
20931 "を RFC\\ 1122 に従った解釈を行う。 この解釈に従うと、緊急ポインタは緊急データ"
20932 "の最後のバイトを指す。 このオプションを無効にすると、緊急ポインタの解釈が "
20933 "BSD 互換の方法で 行われる: 緊急ポインタは緊急データの後の最初のバイトを指"
20934 "す。 このオプションを有効にすると、相互運用性に問題が生じるかもしれない。"
20935
20936 #. type: TP
20937 #: build/C/man7/tcp.7:737
20938 #, no-wrap
20939 msgid "I<tcp_syn_retries> (integer; default: 5; since Linux 2.2)"
20940 msgstr "I<tcp_syn_retries> (integer; default: 5; Linux 2.2 以降)"
20941
20942 #.  Since 2.1.38
20943 #. type: Plain text
20944 #: build/C/man7/tcp.7:744
20945 msgid ""
20946 "The maximum number of times initial SYNs for an active TCP connection "
20947 "attempt will be retransmitted.  This value should not be higher than 255.  "
20948 "The default value is 5, which corresponds to approximately 180 seconds."
20949 msgstr ""
20950 "アクティブな TCP 接続に初期 SYN の再送を試みる最大回数。 この数値は 255 より"
20951 "も大きくすべきではない。 デフォルトの値は 5 で、およそ 180 秒に対応する。"
20952
20953 #. type: TP
20954 #: build/C/man7/tcp.7:744
20955 #, no-wrap
20956 msgid "I<tcp_synack_retries> (integer; default: 5; since Linux 2.2)"
20957 msgstr "I<tcp_synack_retries> (integer; default: 5; Linux 2.2 以降)"
20958
20959 #.  Since 2.1.38
20960 #. type: Plain text
20961 #: build/C/man7/tcp.7:750
20962 msgid ""
20963 "The maximum number of times a SYN/ACK segment for a passive TCP connection "
20964 "will be retransmitted.  This number should not be higher than 255."
20965 msgstr ""
20966 "passive な TCP 接続の SYN/ACK セグメントで再送を試みる最大数。 この数値は "
20967 "255 よりも大きくすべきではない。"
20968
20969 #. type: TP
20970 #: build/C/man7/tcp.7:750
20971 #, no-wrap
20972 msgid "I<tcp_syncookies> (Boolean; since Linux 2.2)"
20973 msgstr "I<tcp_syncookies> (Boolean; Linux 2.2 以降)"
20974
20975 #.  Since 2.1.43
20976 #. type: Plain text
20977 #: build/C/man7/tcp.7:770
20978 msgid ""
20979 "Enable TCP syncookies.  The kernel must be compiled with "
20980 "B<CONFIG_SYN_COOKIES>.  Send out syncookies when the syn backlog queue of a "
20981 "socket overflows.  The syncookies feature attempts to protect a socket from "
20982 "a SYN flood attack.  This should be used as a last resort, if at all.  This "
20983 "is a violation of the TCP protocol, and conflicts with other areas of TCP "
20984 "such as TCP extensions.  It can cause problems for clients and relays.  It "
20985 "is not recommended as a tuning mechanism for heavily loaded servers to help "
20986 "with overloaded or misconfigured conditions.  For recommended alternatives "
20987 "see I<tcp_max_syn_backlog>, I<tcp_synack_retries>, and "
20988 "I<tcp_abort_on_overflow>."
20989 msgstr ""
20990 "TCP syncookies を有効にする。カーネルは B<CONFIG_SYNCOOKIES> をつけてコンパイ"
20991 "ルしておかなければならない。 ソケットのバックログキューがオーバーフローする"
20992 "と、 syncookies が送信される。 syncookies 機能は、SYN flood 攻撃からソケット"
20993 "を守ろうとする。 これはいずれにしても、最終手段として用いるべきである。 これ"
20994 "は TCP プロトコルに違反しており、 TCP 拡張のような、TCP の他の部分と衝突して"
20995 "しまう。 クライアントやリレーで問題が起こることもある。 過負荷や設定間違いに"
20996 "よって負荷の大きな状態にあるサーバを調整して救うための 機構とみなすべきではな"
20997 "い。 そのような用途には、代わりに I<tcp_max_syn_backlog>, "
20998 "I<tcp_synack_retries>, I<tcp_abort_on_overflow> などの使用を考えること。"
20999
21000 #. type: TP
21001 #: build/C/man7/tcp.7:770
21002 #, no-wrap
21003 msgid "I<tcp_timestamps> (Boolean; default: enabled; since Linux 2.2)"
21004 msgstr "I<tcp_timestamps> (ブール値; デフォルト: 有効; Linux 2.2 以降)"
21005
21006 #.  Since 2.1.36
21007 #. type: Plain text
21008 #: build/C/man7/tcp.7:774
21009 msgid "Enable RFC\\ 1323 TCP timestamps."
21010 msgstr "RFC\\ 1323 の TCP timestamps を有効にする。"
21011
21012 #. type: TP
21013 #: build/C/man7/tcp.7:774
21014 #, no-wrap
21015 msgid "I<tcp_tso_win_divisor> (integer; default: 3; since Linux 2.6.9)"
21016 msgstr "I<tcp_tso_win_divisor> (integer; default: 3; Linux 2.6.9 以降)"
21017
21018 #. type: Plain text
21019 #: build/C/man7/tcp.7:780
21020 msgid ""
21021 "This parameter controls what percentage of the congestion window can be "
21022 "consumed by a single TCP Segmentation Offload (TSO) frame.  The setting of "
21023 "this parameter is a tradeoff between burstiness and building larger TSO "
21024 "frames."
21025 msgstr ""
21026 "このパラメータは、一つの TCP Segmentation Offload (TSO) フレームで 消費できる"
21027 "輻輳ウィンドウの割合 (パーセント) を制御する。 バースト性と、どれだけ大きな "
21028 "TSO フレームを構築するかのはトレードオフであり、 このパラメータはその度合いを"
21029 "設定する。"
21030
21031 #. type: TP
21032 #: build/C/man7/tcp.7:780
21033 #, no-wrap
21034 msgid "I<tcp_tw_recycle> (Boolean; default: disabled; since Linux 2.4)"
21035 msgstr "I<tcp_tw_recycle> (ブール値; デフォルト: 無効; Linux 2.4 以降)"
21036
21037 #
21038 #.  Since 2.3.15
21039 #.  The following is from 2.6.12: Documentation/networking/ip-sysctl.txt
21040 #. type: Plain text
21041 #: build/C/man7/tcp.7:790
21042 msgid ""
21043 "Enable fast recycling of TIME_WAIT sockets. Enabling this option is not "
21044 "recommended for devices communicating with the general Internet or using NAT "
21045 "(Network Address Translation). Since some NAT gateways pass through IP "
21046 "timestamp values, one IP can appear to have non-increasing timestamps. See "
21047 "RFC 1323 (PAWS), RFC 6191."
21048 msgstr ""
21049
21050 #. type: TP
21051 #: build/C/man7/tcp.7:790
21052 #, no-wrap
21053 msgid "I<tcp_tw_reuse> (Boolean; default: disabled; since Linux 2.4.19/2.6)"
21054 msgstr "I<tcp_tw_reuse> (ブール値; デフォルト: 無効; Linux 2.4.19/2.6 以降)"
21055
21056 #.  Since 2.4.19/2.5.43
21057 #.  The following is from 2.6.12: Documentation/networking/ip-sysctl.txt
21058 #. type: Plain text
21059 #: build/C/man7/tcp.7:798
21060 msgid ""
21061 "Allow to reuse TIME_WAIT sockets for new connections when it is safe from "
21062 "protocol viewpoint.  It should not be changed without advice/request of "
21063 "technical experts."
21064 msgstr ""
21065 "プロトコルの面から見て問題ない場合に新規コネクションに TIME_WAIT 状態のソケッ"
21066 "トを再利用することを許可する。技術的に詳しい人の助言や 要請なしにこのオプショ"
21067 "ンを変更すべきではない。"
21068
21069 #. type: TP
21070 #: build/C/man7/tcp.7:798
21071 #, no-wrap
21072 msgid "I<tcp_vegas_cong_avoid> (Boolean; default: disabled; Linux 2.2 to 2.6.13)"
21073 msgstr "I<tcp_vegas_cong_avoid> (ブール値; デフォルト: 無効; Linux 2.2 から 2.6.13 まで)"
21074
21075 #.  Since 2.1.8; removed in 2.6.13
21076 #.  The following is from 2.6.12: Documentation/networking/ip-sysctl.txt
21077 #. type: Plain text
21078 #: build/C/man7/tcp.7:809
21079 msgid ""
21080 "Enable TCP Vegas congestion avoidance algorithm.  TCP Vegas is a sender-side "
21081 "only change to TCP that anticipates the onset of congestion by estimating "
21082 "the bandwidth.  TCP Vegas adjusts the sending rate by modifying the "
21083 "congestion window.  TCP Vegas should provide less packet loss, but it is not "
21084 "as aggressive as TCP Reno."
21085 msgstr ""
21086 "TCP Vegas 輻輳制御アルゴリズムを有効にする。 TCP Vegas は帯域を推測することで"
21087 "輻輳の起こり始めを予想するように TCP の送信側のみに変更を加えたものである。 "
21088 "TCP Vegas は輻輳ウィンドウを修正することで、送信レートを調整する。 TCP Vegas "
21089 "は TCP Reno と比べてパケットロスは少ないが、 TCP Reno ほど積極的な挙動はしな"
21090 "い。"
21091
21092 #. type: TP
21093 #: build/C/man7/tcp.7:809
21094 #, no-wrap
21095 msgid "I<tcp_westwood> (Boolean; default: disabled; Linux 2.4.26/2.6.3 to 2.6.13)"
21096 msgstr "I<tcp_westwood> (ブール値; デフォルト: 無効; Linux 2.4.26/2.6.3 から 2.6.13 まで)"
21097
21098 #. type: Plain text
21099 #: build/C/man7/tcp.7:821
21100 msgid ""
21101 "Enable TCP Westwood+ congestion control algorithm.  TCP Westwood+ is a "
21102 "sender-side only modification of the TCP Reno protocol stack that optimizes "
21103 "the performance of TCP congestion control.  It is based on end-to-end "
21104 "bandwidth estimation to set congestion window and slow start threshold after "
21105 "a congestion episode.  Using this estimation, TCP Westwood+ adaptively sets "
21106 "a slow start threshold and a congestion window which takes into account the "
21107 "bandwidth used at the time congestion is experienced.  TCP Westwood+ "
21108 "significantly increases fairness with respect to TCP Reno in wired networks "
21109 "and throughput over wireless links."
21110 msgstr ""
21111 "TCP Westwood+ 輻輳制御アルゴリズムを有効にする。 TCP Westwood+ は TCP 輻輳制"
21112 "御の性能を最適化するように TCP Reno の プロトコルスタックの送信側のみに修正を"
21113 "加えたものである。 輻輳が起こった後で、輻輳ウィンドウや slow start の閾値を "
21114 "通信両端間の帯域の推測に基づいて設定する。 この推測を使って、TCP Westwood+ は"
21115 "輻輳が発生した時に使っていた 帯域を考慮に入れた slow start の閾値と輻輳ウィン"
21116 "ドウを設定する。 TCP Westwood+ は、有線ネットワークにおける TCP Reno の公平"
21117 "性 (fairness) と、無線リンクでのスループットを大きく向上する。"
21118
21119 #. type: TP
21120 #: build/C/man7/tcp.7:821
21121 #, no-wrap
21122 msgid "I<tcp_window_scaling> (Boolean; default: enabled; since Linux 2.2)"
21123 msgstr "I<tcp_window_scaling> (ブール値; デフォルト: 有効; Linux 2.2 以降)"
21124
21125 #.  Since 2.1.36
21126 #. type: Plain text
21127 #: build/C/man7/tcp.7:835
21128 msgid ""
21129 "Enable RFC\\ 1323 TCP window scaling.  This feature allows the use of a "
21130 "large window (E<gt> 64K) on a TCP connection, should the other end support "
21131 "it.  Normally, the 16 bit window length field in the TCP header limits the "
21132 "window size to less than 64K bytes.  If larger windows are desired, "
21133 "applications can increase the size of their socket buffers and the window "
21134 "scaling option will be employed.  If I<tcp_window_scaling> is disabled, TCP "
21135 "will not negotiate the use of window scaling with the other end during "
21136 "connection setup."
21137 msgstr ""
21138 "RFC\\ 1323 の TCP ウィンドウスケーリングを有効にする。 この機能を用いると、接"
21139 "続先が対応していれば、 TCP 接続で大きな (64K 以上の) ウィンドウが使えるように"
21140 "なる。 通常は TCP ヘッダのウインドウ長フィールドは 16 ビットなので、 ウィンド"
21141 "ウサイズは 64K バイト以下に限られる。 もっと大きなウィンドウを使いたい場合"
21142 "は、 アプリケーションはソケットバッファのサイズを増やして、 ウィンドウスケー"
21143 "リングのオプションを利用すればよい。 I<tcp_window_scaling> を無効にしている"
21144 "と、 TCP は他端との接続設定の際に、 ウィンドウスケーリングのネゴシエーション"
21145 "を行なわない。"
21146
21147 #. type: TP
21148 #: build/C/man7/tcp.7:835
21149 #, no-wrap
21150 msgid "I<tcp_wmem> (since Linux 2.4)"
21151 msgstr "I<tcp_wmem> (Linux 2.4 以降)"
21152
21153 #.  Since 2.4.0-test7
21154 #. type: Plain text
21155 #: build/C/man7/tcp.7:843
21156 msgid ""
21157 "This is a vector of 3 integers: [min, default, max].  These parameters are "
21158 "used by TCP to regulate send buffer sizes.  TCP dynamically adjusts the size "
21159 "of the send buffer from the default values listed below, in the range of "
21160 "these values, depending on memory available."
21161 msgstr ""
21162 "これは 3 つの整数 [min, default, max] からなるベクトル値である。 これらは "
21163 "TCP が送信バッファサイズを調整するために用いられる。 TCP は、システムで利用で"
21164 "きるメモリに応じて、送信バッファのサイズを これらの変数の範囲で以下に示すデ"
21165 "フォルトから動的に調整する。"
21166
21167 #. type: Plain text
21168 #: build/C/man7/tcp.7:854
21169 msgid ""
21170 "Minimum size of the send buffer used by each TCP socket.  The default value "
21171 "is the system page size.  (On Linux 2.4, the default value is 4K bytes.)  "
21172 "This value is used to ensure that in memory pressure mode, allocations below "
21173 "this size will still succeed.  This is not used to bound the size of the "
21174 "send buffer declared using B<SO_SNDBUF> on a socket."
21175 msgstr ""
21176 "各 TCP ソケットが用いる送信バッファの最小サイズ。 デフォルト値はシステムの"
21177 "ページサイズである (Linux 2.4 では、デフォルト値は 4K である)。 この値は、メ"
21178 "モリ圧迫モードにおいても、 このサイズ以下の割り当てが成功することを保証するた"
21179 "めに用いられる。 これは、 B<SO_SNDBUF> を用いてソケットの最低送信バッファサイ"
21180 "ズを宣言する際には用いられない。"
21181
21182 #.  True in Linux 2.4 and 2.6
21183 #. type: Plain text
21184 #: build/C/man7/tcp.7:868
21185 msgid ""
21186 "The default size of the send buffer for a TCP socket.  This value overwrites "
21187 "the initial default buffer size from the generic global I</proc/sys/net/core/"
21188 "wmem_default> defined for all protocols.  The default value is 16K bytes.  "
21189 "If larger send buffer sizes are desired, this value should be increased (to "
21190 "affect all sockets).  To employ large TCP windows, the I</proc/sys/net/ipv4/"
21191 "tcp_window_scaling> must be set to a nonzero value (default)."
21192 msgstr ""
21193 "TCP ソケットの送信バッファのデフォルトサイズ。 この値は、すべてのプロトコルに"
21194 "対して定義されている、 ジェネリックなグローバルのデフォルトバッファサイズ I</"
21195 "proc/sys/net/core/wmem_default> より優先される。 デフォルト値は 16K バイトで"
21196 "ある。 大きな送信バッファサイズが必要な場合は、 この値を増やすべきである (す"
21197 "べてのソケットに影響する)。 大きな TCP ウィンドウを用いるには、 I</proc/sys/"
21198 "net/ipv4/tcp_window_scaling> を 0 以外の値 (デフォルト値) にしておかなければ"
21199 "ならない。"
21200
21201 #. type: Plain text
21202 #: build/C/man7/tcp.7:877
21203 msgid ""
21204 "The maximum size of the send buffer used by each TCP socket.  This value "
21205 "does not override the value in I</proc/sys/net/core/wmem_max>.  This is not "
21206 "used to limit the size of the send buffer declared using B<SO_SNDBUF> on a "
21207 "socket.  The default value is calculated using the formula"
21208 msgstr ""
21209 "各 TCP ソケットで用いる送信バッファの最大サイズ。 この値よりも I</proc/sys/"
21210 "net/core/wmem_max> が優先される。 これは B<SO_SNDBUF> を用いてソケットの送信"
21211 "バッファサイズ制限を宣言する際には用いられない。 デフォルト値は以下の式で計算"
21212 "される。"
21213
21214 #. type: Plain text
21215 #: build/C/man7/tcp.7:879
21216 #, no-wrap
21217 msgid "    max(65536, min(4MB, I<tcp_mem>[1]*PAGE_SIZE/128))\n"
21218 msgstr "    max(65536, min(4MB, I<tcp_mem>[1]*PAGE_SIZE/128))\n"
21219
21220 #. type: Plain text
21221 #: build/C/man7/tcp.7:882
21222 msgid ""
21223 "(On Linux 2.4, the default value is 128K bytes, lowered 64K depending on low-"
21224 "memory systems.)"
21225 msgstr ""
21226 "(Linux 2.4 では、デフォルト値は 128K バイトで、 メモリの少ないシステムでは "
21227 "64K にまで減らされる。)"
21228
21229 #. type: TP
21230 #: build/C/man7/tcp.7:883
21231 #, no-wrap
21232 msgid "I<tcp_workaround_signed_windows> (Boolean; default: disabled; since Linux 2.6.26)"
21233 msgstr "I<tcp_workaround_signed_windows> (ブール値; デフォルト: 無効; Linux 2.6.26 以降)"
21234
21235 #. type: Plain text
21236 #: build/C/man7/tcp.7:889
21237 msgid ""
21238 "If enabled, assume that no receipt of a window-scaling option means that the "
21239 "remote TCP is broken and treats the window as a signed quantity.  If "
21240 "disabled, assume that the remote TCP is not broken even if we do not receive "
21241 "a window scaling option from it."
21242 msgstr ""
21243 "有効にすると、ウィンドウスケーリングオプションを受信しないのは、 接続相手の "
21244 "TCP が壊れていると考え、ウィンドウを符号付きの量とみなす。 無効にすると、接続"
21245 "相手からウィンドウスケーリングオプションを受信しなかった 場合であっても、接続"
21246 "相手の TCP が壊れているとはみなさない。"
21247
21248 #.  or SOL_TCP on Linux
21249 #. type: Plain text
21250 #: build/C/man7/tcp.7:907
21251 msgid ""
21252 "To set or get a TCP socket option, call B<getsockopt>(2)  to read or "
21253 "B<setsockopt>(2)  to write the option with the option level argument set to "
21254 "B<IPPROTO_TCP>.  Unless otherwise noted, I<optval> is a pointer to an "
21255 "I<int>.  In addition, most B<IPPROTO_IP> socket options are valid on TCP "
21256 "sockets.  For more information see B<ip>(7)."
21257 msgstr ""
21258 "TCP ソケットのオプションは、 オプションレベル引数に I<IPPROTO_TCP> を指定し"
21259 "た B<setsockopt>(2)  で設定でき、 B<getsockopt>(2)  で取得できる。 注釈がない"
21260 "限り、 I<optval> は I<int> へのポインタである。 さらに、ほとんどの "
21261 "B<IPPROTO_IP> ソケットオプションも TCP ソケットに対して有効である。詳細は "
21262 "B<ip>(7)  を見よ。"
21263
21264 #. type: TP
21265 #: build/C/man7/tcp.7:907
21266 #, no-wrap
21267 msgid "B<TCP_CONGESTION> (since Linux 2.6.13)"
21268 msgstr "B<TCP_CONGESTION> (Linux 2.6.13 以降)"
21269
21270 #.          commit 5f8ef48d240963093451bcf83df89f1a1364f51d
21271 #.          Author: Stephen Hemminger <shemminger@osdl.org>
21272 #. type: Plain text
21273 #: build/C/man7/tcp.7:923
21274 msgid ""
21275 "The argument for this option is a string.  This option allows the caller to "
21276 "set the TCP congestion control algorithm to be used, on a per-socket basis.  "
21277 "Unprivileged processes are restricted to choosing one of the algorithms in "
21278 "I<tcp_allowed_congestion_control> (described above).  Privileged processes "
21279 "(B<CAP_NET_ADMIN>)  can choose from any of the available congestion-control "
21280 "algorithms (see the description of I<tcp_available_congestion_control> "
21281 "above)."
21282 msgstr ""
21283 "このオプションの引き数は文字列である。 このオプションを使うと、呼び出し元がソ"
21284 "ケット単位に使用する TCP 輻輳制御アルゴリズムを設定することができる。 非特権"
21285 "プロセスが使用できるアルゴリズムは (上述の) "
21286 "I<tcp_allowed_congestion_control> で設定されたものだけに制限される。 特権プロ"
21287 "セス (B<CAP_NET_ADMIN>) は任意の輻輳制御アルゴリズムを選択することができる "
21288 "(上記の B<tcp_available_congestion_control> の説明を参照)。"
21289
21290 #. type: TP
21291 #: build/C/man7/tcp.7:923
21292 #, no-wrap
21293 msgid "B<TCP_CORK> (since Linux 2.2)"
21294 msgstr "B<TCP_CORK> (Linux 2.2 以降)"
21295
21296 #.  precisely: since 2.1.127
21297 #. type: Plain text
21298 #: build/C/man7/tcp.7:939
21299 msgid ""
21300 "If set, don't send out partial frames.  All queued partial frames are sent "
21301 "when the option is cleared again.  This is useful for prepending headers "
21302 "before calling B<sendfile>(2), or for throughput optimization.  As currently "
21303 "implemented, there is a 200 millisecond ceiling on the time for which output "
21304 "is corked by B<TCP_CORK>.  If this ceiling is reached, then queued data is "
21305 "automatically transmitted.  This option can be combined with B<TCP_NODELAY> "
21306 "only since Linux 2.5.71.  This option should not be used in code intended to "
21307 "be portable."
21308 msgstr ""
21309 "セットされると、 partial フレームを送信しない。 このオプションが解除される"
21310 "と、 キューイングされた partial フレームが送られる。これは B<sendfile>(2)  を"
21311 "呼ぶ前にヘッダを前置したり、 スループットを最適化したい場合に便利である。 現"
21312 "在の実装では、 B<TCP_CORK> で出力を抑えることができる時間の上限は 200 ミリ秒"
21313 "である。 この上限に達すると、キューイングされたデータは自動的に送信される。 "
21314 "Linux 2.5.71 以降においてのみ、このオプションを B<TCP_NODELAY> と同時に用いる"
21315 "ことができる。 移植性の必要なプログラムではこのオプションを用いるべきではな"
21316 "い。"
21317
21318 #. type: TP
21319 #: build/C/man7/tcp.7:939
21320 #, no-wrap
21321 msgid "B<TCP_DEFER_ACCEPT> (since Linux 2.4)"
21322 msgstr "B<TCP_DEFER_ACCEPT> (Linux 2.4 以降)"
21323
21324 #.  Precisely: since 2.3.38
21325 #.  Useful references:
21326 #.  http://www.techrepublic.com/article/take-advantage-of-tcp-ip-options-to-optimize-data-transmission/
21327 #.  http://unix.stackexchange.com/questions/94104/real-world-use-of-tcp-defer-accept
21328 #. type: Plain text
21329 #: build/C/man7/tcp.7:950
21330 msgid ""
21331 "Allow a listener to be awakened only when data arrives on the socket.  Takes "
21332 "an integer value (seconds), this can bound the maximum number of attempts "
21333 "TCP will make to complete the connection.  This option should not be used in "
21334 "code intended to be portable."
21335 msgstr ""
21336 "これを用いると、リスナはデータがソケットに到着した時のみ目覚めるようになる。 "
21337 "整数値 (秒) をとり、 TCP が接続を完了しようと試みる回数を制限できる。 移植性"
21338 "の必要なプログラムではこのオプションを用いるべきではない。"
21339
21340 #. type: TP
21341 #: build/C/man7/tcp.7:950
21342 #, no-wrap
21343 msgid "B<TCP_INFO> (since Linux 2.4)"
21344 msgstr "B<TCP_INFO> (Linux 2.4 以降)"
21345
21346 #. type: Plain text
21347 #: build/C/man7/tcp.7:956
21348 msgid ""
21349 "Used to collect information about this socket.  The kernel returns a "
21350 "I<struct tcp_info> as defined in the file I</usr/include/linux/tcp.h>.  This "
21351 "option should not be used in code intended to be portable."
21352 msgstr ""
21353 "このソケットの情報を収集するのに用いる。 カーネルは I</usr/include/linux/tcp."
21354 "h> ファイルで定義されている I<struct tcp_info> を返す。 移植性の必要なプログ"
21355 "ラムではこのオプションを用いるべきではない。"
21356
21357 #. type: TP
21358 #: build/C/man7/tcp.7:956
21359 #, no-wrap
21360 msgid "B<TCP_KEEPCNT> (since Linux 2.4)"
21361 msgstr "B<TCP_KEEPCNT> (Linux 2.4 以降)"
21362
21363 #.  Precisely: since 2.3.18
21364 #. type: Plain text
21365 #: build/C/man7/tcp.7:963
21366 msgid ""
21367 "The maximum number of keepalive probes TCP should send before dropping the "
21368 "connection.  This option should not be used in code intended to be portable."
21369 msgstr ""
21370 "接続を落とす前に TCP が試みる keepalive プローブの最大回数。 移植性の必要なプ"
21371 "ログラムではこのオプションを用いるべきではない。"
21372
21373 #. type: TP
21374 #: build/C/man7/tcp.7:963
21375 #, no-wrap
21376 msgid "B<TCP_KEEPIDLE> (since Linux 2.4)"
21377 msgstr "B<TCP_KEEPIDLE> (Linux 2.4 以降)"
21378
21379 #.  Precisely: since 2.3.18
21380 #. type: Plain text
21381 #: build/C/man7/tcp.7:972
21382 msgid ""
21383 "The time (in seconds) the connection needs to remain idle before TCP starts "
21384 "sending keepalive probes, if the socket option B<SO_KEEPALIVE> has been set "
21385 "on this socket.  This option should not be used in code intended to be "
21386 "portable."
21387 msgstr ""
21388 "この時間 (秒単位) を越えて接続がアイドル状態に留まっていると、 このソケット"
21389 "に B<SO_KEEPALIVE> ソケットオプションが設定されている場合、 TCP は keepalive "
21390 "プローブを送りはじめる。 移植性の必要なプログラムではこのオプションを用いるべ"
21391 "きではない。"
21392
21393 #. type: TP
21394 #: build/C/man7/tcp.7:972
21395 #, no-wrap
21396 msgid "B<TCP_KEEPINTVL> (since Linux 2.4)"
21397 msgstr "B<TCP_KEEPINTVL> (Linux 2.4 以降)"
21398
21399 #.  Precisely: since 2.3.18
21400 #. type: Plain text
21401 #: build/C/man7/tcp.7:977
21402 msgid ""
21403 "The time (in seconds) between individual keepalive probes.  This option "
21404 "should not be used in code intended to be portable."
21405 msgstr ""
21406 "各 keepalive プローブの間隔 (秒単位)。 移植性の必要なプログラムではこのオプ"
21407 "ションを用いるべきではない。"
21408
21409 #. type: TP
21410 #: build/C/man7/tcp.7:977
21411 #, no-wrap
21412 msgid "B<TCP_LINGER2> (since Linux 2.4)"
21413 msgstr "B<TCP_LINGER2> (Linux 2.4 以降)"
21414
21415 #.  Precisely: since 2.3.41
21416 #. type: Plain text
21417 #: build/C/man7/tcp.7:989
21418 msgid ""
21419 "The lifetime of orphaned FIN_WAIT2 state sockets.  This option can be used "
21420 "to override the system-wide setting in the file I</proc/sys/net/ipv4/"
21421 "tcp_fin_timeout> for this socket.  This is not to be confused with the "
21422 "B<socket>(7)  level option B<SO_LINGER>.  This option should not be used in "
21423 "code intended to be portable."
21424 msgstr ""
21425 "orphan された FIN_WAIT2 状態のソケットの寿命。 このオプションを用いると、シス"
21426 "テム全体に適用されるファイル I</proc/sys/net/ipv4/tcp_fin_timeout> の値を、こ"
21427 "のソケットに対してのみ変更できる。 B<socket>(7)  レベルのオプション "
21428 "B<SO_LINGER> と混同しないこと。 移植性の必要なプログラムではこのオプションを"
21429 "用いるべきではない。"
21430
21431 #. type: TP
21432 #: build/C/man7/tcp.7:989
21433 #, no-wrap
21434 msgid "B<TCP_MAXSEG>"
21435 msgstr "B<TCP_MAXSEG>"
21436
21437 #.  Present in Linux 1.0
21438 #. type: Plain text
21439 #: build/C/man7/tcp.7:999
21440 msgid ""
21441 "The maximum segment size for outgoing TCP packets.  In Linux 2.2 and "
21442 "earlier, and in Linux 2.6.28 and later, if this option is set before "
21443 "connection establishment, it also changes the MSS value announced to the "
21444 "other end in the initial packet.  Values greater than the (eventual) "
21445 "interface MTU have no effect.  TCP will also impose its minimum and maximum "
21446 "bounds over the value provided."
21447 msgstr ""
21448 "送出 TCP パケットの最大セグメントサイズ。 Linux 2.2 以前と Linux\n"
21449 "2.6.28 以降では、このオプションを接続確立の前に設定すると、初期パケット\n"
21450 "で他端にアナウンスする MSS の値も変化する。インターフェースの MTU より\n"
21451 "も大きな (あるいは大きくなってしまった) 値は効果を持たない。 また TCP\n"
21452 "は、この値よりも最小・最大の制限の方を優先する。"
21453
21454 #. type: TP
21455 #: build/C/man7/tcp.7:999
21456 #, no-wrap
21457 msgid "B<TCP_NODELAY>"
21458 msgstr "B<TCP_NODELAY>"
21459
21460 #.  Present in Linux 1.0
21461 #. type: Plain text
21462 #: build/C/man7/tcp.7:1016
21463 msgid ""
21464 "If set, disable the Nagle algorithm.  This means that segments are always "
21465 "sent as soon as possible, even if there is only a small amount of data.  "
21466 "When not set, data is buffered until there is a sufficient amount to send "
21467 "out, thereby avoiding the frequent sending of small packets, which results "
21468 "in poor utilization of the network.  This option is overridden by "
21469 "B<TCP_CORK>; however, setting this option forces an explicit flush of "
21470 "pending output, even if B<TCP_CORK> is currently set."
21471 msgstr ""
21472 "設定すると Nagle アルゴリズムを無効にする。 すなわち、データ量が少ない場合で"
21473 "も 各セグメントは可能な限り早く送信される。 設定されていないと、 送信する分だ"
21474 "け溜まるまでデータはバッファされ、 小さなパケットを頻繁に送らずにすみ、 ネッ"
21475 "トワークを有効に利用できる。 このオプションは B<TCP_CORK> により上書きされ"
21476 "る。しかしながら、 B<TCP_CORK> が設定されている場合であっても、このオプション"
21477 "を設定すると、 送信待ちの出力を明示的に掃き出す (flush) ことになる。"
21478
21479 #. type: TP
21480 #: build/C/man7/tcp.7:1016
21481 #, no-wrap
21482 msgid "B<TCP_QUICKACK> (since Linux 2.4.4)"
21483 msgstr "B<TCP_QUICKACK> (Linux 2.4.4 以降)"
21484
21485 #. type: Plain text
21486 #: build/C/man7/tcp.7:1031
21487 msgid ""
21488 "Enable quickack mode if set or disable quickack mode if cleared.  In "
21489 "quickack mode, acks are sent immediately, rather than delayed if needed in "
21490 "accordance to normal TCP operation.  This flag is not permanent, it only "
21491 "enables a switch to or from quickack mode.  Subsequent operation of the TCP "
21492 "protocol will once again enter/leave quickack mode depending on internal "
21493 "protocol processing and factors such as delayed ack timeouts occurring and "
21494 "data transfer.  This option should not be used in code intended to be "
21495 "portable."
21496 msgstr ""
21497 "設定されていると quickack モードを有効にし、クリアされると無効にする。 通常"
21498 "の TCP 動作では ack は必要に応じて遅延されるのに対し、 quickack モードでは "
21499 "ack はすぐに送信される。 このフラグは永続的なものではなく、 quickack モードか"
21500 "ら/モードへ切り替えるためのものである。 これ以降の TCP プロトコルの動作によっ"
21501 "ては、 内部のプロトコル処理や、遅延 ack タイムアウトの発生、 データ転送などの"
21502 "要因によって、 再び quickack から出たり入ったりする。 移植性の必要なプログラ"
21503 "ムではこのオプションを用いるべきではない。"
21504
21505 #. type: TP
21506 #: build/C/man7/tcp.7:1031
21507 #, no-wrap
21508 msgid "B<TCP_SYNCNT> (since Linux 2.4)"
21509 msgstr "B<TCP_SYNCNT> (Linux 2.4 以降)"
21510
21511 #.  Precisely: since 2.3.18
21512 #. type: Plain text
21513 #: build/C/man7/tcp.7:1038
21514 msgid ""
21515 "Set the number of SYN retransmits that TCP should send before aborting the "
21516 "attempt to connect.  It cannot exceed 255.  This option should not be used "
21517 "in code intended to be portable."
21518 msgstr ""
21519 "接続の試行を中止させる前に TCP が送る SYN 再送数を設定する。 これは 255 より"
21520 "大きくはできない。 移植性の必要なプログラムではこのオプションを用いるべきでは"
21521 "ない。"
21522
21523 #. type: TP
21524 #: build/C/man7/tcp.7:1038
21525 #, no-wrap
21526 msgid "B<TCP_USER_TIMEOUT> (since Linux 2.6.37)"
21527 msgstr "B<TCP_USER_TIMEOUT> (Linux 2.6.37 以降)"
21528
21529 #.          commit dca43c75e7e545694a9dd6288553f55c53e2a3a3
21530 #.          Author: Jerry Chu <hkchu@google.com>
21531 #.  The following text taken nearly verbatim from Jerry Chu's (excellent)
21532 #.  commit message.
21533 #. type: Plain text
21534 #: build/C/man7/tcp.7:1056
21535 msgid ""
21536 "This option takes an I<unsigned int> as an argument.  When the value is "
21537 "greater than 0, it specifies the maximum amount of time in milliseconds that "
21538 "transmitted data may remain unacknowledged before TCP will forcibly close "
21539 "the corresponding connection and return B<ETIMEDOUT> to the application.  If "
21540 "the option value is specified as 0, TCP will to use the system default."
21541 msgstr ""
21542 "このオプションは I<unsigned int> 型の引き数を取る。 値が 0 より大きい場合、そ"
21543 "の値は、 どのくらいの時間、送信されたデータが ACK を受信しないままの状態が続"
21544 "くと、 TCP がその接続を強制的にクローズし、アプリケーションに B<ETIMEDOUT> を"
21545 "返すかを、 ミリ秒単位で指定する。 オプションの値が 0 の場合、TCP はシステムの"
21546 "デフォルト値を使用する。"
21547
21548 #. type: Plain text
21549 #: build/C/man7/tcp.7:1063
21550 msgid ""
21551 "Increasing user timeouts allows a TCP connection to survive extended periods "
21552 "without end-to-end connectivity.  Decreasing user timeouts allows "
21553 "applications to \"fail fast\", if so desired.  Otherwise, failure may take "
21554 "up to 20 minutes with the current system defaults in a normal WAN "
21555 "environment."
21556 msgstr ""
21557 "ユーザータイムアウトを長くすると、 通信の両端での接続性がない場合でも長い時"
21558 "間 TCP 接続が維持されるようになる。 ユーザータイムアウトを短くすると、 アプリ"
21559 "ケーションは必要であれば「早く失敗」できるようになる。 設定しなかった場合"
21560 "は、 通常の WAN 環境では現在のシステムのデフォルトの 20 分で失敗することにな"
21561 "る。"
21562
21563 #. type: Plain text
21564 #: build/C/man7/tcp.7:1073
21565 msgid ""
21566 "This option can be set during any state of a TCP connection, but is only "
21567 "effective during the synchronized states of a connection (ESTABLISHED, FIN-"
21568 "WAIT-1, FIN-WAIT-2, CLOSE-WAIT, CLOSING, and LAST-ACK).  Moreover, when used "
21569 "with the TCP keepalive (B<SO_KEEPALIVE>)  option, B<TCP_USER_TIMEOUT> will "
21570 "override keepalive to determine when to close a connection due to keepalive "
21571 "failure."
21572 msgstr ""
21573 "このオプションは TCP 接続がどの状態の場合でも設定することができるが、 接続が"
21574 "同期状態 (ESTABLISHED, FIN-WAIT-1, FIN-WAIT-2, CLOSE-WAIT, CLOSING, LAST-"
21575 "ACK) の場合のみ効果がある。 また、 TCP keepalive (B<SO_KEEPALIVE>) オプション"
21576 "とともに使用された場合、 B<TCP_USER_TIMEOUT> は keepalive 失敗による接続ク"
21577 "ローズを判定するための keepalive 値を上書きする。"
21578
21579 #. type: Plain text
21580 #: build/C/man7/tcp.7:1076
21581 msgid ""
21582 "The option has no effect on when TCP retransmits a packet, nor when a "
21583 "keepalive probe is sent."
21584 msgstr ""
21585 "このオプションは TCP がパケットを再送する際や keepalive プローブを送信する際"
21586 "には影響を及ぼさない。"
21587
21588 #. type: Plain text
21589 #: build/C/man7/tcp.7:1080
21590 msgid ""
21591 "This option, like many others, will be inherited by the socket returned by "
21592 "B<accept>(2), if it was set on the listening socket."
21593 msgstr ""
21594 "他の多くのオプション同様、リッスン中のソケットでこのオプションがセットされて"
21595 "いれば B<accept>(2) が返すソケットにオプションが継承される。"
21596
21597 #. type: Plain text
21598 #: build/C/man7/tcp.7:1083
21599 msgid ""
21600 "Further details on the user timeout feature can be found in RFC\\ 793 and RFC"
21601 "\\ 5482 (\"TCP User Timeout Option\")."
21602 msgstr ""
21603 "ユーザータイムアウト機能の詳細は RFC\\ 793 と  RFC\\ 5482 (\"TCP User "
21604 "Timeout Option\") に書かれている。"
21605
21606 #. type: TP
21607 #: build/C/man7/tcp.7:1083
21608 #, no-wrap
21609 msgid "B<TCP_WINDOW_CLAMP> (since Linux 2.4)"
21610 msgstr "B<TCP_WINDOW_CLAMP> (Linux 2.4 以降)"
21611
21612 #.  Precisely: since 2.3.41
21613 #. type: Plain text
21614 #: build/C/man7/tcp.7:1090
21615 msgid ""
21616 "Bound the size of the advertised window to this value.  The kernel imposes a "
21617 "minimum size of SOCK_MIN_RCVBUF/2.  This option should not be used in code "
21618 "intended to be portable."
21619 msgstr ""
21620 "広報するウィンドウのサイズをこの値に固定する。 カーネルによって最小サイズは "
21621 "SOCK_MIN_RCVBUF/2 に制限されている。 このオプションは移植性の必要なコードでは"
21622 "用いるべきでない。"
21623
21624 #. type: SS
21625 #: build/C/man7/tcp.7:1090 build/C/man7/unix.7:260
21626 #, no-wrap
21627 msgid "Sockets API"
21628 msgstr "ソケット API"
21629
21630 #. type: Plain text
21631 #: build/C/man7/tcp.7:1099
21632 msgid ""
21633 "TCP provides limited support for out-of-band data, in the form of (a single "
21634 "byte of) urgent data.  In Linux this means if the other end sends newer out-"
21635 "of-band data the older urgent data is inserted as normal data into the "
21636 "stream (even when B<SO_OOBINLINE> is not set).  This differs from BSD-based "
21637 "stacks."
21638 msgstr ""
21639 "TCP は帯域外データ (out-of-band data) を限定的にサポートしており、 (1 バイト"
21640 "の) 緊急データという形である。 つまり Linux においては、 接続先が (新しいやり"
21641 "方の) 帯域外データを送ってきた場合、 (古いやり方の)  緊急データは通常のデータ"
21642 "としてストリームに挿入されることになる (これは B<SO_OOBINLINE> がセットされて"
21643 "いる場合でも同様である)。 これは BSD ベースのスタックとは異なる。"
21644
21645 #. type: Plain text
21646 #: build/C/man7/tcp.7:1106
21647 msgid ""
21648 "Linux uses the BSD compatible interpretation of the urgent pointer field by "
21649 "default.  This violates RFC\\ 1122, but is required for interoperability "
21650 "with other stacks.  It can be changed via I</proc/sys/net/ipv4/tcp_stdurg>."
21651 msgstr ""
21652 "Linux は、デフォルトでは urgent ポインタフィールドの解釈に BSD 互換の方法を用"
21653 "いる。これは RFC\\ 1122 に反しているが、 他のスタックと同時に動作させるにはや"
21654 "むを得ない。これは I</proc/sys/net/ipv4/tcp_stdurg> によって変更できる。"
21655
21656 #. type: Plain text
21657 #: build/C/man7/tcp.7:1111
21658 msgid ""
21659 "It is possible to peek at out-of-band data using the B<recv>(2)  B<MSG_PEEK> "
21660 "flag."
21661 msgstr ""
21662 "B<recv>(2)  の B<MSG_PEEK> フラグを使うと、帯域外データを覗き見することができ"
21663 "る。"
21664
21665 #. type: Plain text
21666 #: build/C/man7/tcp.7:1127
21667 msgid ""
21668 "Since version 2.4, Linux supports the use of B<MSG_TRUNC> in the I<flags> "
21669 "argument of B<recv>(2)  (and B<recvmsg>(2)).  This flag causes the received "
21670 "bytes of data to be discarded, rather than passed back in a caller-supplied "
21671 "buffer.  Since Linux 2.4.4, B<MSG_TRUNC> also has this effect when used in "
21672 "conjunction with B<MSG_OOB> to receive out-of-band data."
21673 msgstr ""
21674 "Linux 2.4 以降では、 B<recv>(2)  (や B<recvmsg>(2))  の I<flags> 引き数に "
21675 "B<MSG_TRUNC> を使うことができる。 このフラグを指定すると、受信データは、呼び"
21676 "出し元から渡されたバッファ にコピーされて返されるのではなく、廃棄されるように"
21677 "なる。 Linux 2.4.4 以降では、 B<MSG_TRUNC> を、帯域外データを受信するための "
21678 "B<MSG_OOB> と組み合わせて使った場合にも、これと同じ効果を持つようになってい"
21679 "る。"
21680
21681 #. type: Plain text
21682 #: build/C/man7/tcp.7:1133 build/C/man7/unix.7:373
21683 msgid ""
21684 "The following B<ioctl>(2)  calls return information in I<value>.  The "
21685 "correct syntax is:"
21686 msgstr ""
21687 "以下の B<ioctl>(2) 呼び出しは I<value> に情報を入れて返す。\n"
21688 "正しい書式は以下の通り。"
21689
21690 #. type: Plain text
21691 #: build/C/man7/tcp.7:1138
21692 #, no-wrap
21693 msgid ""
21694 "B<int>I< value>B<;>\n"
21695 "I<error>B< = ioctl(>I<tcp_socket>B<, >I<ioctl_type>B<, &>I<value>B<);>\n"
21696 msgstr ""
21697 "B<int>I< value>B<;>\n"
21698 "I<error>B< = ioctl(>I<tcp_socket>B<, >I<ioctl_type>B<, &>I<value>B<);>\n"
21699
21700 #. type: Plain text
21701 #: build/C/man7/tcp.7:1143
21702 msgid "I<ioctl_type> is one of the following:"
21703 msgstr "I<ioctl_type> は以下のいずれか一つである:"
21704
21705 #. type: TP
21706 #: build/C/man7/tcp.7:1143 build/C/man7/unix.7:383
21707 #, no-wrap
21708 msgid "B<SIOCINQ>"
21709 msgstr "B<SIOCINQ>"
21710
21711 #.  FIXME . http://sources.redhat.com/bugzilla/show_bug.cgi?id=12002,
21712 #.  filed 2010-09-10, may cause SIOCINQ to be defined in glibc headers
21713 #.  SIOCOUTQ also has an effect for UNIX domain sockets, but not
21714 #.  quite what userland might expect. It seems to return the number
21715 #.  of bytes allocated for buffers containing pending output.
21716 #.  That number is normally larger than the number of bytes of pending
21717 #.  output. Since this info is, from userland's point of view, imprecise,
21718 #.  and it may well change, probably best not to document this now.
21719 #. type: Plain text
21720 #: build/C/man7/tcp.7:1159 build/C/man7/unix.7:405
21721 msgid ""
21722 "Returns the amount of queued unread data in the receive buffer.  The socket "
21723 "must not be in LISTEN state, otherwise an error (B<EINVAL>)  is returned.  "
21724 "B<SIOCINQ> is defined in I<E<lt>linux/sockios.hE<gt>>.  Alternatively, you "
21725 "can use the synonymous B<FIONREAD>, defined in I<E<lt>sys/ioctl.hE<gt>>."
21726 msgstr ""
21727 "受信バッファのキューにある、まだ読んでいないデータの量を返す。ソケットは\n"
21728 "LISTEN 状態にあってはならず、さもないとエラー (B<EINVAL>) が返る。\n"
21729 "B<SIOCINQ> は I<E<lt>linux/sockios.hE<gt>> で定義されている。\n"
21730 "代わりに、I<E<lt>sys/ioctl.hE<gt>> で定義されている、同義語の B<FIONREAD>\n"
21731 "を使うこともできる。"
21732
21733 #. type: TP
21734 #: build/C/man7/tcp.7:1159
21735 #, no-wrap
21736 msgid "B<SIOCATMARK>"
21737 msgstr "B<SIOCATMARK>"
21738
21739 #. type: Plain text
21740 #: build/C/man7/tcp.7:1164
21741 msgid ""
21742 "Returns true (i.e., I<value> is nonzero) if the inbound data stream is at "
21743 "the urgent mark."
21744 msgstr ""
21745 "受信データストリームが緊急マークの位置であれば、真を返す (つまり I<value> が "
21746 "0 以外)。"
21747
21748 #. type: Plain text
21749 #: build/C/man7/tcp.7:1180
21750 msgid ""
21751 "If the B<SO_OOBINLINE> socket option is set, and B<SIOCATMARK> returns true, "
21752 "then the next read from the socket will return the urgent data.  If the "
21753 "B<SO_OOBINLINE> socket option is not set, and B<SIOCATMARK> returns true, "
21754 "then the next read from the socket will return the bytes following the "
21755 "urgent data (to actually read the urgent data requires the B<recv(MSG_OOB)> "
21756 "flag)."
21757 msgstr ""
21758 "B<SO_OOBINLINE> ソケットオプションが設定されていて、 B<SIOCATMARK> が真を返し"
21759 "た場合、次のソケットからの読み込みでは緊急データが 返される。 "
21760 "B<SO_OOBINLINE> ソケットオプションが設定されておらず、 B<SIOCATMARK> が真を返"
21761 "した場合、次のソケットからの読み込みでは緊急データに 続くデータが返される (実"
21762 "際に緊急データを読み込むには B<recv(MSG_OOB)> とフラグをつける必要がある)。"
21763
21764 #. type: Plain text
21765 #: build/C/man7/tcp.7:1194
21766 msgid ""
21767 "Note that a read never reads across the urgent mark.  If an application is "
21768 "informed of the presence of urgent data via B<select>(2)  (using the "
21769 "I<exceptfds> argument) or through delivery of a B<SIGURG> signal, then it "
21770 "can advance up to the mark using a loop which repeatedly tests B<SIOCATMARK> "
21771 "and performs a read (requesting any number of bytes) as long as "
21772 "B<SIOCATMARK> returns false."
21773 msgstr ""
21774 "データの一回の読み込みでは緊急マークを跨がっての読み込みは行われない。 アプリ"
21775 "ケーションが緊急データの存在を (I<exceptfds> 引き数を使って)  B<select>(2)  "
21776 "経由または B<SIGURG> シグナルの配送を通じて知らされた場合、 B<SIOCATMARK> の"
21777 "チェックと読み込み (何バイト読み込み要求をしてもよい) を B<SIOCATMARK> が偽を"
21778 "返さなくなるまで繰り返し行うことで、緊急マークの位置まで 読み進めることができ"
21779 "る。"
21780
21781 #. type: TP
21782 #: build/C/man7/tcp.7:1194
21783 #, no-wrap
21784 msgid "B<SIOCOUTQ>"
21785 msgstr "B<SIOCOUTQ>"
21786
21787 #.  FIXME . http://sources.redhat.com/bugzilla/show_bug.cgi?id=12002,
21788 #.  filed 2010-09-10, may cause SIOCOUTQ to be defined in glibc headers
21789 #. type: Plain text
21790 #: build/C/man7/tcp.7:1210
21791 msgid ""
21792 "Returns the amount of unsent data in the socket send queue.  The socket must "
21793 "not be in LISTEN state, otherwise an error (B<EINVAL>)  is returned.  "
21794 "B<SIOCOUTQ> is defined in I<E<lt>linux/sockios.hE<gt>>.  Alternatively, you "
21795 "can use the synonymous B<TIOCOUTQ>, defined in I<E<lt>sys/ioctl.hE<gt>>."
21796 msgstr ""
21797 "ソケットの送信キューに残っている未送信データの量を返す。ソケットは LISTEN "
21798 "状\n"
21799 "態にあってはならない。 LISTEN 状態の場合にはエラー (B<EINVAL>) となる。\n"
21800 "B<SIOCOUTQ> は I<E<lt>linux/sockios.hE<gt>> で定義されている。\n"
21801 "代わりに、I<E<lt>sys/ioctl.hE<gt>> で定義されている、同義語の B<TIOCOUTQ> "
21802 "を\n"
21803 "使うこともできる。"
21804
21805 #. type: Plain text
21806 #: build/C/man7/tcp.7:1215
21807 msgid ""
21808 "When a network error occurs, TCP tries to resend the packet.  If it doesn't "
21809 "succeed after some time, either B<ETIMEDOUT> or the last received error on "
21810 "this connection is reported."
21811 msgstr ""
21812 "ネットワークエラーが起こると、 TCP はパケットの再送を試みる。 何回かやっても"
21813 "成功しなければ、この接続に対して B<ETIMEOUT> エラーか最後に受信したエラーが返"
21814 "される。"
21815
21816 #. type: Plain text
21817 #: build/C/man7/tcp.7:1226
21818 msgid ""
21819 "Some applications require a quicker error notification.  This can be enabled "
21820 "with the B<IPPROTO_IP> level B<IP_RECVERR> socket option.  When this option "
21821 "is enabled, all incoming errors are immediately passed to the user program.  "
21822 "Use this option with care \\(em it makes TCP less tolerant to routing "
21823 "changes and other normal network conditions."
21824 msgstr ""
21825 "アプリケーションによっては、もっと早くエラーを知らせてほしい場合がある。 これ"
21826 "には B<IPPROTO_IP> レベルの B<IP_RECVERR> ソケットオプションを用いると良い。"
21827 "このオプションが有効になっていると、 到着したエラーはすべてただちにユーザープ"
21828 "ログラムに渡される。 このオプションは慎重に用いること \\(em ルーティングの変"
21829 "更など、 通常ありうるネットワーク状態に対して TCP をより脆弱にしてしまう。"
21830
21831 #. type: TP
21832 #: build/C/man7/tcp.7:1227
21833 #, no-wrap
21834 msgid "B<EAFNOTSUPPORT>"
21835 msgstr "B<EAFNOTSUPPORT>"
21836
21837 #. type: Plain text
21838 #: build/C/man7/tcp.7:1233
21839 msgid "Passed socket address type in I<sin_family> was not B<AF_INET>."
21840 msgstr ""
21841 "I<sin_family> に渡されたソケットアドレスのタイプが B<AF_INET> ではなかった。"
21842
21843 #. type: Plain text
21844 #: build/C/man7/tcp.7:1237
21845 msgid ""
21846 "The other end closed the socket unexpectedly or a read is executed on a shut "
21847 "down socket."
21848 msgstr ""
21849 "接続先が予期しなかったかたちでソケットをクローズした。 またはシャットダウンさ"
21850 "れたソケットに読み込みが実行された。"
21851
21852 #. type: TP
21853 #: build/C/man7/tcp.7:1237
21854 #, no-wrap
21855 msgid "B<ETIMEDOUT>"
21856 msgstr "B<ETIMEDOUT>"
21857
21858 #. type: Plain text
21859 #: build/C/man7/tcp.7:1240
21860 msgid "The other end didn't acknowledge retransmitted data after some time."
21861 msgstr "接続先が、何回かデータを再送しても反応しない。"
21862
21863 #. type: Plain text
21864 #: build/C/man7/tcp.7:1244
21865 msgid ""
21866 "Any errors defined for B<ip>(7)  or the generic socket layer may also be "
21867 "returned for TCP."
21868 msgstr ""
21869 "B<ip>(7)  で定義されているエラーや、ジェネリックなソケット層におけるエラーも "
21870 "TCP に返されることがある。"
21871
21872 #. type: Plain text
21873 #: build/C/man7/tcp.7:1251
21874 msgid ""
21875 "Support for Explicit Congestion Notification, zero-copy B<sendfile>(2), "
21876 "reordering support and some SACK extensions (DSACK) were introduced in 2.4.  "
21877 "Support for forward acknowledgement (FACK), TIME_WAIT recycling, and per-"
21878 "connection keepalive socket options were introduced in 2.3."
21879 msgstr ""
21880 "Explicit Congestion Notification、zero-copy の B<sendfile>(2)、 並び替えのサ"
21881 "ポート、SACK 拡張 (DSACK) などのサポートは 2.4 で導入された。 フォワード確認 "
21882 "(FACK)、TIME_WAIT リサイクル、接続ごとの keepalive に対するソケットオプション"
21883 "は 2.3 で導入された。"
21884
21885 #. type: Plain text
21886 #: build/C/man7/tcp.7:1253
21887 msgid "Not all errors are documented."
21888 msgstr "まだ説明されていないエラーがある。"
21889
21890 #.  Only a single Linux kernel version is described
21891 #.  Info for 2.2 was lost. Should be added again,
21892 #.  or put into a separate page.
21893 #.  .SH AUTHORS
21894 #.  This man page was originally written by Andi Kleen.
21895 #.  It was updated for 2.4 by Nivedita Singhvi with input from
21896 #.  Alexey Kuznetsov's Documentation/networking/ip-sysctl.txt
21897 #.  document.
21898 #. type: Plain text
21899 #: build/C/man7/tcp.7:1263
21900 msgid "IPv6 is not described."
21901 msgstr "IPv6 に関する記述がない。"
21902
21903 #. type: Plain text
21904 #: build/C/man7/tcp.7:1275
21905 msgid ""
21906 "B<accept>(2), B<bind>(2), B<connect>(2), B<getsockopt>(2), B<listen>(2), "
21907 "B<recvmsg>(2), B<sendfile>(2), B<sendmsg>(2), B<socket>(2), B<ip>(7), "
21908 "B<socket>(7)"
21909 msgstr ""
21910 "B<accept>(2), B<bind>(2), B<connect>(2), B<getsockopt>(2), B<listen>(2), "
21911 "B<recvmsg>(2), B<sendfile>(2), B<sendmsg>(2), B<socket>(2), B<ip>(7), "
21912 "B<socket>(7)"
21913
21914 #. type: Plain text
21915 #: build/C/man7/tcp.7:1277
21916 msgid "RFC\\ 793 for the TCP specification."
21917 msgstr "RFC\\ 793: TCP の仕様。"
21918
21919 #. type: Plain text
21920 #: build/C/man7/tcp.7:1279
21921 msgid ""
21922 "RFC\\ 1122 for the TCP requirements and a description of the Nagle algorithm."
21923 msgstr "RFC\\ 1122: TCP の要求事項と Nagle アルゴリズムの記述。"
21924
21925 #. type: Plain text
21926 #: build/C/man7/tcp.7:1281
21927 msgid "RFC\\ 1323 for TCP timestamp and window scaling options."
21928 msgstr "RFC\\ 1323: TCP のタイムスタンプ・ウィンドウスケーリング各オプション。"
21929
21930 #. type: Plain text
21931 #: build/C/man7/tcp.7:1283
21932 msgid "RFC\\ 1337 for a description of TIME_WAIT assassination hazards."
21933 msgstr "RFC\\ 1337: TIME_WAIT assassination hazard に関する説明。"
21934
21935 #. type: Plain text
21936 #: build/C/man7/tcp.7:1285
21937 msgid "RFC\\ 3168 for a description of Explicit Congestion Notification."
21938 msgstr "RFC\\ 3168: Explicit Congestion Notification に関する説明。"
21939
21940 #. type: Plain text
21941 #: build/C/man7/tcp.7:1287
21942 msgid "RFC\\ 2581 for TCP congestion control algorithms."
21943 msgstr "RFC\\ 2581: TCP 輻輳制御アルゴリズム。"
21944
21945 #. type: Plain text
21946 #: build/C/man7/tcp.7:1289
21947 msgid "RFC\\ 2018 and RFC\\ 2883 for SACK and extensions to SACK."
21948 msgstr "RFC\\ 2018 と RFC\\ 2883: SACK とその拡張。"
21949
21950 #. type: TH
21951 #: build/C/man7/udp.7:12
21952 #, no-wrap
21953 msgid "UDP"
21954 msgstr "UDP"
21955
21956 #. type: TH
21957 #: build/C/man7/udp.7:12
21958 #, no-wrap
21959 msgid "2013-07-31"
21960 msgstr "2013-07-31"
21961
21962 #. type: Plain text
21963 #: build/C/man7/udp.7:15
21964 msgid "udp - User Datagram Protocol for IPv4"
21965 msgstr "udp - IPv4 の ユーザーデータグラムプロトコル"
21966
21967 #. type: Plain text
21968 #: build/C/man7/udp.7:21
21969 msgid "B<#include E<lt>netinet/udp.hE<gt>>"
21970 msgstr "B<#include E<lt>netinet/udp.hE<gt>>"
21971
21972 #. type: Plain text
21973 #: build/C/man7/udp.7:23
21974 msgid "B<udp_socket = socket(AF_INET, SOCK_DGRAM, 0);>"
21975 msgstr "B<udp_socket = socket(AF_INET, SOCK_DGRAM, 0);>"
21976
21977 #. type: Plain text
21978 #: build/C/man7/udp.7:29
21979 msgid ""
21980 "This is an implementation of the User Datagram Protocol described in RFC\\ "
21981 "768.  It implements a connectionless, unreliable datagram packet service.  "
21982 "Packets may be reordered or duplicated before they arrive.  UDP generates "
21983 "and checks checksums to catch transmission errors."
21984 msgstr ""
21985 "これは RFC\\ 768 で記述されている User Datagram Protocol の実装である。 UDP "
21986 "はコネクションレスの、信頼性の低いデータパケットサービスである。 パケットは到"
21987 "着前に並び替えられたり複製されたりする。 UDP は転送エラーを検出するために"
21988 "チェックサムを生成・チェックする。"
21989
21990 #. type: Plain text
21991 #: build/C/man7/udp.7:58
21992 msgid ""
21993 "When a UDP socket is created, its local and remote addresses are "
21994 "unspecified.  Datagrams can be sent immediately using B<sendto>(2)  or "
21995 "B<sendmsg>(2)  with a valid destination address as an argument.  When "
21996 "B<connect>(2)  is called on the socket, the default destination address is "
21997 "set and datagrams can now be sent using B<send>(2)  or B<write>(2)  without "
21998 "specifying a destination address.  It is still possible to send to other "
21999 "destinations by passing an address to B<sendto>(2)  or B<sendmsg>(2).  In "
22000 "order to receive packets, the socket can be bound to a local address first "
22001 "by using B<bind>(2).  Otherwise, the socket layer will automatically assign "
22002 "a free local port out of the range defined by I</proc/sys/net/ipv4/"
22003 "ip_local_port_range> and bind the socket to B<INADDR_ANY>."
22004 msgstr ""
22005 "UDP ソケットが生成されるとき、 ローカルアドレスやリモートアドレスは指定されな"
22006 "い。 正しい行き先アドレスを引数として B<sendto>(2)  や B<sendmsg>(2)  を呼べ"
22007 "ば、データグラムはただちに送信される。 ソケットに対して B<connect>(2)  を呼ぶ"
22008 "と、デフォルトの行き先アドレスが設定され、 B<send>(2)  や B<write>(2)  を使っ"
22009 "て、行き先アドレスの指定なしにデータグラムを送信できるようになる。 この場合で"
22010 "も、行き先アドレスを B<sendto>(2)  や B<sendmsg>(2)  に渡せば、デフォルト以外"
22011 "のアドレスに送信可能である。 パケットを受信するために、まずソケットを "
22012 "B<bind>(2)  を用いてローカルなアドレスにバインドさせることもできる。 そうでな"
22013 "い場合は、ソケット層は自動的に I</proc/sys/net/ipv4/ip_local_port_range> で定"
22014 "義されている範囲の外で空いているローカルなポートを割り当て、 ソケットを "
22015 "B<INADDR_ANY> にバインドする。"
22016
22017 #. type: Plain text
22018 #: build/C/man7/udp.7:66
22019 msgid ""
22020 "All receive operations return only one packet.  When the packet is smaller "
22021 "than the passed buffer, only that much data is returned; when it is bigger, "
22022 "the packet is truncated and the B<MSG_TRUNC> flag is set.  B<MSG_WAITALL> is "
22023 "not supported."
22024 msgstr ""
22025 "受信動作はパケットを一つだけ返す。渡したバッファよりもパケットが 小さければ、"
22026 "そのパケットの大きさのデータだけが返される。 逆にバッファよりも大きい場合はパ"
22027 "ケットは丸められ、 B<MSG_TRUNC> フラグがセットされる。 B<MSG_WAITALL> はサ"
22028 "ポートしていない。"
22029
22030 #. type: Plain text
22031 #: build/C/man7/udp.7:75
22032 msgid ""
22033 "IP options may be sent or received using the socket options described in "
22034 "B<ip>(7).  They are processed by the kernel only when the appropriate I</"
22035 "proc> parameter is enabled (but still passed to the user even when it is "
22036 "turned off).  See B<ip>(7)."
22037 msgstr ""
22038 "IP オプションは、 B<ip>(7)  に記述されているソケットオプションを用いて読み書"
22039 "きできる。 これらは適切な I</proc> パラメータが有効な場合に限ってカーネルに"
22040 "よって処理される (しかし無効になっている場合でもユーザーには渡される)。 "
22041 "B<ip>(7)  を参照のこと。"
22042
22043 #. type: Plain text
22044 #: build/C/man7/udp.7:80
22045 msgid ""
22046 "When the B<MSG_DONTROUTE> flag is set on sending, the destination address "
22047 "must refer to a local interface address and the packet is sent only to that "
22048 "interface."
22049 msgstr ""
22050 "B<MSG_DONTROUTE> フラグが送信時にセットされている場合には、 行き先アドレスは"
22051 "ローカルなインターフェースアドレスから 参照できなければならない。パケットはそ"
22052 "のインターフェースにしか送られない。"
22053
22054 #. type: Plain text
22055 #: build/C/man7/udp.7:98
22056 msgid ""
22057 "By default, Linux UDP does path MTU (Maximum Transmission Unit) discovery.  "
22058 "This means the kernel will keep track of the MTU to a specific target IP "
22059 "address and return B<EMSGSIZE> when a UDP packet write exceeds it.  When "
22060 "this happens, the application should decrease the packet size.  Path MTU "
22061 "discovery can be also turned off using the B<IP_MTU_DISCOVER> socket option "
22062 "or the I</proc/sys/net/ipv4/ip_no_pmtu_disc> file; see B<ip>(7)  for "
22063 "details.  When turned off, UDP will fragment outgoing UDP packets that "
22064 "exceed the interface MTU.  However, disabling it is not recommended for "
22065 "performance and reliability reasons."
22066 msgstr ""
22067 "デフォルトでは、Linux の UDP は Path MTU Discovery を行う。 つまり、カーネル"
22068 "は特定の宛先 IP アドレスの MTU (Maximum Transmission Unit; 最大転送単位) を記"
22069 "録し、UDP パケットの書き込みが MTU を超えた場合 B<EMSGSIZE> を返す。 "
22070 "B<EMSGSIZE> を返された場合、アプリケーションはパケットサイズを小さくすべきで"
22071 "ある。 ソケットオプション B<IP_MTU_DISCOVER> または I</proc/sys/net/ipv4/"
22072 "ip_no_pmtu_disc> ファイルを使って Path MTU Discovery を無効にすることもでき"
22073 "る (詳細は B<ip>(7)  を参照)。 Path MTU Discovery を無効にした場合は、パケッ"
22074 "トサイズが インタフェースの MTU よりも大きいと UDP はそのパケットを フラグメ"
22075 "ント化して送出する。 しかしながら、性能と信頼性の理由から Path MTU Discovery "
22076 "を 無効にするのは推奨できない。"
22077
22078 #. type: Plain text
22079 #: build/C/man7/udp.7:103
22080 msgid "UDP uses the IPv4 I<sockaddr_in> address format described in B<ip>(7)."
22081 msgstr ""
22082 "UDP は IPv4 の I<sockaddr_in> アドレスフォーマットを用いる。これは B<ip>(7)  "
22083 "に記述されている。"
22084
22085 #. type: Plain text
22086 #: build/C/man7/udp.7:114
22087 msgid ""
22088 "All fatal errors will be passed to the user as an error return even when the "
22089 "socket is not connected.  This includes asynchronous errors received from "
22090 "the network.  You may get an error for an earlier packet that was sent on "
22091 "the same socket.  This behavior differs from many other BSD socket "
22092 "implementations which don't pass any errors unless the socket is connected.  "
22093 "Linux's behavior is mandated by B<RFC\\ 1122>."
22094 msgstr ""
22095 "致命的なエラーは、たとえソケットが接続されていなくても、 すべてエラー戻り値と"
22096 "してユーザーに渡される。 これにはネットワークから受け取る非同期エラーも含まれ"
22097 "る。 同じソケットを使って送信した昔のパケットに関するエラーを受け取るかもしれ"
22098 "ない。 この振る舞いは他の BSD ソケットの実装の多くとは異なる。 これらではソ"
22099 "ケットが接続されていない場合はエラーを全く返さない。 Linux の振る舞いは B<RFC"
22100 "\\ 1122> での指定に従ったものである。"
22101
22102 #. type: Plain text
22103 #: build/C/man7/udp.7:128
22104 msgid ""
22105 "For compatibility with legacy code, in Linux 2.0 and 2.2 it was possible to "
22106 "set the B<SO_BSDCOMPAT> B<SOL_SOCKET> option to receive remote errors only "
22107 "when the socket has been connected (except for B<EPROTO> and B<EMSGSIZE>).  "
22108 "Locally generated errors are always passed.  Support for this socket option "
22109 "was removed in later kernels; see B<socket>(7)  for further information."
22110 msgstr ""
22111 "Linux 2.0 と 2.2 では、古いコードとの互換性のために、 B<SO_BSDCOMPAT> "
22112 "B<SOL_SOCKET> オプションを設定すれば、ソケットが接続されている 場合に限ってリ"
22113 "モートのエラーを受信するようにできた (B<EPROTO> と B<EMSGSIZE> を除く)。 ロー"
22114 "カルで生成されたエラーは常に渡される。 このソケットオプションのサポートはそれ"
22115 "以降のバージョンの Linux で 削除された。詳細は B<socket>(7)  を参照。"
22116
22117 #. type: Plain text
22118 #: build/C/man7/udp.7:137
22119 msgid ""
22120 "When the B<IP_RECVERR> option is enabled, all errors are stored in the "
22121 "socket error queue, and can be received by B<recvmsg>(2)  with the "
22122 "B<MSG_ERRQUEUE> flag set."
22123 msgstr ""
22124 "B<IP_RECVERR> オプションが有効になっていると、 すべてのエラーはソケットのエ"
22125 "ラーキューに保存される。 これは B<MSG_ERRQUEUE> フラグをセットして "
22126 "B<recvmsg>(2)  を呼べば受信できる。"
22127
22128 #. type: Plain text
22129 #: build/C/man7/udp.7:140
22130 msgid ""
22131 "System-wide UDP parameter settings can be accessed by files in the directory "
22132 "I</proc/sys/net/ipv4/>."
22133 msgstr ""
22134 "システム全体の UDP パラメータ設定には、 I</proc/sys/net/ipv4/> ディレクトリ内"
22135 "のファイルの読み書きでアクセスできる。"
22136
22137 #. type: TP
22138 #: build/C/man7/udp.7:140
22139 #, no-wrap
22140 msgid "I<udp_mem> (since Linux 2.6.25)"
22141 msgstr "I<udp_mem> (Linux 2.6.25 以降)"
22142
22143 #. type: Plain text
22144 #: build/C/man7/udp.7:144
22145 msgid ""
22146 "This is a vector of three integers governing the number of pages allowed for "
22147 "queueing by all UDP sockets."
22148 msgstr ""
22149 "これは 3 つの整数からなるベクトル値で、 UDP の全ソケットのキューで利用可能な"
22150 "ページ数を制御する。"
22151
22152 #. type: Plain text
22153 #: build/C/man7/udp.7:151
22154 msgid ""
22155 "Below this number of pages, UDP is not bothered about its memory appetite.  "
22156 "When the amount of memory allocated by UDP exceeds this number, UDP starts "
22157 "to moderate memory usage."
22158 msgstr ""
22159 "このページ数より少なければ、UDP はそのメモリ使用に関して 干渉されない。 UDP "
22160 "に割り当てられたメモリ総量がこの値を超過すると、 UDP はメモリ使用量を調整し始"
22161 "める。"
22162
22163 #. type: Plain text
22164 #: build/C/man7/udp.7:157
22165 msgid ""
22166 "This value was introduced to follow the format of I<tcp_mem> (see B<tcp>(7))."
22167 msgstr ""
22168 "この値は I<tcp_mem> の形式 (B<tcp>(7)  参照) と合わせるために導入された"
22169
22170 #. type: Plain text
22171 #: build/C/man7/udp.7:160
22172 msgid "Number of pages allowed for queueing by all UDP sockets."
22173 msgstr "UDP の全ソケットのキューで利用可能なページ数。"
22174
22175 #. type: Plain text
22176 #: build/C/man7/udp.7:164
22177 msgid ""
22178 "Defaults values for these three items are calculated at boot time from the "
22179 "amount of available memory."
22180 msgstr ""
22181 "これらの 3 つの値のデフォルト値は、 ブート時に利用可能なメモリ総量から計算さ"
22182 "れる。"
22183
22184 #. type: TP
22185 #: build/C/man7/udp.7:164
22186 #, no-wrap
22187 msgid "I<udp_rmem_min> (integer; default value: PAGE_SIZE; since Linux 2.6.25)"
22188 msgstr "I<udp_rmem_min> (integer; デフォルト値: PAGE_SIZE; Linux 2.6.25 以降)"
22189
22190 #. type: Plain text
22191 #: build/C/man7/udp.7:171
22192 msgid ""
22193 "Minimal size, in bytes, of receive buffers used by UDP sockets in "
22194 "moderation.  Each UDP socket is able to use the size for receiving data, "
22195 "even if total pages of UDP sockets exceed I<udp_mem> pressure."
22196 msgstr ""
22197 "メモリ使用量の調整中に、UDP ソケットが使用できる受信バッファの最小値 (バイト"
22198 "単位)。 UDP の全ソケットのページ使用量の合計が I<udp_mem> pressure を超過して"
22199 "いる場合であっても、 各 UDP ソケットはデータの受信にこのサイズ分だけは使用す"
22200 "ることができる。"
22201
22202 #. type: TP
22203 #: build/C/man7/udp.7:171
22204 #, no-wrap
22205 msgid "I<udp_wmem_min> (integer; default value: PAGE_SIZE; since Linux 2.6.25)"
22206 msgstr "I<udp_wmem_min> (integer; デフォルト値: PAGE_SIZE; Linux 2.6.25 以降)"
22207
22208 #. type: Plain text
22209 #: build/C/man7/udp.7:178
22210 msgid ""
22211 "Minimal size, in bytes, of send buffer used by UDP sockets in moderation.  "
22212 "Each UDP socket is able to use the size for sending data, even if total "
22213 "pages of UDP sockets exceed I<udp_mem> pressure."
22214 msgstr ""
22215 "メモリ使用量の調整中に、UDP ソケットが使用できる送信バッファの最小値 (バイト"
22216 "単位)。 UDP の全ソケットのページ使用量の合計が I<udp_mem> pressure を超過して"
22217 "いる場合であっても、 各 UDP ソケットはデータの送信にこのサイズ分だけは使用す"
22218 "ることができる。"
22219
22220 #. type: Plain text
22221 #: build/C/man7/udp.7:189
22222 msgid ""
22223 "To set or get a UDP socket option, call B<getsockopt>(2)  to read or "
22224 "B<setsockopt>(2)  to write the option with the option level argument set to "
22225 "B<IPPROTO_UDP>.  Unless otherwise noted, I<optval> is a pointer to an I<int>."
22226 msgstr ""
22227 "UDP ソケットオプションを設定または取得するには、 取得には B<getsockopt>(2)  "
22228 "を、設定には B<setsockopt>(2)  をオプションレベル引数に B<IPPROTO_UDP> を指定"
22229 "して呼び出す。 注釈がない限り、 I<optval> は I<int> へのポインタである。"
22230
22231 #. type: TP
22232 #: build/C/man7/udp.7:189
22233 #, no-wrap
22234 msgid "B<UDP_CORK> (since Linux 2.5.44)"
22235 msgstr "B<UDP_CORK> (Linux 2.5.44 以降)"
22236
22237 #.  FIXME document UDP_ENCAP (new in kernel 2.5.67)
22238 #.  From include/linux/udp.h:
22239 #.  /* UDP encapsulation types */
22240 #.  #define UDP_ENCAP_ESPINUDP_NON_IKE      1 /* draft-ietf-ipsec-nat-t-ike-00/01 */
22241 #.  #define UDP_ENCAP_ESPINUDP      2 /* draft-ietf-ipsec-udp-encaps-06 */
22242 #.  #define UDP_ENCAP_L2TPINUDP     3 /* rfc2661 */
22243 #. type: Plain text
22244 #: build/C/man7/udp.7:202
22245 msgid ""
22246 "If this option is enabled, then all data output on this socket is "
22247 "accumulated into a single datagram that is transmitted when the option is "
22248 "disabled.  This option should not be used in code intended to be portable."
22249 msgstr ""
22250 "このオプションが指定されると、このソケットの全てのデータ出力は 一つのデータグ"
22251 "ラムに蓄積され、このオプションが無効化された時に 送信される。 このオプション"
22252 "は移植性を考慮したコードでは用いるべきではない。"
22253
22254 #. type: Plain text
22255 #: build/C/man7/udp.7:206
22256 msgid "These ioctls can be accessed using B<ioctl>(2).  The correct syntax is:"
22257 msgstr ""
22258 "以下に示す ioctl は B<ioctl>(2)  を使ってアクセスできる。 正しい文法は以下の"
22259 "通り。"
22260
22261 #. type: Plain text
22262 #: build/C/man7/udp.7:211
22263 #, no-wrap
22264 msgid ""
22265 "B<int>I< value>B<;>\n"
22266 "I<error>B< = ioctl(>I<udp_socket>B<, >I<ioctl_type>B<, &>I<value>B<);>\n"
22267 msgstr ""
22268 "B<int>I< value>B<;>\n"
22269 "I<error>B< = ioctl(>I<udp_socket>B<, >I<ioctl_type>B<, &>I<value>B<);>\n"
22270
22271 #. type: TP
22272 #: build/C/man7/udp.7:213
22273 #, no-wrap
22274 msgid "B<FIONREAD> (B<SIOCINQ>)"
22275 msgstr "B<FIONREAD> (B<SIOCINQ>)"
22276
22277 #.  See http://www.securiteam.com/unixfocus/5KP0I15IKO.html
22278 #.  "GNUnet DoS (UDP Socket Unreachable)", 14 May 2006
22279 #. type: Plain text
22280 #: build/C/man7/udp.7:231
22281 msgid ""
22282 "Gets a pointer to an integer as argument.  Returns the size of the next "
22283 "pending datagram in the integer in bytes, or 0 when no datagram is pending.  "
22284 "B<Warning:> Using B<FIONREAD>, it is impossible to distinguish the case "
22285 "where no datagram is pending from the case where the next pending datagram "
22286 "contains zero bytes of data.  It is safer to use B<select>(2), B<poll>(2), "
22287 "or B<epoll>(7)  to distinguish these cases."
22288 msgstr ""
22289 "整数へのポインタを引き数に取り、そのポインタに、次の処理待ちのデータグラム"
22290 "の\n"
22291 "サイズをバイト単位で返す。処理待ちのデータグラムがない場合は 0 を返す。\n"
22292 "B<警告>: B<FIONREAD> を使った場合、処理待ちのデータグラムがない場合と、\n"
22293 "次の処理待ちデータグラムが 0 バイトのデータの場合を区別することができない。\n"
22294 "この両者を区別したい場合は、B<select>(2), B<poll>(2), B<epoll>(7) \n"
22295 "を使う方が安全である。"
22296
22297 #. type: TP
22298 #: build/C/man7/udp.7:231
22299 #, no-wrap
22300 msgid "B<TIOCOUTQ> (B<SIOCOUTQ>)"
22301 msgstr "B<TIOCOUTQ> (B<SIOCOUTQ>)"
22302
22303 #. type: Plain text
22304 #: build/C/man7/udp.7:235
22305 msgid ""
22306 "Returns the number of data bytes in the local send queue.  Only supported "
22307 "with Linux 2.4 and above."
22308 msgstr ""
22309 "ローカル送信キューにあるデータサイズをバイト単位で返す。 Linux 2.4 以上でのみ"
22310 "対応している。"
22311
22312 #. type: Plain text
22313 #: build/C/man7/udp.7:241
22314 msgid ""
22315 "In addition, all ioctls documented in B<ip>(7)  and B<socket>(7)  are "
22316 "supported."
22317 msgstr ""
22318 "さらに、 B<ip>(7)  と B<socket>(7)  で述べられている全ての ioctl も対応してい"
22319 "る。"
22320
22321 #. type: Plain text
22322 #: build/C/man7/udp.7:247
22323 msgid ""
22324 "All errors documented for B<socket>(7)  or B<ip>(7)  may be returned by a "
22325 "send or receive on a UDP socket."
22326 msgstr ""
22327 "B<socket>(7)  や B<ip>(7)  に記述されている全てのエラーが、 UDP ソケットの送"
22328 "受信で返される可能性がある。"
22329
22330 #. type: TP
22331 #: build/C/man7/udp.7:247 build/C/man7/unix.7:410
22332 #, no-wrap
22333 msgid "B<ECONNREFUSED>"
22334 msgstr "B<ECONNREFUSED>"
22335
22336 #. type: Plain text
22337 #: build/C/man7/udp.7:251
22338 msgid ""
22339 "No receiver was associated with the destination address.  This might be "
22340 "caused by a previous packet sent over the socket."
22341 msgstr ""
22342 "行き先アドレスに関連づけられている受信者がいない。 これは以前のパケットがその"
22343 "パケットを 上書き送信してしまっているからであることが多い。"
22344
22345 #.  .SH CREDITS
22346 #.  This man page was written by Andi Kleen.
22347 #. type: Plain text
22348 #: build/C/man7/udp.7:256
22349 msgid "B<IP_RECVERR> is a new feature in Linux 2.2."
22350 msgstr "B<IP_RECVERR> は Linux 2.2 の新しい機能である。"
22351
22352 #. type: Plain text
22353 #: build/C/man7/udp.7:261
22354 msgid "B<ip>(7), B<raw>(7), B<socket>(7), B<udplite>(7)"
22355 msgstr "B<ip>(7), B<raw>(7), B<socket>(7), B<udplite>(7)"
22356
22357 #. type: Plain text
22358 #: build/C/man7/udp.7:263
22359 msgid "RFC\\ 768 for the User Datagram Protocol."
22360 msgstr "RFC\\ 768 : User Datagram Protocol"
22361
22362 #. type: Plain text
22363 #: build/C/man7/udp.7:265
22364 msgid "RFC\\ 1122 for the host requirements."
22365 msgstr "RFC\\ 1122 : ホストの必要条件"
22366
22367 #. type: Plain text
22368 #: build/C/man7/udp.7:267
22369 msgid "RFC\\ 1191 for a description of path MTU discovery."
22370 msgstr "RFC\\ 1191 : path MTU discovery の記述"
22371
22372 #. type: TH
22373 #: build/C/man7/udplite.7:27
22374 #, no-wrap
22375 msgid "UDPLITE"
22376 msgstr "UDPLITE"
22377
22378 #. type: Plain text
22379 #: build/C/man7/udplite.7:30
22380 msgid "udplite - Lightweight User Datagram Protocol"
22381 msgstr "udplite - 軽量なユーザーデータグラムプロトコル"
22382
22383 #. type: Plain text
22384 #: build/C/man7/udplite.7:38
22385 msgid "B<sockfd = socket(AF_INET, SOCK_DGRAM, IPPROTO_UDPLITE);>"
22386 msgstr "B<sockfd = socket(AF_INET, SOCK_DGRAM, IPPROTO_UDPLITE);>"
22387
22388 #. type: Plain text
22389 #: build/C/man7/udplite.7:41
22390 msgid ""
22391 "This is an implementation of the Lightweight User Datagram Protocol (UDP-"
22392 "Lite), as described in RFC\\ 3828."
22393 msgstr ""
22394 "これは RFC\\ 3828 に書かれている軽量なユーザーデータグラムプロトコル "
22395 "(Lightweight User Datagram Protocol; UDP-Lite) の実装である。"
22396
22397 #. type: Plain text
22398 #: build/C/man7/udplite.7:47
22399 msgid ""
22400 "UDP-Lite is an extension of UDP (RFC\\ 768) to support variable-length "
22401 "checksums.  This has advantages for some types of multimedia transport that "
22402 "may be able to make use of slightly damaged datagrams, rather than having "
22403 "them discarded by lower-layer protocols."
22404 msgstr ""
22405 "UDP-Lite は UDP (RFC\\ 768) の拡張で、可変長のチェックサムをサポートしてい"
22406 "る。 このプロトコルが効果を発揮するのは、少しだけ壊れたデータグラムがあった場"
22407 "合に、 そのデータグラムを下位レイヤーのプロトコルに廃棄させるのではなく、 そ"
22408 "れを利用することができるような、ある種のマルチメディア転送においてである。"
22409
22410 #. type: Plain text
22411 #: build/C/man7/udplite.7:53
22412 msgid ""
22413 "The variable-length checksum coverage is set via a B<setsockopt>(2)  "
22414 "option.  If this option is not set, the only difference to UDP is in using a "
22415 "different IP protocol identifier (IANA number 136)."
22416 msgstr ""
22417 "可変長のチェックサムの対象範囲は B<setsockopt>(2)  オプション経由で設定され"
22418 "る。 このオプションが設定されていない場合、UDP と異なるのは 違う IP プロトコ"
22419 "ル識別子 (IANA 番号 136) を使用する点だけである。"
22420
22421 #. type: Plain text
22422 #: build/C/man7/udplite.7:58
22423 msgid ""
22424 "The UDP-Lite implementation is a full extension of B<udp>(7)\\(emthat is, it "
22425 "shares the same API and API behavior, and in addition offers two socket "
22426 "options to control the checksum coverage."
22427 msgstr ""
22428 "UDP-Lite の実装は B<udp>(7)  の完全な拡張、すなわち API と API の動作は同じで"
22429 "ある。 これに加えて、2 つのソケットオプションがチェックサムの対象範囲を 制御"
22430 "するために提供されている。"
22431
22432 #. type: Plain text
22433 #: build/C/man7/udplite.7:67
22434 msgid ""
22435 "UDP-Litev4 uses the I<sockaddr_in> address format described in B<ip>(7).  "
22436 "UDP-Litev6 uses the I<sockaddr_in6> address format described in B<ipv6>(7)."
22437 msgstr ""
22438 "UDP-Litev4 は B<ip>(7)  で説明されている I<sockaddr_in> アドレスを使用する。 "
22439 "UDP-Litev6 は B<ipv6>(7)  で説明されている I<sockaddr_in6> アドレスを使用す"
22440 "る。"
22441
22442 #. type: Plain text
22443 #: build/C/man7/udplite.7:80
22444 msgid ""
22445 "To set or get a UDP-Lite socket option, call B<getsockopt>(2)  to read or "
22446 "B<setsockopt>(2)  to write the option with the option level argument set to "
22447 "B<IPPROTO_UDPLITE>.  In addition, all B<IPPROTO_UDP> socket options are "
22448 "valid on a UDP-Lite socket.  See B<udp>(7)  for more information."
22449 msgstr ""
22450 "UDP-Lite のソケットオプションを設定/取得するには、 オプションレベル引き数に "
22451 "B<IPPROTO_UDPLITE> を指定して、取得時には B<getsockopt>(2)  を、設定時には "
22452 "B<setsockopt>(2)  を呼び出す。さらに、全ての B<IPPROTO_UDP> のソケットオプ"
22453 "ションが UDP-Lite ソケットでも使用できる。 詳細は B<udp>(7)  を参照のこと。"
22454
22455 #. type: Plain text
22456 #: build/C/man7/udplite.7:82
22457 msgid "The following two options are specific to UDP-Lite."
22458 msgstr "以下の 2 つが UDP-Lite に固有のオプションである。"
22459
22460 #. type: TP
22461 #: build/C/man7/udplite.7:82
22462 #, no-wrap
22463 msgid "B<UDPLITE_SEND_CSCOV>"
22464 msgstr "B<UDPLITE_SEND_CSCOV>"
22465
22466 #. type: Plain text
22467 #: build/C/man7/udplite.7:87
22468 msgid ""
22469 "This option sets the sender checksum coverage and takes an I<int> as "
22470 "argument, with a checksum coverage value in the range 0..2^16-1."
22471 msgstr ""
22472 "このオプションは送信側のチェックサムの対象範囲を設定する。 I<int> 型を引き数"
22473 "として取り、設定可能な値の範囲は 0 から 2^16-1 までである。"
22474
22475 #. type: Plain text
22476 #: build/C/man7/udplite.7:91
22477 msgid ""
22478 "A value of 0 means that the entire datagram is always covered.  Values from "
22479 "1-7 are illegal (RFC\\ 3828, 3.1) and are rounded up to the minimum coverage "
22480 "of 8."
22481 msgstr ""
22482 "値 0 はデータグラム全体が常にチェックサムの対象となることを意味する。 値 1〜"
22483 "7 は不正であり (RFC\\ 3828 の 3.1 章)、範囲の設定として最小値である 8 に切り"
22484 "上げられる。"
22485
22486 #. type: Plain text
22487 #: build/C/man7/udplite.7:97
22488 msgid ""
22489 "With regard to IPv6 jumbograms (RFC\\ 2675), the UDP-Litev6 checksum "
22490 "coverage is limited to the first 2^16-1 octets, as per RFC\\ 3828, 3.5.  "
22491 "Higher values are therefore silently truncated to 2^16-1.  If in doubt, the "
22492 "current coverage value can always be queried using B<getsockopt>(2)."
22493 msgstr ""
22494 "IPv6 の jumbograms (巨大なデータグラム; RFC\\ 2675) の場合には、 UDP-Litev6 "
22495 "のチェックサムの対象範囲は、RFC\\ 3828 の 3.5 章にあるように、 先頭から "
22496 "2^16-1 オクテットまでに限定される。 そのため、それより大きな値は 2^16-1 に"
22497 "黙って切り詰められる。 現在の対象範囲の値を知りたければ、いつでも "
22498 "B<getsockopt>(2)  を使って値を問い合わせることができる。"
22499
22500 #. type: TP
22501 #: build/C/man7/udplite.7:97
22502 #, no-wrap
22503 msgid "B<UDPLITE_RECV_CSCOV>"
22504 msgstr "B<UDPLITE_RECV_CSCOV>"
22505
22506 #. type: Plain text
22507 #: build/C/man7/udplite.7:108
22508 msgid ""
22509 "This is the receiver-side analogue and uses the same argument format and "
22510 "value range as B<UDPLITE_SEND_CSCOV>.  This option is not required to enable "
22511 "traffic with partial checksum coverage.  Its function is that of a traffic "
22512 "filter: when enabled, it instructs the kernel to drop all packets which have "
22513 "a coverage I<less> than the specified coverage value."
22514 msgstr ""
22515 "これは受信側のチェックサムの対象範囲を設定するもので、 使用される引き数形式と"
22516 "値の範囲は B<UDPLITE_SEND_CSCOV> と同じである。 このオプションは、部分的な"
22517 "チェックサム対象範囲を持つトラフィックを 有効にするのに必要なわけではなく、ト"
22518 "ラフィックフィルターとして機能する。 このオプションが有効にすると、カーネルは"
22519 "指定されたチェックサム対象範囲 よりも「短かい」対象範囲を持つパケットを全て廃"
22520 "棄するようになる。"
22521
22522 #.  SO_NO_CHECK exists and is supported by UDPv4, but is
22523 #.  commented out in socket(7), hence also commented out here
22524 #. .PP
22525 #. Since UDP-Lite mandates checksums, checksumming can not be disabled
22526 #. via the
22527 #. .B SO_NO_CHECK
22528 #. option from
22529 #. .BR socket (7).
22530 #. type: Plain text
22531 #: build/C/man7/udplite.7:121
22532 msgid ""
22533 "When the value of B<UDPLITE_RECV_CSCOV> exceeds the actual packet coverage, "
22534 "incoming packets are silently dropped, but may generate a warning message in "
22535 "the system log."
22536 msgstr ""
22537 "B<UDPLITE_RECV_CSCOV> の値が実際のパケットのチェックサム対象範囲よりも大きい"
22538 "場合、 受信したパケットは黙って廃棄される。 ただし、システムログに対して警告"
22539 "メッセージが生成されるかもしれない。"
22540
22541 #. type: Plain text
22542 #: build/C/man7/udplite.7:126
22543 msgid ""
22544 "All errors documented for B<udp>(7)  may be returned.  UDP-Lite does not add "
22545 "further errors."
22546 msgstr ""
22547 "B<udp>(7)  について書かれている全てのエラーは返る可能性がある。 UDP-Lite 自体"
22548 "は新たなエラーは追加していない。"
22549
22550 #. type: Plain text
22551 #: build/C/man7/udplite.7:129
22552 msgid "I</proc/net/snmp> - basic UDP-Litev4 statistics counters."
22553 msgstr "I</proc/net/snmp> - UDP-Litev4 の基本的な統計情報カウンター。"
22554
22555 #. type: Plain text
22556 #: build/C/man7/udplite.7:132
22557 msgid "I</proc/net/snmp6> - basic UDP-Litev6 statistics counters."
22558 msgstr "I</proc/net/snmp6> - UDP-Litev6 の基本的な統計情報カウンター。"
22559
22560 #. type: Plain text
22561 #: build/C/man7/udplite.7:134
22562 msgid "UDP-Litev4/v6 first appeared in Linux 2.6.20."
22563 msgstr "UDP-Litev4/v6 は Linux 2.6.20 で初めて登場した。"
22564
22565 #.  FIXME . remove this section once glibc supports UDP-Lite
22566 #. type: Plain text
22567 #: build/C/man7/udplite.7:137
22568 msgid "Where glibc support is missing, the following definitions are needed:"
22569 msgstr "glibc によるサポートがない場合は、以下の定義を行う必要がある。"
22570
22571 #.  The following two are defined in the kernel in linux/net/udplite.h
22572 #. type: Plain text
22573 #: build/C/man7/udplite.7:144
22574 #, no-wrap
22575 msgid ""
22576 "#define IPPROTO_UDPLITE     136\n"
22577 "#define UDPLITE_SEND_CSCOV  10\n"
22578 "#define UDPLITE_RECV_CSCOV  11\n"
22579 msgstr ""
22580 "#define IPPROTO_UDPLITE     136\n"
22581 "#define UDPLITE_SEND_CSCOV  10\n"
22582 "#define UDPLITE_RECV_CSCOV  11\n"
22583
22584 #. type: Plain text
22585 #: build/C/man7/udplite.7:151
22586 msgid "B<ip>(7), B<ipv6>(7), B<socket>(7), B<udp>(7)"
22587 msgstr "B<ip>(7), B<ipv6>(7), B<socket>(7), B<udp>(7)"
22588
22589 #. type: Plain text
22590 #: build/C/man7/udplite.7:153
22591 msgid "RFC\\ 3828 for the Lightweight User Datagram Protocol (UDP-Lite)."
22592 msgstr "RFC\\ 3828 for the Lightweight User Datagram Protocol (UDP-Lite)."
22593
22594 #. type: Plain text
22595 #: build/C/man7/udplite.7:156
22596 msgid "I<Documentation/networking/udplite.txt> in the Linux kernel source tree"
22597 msgstr "Linux カーネルソース内の I<Documentation/networking/udplite.txt>"
22598
22599 #. type: TH
22600 #: build/C/man7/unix.7:20
22601 #, no-wrap
22602 msgid "UNIX"
22603 msgstr "UNIX"
22604
22605 #. type: Plain text
22606 #: build/C/man7/unix.7:23
22607 msgid "unix - sockets for local interprocess communication"
22608 msgstr "unix - ローカルな プロセス間通信用のソケット"
22609
22610 #. type: Plain text
22611 #: build/C/man7/unix.7:27
22612 msgid "B<#include E<lt>sys/un.hE<gt>>"
22613 msgstr "B<#include E<lt>sys/un.hE<gt>>"
22614
22615 #. type: Plain text
22616 #: build/C/man7/unix.7:29
22617 msgid "I<unix_socket>B< = socket(AF_UNIX, type, 0);>"
22618 msgstr "I<unix_socket>B< = socket(AF_UNIX, type, 0);>"
22619
22620 #. type: Plain text
22621 #: build/C/man7/unix.7:31
22622 msgid "I<error>B< = socketpair(AF_UNIX, type, 0, int *>I<sv>B<);>"
22623 msgstr "I<error>B< = socketpair(AF_UNIX, type, 0, int *>I<sv>B<);>"
22624
22625 #. type: Plain text
22626 #: build/C/man7/unix.7:42
22627 msgid ""
22628 "The B<AF_UNIX> (also known as B<AF_LOCAL>)  socket family is used to "
22629 "communicate between processes on the same machine efficiently.  "
22630 "Traditionally, UNIX domain sockets can be either unnamed, or bound to a "
22631 "filesystem pathname (marked as being of type socket).  Linux also supports "
22632 "an abstract namespace which is independent of the filesystem."
22633 msgstr ""
22634 "B<AF_UNIX> (B<AF_LOCAL> とも言われる) ソケットファミリーは、同じマシン上で\n"
22635 "プロセス同士が 効率的に通信するために用いられる。伝統的に、UNIX ドメイン\n"
22636 "ソケットは、名前なしにもできるし、 (ソケット型であると印のついた) ファイル\n"
22637 "システムのパス名に 結び付けることもできる。さらに Linux では、ファイル\n"
22638 "システムに依存しない抽象名前空間 (abstract namespace) もサポートしている。"
22639
22640 #. type: Plain text
22641 #: build/C/man7/unix.7:54
22642 msgid ""
22643 "Valid socket types in the UNIX domain are: B<SOCK_STREAM>, for a stream-"
22644 "oriented socket; B<SOCK_DGRAM>, for a datagram-oriented socket that "
22645 "preserves message boundaries (as on most UNIX implementations, UNIX domain "
22646 "datagram sockets are always reliable and don't reorder datagrams); and "
22647 "(since Linux 2.6.4)  B<SOCK_SEQPACKET>, for a connection-oriented socket "
22648 "that preserves message boundaries and delivers messages in the order that "
22649 "they were sent."
22650 msgstr ""
22651 "UNIX ドメインに指定できるソケットタイプは以下の通りである。 B<SOCK_STREAM> "
22652 "は、 ストリーム指向のソケットで有効である。 B<SOCK_DGRAM> は、 メッセージ境界"
22653 "を保存するデータグラム指向のソケットで有効である (ほとんどの UNIX の実装で"
22654 "は、 UNIX ドメイン・データグラム・ソケットは常に信頼でき、 データグラムの並び"
22655 "替えは行わない)。 B<SOCK_SEQPACKET> は、 メッセージ境界を保存し送信された順序"
22656 "でメッセージを届ける接続指向ソケットで有効である (Linux 2.6.4 以降で利用でき"
22657 "る)。"
22658
22659 #. type: Plain text
22660 #: build/C/man7/unix.7:57
22661 msgid ""
22662 "UNIX domain sockets support passing file descriptors or process credentials "
22663 "to other processes using ancillary data."
22664 msgstr ""
22665 "UNIX ドメインソケットでは、補助データを使って ファイルディスクリプタや\n"
22666 "プロセスの信任状 (credential) を 送受信することもできる。"
22667
22668 #. type: Plain text
22669 #: build/C/man7/unix.7:59
22670 msgid "A UNIX domain socket address is represented in the following structure:"
22671 msgstr "UNIX ドメインソケットのアドレスは以下の構造体で表現される。"
22672
22673 #. type: Plain text
22674 #: build/C/man7/unix.7:63
22675 #, no-wrap
22676 msgid "#define UNIX_PATH_MAX    108\n"
22677 msgstr "#define UNIX_PATH_MAX    108\n"
22678
22679 #. type: Plain text
22680 #: build/C/man7/unix.7:68
22681 #, no-wrap
22682 msgid ""
22683 "struct sockaddr_un {\n"
22684 "    sa_family_t sun_family;               /* AF_UNIX */\n"
22685 "    char        sun_path[UNIX_PATH_MAX];  /* pathname */\n"
22686 "};\n"
22687 msgstr ""
22688 "struct sockaddr_un {\n"
22689 "    sa_family_t sun_family;               /* AF_UNIX */\n"
22690 "    char        sun_path[UNIX_PATH_MAX];  /* pathname */\n"
22691 "};\n"
22692
22693 #. type: Plain text
22694 #: build/C/man7/unix.7:75
22695 msgid "The I<sun_family> field always contains B<AF_UNIX>."
22696 msgstr "I<sun_family> フィールドには必ず B<AF_UNIX> が入っている。"
22697
22698 #. type: Plain text
22699 #: build/C/man7/unix.7:91
22700 msgid ""
22701 "Various systems calls (for example, B<bind>(2), B<connect>(2), and "
22702 "B<sendto>(2))  take a I<sockaddr_un> argument as input.  Some other system "
22703 "calls (for example, B<getsockname>(2), B<getpeername>(2), B<recvfrom>(2), "
22704 "and B<accept>(2))  return an argument of this type."
22705 msgstr ""
22706 "様々なシステムコール (例えば B<bind>(2), B<connect>(2), B<sendto>(2)) は入力"
22707 "として I<sockaddr_un> 引き数を取る。 他のいくつかのシステムコール (例えば "
22708 "B<getsockname>(2), B<getpeername>(2), B<recvfrom>(2), B<accept>(2)) はこの型"
22709 "の引き数を返す。"
22710
22711 #. type: Plain text
22712 #: build/C/man7/unix.7:95
22713 msgid ""
22714 "Three types of address are distinguished in the I<sockaddr_un> structure:"
22715 msgstr "I<sockaddr_un> 構造体では 3 種類のアドレスが区別される。"
22716
22717 #. type: Plain text
22718 #: build/C/man7/unix.7:103
22719 msgid ""
22720 "I<pathname>: a UNIX domain socket can be bound to a null-terminated "
22721 "filesystem pathname using B<bind>(2).  When the address of a pathname socket "
22722 "is returned (by one of the system calls noted above), its length is"
22723 msgstr ""
22724 "I<pathname (パス名)>: B<bind>(2) を使って、UNIX ドメインソケットを、 ヌル終端"
22725 "されたファイルシステム上のパス名に結び付けることができる。 (上述のいずれかの"
22726 "システムコールにより) ソケットのアドレスが返される際、 その長さは"
22727
22728 #. type: Plain text
22729 #: build/C/man7/unix.7:105
22730 #, no-wrap
22731 msgid "    offsetof(struct sockaddr_un, sun_path) + strlen(sun_path) + 1\n"
22732 msgstr "    offsetof(struct sockaddr_un, sun_path) + strlen(sun_path) + 1\n"
22733
22734 #. type: Plain text
22735 #: build/C/man7/unix.7:118
22736 msgid ""
22737 "and I<sun_path> contains the null-terminated pathname.  (On Linux, the above "
22738 "B<offsetof>()  expression equates to the same value as "
22739 "I<sizeof(sa_family_t)>, but some other implementations include other fields "
22740 "before I<sun_path>, so the B<offsetof>()  expression more portably describes "
22741 "the size of the address structure.)"
22742 msgstr ""
22743 "であり、 I<sun_path> にはヌル終端されたパス名が格納される。 (Linux では、上記"
22744 "の B<offsetof>() 式は I<sizeof(sa_family_t)> の値と同じだが、 他の実装では "
22745 "I<sun_path> の前に他のフィールドが含まれる場合もある。 そのため、 "
22746 "B<offsetof>() 式を使う方がより移植性のある方法でアドレス構造体のサイズを知る"
22747 "ことができる。)"
22748
22749 #. type: Plain text
22750 #: build/C/man7/unix.7:120
22751 msgid "For further details of pathname sockets, see below."
22752 msgstr "パス名ソケットの詳細については、後で説明する。"
22753
22754 #.  There is quite some variation across implementations: FreeBSD
22755 #.  says the length is 16 bytes, HP-UX 11 says it's zero bytes.
22756 #. type: Plain text
22757 #: build/C/man7/unix.7:136
22758 msgid ""
22759 "I<unnamed>: A stream socket that has not been bound to a pathname using "
22760 "B<bind>(2)  has no name.  Likewise, the two sockets created by "
22761 "B<socketpair>(2)  are unnamed.  When the address of an unnamed socket is "
22762 "returned, its length is I<sizeof(sa_family_t)>, and I<sun_path> should not "
22763 "be inspected."
22764 msgstr ""
22765 "I<unnamed (名前なし)>: B<bind>(2)  を使ってパス名に結び付けることができないス"
22766 "トリーム型のソケットは 名前を持たない。同様に、 B<socketpair>(2)  で作成され"
22767 "る 2 つのソケットも名前を持たない。 名前なしのソケットのアドレスを返す際に"
22768 "は、 その長さは I<sizeof(sa_family_t)> であり、 I<sun_path> は検査すべきでは"
22769 "ない。"
22770
22771 #. type: Plain text
22772 #: build/C/man7/unix.7:159
22773 msgid ""
22774 "I<abstract>: an abstract socket address is distinguished (from a pathname "
22775 "socket)  by the fact that I<sun_path[0]> is a null byte (\\(aq\\e0\\(aq).  "
22776 "The socket's address in this namespace is given by the additional bytes in "
22777 "I<sun_path> that are covered by the specified length of the address "
22778 "structure.  (Null bytes in the name have no special significance.)  The name "
22779 "has no connection with filesystem pathnames.  When the address of an "
22780 "abstract socket is returned, the returned I<addrlen> is greater than "
22781 "I<sizeof(sa_family_t)> (i.e., greater than 2), and the name of the socket is "
22782 "contained in the first I<(addrlen - sizeof(sa_family_t))> bytes of "
22783 "I<sun_path>.  The abstract socket namespace is a nonportable Linux extension."
22784 msgstr ""
22785 "I<abstract (抽象)>: 抽象ソケットアドレスは、 I<sun_path[0]> がヌルバイト "
22786 "(\\(aq\\e0\\(aq) であることから (パス名ソケットから) 区別できる。 この名前空"
22787 "間におけるソケットのアドレスは、 I<sun_path> の残りのバイトの、 アドレス構造"
22788 "体の指定された長さの範囲で表される (名前中のヌルバイトには特別な意味はな"
22789 "い)。 この名前はファイルシステムのパス名とは何の関係もない。 抽象ソケットのア"
22790 "ドレスを返される際には、 返される I<addrlen> は I<sizeof(sa_family_t)> より大"
22791 "きく (つまり 2 より大きく)、 ソケットの名前は I<sun_path> の最初の "
22792 "I<(addrlen - sizeof(sa_family_t))> バイトに格納される。 ソケットの抽象名前空"
22793 "間は Linux による拡張であり、移植性はない。"
22794
22795 #. type: SS
22796 #: build/C/man7/unix.7:159
22797 #, no-wrap
22798 msgid "Pathname sockets"
22799 msgstr "パス名ソケット"
22800
22801 #. type: Plain text
22802 #: build/C/man7/unix.7:162
22803 msgid ""
22804 "When binding a socket to a pathname, a few rules should be observed for "
22805 "maximum portability and ease of coding:"
22806 msgstr ""
22807 "ソケットにパス名を結びつける際に、 最大限の移植性を持たせ、コーディングを簡単"
22808 "にするためのルールがいくつかある。"
22809
22810 #. type: Plain text
22811 #: build/C/man7/unix.7:166
22812 msgid "The pathname in I<sun_path> should be null-terminated."
22813 msgstr "I<sun_path> のパス名はヌル終端すべきである。"
22814
22815 #. type: Plain text
22816 #: build/C/man7/unix.7:170
22817 msgid ""
22818 "The length of the pathname, including the terminating null byte, should not "
22819 "exceed the size of I<sun_path>."
22820 msgstr ""
22821 "終端のヌルバイトを含めたパス名の長さは I<sun_path> の大きさを超えないようにす"
22822 "べきである。"
22823
22824 #. type: Plain text
22825 #: build/C/man7/unix.7:176
22826 msgid ""
22827 "The I<addrlen> argument that describes the enclosing I<sockaddr_un> "
22828 "structure should have a value of at least:"
22829 msgstr ""
22830 "I<sockaddr_un> 構造体の終わりを示す I<addrlen> 引き数は最低でも以下の値を持つ"
22831 "べきである。"
22832
22833 #. type: Plain text
22834 #: build/C/man7/unix.7:179
22835 #, no-wrap
22836 msgid "    offsetof(struct sockaddr_un, sun_path)+strlen(addr.sun_path)+1\n"
22837 msgstr "    offsetof(struct sockaddr_un, sun_path)+strlen(addr.sun_path)+1\n"
22838
22839 #. type: Plain text
22840 #: build/C/man7/unix.7:185
22841 msgid ""
22842 "or, more simply, I<addrlen> can be specified as I<sizeof(struct "
22843 "sockaddr_un)>."
22844 msgstr ""
22845 "もしくは、もっと簡単には、 I<addrlen> に I<sizeof(struct sockaddr_un)> を指定"
22846 "することもできる。"
22847
22848 #.  Linux does this, including for the case where the supplied path
22849 #.  is 108 bytes
22850 #. type: Plain text
22851 #: build/C/man7/unix.7:193
22852 msgid ""
22853 "There is some variation in how implementations handle UNIX domain socket "
22854 "addresses that do not follow the above rules.  For example, some (but not "
22855 "all) implementations append a null terminator if none is present in the "
22856 "supplied I<sun_path>."
22857 msgstr ""
22858 "UNIX ドメインソケットアドレスの扱いが上記のルールに従っていない実装もいくつか"
22859 "ある。 (全部ではないが) いくつかの実装では、 I<sun_path> に文字列終端の NULL "
22860 "がなかった場合に終端の NULL が追加される。"
22861
22862 #.  HP-UX
22863 #.  Modern BSDs generally have 104, Tru64 and AIX have 104,
22864 #.  Solaris and Irix have 108
22865 #. type: Plain text
22866 #: build/C/man7/unix.7:202
22867 msgid ""
22868 "When coding portable applications, keep in mind that some implementations "
22869 "have I<sun_path> as short as 92 bytes."
22870 msgstr ""
22871 "移植性があるアプリケーションを作成する際には、 いくつかの実装では "
22872 "I<sun_path> は 92 バイトしかないという点にも留意しておくとよい。"
22873
22874 #. type: Plain text
22875 #: build/C/man7/unix.7:220
22876 msgid ""
22877 "Various system calls (B<accept>(2), B<recvfrom>(2), B<getsockname>(2), "
22878 "B<getpeername>(2))  return socket address structures.  When applied to UNIX "
22879 "domain sockets, the value-result I<addrlen> argument supplied to the call "
22880 "should be initialized as above.  Upon return, the argument is set to "
22881 "indicate the I<actual> size of the address structure.  The caller should "
22882 "check the value returned in this argument: if the output value exceeds the "
22883 "input value, then there is no guarantee that a null terminator is present in "
22884 "I<sun_path>.  (See BUGS.)"
22885 msgstr ""
22886 "様々なシステムコール (B<accept>(2), B<recvfrom>(2), B<getsockname>(2), "
22887 "B<getpeername>(2)) がソケットアドレス構造体を返す。 これらのシステムコールが "
22888 "UNIX ドメインソケットに対して呼ばれた際には、 これらの呼び出しに渡す "
22889 "I<addrlen> 引き数は上記の説明のように初期化すべきである。 リターン時には、こ"
22890 "の引き数にはアドレス構造体の「実際の」サイズが設定される。 呼び出し側ではこの"
22891 "引き数で返された値を確認すべきである。 返された値が入力値よりも大きい場合、 "
22892 "I<sun_path> に終端の NULL バイトが存在する保証はない (「バグ」を参照)。"
22893
22894 #. type: Plain text
22895 #: build/C/man7/unix.7:233
22896 msgid ""
22897 "For historical reasons, these socket options are specified with a "
22898 "B<SOL_SOCKET> type even though they are B<AF_UNIX> specific.  They can be "
22899 "set with B<setsockopt>(2)  and read with B<getsockopt>(2)  by specifying "
22900 "B<SOL_SOCKET> as the socket family."
22901 msgstr ""
22902 "歴史的な理由により、これらのオプションは たとえ B<AF_UNIX> 固有のオプションで"
22903 "あっても B<SOL_SOCKET> 型で指定する。 ソケットファミリーとして B<SOL_SOCKET> "
22904 "を指定すると、 B<setsockopt>(2)  でオプションが設定でき、 B<getsockopt>(2)  "
22905 "で取得ができる。"
22906
22907 #. type: TP
22908 #: build/C/man7/unix.7:233
22909 #, no-wrap
22910 msgid "B<SO_PASSCRED>"
22911 msgstr "B<SO_PASSCRED>"
22912
22913 #. type: Plain text
22914 #: build/C/man7/unix.7:240
22915 msgid ""
22916 "Enables the receiving of the credentials of the sending process in an "
22917 "ancillary message.  When this option is set and the socket is not yet "
22918 "connected a unique name in the abstract namespace will be generated "
22919 "automatically.  Expects an integer boolean flag."
22920 msgstr ""
22921 "送信プロセスの補助メッセージで信任状を受信できるようにする。このオプション"
22922 "が\n"
22923 "セットされていて、まだソケットが接続されていないと、抽象名前空間に他と重な"
22924 "ら\n"
22925 "ない名前が自動的に生成される。ブール整数値のフラグを取る。"
22926
22927 #. type: SS
22928 #: build/C/man7/unix.7:240
22929 #, no-wrap
22930 msgid "Autobind feature"
22931 msgstr "自動バインド (autobind) 機能"
22932
22933 #.  i.e., sizeof(short)
22934 #. type: Plain text
22935 #: build/C/man7/unix.7:260
22936 msgid ""
22937 "If a B<bind>(2)  call specifies I<addrlen> as I<sizeof(sa_family_t)>, or the "
22938 "B<SO_PASSCRED> socket option was specified for a socket that was not "
22939 "explicitly bound to an address, then the socket is autobound to an abstract "
22940 "address.  The address consists of a null byte followed by 5 bytes in the "
22941 "character set I<[0-9a-f]>.  Thus, there is a limit of 2^20 autobind "
22942 "addresses.  (From Linux 2.1.15, when the autobind feature was added, 8 bytes "
22943 "were used, and the limit was thus 2^32 autobind addresses.  The change to 5 "
22944 "bytes came in Linux 2.3.15.)"
22945 msgstr ""
22946 "B<bind>(2) 呼び出しで I<sizeof(sa_family_t)> として I<addrlen> を指定する"
22947 "か、\n"
22948 "アドレスに明示的にバインドされていないソケットに対して\n"
22949 "B<SO_PASSCRED> ソケットオプションが指定されていた場合、\n"
22950 "そのソケットは抽象アドレスに自動的にバインドされる。\n"
22951 "このアドレスは、1 個のヌルバイトの後に、文字集合 I<[0-9a-f]> のバイトが\n"
22952 "5 個続く形式である。したがって、自動的にバインドされるアドレス数には\n"
22953 "2^20 個という上限が存在する。\n"
22954 "(Linux 2.1.15 以降で、自動バインド機能が追加されたときには、\n"
22955 "8 バイトが使われており、自動バインドアドレス数の上限は 2^32 であった。\n"
22956 "Linux 2.3.15 で 5 バイトに変更された。)"
22957
22958 #. type: Plain text
22959 #: build/C/man7/unix.7:263
22960 msgid ""
22961 "The following paragraphs describe domain-specific details and unsupported "
22962 "features of the sockets API for UNIX domain sockets on Linux."
22963 msgstr ""
22964 "この節では、Linux の UNIX ドメインソケットでの、ドメイン固有の詳細仕様と\n"
22965 "ソケット API でサポートされていない機能について説明する。"
22966
22967 #. type: Plain text
22968 #: build/C/man7/unix.7:271
22969 msgid ""
22970 "UNIX domain sockets do not support the transmission of out-of-band data (the "
22971 "B<MSG_OOB> flag for B<send>(2)  and B<recv>(2))."
22972 msgstr ""
22973 "UNIX ドメインソケットでは、帯域外データ (out-of-band data) の 送信\n"
22974 "(B<send>(2) と B<recv>(2) の B<MSG_OOB> フラグ) はサポートされていない。"
22975
22976 #. type: Plain text
22977 #: build/C/man7/unix.7:276
22978 msgid ""
22979 "The B<send>(2)  B<MSG_MORE> flag is not supported by UNIX domain sockets."
22980 msgstr ""
22981 "B<send>(2) B<MSG_MORE> フラグは UNIX ドメインソケットではサポートされていな"
22982 "い。"
22983
22984 #. type: Plain text
22985 #: build/C/man7/unix.7:284
22986 msgid ""
22987 "The use of B<MSG_TRUNC> in the I<flags> argument of B<recv>(2)  is not "
22988 "supported by UNIX domain sockets."
22989 msgstr ""
22990 "B<recv>(2) の I<flags> 引き数での B<MSG_TRUNC> の使用は UNIX ドメイン\n"
22991 "ソケットではサポートされていない。"
22992
22993 #. type: Plain text
22994 #: build/C/man7/unix.7:296
22995 msgid ""
22996 "The B<SO_SNDBUF> socket option does have an effect for UNIX domain sockets, "
22997 "but the B<SO_RCVBUF> option does not.  For datagram sockets, the "
22998 "B<SO_SNDBUF> value imposes an upper limit on the size of outgoing "
22999 "datagrams.  This limit is calculated as the doubled (see B<socket>(7))  "
23000 "option value less 32 bytes used for overhead."
23001 msgstr ""
23002 "B<SO_SNDBUF> ソケットオプションは UNIX ドメインソケットで効果を持つが、\n"
23003 "B<SO_RCVBUF> は効果がない。 データグラム・ソケットでは、 B<SO_SNDBUF> の値"
23004 "が\n"
23005 "出力データグラムの上限サイズとなる。 実際の上限値は、 B<SO_SNDBUF> オプショ"
23006 "ン\n"
23007 "として設定された値の 2倍 (B<socket>(7) 参照) からオーバヘッドとして使用され"
23008 "る\n"
23009 "32 バイトを引いた値となる。"
23010
23011 #. type: SS
23012 #: build/C/man7/unix.7:296
23013 #, no-wrap
23014 msgid "Ancillary messages"
23015 msgstr "補助メッセージ"
23016
23017 #. type: Plain text
23018 #: build/C/man7/unix.7:318
23019 msgid ""
23020 "Ancillary data is sent and received using B<sendmsg>(2)  and B<recvmsg>(2).  "
23021 "For historical reasons the ancillary message types listed below are "
23022 "specified with a B<SOL_SOCKET> type even though they are B<AF_UNIX> "
23023 "specific.  To send them set the I<cmsg_level> field of the struct I<cmsghdr> "
23024 "to B<SOL_SOCKET> and the I<cmsg_type> field to the type.  For more "
23025 "information see B<cmsg>(3)."
23026 msgstr ""
23027 "補助データを送受するには、 B<sendmsg>(2)  や B<recvmsg>(2)  を使用する。 歴史"
23028 "的な理由により、以下に示す補助メッセージの型は たとえ B<AF_UNIX> 固有のもので"
23029 "あっても B<SOL_SOCKET> 型で指定する。 これらを送るには、構造体 I<cmsghdr> の "
23030 "I<cmsg_level> フィールドに B<SOL_SOCKET> をセットし、 I<cmsg_type> フィールド"
23031 "にタイプをセットする。 詳細は B<cmsg>(3)  を見よ。"
23032
23033 #. type: TP
23034 #: build/C/man7/unix.7:318
23035 #, no-wrap
23036 msgid "B<SCM_RIGHTS>"
23037 msgstr "B<SCM_RIGHTS>"
23038
23039 #. type: Plain text
23040 #: build/C/man7/unix.7:324
23041 msgid ""
23042 "Send or receive a set of open file descriptors from another process.  The "
23043 "data portion contains an integer array of the file descriptors.  The passed "
23044 "file descriptors behave as though they have been created with B<dup>(2)."
23045 msgstr ""
23046 "他のプロセスでオープンされたファイルディスクリプタのセットを送受信する。 デー"
23047 "タ部分にファイルディスクリプタの整数配列が入っている。 渡されたファイルディス"
23048 "クリプタは、あたかも B<dup>(2)  で生成されたかのように振る舞う。"
23049
23050 #. type: TP
23051 #: build/C/man7/unix.7:324
23052 #, no-wrap
23053 msgid "B<SCM_CREDENTIALS>"
23054 msgstr "B<SCM_CREDENTIALS>"
23055
23056 #. type: Plain text
23057 #: build/C/man7/unix.7:334
23058 msgid ""
23059 "Send or receive UNIX credentials.  This can be used for authentication.  The "
23060 "credentials are passed as a I<struct ucred> ancillary message.  Thus "
23061 "structure is defined in I<E<lt>sys/socket.hE<gt>> as follows:"
23062 msgstr ""
23063 "UNIX 信任状を送受信する。これは認証に用いることができる。\n"
23064 "信任状は I<struct ucred> の補助メッセージとして渡される。\n"
23065 "この構造体は I<E<lt>sys/socket.hE<gt>> で以下のように定義されている。"
23066
23067 #. type: Plain text
23068 #: build/C/man7/unix.7:342
23069 #, no-wrap
23070 msgid ""
23071 "struct ucred {\n"
23072 "    pid_t pid;    /* process ID of the sending process */\n"
23073 "    uid_t uid;    /* user ID of the sending process */\n"
23074 "    gid_t gid;    /* group ID of the sending process */\n"
23075 "};\n"
23076 msgstr ""
23077 "struct ucred {\n"
23078 "    pid_t pid;    /* process ID of the sending process */\n"
23079 "    uid_t uid;    /* user ID of the sending process */\n"
23080 "    gid_t gid;    /* group ID of the sending process */\n"
23081 "};\n"
23082
23083 #. type: Plain text
23084 #: build/C/man7/unix.7:351
23085 msgid ""
23086 "Since glibc 2.8, the B<_GNU_SOURCE> feature test macro must be defined "
23087 "(before including I<any> header files) in order to obtain the definition of "
23088 "this structure."
23089 msgstr ""
23090 "glibc 2.8 以降では、この構造体の定義を得るためには\n"
23091 "(I<どの>ヘッダファイルをインクルードするよりも前に)\n"
23092 "機能検査マクロ B<_GNU_SOURCE> を定義しなければならない。"
23093
23094 #. type: Plain text
23095 #: build/C/man7/unix.7:367
23096 msgid ""
23097 "The credentials which the sender specifies are checked by the kernel.  A "
23098 "process with effective user ID 0 is allowed to specify values that do not "
23099 "match its own.  The sender must specify its own process ID (unless it has "
23100 "the capability B<CAP_SYS_ADMIN>), its user ID, effective user ID, or saved "
23101 "set-user-ID (unless it has B<CAP_SETUID>), and its group ID, effective group "
23102 "ID, or saved set-group-ID (unless it has B<CAP_SETGID>).  To receive a "
23103 "I<struct ucred> message the B<SO_PASSCRED> option must be enabled on the "
23104 "socket."
23105 msgstr ""
23106 "送信側が指定した信任状は、カーネルがチェックする。 実効ユーザー ID が 0 のプ"
23107 "ロセスには、 自分自身以外の値を指定する事が許される。 送信側は以下の 3 つを指"
23108 "定しなければならない。 1) 自分自身のプロセス ID (B<CAP_SYS_ADMIN> 権限を持っ"
23109 "ていない場合)、 2) 自分自身のユーザー ID あるいは実効ユーザー ID か保存 set-"
23110 "user-ID (B<CAP_SETUID> 権限を持っていない場合)、 3) 自分自身のグループ ID あ"
23111 "るいは実行グループ ID か保存 set-group-ID (B<CAP_SETGID> を持っていない場"
23112 "合)。 I<struct ucred> メッセージを受信するためには、ソケットに対し "
23113 "B<SO_PASSCRED> オプションを有効にしなくてはならない。"
23114
23115 #. type: Plain text
23116 #: build/C/man7/unix.7:378
23117 #, no-wrap
23118 msgid ""
23119 "B<int>I< value>B<;>\n"
23120 "I<error>B< = ioctl(>I<unix_socket>B<, >I<ioctl_type>B<, &>I<value>B<);>\n"
23121 msgstr ""
23122 "B<int>I< value>B<;>\n"
23123 "I<error>B< = ioctl(>I<unix_socket>B<, >I<ioctl_type>B<, &>I<value>B<);>\n"
23124
23125 #. type: Plain text
23126 #: build/C/man7/unix.7:383
23127 msgid "I<ioctl_type> can be:"
23128 msgstr "I<ioctl_type> には以下を指定できる:"
23129
23130 #. type: Plain text
23131 #: build/C/man7/unix.7:410
23132 msgid ""
23133 "The specified local address is already in use or the filesystem socket "
23134 "object already exists."
23135 msgstr ""
23136 "指定したローカルアドレスが既に使用されているか、ファイルシステムの\n"
23137 "ソケットオブジェクトが既に存在している。"
23138
23139 #. type: Plain text
23140 #: build/C/man7/unix.7:416
23141 msgid ""
23142 "The remote address specified by B<connect>(2)  was not a listening socket.  "
23143 "This error can also occur if the target pathname is not a socket."
23144 msgstr ""
23145 "B<connect>(2) により指定されたリモートアドレスが接続待ちソケットではなかっ"
23146 "た。 このエラーはターゲットのパス名がソケットでなかった場合にも発生する。"
23147
23148 #. type: TP
23149 #: build/C/man7/unix.7:416
23150 #, no-wrap
23151 msgid "B<ECONNRESET>"
23152 msgstr "B<ECONNRESET>"
23153
23154 #. type: Plain text
23155 #: build/C/man7/unix.7:419
23156 msgid "Remote socket was unexpectedly closed."
23157 msgstr "リモートソケットが予期しないかたちでクローズされた。"
23158
23159 #. type: Plain text
23160 #: build/C/man7/unix.7:422
23161 msgid "User memory address was not valid."
23162 msgstr "ユーザーメモリアドレスが不正。"
23163
23164 #. type: Plain text
23165 #: build/C/man7/unix.7:431
23166 msgid ""
23167 "Invalid argument passed.  A common cause is that the value B<AF_UNIX> was "
23168 "not specified in the I<sun_type> field of passed addresses, or the socket "
23169 "was in an invalid state for the applied operation."
23170 msgstr ""
23171 "渡した引数が不正。よくある原因としては、渡したアドレスの I<sun_type> フィー"
23172 "ル\n"
23173 "ドに B<AF_UNIX> が指定されていなかった、行おうとした操作に対してソケットが"
23174 "有\n"
23175 "効な状態ではなかった、など。"
23176
23177 #. type: Plain text
23178 #: build/C/man7/unix.7:436
23179 msgid ""
23180 "B<connect>(2)  called on an already connected socket or a target address was "
23181 "specified on a connected socket."
23182 msgstr ""
23183 "既に接続されているソケットに対して B<connect>(2)  が呼ばれた。または、指定し"
23184 "たターゲットアドレスが 既に接続済みのソケットだった。"
23185
23186 #. type: Plain text
23187 #: build/C/man7/unix.7:441
23188 msgid ""
23189 "The pathname in the remote address specified to B<connect>(2)  did not exist."
23190 msgstr "B<connect>(2) に指定されたリモートアドレスのパス名が存在しなかった。"
23191
23192 #. type: TP
23193 #: build/C/man7/unix.7:441
23194 #, no-wrap
23195 msgid "B<ENOMEM>"
23196 msgstr "B<ENOMEM>"
23197
23198 #. type: Plain text
23199 #: build/C/man7/unix.7:447
23200 msgid ""
23201 "Socket operation needs a target address, but the socket is not connected."
23202 msgstr ""
23203 "ソケット操作にターゲットアドレスが必要だが、 このソケットは接続されていない。"
23204
23205 #. type: Plain text
23206 #: build/C/man7/unix.7:451
23207 msgid ""
23208 "Stream operation called on non-stream oriented socket or tried to use the "
23209 "out-of-band data option."
23210 msgstr ""
23211 "ストリーム指向でないソケットに対してストリーム操作が呼び出された。 または帯域"
23212 "外データオプションを用いようとした。"
23213
23214 #. type: Plain text
23215 #: build/C/man7/unix.7:455
23216 msgid "The sender passed invalid credentials in the I<struct ucred>."
23217 msgstr "送信者が I<struct ucred> に不正な信任状を渡した。"
23218
23219 #. type: Plain text
23220 #: build/C/man7/unix.7:467
23221 msgid ""
23222 "Remote socket was closed on a stream socket.  If enabled, a B<SIGPIPE> is "
23223 "sent as well.  This can be avoided by passing the B<MSG_NOSIGNAL> flag to "
23224 "B<sendmsg>(2)  or B<recvmsg>(2)."
23225 msgstr ""
23226 "リモートソケットがストリームソケット上でクローズされた。 可能な場合は "
23227 "B<SIGPIPE> も同時に送られる。これを避けるには B<MSG_NOSIGNAL> フラグを "
23228 "B<sendmsg>(2)  や B<recvmsg>(2)  に渡す。"
23229
23230 #. type: TP
23231 #: build/C/man7/unix.7:467
23232 #, no-wrap
23233 msgid "B<EPROTONOSUPPORT>"
23234 msgstr "B<EPROTONOSUPPORT>"
23235
23236 #. type: Plain text
23237 #: build/C/man7/unix.7:471
23238 msgid "Passed protocol is not B<AF_UNIX>."
23239 msgstr "渡されたプロトコルが B<AF_UNIX> でない。"
23240
23241 #. type: TP
23242 #: build/C/man7/unix.7:471
23243 #, no-wrap
23244 msgid "B<EPROTOTYPE>"
23245 msgstr "B<EPROTOTYPE>"
23246
23247 #. type: Plain text
23248 #: build/C/man7/unix.7:477
23249 msgid ""
23250 "Remote socket does not match the local socket type (B<SOCK_DGRAM> versus "
23251 "B<SOCK_STREAM>)"
23252 msgstr ""
23253 "リモートソケットとローカルソケットのタイプが一致していなかった "
23254 "(B<SOCK_DGRAM> と B<SOCK_STREAM>)。"
23255
23256 #. type: Plain text
23257 #: build/C/man7/unix.7:480
23258 msgid "Unknown socket type."
23259 msgstr "未知のソケットタイプ。"
23260
23261 #. type: Plain text
23262 #: build/C/man7/unix.7:484
23263 msgid ""
23264 "Other errors can be generated by the generic socket layer or by the "
23265 "filesystem while generating a filesystem socket object.  See the appropriate "
23266 "manual pages for more information."
23267 msgstr ""
23268 "他にも汎用のソケット層でエラーが起こったり、 ファイルシステム上にソケットオブ"
23269 "ジェクトを作ろうとした場合に ファイルシステムのエラーが起こることがある。 そ"
23270 "れぞれの詳細は適切な man ページを参照すること。"
23271
23272 #. type: Plain text
23273 #: build/C/man7/unix.7:490
23274 msgid ""
23275 "B<SCM_CREDENTIALS> and the abstract namespace were introduced with Linux 2.2 "
23276 "and should not be used in portable programs.  (Some BSD-derived systems also "
23277 "support credential passing, but the implementation details differ.)"
23278 msgstr ""
23279 "B<SCM_CREDENTIALS> と抽象名前空間は、Linux 2.2 で導入された。 移植性が必要な"
23280 "プログラムでは使うべきではない。 (BSD 由来のシステムの中にも信任状の送受信を"
23281 "サポートしているものがあるが、 その実装の詳細はシステムによって異なる)"
23282
23283 #. type: Plain text
23284 #: build/C/man7/unix.7:501
23285 msgid ""
23286 "In the Linux implementation, sockets which are visible in the filesystem "
23287 "honor the permissions of the directory they are in.  Their owner, group, and "
23288 "permissions can be changed.  Creation of a new socket will fail if the "
23289 "process does not have write and search (execute) permission on the directory "
23290 "the socket is created in.  Connecting to the socket object requires read/"
23291 "write permission.  This behavior differs from many BSD-derived systems which "
23292 "ignore permissions for UNIX domain sockets.  Portable programs should not "
23293 "rely on this feature for security."
23294 msgstr ""
23295 "Linux の実装では、 ファイルシステム上から見えるソケットは、 それらが置かれて"
23296 "いるディレクトリのパーミッションに従う。 ソケットの所有者、 グループ、 パー"
23297 "ミッションは変更できる。 新しいソケットを作るとき、 作ろうとするディレクトリ"
23298 "に対して プロセスが書き込みと検索 (実行) 権限を持っていなければ、 作成に失敗"
23299 "する。 ソケットオブジェクトに接続するには、 read/write 権限が必要である。 こ"
23300 "の動作は、 多くの BSD 由来のシステムとは異なっている (BSD では UNIX ドメイン"
23301 "ソケットに対してはパーミッションを無視する)。 移植性の必要なプログラムでは、"
23302 "セキュリティをこの仕様に依存してはならない。"
23303
23304 #. type: Plain text
23305 #: build/C/man7/unix.7:509
23306 msgid ""
23307 "Binding to a socket with a filename creates a socket in the filesystem that "
23308 "must be deleted by the caller when it is no longer needed (using "
23309 "B<unlink>(2)).  The usual UNIX close-behind semantics apply; the socket can "
23310 "be unlinked at any time and will be finally removed from the filesystem when "
23311 "the last reference to it is closed."
23312 msgstr ""
23313 "ファイル名を指定してソケットにバインドすると、ファイルシステムにソケットが\n"
23314 "生成される。これは必要なくなったときに呼びだしたユーザーが削除しなければ\n"
23315 "ならない (B<unlink>(2) を用いる)。 UNIX で通常使われる「背後で閉じる方式」\n"
23316 "が適用される。ソケットはいつでも unlink することができ、最後の参照が\n"
23317 "クローズされたときにファイルシステムから削除される。"
23318
23319 #. type: Plain text
23320 #: build/C/man7/unix.7:518
23321 msgid ""
23322 "To pass file descriptors or credentials over a B<SOCK_STREAM>, you need to "
23323 "send or receive at least one byte of nonancillary data in the same "
23324 "B<sendmsg>(2)  or B<recvmsg>(2)  call."
23325 msgstr ""
23326 "B<SOCK_STREAM> 上でファイルディスクリプタや信任状を渡すためには、同じ "
23327 "B<sendmsg>(2)  や B<recvmsg>(2)  コールで補助データ以外のデータを少なくとも "
23328 "1 バイト送信/受信する必要がある。"
23329
23330 #. type: Plain text
23331 #: build/C/man7/unix.7:521
23332 msgid ""
23333 "UNIX domain stream sockets do not support the notion of out-of-band data."
23334 msgstr ""
23335 "UNIX ドメインのストリーム・ソケットでは、 帯域外データの概念はサポートされな"
23336 "い。"
23337
23338 #.  The behavior on Solaris is quite similar.
23339 #. type: Plain text
23340 #: build/C/man7/unix.7:546
23341 msgid ""
23342 "When binding a socket to an address, Linux is one of the implementations "
23343 "that appends a null terminator if none is supplied in I<sun_path>.  In most "
23344 "cases this is unproblematic: when the socket address is retrieved, it will "
23345 "be one byte longer than that supplied when the socket was bound.  However, "
23346 "there is one case where confusing behavior can result: if 108 non-null bytes "
23347 "are supplied when a socket is bound, then the addition of the null "
23348 "terminator takes the length of the pathname beyond I<sizeof(sun_path)>.  "
23349 "Consequently, when retrieving the socket address (for example, via "
23350 "B<accept>(2)), if the input I<addrlen> argument for the retrieving call is "
23351 "specified as I<sizeof(struct sockaddr_un)>, then the returned address "
23352 "structure I<won't> have a null terminator in I<sun_path>."
23353 msgstr ""
23354 "ソケットをアドレスに結びつける際、 Linux は終端の NULL が I<sun_path> にな"
23355 "かった場合に追加する実装の一つである。 ほとんどの場合、 これは問題にならな"
23356 "い。 ソケットアドレスが取得された際、ソケットをバインドしたときに指定したもの"
23357 "より 1 バイト長くなるだけである。 しかしながら、紛らわしい動作が起こる場合が"
23358 "一つある。 ソケットをバインドした際に 108 個の NULL でないバイトを指定した場"
23359 "合、 終端の NULL が追加されるとパス名の長さが I<sizeof(sun_path)> を超えてし"
23360 "まう。 結果として、(例えば B<accept>(2) で) ソケットアドレスを取得した際に、 "
23361 "値を取得する呼び出しの入力の I<address> 引き数に I<sizeof(struct "
23362 "sockaddr_un)> を指定したとすると、 返されるアドレス構造体は I<sun_path> に終"
23363 "端の NULL を「含まない」ことになる。"
23364
23365 #.  i.e., traditional BSD
23366 #. type: Plain text
23367 #: build/C/man7/unix.7:556
23368 msgid ""
23369 "In addition, some implementations don't require a null terminator when "
23370 "binding a socket (the I<addrlen> argument is used to determine the length of "
23371 "I<sun_path>)  and when the socket address is retrieved on these "
23372 "implementations, there is no null terminator in I<sun_path>."
23373 msgstr ""
23374 "さらに、 いくつかの実装では、ソケットをバインドする際に終端の NULL が必要では"
23375 "なく (I<addrlen> 引き数を使って I<sun_path> の長さが判定される)、 このような"
23376 "実装でソケットアドレスを取得する際には、 I<sun_path> に終端の NULL は存在しな"
23377 "い。"
23378
23379 #. type: Plain text
23380 #: build/C/man7/unix.7:561
23381 msgid ""
23382 "Applications that retrieve socket addresses can (portably) code to handle "
23383 "the possibility that there is no null terminator in I<sun_path> by "
23384 "respecting the fact that the number of valid bytes in the pathname is:"
23385 msgstr ""
23386 "ソケットアドレスを取得するアプリケーションでは、 I<sun_path> に終端の NULL が"
23387 "存在しないという移植性の問題を、 パス名の有効なバイト数が以下のようになると事"
23388 "実を考慮することで取り扱うことができる。"
23389
23390 #
23391 #.  The following patch to amend kernel behavior was rejected:
23392 #.  http://thread.gmane.org/gmane.linux.kernel.api/2437
23393 #.  Subject: [patch] Fix handling of overlength pathname in AF_UNIX sun_path
23394 #.  2012-04-17
23395 #.  And there was a related discussion in the Austin list:
23396 #.  http://thread.gmane.org/gmane.comp.standards.posix.austin.general/5735
23397 #.  Subject: Having a sun_path with no null terminator
23398 #.  2012-04-18
23399 #.  FIXME . Track http://austingroupbugs.net/view.php?id=561
23400 #. type: Plain text
23401 #: build/C/man7/unix.7:573
23402 #, no-wrap
23403 msgid "    strnlen(addr.sun_path, addrlen - offsetof(sockaddr_un, sun_path))\n"
23404 msgstr "    strnlen(addr.sun_path, addrlen - offsetof(sockaddr_un, sun_path))\n"
23405
23406 #. type: Plain text
23407 #: build/C/man7/unix.7:585
23408 msgid ""
23409 "Alternatively, an application can retrieve the socket address by allocating "
23410 "a buffer of size I<sizeof(struct sockaddr_un)+1> that is zeroed out before "
23411 "the retrieval.  The retrieving call can specify I<addrlen> as "
23412 "I<sizeof(struct sockaddr_un)>, and the extra zero byte ensures that there "
23413 "will be a null terminator for the string returned in I<sun_path>:"
23414 msgstr ""
23415 "他の方法としては、 アプリケーションがソケットアドレスを取得する際、 取得の呼"
23416 "び出しを行う前に、 大きさが I<sizeof(struct sockaddr_un)+1> のバッファーを割"
23417 "り当てることもできる。 取得の呼び出しでは I<addrlen> に I<sizeof(struct "
23418 "sockaddr_un)> を指定すると、 余分な一つの 0 バイトにより I<sun_path> で返され"
23419 "る文字列に終端の NULL が含まれることが保証される。"
23420
23421 #. type: Plain text
23422 #: build/C/man7/unix.7:589
23423 #, no-wrap
23424 msgid "void *addrp;\n"
23425 msgstr "void *addrp;\n"
23426
23427 #. type: Plain text
23428 #: build/C/man7/unix.7:595
23429 #, no-wrap
23430 msgid ""
23431 "addrlen = sizeof(struct sockaddr_un);\n"
23432 "addrp = malloc(addrlen + 1);\n"
23433 "if (addrp == NULL)\n"
23434 "    /* Handle error */ ;\n"
23435 "memset(addrp, 0, addrlen + 1);\n"
23436 msgstr ""
23437 "addrlen = sizeof(struct sockaddr_un);\n"
23438 "addrp = malloc(addrlen + 1);\n"
23439 "if (addrp == NULL)\n"
23440 "    /* Handle error */ ;\n"
23441 "memset(addrp, 0, addrlen + 1);\n"
23442
23443 #. type: Plain text
23444 #: build/C/man7/unix.7:598
23445 #, no-wrap
23446 msgid ""
23447 "if (getsockname(sfd, (struct sockaddr *) addrp, &addrlen)) == -1)\n"
23448 "    /* handle error */ ;\n"
23449 msgstr ""
23450 "if (getsockname(sfd, (struct sockaddr *) addrp, &addrlen)) == -1)\n"
23451 "    /* handle error */ ;\n"
23452
23453 #. type: Plain text
23454 #: build/C/man7/unix.7:600
23455 #, no-wrap
23456 msgid "printf(\"sun_path = %s\\en\", ((struct sockaddr_un *) addrp)-E<gt>sun_path);\n"
23457 msgstr "printf(\"sun_path = %s\\en\", ((struct sockaddr_un *) addrp)-E<gt>sun_path);\n"
23458
23459 #. type: Plain text
23460 #: build/C/man7/unix.7:608
23461 msgid ""
23462 "This sort of messiness can be avoided if it is guaranteed that the "
23463 "applications that I<create> pathname sockets follow the rules outlined above "
23464 "under I<Pathname sockets>."
23465 msgstr ""
23466 "アプリケーションが「パス名ソケット」の節で説明したルールにしたがってパス名を"
23467 "「作成」していれば、 このような分かりにくさは避けることができる。"
23468
23469 #. type: Plain text
23470 #: build/C/man7/unix.7:611
23471 msgid "See B<bind>(2)."
23472 msgstr "B<bind>(2)  参照。"
23473
23474 #. type: Plain text
23475 #: build/C/man7/unix.7:616
23476 msgid "For an example of the use of B<SCM_RIGHTS> see B<cmsg>(3)."
23477 msgstr "B<SCM_RIGHTS> の使用例については B<cmsg>(3) を参照。"
23478
23479 #. type: Plain text
23480 #: build/C/man7/unix.7:625
23481 msgid ""
23482 "B<recvmsg>(2), B<sendmsg>(2), B<socket>(2), B<socketpair>(2), B<cmsg>(3), "
23483 "B<capabilities>(7), B<credentials>(7), B<socket>(7)"
23484 msgstr ""
23485 "B<recvmsg>(2), B<sendmsg>(2), B<socket>(2), B<socketpair>(2), B<cmsg>(3), "
23486 "B<capabilities>(7), B<credentials>(7), B<socket>(7)"
23487
23488 #. type: TH
23489 #: build/C/man7/x25.7:12
23490 #, no-wrap
23491 msgid "X25"
23492 msgstr "X25"
23493
23494 #. type: Plain text
23495 #: build/C/man7/x25.7:15
23496 msgid "x25 - ITU-T X.25 / ISO-8208 protocol interface."
23497 msgstr "x25 - ITU-T X.25 / ISO-8208 プロトコルインターフェース"
23498
23499 #. type: Plain text
23500 #: build/C/man7/x25.7:19
23501 msgid "B<#include E<lt>linux/x25.hE<gt>>"
23502 msgstr "B<#include E<lt>linux/x25.hE<gt>>"
23503
23504 #. type: Plain text
23505 #: build/C/man7/x25.7:21
23506 msgid "B<x25_socket = socket(AF_X25, SOCK_SEQPACKET, 0);>"
23507 msgstr "B<x25_socket = socket(AF_X25, SOCK_SEQPACKET, 0);>"
23508
23509 #. type: Plain text
23510 #: build/C/man7/x25.7:30
23511 msgid ""
23512 "X25 sockets provide an interface to the X.25 packet layer protocol.  This "
23513 "allows applications to communicate over a public X.25 data network as "
23514 "standardized by International Telecommunication Union's recommendation X.25 "
23515 "(X.25 DTE-DCE mode).  X25 sockets can also be used for communication without "
23516 "an intermediate X.25 network (X.25 DTE-DTE mode) as described in ISO-8208."
23517 msgstr ""
23518 "X25 ソケットは X.25 パケット層プロトコルに対するインターフェースを提供する。 "
23519 "これにより、アプリケーションはパブリックな X.25 データネットワークで 通信する"
23520 "ことができるようになる。 X.25 は International Telecommunication Union's "
23521 "recommendation X.25 (X.25 DTE-DCE mode) で標準化されている。 X25 ソケットは、"
23522 "中間層のない X.25 ネットワーク (X.25 DTE-DTE mode)  での通信にも用いることが"
23523 "できる。 DTE-DTE モードは ISO-8208 に記述されている。"
23524
23525 #. type: Plain text
23526 #: build/C/man7/x25.7:47
23527 msgid ""
23528 "Message boundaries are preserved \\(em a B<read>(2)  from a socket will "
23529 "retrieve the same chunk of data as output with the corresponding "
23530 "B<write>(2)  to the peer socket.  When necessary, the kernel takes care of "
23531 "segmenting and reassembling long messages by means of the X.25 M-bit.  There "
23532 "is no hard-coded upper limit for the message size.  However, reassembling of "
23533 "a long message might fail if there is a temporary lack of system resources "
23534 "or when other constraints (such as socket memory or buffer size limits) "
23535 "become effective.  If that occurs, the X.25 connection will be reset."
23536 msgstr ""
23537 "メッセージ境界は保存される。ソケットからの B<read>(2)  は、反対側のソケットか"
23538 "らの対応する B<write>(2)  と同じ大きさのデータを受け取り、出力する。 必要があ"
23539 "る場合は、カーネルが長いメッセージの 分割 (segmenting) と再構成 "
23540 "(reassembling) を行う。 これには X.25 の M ビットが用いられる。 メッセージサ"
23541 "イズには、ハードコーディングされた上限はない。 しかし、一時的にシステムリソー"
23542 "スが足りなかったり、 他の制約 (ソケットメモリバッファのサイズ制限など) が 効"
23543 "いてしまうと、長いメッセージの再構成には失敗するかもしれない。 この場合、そ"
23544 "の X.25 接続はリセットされることになる。"
23545
23546 #. type: SS
23547 #: build/C/man7/x25.7:47
23548 #, no-wrap
23549 msgid "Socket addresses"
23550 msgstr "ソケットアドレス"
23551
23552 #. type: Plain text
23553 #: build/C/man7/x25.7:54
23554 msgid ""
23555 "The B<AF_X25> socket address family uses the I<struct sockaddr_x25> for "
23556 "representing network addresses as defined in ITU-T recommendation X.121."
23557 msgstr ""
23558 "B<AF_X25> ソケットアドレスファミリーは、ネットワークアドレスを表すために "
23559 "I<struct sockaddr_x25> を用いる。これは ITU-T recommendation X.121 で定義され"
23560 "ている。"
23561
23562 #. type: Plain text
23563 #: build/C/man7/x25.7:61
23564 #, no-wrap
23565 msgid ""
23566 "struct sockaddr_x25 {\n"
23567 "    sa_family_t sx25_family;    /* must be AF_X25 */\n"
23568 "    x25_address sx25_addr;      /* X.121 Address */\n"
23569 "};\n"
23570 msgstr ""
23571 "struct sockaddr_x25 {\n"
23572 "    sa_family_t sx25_family;    /* must be AF_X25 */\n"
23573 "    x25_address sx25_addr;      /* X.121 Address */\n"
23574 "};\n"
23575
23576 #. type: Plain text
23577 #: build/C/man7/x25.7:72
23578 msgid ""
23579 "I<sx25_addr> contains a char array I<x25_addr[]> to be interpreted as a null-"
23580 "terminated string.  I<sx25_addr.x25_addr[]> consists of up to 15 (not "
23581 "counting the terminating null byte) ASCII characters forming the X.121 "
23582 "address.  Only the decimal digit characters from \\(aq0\\(aq to \\(aq9\\(aq "
23583 "are allowed."
23584 msgstr ""
23585 "I<sx25_addr> には char 配列 I<x25_addr[]> を含まれる。これは 0 で終端する文字"
23586 "列として解釈される。 I<sx25_addr.x25_addr[]> は 15 個までの ASCII 文字を含む"
23587 "ことができ (終端のヌルバイトは含まない)、 これが X.121 アドレスをなす。 10 進"
23588 "の数文字、\\(aq0\\(aq から \\(aq9\\(aq までだけが許される。"
23589
23590 #. type: Plain text
23591 #: build/C/man7/x25.7:81
23592 msgid ""
23593 "The following X.25-specific socket options can be set by using "
23594 "B<setsockopt>(2)  and read with B<getsockopt>(2)  with the I<level> argument "
23595 "set to B<SOL_X25>."
23596 msgstr ""
23597 "以下の X.25 特有のソケットオプションは、 B<setsockopt>(2)  で設定でき、 "
23598 "B<getsockopt>(2)  で取得できる。このとき I<level> 引き数には B<SOL_X25> を指"
23599 "定する。"
23600
23601 #. type: TP
23602 #: build/C/man7/x25.7:81
23603 #, no-wrap
23604 msgid "B<X25_QBITINCL>"
23605 msgstr "B<X25_QBITINCL>"
23606
23607 #. type: Plain text
23608 #: build/C/man7/x25.7:100
23609 msgid ""
23610 "Controls whether the X.25 Q-bit (Qualified Data Bit) is accessible by the "
23611 "user.  It expects an integer argument.  If set to 0 (default), the Q-bit is "
23612 "never set for outgoing packets and the Q-bit of incoming packets is "
23613 "ignored.  If set to 1, an additional first byte is prepended to each message "
23614 "read from or written to the socket.  For data read from the socket, a 0 "
23615 "first byte indicates that the Q-bits of the corresponding incoming data "
23616 "packets were not set.  A first byte with value 1 indicates that the Q-bit of "
23617 "the corresponding incoming data packets was set.  If the first byte of the "
23618 "data written to the socket is 1, the Q-bit of the corresponding outgoing "
23619 "data packets will be set.  If the first byte is 0, the Q-bit will not be set."
23620 msgstr ""
23621 "X.25 の Q ビット (Qualified データビット) にユーザーがアクセス できるかどうか"
23622 "をコントロールする。整数の引数を取る。 0 にセットすると、 Q ビットは発信パ"
23623 "ケットには決してセットされず、 受信パケットでは無視される (デフォルト)。 1 に"
23624 "セットすると、ソケットから読む、あるいはソケットに送る メッセージそれぞれに先"
23625 "頭バイトが前置される。 ソケットから読んだデータでは、先頭バイトが 0 だと、 こ"
23626 "の到着データパケットに対応する Q ビットはセットされていなかったことになる。 "
23627 "先頭バイトが 1 だと、到着データパケットの Q ビットがセットされていたことにな"
23628 "る。 ソケットに書き込むデータの先頭バイトが 1 だと、 その発信パケットの Q "
23629 "ビットをセットする。 0 だと、 Q ビットをセットしない。"
23630
23631 #. type: Plain text
23632 #: build/C/man7/x25.7:102
23633 msgid "The AF_X25 protocol family is a new feature of Linux 2.2."
23634 msgstr "AF_X25 プロトコルファミリは Linux 2.2 の新機能である。"
23635
23636 #. type: Plain text
23637 #: build/C/man7/x25.7:105
23638 msgid "Plenty, as the X.25 PLP implementation is B<CONFIG_EXPERIMENTAL>."
23639 msgstr "X.25 PLP 実装は B<CONFIG_EXPERIMENTAL> なので、たくさんあるだろう。"
23640
23641 #. type: Plain text
23642 #: build/C/man7/x25.7:107
23643 msgid "This man page is incomplete."
23644 msgstr "この man ページは完成していない。"
23645
23646 #. type: Plain text
23647 #: build/C/man7/x25.7:114
23648 msgid ""
23649 "There is no dedicated application programmer's header file yet; you need to "
23650 "include the kernel header file I<E<lt>linux/x25.hE<gt>>.  "
23651 "B<CONFIG_EXPERIMENTAL> might also imply that future versions of the "
23652 "interface are not binary compatible."
23653 msgstr ""
23654 "まだアプリケーションプログラマー用のヘッダファイルがない。 カーネルのヘッダ"
23655 "ファイル I<E<lt>linux/x25.hE<gt>> をインクルードしなければならない。 "
23656 "B<CONFIG_EXPERIMENTAL> なので、将来のバージョンのインターフェースでは バイナ"
23657 "リ互換性が失われるかもしれない。"
23658
23659 #. type: Plain text
23660 #: build/C/man7/x25.7:118
23661 msgid ""
23662 "X.25 N-Reset events are not propagated to the user process yet.  Thus, if a "
23663 "reset occurred, data might be lost without notice."
23664 msgstr ""
23665 "X.25 N-Reset イベントは、まだユーザープロセスに伝播しない。 したがってリセッ"
23666 "トが起こると、データは通知無しに失われる。"
23667
23668 #. type: Plain text
23669 #: build/C/man7/x25.7:121
23670 msgid "B<socket>(2), B<socket>(7)"
23671 msgstr "B<socket>(2), B<socket>(7)"
23672
23673 #. type: Plain text
23674 #: build/C/man7/x25.7:127
23675 msgid ""
23676 "Jonathan Simon Naylor: \\(lqThe Re-Analysis and Re-Implementation of X.25."
23677 "\\(rq The URL is E<.UR ftp://ftp.pspt.fi\\:/pub\\:/ham\\:/linux\\:/ax25\\:/"
23678 "x25doc.tgz> E<.UE .>"
23679 msgstr ""
23680 "Jonathan Simon Naylor: \\(lqThe Re-Analysis and Re-Implementation of X.25."
23681 "\\(rq The URL is E<.UR ftp://ftp.pspt.fi\\:/pub\\:/ham\\:/linux\\:/ax25\\:/"
23682 "x25doc.tgz> E<.UE .>"
23683
23684 #~ msgid "2014-03-31"
23685 #~ msgstr "2014-03-31"
23686
23687 #~ msgid ""
23688 #~ "Enable fast recycling of TIME_WAIT sockets.  Enabling this option is not "
23689 #~ "recommended since this causes problems when working with NAT (Network "
23690 #~ "Address Translation)."
23691 #~ msgstr ""
23692 #~ "TIME_WAIT ソケットの素早い再利用を有効にする。 このオプションを有効にする"
23693 #~ "と、 NAT (ネットワークアドレス変換) を用いていると問題が生じるので、 あま"
23694 #~ "り推奨しない。"
23695
23696 #~ msgid "2014-02-22"
23697 #~ msgstr "2014-02-22"
23698
23699 #~ msgid ""
23700 #~ "The older I<libinet6> libc5 based IPv6 API implementation for Linux is "
23701 #~ "not described here and may vary in details."
23702 #~ msgstr ""
23703 #~ "IPv6 API を libc5 ベースで Linux 向けに実装した、以前の I<libinet6> につい"
23704 #~ "てはここでは記述していない。 おそらく細かいところには相違点があるだろう。"
23705
23706 #~ msgid ""
23707 #~ "The include file I<E<lt>netpacket/packet.hE<gt>> is present since glibc "
23708 #~ "2.1.  Older systems need:"
23709 #~ msgstr ""
23710 #~ "インクルードファイル I<E<lt>netpacket/packet.hE<gt>> が存在するのは glibc "
23711 #~ "2.1 以降である。 それ以前のシステムでは以下のようにする必要がある:"
23712
23713 #~ msgid ""
23714 #~ "Some versions of glibc forget to declare I<in_pktinfo>.  Workaround "
23715 #~ "currently is to copy it into your program from this man page."
23716 #~ msgstr ""
23717 #~ "glibc のバージョンによっては I<in_pktinfo> の定義を忘れているものがある。 "
23718 #~ "現時点でのとりあえずの対策としては、この man ページにある定義をプログラム"
23719 #~ "中に コピーすることである。"
23720
23721 #~ msgid ""
23722 #~ "If set, do not silently drop a packet on transmission error, but return "
23723 #~ "it with status set to B<TP_STATUS_WRONG_FORMAT>."
23724 #~ msgstr ""
23725 #~ "有効にすると、転送エラーの場合にパケットをエラーなしに黙って破棄せず、 ス"
23726 #~ "テータスを B<TP_STATUS_WRONG_FORMAT> にセットして返る。"