OSDN Git Service

Wrap lines in ja.po again
[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-23 22:24+0900\n"
10 "PO-Revision-Date: 2015-01-25 08:35+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> は "
342 "obsolete なので、用いるべきでない。"
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 #. type: TP
597 #: build/C/man7/arp.7:243
598 #, no-wrap
599 msgid "I<proxy_qlen> (since Linux 2.2)"
600 msgstr "I<proxy_qlen> (Linux 2.2 以降)"
601
602 #.  Precisely: 2.1.79
603 #. type: Plain text
604 #: build/C/man7/arp.7:248
605 msgid ""
606 "The maximum number of packets which may be queued to proxy-ARP addresses.  "
607 "Defaults to 64."
608 msgstr ""
609 "代理 ARP アドレスに対してキューイングできる最大のパケット数。 デフォルトは "
610 "64。"
611
612 #. type: TP
613 #: build/C/man7/arp.7:248
614 #, no-wrap
615 msgid "I<retrans_time> (since Linux 2.2)"
616 msgstr "I<retrans_time> (Linux 2.2 以降)"
617
618 #.  Precisely: 2.1.79
619 #. type: Plain text
620 #: build/C/man7/arp.7:255
621 msgid ""
622 "The number of jiffies to delay before retransmitting a request.  Defaults to "
623 "1 second.  This file is now obsolete in favor of I<retrans_time_ms>."
624 msgstr ""
625 "リクエストを再度送るまでの遅延時間 (jiffy 単位)。 デフォルトは 1 秒。 この"
626 "ファイルは現在は非推奨であり、代わりに I<retrans_time_ms> を使うこと。"
627
628 #. type: TP
629 #: build/C/man7/arp.7:255
630 #, no-wrap
631 msgid "I<retrans_time_ms> (since Linux 2.6.12)"
632 msgstr "I<retrans_time_ms> (Linux 2.6.12 以降)"
633
634 #. type: Plain text
635 #: build/C/man7/arp.7:259
636 msgid ""
637 "The number of milliseconds to delay before retransmitting a request.  "
638 "Defaults to 1000 milliseconds."
639 msgstr ""
640 "リクエストを再度送るまでの遅延時間 (ミリ秒単位)。 デフォルトは 1000 ミリ秒。"
641
642 #. type: TP
643 #: build/C/man7/arp.7:259
644 #, no-wrap
645 msgid "I<ucast_solicit> (since Linux 2.2)"
646 msgstr "I<ucast_solicit> (Linux 2.2 以降)"
647
648 #.  Precisely: 2.1.79
649 #. type: Plain text
650 #: build/C/man7/arp.7:266
651 msgid ""
652 "The maximum number of attempts to send unicast probes before asking the ARP "
653 "daemon (see I<app_solicit>).  Defaults to 3."
654 msgstr ""
655 "ARP デーモンへの問い合わせを行う前に行う unicast 探索の最大試行数 "
656 "(I<app_solicit> を見よ)。デフォルトは 3。"
657
658 #. type: TP
659 #: build/C/man7/arp.7:266
660 #, no-wrap
661 msgid "I<unres_qlen> (since Linux 2.2)"
662 msgstr "I<unres_qlen> (Linux 2.2 以降)"
663
664 #.  Precisely: 2.1.79
665 #. type: Plain text
666 #: build/C/man7/arp.7:272
667 msgid ""
668 "The maximum number of packets which may be queued for each unresolved "
669 "address by other network layers.  Defaults to 3."
670 msgstr ""
671 "解決されていないアドレスに対して、 他のネットワーク層からキューイングできる最"
672 "大パケット数。 デフォルトは 3。"
673
674 #. type: SH
675 #: build/C/man7/arp.7:272 build/C/man7/ddp.7:221 build/C/man3/endian.3:74
676 #: build/C/man3/getnameinfo.3:203 build/C/man7/icmp.7:161
677 #: build/C/man7/ipv6.7:362 build/C/man7/packet.7:532 build/C/man7/raw.7:175
678 #: build/C/man3/rcmd.3:262 build/C/man3/rexec.3:138 build/C/man7/tcp.7:1244
679 #: build/C/man7/udp.7:251 build/C/man7/udplite.7:132 build/C/man7/unix.7:484
680 #: build/C/man7/x25.7:100
681 #, no-wrap
682 msgid "VERSIONS"
683 msgstr "バージョン"
684
685 #. type: Plain text
686 #: build/C/man7/arp.7:279
687 msgid ""
688 "The I<struct arpreq> changed in Linux 2.0 to include the I<arp_dev> member "
689 "and the ioctl numbers changed at the same time.  Support for the old ioctls "
690 "was dropped in Linux 2.2."
691 msgstr ""
692 "Linux 2.0 で、 I<struct arpreq> に I<arp_dev> メンバーが含まれるように変更が"
693 "あった。また同時に ioctl 番号も変更された。古い ioctl は Linux 2.2 で用いるこ"
694 "とができなくなった。"
695
696 #. type: Plain text
697 #: build/C/man7/arp.7:285
698 msgid ""
699 "Support for proxy arp entries for networks (netmask not equal 0xffffffff)  "
700 "was dropped in Linux 2.2.  It is replaced by automatic proxy arp setup by "
701 "the kernel for all reachable hosts on other interfaces (when forwarding and "
702 "proxy arp is enabled for the interface)."
703 msgstr ""
704 "ネットワークに対する代理 arp エントリー (netmask が 0xffffffff でない)  は、 "
705 "Linux 2.2 で用いることができなくなった。 これはカーネルによって設定される、別"
706 "のインターフェースにおける 到達可能なすべてのホストに対する自動代理 arp に"
707 "よって置き換えられた (そのインターフェースでフォワーディングと代理 arp が有効"
708 "になっている場合)。"
709
710 #. type: Plain text
711 #: build/C/man7/arp.7:289
712 msgid "The I<neigh/*> interfaces did not exist before Linux 2.2."
713 msgstr "I<neigh/*> の各インターフェースは Linux 2.2 以前には存在しない。"
714
715 #. type: SH
716 #: build/C/man7/arp.7:289 build/C/man7/ddp.7:244 build/C/man3/ether_aton.3:151
717 #: build/C/man3/gethostbyname.3:438 build/C/man3/inet_ntop.3:112
718 #: build/C/man3/inet_pton.3:150 build/C/man7/ip.7:1245 build/C/man7/ipv6.7:396
719 #: build/C/man7/netdevice.7:359 build/C/man7/packet.7:601
720 #: build/C/man7/raw.7:252 build/C/man3/rcmd.3:278 build/C/man3/rexec.3:158
721 #: build/C/man2/shutdown.2:104 build/C/man7/tcp.7:1251
722 #: build/C/man7/udplite.7:134 build/C/man7/unix.7:521 build/C/man7/x25.7:102
723 #, no-wrap
724 msgid "BUGS"
725 msgstr "バグ"
726
727 #. type: Plain text
728 #: build/C/man7/arp.7:293
729 msgid ""
730 "Some timer settings are specified in jiffies, which is architecture- and "
731 "kernel version-dependent; see B<time>(7)."
732 msgstr ""
733 "いくつかのタイマー設定は jiffy で指定されるが、 jiffy はアーキテクチャーや"
734 "カーネルのバージョンに依存する。 B<time>(7)  を参照のこと。"
735
736 #. type: Plain text
737 #: build/C/man7/arp.7:299
738 msgid ""
739 "There is no way to signal positive feedback from user space.  This means "
740 "connection-oriented protocols implemented in user space will generate "
741 "excessive ARP traffic, because ndisc will regularly reprobe the MAC "
742 "address.  The same problem applies for some kernel protocols (e.g., NFS over "
743 "UDP)."
744 msgstr ""
745 "ユーザー空間からポジティブなフィードバックを送る方法が存在しない。 つまり接続"
746 "指向 (connection-oriented) のプロトコルをユーザー空間で 実装すると、余計な "
747 "ARP トラフィックの原因となる。 なぜなら ndisc は定期的に MAC アドレスを再探索"
748 "するからである。 同様の問題はいくつかのカーネルプロトコル (NFS over UDP な"
749 "ど) にも存在する。"
750
751 #. type: Plain text
752 #: build/C/man7/arp.7:302
753 msgid ""
754 "This man page mashes together functionality that is IPv4-specific with "
755 "functionality that is shared between IPv4 and IPv6."
756 msgstr ""
757 "この man ページでは IPv4 特有の機能と IPv4 とIPv6 で共通の機能を一緒に説明し"
758 "ている。"
759
760 #. type: SH
761 #: build/C/man7/arp.7:302 build/C/man3/byteorder.3:92 build/C/man3/cmsg.3:222
762 #: build/C/man7/ddp.7:249 build/C/man3/endian.3:151
763 #: build/C/man3/ether_aton.3:157 build/C/man5/gai.conf.5:93
764 #: build/C/man3/getaddrinfo.3:828 build/C/man3/getaddrinfo_a.3:600
765 #: build/C/man1/getent.1:368 build/C/man3/gethostbyname.3:443
766 #: build/C/man3/getipnodebyname.3:266 build/C/man3/getnameinfo.3:282
767 #: build/C/man3/getnetent.3:154 build/C/man3/getnetent_r.3:145
768 #: build/C/man2/getpeername.2:143 build/C/man3/getprotoent.3:142
769 #: build/C/man3/getprotoent_r.3:237 build/C/man3/getservent.3:159
770 #: build/C/man3/getservent_r.3:241 build/C/man5/host.conf.5:199
771 #: build/C/man7/hostname.7:85 build/C/man5/hosts.5:115
772 #: build/C/man5/hosts.equiv.5:84 build/C/man7/icmp.7:191
773 #: build/C/man3/inet.3:305 build/C/man3/inet_net_pton.3:390
774 #: build/C/man3/inet_ntop.3:118 build/C/man3/inet_pton.3:215
775 #: build/C/man7/ip.7:1272 build/C/man7/ipv6.7:407 build/C/man7/netdevice.7:373
776 #: build/C/man5/networks.5:74 build/C/man8/nscd.8:85
777 #: build/C/man5/nscd.conf.5:239 build/C/man5/nss.5:110
778 #: build/C/man5/nsswitch.conf.5:352 build/C/man7/packet.7:631
779 #: build/C/man5/protocols.5:81 build/C/man7/raw.7:269 build/C/man3/rcmd.3:285
780 #: build/C/man5/resolv.conf.5:301 build/C/man3/resolver.3:274
781 #: build/C/man3/rexec.3:167 build/C/man5/services.5:210
782 #: build/C/man3/setnetgrent.3:107 build/C/man2/shutdown.2:113
783 #: build/C/man7/tcp.7:1263 build/C/man7/udp.7:256 build/C/man7/udplite.7:146
784 #: build/C/man7/unix.7:616 build/C/man7/x25.7:118
785 #, no-wrap
786 msgid "SEE ALSO"
787 msgstr "関連項目"
788
789 #. type: Plain text
790 #: build/C/man7/arp.7:305
791 msgid "B<capabilities>(7), B<ip>(7)"
792 msgstr "B<capabilities>(7), B<ip>(7)"
793
794 #. type: Plain text
795 #: build/C/man7/arp.7:310
796 msgid ""
797 "RFC\\ 826 for a description of ARP.  RFC\\ 2461 for a description of IPv6 "
798 "neighbor discovery and the base algorithms used.  Linux 2.2+ IPv4 ARP uses "
799 "the IPv6 algorithms when applicable."
800 msgstr ""
801 "RFC \\ 826: ARP の説明。 RFC\\ 2461: IPv6 neighbor discovery の説明と利用され"
802 "ている基礎アルゴリズム。 Linux 2.2 以降では IPv4 ARP は可能な場合は IPv6 アル"
803 "ゴリズムを使っている。"
804
805 #. type: SH
806 #: build/C/man7/arp.7:310 build/C/man3/byteorder.3:96 build/C/man3/cmsg.3:227
807 #: build/C/man7/ddp.7:254 build/C/man3/endian.3:153
808 #: build/C/man3/ether_aton.3:159 build/C/man5/gai.conf.5:96
809 #: build/C/man3/getaddrinfo.3:838 build/C/man3/getaddrinfo_a.3:607
810 #: build/C/man1/getent.1:370 build/C/man3/gethostbyname.3:457
811 #: build/C/man3/getipnodebyname.3:271 build/C/man3/getnameinfo.3:315
812 #: build/C/man3/getnetent.3:161 build/C/man3/getnetent_r.3:148
813 #: build/C/man2/getpeername.2:150 build/C/man3/getprotoent.3:147
814 #: build/C/man3/getprotoent_r.3:240 build/C/man3/getservent.3:164
815 #: build/C/man3/getservent_r.3:244 build/C/man5/host.conf.5:204
816 #: build/C/man7/hostname.7:93 build/C/man5/hosts.5:126
817 #: build/C/man5/hosts.equiv.5:88 build/C/man7/icmp.7:195
818 #: build/C/man3/inet.3:316 build/C/man3/inet_net_pton.3:393
819 #: build/C/man3/inet_ntop.3:122 build/C/man3/inet_pton.3:219
820 #: build/C/man7/ip.7:1289 build/C/man7/ipv6.7:414 build/C/man7/netdevice.7:378
821 #: build/C/man5/networks.5:80 build/C/man8/nscd.8:91
822 #: build/C/man5/nscd.conf.5:244 build/C/man5/nss.5:112
823 #: build/C/man5/nsswitch.conf.5:355 build/C/man7/packet.7:654
824 #: build/C/man5/protocols.5:86 build/C/man7/raw.7:282 build/C/man3/rcmd.3:293
825 #: build/C/man5/resolv.conf.5:308 build/C/man3/resolver.3:280
826 #: build/C/man3/rexec.3:170 build/C/man5/services.5:222
827 #: build/C/man3/setnetgrent.3:111 build/C/man2/shutdown.2:117
828 #: build/C/man7/tcp.7:1289 build/C/man7/udp.7:267 build/C/man7/udplite.7:156
829 #: build/C/man7/unix.7:625 build/C/man7/x25.7:127
830 #, no-wrap
831 msgid "COLOPHON"
832 msgstr "この文書について"
833
834 #. type: Plain text
835 #: build/C/man7/arp.7:318 build/C/man3/byteorder.3:104 build/C/man3/cmsg.3:235
836 #: build/C/man7/ddp.7:262 build/C/man3/endian.3:161
837 #: build/C/man3/ether_aton.3:167 build/C/man5/gai.conf.5:104
838 #: build/C/man3/getaddrinfo.3:846 build/C/man3/getaddrinfo_a.3:615
839 #: build/C/man1/getent.1:378 build/C/man3/gethostbyname.3:465
840 #: build/C/man3/getipnodebyname.3:279 build/C/man3/getnameinfo.3:323
841 #: build/C/man3/getnetent.3:169 build/C/man3/getnetent_r.3:156
842 #: build/C/man2/getpeername.2:158 build/C/man3/getprotoent.3:155
843 #: build/C/man3/getprotoent_r.3:248 build/C/man3/getservent.3:172
844 #: build/C/man3/getservent_r.3:252 build/C/man5/host.conf.5:212
845 #: build/C/man7/hostname.7:101 build/C/man5/hosts.5:134
846 #: build/C/man5/hosts.equiv.5:96 build/C/man7/icmp.7:203
847 #: build/C/man3/inet.3:324 build/C/man3/inet_net_pton.3:401
848 #: build/C/man3/inet_ntop.3:130 build/C/man3/inet_pton.3:227
849 #: build/C/man7/ip.7:1297 build/C/man7/ipv6.7:422 build/C/man7/netdevice.7:386
850 #: build/C/man5/networks.5:88 build/C/man8/nscd.8:99
851 #: build/C/man5/nscd.conf.5:252 build/C/man5/nss.5:120
852 #: build/C/man5/nsswitch.conf.5:363 build/C/man7/packet.7:662
853 #: build/C/man5/protocols.5:94 build/C/man7/raw.7:290 build/C/man3/rcmd.3:301
854 #: build/C/man5/resolv.conf.5:316 build/C/man3/resolver.3:288
855 #: build/C/man3/rexec.3:178 build/C/man5/services.5:230
856 #: build/C/man3/setnetgrent.3:119 build/C/man2/shutdown.2:125
857 #: build/C/man7/tcp.7:1297 build/C/man7/udp.7:275 build/C/man7/udplite.7:164
858 #: build/C/man7/unix.7:633 build/C/man7/x25.7:135
859 msgid ""
860 "This page is part of release 3.78 of the Linux I<man-pages> project.  A "
861 "description of the project, information about reporting bugs, and the latest "
862 "version of this page, can be found at \\%http://www.kernel.org/doc/man-"
863 "pages/."
864 msgstr ""
865 "この man ページは Linux I<man-pages> プロジェクトのリリース 3.78 の一部\n"
866 "である。プロジェクトの説明とバグ報告に関する情報は\n"
867 "http://www.kernel.org/doc/man-pages/ に書かれている。"
868
869 #. type: TH
870 #: build/C/man3/byteorder.3:32
871 #, no-wrap
872 msgid "BYTEORDER"
873 msgstr "BYTEORDER"
874
875 #. type: TH
876 #: build/C/man3/byteorder.3:32
877 #, no-wrap
878 msgid "2014-04-08"
879 msgstr "2014-04-08"
880
881 #. type: TH
882 #: build/C/man3/byteorder.3:32 build/C/man3/endian.3:28
883 #: build/C/man3/ether_aton.3:31 build/C/man3/getaddrinfo.3:44
884 #: build/C/man3/getaddrinfo_a.3:29 build/C/man3/getnameinfo.3:10
885 #: build/C/man3/getnetent.3:30 build/C/man3/getnetent_r.3:26
886 #: build/C/man3/getprotoent.3:30 build/C/man3/getprotoent_r.3:26
887 #: build/C/man3/getservent.3:34 build/C/man3/getservent_r.3:26
888 #: build/C/man3/inet.3:42 build/C/man8/nscd.8:23 build/C/man5/nscd.conf.5:20
889 #: build/C/man3/resolver.3:32 build/C/man3/setnetgrent.3:10
890 #, no-wrap
891 msgid "GNU"
892 msgstr "GNU"
893
894 #. type: Plain text
895 #: build/C/man3/byteorder.3:36
896 msgid ""
897 "htonl, htons, ntohl, ntohs - convert values between host and network byte "
898 "order"
899 msgstr ""
900 "htonl, htons, ntohl, ntohs - ホストバイトオーダーとネットワークバイトオーダー"
901 "の間で値を変換する"
902
903 #. type: SH
904 #: build/C/man3/byteorder.3:36 build/C/man3/cmsg.3:14 build/C/man7/ddp.7:15
905 #: build/C/man3/endian.3:33 build/C/man3/ether_aton.3:35
906 #: build/C/man3/getaddrinfo.3:48 build/C/man3/getaddrinfo_a.3:33
907 #: build/C/man1/getent.1:27 build/C/man3/gethostbyname.3:46
908 #: build/C/man3/getipnodebyname.3:30 build/C/man3/getnameinfo.3:13
909 #: build/C/man3/getnetent.3:34 build/C/man3/getnetent_r.3:30
910 #: build/C/man2/getpeername.2:45 build/C/man3/getprotoent.3:34
911 #: build/C/man3/getprotoent_r.3:30 build/C/man3/getservent.3:38
912 #: build/C/man3/getservent_r.3:30 build/C/man5/hosts.5:30
913 #: build/C/man3/inet.3:46 build/C/man3/inet_net_pton.3:29
914 #: build/C/man3/inet_ntop.3:29 build/C/man3/inet_pton.3:30
915 #: build/C/man7/ip.7:39 build/C/man7/ipv6.7:89 build/C/man7/netdevice.7:21
916 #: build/C/man7/packet.7:15 build/C/man7/raw.7:16 build/C/man3/rcmd.3:48
917 #: build/C/man5/resolv.conf.5:27 build/C/man3/resolver.3:36
918 #: build/C/man3/rexec.3:44 build/C/man3/setnetgrent.3:14
919 #: build/C/man2/shutdown.2:43 build/C/man7/tcp.7:79 build/C/man7/udp.7:15
920 #: build/C/man7/udplite.7:30 build/C/man7/unix.7:23 build/C/man7/x25.7:15
921 #, no-wrap
922 msgid "SYNOPSIS"
923 msgstr "書式"
924
925 #. type: Plain text
926 #: build/C/man3/byteorder.3:39 build/C/man3/inet_net_pton.3:32
927 #: build/C/man3/inet_ntop.3:32 build/C/man3/inet_pton.3:33
928 #, no-wrap
929 msgid "B<#include E<lt>arpa/inet.hE<gt>>\n"
930 msgstr "B<#include E<lt>arpa/inet.hE<gt>>\n"
931
932 #. type: Plain text
933 #: build/C/man3/byteorder.3:41
934 #, no-wrap
935 msgid "B<uint32_t htonl(uint32_t >I<hostlong>B<);>\n"
936 msgstr "B<uint32_t htonl(uint32_t >I<hostlong>B<);>\n"
937
938 #. type: Plain text
939 #: build/C/man3/byteorder.3:43
940 #, no-wrap
941 msgid "B<uint16_t htons(uint16_t >I<hostshort>B<);>\n"
942 msgstr "B<uint16_t htons(uint16_t >I<hostshort>B<);>\n"
943
944 #. type: Plain text
945 #: build/C/man3/byteorder.3:45
946 #, no-wrap
947 msgid "B<uint32_t ntohl(uint32_t >I<netlong>B<);>\n"
948 msgstr "B<uint32_t ntohl(uint32_t >I<netlong>B<);>\n"
949
950 #. type: Plain text
951 #: build/C/man3/byteorder.3:47
952 #, no-wrap
953 msgid "B<uint16_t ntohs(uint16_t >I<netshort>B<);>\n"
954 msgstr "B<uint16_t ntohs(uint16_t >I<netshort>B<);>\n"
955
956 #. type: Plain text
957 #: build/C/man3/byteorder.3:54
958 msgid ""
959 "The B<htonl>()  function converts the unsigned integer I<hostlong> from host "
960 "byte order to network byte order."
961 msgstr ""
962 "B<htonl>()  関数は unsigned integer I<hostlong> を ホストバイトオーダーから"
963 "ネットワークバイトオーダーに変換する。"
964
965 #. type: Plain text
966 #: build/C/man3/byteorder.3:60
967 msgid ""
968 "The B<htons>()  function converts the unsigned short integer I<hostshort> "
969 "from host byte order to network byte order."
970 msgstr ""
971 "B<htons>()  関数は unsigned short integer I<hostshort> を ホストバイトオー"
972 "ダーからネットワークバイトオーダーに変換する。"
973
974 #. type: Plain text
975 #: build/C/man3/byteorder.3:66
976 msgid ""
977 "The B<ntohl>()  function converts the unsigned integer I<netlong> from "
978 "network byte order to host byte order."
979 msgstr ""
980 "B<ntohl>()  関数は unsigned integer I<netlong> を ネットワークバイトオーダー"
981 "からホストバイトオーダーに変換する。"
982
983 #. type: Plain text
984 #: build/C/man3/byteorder.3:72
985 msgid ""
986 "The B<ntohs>()  function converts the unsigned short integer I<netshort> "
987 "from network byte order to host byte order."
988 msgstr ""
989 "B<ntohs>()  関数は unsigned short integer I<netshort> を ネットワークバイト"
990 "オーダーからホストバイトオーダーに変換する。"
991
992 #. type: Plain text
993 #: build/C/man3/byteorder.3:76
994 msgid ""
995 "On the i386 the host byte order is Least Significant Byte first, whereas the "
996 "network byte order, as used on the Internet, is Most Significant Byte first."
997 msgstr ""
998 "i80x86 のホストバイトオーダーでは最下位バイトが若いアドレスに配置されるが、 "
999 "インターネットで用いられるネットワークバイトオーダーでは最上位バイト が先に配"
1000 "置される。"
1001
1002 #. type: SH
1003 #: build/C/man3/byteorder.3:76 build/C/man3/ether_aton.3:127
1004 #: build/C/man3/rexec.3:142
1005 #, no-wrap
1006 msgid "ATTRIBUTES"
1007 msgstr "属性"
1008
1009 #. type: SS
1010 #: build/C/man3/byteorder.3:77 build/C/man3/rexec.3:143
1011 #, no-wrap
1012 msgid "Multithreading (see pthreads(7))"
1013 msgstr "マルチスレッディング (pthreads(7) 参照)"
1014
1015 #. type: Plain text
1016 #: build/C/man3/byteorder.3:85
1017 msgid ""
1018 "The B<htonl>(), B<htons>(), B<ntohl>(), and B<ntohs>()  functions are thread-"
1019 "safe."
1020 msgstr ""
1021 "関数 B<htonl>(), B<htons>(), B<ntohl>(), B<ntohs>() はスレッドセーフである。"
1022
1023 #. type: SH
1024 #: build/C/man3/byteorder.3:85 build/C/man3/cmsg.3:141
1025 #: build/C/man3/endian.3:76 build/C/man3/ether_aton.3:149
1026 #: build/C/man3/getaddrinfo.3:595 build/C/man3/getaddrinfo_a.3:305
1027 #: build/C/man3/gethostbyname.3:317 build/C/man3/getipnodebyname.3:258
1028 #: build/C/man3/getnameinfo.3:206 build/C/man3/getnetent.3:145
1029 #: build/C/man3/getnetent_r.3:141 build/C/man2/getpeername.2:101
1030 #: build/C/man3/getprotoent.3:140 build/C/man3/getprotoent_r.3:131
1031 #: build/C/man3/getservent.3:157 build/C/man3/getservent_r.3:130
1032 #: build/C/man3/inet.3:218 build/C/man3/inet_net_pton.3:159
1033 #: build/C/man3/inet_ntop.3:100 build/C/man3/inet_pton.3:129
1034 #: build/C/man3/rcmd.3:270 build/C/man3/resolver.3:272
1035 #: build/C/man3/rexec.3:149 build/C/man3/setnetgrent.3:92
1036 #: build/C/man2/shutdown.2:91
1037 #, no-wrap
1038 msgid "CONFORMING TO"
1039 msgstr "準拠"
1040
1041 #. type: Plain text
1042 #: build/C/man3/byteorder.3:87 build/C/man3/inet_pton.3:131
1043 msgid "POSIX.1-2001."
1044 msgstr "POSIX.1-2001."
1045
1046 #. type: Plain text
1047 #: build/C/man3/byteorder.3:92
1048 msgid ""
1049 "Some systems require the inclusion of I<E<lt>netinet/in.hE<gt>> instead of "
1050 "I<E<lt>arpa/inet.hE<gt>>."
1051 msgstr ""
1052 "いくつかのシステムでは、 I<E<lt>arpa/inet.hE<gt>> の代わりに I<E<lt>netinet/"
1053 "in.hE<gt>> をインクルードする必要がある。"
1054
1055 #. type: Plain text
1056 #: build/C/man3/byteorder.3:96
1057 msgid "B<endian>(3), B<gethostbyname>(3), B<getservent>(3)"
1058 msgstr "B<endian>(3), B<gethostbyname>(3), B<getservent>(3)"
1059
1060 #. type: TH
1061 #: build/C/man3/cmsg.3:11
1062 #, no-wrap
1063 msgid "CMSG"
1064 msgstr "CMSG"
1065
1066 #. type: TH
1067 #: build/C/man3/cmsg.3:11 build/C/man5/resolv.conf.5:23 build/C/man7/unix.7:20
1068 #, no-wrap
1069 msgid "2014-12-31"
1070 msgstr "2014-12-31"
1071
1072 #. type: Plain text
1073 #: build/C/man3/cmsg.3:14
1074 msgid ""
1075 "CMSG_ALIGN, CMSG_SPACE, CMSG_NXTHDR, CMSG_FIRSTHDR - access ancillary data"
1076 msgstr ""
1077 "CMSG_ALIGN, CMSG_SPACE, CMSG_NXTHDR, CMSG_FIRSTHDR - 補助データにアクセスす"
1078 "る。"
1079
1080 #. type: Plain text
1081 #: build/C/man3/cmsg.3:16 build/C/man7/ddp.7:17 build/C/man2/getpeername.2:47
1082 #: build/C/man7/ip.7:41 build/C/man7/ipv6.7:91 build/C/man7/raw.7:18
1083 #: build/C/man2/shutdown.2:45 build/C/man7/tcp.7:81 build/C/man7/udp.7:17
1084 #: build/C/man7/udplite.7:32 build/C/man7/unix.7:25 build/C/man7/x25.7:17
1085 msgid "B<#include E<lt>sys/socket.hE<gt>>"
1086 msgstr "B<#include E<lt>sys/socket.hE<gt>>"
1087
1088 #. type: Plain text
1089 #: build/C/man3/cmsg.3:18
1090 msgid "B<struct cmsghdr *CMSG_FIRSTHDR(struct msghdr *>I<msgh>B<);>"
1091 msgstr "B<struct cmsghdr *CMSG_FIRSTHDR(struct msghdr *>I<msgh>B<);>"
1092
1093 #. type: Plain text
1094 #: build/C/man3/cmsg.3:20
1095 msgid ""
1096 "B<struct cmsghdr *CMSG_NXTHDR(struct msghdr *>I<msgh>B<, struct cmsghdr "
1097 "*>I<cmsg>B<);>"
1098 msgstr ""
1099 "B<struct cmsghdr *CMSG_NXTHDR(struct msghdr *>I<msgh>B<, struct cmsghdr "
1100 "*>I<cmsg>B<);>"
1101
1102 #. type: Plain text
1103 #: build/C/man3/cmsg.3:22
1104 msgid "B<size_t CMSG_ALIGN(size_t >I<length>B<);>"
1105 msgstr "B<size_t CMSG_ALIGN(size_t >I<length>B<);>"
1106
1107 #. type: Plain text
1108 #: build/C/man3/cmsg.3:24
1109 msgid "B<size_t CMSG_SPACE(size_t >I<length>B<);>"
1110 msgstr "B<size_t CMSG_SPACE(size_t >I<length>B<);>"
1111
1112 #. type: Plain text
1113 #: build/C/man3/cmsg.3:26
1114 msgid "B<size_t CMSG_LEN(size_t >I<length>B<);>"
1115 msgstr "B<size_t CMSG_LEN(size_t >I<length>B<);>"
1116
1117 #. type: Plain text
1118 #: build/C/man3/cmsg.3:28
1119 msgid "B<unsigned char *CMSG_DATA(struct cmsghdr *>I<cmsg>B<);>"
1120 msgstr "B<unsigned char *CMSG_DATA(struct cmsghdr *>I<cmsg>B<);>"
1121
1122 #. type: Plain text
1123 #: build/C/man3/cmsg.3:36
1124 #, no-wrap
1125 msgid ""
1126 "struct cmsghdr {\n"
1127 "    socklen_t cmsg_len;    /* data byte count, including header */\n"
1128 "    int       cmsg_level;  /* originating protocol */\n"
1129 "    int       cmsg_type;   /* protocol-specific type */\n"
1130 "    /* followed by unsigned char cmsg_data[]; */\n"
1131 "};\n"
1132 msgstr ""
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
1140 #. type: Plain text
1141 #: build/C/man3/cmsg.3:51
1142 msgid ""
1143 "These macros are used to create and access control messages (also called "
1144 "ancillary data) that are not a part of the socket payload.  This control "
1145 "information may include the interface the packet was received on, various "
1146 "rarely used header fields, an extended error description, a set of file "
1147 "descriptors or UNIX credentials.  For instance, control messages can be used "
1148 "to send additional header fields such as IP options.  Ancillary data is sent "
1149 "by calling B<sendmsg>(2)  and received by calling B<recvmsg>(2).  See their "
1150 "manual pages for more information."
1151 msgstr ""
1152 "これらのマクロは制御メッセージ (補助データ (ancillary data) とも呼ばれる) を"
1153 "作り、 それにアクセスするために使われる。 制御メッセージはソケットにのるデー"
1154 "タではない。 この制御情報は、到着したパケットへのインターフェイス、様々なあま"
1155 "り 使われないヘッダーフィールド、エラー記述の拡張、ファイルデスクリ プタの集"
1156 "合や、UNIXにおける信頼情報 (credential) を含んでいる。 制御メッセージは、例え"
1157 "ば IP オプションのような追加ヘッダーフィールドを 送るのに使う事ができる。 補"
1158 "助データは、 B<sendmsg>(2)  を呼び出して送り、 B<recvmsg>(2)  を呼び出して受"
1159 "け取る。 詳細はそれらのマニュアルページを参照。"
1160
1161 #. type: Plain text
1162 #: build/C/man3/cmsg.3:62
1163 msgid ""
1164 "Ancillary data is a sequence of I<struct cmsghdr> structures with appended "
1165 "data.  This sequence should be accessed using only the macros described in "
1166 "this manual page and never directly.  See the specific protocol man pages "
1167 "for the available control message types.  The maximum ancillary buffer size "
1168 "allowed per socket can be set using I</proc/sys/net/core/optmem_max>; see "
1169 "B<socket>(7)."
1170 msgstr ""
1171 "補助データは I<struct cmsghdr> 構造体のシーケンスに追加データが付加されたもの"
1172 "である。 このシーケンスにはこのマニュアルページに書かれている マクロを使って"
1173 "アクセスすべきで、直接アクセスすべきではない。 使用可能な制御メッセージのタイ"
1174 "プについては、 それぞれのプロトコルのマニュアルページを参照のこと。 接続毎の"
1175 "最大補助用バッファーサイズは I</proc/sys/net/core/optmem_max> を使って設定で"
1176 "きる。 B<socket>(7)  を参照。"
1177
1178 #. type: Plain text
1179 #: build/C/man3/cmsg.3:69
1180 msgid ""
1181 "B<CMSG_FIRSTHDR>()  returns a pointer to the first I<cmsghdr> in the "
1182 "ancillary data buffer associated with the passed I<msghdr>."
1183 msgstr ""
1184 "B<CMSG_FIRSTHDR>()  は、渡した I<msghdr> に関連した補助データバッファー中の、"
1185 "最初の I<cmsghdr> へのポインターを返す。"
1186
1187 #. type: Plain text
1188 #: build/C/man3/cmsg.3:76
1189 msgid ""
1190 "B<CMSG_NXTHDR>()  returns the next valid I<cmsghdr> after the passed "
1191 "I<cmsghdr>.  It returns NULL when there isn't enough space left in the "
1192 "buffer."
1193 msgstr ""
1194 "B<CMSG_NXTHDR>()  は、渡した I<cmsghdr> の次にくる (有効な)  I<cmsghdr> を返"
1195 "す。 バッファーに十分な空きが無い場合、NULL を返す。"
1196
1197 #. type: Plain text
1198 #: build/C/man3/cmsg.3:81
1199 msgid ""
1200 "B<CMSG_ALIGN>(), given a length, returns it including the required "
1201 "alignment.  This is a constant expression."
1202 msgstr ""
1203 "B<CMSG_ALIGN>()  に長さを与えると、必要なアラインメントを加味した長さを返して"
1204 "くる。 これは定数式である。"
1205
1206 #. type: Plain text
1207 #: build/C/man3/cmsg.3:86
1208 msgid ""
1209 "B<CMSG_SPACE>()  returns the number of bytes an ancillary element with "
1210 "payload of the passed data length occupies.  This is a constant expression."
1211 msgstr ""
1212 "B<CMSG_SPACE>()  は、与えたデータ長が占めるのに必要な補助要素 (ancillary "
1213 "element) の バイト数を返す。これは定数式である。"
1214
1215 #. type: Plain text
1216 #: build/C/man3/cmsg.3:90
1217 msgid "B<CMSG_DATA>()  returns a pointer to the data portion of a I<cmsghdr>."
1218 msgstr "B<CMSG_DATA>()  は、 I<cmsghdr> のデータ部分へのポインターを返す。"
1219
1220 #. type: Plain text
1221 #: build/C/man3/cmsg.3:101
1222 msgid ""
1223 "B<CMSG_LEN>()  returns the value to store in the I<cmsg_len> member of the "
1224 "I<cmsghdr> structure, taking into account any necessary alignment.  It takes "
1225 "the data length as an argument.  This is a constant expression."
1226 msgstr ""
1227 "B<CMSG_LEN>()  は、 I<cmsghdr> 構造体の I<cmsg_len> メンバにデータを格納する"
1228 "際に必要な値を返す。アラインメントも考慮に入れ られる。 引数としてデータ長を"
1229 "とる。これは定数式である。"
1230
1231 #. type: Plain text
1232 #: build/C/man3/cmsg.3:134
1233 msgid ""
1234 "To create ancillary data, first initialize the I<msg_controllen> member of "
1235 "the I<msghdr> with the length of the control message buffer.  Use "
1236 "B<CMSG_FIRSTHDR>()  on the I<msghdr> to get the first control message and "
1237 "B<CMSG_NXTHDR>()  to get all subsequent ones.  In each control message, "
1238 "initialize I<cmsg_len> (with B<CMSG_LEN>()), the other I<cmsghdr> header "
1239 "fields, and the data portion using B<CMSG_DATA>().  Finally, the "
1240 "I<msg_controllen> field of the I<msghdr> should be set to the sum of the "
1241 "B<CMSG_SPACE>()  of the length of all control messages in the buffer.  For "
1242 "more information on the I<msghdr>, see B<recvmsg>(2)."
1243 msgstr ""
1244 "補助データを作るためには最初に I<msghdr> のメンバー I<msg_controllen> を、制"
1245 "御メッセージバッファーの長さで初期化する。 B<CMSG_FIRSTHDR>()  を I<msghdr> "
1246 "に用いると最初の制御メッセージが得られ、 B<CMSG_NXTHDR>()  を使うと次の制御"
1247 "メッセージが得られる。 それぞれの制御メッセージでは、 I<cmsg_len> を初期化す"
1248 "る (B<CMSG_LEN>()  を使う)。 その他の I<cmsghdr> ヘッダーフィールド、そして"
1249 "データ部分に対しても B<CMSG_DATA>()  を使って初期化をする。 最後に I<msghdr> "
1250 "の I<msg_controllen> フィールドに、バッファー中の制御メッセージの長さの "
1251 "B<CMSG_SPACE>()  の合計がセットされる。 I<msghdr> についての詳細は "
1252 "B<recvmsg>(2)  を参照。"
1253
1254 #. type: Plain text
1255 #: build/C/man3/cmsg.3:141
1256 msgid ""
1257 "When the control message buffer is too short to store all messages, the "
1258 "B<MSG_CTRUNC> flag is set in the I<msg_flags> member of the I<msghdr>."
1259 msgstr ""
1260 "制御メッセージバッファーが全てのメッセージを納めるのには短すぎる場合、 "
1261 "I<msghdr> の I<msg_flags> メンバーに B<MSG_CTRUNC> フラグがセットされる。"
1262
1263 #. type: Plain text
1264 #: build/C/man3/cmsg.3:146
1265 msgid ""
1266 "This ancillary data model conforms to the POSIX.1g draft, 4.4BSD-Lite, the "
1267 "IPv6 advanced API described in RFC\\ 2292 and SUSv2.  B<CMSG_ALIGN>()  is a "
1268 "Linux extension."
1269 msgstr ""
1270 "この補助データモデルは、POSIX.1g draft, 4.4BSD-Lite, RFC\\ 2292 に 記述されて"
1271 "いる IPv6 advanced API, そして SUSv2 に準拠している。 B<CMSG_ALIGN>()  は "
1272 "Linux の拡張である。"
1273
1274 #. type: SH
1275 #: build/C/man3/cmsg.3:146 build/C/man7/ddp.7:226 build/C/man3/endian.3:91
1276 #: build/C/man3/getaddrinfo.3:600 build/C/man3/getaddrinfo_a.3:308
1277 #: build/C/man3/gethostbyname.3:341 build/C/man3/getipnodebyname.3:261
1278 #: build/C/man3/getnameinfo.3:208 build/C/man3/getnetent.3:147
1279 #: build/C/man2/getpeername.2:105 build/C/man5/host.conf.5:190
1280 #: build/C/man5/hosts.5:88 build/C/man5/hosts.equiv.5:71
1281 #: build/C/man7/icmp.7:169 build/C/man3/inet.3:226
1282 #: build/C/man3/inet_net_pton.3:165 build/C/man3/inet_pton.3:131
1283 #: build/C/man7/ip.7:1183 build/C/man7/ipv6.7:386 build/C/man7/netdevice.7:341
1284 #: build/C/man8/nscd.8:60 build/C/man5/nscd.conf.5:232
1285 #: build/C/man5/nsswitch.conf.5:333 build/C/man7/packet.7:538
1286 #: build/C/man7/raw.7:187 build/C/man3/setnetgrent.3:103
1287 #: build/C/man2/shutdown.2:95 build/C/man7/unix.7:490
1288 #, no-wrap
1289 msgid "NOTES"
1290 msgstr "注意"
1291
1292 #. type: Plain text
1293 #: build/C/man3/cmsg.3:151
1294 msgid ""
1295 "For portability, ancillary data should be accessed using only the macros "
1296 "described here.  B<CMSG_ALIGN>()  is a Linux extension and should not be "
1297 "used in portable programs."
1298 msgstr ""
1299 "移植性のために、補助データへのアクセスには、 ここで述べられているマクロだけを"
1300 "使うべきである。 B<CMSG_ALIGN>()  は Linux での拡張であり、移植性を考えたプロ"
1301 "グラムでは使うべきではない。"
1302
1303 #. type: Plain text
1304 #: build/C/man3/cmsg.3:161
1305 msgid ""
1306 "In Linux, B<CMSG_LEN>(), B<CMSG_DATA>(), and B<CMSG_ALIGN>()  are constant "
1307 "expressions (assuming their argument is constant); this could be used to "
1308 "declare the size of global variables.  This may not be portable, however."
1309 msgstr ""
1310 "Linux では B<CMSG_LEN>(), B<CMSG_DATA>(), B<CMSG_ALIGN>()  は定数式である (そ"
1311 "れらの引数が定数とみなされる)。 このことは、大域変数のサイズを宣言するのに使"
1312 "える。 しかし移植性はなくなるだろう。"
1313
1314 #. type: SH
1315 #: build/C/man3/cmsg.3:161 build/C/man3/endian.3:107
1316 #: build/C/man5/gai.conf.5:74 build/C/man3/getaddrinfo.3:623
1317 #: build/C/man3/getaddrinfo_a.3:314 build/C/man3/getnameinfo.3:243
1318 #: build/C/man3/getprotoent_r.3:135 build/C/man3/getservent_r.3:134
1319 #: build/C/man5/hosts.5:107 build/C/man3/inet.3:262
1320 #: build/C/man3/inet_net_pton.3:247 build/C/man3/inet_ntop.3:115
1321 #: build/C/man3/inet_pton.3:156 build/C/man5/nss.5:100 build/C/man7/unix.7:608
1322 #, no-wrap
1323 msgid "EXAMPLE"
1324 msgstr "例"
1325
1326 #. type: Plain text
1327 #: build/C/man3/cmsg.3:165
1328 msgid ""
1329 "This code looks for the B<IP_TTL> option in a received ancillary buffer:"
1330 msgstr ""
1331 "次のコードは、受け取った補助バッファーから B<IP_TTL> オプションを探すものであ"
1332 "る。"
1333
1334 #. type: Plain text
1335 #: build/C/man3/cmsg.3:172
1336 #, no-wrap
1337 msgid ""
1338 "struct msghdr msgh;\n"
1339 "struct cmsghdr *cmsg;\n"
1340 "int *ttlptr;\n"
1341 "int received_ttl;\n"
1342 msgstr ""
1343 "struct msghdr msgh;\n"
1344 "struct cmsghdr *cmsg;\n"
1345 "int *ttlptr;\n"
1346 "int received_ttl;\n"
1347
1348 #. type: Plain text
1349 #: build/C/man3/cmsg.3:189
1350 #, no-wrap
1351 msgid ""
1352 "/* Receive auxiliary data in msgh */\n"
1353 "for (cmsg = CMSG_FIRSTHDR(&msgh); cmsg != NULL;\n"
1354 "        cmsg = CMSG_NXTHDR(&msgh,cmsg)) {\n"
1355 "    if (cmsg-E<gt>cmsg_level == IPPROTO_IP\n"
1356 "            && cmsg-E<gt>cmsg_type == IP_TTL) {\n"
1357 "        ttlptr = (int *) CMSG_DATA(cmsg);\n"
1358 "        received_ttl = *ttlptr;\n"
1359 "        break;\n"
1360 "    }\n"
1361 "}\n"
1362 "if (cmsg == NULL) {\n"
1363 "    /*\n"
1364 "     * Error: IP_TTL not enabled or small buffer\n"
1365 "     * or I/O error.\n"
1366 "     */\n"
1367 "}\n"
1368 msgstr ""
1369 "/* Receive auxiliary data in msgh */\n"
1370 "for (cmsg = CMSG_FIRSTHDR(&msgh); cmsg != NULL;\n"
1371 "        cmsg = CMSG_NXTHDR(&msgh,cmsg)) {\n"
1372 "    if (cmsg-E<gt>cmsg_level == IPPROTO_IP\n"
1373 "            && cmsg-E<gt>cmsg_type == IP_TTL) {\n"
1374 "        ttlptr = (int *) CMSG_DATA(cmsg);\n"
1375 "        received_ttl = *ttlptr;\n"
1376 "        break;\n"
1377 "    }\n"
1378 "}\n"
1379 "if (cmsg == NULL) {\n"
1380 "    /*\n"
1381 "     * Error: IP_TTL not enabled or small buffer\n"
1382 "     * or I/O error.\n"
1383 "     */\n"
1384 "}\n"
1385
1386 #. type: Plain text
1387 #: build/C/man3/cmsg.3:195
1388 msgid ""
1389 "The code below passes an array of file descriptors over a UNIX domain socket "
1390 "using B<SCM_RIGHTS>:"
1391 msgstr ""
1392 "以下のコードは、 B<SCM_RIGHTS> を使い、ファイルディスクリプターの配列を UNIX "
1393 "ドメインソケットを通して送るものである。"
1394
1395 #. type: Plain text
1396 #: build/C/man3/cmsg.3:208
1397 #, no-wrap
1398 msgid ""
1399 "struct msghdr msg = {0};\n"
1400 "struct cmsghdr *cmsg;\n"
1401 "int myfds[NUM_FD]; /* Contains the file descriptors to pass. */\n"
1402 "union {\n"
1403 "    /* ancillary data buffer, wrapped in a union in order to ensure it is\n"
1404 "       suitably aligned */\n"
1405 "    char buf[CMSG_SPACE(sizeof myfds)];\n"
1406 "    struct cmsghdr align;\n"
1407 "} u;\n"
1408 "int *fdptr;\n"
1409 msgstr ""
1410 "struct msghdr msg = {0};\n"
1411 "struct cmsghdr *cmsg;\n"
1412 "int myfds[NUM_FD]; /* Contains the file descriptors to pass. */\n"
1413 "union {\n"
1414 "    /* ancillary data buffer, wrapped in a union in order to ensure it is\n"
1415 "       suitably aligned */\n"
1416 "    char buf[CMSG_SPACE(sizeof myfds)];\n"
1417 "    struct cmsghdr align;\n"
1418 "} u;\n"
1419 "int *fdptr;\n"
1420
1421 #. type: Plain text
1422 #: build/C/man3/cmsg.3:220
1423 #, no-wrap
1424 msgid ""
1425 "msg.msg_control = u.buf;\n"
1426 "msg.msg_controllen = sizeof u.buf;\n"
1427 "cmsg = CMSG_FIRSTHDR(&msg);\n"
1428 "cmsg-E<gt>cmsg_level = SOL_SOCKET;\n"
1429 "cmsg-E<gt>cmsg_type = SCM_RIGHTS;\n"
1430 "cmsg-E<gt>cmsg_len = CMSG_LEN(sizeof(int) * NUM_FD);\n"
1431 "/* Initialize the payload: */\n"
1432 "fdptr = (int *) CMSG_DATA(cmsg);\n"
1433 "memcpy(fdptr, myfds, NUM_FD * sizeof(int));\n"
1434 "/* Sum of the length of all control messages in the buffer: */\n"
1435 "msg.msg_controllen = cmsg-E<gt>cmsg_len;\n"
1436 msgstr ""
1437 "msg.msg_control = u.buf;\n"
1438 "msg.msg_controllen = sizeof u.buf;\n"
1439 "cmsg = CMSG_FIRSTHDR(&msg);\n"
1440 "cmsg-E<gt>cmsg_level = SOL_SOCKET;\n"
1441 "cmsg-E<gt>cmsg_type = SCM_RIGHTS;\n"
1442 "cmsg-E<gt>cmsg_len = CMSG_LEN(sizeof(int) * NUM_FD);\n"
1443 "/* Initialize the payload: */\n"
1444 "fdptr = (int *) CMSG_DATA(cmsg);\n"
1445 "memcpy(fdptr, myfds, NUM_FD * sizeof(int));\n"
1446 "/* Sum of the length of all control messages in the buffer: */\n"
1447 "msg.msg_controllen = cmsg-E<gt>cmsg_len;\n"
1448
1449 #. type: Plain text
1450 #: build/C/man3/cmsg.3:225
1451 msgid "B<recvmsg>(2), B<sendmsg>(2)"
1452 msgstr "B<recvmsg>(2), B<sendmsg>(2)"
1453
1454 #. type: Plain text
1455 #: build/C/man3/cmsg.3:227
1456 msgid "RFC\\ 2292"
1457 msgstr "RFC\\ 2292"
1458
1459 #. type: TH
1460 #: build/C/man7/ddp.7:12
1461 #, no-wrap
1462 msgid "DDP"
1463 msgstr "DDP"
1464
1465 #. type: TH
1466 #: build/C/man7/ddp.7:12
1467 #, no-wrap
1468 msgid "2008-11-20"
1469 msgstr "2008-11-20"
1470
1471 #. type: Plain text
1472 #: build/C/man7/ddp.7:15
1473 msgid "ddp - Linux AppleTalk protocol implementation"
1474 msgstr "ddp - Linux での AppleTalk プロトコルの実装"
1475
1476 #. type: Plain text
1477 #: build/C/man7/ddp.7:19
1478 msgid "B<#include E<lt>netatalk/at.hE<gt>>"
1479 msgstr "B<#include E<lt>netatalk/at.hE<gt>>"
1480
1481 #. type: Plain text
1482 #: build/C/man7/ddp.7:21
1483 msgid "I<ddp_socket>B< = socket(AF_APPLETALK, SOCK_DGRAM, 0);>"
1484 msgstr "I<ddp_socket>B< = socket(AF_APPLETALK, SOCK_DGRAM, 0);>"
1485
1486 #. type: Plain text
1487 #: build/C/man7/ddp.7:23
1488 msgid "I<raw_socket>B< = socket(AF_APPLETALK, SOCK_RAW, >I<protocol>B<);>"
1489 msgstr "I<raw_socket>B< = socket(AF_APPLETALK, SOCK_RAW, >I<protocol>B<);>"
1490
1491 #. type: Plain text
1492 #: build/C/man7/ddp.7:34
1493 msgid ""
1494 "Linux implements the AppleTalk protocols described in I<Inside AppleTalk>.  "
1495 "Only the DDP layer and AARP are present in the kernel.  They are designed to "
1496 "be used via the B<netatalk> protocol libraries.  This page documents the "
1497 "interface for those who wish or need to use the DDP layer directly."
1498 msgstr ""
1499 "Linux は I<Inside AppleTalk> に記述されている AppleTalk プロトコルを実装して"
1500 "いる。 カーネルにあるのは DDP 層と AARP だけである。これらは B<netatalk> プロ"
1501 "トコルライブラリを通して利用されるように設計されている。 このページは DDP 層"
1502 "を直接利用したいユーザーのために、 インターフェースを記述したものである。"
1503
1504 #. type: Plain text
1505 #: build/C/man7/ddp.7:39
1506 msgid ""
1507 "The communication between AppleTalk and the user program works using a BSD-"
1508 "compatible socket interface.  For more information on sockets, see "
1509 "B<socket>(7)."
1510 msgstr ""
1511 "AppleTalk とユーザープログラムとの通信には、 BSD 互換のソケットインターフェー"
1512 "スを利用する。 ソケットに関するより詳しい情報は B<socket>(7)  を見よ。"
1513
1514 #. type: Plain text
1515 #: build/C/man7/ddp.7:60
1516 msgid ""
1517 "An AppleTalk socket is created by calling the B<socket>(2)  function with a "
1518 "B<AF_APPLETALK> socket family argument.  Valid socket types are "
1519 "B<SOCK_DGRAM> to open a B<ddp> socket or B<SOCK_RAW> to open a B<raw> "
1520 "socket.  I<protocol> is the AppleTalk protocol to be received or sent.  For "
1521 "B<SOCK_RAW> you must specify B<ATPROTO_DDP>."
1522 msgstr ""
1523 "AppleTalk ソケットは、 ソケットファミリーの引数に B<AF_APPLETALK> を指定して "
1524 "B<socket>(2)  関数を呼び出すことによって生成される。指定できるソケットタイプ"
1525 "は、 B<ddp> ソケットをオープンする場合には B<SOCK_DGRAM>、 B<raw> ソケットを"
1526 "オープンする場合には B<SOCK_RAW> である。 I<protocol> は送受信される "
1527 "AppleTalk プロトコルである。 ソケットタイプに B<SOCK_RAW> を指定した場合は、"
1528 "プロトコルに B<ATPROTO_DDP> を指定しなければならない。"
1529
1530 #. type: Plain text
1531 #: build/C/man7/ddp.7:65
1532 msgid ""
1533 "Raw sockets may be opened only by a process with effective user ID 0 or when "
1534 "the process has the B<CAP_NET_RAW> capability."
1535 msgstr ""
1536 "raw ソケットは実効ユーザー ID が 0 のプロセスか、 B<CAT_NEW_RAW> 権限を持った"
1537 "プロセスでないとオープンできない。"
1538
1539 #. type: SS
1540 #: build/C/man7/ddp.7:65 build/C/man7/ip.7:123 build/C/man7/ipv6.7:142
1541 #: build/C/man7/raw.7:93 build/C/man7/udp.7:98 build/C/man7/udplite.7:58
1542 #: build/C/man7/unix.7:57
1543 #, no-wrap
1544 msgid "Address format"
1545 msgstr "アドレスのフォーマット"
1546
1547 #. type: Plain text
1548 #: build/C/man7/ddp.7:68
1549 msgid ""
1550 "An AppleTalk socket address is defined as a combination of a network number, "
1551 "a node number, and a port number."
1552 msgstr ""
1553 "AppleTalk ソケットアドレスはネットワーク番号、 ノード番号、 ポート番号の組み"
1554 "合わせで定義される。"
1555
1556 #. type: Plain text
1557 #: build/C/man7/ddp.7:75
1558 #, no-wrap
1559 msgid ""
1560 "struct at_addr {\n"
1561 "    unsigned short s_net;\n"
1562 "    unsigned char  s_node;\n"
1563 "};\n"
1564 msgstr ""
1565 "struct at_addr {\n"
1566 "    unsigned short s_net;\n"
1567 "    unsigned char  s_node;\n"
1568 "};\n"
1569
1570 #. type: Plain text
1571 #: build/C/man7/ddp.7:81
1572 #, no-wrap
1573 msgid ""
1574 "struct sockaddr_atalk {\n"
1575 "    sa_family_t    sat_family;    /* address family */\n"
1576 "    unsigned char  sat_port;      /* port */\n"
1577 "    struct at_addr sat_addr;      /* net/node */\n"
1578 "};\n"
1579 msgstr ""
1580 "struct sockaddr_atalk {\n"
1581 "    sa_family_t    sat_family;    /* address family */\n"
1582 "    unsigned char  sat_port;      /* port */\n"
1583 "    struct at_addr sat_addr;      /* net/node */\n"
1584 "};\n"
1585
1586 #.  FIXME . this doesn't make sense [johnl]
1587 #. type: Plain text
1588 #: build/C/man7/ddp.7:120
1589 msgid ""
1590 "I<sat_family> is always set to B<AF_APPLETALK>.  I<sat_port> contains the "
1591 "port.  The port numbers below 129 are known as I<reserved ports>.  Only "
1592 "processes with the effective user ID 0 or the B<CAP_NET_BIND_SERVICE> "
1593 "capability may B<bind>(2)  to these sockets.  I<sat_addr> is the host "
1594 "address.  The I<net> member of I<struct at_addr> contains the host network "
1595 "in network byte order.  The value of B<AT_ANYNET> is a wildcard and also "
1596 "implies \\(lqthis network.\\(rq The I<node> member of I<struct at_addr> "
1597 "contains the host node number.  The value of B<AT_ANYNODE> is a wildcard and "
1598 "also implies \\(lqthis node.\\(rq The value of B<ATADDR_BCAST> is a link "
1599 "local broadcast address."
1600 msgstr ""
1601 "I<sat_family> は常に B<AF_APPLETALK> に設定する。 I<sat_port> はポートを与え"
1602 "る。ポート番号が 129 以下のポートは 「予約ポート (reserved port)」 と呼ばれ"
1603 "る。実効ユーザー ID が 0 のプロセスか、 B<CAP_NET_BIND_SERVICE> 権限を持つプ"
1604 "ロセスだけが、このようなソケットを B<bind>(2)  できる。 I<sat_addr> はホスト"
1605 "アドレスである。 I<struct at_addr> のメンバー I<s_net> にはホストのネットワー"
1606 "クをネットワークバイトオーダーで与える。値 B<AT_ANYNET> はワイルドカードで、"
1607 "「このネットワーク」も暗黙のうちに含まれる。 I<struct at_addr> のメンバー "
1608 "I<s_node> にはホストのノード番号を与える。値 B<AT_ANYNODE> はワイルドカード"
1609 "で、「このノード」も暗黙のうちに含まれる。値 B<ATADDR_BCAST> はローカルなブ"
1610 "ロードキャストアドレスである。"
1611
1612 #. type: SS
1613 #: build/C/man7/ddp.7:120 build/C/man7/ip.7:224 build/C/man7/ipv6.7:192
1614 #: build/C/man7/packet.7:180 build/C/man7/raw.7:109 build/C/man7/tcp.7:889
1615 #: build/C/man7/udp.7:178 build/C/man7/udplite.7:67 build/C/man7/unix.7:220
1616 #: build/C/man7/x25.7:72
1617 #, no-wrap
1618 msgid "Socket options"
1619 msgstr "ソケットオプション"
1620
1621 #. type: Plain text
1622 #: build/C/man7/ddp.7:122
1623 msgid "No protocol-specific socket options are supported."
1624 msgstr "プロトコル固有のソケットオプションはない。"
1625
1626 #. type: Plain text
1627 #: build/C/man7/ddp.7:128
1628 msgid ""
1629 "IP supports a set of I</proc> interfaces to configure some global AppleTalk "
1630 "parameters.  The parameters can be accessed by reading or writing files in "
1631 "the directory I</proc/sys/net/atalk/>."
1632 msgstr ""
1633 "Appletalk のグローバルパラメーターのいくつかは、 I</proc> インターフェースを"
1634 "通して設定することができる。 これらのパラメーターには、 I</proc/sys/net/"
1635 "atalk/> ディレクトリ内のファイルの読み書きでアクセスできる。"
1636
1637 #. type: TP
1638 #: build/C/man7/ddp.7:128
1639 #, no-wrap
1640 msgid "I<aarp-expiry-time>"
1641 msgstr "I<aarp-expiry-time>"
1642
1643 #. type: Plain text
1644 #: build/C/man7/ddp.7:131
1645 msgid "The time interval (in seconds) before an AARP cache entry expires."
1646 msgstr "AARP キャッシュエントリーを破棄するまでのタイムインターバル (秒単位)。"
1647
1648 #. type: TP
1649 #: build/C/man7/ddp.7:131
1650 #, no-wrap
1651 msgid "I<aarp-resolve-time>"
1652 msgstr "I<aarp-resolve-time>"
1653
1654 #. type: Plain text
1655 #: build/C/man7/ddp.7:134
1656 msgid "The time interval (in seconds) before an AARP cache entry is resolved."
1657 msgstr ""
1658 "AARP キャッシュエントリーが解決されるまでのタイムインターバル (秒単位)。"
1659
1660 #. type: TP
1661 #: build/C/man7/ddp.7:134
1662 #, no-wrap
1663 msgid "I<aarp-retransmit-limit>"
1664 msgstr "I<aarp-retransmit-limit>"
1665
1666 #. type: Plain text
1667 #: build/C/man7/ddp.7:138
1668 msgid ""
1669 "The number of retransmissions of an AARP query before the node is declared "
1670 "dead."
1671 msgstr ""
1672 "AARP クエリーの最大再送信回数。この回数を越えると、 そのノードは dead である"
1673 "とみなされる。"
1674
1675 #. type: TP
1676 #: build/C/man7/ddp.7:138
1677 #, no-wrap
1678 msgid "I<aarp-tick-time>"
1679 msgstr "I<aarp-tick-time>"
1680
1681 #. type: Plain text
1682 #: build/C/man7/ddp.7:141
1683 msgid "The timer rate (in seconds) for the timer driving AARP."
1684 msgstr "タイマー動作する AARP のタイマーレート (秒単位)"
1685
1686 #. type: Plain text
1687 #: build/C/man7/ddp.7:144
1688 msgid ""
1689 "The default values match the specification and should never need to be "
1690 "changed."
1691 msgstr ""
1692 "デフォルトの値で仕様にマッチしているので、 変更する必要は全くないはずである。"
1693
1694 #.  FIXME . Add a section about multicasting
1695 #. type: Plain text
1696 #: build/C/man7/ddp.7:149
1697 msgid "All ioctls described in B<socket>(7)  apply to DDP."
1698 msgstr "B<socket>(7)  に記述されているすべての ioctl が DDP にも適用される。"
1699
1700 #. type: SH
1701 #: build/C/man7/ddp.7:149 build/C/man3/gethostbyname.3:292
1702 #: build/C/man3/getnetent_r.3:129 build/C/man2/getpeername.2:73
1703 #: build/C/man3/getprotoent_r.3:119 build/C/man3/getservent_r.3:118
1704 #: build/C/man3/inet_net_pton.3:145 build/C/man3/inet_ntop.3:91
1705 #: build/C/man7/ip.7:1092 build/C/man7/ipv6.7:351 build/C/man7/packet.7:496
1706 #: build/C/man7/raw.7:144 build/C/man2/shutdown.2:74 build/C/man7/tcp.7:1226
1707 #: build/C/man7/udp.7:241 build/C/man7/udplite.7:121 build/C/man7/unix.7:405
1708 #, no-wrap
1709 msgid "ERRORS"
1710 msgstr "エラー"
1711
1712 #. type: TP
1713 #: build/C/man7/ddp.7:153 build/C/man7/ip.7:1096 build/C/man7/raw.7:145
1714 #, no-wrap
1715 msgid "B<EACCES>"
1716 msgstr "B<EACCES>"
1717
1718 #. type: Plain text
1719 #: build/C/man7/ddp.7:160
1720 msgid ""
1721 "The user tried to execute an operation without the necessary permissions.  "
1722 "These include sending to a broadcast address without having the broadcast "
1723 "flag set, and trying to bind to a reserved port without effective user ID 0 "
1724 "or B<CAP_NET_BIND_SERVICE>."
1725 msgstr ""
1726 "ユーザーが行おうとした操作に必要な権限を持っていない。 broadcast フラグをセッ"
1727 "トせずにブロードキャストアドレスへ送信を行おうとした、 実効ユーザー ID が 0 "
1728 "でなく、 B<CAP_NET_BIND_SERVICE> 権限のないプロセスで特権ポートをバインドしよ"
1729 "うとした、などが考えられる。"
1730
1731 #. type: TP
1732 #: build/C/man7/ddp.7:160 build/C/man7/ip.7:1112 build/C/man7/unix.7:406
1733 #, no-wrap
1734 msgid "B<EADDRINUSE>"
1735 msgstr "B<EADDRINUSE>"
1736
1737 #. type: Plain text
1738 #: build/C/man7/ddp.7:163 build/C/man7/ip.7:1115
1739 msgid "Tried to bind to an address already in use."
1740 msgstr "既に使用されているアドレスにバインドしようとした。"
1741
1742 #. type: TP
1743 #: build/C/man7/ddp.7:163 build/C/man7/ip.7:1115 build/C/man7/packet.7:497
1744 #, no-wrap
1745 msgid "B<EADDRNOTAVAIL>"
1746 msgstr "B<EADDRNOTAVAIL>"
1747
1748 #. type: Plain text
1749 #: build/C/man7/ddp.7:167 build/C/man7/ip.7:1119
1750 msgid ""
1751 "A nonexistent interface was requested or the requested source address was "
1752 "not local."
1753 msgstr ""
1754 "存在しないインターフェースが要求された。または 要求されたソースアドレスがロー"
1755 "カルでない。"
1756
1757 #. type: TP
1758 #: build/C/man7/ddp.7:167 build/C/man7/ip.7:1119
1759 #, no-wrap
1760 msgid "B<EAGAIN>"
1761 msgstr "B<EAGAIN>"
1762
1763 #. type: Plain text
1764 #: build/C/man7/ddp.7:170 build/C/man7/ip.7:1122
1765 msgid "Operation on a nonblocking socket would block."
1766 msgstr "非ブロッキングソケットに対してブロックする操作を行った。"
1767
1768 #. type: TP
1769 #: build/C/man7/ddp.7:170 build/C/man7/ip.7:1122
1770 #, no-wrap
1771 msgid "B<EALREADY>"
1772 msgstr "B<EALREADY>"
1773
1774 #. type: Plain text
1775 #: build/C/man7/ddp.7:173
1776 msgid "A connection operation on a nonblocking socket is already in progress."
1777 msgstr "非ブロッキングソケットに対する接続操作が既に実行中である。"
1778
1779 #. type: TP
1780 #: build/C/man7/ddp.7:173 build/C/man7/ip.7:1125
1781 #, no-wrap
1782 msgid "B<ECONNABORTED>"
1783 msgstr "B<ECONNABORTED>"
1784
1785 #. type: Plain text
1786 #: build/C/man7/ddp.7:177 build/C/man7/ip.7:1129
1787 msgid "A connection was closed during an B<accept>(2)."
1788 msgstr "B<accept>(2)  の途中で接続がクローズされた。"
1789
1790 #. type: TP
1791 #: build/C/man7/ddp.7:177 build/C/man7/ip.7:1129
1792 #, no-wrap
1793 msgid "B<EHOSTUNREACH>"
1794 msgstr "B<EHOSTUNREACH>"
1795
1796 #. type: Plain text
1797 #: build/C/man7/ddp.7:180
1798 msgid "No routing table entry matches the destination address."
1799 msgstr "行き先アドレスにマッチするエントリーがルーティングテーブルにない。"
1800
1801 #. type: TP
1802 #: build/C/man7/ddp.7:180 build/C/man2/getpeername.2:85 build/C/man7/ip.7:1134
1803 #: build/C/man7/packet.7:503 build/C/man7/raw.7:152 build/C/man2/shutdown.2:79
1804 #: build/C/man7/unix.7:422
1805 #, no-wrap
1806 msgid "B<EINVAL>"
1807 msgstr "B<EINVAL>"
1808
1809 #. type: Plain text
1810 #: build/C/man7/ddp.7:183
1811 msgid "Invalid argument passed."
1812 msgstr "渡した引数が不正。"
1813
1814 #. type: TP
1815 #: build/C/man7/ddp.7:183 build/C/man7/ip.7:1140 build/C/man7/unix.7:431
1816 #, no-wrap
1817 msgid "B<EISCONN>"
1818 msgstr "B<EISCONN>"
1819
1820 #. type: Plain text
1821 #: build/C/man7/ddp.7:187 build/C/man7/ip.7:1144
1822 msgid "B<connect>(2)  was called on an already connected socket."
1823 msgstr "接続済みのソケットに対して B<connect>(2)  が呼ばれた。"
1824
1825 #. type: TP
1826 #: build/C/man7/ddp.7:187 build/C/man3/inet_net_pton.3:151
1827 #: build/C/man7/ip.7:1144 build/C/man7/packet.7:506 build/C/man7/raw.7:155
1828 #, no-wrap
1829 msgid "B<EMSGSIZE>"
1830 msgstr "B<EMSGSIZE>"
1831
1832 #. type: Plain text
1833 #: build/C/man7/ddp.7:190
1834 msgid "Datagram is bigger than the DDP MTU."
1835 msgstr "データグラムが DDP MTU より大きい。"
1836
1837 #. type: TP
1838 #: build/C/man7/ddp.7:190 build/C/man7/ipv6.7:352 build/C/man7/packet.7:515
1839 #, no-wrap
1840 msgid "B<ENODEV>"
1841 msgstr "B<ENODEV>"
1842
1843 #. type: Plain text
1844 #: build/C/man7/ddp.7:193
1845 msgid "Network device not available or not capable of sending IP."
1846 msgstr "ネットワークデバイスがない。あるいは IP を送ることができない。"
1847
1848 #. type: TP
1849 #: build/C/man7/ddp.7:193 build/C/man3/getnetent_r.3:130
1850 #: build/C/man3/getprotoent_r.3:120 build/C/man3/getservent_r.3:119
1851 #: build/C/man3/inet_net_pton.3:154 build/C/man7/ip.7:1152
1852 #: build/C/man7/packet.7:518 build/C/man7/unix.7:436
1853 #, no-wrap
1854 msgid "B<ENOENT>"
1855 msgstr "B<ENOENT>"
1856
1857 #. type: Plain text
1858 #: build/C/man7/ddp.7:197 build/C/man7/ip.7:1156
1859 msgid "B<SIOCGSTAMP> was called on a socket where no packet arrived."
1860 msgstr "パケットが到着していないソケットに対して B<SIOCGSTAMP> が呼ばれた。"
1861
1862 #. type: TP
1863 #: build/C/man7/ddp.7:197
1864 #, no-wrap
1865 msgid "B<ENOMEM> and B<ENOBUFS>"
1866 msgstr "B<ENOMEM> と B<ENOBUFS>"
1867
1868 #. type: Plain text
1869 #: build/C/man7/ddp.7:200
1870 msgid "Not enough memory available."
1871 msgstr "メモリーが足りない。"
1872
1873 #. type: TP
1874 #: build/C/man7/ddp.7:200 build/C/man7/ip.7:1156
1875 #, no-wrap
1876 msgid "B<ENOPKG>"
1877 msgstr "B<ENOPKG>"
1878
1879 #. type: Plain text
1880 #: build/C/man7/ddp.7:203 build/C/man7/ip.7:1159
1881 msgid "A kernel subsystem was not configured."
1882 msgstr "カーネルサブシステムが設定されていない。"
1883
1884 #. type: TP
1885 #: build/C/man7/ddp.7:203 build/C/man7/ip.7:1159
1886 #, no-wrap
1887 msgid "B<ENOPROTOOPT> and B<EOPNOTSUPP>"
1888 msgstr "B<ENOPROTOOPT> と B<EOPNOTSUPP>"
1889
1890 #. type: Plain text
1891 #: build/C/man7/ddp.7:206 build/C/man7/ip.7:1162
1892 msgid "Invalid socket option passed."
1893 msgstr "無効なソケットオプションが渡された。"
1894
1895 #. type: TP
1896 #: build/C/man7/ddp.7:206 build/C/man2/getpeername.2:93 build/C/man7/ip.7:1162
1897 #: build/C/man7/packet.7:521 build/C/man2/shutdown.2:84
1898 #: build/C/man7/unix.7:444
1899 #, no-wrap
1900 msgid "B<ENOTCONN>"
1901 msgstr "B<ENOTCONN>"
1902
1903 #. type: Plain text
1904 #: build/C/man7/ddp.7:210 build/C/man7/ip.7:1166
1905 msgid ""
1906 "The operation is defined only on a connected socket, but the socket wasn't "
1907 "connected."
1908 msgstr ""
1909 "接続されていないソケットに対して、 接続状態でしか定義されていない操作を行おう"
1910 "とした。"
1911
1912 #. type: TP
1913 #: build/C/man7/ddp.7:210 build/C/man7/ip.7:1166 build/C/man7/packet.7:527
1914 #: build/C/man7/raw.7:166 build/C/man7/unix.7:451
1915 #, no-wrap
1916 msgid "B<EPERM>"
1917 msgstr "B<EPERM>"
1918
1919 #. type: Plain text
1920 #: build/C/man7/ddp.7:215
1921 msgid ""
1922 "User doesn't have permission to set high priority, make a configuration "
1923 "change, or send signals to the requested process or group."
1924 msgstr ""
1925 "高い優先度に設定したり、設定を変更したり、 指定したプロセスやグループにシグナ"
1926 "ルを送るのに必要な権限を ユーザーが持っていない。"
1927
1928 #. type: TP
1929 #: build/C/man7/ddp.7:215 build/C/man7/ip.7:1170 build/C/man7/tcp.7:1233
1930 #: build/C/man7/unix.7:455
1931 #, no-wrap
1932 msgid "B<EPIPE>"
1933 msgstr "B<EPIPE>"
1934
1935 #. type: Plain text
1936 #: build/C/man7/ddp.7:218 build/C/man7/ip.7:1173
1937 msgid "The connection was unexpectedly closed or shut down by the other end."
1938 msgstr ""
1939 "接続が接続相手によって、予期しないやり方でクローズまたはシャットダウンされ"
1940 "た。"
1941
1942 #. type: TP
1943 #: build/C/man7/ddp.7:218 build/C/man7/ip.7:1173 build/C/man7/unix.7:477
1944 #, no-wrap
1945 msgid "B<ESOCKTNOSUPPORT>"
1946 msgstr "B<ESOCKTNOSUPPORT>"
1947
1948 #. type: Plain text
1949 #: build/C/man7/ddp.7:221
1950 msgid "The socket was unconfigured, or an unknown socket type was requested."
1951 msgstr "ソケットが設定されていない。または未知のソケットタイプが要求された。"
1952
1953 #. type: Plain text
1954 #: build/C/man7/ddp.7:226
1955 msgid ""
1956 "AppleTalk is supported by Linux 2.0 or higher.  The I</proc> interfaces "
1957 "exist since Linux 2.2."
1958 msgstr ""
1959 "AppleTalk は Linux 2.0 以降でサポートされている。 I</proc> インターフェース"
1960 "は Linux 2.2 以降に存在する。"
1961
1962 #. type: Plain text
1963 #: build/C/man7/ddp.7:232
1964 msgid ""
1965 "Be very careful with the B<SO_BROADCAST> option - it is not privileged in "
1966 "Linux.  It is easy to overload the network with careless sending to "
1967 "broadcast addresses."
1968 msgstr ""
1969 "B<SO_BROADCAST> オプションを用いる時には慎重の上にも慎重になってほしい。 "
1970 "Linux ではこれに特権を必要としない。 不注意にブロードキャストアドレスに送信を"
1971 "行うと、 ネットワークの状態が簡単に変更されてしまう。"
1972
1973 #. type: SS
1974 #: build/C/man7/ddp.7:232 build/C/man7/ip.7:1232 build/C/man7/packet.7:569
1975 #, no-wrap
1976 msgid "Compatibility"
1977 msgstr "移植性"
1978
1979 #. type: Plain text
1980 #: build/C/man7/ddp.7:239
1981 msgid ""
1982 "The basic AppleTalk socket interface is compatible with B<netatalk> on BSD-"
1983 "derived systems.  Many BSD systems fail to check B<SO_BROADCAST> when "
1984 "sending broadcast frames; this can lead to compatibility problems."
1985 msgstr ""
1986 "基本的な Appletalk ソケットインターフェースは BSD 由来のシステムにおける "
1987 "B<netatalk> と互換性がある。多くの BSD システムでは、 ブロードキャストフレー"
1988 "ムを送信しようとしたときの B<SO_BROADCAST> のチェックに失敗する。これは互換性"
1989 "の問題となるかもしれない。"
1990
1991 #. type: Plain text
1992 #: build/C/man7/ddp.7:244
1993 msgid ""
1994 "The raw socket mode is unique to Linux and exists to support the alternative "
1995 "CAP package and AppleTalk monitoring tools more easily."
1996 msgstr ""
1997 "raw ソケットモードは Linux 独特のもので、もう一方の実装である CAP パッケージ"
1998 "や、 Appletalk モニタツールをより簡単に実装できるようになる。"
1999
2000 #. type: Plain text
2001 #: build/C/man7/ddp.7:246 build/C/man7/ip.7:1247
2002 msgid "There are too many inconsistent error values."
2003 msgstr "エラーの値がまったく首尾一貫していない。"
2004
2005 #. type: Plain text
2006 #: build/C/man7/ddp.7:249
2007 msgid ""
2008 "The ioctls used to configure routing tables, devices, AARP tables and other "
2009 "devices are not yet described."
2010 msgstr ""
2011 "ルーティングテーブル、 デバイス、 AARP テーブル、 その他のデバイスを設定する"
2012 "ために用いられる ioctl がまだ記述されていない。"
2013
2014 #. type: Plain text
2015 #: build/C/man7/ddp.7:254
2016 msgid "B<recvmsg>(2), B<sendmsg>(2), B<capabilities>(7), B<socket>(7)"
2017 msgstr "B<recvmsg>(2), B<sendmsg>(2), B<capabilities>(7), B<socket>(7)"
2018
2019 #. type: TH
2020 #: build/C/man3/endian.3:28
2021 #, no-wrap
2022 msgid "ENDIAN"
2023 msgstr "ENDIAN"
2024
2025 #. type: TH
2026 #: build/C/man3/endian.3:28 build/C/man3/getnetent_r.3:26
2027 #: build/C/man3/getprotoent_r.3:26 build/C/man3/getservent_r.3:26
2028 #, no-wrap
2029 msgid "2010-09-10"
2030 msgstr "2010-09-10"
2031
2032 #. type: Plain text
2033 #: build/C/man3/endian.3:33
2034 msgid ""
2035 "htobe16, htole16, be16toh, le16toh, htobe32, htole32, be32toh, le32toh, "
2036 "htobe64, htole64, be64toh, le64toh - convert values between host and big-/"
2037 "little-endian byte order"
2038 msgstr ""
2039 "htobe16, htole16, be16toh, le16toh, htobe32, htole32, be32toh,\n"
2040 "le32toh, htobe64, htole64, be64toh, le64toh - ホストバイトオーダーと\n"
2041 "ビッグ/リトルエンディアンバイトオーダーの間で値の変換を行う"
2042
2043 #. type: Plain text
2044 #: build/C/man3/endian.3:37
2045 #, no-wrap
2046 msgid ""
2047 "B<#define _BSD_SOURCE>             /* See feature_test_macros(7) */\n"
2048 "B<#include E<lt>endian.hE<gt>>\n"
2049 msgstr ""
2050 "B<#define _BSD_SOURCE>             /* feature_test_macros(7) 参照 */\n"
2051 "B<#include E<lt>endian.hE<gt>>\n"
2052
2053 #. type: Plain text
2054 #: build/C/man3/endian.3:42
2055 #, no-wrap
2056 msgid ""
2057 "B<uint16_t htobe16(uint16_t >I<host_16bits>B<);>\n"
2058 "B<uint16_t htole16(uint16_t >I<host_16bits>B<);>\n"
2059 "B<uint16_t be16toh(uint16_t >I<big_endian_16bits>B<);>\n"
2060 "B<uint16_t le16toh(uint16_t >I<little_endian_16bits>B<);>\n"
2061 msgstr ""
2062 "B<uint16_t htobe16(uint16_t >I<host_16bits>B<);>\n"
2063 "B<uint16_t htole16(uint16_t >I<host_16bits>B<);>\n"
2064 "B<uint16_t be16toh(uint16_t >I<big_endian_16bits>B<);>\n"
2065 "B<uint16_t le16toh(uint16_t >I<little_endian_16bits>B<);>\n"
2066
2067 #. type: Plain text
2068 #: build/C/man3/endian.3:47
2069 #, no-wrap
2070 msgid ""
2071 "B<uint32_t htobe32(uint32_t >I<host_32bits>B<);>\n"
2072 "B<uint32_t htole32(uint32_t >I<host_32bits>B<);>\n"
2073 "B<uint32_t be32toh(uint32_t >I<big_endian_32bits>B<);>\n"
2074 "B<uint32_t le32toh(uint32_t >I<little_endian_32bits>B<);>\n"
2075 msgstr ""
2076 "B<uint32_t htobe32(uint32_t >I<host_32bits>B<);>\n"
2077 "B<uint32_t htole32(uint32_t >I<host_32bits>B<);>\n"
2078 "B<uint32_t be32toh(uint32_t >I<big_endian_32bits>B<);>\n"
2079 "B<uint32_t le32toh(uint32_t >I<little_endian_32bits>B<);>\n"
2080
2081 #. type: Plain text
2082 #: build/C/man3/endian.3:52
2083 #, no-wrap
2084 msgid ""
2085 "B<uint64_t htobe64(uint64_t >I<host_64bits>B<);>\n"
2086 "B<uint64_t htole64(uint64_t >I<host_64bits>B<);>\n"
2087 "B<uint64_t be64toh(uint64_t >I<big_endian_64bits>B<);>\n"
2088 "B<uint64_t le64toh(uint64_t >I<little_endian_64bits>B<);>\n"
2089 msgstr ""
2090 "B<uint64_t htobe64(uint64_t >I<host_64bits>B<);>\n"
2091 "B<uint64_t htole64(uint64_t >I<host_64bits>B<);>\n"
2092 "B<uint64_t be64toh(uint64_t >I<big_endian_64bits>B<);>\n"
2093 "B<uint64_t le64toh(uint64_t >I<little_endian_64bits>B<);>\n"
2094
2095 #. type: Plain text
2096 #: build/C/man3/endian.3:57
2097 msgid ""
2098 "These functions convert the byte encoding of integer values from the byte "
2099 "order that the current CPU (the \"host\") uses, to and from little-endian "
2100 "and big-endian byte order."
2101 msgstr ""
2102 "これらの関数は、整数値のバイトエンコーディングを、\n"
2103 "使用中の CPU (\"ホスト\") のバイトオーダーから\n"
2104 "リトルエンディアンやビッグエンディアンバイトオーダーへの変換や\n"
2105 "その逆の変換を行う。"
2106
2107 #. type: Plain text
2108 #: build/C/man3/endian.3:62
2109 msgid ""
2110 "The number, I<nn>, in the name of each function indicates the size of "
2111 "integer handled by the function, either 16, 32, or 64 bits."
2112 msgstr ""
2113 "各関数の名前に付いている数字 I<nn> は、その関数が扱う整数のサイズ\n"
2114 "(16, 32, 64 ビットのどれか) を示している。"
2115
2116 #. type: Plain text
2117 #: build/C/man3/endian.3:65
2118 msgid ""
2119 "The functions with names of the form \"htobeI<nn>\" convert from host byte "
2120 "order to big-endian order."
2121 msgstr ""
2122 "名前が \"htobeI<nn>\" という形の関数は、ホストバイトオーダーから\n"
2123 "ビッグエンディアンバイトオーダーへの変換を行う。"
2124
2125 #. type: Plain text
2126 #: build/C/man3/endian.3:68
2127 msgid ""
2128 "The functions with names of the form \"htoleI<nn>\" convert from host byte "
2129 "order to little-endian order."
2130 msgstr ""
2131 "名前が \"htoleI<nn>\" という形の関数は、ホストバイトオーダーから\n"
2132 "リトルエンディアンバイトオーダーへの変換を行う。"
2133
2134 #. type: Plain text
2135 #: build/C/man3/endian.3:71
2136 msgid ""
2137 "The functions with names of the form \"beI<nn>toh\" convert from big-endian "
2138 "order to host byte order."
2139 msgstr ""
2140 "名前が \"beI<nn>toh\" という形の関数は、ビッグエンディアンバイトオーダー\n"
2141 "からホストバイトオーダーへの変換を行う。"
2142
2143 #. type: Plain text
2144 #: build/C/man3/endian.3:74
2145 msgid ""
2146 "The functions with names of the form \"leI<nn>toh\" convert from little-"
2147 "endian order to host byte order."
2148 msgstr ""
2149 "名前が \"leI<nn>toh\" という形の関数は、リトルエンディアンバイトオーダー\n"
2150 "からホストバイトオーダーへの変換を行う。"
2151
2152 #. type: Plain text
2153 #: build/C/man3/endian.3:76
2154 msgid "These functions were added to glibc in version 2.9."
2155 msgstr "これらの関数は glibc バージョン 2.9 で追加された。"
2156
2157 #. type: Plain text
2158 #: build/C/man3/endian.3:91
2159 msgid ""
2160 "These functions are nonstandard.  Similar functions are present on the BSDs, "
2161 "where the required header file is I<E<lt>sys/endian.hE<gt>> instead of "
2162 "I<E<lt>endian.hE<gt>>.  Unfortunately, NetBSD, FreeBSD, and glibc haven't "
2163 "followed the original OpenBSD naming convention for these functions, whereby "
2164 "the I<nn> component always appears at the end of the function name (thus, "
2165 "for example, in NetBSD, FreeBSD, and glibc, the equivalent of OpenBSDs "
2166 "\"betoh32\" is \"be32toh\")."
2167 msgstr ""
2168 "これらの関数は非標準である。\n"
2169 "BSD には同様の関数が存在するが、 BSD では\n"
2170 "必要なヘッダーファイルは I<E<lt>endian.hE<gt>> ではなく\n"
2171 "I<E<lt>sys/endian.hE<gt>> である。\n"
2172 "不幸なことに、 NetBSD, FreeBSD, glibc では、\n"
2173 "これらの関数の元々の OpenBSD での、 I<nn> は常に関数名の末尾に置く\n"
2174 "という名前付けルールが踏襲されていない\n"
2175 "(そのため、例を挙げると、 OpenBSD の \"betoh32\" と等価な関数は\n"
2176 "NetBSD, FreeBSD, glibc では \"be32toh\" となる)。"
2177
2178 #. type: Plain text
2179 #: build/C/man3/endian.3:99
2180 msgid ""
2181 "These functions are similar to the older B<byteorder>(3)  family of "
2182 "functions.  For example, B<be32toh>()  is identical to B<ntohl>()."
2183 msgstr ""
2184 "これらの関数は、前からある B<byteorder>(3) 系の関数と同じである。\n"
2185 "例えば、 B<be32toh>() は B<ntohl>() と等価である。"
2186
2187 #. type: Plain text
2188 #: build/C/man3/endian.3:107
2189 msgid ""
2190 "The advantage of the B<byteorder>(3)  functions is that they are standard "
2191 "functions available on all UNIX systems.  On the other hand, the fact that "
2192 "they were designed for use in the context of TCP/IP means that they lack the "
2193 "64-bit and little-endian variants described in this page."
2194 msgstr ""
2195 "B<byteorder>(3) 系の関数のメリットは、これらが\n"
2196 "全ての UNIX システムで利用可能な標準関数である点である。\n"
2197 "一方で、これらの関数は TCP/IP 処理で使用されることを想定して\n"
2198 "設計されたため、このページで説明している 64 ビット版や\n"
2199 "リトルエンディアン版などが存在しない。"
2200
2201 #. type: Plain text
2202 #: build/C/man3/endian.3:114
2203 msgid ""
2204 "The program below display the results of converting an integer from host "
2205 "byte order to both little-endian and big-endian byte order.  Since host byte "
2206 "order is either little-endian or big-endian, only one of these conversions "
2207 "will have an effect.  When we run this program on a little-endian system "
2208 "such as x86-32, we see the following:"
2209 msgstr ""
2210 "以下のプログラムは、整数をホストバイトオーダーからリトルエンディアンと\n"
2211 "ビットエンディアンの両方のバイトオーダーに変換し、その結果を表示する。\n"
2212 "ホストバイトオーダーはリトルエンディアンかビットエンディアンのいずれか\n"
2213 "なので、変換に意味があるのはどちらか一方だけである。\n"
2214 "このプログラムを x86-32 などのリトルエンディアンのシステムで実行した\n"
2215 "場合の実行結果は下記のようになる。"
2216
2217 #. type: Plain text
2218 #: build/C/man3/endian.3:121
2219 #, no-wrap
2220 msgid ""
2221 "$ B<./a.out>\n"
2222 "x.u32 = 0x44332211\n"
2223 "htole32(x.u32) = 0x44332211\n"
2224 "htobe32(x.u32) = 0x11223344\n"
2225 msgstr ""
2226 "$ B<./a.out>\n"
2227 "x.u32 = 0x44332211\n"
2228 "htole32(x.u32) = 0x44332211\n"
2229 "htobe32(x.u32) = 0x11223344\n"
2230
2231 #. type: SS
2232 #: build/C/man3/endian.3:123 build/C/man3/getprotoent_r.3:162
2233 #: build/C/man3/getservent_r.3:160 build/C/man3/inet.3:278
2234 #: build/C/man3/inet_net_pton.3:331 build/C/man3/inet_pton.3:173
2235 #, no-wrap
2236 msgid "Program source"
2237 msgstr "プログラムのソース"
2238
2239 #. type: Plain text
2240 #: build/C/man3/endian.3:130
2241 #, no-wrap
2242 msgid ""
2243 "#include E<lt>endian.hE<gt>\n"
2244 "#include E<lt>stdint.hE<gt>\n"
2245 "#include E<lt>stdio.hE<gt>\n"
2246 "#include E<lt>stdlib.hE<gt>\n"
2247 msgstr ""
2248 "#include E<lt>endian.hE<gt>\n"
2249 "#include E<lt>stdint.hE<gt>\n"
2250 "#include E<lt>stdio.hE<gt>\n"
2251 "#include E<lt>stdlib.hE<gt>\n"
2252
2253 #. type: Plain text
2254 #: build/C/man3/endian.3:138
2255 #, no-wrap
2256 msgid ""
2257 "int\n"
2258 "main(int argc, char *argv[])\n"
2259 "{\n"
2260 "    union {\n"
2261 "        uint32_t u32;\n"
2262 "        uint8_t arr[4];\n"
2263 "    } x;\n"
2264 msgstr ""
2265 "int\n"
2266 "main(int argc, char *argv[])\n"
2267 "{\n"
2268 "    union {\n"
2269 "        uint32_t u32;\n"
2270 "        uint8_t arr[4];\n"
2271 "    } x;\n"
2272
2273 #. type: Plain text
2274 #: build/C/man3/endian.3:143
2275 #, no-wrap
2276 msgid ""
2277 "    x.arr[0] = 0x11;\t/* Lowest-address byte */\n"
2278 "    x.arr[1] = 0x22;\n"
2279 "    x.arr[2] = 0x33;\n"
2280 "    x.arr[3] = 0x44;\t/* Highest-address byte */\n"
2281 msgstr ""
2282 "    x.arr[0] = 0x11;\t/* Lowest-address byte */\n"
2283 "    x.arr[1] = 0x22;\n"
2284 "    x.arr[2] = 0x33;\n"
2285 "    x.arr[3] = 0x44;\t/* Highest-address byte */\n"
2286
2287 #. type: Plain text
2288 #: build/C/man3/endian.3:147
2289 #, no-wrap
2290 msgid ""
2291 "    printf(\"x.u32 = 0x%x\\en\", x.u32);\n"
2292 "    printf(\"htole32(x.u32) = 0x%x\\en\", htole32(x.u32));\n"
2293 "    printf(\"htobe32(x.u32) = 0x%x\\en\", htobe32(x.u32));\n"
2294 msgstr ""
2295 "    printf(\"x.u32 = 0x%x\\en\", x.u32);\n"
2296 "    printf(\"htole32(x.u32) = 0x%x\\en\", htole32(x.u32));\n"
2297 "    printf(\"htobe32(x.u32) = 0x%x\\en\", htobe32(x.u32));\n"
2298
2299 #. type: Plain text
2300 #: build/C/man3/endian.3:150 build/C/man3/getaddrinfo.3:827
2301 #: build/C/man3/getprotoent_r.3:236 build/C/man3/getservent_r.3:240
2302 #: build/C/man3/inet_net_pton.3:389 build/C/man3/inet_pton.3:214
2303 #, no-wrap
2304 msgid ""
2305 "    exit(EXIT_SUCCESS);\n"
2306 "}\n"
2307 msgstr ""
2308 "    exit(EXIT_SUCCESS);\n"
2309 "}\n"
2310
2311 #. type: Plain text
2312 #: build/C/man3/endian.3:153
2313 msgid "B<byteorder>(3)"
2314 msgstr "B<byteorder>(3)"
2315
2316 #. type: TH
2317 #: build/C/man3/ether_aton.3:31
2318 #, no-wrap
2319 msgid "ETHER_ATON"
2320 msgstr "ETHER_ATON"
2321
2322 #. type: TH
2323 #: build/C/man3/ether_aton.3:31 build/C/man7/udplite.7:27
2324 #, no-wrap
2325 msgid "2014-07-08"
2326 msgstr "2014-07-08"
2327
2328 #. type: Plain text
2329 #: build/C/man3/ether_aton.3:35
2330 msgid ""
2331 "ether_aton, ether_ntoa, ether_ntohost, ether_hostton, ether_line, "
2332 "ether_ntoa_r, ether_aton_r - Ethernet address manipulation routines"
2333 msgstr ""
2334 "ether_aton, ether_ntoa, ether_ntohost, ether_hostton, ether_line, "
2335 "ether_ntoa_r, ether_aton_r - Ethernet アドレスの操作用関数"
2336
2337 #. type: Plain text
2338 #: build/C/man3/ether_aton.3:38
2339 #, no-wrap
2340 msgid "B<#include E<lt>netinet/ether.hE<gt>>\n"
2341 msgstr "B<#include E<lt>netinet/ether.hE<gt>>\n"
2342
2343 #. type: Plain text
2344 #: build/C/man3/ether_aton.3:40
2345 #, no-wrap
2346 msgid "B<char *ether_ntoa(const struct ether_addr *>I<addr>B<);>\n"
2347 msgstr "B<char *ether_ntoa(const struct ether_addr *>I<addr>B<);>\n"
2348
2349 #. type: Plain text
2350 #: build/C/man3/ether_aton.3:42
2351 #, no-wrap
2352 msgid "B<struct ether_addr *ether_aton(const char *>I<asc>B<);>\n"
2353 msgstr "B<struct ether_addr *ether_aton(const char *>I<asc>B<);>\n"
2354
2355 #. type: Plain text
2356 #: build/C/man3/ether_aton.3:44
2357 #, no-wrap
2358 msgid "B<int ether_ntohost(char *>I<hostname>B<, const struct ether_addr *>I<addr>B<);>\n"
2359 msgstr "B<int ether_ntohost(char *>I<hostname>B<, const struct ether_addr *>I<addr>B<);>\n"
2360
2361 #. type: Plain text
2362 #: build/C/man3/ether_aton.3:46
2363 #, no-wrap
2364 msgid "B<int ether_hostton(const char *>I<hostname>B<, struct ether_addr *>I<addr>B<);>\n"
2365 msgstr "B<int ether_hostton(const char *>I<hostname>B<, struct ether_addr *>I<addr>B<);>\n"
2366
2367 #. type: Plain text
2368 #: build/C/man3/ether_aton.3:49
2369 #, no-wrap
2370 msgid ""
2371 "B<int ether_line(const char *>I<line>B<, struct ether_addr *>I<addr>B<,>\n"
2372 "B<               char *>I<hostname>B<);>\n"
2373 msgstr ""
2374 "B<int ether_line(const char *>I<line>B<, struct ether_addr *>I<addr>B<,>\n"
2375 "B<               char *>I<hostname>B<);>\n"
2376
2377 #. type: Plain text
2378 #: build/C/man3/ether_aton.3:51 build/C/man3/gethostbyname.3:70
2379 #, no-wrap
2380 msgid "/* GNU extensions */\n"
2381 msgstr "/* GNU 拡張 */\n"
2382
2383 #. type: Plain text
2384 #: build/C/man3/ether_aton.3:53
2385 #, no-wrap
2386 msgid "B<char *ether_ntoa_r(const struct ether_addr *>I<addr>B<, char *>I<buf>B<);>\n"
2387 msgstr "B<char *ether_ntoa_r(const struct ether_addr *>I<addr>B<, char *>I<buf>B<);>\n"
2388
2389 #. type: Plain text
2390 #: build/C/man3/ether_aton.3:56
2391 #, no-wrap
2392 msgid ""
2393 "B<struct ether_addr *ether_aton_r(const char *>I<asc>B<,>\n"
2394 "B<                                struct ether_addr *>I<addr>B<);>\n"
2395 msgstr ""
2396 "B<struct ether_addr *ether_aton_r(const char *>I<asc>B<,>\n"
2397 "B<                                struct ether_addr *>I<addr>B<);>\n"
2398
2399 #. type: Plain text
2400 #: build/C/man3/ether_aton.3:67
2401 msgid ""
2402 "B<ether_aton>()  converts the 48-bit Ethernet host address I<asc> from the "
2403 "standard hex-digits-and-colons notation into binary data in network byte "
2404 "order and returns a pointer to it in a statically allocated buffer, which "
2405 "subsequent calls will overwrite.  B<ether_aton>()  returns NULL if the "
2406 "address is invalid."
2407 msgstr ""
2408 "関数 B<ether_aton>()  は、標準的な 16進数とコロンの形式で書かれた 48ビットの "
2409 "Ethernet ホストアドレス I<asc> を、ネットワークでのバイト順 (byte order)  の"
2410 "バイナリデータに変換し、静的に割り当てられたバッファーに格納されたデータ への"
2411 "ポインターを返す。このバッファーは、これ以降の関数呼び出しで上書きされる。 ア"
2412 "ドレスが不正な場合、 B<ether_aton>()  は NULL を返す。"
2413
2414 #. type: Plain text
2415 #: build/C/man3/ether_aton.3:76
2416 msgid ""
2417 "The B<ether_ntoa>()  function converts the Ethernet host address I<addr> "
2418 "given in network byte order to a string in standard hex-digits-and-colons "
2419 "notation, omitting leading zeros.  The string is returned in a statically "
2420 "allocated buffer, which subsequent calls will overwrite."
2421 msgstr ""
2422 "関数 B<ether_ntoa>()  は、ネットワークのバイト順で表された Ethernet ホストア"
2423 "ドレス I<addr> を、標準的な 16進数とコロンの形式の文字列に変換する。 但し、先"
2424 "頭の 0 は省略される。変換後の文字列は静的に割り当てられたバッファー に格納さ"
2425 "れて返される。このバッファーは、これ以降の関数呼び出しで上書きされる。"
2426
2427 #. type: Plain text
2428 #: build/C/man3/ether_aton.3:83
2429 msgid ""
2430 "The B<ether_ntohost>()  function maps an Ethernet address to the "
2431 "corresponding hostname in I</etc/ethers> and returns nonzero if it cannot be "
2432 "found."
2433 msgstr ""
2434 "関数 B<ether_ntohost>()  は、Ethernet アドレスに対応するホスト名を I</etc/"
2435 "ethers> を検索して割り当てる。対応するホスト名が見つからなかった場合は、 非 "
2436 "0 を返す。"
2437
2438 #. type: Plain text
2439 #: build/C/man3/ether_aton.3:90
2440 msgid ""
2441 "The B<ether_hostton>()  function maps a hostname to the corresponding "
2442 "Ethernet address in I</etc/ethers> and returns nonzero if it cannot be found."
2443 msgstr ""
2444 "関数 B<ether_hostton>()  は、ホスト名に対応する Ethernet アドレスを I</etc/"
2445 "ethers> を検索して割り当てる。対応するホスト名が見つからなかった場合は、 非 "
2446 "0 を返す。"
2447
2448 #. type: Plain text
2449 #: build/C/man3/ether_aton.3:102
2450 msgid ""
2451 "The B<ether_line>()  function parses a line in I</etc/ethers> format "
2452 "(ethernet address followed by whitespace followed by hostname; \\(aq#\\(aq "
2453 "introduces a comment) and returns an address and hostname pair, or nonzero "
2454 "if it cannot be parsed.  The buffer pointed to by I<hostname> must be "
2455 "sufficiently long, for example, have the same length as I<line>."
2456 msgstr ""
2457 "関数 B<ether_line>()  は、 I</etc/ethers> 形式になった行を解析し、 アドレスと"
2458 "ホスト名の組を返す (I</etc/ethers> 形式は、Ethernet アドレス、ホスト名が空白"
2459 "文字 (whitespace)  で区切られた書式で、\\(aq#\\(aq 以降はコメントとみなされ"
2460 "る)。 解析できなかった場合は、非 0 を返す。 I<hostname> で指定されたバッ"
2461 "ファーは十分な長さが必要である。つまり、 I<line> と同じ長さでなければならな"
2462 "い。"
2463
2464 #. type: Plain text
2465 #: build/C/man3/ether_aton.3:113
2466 msgid ""
2467 "The functions B<ether_ntoa_r>()  and B<ether_aton_r>()  are reentrant thread-"
2468 "safe versions of B<ether_ntoa>()  and B<ether_aton>()  respectively, and do "
2469 "not use static buffers."
2470 msgstr ""
2471 "関数 B<ether_ntoa_r>()  と B<ether_aton_r>()  は、 それぞれ B<ether_ntoa>()  "
2472 "と B<ether_aton>()  の リエントラントでスレッドセーフなバージョンであり、 静"
2473 "的なバッファーを使用しない。"
2474
2475 #. type: Plain text
2476 #: build/C/man3/ether_aton.3:119
2477 msgid ""
2478 "The structure I<ether_addr> is defined in I<E<lt>net/ethernet.hE<gt>> as:"
2479 msgstr ""
2480 "I<ether_addr> 構造体は I<E<lt>net/ethernet.hE<gt>> で次のように定義されてい"
2481 "る:"
2482
2483 #. type: Plain text
2484 #: build/C/man3/ether_aton.3:125
2485 #, no-wrap
2486 msgid ""
2487 "struct ether_addr {\n"
2488 "    uint8_t ether_addr_octet[6];\n"
2489 "}\n"
2490 msgstr ""
2491 "struct ether_addr {\n"
2492 "    uint8_t ether_addr_octet[6];\n"
2493 "}\n"
2494
2495 #. type: Plain text
2496 #: build/C/man3/ether_aton.3:130
2497 msgid ""
2498 "For an explanation of the terms used in this section, see B<attributes>(7)."
2499 msgstr "この節で使用されている用語の説明は B<attributes>(7) を参照のこと。"
2500
2501 #. type: tbl table
2502 #: build/C/man3/ether_aton.3:135
2503 #, no-wrap
2504 msgid "Interface\tAttribute\tValue\n"
2505 msgstr "Interface\tAttribute\tValue\n"
2506
2507 #. type: tbl table
2508 #: build/C/man3/ether_aton.3:136 build/C/man3/ether_aton.3:140
2509 #, no-wrap
2510 msgid "T{\n"
2511 msgstr "T{\n"
2512
2513 #. type: tbl table
2514 #: build/C/man3/ether_aton.3:137
2515 #, no-wrap
2516 msgid "B<ether_aton>(),\n"
2517 msgstr "B<ether_aton>(),\n"
2518
2519 #. type: tbl table
2520 #: build/C/man3/ether_aton.3:138
2521 #, no-wrap
2522 msgid "B<ether_ntoa>()\n"
2523 msgstr "B<ether_ntoa>()\n"
2524
2525 #. type: tbl table
2526 #: build/C/man3/ether_aton.3:139
2527 #, no-wrap
2528 msgid "T}\tThread safety\tMT-Unsafe\n"
2529 msgstr "T}\tThread safety\tMT-Unsafe\n"
2530
2531 #. type: tbl table
2532 #: build/C/man3/ether_aton.3:141
2533 #, no-wrap
2534 msgid "B<ether_ntohost>(),\n"
2535 msgstr "B<ether_ntohost>(),\n"
2536
2537 #. type: tbl table
2538 #: build/C/man3/ether_aton.3:142
2539 #, no-wrap
2540 msgid "B<ether_hostton>(),\n"
2541 msgstr "B<ether_hostton>(),\n"
2542
2543 #. type: tbl table
2544 #: build/C/man3/ether_aton.3:143
2545 #, no-wrap
2546 msgid "B<ether_line>(),\n"
2547 msgstr "B<ether_line>(),\n"
2548
2549 #. type: tbl table
2550 #: build/C/man3/ether_aton.3:144
2551 #, no-wrap
2552 msgid "B<ether_ntoa_r>(),\n"
2553 msgstr "B<ether_ntoa_r>(),\n"
2554
2555 #. type: tbl table
2556 #: build/C/man3/ether_aton.3:145
2557 #, no-wrap
2558 msgid "B<ether_aton_r>()\n"
2559 msgstr "B<ether_aton_r>()\n"
2560
2561 #. type: tbl table
2562 #: build/C/man3/ether_aton.3:146
2563 #, no-wrap
2564 msgid "T}\tThread safety\tMT-Safe\n"
2565 msgstr "T}\tThread safety\tMT-Safe\n"
2566
2567 #. type: Plain text
2568 #: build/C/man3/ether_aton.3:151
2569 msgid "4.3BSD, SunOS."
2570 msgstr "4.3BSD, SunOS."
2571
2572 #.  The fix was presumably commit c0a0f9a32c8baa6ab93d00eb42d92c02e9e146d7
2573 #.  which was in glibc 2.3
2574 #. type: Plain text
2575 #: build/C/man3/ether_aton.3:157
2576 msgid ""
2577 "In glibc 2.2.5 and earlier, the implementation of B<ether_line>()  is broken."
2578 msgstr "glibc 2.2.5 以前では、 B<ether_line>()  の実装はおかしい。"
2579
2580 #. type: Plain text
2581 #: build/C/man3/ether_aton.3:159
2582 msgid "B<ethers>(5)"
2583 msgstr "B<ethers>(5)"
2584
2585 #. type: TH
2586 #: build/C/man5/gai.conf.5:19
2587 #, no-wrap
2588 msgid "GAI.CONF"
2589 msgstr "GAI.CONF"
2590
2591 #. type: TH
2592 #: build/C/man5/gai.conf.5:19 build/C/man5/nss.5:19
2593 #, no-wrap
2594 msgid "2013-02-13"
2595 msgstr "2013-02-13"
2596
2597 #. type: Plain text
2598 #: build/C/man5/gai.conf.5:22
2599 msgid "gai.conf - getaddrinfo(3) configuration file"
2600 msgstr "gai.conf - getaddrinfo(3) 設定ファイル"
2601
2602 #. type: Plain text
2603 #: build/C/man5/gai.conf.5:36
2604 msgid ""
2605 "A call to B<getaddrinfo>(3)  might return multiple answers.  According to RFC"
2606 "\\ 3484 these answers must be sorted so that the answer with the highest "
2607 "success rate is first in the list.  The RFC provides an algorithm for the "
2608 "sorting.  The static rules are not always adequate, though.  For this "
2609 "reason, the RFC also requires that system administrators should have the "
2610 "possibility to dynamically change the sorting.  For the glibc "
2611 "implementation, this can be achieved with the I</etc/gai.conf> file."
2612 msgstr ""
2613 "B<getaddrinfo>(3) の呼び出しでは、複数の答えが返る場合がある。 RFC\\ 3484 に"
2614 "よれば、 これらの答えは、 最も成功の可能性が高い答えがリストの先頭になるよう"
2615 "な順番に並び替えなければならない。 RFC には、 並び替えのアルゴリズムが書かれ"
2616 "ている。 しかしながら、 静的なルールが常に適切という訳ではない。 この理由か"
2617 "ら、 RFC では、 並び替え方法をシステム管理者が動的に変更できるようにすること"
2618 "も要求している。 glibc の実装では、 I</etc/gai.conf> ファイルでこれが実現でき"
2619 "るようになっている。"
2620
2621 #. type: Plain text
2622 #: build/C/man5/gai.conf.5:40
2623 msgid ""
2624 "Each line in the configuration file consists of a keyword and its "
2625 "parameters.  White spaces in any place are ignored.  Lines starting with "
2626 "\\(aq#\\(aq are comments and are ignored."
2627 msgstr ""
2628 "設定ファイルの各行は、キーワードとそのパラメーターで構成される。 ホワイトス"
2629 "ペースはどこにあっても全て無視される。 \\(aq#\\(aq で始まる行はコメントで、 "
2630 "無視される。"
2631
2632 #. type: Plain text
2633 #: build/C/man5/gai.conf.5:42
2634 msgid "The keywords currently recognized are:"
2635 msgstr "現在のところ、認識されるキーワードは以下の通りである。"
2636
2637 #. type: TP
2638 #: build/C/man5/gai.conf.5:42
2639 #, no-wrap
2640 msgid "B<label> I<netmask> I<precedence>"
2641 msgstr "B<label> I<netmask> I<precedence>"
2642
2643 #. type: Plain text
2644 #: build/C/man5/gai.conf.5:51
2645 msgid ""
2646 "The value is added to the label table used in the RFC\\ 3484 sorting.  If "
2647 "any B<label> definition is present in the configuration file is present, the "
2648 "default table is not used.  All the label definitions of the default table "
2649 "which are to be maintained have to be duplicated.  Following the keyword, "
2650 "the line has to contain a network mask and a label value."
2651 msgstr ""
2652 "指定した値は RFC\\ 3484 の並び替えで使用されるラベルテーブルに追加される。 設"
2653 "定ファイルに B<label> 定義が一つでもあれば、デフォルトテーブルは使用されな"
2654 "い。 デフォルトテーブルのすべてのラベル定義はきちんと管理されていれば、 重複"
2655 "が発生するはずだからである。 ラベル行では、 キーワードの後に、 ネットワークマ"
2656 "スクとラベル値が含まれていなければならない。"
2657
2658 #. type: TP
2659 #: build/C/man5/gai.conf.5:51
2660 #, no-wrap
2661 msgid "B<precedence> I<netmask> I<precedence>"
2662 msgstr "B<precedence> I<netmask> I<precedence>"
2663
2664 #. type: Plain text
2665 #: build/C/man5/gai.conf.5:58
2666 msgid ""
2667 "This keyword is similar to B<label>, but instead the value is added to the "
2668 "precedence table as specified in RFC\\ 3484.  Once again, the presence of a "
2669 "single B<precedence> line in the configuration file causes the default table "
2670 "to not be used."
2671 msgstr ""
2672 "このキーワードは B<label> に似ているが、 指定された値を RFC\\ 3484 で規定され"
2673 "た優先度テーブルに追加する点が異なる。 繰り返しになるが、 設定ファイルに "
2674 "B<precedence> が一つでもあれば、デフォルトテーブルは使用されない。"
2675
2676 #. type: TP
2677 #: build/C/man5/gai.conf.5:58
2678 #, no-wrap
2679 msgid "B<reload> E<lt>B<yes>|B<no>E<gt>"
2680 msgstr "B<reload> E<lt>B<yes>|B<no>E<gt>"
2681
2682 #. type: Plain text
2683 #: build/C/man5/gai.conf.5:67
2684 msgid ""
2685 "This keyword controls whether a process checks whether the configuration "
2686 "file has been changed since the last time it was read.  If the value is "
2687 "\"B<yes>\", the file is reread.  This might cause problems in multithreaded "
2688 "applications and is generally a bad idea.  The default is \"B<no>\"."
2689 msgstr ""
2690 "このキーワードは、 設定ファイルが前回の読み出し以降に変更されているかをプロセ"
2691 "スが確認するかを制御する。 値が \"B<yes>\" であれば、 ファイルが再読み込みさ"
2692 "れる。 再読み込みはマルチスレッドアプリケーションで問題を起こす可能性があ"
2693 "り、 一般にはよい考えとは言えない。 デフォルトは \"B<no>\" である。"
2694
2695 #. type: TP
2696 #: build/C/man5/gai.conf.5:67
2697 #, no-wrap
2698 msgid "B<scopev4> I<mask> I<value>"
2699 msgstr "B<scopev4> I<mask> I<value>"
2700
2701 #. type: Plain text
2702 #: build/C/man5/gai.conf.5:72
2703 msgid ""
2704 "Add another rule to the RFC\\ 3484 scope table for IPv4 address.  By "
2705 "default, the scope IDs described in section 3.2 in RFC\\ 3438 are used.  "
2706 "Changing these defaults should hardly ever be necessary."
2707 msgstr ""
2708 "IPv4 アドレス用の RFC\\ 3484 スコープテーブルに別のルールを追加する。 デフォ"
2709 "ルトでは、 RFC\\ 3438 のセクション 3.2 で説明されているスコープ ID が使用され"
2710 "る。 これらのデフォルト値の変更が必要になることはまずないだろう。"
2711
2712 #. type: SH
2713 #: build/C/man5/gai.conf.5:72 build/C/man3/getaddrinfo.3:593
2714 #: build/C/man3/gethostbyname.3:307 build/C/man3/getnameinfo.3:197
2715 #: build/C/man3/getnetent.3:141 build/C/man3/getprotoent.3:134
2716 #: build/C/man3/getservent.3:153 build/C/man5/host.conf.5:180
2717 #: build/C/man5/hosts.5:86 build/C/man5/hosts.equiv.5:69
2718 #: build/C/man5/networks.5:70 build/C/man5/nss.5:98
2719 #: build/C/man5/nsswitch.conf.5:298 build/C/man5/protocols.5:77
2720 #: build/C/man5/resolv.conf.5:298 build/C/man3/resolver.3:267
2721 #: build/C/man5/services.5:185 build/C/man3/setnetgrent.3:88
2722 #: build/C/man7/udplite.7:126
2723 #, no-wrap
2724 msgid "FILES"
2725 msgstr "ファイル"
2726
2727 #. type: Plain text
2728 #: build/C/man5/gai.conf.5:74 build/C/man3/getaddrinfo.3:595
2729 msgid "I</etc/gai.conf>"
2730 msgstr "I</etc/gai.conf>"
2731
2732 #. type: Plain text
2733 #: build/C/man5/gai.conf.5:77
2734 msgid ""
2735 "The default table according to RFC\\ 3484 would be specified with the "
2736 "following configuration file:"
2737 msgstr ""
2738 "RFC\\ 3484 で規定されているデフォルトテーブルは、 以下の設定ファイルを指定す"
2739 "るのと同じである。"
2740
2741 #. type: Plain text
2742 #: build/C/man5/gai.conf.5:89
2743 #, no-wrap
2744 msgid ""
2745 "label  ::1/128       0\n"
2746 "label  ::/0          1\n"
2747 "label  2002::/16     2\n"
2748 "label ::/96          3\n"
2749 "label ::ffff:0:0/96  4\n"
2750 "precedence  ::1/128       50\n"
2751 "precedence  ::/0          40\n"
2752 "precedence  2002::/16     30\n"
2753 "precedence ::/96          20\n"
2754 "precedence ::ffff:0:0/96  10\n"
2755 msgstr ""
2756 "label  ::1/128       0\n"
2757 "label  ::/0          1\n"
2758 "label  2002::/16     2\n"
2759 "label ::/96          3\n"
2760 "label ::ffff:0:0/96  4\n"
2761 "precedence  ::1/128       50\n"
2762 "precedence  ::/0          40\n"
2763 "precedence  2002::/16     30\n"
2764 "precedence ::/96          20\n"
2765 "precedence ::ffff:0:0/96  10\n"
2766
2767 #. type: Plain text
2768 #: build/C/man5/gai.conf.5:96
2769 msgid "B<getaddrinfo>(3), RFC\\ 3484"
2770 msgstr "B<getaddrinfo>(3), RFC\\ 3484"
2771
2772 #. type: TH
2773 #: build/C/man3/getaddrinfo.3:44
2774 #, no-wrap
2775 msgid "GETADDRINFO"
2776 msgstr "GETADDRINFO"
2777
2778 #. type: TH
2779 #: build/C/man3/getaddrinfo.3:44
2780 #, no-wrap
2781 msgid "2014-04-06"
2782 msgstr "2014-04-06"
2783
2784 #. type: Plain text
2785 #: build/C/man3/getaddrinfo.3:48
2786 msgid ""
2787 "getaddrinfo, freeaddrinfo, gai_strerror - network address and service "
2788 "translation"
2789 msgstr ""
2790 "getaddrinfo, freeaddrinfo, gai_strerror - ネットワークのアドレスとサービスを"
2791 "変換する"
2792
2793 #. type: Plain text
2794 #: build/C/man3/getaddrinfo.3:53 build/C/man3/getipnodebyname.3:35
2795 #, no-wrap
2796 msgid ""
2797 "B<#include E<lt>sys/types.hE<gt>>\n"
2798 "B<#include E<lt>sys/socket.hE<gt>>\n"
2799 "B<#include E<lt>netdb.hE<gt>>\n"
2800 msgstr ""
2801 "B<#include E<lt>sys/types.hE<gt>>\n"
2802 "B<#include E<lt>sys/socket.hE<gt>>\n"
2803 "B<#include E<lt>netdb.hE<gt>>\n"
2804
2805 #. type: Plain text
2806 #: build/C/man3/getaddrinfo.3:57
2807 #, no-wrap
2808 msgid ""
2809 "B<int getaddrinfo(const char *>I<node>B<, const char *>I<service>B<,>\n"
2810 "B<                const struct addrinfo *>I<hints>B<,>\n"
2811 "B<                struct addrinfo **>I<res>B<);>\n"
2812 msgstr ""
2813 "B<int getaddrinfo(const char *>I<node>B<, const char *>I<service>B<,>\n"
2814 "B<                const struct addrinfo *>I<hints>B<,>\n"
2815 "B<                struct addrinfo **>I<res>B<);>\n"
2816
2817 #. type: Plain text
2818 #: build/C/man3/getaddrinfo.3:59
2819 #, no-wrap
2820 msgid "B<void freeaddrinfo(struct addrinfo *>I<res>B<);>\n"
2821 msgstr "B<void freeaddrinfo(struct addrinfo *>I<res>B<);>\n"
2822
2823 #. type: Plain text
2824 #: build/C/man3/getaddrinfo.3:61
2825 #, no-wrap
2826 msgid "B<const char *gai_strerror(int >I<errcode>B<);>\n"
2827 msgstr "B<const char *gai_strerror(int >I<errcode>B<);>\n"
2828
2829 #. type: Plain text
2830 #: build/C/man3/getaddrinfo.3:66 build/C/man3/gethostbyname.3:93
2831 #: build/C/man3/getnameinfo.3:26 build/C/man3/getnetent_r.3:52
2832 #: build/C/man3/getprotoent_r.3:49 build/C/man3/getservent_r.3:49
2833 #: build/C/man3/inet.3:70 build/C/man3/inet_net_pton.3:45
2834 #: build/C/man3/rcmd.3:81 build/C/man3/setnetgrent.3:34
2835 msgid ""
2836 "Feature Test Macro Requirements for glibc (see B<feature_test_macros>(7)):"
2837 msgstr "glibc 向けの機能検査マクロの要件 (B<feature_test_macros>(7)  参照):"
2838
2839 #. type: Plain text
2840 #: build/C/man3/getaddrinfo.3:72
2841 msgid "B<getaddrinfo>(), B<freeaddrinfo>(), B<gai_strerror>():"
2842 msgstr "B<getaddrinfo>(), B<freeaddrinfo>(), B<gai_strerror>():"
2843
2844 #. type: Plain text
2845 #: build/C/man3/getaddrinfo.3:74
2846 msgid "_POSIX_C_SOURCE\\ E<gt>=\\ 1 || _XOPEN_SOURCE || _POSIX_SOURCE"
2847 msgstr "_POSIX_C_SOURCE\\ E<gt>=\\ 1 || _XOPEN_SOURCE || _POSIX_SOURCE"
2848
2849 #.  .BR getipnodebyname (3),
2850 #.  .BR getipnodebyaddr (3),
2851 #. type: Plain text
2852 #: build/C/man3/getaddrinfo.3:101
2853 msgid ""
2854 "Given I<node> and I<service>, which identify an Internet host and a service, "
2855 "B<getaddrinfo>()  returns one or more I<addrinfo> structures, each of which "
2856 "contains an Internet address that can be specified in a call to B<bind>(2)  "
2857 "or B<connect>(2).  The B<getaddrinfo>()  function combines the functionality "
2858 "provided by the B<gethostbyname>(3)  and B<getservbyname>(3)  functions into "
2859 "a single interface, but unlike the latter functions, B<getaddrinfo>()  is "
2860 "reentrant and allows programs to eliminate IPv4-versus-IPv6 dependencies."
2861 msgstr ""
2862 "B<getaddrinfo>()  は、(インターネットのホストとサービスを識別する)  I<node> "
2863 "と I<service> を渡すと、一つ以上の I<addrinfo> 構造体を返す。それぞれの "
2864 "I<addrinfo> 構造体には、 B<bind>(2)  や B<connect>(2)  を呼び出す際に指定でき"
2865 "るインターネットアドレスが格納されている。 B<getaddrinfo>()  関数は、 "
2866 "B<gethostbyname>(3) と B<getservbyname>(3) の機能をまとめて一つのインター"
2867 "フェースにしたものであるが、 これらの関数と違い、 B<getaddrinfo>() はリエント"
2868 "ラントであり、 B<getaddrinfo>() を使うことでプログラムは IPv4 と IPv6 の違い"
2869 "に関する依存関係を なくすことができる。"
2870
2871 #. type: Plain text
2872 #: build/C/man3/getaddrinfo.3:107
2873 msgid ""
2874 "The I<addrinfo> structure used by B<getaddrinfo>()  contains the following "
2875 "fields:"
2876 msgstr ""
2877 "B<getaddrinfo>()  が用いる I<addrinfo> 構造体は以下のフィールドを含む。"
2878
2879 #. type: Plain text
2880 #: build/C/man3/getaddrinfo.3:120
2881 #, no-wrap
2882 msgid ""
2883 "struct addrinfo {\n"
2884 "    int              ai_flags;\n"
2885 "    int              ai_family;\n"
2886 "    int              ai_socktype;\n"
2887 "    int              ai_protocol;\n"
2888 "    socklen_t        ai_addrlen;\n"
2889 "    struct sockaddr *ai_addr;\n"
2890 "    char            *ai_canonname;\n"
2891 "    struct addrinfo *ai_next;\n"
2892 "};\n"
2893 msgstr ""
2894 "struct addrinfo {\n"
2895 "    int              ai_flags;\n"
2896 "    int              ai_family;\n"
2897 "    int              ai_socktype;\n"
2898 "    int              ai_protocol;\n"
2899 "    socklen_t        ai_addrlen;\n"
2900 "    struct sockaddr *ai_addr;\n"
2901 "    char            *ai_canonname;\n"
2902 "    struct addrinfo *ai_next;\n"
2903 "};\n"
2904
2905 #. type: Plain text
2906 #: build/C/man3/getaddrinfo.3:142
2907 msgid ""
2908 "The I<hints> argument points to an I<addrinfo> structure that specifies "
2909 "criteria for selecting the socket address structures returned in the list "
2910 "pointed to by I<res>.  If I<hints> is not NULL it points to an I<addrinfo> "
2911 "structure whose I<ai_family>, I<ai_socktype>, and I<ai_protocol> specify "
2912 "criteria that limit the set of socket addresses returned by "
2913 "B<getaddrinfo>(), as follows:"
2914 msgstr ""
2915 "I<hints> 引き数は I<addrinfo> 構造体を指し示し、この構造体を用いて I<res> が"
2916 "指すリストに入れて返すソケットアドレス構造体を選択するための基準を指定する。 "
2917 "I<hints> が NULL でない場合、 I<hints> は I<addrinfo> 構造体を指し示し、その"
2918 "構造体のフィールド I<ai_family>, I<ai_socktype>, I<ai_protocol> で "
2919 "B<getaddrinfo>()  が返すソケットアドレス集合に対する基準を指定する。"
2920
2921 #. type: TP
2922 #: build/C/man3/getaddrinfo.3:142
2923 #, no-wrap
2924 msgid "I<ai_family>"
2925 msgstr "I<ai_family>"
2926
2927 #. type: Plain text
2928 #: build/C/man3/getaddrinfo.3:158
2929 msgid ""
2930 "This field specifies the desired address family for the returned addresses.  "
2931 "Valid values for this field include B<AF_INET> and B<AF_INET6>.  The value "
2932 "B<AF_UNSPEC> indicates that B<getaddrinfo>()  should return socket addresses "
2933 "for any address family (either IPv4 or IPv6, for example) that can be used "
2934 "with I<node> and I<service>."
2935 msgstr ""
2936 "このフィールドは返されるアドレスの希望のアドレスファミリーを指定する。 この"
2937 "フィールドに指定できる有効な値としては B<AF_INET> と B<AF_INET6> がある。 ま"
2938 "た、値 B<AF_UNSPEC> を指定すると、 B<getaddrinfo>()  は I<node> と "
2939 "I<service> で使用できるいずれかのアドレスファミリー (例えば IPv4 か IPv6) の "
2940 "ソケットアドレスを返すことを求められる。"
2941
2942 #. type: TP
2943 #: build/C/man3/getaddrinfo.3:158
2944 #, no-wrap
2945 msgid "I<ai_socktype>"
2946 msgstr "I<ai_socktype>"
2947
2948 #. type: Plain text
2949 #: build/C/man3/getaddrinfo.3:167
2950 msgid ""
2951 "This field specifies the preferred socket type, for example B<SOCK_STREAM> "
2952 "or B<SOCK_DGRAM>.  Specifying 0 in this field indicates that socket "
2953 "addresses of any type can be returned by B<getaddrinfo>()."
2954 msgstr ""
2955 "このフィールドは推奨のソケット型 (例えば B<SOCK_STREAM> や B<SOCK_DGRAM>)  を"
2956 "指定する。 このフィールドに 0 を指定すると、任意のソケット型のソケットアドレ"
2957 "スを B<getaddrinfo>()  が返してよいことを意味する。"
2958
2959 #. type: TP
2960 #: build/C/man3/getaddrinfo.3:167
2961 #, no-wrap
2962 msgid "I<ai_protocol>"
2963 msgstr "I<ai_protocol>"
2964
2965 #. type: Plain text
2966 #: build/C/man3/getaddrinfo.3:173
2967 msgid ""
2968 "This field specifies the protocol for the returned socket addresses.  "
2969 "Specifying 0 in this field indicates that socket addresses with any protocol "
2970 "can be returned by B<getaddrinfo>()."
2971 msgstr ""
2972 "このフィールドは返されるソケットアドレスのプロトコルを指定する。 このフィール"
2973 "ドに 0 を指定すると、任意のプロトコルののソケットアドレスを "
2974 "B<getaddrinfo>()  が返してよいことを意味する。"
2975
2976 #. type: TP
2977 #: build/C/man3/getaddrinfo.3:173
2978 #, no-wrap
2979 msgid "I<ai_flags>"
2980 msgstr "I<ai_flags>"
2981
2982 #. type: Plain text
2983 #: build/C/man3/getaddrinfo.3:177
2984 msgid ""
2985 "This field specifies additional options, described below.  Multiple flags "
2986 "are specified by bitwise OR-ing them together."
2987 msgstr ""
2988 "このフィールドは、追加のオプション (下記) を指定する。 複数のフラグを指定する"
2989 "際には、それらのビット単位の OR をとって指定する。"
2990
2991 #. type: Plain text
2992 #: build/C/man3/getaddrinfo.3:181
2993 msgid ""
2994 "All the other fields in the structure pointed to by I<hints> must contain "
2995 "either 0 or a null pointer, as appropriate."
2996 msgstr ""
2997 "I<hints> が指し示す構造体の他のすべてのフィールドには 0 かヌルポインターを適"
2998 "切に入れなければならない。"
2999
3000 #. type: Plain text
3001 #: build/C/man3/getaddrinfo.3:216
3002 msgid ""
3003 "Specifying I<hints> as NULL is equivalent to setting I<ai_socktype> and "
3004 "I<ai_protocol> to 0; I<ai_family> to B<AF_UNSPEC>; and I<ai_flags> to "
3005 "B<(AI_V4MAPPED\\ |\\ AI_ADDRCONFIG)>.  (POSIX specifies different defaults "
3006 "for I<ai_flags>; see NOTES.)  I<node> specifies either a numerical network "
3007 "address (for IPv4, numbers-and-dots notation as supported by "
3008 "B<inet_aton>(3); for IPv6, hexadecimal string format as supported by "
3009 "B<inet_pton>(3)), or a network hostname, whose network addresses are looked "
3010 "up and resolved.  If I<hints.ai_flags> contains the B<AI_NUMERICHOST> flag, "
3011 "then I<node> must be a numerical network address.  The B<AI_NUMERICHOST> "
3012 "flag suppresses any potentially lengthy network host address lookups."
3013 msgstr ""
3014 "I<hints> に NULL を指定するのは、 I<ai_socktype> と I<ai_protocol> に 0 を、 "
3015 "I<ai_family> に B<AF_UNSPEC> を、 I<ai_flags> に B<(AI_V4MAPPED\\ |\\ "
3016 "AI_ADDRCONFIG)> を設定するのと等価である (POSIX では I<ai_flags> には別のデ"
3017 "フォルト値が規定されている; 「備考」を参照)。 I<node> には、数値形式のネット"
3018 "ワークアドレス (IPv4 の場合は B<inet_aton>(3)  でサポートされているドット区切"
3019 "りの数字による表記、 IPv6 の場合は B<inet_pton>(3)  でサポートされている 16 "
3020 "進数の文字列形式) もしくは ネットワークホスト名を指定する。 ネットワークホス"
3021 "ト名を指定した場合には、そのネットワークアドレスが検索され、 名前解決が行なわ"
3022 "れる。 I<hints.ai_flags> に B<AI_NUMERICHOST> フラグが含まれている場合は、 "
3023 "I<node> は数値形式のネットワークアドレスでなければならない。 "
3024 "B<AI_NUMERICHOST> フラグを使うと、時間の掛かる可能性のあるネットワークホスト"
3025 "アドレスの検索は すべて抑制される。"
3026
3027 #. type: Plain text
3028 #: build/C/man3/getaddrinfo.3:241
3029 msgid ""
3030 "If the B<AI_PASSIVE> flag is specified in I<hints.ai_flags>, and I<node> is "
3031 "NULL, then the returned socket addresses will be suitable for B<bind>(2)ing "
3032 "a socket that will B<accept>(2)  connections.  The returned socket address "
3033 "will contain the \"wildcard address\" (B<INADDR_ANY> for IPv4 addresses, "
3034 "B<IN6ADDR_ANY_INIT> for IPv6 address).  The wildcard address is used by "
3035 "applications (typically servers)  that intend to accept connections on any "
3036 "of the hosts's network addresses.  If I<node> is not NULL, then the "
3037 "B<AI_PASSIVE> flag is ignored."
3038 msgstr ""
3039 "I<hints.ai_flags> に B<AI_PASSIVE> フラグが指定され、かつ I<node> が NULL の"
3040 "場合、 返されるソケットアドレスは コネクションを B<accept>(2)  するためのソ"
3041 "ケットを B<bind>(2)  するのに適したものとなる。 返されるソケットアドレスには"
3042 "「ワイルドカードアドレス」 (IPv4 アドレスの場合は B<INADDR_ANY>、 IPv6 アドレ"
3043 "スの場合は B<IN6ADDR_ANY_INIT>)  が入る。 ワイルドカードアドレスは、任意のホ"
3044 "ストのネットワークアドレスで接続を 受け付けようとするアプリケーション (通常は"
3045 "サーバー) で用いられる。 I<node> が NULL でない場合、 B<AI_PASSIVE> フラグは"
3046 "無視される。"
3047
3048 #. type: Plain text
3049 #: build/C/man3/getaddrinfo.3:261
3050 msgid ""
3051 "If the B<AI_PASSIVE> flag is not set in I<hints.ai_flags>, then the returned "
3052 "socket addresses will be suitable for use with B<connect>(2), B<sendto>(2), "
3053 "or B<sendmsg>(2).  If I<node> is NULL, then the network address will be set "
3054 "to the loopback interface address (B<INADDR_LOOPBACK> for IPv4 addresses, "
3055 "B<IN6ADDR_LOOPBACK_INIT> for IPv6 address); this is used by applications "
3056 "that intend to communicate with peers running on the same host."
3057 msgstr ""
3058 "I<hints.ai_flags> に B<AI_PASSIVE> フラグがセットされていない場合、 返される"
3059 "ソケットアドレスは B<connect>(2), B<sendto>(2), B<sendmsg>(2)  での使用に適し"
3060 "たものとなる。 I<node> が NULL の場合、ネットワークアドレスにはループバックイ"
3061 "ンターフェイスの アドレス (IPv4 アドレスの場合は B<INADDR_LOOPBACK> IPv6 アド"
3062 "レスの場合は B<IN6ADDR_LOOPBACK_INIT>)B<が設定される。> これは同じホスト上で"
3063 "動作している接続相手と通信するような アプリケーションで用いられる。"
3064
3065 #. type: Plain text
3066 #: build/C/man3/getaddrinfo.3:284
3067 msgid ""
3068 "I<service> sets the port in each returned address structure.  If this "
3069 "argument is a service name (see B<services>(5)), it is translated to the "
3070 "corresponding port number.  This argument can also be specified as a decimal "
3071 "number, which is simply converted to binary.  If I<service> is NULL, then "
3072 "the port number of the returned socket addresses will be left "
3073 "uninitialized.  If B<AI_NUMERICSERV> is specified in I<hints.ai_flags> and "
3074 "I<service> is not NULL, then I<service> must point to a string containing a "
3075 "numeric port number.  This flag is used to inhibit the invocation of a name "
3076 "resolution service in cases where it is known not to be required."
3077 msgstr ""
3078 "I<service> により、返される各アドレス構造体のポート番号が決まる。 この引き数"
3079 "がサービス名 (B<services>(5)  参照) の場合、対応するポート番号に翻訳される。 "
3080 "この引き数には 10 進数も指定することができ、 この場合にはバイナリへの変換だけ"
3081 "が行われる。 I<service> が NULL の場合、返されるソケットアドレスのポート番号"
3082 "は 初期化されないままとなる。 I<hints.ai_flags> に B<AI_NUMERICSERV> が指定さ"
3083 "れ、かつ I<service> が NULL でない場合、 I<service> は数値のポート番号を含む"
3084 "文字列を指し示さなければならない。 このフラグは、名前解決サービスが不要である"
3085 "ことが分かっている場合に、 サービスの起動を抑制するために用いられる。"
3086
3087 #. type: Plain text
3088 #: build/C/man3/getaddrinfo.3:290
3089 msgid "Either I<node> or I<service>, but not both, may be NULL."
3090 msgstr ""
3091 "I<node> と I<service> のどちらかは NULL にしてよいが、両方同時に NULL にして"
3092 "はならない。"
3093
3094 #. type: Plain text
3095 #: build/C/man3/getaddrinfo.3:306
3096 msgid ""
3097 "The B<getaddrinfo>()  function allocates and initializes a linked list of "
3098 "I<addrinfo> structures, one for each network address that matches I<node> "
3099 "and I<service>, subject to any restrictions imposed by I<hints>, and returns "
3100 "a pointer to the start of the list in I<res>.  The items in the linked list "
3101 "are linked by the I<ai_next> field."
3102 msgstr ""
3103 "B<getaddrinfo>()  関数は、 I<addrinfo> 構造体のメモリー確保を行い、 "
3104 "I<addrinfo> 構造体のリンクリストを初期化し、 I<res> にリストの先頭へのポイン"
3105 "ターを入れて返す。 このとき、各構造体のネットワークアドレスは I<node> と "
3106 "I<service> に一致し、 I<hints> で課されたすべての制限を満たすものとなる。 リ"
3107 "ンクリストの要素は I<ai_next> フィールドにより連結される。"
3108
3109 #. type: Plain text
3110 #: build/C/man3/getaddrinfo.3:328
3111 msgid ""
3112 "There are several reasons why the linked list may have more than one "
3113 "I<addrinfo> structure, including: the network host is multihomed, accessible "
3114 "over multiple protocols (e.g., both B<AF_INET> and B<AF_INET6>); or the same "
3115 "service is available from multiple socket types (one B<SOCK_STREAM> address "
3116 "and another B<SOCK_DGRAM> address, for example).  Normally, the application "
3117 "should try using the addresses in the order in which they are returned.  The "
3118 "sorting function used within B<getaddrinfo>()  is defined in RFC\\ 3484; the "
3119 "order can be tweaked for a particular system by editing I</etc/gai.conf> "
3120 "(available since glibc 2.5)."
3121 msgstr ""
3122 "リンクリストの I<addrinfo> 構造体は複数個になることもあり、その理由はいくつか"
3123 "ある。 ネットワークホストがマルチホームである、 複数のプロトコルでアクセスで"
3124 "きる (例えば B<AF_INET> と B<AF_INET6> の両方) 、 複数のソケット種別で同じ"
3125 "サービスが利用できる (例えば、ひとつが B<SOCK_STREM> アドレスで、もうひとつ"
3126 "が B<SOCK_DGRAM> アドレスである)、がある。 通常は、アプリケーションは返された"
3127 "順序でアドレスを試すべきである。 B<getaddrinfo>()  の中で使用される並べ替え関"
3128 "数は RFC\\ 3484 で定義されている。 特殊なシステムでは、 I</etc/gai.conf> を編"
3129 "集することで、この順序を微調整することができる (I</etc/gai.conf> は glibc "
3130 "2.5 以降で利用できる)。"
3131
3132 #.  In glibc prior to 2.3.4, the ai_canonname of each addrinfo
3133 #.  structure was set pointing to the canonical name; that was
3134 #.  more than POSIX.1-2001 specified, or other implementations provided.
3135 #.  MTK, Aug 05
3136 #. type: Plain text
3137 #: build/C/man3/getaddrinfo.3:343
3138 msgid ""
3139 "If I<hints.ai_flags> includes the B<AI_CANONNAME> flag, then the "
3140 "I<ai_canonname> field of the first of the I<addrinfo> structures in the "
3141 "returned list is set to point to the official name of the host."
3142 msgstr ""
3143 "I<hints.ai_flags> に B<AI_CANONNAME> フラグが含まれている場合、返されるリスト"
3144 "の最初の I<addrinfo> 構造体の I<ai_canonname> フィールドはホストの公式な名前"
3145 "を指すように設定される。"
3146
3147 #. type: Plain text
3148 #: build/C/man3/getaddrinfo.3:347
3149 msgid ""
3150 "The remaining fields of each returned I<addrinfo> structure are initialized "
3151 "as follows:"
3152 msgstr ""
3153 "返される各々の I<addrinfo> 構造体の残りのフィールドは以下のように初期化され"
3154 "る。"
3155
3156 #. type: IP
3157 #: build/C/man3/getaddrinfo.3:347 build/C/man3/getaddrinfo.3:370
3158 #: build/C/man3/getaddrinfo_a.3:191 build/C/man3/getaddrinfo_a.3:195
3159 #: build/C/man3/getaddrinfo_a.3:197 build/C/man3/inet_net_pton.3:207
3160 #: build/C/man3/inet_net_pton.3:213 build/C/man3/inet_net_pton.3:220
3161 #: build/C/man3/inet_net_pton.3:227 build/C/man3/inet_net_pton.3:234
3162 #: build/C/man7/ip.7:1001 build/C/man7/ip.7:1004 build/C/man7/ip.7:1007
3163 #: build/C/man7/ip.7:1010 build/C/man5/nsswitch.conf.5:144
3164 #: build/C/man5/nsswitch.conf.5:148 build/C/man7/unix.7:95
3165 #: build/C/man7/unix.7:120 build/C/man7/unix.7:136 build/C/man7/unix.7:162
3166 #: build/C/man7/unix.7:166 build/C/man7/unix.7:170
3167 #, no-wrap
3168 msgid "*"
3169 msgstr "*"
3170
3171 #. type: Plain text
3172 #: build/C/man3/getaddrinfo.3:370
3173 msgid ""
3174 "The I<ai_family>, I<ai_socktype>, and I<ai_protocol> fields return the "
3175 "socket creation parameters (i.e., these fields have the same meaning as the "
3176 "corresponding arguments of B<socket>(2)).  For example, I<ai_family> might "
3177 "return B<AF_INET> or B<AF_INET6>; I<ai_socktype> might return B<SOCK_DGRAM> "
3178 "or B<SOCK_STREAM>; and I<ai_protocol> returns the protocol for the socket."
3179 msgstr ""
3180 "I<ai_family>, I<ai_socktype>, I<ai_protocol> フィールドはソケット生成パラメー"
3181 "ターを返す (これらのフィールドの意味は B<socket>(2)  の同じ名前の引き数と同じ"
3182 "である)。 例えば、 I<ai_family> は B<AF_INET> や B<AF_INET6> を返し、 "
3183 "I<ai_socktype> は B<SOCK_DGRAM> や B<SOCK_STREAM> を返し、 I<ai_protocol> は"
3184 "そのソケットのプロトコルを返す。"
3185
3186 #. type: Plain text
3187 #: build/C/man3/getaddrinfo.3:377
3188 msgid ""
3189 "A pointer to the socket address is placed in the I<ai_addr> field, and the "
3190 "length of the socket address, in bytes, is placed in the I<ai_addrlen> field."
3191 msgstr ""
3192 "I<ai_addr> フィールドにはソケットアドレスへのポインターが書き込まれ、 "
3193 "I<ai_addrlen> フィールドにはソケットアドレスの長さがバイト単位で書き込まれ"
3194 "る。"
3195
3196 #. type: Plain text
3197 #: build/C/man3/getaddrinfo.3:396
3198 msgid ""
3199 "If I<hints.ai_flags> includes the B<AI_ADDRCONFIG> flag, then IPv4 addresses "
3200 "are returned in the list pointed to by I<res> only if the local system has "
3201 "at least one IPv4 address configured, and IPv6 addresses are returned only "
3202 "if the local system has at least one IPv6 address configured.  The loopback "
3203 "address is not considered for this case as valid as a configured address.  "
3204 "This flag is useful on, for example, IPv4-only systems, to ensure that "
3205 "B<getaddrinfo>()  does not return IPv6 socket addresses that would always "
3206 "fail in B<connect>(2)  or B<bind>(2)."
3207 msgstr ""
3208 "I<hints.ai_flags> が B<AI_ADDRCONFIG> を含む場合、 I<res> が指すリストには、"
3209 "ローカルシステムに最低一つの IPv4 アドレスが設定されている場合のみ IPv4 アド"
3210 "レスが返され、 ローカルシステムに最低一つの IPv6 アドレスが設定されている場合"
3211 "にのみ IPv6 アドレスが返される。 なお、この場合には、ループバックアドレスは有"
3212 "効に設定されたアドレスとはみなされない。 このフラグは、例えば、IPv4 だけのシ"
3213 "ステムで、 B<getaddrinfo>() が必ず IPv6 ソケットアドレスを返さないことを保証"
3214 "するのに役立つ。 IPv4 だけのシステムでは、IPv6 アドレスは B<connect>(2) や "
3215 "B<bind>(2) で必ず失敗することになる。"
3216
3217 #. type: Plain text
3218 #: build/C/man3/getaddrinfo.3:421
3219 msgid ""
3220 "If I<hints.ai_flags> specifies the B<AI_V4MAPPED> flag, and I<hints."
3221 "ai_family> was specified as B<AF_INET6>, and no matching IPv6 addresses "
3222 "could be found, then return IPv4-mapped IPv6 addresses in the list pointed "
3223 "to by I<res>.  If both B<AI_V4MAPPED> and B<AI_ALL> are specified in I<hints."
3224 "ai_flags>, then return both IPv6 and IPv4-mapped IPv6 addresses in the list "
3225 "pointed to by I<res>.  B<AI_ALL> is ignored if B<AI_V4MAPPED> is not also "
3226 "specified."
3227 msgstr ""
3228 "I<hints.ai_flags> に B<AI_V4MAPPED> が指定されていて、 I<hints.ai_family> に "
3229 "B<AF_INET6> が指定され、 マッチする IPv6 アドレスが見つからなかった場合、 "
3230 "I<res> が指すリストには IPv4-mapped IPv6 アドレスが返される。 I<hints."
3231 "ai_flags> に B<AI_V4MAPPED> と B<AI_ALL> の両方が指定されている場合、 I<res> "
3232 "が指すリストには IPv6 アドレスと IPv4-mapped IPv6 アドレスの 両方が返され"
3233 "る。 B<AI_V4MAPPED> が指定されていない場合、 B<AI_ALL> は無視される。"
3234
3235 #. type: Plain text
3236 #: build/C/man3/getaddrinfo.3:427
3237 msgid ""
3238 "The B<freeaddrinfo>()  function frees the memory that was allocated for the "
3239 "dynamically allocated linked list I<res>."
3240 msgstr ""
3241 "B<freeaddrinfo>()  関数は、 リンクリスト I<res> に対して動的に割り当てられた"
3242 "メモリーを解放する。"
3243
3244 #. type: SS
3245 #: build/C/man3/getaddrinfo.3:427
3246 #, no-wrap
3247 msgid "Extensions to getaddrinfo() for Internationalized Domain Names"
3248 msgstr "国際化ドメイン名のための getaddrinfo() の拡張"
3249
3250 #. type: Plain text
3251 #: build/C/man3/getaddrinfo.3:436
3252 msgid ""
3253 "Starting with glibc 2.3.4, B<getaddrinfo>()  has been extended to "
3254 "selectively allow the incoming and outgoing hostnames to be transparently "
3255 "converted to and from the Internationalized Domain Name (IDN) format (see "
3256 "RFC 3490, I<Internationalizing Domain Names in Applications (IDNA)>).  Four "
3257 "new flags are defined:"
3258 msgstr ""
3259 "glibc 2.3.4 から、 B<getaddrinfo>()  は入出力するホスト名を透過的に国際化ドメ"
3260 "イン名 (IDN) 形式 (RFC 3490 の I<Internationalizing Domain Names in "
3261 "Applications (IDNA)> を参照のこと) と変換することを選択的に認めるように拡張さ"
3262 "れている。 4 つの新しいフラグが定義されている:"
3263
3264 #. type: TP
3265 #: build/C/man3/getaddrinfo.3:436
3266 #, no-wrap
3267 msgid "B<AI_IDN>"
3268 msgstr "B<AI_IDN>"
3269
3270 #. type: Plain text
3271 #: build/C/man3/getaddrinfo.3:442
3272 msgid ""
3273 "If this flag is specified, then the node name given in I<node> is converted "
3274 "to IDN format if necessary.  The source encoding is that of the current "
3275 "locale."
3276 msgstr ""
3277 "このフラグが指定されると、 I<node> で与えられたノード名は必要があれば IDN 形"
3278 "式に変換される。 ソース符号化形式は現在のロケールのものである。"
3279
3280 #.  Implementation Detail:
3281 #.  To minimize effects on system performance the implementation might
3282 #.  want to check whether the input string contains any non-ASCII
3283 #.  characters.  If there are none the IDN step can be skipped completely.
3284 #.  On systems which allow not-ASCII safe encodings for a locale this
3285 #.  might be a problem.
3286 #. type: Plain text
3287 #: build/C/man3/getaddrinfo.3:454
3288 msgid ""
3289 "If the input name contains non-ASCII characters, then the IDN encoding is "
3290 "used.  Those parts of the node name (delimited by dots) that contain non-"
3291 "ASCII characters are encoded using ASCII Compatible Encoding (ACE)  before "
3292 "being passed to the name resolution functions."
3293 msgstr ""
3294 "入力名に非 ASCII 文字が含まれている場合、 IDN 符号化形式が使われる。 非 "
3295 "ASCII 文字が含まれている(ピリオドで区切られる)部分ノード名は、 名前解決機能に"
3296 "渡される前に ASCII 互換符号化形式 (ACE) を使って 符号化される。"
3297
3298 #. type: TP
3299 #: build/C/man3/getaddrinfo.3:454
3300 #, no-wrap
3301 msgid "B<AI_CANONIDN>"
3302 msgstr "B<AI_CANONIDN>"
3303
3304 #. type: Plain text
3305 #: build/C/man3/getaddrinfo.3:466
3306 msgid ""
3307 "After a successful name lookup, and if the B<AI_CANONNAME> flag was "
3308 "specified, B<getaddrinfo>()  will return the canonical name of the node "
3309 "corresponding to the I<addrinfo> structure value passed back.  The return "
3310 "value is an exact copy of the value returned by the name resolution function."
3311 msgstr ""
3312 "B<AI_CANONNAME> が指定されている場合、 B<getaddrinfo>()  は名前の検索に成功し"
3313 "た後、 返された I<addrinfo> 構造体に対応するノードの正規名を返す。 返り値は名"
3314 "前解決機能から返された値の正確なコピーである。"
3315
3316 #. Implementation Detail:
3317 #. If no component of the returned name starts with xn\-\- the IDN
3318 #. step can be skipped, therefore avoiding unnecessary slowdowns.
3319 #. type: Plain text
3320 #: build/C/man3/getaddrinfo.3:479
3321 msgid ""
3322 "If the name is encoded using ACE, then it will contain the I<xn--> prefix "
3323 "for one or more components of the name.  To convert these components into a "
3324 "readable form the B<AI_CANONIDN> flag can be passed in addition to "
3325 "B<AI_CANONNAME>.  The resulting string is encoded using the current locale's "
3326 "encoding."
3327 msgstr ""
3328 "B<AI_CANONIDN> 名前が ACE で符号化されている場合、一つまたは複数の名前の構成"
3329 "要素の先頭に I<xn--> を含んでいる。 これらの構成要素を読み込み可能な形に変換"
3330 "するために、 B<AI_CANONNAME> と共に B<AI_CANONIDN> フラグを渡すことも出来"
3331 "る。 返される文字列は現在のロケールの符号化形式で符号化されている。"
3332
3333 #. type: TP
3334 #: build/C/man3/getaddrinfo.3:479
3335 #, no-wrap
3336 msgid "B<AI_IDN_ALLOW_UNASSIGNED>, B<AI_IDN_USE_STD3_ASCII_RULES>"
3337 msgstr "B<AI_IDN_ALLOW_UNASSIGNED>, B<AI_IDN_USE_STD3_ASCII_RULES>"
3338
3339 #. type: Plain text
3340 #: build/C/man3/getaddrinfo.3:486 build/C/man3/getnameinfo.3:139
3341 msgid ""
3342 "Setting these flags will enable the IDNA_ALLOW_UNASSIGNED (allow unassigned "
3343 "Unicode code points) and IDNA_USE_STD3_ASCII_RULES (check output to make "
3344 "sure it is a STD3 conforming hostname)  flags respectively to be used in the "
3345 "IDNA handling."
3346 msgstr ""
3347 "これらのフラグをセットすると、IDNA 処理で使用されるフラグ "
3348 "IDNA_ALLOW_UNASSIGNED (未割り当ての Unicode のコードポイントを許容) と "
3349 "IDNA_USE_STD3_ASCII_RULES (出力が STD3 準拠のホスト名かをチェックする)  がそ"
3350 "れぞれ有効になる。"
3351
3352 #. type: SH
3353 #: build/C/man3/getaddrinfo.3:486 build/C/man3/getaddrinfo_a.3:242
3354 #: build/C/man3/gethostbyname.3:280 build/C/man3/getipnodebyname.3:186
3355 #: build/C/man3/getnameinfo.3:139 build/C/man3/getnetent.3:130
3356 #: build/C/man3/getnetent_r.3:118 build/C/man2/getpeername.2:68
3357 #: build/C/man3/getprotoent.3:123 build/C/man3/getprotoent_r.3:108
3358 #: build/C/man3/getservent.3:142 build/C/man3/getservent_r.3:107
3359 #: build/C/man3/inet_net_pton.3:130 build/C/man3/inet_ntop.3:83
3360 #: build/C/man3/inet_pton.3:116 build/C/man3/rcmd.3:239
3361 #: build/C/man3/resolver.3:245 build/C/man3/setnetgrent.3:86
3362 #: build/C/man2/shutdown.2:69
3363 #, no-wrap
3364 msgid "RETURN VALUE"
3365 msgstr "返り値"
3366
3367 #.  FIXME glibc defines the following additional errors, some which
3368 #.  can probably be returned by getaddrinfo(); they need to
3369 #.  be documented.
3370 #.  #ifdef __USE_GNU
3371 #.  #define EAI_INPROGRESS  -100  /* Processing request in progress.  */
3372 #.  #define EAI_CANCELED    -101  /* Request canceled.  */
3373 #.  #define EAI_NOTCANCELED -102  /* Request not canceled.  */
3374 #.  #define EAI_ALLDONE     -103  /* All requests done.  */
3375 #.  #define EAI_INTR        -104  /* Interrupted by a signal.  */
3376 #.  #define EAI_IDN_ENCODE  -105  /* IDN encoding failed.  */
3377 #.  #endif
3378 #. type: Plain text
3379 #: build/C/man3/getaddrinfo.3:500
3380 msgid ""
3381 "B<getaddrinfo>()  returns 0 if it succeeds, or one of the following nonzero "
3382 "error codes:"
3383 msgstr ""
3384 "B<getaddrinfo>()  は成功すると 0 を返し、失敗すると以下の非 0 のエラーコード"
3385 "のいずれかを返す。"
3386
3387 #. type: TP
3388 #: build/C/man3/getaddrinfo.3:500
3389 #, no-wrap
3390 msgid "B<EAI_ADDRFAMILY>"
3391 msgstr "B<EAI_ADDRFAMILY>"
3392
3393 #.  Not in SUSv3
3394 #. type: Plain text
3395 #: build/C/man3/getaddrinfo.3:505
3396 msgid ""
3397 "The specified network host does not have any network addresses in the "
3398 "requested address family."
3399 msgstr ""
3400 "指定されたネットワークホストには、 要求されたアドレスファミリーのネットワーク"
3401 "アドレスがない。"
3402
3403 #. type: TP
3404 #: build/C/man3/getaddrinfo.3:505 build/C/man3/getaddrinfo_a.3:247
3405 #: build/C/man3/getaddrinfo_a.3:264 build/C/man3/getnameinfo.3:155
3406 #, no-wrap
3407 msgid "B<EAI_AGAIN>"
3408 msgstr "B<EAI_AGAIN>"
3409
3410 #. type: Plain text
3411 #: build/C/man3/getaddrinfo.3:509
3412 msgid ""
3413 "The name server returned a temporary failure indication.  Try again later."
3414 msgstr ""
3415 "ネームサーバーから一時的な失敗 (temporary failure)  を意味する返事が返され"
3416 "た。後でもう一度試してみよ。"
3417
3418 #. type: TP
3419 #: build/C/man3/getaddrinfo.3:509 build/C/man3/getnameinfo.3:159
3420 #, no-wrap
3421 msgid "B<EAI_BADFLAGS>"
3422 msgstr "B<EAI_BADFLAGS>"
3423
3424 #. type: Plain text
3425 #: build/C/man3/getaddrinfo.3:519
3426 msgid ""
3427 "I<hints.ai_flags> contains invalid flags; or, I<hints.ai_flags> included "
3428 "B<AI_CANONNAME> and I<name> was NULL."
3429 msgstr ""
3430 "I<hints.ai_flags> のフラグに不正なフラグが含まれている。または、 I<hints."
3431 "ai_flags> に B<AI_CANONNAME> が含まれていて、かつ I<name> が NULL であった。"
3432
3433 #. type: TP
3434 #: build/C/man3/getaddrinfo.3:519 build/C/man3/getnameinfo.3:164
3435 #, no-wrap
3436 msgid "B<EAI_FAIL>"
3437 msgstr "B<EAI_FAIL>"
3438
3439 #. type: Plain text
3440 #: build/C/man3/getaddrinfo.3:522
3441 msgid "The name server returned a permanent failure indication."
3442 msgstr ""
3443 "ネームサーバーから恒久的な失敗 (permanent failure)  を意味する返事が返され"
3444 "た。"
3445
3446 #. type: TP
3447 #: build/C/man3/getaddrinfo.3:522 build/C/man3/getnameinfo.3:167
3448 #, no-wrap
3449 msgid "B<EAI_FAMILY>"
3450 msgstr "B<EAI_FAMILY>"
3451
3452 #. type: Plain text
3453 #: build/C/man3/getaddrinfo.3:525
3454 msgid "The requested address family is not supported."
3455 msgstr "要求されたアドレスファミリーがサポートされていない。"
3456
3457 #. type: TP
3458 #: build/C/man3/getaddrinfo.3:525 build/C/man3/getaddrinfo_a.3:252
3459 #: build/C/man3/getnameinfo.3:171
3460 #, no-wrap
3461 msgid "B<EAI_MEMORY>"
3462 msgstr "B<EAI_MEMORY>"
3463
3464 #. type: Plain text
3465 #: build/C/man3/getaddrinfo.3:528 build/C/man3/getaddrinfo_a.3:255
3466 #: build/C/man3/getnameinfo.3:174 build/C/man7/unix.7:444
3467 msgid "Out of memory."
3468 msgstr "メモリーが足りない。"
3469
3470 #. type: TP
3471 #: build/C/man3/getaddrinfo.3:528
3472 #, no-wrap
3473 msgid "B<EAI_NODATA>"
3474 msgstr "B<EAI_NODATA>"
3475
3476 #.  Not in SUSv3
3477 #. type: Plain text
3478 #: build/C/man3/getaddrinfo.3:533
3479 msgid ""
3480 "The specified network host exists, but does not have any network addresses "
3481 "defined."
3482 msgstr ""
3483 "指定されたネットワークホストは存在するが、 ネットワークアドレスがひとつも定義"
3484 "されていない。"
3485
3486 #. type: TP
3487 #: build/C/man3/getaddrinfo.3:533 build/C/man3/getnameinfo.3:174
3488 #, no-wrap
3489 msgid "B<EAI_NONAME>"
3490 msgstr "B<EAI_NONAME>"
3491
3492 #. type: Plain text
3493 #: build/C/man3/getaddrinfo.3:550
3494 msgid ""
3495 "The I<node> or I<service> is not known; or both I<node> and I<service> are "
3496 "NULL; or B<AI_NUMERICSERV> was specified in I<hints.ai_flags> and I<service> "
3497 "was not a numeric port-number string."
3498 msgstr ""
3499 "I<node> と I<service> のどちらかが不明、または I<node> と I<service> の両方"
3500 "が NULL だった場合、または B<AI_NUMERICSERV> が I<hints.ai_flags> に指定され"
3501 "ていて、 I<hints.ai_flags> と I<service> が数値のポート番号の文字列でない。"
3502
3503 #. type: TP
3504 #: build/C/man3/getaddrinfo.3:550
3505 #, no-wrap
3506 msgid "B<EAI_SERVICE>"
3507 msgstr "B<EAI_SERVICE>"
3508
3509 #. type: Plain text
3510 #: build/C/man3/getaddrinfo.3:571
3511 msgid ""
3512 "The requested service is not available for the requested socket type.  It "
3513 "may be available through another socket type.  For example, this error could "
3514 "occur if I<service> was \"shell\" (a service available only on stream "
3515 "sockets), and either I<hints.ai_protocol> was B<IPPROTO_UDP>, or I<hints."
3516 "ai_socktype> was B<SOCK_DGRAM>; or the error could occur if I<service> was "
3517 "not NULL, and I<hints.ai_socktype> was B<SOCK_RAW> (a socket type that does "
3518 "not support the concept of services)."
3519 msgstr ""
3520 "要求されたサービスは、要求されたソケットタイプでは利用できない。 他のソケット"
3521 "タイプでなら利用可能かもしれない。 このエラーが発生する例としては、 "
3522 "I<service> が \"shell\" (ストリームソケットでのみ利用できるサービス) で、 "
3523 "I<hints.ai_protocol> に B<IPPROTO_UDP> が指定されたり、 I<hints.ai_socktype> "
3524 "に B<SOCK_DGRAM> が指定されたりした場合がある。 また、 I<service> が NULL 以"
3525 "外で、 I<hints.ai_socktype> に B<SOCK_RAW> (サービスの考え方をサポートしてい"
3526 "ないソケット種別)  が指定された場合にも、このエラーが発生する。"
3527
3528 #. type: TP
3529 #: build/C/man3/getaddrinfo.3:571
3530 #, no-wrap
3531 msgid "B<EAI_SOCKTYPE>"
3532 msgstr "B<EAI_SOCKTYPE>"
3533
3534 #. type: Plain text
3535 #: build/C/man3/getaddrinfo.3:583
3536 msgid ""
3537 "The requested socket type is not supported.  This could occur, for example, "
3538 "if I<hints.ai_socktype> and I<hints.ai_protocol> are inconsistent (e.g., "
3539 "B<SOCK_DGRAM> and B<IPPROTO_TCP>, respectively)."
3540 msgstr ""
3541 "要求されたソケットタイプがサポートされていない。 このエラーが発生する例として"
3542 "は、 I<hints.ai_socktype> と I<hints.ai_protocol> が矛盾している場合 (例えば "
3543 "I<hints.ai_socktype> が B<SOCK_DGRAM> で I<hints.ai_protocol> が "
3544 "B<IPPROTO_TCP>)  がある。"
3545
3546 #. type: TP
3547 #: build/C/man3/getaddrinfo.3:583 build/C/man3/getaddrinfo_a.3:255
3548 #: build/C/man3/getnameinfo.3:187
3549 #, no-wrap
3550 msgid "B<EAI_SYSTEM>"
3551 msgstr "B<EAI_SYSTEM>"
3552
3553 #. type: Plain text
3554 #: build/C/man3/getaddrinfo.3:588
3555 msgid "Other system error, check I<errno> for details."
3556 msgstr "その他のシステムエラー。詳しくは I<errno> を調べること。"
3557
3558 #. type: Plain text
3559 #: build/C/man3/getaddrinfo.3:593
3560 msgid ""
3561 "The B<gai_strerror>()  function translates these error codes to a human "
3562 "readable string, suitable for error reporting."
3563 msgstr ""
3564 "B<gai_strerror>()  関数を用いると、これらのエラーコードを人間に可読な文字列に"
3565 "変換できるので、 エラー報告に適するだろう。"
3566
3567 #. type: Plain text
3568 #: build/C/man3/getaddrinfo.3:600
3569 msgid ""
3570 "POSIX.1-2001.  The B<getaddrinfo>()  function is documented in RFC\\ 2553."
3571 msgstr "POSIX.1-2001.  B<getaddrinfo>()  関数は RFC 2553 に記載されている。"
3572
3573 #. type: Plain text
3574 #: build/C/man3/getaddrinfo.3:605
3575 msgid ""
3576 "B<getaddrinfo>()  supports the I<address>B<%>I<scope-id> notation for "
3577 "specifying the IPv6 scope-ID."
3578 msgstr ""
3579 "B<getaddrinfo>()  は、IPv6 scope-ID を指定するために I<address>B<%>I<scope-"
3580 "id> 記法をサポートしている。"
3581
3582 #. type: Plain text
3583 #: build/C/man3/getaddrinfo.3:613
3584 msgid ""
3585 "B<AI_ADDRCONFIG>, B<AI_ALL>, and B<AI_V4MAPPED> are available since glibc "
3586 "2.3.3.  B<AI_NUMERICSERV> is available since glibc 2.3.4."
3587 msgstr ""
3588 "B<AI_ADDRCONFIG>, B<AI_ALL>, B<AI_V4MAPPED> は glibc 2.3.3 以降で利用可能であ"
3589 "る。 B<AI_NUMERICSERV> は glibc 2.3.4 以降で利用可能である。"
3590
3591 #. type: Plain text
3592 #: build/C/man3/getaddrinfo.3:623
3593 msgid ""
3594 "According to POSIX.1-2001, specifying I<hints> as NULL should cause "
3595 "I<ai_flags> to be assumed as 0.  The GNU C library instead assumes a value "
3596 "of B<(AI_V4MAPPED\\ |\\ AI_ADDRCONFIG)> for this case, since this value is "
3597 "considered an improvement on the specification."
3598 msgstr ""
3599 "POSIX.1-2001 によると、 I<hints> に NULL が指定された場合、 I<ai_flags> を 0 "
3600 "とみなすべきとされている。 GNU C ライブラリでは、この場合に、代わりに "
3601 "I<ai_flags> を B<(AI_V4MAPPED\\ |\\ AI_ADDRCONFIG)> とみなすようになってい"
3602 "る。 この値の方が標準規格の改善になると考えられているからである。"
3603
3604 #.  getnameinfo.3 refers to this example
3605 #.  socket.2 refers to this example
3606 #.  bind.2 refers to this example
3607 #.  connect.2 refers to this example
3608 #.  recvfrom.2 refers to this example
3609 #.  sendto.2 refers to this example
3610 #. type: Plain text
3611 #: build/C/man3/getaddrinfo.3:637
3612 msgid ""
3613 "The following programs demonstrate the use of B<getaddrinfo>(), "
3614 "B<gai_strerror>(), B<freeaddrinfo>(), and B<getnameinfo>(3).  The programs "
3615 "are an echo server and client for UDP datagrams."
3616 msgstr ""
3617 "以下のプログラムは、 B<getaddrinfo>(), B<gai_strerror>(), B<freeaddrinfo>(), "
3618 "B<getnameinfo>(3)  の使い方を示したものである。 プログラムは UDP データグラム"
3619 "の echo サーバとクライアントである。"
3620
3621 #. type: SS
3622 #: build/C/man3/getaddrinfo.3:637
3623 #, no-wrap
3624 msgid "Server program"
3625 msgstr "サーバのプログラム"
3626
3627 #. type: Plain text
3628 #: build/C/man3/getaddrinfo.3:647
3629 #, no-wrap
3630 msgid ""
3631 "#include E<lt>sys/types.hE<gt>\n"
3632 "#include E<lt>stdio.hE<gt>\n"
3633 "#include E<lt>stdlib.hE<gt>\n"
3634 "#include E<lt>unistd.hE<gt>\n"
3635 "#include E<lt>string.hE<gt>\n"
3636 "#include E<lt>sys/socket.hE<gt>\n"
3637 "#include E<lt>netdb.hE<gt>\n"
3638 msgstr ""
3639 "#include E<lt>sys/types.hE<gt>\n"
3640 "#include E<lt>stdio.hE<gt>\n"
3641 "#include E<lt>stdlib.hE<gt>  \n"
3642 "#include E<lt>unistd.hE<gt>\n"
3643 "#include E<lt>string.hE<gt>\n"
3644 "#include E<lt>sys/socket.hE<gt>\n"
3645 "#include E<lt>netdb.hE<gt>\n"
3646
3647 #. type: Plain text
3648 #: build/C/man3/getaddrinfo.3:649 build/C/man3/getaddrinfo.3:744
3649 #, no-wrap
3650 msgid "#define BUF_SIZE 500\n"
3651 msgstr "#define BUF_SIZE 500\n"
3652
3653 #. type: Plain text
3654 #: build/C/man3/getaddrinfo.3:660
3655 #, no-wrap
3656 msgid ""
3657 "int\n"
3658 "main(int argc, char *argv[])\n"
3659 "{\n"
3660 "    struct addrinfo hints;\n"
3661 "    struct addrinfo *result, *rp;\n"
3662 "    int sfd, s;\n"
3663 "    struct sockaddr_storage peer_addr;\n"
3664 "    socklen_t peer_addr_len;\n"
3665 "    ssize_t nread;\n"
3666 "    char buf[BUF_SIZE];\n"
3667 msgstr ""
3668 "int\n"
3669 "main(int argc, char *argv[])\n"
3670 "{\n"
3671 "    struct addrinfo hints;\n"
3672 "    struct addrinfo *result, *rp;\n"
3673 "    int sfd, s;\n"
3674 "    struct sockaddr_storage peer_addr;\n"
3675 "    socklen_t peer_addr_len;\n"
3676 "    ssize_t nread;\n"
3677 "    char buf[BUF_SIZE];\n"
3678
3679 #. type: Plain text
3680 #: build/C/man3/getaddrinfo.3:665
3681 #, no-wrap
3682 msgid ""
3683 "    if (argc != 2) {\n"
3684 "        fprintf(stderr, \"Usage: %s port\\en\", argv[0]);\n"
3685 "        exit(EXIT_FAILURE);\n"
3686 "    }\n"
3687 msgstr ""
3688 "    if (argc != 2) {\n"
3689 "        fprintf(stderr, \"Usage: %s port\\en\", argv[0]);\n"
3690 "        exit(EXIT_FAILURE);\n"
3691 "    }\n"
3692
3693 #. type: Plain text
3694 #: build/C/man3/getaddrinfo.3:674
3695 #, no-wrap
3696 msgid ""
3697 "    memset(&hints, 0, sizeof(struct addrinfo));\n"
3698 "    hints.ai_family = AF_UNSPEC;    /* Allow IPv4 or IPv6 */\n"
3699 "    hints.ai_socktype = SOCK_DGRAM; /* Datagram socket */\n"
3700 "    hints.ai_flags = AI_PASSIVE;    /* For wildcard IP address */\n"
3701 "    hints.ai_protocol = 0;          /* Any protocol */\n"
3702 "    hints.ai_canonname = NULL;\n"
3703 "    hints.ai_addr = NULL;\n"
3704 "    hints.ai_next = NULL;\n"
3705 msgstr ""
3706 "    memset(&hints, 0, sizeof(struct addrinfo));\n"
3707 "    hints.ai_family = AF_UNSPEC;    /* Allow IPv4 or IPv6 */\n"
3708 "    hints.ai_socktype = SOCK_DGRAM; /* Datagram socket */\n"
3709 "    hints.ai_flags = AI_PASSIVE;    /* For wildcard IP address */\n"
3710 "    hints.ai_protocol = 0;          /* Any protocol */\n"
3711 "    hints.ai_canonname = NULL;\n"
3712 "    hints.ai_addr = NULL;\n"
3713 "    hints.ai_next = NULL;\n"
3714
3715 #. type: Plain text
3716 #: build/C/man3/getaddrinfo.3:680
3717 #, no-wrap
3718 msgid ""
3719 "    s = getaddrinfo(NULL, argv[1], &hints, &result);\n"
3720 "    if (s != 0) {\n"
3721 "        fprintf(stderr, \"getaddrinfo: %s\\en\", gai_strerror(s));\n"
3722 "        exit(EXIT_FAILURE);\n"
3723 "    }\n"
3724 msgstr ""
3725 "    s = getaddrinfo(NULL, argv[1], &hints, &result);\n"
3726 "    if (s != 0) {\n"
3727 "        fprintf(stderr, \"getaddrinfo: %s\\en\", gai_strerror(s));\n"
3728 "        exit(EXIT_FAILURE);\n"
3729 "    }\n"
3730
3731 #. type: Plain text
3732 #: build/C/man3/getaddrinfo.3:685
3733 #, no-wrap
3734 msgid ""
3735 "    /* getaddrinfo() returns a list of address structures.\n"
3736 "       Try each address until we successfully bind(2).\n"
3737 "       If socket(2) (or bind(2)) fails, we (close the socket\n"
3738 "       and) try the next address. */\n"
3739 msgstr ""
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
3745 #. type: Plain text
3746 #: build/C/man3/getaddrinfo.3:691
3747 #, no-wrap
3748 msgid ""
3749 "    for (rp = result; rp != NULL; rp = rp-E<gt>ai_next) {\n"
3750 "        sfd = socket(rp-E<gt>ai_family, rp-E<gt>ai_socktype,\n"
3751 "                rp-E<gt>ai_protocol);\n"
3752 "        if (sfd == -1)\n"
3753 "            continue;\n"
3754 msgstr ""
3755 "    for (rp = result; rp != NULL; rp = rp-E<gt>ai_next) {\n"
3756 "        sfd = socket(rp-E<gt>ai_family, rp-E<gt>ai_socktype, \n"
3757 "                rp-E<gt>ai_protocol);\n"
3758 "        if (sfd == -1)\n"
3759 "            continue;\n"
3760
3761 #. type: Plain text
3762 #: build/C/man3/getaddrinfo.3:694
3763 #, no-wrap
3764 msgid ""
3765 "        if (bind(sfd, rp-E<gt>ai_addr, rp-E<gt>ai_addrlen) == 0)\n"
3766 "            break;                  /* Success */\n"
3767 msgstr ""
3768 "        if (bind(sfd, rp-E<gt>ai_addr, rp-E<gt>ai_addrlen) == 0)\n"
3769 "            break;                  /* Success */\n"
3770
3771 #. type: Plain text
3772 #: build/C/man3/getaddrinfo.3:697 build/C/man3/getaddrinfo.3:790
3773 #, no-wrap
3774 msgid ""
3775 "        close(sfd);\n"
3776 "    }\n"
3777 msgstr ""
3778 "        close(sfd);\n"
3779 "    }\n"
3780
3781 #. type: Plain text
3782 #: build/C/man3/getaddrinfo.3:702
3783 #, no-wrap
3784 msgid ""
3785 "    if (rp == NULL) {               /* No address succeeded */\n"
3786 "        fprintf(stderr, \"Could not bind\\en\");\n"
3787 "        exit(EXIT_FAILURE);\n"
3788 "    }\n"
3789 msgstr ""
3790 "    if (rp == NULL) {               /* No address succeeded */\n"
3791 "        fprintf(stderr, \"Could not bind\\en\");\n"
3792 "        exit(EXIT_FAILURE);\n"
3793 "    }\n"
3794
3795 #. type: Plain text
3796 #: build/C/man3/getaddrinfo.3:704 build/C/man3/getaddrinfo.3:797
3797 #, no-wrap
3798 msgid "    freeaddrinfo(result);           /* No longer needed */\n"
3799 msgstr "    freeaddrinfo(result);           /* No longer needed */\n"
3800
3801 #. type: Plain text
3802 #: build/C/man3/getaddrinfo.3:706
3803 #, no-wrap
3804 msgid "    /* Read datagrams and echo them back to sender */\n"
3805 msgstr "    /* Read datagrams and echo them back to sender */\n"
3806
3807 #. type: Plain text
3808 #: build/C/man3/getaddrinfo.3:713
3809 #, no-wrap
3810 msgid ""
3811 "    for (;;) {\n"
3812 "        peer_addr_len = sizeof(struct sockaddr_storage);\n"
3813 "        nread = recvfrom(sfd, buf, BUF_SIZE, 0,\n"
3814 "                (struct sockaddr *) &peer_addr, &peer_addr_len);\n"
3815 "        if (nread == -1)\n"
3816 "            continue;               /* Ignore failed request */\n"
3817 msgstr ""
3818 "    for (;;) {\n"
3819 "        peer_addr_len = sizeof(struct sockaddr_storage);\n"
3820 "        nread = recvfrom(sfd, buf, BUF_SIZE, 0,\n"
3821 "                (struct sockaddr *) &peer_addr, &peer_addr_len);\n"
3822 "        if (nread == -1)\n"
3823 "            continue;               /* Ignore failed request */\n"
3824
3825 #. type: Plain text
3826 #: build/C/man3/getaddrinfo.3:715
3827 #, no-wrap
3828 msgid "        char host[NI_MAXHOST], service[NI_MAXSERV];\n"
3829 msgstr "        char host[NI_MAXHOST], service[NI_MAXSERV];\n"
3830
3831 #. type: Plain text
3832 #: build/C/man3/getaddrinfo.3:724
3833 #, no-wrap
3834 msgid ""
3835 "        s = getnameinfo((struct sockaddr *) &peer_addr,\n"
3836 "                        peer_addr_len, host, NI_MAXHOST,\n"
3837 "                        service, NI_MAXSERV, NI_NUMERICSERV);\n"
3838 "       if (s == 0)\n"
3839 "            printf(\"Received %zd bytes from %s:%s\\en\",\n"
3840 "                    nread, host, service);\n"
3841 "        else\n"
3842 "            fprintf(stderr, \"getnameinfo: %s\\en\", gai_strerror(s));\n"
3843 msgstr ""
3844 "        s = getnameinfo((struct sockaddr *) &peer_addr,\n"
3845 "                        peer_addr_len, host, NI_MAXHOST,\n"
3846 "                        service, NI_MAXSERV, NI_NUMERICSERV);\n"
3847 "       if (s == 0)\n"
3848 "            printf(\"Received %zd bytes from %s:%s\\en\",\n"
3849 "                    nread, host, service);\n"
3850 "        else\n"
3851 "            fprintf(stderr, \"getnameinfo: %s\\en\", gai_strerror(s));\n"
3852
3853 #. type: Plain text
3854 #: build/C/man3/getaddrinfo.3:731
3855 #, no-wrap
3856 msgid ""
3857 "        if (sendto(sfd, buf, nread, 0,\n"
3858 "                    (struct sockaddr *) &peer_addr,\n"
3859 "                    peer_addr_len) != nread)\n"
3860 "            fprintf(stderr, \"Error sending response\\en\");\n"
3861 "    }\n"
3862 "}\n"
3863 msgstr ""
3864 "        if (sendto(sfd, buf, nread, 0,\n"
3865 "                    (struct sockaddr *) &peer_addr,\n"
3866 "                    peer_addr_len) != nread)\n"
3867 "            fprintf(stderr, \"Error sending response\\en\");\n"
3868 "    }\n"
3869 "}\n"
3870
3871 #. type: SS
3872 #: build/C/man3/getaddrinfo.3:732
3873 #, no-wrap
3874 msgid "Client program"
3875 msgstr "クライアントのプログラム"
3876
3877 #. type: Plain text
3878 #: build/C/man3/getaddrinfo.3:742
3879 #, no-wrap
3880 msgid ""
3881 "#include E<lt>sys/types.hE<gt>\n"
3882 "#include E<lt>sys/socket.hE<gt>\n"
3883 "#include E<lt>netdb.hE<gt>\n"
3884 "#include E<lt>stdio.hE<gt>\n"
3885 "#include E<lt>stdlib.hE<gt>\n"
3886 "#include E<lt>unistd.hE<gt>\n"
3887 "#include E<lt>string.hE<gt>\n"
3888 msgstr ""
3889 "#include E<lt>sys/types.hE<gt>\n"
3890 "#include E<lt>sys/socket.hE<gt>\n"
3891 "#include E<lt>netdb.hE<gt>\n"
3892 "#include E<lt>stdio.hE<gt>\n"
3893 "#include E<lt>stdlib.hE<gt>\n"
3894 "#include E<lt>unistd.hE<gt>\n"
3895 "#include E<lt>string.hE<gt>\n"
3896
3897 #. type: Plain text
3898 #: build/C/man3/getaddrinfo.3:754
3899 #, no-wrap
3900 msgid ""
3901 "int\n"
3902 "main(int argc, char *argv[])\n"
3903 "{\n"
3904 "    struct addrinfo hints;\n"
3905 "    struct addrinfo *result, *rp;\n"
3906 "    int sfd, s, j;\n"
3907 "    size_t len;\n"
3908 "    ssize_t nread;\n"
3909 "    char buf[BUF_SIZE];\n"
3910 msgstr ""
3911 "int\n"
3912 "main(int argc, char *argv[])\n"
3913 "{\n"
3914 "    struct addrinfo hints;\n"
3915 "    struct addrinfo *result, *rp;\n"
3916 "    int sfd, s, j;\n"
3917 "    size_t len;\n"
3918 "    ssize_t nread;\n"
3919 "    char buf[BUF_SIZE];\n"
3920
3921 #. type: Plain text
3922 #: build/C/man3/getaddrinfo.3:759
3923 #, no-wrap
3924 msgid ""
3925 "    if (argc E<lt> 3) {\n"
3926 "        fprintf(stderr, \"Usage: %s host port msg...\\en\", argv[0]);\n"
3927 "        exit(EXIT_FAILURE);\n"
3928 "    }\n"
3929 msgstr ""
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
3935 #. type: Plain text
3936 #: build/C/man3/getaddrinfo.3:761
3937 #, no-wrap
3938 msgid "    /* Obtain address(es) matching host/port */\n"
3939 msgstr "    /* Obtain address(es) matching host/port */\n"
3940
3941 #. type: Plain text
3942 #: build/C/man3/getaddrinfo.3:767
3943 #, no-wrap
3944 msgid ""
3945 "    memset(&hints, 0, sizeof(struct addrinfo));\n"
3946 "    hints.ai_family = AF_UNSPEC;    /* Allow IPv4 or IPv6 */\n"
3947 "    hints.ai_socktype = SOCK_DGRAM; /* Datagram socket */\n"
3948 "    hints.ai_flags = 0;\n"
3949 "    hints.ai_protocol = 0;          /* Any protocol */\n"
3950 msgstr ""
3951 "    memset(&hints, 0, sizeof(struct addrinfo));\n"
3952 "    hints.ai_family = AF_UNSPEC;    /* Allow IPv4 or IPv6 */\n"
3953 "    hints.ai_socktype = SOCK_DGRAM; /* Datagram socket */\n"
3954 "    hints.ai_flags = 0;\n"
3955 "    hints.ai_protocol = 0;          /* Any protocol */\n"
3956
3957 #. type: Plain text
3958 #: build/C/man3/getaddrinfo.3:773
3959 #, no-wrap
3960 msgid ""
3961 "    s = getaddrinfo(argv[1], argv[2], &hints, &result);\n"
3962 "    if (s != 0) {\n"
3963 "        fprintf(stderr, \"getaddrinfo: %s\\en\", gai_strerror(s));\n"
3964 "        exit(EXIT_FAILURE);\n"
3965 "    }\n"
3966 msgstr ""
3967 "    s = getaddrinfo(argv[1], argv[2], &hints, &result);\n"
3968 "    if (s != 0) {\n"
3969 "        fprintf(stderr, \"getaddrinfo: %s\\en\", gai_strerror(s));\n"
3970 "        exit(EXIT_FAILURE);\n"
3971 "    }\n"
3972
3973 #. type: Plain text
3974 #: build/C/man3/getaddrinfo.3:778
3975 #, no-wrap
3976 msgid ""
3977 "    /* getaddrinfo() returns a list of address structures.\n"
3978 "       Try each address until we successfully connect(2).\n"
3979 "       If socket(2) (or connect(2)) fails, we (close the socket\n"
3980 "       and) try the next address. */\n"
3981 msgstr ""
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
3987 #. type: Plain text
3988 #: build/C/man3/getaddrinfo.3:784
3989 #, no-wrap
3990 msgid ""
3991 "    for (rp = result; rp != NULL; rp = rp-E<gt>ai_next) {\n"
3992 "        sfd = socket(rp-E<gt>ai_family, rp-E<gt>ai_socktype,\n"
3993 "                     rp-E<gt>ai_protocol);\n"
3994 "        if (sfd == -1)\n"
3995 "            continue;\n"
3996 msgstr ""
3997 "    for (rp = result; rp != NULL; rp = rp-E<gt>ai_next) {\n"
3998 "        sfd = socket(rp-E<gt>ai_family, rp-E<gt>ai_socktype,\n"
3999 "                     rp-E<gt>ai_protocol);\n"
4000 "        if (sfd == -1)\n"
4001 "            continue;\n"
4002
4003 #. type: Plain text
4004 #: build/C/man3/getaddrinfo.3:787
4005 #, no-wrap
4006 msgid ""
4007 "        if (connect(sfd, rp-E<gt>ai_addr, rp-E<gt>ai_addrlen) != -1)\n"
4008 "            break;                  /* Success */\n"
4009 msgstr ""
4010 "        if (connect(sfd, rp-E<gt>ai_addr, rp-E<gt>ai_addrlen) != -1)\n"
4011 "            break;                  /* Success */\n"
4012
4013 #. type: Plain text
4014 #: build/C/man3/getaddrinfo.3:795
4015 #, no-wrap
4016 msgid ""
4017 "    if (rp == NULL) {               /* No address succeeded */\n"
4018 "        fprintf(stderr, \"Could not connect\\en\");\n"
4019 "        exit(EXIT_FAILURE);\n"
4020 "    }\n"
4021 msgstr ""
4022 "    if (rp == NULL) {               /* No address succeeded */\n"
4023 "        fprintf(stderr, \"Could not connect\\en\");\n"
4024 "        exit(EXIT_FAILURE);\n"
4025 "    }\n"
4026
4027 #. type: Plain text
4028 #: build/C/man3/getaddrinfo.3:800
4029 #, no-wrap
4030 msgid ""
4031 "    /* Send remaining command-line arguments as separate\n"
4032 "       datagrams, and read responses from server */\n"
4033 msgstr ""
4034 "    /* Send remaining command-line arguments as separate \n"
4035 "       datagrams, and read responses from server */\n"
4036
4037 #. type: Plain text
4038 #: build/C/man3/getaddrinfo.3:804
4039 #, no-wrap
4040 msgid ""
4041 "    for (j = 3; j E<lt> argc; j++) {\n"
4042 "        len = strlen(argv[j]) + 1;\n"
4043 "                /* +1 for terminating null byte */\n"
4044 msgstr ""
4045 "    for (j = 3; j E<lt> argc; j++) {\n"
4046 "        len = strlen(argv[j]) + 1;\n"
4047 "                /* +1 for terminating null byte */\n"
4048
4049 #. type: Plain text
4050 #: build/C/man3/getaddrinfo.3:810
4051 #, no-wrap
4052 msgid ""
4053 "        if (len + 1 E<gt> BUF_SIZE) {\n"
4054 "            fprintf(stderr,\n"
4055 "                    \"Ignoring long message in argument %d\\en\", j);\n"
4056 "            continue;\n"
4057 "        }\n"
4058 msgstr ""
4059 "        if (len + 1 E<gt> BUF_SIZE) {\n"
4060 "            fprintf(stderr,\n"
4061 "                    \"Ignoring long message in argument %d\\en\", j);\n"
4062 "            continue;\n"
4063 "        }\n"
4064
4065 #. type: Plain text
4066 #: build/C/man3/getaddrinfo.3:815
4067 #, no-wrap
4068 msgid ""
4069 "        if (write(sfd, argv[j], len) != len) {\n"
4070 "            fprintf(stderr, \"partial/failed write\\en\");\n"
4071 "            exit(EXIT_FAILURE);\n"
4072 "        }\n"
4073 msgstr ""
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
4079 #. type: Plain text
4080 #: build/C/man3/getaddrinfo.3:821
4081 #, no-wrap
4082 msgid ""
4083 "        nread = read(sfd, buf, BUF_SIZE);\n"
4084 "        if (nread == -1) {\n"
4085 "            perror(\"read\");\n"
4086 "            exit(EXIT_FAILURE);\n"
4087 "        }\n"
4088 msgstr ""
4089 "        nread = read(sfd, buf, BUF_SIZE);\n"
4090 "        if (nread == -1) {\n"
4091 "            perror(\"read\");\n"
4092 "            exit(EXIT_FAILURE);\n"
4093 "        }\n"
4094
4095 #. type: Plain text
4096 #: build/C/man3/getaddrinfo.3:824
4097 #, no-wrap
4098 msgid ""
4099 "        printf(\"Received %zd bytes: %s\\en\", nread, buf);\n"
4100 "    }\n"
4101 msgstr ""
4102 "        printf(\"Received %zd bytes: %s\\en\", nread, buf);\n"
4103 "    }\n"
4104
4105 #.  .BR getipnodebyaddr (3),
4106 #.  .BR getipnodebyname (3),
4107 #. type: Plain text
4108 #: build/C/man3/getaddrinfo.3:838
4109 msgid ""
4110 "B<getaddrinfo_a>(3), B<gethostbyname>(3), B<getnameinfo>(3), B<inet>(3), "
4111 "B<gai.conf>(5), B<hostname>(7), B<ip>(7)"
4112 msgstr ""
4113 "B<getaddrinfo_a>(3), B<gethostbyname>(3), B<getnameinfo>(3), B<inet>(3), "
4114 "B<gai.conf>(5), B<hostname>(7), B<ip>(7)"
4115
4116 #. type: TH
4117 #: build/C/man3/getaddrinfo_a.3:29
4118 #, no-wrap
4119 msgid "GETADDRINFO_A"
4120 msgstr "GETADDRINFO_A"
4121
4122 #. type: TH
4123 #: build/C/man3/getaddrinfo_a.3:29 build/C/man3/getnameinfo.3:10
4124 #: build/C/man3/inet.3:42 build/C/man3/inet_net_pton.3:26
4125 #: build/C/man3/rcmd.3:43 build/C/man3/resolver.3:32 build/C/man3/rexec.3:41
4126 #: build/C/man3/setnetgrent.3:10
4127 #, no-wrap
4128 msgid "2014-05-28"
4129 msgstr "2014-05-28"
4130
4131 #. type: Plain text
4132 #: build/C/man3/getaddrinfo_a.3:33
4133 msgid ""
4134 "getaddrinfo_a, gai_suspend, gai_error, gai_cancel - asynchronous network "
4135 "address and service translation"
4136 msgstr ""
4137 "getaddrinfo_a, gai_suspend, gai_error, gai_cancel - 非同期のネットワークアド"
4138 "レスとサービスの変換"
4139
4140 #. type: Plain text
4141 #: build/C/man3/getaddrinfo_a.3:37
4142 #, no-wrap
4143 msgid ""
4144 "B<#define _GNU_SOURCE>         /* See feature_test_macros(7) */\n"
4145 "B<#include E<lt>netdb.hE<gt>>\n"
4146 msgstr ""
4147 "B<#define _GNU_SOURCE>         /* feature_test_macros(7) 参照 */\n"
4148 "B<#include E<lt>netdb.hE<gt>>\n"
4149
4150 #. type: Plain text
4151 #: build/C/man3/getaddrinfo_a.3:40
4152 #, no-wrap
4153 msgid ""
4154 "B<int getaddrinfo_a(int >I<mode>B<, struct gaicb *>I<list[]>B<,>\n"
4155 "B<                int >I<nitems>B<, struct sigevent *>I<sevp>B<);>\n"
4156 msgstr ""
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
4160 #. type: Plain text
4161 #: build/C/man3/getaddrinfo_a.3:43
4162 #, no-wrap
4163 msgid ""
4164 "B<int gai_suspend(const struct gaicb * const >I<list[]>B<, int >I<nitems>B<,>\n"
4165 "B<                const struct timespec *>I<timeout>B<);>\n"
4166 msgstr ""
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
4170 #. type: Plain text
4171 #: build/C/man3/getaddrinfo_a.3:45
4172 #, no-wrap
4173 msgid "B<int gai_error(struct gaicb *>I<req>B<);>\n"
4174 msgstr "B<int gai_error(struct gaicb *>I<req>B<);>\n"
4175
4176 #. type: Plain text
4177 #: build/C/man3/getaddrinfo_a.3:47
4178 #, no-wrap
4179 msgid "B<int gai_cancel(struct gaicb *>I<req>B<);>\n"
4180 msgstr "B<int gai_cancel(struct gaicb *>I<req>B<);>\n"
4181
4182 #. type: Plain text
4183 #: build/C/man3/getaddrinfo_a.3:49
4184 #, no-wrap
4185 msgid "Link with I<-lanl>.\n"
4186 msgstr "I<-lanl> でリンクする。\n"
4187
4188 #. type: Plain text
4189 #: build/C/man3/getaddrinfo_a.3:57
4190 msgid ""
4191 "The B<getaddrinfo_a>()  function performs the same task as "
4192 "B<getaddrinfo>(3), but allows multiple name look-ups to be performed "
4193 "asynchronously, with optional notification on completion of look-up "
4194 "operations."
4195 msgstr ""
4196 "B<getaddrinfo_a>() 関数は B<getaddrinfo>(3) と同じ処理を実行するが、 複数の名"
4197 "前検索を非同期で実行でき、 検索処理の完了の通知ができる点が異なる。"
4198
4199 #. type: Plain text
4200 #: build/C/man3/getaddrinfo_a.3:61
4201 msgid "The I<mode> argument has one of the following values:"
4202 msgstr "I<mode> 引き数は以下の値のいずれかを指定する。"
4203
4204 #. type: TP
4205 #: build/C/man3/getaddrinfo_a.3:61
4206 #, no-wrap
4207 msgid "B<GAI_WAIT>"
4208 msgstr "B<GAI_WAIT>"
4209
4210 #. type: Plain text
4211 #: build/C/man3/getaddrinfo_a.3:65
4212 msgid ""
4213 "Perform the look-ups synchronously.  The call blocks until the look-ups have "
4214 "completed."
4215 msgstr "検索を同期で実行する。 呼び出しは検索が完了するまで停止 (block) する。"
4216
4217 #. type: TP
4218 #: build/C/man3/getaddrinfo_a.3:65
4219 #, no-wrap
4220 msgid "B<GAI_NOWAIT>"
4221 msgstr "B<GAI_NOWAIT>"
4222
4223 #. type: Plain text
4224 #: build/C/man3/getaddrinfo_a.3:73
4225 msgid ""
4226 "Perform the look-ups asynchronously.  The call returns immediately, and the "
4227 "requests are resolved in the background.  See the discussion of the I<sevp> "
4228 "argument below."
4229 msgstr ""
4230 "検索を非同期で実行する。 呼び出しは直ちに返り、 要求はバックグラウンドで処理"
4231 "される。 以下の I<sevp> 引き数の議論を参照。"
4232
4233 #. type: Plain text
4234 #: build/C/man3/getaddrinfo_a.3:88
4235 msgid ""
4236 "The array I<list> specifies the look-up requests to process.  The I<nitems> "
4237 "argument specifies the number of elements in I<list>.  The requested look-up "
4238 "operations are started in parallel.  NULL elements in I<list> are ignored.  "
4239 "Each request is described by a I<gaicb> structure, defined as follows:"
4240 msgstr ""
4241 "配列 I<list> は処理すべき検索要求を指定する。 I<nitems> 引き数は I<list> の要"
4242 "素数を指定する。 要求された検索命令は並列に開始される。 I<list> の NULL 要素"
4243 "は無視される。 各要求は以下のように定義された I<gaicb> 構造体で規定される。"
4244
4245 #. type: Plain text
4246 #: build/C/man3/getaddrinfo_a.3:97
4247 #, no-wrap
4248 msgid ""
4249 "struct gaicb {\n"
4250 "    const char            *ar_name;\n"
4251 "    const char            *ar_service;\n"
4252 "    const struct addrinfo *ar_request;\n"
4253 "    struct addrinfo       *ar_result;\n"
4254 "};\n"
4255 msgstr ""
4256 "struct gaicb {\n"
4257 "    const char            *ar_name;\n"
4258 "    const char            *ar_service;\n"
4259 "    const struct addrinfo *ar_request;\n"
4260 "    struct addrinfo       *ar_result;\n"
4261 "};\n"
4262
4263 #. type: Plain text
4264 #: build/C/man3/getaddrinfo_a.3:128
4265 msgid ""
4266 "The elements of this structure correspond to the arguments of "
4267 "B<getaddrinfo>(3).  Thus, I<ar_name> corresponds to the I<node> argument and "
4268 "I<ar_service> to the I<service> argument, identifying an Internet host and a "
4269 "service.  The I<ar_request> element corresponds to the I<hints> argument, "
4270 "specifying the criteria for selecting the returned socket address "
4271 "structures.  Finally, I<ar_result> corresponds to the I<res> argument; you "
4272 "do not need to initialize this element, it will be automatically set when "
4273 "the request is resolved.  The I<addrinfo> structure referenced by the last "
4274 "two elements is described in B<getaddrinfo>(3)."
4275 msgstr ""
4276 "この構造体の要素は B<getaddrinfo>(3) の引き数に対応している。 したがって、 "
4277 "I<ar_name> はインターネットホストを示す I<node> 引き数に、 I<ar_service> は"
4278 "サービスを示す I<service> 引き数に対応する。 I<ar_request> 要素は、 返された"
4279 "ソケットアドレス構造体を選択する基準を示す I<hints> 引き数に対応する。 最後"
4280 "の I<ar_request> は I<res> 引き数に対応する。 この要素を初期化する必要はな"
4281 "く、この要素は要求が解決されると自動的にセットされる。 最後の 2 つの要素が参"
4282 "照している I<addrinfo> 構造体については B<getaddrinfo>(3) に説明がある。"
4283
4284 #. type: Plain text
4285 #: build/C/man3/getaddrinfo_a.3:144
4286 msgid ""
4287 "When I<mode> is specified as B<GAI_NOWAIT>, notifications about resolved "
4288 "requests can be obtained by employing the I<sigevent> structure pointed to "
4289 "by the I<sevp> argument.  For the definition and general details of this "
4290 "structure, see B<sigevent>(7).  The I<sevp-E<gt>sigev_notify> field can have "
4291 "the following values:"
4292 msgstr ""
4293 "I<mode> に B<GAI_NOWAIT> が指定された場合、 解決した要求に関する通知を "
4294 "I<sevp> 引き数が指す I<sigevent> 構造体を使って受け取ることができる。 この構"
4295 "造体の定義と一般的な説明については B<sigevent>(7) を参照。 I<sevp-"
4296 "E<gt>sigev_notify> フィールドには以下の値を指定できる。"
4297
4298 #. type: TP
4299 #: build/C/man3/getaddrinfo_a.3:144
4300 #, no-wrap
4301 msgid "B<SIGEV_NONE>"
4302 msgstr "B<SIGEV_NONE>"
4303
4304 #. type: Plain text
4305 #: build/C/man3/getaddrinfo_a.3:147
4306 msgid "Don't provide any notification."
4307 msgstr "通知は行わない。"
4308
4309 #. type: TP
4310 #: build/C/man3/getaddrinfo_a.3:147
4311 #, no-wrap
4312 msgid "B<SIGEV_SIGNAL>"
4313 msgstr "B<SIGEV_SIGNAL>"
4314
4315 #.  si_pid and si_uid are also set, to the values of the calling process,
4316 #.  which doesn't provide useful information, so we'll skip mentioning it.
4317 #. type: Plain text
4318 #: build/C/man3/getaddrinfo_a.3:163
4319 msgid ""
4320 "When a look-up completes, generate the signal I<sigev_signo> for the "
4321 "process.  See B<sigevent>(7)  for general details.  The I<si_code> field of "
4322 "the I<siginfo_t> structure will be set to B<SI_ASYNCNL>."
4323 msgstr ""
4324 "検索が完了した際に、 プロセスに対してシグナル I<sigev_signo> を生成する。 一"
4325 "般的な説明は B<sigevent>(7) を参照。 I<siginfo_t> 構造体の I<si_code> フィー"
4326 "ルドには B<SI_ASYNCNL> がセットされる。"
4327
4328 #. type: TP
4329 #: build/C/man3/getaddrinfo_a.3:163
4330 #, no-wrap
4331 msgid "B<SIGEV_THREAD>"
4332 msgstr "B<SIGEV_THREAD>"
4333
4334 #. type: Plain text
4335 #: build/C/man3/getaddrinfo_a.3:171
4336 msgid ""
4337 "When a look-up completes, invoke I<sigev_notify_function> as if it were the "
4338 "start function of a new thread.  See B<sigevent>(7)  for details."
4339 msgstr ""
4340 "検索が完了した際に、 I<sigev_notify_function> を新しいスレッドの開始関数であ"
4341 "るかのように起動する。 詳細は B<sigevent>(7) を参照。"
4342
4343 #. type: Plain text
4344 #: build/C/man3/getaddrinfo_a.3:180
4345 msgid ""
4346 "For B<SIGEV_SIGNAL> and B<SIGEV_THREAD>, it may be useful to point I<sevp-"
4347 "E<gt>sigev_value.sival_ptr> to I<list>."
4348 msgstr ""
4349 "B<SIGEV_SIGNAL> と B<SIGEV_THREAD> では、 I<sevp-E<gt>sigev_value.sival_ptr> "
4350 "が I<list> を指すようにしておくと役立つことがある。"
4351
4352 #. type: Plain text
4353 #: build/C/man3/getaddrinfo_a.3:191
4354 msgid ""
4355 "The B<gai_suspend>()  function suspends execution of the calling thread, "
4356 "waiting for the completion of one or more requests in the array I<list>.  "
4357 "The I<nitems> argument specifies the size of the array I<list>.  The call "
4358 "blocks until one of the following occurs:"
4359 msgstr ""
4360 "B<gai_suspend>() 関数は呼び出し元のスレッドの実行を中断し、 配列 I<list> 内の"
4361 "一つ以上の要求が完了するのを待つ。 I<nitems> 引き数は配列 I<list> の大きさを"
4362 "指定する。 呼び出しは以下のいずれかの状況になるまで停止する。"
4363
4364 #. type: Plain text
4365 #: build/C/man3/getaddrinfo_a.3:195
4366 msgid "One or more of the operations in I<list> completes."
4367 msgstr "I<list> 内の一つ以上の操作が完了した。"
4368
4369 #. type: Plain text
4370 #: build/C/man3/getaddrinfo_a.3:197
4371 msgid "The call is interrupted by a signal that is caught."
4372 msgstr "呼び出しが補足されたシグナルに割り込まれた。"
4373
4374 #. type: Plain text
4375 #: build/C/man3/getaddrinfo_a.3:210
4376 msgid ""
4377 "The time interval specified in I<timeout> elapses.  This argument specifies "
4378 "a timeout in seconds plus nanoseconds (see B<nanosleep>(2)  for details of "
4379 "the I<timespec> structure).  If I<timeout> is NULL, then the call blocks "
4380 "indefinitely (until one of the events above occurs)."
4381 msgstr ""
4382 "I<timeout> で指定された期間が経過した。 この引き数は、秒とナノ秒でタイムアウ"
4383 "トを指定する (I<timespec> 構造体の詳細は B<nanosleep>(2) を参照)。 "
4384 "I<timeout> が NULL の場合、 (上記のイベントのいずれかが発生するまで) 呼び出し"
4385 "は無限に停止する。"
4386
4387 #. type: Plain text
4388 #: build/C/man3/getaddrinfo_a.3:215
4389 msgid ""
4390 "No explicit indication of which request was completed is given; you must "
4391 "determine which request(s) have completed by iterating with B<gai_error>()  "
4392 "over the list of requests."
4393 msgstr ""
4394 "どの要求が完了したかは明示的な通知は行われない。 どの要求が完了したかを知るた"
4395 "めには、 要求のリストに対して B<gai_error>() を繰り返し呼び出す必要がある。"
4396
4397 #. type: Plain text
4398 #: build/C/man3/getaddrinfo_a.3:225
4399 msgid ""
4400 "The B<gai_error>()  function returns the status of the request I<req>: "
4401 "either B<EAI_INPROGRESS> if the request was not completed yet, 0 if it was "
4402 "handled successfully, or an error code if the request could not be resolved."
4403 msgstr ""
4404 "B<gai_error>() 関数は要求 I<req> のステータスを返す。 要求がまだ完了していな"
4405 "い場合は B<EAI_INPROGRESS> が、 要求が正常に処理された場合は 0 が、 要求を解"
4406 "決できなかった場合はエラーコードが返される。"
4407
4408 #. type: Plain text
4409 #: build/C/man3/getaddrinfo_a.3:242
4410 msgid ""
4411 "The B<gai_cancel>()  function cancels the request I<req>.  If the request "
4412 "has been canceled successfully, the error status of the request will be set "
4413 "to B<EAI_CANCELLED> and normal asynchronous notification will be performed.  "
4414 "The request cannot be canceled if it is currently being processed; in that "
4415 "case, it will be handled as if B<gai_cancel>()  has never been called.  If "
4416 "I<req> is NULL, an attempt is made to cancel all outstanding requests that "
4417 "the process has made."
4418 msgstr ""
4419 "B<gai_cancel>() 関数は要求 I<req> をキャンセルする。 要求が正常にキャンセルさ"
4420 "れた場合、 要求のエラーステータスに B<EAI_CANCELLED> が設定され、 通常の非同"
4421 "期通知が実行される。 要求が現在処理中でキャンセルできない場合もある。 この場"
4422 "合 B<gai_cancel>() が呼ばれなかったかのように処理が行われる。 I<req> が NULL "
4423 "の場合、 そのプロセスが行ったすべての処理中の要求をキャンセルしようとする。"
4424
4425 #. type: Plain text
4426 #: build/C/man3/getaddrinfo_a.3:247
4427 msgid ""
4428 "The B<getaddrinfo_a>()  function returns 0 if all of the requests have been "
4429 "enqueued successfully, or one of the following nonzero error codes:"
4430 msgstr ""
4431 "B<getaddrinfo_a>() 関数はすべての要求が正常にキューに追加されると 0 を返す。 "
4432 "または、以下のいずれかの 0 でないエラーコードを返す。"
4433
4434 #. type: Plain text
4435 #: build/C/man3/getaddrinfo_a.3:252
4436 msgid ""
4437 "The resources necessary to enqueue the look-up requests were not available.  "
4438 "The application may check the error status of each request to determine "
4439 "which ones failed."
4440 msgstr ""
4441 "検索要求をキューに入れるために必要なリソースがなかった。 アプリケーションは書"
4442 "く要求のエラーステータスを確認し、 どの要求が失敗したかを判定することができ"
4443 "る。"
4444
4445 #. type: Plain text
4446 #: build/C/man3/getaddrinfo_a.3:259
4447 msgid "I<mode> is invalid."
4448 msgstr "I<mode> が無効である。"
4449
4450 #. type: Plain text
4451 #: build/C/man3/getaddrinfo_a.3:264
4452 msgid ""
4453 "The B<gai_suspend>()  function returns 0 if at least one of the listed "
4454 "requests has been completed.  Otherwise, it returns one of the following "
4455 "nonzero error codes:"
4456 msgstr ""
4457 "B<gai_suspend>() 関数はリストの要求の少なくともひとつが完了すると 0 を返す。 "
4458 "それ以外の場合、 以下の 0 でないエラーコードのいずれかを返す。"
4459
4460 #. type: Plain text
4461 #: build/C/man3/getaddrinfo_a.3:267
4462 msgid ""
4463 "The given timeout expired before any of the requests could be completed."
4464 msgstr "いずれかの要求が完了する前に指定されたタイムアウト時間が満了した。"
4465
4466 #. type: TP
4467 #: build/C/man3/getaddrinfo_a.3:267 build/C/man3/getaddrinfo_a.3:297
4468 #, no-wrap
4469 msgid "B<EAI_ALLDONE>"
4470 msgstr "B<EAI_ALLDONE>"
4471
4472 #. type: Plain text
4473 #: build/C/man3/getaddrinfo_a.3:270
4474 msgid "There were no actual requests given to the function."
4475 msgstr "指定された関数には実際には要求がなかった。"
4476
4477 #. type: TP
4478 #: build/C/man3/getaddrinfo_a.3:270
4479 #, no-wrap
4480 msgid "B<EAI_INTR>"
4481 msgstr "B<EAI_INTR>"
4482
4483 #. type: Plain text
4484 #: build/C/man3/getaddrinfo_a.3:275
4485 msgid ""
4486 "A signal has interrupted the function.  Note that this interruption might "
4487 "have been caused by signal notification of some completed look-up request."
4488 msgstr ""
4489 "シグナルが関数に割り込んだ。 この割り込みは検索要求が完了したことを示すシグナ"
4490 "ル通知により起こる場合もある。"
4491
4492 #. type: Plain text
4493 #: build/C/man3/getaddrinfo_a.3:287
4494 msgid ""
4495 "The B<gai_error>()  function can return B<EAI_INPROGRESS> for an unfinished "
4496 "look-up request, 0 for a successfully completed look-up (as described "
4497 "above), one of the error codes that could be returned by B<getaddrinfo>(3), "
4498 "or the error code B<EAI_CANCELLED> if the request has been canceled "
4499 "explicitly before it could be finished."
4500 msgstr ""
4501 "B<gai_error>() 関数は、 完了していない検索要求に対して B<EAI_INPROGRESS> を返"
4502 "し、 成功で完了した検索に対して 0 を返す。 B<getaddrinfo>(3) が返すエラーコー"
4503 "ドのいずれかを返す場合もある。 要求の完了前に明示的に要求がキャンセルされた場"
4504 "合はエラーコード B<EAI_CANCELLED> を返す。"
4505
4506 #. type: Plain text
4507 #: build/C/man3/getaddrinfo_a.3:291
4508 msgid "The B<gai_cancel>()  function can return one of these values:"
4509 msgstr "B<gai_cancel>() 関数はこれらの値のいずれかを返すことがある。"
4510
4511 #. type: TP
4512 #: build/C/man3/getaddrinfo_a.3:291
4513 #, no-wrap
4514 msgid "B<EAI_CANCELLED>"
4515 msgstr "B<EAI_CANCELLED>"
4516
4517 #. type: Plain text
4518 #: build/C/man3/getaddrinfo_a.3:294
4519 msgid "The request has been canceled successfully."
4520 msgstr "要求は正常にキャンセルされた。"
4521
4522 #. type: TP
4523 #: build/C/man3/getaddrinfo_a.3:294
4524 #, no-wrap
4525 msgid "B<EAI_NOTCANCELLED>"
4526 msgstr "B<EAI_NOTCANCELLED>"
4527
4528 #. type: Plain text
4529 #: build/C/man3/getaddrinfo_a.3:297
4530 msgid "The request has not been canceled."
4531 msgstr "要求はキャンセルされていない。"
4532
4533 #. type: Plain text
4534 #: build/C/man3/getaddrinfo_a.3:300
4535 msgid "The request has already completed."
4536 msgstr "要求はすでに完了している。"
4537
4538 #. type: Plain text
4539 #: build/C/man3/getaddrinfo_a.3:305 build/C/man3/getnameinfo.3:197
4540 msgid ""
4541 "The B<gai_strerror>(3)  function translates these error codes to a human "
4542 "readable string, suitable for error reporting."
4543 msgstr ""
4544 "B<gai_strerror>(3) 関数を使うと、 これらのエラーコードを、 エラーレポートに適"
4545 "した人間が読みやすい文字列に翻訳してくれる。"
4546
4547 #. type: Plain text
4548 #: build/C/man3/getaddrinfo_a.3:308
4549 msgid ""
4550 "These functions are GNU extensions; they first appeared in glibc in version "
4551 "2.2.3."
4552 msgstr ""
4553 "これらの関数は GNU 拡張である。 バージョン 2.2.3 で初めて glibc に登場した。"
4554
4555 #. type: Plain text
4556 #: build/C/man3/getaddrinfo_a.3:314
4557 msgid ""
4558 "The interface of B<getaddrinfo_a>()  was modeled after the B<lio_listio>(3)  "
4559 "interface."
4560 msgstr ""
4561 "B<getaddrinfo_a>() インターフェースは B<lio_listio>(3) インターフェースの後に"
4562 "モデル化された。"
4563
4564 #. type: Plain text
4565 #: build/C/man3/getaddrinfo_a.3:318
4566 msgid ""
4567 "Two examples are provided: a simple example that resolves several requests "
4568 "in parallel synchronously, and a complex example showing some of the "
4569 "asynchronous capabilities."
4570 msgstr ""
4571 "ここでは二つの例を示す。 一つは複数の要求を同期処理で並行して解決する例で、 "
4572 "もう一つは非同期機能を使った複雑な例である。"
4573
4574 #. type: SS
4575 #: build/C/man3/getaddrinfo_a.3:318
4576 #, no-wrap
4577 msgid "Synchronous example"
4578 msgstr "同期型の例"
4579
4580 #. type: Plain text
4581 #: build/C/man3/getaddrinfo_a.3:323
4582 msgid ""
4583 "The program below simply resolves several hostnames in parallel, giving a "
4584 "speed-up compared to resolving the hostnames sequentially using "
4585 "B<getaddrinfo>(3).  The program might be used like this:"
4586 msgstr ""
4587 "以下のプログラムは単に複数のホスト名の解決を並行で行う。 B<getaddrinfo>(3) を"
4588 "使って順番にホスト名の解決を行うのに比べて速度が向上する。 このプログラムは以"
4589 "下のように使う。"
4590
4591 #. type: Plain text
4592 #: build/C/man3/getaddrinfo_a.3:330
4593 #, no-wrap
4594 msgid ""
4595 "$ B<./a.out ftp.us.kernel.org enoent.linuxfoundation.org gnu.cz>\n"
4596 "ftp.us.kernel.org: 128.30.2.36\n"
4597 "enoent.linuxfoundation.org: Name or service not known\n"
4598 "gnu.cz: 87.236.197.13\n"
4599 msgstr ""
4600 "$ B<./a.out ftp.us.kernel.org enoent.linuxfoundation.org gnu.cz>\n"
4601 "ftp.us.kernel.org: 128.30.2.36\n"
4602 "enoent.linuxfoundation.org: Name or service not known\n"
4603 "gnu.cz: 87.236.197.13\n"
4604
4605 #. type: Plain text
4606 #: build/C/man3/getaddrinfo_a.3:334
4607 msgid "Here is the program source code"
4608 msgstr "プログラムのソースコードは以下のとおりである。"
4609
4610 #. type: Plain text
4611 #: build/C/man3/getaddrinfo_a.3:341 build/C/man3/getaddrinfo_a.3:430
4612 #, no-wrap
4613 msgid ""
4614 "#define _GNU_SOURCE\n"
4615 "#include E<lt>netdb.hE<gt>\n"
4616 "#include E<lt>stdio.hE<gt>\n"
4617 "#include E<lt>stdlib.hE<gt>\n"
4618 "#include E<lt>string.hE<gt>\n"
4619 msgstr ""
4620 "#define _GNU_SOURCE\n"
4621 "#include E<lt>netdb.hE<gt>\n"
4622 "#include E<lt>stdio.hE<gt>\n"
4623 "#include E<lt>stdlib.hE<gt>\n"
4624 "#include E<lt>string.hE<gt>\n"
4625
4626 #. type: Plain text
4627 #: build/C/man3/getaddrinfo_a.3:349
4628 #, no-wrap
4629 msgid ""
4630 "int\n"
4631 "main(int argc, char *argv[])\n"
4632 "{\n"
4633 "    int i, ret;\n"
4634 "    struct gaicb *reqs[argc - 1];\n"
4635 "    char host[NI_MAXHOST];\n"
4636 "    struct addrinfo *res;\n"
4637 msgstr ""
4638 "int\n"
4639 "main(int argc, char *argv[])\n"
4640 "{\n"
4641 "    int i, ret;\n"
4642 "    struct gaicb *reqs[argc - 1];\n"
4643 "    char host[NI_MAXHOST];\n"
4644 "    struct addrinfo *res;\n"
4645
4646 #. type: Plain text
4647 #: build/C/man3/getaddrinfo_a.3:354
4648 #, no-wrap
4649 msgid ""
4650 "    if (argc E<lt> 2) {\n"
4651 "        fprintf(stderr, \"Usage: %s HOST...\\en\", argv[0]);\n"
4652 "        exit(EXIT_FAILURE);\n"
4653 "    }\n"
4654 msgstr ""
4655 "    if (argc E<lt> 2) {\n"
4656 "        fprintf(stderr, \"Usage: %s HOST...\\en\", argv[0]);\n"
4657 "        exit(EXIT_FAILURE);\n"
4658 "    }\n"
4659
4660 #. type: Plain text
4661 #: build/C/man3/getaddrinfo_a.3:364
4662 #, no-wrap
4663 msgid ""
4664 "    for (i = 0; i E<lt> argc - 1; i++) {\n"
4665 "        reqs[i] = malloc(sizeof(*reqs[0]));\n"
4666 "        if (reqs[i] == NULL) {\n"
4667 "            perror(\"malloc\");\n"
4668 "            exit(EXIT_FAILURE);\n"
4669 "        }\n"
4670 "        memset(reqs[i], 0, sizeof(*reqs[0]));\n"
4671 "        reqs[i]-E<gt>ar_name = argv[i + 1];\n"
4672 "    }\n"
4673 msgstr ""
4674 "    for (i = 0; i E<lt> argc - 1; i++) {\n"
4675 "        reqs[i] = malloc(sizeof(*reqs[0]));\n"
4676 "        if (reqs[i] == NULL) {\n"
4677 "            perror(\"malloc\");\n"
4678 "            exit(EXIT_FAILURE);\n"
4679 "        }\n"
4680 "        memset(reqs[i], 0, sizeof(*reqs[0]));\n"
4681 "        reqs[i]-E<gt>ar_name = argv[i + 1];\n"
4682 "    }\n"
4683
4684 #. type: Plain text
4685 #: build/C/man3/getaddrinfo_a.3:371
4686 #, no-wrap
4687 msgid ""
4688 "    ret = getaddrinfo_a(GAI_WAIT, reqs, argc - 1, NULL);\n"
4689 "    if (ret != 0) {\n"
4690 "        fprintf(stderr, \"getaddrinfo_a() failed: %s\\en\",\n"
4691 "                gai_strerror(ret));\n"
4692 "        exit(EXIT_FAILURE);\n"
4693 "    }\n"
4694 msgstr ""
4695 "    ret = getaddrinfo_a(GAI_WAIT, reqs, argc - 1, NULL);\n"
4696 "    if (ret != 0) {\n"
4697 "        fprintf(stderr, \"getaddrinfo_a() failed: %s\\en\",\n"
4698 "                gai_strerror(ret));\n"
4699 "        exit(EXIT_FAILURE);\n"
4700 "    }\n"
4701
4702 #. type: Plain text
4703 #: build/C/man3/getaddrinfo_a.3:377
4704 #, no-wrap
4705 msgid ""
4706 "    for (i = 0; i E<lt> argc - 1; i++) {\n"
4707 "        printf(\"%s: \", reqs[i]-E<gt>ar_name);\n"
4708 "        ret = gai_error(reqs[i]);\n"
4709 "        if (ret == 0) {\n"
4710 "            res = reqs[i]-E<gt>ar_result;\n"
4711 msgstr ""
4712 "    for (i = 0; i E<lt> argc - 1; i++) {\n"
4713 "        printf(\"%s: \", reqs[i]-E<gt>ar_name);\n"
4714 "        ret = gai_error(reqs[i]);\n"
4715 "        if (ret == 0) {\n"
4716 "            res = reqs[i]-E<gt>ar_result;\n"
4717
4718 #. type: Plain text
4719 #: build/C/man3/getaddrinfo_a.3:387
4720 #, no-wrap
4721 msgid ""
4722 "            ret = getnameinfo(res-E<gt>ai_addr, res-E<gt>ai_addrlen,\n"
4723 "                    host, sizeof(host),\n"
4724 "                    NULL, 0, NI_NUMERICHOST);\n"
4725 "            if (ret != 0) {\n"
4726 "                fprintf(stderr, \"getnameinfo() failed: %s\\en\",\n"
4727 "                        gai_strerror(ret));\n"
4728 "                exit(EXIT_FAILURE);\n"
4729 "            }\n"
4730 "            puts(host);\n"
4731 msgstr ""
4732 "            ret = getnameinfo(res-E<gt>ai_addr, res-E<gt>ai_addrlen,\n"
4733 "                    host, sizeof(host),\n"
4734 "                    NULL, 0, NI_NUMERICHOST);\n"
4735 "            if (ret != 0) {\n"
4736 "                fprintf(stderr, \"getnameinfo() failed: %s\\en\",\n"
4737 "                        gai_strerror(ret));\n"
4738 "                exit(EXIT_FAILURE);\n"
4739 "            }\n"
4740 "            puts(host);\n"
4741
4742 #. type: Plain text
4743 #: build/C/man3/getaddrinfo_a.3:394
4744 #, no-wrap
4745 msgid ""
4746 "        } else {\n"
4747 "            puts(gai_strerror(ret));\n"
4748 "        }\n"
4749 "    }\n"
4750 "    exit(EXIT_SUCCESS);\n"
4751 "}\n"
4752 msgstr ""
4753 "        } else {\n"
4754 "            puts(gai_strerror(ret));\n"
4755 "        }\n"
4756 "    }\n"
4757 "    exit(EXIT_SUCCESS);\n"
4758 "}\n"
4759
4760 #. type: SS
4761 #: build/C/man3/getaddrinfo_a.3:395
4762 #, no-wrap
4763 msgid "Asynchronous example"
4764 msgstr "非同期型の例"
4765
4766 #. type: Plain text
4767 #: build/C/man3/getaddrinfo_a.3:400
4768 msgid ""
4769 "This example shows a simple interactive B<getaddrinfo_a>()  front-end.  The "
4770 "notification facility is not demonstrated."
4771 msgstr ""
4772 "この例は B<getaddrinfo_a>() の簡単な対話式のフロントエンドである。 通知機能は"
4773 "使っていない。"
4774
4775 #. type: Plain text
4776 #: build/C/man3/getaddrinfo_a.3:402
4777 msgid "An example session might look like this:"
4778 msgstr "セッションの実行例は以下のようになる。"
4779
4780 #. type: Plain text
4781 #: build/C/man3/getaddrinfo_a.3:419
4782 #, no-wrap
4783 msgid ""
4784 "$ B<./a.out>\n"
4785 "E<gt> a ftp.us.kernel.org enoent.linuxfoundation.org gnu.cz\n"
4786 "E<gt> c 2\n"
4787 "[2] gnu.cz: Request not canceled\n"
4788 "E<gt> w 0 1\n"
4789 "[00] ftp.us.kernel.org: Finished\n"
4790 "E<gt> l\n"
4791 "[00] ftp.us.kernel.org: 216.165.129.139\n"
4792 "[01] enoent.linuxfoundation.org: Processing request in progress\n"
4793 "[02] gnu.cz: 87.236.197.13\n"
4794 "E<gt> l\n"
4795 "[00] ftp.us.kernel.org: 216.165.129.139\n"
4796 "[01] enoent.linuxfoundation.org: Name or service not known\n"
4797 "[02] gnu.cz: 87.236.197.13\n"
4798 msgstr ""
4799 "$ B<./a.out>\n"
4800 "E<gt> a ftp.us.kernel.org enoent.linuxfoundation.org gnu.cz\n"
4801 "E<gt> c 2\n"
4802 "[2] gnu.cz: Request not canceled\n"
4803 "E<gt> w 0 1\n"
4804 "[00] ftp.us.kernel.org: Finished\n"
4805 "E<gt> l\n"
4806 "[00] ftp.us.kernel.org: 216.165.129.139\n"
4807 "[01] enoent.linuxfoundation.org: Processing request in progress\n"
4808 "[02] gnu.cz: 87.236.197.13\n"
4809 "E<gt> l\n"
4810 "[00] ftp.us.kernel.org: 216.165.129.139\n"
4811 "[01] enoent.linuxfoundation.org: Name or service not known\n"
4812 "[02] gnu.cz: 87.236.197.13\n"
4813
4814 #. type: Plain text
4815 #: build/C/man3/getaddrinfo_a.3:423
4816 msgid "The program source is as follows:"
4817 msgstr "プログラムのソースは以下のとおりである。"
4818
4819 #. type: Plain text
4820 #: build/C/man3/getaddrinfo_a.3:433
4821 #, no-wrap
4822 msgid ""
4823 "static struct gaicb **reqs = NULL;\n"
4824 "static int nreqs = 0;\n"
4825 msgstr ""
4826 "static struct gaicb **reqs = NULL;\n"
4827 "static int nreqs = 0;\n"
4828
4829 #. type: Plain text
4830 #: build/C/man3/getaddrinfo_a.3:438
4831 #, no-wrap
4832 msgid ""
4833 "static char *\n"
4834 "getcmd(void)\n"
4835 "{\n"
4836 "    static char buf[256];\n"
4837 msgstr ""
4838 "static char *\n"
4839 "getcmd(void)\n"
4840 "{\n"
4841 "    static char buf[256];\n"
4842
4843 #. type: Plain text
4844 #: build/C/man3/getaddrinfo_a.3:442
4845 #, no-wrap
4846 msgid ""
4847 "    fputs(\"E<gt> \", stdout); fflush(stdout);\n"
4848 "    if (fgets(buf, sizeof(buf), stdin) == NULL)\n"
4849 "        return NULL;\n"
4850 msgstr ""
4851 "    fputs(\"E<gt> \", stdout); fflush(stdout);\n"
4852 "    if (fgets(buf, sizeof(buf), stdin) == NULL)\n"
4853 "        return NULL;\n"
4854
4855 #. type: Plain text
4856 #: build/C/man3/getaddrinfo_a.3:445
4857 #, no-wrap
4858 msgid ""
4859 "    if (buf[strlen(buf) - 1] == \\(aq\\en\\(aq)\n"
4860 "        buf[strlen(buf) - 1] = 0;\n"
4861 msgstr ""
4862 "    if (buf[strlen(buf) - 1] == \\(aq\\en\\(aq)\n"
4863 "        buf[strlen(buf) - 1] = 0;\n"
4864
4865 #. type: Plain text
4866 #: build/C/man3/getaddrinfo_a.3:448
4867 #, no-wrap
4868 msgid ""
4869 "    return buf;\n"
4870 "}\n"
4871 msgstr ""
4872 "    return buf;\n"
4873 "}\n"
4874
4875 #. type: Plain text
4876 #: build/C/man3/getaddrinfo_a.3:456
4877 #, no-wrap
4878 msgid ""
4879 "/* Add requests for specified hostnames */\n"
4880 "static void\n"
4881 "add_requests(void)\n"
4882 "{\n"
4883 "    int nreqs_base = nreqs;\n"
4884 "    char *host;\n"
4885 "    int ret;\n"
4886 msgstr ""
4887 "/* Add requests for specified hostnames */\n"
4888 "static void\n"
4889 "add_requests(void)\n"
4890 "{\n"
4891 "    int nreqs_base = nreqs;\n"
4892 "    char *host;\n"
4893 "    int ret;\n"
4894
4895 #. type: Plain text
4896 #: build/C/man3/getaddrinfo_a.3:460
4897 #, no-wrap
4898 msgid ""
4899 "    while ((host = strtok(NULL, \" \"))) {\n"
4900 "        nreqs++;\n"
4901 "        reqs = realloc(reqs, nreqs * sizeof(reqs[0]));\n"
4902 msgstr ""
4903 "    while ((host = strtok(NULL, \" \"))) {\n"
4904 "        nreqs++;\n"
4905 "        reqs = realloc(reqs, nreqs * sizeof(reqs[0]));\n"
4906
4907 #. type: Plain text
4908 #: build/C/man3/getaddrinfo_a.3:464
4909 #, no-wrap
4910 msgid ""
4911 "        reqs[nreqs - 1] = calloc(1, sizeof(*reqs[0]));\n"
4912 "        reqs[nreqs - 1]-E<gt>ar_name = strdup(host);\n"
4913 "    }\n"
4914 msgstr ""
4915 "        reqs[nreqs - 1] = calloc(1, sizeof(*reqs[0]));\n"
4916 "        reqs[nreqs - 1]-E<gt>ar_name = strdup(host);\n"
4917 "    }\n"
4918
4919 #. type: Plain text
4920 #: build/C/man3/getaddrinfo_a.3:466
4921 #, no-wrap
4922 msgid "    /* Queue nreqs_base..nreqs requests. */\n"
4923 msgstr "    /* Queue nreqs_base..nreqs requests. */\n"
4924
4925 #. type: Plain text
4926 #: build/C/man3/getaddrinfo_a.3:475
4927 #, no-wrap
4928 msgid ""
4929 "    ret = getaddrinfo_a(GAI_NOWAIT, &reqs[nreqs_base],\n"
4930 "                        nreqs - nreqs_base, NULL);\n"
4931 "    if (ret) {\n"
4932 "        fprintf(stderr, \"getaddrinfo_a() failed: %s\\en\",\n"
4933 "                gai_strerror(ret));\n"
4934 "        exit(EXIT_FAILURE);\n"
4935 "    }\n"
4936 "}\n"
4937 msgstr ""
4938 "    ret = getaddrinfo_a(GAI_NOWAIT, &reqs[nreqs_base],\n"
4939 "                        nreqs - nreqs_base, NULL);\n"
4940 "    if (ret) {\n"
4941 "        fprintf(stderr, \"getaddrinfo_a() failed: %s\\en\",\n"
4942 "                gai_strerror(ret));\n"
4943 "        exit(EXIT_FAILURE);\n"
4944 "    }\n"
4945 "}\n"
4946
4947 #. type: Plain text
4948 #: build/C/man3/getaddrinfo_a.3:484
4949 #, no-wrap
4950 msgid ""
4951 "/* Wait until at least one of specified requests completes */\n"
4952 "static void\n"
4953 "wait_requests(void)\n"
4954 "{\n"
4955 "    char *id;\n"
4956 "    int i, ret, n;\n"
4957 "    struct gaicb const **wait_reqs = calloc(nreqs, sizeof(*wait_reqs));\n"
4958 "                /* NULL elements are ignored by gai_suspend(). */\n"
4959 msgstr ""
4960 "/* Wait until at least one of specified requests completes */\n"
4961 "static void\n"
4962 "wait_requests(void)\n"
4963 "{\n"
4964 "    char *id;\n"
4965 "    int i, ret, n;\n"
4966 "    struct gaicb const **wait_reqs = calloc(nreqs, sizeof(*wait_reqs));\n"
4967 "                /* NULL elements are ignored by gai_suspend(). */\n"
4968
4969 #. type: Plain text
4970 #: build/C/man3/getaddrinfo_a.3:487 build/C/man3/getaddrinfo_a.3:524
4971 #, no-wrap
4972 msgid ""
4973 "    while ((id = strtok(NULL, \" \")) != NULL) {\n"
4974 "        n = atoi(id);\n"
4975 msgstr ""
4976 "    while ((id = strtok(NULL, \" \")) != NULL) {\n"
4977 "        n = atoi(id);\n"
4978
4979 #. type: Plain text
4980 #: build/C/man3/getaddrinfo_a.3:492 build/C/man3/getaddrinfo_a.3:529
4981 #, no-wrap
4982 msgid ""
4983 "        if (n E<gt>= nreqs) {\n"
4984 "            printf(\"Bad request number: %s\\en\", id);\n"
4985 "            return;\n"
4986 "        }\n"
4987 msgstr ""
4988 "        if (n E<gt>= nreqs) {\n"
4989 "            printf(\"Bad request number: %s\\en\", id);\n"
4990 "            return;\n"
4991 "        }\n"
4992
4993 #. type: Plain text
4994 #: build/C/man3/getaddrinfo_a.3:495
4995 #, no-wrap
4996 msgid ""
4997 "        wait_reqs[n] = reqs[n];\n"
4998 "    }\n"
4999 msgstr ""
5000 "        wait_reqs[n] = reqs[n];\n"
5001 "    }\n"
5002
5003 #. type: Plain text
5004 #: build/C/man3/getaddrinfo_a.3:501
5005 #, no-wrap
5006 msgid ""
5007 "    ret = gai_suspend(wait_reqs, nreqs, NULL);\n"
5008 "    if (ret) {\n"
5009 "        printf(\"gai_suspend(): %s\\en\", gai_strerror(ret));\n"
5010 "        return;\n"
5011 "    }\n"
5012 msgstr ""
5013 "    ret = gai_suspend(wait_reqs, nreqs, NULL);\n"
5014 "    if (ret) {\n"
5015 "        printf(\"gai_suspend(): %s\\en\", gai_strerror(ret));\n"
5016 "        return;\n"
5017 "    }\n"
5018
5019 #. type: Plain text
5020 #: build/C/man3/getaddrinfo_a.3:505
5021 #, no-wrap
5022 msgid ""
5023 "    for (i = 0; i E<lt> nreqs; i++) {\n"
5024 "        if (wait_reqs[i] == NULL)\n"
5025 "            continue;\n"
5026 msgstr ""
5027 "    for (i = 0; i E<lt> nreqs; i++) {\n"
5028 "        if (wait_reqs[i] == NULL)\n"
5029 "            continue;\n"
5030
5031 #. type: Plain text
5032 #: build/C/man3/getaddrinfo_a.3:509
5033 #, no-wrap
5034 msgid ""
5035 "        ret = gai_error(reqs[i]);\n"
5036 "        if (ret == EAI_INPROGRESS)\n"
5037 "            continue;\n"
5038 msgstr ""
5039 "        ret = gai_error(reqs[i]);\n"
5040 "        if (ret == EAI_INPROGRESS)\n"
5041 "            continue;\n"
5042
5043 #. type: Plain text
5044 #: build/C/man3/getaddrinfo_a.3:514
5045 #, no-wrap
5046 msgid ""
5047 "        printf(\"[%02d] %s: %s\\en\", i, reqs[i]-E<gt>ar_name,\n"
5048 "               ret == 0 ? \"Finished\" : gai_strerror(ret));\n"
5049 "    }\n"
5050 "}\n"
5051 msgstr ""
5052 "        printf(\"[%02d] %s: %s\\en\", i, reqs[i]-E<gt>ar_name,\n"
5053 "               ret == 0 ? \"Finished\" : gai_strerror(ret));\n"
5054 "    }\n"
5055 "}\n"
5056
5057 #. type: Plain text
5058 #: build/C/man3/getaddrinfo_a.3:521
5059 #, no-wrap
5060 msgid ""
5061 "/* Cancel specified requests */\n"
5062 "static void\n"
5063 "cancel_requests(void)\n"
5064 "{\n"
5065 "    char *id;\n"
5066 "    int ret, n;\n"
5067 msgstr ""
5068 "/* Cancel specified requests */\n"
5069 "static void\n"
5070 "cancel_requests(void)\n"
5071 "{\n"
5072 "    char *id;\n"
5073 "    int ret, n;\n"
5074
5075 #. type: Plain text
5076 #: build/C/man3/getaddrinfo_a.3:535
5077 #, no-wrap
5078 msgid ""
5079 "        ret = gai_cancel(reqs[n]);\n"
5080 "        printf(\"[%s] %s: %s\\en\", id, reqs[atoi(id)]-E<gt>ar_name,\n"
5081 "               gai_strerror(ret));\n"
5082 "    }\n"
5083 "}\n"
5084 msgstr ""
5085 "        ret = gai_cancel(reqs[n]);\n"
5086 "        printf(\"[%s] %s: %s\\en\", id, reqs[atoi(id)]-E<gt>ar_name,\n"
5087 "               gai_strerror(ret));\n"
5088 "    }\n"
5089 "}\n"
5090
5091 #. type: Plain text
5092 #: build/C/man3/getaddrinfo_a.3:543
5093 #, no-wrap
5094 msgid ""
5095 "/* List all requests */\n"
5096 "static void\n"
5097 "list_requests(void)\n"
5098 "{\n"
5099 "    int i, ret;\n"
5100 "    char host[NI_MAXHOST];\n"
5101 "    struct addrinfo *res;\n"
5102 msgstr ""
5103 "/* List all requests */\n"
5104 "static void\n"
5105 "list_requests(void)\n"
5106 "{\n"
5107 "    int i, ret;\n"
5108 "    char host[NI_MAXHOST];\n"
5109 "    struct addrinfo *res;\n"
5110
5111 #. type: Plain text
5112 #: build/C/man3/getaddrinfo_a.3:547
5113 #, no-wrap
5114 msgid ""
5115 "    for (i = 0; i E<lt> nreqs; i++) {\n"
5116 "        printf(\"[%02d] %s: \", i, reqs[i]-E<gt>ar_name);\n"
5117 "        ret = gai_error(reqs[i]);\n"
5118 msgstr ""
5119 "    for (i = 0; i E<lt> nreqs; i++) {\n"
5120 "        printf(\"[%02d] %s: \", i, reqs[i]-E<gt>ar_name);\n"
5121 "        ret = gai_error(reqs[i]);\n"
5122
5123 #. type: Plain text
5124 #: build/C/man3/getaddrinfo_a.3:550
5125 #, no-wrap
5126 msgid ""
5127 "        if (!ret) {\n"
5128 "            res = reqs[i]-E<gt>ar_result;\n"
5129 msgstr ""
5130 "        if (!ret) {\n"
5131 "            res = reqs[i]-E<gt>ar_result;\n"
5132
5133 #. type: Plain text
5134 #: build/C/man3/getaddrinfo_a.3:565
5135 #, no-wrap
5136 msgid ""
5137 "            ret = getnameinfo(res-E<gt>ai_addr, res-E<gt>ai_addrlen,\n"
5138 "                              host, sizeof(host),\n"
5139 "                              NULL, 0, NI_NUMERICHOST);\n"
5140 "            if (ret) {\n"
5141 "                fprintf(stderr, \"getnameinfo() failed: %s\\en\",\n"
5142 "                        gai_strerror(ret));\n"
5143 "                exit(EXIT_FAILURE);\n"
5144 "            }\n"
5145 "            puts(host);\n"
5146 "        } else {\n"
5147 "            puts(gai_strerror(ret));\n"
5148 "        }\n"
5149 "    }\n"
5150 "}\n"
5151 msgstr ""
5152 "            ret = getnameinfo(res-E<gt>ai_addr, res-E<gt>ai_addrlen,\n"
5153 "                              host, sizeof(host),\n"
5154 "                              NULL, 0, NI_NUMERICHOST);\n"
5155 "            if (ret) {\n"
5156 "                fprintf(stderr, \"getnameinfo() failed: %s\\en\",\n"
5157 "                        gai_strerror(ret));\n"
5158 "                exit(EXIT_FAILURE);\n"
5159 "            }\n"
5160 "            puts(host);\n"
5161 "        } else {\n"
5162 "            puts(gai_strerror(ret));\n"
5163 "        }\n"
5164 "    }\n"
5165 "}\n"
5166
5167 #. type: Plain text
5168 #: build/C/man3/getaddrinfo_a.3:571
5169 #, no-wrap
5170 msgid ""
5171 "int\n"
5172 "main(int argc, char *argv[])\n"
5173 "{\n"
5174 "    char *cmdline;\n"
5175 "    char *cmd;\n"
5176 msgstr ""
5177 "int\n"
5178 "main(int argc, char *argv[])\n"
5179 "{\n"
5180 "    char *cmdline;\n"
5181 "    char *cmd;\n"
5182
5183 #. type: Plain text
5184 #: build/C/man3/getaddrinfo_a.3:574
5185 #, no-wrap
5186 msgid ""
5187 "    while ((cmdline = getcmd()) != NULL) {\n"
5188 "        cmd = strtok(cmdline, \" \");\n"
5189 msgstr ""
5190 "    while ((cmdline = getcmd()) != NULL) {\n"
5191 "        cmd = strtok(cmdline, \" \");\n"
5192
5193 #. type: Plain text
5194 #: build/C/man3/getaddrinfo_a.3:599
5195 #, no-wrap
5196 msgid ""
5197 "        if (cmd == NULL) {\n"
5198 "            list_requests();\n"
5199 "        } else {\n"
5200 "            switch (cmd[0]) {\n"
5201 "            case \\(aqa\\(aq:\n"
5202 "                add_requests();\n"
5203 "                break;\n"
5204 "            case \\(aqw\\(aq:\n"
5205 "                wait_requests();\n"
5206 "                break;\n"
5207 "            case \\(aqc\\(aq:\n"
5208 "                cancel_requests();\n"
5209 "                break;\n"
5210 "            case \\(aql\\(aq:\n"
5211 "                list_requests();\n"
5212 "                break;\n"
5213 "            default:\n"
5214 "                fprintf(stderr, \"Bad command: %c\\en\", cmd[0]);\n"
5215 "                break;\n"
5216 "            }\n"
5217 "        }\n"
5218 "    }\n"
5219 "    exit(EXIT_SUCCESS);\n"
5220 "}\n"
5221 msgstr ""
5222 "        if (cmd == NULL) {\n"
5223 "            list_requests();\n"
5224 "        } else {\n"
5225 "            switch (cmd[0]) {\n"
5226 "            case \\(aqa\\(aq:\n"
5227 "                add_requests();\n"
5228 "                break;\n"
5229 "            case \\(aqw\\(aq:\n"
5230 "                wait_requests();\n"
5231 "                break;\n"
5232 "            case \\(aqc\\(aq:\n"
5233 "                cancel_requests();\n"
5234 "                break;\n"
5235 "            case \\(aql\\(aq:\n"
5236 "                list_requests();\n"
5237 "                break;\n"
5238 "            default:\n"
5239 "                fprintf(stderr, \"Bad command: %c\\en\", cmd[0]);\n"
5240 "                break;\n"
5241 "            }\n"
5242 "        }\n"
5243 "    }\n"
5244 "    exit(EXIT_SUCCESS);\n"
5245 "}\n"
5246
5247 #. type: Plain text
5248 #: build/C/man3/getaddrinfo_a.3:607
5249 msgid ""
5250 "B<getaddrinfo>(3), B<inet>(3), B<lio_listio>(3), B<hostname>(7), B<ip>(7), "
5251 "B<sigevent>(7)"
5252 msgstr ""
5253 "B<getaddrinfo>(3), B<inet>(3), B<lio_listio>(3), B<hostname>(7), B<ip>(7), "
5254 "B<sigevent>(7)"
5255
5256 #. type: TH
5257 #: build/C/man1/getent.1:24
5258 #, no-wrap
5259 msgid "GETENT"
5260 msgstr "GETENT"
5261
5262 #. type: TH
5263 #: build/C/man1/getent.1:24
5264 #, no-wrap
5265 msgid "2013-03-15"
5266 msgstr "2013-03-15"
5267
5268 #. type: TH
5269 #: build/C/man1/getent.1:24
5270 #, no-wrap
5271 msgid "User Commands"
5272 msgstr "User Commands"
5273
5274 #. type: Plain text
5275 #: build/C/man1/getent.1:27
5276 msgid "getent - get entries from Name Service Switch libraries"
5277 msgstr "getent - 名前サービス切り替えライブラリからエントリーを取得する"
5278
5279 #. type: Plain text
5280 #: build/C/man1/getent.1:30
5281 msgid "B<getent> I<database> [I<key> ...]"
5282 msgstr "B<getent> I<database> [I<key> ...]"
5283
5284 #. type: Plain text
5285 #: build/C/man1/getent.1:45
5286 msgid ""
5287 "The B<getent> command displays entries from databases supported by the Name "
5288 "Service Switch libraries, which are configured in I</etc/nsswitch.conf>.  If "
5289 "one or more I<key> arguments are provided, then only the entries that match "
5290 "the supplied keys will be displayed.  Otherwise, if no I<key> is provided, "
5291 "all entries will be displayed (unless the database does not support "
5292 "enumeration)."
5293 msgstr ""
5294 "B<getent> コマンドは、 名前サービス切り替えライブラリでサポートされているデー"
5295 "タベースのエントリーを表示する。 名前サービス切り替えライブラリの設定は I</"
5296 "etc/nsswitch.conf> で行う。 一つ以上の I<key> 引き数が指定されると、 指定され"
5297 "たキーにマッチするエントリーだけが表示される。 I<key> が指定されなかった場"
5298 "合、 すべてのエントリーが表示される (データベースで列挙 (enumeration) がサ"
5299 "ポートされていない場合を除く)。"
5300
5301 #. type: Plain text
5302 #: build/C/man1/getent.1:49
5303 msgid ""
5304 "The I<database> may be any of those supported by the GNU C Library, listed "
5305 "below:"
5306 msgstr ""
5307 "I<database> には GNU C ライブラリでサポートされているデータベースのいずれかを"
5308 "指定できる。 以下にそのリストを示す。"
5309
5310 #. type: TP
5311 #: build/C/man1/getent.1:50
5312 #, no-wrap
5313 msgid "B<ahosts>"
5314 msgstr "B<ahosts>"
5315
5316 #. type: Plain text
5317 #: build/C/man1/getent.1:71
5318 msgid ""
5319 "When no I<key> is provided, use B<sethostent>(3), B<gethostent>(3), and "
5320 "B<endhostent>(3)  to enumerate the hosts database.  This is identical to "
5321 "using B<hosts>.  When one or more I<key> arguments are provided, pass each "
5322 "I<key> in succession to B<getaddrinfo>(3)  with the address family "
5323 "B<AF_UNSPEC>, enumerating each socket address structure returned."
5324 msgstr ""
5325 "I<key> が指定されなかった場合、 B<sethostent>(3), B<gethostent>(3), "
5326 "B<endhostent>(3) を使用して hosts データベースを列挙する。 これは B<hosts> を"
5327 "使うのと全く同じである。 I<key> 引き数が一つ以上指定された場合は、 それぞれ"
5328 "の I<key> についてアドレスファミリー B<AF_UNSPEC> で B<getaddrinfo>(3) を呼び"
5329 "出し、 返された各々のソケットアドレス構造体を列挙する。"
5330
5331 #. type: TP
5332 #: build/C/man1/getent.1:71
5333 #, no-wrap
5334 msgid "B<ahostsv4>"
5335 msgstr "B<ahostsv4>"
5336
5337 #. type: Plain text
5338 #: build/C/man1/getent.1:77
5339 msgid "Same as B<ahosts>, but use the address family B<AF_INET>."
5340 msgstr ""
5341 "B<ahosts> を同じだが、 アドレスファミリーとして B<AF_INET> を使用する。"
5342
5343 #. type: TP
5344 #: build/C/man1/getent.1:77
5345 #, no-wrap
5346 msgid "B<ahostsv6>"
5347 msgstr "B<ahostsv6>"
5348
5349 #. type: Plain text
5350 #: build/C/man1/getent.1:88
5351 msgid ""
5352 "Same as B<ahosts>, but use the address family B<AF_INET6>.  The call to "
5353 "B<getaddrinfo>(3)  in this case includes the B<AI_V4MAPPED> flag."
5354 msgstr ""
5355 "B<ahosts> を同じだが、 アドレスファミリーとして B<AF_INET6> を使用する。 この"
5356 "場合の B<getaddrinfo>(3) の呼び出しでは B<AI_V4MAPPED> も指定される。"
5357
5358 #. type: TP
5359 #: build/C/man1/getent.1:88 build/C/man5/nsswitch.conf.5:44
5360 #, no-wrap
5361 msgid "B<aliases>"
5362 msgstr "B<aliases>"
5363
5364 #. type: Plain text
5365 #: build/C/man1/getent.1:105
5366 msgid ""
5367 "When no I<key> is provided, use B<setaliasent>(3), B<getaliasent>(3), and "
5368 "B<endaliasent>(3)  to enumerate the aliases database.  When one or more "
5369 "I<key> arguments are provided, pass each I<key> in succession to "
5370 "B<getaliasbyname>(3)  and display the result."
5371 msgstr ""
5372 "I<key> が指定されなかった場合、 B<setaliasent>(3), B<getaliasent>(3), "
5373 "B<endaliasent>(3) を使用して aliases データベースを列挙する。 I<key> 引き数が"
5374 "一つ以上指定された場合は、 それぞれの I<key> についてB<getaliasbyname>(3) を"
5375 "呼び出し、 結果を表示する。"
5376
5377 #. type: TP
5378 #: build/C/man1/getent.1:105 build/C/man5/nsswitch.conf.5:49
5379 #, no-wrap
5380 msgid "B<ethers>"
5381 msgstr "B<ethers>"
5382
5383 #. type: Plain text
5384 #: build/C/man1/getent.1:121
5385 msgid ""
5386 "When one or more I<key> arguments are provided, pass each I<key> in "
5387 "succession to B<ether_aton>(3)  and B<ether_hostton>(3)  until a result is "
5388 "obtained, and display the result.  Enumeration is not supported on "
5389 "B<ethers>, so a I<key> must be provided."
5390 msgstr ""
5391 "I<key> 引き数が一つ以上指定された場合、 結果が得られるまで、 それぞれの "
5392 "I<key> について B<ether_aton>(3) と B<ether_hostton>(3) を順に呼び出し、 結果"
5393 "を表示する。 B<ethers> では列挙はサポートされていない。 したがって、 I<key> "
5394 "は指定しなければならない。"
5395
5396 #. type: TP
5397 #: build/C/man1/getent.1:121 build/C/man5/nsswitch.conf.5:52
5398 #, no-wrap
5399 msgid "B<group>"
5400 msgstr "B<group>"
5401
5402 #. type: Plain text
5403 #: build/C/man1/getent.1:142
5404 msgid ""
5405 "When no I<key> is provided, use B<setgrent>(3), B<getgrent>(3), and "
5406 "B<endgrent>(3)  to enumerate the group database.  When one or more I<key> "
5407 "arguments are provided, pass each numeric I<key> to B<getgrgid>(3)  and each "
5408 "nonnumeric I<key> to B<getgrnam>(3)  and display the result."
5409 msgstr ""
5410 "I<key> が指定されなかった場合、 B<setgrent>(3), B<getgrent>(3), "
5411 "B<endgrent>(3) を使用して group データベースを列挙する。 I<key> 引き数が一つ"
5412 "以上指定された場合は、 それぞれの I<key> について、 数値であれば "
5413 "B<getgrgid>(3) を、 数値以外であれば B<getgrnam>(3) を呼び出し、 結果を表示す"
5414 "る。"
5415
5416 #. type: TP
5417 #: build/C/man1/getent.1:142
5418 #, no-wrap
5419 msgid "B<gshadow>"
5420 msgstr "B<gshadow>"
5421
5422 #. type: Plain text
5423 #: build/C/man1/getent.1:159
5424 msgid ""
5425 "When no I<key> is provided, use B<setsgent>(3), B<getsgent>(3), and "
5426 "B<endsgent>(3)  to enumerate the gshadow database.  When one or more I<key> "
5427 "arguments are provided, pass each I<key> in succession to B<getsgnam>(3)  "
5428 "and display the result."
5429 msgstr ""
5430 "I<key> が指定されなかった場合、 B<setsgent>(3), B<getsgent>(3), "
5431 "B<endsgent>(3) を使用して gshadow データベースを列挙する。 I<key> 引き数が一"
5432 "つ以上指定された場合は、 それぞれの I<key> について B<getsgnam>(3) を呼び出"
5433 "し、 結果を表示する。"
5434
5435 #. type: TP
5436 #: build/C/man1/getent.1:159 build/C/man5/nsswitch.conf.5:57
5437 #, no-wrap
5438 msgid "B<hosts>"
5439 msgstr "B<hosts>"
5440
5441 #. type: Plain text
5442 #: build/C/man1/getent.1:182
5443 msgid ""
5444 "When no I<key> is provided, use B<sethostent>(3), B<gethostent>(3), and "
5445 "B<endhostent>(3)  to enumerate the hosts database.  When one or more I<key> "
5446 "arguments are provided, pass each I<key> to B<gethostbyaddr>(3)  or "
5447 "B<gethostbyname2>(3), depending on whether a call to B<inet_pton>(3)  "
5448 "indicates that the I<key> is an IPv6 or IPv4 address or not, and display the "
5449 "result."
5450 msgstr ""
5451 "I<key> が指定されなかった場合、 B<sethostent>(3), B<gethostent>(3), "
5452 "B<endhostent>(3) を使用して hosts データベースを列挙する。 I<key> 引き数が一"
5453 "つ以上指定された場合は、 それぞれの I<key> について B<gethostbyaddr>(3) か "
5454 "B<gethostbyname2>(3) を呼び出し、 結果を表示する。 B<gethostbyaddr>(3) か "
5455 "B<gethostbyname2>(3) のどちらを呼び出すかは、B<inet_pton>(3) の呼び出しで、 "
5456 "I<key> が IPv6 や IPv4 アドレスか、 そうでないか、 判定され、その結果によって"
5457 "決まる。"
5458
5459 #. type: TP
5460 #: build/C/man1/getent.1:182 build/C/man5/nsswitch.conf.5:62
5461 #, no-wrap
5462 msgid "B<initgroups>"
5463 msgstr "B<initgroups>"
5464
5465 #. type: Plain text
5466 #: build/C/man1/getent.1:196
5467 msgid ""
5468 "When one or more I<key> arguments are provided, pass each I<key> in "
5469 "succession to B<getgrouplist>(3)  and display the result.  Enumeration is "
5470 "not supported on B<initgroups>, so a I<key> must be provided."
5471 msgstr ""
5472 "I<key> 引き数が一つ以上指定された場合、 結果が得られるまで、 それぞれの "
5473 "I<key> について B<getgrouplist>(3) を呼び出し、 結果を表示する。 "
5474 "B<initgroups> では列挙はサポートされていない。 したがって、 I<key> は指定しな"
5475 "ければならない。"
5476
5477 #. type: TP
5478 #: build/C/man1/getent.1:196 build/C/man5/nsswitch.conf.5:67
5479 #, no-wrap
5480 msgid "B<netgroup>"
5481 msgstr "B<netgroup>"
5482
5483 #. type: Plain text
5484 #: build/C/man1/getent.1:222
5485 msgid ""
5486 "When one I<key> is provided, pass the I<key> to B<setnetgrent>(3)  and, "
5487 "using B<getnetgrent>(3)  display the resulting string triple (I<hostname>, "
5488 "I<username>, I<domainname>).  Alternatively, three I<keys> may be provided, "
5489 "which are interpreted as the I<hostname>, I<username> and I<domainname> to "
5490 "match to a netgroup name via B<innetgr>(3).  Enumeration is not supported on "
5491 "B<netgroup>, so either one or three I<keys> must be provided."
5492 msgstr ""
5493 "1 個の I<key> を指定すると、 その I<key> を B<setnetgrent>(3) に渡し、 "
5494 "B<getnetgrent>(3) を使って結果の 3 つ組の文字列 (I<hostname>, I<username>, "
5495 "I<domainname>) を表示する。 代わりに、 3 個の I<key> を指定することもでき"
5496 "る。 3 個の I<key> は I<hostname>, I<username>, I<domainname> と解釈され、 "
5497 "B<innetgr>(3) を使って対応する netgroup があるか照合される。 B<netgroup> では"
5498 "列挙はサポートされていない。 したがって、 1 個か 3 個のいずれかの I<key> を指"
5499 "定しなければならない。"
5500
5501 #. type: TP
5502 #: build/C/man1/getent.1:222 build/C/man5/nsswitch.conf.5:71
5503 #, no-wrap
5504 msgid "B<networks>"
5505 msgstr "B<networks>"
5506
5507 #. type: Plain text
5508 #: build/C/man1/getent.1:243
5509 msgid ""
5510 "When no I<key> is provided, use B<setnetent>(3), B<getnetent>(3), and "
5511 "B<endnetent>(3)  to enumerate the networks database.  When one or more "
5512 "I<key> arguments are provided, pass each numeric I<key> to "
5513 "B<getnetbyaddr>(3)  and each nonnumeric I<key> to B<getnetbyname>(3)  and "
5514 "display the result."
5515 msgstr ""
5516 "I<key> が指定されなかった場合、 B<setnetent>(3), B<getnetent>(3), "
5517 "B<endnetent>(3) を使用して networks データベースを列挙する。 I<key> 引き数が"
5518 "一つ以上指定された場合は、 それぞれの I<key> について、 数値であれば "
5519 "B<getnetbyaddr>(3) を、 数値以外であれば B<getnetbyname>(3) を呼び出し、 結果"
5520 "を表示する。"
5521
5522 #. type: TP
5523 #: build/C/man1/getent.1:243 build/C/man5/nsswitch.conf.5:76
5524 #, no-wrap
5525 msgid "B<passwd>"
5526 msgstr "B<passwd>"
5527
5528 #. type: Plain text
5529 #: build/C/man1/getent.1:264
5530 msgid ""
5531 "When no I<key> is provided, use B<setpwent>(3), B<getpwent>(3), and "
5532 "B<endpwent>(3)  to enumerate the passwd database.  When one or more I<key> "
5533 "arguments are provided, pass each numeric I<key> to B<getpwuid>(3)  and each "
5534 "nonnumeric I<key> to B<getpwnam>(3)  and display the result."
5535 msgstr ""
5536 "I<key> が指定されなかった場合、 B<setpwent>(3), B<getpwent>(3), "
5537 "B<endpwent>(3) を使用して passwd データベースを列挙する。 I<key> 引き数が一つ"
5538 "以上指定された場合は、 それぞれの I<key> について、 数値であれば "
5539 "B<getpwgid>(3) を、 数値以外であれば B<getpwnam>(3) を呼び出し、 結果を表示す"
5540 "る。"
5541
5542 #. type: TP
5543 #: build/C/man1/getent.1:264 build/C/man5/nsswitch.conf.5:81
5544 #, no-wrap
5545 msgid "B<protocols>"
5546 msgstr "B<protocols>"
5547
5548 #. type: Plain text
5549 #: build/C/man1/getent.1:285
5550 msgid ""
5551 "When no I<key> is provided, use B<setprotoent>(3), B<getprotoent>(3), and "
5552 "B<endprotoent>(3)  to enumerate the protocols database.  When one or more "
5553 "I<key> arguments are provided, pass each numeric I<key> to "
5554 "B<getprotobynumber>(3)  and each nonnumeric I<key> to B<getprotobyname>(3)  "
5555 "and display the result."
5556 msgstr ""
5557 "I<key> が指定されなかった場合、 B<setprotoent>(3), B<getprotoent>(3), "
5558 "B<endprotoent>(3) を使用して protocols データベースを列挙する。 I<key> 引き数"
5559 "が一つ以上指定された場合は、 それぞれの I<key> について、 数値であれば "
5560 "B<getprotobynumber>(3) を、 数値以外であれば B<getprotobyname>(3) を呼び出"
5561 "し、 結果を表示する。"
5562
5563 #. type: TP
5564 #: build/C/man1/getent.1:285 build/C/man5/nsswitch.conf.5:89
5565 #, no-wrap
5566 msgid "B<rpc>"
5567 msgstr "B<rpc>"
5568
5569 #. type: Plain text
5570 #: build/C/man1/getent.1:306
5571 msgid ""
5572 "When no I<key> is provided, use B<setrpcent>(3), B<getrpcent>(3), and "
5573 "B<endrpcent>(3)  to enumerate the rpc database.  When one or more I<key> "
5574 "arguments are provided, pass each numeric I<key> to B<getrpcbynumber>(3)  "
5575 "and each nonnumeric I<key> to B<getrpcbyname>(3)  and display the result."
5576 msgstr ""
5577 "I<key> が指定されなかった場合、 B<setrpcent>(3), B<getrpcent>(3), "
5578 "B<endrpcent>(3) を使用して rpc データベースを列挙する。 I<key> 引き数が一つ以"
5579 "上指定された場合は、 それぞれの I<key> について、 数値であれば "
5580 "B<getrpcbynumber>(3) を、 数値以外であれば B<getrpcbyname>(3) を呼び出し、 結"
5581 "果を表示する。"
5582
5583 #. type: TP
5584 #: build/C/man1/getent.1:306 build/C/man5/nsswitch.conf.5:94
5585 #, no-wrap
5586 msgid "B<services>"
5587 msgstr "B<services>"
5588
5589 #. type: Plain text
5590 #: build/C/man1/getent.1:327
5591 msgid ""
5592 "When no I<key> is provided, use B<setservent>(3), B<getservent>(3), and "
5593 "B<endservent>(3)  to enumerate the services database.  When one or more "
5594 "I<key> arguments are provided, pass each numeric I<key> to "
5595 "B<getservbynumber>(3)  and each nonnumeric I<key> to B<getservbyname>(3)  "
5596 "and display the result."
5597 msgstr ""
5598 "I<key> が指定されなかった場合、 B<setservent>(3), B<getservent>(3), "
5599 "B<endservent>(3) を使用して services データベースを列挙する。 I<key> 引き数が"
5600 "一つ以上指定された場合は、 それぞれの I<key> について、 数値であれば "
5601 "B<getservbynumber>(3) を、 数値以外であれば B<getservbyname>(3) を呼び出し、 "
5602 "結果を表示する。"
5603
5604 #. type: TP
5605 #: build/C/man1/getent.1:327 build/C/man5/nsswitch.conf.5:99
5606 #, no-wrap
5607 msgid "B<shadow>"
5608 msgstr "B<shadow>"
5609
5610 #. type: Plain text
5611 #: build/C/man1/getent.1:344
5612 msgid ""
5613 "When no I<key> is provided, use B<setspent>(3), B<getspent>(3), and "
5614 "B<endspent>(3)  to enumerate the shadow database.  When one or more I<key> "
5615 "arguments are provided, pass each I<key> in succession to B<getspnam>(3)  "
5616 "and display the result."
5617 msgstr ""
5618 "I<key> が指定されなかった場合、 B<setspent>(3), B<getspent>(3), "
5619 "B<endspent>(3) を使用して shadow データベースを列挙する。 I<key> 引き数が一つ"
5620 "以上指定された場合は、 それぞれの I<key> について B<getspnam>(3) を呼び出"
5621 "し、 結果を表示する。"
5622
5623 #. type: SH
5624 #: build/C/man1/getent.1:345
5625 #, no-wrap
5626 msgid "EXIT STATUS"
5627 msgstr "終了ステータス"
5628
5629 #. type: Plain text
5630 #: build/C/man1/getent.1:348
5631 msgid "One of the following exit values can be returned by B<getent>:"
5632 msgstr "B<getent> は以下のいずれかの終了ステータスを返す。"
5633
5634 #. type: TP
5635 #: build/C/man1/getent.1:349
5636 #, no-wrap
5637 msgid "B<0>"
5638 msgstr "B<0>"
5639
5640 #. type: Plain text
5641 #: build/C/man1/getent.1:352
5642 msgid "Command completed successfully."
5643 msgstr "コマンドが正常に完了した。"
5644
5645 #. type: TP
5646 #: build/C/man1/getent.1:352
5647 #, no-wrap
5648 msgid "B<1>"
5649 msgstr "B<1>"
5650
5651 #. type: Plain text
5652 #: build/C/man1/getent.1:357
5653 msgid "Missing arguments, or I<database> unknown."
5654 msgstr "引き数が不足しているか、 知らない I<database> が指定された。"
5655
5656 #. type: TP
5657 #: build/C/man1/getent.1:357
5658 #, no-wrap
5659 msgid "B<2>"
5660 msgstr "B<2>"
5661
5662 #. type: Plain text
5663 #: build/C/man1/getent.1:363
5664 msgid "One or more supplied I<key> could not be found in the I<database>."
5665 msgstr "指定された I<key> が I<database> で見つからなかった。"
5666
5667 #. type: TP
5668 #: build/C/man1/getent.1:363
5669 #, no-wrap
5670 msgid "B<3>"
5671 msgstr "B<3>"
5672
5673 #. type: Plain text
5674 #: build/C/man1/getent.1:367
5675 msgid "Enumeration not supported on this I<database>."
5676 msgstr "この I<database> では列挙はサポートされていない。"
5677
5678 #. type: Plain text
5679 #: build/C/man1/getent.1:370
5680 msgid "B<nsswitch.conf>(5)"
5681 msgstr "B<nsswitch.conf>(5)"
5682
5683 #. type: TH
5684 #: build/C/man3/gethostbyname.3:38
5685 #, no-wrap
5686 msgid "GETHOSTBYNAME"
5687 msgstr "GETHOSTBYNAME"
5688
5689 #. type: TH
5690 #: build/C/man3/gethostbyname.3:38
5691 #, no-wrap
5692 msgid "2014-03-11"
5693 msgstr "2014-03-11"
5694
5695 #. type: Plain text
5696 #: build/C/man3/gethostbyname.3:46
5697 msgid ""
5698 "gethostbyname, gethostbyaddr, sethostent, gethostent, endhostent, h_errno, "
5699 "herror, hstrerror, gethostbyaddr_r, gethostbyname2, gethostbyname2_r, "
5700 "gethostbyname_r, gethostent_r - get network host entry"
5701 msgstr ""
5702 "gethostbyname, gethostbyaddr, sethostent, gethostent, endhostent, h_errno, "
5703 "herror, hstrerror, gethostbyaddr_r, gethostbyname2, gethostbyname2_r, "
5704 "gethostbyname_r, gethostent_r - ネットワーク上のホストのエントリーを取得する"
5705
5706 #. type: Plain text
5707 #: build/C/man3/gethostbyname.3:50
5708 #, no-wrap
5709 msgid ""
5710 "B<#include E<lt>netdb.hE<gt>>\n"
5711 "B<extern int h_errno;>\n"
5712 msgstr ""
5713 "B<#include E<lt>netdb.hE<gt>>\n"
5714 "B<extern int h_errno;>\n"
5715
5716 #. type: Plain text
5717 #: build/C/man3/gethostbyname.3:52
5718 #, no-wrap
5719 msgid "B<struct hostent *gethostbyname(const char *>I<name>B<);>\n"
5720 msgstr "B<struct hostent *gethostbyname(const char *>I<name>B<);>\n"
5721
5722 #. type: Plain text
5723 #: build/C/man3/gethostbyname.3:56
5724 #, no-wrap
5725 msgid ""
5726 "B<#include E<lt>sys/socket.hE<gt>>       /* for AF_INET */\n"
5727 "B<struct hostent *gethostbyaddr(const void *>I<addr>B<,>\n"
5728 "B<                              socklen_t >I<len>B<, int >I<type>B<);>\n"
5729 msgstr ""
5730 "B<#include E<lt>sys/socket.hE<gt>>       /* AF_INET を使う場合 */\n"
5731 "B<struct hostent *gethostbyaddr(const void *>I<addr>B<,>\n"
5732 "B<                              socklen_t >I<len>B<, int >I<type>B<);>\n"
5733
5734 #. type: Plain text
5735 #: build/C/man3/gethostbyname.3:58
5736 #, no-wrap
5737 msgid "B<void sethostent(int >I<stayopen>B<);>\n"
5738 msgstr "B<void sethostent(int >I<stayopen>B<);>\n"
5739
5740 #. type: Plain text
5741 #: build/C/man3/gethostbyname.3:60
5742 #, no-wrap
5743 msgid "B<void endhostent(void);>\n"
5744 msgstr "B<void endhostent(void);>\n"
5745
5746 #. type: Plain text
5747 #: build/C/man3/gethostbyname.3:62
5748 #, no-wrap
5749 msgid "B<void herror(const char *>I<s>B<);>\n"
5750 msgstr "B<void herror(const char *>I<s>B<);>\n"
5751
5752 #. type: Plain text
5753 #: build/C/man3/gethostbyname.3:64
5754 #, no-wrap
5755 msgid "B<const char *hstrerror(int >I<err>B<);>\n"
5756 msgstr "B<const char *hstrerror(int >I<err>B<);>\n"
5757
5758 #. type: Plain text
5759 #: build/C/man3/gethostbyname.3:66
5760 #, no-wrap
5761 msgid "/* System V/POSIX extension */\n"
5762 msgstr "/* System V/POSIX 拡張 */\n"
5763
5764 #. type: Plain text
5765 #: build/C/man3/gethostbyname.3:68
5766 #, no-wrap
5767 msgid "B<struct hostent *gethostent(void);>\n"
5768 msgstr "B<struct hostent *gethostent(void);>\n"
5769
5770 #. type: Plain text
5771 #: build/C/man3/gethostbyname.3:72
5772 #, no-wrap
5773 msgid "B<struct hostent *gethostbyname2(const char *>I<name>B<, int >I<af>B<);>\n"
5774 msgstr "B<struct hostent *gethostbyname2(const char *>I<name>B<, int >I<af>B<);>\n"
5775
5776 #. type: Plain text
5777 #: build/C/man3/gethostbyname.3:76
5778 #, no-wrap
5779 msgid ""
5780 "B<int gethostent_r(>\n"
5781 "B<        struct hostent *>I<ret>B<, char *>I<buf>B<, size_t >I<buflen>B<,>\n"
5782 "B<        struct hostent **>I<result>B<, int *>I<h_errnop>B<);>\n"
5783 msgstr ""
5784 "B<int gethostent_r(>\n"
5785 "B<        struct hostent *>I<ret>B<, char *>I<buf>B<, size_t >I<buflen>B<,>\n"
5786 "B<        struct hostent **>I<result>B<, int *>I<h_errnop>B<);>\n"
5787
5788 #. type: Plain text
5789 #: build/C/man3/gethostbyname.3:80
5790 #, no-wrap
5791 msgid ""
5792 "B<int gethostbyaddr_r(const void *>I<addr>B<, socklen_t >I<len>B<, int >I<type>B<,>\n"
5793 "B<        struct hostent *>I<ret>B<, char *>I<buf>B<, size_t >I<buflen>B<,>\n"
5794 "B<        struct hostent **>I<result>B<, int *>I<h_errnop>B<);>\n"
5795 msgstr ""
5796 "B<int gethostbyaddr_r(const void *>I<addr>B<, socklen_t >I<len>B<, int >I<type>B<,>\n"
5797 "B<        struct hostent *>I<ret>B<, char *>I<buf>B<, size_t >I<buflen>B<,>\n"
5798 "B<        struct hostent **>I<result>B<, int *>I<h_errnop>B<);>\n"
5799
5800 #. type: Plain text
5801 #: build/C/man3/gethostbyname.3:84
5802 #, no-wrap
5803 msgid ""
5804 "B<int gethostbyname_r(const char *>I<name>B<,>\n"
5805 "B<        struct hostent *>I<ret>B<, char *>I<buf>B<, size_t >I<buflen>B<,>\n"
5806 "B<        struct hostent **>I<result>B<, int *>I<h_errnop>B<);>\n"
5807 msgstr ""
5808 "B<int gethostbyname_r(const char *>I<name>B<,>\n"
5809 "B<        struct hostent *>I<ret>B<, char *>I<buf>B<, size_t >I<buflen>B<,>\n"
5810 "B<        struct hostent **>I<result>B<, int *>I<h_errnop>B<);>\n"
5811
5812 #. type: Plain text
5813 #: build/C/man3/gethostbyname.3:88
5814 #, no-wrap
5815 msgid ""
5816 "B<int gethostbyname2_r(const char *>I<name>B<, int >I<af,>\n"
5817 "B<        struct hostent *>I<ret>B<, char *>I<buf>B<, size_t >I<buflen>B<,>\n"
5818 "B<        struct hostent **>I<result>B<, int *>I<h_errnop>B<);>\n"
5819 msgstr ""
5820 "B<int gethostbyname2_r(const char *>I<name>B<, int >I<af,>\n"
5821 "B<        struct hostent *>I<ret>B<, char *>I<buf>B<, size_t >I<buflen>B<,>\n"
5822 "B<        struct hostent **>I<result>B<, int *>I<h_errnop>B<);>\n"
5823
5824 #. type: Plain text
5825 #: build/C/man3/gethostbyname.3:102
5826 msgid ""
5827 "B<gethostbyname2>(), B<gethostent_r>(), B<gethostbyaddr_r>(), "
5828 "B<gethostbyname_r>(), B<gethostbyname2_r>():"
5829 msgstr ""
5830 "B<gethostbyname2>(), B<gethostent_r>(), B<gethostbyaddr_r>(), "
5831 "B<gethostbyname_r>(), B<gethostbyname2_r>():"
5832
5833 #. type: Plain text
5834 #: build/C/man3/gethostbyname.3:104 build/C/man3/gethostbyname.3:112
5835 #: build/C/man3/getnetent_r.3:60 build/C/man3/getprotoent_r.3:57
5836 #: build/C/man3/getservent_r.3:57 build/C/man3/inet_net_pton.3:58
5837 msgid "_BSD_SOURCE || _SVID_SOURCE"
5838 msgstr "_BSD_SOURCE || _SVID_SOURCE"
5839
5840 #. type: Plain text
5841 #: build/C/man3/gethostbyname.3:108
5842 msgid "B<herror>(), B<hstrerror>():"
5843 msgstr "B<herror>(), B<hstrerror>():"
5844
5845 #. type: TP
5846 #: build/C/man3/gethostbyname.3:109
5847 #, no-wrap
5848 msgid "Since glibc 2.8:"
5849 msgstr "glibc 2.8 以降:"
5850
5851 #. type: TP
5852 #: build/C/man3/gethostbyname.3:112
5853 #, no-wrap
5854 msgid "Before glibc 2.8:"
5855 msgstr "glibc 2.8 より前:"
5856
5857 #. type: Plain text
5858 #: build/C/man3/gethostbyname.3:115 build/C/man3/gethostbyname.3:126
5859 msgid "none"
5860 msgstr "なし"
5861
5862 #. type: Plain text
5863 #: build/C/man3/gethostbyname.3:118
5864 msgid "B<h_errno>:"
5865 msgstr "B<h_errno>:"
5866
5867 #. type: TP
5868 #: build/C/man3/gethostbyname.3:119
5869 #, no-wrap
5870 msgid "Since glibc 2.12:"
5871 msgstr "glibc 2.12 以降:"
5872
5873 #. type: Plain text
5874 #: build/C/man3/gethostbyname.3:123
5875 #, no-wrap
5876 msgid ""
5877 "_BSD_SOURCE || _SVID_SOURCE ||\n"
5878 "    (_POSIX_C_SOURCE E<lt> 200809L && _XOPEN_SOURCE E<lt> 700)\n"
5879 msgstr ""
5880 "_BSD_SOURCE || _SVID_SOURCE ||\n"
5881 "    (_POSIX_C_SOURCE E<lt> 200809L && _XOPEN_SOURCE E<lt> 700)\n"
5882
5883 #. type: TP
5884 #: build/C/man3/gethostbyname.3:123
5885 #, no-wrap
5886 msgid "Before glibc 2.12:"
5887 msgstr "glibc 2.12 より前:"
5888
5889 #. type: Plain text
5890 #: build/C/man3/gethostbyname.3:143
5891 msgid ""
5892 "The B<gethostbyname*>(), B<gethostbyaddr*>(), B<herror>(), and "
5893 "B<hstrerror>()  functions are obsolete.  Applications should use "
5894 "B<getaddrinfo>(3), B<getnameinfo>(3), and B<gai_strerror>(3)  instead."
5895 msgstr ""
5896 "関数 B<gethostbyname*>(), B<gethostbyaddr*>(), B<herror>(), B<hstrerror> は過"
5897 "去のものである。 アプリケーションは、代わりに B<getaddrinfo>(3), "
5898 "B<getnameinfo>(3), B<gai_strerror>(3) を使用すること。"
5899
5900 #. type: Plain text
5901 #: build/C/man3/gethostbyname.3:184
5902 msgid ""
5903 "The B<gethostbyname>()  function returns a structure of type I<hostent> for "
5904 "the given host I<name>.  Here I<name> is either a hostname, or an IPv4 "
5905 "address in standard dot notation (as for B<inet_addr>(3)), or an IPv6 "
5906 "address in colon (and possibly dot) notation.  (See RFC\\ 1884 for the "
5907 "description of IPv6 addresses.)  If I<name> is an IPv4 or IPv6 address, no "
5908 "lookup is performed and B<gethostbyname>()  simply copies I<name> into the "
5909 "I<h_name> field and its I<struct in_addr> equivalent into the "
5910 "I<h_addr_list[0]> field of the returned I<hostent> structure.  If I<name> "
5911 "doesn't end in a dot and the environment variable B<HOSTALIASES> is set, the "
5912 "alias file pointed to by B<HOSTALIASES> will first be searched for I<name> "
5913 "(see B<hostname>(7)  for the file format).  The current domain and its "
5914 "parents are searched unless I<name> ends in a dot."
5915 msgstr ""
5916 "B<gethostbyname>()  関数は与えられたホスト名 I<name> に対応する構造体 "
5917 "I<hostent> を返す。 I<name> にはホスト名、ドット区切りの IPv4 アドレス "
5918 "(B<inet_addr>(3)  参照)、コロン区切りの IPv6 アドレス (おそらくドット区切りで"
5919 "も大丈夫)  のいずれかを指定する (IPv6 アドレスの記述方法については RFC\\ "
5920 "1884 を参考にしてほしい)。 I<name> が IPv4 か IPv6 のアドレスだった場合、 名"
5921 "前解決 (lookup) は行われない。その場合には、 B<gethostbyname>()  は I<name> "
5922 "をそのまま I<hostent> 構造体の I<h_name> フィールドにコピーし、 さらに "
5923 "I<name> を I<struct in_addr> 形式で表したデータを I<hostent> 構造体の "
5924 "I<h_addr_list[0]> フィールドに入れて、その I<hostent> 構造体を返す。 I<name> "
5925 "がドットで終了していて、かつ環境変数 B<HOSTALIASES> が設定されている場合、ま"
5926 "ず B<HOSTALIASES> で指定されているエイリアスファイルから I<name> のエントリー"
5927 "が検索される (ファイルのフォーマットについては B<hostname>(7)  を参照のこ"
5928 "と)。 I<name> がドットで終了していなければ、現在のドメインとその親ドメインが"
5929 "検索される。"
5930
5931 #. type: Plain text
5932 #: build/C/man3/gethostbyname.3:200
5933 msgid ""
5934 "The B<gethostbyaddr>()  function returns a structure of type I<hostent> for "
5935 "the given host address I<addr> of length I<len> and address type I<type>.  "
5936 "Valid address types are B<AF_INET> and B<AF_INET6>.  The host address "
5937 "argument is a pointer to a struct of a type depending on the address type, "
5938 "for example a I<struct in_addr *> (probably obtained via a call to "
5939 "B<inet_addr>(3))  for address type B<AF_INET>."
5940 msgstr ""
5941 "B<gethostbyaddr>()  関数は与えられたホストアドレス I<addr> (長さ I<len>、 タ"
5942 "イプ I<type>) に対応する構造体 I<hostent> を返す。 用いることのできるタイプ"
5943 "は B<AF_INET> と B<AF_INET6> である。 ホストアドレス引き数はアドレスタイプに"
5944 "依存した 構造体へのポインターである。 例えば、アドレスタイプ B<AF_INET> に対"
5945 "しては (B<inet_addr>(3)  の呼び出しで得られる)  I<struct in_addr *> である。"
5946
5947 #. type: Plain text
5948 #: build/C/man3/gethostbyname.3:207
5949 msgid ""
5950 "The B<sethostent>()  function specifies, if I<stayopen> is true (1), that a "
5951 "connected TCP socket should be used for the name server queries and that the "
5952 "connection should remain open during successive queries.  Otherwise, name "
5953 "server queries will use UDP datagrams."
5954 msgstr ""
5955 "B<sethostent>()  関数は、ネームサーバへの接続形態を指定する。 I<stayopen> が"
5956 "真 (1) ならば、ネームサーバへの問い合わせには、 接続された TCP ソケットを用"
5957 "い、連続した問い合わせの間に接続を維持する。 偽ならばネームサーバへの問い合わ"
5958 "せに UDP データグラムを用いる。"
5959
5960 #. type: Plain text
5961 #: build/C/man3/gethostbyname.3:212
5962 msgid ""
5963 "The B<endhostent>()  function ends the use of a TCP connection for name "
5964 "server queries."
5965 msgstr ""
5966 "B<endhostent>()  関数はネームサーバへの問い合わせに用いた TCP 接続の利用を終"
5967 "了する。"
5968
5969 #. type: Plain text
5970 #: build/C/man3/gethostbyname.3:217
5971 msgid ""
5972 "The (obsolete)  B<herror>()  function prints the error message associated "
5973 "with the current value of I<h_errno> on I<stderr>."
5974 msgstr ""
5975 "(廃止予定の)  B<herror>()  関数は現在の I<h_errno> に対応するエラーメッセージ"
5976 "を標準エラー I<stderr> に出力する。"
5977
5978 #. type: Plain text
5979 #: build/C/man3/gethostbyname.3:222
5980 msgid ""
5981 "The (obsolete)  B<hstrerror>()  function takes an error number (typically "
5982 "I<h_errno>) and returns the corresponding message string."
5983 msgstr ""
5984 "(廃止予定の)  B<hstrerror>()  関数はエラー番号 (通常は I<h_errno>) を引き数に"
5985 "取り、 対応するエラーメッセージ文字列を返す。"
5986
5987 #.  (See
5988 #.  .BR resolv+ (8)).
5989 #. type: Plain text
5990 #: build/C/man3/gethostbyname.3:239
5991 msgid ""
5992 "The domain name queries carried out by B<gethostbyname>()  and "
5993 "B<gethostbyaddr>()  use a combination of any or all of the name server "
5994 "B<named>(8), a broken out line from I</etc/hosts>, and the Network "
5995 "Information Service (NIS or YP), depending upon the contents of the I<order> "
5996 "line in I</etc/host.conf>.  The default action is to query B<named>(8), "
5997 "followed by I</etc/hosts>."
5998 msgstr ""
5999 "B<gethostbyname>()  と B<gethostbyaddr>()  によって実行されるドメイン名の問い"
6000 "合わせでは、ネームサーバ B<named>(8)、 I</etc/hosts> のデータ行、および "
6001 "Network Information Service (NIS または YP)  が組み合わせて使用される。何が使"
6002 "用されるかは、 I</etc/host.conf> の I<order> 行の内容により決まる。 デフォル"
6003 "トでは、まず B<named>(8)  に問い合わせを行い、次いで I</etc/hosts> を参照す"
6004 "る。"
6005
6006 #. type: Plain text
6007 #: build/C/man3/gethostbyname.3:241
6008 msgid "The I<hostent> structure is defined in I<E<lt>netdb.hE<gt>> as follows:"
6009 msgstr "I<hostent> 構造体は I<E<lt>netdb.hE<gt>> で以下のように定義されている:"
6010
6011 #. type: Plain text
6012 #: build/C/man3/gethostbyname.3:253
6013 #, no-wrap
6014 msgid ""
6015 "struct hostent {\n"
6016 "    char  *h_name;            /* official name of host */\n"
6017 "    char **h_aliases;         /* alias list */\n"
6018 "    int    h_addrtype;        /* host address type */\n"
6019 "    int    h_length;          /* length of address */\n"
6020 "    char **h_addr_list;       /* list of addresses */\n"
6021 "}\n"
6022 "#define h_addr h_addr_list[0] /* for backward compatibility */\n"
6023 msgstr ""
6024 "struct hostent {\n"
6025 "    char  *h_name;            /* official name of host */\n"
6026 "    char **h_aliases;         /* alias list */\n"
6027 "    int    h_addrtype;        /* host address type */\n"
6028 "    int    h_length;          /* length of address */\n"
6029 "    char **h_addr_list;       /* list of addresses */\n"
6030 "}\n"
6031 "#define h_addr h_addr_list[0] /* 過去との互換性のため */\n"
6032
6033 #. type: Plain text
6034 #: build/C/man3/gethostbyname.3:257
6035 msgid "The members of the I<hostent> structure are:"
6036 msgstr "I<hostent> 構造体のメンバは以下の通り。"
6037
6038 #. type: TP
6039 #: build/C/man3/gethostbyname.3:257 build/C/man3/getipnodebyname.3:210
6040 #, no-wrap
6041 msgid "I<h_name>"
6042 msgstr "I<h_name>"
6043
6044 #. type: Plain text
6045 #: build/C/man3/gethostbyname.3:260
6046 msgid "The official name of the host."
6047 msgstr "ホストの正式名 (official name)。"
6048
6049 #. type: TP
6050 #: build/C/man3/gethostbyname.3:260 build/C/man3/getipnodebyname.3:213
6051 #, no-wrap
6052 msgid "I<h_aliases>"
6053 msgstr "I<h_aliases>"
6054
6055 #. type: Plain text
6056 #: build/C/man3/gethostbyname.3:263
6057 msgid ""
6058 "An array of alternative names for the host, terminated by a null pointer."
6059 msgstr "ホストの別名の配列。配列はヌルポインターで終端される。"
6060
6061 #. type: TP
6062 #: build/C/man3/gethostbyname.3:263 build/C/man3/getipnodebyname.3:217
6063 #, no-wrap
6064 msgid "I<h_addrtype>"
6065 msgstr "I<h_addrtype>"
6066
6067 #. type: Plain text
6068 #: build/C/man3/gethostbyname.3:270
6069 msgid "The type of address; always B<AF_INET> or B<AF_INET6> at present."
6070 msgstr "アドレスのタイプ。現在はすべて B<AF_INET> または B<AF_INET6> である。"
6071
6072 #. type: TP
6073 #: build/C/man3/gethostbyname.3:270 build/C/man3/getipnodebyname.3:239
6074 #, no-wrap
6075 msgid "I<h_length>"
6076 msgstr "I<h_length>"
6077
6078 #. type: Plain text
6079 #: build/C/man3/gethostbyname.3:273
6080 msgid "The length of the address in bytes."
6081 msgstr "バイト単位で表したアドレスの長さ。"
6082
6083 #. type: TP
6084 #: build/C/man3/gethostbyname.3:273 build/C/man3/getipnodebyname.3:253
6085 #, no-wrap
6086 msgid "I<h_addr_list>"
6087 msgstr "I<h_addr_list>"
6088
6089 #. type: Plain text
6090 #: build/C/man3/gethostbyname.3:277
6091 msgid ""
6092 "An array of pointers to network addresses for the host (in network byte "
6093 "order), terminated by a null pointer."
6094 msgstr ""
6095 "ホストのネットワークアドレスへのポインターの配列。 配列はヌルポインターで終端"
6096 "される。 ネットワークアドレスはネットワークバイトオーダ形式である。"
6097
6098 #. type: TP
6099 #: build/C/man3/gethostbyname.3:277
6100 #, no-wrap
6101 msgid "I<h_addr>"
6102 msgstr "I<h_addr>"
6103
6104 #. type: Plain text
6105 #: build/C/man3/gethostbyname.3:280
6106 msgid "The first address in I<h_addr_list> for backward compatibility."
6107 msgstr ""
6108 "I<h_addr_list> の最初のアドレス。過去との互換性を保つためのものである。"
6109
6110 #. type: Plain text
6111 #: build/C/man3/gethostbyname.3:292
6112 msgid ""
6113 "The B<gethostbyname>()  and B<gethostbyaddr>()  functions return the "
6114 "I<hostent> structure or a null pointer if an error occurs.  On error, the "
6115 "I<h_errno> variable holds an error number.  When non-NULL, the return value "
6116 "may point at static data, see the notes below."
6117 msgstr ""
6118 "B<gethostbyname>()  および B<gethostbyaddr>()  関数は I<hostent> 構造体を返"
6119 "す。エラーが起こったらヌルポインターを返す。エラーの際には I<h_errno> 変数が"
6120 "エラーの番号を保持する。 返り値が NULL でない場合、静的データをポインターで指"
6121 "していることもある。 以下の「注意」を参照すること。"
6122
6123 #. type: Plain text
6124 #: build/C/man3/gethostbyname.3:294
6125 msgid "The variable I<h_errno> can have the following values:"
6126 msgstr "I<h_errno> 変数は以下の値を取りうる。"
6127
6128 #. type: TP
6129 #: build/C/man3/gethostbyname.3:294 build/C/man3/getipnodebyname.3:190
6130 #, no-wrap
6131 msgid "B<HOST_NOT_FOUND>"
6132 msgstr "B<HOST_NOT_FOUND>"
6133
6134 #. type: Plain text
6135 #: build/C/man3/gethostbyname.3:297
6136 msgid "The specified host is unknown."
6137 msgstr "指定したホストが見つからない。"
6138
6139 #. type: TP
6140 #: build/C/man3/gethostbyname.3:297
6141 #, no-wrap
6142 msgid "B<NO_ADDRESS> or B<NO_DATA>"
6143 msgstr "B<NO_ADDRESS  または  NO_DATA>"
6144
6145 #. type: Plain text
6146 #: build/C/man3/gethostbyname.3:300
6147 msgid "The requested name is valid but does not have an IP address."
6148 msgstr "指定した名前は有効だが IP アドレスを持っていない。"
6149
6150 #. type: TP
6151 #: build/C/man3/gethostbyname.3:300 build/C/man3/getipnodebyname.3:199
6152 #, no-wrap
6153 msgid "B<NO_RECOVERY>"
6154 msgstr "B<NO_RECOVERY>"
6155
6156 #. type: Plain text
6157 #: build/C/man3/gethostbyname.3:303
6158 msgid "A nonrecoverable name server error occurred."
6159 msgstr "ネームサーバの復旧不能なエラーが起こった。"
6160
6161 #. type: TP
6162 #: build/C/man3/gethostbyname.3:303 build/C/man3/getipnodebyname.3:202
6163 #, no-wrap
6164 msgid "B<TRY_AGAIN>"
6165 msgstr "B<TRY_AGAIN>"
6166
6167 #. type: Plain text
6168 #: build/C/man3/gethostbyname.3:307
6169 msgid ""
6170 "A temporary error occurred on an authoritative name server.  Try again later."
6171 msgstr ""
6172 "authoritative なネームサーバで一時的なエラーが起こった。 時間をおいてもう一度"
6173 "試すこと。"
6174
6175 #. type: TP
6176 #: build/C/man3/gethostbyname.3:308 build/C/man5/host.conf.5:181
6177 #, no-wrap
6178 msgid "I</etc/host.conf>"
6179 msgstr "I</etc/host.conf>"
6180
6181 #. type: Plain text
6182 #: build/C/man3/gethostbyname.3:311
6183 msgid "resolver configuration file"
6184 msgstr "名前解決の設定ファイル"
6185
6186 #. type: Plain text
6187 #: build/C/man3/gethostbyname.3:311 build/C/man5/host.conf.5:187
6188 #: build/C/man5/hosts.5:88
6189 #, no-wrap
6190 msgid "I</etc/hosts>"
6191 msgstr "I</etc/hosts>"
6192
6193 #. type: Plain text
6194 #: build/C/man3/gethostbyname.3:314
6195 msgid "host database file"
6196 msgstr "ホストのデータベースファイル"
6197
6198 #. type: Plain text
6199 #: build/C/man3/gethostbyname.3:314 build/C/man5/nsswitch.conf.5:306
6200 #: build/C/man3/setnetgrent.3:92
6201 #, no-wrap
6202 msgid "I</etc/nsswitch.conf>"
6203 msgstr "I</etc/nsswitch.conf>"
6204
6205 #. type: Plain text
6206 #: build/C/man3/gethostbyname.3:317
6207 msgid "name service switch configuration"
6208 msgstr "ネームサービス切替設定"
6209
6210 #. type: Plain text
6211 #: build/C/man3/gethostbyname.3:341
6212 msgid ""
6213 "POSIX.1-2001 specifies B<gethostbyname>(), B<gethostbyaddr>(), "
6214 "B<sethostent>(), B<endhostent>(), B<gethostent>(), and I<h_errno>; "
6215 "B<gethostbyname>(), B<gethostbyaddr>(), and I<h_errno> are marked "
6216 "obsolescent in that standard.  POSIX.1-2008 removes the specifications of "
6217 "B<gethostbyname>(), B<gethostbyaddr>(), and I<h_errno>, recommending the use "
6218 "of B<getaddrinfo>(3)  and B<getnameinfo>(3)  instead."
6219 msgstr ""
6220 "POSIX.1-2001 では、 B<gethostbyname>(), B<gethostbyaddr>(), B<sethostent>(), "
6221 "B<endhostent>(), B<gethostent>(), I<h_errno> が規定されており、 "
6222 "B<gethostbyaddr>()  と B<gethostbyname>()  は廃止予定であるとされている。 "
6223 "POSIX.1-2008 では B<gethostbyname>(), B<gethostbyaddr>(), I<h_errno> の仕様が"
6224 "削除されている。 代わりに、 B<getaddrinfo>(3)  と B<getnameinfo>(3)  の使用が"
6225 "推奨されている。"
6226
6227 #. type: Plain text
6228 #: build/C/man3/gethostbyname.3:351
6229 msgid ""
6230 "The functions B<gethostbyname>()  and B<gethostbyaddr>()  may return "
6231 "pointers to static data, which may be overwritten by later calls.  Copying "
6232 "the I<struct hostent> does not suffice, since it contains pointers; a deep "
6233 "copy is required."
6234 msgstr ""
6235 "B<gethostbyname>()  および B<gethostbyaddr>()  関数は静的データへのポインター"
6236 "を返す。 このポインターは、その後の呼び出しで上書きされるかもしれない。 "
6237 "I<hostent> 構造体はポインターを含んでいるので、構造体のコピーだけでは不十分で"
6238 "ある; より深いコピーが必要である。"
6239
6240 #. type: Plain text
6241 #: build/C/man3/gethostbyname.3:375
6242 msgid ""
6243 "In the original BSD implementation the I<len> argument of "
6244 "B<gethostbyname>()  was an I<int>.  The SUSv2 standard is buggy and declares "
6245 "the I<len> argument of B<gethostbyaddr>()  to be of type I<size_t>.  (That "
6246 "is wrong, because it has to be I<int>, and I<size_t> is not.  POSIX.1-2001 "
6247 "makes it I<socklen_t>, which is OK.)  See also B<accept>(2)."
6248 msgstr ""
6249 "オリジナルの BSD の実装では、 B<gethostbyname>()  の I<len> 引き数は I<int> "
6250 "であった。 SUSv2 標準はバグが多く、 B<gethostbyaddr>()  の I<len> パラメー"
6251 "ターを I<size_t> 型として宣言している。 (これは誤りで、 I<size_t> 型ではなく "
6252 "I<int> 型でなければならない。 POSIX.1-2001 ではこれを I<socklen_t> としている"
6253 "が、これは OK。)  B<accept>(2)  も参照。"
6254
6255 #. type: Plain text
6256 #: build/C/man3/gethostbyname.3:381
6257 msgid ""
6258 "The BSD prototype for B<gethostbyaddr>()  uses I<const char\\ *> for the "
6259 "first argument."
6260 msgstr ""
6261 "B<gethostbyaddr>()  の BSD のプロトタイプは、最初の引き数として I<const char"
6262 "\\ *> を使う。"
6263
6264 #. type: SS
6265 #: build/C/man3/gethostbyname.3:381
6266 #, no-wrap
6267 msgid "System V/POSIX extension"
6268 msgstr "System V/POSIX 拡張"
6269
6270 #.  e.g., Linux, FreeBSD, UnixWare, HP-UX
6271 #.  e.g., FreeBSD, AIX
6272 #. type: Plain text
6273 #: build/C/man3/gethostbyname.3:398
6274 msgid ""
6275 "POSIX requires the B<gethostent>()  call, that should return the next entry "
6276 "in the host data base.  When using DNS/BIND this does not make much sense, "
6277 "but it may be reasonable if the host data base is a file that can be read "
6278 "line by line.  On many systems a routine of this name reads from the file I</"
6279 "etc/hosts>.  It may be available only when the library was built without DNS "
6280 "support.  The glibc version will ignore ipv6 entries.  This function is not "
6281 "reentrant, and glibc adds a reentrant version B<gethostent_r>()."
6282 msgstr ""
6283 "POSIX では、 B<gethostent>()  が必須とされている。 この関数はホストデータベー"
6284 "スの次のエントリーを返す。 DNS/BIND を使う場合はあまり意味を持たないが、 ホス"
6285 "トデータベースが 1 行ずつ読み込まれるファイルである場合は意味がある。 多くの"
6286 "システムでは、この名前のルーチンはファイル I</etc/hosts> を読み込む。 DNS サ"
6287 "ポートなしでライブラリがビルドされた場合にのみ利用可能である。 glibc 版は "
6288 "ipv6 エントリーを無視する。 この関数はリエントラント (reentrant) ではなく、 "
6289 "glibc にはリエントラント版の B<gethostent_r>()  が追加された。"
6290
6291 #. type: SS
6292 #: build/C/man3/gethostbyname.3:398
6293 #, no-wrap
6294 msgid "GNU extensions"
6295 msgstr "GNU 拡張"
6296
6297 #. type: Plain text
6298 #: build/C/man3/gethostbyname.3:404
6299 msgid ""
6300 "Glibc2 also has a B<gethostbyname2>()  that works like B<gethostbyname>(), "
6301 "but permits to specify the address family to which the address must belong."
6302 msgstr ""
6303 "glibc2 には B<gethostbyname2>()  もあり、 B<gethostbyname>()  と同じように動"
6304 "作するが、 こちらはアドレスが属するアドレスファミリーを指定することができる。"
6305
6306 #. type: Plain text
6307 #: build/C/man3/gethostbyname.3:438
6308 msgid ""
6309 "Glibc2 also has reentrant versions B<gethostent_r>(), B<gethostbyaddr_r>(), "
6310 "B<gethostbyname_r>()  and B<gethostbyname2_r>().  The caller supplies a "
6311 "I<hostent> structure I<ret> which will be filled in on success, and a "
6312 "temporary work buffer I<buf> of size I<buflen>.  After the call, I<result> "
6313 "will point to the result on success.  In case of an error or if no entry is "
6314 "found I<result> will be NULL.  The functions return 0 on success and a "
6315 "nonzero error number on failure.  In addition to the errors returned by the "
6316 "nonreentrant versions of these functions, if I<buf> is too small, the "
6317 "functions will return B<ERANGE>, and the call should be retried with a "
6318 "larger buffer.  The global variable I<h_errno> is not modified, but the "
6319 "address of a variable in which to store error numbers is passed in "
6320 "I<h_errnop>."
6321 msgstr ""
6322 "glibc2 にはリエントラントな B<gethostent_r>(), B<gethostbyaddr_r>(), "
6323 "B<gethostbyname_r>()  と B<gethostbyname2_r>()  もある。 呼び出し側は、成功時"
6324 "に結果が格納される I<hostent> 構造体 I<ret> と、大きさ I<buflen> の一時的な作"
6325 "業バッファー I<buf> を提供する。 コール終了後、成功した場合 I<result> は結果"
6326 "を指している。 エラーの場合、またはエントリーが見つからなかった場合、 "
6327 "I<result> は NULL になる。 これらの関数は、成功した場合 0 を返し、失敗の場合"
6328 "は 0 以外のエラー番号を返す。 これらの関数のリエントラントでないバージョンが"
6329 "返すエラーに加えて、 これらの関数は、 I<buf> が小さすぎた場合に B<ERANGE> を"
6330 "返す。この場合はもっと大きなバッファーを用意して 関数呼び出しを再度行うべきで"
6331 "ある。 大域変数 I<h_errno> は変更されないが、エラー番号を格納する変数のアドレ"
6332 "スが I<h_errnop> に渡される。"
6333
6334 #.  http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=482973
6335 #. type: Plain text
6336 #: build/C/man3/gethostbyname.3:443
6337 msgid ""
6338 "B<gethostbyname>()  does not recognize components of a dotted IPv4 address "
6339 "string that are expressed in hexadecimal."
6340 msgstr ""
6341 "B<gethostbyname>()  は、16進数表現のドット区切りの IPv4 アドレス文字列の要素"
6342 "を認識しない。"
6343
6344 #.  .BR getipnodebyaddr (3),
6345 #.  .BR getipnodebyname (3),
6346 #.  .BR resolv+ (8)
6347 #. type: Plain text
6348 #: build/C/man3/gethostbyname.3:457
6349 msgid ""
6350 "B<getaddrinfo>(3), B<getnameinfo>(3), B<inet>(3), B<inet_ntop>(3), "
6351 "B<inet_pton>(3), B<resolver>(3), B<hosts>(5), B<nsswitch.conf>(5), "
6352 "B<hostname>(7), B<named>(8)"
6353 msgstr ""
6354 "B<getaddrinfo>(3), B<getnameinfo>(3), B<inet>(3), B<inet_ntop>(3), "
6355 "B<inet_pton>(3), B<resolver>(3), B<hosts>(5), B<nsswitch.conf>(5), "
6356 "B<hostname>(7), B<named>(8)"
6357
6358 #. type: TH
6359 #: build/C/man3/getipnodebyname.3:26
6360 #, no-wrap
6361 msgid "GETIPNODEBYNAME"
6362 msgstr "GETIPNODEBYNAME"
6363
6364 #. type: TH
6365 #: build/C/man3/getipnodebyname.3:26
6366 #, no-wrap
6367 msgid "2010-09-04"
6368 msgstr "2010-09-04"
6369
6370 #. type: Plain text
6371 #: build/C/man3/getipnodebyname.3:30
6372 msgid ""
6373 "getipnodebyname, getipnodebyaddr, freehostent - get network hostnames and "
6374 "addresses"
6375 msgstr ""
6376 "getipnodebyname, getipnodebyaddr, freehostent - ネットワークホストの名前とア"
6377 "ドレスの取得"
6378
6379 #. type: Plain text
6380 #: build/C/man3/getipnodebyname.3:38
6381 #, no-wrap
6382 msgid ""
6383 "B<struct hostent *getipnodebyname(const char *>I<name>B<, int >I<af>B<,>\n"
6384 "B<                                int >I<flags>B<, int *>I<error_num>B<);>\n"
6385 msgstr ""
6386 "B<struct hostent *getipnodebyname(const char *>I<name>B<, int >I<af>B<,>\n"
6387 "B<                                int >I<flags>B<, int *>I<error_num>B<);>\n"
6388
6389 #. type: Plain text
6390 #: build/C/man3/getipnodebyname.3:41
6391 #, no-wrap
6392 msgid ""
6393 "B<struct hostent *getipnodebyaddr(const void *>I<addr>B<, size_t >I<len>B<,>\n"
6394 "B<                                int >I<af>B<, int *>I<error_num>B<);>\n"
6395 msgstr ""
6396 "B<struct hostent *getipnodebyaddr(const void *>I<addr>B<, size_t >I<len>B<,>\n"
6397 "B<                                int >I<af>B<, int *>I<error_num>B<);>\n"
6398
6399 #. type: Plain text
6400 #: build/C/man3/getipnodebyname.3:43
6401 #, no-wrap
6402 msgid "B<void freehostent(struct hostent *>I<ip>B<);>\n"
6403 msgstr "B<void freehostent(struct hostent *>I<ip>B<);>\n"
6404
6405 #. type: Plain text
6406 #: build/C/man3/getipnodebyname.3:51
6407 msgid ""
6408 "These functions are deprecated (and unavailable in glibc).  Use "
6409 "B<getaddrinfo>(3)  and B<getnameinfo>(3)  instead."
6410 msgstr ""
6411 "これらの関数は非推奨である (glibc では利用できない)。 代わりに "
6412 "B<getaddrinfo>(3)  と B<getnameinfo>(3)  を使うこと。"
6413
6414 #. type: Plain text
6415 #: build/C/man3/getipnodebyname.3:59
6416 msgid ""
6417 "The B<getipnodebyname>()  and B<getipnodebyaddr>()  functions return the "
6418 "names and addresses of a network host.  These functions return a pointer to "
6419 "the following structure:"
6420 msgstr ""
6421 "B<getipnodebyname>()  と B<getipnodebyaddr>()  は、ネットワークホストの名前と"
6422 "アドレスを返す。 これらの関数は、以下の構造体へのポインターを返す。"
6423
6424 #. type: Plain text
6425 #: build/C/man3/getipnodebyname.3:69
6426 #, no-wrap
6427 msgid ""
6428 "struct hostent {\n"
6429 "    char  *h_name;\n"
6430 "    char **h_aliases;\n"
6431 "    int    h_addrtype;\n"
6432 "    int    h_length;\n"
6433 "    char **h_addr_list;\n"
6434 "};\n"
6435 msgstr ""
6436 "struct hostent {\n"
6437 "    char  *h_name;\n"
6438 "    char **h_aliases;\n"
6439 "    int    h_addrtype;\n"
6440 "    int    h_length;\n"
6441 "    char **h_addr_list;\n"
6442 "};\n"
6443
6444 #. type: Plain text
6445 #: build/C/man3/getipnodebyname.3:82
6446 msgid ""
6447 "These functions replace the B<gethostbyname>(3)  and B<gethostbyaddr>(3)  "
6448 "functions, which could access only the IPv4 network address family.  The "
6449 "B<getipnodebyname>()  and B<getipnodebyaddr>()  functions can access "
6450 "multiple network address families."
6451 msgstr ""
6452 "これらの関数は、 IPv4 ネットワークアドレスファミリーにしかアクセスできない "
6453 "B<gethostbyname>(3)  や B<gethostbyaddr>(3)  を置き換えるものである。 "
6454 "B<getipnodebyname>()  関数と B<getipnodebyaddr>()  関数は複数のネットワークア"
6455 "ドレスファミリーにアクセス可能になっている。"
6456
6457 #. type: Plain text
6458 #: build/C/man3/getipnodebyname.3:93
6459 msgid ""
6460 "Unlike the B<gethostby> functions, these functions return pointers to "
6461 "dynamically allocated memory.  The B<freehostent>()  function is used to "
6462 "release the dynamically allocated memory after the caller no longer needs "
6463 "the I<hostent> structure."
6464 msgstr ""
6465 "これらの関数は、 B<gethostby> の関数群と異なり、動的に割り当てられたメモリー"
6466 "へのポインターを返す。 呼び出し元がこれらの I<hostent> 構造体を必要としなく"
6467 "なった後は、 B<freehostent>()  関数を用いれば動的な割り当てメモリーを解放でき"
6468 "る。"
6469
6470 #. type: SS
6471 #: build/C/man3/getipnodebyname.3:93
6472 #, no-wrap
6473 msgid "getipnodebyname() arguments"
6474 msgstr "getipnodebyname() の引き数"
6475
6476 #. type: Plain text
6477 #: build/C/man3/getipnodebyname.3:104
6478 msgid ""
6479 "The B<getipnodebyname>()  function looks up network addresses for the host "
6480 "specified by the I<name> argument.  The I<af> argument specifies one of the "
6481 "following values:"
6482 msgstr ""
6483 "B<getipnodebyname>()  関数は I<name> 引き数で指定されたホストのネットワークア"
6484 "ドレスを引く。 I<af> 引き数には以下の値のいずれかを指定する。"
6485
6486 #. type: TP
6487 #: build/C/man3/getipnodebyname.3:104 build/C/man3/getipnodebyname.3:166
6488 #: build/C/man3/inet_ntop.3:57 build/C/man3/inet_pton.3:53
6489 #, no-wrap
6490 msgid "B<AF_INET>"
6491 msgstr "B<AF_INET>"
6492
6493 #. type: Plain text
6494 #: build/C/man3/getipnodebyname.3:110
6495 msgid ""
6496 "The I<name> argument points to a dotted-quad IPv4 address or a name of an "
6497 "IPv4 network host."
6498 msgstr ""
6499 "I<name> 引き数は、ドットで 4 つに区切られた IPv4 アドレスか、 IPv4 ネットワー"
6500 "クホストの名前へのポインターである。"
6501
6502 #. type: TP
6503 #: build/C/man3/getipnodebyname.3:110 build/C/man3/getipnodebyname.3:176
6504 #: build/C/man3/inet_ntop.3:70 build/C/man3/inet_pton.3:67
6505 #, no-wrap
6506 msgid "B<AF_INET6>"
6507 msgstr "B<AF_INET6>"
6508
6509 #. type: Plain text
6510 #: build/C/man3/getipnodebyname.3:116
6511 msgid ""
6512 "The I<name> argument points to a hexadecimal IPv6 address or a name of an "
6513 "IPv6 network host."
6514 msgstr ""
6515 "I<name> 引き数は、16 進の IPv6 アドレスか、 IPv6 ネットワークホストの名前への"
6516 "ポインターである。"
6517
6518 #. type: Plain text
6519 #: build/C/man3/getipnodebyname.3:125
6520 msgid ""
6521 "The I<flags> argument specifies additional options.  More than one option "
6522 "can be specified by bitwise OR-ing them together.  I<flags> should be set to "
6523 "0 if no options are desired."
6524 msgstr ""
6525 "I<flags> パラメーターには追加のオプションを指定する。 複数のフラグを指定する"
6526 "には、それらのビット単位の OR をとって指定すればよい。 オプションをひとつも指"
6527 "定したくないときには、 I<flags> に 0 を設定する必要がある。"
6528
6529 #. type: TP
6530 #: build/C/man3/getipnodebyname.3:125
6531 #, no-wrap
6532 msgid "B<AI_V4MAPPED>"
6533 msgstr "B<AI_V4MAPPED>"
6534
6535 #. type: Plain text
6536 #: build/C/man3/getipnodebyname.3:132
6537 msgid ""
6538 "This flag is used with B<AF_INET6> to request a query for IPv4 addresses "
6539 "instead of IPv6 addresses; the IPv4 addresses will be mapped to IPv6 "
6540 "addresses."
6541 msgstr ""
6542 "このフラグは B<AF_INET6> と共に用いられ、IPv6 アドレスの代わりに IPv4 アドレ"
6543 "スを問い合わせる。 問い合わせる IPv4 アドレスは IPv6 アドレスにマップされる。"
6544
6545 #. type: TP
6546 #: build/C/man3/getipnodebyname.3:132
6547 #, no-wrap
6548 msgid "B<AI_ALL>"
6549 msgstr "B<AI_ALL>"
6550
6551 #. type: Plain text
6552 #: build/C/man3/getipnodebyname.3:138
6553 msgid ""
6554 "This flag is used with B<AI_V4MAPPED> to request a query for both IPv4 and "
6555 "IPv6 addresses.  Any IPv4 address found will be mapped to an IPv6 address."
6556 msgstr ""
6557 "このフラグは B<AI_V4MAPPED> と共に用いられ、IPv4 アドレスと IPv6 アドレスの両"
6558 "方を問い合わせる。 見つかった IPv4 アドレスは、すべて IPv6 アドレスにマップさ"
6559 "れる。"
6560
6561 #. type: TP
6562 #: build/C/man3/getipnodebyname.3:138
6563 #, no-wrap
6564 msgid "B<AI_ADDRCONFIG>"
6565 msgstr "B<AI_ADDRCONFIG>"
6566
6567 #. type: Plain text
6568 #: build/C/man3/getipnodebyname.3:150
6569 msgid ""
6570 "This flag is used with B<AF_INET6> to further request that queries for IPv6 "
6571 "addresses should not be made unless the system has at least one IPv6 address "
6572 "assigned to a network interface, and that queries for IPv4 addresses should "
6573 "not be made unless the system has at least one IPv4 address assigned to a "
6574 "network interface.  This flag may be used by itself or with the "
6575 "B<AI_V4MAPPED> flag."
6576 msgstr ""
6577 "このフラグは B<AF_INET6> と共に用いられ、 IPv6 が割り当てられたネットワークイ"
6578 "ンターフェースが システムにひとつもなければ IPv6 アドレスの問い合わせを行わ"
6579 "ず、 IPv4 が割り当てられたネットワークインターフェースが システムにひとつもな"
6580 "ければ IPv4 アドレスの問い合わせを行わないように要求する。 このフラグは単独で"
6581 "も、あるいは B<AI_V4MAPPED> フラグと共にでも用いることができる。"
6582
6583 #. type: TP
6584 #: build/C/man3/getipnodebyname.3:150
6585 #, no-wrap
6586 msgid "B<AI_DEFAULT>"
6587 msgstr "B<AI_DEFAULT>"
6588
6589 #. type: Plain text
6590 #: build/C/man3/getipnodebyname.3:154
6591 msgid "This flag is equivalent to B<(AI_ADDRCONFIG | AI_V4MAPPED)>."
6592 msgstr "このフラグは B<(AI_ADDRCONFIG>|B<AI_V4MAPPED)> と等価である。"
6593
6594 #. type: SS
6595 #: build/C/man3/getipnodebyname.3:154
6596 #, no-wrap
6597 msgid "getipnodebyaddr() arguments"
6598 msgstr "getipnodebyaddr() の引き数"
6599
6600 #. type: Plain text
6601 #: build/C/man3/getipnodebyname.3:166
6602 msgid ""
6603 "The B<getipnodebyaddr>()  function looks up the name of the host whose "
6604 "network address is specified by the I<addr> argument.  The I<af> argument "
6605 "specifies one of the following values:"
6606 msgstr ""
6607 "B<getipnodebyaddr>()  関数は、ネットワークアドレスが I<addr> 引き数で指定され"
6608 "たホストの名前を引く。 I<af> 引き数には以下の値のいずれかを指定する。"
6609
6610 #. type: Plain text
6611 #: build/C/man3/getipnodebyname.3:176
6612 msgid ""
6613 "The I<addr> argument points to a I<struct in_addr> and I<len> must be set to "
6614 "I<sizeof(struct in_addr)>."
6615 msgstr ""
6616 "I<addr> 引き数は I<struct in_addr> へのポインターであり、 I<len> 引き数は "
6617 "I<sizeof(struct in_addr)> に設定しなければならない。"
6618
6619 #. type: Plain text
6620 #: build/C/man3/getipnodebyname.3:186
6621 msgid ""
6622 "The I<addr> argument points to a I<struct in6_addr> and I<len> must be set "
6623 "to I<sizeof(struct in6_addr)>."
6624 msgstr ""
6625 "I<addr> 引き数は I<struct in6_addr> へのポインターであり、 I<len> 引き数は "
6626 "I<sizeof(struct in6_addr)> に設定しなければならない。"
6627
6628 #. type: Plain text
6629 #: build/C/man3/getipnodebyname.3:190
6630 msgid ""
6631 "NULL is returned if an error occurred, and I<error_num> will contain an "
6632 "error code from the following list:"
6633 msgstr ""
6634 "エラーが起こると NULL が返され、 I<error_num> に以下にリストされたエラーコー"
6635 "ドのいずれかが設定される。"
6636
6637 #. type: Plain text
6638 #: build/C/man3/getipnodebyname.3:193
6639 msgid "The hostname or network address was not found."
6640 msgstr "ホスト名またはネットワークアドレスが見つからなかった。"
6641
6642 #. type: TP
6643 #: build/C/man3/getipnodebyname.3:193
6644 #, no-wrap
6645 msgid "B<NO_ADDRESS>"
6646 msgstr "B<NO_ADDRESS>"
6647
6648 #. type: Plain text
6649 #: build/C/man3/getipnodebyname.3:199
6650 msgid ""
6651 "The domain name server recognized the network address or name, but no answer "
6652 "was returned.  This can happen if the network host has only IPv4 addresses "
6653 "and a request has been made for IPv6 information only, or vice versa."
6654 msgstr ""
6655 "ドメインネームサーバーは そのネットワークアドレスまたはネットワーク名を認識し"
6656 "たが、 返事が返ってこなかった。原因としては、 例えば IPv4 アドレスしか持たな"
6657 "いネットワークホストに対して IPv6 の情報の問い合わせが行われた (およびその"
6658 "逆) などが考えられる。"
6659
6660 #. type: Plain text
6661 #: build/C/man3/getipnodebyname.3:202
6662 msgid "The domain name server returned a permanent failure response."
6663 msgstr ""
6664 "ドメインネームサーバーから恒久的な失敗 (permanent failure)  を意味する返事が"
6665 "返された。"
6666
6667 #. type: Plain text
6668 #: build/C/man3/getipnodebyname.3:206
6669 msgid ""
6670 "The domain name server returned a temporary failure response.  You might "
6671 "have better luck next time."
6672 msgstr ""
6673 "ネームサーバーから一時的な失敗 (temporary failure)  を意味する返事が返され"
6674 "た。次にはもうちょっと運が必要かも。"
6675
6676 #. type: Plain text
6677 #: build/C/man3/getipnodebyname.3:210
6678 msgid ""
6679 "A successful query returns a pointer to a I<hostent> structure that contains "
6680 "the following fields:"
6681 msgstr ""
6682 "問い合わせに成功すると、 I<hostent> 構造体へのポインターが返される。 この構造"
6683 "体は以下のフィールドからなる。"
6684
6685 #. type: Plain text
6686 #: build/C/man3/getipnodebyname.3:213
6687 msgid "This is the official name of this network host."
6688 msgstr "これはこのネットワークホストのオフィシャルな名前である。"
6689
6690 #. type: Plain text
6691 #: build/C/man3/getipnodebyname.3:217
6692 msgid ""
6693 "This is an array of pointers to unofficial aliases for the same host.  The "
6694 "array is terminated by a null pointer."
6695 msgstr ""
6696 "これは、そのホストのオフィシャルでない別名へのポインターの配列である。 配列は"
6697 "ヌルポインターで終端する。"
6698
6699 #. type: Plain text
6700 #: build/C/man3/getipnodebyname.3:239
6701 msgid ""
6702 "This is a copy of the I<af> argument to B<getipnodebyname>()  or "
6703 "B<getipnodebyaddr>().  I<h_addrtype> will always be B<AF_INET> if the I<af> "
6704 "argument was B<AF_INET>.  I<h_addrtype> will always be B<AF_INET6> if the "
6705 "I<af> argument was B<AF_INET6>."
6706 msgstr ""
6707 "これは B<getipnodebyname>()  または B<getipnodebyaddr>()  に与えられた I<af> "
6708 "引き数のコピーである。 I<af> 引き数が B<AF_INET> なら I<h_addrtype> は常に "
6709 "B<AF_INET> になり、 I<af> 引き数が B<AF_INET6> なら I<h_addrtype> も常に "
6710 "B<AF_INET6> になる。"
6711
6712 #. type: Plain text
6713 #: build/C/man3/getipnodebyname.3:253
6714 msgid ""
6715 "This field will be set to I<sizeof(struct in_addr)> if I<h_addrtype> is "
6716 "B<AF_INET>, and to I<sizeof(struct in6_addr)> if I<h_addrtype> is "
6717 "B<AF_INET6>."
6718 msgstr ""
6719 "このフィールドは、 I<h_addrtype> が B<AF_INET> なら I<sizeof(struct "
6720 "in_addr)> に、 I<h_addrtype> が B<AF_INET6> なら I<sizeof(struct in6_addr)> "
6721 "に設定される。"
6722
6723 #. type: Plain text
6724 #: build/C/man3/getipnodebyname.3:258
6725 msgid ""
6726 "This is an array of one or more pointers to network address structures for "
6727 "the network host.  The array is terminated by a null pointer."
6728 msgstr ""
6729 "これはひとつ以上のポインターの配列で、 それぞれのポインターは、 そのネット"
6730 "ワークホストに対応するネットワークアドレス構造体を指す。 この配列はヌルポイン"
6731 "ターで終端する。"
6732
6733 #.  Not in POSIX.1-2001.
6734 #. type: Plain text
6735 #: build/C/man3/getipnodebyname.3:261
6736 msgid "RFC\\ 2553."
6737 msgstr "RFC\\ 2553."
6738
6739 #. type: Plain text
6740 #: build/C/man3/getipnodebyname.3:266
6741 msgid ""
6742 "These functions were present in glibc 2.1.91-95, but were removed again.  "
6743 "Several UNIX-like systems support them, but all call them deprecated."
6744 msgstr ""
6745 "これらの関数は glibc 2.1.91-95 に存在したが、再び削除された。 いくつかの "
6746 "UNIX 風システムはこれらの関数に対応しているが、 これらの関数は全て推奨されな"
6747 "い。"
6748
6749 #. type: Plain text
6750 #: build/C/man3/getipnodebyname.3:271
6751 msgid "B<getaddrinfo>(3), B<getnameinfo>(3), B<inet_ntop>(3), B<inet_pton>(3)"
6752 msgstr "B<getaddrinfo>(3), B<getnameinfo>(3), B<inet_ntop>(3), B<inet_pton>(3)"
6753
6754 #. type: TH
6755 #: build/C/man3/getnameinfo.3:10
6756 #, no-wrap
6757 msgid "GETNAMEINFO"
6758 msgstr "GETNAMEINFO"
6759
6760 #. type: Plain text
6761 #: build/C/man3/getnameinfo.3:13
6762 msgid ""
6763 "getnameinfo - address-to-name translation in protocol-independent manner"
6764 msgstr ""
6765 "getnameinfo - アドレスから名前への変換をプロトコルに依存しないかたちで行う"
6766
6767 #. type: Plain text
6768 #: build/C/man3/getnameinfo.3:17
6769 #, no-wrap
6770 msgid ""
6771 "B<#include E<lt>sys/socket.hE<gt>>\n"
6772 "B<#include E<lt>netdb.hE<gt>>\n"
6773 msgstr ""
6774 "B<#include E<lt>sys/socket.hE<gt>>\n"
6775 "B<#include E<lt>netdb.hE<gt>>\n"
6776
6777 #. type: Plain text
6778 #: build/C/man3/getnameinfo.3:21
6779 #, no-wrap
6780 msgid ""
6781 "B<int getnameinfo(const struct sockaddr *>I<sa>B<, socklen_t >I<salen>B<,>\n"
6782 "B<                char *>I<host>B<, socklen_t >I<hostlen>B<,>\n"
6783 "B<                char *>I<serv>B<, socklen_t >I<servlen>B<, int >I<flags>B<);>\n"
6784 msgstr ""
6785 "B<int getnameinfo(const struct sockaddr *>I<sa>B<, socklen_t >I<salen>B<,>\n"
6786 "B<                char *>I<host>B<, socklen_t >I<hostlen>B<,>\n"
6787 "B<                char *>I<serv>B<, socklen_t >I<servlen>B<, int >I<flags>B<);>\n"
6788
6789 #. type: Plain text
6790 #: build/C/man3/getnameinfo.3:31
6791 msgid ""
6792 "B<getnameinfo>(): _POSIX_C_SOURCE\\ E<gt>=\\ 1 || _XOPEN_SOURCE || "
6793 "_POSIX_SOURCE"
6794 msgstr ""
6795 "B<getnameinfo>(): _POSIX_C_SOURCE\\ E<gt>=\\ 1 || _XOPEN_SOURCE || "
6796 "_POSIX_SOURCE"
6797
6798 #. type: Plain text
6799 #: build/C/man3/getnameinfo.3:47
6800 msgid ""
6801 "The B<getnameinfo>()  function is the inverse of B<getaddrinfo>(3): it "
6802 "converts a socket address to a corresponding host and service, in a protocol-"
6803 "independent manner.  It combines the functionality of B<gethostbyaddr>(3)  "
6804 "and B<getservbyport>(3), but unlike those functions, B<getnameinfo>()  is "
6805 "reentrant and allows programs to eliminate IPv4-versus-IPv6 dependencies."
6806 msgstr ""
6807 "B<getnameinfo>()  関数は、 B<getaddrinfo>(3)  の逆の動作を行う。つまり、プロ"
6808 "トコルに依存しないかたちで ソケットアドレスから対応するホスト名とサービスへの"
6809 "変換を行う。 この関数は B<gethostbyaddr>(3)  と B<getservbyport>(3)  の機能を"
6810 "一つにしたものだが、 これらの関数と違い、 B<getnameinfo>(3)  はリエントラント"
6811 "であり、IPv4 と IPv6 の差分に依存しないかたちで プログラムを書くことができ"
6812 "る。"
6813
6814 #. type: Plain text
6815 #: build/C/man3/getnameinfo.3:70
6816 msgid ""
6817 "The I<sa> argument is a pointer to a generic socket address structure (of "
6818 "type I<sockaddr_in> or I<sockaddr_in6>)  of size I<salen> that holds the "
6819 "input IP address and port number.  The arguments I<host> and I<serv> are "
6820 "pointers to caller-allocated buffers (of size I<hostlen> and I<servlen> "
6821 "respectively) into which B<getnameinfo>()  places null-terminated strings "
6822 "containing the host and service names respectively."
6823 msgstr ""
6824 "I<sa> 引き数は、 IP アドレスとポート番号の情報を保持している 汎用的なソケット"
6825 "アドレス構造体 (I<sockaddr_in> 型または I<sockaddr_in6> 型) へのポインターで"
6826 "ある。 I<salen> は I<sa> のサイズである。 I<host> と I<serv> 引き数は、(それ"
6827 "ぞれサイズが I<hostlen> と I<servlen> の) 呼び出し側で確保されたバッファーへ"
6828 "のポインターであり、 ホスト名とサービス名を含むヌル終端された文字列が それぞ"
6829 "れのバッファーに格納される。"
6830
6831 #. type: Plain text
6832 #: build/C/man3/getnameinfo.3:83
6833 msgid ""
6834 "The caller can specify that no hostname (or no service name)  is required by "
6835 "providing a NULL I<host> (or I<serv>)  argument or a zero I<hostlen> (or "
6836 "I<servlen>)  argument.  However, at least one of hostname or service name "
6837 "must be requested."
6838 msgstr ""
6839 "ホスト名が不要であることをこの関数に伝えるには、 I<host> に NULL を指定する"
6840 "か、 I<hostlen> に 0 を指定する。同様に、サービス名が不要な場合は、 I<serv> "
6841 "に NULL を指定するか、 I<servlen> に 0 を指定する。 しかし、ホスト名とサービ"
6842 "ス名の両方を不要だと指定することはできない (いずれか一方は要求すること)。"
6843
6844 #. type: Plain text
6845 #: build/C/man3/getnameinfo.3:89
6846 msgid ""
6847 "The I<flags> argument modifies the behavior of B<getnameinfo>()  as follows:"
6848 msgstr ""
6849 "I<flags> 引き数で B<getnameinfo>()  の動作を変えることができる。指定できる値"
6850 "は以下の通り:"
6851
6852 #. type: TP
6853 #: build/C/man3/getnameinfo.3:89
6854 #, no-wrap
6855 msgid "B<NI_NAMEREQD>"
6856 msgstr "B<NI_NAMEREQD>"
6857
6858 #. type: Plain text
6859 #: build/C/man3/getnameinfo.3:92
6860 msgid "If set, then an error is returned if the hostname cannot be determined."
6861 msgstr "指定すると、ホスト名が決定できなかった場合にエラーを返す。"
6862
6863 #. type: TP
6864 #: build/C/man3/getnameinfo.3:92
6865 #, no-wrap
6866 msgid "B<NI_DGRAM>"
6867 msgstr "B<NI_DGRAM>"
6868
6869 #. type: Plain text
6870 #: build/C/man3/getnameinfo.3:98
6871 msgid ""
6872 "If set, then the service is datagram (UDP) based rather than stream (TCP) "
6873 "based.  This is required for the few ports (512-514)  that have different "
6874 "services for UDP and TCP."
6875 msgstr ""
6876 "指定すると、ストリームベース (TCP) でなくデータグラムベース (UDP)  のサービス"
6877 "を対象にする。数は少ないが、 UDP と TCP で違うサービスを提供しているポート "
6878 "(512-514) に対して必要となる。"
6879
6880 #. type: TP
6881 #: build/C/man3/getnameinfo.3:98
6882 #, no-wrap
6883 msgid "B<NI_NOFQDN>"
6884 msgstr "B<NI_NOFQDN>"
6885
6886 #. type: Plain text
6887 #: build/C/man3/getnameinfo.3:102
6888 msgid ""
6889 "If set, return only the hostname part of the fully qualified domain name for "
6890 "local hosts."
6891 msgstr ""
6892 "指定すると、ローカルなホストには fully qualified domain name (FQDN) の ホスト"
6893 "名の部分のみを返す。"
6894
6895 #. type: TP
6896 #: build/C/man3/getnameinfo.3:102
6897 #, no-wrap
6898 msgid "B<NI_NUMERICHOST>"
6899 msgstr "B<NI_NUMERICHOST>"
6900
6901 #.  For example, by calling
6902 #.  .BR inet_ntop ()
6903 #.  instead of
6904 #.  .BR gethostbyaddr ().
6905 #.  POSIX.1-2003 has NI_NUMERICSCOPE, but glibc doesn't have it.
6906 #. type: Plain text
6907 #: build/C/man3/getnameinfo.3:112
6908 msgid ""
6909 "If set, then the numeric form of the hostname is returned.  (When not set, "
6910 "this will still happen in case the node's name cannot be determined.)"
6911 msgstr ""
6912 "指定すると、数値形式のホスト名が返される。 (指定しなくても、ノードの名前が決"
6913 "定できない場合は数値形式が返ることがある)。"
6914
6915 #. type: TP
6916 #: build/C/man3/getnameinfo.3:112
6917 #, no-wrap
6918 msgid "B<NI_NUMERICSERV>"
6919 msgstr "B<NI_NUMERICSERV>"
6920
6921 #. type: Plain text
6922 #: build/C/man3/getnameinfo.3:117
6923 msgid ""
6924 "If set, then the numeric form of the service address is returned.  (When not "
6925 "set, this will still happen in case the service's name cannot be determined.)"
6926 msgstr ""
6927 "指定すると、数値形式のサービス名 (例えばポート番号) が返される (指定しなくて"
6928 "も、サービス名が決定できない場合は数値形式が返ることがある)。"
6929
6930 #. type: SS
6931 #: build/C/man3/getnameinfo.3:117
6932 #, no-wrap
6933 msgid "Extensions to getnameinfo() for Internationalized Domain Names"
6934 msgstr "国際化ドメイン名のための getnameinfo() の拡張"
6935
6936 #. type: Plain text
6937 #: build/C/man3/getnameinfo.3:126
6938 msgid ""
6939 "Starting with glibc 2.3.4, B<getnameinfo>()  has been extended to "
6940 "selectively allow hostnames to be transparently converted to and from the "
6941 "Internationalized Domain Name (IDN) format (see RFC 3490, "
6942 "I<Internationalizing Domain Names in Applications (IDNA)>).  Three new flags "
6943 "are defined:"
6944 msgstr ""
6945 "glibc 2.3.4 から、 B<getnameinfo>()  に拡張が行われ、ホスト名と 国際化ドメイ"
6946 "ン名 (Internationalized Domain Name; IDN) 形式との間で 透過的な変換ができるよ"
6947 "うになっている (IDN 形式については RFC 3490 の I<Internationalizing Domain "
6948 "Names in Applications (IDNA)> を参照)。3つのフラグが新たに定義されている:"
6949
6950 #. type: TP
6951 #: build/C/man3/getnameinfo.3:126
6952 #, no-wrap
6953 msgid "B<NI_IDN>"
6954 msgstr "B<NI_IDN>"
6955
6956 #. type: Plain text
6957 #: build/C/man3/getnameinfo.3:132
6958 msgid ""
6959 "If this flag is used, then the name found in the lookup process is converted "
6960 "from IDN format to the locale's encoding if necessary.  ASCII-only names are "
6961 "not affected by the conversion, which makes this flag usable in existing "
6962 "programs and environments."
6963 msgstr ""
6964 "このフラグを指定すると、必要であれば、検索処理で見つかった名前は IDN 形式から"
6965 "ロケールに応じた符号化形式に変換される。 ASCII 文字だけの名前はこの変換では影"
6966 "響を受けない。このため、 既存のプログラムや環境でこのフラグを使うことができ"
6967 "る。"
6968
6969 #. type: TP
6970 #: build/C/man3/getnameinfo.3:132
6971 #, no-wrap
6972 msgid "B<NI_IDN_ALLOW_UNASSIGNED>, B<NI_IDN_USE_STD3_ASCII_RULES>"
6973 msgstr "B<NI_IDN_ALLOW_UNASSIGNED>, B<NI_IDN_USE_STD3_ASCII_RULES>"
6974
6975 #.  FIXME glibc defines the following additional errors, some which
6976 #.  can probably be returned by getnameinfo(); they need to
6977 #.  be documented.
6978 #.  #ifdef __USE_GNU
6979 #.  #define EAI_INPROGRESS  -100  /* Processing request in progress.  */
6980 #.  #define EAI_CANCELED    -101  /* Request canceled.  */
6981 #.  #define EAI_NOTCANCELED -102  /* Request not canceled.  */
6982 #.  #define EAI_ALLDONE     -103  /* All requests done.  */
6983 #.  #define EAI_INTR        -104  /* Interrupted by a signal.  */
6984 #.  #define EAI_IDN_ENCODE  -105  /* IDN encoding failed.  */
6985 #.  #endif
6986 #. type: Plain text
6987 #: build/C/man3/getnameinfo.3:155
6988 msgid ""
6989 "On success 0 is returned, and node and service names, if requested, are "
6990 "filled with null-terminated strings, possibly truncated to fit the specified "
6991 "buffer lengths.  On error, one of the following nonzero error codes is "
6992 "returned:"
6993 msgstr ""
6994 "成功すると 0 が返り、(要求されていれば) ノードとサービスの名前がヌル終端され"
6995 "た文字列の形式でそれぞれの指定バッファーに返される (バッファーの長さにあうよ"
6996 "うに縮められるかもしれない)。 エラーの場合は、以下の 0 以外のエラーコードが返"
6997 "される:"
6998
6999 #. type: Plain text
7000 #: build/C/man3/getnameinfo.3:159
7001 msgid "The name could not be resolved at this time.  Try again later."
7002 msgstr "指定された名前が現時点では解決できなかった。 後で再試行してみること。"
7003
7004 #. type: Plain text
7005 #: build/C/man3/getnameinfo.3:164
7006 msgid "The I<flags> argument has an invalid value."
7007 msgstr "I<flags> 引き数に不正な値が与えられた。"
7008
7009 #. type: Plain text
7010 #: build/C/man3/getnameinfo.3:167
7011 msgid "A nonrecoverable error occurred."
7012 msgstr "回復できないエラーが発生した。"
7013
7014 #. type: Plain text
7015 #: build/C/man3/getnameinfo.3:171
7016 msgid ""
7017 "The address family was not recognized, or the address length was invalid for "
7018 "the specified family."
7019 msgstr ""
7020 "指定したアドレスファミリーが認識できなかった。 あるいはアドレスの長さが指定さ"
7021 "れたファミリーに合うものでなかった。"
7022
7023 #. type: Plain text
7024 #: build/C/man3/getnameinfo.3:180
7025 msgid ""
7026 "The name does not resolve for the supplied arguments.  B<NI_NAMEREQD> is set "
7027 "and the host's name cannot be located, or neither hostname nor service name "
7028 "were requested."
7029 msgstr ""
7030 "与えられたパラメーターでは名前が解決できない。 B<NI_NAMEREQD> が設定されてい"
7031 "たがホスト名が決定できなかったか、 ホスト名もサービス名も要求されなかった。"
7032
7033 #. type: TP
7034 #: build/C/man3/getnameinfo.3:180
7035 #, no-wrap
7036 msgid "B<EAI_OVERFLOW>"
7037 msgstr "B<EAI_OVERFLOW>"
7038
7039 #. type: Plain text
7040 #: build/C/man3/getnameinfo.3:187
7041 msgid "The buffer pointed to by I<host> or I<serv> was too small."
7042 msgstr "I<host> または I<serv> が指しているバッファーが小さすぎた。"
7043
7044 #. type: Plain text
7045 #: build/C/man3/getnameinfo.3:192
7046 msgid "A system error occurred.  The error code can be found in I<errno>."
7047 msgstr "システムエラーが起った。 エラーコードは I<errno> に設定される。"
7048
7049 #. type: Plain text
7050 #: build/C/man3/getnameinfo.3:199
7051 msgid "/etc/hosts"
7052 msgstr "/etc/hosts"
7053
7054 #. type: Plain text
7055 #: build/C/man3/getnameinfo.3:201
7056 msgid "/etc/nsswitch.conf"
7057 msgstr "/etc/nsswitch.conf"
7058
7059 #. type: Plain text
7060 #: build/C/man3/getnameinfo.3:203
7061 msgid "/etc/resolv.conf"
7062 msgstr "/etc/resolv.conf"
7063
7064 #. type: Plain text
7065 #: build/C/man3/getnameinfo.3:206
7066 msgid "B<getnameinfo>()  is provided in glibc since version 2.1."
7067 msgstr "B<getnameinfo>()  は、glibc バージョン 2.1 以降で提供されている。"
7068
7069 #. type: Plain text
7070 #: build/C/man3/getnameinfo.3:208
7071 msgid "RFC\\ 2553, POSIX.1-2001."
7072 msgstr "RFC\\ 2553, POSIX.1-2001."
7073
7074 #. type: Plain text
7075 #: build/C/man3/getnameinfo.3:213
7076 msgid ""
7077 "In order to assist the programmer in choosing reasonable sizes for the "
7078 "supplied buffers, I<E<lt>netdb.hE<gt>> defines the constants"
7079 msgstr ""
7080 "適切なバッファーサイズを選択できるように、 I<E<lt>netdb.hE<gt>> に以下の定数"
7081 "が定義されている。"
7082
7083 #. type: Plain text
7084 #: build/C/man3/getnameinfo.3:218
7085 #, no-wrap
7086 msgid ""
7087 "#define NI_MAXHOST      1025\n"
7088 "#define NI_MAXSERV      32\n"
7089 msgstr ""
7090 "#define NI_MAXHOST      1025\n"
7091 "#define NI_MAXSERV      32\n"
7092
7093 #. type: Plain text
7094 #: build/C/man3/getnameinfo.3:228
7095 msgid ""
7096 "Since glibc 2.8, these definitions are exposed only if one of the feature "
7097 "test macros B<_BSD_SOURCE>, B<_SVID_SOURCE>, or B<_GNU_SOURCE> is defined."
7098 msgstr ""
7099 "glibc 2.8 以降では、機能検査マクロ B<_BSD_SOURCE>, B<_SVID_SOURCE>, "
7100 "B<_GNU_SOURCE> のいずれかが定義された場合にのみ、これらの定義が公開される。"
7101
7102 #. type: Plain text
7103 #: build/C/man3/getnameinfo.3:236
7104 msgid ""
7105 "The former is the constant B<MAXDNAME> in recent versions of BIND's "
7106 "I<E<lt>arpa/nameser.hE<gt>> header file.  The latter is a guess based on the "
7107 "services listed in the current Assigned Numbers RFC."
7108 msgstr ""
7109 "前者は、最近のバージョンの BIND のヘッダーファイル I<E<lt>arpa/nameser."
7110 "hE<gt>> 中の定数 B<MAXDNAME> と同じ値である。 後者は、割り当て済の数値につい"
7111 "て記した現在の RFC に 列挙されてサービスから推量した値である。"
7112
7113 #. type: Plain text
7114 #: build/C/man3/getnameinfo.3:243
7115 msgid ""
7116 "Before glibc version 2.2, the I<hostlen> and I<servlen> arguments were typed "
7117 "as I<size_t>."
7118 msgstr ""
7119 "glibc バージョン 2.2 より前では、 引き数 I<hostlen>, I<servlen> の型は "
7120 "I<size_t> であった。"
7121
7122 #. type: Plain text
7123 #: build/C/man3/getnameinfo.3:248
7124 msgid ""
7125 "The following code tries to get the numeric hostname and service name, for a "
7126 "given socket address.  Note that there is no hardcoded reference to a "
7127 "particular address family."
7128 msgstr ""
7129 "以下のコードは、指定されたソケットアドレスに対する ホストとサービスの数値表式"
7130 "を取得しようと試みる。 特定のアドレスファミリーに対する参照情報は 一切ハード"
7131 "コードされていないことに着目してほしい。"
7132
7133 #. type: Plain text
7134 #: build/C/man3/getnameinfo.3:254
7135 #, no-wrap
7136 msgid ""
7137 "struct sockaddr *sa;    /* input */\n"
7138 "socklen_t len;         /* input */\n"
7139 "char hbuf[NI_MAXHOST], sbuf[NI_MAXSERV];\n"
7140 msgstr ""
7141 "struct sockaddr *sa;    /* input */\n"
7142 "socklen_t len;          /* input */\n"
7143 "char hbuf[NI_MAXHOST], sbuf[NI_MAXSERV];\n"
7144
7145 #. type: Plain text
7146 #: build/C/man3/getnameinfo.3:258
7147 #, no-wrap
7148 msgid ""
7149 "if (getnameinfo(sa, len, hbuf, sizeof(hbuf), sbuf,\n"
7150 "            sizeof(sbuf), NI_NUMERICHOST | NI_NUMERICSERV) == 0)\n"
7151 "    printf(\"host=%s, serv=%s\\en\", hbuf, sbuf);\n"
7152 msgstr ""
7153 "if (getnameinfo(sa, len, hbuf, sizeof(hbuf), sbuf,\n"
7154 "            sizeof(sbuf), NI_NUMERICHOST | NI_NUMERICSERV) == 0)\n"
7155 "    printf(\"host=%s, serv=%s\\en\", hbuf, sbuf);\n"
7156
7157 #. type: Plain text
7158 #: build/C/man3/getnameinfo.3:263
7159 msgid ""
7160 "The following version checks if the socket address has a reverse address "
7161 "mapping."
7162 msgstr ""
7163 "以下ではソケットアドレスに 逆向きのアドレスマッピングが存在するかをチェックし"
7164 "ている。"
7165
7166 #. type: Plain text
7167 #: build/C/man3/getnameinfo.3:269
7168 #, no-wrap
7169 msgid ""
7170 "struct sockaddr *sa;    /* input */\n"
7171 "socklen_t len;         /* input */\n"
7172 "char hbuf[NI_MAXHOST];\n"
7173 msgstr ""
7174 "struct sockaddr *sa;    /* input */\n"
7175 "socklen_t len;          /* input */\n"
7176 "char hbuf[NI_MAXHOST];\n"
7177
7178 #. type: Plain text
7179 #: build/C/man3/getnameinfo.3:275
7180 #, no-wrap
7181 msgid ""
7182 "if (getnameinfo(sa, len, hbuf, sizeof(hbuf),\n"
7183 "            NULL, 0, NI_NAMEREQD))\n"
7184 "    printf(\"could not resolve hostname\");\n"
7185 "else\n"
7186 "    printf(\"host=%s\\en\", hbuf);\n"
7187 msgstr ""
7188 "if (getnameinfo(sa, len, hbuf, sizeof(hbuf),\n"
7189 "            NULL, 0, NI_NAMEREQD))\n"
7190 "    printf(\"could not resolve hostname\");\n"
7191 "else\n"
7192 "    printf(\"host=%s\\en\", hbuf);\n"
7193
7194 #. type: Plain text
7195 #: build/C/man3/getnameinfo.3:282
7196 msgid ""
7197 "An example program using B<getnameinfo>()  can be found in B<getaddrinfo>(3)."
7198 msgstr ""
7199 "B<getnameinfo>()  を使ったプログラム例が B<getaddrinfo>(3)  に記載されてい"
7200 "る。"
7201
7202 #. type: Plain text
7203 #: build/C/man3/getnameinfo.3:297
7204 msgid ""
7205 "B<accept>(2), B<getpeername>(2), B<getsockname>(2), B<recvfrom>(2), "
7206 "B<socket>(2), B<getaddrinfo>(3), B<gethostbyaddr>(3), B<getservbyname>(3), "
7207 "B<getservbyport>(3), B<inet_ntop>(3), B<hosts>(5), B<services>(5), "
7208 "B<hostname>(7), B<named>(8)"
7209 msgstr ""
7210 "B<accept>(2), B<getpeername>(2), B<getsockname>(2), B<recvfrom>(2), "
7211 "B<socket>(2), B<getaddrinfo>(3), B<gethostbyaddr>(3), B<getservbyname>(3), "
7212 "B<getservbyport>(3), B<inet_ntop>(3), B<hosts>(5), B<services>(5), "
7213 "B<hostname>(7), B<named>(8)"
7214
7215 #. type: Plain text
7216 #: build/C/man3/getnameinfo.3:301
7217 msgid ""
7218 "R. Gilligan, S. Thomson, J. Bound and W. Stevens, I<Basic Socket Interface "
7219 "Extensions for IPv6>, RFC\\ 2553, March 1999."
7220 msgstr ""
7221 "R. Gilligan, S. Thomson, J. Bound and W. Stevens, I<Basic Socket Interface "
7222 "Extensions for IPv6>, RFC\\ 2553, March 1999."
7223
7224 #. type: Plain text
7225 #: build/C/man3/getnameinfo.3:307
7226 msgid ""
7227 "Tatsuya Jinmei and Atsushi Onoe, I<An Extension of Format for IPv6 Scoped "
7228 "Addresses>, internet draft, work in progress E<.UR ftp://ftp.ietf.org\\:/"
7229 "internet-drafts\\:/draft-ietf-ipngwg-scopedaddr-format-02.txt> E<.UE .>"
7230 msgstr ""
7231 "Tatsuya Jinmei and Atsushi Onoe, I<An Extension of Format for IPv6 Scoped "
7232 "Addresses>, internet draft, work in progress E<.UR ftp://ftp.ietf.org\\:/"
7233 "internet-drafts\\:/draft-ietf-ipngwg-scopedaddr-format-02.txt> E<.UE .>"
7234
7235 #. type: Plain text
7236 #: build/C/man3/getnameinfo.3:312
7237 msgid ""
7238 "Craig Metz, I<Protocol Independence Using the Sockets API>, Proceedings of "
7239 "the freenix track: 2000 USENIX annual technical conference, June 2000"
7240 msgstr ""
7241 "Craig Metz, I<Protocol Independence Using the Sockets API>, Proceedings of "
7242 "the freenix track: 2000 USENIX annual technical conference, June 2000"
7243
7244 #. type: Plain text
7245 #: build/C/man3/getnameinfo.3:315
7246 msgid ""
7247 "E<.UR http://www.usenix.org\\:/publications\\:/library\\:/proceedings\\:/"
7248 "usenix2000\\:/freenix\\:/metzprotocol.html> E<.UE .>"
7249 msgstr ""
7250 "E<.UR http://www.usenix.org\\:/publications\\:/library\\:/proceedings\\:/"
7251 "usenix2000\\:/freenix\\:/metzprotocol.html> E<.UE .>"
7252
7253 #. type: TH
7254 #: build/C/man3/getnetent.3:30
7255 #, no-wrap
7256 msgid "GETNETENT"
7257 msgstr "GETNETENT"
7258
7259 #. type: TH
7260 #: build/C/man3/getnetent.3:30 build/C/man3/getprotoent.3:30
7261 #: build/C/man3/getservent.3:34
7262 #, no-wrap
7263 msgid "2008-08-19"
7264 msgstr "2008-08-19"
7265
7266 #. type: Plain text
7267 #: build/C/man3/getnetent.3:34
7268 msgid ""
7269 "getnetent, getnetbyname, getnetbyaddr, setnetent, endnetent - get network "
7270 "entry"
7271 msgstr ""
7272 "getnetent, getnetbyname, getnetbyaddr, setnetent, endnetent - ネットワークエ"
7273 "ントリーを取得する"
7274
7275 #. type: Plain text
7276 #: build/C/man3/getnetent.3:37 build/C/man3/getnetent_r.3:33
7277 #: build/C/man3/getprotoent.3:37 build/C/man3/getprotoent_r.3:33
7278 #: build/C/man3/getservent.3:41 build/C/man3/getservent_r.3:33
7279 #: build/C/man3/setnetgrent.3:17
7280 #, no-wrap
7281 msgid "B<#include E<lt>netdb.hE<gt>>\n"
7282 msgstr "B<#include E<lt>netdb.hE<gt>>\n"
7283
7284 #. type: Plain text
7285 #: build/C/man3/getnetent.3:39
7286 #, no-wrap
7287 msgid "B<struct netent *getnetent(void);>\n"
7288 msgstr "B<struct netent *getnetent(void);>\n"
7289
7290 #. type: Plain text
7291 #: build/C/man3/getnetent.3:41
7292 #, no-wrap
7293 msgid "B<struct netent *getnetbyname(const char *>I<name>B<);>\n"
7294 msgstr "B<struct netent *getnetbyname(const char *>I<name>B<);>\n"
7295
7296 #. type: Plain text
7297 #: build/C/man3/getnetent.3:43
7298 #, no-wrap
7299 msgid "B<struct netent *getnetbyaddr(uint32_t >I<net>B<, int >I<type>B<);>\n"
7300 msgstr "B<struct netent *getnetbyaddr(uint32_t >I<net>B<, int >I<type>B<);>\n"
7301
7302 #. type: Plain text
7303 #: build/C/man3/getnetent.3:45
7304 #, no-wrap
7305 msgid "B<void setnetent(int >I<stayopen>B<);>\n"
7306 msgstr "B<void setnetent(int >I<stayopen>B<);>\n"
7307
7308 #. type: Plain text
7309 #: build/C/man3/getnetent.3:47
7310 #, no-wrap
7311 msgid "B<void endnetent(void);>\n"
7312 msgstr "B<void endnetent(void);>\n"
7313
7314 #. type: Plain text
7315 #: build/C/man3/getnetent.3:57
7316 msgid ""
7317 "The B<getnetent>()  function reads the next entry from the networks database "
7318 "and returns a I<netent> structure containing the broken-out fields from the "
7319 "entry.  A connection is opened to the database if necessary."
7320 msgstr ""
7321 "B<getnetent>()  関数はネットワークデータベースから次のエントリーを読み込み、 "
7322 "そのエントリーを I<netent> 構造体の要素別のフィールドに格納し、 その構造体を"
7323 "返す。 必要であれば、データベースへの接続がオープンされる。"
7324
7325 #. type: Plain text
7326 #: build/C/man3/getnetent.3:66
7327 msgid ""
7328 "The B<getnetbyname>()  function returns a I<netent> structure for the entry "
7329 "from the database that matches the network I<name>."
7330 msgstr ""
7331 "B<getnetbyname>()  関数は、ネットワーク名 I<name> にマッチするエントリーを "
7332 "データベースから探し、そのエントリーを収めた I<netent> 構造体を返す。"
7333
7334 #. type: Plain text
7335 #: build/C/man3/getnetent.3:80
7336 msgid ""
7337 "The B<getnetbyaddr>()  function returns a I<netent> structure for the entry "
7338 "from the database that matches the network number I<net> of type I<type>.  "
7339 "The I<net> argument must be in host byte order."
7340 msgstr ""
7341 "B<getnetbyaddr>()  関数は、I<type> 型のネットワーク番号 I<net> にマッチするエ"
7342 "ントリーを データベースから探し、そのエントリーを収めた I<netent> 構造体を返"
7343 "す。 I<net> 引き数はホストバイトオーダでなければならない。"
7344
7345 #. type: Plain text
7346 #: build/C/man3/getnetent.3:92
7347 msgid ""
7348 "The B<setnetent>()  function opens a connection to the database, and sets "
7349 "the next entry to the first entry.  If I<stayopen> is nonzero, then the "
7350 "connection to the database will not be closed between calls to one of the "
7351 "B<getnet*>()  functions."
7352 msgstr ""
7353 "B<setnetent>()  関数はデータベースへの接続をオープンし、 次の読み込みエント"
7354 "リーを先頭のエントリーに設定する。 I<stayopen> が 0 でない場合、 一つ一つの "
7355 "B<getnet*>()  関数の呼び出し間でデータベースへの接続をクローズしない。"
7356
7357 #. type: Plain text
7358 #: build/C/man3/getnetent.3:96
7359 msgid "The B<endnetent>()  function closes the connection to the database."
7360 msgstr "B<endnetent>()  関数はデータベースへの接続をクローズする。"
7361
7362 #. type: Plain text
7363 #: build/C/man3/getnetent.3:102
7364 msgid "The I<netent> structure is defined in I<E<lt>netdb.hE<gt>> as follows:"
7365 msgstr "I<netent> 構造体は I<E<lt>netdb.hE<gt>> で以下のように定義されている。"
7366
7367 #. type: Plain text
7368 #: build/C/man3/getnetent.3:111
7369 #, no-wrap
7370 msgid ""
7371 "struct netent {\n"
7372 "    char      *n_name;     /* official network name */\n"
7373 "    char     **n_aliases;  /* alias list */\n"
7374 "    int        n_addrtype; /* net address type */\n"
7375 "    uint32_t   n_net;      /* network number */\n"
7376 "}\n"
7377 msgstr ""
7378 "struct netent {\n"
7379 "    char      *n_name;     /* official network name */\n"
7380 "    char     **n_aliases;  /* alias list */\n"
7381 "    int        n_addrtype; /* net address type */\n"
7382 "    uint32_t   n_net;      /* network number */\n"
7383 "}\n"
7384
7385 #. type: Plain text
7386 #: build/C/man3/getnetent.3:117
7387 msgid "The members of the I<netent> structure are:"
7388 msgstr "I<netent> 構造体のメンバは以下の通り。"
7389
7390 #. type: TP
7391 #: build/C/man3/getnetent.3:117
7392 #, no-wrap
7393 msgid "I<n_name>"
7394 msgstr "I<n_name>"
7395
7396 #. type: Plain text
7397 #: build/C/man3/getnetent.3:120
7398 msgid "The official name of the network."
7399 msgstr "ネットワークの正式名 (official name)。"
7400
7401 #. type: TP
7402 #: build/C/man3/getnetent.3:120
7403 #, no-wrap
7404 msgid "I<n_aliases>"
7405 msgstr "I<n_aliases>"
7406
7407 #. type: Plain text
7408 #: build/C/man3/getnetent.3:123
7409 msgid "A NULL-terminated list of alternative names for the network."
7410 msgstr "ネットワークの別名からなるリスト。 リストはヌルで終端される。"
7411
7412 #. type: TP
7413 #: build/C/man3/getnetent.3:123
7414 #, no-wrap
7415 msgid "I<n_addrtype>"
7416 msgstr "I<n_addrtype>"
7417
7418 #. type: Plain text
7419 #: build/C/man3/getnetent.3:127
7420 msgid "The type of the network number; always B<AF_INET>."
7421 msgstr "ネットワーク番号の形式。現在は B<AF_INET> のみ。"
7422
7423 #. type: TP
7424 #: build/C/man3/getnetent.3:127
7425 #, no-wrap
7426 msgid "I<n_net>"
7427 msgstr "I<n_net>"
7428
7429 #. type: Plain text
7430 #: build/C/man3/getnetent.3:130
7431 msgid "The network number in host byte order."
7432 msgstr "ホストバイトオーダ形式のネットワーク番号。"
7433
7434 #. type: Plain text
7435 #: build/C/man3/getnetent.3:141
7436 msgid ""
7437 "The B<getnetent>(), B<getnetbyname>()  and B<getnetbyaddr>()  functions "
7438 "return a pointer to a statically allocated I<netent> structure, or a null "
7439 "pointer if an error occurs or the end of the file is reached."
7440 msgstr ""
7441 "B<getnetent>(), B<getnetbyname>(), B<getnetbyaddr>()  関数は、静的に割り当て"
7442 "られた I<netent> 構造体へのポインターを返す。 エラーが起こったり、ファイルの"
7443 "末尾に達した場合はヌルポインターを返す。"
7444
7445 #. type: TP
7446 #: build/C/man3/getnetent.3:142 build/C/man5/networks.5:71
7447 #, no-wrap
7448 msgid "I</etc/networks>"
7449 msgstr "I</etc/networks>"
7450
7451 #. type: Plain text
7452 #: build/C/man3/getnetent.3:145
7453 msgid "networks database file"
7454 msgstr "ネットワークデータベースファイル"
7455
7456 #. type: Plain text
7457 #: build/C/man3/getnetent.3:147 build/C/man3/getprotoent.3:142
7458 #: build/C/man3/getservent.3:159
7459 msgid "4.3BSD, POSIX.1-2001."
7460 msgstr "4.3BSD, POSIX.1-2001."
7461
7462 #. type: Plain text
7463 #: build/C/man3/getnetent.3:154
7464 msgid ""
7465 "In glibc versions before 2.2, the I<net> argument of B<getnetbyaddr>()  was "
7466 "of type I<long>."
7467 msgstr ""
7468 "バージョン 2.2 より前の glibc では、 B<getnetbyaddr>()  の引き数 I<net> は "
7469 "I<long> 型だった。"
7470
7471 #.  .BR networks (5)
7472 #. type: Plain text
7473 #: build/C/man3/getnetent.3:159
7474 msgid "B<getnetent_r>(3), B<getprotoent>(3), B<getservent>(3)"
7475 msgstr "B<getnetent_r>(3), B<getprotoent>(3), B<getservent>(3)"
7476
7477 #. type: Plain text
7478 #: build/C/man3/getnetent.3:161
7479 msgid "RFC\\ 1101"
7480 msgstr "RFC\\ 1101"
7481
7482 #. type: TH
7483 #: build/C/man3/getnetent_r.3:26
7484 #, no-wrap
7485 msgid "GETNETENT_R"
7486 msgstr "GETNETENT_R"
7487
7488 #. type: Plain text
7489 #: build/C/man3/getnetent_r.3:30
7490 msgid ""
7491 "getnetent_r, getnetbyname_r, getnetbyaddr_r - get network entry (reentrant)"
7492 msgstr ""
7493 "getnetent_r, getnetbyname_r, getnetbyaddr_r - ネットワークエントリーを\n"
7494 "取得する (リエントラント版)"
7495
7496 #. type: Plain text
7497 #: build/C/man3/getnetent_r.3:37
7498 #, no-wrap
7499 msgid ""
7500 "B<int getnetent_r(struct netent *>I<result_buf>B<, char *>I<buf>B<,>\n"
7501 "B<                size_t >I<buflen>B<, struct netent **>I<result>B<,>\n"
7502 "B<                int *>I<h_errnop>B<);>\n"
7503 msgstr ""
7504 "B<int getnetent_r(struct netent *>I<result_buf>B<, char *>I<buf>B<,>\n"
7505 "B<                size_t >I<buflen>B<, struct netent **>I<result>B<,>\n"
7506 "B<                int *>I<h_errnop>B<);>\n"
7507
7508 #. type: Plain text
7509 #: build/C/man3/getnetent_r.3:42
7510 #, no-wrap
7511 msgid ""
7512 "B<int getnetbyname_r(const char *>I<name>B<,>\n"
7513 "B<                struct netent *>I<result_buf>B<, char *>I<buf>B<,>\n"
7514 "B<                size_t >I<buflen>B<, struct netent **>I<result>B<,>\n"
7515 "B<                int *>I<h_errnop>B<);>\n"
7516 msgstr ""
7517 "B<int getnetbyname_r(const char *>I<name>B<,>\n"
7518 "B<                struct netent *>I<result_buf>B<, char *>I<buf>B<,>\n"
7519 "B<                size_t >I<buflen>B<, struct netent **>I<result>B<,>\n"
7520 "B<                int *>I<h_errnop>B<);>\n"
7521
7522 #. type: Plain text
7523 #: build/C/man3/getnetent_r.3:47
7524 #, no-wrap
7525 msgid ""
7526 "B<int getnetbyaddr_r(uint32_t >I<net>B<, int >I<type>B<,>\n"
7527 "B<                struct netent *>I<result_buf>B<, char *>I<buf>B<,>\n"
7528 "B<                size_t >I<buflen>B<, struct netent **>I<result>B<,>\n"
7529 "B<                int *>I<h_errnop>B<);>\n"
7530 msgstr ""
7531 "B<int getnetbyaddr_r(uint32_t >I<net>B<, int >I<type>B<,>\n"
7532 "B<                struct netent *>I<result_buf>B<, char *>I<buf>B<,>\n"
7533 "B<                size_t >I<buflen>B<, struct netent **>I<result>B<,>\n"
7534 "B<                int *>I<h_errnop>B<);>\n"
7535
7536 #. type: Plain text
7537 #: build/C/man3/getnetent_r.3:58
7538 msgid "B<getnetent_r>(), B<getnetbyname_r>(), B<getnetbyaddr_r>():"
7539 msgstr "B<getnetent_r>(), B<getnetbyname_r>(), B<getnetbyaddr_r>():"
7540
7541 #. type: Plain text
7542 #: build/C/man3/getnetent_r.3:79
7543 msgid ""
7544 "The B<getnetent_r>(), B<getnetbyname_r>(), and B<getnetbyaddr_r>()  "
7545 "functions are the reentrant equivalents of, respectively, B<getnetent>(3), "
7546 "B<getnetbyname>(3), and B<getnetbynumber>(3).  They differ in the way that "
7547 "the I<netent> structure is returned, and in the function calling signature "
7548 "and return value.  This manual page describes just the differences from the "
7549 "nonreentrant functions."
7550 msgstr ""
7551 "関数 B<getnetent_r>(), B<getnetbyname_r>(), B<getnetbyaddr_r>() は、\n"
7552 "それぞれ B<getnetent>(3), B<getnetbyname>(3), B<getnetbynumber>(3) の\n"
7553 "リエントラント版である。\n"
7554 "I<netent> 構造体の返し方と、関数呼び出し時の引き数と返り値が異なる。\n"
7555 "このマニュアルページでは、リエントラントでない関数との違いだけを\n"
7556 "説明する。"
7557
7558 #. type: Plain text
7559 #: build/C/man3/getnetent_r.3:85
7560 msgid ""
7561 "Instead of returning a pointer to a statically allocated I<netent> structure "
7562 "as the function result, these functions copy the structure into the location "
7563 "pointed to by I<result_buf>."
7564 msgstr ""
7565 "これらの関数は、関数の結果として静的に割り当てられた I<netent> 構造体\n"
7566 "へのポインターを返すのではなく、 I<netent> 構造体を I<result_buf> が\n"
7567 "指す場所にコピーする。"
7568
7569 #.  I can find no information on the required/recommended buffer size;
7570 #.  the nonreentrant functions use a 1024 byte buffer -- mtk.
7571 #. type: Plain text
7572 #: build/C/man3/getnetent_r.3:102
7573 msgid ""
7574 "The I<buf> array is used to store the string fields pointed to by the "
7575 "returned I<netent> structure.  (The nonreentrant functions allocate these "
7576 "strings in static storage.)  The size of this array is specified in "
7577 "I<buflen>.  If I<buf> is too small, the call fails with the error B<ERANGE>, "
7578 "and the caller must try again with a larger buffer.  (A buffer of length "
7579 "1024 bytes should be sufficient for most applications.)"
7580 msgstr ""
7581 "配列 I<buf> は、返される I<netent> 構造体が指す文字列フィールドを格納\n"
7582 "するのに使用される (リエントラントでない関数の場合は、\n"
7583 "これらの文字列は静的な領域に格納される)。\n"
7584 "この配列の大きさは I<buflen> で指定される。\n"
7585 "I<buf> が小さすぎる場合、関数呼び出しはエラー B<ERANGE> で失敗し、\n"
7586 "呼び出し側ではもっと大きなバッファーで再度呼び出す必要がある (ほとんどの\n"
7587 "アプリケーションでは、長さ 1024 バイトのバッファーで十分なはずである)。"
7588
7589 #. type: Plain text
7590 #: build/C/man3/getnetent_r.3:110
7591 msgid ""
7592 "If the function call successfully obtains a network record, then I<*result> "
7593 "is set pointing to I<result_buf>; otherwise, I<*result> is set to NULL."
7594 msgstr ""
7595 "関数呼び出しでネットワークレコードの取得に成功すると、\n"
7596 "I<*result> は I<result_buf> を指すように設定される。\n"
7597 "それ以外の場合は I<*result> に NULL が設定される。"
7598
7599 #.  getnetent.3 doesn't document any use of h_errno, but nevertheless
7600 #.  the nonreentrant functions no seem to set h_errno.
7601 #. type: Plain text
7602 #: build/C/man3/getnetent_r.3:118
7603 msgid ""
7604 "The buffer pointed to by I<h_errnop> is used to return the value that would "
7605 "be stored in the global variable I<h_errno> by the nonreentrant versions of "
7606 "these functions."
7607 msgstr ""
7608 "I<h_errnop> が指すバッファーは、リエントラントでない関数では\n"
7609 "グローバル変数 I<h_errno> に格納されていた値を返すのに使用される。"
7610
7611 #. type: Plain text
7612 #: build/C/man3/getnetent_r.3:121 build/C/man3/getprotoent_r.3:111
7613 msgid ""
7614 "On success, these functions return 0.  On error, they return one of the "
7615 "positive error numbers listed in ERRORS."
7616 msgstr ""
7617 "成功すると、これらの関数は 0 を返す。エラーの場合、「エラー」の節の\n"
7618 "リストにある正のエラー番号のいずれかを返す。"
7619
7620 #. type: Plain text
7621 #: build/C/man3/getnetent_r.3:129
7622 msgid ""
7623 "On error, record not found (B<getnetbyname_r>(), B<getnetbyaddr_r>()), or "
7624 "end of input (B<getnetent_r>())  I<result> is set to NULL."
7625 msgstr ""
7626 "エラーの場合、レコードが見つからなかった場合 (B<getnetbyname_r>(),\n"
7627 "B<getnetbyaddr_r>()) やこれ以上レコードがない場合 (B<getnetent_r>())、\n"
7628 "I<result> には NULL が設定される。"
7629
7630 #. type: Plain text
7631 #: build/C/man3/getnetent_r.3:134
7632 msgid "(B<getnetent_r>())  No more records in database."
7633 msgstr "(B<getnetent_r>())  データベースにこれ以上レコードがない。"
7634
7635 #. type: TP
7636 #: build/C/man3/getnetent_r.3:134 build/C/man3/getprotoent_r.3:124
7637 #: build/C/man3/getservent_r.3:123
7638 #, no-wrap
7639 msgid "B<ERANGE>"
7640 msgstr "B<ERANGE>"
7641
7642 #. type: Plain text
7643 #: build/C/man3/getnetent_r.3:141 build/C/man3/getprotoent_r.3:131
7644 #: build/C/man3/getservent_r.3:130
7645 msgid ""
7646 "I<buf> is too small.  Try again with a larger buffer (and increased "
7647 "I<buflen>)."
7648 msgstr ""
7649 "I<buf> が小さすぎる。もっと大きなバッファーにして \n"
7650 "(または I<buflen> を増やして) 再度呼び出すこと。"
7651
7652 #. type: Plain text
7653 #: build/C/man3/getnetent_r.3:145 build/C/man3/getprotoent_r.3:135
7654 #: build/C/man3/getservent_r.3:134
7655 msgid ""
7656 "These functions are GNU extensions.  Functions with similar names exist on "
7657 "some other systems, though typically with different calling signatures."
7658 msgstr ""
7659 "これらの関数は GNU による拡張である。\n"
7660 "他のシステムにも同様の名前の関数が存在する場合があるが、\n"
7661 "通常は関数の引き数が異なる。"
7662
7663 #. type: Plain text
7664 #: build/C/man3/getnetent_r.3:148
7665 msgid "B<getnetent>(3), B<networks>(5)"
7666 msgstr "B<getnetent>(3), B<networks>(5)"
7667
7668 #. type: TH
7669 #: build/C/man2/getpeername.2:42
7670 #, no-wrap
7671 msgid "GETPEERNAME"
7672 msgstr "GETPEERNAME"
7673
7674 #. type: TH
7675 #: build/C/man2/getpeername.2:42 build/C/man5/nsswitch.conf.5:25
7676 #, no-wrap
7677 msgid "2013-02-12"
7678 msgstr "2013-02-12"
7679
7680 #. type: Plain text
7681 #: build/C/man2/getpeername.2:45
7682 msgid "getpeername - get name of connected peer socket"
7683 msgstr "getpeername - 接続している相手ソケットの名前を取得する"
7684
7685 #. type: Plain text
7686 #: build/C/man2/getpeername.2:50
7687 msgid ""
7688 "B<int getpeername(int >I<sockfd>B<, struct sockaddr *>I<addr>B<, socklen_t "
7689 "*>I<addrlen>B<);>"
7690 msgstr ""
7691 "B<int getpeername(int >I<sockfd>B<, struct sockaddr *>I<addr>B<, socklen_t "
7692 "*>I<addrlen>B<);>"
7693
7694 #. type: Plain text
7695 #: build/C/man2/getpeername.2:63
7696 msgid ""
7697 "B<getpeername>()  returns the address of the peer connected to the socket "
7698 "I<sockfd>, in the buffer pointed to by I<addr>.  The I<addrlen> argument "
7699 "should be initialized to indicate the amount of space pointed to by "
7700 "I<addr>.  On return it contains the actual size of the name returned (in "
7701 "bytes).  The name is truncated if the buffer provided is too small."
7702 msgstr ""
7703 "B<getpeername>()  は、ソケット(socket)  I<sockfd> に接続している相手のアドレ"
7704 "スを、 I<addr> が指すバッファーに格納して返す。 I<addrlen> 引き数は、 "
7705 "I<addr> が指している領域のサイズに初期化しておかなければならない。 関数が返る"
7706 "時には、 I<addrlen> には実際に返された名前のサイズが (バイト単位で) 格納され"
7707 "る。 提供されたバッファーが小さすぎた場合には、名前は切り詰められる。"
7708
7709 #. type: Plain text
7710 #: build/C/man2/getpeername.2:68
7711 msgid ""
7712 "The returned address is truncated if the buffer provided is too small; in "
7713 "this case, I<addrlen> will return a value greater than was supplied to the "
7714 "call."
7715 msgstr ""
7716 "渡されたバッファーが小さ過ぎた場合は、返されるアドレスの末尾が切り詰められ"
7717 "る。 この場合には、 I<addrlen> には、呼び出し時に指定された値よりも大きな値が"
7718 "格納される。"
7719
7720 #. type: Plain text
7721 #: build/C/man2/getpeername.2:73 build/C/man2/shutdown.2:74
7722 msgid ""
7723 "On success, zero is returned.  On error, -1 is returned, and I<errno> is set "
7724 "appropriately."
7725 msgstr ""
7726 "成功した場合は 0 が返される。エラーの場合は -1 が返され、 I<errno> が適切に設"
7727 "定される。"
7728
7729 #. type: TP
7730 #: build/C/man2/getpeername.2:74 build/C/man2/shutdown.2:75
7731 #, no-wrap
7732 msgid "B<EBADF>"
7733 msgstr "B<EBADF>"
7734
7735 #. type: Plain text
7736 #: build/C/man2/getpeername.2:79
7737 msgid "The argument I<sockfd> is not a valid descriptor."
7738 msgstr "引き数 I<sockfd> が有効なディスクリプターでない。"
7739
7740 #. type: TP
7741 #: build/C/man2/getpeername.2:79 build/C/man7/packet.7:500
7742 #: build/C/man7/raw.7:149 build/C/man7/unix.7:419
7743 #, no-wrap
7744 msgid "B<EFAULT>"
7745 msgstr "B<EFAULT>"
7746
7747 #. type: Plain text
7748 #: build/C/man2/getpeername.2:85
7749 msgid ""
7750 "The I<addr> argument points to memory not in a valid part of the process "
7751 "address space."
7752 msgstr ""
7753 "I<addr> 引き数の指しているメモリーが有効なプロセスのアドレス空間の 一部でな"
7754 "い。"
7755
7756 #. type: Plain text
7757 #: build/C/man2/getpeername.2:89
7758 msgid "I<addrlen> is invalid (e.g., is negative)."
7759 msgstr "I<addrlen> が不正である (例えば、負で場合など)。"
7760
7761 #. type: TP
7762 #: build/C/man2/getpeername.2:89 build/C/man7/packet.7:512
7763 #, no-wrap
7764 msgid "B<ENOBUFS>"
7765 msgstr "B<ENOBUFS>"
7766
7767 #. type: Plain text
7768 #: build/C/man2/getpeername.2:93
7769 msgid ""
7770 "Insufficient resources were available in the system to perform the operation."
7771 msgstr "この操作を行なうのに十分な資源がシステムに存在しない。"
7772
7773 #. type: Plain text
7774 #: build/C/man2/getpeername.2:96
7775 msgid "The socket is not connected."
7776 msgstr "ソケットが接続していない。"
7777
7778 #. type: TP
7779 #: build/C/man2/getpeername.2:96 build/C/man2/shutdown.2:87
7780 #, no-wrap
7781 msgid "B<ENOTSOCK>"
7782 msgstr "B<ENOTSOCK>"
7783
7784 #. type: Plain text
7785 #: build/C/man2/getpeername.2:101
7786 msgid "The argument I<sockfd> is a file, not a socket."
7787 msgstr "引き数 I<sockfd> がソケットでなくてファイルである。"
7788
7789 #. type: Plain text
7790 #: build/C/man2/getpeername.2:105
7791 msgid ""
7792 "SVr4, 4.4BSD (the B<getpeername>()  function call first appeared in 4.2BSD), "
7793 "POSIX.1-2001."
7794 msgstr ""
7795 "SVr4, 4.4BSD (B<getpeername>()  関数は 4.2BSD で登場した), POSIX.1-2001."
7796
7797 #. type: Plain text
7798 #: build/C/man2/getpeername.2:116
7799 msgid ""
7800 "The third argument of B<getpeername>()  is in reality an I<int\\ *> (and "
7801 "this is what 4.x BSD and libc4 and libc5 have).  Some POSIX confusion "
7802 "resulted in the present I<socklen_t>, also used by glibc.  See also "
7803 "B<accept>(2)."
7804 msgstr ""
7805 "B<getpeername>()  の三番目の引き数は実際には I<`int\\ *'> である (4.x BSD, "
7806 "libc4, libc5 では このようになっている)。 POSIX では紆余曲折を経て現在の "
7807 "I<socklen_t> になっており、 glibc でも I<socklen_t> を使っている。 "
7808 "B<accept>(2)  も参照のこと。"
7809
7810 #. type: Plain text
7811 #: build/C/man2/getpeername.2:143
7812 msgid ""
7813 "For stream sockets, once a B<connect>(2)  has been performed, either socket "
7814 "can call B<getpeername>()  to obtain the address of the peer socket.  On the "
7815 "other hand, datagram sockets are connectionless.  Calling B<connect>(2)  on "
7816 "a datagram socket merely sets the peer address for outgoing datagrams sent "
7817 "with B<write>(2)  or B<recv>(2).  The caller of B<connect>(2)  can use "
7818 "B<getpeername>()  to obtain the peer address that it earlier set for the "
7819 "socket.  However, the peer socket is unaware of this information, and "
7820 "calling B<getpeername>()  on the peer socket will return no useful "
7821 "information (unless a B<connect>(2)  call was also executed on the peer).  "
7822 "Note also that the receiver of a datagram can obtain the address of the "
7823 "sender when using B<recvfrom>(2)."
7824 msgstr ""
7825 "ストリームソケットでは、 いったん B<connect>(2) が実行されると、 どのソケット"
7826 "も B<getpeername>() を使って相手ソケットのアドレスを取得できる。 一方、データ"
7827 "グラムソケットはコネクションレスである (接続がない)。 データグラムソケットに"
7828 "対する B<connect>(2) の呼び出しは、 B<write>(2) や B<recv>(2) で送信される出"
7829 "力データグラムの相手アドレスを設定するだけである。\n"
7830 "B<connect>(2) の呼び出し元は、 B<getpeername>() を使って、それ以前にそのソ"
7831 "ケットに設定された相手アドレスを取得することができる。 しかし、相手ソケットは"
7832 "この情報を知らないので、 相手ソケットで B<getpeername>() を呼び出しても、 役"
7833 "に立つ情報は得られない (相手側でも B<connect>(2) が呼び出されている場合を除"
7834 "く)。 なお、データグラムの受信側では B<recvfrom>(2) を使って送信元アドレスを "
7835 "取得できることも覚えておいてほしい。"
7836
7837 #. type: Plain text
7838 #: build/C/man2/getpeername.2:150
7839 msgid ""
7840 "B<accept>(2), B<bind>(2), B<getsockname>(2), B<ip>(7), B<socket>(7), "
7841 "B<unix>(7)"
7842 msgstr ""
7843 "B<accept>(2), B<bind>(2), B<getsockname>(2), B<ip>(7), B<socket>(7), "
7844 "B<unix>(7)"
7845
7846 #. type: TH
7847 #: build/C/man3/getprotoent.3:30
7848 #, no-wrap
7849 msgid "GETPROTOENT"
7850 msgstr "GETPROTOENT"
7851
7852 #. type: Plain text
7853 #: build/C/man3/getprotoent.3:34
7854 msgid ""
7855 "getprotoent, getprotobyname, getprotobynumber, setprotoent, endprotoent - "
7856 "get protocol entry"
7857 msgstr ""
7858 "getprotoent, getprotobyname, getprotobynumber, setprotoent, endprotoent - プ"
7859 "ロトコルのエントリーを取得する"
7860
7861 #. type: Plain text
7862 #: build/C/man3/getprotoent.3:39
7863 #, no-wrap
7864 msgid "B<struct protoent *getprotoent(void);>\n"
7865 msgstr "B<struct protoent *getprotoent(void);>\n"
7866
7867 #. type: Plain text
7868 #: build/C/man3/getprotoent.3:41
7869 #, no-wrap
7870 msgid "B<struct protoent *getprotobyname(const char *>I<name>B<);>\n"
7871 msgstr "B<struct protoent *getprotobyname(const char *>I<name>B<);>\n"
7872
7873 #. type: Plain text
7874 #: build/C/man3/getprotoent.3:43
7875 #, no-wrap
7876 msgid "B<struct protoent *getprotobynumber(int >I<proto>B<);>\n"
7877 msgstr "B<struct protoent *getprotobynumber(int >I<proto>B<);>\n"
7878
7879 #. type: Plain text
7880 #: build/C/man3/getprotoent.3:45
7881 #, no-wrap
7882 msgid "B<void setprotoent(int >I<stayopen>B<);>\n"
7883 msgstr "B<void setprotoent(int >I<stayopen>B<);>\n"
7884
7885 #. type: Plain text
7886 #: build/C/man3/getprotoent.3:47
7887 #, no-wrap
7888 msgid "B<void endprotoent(void);>\n"
7889 msgstr "B<void endprotoent(void);>\n"
7890
7891 #. type: Plain text
7892 #: build/C/man3/getprotoent.3:58
7893 msgid ""
7894 "The B<getprotoent>()  function reads the next entry from the protocols "
7895 "database (see B<protocols>(5))  and returns a I<protoent> structure "
7896 "containing the broken-out fields from the entry.  A connection is opened to "
7897 "the database if necessary."
7898 msgstr ""
7899 "B<getprotoent>()  関数は、プロトコルのデータベース (B<protocols>(5)  参照) か"
7900 "ら次のエントリーを読み込み、 そのエントリーを I<protoent> 構造体の要素別の"
7901 "フィールドに格納し、 その構造体を返す。 必要であれば、データベースへの接続が"
7902 "オープンされる。"
7903
7904 #. type: Plain text
7905 #: build/C/man3/getprotoent.3:68
7906 msgid ""
7907 "The B<getprotobyname>()  function returns a I<protoent> structure for the "
7908 "entry from the database that matches the protocol name I<name>.  A "
7909 "connection is opened to the database if necessary."
7910 msgstr ""
7911 "B<getprotobyname>()  関数は、プロトコル名 I<name> にマッチするエントリーを "
7912 "データベースから探し、そのエントリーを収めた I<protoent> 構造体を返す。 必要"
7913 "であれば、データベースへの接続がオープンされる。"
7914
7915 #. type: Plain text
7916 #: build/C/man3/getprotoent.3:78
7917 msgid ""
7918 "The B<getprotobynumber>()  function returns a I<protoent> structure for the "
7919 "entry from the database that matches the protocol number I<number>.  A "
7920 "connection is opened to the database if necessary."
7921 msgstr ""
7922 "B<getprotobynumber>()  関数は、プロトコル番号 I<number> にマッチするエント"
7923 "リーを データベースから探し、そのエントリーを収めた I<protoent> 構造体を返"
7924 "す。 必要であれば、データベースへの接続がオープンされる。"
7925
7926 #. type: Plain text
7927 #: build/C/man3/getprotoent.3:90
7928 msgid ""
7929 "The B<setprotoent>()  function opens a connection to the database, and sets "
7930 "the next entry to the first entry.  If I<stayopen> is nonzero, then the "
7931 "connection to the database will not be closed between calls to one of the "
7932 "B<getproto*>()  functions."
7933 msgstr ""
7934 "B<setprotoent>()  関数はデータベースへの接続をオープンし、 次の読み込みエント"
7935 "リーを先頭のエントリーに設定する。 I<stayopen> が 0 でない場合、 一つ一つの "
7936 "B<getproto*>()  関数の呼び出し間でデータベースへの接続をクローズしない。"
7937
7938 #. type: Plain text
7939 #: build/C/man3/getprotoent.3:94
7940 msgid "The B<endprotoent>()  function closes the connection to the database."
7941 msgstr "B<endprotoent>()  関数はデータベースへの接続をクローズする。"
7942
7943 #. type: Plain text
7944 #: build/C/man3/getprotoent.3:100
7945 msgid ""
7946 "The I<protoent> structure is defined in I<E<lt>netdb.hE<gt>> as follows:"
7947 msgstr ""
7948 "I<protoent> 構造体は I<E<lt>netdb.hE<gt>> で以下のように定義されている。"
7949
7950 #. type: Plain text
7951 #: build/C/man3/getprotoent.3:108
7952 #, no-wrap
7953 msgid ""
7954 "struct protoent {\n"
7955 "    char  *p_name;       /* official protocol name */\n"
7956 "    char **p_aliases;    /* alias list */\n"
7957 "    int    p_proto;      /* protocol number */\n"
7958 "}\n"
7959 msgstr ""
7960 "struct protoent {\n"
7961 "    char  *p_name;       /* official protocol name */\n"
7962 "    char **p_aliases;    /* alias list */\n"
7963 "    int    p_proto;      /* protocol number */\n"
7964 "}\n"
7965
7966 #. type: Plain text
7967 #: build/C/man3/getprotoent.3:114
7968 msgid "The members of the I<protoent> structure are:"
7969 msgstr "I<protoent> 構造体のメンバーは以下の通り。"
7970
7971 #. type: TP
7972 #: build/C/man3/getprotoent.3:114
7973 #, no-wrap
7974 msgid "I<p_name>"
7975 msgstr "I<p_name>"
7976
7977 #. type: Plain text
7978 #: build/C/man3/getprotoent.3:117
7979 msgid "The official name of the protocol."
7980 msgstr "プロトコルの正式名 (official name)。"
7981
7982 #. type: TP
7983 #: build/C/man3/getprotoent.3:117
7984 #, no-wrap
7985 msgid "I<p_aliases>"
7986 msgstr "I<p_aliases>"
7987
7988 #. type: Plain text
7989 #: build/C/man3/getprotoent.3:120
7990 msgid "A NULL-terminated list of alternative names for the protocol."
7991 msgstr "プロトコルの別名のリスト。 リストはヌルで終端される。"
7992
7993 #. type: TP
7994 #: build/C/man3/getprotoent.3:120
7995 #, no-wrap
7996 msgid "I<p_proto>"
7997 msgstr "I<p_proto>"
7998
7999 #. type: Plain text
8000 #: build/C/man3/getprotoent.3:123
8001 msgid "The protocol number."
8002 msgstr "プロトコルの番号"
8003
8004 #. type: Plain text
8005 #: build/C/man3/getprotoent.3:134
8006 msgid ""
8007 "The B<getprotoent>(), B<getprotobyname>()  and B<getprotobynumber>()  "
8008 "functions return a pointer to a statically allocated I<protoent> structure, "
8009 "or a null pointer if an error occurs or the end of the file is reached."
8010 msgstr ""
8011 "B<getprotoent>(), B<getprotobyname>(), B<getprotobynumber>()  関数は、静的に"
8012 "割り当てられた I<protoent> 構造体へのポインターを返す。 エラーが起こったり、"
8013 "ファイルの最後に達した場合は NULL を返す。"
8014
8015 #. type: TP
8016 #: build/C/man3/getprotoent.3:136 build/C/man5/protocols.5:78
8017 #, no-wrap
8018 msgid "I</etc/protocols>"
8019 msgstr "I</etc/protocols>"
8020
8021 #. type: Plain text
8022 #: build/C/man3/getprotoent.3:139
8023 msgid "protocol database file"
8024 msgstr "プロトコルのデータベースファイル"
8025
8026 #. type: Plain text
8027 #: build/C/man3/getprotoent.3:147
8028 msgid "B<getnetent>(3), B<getprotoent_r>(3), B<getservent>(3), B<protocols>(5)"
8029 msgstr ""
8030 "B<getnetent>(3), B<getprotoent_r>(3), B<getservent>(3), B<protocols>(5)"
8031
8032 #. type: TH
8033 #: build/C/man3/getprotoent_r.3:26
8034 #, no-wrap
8035 msgid "GETPROTOENT_R"
8036 msgstr "GETPROTOENT_R"
8037
8038 #. type: Plain text
8039 #: build/C/man3/getprotoent_r.3:30
8040 msgid ""
8041 "getprotoent_r, getprotobyname_r, getprotobynumber_r - get protocol entry "
8042 "(reentrant)"
8043 msgstr ""
8044 "getprotoent_r, getprotobyname_r, getprotobynumber_r - プロトコル\n"
8045 "エントリーを取得する (リエントラント版)"
8046
8047 #. type: Plain text
8048 #: build/C/man3/getprotoent_r.3:36
8049 #, no-wrap
8050 msgid ""
8051 "B<int getprotoent_r(struct protoent *>I<result_buf>B<, char *>I<buf>B<,>\n"
8052 "B<                size_t >I<buflen>B<, struct protoent **>I<result>B<);>\n"
8053 msgstr ""
8054 "B<int getprotoent_r(struct protoent *>I<result_buf>B<, char *>I<buf>B<,>\n"
8055 "B<                size_t >I<buflen>B<, struct protoent **>I<result>B<);>\n"
8056
8057 #. type: Plain text
8058 #: build/C/man3/getprotoent_r.3:40
8059 #, no-wrap
8060 msgid ""
8061 "B<int getprotobyname_r(const char *>I<name>B<,>\n"
8062 "B<                struct protoent *>I<result_buf>B<, char *>I<buf>B<,>\n"
8063 "B<                size_t >I<buflen>B<, struct protoent **>I<result>B<);>\n"
8064 msgstr ""
8065 "B<int getprotobyname_r(const char *>I<name>B<,>\n"
8066 "B<                struct protoent *>I<result_buf>B<, char *>I<buf>B<,>\n"
8067 "B<                size_t >I<buflen>B<, struct protoent **>I<result>B<);>\n"
8068
8069 #. type: Plain text
8070 #: build/C/man3/getprotoent_r.3:44
8071 #, no-wrap
8072 msgid ""
8073 "B<int getprotobynumber_r(int >I<proto>B<,>\n"
8074 "B<                struct protoent *>I<result_buf>B<, char *>I<buf>B<,>\n"
8075 "B<                size_t >I<buflen>B<, struct protoent **>I<result>B<);>\n"
8076 msgstr ""
8077 "B<int getprotobynumber_r(int >I<proto>B<,>\n"
8078 "B<                struct protoent *>I<result_buf>B<, char *>I<buf>B<,>\n"
8079 "B<                size_t >I<buflen>B<, struct protoent **>I<result>B<);>\n"
8080
8081 #. type: Plain text
8082 #: build/C/man3/getprotoent_r.3:55
8083 msgid "B<getprotoent_r>(), B<getprotobyname_r>(), B<getprotobynumber_r>():"
8084 msgstr "B<getprotoent_r>(), B<getprotobyname_r>(), B<getprotobynumber_r>():"
8085
8086 #. type: Plain text
8087 #: build/C/man3/getprotoent_r.3:76
8088 msgid ""
8089 "The B<getprotoent_r>(), B<getprotobyname_r>(), and B<getprotobynumber_r>()  "
8090 "functions are the reentrant equivalents of, respectively, B<getprotoent>(3), "
8091 "B<getprotobyname>(3), and B<getprotobynumber>(3).  They differ in the way "
8092 "that the I<protoent> structure is returned, and in the function calling "
8093 "signature and return value.  This manual page describes just the differences "
8094 "from the nonreentrant functions."
8095 msgstr ""
8096 "関数 B<getprotoent_r>(), B<getprotobyname_r>(),\n"
8097 "B<getprotobynumber_r>() は、それぞれ B<getprotoent>(3),\n"
8098 "B<getprotobyname>(3), B<getprotobynumber>(3) のリエントラント版である。\n"
8099 "I<protoent> 構造体の返し方と、関数呼び出し時の引き数と返り値が異なる。\n"
8100 "このマニュアルページでは、リエントラントでない関数との違いだけを\n"
8101 "説明する。"
8102
8103 #. type: Plain text
8104 #: build/C/man3/getprotoent_r.3:82
8105 msgid ""
8106 "Instead of returning a pointer to a statically allocated I<protoent> "
8107 "structure as the function result, these functions copy the structure into "
8108 "the location pointed to by I<result_buf>."
8109 msgstr ""
8110 "これらの関数は、関数の結果として静的に割り当てられた I<protoent> 構造体\n"
8111 "へのポインターを返すのではなく、 I<protoent> 構造体を I<result_buf> が\n"
8112 "指す場所にコピーする。"
8113
8114 #.  I can find no information on the required/recommended buffer size;
8115 #.  the nonreentrant functions use a 1024 byte buffer.
8116 #.  The 1024 byte value is also what the Solaris man page suggests. -- mtk
8117 #. type: Plain text
8118 #: build/C/man3/getprotoent_r.3:100
8119 msgid ""
8120 "The I<buf> array is used to store the string fields pointed to by the "
8121 "returned I<protoent> structure.  (The nonreentrant functions allocate these "
8122 "strings in static storage.)  The size of this array is specified in "
8123 "I<buflen>.  If I<buf> is too small, the call fails with the error B<ERANGE>, "
8124 "and the caller must try again with a larger buffer.  (A buffer of length "
8125 "1024 bytes should be sufficient for most applications.)"
8126 msgstr ""
8127 "配列 I<buf> は、返される I<protoent> 構造体が指す文字列フィールドを\n"
8128 "格納するのに使用される (リエントラントでない関数の場合は、\n"
8129 "これらの文字列は静的な領域に格納される)。\n"
8130 "この配列の大きさは I<buflen> で指定される。\n"
8131 "I<buf> が小さすぎる場合、関数呼び出しはエラー B<ERANGE> で失敗し、\n"
8132 "呼び出し側ではもっと大きなバッファーで再度呼び出す必要がある (ほとんどの\n"
8133 "アプリケーションでは、長さ 1024 バイトのバッファーで十分なはずである)。"
8134
8135 #. type: Plain text
8136 #: build/C/man3/getprotoent_r.3:108
8137 msgid ""
8138 "If the function call successfully obtains a protocol record, then I<*result> "
8139 "is set pointing to I<result_buf>; otherwise, I<*result> is set to NULL."
8140 msgstr ""
8141 "関数呼び出しでプロトコルレコードの取得に成功すると、\n"
8142 "I<*result> は I<result_buf> を指すように設定される。\n"
8143 "それ以外の場合は I<*result> に NULL が設定される。"
8144
8145 #. type: Plain text
8146 #: build/C/man3/getprotoent_r.3:119
8147 msgid ""
8148 "On error, record not found (B<getprotobyname_r>(), B<getprotobynumber_r>()), "
8149 "or end of input (B<getprotoent_r>())  I<result> is set to NULL."
8150 msgstr ""
8151 "エラーの場合、レコードが見つからなかった場合 (B<getprotobyname_r>(),\n"
8152 "B<getprotobyaddr_r>()) やこれ以上レコードがない場合\n"
8153 "(B<getprotoent_r>())、I<result> には NULL が設定される。"
8154
8155 #. type: Plain text
8156 #: build/C/man3/getprotoent_r.3:124
8157 msgid "(B<getprotoent_r>())  No more records in database."
8158 msgstr "(B<getprotoent_r>())  データベースにこれ以上レコードがない。"
8159
8160 #. type: Plain text
8161 #: build/C/man3/getprotoent_r.3:149
8162 msgid ""
8163 "The program below uses B<getprotobyname_r>()  to retrieve the protocol "
8164 "record for the protocol named in its first command-line argument.  If a "
8165 "second (integer) command-line argument is supplied, it is used as the "
8166 "initial value for I<buflen>; if B<getprotobyname_r>()  fails with the error "
8167 "B<ERANGE>, the program retries with larger buffer sizes.  The following "
8168 "shell session shows a couple of sample runs:"
8169 msgstr ""
8170 "以下のプログラムは、 B<getprotobyname_r>() を使って、最初のコマンド\n"
8171 "ライン引き数で指定された名前のプロトコルのレコードを取得する。\n"
8172 "二番目のコマンドライン引き数 (整数値) が指定された場合は、\n"
8173 "その値が I<buflen> の初期値として使用される。\n"
8174 "B<getprotobyname_r>() がエラー B<ERANGE> で失敗すると、プログラムは\n"
8175 "より大きなバッファーサイズで再度 B<getprotobyname_r> を呼び出す。\n"
8176 "下記のシェルのセッションは、実行例を示している。"
8177
8178 #. type: Plain text
8179 #: build/C/man3/getprotoent_r.3:160
8180 #, no-wrap
8181 msgid ""
8182 "$B< ./a.out tcp 1>\n"
8183 "ERANGE! Retrying with larger buffer\n"
8184 "getprotobyname_r() returned: 0 (success)  (buflen=78)\n"
8185 "p_name=tcp; p_proto=6; aliases=TCP\n"
8186 "$B< ./a.out xxx 1>\n"
8187 "ERANGE! Retrying with larger buffer\n"
8188 "getprotobyname_r() returned: 0 (success)  (buflen=100)\n"
8189 "Call failed/record not found\n"
8190 msgstr ""
8191 "$B< ./a.out tcp 1>\n"
8192 "ERANGE! Retrying with larger buffer\n"
8193 "getprotobyname_r() returned: 0 (success)  (buflen=78)\n"
8194 "p_name=tcp; p_proto=6; aliases=TCP\n"
8195 "$B< ./a.out xxx 1>\n"
8196 "ERANGE! Retrying with larger buffer\n"
8197 "getprotobyname_r() returned: 0 (success)  (buflen=100)\n"
8198 "Call failed/record not found\n"
8199
8200 #. type: Plain text
8201 #: build/C/man3/getprotoent_r.3:172 build/C/man3/getservent_r.3:170
8202 #, no-wrap
8203 msgid ""
8204 "#define _GNU_SOURCE\n"
8205 "#include E<lt>ctype.hE<gt>\n"
8206 "#include E<lt>netdb.hE<gt>\n"
8207 "#include E<lt>stdlib.hE<gt>\n"
8208 "#include E<lt>stdio.hE<gt>\n"
8209 "#include E<lt>errno.hE<gt>\n"
8210 "#include E<lt>string.hE<gt>\n"
8211 msgstr ""
8212 "#define _GNU_SOURCE\n"
8213 "#include E<lt>ctype.hE<gt>\n"
8214 "#include E<lt>netdb.hE<gt>\n"
8215 "#include E<lt>stdlib.hE<gt>\n"
8216 "#include E<lt>stdio.hE<gt>\n"
8217 "#include E<lt>errno.hE<gt>\n"
8218 "#include E<lt>string.hE<gt>\n"
8219
8220 #. type: Plain text
8221 #: build/C/man3/getprotoent_r.3:174 build/C/man3/getservent_r.3:172
8222 #, no-wrap
8223 msgid "#define MAX_BUF 10000\n"
8224 msgstr "#define MAX_BUF 10000\n"
8225
8226 #. type: Plain text
8227 #: build/C/man3/getprotoent_r.3:183
8228 #, no-wrap
8229 msgid ""
8230 "int\n"
8231 "main(int argc, char *argv[])\n"
8232 "{\n"
8233 "    int buflen, erange_cnt, s;\n"
8234 "    struct protoent result_buf;\n"
8235 "    struct protoent *result;\n"
8236 "    char buf[MAX_BUF];\n"
8237 "    char **p;\n"
8238 msgstr ""
8239 "int\n"
8240 "main(int argc, char *argv[])\n"
8241 "{\n"
8242 "    int buflen, erange_cnt, s;\n"
8243 "    struct protoent result_buf;\n"
8244 "    struct protoent *result;\n"
8245 "    char buf[MAX_BUF];\n"
8246 "    char **p;\n"
8247
8248 #. type: Plain text
8249 #: build/C/man3/getprotoent_r.3:188
8250 #, no-wrap
8251 msgid ""
8252 "    if (argc E<lt> 2) {\n"
8253 "        printf(\"Usage: %s proto-name [buflen]\\en\", argv[0]);\n"
8254 "        exit(EXIT_FAILURE);\n"
8255 "    }\n"
8256 msgstr ""
8257 "    if (argc E<lt> 2) {\n"
8258 "        printf(\"Usage: %s proto-name [buflen]\\en\", argv[0]);\n"
8259 "        exit(EXIT_FAILURE);\n"
8260 "    }\n"
8261
8262 #. type: Plain text
8263 #: build/C/man3/getprotoent_r.3:192
8264 #, no-wrap
8265 msgid ""
8266 "    buflen = 1024;\n"
8267 "    if (argc E<gt> 2)\n"
8268 "        buflen = atoi(argv[2]);\n"
8269 msgstr ""
8270 "    buflen = 1024;\n"
8271 "    if (argc E<gt> 2)\n"
8272 "        buflen = atoi(argv[2]);\n"
8273
8274 #. type: Plain text
8275 #: build/C/man3/getprotoent_r.3:197 build/C/man3/getservent_r.3:200
8276 #, no-wrap
8277 msgid ""
8278 "    if (buflen E<gt> MAX_BUF) {\n"
8279 "        printf(\"Exceeded buffer limit (%d)\\en\", MAX_BUF);\n"
8280 "        exit(EXIT_FAILURE);\n"
8281 "    }\n"
8282 msgstr ""
8283 "    if (buflen E<gt> MAX_BUF) {\n"
8284 "        printf(\"Exceeded buffer limit (%d)\\en\", MAX_BUF);\n"
8285 "        exit(EXIT_FAILURE);\n"
8286 "    }\n"
8287
8288 #. type: Plain text
8289 #: build/C/man3/getprotoent_r.3:206
8290 #, no-wrap
8291 msgid ""
8292 "    erange_cnt = 0;\n"
8293 "    do {\n"
8294 "        s = getprotobyname_r(argv[1], &result_buf,\n"
8295 "                     buf, buflen, &result);\n"
8296 "        if (s == ERANGE) {\n"
8297 "            if (erange_cnt == 0)\n"
8298 "                printf(\"ERANGE! Retrying with larger buffer\\en\");\n"
8299 "            erange_cnt++;\n"
8300 msgstr ""
8301 "    erange_cnt = 0;\n"
8302 "    do {\n"
8303 "        s = getprotobyname_r(argv[1], &result_buf,\n"
8304 "                     buf, buflen, &result);\n"
8305 "        if (s == ERANGE) {\n"
8306 "            if (erange_cnt == 0)\n"
8307 "                printf(\"ERANGE! Retrying with larger buffer\\en\");\n"
8308 "            erange_cnt++;\n"
8309
8310 #. type: Plain text
8311 #: build/C/man3/getprotoent_r.3:209 build/C/man3/getservent_r.3:212
8312 #, no-wrap
8313 msgid ""
8314 "            /* Increment a byte at a time so we can see exactly\n"
8315 "               what size buffer was required */\n"
8316 msgstr ""
8317 "            /* Increment a byte at a time so we can see exactly\n"
8318 "               what size buffer was required */\n"
8319
8320 #. type: Plain text
8321 #: build/C/man3/getprotoent_r.3:211 build/C/man3/getservent_r.3:214
8322 #, no-wrap
8323 msgid "            buflen++;\n"
8324 msgstr "            buflen++;\n"
8325
8326 #. type: Plain text
8327 #: build/C/man3/getprotoent_r.3:218 build/C/man3/getservent_r.3:221
8328 #, no-wrap
8329 msgid ""
8330 "            if (buflen E<gt> MAX_BUF) {\n"
8331 "                printf(\"Exceeded buffer limit (%d)\\en\", MAX_BUF);\n"
8332 "                exit(EXIT_FAILURE);\n"
8333 "            }\n"
8334 "        }\n"
8335 "    } while (s == ERANGE);\n"
8336 msgstr ""
8337 "            if (buflen E<gt> MAX_BUF) {\n"
8338 "                printf(\"Exceeded buffer limit (%d)\\en\", MAX_BUF);\n"
8339 "                exit(EXIT_FAILURE);\n"
8340 "            }\n"
8341 "        }\n"
8342 "    } while (s == ERANGE);\n"
8343
8344 #. type: Plain text
8345 #: build/C/man3/getprotoent_r.3:222
8346 #, no-wrap
8347 msgid ""
8348 "    printf(\"getprotobyname_r() returned: %s  (buflen=%d)\\en\",\n"
8349 "            (s == 0) ? \"0 (success)\" : (s == ENOENT) ? \"ENOENT\" :\n"
8350 "            strerror(s), buflen);\n"
8351 msgstr ""
8352 "    printf(\"getprotobyname_r() returned: %s  (buflen=%d)\\en\",\n"
8353 "            (s == 0) ? \"0 (success)\" : (s == ENOENT) ? \"ENOENT\" :\n"
8354 "            strerror(s), buflen);\n"
8355
8356 #. type: Plain text
8357 #: build/C/man3/getprotoent_r.3:227 build/C/man3/getservent_r.3:230
8358 #, no-wrap
8359 msgid ""
8360 "    if (s != 0 || result == NULL) {\n"
8361 "        printf(\"Call failed/record not found\\en\");\n"
8362 "        exit(EXIT_FAILURE);\n"
8363 "    }\n"
8364 msgstr ""
8365 "    if (s != 0 || result == NULL) {\n"
8366 "        printf(\"Call failed/record not found\\en\");\n"
8367 "        exit(EXIT_FAILURE);\n"
8368 "    }\n"
8369
8370 #. type: Plain text
8371 #: build/C/man3/getprotoent_r.3:233
8372 #, no-wrap
8373 msgid ""
8374 "    printf(\"p_name=%s; p_proto=%d; aliases=\",\n"
8375 "                result_buf.p_name, result_buf.p_proto);\n"
8376 "    for (p = result_buf.p_aliases; *p != NULL; p++)\n"
8377 "        printf(\"%s \", *p);\n"
8378 "    printf(\"\\en\");\n"
8379 msgstr ""
8380 "    printf(\"p_name=%s; p_proto=%d; aliases=\",\n"
8381 "                result_buf.p_name, result_buf.p_proto);\n"
8382 "    for (p = result_buf.p_aliases; *p != NULL; p++)\n"
8383 "        printf(\"%s \", *p);\n"
8384 "    printf(\"\\en\");\n"
8385
8386 #. type: Plain text
8387 #: build/C/man3/getprotoent_r.3:240
8388 msgid "B<getprotoent>(3), B<protocols>(5)"
8389 msgstr "B<getprotoent>(3), B<protocols>(5)"
8390
8391 #. type: TH
8392 #: build/C/man3/getservent.3:34
8393 #, no-wrap
8394 msgid "GETSERVENT"
8395 msgstr "GETSERVENT"
8396
8397 #. type: Plain text
8398 #: build/C/man3/getservent.3:38
8399 msgid ""
8400 "getservent, getservbyname, getservbyport, setservent, endservent - get "
8401 "service entry"
8402 msgstr ""
8403 "getservent, getservbyname, getservbyport, setservent, endservent - サービスの"
8404 "エントリーを取得する"
8405
8406 #. type: Plain text
8407 #: build/C/man3/getservent.3:43
8408 #, no-wrap
8409 msgid "B<struct servent *getservent(void);>\n"
8410 msgstr "B<struct servent *getservent(void);>\n"
8411
8412 #. type: Plain text
8413 #: build/C/man3/getservent.3:45
8414 #, no-wrap
8415 msgid "B<struct servent *getservbyname(const char *>I<name>B<, const char *>I<proto>B<);>\n"
8416 msgstr "B<struct servent *getservbyname(const char *>I<name>B<, const char *>I<proto>B<);>\n"
8417
8418 #. type: Plain text
8419 #: build/C/man3/getservent.3:47
8420 #, no-wrap
8421 msgid "B<struct servent *getservbyport(int >I<port>B<, const char *>I<proto>B<);>\n"
8422 msgstr "B<struct servent *getservbyport(int >I<port>B<, const char *>I<proto>B<);>\n"
8423
8424 #. type: Plain text
8425 #: build/C/man3/getservent.3:49
8426 #, no-wrap
8427 msgid "B<void setservent(int >I<stayopen>B<);>\n"
8428 msgstr "B<void setservent(int >I<stayopen>B<);>\n"
8429
8430 #. type: Plain text
8431 #: build/C/man3/getservent.3:51
8432 #, no-wrap
8433 msgid "B<void endservent(void);>\n"
8434 msgstr "B<void endservent(void);>\n"
8435
8436 #. type: Plain text
8437 #: build/C/man3/getservent.3:62
8438 msgid ""
8439 "The B<getservent>()  function reads the next entry from the services "
8440 "database (see B<services>(5))  and returns a I<servent> structure containing "
8441 "the broken-out fields from the entry.  A connection is opened to the "
8442 "database if necessary."
8443 msgstr ""
8444 "B<getservent>()  関数はサービスのデータベース (B<services>(5)  参照) から次の"
8445 "エントリーを読み込み、 そのエントリーを I<servent> 構造体の要素別のフィールド"
8446 "に格納し、 その構造体を返す。 必要であれば、データベースへの接続がオープンさ"
8447 "れる。"
8448
8449 #. type: Plain text
8450 #: build/C/man3/getservent.3:77
8451 msgid ""
8452 "The B<getservbyname>()  function returns a I<servent> structure for the "
8453 "entry from the database that matches the service I<name> using protocol "
8454 "I<proto>.  If I<proto> is NULL, any protocol will be matched.  A connection "
8455 "is opened to the database if necessary."
8456 msgstr ""
8457 "B<getservbyname>()  関数は、 プロトコル I<proto> を用いるサービスの名前 "
8458 "I<name> にマッチするエントリーをデータベースから探し、 そのエントリーを収め"
8459 "た I<servent> 構造体を返す。 I<proto> が NULL の場合は、任意のプロトコルに"
8460 "マッチする。 必要であれば、データベースへの接続がオープンされる。"
8461
8462 #. type: Plain text
8463 #: build/C/man3/getservent.3:93
8464 msgid ""
8465 "The B<getservbyport>()  function returns a I<servent> structure for the "
8466 "entry from the database that matches the port I<port> (given in network byte "
8467 "order)  using protocol I<proto>.  If I<proto> is NULL, any protocol will be "
8468 "matched.  A connection is opened to the database if necessary."
8469 msgstr ""
8470 "B<getservbyport>()  関数は、 プロトコル I<proto> を用いるサービスのポート番"
8471 "号 I<port> にマッチするエントリーをデータベースから探し、 そのエントリーの内"
8472 "容を収めた I<servent> 構造体を返す (ポート番号 I<port> はネットワークバイト"
8473 "オーダで指定する)。 I<proto> が NULL の場合は任意のプロトコルにマッチする。 "
8474 "必要であれば、データベースへの接続がオープンされる。"
8475
8476 #. type: Plain text
8477 #: build/C/man3/getservent.3:105
8478 msgid ""
8479 "The B<setservent>()  function opens a connection to the database, and sets "
8480 "the next entry to the first entry.  If I<stayopen> is nonzero, then the "
8481 "connection to the database will not be closed between calls to one of the "
8482 "B<getserv*>()  functions."
8483 msgstr ""
8484 "B<setservent>()  関数はデータベースへの接続をオープンし、 次の読み込みエント"
8485 "リーを先頭のエントリーに設定する。 I<stayopen> が 0 でない場合、 一つ一つの "
8486 "B<getserv*>()  関数の呼び出し間でデータベースへの接続をクローズしない。"
8487
8488 #. type: Plain text
8489 #: build/C/man3/getservent.3:109
8490 msgid "The B<endservent>()  function closes the connection to the database."
8491 msgstr "B<endservent>()  関数はデータベースへの接続をクローズする。"
8492
8493 #. type: Plain text
8494 #: build/C/man3/getservent.3:115
8495 msgid "The I<servent> structure is defined in I<E<lt>netdb.hE<gt>> as follows:"
8496 msgstr ""
8497 "I<servent> 構造体は I<E<lt>netdb.hE<gt>> で以下のように定義されている。"
8498
8499 #. type: Plain text
8500 #: build/C/man3/getservent.3:124
8501 #, no-wrap
8502 msgid ""
8503 "struct servent {\n"
8504 "    char  *s_name;       /* official service name */\n"
8505 "    char **s_aliases;    /* alias list */\n"
8506 "    int    s_port;       /* port number */\n"
8507 "    char  *s_proto;      /* protocol to use */\n"
8508 "}\n"
8509 msgstr ""
8510 "struct servent {\n"
8511 "    char  *s_name;       /* official service name */\n"
8512 "    char **s_aliases;    /* alias list */\n"
8513 "    int    s_port;       /* port number */\n"
8514 "    char  *s_proto;      /* protocol to use */\n"
8515 "}\n"
8516
8517 #. type: Plain text
8518 #: build/C/man3/getservent.3:130
8519 msgid "The members of the I<servent> structure are:"
8520 msgstr "I<servent> 構造体のメンバーは以下の通り。"
8521
8522 #. type: TP
8523 #: build/C/man3/getservent.3:130
8524 #, no-wrap
8525 msgid "I<s_name>"
8526 msgstr "I<s_name>"
8527
8528 #. type: Plain text
8529 #: build/C/man3/getservent.3:133
8530 msgid "The official name of the service."
8531 msgstr "サービスの正式名 (official name)。"
8532
8533 #. type: TP
8534 #: build/C/man3/getservent.3:133
8535 #, no-wrap
8536 msgid "I<s_aliases>"
8537 msgstr "I<s_aliases>"
8538
8539 #. type: Plain text
8540 #: build/C/man3/getservent.3:136
8541 msgid "A NULL-terminated list of alternative names for the service."
8542 msgstr "サービスの別名のリスト。 リストはヌルで終端される。"
8543
8544 #. type: TP
8545 #: build/C/man3/getservent.3:136
8546 #, no-wrap
8547 msgid "I<s_port>"
8548 msgstr "I<s_port>"
8549
8550 #. type: Plain text
8551 #: build/C/man3/getservent.3:139
8552 msgid "The port number for the service given in network byte order."
8553 msgstr "サービスのポート番号。ネットワークバイトオーダで指定される。"
8554
8555 #. type: TP
8556 #: build/C/man3/getservent.3:139
8557 #, no-wrap
8558 msgid "I<s_proto>"
8559 msgstr "I<s_proto>"
8560
8561 #. type: Plain text
8562 #: build/C/man3/getservent.3:142
8563 msgid "The name of the protocol to use with this service."
8564 msgstr "このサービスと共に用いるプロトコルの名前。"
8565
8566 #. type: Plain text
8567 #: build/C/man3/getservent.3:153
8568 msgid ""
8569 "The B<getservent>(), B<getservbyname>()  and B<getservbyport>()  functions "
8570 "return a pointer to a statically allocated I<servent> structure, or NULL if "
8571 "an error occurs or the end of the file is reached."
8572 msgstr ""
8573 "B<getservent>(), B<getservbyname>(), B<getservbyport>()  関数は、 静的に割り"
8574 "当てられた I<servent> 構造体へのポインターを返す。 エラーが起こったり、ファイ"
8575 "ルの末尾に達した場合は NULL を返す。"
8576
8577 #. type: TP
8578 #: build/C/man3/getservent.3:154 build/C/man5/services.5:186
8579 #, no-wrap
8580 msgid "I</etc/services>"
8581 msgstr "I</etc/services>"
8582
8583 #. type: Plain text
8584 #: build/C/man3/getservent.3:157
8585 msgid "services database file"
8586 msgstr "サービスのデータベースファイル"
8587
8588 #. type: Plain text
8589 #: build/C/man3/getservent.3:164
8590 msgid "B<getnetent>(3), B<getprotoent>(3), B<getservent_r>(3), B<services>(5)"
8591 msgstr "B<getnetent>(3), B<getprotoent>(3), B<getservent_r>(3), B<services>(5)"
8592
8593 #. type: TH
8594 #: build/C/man3/getservent_r.3:26
8595 #, no-wrap
8596 msgid "GETSERVENT_R"
8597 msgstr "GETSERVENT_R"
8598
8599 #. type: Plain text
8600 #: build/C/man3/getservent_r.3:30
8601 msgid ""
8602 "getservent_r, getservbyname_r, getservbyport_r - get service entry "
8603 "(reentrant)"
8604 msgstr ""
8605 "getservent_r, getservbyname_r, getservbyport_r - サービスエントリーを\n"
8606 "取得する (リエントラント版)"
8607
8608 #. type: Plain text
8609 #: build/C/man3/getservent_r.3:36
8610 #, no-wrap
8611 msgid ""
8612 "B<int getservent_r(struct servent *>I<result_buf>B<, char *>I<buf>B<,>\n"
8613 "B<                size_t >I<buflen>B<, struct servent **>I<result>B<);>\n"
8614 msgstr ""
8615 "B<int getservent_r(struct servent *>I<result_buf>B<, char *>I<buf>B<,>\n"
8616 "B<                size_t >I<buflen>B<, struct servent **>I<result>B<);>\n"
8617
8618 #. type: Plain text
8619 #: build/C/man3/getservent_r.3:40
8620 #, no-wrap
8621 msgid ""
8622 "B<int getservbyname_r(const char *>I<name>B<, const char *>I<proto>B<,>\n"
8623 "B<                struct servent *>I<result_buf>B<, char *>I<buf>B<,>\n"
8624 "B<                size_t >I<buflen>B<, struct servent **>I<result>B<);>\n"
8625 msgstr ""
8626 "B<int getservbyname_r(const char *>I<name>B<, const char *>I<proto>B<,>\n"
8627 "B<                struct servent *>I<result_buf>B<, char *>I<buf>B<,>\n"
8628 "B<                size_t >I<buflen>B<, struct servent **>I<result>B<);>\n"
8629
8630 #. type: Plain text
8631 #: build/C/man3/getservent_r.3:44
8632 #, no-wrap
8633 msgid ""
8634 "B<int getservbyport_r(int >I<port>B<, const char *>I<proto>B<,>\n"
8635 "B<                struct servent *>I<result_buf>B<, char *>I<buf>B<,>\n"
8636 "B<                size_t >I<buflen>B<, struct servent **>I<result>B<);>\n"
8637 msgstr ""
8638 "B<int getservbyport_r(int >I<port>B<, const char *>I<proto>B<,>\n"
8639 "B<                struct servent *>I<result_buf>B<, char *>I<buf>B<,>\n"
8640 "B<                size_t >I<buflen>B<, struct servent **>I<result>B<);>\n"
8641
8642 #. type: Plain text
8643 #: build/C/man3/getservent_r.3:55
8644 msgid "B<getservent_r>(), B<getservbyname_r>(), B<getservbyport_r>():"
8645 msgstr "B<getservent_r>(), B<getservbyname_r>(), B<getservbyport_r>():"
8646
8647 #. type: Plain text
8648 #: build/C/man3/getservent_r.3:76
8649 msgid ""
8650 "The B<getservent_r>(), B<getservbyname_r>(), and B<getservbyport_r>()  "
8651 "functions are the reentrant equivalents of, respectively, B<getservent>(3), "
8652 "B<getservbyname>(3), and B<getservbyport>(3).  They differ in the way that "
8653 "the I<servent> structure is returned, and in the function calling signature "
8654 "and return value.  This manual page describes just the differences from the "
8655 "nonreentrant functions."
8656 msgstr ""
8657 "関数 B<getservent_r>(), B<getservbyname_r>(), B<getservbyport_r>() は、\n"
8658 "それぞれ B<getservent>(3), B<getservbyname>(3), B<getservbyport>(3) の\n"
8659 "リエントラント版である。\n"
8660 "I<servent> 構造体の返し方と、関数呼び出し時の引き数と返り値が異なる。\n"
8661 "このマニュアルページでは、リエントラントでない関数との違いだけを\n"
8662 "説明する。"
8663
8664 #. type: Plain text
8665 #: build/C/man3/getservent_r.3:82
8666 msgid ""
8667 "Instead of returning a pointer to a statically allocated I<servent> "
8668 "structure as the function result, these functions copy the structure into "
8669 "the location pointed to by I<result_buf>."
8670 msgstr ""
8671 "これらの関数は、関数の結果として静的に割り当てられた I<servent> 構造体\n"
8672 "へのポインターを返すのではなく、 I<servent> 構造体を I<result_buf> が\n"
8673 "指す場所にコピーする。"
8674
8675 #.  I can find no information on the required/recommended buffer size;
8676 #.  the nonreentrant functions use a 1024 byte buffer -- mtk.
8677 #. type: Plain text
8678 #: build/C/man3/getservent_r.3:99
8679 msgid ""
8680 "The I<buf> array is used to store the string fields pointed to by the "
8681 "returned I<servent> structure.  (The nonreentrant functions allocate these "
8682 "strings in static storage.)  The size of this array is specified in "
8683 "I<buflen>.  If I<buf> is too small, the call fails with the error B<ERANGE>, "
8684 "and the caller must try again with a larger buffer.  (A buffer of length "
8685 "1024 bytes should be sufficient for most applications.)"
8686 msgstr ""
8687 "配列 I<buf> は、返される I<servent> 構造体が指す文字列フィールドを\n"
8688 "格納するのに使用される (リエントラントでない関数の場合は、\n"
8689 "これらの文字列は静的な領域に格納される)。\n"
8690 "この配列の大きさは I<buflen> で指定される。\n"
8691 "I<buf> が小さすぎる場合、関数呼び出しはエラー B<ERANGE> で失敗し、\n"
8692 "呼び出し側ではもっと大きなバッファーで再度呼び出す必要がある (ほとんどの\n"
8693 "アプリケーションでは、長さ 1024 バイトのバッファーで十分なはずである)。"
8694
8695 #. type: Plain text
8696 #: build/C/man3/getservent_r.3:107
8697 msgid ""
8698 "If the function call successfully obtains a service record, then I<*result> "
8699 "is set pointing to I<result_buf>; otherwise, I<*result> is set to NULL."
8700 msgstr ""
8701 "関数呼び出しでサービスレコードの取得に成功すると、\n"
8702 "I<*result> は I<result_buf> を指すように設定される。\n"
8703 "それ以外の場合は I<*result> に NULL が設定される。"
8704
8705 #. type: Plain text
8706 #: build/C/man3/getservent_r.3:110
8707 msgid ""
8708 "On success, these functions return 0.  On error, they return one of the "
8709 "positive error numbers listed in errors."
8710 msgstr ""
8711 "成功すると、これらの関数は 0 を返す。エラーの場合、「エラー」の節の\n"
8712 "リストにある正のエラー番号のいずれかを返す。"
8713
8714 #. type: Plain text
8715 #: build/C/man3/getservent_r.3:118
8716 msgid ""
8717 "On error, record not found (B<getservbyname_r>(), B<getservbyport_r>()), or "
8718 "end of input (B<getservent_r>())  I<result> is set to NULL."
8719 msgstr ""
8720 "エラーの場合、レコードが見つからなかった場合 (B<getservbyname_r>(),\n"
8721 "B<getservbyaddr_r>()) やこれ以上レコードがない場合 (B<getservent_r>())、\n"
8722 "I<result> には NULL が設定される。"
8723
8724 #. type: Plain text
8725 #: build/C/man3/getservent_r.3:123
8726 msgid "(B<getservent_r>())  No more records in database."
8727 msgstr "(B<getservent_r>())  データベースにこれ以上レコードがない。"
8728
8729 #. type: Plain text
8730 #: build/C/man3/getservent_r.3:148
8731 msgid ""
8732 "The program below uses B<getservbyport_r>()  to retrieve the service record "
8733 "for the port and protocol named in its first command-line argument.  If a "
8734 "third (integer) command-line argument is supplied, it is used as the initial "
8735 "value for I<buflen>; if B<getservbyport_r>()  fails with the error "
8736 "B<ERANGE>, the program retries with larger buffer sizes.  The following "
8737 "shell session shows a couple of sample runs:"
8738 msgstr ""
8739 "以下のプログラムは、 B<getservbyport_r>() を使って、コマンド\n"
8740 "ライン引き数で指定されたポート番号とプロトコル名を持つ\n"
8741 "サービスレコードを取得する。\n"
8742 "三番目のコマンドライン引き数 (整数値) が指定された場合は、\n"
8743 "その値が I<buflen> の初期値として使用される。\n"
8744 "B<getservbyport_r>() がエラー B<ERANGE> で失敗すると、プログラムは\n"
8745 "より大きなバッファーサイズで再度 B<getservbyport_r> を呼び出す。\n"
8746 "下記のシェルのセッションは実行例を示している。"
8747
8748 #. type: Plain text
8749 #: build/C/man3/getservent_r.3:158
8750 #, no-wrap
8751 msgid ""
8752 "$B< ./a.out 7 tcp 1>\n"
8753 "ERANGE! Retrying with larger buffer\n"
8754 "getservbyport_r() returned: 0 (success)  (buflen=87)\n"
8755 "s_name=echo; s_proto=tcp; s_port=7; aliases=\n"
8756 "$B< ./a.out 77777 tcp>\n"
8757 "getservbyport_r() returned: 0 (success)  (buflen=1024)\n"
8758 "Call failed/record not found\n"
8759 msgstr ""
8760 "$B< ./a.out 7 tcp 1>\n"
8761 "ERANGE! Retrying with larger buffer\n"
8762 "getservbyport_r() returned: 0 (success)  (buflen=87)\n"
8763 "s_name=echo; s_proto=tcp; s_port=7; aliases=\n"
8764 "$B< ./a.out 77777 tcp>\n"
8765 "getservbyport_r() returned: 0 (success)  (buflen=1024)\n"
8766 "Call failed/record not found\n"
8767
8768 #. type: Plain text
8769 #: build/C/man3/getservent_r.3:182
8770 #, no-wrap
8771 msgid ""
8772 "int\n"
8773 "main(int argc, char *argv[])\n"
8774 "{\n"
8775 "    int buflen, erange_cnt, port, s;\n"
8776 "    struct servent result_buf;\n"
8777 "    struct servent *result;\n"
8778 "    char buf[MAX_BUF];\n"
8779 "    char *protop;\n"
8780 "    char **p;\n"
8781 msgstr ""
8782 "int\n"
8783 "main(int argc, char *argv[])\n"
8784 "{\n"
8785 "    int buflen, erange_cnt, port, s;\n"
8786 "    struct servent result_buf;\n"
8787 "    struct servent *result;\n"
8788 "    char buf[MAX_BUF];\n"
8789 "    char *protop;\n"
8790 "    char **p;\n"
8791
8792 #. type: Plain text
8793 #: build/C/man3/getservent_r.3:187
8794 #, no-wrap
8795 msgid ""
8796 "    if (argc E<lt> 3) {\n"
8797 "        printf(\"Usage: %s port-num proto-name [buflen]\\en\", argv[0]);\n"
8798 "        exit(EXIT_FAILURE);\n"
8799 "    }\n"
8800 msgstr ""
8801 "    if (argc E<lt> 3) {\n"
8802 "        printf(\"Usage: %s port-num proto-name [buflen]\\en\", argv[0]);\n"
8803 "        exit(EXIT_FAILURE);\n"
8804 "    }\n"
8805
8806 #. type: Plain text
8807 #: build/C/man3/getservent_r.3:191
8808 #, no-wrap
8809 msgid ""
8810 "    port = htons(atoi(argv[1]));\n"
8811 "    protop = (strcmp(argv[2], \"null\") == 0 ||\n"
8812 "              strcmp(argv[2], \"NULL\") == 0) ?  NULL : argv[2];\n"
8813 msgstr ""
8814 "    port = htons(atoi(argv[1]));\n"
8815 "    protop = (strcmp(argv[2], \"null\") == 0 ||\n"
8816 "              strcmp(argv[2], \"NULL\") == 0) ?  NULL : argv[2];\n"
8817
8818 #. type: Plain text
8819 #: build/C/man3/getservent_r.3:195
8820 #, no-wrap
8821 msgid ""
8822 "    buflen = 1024;\n"
8823 "    if (argc E<gt> 3)\n"
8824 "        buflen = atoi(argv[3]);\n"
8825 msgstr ""
8826 "    buflen = 1024;\n"
8827 "    if (argc E<gt> 3)\n"
8828 "        buflen = atoi(argv[3]);\n"
8829
8830 #. type: Plain text
8831 #: build/C/man3/getservent_r.3:209
8832 #, no-wrap
8833 msgid ""
8834 "    erange_cnt = 0;\n"
8835 "    do {\n"
8836 "        s = getservbyport_r(port, protop, &result_buf,\n"
8837 "                     buf, buflen, &result);\n"
8838 "        if (s == ERANGE) {\n"
8839 "            if (erange_cnt == 0)\n"
8840 "                printf(\"ERANGE! Retrying with larger buffer\\en\");\n"
8841 "            erange_cnt++;\n"
8842 msgstr ""
8843 "    erange_cnt = 0;\n"
8844 "    do {\n"
8845 "        s = getservbyport_r(port, protop, &result_buf,\n"
8846 "                     buf, buflen, &result);\n"
8847 "        if (s == ERANGE) {\n"
8848 "            if (erange_cnt == 0)\n"
8849 "                printf(\"ERANGE! Retrying with larger buffer\\en\");\n"
8850 "            erange_cnt++;\n"
8851
8852 #. type: Plain text
8853 #: build/C/man3/getservent_r.3:225
8854 #, no-wrap
8855 msgid ""
8856 "    printf(\"getservbyport_r() returned: %s  (buflen=%d)\\en\",\n"
8857 "            (s == 0) ? \"0 (success)\" : (s == ENOENT) ? \"ENOENT\" :\n"
8858 "            strerror(s), buflen);\n"
8859 msgstr ""
8860 "    printf(\"getservbyport_r() returned: %s  (buflen=%d)\\en\",\n"
8861 "            (s == 0) ? \"0 (success)\" : (s == ENOENT) ? \"ENOENT\" :\n"
8862 "            strerror(s), buflen);\n"
8863
8864 #. type: Plain text
8865 #: build/C/man3/getservent_r.3:237
8866 #, no-wrap
8867 msgid ""
8868 "    printf(\"s_name=%s; s_proto=%s; s_port=%d; aliases=\",\n"
8869 "                result_buf.s_name, result_buf.s_proto,\n"
8870 "                ntohs(result_buf.s_port));\n"
8871 "    for (p = result_buf.s_aliases; *p != NULL; p++)\n"
8872 "        printf(\"%s \", *p);\n"
8873 "    printf(\"\\en\");\n"
8874 msgstr ""
8875 "    printf(\"s_name=%s; s_proto=%s; s_port=%d; aliases=\",\n"
8876 "                result_buf.s_name, result_buf.s_proto,\n"
8877 "                ntohs(result_buf.s_port));\n"
8878 "    for (p = result_buf.s_aliases; *p != NULL; p++)\n"
8879 "        printf(\"%s \", *p);\n"
8880 "    printf(\"\\en\");\n"
8881
8882 #. type: Plain text
8883 #: build/C/man3/getservent_r.3:244
8884 msgid "B<getservent>(3), B<services>(5)"
8885 msgstr "B<getservent>(3), B<services>(5)"
8886
8887 #. type: TH
8888 #: build/C/man5/host.conf.5:26
8889 #, no-wrap
8890 msgid "HOST.CONF"
8891 msgstr "HOST.CONF"
8892
8893 #. type: TH
8894 #: build/C/man5/host.conf.5:26
8895 #, no-wrap
8896 msgid "2003-08-23"
8897 msgstr "2003-08-23"
8898
8899 #. type: TH
8900 #: build/C/man5/host.conf.5:26 build/C/man5/networks.5:26
8901 #, no-wrap
8902 msgid "Linux System Administration"
8903 msgstr "Linux System Administration"
8904
8905 #. type: Plain text
8906 #: build/C/man5/host.conf.5:29
8907 msgid "host.conf - resolver configuration file"
8908 msgstr "host.conf - レゾルバ設定ファイル"
8909
8910 #. type: Plain text
8911 #: build/C/man5/host.conf.5:38
8912 msgid ""
8913 "The file I</etc/host.conf> contains configuration information specific to "
8914 "the resolver library.  It should contain one configuration keyword per line, "
8915 "followed by appropriate configuration information.  The keywords recognized "
8916 "are I<order>, I<trim>, I<multi>, I<nospoof>, I<spoof>, and I<reorder>.  "
8917 "These keywords are described below."
8918 msgstr ""
8919 "ファイル I</etc/host.conf> には、レゾルバライブラリの詳細な設定情報が含まれて"
8920 "いる。 このファイルには、1 行毎に 1 つの設定キーワードと それに続く適切な設定"
8921 "情報がなければならない。 認識されるキーワードは I<order>, I<trim>, I<multi>, "
8922 "I<nospoof>, I<spoof>, I<reorder> である。 各キーワードを、以下で説明する。"
8923
8924 #. type: TP
8925 #: build/C/man5/host.conf.5:38
8926 #, no-wrap
8927 msgid "I<order>"
8928 msgstr "I<order>"
8929
8930 #. type: Plain text
8931 #: build/C/man5/host.conf.5:44
8932 msgid ""
8933 "This keyword specifies how host lookups are to be performed.  It should be "
8934 "followed by one or more lookup methods, separated by commas.  Valid methods "
8935 "are I<bind>, I<hosts>, and I<nis>."
8936 msgstr ""
8937 "このキーワードは、ホストのルックアップ方式を指定する。 このキーワードの後に"
8938 "は、コンマで分けた 1 つ以上のルックアップ方式が続かなくてはならない。 使用可"
8939 "能な方式は I<bind>, I<hosts>, I<nis> である。"
8940
8941 #. type: TP
8942 #: build/C/man5/host.conf.5:44
8943 #, no-wrap
8944 msgid "I<trim>"
8945 msgstr "I<trim>"
8946
8947 #. type: Plain text
8948 #: build/C/man5/host.conf.5:61
8949 msgid ""
8950 "This keyword may be listed more than once.  Each time it should be followed "
8951 "by a list of domains, separated by colons (\\(aq:\\(aq), semicolons (\\(aq;"
8952 "\\(aq) or commas (\\(aq,\\(aq), with the leading dot.  When set, the resolv+ "
8953 "library will automatically trim the given domain name from the end of any "
8954 "hostname resolved via DNS.  This is intended for use with local hosts and "
8955 "domains.  (Related note: trim will not affect hostnames gathered via NIS or "
8956 "the hosts file.  Care should be taken to ensure that the first hostname for "
8957 "each entry in the hosts file is fully qualified or unqualified, as "
8958 "appropriate for the local installation.)"
8959 msgstr ""
8960 "このキーワードは、2 回以上リストすることができる。 毎回、このキーワードの後に"
8961 "は、 ドットではじまる 1 つ以上のドメイン名のリストを続けなければならない。 ド"
8962 "メイン名はコロン (\\(aq:\\(aq)、セミコロン (\\(aq;\\(aq)、コンマ (\\(aq,"
8963 "\\(aq)  で区切る。 このキーワードが設定されると、resolv+ ライブラリは DNS で"
8964 "レゾルブされた すべてのホスト名の後ろから与えられたドメイン名を自動的に取り去"
8965 "る。 このキーワードはローカルなホストとドメインで使用することを意図してい"
8966 "る。 (関連した注意 : NIS または hosts ファイルで集められたホスト名に trim は"
8967 "影響しない。 hosts ファイルの各エントリーの最初のホスト名を、 完全なドメイン"
8968 "名付きのものにするかしないかは、 ホストごとのインストールポリシーにあわせて "
8969 "適切に選択する必要がある。注意すること。)"
8970
8971 #. type: TP
8972 #: build/C/man5/host.conf.5:61
8973 #, no-wrap
8974 msgid "I<multi>"
8975 msgstr "I<multi>"
8976
8977 #. type: Plain text
8978 #: build/C/man5/host.conf.5:76
8979 msgid ""
8980 "Valid values are I<on> and I<off>.  If set to I<on>, the resolv+ library "
8981 "will return all valid addresses for a host that appears in the I</etc/hosts> "
8982 "file, instead of only the first.  This is I<off> by default, as it may cause "
8983 "a substantial performance loss at sites with large hosts files."
8984 msgstr ""
8985 "有効な値は I<on> と I<off> である。 I<on> に設定された場合、最初のエントリー"
8986 "のみを例外として、 resolv+ ライブラリは I</etc/hosts> ファイルに現れるホスト"
8987 "に対して全ての有効なアドレスを返そうとする。 大きな hosts ファイルを持つサイ"
8988 "トでは、 この設定は非常な性能の低下を招くので、 デフォルトでは I<off> であ"
8989 "る。"
8990
8991 #. type: TP
8992 #: build/C/man5/host.conf.5:76
8993 #, no-wrap
8994 msgid "I<nospoof>"
8995 msgstr "I<nospoof>"
8996
8997 #. type: Plain text
8998 #: build/C/man5/host.conf.5:91
8999 msgid ""
9000 "Valid values are I<on> and I<off>.  If set to I<on>, the resolv+ library "
9001 "will attempt to prevent hostname spoofing to enhance the security of "
9002 "B<rlogin> and B<rsh>.  It works as follows: after performing a host address "
9003 "lookup, resolv+ will perform a hostname lookup for that address.  If the two "
9004 "hostnames do not match, the query will fail.  The default value is I<off>."
9005 msgstr ""
9006 "有効な値は I<on> と I<off> である。 I<on> に設定された場合、resolv+ ライブラ"
9007 "リは B<rlogin> と B<rsh> のセキュリティを向上させるためホスト名の偽装を防止し"
9008 "ようとする。 これは、「ホストアドレスのルックアップを行った後、 resolv+ はそ"
9009 "のアドレスに対してホスト名のルックアップを行い、 もし 2 つのホスト名が一致し"
9010 "なかった場合は、クエリーは失敗する。」 というように動作する。 デフォルトの値"
9011 "は I<off> である。"
9012
9013 #. type: TP
9014 #: build/C/man5/host.conf.5:91
9015 #, no-wrap
9016 msgid "I<spoofalert>"
9017 msgstr "I<spoofalert>"
9018
9019 #. type: Plain text
9020 #: build/C/man5/host.conf.5:103
9021 msgid ""
9022 "Valid values are I<on> and I<off>.  If this option is set to I<on> and the "
9023 "I<nospoof> option is also set, resolv+ will log a warning of the error via "
9024 "the syslog facility.  The default value is I<off>."
9025 msgstr ""
9026 "有効な値は I<on> と I<off> である。 このオプションが I<on> に設定されてい"
9027 "て、 I<nospoof> オプションも (on に) 設定されている場合、 resolv+ は syslog "
9028 "機能を通じてエラーに関する警告のログをとる。 デフォルトの値は I<off> である。"
9029
9030 #. type: TP
9031 #: build/C/man5/host.conf.5:103
9032 #, no-wrap
9033 msgid "I<spoof>"
9034 msgstr "I<spoof>"
9035
9036 #. type: Plain text
9037 #: build/C/man5/host.conf.5:122
9038 msgid ""
9039 "Valid values are I<off>, I<nowarn> and I<warn>.  If this option is set to "
9040 "I<off>, spoofed addresses are permitted and no warnings will be emitted via "
9041 "the syslog facility.  If this option is set to I<warn>, resolv+ will attempt "
9042 "to prevent hostname spoofing to enhance the security and log a warning of "
9043 "the error via the syslog facility.  If this option is set to I<nowarn>, the "
9044 "resolv+ library will attempt to prevent hostname spoofing to enhance the "
9045 "security but not emit warnings via the syslog facility.  Setting this option "
9046 "to anything else is equal to setting it to I<nowarn>."
9047 msgstr ""
9048 "有効な値は I<off>, I<nowarn>, I<warn> である。 このオプションを I<off> に設定"
9049 "すると、偽装されたアドレスを許可して、 syslog 機能を通じた警告を発しない。 こ"
9050 "のオプションを I<warn> に設定すると、resolv+ はセキュリティを高めるためにホス"
9051 "ト名の偽装を防止し、 syslog 機能を通じてエラーに関する警告のログをとる。 この"
9052 "オプションを I<nowarn> に設定すると、resolv+ はセキュリティを高めるためにホス"
9053 "ト名の偽装を防止するが、 syslog 機能を通じた警告は発しない。 このオプションを"
9054 "何も設定しない場合は、 I<nowarn> を設定したのと同じになる。"
9055
9056 #. type: TP
9057 #: build/C/man5/host.conf.5:122
9058 #, no-wrap
9059 msgid "I<reorder>"
9060 msgstr "I<reorder>"
9061
9062 #. type: Plain text
9063 #: build/C/man5/host.conf.5:135
9064 msgid ""
9065 "Valid values are I<on> and I<off>.  If set to I<on>, resolv+ will attempt to "
9066 "reorder host addresses so that local addresses (i.e., on the same subnet) "
9067 "are listed first when a B<gethostbyname>(3)  is performed.  Reordering is "
9068 "done for all lookup methods.  The default value is I<off>."
9069 msgstr ""
9070 "有効な値は I<on> と I<off> である。 I<on> に設定されると、 B<gethostbyname "
9071 "(3)> が実行されるとき、resolv+ ライブラリは、ローカルな (つまり、同じサブネッ"
9072 "トにある) アドレスが最初にリストされるように ホストアドレスを並べ変える。 す"
9073 "べてのルックアップ方式に対して並べ変えが行われる。 デフォルトの値は、 I<off> "
9074 "である。"
9075
9076 #. type: SH
9077 #: build/C/man5/host.conf.5:135
9078 #, no-wrap
9079 msgid "ENVIRONMENT"
9080 msgstr "環境変数"
9081
9082 #. type: Plain text
9083 #: build/C/man5/host.conf.5:139
9084 msgid ""
9085 "There are six environment variables that can be used to allow users to "
9086 "override the behavior which is configured in I</etc/host.conf>."
9087 msgstr ""
9088 "I</etc/host.conf> で設定されている動作を、ユーザーが上書きできる 6 つの環境変"
9089 "数がある。"
9090
9091 #. type: TP
9092 #: build/C/man5/host.conf.5:139
9093 #, no-wrap
9094 msgid "B<RESOLV_HOST_CONF>"
9095 msgstr "B<RESOLV_HOST_CONF>"
9096
9097 #. type: Plain text
9098 #: build/C/man5/host.conf.5:143
9099 msgid ""
9100 "If set, this variable points to a file that should be read instead of I</etc/"
9101 "host.conf>."
9102 msgstr ""
9103 "この変数を設定すると、 I</etc/host.conf> の代りに読み込むファイルを設定でき"
9104 "る。"
9105
9106 #. type: TP
9107 #: build/C/man5/host.conf.5:143
9108 #, no-wrap
9109 msgid "B<RESOLV_SERV_ORDER>"
9110 msgstr "B<RESOLV_SERV_ORDER>"
9111
9112 #. type: Plain text
9113 #: build/C/man5/host.conf.5:148
9114 msgid "Overrides the I<order> command."
9115 msgstr "I<order> コマンドを上書きする。"
9116
9117 #. type: TP
9118 #: build/C/man5/host.conf.5:148
9119 #, no-wrap
9120 msgid "B<RESOLV_SPOOF_CHECK>"
9121 msgstr "B<RESOLV_SPOOF_CHECK>"
9122
9123 #. type: Plain text
9124 #: build/C/man5/host.conf.5:157
9125 msgid ""
9126 "Overrides the I<nospoof>, I<spoofalert> and I<spoof> commands in the same "
9127 "way as the I<spoof> command is parsed.  Valid values are I<off>, I<nowarn> "
9128 "and I<warn>."
9129 msgstr ""
9130 "I<spoof> コマンドを解析するのと同じ方式で、 I<nospoof>, I<spoofalert>, "
9131 "I<spoof> コマンドを上書きできる。 有効な値は I<off>, I<nowarn>, I<warn> であ"
9132 "る。"
9133
9134 #. type: TP
9135 #: build/C/man5/host.conf.5:157
9136 #, no-wrap
9137 msgid "B<RESOLV_MULTI>"
9138 msgstr "B<RESOLV_MULTI>"
9139
9140 #. type: Plain text
9141 #: build/C/man5/host.conf.5:162
9142 msgid "Overrides the I<multi> command."
9143 msgstr "I<multi> コマンドを上書きする。"
9144
9145 #. type: TP
9146 #: build/C/man5/host.conf.5:162
9147 #, no-wrap
9148 msgid "B<RESOLV_REORDER>"
9149 msgstr "B<RESOLV_REORDER>"
9150
9151 #. type: Plain text
9152 #: build/C/man5/host.conf.5:167
9153 msgid "Overrides the I<reorder> command."
9154 msgstr "I<reorder> コマンドを上書きする。"
9155
9156 #. type: TP
9157 #: build/C/man5/host.conf.5:167
9158 #, no-wrap
9159 msgid "B<RESOLV_ADD_TRIM_DOMAINS>"
9160 msgstr "B<RESOLV_ADD_TRIM_DOMAINS>"
9161
9162 #. type: Plain text
9163 #: build/C/man5/host.conf.5:172
9164 msgid ""
9165 "A list of domains, separated by colons (\\(aq:\\(aq), semicolons (\\(aq;"
9166 "\\(aq) or commas (\\(aq,\\(aq), with the leading dot, which will be added to "
9167 "the list of domains that should be trimmed."
9168 msgstr ""
9169 "コロン (\\(aq:\\(aq)、セミコロン (\\(aq;\\(aq)、コンマ (\\(aq,\\(aq) で区切っ"
9170 "た ドット (\\(aq.\\(aq) で始まるドメイン名のリスト。 ホスト名から取り去るドメ"
9171 "イン名のリストに追加する。"
9172
9173 #. type: TP
9174 #: build/C/man5/host.conf.5:172
9175 #, no-wrap
9176 msgid "B<RESOLV_OVERRIDE_TRIM_DOMAINS>"
9177 msgstr "B<RESOLV_OVERRIDE_TRIM_DOMAINS>"
9178
9179 #. type: Plain text
9180 #: build/C/man5/host.conf.5:180
9181 msgid ""
9182 "A list of domains, separated by colons (\\(aq:\\(aq), semicolons (\\(aq;"
9183 "\\(aq) or commas (\\(aq,\\(aq), with the leading dot, which will replace the "
9184 "list of domains that should be trimmed.  Overrides the I<trim> command."
9185 msgstr ""
9186 "コロン (\\(aq:\\(aq)、セミコロン (\\(aq;\\(aq)、コンマ (\\(aq,\\(aq) で区切っ"
9187 "た ドット (\\(aq.\\(aq) で始まるドメイン名のリスト。 ホスト名から取り去るドメ"
9188 "イン名のリストを上書きする。 I<trim> コマンドを上書きする。"
9189
9190 #. type: Plain text
9191 #: build/C/man5/host.conf.5:184 build/C/man5/host.conf.5:187
9192 msgid "Resolver configuration file"
9193 msgstr "リゾルバ設定ファイル"
9194
9195 #. type: TP
9196 #: build/C/man5/host.conf.5:184
9197 #, no-wrap
9198 msgid "I</etc/resolv.conf>"
9199 msgstr "I</etc/resolv.conf>"
9200
9201 #. type: Plain text
9202 #: build/C/man5/host.conf.5:190
9203 msgid "Local hosts database"
9204 msgstr "ローカルの hosts データベース"
9205
9206 #. type: Plain text
9207 #: build/C/man5/host.conf.5:199
9208 msgid ""
9209 "The following differences exist compared to the original implementation.  A "
9210 "new command I<spoof> and a new environment variable B<RESOLV_SPOOF_CHECK> "
9211 "can take arguments like I<off>, I<nowarn> and I<warn>.  Line comments can "
9212 "appear anywhere and not only at the beginning of a line."
9213 msgstr ""
9214 "元々の実装に比べて以下のような違いがある。 新しいコマンド I<spoof> と新しい環"
9215 "境変数 B<RESOLV_SPOOF_CHECK> は、引き数 I<off>, I<nowarn>, I<warn> をとる。 "
9216 "コメントは行頭だけではなく、どこに書いてもよい。"
9217
9218 #. type: Plain text
9219 #: build/C/man5/host.conf.5:204
9220 msgid "B<gethostbyname>(3), B<hostname>(7), B<named>(8), B<resolv+>(8)"
9221 msgstr "B<gethostbyname>(3), B<hostname>(7), B<named>(8), B<resolv+>(8)"
9222
9223 #. type: TH
9224 #: build/C/man7/hostname.7:39
9225 #, no-wrap
9226 msgid "HOSTNAME"
9227 msgstr "HOSTNAME"
9228
9229 #. type: TH
9230 #: build/C/man7/hostname.7:39
9231 #, no-wrap
9232 msgid "2010-11-07"
9233 msgstr "2010-11-07"
9234
9235 #. type: Plain text
9236 #: build/C/man7/hostname.7:42
9237 msgid "hostname - hostname resolution description"
9238 msgstr "hostname - ホスト名の名前解決の説明"
9239
9240 #. type: Plain text
9241 #: build/C/man7/hostname.7:46
9242 msgid ""
9243 "Hostnames are domains, where a domain is a hierarchical, dot-separated list "
9244 "of subdomains; for example, the machine monet, in the Berkeley subdomain of "
9245 "the EDU domain would be represented as \"monet.Berkeley.EDU\"."
9246 msgstr ""
9247 "ホスト名は、階層構造でドット区切りのサブドメインである。\n"
9248 "例えば、 EDU ドメインの Berkeley サブドメインのマシン monet は、\n"
9249 "\"monet.Berkeley.EDU\" と表現される。"
9250
9251 #. type: Plain text
9252 #: build/C/man7/hostname.7:55
9253 msgid ""
9254 "Hostnames are often used with network client and server programs, which must "
9255 "generally translate the name to an address for use.  (This task is generally "
9256 "performed by either B<getaddrinfo>(3)  or the obsolete "
9257 "B<gethostbyname>(3).)  Hostnames are resolved by the Internet name resolver "
9258 "in the following fashion."
9259 msgstr ""
9260 "ホスト名は、ネットワーククライアントやサーバのプログラムでは一般的に\n"
9261 "使用され、使用する際には名前からアドレスに変換しなければならない (一般\n"
9262 "的にはアドレスへの変換処理は B<getaddrinfo>(3) か (廃止予定の)\n"
9263 "B<gethostbyname>(3) で行われる)。ホスト名の解決は、\n"
9264 "インターネットネームリゾルバによって以下の方法で実行される。"
9265
9266 #. type: Plain text
9267 #: build/C/man7/hostname.7:68
9268 msgid ""
9269 "If the name consists of a single component, that is, contains no dot, and if "
9270 "the environment variable B<HOSTALIASES> is set to the name of a file, that "
9271 "file is searched for any string matching the input hostname.  The file "
9272 "should consist of lines made up of two white-space separated strings, the "
9273 "first of which is the hostname alias, and the second of which is the "
9274 "complete hostname to be substituted for that alias.  If a case-insensitive "
9275 "match is found between the hostname to be resolved and the first field of a "
9276 "line in the file, the substituted name is looked up with no further "
9277 "processing."
9278 msgstr ""
9279 "ホスト名がドットを含まない単一要素で構成されていて、環境変数\n"
9280 "B<HOSTALIASES> にファイル名が設定されている場合、入力されたホスト名に\n"
9281 "マッチする文字列を検索するのに指定されたファイルが使用される。\n"
9282 "そのファイルの各行は、ホワイトスペースで区切られた文字列 2 つで\n"
9283 "構成され、各行の最初の文字列がホスト名のエイリアス (別名) で、\n"
9284 "二番目の文字列がそのエイリアスに対応する完全なホスト名である。\n"
9285 "解決するホスト名と一致するホスト名のエイリアス (ファイルの各行の最初の\n"
9286 "フィールド) が見つかれば、完全なホスト名に置き換えられ、\n"
9287 "それ以上の変換処理は行わずに、そのホスト名で検索処理が行われる\n"
9288 "(ホスト名とエイリアスの照合では大文字、小文字の違いは無視される)。"
9289
9290 #. type: Plain text
9291 #: build/C/man7/hostname.7:72
9292 msgid ""
9293 "If the input name ends with a trailing dot, the trailing dot is removed, and "
9294 "the remaining name is looked up with no further processing."
9295 msgstr ""
9296 "入力されたホスト名の末尾がドットの場合、\n"
9297 "末尾のドットは削除され、それ以上の処理は行われず、\n"
9298 "(末尾のドットを削除した) 残りの名前で検索が行われる。"
9299
9300 #. type: Plain text
9301 #: build/C/man7/hostname.7:85
9302 msgid ""
9303 "If the input name does not end with a trailing dot, it is looked up by "
9304 "searching through a list of domains until a match is found.  The default "
9305 "search list includes first the local domain, then its parent domains with at "
9306 "least 2 name components (longest first).  For example, in the domain CS."
9307 "Berkeley.EDU, the name lithium.CChem will be checked first as lithium.CChem."
9308 "CS.Berkeley.EDU and then as lithium.CChem.Berkeley.EDU.  Lithium.CChem.EDU "
9309 "will not be tried, as there is only one component remaining from the local "
9310 "domain.  The search path can be changed from the default by a system-wide "
9311 "configuration file (see B<resolver>(5))."
9312 msgstr ""
9313 "入力された名前の末尾がドットでない場合、\n"
9314 "マッチするものが見つかるまでドメインのリストの検索が行われる。\n"
9315 "デフォルトのドメインの検索リストは、先頭ローカルのドメインで、\n"
9316 "親ドメインが (長いものから順に) 続く (親ドメインはドット区切りで\n"
9317 "少なくとも 2 要素あるものだけが使用される)。\n"
9318 "例えば、 CS.Berkeley.EDU ドメインで、\n"
9319 "lithium.CChem というホスト名の場合には、\n"
9320 "最初に lithium.CChem.CS.Berkeley.EDU が確認され、\n"
9321 "次に lithium.CChem.Berkeley.EDU が確認される。\n"
9322 "Lithium.CChem.EDU はチェックされない。\n"
9323 "なぜなら、ローカルドメイン CS.Berkeley.EDU で残っているドメインは\n"
9324 "EDU で、これは一つしか要素がないからである。\n"
9325 "検索リストはシステム全体で共通の設定ファイルでデフォルト値から\n"
9326 "変更できる (B<resolver>(5) 参照)。"
9327
9328 #.  .SH HISTORY
9329 #.  Hostname appeared in
9330 #.  4.2BSD.
9331 #. type: Plain text
9332 #: build/C/man7/hostname.7:93
9333 msgid "B<gethostbyname>(3), B<resolver>(5), B<mailaddr>(7), B<named>(8)"
9334 msgstr "B<gethostbyname>(3), B<resolver>(5), B<mailaddr>(7), B<named>(8)"
9335
9336 #. type: TH
9337 #: build/C/man5/hosts.5:27
9338 #, no-wrap
9339 msgid "HOSTS"
9340 msgstr "HOSTS"
9341
9342 #. type: TH
9343 #: build/C/man5/hosts.5:27
9344 #, no-wrap
9345 msgid "2002-06-16"
9346 msgstr "2002-06-16"
9347
9348 #. type: Plain text
9349 #: build/C/man5/hosts.5:30
9350 msgid "hosts - static table lookup for hostnames"
9351 msgstr "hosts - ホスト名の静的なルックアップテーブル"
9352
9353 #. type: Plain text
9354 #: build/C/man5/hosts.5:32
9355 msgid "B</etc/hosts>"
9356 msgstr "B</etc/hosts>"
9357
9358 #. type: Plain text
9359 #: build/C/man5/hosts.5:40
9360 msgid ""
9361 "This manual page describes the format of the I</etc/hosts> file.  This file "
9362 "is a simple text file that associates IP addresses with hostnames, one line "
9363 "per IP address.  For each host a single line should be present with the "
9364 "following information:"
9365 msgstr ""
9366 "このマニュアルページは、 I</etc/hosts> ファイルのフォーマットについて記述して"
9367 "いる。 このファイルは簡単なテキストファイルで、1 行に 1 つの IP アドレスがあ"
9368 "り、 IP アドレスとホスト名を関連づけている。 各ホストについて、次のような情報"
9369 "が 1 行で与えられる。"
9370
9371 #. type: Plain text
9372 #: build/C/man5/hosts.5:43
9373 msgid "IP_address canonical_hostname [aliases...]"
9374 msgstr "IPアドレス 正式なホスト名 [エイリアス...]"
9375
9376 #. type: Plain text
9377 #: build/C/man5/hosts.5:56
9378 msgid ""
9379 "Fields of the entry are separated by any number of blanks and/or tab "
9380 "characters.  Text from a \"#\" character until the end of the line is a "
9381 "comment, and is ignored.  Host names may contain only alphanumeric "
9382 "characters, minus signs (\"-\"), and periods (\".\").  They must begin with "
9383 "an alphabetic character and end with an alphanumeric character.  Optional "
9384 "aliases provide for name changes, alternate spellings, shorter hostnames, or "
9385 "generic hostnames (for example, I<localhost>)."
9386 msgstr ""
9387 "エントリーのフィールドは、空白またはタブ (複数でも可) で区切られる。 \"#\" 文"
9388 "字から行末までのテキストはコメントとして無視される。 ホスト名は英数字、 マイ"
9389 "ナス記号 (\"-\")、 ピリオド (\".\") を含むことができる。 ホスト名は英文字 "
9390 "(alphabetic character) で始まって、 英数字 (alphanumeric characte) で終わらな"
9391 "ければならない。 エイリアスはオプションであり、名前の変更、別のスペル、 短い"
9392 "ホスト名、一般的に使われるホスト名 (例えば I<localhost>)  などのために用意さ"
9393 "れている。"
9394
9395 #. type: Plain text
9396 #: build/C/man5/hosts.5:64
9397 msgid ""
9398 "The Berkeley Internet Name Domain (BIND) Server implements the Internet name "
9399 "server for UNIX systems.  It augments or replaces the I</etc/hosts> file or "
9400 "hostname lookup, and frees a host from relying on I</etc/hosts> being up to "
9401 "date and complete."
9402 msgstr ""
9403 "Berkeley Internet Name Domain (BIND) サーバは、 UNIX システムのためのインター"
9404 "ネットネームサーバを実装している。 これは、 I</etc/hosts> ファイルやホスト名"
9405 "ルックアップを拡張したり置き換えたりするものである。 これにより各ホストは I</"
9406 "etc/hosts> を最新かつ完全に保たなくてもよくなる。"
9407
9408 #. type: Plain text
9409 #: build/C/man5/hosts.5:67
9410 msgid ""
9411 "In modern systems, even though the host table has been superseded by DNS, it "
9412 "is still widely used for:"
9413 msgstr ""
9414 "ホストテーブルは、DNS にとって代わられたにもかかわらず、 現在のシステムにおい"
9415 "て次のような用途で広く使われている。"
9416
9417 #. type: TP
9418 #: build/C/man5/hosts.5:67
9419 #, no-wrap
9420 msgid "B<bootstrapping>"
9421 msgstr "B<ブート時>"
9422
9423 #. type: Plain text
9424 #: build/C/man5/hosts.5:73
9425 msgid ""
9426 "Most systems have a small host table containing the name and address "
9427 "information for important hosts on the local network.  This is useful when "
9428 "DNS is not running, for example during system bootup."
9429 msgstr ""
9430 "大部分のシステムは、ローカルネットワークにおいて重要なホストの 名前とアドレス"
9431 "が含まれた小さなホストテーブルを持っている。 これは、システムのブート時など"
9432 "の DNS が稼働していないときに役立つ。"
9433
9434 #. type: TP
9435 #: build/C/man5/hosts.5:73
9436 #, no-wrap
9437 msgid "B<NIS>"
9438 msgstr "B<NIS>"
9439
9440 #. type: Plain text
9441 #: build/C/man5/hosts.5:79
9442 msgid ""
9443 "Sites that use NIS use the host table as input to the NIS host database.  "
9444 "Even though NIS can be used with DNS, most NIS sites still use the host "
9445 "table with an entry for all local hosts as a backup."
9446 msgstr ""
9447 "NIS を使用しているサイトは、ホストテーブルを NIS ホストデータベースの入力とし"
9448 "て用いる。 NIS を DNS と共に使用できるにもかかわらず、 大部分の NIS サイトは"
9449 "未だに、 全てのローカルホストのエントリーをもつホストテーブルを バックアップ"
9450 "として使用している。"
9451
9452 #. type: TP
9453 #: build/C/man5/hosts.5:79
9454 #, no-wrap
9455 msgid "B<isolated nodes>"
9456 msgstr "B<隔絶されたノード>"
9457
9458 #. type: Plain text
9459 #: build/C/man5/hosts.5:86
9460 msgid ""
9461 "Very small sites that are isolated from the network use the host table "
9462 "instead of DNS.  If the local information rarely changes, and the network is "
9463 "not connected to the Internet, DNS offers little advantage."
9464 msgstr ""
9465 "ネットワークから隔絶された非常に小さなサイトは、 DNS の代わりにホストテーブル"
9466 "を使用している。 ローカル情報が稀にしか変更されず、 ネットワークがインター"
9467 "ネットと接続されていない場合、 DNS にそれほどの利点はない。"
9468
9469 #. type: Plain text
9470 #: build/C/man5/hosts.5:91
9471 msgid ""
9472 "Modifications to this file normally take effect immediately, except in cases "
9473 "where the file is cached by applications."
9474 msgstr ""
9475 "このファイルへの変更は通常すぐに反映される。但し、アプリケーション によりファ"
9476 "イルの内容がキャッシュされている場合はこの限りではない。"
9477
9478 #. type: SS
9479 #: build/C/man5/hosts.5:91
9480 #, no-wrap
9481 msgid "Historical notes"
9482 msgstr "歴史的な経緯"
9483
9484 #. type: Plain text
9485 #: build/C/man5/hosts.5:94
9486 msgid ""
9487 "RFC\\ 952 gave the original format for the host table, though it has since "
9488 "changed."
9489 msgstr ""
9490 "ホストテーブルのフォーマットはその後変更されているが、 元々のフォーマットは "
9491 "RFC\\ 952 には記載されている。"
9492
9493 #. type: Plain text
9494 #: build/C/man5/hosts.5:107
9495 msgid ""
9496 "Before the advent of DNS, the host table was the only way of resolving "
9497 "hostnames on the fledgling Internet.  Indeed, this file could be created "
9498 "from the official host data base maintained at the Network Information "
9499 "Control Center (NIC), though local changes were often required to bring it "
9500 "up to date regarding unofficial aliases and/or unknown hosts.  The NIC no "
9501 "longer maintains the hosts.txt files, though looking around at the time of "
9502 "writing (circa 2000), there are historical hosts.txt files on the WWW.  I "
9503 "just found three, from 92, 94, and 95."
9504 msgstr ""
9505 "DNS の登場以前、ホストテーブルは、駆け出したばかりのインターネットにおける ホ"
9506 "スト名解決の唯一の方法であった。 実際、このファイルは Network Information "
9507 "Control Center (NIC) によって 管理される公式ホストデータベースから作成するこ"
9508 "とができた。 しかし、非公式なエイリアスや不明なホストを扱えるように、 最新に"
9509 "保つためのローカルな変更が頻繁に必要とされた。 NIC は既に hosts.txt を管理し"
9510 "ていないが、 これを書いている (2000 年頃の) 時点で調べてみると、 WWW 上に歴史"
9511 "的な hosts.txt が存在する。 92, 94, 95 年のものが見つかった。"
9512
9513 #. type: Plain text
9514 #: build/C/man5/hosts.5:114
9515 #, no-wrap
9516 msgid ""
9517 "127.0.0.1       localhost\n"
9518 "192.168.1.10    foo.mydomain.org       foo\n"
9519 "192.168.1.13    bar.mydomain.org       bar\n"
9520 "146.82.138.7    master.debian.org      master\n"
9521 "209.237.226.90  www.opensource.org\n"
9522 msgstr ""
9523 "127.0.0.1       localhost\n"
9524 "192.168.1.10    foo.mydomain.org       foo\n"
9525 "192.168.1.13    bar.mydomain.org       bar\n"
9526 "146.82.138.7    master.debian.org      master\n"
9527 "209.237.226.90  www.opensource.org\n"
9528
9529 #. type: Plain text
9530 #: build/C/man5/hosts.5:121
9531 msgid ""
9532 "B<hostname>(1), B<resolver>(3), B<resolver>(5), B<hostname>(7), B<named>(8)"
9533 msgstr ""
9534 "B<hostname>(1), B<resolver>(3), B<resolver>(5), B<hostname>(7), B<named>(8)"
9535
9536 #.  .SH AUTHOR
9537 #.  This manual page was written by Manoj Srivastava <srivasta@debian.org>,
9538 #.  for the Debian GNU/Linux system.
9539 #. type: Plain text
9540 #: build/C/man5/hosts.5:126
9541 msgid "Internet RFC\\ 952"
9542 msgstr "Internet RFC\\ 952"
9543
9544 #. type: TH
9545 #: build/C/man5/hosts.equiv.5:6
9546 #, no-wrap
9547 msgid "HOSTS.EQUIV"
9548 msgstr "HOSTS.EQUIV"
9549
9550 #. type: TH
9551 #: build/C/man5/hosts.equiv.5:6
9552 #, no-wrap
9553 msgid "2003-08-24"
9554 msgstr "2003-08-24"
9555
9556 #. type: Plain text
9557 #: build/C/man5/hosts.equiv.5:11
9558 msgid ""
9559 "/etc/hosts.equiv - list of hosts and users that are granted \"trusted\" B<r> "
9560 "command access to your system"
9561 msgstr ""
9562 "/etc/hosts.equiv - 「信頼された」B<r> コマンドによるシステムへの アクセスを許"
9563 "可するホストおよびユーザーのリスト"
9564
9565 #. type: Plain text
9566 #: build/C/man5/hosts.equiv.5:22
9567 msgid ""
9568 "The B<hosts.equiv> file allows or denies hosts and users to use the B<r>-"
9569 "commands (e.g., B<rlogin>, B<rsh>, or B<rcp>)  without supplying a password."
9570 msgstr ""
9571 "B<hosts.equiv> ファイルは B<r>-コマンド (B<rlogin>, B<rsh>, B<rcp> など) によ"
9572 "るパスワードなしでの利用を 許可/拒否するホスト/ユーザーを設定する。"
9573
9574 #. type: Plain text
9575 #: build/C/man5/hosts.equiv.5:24
9576 msgid "The file uses the following format:"
9577 msgstr "このファイルでは以下の書式を用いる。"
9578
9579 #. type: TP
9580 #: build/C/man5/hosts.equiv.5:24
9581 #, no-wrap
9582 msgid "I<[ + | - ]> I<[hostname]> I<[username]>"
9583 msgstr "I<[ + | - ]> I<[hostname]> I<[username]>"
9584
9585 #. type: Plain text
9586 #: build/C/man5/hosts.equiv.5:43
9587 msgid ""
9588 "The I<hostname> is the name of a host which is logically equivalent to the "
9589 "local host.  Users logged into that host are allowed to access like-named "
9590 "user accounts on the local host without supplying a password.  The "
9591 "I<hostname> may be (optionally) preceded by a plus (+) sign.  If the plus "
9592 "sign is used alone, it allows any host to access your system.  You can "
9593 "explicitly deny access to a host by preceding the I<hostname> by a minus (-) "
9594 "sign.  Users from that host must always supply a password.  For security "
9595 "reasons you should always use the FQDN of the hostname and not the short "
9596 "hostname."
9597 msgstr ""
9598 "I<hostname> は、ローカルホストと論理的に等価なホストの名前である。 そのホスト"
9599 "にログインしているユーザーは、パスワードなしで ローカルホストの同じ名前のユー"
9600 "ザーアカウントにアカウントできる。 I<hostname> の前にはプラス記号 (+) を置い"
9601 "てもよい。プラス記号が単独で置かれた場合は、 このシステムへのアクセスをあらゆ"
9602 "るホストに対して許可したことになる。 アクセスを明示的に拒否するには、 "
9603 "I<hostname> の前にマイナス記号 (-) を付ける。そのホストからのユーザーは 常に"
9604 "パスワードを要求される。セキュリティ上、ホスト名は 短い名前ではなく常に FQDN "
9605 "を使って指定すべきである。"
9606
9607 #. type: Plain text
9608 #: build/C/man5/hosts.equiv.5:61
9609 msgid ""
9610 "The I<username> entry grants a specific user access to all user accounts "
9611 "(except root) without supplying a password.  That means the user is NOT "
9612 "restricted to like-named accounts.  The I<username> may be (optionally) "
9613 "preceded by a plus (+) sign.  You can also explicitly deny access to a "
9614 "specific user by preceding the I<username> with a minus (-) sign.  This says "
9615 "that the user is not trusted no matter what other entries for that host "
9616 "exist."
9617 msgstr ""
9618 "I<username> エントリーは、特定のユーザーに対して、 (root 以外の) あらゆるユー"
9619 "ザーアカウント へのアクセスをパスワードなしで許可する。すなわち、そのユーザー"
9620 "は同じ名前の アカウント以外にもアクセスできる。 I<username> の前にはプラス記"
9621 "号 (+) を置いてもよい。 特定のユーザーからのアクセスを明示的に拒否するには、 "
9622 "I<username> の前にマイナス記号 (-) を付ける。こうすると、 ホストのエントリー"
9623 "がなんと言おうとも、そのユーザーは信頼されないことになる。"
9624
9625 #. type: Plain text
9626 #: build/C/man5/hosts.equiv.5:63
9627 msgid "Netgroups can be specified by preceding the netgroup by an @ sign."
9628 msgstr "netgroup を指定することもでき、その場合は @ 記号を前につける。"
9629
9630 #. type: Plain text
9631 #: build/C/man5/hosts.equiv.5:69
9632 msgid ""
9633 "Be extremely careful when using the plus (+) sign.  A simple typographical "
9634 "error could result in a standalone plus sign.  A standalone plus sign is a "
9635 "wildcard character that means \"any host\"!"
9636 msgstr ""
9637 "プラス記号 (+) を利用する際にはくれぐれも注意すること。 単純なミスタイプで、"
9638 "単独のプラス記号を置いてしまうことがある。 単独のプラス記号は「すべてのホス"
9639 "ト」を表すワイルドカードになってしまう!"
9640
9641 #. type: Plain text
9642 #: build/C/man5/hosts.equiv.5:71
9643 msgid "I</etc/hosts.equiv>"
9644 msgstr "I</etc/hosts.equiv>"
9645
9646 #. type: Plain text
9647 #: build/C/man5/hosts.equiv.5:76
9648 msgid ""
9649 "Some systems will honor the contents of this file only when it has owner "
9650 "root and no write permission for anybody else.  Some exceptionally paranoid "
9651 "systems even require that there be no other hard links to the file."
9652 msgstr ""
9653 "システムによっては、このファイルの内容が効力を持つのは、 このファイルの所有者"
9654 "が root で、 かつそれ以外に書き込み権限がない場合に限定されていることもあ"
9655 "る。 また、非常に制限がきついシステムでは、このファイルに対する他の ハードリ"
9656 "ンクがないことが要求される場合もある。"
9657
9658 #. type: Plain text
9659 #: build/C/man5/hosts.equiv.5:84
9660 msgid ""
9661 "Modern systems use the Pluggable Authentication Modules library (PAM).  With "
9662 "PAM a standalone plus sign is considered a wildcard character which means "
9663 "\"any host\" only when the word I<promiscuous> is added to the auth "
9664 "component line in your PAM file for the particular service (e.g., B<rlogin>)."
9665 msgstr ""
9666 "最近のシステムでは Pluggable Authentication Modules library (PAM) が 使われて"
9667 "いる。PAM では、単独のプラス記号が「すべてのホスト」を表す ワイルドカードとし"
9668 "て扱われるのは、特定のサービス (例えば B<rlogin>)  用の PAM ファイルで auth "
9669 "行にキーワード I<promiscuous> が追加されている場合のみである。"
9670
9671 #. type: Plain text
9672 #: build/C/man5/hosts.equiv.5:88
9673 msgid "B<rhosts>(5), B<rlogind>(8), B<rshd>(8)"
9674 msgstr "B<rhosts>(5), B<rlogind>(8), B<rshd>(8)"
9675
9676 #. type: TH
9677 #: build/C/man7/icmp.7:12
9678 #, no-wrap
9679 msgid "ICMP"
9680 msgstr "ICMP"
9681
9682 #. type: TH
9683 #: build/C/man7/icmp.7:12 build/C/man8/nscd.8:23 build/C/man7/raw.7:13
9684 #, no-wrap
9685 msgid "2012-05-10"
9686 msgstr "2012-05-10"
9687
9688 #. type: Plain text
9689 #: build/C/man7/icmp.7:15
9690 msgid "icmp - Linux IPv4 ICMP kernel module."
9691 msgstr "icmp - Linux IPv4 ICMP カーネルモジュール"
9692
9693 #. type: Plain text
9694 #: build/C/man7/icmp.7:23
9695 msgid ""
9696 "This kernel protocol module implements the Internet Control Message Protocol "
9697 "defined in RFC\\ 792.  It is used to signal error conditions and for "
9698 "diagnosis.  The user doesn't interact directly with this module; instead it "
9699 "communicates with the other protocols in the kernel and these pass the ICMP "
9700 "errors to the application layers.  The kernel ICMP module also answers ICMP "
9701 "requests."
9702 msgstr ""
9703 "このカーネルモジュールは RFC\\ 792 で定義されている Internet Control Message "
9704 "Protocol を実装したものである。 このプロトコルはエラー状況を知らせたり診断を"
9705 "行うために用いられる。 ユーザーはこのモジュールとは直接には通信できない。 こ"
9706 "のモジュールはカーネルの他のプロトコルと通信し、 それらのプロトコルが ICMP エ"
9707 "ラーをアプリケーションレイヤに渡す。 カーネルの ICMP モジュールは ICMP リクエ"
9708 "ストに対する応答も行う。"
9709
9710 #. type: Plain text
9711 #: build/C/man7/icmp.7:35
9712 msgid ""
9713 "A user protocol may receive ICMP packets for all local sockets by opening a "
9714 "raw socket with the protocol B<IPPROTO_ICMP>.  See B<raw>(7)  for more "
9715 "information.  The types of ICMP packets passed to the socket can be filtered "
9716 "using the B<ICMP_FILTER> socket option.  ICMP packets are always processed "
9717 "by the kernel too, even when passed to a user socket."
9718 msgstr ""
9719 "raw ソケットをプロトコル B<IPPROTO_ICMP> でオープンすれば、 ユーザープロトコ"
9720 "ルはローカルなソケット全てに対する ICMP パケットを受信することができる。 詳細"
9721 "は B<raw>(7)  を参照のこと。 ソケットに渡される ICMP パケットのタイプは "
9722 "B<ICMP_FILTER> オプションによってフィルターできる。 ICMP パケットは (たとえ"
9723 "ユーザーソケットに渡される場合でも)、 常にカーネルによって (も) 処理される。"
9724
9725 #. type: Plain text
9726 #: build/C/man7/icmp.7:41
9727 msgid ""
9728 "Linux limits the rate of ICMP error packets to each destination.  "
9729 "B<ICMP_REDIRECT> and B<ICMP_DEST_UNREACH> are also limited by the "
9730 "destination route of the incoming packets."
9731 msgstr ""
9732 "Linux では ICMP エラーパケットのレートをそれぞれの送り先に対して 制限してい"
9733 "る。 B<ICMP_REDIRECT> と B<ICMP_DEST_UNREACH> も到着したパケットの行き先経路 "
9734 "(destination route) を制限する。"
9735
9736 #.  FIXME . better description needed
9737 #. type: Plain text
9738 #: build/C/man7/icmp.7:54
9739 msgid ""
9740 "ICMP supports a set of I</proc> interfaces to configure some global IP "
9741 "parameters.  The parameters can be accessed by reading or writing files in "
9742 "the directory I</proc/sys/net/ipv4/>.  Most of these parameters are rate "
9743 "limitations for specific ICMP types.  Linux 2.2 uses a token bucket filter "
9744 "to limit ICMPs.  The value is the timeout in jiffies until the token bucket "
9745 "filter is cleared after a burst.  A jiffy is a system dependent unit, "
9746 "usually 10ms on i386 and about 1ms on alpha and ia64."
9747 msgstr ""
9748 "ICMP では、いくつかのグローバルパラメーターを設定するための I</proc> ファイル"
9749 "群が用意されている。 これらのパラメーターには、 I</proc/sys/net/ipv4/> ディレ"
9750 "クトリ内のファイルの読み書きでアクセスできる。 これらのパラメーターのほとんど"
9751 "は特定の ICMP タイプに対するレート制限 (rate limitation) である。 Linux 2.2 "
9752 "は ICMP の制限にトークンバケットフィルタ (token bucket filter) を用いる。 そ"
9753 "れぞれの値は、バーストの後にトークンバケットフィルタがクリア されるまでのタイ"
9754 "ムアウトを秒単位で表したものである。最小単位(jiffy)は システム依存の単位で "
9755 "i386 システムは通常 10ms、alpha や ia64 では 1ms である。"
9756
9757 #. type: TP
9758 #: build/C/man7/icmp.7:54
9759 #, no-wrap
9760 msgid "I<icmp_destunreach_rate> (Linux 2.2 to 2.4.9)"
9761 msgstr "I<icmp_destunreach_rate> (Linux 2.2 から 2.4.9 まで)"
9762
9763 #.  Precisely: from 2.1.102
9764 #. type: Plain text
9765 #: build/C/man7/icmp.7:63
9766 msgid ""
9767 "Maximum rate to send ICMP Destination Unreachable packets.  This limits the "
9768 "rate at which packets are sent to any individual route or destination.  The "
9769 "limit does not affect sending of B<ICMP_FRAG_NEEDED> packets needed for path "
9770 "MTU discovery."
9771 msgstr ""
9772 "ICMP 不達パケット (Destination Unreachable packet) を送る最大レート。 これは"
9773 "特定のルートまたは行き先にパケットを送信するレートを制限する。 この制限は、 "
9774 "path MTU discovery に必要な B<ICMP_FRAG_NEEDED> パケットの送信には影響しな"
9775 "い。"
9776
9777 #. type: TP
9778 #: build/C/man7/icmp.7:63
9779 #, no-wrap
9780 msgid "I<icmp_echo_ignore_all> (since Linux 2.2)"
9781 msgstr "I<icmp_echo_ignore_all> (Linux 2.2 以降)"
9782
9783 #.  Precisely: 2.1.68
9784 #. type: Plain text
9785 #: build/C/man7/icmp.7:69
9786 msgid "If this value is nonzero, Linux will ignore all B<ICMP_ECHO> requests."
9787 msgstr ""
9788 "この値が非ゼロの場合は、 Linux はすべての B<ICMP_ECHO> 要求を無視する。"
9789
9790 #. type: TP
9791 #: build/C/man7/icmp.7:69
9792 #, no-wrap
9793 msgid "I<icmp_echo_ignore_broadcasts> (since Linux 2.2)"
9794 msgstr "I<icmp_echo_ignore_broadcasts> (Linux 2.2 以降)"
9795
9796 #.  Precisely: from 2.1.68
9797 #. type: Plain text
9798 #: build/C/man7/icmp.7:75
9799 msgid ""
9800 "If this value is nonzero, Linux will ignore all B<ICMP_ECHO> packets sent to "
9801 "broadcast addresses."
9802 msgstr ""
9803 "この値が非ゼロの場合は、 Linux はブロードキャストアドレスに送られたすべての "
9804 "B<ICMP_ECHO> 要求を無視する。"
9805
9806 #. type: TP
9807 #: build/C/man7/icmp.7:75
9808 #, no-wrap
9809 msgid "I<icmp_echoreply_rate> (Linux 2.2 to 2.4.9)"
9810 msgstr "I<icmp_echoreply_rate> (Linux 2.2 から 2.4.9 まで)"
9811
9812 #.  Precisely: from 2.1.102
9813 #. type: Plain text
9814 #: build/C/man7/icmp.7:83
9815 msgid ""
9816 "Maximum rate for sending B<ICMP_ECHOREPLY> packets in response to "
9817 "B<ICMP_ECHOREQUEST> packets."
9818 msgstr ""
9819 "B<ICMP_ECHOREQUEST> パケットに応答する B<ICMP_ECHOREPLY> パケットの最大送信"
9820 "レート。"
9821
9822 #. type: TP
9823 #: build/C/man7/icmp.7:83
9824 #, no-wrap
9825 msgid "I<icmp_errors_use_inbound_ifaddr> (Boolean; default: disabled; since Linux 2.6.12)"
9826 msgstr "I<icmp_errors_use_inbound_ifaddr> (ブール値; デフォルト: 無効; Linux 2.6.12 以降)"
9827
9828 #.  The following taken from 2.6.28-rc4 Documentation/networking/ip-sysctl.txt
9829 #. type: Plain text
9830 #: build/C/man7/icmp.7:88
9831 msgid ""
9832 "If disabled, ICMP error messages are sent with the primary address of the "
9833 "exiting interface."
9834 msgstr ""
9835 "これを無効にすると、ICMP エラーメッセージは、 出力インターフェースのプライマ"
9836 "リアドレスで送信される。"
9837
9838 #. type: Plain text
9839 #: build/C/man7/icmp.7:94
9840 msgid ""
9841 "If enabled, the message will be sent with the primary address of the "
9842 "interface that received the packet that caused the ICMP error.  This is the "
9843 "behavior that many network administrators will expect from a router.  And it "
9844 "can make debugging complicated network layouts much easier."
9845 msgstr ""
9846 "これを有効にすると、エラーメッセージは ICMP エラーの原因となったパケットを 受"
9847 "信したインターフェースのプライマリアドレスで送信される。 この動作は、多くの"
9848 "ネットワーク管理者がルーターに対して期待しているものであり、 これにより複雑な"
9849 "ネットワークレイアウトのデバッグがより容易になる。"
9850
9851 #. type: Plain text
9852 #: build/C/man7/icmp.7:98
9853 msgid ""
9854 "Note that if no primary address exists for the interface selected, then the "
9855 "primary address of the first non-loopback interface that has one will be "
9856 "used regardless of this setting."
9857 msgstr ""
9858 "選択されたインターフェースでプライマリアドレスが存在しない場合は、 この設定に"
9859 "関わらず、最初のループバック以外のインターフェースで、 プライマリアドレスを持"
9860 "つインターフェースのプライマリアドレスが使用される点に 注意すること。"
9861
9862 #. type: TP
9863 #: build/C/man7/icmp.7:98
9864 #, no-wrap
9865 msgid "I<icmp_ignore_bogus_error_responses> (Boolean; default: disabled; since Linux 2.2)"
9866 msgstr "I<icmp_ignore_bogus_error_responses> (ブール値; デフォルト: 無効; Linux 2.2 以降)"
9867
9868 #.  precisely: since 2.1.32
9869 #.  The following taken from 2.6.28-rc4 Documentation/networking/ip-sysctl.txt
9870 #. type: Plain text
9871 #: build/C/man7/icmp.7:106
9872 msgid ""
9873 "Some routers violate RFC1122 by sending bogus responses to broadcast "
9874 "frames.  Such violations are normally logged via a kernel warning.  If this "
9875 "parameter is enabled, the kernel will not give such warnings, which will "
9876 "avoid log file clutter."
9877 msgstr ""
9878 "ルーターの中には、RFC1122 に違反し、ブロードキャストフレームに対して 偽の応答"
9879 "を送信するものがある。 このような違反は通常カーネルの警告としてログに記録され"
9880 "る。 このパラメーターを有効にすると、カーネルはこのような警告を出さなくな"
9881 "り、 ログファイルに雑音のような情報が記録されるのを避けることができる。"
9882
9883 #. type: TP
9884 #: build/C/man7/icmp.7:106
9885 #, no-wrap
9886 msgid "I<icmp_paramprob_rate> (Linux 2.2 to 2.4.9)"
9887 msgstr "I<icmp_paramprob_rate> (Linux 2.2 から 2.4.9 まで)"
9888
9889 #.  Precisely: from 2.1.102
9890 #. type: Plain text
9891 #: build/C/man7/icmp.7:113
9892 msgid ""
9893 "Maximum rate for sending B<ICMP_PARAMETERPROB> packets.  These packets are "
9894 "sent when a packet arrives with an invalid IP header."
9895 msgstr ""
9896 "B<ICMP_PARAMETERPROB> パケットの最大送信レート。 これらのパケットは不正な IP "
9897 "ヘッダーを持つパケットが到着した場合に 送信される。"
9898
9899 #. type: TP
9900 #: build/C/man7/icmp.7:113
9901 #, no-wrap
9902 msgid "I<icmp_ratelimit> (integer; default: 1000; since Linux 2.4.10)"
9903 msgstr "I<icmp_ratelimit> (integer; default: 1000; Linux 2.4.10 以降)"
9904
9905 #.  The following taken from 2.6.28-rc4 Documentation/networking/ip-sysctl.txt
9906 #. type: Plain text
9907 #: build/C/man7/icmp.7:121
9908 msgid ""
9909 "Limit the maximum rates for sending ICMP packets whose type matches "
9910 "I<icmp_ratemask> (see below) to specific targets.  0 to disable any "
9911 "limiting, otherwise the minimum space between responses in milliseconds."
9912 msgstr ""
9913 "種別が I<icmp_ratemask> (下記参照) にマッチした ICMP パケットの、 特定の送信"
9914 "先への送信レートの最大値を制限する。 0 はレート制限を無効にすることを、 0 以"
9915 "外の値は応答間の最小間隔 (ミリ秒単位) を示す。"
9916
9917 #. type: TP
9918 #: build/C/man7/icmp.7:121
9919 #, no-wrap
9920 msgid "I<icmp_ratemask> (integer; default: see below; since Linux 2.4.10)"
9921 msgstr "I<icmp_ratemask> (integer; default: 下記参照; Linux 2.4.10 以降)"
9922
9923 #.  The following taken from 2.6.28-rc4 Documentation/networking/ip-sysctl.txt
9924 #. type: Plain text
9925 #: build/C/man7/icmp.7:125
9926 msgid "Mask made of ICMP types for which rates are being limited."
9927 msgstr "レート制限を行う ICMP タイプを決めるマスク。"
9928
9929 #. type: Plain text
9930 #: build/C/man7/icmp.7:127
9931 msgid "Significant bits: IHGFEDCBA9876543210"
9932 msgstr "有効ビット: IHGFEDCBA9876543210"
9933
9934 #. type: Plain text
9935 #: build/C/man7/icmp.7:129
9936 msgid "Default mask: 0000001100000011000 (0x1818)"
9937 msgstr "デフォルトマスク: 0000001100000011000 (0x1818)"
9938
9939 #. type: Plain text
9940 #: build/C/man7/icmp.7:132
9941 msgid ""
9942 "Bit definitions (see the Linux kernel source file I<include/linux/icmp.h>):"
9943 msgstr ""
9944 "ビット定義 (Linux カーネルソースファイル I<include/linux/icmp.h> を参照):"
9945
9946 #. type: tbl table
9947 #: build/C/man7/icmp.7:136
9948 #, no-wrap
9949 msgid "0 Echo Reply\n"
9950 msgstr "0 Echo Reply\n"
9951
9952 #. type: tbl table
9953 #: build/C/man7/icmp.7:137
9954 #, no-wrap
9955 msgid "3 Destination Unreachable *\n"
9956 msgstr "3 Destination Unreachable *\n"
9957
9958 #. type: tbl table
9959 #: build/C/man7/icmp.7:138
9960 #, no-wrap
9961 msgid "4 Source Quench *\n"
9962 msgstr "4 Source Quench *\n"
9963
9964 #. type: tbl table
9965 #: build/C/man7/icmp.7:139
9966 #, no-wrap
9967 msgid "5 Redirect\n"
9968 msgstr "5 Redirect\n"
9969
9970 #. type: tbl table
9971 #: build/C/man7/icmp.7:140
9972 #, no-wrap
9973 msgid "8 Echo Request\n"
9974 msgstr "8 Echo Request\n"
9975
9976 #. type: tbl table
9977 #: build/C/man7/icmp.7:141
9978 #, no-wrap
9979 msgid "B Time Exceeded *\n"
9980 msgstr "B Time Exceeded *\n"
9981
9982 #. type: tbl table
9983 #: build/C/man7/icmp.7:142
9984 #, no-wrap
9985 msgid "C Parameter Problem *\n"
9986 msgstr "C Parameter Problem *\n"
9987
9988 #. type: tbl table
9989 #: build/C/man7/icmp.7:143
9990 #, no-wrap
9991 msgid "D Timestamp Request\n"
9992 msgstr "D Timestamp Request\n"
9993
9994 #. type: tbl table
9995 #: build/C/man7/icmp.7:144
9996 #, no-wrap
9997 msgid "E Timestamp Reply\n"
9998 msgstr "E Timestamp Reply\n"
9999
10000 #. type: tbl table
10001 #: build/C/man7/icmp.7:145
10002 #, no-wrap
10003 msgid "F Info Request\n"
10004 msgstr "F Info Request\n"
10005
10006 #. type: tbl table
10007 #: build/C/man7/icmp.7:146
10008 #, no-wrap
10009 msgid "G Info Reply\n"
10010 msgstr "G Info Reply\n"
10011
10012 #. type: tbl table
10013 #: build/C/man7/icmp.7:147
10014 #, no-wrap
10015 msgid "H Address Mask Request\n"
10016 msgstr "H Address Mask Request\n"
10017
10018 #. type: tbl table
10019 #: build/C/man7/icmp.7:148
10020 #, no-wrap
10021 msgid "I Address Mask Reply\n"
10022 msgstr "I Address Mask Reply\n"
10023
10024 #. type: Plain text
10025 #: build/C/man7/icmp.7:154
10026 msgid ""
10027 "The bits marked with an asterisk are rate limited by default (see the "
10028 "default mask above)."
10029 msgstr ""
10030 "アスタリスク印 (*) が付いたビットは、 デフォルトでレート制限が有効になってい"
10031 "る (上記のマスクのデフォルトも参照)。"
10032
10033 #. type: TP
10034 #: build/C/man7/icmp.7:154
10035 #, no-wrap
10036 msgid "I<icmp_timeexceed_rate> (Linux 2.2 to 2.4.9)"
10037 msgstr "I<icmp_timeexceed_rate> (Linux 2.2 から 2.4.9 まで)"
10038
10039 #. type: Plain text
10040 #: build/C/man7/icmp.7:161
10041 msgid ""
10042 "Maximum rate for sending B<ICMP_TIME_EXCEEDED> packets.  These packets are "
10043 "sent to prevent loops when a packet has crossed too many hops."
10044 msgstr ""
10045 "B<ICMP_TIME_EXCEEDED> パケットの最大送信レート。 これらのパケットはパケットが"
10046 "あまりに多くの hop を通過した場合に、 ループを防ぐために送られる。"
10047
10048 #. type: Plain text
10049 #: build/C/man7/icmp.7:165
10050 msgid "Support for the B<ICMP_ADDRESS> request was removed in 2.2."
10051 msgstr "B<ICMP_ADDRESS> 要求に対するサポートは 2.2 で削除された。"
10052
10053 #. type: Plain text
10054 #: build/C/man7/icmp.7:169
10055 msgid "Support for B<ICMP_SOURCE_QUENCH> was removed in Linux 2.2."
10056 msgstr "B<ICMP_SOURCE_QUENCH> は Linux 2.2 で削除された。"
10057
10058 #.  not really true ATM
10059 #.  .PP
10060 #.  Linux ICMP should be compliant to RFC 1122.
10061 #. type: Plain text
10062 #: build/C/man7/icmp.7:177
10063 msgid ""
10064 "As many other implementations don't support B<IPPROTO_ICMP> raw sockets, "
10065 "this feature should not be relied on in portable programs."
10066 msgstr ""
10067 "他の多くの実装では、 B<IPPROTO_ICMP> raw ソケットがサポートされていない。 こ"
10068 "の機能は移植性が必要なプログラムでは用いるべきでない。"
10069
10070 #. type: Plain text
10071 #: build/C/man7/icmp.7:182
10072 msgid ""
10073 "B<ICMP_REDIRECT> packets are not sent when Linux is not acting as a router.  "
10074 "They are also accepted only from the old gateway defined in the routing "
10075 "table and the redirect routes are expired after some time."
10076 msgstr ""
10077 "Linux がルーターとして動作していないときには、 B<ICMP_REDIRECT> パケットは送"
10078 "信されない。 またこれらが受け取られるのも、発信元がルーティングテーブルに定義"
10079 "されている 古いゲートウェイで、リダイレクトルート (redirect route) が 適当な"
10080 "時間の後に期限切れになっている場合に限られる。"
10081
10082 #. type: Plain text
10083 #: build/C/man7/icmp.7:186
10084 msgid ""
10085 "The 64-bit timestamp returned by B<ICMP_TIMESTAMP> is in milliseconds since "
10086 "the Epoch, 1970-01-01 00:00:00 +0000 (UTC)."
10087 msgstr ""
10088 "B<ICMP_TIMESTAMP> から返される 64 ビットのタイムスタンプは、 紀元 (Epoch) で"
10089 "ある 1970-01-01 00:00:00 +0000 (UTC)  からの経過時間をミリ秒単位で表したもの"
10090 "である。"
10091
10092 #. type: Plain text
10093 #: build/C/man7/icmp.7:191
10094 msgid ""
10095 "Linux ICMP internally uses a raw socket to send ICMPs.  This raw socket may "
10096 "appear in B<netstat>(8)  output with a zero inode."
10097 msgstr ""
10098 "Linux ICMP は ICMP を送るために内部で raw ソケットを用いる。 raw ソケットは "
10099 "B<netstat>(8)  の出力に 0 inode として出力される。"
10100
10101 #. type: Plain text
10102 #: build/C/man7/icmp.7:193
10103 msgid "B<ip>(7)"
10104 msgstr "B<ip>(7)"
10105
10106 #. type: Plain text
10107 #: build/C/man7/icmp.7:195
10108 msgid "RFC\\ 792 for a description of the ICMP protocol."
10109 msgstr "B<RFC\\ 792>: ICMP プロトコルの説明"
10110
10111 #. type: TH
10112 #: build/C/man3/inet.3:42
10113 #, no-wrap
10114 msgid "INET"
10115 msgstr "INET"
10116
10117 #. type: Plain text
10118 #: build/C/man3/inet.3:46
10119 msgid ""
10120 "inet_aton, inet_addr, inet_network, inet_ntoa, inet_makeaddr, inet_lnaof, "
10121 "inet_netof - Internet address manipulation routines"
10122 msgstr ""
10123 "inet_aton, inet_addr, inet_network, inet_ntoa, inet_makeaddr, inet_lnaof, "
10124 "inet_netof - インターネットアドレス操作ルーチン"
10125
10126 #. type: Plain text
10127 #: build/C/man3/inet.3:51
10128 #, no-wrap
10129 msgid ""
10130 "B<#include E<lt>sys/socket.hE<gt>>\n"
10131 "B<#include E<lt>netinet/in.hE<gt>>\n"
10132 "B<#include E<lt>arpa/inet.hE<gt>>\n"
10133 msgstr ""
10134 "B<#include E<lt>sys/socket.hE<gt>>\n"
10135 "B<#include E<lt>netinet/in.hE<gt>>\n"
10136 "B<#include E<lt>arpa/inet.hE<gt>>\n"
10137
10138 #. type: Plain text
10139 #: build/C/man3/inet.3:53
10140 #, no-wrap
10141 msgid "B<int inet_aton(const char *>I<cp>B<, struct in_addr *>I<inp>B<);>\n"
10142 msgstr "B<int inet_aton(const char *>I<cp>B<, struct in_addr *>I<inp>B<);>\n"
10143
10144 #. type: Plain text
10145 #: build/C/man3/inet.3:55
10146 #, no-wrap
10147 msgid "B<in_addr_t inet_addr(const char *>I<cp>B<);>\n"
10148 msgstr "B<in_addr_t inet_addr(const char *>I<cp>B<);>\n"
10149
10150 #. type: Plain text
10151 #: build/C/man3/inet.3:57
10152 #, no-wrap
10153 msgid "B<in_addr_t inet_network(const char *>I<cp>B<);>\n"
10154 msgstr "B<in_addr_t inet_network(const char *>I<cp>B<);>\n"
10155
10156 #. type: Plain text
10157 #: build/C/man3/inet.3:59
10158 #, no-wrap
10159 msgid "B<char *inet_ntoa(struct in_addr >I<in>B<);>\n"
10160 msgstr "B<char *inet_ntoa(struct in_addr >I<in>B<);>\n"
10161
10162 #. type: Plain text
10163 #: build/C/man3/inet.3:61
10164 #, no-wrap
10165 msgid "B<struct in_addr inet_makeaddr(in_addr_t >I<net>B<, in_addr_t >I<host>B<);>\n"
10166 msgstr "B<struct in_addr inet_makeaddr(in_addr_t >I<net>B<, in_addr_t >I<host>B<);>\n"
10167
10168 #. type: Plain text
10169 #: build/C/man3/inet.3:63
10170 #, no-wrap
10171 msgid "B<in_addr_t inet_lnaof(struct in_addr >I<in>B<);>\n"
10172 msgstr "B<in_addr_t inet_lnaof(struct in_addr >I<in>B<);>\n"
10173
10174 #. type: Plain text
10175 #: build/C/man3/inet.3:65
10176 #, no-wrap
10177 msgid "B<in_addr_t inet_netof(struct in_addr >I<in>B<);>\n"
10178 msgstr "B<in_addr_t inet_netof(struct in_addr >I<in>B<);>\n"
10179
10180 #. type: Plain text
10181 #: build/C/man3/inet.3:75
10182 msgid "B<inet_aton>(), B<inet_ntoa>(): _BSD_SOURCE || _SVID_SOURCE"
10183 msgstr "B<inet_aton>(), B<inet_ntoa>(): _BSD_SOURCE || _SVID_SOURCE"
10184
10185 #. type: Plain text
10186 #: build/C/man3/inet.3:85
10187 msgid ""
10188 "B<inet_aton>()  converts the Internet host address I<cp> from the IPv4 "
10189 "numbers-and-dots notation into binary form (in network byte order)  and "
10190 "stores it in the structure that I<inp> points to.  B<inet_aton>()  returns "
10191 "nonzero if the address is valid, zero if not.  The address supplied in I<cp> "
10192 "can have one of the following forms:"
10193 msgstr ""
10194 "B<inet_aton>()  は、インターネットホストのアドレス I<cp> を、 IPv4 の数値と"
10195 "ドットによる表記から (ネットワークバイトオーダの) バイナリ値へ 変換し、変換結"
10196 "果を I<inp> が指している構造体に格納する。 アドレスが有効な場合 0 以外を返"
10197 "し、そうでない場合は 0 を返す。 I<cp> で渡すアドレスとして、以下の形式を用い"
10198 "ることができる。"
10199
10200 #. type: TP
10201 #: build/C/man3/inet.3:85
10202 #, no-wrap
10203 msgid "I<a.b.c.d>"
10204 msgstr "I<a.b.c.d>"
10205
10206 #. type: Plain text
10207 #: build/C/man3/inet.3:89
10208 msgid ""
10209 "Each of the four numeric parts specifies a byte of the address; the bytes "
10210 "are assigned in left-to-right order to produce the binary address."
10211 msgstr ""
10212 "4 つの数字のそれぞれはアドレスの各バイトを示す。 これらのバイトは左から右の順"
10213 "序でバイナリアドレスに割り当てられる。"
10214
10215 #. type: TP
10216 #: build/C/man3/inet.3:89
10217 #, no-wrap
10218 msgid "I<a.b.c>"
10219 msgstr "I<a.b.c>"
10220
10221 #. type: Plain text
10222 #: build/C/man3/inet.3:102
10223 msgid ""
10224 "Parts I<a> and I<b> specify the first two bytes of the binary address.  Part "
10225 "I<c> is interpreted as a 16-bit value that defines the rightmost two bytes "
10226 "of the binary address.  This notation is suitable for specifying (outmoded) "
10227 "Class B network addresses."
10228 msgstr ""
10229 "I<a> と I<b> はバイナリアドレスの最初の 2 バイトを示す。 I<c> は 16 ビット値"
10230 "と解釈され、バイナリアドレスの右側の 2 バイトを表す。 この表記は、(過去のもの"
10231 "となった) クラス B ネットワークアドレスを 指定するのに適している。"
10232
10233 #. type: TP
10234 #: build/C/man3/inet.3:102
10235 #, no-wrap
10236 msgid "I<a.b>"
10237 msgstr "I<a.b>"
10238
10239 #. type: Plain text
10240 #: build/C/man3/inet.3:113
10241 msgid ""
10242 "Part I<a> specifies the first byte of the binary address.  Part I<b> is "
10243 "interpreted as a 24-bit value that defines the rightmost three bytes of the "
10244 "binary address.  This notation is suitable for specifying (outmoded) Class A "
10245 "network addresses."
10246 msgstr ""
10247 "I<a> はバイナリアドレスの最初のバイトを示す。 I<b> は 24 ビット値と解釈され、"
10248 "バイナリアドレスの右側の 3 バイトを表す。 この表記は、(過去のものとなった) ク"
10249 "ラス A ネットワークアドレスを 指定するのに適している。"
10250
10251 #. type: TP
10252 #: build/C/man3/inet.3:113
10253 #, no-wrap
10254 msgid "I<a>"
10255 msgstr "I<a>"
10256
10257 #. type: Plain text
10258 #: build/C/man3/inet.3:119
10259 msgid ""
10260 "The value I<a> is interpreted as a 32-bit value that is stored directly into "
10261 "the binary address without any byte rearrangement."
10262 msgstr ""
10263 "値 I<a> は 32 ビット値と解釈され、バイトの再配置は行われず、 そのままバイナリ"
10264 "アドレスとして格納される。"
10265
10266 #. type: Plain text
10267 #: build/C/man3/inet.3:132
10268 msgid ""
10269 "In all of the above forms, components of the dotted address can be specified "
10270 "in decimal, octal (with a leading I<0>), or hexadecimal, with a leading "
10271 "I<0X>).  Addresses in any of these forms are collectively termed I<IPV4 "
10272 "numbers-and-dots notation>.  The form that uses exactly four decimal numbers "
10273 "is referred to as I<IPv4 dotted-decimal notation> (or sometimes: I<IPv4 "
10274 "dotted-quad notation>)."
10275 msgstr ""
10276 "上記の全ての形式で、ドット区切りのアドレスの各要素は、10 進数、 8 進数 (先頭"
10277 "に I<0> を付ける)、 16 進数 (先頭に I<0X> を付ける) で指定できる。 これらの形"
10278 "式のアドレスをまとめて I<IPv4 の数値とドットによる表記 (IPv4 numbers-and-"
10279 "dots notation)> と呼ぶ。 また、10 進数 4 つだけを使った形式を I<IPv4 のドット"
10280 "区切りの 10 進数表記 (IPv4 dotted-decimal notation)> と呼ぶ (I<IPv4 のドット"
10281 "区切り 4 分割表記 (IPv4 dotted-decimal notation)> と呼ぶこともある)。"
10282
10283 #. type: Plain text
10284 #: build/C/man3/inet.3:140
10285 msgid ""
10286 "B<inet_aton>()  returns 1 if the supplied string was successfully "
10287 "interpreted, or 0 if the string is invalid (B<errno> is I<not> set on error)."
10288 msgstr ""
10289 "B<inet_aton>() は渡された文字列が正常に解釈できた場合 1 を返し、 文字列が不正"
10290 "な場合 0 を返す (エラーの場合に B<errno> はセットI<されない>)。"
10291
10292 #. type: Plain text
10293 #: build/C/man3/inet.3:157
10294 msgid ""
10295 "The B<inet_addr>()  function converts the Internet host address I<cp> from "
10296 "IPv4 numbers-and-dots notation into binary data in network byte order.  If "
10297 "the input is invalid, B<INADDR_NONE> (usually -1) is returned.  Use of this "
10298 "function is problematic because -1 is a valid address (255.255.255.255).  "
10299 "Avoid its use in favor of B<inet_aton>(), B<inet_pton>(3), or "
10300 "B<getaddrinfo>(3), which provide a cleaner way to indicate error return."
10301 msgstr ""
10302 "B<inet_addr>()  関数は、インターネットホストのアドレス I<cp> を、 IPv4 の数値"
10303 "とドットによる表記からネットワークバイトオーダでの バイナリ値へ変換して返"
10304 "す。 入力が不正な場合、 B<INADDR_NONE> (普通は -1) を返す。 -1 は有効なアドレ"
10305 "ス (255.255.255.255) なので、この関数を使うと 問題になるかもしれない。 この関"
10306 "数を使うのは避け、代わりに B<inet_aton>(), B<inet_pton>(3), "
10307 "B<getaddrinfo>(3)  を使うのがよい。 これらの関数の方が、エラーの通知がよりき"
10308 "れいな方法で行われる。"
10309
10310 #. type: Plain text
10311 #: build/C/man3/inet.3:167
10312 msgid ""
10313 "The B<inet_network>()  function converts I<cp>, a string in IPv4 numbers-and-"
10314 "dots notation, into a number in host byte order suitable for use as an "
10315 "Internet network address.  On success, the converted address is returned.  "
10316 "If the input is invalid, -1 is returned."
10317 msgstr ""
10318 "B<inet_network>()  関数は、 IPv4 の数値とドットによる表記の文字列 I<cp> を、 "
10319 "インターネットアドレスとしての使用に適した ホストバイトオーダの数値に変換す"
10320 "る。 成功すると、変換されたアドレスを返す。 入力が不正な場合は -1 を返す。"
10321
10322 #. type: Plain text
10323 #: build/C/man3/inet.3:175
10324 msgid ""
10325 "The B<inet_ntoa>()  function converts the Internet host address I<in>, given "
10326 "in network byte order, to a string in IPv4 dotted-decimal notation.  The "
10327 "string is returned in a statically allocated buffer, which subsequent calls "
10328 "will overwrite."
10329 msgstr ""
10330 "B<inet_ntoa>()  関数は、ネットワークバイトオーダで渡されたインターネットホス"
10331 "トアドレス I<in> を、 IPv4 のドット区切りの 10 進数表記の文字列に変換する。 "
10332 "文字列は静的に割当てられたバッファーに格納されて返されるので、 この後でこの関"
10333 "数を再度呼び出すと文字列は上書きされる。"
10334
10335 #. type: Plain text
10336 #: build/C/man3/inet.3:181
10337 msgid ""
10338 "The B<inet_lnaof>()  function returns the local network address part of the "
10339 "Internet address I<in>.  The returned value is in host byte order."
10340 msgstr ""
10341 "B<inet_lnaof>()  関数は、インターネットアドレス I<in> のローカルネットワーク"
10342 "部分を返す。 この返り値はホストバイトオーダである。"
10343
10344 #. type: Plain text
10345 #: build/C/man3/inet.3:187
10346 msgid ""
10347 "The B<inet_netof>()  function returns the network number part of the "
10348 "Internet address I<in>.  The returned value is in host byte order."
10349 msgstr ""
10350 "B<inet_netof>()  関数は、インターネットアドレス I<in> のネットワーク部分を返"
10351 "す。 この返り値はホストバイトオーダである。"
10352
10353 #. type: Plain text
10354 #: build/C/man3/inet.3:198
10355 msgid ""
10356 "The B<inet_makeaddr>()  function is the converse of B<inet_netof>()  and "
10357 "B<inet_lnaof>().  It returns an Internet host address in network byte order, "
10358 "created by combining the network number I<net> with the local address "
10359 "I<host>, both in host byte order."
10360 msgstr ""
10361 "B<inet_makeaddr>()  関数は B<inet_netof>()  と B<inet_lnaof>()  の逆の機能を"
10362 "持つ。 ネットワーク番号 I<net> と、ローカルアドレス I<host> を 組み合わせて生"
10363 "成した、インターネットホストアドレスを ネットワークバイトオーダで返す。 "
10364 "I<host>, I<net> はともにホストバイトオーダである。"
10365
10366 #. type: Plain text
10367 #: build/C/man3/inet.3:208
10368 msgid ""
10369 "The structure I<in_addr> as used in B<inet_ntoa>(), B<inet_makeaddr>(), "
10370 "B<inet_lnaof>()  and B<inet_netof>()  is defined in I<E<lt>netinet/in."
10371 "hE<gt>> as:"
10372 msgstr ""
10373 "B<inet_ntoa>(), B<inet_makeaddr>(), B<inet_lnaof>(), B<inet_netof>()  で使用"
10374 "する構造体 I<in_addr> は I<E<lt>netinet/in.hE<gt>> で次のように定義されてい"
10375 "る:"
10376
10377 #. type: Plain text
10378 #: build/C/man3/inet.3:212
10379 #, no-wrap
10380 msgid "typedef uint32_t in_addr_t;\n"
10381 msgstr "typedef uint32_t in_addr_t;\n"
10382
10383 #. type: Plain text
10384 #: build/C/man3/inet.3:216
10385 #, no-wrap
10386 msgid ""
10387 "struct in_addr {\n"
10388 "    in_addr_t s_addr;\n"
10389 "};\n"
10390 msgstr ""
10391 "struct in_addr {\n"
10392 "    in_addr_t s_addr;\n"
10393 "};\n"
10394
10395 #. type: Plain text
10396 #: build/C/man3/inet.3:226
10397 msgid ""
10398 "4.3BSD.  B<inet_addr>()  and B<inet_ntoa>()  are specified in POSIX.1-2001.  "
10399 "B<inet_aton>()  is not specified in POSIX.1-2001, but is available on most "
10400 "systems."
10401 msgstr ""
10402 "4.3BSD.  B<inet_addr>(), B<inet_ntoa>()  は POSIX.1-2001 で規定されている。 "
10403 "B<inet_aton>()  は POSIX.1-2001 で規定されていないが、ほとんどのシステムで利"
10404 "用可能である。"
10405
10406 #. type: Plain text
10407 #: build/C/man3/inet.3:230
10408 msgid ""
10409 "On the i386 the host byte order is Least Significant Byte first (little "
10410 "endian), whereas the network byte order, as used on the Internet, is Most "
10411 "Significant Byte first (big endian)."
10412 msgstr ""
10413 "i386 ではホストバイトオーダは Least Significant Byte (LSB) first (リトルエン"
10414 "ディアン) だが、 インターネットで使われるネットワークバイトオーダは Most "
10415 "Significant Byte (MSB) first (ビッグエンディアン)  である点に注意すること。"
10416
10417 #. type: Plain text
10418 #: build/C/man3/inet.3:239
10419 msgid ""
10420 "B<inet_lnaof>(), B<inet_netof>(), and B<inet_makeaddr>()  are legacy "
10421 "functions that assume they are dealing with I<classful network addresses>.  "
10422 "Classful networking divides IPv4 network addresses into host and network "
10423 "components at byte boundaries, as follows:"
10424 msgstr ""
10425 "B<inet_lnaof>(), B<inet_netof>(), B<inet_makeaddr>()  は過去の名残であり、渡"
10426 "されたアドレスが I<クラスフルネットワークアドレス (classful network "
10427 "addresses)> であると仮定して処理を行う。 クラスフルネットワークアドレスでは、"
10428 "以下にあるように、 IPv4 ネットワークアドレスをバイト境界でネットワーク部とホ"
10429 "スト部に分割する。"
10430
10431 #. type: TP
10432 #: build/C/man3/inet.3:239
10433 #, no-wrap
10434 msgid "Class A"
10435 msgstr "Class A"
10436
10437 #. type: Plain text
10438 #: build/C/man3/inet.3:245
10439 msgid ""
10440 "This address type is indicated by the value 0 in the most significant bit of "
10441 "the (network byte ordered) address.  The network address is contained in the "
10442 "most significant byte, and the host address occupies the remaining three "
10443 "bytes."
10444 msgstr ""
10445 "(ネットワークバイトオーダの) アドレスの最上位ビットが 0 の場合、 このアドレス"
10446 "種別となる。このアドレス種別では、 最上位バイトがネットワークアドレスを表"
10447 "し、 残りの 3 バイトがホストアドレスを表す。"
10448
10449 #. type: TP
10450 #: build/C/man3/inet.3:245
10451 #, no-wrap
10452 msgid "Class B"
10453 msgstr "Class B"
10454
10455 #. type: Plain text
10456 #: build/C/man3/inet.3:251
10457 msgid ""
10458 "This address type is indicated by the binary value 10 in the most "
10459 "significant two bits of the address.  The network address is contained in "
10460 "the two most significant bytes, and the host address occupies the remaining "
10461 "two bytes."
10462 msgstr ""
10463 "(ネットワークバイトオーダの) アドレスの上位側 2 ビットがバイナリ値で 10 の場"
10464 "合、このアドレス種別となる。このアドレス種別では、 上位 2 バイトがネットワー"
10465 "クアドレスを表し、 残りの 2 バイトがホストアドレスを表す。"
10466
10467 #. type: TP
10468 #: build/C/man3/inet.3:251
10469 #, no-wrap
10470 msgid "Class C"
10471 msgstr "Class C"
10472
10473 #. type: Plain text
10474 #: build/C/man3/inet.3:257
10475 msgid ""
10476 "This address type is indicated by the binary value 110 in the most "
10477 "significant three bits of the address.  The network address is contained in "
10478 "the three most significant bytes, and the host address occupies the "
10479 "remaining byte."
10480 msgstr ""
10481 "(ネットワークバイトオーダの) アドレスの上位側 3 ビットがバイナリ値で 110 の場"
10482 "合、このアドレス種別となる。このアドレス種別では、 上位 3 バイトがネットワー"
10483 "クアドレスを表し、 残りの 1 バイトがホストアドレスを表す。"
10484
10485 #. type: Plain text
10486 #: build/C/man3/inet.3:262
10487 msgid ""
10488 "Classful network addresses are now obsolete, having been superseded by "
10489 "Classless Inter-Domain Routing (CIDR), which divides addresses into network "
10490 "and host components at arbitrary bit (rather than byte) boundaries."
10491 msgstr ""
10492 "クラスフルネットワークアドレスは現在では廃止され、 クラスレスドメイン間ルーチ"
10493 "ン (CIDR) に取って代わられた。 CIDR では、アドレスを任意のビット境界 (バイト"
10494 "境界ではない) で ネットワーク部とホスト部に分割する。"
10495
10496 #. type: Plain text
10497 #: build/C/man3/inet.3:269
10498 msgid ""
10499 "An example of the use of B<inet_aton>()  and B<inet_ntoa>()  is shown "
10500 "below.  Here are some example runs:"
10501 msgstr ""
10502 "以下は B<inet_aton>()  と B<inet_ntoa>()  の使用例である。このように実行す"
10503 "る。"
10504
10505 #. type: Plain text
10506 #: build/C/man3/inet.3:276
10507 #, no-wrap
10508 msgid ""
10509 "$B< ./a.out 226.000.000.037>      # Last byte is in octal\n"
10510 "226.0.0.31\n"
10511 "$B< ./a.out 0x7f.1         >      # First byte is in hex\n"
10512 "127.0.0.1\n"
10513 msgstr ""
10514 "$B< ./a.out 226.000.000.037>      # Last byte is in octal\n"
10515 "226.0.0.31\n"
10516 "$B< ./a.out 0x7f.1         >      # First byte is in hex\n"
10517 "127.0.0.1\n"
10518
10519 #. type: Plain text
10520 #: build/C/man3/inet.3:285
10521 #, no-wrap
10522 msgid ""
10523 "#define _BSD_SOURCE\n"
10524 "#include E<lt>arpa/inet.hE<gt>\n"
10525 "#include E<lt>stdio.hE<gt>\n"
10526 "#include E<lt>stdlib.hE<gt>\n"
10527 msgstr ""
10528 "#define _BSD_SOURCE\n"
10529 "#include E<lt>arpa/inet.hE<gt>\n"
10530 "#include E<lt>stdio.hE<gt>\n"
10531 "#include E<lt>stdlib.hE<gt>\n"
10532
10533 #. type: Plain text
10534 #: build/C/man3/inet.3:290
10535 #, no-wrap
10536 msgid ""
10537 "int\n"
10538 "main(int argc, char *argv[])\n"
10539 "{\n"
10540 "    struct in_addr addr;\n"
10541 msgstr ""
10542 "int\n"
10543 "main(int argc, char *argv[])\n"
10544 "{\n"
10545 "    struct in_addr addr;\n"
10546
10547 #. type: Plain text
10548 #: build/C/man3/inet.3:295
10549 #, no-wrap
10550 msgid ""
10551 "    if (argc != 2) {\n"
10552 "        fprintf(stderr, \"%s E<lt>dotted-addressE<gt>\\en\", argv[0]);\n"
10553 "        exit(EXIT_FAILURE);\n"
10554 "    }\n"
10555 msgstr ""
10556 "    if (argc != 2) {\n"
10557 "        fprintf(stderr, \"%s E<lt>dotted-addressE<gt>\\en\", argv[0]);\n"
10558 "        exit(EXIT_FAILURE);\n"
10559 "    }\n"
10560
10561 #. type: Plain text
10562 #: build/C/man3/inet.3:300
10563 #, no-wrap
10564 msgid ""
10565 "    if (inet_aton(argv[1], &addr) == 0) {\n"
10566 "        fprintf(stderr, \"Invalid address\\en\");\n"
10567 "        exit(EXIT_FAILURE);\n"
10568 "    }\n"
10569 msgstr ""
10570 "    if (inet_aton(argv[1], &addr) == 0) {\n"
10571 "        fprintf(stderr, \"Invalid address\\en\");\n"
10572 "        exit(EXIT_FAILURE);\n"
10573 "    }\n"
10574
10575 #. type: Plain text
10576 #: build/C/man3/inet.3:304
10577 #, no-wrap
10578 msgid ""
10579 "    printf(\"%s\\en\", inet_ntoa(addr));\n"
10580 "    exit(EXIT_SUCCESS);\n"
10581 "}\n"
10582 msgstr ""
10583 "    printf(\"%s\\en\", inet_ntoa(addr));\n"
10584 "    exit(EXIT_SUCCESS);\n"
10585 "}\n"
10586
10587 #. type: Plain text
10588 #: build/C/man3/inet.3:316
10589 msgid ""
10590 "B<byteorder>(3), B<getaddrinfo>(3), B<gethostbyname>(3), B<getnameinfo>(3), "
10591 "B<getnetent>(3), B<inet_net_pton>(3), B<inet_ntop>(3), B<inet_pton>(3), "
10592 "B<hosts>(5), B<networks>(5)"
10593 msgstr ""
10594 "B<byteorder>(3), B<getaddrinfo>(3), B<gethostbyname>(3), B<getnameinfo>(3), "
10595 "B<getnetent>(3), B<inet_net_pton>(3), B<inet_ntop>(3), B<inet_pton>(3), "
10596 "B<hosts>(5), B<networks>(5)"
10597
10598 #. type: TH
10599 #: build/C/man3/inet_net_pton.3:26
10600 #, no-wrap
10601 msgid "INET_NET_PTON"
10602 msgstr "INET_NET_PTON"
10603
10604 #. type: Plain text
10605 #: build/C/man3/inet_net_pton.3:29
10606 msgid "inet_net_pton, inet_net_ntop - Internet network number conversion"
10607 msgstr "inet_net_pton, inet_net_ntop - インターネットのネットワーク番号の変換"
10608
10609 #. type: Plain text
10610 #: build/C/man3/inet_net_pton.3:35
10611 #, no-wrap
10612 msgid ""
10613 "B<int inet_net_pton(int >I<af>B<, const char *>I<pres>B<,>\n"
10614 "B<                  void *>I<netp>B<, size_t >I<nsize>B<);>\n"
10615 msgstr ""
10616 "B<int inet_net_pton(int >I<af>B<, const char *>I<pres>B<,>\n"
10617 "B<                  void *>I<netp>B<, size_t >I<nsize>B<);>\n"
10618
10619 #. type: Plain text
10620 #: build/C/man3/inet_net_pton.3:38
10621 #, no-wrap
10622 msgid ""
10623 "B<char *inet_net_ntop(int >I<af>B<, const void *>I<netp>B<, int >I<bits>B<,>\n"
10624 "B<                    char *>I<pres>B<, size_t >I<psize>B<);>\n"
10625 msgstr ""
10626 "B<char *inet_net_ntop(int >I<af>B<, const void *>I<netp>B<, int >I<bits>B<,>\n"
10627 "B<                    char *>I<pres>B<, size_t >I<psize>B<);>\n"
10628
10629 #. type: Plain text
10630 #: build/C/man3/inet_net_pton.3:41 build/C/man3/resolver.3:85
10631 msgid "Link with I<-lresolv>."
10632 msgstr "I<-lresolv> でリンクする。"
10633
10634 #. type: Plain text
10635 #: build/C/man3/inet_net_pton.3:49
10636 msgid "B<inet_net_pton>(), B<inet_net_ntop>():"
10637 msgstr "B<inet_net_pton>(), B<inet_net_ntop>():"
10638
10639 #. type: TP
10640 #: build/C/man3/inet_net_pton.3:52
10641 #, no-wrap
10642 msgid "Since glibc 2.20:"
10643 msgstr "glibc 2.20 以降:"
10644
10645 #. type: Plain text
10646 #: build/C/man3/inet_net_pton.3:55
10647 msgid "_DEFAULT_SOURCE"
10648 msgstr "_DEFAULT_SOURCE"
10649
10650 #. type: TP
10651 #: build/C/man3/inet_net_pton.3:55
10652 #, no-wrap
10653 msgid "Before glibc 2.20:"
10654 msgstr "glibc 2.20 より前:"
10655
10656 #. type: Plain text
10657 #: build/C/man3/inet_net_pton.3:64
10658 msgid ""
10659 "These functions convert network numbers between presentation (i.e., "
10660 "printable) format and network (i.e., binary) format."
10661 msgstr ""
10662 "これらの関数は (印字可能な) 表記形式とネットワーク形式 (バイナリー形式) 間の"
10663 "変換を行う。"
10664
10665 #. type: Plain text
10666 #: build/C/man3/inet_net_pton.3:70
10667 msgid ""
10668 "For both functions, I<af> specifies the address family for the conversion; "
10669 "the only supported value is B<AF_INET>."
10670 msgstr ""
10671 "どちらの関数でも I<af> は変換を行うアドレスファミリーを指定する。 サポートさ"
10672 "れている値は B<AF_INET> だけである。"
10673
10674 #. type: SS
10675 #: build/C/man3/inet_net_pton.3:70
10676 #, no-wrap
10677 msgid "inet_net_pton()"
10678 msgstr "inet_net_pton()"
10679
10680 #. type: Plain text
10681 #: build/C/man3/inet_net_pton.3:89
10682 msgid ""
10683 "The B<inet_net_pton>()  function converts I<pres>, a null-terminated string "
10684 "containing an Internet network number in presentation format to network "
10685 "format.  The result of the conversion, which is in network byte order, is "
10686 "placed in the buffer pointed to by I<net>.  (The I<netp> argument typically "
10687 "points to an I<in_addr> structure.)  The I<nsize> argument specifies the "
10688 "number of bytes available in I<netp>."
10689 msgstr ""
10690 "B<inet_net_pton>() 関数は、 表記形式でインターネットネットワーク番号を格納し"
10691 "た NULL 終端された文字列である I<pres> をネットワーク形式に変換する。 ネット"
10692 "ワークバイトオーダーの変換結果は I<netp> が指すバッファーに格納される "
10693 "(I<netp> 引き数は通常 I<in_addr> 構造体を指している)。 I<nsize> 引き数は "
10694 "I<netp> で利用可能なバイト数を示す。"
10695
10696 #. type: Plain text
10697 #: build/C/man3/inet_net_pton.3:97
10698 msgid ""
10699 "On success, B<inet_net_pton>()  returns the number of bits in the network "
10700 "number field of the result placed in I<netp>.  For a discussion of the input "
10701 "presentation format and the return value, see NOTES."
10702 msgstr ""
10703 "成功すると B<inet_net_pton>() は I<netp> に格納した結果のネットワーク番号"
10704 "フィールドのビット数を返す。 入力の表記形式と返り値に関する議論は「注意」の節"
10705 "を参照。"
10706
10707 #. type: Plain text
10708 #: build/C/man3/inet_net_pton.3:107
10709 msgid ""
10710 "I<Note>: the buffer pointed to by I<netp> should be zeroed out before "
10711 "calling B<inet_net_pton>(), since the call writes only as many bytes as are "
10712 "required for the network number (or as are explicitly specified by I<pres>), "
10713 "which may be less than the number of bytes in a complete network address."
10714 msgstr ""
10715 "I<注意>: I<netp> が指すバッファーは B<inet_net_pton>() の呼び出し前に 0 で埋"
10716 "めるべきである。 呼び出しではネットワーク番号で必要なバイトだけが書き込ま"
10717 "れ、 そのバイト数は完全なネットワークアドレスのバイト数よりも少ないこともあ"
10718 "る。"
10719
10720 #. type: SS
10721 #: build/C/man3/inet_net_pton.3:107
10722 #, no-wrap
10723 msgid "inet_net_ntop()"
10724 msgstr "inet_net_ntop()"
10725
10726 #. type: Plain text
10727 #: build/C/man3/inet_net_pton.3:119
10728 msgid ""
10729 "The B<inet_net_ntop>()  function converts the network number in the buffer "
10730 "pointed to by I<netp> to presentation format; I<*netp> is interpreted as a "
10731 "value in network byte order.  The I<bits> argument specifies the number of "
10732 "bits in the network number in I<*netp>."
10733 msgstr ""
10734 "B<inet_net_ntop>() 関数は I<netp> が指すバッファーのネットワーク番号を表記形"
10735 "式に変換する。 I<*netp> はネットワークバイトオーダーでの値として解釈される。 "
10736 "I<bits> 引き数は I<*netp> のネットワーク番号のビット数を指定する。"
10737
10738 #. type: Plain text
10739 #: build/C/man3/inet_net_pton.3:130
10740 msgid ""
10741 "The null-terminated presentation-format string is placed in the buffer "
10742 "pointed to by I<pres>.  The I<psize> argument specifies the number of bytes "
10743 "available in I<pres>.  The presentation string is in CIDR format: a dotted-"
10744 "decimal number representing the network address, followed by a slash, and "
10745 "the size of the network number in bits."
10746 msgstr ""
10747 "NULL 終端された表記形式の文字列は I<pres> が指すバッファーに格納される。 "
10748 "I<psize> 引き数は I<pres> で利用可能なバイト数を指定する。 表記形式は CIDR 形"
10749 "式、 つまり、 ネットワークアドレスを表すドット区切りの 10 進数に、 スラッシュ"
10750 "とネットワーク番号のビットサイズが続く形式である。"
10751
10752 #. type: Plain text
10753 #: build/C/man3/inet_net_pton.3:137
10754 msgid ""
10755 "On success, B<inet_net_pton>()  returns the number of bits in the network "
10756 "number.  On error, it returns -1, and I<errno> is set to indicate the cause "
10757 "of the error."
10758 msgstr ""
10759 "成功すると B<inet_net_pton>() はネットワーク番号のビット数を返す。 エラーの場"
10760 "合、 -1 を返し、 I<errno> にエラーを示す値を設定する。"
10761
10762 #. type: Plain text
10763 #: build/C/man3/inet_net_pton.3:145
10764 msgid ""
10765 "On success, B<inet_net_ntop>()  returns I<pres>.  On error, it returns NULL, "
10766 "and I<errno> is set to indicate the cause of the error."
10767 msgstr ""
10768 "成功すると B<inet_net_ntop>() は I<pres> を返す。 エラーの場合、 NULL を返"
10769 "し、 I<errno> にエラーを示す値がセットされる。"
10770
10771 #. type: TP
10772 #: build/C/man3/inet_net_pton.3:146 build/C/man3/inet_ntop.3:92
10773 #, no-wrap
10774 msgid "B<EAFNOSUPPORT>"
10775 msgstr "B<EAFNOSUPPORT>"
10776
10777 #. type: Plain text
10778 #: build/C/man3/inet_net_pton.3:151
10779 msgid "I<af> specified a value other than B<AF_INET>."
10780 msgstr "I<af> に B<AF_INET> 以外の値が指定された。"
10781
10782 #. type: Plain text
10783 #: build/C/man3/inet_net_pton.3:154
10784 msgid "The size of the output buffer was insufficient."
10785 msgstr "出力バッファーのサイズが十分でなかった。"
10786
10787 #. type: Plain text
10788 #: build/C/man3/inet_net_pton.3:159
10789 msgid "(B<inet_net_pton>())  I<pres> was not in correct presentation format."
10790 msgstr "(B<inet_net_pton>() の場合) I<pres> が正しい表記形式ではなかった。"
10791
10792 #. type: Plain text
10793 #: build/C/man3/inet_net_pton.3:165
10794 msgid ""
10795 "The B<inet_net_pton>()  and B<inet_net_ntop>()  functions are nonstandard, "
10796 "but widely available."
10797 msgstr ""
10798 "関数 B<inet_net_pton>() と B<inet_net_ntop>() は非標準だが、多くのシステムで"
10799 "利用可能である。"
10800
10801 #. type: SS
10802 #: build/C/man3/inet_net_pton.3:166
10803 #, no-wrap
10804 msgid "Input presentation format for inet_net_pton()"
10805 msgstr "inet_net_pton() の入力の表記形式"
10806
10807 #. type: Plain text
10808 #: build/C/man3/inet_net_pton.3:170
10809 msgid ""
10810 "The network number may be specified either as a hexadecimal value or in "
10811 "dotted-decimal notation."
10812 msgstr ""
10813 "ネットワーク番号は、 16 進数値、またはドット区切りの 10 進数表記で指定でき"
10814 "る。"
10815
10816 #.  If the hexadecimal string is short, the remaining nibbles are zeroed.
10817 #. type: Plain text
10818 #: build/C/man3/inet_net_pton.3:175
10819 msgid ""
10820 "Hexadecimal values are indicated by an initial \"0x\" or \"0X\".  The "
10821 "hexadecimal digits populate the nibbles (half octets) of the network number "
10822 "from left to right in network byte order."
10823 msgstr ""
10824 "先頭に \"0x\" か \"0X\" がある場合 16 進数値となる。 16 進数はネットワークバ"
10825 "イトオーダーの左から右へ半オクテット (4 ビット) ずつ順番に埋められる。"
10826
10827 #. type: Plain text
10828 #: build/C/man3/inet_net_pton.3:179
10829 msgid ""
10830 "In dotted-decimal notation, up to four octets are specified, as decimal "
10831 "numbers separated by dots.  Thus, any of the following forms are accepted:"
10832 msgstr ""
10833 "ドット区切りの 10 進数表記では、 最大 4 つのオクテットをドット区切りの 10 進"
10834 "数で指定する。 したがって、 以下の形式を指定できる。"
10835
10836 #. type: Plain text
10837 #: build/C/man3/inet_net_pton.3:184
10838 #, no-wrap
10839 msgid ""
10840 "    a.b.c.d\n"
10841 "    a.b.c\n"
10842 "    a.b\n"
10843 "    a\n"
10844 msgstr ""
10845 "    a.b.c.d\n"
10846 "    a.b.c\n"
10847 "    a.b\n"
10848 "    a\n"
10849
10850 #.  Reading other man pages, some other implementations treat
10851 #.      'c' in a.b.c as a 16-bit number that populates right-most two bytes
10852 #.      'b' in a.b as a 24-bit number that populates right-most three bytes
10853 #. type: Plain text
10854 #: build/C/man3/inet_net_pton.3:192
10855 msgid ""
10856 "Each part is a number in the range 0 to 255 that populates one byte of the "
10857 "resulting network number, going from left to right, in network-byte (big "
10858 "endian) order.  Where a part is omitted, the resulting byte in the network "
10859 "number is zero."
10860 msgstr ""
10861 "各部分は 0 から 255 の範囲の数字で、ネットワーク番号の各バイトに左から右に"
10862 "ネットワークバイトオーダー (ビッグエンディアン) で順番に埋められる。 省略され"
10863 "た部分があれば、 対応するネットワーク番号のバイトは 0 となる。"
10864
10865 #. type: Plain text
10866 #: build/C/man3/inet_net_pton.3:197
10867 msgid ""
10868 "For either hexadecimal or dotted-decimal format, the network number can "
10869 "optionally be followed by a slash and a number in the range 0 to 32, which "
10870 "specifies the size of the network number in bits."
10871 msgstr ""
10872 "16 進数とドット区切りの 10 進数形式のどちらの場合も、 ネットワーク番号の後ろ"
10873 "にスラッシュと 0 から 32 の範囲の数字をオプションで付けることができる。 この"
10874 "数字はネットワーク番号のビット単位のサイズを示すものである。"
10875
10876 #. type: SS
10877 #: build/C/man3/inet_net_pton.3:197
10878 #, no-wrap
10879 msgid "Return value of inet_net_pton()"
10880 msgstr "inet_net_pton() の返り値"
10881
10882 #. type: Plain text
10883 #: build/C/man3/inet_net_pton.3:207
10884 msgid ""
10885 "The return value of B<inet_net_pton>()  is the number of bits in the network "
10886 "number field.  If the input presentation string terminates with a slash and "
10887 "an explicit size value, then that size becomes the return value of "
10888 "B<inet_net_pton>().  Otherwise, the return value, I<bits>, is inferred as "
10889 "follows:"
10890 msgstr ""
10891 "B<inet_net_pton>() の返り値はネットワーク番号フィールドのビット数である。 入"
10892 "力の表記形式の文字列がスラッシュとサイズの明示的な値で終わっている場合、 指定"
10893 "されたサイズが B<inet_net_pton>() の返り値となる。 そうでない場合は、 返り値 "
10894 "I<bits> が以下のようにして推測される。"
10895
10896 #. type: Plain text
10897 #: build/C/man3/inet_net_pton.3:213
10898 msgid ""
10899 "If the most significant byte of the network number is greater than or equal "
10900 "to 240, then I<bits> is 32."
10901 msgstr ""
10902 "ネットワーク番号の最上位バイトが 240 以上の場合、 I<bits> は 32 となる。"
10903
10904 #. type: Plain text
10905 #: build/C/man3/inet_net_pton.3:220
10906 msgid ""
10907 "Otherwise, if the most significant byte of the network number is greater "
10908 "than or equal to 224, then I<bits> is 4."
10909 msgstr ""
10910 "それ以外で、 ネットワーク番号の最上位バイトが 224 以上の場合、 I<bits> は 4 "
10911 "となる。"
10912
10913 #. type: Plain text
10914 #: build/C/man3/inet_net_pton.3:227
10915 msgid ""
10916 "Otherwise, if the most significant byte of the network number is greater "
10917 "than or equal to 192, then I<bits> is 24."
10918 msgstr ""
10919 "それ以外で、 ネットワーク番号の最上位バイトが 192 以上の場合、 I<bits> は 24 "
10920 "となる。"
10921
10922 #. type: Plain text
10923 #: build/C/man3/inet_net_pton.3:234
10924 msgid ""
10925 "Otherwise, if the most significant byte of the network number is greater "
10926 "than or equal to 128, then I<bits> is 16."
10927 msgstr ""
10928 "それ以外で、 ネットワーク番号の最上位バイトが 128 以上の場合、 I<bits> は 16 "
10929 "となる。"
10930
10931 #. type: Plain text
10932 #: build/C/man3/inet_net_pton.3:238
10933 msgid "Otherwise, I<bits> is 8."
10934 msgstr "それ以外の場合、 I<bits> は 8 となる。"
10935
10936 #. type: Plain text
10937 #: build/C/man3/inet_net_pton.3:247
10938 msgid ""
10939 "If the resulting I<bits> value from the above steps is greater than or equal "
10940 "to 8, but the number of octets specified in the network number exceed "
10941 "I<bits/8>, then I<bits> is set to 8 times the number of octets actually "
10942 "specified."
10943 msgstr ""
10944 "上記の手順から得られる I<bits> の値が 8 以上だが、 ネットワーク番号で指定され"
10945 "たオクテット数が I<bits/8> より大きい場合、 I<bits> には実際に指定されたオク"
10946 "テット数を 8 倍した値が設定される。"
10947
10948 #. type: Plain text
10949 #: build/C/man3/inet_net_pton.3:261
10950 msgid ""
10951 "The program below demonstrates the use of B<inet_net_pton>()  and "
10952 "B<inet_net_ntop>().  It uses B<inet_net_pton>()  to convert the presentation "
10953 "format network address provided in its first command-line argument to binary "
10954 "form, displays the return value from B<inet_net_pton>().  It then uses "
10955 "B<inet_net_ntop>()  to convert the binary form back to presentation format, "
10956 "and displays the resulting string."
10957 msgstr ""
10958 "以下のプログラムは B<inet_net_pton>() と B<inet_net_ntop>() の使用例を示すも"
10959 "のである。 B<inet_net_pton>() を使って、 コマンドラインの最初の引き数で渡され"
10960 "た表記形式のネットワークアドレスをバイナリー形式に変換し、 "
10961 "I<inet_net_pton>() の返り値を出力する。 それから B<inet_net_ntop>() を使って"
10962 "バイナリー形式を表記形式に再度戻して、結果の文字列を出力する。"
10963
10964 #. type: Plain text
10965 #: build/C/man3/inet_net_pton.3:275
10966 msgid ""
10967 "In order to demonstrate that B<inet_net_pton>()  may not write to all bytes "
10968 "of its I<netp> argument, the program allows an optional second command-line "
10969 "argument, a number used to initialize the buffer before B<inet_net_pton>()  "
10970 "is called.  As its final line of output, the program displays all of the "
10971 "bytes of the buffer returned by B<inet_net_pton>()  allowing the user to see "
10972 "which bytes have not been touched by B<inet_net_pton>()."
10973 msgstr ""
10974 "B<inet_net_pton>() が I<netp> 引き数のすべてのバイトに書き込むわけではないこ"
10975 "とを示すため、 プログラムにはオプションで 2 番目のコマンドライン引き数を指定"
10976 "することができ、 その引き数の数字を使って B<inet_net_pton>() を呼び出す前に"
10977 "バッファーを初期化する。 出力の最終行として、 ユーザーがどのバイトが "
10978 "B<inet_net_pton>() によって変更されなかったかを確認できるように、 プログラム"
10979 "は B<inet_net_pton>() が返したバッファーの全バイトを表示する。"
10980
10981 #. type: Plain text
10982 #: build/C/man3/inet_net_pton.3:279
10983 msgid ""
10984 "An example run, showing that B<inet_net_pton>()  infers the number of bits "
10985 "in the network number:"
10986 msgstr ""
10987 "この実行例では、 B<inet_net_pton>() が推測したネットワーク番号のビット数を表"
10988 "示する。"
10989
10990 #. type: Plain text
10991 #: build/C/man3/inet_net_pton.3:286
10992 #, no-wrap
10993 msgid ""
10994 "$ B<./a.out 193.168>\n"
10995 "inet_net_pton() returned: 24\n"
10996 "inet_net_ntop() yielded:  193.168.0/24\n"
10997 "Raw address:              c1a80000\n"
10998 msgstr ""
10999 "$ B<./a.out 193.168>\n"
11000 "inet_net_pton() returned: 24\n"
11001 "inet_net_ntop() yielded:  193.168.0/24\n"
11002 "Raw address:              c1a80000\n"
11003
11004 #. type: Plain text
11005 #: build/C/man3/inet_net_pton.3:292
11006 msgid ""
11007 "Demonstrate that B<inet_net_pton>()  does not zero out unused bytes in its "
11008 "result buffer:"
11009 msgstr ""
11010 "B<inet_net_pton>() が結果のバッファーの未使用バイトを 0 埋めしないことを確認"
11011 "する。"
11012
11013 #. type: Plain text
11014 #: build/C/man3/inet_net_pton.3:299
11015 #, no-wrap
11016 msgid ""
11017 "$ B<./a.out 193.168 0xffffffff>\n"
11018 "inet_net_pton() returned: 24\n"
11019 "inet_net_ntop() yielded:  193.168.0/24\n"
11020 "Raw address:              c1a800ff\n"
11021 msgstr ""
11022 "$ B<./a.out 193.168 0xffffffff>\n"
11023 "inet_net_pton() returned: 24\n"
11024 "inet_net_ntop() yielded:  193.168.0/24\n"
11025 "Raw address:              c1a800ff\n"
11026
11027 #. type: Plain text
11028 #: build/C/man3/inet_net_pton.3:307
11029 msgid ""
11030 "Demonstrate that B<inet_net_pton>()  will widen the inferred size of the "
11031 "network number, if the supplied number of bytes in the presentation string "
11032 "exceeds the inferred value:"
11033 msgstr ""
11034 "表記形式の文字列で渡されたバイト数が推測した値より大きい場合、 "
11035 "B<inet_net_pton>() が推測するネットワーク番号のサイズを広げることを確認する。"
11036
11037 #. type: Plain text
11038 #: build/C/man3/inet_net_pton.3:314
11039 #, no-wrap
11040 msgid ""
11041 "$ B<./a.out 193.168.1.128>\n"
11042 "inet_net_pton() returned: 32\n"
11043 "inet_net_ntop() yielded:  193.168.1.128/32\n"
11044 "Raw address:              c1a80180\n"
11045 msgstr ""
11046 "$ B<./a.out 193.168.1.128>\n"
11047 "inet_net_pton() returned: 32\n"
11048 "inet_net_ntop() yielded:  193.168.1.128/32\n"
11049 "Raw address:              c1a80180\n"
11050
11051 #. type: Plain text
11052 #: build/C/man3/inet_net_pton.3:322
11053 msgid ""
11054 "Explicitly specifying the size of the network number overrides any inference "
11055 "about its size (but any extra bytes that are explicitly specified will still "
11056 "be used by B<inet_net_pton>(): to populate the result buffer):"
11057 msgstr ""
11058 "ネットワーク番号のサイズが明示的に指定すると、推測されるネットワーク番号のサ"
11059 "イズが上書きされる (ただし、 明示的に指定された残りのバイトは "
11060 "B<inet_net_pton>() で使用され、結果のバッファーに書き込まれる)。"
11061
11062 #. type: Plain text
11063 #: build/C/man3/inet_net_pton.3:329
11064 #, no-wrap
11065 msgid ""
11066 "$ B<./a.out 193.168.1.128/24>\n"
11067 "inet_net_pton() returned: 24\n"
11068 "inet_net_ntop() yielded:  193.168.1/24\n"
11069 "Raw address:              c1a80180\n"
11070 msgstr ""
11071 "$ B<./a.out 193.168.1.128/24>\n"
11072 "inet_net_pton() returned: 24\n"
11073 "inet_net_ntop() yielded:  193.168.1/24\n"
11074 "Raw address:              c1a80180\n"
11075
11076 #. type: Plain text
11077 #: build/C/man3/inet_net_pton.3:334
11078 #, no-wrap
11079 msgid "/* Link with \"-lresolv\" */\n"
11080 msgstr "/* \"-lresolv\" でリンクする */\n"
11081
11082 #. type: Plain text
11083 #: build/C/man3/inet_net_pton.3:338
11084 #, no-wrap
11085 msgid ""
11086 "#include E<lt>arpa/inet.hE<gt>\n"
11087 "#include E<lt>stdio.hE<gt>\n"
11088 "#include E<lt>stdlib.hE<gt>\n"
11089 msgstr ""
11090 "#include E<lt>arpa/inet.hE<gt>\n"
11091 "#include E<lt>stdio.hE<gt>\n"
11092 "#include E<lt>stdlib.hE<gt>\n"
11093
11094 #. type: Plain text
11095 #: build/C/man3/inet_net_pton.3:341
11096 #, no-wrap
11097 msgid ""
11098 "#define errExit(msg)    do { perror(msg); exit(EXIT_FAILURE); \\e\n"
11099 "                        } while (0)\n"
11100 msgstr ""
11101 "#define errExit(msg)    do { perror(msg); exit(EXIT_FAILURE); \\e\n"
11102 "                        } while (0)\n"
11103
11104 #. type: Plain text
11105 #: build/C/man3/inet_net_pton.3:348
11106 #, no-wrap
11107 msgid ""
11108 "int\n"
11109 "main(int argc, char *argv[])\n"
11110 "{\n"
11111 "    char buf[100];\n"
11112 "    struct in_addr addr;\n"
11113 "    int bits;\n"
11114 msgstr ""
11115 "int\n"
11116 "main(int argc, char *argv[])\n"
11117 "{\n"
11118 "    char buf[100];\n"
11119 "    struct in_addr addr;\n"
11120 "    int bits;\n"
11121
11122 #. type: Plain text
11123 #: build/C/man3/inet_net_pton.3:355
11124 #, no-wrap
11125 msgid ""
11126 "    if (argc E<lt> 2) {\n"
11127 "        fprintf(stderr,\n"
11128 "                \"Usage: %s presentation-form [addr-init-value]\\en\",\n"
11129 "                argv[0]);\n"
11130 "        exit(EXIT_FAILURE);\n"
11131 "    }\n"
11132 msgstr ""
11133 "    if (argc E<lt> 2) {\n"
11134 "        fprintf(stderr,\n"
11135 "                \"Usage: %s presentation-form [addr-init-value]\\en\",\n"
11136 "                argv[0]);\n"
11137 "        exit(EXIT_FAILURE);\n"
11138 "    }\n"
11139
11140 #. type: Plain text
11141 #: build/C/man3/inet_net_pton.3:361
11142 #, no-wrap
11143 msgid ""
11144 "    /* If argv[2] is supplied (a numeric value), use it to initialize\n"
11145 "       the output buffer given to inet_net_pton(), so that we can see\n"
11146 "       that inet_net_pton() initializes only those bytes needed for\n"
11147 "       the network number. If argv[2] is not supplied, then initialize\n"
11148 "       the buffer to zero (as is recommended practice). */\n"
11149 msgstr ""
11150 "    /* argv[2] (数値) が指定されると、その数字を使って inet_net_pton()\n"
11151 "       に渡す出力バッファーを初期化する。これにより inet_net_pton() が\n"
11152 "       ネットワーク番号に必要なバイトだけを書き込むことを確認できるよう\n"
11153 "       にする。 argv[2] が指定されなかった場合、バッファーは 0 で初期化\n"
11154 "       する (これが推奨される方法である)。 */\n"
11155
11156 #. type: Plain text
11157 #: build/C/man3/inet_net_pton.3:363
11158 #, no-wrap
11159 msgid "    addr.s_addr = (argc E<gt> 2) ? strtod(argv[2], NULL) : 0;\n"
11160 msgstr "    addr.s_addr = (argc E<gt> 2) ? strtod(argv[2], NULL) : 0;\n"
11161
11162 #. type: Plain text
11163 #: build/C/man3/inet_net_pton.3:365
11164 #, no-wrap
11165 msgid "    /* Convert presentation network number in argv[1] to binary */\n"
11166 msgstr "    /* argv[1] の表記形式のネットワーク番号をバイナリー形式に変換する */\n"
11167
11168 #. type: Plain text
11169 #: build/C/man3/inet_net_pton.3:369
11170 #, no-wrap
11171 msgid ""
11172 "    bits = inet_net_pton(AF_INET, argv[1], &addr, sizeof(addr));\n"
11173 "    if (bits == -1)\n"
11174 "        errExit(\"inet_net_ntop\");\n"
11175 msgstr ""
11176 "    bits = inet_net_pton(AF_INET, argv[1], &addr, sizeof(addr));\n"
11177 "    if (bits == -1)\n"
11178 "        errExit(\"inet_net_ntop\");\n"
11179
11180 #. type: Plain text
11181 #: build/C/man3/inet_net_pton.3:371
11182 #, no-wrap
11183 msgid "    printf(\"inet_net_pton() returned: %d\\en\", bits);\n"
11184 msgstr "    printf(\"inet_net_pton() returned: %d\\en\", bits);\n"
11185
11186 #. type: Plain text
11187 #: build/C/man3/inet_net_pton.3:374
11188 #, no-wrap
11189 msgid ""
11190 "    /* Convert binary format back to presentation, using \\(aqbits\\(aq\n"
11191 "       returned by inet_net_pton() */\n"
11192 msgstr ""
11193 "    /* inet_net_pton() が返した \\(aqbits\\(aq を使って、\n"
11194 "       バイナリー形式を表記形式に変換する */\n"
11195
11196 #. type: Plain text
11197 #: build/C/man3/inet_net_pton.3:377
11198 #, no-wrap
11199 msgid ""
11200 "    if (inet_net_ntop(AF_INET, &addr, bits, buf, sizeof(buf)) == NULL)\n"
11201 "        errExit(\"inet_net_ntop\");\n"
11202 msgstr ""
11203 "    if (inet_net_ntop(AF_INET, &addr, bits, buf, sizeof(buf)) == NULL)\n"
11204 "        errExit(\"inet_net_ntop\");\n"
11205
11206 #. type: Plain text
11207 #: build/C/man3/inet_net_pton.3:379
11208 #, no-wrap
11209 msgid "    printf(\"inet_net_ntop() yielded:  %s\\en\", buf);\n"
11210 msgstr "    printf(\"inet_net_ntop() yielded:  %s\\en\", buf);\n"
11211
11212 #. type: Plain text
11213 #: build/C/man3/inet_net_pton.3:384
11214 #, no-wrap
11215 msgid ""
11216 "    /* Display \\(aqaddr\\(aq in raw form (in network byte order), so we can\n"
11217 "       see bytes not displayed by inet_net_ntop(); some of those bytes\n"
11218 "       may not have been touched by inet_net_ntop(), and so will still\n"
11219 "       have any initial value that was specified in argv[2]. */\n"
11220 msgstr ""
11221 "    /* \\(aqaddr\\(aq を名前の形で (ネットワークバイトオーダーで) 表示する。\n"
11222 "       これにより inet_net_ntop() が表示しないバイトを確認できる。\n"
11223 "       これらのバイトの一部は inet_net_ntop() では変更されない場合があり、\n"
11224 "       その場合 argv[2] で指定された初期値のままになる。 */\n"
11225
11226 #. type: Plain text
11227 #: build/C/man3/inet_net_pton.3:386
11228 #, no-wrap
11229 msgid "    printf(\"Raw address:              %x\\en\", htonl(addr.s_addr));\n"
11230 msgstr "    printf(\"Raw address:              %x\\en\", htonl(addr.s_addr));\n"
11231
11232 #. type: Plain text
11233 #: build/C/man3/inet_net_pton.3:393
11234 msgid "B<inet>(3), B<networks>(5)"
11235 msgstr "B<inet>(3), B<networks>(5)"
11236
11237 #. type: TH
11238 #: build/C/man3/inet_ntop.3:26
11239 #, no-wrap
11240 msgid "INET_NTOP"
11241 msgstr "INET_NTOP"
11242
11243 #. type: TH
11244 #: build/C/man3/inet_ntop.3:26
11245 #, no-wrap
11246 msgid "2008-11-11"
11247 msgstr "2008-11-11"
11248
11249 #. type: Plain text
11250 #: build/C/man3/inet_ntop.3:29
11251 msgid "inet_ntop - convert IPv4 and IPv6 addresses from binary to text form"
11252 msgstr "inet_ntop - IPv4/IPv6 アドレスをバイナリ形式からテキスト形式に変換する"
11253
11254 #. type: Plain text
11255 #: build/C/man3/inet_ntop.3:35
11256 #, no-wrap
11257 msgid ""
11258 "B<const char *inet_ntop(int >I<af>B<, const void *>I<src>B<,>\n"
11259 "B<                      char *>I<dst>B<, socklen_t >I<size>B<);>\n"
11260 msgstr ""
11261 "B<const char *inet_ntop(int >I<af>B<, const void *>I<src>B<,>\n"
11262 "B<                      char *>I<dst>B<, socklen_t >I<size>B<);>\n"
11263
11264 #. type: Plain text
11265 #: build/C/man3/inet_ntop.3:48
11266 msgid ""
11267 "This function converts the network address structure I<src> in the I<af> "
11268 "address family into a character string.  The resulting string is copied to "
11269 "the buffer pointed to by I<dst>, which must be a non-null pointer.  The "
11270 "caller specifies the number of bytes available in this buffer in the "
11271 "argument I<size>."
11272 msgstr ""
11273 "この関数は、 I<af> アドレスファミリーのネットワークアドレス構造体 I<src> を文"
11274 "字列に変換する。 変換結果の文字列は、 I<dst> が指すバッファーにコピーされ"
11275 "る。 I<dst> は NULL でないポインターでなければならない。 呼び出し時に、この"
11276 "バッファーで利用できるバイト数を 引き数 I<size> に指定する。"
11277
11278 #. type: Plain text
11279 #: build/C/man3/inet_ntop.3:57
11280 msgid ""
11281 "B<inet_ntop>()  extends the B<inet_ntoa>(3)  function to support multiple "
11282 "address families, B<inet_ntoa>(3)  is now considered to be deprecated in "
11283 "favor of B<inet_ntop>().  The following address families are currently "
11284 "supported:"
11285 msgstr ""
11286 "B<inet_ntop>()  は B<inet_ntoa>(3)  関数を拡張して複数のアドレスファミリーを"
11287 "扱えるようにしたものである。 今後は B<inet_ntoa>(3)  は使わず、 "
11288 "B<inet_ntop>()  を使うようにすると良いだろう。 現在サポートされているアドレス"
11289 "ファミリーは以下の通り:"
11290
11291 #. type: Plain text
11292 #: build/C/man3/inet_ntop.3:70
11293 msgid ""
11294 "I<src> points to a I<struct in_addr> (in network byte order)  which is "
11295 "converted to an IPv4 network address in the dotted-decimal format, \"I<ddd."
11296 "ddd.ddd.ddd>\".  The buffer I<dst> must be at least B<INET_ADDRSTRLEN> bytes "
11297 "long."
11298 msgstr ""
11299 "この場合 I<src> は (ネットワークバイトオーダーの)  I<struct in_addr> へのポイ"
11300 "ンターとみなされ、この構造体の内容が ドット区切りの 10 進数形式 \"I<ddd.ddd."
11301 "ddd.ddd>\" の IPv4 ネットワークアドレスに変換される。 バッファー I<dst> は少"
11302 "なくとも B<INET_ADDRSTRLEN> バイトの長さを持たなければならない。"
11303
11304 #. type: Plain text
11305 #: build/C/man3/inet_ntop.3:83
11306 msgid ""
11307 "I<src> points to a I<struct in6_addr> (in network byte order)  which is "
11308 "converted to a representation of this address in the most appropriate IPv6 "
11309 "network address format for this address.  The buffer I<dst> must be at least "
11310 "B<INET6_ADDRSTRLEN> bytes long."
11311 msgstr ""
11312 "この場合 I<src> は (ネットワークバイトオーダーの)  I<struct in6_addr> へのポ"
11313 "インターとみなされ、この構造体の内容が、 (このアドレスに対してもっとも適切"
11314 "な)  IPv6 ネットワークアドレスの表示形式に変換される。 バッファー I<dst> は少"
11315 "なくとも B<INET6_ADDRSTRLEN> バイトの長さを持たなければならない。"
11316
11317 #. type: Plain text
11318 #: build/C/man3/inet_ntop.3:91
11319 msgid ""
11320 "On success, B<inet_ntop>()  returns a non-null pointer to I<dst>.  NULL is "
11321 "returned if there was an error, with I<errno> set to indicate the error."
11322 msgstr ""
11323 "成功すると、 B<inet_ntop>()  は I<dst> への (NULL でない) ポインターを返す。 "
11324 "エラーがあった場合は NULL を返し、 I<errno> をエラーを示す値に適切に設定す"
11325 "る。"
11326
11327 #. type: Plain text
11328 #: build/C/man3/inet_ntop.3:96
11329 msgid "I<af> was not a valid address family."
11330 msgstr "I<af> がサポートされているアドレスファミリーでなかった。"
11331
11332 #. type: TP
11333 #: build/C/man3/inet_ntop.3:96
11334 #, no-wrap
11335 msgid "B<ENOSPC>"
11336 msgstr "B<ENOSPC>"
11337
11338 #. type: Plain text
11339 #: build/C/man3/inet_ntop.3:100
11340 msgid "The converted address string would exceed the size given by I<size>."
11341 msgstr ""
11342 "変換されたアドレス文字列の長さが I<size> で指定されたサイズを超過してしまう。"
11343
11344 #.  2.1.3: size_t, 2.1.91: socklen_t
11345 #. type: Plain text
11346 #: build/C/man3/inet_ntop.3:112
11347 msgid ""
11348 "POSIX.1-2001.  Note that RFC\\ 2553 defines a prototype where the last "
11349 "argument I<size> is of type I<size_t>.  Many systems follow RFC\\ 2553.  "
11350 "Glibc 2.0 and 2.1 have I<size_t>, but 2.2 and later have I<socklen_t>."
11351 msgstr ""
11352 "POSIX.1-2001.  RFC\\ 2553 では最後の引き数 I<size> のプロトタイプを "
11353 "I<size_t> 型と定義している。多くのシステムでは RFC\\ 2553 にしたがっている。 "
11354 "glibc 2.0 と 2.1 では I<size_t> だが、 glibc 2.2 以降では I<socklen_t> となっ"
11355 "ている。"
11356
11357 #. type: Plain text
11358 #: build/C/man3/inet_ntop.3:115
11359 msgid "B<AF_INET6> converts IPv4-mapped IPv6 addresses into an IPv6 format."
11360 msgstr ""
11361 "B<AF_INET6> は IPv4 がマップされた IPv6 アドレスを IPv6 形式に変換してしま"
11362 "う。"
11363
11364 #. type: Plain text
11365 #: build/C/man3/inet_ntop.3:118
11366 msgid "See B<inet_pton>(3)."
11367 msgstr "B<inet_pton>(3)  を参照。"
11368
11369 #. type: Plain text
11370 #: build/C/man3/inet_ntop.3:122
11371 msgid "B<getnameinfo>(3), B<inet>(3), B<inet_pton>(3)"
11372 msgstr "B<getnameinfo>(3), B<inet>(3), B<inet_pton>(3)"
11373
11374 #. type: TH
11375 #: build/C/man3/inet_pton.3:27
11376 #, no-wrap
11377 msgid "INET_PTON"
11378 msgstr "INET_PTON"
11379
11380 #. type: TH
11381 #: build/C/man3/inet_pton.3:27
11382 #, no-wrap
11383 msgid "2008-06-18"
11384 msgstr "2008-06-18"
11385
11386 #. type: Plain text
11387 #: build/C/man3/inet_pton.3:30
11388 msgid "inet_pton - convert IPv4 and IPv6 addresses from text to binary form"
11389 msgstr "inet_pton - IPv4/IPv6 アドレスをテキスト形式からバイナリ形式に変換する"
11390
11391 #. type: Plain text
11392 #: build/C/man3/inet_pton.3:35
11393 #, no-wrap
11394 msgid "B<int inet_pton(int >I<af>B<, const char *>I<src>B<, void *>I<dst>B<);>\n"
11395 msgstr "B<int inet_pton(int >I<af>B<, const char *>I<src>B<, void *>I<dst>B<);>\n"
11396
11397 #. type: Plain text
11398 #: build/C/man3/inet_pton.3:51
11399 msgid ""
11400 "This function converts the character string I<src> into a network address "
11401 "structure in the I<af> address family, then copies the network address "
11402 "structure to I<dst>.  The I<af> argument must be either B<AF_INET> or "
11403 "B<AF_INET6>."
11404 msgstr ""
11405 "この関数は文字列 I<src> を、アドレスファミリー I<af> のネットワークアドレス構"
11406 "造体に変換し、 I<dst> にコピーする。 I<af> 引き数は B<AF_INET> か "
11407 "B<AF_INET6> のどちらかでなければならない。"
11408
11409 #. type: Plain text
11410 #: build/C/man3/inet_pton.3:53
11411 msgid "The following address families are currently supported:"
11412 msgstr "現在サポートされているアドレスファミリーは以下の通りである。"
11413
11414 #. type: Plain text
11415 #: build/C/man3/inet_pton.3:67
11416 msgid ""
11417 "I<src> points to a character string containing an IPv4 network address in "
11418 "dotted-decimal format, \"I<ddd.ddd.ddd.ddd>\", where I<ddd> is a decimal "
11419 "number of up to three digits in the range 0 to 255.  The address is "
11420 "converted to a I<struct in_addr> and copied to I<dst>, which must be "
11421 "I<sizeof(struct in_addr)> (4) bytes (32 bits) long."
11422 msgstr ""
11423 "I<src> はドット区切りの 10 進数形式 \"I<ddd.ddd.ddd.ddd>\" の IPv4 ネットワー"
11424 "クアドレス文字列へのポインターである。 I<ddd> は 0 から 255 までの範囲の最大 "
11425 "3 桁の 10 進数である。 このアドレスは I<struct in_addr> に変換されて I<dst> "
11426 "にコピーされる。 I<dst> の長さは I<sizeof(struct in_addr)> (4) バイト (32ビッ"
11427 "ト) でなければならない。"
11428
11429 #. type: Plain text
11430 #: build/C/man3/inet_pton.3:79
11431 msgid ""
11432 "I<src> points to a character string containing an IPv6 network address.  The "
11433 "address is converted to a I<struct in6_addr> and copied to I<dst>, which "
11434 "must be I<sizeof(struct in6_addr)> (16) bytes (128 bits) long.  The allowed "
11435 "formats for IPv6 addresses follow these rules:"
11436 msgstr ""
11437 "I<src> は IPv6 ネットワークアドレスが格納された文字列へのポインターである。 "
11438 "このアドレスは I<struct in6_addr> に変換されて I<dst> にコピーされる。 "
11439 "I<dst> の長さは I<sizeof(struct in6_addr)> (16) バイト (128 ビット) でなけれ"
11440 "ばならない。 以下の 3 つのルールにしたがった形式が IPv6 アドレスとして入力で"
11441 "きる。"
11442
11443 #. type: IP
11444 #: build/C/man3/inet_pton.3:80
11445 #, no-wrap
11446 msgid "1."
11447 msgstr "1."
11448
11449 #. type: Plain text
11450 #: build/C/man3/inet_pton.3:87
11451 msgid ""
11452 "The preferred format is I<x:x:x:x:x:x:x:x>.  This form consists of eight "
11453 "hexadecimal numbers, each of which expresses a 16-bit value (i.e., each I<x> "
11454 "can be up to 4 hex digits)."
11455 msgstr ""
11456 "推奨形式は I<x:x:x:x:x:x:x:x> である。この形式は 8 個の 16 進数から構成さ"
11457 "れ、 各々の 16 進数は 16 ビット値を表す (I<x> は最大 4 桁の 16 進数である)。"
11458
11459 #. type: IP
11460 #: build/C/man3/inet_pton.3:87
11461 #, no-wrap
11462 msgid "2."
11463 msgstr "2."
11464
11465 #. type: Plain text
11466 #: build/C/man3/inet_pton.3:100
11467 msgid ""
11468 "A series of contiguous zero values in the preferred format can be "
11469 "abbreviated to I<::>.  Only one instance of I<::> can occur in an address.  "
11470 "For example, the loopback address I<0:0:0:0:0:0:0:1> can be abbreviated as "
11471 "I<::1>.  The wildcard address, consisting of all zeros, can be written as "
11472 "I<::>."
11473 msgstr ""
11474 "推奨形式の中の連続する 0 の列は I<::> に短縮できる。アドレス中で使用できる "
11475 "I<::> は 1 個だけである。 例えば、ループバックアドレス I<0:0:0:0:0:0:0:1> は "
11476 "I<::1> と短縮できる。 全ビットが 0 で構成されるワイルドカードアドレスは I<::"
11477 "> と記載できる。"
11478
11479 #. type: IP
11480 #: build/C/man3/inet_pton.3:100
11481 #, no-wrap
11482 msgid "3."
11483 msgstr "3."
11484
11485 #. type: Plain text
11486 #: build/C/man3/inet_pton.3:113
11487 msgid ""
11488 "An alternate format is useful for expressing IPv4-mapped IPv6 addresses.  "
11489 "This form is written as I<x:x:x:x:x:x:d.d.d.d>, where the six leading I<x>s "
11490 "are hexadecimal values that define the six most-significant 16-bit pieces of "
11491 "the address (i.e., 96 bits), and the I<d>s express a value in dotted-decimal "
11492 "notation that defines the least significant 32 bits of the address.  An "
11493 "example of such an address is I<::FFFF:204.152.189.116>."
11494 msgstr ""
11495 "IPv4 をマッピングした IPv6 アドレスを表記するには別の形式が便利である。 この"
11496 "別の形式は I<x:x:x:x:x:x:d.d.d.d> と書くことができる。 最初の 6 個の I<x> は"
11497 "アドレスを 16 ビット単位に区切ったときの上位側 6 個分 (つまり 96 ビット分)  "
11498 "を定義する 16 進数であり、 I<d> の部分はアドレスの下位 32 ビットをドット区切"
11499 "りの 10 進数表記で表したものである。 I<::FFFF:204.152.189.116> はこの形式の例"
11500 "である。"
11501
11502 #. type: Plain text
11503 #: build/C/man3/inet_pton.3:116
11504 msgid ""
11505 "See RFC 2373 for further details on the representation of IPv6 addresses."
11506 msgstr "IPv6 アドレスの表現方法の詳細については RFC 2373 を参照のこと。"
11507
11508 #. type: Plain text
11509 #: build/C/man3/inet_pton.3:129
11510 msgid ""
11511 "B<inet_pton>()  returns 1 on success (network address was successfully "
11512 "converted).  0 is returned if I<src> does not contain a character string "
11513 "representing a valid network address in the specified address family.  If "
11514 "I<af> does not contain a valid address family, -1 is returned and I<errno> "
11515 "is set to B<EAFNOSUPPORT>."
11516 msgstr ""
11517 "成功する (ネットワークアドレスが正常に変換される) と、 B<inet_pton>()  は 1 "
11518 "を返す。 I<src> が指定されたアドレスファミリーに対する 正しいネットワークアド"
11519 "レス表記でない場合には、 0 を返す。 I<af> がサポートされているアドレスファミ"
11520 "リーでない場合には、 -1 を返し、 I<errno> に B<EAFNOSUPPORT> を設定する。"
11521
11522 #. type: Plain text
11523 #: build/C/man3/inet_pton.3:150
11524 msgid ""
11525 "Unlike B<inet_aton>(3)  and B<inet_addr>(3), B<inet_pton>()  supports IPv6 "
11526 "addresses.  On the other hand, B<inet_pton>()  accepts only IPv4 addresses "
11527 "in dotted-decimal notation, whereas B<inet_aton>(3)  and B<inet_addr>(3)  "
11528 "allow the more general numbers-and-dots notation (hexadecimal and octal "
11529 "number formats, and formats that don't require all four bytes to be "
11530 "explicitly written).  For an interface that handles both IPv6 addresses, and "
11531 "IPv4 addresses in numbers-and-dots notation, see B<getaddrinfo>(3)."
11532 msgstr ""
11533 "B<inet_aton>(3)  や B<inet_addr>(3)  と異なり、 B<inet_pton>()  は IPv6 アド"
11534 "レスに対応している。 一方で、 B<inet_pton>()  が受け付ける IPv4 アドレスは"
11535 "ドット区切りの 10 進数表記だけである。 これに対し、 B<inet_aton>(3)  や "
11536 "B<inet_addr>(3)  ではもっと一般的なドット区切りの数字表記 (16 進数や 8 進数の"
11537 "形式や、 4 バイト全てを明示的に書かなくてもよい形式) が使用できる。 ドット区"
11538 "切りの数字表記で IPv6 アドレスと IPv4 アドレスの両方を扱える インターフェイス"
11539 "については、 B<getaddrinfo>(3)  を参照のこと。"
11540
11541 #. type: Plain text
11542 #: build/C/man3/inet_pton.3:156
11543 msgid ""
11544 "B<AF_INET6> does not recognize IPv4 addresses.  An explicit IPv4-mapped IPv6 "
11545 "address must be supplied in I<src> instead."
11546 msgstr ""
11547 "B<AF_INET6> は IPv4 アドレスを認識しない。 代わりに IPv4 アドレスをマッピング"
11548 "した IPv6 アドレスを I<src> に与えなければならない。"
11549
11550 #. type: Plain text
11551 #: build/C/man3/inet_pton.3:162
11552 msgid ""
11553 "The program below demonstrates the use of B<inet_pton>()  and "
11554 "B<inet_ntop>(3).  Here are some example runs:"
11555 msgstr ""
11556 "以下のプログラムは B<inet_pton>()  と B<inet_ntop>(3)  の使用例を示すものであ"
11557 "る。 実行すると以下のようになる。"
11558
11559 #. type: Plain text
11560 #: build/C/man3/inet_pton.3:171
11561 #, no-wrap
11562 msgid ""
11563 "$B< ./a.out i6 0:0:0:0:0:0:0:0>\n"
11564 "::\n"
11565 "$B< ./a.out i6 1:0:0:0:0:0:0:8>\n"
11566 "1::8\n"
11567 "$B< ./a.out i6 0:0:0:0:0:FFFF:204.152.189.116>\n"
11568 "::ffff:204.152.189.116\n"
11569 msgstr ""
11570 "$B< ./a.out i6 0:0:0:0:0:0:0:0>\n"
11571 "::\n"
11572 "$B< ./a.out i6 1:0:0:0:0:0:0:8>\n"
11573 "1::8\n"
11574 "$B< ./a.out i6 0:0:0:0:0:FFFF:204.152.189.116>\n"
11575 "::ffff:204.152.189.116\n"
11576
11577 #. type: Plain text
11578 #: build/C/man3/inet_pton.3:180
11579 #, no-wrap
11580 msgid ""
11581 "#include E<lt>arpa/inet.hE<gt>\n"
11582 "#include E<lt>stdio.hE<gt>\n"
11583 "#include E<lt>stdlib.hE<gt>\n"
11584 "#include E<lt>string.hE<gt>\n"
11585 msgstr ""
11586 "#include E<lt>arpa/inet.hE<gt>\n"
11587 "#include E<lt>stdio.hE<gt>\n"
11588 "#include E<lt>stdlib.hE<gt>\n"
11589 "#include E<lt>string.hE<gt>\n"
11590
11591 #. type: Plain text
11592 #: build/C/man3/inet_pton.3:187
11593 #, no-wrap
11594 msgid ""
11595 "int\n"
11596 "main(int argc, char *argv[])\n"
11597 "{\n"
11598 "    unsigned char buf[sizeof(struct in6_addr)];\n"
11599 "    int domain, s;\n"
11600 "    char str[INET6_ADDRSTRLEN];\n"
11601 msgstr ""
11602 "int\n"
11603 "main(int argc, char *argv[])\n"
11604 "{\n"
11605 "    unsigned char buf[sizeof(struct in6_addr)];\n"
11606 "    int domain, s;\n"
11607 "    char str[INET6_ADDRSTRLEN];\n"
11608
11609 #. type: Plain text
11610 #: build/C/man3/inet_pton.3:192
11611 #, no-wrap
11612 msgid ""
11613 "    if (argc != 3) {\n"
11614 "        fprintf(stderr, \"Usage: %s {i4|i6|E<lt>numE<gt>} string\\en\", argv[0]);\n"
11615 "        exit(EXIT_FAILURE);\n"
11616 "    }\n"
11617 msgstr ""
11618 "    if (argc != 3) {\n"
11619 "        fprintf(stderr, \"Usage: %s {i4|i6|E<lt>numE<gt>} string\\en\", argv[0]);\n"
11620 "        exit(EXIT_FAILURE);\n"
11621 "    }\n"
11622
11623 #. type: Plain text
11624 #: build/C/man3/inet_pton.3:195
11625 #, no-wrap
11626 msgid ""
11627 "    domain = (strcmp(argv[1], \"i4\") == 0) ? AF_INET :\n"
11628 "             (strcmp(argv[1], \"i6\") == 0) ? AF_INET6 : atoi(argv[1]);\n"
11629 msgstr ""
11630 "    domain = (strcmp(argv[1], \"i4\") == 0) ? AF_INET :\n"
11631 "             (strcmp(argv[1], \"i6\") == 0) ? AF_INET6 : atoi(argv[1]);\n"
11632
11633 #. type: Plain text
11634 #: build/C/man3/inet_pton.3:204
11635 #, no-wrap
11636 msgid ""
11637 "    s = inet_pton(domain, argv[2], buf);\n"
11638 "    if (s E<lt>= 0) {\n"
11639 "        if (s == 0)\n"
11640 "            fprintf(stderr, \"Not in presentation format\");\n"
11641 "        else\n"
11642 "            perror(\"inet_pton\");\n"
11643 "        exit(EXIT_FAILURE);\n"
11644 "    }\n"
11645 msgstr ""
11646 "    s = inet_pton(domain, argv[2], buf);\n"
11647 "    if (s E<lt>= 0) {\n"
11648 "        if (s == 0)\n"
11649 "            fprintf(stderr, \"Not in presentation format\");\n"
11650 "        else\n"
11651 "            perror(\"inet_pton\");\n"
11652 "        exit(EXIT_FAILURE);\n"
11653 "    }\n"
11654
11655 #. type: Plain text
11656 #: build/C/man3/inet_pton.3:209
11657 #, no-wrap
11658 msgid ""
11659 "    if (inet_ntop(domain, buf, str, INET6_ADDRSTRLEN) == NULL) {\n"
11660 "        perror(\"inet_ntop\");\n"
11661 "        exit(EXIT_FAILURE);\n"
11662 "    }\n"
11663 msgstr ""
11664 "    if (inet_ntop(domain, buf, str, INET6_ADDRSTRLEN) == NULL) {\n"
11665 "        perror(\"inet_ntop\");\n"
11666 "        exit(EXIT_FAILURE);\n"
11667 "    }\n"
11668
11669 #. type: Plain text
11670 #: build/C/man3/inet_pton.3:211
11671 #, no-wrap
11672 msgid "    printf(\"%s\\en\", str);\n"
11673 msgstr "    printf(\"%s\\en\", str);\n"
11674
11675 #. type: Plain text
11676 #: build/C/man3/inet_pton.3:219
11677 msgid "B<getaddrinfo>(3), B<inet>(3), B<inet_ntop>(3)"
11678 msgstr "B<getaddrinfo>(3), B<inet>(3), B<inet_ntop>(3)"
11679
11680 #. type: TH
11681 #: build/C/man7/ip.7:36
11682 #, no-wrap
11683 msgid "IP"
11684 msgstr "IP"
11685
11686 #. type: TH
11687 #: build/C/man7/ip.7:36
11688 #, no-wrap
11689 msgid "2014-05-10"
11690 msgstr "2014-05-10"
11691
11692 #. type: Plain text
11693 #: build/C/man7/ip.7:39
11694 msgid "ip - Linux IPv4 protocol implementation"
11695 msgstr "ip - Linux IPv4 プロトコルの実装"
11696
11697 #. type: Plain text
11698 #: build/C/man7/ip.7:45 build/C/man7/ipv6.7:93 build/C/man7/raw.7:20
11699 #: build/C/man7/tcp.7:83 build/C/man7/udp.7:19
11700 msgid "B<#include E<lt>netinet/in.hE<gt>>"
11701 msgstr "B<#include E<lt>netinet/in.hE<gt>>"
11702
11703 #. type: Plain text
11704 #: build/C/man7/ip.7:47
11705 msgid "B<#include E<lt>netinet/ip.hE<gt> >/* superset of previous */"
11706 msgstr "B<#include E<lt>netinet/ip.hE<gt> >/* 上記のスーパーセット */"
11707
11708 #. type: Plain text
11709 #: build/C/man7/ip.7:49
11710 msgid "I<tcp_socket>B< = socket(AF_INET, SOCK_STREAM, 0);>"
11711 msgstr "I<tcp_socket>B< = socket(AF_INET, SOCK_STREAM, 0);>"
11712
11713 #. type: Plain text
11714 #: build/C/man7/ip.7:51
11715 msgid "I<udp_socket>B< = socket(AF_INET, SOCK_DGRAM, 0);>"
11716 msgstr "I<udp_socket>B< = socket(AF_INET, SOCK_DGRAM, 0);>"
11717
11718 #. type: Plain text
11719 #: build/C/man7/ip.7:53
11720 msgid "I<raw_socket>B< = socket(AF_INET, SOCK_RAW, >I<protocol>B<);>"
11721 msgstr "I<raw_socket>B< = socket(AF_INET, SOCK_RAW, >I<protocol>B<);>"
11722
11723 #.  FIXME . has someone verified that 2.1 is really 1812 compliant?
11724 #. type: Plain text
11725 #: build/C/man7/ip.7:60
11726 msgid ""
11727 "Linux implements the Internet Protocol, version 4, described in RFC\\ 791 "
11728 "and RFC\\ 1122.  B<ip> contains a level 2 multicasting implementation "
11729 "conforming to RFC\\ 1112.  It also contains an IP router including a packet "
11730 "filter."
11731 msgstr ""
11732 "Linux は RFC\\ 791 と RFC\\ 1122 で記述されている Internet Protocol, version "
11733 "4 を実装している。 B<ip> には RFC\\ 1112 に準拠した level 2 マルチキャストの"
11734 "実装が含まれている。 またパケットフィルタ機能を含む IP ルーターも実装されてい"
11735 "る。"
11736
11737 #. type: Plain text
11738 #: build/C/man7/ip.7:64
11739 msgid ""
11740 "The programming interface is BSD-sockets compatible.  For more information "
11741 "on sockets, see B<socket>(7)."
11742 msgstr ""
11743 "プログラミングインターフェースは BSD ソケットと互換である。 ソケットに関する"
11744 "より詳細な情報は B<socket>(7)  を参照のこと。"
11745
11746 #. type: Plain text
11747 #: build/C/man7/ip.7:95
11748 msgid ""
11749 "An IP socket is created by calling the B<socket>(2)  function as "
11750 "B<socket(AF_INET, >I<socket_type>B<, >I<protocol>B<)>.  Valid socket types "
11751 "are B<SOCK_STREAM> to open a B<tcp>(7)  socket, B<SOCK_DGRAM> to open a "
11752 "B<udp>(7)  socket, or B<SOCK_RAW> to open a B<raw>(7)  socket to access the "
11753 "IP protocol directly.  I<protocol> is the IP protocol in the IP header to be "
11754 "received or sent.  The only valid values for I<protocol> are 0 and "
11755 "B<IPPROTO_TCP> for TCP sockets, and 0 and B<IPPROTO_UDP> for UDP sockets.  "
11756 "For B<SOCK_RAW> you may specify a valid IANA IP protocol defined in RFC\\ "
11757 "1700 assigned numbers."
11758 msgstr ""
11759 "IP ソケットは、 B<socket>(2) 関数を B<socket(AF_INET, >I<socket_type>B<, >\n"
11760 "I<protocol>B<)> のように呼び出すことで生成される。指定できるソケットタイプ"
11761 "は\n"
11762 "3 つあり、 B<tcp>(7) ソケットをオープンする場合 B<SOCK_STREAM>、 B<udp>(7)\n"
11763 "ソケットをオープンする場合 B<SOCK_DGRAM>、 IP プロトコルに直接アクセスする\n"
11764 "ために B<raw>(7) ソケットをオープンする場合には B<SOCK_RAW> である。 \n"
11765 "I<protocol> は送受信される IP ヘッダーに書かれる IP プロトコルである。\n"
11766 "指定できる値は、 TCP ソケットには 0 か B<IPPROTO_TCP>、 UDP ソケットには \n"
11767 "0 か B<IPPROTO_UDP> に限られる。 B<SOCK_RAW> に対しては、 RFC\\ 1700 で定義\n"
11768 "されている有効な IANA IP プロトコルを、 割り当てられている番号で指定する\n"
11769 "ことができる。"
11770
11771 #. type: Plain text
11772 #: build/C/man7/ip.7:117
11773 msgid ""
11774 "When a process wants to receive new incoming packets or connections, it "
11775 "should bind a socket to a local interface address using B<bind>(2).  In this "
11776 "case, only one IP socket may be bound to any given local (address, port) "
11777 "pair.  When B<INADDR_ANY> is specified in the bind call, the socket will be "
11778 "bound to I<all> local interfaces.  When B<listen>(2)  is called on an "
11779 "unbound socket, the socket is automatically bound to a random free port with "
11780 "the local address set to B<INADDR_ANY>.  When B<connect>(2)  is called on an "
11781 "unbound socket, the socket is automatically bound to a random free port or "
11782 "to a usable shared port with the local address set to B<INADDR_ANY>."
11783 msgstr ""
11784 "あるプロセスで、やってくるパケットを受信したり 接続要求を受けたりしたい場合に"
11785 "は、 そのプロセスはローカルなインターフェースアドレスに、 B<bind>(2) を用いて"
11786 "ソケットをバインドしなければならない。 この場合、 ローカルの「アドレスとポー"
11787 "ト」のペアに対してバインドできる IP ソケットは一つだけである。 B<bind>(2) の"
11788 "呼び出しで B<INADDR_ANY> が指定されていた場合は、 ソケットは I<すべて> のロー"
11789 "カルインターフェースにバインドされる。 B<listen>(2) がバインドされていないソ"
11790 "ケットに対してコールされると、 そのソケットは、 ローカルポートはランダムに選"
11791 "択された空いているポートで、 ローカルアドレスは B<INADDR_ANY> で自動的にバイ"
11792 "ンドされる。 B<connect>(2) がバインドされていないソケットに対してコールされる"
11793 "と、 そのソケットは、 ローカルポートはランダムに選択された空いているポートか"
11794 "未使用の共有ポートで、 ローカルアドレスは B<INADDR_ANY> で自動的にバインドさ"
11795 "れる。"
11796
11797 #. type: Plain text
11798 #: build/C/man7/ip.7:123
11799 msgid ""
11800 "A TCP local socket address that has been bound is unavailable for some time "
11801 "after closing, unless the B<SO_REUSEADDR> flag has been set.  Care should be "
11802 "taken when using this flag as it makes TCP less reliable."
11803 msgstr ""
11804 "B<SO_REUSEADDR> フラグがセットされていない場合には、 バインドされていた TCP "
11805 "ローカルソケットアドレスは クローズされた後しばらくの間使えなくなる。 "
11806 "B<SO_REUSEADDR> フラグを使うと TCP の信頼性を低下させるので、 使うときには注"
11807 "意が必要である。"
11808
11809 #. type: Plain text
11810 #: build/C/man7/ip.7:134
11811 msgid ""
11812 "An IP socket address is defined as a combination of an IP interface address "
11813 "and a 16-bit port number.  The basic IP protocol does not supply port "
11814 "numbers, they are implemented by higher level protocols like B<udp>(7)  and "
11815 "B<tcp>(7).  On raw sockets I<sin_port> is set to the IP protocol."
11816 msgstr ""
11817 "IP ソケットアドレスは、 IP インターフェースアドレスと 16ビットのポート番号の"
11818 "組み合わせで定義される。 IP プロトコルそのものはポート番号を扱わない。 ポート"
11819 "番号は、 B<udp>(7)  や B<tcp>(7)  といった、上位のプロトコルで実装される。 "
11820 "raw ソケットでは、 I<sin_port> が IP プロトコルにセットされる。"
11821
11822 #. type: Plain text
11823 #: build/C/man7/ip.7:142
11824 #, no-wrap
11825 msgid ""
11826 "struct sockaddr_in {\n"
11827 "    sa_family_t    sin_family; /* address family: AF_INET */\n"
11828 "    in_port_t      sin_port;   /* port in network byte order */\n"
11829 "    struct in_addr sin_addr;   /* internet address */\n"
11830 "};\n"
11831 msgstr ""
11832 "struct sockaddr_in {\n"
11833 "    sa_family_t    sin_family; /* address family: AF_INET */\n"
11834 "    in_port_t      sin_port;   /* port in network byte order */\n"
11835 "    struct in_addr sin_addr;   /* internet address */\n"
11836 "};\n"
11837
11838 #. type: Plain text
11839 #: build/C/man7/ip.7:147
11840 #, no-wrap
11841 msgid ""
11842 "/* Internet address. */\n"
11843 "struct in_addr {\n"
11844 "    uint32_t       s_addr;     /* address in network byte order */\n"
11845 "};\n"
11846 msgstr ""
11847 "/* Internet address. */\n"
11848 "struct in_addr {\n"
11849 "    uint32_t       s_addr;     /* address in network byte order */\n"
11850 "};\n"
11851
11852 #. type: Plain text
11853 #: build/C/man7/ip.7:172
11854 msgid ""
11855 "I<sin_family> is always set to B<AF_INET>.  This is required; in Linux 2.2 "
11856 "most networking functions return B<EINVAL> when this setting is missing.  "
11857 "I<sin_port> contains the port in network byte order.  The port numbers below "
11858 "1024 are called I<privileged ports> (or sometimes: I<reserved ports>).  Only "
11859 "privileged processes (i.e., those having the B<CAP_NET_BIND_SERVICE> "
11860 "capability) may B<bind>(2)  to these sockets.  Note that the raw IPv4 "
11861 "protocol as such has no concept of a port, they are implemented only by "
11862 "higher protocols like B<tcp>(7)  and B<udp>(7)."
11863 msgstr ""
11864 "I<sin_familiy> には常に B<AF_INET> をセットする。これは必須である。 Linux "
11865 "2.2 では、このセットを忘れると ほとんどのネットワーク関数は B<EINVAL> を返す"
11866 "ようになっている。 I<sin_port> にはポート番号をネットワークバイトオーダーで指"
11867 "定する。 1024 未満のポート番号は I<特権ポート (privileged ports)> と呼ばれる "
11868 "(I<予約ポート (reserved ports)> とも時々呼ばれる)。 特権プロセス "
11869 "(B<CAP_NET_BIND_SERVICE> ケーパビリティを持つプロセス) 以外のプロセスは、これ"
11870 "らのポートには B<bind>(2)  できない。 IPv4 プロトコルそのものにはポートに関す"
11871 "る概念がない。ポートが実装されるのは、 B<tcp>(7)  や B<udp>(7) といった、上位"
11872 "のプロトコルにおいてのみである。"
11873
11874 #. type: Plain text
11875 #: build/C/man7/ip.7:191
11876 msgid ""
11877 "I<sin_addr> is the IP host address.  The I<s_addr> member of I<struct "
11878 "in_addr> contains the host interface address in network byte order.  "
11879 "I<in_addr> should be assigned one of the B<INADDR_*> values (e.g., "
11880 "B<INADDR_ANY>)  or set using the B<inet_aton>(3), B<inet_addr>(3), "
11881 "B<inet_makeaddr>(3)  library functions or directly with the name resolver "
11882 "(see B<gethostbyname>(3))."
11883 msgstr ""
11884 "I<sin_addr> は IP ホストアドレスである。 I<struct in_addr> の I<s_addr> \n"
11885 "メンバには、ホストのインターフェースアドレスを ネットワークバイトオーダーで\n"
11886 "指定する。 I<in_addr> は、B<INADDR_*> の一つ (例えば B<INADDR_ANY>) を代入す"
11887 "る、\n"
11888 "ライブラリ関数 B<inet_aton>(3), B<inet_addr>(3), B<inet_makeaddr>(3) を用い"
11889 "る、\n"
11890 "あるいは名前解決機構 (name resolver) を直接用いる、のどれかで設定すべきであ"
11891 "る。\n"
11892 "(B<gethostbyname>(3) を見よ)。"
11893
11894 #.  Leave a loophole for XTP @)
11895 #. type: Plain text
11896 #: build/C/man7/ip.7:203
11897 msgid ""
11898 "IPv4 addresses are divided into unicast, broadcast and multicast addresses.  "
11899 "Unicast addresses specify a single interface of a host, broadcast addresses "
11900 "specify all hosts on a network and multicast addresses address all hosts in "
11901 "a multicast group.  Datagrams to broadcast addresses can be sent or received "
11902 "only when the B<SO_BROADCAST> socket flag is set.  In the current "
11903 "implementation, connection-oriented sockets are allowed to use only unicast "
11904 "addresses."
11905 msgstr ""
11906 "IPv4 アドレスには、ユニキャストアドレス、 ブロードキャストアドレス、マルチ"
11907 "キャストアドレスがある。 ユニキャストアドレスは、あるホストの一つのアドレスを"
11908 "指定する。 ブロードキャストアドレスは、あるネットワーク上の全てのホストを指定"
11909 "する。 マルチキャストアドレスは、マルチキャストグループに所属する 全てのホス"
11910 "トを指定する。ブロードキャストアドレスへのデータグラムは、 B<SO_BROADCAST> ソ"
11911 "ケットフラグがセットされていないと送信・受信できない。 現在の実装では、接続指"
11912 "向のソケットにはユニキャストアドレスしか使えない。"
11913
11914 #. type: Plain text
11915 #: build/C/man7/ip.7:211
11916 msgid ""
11917 "Note that the address and the port are always stored in network byte order.  "
11918 "In particular, this means that you need to call B<htons>(3)  on the number "
11919 "that is assigned to a port.  All address/port manipulation functions in the "
11920 "standard library work in network byte order."
11921 msgstr ""
11922 "アドレスとポートは常にネットワークバイトオーダーで格納されることに注意せよ。 "
11923 "具体的には、ポートを指定する数値には B<htons>(3)  を呼び出す必要がある。 標準"
11924 "ライブラリにあるアドレス/ポート操作関数は すべてネットワークバイトオーダーで"
11925 "動作する。"
11926
11927 #. type: Plain text
11928 #: build/C/man7/ip.7:224
11929 msgid ""
11930 "There are several special addresses: B<INADDR_LOOPBACK> (127.0.0.1)  always "
11931 "refers to the local host via the loopback device; B<INADDR_ANY> (0.0.0.0)  "
11932 "means any address for binding; B<INADDR_BROADCAST> (255.255.255.255)  means "
11933 "any host and has the same effect on bind as B<INADDR_ANY> for historical "
11934 "reasons."
11935 msgstr ""
11936 "特別なアドレスがいくつか存在する: B<INADDR_LOOPBACK>(127.0.0.1)  は loopback "
11937 "デバイスを通して常にローカルなホストを参照する。 B<INADDR_ANY>(0.0.0.0)  は任"
11938 "意のアドレスを意味し、バインド用である。 "
11939 "B<INADDR_BROADCAST>(255.255.255.255)  は任意のホストを意味し、歴史的理由か"
11940 "ら、バインドの際には B<INADDR_ANY> と同じ効果になる。"
11941
11942 #.  or SOL_IP on Linux
11943 #. type: Plain text
11944 #: build/C/man7/ip.7:233
11945 msgid ""
11946 "IP supports some protocol-specific socket options that can be set with "
11947 "B<setsockopt>(2)  and read with B<getsockopt>(2).  The socket option level "
11948 "for IP is B<IPPROTO_IP>.  A boolean integer flag is zero when it is false, "
11949 "otherwise true."
11950 msgstr ""
11951 "IP にはプロトコル固有のソケットオプションがいくつか存在し、 "
11952 "B<setsockopt>(2)  で設定が、 B<getsockopt>(2)  で取得ができる。 IP のソケット"
11953 "オプションレベルは B<IPPROTO_IP> である。 ブール整数値のフラグでは、 0 は偽、"
11954 "それ以外は真を意味する。"
11955
11956 #. type: TP
11957 #: build/C/man7/ip.7:233
11958 #, no-wrap
11959 msgid "B<IP_ADD_MEMBERSHIP> (since Linux 1.2)"
11960 msgstr "B<IP_ADD_MEMBERSHIP> (Linux 1.2 以降)"
11961
11962 #. type: Plain text
11963 #: build/C/man7/ip.7:239
11964 msgid "Join a multicast group.  Argument is an I<ip_mreqn> structure."
11965 msgstr "マルチキャストグループに参加する。 引き数は I<ip_mreqn> 構造体である。"
11966
11967 #. type: Plain text
11968 #: build/C/man7/ip.7:249
11969 #, no-wrap
11970 msgid ""
11971 "struct ip_mreqn {\n"
11972 "    struct in_addr imr_multiaddr; /* IP multicast group\n"
11973 "                                     address */\n"
11974 "    struct in_addr imr_address;   /* IP address of local\n"
11975 "                                     interface */\n"
11976 "    int            imr_ifindex;   /* interface index */\n"
11977 "};\n"
11978 msgstr ""
11979 "struct ip_mreqn {\n"
11980 "    struct in_addr imr_multiaddr; /* IP multicast group\n"
11981 "                                     address */\n"
11982 "    struct in_addr imr_address;   /* IP address of local\n"
11983 "                                     interface */\n"
11984 "    int            imr_ifindex;   /* interface index */\n"
11985 "};\n"
11986
11987 #.  (i.e., within the 224.0.0.0-239.255.255.255 range)
11988 #. type: Plain text
11989 #: build/C/man7/ip.7:270
11990 msgid ""
11991 "I<imr_multiaddr> contains the address of the multicast group the application "
11992 "wants to join or leave.  It must be a valid multicast address (or "
11993 "B<setsockopt>(2)  fails with the error B<EINVAL>).  I<imr_address> is the "
11994 "address of the local interface with which the system should join the "
11995 "multicast group; if it is equal to B<INADDR_ANY>, an appropriate interface "
11996 "is chosen by the system.  I<imr_ifindex> is the interface index of the "
11997 "interface that should join/leave the I<imr_multiaddr> group, or 0 to "
11998 "indicate any interface."
11999 msgstr ""
12000 "I<imr_multiaddr> には、アプリケーションが参加または脱退したい マルチキャスト"
12001 "グループのアドレスが入る。 指定するアドレスは有効なマルチキャストアドレスでな"
12002 "ければならない (さもなければ B<setsockopt>(2)  がエラー B<EINVAL> で失敗す"
12003 "る)。 I<imr_address> はシステムがマルチキャストグループに参加する際に用いる "
12004 "ローカルなインターフェースのアドレスである。 これが B<INADDR_ANY> であった場"
12005 "合には、適切なインターフェースがシステムによって選択される。 I<imr_ifindex> "
12006 "は I<imr_multiaddr> グループに参加/脱退するインターフェースの interface "
12007 "index である。 どのインターフェースでもよい場合は 0 にする。"
12008
12009 #. type: Plain text
12010 #: build/C/man7/ip.7:285
12011 msgid ""
12012 "The I<ip_mreqn> structure is available only since Linux 2.2.  For "
12013 "compatibility, the old I<ip_mreq> structure (present since Linux 1.2) is "
12014 "still supported; it differs from I<ip_mreqn> only by not including the "
12015 "I<imr_ifindex> field.  Only valid as a B<setsockopt>(2)."
12016 msgstr ""
12017 "I<ip_mreqn> 構造体は Linux 2.2 以降でのみ利用可能である。互換性のため、 古い "
12018 "I<ip_mreq> 構造体 (Linux 1.2 以降で存在する) もまだサポートされている。 "
12019 "I<ip_mreqn> との違いは、 I<imr_ifindex> フィールドを含まないことだけである。 "
12020 "B<setsockopt>(2) でのみ使える。"
12021
12022 #. type: TP
12023 #: build/C/man7/ip.7:285
12024 #, no-wrap
12025 msgid "B<IP_ADD_SOURCE_MEMBERSHIP> (since Linux 2.4.22 / 2.5.68)"
12026 msgstr "B<IP_ADD_SOURCE_MEMBERSHIP> (Linux 2.4.22 以降 / 2.5.68 以降)"
12027
12028 #. type: Plain text
12029 #: build/C/man7/ip.7:292
12030 msgid ""
12031 "Join a multicast group and allow receiving data only from a specified "
12032 "source.  Argument is an I<ip_mreq_source> structure."
12033 msgstr ""
12034 "マルチキャストグループに参加、指定された送信元からのデータの受信のみを許可す"
12035 "る。 引き数は I<ip_mreq_source> 構造体である。"
12036
12037 #. type: Plain text
12038 #: build/C/man7/ip.7:303
12039 #, no-wrap
12040 msgid ""
12041 "struct ip_mreq_source {\n"
12042 "    struct in_addr imr_multiaddr;  /* IP multicast group\n"
12043 "                                      address */\n"
12044 "    struct in_addr imr_interface;  /* IP address of local\n"
12045 "                                      interface */\n"
12046 "    struct in_addr imr_sourceaddr; /* IP address of\n"
12047 "                                      multicast source */\n"
12048 "};\n"
12049 msgstr ""
12050 "struct ip_mreq_source {\n"
12051 "    struct in_addr imr_multiaddr;  /* IP multicast group\n"
12052 "                                      address */\n"
12053 "    struct in_addr imr_interface;  /* IP address of local\n"
12054 "                                      interface */\n"
12055 "    struct in_addr imr_sourceaddr; /* IP address of\n"
12056 "                                      multicast source */\n"
12057 "};\n"
12058
12059 #. type: Plain text
12060 #: build/C/man7/ip.7:324
12061 msgid ""
12062 "The I<ip_mreq_source> structure is similar to I<ip_mreqn> described under "
12063 "B<IP_ADD_MEMBERSIP>.  The I<imr_multiaddr> field contains the address of the "
12064 "multicast group the application wants to join or leave.  The "
12065 "I<imr_interface> field is the address of the local interface with which the "
12066 "system should join the multicast group.  Finally, the I<imr_sourceaddr> "
12067 "field contains the address of the source the application wants to receive "
12068 "data from."
12069 msgstr ""
12070 "I<ip_mreq_source> 構造体は B<IP_ADD_MEMBERSIP> の項で説明した I<ip_mreqn> に"
12071 "似ている。 I<imr_multiaddr> フィールドには、アプリケーションが参加または脱退"
12072 "したいマルチキャストグループのアドレスが入る。 I<imr_interface> フィールド"
12073 "は、 マルチキャストグループに参加する際に システムが使用すべきローカルイン"
12074 "ターフェースのアドレスである。 I<imr_sourceaddr> フィールドには、アプリケー"
12075 "ションがデータを受信したい送信元のアドレスが入る。"
12076
12077 #. type: Plain text
12078 #: build/C/man7/ip.7:327
12079 msgid ""
12080 "This option can be used multiple times to allow receiving data from more "
12081 "than one source."
12082 msgstr ""
12083 "このオプションを複数回使うことで、 複数の送信元からのデータ受信を許可すること"
12084 "ができる。"
12085
12086 #. type: TP
12087 #: build/C/man7/ip.7:327
12088 #, no-wrap
12089 msgid "B<IP_BLOCK_SOURCE> (since Linux 2.4.22 / 2.5.68)"
12090 msgstr "B<IP_BLOCK_SOURCE> (since Linux 2.4.22 以降 / 2.5.68 以降)"
12091
12092 #. type: Plain text
12093 #: build/C/man7/ip.7:335
12094 msgid ""
12095 "Stop receiving multicast data from a specific source in a given group.  This "
12096 "is valid only after the application has subscribed to the multicast group "
12097 "using either B<IP_ADD_MEMBERSHIP> or B<IP_ADD_SOURCE_MEMBERSHIP>."
12098 msgstr ""
12099 "指定したグループで、指定した送信元からのマルチキャストデータの受信を停止す"
12100 "る。 このオプションは、アプリケーションが  B<IP_ADD_MEMBERSHIP> か "
12101 "B<IP_ADD_SOURCE_MEMBERSHIP> のいずれかを使ってマルチキャストグループに参加し"
12102 "た後でのみ有効である。"
12103
12104 #. type: Plain text
12105 #: build/C/man7/ip.7:340 build/C/man7/ip.7:362 build/C/man7/ip.7:926
12106 msgid ""
12107 "Argument is an I<ip_mreq_source> structure as described under "
12108 "B<IP_ADD_SOURCE_MEMBERSHIP>."
12109 msgstr ""
12110 "引き数は I<ip_mreq_source> 構造体である。 B<IP_ADD_SOURCE_MEMBERSHIP> の項に"
12111 "説明がある。"
12112
12113 #. type: TP
12114 #: build/C/man7/ip.7:340
12115 #, no-wrap
12116 msgid "B<IP_DROP_MEMBERSHIP> (since Linux 1.2)"
12117 msgstr "B<IP_DROP_MEMBERSHIP> (Linux 1.2 以降)"
12118
12119 #. type: Plain text
12120 #: build/C/man7/ip.7:349
12121 msgid ""
12122 "Leave a multicast group.  Argument is an I<ip_mreqn> or I<ip_mreq> structure "
12123 "similar to B<IP_ADD_MEMBERSHIP>."
12124 msgstr ""
12125 "マルチキャストグループから抜ける。引き数は B<IP_ADD_MEMBERSHIP> と同様に "
12126 "I<ip_mreqn> または I<ip_mreq> 構造体である。"
12127
12128 #. type: TP
12129 #: build/C/man7/ip.7:349
12130 #, no-wrap
12131 msgid "B<IP_DROP_SOURCE_MEMBERSHIP> (since Linux 2.4.22 / 2.5.68)"
12132 msgstr "B<IP_DROP_SOURCE_MEMBERSHIP> (Linux 2.4.22 以降 / 2.5.68 以降)"
12133
12134 #. type: Plain text
12135 #: build/C/man7/ip.7:357
12136 msgid ""
12137 "Leave a source-specific group\\(emthat is, stop receiving data from a given "
12138 "multicast group that come from a given source.  If the application has "
12139 "subscribed to multiple sources within the same group, data from the "
12140 "remaining sources will still be delivered.  To stop receiving data from all "
12141 "sources at once, use B<IP_LEAVE_GROUP>."
12142 msgstr ""
12143 "送信元を指定してグループから抜ける。 つまり、 指定したマルチキャストグループ"
12144 "の指定された送信元からのデータ受信を停止する。 アプリケーションは同じマルチ"
12145 "キャストグループで複数の送信元を購読 (subscribe) している場合には、 残りの送"
12146 "信元からのデータの受信は引き続き配信される。 すべての送信元からのデータ受信を"
12147 "一度で停止するには B<IP_LEAVE_GROUP> を使うこと。"
12148
12149 #. type: TP
12150 #: build/C/man7/ip.7:362
12151 #, no-wrap
12152 msgid "B<IP_FREEBIND> (since Linux 2.4)"
12153 msgstr "B<IP_FREEBIND> (Linux 2.4 以降)"
12154
12155 #.  Precisely: 2.4.0-test10
12156 #. type: Plain text
12157 #: build/C/man7/ip.7:375
12158 msgid ""
12159 "If enabled, this boolean option allows binding to an IP address that is "
12160 "nonlocal or does not (yet) exist.  This permits listening on a socket, "
12161 "without requiring the underlying network interface or the specified dynamic "
12162 "IP address to be up at the time that the application is trying to bind to "
12163 "it.  This option is the per-socket equivalent of the I<ip_nonlocal_bind> I</"
12164 "proc> interface described below."
12165 msgstr ""
12166 "このブール値のオプションを有効にすると、ローカルではない IP アドレスや存在\n"
12167 "しない IP アドレスをバインドできるようになる。これを使うと、対応するネット\n"
12168 "ワークインターフェイスがなかったり、アプリケーションがソケットをバインドしよ"
12169 "うと\n"
12170 "する時点で特定の動的 IP アドレスが有効になっていなかったりしても、ソケット"
12171 "を\n"
12172 "接続待ち状態 (listening) にできるようになる。\n"
12173 "このオプションは、下記に説明がある I<ip_nonlocal_bind> I</proc> インターフェ"
12174 "イス\n"
12175 "のソケット単位の設定である。"
12176
12177 #. type: TP
12178 #: build/C/man7/ip.7:375
12179 #, no-wrap
12180 msgid "B<IP_HDRINCL> (since Linux 2.0)"
12181 msgstr "B<IP_HDRINCL> (Linux 2.0 以降)"
12182
12183 #. type: Plain text
12184 #: build/C/man7/ip.7:391
12185 msgid ""
12186 "If enabled, the user supplies an IP header in front of the user data.  Only "
12187 "valid for B<SOCK_RAW> sockets.  See B<raw>(7)  for more information.  When "
12188 "this flag is enabled the values set by B<IP_OPTIONS>, B<IP_TTL> and "
12189 "B<IP_TOS> are ignored."
12190 msgstr ""
12191 "有効になっていると、ユーザーは IP ヘッダーをユーザーデータの前に与える。 "
12192 "B<SOCK_RAW> ソケットでのみ有効である。詳細は B<raw>(7)  を見よ。このフラグが"
12193 "有効になっていると、 B<IP_OPTIONS>, B<IP_TTL>, B<IP_TOS> は無視される。"
12194
12195 #. type: TP
12196 #: build/C/man7/ip.7:391
12197 #, no-wrap
12198 msgid "B<IP_MSFILTER> (since Linux 2.4.22 / 2.5.68)"
12199 msgstr "B<IP_MSFILTER> (since Linux 2.4.22 以降 / 2.5.68 以降)"
12200
12201 #. type: Plain text
12202 #: build/C/man7/ip.7:397
12203 msgid ""
12204 "This option provides access to the advanced full-state filtering API.  "
12205 "Argument is an I<ip_msfilter> structure."
12206 msgstr ""
12207 "このオプションを使うと、 高度なフィルタリング API へアクセスできる。 この "
12208 "API ではすべての状態にアクセスできる。 引き数は I<ip_msfilter> 構造体である。"
12209
12210 #. type: Plain text
12211 #: build/C/man7/ip.7:406
12212 #, no-wrap
12213 msgid ""
12214 "struct ip_msfilter {\n"
12215 "    struct in_addr imsf_multiaddr; /* IP multicast group\n"
12216 "                                      address */\n"
12217 "    struct in_addr imsf_interface; /* IP address of local\n"
12218 "                                      interface */\n"
12219 "    uint32_t       imsf_fmode;     /* Filter-mode */\n"
12220 msgstr ""
12221 "struct ip_msfilter {\n"
12222 "    struct in_addr imsf_multiaddr; /* IP multicast group\n"
12223 "                                      address */\n"
12224 "    struct in_addr imsf_interface; /* IP address of local\n"
12225 "                                      interface */\n"
12226 "    uint32_t       imsf_fmode;     /* Filter-mode */\n"
12227
12228 #. type: Plain text
12229 #: build/C/man7/ip.7:412
12230 #, no-wrap
12231 msgid ""
12232 "    uint32_t       imsf_numsrc;    /* Number of sources in\n"
12233 "                                      the following array */\n"
12234 "    struct in_addr imsf_slist[1];  /* Array of source\n"
12235 "                                      addresses */\n"
12236 "};\n"
12237 msgstr ""
12238 "    uint32_t       imsf_numsrc;    /* Number of sources in\n"
12239 "                                      the following array */\n"
12240 "    struct in_addr imsf_slist[1];  /* Array of source\n"
12241 "                                      addresses */\n"
12242 "};\n"
12243
12244 #. type: Plain text
12245 #: build/C/man7/ip.7:427
12246 msgid ""
12247 "There are two macros, B<MCAST_INCLUDE> and B<MCAST_EXCLUDE>, which can be "
12248 "used to specify the filtering mode.  Additionally, the "
12249 "B<IP_MSFILTER_SIZE>(n)  macro exists to determine how much memory is needed "
12250 "to store I<ip_msfilter> structure with I<n> sources in the source list."
12251 msgstr ""
12252 "B<MCAST_INCLUDE> と B<MCAST_EXCLUDE> の 2 つのマクロがあり、 フィルタリング"
12253 "モードを指定するのに使用できる。 また、 B<IP_MSFILTER_SIZE>(n) マクロがあ"
12254 "り、 送信元リストに I<n> 個の送信元が入った I<ip_msfilter> 構造体を格納するの"
12255 "に必要なメモリー量を判定することができる。"
12256
12257 #. type: Plain text
12258 #: build/C/man7/ip.7:430
12259 msgid ""
12260 "For the full description of multicast source filtering refer to RFC 3376."
12261 msgstr "マルチキャスト送信元フィルタリングの全容は RFC\\ 3376 を参照のこと。"
12262
12263 #. type: TP
12264 #: build/C/man7/ip.7:430
12265 #, no-wrap
12266 msgid "B<IP_MTU> (since Linux 2.2)"
12267 msgstr "B<IP_MTU> (Linux 2.2 以降)"
12268
12269 #.  Precisely: 2.1.124
12270 #. type: Plain text
12271 #: build/C/man7/ip.7:438
12272 msgid ""
12273 "Retrieve the current known path MTU of the current socket.  Valid only when "
12274 "the socket has been connected.  Returns an integer.  Only valid as a "
12275 "B<getsockopt>(2)."
12276 msgstr ""
12277 "ソケットの、既知の path MTU を取得する。 ソケットが接続している場合のみ有効で"
12278 "ある。 B<getsockopt>(2)  でのみ使える。"
12279
12280 #. type: TP
12281 #: build/C/man7/ip.7:438
12282 #, no-wrap
12283 msgid "B<IP_MTU_DISCOVER> (since Linux 2.2)"
12284 msgstr "B<IP_MTU_DISCOVER> (Linux 2.2 以降)"
12285
12286 #.  Precisely: 2.1.124
12287 #. type: Plain text
12288 #: build/C/man7/ip.7:459
12289 msgid ""
12290 "Set or receive the Path MTU Discovery setting for a socket.  When enabled, "
12291 "Linux will perform Path MTU Discovery as defined in RFC\\ 1191 on "
12292 "B<SOCK_STREAM> sockets.  For non-B<SOCK_STREAM> sockets, B<IP_PMTUDISC_DO> "
12293 "forces the don't-fragment flag to be set on all outgoing packets.  It is the "
12294 "user's responsibility to packetize the data in MTU-sized chunks and to do "
12295 "the retransmits if necessary.  The kernel will reject (with B<EMSGSIZE>)  "
12296 "datagrams that are bigger than the known path MTU.  B<IP_PMTUDISC_WANT> will "
12297 "fragment a datagram if needed according to the path MTU, or will set the "
12298 "don't-fragment flag otherwise."
12299 msgstr ""
12300 "ソケットの Path MTU Discovery の設定をセット・取得する。\n"
12301 "有効になっていると、Linux は B<SOCK_STREAM> ソケットに対して\n"
12302 "RFC\\ 1191 で定義されている Path MTU Discovery を行う。\n"
12303 "B<SOCK_STREAM> でないソケットについては、 B<IP_PMTUDISC_DO> をセットする"
12304 "と、\n"
12305 "全ての送信パケットでフラグメント不許可フラグ (don't-fragment flag) が必ず\n"
12306 "セットされるようになる。 B<SOCK_STREAM> でないソケットでは、\n"
12307 "パケットを MTU のサイズの塊に分割したり、必要に応じて再送したりするのは、\n"
12308 "ユーザーが責任を持って行う必要がある。\n"
12309 "既知の Path MTU よりも大きなデータグラムの送信が要求されると、\n"
12310 "カーネルは (B<EMSGSIZE> で) 送信を拒否する。\n"
12311 "B<IP_PMTUDISC_WANT> の場合は、 Path MTU に基づいて必要であればデータグラム\n"
12312 "の分割が行われ、それ以外の場合はフラグメント不許可フラグがセットされる。"
12313
12314 #. type: Plain text
12315 #: build/C/man7/ip.7:467
12316 msgid ""
12317 "The system-wide default can be toggled between B<IP_PMTUDISC_WANT> and "
12318 "B<IP_PMTUDISC_DONT> by writing (respectively, zero and nonzero values) to "
12319 "the I</proc/sys/net/ipv4/ip_no_pmtu_disc> file."
12320 msgstr ""
12321 "システム全体のデフォルトは B<IP_PMTUDISC_WANT> と B<IP_PMTUDISC_DONT> の\n"
12322 "どちらかに設定することができる。設定の変更は、\n"
12323 "I</proc/sys/net/ipv4/ip_no_pmtu_disc> ファイルに、0 (B<IP_PMTUDISC_WANT>) "
12324 "か\n"
12325 "0 以外 (B<IP_PMTUDISC_DONT>) を書き込むことで行う。"
12326
12327 #. type: tbl table
12328 #: build/C/man7/ip.7:471
12329 #, no-wrap
12330 msgid "Path MTU discovery value:Meaning\n"
12331 msgstr "Path MTU discovery 値:意味\n"
12332
12333 #. type: tbl table
12334 #: build/C/man7/ip.7:472
12335 #, no-wrap
12336 msgid "IP_PMTUDISC_WANT:Use per-route settings.\n"
12337 msgstr "IP_PMTUDISC_WANT:ルートごとの設定を用いる。\n"
12338
12339 #. type: tbl table
12340 #: build/C/man7/ip.7:473
12341 #, no-wrap
12342 msgid "IP_PMTUDISC_DONT:Never do Path MTU Discovery.\n"
12343 msgstr "IP_PMTUDISC_DONT:Path MTU Discovery を行わない。\n"
12344
12345 #. type: tbl table
12346 #: build/C/man7/ip.7:474
12347 #, no-wrap
12348 msgid "IP_PMTUDISC_DO:Always do Path MTU Discovery.\n"
12349 msgstr "IP_PMTUDISC_DO:常に Path MTU Discovery を行う。\n"
12350
12351 #. type: tbl table
12352 #: build/C/man7/ip.7:475
12353 #, no-wrap
12354 msgid "IP_PMTUDISC_PROBE:Set DF but ignore Path MTU.\n"
12355 msgstr "IP_PMTUDISC_PROBE:DFビットをセットするが、Path MTU を無視する。\n"
12356
12357 #. type: Plain text
12358 #: build/C/man7/ip.7:493
12359 msgid ""
12360 "When PMTU discovery is enabled, the kernel automatically keeps track of the "
12361 "path MTU per destination host.  When it is connected to a specific peer with "
12362 "B<connect>(2), the currently known path MTU can be retrieved conveniently "
12363 "using the B<IP_MTU> socket option (e.g., after an B<EMSGSIZE> error "
12364 "occurred).  The path MTU may change over time.  For connectionless sockets "
12365 "with many destinations, the new MTU for a given destination can also be "
12366 "accessed using the error queue (see B<IP_RECVERR>).  A new error will be "
12367 "queued for every incoming MTU update."
12368 msgstr ""
12369 "path MTU discovery が有効になっていると、カーネルは宛先ホストごとに 自動的"
12370 "に\n"
12371 "path MTU を処理する。特定の相手に B<connect>(2) で接続した場合には、\n"
12372 "B<IP_MTU> ソケットオプションを用いれば、既知の path MTU の取得に便利である\n"
12373 "(たとえば B<EMSGSIZE> エラーが起きた後など)。 path MTU は時間とともに変化す"
12374 "る\n"
12375 "かもしれない。 宛先がたくさんあるコネクションレスなソケットでは、 与えられ"
12376 "た\n"
12377 "宛先に対する新しい MTU にも、 エラーキューを用いてアクセスすることができる\n"
12378 "(B<IP_RECVERR> を見よ)。 MTU 更新が到着するごとに、新たなエラーがキューイン"
12379 "グ\n"
12380 "される。"
12381
12382 #. type: Plain text
12383 #: build/C/man7/ip.7:498
12384 msgid ""
12385 "While MTU discovery is in progress, initial packets from datagram sockets "
12386 "may be dropped.  Applications using UDP should be aware of this and not take "
12387 "it into account for their packet retransmit strategy."
12388 msgstr ""
12389 "MTU discovery の進行中には、データグラムソケットからの初期パケットは 到着しな"
12390 "いかもしれない。 UDP を用いるアプリケーションでは、 このことを気にかけてお"
12391 "き、 パケットの再送アルゴリズムにこの分を除外させるべきである。"
12392
12393 #.  FIXME . this is an ugly hack
12394 #. type: Plain text
12395 #: build/C/man7/ip.7:503
12396 msgid ""
12397 "To bootstrap the path MTU discovery process on unconnected sockets, it is "
12398 "possible to start with a big datagram size (up to 64K-headers bytes long) "
12399 "and let it shrink by updates of the path MTU."
12400 msgstr ""
12401 "接続していないソケットに対して path MTU discovery プロセスを立ち上げるには、 "
12402 "大きなデータグラムサイズ (最大 64K ヘッダーバイト長) からはじめて、 path MTU "
12403 "が更新されるまでサイズを縮めていくことも可能である。"
12404
12405 #. type: Plain text
12406 #: build/C/man7/ip.7:512
12407 msgid ""
12408 "To get an initial estimate of the path MTU, connect a datagram socket to the "
12409 "destination address using B<connect>(2)  and retrieve the MTU by calling "
12410 "B<getsockopt>(2)  with the B<IP_MTU> option."
12411 msgstr ""
12412 "path MTU の値をまず見積もってみるには、宛先アドレスに B<connect>(2)  を使って"
12413 "データグラムソケットを接続し、 B<getsockopt>(2)  を B<IP_MTU> オプションとと"
12414 "もに呼び、 MTU を取得することである。"
12415
12416 #. type: Plain text
12417 #: build/C/man7/ip.7:524
12418 msgid ""
12419 "It is possible to implement RFC 4821 MTU probing with B<SOCK_DGRAM> or "
12420 "B<SOCK_RAW> sockets by setting a value of B<IP_PMTUDISC_PROBE> (available "
12421 "since Linux 2.6.22).  This is also particularly useful for diagnostic tools "
12422 "such as B<tracepath>(8)  that wish to deliberately send probe packets larger "
12423 "than the observed Path MTU."
12424 msgstr ""
12425 "B<IP_PMTUDISC_PROBE> (Linux 2.6.22 以降で利用可能) を設定することで、 "
12426 "B<SOCK_DGRAM> や B<SOCK_RAW> のソケットで RFC 4821 の MTU 探索を実装すること"
12427 "が可能である。 また、この機能は、 B<tracepath>(8)  のような診断ツールで特に有"
12428 "用である。これらのツールでは、 観測された Path MTU よりも大きな探索パケットを"
12429 "意図的に 送信しようとする。"
12430
12431 #. type: TP
12432 #: build/C/man7/ip.7:524
12433 #, no-wrap
12434 msgid "B<IP_MULTICAST_ALL> (since Linux 2.6.31)"
12435 msgstr "B<IP_MULTICAST_ALL> (Linux 2.6.31 以降)"
12436
12437 #. type: Plain text
12438 #: build/C/man7/ip.7:538
12439 msgid ""
12440 "This option can be used to modify the delivery policy of multicast messages "
12441 "to sockets bound to the wildcard B<INADDR_ANY> address.  The argument is a "
12442 "boolean integer (defaults to 1).  If set to 1, the socket will receive "
12443 "messages from all the groups that have been joined globally on the whole "
12444 "system.  Otherwise, it will deliver messages only from the groups that have "
12445 "been explicitly joined (for example via the B<IP_ADD_MEMBERSHIP> option) on "
12446 "this particular socket."
12447 msgstr ""
12448 "このオプションを使って、 マルチキャストメッセージの、 ワイルドカードの "
12449 "B<INADDR_ANY> アドレスにバインドされているソケットへの 配送ポリシーを変更する"
12450 "ことができる。 引き数はブート値の整数で、 デフォルト値は 1 である。 このオプ"
12451 "ションを 1 に設定されている場合、そのソケットでは、このシステムで参加している"
12452 "すべてのグループからのメッセージが受信される。 それ以外の場合は、そのソケット"
12453 "では、 そのソケットに対して (B<IP_ADD_MEMBERSHIP> などを使って) 明示的に参加"
12454 "が指定されたグループからのメッセージだけが受信される。"
12455
12456 #. type: TP
12457 #: build/C/man7/ip.7:538
12458 #, no-wrap
12459 msgid "B<IP_MULTICAST_IF> (since Linux 1.2)"
12460 msgstr "B<IP_MULTICAST_IF> (Linux 1.2 以降)"
12461
12462 #.  net: IP_MULTICAST_IF setsockopt now recognizes struct mreq
12463 #.  Commit: 3a084ddb4bf299a6e898a9a07c89f3917f0713f7
12464 #. type: Plain text
12465 #: build/C/man7/ip.7:550
12466 msgid ""
12467 "Set the local device for a multicast socket.  Argument is an I<ip_mreqn> or "
12468 "I<ip_mreq> (since Linux 3.5)  structure similar to B<IP_ADD_MEMBERSHIP>."
12469 msgstr ""
12470 "ローカルデバイスをマルチキャストソケットとして設定する。引き数は "
12471 "B<IP_ADD_MEMBERSHIP> と同様に I<ip_mreqn> 構造体か I<ip_mreq> 構造体 (Linux "
12472 "3.5 以降) である。"
12473
12474 #. type: Plain text
12475 #: build/C/man7/ip.7:554
12476 msgid "When an invalid socket option is passed, B<ENOPROTOOPT> is returned."
12477 msgstr "不正なソケットオプションが渡されると、 B<ENOPROTOOPT> が返される。"
12478
12479 #. type: TP
12480 #: build/C/man7/ip.7:554
12481 #, no-wrap
12482 msgid "B<IP_MULTICAST_LOOP> (since Linux 1.2)"
12483 msgstr "B<IP_MULTICAST_LOOP> (Linux 1.2 以降)"
12484
12485 #. type: Plain text
12486 #: build/C/man7/ip.7:558
12487 msgid ""
12488 "Set or read a boolean integer argument that determines whether sent "
12489 "multicast packets should be looped back to the local sockets."
12490 msgstr ""
12491 "マルチキャストパケットをローカルなソケットにループバックするかどうかを 定める"
12492 "ブール値の整数引き数を設定・取得する。"
12493
12494 #. type: TP
12495 #: build/C/man7/ip.7:558
12496 #, no-wrap
12497 msgid "B<IP_MULTICAST_TTL> (since Linux 1.2)"
12498 msgstr "B<IP_MULTICAST_TTL> (Linux 1.2 以降)"
12499
12500 #. type: Plain text
12501 #: build/C/man7/ip.7:566
12502 msgid ""
12503 "Set or read the time-to-live value of outgoing multicast packets for this "
12504 "socket.  It is very important for multicast packets to set the smallest TTL "
12505 "possible.  The default is 1 which means that multicast packets don't leave "
12506 "the local network unless the user program explicitly requests it.  Argument "
12507 "is an integer."
12508 msgstr ""
12509 "このソケットから発信されるマルチキャストパケットの time-to-live 値を設定・取"
12510 "得する。 マルチキャストパケットに対しては、できるだけ小さな TTL に設定するこ"
12511 "とがとても重要である。デフォルトは 1 で、 ユーザープログラムが明示的に要求し"
12512 "ない限り マルチキャストパケットはローカルなネットワークから出ないことにな"
12513 "る。 引き数に整数を取る。"
12514
12515 #. type: TP
12516 #: build/C/man7/ip.7:566
12517 #, no-wrap
12518 msgid "B<IP_NODEFRAG> (since Linux 2.6.36)"
12519 msgstr "B<IP_NODEFRAG> (Linux 2.6.36 以降)"
12520
12521 #. type: Plain text
12522 #: build/C/man7/ip.7:574
12523 msgid ""
12524 "If enabled (argument is nonzero), the reassembly of outgoing packets is "
12525 "disabled in the netfilter layer.  This option is valid only for B<SOCK_RAW> "
12526 "sockets.  The argument is an integer."
12527 msgstr ""
12528 "有効 (引き数が 0 以外の場合) になっていると、netfilter 層での出力パケットの\n"
12529 "再構築 (reassembly) が行われなくなる。このオプションは B<SOCK_RAW> ソケット\n"
12530 "においてのみ有効である。引き数は整数である。"
12531
12532 #. type: TP
12533 #: build/C/man7/ip.7:574
12534 #, no-wrap
12535 msgid "B<IP_OPTIONS> (since Linux 2.0)"
12536 msgstr "B<IP_OPTIONS> (Linux 2.0 以降)"
12537
12538 #.  Precisely: 1.3.30
12539 #. type: Plain text
12540 #: build/C/man7/ip.7:603
12541 msgid ""
12542 "Set or get the IP options to be sent with every packet from this socket.  "
12543 "The arguments are a pointer to a memory buffer containing the options and "
12544 "the option length.  The B<setsockopt>(2)  call sets the IP options "
12545 "associated with a socket.  The maximum option size for IPv4 is 40 bytes.  "
12546 "See RFC\\ 791 for the allowed options.  When the initial connection request "
12547 "packet for a B<SOCK_STREAM> socket contains IP options, the IP options will "
12548 "be set automatically to the options from the initial packet with routing "
12549 "headers reversed.  Incoming packets are not allowed to change options after "
12550 "the connection is established.  The processing of all incoming source "
12551 "routing options is disabled by default and can be enabled by using the "
12552 "I<accept_source_route> I</proc> interface.  Other options like timestamps "
12553 "are still handled.  For datagram sockets, IP options can be only set by the "
12554 "local user.  Calling B<getsockopt>(2)  with B<IP_OPTIONS> puts the current "
12555 "IP options used for sending into the supplied buffer."
12556 msgstr ""
12557 "このソケットから送られるパケット全てに付随する IP オプションを 設定・取得す"
12558 "る。オプションを保存しているメモリーバッファーへのポインターと オプションの長"
12559 "さとを引き数に取る。 B<setsockopt>(2)  を呼び出すと、ソケットに関連づけられ"
12560 "る IP オプションを設定できる。 IPv4 におけるオプションのサイズの最大値は 40 "
12561 "バイトである。 用いることのできるオプションについては RFC\\ 791 を見よ。 "
12562 "B<SOCK_STREAM> ソケットに対する初期接続要求パケットに IP オプションが含まれて"
12563 "いると、 ルーティングヘッダーを付けて戻されてくる初期パケットの IP オプション"
12564 "に同じオプションがセットされる。接続が確立された後、 やってきたパケットのオプ"
12565 "ションを変更することはできない。 デフォルトでは。外部から受信したパケットの全"
12566 "ての source routing オプション の処理は無効となっており、 I</proc> インター"
12567 "フェースの I<accept_source_route> を使うとこれを有効にできる。これを無効にし"
12568 "ていても timestamps など の他のオプションの処理は行われる。データグラムソケッ"
12569 "トでは、 IP オプションはローカルユーザーしか設定できない。 B<getsockopt>(2)  "
12570 "を B<IP_OPTIONS> をつけて呼ぶと、現在送信に用いられている IP オプションを 引"
12571 "き数に与えたバッファーに取得できる。"
12572
12573 #. type: TP
12574 #: build/C/man7/ip.7:603
12575 #, no-wrap
12576 msgid "B<IP_PKTINFO> (since Linux 2.2)"
12577 msgstr "B<IP_PKTINFO> (Linux 2.2 以降)"
12578
12579 #.  Precisely: 2.1.68
12580 #. type: Plain text
12581 #: build/C/man7/ip.7:620
12582 msgid ""
12583 "Pass an B<IP_PKTINFO> ancillary message that contains a I<pktinfo> structure "
12584 "that supplies some information about the incoming packet.  This only works "
12585 "for datagram oriented sockets.  The argument is a flag that tells the socket "
12586 "whether the B<IP_PKTINFO> message should be passed or not.  The message "
12587 "itself can only be sent/retrieved as control message with a packet using "
12588 "B<recvmsg>(2)  or B<sendmsg>(2)."
12589 msgstr ""
12590 "B<IP_PKTINFO> 補助メッセージを渡す。これには到着パケットに関する情報を提供す"
12591 "る I<pktinfo> 構造体が含まれている。 データグラム指向のソケットでしか動作しな"
12592 "い。 引き数は B<IP_PKTINFO> メッセージを通過させるかどうかをソケットに知らせ"
12593 "るフラグである。 メッセージ自身は B<recvmsg>(2)  または B<sendmsg>(2)  を用い"
12594 "たパケットの制御メッセージとしてのみ送受信できる。"
12595
12596 #. type: Plain text
12597 #: build/C/man7/ip.7:629
12598 #, no-wrap
12599 msgid ""
12600 "struct in_pktinfo {\n"
12601 "    unsigned int   ipi_ifindex;  /* Interface index */\n"
12602 "    struct in_addr ipi_spec_dst; /* Local address */\n"
12603 "    struct in_addr ipi_addr;     /* Header Destination\n"
12604 "                                    address */\n"
12605 "};\n"
12606 msgstr ""
12607 "struct in_pktinfo {\n"
12608 "    unsigned int   ipi_ifindex;  /* Interface index */\n"
12609 "    struct in_addr ipi_spec_dst; /* Local address */\n"
12610 "    struct in_addr ipi_addr;     /* Header Destination\n"
12611 "                                    address */\n"
12612 "};\n"
12613
12614 #.  FIXME . elaborate on that.
12615 #.  This field is grossly misnamed
12616 #. type: Plain text
12617 #: build/C/man7/ip.7:654
12618 msgid ""
12619 "I<ipi_ifindex> is the unique index of the interface the packet was received "
12620 "on.  I<ipi_spec_dst> is the local address of the packet and I<ipi_addr> is "
12621 "the destination address in the packet header.  If B<IP_PKTINFO> is passed to "
12622 "B<sendmsg>(2)  and I<ipi_spec_dst> is not zero, then it is used as the local "
12623 "source address for the routing table lookup and for setting up IP source "
12624 "route options.  When I<ipi_ifindex> is not zero, the primary local address "
12625 "of the interface specified by the index overwrites I<ipi_spec_dst> for the "
12626 "routing table lookup."
12627 msgstr ""
12628 "I<ipi_ifindex> はパケットが受信されたインターフェースの、他と重ならないイン"
12629 "デックスである。 I<ipi_spec_dst> はパケットのローカルアドレスである。 "
12630 "I<ipi_addr> はパケットヘッダーにある宛先アドレスである。 B<IP_PKTINFO> が "
12631 "B<sendmsg>(2)  に渡されて、かつ I<ipi_spec_dst> が 0 以外の場合、 "
12632 "I<ipi_spec_dst> はルーティングテーブルを検索する際にローカルな送信元アドレス"
12633 "として使用され、 IP source route オプションを設定するのにも使用される。 "
12634 "I<ipi_ifindex> が 0 以外の場合、このインデックスによって指定されるインター"
12635 "フェースの プライマリローカルアドレスで I<ipi_spec_dst> を上書きし、ルーティ"
12636 "ングテーブルを検索する。"
12637
12638 #. type: TP
12639 #: build/C/man7/ip.7:654
12640 #, no-wrap
12641 msgid "B<IP_RECVERR> (since Linux 2.2)"
12642 msgstr "B<IP_RECVERR> (Linux 2.2 以降)"
12643
12644 #.  Precisely: 2.1.15
12645 #.  or SOL_IP on Linux
12646 #. type: Plain text
12647 #: build/C/man7/ip.7:676
12648 msgid ""
12649 "Enable extended reliable error message passing.  When enabled on a datagram "
12650 "socket, all generated errors will be queued in a per-socket error queue.  "
12651 "When the user receives an error from a socket operation, the errors can be "
12652 "received by calling B<recvmsg>(2)  with the B<MSG_ERRQUEUE> flag set.  The "
12653 "I<sock_extended_err> structure describing the error will be passed in an "
12654 "ancillary message with the type B<IP_RECVERR> and the level B<IPPROTO_IP>.  "
12655 "This is useful for reliable error handling on unconnected sockets.  The "
12656 "received data portion of the error queue contains the error packet."
12657 msgstr ""
12658 "エラーメッセージの受け渡しに、信頼性の高い拡張された方法を有効にする。 データ"
12659 "グラムソケットに対して有効になっていると、 発生したエラーは全てソケットごとの"
12660 "エラーキューに保存される。 ユーザーはソケット操作からエラーを受け取ったと"
12661 "き、 B<recvmsg>(2)  を B<MSG_ERRQUEUE> フラグとともに呼べばそのエラーを取得で"
12662 "きる。 そのエラーを記述する I<sock_extended_err> 構造体が、タイプ "
12663 "B<IP_RECVERR>・ レベル B<IPPROTO_IP> の補助メッセージとして渡される。 これは"
12664 "接続志向でないソケットで信頼性の高いエラー処理を行いたい場合に 有用である。エ"
12665 "ラーキューの受信データフラグメントには エラーパケットが含まれる。"
12666
12667 #. type: Plain text
12668 #: build/C/man7/ip.7:682
12669 msgid ""
12670 "The B<IP_RECVERR> control message contains a I<sock_extended_err> structure:"
12671 msgstr ""
12672 "B<IP_RECVERR> 制御メッセージには I<sock_extended_err> 構造体が含まれる:"
12673
12674 #. type: Plain text
12675 #: build/C/man7/ip.7:690
12676 #, no-wrap
12677 msgid ""
12678 "#define SO_EE_ORIGIN_NONE    0\n"
12679 "#define SO_EE_ORIGIN_LOCAL   1\n"
12680 "#define SO_EE_ORIGIN_ICMP    2\n"
12681 "#define SO_EE_ORIGIN_ICMP6   3\n"
12682 msgstr ""
12683 "#define SO_EE_ORIGIN_NONE    0\n"
12684 "#define SO_EE_ORIGIN_LOCAL   1\n"
12685 "#define SO_EE_ORIGIN_ICMP    2\n"
12686 "#define SO_EE_ORIGIN_ICMP6   3\n"
12687
12688 #. type: Plain text
12689 #: build/C/man7/ip.7:701
12690 #, no-wrap
12691 msgid ""
12692 "struct sock_extended_err {\n"
12693 "    uint32_t ee_errno;   /* error number */\n"
12694 "    uint8_t  ee_origin;  /* where the error originated */\n"
12695 "    uint8_t  ee_type;    /* type */\n"
12696 "    uint8_t  ee_code;    /* code */\n"
12697 "    uint8_t  ee_pad;\n"
12698 "    uint32_t ee_info;    /* additional information */\n"
12699 "    uint32_t ee_data;    /* other data */\n"
12700 "    /* More data may follow */\n"
12701 "};\n"
12702 msgstr ""
12703 "struct sock_extended_err {\n"
12704 "    uint32_t ee_errno;   /* error number */\n"
12705 "    uint8_t  ee_origin;  /* where the error originated */\n"
12706 "    uint8_t  ee_type;    /* type */\n"
12707 "    uint8_t  ee_code;    /* code */\n"
12708 "    uint8_t  ee_pad;\n"
12709 "    uint32_t ee_info;    /* additional information */\n"
12710 "    uint32_t ee_data;    /* other data */\n"
12711 "    /* More data may follow */\n"
12712 "};\n"
12713
12714 #. type: Plain text
12715 #: build/C/man7/ip.7:703
12716 #, no-wrap
12717 msgid "struct sockaddr *SO_EE_OFFENDER(struct sock_extended_err *);\n"
12718 msgstr "struct sockaddr *SO_EE_OFFENDER(struct sock_extended_err *);\n"
12719
12720 #. type: Plain text
12721 #: build/C/man7/ip.7:726
12722 msgid ""
12723 "I<ee_errno> contains the I<errno> number of the queued error.  I<ee_origin> "
12724 "is the origin code of where the error originated.  The other fields are "
12725 "protocol-specific.  The macro B<SO_EE_OFFENDER> returns a pointer to the "
12726 "address of the network object where the error originated from given a "
12727 "pointer to the ancillary message.  If this address is not known, the "
12728 "I<sa_family> member of the I<sockaddr> contains B<AF_UNSPEC> and the other "
12729 "fields of the I<sockaddr> are undefined."
12730 msgstr ""
12731 "I<ee_errno> にはキューに入っているエラーの I<errno> 番号が入る。 "
12732 "I<ee_origin> にはエラーが発生した場所を示すコードが入る。 その他のフィールド"
12733 "はプロトコル依存である。 B<SO_EE_OFFENDER> マクロは与えられた補助メッセージへ"
12734 "のポインターから エラーの発生したネットワークオブジェクトのアドレスへのポイン"
12735 "ターを返す。 アドレスが不明な場合、 I<sockaddr> 構造体の I<sa_family> フィー"
12736 "ルドは B<AF_UNSPEC> となり、その他のフィールド値は不定である。"
12737
12738 #.  FIXME . Is it a good idea to document that? It is a dubious feature.
12739 #.  On
12740 #.  .B SOCK_STREAM
12741 #.  sockets,
12742 #.  .B IP_RECVERR
12743 #.  has slightly different semantics. Instead of
12744 #.  saving the errors for the next timeout, it passes all incoming
12745 #.  errors immediately to the user.
12746 #.  This might be useful for very short-lived TCP connections which
12747 #.  need fast error handling. Use this option with care:
12748 #.  it makes TCP unreliable
12749 #.  by not allowing it to recover properly from routing
12750 #.  shifts and other normal
12751 #.  conditions and breaks the protocol specification.
12752 #. type: Plain text
12753 #: build/C/man7/ip.7:785
12754 msgid ""
12755 "IP uses the I<sock_extended_err> structure as follows: I<ee_origin> is set "
12756 "to B<SO_EE_ORIGIN_ICMP> for errors received as an ICMP packet, or "
12757 "B<SO_EE_ORIGIN_LOCAL> for locally generated errors.  Unknown values should "
12758 "be ignored.  I<ee_type> and I<ee_code> are set from the type and code fields "
12759 "of the ICMP header.  I<ee_info> contains the discovered MTU for B<EMSGSIZE> "
12760 "errors.  The message also contains the I<sockaddr_in of the node> caused the "
12761 "error, which can be accessed with the B<SO_EE_OFFENDER> macro.  The "
12762 "I<sin_family> field of the B<SO_EE_OFFENDER> address is B<AF_UNSPEC> when "
12763 "the source was unknown.  When the error originated from the network, all IP "
12764 "options (B<IP_OPTIONS>, B<IP_TTL>, etc.) enabled on the socket and contained "
12765 "in the error packet are passed as control messages.  The payload of the "
12766 "packet causing the error is returned as normal payload.  Note that TCP has "
12767 "no error queue; B<MSG_ERRQUEUE> is not permitted on B<SOCK_STREAM> sockets.  "
12768 "B<IP_RECVERR> is valid for TCP, but all errors are returned by socket "
12769 "function return or B<SO_ERROR> only."
12770 msgstr ""
12771 "IP は以下のような I<sock_extended_err> 構造体を用いる: I<ee_origin> は、エ"
12772 "ラー\n"
12773 "が ICMP パケットとして受信された場合には B<SO_EE_ORIGIN_ICMP> にセットさ"
12774 "れ、\n"
12775 "ローカルで起こった場合には B<SO_EE_ORIGIN_LOCAL> にセットされる。 不明な値"
12776 "は\n"
12777 "無視される。 I<ee_type> と I<ee_code> は ICMP ヘッダーの type フィールドと\n"
12778 "code フィールドの値にセットされる。 I<ee_info> には B<EMSGSIZE> エラーに対"
12779 "す\n"
12780 "る discover された MTU が入る。 メッセージにはエラーを引き起こしたノードの\n"
12781 "I<sockaddr_in> 構造体も含まれる。 これには B<SO_EE_OFFENDER> マクロを使って"
12782 "ア\n"
12783 "クセスできる。 ソースが不明の場合、 B<SO_EE_OFFENDER> アドレスの\n"
12784 "I<sin_family> フィールドは B<AF_UNSPEC> となる。 エラーがネットワークで起き"
12785 "た\n"
12786 "場合には、 ソケットで有効になっていたすべての IP オプション (B<IP_OPTIONS>,\n"
12787 "B<IP_TTL> など) とエラーパケットに含まれていたすべての IP オプションとが、 "
12788 "制\n"
12789 "御メッセージとして渡される。 エラーを起こしたパケットのペイロード (payload)\n"
12790 "は 普通のペイロードとして返される。 TCP にはエラーキューがないことに注意し"
12791 "て\n"
12792 "ほしい。 B<MSG_ERRQUEUE> は B<SOCK_STREAM> ソケットに対しては使えない。 TCP\n"
12793 "では B<IP_RECVERR> だけが有効だが、ソケット関数から返されるエラーは\n"
12794 "B<SO_ERROR> だけになる。"
12795
12796 #. type: Plain text
12797 #: build/C/man7/ip.7:790
12798 msgid ""
12799 "For raw sockets, B<IP_RECVERR> enables passing of all received ICMP errors "
12800 "to the application, otherwise errors are only reported on connected sockets"
12801 msgstr ""
12802 "raw ソケットに対して B<IP_RECVERR> を指定すると、受信したすべての ICMP エラー"
12803 "をアプリケーションに 渡すようになる。指定しないと、 接続済みのソケットに対す"
12804 "るエラーだけを報告する。"
12805
12806 #. type: Plain text
12807 #: build/C/man7/ip.7:794
12808 msgid ""
12809 "It sets or retrieves an integer boolean flag.  B<IP_RECVERR> defaults to off."
12810 msgstr ""
12811 "このオプションはブール値のフラグを設定・取得する。 B<IP_RECVERR> はデフォルト"
12812 "ではオフになっている。"
12813
12814 #. type: TP
12815 #: build/C/man7/ip.7:794
12816 #, no-wrap
12817 msgid "B<IP_RECVOPTS> (since Linux 2.2)"
12818 msgstr "B<IP_RECVOPTS> (Linux 2.2 以降)"
12819
12820 #.  Precisely: 2.1.15
12821 #. type: Plain text
12822 #: build/C/man7/ip.7:805
12823 msgid ""
12824 "Pass all incoming IP options to the user in a B<IP_OPTIONS> control "
12825 "message.  The routing header and other options are already filled in for the "
12826 "local host.  Not supported for B<SOCK_STREAM> sockets."
12827 msgstr ""
12828 "到着した全ての IP オプションを B<IP_OPTION> コントロールメッセージに入れて"
12829 "ユーザーに渡す。 ルーティングヘッダーとその他のオプションとは、 ローカルホス"
12830 "トに対してはあらかじめ記入されている。 B<SOCK_STREAM> ソケットではサポートさ"
12831 "れていない。"
12832
12833 #. type: TP
12834 #: build/C/man7/ip.7:805
12835 #, no-wrap
12836 msgid "B<IP_RECVORIGDSTADDR> (since Linux 2.6.29)"
12837 msgstr "B<IP_RECVORIGDSTADDR> (Linux 2.6.29 以降)"
12838
12839 #.  commit e8b2dfe9b4501ed0047459b2756ba26e5a940a69
12840 #. type: Plain text
12841 #: build/C/man7/ip.7:816
12842 msgid ""
12843 "This boolean option enables the B<IP_ORIGDSTADDR> ancillary message in "
12844 "B<recvmsg>(2), in which the kernel returns the original destination address "
12845 "of the datagram being received.  The ancillary message contains a I<struct "
12846 "sockaddr_in>."
12847 msgstr ""
12848 "このブール値のオプションがセットされると、\n"
12849 "B<recvmsg>(2) で B<IP_ORIGDSTADDR> 補助メッセージが有効になる。\n"
12850 "カーネルはデータグラムを受信した元の宛先アドレスをこの補助メッセージで返"
12851 "す。\n"
12852 "この補助メッセージには I<struct sockaddr_in> が格納される。"
12853
12854 #. type: TP
12855 #: build/C/man7/ip.7:816
12856 #, no-wrap
12857 msgid "B<IP_RECVTOS> (since Linux 2.2)"
12858 msgstr "B<IP_RECVTOS> (Linux 2.2 以降)"
12859
12860 #.  Precisely: 2.1.68
12861 #. type: Plain text
12862 #: build/C/man7/ip.7:825
12863 msgid ""
12864 "If enabled, the B<IP_TOS> ancillary message is passed with incoming "
12865 "packets.  It contains a byte which specifies the Type of Service/Precedence "
12866 "field of the packet header.  Expects a boolean integer flag."
12867 msgstr ""
12868 "有効になっていると、 B<IP_TOS> 補助メッセージが到着パケットとともに渡され"
12869 "る。 これにはパケットヘッダーの Service/Precedence フィールドのタイプを指定す"
12870 "るバイトデータが含まれている。 ブール整数値のフラグをとる。"
12871
12872 #. type: TP
12873 #: build/C/man7/ip.7:825
12874 #, no-wrap
12875 msgid "B<IP_RECVTTL> (since Linux 2.2)"
12876 msgstr "B<IP_RECVTTL> (Linux 2.2 以降)"
12877
12878 #.  Precisely: 2.1.68
12879 #. type: Plain text
12880 #: build/C/man7/ip.7:835
12881 msgid ""
12882 "When this flag is set, pass a B<IP_TTL> control message with the time to "
12883 "live field of the received packet as a byte.  Not supported for "
12884 "B<SOCK_STREAM> sockets."
12885 msgstr ""
12886 "このフラグがセットされていると、 B<IP_TTL> コントロールメッセージが受信パケッ"
12887 "トの time-to-live フィールドのバイトデータとともに渡される。 B<SOCK_STREAM> "
12888 "ソケットではサポートされていない。"
12889
12890 #. type: TP
12891 #: build/C/man7/ip.7:835
12892 #, no-wrap
12893 msgid "B<IP_RETOPTS> (since Linux 2.2)"
12894 msgstr "B<IP_RETOPTS>"
12895
12896 #.  Precisely: 2.1.15
12897 #. type: Plain text
12898 #: build/C/man7/ip.7:842
12899 msgid ""
12900 "Identical to B<IP_RECVOPTS>, but returns raw unprocessed options with "
12901 "timestamp and route record options not filled in for this hop."
12902 msgstr ""
12903 "B<IP_RETOPTS> (Linux 2.2 以降)  B<IP_RECVOPTS> と等価だが、未処理の生のオプ"
12904 "ションを、 この hop では記入されない timestamp レコードと route レコードとと"
12905 "もに返す。"
12906
12907 #. type: TP
12908 #: build/C/man7/ip.7:842
12909 #, no-wrap
12910 msgid "B<IP_ROUTER_ALERT> (since Linux 2.2)"
12911 msgstr "B<IP_ROUTER_ALERT> (Linux 2.2 以降)"
12912
12913 #.  Precisely: 2.1.68
12914 #. type: Plain text
12915 #: build/C/man7/ip.7:854
12916 msgid ""
12917 "Pass all to-be forwarded packets with the IP Router Alert option set to this "
12918 "socket.  Only valid for raw sockets.  This is useful, for instance, for user-"
12919 "space RSVP daemons.  The tapped packets are not forwarded by the kernel; it "
12920 "is the user's responsibility to send them out again.  Socket binding is "
12921 "ignored, such packets are only filtered by protocol.  Expects an integer "
12922 "flag."
12923 msgstr ""
12924 "フォワードすべきパケットを IP Router Alert オプションをつけて このソケットに"
12925 "渡す。 raw ソケットに対してのみ有効である。これはたとえばユーザー空間の RSVP "
12926 "デーモンに対して便利である。タップされたパケットは カーネルによってはフォワー"
12927 "ドされないので、これらを再送するのは ユーザーの責任となる。ソケットのバインド"
12928 "は無視され、 このようなパケットはプロトコルによってのみフィルタリングされ"
12929 "る。 整数値のフラグを取る。"
12930
12931 #. type: TP
12932 #: build/C/man7/ip.7:854
12933 #, no-wrap
12934 msgid "B<IP_TOS> (since Linux 1.0)"
12935 msgstr "B<IP_TOS> (Linux 1.0 以降)"
12936
12937 #.  FIXME elaborate on this
12938 #.  Needs CAP_NET_ADMIN
12939 #.  Boolean
12940 #.  Since Linux 2.6.27
12941 #.  Author: KOVACS Krisztian <hidden@sch.bme.hu>
12942 #.  http://lwn.net/Articles/252545/
12943 #. type: Plain text
12944 #: build/C/man7/ip.7:888
12945 msgid ""
12946 "Set or receive the Type-Of-Service (TOS) field that is sent with every IP "
12947 "packet originating from this socket.  It is used to prioritize packets on "
12948 "the network.  TOS is a byte.  There are some standard TOS flags defined: "
12949 "B<IPTOS_LOWDELAY> to minimize delays for interactive traffic, "
12950 "B<IPTOS_THROUGHPUT> to optimize throughput, B<IPTOS_RELIABILITY> to optimize "
12951 "for reliability, B<IPTOS_MINCOST> should be used for \"filler data\" where "
12952 "slow transmission doesn't matter.  At most one of these TOS values can be "
12953 "specified.  Other bits are invalid and shall be cleared.  Linux sends "
12954 "B<IPTOS_LOWDELAY> datagrams first by default, but the exact behavior depends "
12955 "on the configured queueing discipline.  Some high priority levels may "
12956 "require superuser privileges (the B<CAP_NET_ADMIN> capability).  The "
12957 "priority can also be set in a protocol independent way by the "
12958 "(B<SOL_SOCKET>, B<SO_PRIORITY>)  socket option (see B<socket>(7))."
12959 msgstr ""
12960 "このソケットから送信されるすべての IP パケットに適用される Type-Of-Service "
12961 "(TOS) フィールドを設定・取得する。 これはネットワーク上でのパケットの優先度を"
12962 "決めるために用いられる。 TOS はバイトデータである。標準の TOS フラグがいくつ"
12963 "か定義されている。 B<IPTOS_LOWDELAY> はインタラクティブなトラフィックの遅延を"
12964 "最小にする。 B<IPTOS_THROUGHPUT> はスループットを最大にする。 "
12965 "B<IPTOS_RELIABILITY> は信頼性を最高にする。 B<IPTOS_MINCOST> は転送速度が遅く"
12966 "てもかまわないとき、「データを詰め込む」のに用いられる。 これらのうち、 1 つ"
12967 "までだけを設定できる。 他のビットは無効で、クリアされる。 Linux はデフォルト"
12968 "では B<IPTOS_LOWDELAY> データグラムを最初に送信する。 しかし、正確な振る舞い"
12969 "はキュー処理の設定に依存する。 高い優先度にするにはスーパーユーザー権限 "
12970 "(B<CAP_NET_ADMIN> ケーパビリティ) が必要となるかもしれない。 優先度は "
12971 "(B<SOL_SOCKET>, B<SO_PRIORITY>)  ソケットオプションを用いれば、 プロトコルに"
12972 "依存しない形でも設定できる (B<socket>(7)  を見よ)。"
12973
12974 #. type: TP
12975 #: build/C/man7/ip.7:888
12976 #, no-wrap
12977 msgid "B<IP_TRANSPARENT> (since Linux 2.6.24)"
12978 msgstr "B<IP_TRANSPARENT> (Linux 2.6.24 以降)"
12979
12980 #.  commit f5715aea4564f233767ea1d944b2637a5fd7cd2e
12981 #.      This patch introduces the IP_TRANSPARENT socket option: enabling that
12982 #.      will make the IPv4 routing omit the non-local source address check on
12983 #.      output. Setting IP_TRANSPARENT requires NET_ADMIN capability.
12984 #.  http://lwn.net/Articles/252545/
12985 #. type: Plain text
12986 #: build/C/man7/ip.7:908
12987 msgid ""
12988 "Setting this boolean option enables transparent proxying on this socket.  "
12989 "This socket option allows the calling application to bind to a nonlocal IP "
12990 "address and operate both as a client and a server with the foreign address "
12991 "as the local endpoint.  NOTE: this requires that routing be set up in a way "
12992 "that packets going to the foreign address are routed through the TProxy box "
12993 "(i.e., the system hosting the application that employs the B<IP_TRANSPARENT> "
12994 "socket option).  Enabling this socket option requires superuser privileges "
12995 "(the B<CAP_NET_ADMIN> capability)."
12996 msgstr ""
12997 "このブール値のオプションを有効にすると、 このソケットで透過プロキシ "
12998 "(transparent proxy) ができるようになる。 このソケットオプションを使うと、呼び"
12999 "出したアプリケーションは、 ローカルではない IP アドレスをバインドして、ローカ"
13000 "ルの端点として自分以外のアドレス (foreign address) を持つクライアントやサーバ"
13001 "の両方として動作できるようになる。 B<注意>: この機能が動作するためには、自分"
13002 "以外のアドレス宛のパケットが透過プロキシが動作するマシン (すなわちソケットオ"
13003 "プション B<IP_TRANSPARENT> を利用するアプリケーションが動作しているシステム) "
13004 "経由で転送されるように、 ルーティングが設定される必要がある。 このソケットオ"
13005 "プションを有効にするには、スーパーユーザー特権 (B<CAP_NET_ADMIN> ケーパビリ"
13006 "ティ) が必要である。"
13007
13008 #. type: Plain text
13009 #: build/C/man7/ip.7:911
13010 msgid ""
13011 "TProxy redirection with the iptables TPROXY target also requires that this "
13012 "option be set on the redirected socket."
13013 msgstr ""
13014 "iptables の TPROXY ターゲットで透過プロキシリダイレクション \n"
13015 "(TProxy redirection) を行うには、リダイレクトされるソケットに対して\n"
13016 "このオプションを設定する必要がある。"
13017
13018 #. type: TP
13019 #: build/C/man7/ip.7:911
13020 #, no-wrap
13021 msgid "B<IP_TTL> (since Linux 1.0)"
13022 msgstr "B<IP_TTL> (Linux 1.0 以降)"
13023
13024 #. type: Plain text
13025 #: build/C/man7/ip.7:915
13026 msgid ""
13027 "Set or retrieve the current time-to-live field that is used in every packet "
13028 "sent from this socket."
13029 msgstr ""
13030 "time-to-live フィールドの値を設定または取得する。 この値はこのソケットから送"
13031 "信されるすべてのパケットに用いられる。"
13032
13033 #. type: TP
13034 #: build/C/man7/ip.7:915
13035 #, no-wrap
13036 msgid "B<IP_UNBLOCK_SOURCE> (since Linux 2.4.22 / 2.5.68)"
13037 msgstr "B<IP_UNBLOCK_SOURCE> (Linux 2.4.22 以降 / 2.5.68 以降)"
13038
13039 #. type: Plain text
13040 #: build/C/man7/ip.7:921
13041 msgid ""
13042 "Unblock previously blocked multicast source.  Returns B<EADDRNOTAVAIL> when "
13043 "given source is not being blocked."
13044 msgstr ""
13045 "それ以前はブロックされていたマルチキャストの送信元のブロックを解除する。 指定"
13046 "した送信元がブロックされていない場合は B<EADDRNOTAVAIL> を返す。"
13047
13048 #.  FIXME As at 2.6.12, 14 Jun 2005, the following are undocumented:
13049 #.      ip_queue_maxlen
13050 #.      ip_conntrack_max
13051 #. type: Plain text
13052 #: build/C/man7/ip.7:942
13053 msgid ""
13054 "The IP protocol supports a set of I</proc> interfaces to configure some "
13055 "global parameters.  The parameters can be accessed by reading or writing "
13056 "files in the directory I</proc/sys/net/ipv4/>.  Interfaces described as "
13057 "I<Boolean> take an integer value, with a nonzero value (\"true\") meaning "
13058 "that the corresponding option is enabled, and a zero value (\"false\")  "
13059 "meaning that the option is disabled."
13060 msgstr ""
13061 "IP プロトコルでは、いくつかのグローバルパラメーターを設定するための I</proc> "
13062 "ファイル群が用意されている。 これらのパラメーターには、 I</proc/sys/net/ipv4/"
13063 "> ディレクトリ内のファイルの読み書きでアクセスできる。 I<Boolean> と書かれた"
13064 "インターフェースは整数値をとり、 0 以外の値 (\"true\") は対応するオプションが"
13065 "有効、 0 値 (\"false\") は無効、であることを意味する。"
13066
13067 #. type: TP
13068 #: build/C/man7/ip.7:942
13069 #, no-wrap
13070 msgid "I<ip_always_defrag> (Boolean; since Linux 2.2.13)"
13071 msgstr "I<ip_always_defrag> (Boolean; Linux 2.2.13 以降)"
13072
13073 #. type: Plain text
13074 #: build/C/man7/ip.7:948
13075 msgid ""
13076 "[New with kernel 2.2.13; in earlier kernel versions this feature was "
13077 "controlled at compile time by the B<CONFIG_IP_ALWAYS_DEFRAG> option; this "
13078 "option is not present in 2.4.x and later]"
13079 msgstr ""
13080 "[2.2.13 で新規登場。以前のバージョンのカーネルでは、この機能は コンパイル時"
13081 "に B<CONFIG_IP_ALWAYS_DEFRAG> オプションによって制御されていた; このファイル"
13082 "は 2.4.x 以降では存在しない]"
13083
13084 #. type: Plain text
13085 #: build/C/man7/ip.7:955
13086 msgid ""
13087 "When this boolean flag is enabled (not equal 0), incoming fragments (parts "
13088 "of IP packets that arose when some host between origin and destination "
13089 "decided that the packets were too large and cut them into pieces) will be "
13090 "reassembled (defragmented) before being processed, even if they are about to "
13091 "be forwarded."
13092 msgstr ""
13093 "このブール値のフラグが有効になっている (0 以外になっている) と、 到着したフラ"
13094 "グメント (IP パケットの一部で、 発信元と発信先の間のどこかのホストで、そのパ"
13095 "ケットが 大きすぎると判断され、分割された場合に生じる)  は、たとえフォワード"
13096 "される場合であっても 処理前に再構築 (デフラグメント) される。"
13097
13098 #. type: Plain text
13099 #: build/C/man7/ip.7:962
13100 msgid ""
13101 "Only enable if running either a firewall that is the sole link to your "
13102 "network or a transparent proxy; never ever use it for a normal router or "
13103 "host.  Otherwise, fragmented communication can be disturbed if the fragments "
13104 "travel over different links.  Defragmentation also has a large memory and "
13105 "CPU time cost."
13106 msgstr ""
13107 "ファイアウォールがローカル側のネットワークに唯一のリンクを持っている 場合や、"
13108 "透過プロクシの場合に限って有効にすべきである。 通常のルーターやホストでは決し"
13109 "て使用することのないように。 さもないとフラグメントが別のリンクを経由して伝わ"
13110 "る場合に、 通信のフラグメント化ができなくなってしまう。 またフラグメント再構"
13111 "築処理はメモリーと CPU 時間のコストが非常に大きい。"
13112
13113 #. type: Plain text
13114 #: build/C/man7/ip.7:966
13115 msgid ""
13116 "This is automagically turned on when masquerading or transparent proxying "
13117 "are configured."
13118 msgstr ""
13119 "これはマスカレードや透過プロクシが設定されると、 不思議な仕組みによって自動的"
13120 "に有効になる。"
13121
13122 #. type: TP
13123 #: build/C/man7/ip.7:966
13124 #, no-wrap
13125 msgid "I<ip_autoconfig> (since Linux 2.2 to 2.6.17)"
13126 msgstr "I<ip_autoconfig> (Linux 2.2 以降 2.6.17 まで)"
13127
13128 #.  Precisely: since 2.1.68
13129 #.  FIXME document ip_autoconfig
13130 #. type: Plain text
13131 #: build/C/man7/ip.7:972
13132 msgid "Not documented."
13133 msgstr "まだ記述していない。"
13134
13135 #. type: TP
13136 #: build/C/man7/ip.7:972
13137 #, no-wrap
13138 msgid "I<ip_default_ttl> (integer; default: 64; since Linux 2.2)"
13139 msgstr "I<ip_default_ttl> (integer; default: 64; Linux 2.2 以降)"
13140
13141 #.  Precisely: 2.1.15
13142 #. type: Plain text
13143 #: build/C/man7/ip.7:980
13144 msgid ""
13145 "Set the default time-to-live value of outgoing packets.  This can be changed "
13146 "per socket with the B<IP_TTL> option."
13147 msgstr ""
13148 "送出されるパケットの time-to-live 値のデフォルトをセットする。 これは "
13149 "B<IP_TTL> オプションを用いれば、パケットごとに変えることもできる。"
13150
13151 #. type: TP
13152 #: build/C/man7/ip.7:980
13153 #, no-wrap
13154 msgid "I<ip_dynaddr> (Boolean; default: disabled; since Linux 2.0.31)"
13155 msgstr "I<ip_dynaddr> (ブール値; デフォルト: 無効; Linux 2.0.31 以降)"
13156
13157 #. type: Plain text
13158 #: build/C/man7/ip.7:987
13159 msgid ""
13160 "Enable dynamic socket address and masquerading entry rewriting on interface "
13161 "address change.  This is useful for dialup interface with changing IP "
13162 "addresses.  0 means no rewriting, 1 turns it on and 2 enables verbose mode."
13163 msgstr ""
13164 "動的ソケットアドレスと、インターフェースアドレスが変更された際の マスカレード"
13165 "エントリーの再書き込みを有効にする。 ダイアルアップインターフェースで、 IP ア"
13166 "ドレスが変更される場合に便利である。"
13167
13168 #. type: TP
13169 #: build/C/man7/ip.7:987
13170 #, no-wrap
13171 msgid "I<ip_forward> (Boolean; default: disabled; since Linux 1.2)"
13172 msgstr "I<ip_forward> (ブール値; デフォルト: 無効; Linux 1.2 以降)"
13173
13174 #. type: Plain text
13175 #: build/C/man7/ip.7:992
13176 msgid ""
13177 "Enable IP forwarding with a boolean flag.  IP forwarding can be also set on "
13178 "a per-interface basis."
13179 msgstr ""
13180 "IP forwarding を有効にするかどうかのブール値フラグ。 IP forwarding するかどう"
13181 "かはインターフェースごとにも設定できる。"
13182
13183 #. type: TP
13184 #: build/C/man7/ip.7:992
13185 #, no-wrap
13186 msgid "I<ip_local_port_range> (since Linux 2.2)"
13187 msgstr "I<ip_local_port_range> (Linux 2.2 以降)"
13188
13189 #.  Precisely: since 2.1.68
13190 #. type: Plain text
13191 #: build/C/man7/ip.7:1000
13192 msgid ""
13193 "This file contains two integers that define the default local port range "
13194 "allocated to sockets that are not explicitly bound to a port number\\(emthat "
13195 "is, the range used for I<ephemeral ports>.  An ephemeral port is allocated "
13196 "to a socket in the following circumstances:"
13197 msgstr ""
13198 "このファイルには、 ポート番号に明示的にバインドされないソケットに割り当てられ"
13199 "るデフォルトのローカルポートの範囲 \\(em つまり「一時ポート (I<ephemeral "
13200 "ports>)」に使用される範囲 \\(em を定める 2 つの整数が入っている。 一時ポート"
13201 "は以下の場合にソケットに割り当てられる。"
13202
13203 #. type: Plain text
13204 #: build/C/man7/ip.7:1004
13205 msgid ""
13206 "the port number in a socket address is specified as 0 when calling "
13207 "B<bind>(2);"
13208 msgstr ""
13209 "B<bind>(2) の呼び出し時にソケットアドレスのポート番号に 0 が指定されている。"
13210
13211 #. type: Plain text
13212 #: build/C/man7/ip.7:1007
13213 msgid ""
13214 "B<listen>(2)  is called on a stream socket that was not previously bound;"
13215 msgstr ""
13216 "バインドされていないストリームソケットに対して B<listen>(2) が呼び出された。"
13217
13218 #. type: Plain text
13219 #: build/C/man7/ip.7:1010
13220 msgid "B<connect>(2)  was called on a socket that was not previously bound;"
13221 msgstr "バインドされていないソケットに対して B<connect>(2)  が呼ばれた。"
13222
13223 #. type: Plain text
13224 #: build/C/man7/ip.7:1013
13225 msgid ""
13226 "B<sendto>(2)  is called on a datagram socket that was not previously bound."
13227 msgstr ""
13228 "バインドされていないデータグラムソケットに対して B<sendto>(2)  が呼ばれた。"
13229
13230 #. type: Plain text
13231 #: build/C/man7/ip.7:1020
13232 msgid ""
13233 "Allocation of ephemeral ports starts with the first number in "
13234 "I<ip_local_port_range> and ends with the second number.  If the range of "
13235 "ephemeral ports is exhausted, then the relevant system call returns an error "
13236 "(but see BUGS)."
13237 msgstr ""
13238 "一時ポートに割り当てられるポート番号の範囲は、 I<ip_local_port_range> の最初"
13239 "の数字から始まり、 2 番目の数字で終わる。 一時ポートの範囲を使い切った場合、 "
13240 "関連するシステムコールはエラーを返す (バグの節を参照)。"
13241
13242 #. type: Plain text
13243 #: build/C/man7/ip.7:1031
13244 msgid ""
13245 "Note that the port range in I<ip_local_port_range> should not conflict with "
13246 "the ports used by masquerading (although the case is handled).  Also, "
13247 "arbitrary choices may cause problems with some firewall packet filters that "
13248 "make assumptions about the local ports in use.  The first number should be "
13249 "at least greater than 1024, or better, greater than 4096, to avoid clashes "
13250 "with well known ports and to minimize firewall problems."
13251 msgstr ""
13252 "I<ip_local_port_range> で指定するポート番号の範囲は、 マスカレードで用いられ"
13253 "ているポートと重なってはならない (その場合も取り扱われるが)。 ファイアウォー"
13254 "ルのパケットフィルターが「利用中のローカルポート」 について何らかの仮定をして"
13255 "いる場合には、 番号を勝手に決めてしまうと問題が起きるかもしれない。 1 番目の"
13256 "番号は少なくとも 1024 より大きくすべきである。 良く使われるポートとの衝突を避"
13257 "けたり、ファイアウォールの問題を 回避したければ、 4096 よりも大きくするほうが"
13258 "良いだろう。"
13259
13260 #. type: TP
13261 #: build/C/man7/ip.7:1031
13262 #, no-wrap
13263 msgid "I<ip_no_pmtu_disc> (Boolean; default: disabled; since Linux 2.2)"
13264 msgstr "I<ip_no_pmtu_disc> (ブール値; デフォルト: 無効; Linux 2.2 以降)"
13265
13266 #.  Precisely: 2.1.15
13267 #.  The following is from 2.6.12: Documentation/networking/ip-sysctl.txt
13268 #. type: Plain text
13269 #: build/C/man7/ip.7:1043
13270 msgid ""
13271 "If enabled, don't do Path MTU Discovery for TCP sockets by default.  Path "
13272 "MTU discovery may fail if misconfigured firewalls (that drop all ICMP "
13273 "packets) or misconfigured interfaces (e.g., a point-to-point link where the "
13274 "both ends don't agree on the MTU) are on the path.  It is better to fix the "
13275 "broken routers on the path than to turn off Path MTU Discovery globally, "
13276 "because not doing it incurs a high cost to the network."
13277 msgstr ""
13278 "有効になっていると、デフォルトで TCP ソケットに対する Path MTU Discoverty を"
13279 "行わない。 Path MTU Discovery は、 正しく設定されていない (ICMP パケットを全"
13280 "てドロップする) ファイアウォールや、 (point-to-point リンクで双方の MTU が一"
13281 "致していない場合など)  正しく設定されていないインターフェースが経路上に存在す"
13282 "ると失敗してしまう。 Path MTU Discovery をグローバルに無効にするよりは、 壊れ"
13283 "ているルーターを直すほうが良い。 Path MTU Discovery を無効にするとネットワー"
13284 "クのコストが 大きくなってしまうからである。"
13285
13286 #. type: TP
13287 #: build/C/man7/ip.7:1043
13288 #, no-wrap
13289 msgid "I<ip_nonlocal_bind> (Boolean; default: disabled; since Linux 2.4)"
13290 msgstr "I<ip_nonlocal_bind> (ブール値; デフォルト: 無効; Linux 2.4 以降)"
13291
13292 #.  Precisely: patch-2.4.0-test10
13293 #.  The following is from 2.6.12: Documentation/networking/ip-sysctl.txt
13294 #. type: Plain text
13295 #: build/C/man7/ip.7:1052
13296 msgid ""
13297 "If set, allows processes to B<bind>(2)  to nonlocal IP addresses, which can "
13298 "be quite useful, but may break some applications."
13299 msgstr ""
13300 "セットされていれば、プロセスが自分以外の IP アドレスを B<bind>(2)  できるよう"
13301 "になる。これはかなり便利だが、うまく動かないアプリケーションもある。"
13302
13303 #. type: TP
13304 #: build/C/man7/ip.7:1052
13305 #, no-wrap
13306 msgid "I<ip6frag_time> (integer; default: 30)"
13307 msgstr "I<ip6frag_time> (integer; default: 30)"
13308
13309 #.  The following is from 2.6.12: Documentation/networking/ip-sysctl.txt
13310 #. type: Plain text
13311 #: build/C/man7/ip.7:1057
13312 msgid "Time in seconds to keep an IPv6 fragment in memory."
13313 msgstr "IPv6 フラグメントをメモリーに保持しておく時間 (秒単位)。"
13314
13315 #. type: TP
13316 #: build/C/man7/ip.7:1057
13317 #, no-wrap
13318 msgid "I<ip6frag_secret_interval> (integer; default: 600)"
13319 msgstr "I<ip6frag_secret_interval> (integer; default: 600)"
13320
13321 #. type: Plain text
13322 #: build/C/man7/ip.7:1061
13323 msgid ""
13324 "Regeneration interval (in seconds) of the hash secret (or lifetime for the "
13325 "hash secret) for IPv6 fragments."
13326 msgstr ""
13327 "IPv6 フラグメントの hash secret の生成間隔 (hash secret の寿命)  (秒単位)。"
13328
13329 #. type: TP
13330 #: build/C/man7/ip.7:1061
13331 #, no-wrap
13332 msgid "I<ipfrag_high_thresh> (integer), I<ipfrag_low_thresh> (integer)"
13333 msgstr "I<ipfrag_high_thresh> (integer), I<ipfrag_low_thresh> (integer)"
13334
13335 #. type: Plain text
13336 #: build/C/man7/ip.7:1068
13337 msgid ""
13338 "If the amount of queued IP fragments reaches I<ipfrag_high_thresh>, the "
13339 "queue is pruned down to I<ipfrag_low_thresh>.  Contains an integer with the "
13340 "number of bytes."
13341 msgstr ""
13342 "キューイングされている IP フラグメントの量が I<ipfrag_high_thresh> に達する"
13343 "と、キューの内容は I<ipfrag_low_thresh> にまで切り捨てられる。それぞれの大き"
13344 "さを バイト単位で表す整数値が入っている。"
13345
13346 #. type: TP
13347 #: build/C/man7/ip.7:1068
13348 #, no-wrap
13349 msgid "I<neigh/*>"
13350 msgstr "I<neigh/*>"
13351
13352 #.  FIXME Document the conf/*/* interfaces
13353 #.  FIXME Document the route/* interfaces
13354 #. type: Plain text
13355 #: build/C/man7/ip.7:1075
13356 msgid "See B<arp>(7)."
13357 msgstr "B<arp>(7)  を見よ。"
13358
13359 #.  2006-04-02, mtk
13360 #.  commented out the following because ipchains is obsolete
13361 #.  .PP
13362 #.  The ioctls to configure firewalling are documented in
13363 #.  .BR ipfw (4)
13364 #.  from the
13365 #.  .B ipchains
13366 #.  package.
13367 #. type: Plain text
13368 #: build/C/man7/ip.7:1088
13369 msgid "All ioctls described in B<socket>(7)  apply to B<ip>."
13370 msgstr "B<socket>(7)  に記述されている ioctl は、すべて B<ip> にも適用される。"
13371
13372 #.  FIXME Add a discussion of multicasting
13373 #. type: Plain text
13374 #: build/C/man7/ip.7:1092
13375 msgid ""
13376 "Ioctls to configure generic device parameters are described in "
13377 "B<netdevice>(7)."
13378 msgstr ""
13379 "ジェネリックデバイスのパラメーターを設定する ioctl については "
13380 "B<netdevice>(7)  に記述されている。"
13381
13382 #. type: Plain text
13383 #: build/C/man7/ip.7:1112
13384 msgid ""
13385 "The user tried to execute an operation without the necessary permissions.  "
13386 "These include: sending a packet to a broadcast address without having the "
13387 "B<SO_BROADCAST> flag set; sending a packet via a I<prohibit> route; "
13388 "modifying firewall settings without superuser privileges (the "
13389 "B<CAP_NET_ADMIN> capability); binding to a privileged port without superuser "
13390 "privileges (the B<CAP_NET_BIND_SERVICE> capability)."
13391 msgstr ""
13392 "必要な権限のないユーザーが操作を実行しようとした。 以下のような場合が考えられ"
13393 "る: B<SO_BROADCAST> フラグを設定していない状態でブロードキャストアドレスに パ"
13394 "ケットを送ろうとした。 I<prohibit> なルートを通してパケットを送ろうとした。 "
13395 "スーパーユーザー権限 (B<CAP_NET_ADMIN> ケーパビリティ) なしでファイアウォール"
13396 "の設定を変更しようとした。 スーパーユーザー権限 (B<CAP_NET_BIND_SERVICE> ケー"
13397 "パビリティ) なしで特権ポートにバインドしようとした。"
13398
13399 #. type: Plain text
13400 #: build/C/man7/ip.7:1125
13401 msgid "An connection operation on a nonblocking socket is already in progress."
13402 msgstr "非ブロッキングソケットに対する接続操作が既に実行中である。"
13403
13404 #. type: Plain text
13405 #: build/C/man7/ip.7:1134
13406 msgid ""
13407 "No valid routing table entry matches the destination address.  This error "
13408 "can be caused by a ICMP message from a remote router or for the local "
13409 "routing table."
13410 msgstr ""
13411 "宛先アドレスにマッチする有効なエントリーがルーティングテーブルに 存在しない。"
13412 "このエラーはリモートルーターからの、 あるいはローカルルーティングテーブルへ"
13413 "の ICMP メッセージによって引き起こされることがある。"
13414
13415 #. type: Plain text
13416 #: build/C/man7/ip.7:1140
13417 msgid ""
13418 "Invalid argument passed.  For send operations this can be caused by sending "
13419 "to a I<blackhole> route."
13420 msgstr ""
13421 "不正な引き数が渡された。送信操作において、 I<blackhole> ルートに送信しようと"
13422 "するとこのエラーが起こることがある。"
13423
13424 #. type: Plain text
13425 #: build/C/man7/ip.7:1147
13426 msgid "Datagram is bigger than an MTU on the path and it cannot be fragmented."
13427 msgstr "データグラムが path MTU よりも大きく、フラグメント化もできない。"
13428
13429 #. type: TP
13430 #: build/C/man7/ip.7:1147
13431 #, no-wrap
13432 msgid "B<ENOBUFS>, B<ENOMEM>"
13433 msgstr "B<ENOBUFS>, B<ENOMEM>"
13434
13435 #. type: Plain text
13436 #: build/C/man7/ip.7:1152
13437 msgid ""
13438 "Not enough free memory.  This often means that the memory allocation is "
13439 "limited by the socket buffer limits, not by the system memory, but this is "
13440 "not 100% consistent."
13441 msgstr ""
13442 "空きメモリーが足りない。 このエラーは、メモリーアロケーションがソケットバッ"
13443 "ファーの 大きさによって制限されていることを意味しているのが通常であるが、 "
13444 "100% そうだというわけではない。"
13445
13446 #. type: Plain text
13447 #: build/C/man7/ip.7:1170
13448 msgid ""
13449 "User doesn't have permission to set high priority, change configuration, or "
13450 "send signals to the requested process or group."
13451 msgstr ""
13452 "高い優先度を設定したり、設定を変更したり、要求されたプロセスや プロセスグルー"
13453 "プにシグナルを送ったりするのに必要な権限を、 ユーザーが持っていない。"
13454
13455 #. type: Plain text
13456 #: build/C/man7/ip.7:1176
13457 msgid "The socket is not configured or an unknown socket type was requested."
13458 msgstr "ソケットが未設定であるか、知らないソケットタイプが要求された。"
13459
13460 #. type: Plain text
13461 #: build/C/man7/ip.7:1183
13462 msgid ""
13463 "Other errors may be generated by the overlaying protocols; see B<tcp>(7), "
13464 "B<raw>(7), B<udp>(7), and B<socket>(7)."
13465 msgstr ""
13466 "他のエラーが上層のプロトコルによって生じるかもしれない。 B<tcp>(7), "
13467 "B<raw>(7), B<udp>(7), B<socket>(7)  などを参照のこと。"
13468
13469 #.  IP_PASSSEC is Linux-specific
13470 #.  IP_XFRM_POLICY is Linux-specific
13471 #.  IP_IPSEC_POLICY is a nonstandard extension, also present on some BSDs
13472 #. type: Plain text
13473 #: build/C/man7/ip.7:1198
13474 msgid ""
13475 "B<IP_FREEBIND>, B<IP_MSFILTER>, B<IP_MTU>, B<IP_MTU_DISCOVER>, "
13476 "B<IP_RECVORIGDSTADDR>, B<IP_PKTINFO>, B<IP_RECVERR>, B<IP_ROUTER_ALERT>, and "
13477 "B<IP_TRANSPARENT> are Linux-specific."
13478 msgstr ""
13479 "B<IP_FREEBIND>, B<IP_MSFILTER>, B<IP_MTU>, B<IP_MTU_DISCOVER>, "
13480 "B<IP_RECVORIGDSTADDR>,\n"
13481 "B<IP_PKTINFO>, B<IP_RECVERR>, B<IP_ROUTER_ALERT>, and B<IP_TRANSPARENT> \n"
13482 "は Linux 固有である。"
13483
13484 #. type: Plain text
13485 #: build/C/man7/ip.7:1207
13486 msgid ""
13487 "Be very careful with the B<SO_BROADCAST> option - it is not privileged in "
13488 "Linux.  It is easy to overload the network with careless broadcasts.  For "
13489 "new application protocols it is better to use a multicast group instead of "
13490 "broadcasting.  Broadcasting is discouraged."
13491 msgstr ""
13492 "B<SO_BROADCAST> オプションの利用には、くれぐれも注意すること。\n"
13493 "これは Linux では特権操作ではない。\n"
13494 "不注意なブロードキャストを行うと、ネットワークは簡単に過負荷状態になる。\n"
13495 "新しいアプリケーションプロトコルには、ブロードキャストではなく\n"
13496 "マルチキャストグループを用いるほうがよい。 ブロードキャストは推奨されない。"
13497
13498 #. type: Plain text
13499 #: build/C/man7/ip.7:1217
13500 msgid ""
13501 "Some other BSD sockets implementations provide B<IP_RCVDSTADDR> and "
13502 "B<IP_RECVIF> socket options to get the destination address and the interface "
13503 "of received datagrams.  Linux has the more general B<IP_PKTINFO> for the "
13504 "same task."
13505 msgstr ""
13506 "他の BSD のソケット実装では、 B<IP_RCVDSTADDR> と B<IP_RECVIF> といったソケッ"
13507 "トオプションがサポートされており、 宛先アドレスや受信データグラムのインター"
13508 "フェースが取得できるように なっていることもある。 Linux で同じことをやらせる"
13509 "には、より一般的な B<IP_PKTINFO> が使える。"
13510
13511 #. type: Plain text
13512 #: build/C/man7/ip.7:1226
13513 msgid ""
13514 "Some BSD sockets implementations also provide an B<IP_RECVTTL> option, but "
13515 "an ancillary message with type B<IP_RECVTTL> is passed with the incoming "
13516 "packet.  This is different from the B<IP_TTL> option used in Linux."
13517 msgstr ""
13518 "いくつかの BSD のソケット実装では B<IP_RECVTTL> オプションも提供されている"
13519 "が、タイプ B<IP_RECVTTL> の補助メッセージは受信パケットとともに渡される。 こ"
13520 "れは Linux で使われている B<IP_TTL> オプションとは異なる動作である。"
13521
13522 #. type: Plain text
13523 #: build/C/man7/ip.7:1232
13524 msgid ""
13525 "Using B<SOL_IP> socket options level isn't portable, BSD-based stacks use "
13526 "B<IPPROTO_IP> level."
13527 msgstr ""
13528 "B<SOL_IP> ソケットオプションレベルは移植性がない。 BSD ベースのプロトコルス"
13529 "タックでは B<IPPROTO_IP> レベルが使用されている。"
13530
13531 #. type: Plain text
13532 #: build/C/man7/ip.7:1245
13533 msgid ""
13534 "For compatibility with Linux 2.0, the obsolete B<socket(AF_INET, "
13535 "SOCK_PACKET, >I<protocol>B<)> syntax is still supported to open a "
13536 "B<packet>(7)  socket.  This is deprecated and should be replaced by "
13537 "B<socket(AF_PACKET, SOCK_RAW, >I<protocol>B<)> instead.  The main difference "
13538 "is the new I<sockaddr_ll> address structure for generic link layer "
13539 "information instead of the old B<sockaddr_pkt>."
13540 msgstr ""
13541 "Linux 2.0 との互換性のために、 obsolete な B<socket(AF_INET, SOCK_PACKET, "
13542 ">I<protocol>B<)> という書式でも B<packet>(7)  をオープンできるようになってい"
13543 "るが、これはお勧めできない。今後は B<socket(AF_PACKET, SOCK_RAW, "
13544 ">I<protocol>B<)> を代わりに用いるべきである。主な違いは、ジェネリックなリンク"
13545 "層用の I<sockaddr_ll> アドレス構造体が、古い B<sockaddr_pkt> に変わって用いら"
13546 "れるようになったことである。"
13547
13548 #. type: Plain text
13549 #: build/C/man7/ip.7:1255
13550 msgid ""
13551 "The error used to diagnose exhaustion of the ephemeral port range differs "
13552 "across the various system calls (B<connect>(2), B<bind>(2), B<listen>(2), "
13553 "B<sendto>(2))  that can assign ephemeral ports."
13554 msgstr ""
13555 "一時ポートの範囲の枯渇を示すのに使われるエラーは、 一時ポートの割り当てを行え"
13556 "るシステムコール (B<connect>(2), B<bind>(2), B<listen>(2), B<sendto>(2)) によ"
13557 "り異なる。"
13558
13559 #.  .PP
13560 #.  Some versions of glibc forget to declare
13561 #.  .IR in_pktinfo .
13562 #.  Workaround currently is to copy it into your program from this man page.
13563 #. type: Plain text
13564 #: build/C/man7/ip.7:1262
13565 msgid ""
13566 "The ioctls to configure IP-specific interface options and ARP tables are not "
13567 "described."
13568 msgstr ""
13569 "IP 固有のインターフェースオプションを指定するための ioctl と ARP テーブルのこ"
13570 "とが記述されていない。"
13571
13572 #.  .SH AUTHORS
13573 #.  This man page was written by Andi Kleen.
13574 #. type: Plain text
13575 #: build/C/man7/ip.7:1272
13576 msgid ""
13577 "Receiving the original destination address with B<MSG_ERRQUEUE> in "
13578 "I<msg_name> by B<recvmsg>(2)  does not work in some 2.2 kernels."
13579 msgstr ""
13580 "B<recvmsg>(2)  で I<msg_name> に B<MSG_ERRQUEUE> を指定して、受信パケットに"
13581 "入っていた宛先アドレスを取得する方法は 2.2 カーネルの一部でうまく動かない。"
13582
13583 #. type: Plain text
13584 #: build/C/man7/ip.7:1285
13585 msgid ""
13586 "B<recvmsg>(2), B<sendmsg>(2), B<byteorder>(3), B<ipfw>(4), "
13587 "B<capabilities>(7), B<icmp>(7), B<ipv6>(7), B<netlink>(7), B<raw>(7), "
13588 "B<socket>(7), B<tcp>(7), B<udp>(7)"
13589 msgstr ""
13590 "B<recvmsg>(2), B<sendmsg>(2), B<byteorder>(3), B<ipfw>(4), "
13591 "B<capabilities>(7), B<icmp>(7), B<ipv6>(7), B<netlink>(7), B<raw>(7), "
13592 "B<socket>(7), B<tcp>(7), B<udp>(7)"
13593
13594 #. type: Plain text
13595 #: build/C/man7/ip.7:1289
13596 msgid ""
13597 "RFC\\ 791 for the original IP specification.  RFC\\ 1122 for the IPv4 host "
13598 "requirements.  RFC\\ 1812 for the IPv4 router requirements."
13599 msgstr ""
13600 "RFC\\ 791: 元々の IP 仕様。 RFC\\ 1122: IPv4 ホストの要件。 RFC\\ 1812: IPv4 "
13601 "ルーターの要件。"
13602
13603 #. type: TH
13604 #: build/C/man7/ipv6.7:86
13605 #, no-wrap
13606 msgid "IPV6"
13607 msgstr "IPV6"
13608
13609 #. type: TH
13610 #: build/C/man7/ipv6.7:86 build/C/man7/packet.7:12
13611 #, no-wrap
13612 msgid "2014-08-19"
13613 msgstr "2014-08-19"
13614
13615 #. type: Plain text
13616 #: build/C/man7/ipv6.7:89
13617 msgid "ipv6 - Linux IPv6 protocol implementation"
13618 msgstr "ipv6 - Linux IPv6 プロトコルの実装"
13619
13620 #. type: Plain text
13621 #: build/C/man7/ipv6.7:95
13622 msgid "I<tcp6_socket>B< = socket(AF_INET6, SOCK_STREAM, 0);>"
13623 msgstr "I<tcp6_socket>B< = socket(AF_INET6, SOCK_STREAM, 0);>"
13624
13625 #. type: Plain text
13626 #: build/C/man7/ipv6.7:97
13627 msgid "I<raw6_socket>B< = socket(AF_INET6, SOCK_RAW, >I<protocol>B<);>"
13628 msgstr "I<raw6_socket>B< = socket(AF_INET6, SOCK_RAW, >I<protocol>B<);>"
13629
13630 #. type: Plain text
13631 #: build/C/man7/ipv6.7:99
13632 msgid "I<udp6_socket>B< = socket(AF_INET6, SOCK_DGRAM, >I<protocol>B<);>"
13633 msgstr "I<udp6_socket>B< = socket(AF_INET6, SOCK_DGRAM, >I<protocol>B<);>"
13634
13635 #. type: Plain text
13636 #: build/C/man7/ipv6.7:106
13637 msgid ""
13638 "Linux 2.2 optionally implements the Internet Protocol, version 6.  This man "
13639 "page contains a description of the IPv6 basic API as implemented by the "
13640 "Linux kernel and glibc 2.1.  The interface is based on the BSD sockets "
13641 "interface; see B<socket>(7)."
13642 msgstr ""
13643 "Linux 2.2 では、Internet Protocol, version 6 を オプションとして実装してい"
13644 "る。 この man ページでは、Linux カーネルと glibc 2.1 での実装に基づいて、 "
13645 "IPv6 の基本的な API を解説する。 インターフェースは BSD ソケットインター"
13646 "フェースをもとにしている。 B<socket>(7)  を参照。"
13647
13648 #. type: Plain text
13649 #: build/C/man7/ipv6.7:111
13650 msgid ""
13651 "The IPv6 API aims to be mostly compatible with the IPv4 API (see B<ip>(7)).  "
13652 "Only differences are described in this man page."
13653 msgstr ""
13654 "IPv6 API は、 IPv4 API (B<ip>(7)  参照) とほぼ互換になることを目指している。 "
13655 "この man ページでは相違点のみを解説する。"
13656
13657 #. type: Plain text
13658 #: build/C/man7/ipv6.7:123
13659 msgid ""
13660 "To bind an B<AF_INET6> socket to any process, the local address should be "
13661 "copied from the I<in6addr_any> variable which has I<in6_addr> type.  In "
13662 "static initializations, B<IN6ADDR_ANY_INIT> may also be used, which expands "
13663 "to a constant expression.  Both of them are in network byte order."
13664 msgstr ""
13665 "B<AF_INET6> ソケットを何らかのプロセスにバインドするには、 ローカルアドレス"
13666 "を I<in6_addr> 型の変数 I<in6addr_any> からコピーしてくる必要がある。 static "
13667 "な初期値 B<IN6ADDR_ANY_INIT> も用いることができ、これは定数式に展開される。 "
13668 "これらの両者はネットワークバイトオーダーである。"
13669
13670 #. type: Plain text
13671 #: build/C/man7/ipv6.7:130
13672 msgid ""
13673 "The IPv6 loopback address (::1) is available in the global "
13674 "I<in6addr_loopback> variable.  For initializations, B<IN6ADDR_LOOPBACK_INIT> "
13675 "should be used."
13676 msgstr ""
13677 "IPv6 のループバックアドレス (::1) は global 変数 I<in6addr_loopback> から取得"
13678 "できる。初期化には B<IN6ADDR_LOOPBACK_INIT> を用いるべきである。"
13679
13680 #. type: Plain text
13681 #: build/C/man7/ipv6.7:137
13682 msgid ""
13683 "IPv4 connections can be handled with the v6 API by using the v4-mapped-on-v6 "
13684 "address type; thus a program only needs to support this API type to support "
13685 "both protocols.  This is handled transparently by the address handling "
13686 "functions in the C library."
13687 msgstr ""
13688 "v4-mapped-on-v6 アドレス型を用いることで、 IPv4 接続も v6 API で扱うことがで"
13689 "きる。 こうすれば、プログラムは v6 の API をサポートするだけで、 両方のプロト"
13690 "コルをサポートできる。 v4-mapped-on-v6 アドレス型は C ライブラリ内部のアドレ"
13691 "スを 扱う関数によって透過的に処理される。"
13692
13693 #. type: Plain text
13694 #: build/C/man7/ipv6.7:142
13695 msgid ""
13696 "IPv4 and IPv6 share the local port space.  When you get an IPv4 connection "
13697 "or packet to a IPv6 socket, its source address will be mapped to v6 and it "
13698 "will be mapped to v6."
13699 msgstr ""
13700 "IPv4 と IPv6 はローカルポート空間を共有する。 IPv4 の接続 (またはパケット) "
13701 "を IPv6 ソケットが取得すると、 発信元アドレスが v6 にマップされ、その接続 (パ"
13702 "ケット) も v6 にマップされる。"
13703
13704 #. type: Plain text
13705 #: build/C/man7/ipv6.7:152
13706 #, no-wrap
13707 msgid ""
13708 "struct sockaddr_in6 {\n"
13709 "    sa_family_t     sin6_family;   /* AF_INET6 */\n"
13710 "    in_port_t       sin6_port;     /* port number */\n"
13711 "    uint32_t        sin6_flowinfo; /* IPv6 flow information */\n"
13712 "    struct in6_addr sin6_addr;     /* IPv6 address */\n"
13713 "    uint32_t        sin6_scope_id; /* Scope ID (new in 2.4) */\n"
13714 "};\n"
13715 msgstr ""
13716 "struct sockaddr_in6 {\n"
13717 "    sa_family_t     sin6_family;   /* AF_INET6 */\n"
13718 "    in_port_t       sin6_port;     /* port number */\n"
13719 "    uint32_t        sin6_flowinfo; /* IPv6 flow information */\n"
13720 "    struct in6_addr sin6_addr;     /* IPv6 address */\n"
13721 "    uint32_t        sin6_scope_id; /* Scope ID (new in 2.4) */\n"
13722 "};\n"
13723
13724 #. type: Plain text
13725 #: build/C/man7/ipv6.7:156
13726 #, no-wrap
13727 msgid ""
13728 "struct in6_addr {\n"
13729 "    unsigned char   s6_addr[16];   /* IPv6 address */\n"
13730 "};\n"
13731 msgstr ""
13732 "struct in6_addr {\n"
13733 "    unsigned char   s6_addr[16];   /* IPv6 address */\n"
13734 "};\n"
13735
13736 #. type: Plain text
13737 #: build/C/man7/ipv6.7:178
13738 msgid ""
13739 "I<sin6_family> is always set to B<AF_INET6>; I<sin6_port> is the protocol "
13740 "port (see I<sin_port> in B<ip>(7)); I<sin6_flowinfo> is the IPv6 flow "
13741 "identifier; I<sin6_addr> is the 128-bit IPv6 address.  I<sin6_scope_id> is "
13742 "an ID depending on the scope of the address.  It is new in Linux 2.4.  Linux "
13743 "supports it only for link-local addresses, in that case I<sin6_scope_id> "
13744 "contains the interface index (see B<netdevice>(7))"
13745 msgstr ""
13746 "I<sin6_family> は常に B<AF_INET6> に設定される。\n"
13747 "I<sin6_port> はプロトコルポートである (B<ip>(7) の I<sin_port> を参照)。\n"
13748 "I<sin6_flowinfo> は IPv6 のフロー指定子 (flow identifier) である。\n"
13749 "I<sin6_addr> は 128 ビットの IPv6 アドレスである。 I<sin6_scope_id> は\n"
13750 "アドレスのスコープに依存した ID である (これは Linux 2.4 で導入された)。\n"
13751 "Linux の場合は、これはリンクローカルアドレスでのみサポートされている。\n"
13752 "この場合 I<sin6_scope_id> にはインターフェースのインデックスが含まれる\n"
13753 "ことになる (B<netdevice>(7) を参照)。"
13754
13755 #. type: Plain text
13756 #: build/C/man7/ipv6.7:184
13757 msgid ""
13758 "IPv6 supports several address types: unicast to address a single host, "
13759 "multicast to address a group of hosts, anycast to address the nearest member "
13760 "of a group of hosts (not implemented in Linux), IPv4-on-IPv6 to address a "
13761 "IPv4 host, and other reserved address types."
13762 msgstr ""
13763 "IPv6 は何種類かのアドレスタイプをサポートしている。 単一のホストをアドレスす"
13764 "るための unicast、 ホストのグループをアドレスするための multicast、 ホストの"
13765 "グループ中で最も近くにいるものをアドレスするための anycast (これは Linux では"
13766 "実装されていない)、 IPv4 ホストをアドレスするための IPv4-on-IPv6。 他にも予約"
13767 "済みのアドレスタイプがある。"
13768
13769 #. type: Plain text
13770 #: build/C/man7/ipv6.7:190
13771 msgid ""
13772 "The address notation for IPv6 is a group of 8 4-digit hexadecimal numbers, "
13773 "separated with a \\(aq:\\(aq.  \\&\"::\" stands for a string of 0 bits.  "
13774 "Special addresses are ::1 for loopback and ::FFFF:E<lt>IPv4 addressE<gt> for "
13775 "IPv4-mapped-on-IPv6."
13776 msgstr ""
13777 "IPv6 でのアドレス表記は 4 桁の 16 進数 8 個からなり、 \\(aq:\\(aq は区切り文"
13778 "字はで、\"::\" は 0 ビットの文字列を表す。 特殊なアドレスとして、ループバック"
13779 "を表す ::1、 IPv4-mapped-on-IPv6 を表す ::FFFF::E<lt>IPv4 アドレスE<gt> があ"
13780 "る。"
13781
13782 #. type: Plain text
13783 #: build/C/man7/ipv6.7:192
13784 msgid "The port space of IPv6 is shared with IPv4."
13785 msgstr "IPv6 のポート空間は IPv4 と共有されている。"
13786
13787 #. type: Plain text
13788 #: build/C/man7/ipv6.7:200
13789 msgid ""
13790 "IPv6 supports some protocol-specific socket options that can be set with "
13791 "B<setsockopt>(2)  and read with B<getsockopt>(2).  The socket option level "
13792 "for IPv6 is B<IPPROTO_IPV6>.  A boolean integer flag is zero when it is "
13793 "false, otherwise true."
13794 msgstr ""
13795 "IPv6 はプロトコル固有のソケットオプションをいくつかサポートしている。 これら"
13796 "は B<setsockopt>(2)  で設定でき、 B<getsockopt>(2)  で取得できる。 IPv6 のソ"
13797 "ケットオプションレベルは B<IPPROTO_IPV6> である。 ブール整数のフラグは、0 が"
13798 "偽であり、それ以外は真である。"
13799
13800 #. type: TP
13801 #: build/C/man7/ipv6.7:200
13802 #, no-wrap
13803 msgid "B<IPV6_ADDRFORM>"
13804 msgstr "B<IPV6_ADDRFORM>"
13805
13806 #. type: Plain text
13807 #: build/C/man7/ipv6.7:214
13808 msgid ""
13809 "Turn an B<AF_INET6> socket into a socket of a different address family.  "
13810 "Only B<AF_INET> is currently supported for that.  It is allowed only for "
13811 "IPv6 sockets that are connected and bound to a v4-mapped-on-v6 address.  The "
13812 "argument is a pointer to an integer containing B<AF_INET>.  This is useful "
13813 "to pass v4-mapped sockets as file descriptors to programs that don't know "
13814 "how to deal with the IPv6 API."
13815 msgstr ""
13816 "B<AF_INET6> ソケットを別のアドレスファミリーのソケットに変える。 現在は "
13817 "B<AF_INET> のみが変更先のアドレスファミリーとしてサポートされている。 これが"
13818 "許可されるのは、IPv6 が接続され、 v4-mapped-on-v6 アドレスにバインドされた場"
13819 "合に限られる。 引き数は B<AF_INET> が入っている整数へのポインターである。 v4-"
13820 "mapped ソケットを、IPv6 API を扱えないプログラムに対して ファイルディスクリプ"
13821 "ターとして渡す場合に便利。"
13822
13823 #. type: TP
13824 #: build/C/man7/ipv6.7:214
13825 #, no-wrap
13826 msgid "B<IPV6_ADD_MEMBERSHIP, IPV6_DROP_MEMBERSHIP>"
13827 msgstr "B<IPV6_ADD_MEMBERSHIP, IPV6_DROP_MEMBERSHIP>"
13828
13829 #. type: Plain text
13830 #: build/C/man7/ipv6.7:219
13831 msgid ""
13832 "Control membership in multicast groups.  Argument is a pointer to a I<struct "
13833 "ipv6_mreq>."
13834 msgstr ""
13835 "multicast グループのメンバーを制御する。 引き数は I<struct ipv6_mreq> 構造体"
13836 "へのポインター。"
13837
13838 #. type: TP
13839 #: build/C/man7/ipv6.7:219
13840 #, no-wrap
13841 msgid "B<IPV6_MTU>"
13842 msgstr "B<IPV6_MTU>"
13843
13844 #. type: Plain text
13845 #: build/C/man7/ipv6.7:225
13846 msgid ""
13847 "B<getsockopt>(): Retrieve the current known path MTU of the current socket.  "
13848 "Only valid when the socket has been connected.  Returns an integer."
13849 msgstr ""
13850 "B<getsockopt>(): ソケットの、既知の path MTU を取得する。ソケットが接続してい"
13851 "る場合のみ有効である。整数を返す。"
13852
13853 #. type: Plain text
13854 #: build/C/man7/ipv6.7:231
13855 msgid ""
13856 "B<setsockopt>(): Set the MTU to be used for the socket.  The MTU is limited "
13857 "by the device MTU or the path MTU when path MTU discovery is enabled.  "
13858 "Argument is a pointer to integer."
13859 msgstr ""
13860 "B<setsockopt>(): そのソケットに対して用いる MTU の値を設定する。 MTU の大きさ"
13861 "は、 そのデバイスの MTU または (Path MTU Discovery が可能なら) その経路の "
13862 "MTU の大きさ以下でなければならない。 引き数は整数へのポインター。"
13863
13864 #. type: TP
13865 #: build/C/man7/ipv6.7:231
13866 #, no-wrap
13867 msgid "B<IPV6_MTU_DISCOVER>"
13868 msgstr "B<IPV6_MTU_DISCOVER>"
13869
13870 #. type: Plain text
13871 #: build/C/man7/ipv6.7:239
13872 msgid ""
13873 "Control path-MTU discovery on the socket.  See B<IP_MTU_DISCOVER> in "
13874 "B<ip>(7)  for details."
13875 msgstr ""
13876 "そのソケットでの Path MTU Discovery を制御する。 詳細は B<ip>(7)  の "
13877 "B<IP_MTU_DISCOVER> を参照。"
13878
13879 #. type: TP
13880 #: build/C/man7/ipv6.7:239
13881 #, no-wrap
13882 msgid "B<IPV6_MULTICAST_HOPS>"
13883 msgstr "B<IPV6_MULTICAST_HOPS>"
13884
13885 #. type: Plain text
13886 #: build/C/man7/ipv6.7:246
13887 msgid ""
13888 "Set the multicast hop limit for the socket.  Argument is a pointer to an "
13889 "integer.  -1 in the value means use the route default, otherwise it should "
13890 "be between 0 and 255."
13891 msgstr ""
13892 "そのソケットでの multicast の hop 数の上限値を設定する。 引き数は整数へのポイ"
13893 "ンターである。 -1 を指定すると経路のデフォルトを用いることを意味する。 それ以"
13894 "外の場合は 0 から 255 の範囲を指定する。"
13895
13896 #. type: TP
13897 #: build/C/man7/ipv6.7:246
13898 #, no-wrap
13899 msgid "B<IPV6_MULTICAST_IF>"
13900 msgstr "B<IPV6_MULTICAST_IF>"
13901
13902 #. type: Plain text
13903 #: build/C/man7/ipv6.7:257
13904 msgid ""
13905 "Set the device for outgoing multicast packets on the socket.  This is "
13906 "allowed only for B<SOCK_DGRAM> and B<SOCK_RAW> socket.  The argument is a "
13907 "pointer to an interface index (see B<netdevice>(7))  in an integer."
13908 msgstr ""
13909 "そのソケットでの、送信 multicast パケットに用いるデバイスを設定する。 これは "
13910 "B<SOCK_DGRAM> および B<SOCK_RAW> 各ソケットでのみ許される。 引き数はインター"
13911 "フェースのインデックスの整数値 (B<netdevice>(7)  を参照) へのポインターであ"
13912 "る。"
13913
13914 #. type: TP
13915 #: build/C/man7/ipv6.7:257
13916 #, no-wrap
13917 msgid "B<IPV6_MULTICAST_LOOP>"
13918 msgstr "B<IPV6_MULTICAST_LOOP>"
13919
13920 #. type: Plain text
13921 #: build/C/man7/ipv6.7:261
13922 msgid ""
13923 "Control whether the socket sees multicast packets that it has send itself.  "
13924 "Argument is a pointer to boolean."
13925 msgstr ""
13926 "ソケットが、自分自身の送信した multicast パケットを監視するかどうかを制御す"
13927 "る。 引き数はブール値へのポインター。"
13928
13929 #. type: TP
13930 #: build/C/man7/ipv6.7:261
13931 #, no-wrap
13932 msgid "B<IPV6_RECVPKTINFO> (since Linux 2.6.14)"
13933 msgstr "B<IPV6_RECVPKTINFO> (Linux 2.6.14 以降)"
13934
13935 #. type: Plain text
13936 #: build/C/man7/ipv6.7:275
13937 msgid ""
13938 "Set delivery of the B<IPV6_PKTINFO> control message on incoming datagrams.  "
13939 "Such control messages contain a I<struct in6_pktinfo>, as per RFC 3542.  "
13940 "Only allowed for B<SOCK_DGRAM> or B<SOCK_RAW> sockets.  Argument is a "
13941 "pointer to a boolean value in an integer."
13942 msgstr ""
13943 "データグラムの到着時における B<IPV6_PKTINFO> 制御メッセージを配送するかどうか"
13944 "を設定する。 制御メッセージは RFC 3542 に基づき I<struct in6_pktinfo> に格納"
13945 "される。 B<SOCK_DGRAM> ソケットまたは B<SOCK_RAW> ソケットに対してのみ許可さ"
13946 "れる。 引き数はブール値の入った整数。"
13947
13948 #. type: Plain text
13949 #: build/C/man7/ipv6.7:278
13950 #, no-wrap
13951 msgid "B<IPV6_RTHDR, IPV6_AUTHHDR, IPV6_DSTOPTS, IPV6_HOPOPTS, IPV6_FLOWINFO, IPV6_HOPLIMIT>\n"
13952 msgstr "B<IPV6_RTHDR, IPV6_AUTHHDR, IPV6_DSTOPTS, IPV6_HOPOPTS, IPV6_FLOWINFO, IPV6_HOPLIMIT>\n"
13953
13954 #. type: Plain text
13955 #: build/C/man7/ipv6.7:303
13956 msgid ""
13957 "Set delivery of control messages for incoming datagrams containing extension "
13958 "headers from the received packet.  B<IPV6_RTHDR> delivers the routing "
13959 "header, B<IPV6_AUTHHDR> delivers the authentication header, B<IPV6_DSTOPTS> "
13960 "delivers the destination options, B<IPV6_HOPOPTS> delivers the hop options, "
13961 "B<IPV6_FLOWINFO> delivers an integer containing the flow ID, "
13962 "B<IPV6_HOPLIMIT> delivers an integer containing the hop count of the "
13963 "packet.  The control messages have the same type as the socket option.  All "
13964 "these header options can also be set for outgoing packets by putting the "
13965 "appropriate control message into the control buffer of B<sendmsg>(2).  Only "
13966 "allowed for B<SOCK_DGRAM> or B<SOCK_RAW> sockets.  Argument is a pointer to "
13967 "a boolean value."
13968 msgstr ""
13969 "受信パケットのデータグラムに拡張ヘッダーが含まれている場合の、 制御メッセージ"
13970 "の配送を設定する。 B<IPV6_RTHDR>: routing ヘッダーを配送するかどうか。 "
13971 "B<IPV6_AUTHHDR>: authentication ヘッダーを配送するかどうか。 "
13972 "B<IPV6_DSTOPTS>: destination オプションを配送するかどうか。 B<IPV6_HOPOPTS>: "
13973 "hop オプションを配送するかどうか。 B<IPV6_FLOWINFO>: flow ID を含む整数を配送"
13974 "するかどうか。 B<IPV6_HOPLIMIT>: パケットの hop カウントを含む整数を配送する"
13975 "かどうか。 制御メッセージはソケットオプションのものと同じタイプを持つ。 これ"
13976 "らのすべてのヘッダーオプションは、 適切な制御メッセージを B<sendmsg>(2)  の制"
13977 "御バッファーに書きこめば、 送信パケットにでも設定できる。 B<SOCK_DGRAM> ソ"
13978 "ケットまたは B<SOCK_RAW> ソケットでのみ許される。引き数はブール値へのポイン"
13979 "ター。"
13980
13981 #. type: TP
13982 #: build/C/man7/ipv6.7:303
13983 #, no-wrap
13984 msgid "B<IPV6_RECVERR>"
13985 msgstr "B<IPV6_RECVERR>"
13986
13987 #. type: Plain text
13988 #: build/C/man7/ipv6.7:312
13989 msgid ""
13990 "Control receiving of asynchronous error options.  See B<IP_RECVERR> in "
13991 "B<ip>(7)  for details.  Argument is a pointer to boolean."
13992 msgstr ""
13993 "非同期エラー (asynchronous error) オプションの受信を制御する。 詳細は "
13994 "B<ip>(7)  の B<IP_RECVERR> を参照。 引き数はブール値へのポインター。"
13995
13996 #. type: TP
13997 #: build/C/man7/ipv6.7:312
13998 #, no-wrap
13999 msgid "B<IPV6_ROUTER_ALERT>"
14000 msgstr "B<IPV6_ROUTER_ALERT>"
14001
14002 #. type: Plain text
14003 #: build/C/man7/ipv6.7:327
14004 msgid ""
14005 "Pass forwarded packets containing a router alert hop-by-hop option to this "
14006 "socket.  Only allowed for B<SOCK_RAW> sockets.  The tapped packets are not "
14007 "forwarded by the kernel, it is the user's responsibility to send them out "
14008 "again.  Argument is a pointer to an integer.  A positive integer indicates a "
14009 "router alert option value to intercept.  Packets carrying a router alert "
14010 "option with a value field containing this integer will be delivered to the "
14011 "socket.  A negative integer disables delivery of packets with router alert "
14012 "options to this socket."
14013 msgstr ""
14014 "このソケットで、router alert hop-by-hop オプションの付いた転送パケットを 通す"
14015 "かどうかを制御する。 B<SOCK_RAW> ソケットでのみ許可される。 tap されたパケッ"
14016 "トはカーネルによっては転送されない。そうしたパケットを 再度送信するのはユー"
14017 "ザーの責任である。 引き数は整数 (integer) へのポインター。 正の整数は傍受を行"
14018 "う router alert オプション値を示す。 オプション値がこの整数である router "
14019 "alert オプションの付いたパケットは ソケットに配送される。負の整数を指定する"
14020 "と、このソケットへの router alert オプションの付いたパケットの配送が行われな"
14021 "い。"
14022
14023 #. type: TP
14024 #: build/C/man7/ipv6.7:327
14025 #, no-wrap
14026 msgid "B<IPV6_UNICAST_HOPS>"
14027 msgstr "B<IPV6_UNICAST_HOPS>"
14028
14029 #. type: Plain text
14030 #: build/C/man7/ipv6.7:333
14031 msgid ""
14032 "Set the unicast hop limit for the socket.  Argument is a pointer to an "
14033 "integer.  -1 in the value means use the route default, otherwise it should "
14034 "be between 0 and 255."
14035 msgstr ""
14036 "そのソケットでの unicast の hop 数の上限値を設定する。 引き数は整数へのポイン"
14037 "ターである。 -1 を指定すると経路のデフォルトを用いることを意味する。 それ以外"
14038 "の場合は 0 から 255 の範囲を指定する。"
14039
14040 #. type: TP
14041 #: build/C/man7/ipv6.7:333
14042 #, no-wrap
14043 msgid "B<IPV6_V6ONLY> (since Linux 2.4.21 and 2.6)"
14044 msgstr "B<IPV6_V6ONLY> (Linux 2.4.21 以降および 2.6 以降)"
14045
14046 #.  See RFC 3493
14047 #. type: Plain text
14048 #: build/C/man7/ipv6.7:340
14049 msgid ""
14050 "If this flag is set to true (nonzero), then the socket is restricted to "
14051 "sending and receiving IPv6 packets only.  In this case, an IPv4 and an IPv6 "
14052 "application can bind to a single port at the same time."
14053 msgstr ""
14054 "このフラグを真 (0 以外) に設定すると、そのソケットは IPv6 パケットだけを 送受"
14055 "信するように制限される。 この場合、IPv4 アプリケーションと IPv6 アプリケー"
14056 "ションが同時に 一つのポートをバインドできる。"
14057
14058 #. type: Plain text
14059 #: build/C/man7/ipv6.7:344
14060 msgid ""
14061 "If this flag is set to false (zero), then the socket can be used to send and "
14062 "receive packets to and from an IPv6 address or an IPv4-mapped IPv6 address."
14063 msgstr ""
14064 "このフラグを偽 (0) に設定すると、そのソケットはパケットの送受信に IPv6 アドレ"
14065 "スと IPv4-mapped IPv6 アドレスの両方を使用できる。"
14066
14067 #. type: Plain text
14068 #: build/C/man7/ipv6.7:346
14069 msgid "The argument is a pointer to a boolean value in an integer."
14070 msgstr "引き数はブール値の入った整数へのポインターである。"
14071
14072 #.  FLOWLABEL_MGR, FLOWINFO_SEND
14073 #. type: Plain text
14074 #: build/C/man7/ipv6.7:351
14075 msgid ""
14076 "The default value for this flag is defined by the contents of the file I</"
14077 "proc/sys/net/ipv6/bindv6only>.  The default value for that file is 0 (false)."
14078 msgstr ""
14079 "このフラグのデフォルト値はファイル I</proc/sys/net/ipv6/bindv6only> の内容に"
14080 "より定義される。 このファイルのデフォルト値は 0 (偽) である。"
14081
14082 #. type: Plain text
14083 #: build/C/man7/ipv6.7:362
14084 msgid ""
14085 "The user tried to B<bind>(2)  to a link-local IPv6 address, but the "
14086 "I<sin6_scope_id> in the supplied I<sockaddr_in6> structure is not a valid "
14087 "interface index."
14088 msgstr ""
14089 "ユーザーがリンクローカルの IPv6 アドレスを B<bind>(2) しようとしたが、\n"
14090 "指定された I<sockaddr_in6> 構造体の I<sin6_scope_id> が\n"
14091 "有効なインターフェースのインデックスでなかった。"
14092
14093 #. type: Plain text
14094 #: build/C/man7/ipv6.7:378
14095 msgid ""
14096 "Linux 2.4 will break binary compatibility for the I<sockaddr_in6> for 64-bit "
14097 "hosts by changing the alignment of I<in6_addr> and adding an additional "
14098 "I<sin6_scope_id> field.  The kernel interfaces stay compatible, but a "
14099 "program including I<sockaddr_in6> or I<in6_addr> into other structures may "
14100 "not be.  This is not a problem for 32-bit hosts like i386."
14101 msgstr ""
14102 "Linux 2.4 では 64 ビットのホストに対して I<sockaddr_in6> のバイナリ互換性が保"
14103 "たれていない。 I<in6_addr> のアラインメントが変更され、また I<sin6_scope_id> "
14104 "フィールドが新たに追加されたからである。 カーネルインターフェースの互換性は保"
14105 "たれているが、 I<sockaddr_in6> や I<in6_addr> を他の構造体に含んでいるような"
14106 "プログラムでは 保たれないかもしれない。 これは i386 のような 32 ビットのホス"
14107 "トでは問題にならない。"
14108
14109 #. type: Plain text
14110 #: build/C/man7/ipv6.7:386
14111 msgid ""
14112 "The I<sin6_flowinfo> field is new in Linux 2.4.  It is transparently passed/"
14113 "read by the kernel when the passed address length contains it.  Some "
14114 "programs that pass a longer address buffer and then check the outgoing "
14115 "address length may break."
14116 msgstr ""
14117 "I<sin6_flowinfo> フィールドは Linux 2.4 で登場した。 これが渡されたアドレス長"
14118 "に含まれていると、 カーネルに透過的に渡され、読まれる。 より長いアドレスバッ"
14119 "ファーを渡し、 そして送信アドレスの長さをチェックするようなプログラムは うま"
14120 "く動かないかもしれない。"
14121
14122 #. type: Plain text
14123 #: build/C/man7/ipv6.7:396
14124 msgid ""
14125 "The I<sockaddr_in6> structure is bigger than the generic I<sockaddr>.  "
14126 "Programs that assume that all address types can be stored safely in a "
14127 "I<struct sockaddr> need to be changed to use I<struct sockaddr_storage> for "
14128 "that instead."
14129 msgstr ""
14130 "I<sockaddr_in6> 構造体はジェネリックな I<sockaddr> よりも大きい。 すべてのア"
14131 "ドレスタイプが I<struct sockaddr> の中に安全に納められると仮定しているプログ"
14132 "ラムは、代わりに I<struct sockaddr_storage> を用いるように変更する必要があ"
14133 "る。"
14134
14135 #. type: Plain text
14136 #: build/C/man7/ipv6.7:401
14137 msgid ""
14138 "The IPv6 extended API as in RFC\\ 2292 is currently only partly implemented; "
14139 "although the 2.2 kernel has near complete support for receiving options, the "
14140 "macros for generating IPv6 options are missing in glibc 2.1."
14141 msgstr ""
14142 "IPv6 拡張 API は、現在まだ RFC\\ 2292 を完全には実装していない。 2.2 カーネル"
14143 "は受信オプションをほぼ完全にサポートサポートしているが、 glibc2.1 には IPv6 "
14144 "オプションを生成するマクロが存在していない。"
14145
14146 #. type: Plain text
14147 #: build/C/man7/ipv6.7:403
14148 msgid "IPSec support for EH and AH headers is missing."
14149 msgstr "EH および AH ヘッダー での IPSec のサポートは存在しない。"
14150
14151 #. type: Plain text
14152 #: build/C/man7/ipv6.7:405
14153 msgid "Flow label management is not complete and not documented here."
14154 msgstr "フローラベル管理はまだ完全でなく、ここにも記述されていない。"
14155
14156 #. type: Plain text
14157 #: build/C/man7/ipv6.7:407
14158 msgid "This man page is not complete."
14159 msgstr "この man ページはまだ完成していない。"
14160
14161 #. type: Plain text
14162 #: build/C/man7/ipv6.7:410
14163 msgid "B<cmsg>(3), B<ip>(7)"
14164 msgstr "B<cmsg>(3), B<ip>(7)"
14165
14166 #. type: Plain text
14167 #: build/C/man7/ipv6.7:414
14168 msgid ""
14169 "RFC\\ 2553: IPv6 BASIC API; Linux tries to be compliant to this.  RFC\\ "
14170 "2460: IPv6 specification."
14171 msgstr ""
14172 "RFC\\ 2553: IPv6 BASIC API; Linux はこの RFC に準拠するようにしている。 RFC"
14173 "\\ 2460: IPv6 specification."
14174
14175 #. type: TH
14176 #: build/C/man7/netdevice.7:18
14177 #, no-wrap
14178 msgid "NETDEVICE"
14179 msgstr "NETDEVICE"
14180
14181 #. type: TH
14182 #: build/C/man7/netdevice.7:18
14183 #, no-wrap
14184 msgid "2014-01-24"
14185 msgstr "2014-01-24"
14186
14187 #. type: Plain text
14188 #: build/C/man7/netdevice.7:21
14189 msgid "netdevice - low-level access to Linux network devices"
14190 msgstr "netdevice - Linux ネットワークデバイスへの低レベルアクセス"
14191
14192 #. type: Plain text
14193 #: build/C/man7/netdevice.7:23
14194 msgid "B<#include E<lt>sys/ioctl.hE<gt>>"
14195 msgstr "B<#include E<lt>sys/ioctl.hE<gt>>"
14196
14197 #. type: Plain text
14198 #: build/C/man7/netdevice.7:25
14199 msgid "B<#include E<lt>net/if.hE<gt>>"
14200 msgstr "B<#include E<lt>net/if.hE<gt>>"
14201
14202 #. type: Plain text
14203 #: build/C/man7/netdevice.7:28
14204 msgid ""
14205 "This man page describes the sockets interface which is used to configure "
14206 "network devices."
14207 msgstr ""
14208 "この man ページでは、ネットワークデバイスを設定するために 用いるソケットイン"
14209 "ターフェースについて解説する。"
14210
14211 #. type: Plain text
14212 #: build/C/man7/netdevice.7:35
14213 msgid ""
14214 "Linux supports some standard ioctls to configure network devices.  They can "
14215 "be used on any socket's file descriptor regardless of the family or type.  "
14216 "Most of them pass an I<ifreq> structure:"
14217 msgstr ""
14218 "Linux はネットワークデバイスを設定するための標準的な ioctl を いくつか備えて"
14219 "いる。これらはどんなソケットのファイルディスクリプターにも 用いることができ"
14220 "る。ファミリーやタイプは何でもよい。 これらの ioctl のほとんどは I<ifreq> 構"
14221 "造体を渡す。"
14222
14223 #. type: Plain text
14224 #: build/C/man7/netdevice.7:56
14225 #, no-wrap
14226 msgid ""
14227 "struct ifreq {\n"
14228 "    char ifr_name[IFNAMSIZ]; /* Interface name */\n"
14229 "    union {\n"
14230 "        struct sockaddr ifr_addr;\n"
14231 "        struct sockaddr ifr_dstaddr;\n"
14232 "        struct sockaddr ifr_broadaddr;\n"
14233 "        struct sockaddr ifr_netmask;\n"
14234 "        struct sockaddr ifr_hwaddr;\n"
14235 "        short           ifr_flags;\n"
14236 "        int             ifr_ifindex;\n"
14237 "        int             ifr_metric;\n"
14238 "        int             ifr_mtu;\n"
14239 "        struct ifmap    ifr_map;\n"
14240 "        char            ifr_slave[IFNAMSIZ];\n"
14241 "        char            ifr_newname[IFNAMSIZ];\n"
14242 "        char           *ifr_data;\n"
14243 "    };\n"
14244 "};\n"
14245 msgstr ""
14246 "struct ifreq {\n"
14247 "    char ifr_name[IFNAMSIZ]; /* Interface name */\n"
14248 "    union {\n"
14249 "        struct sockaddr ifr_addr;\n"
14250 "        struct sockaddr ifr_dstaddr;\n"
14251 "        struct sockaddr ifr_broadaddr;\n"
14252 "        struct sockaddr ifr_netmask;\n"
14253 "        struct sockaddr ifr_hwaddr;\n"
14254 "        short           ifr_flags;\n"
14255 "        int             ifr_ifindex;\n"
14256 "        int             ifr_metric;\n"
14257 "        int             ifr_mtu;\n"
14258 "        struct ifmap    ifr_map;\n"
14259 "        char            ifr_slave[IFNAMSIZ];\n"
14260 "        char            ifr_newname[IFNAMSIZ];\n"
14261 "        char           *ifr_data;\n"
14262 "    };\n"
14263 "};\n"
14264
14265 #. type: Plain text
14266 #: build/C/man7/netdevice.7:64
14267 msgid ""
14268 "Normally, the user specifies which device to affect by setting I<ifr_name> "
14269 "to the name of the interface.  All other members of the structure may share "
14270 "memory."
14271 msgstr ""
14272 "通常、ユーザーによる設定対象デバイスの指定は、 I<ifr_name> にインターフェース"
14273 "の名前をセットすることによって行う。 他の構造体の全てのメンバは、メモリーを共"
14274 "有する。"
14275
14276 #. type: Plain text
14277 #: build/C/man7/netdevice.7:72
14278 msgid ""
14279 "If an ioctl is marked as privileged, then using it requires an effective "
14280 "user ID of 0 or the B<CAP_NET_ADMIN> capability.  If this is not the case, "
14281 "B<EPERM> will be returned."
14282 msgstr ""
14283 "「特権が必要」と記述されている ioctl を実行するには、 実効ユーザー ID が 0 "
14284 "か、 B<CAP_NET_ADMIN> 権限が必要である。これが満たされていない場合は "
14285 "B<EPERM> が返される。"
14286
14287 #. type: TP
14288 #: build/C/man7/netdevice.7:72
14289 #, no-wrap
14290 msgid "B<SIOCGIFNAME>"
14291 msgstr "B<SIOCGIFNAME>"
14292
14293 #. type: Plain text
14294 #: build/C/man7/netdevice.7:80
14295 msgid ""
14296 "Given the I<ifr_ifindex>, return the name of the interface in I<ifr_name>.  "
14297 "This is the only ioctl which returns its result in I<ifr_name>."
14298 msgstr ""
14299 "I<ifr_ifindex> を受け取り、インターフェースの名前を I<ifr_name> に入れて返"
14300 "す。これは結果を I<ifr_name> として返す唯一の ioctl である。"
14301
14302 #. type: TP
14303 #: build/C/man7/netdevice.7:80
14304 #, no-wrap
14305 msgid "B<SIOCGIFINDEX>"
14306 msgstr "B<SIOCGIFINDEX>"
14307
14308 #. type: Plain text
14309 #: build/C/man7/netdevice.7:84
14310 msgid "Retrieve the interface index of the interface into I<ifr_ifindex>."
14311 msgstr ""
14312 "インターフェースの interface index を取得し、 I<ifr_ifindex> に入れて返す。"
14313
14314 #. type: TP
14315 #: build/C/man7/netdevice.7:84
14316 #, no-wrap
14317 msgid "B<SIOCGIFFLAGS>, B<SIOCSIFFLAGS>"
14318 msgstr "B<SIOCGIFFLAGS>, B<SIOCSIFFLAGS>"
14319
14320 #.  Do not right adjust text blocks in tables
14321 #. type: Plain text
14322 #: build/C/man7/netdevice.7:90
14323 msgid ""
14324 "Get or set the active flag word of the device.  I<ifr_flags> contains a bit "
14325 "mask of the following values:"
14326 msgstr ""
14327 "デバイスの active フラグワードを取得または設定する。 I<ifr_flags> には以下の"
14328 "値のビットマスクが入る。"
14329
14330 #. type: tbl table
14331 #: build/C/man7/netdevice.7:95
14332 #, no-wrap
14333 msgid "Device flags\n"
14334 msgstr "デバイスフラグ\n"
14335
14336 #. type: tbl table
14337 #: build/C/man7/netdevice.7:96
14338 #, no-wrap
14339 msgid "IFF_UP:Interface is running.\n"
14340 msgstr "IFF_UP:インターフェースは動作中。\n"
14341
14342 #. type: tbl table
14343 #: build/C/man7/netdevice.7:97
14344 #, no-wrap
14345 msgid "IFF_BROADCAST:Valid broadcast address set.\n"
14346 msgstr "IFF_BROADCAST:有効なブロードキャストアドレスがセットされている。\n"
14347
14348 #. type: tbl table
14349 #: build/C/man7/netdevice.7:98
14350 #, no-wrap
14351 msgid "IFF_DEBUG:Internal debugging flag.\n"
14352 msgstr "IFF_DEBUG:内部のデバッグフラグ。\n"
14353
14354 #. type: tbl table
14355 #: build/C/man7/netdevice.7:99
14356 #, no-wrap
14357 msgid "IFF_LOOPBACK:Interface is a loopback interface.\n"
14358 msgstr "IFF_LOOPBACK:インターフェースはループバックである。\n"
14359
14360 #. type: tbl table
14361 #: build/C/man7/netdevice.7:100
14362 #, no-wrap
14363 msgid "IFF_POINTOPOINT:Interface is a point-to-point link.\n"
14364 msgstr "IFF_POINTOPOINT:インターフェースは point-to-point リンクである。\n"
14365
14366 #. type: tbl table
14367 #: build/C/man7/netdevice.7:101
14368 #, no-wrap
14369 msgid "IFF_RUNNING:Resources allocated.\n"
14370 msgstr "IFF_RUNNING:リソースが割り当て済み。\n"
14371
14372 #. type: tbl table
14373 #: build/C/man7/netdevice.7:102
14374 #, no-wrap
14375 msgid "IFF_NOARP:T{\n"
14376 msgstr "IFF_NOARP:T{\n"
14377
14378 #. type: tbl table
14379 #: build/C/man7/netdevice.7:103
14380 #, no-wrap
14381 msgid "No arp protocol, L2 destination address not set.\n"
14382 msgstr "arp プロトコルがない。 L2 宛先アドレスが設定されていない。\n"
14383
14384 #. type: tbl table
14385 #: build/C/man7/netdevice.7:104 build/C/man7/netdevice.7:115
14386 #, no-wrap
14387 msgid "T}\n"
14388 msgstr "T}\n"
14389
14390 #. type: tbl table
14391 #: build/C/man7/netdevice.7:105
14392 #, no-wrap
14393 msgid "IFF_PROMISC:Interface is in promiscuous mode.\n"
14394 msgstr "IFF_PROMISC:インターフェースは promiscuous モードである。\n"
14395
14396 #. type: tbl table
14397 #: build/C/man7/netdevice.7:106
14398 #, no-wrap
14399 msgid "IFF_NOTRAILERS:Avoid use of trailers.\n"
14400 msgstr "IFF_NOTRAILERS:trailer の利用を避ける。\n"
14401
14402 #. type: tbl table
14403 #: build/C/man7/netdevice.7:107
14404 #, no-wrap
14405 msgid "IFF_ALLMULTI:Receive all multicast packets.\n"
14406 msgstr "IFF_ALLMULTI:全てのマルチキャストパケットを受信する。\n"
14407
14408 #. type: tbl table
14409 #: build/C/man7/netdevice.7:108
14410 #, no-wrap
14411 msgid "IFF_MASTER:Master of a load balancing bundle.\n"
14412 msgstr "IFF_MASTER:負荷分散グループのマスターである。\n"
14413
14414 #. type: tbl table
14415 #: build/C/man7/netdevice.7:109
14416 #, no-wrap
14417 msgid "IFF_SLAVE:Slave of a load balancing bundle.\n"
14418 msgstr "IFF_SLAVE:負荷分散グループのスレーブである。\n"
14419
14420 #. type: tbl table
14421 #: build/C/man7/netdevice.7:110
14422 #, no-wrap
14423 msgid "IFF_MULTICAST:Supports multicast\n"
14424 msgstr "IFF_MULTICAST:マルチキャストをサポートしている。\n"
14425
14426 #. type: tbl table
14427 #: build/C/man7/netdevice.7:111
14428 #, no-wrap
14429 msgid "IFF_PORTSEL:Is able to select media type via ifmap.\n"
14430 msgstr "IFF_PORTSEL:ifmap によってメディアタイプを選択できる。\n"
14431
14432 #. type: tbl table
14433 #: build/C/man7/netdevice.7:112
14434 #, no-wrap
14435 msgid "IFF_AUTOMEDIA:Auto media selection active.\n"
14436 msgstr "IFF_AUTOMEDIA:自動メディア選択が有効になっている。\n"
14437
14438 #. type: tbl table
14439 #: build/C/man7/netdevice.7:113
14440 #, no-wrap
14441 msgid "IFF_DYNAMIC:T{\n"
14442 msgstr "IFF_DYNAMIC:T{\n"
14443
14444 #. type: tbl table
14445 #: build/C/man7/netdevice.7:114
14446 #, no-wrap
14447 msgid "The addresses are lost when the interface goes down.\n"
14448 msgstr "このインターフェースが閉じると、アドレスは失われる。\n"
14449
14450 #. type: tbl table
14451 #: build/C/man7/netdevice.7:116
14452 #, no-wrap
14453 msgid "IFF_LOWER_UP:Driver signals L1 up (since Linux 2.6.17)\n"
14454 msgstr "IFF_LOWER_UP:ドライバからの L1 アップの通知 (Linux 2.6.17 以降)\n"
14455
14456 #. type: tbl table
14457 #: build/C/man7/netdevice.7:117
14458 #, no-wrap
14459 msgid "IFF_DORMANT:Driver signals dormant (since Linux 2.6.17)\n"
14460 msgstr "IFF_DORMANT:ドライバからの休止状態の通知 (Linux 2.6.17 以降)\n"
14461
14462 #. type: tbl table
14463 #: build/C/man7/netdevice.7:118
14464 #, no-wrap
14465 msgid "IFF_ECHO:Echo sent packets (since Linux 2.6.25)\n"
14466 msgstr "IFF_ECHO:送られたパケットをエコーする (Linux 2.6.25 以降)\n"
14467
14468 #. type: Plain text
14469 #: build/C/man7/netdevice.7:124
14470 msgid ""
14471 "Setting the active flag word is a privileged operation, but any process may "
14472 "read it."
14473 msgstr ""
14474 "active フラグワードの設定は特権が必要な操作である。\n"
14475 "読み出しはどんなプロセスからも可能である。"
14476
14477 #. type: TP
14478 #: build/C/man7/netdevice.7:124
14479 #, no-wrap
14480 msgid "B<SIOCGIFPFLAGS>, B<SIOCSIFPFLAGS>"
14481 msgstr "B<SIOCGIFPFLAGS>, B<SIOCSIFPFLAGS>"
14482
14483 #. type: Plain text
14484 #: build/C/man7/netdevice.7:129
14485 msgid ""
14486 "Get or set extended (private) flags for the device.  I<ifr_flags> contains a "
14487 "bit mask of the following values:"
14488 msgstr ""
14489 "デバイスの拡張 (プライベート) フラグを取得または設定する。\n"
14490 "I<ifr_flags> には以下の値のビットマスクが入る。"
14491
14492 #. type: tbl table
14493 #: build/C/man7/netdevice.7:133
14494 #, no-wrap
14495 msgid "Private flags\n"
14496 msgstr "プライベートフラグ\n"
14497
14498 #. type: tbl table
14499 #: build/C/man7/netdevice.7:134
14500 #, no-wrap
14501 msgid "IFF_802_1Q_VLAN:Interface is 802.1Q VLAN device.\n"
14502 msgstr "IFF_802_1Q_VLAN:インターフェースは 802.1Q VLAN デバイスである。\n"
14503
14504 #. type: tbl table
14505 #: build/C/man7/netdevice.7:135
14506 #, no-wrap
14507 msgid "IFF_EBRIDGE:Interface is Ethernet bridging device.\n"
14508 msgstr "IFF_EBRIDGE:インターフェースは Ethernet ブリッジデバイスである。\n"
14509
14510 #. type: tbl table
14511 #: build/C/man7/netdevice.7:136
14512 #, no-wrap
14513 msgid "IFF_SLAVE_INACTIVE:Interface is inactive bonding slave.\n"
14514 msgstr "IFF_SLAVE_INACTIVE:インターフェースは非アクティブな bonding のスレーブである。\n"
14515
14516 #. type: tbl table
14517 #: build/C/man7/netdevice.7:137
14518 #, no-wrap
14519 msgid "IFF_MASTER_8023AD:Interface is 802.3ad bonding master.\n"
14520 msgstr "IFF_MASTER_8023AD:インターフェースは 802.3ad bonding のマスターである。\n"
14521
14522 #. type: tbl table
14523 #: build/C/man7/netdevice.7:138
14524 #, no-wrap
14525 msgid "IFF_MASTER_ALB:Interface is balanced-alb bonding master.\n"
14526 msgstr "IFF_MASTER_ALB:インターフェースは balanced-alb bonding のマスターである。\n"
14527
14528 #. type: tbl table
14529 #: build/C/man7/netdevice.7:139
14530 #, no-wrap
14531 msgid "IFF_BONDING:Interface is a bonding master or slave.\n"
14532 msgstr "IFF_BONDING:インターフェースは bonding のマスターかスレーブである。\n"
14533
14534 #. type: tbl table
14535 #: build/C/man7/netdevice.7:140
14536 #, no-wrap
14537 msgid "IFF_SLAVE_NEEDARP:Interface needs ARPs for validation.\n"
14538 msgstr "IFF_SLAVE_NEEDARP:インターフェースは検証に APR が必要である。\n"
14539
14540 #. type: tbl table
14541 #: build/C/man7/netdevice.7:141
14542 #, no-wrap
14543 msgid "IFF_ISATAP:Interface is RFC4214 ISATAP interface.\n"
14544 msgstr "IFF_ISATAP:インターフェースは RFC4214 ISATAP インターフェースである。\n"
14545
14546 #. type: Plain text
14547 #: build/C/man7/netdevice.7:145
14548 msgid ""
14549 "Setting the extended (private) interface flags is a privileged operation."
14550 msgstr "拡張 (プライベート) インターフェースフラグの設定には特権が必要である。"
14551
14552 #. type: TP
14553 #: build/C/man7/netdevice.7:145
14554 #, no-wrap
14555 msgid "B<SIOCGIFADDR>, B<SIOCSIFADDR>"
14556 msgstr "B<SIOCGIFADDR>, B<SIOCSIFADDR>"
14557
14558 #. type: Plain text
14559 #: build/C/man7/netdevice.7:153
14560 msgid ""
14561 "Get or set the address of the device using I<ifr_addr>.  Setting the "
14562 "interface address is a privileged operation.  For compatibility, only "
14563 "B<AF_INET> addresses are accepted or returned."
14564 msgstr ""
14565 "I<ifr_addr> を用いてデバイスのアドレスの設定/取得を行う。\n"
14566 "インターフェースのアドレスの設定は特権が必要な操作である。\n"
14567 "互換性確保のため、設定/取得ができるのは B<AF_INET> アドレスだけである。"
14568
14569 #. type: TP
14570 #: build/C/man7/netdevice.7:153
14571 #, no-wrap
14572 msgid "B<SIOCGIFDSTADDR>, B<SIOCSIFDSTADDR>"
14573 msgstr "B<SIOCGIFDSTADDR>, B<SIOCSIFDSTADDR>"
14574
14575 #. type: Plain text
14576 #: build/C/man7/netdevice.7:161
14577 msgid ""
14578 "Get or set the destination address of a point-to-point device using "
14579 "I<ifr_dstaddr>.  For compatibility, only B<AF_INET> addresses are accepted "
14580 "or returned.  Setting the destination address is a privileged operation."
14581 msgstr ""
14582 "point-to-point デバイスの宛先アドレスを I<ifr_dstaddr> を用いて\n"
14583 "設定/取得する。互換性確保のため、\n"
14584 "設定/取得ができるのは B<AF_INET> アドレスだけである。\n"
14585 "宛先アドレスの設定は特権が必要な操作である。"
14586
14587 #. type: TP
14588 #: build/C/man7/netdevice.7:161
14589 #, no-wrap
14590 msgid "B<SIOCGIFBRDADDR>, B<SIOCSIFBRDADDR>"
14591 msgstr "B<SIOCGIFBRDADDR>, B<SIOCSIFBRDADDR>"
14592
14593 #. type: Plain text
14594 #: build/C/man7/netdevice.7:169
14595 msgid ""
14596 "Get or set the broadcast address for a device using I<ifr_brdaddr>.  For "
14597 "compatibility, only B<AF_INET> addresses are accepted or returned.  Setting "
14598 "the broadcast address is a privileged operation."
14599 msgstr ""
14600 "デバイスのブロードキャストアドレスを I<ifr_brdaddr> を用いて\n"
14601 "設定/取得する。互換性確保のため、\n"
14602 "設定/取得ができるのは B<AF_INET> アドレスだけである。\n"
14603 "ブロードキャストアドレスの設定は特権が必要な操作である。"
14604
14605 #. type: TP
14606 #: build/C/man7/netdevice.7:169
14607 #, no-wrap
14608 msgid "B<SIOCGIFNETMASK>, B<SIOCSIFNETMASK>"
14609 msgstr "B<SIOCGIFNETMASK>, B<SIOCSIFNETMASK>"
14610
14611 #. type: Plain text
14612 #: build/C/man7/netdevice.7:177
14613 msgid ""
14614 "Get or set the network mask for a device using I<ifr_netmask>.  For "
14615 "compatibility, only B<AF_INET> addresses are accepted or returned.  Setting "
14616 "the network mask is a privileged operation."
14617 msgstr ""
14618 "デバイスのネットワークマスクを I<ifr_netmask> を用いて\n"
14619 "設定/取得する。互換性確保のため、\n"
14620 "設定/取得ができるのは B<AF_INET> アドレスだけである。\n"
14621 "ネットワークマスクの設定は特権が必要な操作である。"
14622
14623 #. type: TP
14624 #: build/C/man7/netdevice.7:177
14625 #, no-wrap
14626 msgid "B<SIOCGIFMETRIC>, B<SIOCSIFMETRIC>"
14627 msgstr "B<SIOCGIFMETRIC>, B<SIOCSIFMETRIC>"
14628
14629 #. type: Plain text
14630 #: build/C/man7/netdevice.7:186
14631 msgid ""
14632 "Get or set the metric of the device using I<ifr_metric>.  This is currently "
14633 "not implemented; it sets I<ifr_metric> to 0 if you attempt to read it and "
14634 "returns B<EOPNOTSUPP> if you attempt to set it."
14635 msgstr ""
14636 "デバイスのメトリックを I<ifr_metric> を用いて取得・設定する。 これはまだ実装"
14637 "されていない。読み出そうとすると I<ifr_metric> に 0 をセットして返り、設定し"
14638 "ようとすると B<EOPNOTSUPP> が返る。"
14639
14640 #. type: TP
14641 #: build/C/man7/netdevice.7:186
14642 #, no-wrap
14643 msgid "B<SIOCGIFMTU>, B<SIOCSIFMTU>"
14644 msgstr "B<SIOCGIFMTU>, B<SIOCSIFMTU>"
14645
14646 #. type: Plain text
14647 #: build/C/man7/netdevice.7:193
14648 msgid ""
14649 "Get or set the MTU (Maximum Transfer Unit) of a device using I<ifr_mtu>.  "
14650 "Setting the MTU is a privileged operation.  Setting the MTU to too small "
14651 "values may cause kernel crashes."
14652 msgstr ""
14653 "デバイスの MTU (Maximum Transfer Unit) を I<ifr_mtu> を用いて取得・設定す"
14654 "る。 MTU の設定は特権が必要な操作である。 MTU の値を小さくしすぎるとカーネル"
14655 "がクラッシュするかもしれない。"
14656
14657 #. type: TP
14658 #: build/C/man7/netdevice.7:193
14659 #, no-wrap
14660 msgid "B<SIOCGIFHWADDR>, B<SIOCSIFHWADDR>"
14661 msgstr "B<SIOCGIFHWADDR>, B<SIOCSIFHWADDR>"
14662
14663 #. type: Plain text
14664 #: build/C/man7/netdevice.7:204
14665 msgid ""
14666 "Get or set the hardware address of a device using I<ifr_hwaddr>.  The "
14667 "hardware address is specified in a struct I<sockaddr>.  I<sa_family> "
14668 "contains the ARPHRD_* device type, I<sa_data> the L2 hardware address "
14669 "starting from byte 0.  Setting the hardware address is a privileged "
14670 "operation."
14671 msgstr ""
14672 "デバイスのハードウェアアドレスを I<ifr_hwaddr> を用いて取得・設定する。 ハー"
14673 "ドウェアアドレスは I<sockaddr> 構造体に設定される。 I<sa_family> には "
14674 "ARPHRD_* デバイスタイプが入り、 I<sa_data> にはバイト 0 から始まる L2 ハード"
14675 "ウェアアドレスが入る。 ハードウェアアドレスの設定は特権が必要な操作である。"
14676
14677 #. type: TP
14678 #: build/C/man7/netdevice.7:204
14679 #, no-wrap
14680 msgid "B<SIOCSIFHWBROADCAST>"
14681 msgstr "B<SIOCSIFHWBROADCAST>"
14682
14683 #. type: Plain text
14684 #: build/C/man7/netdevice.7:209
14685 msgid ""
14686 "Set the hardware broadcast address of a device from I<ifr_hwaddr>.  This is "
14687 "a privileged operation."
14688 msgstr ""
14689 "デバイスのハードウェアブロードキャストアドレスを I<ifr_hwaddr> の値に設定す"
14690 "る。この操作には特権が必要である。"
14691
14692 #. type: TP
14693 #: build/C/man7/netdevice.7:209
14694 #, no-wrap
14695 msgid "B<SIOCGIFMAP>, B<SIOCSIFMAP>"
14696 msgstr "B<SIOCGIFMAP>, B<SIOCSIFMAP>"
14697
14698 #. type: Plain text
14699 #: build/C/man7/netdevice.7:214
14700 msgid ""
14701 "Get or set the interface's hardware parameters using I<ifr_map>.  Setting "
14702 "the parameters is a privileged operation."
14703 msgstr ""
14704 "インターフェースのハードウェアのパラメーターを I<ifr_map> を用いて取得・設定"
14705 "する。 パラメーターの設定は特権が必要な操作である。"
14706
14707 #. type: Plain text
14708 #: build/C/man7/netdevice.7:225
14709 #, no-wrap
14710 msgid ""
14711 "struct ifmap {\n"
14712 "    unsigned long   mem_start;\n"
14713 "    unsigned long   mem_end;\n"
14714 "    unsigned short  base_addr;\n"
14715 "    unsigned char   irq;\n"
14716 "    unsigned char   dma;\n"
14717 "    unsigned char   port;\n"
14718 "};\n"
14719 msgstr ""
14720 "struct ifmap {\n"
14721 "    unsigned long   mem_start;\n"
14722 "    unsigned long   mem_end;\n"
14723 "    unsigned short  base_addr;\n"
14724 "    unsigned char   irq;\n"
14725 "    unsigned char   dma;\n"
14726 "    unsigned char   port;\n"
14727 "};\n"
14728
14729 #. type: Plain text
14730 #: build/C/man7/netdevice.7:230
14731 msgid ""
14732 "The interpretation of the ifmap structure depends on the device driver and "
14733 "the architecture."
14734 msgstr "ifmap 構造体の解釈はデバイスドライバとアーキテクチャーに依存する。"
14735
14736 #. type: TP
14737 #: build/C/man7/netdevice.7:230
14738 #, no-wrap
14739 msgid "B<SIOCADDMULTI>, B<SIOCDELMULTI>"
14740 msgstr "B<SIOCADDMULTI>, B<SIOCDELMULTI>"
14741
14742 #. type: Plain text
14743 #: build/C/man7/netdevice.7:239
14744 msgid ""
14745 "Add an address to or delete an address from the device's link layer "
14746 "multicast filters using I<ifr_hwaddr>.  These are privileged operations.  "
14747 "See also B<packet>(7)  for an alternative."
14748 msgstr ""
14749 "デバイスのリンク層のマルチキャストフィルターから、 I<ifr_hwaddr> のアドレスを"
14750 "追加・削除する。これらの操作には特権が必要である。 別の方法が B<packet>(7)  "
14751 "で解説されている。"
14752
14753 #. type: TP
14754 #: build/C/man7/netdevice.7:239
14755 #, no-wrap
14756 msgid "B<SIOCGIFTXQLEN>, B<SIOCSIFTXQLEN>"
14757 msgstr "B<SIOCGIFTXQLEN>, B<SIOCSIFTXQLEN>"
14758
14759 #. type: Plain text
14760 #: build/C/man7/netdevice.7:244
14761 msgid ""
14762 "Get or set the transmit queue length of a device using I<ifr_qlen>.  Setting "
14763 "the transmit queue length is a privileged operation."
14764 msgstr ""
14765 "デバイスの送信キューの長さを I<ifr_qlen> に取得・設定する。送信キューの長さの"
14766 "設定には特権が必要である。"
14767
14768 #. type: TP
14769 #: build/C/man7/netdevice.7:244
14770 #, no-wrap
14771 msgid "B<SIOCSIFNAME>"
14772 msgstr "B<SIOCSIFNAME>"
14773
14774 #. type: Plain text
14775 #: build/C/man7/netdevice.7:253
14776 msgid ""
14777 "Changes the name of the interface specified in I<ifr_name> to "
14778 "I<ifr_newname>.  This is a privileged operation.  It is allowed only when "
14779 "the interface is not up."
14780 msgstr ""
14781 "I<ifr_name> で指定したインターフェースの名前を I<ifr_newname> に変更する。こ"
14782 "の操作には特権が必要である。インターフェースが up していない 時にのみ使用でき"
14783 "る。"
14784
14785 #. type: TP
14786 #: build/C/man7/netdevice.7:253
14787 #, no-wrap
14788 msgid "B<SIOCGIFCONF>"
14789 msgstr "B<SIOCGIFCONF>"
14790
14791 #. type: Plain text
14792 #: build/C/man7/netdevice.7:263
14793 msgid ""
14794 "Return a list of interface (transport layer) addresses.  This currently "
14795 "means only addresses of the B<AF_INET> (IPv4) family for compatibility.  "
14796 "Unlike the others, this ioctl passes an I<ifconf> structure:"
14797 msgstr ""
14798 "インターフェースの (トランスポート層の) アドレスのリストを返す。 現在のとこ"
14799 "ろ、互換性のため返されるのは B<AF_INET> (IPv4) 系のアドレスだけである。 他の"
14800 "操作と違い、この ioctl では I<ifconf> 構造体を渡す。"
14801
14802 #. type: Plain text
14803 #: build/C/man7/netdevice.7:273
14804 #, no-wrap
14805 msgid ""
14806 "struct ifconf {\n"
14807 "    int                 ifc_len; /* size of buffer */\n"
14808 "    union {\n"
14809 "        char           *ifc_buf; /* buffer address */\n"
14810 "        struct ifreq   *ifc_req; /* array of structures */\n"
14811 "    };\n"
14812 "};\n"
14813 msgstr ""
14814 "struct ifconf {\n"
14815 "    int                 ifc_len; /* バッファーサイズ */\n"
14816 "    union {\n"
14817 "        char           *ifc_buf; /* バッファーアドレス */\n"
14818 "        struct ifreq   *ifc_req; /* 構造体の配列 */\n"
14819 "    };\n"
14820 "};\n"
14821
14822 #. type: Plain text
14823 #: build/C/man7/netdevice.7:299
14824 msgid ""
14825 "If I<ifc_req> is NULL, B<SIOCGIFCONF> returns the necessary buffer size in "
14826 "bytes for receiving all available addresses in I<ifc_len>.  Otherwise, "
14827 "I<ifc_req> contains a pointer to an array of I<ifreq> structures to be "
14828 "filled with all currently active L3 interface addresses.  I<ifc_len> "
14829 "contains the size of the array in bytes.  Within each I<ifreq> structure, "
14830 "I<ifr_name> will receive the interface name, and I<ifr_addr> the address.  "
14831 "The actual number of bytes transferred is returned in I<ifc_len>."
14832 msgstr ""
14833 "I<ifc_req> が NULL の場合、 B<SIOCGIFCONF> はすべての取得できるアドレスを受け"
14834 "取るのに必要なバッファーサイズ (バイト数) を I<ifc_len> に格納して返す。 それ"
14835 "以外の場合は、I<ifc_req> には I<ifreq> 構造体の配列へのポインターを渡す。 こ"
14836 "の構造体の配列には現在アクティブな L3 インターフェースアドレスがすべて格納さ"
14837 "れる。 I<ifc_len> はバイト単位の配列のサイズを渡す。 I<ifreq> 構造体内では、 "
14838 "I<ifr_name> にインターフェース名が、 I<ifr_addr> にそのアドレスが入る。 実際"
14839 "に格納されたバイト数は I<ifc_len> で返される。"
14840
14841 #. type: Plain text
14842 #: build/C/man7/netdevice.7:315
14843 msgid ""
14844 "If the size specified by I<ifc_len> is insufficient to store all the "
14845 "addresses, the kernel will skip the exceeding ones and return success.  "
14846 "There is no reliable way of detecting this condition once it has occurred.  "
14847 "It is therefore recommended to either determine the necessary buffer size "
14848 "beforehand by calling B<SIOCGIFCONF> with I<ifc_req> set to NULL, or to "
14849 "retry the call with a bigger buffer whenever I<ifc_len> upon return differs "
14850 "by less than I<sizeof(struct ifreq)> from its original value."
14851 msgstr ""
14852 "I<ifc_len> で指定されたサイズがすべてのアドレスを格納するのに不十分な場合、 "
14853 "カーネルは超過分をスキップし、成功を返す。 この状況になった場合、それを検出す"
14854 "る信頼できる方法はない。 したがって、 前もって I<ifc_req> を NULL に設定して "
14855 "B<SIOCGIFCONF> を呼び出して必要なバッファーサイズを決定するか、 返された "
14856 "I<ifc_len> と元の値の差分が I<sizeof(struct ifreq)> よりも小さい場合は必ず"
14857 "バッファーを大きくして再度呼び出すか、 のいずれかを行うことが推奨される。 "
14858
14859 #.  Slaving isn't supported in 2.2
14860 #.  .
14861 #.  .TP
14862 #.  .BR SIOCGIFSLAVE ", " SIOCSIFSLAVE
14863 #.  Get or set the slave device using
14864 #.  .IR ifr_slave .
14865 #.  Setting the slave device is a privileged operation.
14866 #.  .PP
14867 #.  FIXME . add amateur radio stuff.
14868 #. type: Plain text
14869 #: build/C/man7/netdevice.7:332
14870 msgid ""
14871 "If an error occurs accessing the I<ifconf> or I<ifreq> structures, B<EFAULT> "
14872 "will be returned."
14873 msgstr ""
14874 "I<ifconf> か I<ifreq> 構造体へのアクセスでエラーが置こった場合には B<EFAULT> "
14875 "が返される。"
14876
14877 #. type: Plain text
14878 #: build/C/man7/netdevice.7:338
14879 msgid ""
14880 "Most protocols support their own ioctls to configure protocol-specific "
14881 "interface options.  See the protocol man pages for a description.  For "
14882 "configuring IP addresses, see B<ip>(7)."
14883 msgstr ""
14884 "ほとんどのプロトコルには、専用のインターフェースオプションを 設定するための独"
14885 "自の ioctl が存在する。 説明は各プロトコルの man ページを見よ。 IP アドレスの"
14886 "設定に関しては B<ip>(7) を参照。"
14887
14888 #. type: Plain text
14889 #: build/C/man7/netdevice.7:341
14890 msgid ""
14891 "In addition, some devices support private ioctls.  These are not described "
14892 "here."
14893 msgstr ""
14894 "さらに、デバイスによってはプライベートな ioctl がある。 これらはここでは説明"
14895 "しない。"
14896
14897 #. type: Plain text
14898 #: build/C/man7/netdevice.7:349
14899 msgid ""
14900 "Strictly speaking, B<SIOCGIFCONF> and the other ioctls that accept or return "
14901 "only B<AF_INET> socket addresses, are IP-specific and belong in B<ip>(7)."
14902 msgstr ""
14903 "厳密にいうと、 B<SIOCGIFCONF> や、 B<AF_INET> ソケットアドレスだけを\n"
14904 "引き数に取ったり返したりする他の ioctl は IP 固有であり、 B<ip>(7) \n"
14905 "に属する。"
14906
14907 #. type: Plain text
14908 #: build/C/man7/netdevice.7:354
14909 msgid ""
14910 "The names of interfaces with no addresses or that don't have the "
14911 "B<IFF_RUNNING> flag set can be found via I</proc/net/dev>."
14912 msgstr ""
14913 "アドレスがなかったり、 B<IFF_RUNNING> フラグがセットされていないインター"
14914 "フェースの名前は I</proc/net/dev> で知ることができる。"
14915
14916 #. type: Plain text
14917 #: build/C/man7/netdevice.7:359
14918 msgid ""
14919 "Local IPv6 IP addresses can be found via I</proc/net> or via B<rtnetlink>(7)."
14920 msgstr ""
14921 "ローカル IPV6 IP アドレスは I</proc/net> か B<rtnetlink>(7)  で知ることができ"
14922 "る。"
14923
14924 #. type: Plain text
14925 #: build/C/man7/netdevice.7:365
14926 msgid ""
14927 "glibc 2.1 is missing the I<ifr_newname> macro in I<E<lt>net/if.hE<gt>>.  Add "
14928 "the following to your program as a workaround:"
14929 msgstr ""
14930 "glibc 2.1 では I<E<lt>net/if.hE<gt>> に I<ifr_newname> マクロがない。 とりあ"
14931 "えずの対応策として、以下のコードを追加しておくこと。"
14932
14933 #. type: Plain text
14934 #: build/C/man7/netdevice.7:371
14935 #, no-wrap
14936 msgid ""
14937 "#ifndef ifr_newname\n"
14938 "#define ifr_newname     ifr_ifru.ifru_slave\n"
14939 "#endif\n"
14940 msgstr ""
14941 "#ifndef ifr_newname\n"
14942 "#define ifr_newname     ifr_ifru.ifru_slave\n"
14943 "#endif\n"
14944
14945 #. type: Plain text
14946 #: build/C/man7/netdevice.7:378
14947 msgid "B<proc>(5), B<capabilities>(7), B<ip>(7), B<rtnetlink>(7)"
14948 msgstr "B<proc>(5), B<capabilities>(7), B<ip>(7), B<rtnetlink>(7)"
14949
14950 #. type: TH
14951 #: build/C/man5/networks.5:26
14952 #, no-wrap
14953 msgid "NETWORKS"
14954 msgstr "NETWORKS"
14955
14956 #. type: TH
14957 #: build/C/man5/networks.5:26
14958 #, no-wrap
14959 msgid "2008-09-04"
14960 msgstr "2008-09-04"
14961
14962 #. type: TH
14963 #: build/C/man5/networks.5:26
14964 #, no-wrap
14965 msgid "GNU/Linux"
14966 msgstr "GNU/Linux"
14967
14968 #. type: Plain text
14969 #: build/C/man5/networks.5:29
14970 msgid "networks - network name information"
14971 msgstr "networks - ネットワーク名の情報"
14972
14973 #. type: Plain text
14974 #: build/C/man5/networks.5:35
14975 msgid ""
14976 "The file I</etc/networks> is a plain ASCII file that describes known DARPA "
14977 "networks and symbolic names for these networks.  Each line represents a "
14978 "network and has the following structure:"
14979 msgstr ""
14980 "I</etc/networks> ファイルは、通常の ASCII ファイルで、よく使われる\n"
14981 "DARPA ネットワークとその分かりやすい名前を記載したファイルである。\n"
14982 "各行が一つのネットワークを表し、以下の構造となっている。"
14983
14984 #. type: Plain text
14985 #: build/C/man5/networks.5:38
14986 msgid "I<name number aliases ...>"
14987 msgstr "I<name number aliases ...>"
14988
14989 #. type: Plain text
14990 #: build/C/man5/networks.5:46
14991 msgid ""
14992 "where the fields are delimited by spaces or tabs.  Empty lines are ignored.  "
14993 "The hash character (B<#>) indicates the start of a comment: this character, "
14994 "and the remaining characters up to the end of the current line, are ignored "
14995 "by library functions that process the file."
14996 msgstr ""
14997 "フィールドはスペースかタブで区切られる。空行は無視される。\n"
14998 "ハッシュ文字 (B<#>) はコメントの開始を示し、このファイルを処理する\n"
14999 "ライブラリ関数はこの文字とその行のそれ以降の文字を無視する。"
15000
15001 #. type: Plain text
15002 #: build/C/man5/networks.5:48 build/C/man5/protocols.5:59
15003 msgid "The field descriptions are:"
15004 msgstr "フィールドの説明は以下のとおり。"
15005
15006 #. type: TP
15007 #: build/C/man5/networks.5:48
15008 #, no-wrap
15009 msgid "I<name>"
15010 msgstr "I<name>"
15011
15012 #. type: Plain text
15013 #: build/C/man5/networks.5:53
15014 msgid ""
15015 "The symbolic name for the network.  Network names can contain any printable "
15016 "characters except white-space characters or the comment character."
15017 msgstr ""
15018 "ネットワークの分かりやすい名前 (symbolic name)。 ネットワーク名には、ホワイト"
15019 "スペースとコメント文字以外の印字可能な文字を使うことができる。"
15020
15021 #. type: TP
15022 #: build/C/man5/networks.5:53 build/C/man5/protocols.5:67
15023 #, no-wrap
15024 msgid "I<number>"
15025 msgstr "I<number>"
15026
15027 #. type: Plain text
15028 #: build/C/man5/networks.5:58
15029 msgid ""
15030 "The official number for this network in numbers-and-dots notation (see "
15031 "B<inet>(3)).  The trailing \".0\" (for the host component of the network "
15032 "address) may be omitted."
15033 msgstr ""
15034 "このネットワークの正式な数字での値。\n"
15035 "ドット区切りの数字表記 (B<inet>(3) 参照) で記載する。\n"
15036 "末尾の \".0\" (ネットワークアドレスのホスト部分) は省略してもよい。"
15037
15038 #. type: TP
15039 #: build/C/man5/networks.5:58 build/C/man5/protocols.5:71
15040 #: build/C/man5/services.5:120
15041 #, no-wrap
15042 msgid "I<aliases>"
15043 msgstr "I<aliases>"
15044
15045 #. type: Plain text
15046 #: build/C/man5/networks.5:61
15047 msgid "Optional aliases for the network."
15048 msgstr "そのネットワークの別名 (省略可能)。"
15049
15050 #. type: Plain text
15051 #: build/C/man5/networks.5:70
15052 msgid ""
15053 "This file is read by the B<route>(8)  and B<netstat>(8)  utilities.  Only "
15054 "Class A, B or C networks are supported, partitioned networks (i.e., "
15055 "network/26 or network/28) are not supported by this facility."
15056 msgstr ""
15057 "このファイルは、 B<route>(8) と B<netstat>(8) ユーティリティにより\n"
15058 "利用される。クラス A, B, C のネットワークだけがサポートされており、\n"
15059 "(network/26 や network/28 といった) 分割されたネットワークは\n"
15060 "このファイルではサポートされていない。"
15061
15062 #. type: Plain text
15063 #: build/C/man5/networks.5:74
15064 msgid "The networks definition file."
15065 msgstr "ネットワーク定義ファイル。"
15066
15067 #. type: Plain text
15068 #: build/C/man5/networks.5:80
15069 msgid ""
15070 "B<getnetbyaddr>(3), B<getnetbyname>(3), B<getnetent>(3), B<netstat>(8), "
15071 "B<route>(8)"
15072 msgstr ""
15073 "B<getnetbyaddr>(3), B<getnetbyname>(3), B<getnetent>(3), B<netstat>(8), "
15074 "B<route>(8)"
15075
15076 #. type: TH
15077 #: build/C/man8/nscd.8:23
15078 #, no-wrap
15079 msgid "NSCD"
15080 msgstr "NSCD"
15081
15082 #. type: Plain text
15083 #: build/C/man8/nscd.8:26
15084 msgid "nscd - name service cache daemon"
15085 msgstr "nscd - ネームサービスキャッシュデーモン"
15086
15087 #. type: Plain text
15088 #: build/C/man8/nscd.8:34
15089 msgid ""
15090 "Nscd is a daemon that provides a cache for the most common name service "
15091 "requests.  The default configuration file, I</etc/nscd.conf>, determines the "
15092 "behavior of the cache daemon.  See B<nscd.conf>(5)."
15093 msgstr ""
15094 "nscd は一般的なネームサービスに必要な多くのものを キャッシュとして提供する"
15095 "デーモンである。 デフォルトの設定ファイル I</etc/nscd.conf> でキャッシュデー"
15096 "モンの動作を決定する。 B<nscd.conf>(5)  を見よ。"
15097
15098 #. type: Plain text
15099 #: build/C/man8/nscd.8:47
15100 msgid ""
15101 "Nscd provides caching for accesses of the B<passwd>(5), B<group>(5), and "
15102 "B<hosts>(5)  databases through standard libc interfaces, such as "
15103 "B<getpwnam>(3), B<getpwuid>(3), B<getgrnam>(3), B<getgrgid>(3), "
15104 "B<gethostbyname>(3), and others."
15105 msgstr ""
15106 "nscd は B<passwd>(5), B<group>(5), B<hosts>(5)  データベースへのアクセスの"
15107 "キャッシュを B<getpwnam>(3), B<getpwuid>(3), B<getgrnam>(3), B<getgrgid>(3), "
15108 "B<gethostbyname>(3)  などの標準 libc インターフェースを通して提供する。"
15109
15110 #. type: Plain text
15111 #: build/C/man8/nscd.8:56
15112 msgid ""
15113 "There are two caches for each database: a positive one for items found, and "
15114 "a negative one for items not found.  Each cache has a separate TTL (time-to-"
15115 "live)  period for its data.  Note that the shadow file is specifically not "
15116 "cached.  B<getspnam>(3)  calls remain uncached as a result."
15117 msgstr ""
15118 "各データベースには 2 つのキャッシュがある。 肯定的 (positive) なキャッシュは"
15119 "見つかったアイテムをキャッシュし、 否定的 (negative) なキャッシュは見つからな"
15120 "かったアイテムをキャッシュする。 各キャッシュはデータの TTL (time-to-live, 生"
15121 "存時間) を個別に持っている。 特例として shadow ファイルはキャッシュされない点"
15122 "に注意すること。 B<getspnam>(3)  を呼び出しても結果としてキャッシュされないま"
15123 "まになる。"
15124
15125 #. type: SH
15126 #: build/C/man8/nscd.8:56
15127 #, no-wrap
15128 msgid "OPTIONS"
15129 msgstr "オプション"
15130
15131 #. type: TP
15132 #: build/C/man8/nscd.8:57
15133 #, no-wrap
15134 msgid "B<--help>"
15135 msgstr "B<--help>"
15136
15137 #. type: Plain text
15138 #: build/C/man8/nscd.8:60
15139 msgid "will give you a list with all options and what they do."
15140 msgstr "全てのオプションとその動作をリストして表示する。"
15141
15142 #. type: Plain text
15143 #: build/C/man8/nscd.8:83
15144 msgid ""
15145 "The daemon will try to watch for changes in configuration files appropriate "
15146 "for each database (e.g., I</etc/passwd> for the I<passwd> database or I</etc/"
15147 "hosts> and I</etc/resolv.conf> for the I<hosts> database), and flush the "
15148 "cache when these are changed.  However, this will happen only after a short "
15149 "delay (unless the B<inotify>(7)  mechanism is available and glibc 2.9 or "
15150 "later is available), and this auto-detection does not cover configuration "
15151 "files required by nonstandard NSS modules, if any are specified in I</etc/"
15152 "nsswitch.conf>.  In that case, you need to run the following command after "
15153 "changing the configuration file of the database so that B<nscd> invalidates "
15154 "its cache:"
15155 msgstr ""
15156 "デーモンは( I<passwd> データベースについては I</etc/passwd>、 I<hosts> データ"
15157 "ベースについては I</etc/hosts> と I</etc/resolv.conf> というような)それぞれの"
15158 "データベースのための設定ファイルを見張って、 これらが変更されるとキャッシュを"
15159 "フラッシュする。 しかし、これは( B<inotify>(7)  が利用可能で、glibc 2.9 以降"
15160 "が利用可能な場合を除いて)  短い遅延の後に起こり、またこの自動検出は非標準 "
15161 "NSS モジュールが I</etc/nsswitch.conf> で指定されている場合はその設定ファイル"
15162 "には対応しない。 この場合、データベースの設定ファイルを変更した後、 B<nscd> "
15163 "のキャッシュを無効にするために以下のコマンドを実行する必要がある:"
15164
15165 #. type: Plain text
15166 #: build/C/man8/nscd.8:85
15167 #, no-wrap
15168 msgid "    $ B<nscd -i> I<E<lt>databaseE<gt>>\n"
15169 msgstr "    $ B<nscd -i> I<E<lt>databaseE<gt>>\n"
15170
15171 #.  .SH AUTHOR
15172 #.  .B nscd
15173 #.  was written by Thorsten Kukuk and Ulrich Drepper.
15174 #. type: Plain text
15175 #: build/C/man8/nscd.8:91
15176 msgid "B<nscd.conf>(5), B<nsswitch.conf>(5)"
15177 msgstr "B<nscd.conf>(5), B<nsswitch.conf>(5)"
15178
15179 #. type: TH
15180 #: build/C/man5/nscd.conf.5:20
15181 #, no-wrap
15182 msgid "NSCD.CONF"
15183 msgstr "NSCD.CONF"
15184
15185 #. type: TH
15186 #: build/C/man5/nscd.conf.5:20
15187 #, no-wrap
15188 msgid "2014-02-07"
15189 msgstr "2014-02-07"
15190
15191 #. type: Plain text
15192 #: build/C/man5/nscd.conf.5:23
15193 msgid "/etc/nscd.conf - name service cache daemon configuration file"
15194 msgstr "/etc/nscd.conf - ネームサービスキャッシュデーモンの設定ファイル"
15195
15196 #. type: Plain text
15197 #: build/C/man5/nscd.conf.5:36
15198 msgid ""
15199 "The file I</etc/nscd.conf> is read from B<nscd>(8)  at startup.  Each line "
15200 "specifies either an attribute and a value, or an attribute, service, and a "
15201 "value.  Fields are separated either by SPACE or TAB characters.  A \\(aq#"
15202 "\\(aq (number sign) indicates the beginning of a comment; following "
15203 "characters, up to the end of the line, are not interpreted by nscd."
15204 msgstr ""
15205 "B<nscd>(8)  は起動時にファイル I</etc/nscd.conf> を読み込む。 各行には「属"
15206 "性・値」または「属性・サービス・値」を指定する。 フィールドはスペース文字また"
15207 "はタブ文字で区切られる。 \\(aq#\\(aq (ナンバー記号) はコメントの始まりを表"
15208 "す。 この記号から行末までは nscd によって解釈されない。"
15209
15210 #. type: Plain text
15211 #: build/C/man5/nscd.conf.5:39
15212 msgid ""
15213 "Valid services are I<passwd>, I<group>, I<hosts>, I<services>, or "
15214 "I<netgroup>."
15215 msgstr ""
15216 "指定可能なサービスは I<passwd>, I<group>, I<hosts>, I<services>, I<netgroup> "
15217 "である。"
15218
15219 #. type: Plain text
15220 #: build/C/man5/nscd.conf.5:42
15221 msgid "B<logfile> I<debug-file-name>"
15222 msgstr "B<logfile> I<debug-file-name>"
15223
15224 #. type: Plain text
15225 #: build/C/man5/nscd.conf.5:44
15226 msgid "Specifies name of the file to which debug info should be written."
15227 msgstr "デバッグ情報が書き込まれるファイルの名前を指定する。"
15228
15229 #. type: Plain text
15230 #: build/C/man5/nscd.conf.5:48
15231 msgid "B<debug-level> I<value>"
15232 msgstr "B<debug-level> I<value>"
15233
15234 #. type: Plain text
15235 #: build/C/man5/nscd.conf.5:51
15236 msgid "Sets the desired debug level.  The default is 0."
15237 msgstr "希望するデバッグレベルを設定する。デフォルトは 0。"
15238
15239 #. type: Plain text
15240 #: build/C/man5/nscd.conf.5:55
15241 msgid "B<threads> I<number>"
15242 msgstr "B<threads> I<number>"
15243
15244 #. type: Plain text
15245 #: build/C/man5/nscd.conf.5:59
15246 msgid ""
15247 "This is the number of threads that are started to wait for requests.  At "
15248 "least five threads will always be created."
15249 msgstr ""
15250 "スレッドをいくつ起動してリクエストを待つのかを指定する。 少なくとも 5 つのス"
15251 "レッドが常に作成される。"
15252
15253 #. type: Plain text
15254 #: build/C/man5/nscd.conf.5:63
15255 msgid "B<max-threads> I<number>"
15256 msgstr "B<max-threads> I<number>"
15257
15258 #. type: Plain text
15259 #: build/C/man5/nscd.conf.5:66
15260 msgid "Specifies the maximum number of threads.  The default is 32."
15261 msgstr "スレッドの最大数を指定する。デフォルトは 32。"
15262
15263 #. type: Plain text
15264 #: build/C/man5/nscd.conf.5:70
15265 msgid "B<server-user> I<user>"
15266 msgstr "B<server-user> I<user>"
15267
15268 #. type: Plain text
15269 #: build/C/man5/nscd.conf.5:74
15270 msgid ""
15271 "If this option is set, nscd will run as this user and not as root.  If a "
15272 "separate cache for every user is used (-S parameter), this option is ignored."
15273 msgstr ""
15274 "このオプションが設定されると、 nscd は root ではなく、この user として実行さ"
15275 "れる。 (-S パラメーターにより) 各ユーザー毎に別々のキャッシュが使われる場"
15276 "合、 このオプションは無視される。"
15277
15278 #. type: Plain text
15279 #: build/C/man5/nscd.conf.5:78
15280 msgid "B<stat-user> I<user>"
15281 msgstr "B<stat-user> I<user>"
15282
15283 #. type: Plain text
15284 #: build/C/man5/nscd.conf.5:80
15285 msgid "Specifies the user who is allowed to request statistics."
15286 msgstr "統計情報の参照を許可するユーザーを指定する。"
15287
15288 #. type: Plain text
15289 #: build/C/man5/nscd.conf.5:85
15290 msgid "B<reload-count> unlimited | I<number>"
15291 msgstr "B<reload-count> unlimited | I<number>"
15292
15293 #. type: Plain text
15294 #: build/C/man5/nscd.conf.5:89
15295 msgid ""
15296 "Limit on the number of times a cached entry gets reloaded without being used "
15297 "before it gets removed.  The default is 5."
15298 msgstr ""
15299 "キャッシュされたエントリーが使用されなかったときに、 削除される前に何回リロー"
15300 "ドされるかを設定する。デフォルトは 5。"
15301
15302 #. type: Plain text
15303 #: build/C/man5/nscd.conf.5:93
15304 msgid "B<paranoia> I<E<lt>yes|noE<gt>>"
15305 msgstr "B<paranoia> I<E<lt>yes|noE<gt>>"
15306
15307 #. type: Plain text
15308 #: build/C/man5/nscd.conf.5:96
15309 msgid ""
15310 "Enabling paranoia mode causes nscd to restart itself periodically.  The "
15311 "default is no."
15312 msgstr ""
15313 "パラノイアモードを有効にする。 パラノイアモードでは nscd を定期的に再起動す"
15314 "る。デフォルトは無効。"
15315
15316 #. type: Plain text
15317 #: build/C/man5/nscd.conf.5:100
15318 msgid "B<restart-interval> I<time>"
15319 msgstr "B<restart-interval> I<time>"
15320
15321 #. type: Plain text
15322 #: build/C/man5/nscd.conf.5:108
15323 msgid ""
15324 "Sets the restart interval to I<time> seconds if periodic restart is enabled "
15325 "by enabling B<paranoia> mode.  The default is 3600."
15326 msgstr ""
15327 "パラノイアモードが有効で定期的に再起動する場合の、 再起動間隔を I<time> 秒に"
15328 "設定する。デフォルトは 3600。"
15329
15330 #. type: Plain text
15331 #: build/C/man5/nscd.conf.5:113
15332 msgid "B<enable-cache> I<service> I<E<lt>yes|noE<gt>>"
15333 msgstr "B<enable-cache> I<service> I<E<lt>yes|noE<gt>>"
15334
15335 #. type: Plain text
15336 #: build/C/man5/nscd.conf.5:118
15337 msgid "Enables or disables the specified I<service> cache.  The default is no."
15338 msgstr ""
15339 "指定した I<service> のキャッシュを有効または無効にする。デフォルトは無効。"
15340
15341 #. type: Plain text
15342 #: build/C/man5/nscd.conf.5:123
15343 msgid "B<positive-time-to-live> I<service> I<value>"
15344 msgstr "B<positive-time-to-live> I<service> I<value>"
15345
15346 #. type: Plain text
15347 #: build/C/man5/nscd.conf.5:131
15348 msgid ""
15349 "Sets the TTL (time-to-live) for positive entries (successful queries)  in "
15350 "the specified cache for I<service>.  I<Value> is in seconds.  Larger values "
15351 "increase cache hit rates and reduce mean response times, but increase "
15352 "problems with cache coherence."
15353 msgstr ""
15354 "指定した I<service> のキャッシュにあるポジティブエントリー (成功した問い合わ"
15355 "せ) の TTL (time-to-live) を設定する。 I<value> の単位は秒である。 値を大きく"
15356 "すると、ヒット率が高くなり平均応答時間を短くできるが、 キャッシュのコヒーレン"
15357 "ス (coherence, キャッシュが実際のデータと一致していること) に問題が生じる。"
15358
15359 #. type: Plain text
15360 #: build/C/man5/nscd.conf.5:136
15361 msgid "B<negative-time-to-live> I<service> I<value>"
15362 msgstr "B<negative-time-to-live> I<service> I<value>"
15363
15364 #. type: Plain text
15365 #: build/C/man5/nscd.conf.5:146
15366 msgid ""
15367 "Sets the TTL (time-to-live) for negative entries (unsuccessful queries)  in "
15368 "the specified cache for I<service>.  I<Value> is in seconds.  Can result in "
15369 "significant performance improvements if there are several files owned by "
15370 "UIDs (user IDs) not in system databases (for example untarring the Linux "
15371 "kernel sources as root); should be kept small to reduce cache coherency "
15372 "problems."
15373 msgstr ""
15374 "指定した I<service> のキャッシュにあるネガティブエントリー (失敗した問い合わ"
15375 "せ) の TTL (time-to-live) を設定する。 I<value> の単位は秒である。 システム"
15376 "データベースにない UID (ユーザーID) で所有されるファイル (たとえば root で "
15377 "tar を展開した Linux カーネルのソース) が少ないと、 顕著な性能の向上が見られ"
15378 "る。 キャッシュのコヒーレンス問題を少なくするために小さな値にすべきである。"
15379
15380 #. type: Plain text
15381 #: build/C/man5/nscd.conf.5:151
15382 msgid "B<suggested-size> I<service> I<value>"
15383 msgstr "B<suggested-size> I<service> I<value>"
15384
15385 #. type: Plain text
15386 #: build/C/man5/nscd.conf.5:156
15387 msgid ""
15388 "This is the internal hash table size, I<value> should remain a prime number "
15389 "for optimum efficiency.  The default is 211."
15390 msgstr ""
15391 "内部ハッシュテーブルの大きさを指定する。 効率を最適にするために I<value> は素"
15392 "数にしておくべきである。デフォルトは 211 である。"
15393
15394 #. type: Plain text
15395 #: build/C/man5/nscd.conf.5:161
15396 msgid "B<check-files> I<service> I<E<lt>yes|noE<gt>>"
15397 msgstr "B<check-files> I<service> I<E<lt>yes|noE<gt>>"
15398
15399 #. type: Plain text
15400 #: build/C/man5/nscd.conf.5:173
15401 msgid ""
15402 "Enables or disables checking the file belonging to the specified I<service> "
15403 "for changes.  The files are I</etc/passwd>, I</etc/group>, I</etc/hosts>, I</"
15404 "etc/services> and I</etc/netgroup>.  The default is yes."
15405 msgstr ""
15406 "指定した I<service> に関連するファイルの変更のチェックを有効または無効にす"
15407 "る。 ファイルは I</etc/passwd>, I</etc/group>, I</etc/hosts> である。デフォル"
15408 "トは有効。"
15409
15410 #. type: Plain text
15411 #: build/C/man5/nscd.conf.5:178
15412 msgid "B<persistent> I<service> I<E<lt>yes|noE<gt>>"
15413 msgstr "B<persistent> I<service> I<E<lt>yes|noE<gt>>"
15414
15415 #. type: Plain text
15416 #: build/C/man5/nscd.conf.5:185
15417 msgid ""
15418 "Keep the content of the cache for I<service> over server restarts; useful "
15419 "when B<paranoia> mode is set.  The default is no."
15420 msgstr ""
15421 "サーバの再起動の前後で I<service> のキャッシュ内容を保持する。 B<paranoia> "
15422 "モードが有効の場合に便利である。デフォルトは保持しない。"
15423
15424 #. type: Plain text
15425 #: build/C/man5/nscd.conf.5:190
15426 msgid "B<shared> I<service> I<E<lt>yes|noE<gt>>"
15427 msgstr "B<shared> I<service> I<E<lt>yes|noE<gt>>"
15428
15429 #. type: Plain text
15430 #: build/C/man5/nscd.conf.5:197
15431 msgid ""
15432 "The memory mapping of the nscd databases for I<service> is shared with the "
15433 "clients so that they can directly search in them instead of having to ask "
15434 "the daemon over the socket each time a lookup is performed.  The default is "
15435 "no."
15436 msgstr ""
15437 "I<service> の nscd データベースのメモリーマッピングをクライアント間で共有す"
15438 "る。 これにより、検索を実行する度にソケット経由でデーモンに問い合わせを 行わ"
15439 "ずに、直接データベースを検索できるようになる。デフォルトは共有しない。"
15440
15441 #. type: Plain text
15442 #: build/C/man5/nscd.conf.5:202
15443 msgid "B<max-db-size> I<service> I<bytes>"
15444 msgstr "B<max-db-size> I<service> I<bytes>"
15445
15446 #. type: Plain text
15447 #: build/C/man5/nscd.conf.5:206
15448 msgid ""
15449 "The maximum allowable size, in bytes, of the database files for the "
15450 "I<service>.  The default is 33554432."
15451 msgstr ""
15452 "I<service> のデータベースファイルの最大許容サイズ (バイト単位)。 デフォルト値"
15453 "は 33554432 である。"
15454
15455 #. type: Plain text
15456 #: build/C/man5/nscd.conf.5:211
15457 msgid "B<auto-propagate> I<service> I<E<lt>yes|noE<gt>>"
15458 msgstr "B<auto-propagate> I<service> I<E<lt>yes|noE<gt>>"
15459
15460 #. type: Plain text
15461 #: build/C/man5/nscd.conf.5:231
15462 msgid ""
15463 "When set to I<no> for I<passwd> or I<group> service, then the I<.byname> "
15464 "requests are not added to I<passwd.byuid> or I<group.bygid> cache.  This can "
15465 "help with tables containing multiple records for the same ID.  The default "
15466 "is yes.  This option is valid only for services I<passwd> and I<group>."
15467 msgstr ""
15468 "サービス I<passwd> か I<group> で I<no> に設定すると、 I<.byname> 要求は "
15469 "I<passwd.byuid> や I<group.bygid> のキャッシュに追加されない。 このオプション"
15470 "は、 同じ ID を持つレコードが複数あるテーブルの場合に役に立つ。 デフォルトは "
15471 "yes である。 このオプションはサービス I<passwd> と I<group> でのみ有効であ"
15472 "る。"
15473
15474 #. type: Plain text
15475 #: build/C/man5/nscd.conf.5:239
15476 msgid ""
15477 "The default values stated in this manual page originate from the source code "
15478 "of B<nscd>(8)  and are used if not overridden in the configuration file.  "
15479 "The default values used in the configuration file of your distribution might "
15480 "differ."
15481 msgstr ""
15482 "このマニュアルページに書かれているデフォルト値は B<nscd>(8) のソースコードに"
15483 "書かれている値で、 設定ファイルで上書きされなかった場合に使用される。 あなた"
15484 "が利用しているディストリビューションの設定ファイルのデフォルト値は違っている"
15485 "かもしれない。"
15486
15487 #.  .SH AUTHOR
15488 #.  .B nscd
15489 #.  was written by Thorsten Kukuk and Ulrich Drepper.
15490 #. type: Plain text
15491 #: build/C/man5/nscd.conf.5:244
15492 msgid "B<nscd>(8)"
15493 msgstr "B<nscd>(8)"
15494
15495 #. type: TH
15496 #: build/C/man5/nss.5:19
15497 #, no-wrap
15498 msgid "NSS"
15499 msgstr "NSS"
15500
15501 #. type: Plain text
15502 #: build/C/man5/nss.5:22
15503 msgid "nss - Name Service Switch configuration file"
15504 msgstr "nss - 名前サービス切り替え (Name Service Switch) の設定ファイル"
15505
15506 #. type: Plain text
15507 #: build/C/man5/nss.5:29
15508 msgid ""
15509 "Each call to a function which retrieves data from a system database like the "
15510 "password or group database is handled by the Name Service Switch "
15511 "implementation in the GNU C library.  The various services provided are "
15512 "implemented by independent modules, each of which naturally varies widely "
15513 "from the other."
15514 msgstr ""
15515 "パスワードやグループのデータベースなどのシステムデータベースからのデータ取得"
15516 "の関数の呼び出しは、 GNU C ライブラリの名前サービス切り替えの実装により処理さ"
15517 "れる。 提供されている様々なサービスは個別のモジュールにより実装されており、 "
15518 "各モジュールは本質的に大きく異なっている。"
15519
15520 #. type: Plain text
15521 #: build/C/man5/nss.5:38
15522 msgid ""
15523 "The default implementations coming with the GNU C library are by default "
15524 "conservative and do not use unsafe data.  This might be very costly in some "
15525 "situations, especially when the databases are large.  Some modules allow the "
15526 "system administrator to request taking shortcuts if these are known to be "
15527 "safe.  It is then the system administrator's responsibility to ensure the "
15528 "assumption is correct."
15529 msgstr ""
15530 "GNU C ライブラリでのデフォルト実装は、 デフォルトでは保守的になっており、 安"
15531 "全でないデータは使用しない。 これはいくつかの状況、 特にデータベースが大きい"
15532 "場合、では非常にコストがかかることがある。 いくつかのモジュールでは、 安全で"
15533 "あると分かっている場合、 システム管理者がショットカットを使うようにすることが"
15534 "できる。 この前提が正しいことを保証するのはシステム管理者の責任である。"
15535
15536 #. type: Plain text
15537 #: build/C/man5/nss.5:42
15538 msgid ""
15539 "There are other modules where the implementation changed over time.  If an "
15540 "implementation used to sacrifice speed for memory consumption, it might "
15541 "create problems if the preference is switched."
15542 msgstr ""
15543 "他には実装が時間を追って変化しているモジュールもある。 モジュールの実装がメモ"
15544 "リー使用量を優先してスピードを犠牲にしていた場合、 優先度を変更すると問題が起"
15545 "こる場合がある。"
15546
15547 #. type: Plain text
15548 #: build/C/man5/nss.5:51
15549 msgid ""
15550 "The I</etc/default/nss> file contains a number of variable assignments.  "
15551 "Each variable controls the behavior of one or more NSS modules.  White "
15552 "spaces are ignored.  Lines beginning with \\(aq#\\(aq are treated as "
15553 "comments."
15554 msgstr ""
15555 "I</etc/default/nss> ファイルには変数がいくつかある。 各変数は一つもしくは複数"
15556 "の NSS モジュールの動作を制御する。 ホワイトスペースは無視される。 \\(aq#"
15557 "\\(aq で始まる行はコメントとして扱われる。"
15558
15559 #. type: Plain text
15560 #: build/C/man5/nss.5:53
15561 msgid "The variables currently recognized are:"
15562 msgstr "現在のところ認識される変数は次の通り。"
15563
15564 #. type: TP
15565 #: build/C/man5/nss.5:53
15566 #, no-wrap
15567 msgid "B<NETID_AUTHORITATIVE => I<TRUE>|I<FALSE>"
15568 msgstr "B<NETID_AUTHORITATIVE => I<TRUE>|I<FALSE>"
15569
15570 #. type: Plain text
15571 #: build/C/man5/nss.5:68
15572 msgid ""
15573 "If set to TRUE, the NIS backend for the B<initgroups>(3)  function will "
15574 "accept the information from the I<netid.byname> NIS map as authoritative.  "
15575 "This can speed up the function significantly if the I<group.byname> map is "
15576 "large.  The content of the I<netid.byname> map is used B<as is>.  The system "
15577 "administrator has to make sure it is correctly generated."
15578 msgstr ""
15579 "TRUE に設定されると、 B<initgroups>(3) 関数の NIS バックエンドが I<netid."
15580 "byname> NIS マップからの情報を信頼できるものとして受け取る。 I<group.byname> "
15581 "マップが大きい場合、 これによりこの関数を大きくスピードアップできる。 "
15582 "I<netid.byname> マップの内容はB<そのまま>使用される。 システム管理者は内容が"
15583 "正しく生成されていることを保証しなければならない。"
15584
15585 #. type: TP
15586 #: build/C/man5/nss.5:68
15587 #, no-wrap
15588 msgid "B<SERVICES_AUTHORITATIVE => I<TRUE>|I<FALSE>"
15589 msgstr "B<SERVICES_AUTHORITATIVE => I<TRUE>|I<FALSE>"
15590
15591 #. type: Plain text
15592 #: build/C/man5/nss.5:80
15593 msgid ""
15594 "If set to TRUE, the NIS backend for the B<getservbyname>(3)  and "
15595 "B<getservbyname_r>(3)  functions will assume that the I<services."
15596 "byservicename> NIS map exists and is authoritative, particularly that it "
15597 "contains both keys with /proto and without /proto for both primary service "
15598 "names and service aliases.  The system administrator has to make sure it is "
15599 "correctly generated."
15600 msgstr ""
15601 "TRUE に設定されると、 関数 B<getservbyname>(3) と B<getservbyname_r>(3) の "
15602 "NIS バックエンドが I<services.byservicename> NIS マップが存在し、その情報を信"
15603 "頼できるものとみなす。 特に、 サービス名とサービス別名の両方に対して /proto "
15604 "ありと /proto なしの両方のキーが含まれているとみなす。 システム管理者は内容が"
15605 "正しく生成されていることを保証しなければならない。"
15606
15607 #. type: TP
15608 #: build/C/man5/nss.5:80
15609 #, no-wrap
15610 msgid "B<SETENT_BATCH_READ => I<TRUE>|I<FALSE>"
15611 msgstr "B<SETENT_BATCH_READ => I<TRUE>|I<FALSE>"
15612
15613 #. type: Plain text
15614 #: build/C/man5/nss.5:98
15615 msgid ""
15616 "If set to TRUE, the NIS backend for the B<setpwent>(3)  and B<setgrent>(3)  "
15617 "functions will read the entire database at once and then hand out the "
15618 "requests one by one from memory with every corresponding B<getpwent>(3)  or "
15619 "B<getgrent>(3)  call respectively.  Otherwise, each B<getpwent>(3)  or "
15620 "B<getgrent>(3)  call might result in a network communication with the server "
15621 "to get the next entry."
15622 msgstr ""
15623 "TRUE に設定されると、 関数 B<setpwent>(3) と B<setgrent>(3) の NIS バックエン"
15624 "ドは、 全データベースを一度に読み込み、 それから対応する B<getpwent>(3) や "
15625 "B<getgrent>(3) の呼び出しで一つ一つ要求を処理する。 TRUE でない場合、 "
15626 "B<getpwent>(3) や B<getgrent>(3) の各々の呼び出しで、 次のエントリーを取得す"
15627 "るためにサーバーとのネットワーク通信が発生する。"
15628
15629 #. type: Plain text
15630 #: build/C/man5/nss.5:100
15631 msgid "I</etc/default/nss>"
15632 msgstr "I</etc/default/nss>"
15633
15634 #. type: Plain text
15635 #: build/C/man5/nss.5:102
15636 msgid ""
15637 "The default configuration corresponds to the following configuration file:"
15638 msgstr "デフォルト設定は、 以下の設定ファイルと同じである。"
15639
15640 #.  .SH AUTHOR
15641 #.  Ulrich Drepper <drepper@redhat.com>
15642 #. type: Plain text
15643 #: build/C/man5/nss.5:110
15644 #, no-wrap
15645 msgid ""
15646 "NETID_AUTHORITATIVE=FALSE\n"
15647 "SERVICES_AUTHORITATIVE=FALSE\n"
15648 "SETENT_BATCH_READ=FALSE\n"
15649 msgstr ""
15650 "NETID_AUTHORITATIVE=FALSE\n"
15651 "SERVICES_AUTHORITATIVE=FALSE\n"
15652 "SETENT_BATCH_READ=FALSE\n"
15653
15654 #. type: Plain text
15655 #: build/C/man5/nss.5:112
15656 msgid "I<nsswitch.conf>"
15657 msgstr "I<nsswitch.conf>"
15658
15659 #. type: TH
15660 #: build/C/man5/nsswitch.conf.5:25
15661 #, no-wrap
15662 msgid "NSSWITCH.CONF"
15663 msgstr "NSSWITCH.CONF"
15664
15665 #. type: Plain text
15666 #: build/C/man5/nsswitch.conf.5:28
15667 msgid "nsswitch.conf - Name Service Switch configuration file"
15668 msgstr "nsswitch.conf - ネームサービススイッチの設定ファイル"
15669
15670 #. type: Plain text
15671 #: build/C/man5/nsswitch.conf.5:36
15672 msgid ""
15673 "The Name Service Switch (NSS) configuration file, I</etc/nsswitch.conf>, is "
15674 "used by the GNU C Library to determine the sources from which to obtain name-"
15675 "service information in a range of categories, and in what order.  Each "
15676 "category of information is identified by a database name."
15677 msgstr ""
15678 "ネームサービススイッチ (Name Service Switch; NSS) の設定ファイル\n"
15679 "I</etc/nsswitch.conf> は、 GNU C ライブラリが\n"
15680 "いろいろなカテゴリーの名前サービス情報を、どの情報源から\n"
15681 "どの順序で取得するかを判断するのに使用される\n"
15682 "(情報の各カテゴリーはデータベース名で識別される)。"
15683
15684 #. type: Plain text
15685 #: build/C/man5/nsswitch.conf.5:42
15686 msgid ""
15687 "The file is plain ASCII text, with columns separated by spaces or tab "
15688 "characters.  The first column specifies the database name.  The remaining "
15689 "columns describe the order of sources to query and a limited set of actions "
15690 "that can be performed by lookup result."
15691 msgstr ""
15692 "設定ファイルは通常の ASCII テキストで、列はスペースかタブ文字で\n"
15693 "区切られる。最初の列はデータベース名を示す。\n"
15694 "残りの列は、情報を問い合わせる情報源の順序と、\n"
15695 "検索結果に対して実行するアクションを規定する。"
15696
15697 #. type: Plain text
15698 #: build/C/man5/nsswitch.conf.5:44
15699 msgid "The following databases are understood by the GNU C Library:"
15700 msgstr "GNU C ライブラリでは以下のデータベースを扱うことができる。"
15701
15702 #. type: Plain text
15703 #: build/C/man5/nsswitch.conf.5:49
15704 msgid "Mail aliases, used by B<getaliasent>(3)  and related functions."
15705 msgstr "メールのエイリアス。 B<getaliasent>(3) や関連する関数が使用する。"
15706
15707 #. type: Plain text
15708 #: build/C/man5/nsswitch.conf.5:52
15709 msgid "Ethernet numbers."
15710 msgstr "イーサーネット番号。"
15711
15712 #. type: Plain text
15713 #: build/C/man5/nsswitch.conf.5:57
15714 msgid "Groups of users, used by B<getgrent>(3)  and related functions."
15715 msgstr "ユーザーのグループ。 B<getgrent>(3) や関連する関数が使用する。"
15716
15717 #. type: Plain text
15718 #: build/C/man5/nsswitch.conf.5:62
15719 msgid ""
15720 "Host names and numbers, used by B<gethostbyname>(3)  and related functions."
15721 msgstr "ホスト名とホスト番号。 B<gethostbyname>(3) や関連する関数が使用する。"
15722
15723 #. type: Plain text
15724 #: build/C/man5/nsswitch.conf.5:67
15725 msgid "Supplementary group access list, used by B<getgrouplist>(3)  function."
15726 msgstr "補助グループアクセスリスト。 B<getgrouplist>(3) 関数が使用する。"
15727
15728 #. type: Plain text
15729 #: build/C/man5/nsswitch.conf.5:71
15730 msgid ""
15731 "Network-wide list of hosts and users, used for access rules.  C libraries "
15732 "before glibc 2.1 supported netgroups only over NIS."
15733 msgstr ""
15734 "ネットワークワイドに用いられるホストやユーザーのリスト。アクセス制限に利用\n"
15735 "される。 glibc 2.1 より前の C ライブラリは、 NIS による netgroup のみを\n"
15736 "サポートしていた。"
15737
15738 #. type: Plain text
15739 #: build/C/man5/nsswitch.conf.5:76
15740 msgid ""
15741 "Network names and numbers, used by B<getnetent>(3)  and related functions."
15742 msgstr "ネットワーク名と番号。 B<getnetent>(3) と関連する関数が使用する。"
15743
15744 #. type: Plain text
15745 #: build/C/man5/nsswitch.conf.5:81
15746 msgid "User passwords, used by B<getpwent>(3)  and related functions."
15747 msgstr "ユーザーパスワード。 B<getpwent>(3) や関連する関数が使用する。"
15748
15749 #. type: Plain text
15750 #: build/C/man5/nsswitch.conf.5:86
15751 msgid "Network protocols, used by B<getprotoent>(3)  and related functions."
15752 msgstr "ネットワークプロトコル。 B<getprotoent>(3) や関連する関数が使用する。"
15753
15754 #. type: TP
15755 #: build/C/man5/nsswitch.conf.5:86
15756 #, no-wrap
15757 msgid "B<publickey>"
15758 msgstr "B<publickey>"
15759
15760 #. type: Plain text
15761 #: build/C/man5/nsswitch.conf.5:89
15762 msgid "Public and secret keys for Secure_RPC used by NFS and NIS+."
15763 msgstr "NIS+ と NFS によって用いられる secure_rpc の公開鍵と秘密鍵。"
15764
15765 #. type: Plain text
15766 #: build/C/man5/nsswitch.conf.5:94
15767 msgid ""
15768 "Remote procedure call names and numbers, used by B<getrpcbyname>(3)  and "
15769 "related functions."
15770 msgstr ""
15771 "リモート手続き呼び出し (remote procedure call) の名前と番号。 \n"
15772 "B<getrpcbyname>(3) と関連する関数が使用する。"
15773
15774 #. type: Plain text
15775 #: build/C/man5/nsswitch.conf.5:99
15776 msgid "Network services, used by B<getservent>(3)  and related functions."
15777 msgstr "ネットワークサービス。 B<getservent>(3) や関連する関数が使用する。"
15778
15779 #. type: Plain text
15780 #: build/C/man5/nsswitch.conf.5:104
15781 msgid "Shadow user passwords, used by B<getspnam>(3)  and related functions."
15782 msgstr "シャドウユーザーパスワード。 B<getspnam>(3) や関連する関数が使用する。"
15783
15784 #. type: Plain text
15785 #: build/C/man5/nsswitch.conf.5:108
15786 msgid "Here is an example I</etc/nsswitch.conf> file:"
15787 msgstr "以下は I</etc/nsswitch.conf> ファイルの例である。"
15788
15789 #. type: TP
15790 #: build/C/man5/nsswitch.conf.5:111
15791 #, no-wrap
15792 msgid "passwd:"
15793 msgstr "passwd:"
15794
15795 #. type: Plain text
15796 #: build/C/man5/nsswitch.conf.5:114 build/C/man5/nsswitch.conf.5:117
15797 #: build/C/man5/nsswitch.conf.5:120
15798 msgid "compat"
15799 msgstr "compat"
15800
15801 #. type: TP
15802 #: build/C/man5/nsswitch.conf.5:114
15803 #, no-wrap
15804 msgid "group:"
15805 msgstr "group:"
15806
15807 #. type: TP
15808 #: build/C/man5/nsswitch.conf.5:117
15809 #, no-wrap
15810 msgid "shadow:"
15811 msgstr "shadow:"
15812
15813 #. type: TP
15814 #: build/C/man5/nsswitch.conf.5:121
15815 #, no-wrap
15816 msgid "hosts:"
15817 msgstr "hosts:"
15818
15819 #. type: Plain text
15820 #: build/C/man5/nsswitch.conf.5:124
15821 msgid "dns [!UNAVAIL=return] files"
15822 msgstr "dns [!UNAVAIL=return] files"
15823
15824 #. type: TP
15825 #: build/C/man5/nsswitch.conf.5:124
15826 #, no-wrap
15827 msgid "networks:"
15828 msgstr "networks:"
15829
15830 #. type: Plain text
15831 #: build/C/man5/nsswitch.conf.5:127 build/C/man5/nsswitch.conf.5:130
15832 #: build/C/man5/nsswitch.conf.5:133 build/C/man5/nsswitch.conf.5:136
15833 #: build/C/man5/nsswitch.conf.5:139
15834 msgid "nis [NOTFOUND=return] files"
15835 msgstr "nis [NOTFOUND=return] files"
15836
15837 #. type: TP
15838 #: build/C/man5/nsswitch.conf.5:127
15839 #, no-wrap
15840 msgid "ethers:"
15841 msgstr "ethers:"
15842
15843 #. type: TP
15844 #: build/C/man5/nsswitch.conf.5:130
15845 #, no-wrap
15846 msgid "protocols:"
15847 msgstr "protocols:"
15848
15849 #. type: TP
15850 #: build/C/man5/nsswitch.conf.5:133
15851 #, no-wrap
15852 msgid "rpc:"
15853 msgstr "rpc:"
15854
15855 #. type: TP
15856 #: build/C/man5/nsswitch.conf.5:136
15857 #, no-wrap
15858 msgid "services:"
15859 msgstr "services:"
15860
15861 #. type: Plain text
15862 #: build/C/man5/nsswitch.conf.5:144
15863 msgid "The first column is the database name.  The remaining columns specify:"
15864 msgstr ""
15865 "最初の列はデータベース名である。\n"
15866 "残りの列で以下を指定する。"
15867
15868 #. type: Plain text
15869 #: build/C/man5/nsswitch.conf.5:148
15870 msgid ""
15871 "One or more service specifications, for example, \"files\", \"db\", or \"nis"
15872 "\".  The order of the services on the line determines the order in which "
15873 "those services will be queried, in turn, until a result is found."
15874 msgstr ""
15875 "1 個以上のサービス指定 (例: \"files\", \"db\", \"nis\")。この行に記載された\n"
15876 "サービスの順序で、結果が得られるまで、指定されたサービスに対する\n"
15877 "問い合わせが順番に行われる。"
15878
15879 #. type: Plain text
15880 #: build/C/man5/nsswitch.conf.5:151
15881 msgid ""
15882 "Optional actions to perform if a particular result is obtained from the "
15883 "preceding service, for example, \"[NOTFOUND=return]\"."
15884 msgstr ""
15885 "特定の結果が直前のサービスで得られた場合に実行されるアクション\n"
15886 "(例: \"[NOTFOUND=return]\")。アクションは省略可能である。"
15887
15888 #. type: Plain text
15889 #: build/C/man5/nsswitch.conf.5:177
15890 msgid ""
15891 "The service specifications supported on your system depend on the presence "
15892 "of shared libraries, and are therefore extensible.  Libraries called I</lib/"
15893 "libnss_SERVICE.so.>B<X> will provide the named I<SERVICE>.  On a standard "
15894 "installation, you can use \"files\", \"db\", \"nis\", and \"nisplus\".  For "
15895 "the B<hosts> database, you can additionally specify \"dns\".  For the "
15896 "B<passwd>, B<group>, and B<shadow> databases, you can additionally specify "
15897 "\"compat\" (see B<Compatibility mode> below).  The version number B<X> may "
15898 "be 1 for glibc 2.0, or 2 for glibc 2.1 and later.  On systems with "
15899 "additional libraries installed, you may have access to further services such "
15900 "as \"hesiod\", \"ldap\", \"winbind\" and \"wins\"."
15901 msgstr ""
15902 "利用しているシステムでどのサービス指定が利用できるかは、共有ライブラリ\n"
15903 "があるかどうかに依存しており、そのためサービス指定は拡張できるように\n"
15904 "なっている。I</lib/libnss_SERVICE.so.>B<X> という名前のライブラリが\n"
15905 "I<SERVICE> という名前のサービスを提供する。標準のインストールを行った\n"
15906 "場合、\"files\", \"db\", \"nis\", \"nisplus\" が利用できる。\n"
15907 "データベース B<hosts> の場合には、追加で \"dns\" も指定できる。\n"
15908 "データベース B<passwd>, B<group>, B<shadow> の場合には、追加で\n"
15909 "\"compat\" (下記の B<互換モード> を参照)。バージョン番号 B<X> は、\n"
15910 "glibc 2.0 の場合は 1、glibc 2.1 の場合は 2 で、それ以降も同様である。\n"
15911 "追加のライブラリがインストールされているシステムでは、\"hesiod\",\n"
15912 "\"ldap\", \"winbind\", \"wins\" などの追加のサービスが利用できる。"
15913
15914 #. type: Plain text
15915 #: build/C/man5/nsswitch.conf.5:182
15916 msgid ""
15917 "An action may also be specified following a service specification.  The "
15918 "action modifies the behavior following a result obtained from the preceding "
15919 "data source.  Action items take the general form:"
15920 msgstr ""
15921 "サービス指定の次にアクションを指定することもできる。アクションを\n"
15922 "使うと、直前のデータ源から結果が得られた後の動作を変更できる。\n"
15923 "アクション指定は、一般的には以下の形式となる。"
15924
15925 #. type: Plain text
15926 #: build/C/man5/nsswitch.conf.5:185
15927 msgid "[I<STATUS>=I<ACTION>]"
15928 msgstr "[I<STATUS>=I<ACTION>]"
15929
15930 #. type: Plain text
15931 #: build/C/man5/nsswitch.conf.5:187
15932 msgid "[!I<STATUS>=I<ACTION>]"
15933 msgstr "[!I<STATUS>=I<ACTION>]"
15934
15935 #. type: Plain text
15936 #: build/C/man5/nsswitch.conf.5:190
15937 msgid "where"
15938 msgstr "STATUS と ACTION はそれぞれ以下の値を取る。"
15939
15940 #. type: Plain text
15941 #: build/C/man5/nsswitch.conf.5:201
15942 msgid "I<STATUS> =E<gt> B<success> | B<notfound> | B<unavail> | B<tryagain>"
15943 msgstr "I<STATUS> =E<gt> B<success> | B<notfound> | B<unavail> | B<tryagain>"
15944
15945 #. type: Plain text
15946 #: build/C/man5/nsswitch.conf.5:207
15947 msgid "I<ACTION> =E<gt> B<return> | B<continue>"
15948 msgstr "I<ACTION> =E<gt> B<return> | B<continue>"
15949
15950 #. type: Plain text
15951 #: build/C/man5/nsswitch.conf.5:212
15952 msgid ""
15953 "The ! negates the test, matching all possible results except the one "
15954 "specified.  The case of the keywords is not significant."
15955 msgstr ""
15956 "! はテスト結果を反転させる。\n"
15957 "つまり、指定された以外の全ての結果にマッチする。\n"
15958 "キーワードの大文字、小文字は無視される。"
15959
15960 #. type: Plain text
15961 #: build/C/man5/nsswitch.conf.5:217
15962 msgid ""
15963 "The I<STATUS> value is matched against the result of the lookup function "
15964 "called by the preceding service specification, and can be one of:"
15965 msgstr ""
15966 "I<STATUS> は、直前のサービス指定で呼び出しされた検索処理の結果に\n"
15967 "対して照合が行われる。 I<STATUS> には以下のいずれかを指定できる。"
15968
15969 #. type: TP
15970 #: build/C/man5/nsswitch.conf.5:218
15971 #, no-wrap
15972 msgid "B<success>"
15973 msgstr "B<success>"
15974
15975 #. type: Plain text
15976 #: build/C/man5/nsswitch.conf.5:222
15977 msgid ""
15978 "No error occurred and the requested entry is returned.  The default action "
15979 "for this condition is \"return\"."
15980 msgstr ""
15981 "エラーは発生せず、要求されたエントリーが返された。\n"
15982 "この場合のデフォルトのアクションは \"return\" である。"
15983
15984 #. type: TP
15985 #: build/C/man5/nsswitch.conf.5:222
15986 #, no-wrap
15987 msgid "B<notfound>"
15988 msgstr "B<notfound>"
15989
15990 #. type: Plain text
15991 #: build/C/man5/nsswitch.conf.5:226
15992 msgid ""
15993 "The lookup succeeded, but the requested entry was not found.  The default "
15994 "action for this condition is \"continue\"."
15995 msgstr ""
15996 "検索は成功したが、要求されたエントリーが見つからなかった。\n"
15997 "この場合のデフォルトのアクションは \"continue\" である。"
15998
15999 #. type: TP
16000 #: build/C/man5/nsswitch.conf.5:226
16001 #, no-wrap
16002 msgid "B<unavail>"
16003 msgstr "B<unavail>"
16004
16005 #. type: Plain text
16006 #: build/C/man5/nsswitch.conf.5:233
16007 msgid ""
16008 "The service is permanently unavailable.  This can mean either that the "
16009 "required file cannot be read, or, for network services, that the server is "
16010 "not available or does not allow queries.  The default action for this "
16011 "condition is \"continue\"."
16012 msgstr ""
16013 "サービスが永続的に利用できない。\n"
16014 "必要なファイルを読み込むことができない、\n"
16015 "ネットワークサービスの場合には、サーバが利用できないとか、\n"
16016 "サーバが問い合わせを許可していない、などが考えられる。\n"
16017 "この場合のデフォルトのアクションは \"continue\" である。"
16018
16019 #. type: TP
16020 #: build/C/man5/nsswitch.conf.5:233
16021 #, no-wrap
16022 msgid "B<tryagain>"
16023 msgstr "B<tryagain>"
16024
16025 #. type: Plain text
16026 #: build/C/man5/nsswitch.conf.5:239
16027 msgid ""
16028 "The service is temporarily unavailable.  This could mean a file is locked or "
16029 "a server currently cannot accept more connections.  The default action for "
16030 "this condition is \"continue\"."
16031 msgstr ""
16032 "サービスが一時的に利用できない。\n"
16033 "ファイルがロックされている、サーバがこれ以上接続を受け付けることができな"
16034 "い、\n"
16035 "などが考えられる。デフォル トのアクションは \"continue\" である。"
16036
16037 #. type: Plain text
16038 #: build/C/man5/nsswitch.conf.5:244
16039 msgid "The I<ACTION> value can be one of:"
16040 msgstr "I<ACTION> には以下のいずれかを指定できる。"
16041
16042 #. type: TP
16043 #: build/C/man5/nsswitch.conf.5:245
16044 #, no-wrap
16045 msgid "B<return>"
16046 msgstr "B<return>"
16047
16048 #. type: Plain text
16049 #: build/C/man5/nsswitch.conf.5:257
16050 msgid ""
16051 "Return a result now.  Do not call any further lookup functions.  However, "
16052 "for compatibility reasons, if this is the selected action for the B<group> "
16053 "database and the B<notfound> status, and the configuration file does not "
16054 "contain the B<initgroups> line, the next lookup function is always called, "
16055 "without affecting the search result."
16056 msgstr ""
16057 "結果をすぐに返す。 これ以上検索処理は呼び出されない。 ただし、互換性のため、 "
16058 "選択されたアクションが B<group> データベースに対するもので、 ステータスが "
16059 "B<notfound> であった場合で、 設定ファイルに B<initgroups> の行が含まれていな"
16060 "い場合には、次の検索処理は常に呼び出される (検索結果への影響はない)。"
16061
16062 #. type: TP
16063 #: build/C/man5/nsswitch.conf.5:257
16064 #, no-wrap
16065 msgid "B<continue>"
16066 msgstr "B<continue>"
16067
16068 #. type: Plain text
16069 #: build/C/man5/nsswitch.conf.5:260
16070 msgid "Call the next lookup function."
16071 msgstr "次の検索処理を呼び出す。"
16072
16073 #. type: SS
16074 #: build/C/man5/nsswitch.conf.5:261
16075 #, no-wrap
16076 msgid "Compatibility mode (compat)"
16077 msgstr "互換モード (compat)"
16078
16079 #. type: Plain text
16080 #: build/C/man5/nsswitch.conf.5:267
16081 msgid ""
16082 "The NSS \"compat\" service is similar to \"files\" except that it "
16083 "additionally permits special entries in I</etc/passwd> for granting users or "
16084 "members of netgroups access to the system.  The following entries are valid "
16085 "in this mode:"
16086 msgstr ""
16087 "NSS \"compat\" サービスは \"files\" と似ているが、システムにアクセスできる\n"
16088 "ユーザーやネットグループ (netgroup) のメンバの指定に I</etc/passwd> で\n"
16089 "特別なエントリーを追加で使うことができる点が異なる。\n"
16090 "このモードでは、以下のエントリーを使うことができる。"
16091
16092 #. type: TP
16093 #: build/C/man5/nsswitch.conf.5:268
16094 #, no-wrap
16095 msgid "B<+>I<user>"
16096 msgstr "B<+>I<user>"
16097
16098 #. type: Plain text
16099 #: build/C/man5/nsswitch.conf.5:273
16100 msgid "Include the specified I<user> from the NIS passwd map."
16101 msgstr "NIS パスワードマップの指定された I<user> を含める。"
16102
16103 #. type: TP
16104 #: build/C/man5/nsswitch.conf.5:273
16105 #, no-wrap
16106 msgid "B<+@>I<netgroup>"
16107 msgstr "B<+@>I<netgroup>"
16108
16109 #. type: Plain text
16110 #: build/C/man5/nsswitch.conf.5:277
16111 msgid "Include all users in the given I<netgroup>."
16112 msgstr "指定された I<netgroup> の全ユーザーを含める。"
16113
16114 #. type: TP
16115 #: build/C/man5/nsswitch.conf.5:277
16116 #, no-wrap
16117 msgid "B<->I<user>"
16118 msgstr "B<->I<user>"
16119
16120 #. type: Plain text
16121 #: build/C/man5/nsswitch.conf.5:282
16122 msgid "Exclude the specified I<user> from the NIS passwd map."
16123 msgstr "NIS パスワードマップの指定された I<user> を除外する。"
16124
16125 #. type: TP
16126 #: build/C/man5/nsswitch.conf.5:282
16127 #, no-wrap
16128 msgid "B<-@>I<netgroup>"
16129 msgstr "B<-@>I<netgroup>"
16130
16131 #. type: Plain text
16132 #: build/C/man5/nsswitch.conf.5:286
16133 msgid "Exclude all users in the given I<netgroup>."
16134 msgstr "指定された I<netgroup> の全ユーザーを除外する。"
16135
16136 #. type: TP
16137 #: build/C/man5/nsswitch.conf.5:286
16138 #, no-wrap
16139 msgid "B<+>"
16140 msgstr "B<+>"
16141
16142 #. type: Plain text
16143 #: build/C/man5/nsswitch.conf.5:290
16144 msgid ""
16145 "Include every user, except previously excluded ones, from the NIS passwd map."
16146 msgstr ""
16147 "NIS パスワードマップのユーザーのうち、\n"
16148 "それまでに除外されていない全てのユーザーを含める。"
16149
16150 #. type: Plain text
16151 #: build/C/man5/nsswitch.conf.5:298
16152 msgid ""
16153 "By default the source is \"nis\", but this may be overridden by specifying "
16154 "\"nisplus\" as the source for the pseudo-databases B<passwd_compat>, "
16155 "B<group_compat>, and B<shadow_compat>."
16156 msgstr ""
16157 "デフォルトでは、データ源は \"nis\" だが、\n"
16158 "擬似データベース B<passwd_compat>, B<group_compat>, B<shadow_compat>\n"
16159 "ではデータ源として \"nisplus\" を指定することもできる。"
16160
16161 #. type: Plain text
16162 #: build/C/man5/nsswitch.conf.5:305
16163 msgid ""
16164 "A service named I<SERVICE> is implemented by a shared object library named "
16165 "I<libnss_SERVICE.so.>B<X> that resides in I</lib>."
16166 msgstr ""
16167 "I<SERVICE> という名前のサービスは I<libnss_SERVICE.so.>B<X> という\n"
16168 "名前の共有オブジェクトライブラリで実装されている。\n"
16169 "これは I</lib> に置かれる。"
16170
16171 #. type: Plain text
16172 #: build/C/man5/nsswitch.conf.5:310
16173 msgid "NSS configuration file."
16174 msgstr "NSS の設定ファイル。"
16175
16176 #. type: TP
16177 #: build/C/man5/nsswitch.conf.5:310
16178 #, no-wrap
16179 msgid "I</lib/libnss_compat.so.>B<X>"
16180 msgstr "I</lib/libnss_compat.so.>B<X>"
16181
16182 #. type: Plain text
16183 #: build/C/man5/nsswitch.conf.5:313
16184 msgid "implements \"compat\" source."
16185 msgstr "\"compat\" ソースを実装したもの。"
16186
16187 #. type: TP
16188 #: build/C/man5/nsswitch.conf.5:313
16189 #, no-wrap
16190 msgid "I</lib/libnss_db.so.>B<X>"
16191 msgstr "I</lib/libnss_db.so.>B<X>"
16192
16193 #. type: Plain text
16194 #: build/C/man5/nsswitch.conf.5:316
16195 msgid "implements \"db\" source."
16196 msgstr "\"db\" ソースを実装したもの。"
16197
16198 #. type: TP
16199 #: build/C/man5/nsswitch.conf.5:316
16200 #, no-wrap
16201 msgid "I</lib/libnss_dns.so.>B<X>"
16202 msgstr "I</lib/libnss_dns.so.>B<X>"
16203
16204 #. type: Plain text
16205 #: build/C/man5/nsswitch.conf.5:319
16206 msgid "implements \"dns\" source."
16207 msgstr "\"dns\" ソースを実装したもの。"
16208
16209 #. type: TP
16210 #: build/C/man5/nsswitch.conf.5:319
16211 #, no-wrap
16212 msgid "I</lib/libnss_files.so.>B<X>"
16213 msgstr "I</lib/libnss_files.so.>B<X>"
16214
16215 #. type: Plain text
16216 #: build/C/man5/nsswitch.conf.5:322
16217 msgid "implements \"files\" source."
16218 msgstr "\"files\" ソースを実装したもの。"
16219
16220 #. type: TP
16221 #: build/C/man5/nsswitch.conf.5:322
16222 #, no-wrap
16223 msgid "I</lib/libnss_hesiod.so.>B<X>"
16224 msgstr "I</lib/libnss_hesiod.so.>B<X>"
16225
16226 #. type: Plain text
16227 #: build/C/man5/nsswitch.conf.5:325
16228 msgid "implements \"hesiod\" source."
16229 msgstr "\"hesoid\" ソースを実装したもの。"
16230
16231 #. type: TP
16232 #: build/C/man5/nsswitch.conf.5:325
16233 #, no-wrap
16234 msgid "I</lib/libnss_nis.so.>B<X>"
16235 msgstr "I</lib/libnss_nis.so.>B<X>"
16236
16237 #. type: Plain text
16238 #: build/C/man5/nsswitch.conf.5:328
16239 msgid "implements \"nis\" source."
16240 msgstr "\"nis\" ソースを実装したもの。"
16241
16242 #. type: TP
16243 #: build/C/man5/nsswitch.conf.5:328
16244 #, no-wrap
16245 msgid "I</lib/libnss_nisplus.so.>B<X>"
16246 msgstr "I</lib/libnss_nisplus.so.>B<X>"
16247
16248 #. type: Plain text
16249 #: build/C/man5/nsswitch.conf.5:331
16250 msgid "implements \"nisplus\" source."
16251 msgstr "\"nisplus\" ソースを実装したもの。"
16252
16253 #. type: Plain text
16254 #: build/C/man5/nsswitch.conf.5:339
16255 msgid ""
16256 "Within each process that uses B<nsswitch.conf>, the entire file is read only "
16257 "once.  If the file is later changed, the process will continue using the old "
16258 "configuration."
16259 msgstr ""
16260 "I<nsswitch.conf> を利用するプロセスは、ファイルは一度しか読み込まない。\n"
16261 "その後で nsswitch.conf が書き換えられても、そのプロセスは古い設定のままで\n"
16262 "動作を継続する。"
16263
16264 #. type: Plain text
16265 #: build/C/man5/nsswitch.conf.5:352
16266 msgid ""
16267 "Traditionally, there was only a single source for service information, often "
16268 "in the form of a single configuration file (e.g., I</etc/passwd>).  However, "
16269 "as other name services, such as the Network Information Service (NIS) and "
16270 "the Domain Name Service (DNS), became popular, a method was needed that "
16271 "would be more flexible than fixed search orders coded into the C library.  "
16272 "The Name Service Switch mechanism, which was based on the mechanism used by "
16273 "Sun Microsystems in the Solaris 2 C library, introduced a cleaner solution "
16274 "to the problem."
16275 msgstr ""
16276 "伝統的には、サービス情報の情報源は一つだけであり、\n"
16277 "その設定ファイルの形式も一つであった (例えば I</etc/passwd>)。\n"
16278 "一方で、 Network Information Service (NIS) や Domain Name Service\n"
16279 "(DNS) などの他の名前サービスが一般的になるに連れて、C ライブラリに埋め\n"
16280 "込まれた固定順序ではなく、検索順序を柔軟に指定する方法が必要になった。\n"
16281 "ネームサービススイッチ機構は、この問題に対するよりきれいな解決方法と\n"
16282 "なっている。ネームサービススイッチ機構は、 Sun Microsystems が \n"
16283 "Solaris 2 の C ライブラリで使った機構が基になっている。"
16284
16285 #. type: Plain text
16286 #: build/C/man5/nsswitch.conf.5:355
16287 msgid "B<getent>(1), B<nss>(5)"
16288 msgstr "B<getent>(1), B<nss>(5)"
16289
16290 #. type: TH
16291 #: build/C/man7/packet.7:12
16292 #, no-wrap
16293 msgid "PACKET"
16294 msgstr "PACKET"
16295
16296 #. type: Plain text
16297 #: build/C/man7/packet.7:15
16298 msgid "packet - packet interface on device level"
16299 msgstr "packet - デバイスレベルのパケットインターフェース"
16300
16301 #. type: Plain text
16302 #: build/C/man7/packet.7:18
16303 #, no-wrap
16304 msgid "B<#include E<lt>sys/socket.hE<gt>>\n"
16305 msgstr "B<#include E<lt>sys/socket.hE<gt>>\n"
16306
16307 #. type: Plain text
16308 #: build/C/man7/packet.7:20
16309 #, no-wrap
16310 msgid "B<#include E<lt>linux/if_packet.hE<gt>>\n"
16311 msgstr "B<#include E<lt>linux/if_packet.hE<gt>>\n"
16312
16313 #. type: Plain text
16314 #: build/C/man7/packet.7:22
16315 #, no-wrap
16316 msgid "B<#include E<lt>net/ethernet.hE<gt> /* the L2 protocols */>\n"
16317 msgstr "B<#include E<lt>net/ethernet.hE<gt> /* L2 プロトコル */>\n"
16318
16319 #. type: Plain text
16320 #: build/C/man7/packet.7:24
16321 #, no-wrap
16322 msgid "B<packet_socket = socket(AF_PACKET, int >I<socket_type>B<, int >I<protocol>B<);>\n"
16323 msgstr "B<packet_socket = socket(AF_PACKET, int >I<socket_type>B<, int >I<protocol>B<);>\n"
16324
16325 #. type: Plain text
16326 #: build/C/man7/packet.7:30
16327 msgid ""
16328 "Packet sockets are used to receive or send raw packets at the device driver "
16329 "(OSI Layer 2) level.  They allow the user to implement protocol modules in "
16330 "user space on top of the physical layer."
16331 msgstr ""
16332 "packet ソケットは、デバイスドライバ (OSI レイヤ 2) レベルで 生のパケット "
16333 "(raw packet) を送受信するために用いられる。 packet ソケットを使うと、ユーザー"
16334 "空間で物理層の上に プロトコルモジュールを実装することができる。"
16335
16336 #. type: Plain text
16337 #: build/C/man7/packet.7:51
16338 msgid ""
16339 "The I<socket_type> is either B<SOCK_RAW> for raw packets including the link-"
16340 "level header or B<SOCK_DGRAM> for cooked packets with the link-level header "
16341 "removed.  The link-level header information is available in a common format "
16342 "in a I<sockaddr_ll>.  I<protocol> is the IEEE 802.3 protocol number in "
16343 "network byte order.  See the I<E<lt>linux/if_ether.hE<gt>> include file for "
16344 "a list of allowed protocols.  When protocol is set to B<htons(ETH_P_ALL)> "
16345 "then all protocols are received.  All incoming packets of that protocol type "
16346 "will be passed to the packet socket before they are passed to the protocols "
16347 "implemented in the kernel."
16348 msgstr ""
16349 "I<socket_type> には B<SOCK_RAW> と B<SOCK_DGRAM> のいずれかを指定する。 "
16350 "B<SOCK_RAW> はリンクレベルヘッダーを含む raw パケットを、 B<SOCK_DGRAM> はリ"
16351 "ンクレベルヘッダーが削除された加工済みパケットを示す。 リンクレベルヘッダー情"
16352 "報は I<sockaddr_ll> で共通のフォーマットで入手できる。 I<protocol> には IEEE "
16353 "802.3 プロトコル番号を ネットワークバイトオーダーで指定する。 指定できるプロ"
16354 "トコルのリストは、インクルードファイル I<E<lt>linux/if_ether.hE<gt>> を参照。"
16355 "プロトコルを B<htons(ETH_P_ALL)> にすると、全てのプロトコルが受信される。 外"
16356 "部から来たパケットのうち指定したプロトコルのものは、 カーネルに実装されている"
16357 "プロトコルに渡される前の段階で、 packet ソケットに渡される。"
16358
16359 #. type: Plain text
16360 #: build/C/man7/packet.7:55
16361 msgid ""
16362 "Only processes with effective UID 0 or the B<CAP_NET_RAW> capability may "
16363 "open packet sockets."
16364 msgstr ""
16365 "packet ソケットをオープンできるのは、 実効ユーザーID が 0 のプロセスか、 "
16366 "B<CAP_NET_RAW> ケーパビリティを持つプロセスだけである。"
16367
16368 #. type: Plain text
16369 #: build/C/man7/packet.7:73
16370 msgid ""
16371 "B<SOCK_RAW> packets are passed to and from the device driver without any "
16372 "changes in the packet data.  When receiving a packet, the address is still "
16373 "parsed and passed in a standard I<sockaddr_ll> address structure.  When "
16374 "transmitting a packet, the user supplied buffer should contain the physical "
16375 "layer header.  That packet is then queued unmodified to the network driver "
16376 "of the interface defined by the destination address.  Some device drivers "
16377 "always add other headers.  B<SOCK_RAW> is similar to but not compatible with "
16378 "the obsolete B<AF_INET/SOCK_PACKET> of Linux 2.0."
16379 msgstr ""
16380 "B<SOCK_RAW> パケットでは、パケットをデバイスドライバと受け渡しする際、 パケッ"
16381 "トデータに変更が行われることはない。 パケットの受信時には、アドレスの解析だけ"
16382 "は行われ、 標準的な I<sockaddr_ll> アドレス構造体に渡される。パケットの送信時"
16383 "には、ユーザーが指定する バッファーに物理層のヘッダーが含まれている必要があ"
16384 "る。 パケットはそのまま修正を受けずに、行き先アドレスから決定される インター"
16385 "フェースのネットワークドライバにキューイングされる。 デバイスドライバによって"
16386 "は、他のヘッダーを常に追加するものもある。 B<SOCK_RAW> は Linux 2.0 の "
16387 "obosolete な B<AF_INET/SOCK_PACKET> と似ているが、互換性があるわけではない。"
16388
16389 #. type: Plain text
16390 #: build/C/man7/packet.7:83
16391 msgid ""
16392 "B<SOCK_DGRAM> operates on a slightly higher level.  The physical header is "
16393 "removed before the packet is passed to the user.  Packets sent through a "
16394 "B<SOCK_DGRAM> packet socket get a suitable physical layer header based on "
16395 "the information in the I<sockaddr_ll> destination address before they are "
16396 "queued."
16397 msgstr ""
16398 "B<SOCK_DGRAM> はやや高位のレベルで動作する。物理ヘッダーは、パケットがユー"
16399 "ザーに 渡される前に削除される。 B<SOCK_DGRAM> の packet ソケットを通して送ら"
16400 "れるパケットは、 I<sockaddr_ll> の行き先アドレスの情報に基づき、適切な物理層"
16401 "のヘッダーが付加されてから、 キューに送られる。"
16402
16403 #. type: Plain text
16404 #: build/C/man7/packet.7:96
16405 msgid ""
16406 "By default all packets of the specified protocol type are passed to a packet "
16407 "socket.  To get packets only from a specific interface use B<bind>(2)  "
16408 "specifying an address in a I<struct sockaddr_ll> to bind the packet socket "
16409 "to an interface.  Only the I<sll_protocol> and the I<sll_ifindex> address "
16410 "fields are used for purposes of binding."
16411 msgstr ""
16412 "デフォルトでは、指定したプロトコル型のパケットはすべて packet ソケットに送ら"
16413 "れる。特定のインターフェースからのパケットだけを 取得したい場合には、 "
16414 "I<struct sockaddr_ll> にアドレスを指定して B<bind>(2)  を呼び、 packet ソケッ"
16415 "トをそのインターフェースに結び付ける (バインドする)。 バインドの際には、アド"
16416 "レスフィールドのうち I<sll_protocol> と I<sll_ifindex> だけが用いられる。"
16417
16418 #. type: Plain text
16419 #: build/C/man7/packet.7:100
16420 msgid "The B<connect>(2)  operation is not supported on packet sockets."
16421 msgstr "B<connect>(2)  操作は packet ソケットではサポートされていない。"
16422
16423 #. type: Plain text
16424 #: build/C/man7/packet.7:109
16425 msgid ""
16426 "When the B<MSG_TRUNC> flag is passed to B<recvmsg>(2), B<recv>(2), "
16427 "B<recvfrom>(2)  the real length of the packet on the wire is always "
16428 "returned, even when it is longer than the buffer."
16429 msgstr ""
16430 "B<MSG_TRUNC> フラグが B<recvmsg>(2), B<recv>(2), B<recvfrom>(2)  に渡される"
16431 "と、 (バッファーサイズより大きかったとしても) 常に実際に通信された パケットの"
16432 "長さが返される。"
16433
16434 #. type: SS
16435 #: build/C/man7/packet.7:109
16436 #, no-wrap
16437 msgid "Address types"
16438 msgstr "アドレスのタイプ"
16439
16440 #. type: Plain text
16441 #: build/C/man7/packet.7:113
16442 msgid "The I<sockaddr_ll> is a device independent physical layer address."
16443 msgstr "I<sockaddr_ll> はデバイスに依存しない物理層のアドレスである。"
16444
16445 #. type: Plain text
16446 #: build/C/man7/packet.7:125
16447 #, no-wrap
16448 msgid ""
16449 "struct sockaddr_ll {\n"
16450 "    unsigned short sll_family;   /* Always AF_PACKET */\n"
16451 "    unsigned short sll_protocol; /* Physical layer protocol */\n"
16452 "    int            sll_ifindex;  /* Interface number */\n"
16453 "    unsigned short sll_hatype;   /* ARP hardware type */\n"
16454 "    unsigned char  sll_pkttype;  /* Packet type */\n"
16455 "    unsigned char  sll_halen;    /* Length of address */\n"
16456 "    unsigned char  sll_addr[8];  /* Physical layer address */\n"
16457 "};\n"
16458 msgstr ""
16459 "struct sockaddr_ll {\n"
16460 "    unsigned short sll_family;   /* 常に AF_PACKET */\n"
16461 "    unsigned short sll_protocol; /* 物理層のプロトコル */\n"
16462 "    int            sll_ifindex;  /* インターフェース番号 */\n"
16463 "    unsigned short sll_hatype;   /* ARP ハードウェア種別 */\n"
16464 "    unsigned char  sll_pkttype;  /* パケット種別 */\n"
16465 "    unsigned char  sll_halen;    /* アドレスの長さ */\n"
16466 "    unsigned char  sll_addr[8];  /* 物理層のアドレス */\n"
16467 "};\n"
16468
16469 #. type: Plain text
16470 #: build/C/man7/packet.7:164
16471 msgid ""
16472 "I<sll_protocol> is the standard ethernet protocol type in network byte order "
16473 "as defined in the I<E<lt>linux/if_ether.hE<gt>> include file.  It defaults "
16474 "to the socket's protocol.  I<sll_ifindex> is the interface index of the "
16475 "interface (see B<netdevice>(7)); 0 matches any interface (only permitted for "
16476 "binding).  I<sll_hatype> is an ARP type as defined in the I<E<lt>linux/"
16477 "if_arp.hE<gt>> include file.  I<sll_pkttype> contains the packet type.  "
16478 "Valid types are B<PACKET_HOST> for a packet addressed to the local host, "
16479 "B<PACKET_BROADCAST> for a physical layer broadcast packet, "
16480 "B<PACKET_MULTICAST> for a packet sent to a physical layer multicast address, "
16481 "B<PACKET_OTHERHOST> for a packet to some other host that has been caught by "
16482 "a device driver in promiscuous mode, and B<PACKET_OUTGOING> for a packet "
16483 "originated from the local host that is looped back to a packet socket.  "
16484 "These types make sense only for receiving.  I<sll_addr> and I<sll_halen> "
16485 "contain the physical layer (e.g., IEEE 802.3) address and its length.  The "
16486 "exact interpretation depends on the device."
16487 msgstr ""
16488 "I<sll_protocol> は標準的なイーサネットプロトコルのタイプで、 ネットワーク\n"
16489 "バイトオーダーで記述する。 インクルードファイル\n"
16490 "I<E<lt>linux/if_ether.hE<gt>> で定義されている。 これがこのソケットのプロト\n"
16491 "コルのデフォルトとなる。 I<sll_ifindex> はそのインターフェースの interface\n"
16492 "index である (B<netdevice>(7) を参照)。 0 は (バインドが許可されている) 任\n"
16493 "意のインターフェースにマッチする。 I<sll_hatype> は、インクルードファイル\n"
16494 "I<E<lt>linux/if_arp.hE<gt>> で定義されている ARP 種別である。\n"
16495 "I<sll_pkttype> はパケット種別である。指定できる種別は以下のいずれかである:\n"
16496 "B<PACKET_HOST> (ローカルホスト向けのパケット)、 B<PACKET_BORADCAST> (物理層\n"
16497 "のブロードキャストパケット)、 B<PACKET_MULTICAST> (物理層のマルチキャストア\n"
16498 "ドレスに送るパケット)、 B<PACKET_OTHERHOST> (他のホストに向けられたパケット\n"
16499 "のうち、 無差別モード (promiscuous mode: 後述) のデバイスドライバにより補足\n"
16500 "されたもの)、 B<PACKET_OUTGOING> (ローカルホストから発信され、 packet ソ"
16501 "ケッ\n"
16502 "トにループバックしてきたパケット)。 これらの種別が意味を持つのは受信時のみ\n"
16503 "である。 I<sll_addr> と I<sll_halen> は、物理層の (つまり IEEE 802.3 の) \n"
16504 "アドレスとその長さである。 厳密な解釈はデバイスに依存する。"
16505
16506 #. type: Plain text
16507 #: build/C/man7/packet.7:180
16508 msgid ""
16509 "When you send packets it is enough to specify I<sll_family>, I<sll_addr>, "
16510 "I<sll_halen>, I<sll_ifindex>.  The other fields should be 0.  I<sll_hatype> "
16511 "and I<sll_pkttype> are set on received packets for your information.  For "
16512 "bind only I<sll_protocol> and I<sll_ifindex> are used."
16513 msgstr ""
16514 "パケットを送る場合は、 I<sll_family>, I<sll_addr>, I<sll_halen>, "
16515 "I<sll_ifindex> を指定すれば十分である。 その他のフィールドは 0 にしておくべき"
16516 "である。 I<sll_hatype> と I<sll_pkttype> には受信したパケットの情報が設定され"
16517 "る。 バインドの際には、 I<sll_protocol> と I<sll_ifindex> だけが使用される。"
16518
16519 #. type: Plain text
16520 #: build/C/man7/packet.7:185
16521 msgid ""
16522 "Packet socket options are configured by calling B<setsockopt>(2)  with level "
16523 "B<SOL_PACKET>."
16524 msgstr ""
16525 "パケットソケットのオプションは、レベル B<SOL_PACKET> を指定して "
16526 "B<setsockopt>(2) を呼び出すことで設定できる。"
16527
16528 #. type: TP
16529 #: build/C/man7/packet.7:185
16530 #, no-wrap
16531 msgid "B<PACKET_ADD_MEMBERSHIP>"
16532 msgstr "B<PACKET_ADD_MEMBERSHIP>"
16533
16534 #. type: TP
16535 #: build/C/man7/packet.7:188
16536 #, no-wrap
16537 msgid "B<PACKET_DROP_MEMBERSHIP>"
16538 msgstr "B<PACKET_DROP_MEMBERSHIP>"
16539
16540 #. type: Plain text
16541 #: build/C/man7/packet.7:200
16542 msgid ""
16543 "Packet sockets can be used to configure physical layer multicasting and "
16544 "promiscuous mode.  B<PACKET_ADD_MEMBERSHIP> adds a binding and "
16545 "B<PACKET_DROP_MEMBERSHIP> drops it.  They both expect a I<packet_mreq> "
16546 "structure as argument:"
16547 msgstr ""
16548 "packet ソケットは、物理層のマルチキャストや 無差別モード (promiscuous mode) "
16549 "を設定して使うことができる。 B<PACKET_ADD_MEMBERSHIP> はバインドを追加し、 "
16550 "B<PACKET_DROP_MEMBERSHIP> はバインドを削除する。これらはいずれも "
16551 "I<packet_mreq> 構造体を引き数に取る。"
16552
16553 #. type: Plain text
16554 #: build/C/man7/packet.7:209
16555 #, no-wrap
16556 msgid ""
16557 "struct packet_mreq {\n"
16558 "    int            mr_ifindex;    /* interface index */\n"
16559 "    unsigned short mr_type;       /* action */\n"
16560 "    unsigned short mr_alen;       /* address length */\n"
16561 "    unsigned char  mr_address[8]; /* physical layer address */\n"
16562 "};\n"
16563 msgstr ""
16564 "struct packet_mreq {\n"
16565 "    int            mr_ifindex;    /* インターフェース番号 */\n"
16566 "    unsigned short mr_type;       /* 動作 */\n"
16567 "    unsigned short mr_alen;       /* アドレスの長さ */\n"
16568 "    unsigned char  mr_address[8]; /* 物理層のアドレス */\n"
16569 "};\n"
16570
16571 #. type: Plain text
16572 #: build/C/man7/packet.7:230
16573 msgid ""
16574 "B<mr_ifindex> contains the interface index for the interface whose status "
16575 "should be changed.  The B<mr_type> parameter specifies which action to "
16576 "perform.  B<PACKET_MR_PROMISC> enables receiving all packets on a shared "
16577 "medium (often known as \"promiscuous mode\"), B<PACKET_MR_MULTICAST> binds "
16578 "the socket to the physical layer multicast group specified in B<mr_address> "
16579 "and B<mr_alen>, and B<PACKET_MR_ALLMULTI> sets the socket up to receive all "
16580 "multicast packets arriving at the interface."
16581 msgstr ""
16582 "I<mr_ifindex> は、ステータスを変更したいインターフェースの インターフェース番"
16583 "号である。 I<mr_type> パラメーターは実行する動作を指定する: "
16584 "B<PACKET_MR_PROMISC> は、共有している媒体からの全てのパケットを受信できるよう"
16585 "にする (しばしば \"無差別モード (promiscuous mode)\" と呼ばれる)。 "
16586 "B<PACKET_MR_MULTICAST> は、そのソケットを、 I<mr_address> と I<mr_alen> で指"
16587 "定される物理層のマルチキャストブループにバインドする。 B<PACKET_MR_ALLMULTI> "
16588 "は socket を up にして、そのインターフェースに到達したすべての マルチキャスト"
16589 "パケットを受信できるようにする。"
16590
16591 #. type: Plain text
16592 #: build/C/man7/packet.7:236
16593 msgid ""
16594 "In addition, the traditional ioctls B<SIOCSIFFLAGS>, B<SIOCADDMULTI>, "
16595 "B<SIOCDELMULTI> can be used for the same purpose."
16596 msgstr ""
16597 "昔からある ioctl だけでなく、 B<SIOCSIFFLAGS>, B<SIOCADDMULTI>, "
16598 "B<SIOCDELMULTI> を同じ目的に用いることができる。"
16599
16600 #. type: TP
16601 #: build/C/man7/packet.7:236
16602 #, no-wrap
16603 msgid "B<PACKET_AUXDATA> (since Linux 2.6.21)"
16604 msgstr "B<PACKET_AUXDATA> (Linux 2.6.21 以降)"
16605
16606 #.  commit 8dc4194474159660d7f37c495e3fc3f10d0db8cc
16607 #. type: Plain text
16608 #: build/C/man7/packet.7:246
16609 msgid ""
16610 "If this binary option is enabled, the packet socket passes a metadata "
16611 "structure along with each packet in the B<recvmsg>(2)  control field.  The "
16612 "structure can be read with B<cmsg>(3).  It is defined as"
16613 msgstr ""
16614 "ブール値のオプションを有効すると、 パケットソケットは、パケットと一緒にメタ"
16615 "データ構造体を B<recvmsg>(2) コントロールフィールドで渡す。 この構造体は "
16616 "B<cmsg>(3) を使って読むことができる。 定義は以下の通りである。"
16617
16618 #. type: Plain text
16619 #: build/C/man7/packet.7:258
16620 #, no-wrap
16621 msgid ""
16622 "struct tpacket_auxdata {\n"
16623 "    __u32 tp_status;\n"
16624 "    __u32 tp_len;      /* packet length */\n"
16625 "    __u32 tp_snaplen;  /* captured length */\n"
16626 "    __u16 tp_mac;\n"
16627 "    __u16 tp_net;\n"
16628 "    __u16 tp_vlan_tci;\n"
16629 "    __u16 tp_padding;\n"
16630 "};\n"
16631 msgstr ""
16632 "struct tpacket_auxdata {\n"
16633 "    __u32 tp_status;\n"
16634 "    __u32 tp_len;      /* パケット長 */\n"
16635 "    __u32 tp_snaplen;  /* キャプチャした長さ */\n"
16636 "    __u16 tp_mac;\n"
16637 "    __u16 tp_net;\n"
16638 "    __u16 tp_vlan_tci;\n"
16639 "    __u16 tp_padding;\n"
16640 "};\n"
16641
16642 #. type: TP
16643 #: build/C/man7/packet.7:260
16644 #, no-wrap
16645 msgid "B<PACKET_FANOUT> (since Linux 3.1)"
16646 msgstr "B<PACKET_FANOUT> (Linux 3.1 以降)"
16647
16648 #.  commit dc99f600698dcac69b8f56dda9a8a00d645c5ffc
16649 #. type: Plain text
16650 #: build/C/man7/packet.7:282
16651 msgid ""
16652 "To scale processing across threads, packet sockets can form a fanout group.  "
16653 "In this mode, each matching packet is enqueued onto only one socket in the "
16654 "group.  A socket joins a fanout group by calling B<setsockopt>(2)  with "
16655 "level B<SOL_PACKET> and option B<PACKET_FANOUT>.  Each network namespace can "
16656 "have up to 65536 independent groups.  A socket selects a group by encoding "
16657 "the ID in the first 16 bits of the integer option value.  The first packet "
16658 "socket to join a group implicitly creates it.  To successfully join an "
16659 "existing group, subsequent packet sockets must have the same protocol, "
16660 "device settings, fanout mode and flags (see below).  Packet sockets can "
16661 "leave a fanout group only by closing the socket.  The group is deleted when "
16662 "the last socket is closed."
16663 msgstr ""
16664 "スレッドにまたがって処理をスケールさせるため、 パケットソケットはファンアウト"
16665 "グループを構成することができる。 このモードでは、 マッチしたそれぞれのパケッ"
16666 "トはグループ内のいずれか一つのソケットにだけキューイングされる。 ソケットを"
16667 "ファンアウトグループに参加させるには、 レベル B<SOL_PACKET> でオプション "
16668 "B<PACKET_FANOUT> を指定して B<setsockopt>(2) を呼び出す。 ネットワーク名前空"
16669 "間毎に最大 65536 個の独立したグループを持つことができる。 整数のオプション値"
16670 "の先頭 16 ビットに ID をエンコードすることで、 ソケットはグループを選択す"
16671 "る。 あるグループへの最初のパケットソケットの参加があった時点で、 グループは"
16672 "暗黙のうちに作成される。 既存のグループへの参加が成功するためには、 それ以降"
16673 "にそのグループに参加しようとするパケットソケットは、 プロトコロ、 デバイス設"
16674 "定、ファンアウトモード、フラグが同じである必要がある (下記参照)。 パケットソ"
16675 "ケットがファンアウトグループから抜けるのは、 そのソケットをクローズした場合だ"
16676 "けである。 ファンアウトグループは最後のソケットがクローズした場合に削除され"
16677 "る。"
16678
16679 #.  commit 2d36097d26b5991d71a2cf4a20c1a158f0f1bfcd
16680 #. type: Plain text
16681 #: build/C/man7/packet.7:305
16682 msgid ""
16683 "Fanout supports multiple algorithms to spread traffic between sockets.  The "
16684 "default mode, B<PACKET_FANOUT_HASH>, sends packets from the same flow to the "
16685 "same socket to maintain per-flow ordering.  For each packet, it chooses a "
16686 "socket by taking the packet flow hash modulo the number of sockets in the "
16687 "group, where a flow hash is a hash over network-layer address and optional "
16688 "transport-layer port fields.  The load-balance mode B<PACKET_FANOUT_LB> "
16689 "implements a round-robin algorithm.  B<PACKET_FANOUT_CPU> selects the socket "
16690 "based on the CPU that the packet arrived on.  B<PACKET_FANOUT_ROLLOVER> "
16691 "processes all data on a single socket, moves to the next when one becomes "
16692 "backlogged.  B<PACKET_FANOUT_RND> selects the socket using a pseudo-random "
16693 "number generator.  B<PACKET_FANOUT_QM> (available since Linux 3.14)  selects "
16694 "the socket using the recorded queue_mapping of the received skb."
16695 msgstr ""
16696 "ファンアウトでは、 複数のソケットにトラフィックを分散させるアルゴリズムを複数"
16697 "サポートしている。 デフォルトのモードである B<PACKET_FANOUT_HASH> では、同じ"
16698 "フローのパケットは同じソケットに送信され、 フロー単位の順序が維持される。 パ"
16699 "ケットごとに、パケットフローのハッシュの、そのグループのソケット数に対する剰"
16700 "余が計算され、ソケットが選択される。 なお、フローハッシュはネットワーク層のア"
16701 "ドレスとトランスポート層のポートフィールドに対するハッシュである (トランス"
16702 "ポート層ポートは存在する場合のみ)。 負荷分散モード B<PACKET_FANOUT_LB> はラウ"
16703 "ンドロビンアルゴリズムが採用されている。 B<PACKET_FANOUT_CPU> では、 パケット"
16704 "が到着した CPU に基づいてソケットを選択する。 B<PACKET_FANOUT_ROLLOVER> はす"
16705 "べてのデータを一つのソケットで処理し、 そのソケットで処理待ち (backlog) が発"
16706 "生した場合に次のソケットに移る。 B<PACKET_FANOUT_RND> では擬似乱数発生器を"
16707 "使ってソケットが選択される。 B<PACKET_FANOUT_QM> (Linux 3.14 以降で利用可能) "
16708 "では受信 skb に記録された queue_mapping を使ってソケットが選択される。"
16709
16710 #. type: Plain text
16711 #: build/C/man7/packet.7:320
16712 msgid ""
16713 "Fanout modes can take additional options.  IP fragmentation causes packets "
16714 "from the same flow to have different flow hashes.  The flag "
16715 "B<PACKET_FANOUT_FLAG_DEFRAG>, if set, causes packet to be defragmented "
16716 "before fanout is applied, to preserve order even in this case.  Fanout mode "
16717 "and options are communicated in the second 16 bits of the integer option "
16718 "value.  The flag B<PACKET_FANOUT_FLAG_ROLLOVER> enables the roll over "
16719 "mechanism as a backup strategy: if the original fanout algorithm selects a "
16720 "backlogged socket, the packet rolls over to the next available one."
16721 msgstr ""
16722 "ファンアウトモードでは追加のオプションがある。 IP フラグメンテーションが起こ"
16723 "ると、 同じフローのパケットのフローハッシュが異なるハッシュを持つことにな"
16724 "る。 フラグ B<PACKET_FANOUT_FLAG_DEFRAG> をセットすると、 パケットはファンア"
16725 "ウトを行う前にフラグメント再構築が行われるようになり、 フラグメントがあった場"
16726 "合でも順序が維持される。 ファンアウトモードとオプションは、 整数のオプション"
16727 "値の下位 16 ビットで指定される。 フラグ B<PACKET_FANOUT_FLAG_ROLLOVER> を指定"
16728 "すると、 バックアップ戦略としてロールオーバー方式が有効になる。 元のファンア"
16729 "ウトアルゴリズムが backlog ソケットを選択していれば、 パケットは次の利用可能"
16730 "なソケットにロールオーバーされる。"
16731
16732 #. type: TP
16733 #: build/C/man7/packet.7:320
16734 #, no-wrap
16735 msgid "B<PACKET_LOSS> (with B<PACKET_TX_RING>)"
16736 msgstr "B<PACKET_LOSS> (B<PACKET_TX_RING> で使用)"
16737
16738 #. type: Plain text
16739 #: build/C/man7/packet.7:343
16740 msgid ""
16741 "When a malformed packet is encountered on a transmit ring, the default is to "
16742 "reset its I<tp_status> to B<TP_STATUS_WRONG_FORMAT> and abort the "
16743 "transmission immediately.  The malformed packet blocks itself and "
16744 "subsequently enqueued packets from being sent.  The format error must be "
16745 "fixed, the associated I<tp_status> reset to B<TP_STATUS_SEND_REQUEST>, and "
16746 "the transmission process restarted via B<send>(2).  However, if "
16747 "B<PACKET_LOSS> is set, any malformed packet will be skipped, its "
16748 "I<tp_status> reset to B<TP_STATUS_AVAILABLE>, and the transmission process "
16749 "continued."
16750 msgstr ""
16751 "送信リングで不正な形式のパケットに遭遇した場合、 デフォルトではそのリングの "
16752 "I<tp_status> を B<TP_STATUS_WRONG_FORMAT> に戻し、その送信を直ちに中止する。 "
16753 "不正な形式のパケットにより、そのパケット自身とその以降にキューに入れられたパ"
16754 "ケットの送信がブロックされる。形式エラーを修正し、関連する I<tp_status> を "
16755 "B<TP_STATUS_SEND_REQUEST> に設定し直し、B<send>(2) を使って送信処理を再開しな"
16756 "ければならない。 しかしながら、 B<PACKET_LOSS> がセットされている場合、 不正"
16757 "な形式のパケットはすべてスキップされ、 その送信リングの I<tp_status> は "
16758 "B<TP_STATUS_AVAILABLE> に設定し直され、送信処理は継続される。"
16759
16760 #. type: TP
16761 #: build/C/man7/packet.7:343
16762 #, no-wrap
16763 msgid "B<PACKET_RESERVE> (with B<PACKET_RX_RING>)"
16764 msgstr "B<PACKET_RESERVE> (B<PACKET_RX_RING> で使用)"
16765
16766 #. type: Plain text
16767 #: build/C/man7/packet.7:348
16768 msgid ""
16769 "By default, a packet receive ring writes packets immediately following the "
16770 "metadata structure and alignment padding.  This integer option reserves "
16771 "additional headroom."
16772 msgstr ""
16773 "デフォルトでは、パケット受信リングはメタデータ構造体とアライメント用のパディ"
16774 "ングの直後にパケットを書き込む。 この整数オプションを設定すると、パケットの前"
16775 "に追加で領域が予約される。"
16776
16777 #. type: TP
16778 #: build/C/man7/packet.7:348
16779 #, no-wrap
16780 msgid "B<PACKET_RX_RING>"
16781 msgstr "B<PACKET_RX_RING>"
16782
16783 #. type: Plain text
16784 #: build/C/man7/packet.7:394
16785 msgid ""
16786 "Create a memory-mapped ring buffer for asynchronous packet reception.  The "
16787 "packet socket reserves a contiguous region of application address space, "
16788 "lays it out into an array of packet slots and copies packets (up to "
16789 "I<tp_snaplen>)  into subsequent slots.  Each packet is preceded by a "
16790 "metadata structure similar to I<tpacket_auxdata>.  The protocol fields "
16791 "encode the offset to the data from the start of the metadata header.  "
16792 "I<tp_net> stores the offset to the network layer.  If the packet socket is "
16793 "of type B<SOCK_DGRAM>, then I<tp_mac> is the same.  If it is of type "
16794 "B<SOCK_RAW>, then that field stores the offset to the link-layer frame.  "
16795 "Packet socket and application communicate the head and tail of the ring "
16796 "through the I<tp_status> field.  The packet socket owns all slots with "
16797 "I<tp_status> equal to B<TP_STATUS_KERNEL>.  After filling a slot, it changes "
16798 "the status of the slot to transfer ownership to the application.  During "
16799 "normal operation, the new I<tp_status> value has at least the "
16800 "B<TP_STATUS_USER> bit set to signal that a received packet has been stored.  "
16801 "When the application has finished processing a packet, it transfers "
16802 "ownership of the slot back to the socket by setting I<tp_status> equal to "
16803 "B<TP_STATUS_KERNEL>.  Packet sockets implement multiple variants of the "
16804 "packet ring.  The implementation details are described in I<Documentation/"
16805 "networking/packet_mmap.txt> in the Linux kernel source tree."
16806 msgstr ""
16807 "非同期でのパケット受信用のメモリーマップされたリングバッファーを作成する。 パ"
16808 "ケットソケットはアプリケーションのアドレス空間に連続する領域を確保し、 そこに"
16809 "パケットスロットの配列を構成し、 (最大 I<tp_snaplen> 個の) パケットを順にス"
16810 "ロットにコピーする。 各パケットの前には I<tpacket_auxdata> に似たメタデータ構"
16811 "造体が置かれる。 プロトコルフィールドには、データの、メタデータヘッダーの先頭"
16812 "からのオフセットが入る。 I<tp_net> にはネットワーク層へのオフセットが格納され"
16813 "る。 パケットソケットが B<SOCK_DGRAM> 型の場合、 I<tp_mac> も同じである。 "
16814 "B<SOCK_RAW> 型の場合、 I<tp_net> にはリンク層のフレームへのオフセットが入"
16815 "る。 パケットソケットとアプリケーションは I<tp_status> フィールドを通してリン"
16816 "グの先頭 (head) と末尾 (tail) の情報を受け渡す。 パケットソケットは "
16817 "I<tp_status> が B<TP_STATUS_KERNEL> のすべてのスロットを所有しており、 スロッ"
16818 "トにデータが入ると、 パケットソケットはそのスロットのステータスをアプリケー"
16819 "ションに所有権を渡す状態に変更する。 通常の動作では、 新しい I<tp_status> で"
16820 "少なくとも B<TP_STATUS_USER> ビットがセットされていれば、 受信されたパケット"
16821 "が格納されたことを示している。 アプリケーションがパケットの処理を終えると、ア"
16822 "プリケーションはそのスロットの B<tp_status> を B<TP_STATUS_KERNEL> に設定し、"
16823 "そのスロットの所有権をソケットに返す。 パケットソケットは、複数バージョンのパ"
16824 "ケットリングを実装している。 実装の詳細は Linux カーネルソースツリーの "
16825 "I<Documentation/networking/packet_mmap.txt> で説明されている。"
16826
16827 #. type: TP
16828 #: build/C/man7/packet.7:394
16829 #, no-wrap
16830 msgid "B<PACKET_STATISTICS>"
16831 msgstr "B<PACKET_STATISTICS>"
16832
16833 #. type: Plain text
16834 #: build/C/man7/packet.7:397
16835 msgid "Retrieve packet socket statistics in the form of a structure"
16836 msgstr "パケットソケットの統計情報を次の構造体形式で取得する。"
16837
16838 #. type: Plain text
16839 #: build/C/man7/packet.7:404
16840 #, no-wrap
16841 msgid ""
16842 "struct tpacket_stats {\n"
16843 "    unsigned int tp_packets;  /* Total packet count */\n"
16844 "    unsigned int tp_drops;    /* Dropped packet count */\n"
16845 "};\n"
16846 msgstr ""
16847 "struct tpacket_stats {\n"
16848 "    unsigned int tp_packets;  /* 総パケット数 */\n"
16849 "    unsigned int tp_drops;    /* ドロップパケット数 */\n"
16850 "};\n"
16851
16852 #. type: Plain text
16853 #: build/C/man7/packet.7:410
16854 msgid ""
16855 "Receiving statistics resets the internal counters.  The statistics structure "
16856 "differs when using a ring of variant B<TPACKET_V3>."
16857 msgstr ""
16858 "統計情報を取得すると、内部カウンターはリセットされる。 B<TPACKET_V3> のリング"
16859 "を使う場合には、統計情報構造体は違うものになる。"
16860
16861 #. type: TP
16862 #: build/C/man7/packet.7:410
16863 #, no-wrap
16864 msgid "B<PACKET_TIMESTAMP> (with B<PACKET_RX_RING>; since Linux 2.6.36)"
16865 msgstr "B<PACKET_TIMESTAMP> (B<PACKET_RX_RING> で使用; Linux 2.6.36 以降)"
16866
16867 #.  commit 614f60fa9d73a9e8fdff3df83381907fea7c5649
16868 #. type: Plain text
16869 #: build/C/man7/packet.7:420
16870 msgid ""
16871 "The packet receive ring always stores a timestamp in the metadata header.  "
16872 "By default, this is a software generated timestamp generated when the packet "
16873 "is copied into the ring.  This integer option selects the type of "
16874 "timestamp.  Besides the default, it support the two hardware formats "
16875 "described in I<Documentation/networking/timestamping.txt> in the Linux "
16876 "kernel source tree."
16877 msgstr ""
16878 "パケット受信リングでは常にタイムスタンプがメタデータヘッダーに格納される。 デ"
16879 "フォルトでは、タイムスタンプはパケットがリングにコピーされた時点で生成される"
16880 "ソフトウェアによるタイムスタンプである。 この整数オプションによりタイムスタン"
16881 "プの種類を選択できる。 デフォルト以外では、 Linux カーネルソースツリーの "
16882 "I<Documentation/networking/timestamping.txt> に説明がある 2 種類のハードウェ"
16883 "アフォーマットがサポートされている。"
16884
16885 #. type: TP
16886 #: build/C/man7/packet.7:420
16887 #, no-wrap
16888 msgid "B<PACKET_TX_RING> (since Linux 2.6.31)"
16889 msgstr "B<PACKET_TX_RING> (Linux 2.6.31 以降)"
16890
16891 #.  commit 69e3c75f4d541a6eb151b3ef91f34033cb3ad6e1
16892 #. type: Plain text
16893 #: build/C/man7/packet.7:455
16894 msgid ""
16895 "Create a memory-mapped ring buffer for packet transmission.  This option is "
16896 "similar to B<PACKET_RX_RING> and takes the same arguments.  The application "
16897 "writes packets into slots with I<tp_status> equal to B<TP_STATUS_AVAILABLE> "
16898 "and schedules them for transmission by changing I<tp_status> to "
16899 "B<TP_STATUS_SEND_REQUEST>.  When packets are ready to be transmitted, the "
16900 "application calls B<send>(2)  or a variant thereof.  The I<buf> and I<len> "
16901 "fields of this call are ignored.  If an address is passed using "
16902 "B<sendto>(2)  or B<sendmsg>(2), then that overrides the socket default.  On "
16903 "successful transmission, the socket resets I<tp_status> to "
16904 "B<TP_STATUS_AVAILABLE>.  It immediately aborts the transmission on error "
16905 "unless B<PACKET_LOSS> is set."
16906 msgstr ""
16907 "パケット送信用のメモリーマップされたリングバッファーを作成する。 このオプショ"
16908 "ンは B<PACKET_RX_RING> と同様で、同じ引き数を取る。 アプリケーションは "
16909 "I<tp_status> が B<TP_STATUS_AVAILABLE> のスロットにパケットを書き込み、 "
16910 "I<tp_status> を B<TP_STATUS_SEND_REQUEST> に変更することでそのパケットの送信"
16911 "を予約する。 パケットの送信準備ができたら、アプリケーションは続けて "
16912 "B<send>(2) 系のシステムコールを呼び出す。 システムコールの引き数 I<buf> と "
16913 "I<len> は無視される。 B<sendto>(2) や B<sendmsg>(2) を使ってアドレスが渡され"
16914 "た場合、 ソケットのデフォルト値ではなくそのアドレスが使用される。 送信に成功"
16915 "すると、ソケットはそのスロットの I<tp_status> を B<TP_STATUS_AVAILABLE> に戻"
16916 "す。 エラーの場合、 B<PACKET_LOSS> がセットされていなければ、 直ちに送信を中"
16917 "断しエラーを上げる。"
16918
16919 #. type: TP
16920 #: build/C/man7/packet.7:455
16921 #, no-wrap
16922 msgid "B<PACKET_VERSION> (with B<PACKET_RX_RING>; since Linux 2.6.27)"
16923 msgstr "B<PACKET_VERSION> (B<PACKET_RX_RING> で使用; Linux 2.6.27 以降)"
16924
16925 #.  commit bbd6ef87c544d88c30e4b762b1b61ef267a7d279
16926 #. type: Plain text
16927 #: build/C/man7/packet.7:464
16928 msgid ""
16929 "By default, B<PACKET_RX_RING> creates a packet receive ring of variant "
16930 "B<TPACKET_V1>.  To create another variant, configure the desired variant by "
16931 "setting this integer option before creating the ring."
16932 msgstr ""
16933 "デフォルトでは、 B<PACKET_RX_RING> は B<TPACKET_V1> のパケット受信リングを作"
16934 "成する。別のバージョンのリングを作成するには、そのリングを作成する前に希望す"
16935 "るバージョンが使われるようにこの整数オプションを設定すること。"
16936
16937 #. type: TP
16938 #: build/C/man7/packet.7:464
16939 #, no-wrap
16940 msgid "B<PACKET_QDISC_BYPASS> (since Linux 3.14)"
16941 msgstr "B<PACKET_QDISC_BYPASS> (Linux 3.14 以降)"
16942
16943 #.  commit d346a3fae3ff1d99f5d0c819bf86edf9094a26a1
16944 #. type: Plain text
16945 #: build/C/man7/packet.7:479
16946 msgid ""
16947 "By default, packets sent through packet sockets pass through the kernel's "
16948 "qdisc (traffic control) layer, which is fine for the vast majority of use "
16949 "cases.  For traffic generator appliances using packet sockets that intend to "
16950 "brute-force flood the network\\(emfor example, to test devices under load in "
16951 "a similar fashion to pktgen\\(emthis layer can be bypassed by setting this "
16952 "integer option to 1.  A side effect is that packet buffering in the qdisc "
16953 "layer is avoided, which will lead to increased drops when network device "
16954 "transmit queues are busy; therefore, use at your own risk."
16955 msgstr ""
16956 "デフォルトでは、パケットはカーネルの qdisc (トラフィック制御) レイヤー経由で"
16957 "渡される。 これは大半のユースケースに合っている。 ネットワークに対して可能な"
16958 "限りパケットを送信する (例えば pkggen と同様の方法で負荷対象のデバイスを試験"
16959 "する) のにパケットソケットを使うトラフィック生成アプライアンスでは、この整数"
16960 "オプションを 1 に設定することで qdisc レイヤーを飛ばすことができる。 qdisc レ"
16961 "イヤーでのパケットバッファーが行われなくなるという副作用がある。 これによ"
16962 "り、 ネットワークデバイスの送信キューの使用量が高い場合にパケット廃棄が起きや"
16963 "すくなる。"
16964
16965 #.  FIXME Document SIOCGSTAMPNS
16966 #. type: Plain text
16967 #: build/C/man7/packet.7:486
16968 msgid ""
16969 "B<SIOCGSTAMP> can be used to receive the timestamp of the last received "
16970 "packet.  Argument is a I<struct timeval> variable."
16971 msgstr ""
16972 "B<SIOCGSTAMP> を用いると、最後に受信したパケットのタイムスタンプを得ることが"
16973 "できる。 引き数は I<struct timeval> 型の変数である。"
16974
16975 #. type: Plain text
16976 #: build/C/man7/packet.7:492
16977 msgid ""
16978 "In addition, all standard ioctls defined in B<netdevice>(7)  and "
16979 "B<socket>(7)  are valid on packet sockets."
16980 msgstr ""
16981 "さらに、 B<netdevice>(7)  および B<socket>(7)  で定義されている標準の ioctl "
16982 "はいずれも packet ソケットに指定可能である。"
16983
16984 #. type: SS
16985 #: build/C/man7/packet.7:492 build/C/man7/raw.7:131 build/C/man7/tcp.7:1210
16986 #: build/C/man7/udp.7:103
16987 #, no-wrap
16988 msgid "Error handling"
16989 msgstr "エラー処理"
16990
16991 #. type: Plain text
16992 #: build/C/man7/packet.7:496
16993 msgid ""
16994 "Packet sockets do no error handling other than errors occurred while passing "
16995 "the packet to the device driver.  They don't have the concept of a pending "
16996 "error."
16997 msgstr ""
16998 "packet ソケットは、パケットをデバイスドライバに渡すときに 起きたエラーしか処"
16999 "理しない。遅延エラー (pending error)  に関する概念は持っていない。"
17000
17001 #. type: Plain text
17002 #: build/C/man7/packet.7:500
17003 msgid "Unknown multicast group address passed."
17004 msgstr "不明なマルチキャストグループアドレスが渡された。"
17005
17006 #. type: Plain text
17007 #: build/C/man7/packet.7:503
17008 msgid "User passed invalid memory address."
17009 msgstr "ユーザーが渡したメモリーアドレスが不正。"
17010
17011 #. type: Plain text
17012 #: build/C/man7/packet.7:506 build/C/man7/raw.7:155
17013 msgid "Invalid argument."
17014 msgstr "引き数が不正。"
17015
17016 #. type: Plain text
17017 #: build/C/man7/packet.7:509
17018 msgid "Packet is bigger than interface MTU."
17019 msgstr "パケットがインターフェースの MTU より大きい。"
17020
17021 #. type: TP
17022 #: build/C/man7/packet.7:509
17023 #, no-wrap
17024 msgid "B<ENETDOWN>"
17025 msgstr "B<ENETDOWN>"
17026
17027 #. type: Plain text
17028 #: build/C/man7/packet.7:512
17029 msgid "Interface is not up."
17030 msgstr "インターフェースが up でない。"
17031
17032 #. type: Plain text
17033 #: build/C/man7/packet.7:515
17034 msgid "Not enough memory to allocate the packet."
17035 msgstr "パケットに割り当てるメモリーが足りない。"
17036
17037 #. type: Plain text
17038 #: build/C/man7/packet.7:518
17039 msgid "Unknown device name or interface index specified in interface address."
17040 msgstr ""
17041 "デバイス名が不明。あるいはインターフェースアドレスで指定された インターフェー"
17042 "スインデックスが不明。"
17043
17044 #. type: Plain text
17045 #: build/C/man7/packet.7:521
17046 msgid "No packet received."
17047 msgstr "パケットを一つも受信していない。"
17048
17049 #. type: Plain text
17050 #: build/C/man7/packet.7:524
17051 msgid "No interface address passed."
17052 msgstr "インターフェースアドレスが渡されなかった。"
17053
17054 #. type: TP
17055 #: build/C/man7/packet.7:524
17056 #, no-wrap
17057 msgid "B<ENXIO>"
17058 msgstr "B<ENXIO>"
17059
17060 #. type: Plain text
17061 #: build/C/man7/packet.7:527
17062 msgid "Interface address contained an invalid interface index."
17063 msgstr ""
17064 "インターフェースアドレスに不正なインターフェースインデックスが含まれている。"
17065
17066 #. type: Plain text
17067 #: build/C/man7/packet.7:530
17068 msgid "User has insufficient privileges to carry out this operation."
17069 msgstr "この操作を行うのに必要な権限をユーザーが持っていない。"
17070
17071 #. type: Plain text
17072 #: build/C/man7/packet.7:532
17073 msgid "In addition, other errors may be generated by the low-level driver."
17074 msgstr "上記以外のエラーが、低レベルのドライバで生成されることがある。"
17075
17076 #. type: Plain text
17077 #: build/C/man7/packet.7:537
17078 msgid ""
17079 "B<AF_PACKET> is a new feature in Linux 2.2.  Earlier Linux versions "
17080 "supported only B<SOCK_PACKET>."
17081 msgstr ""
17082 "B<AF_PACKET> は Linux 2.2 の新機能である。これより古いバージョンの Linux で"
17083 "は B<SOCK_PACKET> のみをサポートしていた。"
17084
17085 #. type: Plain text
17086 #: build/C/man7/packet.7:546
17087 msgid ""
17088 "For portable programs it is suggested to use B<AF_PACKET> via B<pcap>(3); "
17089 "although this covers only a subset of the B<AF_PACKET> features."
17090 msgstr ""
17091 "移植性の必要なプログラムでは、 B<pcap>(3)  経由で B<AF_PACKET> を用いることを"
17092 "お薦めする。ただし、この方法では B<AF_PACKET> の機能すべてを利用することはで"
17093 "きない。"
17094
17095 #. type: Plain text
17096 #: build/C/man7/packet.7:567
17097 msgid ""
17098 "The B<SOCK_DGRAM> packet sockets make no attempt to create or parse the IEEE "
17099 "802.2 LLC header for a IEEE 802.3 frame.  When B<ETH_P_802_3> is specified "
17100 "as protocol for sending the kernel creates the 802.3 frame and fills out the "
17101 "length field; the user has to supply the LLC header to get a fully "
17102 "conforming packet.  Incoming 802.3 packets are not multiplexed on the DSAP/"
17103 "SSAP protocol fields; instead they are supplied to the user as protocol "
17104 "B<ETH_P_802_2> with the LLC header prefixed.  It is thus not possible to "
17105 "bind to B<ETH_P_802_3>; bind to B<ETH_P_802_2> instead and do the protocol "
17106 "multiplex yourself.  The default for sending is the standard Ethernet DIX "
17107 "encapsulation with the protocol filled in."
17108 msgstr ""
17109 "B<SOCK_DGRAM> packet ソケットは、IEEE 802.3 フレームの IEEE 802.2 LLC ヘッ"
17110 "ダーの 生成や解析を行おうとしない。 B<ETH_P_802_3> が送信プロトコルに指定され"
17111 "ると、カーネルは 802.3 フレームを 生成して length フィールドに書き込む。 完全"
17112 "に準拠したパケットを得るためにはユーザーが LLC ヘッダーを 与える必要がある。"
17113 "到着した 802.3 パケットでは、 DSAP/SSAP protocol の各フィールドは多重化 "
17114 "(multiplex) されていない。 代わりにこれらは LLC ヘッダーが前置された "
17115 "B<ETH_P_802_2> プロトコルとして与えられる。したがって、 B<ETH_P_802_3> にバイ"
17116 "ンドすることはできない。かわりに B<ETH_P_802_2> にバインドし、自分自身でプロ"
17117 "トコルの多重化を行うこと。 送信のデフォルトは、プロトコルフィールドを持つ 標"
17118 "準の Ethernet DIX encapsulation である。"
17119
17120 #. type: Plain text
17121 #: build/C/man7/packet.7:569
17122 msgid "Packet sockets are not subject to the input or output firewall chains."
17123 msgstr "packet ソケットは入出力の firewall chain に影響をうけない。"
17124
17125 #. type: Plain text
17126 #: build/C/man7/packet.7:579
17127 msgid ""
17128 "In Linux 2.0, the only way to get a packet socket was by calling "
17129 "B<socket(AF_INET, SOCK_PACKET, >I<protocol>B<)>.  This is still supported "
17130 "but strongly deprecated.  The main difference between the two methods is "
17131 "that B<SOCK_PACKET> uses the old I<struct sockaddr_pkt> to specify an "
17132 "interface, which doesn't provide physical layer independence."
17133 msgstr ""
17134 "Linux 2.0 では、 packet ソケットを得る方法は B<socket(AF_INET, SOCK_PACKET, "
17135 ">I<protocol>B<)> を呼ぶやり方しかなかった。この方法はまだサポートされている"
17136 "が、 用いないことを強く推奨する。現在の方法との主な違いは、 B<SOCK_PACKET> で"
17137 "はインターフェースの指定に古い I<struct sockaddr_pkt> を用いる点である。これ"
17138 "には物理層からの独立性がない。"
17139
17140 #. type: Plain text
17141 #: build/C/man7/packet.7:587
17142 #, no-wrap
17143 msgid ""
17144 "struct sockaddr_pkt {\n"
17145 "    unsigned short spkt_family;\n"
17146 "    unsigned char  spkt_device[14];\n"
17147 "    unsigned short spkt_protocol;\n"
17148 "};\n"
17149 msgstr ""
17150 "struct sockaddr_pkt {\n"
17151 "    unsigned short spkt_family;\n"
17152 "    unsigned char  spkt_device[14];\n"
17153 "    unsigned short spkt_protocol;\n"
17154 "};\n"
17155
17156 #. type: Plain text
17157 #: build/C/man7/packet.7:599
17158 msgid ""
17159 "I<spkt_family> contains the device type, I<spkt_protocol> is the IEEE 802.3 "
17160 "protocol type as defined in I<E<lt>sys/if_ether.hE<gt>> and I<spkt_device> "
17161 "is the device name as a null-terminated string, for example, eth0."
17162 msgstr ""
17163 "I<spkt_family> はデバイスのタイプ、 I<spkt_protocol> は I<E<lt>sys/if_ether."
17164 "hE<gt>> で定義されている IEEE 802.3 プロトコルタイプ、 I<spkt_device> はデバ"
17165 "イスの名前をヌル終端された文字列で与えたもの (例: eth0) である。"
17166
17167 #. type: Plain text
17168 #: build/C/man7/packet.7:601
17169 msgid "This structure is obsolete and should not be used in new code."
17170 msgstr ""
17171 "この構造体は obsolete であり、 新しくコードを書く時には用いるべきでない。"
17172
17173 #. type: Plain text
17174 #: build/C/man7/packet.7:605
17175 msgid ""
17176 "glibc 2.1 does not have a define for B<SOL_PACKET>.  The suggested "
17177 "workaround is to use:"
17178 msgstr ""
17179 "glibc 2.1 には B<SOL_PACKET> の定義がない。回避策としては、以下のようにすると"
17180 "よい。"
17181
17182 #. type: Plain text
17183 #: build/C/man7/packet.7:611
17184 #, no-wrap
17185 msgid ""
17186 "#ifndef SOL_PACKET\n"
17187 "#define SOL_PACKET 263\n"
17188 "#endif\n"
17189 msgstr ""
17190 "#ifndef SOL_PACKET\n"
17191 "#define SOL_PACKET 263\n"
17192 "#endif\n"
17193
17194 #. type: Plain text
17195 #: build/C/man7/packet.7:615
17196 msgid "This is fixed in later glibc versions."
17197 msgstr "この問題はそれ以降のバージョンの glibc では修正されている。"
17198
17199 #. type: Plain text
17200 #: build/C/man7/packet.7:617
17201 msgid "The IEEE 802.2/803.3 LLC handling could be considered as a bug."
17202 msgstr "IEEE 802.2/803.3 の LLC の扱い方は、バグと考えても良いだろう。"
17203
17204 #. type: Plain text
17205 #: build/C/man7/packet.7:619
17206 msgid "Socket filters are not documented."
17207 msgstr "ソケットフィルターについて記載されていない。"
17208
17209 #.  .SH CREDITS
17210 #.  This man page was written by Andi Kleen with help from Matthew Wilcox.
17211 #.  AF_PACKET in Linux 2.2 was implemented
17212 #.  by Alexey Kuznetsov, based on code by Alan Cox and others.
17213 #. type: Plain text
17214 #: build/C/man7/packet.7:631
17215 msgid ""
17216 "The B<MSG_TRUNC> B<recvmsg>(2)  extension is an ugly hack and should be "
17217 "replaced by a control message.  There is currently no way to get the "
17218 "original destination address of packets via B<SOCK_DGRAM>."
17219 msgstr ""
17220 "B<MSG_TRUNC> B<recvmsg>(2)  拡張は非常にまずい対処であり、制御メッセージで置"
17221 "き換えるべきである。 今のところ B<SOCK_DGRAM> 経由でパケットについていた宛先"
17222 "アドレスを得る方法がない。"
17223
17224 #. type: Plain text
17225 #: build/C/man7/packet.7:638
17226 msgid ""
17227 "B<socket>(2), B<pcap>(3), B<capabilities>(7), B<ip>(7), B<raw>(7), "
17228 "B<socket>(7)"
17229 msgstr ""
17230 "B<socket>(2), B<pcap>(3), B<capabilities>(7), B<ip>(7), B<raw>(7), "
17231 "B<socket>(7)"
17232
17233 #. type: Plain text
17234 #: build/C/man7/packet.7:641
17235 msgid ""
17236 "RFC\\ 894 for the standard IP Ethernet encapsulation.  RFC\\ 1700 for the "
17237 "IEEE 802.3 IP encapsulation."
17238 msgstr ""
17239 "標準 IP Ethernet encapsulation に関しては RFC\\ 894 を、 IEEE 802.3 IP "
17240 "encapsulation に関しては RFC\\ 1700 を参照。"
17241
17242 #. type: Plain text
17243 #: build/C/man7/packet.7:645
17244 msgid ""
17245 "The I<E<lt>linux/if_ether.hE<gt>> include file for physical layer protocols."
17246 msgstr ""
17247 "物理層のプロトコルに関する記述は I<E<lt>linux/if_ether.hE<gt>> インクルード"
17248 "ファイルにある。"
17249
17250 #. type: Plain text
17251 #: build/C/man7/packet.7:654
17252 msgid ""
17253 "The Linux kernel source tree.  I</Documentation/networking/filter.txt> "
17254 "describes how to apply Berkeley Packet Filters to packet sockets.  I</tools/"
17255 "testing/selftests/net/psock_tpacket.c> contains example source code for all "
17256 "available versions of B<PACKET_RX_RING> and B<PACKET_TX_RING>."
17257 msgstr ""
17258 "Linux カーネルのソースツリー。 I</Documentation/networking/filter.txt> には "
17259 "Berkeley Packet Filters をパケットソケットにどのように適用するかの説明があ"
17260 "る。 I</tools/testing/selftests/net/psock_tpacket.c> には、 "
17261 "B<PACKET_RX_RING> と B<PACKET_TX_RING> の利用可能なすべてのバージョンのサンプ"
17262 "ルソースコードがある。"
17263
17264 #. type: TH
17265 #: build/C/man5/protocols.5:29
17266 #, no-wrap
17267 msgid "PROTOCOLS"
17268 msgstr "PROTOCOLS"
17269
17270 #. type: TH
17271 #: build/C/man5/protocols.5:29 build/C/man7/x25.7:12
17272 #, no-wrap
17273 msgid "2012-08-05"
17274 msgstr "2012-08-05"
17275
17276 #. type: Plain text
17277 #: build/C/man5/protocols.5:32
17278 msgid "protocols - protocols definition file"
17279 msgstr "protocols - プロトコル定義ファイル"
17280
17281 #. type: Plain text
17282 #: build/C/man5/protocols.5:40
17283 msgid ""
17284 "This file is a plain ASCII file, describing the various DARPA internet "
17285 "protocols that are available from the TCP/IP subsystem.  It should be "
17286 "consulted instead of using the numbers in the ARPA include files, or, even "
17287 "worse, just guessing them.  These numbers will occur in the protocol field "
17288 "of any IP header."
17289 msgstr ""
17290 "このファイルは ASCII ファイルで、TCP/IP サブシステムから利用できる いろいろ"
17291 "な DARPA インターネットプロトコルを記述している。 ARPA 関連のインクルードファ"
17292 "イル内の数値を使うべきではないし、 単に推測した値を使うのはさらに良くない。 "
17293 "代わりにこのファイルに問い合わせるべきである。 これらの数値は IP ヘッダーのプ"
17294 "ロトコルフィールドに現れる。"
17295
17296 #.  .. by the DDN Network Information Center.
17297 #. type: Plain text
17298 #: build/C/man5/protocols.5:46
17299 msgid ""
17300 "Keep this file untouched since changes would result in incorrect IP "
17301 "packages.  Protocol numbers and names are specified by the IANA (Internet "
17302 "Assigned Numbers Authority)."
17303 msgstr ""
17304 "このファイルは変更しないこと。変更すると IP パッケージが不正になる。 プロトコ"
17305 "ル番号とプロトコル名は IANA (Internet Assigned Numbers Authority) によって指"
17306 "定される。"
17307
17308 #. type: Plain text
17309 #: build/C/man5/protocols.5:48
17310 msgid "Each line is of the following format:"
17311 msgstr "それぞれの行は次のフォーマットである。"
17312
17313 #. type: Plain text
17314 #: build/C/man5/protocols.5:51
17315 msgid "I<protocol number aliases ...>"
17316 msgstr "I<protocol number aliases ...>"
17317
17318 #. type: Plain text
17319 #: build/C/man5/protocols.5:57
17320 msgid ""
17321 "where the fields are delimited by spaces or tabs.  Empty lines are ignored.  "
17322 "If a line contains a hash mark (#), the hash mark and the part of the line "
17323 "following it are ignored."
17324 msgstr ""
17325 "各フィールドは空白かタブで区切られていて、空行は無視される。 行にハッシュ記号"
17326 "(#)が含まれる場合、 ハッシュ記号を含むその行の残りは無視される。"
17327
17328 #. type: TP
17329 #: build/C/man5/protocols.5:59 build/C/man5/services.5:109
17330 #, no-wrap
17331 msgid "I<protocol>"
17332 msgstr "I<protocol>"
17333
17334 #. type: Plain text
17335 #: build/C/man5/protocols.5:67
17336 msgid ""
17337 "the native name for the protocol.  For example I<ip>, I<tcp>, or I<udp>."
17338 msgstr "プロトコルの固有名。たとえば I<ip>, I<tcp>, I<udp> など。"
17339
17340 #. type: Plain text
17341 #: build/C/man5/protocols.5:71
17342 msgid ""
17343 "the official number for this protocol as it will appear within the IP header."
17344 msgstr "プロトコルの公式番号、IP ヘッダーに現れる。"
17345
17346 #. type: Plain text
17347 #: build/C/man5/protocols.5:74
17348 msgid "optional aliases for the protocol."
17349 msgstr "プロトコルの別名、オプション。"
17350
17351 #.  The following is not true as at glibc 2.8 (a line with a comma is
17352 #.  ignored by getservent()); it's not clear if/when it was ever true.
17353 #.    As a backward compatibility feature, the slash (/) between the
17354 #.    .I port
17355 #.    number and
17356 #.    .I protocol
17357 #.    name can in fact be either a slash or a comma (,).
17358 #.    Use of the comma in
17359 #.    modern installations is deprecated.
17360 #. type: Plain text
17361 #: build/C/man5/protocols.5:77 build/C/man5/services.5:165
17362 msgid ""
17363 "This file might be distributed over a network using a network-wide naming "
17364 "service like Yellow Pages/NIS or BIND/Hesiod."
17365 msgstr ""
17366 "このファイルは Yellow Pages/NIS や BIND/Hesiod のようなネットワーク上の名前"
17367 "サービスを用いて、ネットワークを通じて配布される可能性もある。"
17368
17369 #. type: Plain text
17370 #: build/C/man5/protocols.5:81
17371 msgid "The protocols definition file."
17372 msgstr "プロトコル定義ファイル。"
17373
17374 #. type: Plain text
17375 #: build/C/man5/protocols.5:83
17376 msgid "B<getprotoent>(3)"
17377 msgstr "B<getprotoent>(3)"
17378
17379 #. type: Plain text
17380 #: build/C/man5/protocols.5:86
17381 msgid "E<.UR http://www.iana.org\\:/assignments\\:/protocol-numbers> E<.UE>"
17382 msgstr "E<.UR http://www.iana.org\\:/assignments\\:/protocol-numbers> E<.UE>"
17383
17384 #. type: TH
17385 #: build/C/man7/raw.7:13
17386 #, no-wrap
17387 msgid "RAW"
17388 msgstr "RAW"
17389
17390 #. type: Plain text
17391 #: build/C/man7/raw.7:16
17392 msgid "raw - Linux IPv4 raw sockets"
17393 msgstr "raw - Linux の IPv4 raw ソケット"
17394
17395 #. type: Plain text
17396 #: build/C/man7/raw.7:22
17397 msgid "B<raw_socket = socket(AF_INET, SOCK_RAW, int >I<protocol>B<);>"
17398 msgstr "B<raw_socket = socket(AF_INET, SOCK_RAW, int >I<protocol>B<);>"
17399
17400 #. type: Plain text
17401 #: build/C/man7/raw.7:26
17402 msgid ""
17403 "Raw sockets allow new IPv4 protocols to be implemented in user space.  A raw "
17404 "socket receives or sends the raw datagram not including link level headers."
17405 msgstr ""
17406 "raw ソケットを使うと、新しい IPv4 プロトコルをユーザー空間で 実装できるように"
17407 "なる。 raw ソケットは、リンクレベルヘッダーを 含まない raw データグラムの送受"
17408 "信ができる。"
17409
17410 #. type: Plain text
17411 #: build/C/man7/raw.7:32
17412 msgid ""
17413 "The IPv4 layer generates an IP header when sending a packet unless the "
17414 "B<IP_HDRINCL> socket option is enabled on the socket.  When it is enabled, "
17415 "the packet must contain an IP header.  For receiving the IP header is always "
17416 "included in the packet."
17417 msgstr ""
17418 "IPv4 レイヤは、扱っているソケットで B<IP_HDRINCL> ソケットオプションが有効に"
17419 "なっていなければ、 パケットを送信するときに IP ヘッダーを生成する。 "
17420 "B<IP_HDRINCL> オプションが有効になっているときは、パケットには IP ヘッダーが"
17421 "含まれていなければならない。 受信時には、 IP ヘッダーは常にパケットに含まれて"
17422 "いる。"
17423
17424 #. type: Plain text
17425 #: build/C/man7/raw.7:36
17426 msgid ""
17427 "Only processes with an effective user ID of 0 or the B<CAP_NET_RAW> "
17428 "capability are allowed to open raw sockets."
17429 msgstr ""
17430 "実効ユーザー ID が 0 のプロセスか、 B<CAP_NET_RAW> 権限を持つプロセスだけが "
17431 "raw ソケットをオープンすることができる。"
17432
17433 #. type: Plain text
17434 #: build/C/man7/raw.7:43
17435 msgid ""
17436 "All packets or errors matching the I<protocol> number specified for the raw "
17437 "socket are passed to this socket.  For a list of the allowed protocols see "
17438 "RFC\\ 1700 assigned numbers and B<getprotobyname>(3)."
17439 msgstr ""
17440 "この raw ソケットに指定された I<protocol> 番号にマッチする全てのパケットとエ"
17441 "ラーとが、このソケットに渡される。 許可されているプロトコルのリストは RFC\\ "
17442 "1700 の割り当て番号と B<getprotobyname>(3)  を見よ。"
17443
17444 #. type: Plain text
17445 #: build/C/man7/raw.7:53
17446 msgid ""
17447 "A protocol of B<IPPROTO_RAW> implies enabled B<IP_HDRINCL> and is able to "
17448 "send any IP protocol that is specified in the passed header.  Receiving of "
17449 "all IP protocols via B<IPPROTO_RAW> is not possible using raw sockets."
17450 msgstr ""
17451 "B<IPPROTO_RAW> のプロトコルは暗黙のうちに B<IP_HDRINCL> を有効にするので、 渡"
17452 "されたヘッダーで指定された、あらゆる IP プロトコルを送信できる。 "
17453 "B<IPPROTO_RAW> 経由でのあらゆる IP プロトコルの受信は、 raw ソケットを用いて"
17454 "は行えない。"
17455
17456 #. type: tbl table
17457 #: build/C/man7/raw.7:58
17458 #, no-wrap
17459 msgid "IP Header fields modified on sending by B<IP_HDRINCL>\n"
17460 msgstr "IP ヘッダーフィールド。 B<IP_HDRINCL> によって送信時に変更される。\n"
17461
17462 #. type: tbl table
17463 #: build/C/man7/raw.7:59
17464 #, no-wrap
17465 msgid "IP Checksum:Always filled in.\n"
17466 msgstr "IP チェックサム:常に変更される。\n"
17467
17468 #. type: tbl table
17469 #: build/C/man7/raw.7:60
17470 #, no-wrap
17471 msgid "Source Address:Filled in when zero.\n"
17472 msgstr "ソースアドレス:元の値が 0 の時に変更される。\n"
17473
17474 #. type: tbl table
17475 #: build/C/man7/raw.7:61
17476 #, no-wrap
17477 msgid "Packet Id:Filled in when zero.\n"
17478 msgstr "パケット ID:元の値が 0 の時に変更される。\n"
17479
17480 #. type: tbl table
17481 #: build/C/man7/raw.7:62
17482 #, no-wrap
17483 msgid "Total Length:Always filled in.\n"
17484 msgstr "全体の長さ:常に埋められる。\n"
17485
17486 #. type: Plain text
17487 #: build/C/man7/raw.7:76
17488 msgid ""
17489 "If B<IP_HDRINCL> is specified and the IP header has a nonzero destination "
17490 "address, then the destination address of the socket is used to route the "
17491 "packet.  When B<MSG_DONTROUTE> is specified, the destination address should "
17492 "refer to a local interface, otherwise a routing table lookup is done anyway "
17493 "but gatewayed routes are ignored."
17494 msgstr ""
17495 "B<IP_HERINCL> が指定されていて、 IP ヘッダーに 0 でない送信先アドレスが記入さ"
17496 "れていた場合は、 その送信先アドレスがパケットの経路を決めるのに用いられる。 "
17497 "B<MSG_DONTROUTE> が指定されている時には、 送信先アドレスはローカルなインター"
17498 "フェースを参照するものでなければならない。 さもないと、ルーティングテーブルの"
17499 "参照はいずれにせよ行われるが、 ゲートウェイが必要な経路は無視される。"
17500
17501 #. type: Plain text
17502 #: build/C/man7/raw.7:84
17503 msgid ""
17504 "If B<IP_HDRINCL> isn't set, then IP header options can be set on raw sockets "
17505 "with B<setsockopt>(2); see B<ip>(7)  for more information."
17506 msgstr ""
17507 "B<IP_HDRINCL> がセットされていなければ、 raw ソケットの IP ヘッダーオプション"
17508 "を B<setsockopt>(2)  を用いて設定することができる。詳細な情報は B<ip>(7)  を"
17509 "見よ。"
17510
17511 #. type: Plain text
17512 #: build/C/man7/raw.7:89
17513 msgid ""
17514 "In Linux 2.2, all IP header fields and options can be set using IP socket "
17515 "options.  This means raw sockets are usually needed only for new protocols "
17516 "or protocols with no user interface (like ICMP)."
17517 msgstr ""
17518 "Linux 2.2 では、 IP ヘッダーの全てのフィールドとオプションとを IP ソケットオ"
17519 "プションによって設定できる。したがって raw ソケットが必要になるのは、新しいプ"
17520 "ロトコルを設計する場合か、 ユーザーインターフェースを持たないプロトコル "
17521 "(ICMP など) を扱う場合に 限られる。"
17522
17523 #. type: Plain text
17524 #: build/C/man7/raw.7:93
17525 msgid ""
17526 "When a packet is received, it is passed to any raw sockets which have been "
17527 "bound to its protocol before it is passed to other protocol handlers (e.g., "
17528 "kernel protocol modules)."
17529 msgstr ""
17530 "パケットは、受信されるとまずプロトコルにバインドしている raw ソケットに渡さ"
17531 "れ、 その後で他のプロトコルハンドラー (カーネルのプロトコルモジュールなど)  "
17532 "に渡される。"
17533
17534 #. type: Plain text
17535 #: build/C/man7/raw.7:109
17536 msgid ""
17537 "Raw sockets use the standard I<sockaddr_in> address structure defined in "
17538 "B<ip>(7).  The I<sin_port> field could be used to specify the IP protocol "
17539 "number, but it is ignored for sending in Linux 2.2 and should be always set "
17540 "to 0 (see BUGS).  For incoming packets, I<sin_port> is set to the protocol "
17541 "of the packet.  See the I<E<lt>netinet/in.hE<gt>> include file for valid IP "
17542 "protocols."
17543 msgstr ""
17544 "raw ソケットは標準の I<sockaddr_in> アドレス構造体を用いる。定義は B<ip>(7)  "
17545 "でなされている。 I<sin_port> フィールドを IP プロトコル番号の指定に用いること"
17546 "ができるが、 Linux 2.2 ではこれは送信時には無視され、常に 0 にされる (バグ の"
17547 "項を参照)。 受信パケットに対しては、 I<sin_port> はそのパケットのプロトコルに"
17548 "セットされる。 用いることのできる IP プロトコルは、インクルードファイル "
17549 "I<E<lt>netinet/in.hE<gt>> を見よ。"
17550
17551 #.  Or SOL_RAW on Linux
17552 #. type: Plain text
17553 #: build/C/man7/raw.7:118
17554 msgid ""
17555 "Raw socket options can be set with B<setsockopt>(2)  and read with "
17556 "B<getsockopt>(2)  by passing the B<IPPROTO_RAW> family flag."
17557 msgstr ""
17558 "raw ソケットのオプションは、 B<IPPROTO_RAW> ファミリーフラグを与えて "
17559 "B<setsockopt>(2)  を呼べば設定でき、 B<getsockopt>(2)  を呼べば取得できる。"
17560
17561 #. type: TP
17562 #: build/C/man7/raw.7:118
17563 #, no-wrap
17564 msgid "B<ICMP_FILTER>"
17565 msgstr "B<ICMP_FILTER>"
17566
17567 #. type: Plain text
17568 #: build/C/man7/raw.7:126
17569 msgid ""
17570 "Enable a special filter for raw sockets bound to the B<IPPROTO_ICMP> "
17571 "protocol.  The value has a bit set for each ICMP message type which should "
17572 "be filtered out.  The default is to filter no ICMP messages."
17573 msgstr ""
17574 "B<IPPROTO_ICMP> プロトコルにバインドされた raw ソケットのための特殊なフィルタ"
17575 "を有効にする。 この値は ICMP メッセージのタイプそれぞれに対して、どれをフィル"
17576 "ターアウト するかを表したビットセットである。デフォルトでは ICMP メッセージは"
17577 "全くフィルターしない。"
17578
17579 #. type: Plain text
17580 #: build/C/man7/raw.7:131
17581 msgid ""
17582 "In addition, all B<ip>(7)  B<IPPROTO_IP> socket options valid for datagram "
17583 "sockets are supported."
17584 msgstr ""
17585 "さらに、データグラムソケットに使える全ての B<ip>(7)  B<SOL_IP> ソケットオプ"
17586 "ションがサポートされている。"
17587
17588 #. type: Plain text
17589 #: build/C/man7/raw.7:144
17590 msgid ""
17591 "Errors originating from the network are passed to the user only when the "
17592 "socket is connected or the B<IP_RECVERR> flag is enabled.  For connected "
17593 "sockets, only B<EMSGSIZE> and B<EPROTO> are passed for compatibility.  With "
17594 "B<IP_RECVERR>, all network errors are saved in the error queue."
17595 msgstr ""
17596 "ネットワークで生じたエラーがユーザーに渡されるのは、 ソケットが接続済みの場合"
17597 "か B<IP_RECVERR> フラグが有効になっている場合に限られる。 接続済みのソケット"
17598 "に対しては、 B<EMSGSIZE> および B<EPROTO> だけが渡される (互換性のため)。 "
17599 "B<IP_RECVERR> を設定すると、全てのネットワークエラーがエラーキューに保存され"
17600 "る。"
17601
17602 #. type: Plain text
17603 #: build/C/man7/raw.7:149
17604 msgid ""
17605 "User tried to send to a broadcast address without having the broadcast flag "
17606 "set on the socket."
17607 msgstr ""
17608 "ユーザーが broadcast フラグを設定していないソケットを用いて ブロードキャスト"
17609 "アドレスに送信を行おうとした。"
17610
17611 #. type: Plain text
17612 #: build/C/man7/raw.7:152
17613 msgid "An invalid memory address was supplied."
17614 msgstr "不正なメモリーアドレスが与えられた。"
17615
17616 #. type: Plain text
17617 #: build/C/man7/raw.7:162
17618 msgid ""
17619 "Packet too big.  Either Path MTU Discovery is enabled (the "
17620 "B<IP_MTU_DISCOVER> socket flag) or the packet size exceeds the maximum "
17621 "allowed IPv4 packet size of 64KB."
17622 msgstr ""
17623 "パケットが大きすぎる。 Path MTU Discoverry が有効になっている "
17624 "(B<IP_MTU_DISCOVER> ソケットフラグ) か、パケットのサイズが IPv4 で許されてい"
17625 "る パケットサイズの最大値 64KB を越えている。"
17626
17627 #. type: TP
17628 #: build/C/man7/raw.7:162 build/C/man7/unix.7:447
17629 #, no-wrap
17630 msgid "B<EOPNOTSUPP>"
17631 msgstr "B<EOPNOTSUPP>"
17632
17633 #. type: Plain text
17634 #: build/C/man7/raw.7:166
17635 msgid "Invalid flag has been passed to a socket call (like B<MSG_OOB>)."
17636 msgstr "ソケット呼び出しに不正なフラグ (B<MSG_OOB> など) が渡された。"
17637
17638 #. type: Plain text
17639 #: build/C/man7/raw.7:172
17640 msgid ""
17641 "The user doesn't have permission to open raw sockets.  Only processes with "
17642 "an effective user ID of 0 or the B<CAP_NET_RAW> attribute may do that."
17643 msgstr ""
17644 "ユーザーは raw ソケットをオープンする権限を持っていない。 実行ユーザー ID が "
17645 "0 のプロセスか、 B<CAP_NET_RAW> 属性を持つプロセスだけがこれを行うことができ"
17646 "る。"
17647
17648 #. type: TP
17649 #: build/C/man7/raw.7:172
17650 #, no-wrap
17651 msgid "B<EPROTO>"
17652 msgstr "B<EPROTO>"
17653
17654 #. type: Plain text
17655 #: build/C/man7/raw.7:175
17656 msgid "An ICMP error has arrived reporting a parameter problem."
17657 msgstr "パラメーターの問題を報告する ICMP エラーを受け取った。"
17658
17659 #. type: Plain text
17660 #: build/C/man7/raw.7:181
17661 msgid ""
17662 "B<IP_RECVERR> and B<ICMP_FILTER> are new in Linux 2.2.  They are Linux "
17663 "extensions and should not be used in portable programs."
17664 msgstr ""
17665 "B<IP_RECVERR> と B<ICMP_FILTER> は Linux 2.2 で登場した。これらは Linux での"
17666 "拡張であり、 移植性の必要なプログラムでは用いるべきでない。"
17667
17668 #. type: Plain text
17669 #: build/C/man7/raw.7:187
17670 msgid ""
17671 "Linux 2.0 enabled some bug-to-bug compatibility with BSD in the raw socket "
17672 "code when the B<SO_BSDCOMPAT> socket option was set \\(em since Linux 2.2, "
17673 "this option no longer has that effect."
17674 msgstr ""
17675 "Linux 2.0 では B<SO_BSDCOMPAT> ソケットオプションをセットすると、 BSD の raw "
17676 "ソケットにあるバグに互換性を取ることができた \\(em Linux 2.2 以降では、このオ"
17677 "プションはもはや効力を持たない。"
17678
17679 #. type: Plain text
17680 #: build/C/man7/raw.7:205
17681 msgid ""
17682 "By default, raw sockets do path MTU (Maximum Transmission Unit) discovery.  "
17683 "This means the kernel will keep track of the MTU to a specific target IP "
17684 "address and return B<EMSGSIZE> when a raw packet write exceeds it.  When "
17685 "this happens, the application should decrease the packet size.  Path MTU "
17686 "discovery can be also turned off using the B<IP_MTU_DISCOVER> socket option "
17687 "or the I</proc/sys/net/ipv4/ip_no_pmtu_disc> file, see B<ip>(7)  for "
17688 "details.  When turned off, raw sockets will fragment outgoing packets that "
17689 "exceed the interface MTU.  However, disabling it is not recommended for "
17690 "performance and reliability reasons."
17691 msgstr ""
17692 "デフォルトでは、raw ソケットは Path MTU Discovery を行う。 つまり、カーネルは"
17693 "特定の宛先 IP アドレスの MTU (Maximum Transmission Unit; 最大転送単位) を記録"
17694 "し、raw パケットの書き込みが MTU を超えた場合 B<EMSGSIZE> を返す。 "
17695 "B<EMSGSIZE> を返された場合、アプリケーションはパケットサイズを小さくすべきで"
17696 "ある。 ソケットオプション B<IP_MTU_DISCOVER> または I</proc/sys/net/ipv4/"
17697 "ip_no_pmtu_disc> ファイルを使って Path MTU Discovery を無効にすることもでき"
17698 "る (詳細は B<ip>(7)  を参照)。 Path MTU Discovery を無効にした場合は、パケッ"
17699 "トサイズが インターフェースの MTU よりも大きいと raw ソケットはそのパケット"
17700 "を フラグメント化して送出する。 しかしながら、性能と信頼性の理由から Path "
17701 "MTU Discovery を 無効にするのは推奨できない。"
17702
17703 #. type: Plain text
17704 #: build/C/man7/raw.7:214
17705 msgid ""
17706 "A raw socket can be bound to a specific local address using the B<bind>(2)  "
17707 "call.  If it isn't bound, all packets with the specified IP protocol are "
17708 "received.  In addition, a RAW socket can be bound to a specific network "
17709 "device using B<SO_BINDTODEVICE>; see B<socket>(7)."
17710 msgstr ""
17711 "B<bind>(2)  システムコールを用いると、 raw ソケットを 特定のローカルアドレス"
17712 "にバインドさせることができる。 このバインドがされていない場合は、指定した IP "
17713 "プロトコルの すべてのパケットが受信される。 さらに、 B<SO_BINDTODEVICE> を用"
17714 "いれば raw ソケットを特定のネットワークデバイスに バインドさせることもでき"
17715 "る。 B<socket>(7)  を見よ。"
17716
17717 #. type: Plain text
17718 #: build/C/man7/raw.7:225
17719 msgid ""
17720 "An B<IPPROTO_RAW> socket is send only.  If you really want to receive all IP "
17721 "packets, use a B<packet>(7)  socket with the B<ETH_P_IP> protocol.  Note "
17722 "that packet sockets don't reassemble IP fragments, unlike raw sockets."
17723 msgstr ""
17724 "B<IPPROTO_RAW> ソケットは送信専用である。もしどうしてもすべての IP パケット"
17725 "を 受信したい場合は、 B<packet>(7)  ソケットを B<ETH_P_IP> プロトコルで用いる"
17726 "こと。 packet ソケットは raw ソケットのように IP フラグメントを再構成しないこ"
17727 "とに注意。"
17728
17729 #. type: Plain text
17730 #: build/C/man7/raw.7:231
17731 msgid ""
17732 "If you want to receive all ICMP packets for a datagram socket, it is often "
17733 "better to use B<IP_RECVERR> on that particular socket; see B<ip>(7)."
17734 msgstr ""
17735 "datagram ソケットに対するすべての ICMP パケットを受信したい場合は、 特定のソ"
17736 "ケットに対して B<IP_RECVERR> を用いるほうが良い場合が多い。 B<ip>(7)  を見"
17737 "よ。"
17738
17739 #. type: Plain text
17740 #: build/C/man7/raw.7:238
17741 msgid ""
17742 "Raw sockets may tap all IP protocols in Linux, even protocols like ICMP or "
17743 "TCP which have a protocol module in the kernel.  In this case, the packets "
17744 "are passed to both the kernel module and the raw socket(s).  This should not "
17745 "be relied upon in portable programs, many other BSD socket implementation "
17746 "have limitations here."
17747 msgstr ""
17748 "raw ソケットは、 Linux のすべての IP プロトコルを受信することができる。 ICMP "
17749 "や TCP のように、カーネル内部にプロトコルモジュールを持つような ものも可能で"
17750 "ある。この場合には、パケットはカーネルモジュールと raw ソケットの両方に渡され"
17751 "る (raw ソケットが複数あればそれぞれに渡される)。 移植性の必要なプログラムで"
17752 "はこの機能に依存するべきではない。 他の多くの BSD におけるソケットの実装では"
17753 "この点において制限がある。"
17754
17755 #. type: Plain text
17756 #: build/C/man7/raw.7:243
17757 msgid ""
17758 "Linux never changes headers passed from the user (except for filling in some "
17759 "zeroed fields as described for B<IP_HDRINCL>).  This differs from many other "
17760 "implementations of raw sockets."
17761 msgstr ""
17762 "Linux はユーザーから渡されたヘッダーを決して変更しない (ただし B<IP_HDRINCL> "
17763 "の説明にあるように、 0 をいくつか埋める場合を除く)。 これは他の多くの raw ソ"
17764 "ケットの実装では異なる。"
17765
17766 #. type: Plain text
17767 #: build/C/man7/raw.7:246
17768 msgid ""
17769 "RAW sockets are generally rather unportable and should be avoided in "
17770 "programs intended to be portable."
17771 msgstr ""
17772 "一般に raw ソケットは移植性がないことが多いので、 移植性が必要なプログラムで"
17773 "は避けるべきである。"
17774
17775 #. type: Plain text
17776 #: build/C/man7/raw.7:252
17777 msgid ""
17778 "Sending on raw sockets should take the IP protocol from I<sin_port>; this "
17779 "ability was lost in Linux 2.2.  The workaround is to use B<IP_HDRINCL>."
17780 msgstr ""
17781 "raw ソケットへの送信では、 IP プロトコルを I<sin_port> から取得できなければな"
17782 "らない。この機能は Linux 2.2 では使えなくなった。 B<IP_HDRINCL> を用いれば同"
17783 "様のことが実現できる。"
17784
17785 #. type: Plain text
17786 #: build/C/man7/raw.7:254
17787 msgid "Transparent proxy extensions are not described."
17788 msgstr "透過プロクシ (transparent proxy) 拡張については記述していない。"
17789
17790 #. type: Plain text
17791 #: build/C/man7/raw.7:259
17792 msgid ""
17793 "When the B<IP_HDRINCL> option is set, datagrams will not be fragmented and "
17794 "are limited to the interface MTU."
17795 msgstr ""
17796 "B<IP_HDRINCL> オプションがセットされているとデータグラムはフラグメント化され"
17797 "ず、 インターフェースの MTU の大きさに制限される。"
17798
17799 #.  .SH AUTHORS
17800 #.  This man page was written by Andi Kleen.
17801 #. type: Plain text
17802 #: build/C/man7/raw.7:269
17803 msgid ""
17804 "Setting the IP protocol for sending in I<sin_port> got lost in Linux 2.2.  "
17805 "The protocol that the socket was bound to or that was specified in the "
17806 "initial B<socket>(2)  call is always used."
17807 msgstr ""
17808 "送信用の IP プロトコルの設定を I<sin_port> にしておく機能は Linux 2.2 から使"
17809 "えなくなった。 ソケットにバインドされているプロトコルか、最初の "
17810 "B<socket>(2)  コールによって指定されたプロトコルが常に用いられる。"
17811
17812 #. type: Plain text
17813 #: build/C/man7/raw.7:275
17814 msgid ""
17815 "B<recvmsg>(2), B<sendmsg>(2), B<capabilities>(7), B<ip>(7), B<socket>(7)"
17816 msgstr ""
17817 "B<recvmsg>(2), B<sendmsg>(2), B<capabilities>(7), B<ip>(7), B<socket>(7)"
17818
17819 #. type: Plain text
17820 #: build/C/man7/raw.7:282
17821 msgid ""
17822 "B<RFC\\ 1191> for path MTU discovery.  B<RFC\\ 791> and the I<E<lt>linux/ip."
17823 "hE<gt>> header file for the IP protocol."
17824 msgstr ""
17825 "Path MTU discovery に関しては B<RFC\\ 1191> を参照。 IP プロトコルに関しては "
17826 "B<RFC\\ 791> とインクルードファイル I<E<lt>linux/ip.hE<gt>> を参照。"
17827
17828 #. type: TH
17829 #: build/C/man3/rcmd.3:43
17830 #, no-wrap
17831 msgid "RCMD"
17832 msgstr "RCMD"
17833
17834 #. type: Plain text
17835 #: build/C/man3/rcmd.3:48
17836 msgid ""
17837 "rcmd, rresvport, iruserok, ruserok, rcmd_af, rresvport_af, iruserok_af, "
17838 "ruserok_af - routines for returning a stream to a remote command"
17839 msgstr ""
17840 "rcmd, rresvport, iruserok, ruserok, rcmd_af, rresvport_af, iruserok_af, \n"
17841 "ruserok_af - リモートコマンドにストリームを返す関数群"
17842
17843 #. type: Plain text
17844 #: build/C/man3/rcmd.3:51
17845 #, no-wrap
17846 msgid "B<#include E<lt>netdb.hE<gt> \\ \\ >/* Or E<lt>unistd.hE<gt> on some systems */\n"
17847 msgstr "B<#include E<lt>netdb.hE<gt> \\ \\ >/* Or E<lt>unistd.hE<gt> on some systems */\n"
17848
17849 #. type: Plain text
17850 #: build/C/man3/rcmd.3:54
17851 #, no-wrap
17852 msgid ""
17853 "B<int rcmd(char **>I<ahost>B<, unsigned short >I<inport>B<, const char *>I<locuser>B<, >\n"
17854 "B<         const char *>I<remuser>B<, const char *>I<cmd>B<, int *>I<fd2p>B<);>\n"
17855 msgstr ""
17856 "B<int rcmd(char **>I<ahost>B<, unsigned short >I<inport>B<, const char *>I<locuser>B<, >\n"
17857 "B<         const char *>I<remuser>B<, const char *>I<cmd>B<, int *>I<fd2p>B<);>\n"
17858
17859 #. type: Plain text
17860 #: build/C/man3/rcmd.3:56
17861 #, no-wrap
17862 msgid "B<int rresvport(int *>I<port>B<);>\n"
17863 msgstr "B<int rresvport(int *>I<port>B<);>\n"
17864
17865 #. type: Plain text
17866 #: build/C/man3/rcmd.3:59
17867 #, no-wrap
17868 msgid ""
17869 "B<int iruserok(uint32_t >I<raddr>B<, int >I<superuser>B<, >\n"
17870 "B<             const char *>I<ruser>B<, const char *>I<luser>B<);>\n"
17871 msgstr ""
17872 "B<int iruserok(uint32_t >I<raddr>B<, int >I<superuser>B<, >\n"
17873 "B<             const char *>I<ruser>B<, const char *>I<luser>B<);>\n"
17874
17875 #. type: Plain text
17876 #: build/C/man3/rcmd.3:62
17877 #, no-wrap
17878 msgid ""
17879 "B<int ruserok(const char *>I<rhost>B<, int >I<superuser>B<, >\n"
17880 "B<            const char *>I<ruser>B<, const char *>I<luser>B<);>\n"
17881 msgstr ""
17882 "B<int ruserok(const char *>I<rhost>B<, int >I<superuser>B<, >\n"
17883 "B<            const char *>I<ruser>B<, const char *>I<luser>B<);>\n"
17884
17885 #. type: Plain text
17886 #: build/C/man3/rcmd.3:66
17887 #, no-wrap
17888 msgid ""
17889 "B<int rcmd_af(char **>I<ahost>B<, unsigned short >I<inport>B<, const char *>I<locuser>B<, >\n"
17890 "B<            const char *>I<remuser>B<, const char *>I<cmd>B<, int *>I<fd2p>B<,>\n"
17891 "B<            sa_family_t >I<af>B<);>\n"
17892 msgstr ""
17893 "B<int rcmd_af(char **>I<ahost>B<, unsigned short >I<inport>B<, const char *>I<locuser>B<, >\n"
17894 "B<            const char *>I<remuser>B<, const char *>I<cmd>B<, int *>I<fd2p>B<,>\n"
17895 "B<            sa_family_t >I<af>B<);>\n"
17896
17897 #. type: Plain text
17898 #: build/C/man3/rcmd.3:68
17899 #, no-wrap
17900 msgid "B<int rresvport_af(int *>I<port>B<, sa_family_t >I<af>B<);>\n"
17901 msgstr "B<int rresvport_af(int *>I<port>B<, sa_family_t >I<af>B<);>\n"
17902
17903 #. type: Plain text
17904 #: build/C/man3/rcmd.3:72
17905 #, no-wrap
17906 msgid ""
17907 "B<int iruserok_af(const void *>I<raddr>B<, int >I<superuser>B<, >\n"
17908 "B<                const char *>I<ruser>B<, const char *>I<luser>B<, sa_family_t >I<af>B<);>\n"
17909 msgstr ""
17910 "B<int iruserok_af(const void *>I<raddr>B<, int >I<superuser>B<, >\n"
17911 "B<                const char *>I<ruser>B<, const char *>I<luser>B<, sa_family_t >I<af>B<);>\n"
17912
17913 #. type: Plain text
17914 #: build/C/man3/rcmd.3:76
17915 #, no-wrap
17916 msgid ""
17917 "B<int ruserok_af(const char *>I<rhost>B<, int >I<superuser>B<, >\n"
17918 "B<               const char *>I<ruser>B<, const char *>I<luser>B<, sa_family_t >I<af>B<);>\n"
17919 msgstr ""
17920 "B<int ruserok_af(const char *>I<rhost>B<, int >I<superuser>B<, >\n"
17921 "B<               const char *>I<ruser>B<, const char *>I<luser>B<, sa_family_t >I<af>B<);>\n"
17922
17923 #. type: Plain text
17924 #: build/C/man3/rcmd.3:92
17925 msgid ""
17926 "B<rcmd>(), B<rcmd_af>(), B<rresvport>(), B<rresvport_af>(), B<iruserok>(), "
17927 "B<iruserok_af>(), B<ruserok>(), B<ruserok_af>(): _BSD_SOURCE"
17928 msgstr ""
17929 "B<rcmd>(), B<rcmd_af>(), B<rresvport>(), B<rresvport_af>(),\n"
17930 "B<iruserok>(), B<iruserok_af>(), B<ruserok>(), B<ruserok_af>():\n"
17931 "_BSD_SOURCE"
17932
17933 #. type: Plain text
17934 #: build/C/man3/rcmd.3:113
17935 msgid ""
17936 "The B<rcmd>()  function is used by the superuser to execute a command on a "
17937 "remote machine using an authentication scheme based on privileged port "
17938 "numbers.  The B<rresvport>()  function returns a descriptor to a socket with "
17939 "an address in the privileged port space.  The B<iruserok>()  and "
17940 "B<ruserok>()  functions are used by servers to authenticate clients "
17941 "requesting service with B<rcmd>().  All four functions are used by the "
17942 "B<rshd>(8)  server (among others)."
17943 msgstr ""
17944 "B<rcmd>() 関数は、スーパーユーザーがリモートマシンでコマンドを実行する\n"
17945 "ために 用いられる。このとき特権ポート番号をもとにした認証スキームが 用\n"
17946 "いられる。 B<rresvport>() 関数は、特権ポート空間のアドレスを持つソケッ\n"
17947 "トの ディスクリプターを返す。 B<iruserok>() 関数と B<ruserok>() 関数は、\n"
17948 "B<rcmd>() でサービス要求を行ったクライアントの認証を行うために サーバー\n"
17949 "が用いる関数である。 以上の 4 つの関数は、 B<rshd>(8) サーバーによって\n"
17950 "(他の関数とともに) 利用される。"
17951
17952 #. type: SS
17953 #: build/C/man3/rcmd.3:113
17954 #, no-wrap
17955 msgid "rcmd()"
17956 msgstr "rcmd()"
17957
17958 #. type: Plain text
17959 #: build/C/man3/rcmd.3:129
17960 msgid ""
17961 "The B<rcmd>()  function looks up the host I<*ahost> using "
17962 "B<gethostbyname>(3), returning -1 if the host does not exist.  Otherwise, "
17963 "I<*ahost> is set to the standard name of the host and a connection is "
17964 "established to a server residing at the well-known Internet port I<inport>."
17965 msgstr ""
17966 "B<rcmd>()  関数は B<gethostbyname>(3)  を用いて I<*ahost> の参照を行う。ホス"
17967 "トが存在しない場合は -1 を返す。 見つかった場合は I<*ahost> にホストの標準名 "
17968 "(standard name) をセットして、 予約されているインターネットポート I<inport> "
17969 "経由でサーバーへの接続を確立する。"
17970
17971 #. type: Plain text
17972 #: build/C/man3/rcmd.3:158
17973 msgid ""
17974 "If the connection succeeds, a socket in the Internet domain of type "
17975 "B<SOCK_STREAM> is returned to the caller, and given to the remote command as "
17976 "I<stdin> and I<stdout>.  If I<fd2p> is nonzero, then an auxiliary channel to "
17977 "a control process will be set up, and a descriptor for it will be placed in "
17978 "I<*fd2p>.  The control process will return diagnostic output from the "
17979 "command (unit 2) on this channel, and will also accept bytes on this channel "
17980 "as being UNIX signal numbers, to be forwarded to the process group of the "
17981 "command.  If I<fd2p> is 0, then the I<stderr> (unit 2 of the remote command) "
17982 "will be made the same as the I<stdout> and no provision is made for sending "
17983 "arbitrary signals to the remote process, although you may be able to get its "
17984 "attention by using out-of-band data."
17985 msgstr ""
17986 "接続に成功したら、インターネットドメインに存在するタイプ B<SOCK_STREAM> のソ"
17987 "ケットが呼び出しもとに返される。 このソケットの相手側はリモートコマンドの "
17988 "I<stdin> および I<stdout> に接続される。 I<fd2p> がゼロでない場合は、制御プロ"
17989 "セスへの接続がもう一つ用意され、 そのディスクリプターが I<*fd2p> にセットされ"
17990 "る。 制御プロセスはリモートコマンドからの標準エラー出力 (unit 2) を このチャ"
17991 "ンネルに返す。 また制御プロセスはこの接続から受け取ったバイトデータを UNIX シ"
17992 "グナルの番号として扱い、リモートコマンドのプロセス グループへとシグナルを送"
17993 "る。 I<fd2p> がゼロの場合は、 I<stderr> (リモートコマンドの unit 2) は "
17994 "I<stdout> と一緒にまとめられる。またこの場合はリモートプロセスへ 任意のシグナ"
17995 "ルを送ることはできなくなる。 ただし帯域外 (out-of-band) データを用いれば、 リ"
17996 "モートプロセスの注意を引くことはできるかもしれない。"
17997
17998 #. type: Plain text
17999 #: build/C/man3/rcmd.3:161
18000 msgid "The protocol is described in detail in B<rshd>(8)."
18001 msgstr "プロトコルの詳細は B<rshd>(8)  に記述されている。"
18002
18003 #. type: SS
18004 #: build/C/man3/rcmd.3:161
18005 #, no-wrap
18006 msgid "rresvport()"
18007 msgstr "rresvport()"
18008
18009 #. type: Plain text
18010 #: build/C/man3/rcmd.3:183
18011 msgid ""
18012 "The B<rresvport>()  function is used to obtain a socket with a privileged "
18013 "port bound to it.  This socket is suitable for use by B<rcmd>()  and several "
18014 "other functions.  Privileged ports are those in the range 0 to 1023.  Only a "
18015 "privileged process (B<CAP_NET_BIND_SERVICE>)  is allowed to bind to a "
18016 "privileged port.  In the glibc implementation, this function restricts its "
18017 "search to the ports from 512 to 1023.  The I<port> argument is value-result: "
18018 "the value it supplies to the call is used as the starting point for a "
18019 "circular search of the port range; on (successful) return, it contains the "
18020 "port number that was bound to."
18021 msgstr ""
18022 "B<rresvport>() 関数は特権ポートにバインドされたソケットを取得するために\n"
18023 "用いられる。 このソケットは B<rcmd>() などの関数での利用に適している。\n"
18024 "インターネットポートの特権ポートは、 0 から 1023 の範囲である。特権プロ\n"
18025 "セス (B<CAP_NET_BIND_SERVICE>) だけが特権ポートをバインドすることができ\n"
18026 "る。 glibc の実装では、この関数は特権ポートの検索範囲を 512 から 1023\n"
18027 "までの範囲に制限している。 I<port> 引き数は入出力両用で使用される。呼び\n"
18028 "出し時にこの引き数で渡された値は特権ポートを巡回検索する際の開始ポイン\n"
18029 "トとして使用され、(成功で) 返る際にはこの引き数にバインドされたポート\n"
18030 "番号が格納される。"
18031
18032 #. type: SS
18033 #: build/C/man3/rcmd.3:183
18034 #, no-wrap
18035 msgid "iruserok() and ruserok()"
18036 msgstr "iruserok() と ruserok()"
18037
18038 #. type: Plain text
18039 #: build/C/man3/rcmd.3:201
18040 msgid ""
18041 "The B<iruserok>()  and B<ruserok>()  functions take a remote host's IP "
18042 "address or name, respectively, two usernames and a flag indicating whether "
18043 "the local user's name is that of the superuser.  Then, if the user is I<not> "
18044 "the superuser, it checks the I</etc/hosts.equiv> file.  If that lookup is "
18045 "not done, or is unsuccessful, the I<.rhosts> in the local user's home "
18046 "directory is checked to see if the request for service is allowed."
18047 msgstr ""
18048 "B<iruserok>()  と B<ruserok>()  関数は、まず以下の引数を取る: リモートホスト "
18049 "(B<iruserok>()  は IP アドレスで、 B<ruserok>()  はホスト名で指定)、 2 つの"
18050 "ユーザー名、ローカルユーザーの名前が スーパーユーザーのものであるかどうかを示"
18051 "すフラグ、である。 もしユーザーがB<スーパーユーザーではない>場合は、これらの"
18052 "関数は I</etc/hosts.equiv> ファイルをチェックする。ファイルが見つからなかった"
18053 "り、 内容のチェックに失敗した場合には、 ローカルユーザーのホームディレクトリ"
18054 "にある I<.rhosts> ファイルをチェックして、サービス要求が許可されているかどう"
18055 "か調べる。"
18056
18057 #. type: Plain text
18058 #: build/C/man3/rcmd.3:217
18059 msgid ""
18060 "If this file does not exist, is not a regular file, is owned by anyone other "
18061 "than the user or the superuser, or is writable by anyone other than the "
18062 "owner, the check automatically fails.  Zero is returned if the machine name "
18063 "is listed in the I<hosts.equiv> file, or the host and remote username are "
18064 "found in the I<.rhosts> file; otherwise B<iruserok>()  and B<ruserok>()  "
18065 "return -1.  If the local domain (as obtained from B<gethostname>(2))  is the "
18066 "same as the remote domain, only the machine name need be specified."
18067 msgstr ""
18068 "このファイルが存在しなかったり、 通常ファイル (regular file) ではなかった"
18069 "り、 指定ユーザーまたはスーパーユーザー以外の所有だったり、 所有者以外から書"
18070 "き込み可能だったりした場合には、 このチェックは自動的に失敗する。 マシンの名"
18071 "前が I<hosts.equiv> にリストされていたり、 ホストとリモートユーザーの名前が "
18072 "I<.rhosts> ファイルに書かれていた場合には 0 が返される。 それ以外の場合に"
18073 "は、 B<iruserok>()  と B<ruserok>()  は -1 を返す。 (B<gethostname>(2)  に"
18074 "よって取得される) ローカルドメインがリモートのドメインと同じ場合は、 マシンの"
18075 "名前だけを指定すればよい。"
18076
18077 #. type: Plain text
18078 #: build/C/man3/rcmd.3:223
18079 msgid ""
18080 "If the IP address of the remote host is known, B<iruserok>()  should be used "
18081 "in preference to B<ruserok>(), as it does not require trusting the DNS "
18082 "server for the remote host's domain."
18083 msgstr ""
18084 "リモートホストの IP アドレスがわかっている場合は、 B<ruserok>()  よりも "
18085 "B<iruserok>()B<を用いる方が良いだろう。> B<ruserok>()  はリモートホストの所属"
18086 "するドメインの DNS サーバーが信頼できなくても 使用できるからである。"
18087
18088 #. type: SS
18089 #: build/C/man3/rcmd.3:223
18090 #, no-wrap
18091 msgid "*_af() variants"
18092 msgstr "*_af() 版"
18093
18094 #. type: Plain text
18095 #: build/C/man3/rcmd.3:239
18096 msgid ""
18097 "All of the functions described above work with IPv4 (B<AF_INET>)  sockets.  "
18098 "The \"_af\" variants take an extra argument that allows the socket address "
18099 "family to be specified.  For these functions, the I<af> argument can be "
18100 "specified as B<AF_INET> or B<AF_INET6>.  In addition, B<rcmd_af>()  supports "
18101 "the use of B<AF_UNSPEC>."
18102 msgstr ""
18103 "上記で述べた関数は全て IPv4 (B<AF_INET>) ソケットで動作する。\n"
18104 "\"_af\" 版では追加の引き数があり、この引き数でソケットアドレス\n"
18105 "ファミリーを指定できる。これらの関数では、 I<af> 引き数には \n"
18106 "B<AF_INET> か B<AF_INET6> が指定できる。\n"
18107 "B<rcmd_af>() では追加で B<AF_UNSPEC> も指定できる。"
18108
18109 #. type: Plain text
18110 #: build/C/man3/rcmd.3:245
18111 msgid ""
18112 "The B<rcmd>()  function returns a valid socket descriptor on success.  It "
18113 "returns -1 on error and prints a diagnostic message on the standard error."
18114 msgstr ""
18115 "B<rcmd>()  関数は成功すると有効なソケットディスクリプターを返す。 失敗すると "
18116 "-1 を返し、標準エラー出力に診断メッセージを 表示する。"
18117
18118 #. type: Plain text
18119 #: build/C/man3/rcmd.3:256
18120 msgid ""
18121 "The B<rresvport>()  function returns a valid, bound socket descriptor on "
18122 "success.  It returns -1 on error with the global value I<errno> set "
18123 "according to the reason for failure.  The error code B<EAGAIN> is overloaded "
18124 "to mean \"All network ports in use.\""
18125 msgstr ""
18126 "B<rresvport>()  関数は、成功するとバインドされた有効なソケットディスクリプ"
18127 "ターを返す。 失敗すると -1 を返し、グローバル変数 I<errno> をエラーの原因に対"
18128 "応する値にセットする。 エラーコード B<EAGAIN> は、この関数においては「すべて"
18129 "のネットワークポートが使用中」 という意味を表す。"
18130
18131 #. type: Plain text
18132 #: build/C/man3/rcmd.3:262
18133 msgid ""
18134 "For information on the return from B<ruserok>()  and B<iruserok>(), see "
18135 "above."
18136 msgstr "B<ruserok>() と B<iruserok>() の返り値については、上述の説明を参照。"
18137
18138 #. type: Plain text
18139 #: build/C/man3/rcmd.3:270
18140 msgid ""
18141 "The functions B<iruserok_af>(), B<rcmd_af>(), B<rresvport_af>(), and "
18142 "B<ruserok_af>()  functions are provide in glibc since version 2.2."
18143 msgstr ""
18144 "関数 B<iruserok_af>(), B<rcmd_af>(), B<rresvport_af>(),\n"
18145 "B<ruserok_af>() は glibc バージョン 2.2 以降で提供されている。"
18146
18147 #. type: Plain text
18148 #: build/C/man3/rcmd.3:278
18149 msgid ""
18150 "Not in POSIX.1-2001.  Present on the BSDs, Solaris, and many other systems.  "
18151 "These functions appeared in 4.2BSD.  The \"_af\" variants are more recent "
18152 "additions, and are not present on as wide a range of systems."
18153 msgstr ""
18154 "POSIX.1-2001 にはない。 BSD 系、Solaris や他の多くのシステムに存在する。\n"
18155 "これらの関数は 4.2BSD で登場した。 \"_af\" が付くバージョンはより最近に\n"
18156 "追加されたもので、あまり多くのシステムには存在しない。"
18157
18158 #.  Bug filed 25 Nov 2007:
18159 #.  http://sources.redhat.com/bugzilla/show_bug.cgi?id=5399
18160 #. type: Plain text
18161 #: build/C/man3/rcmd.3:285
18162 msgid ""
18163 "B<iruserok>()  and B<iruserok_af>()  are declared in glibc headers only "
18164 "since version 2.12."
18165 msgstr ""
18166 "B<iruserok>() と B<iruserok_af>() は glibc バージョン 2.12 以降のヘッダー\n"
18167 "でのみ宣言されている。"
18168
18169 #. type: Plain text
18170 #: build/C/man3/rcmd.3:293
18171 msgid ""
18172 "B<rlogin>(1), B<rsh>(1), B<intro>(2), B<rexec>(3), B<rexecd>(8), "
18173 "B<rlogind>(8), B<rshd>(8)"
18174 msgstr ""
18175 "B<rlogin>(1), B<rsh>(1), B<intro>(2), B<rexec>(3), B<rexecd>(8), "
18176 "B<rlogind>(8), B<rshd>(8)"
18177
18178 #. type: TH
18179 #: build/C/man5/resolv.conf.5:23
18180 #, no-wrap
18181 msgid "RESOLV.CONF"
18182 msgstr "RESOLV.CONF"
18183
18184 #. type: Plain text
18185 #: build/C/man5/resolv.conf.5:27
18186 msgid "resolv.conf - resolver configuration file"
18187 msgstr "resolv.conf - レゾルバ設定ファイル"
18188
18189 #. type: Plain text
18190 #: build/C/man5/resolv.conf.5:29
18191 msgid "B</etc/resolv.conf>"
18192 msgstr "B</etc/resolv.conf>"
18193
18194 #. type: Plain text
18195 #: build/C/man5/resolv.conf.5:41
18196 msgid ""
18197 "The I<resolver> is a set of routines in the C library that provide access to "
18198 "the Internet Domain Name System (DNS).  The resolver configuration file "
18199 "contains information that is read by the resolver routines the first time "
18200 "they are invoked by a process.  The file is designed to be human readable "
18201 "and contains a list of keywords with values that provide various types of "
18202 "resolver information.  The configuration file is considered a trusted source "
18203 "of DNS information (e.g., DNSSEC AD-bit information will be returned "
18204 "unmodified from this source)."
18205 msgstr ""
18206 "I<resolver> は、インターネットのドメインネームシステム (DNS) へのアクセスを提"
18207 "供する C ライブラリのルーチン群である。 レゾルバ設定ファイルには、レゾルバ"
18208 "ルーチンがプロセスによって最初に 起動されたときに読み込まれる情報が格納されて"
18209 "いる。 このファイルは人間に可読なように設計されている。 キーワードと値のリス"
18210 "トが含まれ、いろいろなタイプのレゾルバ情報を提供する。 設定ファイルは DNS 情"
18211 "報の信頼できる情報源とみなされる (例えば、このファイルからの DNSSEC AD ビット"
18212 "情報は変更されずにそのまま返される)。"
18213
18214 #. type: Plain text
18215 #: build/C/man5/resolv.conf.5:46
18216 msgid ""
18217 "If this file does not exist, only the name server on the local machine will "
18218 "be queried; the domain name is determined from the hostname and the domain "
18219 "search path is constructed from the domain name."
18220 msgstr ""
18221 "このファイルが存在しない場合、問い合わせはローカルマシン上の\n"
18222 "ネームサーバに対してのみ行われる。ドメイン名はホスト名から決定され、\n"
18223 "ドメインの検索パスはドメイン名から作成される。"
18224
18225 #. type: Plain text
18226 #: build/C/man5/resolv.conf.5:48
18227 msgid "The different configuration options are:"
18228 msgstr "この状態を変更するための設定オプションには、以下のようなものがある。"
18229
18230 #. type: TP
18231 #: build/C/man5/resolv.conf.5:48
18232 #, no-wrap
18233 msgid "B<nameserver> Name server IP address"
18234 msgstr "B<nameserver> ネームサーバの IP アドレス"
18235
18236 #. type: Plain text
18237 #: build/C/man5/resolv.conf.5:65
18238 msgid ""
18239 "Internet address of a name server that the resolver should query, either an "
18240 "IPv4 address (in dot notation), or an IPv6 address in colon (and possibly "
18241 "dot) notation as per RFC 2373.  Up to B<MAXNS> (currently 3, see "
18242 "I<E<lt>resolv.hE<gt>>) name servers may be listed, one per keyword.  If "
18243 "there are multiple servers, the resolver library queries them in the order "
18244 "listed.  If no B<nameserver> entries are present, the default is to use the "
18245 "name server on the local machine.  (The algorithm used is to try a name "
18246 "server, and if the query times out, try the next, until out of name servers, "
18247 "then repeat trying all the name servers until a maximum number of retries "
18248 "are made.)"
18249 msgstr ""
18250 "レゾルバが問い合わせをするネームサーバのインターネットアドレス。 アドレスに"
18251 "は IPv4 アドレスか IPv6 アドレスを指定する。 IPv4 アドレスはドット表記で、 "
18252 "IPv6 アドレスは RFC 2373 で定められたコロン表記 (おそらくドット表記も可) で指"
18253 "定する。 このキーワード 1 つごとに 1 台づつ、 B<MAXNS> 台 (現状では 3 台、"
18254 "I<E<lt>resolv.hE<gt>> を参照) までのネームサーバをリストできる。 複数のサーバ"
18255 "が指定された場合、レゾルバライブラリは リストされた順に問い合わせを行う。 "
18256 "B<nameserver> エントリーがない場合、 デフォルトではローカルマシン上のネーム"
18257 "サーバが使われる。 (ここで使われるアルゴリズムは以下のようなものである。 はじ"
18258 "めにネームサーバに問い合わせを試みる。 この問い合わせがタイムアウトになった場"
18259 "合、 次のネームサーバに問い合わせを試みる。 これをネームサーバがなくなるまで"
18260 "続ける。 それでも応答がない場合は、リトライ最大回数に達するまで 全てのネーム"
18261 "サーバに問い合わせを繰り返す。)"
18262
18263 #. type: TP
18264 #: build/C/man5/resolv.conf.5:65
18265 #, no-wrap
18266 msgid "B<domain> Local domain name."
18267 msgstr "B<domain> ローカルドメイン名"
18268
18269 #. type: Plain text
18270 #: build/C/man5/resolv.conf.5:76
18271 msgid ""
18272 "Most queries for names within this domain can use short names relative to "
18273 "the local domain.  If set to \\(aq.\\(aq, the root domain is considered.  If "
18274 "no B<domain> entry is present, the domain is determined from the local "
18275 "hostname returned by B<gethostname>(2); the domain part is taken to be "
18276 "everything after the first \\(aq.\\(aq.  Finally, if the hostname does not "
18277 "contain a domain part, the root domain is assumed."
18278 msgstr ""
18279 "このドメインにある名前の問い合わせのほとんどに、 このローカルドメインに対する"
18280 "短い名前を使用することができる。 \\(aq.\\(aq が設定された場合、 ルートドメイ"
18281 "ンが指定されたとみなされる。 B<domain> エントリーがない場合、ドメイン名は "
18282 "B<gethostname>(2)  で返されるローカルホスト名から決定され、 最初の \\(aq."
18283 "\\(aq 以降の全ての部分がドメイン名とされる。 このホスト名にもドメイン部を含ん"
18284 "でいない場合、ルートドメインが仮定される。"
18285
18286 #. type: TP
18287 #: build/C/man5/resolv.conf.5:76
18288 #, no-wrap
18289 msgid "B<search> Search list for host-name lookup."
18290 msgstr "B<search> ホスト名ルックアップのための検索リスト"
18291
18292 #.  When having a resolv.conv with a line
18293 #.   search subdomain.domain.tld domain.tld
18294 #.  and doing a hostlookup, for example by
18295 #.   ping host.anothersubdomain
18296 #.  it sends dns-requests for
18297 #.   host.anothersubdomain.
18298 #.   host.anothersubdomain.subdomain.domain.tld.
18299 #.   host.anothersubdomain.domain.tld.
18300 #.  thus not only causing unnecessary traffic for the root-dns-servers
18301 #.  but broadcasting information to the outside and making man-in-the-middle
18302 #.  attacks possible.
18303 #. type: Plain text
18304 #: build/C/man5/resolv.conf.5:106
18305 msgid ""
18306 "The search list is normally determined from the local domain name; by "
18307 "default, it contains only the local domain name.  This may be changed by "
18308 "listing the desired domain search path following the I<search> keyword with "
18309 "spaces or tabs separating the names.  Resolver queries having fewer than "
18310 "I<ndots> dots (default is 1) in them will be attempted using each component "
18311 "of the search path in turn until a match is found.  For environments with "
18312 "multiple subdomains please read B<options ndots:>I<n> below to avoid man-in-"
18313 "the-middle attacks and unnecessary traffic for the root-dns-servers.  Note "
18314 "that this process may be slow and will generate a lot of network traffic if "
18315 "the servers for the listed domains are not local, and that queries will time "
18316 "out if no server is available for one of the domains."
18317 msgstr ""
18318 "検索リストは通常ローカルドメイン名から決定される。 デフォルトでは、検索リスト"
18319 "はローカルドメイン名のみである。 これを変更するには、I<search> キーワードの後"
18320 "に 希望するドメイン検索パスをスペースまたはタブで区切ってリストすればよい。 "
18321 "ドットの数が I<ndots> (デフォルトでは 1) より少ないレゾルバの問い合わせは、 "
18322 "一致するものが見つかるまで検索パスの各要素を順に使って試す。 複数のサブドメイ"
18323 "ンを持つ環境では、 第三者による攻撃 (man-in-the-middle attack) と ルート DNS "
18324 "サーバへの不必要なトラフィックを避けるために、 以下の B<options ndots:>I<n> "
18325 "を読んでほしい。 このプロセスは遅く、リストされたドメインがローカルのものでな"
18326 "い場合、 多大なネットワークトラフィックを発生させることに注意すること。 さら"
18327 "に、これらのドメインのいずれかひとつにでも適切なサーバがない場合、 問い合わせ"
18328 "がタイムアウトになる点にも注意すること。"
18329
18330 #. type: Plain text
18331 #: build/C/man5/resolv.conf.5:109
18332 msgid ""
18333 "The search list is currently limited to six domains with a total of 256 "
18334 "characters."
18335 msgstr "現状では、検索リストは 6 ドメイン・計 256 文字に制限されている。"
18336
18337 #. type: TP
18338 #: build/C/man5/resolv.conf.5:109
18339 #, no-wrap
18340 msgid "B<sortlist>"
18341 msgstr "B<sortlist>"
18342
18343 #. type: Plain text
18344 #: build/C/man5/resolv.conf.5:122
18345 msgid ""
18346 "This option allows addresses returned by B<gethostbyname>(3)  to be sorted.  "
18347 "A sortlist is specified by IP-address-netmask pairs.  The netmask is "
18348 "optional and defaults to the natural netmask of the net.  The IP address and "
18349 "optional network pairs are separated by slashes.  Up to 10 pairs may be "
18350 "specified.  Here is an example:"
18351 msgstr ""
18352 "このオプションを使うと、 B<gethostbyname>(3)  で返されるアドレスをソートさせ"
18353 "ることができる。 sortlist は IP アドレスとネットマスクのペアで指定される。 "
18354 "ネットマスクは省略可能であり、 デフォルトではネットに対するデフォルトのネット"
18355 "マスクである。 IP アドレスとオプションのネットマスクのペアはスラッシュで区切"
18356 "る。 最大 10 組のペアを指定できる。 以下に例を示す。"
18357
18358 #. type: Plain text
18359 #: build/C/man5/resolv.conf.5:125
18360 msgid "sortlist 130.155.160.0/255.255.240.0 130.155.0.0"
18361 msgstr "sortlist 130.155.160.0/255.255.240.0 130.155.0.0"
18362
18363 #. type: TP
18364 #: build/C/man5/resolv.conf.5:127
18365 #, no-wrap
18366 msgid "B<options>"
18367 msgstr "B<options>"
18368
18369 #. type: Plain text
18370 #: build/C/man5/resolv.conf.5:131
18371 msgid ""
18372 "Options allows certain internal resolver variables to be modified.  The "
18373 "syntax is"
18374 msgstr ""
18375 "options により、レゾルバの内部変数を変更することができる。 書式は以下の通りで"
18376 "ある。"
18377
18378 #. type: Plain text
18379 #: build/C/man5/resolv.conf.5:134
18380 msgid "B<options> I<option> I<...>"
18381 msgstr "B<options> I<option> I<...>"
18382
18383 #. type: Plain text
18384 #: build/C/man5/resolv.conf.5:136
18385 msgid "where I<option> is one of the following:"
18386 msgstr "ここで I<option> は次のうちのいずれかである。"
18387
18388 #. type: TP
18389 #: build/C/man5/resolv.conf.5:136
18390 #, no-wrap
18391 msgid "B<debug>"
18392 msgstr "B<debug>"
18393
18394 #.  Since glibc 2.2?
18395 #. type: Plain text
18396 #: build/C/man5/resolv.conf.5:145
18397 msgid ""
18398 "sets B<RES_DEBUG> in I<_res.options> (effective only if glibc was built with "
18399 "debug support; see B<resolver>(3))."
18400 msgstr ""
18401 "B<RES_DEBUG> を I<_res.options> にセットする (glibc がデバッグを有効にしてコ"
18402 "ンパイルされている場合にのみ有効である; B<resolver>(3) を参照)。"
18403
18404 #. type: TP
18405 #: build/C/man5/resolv.conf.5:145
18406 #, no-wrap
18407 msgid "B<ndots:>I<n>"
18408 msgstr "B<ndots:>I<n>"
18409
18410 #.  Since glibc 2.2
18411 #. type: Plain text
18412 #: build/C/man5/resolv.conf.5:159
18413 msgid ""
18414 "sets a threshold for the number of dots which must appear in a name given to "
18415 "B<res_query>(3)  (see B<resolver>(3))  before an I<initial absolute query> "
18416 "will be made.  The default for I<n> is 1, meaning that if there are any dots "
18417 "in a name, the name will be tried first as an absolute name before any "
18418 "I<search list> elements are appended to it.  The value for this option is "
18419 "silently capped to 15."
18420 msgstr ""
18421 "「I<最初の完全な名前での問い合わせ>が実行される前に、 B<res_query>(3)  "
18422 "(B<resolver>(3)  を参照) に与えられる名前に含まれているべきドットの数の閾値」"
18423 "を設定する。 I<n> のデフォルトは 1 である。 これは、名前にドットがある場合、"
18424 "I<search list> の要素が付加される前に、 その名前が完全な名前として最初に試さ"
18425 "れるということを意味している。 このオプションの値の上限は 15 であり、黙ってこ"
18426 "の値まで切り詰められる。"
18427
18428 #. type: TP
18429 #: build/C/man5/resolv.conf.5:159
18430 #, no-wrap
18431 msgid "B<timeout:>I<n>"
18432 msgstr "B<timeout:>I<n>"
18433
18434 #.  Since glibc 2.2
18435 #. type: Plain text
18436 #: build/C/man5/resolv.conf.5:170
18437 msgid ""
18438 "sets the amount of time the resolver will wait for a response from a remote "
18439 "name server before retrying the query via a different name server.  Measured "
18440 "in seconds, the default is B<RES_TIMEOUT> (currently 5, see I<E<lt>resolv."
18441 "hE<gt>>).  The value for this option is silently capped to 30."
18442 msgstr ""
18443 "「レゾルバが他のネームサーバで問い合わせをリトライする前に、 リモートネーム"
18444 "サーバからの応答を待つ時間」を設定する。 単位は秒で、デフォルトは "
18445 "B<RES_TIMEOUT> である (現状では 5 秒、I<E<lt>resolv.hE<gt>> を参照)。 このオ"
18446 "プションの値の上限は 30 であり、黙ってこの値まで切り詰められる。"
18447
18448 #. type: TP
18449 #: build/C/man5/resolv.conf.5:170
18450 #, no-wrap
18451 msgid "B<attempts:>I<n>"
18452 msgstr "B<attempts:>I<n>"
18453
18454 #. type: Plain text
18455 #: build/C/man5/resolv.conf.5:179
18456 msgid ""
18457 "sets the number of times the resolver will send a query to its name servers "
18458 "before giving up and returning an error to the calling application.  The "
18459 "default is B<RES_DFLRETRY> (currently 2, see I<E<lt>resolv.hE<gt>>).  The "
18460 "value for this option is silently capped to 5."
18461 msgstr ""
18462 "「レゾルバが諦めて呼び出し元のアプリケーションにエラーを返すまでに、 ネーム"
18463 "サーバに問い合わせを行う回数」を設定する。 デフォルトは B<RES_DFLRETRY> 回で"
18464 "ある (現状では 2 回、I<E<lt>resolv.hE<gt>> を参照)。 このオプションの値の上限"
18465 "は 5 であり、黙ってこの値まで切り詰められる。"
18466
18467 #. type: TP
18468 #: build/C/man5/resolv.conf.5:179
18469 #, no-wrap
18470 msgid "B<rotate>"
18471 msgstr "B<rotate>"
18472
18473 #.  Since glibc 2.2
18474 #. type: Plain text
18475 #: build/C/man5/resolv.conf.5:189
18476 msgid ""
18477 "sets B<RES_ROTATE> in I<_res.options>, which causes round-robin selection of "
18478 "name servers from among those listed.  This has the effect of spreading the "
18479 "query load among all listed servers, rather than having all clients try the "
18480 "first listed server first every time."
18481 msgstr ""
18482 "I<_res.options> に RES_ROTATE を設定する。リストされているネームサーバから選"
18483 "ぶときに、ラウンドロビン (round-robin) 選択を行わせる。リストされている全ての"
18484 "サーバで問い合わせの負荷を分散する効果があり、最初にリストされたサーバに全て"
18485 "のクライアントが毎回最初に問い合わせを行うわけではなくなる。"
18486
18487 #. type: TP
18488 #: build/C/man5/resolv.conf.5:189
18489 #, no-wrap
18490 msgid "B<no-check-names>"
18491 msgstr "B<no-check-names>"
18492
18493 #.  since glibc 2.2
18494 #. type: Plain text
18495 #: build/C/man5/resolv.conf.5:199
18496 msgid ""
18497 "sets B<RES_NOCHECKNAME> in I<_res.options>, which disables the modern BIND "
18498 "checking of incoming hostnames and mail names for invalid characters such as "
18499 "underscore (_), non-ASCII, or control characters."
18500 msgstr ""
18501 "I<_res.options> に B<RES_NOCHECKNAME> を設定する。 入ってくるホスト名とメール"
18502 "アドレスに、 アンダースコア (_)・ASCII 以外の文字・制御文字といった 不正な文"
18503 "字が含まれていないかを調べる 最近の BIND のチェックを無効にする。"
18504
18505 #. type: TP
18506 #: build/C/man5/resolv.conf.5:199
18507 #, no-wrap
18508 msgid "B<inet6>"
18509 msgstr "B<inet6>"
18510
18511 #.  Since glibc 2.2
18512 #. type: Plain text
18513 #: build/C/man5/resolv.conf.5:210
18514 msgid ""
18515 "sets B<RES_USE_INET6> in I<_res.options>.  This has the effect of trying a "
18516 "AAAA query before an A query inside the B<gethostbyname>(3)  function, and "
18517 "of mapping IPv4 responses in IPv6 \"tunneled form\" if no AAAA records are "
18518 "found but an A record set exists."
18519 msgstr ""
18520 "I<_res.options> に B<RES_USE_INET6> を設定する。このオプションが設定される"
18521 "と、 B<gethostbyname>(3)  関数の内部で A レコードの問い合わせを行う前に AAAA "
18522 "レコードの問い合わせを行うようになる。 また、AAAA レコードは見つからないが A "
18523 "レコードセットが存在する場合に、 IPv4 の応答を IPv6「トンネル形式」にマップす"
18524 "るようになる。"
18525
18526 #. type: TP
18527 #: build/C/man5/resolv.conf.5:210
18528 #, no-wrap
18529 msgid "B<ip6-bytestring> (since glibc 2.3.4)"
18530 msgstr "B<ip6-bytestring> (glibc 2.3.4 以降)"
18531
18532 #. type: Plain text
18533 #: build/C/man5/resolv.conf.5:219
18534 msgid ""
18535 "sets B<RES_USE_BSTRING> in I<_res.options>.  This causes reverse IPv6 "
18536 "lookups to be made using the bit-label format described in RFC\\ 2673; if "
18537 "this option is not set, then nibble format is used."
18538 msgstr ""
18539 "I<_res.options> に B<RES_USE_BSTRING> を設定する。このオプションが設定される"
18540 "と、IPv6 アドレスの逆引きで RFC\\ 2673 で規定された bit-label 形式が使用され"
18541 "るようになる。 このオプションが設定されない場合、nibble 形式が使用される。"
18542
18543 #. type: TP
18544 #: build/C/man5/resolv.conf.5:219
18545 #, no-wrap
18546 msgid "B<ip6-dotint>/B<no-ip6-dotint> (since glibc 2.3.4)"
18547 msgstr "B<ip6-dotint>/B<no-ip6-dotint> (glibc 2.3.4 以降)"
18548
18549 #. type: Plain text
18550 #: build/C/man5/resolv.conf.5:236
18551 msgid ""
18552 "Clear/set B<RES_NOIP6DOTINT> in I<_res.options>.  When this option is clear "
18553 "(B<ip6-dotint>), reverse IPv6 lookups are made in the (deprecated)  I<ip6."
18554 "int> zone; when this option is set (B<no-ip6-dotint>), reverse IPv6 lookups "
18555 "are made in the I<ip6.arpa> zone by default.  This option is set by default."
18556 msgstr ""
18557 "I<_res.options> への B<RES_NOIP6DOTINT> のセット/クリアを行う。 このオプショ"
18558 "ンがクリアされると (B<ip6-dotint>)、 IPv6 アドレスの逆引きが (非推奨の)  "
18559 "I<ip6.int> ゾーンで行われるようになり、 このオプションがセットされると (B<no-"
18560 "ip6-dotint>)、 IPv6 アドレスの逆引きがデフォルトの I<ip6.arpa> ゾーンで行われ"
18561 "るようになる。 このオプションはデフォルトでセットされる。"
18562
18563 #. type: TP
18564 #: build/C/man5/resolv.conf.5:236
18565 #, no-wrap
18566 msgid "B<edns0> (since glibc 2.6)"
18567 msgstr "B<edns0> (glibc 2.6 以降)"
18568
18569 #. type: Plain text
18570 #: build/C/man5/resolv.conf.5:243
18571 msgid ""
18572 "sets B<RES_USE_EDNSO> in I<_res.options>.  This enables support for the DNS "
18573 "extensions described in RFC\\ 2671."
18574 msgstr ""
18575 "I<_res.options> に B<RES_USE_EDNSO> をセットする。これにより、RFC\\ 2671 で規"
18576 "定されている DNS 拡張のサポートが有効になる。"
18577
18578 #. type: TP
18579 #: build/C/man5/resolv.conf.5:243
18580 #, no-wrap
18581 msgid "B<single-request> (since glibc 2.10)"
18582 msgstr "B<single-request> (glibc 2.10 以降)"
18583
18584 #. type: Plain text
18585 #: build/C/man5/resolv.conf.5:256
18586 msgid ""
18587 "sets B<RES_SNGLKUP> in I<_res.options>.  By default, glibc performs IPv4 and "
18588 "IPv6 lookups in parallel since version 2.9.  Some appliance DNS servers "
18589 "cannot handle these queries properly and make the requests time out.  This "
18590 "option disables the behavior and makes glibc perform the IPv6 and IPv4 "
18591 "requests sequentially (at the cost of some slowdown of the resolving "
18592 "process)."
18593 msgstr ""
18594 "I<_res.options> に B<RES_SNGLKUP> をセットする。\n"
18595 "glibc バージョン 2.9 以降では、 glibc はデフォルトでは\n"
18596 "IPv4 と IPv6 の検索を並行して実行する。\n"
18597 "アプライアンス DNS サーバの中には、このような問い合わせを\n"
18598 "適切に処理できず、検索要求がタイムアウトになってしまう。\n"
18599 "このオプションをセットすると、このデフォルトの動作が無効になり、\n"
18600 "glibc は IPv6 と IPv4 の検索を順番に実行するようになる\n"
18601 "(名前解決処理が若干遅くなるというデメリットがある)。"
18602
18603 #. type: TP
18604 #: build/C/man5/resolv.conf.5:256
18605 #, no-wrap
18606 msgid "B<single-request-reopen> (since glibc 2.9)"
18607 msgstr "B<single-request-reopen> (glibc 2.9 以降)"
18608
18609 #. type: Plain text
18610 #: build/C/man5/resolv.conf.5:264
18611 msgid ""
18612 "The resolver uses the same socket for the A and AAAA requests.  Some "
18613 "hardware mistakenly sends back only one reply.  When that happens the client "
18614 "system will sit and wait for the second reply.  Turning this option on "
18615 "changes this behavior so that if two requests from the same port are not "
18616 "handled correctly it will close the socket and open a new one before sending "
18617 "the second request."
18618 msgstr ""
18619 "リゾルバは同じソケットを使って A レコードと AAAA レコードの検索要求を行う。 "
18620 "いくつかのハードウェアは実装が間違っており、応答を一つしか返さない。 この状況"
18621 "になると、クライアントシステムは 2 番目の応答を待ち続けてしまう。 このオプ"
18622 "ションを有効にすると、この動作が変更され、 同じポートからの 2 つの検索要求が"
18623 "正しく処理されなかった場合、 2 番目の検索要求を送信する前にソケットをクローズ"
18624 "し 新しいソケットをオープンするようになる。"
18625
18626 #. type: TP
18627 #: build/C/man5/resolv.conf.5:264
18628 #, no-wrap
18629 msgid "B<no-tld-query> (since glibc 2.14)"
18630 msgstr "B<no-tld-query> (glibc 2.14 以降)"
18631
18632 #. type: Plain text
18633 #: build/C/man5/resolv.conf.5:275
18634 msgid ""
18635 "sets RES_NOTLDQUERY in I<_res.options>.  This option causes "
18636 "B<res_nsearch>()  to not attempt to resolve an unqualified name as if it "
18637 "were a top level domain (TLD).  This option can cause problems if the site "
18638 "has ``localhost'' as a TLD rather than having localhost on one or more "
18639 "elements of the search list.  This option has no effect if neither "
18640 "RES_DEFNAMES or RES_DNSRCH is set."
18641 msgstr ""
18642 "RES_NOTLDQUERY を I<_res.options> にセットする。 このオプションを設定する"
18643 "と、 B<res_nsearch>() が完全なドメイン名ではない名前のトップレベルドメイン "
18644 "(TLD) としての検索を行わなくなる。 これにより、localhost に検索リストの要素を"
18645 "つけるのではなく、``localhost'' を TLD として設定しているようなサイトでは問題"
18646 "が起こる可能性がある。 RES_DEFNAMES も RES_DNSRCH もセットされていない場合に"
18647 "は、このオプションは効果はない。"
18648
18649 #. type: Plain text
18650 #: build/C/man5/resolv.conf.5:280
18651 msgid ""
18652 "The I<domain> and I<search> keywords are mutually exclusive.  If more than "
18653 "one instance of these keywords is present, the last instance wins."
18654 msgstr ""
18655 "I<domain> と I<search> キーワードは、互いに排他的である。 これらのキーワード"
18656 "が 2 つ以上記述されている場合、 最後に記述されているものが有効になる。"
18657
18658 #. type: Plain text
18659 #: build/C/man5/resolv.conf.5:285
18660 msgid ""
18661 "The I<search> keyword of a system's I<resolv.conf> file can be overridden on "
18662 "a per-process basis by setting the environment variable B<LOCALDOMAIN> to a "
18663 "space-separated list of search domains."
18664 msgstr ""
18665 "システムの I<resolv.conf> ファイルにある I<search> キーワードは、 スペースで"
18666 "区切った検索ドメインのリストを 環境変数 B<LOCALDOMAIN> に設定することにより、"
18667 "各プロセス毎に上書きすることができる。"
18668
18669 #. type: Plain text
18670 #: build/C/man5/resolv.conf.5:291
18671 msgid ""
18672 "The I<options> keyword of a system's I<resolv.conf> file can be amended on a "
18673 "per-process basis by setting the environment variable B<RES_OPTIONS> to a "
18674 "space-separated list of resolver options as explained above under B<options>."
18675 msgstr ""
18676 "システムの I<resolv.conf> ファイルにある I<options> キーワードは、 上の "
18677 "B<options> セクションで説明したように、 スペースで区切ったレゾルバオプション"
18678 "のリストを 環境変数 B<RES_OPTIONS> に設定することにより、各プロセス毎に修正す"
18679 "ることができる。"
18680
18681 #. type: Plain text
18682 #: build/C/man5/resolv.conf.5:295
18683 msgid ""
18684 "The keyword and value must appear on a single line, and the keyword (e.g., "
18685 "B<nameserver>) must start the line.  The value follows the keyword, "
18686 "separated by white space."
18687 msgstr ""
18688 "キーワードと値は同じ行に書かなければならない。 また、(B<nameserver> のよう"
18689 "な) キーワードが行の先頭になければならない。 値はキーワードの後にスペースで区"
18690 "切って続ける。"
18691
18692 #. type: Plain text
18693 #: build/C/man5/resolv.conf.5:298
18694 msgid ""
18695 "Lines that contain a semicolon (;) or hash character (#)  in the first "
18696 "column are treated as comments."
18697 msgstr "セミコロン (;) かハッシュ文字 (#) で始まる行はコメントとして扱われる。"
18698
18699 #. type: Plain text
18700 #: build/C/man5/resolv.conf.5:301
18701 msgid "I</etc/resolv.conf>, I<E<lt>resolv.hE<gt>>"
18702 msgstr "I</etc/resolv.conf>, I<E<lt>resolv.hE<gt>>"
18703
18704 #. type: Plain text
18705 #: build/C/man5/resolv.conf.5:306
18706 msgid "B<gethostbyname>(3), B<resolver>(3), B<hostname>(7), B<named>(8)"
18707 msgstr "B<gethostbyname>(3), B<resolver>(3), B<hostname>(7), B<named>(8)"
18708
18709 #. type: Plain text
18710 #: build/C/man5/resolv.conf.5:308
18711 msgid "Name Server Operations Guide for BIND"
18712 msgstr "BIND のネームサーバオペレーションガイド"
18713
18714 #. type: TH
18715 #: build/C/man3/resolver.3:32
18716 #, no-wrap
18717 msgid "RESOLVER"
18718 msgstr "RESOLVER"
18719
18720 #. type: Plain text
18721 #: build/C/man3/resolver.3:36
18722 msgid ""
18723 "res_init, res_query, res_search, res_querydomain, res_mkquery, res_send, "
18724 "dn_comp, dn_expand - resolver routines"
18725 msgstr ""
18726 "res_init, res_query, res_search, res_querydomain, res_mkquery, res_send, "
18727 "dn_comp, dn_expand - レゾルバルーチン"
18728
18729 #. type: Plain text
18730 #: build/C/man3/resolver.3:42
18731 #, no-wrap
18732 msgid ""
18733 "B<#include E<lt>netinet/in.hE<gt>>\n"
18734 "B<#include E<lt>arpa/nameser.hE<gt>>\n"
18735 "B<#include E<lt>resolv.hE<gt>>\n"
18736 "B<extern struct __res_state _res;>\n"
18737 msgstr ""
18738 "B<#include E<lt>netinet/in.hE<gt>>\n"
18739 "B<#include E<lt>arpa/nameser.hE<gt>>\n"
18740 "B<#include E<lt>resolv.hE<gt>>\n"
18741 "B<extern struct __res_state _res;>\n"
18742
18743 #. type: Plain text
18744 #: build/C/man3/resolver.3:44
18745 #, no-wrap
18746 msgid "B<int res_init(void);>\n"
18747 msgstr "B<int res_init(void);>\n"
18748
18749 #. type: Plain text
18750 #: build/C/man3/resolver.3:46
18751 #, no-wrap
18752 msgid "B<int res_query(const char *>I<dname>B<, int >I<class>B<, int >I<type>B<,>\n"
18753 msgstr "B<int res_query(const char *>I<dname>B<, int >I<class>B<, int >I<type>B<,>\n"
18754
18755 #. type: Plain text
18756 #: build/C/man3/resolver.3:48 build/C/man3/resolver.3:53
18757 #: build/C/man3/resolver.3:70
18758 #, no-wrap
18759 msgid "B<unsigned char *>I<answer>B<, int >I<anslen>B<);>\n"
18760 msgstr "B<unsigned char *>I<answer>B<, int >I<anslen>B<);>\n"
18761
18762 #. type: Plain text
18763 #: build/C/man3/resolver.3:51
18764 #, no-wrap
18765 msgid "B<int res_search(const char *>I<dname>B<, int >I<class>B<, int >I<type>B<,>\n"
18766 msgstr "B<int res_search(const char *>I<dname>B<, int >I<class>B<, int >I<type>B<,>\n"
18767
18768 #. type: Plain text
18769 #: build/C/man3/resolver.3:56
18770 #, no-wrap
18771 msgid "B<int res_querydomain(const char *>I<name>B<, const char *>I<domain>B<,>\n"
18772 msgstr "B<int res_querydomain(const char *>I<name>B<, const char *>I<domain>B<,>\n"
18773
18774 #. type: Plain text
18775 #: build/C/man3/resolver.3:59
18776 #, no-wrap
18777 msgid ""
18778 "B<int >I<class>B<, int >I<type>B<, unsigned char *>I<answer>B<,>\n"
18779 "B<int >I<anslen>B<);>\n"
18780 msgstr ""
18781 "B<int >I<class>B<, int >I<type>B<, unsigned char *>I<answer>B<,>\n"
18782 "B<int >I<anslen>B<);>\n"
18783
18784 #. type: Plain text
18785 #: build/C/man3/resolver.3:62
18786 #, no-wrap
18787 msgid "B<int res_mkquery(int >I<op>B<, const char *>I<dname>B<, int >I<class>B<,>\n"
18788 msgstr "B<int res_mkquery(int >I<op>B<, const char *>I<dname>B<, int >I<class>B<,>\n"
18789
18790 #. type: Plain text
18791 #: build/C/man3/resolver.3:65
18792 #, no-wrap
18793 msgid ""
18794 "B<int >I<type>B<, const unsigned char *>I<data>B<, int >I<datalen>B<,>\n"
18795 "B<const unsigned char *>I<newrr>B<, unsigned char *>I<buf>B<, int >I<buflen>B<);>\n"
18796 msgstr ""
18797 "B<int >I<type>B<, const unsigned char *>I<data>B<, int >I<datalen>B<,>\n"
18798 "B<const unsigned char *>I<newrr>B<, unsigned char *>I<buf>B<, int >I<buflen>B<);>\n"
18799
18800 #. type: Plain text
18801 #: build/C/man3/resolver.3:68
18802 #, no-wrap
18803 msgid "B<int res_send(const unsigned char *>I<msg>B<, int >I<msglen>B<,>\n"
18804 msgstr "B<int res_send(const unsigned char *>I<msg>B<, int >I<msglen>B<,>\n"
18805
18806 #. type: Plain text
18807 #: build/C/man3/resolver.3:73
18808 #, no-wrap
18809 msgid "B<int dn_comp(const char *>I<exp_dn>B<, unsigned char *>I<comp_dn>B<,>\n"
18810 msgstr "B<int dn_comp(const char *>I<exp_dn>B<, unsigned char *>I<comp_dn>B<,>\n"
18811
18812 #. type: Plain text
18813 #: build/C/man3/resolver.3:75
18814 #, no-wrap
18815 msgid "B<int >I<length>B<, unsigned char **>I<dnptrs>B<, unsigned char **>I<lastdnptr>B<);>\n"
18816 msgstr "B<int >I<length>B<, unsigned char **>I<dnptrs>B<, unsigned char **>I<lastdnptr>B<);>\n"
18817
18818 #. type: Plain text
18819 #: build/C/man3/resolver.3:78
18820 #, no-wrap
18821 msgid "B<int dn_expand(const unsigned char *>I<msg>B<, const unsigned char *>I<eomorig>B<,>\n"
18822 msgstr "B<int dn_expand(const unsigned char *>I<msg>B<, const unsigned char *>I<eomorig>B<,>\n"
18823
18824 #. type: Plain text
18825 #: build/C/man3/resolver.3:81
18826 #, no-wrap
18827 msgid ""
18828 "B<const unsigned char *>I<comp_dn>B<, char *>I<exp_dn>B<,>\n"
18829 "B<int >I<length>B<);>\n"
18830 msgstr ""
18831 "B<const unsigned char *>I<comp_dn>B<, char *>I<exp_dn>B<,>\n"
18832 "B<int >I<length>B<);>\n"
18833
18834 #. type: Plain text
18835 #: build/C/man3/resolver.3:88
18836 msgid ""
18837 "These functions make queries to and interpret the responses from Internet "
18838 "domain name servers."
18839 msgstr ""
18840 "これらの関数はインターネットのドメインネームサーバーに問い合わせ、 その応答を"
18841 "解釈する。"
18842
18843 #. type: Plain text
18844 #: build/C/man3/resolver.3:102
18845 msgid ""
18846 "The B<res_init>()  function reads the configuration files (see B<resolv."
18847 "conf>(5))  to get the default domain name, search order and name server "
18848 "address(es).  If no server is given, the local host is tried.  If no domain "
18849 "is given, that associated with the local host is used.  It can be overridden "
18850 "with the environment variable B<LOCALDOMAIN>.  B<res_init>()  is normally "
18851 "executed by the first call to one of the other functions."
18852 msgstr ""
18853 "B<res_init>()  関数は、デフォルトのドメイン名、検索順、ネームサーバー アドレ"
18854 "スを得るために設定ファイル (B<resolv.conf>(5) 参照) を読む。 もしサーバーが示"
18855 "されていなければローカルホストを試す。 ドメインが示されていなければローカルホ"
18856 "ストに付けられたドメインを用いる。 環境変数 B<LOCALDOMAIN> でオーバーライドで"
18857 "きる。 B<res_init>()  は、後述する関数のどれかが最初に呼び出された時、その関"
18858 "数 から実行される。"
18859
18860 #. type: Plain text
18861 #: build/C/man3/resolver.3:110
18862 msgid ""
18863 "The B<res_query>()  function queries the name server for the fully qualified "
18864 "domain name I<name> of specified I<type> and I<class>.  The reply is left in "
18865 "the buffer I<answer> of length I<anslen> supplied by the caller."
18866 msgstr ""
18867 "B<res_query>()  関数は、指定された I<type> と I<class> の 完全修飾ドメイン名 "
18868 "(FQDN) I<name> を、ネームサーバーへ問い合わせる。 応答は、呼び出した側によっ"
18869 "て用意される長さ I<anslen> の I<answer> バッファーに残される。"
18870
18871 #. type: Plain text
18872 #: build/C/man3/resolver.3:123
18873 msgid ""
18874 "The B<res_search>()  function makes a query and waits for the response like "
18875 "B<res_query>(), but in addition implements the default and search rules "
18876 "controlled by B<RES_DEFNAMES> and B<RES_DNSRCH> (see description of I<_res> "
18877 "options below)."
18878 msgstr ""
18879 "B<res_search>()  関数は、問い合わせを行い B<res_query>()  同様その応答を 待つ"
18880 "が、さらにデフォルトを実装しており B<RES_DEFNAMES> と B<RES_DNSRCH> によって"
18881 "規定される検索ルールを適用する。 (下記 I<_res> オプションの説明を参照)"
18882
18883 #. type: Plain text
18884 #: build/C/man3/resolver.3:129
18885 msgid ""
18886 "The B<res_querydomain>()  function makes a query using B<res_query>()  on "
18887 "the concatenation of I<name> and I<domain>."
18888 msgstr ""
18889 "B<res_querydomain>()  関数は I<name> と I<domain> の結合に B<res_query>()  を"
18890 "用いて問い合わせを行う。"
18891
18892 #. type: Plain text
18893 #: build/C/man3/resolver.3:132
18894 msgid ""
18895 "The following functions are lower-level routines used by B<res_query>()."
18896 msgstr "次の関数は、 B<res_query>()  で使われる下位ルーチンである。"
18897
18898 #. type: Plain text
18899 #: build/C/man3/resolver.3:143
18900 msgid ""
18901 "The B<res_mkquery>()  function constructs a query message in I<buf> of "
18902 "length I<buflen> for the domain name I<dname>.  The query type I<op> is "
18903 "usually B<QUERY>, but can be any of the types defined in I<E<lt>arpa/nameser."
18904 "hE<gt>>.  I<newrr> is currently unused."
18905 msgstr ""
18906 "B<res_mkquery>()  関数は、ドメイン名 I<dname> の為に、長さ I<buflen> の "
18907 "I<buf> に問い合わせるメッセージを作成する。 問い合わせの型 I<op> は通常 "
18908 "B<QUERY> だが、 I<E<lt>arpa/nameser.hE<gt>> で定義された型のどれでも良い。 "
18909 "I<newrr> は現在使用されていない。"
18910
18911 #. type: Plain text
18912 #: build/C/man3/resolver.3:153
18913 msgid ""
18914 "The B<res_send>()  function sends a preformatted query given in I<msg> of "
18915 "length I<msglen> and returns the answer in I<answer> which is of length "
18916 "I<anslen>.  It will call B<res_init>(), if it has not already been called."
18917 msgstr ""
18918 "B<res_send>()  関数は、長さ I<msglen> の I<msg> に決められた書式 で問い合わ"
18919 "せ、I<answer> に長さ I<anslen> の回答を返す。 まだ呼び出されていなければ "
18920 "B<res_init>()  を呼び出す。"
18921
18922 #. type: Plain text
18923 #: build/C/man3/resolver.3:166
18924 msgid ""
18925 "The B<dn_comp>()  function compresses the domain name I<exp_dn> and stores "
18926 "it in the buffer I<comp_dn> of length I<length>.  The compression uses an "
18927 "array of pointers I<dnptrs> to previously compressed names in the current "
18928 "message.  The first pointer points to the beginning of the message and the "
18929 "list ends with NULL.  The limit of the array is specified by I<lastdnptr>.  "
18930 "If I<dnptr> is NULL, domain names are not compressed.  If I<lastdnptr> is "
18931 "NULL, the list of labels is not updated."
18932 msgstr ""
18933 "B<dn_comp>()  関数はドメイン名 I<exp_dn> を圧縮して、長さ I<length> のバッ"
18934 "ファー I<comp_dn> に保存する。 圧縮にはポインター配列 I<dnptrs> を用いる。 こ"
18935 "れらのポインターは、現在のメッセージの中にある以前に圧縮された名前を指す。 最"
18936 "初のポインターはメッセージの冒頭を指し、そのリストは NULL で終わる。 配列の範"
18937 "囲は I<lastdnptr> で決められる。 I<dnptr> が NULL ならばドメイン名は圧縮され"
18938 "ない。 I<lastdnptr> が NULL ならば、そのラベルのリストはアップデートされな"
18939 "い。"
18940
18941 #. type: Plain text
18942 #: build/C/man3/resolver.3:175
18943 msgid ""
18944 "The B<dn_expand>()  function expands the compressed domain name I<comp_dn> "
18945 "to a full domain name, which is placed in the buffer I<exp_dn> of size "
18946 "I<length>.  The compressed name is contained in a query or reply message, "
18947 "and I<msg> points to the beginning of the message."
18948 msgstr ""
18949 "B<dn_expand>()  関数は、圧縮されたドメイン名 I<comp_dn> からサイズ が "
18950 "I<length> の I<exp_dn> バッファーに正式なドメイン名を展開する。 その圧縮され"
18951 "た名前は、問い合わせ、または応答メッセージに含まれていて、 I<msg> がメッセー"
18952 "ジの冒頭を指す。"
18953
18954 #. type: Plain text
18955 #: build/C/man3/resolver.3:183
18956 msgid ""
18957 "The resolver routines use global configuration and state information "
18958 "contained in the structure I<_res>, which is defined in I<E<lt>resolv."
18959 "hE<gt>>.  The only field that is normally manipulated by the user is I<_res."
18960 "options>.  This field can contain the bitwise \"OR\" of the following "
18961 "options:"
18962 msgstr ""
18963 "レゾルバルーチンは、I<E<lt>resolv.hE<gt>> に定義された I<_res> 構造体に 含ま"
18964 "れている全体的な設定と状態の情報を使用する。 通常ユーザーに操作できる項目は "
18965 "I<_res.options> だけである。 この項目は以下のオプションのビット単位の論理和に"
18966 "できる。"
18967
18968 #. type: TP
18969 #: build/C/man3/resolver.3:183
18970 #, no-wrap
18971 msgid "B<RES_INIT>"
18972 msgstr "B<RES_INIT>"
18973
18974 #. type: Plain text
18975 #: build/C/man3/resolver.3:188
18976 msgid "True if B<res_init>()  has been called."
18977 msgstr "B<res_init>()  が呼び出されていれば真。"
18978
18979 #. type: TP
18980 #: build/C/man3/resolver.3:188
18981 #, no-wrap
18982 msgid "B<RES_DEBUG>"
18983 msgstr "B<RES_DEBUG>"
18984
18985 #.  See resolv/README.
18986 #.  Support for RES_DEBUG was made conditional in glibc 2.2.
18987 #. type: Plain text
18988 #: build/C/man3/resolver.3:195
18989 msgid ""
18990 "Print debugging messages.  This option is available only if glibc was built "
18991 "with debugging enabled, which is not the default."
18992 msgstr ""
18993 "デバッグ情報を表示する。このオプションは、 glibc がデバッグを有効にしてコンパ"
18994 "イルされている場合にのみ利用できる。 デフォルトでは glibc のデバッグは有効に"
18995 "なっていない。"
18996
18997 #. type: TP
18998 #: build/C/man3/resolver.3:195
18999 #, no-wrap
19000 msgid "B<RES_AAONLY>"
19001 msgstr "B<RES_AAONLY>"
19002
19003 #. type: Plain text
19004 #: build/C/man3/resolver.3:202
19005 msgid ""
19006 "Accept authoritative answers only.  B<res_send>()  continues until it finds "
19007 "an authoritative answer or returns an error.  [Not currently implemented]."
19008 msgstr ""
19009 "権威付けされた (authoritative) 回答のみ受け入れる。 B<res_send>()  は、最終的"
19010 "に権威付けされた回答を得られるか、エラーが返される まで続行する。 [現在実装さ"
19011 "れていない]"
19012
19013 #. type: TP
19014 #: build/C/man3/resolver.3:202
19015 #, no-wrap
19016 msgid "B<RES_USEVC>"
19017 msgstr "B<RES_USEVC>"
19018
19019 #. type: Plain text
19020 #: build/C/man3/resolver.3:205
19021 msgid "Use TCP connections for queries rather than UDP datagrams."
19022 msgstr "問い合わせに UDP データグラムではなく TCP 接続を用いる。"
19023
19024 #. type: TP
19025 #: build/C/man3/resolver.3:205
19026 #, no-wrap
19027 msgid "B<RES_PRIMARY>"
19028 msgstr "B<RES_PRIMARY>"
19029
19030 #. type: Plain text
19031 #: build/C/man3/resolver.3:208
19032 msgid "Query primary domain name server only."
19033 msgstr "プライマリドメインネームサーバーのみ問い合わせる。"
19034
19035 #. type: TP
19036 #: build/C/man3/resolver.3:208
19037 #, no-wrap
19038 msgid "B<RES_IGNTC>"
19039 msgstr "B<RES_IGNTC>"
19040
19041 #. type: Plain text
19042 #: build/C/man3/resolver.3:213
19043 msgid ""
19044 "Ignore truncation errors.  Don't retry with TCP.  [Not currently "
19045 "implemented]."
19046 msgstr ""
19047 "切り詰めエラー (truncation error) を無視する。TCP でリトライしない。 [現在実"
19048 "装されていない]"
19049
19050 #. type: TP
19051 #: build/C/man3/resolver.3:213
19052 #, no-wrap
19053 msgid "B<RES_RECURSE>"
19054 msgstr "B<RES_RECURSE>"
19055
19056 #. type: Plain text
19057 #: build/C/man3/resolver.3:220
19058 msgid ""
19059 "Set the recursion desired bit in queries.  Recursion is carried out by the "
19060 "domain name server, not by B<res_send>().  [Enabled by default]."
19061 msgstr ""
19062 "再帰要求 (recursion desired) ビットを問い合わせに設定する。 再帰は "
19063 "B<res_send>()  ではなくドメインネームサーバーによって行われる。 [デフォルトで"
19064 "有効]"
19065
19066 #. type: TP
19067 #: build/C/man3/resolver.3:220
19068 #, no-wrap
19069 msgid "B<RES_DEFNAMES>"
19070 msgstr "B<RES_DEFNAMES>"
19071
19072 #. type: Plain text
19073 #: build/C/man3/resolver.3:227
19074 msgid ""
19075 "If set, B<res_search>()  will append the default domain name to single "
19076 "component names\\(emthat is, those that do not contain a dot.  [Enabled by "
19077 "default]."
19078 msgstr ""
19079 "設定されていれば、 B<res_search>()  はデフォルトのドメイン名を一部分 のみから"
19080 "なる名前、すなわちドットを含まない名前に付け加える。 [デフォルトで有効]"
19081
19082 #. type: TP
19083 #: build/C/man3/resolver.3:227
19084 #, no-wrap
19085 msgid "B<RES_STAYOPEN>"
19086 msgstr "B<RES_STAYOPEN>"
19087
19088 #. type: Plain text
19089 #: build/C/man3/resolver.3:232
19090 msgid "Used with B<RES_USEVC> to keep the TCP connection open between queries."
19091 msgstr "問い合わせ中に TCP 接続を保つため B<RES_USEVC> と共に用いられる。"
19092
19093 #. type: TP
19094 #: build/C/man3/resolver.3:232
19095 #, no-wrap
19096 msgid "B<RES_DNSRCH>"
19097 msgstr "B<RES_DNSRCH>"
19098
19099 #. type: Plain text
19100 #: build/C/man3/resolver.3:241
19101 msgid ""
19102 "If set, B<res_search>()  will search for hostnames in the current domain and "
19103 "in parent domains.  This option is used by B<gethostbyname>(3).  [Enabled by "
19104 "default]."
19105 msgstr ""
19106 "設定されていれば、 B<res_search>()  は現在のドメインおよび親ドメインの ホスト"
19107 "名を探す。このオプションは B<gethostbyname>(3)  で用いられる。 [デフォルトで"
19108 "有効]"
19109
19110 #. type: Plain text
19111 #: build/C/man3/resolver.3:245
19112 msgid ""
19113 "This list is not complete.  You can find some other flags described in "
19114 "B<resolv.conf>(5)."
19115 msgstr ""
19116 "このリストは完全なものではない。\n"
19117 "B<resolv.conf>(5) には他にいくつかのフラグが記載されている。"
19118
19119 #. type: Plain text
19120 #: build/C/man3/resolver.3:250
19121 msgid ""
19122 "The B<res_init>()  function returns 0 on success, or -1 if an error occurs."
19123 msgstr "B<res_init>()  関数は成功すれば 0 を、エラーが発生すれば -1 を返す。"
19124
19125 #. type: Plain text
19126 #: build/C/man3/resolver.3:260
19127 msgid ""
19128 "The B<res_query>(), B<res_search>(), B<res_querydomain>(), B<res_mkquery>()  "
19129 "and B<res_send>()  functions return the length of the response, or -1 if an "
19130 "error occurs."
19131 msgstr ""
19132 "B<res_query>(), B<res_search>(), B<res_querydomain>(), B<res_mkquery>(), "
19133 "B<res_send>()  関数は応答の長さを返す。 また、エラーが発生すれば -1 を返す。"
19134
19135 #. type: Plain text
19136 #: build/C/man3/resolver.3:267
19137 msgid ""
19138 "The B<dn_comp>()  and B<dn_expand>()  functions return the length of the "
19139 "compressed name, or -1 if an error occurs."
19140 msgstr ""
19141 "B<dn_comp>()  と B<dn_expand>()  関数は圧縮されたドメイン名の長さを返す。 ま"
19142 "た、エラーが発生すれば -1 を返す。"
19143
19144 #. type: Plain text
19145 #: build/C/man3/resolver.3:271
19146 #, no-wrap
19147 msgid ""
19148 "/etc/resolv.conf          resolver configuration file\n"
19149 "/etc/host.conf            resolver configuration file\n"
19150 msgstr ""
19151 "/etc/resolv.conf          レゾルバ設定ファイル\n"
19152 "/etc/host.conf            レゾルバ設定ファイル\n"
19153
19154 #. type: Plain text
19155 #: build/C/man3/resolver.3:274
19156 msgid "4.3BSD."
19157 msgstr "4.3BSD."
19158
19159 #. type: Plain text
19160 #: build/C/man3/resolver.3:280
19161 msgid ""
19162 "B<gethostbyname>(3), B<resolv.conf>(5), B<resolver>(5), B<hostname>(7), "
19163 "B<named>(8)"
19164 msgstr ""
19165 "B<gethostbyname>(3), B<resolv.conf>(5), B<resolver>(5), B<hostname>(7), "
19166 "B<named>(8)"
19167
19168 #. type: TH
19169 #: build/C/man3/rexec.3:41
19170 #, no-wrap
19171 msgid "REXEC"
19172 msgstr "REXEC"
19173
19174 #. type: Plain text
19175 #: build/C/man3/rexec.3:44
19176 msgid "rexec, rexec_af - return stream to a remote command"
19177 msgstr "rexec, rexec_af - リモートコマンドへのストリームを返す"
19178
19179 #. type: Plain text
19180 #: build/C/man3/rexec.3:48
19181 #, no-wrap
19182 msgid ""
19183 "B<#define _BSD_SOURCE>             /* See feature_test_macros(7) */\n"
19184 "B<#include E<lt>netdb.hE<gt>>\n"
19185 msgstr ""
19186 "B<#define _BSD_SOURCE>             /* feature_test_macros(7) 参照 */\n"
19187 "B<#include E<lt>netdb.hE<gt>>\n"
19188
19189 #. type: Plain text
19190 #: build/C/man3/rexec.3:51
19191 #, no-wrap
19192 msgid ""
19193 "B<int rexec(char **>I<ahost>B<, int >I<inport>B<, const char *>I<user>B<, >\n"
19194 "B<          const char *>I<passwd>B<, const char *>I<cmd>B<, int *>I<fd2p>B<);>\n"
19195 msgstr ""
19196 "B<int rexec(char **>I<ahost>B<, int >I<inport>B<, const char *>I<user>B<, >\n"
19197 "B<          const char *>I<passwd>B<, const char *>I<cmd>B<, int *>I<fd2p>B<);>\n"
19198
19199 #. type: Plain text
19200 #: build/C/man3/rexec.3:55
19201 #, no-wrap
19202 msgid ""
19203 "B<int rexec_af(char **>I<ahost>B<, int >I<inport>B<, const char *>I<user>B<, >\n"
19204 "B<             const char *>I<passwd>B<, const char *>I<cmd>B<, int *>I<fd2p>B<,>\n"
19205 "B<             sa_family_t >I<af>B<);>\n"
19206 msgstr ""
19207 "B<int rexec_af(char **>I<ahost>B<, int >I<inport>B<, const char *>I<user>B<, >\n"
19208 "B<             const char *>I<passwd>B<, const char *>I<cmd>B<, int *>I<fd2p>B<,>\n"
19209 "B<             sa_family_t >I<af>B<);>\n"
19210
19211 #. type: Plain text
19212 #: build/C/man3/rexec.3:59
19213 msgid "This interface is obsoleted by B<rcmd>(3)."
19214 msgstr "このインターフェースは B<rcmd>(3)  によって置き換えられた。"
19215
19216 #. type: Plain text
19217 #: build/C/man3/rexec.3:78
19218 msgid ""
19219 "The B<rexec>()  function looks up the host I<*ahost> using "
19220 "B<gethostbyname>(3), returning -1 if the host does not exist.  Otherwise, "
19221 "I<*ahost> is set to the standard name of the host.  If a username and "
19222 "password are both specified, then these are used to authenticate to the "
19223 "foreign host; otherwise the environment and then the I<.netrc> file in "
19224 "user's home directory are searched for appropriate information.  If all this "
19225 "fails, the user is prompted for the information."
19226 msgstr ""
19227 "B<rexec>()  関数は B<gethostbyname>(3)  を使ってホスト I<*ahost> を探す。ホス"
19228 "トが存在しない場合は -1 を返し、それ以外の場合には I<*ahost> にそのホストの標"
19229 "準的な名前を設定する。 ユーザー名とパスワードの両方が指定された場合には、これ"
19230 "らは 接続先のホストへの認証に利用される。そうでない場合には、 適切な情報を入"
19231 "手するために、環境変数と、そのユーザーの ホームディレクトリの I<.netrc> ファ"
19232 "イルが検索される。情報が見つからなかった時には、 ユーザーに対して情報を入力す"
19233 "るプロンプトが表示される。"
19234
19235 #. type: Plain text
19236 #: build/C/man3/rexec.3:89
19237 msgid ""
19238 "The port I<inport> specifies which well-known DARPA Internet port to use for "
19239 "the connection; the call I<getservbyname(\"exec\", \"tcp\")> (see "
19240 "B<getservent>(3))  will return a pointer to a structure that contains the "
19241 "necessary port.  The protocol for connection is described in detail in "
19242 "B<rexecd>(8)."
19243 msgstr ""
19244 "ポート I<inport> には、接続に使用する DARPA Internet の well-known ポートを指"
19245 "定する。 I<getservbyname(\"exec\", \"tcp\")> を呼び出すと構造体へのポインター"
19246 "が返され (B<getservent>(3)  参照)、この構造体には必要なポートが入っている。 "
19247 "接続に使用されるプロトコルについての詳細は B<rexecd>(8)  に書かれている (訳"
19248 "注: 現在のところ存在しない)。"
19249
19250 #. type: Plain text
19251 #: build/C/man3/rexec.3:122
19252 msgid ""
19253 "If the connection succeeds, a socket in the Internet domain of type "
19254 "B<SOCK_STREAM> is returned to the caller, and given to the remote command as "
19255 "I<stdin> and I<stdout>.  If I<fd2p> is nonzero, then an auxiliary channel to "
19256 "a control process will be setup, and a descriptor for it will be placed in "
19257 "I<*fd2p>.  The control process will return diagnostic output from the "
19258 "command (unit 2) on this channel, and will also accept bytes on this channel "
19259 "as being UNIX signal numbers, to be forwarded to the process group of the "
19260 "command.  The diagnostic information returned does not include remote "
19261 "authorization failure, as the secondary connection is set up after "
19262 "authorization has been verified.  If I<fd2p> is 0, then the I<stderr> (unit "
19263 "2 of the remote command) will be made the same as the I<stdout> and no "
19264 "provision is made for sending arbitrary signals to the remote process, "
19265 "although you may be able to get its attention by using out-of-band data."
19266 msgstr ""
19267 "接続に成功すると、インターネットドメインの B<SOCK_STREAM> 型のソケットが返さ"
19268 "れ、そのソケットはリモートコマンドの 標準入力および標準出力となる。 I<fd2p> "
19269 "が 0 以外の場合、制御プロセスへの補助チャンネルがセットアップされ、 補助チャ"
19270 "ンネルのディスクリプターが I<*fd2p> に書かれる。 制御プロセスはコマンドからの"
19271 "診断メッセージ出力 (ファイルディスクリプター 2)  をこのチャンネルで返す。ま"
19272 "た、このチャンネル経由で UNIX のシグナル番号を示すバイトを受信する。受信した"
19273 "シグナルは コマンドが属すプロセスグループに転送される。 診断情報にはリモート"
19274 "の認証失敗は含まれない。なぜなら、認証の確認が行われた 後で補助チャンネルの接"
19275 "続はセットアップされるからである。 I<fd2p> が 0 の場合、標準エラー (リモート"
19276 "コマンドのファイルディスクリプター 2) は 標準出力と同様に扱われ、リモートプロ"
19277 "セスに任意のシグナルを送るための 手段は提供されない。但し、リモートプロセスに"
19278 "対してトリガーをかけるために、 帯域外データ (out-of-band data) を使うことはで"
19279 "きる。"
19280
19281 #. type: SS
19282 #: build/C/man3/rexec.3:122
19283 #, no-wrap
19284 msgid "rexec_af()"
19285 msgstr "rexec_af()"
19286
19287 #. type: Plain text
19288 #: build/C/man3/rexec.3:138
19289 msgid ""
19290 "The B<rexec>()  function works over IPv4 (B<AF_INET>).  By contrast, the "
19291 "B<rexec_af>()  function provides an extra argument, I<af>, that allows the "
19292 "caller to select the protocol.  This argument can be specified as "
19293 "B<AF_INET>, B<AF_INET6>, or B<AF_UNSPEC> (to allow the implementation to "
19294 "select the protocol)."
19295 msgstr ""
19296 "B<rexec>() 関数は IPv4 (B<AF_INET>) 上で動作する。\n"
19297 "これに対して、 B<rexec_af>() 関数は追加の引き数 I<af> があり、\n"
19298 "この引き数で呼び出し側がプロトコルを選択できる。\n"
19299 "この引き数には B<AF_INET>, B<AF_INET6>, B<AF_UNSPEC> を指定できる\n"
19300 "(B<AF_UNSPEC> は実装側がプロトコルを選択することを意味する)。"
19301
19302 #. type: Plain text
19303 #: build/C/man3/rexec.3:142
19304 msgid "The B<rexec_af>()  function was added to glibc in version 2.2."
19305 msgstr "B<rexec_af>() 関数は glibc バージョン 2.9 で追加された。"
19306
19307 #. type: Plain text
19308 #: build/C/man3/rexec.3:149
19309 msgid "The B<rexec>()  and B<rexec_af>()  functions are not thread-safe."
19310 msgstr "関数 B<rexec>() と B<rexec_af>() はスレッドセーフではない。"
19311
19312 #. type: Plain text
19313 #: build/C/man3/rexec.3:158
19314 msgid ""
19315 "These functions are not in POSIX.1-2001.  The B<rexec>()  function first "
19316 "appeared in 4.2BSD, and is present on the BSDs, Solaris, and many other "
19317 "systems.  The B<rexec_af>()  function is more recent, and less widespread."
19318 msgstr ""
19319 "これらの関数は POSIX.1-2001 にはない。B<rexec>() 関数は 4.2BSD で始めて\n"
19320 "登場し、BSD 系、Solaris や他の多くのシステムに存在する。B<rexec_af>()\n"
19321 "関数はもっと新しく、それほど広く使われているわけではない。"
19322
19323 #. type: Plain text
19324 #: build/C/man3/rexec.3:162
19325 msgid ""
19326 "The B<rexec>()  function sends the unencrypted password across the network."
19327 msgstr ""
19328 "B<rexec>()  関数はネットワークに暗号化されていないパスワードを送信する。"
19329
19330 #. type: Plain text
19331 #: build/C/man3/rexec.3:167
19332 msgid ""
19333 "The underlying service is considered a big security hole and therefore not "
19334 "enabled on many sites; see B<rexecd>(8)  for explanations."
19335 msgstr ""
19336 "基礎的なサービスにおいては大きなセキュリティホールと考えられるため、 \n"
19337 "多くのサイトで無効になっている。詳細は B<rexecd>(8) を参照。"
19338
19339 #. type: Plain text
19340 #: build/C/man3/rexec.3:170
19341 msgid "B<rcmd>(3), B<rexecd>(8)"
19342 msgstr "B<rcmd>(3), B<rexecd>(8)"
19343
19344 #. type: TH
19345 #: build/C/man5/services.5:34
19346 #, no-wrap
19347 msgid "SERVICES"
19348 msgstr "SERVICES"
19349
19350 #. type: TH
19351 #: build/C/man5/services.5:34
19352 #, no-wrap
19353 msgid "2010-05-22"
19354 msgstr "2010-05-22"
19355
19356 #. type: Plain text
19357 #: build/C/man5/services.5:37
19358 msgid "services - Internet network services list"
19359 msgstr "services - インターネット ネットワークサービス リスト"
19360
19361 #. type: Plain text
19362 #: build/C/man5/services.5:52
19363 msgid ""
19364 "B<services> is a plain ASCII file providing a mapping between human-friendly "
19365 "textual names for internet services, and their underlying assigned port "
19366 "numbers and protocol types.  Every networking program should look into this "
19367 "file to get the port number (and protocol) for its service.  The C library "
19368 "routines B<getservent>(3), B<getservbyname>(3), B<getservbyport>(3), "
19369 "B<setservent>(3), and B<endservent>(3)  support querying this file from "
19370 "programs."
19371 msgstr ""
19372 "B<services> は、人が分かりやすい形のインターネットサービスの名前と、 それらの"
19373 "サービスに割り当てられたポート番号や プロトコル種別の対応関係が書かれているテ"
19374 "キストファイルである。 ネットワーク上で動作するプログラムはすべて、 そのサー"
19375 "ビスに対応するポート番号 (とプロトコル) を得るために、 このファイルを調べる必"
19376 "要がある。 C ライブラリ関数である B<getservent>(3), B<getservbyname>(3), "
19377 "B<getservbyport>(3), B<setservent>(3), B<endservent>(3)  を利用することで、プ"
19378 "ログラムはこのファイルを調べることができる。"
19379
19380 #. type: Plain text
19381 #: build/C/man5/services.5:58
19382 msgid ""
19383 "Port numbers are assigned by the IANA (Internet Assigned Numbers Authority), "
19384 "and their current policy is to assign both TCP and UDP protocols when "
19385 "assigning a port number.  Therefore, most entries will have two entries, "
19386 "even for TCP-only services."
19387 msgstr ""
19388 "ポート番号は、IANA (Internet Assigned Numbers Authority) によって 割り当てら"
19389 "れており、現在はポート番号を割り当てる際に TCP と UDP の両方のプロトコルを割"
19390 "り当てることになっている。 そのため、ほとんどのサービスに対して、 たとえ TCP "
19391 "だけのサービスの場合であっても、対応する項目が二つあることになる。"
19392
19393 #. type: Plain text
19394 #: build/C/man5/services.5:70
19395 msgid ""
19396 "Port numbers below 1024 (so-called \"low numbered\" ports) can be bound to "
19397 "only by root (see B<bind>(2), B<tcp>(7), and B<udp>(7)).  This is so clients "
19398 "connecting to low numbered ports can trust that the service running on the "
19399 "port is the standard implementation, and not a rogue service run by a user "
19400 "of the machine.  Well-known port numbers specified by the IANA are normally "
19401 "located in this root-only space."
19402 msgstr ""
19403 "1024 より小さいポート番号 (いわゆる \"low numbered\" ポート) は 管理者 "
19404 "(root) 権限によってのみ使用することができる (B<bind>(2), B<tcp>(7), "
19405 "B<udp>(7)  参照)。 これは、これらのポートに接続するクライアントに対して、 そ"
19406 "のポートで動いているサービスが標準的な実装であり、 その計算機のユーザーが動か"
19407 "している 不正なサービスではないことを保証するためである。 IANA に明記されてい"
19408 "るよく使用されるポート番号は、 通常このような管理者だけが使用できる範囲に配置"
19409 "される。"
19410
19411 #. type: Plain text
19412 #: build/C/man5/services.5:85
19413 msgid ""
19414 "The presence of an entry for a service in the B<services> file does not "
19415 "necessarily mean that the service is currently running on the machine.  See "
19416 "B<inetd.conf>(5)  for the configuration of Internet services offered.  Note "
19417 "that not all networking services are started by B<inetd>(8), and so won't "
19418 "appear in B<inetd.conf>(5).  In particular, news (NNTP) and mail (SMTP) "
19419 "servers are often initialized from the system boot scripts."
19420 msgstr ""
19421 "B<services> ファイルにあるサービスに対する項目があっても、必ずしもそのサービ"
19422 "スが現 在その計算機で動いている訳ではない。利用可能なインターネットサービスの"
19423 "設定に ついては B<inetd.conf>(5)  に記述されている。ただし、すべてのサービス"
19424 "が B<inetd>(8)  によって起動されるわけではないので、 B<inetd.conf>(5)  には書"
19425 "かれていないサービスもあることに注意する必要がある。 特に、ネットニュース "
19426 "(NNTP) や メール (SMTP) のサーバーは、システム起動時の スクリプトから起動され"
19427 "ることが多い。"
19428
19429 #. type: Plain text
19430 #: build/C/man5/services.5:94
19431 msgid ""
19432 "The location of the B<services> file is defined by B<_PATH_SERVICES> in "
19433 "I<E<lt>netdb.hE<gt>>.  This is usually set to I</etc/services>."
19434 msgstr ""
19435 "B<services> ファイルの場所は、 I<E<lt>netdb.hE<gt>> 中の B<_PATH_SERVICES> に"
19436 "よって定義されている。 この値は通常 I</etc/services> に設定されている。"
19437
19438 #. type: Plain text
19439 #: build/C/man5/services.5:96
19440 msgid "Each line describes one service, and is of the form:"
19441 msgstr "1 行につき 1 サービスが記述されており、以下の形式である。"
19442
19443 #. type: Plain text
19444 #: build/C/man5/services.5:98
19445 msgid "I<service-name\\ \\ \\ port>B</>I<protocol\\ \\ \\ >[I<aliases ...>]"
19446 msgstr "I<service-name\\ \\ \\ port>B</>I<protocol\\ \\ \\ >[I<aliases ...>]"
19447
19448 #. type: TP
19449 #: build/C/man5/services.5:98
19450 #, no-wrap
19451 msgid "where:"
19452 msgstr "各項目は以下の通り。"
19453
19454 #. type: TP
19455 #: build/C/man5/services.5:100
19456 #, no-wrap
19457 msgid "I<service-name>"
19458 msgstr "I<service-name>"
19459
19460 #. type: Plain text
19461 #: build/C/man5/services.5:106
19462 msgid ""
19463 "is the friendly name the service is known by and looked up under.  It is "
19464 "case sensitive.  Often, the client program is named after the I<service-"
19465 "name>."
19466 msgstr ""
19467 "サービスを表す分かりやすい名前であり、検索の際にも使用される。 大文字と小文字"
19468 "は区別される。 クライアントプログラムは I<service-name> にちなんで名付けられ"
19469 "ることが多い。"
19470
19471 #. type: TP
19472 #: build/C/man5/services.5:106
19473 #, no-wrap
19474 msgid "I<port>"
19475 msgstr "I<port>"
19476
19477 #. type: Plain text
19478 #: build/C/man5/services.5:109
19479 msgid "is the port number (in decimal) to use for this service."
19480 msgstr "サービスに対して使用されるポート番号。10 進数で指定する。"
19481
19482 #. type: Plain text
19483 #: build/C/man5/services.5:120
19484 msgid ""
19485 "is the type of protocol to be used.  This field should match an entry in the "
19486 "B<protocols>(5)  file.  Typical values include B<tcp> and B<udp>."
19487 msgstr ""
19488 "使用されるプロトコルの種類。この欄は、 B<protocols>(5)  ファイルの中の項目と"
19489 "一致している必要がある。 通常使用される値は、 B<tcp> と B<udp> である。"
19490
19491 #. type: Plain text
19492 #: build/C/man5/services.5:126
19493 msgid ""
19494 "is an optional space or tab separated list of other names for this service.  "
19495 "Again, the names are case sensitive."
19496 msgstr ""
19497 "サービスに対する別名のリスト (区切はスペースまたはタブ) で、この欄は 必要にな"
19498 "らば書くことができる。 また、別名は大文字と小文字は区別される。"
19499
19500 #. type: Plain text
19501 #: build/C/man5/services.5:128
19502 msgid "Either spaces or tabs may be used to separate the fields."
19503 msgstr "それぞれの欄の区切りには、スペースまたはタブが使用される。"
19504
19505 #. type: Plain text
19506 #: build/C/man5/services.5:132
19507 msgid ""
19508 "Comments are started by the hash sign (#) and continue until the end of the "
19509 "line.  Blank lines are skipped."
19510 msgstr ""
19511 "コメントはシャープ (#) で始まり、その行の終わりまでがコメントとみなされる。 "
19512 "空行は飛ばされる。"
19513
19514 #. type: Plain text
19515 #: build/C/man5/services.5:143
19516 msgid ""
19517 "The I<service-name> should begin in the first column of the file, since "
19518 "leading spaces are not stripped.  I<service-names> can be any printable "
19519 "characters excluding space and tab.  However, a conservative choice of "
19520 "characters should be used to minimize compatibility problems.  For example, "
19521 "a-z, 0-9, and hyphen (-) would seem a sensible choice."
19522 msgstr ""
19523 "行の始めのスペースは無視されないので、 I<service-name> は、行頭から書かなけれ"
19524 "ばならない。 I<service-names> は、スペースとタブ以外の印字可能な文字なら何で"
19525 "もよいが、しかしながら 互換性の問題を少なくするような文字を選択すべきであ"
19526 "る。 例えば、a-z 、0-9 、ハイフォン (-) を使用するのが無難と思われる。"
19527
19528 #. type: Plain text
19529 #: build/C/man5/services.5:152
19530 msgid ""
19531 "Lines not matching this format should not be present in the file.  "
19532 "(Currently, they are silently skipped by B<getservent>(3), "
19533 "B<getservbyname>(3), and B<getservbyport>(3).  However, this behavior should "
19534 "not be relied on.)"
19535 msgstr ""
19536 "指定された形式に合わない行はあってはならない (現在は、そのような行は "
19537 "B<getservent>(3), B<getservbyname>(3), B<getservbyport>(3)  によって無視され"
19538 "る。しかし、その場合の挙動は信頼できない)。"
19539
19540 #. type: Plain text
19541 #: build/C/man5/services.5:169
19542 msgid "A sample B<services> file might look like this:"
19543 msgstr "B<services> ファイルの見本を以下に示す。"
19544
19545 #. type: Plain text
19546 #: build/C/man5/services.5:182
19547 #, no-wrap
19548 msgid ""
19549 "CW<netstat         15/tcp\n"
19550 "qotd            17/tcp          quote\n"
19551 "msp             18/tcp          # message send protocol\n"
19552 "msp             18/udp          # message send protocol\n"
19553 "chargen         19/tcp          ttytst source\n"
19554 "chargen         19/udp          ttytst source\n"
19555 "ftp             21/tcp\n"
19556 "# 22 - unassigned\n"
19557 "telnet          23/tcp>\n"
19558 msgstr ""
19559 "CW<netstat         15/tcp\n"
19560 "qotd            17/tcp          quote\n"
19561 "msp             18/tcp          # message send protocol\n"
19562 "msp             18/udp          # message send protocol\n"
19563 "chargen         19/tcp          ttytst source\n"
19564 "chargen         19/udp          ttytst source\n"
19565 "ftp             21/tcp\n"
19566 "# 22 - unassigned\n"
19567 "telnet          23/tcp>\n"
19568
19569 #. type: Plain text
19570 #: build/C/man5/services.5:189
19571 msgid "The Internet network services list"
19572 msgstr "インターネット ネットワークサービスのリスト"
19573
19574 #. type: TP
19575 #: build/C/man5/services.5:189
19576 #, no-wrap
19577 msgid "I<E<lt>netdb.hE<gt>>"
19578 msgstr "I<E<lt>netdb.hE<gt>>"
19579
19580 #.  .SH BUGS
19581 #.  It's not clear when/if the following was ever true;
19582 #.  it isn't true for glibc 2.8:
19583 #.     There is a maximum of 35 aliases, due to the way the
19584 #.     .BR getservent (3)
19585 #.     code is written.
19586 #.  It's not clear when/if the following was ever true;
19587 #.  it isn't true for glibc 2.8:
19588 #.     Lines longer than
19589 #.     .B BUFSIZ
19590 #.     (currently 1024) characters will be ignored by
19591 #.     .BR getservent (3),
19592 #.     .BR getservbyname (3),
19593 #.     and
19594 #.     .BR getservbyport (3).
19595 #.     However, this will also cause the next line to be mis-parsed.
19596 #. type: Plain text
19597 #: build/C/man5/services.5:210
19598 msgid "Definition of B<_PATH_SERVICES>"
19599 msgstr "B<_PATH_SERVICES> の定義"
19600
19601 #. type: Plain text
19602 #: build/C/man5/services.5:220
19603 msgid ""
19604 "B<listen>(2), B<endservent>(3), B<getservbyname>(3), B<getservbyport>(3), "
19605 "B<getservent>(3), B<setservent>(3), B<inetd.conf>(5), B<protocols>(5), "
19606 "B<inetd>(8)"
19607 msgstr ""
19608 "B<listen>(2), B<endservent>(3), B<getservbyname>(3), B<getservbyport>(3), "
19609 "B<getservent>(3), B<setservent>(3), B<inetd.conf>(5), B<protocols>(5), "
19610 "B<inetd>(8)"
19611
19612 #. type: Plain text
19613 #: build/C/man5/services.5:222
19614 msgid "Assigned Numbers RFC, most recently RFC\\ 1700, (AKA STD0002)."
19615 msgstr ""
19616 "ポート番号の割り当てを定めている RFC (最新版は RFC\\ 1700、別名 STD0002)"
19617
19618 #. type: TH
19619 #: build/C/man3/setnetgrent.3:10
19620 #, no-wrap
19621 msgid "SETNETGRENT"
19622 msgstr "SETNETGRENT"
19623
19624 #. type: Plain text
19625 #: build/C/man3/setnetgrent.3:14
19626 msgid ""
19627 "setnetgrent, endnetgrent, getnetgrent, getnetgrent_r, innetgr - handle "
19628 "network group entries"
19629 msgstr ""
19630 "setnetgrent, endnetgrent, getnetgrent, getnetgrent_r, innetgr - ネットワーク"
19631 "グループのエントリーを操作する"
19632
19633 #. type: Plain text
19634 #: build/C/man3/setnetgrent.3:19
19635 #, no-wrap
19636 msgid "B<int setnetgrent(const char *>I<netgroup>B<);>\n"
19637 msgstr "B<int setnetgrent(const char *>I<netgroup>B<);>\n"
19638
19639 #. type: Plain text
19640 #: build/C/man3/setnetgrent.3:21
19641 #, no-wrap
19642 msgid "B<void endnetgrent(void);>\n"
19643 msgstr "B<void endnetgrent(void);>\n"
19644
19645 #. type: Plain text
19646 #: build/C/man3/setnetgrent.3:23
19647 #, no-wrap
19648 msgid "B<int getnetgrent(char **>I<host>B<, char **>I<user>B<, char **>I<domain>B<);>\n"
19649 msgstr "B<int getnetgrent(char **>I<host>B<, char **>I<user>B<, char **>I<domain>B<);>\n"
19650
19651 #. type: Plain text
19652 #: build/C/man3/setnetgrent.3:26
19653 #, no-wrap
19654 msgid ""
19655 "B<int getnetgrent_r(char **>I<host>B<, char **>I<user>B<,>\n"
19656 "B<                  char **>I<domain>B<, char *>I<buf>B<, size_t >I<buflen>B<);>\n"
19657 msgstr ""
19658 "B<int getnetgrent_r(char **>I<host>B<, char **>I<user>B<,>\n"
19659 "B<                  char **>I<domain>B<, char *>I<buf>B<, size_t >I<buflen>B<);>\n"
19660
19661 #. type: Plain text
19662 #: build/C/man3/setnetgrent.3:29
19663 #, no-wrap
19664 msgid ""
19665 "B<int innetgr(const char *>I<netgroup>B<, const char *>I<host>B<,>\n"
19666 "B<            const char *>I<user>B<, const char *>I<domain>B<);>\n"
19667 msgstr ""
19668 "B<int innetgr(const char *>I<netgroup>B<, const char *>I<host>B<,>\n"
19669 "B<            const char *>I<user>B<, const char *>I<domain>B<);>\n"
19670
19671 #. type: Plain text
19672 #: build/C/man3/setnetgrent.3:43
19673 msgid ""
19674 "B<setnetgrent>(), B<endnetgrent>(), B<getnetgrent>(), B<getnetgrent_r>(), "
19675 "B<innetgr>(): _BSD_SOURCE || _SVID_SOURCE"
19676 msgstr ""
19677 "B<setnetgrent>(), B<endnetgrent>(), B<getnetgrent>(), B<getnetgrent_r>(), "
19678 "B<innetgr>(): _BSD_SOURCE || _SVID_SOURCE"
19679
19680 #. type: Plain text
19681 #: build/C/man3/setnetgrent.3:57
19682 msgid ""
19683 "The I<netgroup> is a SunOS invention.  A netgroup database is a list of "
19684 "string triples (I<hostname>, I<username>, I<domainname>)  or other netgroup "
19685 "names.  Any of the elements in a triple can be empty, which means that "
19686 "anything matches.  The functions described here allow access to the netgroup "
19687 "databases.  The file I</etc/nsswitch.conf> defines what database is searched."
19688 msgstr ""
19689 "I<netgroup> は SunOS で考案されたものである。ネットグループのデータベースの "
19690 "エントリーは、 3 つの文字列のリスト (I<hostname>, I<username>, "
19691 "I<domainname>)  もしくはネットグループ名である。 前記のリストの各要素は空で"
19692 "あってもよい。 空は何とでも一致することを意味する。 本ページで説明する関数を"
19693 "使うことで、ネットグループのデータベースに アクセスすることができる。どのデー"
19694 "タベースが検索されるかは I</etc/nsswitch.conf> ファイルで定義されている。"
19695
19696 #. type: Plain text
19697 #: build/C/man3/setnetgrent.3:77
19698 msgid ""
19699 "The B<setnetgrent>()  call defines the netgroup that will be searched by "
19700 "subsequent B<getnetgrent>()  calls.  The B<getnetgrent>()  function "
19701 "retrieves the next netgroup entry, and returns pointers in I<host>, I<user>, "
19702 "I<domain>.  A null pointer means that the corresponding entry matches any "
19703 "string.  The pointers are valid only as long as there is no call to other "
19704 "netgroup-related functions.  To avoid this problem you can use the GNU "
19705 "function B<getnetgrent_r>()  that stores the strings in the supplied "
19706 "buffer.  To free all allocated buffers use B<endnetgrent>()."
19707 msgstr ""
19708 "B<setnetgrent>()  コールは、この後で呼ばれる B<getnetgrent>()  コールが検索す"
19709 "るネットグループを定める。 B<getnetgrent>()  関数はネットグループの次のエント"
19710 "リーを取得し、 I<host>, I<user>, I<domain> にポインターを入れて返る。ヌルポイ"
19711 "ンターは、対応するエントリーがどんな文字列とも一致することを意味する。 得られ"
19712 "たポインターは、ネットグループ関係の関数のいずれかが呼ばれるまでの 間だけ有効"
19713 "である。この問題を避けるためには GNU 拡張の関数 B<getnetgrent_r>()  を使うと"
19714 "よい。この関数は呼び出し側が用意したバッファーに 文字列を格納する。割り当て済"
19715 "のバッファーを全て解放するには B<endnetgrent>()  を使用する。"
19716
19717 #. type: Plain text
19718 #: build/C/man3/setnetgrent.3:86
19719 msgid ""
19720 "In most cases you want to check only if the triplet (I<hostname>, "
19721 "I<username>, I<domainname>)  is a member of a netgroup.  The function "
19722 "B<innetgr>()  can be used for this without calling the above three "
19723 "functions.  Again, a null pointer is a wildcard and matches any string.  The "
19724 "function is thread-safe."
19725 msgstr ""
19726 "ほとんどの場合、 (I<hostname>, I<username>, I<domainname>)  の3要素の組がネッ"
19727 "トグループのメンバーかどうかを確認したいだけであろう。 B<innetgr>()  関数を使"
19728 "うと、上記の3つの関数を呼び出さずにこの目的を達成できる。 もう一度書いておく"
19729 "が、NULL ポインターはワイルドカードであり、 あらゆる文字列と一致する。この関"
19730 "数はスレッドセーフである。"
19731
19732 #. type: Plain text
19733 #: build/C/man3/setnetgrent.3:88
19734 msgid "These functions return 1 on success and 0 for failure."
19735 msgstr "これらの関数は成功すると 1 を、失敗すると 0 を返す。"
19736
19737 #. type: Plain text
19738 #: build/C/man3/setnetgrent.3:90
19739 msgid "I</etc/netgroup>"
19740 msgstr "I</etc/netgroup>"
19741
19742 #.  getnetgrent_r() is on Solaris 8 and AIX 5.1, but not the BSDs.
19743 #. type: Plain text
19744 #: build/C/man3/setnetgrent.3:103
19745 msgid ""
19746 "These functions are not in POSIX.1-2001, but B<setnetgrent>(), "
19747 "B<endnetgrent>(), B<getnetgrent>(), and B<innetgr>()  are available on most "
19748 "UNIX systems.  B<getnetgrent_r>()  is not widely available on other systems."
19749 msgstr ""
19750 "これらの関数は POSIX.1-2001 にはないが、 setnetgrent (), endnetgrent (), "
19751 "getnetgrent (), innetgr ()  はほとんどの UNIX システムで利用可能である。 "
19752 "B<getnetgrent_r>()  は広く他のシステムで利用できるわけではない。"
19753
19754 #. type: Plain text
19755 #: build/C/man3/setnetgrent.3:107
19756 msgid "In the BSD implementation, B<setnetgrent>()  returns void."
19757 msgstr "BSD の実装では B<setnetgrent>()  は void を返す。"
19758
19759 #. type: Plain text
19760 #: build/C/man3/setnetgrent.3:111
19761 msgid "B<sethostent>(3), B<setprotoent>(3), B<setservent>(3)"
19762 msgstr "B<sethostent>(3), B<setprotoent>(3), B<setservent>(3)"
19763
19764 #. type: TH
19765 #: build/C/man2/shutdown.2:40
19766 #, no-wrap
19767 msgid "SHUTDOWN"
19768 msgstr "SHUTDOWN"
19769
19770 #. type: TH
19771 #: build/C/man2/shutdown.2:40
19772 #, no-wrap
19773 msgid "2012-09-06"
19774 msgstr "2012-09-06"
19775
19776 #. type: Plain text
19777 #: build/C/man2/shutdown.2:43
19778 msgid "shutdown - shut down part of a full-duplex connection"
19779 msgstr "shutdown - 全二重接続の一部を閉じる"
19780
19781 #. type: Plain text
19782 #: build/C/man2/shutdown.2:47
19783 msgid "B<int shutdown(int >I<sockfd>B<, int >I<how>B<);>"
19784 msgstr "B<int shutdown(int >I<sockfd>B<, int >I<how>B<);>"
19785
19786 #. type: Plain text
19787 #: build/C/man2/shutdown.2:69
19788 msgid ""
19789 "The B<shutdown>()  call causes all or part of a full-duplex connection on "
19790 "the socket associated with I<sockfd> to be shut down.  If I<how> is "
19791 "B<SHUT_RD>, further receptions will be disallowed.  If I<how> is B<SHUT_WR>, "
19792 "further transmissions will be disallowed.  If I<how> is B<SHUT_RDWR>, "
19793 "further receptions and transmissions will be disallowed."
19794 msgstr ""
19795 "B<shutdown>()  は、 I<sockfd> に関連づけられているソケットによる全二重接続 "
19796 "(full-duplex connection)  の一部または全てを閉じる。 I<how> が B<SHUT_RD> な"
19797 "らば、それ以降の受信を禁止する。 I<how> が B<SHUT_WR> ならば、それ以降の送信"
19798 "を禁止する。 I<how> が B<SHUT_RDWR> ならば、それ以降の送受信を禁止する。"
19799
19800 #. type: Plain text
19801 #: build/C/man2/shutdown.2:79
19802 msgid "I<sockfd> is not a valid descriptor."
19803 msgstr "I<sockfd> が有効なディスクリプターでない。"
19804
19805 #. type: Plain text
19806 #: build/C/man2/shutdown.2:84
19807 msgid "An invalid value was specified in I<how> (but see BUGS)."
19808 msgstr "I<how> に無効な値が指定された (バグが参照)。"
19809
19810 #. type: Plain text
19811 #: build/C/man2/shutdown.2:87
19812 msgid "The specified socket is not connected."
19813 msgstr "指定されたソケットは接続されていない。"
19814
19815 #. type: Plain text
19816 #: build/C/man2/shutdown.2:91
19817 msgid "I<sockfd> is a file, not a socket."
19818 msgstr "I<sockfd> がソケットでなくファイルである。"
19819
19820 #. type: Plain text
19821 #: build/C/man2/shutdown.2:95
19822 msgid ""
19823 "POSIX.1-2001, 4.4BSD (the B<shutdown>()  function call first appeared in "
19824 "4.2BSD)."
19825 msgstr ""
19826 "POSIX.1-2001, 4.4BSD (B<shutdown>()  関数コールは 4.2BSD で初めて登場した)。"
19827
19828 #. type: Plain text
19829 #: build/C/man2/shutdown.2:104
19830 msgid ""
19831 "The constants B<SHUT_RD>, B<SHUT_WR>, B<SHUT_RDWR> have the value 0, 1, 2, "
19832 "respectively, and are defined in I<E<lt>sys/socket.hE<gt>> since "
19833 "glibc-2.1.91."
19834 msgstr ""
19835 "B<SHUT_RD>, B<SHUT_WR>, B<SHUT_RDWR> の各定数 (それぞれ 0, 1, 2 の値を持つ) "
19836 "は glibc-2.1.91 以降、 I<E<lt>sys/socket.hE<gt>> で定義されている。"
19837
19838 #.  FIXME .
19839 #.  https://bugzilla.kernel.org/show_bug.cgi?id=47111
19840 #. type: Plain text
19841 #: build/C/man2/shutdown.2:113
19842 msgid ""
19843 "As currently implemented, checks for the validity of I<how> are done in "
19844 "domain-specific code, and not all domains perform these checks.  Most "
19845 "notably, UNIX domain sockets simply ignore invalid values; this may change "
19846 "in the future."
19847 msgstr ""
19848 "現在の実装では I<how> の妥当性チェックはドメイン固有のコードの中で行われてい"
19849 "るが、 すべてのドメインでこれらのチェックが行われている訳ではない。 中でも注"
19850 "意すべきは、 UNIX ドメインソケットでは無効な値は単に無視される点である。 これ"
19851 "は将来変更されるかもしれない。"
19852
19853 #. type: Plain text
19854 #: build/C/man2/shutdown.2:117
19855 msgid "B<connect>(2), B<socket>(2), B<socket>(7)"
19856 msgstr "B<connect>(2), B<socket>(2), B<socket>(7)"
19857
19858 #. type: TH
19859 #: build/C/man7/tcp.7:76
19860 #, no-wrap
19861 msgid "TCP"
19862 msgstr "TCP"
19863
19864 #. type: TH
19865 #: build/C/man7/tcp.7:76
19866 #, no-wrap
19867 msgid "2015-01-10"
19868 msgstr "2015-01-10"
19869
19870 #. type: Plain text
19871 #: build/C/man7/tcp.7:79
19872 msgid "tcp - TCP protocol"
19873 msgstr "tcp - TCP プロトコル"
19874
19875 #. type: Plain text
19876 #: build/C/man7/tcp.7:85
19877 msgid "B<#include E<lt>netinet/tcp.hE<gt>>"
19878 msgstr "B<#include E<lt>netinet/tcp.hE<gt>>"
19879
19880 #. type: Plain text
19881 #: build/C/man7/tcp.7:87
19882 msgid "B<tcp_socket = socket(AF_INET, SOCK_STREAM, 0);>"
19883 msgstr "B<tcp_socket = socket(AF_INET, SOCK_STREAM, 0);>"
19884
19885 #. type: Plain text
19886 #: build/C/man7/tcp.7:100
19887 msgid ""
19888 "This is an implementation of the TCP protocol defined in RFC\\ 793, RFC\\ "
19889 "1122 and RFC\\ 2001 with the NewReno and SACK extensions.  It provides a "
19890 "reliable, stream-oriented, full-duplex connection between two sockets on top "
19891 "of B<ip>(7), for both v4 and v6 versions.  TCP guarantees that the data "
19892 "arrives in order and retransmits lost packets.  It generates and checks a "
19893 "per-packet checksum to catch transmission errors.  TCP does not preserve "
19894 "record boundaries."
19895 msgstr ""
19896 "これは RFC\\ 793, RFC\\ 1122, RFC\\ 2001 で定義されている TCP プロトコルを "
19897 "NewReno 拡張と SACK 拡張を含めて実装したものである。 TCP は、 B<ip>(7)  上の"
19898 "二つのソケット間に、信頼性の高い、ストリーム指向の全二重 (full-duplex) 通信を"
19899 "提供する。 v4 と v6 の両方のバージョンの B<ip>(7)  に対応している。 TCP は、"
19900 "データが順序を守って到着すること、途中で失われたパケットが 再送されることを保"
19901 "証する。また、パケット単位にチェックサムを 生成、検査することで、転送エラーを"
19902 "検知する。 TCP はレコード境界 (record boundary) を保存しない。"
19903
19904 #. type: Plain text
19905 #: build/C/man7/tcp.7:119
19906 msgid ""
19907 "A newly created TCP socket has no remote or local address and is not fully "
19908 "specified.  To create an outgoing TCP connection use B<connect>(2)  to "
19909 "establish a connection to another TCP socket.  To receive new incoming "
19910 "connections, first B<bind>(2)  the socket to a local address and port and "
19911 "then call B<listen>(2)  to put the socket into the listening state.  After "
19912 "that a new socket for each incoming connection can be accepted using "
19913 "B<accept>(2).  A socket which has had B<accept>(2)  or B<connect>(2)  "
19914 "successfully called on it is fully specified and may transmit data.  Data "
19915 "cannot be transmitted on listening or not yet connected sockets."
19916 msgstr ""
19917 "新しく生成されたばかりの TCP ソケットは、 リモートアドレスかローカルアドレス"
19918 "がなく、 したがって詳細が完全に指定された状態ではない。 外部への TCP 接続を生"
19919 "成するには、 B<connect>(2)  を用いてもう一方の TCP ソケットへの接続を確立す"
19920 "る。 外部からの新たな接続を受けるには、まず B<bind>(2)  でソケットをローカル"
19921 "なアドレスとポートに結びつけ、次に B<listen>(2)  を呼んでソケットを接続待ち受"
19922 "け状態にする。 その後、到着した接続要求に対して B<accept>(2)  を用い、ソケッ"
19923 "トを新しく生成する。 B<accept>(2)  または B<connect>(2)  のコールが成功したソ"
19924 "ケットは、詳細が完全に指定された状態となり、 データのやりとりが可能となる。接"
19925 "続待ち受け状態の (listening) ソケットや、 接続 (connect) されていないソケット"
19926 "を通してデータをやりとりすることはできない。"
19927
19928 #. type: Plain text
19929 #: build/C/man7/tcp.7:139
19930 msgid ""
19931 "Linux supports RFC\\ 1323 TCP high performance extensions.  These include "
19932 "Protection Against Wrapped Sequence Numbers (PAWS), Window Scaling and "
19933 "Timestamps.  Window scaling allows the use of large (E<gt> 64K) TCP windows "
19934 "in order to support links with high latency or bandwidth.  To make use of "
19935 "them, the send and receive buffer sizes must be increased.  They can be set "
19936 "globally with the I</proc/sys/net/ipv4/tcp_wmem> and I</proc/sys/net/ipv4/"
19937 "tcp_rmem> files, or on individual sockets by using the B<SO_SNDBUF> and "
19938 "B<SO_RCVBUF> socket options with the B<setsockopt>(2)  call."
19939 msgstr ""
19940 "Linux は RFC\\ 1323 の TCP high performance 拡張をサポートしている。 これに"
19941 "は、Protection Against Wrapped Sequence Numbers (PAWS)、 ウィンドウスケーリン"
19942 "グ、タイムスタンプなどが含まれている。 ウィンドウスケーリングを利用すると、遅"
19943 "延または帯域の大きな接続で、 (64K 以上の) 巨大な TCP ウィンドウを用いることが"
19944 "可能となる。 これを用いるには、送受信のバッファーサイズを大きくしなければなら"
19945 "ない。 システム全体に対するバッファーサイズの変更は、ファイル I</proc/sys/"
19946 "net/ipv4/tcp_wmem> と I</proc/sys/net/ipv4/tcp_rmem> を用いて行うことができ"
19947 "る。 また、個々のソケットのみを大きくしたい場合には、 B<SO_SNDBUF> や "
19948 "B<SO_RCVBUF> ソケットオプションを用いて B<setsockopt>(2)  コールを用いて設定"
19949 "すればよい。"
19950
19951 #. type: Plain text
19952 #: build/C/man7/tcp.7:170
19953 msgid ""
19954 "The maximum sizes for socket buffers declared via the B<SO_SNDBUF> and "
19955 "B<SO_RCVBUF> mechanisms are limited by the values in the I</proc/sys/net/"
19956 "core/rmem_max> and I</proc/sys/net/core/wmem_max> files.  Note that TCP "
19957 "actually allocates twice the size of the buffer requested in the "
19958 "B<setsockopt>(2)  call, and so a succeeding B<getsockopt>(2)  call will not "
19959 "return the same size of buffer as requested in the B<setsockopt>(2)  call.  "
19960 "TCP uses the extra space for administrative purposes and internal kernel "
19961 "structures, and the I</proc> file values reflect the larger sizes compared "
19962 "to the actual TCP windows.  On individual connections, the socket buffer "
19963 "size must be set prior to the B<listen>(2)  or B<connect>(2)  calls in order "
19964 "to have it take effect.  See B<socket>(7)  for more information."
19965 msgstr ""
19966 "B<SO_SNDBUF> や B<SO_RCVBUF> のメカニズムで宣言されるソケットバッファーの最大"
19967 "サイズは、ファイル I</proc/sys/net/core/rmem_max> や I</proc/sys/net/core/"
19968 "wmem_max> で指定されたシステムとしての制限値を超えることはできない。 TCP は実"
19969 "際には B<setsockopt>(2)  コールが要求したバッファーサイズの二倍を割り当て"
19970 "る。 そのため、この後で B<getsockopt>(2)  コールを行うと、 B<setsockopt>(2)  "
19971 "で要求したバッファーサイズとは異なる値が返る。 TCP はこの余分な空間を、管理目"
19972 "的やカーネル内部の構造体に用いている。 I</proc> ファイルの値は、これらを反映"
19973 "し、実際の TCP ウィンドウよりも大きな値となる。 各接続におけるソケットのバッ"
19974 "ファーサイズ変更を有効にするには、 B<listen>(2)  や B<connect>(2)  コールの前"
19975 "に設定しなければならない。 より詳しい情報は B<socket>(7)  を見よ。"
19976
19977 #. type: Plain text
19978 #: build/C/man7/tcp.7:202
19979 msgid ""
19980 "TCP supports urgent data.  Urgent data is used to signal the receiver that "
19981 "some important message is part of the data stream and that it should be "
19982 "processed as soon as possible.  To send urgent data specify the B<MSG_OOB> "
19983 "option to B<send>(2).  When urgent data is received, the kernel sends a "
19984 "B<SIGURG> signal to the process or process group that has been set as the "
19985 "socket \"owner\" using the B<SIOCSPGRP> or B<FIOSETOWN> ioctls (or the "
19986 "POSIX.1-2001-specified B<fcntl>(2)  B<F_SETOWN> operation).  When the "
19987 "B<SO_OOBINLINE> socket option is enabled, urgent data is put into the normal "
19988 "data stream (a program can test for its location using the B<SIOCATMARK> "
19989 "ioctl described below), otherwise it can be received only when the "
19990 "B<MSG_OOB> flag is set for B<recv>(2)  or B<recvmsg>(2)."
19991 msgstr ""
19992 "TCP は緊急データ (urgent data) をサポートしている。緊急データは 何らかの重要"
19993 "なメッセージがデータストリームに含まれていること、 そのデータをできるだけ早く"
19994 "処理すべきこと、を受信者に伝えるために用いられる。 緊急データを送るには、 "
19995 "B<send>(2)  に B<MSG_OOB> オプションを指定する。 緊急データを受信すると、カー"
19996 "ネルは B<SIGURG> シグナルを送信する。送信先は B<SIOCSPGRP> や B<FIOSETOWN> "
19997 "ioctl (や POSIX.1-2001 で規定されている B<fcntl>(2)  B<F_SETOWN> 操作) を用い"
19998 "てそのソケットの「所有者」として設定された プロセスかプロセスグループであ"
19999 "る。 B<SO_OOBINLINE> ソケットオプションが有効になっていると、緊急データは 通"
20000 "常のデータストリームの中に混ぜて送られる (プログラムは下記の B<SIOCATMARK> "
20001 "ioctl を使って緊急データの場所を調べることができる)。 無効になっている場合に"
20002 "は、 B<recv>(2)  や B<recvmsg>(2)  で B<MSG_OOB> フラグがセットされているとき"
20003 "にのみ、緊急データを受信できる。"
20004
20005 #. type: Plain text
20006 #: build/C/man7/tcp.7:210
20007 msgid ""
20008 "Linux 2.4 introduced a number of changes for improved throughput and "
20009 "scaling, as well as enhanced functionality.  Some of these features include "
20010 "support for zero-copy B<sendfile>(2), Explicit Congestion Notification, new "
20011 "management of TIME_WAIT sockets, keep-alive socket options and support for "
20012 "Duplicate SACK extensions."
20013 msgstr ""
20014 "Linux 2.4 では多くの変更がなされ、 スループットとスケーリングが向上し、機能も"
20015 "高まった。 これらの機能には、ゼロコピー B<sendfile>(2)、 Explicit Congestion "
20016 "Notification、 TIME_WAIT ソケットの新しい管理法、 keep-alive ソケットオプショ"
20017 "ン、 Duplicate SACK 拡張のサポートなどがある。"
20018
20019 #. type: SS
20020 #: build/C/man7/tcp.7:210
20021 #, no-wrap
20022 msgid "Address formats"
20023 msgstr "アドレスのフォーマット"
20024
20025 #. type: Plain text
20026 #: build/C/man7/tcp.7:219
20027 msgid ""
20028 "TCP is built on top of IP (see B<ip>(7)).  The address formats defined by "
20029 "B<ip>(7)  apply to TCP.  TCP supports point-to-point communication only; "
20030 "broadcasting and multicasting are not supported."
20031 msgstr ""
20032 "TCP は IP の上層に構築されている (B<ip>(7)  を参照)。 B<ip>(7)  に定義されて"
20033 "いるアドレスフォーマットは TCP にも適用される。 TCP は point-to-point の通信"
20034 "だけをサポートする。 ブロードキャストやマルチキャストはサポートしない。"
20035
20036 #. type: Plain text
20037 #: build/C/man7/tcp.7:231
20038 msgid ""
20039 "System-wide TCP parameter settings can be accessed by files in the directory "
20040 "I</proc/sys/net/ipv4/>.  In addition, most IP I</proc> interfaces also apply "
20041 "to TCP; see B<ip>(7).  Variables described as I<Boolean> take an integer "
20042 "value, with a nonzero value (\"true\") meaning that the corresponding option "
20043 "is enabled, and a zero value (\"false\")  meaning that the option is "
20044 "disabled."
20045 msgstr ""
20046 "システム全体に対する TCP パラメーターの設定には、 I</proc/sys/net/ipv4/> ディ"
20047 "レクトリ内のファイルによりアクセスできる。 さらに、IP に関連する I</proc> イ"
20048 "ンターフェースのほとんどは TCP についても適用される。 B<ip>(7)  を参照のこ"
20049 "と。 I<Boolean> は整数値で、 0 以外の値 (\"true\") は対応するオプションが有"
20050 "効、 0 値 (\"false\") は無効、であることを意味する。"
20051
20052 #. type: TP
20053 #: build/C/man7/tcp.7:231
20054 #, no-wrap
20055 msgid "I<tcp_abc> (Integer; default: 0; since Linux 2.6.15)"
20056 msgstr "I<tcp_abc> (Integer; default: 0; Linux 2.6.15 以降)"
20057
20058 #.  The following is from 2.6.28-rc4: Documentation/networking/ip-sysctl.txt
20059 #. type: Plain text
20060 #: build/C/man7/tcp.7:239
20061 msgid ""
20062 "Control the Appropriate Byte Count (ABC), defined in RFC 3465.  ABC is a way "
20063 "of increasing the congestion window (I<cwnd>)  more slowly in response to "
20064 "partial acknowledgments.  Possible values are:"
20065 msgstr ""
20066 "RFC 3465 で定義されている Appropriate Byte Count (ABC) を制御する。 ABC は、"
20067 "部分的な ACK に応じた輻輳ウィンドウ (I<cwnd>)  の増加をより緩やかにする方法で"
20068 "ある。 以下の値を指定できる。"
20069
20070 #. type: IP
20071 #: build/C/man7/tcp.7:240 build/C/man7/tcp.7:428 build/C/man7/tcp.7:449
20072 #: build/C/man7/tcp.7:593
20073 #, no-wrap
20074 msgid "0"
20075 msgstr "0"
20076
20077 #. type: Plain text
20078 #: build/C/man7/tcp.7:244
20079 msgid "increase I<cwnd> once per acknowledgment (no ABC)"
20080 msgstr "ACK を受信する毎に I<cwnd> を増やす (ABC なし)。"
20081
20082 #. type: IP
20083 #: build/C/man7/tcp.7:244 build/C/man7/tcp.7:430 build/C/man7/tcp.7:456
20084 #: build/C/man7/tcp.7:595
20085 #, no-wrap
20086 msgid "1"
20087 msgstr "1"
20088
20089 #. type: Plain text
20090 #: build/C/man7/tcp.7:248
20091 msgid "increase I<cwnd> once per acknowledgment of full sized segment"
20092 msgstr "フルサイズのセグメントの ACK を受信する毎に I<cwnd> を増やす。"
20093
20094 #. type: IP
20095 #: build/C/man7/tcp.7:248 build/C/man7/tcp.7:432 build/C/man7/tcp.7:463
20096 #: build/C/man7/tcp.7:597
20097 #, no-wrap
20098 msgid "2"
20099 msgstr "2"
20100
20101 #. type: Plain text
20102 #: build/C/man7/tcp.7:253
20103 msgid ""
20104 "allow increase I<cwnd> by two if acknowledgment is of two segments to "
20105 "compensate for delayed acknowledgments."
20106 msgstr ""
20107 "ACK が遅延 ACK (delayed acknowledgment) を相殺するための 2 セグメントに 対す"
20108 "る ACK の場合に、 I<cwnd> を 2 増やすことができる。"
20109
20110 #. type: TP
20111 #: build/C/man7/tcp.7:254
20112 #, no-wrap
20113 msgid "I<tcp_abort_on_overflow> (Boolean; default: disabled; since Linux 2.4)"
20114 msgstr "I<tcp_abort_on_overflow> (ブール値; デフォルト: 無効; Linux 2.4 以降)"
20115
20116 #.  Since 2.3.41
20117 #. type: Plain text
20118 #: build/C/man7/tcp.7:266
20119 msgid ""
20120 "Enable resetting connections if the listening service is too slow and unable "
20121 "to keep up and accept them.  It means that if overflow occurred due to a "
20122 "burst, the connection will recover.  Enable this option I<only> if you are "
20123 "really sure that the listening daemon cannot be tuned to accept connections "
20124 "faster.  Enabling this option can harm the clients of your server."
20125 msgstr ""
20126 "接続を待ち受けているサービスが遅すぎて、受信についていけない場合に、 接続をリ"
20127 "セットできるようにする。 これを用いると、バーストによってオーバーフローが起"
20128 "こったときに、 接続を回復できるようになる。このオプションを用いるのは、 受信"
20129 "デーモンを高速化できない場合に「限定する」こと。 このオプションを用いると、そ"
20130 "のサーバに接続しているクライアント にとっては害になることがある。"
20131
20132 #. type: TP
20133 #: build/C/man7/tcp.7:266
20134 #, no-wrap
20135 msgid "I<tcp_adv_win_scale> (integer; default: 2; since Linux 2.4)"
20136 msgstr "I<tcp_adv_win_scale> (integer; default: 2; Linux 2.4 以降)"
20137
20138 #.  Since 2.4.0-test7
20139 #. type: Plain text
20140 #: build/C/man7/tcp.7:278
20141 msgid ""
20142 "Count buffering overhead as I<bytes/2^tcp_adv_win_scale>, if "
20143 "I<tcp_adv_win_scale> is greater than 0; or I<bytes-bytes/2^(-"
20144 "tcp_adv_win_scale)>, if I<tcp_adv_win_scale> is less than or equal to zero."
20145 msgstr ""
20146 "バッファーリングのオーバーヘッドの計算方法を、 I<tcp_adv_win_scale> が正の場"
20147 "合は I<bytes/2^tcp_adv_win_scale> に、 I<tcp_adv_win_scale> が負か 0 の場合"
20148 "は I<bytes-bytes/2^(-tcp_adv_win_scale)> とする。"
20149
20150 #. type: Plain text
20151 #: build/C/man7/tcp.7:291
20152 msgid ""
20153 "The socket receive buffer space is shared between the application and "
20154 "kernel.  TCP maintains part of the buffer as the TCP window, this is the "
20155 "size of the receive window advertised to the other end.  The rest of the "
20156 "space is used as the \"application\" buffer, used to isolate the network "
20157 "from scheduling and application latencies.  The I<tcp_adv_win_scale> default "
20158 "value of 2 implies that the space used for the application buffer is one "
20159 "fourth that of the total."
20160 msgstr ""
20161 "ソケットの受信バッファー空間はアプリケーションとカーネルで共有される。 TCP は"
20162 "バッファーの一部を TCP ウィンドウとして管理し、 これを受信ウィンドウとして接"
20163 "続の他端に通知する。 空間の残りは「アプリケーション」バッファーとして用いら"
20164 "れ、 スケジューリングやアプリケーションの遅延からネットワークを隔離する。 "
20165 "I<tcp_adv_win_scale> のデフォルト値は 2 であり、 この場合アプリケーションバッ"
20166 "ファーは全体の 1/4 になる。"
20167
20168 #. type: TP
20169 #: build/C/man7/tcp.7:291
20170 #, no-wrap
20171 msgid "I<tcp_allowed_congestion_control> (String; default: see text; since Linux 2.4.20)"
20172 msgstr "I<tcp_allowed_congestion_control> (String; default: see text; Linux 2.4.20 以降)"
20173
20174 #.  The following is from 2.6.28-rc4: Documentation/networking/ip-sysctl.txt
20175 #. type: Plain text
20176 #: build/C/man7/tcp.7:304
20177 msgid ""
20178 "Show/set the congestion control algorithm choices available to unprivileged "
20179 "processes (see the description of the B<TCP_CONGESTION> socket option).  The "
20180 "items in the list are separated by white space and terminated by a newline "
20181 "character.  The list is a subset of those listed in "
20182 "I<tcp_available_congestion_control>.  The default value for this list is "
20183 "\"reno\" plus the default setting of I<tcp_congestion_control>."
20184 msgstr ""
20185 "非特権プロセスで利用できる輻輳制御アルゴリズムの選択肢を表示/設定する "
20186 "(B<TCP_CONGESTION> ソケットオプションの説明を参照のこと)。 このリストの要素は"
20187 "ホワイトスペースで区切られ、改行文字で終端される。 このリストは "
20188 "I<tcp_available_congestion_control> で表示されるリストの部分集合となる。 この"
20189 "リストのデフォルト値は、\"reno\" と I<tcp_congestion_control> のデフォルト設"
20190 "定をあわせたものとなる。"
20191
20192 #. type: TP
20193 #: build/C/man7/tcp.7:304
20194 #, no-wrap
20195 msgid "I<tcp_autocorking> (Boolean; default: enabled; since Linux 3.14)"
20196 msgstr "I<tcp_autocorking> (ブール値; デフォルト: 有効; Linux 3.14 以降)"
20197
20198 #.  commit f54b311142a92ea2e42598e347b84e1655caf8e3
20199 #.  Text heavily based on Documentation/networking/ip-sysctl.txt
20200 #. type: Plain text
20201 #: build/C/man7/tcp.7:321
20202 msgid ""
20203 "If this option is enabled, the kernel tries to coalesce small writes (from "
20204 "consecutive B<write>(2)  and B<sendmsg>(2)  calls) as much as possible, in "
20205 "order to decrease the total number of sent packets.  Coalescing is done if "
20206 "at least one prior packet for the flow is waiting in Qdisc queues or device "
20207 "transmit queue.  Applications can still use the B<TCP_CORK> socket option to "
20208 "obtain optimal behavior when they know how/when to uncork their sockets."
20209 msgstr ""
20210 "このオプションを有効にすると、 送信総パケット数を減らすため、 カーネルは小さ"
20211 "な write (連続する B<write>(2) や B<sendmsg>(2) の呼び出し) を可能な限り結合"
20212 "しようとする。 パケットの結合が行われるのは、そのフローの前のパケットが少なく"
20213 "とも一つは qdisc キューかデバイスの送信キューで送信待ちの場合である。 このオ"
20214 "プションが有効な場合でも B<TCP_CORK> オプションを使うことができ、アプリケー"
20215 "ションがソケットの「コルク解除」(送信待ち状態の解除) をいつどのように行えばよ"
20216 "いか分かっている場合には、最適な動作をさせることができる。"
20217
20218 #. type: TP
20219 #: build/C/man7/tcp.7:321
20220 #, no-wrap
20221 msgid "I<tcp_available_congestion_control> (String; read-only; since Linux 2.4.20)"
20222 msgstr "I<tcp_available_congestion_control> (String; read-only; Linux 2.4.20 以降)"
20223
20224 #.  The following is from 2.6.28-rc4: Documentation/networking/ip-sysctl.txt
20225 #. type: Plain text
20226 #: build/C/man7/tcp.7:332
20227 msgid ""
20228 "Show a list of the congestion-control algorithms that are registered.  The "
20229 "items in the list are separated by white space and terminated by a newline "
20230 "character.  This list is a limiting set for the list in "
20231 "I<tcp_allowed_congestion_control>.  More congestion-control algorithms may "
20232 "be available as modules, but not loaded."
20233 msgstr ""
20234 "登録されている輻輳制御アルゴリズムのリストを表示する。 このリストの要素はホワ"
20235 "イトスペースで区切られ、改行文字で終端される。 このリストに載っているものだけ"
20236 "が、 I<tcp_allowed_congestion_control> に表示される。 他の輻輳制御アルゴリズ"
20237 "ムがモジュールとして利用可能だが、 モジュールがロードされていないこともある。"
20238
20239 #. type: TP
20240 #: build/C/man7/tcp.7:332
20241 #, no-wrap
20242 msgid "I<tcp_app_win> (integer; default: 31; since Linux 2.4)"
20243 msgstr "I<tcp_app_win> (integer; default: 31; Linux 2.4 以降)"
20244
20245 #.  Since 2.4.0-test7
20246 #. type: Plain text
20247 #: build/C/man7/tcp.7:337
20248 msgid ""
20249 "This variable defines how many bytes of the TCP window are reserved for "
20250 "buffering overhead."
20251 msgstr ""
20252 "この変数は、TCP ウィンドウの何バイト分を バッファーリングのオーバーヘッド用に"
20253 "予約するかを指定する。"
20254
20255 #.  The following is from 2.6.28-rc4: Documentation/networking/ip-sysctl.txt
20256 #. type: Plain text
20257 #: build/C/man7/tcp.7:343
20258 msgid ""
20259 "A maximum of (I<window/2^tcp_app_win>, mss) bytes in the window are reserved "
20260 "for the application buffer.  A value of 0 implies that no amount is reserved."
20261 msgstr ""
20262 "そのウィンドウの I<window/2^tcp_app_win> と mss の大きいほう (バイト単位)  が"
20263 "アプリケーションバッファーとして予約される。 0 を指定すると一切予約領域を取ら"
20264 "ない。"
20265
20266 #. type: TP
20267 #: build/C/man7/tcp.7:343
20268 #, no-wrap
20269 msgid "I<tcp_base_mss> (Integer; default: 512; since Linux 2.6.17)"
20270 msgstr "I<tcp_base_mss> (Integer; default: 512; Linux 2.6.17 以降)"
20271
20272 #.  The following is from 2.6.12: Documentation/networking/ip-sysctl.txt
20273 #. type: Plain text
20274 #: build/C/man7/tcp.7:352
20275 msgid ""
20276 "The initial value of I<search_low> to be used by the packetization layer "
20277 "Path MTU discovery (MTU probing).  If MTU probing is enabled, this is the "
20278 "initial MSS used by the connection."
20279 msgstr ""
20280 "パケット化レイヤの Path MTU discovery (MTU probing) で、 I<search_low> の初期"
20281 "値と使用される値。 MTU probing が有効な場合、この値はその接続の MSS の初期値"
20282 "となる。"
20283
20284 #. type: TP
20285 #: build/C/man7/tcp.7:352
20286 #, no-wrap
20287 msgid "I<tcp_bic> (Boolean; default: disabled; Linux 2.4.27/2.6.6 to 2.6.13)"
20288 msgstr "I<tcp_bic> (ブール値; デフォルト: 無効; Linux 2.4.27/2.6.6 から 2.6.13 まで)"
20289
20290 #.  The following is from 2.6.12: Documentation/networking/ip-sysctl.txt
20291 #. type: Plain text
20292 #: build/C/man7/tcp.7:366
20293 msgid ""
20294 "Enable BIC TCP congestion control algorithm.  BIC-TCP is a sender-side only "
20295 "change that ensures a linear RTT fairness under large windows while offering "
20296 "both scalability and bounded TCP-friendliness.  The protocol combines two "
20297 "schemes called additive increase and binary search increase.  When the "
20298 "congestion window is large, additive increase with a large increment ensures "
20299 "linear RTT fairness as well as good scalability.  Under small congestion "
20300 "windows, binary search increase provides TCP friendliness."
20301 msgstr ""
20302 "BIC TCP 輻輳制御アルゴリズムを有効にする。 BIC-TCP は送信側のみの変更で、 ス"
20303 "ケーラビリティと TCP 親和性 (friendliness) の両方を提供しつつ、 大きなウィン"
20304 "ドウの下での線形な RTT 公平性を保証するものである。 このプロトコルでは "
20305 "additive increase (追加的な増加) と binary search increase (二分探索増加) と"
20306 "いわれる二つの仕組みを 組み合わせている。輻輳ウィンドウが大きいときは、増分の"
20307 "大きい additive increase により、スケーラビリティを確保しながら 線形な RTT 公"
20308 "平性を保証する。 輻輳ウィンドウが小さいときには binary search increase によ"
20309 "り TCP 親和性を達成している。"
20310
20311 #. type: TP
20312 #: build/C/man7/tcp.7:366
20313 #, no-wrap
20314 msgid "I<tcp_bic_low_window> (integer; default: 14; Linux 2.4.27/2.6.6 to 2.6.13)"
20315 msgstr "I<tcp_bic_low_window> (integer; default: 14; Linux 2.4.27/2.6.6 以降 2.6.13 まで)"
20316
20317 #.  The following is from 2.6.12: Documentation/networking/ip-sysctl.txt
20318 #. type: Plain text
20319 #: build/C/man7/tcp.7:373
20320 msgid ""
20321 "Set the threshold window (in packets) where BIC TCP starts to adjust the "
20322 "congestion window.  Below this threshold BIC TCP behaves the same as the "
20323 "default TCP Reno."
20324 msgstr ""
20325 "BIC TCP が輻輳ウィンドウの調整を開始する閾値ウィンドウ (パケット単位)  を設定"
20326 "する。この閾値を下回る場合、BIC TCP はデフォルトの TCP Reno と 同じ動作をす"
20327 "る。"
20328
20329 #. type: TP
20330 #: build/C/man7/tcp.7:373
20331 #, no-wrap
20332 msgid "I<tcp_bic_fast_convergence> (Boolean; default: enabled; Linux 2.4.27/2.6.6 to 2.6.13)"
20333 msgstr "I<tcp_bic_fast_convergence> (ブール値; デフォルト: 有効; Linux 2.4.27/2.6.6 以降 2.6.13 まで)"
20334
20335 #. type: Plain text
20336 #: build/C/man7/tcp.7:377
20337 msgid ""
20338 "Force BIC TCP to more quickly respond to changes in congestion window.  "
20339 "Allows two flows sharing the same connection to converge more rapidly."
20340 msgstr ""
20341 "BIC TCP が輻輳ウィンドウの変化により速く反応するようにする。 同じコネクション"
20342 "を共有する二つのフローが一つにまとまるのを より速く行うようにする。"
20343
20344 #. type: TP
20345 #: build/C/man7/tcp.7:377
20346 #, no-wrap
20347 msgid "I<tcp_congestion_control> (String; default: see text; since Linux 2.4.13)"
20348 msgstr "I<tcp_congestion_control> (String; default: 説明参照; Linux 2.4.13 以降)"
20349
20350 #.  The following is from 2.6.28-rc4: Documentation/networking/ip-sysctl.txt
20351 #. type: Plain text
20352 #: build/C/man7/tcp.7:384
20353 msgid ""
20354 "Set the default congestion-control algorithm to be used for new "
20355 "connections.  The algorithm \"reno\" is always available, but additional "
20356 "choices may be available depending on kernel configuration.  The default "
20357 "value for this file is set as part of kernel configuration."
20358 msgstr ""
20359 "新規の接続で使用されるデフォルトの輻輳制御アルゴリズムを設定する。 \"reno\" "
20360 "アルゴリズムは常に利用可能だが、 カーネル設定次第では別の選択肢が利用できるこ"
20361 "ともある。 このファイルのデフォルト値はカーネル設定の一つとして設定される。"
20362
20363 #. type: TP
20364 #: build/C/man7/tcp.7:384
20365 #, no-wrap
20366 msgid "I<tcp_dma_copybreak> (integer; default: 4096; since Linux 2.6.24)"
20367 msgstr "I<tcp_dma_copybreak> (integer; default: 4096; Linux 2.6.24 以降)"
20368
20369 #. type: Plain text
20370 #: build/C/man7/tcp.7:391
20371 msgid ""
20372 "Lower limit, in bytes, of the size of socket reads that will be offloaded to "
20373 "a DMA copy engine, if one is present in the system and the kernel was "
20374 "configured with the B<CONFIG_NET_DMA> option."
20375 msgstr ""
20376 "システムに DMA コピーエンジンが存在し、カーネルで B<CONFIG_NET_DMA> オプショ"
20377 "ンが有効になっている場合に、 DMA コピーエンジンにオフロードされるソケットの読"
20378 "み込みサイズの下限値 (バイト単位)。"
20379
20380 #. type: TP
20381 #: build/C/man7/tcp.7:391
20382 #, no-wrap
20383 msgid "I<tcp_dsack> (Boolean; default: enabled; since Linux 2.4)"
20384 msgstr "I<tcp_dsack> (ブール値; デフォルト: 有効; Linux 2.4 以降)"
20385
20386 #.  Since 2.4.0-test7
20387 #. type: Plain text
20388 #: build/C/man7/tcp.7:395
20389 msgid "Enable RFC\\ 2883 TCP Duplicate SACK support."
20390 msgstr "RFC\\ 2883 の TCP Duplicate SACK のサポートを有効にする。"
20391
20392 #. type: TP
20393 #: build/C/man7/tcp.7:395
20394 #, no-wrap
20395 msgid "I<tcp_ecn> (Boolean; default: disabled; since Linux 2.4)"
20396 msgstr "I<tcp_ecn> (ブール値; デフォルト: 無効; Linux 2.4 以降)"
20397
20398 #.  Since 2.4.0-test7
20399 #. type: Plain text
20400 #: build/C/man7/tcp.7:402
20401 msgid ""
20402 "Enable RFC\\ 2884 Explicit Congestion Notification.  When enabled, "
20403 "connectivity to some destinations could be affected due to older, "
20404 "misbehaving routers along the path causing connections to be dropped."
20405 msgstr ""
20406 "RFC\\ 2884 の Explicit Congestion Notification を有効にする。 これを有効にす"
20407 "ると、間違った振舞いをする古いルーターが 経路の途中にあるような接続先に対して"
20408 "影響が生じ、 場合によっては接続が落ちるかもしれない。"
20409
20410 #. type: TP
20411 #: build/C/man7/tcp.7:402
20412 #, no-wrap
20413 msgid "I<tcp_fack> (Boolean; default: enabled; since Linux 2.2)"
20414 msgstr "I<tcp_fack> (ブール値; デフォルト: 有効; Linux 2.2 以降)"
20415
20416 #.  Since 2.1.92
20417 #. type: Plain text
20418 #: build/C/man7/tcp.7:406
20419 msgid "Enable TCP Forward Acknowledgement support."
20420 msgstr "TCP Forward Acknowledgement のサポートを有効にする。"
20421
20422 #. type: TP
20423 #: build/C/man7/tcp.7:406
20424 #, no-wrap
20425 msgid "I<tcp_fin_timeout> (integer; default: 60; since Linux 2.2)"
20426 msgstr "I<tcp_fin_timeout> (integer; default: 60; Linux 2.2 以降)"
20427
20428 #.  Since 2.1.53
20429 #.  The following is from 2.6.12: Documentation/networking/ip-sysctl.txt
20430 #. type: Plain text
20431 #: build/C/man7/tcp.7:416
20432 msgid ""
20433 "This specifies how many seconds to wait for a final FIN packet before the "
20434 "socket is forcibly closed.  This is strictly a violation of the TCP "
20435 "specification, but required to prevent denial-of-service attacks.  In Linux "
20436 "2.2, the default value was 180."
20437 msgstr ""
20438 "ソケットを強制的にクローズする前に、 最後の FIN パケットを待つ時間を秒単位で"
20439 "指定する。 これは厳密には TCP の仕様を満たしていないが、 DoS 攻撃 (denial of "
20440 "service attack) から身を守るために必要である。 Linux 2.2 ではデフォルト値は "
20441 "180 であった。"
20442
20443 #. type: TP
20444 #: build/C/man7/tcp.7:416
20445 #, no-wrap
20446 msgid "I<tcp_frto> (integer; default: 0; since Linux 2.4.21/2.6)"
20447 msgstr "I<tcp_frto> (integer; default: 0; Linux 2.4.21/2.6 以降)"
20448
20449 #.  Since 2.4.21/2.5.43
20450 #. type: Plain text
20451 #: build/C/man7/tcp.7:425
20452 msgid ""
20453 "Enable F-RTO, an enhanced recovery algorithm for TCP retransmission timeouts "
20454 "(RTOs).  It is particularly beneficial in wireless environments where packet "
20455 "loss is typically due to random radio interference rather than intermediate "
20456 "router congestion.  See RFC 4138 for more details."
20457 msgstr ""
20458 "F-RTO を有効にする。F-RTO は TCP 再送タイムアウト (RTO) からの 復旧性能を向上"
20459 "させたアルゴリズムである。 この機能は無線環境で特に効果を発揮する。 無線環境"
20460 "では、通常は、中間ルーターの輻輳ではなくランダムな無線の干渉 によりパケットロ"
20461 "スが発生する。 詳細は RFC\\ 4138 を参照。"
20462
20463 #. type: Plain text
20464 #: build/C/man7/tcp.7:427
20465 msgid "This file can have one of the following values:"
20466 msgstr "このファイルは以下のいずれかの値を取ることができる。"
20467
20468 #. type: Plain text
20469 #: build/C/man7/tcp.7:430
20470 msgid "Disabled."
20471 msgstr "F-RTO を無効にする。"
20472
20473 #. type: Plain text
20474 #: build/C/man7/tcp.7:432
20475 msgid "The basic version F-RTO algorithm is enabled."
20476 msgstr "基本版の F-RTO アルゴリズムを有効にする。"
20477
20478 #. type: Plain text
20479 #: build/C/man7/tcp.7:437
20480 msgid ""
20481 "Enable SACK-enhanced F-RTO if flow uses SACK.  The basic version can be used "
20482 "also when SACK is in use though in that case scenario(s) exists where F-RTO "
20483 "interacts badly with the packet counting of the SACK-enabled TCP flow."
20484 msgstr ""
20485 "そのフローで SACK を使用する場合、SACK 拡張版の F-RTO を有効にする。 基本版"
20486 "の F-RTO も SACK が使用されている場合にも使用できるが、 基本版の場合には F-"
20487 "RTO が SACK が有効になった TCP フローでの パケット数計測と、相性が悪く相互干"
20488 "渉が起こる場面が存在する。"
20489
20490 #. type: Plain text
20491 #: build/C/man7/tcp.7:441
20492 msgid ""
20493 "Before Linux 2.6.22, this parameter was a Boolean value, supporting just "
20494 "values 0 and 1 above."
20495 msgstr ""
20496 "Linu 2.6.22 より前では、このパラメーターはブール値であり、 上記の 0 と 1 のみ"
20497 "をサポートしていた。"
20498
20499 #. type: TP
20500 #: build/C/man7/tcp.7:441
20501 #, no-wrap
20502 msgid "I<tcp_frto_response> (integer; default: 0; since Linux 2.6.22)"
20503 msgstr "I<tcp_frto_response> (integer; default: 0; Linux 2.6.22 以降)"
20504
20505 #. type: Plain text
20506 #: build/C/man7/tcp.7:448
20507 msgid ""
20508 "When F-RTO has detected that a TCP retransmission timeout was spurious (i.e, "
20509 "the timeout would have been avoided had TCP set a longer retransmission "
20510 "timeout), TCP has several options concerning what to do next.  Possible "
20511 "values are:"
20512 msgstr ""
20513 "F-RTO が TCP 再送タイムアウトが偽物だと検出した場合 (つまり、TCP がもっと長い"
20514 "再送タイムアウトを設定していれば タイムアウトが避けられた場合)、 次にどうする"
20515 "かに関して選択肢がいくつかある。 以下の値を選択できる。"
20516
20517 #. type: Plain text
20518 #: build/C/man7/tcp.7:456
20519 msgid ""
20520 "Rate halving based; a smooth and conservative response, results in halved "
20521 "congestion window (I<cwnd>)  and slow-start threshold (I<ssthresh>)  after "
20522 "one RTT."
20523 msgstr ""
20524 "レートを元の半分にする。 滑らかで、保守的な反応を行い、RTT 1回分の時間後に 輻"
20525 "輳ウィンドウ (I<cwnd>)  とスロースタートの閾値 (I<ssthresh>)  が半分になる。"
20526
20527 #. type: Plain text
20528 #: build/C/man7/tcp.7:463
20529 msgid ""
20530 "Very conservative response; not recommended because even though being valid, "
20531 "it interacts poorly with the rest of Linux TCP; halves I<cwnd> and "
20532 "I<ssthresh> immediately."
20533 msgstr ""
20534 "非常に保守的な反応。このオプションの使用は推奨されない。 反応が正しかった場合"
20535 "であっても、Linux TCP の他の部分と うまく連携できないからである。 I<cwnd> と "
20536 "I<ssthresh> は直ちに半分にされる。"
20537
20538 #. type: Plain text
20539 #: build/C/man7/tcp.7:472
20540 msgid ""
20541 "Aggressive response; undoes congestion-control measures that are now known "
20542 "to be unnecessary (ignoring the possibility of a lost retransmission that "
20543 "would require TCP to be more cautious); I<cwnd> and I<ssthresh> are restored "
20544 "to the values prior to timeout."
20545 msgstr ""
20546 "積極的な反応。 不要と判明した輻輳制御の測定情報を取り消す (TCP がもっと注意深"
20547 "く扱うべき再送が失われる可能性を無視する)。 。 I<cwnd> と I<ssthresh> はタイ"
20548 "ムアウト前の値に戻される。"
20549
20550 #. type: TP
20551 #: build/C/man7/tcp.7:473
20552 #, no-wrap
20553 msgid "I<tcp_keepalive_intvl> (integer; default: 75; since Linux 2.4)"
20554 msgstr "I<tcp_keepalive_intvl> (integer; default: 75; Linux 2.4 以降)"
20555
20556 #.  Since 2.3.18
20557 #. type: Plain text
20558 #: build/C/man7/tcp.7:477
20559 msgid "The number of seconds between TCP keep-alive probes."
20560 msgstr "TCP keep-alive のプローブを送る間隔 (秒単位)。"
20561
20562 #. type: TP
20563 #: build/C/man7/tcp.7:477
20564 #, no-wrap
20565 msgid "I<tcp_keepalive_probes> (integer; default: 9; since Linux 2.2)"
20566 msgstr "I<tcp_keepalive_probes> (integer; default: 9; Linux 2.2 以降)"
20567
20568 #.  Since 2.1.43
20569 #. type: Plain text
20570 #: build/C/man7/tcp.7:483
20571 msgid ""
20572 "The maximum number of TCP keep-alive probes to send before giving up and "
20573 "killing the connection if no response is obtained from the other end."
20574 msgstr ""
20575 "TCP keep-alive プローブの最大回数。 この回数だけ試しても接続先から反応が得ら"
20576 "れない場合は、 あきらめて接続を切断する。"
20577
20578 #. type: TP
20579 #: build/C/man7/tcp.7:483
20580 #, no-wrap
20581 msgid "I<tcp_keepalive_time> (integer; default: 7200; since Linux 2.2)"
20582 msgstr "I<tcp_keepalive_time> (integer; default: 7200; Linux 2.2 以降)"
20583
20584 #.  Since 2.1.43
20585 #. type: Plain text
20586 #: build/C/man7/tcp.7:495
20587 msgid ""
20588 "The number of seconds a connection needs to be idle before TCP begins "
20589 "sending out keep-alive probes.  Keep-alives are sent only when the "
20590 "B<SO_KEEPALIVE> socket option is enabled.  The default value is 7200 seconds "
20591 "(2 hours).  An idle connection is terminated after approximately an "
20592 "additional 11 minutes (9 probes an interval of 75 seconds apart) when keep-"
20593 "alive is enabled."
20594 msgstr ""
20595 "接続がアイドル状態になってから、keep-alive プローブを送信するまでの時間を秒単"
20596 "位で指定する。 B<SO_KEEPALIVE> ソケットオプションが有効になっている場合のみ "
20597 "keep-alive は送信される。 デフォルト値は 7200 秒 (2 時間)。 keep-alive が有効"
20598 "になっている場合、 さらにおよそ 11 分 (75 秒間隔の 9 プローブ分)  経過すると"
20599 "アイドル状態の接続は終了させられる。"
20600
20601 #.  The following is from 2.6.12: Documentation/networking/ip-sysctl.txt
20602 #. type: Plain text
20603 #: build/C/man7/tcp.7:500
20604 msgid ""
20605 "Note that underlying connection tracking mechanisms and application timeouts "
20606 "may be much shorter."
20607 msgstr ""
20608 "下層にある接続追跡機構やアプリケーションでのタイムアウトは、 もっとずっと短い"
20609 "かもしれない。"
20610
20611 #. type: TP
20612 #: build/C/man7/tcp.7:500
20613 #, no-wrap
20614 msgid "I<tcp_low_latency> (Boolean; default: disabled; since Linux 2.4.21/2.6)"
20615 msgstr "I<tcp_low_latency> (ブール値; デフォルト: 無効; Linux 2.4.21/2.6 以降)"
20616
20617 #.  Since 2.4.21/2.5.60
20618 #. type: Plain text
20619 #: build/C/man7/tcp.7:508
20620 msgid ""
20621 "If enabled, the TCP stack makes decisions that prefer lower latency as "
20622 "opposed to higher throughput.  It this option is disabled, then higher "
20623 "throughput is preferred.  An example of an application where this default "
20624 "should be changed would be a Beowulf compute cluster."
20625 msgstr ""
20626 "有効にすると、TCP スタックはスループットを高くするよりも 遅延を少なくすること"
20627 "を優先して判断を行う。 このオプションを無効にすると、スループットを高くするこ"
20628 "とが優先される。 このデフォルト値を変更した方がよいアプリケーションの例として"
20629 "は Beowulf コンピュータクラスタが挙げられるだろう。"
20630
20631 #. type: TP
20632 #: build/C/man7/tcp.7:508
20633 #, no-wrap
20634 msgid "I<tcp_max_orphans> (integer; default: see below; since Linux 2.4)"
20635 msgstr "I<tcp_max_orphans> (integer; default: see below; Linux 2.4 以降)"
20636
20637 #.  Since 2.3.41
20638 #. type: Plain text
20639 #: build/C/man7/tcp.7:522
20640 msgid ""
20641 "The maximum number of orphaned (not attached to any user file handle) TCP "
20642 "sockets allowed in the system.  When this number is exceeded, the orphaned "
20643 "connection is reset and a warning is printed.  This limit exists only to "
20644 "prevent simple denial-of-service attacks.  Lowering this limit is not "
20645 "recommended.  Network conditions might require you to increase the number of "
20646 "orphans allowed, but note that each orphan can eat up to ~64K of unswappable "
20647 "memory.  The default initial value is set equal to the kernel parameter "
20648 "NR_FILE.  This initial default is adjusted depending on the memory in the "
20649 "system."
20650 msgstr ""
20651 "システムが許容する、 orphan な (どのユーザーファイルハンドルにもアタッチされ"
20652 "ていない)  TCP ソケットの最大数。 この数を越えると、orphan な接続はリセットさ"
20653 "れ、警告が表示される。 この制限が存在するのは、単純な使用不能 (denial-of-"
20654 "service) 攻撃を 防ぐために過ぎない。この値を小さくすることは推奨しない。 ネッ"
20655 "トワークの条件によっては、この数値を大きくしないといけないかもしれないが、 "
20656 "orphan なソケットひとつあたり 64K 程度のスワップ不可能なメモリーを消費するこ"
20657 "とも注意せよ。 デフォルトの初期値はカーネルパラメーターの NR_FILE と等しい。 "
20658 "この初期デフォルト値はシステムのメモリーに応じて調整される。"
20659
20660 #. type: TP
20661 #: build/C/man7/tcp.7:522
20662 #, no-wrap
20663 msgid "I<tcp_max_syn_backlog> (integer; default: see below; since Linux 2.2)"
20664 msgstr "I<tcp_max_syn_backlog> (integer; default: 下記参照; Linux 2.2 以降)"
20665
20666 #.  Since 2.1.53
20667 #. type: Plain text
20668 #: build/C/man7/tcp.7:539
20669 msgid ""
20670 "The maximum number of queued connection requests which have still not "
20671 "received an acknowledgement from the connecting client.  If this number is "
20672 "exceeded, the kernel will begin dropping requests.  The default value of 256 "
20673 "is increased to 1024 when the memory present in the system is adequate or "
20674 "greater (E<gt>= 128Mb), and reduced to 128 for those systems with very low "
20675 "memory (E<lt>= 32Mb).  It is recommended that if this needs to be increased "
20676 "above 1024, TCP_SYNQ_HSIZE in I<include/net/tcp.h> be modified to keep "
20677 "TCP_SYNQ_HSIZE*16E<lt>=tcp_max_syn_backlog, and the kernel be recompiled."
20678 msgstr ""
20679 "接続してきているクライアントから ack を受信していない状態の接続リクエストを"
20680 "キューに置ける最大数。 この数値を越えると、カーネルはリクエストを捨て始め"
20681 "る。 デフォルトの値は 256 で、 システムに充分なメモリーがある (128Mb 以上) 場"
20682 "合は 1024 になり、 メモリーが非常に少ない場合 (32 Mb 以下) は 128 になる。 こ"
20683 "の数値を 1024 以上に増やしたい場合は、 I<include/net/tcp.h> の "
20684 "TCP_SYNQ_HSIZE を TCP_SYNQ_HSIZE*16E<lt>=tcp_max_syn_backlog のように修正"
20685 "し、 カーネルを再コンパイルすることを奨める。"
20686
20687 #. type: TP
20688 #: build/C/man7/tcp.7:539
20689 #, no-wrap
20690 msgid "I<tcp_max_tw_buckets> (integer; default: see below; since Linux 2.4)"
20691 msgstr "I<tcp_max_tw_buckets> (integer; default: 下記参照; Linux 2.4 以降)"
20692
20693 #.  Since 2.3.41
20694 #. type: Plain text
20695 #: build/C/man7/tcp.7:549
20696 msgid ""
20697 "The maximum number of sockets in TIME_WAIT state allowed in the system.  "
20698 "This limit exists only to prevent simple denial-of-service attacks.  The "
20699 "default value of NR_FILE*2 is adjusted depending on the memory in the "
20700 "system.  If this number is exceeded, the socket is closed and a warning is "
20701 "printed."
20702 msgstr ""
20703 "システムが許容する TIME_WAIT 状態にあるソケットの最大数。 この制限が存在する"
20704 "のは、 単純な使用不能 (denial-of-service) 攻撃を防ぐために過ぎない。 デフォル"
20705 "ト値は NR_FILE*2 で、システムのメモリーに応じて調整される。 この数値を越える"
20706 "と、そのようなソケットはクローズされ、警告が表示される。"
20707
20708 #. type: TP
20709 #: build/C/man7/tcp.7:549
20710 #, no-wrap
20711 msgid "I<tcp_moderate_rcvbuf> (Boolean; default: enabled; since Linux 2.4.17/2.6.7)"
20712 msgstr "I<tcp_moderate_rcvbuf> (ブール値; デフォルト: 有効; Linux 2.4.17/2.6.7 以降)"
20713
20714 #.  The following is from 2.6.28-rc4: Documentation/networking/ip-sysctl.txt
20715 #. type: Plain text
20716 #: build/C/man7/tcp.7:556
20717 msgid ""
20718 "If enabled, TCP performs receive buffer auto-tuning, attempting to "
20719 "automatically size the buffer (no greater than I<tcp_rmem[2]>)  to match the "
20720 "size required by the path for full throughput."
20721 msgstr ""
20722 "有効にすると、TCP は受信バッファーの自動調整を行う。 具体的には、 "
20723 "(I<tcp_rmem[2]> を超えない範囲で) バッファーの大きさを自動的に変化させ、 その"
20724 "経路で最大のスループットを達成するのに必要な大きさに合わせようとする。"
20725
20726 #. type: TP
20727 #: build/C/man7/tcp.7:556
20728 #, no-wrap
20729 msgid "I<tcp_mem> (since Linux 2.4)"
20730 msgstr "I<tcp_mem> (Linux 2.4 以降)"
20731
20732 #.  Since 2.4.0-test7
20733 #. type: Plain text
20734 #: build/C/man7/tcp.7:568
20735 msgid ""
20736 "This is a vector of 3 integers: [low, pressure, high].  These bounds, "
20737 "measured in units of the system page size, are used by TCP to track its "
20738 "memory usage.  The defaults are calculated at boot time from the amount of "
20739 "available memory.  (TCP can only use I<low memory> for this, which is "
20740 "limited to around 900 megabytes on 32-bit systems.  64-bit systems do not "
20741 "suffer this limitation.)"
20742 msgstr ""
20743 "これは 3 つの整数 [low, pressure, high] からなるベクトル値である。 これらは "
20744 "TCP がメモリー使用量を追跡するために用いられる (使用量はシステムのページサイ"
20745 "ズ単位で計測される)。 デフォルトはブート時に利用できるメモリーの量から計算さ"
20746 "れる。 (実際には、TCP は I<low memory> のみを使用する。値は 32ビットシステム"
20747 "では約 900 メガバイトに制限される。 64 ビットシステムではこの制限はない。)"
20748
20749 #. type: TP
20750 #: build/C/man7/tcp.7:569
20751 #, no-wrap
20752 msgid "I<low>"
20753 msgstr "I<low>"
20754
20755 #. type: Plain text
20756 #: build/C/man7/tcp.7:573
20757 msgid ""
20758 "TCP doesn't regulate its memory allocation when the number of pages it has "
20759 "allocated globally is below this number."
20760 msgstr ""
20761 "TCP は、グローバルにアロケートしたページがこの数値以下の場合は、 メモリーアロ"
20762 "ケーションを調整しない。"
20763
20764 #. type: TP
20765 #: build/C/man7/tcp.7:573 build/C/man7/udp.7:151
20766 #, no-wrap
20767 msgid "I<pressure>"
20768 msgstr "I<pressure>"
20769
20770 #. type: Plain text
20771 #: build/C/man7/tcp.7:582
20772 msgid ""
20773 "When the amount of memory allocated by TCP exceeds this number of pages, TCP "
20774 "moderates its memory consumption.  This memory pressure state is exited once "
20775 "the number of pages allocated falls below the I<low> mark."
20776 msgstr ""
20777 "TCP がアロケートしたメモリーがこの数値分のページ数を越えると、 TCP はメモリー"
20778 "消費を抑えるようになる。 アロケートしたページ数が I<low> 以下になると、このメ"
20779 "モリー圧迫状態から脱する。"
20780
20781 #. type: TP
20782 #: build/C/man7/tcp.7:582
20783 #, no-wrap
20784 msgid "I<high>"
20785 msgstr "I<high>"
20786
20787 #. type: Plain text
20788 #: build/C/man7/tcp.7:586
20789 msgid ""
20790 "The maximum number of pages, globally, that TCP will allocate.  This value "
20791 "overrides any other limits imposed by the kernel."
20792 msgstr ""
20793 "TCP がグローバルに割り当てるページ数の最大値。 この値はカーネルによって課され"
20794 "るあらゆる制限よりも優先される。"
20795
20796 #. type: TP
20797 #: build/C/man7/tcp.7:587
20798 #, no-wrap
20799 msgid "I<tcp_mtu_probing> (integer; default: 0; since Linux 2.6.17)"
20800 msgstr "I<tcp_mtu_probing> (integer; default: 0; Linux 2.6.17 以降)"
20801
20802 #.  The following is from 2.6.28-rc4: Documentation/networking/ip-sysctl.txt
20803 #. type: Plain text
20804 #: build/C/man7/tcp.7:592
20805 msgid ""
20806 "This parameter controls TCP Packetization-Layer Path MTU Discovery.  The "
20807 "following values may be assigned to the file:"
20808 msgstr ""
20809 "このパラメーターは、TCP のパケット化レイヤの Path MTU discovery を制御する。 "
20810 "このファイルには以下の値を設定できる。"
20811
20812 #. type: Plain text
20813 #: build/C/man7/tcp.7:595
20814 msgid "Disabled"
20815 msgstr "無効にする。"
20816
20817 #. type: Plain text
20818 #: build/C/man7/tcp.7:597
20819 msgid "Disabled by default, enabled when an ICMP black hole detected"
20820 msgstr ""
20821 "デフォルトでは無効だが、ICMP ブラックホールが検出された場合は有効にする。"
20822
20823 #. type: Plain text
20824 #: build/C/man7/tcp.7:600
20825 msgid "Always enabled, use initial MSS of I<tcp_base_mss>."
20826 msgstr "常に有効にする。 MSS の初期値として I<tcp_base_mss> が使用される。"
20827
20828 #. type: TP
20829 #: build/C/man7/tcp.7:601
20830 #, no-wrap
20831 msgid "I<tcp_no_metrics_save> (Boolean; default: disabled; since Linux 2.6.6)"
20832 msgstr "I<tcp_no_metrics_save> (ブール値; デフォルト: 無効; Linux 2.6.6 以降)"
20833
20834 #.  The following is from 2.6.28-rc4: Documentation/networking/ip-sysctl.txt
20835 #. type: Plain text
20836 #: build/C/man7/tcp.7:612
20837 msgid ""
20838 "By default, TCP saves various connection metrics in the route cache when the "
20839 "connection closes, so that connections established in the near future can "
20840 "use these to set initial conditions.  Usually, this increases overall "
20841 "performance, but it may sometimes cause performance degradation.  If "
20842 "I<tcp_no_metrics_save> is enabled, TCP will not cache metrics on closing "
20843 "connections."
20844 msgstr ""
20845 "デフォルトでは、TCP は接続クローズ時に各種の接続パラメーターを ルートキャッ"
20846 "シュ (route cache) に保存し、近い将来に接続が確立された際に これらの情報を初"
20847 "期状態として使用できるようになっている。 通常は、これにより全体として性能が向"
20848 "上するが、 時として性能の劣化を引き起こすこともある。 I<tcp_no_metrics_save> "
20849 "を有効にすると、TCP は接続クローズ時に接続パラメーターをキャッシュ しなくな"
20850 "る。"
20851
20852 #. type: TP
20853 #: build/C/man7/tcp.7:612
20854 #, no-wrap
20855 msgid "I<tcp_orphan_retries> (integer; default: 8; since Linux 2.4)"
20856 msgstr "I<tcp_orphan_retries> (integer; default: 8; Linux 2.4 以降)"
20857
20858 #.  Since 2.3.41
20859 #. type: Plain text
20860 #: build/C/man7/tcp.7:617
20861 msgid ""
20862 "The maximum number of attempts made to probe the other end of a connection "
20863 "which has been closed by our end."
20864 msgstr "こちらからクローズした接続について、 先方をプローブする最大試行数。"
20865
20866 #. type: TP
20867 #: build/C/man7/tcp.7:617
20868 #, no-wrap
20869 msgid "I<tcp_reordering> (integer; default: 3; since Linux 2.4)"
20870 msgstr "I<tcp_reordering> (integer; default: 3; Linux 2.4 以降)"
20871
20872 #.  Since 2.4.0-test7
20873 #. type: Plain text
20874 #: build/C/man7/tcp.7:626
20875 msgid ""
20876 "The maximum a packet can be reordered in a TCP packet stream without TCP "
20877 "assuming packet loss and going into slow start.  It is not advisable to "
20878 "change this number.  This is a packet reordering detection metric designed "
20879 "to minimize unnecessary back off and retransmits provoked by reordering of "
20880 "packets on a connection."
20881 msgstr ""
20882 "TCP パケットストリームでパケット順序の逆転が発生しただけであり、 パケットロス"
20883 "が起こったとはみなさない、パケット数の最大値。 この値を超えてパケットの順序逆"
20884 "転が起こると、パケットロスが生じたと みなし、slow start に入る。 この数値は変"
20885 "更しないほうが良い。 これは、接続中のパケットの並び替えによって生じる 不必要"
20886 "な速度低下や再送を最小化するように設計された、 パケット並び替え (packet "
20887 "reordering) の検知メトリックなのである。"
20888
20889 #. type: TP
20890 #: build/C/man7/tcp.7:626
20891 #, no-wrap
20892 msgid "I<tcp_retrans_collapse> (Boolean; default: enabled; since Linux 2.2)"
20893 msgstr "I<tcp_retrans_collapse> (ブール値; デフォルト: 有効; Linux 2.2 以降)"
20894
20895 #.  Since 2.1.96
20896 #. type: Plain text
20897 #: build/C/man7/tcp.7:630
20898 msgid "Try to send full-sized packets during retransmit."
20899 msgstr "再送の際にフルサイズのパケットを送ろうとする。"
20900
20901 #. type: TP
20902 #: build/C/man7/tcp.7:630
20903 #, no-wrap
20904 msgid "I<tcp_retries1> (integer; default: 3; since Linux 2.2)"
20905 msgstr "I<tcp_retries1> (integer; default: 3; Linux 2.2 以降)"
20906
20907 #.  Since 2.1.43
20908 #. type: Plain text
20909 #: build/C/man7/tcp.7:640
20910 msgid ""
20911 "The number of times TCP will attempt to retransmit a packet on an "
20912 "established connection normally, without the extra effort of getting the "
20913 "network layers involved.  Once we exceed this number of retransmits, we "
20914 "first have the network layer update the route if possible before each new "
20915 "retransmit.  The default is the RFC specified minimum of 3."
20916 msgstr ""
20917 "普通に確立されている接続上に、 TCP がネットワーク層を巻き込まずに再送を試みる"
20918 "回数。 再送がこの回数を越えると、まず最初に、 新しい再送を送る前に可能なら"
20919 "ネットワーク層に経路を更新させる。 デフォルトは RFC が指定している最少数であ"
20920 "る 3。"
20921
20922 #. type: TP
20923 #: build/C/man7/tcp.7:640
20924 #, no-wrap
20925 msgid "I<tcp_retries2> (integer; default: 15; since Linux 2.2)"
20926 msgstr "I<tcp_retries2> (integer; default: 15; Linux 2.2 以降)"
20927
20928 #.  Since 2.1.43
20929 #. type: Plain text
20930 #: build/C/man7/tcp.7:650
20931 msgid ""
20932 "The maximum number of times a TCP packet is retransmitted in established "
20933 "state before giving up.  The default value is 15, which corresponds to a "
20934 "duration of approximately between 13 to 30 minutes, depending on the "
20935 "retransmission timeout.  The RFC\\ 1122 specified minimum limit of 100 "
20936 "seconds is typically deemed too short."
20937 msgstr ""
20938 "確立状態の接続に、この回数 TCP パケットの再送信を 行なってもだめな場合はあき"
20939 "らめる。 デフォルト値は 15 で、これは (再送のタイムアウトに依存するが)  およ"
20940 "そ 13〜30 分程度の期間に対応する。 RFC\\ 1122 は最小の限界を 100 秒と置いてい"
20941 "るが、 これはたいていの場合には短すぎると思われる。"
20942
20943 #. type: TP
20944 #: build/C/man7/tcp.7:650
20945 #, no-wrap
20946 msgid "I<tcp_rfc1337> (Boolean; default: disabled; since Linux 2.2)"
20947 msgstr "I<tcp_rfc1337> (ブール値; デフォルト: 無効; Linux 2.2 以降)"
20948
20949 #.  Since 2.1.90
20950 #. type: Plain text
20951 #: build/C/man7/tcp.7:658
20952 msgid ""
20953 "Enable TCP behavior conformant with RFC\\ 1337.  When disabled, if a RST is "
20954 "received in TIME_WAIT state, we close the socket immediately without waiting "
20955 "for the end of the TIME_WAIT period."
20956 msgstr ""
20957 "TCP の動作を RFC\\ 1337 に準拠させる。 無効にすると、TIME_WAIT 状態のときに "
20958 "RST が受信された場合、 TIME_WAIT 期間の終了を待たずにそのソケットを直ちにク"
20959 "ローズする。"
20960
20961 #. type: TP
20962 #: build/C/man7/tcp.7:658
20963 #, no-wrap
20964 msgid "I<tcp_rmem> (since Linux 2.4)"
20965 msgstr "I<tcp_rmem> (Linux 2.4 以降)"
20966
20967 #.  Since 2.4.0-test7
20968 #. type: Plain text
20969 #: build/C/man7/tcp.7:666
20970 msgid ""
20971 "This is a vector of 3 integers: [min, default, max].  These parameters are "
20972 "used by TCP to regulate receive buffer sizes.  TCP dynamically adjusts the "
20973 "size of the receive buffer from the defaults listed below, in the range of "
20974 "these values, depending on memory available in the system."
20975 msgstr ""
20976 "これは 3 つの整数 [min, default, max] からなるベクトル値である。 これらは "
20977 "TCP が受信バッファーサイズを調整するために用いられる。 TCP は、システムで利用"
20978 "できるメモリーに応じて、 受信バッファーのサイズをこれらの変数の範囲で 以下に"
20979 "示すデフォルトから動的に調整する。"
20980
20981 #. type: TP
20982 #: build/C/man7/tcp.7:667 build/C/man7/tcp.7:844 build/C/man7/udp.7:145
20983 #, no-wrap
20984 msgid "I<min>"
20985 msgstr "I<min>"
20986
20987 #. type: Plain text
20988 #: build/C/man7/tcp.7:682
20989 msgid ""
20990 "minimum size of the receive buffer used by each TCP socket.  The default "
20991 "value is the system page size.  (On Linux 2.4, the default value is 4K, "
20992 "lowered to B<PAGE_SIZE> bytes in low-memory systems.)  This value is used to "
20993 "ensure that in memory pressure mode, allocations below this size will still "
20994 "succeed.  This is not used to bound the size of the receive buffer declared "
20995 "using B<SO_RCVBUF> on a socket."
20996 msgstr ""
20997 "各 TCP ソケットが用いる受信バッファーの最小サイズ。 デフォルト値はシステムの"
20998 "ページサイズである (Linux 2.4 では、デフォルト値は 4K バイトで、 メモリーの少"
20999 "ないシステムでは B<PAGE_SIZE> バイトに減らされる)。 この値は、メモリー圧迫"
21000 "モードにおいても、 このサイズの割り当てが成功することを保証するために用いられ"
21001 "る。 これは、 B<SO_RCVBUF> を用いてソケットの最低受信バッファーサイズを宣言す"
21002 "る際には用いられない。"
21003
21004 #. type: TP
21005 #: build/C/man7/tcp.7:682 build/C/man7/tcp.7:854
21006 #, no-wrap
21007 msgid "I<default>"
21008 msgstr "I<default>"
21009
21010 #. type: Plain text
21011 #: build/C/man7/tcp.7:696
21012 msgid ""
21013 "the default size of the receive buffer for a TCP socket.  This value "
21014 "overwrites the initial default buffer size from the generic global I<net."
21015 "core.rmem_default> defined for all protocols.  The default value is 87380 "
21016 "bytes.  (On Linux 2.4, this will be lowered to 43689 in low-memory "
21017 "systems.)  If larger receive buffer sizes are desired, this value should be "
21018 "increased (to affect all sockets).  To employ large TCP windows, the I<net."
21019 "ipv4.tcp_window_scaling> must be enabled (default)."
21020 msgstr ""
21021 "TCP ソケットの受信バッファーのデフォルトサイズ。 この値は、すべてのプロトコル"
21022 "に対して定義されている、 ジェネリックなグローバルのデフォルトバッファーサイ"
21023 "ズ I<net.core.rmem_default> より優先される。 デフォルト値は 87380 バイトであ"
21024 "る (Linux 2.4 では、メモリーの少ないシステムの場合 43689 まで減らされる)。 大"
21025 "きな受信バッファーサイズが必要な場合は、 この値を増やすべきである (すべてのソ"
21026 "ケットに影響する)。 大きな TCP ウィンドウを用いるには、 I<net.ipv4."
21027 "tcp_window_scaling> を有効にしておかなければならない (デフォルトは有効)。"
21028
21029 #. type: TP
21030 #: build/C/man7/tcp.7:696 build/C/man7/tcp.7:868 build/C/man7/udp.7:157
21031 #, no-wrap
21032 msgid "I<max>"
21033 msgstr "I<max>"
21034
21035 #. type: Plain text
21036 #: build/C/man7/tcp.7:705
21037 msgid ""
21038 "the maximum size of the receive buffer used by each TCP socket.  This value "
21039 "does not override the global I<net.core.rmem_max>.  This is not used to "
21040 "limit the size of the receive buffer declared using B<SO_RCVBUF> on a "
21041 "socket.  The default value is calculated using the formula"
21042 msgstr ""
21043 "各 TCP ソケットで用いる受信バッファーの最大サイズ。 この値よりもグローバルの "
21044 "I<net.core.rmem_max> が優先される。 これは、 B<SO_RCVBUF> を用いてソケットの"
21045 "受信バッファーサイズ制限を宣言する際には用いられない。 デフォルト値は以下の式"
21046 "で計算される。"
21047
21048 #. type: Plain text
21049 #: build/C/man7/tcp.7:707
21050 #, no-wrap
21051 msgid "    max(87380, min(4MB, I<tcp_mem>[1]*PAGE_SIZE/128))\n"
21052 msgstr "    max(87380, min(4MB, I<tcp_mem>[1]*PAGE_SIZE/128))\n"
21053
21054 #. type: Plain text
21055 #: build/C/man7/tcp.7:710
21056 msgid ""
21057 "(On Linux 2.4, the default is 87380*2 bytes, lowered to 87380 in low-memory "
21058 "systems)."
21059 msgstr ""
21060 "(Linux 2.4 では、デフォルト値は 87380*2 バイトで、 メモリーの少ないシステムで"
21061 "は 87380 まで減らされる。)"
21062
21063 #. type: TP
21064 #: build/C/man7/tcp.7:711
21065 #, no-wrap
21066 msgid "I<tcp_sack> (Boolean; default: enabled; since Linux 2.2)"
21067 msgstr "I<tcp_sack> (ブール値; デフォルト: 有効; Linux 2.2 以降)"
21068
21069 #.  Since 2.1.36
21070 #. type: Plain text
21071 #: build/C/man7/tcp.7:715
21072 msgid "Enable RFC\\ 2018 TCP Selective Acknowledgements."
21073 msgstr "RFC\\ 2018 の TCP Selective Acknowledgements を有効にする。"
21074
21075 #. type: TP
21076 #: build/C/man7/tcp.7:715
21077 #, no-wrap
21078 msgid "I<tcp_slow_start_after_idle> (Boolean; default: enabled; since Linux 2.6.18)"
21079 msgstr "I<tcp_slow_start_after_idle> (ブール値; デフォルト: 有効; Linux 2.6.18 以降)"
21080
21081 #.  The following is from 2.6.28-rc4: Documentation/networking/ip-sysctl.txt
21082 #. type: Plain text
21083 #: build/C/man7/tcp.7:723
21084 msgid ""
21085 "If enabled, provide RFC 2861 behavior and time out the congestion window "
21086 "after an idle period.  An idle period is defined as the current RTO "
21087 "(retransmission timeout).  If disabled, the congestion window will not be "
21088 "timed out after an idle period."
21089 msgstr ""
21090 "有効にすると、RFC 2861 の動作が行われ、 アイドル時間経過後に輻輳ウィンドウを"
21091 "タイムアウトさせる。 アイドル時間は現在の RTO (再送タイムアウト) で定義され"
21092 "る。 無効にすると、輻輳ウィンドウはアイドル時間経過後もタイムアウトされない。"
21093
21094 #. type: TP
21095 #: build/C/man7/tcp.7:723
21096 #, no-wrap
21097 msgid "I<tcp_stdurg> (Boolean; default: disabled; since Linux 2.2)"
21098 msgstr "I<tcp_stdurg> (ブール値; デフォルト: 無効; Linux 2.2 以降)"
21099
21100 #.  Since 2.1.44
21101 #.  RFC 793 was ambiguous in its specification of the meaning of the
21102 #.  urgent pointer.  RFC 1122 (and RFC 961) fixed on a particular
21103 #.  resolution of this ambiguity (unfortunately the "wrong" one).
21104 #. type: Plain text
21105 #: build/C/man7/tcp.7:737
21106 msgid ""
21107 "If this option is enabled, then use the RFC\\ 1122 interpretation of the TCP "
21108 "urgent-pointer field.  According to this interpretation, the urgent pointer "
21109 "points to the last byte of urgent data.  If this option is disabled, then "
21110 "use the BSD-compatible interpretation of the urgent pointer: the urgent "
21111 "pointer points to the first byte after the urgent data.  Enabling this "
21112 "option may lead to interoperability problems."
21113 msgstr ""
21114 "このオプションを有効にすると、 TCP 緊急ポインター (urgent-pointer)  フィール"
21115 "ドを RFC\\ 1122 に従った解釈を行う。 この解釈に従うと、緊急ポインターは緊急"
21116 "データの最後のバイトを指す。 このオプションを無効にすると、緊急ポインターの解"
21117 "釈が BSD 互換の方法で 行われる: 緊急ポインターは緊急データの後の最初のバイト"
21118 "を指す。 このオプションを有効にすると、相互運用性に問題が生じるかもしれない。"
21119
21120 #. type: TP
21121 #: build/C/man7/tcp.7:737
21122 #, no-wrap
21123 msgid "I<tcp_syn_retries> (integer; default: 5; since Linux 2.2)"
21124 msgstr "I<tcp_syn_retries> (integer; default: 5; Linux 2.2 以降)"
21125
21126 #.  Since 2.1.38
21127 #. type: Plain text
21128 #: build/C/man7/tcp.7:744
21129 msgid ""
21130 "The maximum number of times initial SYNs for an active TCP connection "
21131 "attempt will be retransmitted.  This value should not be higher than 255.  "
21132 "The default value is 5, which corresponds to approximately 180 seconds."
21133 msgstr ""
21134 "アクティブな TCP 接続に初期 SYN の再送を試みる最大回数。 この数値は 255 より"
21135 "も大きくすべきではない。 デフォルトの値は 5 で、およそ 180 秒に対応する。"
21136
21137 #. type: TP
21138 #: build/C/man7/tcp.7:744
21139 #, no-wrap
21140 msgid "I<tcp_synack_retries> (integer; default: 5; since Linux 2.2)"
21141 msgstr "I<tcp_synack_retries> (integer; default: 5; Linux 2.2 以降)"
21142
21143 #.  Since 2.1.38
21144 #. type: Plain text
21145 #: build/C/man7/tcp.7:750
21146 msgid ""
21147 "The maximum number of times a SYN/ACK segment for a passive TCP connection "
21148 "will be retransmitted.  This number should not be higher than 255."
21149 msgstr ""
21150 "passive な TCP 接続の SYN/ACK セグメントで再送を試みる最大数。 この数値は "
21151 "255 よりも大きくすべきではない。"
21152
21153 #. type: TP
21154 #: build/C/man7/tcp.7:750
21155 #, no-wrap
21156 msgid "I<tcp_syncookies> (Boolean; since Linux 2.2)"
21157 msgstr "I<tcp_syncookies> (Boolean; Linux 2.2 以降)"
21158
21159 #.  Since 2.1.43
21160 #. type: Plain text
21161 #: build/C/man7/tcp.7:770
21162 msgid ""
21163 "Enable TCP syncookies.  The kernel must be compiled with "
21164 "B<CONFIG_SYN_COOKIES>.  Send out syncookies when the syn backlog queue of a "
21165 "socket overflows.  The syncookies feature attempts to protect a socket from "
21166 "a SYN flood attack.  This should be used as a last resort, if at all.  This "
21167 "is a violation of the TCP protocol, and conflicts with other areas of TCP "
21168 "such as TCP extensions.  It can cause problems for clients and relays.  It "
21169 "is not recommended as a tuning mechanism for heavily loaded servers to help "
21170 "with overloaded or misconfigured conditions.  For recommended alternatives "
21171 "see I<tcp_max_syn_backlog>, I<tcp_synack_retries>, and "
21172 "I<tcp_abort_on_overflow>."
21173 msgstr ""
21174 "TCP syncookies を有効にする。カーネルは B<CONFIG_SYNCOOKIES> をつけてコンパイ"
21175 "ルしておかなければならない。 ソケットのバックログキューがオーバーフローする"
21176 "と、 syncookies が送信される。 syncookies 機能は、SYN flood 攻撃からソケット"
21177 "を守ろうとする。 これはいずれにしても、最終手段として用いるべきである。 これ"
21178 "は TCP プロトコルに違反しており、 TCP 拡張のような、TCP の他の部分と衝突して"
21179 "しまう。 クライアントやリレーで問題が起こることもある。 過負荷や設定間違いに"
21180 "よって負荷の大きな状態にあるサーバを調整して救うための 機構とみなすべきではな"
21181 "い。 そのような用途には、代わりに I<tcp_max_syn_backlog>, "
21182 "I<tcp_synack_retries>, I<tcp_abort_on_overflow> などの使用を考えること。"
21183
21184 #. type: TP
21185 #: build/C/man7/tcp.7:770
21186 #, no-wrap
21187 msgid "I<tcp_timestamps> (Boolean; default: enabled; since Linux 2.2)"
21188 msgstr "I<tcp_timestamps> (ブール値; デフォルト: 有効; Linux 2.2 以降)"
21189
21190 #.  Since 2.1.36
21191 #. type: Plain text
21192 #: build/C/man7/tcp.7:774
21193 msgid "Enable RFC\\ 1323 TCP timestamps."
21194 msgstr "RFC\\ 1323 の TCP timestamps を有効にする。"
21195
21196 #. type: TP
21197 #: build/C/man7/tcp.7:774
21198 #, no-wrap
21199 msgid "I<tcp_tso_win_divisor> (integer; default: 3; since Linux 2.6.9)"
21200 msgstr "I<tcp_tso_win_divisor> (integer; default: 3; Linux 2.6.9 以降)"
21201
21202 #. type: Plain text
21203 #: build/C/man7/tcp.7:780
21204 msgid ""
21205 "This parameter controls what percentage of the congestion window can be "
21206 "consumed by a single TCP Segmentation Offload (TSO) frame.  The setting of "
21207 "this parameter is a tradeoff between burstiness and building larger TSO "
21208 "frames."
21209 msgstr ""
21210 "このパラメーターは、一つの TCP Segmentation Offload (TSO) フレームで 消費でき"
21211 "る輻輳ウィンドウの割合 (パーセント) を制御する。 バースト性と、どれだけ大き"
21212 "な TSO フレームを構築するかのはトレードオフであり、 このパラメーターはその度"
21213 "合いを設定する。"
21214
21215 #. type: TP
21216 #: build/C/man7/tcp.7:780
21217 #, no-wrap
21218 msgid "I<tcp_tw_recycle> (Boolean; default: disabled; since Linux 2.4)"
21219 msgstr "I<tcp_tw_recycle> (ブール値; デフォルト: 無効; Linux 2.4 以降)"
21220
21221 #
21222 #.  Since 2.3.15
21223 #.  The following is from 2.6.12: Documentation/networking/ip-sysctl.txt
21224 #. type: Plain text
21225 #: build/C/man7/tcp.7:790
21226 msgid ""
21227 "Enable fast recycling of TIME_WAIT sockets. Enabling this option is not "
21228 "recommended for devices communicating with the general Internet or using NAT "
21229 "(Network Address Translation). Since some NAT gateways pass through IP "
21230 "timestamp values, one IP can appear to have non-increasing timestamps. See "
21231 "RFC 1323 (PAWS), RFC 6191."
21232 msgstr ""
21233 "TIME_WAIT ソケットの素早い再利用 (fast recycling) を有効にする。 通常のイン"
21234 "ターネットと通信したり NAT (ネットワークアドレス変換) を使うデバイスでは、 こ"
21235 "のオプションを有効にするのは推奨されない。 いくつかの NAT ゲートウェイでは "
21236 "IP タイムスタンプをそのまま通過させるので、 一つの IP が増加しないタイムスタ"
21237 "ンプを持つように見える。 RFC 1323 (PAWS), RFC 6191 を参照。"
21238
21239 #. type: TP
21240 #: build/C/man7/tcp.7:790
21241 #, no-wrap
21242 msgid "I<tcp_tw_reuse> (Boolean; default: disabled; since Linux 2.4.19/2.6)"
21243 msgstr "I<tcp_tw_reuse> (ブール値; デフォルト: 無効; Linux 2.4.19/2.6 以降)"
21244
21245 #.  Since 2.4.19/2.5.43
21246 #.  The following is from 2.6.12: Documentation/networking/ip-sysctl.txt
21247 #. type: Plain text
21248 #: build/C/man7/tcp.7:798
21249 msgid ""
21250 "Allow to reuse TIME_WAIT sockets for new connections when it is safe from "
21251 "protocol viewpoint.  It should not be changed without advice/request of "
21252 "technical experts."
21253 msgstr ""
21254 "プロトコルの面から見て問題ない場合に新規コネクションに TIME_WAIT 状態のソケッ"
21255 "トを再利用することを許可する。技術的に詳しい人の助言や 要請なしにこのオプショ"
21256 "ンを変更すべきではない。"
21257
21258 #. type: TP
21259 #: build/C/man7/tcp.7:798
21260 #, no-wrap
21261 msgid "I<tcp_vegas_cong_avoid> (Boolean; default: disabled; Linux 2.2 to 2.6.13)"
21262 msgstr "I<tcp_vegas_cong_avoid> (ブール値; デフォルト: 無効; Linux 2.2 から 2.6.13 まで)"
21263
21264 #.  Since 2.1.8; removed in 2.6.13
21265 #.  The following is from 2.6.12: Documentation/networking/ip-sysctl.txt
21266 #. type: Plain text
21267 #: build/C/man7/tcp.7:809
21268 msgid ""
21269 "Enable TCP Vegas congestion avoidance algorithm.  TCP Vegas is a sender-side "
21270 "only change to TCP that anticipates the onset of congestion by estimating "
21271 "the bandwidth.  TCP Vegas adjusts the sending rate by modifying the "
21272 "congestion window.  TCP Vegas should provide less packet loss, but it is not "
21273 "as aggressive as TCP Reno."
21274 msgstr ""
21275 "TCP Vegas 輻輳制御アルゴリズムを有効にする。 TCP Vegas は帯域を推測することで"
21276 "輻輳の起こり始めを予想するように TCP の送信側のみに変更を加えたものである。 "
21277 "TCP Vegas は輻輳ウィンドウを修正することで、送信レートを調整する。 TCP Vegas "
21278 "は TCP Reno と比べてパケットロスは少ないが、 TCP Reno ほど積極的な挙動はしな"
21279 "い。"
21280
21281 #. type: TP
21282 #: build/C/man7/tcp.7:809
21283 #, no-wrap
21284 msgid "I<tcp_westwood> (Boolean; default: disabled; Linux 2.4.26/2.6.3 to 2.6.13)"
21285 msgstr "I<tcp_westwood> (ブール値; デフォルト: 無効; Linux 2.4.26/2.6.3 から 2.6.13 まで)"
21286
21287 #. type: Plain text
21288 #: build/C/man7/tcp.7:821
21289 msgid ""
21290 "Enable TCP Westwood+ congestion control algorithm.  TCP Westwood+ is a "
21291 "sender-side only modification of the TCP Reno protocol stack that optimizes "
21292 "the performance of TCP congestion control.  It is based on end-to-end "
21293 "bandwidth estimation to set congestion window and slow start threshold after "
21294 "a congestion episode.  Using this estimation, TCP Westwood+ adaptively sets "
21295 "a slow start threshold and a congestion window which takes into account the "
21296 "bandwidth used at the time congestion is experienced.  TCP Westwood+ "
21297 "significantly increases fairness with respect to TCP Reno in wired networks "
21298 "and throughput over wireless links."
21299 msgstr ""
21300 "TCP Westwood+ 輻輳制御アルゴリズムを有効にする。 TCP Westwood+ は TCP 輻輳制"
21301 "御の性能を最適化するように TCP Reno の プロトコルスタックの送信側のみに修正を"
21302 "加えたものである。 輻輳が起こった後で、輻輳ウィンドウや slow start の閾値を "
21303 "通信両端間の帯域の推測に基づいて設定する。 この推測を使って、TCP Westwood+ は"
21304 "輻輳が発生した時に使っていた 帯域を考慮に入れた slow start の閾値と輻輳ウィン"
21305 "ドウを設定する。 TCP Westwood+ は、有線ネットワークにおける TCP Reno の公平"
21306 "性 (fairness) と、無線リンクでのスループットを大きく向上する。"
21307
21308 #. type: TP
21309 #: build/C/man7/tcp.7:821
21310 #, no-wrap
21311 msgid "I<tcp_window_scaling> (Boolean; default: enabled; since Linux 2.2)"
21312 msgstr "I<tcp_window_scaling> (ブール値; デフォルト: 有効; Linux 2.2 以降)"
21313
21314 #.  Since 2.1.36
21315 #. type: Plain text
21316 #: build/C/man7/tcp.7:835
21317 msgid ""
21318 "Enable RFC\\ 1323 TCP window scaling.  This feature allows the use of a "
21319 "large window (E<gt> 64K) on a TCP connection, should the other end support "
21320 "it.  Normally, the 16 bit window length field in the TCP header limits the "
21321 "window size to less than 64K bytes.  If larger windows are desired, "
21322 "applications can increase the size of their socket buffers and the window "
21323 "scaling option will be employed.  If I<tcp_window_scaling> is disabled, TCP "
21324 "will not negotiate the use of window scaling with the other end during "
21325 "connection setup."
21326 msgstr ""
21327 "RFC\\ 1323 の TCP ウィンドウスケーリングを有効にする。 この機能を用いると、接"
21328 "続先が対応していれば、 TCP 接続で大きな (64K 以上の) ウィンドウが使えるように"
21329 "なる。 通常は TCP ヘッダーのウインドウ長フィールドは 16 ビットなので、 ウィン"
21330 "ドウサイズは 64K バイト以下に限られる。 もっと大きなウィンドウを使いたい場合"
21331 "は、 アプリケーションはソケットバッファーのサイズを増やして、 ウィンドウス"
21332 "ケーリングのオプションを利用すればよい。 I<tcp_window_scaling> を無効にしてい"
21333 "ると、 TCP は他端との接続設定の際に、 ウィンドウスケーリングのネゴシエーショ"
21334 "ンを行なわない。"
21335
21336 #. type: TP
21337 #: build/C/man7/tcp.7:835
21338 #, no-wrap
21339 msgid "I<tcp_wmem> (since Linux 2.4)"
21340 msgstr "I<tcp_wmem> (Linux 2.4 以降)"
21341
21342 #.  Since 2.4.0-test7
21343 #. type: Plain text
21344 #: build/C/man7/tcp.7:843
21345 msgid ""
21346 "This is a vector of 3 integers: [min, default, max].  These parameters are "
21347 "used by TCP to regulate send buffer sizes.  TCP dynamically adjusts the size "
21348 "of the send buffer from the default values listed below, in the range of "
21349 "these values, depending on memory available."
21350 msgstr ""
21351 "これは 3 つの整数 [min, default, max] からなるベクトル値である。 これらは "
21352 "TCP が送信バッファーサイズを調整するために用いられる。 TCP は、システムで利用"
21353 "できるメモリーに応じて、送信バッファーのサイズを これらの変数の範囲で以下に示"
21354 "すデフォルトから動的に調整する。"
21355
21356 #. type: Plain text
21357 #: build/C/man7/tcp.7:854
21358 msgid ""
21359 "Minimum size of the send buffer used by each TCP socket.  The default value "
21360 "is the system page size.  (On Linux 2.4, the default value is 4K bytes.)  "
21361 "This value is used to ensure that in memory pressure mode, allocations below "
21362 "this size will still succeed.  This is not used to bound the size of the "
21363 "send buffer declared using B<SO_SNDBUF> on a socket."
21364 msgstr ""
21365 "各 TCP ソケットが用いる送信バッファーの最小サイズ。 デフォルト値はシステムの"
21366 "ページサイズである (Linux 2.4 では、デフォルト値は 4K である)。 この値は、メ"
21367 "モリー圧迫モードにおいても、 このサイズ以下の割り当てが成功することを保証する"
21368 "ために用いられる。 これは、 B<SO_SNDBUF> を用いてソケットの最低送信バッファー"
21369 "サイズを宣言する際には用いられない。"
21370
21371 #.  True in Linux 2.4 and 2.6
21372 #. type: Plain text
21373 #: build/C/man7/tcp.7:868
21374 msgid ""
21375 "The default size of the send buffer for a TCP socket.  This value overwrites "
21376 "the initial default buffer size from the generic global I</proc/sys/net/core/"
21377 "wmem_default> defined for all protocols.  The default value is 16K bytes.  "
21378 "If larger send buffer sizes are desired, this value should be increased (to "
21379 "affect all sockets).  To employ large TCP windows, the I</proc/sys/net/ipv4/"
21380 "tcp_window_scaling> must be set to a nonzero value (default)."
21381 msgstr ""
21382 "TCP ソケットの送信バッファーのデフォルトサイズ。 この値は、すべてのプロトコル"
21383 "に対して定義されている、 ジェネリックなグローバルのデフォルトバッファーサイ"
21384 "ズ I</proc/sys/net/core/wmem_default> より優先される。 デフォルト値は 16K バ"
21385 "イトである。 大きな送信バッファーサイズが必要な場合は、 この値を増やすべきで"
21386 "ある (すべてのソケットに影響する)。 大きな TCP ウィンドウを用いるには、 I</"
21387 "proc/sys/net/ipv4/tcp_window_scaling> を 0 以外の値 (デフォルト値) にしておか"
21388 "なければならない。"
21389
21390 #. type: Plain text
21391 #: build/C/man7/tcp.7:877
21392 msgid ""
21393 "The maximum size of the send buffer used by each TCP socket.  This value "
21394 "does not override the value in I</proc/sys/net/core/wmem_max>.  This is not "
21395 "used to limit the size of the send buffer declared using B<SO_SNDBUF> on a "
21396 "socket.  The default value is calculated using the formula"
21397 msgstr ""
21398 "各 TCP ソケットで用いる送信バッファーの最大サイズ。 この値よりも I</proc/sys/"
21399 "net/core/wmem_max> が優先される。 これは B<SO_SNDBUF> を用いてソケットの送信"
21400 "バッファーサイズ制限を宣言する際には用いられない。 デフォルト値は以下の式で計"
21401 "算される。"
21402
21403 #. type: Plain text
21404 #: build/C/man7/tcp.7:879
21405 #, no-wrap
21406 msgid "    max(65536, min(4MB, I<tcp_mem>[1]*PAGE_SIZE/128))\n"
21407 msgstr "    max(65536, min(4MB, I<tcp_mem>[1]*PAGE_SIZE/128))\n"
21408
21409 #. type: Plain text
21410 #: build/C/man7/tcp.7:882
21411 msgid ""
21412 "(On Linux 2.4, the default value is 128K bytes, lowered 64K depending on low-"
21413 "memory systems.)"
21414 msgstr ""
21415 "(Linux 2.4 では、デフォルト値は 128K バイトで、 メモリーの少ないシステムでは "
21416 "64K にまで減らされる。)"
21417
21418 #. type: TP
21419 #: build/C/man7/tcp.7:883
21420 #, no-wrap
21421 msgid "I<tcp_workaround_signed_windows> (Boolean; default: disabled; since Linux 2.6.26)"
21422 msgstr "I<tcp_workaround_signed_windows> (ブール値; デフォルト: 無効; Linux 2.6.26 以降)"
21423
21424 #. type: Plain text
21425 #: build/C/man7/tcp.7:889
21426 msgid ""
21427 "If enabled, assume that no receipt of a window-scaling option means that the "
21428 "remote TCP is broken and treats the window as a signed quantity.  If "
21429 "disabled, assume that the remote TCP is not broken even if we do not receive "
21430 "a window scaling option from it."
21431 msgstr ""
21432 "有効にすると、ウィンドウスケーリングオプションを受信しないのは、 接続相手の "
21433 "TCP が壊れていると考え、ウィンドウを符号付きの量とみなす。 無効にすると、接続"
21434 "相手からウィンドウスケーリングオプションを受信しなかった 場合であっても、接続"
21435 "相手の TCP が壊れているとはみなさない。"
21436
21437 #.  or SOL_TCP on Linux
21438 #. type: Plain text
21439 #: build/C/man7/tcp.7:907
21440 msgid ""
21441 "To set or get a TCP socket option, call B<getsockopt>(2)  to read or "
21442 "B<setsockopt>(2)  to write the option with the option level argument set to "
21443 "B<IPPROTO_TCP>.  Unless otherwise noted, I<optval> is a pointer to an "
21444 "I<int>.  In addition, most B<IPPROTO_IP> socket options are valid on TCP "
21445 "sockets.  For more information see B<ip>(7)."
21446 msgstr ""
21447 "TCP ソケットのオプションは、 オプションレベル引数に I<IPPROTO_TCP> を指定し"
21448 "た B<setsockopt>(2)  で設定でき、 B<getsockopt>(2)  で取得できる。 注釈がない"
21449 "限り、 I<optval> は I<int> へのポインターである。 さらに、ほとんどの "
21450 "B<IPPROTO_IP> ソケットオプションも TCP ソケットに対して有効である。詳細は "
21451 "B<ip>(7)  を見よ。"
21452
21453 #. type: TP
21454 #: build/C/man7/tcp.7:907
21455 #, no-wrap
21456 msgid "B<TCP_CONGESTION> (since Linux 2.6.13)"
21457 msgstr "B<TCP_CONGESTION> (Linux 2.6.13 以降)"
21458
21459 #.          commit 5f8ef48d240963093451bcf83df89f1a1364f51d
21460 #.          Author: Stephen Hemminger <shemminger@osdl.org>
21461 #. type: Plain text
21462 #: build/C/man7/tcp.7:923
21463 msgid ""
21464 "The argument for this option is a string.  This option allows the caller to "
21465 "set the TCP congestion control algorithm to be used, on a per-socket basis.  "
21466 "Unprivileged processes are restricted to choosing one of the algorithms in "
21467 "I<tcp_allowed_congestion_control> (described above).  Privileged processes "
21468 "(B<CAP_NET_ADMIN>)  can choose from any of the available congestion-control "
21469 "algorithms (see the description of I<tcp_available_congestion_control> "
21470 "above)."
21471 msgstr ""
21472 "このオプションの引き数は文字列である。 このオプションを使うと、呼び出し元がソ"
21473 "ケット単位に使用する TCP 輻輳制御アルゴリズムを設定することができる。 非特権"
21474 "プロセスが使用できるアルゴリズムは (上述の) "
21475 "I<tcp_allowed_congestion_control> で設定されたものだけに制限される。 特権プロ"
21476 "セス (B<CAP_NET_ADMIN>) は任意の輻輳制御アルゴリズムを選択することができる "
21477 "(上記の B<tcp_available_congestion_control> の説明を参照)。"
21478
21479 #. type: TP
21480 #: build/C/man7/tcp.7:923
21481 #, no-wrap
21482 msgid "B<TCP_CORK> (since Linux 2.2)"
21483 msgstr "B<TCP_CORK> (Linux 2.2 以降)"
21484
21485 #.  precisely: since 2.1.127
21486 #. type: Plain text
21487 #: build/C/man7/tcp.7:939
21488 msgid ""
21489 "If set, don't send out partial frames.  All queued partial frames are sent "
21490 "when the option is cleared again.  This is useful for prepending headers "
21491 "before calling B<sendfile>(2), or for throughput optimization.  As currently "
21492 "implemented, there is a 200 millisecond ceiling on the time for which output "
21493 "is corked by B<TCP_CORK>.  If this ceiling is reached, then queued data is "
21494 "automatically transmitted.  This option can be combined with B<TCP_NODELAY> "
21495 "only since Linux 2.5.71.  This option should not be used in code intended to "
21496 "be portable."
21497 msgstr ""
21498 "セットされると、 partial フレームを送信しない。 このオプションが解除される"
21499 "と、 キューイングされた partial フレームが送られる。これは B<sendfile>(2)  を"
21500 "呼ぶ前にヘッダーを前置したり、 スループットを最適化したい場合に便利である。 "
21501 "現在の実装では、 B<TCP_CORK> で出力を抑えることができる時間の上限は 200 ミリ"
21502 "秒である。 この上限に達すると、キューイングされたデータは自動的に送信され"
21503 "る。 Linux 2.5.71 以降においてのみ、このオプションを B<TCP_NODELAY> と同時に"
21504 "用いることができる。 移植性の必要なプログラムではこのオプションを用いるべきで"
21505 "はない。"
21506
21507 #. type: TP
21508 #: build/C/man7/tcp.7:939
21509 #, no-wrap
21510 msgid "B<TCP_DEFER_ACCEPT> (since Linux 2.4)"
21511 msgstr "B<TCP_DEFER_ACCEPT> (Linux 2.4 以降)"
21512
21513 #.  Precisely: since 2.3.38
21514 #.  Useful references:
21515 #.  http://www.techrepublic.com/article/take-advantage-of-tcp-ip-options-to-optimize-data-transmission/
21516 #.  http://unix.stackexchange.com/questions/94104/real-world-use-of-tcp-defer-accept
21517 #. type: Plain text
21518 #: build/C/man7/tcp.7:950
21519 msgid ""
21520 "Allow a listener to be awakened only when data arrives on the socket.  Takes "
21521 "an integer value (seconds), this can bound the maximum number of attempts "
21522 "TCP will make to complete the connection.  This option should not be used in "
21523 "code intended to be portable."
21524 msgstr ""
21525 "これを用いると、リスナはデータがソケットに到着した時のみ目覚めるようになる。 "
21526 "整数値 (秒) をとり、 TCP が接続を完了しようと試みる回数を制限できる。 移植性"
21527 "の必要なプログラムではこのオプションを用いるべきではない。"
21528
21529 #. type: TP
21530 #: build/C/man7/tcp.7:950
21531 #, no-wrap
21532 msgid "B<TCP_INFO> (since Linux 2.4)"
21533 msgstr "B<TCP_INFO> (Linux 2.4 以降)"
21534
21535 #. type: Plain text
21536 #: build/C/man7/tcp.7:956
21537 msgid ""
21538 "Used to collect information about this socket.  The kernel returns a "
21539 "I<struct tcp_info> as defined in the file I</usr/include/linux/tcp.h>.  This "
21540 "option should not be used in code intended to be portable."
21541 msgstr ""
21542 "このソケットの情報を収集するのに用いる。 カーネルは I</usr/include/linux/tcp."
21543 "h> ファイルで定義されている I<struct tcp_info> を返す。 移植性の必要なプログ"
21544 "ラムではこのオプションを用いるべきではない。"
21545
21546 #. type: TP
21547 #: build/C/man7/tcp.7:956
21548 #, no-wrap
21549 msgid "B<TCP_KEEPCNT> (since Linux 2.4)"
21550 msgstr "B<TCP_KEEPCNT> (Linux 2.4 以降)"
21551
21552 #.  Precisely: since 2.3.18
21553 #. type: Plain text
21554 #: build/C/man7/tcp.7:963
21555 msgid ""
21556 "The maximum number of keepalive probes TCP should send before dropping the "
21557 "connection.  This option should not be used in code intended to be portable."
21558 msgstr ""
21559 "接続を落とす前に TCP が試みる keepalive プローブの最大回数。 移植性の必要なプ"
21560 "ログラムではこのオプションを用いるべきではない。"
21561
21562 #. type: TP
21563 #: build/C/man7/tcp.7:963
21564 #, no-wrap
21565 msgid "B<TCP_KEEPIDLE> (since Linux 2.4)"
21566 msgstr "B<TCP_KEEPIDLE> (Linux 2.4 以降)"
21567
21568 #.  Precisely: since 2.3.18
21569 #. type: Plain text
21570 #: build/C/man7/tcp.7:972
21571 msgid ""
21572 "The time (in seconds) the connection needs to remain idle before TCP starts "
21573 "sending keepalive probes, if the socket option B<SO_KEEPALIVE> has been set "
21574 "on this socket.  This option should not be used in code intended to be "
21575 "portable."
21576 msgstr ""
21577 "この時間 (秒単位) を越えて接続がアイドル状態に留まっていると、 このソケット"
21578 "に B<SO_KEEPALIVE> ソケットオプションが設定されている場合、 TCP は keepalive "
21579 "プローブを送りはじめる。 移植性の必要なプログラムではこのオプションを用いるべ"
21580 "きではない。"
21581
21582 #. type: TP
21583 #: build/C/man7/tcp.7:972
21584 #, no-wrap
21585 msgid "B<TCP_KEEPINTVL> (since Linux 2.4)"
21586 msgstr "B<TCP_KEEPINTVL> (Linux 2.4 以降)"
21587
21588 #.  Precisely: since 2.3.18
21589 #. type: Plain text
21590 #: build/C/man7/tcp.7:977
21591 msgid ""
21592 "The time (in seconds) between individual keepalive probes.  This option "
21593 "should not be used in code intended to be portable."
21594 msgstr ""
21595 "各 keepalive プローブの間隔 (秒単位)。 移植性の必要なプログラムではこのオプ"
21596 "ションを用いるべきではない。"
21597
21598 #. type: TP
21599 #: build/C/man7/tcp.7:977
21600 #, no-wrap
21601 msgid "B<TCP_LINGER2> (since Linux 2.4)"
21602 msgstr "B<TCP_LINGER2> (Linux 2.4 以降)"
21603
21604 #.  Precisely: since 2.3.41
21605 #. type: Plain text
21606 #: build/C/man7/tcp.7:989
21607 msgid ""
21608 "The lifetime of orphaned FIN_WAIT2 state sockets.  This option can be used "
21609 "to override the system-wide setting in the file I</proc/sys/net/ipv4/"
21610 "tcp_fin_timeout> for this socket.  This is not to be confused with the "
21611 "B<socket>(7)  level option B<SO_LINGER>.  This option should not be used in "
21612 "code intended to be portable."
21613 msgstr ""
21614 "orphan された FIN_WAIT2 状態のソケットの寿命。 このオプションを用いると、シス"
21615 "テム全体に適用されるファイル I</proc/sys/net/ipv4/tcp_fin_timeout> の値を、こ"
21616 "のソケットに対してのみ変更できる。 B<socket>(7)  レベルのオプション "
21617 "B<SO_LINGER> と混同しないこと。 移植性の必要なプログラムではこのオプションを"
21618 "用いるべきではない。"
21619
21620 #. type: TP
21621 #: build/C/man7/tcp.7:989
21622 #, no-wrap
21623 msgid "B<TCP_MAXSEG>"
21624 msgstr "B<TCP_MAXSEG>"
21625
21626 #.  Present in Linux 1.0
21627 #. type: Plain text
21628 #: build/C/man7/tcp.7:999
21629 msgid ""
21630 "The maximum segment size for outgoing TCP packets.  In Linux 2.2 and "
21631 "earlier, and in Linux 2.6.28 and later, if this option is set before "
21632 "connection establishment, it also changes the MSS value announced to the "
21633 "other end in the initial packet.  Values greater than the (eventual) "
21634 "interface MTU have no effect.  TCP will also impose its minimum and maximum "
21635 "bounds over the value provided."
21636 msgstr ""
21637 "送出 TCP パケットの最大セグメントサイズ。 Linux 2.2 以前と Linux\n"
21638 "2.6.28 以降では、このオプションを接続確立の前に設定すると、初期パケット\n"
21639 "で他端にアナウンスする MSS の値も変化する。インターフェースの MTU より\n"
21640 "も大きな (あるいは大きくなってしまった) 値は効果を持たない。 また TCP\n"
21641 "は、この値よりも最小・最大の制限の方を優先する。"
21642
21643 #. type: TP
21644 #: build/C/man7/tcp.7:999
21645 #, no-wrap
21646 msgid "B<TCP_NODELAY>"
21647 msgstr "B<TCP_NODELAY>"
21648
21649 #.  Present in Linux 1.0
21650 #. type: Plain text
21651 #: build/C/man7/tcp.7:1016
21652 msgid ""
21653 "If set, disable the Nagle algorithm.  This means that segments are always "
21654 "sent as soon as possible, even if there is only a small amount of data.  "
21655 "When not set, data is buffered until there is a sufficient amount to send "
21656 "out, thereby avoiding the frequent sending of small packets, which results "
21657 "in poor utilization of the network.  This option is overridden by "
21658 "B<TCP_CORK>; however, setting this option forces an explicit flush of "
21659 "pending output, even if B<TCP_CORK> is currently set."
21660 msgstr ""
21661 "設定すると Nagle アルゴリズムを無効にする。 すなわち、データ量が少ない場合で"
21662 "も 各セグメントは可能な限り早く送信される。 設定されていないと、 送信する分だ"
21663 "け溜まるまでデータはバッファーされ、 小さなパケットを頻繁に送らずにすみ、 "
21664 "ネットワークを有効に利用できる。 このオプションは B<TCP_CORK> により上書きさ"
21665 "れる。しかしながら、 B<TCP_CORK> が設定されている場合であっても、このオプショ"
21666 "ンを設定すると、 送信待ちの出力を明示的に掃き出す (flush) ことになる。"
21667
21668 #. type: TP
21669 #: build/C/man7/tcp.7:1016
21670 #, no-wrap
21671 msgid "B<TCP_QUICKACK> (since Linux 2.4.4)"
21672 msgstr "B<TCP_QUICKACK> (Linux 2.4.4 以降)"
21673
21674 #. type: Plain text
21675 #: build/C/man7/tcp.7:1031
21676 msgid ""
21677 "Enable quickack mode if set or disable quickack mode if cleared.  In "
21678 "quickack mode, acks are sent immediately, rather than delayed if needed in "
21679 "accordance to normal TCP operation.  This flag is not permanent, it only "
21680 "enables a switch to or from quickack mode.  Subsequent operation of the TCP "
21681 "protocol will once again enter/leave quickack mode depending on internal "
21682 "protocol processing and factors such as delayed ack timeouts occurring and "
21683 "data transfer.  This option should not be used in code intended to be "
21684 "portable."
21685 msgstr ""
21686 "設定されていると quickack モードを有効にし、クリアされると無効にする。 通常"
21687 "の TCP 動作では ack は必要に応じて遅延されるのに対し、 quickack モードでは "
21688 "ack はすぐに送信される。 このフラグは永続的なものではなく、 quickack モードか"
21689 "ら/モードへ切り替えるためのものである。 これ以降の TCP プロトコルの動作によっ"
21690 "ては、 内部のプロトコル処理や、遅延 ack タイムアウトの発生、 データ転送などの"
21691 "要因によって、 再び quickack から出たり入ったりする。 移植性の必要なプログラ"
21692 "ムではこのオプションを用いるべきではない。"
21693
21694 #. type: TP
21695 #: build/C/man7/tcp.7:1031
21696 #, no-wrap
21697 msgid "B<TCP_SYNCNT> (since Linux 2.4)"
21698 msgstr "B<TCP_SYNCNT> (Linux 2.4 以降)"
21699
21700 #.  Precisely: since 2.3.18
21701 #. type: Plain text
21702 #: build/C/man7/tcp.7:1038
21703 msgid ""
21704 "Set the number of SYN retransmits that TCP should send before aborting the "
21705 "attempt to connect.  It cannot exceed 255.  This option should not be used "
21706 "in code intended to be portable."
21707 msgstr ""
21708 "接続の試行を中止させる前に TCP が送る SYN 再送数を設定する。 これは 255 より"
21709 "大きくはできない。 移植性の必要なプログラムではこのオプションを用いるべきでは"
21710 "ない。"
21711
21712 #. type: TP
21713 #: build/C/man7/tcp.7:1038
21714 #, no-wrap
21715 msgid "B<TCP_USER_TIMEOUT> (since Linux 2.6.37)"
21716 msgstr "B<TCP_USER_TIMEOUT> (Linux 2.6.37 以降)"
21717
21718 #.          commit dca43c75e7e545694a9dd6288553f55c53e2a3a3
21719 #.          Author: Jerry Chu <hkchu@google.com>
21720 #.  The following text taken nearly verbatim from Jerry Chu's (excellent)
21721 #.  commit message.
21722 #. type: Plain text
21723 #: build/C/man7/tcp.7:1056
21724 msgid ""
21725 "This option takes an I<unsigned int> as an argument.  When the value is "
21726 "greater than 0, it specifies the maximum amount of time in milliseconds that "
21727 "transmitted data may remain unacknowledged before TCP will forcibly close "
21728 "the corresponding connection and return B<ETIMEDOUT> to the application.  If "
21729 "the option value is specified as 0, TCP will to use the system default."
21730 msgstr ""
21731 "このオプションは I<unsigned int> 型の引き数を取る。 値が 0 より大きい場合、そ"
21732 "の値は、 どのくらいの時間、送信されたデータが ACK を受信しないままの状態が続"
21733 "くと、 TCP がその接続を強制的にクローズし、アプリケーションに B<ETIMEDOUT> を"
21734 "返すかを、 ミリ秒単位で指定する。 オプションの値が 0 の場合、TCP はシステムの"
21735 "デフォルト値を使用する。"
21736
21737 #. type: Plain text
21738 #: build/C/man7/tcp.7:1063
21739 msgid ""
21740 "Increasing user timeouts allows a TCP connection to survive extended periods "
21741 "without end-to-end connectivity.  Decreasing user timeouts allows "
21742 "applications to \"fail fast\", if so desired.  Otherwise, failure may take "
21743 "up to 20 minutes with the current system defaults in a normal WAN "
21744 "environment."
21745 msgstr ""
21746 "ユーザータイムアウトを長くすると、 通信の両端での接続性がない場合でも長い時"
21747 "間 TCP 接続が維持されるようになる。 ユーザータイムアウトを短くすると、 アプリ"
21748 "ケーションは必要であれば「早く失敗」できるようになる。 設定しなかった場合"
21749 "は、 通常の WAN 環境では現在のシステムのデフォルトの 20 分で失敗することにな"
21750 "る。"
21751
21752 #. type: Plain text
21753 #: build/C/man7/tcp.7:1073
21754 msgid ""
21755 "This option can be set during any state of a TCP connection, but is only "
21756 "effective during the synchronized states of a connection (ESTABLISHED, FIN-"
21757 "WAIT-1, FIN-WAIT-2, CLOSE-WAIT, CLOSING, and LAST-ACK).  Moreover, when used "
21758 "with the TCP keepalive (B<SO_KEEPALIVE>)  option, B<TCP_USER_TIMEOUT> will "
21759 "override keepalive to determine when to close a connection due to keepalive "
21760 "failure."
21761 msgstr ""
21762 "このオプションは TCP 接続がどの状態の場合でも設定することができるが、 接続が"
21763 "同期状態 (ESTABLISHED, FIN-WAIT-1, FIN-WAIT-2, CLOSE-WAIT, CLOSING, LAST-"
21764 "ACK) の場合のみ効果がある。 また、 TCP keepalive (B<SO_KEEPALIVE>) オプション"
21765 "とともに使用された場合、 B<TCP_USER_TIMEOUT> は keepalive 失敗による接続ク"
21766 "ローズを判定するための keepalive 値を上書きする。"
21767
21768 #. type: Plain text
21769 #: build/C/man7/tcp.7:1076
21770 msgid ""
21771 "The option has no effect on when TCP retransmits a packet, nor when a "
21772 "keepalive probe is sent."
21773 msgstr ""
21774 "このオプションは TCP がパケットを再送する際や keepalive プローブを送信する際"
21775 "には影響を及ぼさない。"
21776
21777 #. type: Plain text
21778 #: build/C/man7/tcp.7:1080
21779 msgid ""
21780 "This option, like many others, will be inherited by the socket returned by "
21781 "B<accept>(2), if it was set on the listening socket."
21782 msgstr ""
21783 "他の多くのオプション同様、リッスン中のソケットでこのオプションがセットされて"
21784 "いれば B<accept>(2) が返すソケットにオプションが継承される。"
21785
21786 #. type: Plain text
21787 #: build/C/man7/tcp.7:1083
21788 msgid ""
21789 "Further details on the user timeout feature can be found in RFC\\ 793 and RFC"
21790 "\\ 5482 (\"TCP User Timeout Option\")."
21791 msgstr ""
21792 "ユーザータイムアウト機能の詳細は RFC\\ 793 と  RFC\\ 5482 (\"TCP User "
21793 "Timeout Option\") に書かれている。"
21794
21795 #. type: TP
21796 #: build/C/man7/tcp.7:1083
21797 #, no-wrap
21798 msgid "B<TCP_WINDOW_CLAMP> (since Linux 2.4)"
21799 msgstr "B<TCP_WINDOW_CLAMP> (Linux 2.4 以降)"
21800
21801 #.  Precisely: since 2.3.41
21802 #. type: Plain text
21803 #: build/C/man7/tcp.7:1090
21804 msgid ""
21805 "Bound the size of the advertised window to this value.  The kernel imposes a "
21806 "minimum size of SOCK_MIN_RCVBUF/2.  This option should not be used in code "
21807 "intended to be portable."
21808 msgstr ""
21809 "広報するウィンドウのサイズをこの値に固定する。 カーネルによって最小サイズは "
21810 "SOCK_MIN_RCVBUF/2 に制限されている。 このオプションは移植性の必要なコードでは"
21811 "用いるべきでない。"
21812
21813 #. type: SS
21814 #: build/C/man7/tcp.7:1090 build/C/man7/unix.7:260
21815 #, no-wrap
21816 msgid "Sockets API"
21817 msgstr "ソケット API"
21818
21819 #. type: Plain text
21820 #: build/C/man7/tcp.7:1099
21821 msgid ""
21822 "TCP provides limited support for out-of-band data, in the form of (a single "
21823 "byte of) urgent data.  In Linux this means if the other end sends newer out-"
21824 "of-band data the older urgent data is inserted as normal data into the "
21825 "stream (even when B<SO_OOBINLINE> is not set).  This differs from BSD-based "
21826 "stacks."
21827 msgstr ""
21828 "TCP は帯域外データ (out-of-band data) を限定的にサポートしており、 (1 バイト"
21829 "の) 緊急データという形である。 つまり Linux においては、 接続先が (新しいやり"
21830 "方の) 帯域外データを送ってきた場合、 (古いやり方の)  緊急データは通常のデータ"
21831 "としてストリームに挿入されることになる (これは B<SO_OOBINLINE> がセットされて"
21832 "いる場合でも同様である)。 これは BSD ベースのスタックとは異なる。"
21833
21834 #. type: Plain text
21835 #: build/C/man7/tcp.7:1106
21836 msgid ""
21837 "Linux uses the BSD compatible interpretation of the urgent pointer field by "
21838 "default.  This violates RFC\\ 1122, but is required for interoperability "
21839 "with other stacks.  It can be changed via I</proc/sys/net/ipv4/tcp_stdurg>."
21840 msgstr ""
21841 "Linux は、デフォルトでは urgent ポインターフィールドの解釈に BSD 互換の方法を"
21842 "用いる。これは RFC\\ 1122 に反しているが、 他のスタックと同時に動作させるには"
21843 "やむを得ない。これは I</proc/sys/net/ipv4/tcp_stdurg> によって変更できる。"
21844
21845 #. type: Plain text
21846 #: build/C/man7/tcp.7:1111
21847 msgid ""
21848 "It is possible to peek at out-of-band data using the B<recv>(2)  B<MSG_PEEK> "
21849 "flag."
21850 msgstr ""
21851 "B<recv>(2)  の B<MSG_PEEK> フラグを使うと、帯域外データを覗き見することができ"
21852 "る。"
21853
21854 #. type: Plain text
21855 #: build/C/man7/tcp.7:1127
21856 msgid ""
21857 "Since version 2.4, Linux supports the use of B<MSG_TRUNC> in the I<flags> "
21858 "argument of B<recv>(2)  (and B<recvmsg>(2)).  This flag causes the received "
21859 "bytes of data to be discarded, rather than passed back in a caller-supplied "
21860 "buffer.  Since Linux 2.4.4, B<MSG_TRUNC> also has this effect when used in "
21861 "conjunction with B<MSG_OOB> to receive out-of-band data."
21862 msgstr ""
21863 "Linux 2.4 以降では、 B<recv>(2)  (や B<recvmsg>(2))  の I<flags> 引き数に "
21864 "B<MSG_TRUNC> を使うことができる。 このフラグを指定すると、受信データは、呼び"
21865 "出し元から渡されたバッファー にコピーされて返されるのではなく、廃棄されるよう"
21866 "になる。 Linux 2.4.4 以降では、 B<MSG_TRUNC> を、帯域外データを受信するため"
21867 "の B<MSG_OOB> と組み合わせて使った場合にも、これと同じ効果を持つようになって"
21868 "いる。"
21869
21870 #. type: Plain text
21871 #: build/C/man7/tcp.7:1133 build/C/man7/unix.7:373
21872 msgid ""
21873 "The following B<ioctl>(2)  calls return information in I<value>.  The "
21874 "correct syntax is:"
21875 msgstr ""
21876 "以下の B<ioctl>(2) 呼び出しは I<value> に情報を入れて返す。\n"
21877 "正しい書式は以下の通り。"
21878
21879 #. type: Plain text
21880 #: build/C/man7/tcp.7:1138
21881 #, no-wrap
21882 msgid ""
21883 "B<int>I< value>B<;>\n"
21884 "I<error>B< = ioctl(>I<tcp_socket>B<, >I<ioctl_type>B<, &>I<value>B<);>\n"
21885 msgstr ""
21886 "B<int>I< value>B<;>\n"
21887 "I<error>B< = ioctl(>I<tcp_socket>B<, >I<ioctl_type>B<, &>I<value>B<);>\n"
21888
21889 #. type: Plain text
21890 #: build/C/man7/tcp.7:1143
21891 msgid "I<ioctl_type> is one of the following:"
21892 msgstr "I<ioctl_type> は以下のいずれか一つである:"
21893
21894 #. type: TP
21895 #: build/C/man7/tcp.7:1143 build/C/man7/unix.7:383
21896 #, no-wrap
21897 msgid "B<SIOCINQ>"
21898 msgstr "B<SIOCINQ>"
21899
21900 #.  FIXME . http://sources.redhat.com/bugzilla/show_bug.cgi?id=12002,
21901 #.  filed 2010-09-10, may cause SIOCINQ to be defined in glibc headers
21902 #.  SIOCOUTQ also has an effect for UNIX domain sockets, but not
21903 #.  quite what userland might expect. It seems to return the number
21904 #.  of bytes allocated for buffers containing pending output.
21905 #.  That number is normally larger than the number of bytes of pending
21906 #.  output. Since this info is, from userland's point of view, imprecise,
21907 #.  and it may well change, probably best not to document this now.
21908 #. type: Plain text
21909 #: build/C/man7/tcp.7:1159 build/C/man7/unix.7:405
21910 msgid ""
21911 "Returns the amount of queued unread data in the receive buffer.  The socket "
21912 "must not be in LISTEN state, otherwise an error (B<EINVAL>)  is returned.  "
21913 "B<SIOCINQ> is defined in I<E<lt>linux/sockios.hE<gt>>.  Alternatively, you "
21914 "can use the synonymous B<FIONREAD>, defined in I<E<lt>sys/ioctl.hE<gt>>."
21915 msgstr ""
21916 "受信バッファーのキューにある、まだ読んでいないデータの量を返す。ソケットは\n"
21917 "LISTEN 状態にあってはならず、さもないとエラー (B<EINVAL>) が返る。\n"
21918 "B<SIOCINQ> は I<E<lt>linux/sockios.hE<gt>> で定義されている。\n"
21919 "代わりに、I<E<lt>sys/ioctl.hE<gt>> で定義されている、同義語の B<FIONREAD>\n"
21920 "を使うこともできる。"
21921
21922 #. type: TP
21923 #: build/C/man7/tcp.7:1159
21924 #, no-wrap
21925 msgid "B<SIOCATMARK>"
21926 msgstr "B<SIOCATMARK>"
21927
21928 #. type: Plain text
21929 #: build/C/man7/tcp.7:1164
21930 msgid ""
21931 "Returns true (i.e., I<value> is nonzero) if the inbound data stream is at "
21932 "the urgent mark."
21933 msgstr ""
21934 "受信データストリームが緊急マークの位置であれば、真を返す (つまり I<value> が "
21935 "0 以外)。"
21936
21937 #. type: Plain text
21938 #: build/C/man7/tcp.7:1180
21939 msgid ""
21940 "If the B<SO_OOBINLINE> socket option is set, and B<SIOCATMARK> returns true, "
21941 "then the next read from the socket will return the urgent data.  If the "
21942 "B<SO_OOBINLINE> socket option is not set, and B<SIOCATMARK> returns true, "
21943 "then the next read from the socket will return the bytes following the "
21944 "urgent data (to actually read the urgent data requires the B<recv(MSG_OOB)> "
21945 "flag)."
21946 msgstr ""
21947 "B<SO_OOBINLINE> ソケットオプションが設定されていて、 B<SIOCATMARK> が真を返し"
21948 "た場合、次のソケットからの読み込みでは緊急データが 返される。 "
21949 "B<SO_OOBINLINE> ソケットオプションが設定されておらず、 B<SIOCATMARK> が真を返"
21950 "した場合、次のソケットからの読み込みでは緊急データに 続くデータが返される (実"
21951 "際に緊急データを読み込むには B<recv(MSG_OOB)> とフラグをつける必要がある)。"
21952
21953 #. type: Plain text
21954 #: build/C/man7/tcp.7:1194
21955 msgid ""
21956 "Note that a read never reads across the urgent mark.  If an application is "
21957 "informed of the presence of urgent data via B<select>(2)  (using the "
21958 "I<exceptfds> argument) or through delivery of a B<SIGURG> signal, then it "
21959 "can advance up to the mark using a loop which repeatedly tests B<SIOCATMARK> "
21960 "and performs a read (requesting any number of bytes) as long as "
21961 "B<SIOCATMARK> returns false."
21962 msgstr ""
21963 "データの一回の読み込みでは緊急マークを跨がっての読み込みは行われない。 アプリ"
21964 "ケーションが緊急データの存在を (I<exceptfds> 引き数を使って)  B<select>(2)  "
21965 "経由または B<SIGURG> シグナルの配送を通じて知らされた場合、 B<SIOCATMARK> の"
21966 "チェックと読み込み (何バイト読み込み要求をしてもよい) を B<SIOCATMARK> が偽を"
21967 "返さなくなるまで繰り返し行うことで、緊急マークの位置まで 読み進めることができ"
21968 "る。"
21969
21970 #. type: TP
21971 #: build/C/man7/tcp.7:1194
21972 #, no-wrap
21973 msgid "B<SIOCOUTQ>"
21974 msgstr "B<SIOCOUTQ>"
21975
21976 #.  FIXME . http://sources.redhat.com/bugzilla/show_bug.cgi?id=12002,
21977 #.  filed 2010-09-10, may cause SIOCOUTQ to be defined in glibc headers
21978 #. type: Plain text
21979 #: build/C/man7/tcp.7:1210
21980 msgid ""
21981 "Returns the amount of unsent data in the socket send queue.  The socket must "
21982 "not be in LISTEN state, otherwise an error (B<EINVAL>)  is returned.  "
21983 "B<SIOCOUTQ> is defined in I<E<lt>linux/sockios.hE<gt>>.  Alternatively, you "
21984 "can use the synonymous B<TIOCOUTQ>, defined in I<E<lt>sys/ioctl.hE<gt>>."
21985 msgstr ""
21986 "ソケットの送信キューに残っている未送信データの量を返す。ソケットは LISTEN "
21987 "状\n"
21988 "態にあってはならない。 LISTEN 状態の場合にはエラー (B<EINVAL>) となる。\n"
21989 "B<SIOCOUTQ> は I<E<lt>linux/sockios.hE<gt>> で定義されている。\n"
21990 "代わりに、I<E<lt>sys/ioctl.hE<gt>> で定義されている、同義語の B<TIOCOUTQ> "
21991 "を\n"
21992 "使うこともできる。"
21993
21994 #. type: Plain text
21995 #: build/C/man7/tcp.7:1215
21996 msgid ""
21997 "When a network error occurs, TCP tries to resend the packet.  If it doesn't "
21998 "succeed after some time, either B<ETIMEDOUT> or the last received error on "
21999 "this connection is reported."
22000 msgstr ""
22001 "ネットワークエラーが起こると、 TCP はパケットの再送を試みる。 何回かやっても"
22002 "成功しなければ、この接続に対して B<ETIMEOUT> エラーか最後に受信したエラーが返"
22003 "される。"
22004
22005 #. type: Plain text
22006 #: build/C/man7/tcp.7:1226
22007 msgid ""
22008 "Some applications require a quicker error notification.  This can be enabled "
22009 "with the B<IPPROTO_IP> level B<IP_RECVERR> socket option.  When this option "
22010 "is enabled, all incoming errors are immediately passed to the user program.  "
22011 "Use this option with care \\(em it makes TCP less tolerant to routing "
22012 "changes and other normal network conditions."
22013 msgstr ""
22014 "アプリケーションによっては、もっと早くエラーを知らせてほしい場合がある。 これ"
22015 "には B<IPPROTO_IP> レベルの B<IP_RECVERR> ソケットオプションを用いると良い。"
22016 "このオプションが有効になっていると、 到着したエラーはすべてただちにユーザープ"
22017 "ログラムに渡される。 このオプションは慎重に用いること \\(em ルーティングの変"
22018 "更など、 通常ありうるネットワーク状態に対して TCP をより脆弱にしてしまう。"
22019
22020 #. type: TP
22021 #: build/C/man7/tcp.7:1227
22022 #, no-wrap
22023 msgid "B<EAFNOTSUPPORT>"
22024 msgstr "B<EAFNOTSUPPORT>"
22025
22026 #. type: Plain text
22027 #: build/C/man7/tcp.7:1233
22028 msgid "Passed socket address type in I<sin_family> was not B<AF_INET>."
22029 msgstr ""
22030 "I<sin_family> に渡されたソケットアドレスのタイプが B<AF_INET> ではなかった。"
22031
22032 #. type: Plain text
22033 #: build/C/man7/tcp.7:1237
22034 msgid ""
22035 "The other end closed the socket unexpectedly or a read is executed on a shut "
22036 "down socket."
22037 msgstr ""
22038 "接続先が予期しなかったかたちでソケットをクローズした。 またはシャットダウンさ"
22039 "れたソケットに読み込みが実行された。"
22040
22041 #. type: TP
22042 #: build/C/man7/tcp.7:1237
22043 #, no-wrap
22044 msgid "B<ETIMEDOUT>"
22045 msgstr "B<ETIMEDOUT>"
22046
22047 #. type: Plain text
22048 #: build/C/man7/tcp.7:1240
22049 msgid "The other end didn't acknowledge retransmitted data after some time."
22050 msgstr "接続先が、何回かデータを再送しても反応しない。"
22051
22052 #. type: Plain text
22053 #: build/C/man7/tcp.7:1244
22054 msgid ""
22055 "Any errors defined for B<ip>(7)  or the generic socket layer may also be "
22056 "returned for TCP."
22057 msgstr ""
22058 "B<ip>(7)  で定義されているエラーや、ジェネリックなソケット層におけるエラーも "
22059 "TCP に返されることがある。"
22060
22061 #. type: Plain text
22062 #: build/C/man7/tcp.7:1251
22063 msgid ""
22064 "Support for Explicit Congestion Notification, zero-copy B<sendfile>(2), "
22065 "reordering support and some SACK extensions (DSACK) were introduced in 2.4.  "
22066 "Support for forward acknowledgement (FACK), TIME_WAIT recycling, and per-"
22067 "connection keepalive socket options were introduced in 2.3."
22068 msgstr ""
22069 "Explicit Congestion Notification、zero-copy の B<sendfile>(2)、 並び替えのサ"
22070 "ポート、SACK 拡張 (DSACK) などのサポートは 2.4 で導入された。 フォワード確認 "
22071 "(FACK)、TIME_WAIT リサイクル、接続ごとの keepalive に対するソケットオプション"
22072 "は 2.3 で導入された。"
22073
22074 #. type: Plain text
22075 #: build/C/man7/tcp.7:1253
22076 msgid "Not all errors are documented."
22077 msgstr "まだ説明されていないエラーがある。"
22078
22079 #.  Only a single Linux kernel version is described
22080 #.  Info for 2.2 was lost. Should be added again,
22081 #.  or put into a separate page.
22082 #.  .SH AUTHORS
22083 #.  This man page was originally written by Andi Kleen.
22084 #.  It was updated for 2.4 by Nivedita Singhvi with input from
22085 #.  Alexey Kuznetsov's Documentation/networking/ip-sysctl.txt
22086 #.  document.
22087 #. type: Plain text
22088 #: build/C/man7/tcp.7:1263
22089 msgid "IPv6 is not described."
22090 msgstr "IPv6 に関する記述がない。"
22091
22092 #. type: Plain text
22093 #: build/C/man7/tcp.7:1275
22094 msgid ""
22095 "B<accept>(2), B<bind>(2), B<connect>(2), B<getsockopt>(2), B<listen>(2), "
22096 "B<recvmsg>(2), B<sendfile>(2), B<sendmsg>(2), B<socket>(2), B<ip>(7), "
22097 "B<socket>(7)"
22098 msgstr ""
22099 "B<accept>(2), B<bind>(2), B<connect>(2), B<getsockopt>(2), B<listen>(2), "
22100 "B<recvmsg>(2), B<sendfile>(2), B<sendmsg>(2), B<socket>(2), B<ip>(7), "
22101 "B<socket>(7)"
22102
22103 #. type: Plain text
22104 #: build/C/man7/tcp.7:1277
22105 msgid "RFC\\ 793 for the TCP specification."
22106 msgstr "RFC\\ 793: TCP の仕様。"
22107
22108 #. type: Plain text
22109 #: build/C/man7/tcp.7:1279
22110 msgid ""
22111 "RFC\\ 1122 for the TCP requirements and a description of the Nagle algorithm."
22112 msgstr "RFC\\ 1122: TCP の要求事項と Nagle アルゴリズムの記述。"
22113
22114 #. type: Plain text
22115 #: build/C/man7/tcp.7:1281
22116 msgid "RFC\\ 1323 for TCP timestamp and window scaling options."
22117 msgstr "RFC\\ 1323: TCP のタイムスタンプ・ウィンドウスケーリング各オプション。"
22118
22119 #. type: Plain text
22120 #: build/C/man7/tcp.7:1283
22121 msgid "RFC\\ 1337 for a description of TIME_WAIT assassination hazards."
22122 msgstr "RFC\\ 1337: TIME_WAIT assassination hazard に関する説明。"
22123
22124 #. type: Plain text
22125 #: build/C/man7/tcp.7:1285
22126 msgid "RFC\\ 3168 for a description of Explicit Congestion Notification."
22127 msgstr "RFC\\ 3168: Explicit Congestion Notification に関する説明。"
22128
22129 #. type: Plain text
22130 #: build/C/man7/tcp.7:1287
22131 msgid "RFC\\ 2581 for TCP congestion control algorithms."
22132 msgstr "RFC\\ 2581: TCP 輻輳制御アルゴリズム。"
22133
22134 #. type: Plain text
22135 #: build/C/man7/tcp.7:1289
22136 msgid "RFC\\ 2018 and RFC\\ 2883 for SACK and extensions to SACK."
22137 msgstr "RFC\\ 2018 と RFC\\ 2883: SACK とその拡張。"
22138
22139 #. type: TH
22140 #: build/C/man7/udp.7:12
22141 #, no-wrap
22142 msgid "UDP"
22143 msgstr "UDP"
22144
22145 #. type: TH
22146 #: build/C/man7/udp.7:12
22147 #, no-wrap
22148 msgid "2013-07-31"
22149 msgstr "2013-07-31"
22150
22151 #. type: Plain text
22152 #: build/C/man7/udp.7:15
22153 msgid "udp - User Datagram Protocol for IPv4"
22154 msgstr "udp - IPv4 の ユーザーデータグラムプロトコル"
22155
22156 #. type: Plain text
22157 #: build/C/man7/udp.7:21
22158 msgid "B<#include E<lt>netinet/udp.hE<gt>>"
22159 msgstr "B<#include E<lt>netinet/udp.hE<gt>>"
22160
22161 #. type: Plain text
22162 #: build/C/man7/udp.7:23
22163 msgid "B<udp_socket = socket(AF_INET, SOCK_DGRAM, 0);>"
22164 msgstr "B<udp_socket = socket(AF_INET, SOCK_DGRAM, 0);>"
22165
22166 #. type: Plain text
22167 #: build/C/man7/udp.7:29
22168 msgid ""
22169 "This is an implementation of the User Datagram Protocol described in RFC\\ "
22170 "768.  It implements a connectionless, unreliable datagram packet service.  "
22171 "Packets may be reordered or duplicated before they arrive.  UDP generates "
22172 "and checks checksums to catch transmission errors."
22173 msgstr ""
22174 "これは RFC\\ 768 で記述されている User Datagram Protocol の実装である。 UDP "
22175 "はコネクションレスの、信頼性の低いデータパケットサービスである。 パケットは到"
22176 "着前に並び替えられたり複製されたりする。 UDP は転送エラーを検出するために"
22177 "チェックサムを生成・チェックする。"
22178
22179 #. type: Plain text
22180 #: build/C/man7/udp.7:58
22181 msgid ""
22182 "When a UDP socket is created, its local and remote addresses are "
22183 "unspecified.  Datagrams can be sent immediately using B<sendto>(2)  or "
22184 "B<sendmsg>(2)  with a valid destination address as an argument.  When "
22185 "B<connect>(2)  is called on the socket, the default destination address is "
22186 "set and datagrams can now be sent using B<send>(2)  or B<write>(2)  without "
22187 "specifying a destination address.  It is still possible to send to other "
22188 "destinations by passing an address to B<sendto>(2)  or B<sendmsg>(2).  In "
22189 "order to receive packets, the socket can be bound to a local address first "
22190 "by using B<bind>(2).  Otherwise, the socket layer will automatically assign "
22191 "a free local port out of the range defined by I</proc/sys/net/ipv4/"
22192 "ip_local_port_range> and bind the socket to B<INADDR_ANY>."
22193 msgstr ""
22194 "UDP ソケットが生成されるとき、 ローカルアドレスやリモートアドレスは指定されな"
22195 "い。 正しい行き先アドレスを引数として B<sendto>(2)  や B<sendmsg>(2)  を呼べ"
22196 "ば、データグラムはただちに送信される。 ソケットに対して B<connect>(2)  を呼ぶ"
22197 "と、デフォルトの行き先アドレスが設定され、 B<send>(2)  や B<write>(2)  を使っ"
22198 "て、行き先アドレスの指定なしにデータグラムを送信できるようになる。 この場合で"
22199 "も、行き先アドレスを B<sendto>(2)  や B<sendmsg>(2)  に渡せば、デフォルト以外"
22200 "のアドレスに送信可能である。 パケットを受信するために、まずソケットを "
22201 "B<bind>(2)  を用いてローカルなアドレスにバインドさせることもできる。 そうでな"
22202 "い場合は、ソケット層は自動的に I</proc/sys/net/ipv4/ip_local_port_range> で定"
22203 "義されている範囲の外で空いているローカルなポートを割り当て、 ソケットを "
22204 "B<INADDR_ANY> にバインドする。"
22205
22206 #. type: Plain text
22207 #: build/C/man7/udp.7:66
22208 msgid ""
22209 "All receive operations return only one packet.  When the packet is smaller "
22210 "than the passed buffer, only that much data is returned; when it is bigger, "
22211 "the packet is truncated and the B<MSG_TRUNC> flag is set.  B<MSG_WAITALL> is "
22212 "not supported."
22213 msgstr ""
22214 "受信動作はパケットを一つだけ返す。渡したバッファーよりもパケットが 小さけれ"
22215 "ば、そのパケットの大きさのデータだけが返される。 逆にバッファーよりも大きい場"
22216 "合はパケットは丸められ、 B<MSG_TRUNC> フラグがセットされる。 B<MSG_WAITALL> "
22217 "はサポートしていない。"
22218
22219 #. type: Plain text
22220 #: build/C/man7/udp.7:75
22221 msgid ""
22222 "IP options may be sent or received using the socket options described in "
22223 "B<ip>(7).  They are processed by the kernel only when the appropriate I</"
22224 "proc> parameter is enabled (but still passed to the user even when it is "
22225 "turned off).  See B<ip>(7)."
22226 msgstr ""
22227 "IP オプションは、 B<ip>(7)  に記述されているソケットオプションを用いて読み書"
22228 "きできる。 これらは適切な I</proc> パラメーターが有効な場合に限ってカーネルに"
22229 "よって処理される (しかし無効になっている場合でもユーザーには渡される)。 "
22230 "B<ip>(7)  を参照のこと。"
22231
22232 #. type: Plain text
22233 #: build/C/man7/udp.7:80
22234 msgid ""
22235 "When the B<MSG_DONTROUTE> flag is set on sending, the destination address "
22236 "must refer to a local interface address and the packet is sent only to that "
22237 "interface."
22238 msgstr ""
22239 "B<MSG_DONTROUTE> フラグが送信時にセットされている場合には、 行き先アドレスは"
22240 "ローカルなインターフェースアドレスから 参照できなければならない。パケットはそ"
22241 "のインターフェースにしか送られない。"
22242
22243 #. type: Plain text
22244 #: build/C/man7/udp.7:98
22245 msgid ""
22246 "By default, Linux UDP does path MTU (Maximum Transmission Unit) discovery.  "
22247 "This means the kernel will keep track of the MTU to a specific target IP "
22248 "address and return B<EMSGSIZE> when a UDP packet write exceeds it.  When "
22249 "this happens, the application should decrease the packet size.  Path MTU "
22250 "discovery can be also turned off using the B<IP_MTU_DISCOVER> socket option "
22251 "or the I</proc/sys/net/ipv4/ip_no_pmtu_disc> file; see B<ip>(7)  for "
22252 "details.  When turned off, UDP will fragment outgoing UDP packets that "
22253 "exceed the interface MTU.  However, disabling it is not recommended for "
22254 "performance and reliability reasons."
22255 msgstr ""
22256 "デフォルトでは、Linux の UDP は Path MTU Discovery を行う。 つまり、カーネル"
22257 "は特定の宛先 IP アドレスの MTU (Maximum Transmission Unit; 最大転送単位) を記"
22258 "録し、UDP パケットの書き込みが MTU を超えた場合 B<EMSGSIZE> を返す。 "
22259 "B<EMSGSIZE> を返された場合、アプリケーションはパケットサイズを小さくすべきで"
22260 "ある。 ソケットオプション B<IP_MTU_DISCOVER> または I</proc/sys/net/ipv4/"
22261 "ip_no_pmtu_disc> ファイルを使って Path MTU Discovery を無効にすることもでき"
22262 "る (詳細は B<ip>(7)  を参照)。 Path MTU Discovery を無効にした場合は、パケッ"
22263 "トサイズが インターフェースの MTU よりも大きいと UDP はそのパケットを フラグ"
22264 "メント化して送出する。 しかしながら、性能と信頼性の理由から Path MTU "
22265 "Discovery を 無効にするのは推奨できない。"
22266
22267 #. type: Plain text
22268 #: build/C/man7/udp.7:103
22269 msgid "UDP uses the IPv4 I<sockaddr_in> address format described in B<ip>(7)."
22270 msgstr ""
22271 "UDP は IPv4 の I<sockaddr_in> アドレスフォーマットを用いる。これは B<ip>(7)  "
22272 "に記述されている。"
22273
22274 #. type: Plain text
22275 #: build/C/man7/udp.7:114
22276 msgid ""
22277 "All fatal errors will be passed to the user as an error return even when the "
22278 "socket is not connected.  This includes asynchronous errors received from "
22279 "the network.  You may get an error for an earlier packet that was sent on "
22280 "the same socket.  This behavior differs from many other BSD socket "
22281 "implementations which don't pass any errors unless the socket is connected.  "
22282 "Linux's behavior is mandated by B<RFC\\ 1122>."
22283 msgstr ""
22284 "致命的なエラーは、たとえソケットが接続されていなくても、 すべてエラー戻り値と"
22285 "してユーザーに渡される。 これにはネットワークから受け取る非同期エラーも含まれ"
22286 "る。 同じソケットを使って送信した昔のパケットに関するエラーを受け取るかもしれ"
22287 "ない。 この振る舞いは他の BSD ソケットの実装の多くとは異なる。 これらではソ"
22288 "ケットが接続されていない場合はエラーを全く返さない。 Linux の振る舞いは B<RFC"
22289 "\\ 1122> での指定に従ったものである。"
22290
22291 #. type: Plain text
22292 #: build/C/man7/udp.7:128
22293 msgid ""
22294 "For compatibility with legacy code, in Linux 2.0 and 2.2 it was possible to "
22295 "set the B<SO_BSDCOMPAT> B<SOL_SOCKET> option to receive remote errors only "
22296 "when the socket has been connected (except for B<EPROTO> and B<EMSGSIZE>).  "
22297 "Locally generated errors are always passed.  Support for this socket option "
22298 "was removed in later kernels; see B<socket>(7)  for further information."
22299 msgstr ""
22300 "Linux 2.0 と 2.2 では、古いコードとの互換性のために、 B<SO_BSDCOMPAT> "
22301 "B<SOL_SOCKET> オプションを設定すれば、ソケットが接続されている 場合に限ってリ"
22302 "モートのエラーを受信するようにできた (B<EPROTO> と B<EMSGSIZE> を除く)。 ロー"
22303 "カルで生成されたエラーは常に渡される。 このソケットオプションのサポートはそれ"
22304 "以降のバージョンの Linux で 削除された。詳細は B<socket>(7)  を参照。"
22305
22306 #. type: Plain text
22307 #: build/C/man7/udp.7:137
22308 msgid ""
22309 "When the B<IP_RECVERR> option is enabled, all errors are stored in the "
22310 "socket error queue, and can be received by B<recvmsg>(2)  with the "
22311 "B<MSG_ERRQUEUE> flag set."
22312 msgstr ""
22313 "B<IP_RECVERR> オプションが有効になっていると、 すべてのエラーはソケットのエ"
22314 "ラーキューに保存される。 これは B<MSG_ERRQUEUE> フラグをセットして "
22315 "B<recvmsg>(2)  を呼べば受信できる。"
22316
22317 #. type: Plain text
22318 #: build/C/man7/udp.7:140
22319 msgid ""
22320 "System-wide UDP parameter settings can be accessed by files in the directory "
22321 "I</proc/sys/net/ipv4/>."
22322 msgstr ""
22323 "システム全体の UDP パラメーター設定には、 I</proc/sys/net/ipv4/> ディレクトリ"
22324 "内のファイルの読み書きでアクセスできる。"
22325
22326 #. type: TP
22327 #: build/C/man7/udp.7:140
22328 #, no-wrap
22329 msgid "I<udp_mem> (since Linux 2.6.25)"
22330 msgstr "I<udp_mem> (Linux 2.6.25 以降)"
22331
22332 #. type: Plain text
22333 #: build/C/man7/udp.7:144
22334 msgid ""
22335 "This is a vector of three integers governing the number of pages allowed for "
22336 "queueing by all UDP sockets."
22337 msgstr ""
22338 "これは 3 つの整数からなるベクトル値で、 UDP の全ソケットのキューで利用可能な"
22339 "ページ数を制御する。"
22340
22341 #. type: Plain text
22342 #: build/C/man7/udp.7:151
22343 msgid ""
22344 "Below this number of pages, UDP is not bothered about its memory appetite.  "
22345 "When the amount of memory allocated by UDP exceeds this number, UDP starts "
22346 "to moderate memory usage."
22347 msgstr ""
22348 "このページ数より少なければ、UDP はそのメモリー使用に関して 干渉されない。 "
22349 "UDP に割り当てられたメモリー総量がこの値を超過すると、 UDP はメモリー使用量を"
22350 "調整し始める。"
22351
22352 #. type: Plain text
22353 #: build/C/man7/udp.7:157
22354 msgid ""
22355 "This value was introduced to follow the format of I<tcp_mem> (see B<tcp>(7))."
22356 msgstr ""
22357 "この値は I<tcp_mem> の形式 (B<tcp>(7)  参照) と合わせるために導入された"
22358
22359 #. type: Plain text
22360 #: build/C/man7/udp.7:160
22361 msgid "Number of pages allowed for queueing by all UDP sockets."
22362 msgstr "UDP の全ソケットのキューで利用可能なページ数。"
22363
22364 #. type: Plain text
22365 #: build/C/man7/udp.7:164
22366 msgid ""
22367 "Defaults values for these three items are calculated at boot time from the "
22368 "amount of available memory."
22369 msgstr ""
22370 "これらの 3 つの値のデフォルト値は、 ブート時に利用可能なメモリー総量から計算"
22371 "される。"
22372
22373 #. type: TP
22374 #: build/C/man7/udp.7:164
22375 #, no-wrap
22376 msgid "I<udp_rmem_min> (integer; default value: PAGE_SIZE; since Linux 2.6.25)"
22377 msgstr "I<udp_rmem_min> (integer; デフォルト値: PAGE_SIZE; Linux 2.6.25 以降)"
22378
22379 #. type: Plain text
22380 #: build/C/man7/udp.7:171
22381 msgid ""
22382 "Minimal size, in bytes, of receive buffers used by UDP sockets in "
22383 "moderation.  Each UDP socket is able to use the size for receiving data, "
22384 "even if total pages of UDP sockets exceed I<udp_mem> pressure."
22385 msgstr ""
22386 "メモリー使用量の調整中に、UDP ソケットが使用できる受信バッファーの最小値 (バ"
22387 "イト単位)。 UDP の全ソケットのページ使用量の合計が I<udp_mem> pressure を超過"
22388 "している場合であっても、 各 UDP ソケットはデータの受信にこのサイズ分だけは使"
22389 "用することができる。"
22390
22391 #. type: TP
22392 #: build/C/man7/udp.7:171
22393 #, no-wrap
22394 msgid "I<udp_wmem_min> (integer; default value: PAGE_SIZE; since Linux 2.6.25)"
22395 msgstr "I<udp_wmem_min> (integer; デフォルト値: PAGE_SIZE; Linux 2.6.25 以降)"
22396
22397 #. type: Plain text
22398 #: build/C/man7/udp.7:178
22399 msgid ""
22400 "Minimal size, in bytes, of send buffer used by UDP sockets in moderation.  "
22401 "Each UDP socket is able to use the size for sending data, even if total "
22402 "pages of UDP sockets exceed I<udp_mem> pressure."
22403 msgstr ""
22404 "メモリー使用量の調整中に、UDP ソケットが使用できる送信バッファーの最小値 (バ"
22405 "イト単位)。 UDP の全ソケットのページ使用量の合計が I<udp_mem> pressure を超過"
22406 "している場合であっても、 各 UDP ソケットはデータの送信にこのサイズ分だけは使"
22407 "用することができる。"
22408
22409 #. type: Plain text
22410 #: build/C/man7/udp.7:189
22411 msgid ""
22412 "To set or get a UDP socket option, call B<getsockopt>(2)  to read or "
22413 "B<setsockopt>(2)  to write the option with the option level argument set to "
22414 "B<IPPROTO_UDP>.  Unless otherwise noted, I<optval> is a pointer to an I<int>."
22415 msgstr ""
22416 "UDP ソケットオプションを設定または取得するには、 取得には B<getsockopt>(2)  "
22417 "を、設定には B<setsockopt>(2)  をオプションレベル引数に B<IPPROTO_UDP> を指定"
22418 "して呼び出す。 注釈がない限り、 I<optval> は I<int> へのポインターである。"
22419
22420 #. type: TP
22421 #: build/C/man7/udp.7:189
22422 #, no-wrap
22423 msgid "B<UDP_CORK> (since Linux 2.5.44)"
22424 msgstr "B<UDP_CORK> (Linux 2.5.44 以降)"
22425
22426 #.  FIXME document UDP_ENCAP (new in kernel 2.5.67)
22427 #.  From include/linux/udp.h:
22428 #.  /* UDP encapsulation types */
22429 #.  #define UDP_ENCAP_ESPINUDP_NON_IKE      1 /* draft-ietf-ipsec-nat-t-ike-00/01 */
22430 #.  #define UDP_ENCAP_ESPINUDP      2 /* draft-ietf-ipsec-udp-encaps-06 */
22431 #.  #define UDP_ENCAP_L2TPINUDP     3 /* rfc2661 */
22432 #. type: Plain text
22433 #: build/C/man7/udp.7:202
22434 msgid ""
22435 "If this option is enabled, then all data output on this socket is "
22436 "accumulated into a single datagram that is transmitted when the option is "
22437 "disabled.  This option should not be used in code intended to be portable."
22438 msgstr ""
22439 "このオプションが指定されると、このソケットの全てのデータ出力は 一つのデータグ"
22440 "ラムに蓄積され、このオプションが無効化された時に 送信される。 このオプション"
22441 "は移植性を考慮したコードでは用いるべきではない。"
22442
22443 #. type: Plain text
22444 #: build/C/man7/udp.7:206
22445 msgid "These ioctls can be accessed using B<ioctl>(2).  The correct syntax is:"
22446 msgstr ""
22447 "以下に示す ioctl は B<ioctl>(2)  を使ってアクセスできる。 正しい文法は以下の"
22448 "通り。"
22449
22450 #. type: Plain text
22451 #: build/C/man7/udp.7:211
22452 #, no-wrap
22453 msgid ""
22454 "B<int>I< value>B<;>\n"
22455 "I<error>B< = ioctl(>I<udp_socket>B<, >I<ioctl_type>B<, &>I<value>B<);>\n"
22456 msgstr ""
22457 "B<int>I< value>B<;>\n"
22458 "I<error>B< = ioctl(>I<udp_socket>B<, >I<ioctl_type>B<, &>I<value>B<);>\n"
22459
22460 #. type: TP
22461 #: build/C/man7/udp.7:213
22462 #, no-wrap
22463 msgid "B<FIONREAD> (B<SIOCINQ>)"
22464 msgstr "B<FIONREAD> (B<SIOCINQ>)"
22465
22466 #.  See http://www.securiteam.com/unixfocus/5KP0I15IKO.html
22467 #.  "GNUnet DoS (UDP Socket Unreachable)", 14 May 2006
22468 #. type: Plain text
22469 #: build/C/man7/udp.7:231
22470 msgid ""
22471 "Gets a pointer to an integer as argument.  Returns the size of the next "
22472 "pending datagram in the integer in bytes, or 0 when no datagram is pending.  "
22473 "B<Warning:> Using B<FIONREAD>, it is impossible to distinguish the case "
22474 "where no datagram is pending from the case where the next pending datagram "
22475 "contains zero bytes of data.  It is safer to use B<select>(2), B<poll>(2), "
22476 "or B<epoll>(7)  to distinguish these cases."
22477 msgstr ""
22478 "整数へのポインターを引き数に取り、そのポインターに、次の処理待ちのデータグラ"
22479 "ムの\n"
22480 "サイズをバイト単位で返す。処理待ちのデータグラムがない場合は 0 を返す。\n"
22481 "B<警告>: B<FIONREAD> を使った場合、処理待ちのデータグラムがない場合と、\n"
22482 "次の処理待ちデータグラムが 0 バイトのデータの場合を区別することができない。\n"
22483 "この両者を区別したい場合は、B<select>(2), B<poll>(2), B<epoll>(7) \n"
22484 "を使う方が安全である。"
22485
22486 #. type: TP
22487 #: build/C/man7/udp.7:231
22488 #, no-wrap
22489 msgid "B<TIOCOUTQ> (B<SIOCOUTQ>)"
22490 msgstr "B<TIOCOUTQ> (B<SIOCOUTQ>)"
22491
22492 #. type: Plain text
22493 #: build/C/man7/udp.7:235
22494 msgid ""
22495 "Returns the number of data bytes in the local send queue.  Only supported "
22496 "with Linux 2.4 and above."
22497 msgstr ""
22498 "ローカル送信キューにあるデータサイズをバイト単位で返す。 Linux 2.4 以上でのみ"
22499 "対応している。"
22500
22501 #. type: Plain text
22502 #: build/C/man7/udp.7:241
22503 msgid ""
22504 "In addition, all ioctls documented in B<ip>(7)  and B<socket>(7)  are "
22505 "supported."
22506 msgstr ""
22507 "さらに、 B<ip>(7)  と B<socket>(7)  で述べられている全ての ioctl も対応してい"
22508 "る。"
22509
22510 #. type: Plain text
22511 #: build/C/man7/udp.7:247
22512 msgid ""
22513 "All errors documented for B<socket>(7)  or B<ip>(7)  may be returned by a "
22514 "send or receive on a UDP socket."
22515 msgstr ""
22516 "B<socket>(7)  や B<ip>(7)  に記述されている全てのエラーが、 UDP ソケットの送"
22517 "受信で返される可能性がある。"
22518
22519 #. type: TP
22520 #: build/C/man7/udp.7:247 build/C/man7/unix.7:410
22521 #, no-wrap
22522 msgid "B<ECONNREFUSED>"
22523 msgstr "B<ECONNREFUSED>"
22524
22525 #. type: Plain text
22526 #: build/C/man7/udp.7:251
22527 msgid ""
22528 "No receiver was associated with the destination address.  This might be "
22529 "caused by a previous packet sent over the socket."
22530 msgstr ""
22531 "行き先アドレスに関連づけられている受信者がいない。 これは以前のパケットがその"
22532 "パケットを 上書き送信してしまっているからであることが多い。"
22533
22534 #.  .SH CREDITS
22535 #.  This man page was written by Andi Kleen.
22536 #. type: Plain text
22537 #: build/C/man7/udp.7:256
22538 msgid "B<IP_RECVERR> is a new feature in Linux 2.2."
22539 msgstr "B<IP_RECVERR> は Linux 2.2 の新しい機能である。"
22540
22541 #. type: Plain text
22542 #: build/C/man7/udp.7:261
22543 msgid "B<ip>(7), B<raw>(7), B<socket>(7), B<udplite>(7)"
22544 msgstr "B<ip>(7), B<raw>(7), B<socket>(7), B<udplite>(7)"
22545
22546 #. type: Plain text
22547 #: build/C/man7/udp.7:263
22548 msgid "RFC\\ 768 for the User Datagram Protocol."
22549 msgstr "RFC\\ 768 : User Datagram Protocol"
22550
22551 #. type: Plain text
22552 #: build/C/man7/udp.7:265
22553 msgid "RFC\\ 1122 for the host requirements."
22554 msgstr "RFC\\ 1122 : ホストの必要条件"
22555
22556 #. type: Plain text
22557 #: build/C/man7/udp.7:267
22558 msgid "RFC\\ 1191 for a description of path MTU discovery."
22559 msgstr "RFC\\ 1191 : path MTU discovery の記述"
22560
22561 #. type: TH
22562 #: build/C/man7/udplite.7:27
22563 #, no-wrap
22564 msgid "UDPLITE"
22565 msgstr "UDPLITE"
22566
22567 #. type: Plain text
22568 #: build/C/man7/udplite.7:30
22569 msgid "udplite - Lightweight User Datagram Protocol"
22570 msgstr "udplite - 軽量なユーザーデータグラムプロトコル"
22571
22572 #. type: Plain text
22573 #: build/C/man7/udplite.7:38
22574 msgid "B<sockfd = socket(AF_INET, SOCK_DGRAM, IPPROTO_UDPLITE);>"
22575 msgstr "B<sockfd = socket(AF_INET, SOCK_DGRAM, IPPROTO_UDPLITE);>"
22576
22577 #. type: Plain text
22578 #: build/C/man7/udplite.7:41
22579 msgid ""
22580 "This is an implementation of the Lightweight User Datagram Protocol (UDP-"
22581 "Lite), as described in RFC\\ 3828."
22582 msgstr ""
22583 "これは RFC\\ 3828 に書かれている軽量なユーザーデータグラムプロトコル "
22584 "(Lightweight User Datagram Protocol; UDP-Lite) の実装である。"
22585
22586 #. type: Plain text
22587 #: build/C/man7/udplite.7:47
22588 msgid ""
22589 "UDP-Lite is an extension of UDP (RFC\\ 768) to support variable-length "
22590 "checksums.  This has advantages for some types of multimedia transport that "
22591 "may be able to make use of slightly damaged datagrams, rather than having "
22592 "them discarded by lower-layer protocols."
22593 msgstr ""
22594 "UDP-Lite は UDP (RFC\\ 768) の拡張で、可変長のチェックサムをサポートしてい"
22595 "る。 このプロトコルが効果を発揮するのは、少しだけ壊れたデータグラムがあった場"
22596 "合に、 そのデータグラムを下位レイヤーのプロトコルに廃棄させるのではなく、 そ"
22597 "れを利用することができるような、ある種のマルチメディア転送においてである。"
22598
22599 #. type: Plain text
22600 #: build/C/man7/udplite.7:53
22601 msgid ""
22602 "The variable-length checksum coverage is set via a B<setsockopt>(2)  "
22603 "option.  If this option is not set, the only difference to UDP is in using a "
22604 "different IP protocol identifier (IANA number 136)."
22605 msgstr ""
22606 "可変長のチェックサムの対象範囲は B<setsockopt>(2)  オプション経由で設定され"
22607 "る。 このオプションが設定されていない場合、UDP と異なるのは 違う IP プロトコ"
22608 "ル識別子 (IANA 番号 136) を使用する点だけである。"
22609
22610 #. type: Plain text
22611 #: build/C/man7/udplite.7:58
22612 msgid ""
22613 "The UDP-Lite implementation is a full extension of B<udp>(7)\\(emthat is, it "
22614 "shares the same API and API behavior, and in addition offers two socket "
22615 "options to control the checksum coverage."
22616 msgstr ""
22617 "UDP-Lite の実装は B<udp>(7)  の完全な拡張、すなわち API と API の動作は同じで"
22618 "ある。 これに加えて、2 つのソケットオプションがチェックサムの対象範囲を 制御"
22619 "するために提供されている。"
22620
22621 #. type: Plain text
22622 #: build/C/man7/udplite.7:67
22623 msgid ""
22624 "UDP-Litev4 uses the I<sockaddr_in> address format described in B<ip>(7).  "
22625 "UDP-Litev6 uses the I<sockaddr_in6> address format described in B<ipv6>(7)."
22626 msgstr ""
22627 "UDP-Litev4 は B<ip>(7)  で説明されている I<sockaddr_in> アドレスを使用する。 "
22628 "UDP-Litev6 は B<ipv6>(7)  で説明されている I<sockaddr_in6> アドレスを使用す"
22629 "る。"
22630
22631 #. type: Plain text
22632 #: build/C/man7/udplite.7:80
22633 msgid ""
22634 "To set or get a UDP-Lite socket option, call B<getsockopt>(2)  to read or "
22635 "B<setsockopt>(2)  to write the option with the option level argument set to "
22636 "B<IPPROTO_UDPLITE>.  In addition, all B<IPPROTO_UDP> socket options are "
22637 "valid on a UDP-Lite socket.  See B<udp>(7)  for more information."
22638 msgstr ""
22639 "UDP-Lite のソケットオプションを設定/取得するには、 オプションレベル引き数に "
22640 "B<IPPROTO_UDPLITE> を指定して、取得時には B<getsockopt>(2)  を、設定時には "
22641 "B<setsockopt>(2)  を呼び出す。さらに、全ての B<IPPROTO_UDP> のソケットオプ"
22642 "ションが UDP-Lite ソケットでも使用できる。 詳細は B<udp>(7)  を参照のこと。"
22643
22644 #. type: Plain text
22645 #: build/C/man7/udplite.7:82
22646 msgid "The following two options are specific to UDP-Lite."
22647 msgstr "以下の 2 つが UDP-Lite に固有のオプションである。"
22648
22649 #. type: TP
22650 #: build/C/man7/udplite.7:82
22651 #, no-wrap
22652 msgid "B<UDPLITE_SEND_CSCOV>"
22653 msgstr "B<UDPLITE_SEND_CSCOV>"
22654
22655 #. type: Plain text
22656 #: build/C/man7/udplite.7:87
22657 msgid ""
22658 "This option sets the sender checksum coverage and takes an I<int> as "
22659 "argument, with a checksum coverage value in the range 0..2^16-1."
22660 msgstr ""
22661 "このオプションは送信側のチェックサムの対象範囲を設定する。 I<int> 型を引き数"
22662 "として取り、設定可能な値の範囲は 0 から 2^16-1 までである。"
22663
22664 #. type: Plain text
22665 #: build/C/man7/udplite.7:91
22666 msgid ""
22667 "A value of 0 means that the entire datagram is always covered.  Values from "
22668 "1-7 are illegal (RFC\\ 3828, 3.1) and are rounded up to the minimum coverage "
22669 "of 8."
22670 msgstr ""
22671 "値 0 はデータグラム全体が常にチェックサムの対象となることを意味する。 値 1〜"
22672 "7 は不正であり (RFC\\ 3828 の 3.1 章)、範囲の設定として最小値である 8 に切り"
22673 "上げられる。"
22674
22675 #. type: Plain text
22676 #: build/C/man7/udplite.7:97
22677 msgid ""
22678 "With regard to IPv6 jumbograms (RFC\\ 2675), the UDP-Litev6 checksum "
22679 "coverage is limited to the first 2^16-1 octets, as per RFC\\ 3828, 3.5.  "
22680 "Higher values are therefore silently truncated to 2^16-1.  If in doubt, the "
22681 "current coverage value can always be queried using B<getsockopt>(2)."
22682 msgstr ""
22683 "IPv6 の jumbograms (巨大なデータグラム; RFC\\ 2675) の場合には、 UDP-Litev6 "
22684 "のチェックサムの対象範囲は、RFC\\ 3828 の 3.5 章にあるように、 先頭から "
22685 "2^16-1 オクテットまでに限定される。 そのため、それより大きな値は 2^16-1 に"
22686 "黙って切り詰められる。 現在の対象範囲の値を知りたければ、いつでも "
22687 "B<getsockopt>(2)  を使って値を問い合わせることができる。"
22688
22689 #. type: TP
22690 #: build/C/man7/udplite.7:97
22691 #, no-wrap
22692 msgid "B<UDPLITE_RECV_CSCOV>"
22693 msgstr "B<UDPLITE_RECV_CSCOV>"
22694
22695 #. type: Plain text
22696 #: build/C/man7/udplite.7:108
22697 msgid ""
22698 "This is the receiver-side analogue and uses the same argument format and "
22699 "value range as B<UDPLITE_SEND_CSCOV>.  This option is not required to enable "
22700 "traffic with partial checksum coverage.  Its function is that of a traffic "
22701 "filter: when enabled, it instructs the kernel to drop all packets which have "
22702 "a coverage I<less> than the specified coverage value."
22703 msgstr ""
22704 "これは受信側のチェックサムの対象範囲を設定するもので、 使用される引き数形式と"
22705 "値の範囲は B<UDPLITE_SEND_CSCOV> と同じである。 このオプションは、部分的な"
22706 "チェックサム対象範囲を持つトラフィックを 有効にするのに必要なわけではなく、ト"
22707 "ラフィックフィルターとして機能する。 このオプションが有効にすると、カーネルは"
22708 "指定されたチェックサム対象範囲 よりも「短かい」対象範囲を持つパケットを全て廃"
22709 "棄するようになる。"
22710
22711 #.  SO_NO_CHECK exists and is supported by UDPv4, but is
22712 #.  commented out in socket(7), hence also commented out here
22713 #. .PP
22714 #. Since UDP-Lite mandates checksums, checksumming can not be disabled
22715 #. via the
22716 #. .B SO_NO_CHECK
22717 #. option from
22718 #. .BR socket (7).
22719 #. type: Plain text
22720 #: build/C/man7/udplite.7:121
22721 msgid ""
22722 "When the value of B<UDPLITE_RECV_CSCOV> exceeds the actual packet coverage, "
22723 "incoming packets are silently dropped, but may generate a warning message in "
22724 "the system log."
22725 msgstr ""
22726 "B<UDPLITE_RECV_CSCOV> の値が実際のパケットのチェックサム対象範囲よりも大きい"
22727 "場合、 受信したパケットは黙って廃棄される。 ただし、システムログに対して警告"
22728 "メッセージが生成されるかもしれない。"
22729
22730 #. type: Plain text
22731 #: build/C/man7/udplite.7:126
22732 msgid ""
22733 "All errors documented for B<udp>(7)  may be returned.  UDP-Lite does not add "
22734 "further errors."
22735 msgstr ""
22736 "B<udp>(7)  について書かれている全てのエラーは返る可能性がある。 UDP-Lite 自体"
22737 "は新たなエラーは追加していない。"
22738
22739 #. type: Plain text
22740 #: build/C/man7/udplite.7:129
22741 msgid "I</proc/net/snmp> - basic UDP-Litev4 statistics counters."
22742 msgstr "I</proc/net/snmp> - UDP-Litev4 の基本的な統計情報カウンター。"
22743
22744 #. type: Plain text
22745 #: build/C/man7/udplite.7:132
22746 msgid "I</proc/net/snmp6> - basic UDP-Litev6 statistics counters."
22747 msgstr "I</proc/net/snmp6> - UDP-Litev6 の基本的な統計情報カウンター。"
22748
22749 #. type: Plain text
22750 #: build/C/man7/udplite.7:134
22751 msgid "UDP-Litev4/v6 first appeared in Linux 2.6.20."
22752 msgstr "UDP-Litev4/v6 は Linux 2.6.20 で初めて登場した。"
22753
22754 #.  FIXME . remove this section once glibc supports UDP-Lite
22755 #. type: Plain text
22756 #: build/C/man7/udplite.7:137
22757 msgid "Where glibc support is missing, the following definitions are needed:"
22758 msgstr "glibc によるサポートがない場合は、以下の定義を行う必要がある。"
22759
22760 #.  The following two are defined in the kernel in linux/net/udplite.h
22761 #. type: Plain text
22762 #: build/C/man7/udplite.7:144
22763 #, no-wrap
22764 msgid ""
22765 "#define IPPROTO_UDPLITE     136\n"
22766 "#define UDPLITE_SEND_CSCOV  10\n"
22767 "#define UDPLITE_RECV_CSCOV  11\n"
22768 msgstr ""
22769 "#define IPPROTO_UDPLITE     136\n"
22770 "#define UDPLITE_SEND_CSCOV  10\n"
22771 "#define UDPLITE_RECV_CSCOV  11\n"
22772
22773 #. type: Plain text
22774 #: build/C/man7/udplite.7:151
22775 msgid "B<ip>(7), B<ipv6>(7), B<socket>(7), B<udp>(7)"
22776 msgstr "B<ip>(7), B<ipv6>(7), B<socket>(7), B<udp>(7)"
22777
22778 #. type: Plain text
22779 #: build/C/man7/udplite.7:153
22780 msgid "RFC\\ 3828 for the Lightweight User Datagram Protocol (UDP-Lite)."
22781 msgstr "RFC\\ 3828 for the Lightweight User Datagram Protocol (UDP-Lite)."
22782
22783 #. type: Plain text
22784 #: build/C/man7/udplite.7:156
22785 msgid "I<Documentation/networking/udplite.txt> in the Linux kernel source tree"
22786 msgstr "Linux カーネルソース内の I<Documentation/networking/udplite.txt>"
22787
22788 #. type: TH
22789 #: build/C/man7/unix.7:20
22790 #, no-wrap
22791 msgid "UNIX"
22792 msgstr "UNIX"
22793
22794 #. type: Plain text
22795 #: build/C/man7/unix.7:23
22796 msgid "unix - sockets for local interprocess communication"
22797 msgstr "unix - ローカルな プロセス間通信用のソケット"
22798
22799 #. type: Plain text
22800 #: build/C/man7/unix.7:27
22801 msgid "B<#include E<lt>sys/un.hE<gt>>"
22802 msgstr "B<#include E<lt>sys/un.hE<gt>>"
22803
22804 #. type: Plain text
22805 #: build/C/man7/unix.7:29
22806 msgid "I<unix_socket>B< = socket(AF_UNIX, type, 0);>"
22807 msgstr "I<unix_socket>B< = socket(AF_UNIX, type, 0);>"
22808
22809 #. type: Plain text
22810 #: build/C/man7/unix.7:31
22811 msgid "I<error>B< = socketpair(AF_UNIX, type, 0, int *>I<sv>B<);>"
22812 msgstr "I<error>B< = socketpair(AF_UNIX, type, 0, int *>I<sv>B<);>"
22813
22814 #. type: Plain text
22815 #: build/C/man7/unix.7:42
22816 msgid ""
22817 "The B<AF_UNIX> (also known as B<AF_LOCAL>)  socket family is used to "
22818 "communicate between processes on the same machine efficiently.  "
22819 "Traditionally, UNIX domain sockets can be either unnamed, or bound to a "
22820 "filesystem pathname (marked as being of type socket).  Linux also supports "
22821 "an abstract namespace which is independent of the filesystem."
22822 msgstr ""
22823 "B<AF_UNIX> (B<AF_LOCAL> とも言われる) ソケットファミリーは、同じマシン上で\n"
22824 "プロセス同士が 効率的に通信するために用いられる。伝統的に、UNIX ドメイン\n"
22825 "ソケットは、名前なしにもできるし、 (ソケット型であると印のついた) ファイル\n"
22826 "システムのパス名に 結び付けることもできる。さらに Linux では、ファイル\n"
22827 "システムに依存しない抽象名前空間 (abstract namespace) もサポートしている。"
22828
22829 #. type: Plain text
22830 #: build/C/man7/unix.7:54
22831 msgid ""
22832 "Valid socket types in the UNIX domain are: B<SOCK_STREAM>, for a stream-"
22833 "oriented socket; B<SOCK_DGRAM>, for a datagram-oriented socket that "
22834 "preserves message boundaries (as on most UNIX implementations, UNIX domain "
22835 "datagram sockets are always reliable and don't reorder datagrams); and "
22836 "(since Linux 2.6.4)  B<SOCK_SEQPACKET>, for a connection-oriented socket "
22837 "that preserves message boundaries and delivers messages in the order that "
22838 "they were sent."
22839 msgstr ""
22840 "UNIX ドメインに指定できるソケットタイプは以下の通りである。 B<SOCK_STREAM> "
22841 "は、 ストリーム指向のソケットで有効である。 B<SOCK_DGRAM> は、 メッセージ境界"
22842 "を保存するデータグラム指向のソケットで有効である (ほとんどの UNIX の実装で"
22843 "は、 UNIX ドメインデータグラムソケットは常に信頼でき、 データグラムの並び替え"
22844 "は行わない)。 B<SOCK_SEQPACKET> は、 メッセージ境界を保存し送信された順序で"
22845 "メッセージを届ける接続指向ソケットで有効である (Linux 2.6.4 以降で利用でき"
22846 "る)。"
22847
22848 #. type: Plain text
22849 #: build/C/man7/unix.7:57
22850 msgid ""
22851 "UNIX domain sockets support passing file descriptors or process credentials "
22852 "to other processes using ancillary data."
22853 msgstr ""
22854 "UNIX ドメインソケットでは、補助データを使って ファイルディスクリプターや\n"
22855 "プロセスの信任状 (credential) を 送受信することもできる。"
22856
22857 #. type: Plain text
22858 #: build/C/man7/unix.7:59
22859 msgid "A UNIX domain socket address is represented in the following structure:"
22860 msgstr "UNIX ドメインソケットのアドレスは以下の構造体で表現される。"
22861
22862 #. type: Plain text
22863 #: build/C/man7/unix.7:63
22864 #, no-wrap
22865 msgid "#define UNIX_PATH_MAX    108\n"
22866 msgstr "#define UNIX_PATH_MAX    108\n"
22867
22868 #. type: Plain text
22869 #: build/C/man7/unix.7:68
22870 #, no-wrap
22871 msgid ""
22872 "struct sockaddr_un {\n"
22873 "    sa_family_t sun_family;               /* AF_UNIX */\n"
22874 "    char        sun_path[UNIX_PATH_MAX];  /* pathname */\n"
22875 "};\n"
22876 msgstr ""
22877 "struct sockaddr_un {\n"
22878 "    sa_family_t sun_family;               /* AF_UNIX */\n"
22879 "    char        sun_path[UNIX_PATH_MAX];  /* pathname */\n"
22880 "};\n"
22881
22882 #. type: Plain text
22883 #: build/C/man7/unix.7:75
22884 msgid "The I<sun_family> field always contains B<AF_UNIX>."
22885 msgstr "I<sun_family> フィールドには必ず B<AF_UNIX> が入っている。"
22886
22887 #. type: Plain text
22888 #: build/C/man7/unix.7:91
22889 msgid ""
22890 "Various systems calls (for example, B<bind>(2), B<connect>(2), and "
22891 "B<sendto>(2))  take a I<sockaddr_un> argument as input.  Some other system "
22892 "calls (for example, B<getsockname>(2), B<getpeername>(2), B<recvfrom>(2), "
22893 "and B<accept>(2))  return an argument of this type."
22894 msgstr ""
22895 "様々なシステムコール (例えば B<bind>(2), B<connect>(2), B<sendto>(2)) は入力"
22896 "として I<sockaddr_un> 引き数を取る。 他のいくつかのシステムコール (例えば "
22897 "B<getsockname>(2), B<getpeername>(2), B<recvfrom>(2), B<accept>(2)) はこの型"
22898 "の引き数を返す。"
22899
22900 #. type: Plain text
22901 #: build/C/man7/unix.7:95
22902 msgid ""
22903 "Three types of address are distinguished in the I<sockaddr_un> structure:"
22904 msgstr "I<sockaddr_un> 構造体では 3 種類のアドレスが区別される。"
22905
22906 #. type: Plain text
22907 #: build/C/man7/unix.7:103
22908 msgid ""
22909 "I<pathname>: a UNIX domain socket can be bound to a null-terminated "
22910 "filesystem pathname using B<bind>(2).  When the address of a pathname socket "
22911 "is returned (by one of the system calls noted above), its length is"
22912 msgstr ""
22913 "I<pathname (パス名)>: B<bind>(2) を使って、UNIX ドメインソケットを、 ヌル終端"
22914 "されたファイルシステム上のパス名に結び付けることができる。 (上述のいずれかの"
22915 "システムコールにより) ソケットのアドレスが返される際、 その長さは"
22916
22917 #. type: Plain text
22918 #: build/C/man7/unix.7:105
22919 #, no-wrap
22920 msgid "    offsetof(struct sockaddr_un, sun_path) + strlen(sun_path) + 1\n"
22921 msgstr "    offsetof(struct sockaddr_un, sun_path) + strlen(sun_path) + 1\n"
22922
22923 #. type: Plain text
22924 #: build/C/man7/unix.7:118
22925 msgid ""
22926 "and I<sun_path> contains the null-terminated pathname.  (On Linux, the above "
22927 "B<offsetof>()  expression equates to the same value as "
22928 "I<sizeof(sa_family_t)>, but some other implementations include other fields "
22929 "before I<sun_path>, so the B<offsetof>()  expression more portably describes "
22930 "the size of the address structure.)"
22931 msgstr ""
22932 "であり、 I<sun_path> にはヌル終端されたパス名が格納される。 (Linux では、上記"
22933 "の B<offsetof>() 式は I<sizeof(sa_family_t)> の値と同じだが、 他の実装では "
22934 "I<sun_path> の前に他のフィールドが含まれる場合もある。 そのため、 "
22935 "B<offsetof>() 式を使う方がより移植性のある方法でアドレス構造体のサイズを知る"
22936 "ことができる。)"
22937
22938 #. type: Plain text
22939 #: build/C/man7/unix.7:120
22940 msgid "For further details of pathname sockets, see below."
22941 msgstr "パス名ソケットの詳細については、後で説明する。"
22942
22943 #.  There is quite some variation across implementations: FreeBSD
22944 #.  says the length is 16 bytes, HP-UX 11 says it's zero bytes.
22945 #. type: Plain text
22946 #: build/C/man7/unix.7:136
22947 msgid ""
22948 "I<unnamed>: A stream socket that has not been bound to a pathname using "
22949 "B<bind>(2)  has no name.  Likewise, the two sockets created by "
22950 "B<socketpair>(2)  are unnamed.  When the address of an unnamed socket is "
22951 "returned, its length is I<sizeof(sa_family_t)>, and I<sun_path> should not "
22952 "be inspected."
22953 msgstr ""
22954 "I<unnamed (名前なし)>: B<bind>(2)  を使ってパス名に結び付けることができないス"
22955 "トリーム型のソケットは 名前を持たない。同様に、 B<socketpair>(2)  で作成され"
22956 "る 2 つのソケットも名前を持たない。 名前なしのソケットのアドレスを返す際に"
22957 "は、 その長さは I<sizeof(sa_family_t)> であり、 I<sun_path> は検査すべきでは"
22958 "ない。"
22959
22960 #. type: Plain text
22961 #: build/C/man7/unix.7:159
22962 msgid ""
22963 "I<abstract>: an abstract socket address is distinguished (from a pathname "
22964 "socket)  by the fact that I<sun_path[0]> is a null byte (\\(aq\\e0\\(aq).  "
22965 "The socket's address in this namespace is given by the additional bytes in "
22966 "I<sun_path> that are covered by the specified length of the address "
22967 "structure.  (Null bytes in the name have no special significance.)  The name "
22968 "has no connection with filesystem pathnames.  When the address of an "
22969 "abstract socket is returned, the returned I<addrlen> is greater than "
22970 "I<sizeof(sa_family_t)> (i.e., greater than 2), and the name of the socket is "
22971 "contained in the first I<(addrlen - sizeof(sa_family_t))> bytes of "
22972 "I<sun_path>.  The abstract socket namespace is a nonportable Linux extension."
22973 msgstr ""
22974 "I<abstract (抽象)>: 抽象ソケットアドレスは、 I<sun_path[0]> がヌルバイト "
22975 "(\\(aq\\e0\\(aq) であることから (パス名ソケットから) 区別できる。 この名前空"
22976 "間におけるソケットのアドレスは、 I<sun_path> の残りのバイトの、 アドレス構造"
22977 "体の指定された長さの範囲で表される (名前中のヌルバイトには特別な意味はな"
22978 "い)。 この名前はファイルシステムのパス名とは何の関係もない。 抽象ソケットのア"
22979 "ドレスを返される際には、 返される I<addrlen> は I<sizeof(sa_family_t)> より大"
22980 "きく (つまり 2 より大きく)、 ソケットの名前は I<sun_path> の最初の "
22981 "I<(addrlen - sizeof(sa_family_t))> バイトに格納される。 ソケットの抽象名前空"
22982 "間は Linux による拡張であり、移植性はない。"
22983
22984 #. type: SS
22985 #: build/C/man7/unix.7:159
22986 #, no-wrap
22987 msgid "Pathname sockets"
22988 msgstr "パス名ソケット"
22989
22990 #. type: Plain text
22991 #: build/C/man7/unix.7:162
22992 msgid ""
22993 "When binding a socket to a pathname, a few rules should be observed for "
22994 "maximum portability and ease of coding:"
22995 msgstr ""
22996 "ソケットにパス名を結びつける際に、 最大限の移植性を持たせ、コーディングを簡単"
22997 "にするためのルールがいくつかある。"
22998
22999 #. type: Plain text
23000 #: build/C/man7/unix.7:166
23001 msgid "The pathname in I<sun_path> should be null-terminated."
23002 msgstr "I<sun_path> のパス名はヌル終端すべきである。"
23003
23004 #. type: Plain text
23005 #: build/C/man7/unix.7:170
23006 msgid ""
23007 "The length of the pathname, including the terminating null byte, should not "
23008 "exceed the size of I<sun_path>."
23009 msgstr ""
23010 "終端のヌルバイトを含めたパス名の長さは I<sun_path> の大きさを超えないようにす"
23011 "べきである。"
23012
23013 #. type: Plain text
23014 #: build/C/man7/unix.7:176
23015 msgid ""
23016 "The I<addrlen> argument that describes the enclosing I<sockaddr_un> "
23017 "structure should have a value of at least:"
23018 msgstr ""
23019 "I<sockaddr_un> 構造体の終わりを示す I<addrlen> 引き数は最低でも以下の値を持つ"
23020 "べきである。"
23021
23022 #. type: Plain text
23023 #: build/C/man7/unix.7:179
23024 #, no-wrap
23025 msgid "    offsetof(struct sockaddr_un, sun_path)+strlen(addr.sun_path)+1\n"
23026 msgstr "    offsetof(struct sockaddr_un, sun_path)+strlen(addr.sun_path)+1\n"
23027
23028 #. type: Plain text
23029 #: build/C/man7/unix.7:185
23030 msgid ""
23031 "or, more simply, I<addrlen> can be specified as I<sizeof(struct "
23032 "sockaddr_un)>."
23033 msgstr ""
23034 "もしくは、もっと簡単には、 I<addrlen> に I<sizeof(struct sockaddr_un)> を指定"
23035 "することもできる。"
23036
23037 #.  Linux does this, including for the case where the supplied path
23038 #.  is 108 bytes
23039 #. type: Plain text
23040 #: build/C/man7/unix.7:193
23041 msgid ""
23042 "There is some variation in how implementations handle UNIX domain socket "
23043 "addresses that do not follow the above rules.  For example, some (but not "
23044 "all) implementations append a null terminator if none is present in the "
23045 "supplied I<sun_path>."
23046 msgstr ""
23047 "UNIX ドメインソケットアドレスの扱いが上記のルールに従っていない実装もいくつか"
23048 "ある。 (全部ではないが) いくつかの実装では、 I<sun_path> に文字列終端の NULL "
23049 "がなかった場合に終端の NULL が追加される。"
23050
23051 #.  HP-UX
23052 #.  Modern BSDs generally have 104, Tru64 and AIX have 104,
23053 #.  Solaris and Irix have 108
23054 #. type: Plain text
23055 #: build/C/man7/unix.7:202
23056 msgid ""
23057 "When coding portable applications, keep in mind that some implementations "
23058 "have I<sun_path> as short as 92 bytes."
23059 msgstr ""
23060 "移植性があるアプリケーションを作成する際には、 いくつかの実装では "
23061 "I<sun_path> は 92 バイトしかないという点にも留意しておくとよい。"
23062
23063 #. type: Plain text
23064 #: build/C/man7/unix.7:220
23065 msgid ""
23066 "Various system calls (B<accept>(2), B<recvfrom>(2), B<getsockname>(2), "
23067 "B<getpeername>(2))  return socket address structures.  When applied to UNIX "
23068 "domain sockets, the value-result I<addrlen> argument supplied to the call "
23069 "should be initialized as above.  Upon return, the argument is set to "
23070 "indicate the I<actual> size of the address structure.  The caller should "
23071 "check the value returned in this argument: if the output value exceeds the "
23072 "input value, then there is no guarantee that a null terminator is present in "
23073 "I<sun_path>.  (See BUGS.)"
23074 msgstr ""
23075 "様々なシステムコール (B<accept>(2), B<recvfrom>(2), B<getsockname>(2), "
23076 "B<getpeername>(2)) がソケットアドレス構造体を返す。 これらのシステムコールが "
23077 "UNIX ドメインソケットに対して呼ばれた際には、 これらの呼び出しに渡す "
23078 "I<addrlen> 引き数は上記の説明のように初期化すべきである。 リターン時には、こ"
23079 "の引き数にはアドレス構造体の「実際の」サイズが設定される。 呼び出し側ではこの"
23080 "引き数で返された値を確認すべきである。 返された値が入力値よりも大きい場合、 "
23081 "I<sun_path> に終端の NULL バイトが存在する保証はない (「バグ」を参照)。"
23082
23083 #. type: Plain text
23084 #: build/C/man7/unix.7:233
23085 msgid ""
23086 "For historical reasons, these socket options are specified with a "
23087 "B<SOL_SOCKET> type even though they are B<AF_UNIX> specific.  They can be "
23088 "set with B<setsockopt>(2)  and read with B<getsockopt>(2)  by specifying "
23089 "B<SOL_SOCKET> as the socket family."
23090 msgstr ""
23091 "歴史的な理由により、これらのオプションは たとえ B<AF_UNIX> 固有のオプションで"
23092 "あっても B<SOL_SOCKET> 型で指定する。 ソケットファミリーとして B<SOL_SOCKET> "
23093 "を指定すると、 B<setsockopt>(2)  でオプションが設定でき、 B<getsockopt>(2)  "
23094 "で取得ができる。"
23095
23096 #. type: TP
23097 #: build/C/man7/unix.7:233
23098 #, no-wrap
23099 msgid "B<SO_PASSCRED>"
23100 msgstr "B<SO_PASSCRED>"
23101
23102 #. type: Plain text
23103 #: build/C/man7/unix.7:240
23104 msgid ""
23105 "Enables the receiving of the credentials of the sending process in an "
23106 "ancillary message.  When this option is set and the socket is not yet "
23107 "connected a unique name in the abstract namespace will be generated "
23108 "automatically.  Expects an integer boolean flag."
23109 msgstr ""
23110 "送信プロセスの補助メッセージで信任状を受信できるようにする。このオプション"
23111 "が\n"
23112 "セットされていて、まだソケットが接続されていないと、抽象名前空間に他と重な"
23113 "ら\n"
23114 "ない名前が自動的に生成される。ブール整数値のフラグを取る。"
23115
23116 #. type: SS
23117 #: build/C/man7/unix.7:240
23118 #, no-wrap
23119 msgid "Autobind feature"
23120 msgstr "自動バインド (autobind) 機能"
23121
23122 #.  i.e., sizeof(short)
23123 #. type: Plain text
23124 #: build/C/man7/unix.7:260
23125 msgid ""
23126 "If a B<bind>(2)  call specifies I<addrlen> as I<sizeof(sa_family_t)>, or the "
23127 "B<SO_PASSCRED> socket option was specified for a socket that was not "
23128 "explicitly bound to an address, then the socket is autobound to an abstract "
23129 "address.  The address consists of a null byte followed by 5 bytes in the "
23130 "character set I<[0-9a-f]>.  Thus, there is a limit of 2^20 autobind "
23131 "addresses.  (From Linux 2.1.15, when the autobind feature was added, 8 bytes "
23132 "were used, and the limit was thus 2^32 autobind addresses.  The change to 5 "
23133 "bytes came in Linux 2.3.15.)"
23134 msgstr ""
23135 "B<bind>(2) 呼び出しで I<sizeof(sa_family_t)> として I<addrlen> を指定する"
23136 "か、\n"
23137 "アドレスに明示的にバインドされていないソケットに対して\n"
23138 "B<SO_PASSCRED> ソケットオプションが指定されていた場合、\n"
23139 "そのソケットは抽象アドレスに自動的にバインドされる。\n"
23140 "このアドレスは、1 個のヌルバイトの後に、文字集合 I<[0-9a-f]> のバイトが\n"
23141 "5 個続く形式である。したがって、自動的にバインドされるアドレス数には\n"
23142 "2^20 個という上限が存在する。\n"
23143 "(Linux 2.1.15 以降で、自動バインド機能が追加されたときには、\n"
23144 "8 バイトが使われており、自動バインドアドレス数の上限は 2^32 であった。\n"
23145 "Linux 2.3.15 で 5 バイトに変更された。)"
23146
23147 #. type: Plain text
23148 #: build/C/man7/unix.7:263
23149 msgid ""
23150 "The following paragraphs describe domain-specific details and unsupported "
23151 "features of the sockets API for UNIX domain sockets on Linux."
23152 msgstr ""
23153 "この節では、Linux の UNIX ドメインソケットでの、ドメイン固有の詳細仕様と\n"
23154 "ソケット API でサポートされていない機能について説明する。"
23155
23156 #. type: Plain text
23157 #: build/C/man7/unix.7:271
23158 msgid ""
23159 "UNIX domain sockets do not support the transmission of out-of-band data (the "
23160 "B<MSG_OOB> flag for B<send>(2)  and B<recv>(2))."
23161 msgstr ""
23162 "UNIX ドメインソケットでは、帯域外データ (out-of-band data) の 送信\n"
23163 "(B<send>(2) と B<recv>(2) の B<MSG_OOB> フラグ) はサポートされていない。"
23164
23165 #. type: Plain text
23166 #: build/C/man7/unix.7:276
23167 msgid ""
23168 "The B<send>(2)  B<MSG_MORE> flag is not supported by UNIX domain sockets."
23169 msgstr ""
23170 "B<send>(2) B<MSG_MORE> フラグは UNIX ドメインソケットではサポートされていな"
23171 "い。"
23172
23173 #. type: Plain text
23174 #: build/C/man7/unix.7:284
23175 msgid ""
23176 "The use of B<MSG_TRUNC> in the I<flags> argument of B<recv>(2)  is not "
23177 "supported by UNIX domain sockets."
23178 msgstr ""
23179 "B<recv>(2) の I<flags> 引き数での B<MSG_TRUNC> の使用は UNIX ドメイン\n"
23180 "ソケットではサポートされていない。"
23181
23182 #. type: Plain text
23183 #: build/C/man7/unix.7:296
23184 msgid ""
23185 "The B<SO_SNDBUF> socket option does have an effect for UNIX domain sockets, "
23186 "but the B<SO_RCVBUF> option does not.  For datagram sockets, the "
23187 "B<SO_SNDBUF> value imposes an upper limit on the size of outgoing "
23188 "datagrams.  This limit is calculated as the doubled (see B<socket>(7))  "
23189 "option value less 32 bytes used for overhead."
23190 msgstr ""
23191 "B<SO_SNDBUF> ソケットオプションは UNIX ドメインソケットで効果を持つが、\n"
23192 "B<SO_RCVBUF> は効果がない。 データグラムソケットでは、 B<SO_SNDBUF> の値が\n"
23193 "出力データグラムの上限サイズとなる。 実際の上限値は、 B<SO_SNDBUF> オプショ"
23194 "ン\n"
23195 "として設定された値の 2倍 (B<socket>(7) 参照) からオーバヘッドとして使用され"
23196 "る\n"
23197 "32 バイトを引いた値となる。"
23198
23199 #. type: SS
23200 #: build/C/man7/unix.7:296
23201 #, no-wrap
23202 msgid "Ancillary messages"
23203 msgstr "補助メッセージ"
23204
23205 #. type: Plain text
23206 #: build/C/man7/unix.7:318
23207 msgid ""
23208 "Ancillary data is sent and received using B<sendmsg>(2)  and B<recvmsg>(2).  "
23209 "For historical reasons the ancillary message types listed below are "
23210 "specified with a B<SOL_SOCKET> type even though they are B<AF_UNIX> "
23211 "specific.  To send them set the I<cmsg_level> field of the struct I<cmsghdr> "
23212 "to B<SOL_SOCKET> and the I<cmsg_type> field to the type.  For more "
23213 "information see B<cmsg>(3)."
23214 msgstr ""
23215 "補助データを送受するには、 B<sendmsg>(2)  や B<recvmsg>(2)  を使用する。 歴史"
23216 "的な理由により、以下に示す補助メッセージの型は たとえ B<AF_UNIX> 固有のもので"
23217 "あっても B<SOL_SOCKET> 型で指定する。 これらを送るには、構造体 I<cmsghdr> の "
23218 "I<cmsg_level> フィールドに B<SOL_SOCKET> をセットし、 I<cmsg_type> フィールド"
23219 "にタイプをセットする。 詳細は B<cmsg>(3)  を見よ。"
23220
23221 #. type: TP
23222 #: build/C/man7/unix.7:318
23223 #, no-wrap
23224 msgid "B<SCM_RIGHTS>"
23225 msgstr "B<SCM_RIGHTS>"
23226
23227 #. type: Plain text
23228 #: build/C/man7/unix.7:324
23229 msgid ""
23230 "Send or receive a set of open file descriptors from another process.  The "
23231 "data portion contains an integer array of the file descriptors.  The passed "
23232 "file descriptors behave as though they have been created with B<dup>(2)."
23233 msgstr ""
23234 "他のプロセスでオープンされたファイルディスクリプターのセットを送受信する。 "
23235 "データ部分にファイルディスクリプターの整数配列が入っている。 渡されたファイル"
23236 "ディスクリプターは、あたかも B<dup>(2)  で生成されたかのように振る舞う。"
23237
23238 #. type: TP
23239 #: build/C/man7/unix.7:324
23240 #, no-wrap
23241 msgid "B<SCM_CREDENTIALS>"
23242 msgstr "B<SCM_CREDENTIALS>"
23243
23244 #. type: Plain text
23245 #: build/C/man7/unix.7:334
23246 msgid ""
23247 "Send or receive UNIX credentials.  This can be used for authentication.  The "
23248 "credentials are passed as a I<struct ucred> ancillary message.  Thus "
23249 "structure is defined in I<E<lt>sys/socket.hE<gt>> as follows:"
23250 msgstr ""
23251 "UNIX 信任状を送受信する。これは認証に用いることができる。\n"
23252 "信任状は I<struct ucred> の補助メッセージとして渡される。\n"
23253 "この構造体は I<E<lt>sys/socket.hE<gt>> で以下のように定義されている。"
23254
23255 #. type: Plain text
23256 #: build/C/man7/unix.7:342
23257 #, no-wrap
23258 msgid ""
23259 "struct ucred {\n"
23260 "    pid_t pid;    /* process ID of the sending process */\n"
23261 "    uid_t uid;    /* user ID of the sending process */\n"
23262 "    gid_t gid;    /* group ID of the sending process */\n"
23263 "};\n"
23264 msgstr ""
23265 "struct ucred {\n"
23266 "    pid_t pid;    /* process ID of the sending process */\n"
23267 "    uid_t uid;    /* user ID of the sending process */\n"
23268 "    gid_t gid;    /* group ID of the sending process */\n"
23269 "};\n"
23270
23271 #. type: Plain text
23272 #: build/C/man7/unix.7:351
23273 msgid ""
23274 "Since glibc 2.8, the B<_GNU_SOURCE> feature test macro must be defined "
23275 "(before including I<any> header files) in order to obtain the definition of "
23276 "this structure."
23277 msgstr ""
23278 "glibc 2.8 以降では、この構造体の定義を得るためには\n"
23279 "(I<どの>ヘッダーファイルをインクルードするよりも前に)\n"
23280 "機能検査マクロ B<_GNU_SOURCE> を定義しなければならない。"
23281
23282 #. type: Plain text
23283 #: build/C/man7/unix.7:367
23284 msgid ""
23285 "The credentials which the sender specifies are checked by the kernel.  A "
23286 "process with effective user ID 0 is allowed to specify values that do not "
23287 "match its own.  The sender must specify its own process ID (unless it has "
23288 "the capability B<CAP_SYS_ADMIN>), its user ID, effective user ID, or saved "
23289 "set-user-ID (unless it has B<CAP_SETUID>), and its group ID, effective group "
23290 "ID, or saved set-group-ID (unless it has B<CAP_SETGID>).  To receive a "
23291 "I<struct ucred> message the B<SO_PASSCRED> option must be enabled on the "
23292 "socket."
23293 msgstr ""
23294 "送信側が指定した信任状は、カーネルがチェックする。 実効ユーザー ID が 0 のプ"
23295 "ロセスには、 自分自身以外の値を指定する事が許される。 送信側は以下の 3 つを指"
23296 "定しなければならない。 1) 自分自身のプロセス ID (B<CAP_SYS_ADMIN> 権限を持っ"
23297 "ていない場合)、 2) 自分自身のユーザー ID あるいは実効ユーザー ID か保存 set-"
23298 "user-ID (B<CAP_SETUID> 権限を持っていない場合)、 3) 自分自身のグループ ID あ"
23299 "るいは実行グループ ID か保存 set-group-ID (B<CAP_SETGID> を持っていない場"
23300 "合)。 I<struct ucred> メッセージを受信するためには、ソケットに対し "
23301 "B<SO_PASSCRED> オプションを有効にしなくてはならない。"
23302
23303 #. type: Plain text
23304 #: build/C/man7/unix.7:378
23305 #, no-wrap
23306 msgid ""
23307 "B<int>I< value>B<;>\n"
23308 "I<error>B< = ioctl(>I<unix_socket>B<, >I<ioctl_type>B<, &>I<value>B<);>\n"
23309 msgstr ""
23310 "B<int>I< value>B<;>\n"
23311 "I<error>B< = ioctl(>I<unix_socket>B<, >I<ioctl_type>B<, &>I<value>B<);>\n"
23312
23313 #. type: Plain text
23314 #: build/C/man7/unix.7:383
23315 msgid "I<ioctl_type> can be:"
23316 msgstr "I<ioctl_type> には以下を指定できる:"
23317
23318 #. type: Plain text
23319 #: build/C/man7/unix.7:410
23320 msgid ""
23321 "The specified local address is already in use or the filesystem socket "
23322 "object already exists."
23323 msgstr ""
23324 "指定したローカルアドレスが既に使用されているか、ファイルシステムの\n"
23325 "ソケットオブジェクトが既に存在している。"
23326
23327 #. type: Plain text
23328 #: build/C/man7/unix.7:416
23329 msgid ""
23330 "The remote address specified by B<connect>(2)  was not a listening socket.  "
23331 "This error can also occur if the target pathname is not a socket."
23332 msgstr ""
23333 "B<connect>(2) により指定されたリモートアドレスが接続待ちソケットではなかっ"
23334 "た。 このエラーはターゲットのパス名がソケットでなかった場合にも発生する。"
23335
23336 #. type: TP
23337 #: build/C/man7/unix.7:416
23338 #, no-wrap
23339 msgid "B<ECONNRESET>"
23340 msgstr "B<ECONNRESET>"
23341
23342 #. type: Plain text
23343 #: build/C/man7/unix.7:419
23344 msgid "Remote socket was unexpectedly closed."
23345 msgstr "リモートソケットが予期しないかたちでクローズされた。"
23346
23347 #. type: Plain text
23348 #: build/C/man7/unix.7:422
23349 msgid "User memory address was not valid."
23350 msgstr "ユーザーメモリーアドレスが不正。"
23351
23352 #. type: Plain text
23353 #: build/C/man7/unix.7:431
23354 msgid ""
23355 "Invalid argument passed.  A common cause is that the value B<AF_UNIX> was "
23356 "not specified in the I<sun_type> field of passed addresses, or the socket "
23357 "was in an invalid state for the applied operation."
23358 msgstr ""
23359 "渡した引数が不正。よくある原因としては、渡したアドレスの I<sun_type> フィー"
23360 "ル\n"
23361 "ドに B<AF_UNIX> が指定されていなかった、行おうとした操作に対してソケットが"
23362 "有\n"
23363 "効な状態ではなかった、など。"
23364
23365 #. type: Plain text
23366 #: build/C/man7/unix.7:436
23367 msgid ""
23368 "B<connect>(2)  called on an already connected socket or a target address was "
23369 "specified on a connected socket."
23370 msgstr ""
23371 "既に接続されているソケットに対して B<connect>(2)  が呼ばれた。または、指定し"
23372 "たターゲットアドレスが 既に接続済みのソケットだった。"
23373
23374 #. type: Plain text
23375 #: build/C/man7/unix.7:441
23376 msgid ""
23377 "The pathname in the remote address specified to B<connect>(2)  did not exist."
23378 msgstr "B<connect>(2) に指定されたリモートアドレスのパス名が存在しなかった。"
23379
23380 #. type: TP
23381 #: build/C/man7/unix.7:441
23382 #, no-wrap
23383 msgid "B<ENOMEM>"
23384 msgstr "B<ENOMEM>"
23385
23386 #. type: Plain text
23387 #: build/C/man7/unix.7:447
23388 msgid ""
23389 "Socket operation needs a target address, but the socket is not connected."
23390 msgstr ""
23391 "ソケット操作にターゲットアドレスが必要だが、 このソケットは接続されていない。"
23392
23393 #. type: Plain text
23394 #: build/C/man7/unix.7:451
23395 msgid ""
23396 "Stream operation called on non-stream oriented socket or tried to use the "
23397 "out-of-band data option."
23398 msgstr ""
23399 "ストリーム指向でないソケットに対してストリーム操作が呼び出された。 または帯域"
23400 "外データオプションを用いようとした。"
23401
23402 #. type: Plain text
23403 #: build/C/man7/unix.7:455
23404 msgid "The sender passed invalid credentials in the I<struct ucred>."
23405 msgstr "送信者が I<struct ucred> に不正な信任状を渡した。"
23406
23407 #. type: Plain text
23408 #: build/C/man7/unix.7:467
23409 msgid ""
23410 "Remote socket was closed on a stream socket.  If enabled, a B<SIGPIPE> is "
23411 "sent as well.  This can be avoided by passing the B<MSG_NOSIGNAL> flag to "
23412 "B<sendmsg>(2)  or B<recvmsg>(2)."
23413 msgstr ""
23414 "リモートソケットがストリームソケット上でクローズされた。 可能な場合は "
23415 "B<SIGPIPE> も同時に送られる。これを避けるには B<MSG_NOSIGNAL> フラグを "
23416 "B<sendmsg>(2)  や B<recvmsg>(2)  に渡す。"
23417
23418 #. type: TP
23419 #: build/C/man7/unix.7:467
23420 #, no-wrap
23421 msgid "B<EPROTONOSUPPORT>"
23422 msgstr "B<EPROTONOSUPPORT>"
23423
23424 #. type: Plain text
23425 #: build/C/man7/unix.7:471
23426 msgid "Passed protocol is not B<AF_UNIX>."
23427 msgstr "渡されたプロトコルが B<AF_UNIX> でない。"
23428
23429 #. type: TP
23430 #: build/C/man7/unix.7:471
23431 #, no-wrap
23432 msgid "B<EPROTOTYPE>"
23433 msgstr "B<EPROTOTYPE>"
23434
23435 #. type: Plain text
23436 #: build/C/man7/unix.7:477
23437 msgid ""
23438 "Remote socket does not match the local socket type (B<SOCK_DGRAM> versus "
23439 "B<SOCK_STREAM>)"
23440 msgstr ""
23441 "リモートソケットとローカルソケットのタイプが一致していなかった "
23442 "(B<SOCK_DGRAM> と B<SOCK_STREAM>)。"
23443
23444 #. type: Plain text
23445 #: build/C/man7/unix.7:480
23446 msgid "Unknown socket type."
23447 msgstr "未知のソケットタイプ。"
23448
23449 #. type: Plain text
23450 #: build/C/man7/unix.7:484
23451 msgid ""
23452 "Other errors can be generated by the generic socket layer or by the "
23453 "filesystem while generating a filesystem socket object.  See the appropriate "
23454 "manual pages for more information."
23455 msgstr ""
23456 "他にも汎用のソケット層でエラーが起こったり、 ファイルシステム上にソケットオブ"
23457 "ジェクトを作ろうとした場合に ファイルシステムのエラーが起こることがある。 そ"
23458 "れぞれの詳細は適切な man ページを参照すること。"
23459
23460 #. type: Plain text
23461 #: build/C/man7/unix.7:490
23462 msgid ""
23463 "B<SCM_CREDENTIALS> and the abstract namespace were introduced with Linux 2.2 "
23464 "and should not be used in portable programs.  (Some BSD-derived systems also "
23465 "support credential passing, but the implementation details differ.)"
23466 msgstr ""
23467 "B<SCM_CREDENTIALS> と抽象名前空間は、Linux 2.2 で導入された。 移植性が必要な"
23468 "プログラムでは使うべきではない。 (BSD 由来のシステムの中にも信任状の送受信を"
23469 "サポートしているものがあるが、 その実装の詳細はシステムによって異なる)"
23470
23471 #. type: Plain text
23472 #: build/C/man7/unix.7:501
23473 msgid ""
23474 "In the Linux implementation, sockets which are visible in the filesystem "
23475 "honor the permissions of the directory they are in.  Their owner, group, and "
23476 "permissions can be changed.  Creation of a new socket will fail if the "
23477 "process does not have write and search (execute) permission on the directory "
23478 "the socket is created in.  Connecting to the socket object requires read/"
23479 "write permission.  This behavior differs from many BSD-derived systems which "
23480 "ignore permissions for UNIX domain sockets.  Portable programs should not "
23481 "rely on this feature for security."
23482 msgstr ""
23483 "Linux の実装では、 ファイルシステム上から見えるソケットは、 それらが置かれて"
23484 "いるディレクトリのパーミッションに従う。 ソケットの所有者、 グループ、 パー"
23485 "ミッションは変更できる。 新しいソケットを作るとき、 作ろうとするディレクトリ"
23486 "に対して プロセスが書き込みと検索 (実行) 権限を持っていなければ、 作成に失敗"
23487 "する。 ソケットオブジェクトに接続するには、 read/write 権限が必要である。 こ"
23488 "の動作は、 多くの BSD 由来のシステムとは異なっている (BSD では UNIX ドメイン"
23489 "ソケットに対してはパーミッションを無視する)。 移植性の必要なプログラムでは、"
23490 "セキュリティをこの仕様に依存してはならない。"
23491
23492 #. type: Plain text
23493 #: build/C/man7/unix.7:509
23494 msgid ""
23495 "Binding to a socket with a filename creates a socket in the filesystem that "
23496 "must be deleted by the caller when it is no longer needed (using "
23497 "B<unlink>(2)).  The usual UNIX close-behind semantics apply; the socket can "
23498 "be unlinked at any time and will be finally removed from the filesystem when "
23499 "the last reference to it is closed."
23500 msgstr ""
23501 "ファイル名を指定してソケットにバインドすると、ファイルシステムにソケットが\n"
23502 "生成される。これは必要なくなったときに呼びだしたユーザーが削除しなければ\n"
23503 "ならない (B<unlink>(2) を用いる)。 UNIX で通常使われる「背後で閉じる方式」\n"
23504 "が適用される。ソケットはいつでも unlink することができ、最後の参照が\n"
23505 "クローズされたときにファイルシステムから削除される。"
23506
23507 #. type: Plain text
23508 #: build/C/man7/unix.7:518
23509 msgid ""
23510 "To pass file descriptors or credentials over a B<SOCK_STREAM>, you need to "
23511 "send or receive at least one byte of nonancillary data in the same "
23512 "B<sendmsg>(2)  or B<recvmsg>(2)  call."
23513 msgstr ""
23514 "B<SOCK_STREAM> 上でファイルディスクリプターや信任状を渡すためには、同じ "
23515 "B<sendmsg>(2)  や B<recvmsg>(2)  コールで補助データ以外のデータを少なくとも "
23516 "1 バイト送信/受信する必要がある。"
23517
23518 #. type: Plain text
23519 #: build/C/man7/unix.7:521
23520 msgid ""
23521 "UNIX domain stream sockets do not support the notion of out-of-band data."
23522 msgstr ""
23523 "UNIX ドメインのストリームソケットでは、 帯域外データの概念はサポートされな"
23524 "い。"
23525
23526 #.  The behavior on Solaris is quite similar.
23527 #. type: Plain text
23528 #: build/C/man7/unix.7:546
23529 msgid ""
23530 "When binding a socket to an address, Linux is one of the implementations "
23531 "that appends a null terminator if none is supplied in I<sun_path>.  In most "
23532 "cases this is unproblematic: when the socket address is retrieved, it will "
23533 "be one byte longer than that supplied when the socket was bound.  However, "
23534 "there is one case where confusing behavior can result: if 108 non-null bytes "
23535 "are supplied when a socket is bound, then the addition of the null "
23536 "terminator takes the length of the pathname beyond I<sizeof(sun_path)>.  "
23537 "Consequently, when retrieving the socket address (for example, via "
23538 "B<accept>(2)), if the input I<addrlen> argument for the retrieving call is "
23539 "specified as I<sizeof(struct sockaddr_un)>, then the returned address "
23540 "structure I<won't> have a null terminator in I<sun_path>."
23541 msgstr ""
23542 "ソケットをアドレスに結びつける際、 Linux は終端の NULL が I<sun_path> にな"
23543 "かった場合に追加する実装の一つである。 ほとんどの場合、 これは問題にならな"
23544 "い。 ソケットアドレスが取得された際、ソケットをバインドしたときに指定したもの"
23545 "より 1 バイト長くなるだけである。 しかしながら、紛らわしい動作が起こる場合が"
23546 "一つある。 ソケットをバインドした際に 108 個の NULL でないバイトを指定した場"
23547 "合、 終端の NULL が追加されるとパス名の長さが I<sizeof(sun_path)> を超えてし"
23548 "まう。 結果として、(例えば B<accept>(2) で) ソケットアドレスを取得した際に、 "
23549 "値を取得する呼び出しの入力の I<address> 引き数に I<sizeof(struct "
23550 "sockaddr_un)> を指定したとすると、 返されるアドレス構造体は I<sun_path> に終"
23551 "端の NULL を「含まない」ことになる。"
23552
23553 #.  i.e., traditional BSD
23554 #. type: Plain text
23555 #: build/C/man7/unix.7:556
23556 msgid ""
23557 "In addition, some implementations don't require a null terminator when "
23558 "binding a socket (the I<addrlen> argument is used to determine the length of "
23559 "I<sun_path>)  and when the socket address is retrieved on these "
23560 "implementations, there is no null terminator in I<sun_path>."
23561 msgstr ""
23562 "さらに、 いくつかの実装では、ソケットをバインドする際に終端の NULL が必要では"
23563 "なく (I<addrlen> 引き数を使って I<sun_path> の長さが判定される)、 このような"
23564 "実装でソケットアドレスを取得する際には、 I<sun_path> に終端の NULL は存在しな"
23565 "い。"
23566
23567 #. type: Plain text
23568 #: build/C/man7/unix.7:561
23569 msgid ""
23570 "Applications that retrieve socket addresses can (portably) code to handle "
23571 "the possibility that there is no null terminator in I<sun_path> by "
23572 "respecting the fact that the number of valid bytes in the pathname is:"
23573 msgstr ""
23574 "ソケットアドレスを取得するアプリケーションでは、 I<sun_path> に終端の NULL が"
23575 "存在しないという移植性の問題を、 パス名の有効なバイト数が以下のようになると事"
23576 "実を考慮することで取り扱うことができる。"
23577
23578 #
23579 #.  The following patch to amend kernel behavior was rejected:
23580 #.  http://thread.gmane.org/gmane.linux.kernel.api/2437
23581 #.  Subject: [patch] Fix handling of overlength pathname in AF_UNIX sun_path
23582 #.  2012-04-17
23583 #.  And there was a related discussion in the Austin list:
23584 #.  http://thread.gmane.org/gmane.comp.standards.posix.austin.general/5735
23585 #.  Subject: Having a sun_path with no null terminator
23586 #.  2012-04-18
23587 #.  FIXME . Track http://austingroupbugs.net/view.php?id=561
23588 #. type: Plain text
23589 #: build/C/man7/unix.7:573
23590 #, no-wrap
23591 msgid "    strnlen(addr.sun_path, addrlen - offsetof(sockaddr_un, sun_path))\n"
23592 msgstr "    strnlen(addr.sun_path, addrlen - offsetof(sockaddr_un, sun_path))\n"
23593
23594 #. type: Plain text
23595 #: build/C/man7/unix.7:585
23596 msgid ""
23597 "Alternatively, an application can retrieve the socket address by allocating "
23598 "a buffer of size I<sizeof(struct sockaddr_un)+1> that is zeroed out before "
23599 "the retrieval.  The retrieving call can specify I<addrlen> as "
23600 "I<sizeof(struct sockaddr_un)>, and the extra zero byte ensures that there "
23601 "will be a null terminator for the string returned in I<sun_path>:"
23602 msgstr ""
23603 "他の方法としては、 アプリケーションがソケットアドレスを取得する際、 取得の呼"
23604 "び出しを行う前に、 大きさが I<sizeof(struct sockaddr_un)+1> のバッファーを割"
23605 "り当てることもできる。 取得の呼び出しでは I<addrlen> に I<sizeof(struct "
23606 "sockaddr_un)> を指定すると、 余分な一つの 0 バイトにより I<sun_path> で返され"
23607 "る文字列に終端の NULL が含まれることが保証される。"
23608
23609 #. type: Plain text
23610 #: build/C/man7/unix.7:589
23611 #, no-wrap
23612 msgid "void *addrp;\n"
23613 msgstr "void *addrp;\n"
23614
23615 #. type: Plain text
23616 #: build/C/man7/unix.7:595
23617 #, no-wrap
23618 msgid ""
23619 "addrlen = sizeof(struct sockaddr_un);\n"
23620 "addrp = malloc(addrlen + 1);\n"
23621 "if (addrp == NULL)\n"
23622 "    /* Handle error */ ;\n"
23623 "memset(addrp, 0, addrlen + 1);\n"
23624 msgstr ""
23625 "addrlen = sizeof(struct sockaddr_un);\n"
23626 "addrp = malloc(addrlen + 1);\n"
23627 "if (addrp == NULL)\n"
23628 "    /* Handle error */ ;\n"
23629 "memset(addrp, 0, addrlen + 1);\n"
23630
23631 #. type: Plain text
23632 #: build/C/man7/unix.7:598
23633 #, no-wrap
23634 msgid ""
23635 "if (getsockname(sfd, (struct sockaddr *) addrp, &addrlen)) == -1)\n"
23636 "    /* handle error */ ;\n"
23637 msgstr ""
23638 "if (getsockname(sfd, (struct sockaddr *) addrp, &addrlen)) == -1)\n"
23639 "    /* handle error */ ;\n"
23640
23641 #. type: Plain text
23642 #: build/C/man7/unix.7:600
23643 #, no-wrap
23644 msgid "printf(\"sun_path = %s\\en\", ((struct sockaddr_un *) addrp)-E<gt>sun_path);\n"
23645 msgstr "printf(\"sun_path = %s\\en\", ((struct sockaddr_un *) addrp)-E<gt>sun_path);\n"
23646
23647 #. type: Plain text
23648 #: build/C/man7/unix.7:608
23649 msgid ""
23650 "This sort of messiness can be avoided if it is guaranteed that the "
23651 "applications that I<create> pathname sockets follow the rules outlined above "
23652 "under I<Pathname sockets>."
23653 msgstr ""
23654 "アプリケーションが「パス名ソケット」の節で説明したルールにしたがってパス名を"
23655 "「作成」していれば、 このような分かりにくさは避けることができる。"
23656
23657 #. type: Plain text
23658 #: build/C/man7/unix.7:611
23659 msgid "See B<bind>(2)."
23660 msgstr "B<bind>(2)  参照。"
23661
23662 #. type: Plain text
23663 #: build/C/man7/unix.7:616
23664 msgid "For an example of the use of B<SCM_RIGHTS> see B<cmsg>(3)."
23665 msgstr "B<SCM_RIGHTS> の使用例については B<cmsg>(3) を参照。"
23666
23667 #. type: Plain text
23668 #: build/C/man7/unix.7:625
23669 msgid ""
23670 "B<recvmsg>(2), B<sendmsg>(2), B<socket>(2), B<socketpair>(2), B<cmsg>(3), "
23671 "B<capabilities>(7), B<credentials>(7), B<socket>(7)"
23672 msgstr ""
23673 "B<recvmsg>(2), B<sendmsg>(2), B<socket>(2), B<socketpair>(2), B<cmsg>(3), "
23674 "B<capabilities>(7), B<credentials>(7), B<socket>(7)"
23675
23676 #. type: TH
23677 #: build/C/man7/x25.7:12
23678 #, no-wrap
23679 msgid "X25"
23680 msgstr "X25"
23681
23682 #. type: Plain text
23683 #: build/C/man7/x25.7:15
23684 msgid "x25 - ITU-T X.25 / ISO-8208 protocol interface."
23685 msgstr "x25 - ITU-T X.25 / ISO-8208 プロトコルインターフェース"
23686
23687 #. type: Plain text
23688 #: build/C/man7/x25.7:19
23689 msgid "B<#include E<lt>linux/x25.hE<gt>>"
23690 msgstr "B<#include E<lt>linux/x25.hE<gt>>"
23691
23692 #. type: Plain text
23693 #: build/C/man7/x25.7:21
23694 msgid "B<x25_socket = socket(AF_X25, SOCK_SEQPACKET, 0);>"
23695 msgstr "B<x25_socket = socket(AF_X25, SOCK_SEQPACKET, 0);>"
23696
23697 #. type: Plain text
23698 #: build/C/man7/x25.7:30
23699 msgid ""
23700 "X25 sockets provide an interface to the X.25 packet layer protocol.  This "
23701 "allows applications to communicate over a public X.25 data network as "
23702 "standardized by International Telecommunication Union's recommendation X.25 "
23703 "(X.25 DTE-DCE mode).  X25 sockets can also be used for communication without "
23704 "an intermediate X.25 network (X.25 DTE-DTE mode) as described in ISO-8208."
23705 msgstr ""
23706 "X25 ソケットは X.25 パケット層プロトコルに対するインターフェースを提供する。 "
23707 "これにより、アプリケーションはパブリックな X.25 データネットワークで 通信する"
23708 "ことができるようになる。 X.25 は International Telecommunication Union's "
23709 "recommendation X.25 (X.25 DTE-DCE mode) で標準化されている。 X25 ソケットは、"
23710 "中間層のない X.25 ネットワーク (X.25 DTE-DTE mode)  での通信にも用いることが"
23711 "できる。 DTE-DTE モードは ISO-8208 に記述されている。"
23712
23713 #. type: Plain text
23714 #: build/C/man7/x25.7:47
23715 msgid ""
23716 "Message boundaries are preserved \\(em a B<read>(2)  from a socket will "
23717 "retrieve the same chunk of data as output with the corresponding "
23718 "B<write>(2)  to the peer socket.  When necessary, the kernel takes care of "
23719 "segmenting and reassembling long messages by means of the X.25 M-bit.  There "
23720 "is no hard-coded upper limit for the message size.  However, reassembling of "
23721 "a long message might fail if there is a temporary lack of system resources "
23722 "or when other constraints (such as socket memory or buffer size limits) "
23723 "become effective.  If that occurs, the X.25 connection will be reset."
23724 msgstr ""
23725 "メッセージ境界は保存される。ソケットからの B<read>(2)  は、反対側のソケットか"
23726 "らの対応する B<write>(2)  と同じ大きさのデータを受け取り、出力する。 必要があ"
23727 "る場合は、カーネルが長いメッセージの 分割 (segmenting) と再構成 "
23728 "(reassembling) を行う。 これには X.25 の M ビットが用いられる。 メッセージサ"
23729 "イズには、ハードコーディングされた上限はない。 しかし、一時的にシステムリソー"
23730 "スが足りなかったり、 他の制約 (ソケットメモリーバッファーのサイズ制限など) "
23731 "が 効いてしまうと、長いメッセージの再構成には失敗するかもしれない。 この場"
23732 "合、その X.25 接続はリセットされることになる。"
23733
23734 #. type: SS
23735 #: build/C/man7/x25.7:47
23736 #, no-wrap
23737 msgid "Socket addresses"
23738 msgstr "ソケットアドレス"
23739
23740 #. type: Plain text
23741 #: build/C/man7/x25.7:54
23742 msgid ""
23743 "The B<AF_X25> socket address family uses the I<struct sockaddr_x25> for "
23744 "representing network addresses as defined in ITU-T recommendation X.121."
23745 msgstr ""
23746 "B<AF_X25> ソケットアドレスファミリーは、ネットワークアドレスを表すために "
23747 "I<struct sockaddr_x25> を用いる。これは ITU-T recommendation X.121 で定義され"
23748 "ている。"
23749
23750 #. type: Plain text
23751 #: build/C/man7/x25.7:61
23752 #, no-wrap
23753 msgid ""
23754 "struct sockaddr_x25 {\n"
23755 "    sa_family_t sx25_family;    /* must be AF_X25 */\n"
23756 "    x25_address sx25_addr;      /* X.121 Address */\n"
23757 "};\n"
23758 msgstr ""
23759 "struct sockaddr_x25 {\n"
23760 "    sa_family_t sx25_family;    /* must be AF_X25 */\n"
23761 "    x25_address sx25_addr;      /* X.121 Address */\n"
23762 "};\n"
23763
23764 #. type: Plain text
23765 #: build/C/man7/x25.7:72
23766 msgid ""
23767 "I<sx25_addr> contains a char array I<x25_addr[]> to be interpreted as a null-"
23768 "terminated string.  I<sx25_addr.x25_addr[]> consists of up to 15 (not "
23769 "counting the terminating null byte) ASCII characters forming the X.121 "
23770 "address.  Only the decimal digit characters from \\(aq0\\(aq to \\(aq9\\(aq "
23771 "are allowed."
23772 msgstr ""
23773 "I<sx25_addr> には char 配列 I<x25_addr[]> を含まれる。これは 0 で終端する文字"
23774 "列として解釈される。 I<sx25_addr.x25_addr[]> は 15 個までの ASCII 文字を含む"
23775 "ことができ (終端のヌルバイトは含まない)、 これが X.121 アドレスをなす。 10 進"
23776 "の数文字、\\(aq0\\(aq から \\(aq9\\(aq までだけが許される。"
23777
23778 #. type: Plain text
23779 #: build/C/man7/x25.7:81
23780 msgid ""
23781 "The following X.25-specific socket options can be set by using "
23782 "B<setsockopt>(2)  and read with B<getsockopt>(2)  with the I<level> argument "
23783 "set to B<SOL_X25>."
23784 msgstr ""
23785 "以下の X.25 特有のソケットオプションは、 B<setsockopt>(2)  で設定でき、 "
23786 "B<getsockopt>(2)  で取得できる。このとき I<level> 引き数には B<SOL_X25> を指"
23787 "定する。"
23788
23789 #. type: TP
23790 #: build/C/man7/x25.7:81
23791 #, no-wrap
23792 msgid "B<X25_QBITINCL>"
23793 msgstr "B<X25_QBITINCL>"
23794
23795 #. type: Plain text
23796 #: build/C/man7/x25.7:100
23797 msgid ""
23798 "Controls whether the X.25 Q-bit (Qualified Data Bit) is accessible by the "
23799 "user.  It expects an integer argument.  If set to 0 (default), the Q-bit is "
23800 "never set for outgoing packets and the Q-bit of incoming packets is "
23801 "ignored.  If set to 1, an additional first byte is prepended to each message "
23802 "read from or written to the socket.  For data read from the socket, a 0 "
23803 "first byte indicates that the Q-bits of the corresponding incoming data "
23804 "packets were not set.  A first byte with value 1 indicates that the Q-bit of "
23805 "the corresponding incoming data packets was set.  If the first byte of the "
23806 "data written to the socket is 1, the Q-bit of the corresponding outgoing "
23807 "data packets will be set.  If the first byte is 0, the Q-bit will not be set."
23808 msgstr ""
23809 "X.25 の Q ビット (Qualified データビット) にユーザーがアクセス できるかどうか"
23810 "をコントロールする。整数の引数を取る。 0 にセットすると、 Q ビットは発信パ"
23811 "ケットには決してセットされず、 受信パケットでは無視される (デフォルト)。 1 に"
23812 "セットすると、ソケットから読む、あるいはソケットに送る メッセージそれぞれに先"
23813 "頭バイトが前置される。 ソケットから読んだデータでは、先頭バイトが 0 だと、 こ"
23814 "の到着データパケットに対応する Q ビットはセットされていなかったことになる。 "
23815 "先頭バイトが 1 だと、到着データパケットの Q ビットがセットされていたことにな"
23816 "る。 ソケットに書き込むデータの先頭バイトが 1 だと、 その発信パケットの Q "
23817 "ビットをセットする。 0 だと、 Q ビットをセットしない。"
23818
23819 #. type: Plain text
23820 #: build/C/man7/x25.7:102
23821 msgid "The AF_X25 protocol family is a new feature of Linux 2.2."
23822 msgstr "AF_X25 プロトコルファミリーは Linux 2.2 の新機能である。"
23823
23824 #. type: Plain text
23825 #: build/C/man7/x25.7:105
23826 msgid "Plenty, as the X.25 PLP implementation is B<CONFIG_EXPERIMENTAL>."
23827 msgstr "X.25 PLP 実装は B<CONFIG_EXPERIMENTAL> なので、たくさんあるだろう。"
23828
23829 #. type: Plain text
23830 #: build/C/man7/x25.7:107
23831 msgid "This man page is incomplete."
23832 msgstr "この man ページは完成していない。"
23833
23834 #. type: Plain text
23835 #: build/C/man7/x25.7:114
23836 msgid ""
23837 "There is no dedicated application programmer's header file yet; you need to "
23838 "include the kernel header file I<E<lt>linux/x25.hE<gt>>.  "
23839 "B<CONFIG_EXPERIMENTAL> might also imply that future versions of the "
23840 "interface are not binary compatible."
23841 msgstr ""
23842 "まだアプリケーションプログラマー用のヘッダーファイルがない。 カーネルのヘッ"
23843 "ダーファイル I<E<lt>linux/x25.hE<gt>> をインクルードしなければならない。 "
23844 "B<CONFIG_EXPERIMENTAL> なので、将来のバージョンのインターフェースでは バイナ"
23845 "リ互換性が失われるかもしれない。"
23846
23847 #. type: Plain text
23848 #: build/C/man7/x25.7:118
23849 msgid ""
23850 "X.25 N-Reset events are not propagated to the user process yet.  Thus, if a "
23851 "reset occurred, data might be lost without notice."
23852 msgstr ""
23853 "X.25 N-Reset イベントは、まだユーザープロセスに伝播しない。 したがってリセッ"
23854 "トが起こると、データは通知無しに失われる。"
23855
23856 #. type: Plain text
23857 #: build/C/man7/x25.7:121
23858 msgid "B<socket>(2), B<socket>(7)"
23859 msgstr "B<socket>(2), B<socket>(7)"
23860
23861 #. type: Plain text
23862 #: build/C/man7/x25.7:127
23863 msgid ""
23864 "Jonathan Simon Naylor: \\(lqThe Re-Analysis and Re-Implementation of X.25."
23865 "\\(rq The URL is E<.UR ftp://ftp.pspt.fi\\:/pub\\:/ham\\:/linux\\:/ax25\\:/"
23866 "x25doc.tgz> E<.UE .>"
23867 msgstr ""
23868 "Jonathan Simon Naylor: \\(lqThe Re-Analysis and Re-Implementation of X.25."
23869 "\\(rq The URL is E<.UR ftp://ftp.pspt.fi\\:/pub\\:/ham\\:/linux\\:/ax25\\:/"
23870 "x25doc.tgz> E<.UE .>"