OSDN Git Service

Wrap lines in ja.po again
[linuxjm/LDP_man-pages.git] / po4a / socket / po / ja.po
index afca0cb..aca1d79 100644 (file)
@@ -6,8 +6,8 @@
 msgid ""
 msgstr ""
 "Project-Id-Version: PACKAGE VERSION\n"
-"POT-Creation-Date: 2012-04-25 05:36+0900\n"
-"PO-Revision-Date: 2012-04-24 16:28+0900\n"
+"POT-Creation-Date: 2015-01-23 22:25+0900\n"
+"PO-Revision-Date: 2015-01-25 07:27+0900\n"
 "Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
 "Language-Team: LANGUAGE <LL@li.org>\n"
 "Language: \n"
@@ -16,79 +16,82 @@ msgstr ""
 "Content-Transfer-Encoding: 8bit\n"
 
 #. type: TH
-#: build/C/man2/accept.2:39
+#: build/C/man2/accept.2:41
 #, no-wrap
 msgid "ACCEPT"
 msgstr "ACCEPT"
 
 #. type: TH
-#: build/C/man2/accept.2:39
+#: build/C/man2/accept.2:41
 #, no-wrap
 msgid "2010-09-10"
 msgstr "2010-09-10"
 
 #. type: TH
-#: build/C/man2/accept.2:39 build/C/man2/bind.2:66 build/C/man2/connect.2:65
-#: build/C/man2/getsockname.2:38 build/C/man2/getsockopt.2:42
-#: build/C/man2/listen.2:43 build/C/man2/recv.2:39 build/C/man2/recvmmsg.2:26
-#: build/C/man2/select.2:38 build/C/man2/select_tut.2:30
-#: build/C/man2/send.2:38 build/C/man2/sendmmsg.2:28
-#: build/C/man3/sockatmark.3:23 build/C/man2/socket.2:41
-#: build/C/man7/socket.7:26 build/C/man2/socketcall.2:26
-#: build/C/man2/socketpair.2:40
+#: build/C/man2/accept.2:41 build/C/man2/bind.2:68 build/C/man2/connect.2:67
+#: build/C/man2/getsockname.2:40 build/C/man2/getsockopt.2:44
+#: build/C/man2/listen.2:45 build/C/man2/recv.2:41 build/C/man2/recvmmsg.2:31
+#: build/C/man2/select.2:38 build/C/man2/select_tut.2:32
+#: build/C/man2/send.2:40 build/C/man2/sendmmsg.2:28
+#: build/C/man3/sockatmark.3:25 build/C/man2/socket.2:43
+#: build/C/man7/socket.7:58 build/C/man2/socketcall.2:25
+#: build/C/man2/socketpair.2:42
 #, no-wrap
 msgid "Linux"
 msgstr "Linux"
 
 #. type: TH
-#: build/C/man2/accept.2:39 build/C/man2/bind.2:66
-#: build/C/man3/bindresvport.3:27 build/C/man2/connect.2:65
-#: build/C/man3/getifaddrs.3:33 build/C/man2/getsockname.2:38
-#: build/C/man2/getsockopt.2:42 build/C/man2/listen.2:43
-#: build/C/man2/recv.2:39 build/C/man2/recvmmsg.2:26 build/C/man2/select.2:38
-#: build/C/man2/select_tut.2:30 build/C/man2/send.2:38
-#: build/C/man2/sendmmsg.2:28 build/C/man3/sockatmark.3:23
-#: build/C/man2/socket.2:41 build/C/man7/socket.7:26
-#: build/C/man2/socketcall.2:26 build/C/man2/socketpair.2:40
+#: build/C/man2/accept.2:41 build/C/man2/bind.2:68
+#: build/C/man3/bindresvport.3:30 build/C/man2/connect.2:67
+#: build/C/man3/getifaddrs.3:36 build/C/man2/getsockname.2:40
+#: build/C/man2/getsockopt.2:44 build/C/man3/if_nameindex.3:26
+#: build/C/man3/if_nametoindex.3:25 build/C/man2/listen.2:45
+#: build/C/man2/recv.2:41 build/C/man2/recvmmsg.2:31 build/C/man2/select.2:38
+#: build/C/man2/select_tut.2:32 build/C/man2/send.2:40
+#: build/C/man2/sendmmsg.2:28 build/C/man3/sockatmark.3:25
+#: build/C/man2/socket.2:43 build/C/man7/socket.7:58
+#: build/C/man2/socketcall.2:25 build/C/man2/socketpair.2:42
 #, no-wrap
 msgid "Linux Programmer's Manual"
 msgstr "Linux Programmer's Manual"
 
 #. type: SH
-#: build/C/man2/accept.2:40 build/C/man2/bind.2:67
-#: build/C/man3/bindresvport.3:28 build/C/man2/connect.2:66
-#: build/C/man3/getifaddrs.3:34 build/C/man2/getsockname.2:39
-#: build/C/man2/getsockopt.2:43 build/C/man2/listen.2:44
-#: build/C/man2/recv.2:40 build/C/man2/recvmmsg.2:27 build/C/man2/select.2:39
-#: build/C/man2/select_tut.2:31 build/C/man2/send.2:39
-#: build/C/man2/sendmmsg.2:29 build/C/man3/sockatmark.3:24
-#: build/C/man2/socket.2:42 build/C/man7/socket.7:27
-#: build/C/man2/socketcall.2:27 build/C/man2/socketpair.2:41
+#: build/C/man2/accept.2:42 build/C/man2/bind.2:69
+#: build/C/man3/bindresvport.3:31 build/C/man2/connect.2:68
+#: build/C/man3/getifaddrs.3:37 build/C/man2/getsockname.2:41
+#: build/C/man2/getsockopt.2:45 build/C/man3/if_nameindex.3:27
+#: build/C/man3/if_nametoindex.3:26 build/C/man2/listen.2:46
+#: build/C/man2/recv.2:42 build/C/man2/recvmmsg.2:32 build/C/man2/select.2:39
+#: build/C/man2/select_tut.2:33 build/C/man2/send.2:41
+#: build/C/man2/sendmmsg.2:29 build/C/man3/sockatmark.3:26
+#: build/C/man2/socket.2:44 build/C/man7/socket.7:59
+#: build/C/man2/socketcall.2:26 build/C/man2/socketpair.2:43
 #, no-wrap
 msgid "NAME"
 msgstr "名前"
 
 #. type: Plain text
-#: build/C/man2/accept.2:42
-msgid "accept - accept a connection on a socket"
-msgstr "accept - ソケットへの接続を受ける"
+#: build/C/man2/accept.2:44
+msgid "accept, accept4 - accept a connection on a socket"
+msgstr "accept, accept4 - ソケットへの接続を受ける"
 
 #. type: SH
-#: build/C/man2/accept.2:42 build/C/man2/bind.2:69
-#: build/C/man3/bindresvport.3:30 build/C/man2/connect.2:68
-#: build/C/man3/getifaddrs.3:36 build/C/man2/getsockname.2:41
-#: build/C/man2/getsockopt.2:45 build/C/man2/listen.2:46
-#: build/C/man2/recv.2:42 build/C/man2/recvmmsg.2:29 build/C/man2/select.2:42
-#: build/C/man2/select_tut.2:34 build/C/man2/send.2:41
-#: build/C/man2/sendmmsg.2:31 build/C/man3/sockatmark.3:26
-#: build/C/man2/socket.2:44 build/C/man7/socket.7:29
-#: build/C/man2/socketcall.2:29 build/C/man2/socketpair.2:43
+#: build/C/man2/accept.2:44 build/C/man2/bind.2:71
+#: build/C/man3/bindresvport.3:33 build/C/man2/connect.2:70
+#: build/C/man3/getifaddrs.3:39 build/C/man2/getsockname.2:43
+#: build/C/man2/getsockopt.2:47 build/C/man3/if_nameindex.3:29
+#: build/C/man3/if_nametoindex.3:29 build/C/man2/listen.2:48
+#: build/C/man2/recv.2:44 build/C/man2/recvmmsg.2:34 build/C/man2/select.2:42
+#: build/C/man2/select_tut.2:36 build/C/man2/send.2:43
+#: build/C/man2/sendmmsg.2:31 build/C/man3/sockatmark.3:28
+#: build/C/man2/socket.2:46 build/C/man7/socket.7:61
+#: build/C/man2/socketcall.2:28 build/C/man2/socketpair.2:45
 #, no-wrap
 msgid "SYNOPSIS"
 msgstr "書式"
 
 #. type: Plain text
-#: build/C/man2/accept.2:46 build/C/man2/bind.2:73
+#: build/C/man2/accept.2:48 build/C/man2/bind.2:75
 #, no-wrap
 msgid ""
 "B<#include E<lt>sys/types.hE<gt>>          /* See NOTES */\n"
@@ -98,13 +101,13 @@ msgstr ""
 "B<#include E<lt>sys/socket.hE<gt>>\n"
 
 #. type: Plain text
-#: build/C/man2/accept.2:48
+#: build/C/man2/accept.2:50
 #, no-wrap
 msgid "B<int accept(int >I<sockfd>B<, struct sockaddr *>I<addr>B<, socklen_t *>I<addrlen>B<);>\n"
 msgstr "B<int accept(int >I<sockfd>B<, struct sockaddr *>I<addr>B<, socklen_t *>I<addrlen>B<);>\n"
 
 #. type: Plain text
-#: build/C/man2/accept.2:51
+#: build/C/man2/accept.2:53
 #, no-wrap
 msgid ""
 "B<#define _GNU_SOURCE>             /* See feature_test_macros(7) */\n"
@@ -114,7 +117,7 @@ msgstr ""
 "B<#include E<lt>sys/socket.hE<gt>>\n"
 
 #. type: Plain text
-#: build/C/man2/accept.2:54
+#: build/C/man2/accept.2:56
 #, no-wrap
 msgid ""
 "B<int accept4(int >I<sockfd>B<, struct sockaddr *>I<addr>B<,>\n"
@@ -124,21 +127,22 @@ msgstr ""
 "B<            socklen_t *>I<addrlen>B<, int >I<flags>B<);>\n"
 
 #. type: SH
-#: build/C/man2/accept.2:55 build/C/man2/bind.2:77
-#: build/C/man3/bindresvport.3:37 build/C/man2/connect.2:77
-#: build/C/man3/getifaddrs.3:45 build/C/man2/getsockname.2:48
-#: build/C/man2/getsockopt.2:56 build/C/man2/listen.2:54
-#: build/C/man2/recv.2:57 build/C/man2/recvmmsg.2:39 build/C/man2/select.2:81
-#: build/C/man2/select_tut.2:73 build/C/man2/send.2:56
-#: build/C/man2/sendmmsg.2:40 build/C/man3/sockatmark.3:40
-#: build/C/man2/socket.2:50 build/C/man7/socket.7:33
-#: build/C/man2/socketcall.2:31 build/C/man2/socketpair.2:50
+#: build/C/man2/accept.2:57 build/C/man2/bind.2:79
+#: build/C/man3/bindresvport.3:40 build/C/man2/connect.2:79
+#: build/C/man3/getifaddrs.3:48 build/C/man2/getsockname.2:50
+#: build/C/man2/getsockopt.2:58 build/C/man3/if_nameindex.3:36
+#: build/C/man3/if_nametoindex.3:37 build/C/man2/listen.2:56
+#: build/C/man2/recv.2:59 build/C/man2/recvmmsg.2:44 build/C/man2/select.2:81
+#: build/C/man2/select_tut.2:75 build/C/man2/send.2:58
+#: build/C/man2/sendmmsg.2:40 build/C/man3/sockatmark.3:42
+#: build/C/man2/socket.2:52 build/C/man7/socket.7:65
+#: build/C/man2/socketcall.2:30 build/C/man2/socketpair.2:52
 #, no-wrap
 msgid "DESCRIPTION"
 msgstr "説明"
 
 #. type: Plain text
-#: build/C/man2/accept.2:70
+#: build/C/man2/accept.2:72
 msgid ""
 "The B<accept>()  system call is used with connection-based socket types "
 "(B<SOCK_STREAM>, B<SOCK_SEQPACKET>).  It extracts the first connection "
@@ -150,12 +154,12 @@ msgstr ""
 "B<accept>()  システムコールは、接続指向のソケット型 (B<SOCK_STREAM>, "
 "B<SOCK_SEQPACKET>)  で用いられる。 この関数は、接続待ちソケット I<socket> 宛"
 "ての保留状態の接続要求が入っているキューから 先頭の接続要求を取り出し、接続済"
-"ã\81¿ã\82½ã\82±ã\83\83ã\83\88ã\82\92æ\96°è¦\8fã\81«ç\94\9fæ\88\90ã\81\97ã\80\81 ã\81\9dã\81®ã\82½ã\82±ã\83\83ã\83\88ã\82\92å\8f\82ç\85§ã\81\99ã\82\8bæ\96°ã\81\97ã\81\84ã\83\95ã\82¡ã\82¤ã\83«ã\83»ã\83\87ã\82£ã\82¹ã\82¯ã\83ªã\83\97"
-"ã\82¿ã\82\92è¿\94ã\81\99ã\80\82 æ\96°è¦\8fã\81«ç\94\9fæ\88\90ã\81\95ã\82\8cã\81\9fã\82½ã\82±ã\83\83ã\83\88ã\81¯ã\80\81æ\8e¥ç¶\9aå¾\85ã\81¡ (listen) ç\8a¶æ\85\8bã\81§ã\81¯ã\81ªã\81\84ã\80\82 ã\82\82ã\81¨"
-"もとのソケット I<sockfd> はこの呼び出しによって影響を受けない。"
+"みソケットを新規に生成し、 そのソケットを参照する新しいファイルディスクリプ"
+"ã\82¿ã\83¼ã\82\92è¿\94ã\81\99ã\80\82 æ\96°è¦\8fã\81«ç\94\9fæ\88\90ã\81\95ã\82\8cã\81\9fã\82½ã\82±ã\83\83ã\83\88ã\81¯ã\80\81æ\8e¥ç¶\9aå¾\85ã\81¡ (listen) ç\8a¶æ\85\8bã\81§ã\81¯ã\81ªã\81\84ã\80\82 ã\82\82"
+"ã\81¨ã\82\82ã\81¨ã\81®ã\82½ã\82±ã\83\83ã\83\88 I<sockfd> ã\81¯ã\81\93ã\81®å\91¼ã\81³å\87ºã\81\97ã\81«ã\82\88ã\81£ã\81¦å½±é\9f¿ã\82\92å\8f\97ã\81\91ã\81ªã\81\84ã\80\82"
 
 #. type: Plain text
-#: build/C/man2/accept.2:79
+#: build/C/man2/accept.2:81
 msgid ""
 "The argument I<sockfd> is a socket that has been created with B<socket>(2), "
 "bound to a local address with B<bind>(2), and is listening for connections "
@@ -166,7 +170,7 @@ msgstr ""
 "である。"
 
 #. type: Plain text
-#: build/C/man2/accept.2:97
+#: build/C/man2/accept.2:99
 msgid ""
 "The argument I<addr> is a pointer to a I<sockaddr> structure.  This "
 "structure is filled in with the address of the peer socket, as known to the "
@@ -175,15 +179,15 @@ msgid ""
 "respective protocol man pages).  When I<addr> is NULL, nothing is filled in; "
 "in this case, I<addrlen> is not used, and should also be NULL."
 msgstr ""
-"I<addr> å¼\95ã\81\8dæ\95°ã\81¯ I<sockaddr> æ§\8bé\80 ä½\93ã\81¸ã\81®ã\83\9dã\82¤ã\83³ã\82¿ã\81§ã\81\82ã\82\8bã\80\82 ã\81\93ã\81®æ§\8bé\80 ä½\93ã\81«ã\81¯æ\8e¥ç¶\9aç\9b¸"
-"手のソケットのアドレスが入っている。 I<addr> 引き数で返されるアドレスの正確な"
-"ã\83\95ã\82©ã\83¼ã\83\9eã\83\83ã\83\88ã\81¯ã\80\81 ã\82½ã\82±ã\83\83ã\83\88ã\81®ã\82¢ã\83\89ã\83¬ã\82¹ç¨®å\88¥ã\81«ã\82\88ã\81£ã\81¦å¤\89ã\82\8fã\82\8b (B<socket>(2)  ã\81\8aã\82\88ã\81³ã\81\9d"
-"ã\82\8cã\81\9eã\82\8cã\81®ã\83\97ã\83­ã\83\88ã\82³ã\83«ã\81® man ã\83\9aã\83¼ã\82¸ã\82\92å\8f\82ç\85§)ã\80\82 I<addr> ã\81\8c NULL ã\81®å ´å\90\88ã\80\81 I<addr> ã\81«"
-"ã\81¯ä½\95ã\82\82å\85¥ã\82\89ã\81ªã\81\84ã\80\82ã\81\93ã\81®å ´å\90\88ã\80\81 I<addrlen> ã\81¯ä½¿ç\94¨ã\81\95ã\82\8cã\81\9aã\80\81ã\81\93ã\81®å¼\95ã\81\8dæ\95°ã\81¯ NULL ã\81«ã\81\97ã\81¦"
-"おくべきである。"
+"I<addr> å¼\95ã\81\8dæ\95°ã\81¯ I<sockaddr> æ§\8bé\80 ä½\93ã\81¸ã\81®ã\83\9dã\82¤ã\83³ã\82¿ã\83¼ã\81§ã\81\82ã\82\8bã\80\82 ã\81\93ã\81®æ§\8bé\80 ä½\93ã\81«ã\81¯æ\8e¥ç¶\9a"
+"相手のソケットのアドレスが入っている。 I<addr> 引き数で返されるアドレスの正確"
+"ã\81ªã\83\95ã\82©ã\83¼ã\83\9eã\83\83ã\83\88ã\81¯ã\80\81 ã\82½ã\82±ã\83\83ã\83\88ã\81®ã\82¢ã\83\89ã\83¬ã\82¹ç¨®å\88¥ã\81«ã\82\88ã\81£ã\81¦å¤\89ã\82\8fã\82\8b (B<socket>(2)  ã\81\8aã\82\88ã\81³"
+"ã\81\9dã\82\8cã\81\9eã\82\8cã\81®ã\83\97ã\83­ã\83\88ã\82³ã\83«ã\81® man ã\83\9aã\83¼ã\82¸ã\82\92å\8f\82ç\85§)ã\80\82 I<addr> ã\81\8c NULL ã\81®å ´å\90\88ã\80\81 I<addr> "
+"ã\81«ã\81¯ä½\95ã\82\82å\85¥ã\82\89ã\81ªã\81\84ã\80\82ã\81\93ã\81®å ´å\90\88ã\80\81 I<addrlen> ã\81¯ä½¿ç\94¨ã\81\95ã\82\8cã\81\9aã\80\81ã\81\93ã\81®å¼\95ã\81\8dæ\95°ã\81¯ NULL ã\81«ã\81\97"
+"ã\81¦ã\81\8aã\81\8fã\81¹ã\81\8dã\81§ã\81\82ã\82\8bã\80\82"
 
 #. type: Plain text
-#: build/C/man2/accept.2:105
+#: build/C/man2/accept.2:107
 msgid ""
 "The I<addrlen> argument is a value-result argument: the caller must "
 "initialize it to contain the size (in bytes) of the structure pointed to by "
@@ -194,19 +198,19 @@ msgstr ""
 "返ってくる時には、接続相手のアドレスの実際の大きさが格納される。"
 
 #. type: Plain text
-#: build/C/man2/accept.2:110 build/C/man2/getsockname.2:65
+#: build/C/man2/accept.2:112 build/C/man2/getsockname.2:67
 msgid ""
 "The returned address is truncated if the buffer provided is too small; in "
 "this case, I<addrlen> will return a value greater than was supplied to the "
 "call."
 msgstr ""
-"渡されたバッファが小さ過ぎた場合は、返されるアドレスの末尾が切り詰められ"
+"渡ã\81\95ã\82\8cã\81\9fã\83\90ã\83\83ã\83\95ã\82¡ã\83¼ã\81\8cå°\8fã\81\95é\81\8eã\81\8eã\81\9få ´å\90\88ã\81¯ã\80\81è¿\94ã\81\95ã\82\8cã\82\8bã\82¢ã\83\89ã\83¬ã\82¹ã\81®æ\9c«å°¾ã\81\8cå\88\87ã\82\8aè©°ã\82\81ã\82\89ã\82\8c"
 "る。\n"
 "この場合には、 I<addrlen> には、呼び出し時に指定された値よりも大きな値が格納"
 "される。"
 
 #. type: Plain text
-#: build/C/man2/accept.2:123
+#: build/C/man2/accept.2:125
 msgid ""
 "If no pending connections are present on the queue, and the socket is not "
 "marked as nonblocking, B<accept>()  blocks the caller until a connection is "
@@ -220,7 +224,7 @@ msgstr ""
 "B<accept>()  はエラー B<EAGAIN> か B<EWOULDBLOCK> で失敗する。"
 
 #. type: Plain text
-#: build/C/man2/accept.2:137
+#: build/C/man2/accept.2:139
 msgid ""
 "In order to be notified of incoming connections on a socket, you can use "
 "B<select>(2)  or B<poll>(2).  A readable event will be delivered when a new "
@@ -235,7 +239,7 @@ msgstr ""
 "(deliver) させるようにすることもできる。詳細は B<socket>(7)  を参照のこと。"
 
 #. type: Plain text
-#: build/C/man2/accept.2:150
+#: build/C/man2/accept.2:152
 msgid ""
 "For certain protocols which require an explicit confirmation, such as "
 "DECNet, B<accept>()  can be thought of as merely dequeuing the next "
@@ -246,13 +250,13 @@ msgid ""
 msgstr ""
 "明示的な接続確認 (confirmation) を必要とするようなプロトコル (DECNet など) で"
 "は、 B<accept>()  は単に次の接続要求をキューから取り出すだけであり、 接続確認"
-"ã\81¯è¡\8cã\82\8fã\81ªã\81\84ã\81\93ã\81¨ã\81«æ³¨æ\84\8fã\81\9bã\82\88ã\80\82æ\8e¥ç¶\9a確èª\8dã\81¯ã\80\81 æ\96°ã\81\97ã\81\84ã\83\95ã\82¡ã\82¤ã\83«ã\83»ã\83\87ã\82£ã\82¹ã\82¯ã\83ªã\83\97ã\82¿に対す"
+"ã\81¯è¡\8cã\82\8fã\81ªã\81\84ã\81\93ã\81¨ã\81«æ³¨æ\84\8fã\81\9bã\82\88ã\80\82æ\8e¥ç¶\9a確èª\8dã\81¯ã\80\81 æ\96°ã\81\97ã\81\84ã\83\95ã\82¡ã\82¤ã\83«ã\83\87ã\82£ã\82¹ã\82¯ã\83ªã\83\97ã\82¿ã\83¼に対す"
 "る 通常の読み取り/書き込みによってなされ、接続拒否 (rejection)  は新しいソ"
 "ケットをクローズすることによってなされる。 現在のところ、 Linux 上でこれらの"
 "セマンティクスを持つのは DECNet だけである。"
 
 #. type: Plain text
-#: build/C/man2/accept.2:160
+#: build/C/man2/accept.2:162
 msgid ""
 "If I<flags> is 0, then B<accept4>()  is the same as B<accept>().  The "
 "following values can be bitwise ORed in I<flags> to obtain different "
@@ -263,13 +267,13 @@ msgstr ""
 "できる。"
 
 #. type: TP
-#: build/C/man2/accept.2:160 build/C/man2/socket.2:162
+#: build/C/man2/accept.2:162 build/C/man2/socket.2:160
 #, no-wrap
 msgid "B<SOCK_NONBLOCK>"
 msgstr "B<SOCK_NONBLOCK>"
 
 #. type: Plain text
-#: build/C/man2/accept.2:168 build/C/man2/socket.2:170
+#: build/C/man2/accept.2:170 build/C/man2/socket.2:168
 msgid ""
 "Set the B<O_NONBLOCK> file status flag on the new open file description.  "
 "Using this flag saves extra calls to B<fcntl>(2)  to achieve the same result."
@@ -280,63 +284,64 @@ msgstr ""
 "なる。"
 
 #. type: TP
-#: build/C/man2/accept.2:168 build/C/man2/socket.2:170
+#: build/C/man2/accept.2:170 build/C/man2/socket.2:168
 #, no-wrap
 msgid "B<SOCK_CLOEXEC>"
 msgstr "B<SOCK_CLOEXEC>"
 
 #. type: Plain text
-#: build/C/man2/accept.2:178 build/C/man2/socket.2:180
+#: build/C/man2/accept.2:180 build/C/man2/socket.2:178
 msgid ""
 "Set the close-on-exec (B<FD_CLOEXEC>)  flag on the new file descriptor.  See "
 "the description of the B<O_CLOEXEC> flag in B<open>(2)  for reasons why this "
 "may be useful."
 msgstr ""
-"æ\96°ã\81\97ã\81\84ã\83\95ã\82¡ã\82¤ã\83«ã\83\87ã\82£ã\82¹ã\82¯ã\83ªã\83\97ã\82¿ã\81«å¯¾ã\81\97ã\81¦ close-on-exec (B<FD_CLOEXEC>)  ã\83\95ã\83©ã\82°ã\82\92"
-"セットする。 このフラグが役に立つ理由については、 B<open>(2)  の "
+"æ\96°ã\81\97ã\81\84ã\83\95ã\82¡ã\82¤ã\83«ã\83\87ã\82£ã\82¹ã\82¯ã\83ªã\83\97ã\82¿ã\83¼ã\81«å¯¾ã\81\97ã\81¦ close-on-exec (B<FD_CLOEXEC>)  ã\83\95ã\83©ã\82°"
+"ã\82\92ã\82»ã\83\83ã\83\88ã\81\99ã\82\8bã\80\82 ã\81\93ã\81®ã\83\95ã\83©ã\82°ã\81\8cå½¹ã\81«ç«\8bã\81¤ç\90\86ç\94±ã\81«ã\81¤ã\81\84ã\81¦ã\81¯ã\80\81 B<open>(2)  ã\81® "
 "B<O_CLOEXEC> フラグの説明を参照のこと。"
 
 #. type: SH
-#: build/C/man2/accept.2:178 build/C/man2/bind.2:150
-#: build/C/man3/bindresvport.3:64 build/C/man2/connect.2:125
-#: build/C/man3/getifaddrs.3:137 build/C/man2/getsockname.2:65
-#: build/C/man2/getsockopt.2:129 build/C/man2/listen.2:80
-#: build/C/man2/recv.2:386 build/C/man2/recvmmsg.2:141
-#: build/C/man2/select.2:285 build/C/man2/select_tut.2:483
-#: build/C/man2/send.2:273 build/C/man2/sendmmsg.2:119
-#: build/C/man3/sockatmark.3:49 build/C/man2/socket.2:312
-#: build/C/man2/socketpair.2:67
+#: build/C/man2/accept.2:180 build/C/man2/bind.2:152
+#: build/C/man3/bindresvport.3:67 build/C/man2/connect.2:127
+#: build/C/man3/getifaddrs.3:142 build/C/man2/getsockname.2:67
+#: build/C/man2/getsockopt.2:131 build/C/man3/if_nameindex.3:71
+#: build/C/man3/if_nametoindex.3:54 build/C/man2/listen.2:82
+#: build/C/man2/recv.2:408 build/C/man2/recvmmsg.2:148
+#: build/C/man2/select.2:300 build/C/man2/select_tut.2:485
+#: build/C/man2/send.2:294 build/C/man2/sendmmsg.2:119
+#: build/C/man3/sockatmark.3:51 build/C/man2/socket.2:310
+#: build/C/man2/socketpair.2:69
 #, no-wrap
 msgid "RETURN VALUE"
 msgstr "返り値"
 
 #. type: Plain text
-#: build/C/man2/accept.2:185
+#: build/C/man2/accept.2:187
 msgid ""
 "On success, these system calls return a nonnegative integer that is a "
 "descriptor for the accepted socket.  On error, -1 is returned, and I<errno> "
 "is set appropriately."
 msgstr ""
-"æ\88\90å\8a\9fã\81\97ã\81\9få ´å\90\88ã\80\81ã\81\93ã\82\8cã\82\89ã\81®ã\82·ã\82¹ã\83\86ã\83 ã\82³ã\83¼ã\83«ã\81¯ å\8f\97ã\81\91ä»\98ã\81\91ã\81\9fã\82½ã\82±ã\83\83ã\83\88ã\81®ã\83\87ã\82£ã\82¹ã\82¯ã\83ªã\83\97ã\82¿ã\81§ã\81\82"
-"ã\82\8bé\9d\9eè² ã\81®æ\95´æ\95°å\80¤ã\82\92è¿\94ã\81\99ã\80\82 ã\82¨ã\83©ã\83¼ã\81\8cç\99ºç\94\9fã\81\97ã\81\9få ´å\90\88ã\81¯ -1 ã\82\92è¿\94ã\81\97ã\80\81 I<errno> ã\82\92é\81©å\88\87ã\81«è¨­"
-"定する。"
+"æ\88\90å\8a\9fã\81\97ã\81\9få ´å\90\88ã\80\81ã\81\93ã\82\8cã\82\89ã\81®ã\82·ã\82¹ã\83\86ã\83 ã\82³ã\83¼ã\83«ã\81¯ å\8f\97ã\81\91ä»\98ã\81\91ã\81\9fã\82½ã\82±ã\83\83ã\83\88ã\81®ã\83\87ã\82£ã\82¹ã\82¯ã\83ªã\83\97ã\82¿ã\83¼ã\81§"
+"ã\81\82ã\82\8bé\9d\9eè² ã\81®æ\95´æ\95°å\80¤ã\82\92è¿\94ã\81\99ã\80\82 ã\82¨ã\83©ã\83¼ã\81\8cç\99ºç\94\9fã\81\97ã\81\9få ´å\90\88ã\81¯ -1 ã\82\92è¿\94ã\81\97ã\80\81 I<errno> ã\82\92é\81©å\88\87ã\81«"
+"定する。"
 
 #. type: SS
-#: build/C/man2/accept.2:185
+#: build/C/man2/accept.2:187
 #, no-wrap
-msgid "Error Handling"
+msgid "Error handling"
 msgstr "エラー処理"
 
 #. type: Plain text
-#: build/C/man2/accept.2:212
+#: build/C/man2/accept.2:214
 msgid ""
 "Linux B<accept>()  (and B<accept4>())  passes already-pending network errors "
 "on the new socket as an error code from B<accept>().  This behavior differs "
 "from other BSD socket implementations.  For reliable operation the "
 "application should detect the network errors defined for the protocol after "
-"B<accept>()  and treat them like B<EAGAIN> by retrying.  In case of TCP/IP "
-"these are B<ENETDOWN>, B<EPROTO>, B<ENOPROTOOPT>, B<EHOSTDOWN>, B<ENONET>, "
-"B<EHOSTUNREACH>, B<EOPNOTSUPP>, and B<ENETUNREACH>."
+"B<accept>()  and treat them like B<EAGAIN> by retrying.  In the case of TCP/"
+"IP, these are B<ENETDOWN>, B<EPROTO>, B<ENOPROTOOPT>, B<EHOSTDOWN>, "
+"B<ENONET>, B<EHOSTUNREACH>, B<EOPNOTSUPP>, and B<ENETUNREACH>."
 msgstr ""
 "Linux の B<accept>()  (と B<accept4>())  は、新しいソケットにおける、発生済み"
 "のネットワークエラーを B<accept>()  からのエラーコードとして渡す。 この振舞い"
@@ -348,27 +353,28 @@ msgstr ""
 "B<ENETUNREACH>"
 
 #. type: SH
-#: build/C/man2/accept.2:212 build/C/man2/bind.2:155
-#: build/C/man3/bindresvport.3:69 build/C/man2/connect.2:130
-#: build/C/man3/getifaddrs.3:144 build/C/man2/getsockname.2:70
-#: build/C/man2/getsockopt.2:134 build/C/man2/listen.2:85
-#: build/C/man2/recv.2:391 build/C/man2/recvmmsg.2:149
-#: build/C/man2/select.2:302 build/C/man2/send.2:278
-#: build/C/man2/sendmmsg.2:133 build/C/man3/sockatmark.3:54
-#: build/C/man2/socket.2:317 build/C/man2/socketpair.2:72
+#: build/C/man2/accept.2:214 build/C/man2/bind.2:157
+#: build/C/man3/bindresvport.3:72 build/C/man2/connect.2:132
+#: build/C/man3/getifaddrs.3:149 build/C/man2/getsockname.2:72
+#: build/C/man2/getsockopt.2:136 build/C/man3/if_nameindex.3:78
+#: build/C/man3/if_nametoindex.3:69 build/C/man2/listen.2:87
+#: build/C/man2/recv.2:424 build/C/man2/recvmmsg.2:156
+#: build/C/man2/select.2:318 build/C/man2/send.2:299
+#: build/C/man2/sendmmsg.2:133 build/C/man3/sockatmark.3:58
+#: build/C/man2/socket.2:315 build/C/man2/socketpair.2:74
 #, no-wrap
 msgid "ERRORS"
 msgstr "エラー"
 
 #. type: TP
-#: build/C/man2/accept.2:213 build/C/man2/recv.2:396 build/C/man2/send.2:291
+#: build/C/man2/accept.2:215 build/C/man2/recv.2:429 build/C/man2/send.2:315
 #, no-wrap
 msgid "B<EAGAIN> or B<EWOULDBLOCK>"
 msgstr "B<EAGAIN> または B<EWOULDBLOCK>"
 
 #.  Actually EAGAIN on Linux
 #. type: Plain text
-#: build/C/man2/accept.2:221
+#: build/C/man2/accept.2:223
 msgid ""
 "The socket is marked nonblocking and no connections are present to be "
 "accepted.  POSIX.1-2001 allows either error to be returned for this case, "
@@ -381,55 +387,55 @@ msgstr ""
 "ションでは、両方の可能性を 確認すべきである。"
 
 #. type: TP
-#: build/C/man2/accept.2:221 build/C/man2/bind.2:163
-#: build/C/man2/connect.2:167 build/C/man2/getsockname.2:71
-#: build/C/man2/getsockopt.2:135 build/C/man2/listen.2:89
-#: build/C/man2/recv.2:405 build/C/man2/select.2:303 build/C/man2/send.2:299
-#: build/C/man3/sockatmark.3:55
+#: build/C/man2/accept.2:223 build/C/man2/bind.2:176
+#: build/C/man2/connect.2:176 build/C/man2/getsockname.2:73
+#: build/C/man2/getsockopt.2:137 build/C/man2/listen.2:104
+#: build/C/man2/recv.2:438 build/C/man2/select.2:319 build/C/man2/send.2:336
+#: build/C/man3/sockatmark.3:59
 #, no-wrap
 msgid "B<EBADF>"
 msgstr "B<EBADF>"
 
 #. type: Plain text
-#: build/C/man2/accept.2:224
+#: build/C/man2/accept.2:226
 msgid "The descriptor is invalid."
-msgstr "ディスクリプタが不正。"
+msgstr "ã\83\87ã\82£ã\82¹ã\82¯ã\83ªã\83\97ã\82¿ã\83¼ã\81\8cä¸\8dæ­£ã\80\82"
 
 #. type: TP
-#: build/C/man2/accept.2:224
+#: build/C/man2/accept.2:226
 #, no-wrap
 msgid "B<ECONNABORTED>"
 msgstr "B<ECONNABORTED>"
 
 #. type: Plain text
-#: build/C/man2/accept.2:227
+#: build/C/man2/accept.2:229
 msgid "A connection has been aborted."
 msgstr "接続が中止された。"
 
 #. type: TP
-#: build/C/man2/accept.2:227 build/C/man2/bind.2:189
-#: build/C/man2/connect.2:173 build/C/man2/getsockname.2:76
-#: build/C/man2/getsockopt.2:140 build/C/man2/recv.2:414
-#: build/C/man2/send.2:308 build/C/man2/socketpair.2:76
+#: build/C/man2/accept.2:229 build/C/man2/bind.2:208
+#: build/C/man2/connect.2:182 build/C/man2/getsockname.2:78
+#: build/C/man2/getsockopt.2:142 build/C/man2/recv.2:447
+#: build/C/man2/send.2:345 build/C/man2/socketpair.2:78
 #, no-wrap
 msgid "B<EFAULT>"
 msgstr "B<EFAULT>"
 
 #. type: Plain text
-#: build/C/man2/accept.2:232
+#: build/C/man2/accept.2:234
 msgid ""
 "The I<addr> argument is not in a writable part of the user address space."
-msgstr "I<addr> 引き数がユーザアドレス空間の書き込み可能領域にない。"
+msgstr "I<addr> å¼\95ã\81\8dæ\95°ã\81\8cã\83¦ã\83¼ã\82¶ã\83¼ã\82¢ã\83\89ã\83¬ã\82¹ç©ºé\96\93ã\81®æ\9b¸ã\81\8dè¾¼ã\81¿å\8f¯è\83½é \98å\9f\9fã\81«ã\81ªã\81\84ã\80\82"
 
 #. type: TP
-#: build/C/man2/accept.2:232 build/C/man2/connect.2:201
-#: build/C/man2/recv.2:418 build/C/man2/select.2:308 build/C/man2/send.2:311
+#: build/C/man2/accept.2:234 build/C/man2/connect.2:210
+#: build/C/man2/recv.2:451 build/C/man2/select.2:324 build/C/man2/send.2:348
 #, no-wrap
 msgid "B<EINTR>"
 msgstr "B<EINTR>"
 
 #. type: Plain text
-#: build/C/man2/accept.2:237
+#: build/C/man2/accept.2:239
 msgid ""
 "The system call was interrupted by a signal that was caught before a valid "
 "connection arrived; see B<signal>(7)."
@@ -438,18 +444,19 @@ msgstr ""
 "た。 B<signal>(7)  参照。"
 
 #. type: TP
-#: build/C/man2/accept.2:237 build/C/man2/accept.2:242 build/C/man2/bind.2:167
-#: build/C/man2/bind.2:193 build/C/man2/getsockname.2:82
-#: build/C/man2/getsockopt.2:150 build/C/man2/recv.2:423
-#: build/C/man2/recvmmsg.2:153 build/C/man2/select.2:312
-#: build/C/man2/send.2:315 build/C/man3/sockatmark.3:59
-#: build/C/man2/socket.2:325 build/C/man2/socket.2:328
+#: build/C/man2/accept.2:239 build/C/man2/accept.2:244 build/C/man2/bind.2:180
+#: build/C/man2/bind.2:185 build/C/man2/getsockname.2:84
+#: build/C/man2/getsockopt.2:152 build/C/man2/recv.2:456
+#: build/C/man2/recvmmsg.2:160 build/C/man2/select.2:328
+#: build/C/man2/select.2:335 build/C/man2/send.2:352
+#: build/C/man3/sockatmark.3:63 build/C/man2/socket.2:323
+#: build/C/man2/socket.2:326
 #, no-wrap
 msgid "B<EINVAL>"
 msgstr "B<EINVAL>"
 
 #. type: Plain text
-#: build/C/man2/accept.2:242
+#: build/C/man2/accept.2:244
 msgid ""
 "Socket is not listening for connections, or I<addrlen> is invalid (e.g., is "
 "negative)."
@@ -458,105 +465,105 @@ msgstr ""
 "負の場合など)。"
 
 #. type: Plain text
-#: build/C/man2/accept.2:247
+#: build/C/man2/accept.2:249
 msgid "(B<accept4>())  invalid value in I<flags>."
 msgstr "(B<accept4>())  I<flags> に不正な値が指定されている。"
 
 #. type: TP
-#: build/C/man2/accept.2:247 build/C/man2/socket.2:333
-#: build/C/man2/socketpair.2:81
+#: build/C/man2/accept.2:249 build/C/man2/socket.2:331
+#: build/C/man2/socketpair.2:83
 #, no-wrap
 msgid "B<EMFILE>"
 msgstr "B<EMFILE>"
 
 #. type: Plain text
-#: build/C/man2/accept.2:250
+#: build/C/man2/accept.2:252
 msgid "The per-process limit of open file descriptors has been reached."
-msgstr "1ã\83\97ã\83­ã\82»ã\82¹ã\81\8cã\82ªã\83¼ã\83\97ã\83³ã\81§ã\81\8dã\82\8bã\83\95ã\82¡ã\82¤ã\83«ã\83»ã\83\87ã\82£ã\82¹ã\82¯ã\83ªã\83\97ã\82¿数の上限に達した。"
+msgstr "1ã\83\97ã\83­ã\82»ã\82¹ã\81\8cã\82ªã\83¼ã\83\97ã\83³ã\81§ã\81\8dã\82\8bã\83\95ã\82¡ã\82¤ã\83«ã\83\87ã\82£ã\82¹ã\82¯ã\83ªã\83\97ã\82¿ã\83¼数の上限に達した。"
 
 #. type: TP
-#: build/C/man2/accept.2:250 build/C/man2/socket.2:336
-#: build/C/man2/socketpair.2:84
+#: build/C/man2/accept.2:252 build/C/man2/socket.2:334
+#: build/C/man2/socketpair.2:86
 #, no-wrap
 msgid "B<ENFILE>"
 msgstr "B<ENFILE>"
 
 #. type: Plain text
-#: build/C/man2/accept.2:253 build/C/man2/socket.2:339
-#: build/C/man2/socketpair.2:87
+#: build/C/man2/accept.2:255 build/C/man2/socket.2:337
+#: build/C/man2/socketpair.2:89
 msgid "The system limit on the total number of open files has been reached."
 msgstr "オープンされたファイルの総数がシステム全体の上限に達していた。"
 
 #. type: TP
-#: build/C/man2/accept.2:253
+#: build/C/man2/accept.2:255
 #, no-wrap
 msgid "B<ENOBUFS>, B<ENOMEM>"
 msgstr "B<ENOBUFS>, B<ENOMEM>"
 
 #. type: Plain text
-#: build/C/man2/accept.2:258
+#: build/C/man2/accept.2:260
 msgid ""
 "Not enough free memory.  This often means that the memory allocation is "
 "limited by the socket buffer limits, not by the system memory."
 msgstr ""
-"ã\83¡ã\83¢ã\83ªã\81\8c足ã\82\8aã\81ªã\81\84ã\80\82 å¤\9aã\81\8fã\81®å ´å\90\88ã\81¯ã\80\81ã\82·ã\82¹ã\83\86ã\83 ã\83¡ã\83¢ã\83ªã\81\8c足ã\82\8aã\81ªã\81\84ã\82\8fã\81\91ã\81§ã\81¯ã\81ªã\81\8fã\80\81 ã\82½"
-"ã\82±ã\83\83ã\83\88ã\83\90ã\83\83ã\83\95ã\82¡ã\81®å¤§ã\81\8dã\81\95ã\81«ã\82\88ã\82\8bã\83¡ã\83¢ã\83ª割り当ての制限である。"
+"ã\83¡ã\83¢ã\83ªã\83¼ã\81\8c足ã\82\8aã\81ªã\81\84ã\80\82 å¤\9aã\81\8fã\81®å ´å\90\88ã\81¯ã\80\81ã\82·ã\82¹ã\83\86ã\83 ã\83¡ã\83¢ã\83ªã\83¼ã\81\8c足ã\82\8aã\81ªã\81\84ã\82\8fã\81\91ã\81§ã\81¯ã\81ªã\81\8fã\80\81 "
+"ã\82½ã\82±ã\83\83ã\83\88ã\83\90ã\83\83ã\83\95ã\82¡ã\83¼ã\81®å¤§ã\81\8dã\81\95ã\81«ã\82\88ã\82\8bã\83¡ã\83¢ã\83ªã\83¼割り当ての制限である。"
 
 #. type: TP
-#: build/C/man2/accept.2:258 build/C/man2/bind.2:172
-#: build/C/man2/connect.2:213 build/C/man2/getsockname.2:90
-#: build/C/man2/getsockopt.2:164 build/C/man2/listen.2:94
-#: build/C/man2/recv.2:438 build/C/man2/send.2:344
+#: build/C/man2/accept.2:260 build/C/man2/bind.2:191
+#: build/C/man2/connect.2:222 build/C/man2/getsockname.2:92
+#: build/C/man2/getsockopt.2:166 build/C/man2/listen.2:109
+#: build/C/man2/recv.2:471 build/C/man2/send.2:381
 #, no-wrap
 msgid "B<ENOTSOCK>"
 msgstr "B<ENOTSOCK>"
 
 #. type: Plain text
-#: build/C/man2/accept.2:261
+#: build/C/man2/accept.2:263
 msgid "The descriptor references a file, not a socket."
-msgstr "ディスクリプタはソケットではなくファイルを参照している。"
+msgstr "ã\83\87ã\82£ã\82¹ã\82¯ã\83ªã\83\97ã\82¿ã\83¼ã\81¯ã\82½ã\82±ã\83\83ã\83\88ã\81§ã\81¯ã\81ªã\81\8fã\83\95ã\82¡ã\82¤ã\83«ã\82\92å\8f\82ç\85§ã\81\97ã\81¦ã\81\84ã\82\8bã\80\82"
 
 #. type: TP
-#: build/C/man2/accept.2:261 build/C/man2/listen.2:99 build/C/man2/send.2:349
-#: build/C/man2/socketpair.2:87
+#: build/C/man2/accept.2:263 build/C/man2/listen.2:114 build/C/man2/send.2:386
+#: build/C/man2/socketpair.2:89
 #, no-wrap
 msgid "B<EOPNOTSUPP>"
 msgstr "B<EOPNOTSUPP>"
 
 #. type: Plain text
-#: build/C/man2/accept.2:265
+#: build/C/man2/accept.2:267
 msgid "The referenced socket is not of type B<SOCK_STREAM>."
 msgstr "参照しているソケットの型が B<SOCK_STREAM> でない。"
 
 #. type: TP
-#: build/C/man2/accept.2:265
+#: build/C/man2/accept.2:267
 #, no-wrap
 msgid "B<EPROTO>"
 msgstr "B<EPROTO>"
 
 #. type: Plain text
-#: build/C/man2/accept.2:268
+#: build/C/man2/accept.2:270
 msgid "Protocol error."
-msgstr "ã\83\97ã\83­ã\83\88ã\82³ã\83«ã\83»ã\82¨ã\83©ã\83¼ã\80\82"
+msgstr "プロトコルエラー。"
 
 #. type: Plain text
-#: build/C/man2/accept.2:272
+#: build/C/man2/accept.2:274
 msgid "In addition, Linux B<accept>()  may fail if:"
 msgstr "上記に加えて、Linux の B<accept>()  は以下のエラーで失敗する:"
 
 #. type: TP
-#: build/C/man2/accept.2:272
+#: build/C/man2/accept.2:274
 #, no-wrap
 msgid "B<EPERM>"
 msgstr "B<EPERM>"
 
 #. type: Plain text
-#: build/C/man2/accept.2:275
+#: build/C/man2/accept.2:277
 msgid "Firewall rules forbid connection."
 msgstr "ファイアウォールのルールにより接続が禁止された。"
 
 #. type: Plain text
-#: build/C/man2/accept.2:287
+#: build/C/man2/accept.2:289
 msgid ""
 "In addition, network errors for the new socket and as defined for the "
 "protocol may be returned.  Various Linux kernels can return other errors "
@@ -570,16 +577,16 @@ msgstr ""
 "ともある。"
 
 #. type: SH
-#: build/C/man2/accept.2:287 build/C/man3/getifaddrs.3:157
-#: build/C/man2/recvmmsg.2:157 build/C/man2/select.2:321
-#: build/C/man2/sendmmsg.2:145 build/C/man3/sockatmark.3:66
-#: build/C/man7/socket.7:697
+#: build/C/man2/accept.2:289 build/C/man3/getifaddrs.3:162
+#: build/C/man3/if_nameindex.3:97 build/C/man2/recvmmsg.2:164
+#: build/C/man2/select.2:343 build/C/man2/sendmmsg.2:145
+#: build/C/man3/sockatmark.3:70 build/C/man7/socket.7:915
 #, no-wrap
 msgid "VERSIONS"
 msgstr "バージョン"
 
 #. type: Plain text
-#: build/C/man2/accept.2:292
+#: build/C/man2/accept.2:294
 msgid ""
 "The B<accept4>()  system call is available starting with Linux 2.6.28; "
 "support in glibc is available starting with version 2.10."
@@ -588,15 +595,16 @@ msgstr ""
 "サポートはバージョン 2.10 以降で利用可能である。"
 
 #. type: SH
-#: build/C/man2/accept.2:292 build/C/man2/bind.2:220
-#: build/C/man3/bindresvport.3:89 build/C/man2/connect.2:223
-#: build/C/man3/getifaddrs.3:165 build/C/man2/getsockname.2:95
-#: build/C/man2/getsockopt.2:169 build/C/man2/listen.2:104
-#: build/C/man2/recv.2:443 build/C/man2/recvmmsg.2:162
-#: build/C/man2/select.2:327 build/C/man2/send.2:363
-#: build/C/man2/sendmmsg.2:150 build/C/man3/sockatmark.3:69
-#: build/C/man2/socket.2:350 build/C/man2/socketcall.2:43
-#: build/C/man2/socketpair.2:93
+#: build/C/man2/accept.2:294 build/C/man2/bind.2:232
+#: build/C/man3/bindresvport.3:104 build/C/man2/connect.2:237
+#: build/C/man3/getifaddrs.3:170 build/C/man2/getsockname.2:97
+#: build/C/man2/getsockopt.2:171 build/C/man3/if_nameindex.3:104
+#: build/C/man3/if_nametoindex.3:92 build/C/man2/listen.2:119
+#: build/C/man2/recv.2:476 build/C/man2/recvmmsg.2:169
+#: build/C/man2/select.2:349 build/C/man2/send.2:400
+#: build/C/man2/sendmmsg.2:150 build/C/man3/sockatmark.3:78
+#: build/C/man2/socket.2:348 build/C/man2/socketcall.2:42
+#: build/C/man2/socketpair.2:95
 #, no-wrap
 msgid "CONFORMING TO"
 msgstr "準拠"
@@ -608,7 +616,7 @@ msgstr "準拠"
 #.  ENFILE, ENOBUFS, ENOMEM, ENOTSOCK, EOPNOTSUPP, EPROTO, EWOULDBLOCK.
 #.  In addition, SUSv2 documents EFAULT and ENOSR.
 #. type: Plain text
-#: build/C/man2/accept.2:304
+#: build/C/man2/accept.2:306
 msgid ""
 "B<accept>(): POSIX.1-2001, SVr4, 4.4BSD, (B<accept>()  first appeared in "
 "4.2BSD)."
@@ -617,14 +625,14 @@ msgstr ""
 "された)."
 
 #. type: Plain text
-#: build/C/man2/accept.2:307
+#: build/C/man2/accept.2:309
 msgid "B<accept4>()  is a nonstandard Linux extension."
 msgstr "B<accept4>()  は非標準の Linux による拡張である。"
 
 #.  Some testing seems to show that Tru64 5.1 and HP-UX 11 also
 #.  do not inherit file status flags -- MTK Jun 05
 #. type: Plain text
-#: build/C/man2/accept.2:322
+#: build/C/man2/accept.2:324
 msgid ""
 "On Linux, the new socket returned by B<accept>()  does I<not> inherit file "
 "status flags such as B<O_NONBLOCK> and B<O_ASYNC> from the listening "
@@ -636,29 +644,29 @@ msgstr ""
 "Linux では、 B<accept>()  が返す新しいソケットは listen を行っているソケット"
 "の ファイル状態フラグ (B<O_NONBLOCK> や B<O_ASYNC> など) を継承「しない」。 "
 "この動作は標準的な BSD ソケットの実装とは異なっている。 移植性を考慮したプロ"
-"グラムではファイル状態フラグが継承されるかどうかは 前提にせず、常に B<accept>"
-"()  が返したソケットに対して全ての必要なフラグを明示的に設定するように すべき"
-"である。"
+"グラムではファイル状態フラグが継承されるかどうかは 前提にせず、常に "
+"B<accept>()  が返したソケットに対して全ての必要なフラグを明示的に設定するよう"
+"ã\81« ã\81\99ã\81¹ã\81\8dã\81§ã\81\82ã\82\8bã\80\82"
 
 #. type: SH
-#: build/C/man2/accept.2:322 build/C/man2/bind.2:232
-#: build/C/man3/bindresvport.3:92 build/C/man2/connect.2:239
-#: build/C/man3/getifaddrs.3:185 build/C/man2/getsockname.2:101
-#: build/C/man2/getsockopt.2:176 build/C/man2/listen.2:109
-#: build/C/man2/recv.2:453 build/C/man2/select.2:342
-#: build/C/man2/select_tut.2:501 build/C/man2/send.2:377
-#: build/C/man2/sendmmsg.2:153 build/C/man3/sockatmark.3:71
-#: build/C/man2/socket.2:364 build/C/man7/socket.7:711
-#: build/C/man2/socketcall.2:46 build/C/man2/socketpair.2:101
+#: build/C/man2/accept.2:324 build/C/man2/bind.2:244
+#: build/C/man3/bindresvport.3:107 build/C/man2/connect.2:253
+#: build/C/man3/getifaddrs.3:190 build/C/man2/getsockname.2:103
+#: build/C/man2/getsockopt.2:178 build/C/man2/listen.2:124
+#: build/C/man2/recv.2:486 build/C/man2/select.2:364
+#: build/C/man2/select_tut.2:503 build/C/man2/send.2:414
+#: build/C/man2/sendmmsg.2:153 build/C/man3/sockatmark.3:80
+#: build/C/man2/socket.2:362 build/C/man7/socket.7:929
+#: build/C/man2/socketcall.2:45 build/C/man2/socketpair.2:103
 #, no-wrap
 msgid "NOTES"
 msgstr "注意"
 
 #. type: Plain text
-#: build/C/man2/accept.2:328 build/C/man2/bind.2:238
-#: build/C/man2/connect.2:245 build/C/man2/getsockopt.2:182
-#: build/C/man2/listen.2:135 build/C/man2/socket.2:370
-#: build/C/man2/socketpair.2:122
+#: build/C/man2/accept.2:330 build/C/man2/bind.2:250
+#: build/C/man2/connect.2:259 build/C/man2/getsockopt.2:184
+#: build/C/man2/listen.2:150 build/C/man2/socket.2:368
+#: build/C/man2/socketpair.2:124
 msgid ""
 "POSIX.1-2001 does not require the inclusion of I<E<lt>sys/types.hE<gt>>, and "
 "this header file is not required on Linux.  However, some historical (BSD) "
@@ -666,18 +674,18 @@ msgid ""
 "probably wise to include it."
 msgstr ""
 "POSIX.1-2001 では I<E<lt>sys/types.hE<gt>> のインクルードは必須とされておら"
-"ã\81\9aã\80\81 Linux ã\81§ã\81¯ã\81\93ã\81®ã\83\98ã\83\83ã\83\80ã\83\95ã\82¡ã\82¤ã\83«ã\81¯å¿\85è¦\81ã\81§ã\81¯ã\81ªã\81\84ã\80\82 ã\81\97ã\81\8bã\81\97ã\80\81æ­´å\8f²ç\9a\84ã\81«ã\81¯ã\80\81ã\81\84ã\81\8fã\81¤"
-"ã\81\8bã\81®å®\9fè£\85 (BSD ç³») ã\81§ã\81\93ã\81®ã\83\98ã\83\83ã\83\80ã\83\95ã\82¡ã\82¤ã\83«ã\81\8c å¿\85è¦\81ã\81§ã\81\82ã\82\8aã\80\81移æ¤\8dæ\80§ã\81\8cå¿\85è¦\81ã\81ªã\82¢ã\83\97ã\83ªã\82±ã\83¼"
-"ションではこのファイルを インクルードするのが賢明であろう。"
+"ã\81\9aã\80\81 Linux ã\81§ã\81¯ã\81\93ã\81®ã\83\98ã\83\83ã\83\80ã\83¼ã\83\95ã\82¡ã\82¤ã\83«ã\81¯å¿\85è¦\81ã\81§ã\81¯ã\81ªã\81\84ã\80\82 ã\81\97ã\81\8bã\81\97ã\80\81æ­´å\8f²ç\9a\84ã\81«ã\81¯ã\80\81ã\81\84ã\81\8f"
+"ã\81¤ã\81\8bã\81®å®\9fè£\85 (BSD ç³») ã\81§ã\81\93ã\81®ã\83\98ã\83\83ã\83\80ã\83¼ã\83\95ã\82¡ã\82¤ã\83«ã\81\8c å¿\85è¦\81ã\81§ã\81\82ã\82\8aã\80\81移æ¤\8dæ\80§ã\81\8cå¿\85è¦\81ã\81ªã\82¢ã\83\97ã\83ª"
+"ã\82±ã\83¼ã\82·ã\83§ã\83³ã\81§ã\81¯ã\81\93ã\81®ã\83\95ã\82¡ã\82¤ã\83«ã\82\92 ã\82¤ã\83³ã\82¯ã\83«ã\83¼ã\83\89ã\81\99ã\82\8bã\81®ã\81\8cè³¢æ\98\8eã\81§ã\81\82ã\82\8dã\81\86ã\80\82"
 
 #. type: Plain text
-#: build/C/man2/accept.2:349
+#: build/C/man2/accept.2:351
 msgid ""
 "There may not always be a connection waiting after a B<SIGIO> is delivered "
 "or B<select>(2)  or B<poll>(2)  return a readability event because the "
 "connection might have been removed by an asynchronous network error or "
-"another thread before B<accept>()  is called.  If this happens then the call "
-"will block waiting for the next connection to arrive.  To ensure that "
+"another thread before B<accept>()  is called.  If this happens, then the "
+"call will block waiting for the next connection to arrive.  To ensure that "
 "B<accept>()  never blocks, the passed socket I<sockfd> needs to have the "
 "B<O_NONBLOCK> flag set (see B<socket>(7))."
 msgstr ""
@@ -691,13 +699,13 @@ msgstr ""
 "見よ)。"
 
 #. type: SS
-#: build/C/man2/accept.2:349
+#: build/C/man2/accept.2:351
 #, no-wrap
 msgid "The socklen_t type"
 msgstr "socklen_t 型"
 
 #. type: Plain text
-#: build/C/man2/accept.2:359
+#: build/C/man2/accept.2:361
 msgid ""
 "The third argument of B<accept>()  was originally declared as an I<int *> "
 "(and is that under libc4 and libc5 and on many other systems like 4.x BSD, "
@@ -715,7 +723,7 @@ msgstr ""
 
 #.  .I fails: only italicizes a single line
 #. type: Plain text
-#: build/C/man2/accept.2:376
+#: build/C/man2/accept.2:378
 msgid ""
 "\"_Any_ sane library _must_ have \"socklen_t\" be the same size as int.  "
 "Anything else breaks any BSD socket layer stuff.  POSIX initially I<did> "
@@ -734,48 +742,51 @@ msgstr ""
 "なきゃならない。 さもないと BSD ソケット層を破壊することになっちゃう。 POSIX "
 "は最初こいつを size_t にしたんで、 ぼくは彼らに文句をがなりたてた (多分そうい"
 "う人は他にもいたと思う。多くはなかったようだけど)。 こいつを size_t にするの"
-"ã\81¯å®\8cå\85¨ã\81«ã\81\84ã\81\8bã\82\8cã\81¦ã\82\8bã\80\82 ä¾\8bã\81\88ã\81° 64 ã\83\93ã\83\83ã\83\88ã\82¢ã\83¼ã\82­ã\83\86ã\82¯ã\83\81ã\83£ã\81§ã\81¯ã\80\81 size_t ã\81\8c \"int\" "
-"と同じサイズだなんてことはほとんどないからね。 このサイズは \"int\" と 同じで"
-"ã\81ªã\81\8dã\82\83ã\80\8eã\83\80ã\83¡ã\80\8fã\81ªã\82\93ã\81 ã\80\82 BSD ã\82½ã\82±ã\83\83ã\83\88ã\82¤ã\83³ã\82¿ã\83¼ã\83\95ã\82§ã\83¼ã\82¹ã\81£ã\81¦ã\81\84ã\81\86ã\81®ã\81¯ã\81\9dã\81\86ã\81\84ã\81\86ã\82\82ã\81®ã\81ª"
-"ã\82\93ã\81 ã\81\8bã\82\89ã\80\82 ã\81¾ã\81\82ã\81¨ã\82\82ã\81\8bã\81\8f POSIX ã\81®äººã\81\9fã\81¡ã\82\82ã\80\81 \"socklen_t\" ã\82\92ä½\9cã\82\8bã\81¨ã\81\84ã\81\86解決ç­\96ã\82\92"
-"なんとかひねり出した。 そもそも最初から放っておけば良かったんだが、 いじっ"
-"ã\81¡ã\82\83ã\81£ã\81\9f以ä¸\8aã\80\81 å\90\8då\89\8dä»\98ã\81\8dã\81®å\9e\8bã\82\92æ\8c\81ã\81\9fã\81\9bã\81ªã\81\8dã\82\83ã\81ªã\82\89ã\81ªã\81\84ã\80\81ã\81¨æ\80\9dã\81£ã\81\9fã\81¿ã\81\9fã\81\84ã\81 ã\81­ã\80\82 ã\81ªã\82\93"
-"ã\81§ã\81\8bã\81¯ã\82\8fã\81\8bã\82\93ã\81ªã\81\84ã\81\91ã\81© (ã\81\8dã\81£ã\81¨æ\9c\80å\88\9dã\81«ã\82\84ã\81£ã\81¡ã\81¾ã\81£ã\81\9f馬鹿ã\81ªé\96\93é\81\95ã\81\84ã\81§é¡\94ã\82\92ã\81¤ã\81¶ã\81\97ã\81\9fã\81\8fã\81ª"
-"ã\81\8bã\81£ã\81\9fã\81\8bã\82\89ã\80\81 ã\81\93ã\81£ã\81\9dã\82\8aå\90\8då\89\8dã\82\92ä»\98ã\81\91æ\9b¿ã\81\88ã\81¦è\87ªå\88\86ã\81\9fã\81¡ã\81®å¤§å¤±æ\95\97ã\82\92ã\81\94ã\81¾ã\81\8bã\81\9dã\81\86ã\81¨ã\81\97ã\81\9fã\82\93ã\81 ã\82\8d"
-"う)。」"
+"ã\81¯å®\8cå\85¨ã\81«ã\81\84ã\81\8bã\82\8cã\81¦ã\82\8bã\80\82 ä¾\8bã\81\88ã\81° 64 ã\83\93ã\83\83ã\83\88ã\82¢ã\83¼ã\82­ã\83\86ã\82¯ã\83\81ã\83£ã\83¼ã\81§ã\81¯ã\80\81 size_t ã\81\8c \"int"
+"\" と同じサイズだなんてことはほとんどないからね。 このサイズは \"int\" と 同"
+"ã\81\98ã\81§ã\81ªã\81\8dã\82\83ã\80\8eã\83\80ã\83¡ã\80\8fã\81ªã\82\93ã\81 ã\80\82 BSD ã\82½ã\82±ã\83\83ã\83\88ã\82¤ã\83³ã\82¿ã\83¼ã\83\95ã\82§ã\83¼ã\82¹ã\81£ã\81¦ã\81\84ã\81\86ã\81®ã\81¯ã\81\9dã\81\86ã\81\84ã\81\86ã\82\82"
+"ã\81®ã\81ªã\82\93ã\81 ã\81\8bã\82\89ã\80\82 ã\81¾ã\81\82ã\81¨ã\82\82ã\81\8bã\81\8f POSIX ã\81®äººã\81\9fã\81¡ã\82\82ã\80\81 \"socklen_t\" ã\82\92ä½\9cã\82\8bã\81¨ã\81\84ã\81\86解決"
+"策をなんとかひねり出した。 そもそも最初から放っておけば良かったんだが、 い"
+"ã\81\98ã\81£ã\81¡ã\82\83ã\81£ã\81\9f以ä¸\8aã\80\81 å\90\8då\89\8dä»\98ã\81\8dã\81®å\9e\8bã\82\92æ\8c\81ã\81\9fã\81\9bã\81ªã\81\8dã\82\83ã\81ªã\82\89ã\81ªã\81\84ã\80\81ã\81¨æ\80\9dã\81£ã\81\9fã\81¿ã\81\9fã\81\84ã\81 ã\81­ã\80\82 "
+"ã\81ªã\82\93ã\81§ã\81\8bã\81¯ã\82\8fã\81\8bã\82\93ã\81ªã\81\84ã\81\91ã\81© (ã\81\8dã\81£ã\81¨æ\9c\80å\88\9dã\81«ã\82\84ã\81£ã\81¡ã\81¾ã\81£ã\81\9f馬鹿ã\81ªé\96\93é\81\95ã\81\84ã\81§é¡\94ã\82\92ã\81¤ã\81¶ã\81\97ã\81\9f"
+"ã\81\8fã\81ªã\81\8bã\81£ã\81\9fã\81\8bã\82\89ã\80\81 ã\81\93ã\81£ã\81\9dã\82\8aå\90\8då\89\8dã\82\92ä»\98ã\81\91æ\9b¿ã\81\88ã\81¦è\87ªå\88\86ã\81\9fã\81¡ã\81®å¤§å¤±æ\95\97ã\82\92ã\81\94ã\81¾ã\81\8bã\81\9dã\81\86ã\81¨ã\81\97ã\81\9fã\82\93"
+"ã\81 ã\82\8dã\81\86\80\82ã\80\8d"
 
 #. type: SH
-#: build/C/man2/accept.2:376 build/C/man2/bind.2:252
-#: build/C/man2/connect.2:256 build/C/man3/getifaddrs.3:198
-#: build/C/man2/listen.2:164 build/C/man2/recv.2:488 build/C/man2/select.2:484
-#: build/C/man2/select_tut.2:527 build/C/man2/send.2:414
-#: build/C/man3/sockatmark.3:95 build/C/man2/socket.2:382
+#: build/C/man2/accept.2:378 build/C/man2/bind.2:264
+#: build/C/man2/connect.2:276 build/C/man3/getifaddrs.3:207
+#: build/C/man3/if_nameindex.3:108 build/C/man2/listen.2:179
+#: build/C/man2/recv.2:511 build/C/man2/recvmmsg.2:172
+#: build/C/man2/select.2:555 build/C/man2/select_tut.2:529
+#: build/C/man2/send.2:438 build/C/man2/sendmmsg.2:168
+#: build/C/man3/sockatmark.3:104 build/C/man2/socket.2:381
 #, no-wrap
 msgid "EXAMPLE"
 msgstr "例"
 
 #. type: Plain text
-#: build/C/man2/accept.2:379 build/C/man2/listen.2:167
+#: build/C/man2/accept.2:381 build/C/man2/listen.2:182
 msgid "See B<bind>(2)."
 msgstr "B<bind>(2)  参照。"
 
 #. type: SH
-#: build/C/man2/accept.2:379 build/C/man2/bind.2:317
-#: build/C/man3/bindresvport.3:98 build/C/man2/connect.2:261
-#: build/C/man3/getifaddrs.3:281 build/C/man2/getsockname.2:110
-#: build/C/man2/getsockopt.2:200 build/C/man2/listen.2:167
-#: build/C/man2/recv.2:493 build/C/man2/recvmmsg.2:165
-#: build/C/man2/select.2:521 build/C/man2/select_tut.2:817
-#: build/C/man2/send.2:419 build/C/man2/sendmmsg.2:168
-#: build/C/man3/sockatmark.3:130 build/C/man2/socket.2:387
-#: build/C/man7/socket.7:742 build/C/man2/socketcall.2:54
-#: build/C/man2/socketpair.2:122
+#: build/C/man2/accept.2:381 build/C/man2/bind.2:329
+#: build/C/man3/bindresvport.3:113 build/C/man2/connect.2:281
+#: build/C/man3/getifaddrs.3:309 build/C/man2/getsockname.2:114
+#: build/C/man2/getsockopt.2:202 build/C/man3/if_nameindex.3:147
+#: build/C/man3/if_nametoindex.3:96 build/C/man2/listen.2:182
+#: build/C/man2/recv.2:516 build/C/man2/recvmmsg.2:278
+#: build/C/man2/select.2:592 build/C/man2/select_tut.2:821
+#: build/C/man2/send.2:443 build/C/man2/sendmmsg.2:236
+#: build/C/man3/sockatmark.3:139 build/C/man2/socket.2:386
+#: build/C/man7/socket.7:960 build/C/man2/socketcall.2:53
+#: build/C/man2/socketpair.2:124
 #, no-wrap
 msgid "SEE ALSO"
 msgstr "関連項目"
 
 #. type: Plain text
-#: build/C/man2/accept.2:385
+#: build/C/man2/accept.2:388
 msgid ""
 "B<bind>(2), B<connect>(2), B<listen>(2), B<select>(2), B<socket>(2), "
 "B<socket>(7)"
@@ -783,25 +794,63 @@ msgstr ""
 "B<bind>(2), B<connect>(2), B<listen>(2), B<select>(2), B<socket>(2), "
 "B<socket>(7)"
 
+#. type: SH
+#: build/C/man2/accept.2:388 build/C/man2/bind.2:342
+#: build/C/man3/bindresvport.3:116 build/C/man2/connect.2:288
+#: build/C/man3/getifaddrs.3:315 build/C/man2/getsockname.2:121
+#: build/C/man2/getsockopt.2:213 build/C/man3/if_nameindex.3:154
+#: build/C/man3/if_nametoindex.3:100 build/C/man2/listen.2:188
+#: build/C/man2/recv.2:527 build/C/man2/recvmmsg.2:285
+#: build/C/man2/select.2:607 build/C/man2/select_tut.2:840
+#: build/C/man2/send.2:458 build/C/man2/sendmmsg.2:241
+#: build/C/man3/sockatmark.3:144 build/C/man2/socket.2:415
+#: build/C/man7/socket.7:972 build/C/man2/socketcall.2:71
+#: build/C/man2/socketpair.2:131
+#, no-wrap
+msgid "COLOPHON"
+msgstr "この文書について"
+
+#. type: Plain text
+#: build/C/man2/accept.2:396 build/C/man2/bind.2:350
+#: build/C/man3/bindresvport.3:124 build/C/man2/connect.2:296
+#: build/C/man3/getifaddrs.3:323 build/C/man2/getsockname.2:129
+#: build/C/man2/getsockopt.2:221 build/C/man3/if_nameindex.3:162
+#: build/C/man3/if_nametoindex.3:108 build/C/man2/listen.2:196
+#: build/C/man2/recv.2:535 build/C/man2/recvmmsg.2:293
+#: build/C/man2/select.2:615 build/C/man2/select_tut.2:848
+#: build/C/man2/send.2:466 build/C/man2/sendmmsg.2:249
+#: build/C/man3/sockatmark.3:152 build/C/man2/socket.2:423
+#: build/C/man7/socket.7:980 build/C/man2/socketcall.2:79
+#: build/C/man2/socketpair.2:139
+msgid ""
+"This page is part of release 3.78 of the Linux I<man-pages> project.  A "
+"description of the project, information about reporting bugs, and the latest "
+"version of this page, can be found at \\%http://www.kernel.org/doc/man-"
+"pages/."
+msgstr ""
+"この man ページは Linux I<man-pages> プロジェクトのリリース 3.78 の一部\n"
+"である。プロジェクトの説明とバグ報告に関する情報は\n"
+"http://www.kernel.org/doc/man-pages/ に書かれている。"
+
 #. type: TH
-#: build/C/man2/bind.2:66
+#: build/C/man2/bind.2:68
 #, no-wrap
 msgid "BIND"
 msgstr "BIND"
 
 #. type: TH
-#: build/C/man2/bind.2:66
+#: build/C/man2/bind.2:68 build/C/man2/recv.2:41 build/C/man2/send.2:40
 #, no-wrap
-msgid "2007-12-28"
-msgstr "2007-12-28"
+msgid "2014-08-19"
+msgstr "2014-08-19"
 
 #. type: Plain text
-#: build/C/man2/bind.2:69
+#: build/C/man2/bind.2:71
 msgid "bind - bind a name to a socket"
 msgstr "bind - ソケットに名前をつける"
 
 #. type: Plain text
-#: build/C/man2/bind.2:76
+#: build/C/man2/bind.2:78
 #, no-wrap
 msgid ""
 "B<int bind(int >I<sockfd>B<, const struct sockaddr *>I<addr>B<,>\n"
@@ -811,24 +860,24 @@ msgstr ""
 "B<         socklen_t >I<addrlen>B<);>\n"
 
 #. type: Plain text
-#: build/C/man2/bind.2:90
+#: build/C/man2/bind.2:92
 msgid ""
 "When a socket is created with B<socket>(2), it exists in a name space "
 "(address family) but has no address assigned to it.  B<bind>()  assigns the "
-"address specified to by I<addr> to the socket referred to by the file "
+"address specified by I<addr> to the socket referred to by the file "
 "descriptor I<sockfd>.  I<addrlen> specifies the size, in bytes, of the "
 "address structure pointed to by I<addr>.  Traditionally, this operation is "
 "called \\(lqassigning a name to a socket\\(rq."
 msgstr ""
-"B<socket>(2)  でソケットが作成されたとき、そのソケットは名前空間 (アドレス"
+"B<socket>(2)  でソケットが作成されたとき、そのソケットは名前空間 (アドレス"
 "ファミリー) に 存在するが、アドレスは割り当てられていない。 B<bind>()  は、"
-"ファイルディスクリプタ I<sockfd> で参照されるソケットに I<addr> で指定された"
-"ã\82¢ã\83\89ã\83¬ã\82¹ã\82\92å\89²ã\82\8aå½\93ã\81¦ã\82\8bã\80\82 I<addrlen> ã\81«ã\81¯ I<addr> ã\81\8cæ\8c\87ã\81\99ã\82¢ã\83\89ã\83¬ã\82¹æ§\8bé\80 ä½\93ã\81®ã\82µã\82¤ã\82ºã\82\92"
-"ã\83\90ã\82¤ã\83\88å\8d\98ä½\8dã\81§æ\8c\87å®\9aã\81\99ã\82\8bã\80\82 ä¼\9dçµ±ç\9a\84ã\81«ã\81\93ã\81®æ\93\8dä½\9cã\81¯ ã\80\8cã\82½ã\82±ã\83\83ã\83\88ã\81«å\90\8då\89\8dã\82\92ã\81¤ã\81\91ã\82\8bã\80\8d ã\81¨å\91¼ã\81°ã\82\8c"
-"る。"
+"ファイルディスクリプター I<sockfd> で参照されるソケットに I<addr> で指定され"
+"ã\81\9fã\82¢ã\83\89ã\83¬ã\82¹ã\82\92å\89²ã\82\8aå½\93ã\81¦ã\82\8bã\80\82 I<addrlen> ã\81«ã\81¯ I<addr> ã\81\8cæ\8c\87ã\81\99ã\82¢ã\83\89ã\83¬ã\82¹æ§\8bé\80 ä½\93ã\81®ã\82µã\82¤ã\82º"
+"ã\82\92ã\83\90ã\82¤ã\83\88å\8d\98ä½\8dã\81§æ\8c\87å®\9aã\81\99ã\82\8bã\80\82 ä¼\9dçµ±ç\9a\84ã\81«ã\81\93ã\81®æ\93\8dä½\9cã\81¯ ã\80\8cã\82½ã\82±ã\83\83ã\83\88ã\81«å\90\8då\89\8dã\82\92ã\81¤ã\81\91ã\82\8bã\80\8d ã\81¨å\91¼ã\81°"
+"ã\82\8cã\82\8bã\80\82"
 
 #. type: Plain text
-#: build/C/man2/bind.2:97
+#: build/C/man2/bind.2:99
 msgid ""
 "It is normally necessary to assign a local address using B<bind>()  before a "
 "B<SOCK_STREAM> socket may receive connections (see B<accept>(2))."
@@ -838,7 +887,7 @@ msgstr ""
 "る。"
 
 #. type: Plain text
-#: build/C/man2/bind.2:128
+#: build/C/man2/bind.2:130
 msgid ""
 "The rules used in name binding vary between address families.  Consult the "
 "manual entries in Section 7 for detailed information.  For B<AF_INET> see "
@@ -846,23 +895,23 @@ msgid ""
 "B<AF_APPLETALK> see B<ddp>(7), for B<AF_PACKET> see B<packet>(7), for "
 "B<AF_X25> see B<x25>(7)  and for B<AF_NETLINK> see B<netlink>(7)."
 msgstr ""
-"å\90\8då\89\8dä»\98ã\81\91ã\81®ã\83«ã\83¼ã\83«ã\81¯ã\82¢ã\83\89ã\83¬ã\82¹ã\83»ã\83\95ã\82¡ã\83\9fã\83ªã\83¼ã\81\94ã\81¨ã\81«ç\95°ã\81ªã\81£ã\81¦ã\81\84ã\82\8bã\80\82詳細ã\81ªæ\83\85å ±ã\81¯ ç¬¬ 7 "
-"の各マニュアルを参照すること。 B<AF_INET> は B<ip>(7)  を、 B<AF_INET6> は "
-"B<ipv6>(7)  を、 B<AF_UNIX> は B<unix>(7)  を、 B<AF_APPLETALK> は B<ddp>"
-"(7)  を、 B<AF_PACKET> は B<packet>(7)  を、 B<AF_X25> は B<x25>(7)  を、 "
-"B<AF_NETLINK> は B<netlink>(7)  を参照。"
+"å\90\8då\89\8dä»\98ã\81\91ã\81®ã\83«ã\83¼ã\83«ã\81¯ã\82¢ã\83\89ã\83¬ã\82¹ã\83\95ã\82¡ã\83\9fã\83ªã\83¼ã\81\94ã\81¨ã\81«ç\95°ã\81ªã\81£ã\81¦ã\81\84ã\82\8bã\80\82詳細ã\81ªæ\83\85å ±ã\81¯ ç¬¬ 7 ç« "
+"の各マニュアルを参照すること。 B<AF_INET> は B<ip>(7)  を、 B<AF_INET6> は "
+"B<ipv6>(7)  を、 B<AF_UNIX> は B<unix>(7)  を、 B<AF_APPLETALK> は "
+"B<ddp>(7)  を、 B<AF_PACKET> は B<packet>(7)  を、 B<AF_X25> は B<x25>(7)  "
+"を、 B<AF_NETLINK> は B<netlink>(7)  を参照。"
 
 #. type: Plain text
-#: build/C/man2/bind.2:135
+#: build/C/man2/bind.2:137
 msgid ""
 "The actual structure passed for the I<addr> argument will depend on the "
 "address family.  The I<sockaddr> structure is defined as something like:"
 msgstr ""
-"I<addr> å¼\95ã\81\8dæ\95°ã\81«å®\9fé\9a\9bã\81«ã\81©ã\81®ã\82\88ã\81\86ã\81ªæ§\8bé\80 ä½\93ã\81\8c渡ã\81\95ã\82\8cã\82\8bã\81\8bã\81¯ã\80\81 ã\82¢ã\83\89ã\83¬ã\82¹ã\83»ã\83\95ã\82¡ã\83\9fã\83ªã\83¼ã\81«"
-"存する。 I<sockaddr> 構造体は以下のような感じで定義されている:"
+"I<addr> å¼\95ã\81\8dæ\95°ã\81«å®\9fé\9a\9bã\81«ã\81©ã\81®ã\82\88ã\81\86ã\81ªæ§\8bé\80 ä½\93ã\81\8c渡ã\81\95ã\82\8cã\82\8bã\81\8bã\81¯ã\80\81 ã\82¢ã\83\89ã\83¬ã\82¹ã\83\95ã\82¡ã\83\9fã\83ªã\83¼ã\81«ä¾\9d"
+"存する。 I<sockaddr> 構造体は以下のような感じで定義されている:"
 
 #. type: Plain text
-#: build/C/man2/bind.2:142
+#: build/C/man2/bind.2:144
 #, no-wrap
 msgid ""
 "struct sockaddr {\n"
@@ -876,18 +925,18 @@ msgstr ""
 "}\n"
 
 #. type: Plain text
-#: build/C/man2/bind.2:150
+#: build/C/man2/bind.2:152
 msgid ""
 "The only purpose of this structure is to cast the structure pointer passed "
 "in I<addr> in order to avoid compiler warnings.  See EXAMPLE below."
 msgstr ""
-"ã\81\93ã\81®æ§\8bé\80 ä½\93ã\81¯ã\80\81 I<addr> ã\81«æ¸¡ã\81\95ã\82\8cã\82\8bæ§\8bé\80 ä½\93ã\81¸ã\81®ã\83\9dã\82¤ã\83³ã\82¿ã\82\92ã\82­ã\83£ã\82¹ã\83\88ã\81\97ã\80\81 ã\82³ã\83³ã\83\91ã\82¤ã\83©"
-"の警告メッセージを抑えるためだけに存在する。 下記の「例」を参照。"
+"ã\81\93ã\81®æ§\8bé\80 ä½\93ã\81¯ã\80\81 I<addr> ã\81«æ¸¡ã\81\95ã\82\8cã\82\8bæ§\8bé\80 ä½\93ã\81¸ã\81®ã\83\9dã\82¤ã\83³ã\82¿ã\83¼ã\82\92ã\82­ã\83£ã\82¹ã\83\88ã\81\97ã\80\81 ã\82³ã\83³ã\83\91ã\82¤"
+"ã\83©ã\81®è­¦å\91\8aã\83¡ã\83\83ã\82»ã\83¼ã\82¸ã\82\92æ\8a\91ã\81\88ã\82\8bã\81\9fã\82\81ã\81 ã\81\91ã\81«å­\98å\9c¨ã\81\99ã\82\8bã\80\82 ä¸\8bè¨\98ã\81®ã\80\8cä¾\8bã\80\8dã\82\92å\8f\82ç\85§ã\80\82"
 
 #. type: Plain text
-#: build/C/man2/bind.2:155 build/C/man2/getsockname.2:70
-#: build/C/man2/getsockopt.2:134 build/C/man2/listen.2:85
-#: build/C/man2/socketpair.2:72
+#: build/C/man2/bind.2:157 build/C/man2/getsockname.2:72
+#: build/C/man2/getsockopt.2:136 build/C/man2/listen.2:87
+#: build/C/man2/socketpair.2:74
 msgid ""
 "On success, zero is returned.  On error, -1 is returned, and I<errno> is set "
 "appropriately."
@@ -896,153 +945,172 @@ msgstr ""
 "設定される。"
 
 #. type: TP
-#: build/C/man2/bind.2:156 build/C/man2/bind.2:180
-#: build/C/man3/bindresvport.3:74 build/C/man2/connect.2:133
-#: build/C/man2/send.2:283 build/C/man2/socket.2:318
+#: build/C/man2/bind.2:158 build/C/man2/bind.2:199
+#: build/C/man3/bindresvport.3:77 build/C/man2/connect.2:135
+#: build/C/man2/send.2:304 build/C/man2/socket.2:316
 #, no-wrap
 msgid "B<EACCES>"
 msgstr "B<EACCES>"
 
 #.  e.g., privileged port in AF_INET domain
 #. type: Plain text
-#: build/C/man2/bind.2:160
+#: build/C/man2/bind.2:162
 msgid "The address is protected, and the user is not the superuser."
-msgstr "ã\81\9dã\81®ã\82¢ã\83\89ã\83¬ã\82¹ã\81¯ä¿\9dè­·ã\81\95ã\82\8cã\81¦ã\81\84ã\81¦ã\80\81ã\81\8bã\81¤ã\83¦ã\83¼ã\82¶ã\81\8cã\82¹ã\83¼ã\83\91ã\83¼ã\83¦ã\83¼ã\82ではない。"
+msgstr "ã\81\9dã\81®ã\82¢ã\83\89ã\83¬ã\82¹ã\81¯ä¿\9dè­·ã\81\95ã\82\8cã\81¦ã\81\84ã\81¦ã\80\81ã\81\8bã\81¤ã\83¦ã\83¼ã\82¶ã\83¼ã\81\8cã\82¹ã\83¼ã\83\91ã\83¼ã\83¦ã\83¼ã\82¶ã\83¼ではない。"
 
 #. type: TP
-#: build/C/man2/bind.2:160 build/C/man3/bindresvport.3:79
-#: build/C/man2/connect.2:146 build/C/man2/listen.2:86
+#: build/C/man2/bind.2:162 build/C/man2/bind.2:165
+#: build/C/man3/bindresvport.3:82 build/C/man2/connect.2:148
+#: build/C/man2/listen.2:88 build/C/man2/listen.2:91
 #, no-wrap
 msgid "B<EADDRINUSE>"
 msgstr "B<EADDRINUSE>"
 
 #. type: Plain text
-#: build/C/man2/bind.2:163
+#: build/C/man2/bind.2:165
 msgid "The given address is already in use."
 msgstr "指定されたアドレスが既に使用中である。"
 
 #. type: Plain text
-#: build/C/man2/bind.2:167
+#: build/C/man2/bind.2:175
+msgid ""
+"(Internet domain sockets)  The port number was specified as zero in the "
+"socket address structure, but, upon attempting to bind to an ephemeral port, "
+"it was determined that all port numbers in the ephemeral port range are "
+"currently in use.  See the discussion of I</proc/sys/net/ipv4/"
+"ip_local_port_range> B<ip>(7)."
+msgstr ""
+"(インターネットドメインソケットの場合) ソケットアドレス構造体でポート番号に "
+"0 が指定されたが、 一時ポート (ephemeral port) を割り当てようとした際に、 一"
+"時ポートとして使用する範囲のすべてのポート番号が使用中であった。 B<ip>(7) の "
+"I</proc/sys/net/ipv4/ip_local_port_range> の説明を参照。"
+
+#. type: Plain text
+#: build/C/man2/bind.2:180
 msgid "I<sockfd> is not a valid descriptor."
-msgstr "I<sockfd> が不正なディスクリプタである。"
+msgstr "I<sockfd> ã\81\8cä¸\8dæ­£ã\81ªã\83\87ã\82£ã\82¹ã\82¯ã\83ªã\83\97ã\82¿ã\83¼ã\81§ã\81\82ã\82\8bã\80\82"
 
 #.  This may change in the future: see
 #.  .I linux/unix/sock.c for details.
 #. type: Plain text
-#: build/C/man2/bind.2:172
+#: build/C/man2/bind.2:185
 msgid "The socket is already bound to an address."
 msgstr "ソケットがすでにアドレスに結びつけ (bind) られている。"
 
 #. type: Plain text
-#: build/C/man2/bind.2:176
+#: build/C/man2/bind.2:191
+msgid ""
+"I<addrlen> is wrong, or I<addr> is not a valid address for this socket's "
+"domain."
+msgstr ""
+"I<addrlen> が間違っているか、 I<addr> がこのソケットのドメインで有効なアドレ"
+"スではない。"
+
+#. type: Plain text
+#: build/C/man2/bind.2:195
 msgid "I<sockfd> is a descriptor for a file, not a socket."
 msgstr ""
-"I<sockfd> がファイルに対するディスクリプタで、ソケットに対するものではない。"
+"I<sockfd> がファイルに対するディスクリプターで、ソケットに対するものではな"
+"い。"
 
 #. type: Plain text
-#: build/C/man2/bind.2:180
+#: build/C/man2/bind.2:199
 msgid "The following errors are specific to UNIX domain (B<AF_UNIX>)  sockets:"
 msgstr "以下のエラーは UNIXドメイン (B<AF_UNIX>)  のソケット特有である:"
 
 #. type: Plain text
-#: build/C/man2/bind.2:185
+#: build/C/man2/bind.2:204
 msgid ""
 "Search permission is denied on a component of the path prefix.  (See also "
 "B<path_resolution>(7).)"
 msgstr ""
-"パス名の構成要素に検索許可 (search permission) がない (B<path_resolution>"
-"(7)  も参照すること)。"
+"パス名の構成要素に検索許可 (search permission) がない "
+"(B<path_resolution>(7)  も参照すること)。"
 
 #. type: TP
-#: build/C/man2/bind.2:185
+#: build/C/man2/bind.2:204 build/C/man2/connect.2:151
 #, no-wrap
 msgid "B<EADDRNOTAVAIL>"
 msgstr "B<EADDRNOTAVAIL>"
 
 #. type: Plain text
-#: build/C/man2/bind.2:189
+#: build/C/man2/bind.2:208
 msgid ""
 "A nonexistent interface was requested or the requested address was not local."
 msgstr ""
-"存在しないインタフェースが要求されたか、要求されたアドレスが ローカルではな"
+"å­\98å\9c¨ã\81\97ã\81ªã\81\84ã\82¤ã\83³ã\82¿ã\83¼ã\83\95ã\82§ã\83¼ã\82¹ã\81\8cè¦\81æ±\82ã\81\95ã\82\8cã\81\9fã\81\8bã\80\81è¦\81æ±\82ã\81\95ã\82\8cã\81\9fã\82¢ã\83\89ã\83¬ã\82¹ã\81\8c ã\83­ã\83¼ã\82«ã\83«ã\81§ã\81¯ã\81ª"
 "かった。"
 
 #. type: Plain text
-#: build/C/man2/bind.2:193
+#: build/C/man2/bind.2:212
 msgid "I<addr> points outside the user's accessible address space."
-msgstr "I<addr> がユーザのアクセス可能なアドレス空間の外を指している。"
-
-#. type: Plain text
-#: build/C/man2/bind.2:200
-msgid ""
-"The I<addrlen> is wrong, or the socket was not in the B<AF_UNIX> family."
-msgstr "I<addrlen> が不正であるか、ソケットが B<AF_UNIX> ファミリーではない。"
+msgstr "I<addr> がユーザーのアクセス可能なアドレス空間の外を指している。"
 
 #. type: TP
-#: build/C/man2/bind.2:200
+#: build/C/man2/bind.2:212
 #, no-wrap
 msgid "B<ELOOP>"
 msgstr "B<ELOOP>"
 
 #. type: Plain text
-#: build/C/man2/bind.2:204
+#: build/C/man2/bind.2:216
 msgid "Too many symbolic links were encountered in resolving I<addr>."
-msgstr "I<addr> ã\82\92解決ã\81\99ã\82\8bé\9a\9bã\81«é\81­é\81\87ã\81\97ã\81\9fã\82·ã\83³ã\83\9cã\83ªã\83\83ã\82¯ã\83»ã\83ªã\83³ã\82¯ã\81\8cå¤\9aé\81\8eã\81\8eã\82\8bã\80\82"
+msgstr "I<addr> を解決する際に遭遇したシンボリックリンクが多過ぎる。"
 
 #. type: TP
-#: build/C/man2/bind.2:204
+#: build/C/man2/bind.2:216
 #, no-wrap
 msgid "B<ENAMETOOLONG>"
 msgstr "B<ENAMETOOLONG>"
 
 #. type: Plain text
-#: build/C/man2/bind.2:208
+#: build/C/man2/bind.2:220
 msgid "I<addr> is too long."
 msgstr "I<addr> が長過ぎる。"
 
 #. type: TP
-#: build/C/man2/bind.2:208
+#: build/C/man2/bind.2:220
 #, no-wrap
 msgid "B<ENOENT>"
 msgstr "B<ENOENT>"
 
 #. type: Plain text
-#: build/C/man2/bind.2:211
+#: build/C/man2/bind.2:223
 msgid "The file does not exist."
 msgstr "ファイルが存在しない。"
 
 #. type: TP
-#: build/C/man2/bind.2:211 build/C/man2/recv.2:427 build/C/man2/select.2:318
-#: build/C/man2/send.2:338
+#: build/C/man2/bind.2:223 build/C/man2/recv.2:460 build/C/man2/select.2:340
+#: build/C/man2/send.2:375
 #, no-wrap
 msgid "B<ENOMEM>"
 msgstr "B<ENOMEM>"
 
 #. type: Plain text
-#: build/C/man2/bind.2:214
+#: build/C/man2/bind.2:226
 msgid "Insufficient kernel memory was available."
 msgstr "カーネルに、利用可能なメモリーが十分にない。"
 
 #. type: TP
-#: build/C/man2/bind.2:214
+#: build/C/man2/bind.2:226
 #, no-wrap
 msgid "B<ENOTDIR>"
 msgstr "B<ENOTDIR>"
 
 #. type: Plain text
-#: build/C/man2/bind.2:217
+#: build/C/man2/bind.2:229
 msgid "A component of the path prefix is not a directory."
 msgstr "パス名の構成要素がディレクトリではない。"
 
 #. type: TP
-#: build/C/man2/bind.2:217
+#: build/C/man2/bind.2:229
 #, no-wrap
 msgid "B<EROFS>"
 msgstr "B<EROFS>"
 
 #. type: Plain text
-#: build/C/man2/bind.2:220
-msgid "The socket inode would reside on a read-only file system."
+#: build/C/man2/bind.2:232
+msgid "The socket inode would reside on a read-only filesystem."
 msgstr "ソケット inode が読み込み専用のファイルシステム上にある。"
 
 #.  SVr4 documents an additional
@@ -1054,12 +1122,12 @@ msgstr "ソケット inode が読み込み専用のファイルシステム上
 #.  .B EISDIR
 #.  UNIX-domain error conditions.
 #. type: Plain text
-#: build/C/man2/bind.2:232
+#: build/C/man2/bind.2:244
 msgid "SVr4, 4.4BSD, POSIX.1-2001 (B<bind>()  first appeared in 4.2BSD)."
 msgstr "SVr4, 4.4BSD, POSIX.1-2001 (B<bind>()  は 4.2BSD で最初に現われた)。"
 
 #. type: Plain text
-#: build/C/man2/bind.2:249
+#: build/C/man2/bind.2:261
 msgid ""
 "The third argument of B<bind>()  is in reality an I<int> (and this is what 4."
 "x BSD and libc4 and libc5 have).  Some POSIX confusion resulted in the "
@@ -1070,33 +1138,34 @@ msgstr ""
 "少し混乱がある。 詳しくは B<accept>(2)  を参照のこと。"
 
 #. type: SH
-#: build/C/man2/bind.2:249 build/C/man2/getsockopt.2:197
-#: build/C/man2/select.2:425 build/C/man2/send.2:409
-#: build/C/man3/sockatmark.3:91 build/C/man7/socket.7:729
+#: build/C/man2/bind.2:261 build/C/man2/getsockopt.2:199
+#: build/C/man2/recvmmsg.2:267 build/C/man2/select.2:492
+#: build/C/man2/send.2:433 build/C/man3/sockatmark.3:100
+#: build/C/man7/socket.7:947
 #, no-wrap
 msgid "BUGS"
 msgstr "バグ"
 
-#.  FIXME What *are* transparent proxy options?
+#.  FIXME Document transparent proxy options
 #. type: Plain text
-#: build/C/man2/bind.2:252
+#: build/C/man2/bind.2:264
 msgid "The transparent proxy options are not described."
 msgstr "透過的プロキシ (transparent proxy) オプションについて記述していない。"
 
 #. type: Plain text
-#: build/C/man2/bind.2:257
+#: build/C/man2/bind.2:269
 msgid ""
 "An example of the use of B<bind>()  with Internet domain sockets can be "
 "found in B<getaddrinfo>(3)."
 msgstr ""
-"ã\82¤ã\83³ã\82¿ã\83¼ã\83\8dã\83\83ã\83\88ã\83»ã\83\89ã\83¡ã\82¤ã\83³ã\83»ã\82½ã\82±ã\83\83ã\83\88ã\81§ã\81® B<bind>()  ã\81®å\88©ç\94¨ä¾\8bã\81\8c B<getaddrinfo>"
-"(3)  に記載されている。"
+"ã\82¤ã\83³ã\82¿ã\83¼ã\83\8dã\83\83ã\83\88ã\83\89ã\83¡ã\82¤ã\83³ã\82½ã\82±ã\83\83ã\83\88ã\81§ã\81® B<bind>()  ã\81®å\88©ç\94¨ä¾\8bã\81\8c B<getaddrinfo>(3)  "
+"に記載されている。"
 
 #.  listen.7 refers to this example.
 #.  accept.7 refers to this example.
 #.  unix.7 refers to this example.
 #. type: Plain text
-#: build/C/man2/bind.2:264
+#: build/C/man2/bind.2:276
 msgid ""
 "The following example shows how to bind a stream socket in the UNIX "
 "(B<AF_UNIX>)  domain, and accept connections:"
@@ -1105,7 +1174,7 @@ msgstr ""
 "を示したものである。"
 
 #. type: Plain text
-#: build/C/man2/bind.2:271
+#: build/C/man2/bind.2:283
 #, no-wrap
 msgid ""
 "#include E<lt>sys/socket.hE<gt>\n"
@@ -1121,7 +1190,7 @@ msgstr ""
 "#include E<lt>string.hE<gt>\n"
 
 #. type: Plain text
-#: build/C/man2/bind.2:274
+#: build/C/man2/bind.2:286
 #, no-wrap
 msgid ""
 "#define MY_SOCK_PATH \"/somepath\"\n"
@@ -1131,7 +1200,7 @@ msgstr ""
 "#define LISTEN_BACKLOG 50\n"
 
 #. type: Plain text
-#: build/C/man2/bind.2:277
+#: build/C/man2/bind.2:289
 #, no-wrap
 msgid ""
 "#define handle_error(msg) \\e\n"
@@ -1141,7 +1210,7 @@ msgstr ""
 "    do { perror(msg); exit(EXIT_FAILURE); } while (0)\n"
 
 #. type: Plain text
-#: build/C/man2/bind.2:284
+#: build/C/man2/bind.2:296
 #, no-wrap
 msgid ""
 "int\n"
@@ -1159,7 +1228,7 @@ msgstr ""
 "    socklen_t peer_addr_size;\n"
 
 #. type: Plain text
-#: build/C/man2/bind.2:288
+#: build/C/man2/bind.2:300
 #, no-wrap
 msgid ""
 "    sfd = socket(AF_UNIX, SOCK_STREAM, 0);\n"
@@ -1171,7 +1240,7 @@ msgstr ""
 "        handle_error(\"socket\");\n"
 
 #. type: Plain text
-#: build/C/man2/bind.2:294
+#: build/C/man2/bind.2:306
 #, no-wrap
 msgid ""
 "    memset(&my_addr, 0, sizeof(struct sockaddr_un));\n"
@@ -1187,7 +1256,7 @@ msgstr ""
 "            sizeof(my_addr.sun_path) - 1);\n"
 
 #. type: Plain text
-#: build/C/man2/bind.2:298
+#: build/C/man2/bind.2:310
 #, no-wrap
 msgid ""
 "    if (bind(sfd, (struct sockaddr *) &my_addr,\n"
@@ -1199,7 +1268,7 @@ msgstr ""
 "        handle_error(\"bind\");\n"
 
 #. type: Plain text
-#: build/C/man2/bind.2:301
+#: build/C/man2/bind.2:313
 #, no-wrap
 msgid ""
 "    if (listen(sfd, LISTEN_BACKLOG) == -1)\n"
@@ -1209,7 +1278,7 @@ msgstr ""
 "        handle_error(\"listen\");\n"
 
 #. type: Plain text
-#: build/C/man2/bind.2:304
+#: build/C/man2/bind.2:316
 #, no-wrap
 msgid ""
 "    /* Now we can accept incoming connections one\n"
@@ -1219,7 +1288,7 @@ msgstr ""
 "       at a time using accept(2) */\n"
 
 #. type: Plain text
-#: build/C/man2/bind.2:310
+#: build/C/man2/bind.2:322
 #, no-wrap
 msgid ""
 "    peer_addr_size = sizeof(struct sockaddr_un);\n"
@@ -1235,13 +1304,13 @@ msgstr ""
 "        handle_error(\"accept\");\n"
 
 #. type: Plain text
-#: build/C/man2/bind.2:312
+#: build/C/man2/bind.2:324
 #, no-wrap
 msgid "    /* Code to deal with incoming connection(s)... */\n"
 msgstr "    /* Code to deal with incoming connection(s)... */\n"
 
 #. type: Plain text
-#: build/C/man2/bind.2:316
+#: build/C/man2/bind.2:328
 #, no-wrap
 msgid ""
 "    /* When no longer required, the socket pathname, MY_SOCK_PATH\n"
@@ -1253,37 +1322,35 @@ msgstr ""
 "}\n"
 
 #. type: Plain text
-#: build/C/man2/bind.2:329
+#: build/C/man2/bind.2:342
 msgid ""
 "B<accept>(2), B<connect>(2), B<getsockname>(2), B<listen>(2), B<socket>(2), "
-"B<getaddrinfo>(3), B<getifaddrs>(3), B<ip>(7), B<ipv6>(7), B<path_resolution>"
-"(7), B<socket>(7), B<unix>(7)"
+"B<getaddrinfo>(3), B<getifaddrs>(3), B<ip>(7), B<ipv6>(7), "
+"B<path_resolution>(7), B<socket>(7), B<unix>(7)"
 msgstr ""
 "B<accept>(2), B<connect>(2), B<getsockname>(2), B<listen>(2), B<socket>(2), "
-"B<getaddrinfo>(3), B<getifaddrs>(3), B<ip>(7), B<ipv6>(7), B<path_resolution>"
-"(7), B<socket>(7), B<unix>(7)"
+"B<getaddrinfo>(3), B<getifaddrs>(3), B<ip>(7), B<ipv6>(7), "
+"B<path_resolution>(7), B<socket>(7), B<unix>(7)"
 
 #. type: TH
-#: build/C/man3/bindresvport.3:27
+#: build/C/man3/bindresvport.3:30
 #, no-wrap
 msgid "BINDRESVPORT"
 msgstr "BINDRESVPORT"
 
 #. type: TH
-#: build/C/man3/bindresvport.3:27 build/C/man2/connect.2:65
-#: build/C/man2/getsockname.2:38 build/C/man2/getsockopt.2:42
-#: build/C/man3/sockatmark.3:23
+#: build/C/man3/bindresvport.3:30
 #, no-wrap
-msgid "2008-12-03"
-msgstr "2008-12-03"
+msgid "2013-06-21"
+msgstr "2013-06-21"
 
 #. type: Plain text
-#: build/C/man3/bindresvport.3:30
+#: build/C/man3/bindresvport.3:33
 msgid "bindresvport - bind a socket to a privileged IP port"
 msgstr "bindresvport - ソケットを特権 IP ポートにバインドする"
 
 #. type: Plain text
-#: build/C/man3/bindresvport.3:34
+#: build/C/man3/bindresvport.3:37
 #, no-wrap
 msgid ""
 "B<#include E<lt>sys/types.hE<gt>>\n"
@@ -1293,25 +1360,25 @@ msgstr ""
 "B<#include E<lt>netinet/in.hE<gt>>\n"
 
 #. type: Plain text
-#: build/C/man3/bindresvport.3:36
+#: build/C/man3/bindresvport.3:39
 #, no-wrap
 msgid "B<int bindresvport(int >I<sockfd>B<, struct sockaddr_in *>I<sin>B<);>\n"
 msgstr "B<int bindresvport(int >I<sockfd>B<, struct sockaddr_in *>I<sin>B<);>\n"
 
 #.  Glibc actually starts searching with a port # in the range 600 to 1023
 #. type: Plain text
-#: build/C/man3/bindresvport.3:43
+#: build/C/man3/bindresvport.3:46
 msgid ""
 "B<bindresvport>()  is used to bind a socket descriptor to a privileged "
 "anonymous IP port, that is, a port number arbitrarily selected from the "
 "range 512 to 1023."
 msgstr ""
-"B<bindresvport>()  ã\81¯ã\80\81ã\82½ã\82±ã\83\83ã\83\88ã\83»ã\83\87ã\82£ã\82¹ã\82¯ã\83ªã\83\97ã\82¿を特権無名 (privileged "
+"B<bindresvport>()  ã\81¯ã\80\81ã\82½ã\82±ã\83\83ã\83\88ã\83\87ã\82£ã\82¹ã\82¯ã\83ªã\83\97ã\82¿ã\83¼を特権無名 (privileged "
 "anonymous) IP ポートに バインドするのに使う。特権無名 IP ポートとは、 ポート"
 "番号が 512 から 1023 の範囲から任意に選択されるポートである。"
 
 #. type: Plain text
-#: build/C/man3/bindresvport.3:53
+#: build/C/man3/bindresvport.3:56
 msgid ""
 "If the B<bind>(2)  performed by B<bindresvport>()  is successful, and I<sin> "
 "is not NULL, then I<sin-E<gt>sin_port> returns the port number actually "
@@ -1322,7 +1389,7 @@ msgstr ""
 "される。"
 
 #. type: Plain text
-#: build/C/man3/bindresvport.3:64
+#: build/C/man3/bindresvport.3:67
 msgid ""
 "I<sin> can be NULL, in which case I<sin-E<gt>sin_family> is implicitly taken "
 "to be B<AF_INET>.  However, in this case, B<bindresvport>()  has no way to "
@@ -1330,12 +1397,12 @@ msgid ""
 "obtained using B<getsockname>(2).)"
 msgstr ""
 "I<sin> には NULL を指定することもでき、その場合には I<sin-E<gt>sin_family> は"
-"暗黙のうちに B<AF_INET> とみなされる。 しかし、この場合には、 B<bindresvport>"
-"()  は実際に割り当てられたポート番号を返す手段を持たない (割り当てられたポー"
-"ト番号は、後で B<getsockname>(2)  を使って取得できる)。"
+"暗黙のうちに B<AF_INET> とみなされる。 しかし、この場合には、 "
+"B<bindresvport>()  は実際に割り当てられたポート番号を返す手段を持たない (割り"
+"当てられたポート番号は、後で B<getsockname>(2)  を使って取得できる)。"
 
 #. type: Plain text
-#: build/C/man3/bindresvport.3:69
+#: build/C/man3/bindresvport.3:72
 msgid ""
 "B<bindresvport>()  returns 0 on success; otherwise -1 is returned and "
 "I<errno> set to indicate the cause of the error."
@@ -1344,7 +1411,7 @@ msgstr ""
 "I<errno> にエラーの原因を示す値を設定する。"
 
 #. type: Plain text
-#: build/C/man3/bindresvport.3:74
+#: build/C/man3/bindresvport.3:77
 msgid ""
 "B<bindresvport>()  can fail for any of the same reasons as B<bind>(2).  In "
 "addition, the following errors may occur:"
@@ -1353,40 +1420,73 @@ msgstr ""
 "以下のエラーが発生することがある:"
 
 #. type: Plain text
-#: build/C/man3/bindresvport.3:79
+#: build/C/man3/bindresvport.3:82
 msgid ""
 "The caller did not have superuser privilege (to be precise: the "
 "B<CAP_NET_BIND_SERVICE> capability is required)."
 msgstr ""
-"呼び出し元がスーパーユーザの特権を持っていなかった (より正確に言うと、 "
+"å\91¼ã\81³å\87ºã\81\97å\85\83ã\81\8cã\82¹ã\83¼ã\83\91ã\83¼ã\83¦ã\83¼ã\82¶ã\83¼ã\81®ç\89¹æ¨©ã\82\92æ\8c\81ã\81£ã\81¦ã\81\84ã\81ªã\81\8bã\81£ã\81\9f (ã\82\88ã\82\8a正確ã\81«è¨\80ã\81\86ã\81¨ã\80\81 "
 "B<CAP_NET_BIND_SERVICE> ケーパビリティが必要である)。"
 
 #. type: Plain text
-#: build/C/man3/bindresvport.3:82
+#: build/C/man3/bindresvport.3:85
 msgid "All privileged ports are in use."
 msgstr "全ての特権ポートが使用中である。"
 
 #. type: TP
-#: build/C/man3/bindresvport.3:82
+#: build/C/man3/bindresvport.3:85
 #, no-wrap
 msgid "B<EAFNOSUPPORT> (B<EPFNOSUPPORT> in glibc 2.7 and earlier)"
 msgstr "B<EAFNOSUPPORT> (glibc 2.7 以前では B<EPFNOSUPPORT>)"
 
 #. type: Plain text
-#: build/C/man3/bindresvport.3:89
+#: build/C/man3/bindresvport.3:92
 msgid "I<sin> is not NULL and I<sin-E<gt>sin_family> is not B<AF_INET>."
 msgstr ""
 "I<sin> が NULL 以外で、かつ I<sin-E<gt>sin_family> が B<AF_INET> でなかった。"
 
+#. type: SH
+#: build/C/man3/bindresvport.3:92 build/C/man3/if_nametoindex.3:85
+#: build/C/man3/sockatmark.3:73
+#, no-wrap
+msgid "ATTRIBUTES"
+msgstr "属性"
+
+#. type: SS
+#: build/C/man3/bindresvport.3:93 build/C/man3/if_nametoindex.3:86
+#: build/C/man3/sockatmark.3:74
+#, no-wrap
+msgid "Multithreading (see pthreads(7))"
+msgstr "マルチスレッディング (pthreads(7) 参照)"
+
 #. type: Plain text
-#: build/C/man3/bindresvport.3:92
+#: build/C/man3/bindresvport.3:98
+msgid ""
+"Before glibc 2.17, the B<bindresvport>()  function uses a static variable "
+"that is not protected, so it is not thread-safe."
+msgstr ""
+"glibc 2.17 より前のバージョンでは、 B<bindresvport>() 関数は保護されていない"
+"静的変数を使用しているため、スレッドセーフではない。"
+
+#.  commit f6da27e53695ad1cc0e2a9490358decbbfdff5e5
+#. type: Plain text
+#: build/C/man3/bindresvport.3:104
+msgid ""
+"Since glibc 2.17, the B<bindresvport>()  function uses a lock to protect the "
+"static variable, so it is thread-safe."
+msgstr ""
+"glibc 2.17 以降では、 B<bindresvport>() 関数は静的変数を保護するロックを使っ"
+"ており、スレッドセーフである。"
+
+#. type: Plain text
+#: build/C/man3/bindresvport.3:107
 msgid ""
 "Not in POSIX.1-2001.  Present on the BSDs, Solaris, and many other systems."
 msgstr ""
 "POSIX.1-2001 にはない。 BSD, Solaris およびその他の多くのシステムに存在する。"
 
 #. type: Plain text
-#: build/C/man3/bindresvport.3:98
+#: build/C/man3/bindresvport.3:113
 msgid ""
 "Unlike some B<bindresvport>()  implementations, the glibc implementation "
 "ignores any value that the caller supplies in I<sin-E<gt>sin_port>."
@@ -1395,38 +1495,44 @@ msgstr ""
 "I<sin-E<gt>sin_port> で渡した値はどんな値であっても無視される。"
 
 #. type: Plain text
-#: build/C/man3/bindresvport.3:100
+#: build/C/man3/bindresvport.3:116
 msgid "B<bind>(2), B<getsockname>(2)"
 msgstr "B<bind>(2), B<getsockname>(2)"
 
 #. type: TH
-#: build/C/man2/connect.2:65
+#: build/C/man2/connect.2:67
 #, no-wrap
 msgid "CONNECT"
 msgstr "CONNECT"
 
+#. type: TH
+#: build/C/man2/connect.2:67
+#, no-wrap
+msgid "2014-09-06"
+msgstr "2014-09-06"
+
 #. type: Plain text
-#: build/C/man2/connect.2:68
+#: build/C/man2/connect.2:70
 msgid "connect - initiate a connection on a socket"
 msgstr "connect - ソケットの接続を行う"
 
 #. type: Plain text
-#: build/C/man2/connect.2:71 build/C/man2/getsockopt.2:48
-#: build/C/man2/listen.2:49
+#: build/C/man2/connect.2:73 build/C/man2/getsockopt.2:50
+#: build/C/man2/listen.2:51
 #, no-wrap
 msgid "B<#include E<lt>sys/types.hE<gt>>          /* See NOTES */\n"
 msgstr "B<#include E<lt>sys/types.hE<gt>>          /* 「注意」参照 */\n"
 
 #. type: Plain text
-#: build/C/man2/connect.2:73 build/C/man2/getsockname.2:44
-#: build/C/man2/getsockopt.2:50 build/C/man2/listen.2:51
-#: build/C/man2/recv.2:49
+#: build/C/man2/connect.2:75 build/C/man2/getsockname.2:46
+#: build/C/man2/getsockopt.2:52 build/C/man2/listen.2:53
+#: build/C/man2/recv.2:51
 #, no-wrap
 msgid "B<#include E<lt>sys/socket.hE<gt>>\n"
 msgstr "B<#include E<lt>sys/socket.hE<gt>>\n"
 
 #. type: Plain text
-#: build/C/man2/connect.2:76
+#: build/C/man2/connect.2:78
 #, no-wrap
 msgid ""
 "B<int connect(int >I<sockfd>B<, const struct sockaddr *>I<addr>B<,>\n"
@@ -1436,7 +1542,7 @@ msgstr ""
 "B<            socklen_t >I<addrlen>B<);>\n"
 
 #. type: Plain text
-#: build/C/man2/connect.2:95
+#: build/C/man2/connect.2:97
 msgid ""
 "The B<connect>()  system call connects the socket referred to by the file "
 "descriptor I<sockfd> to the address specified by I<addr>.  The I<addrlen> "
@@ -1444,18 +1550,18 @@ msgid ""
 "I<addr> is determined by the address space of the socket I<sockfd>; see "
 "B<socket>(2)  for further details."
 msgstr ""
-"B<connect>()  システムコールは、ファイルディスクリプタ I<sockfd> が参照してい"
-"るソケットを I<addr> で指定されたアドレスに接続する。 I<addrlen> 引き数は "
+"B<connect>()  システムコールは、ファイルディスクリプター I<sockfd> が参照して"
+"ã\81\84ã\82\8bã\82½ã\82±ã\83\83ã\83\88ã\82\92 I<addr> ã\81§æ\8c\87å®\9aã\81\95ã\82\8cã\81\9fã\82¢ã\83\89ã\83¬ã\82¹ã\81«æ\8e¥ç¶\9aã\81\99ã\82\8bã\80\82 I<addrlen> å¼\95ã\81\8dæ\95°ã\81¯ "
 "I<addr> の大きさを示す。 I<addr> のアドレスのフォーマットはソケット "
 "I<sockfd> のアドレス空間により異なる。 さらなる詳細は B<socket>(2)  を参照の"
 "こと。"
 
 #. type: Plain text
-#: build/C/man2/connect.2:111
+#: build/C/man2/connect.2:113
 msgid ""
-"If the socket I<sockfd> is of type B<SOCK_DGRAM> then I<addr> is the address "
-"to which datagrams are sent by default, and the only address from which "
-"datagrams are received.  If the socket is of type B<SOCK_STREAM> or "
+"If the socket I<sockfd> is of type B<SOCK_DGRAM>, then I<addr> is the "
+"address to which datagrams are sent by default, and the only address from "
+"which datagrams are received.  If the socket is of type B<SOCK_STREAM> or "
 "B<SOCK_SEQPACKET>, this call attempts to make a connection to the socket "
 "that is bound to the address specified by I<addr>."
 msgstr ""
@@ -1466,7 +1572,7 @@ msgstr ""
 "に対する接続の 作成を試みる。"
 
 #. type: Plain text
-#: build/C/man2/connect.2:125
+#: build/C/man2/connect.2:127
 msgid ""
 "Generally, connection-based protocol sockets may successfully B<connect>()  "
 "only once; connectionless protocol sockets may use B<connect>()  multiple "
@@ -1474,14 +1580,15 @@ msgid ""
 "association by connecting to an address with the I<sa_family> member of "
 "I<sockaddr> set to B<AF_UNSPEC> (supported on Linux since kernel 2.2)."
 msgstr ""
-"一般的に、接続指向 (connection-oriented) プロトコルでは一度だけ B<connect>"
-"()  が成功する。 非接続 (connectionless) プロトコルでは対応を変更するために何"
-"度も B<connect>()  を使用できる。 非接続ソケットは I<sockaddr> の "
-"I<sa_family> メンバに B<AF_UNSPEC> を設定することで、接続アドレスの対応を解消"
-"することができる (B<AF_UNSPEC> はカーネル 2.2 以降の Linux でサポート)。"
+"一般的に、接続指向 (connection-oriented) プロトコルでは一度だけ "
+"B<connect>()  が成功する。 コネクションレス (connectionless) プロトコルでは対"
+"応を変更するために何度も B<connect>()  を使用できる。 非接続ソケットは "
+"I<sockaddr> の I<sa_family> メンバに B<AF_UNSPEC> を設定することで、接続アド"
+"レスの対応を解消することができる (B<AF_UNSPEC> はカーネル 2.2 以降の Linux で"
+"サポート)。"
 
 #. type: Plain text
-#: build/C/man2/connect.2:130
+#: build/C/man2/connect.2:132
 msgid ""
 "If the connection or binding succeeds, zero is returned.  On error, -1 is "
 "returned, and I<errno> is set appropriately."
@@ -1490,7 +1597,7 @@ msgstr ""
 "適切な値を設定する。"
 
 #. type: Plain text
-#: build/C/man2/connect.2:133
+#: build/C/man2/connect.2:135
 msgid ""
 "The following are general socket errors only.  There may be other domain-"
 "specific error codes."
@@ -1499,79 +1606,87 @@ msgstr ""
 "する可能性がある。"
 
 #. type: Plain text
-#: build/C/man2/connect.2:141
+#: build/C/man2/connect.2:143
 msgid ""
 "For UNIX domain sockets, which are identified by pathname: Write permission "
 "is denied on the socket file, or search permission is denied for one of the "
 "directories in the path prefix.  (See also B<path_resolution>(7).)"
 msgstr ""
-"UNIX ã\83\89ã\83¡ã\82¤ã\83³ã\82½ã\82±ã\83\83ã\83\88ã\81¯ã\83\91ã\82¹å\90\8dã\81§è­\98å\88¥ã\81\95ã\82\8cã\82\8bã\80\82 ã\82½ã\82±ã\83\83ã\83\88ã\83»ã\83\95ã\82¡ã\82¤ã\83«ã\81¸ã\81®æ\9b¸ã\81\8dè¾¼ã\81¿è¨±"
-"可がなかったか、パス名へ 到達するまでのディレクトリのいずれかに対する検索許可"
-"ã\81\8cã\81ªã\81\8bã\81£ã\81\9fã\80\82 (B<path_resolution>(7)  ã\82\82å\8f\82ç\85§ã\81®ã\81\93ã\81¨)"
+"UNIX ã\83\89ã\83¡ã\82¤ã\83³ã\82½ã\82±ã\83\83ã\83\88ã\81¯ã\83\91ã\82¹å\90\8dã\81§è­\98å\88¥ã\81\95ã\82\8cã\82\8bã\80\82 ã\82½ã\82±ã\83\83ã\83\88ã\83\95ã\82¡ã\82¤ã\83«ã\81¸ã\81®æ\9b¸ã\81\8dè¾¼ã\81¿è¨±å\8f¯"
+"がなかったか、パス名へ 到達するまでのディレクトリのいずれかに対する検索許可が"
+"なかった。 (B<path_resolution>(7)  も参照のこと)"
 
 #. type: TP
-#: build/C/man2/connect.2:141
+#: build/C/man2/connect.2:143
 #, no-wrap
 msgid "B<EACCES>, B<EPERM>"
 msgstr "B<EACCES>, B<EPERM>"
 
 #. type: Plain text
-#: build/C/man2/connect.2:146
+#: build/C/man2/connect.2:148
 msgid ""
 "The user tried to connect to a broadcast address without having the socket "
 "broadcast flag enabled or the connection request failed because of a local "
 "firewall rule."
 msgstr ""
-"ã\82½ã\82±ã\83\83ã\83\88ã\81®ã\83\96ã\83­ã\83¼ã\83\89ã\82­ã\83£ã\82¹ã\83\88ã\83»ã\83\95ã\83©ã\82°ã\81\8cæ\9c\89å\8a¹ã\81«ã\81ªã\81£ã\81¦ã\81\84ã\81ªã\81\84ã\81®ã\81« ã\83¦ã\83¼ã\82がブロード"
+"ã\82½ã\82±ã\83\83ã\83\88ã\81®ã\83\96ã\83­ã\83¼ã\83\89ã\82­ã\83£ã\82¹ã\83\88ã\83\95ã\83©ã\82°ã\81\8cæ\9c\89å\8a¹ã\81«ã\81ªã\81£ã\81¦ã\81\84ã\81ªã\81\84ã\81®ã\81« ã\83¦ã\83¼ã\82¶ã\83¼がブロード"
 "キャストへ接続を試みた。または、ローカルのファイアウォールの 規則により接続の"
 "要求が失敗した。"
 
 #. type: Plain text
-#: build/C/man2/connect.2:149
+#: build/C/man2/connect.2:151
 msgid "Local address is already in use."
 msgstr "ローカルアドレスが既に使用されている。"
 
+#. type: Plain text
+#: build/C/man2/connect.2:164 build/C/man2/listen.2:104
+msgid ""
+"(Internet domain sockets)  The socket referred to by I<sockfd> had not "
+"previously been bound to an address and, upon attempting to bind it to an "
+"ephemeral port, it was determined that all port numbers in the ephemeral "
+"port range are currently in use.  See the discussion of I</proc/sys/net/ipv4/"
+"ip_local_port_range> in B<ip>(7)."
+msgstr ""
+"(インターネットドメインソケットの場合) I<sockfd> が参照するソケットがそれ以前"
+"にアドレスにバインドされておらず、 そのソケットに一時ポートをバインドしようと"
+"した際に、 一時ポートとして使用する範囲のポート番号がすべて使用中であった。 "
+"B<ip>(7) の I</proc/sys/net/ipv4/ip_local_port_range> の議論を参照のこと。"
+
 #. type: TP
-#: build/C/man2/connect.2:149 build/C/man2/socket.2:322
-#: build/C/man2/socketpair.2:73
+#: build/C/man2/connect.2:164 build/C/man2/socket.2:320
+#: build/C/man2/socketpair.2:75
 #, no-wrap
 msgid "B<EAFNOSUPPORT>"
 msgstr "B<EAFNOSUPPORT>"
 
 #. type: Plain text
-#: build/C/man2/connect.2:154
+#: build/C/man2/connect.2:169
 msgid ""
 "The passed address didn't have the correct address family in its "
 "I<sa_family> field."
 msgstr ""
-"渡ã\81\95ã\82\8cã\81\9fã\82¢ã\83\89ã\83¬ã\82¹ã\81® I<sa_family> ã\83\95ã\82£ã\83¼ã\83«ã\83\89ã\81\8cæ­£ã\81\97ã\81\84ã\82¢ã\83\89ã\83¬ã\82¹ã\83»ã\83\95ã\82¡ã\83\9fã\83ªã\83¼ã\81§ã\81¯ã\81ª"
+"渡されたアドレスの I<sa_family> フィールドが正しいアドレスファミリーではな"
 "い。"
 
 #. type: TP
-#: build/C/man2/connect.2:154
+#: build/C/man2/connect.2:169 build/C/man2/send.2:323
 #, no-wrap
 msgid "B<EAGAIN>"
 msgstr "B<EAGAIN>"
 
 #. type: Plain text
-#: build/C/man2/connect.2:163
-msgid ""
-"No more free local ports or insufficient entries in the routing cache.  For "
-"B<AF_INET> see the description of I</proc/sys/net/ipv4/ip_local_port_range> "
-"B<ip>(7)  for information on how to increase the number of local ports."
-msgstr ""
-"使用可能なローカルのポートがないか、 ルーティングキャッシュに十分なエントリが"
-"ない。 B<AF_INET> の場合に、ローカルポートの数を増やす方法については、 B<ip>"
-"(7)  の I</proc/sys/net/ipv4/ip_local_port_range> の説明を参照のこと。"
+#: build/C/man2/connect.2:172
+msgid "Insufficient entries in the routing cache."
+msgstr "ルーティングキャッシュにエントリーが十分にない。"
 
 #. type: TP
-#: build/C/man2/connect.2:163
+#: build/C/man2/connect.2:172
 #, no-wrap
 msgid "B<EALREADY>"
 msgstr "B<EALREADY>"
 
 #. type: Plain text
-#: build/C/man2/connect.2:167
+#: build/C/man2/connect.2:176
 msgid ""
 "The socket is nonblocking and a previous connection attempt has not yet been "
 "completed."
@@ -1579,36 +1694,36 @@ msgstr ""
 "ソケットが非停止 (nonblocking) に設定されており、 前の接続が完了していない。"
 
 #. type: Plain text
-#: build/C/man2/connect.2:170
+#: build/C/man2/connect.2:179
 msgid "The file descriptor is not a valid index in the descriptor table."
 msgstr ""
 "ファイルディスクリプターがディスクリプターテーブルの 有効なインデックスではな"
 "い。"
 
 #. type: TP
-#: build/C/man2/connect.2:170 build/C/man2/recv.2:410
+#: build/C/man2/connect.2:179 build/C/man2/recv.2:443
 #, no-wrap
 msgid "B<ECONNREFUSED>"
 msgstr "B<ECONNREFUSED>"
 
 #. type: Plain text
-#: build/C/man2/connect.2:173
+#: build/C/man2/connect.2:182
 msgid "No-one listening on the remote address."
 msgstr "リモートアドレスで接続を待っているプログラムがない。"
 
 #. type: Plain text
-#: build/C/man2/connect.2:176
+#: build/C/man2/connect.2:185
 msgid "The socket structure address is outside the user's address space."
 msgstr "ソケット構造体のアドレスがユーザーのアドレス空間外にある。"
 
 #. type: TP
-#: build/C/man2/connect.2:176
+#: build/C/man2/connect.2:185
 #, no-wrap
 msgid "B<EINPROGRESS>"
 msgstr "B<EINPROGRESS>"
 
 #. type: Plain text
-#: build/C/man2/connect.2:201
+#: build/C/man2/connect.2:210
 msgid ""
 "The socket is nonblocking and the connection cannot be completed "
 "immediately.  It is possible to B<select>(2)  or B<poll>(2)  for completion "
@@ -1630,48 +1745,65 @@ msgstr ""
 #.  For TCP, the connection will complete asynchronously.
 #.  See http://lkml.org/lkml/2005/7/12/254
 #. type: Plain text
-#: build/C/man2/connect.2:207
+#: build/C/man2/connect.2:216
 msgid ""
-"The system call was interrupted by a signal that was caught; see B<signal>"
-"(7)."
+"The system call was interrupted by a signal that was caught; see "
+"B<signal>(7)."
 msgstr ""
 "捕捉されたシグナルによりシステムコールが中断された。 B<signal>(7)  参照。"
 
 #. type: TP
-#: build/C/man2/connect.2:207 build/C/man2/send.2:318
+#: build/C/man2/connect.2:216 build/C/man2/send.2:355
 #, no-wrap
 msgid "B<EISCONN>"
 msgstr "B<EISCONN>"
 
 #. type: Plain text
-#: build/C/man2/connect.2:210
+#: build/C/man2/connect.2:219
 msgid "The socket is already connected."
 msgstr "ソケットは既に接続 (connect) されている。"
 
 #. type: TP
-#: build/C/man2/connect.2:210
+#: build/C/man2/connect.2:219
 #, no-wrap
 msgid "B<ENETUNREACH>"
 msgstr "B<ENETUNREACH>"
 
 #. type: Plain text
-#: build/C/man2/connect.2:213
+#: build/C/man2/connect.2:222
 msgid "Network is unreachable."
 msgstr "到達できないネットワークである。"
 
 #. type: Plain text
-#: build/C/man2/connect.2:216
+#: build/C/man2/connect.2:225
 msgid "The file descriptor is not associated with a socket."
 msgstr "ファイルディスクリプターがソケットと関連付けられていない。"
 
 #. type: TP
-#: build/C/man2/connect.2:216
+#: build/C/man2/connect.2:225
+#, no-wrap
+msgid "B<EPROTOTYPE>"
+msgstr "B<EPROTOTYPE>"
+
+#. type: Plain text
+#: build/C/man2/connect.2:230
+msgid ""
+"The socket type does not support the requested communications protocol.  "
+"This error can occur, for example, on an attempt to connect a UNIX domain "
+"datagram socket to a stream socket."
+msgstr ""
+"ソケットタイプが要求された通信プロトコルではサポートされていない。 このエラー"
+"は、 例えば UNIX ドメインデータグラムソケットをストリームソケットに接続しよう"
+"とした場合などに起こり得る。"
+
+#. type: TP
+#: build/C/man2/connect.2:230
 #, no-wrap
 msgid "B<ETIMEDOUT>"
 msgstr "B<ETIMEDOUT>"
 
 #. type: Plain text
-#: build/C/man2/connect.2:223
+#: build/C/man2/connect.2:237
 msgid ""
 "Timeout while attempting connection.  The server may be too busy to accept "
 "new connections.  Note that for IP sockets the timeout may be very long when "
@@ -1695,7 +1827,7 @@ msgstr ""
 #.  It also
 #.  documents many additional error conditions not described here.
 #. type: Plain text
-#: build/C/man2/connect.2:239
+#: build/C/man2/connect.2:253
 msgid ""
 "SVr4, 4.4BSD, (the B<connect>()  function first appeared in 4.2BSD), "
 "POSIX.1-2001."
@@ -1703,7 +1835,7 @@ msgstr ""
 "SVr4, 4.4BSD, (B<connect>()  関数は 4.2BSD で最初に登場した), POSIX.1-2001."
 
 #. type: Plain text
-#: build/C/man2/connect.2:256
+#: build/C/man2/connect.2:270
 msgid ""
 "The third argument of B<connect>()  is in reality an I<int> (and this is "
 "what 4.x BSD and libc4 and libc5 have).  Some POSIX confusion resulted in "
@@ -1714,12 +1846,23 @@ msgstr ""
 "glibc でも I<socklen_t> を使っている。 B<accept>(2)  も参照のこと。"
 
 #. type: Plain text
-#: build/C/man2/connect.2:261
+#: build/C/man2/connect.2:276
+msgid ""
+"If B<connect>()  fails, consider the state of the socket as unspecified.  "
+"Portable applications should close the socket and create a new one for "
+"reconnecting."
+msgstr ""
+"B<connect>() が失敗した場合、そのソケットの状態は不定だと考えること。 移植性"
+"を考慮したアプリケーションでは、そのソケットをクローズし、再接続用に新しいソ"
+"ケットを作成すべきである。"
+
+#. type: Plain text
+#: build/C/man2/connect.2:281
 msgid "An example of the use of B<connect>()  is shown in B<getaddrinfo>(3)."
 msgstr "B<connect>()  の利用例が B<getaddrinfo>(3)  に記載されている。"
 
 #. type: Plain text
-#: build/C/man2/connect.2:267
+#: build/C/man2/connect.2:288
 msgid ""
 "B<accept>(2), B<bind>(2), B<getsockname>(2), B<listen>(2), B<socket>(2), "
 "B<path_resolution>(7)"
@@ -1728,30 +1871,31 @@ msgstr ""
 "B<path_resolution>(7)"
 
 #. type: TH
-#: build/C/man3/getifaddrs.3:33
+#: build/C/man3/getifaddrs.3:36
 #, no-wrap
 msgid "GETIFADDRS"
 msgstr "GETIFADDRS"
 
 #. type: TH
-#: build/C/man3/getifaddrs.3:33
+#: build/C/man3/getifaddrs.3:36
 #, no-wrap
-msgid "2010-10-06"
-msgstr "2010-10-06"
+msgid "2014-02-26"
+msgstr "2014-02-26"
 
 #. type: TH
-#: build/C/man3/getifaddrs.3:33
+#: build/C/man3/getifaddrs.3:36 build/C/man3/if_nameindex.3:26
+#: build/C/man3/if_nametoindex.3:25
 #, no-wrap
 msgid "GNU"
 msgstr "GNU"
 
 #. type: Plain text
-#: build/C/man3/getifaddrs.3:36
+#: build/C/man3/getifaddrs.3:39
 msgid "getifaddrs, freeifaddrs - get interface addresses"
-msgstr "getifaddrs, freeifaddrs - get interface addresses"
+msgstr "getifaddrs, freeifaddrs - インターフェースのアドレスを取得する"
 
 #. type: Plain text
-#: build/C/man3/getifaddrs.3:40
+#: build/C/man3/getifaddrs.3:43
 #, no-wrap
 msgid ""
 "B<#include E<lt>sys/types.hE<gt>>\n"
@@ -1761,32 +1905,32 @@ msgstr ""
 "B<#include E<lt>ifaddrs.hE<gt>>\n"
 
 #. type: Plain text
-#: build/C/man3/getifaddrs.3:42
+#: build/C/man3/getifaddrs.3:45
 #, no-wrap
 msgid "B<int getifaddrs(struct ifaddrs **>I<ifap>B<);>\n"
 msgstr "B<int getifaddrs(struct ifaddrs **>I<ifap>B<);>\n"
 
 #. type: Plain text
-#: build/C/man3/getifaddrs.3:44
+#: build/C/man3/getifaddrs.3:47
 #, no-wrap
 msgid "B<void freeifaddrs(struct ifaddrs *>I<ifa>B<);>\n"
 msgstr "B<void freeifaddrs(struct ifaddrs *>I<ifa>B<);>\n"
 
 #. type: Plain text
-#: build/C/man3/getifaddrs.3:55
+#: build/C/man3/getifaddrs.3:58
 msgid ""
 "The B<getifaddrs>()  function creates a linked list of structures describing "
 "the network interfaces of the local system, and stores the address of the "
 "first item of the list in I<*ifap>.  The list consists of I<ifaddrs> "
 "structures, defined as follows:"
 msgstr ""
-"The B<getifaddrs>()  function creates a linked list of structures describing "
-"the network interfaces of the local system, and stores the address of the "
-"first item of the list in I<*ifap>.  The list consists of I<ifaddrs> "
-"structures, defined as follows:"
+"B<getifaddrs>() 関数は、ローカルシステムのネットワークインターフェース情報を"
+"表す構造体の連結リストを作成し、 リストの先頭の要素のアドレスを I<*ifap> に格"
+"納する。 リストは I<ifaddrs> 構造体で構成される。 I<ifaddrs> 構造体は以下のよ"
+"うに定義されている。"
 
 #. type: Plain text
-#: build/C/man3/getifaddrs.3:74
+#: build/C/man3/getifaddrs.3:77
 #, no-wrap
 msgid ""
 "struct ifaddrs {\n"
@@ -1824,55 +1968,57 @@ msgstr ""
 "};\n"
 
 #. type: Plain text
-#: build/C/man3/getifaddrs.3:81
+#: build/C/man3/getifaddrs.3:84
 msgid ""
 "The I<ifa_next> field contains a pointer to the next structure on the list, "
 "or NULL if this is the last item of the list."
 msgstr ""
-"The I<ifa_next> field contains a pointer to the next structure on the list, "
-"or NULL if this is the last item of the list."
+"I<ifa_next> フィールドにはリストの次の構造体へのポインターが格納される。 この"
+"要素がリストの最後の場合には NULL が入る。"
 
 #.  The constant
 #.  .B IF NAMESIZE
 #.  indicates the maximum length of this field.
 #. type: Plain text
-#: build/C/man3/getifaddrs.3:88
+#: build/C/man3/getifaddrs.3:91
 msgid "The I<ifa_name> points to the null-terminated interface name."
-msgstr "The I<ifa_name> points to the null-terminated interface name."
+msgstr "I<ifa_name> はヌル終端されたインターフェース名を指す。"
 
 #. type: Plain text
-#: build/C/man3/getifaddrs.3:97
+#: build/C/man3/getifaddrs.3:100
 msgid ""
 "The I<ifa_flags> field contains the interface flags, as returned by the "
 "B<SIOCGIFFLAGS> B<ioctl>(2)  operation (see B<netdevice>(7)  for a list of "
 "these flags)."
 msgstr ""
-"The I<ifa_flags> field contains the interface flags, as returned by the "
-"B<SIOCGIFFLAGS> B<ioctl>(2)  operation (see B<netdevice>(7)  for a list of "
-"these flags)."
+"I<ifa_flags> フィールドには、 B<SIOCGIFFLAGS> B<ioctl>(2) 操作で返されるイン"
+"ターフェースのフラグが格納される (これらのフラグのリストについては "
+"B<netdevice>(7) を参照)。"
 
 #. type: Plain text
-#: build/C/man3/getifaddrs.3:105
+#: build/C/man3/getifaddrs.3:109
 msgid ""
 "The I<ifa_addr> field points to a structure containing the interface "
 "address.  (The I<sa_family> subfield should be consulted to determine the "
-"format of the address structure.)"
+"format of the address structure.)  This field may contain a null pointer."
 msgstr ""
-"The I<ifa_addr> field points to a structure containing the interface "
-"address.  (The I<sa_family> subfield should be consulted to determine the "
-"format of the address structure.)"
+"I<ifa_addr> フィールドは、インターフェースのアドレスを格納した構造体へのポイ"
+"ンターである (I<sa_family> サブフィールドを参照して、アドレス構造体の形式を判"
+"別すべきである)。 このフィールドはヌルポインターとなる場合がある。"
 
 #. type: Plain text
-#: build/C/man3/getifaddrs.3:111
+#: build/C/man3/getifaddrs.3:116
 msgid ""
 "The I<ifa_netmask> field points to a structure containing the netmask "
-"associated with I<ifa_addr>, if applicable for the address family."
+"associated with I<ifa_addr>, if applicable for the address family.  This "
+"field may contain a null pointer."
 msgstr ""
-"The I<ifa_netmask> field points to a structure containing the netmask "
-"associated with I<ifa_addr>, if applicable for the address family."
+"I<ifa_netmask> フィールドには、 ネットマスクがあるアドレスファミリーであれ"
+"ば、 I<ifa_addr> に関連付けられたネットマスクを格納した構造体へのポインターが"
+"入る。 このフィールドはヌルポインターとなる場合がある。"
 
 #. type: Plain text
-#: build/C/man3/getifaddrs.3:126
+#: build/C/man3/getifaddrs.3:131
 msgid ""
 "Depending on whether the bit B<IFF_BROADCAST> or B<IFF_POINTOPOINT> is set "
 "in I<ifa_flags> (only one can be set at a time), either I<ifa_broadaddr> "
@@ -1880,69 +2026,71 @@ msgid ""
 "applicable for the address family) or I<ifa_dstaddr> will contain the "
 "destination address of the point-to-point interface."
 msgstr ""
-"Depending on whether the bit B<IFF_BROADCAST> or B<IFF_POINTOPOINT> is set "
-"in I<ifa_flags> (only one can be set at a time), either I<ifa_broadaddr> "
-"will contain the broadcast address associated with I<ifa_addr> (if "
-"applicable for the address family) or I<ifa_dstaddr> will contain the "
-"destination address of the point-to-point interface."
+"I<ifa_flags> にビット B<IFF_BROADCAST> か B<IFF_POINTOPOINT> のどちらが設定さ"
+"れているかにより (同時にはこれらのどちらか一方だけが設定される)、 "
+"I<ifa_broadaddr> に I<ifa_addr> に対応するブロードキャストが入るか (そのアド"
+"レスファミリーでブロードキャストがある場合)、 I<ifa_dstaddr> に point-to-"
+"point インターフェースの宛先アドレスが入るかが決まる。"
 
 #. type: Plain text
-#: build/C/man3/getifaddrs.3:131
+#: build/C/man3/getifaddrs.3:136
 msgid ""
 "The I<ifa_data> field points to a buffer containing address-family-specific "
 "data; this field may be NULL if there is no such data for this interface."
 msgstr ""
-"The I<ifa_data> field points to a buffer containing address-family-specific "
-"data; this field may be NULL if there is no such data for this interface."
+"I<ifa_data> フィールドは、 アドレスファミリー固有のデータが入ったバッファーへ"
+"のポインターである。 そのインターフェースでこのようなデータがない場合には、 "
+"このフィールドは NULL となる。"
 
 #. type: Plain text
-#: build/C/man3/getifaddrs.3:137
+#: build/C/man3/getifaddrs.3:142
 msgid ""
 "The data returned by B<getifaddrs>()  is dynamically allocated and should be "
 "freed using B<freeifaddrs>()  when no longer needed."
 msgstr ""
-"The data returned by B<getifaddrs>()  is dynamically allocated and should be "
-"freed using B<freeifaddrs>()  when no longer needed."
+"B<getifaddrs>() が返すデータは動的に確保される。 必要なくなった際には "
+"B<freeifaddrs>() を使って解放すべきである。"
 
 #. type: Plain text
-#: build/C/man3/getifaddrs.3:144
+#: build/C/man3/getifaddrs.3:149
 msgid ""
 "On success, B<getifaddrs>()  returns zero; on error, -1 is returned, and "
 "I<errno> is set appropriately."
 msgstr ""
-"On success, B<getifaddrs>()  returns zero; on error, -1 is returned, and "
-"I<errno> is set appropriately."
+"成功すると、 B<getifaddrs> は 0 を返す。 エラーの場合、 -1 が返り、 I<errno> "
+"が適切に設定される。"
 
 #. type: Plain text
-#: build/C/man3/getifaddrs.3:157
+#: build/C/man3/getifaddrs.3:162
 msgid ""
 "B<getifaddrs>()  may fail and set I<errno> for any of the errors specified "
-"for B<socket>(2), B<bind>(2), B<getsockname>(2), B<recvmsg>(2), B<sendto>"
-"(2), B<malloc>(3), or B<realloc>(3)."
+"for B<socket>(2), B<bind>(2), B<getsockname>(2), B<recvmsg>(2), "
+"B<sendto>(2), B<malloc>(3), or B<realloc>(3)."
 msgstr ""
-"B<getifaddrs>()  may fail and set I<errno> for any of the errors specified "
-"for B<socket>(2), B<bind>(2), B<getsockname>(2), B<recvmsg>(2), B<sendto>"
-"(2), B<malloc>(3), or B<realloc>(3)."
+"B<getifaddrs>() は失敗する場合があり、その場合には I<errno> には "
+"B<socket>(2), B<bind>(2), B<getsockname>(2), B<recvmsg>(2), B<sendto>(2), "
+"B<malloc>(3), B<realloc>(3) に対して規定されているエラーのいずれかが設定され"
+"る。"
 
 #. type: Plain text
-#: build/C/man3/getifaddrs.3:165
+#: build/C/man3/getifaddrs.3:170
 msgid ""
 "The B<getifaddrs>()  function first appeared in glibc 2.3, but before glibc "
-"2.3.3, the implementation only supported IPv4 addresses; IPv6 support was "
-"added in glibc 2.3.3.  Support of address families other than IPv4 is only "
-"available on kernels that support netlink."
+"2.3.3, the implementation supported only IPv4 addresses; IPv6 support was "
+"added in glibc 2.3.3.  Support of address families other than IPv4 is "
+"available only on kernels that support netlink."
 msgstr ""
-"The B<getifaddrs>()  function first appeared in glibc 2.3, but before glibc "
-"2.3.3, the implementation only supported IPv4 addresses; IPv6 support was "
-"added in glibc 2.3.3.  Support of address families other than IPv4 is only "
-"available on kernels that support netlink."
+"B<getifaddrs>() 関数は glibc 2.3 で初めて登場したが、 glibc 2.3.3 より前の"
+"バージョンの実装では IPv4 アドレスだけがサポートされていた。 IPv6 のサポート"
+"は glibc 2.3.3 で追加された。 IPv4 以外のアドレスファミリーが B<getifaddrs> "
+"で利用できるのは、 netlink をサポートするカーネルの場合だけである。"
 
 #.  , but the BSD-derived documentation generally
 #.  appears to be confused and obsolete on this point.
 #.  i.e., commonly it still says one of them will be NULL, even if
 #.  the ifa_ifu union is already present
 #. type: Plain text
-#: build/C/man3/getifaddrs.3:185
+#: build/C/man3/getifaddrs.3:190
 msgid ""
 "Not in POSIX.1-2001.  This function first appeared in BSDi and is present on "
 "the BSD systems, but with slightly different semantics documented"
@@ -1952,80 +2100,98 @@ msgid ""
 "address assigned.  Also, the way of choosing either I<ifa_broadaddr> or "
 "I<ifa_dstaddr> differs on various systems."
 msgstr ""
-"Not in POSIX.1-2001.  This function first appeared in BSDi and is present on "
-"the BSD systems, but with slightly different semantics documented"
-"\\(emreturning one entry per interface, not per address.  This means "
-"I<ifa_addr> and other fields can actually be NULL if the interface has no "
-"address, and no link-level address is returned if the interface has an IP "
-"address assigned.  Also, the way of choosing either I<ifa_broadaddr> or "
-"I<ifa_dstaddr> differs on various systems."
+"POSIX.1-2001 にはない。 この関数は BSDi で初めて登場し、 BSD 系のシステムに存"
+"在するが、 ドキュメント上はかなり動作が異なり、アドレス毎ではなくインター"
+"フェース毎に 1 エントリーを返す。 このことは、 インターフェースがアドレスを持"
+"たない場合には I<ifa_addr> や他のフィールドは実際に NULL になり、 インター"
+"フェースに IP アドレスが割り当てられている場合には リンクレベルのアドレスは返"
+"されない、ということを意味する。 また、 I<ifa_broadaddr> と I<ifa_dstaddr> の"
+"どちらを選択するかを決める方法は、 システムにより異なる。"
 
 #. type: Plain text
-#: build/C/man3/getifaddrs.3:198
+#: build/C/man3/getifaddrs.3:207
 msgid ""
 "The addresses returned on Linux will usually be the IPv4 and IPv6 addresses "
 "assigned to the interface, but also one B<AF_PACKET> address per interface "
 "containing lower-level details about the interface and its physical layer.  "
 "In this case, the I<ifa_data> field may contain a pointer to a I<struct "
-"net_device_stats>, defined in I<E<lt>linux/netdevice.hE<gt>>, which contains "
-"various interface attributes and statistics."
+"rtnl_link_stats>, defined in I<E<lt>linux/if_link.hE<gt>> (in Linux 2.4 and "
+"earlier, I<struct net_device_stats>, defined in I<E<lt>linux/netdevice."
+"hE<gt>>), which contains various interface attributes and statistics."
 msgstr ""
-"The addresses returned on Linux will usually be the IPv4 and IPv6 addresses "
-"assigned to the interface, but also one B<AF_PACKET> address per interface "
-"containing lower-level details about the interface and its physical layer.  "
-"In this case, the I<ifa_data> field may contain a pointer to a I<struct "
-"net_device_stats>, defined in I<E<lt>linux/netdevice.hE<gt>>, which contains "
-"various interface attributes and statistics."
+"Linux では、 返されるアドレスは通常インターフェースに割り当てられた IPv4 アド"
+"レスと IPv6 アドレスになるが、 これ以外にインターフェース毎に一つ "
+"B<AF_PACKET> アドレスも返される。 B<AF_PACKET> アドレスには、 インターフェー"
+"スとその物理層に関する低レベルの詳細が格納される。 この場合、 I<ifa_data> "
+"フィールドには、 I<E<lt>linux/if_link.hE<gt>> で定義される I<struct "
+"rtnl_link_stats> (Linux 2.4 以前では I<E<lt>linux/netdevice.hE<gt>> で定義さ"
+"れる I<struct net_device_stats>) へのポインターが格納される。 この構造体に"
+"は、インターフェースの様々な属性や統計情報が入る。"
 
 #. type: Plain text
-#: build/C/man3/getifaddrs.3:205
+#: build/C/man3/getifaddrs.3:214
 msgid ""
 "The program below demonstrates the use of B<getifaddrs>(), B<freeifaddrs>(), "
 "and B<getnameinfo>(3).  Here is what we see when running this program on one "
 "system:"
 msgstr ""
-"The program below demonstrates the use of B<getifaddrs>(), B<freeifaddrs>(), "
-"and B<getnameinfo>(3).  Here is what we see when running this program on one "
-"system:"
+"以下のプログラムは B<getifaddrs>(), B<freeifaddrs>(), B<getnameinfo>(3) の使"
+"用例である。 以下はこのプログラムをあるシステムで実行した際の出力である。"
 
 #. type: Plain text
-#: build/C/man3/getifaddrs.3:219
+#: build/C/man3/getifaddrs.3:235
 #, no-wrap
 msgid ""
 "$ B<./a.out>\n"
-"lo      address family: 17 (AF_PACKET)\n"
-"eth0    address family: 17 (AF_PACKET)\n"
-"lo      address family: 2 (AF_INET)\n"
-"        address: E<lt>127.0.0.1E<gt>\n"
-"eth0    address family: 2 (AF_INET)\n"
-"        address: E<lt>10.1.1.4E<gt>\n"
-"lo      address family: 10 (AF_INET6)\n"
-"        address: E<lt>::1E<gt>\n"
-"eth0    address family: 10 (AF_INET6)\n"
-"        address: E<lt>fe80::2d0:59ff:feda:eb51%eth0E<gt>\n"
+"lo       AF_PACKET (17)\n"
+"                tx_packets =        524; rx_packets =        524\n"
+"                tx_bytes   =      38788; rx_bytes   =      38788\n"
+"wlp3s0   AF_PACKET (17)\n"
+"                tx_packets =     108391; rx_packets =     130245\n"
+"                tx_bytes   =   30420659; rx_bytes   =   94230014\n"
+"em1      AF_PACKET (17)\n"
+"                tx_packets =          0; rx_packets =          0\n"
+"                tx_bytes   =          0; rx_bytes   =          0\n"
+"lo       AF_INET (2)\n"
+"                address: E<lt>127.0.0.1E<gt>\n"
+"wlp3s0   AF_INET (2)\n"
+"                address: E<lt>192.168.235.137E<gt>\n"
+"lo       AF_INET6 (10)\n"
+"                address: E<lt>::1E<gt>\n"
+"wlp3s0   AF_INET6 (10)\n"
+"                address: E<lt>fe80::7ee9:d3ff:fef5:1a91%wlp3s0E<gt>\n"
 msgstr ""
 "$ B<./a.out>\n"
-"lo      address family: 17 (AF_PACKET)\n"
-"eth0    address family: 17 (AF_PACKET)\n"
-"lo      address family: 2 (AF_INET)\n"
-"        address: E<lt>127.0.0.1E<gt>\n"
-"eth0    address family: 2 (AF_INET)\n"
-"        address: E<lt>10.1.1.4E<gt>\n"
-"lo      address family: 10 (AF_INET6)\n"
-"        address: E<lt>::1E<gt>\n"
-"eth0    address family: 10 (AF_INET6)\n"
-"        address: E<lt>fe80::2d0:59ff:feda:eb51%eth0E<gt>\n"
+"lo       AF_PACKET (17)\n"
+"                tx_packets =        524; rx_packets =        524\n"
+"                tx_bytes   =      38788; rx_bytes   =      38788\n"
+"wlp3s0   AF_PACKET (17)\n"
+"                tx_packets =     108391; rx_packets =     130245\n"
+"                tx_bytes   =   30420659; rx_bytes   =   94230014\n"
+"em1      AF_PACKET (17)\n"
+"                tx_packets =          0; rx_packets =          0\n"
+"                tx_bytes   =          0; rx_bytes   =          0\n"
+"lo       AF_INET (2)\n"
+"                address: E<lt>127.0.0.1E<gt>\n"
+"wlp3s0   AF_INET (2)\n"
+"                address: E<lt>192.168.235.137E<gt>\n"
+"lo       AF_INET6 (10)\n"
+"                address: E<lt>::1E<gt>\n"
+"wlp3s0   AF_INET6 (10)\n"
+"                address: E<lt>fe80::7ee9:d3ff:fef5:1a91%wlp3s0E<gt>\n"
 
 #. type: SS
-#: build/C/man3/getifaddrs.3:221
+#: build/C/man3/getifaddrs.3:237 build/C/man3/if_nameindex.3:121
+#: build/C/man2/recvmmsg.2:205
 #, no-wrap
 msgid "Program source"
-msgstr "Program source"
+msgstr "プログラムのソース"
 
 #. type: Plain text
-#: build/C/man3/getifaddrs.3:231
+#: build/C/man3/getifaddrs.3:249
 #, no-wrap
 msgid ""
+"#define _GNU_SOURCE     /* To get defns of NI_MAXSERV and NI_MAXHOST */\n"
 "#include E<lt>arpa/inet.hE<gt>\n"
 "#include E<lt>sys/socket.hE<gt>\n"
 "#include E<lt>netdb.hE<gt>\n"
@@ -2033,7 +2199,9 @@ msgid ""
 "#include E<lt>stdio.hE<gt>\n"
 "#include E<lt>stdlib.hE<gt>\n"
 "#include E<lt>unistd.hE<gt>\n"
+"#include E<lt>linux/if_link.hE<gt>\n"
 msgstr ""
+"#define _GNU_SOURCE     /* To get defns of NI_MAXSERV and NI_MAXHOST */\n"
 "#include E<lt>arpa/inet.hE<gt>\n"
 "#include E<lt>sys/socket.hE<gt>\n"
 "#include E<lt>netdb.hE<gt>\n"
@@ -2041,27 +2209,26 @@ msgstr ""
 "#include E<lt>stdio.hE<gt>\n"
 "#include E<lt>stdlib.hE<gt>\n"
 "#include E<lt>unistd.hE<gt>\n"
+"#include E<lt>linux/if_link.hE<gt>\n"
 
 #. type: Plain text
-#: build/C/man3/getifaddrs.3:238
+#: build/C/man3/getifaddrs.3:255
 #, no-wrap
 msgid ""
-"int\n"
-"main(int argc, char *argv[])\n"
+"int main(int argc, char *argv[])\n"
 "{\n"
 "    struct ifaddrs *ifaddr, *ifa;\n"
-"    int family, s;\n"
+"    int family, s, n;\n"
 "    char host[NI_MAXHOST];\n"
 msgstr ""
-"int\n"
-"main(int argc, char *argv[])\n"
+"int main(int argc, char *argv[])\n"
 "{\n"
 "    struct ifaddrs *ifaddr, *ifa;\n"
-"    int family, s;\n"
+"    int family, s, n;\n"
 "    char host[NI_MAXHOST];\n"
 
 #. type: Plain text
-#: build/C/man3/getifaddrs.3:243
+#: build/C/man3/getifaddrs.3:260
 #, no-wrap
 msgid ""
 "    if (getifaddrs(&ifaddr) == -1) {\n"
@@ -2075,7 +2242,7 @@ msgstr ""
 "    }\n"
 
 #. type: Plain text
-#: build/C/man3/getifaddrs.3:246
+#: build/C/man3/getifaddrs.3:263
 #, no-wrap
 msgid ""
 "    /* Walk through linked list, maintaining head pointer so we\n"
@@ -2085,25 +2252,25 @@ msgstr ""
 "       can free list later */\n"
 
 #. type: Plain text
-#: build/C/man3/getifaddrs.3:250
+#: build/C/man3/getifaddrs.3:267
 #, no-wrap
 msgid ""
-"    for (ifa = ifaddr; ifa != NULL; ifa = ifa-E<gt>ifa_next) {\n"
+"    for (ifa = ifaddr, n = 0; ifa != NULL; ifa = ifa-E<gt>ifa_next, n++) {\n"
 "        if (ifa-E<gt>ifa_addr == NULL)\n"
 "            continue;\n"
 msgstr ""
-"    for (ifa = ifaddr; ifa != NULL; ifa = ifa-E<gt>ifa_next) {\n"
+"    for (ifa = ifaddr, n = 0; ifa != NULL; ifa = ifa-E<gt>ifa_next, n++) {\n"
 "        if (ifa-E<gt>ifa_addr == NULL)\n"
 "            continue;\n"
 
 #. type: Plain text
-#: build/C/man3/getifaddrs.3:252
+#: build/C/man3/getifaddrs.3:269
 #, no-wrap
 msgid "        family = ifa-E<gt>ifa_addr-E<gt>sa_family;\n"
 msgstr "        family = ifa-E<gt>ifa_addr-E<gt>sa_family;\n"
 
 #. type: Plain text
-#: build/C/man3/getifaddrs.3:255
+#: build/C/man3/getifaddrs.3:272
 #, no-wrap
 msgid ""
 "        /* Display interface name and family (including symbolic\n"
@@ -2113,59 +2280,91 @@ msgstr ""
 "           form of the latter for the common families) */\n"
 
 #. type: Plain text
-#: build/C/man3/getifaddrs.3:261
+#: build/C/man3/getifaddrs.3:279
 #, no-wrap
 msgid ""
-"        printf(\"%s\\t  address family: %d%s\\en\",\n"
-"                ifa-E<gt>ifa_name, family,\n"
-"                (family == AF_PACKET) ? \" (AF_PACKET)\" :\n"
-"                (family == AF_INET) ?   \" (AF_INET)\" :\n"
-"                (family == AF_INET6) ?  \" (AF_INET6)\" : \"\");\n"
+"        printf(\"%-8s %s (%d)\\en\",\n"
+"               ifa-E<gt>ifa_name,\n"
+"               (family == AF_PACKET) ? \"AF_PACKET\" :\n"
+"               (family == AF_INET) ? \"AF_INET\" :\n"
+"               (family == AF_INET6) ? \"AF_INET6\" : \"???\",\n"
+"               family);\n"
 msgstr ""
-"        printf(\"%s\\t  address family: %d%s\\en\",\n"
-"                ifa-E<gt>ifa_name, family,\n"
-"                (family == AF_PACKET) ? \" (AF_PACKET)\" :\n"
-"                (family == AF_INET) ?   \" (AF_INET)\" :\n"
-"                (family == AF_INET6) ?  \" (AF_INET6)\" : \"\");\n"
+"        printf(\"%-8s %s (%d)\\en\",\n"
+"               ifa-E<gt>ifa_name,\n"
+"               (family == AF_PACKET) ? \"AF_PACKET\" :\n"
+"               (family == AF_INET) ? \"AF_INET\" :\n"
+"               (family == AF_INET6) ? \"AF_INET6\" : \"???\",\n"
+"               family);\n"
 
 #. type: Plain text
-#: build/C/man3/getifaddrs.3:263
+#: build/C/man3/getifaddrs.3:281
 #, no-wrap
 msgid "        /* For an AF_INET* interface address, display the address */\n"
 msgstr "        /* For an AF_INET* interface address, display the address */\n"
 
 #. type: Plain text
-#: build/C/man3/getifaddrs.3:276
+#: build/C/man3/getifaddrs.3:292
 #, no-wrap
 msgid ""
 "        if (family == AF_INET || family == AF_INET6) {\n"
 "            s = getnameinfo(ifa-E<gt>ifa_addr,\n"
 "                    (family == AF_INET) ? sizeof(struct sockaddr_in) :\n"
 "                                          sizeof(struct sockaddr_in6),\n"
-"                    host, NI_MAXHOST, NULL, 0, NI_NUMERICHOST);\n"
+"                    host, NI_MAXHOST,\n"
+"                    NULL, 0, NI_NUMERICHOST);\n"
 "            if (s != 0) {\n"
 "                printf(\"getnameinfo() failed: %s\\en\", gai_strerror(s));\n"
 "                exit(EXIT_FAILURE);\n"
 "            }\n"
-"            printf(\"\\etaddress: E<lt>%sE<gt>\\en\", host);\n"
-"        }\n"
-"    }\n"
 msgstr ""
 "        if (family == AF_INET || family == AF_INET6) {\n"
 "            s = getnameinfo(ifa-E<gt>ifa_addr,\n"
 "                    (family == AF_INET) ? sizeof(struct sockaddr_in) :\n"
 "                                          sizeof(struct sockaddr_in6),\n"
-"                    host, NI_MAXHOST, NULL, 0, NI_NUMERICHOST);\n"
+"                    host, NI_MAXHOST,\n"
+"                    NULL, 0, NI_NUMERICHOST);\n"
 "            if (s != 0) {\n"
 "                printf(\"getnameinfo() failed: %s\\en\", gai_strerror(s));\n"
 "                exit(EXIT_FAILURE);\n"
 "            }\n"
-"            printf(\"\\etaddress: E<lt>%sE<gt>\\en\", host);\n"
+
+#. type: Plain text
+#: build/C/man3/getifaddrs.3:294
+#, no-wrap
+msgid "            printf(\"\\et\\etaddress: E<lt>%sE<gt>\\en\", host);\n"
+msgstr "            printf(\"\\et\\etaddress: E<lt>%sE<gt>\\en\", host);\n"
+
+#. type: Plain text
+#: build/C/man3/getifaddrs.3:297
+#, no-wrap
+msgid ""
+"        } else if (family == AF_PACKET && ifa-E<gt>ifa_data != NULL) {\n"
+"            struct rtnl_link_stats *stats = ifa-E<gt>ifa_data;\n"
+msgstr ""
+"        } else if (family == AF_PACKET && ifa-E<gt>ifa_data != NULL) {\n"
+"            struct rtnl_link_stats *stats = ifa-E<gt>ifa_data;\n"
+
+#. type: Plain text
+#: build/C/man3/getifaddrs.3:304
+#, no-wrap
+msgid ""
+"            printf(\"\\et\\ettx_packets = %10u; rx_packets = %10u\\en\"\n"
+"                   \"\\et\\ettx_bytes   = %10u; rx_bytes   = %10u\\en\",\n"
+"                   stats-E<gt>tx_packets, stats-E<gt>rx_packets,\n"
+"                   stats-E<gt>tx_bytes, stats-E<gt>rx_bytes);\n"
+"        }\n"
+"    }\n"
+msgstr ""
+"            printf(\"\\et\\ettx_packets = %10u; rx_packets = %10u\\en\"\n"
+"                   \"\\et\\ettx_bytes   = %10u; rx_bytes   = %10u\\en\",\n"
+"                   stats-E<gt>tx_packets, stats-E<gt>rx_packets,\n"
+"                   stats-E<gt>tx_bytes, stats-E<gt>rx_bytes);\n"
 "        }\n"
 "    }\n"
 
 #. type: Plain text
-#: build/C/man3/getifaddrs.3:280
+#: build/C/man3/getifaddrs.3:308
 #, no-wrap
 msgid ""
 "    freeifaddrs(ifaddr);\n"
@@ -2177,31 +2376,37 @@ msgstr ""
 "}\n"
 
 #. type: Plain text
-#: build/C/man3/getifaddrs.3:286
+#: build/C/man3/getifaddrs.3:315
 msgid ""
 "B<bind>(2), B<getsockname>(2), B<socket>(2), B<packet>(7), B<ifconfig>(8)"
 msgstr ""
 "B<bind>(2), B<getsockname>(2), B<socket>(2), B<packet>(7), B<ifconfig>(8)"
 
 #. type: TH
-#: build/C/man2/getsockname.2:38
+#: build/C/man2/getsockname.2:40
 #, no-wrap
 msgid "GETSOCKNAME"
 msgstr "GETSOCKNAME"
 
+#. type: TH
+#: build/C/man2/getsockname.2:40
+#, no-wrap
+msgid "2008-12-03"
+msgstr "2008-12-03"
+
 #. type: Plain text
-#: build/C/man2/getsockname.2:41
+#: build/C/man2/getsockname.2:43
 msgid "getsockname - get socket name"
 msgstr "getsockname - ソケットの名前を取得する"
 
 #. type: Plain text
-#: build/C/man2/getsockname.2:47
+#: build/C/man2/getsockname.2:49
 #, no-wrap
 msgid "B<int getsockname(int >I<sockfd>B<, struct sockaddr *>I<addr>B<, socklen_t *>I<addrlen>B<);>\n"
 msgstr "B<int getsockname(int >I<sockfd>B<, struct sockaddr *>I<addr>B<, socklen_t *>I<addrlen>B<);>\n"
 
 #. type: Plain text
-#: build/C/man2/getsockname.2:60
+#: build/C/man2/getsockname.2:62
 msgid ""
 "B<getsockname>()  returns the current address to which the socket I<sockfd> "
 "is bound, in the buffer pointed to by I<addr>.  The I<addrlen> argument "
@@ -2209,52 +2414,53 @@ msgid ""
 "by I<addr>.  On return it contains the actual size of the socket address."
 msgstr ""
 "B<getsockname>()  は、ソケット I<sockfd> に結び付けられている現在のアドレス"
-"ã\82\92ã\80\81 I<addr> ã\81\8cæ\8c\87ã\81\99ã\83\90ã\83\83ã\83\95ã\82¡ã\81«æ ¼ç´\8dã\81\97ã\81¦è¿\94ã\81\99ã\80\82 I<addrlen> å¼\95ã\81\8dæ\95°ã\81¯ã\80\81 I<addr> ã\81\8c"
-"指している領域のサイズ (バイト単位) に初期化しておかなければならない。 関数が"
-"返る時には、 I<addrlen> にはソケットアドレスの実際のサイズ (バイト単位) が格"
-"納される。"
+"ã\82\92ã\80\81 I<addr> ã\81\8cæ\8c\87ã\81\99ã\83\90ã\83\83ã\83\95ã\82¡ã\83¼ã\81«æ ¼ç´\8dã\81\97ã\81¦è¿\94ã\81\99ã\80\82 I<addrlen> å¼\95ã\81\8dæ\95°ã\81¯ã\80\81 I<addr> "
+"が指している領域のサイズ (バイト単位) に初期化しておかなければならない。 関数"
+"が返る時には、 I<addrlen> にはソケットアドレスの実際のサイズ (バイト単位) が"
+"納される。"
 
 #. type: Plain text
-#: build/C/man2/getsockname.2:76 build/C/man2/getsockopt.2:140
-#: build/C/man2/listen.2:94
+#: build/C/man2/getsockname.2:78 build/C/man2/getsockopt.2:142
+#: build/C/man2/listen.2:109
 msgid "The argument I<sockfd> is not a valid descriptor."
 msgstr "引き数 I<sockfd> は有効なディスクリプターでない。"
 
 #. type: Plain text
-#: build/C/man2/getsockname.2:82
+#: build/C/man2/getsockname.2:84
 msgid ""
 "The I<addr> argument points to memory not in a valid part of the process "
 "address space."
 msgstr ""
-"引き数 I<addr> の指しているメモリがプロセスのアドレス空間の有効な部分ではな"
+"å¼\95ã\81\8dæ\95° I<addr> ã\81®æ\8c\87ã\81\97ã\81¦ã\81\84ã\82\8bã\83¡ã\83¢ã\83ªã\83¼ã\81\8cã\83\97ã\83­ã\82»ã\82¹ã\81®ã\82¢ã\83\89ã\83¬ã\82¹ç©ºé\96\93ã\81®æ\9c\89å\8a¹ã\81ªé\83¨å\88\86ã\81§ã\81¯ã\81ª"
 "い。"
 
 #. type: Plain text
-#: build/C/man2/getsockname.2:86
+#: build/C/man2/getsockname.2:88
 msgid "I<addrlen> is invalid (e.g., is negative)."
 msgstr "I<addrlen> が不正である (例えば、負で場合など)。"
 
 #. type: TP
-#: build/C/man2/getsockname.2:86 build/C/man2/send.2:330
+#: build/C/man2/getsockname.2:88 build/C/man3/if_nameindex.3:83
+#: build/C/man2/send.2:367
 #, no-wrap
 msgid "B<ENOBUFS>"
 msgstr "B<ENOBUFS>"
 
 #. type: Plain text
-#: build/C/man2/getsockname.2:90
+#: build/C/man2/getsockname.2:92
 msgid ""
 "Insufficient resources were available in the system to perform the operation."
 msgstr "処理をするだけの十分なリソースがシステムに無い。"
 
 #. type: Plain text
-#: build/C/man2/getsockname.2:95 build/C/man2/getsockopt.2:169
+#: build/C/man2/getsockname.2:97 build/C/man2/getsockopt.2:171
 msgid "The argument I<sockfd> is a file, not a socket."
 msgstr "引き数 I<sockfd> がソケットではなくファイルである。"
 
 #.  SVr4 documents additional ENOMEM
 #.  and ENOSR error codes.
 #. type: Plain text
-#: build/C/man2/getsockname.2:101
+#: build/C/man2/getsockname.2:103
 msgid ""
 "SVr4, 4.4BSD (the B<getsockname>()  function call appeared in 4.2BSD), "
 "POSIX.1-2001."
@@ -2262,38 +2468,45 @@ msgstr ""
 "SVr4, 4.4BSD (B<getsockname>()  関数は 4.2BSD で追加された), POSIX.1-2001."
 
 #. type: Plain text
-#: build/C/man2/getsockname.2:110
+#: build/C/man2/getsockname.2:114
 msgid ""
-"The third argument of B<getsockname>()  is in reality an I<int *> (and this "
-"is what 4.x BSD and libc4 and libc5 have).  Some POSIX confusion resulted in "
-"the present I<socklen_t>, also used by glibc.  See also B<accept>(2)."
+"The third argument of B<getsockname>()  is in reality an I<int\\ *> (and "
+"this is what 4.x BSD and libc4 and libc5 have).  Some POSIX confusion "
+"resulted in the present I<socklen_t>, also used by glibc.  See also "
+"B<accept>(2)."
 msgstr ""
 "B<getsockname>()  の三番目の引き数は (4.x BSD や libc4, libc5 と同様に) 実際"
-"には I<int *> である。 glibc でも使われている現在の I<socklen_t> に関して、 "
-"POSIX には少し混乱がある。 詳しくは B<accept>(2)  を参照のこと。"
+"には I<int\\ *> である。 glibc でも使われている現在の I<socklen_t> に関し"
+"て、 POSIX には少し混乱がある。 詳しくは B<accept>(2)  を参照のこと。"
 
 #. type: Plain text
-#: build/C/man2/getsockname.2:116
+#: build/C/man2/getsockname.2:121
 msgid ""
-"B<bind>(2), B<socket>(2), B<getifaddrs>(3), B<ip>(7), B<socket>(7), B<unix>"
-"(7)"
+"B<bind>(2), B<socket>(2), B<getifaddrs>(3), B<ip>(7), B<socket>(7), "
+"B<unix>(7)"
 msgstr ""
-"B<bind>(2), B<socket>(2), B<getifaddrs>(3), B<ip>(7), B<socket>(7), B<unix>"
-"(7)"
+"B<bind>(2), B<socket>(2), B<getifaddrs>(3), B<ip>(7), B<socket>(7), "
+"B<unix>(7)"
 
 #. type: TH
-#: build/C/man2/getsockopt.2:42
+#: build/C/man2/getsockopt.2:44
 #, no-wrap
 msgid "GETSOCKOPT"
 msgstr "GETSOCKOPT"
 
+#. type: TH
+#: build/C/man2/getsockopt.2:44
+#, no-wrap
+msgid "2014-04-28"
+msgstr "2014-04-28"
+
 #. type: Plain text
-#: build/C/man2/getsockopt.2:45
+#: build/C/man2/getsockopt.2:47
 msgid "getsockopt, setsockopt - get and set options on sockets"
 msgstr "getsockopt, setsockopt - ソケットのオプションの設定と取得を行なう"
 
 #. type: Plain text
-#: build/C/man2/getsockopt.2:55
+#: build/C/man2/getsockopt.2:57
 #, no-wrap
 msgid ""
 "B<int getsockopt(int >I<sockfd>B<, int >I<level>B<, int >I<optname>B<,>\n"
@@ -2307,19 +2520,19 @@ msgstr ""
 "B<               const void *>I<optval>B<, socklen_t >I<optlen>B<);>\n"
 
 #. type: Plain text
-#: build/C/man2/getsockopt.2:65
+#: build/C/man2/getsockopt.2:67
 msgid ""
 "B<getsockopt>()  and B<setsockopt>()  manipulate options for the socket "
 "referred to by the file descriptor I<sockfd>.  Options may exist at multiple "
 "protocol levels; they are always present at the uppermost socket level."
 msgstr ""
-"B<getsockopt>()  と B<setsockopt>()  は、ファイルディスクリプタ I<socket> で"
-"参照されるソケットに関連するオプションの操作を行う。 オプションは複数のプロト"
-"ã\82³ã\83«å±¤(level)ã\81«å­\98å\9c¨ã\81\99ã\82\8bã\81\8bã\82\82ã\81\97ã\82\8cã\81ªã\81\84ã\81\8cã\80\81 ã\81\93ã\82\8cã\82\89ã\81¯å¸¸ã\81«æ\9c\80ä¸\8aä½\8dã\81®ã\82½ã\82±ã\83\83ã\83\88層ã\81¸ã\81¨è¨­"
-"定される。"
+"B<getsockopt>()  と B<setsockopt>()  は、ファイルディスクリプター I<socket> "
+"で参照されるソケットに関連するオプションの操作を行う。 オプションは複数のプロ"
+"ã\83\88ã\82³ã\83«å±¤(level)ã\81«å­\98å\9c¨ã\81\99ã\82\8bã\81\8bã\82\82ã\81\97ã\82\8cã\81ªã\81\84ã\81\8cã\80\81 ã\81\93ã\82\8cã\82\89ã\81¯å¸¸ã\81«æ\9c\80ä¸\8aä½\8dã\81®ã\82½ã\82±ã\83\83ã\83\88層ã\81¸ã\81¨"
+"定される。"
 
 #. type: Plain text
-#: build/C/man2/getsockopt.2:84
+#: build/C/man2/getsockopt.2:86
 msgid ""
 "When manipulating socket options, the level at which the option resides and "
 "the name of the option must be specified.  To manipulate options at the "
@@ -2329,8 +2542,8 @@ msgid ""
 "is to be interpreted by the B<TCP> protocol, I<level> should be set to the "
 "protocol number of B<TCP>; see B<getprotoent>(3)."
 msgstr ""
-"ã\82½ã\82±ã\83\83ã\83\88ã\83»ã\82ªã\83\97ã\82·ã\83§ã\83³ã\82\92æ\93\8dä½\9cã\81\99ã\82\8bé\9a\9bã\81«ã\81¯ã\80\81ã\82ªã\83\97ã\82·ã\83§ã\83³ã\81®å±¤ (level) ã\81¨ ã\82ªã\83\97ã\82·ã\83§ã\83³ã\81®"
-"å\90\8då\89\8dã\82\92æ\8c\87å®\9aã\81\97ã\81ªã\81\91ã\82\8cã\81°ã\81ªã\82\89ã\81ªã\81\84ã\80\82 ã\82½ã\82±ã\83\83ã\83\88 API å±¤ã\81§ã\82ªã\83\97ã\82·ã\83§ã\83³ã\82\92æ\93\8dä½\9cã\81\99ã\82\8bç\82ºã\81«ã\81¯ã\80\81 "
+"ã\82½ã\82±ã\83\83ã\83\88ã\82ªã\83\97ã\82·ã\83§ã\83³ã\82\92æ\93\8dä½\9cã\81\99ã\82\8bé\9a\9bã\81«ã\81¯ã\80\81ã\82ªã\83\97ã\82·ã\83§ã\83³ã\81®å±¤ (level) ã\81¨ ã\82ªã\83\97ã\82·ã\83§ã\83³ã\81®å\90\8d"
+"前を指定しなければならない。 ソケット API 層でオプションを操作する為には、 "
 "I<level> を B<SOL_SOCKET> に指定する。 他の全ての層でオプションを操作する為に"
 "は、与えられたオプションの 制御主体となるプロトコルのプロトコル番号を指定す"
 "る。例えば、 オプションが B<TCP> プロトコルで解釈されるべきことを指示するに"
@@ -2338,7 +2551,7 @@ msgstr ""
 "B<getprotoent>(3)  を参照すること。"
 
 #. type: Plain text
-#: build/C/man2/getsockopt.2:106
+#: build/C/man2/getsockopt.2:108
 msgid ""
 "The arguments I<optval> and I<optlen> are used to access option values for "
 "B<setsockopt>().  For B<getsockopt>()  they identify a buffer in which the "
@@ -2356,7 +2569,7 @@ msgstr ""
 "I<optval> は NULL でも良い。"
 
 #. type: Plain text
-#: build/C/man2/getsockopt.2:116
+#: build/C/man2/getsockopt.2:118
 msgid ""
 "I<Optname> and any specified options are passed uninterpreted to the "
 "appropriate protocol module for interpretation.  The include file I<E<lt>sys/"
@@ -2364,14 +2577,13 @@ msgid ""
 "below.  Options at other protocol levels vary in format and name; consult "
 "the appropriate entries in section 4 of the manual."
 msgstr ""
-"I<optname> および指定されたオプションは解釈されずに、適切なプロトコル・モ"
-"ジュールに 渡されて解釈される。インクルード・ファイル I<E<lt>sys/socket."
-"hE<gt>> には後述のソケット層のオプションの定義が含まれている。 他のプロトコル"
-"層では名前や形式は異なる。 マニュアルのセクション 4 の適切なエントリを参照す"
-"ること。"
+"I<optname> および指定されたオプションは解釈されずに、適切なプロトコルモジュー"
+"ルに 渡されて解釈される。インクルードファイル I<E<lt>sys/socket.hE<gt>> には"
+"後述のソケット層のオプションの定義が含まれている。 他のプロトコル層では名前や"
+"形式は異なる。 マニュアルのセクション 4 の適切なエントリーを参照すること。"
 
 #. type: Plain text
-#: build/C/man2/getsockopt.2:125
+#: build/C/man2/getsockopt.2:127
 msgid ""
 "Most socket-level options utilize an I<int> argument for I<optval>.  For "
 "B<setsockopt>(), the argument should be nonzero to enable a boolean option, "
@@ -2382,7 +2594,7 @@ msgstr ""
 "を指定し、 無効(disable)にするにはゼロを指定する。"
 
 #. type: Plain text
-#: build/C/man2/getsockopt.2:129
+#: build/C/man2/getsockopt.2:131
 msgid ""
 "For a description of the available socket options see B<socket>(7)  and the "
 "appropriate protocol man pages."
@@ -2391,7 +2603,7 @@ msgstr ""
 "ルの man ページを参照のこと。"
 
 #. type: Plain text
-#: build/C/man2/getsockopt.2:150
+#: build/C/man2/getsockopt.2:152
 msgid ""
 "The address pointed to by I<optval> is not in a valid part of the process "
 "address space.  For B<getsockopt>(), this error may also be returned if "
@@ -2402,7 +2614,7 @@ msgstr ""
 "い場合にもこのエラーが返される。"
 
 #. type: Plain text
-#: build/C/man2/getsockopt.2:161
+#: build/C/man2/getsockopt.2:163
 msgid ""
 "I<optlen> invalid in B<setsockopt>().  In some cases this error can also "
 "occur for an invalid value in I<optval> (e.g., for the B<IP_ADD_MEMBERSHIP> "
@@ -2413,13 +2625,13 @@ msgstr ""
 "B<IP_ADD_MEMBERSHIP> オプションなど)。"
 
 #. type: TP
-#: build/C/man2/getsockopt.2:161
+#: build/C/man2/getsockopt.2:163
 #, no-wrap
 msgid "B<ENOPROTOOPT>"
 msgstr "B<ENOPROTOOPT>"
 
 #. type: Plain text
-#: build/C/man2/getsockopt.2:164
+#: build/C/man2/getsockopt.2:166
 msgid "The option is unknown at the level indicated."
 msgstr "指定された層(level)にはこのオプションは存在しない。"
 
@@ -2428,15 +2640,14 @@ msgstr "指定された層(level)にはこのオプションは存在しない
 #.  .BR SO_SNDLOWAT ", " SO_RCVLOWAT ", " SO_SNDTIMEO ", " SO_RCVTIMEO
 #.  options
 #. type: Plain text
-#: build/C/man2/getsockopt.2:176
+#: build/C/man2/getsockopt.2:178
 msgid ""
 "SVr4, 4.4BSD (these system calls first appeared in 4.2BSD), POSIX.1-2001."
 msgstr ""
-"SVr4, 4.4BSD (これらのシステム・コールは 4.2BSD で最初に現れた), "
-"POSIX.1-2001."
+"SVr4, 4.4BSD (これらのシステムコールは 4.2BSD で最初に現れた), POSIX.1-2001."
 
 #. type: Plain text
-#: build/C/man2/getsockopt.2:197
+#: build/C/man2/getsockopt.2:199
 msgid ""
 "The I<optlen> argument of B<getsockopt>()  and B<setsockopt>()  is in "
 "reality an I<int [*]> (and this is what 4.x BSD and libc4 and libc5 have).  "
@@ -2449,7 +2660,7 @@ msgstr ""
 "る。 B<accept>(2)  も参照のこと。"
 
 #. type: Plain text
-#: build/C/man2/getsockopt.2:200
+#: build/C/man2/getsockopt.2:202
 msgid ""
 "Several of the socket options should be handled at lower levels of the "
 "system."
@@ -2457,153 +2668,496 @@ msgstr ""
 "ソケットのオプションのいくつかはシステムのより低い層で 処理されるべきである。"
 
 #. type: Plain text
-#: build/C/man2/getsockopt.2:207
+#: build/C/man2/getsockopt.2:213
 msgid ""
-"B<ioctl>(2), B<socket>(2), B<getprotoent>(3), B<protocols>(5), B<socket>(7), "
-"B<tcp>(7), B<unix>(7)"
+"B<ioctl>(2), B<socket>(2), B<getprotoent>(3), B<protocols>(5), B<ip>(7), "
+"B<packet>(7), B<socket>(7), B<tcp>(7), B<udp>(7), B<unix>(7)"
 msgstr ""
-"B<ioctl>(2), B<socket>(2), B<getprotoent>(3), B<protocols>(5), B<socket>(7), "
-"B<tcp>(7), B<unix>(7)"
+"B<ioctl>(2), B<socket>(2), B<getprotoent>(3), B<protocols>(5), B<ip>(7), "
+"B<packet>(7), B<socket>(7), B<tcp>(7), B<udp>(7), B<unix>(7)"
 
 #. type: TH
-#: build/C/man2/listen.2:43
+#: build/C/man3/if_nameindex.3:26
 #, no-wrap
-msgid "LISTEN"
-msgstr "LISTEN"
+msgid "IF_NAMEINDEX"
+msgstr "IF_NAMEINDEX"
 
 #. type: TH
-#: build/C/man2/listen.2:43
+#: build/C/man3/if_nameindex.3:26
 #, no-wrap
-msgid "2008-11-20"
-msgstr "2008-11-20"
+msgid "2012-11-21"
+msgstr "2012-11-21"
 
 #. type: Plain text
-#: build/C/man2/listen.2:46
-msgid "listen - listen for connections on a socket"
-msgstr "listen - ソケット(socket)上の接続を待つ"
+#: build/C/man3/if_nameindex.3:29
+msgid ""
+"if_nameindex, if_freenameindex - get network interface names and indexes"
+msgstr ""
+"if_nameindex, if_freenameindex - ネットワークインターフェースの名前とインデッ"
+"クスを取得する"
 
 #. type: Plain text
-#: build/C/man2/listen.2:53
+#: build/C/man3/if_nameindex.3:32 build/C/man3/if_nametoindex.3:32
 #, no-wrap
-msgid "B<int listen(int >I<sockfd>B<, int >I<backlog>B<);>\n"
-msgstr "B<int listen(int >I<sockfd>B<, int >I<backlog>B<);>\n"
+msgid "B<#include E<lt>net/if.hE<gt>>\n"
+msgstr "B<#include E<lt>net/if.hE<gt>>\n"
 
 #. type: Plain text
-#: build/C/man2/listen.2:61
+#: build/C/man3/if_nameindex.3:35
+#, no-wrap
 msgid ""
-"B<listen>()  marks the socket referred to by I<sockfd> as a passive socket, "
-"that is, as a socket that will be used to accept incoming connection "
-"requests using B<accept>(2)."
+"B<struct if_nameindex *if_nameindex(void);>\n"
+"B<void if_freenameindex(struct if_nameindex *>I<ptr>B<);>\n"
 msgstr ""
-"B<listen>()  は I<sockfd> が参照するソケットを接続待ちソケット (passive "
-"socket) として印をつける。 接続待ちソケットとは、 B<accept>(2)  を使って到着"
-"した接続要求を受け付けるのに使用されるソケットである。"
+"B<struct if_nameindex *if_nameindex(void);>\n"
+"B<void if_freenameindex(struct if_nameindex *>I<ptr>B<);>\n"
 
 #. type: Plain text
-#: build/C/man2/listen.2:68
+#: build/C/man3/if_nameindex.3:46
 msgid ""
-"The I<sockfd> argument is a file descriptor that refers to a socket of type "
-"B<SOCK_STREAM> or B<SOCK_SEQPACKET>."
+"The B<if_nameindex>()  function returns an array of I<if_nameindex> "
+"structures, each containing information about one of the network interfaces "
+"on the local system.  The I<if_nameindex> structure contains at least the "
+"following entries:"
 msgstr ""
-"I<sockfd> 引き数は、 B<SOCK_STREAM> 型か B<SOCK_SEQPACKET> 型のソケットを参照"
-"するファイルディスクリプタである。"
+"B<if_nameindex>() 関数は I<if_nameindex> 構造体の配列を返す。 各構造体には"
+"ローカルシステムのネットワークインターフェースのいずれかの情報が入る。 "
+"I<if_nameindex> 構造体には少なくとも以下のフィールドがある。"
 
 #. type: Plain text
-#: build/C/man2/listen.2:80
+#: build/C/man3/if_nameindex.3:51
+#, no-wrap
 msgid ""
-"The I<backlog> argument defines the maximum length to which the queue of "
-"pending connections for I<sockfd> may grow.  If a connection request arrives "
-"when the queue is full, the client may receive an error with an indication "
-"of B<ECONNREFUSED> or, if the underlying protocol supports retransmission, "
-"the request may be ignored so that a later reattempt at connection succeeds."
+"    unsigned int if_index; /* Index of interface (1, 2, ...) */\n"
+"    char        *if_name;  /* Null-terminated name (\"eth0\", etc.) */\n"
 msgstr ""
-"I<backlog> 引き数は、 I<sockfd> についての保留中の接続のキューの最大長を指定"
-"する。 キューがいっぱいの状態で接続要求が到着すると、クライアントは "
-"B<ECONNREFUSED> というエラーを受け取る。下位層のプロトコルが再送信をサポート "
-"していれば、要求は無視され、これ以降の接続要求の再送信が成功するかもしれな"
-"い。"
-
-#. type: Plain text
-#: build/C/man2/listen.2:89
-msgid "Another socket is already listening on the same port."
-msgstr "別のソケットが既に同じポートを listen している。"
+"    unsigned int if_index; /* インターフェースのインデックス (1, 2, ...) */\n"
+"    char        *if_name;  /*ヌル終端された名前 (\"eth0\" など) */\n"
 
 #. type: Plain text
-#: build/C/man2/listen.2:99 build/C/man2/send.2:349
-msgid "The argument I<sockfd> is not a socket."
-msgstr "引き数 I<sockfd> はソケットではない。"
+#: build/C/man3/if_nameindex.3:65
+msgid ""
+"The I<if_index> field contains the interface index.  The I<ifa_name> field "
+"points to the null-terminated interface name.  The end of the array is "
+"indicated by entry with I<if_index> set to zero and I<ifa_name> set to NULL."
+msgstr ""
+"I<if_index> フィールドにはインターフェースのインデックスが入る。 I<ifa_name> "
+"フィールドはヌル終端されたインターフェース名を指す。 配列の最後は、 "
+"I<if_index> が 0 で I<ifa_name> が NULL のエントリーで示される。"
 
 #. type: Plain text
-#: build/C/man2/listen.2:104
-msgid "The socket is not of a type that supports the B<listen>()  operation."
-msgstr "ソケットは B<listen>()  がサポートしている型ではない。"
+#: build/C/man3/if_nameindex.3:71
+msgid ""
+"The data structure returned by B<if_nameindex>()  is dynamically allocated "
+"and should be freed using B<if_freenameindex>()  when no longer needed."
+msgstr ""
+"B<if_nameindex>() が返すデータ構造体は動的に確保される。 必要なくなった際に"
+"は B<if_freenameindex>() で解放すべきである。"
 
 #. type: Plain text
-#: build/C/man2/listen.2:109
+#: build/C/man3/if_nameindex.3:78
 msgid ""
-"4.4BSD, POSIX.1-2001.  The B<listen>()  function call first appeared in "
-"4.2BSD."
-msgstr "4.4BSD, POSIX.1-2001.  B<listen>()  関数は 4.2BSDで初めて実装された。"
+"On success, B<if_nameindex>()  returns pointer to the array; on error, NULL "
+"is returned, and I<errno> is set appropriately."
+msgstr ""
+"成功した場合には B<if_nameindex>() は配列へのポインターを返す。エラー時には "
+"NULL が返され、 I<errno> が適切に設定される。"
 
 #. type: Plain text
-#: build/C/man2/listen.2:111
-msgid "To accept connections, the following steps are performed:"
-msgstr "接続を受け付けるには、以下の処理が実行される。"
-
-#. type: TP
-#: build/C/man2/listen.2:112 build/C/man2/select_tut.2:345
-#, no-wrap
-msgid "1."
-msgstr "1."
+#: build/C/man3/if_nameindex.3:83
+msgid "B<if_nameindex>()  may fail and set I<errno> if:"
+msgstr "B<if_nameindex>() が失敗した場合には以下の I<errno> が設定される。"
 
 #. type: Plain text
-#: build/C/man2/listen.2:115
-msgid "A socket is created with B<socket>(2)."
-msgstr "B<socket>(2)  でソケットを作成する。"
-
-#. type: TP
-#: build/C/man2/listen.2:115 build/C/man2/select_tut.2:354
-#, no-wrap
-msgid "2."
-msgstr "2."
+#: build/C/man3/if_nameindex.3:86
+msgid "Insufficient resources available."
+msgstr "利用可能なリソースが十分にない。"
 
 #. type: Plain text
-#: build/C/man2/listen.2:121
+#: build/C/man3/if_nameindex.3:97
 msgid ""
-"The socket is bound to a local address using B<bind>(2), so that other "
-"sockets may be B<connect>(2)ed to it."
+"B<if_nameindex>()  may also fail for any of the errors specified for "
+"B<socket>(2), B<bind>(2), B<ioctl>(2), B<getsockname>(2), B<recvmsg>(2), "
+"B<sendto>(2), or B<malloc>(3)."
 msgstr ""
-"B<bind>(2)  を使ってソケットにローカルアドレスを割り当てて、 他のソケットがこ"
-"のソケットに B<connect>(2)  できるようにする。"
-
-#. type: TP
-#: build/C/man2/listen.2:121 build/C/man2/select_tut.2:358
-#, no-wrap
-msgid "3."
-msgstr "3."
+"B<if_nameindex>() は、 B<socket>(2), B<bind>(2), B<ioctl>(2), "
+"B<getsockname>(2), B<recvmsg>(2), B<sendto>(2), B<malloc>(3) に対して規定され"
+"ているエラーのいずれかで失敗する場合がある。"
 
 #. type: Plain text
-#: build/C/man2/listen.2:125
+#: build/C/man3/if_nameindex.3:104
 msgid ""
-"A willingness to accept incoming connections and a queue limit for incoming "
-"connections are specified with B<listen>()."
+"The B<if_nameindex>()  function first appeared in glibc 2.1, but before "
+"glibc 2.3.4, the implementation supported only interfaces with IPv4 "
+"addresses.  Support of interfaces that don't have IPv4 addresses is "
+"available only on kernels that support netlink."
 msgstr ""
-"B<listen>()  を使って、接続要求を受け付ける意志と接続要求を入れるキュー長を指"
-"定する。"
+"B<if_nameindex>() 関数は glibc 2.1 で初めて登場したが、 glibc 2.3.4 より前の"
+"バージョンの実装では IPv4 アドレスを持つインターフェースのみをサポートしてい"
+"た。 IPv4 アドレスを持たないインターフェースがサポートされているのは、 "
+"netlink をサポートするカーネルにおいてのみである。"
+
+#. type: Plain text
+#: build/C/man3/if_nameindex.3:106 build/C/man3/if_nametoindex.3:94
+msgid "RFC\\ 3493, POSIX.1-2001."
+msgstr "RFC\\ 3493, POSIX.1-2001."
+
+#. type: Plain text
+#: build/C/man3/if_nameindex.3:108 build/C/man3/if_nametoindex.3:96
+msgid "This function first appeared in BSDi."
+msgstr "この関数は BSDi 初めて登場した。"
+
+#. type: Plain text
+#: build/C/man3/if_nameindex.3:112
+msgid ""
+"The program below demonstrates the use of the functions described on this "
+"page.  An example of the output this program might produce is the following:"
+msgstr ""
+"以下のプログラムはこのページで説明した関数の使い方を示している。このプログラ"
+"ムが生成する出力は以下のようになる。"
+
+#. type: Plain text
+#: build/C/man3/if_nameindex.3:119
+#, no-wrap
+msgid ""
+"$ B<./a.out>I<\n"
+"1: lo\n"
+"2: wlan0\n"
+"3: em1>\n"
+msgstr ""
+"$ B<./a.out>I<\n"
+"1: lo\n"
+"2: wlan0\n"
+"3: em1>\n"
+
+#. type: Plain text
+#: build/C/man3/if_nameindex.3:127
+#, no-wrap
+msgid ""
+"#include E<lt>net/if.hE<gt>\n"
+"#include E<lt>stdio.hE<gt>\n"
+"#include E<lt>stdlib.hE<gt>\n"
+"#include E<lt>unistd.hE<gt>\n"
+msgstr ""
+"#include E<lt>net/if.hE<gt>\n"
+"#include E<lt>stdio.hE<gt>\n"
+"#include E<lt>stdlib.hE<gt>\n"
+"#include E<lt>unistd.hE<gt>\n"
+
+#. type: Plain text
+#: build/C/man3/if_nameindex.3:132
+#, no-wrap
+msgid ""
+"int\n"
+"main(int argc, char *argv[])\n"
+"{\n"
+"    struct if_nameindex *if_ni, *i;\n"
+msgstr ""
+"int\n"
+"main(int argc, char *argv[])\n"
+"{\n"
+"    struct if_nameindex *if_ni, *i;\n"
+
+#. type: Plain text
+#: build/C/man3/if_nameindex.3:138
+#, no-wrap
+msgid ""
+"    if_ni = if_nameindex();\n"
+"    if (if_ni == NULL) {\n"
+"        perror(\"if_nameindex\");\n"
+"        exit(EXIT_FAILURE);\n"
+"    }\n"
+msgstr ""
+"    if_ni = if_nameindex();\n"
+"    if (if_ni == NULL) {\n"
+"        perror(\"if_nameindex\");\n"
+"        exit(EXIT_FAILURE);\n"
+"    }\n"
+
+#. type: Plain text
+#: build/C/man3/if_nameindex.3:141
+#, no-wrap
+msgid ""
+"    for (i = if_ni; ! (i-E<gt>if_index == 0 && i-E<gt>if_name == NULL); i++)\n"
+"        printf(\"%u: %s\\en\", i-E<gt>if_index, i-E<gt>if_name);\n"
+msgstr ""
+"    for (i = if_ni; ! (i-E<gt>if_index == 0 && i-E<gt>if_name == NULL); i++)\n"
+"        printf(\"%u: %s\\en\", i-E<gt>if_index, i-E<gt>if_name);\n"
+
+#. type: Plain text
+#: build/C/man3/if_nameindex.3:143
+#, no-wrap
+msgid "    if_freenameindex(if_ni);\n"
+msgstr "    if_freenameindex(if_ni);\n"
+
+#. type: Plain text
+#: build/C/man3/if_nameindex.3:146 build/C/man2/select.2:591
+#, no-wrap
+msgid ""
+"    exit(EXIT_SUCCESS);\n"
+"}\n"
+msgstr ""
+"    exit(EXIT_SUCCESS);\n"
+"}\n"
+
+#. type: Plain text
+#: build/C/man3/if_nameindex.3:154
+msgid ""
+"B<getsockopt>(2), B<setsockopt>(2), B<getifaddrs>(3), B<if_indextoname>(3), "
+"B<if_nametoindex>(3), B<ifconfig>(8)"
+msgstr ""
+"B<getsockopt>(2), B<setsockopt>(2), B<getifaddrs>(3), B<if_indextoname>(3), "
+"B<if_nametoindex>(3), B<ifconfig>(8)"
+
+#. type: TH
+#: build/C/man3/if_nametoindex.3:25
+#, no-wrap
+msgid "IF_NAMETOINDEX"
+msgstr "IF_NAMETOINDEX"
+
+#. type: TH
+#: build/C/man3/if_nametoindex.3:25
+#, no-wrap
+msgid "2014-04-01"
+msgstr "2014-04-01"
+
+#. type: Plain text
+#: build/C/man3/if_nametoindex.3:29
+msgid ""
+"if_nametoindex, if_indextoname - mappings between network interface names "
+"and indexes"
+msgstr ""
+"if_nametoindex, if_indextoname - ネットワークインターフェースの名前とインデッ"
+"クスのマッピングを行う"
+
+#. type: Plain text
+#: build/C/man3/if_nametoindex.3:34
+#, no-wrap
+msgid "B<unsigned int if_nametoindex(const char *>I<ifname>B<);>\n"
+msgstr "B<unsigned int if_nametoindex(const char *>I<ifname>B<);>\n"
+
+#. type: Plain text
+#: build/C/man3/if_nametoindex.3:36
+#, no-wrap
+msgid "B<char *if_indextoname(unsigned int ifindex, char *>I<ifname>B<);>\n"
+msgstr "B<char *if_indextoname(unsigned int ifindex, char *>I<ifname>B<);>\n"
+
+#. type: Plain text
+#: build/C/man3/if_nametoindex.3:43
+msgid ""
+"The B<if_nametoindex>()  function returns the index of the network interface "
+"corresponding to the name I<ifname>."
+msgstr ""
+"B<if_nametoindex>() 関数は、 名前が I<ifname> のネットワークインターフェース"
+"のインデックスを返す。"
+
+#. type: Plain text
+#: build/C/man3/if_nametoindex.3:54
+msgid ""
+"The B<if_indextoname>()  function returns the name of the network interface "
+"corresponding to the interface index I<ifindex>.  The name is placed in the "
+"buffer pointed to by I<ifname>.  The buffer must allow for the storage of at "
+"least B<IF_NAMESIZE> bytes."
+msgstr ""
+"B<if_indextoname>() 関数は、 インターフェースのインデックスが I<ifindex> に対"
+"応するネットワークインターフェースの名前を返す。 名前は I<ifname> が指すバッ"
+"ファーに格納される。 バッファーは少なくとも B<IF_NAMESIZE> バイトの領域が必要"
+"である。"
+
+#. type: Plain text
+#: build/C/man3/if_nametoindex.3:61
+msgid ""
+"On success, B<if_nametoindex>()  returns the index number of the network "
+"interface; on error, 0 is returned and I<errno> is set appropriately."
+msgstr ""
+"成功した場合、 B<if_nametoindex>() はネットワークインターフェースのインデック"
+"ス番号を返す。エラーの場合、 0 を返し、 I<errno> を適切に設定にする。"
+
+#. type: Plain text
+#: build/C/man3/if_nametoindex.3:69
+msgid ""
+"On success, B<if_indextoname>()  returns I<ifname>; on error, NULL is "
+"returned and I<errno> is set appropriately."
+msgstr ""
+"成功した場合には B<if_indextoname>() は I<ifname> を返す。エラー時には NULL "
+"が返され、 I<errno> が適切に設定される。"
+
+#. type: Plain text
+#: build/C/man3/if_nametoindex.3:74
+msgid "B<if_indextoname>()  may fail and set I<errno> if:"
+msgstr "B<if_indextoname>() は以下の I<errno> で失敗する場合がある。"
 
 #. type: TP
-#: build/C/man2/listen.2:125 build/C/man2/select_tut.2:365
+#: build/C/man3/if_nametoindex.3:74
+#, no-wrap
+msgid "B<ENXIO>"
+msgstr "B<ENXIO>"
+
+#. type: Plain text
+#: build/C/man3/if_nametoindex.3:77
+msgid "No interface found for the index."
+msgstr "インデックスに対応するインターフェースがない。"
+
+#. type: Plain text
+#: build/C/man3/if_nametoindex.3:85
+msgid ""
+"B<if_nametoindex>()  and B<if_indextoname>()  may also fail for any of the "
+"errors specified for B<socket>(2)  or B<ioctl>(2)."
+msgstr ""
+"B<if_nametoindex>() と B<if_indextoname>() は、 B<socket>(2) と B<ioctl>(2) "
+"に対して規定されているエラーのいずれかで失敗する場合がある。"
+
+#. type: Plain text
+#: build/C/man3/if_nametoindex.3:92
+msgid ""
+"The B<if_nametoindex>()  and B<if_indextoname>()  functions are thread-safe."
+msgstr ""
+"関数 B<if_nametoindex>() と B<if_indextoname>() はスレッドセーフである。"
+
+#. type: Plain text
+#: build/C/man3/if_nametoindex.3:100
+msgid "B<getifaddrs>(3), B<if_nameindex>(3), B<ifconfig>(8)"
+msgstr "B<getifaddrs>(3), B<if_nameindex>(3), B<ifconfig>(8)"
+
+#. type: TH
+#: build/C/man2/listen.2:45
+#, no-wrap
+msgid "LISTEN"
+msgstr "LISTEN"
+
+#. type: TH
+#: build/C/man2/listen.2:45
+#, no-wrap
+msgid "2014-05-10"
+msgstr "2014-05-10"
+
+#. type: Plain text
+#: build/C/man2/listen.2:48
+msgid "listen - listen for connections on a socket"
+msgstr "listen - ソケット(socket)上の接続を待つ"
+
+#. type: Plain text
+#: build/C/man2/listen.2:55
+#, no-wrap
+msgid "B<int listen(int >I<sockfd>B<, int >I<backlog>B<);>\n"
+msgstr "B<int listen(int >I<sockfd>B<, int >I<backlog>B<);>\n"
+
+#. type: Plain text
+#: build/C/man2/listen.2:63
+msgid ""
+"B<listen>()  marks the socket referred to by I<sockfd> as a passive socket, "
+"that is, as a socket that will be used to accept incoming connection "
+"requests using B<accept>(2)."
+msgstr ""
+"B<listen>()  は I<sockfd> が参照するソケットを接続待ちソケット (passive "
+"socket) として印をつける。 接続待ちソケットとは、 B<accept>(2)  を使って到着"
+"した接続要求を受け付けるのに使用されるソケットである。"
+
+#. type: Plain text
+#: build/C/man2/listen.2:70
+msgid ""
+"The I<sockfd> argument is a file descriptor that refers to a socket of type "
+"B<SOCK_STREAM> or B<SOCK_SEQPACKET>."
+msgstr ""
+"I<sockfd> 引き数は、 B<SOCK_STREAM> 型か B<SOCK_SEQPACKET> 型のソケットを参照"
+"するファイルディスクリプターである。"
+
+#. type: Plain text
+#: build/C/man2/listen.2:82
+msgid ""
+"The I<backlog> argument defines the maximum length to which the queue of "
+"pending connections for I<sockfd> may grow.  If a connection request arrives "
+"when the queue is full, the client may receive an error with an indication "
+"of B<ECONNREFUSED> or, if the underlying protocol supports retransmission, "
+"the request may be ignored so that a later reattempt at connection succeeds."
+msgstr ""
+"I<backlog> 引き数は、 I<sockfd> についての保留中の接続のキューの最大長を指定"
+"する。 キューがいっぱいの状態で接続要求が到着すると、クライアントは "
+"B<ECONNREFUSED> というエラーを受け取る。下位層のプロトコルが再送信をサポート "
+"していれば、要求は無視され、これ以降の接続要求の再送信が成功するかもしれな"
+"い。"
+
+#. type: Plain text
+#: build/C/man2/listen.2:91
+msgid "Another socket is already listening on the same port."
+msgstr "別のソケットが既に同じポートを listen している。"
+
+#. type: Plain text
+#: build/C/man2/listen.2:114 build/C/man2/send.2:386
+msgid "The argument I<sockfd> is not a socket."
+msgstr "引き数 I<sockfd> はソケットではない。"
+
+#. type: Plain text
+#: build/C/man2/listen.2:119
+msgid "The socket is not of a type that supports the B<listen>()  operation."
+msgstr "ソケットは B<listen>()  がサポートしている型ではない。"
+
+#. type: Plain text
+#: build/C/man2/listen.2:124
+msgid ""
+"4.4BSD, POSIX.1-2001.  The B<listen>()  function call first appeared in "
+"4.2BSD."
+msgstr "4.4BSD, POSIX.1-2001.  B<listen>()  関数は 4.2BSDで初めて実装された。"
+
+#. type: Plain text
+#: build/C/man2/listen.2:126
+msgid "To accept connections, the following steps are performed:"
+msgstr "接続を受け付けるには、以下の処理が実行される。"
+
+#. type: TP
+#: build/C/man2/listen.2:127 build/C/man2/select_tut.2:347
+#, no-wrap
+msgid "1."
+msgstr "1."
+
+#. type: Plain text
+#: build/C/man2/listen.2:130
+msgid "A socket is created with B<socket>(2)."
+msgstr "B<socket>(2)  でソケットを作成する。"
+
+#. type: TP
+#: build/C/man2/listen.2:130 build/C/man2/select_tut.2:356
+#, no-wrap
+msgid "2."
+msgstr "2."
+
+#. type: Plain text
+#: build/C/man2/listen.2:136
+msgid ""
+"The socket is bound to a local address using B<bind>(2), so that other "
+"sockets may be B<connect>(2)ed to it."
+msgstr ""
+"B<bind>(2)  を使ってソケットにローカルアドレスを割り当てて、 他のソケットがこ"
+"のソケットに B<connect>(2)  できるようにする。"
+
+#. type: TP
+#: build/C/man2/listen.2:136 build/C/man2/select_tut.2:360
+#, no-wrap
+msgid "3."
+msgstr "3."
+
+#. type: Plain text
+#: build/C/man2/listen.2:140
+msgid ""
+"A willingness to accept incoming connections and a queue limit for incoming "
+"connections are specified with B<listen>()."
+msgstr ""
+"B<listen>()  を使って、接続要求を受け付ける意志と接続要求を入れるキュー長を指"
+"定する。"
+
+#. type: TP
+#: build/C/man2/listen.2:140 build/C/man2/select_tut.2:367
 #, no-wrap
 msgid "4."
 msgstr "4."
 
 #. type: Plain text
-#: build/C/man2/listen.2:128
+#: build/C/man2/listen.2:143
 msgid "Connections are accepted with B<accept>(2)."
 msgstr "B<accept>(2)  を使って接続を受け付ける。"
 
 #. type: Plain text
-#: build/C/man2/listen.2:151
+#: build/C/man2/listen.2:166
 msgid ""
 "The behavior of the I<backlog> argument on TCP sockets changed with Linux "
 "2.2.  Now it specifies the queue length for I<completely> established "
@@ -2624,7 +3178,7 @@ msgstr ""
 #.  Don't rely on this value in portable applications since BSD
 #.  (and some BSD-derived systems) limit the backlog to 5.
 #. type: Plain text
-#: build/C/man2/listen.2:164
+#: build/C/man2/listen.2:179
 msgid ""
 "If the I<backlog> argument is greater than the value in I</proc/sys/net/core/"
 "somaxconn>, then it is silently truncated to that value; the default value "
@@ -2637,42 +3191,36 @@ msgstr ""
 "埋め込みの固定値 B<SOMAXCONN> であり、その値は 128 であった。"
 
 #. type: Plain text
-#: build/C/man2/listen.2:172
+#: build/C/man2/listen.2:188
 msgid "B<accept>(2), B<bind>(2), B<connect>(2), B<socket>(2), B<socket>(7)"
 msgstr "B<accept>(2), B<bind>(2), B<connect>(2), B<socket>(2), B<socket>(7)"
 
 #. type: TH
-#: build/C/man2/recv.2:39
+#: build/C/man2/recv.2:41
 #, no-wrap
 msgid "RECV"
 msgstr "RECV"
 
-#. type: TH
-#: build/C/man2/recv.2:39
-#, no-wrap
-msgid "2011-09-16"
-msgstr "2011-09-16"
-
 #. type: Plain text
-#: build/C/man2/recv.2:42
+#: build/C/man2/recv.2:44
 msgid "recv, recvfrom, recvmsg - receive a message from a socket"
 msgstr "recv, recvfrom, recvmsg - ソケットからメッセージを受け取る"
 
 #. type: Plain text
-#: build/C/man2/recv.2:47 build/C/man2/select.2:53
-#: build/C/man2/select_tut.2:45
+#: build/C/man2/recv.2:49 build/C/man2/select.2:53
+#: build/C/man2/select_tut.2:47
 #, no-wrap
 msgid "B<#include E<lt>sys/types.hE<gt>>\n"
 msgstr "B<#include E<lt>sys/types.hE<gt>>\n"
 
 #. type: Plain text
-#: build/C/man2/recv.2:51
+#: build/C/man2/recv.2:53
 #, no-wrap
 msgid "B<ssize_t recv(int >I<sockfd>B<, void *>I<buf>B<, size_t >I<len>B<, int >I<flags>B<);>\n"
 msgstr "B<ssize_t recv(int >I<sockfd>B<, void *>I<buf>B<, size_t >I<len>B<, int >I<flags>B<);>\n"
 
 #. type: Plain text
-#: build/C/man2/recv.2:54
+#: build/C/man2/recv.2:56
 #, no-wrap
 msgid ""
 "B<ssize_t recvfrom(int >I<sockfd>B<, void *>I<buf>B<, size_t >I<len>B<, int >I<flags>B<,>\n"
@@ -2682,78 +3230,40 @@ msgstr ""
 "B<                 struct sockaddr *>I<src_addr>B<, socklen_t *>I<addrlen>B<);>\n"
 
 #. type: Plain text
-#: build/C/man2/recv.2:56
+#: build/C/man2/recv.2:58
 #, no-wrap
 msgid "B<ssize_t recvmsg(int >I<sockfd>B<, struct msghdr *>I<msg>B<, int >I<flags>B<);>\n"
 msgstr "B<ssize_t recvmsg(int >I<sockfd>B<, struct msghdr *>I<msg>B<, int >I<flags>B<);>\n"
 
 #. type: Plain text
-#: build/C/man2/recv.2:64
+#: build/C/man2/recv.2:70
 msgid ""
-"The B<recvfrom>()  and B<recvmsg>()  calls are used to receive messages from "
-"a socket, and may be used to receive data on a socket whether or not it is "
-"connection-oriented."
+"The B<recv>(), B<recvfrom>(), and B<recvmsg>()  calls are used to receive "
+"messages from a socket.  They may be used to receive data on both "
+"connectionless and connection-oriented sockets.  This page first describes "
+"common features of all three system calls, and then describes the "
+"differences between the calls."
 msgstr ""
-"B<recvfrom>()  と B<recvmsg>()  コールは、ソケットからメッセージを受け取るの"
-"に使用する。 またソケットのデータ受信にも使うことができ、 このときソケットは"
-"接続指向 (connection-oriened) であってもなくてもよい。"
+"B<recv>(), B<recvfrom>(), B<recvmsg>() コールは、 ソケットからメッセージを受"
+"け取るのに使用される。 これらはコネクションレス型のソケットにも接続指向 "
+"(connection-oriened) 型のソケットにも使用できる。 このページでは、まずこれら "
+"3 つのシステムコールすべてに共通の機能について説明し、 システムコール間の違い"
+"について説明する。"
 
-#.  (Note: for datagram sockets in both the UNIX and Internet domains,
-#.  .I src_addr
-#.  is filled in.
-#.  .I src_addr
-#.  is also filled in for stream sockets in the UNIX domain, but is not
-#.  filled in for stream sockets in the Internet domain.)
-#.  [The above notes on AF_UNIX and AF_INET sockets apply as at
-#.  Kernel 2.4.18. (MTK, 22 Jul 02)]
 #. type: Plain text
-#: build/C/man2/recv.2:93
+#: build/C/man2/recv.2:76
 msgid ""
-"If I<src_addr> is not NULL, and the underlying protocol provides the source "
-"address, this source address is filled in.  When I<src_addr> is NULL, "
-"nothing is filled in; in this case, I<addrlen> is not used, and should also "
-"be NULL.  The argument I<addrlen> is a value-result argument, which the "
-"caller should initialize before the call to the size of the buffer "
-"associated with I<src_addr>, and modified on return to indicate the actual "
-"size of the source address.  The returned address is truncated if the buffer "
-"provided is too small; in this case, I<addrlen> will return a value greater "
-"than was supplied to the call."
-msgstr ""
-"I<src_addr> が NULL 以外で、下層のプロトコルから送信元アドレスが分かる場合、 "
-"I<src_addr> にはこの送信元アドレスが入れられる。 I<src_addr> が NULL の場"
-"合、 I<src_addr> には何も入らない。この場合、 I<addrlen> は使用されず、この引"
-"き数は NULL にしておくべきである。 引き数 I<addrlen> は入出力両用の引き数であ"
-"る。呼び出し時には、呼び出し元が I<src_addr> に割り当てたバッファの大きさで初"
-"期化しておくべきである。 返ってくる時には、送信元アドレスの実際の大きさに変更"
-"される。 渡されたバッファが小さ過ぎる場合には、返されるアドレスの末尾は 切り"
-"詰められる。この場合には、 I<addrlen> では、呼び出し時に渡された値よりも大き"
-"な値が返される。"
-
-#. type: Plain text
-#: build/C/man2/recv.2:105
-msgid ""
-"The B<recv>()  call is normally used only on a I<connected> socket (see "
-"B<connect>(2))  and is identical to B<recvfrom>()  with a NULL I<src_addr> "
-"argument."
+"All three calls return the length of the message on successful completion.  "
+"If a message is too long to fit in the supplied buffer, excess bytes may be "
+"discarded depending on the type of socket the message is received from."
 msgstr ""
-"B<recv>()  コールは通常 I<接続済みの (connected)> ソケット (B<connect>(2)  を"
-"参照) についてのみ使用され、 I<src_addr> 引き数に NULL を指定した B<recvfrom>"
-"()  と等価である。"
-
-#. type: Plain text
-#: build/C/man2/recv.2:111
-msgid ""
-"All three routines return the length of the message on successful "
-"completion.  If a message is too long to fit in the supplied buffer, excess "
-"bytes may be discarded depending on the type of socket the message is "
-"received from."
-msgstr ""
-"これらの三つのルーチンはいずれも、成功した場合にはメッセージの長さを返す。 "
-"メッセージが長過ぎて指定されたバッファに入り切らなかった場合には、 メッセージ"
-"を受信したソケットの種類によっては余分のバイトが捨てられる かもしれない。"
+"これらの三つのシステムコールはいずれも、成功した場合にはメッセージの長さを返"
+"す。 メッセージが長過ぎて指定されたバッファーに入り切らなかった場合には、 "
+"メッセージを受信したソケットの種類によっては余分のバイトが捨てられる かもしれ"
+"ない。"
 
 #. type: Plain text
-#: build/C/man2/recv.2:121
+#: build/C/man2/recv.2:86
 msgid ""
 "If no messages are available at the socket, the receive calls wait for a "
 "message to arrive, unless the socket is nonblocking (see B<fcntl>(2)), in "
@@ -2770,31 +3280,36 @@ msgstr ""
 "る (受信されるデータの最大サイズは要求したサイズである)。"
 
 #. type: Plain text
-#: build/C/man2/recv.2:127
+#: build/C/man2/recv.2:93
 msgid ""
-"The B<select>(2)  or B<poll>(2)  call may be used to determine when more "
-"data arrives."
+"An application can use B<select>(2), B<poll>(2), or B<epoll>(7)  to "
+"determine when more data arrives on a socket."
 msgstr ""
-"B<select>(2)  や B<poll>(2)  コールを使って、次のデータがいつ届くかを判断でき"
-"る。"
+"アプリケーションは B<select>(2), B<poll>(2), B<epoll>(7) を使って、ソケットに"
+"さらにデータが到着しているかを判定することができる。"
+
+#. type: SS
+#: build/C/man2/recv.2:93 build/C/man2/send.2:160
+#, no-wrap
+msgid "The flags argument"
+msgstr "フラグ引き数"
 
 #. type: Plain text
-#: build/C/man2/recv.2:133
+#: build/C/man2/recv.2:97
 msgid ""
-"The I<flags> argument to a B<recv>()  call is formed by ORing one or more of "
-"the following values:"
+"The I<flags> argument is formed by ORing one or more of the following values:"
 msgstr ""
-"B<recv>()  コールの I<flags> 引き数には、以下の値を 1つ以上、ビット単位の論理"
-"å\92\8c ã\82\92å\8f\96ã\81£ã\81\9fã\82\82ã\81®ã\82\92æ\8c\87å®\9aã\81\99ã\82\8b:"
+"I<flags> 引き数には、以下の値を 1つ以上、ビット単位の論理和 を取ったものを指"
+"定する:"
 
 #. type: TP
-#: build/C/man2/recv.2:133
+#: build/C/man2/recv.2:97
 #, no-wrap
 msgid "B<MSG_CMSG_CLOEXEC> (B<recvmsg>() only; since Linux 2.6.23)"
 msgstr "B<MSG_CMSG_CLOEXEC> (B<recvmsg>() のみ; Linux 2.6.23)"
 
 #. type: Plain text
-#: build/C/man2/recv.2:144
+#: build/C/man2/recv.2:108
 msgid ""
 "Set the close-on-exec flag for the file descriptor received via a UNIX "
 "domain file descriptor using the B<SCM_RIGHTS> operation (described in "
@@ -2802,18 +3317,18 @@ msgid ""
 "flag of B<open>(2)."
 msgstr ""
 "(B<unix>(7)  で説明されている)  B<SCM_RIGHTS> 操作を使って UNIX ドメインの"
-"ファイルディスクリプタ経由で受信した ファイルディスクリプタについて close-on-"
-"exec フラグをセットする。 このフラグは、 B<open>(2)  の B<O_CLOEXEC> フラグと"
-"同じ理由で有用である。"
+"ファイルディスクリプター経由で受信した ファイルディスクリプターについて "
+"close-on-exec フラグをセットする。 このフラグは、 B<open>(2)  の "
+"B<O_CLOEXEC> フラグと同じ理由で有用である。"
 
 #. type: TP
-#: build/C/man2/recv.2:144 build/C/man2/send.2:186
+#: build/C/man2/recv.2:108 build/C/man2/send.2:188
 #, no-wrap
 msgid "B<MSG_DONTWAIT> (since Linux 2.2)"
 msgstr "B<MSG_DONTWAIT> (Linux 2.2 以降)"
 
 #. type: Plain text
-#: build/C/man2/recv.2:154
+#: build/C/man2/recv.2:118
 msgid ""
 "Enables nonblocking operation; if the operation would block, the call fails "
 "with the error B<EAGAIN> or B<EWOULDBLOCK> (this can also be enabled using "
@@ -2824,13 +3339,13 @@ msgstr ""
 "で B<O_NONBLOCK> フラグを指定することによっても有効にできる)。"
 
 #. type: TP
-#: build/C/man2/recv.2:154
+#: build/C/man2/recv.2:118
 #, no-wrap
 msgid "B<MSG_ERRQUEUE> (since Linux 2.2)"
 msgstr "B<MSG_ERRQUEUE> (Linux 2.2 以降)"
 
 #. type: Plain text
-#: build/C/man2/recv.2:173
+#: build/C/man2/recv.2:137
 msgid ""
 "This flag specifies that queued errors should be received from the socket "
 "error queue.  The error is passed in an ancillary message with a type "
@@ -2843,14 +3358,14 @@ msgstr ""
 "このフラグを指定すると、 キューに入れられたエラーをソケットのエラーキューから"
 "取りだせるようになる。 このエラーは補助メッセージに組み込まれて渡され、 この"
 "補助メッセージの種別はプロトコルに依存する (IPv4 の場合は B<IP_RECVERR>)。 "
-"ã\83¦ã\83¼ã\82¶ã\81¯å\8d\81å\88\86ã\81ªã\82µã\82¤ã\82ºã\81®ã\83\90ã\83\83ã\83\95ã\82¡ã\82\92ç\94¨æ\84\8fã\81\97ã\81ªã\81\91ã\82\8cã\81°ã\81ªã\82\89ã\81ªã\81\84ã\80\82 è£\9cå\8a©ã\83¡ã\83\83ã\82»ã\83¼ã\82¸ã\81«é\96¢ã\81\99"
-"るより詳細な情報は B<cmsg>(3)  および B<ip>(7)  を参照のこと。 エラーの原因と"
-"なったオリジナルパケットのペイロードは、 I<msg_iovec> 経由で通常のデータとし"
-"て渡される。 エラーを起こしたデータグラムのオリジナルの宛先アドレスは、 "
+"ã\83¦ã\83¼ã\82¶ã\83¼ã\81¯å\8d\81å\88\86ã\81ªã\82µã\82¤ã\82ºã\81®ã\83\90ã\83\83ã\83\95ã\82¡ã\83¼ã\82\92ç\94¨æ\84\8fã\81\97ã\81ªã\81\91ã\82\8cã\81°ã\81ªã\82\89ã\81ªã\81\84ã\80\82 è£\9cå\8a©ã\83¡ã\83\83ã\82»ã\83¼ã\82¸ã\81«"
+"関するより詳細な情報は B<cmsg>(3)  および B<ip>(7)  を参照のこと。 エラーの原"
+"因となったオリジナルパケットのペイロードは、 I<msg_iovec> 経由で通常のデータ"
+"ã\81¨ã\81\97ã\81¦æ¸¡ã\81\95ã\82\8cã\82\8bã\80\82 ã\82¨ã\83©ã\83¼ã\82\92èµ·ã\81\93ã\81\97ã\81\9fã\83\87ã\83¼ã\82¿ã\82°ã\83©ã\83 ã\81®ã\82ªã\83ªã\82¸ã\83\8aã\83«ã\81®å®\9bå\85\88ã\82¢ã\83\89ã\83¬ã\82¹ã\81¯ã\80\81 "
 "I<msg_name> 経由で参照できる。"
 
 #. type: Plain text
-#: build/C/man2/recv.2:185 build/C/man2/recv.2:248
+#: build/C/man2/recv.2:149 build/C/man2/recv.2:212
 msgid ""
 "For local errors, no address is passed (this can be checked with the "
 "I<cmsg_len> member of the I<cmsghdr>).  For error receives, the "
@@ -2862,15 +3377,15 @@ msgstr ""
 "(これは I<cmsghdr> の I<cmsg_len> メンバーでチェックできる)。\n"
 "受信エラーの場合は B<MSG_ERRQUIE> が I<msghdr> にセットされる。\n"
 "エラーが渡された後には、キューに入っている次のエラーに基いて、\n"
-"å\87¦ç\90\86å¾\85ã\81¡ã\81®ã\82½ã\82±ã\83\83ã\83\88ã\83»ã\82¨ã\83©ã\83¼ã\81\8cå\86\8dç\94\9fæ\88\90ã\81\95ã\82\8cã\80\81次ã\81®ã\82½ã\82±ã\83\83ã\83\88æ\93\8dä½\9cã\81®é\9a\9bã\81«æ¸¡ã\81\95ã\82\8cã\82\8bã\80\82"
+"処理待ちのソケットエラーが再生成され、次のソケット操作の際に渡される。"
 
 #. type: Plain text
-#: build/C/man2/recv.2:189
+#: build/C/man2/recv.2:153
 msgid "The error is supplied in a I<sock_extended_err> structure:"
 msgstr "このエラーは I<sock_extended_err> 構造体で提供される:"
 
 #. type: Plain text
-#: build/C/man2/recv.2:196
+#: build/C/man2/recv.2:160
 #, no-wrap
 msgid ""
 "#define SO_EE_ORIGIN_NONE    0\n"
@@ -2884,7 +3399,7 @@ msgstr ""
 "#define SO_EE_ORIGIN_ICMP6   3\n"
 
 #. type: Plain text
-#: build/C/man2/recv.2:208
+#: build/C/man2/recv.2:172
 #, no-wrap
 msgid ""
 "struct sock_extended_err\n"
@@ -2912,13 +3427,13 @@ msgstr ""
 "};\n"
 
 #. type: Plain text
-#: build/C/man2/recv.2:210
+#: build/C/man2/recv.2:174
 #, no-wrap
 msgid "struct sockaddr *SO_EE_OFFENDER(struct sock_extended_err *);\n"
 msgstr "struct sockaddr *SO_EE_OFFENDER(struct sock_extended_err *);\n"
 
 #. type: Plain text
-#: build/C/man2/recv.2:234
+#: build/C/man2/recv.2:198
 msgid ""
 "I<ee_errno> contains the I<errno> number of the queued error.  I<ee_origin> "
 "is the origin code of where the error originated.  The other fields are "
@@ -2930,40 +3445,40 @@ msgid ""
 "caused the error is passed as normal data."
 msgstr ""
 "I<ee_errno> にはキューに入れられたエラーの I<errno> が入っている。 "
-"I<ee_origin> ã\81«ã\81¯ã\82¨ã\83©ã\83¼ã\81\8cç\99ºç\94\9fã\81\97ã\81\9få ´æ\89\80ã\81®ã\82ªã\83ªã\82¸ã\83³ã\83»ã\82³ã\83¼ã\83\89 (origin code) ã\81\8cå\85¥ã\81£"
-"ã\81¦ã\81\84ã\82\8bã\80\82 ä»\96ã\81®ã\83\95ã\82£ã\83¼ã\83«ã\83\89ã\81¯ã\83\97ã\83­ã\83\88ã\82³ã\83«ä¾\9då­\98ã\81§ã\81\82ã\82\8bã\80\82 B<SO_EE_OFFENDER> ã\83\9eã\82¯ã\83­ã\81¯ã\80\81"
-"ã\81\93ã\81®è£\9cå\8a©ç\9a\84ã\81ªã\83¡ã\83\83ã\82»ã\83¼ã\82¸ã\82\92å¼\95ã\81\8dæ\95°ã\81«å\8f\96ã\81£ã\81¦ã\80\81 ã\82¨ã\83©ã\83¼ã\81®ç\99ºç\94\9fã\81\97ã\81\9fã\83\8dã\83\83ã\83\88ã\83¯ã\83¼ã\82¯ã\82ªã\83\96ã\82¸ã\82§"
-"ã\82¯ã\83\88ã\81®ã\82¢ã\83\89ã\83¬ã\82¹ã\81¸ã\81®ã\83\9dã\82¤ã\83³ã\82¿を返す。 アドレスが不明の場合には、 I<sockaddr> の "
+"I<ee_origin> ã\81«ã\81¯ã\82¨ã\83©ã\83¼ã\81\8cç\99ºç\94\9fã\81\97ã\81\9få ´æ\89\80ã\81®ã\82ªã\83ªã\82¸ã\83³ã\82³ã\83¼ã\83\89 (origin code) ã\81\8cå\85¥ã\81£ã\81¦"
+"ã\81\84ã\82\8bã\80\82 ä»\96ã\81®ã\83\95ã\82£ã\83¼ã\83«ã\83\89ã\81¯ã\83\97ã\83­ã\83\88ã\82³ã\83«ä¾\9då­\98ã\81§ã\81\82ã\82\8bã\80\82 B<SO_EE_OFFENDER> ã\83\9eã\82¯ã\83­ã\81¯ã\80\81ã\81\93"
+"ã\81®è£\9cå\8a©ç\9a\84ã\81ªã\83¡ã\83\83ã\82»ã\83¼ã\82¸ã\82\92å¼\95ã\81\8dæ\95°ã\81«å\8f\96ã\81£ã\81¦ã\80\81 ã\82¨ã\83©ã\83¼ã\81®ç\99ºç\94\9fã\81\97ã\81\9fã\83\8dã\83\83ã\83\88ã\83¯ã\83¼ã\82¯ã\82ªã\83\96ã\82¸ã\82§ã\82¯"
+"ã\83\88ã\81®ã\82¢ã\83\89ã\83¬ã\82¹ã\81¸ã\81®ã\83\9dã\82¤ã\83³ã\82¿ã\83¼を返す。 アドレスが不明の場合には、 I<sockaddr> の "
 "I<sa_family> メンバーが B<AF_UNSPEC> になっている。 I<sockaddr> の他のフィー"
 "ルドは不定である。 エラーの発生したパケットのペイロードは通常のデータとして渡"
 "される。"
 
 #. type: TP
-#: build/C/man2/recv.2:248 build/C/man2/recv.2:379 build/C/man2/send.2:228
+#: build/C/man2/recv.2:212 build/C/man2/recv.2:401 build/C/man2/send.2:230
 #, no-wrap
 msgid "B<MSG_OOB>"
 msgstr "B<MSG_OOB>"
 
 #. type: Plain text
-#: build/C/man2/recv.2:255
+#: build/C/man2/recv.2:219
 msgid ""
 "This flag requests receipt of out-of-band data that would not be received in "
 "the normal data stream.  Some protocols place expedited data at the head of "
 "the normal data queue, and thus this flag cannot be used with such protocols."
 msgstr ""
-"ã\81\93ã\81®ã\83\95ã\83©ã\82°ã\81¯ã\80\81é\80\9a常ã\81®ã\83\87ã\83¼ã\82¿ã\83»ã\82¹ã\83\88ã\83ªã\83¼ã\83 ã\81§ã\81¯å\8f\97ä¿¡ã\81§ã\81\8dã\81ªã\81\84 å¸¯å\9f\9få¤\96 (out-of-band) "
-"ã\83\87ã\83¼ã\82¿ã\81®å\8f\97ä¿¡ã\82\92è¦\81æ±\82ã\81\99ã\82\8bã\80\82 ã\83\97ã\83­ã\83\88ã\82³ã\83«ã\81«ã\82\88ã\81£ã\81¦ã\81¯ã\80\81 é\80\9a常ã\81®ã\83\87ã\83¼ã\82¿ã\83»ã\82­ã\83¥ã\83¼ã\81®å\85\88é ­ã\81«"
-"é\80\9fé\81\94ã\83\87ã\83¼ã\82¿ã\82\92ç½®ã\81\8fã\82\82ã\81®ã\81\8cã\81\82ã\82\8bã\81\8cã\80\81 ã\81\9dã\81®ã\82\88ã\81\86ã\81ªã\83\97ã\83­ã\83\88ã\82³ã\83«ã\81§ã\81¯ã\81\93ã\81®ã\83\95ã\83©ã\82°ã\81¯ä½¿ç\94¨ã\81§ã\81\8dã\81ª"
+"このフラグは、通常のデータストリームでは受信できない 帯域外 (out-of-band) "
+"ã\83\87ã\83¼ã\82¿ã\81®å\8f\97ä¿¡ã\82\92è¦\81æ±\82ã\81\99ã\82\8bã\80\82 ã\83\97ã\83­ã\83\88ã\82³ã\83«ã\81«ã\82\88ã\81£ã\81¦ã\81¯ã\80\81 é\80\9a常ã\81®ã\83\87ã\83¼ã\82¿ã\82­ã\83¥ã\83¼ã\81®å\85\88é ­ã\81«é\80\9f"
+"達データを置くものがあるが、 そのようなプロトコルではこのフラグは使用できな"
 "い。"
 
 #. type: TP
-#: build/C/man2/recv.2:255
+#: build/C/man2/recv.2:219
 #, no-wrap
 msgid "B<MSG_PEEK>"
 msgstr "B<MSG_PEEK>"
 
 #. type: Plain text
-#: build/C/man2/recv.2:262
+#: build/C/man2/recv.2:226
 msgid ""
 "This flag causes the receive operation to return data from the beginning of "
 "the receive queue without removing that data from the queue.  Thus, a "
@@ -2974,38 +3489,37 @@ msgstr ""
 "が返ることになる。"
 
 #. type: TP
-#: build/C/man2/recv.2:262
+#: build/C/man2/recv.2:226
 #, no-wrap
 msgid "B<MSG_TRUNC> (since Linux 2.2)"
 msgstr "B<MSG_TRUNC> (Linux 2.2 以降)"
 
 #. type: Plain text
-#: build/C/man2/recv.2:273
+#: build/C/man2/recv.2:234
 msgid ""
-"For raw (B<AF_PACKET>), Internet datagram (since Linux 2.4.27/2.6.8), and "
-"netlink (since Linux 2.6.22) sockets: return the real length of the packet "
-"or datagram, even when it was longer than the passed buffer.  Not "
-"implemented for UNIX domain (B<unix>(7))  sockets."
+"For raw (B<AF_PACKET>), Internet datagram (since Linux 2.4.27/2.6.8), "
+"netlink (since Linux 2.6.22), and UNIX datagram (since Linux 3.4) sockets: "
+"return the real length of the packet or datagram, even when it was longer "
+"than the passed buffer."
 msgstr ""
 "raw ソケット (B<AF_PACKET>)、 Internet datagram ソケット (Linux 2.4.27/2.6.8 "
-"以降)、 netlink (Linux 2.6.22 以降) ソケットの場合、 パケットやデータグラムの"
-"長さが渡したバッファよりも長かった場合にも、 パケットやデータグラムの実際の長"
-"さを返す。 UNIX ドメインソケット (B<unix>(7))  ソケットについては実装されてい"
-"ない。"
+"以降)、 netlink (Linux 2.6.22 以降) ソケット、 UNIX datagram ソケット (Linux "
+"3.4 以降) の場合、パケットやデータグラムの長さが渡したバッファーよりも長かっ"
+"た場合にも、 パケットやデータグラムの実際の長さを返す。"
 
 #. type: Plain text
-#: build/C/man2/recv.2:276
+#: build/C/man2/recv.2:237
 msgid "For use with Internet stream sockets, see B<tcp>(7)."
 msgstr "Internet ストリームソケットでの利用については B<tcp>(7)  を参照。"
 
 #. type: TP
-#: build/C/man2/recv.2:276
+#: build/C/man2/recv.2:237
 #, no-wrap
 msgid "B<MSG_WAITALL> (since Linux 2.2)"
 msgstr "B<MSG_WAITALL> (Linux 2.2 以降)"
 
 #. type: Plain text
-#: build/C/man2/recv.2:283
+#: build/C/man2/recv.2:245
 msgid ""
 "This flag requests that the operation block until the full request is "
 "satisfied.  However, the call may still return less data than requested if a "
@@ -3017,8 +3531,88 @@ msgstr ""
 "生したり、 次に受信されるデータが異なる型だったりした場合には、 要求した量よ"
 "りデータが少なくても返ることがある。"
 
+#. type: SS
+#: build/C/man2/recv.2:245
+#, no-wrap
+msgid "recvfrom()"
+msgstr "recvfrom()"
+
+#. type: Plain text
+#: build/C/man2/recv.2:251
+msgid ""
+"B<recvfrom>()  places the received message into the buffer I<buf>.  The "
+"caller must specify the size of the buffer in I<len>."
+msgstr ""
+"B<recvfrom>() は受信したメッセージをバッファー I<buf> に格納する。 呼び出し元"
+"はバッファーサイズを I<len> で指定しなければならない。"
+
+#.  (Note: for datagram sockets in both the UNIX and Internet domains,
+#.  .I src_addr
+#.  is filled in.
+#.  .I src_addr
+#.  is also filled in for stream sockets in the UNIX domain, but is not
+#.  filled in for stream sockets in the Internet domain.)
+#.  [The above notes on AF_UNIX and AF_INET sockets apply as at
+#.  Kernel 2.4.18. (MTK, 22 Jul 02)]
+#. type: Plain text
+#: build/C/man2/recv.2:279
+msgid ""
+"If I<src_addr> is not NULL, and the underlying protocol provides the source "
+"address of the message, that source address is placed in the buffer pointed "
+"to by I<src_addr>.  In this case, I<addrlen> is a value-result argument.  "
+"Before the call, it should be initialized to the size of the buffer "
+"associated with I<src_addr>.  Upon return, I<addrlen> is updated to contain "
+"the actual size of the source address.  The returned address is truncated if "
+"the buffer provided is too small; in this case, I<addrlen> will return a "
+"value greater than was supplied to the call."
+msgstr ""
+"I<src_addr> が NULL 以外で、下層のプロトコルからメッセージの送信元アドレスが"
+"分かる場合、 この送信元アドレスが I<src_addr> が指すバッファーに格納される。 "
+"この場合、 I<addrlen> は入出力両用の引き数となる。 呼び出し前に、呼び出し元"
+"は I<src_addr> に割り当てたバッファーの大きさで初期化しておくべきである。 "
+"返ってくる時には、 I<addrlen> は送信元アドレスの実際の大きさに変更される。渡"
+"されたバッファーが小さ過ぎる場合には、返されるアドレスの末尾は 切り詰められ"
+"る。この場合には、 I<addrlen> では、呼び出し時に渡された値よりも大きな値が返"
+"される。"
+
+#. type: Plain text
+#: build/C/man2/recv.2:286
+msgid ""
+"If the caller is not interested in the source address, I<src_addr> and "
+"I<addrlen> should be specified as NULL."
+msgstr ""
+"呼び出し元が送信元アドレスを必要としない場合は、 I<src_addr> と I<addrlen> に"
+"は NULL を指定すべきである。"
+
+#. type: SS
+#: build/C/man2/recv.2:286
+#, no-wrap
+msgid "recv()"
+msgstr "recv()"
+
+#. type: Plain text
+#: build/C/man2/recv.2:294
+msgid ""
+"The B<recv>()  call is normally used only on a I<connected> socket (see "
+"B<connect>(2)).  It is equivalent to the call:"
+msgstr ""
+"B<recv>()  コールは通常 I<接続済みの (connected)> ソケットに対してのみ使用さ"
+"れる (B<connect>(2) 参照)。次の呼び出しと等価である。"
+
 #. type: Plain text
-#: build/C/man2/recv.2:291
+#: build/C/man2/recv.2:297
+#, no-wrap
+msgid "    recvfrom(fd, buf, len, flags, NULL, 0));\n"
+msgstr "    recvfrom(fd, buf, len, flags, NULL, 0));\n"
+
+#. type: SS
+#: build/C/man2/recv.2:297
+#, no-wrap
+msgid "recvmsg()"
+msgstr "recvmsg()"
+
+#. type: Plain text
+#: build/C/man2/recv.2:305
 msgid ""
 "The B<recvmsg>()  call uses a I<msghdr> structure to minimize the number of "
 "directly supplied arguments.  This structure is defined as follows in "
@@ -3028,7 +3622,7 @@ msgstr ""
 "用する。この構造体は I<E<lt>sys/socket.hE<gt>> で以下のように定義されている:"
 
 #. type: Plain text
-#: build/C/man2/recv.2:298
+#: build/C/man2/recv.2:312
 #, no-wrap
 msgid ""
 "struct iovec {                    /* Scatter/gather array items */\n"
@@ -3042,7 +3636,7 @@ msgstr ""
 "};\n"
 
 #. type: Plain text
-#: build/C/man2/recv.2:308 build/C/man2/send.2:256
+#: build/C/man2/recv.2:322
 #, no-wrap
 msgid ""
 "struct msghdr {\n"
@@ -3061,40 +3655,60 @@ msgstr ""
 "    struct iovec *msg_iov;        /* scatter/gather 配列 */\n"
 "    size_t        msg_iovlen;     /* msg_iov の要素数 */\n"
 "    void         *msg_control;    /* 補助データ (後述) */\n"
-"    size_t        msg_controllen; /* 補助データバッファ長 */\n"
+"    size_t        msg_controllen; /* 補助データバッファ長 */\n"
 "    int           msg_flags;      /* 受信メッセージのフラグ */\n"
 "};\n"
 
 #. type: Plain text
 #: build/C/man2/recv.2:338
 msgid ""
-"Here I<msg_name> and I<msg_namelen> specify the source address if the socket "
-"is unconnected; I<msg_name> may be given as a NULL pointer if no names are "
-"desired or required.  The fields I<msg_iov> and I<msg_iovlen> describe "
-"scatter-gather locations, as discussed in B<readv>(2).  The field "
-"I<msg_control>, which has length I<msg_controllen>, points to a buffer for "
-"other protocol control-related messages or miscellaneous ancillary data.  "
-"When B<recvmsg>()  is called, I<msg_controllen> should contain the length of "
-"the available buffer in I<msg_control>; upon return from a successful call "
-"it will contain the length of the control message sequence."
-msgstr ""
-"I<msg_name> と I<msg_namelen> は、ソケットが接続されていない場合に送信元のア"
-"ドレスを指定する。 名前が必要ない場合には I<msg_name> に NULL ポインタを指定"
-"する。 I<msg_iov> と I<msg_iovlen> フィールドは B<readv>(2)  に記述されている"
-"ような分解/結合用のベクトル (scatter-gather locations)  を指定する。 "
+"The I<msg_name> field points to a caller-allocated buffer that is used to "
+"return the source address if the socket is unconnected.  The caller should "
+"set I<msg_namelen> to the size of this buffer before this call; upon return "
+"from a successful call, I<msg_namelen> will contain the length of the "
+"returned address.  If the application does not need to know the source "
+"address, I<msg_name> can be specified as NULL."
+msgstr ""
+"フィールド I<msg_name> は、 ソケットが接続されていない場合に送信元アドレスを"
+"返すのに使用されるバッファーを指す。 このバッファーは呼び出し元が確保する。 "
+"呼び出し元は呼び出し前に I<msg_namelen> にこのバッファーの大きさを設定しなけ"
+"ればならない。 呼び出しが成功した場合、呼び出しから返って来た際には "
+"I<msg_namelen> には返されるアドレスの長さが入っている。 アプリケーションが送"
+"信元アドレスを知る必要がない場合には、 I<msg_name> に NULL を指定することがで"
+"きる。"
+
+#. type: Plain text
+#: build/C/man2/recv.2:345
+msgid ""
+"The fields I<msg_iov> and I<msg_iovlen> describe scatter-gather locations, "
+"as discussed in B<readv>(2)."
+msgstr ""
+"I<msg_iov> と I<msg_iovlen> フィールドは scatter-gather 用の場所を指定する。 "
+"B<readv>(2) に説明がある。"
+
+#. type: Plain text
+#: build/C/man2/recv.2:360
+msgid ""
+"The field I<msg_control>, which has length I<msg_controllen>, points to a "
+"buffer for other protocol control-related messages or miscellaneous "
+"ancillary data.  When B<recvmsg>()  is called, I<msg_controllen> should "
+"contain the length of the available buffer in I<msg_control>; upon return "
+"from a successful call it will contain the length of the control message "
+"sequence."
+msgstr ""
 "I<msg_control> フィールドは I<msg_controllen> の長さを持ち、他のプロトコル制"
-"御ã\83¡ã\83\83ã\82»ã\83¼ã\82¸ã\82\84 ç¨®ã\80\85ã\81®è£\9cå\8a©ã\83\87ã\83¼ã\82¿ã\81®ã\81\9fã\82\81ã\81®ã\83\90ã\83\83ã\83\95ã\82¡ã\81¸ã\81®ã\83\9dã\82¤ã\83³ã\82¿である。 "
-"B<recvmsg>()  ã\82\92å\91¼ã\81¶é\9a\9bã\81«ã\81¯ã\80\81 I<msg_controllen> ã\81« I<msg_control> ã\81®ã\83\90ã\83\83ã\83\95ã\82¡ã\81®"
-"長さを入れておく必要がある。 コールが成功して返った場合、制御メッセージ列の長"
-"さが入っている。"
+"御ã\83¡ã\83\83ã\82»ã\83¼ã\82¸ã\82\84 ç¨®ã\80\85ã\81®è£\9cå\8a©ã\83\87ã\83¼ã\82¿ã\81®ã\81\9fã\82\81ã\81®ã\83\90ã\83\83ã\83\95ã\82¡ã\83¼ã\81¸ã\81®ã\83\9dã\82¤ã\83³ã\82¿ã\83¼である。 "
+"B<recvmsg>()  ã\82\92å\91¼ã\81¶é\9a\9bã\81«ã\81¯ã\80\81 I<msg_controllen> ã\81« I<msg_control> ã\81®ã\83\90ã\83\83ã\83\95ã\82¡ã\83¼"
+"の長さを入れておく必要がある。 コールが成功して返った場合、制御メッセージ列の"
+"さが入っている。"
 
 #. type: Plain text
-#: build/C/man2/recv.2:340
+#: build/C/man2/recv.2:362
 msgid "The messages are of the form:"
 msgstr "メッセージの形式は以下の通り:"
 
 #. type: Plain text
-#: build/C/man2/recv.2:350
+#: build/C/man2/recv.2:372
 #, no-wrap
 msgid ""
 "struct cmsghdr {\n"
@@ -3114,24 +3728,24 @@ msgstr ""
 "};\n"
 
 #. type: Plain text
-#: build/C/man2/recv.2:355
+#: build/C/man2/recv.2:377
 msgid ""
-"Ancillary data should only be accessed by the macros defined in B<cmsg>(3)."
+"Ancillary data should be accessed only by the macros defined in B<cmsg>(3)."
 msgstr ""
 "補助データは、 B<cmsg>(3)  に定義されたマクロ経由でのみアクセスすべきである。"
 
 #. type: Plain text
-#: build/C/man2/recv.2:358
+#: build/C/man2/recv.2:380
 msgid ""
 "As an example, Linux uses this ancillary data mechanism to pass extended "
 "errors, IP options, or file descriptors over UNIX domain sockets."
 msgstr ""
 "例をあげると、 Linux はこの補助データのメカニズムを、 UNIX ドメインソケット上"
-"ã\81§ã\81®æ\8b¡å¼µã\82¨ã\83©ã\83¼ã\82\84 IP ã\82ªã\83\97ã\82·ã\83§ã\83³ã\80\81 ã\83\95ã\82¡ã\82¤ã\83«ã\83»ã\83\87ã\82£ã\82¹ã\82¯ã\83ªã\83\97ã\82¿の受け渡しに利用して"
+"ã\81§ã\81®æ\8b¡å¼µã\82¨ã\83©ã\83¼ã\82\84 IP ã\82ªã\83\97ã\82·ã\83§ã\83³ã\80\81 ã\83\95ã\82¡ã\82¤ã\83«ã\83\87ã\82£ã\82¹ã\82¯ã\83ªã\83\97ã\82¿ã\83¼の受け渡しに利用して"
 "いる。"
 
 #. type: Plain text
-#: build/C/man2/recv.2:366
+#: build/C/man2/recv.2:388
 msgid ""
 "The I<msg_flags> field in the I<msghdr> is set on return of B<recvmsg>().  "
 "It can contain several flags:"
@@ -3140,13 +3754,13 @@ msgstr ""
 "れる。ここにはいくつかのフラグが入る。"
 
 #. type: TP
-#: build/C/man2/recv.2:366
+#: build/C/man2/recv.2:388
 #, no-wrap
 msgid "B<MSG_EOR>"
 msgstr "B<MSG_EOR>"
 
 #. type: Plain text
-#: build/C/man2/recv.2:371
+#: build/C/man2/recv.2:393
 msgid ""
 "indicates end-of-record; the data returned completed a record (generally "
 "used with sockets of type B<SOCK_SEQPACKET>)."
@@ -3155,80 +3769,108 @@ msgstr ""
 "であることを示す (一般的には B<SOCK_SEQPACKET> 型のソケットで使用される)。"
 
 #. type: TP
-#: build/C/man2/recv.2:371
+#: build/C/man2/recv.2:393
 #, no-wrap
 msgid "B<MSG_TRUNC>"
 msgstr "B<MSG_TRUNC>"
 
 #. type: Plain text
-#: build/C/man2/recv.2:375
+#: build/C/man2/recv.2:397
 msgid ""
 "indicates that the trailing portion of a datagram was discarded because the "
 "datagram was larger than the buffer supplied."
 msgstr ""
-"ã\83\87ã\83¼ã\82¿ã\82°ã\83©ã\83 ã\81\8cä¸\8eã\81\88ã\82\89ã\82\8cã\81\9fã\83\90ã\83\83ã\83\95ã\82¡ã\82\88ã\82\8a大ã\81\8dã\81\8bã\81£ã\81\9fã\81\9fã\82\81ã\81«ã\80\81 ã\83\87ã\83¼ã\82¿ã\82°ã\83©ã\83 ã\81®ã\81¯ã\81¿å\87ºã\81\97"
-"た部分が捨てられたことを示す。"
+"ã\83\87ã\83¼ã\82¿ã\82°ã\83©ã\83 ã\81\8cä¸\8eã\81\88ã\82\89ã\82\8cã\81\9fã\83\90ã\83\83ã\83\95ã\82¡ã\83¼ã\82\88ã\82\8a大ã\81\8dã\81\8bã\81£ã\81\9fã\81\9fã\82\81ã\81«ã\80\81 ã\83\87ã\83¼ã\82¿ã\82°ã\83©ã\83 ã\81®ã\81¯ã\81¿å\87º"
+"ã\81\97ã\81\9fé\83¨å\88\86ã\81\8cæ\8d¨ã\81¦ã\82\89ã\82\8cã\81\9fã\81\93ã\81¨ã\82\92示ã\81\99ã\80\82"
 
 #. type: TP
-#: build/C/man2/recv.2:375
+#: build/C/man2/recv.2:397
 #, no-wrap
 msgid "B<MSG_CTRUNC>"
 msgstr "B<MSG_CTRUNC>"
 
 #. type: Plain text
-#: build/C/man2/recv.2:379
+#: build/C/man2/recv.2:401
 msgid ""
 "indicates that some control data were discarded due to lack of space in the "
 "buffer for ancillary data."
 msgstr ""
-"è£\9cå\8a©ã\83\87ã\83¼ã\82¿ã\81®ã\81\9fã\82\81ã\81®ã\83\90ã\83\83ã\83\95ã\82¡ã\81\8cä¸\8d足ã\81\97ã\81\9fã\81\9fã\82\81ã\81«ã\80\81 å\88¶å¾¡ã\83\87ã\83¼ã\82¿ã\81®ä¸\80é\83¨ã\81\8cæ\8d¨ã\81¦ã\82\89ã\82\8cã\81\9fã\81\93ã\81¨"
-"を示す。"
+"è£\9cå\8a©ã\83\87ã\83¼ã\82¿ã\81®ã\81\9fã\82\81ã\81®ã\83\90ã\83\83ã\83\95ã\82¡ã\83¼ã\81\8cä¸\8d足ã\81\97ã\81\9fã\81\9fã\82\81ã\81«ã\80\81 å\88¶å¾¡ã\83\87ã\83¼ã\82¿ã\81®ä¸\80é\83¨ã\81\8cæ\8d¨ã\81¦ã\82\89ã\82\8cã\81\9fã\81\93"
+"ã\81¨ã\82\92示ã\81\99ã\80\82"
 
 #. type: Plain text
-#: build/C/man2/recv.2:382
+#: build/C/man2/recv.2:404
 msgid ""
 "is returned to indicate that expedited or out-of-band data were received."
 msgstr "速達データや帯域外データを受信したことを示す。"
 
 #. type: TP
-#: build/C/man2/recv.2:382
+#: build/C/man2/recv.2:404
 #, no-wrap
 msgid "B<MSG_ERRQUEUE>"
 msgstr "B<MSG_ERRQUEUE>"
 
 #. type: Plain text
-#: build/C/man2/recv.2:386
+#: build/C/man2/recv.2:408
 msgid ""
 "indicates that no data was received but an extended error from the socket "
 "error queue."
 msgstr ""
-"ã\83\87ã\83¼ã\82¿ã\81¯å\8f\97ä¿¡ã\81\97ã\81ªã\81\8bã\81£ã\81\9fã\81\8c ã\82½ã\82±ã\83\83ã\83\88ã\81®ã\82¨ã\83©ã\83¼ã\83»ã\82­ã\83¥ã\83¼ã\81\8bã\82\89æ\8b¡å¼µã\82¨ã\83©ã\83¼ã\82\92å\8f\97ä¿¡ã\81\97ã\81\9fã\81\93ã\81¨"
-"示す。"
+"ã\83\87ã\83¼ã\82¿ã\81¯å\8f\97ä¿¡ã\81\97ã\81ªã\81\8bã\81£ã\81\9fã\81\8c ã\82½ã\82±ã\83\83ã\83\88ã\81®ã\82¨ã\83©ã\83¼ã\82­ã\83¥ã\83¼ã\81\8bã\82\89æ\8b¡å¼µã\82¨ã\83©ã\83¼ã\82\92å\8f\97ä¿¡ã\81\97ã\81\9fã\81\93ã\81¨ã\82\92"
+"示す。"
 
 #. type: Plain text
-#: build/C/man2/recv.2:391
+#: build/C/man2/recv.2:414
 msgid ""
 "These calls return the number of bytes received, or -1 if an error "
-"occurred.  The return value will be 0 when the peer has performed an orderly "
-"shutdown."
+"occurred.  In the event of an error, I<errno> is set to indicate the error."
+msgstr ""
+"これらのコールは受信したバイト数を返す。 エラーの場合は -1 を返し、 I<errno> "
+"にエラーを示す値を設定する。"
+
+#. type: Plain text
+#: build/C/man2/recv.2:417
+msgid ""
+"When a stream socket peer has performed an orderly shutdown, the return "
+"value will be 0 (the traditional \"end-of-file\" return)."
 msgstr ""
-"ã\81\93ã\82\8cã\82\89ã\81®ã\82³ã\83¼ã\83«ã\81¯å\8f\97ä¿¡ã\81\97ã\81\9fã\83\90ã\82¤ã\83\88æ\95°ã\82\92è¿\94ã\81\99ã\80\82 ã\82¨ã\83©ã\83¼ã\81®å ´å\90\88ã\81¯ -1 ã\82\92è¿\94ã\81\99ã\80\82 æ\8e¥ç¶\9aå\85\88ã\81\8c"
-"正しくシャットダウンを実行した場合は、返り値は 0 となる。"
+"ã\82¹ã\83\88ã\83ªã\83¼ã\83 ã\82½ã\82±ã\83\83ã\83\88ã\81®æ\8e¥ç¶\9aç\9b¸æ\89\8bã\81\8cæ­£ã\81\97ã\81\8fã\82·ã\83£ã\83\83ã\83\88ã\83\80ã\82¦ã\83³ã\82\92å®\9fè¡\8cã\81\97ã\81\9få ´å\90\88ã\81¯ã\80\81\n"
+"返り値は 0 (昔ながらの \"end-of-file\" の戻り値) となる。"
 
 #. type: Plain text
-#: build/C/man2/recv.2:396
+#: build/C/man2/recv.2:421
+msgid ""
+"Datagram sockets in various domains (e.g., the UNIX and Internet domains)  "
+"permit zero-length datagrams.  When such a datagram is received, the return "
+"value is 0."
+msgstr ""
+"いくつかのドメインのデータグラムソケット (UNIX ドメインやインターネットドメイ"
+"ンなど) では、長さ 0 のデータグラムが送信できる。 このようなデータグラムを受"
+"信した場合、 返り値は 0 となる。"
+
+#. type: Plain text
+#: build/C/man2/recv.2:424
+msgid ""
+"The value 0 may also be returned if the requested number of bytes to receive "
+"from a stream socket was 0."
+msgstr ""
+"ストリームソケットに対する受信要求バイト数が 0 だった場合も、 値 0 が返され"
+"る。"
+
+#. type: Plain text
+#: build/C/man2/recv.2:429
 msgid ""
 "These are some standard errors generated by the socket layer.  Additional "
 "errors may be generated and returned from the underlying protocol modules; "
 "see their manual pages."
 msgstr ""
 "これらはソケット層で発生する一般的なエラーである。 他のエラーが下層のプロトコ"
-"ã\83«ã\83»ã\83¢ã\82¸ã\83¥ã\83¼ã\83«ã\81§ç\94\9fæ\88\90ã\81\95ã\82\8cã\80\81 è¿\94ã\81\95ã\82\8cã\82\8bã\81\8bã\82\82ã\81\97ã\82\8cã\81ªã\81\84ã\80\82 ã\81\9dã\82\8cã\82\89ã\81®ã\83\9eã\83\8bã\83¥ã\82¢ã\83«ã\82\92å\8f\82ç\85§ã\81\99"
-"ã\82\8bã\81\93ã\81¨ã\80\82"
+"ã\83«ã\83¢ã\82¸ã\83¥ã\83¼ã\83«ã\81§ç\94\9fæ\88\90ã\81\95ã\82\8cã\80\81 è¿\94ã\81\95ã\82\8cã\82\8bã\81\8bã\82\82ã\81\97ã\82\8cã\81ªã\81\84ã\80\82 ã\81\9dã\82\8cã\82\89ã\81®ã\83\9eã\83\8bã\83¥ã\82¢ã\83«ã\82\92å\8f\82ç\85§ã\81\99ã\82\8b"
+"こと。"
 
 #.  Actually EAGAIN on Linux
 #. type: Plain text
-#: build/C/man2/recv.2:405
+#: build/C/man2/recv.2:438
 msgid ""
 "The socket is marked nonblocking and the receive operation would block, or a "
 "receive timeout had been set and the timeout expired before data was "
@@ -3243,12 +3885,12 @@ msgstr ""
 "が必要なアプリケーションでは、両方の可能性を 確認すべきである。"
 
 #. type: Plain text
-#: build/C/man2/recv.2:410
+#: build/C/man2/recv.2:443
 msgid "The argument I<sockfd> is an invalid descriptor."
-msgstr "引き数 I<sockfd> が不正なディスクリプタである。"
+msgstr "å¼\95ã\81\8dæ\95° I<sockfd> ã\81\8cä¸\8dæ­£ã\81ªã\83\87ã\82£ã\82¹ã\82¯ã\83ªã\83\97ã\82¿ã\83¼ã\81§ã\81\82ã\82\8bã\80\82"
 
 #. type: Plain text
-#: build/C/man2/recv.2:414
+#: build/C/man2/recv.2:447
 msgid ""
 "A remote host refused to allow the network connection (typically because it "
 "is not running the requested service)."
@@ -3257,13 +3899,13 @@ msgstr ""
 "たサービスが起動されていないなどがある)。"
 
 #. type: Plain text
-#: build/C/man2/recv.2:418
+#: build/C/man2/recv.2:451
 msgid ""
 "The receive buffer pointer(s) point outside the process's address space."
-msgstr "å\8f\97ä¿¡ã\83\90ã\83\83ã\83\95ã\82¡ã\81¸ã\81®ã\83\9dã\82¤ã\83³ã\82¿がプロセスのアドレス空間外を指している。"
+msgstr "å\8f\97ä¿¡ã\83\90ã\83\83ã\83\95ã\82¡ã\83¼ã\81¸ã\81®ã\83\9dã\82¤ã\83³ã\82¿ã\83¼がプロセスのアドレス空間外を指している。"
 
 #. type: Plain text
-#: build/C/man2/recv.2:423
+#: build/C/man2/recv.2:456
 msgid ""
 "The receive was interrupted by delivery of a signal before any data were "
 "available; see B<signal>(7)."
@@ -3271,23 +3913,23 @@ msgstr ""
 "データを受信する前に、シグナルが配送されて割り込まれた。 B<signal>(7)  参照。"
 
 #. type: Plain text
-#: build/C/man2/recv.2:427 build/C/man2/send.2:318
+#: build/C/man2/recv.2:460 build/C/man2/send.2:355
 msgid "Invalid argument passed."
 msgstr "不正な引き数が渡された。"
 
 #. type: Plain text
-#: build/C/man2/recv.2:431
+#: build/C/man2/recv.2:464
 msgid "Could not allocate memory for B<recvmsg>()."
-msgstr "B<recvmsg>()  のためのメモリが確保できなかった。"
+msgstr "B<recvmsg>()  ã\81®ã\81\9fã\82\81ã\81®ã\83¡ã\83¢ã\83ªã\83¼ã\81\8c確ä¿\9dã\81§ã\81\8dã\81ªã\81\8bã\81£ã\81\9fã\80\82"
 
 #. type: TP
-#: build/C/man2/recv.2:431 build/C/man2/send.2:341
+#: build/C/man2/recv.2:464 build/C/man2/send.2:378
 #, no-wrap
 msgid "B<ENOTCONN>"
 msgstr "B<ENOTCONN>"
 
 #. type: Plain text
-#: build/C/man2/recv.2:438
+#: build/C/man2/recv.2:471
 msgid ""
 "The socket is associated with a connection-oriented protocol and has not "
 "been connected (see B<connect>(2)  and B<accept>(2))."
@@ -3296,42 +3938,28 @@ msgstr ""
 "(B<connect>(2)  と B<accept>(2)  を参照のこと)。"
 
 #. type: Plain text
-#: build/C/man2/recv.2:443
+#: build/C/man2/recv.2:476
 msgid "The argument I<sockfd> does not refer to a socket."
 msgstr "引き数 I<sockfd> がソケットを参照していない。"
 
 #. type: Plain text
-#: build/C/man2/recv.2:446
+#: build/C/man2/recv.2:479
 msgid "4.4BSD (these function calls first appeared in 4.2BSD), POSIX.1-2001."
 msgstr "4.4BSD (これらの関数は 4.2BSD で現われた), POSIX.1-2001。"
 
 #. type: Plain text
-#: build/C/man2/recv.2:453
+#: build/C/man2/recv.2:486
 msgid ""
-"POSIX.1-2001 only describes the B<MSG_OOB>, B<MSG_PEEK>, and B<MSG_WAITALL> "
+"POSIX.1-2001 describes only the B<MSG_OOB>, B<MSG_PEEK>, and B<MSG_WAITALL> "
 "flags."
 msgstr ""
 "POSIX.1-2001 では、 B<MSG_OOB>, B<MSG_PEEK>, B<MSG_WAITALL> フラグだけが記載"
 "されている。"
 
 #. type: Plain text
-#: build/C/man2/recv.2:469
-msgid ""
-"The prototypes given above follow glibc2.  The Single UNIX Specification "
-"agrees, except that it has return values of type I<ssize_t> (while 4.x BSD "
-"and libc4 and libc5 all have I<int>).  The I<flags> argument is I<int> in 4."
-"x BSD, but I<unsigned int> in libc4 and libc5.  The I<len> argument is "
-"I<int> in 4.x BSD, but I<size_t> in libc4 and libc5.  The I<addrlen> "
-"argument is I<int\\ *> in 4.x BSD, libc4 and libc5.  The present I<socklen_t"
-"\\ *> was invented by POSIX.  See also B<accept>(2)."
-msgstr ""
-"上記のプロトタイプは glibc2 にしたがっている。 Single UNIX Specification でも"
-"同様だが、 返り値の型が I<ssize_t> となっている (一方で 4.x BSD や libc4 や "
-"libc5 は全て I<int> を使用している)。 I<flags> 引き数は 4.x BSD では I<int> "
-"だが、libc4 と libc5 では I<unsigned int> である。 I<len> 引き数は 4.x BSD で"
-"は I<int> だが、 libc4 と libc5 では I<size_t> である。 I<addrlen> 引き数は "
-"4.x BSD, libc4, libc5 では I<int\\ *> である。 現在の I<socklen_t\\ *> は "
-"POSIX で発案された。 B<accept>(2)  も参照すること。"
+#: build/C/man2/recv.2:492
+msgid "The I<socklen_t> type was invented by POSIX.  See also B<accept>(2)."
+msgstr "I<socklen_t> 型は POSIX で発案された。 B<accept>(2) も参照。"
 
 #.  glibc bug raised 12 Mar 2006
 #.  http://sourceware.org/bugzilla/show_bug.cgi?id=2448
@@ -3339,7 +3967,7 @@ msgstr ""
 #.  __kernel_size_t type used to type this field varies
 #.  across architectures, but socklen_t is always 32 bits.
 #. type: Plain text
-#: build/C/man2/recv.2:483 build/C/man2/send.2:404
+#: build/C/man2/recv.2:506 build/C/man2/send.2:428
 msgid ""
 "According to POSIX.1-2001, the I<msg_controllen> field of the I<msghdr> "
 "structure should be typed as I<socklen_t>, but glibc currently types it as "
@@ -3350,21 +3978,21 @@ msgstr ""
 "ある。"
 
 #. type: Plain text
-#: build/C/man2/recv.2:488
+#: build/C/man2/recv.2:511
 msgid ""
-"See B<recvmmsg(2)> for information about a Linux-specific system call that "
+"See B<recvmmsg>(2)  for information about a Linux-specific system call that "
 "can be used to receive multiple datagrams in a single call."
 msgstr ""
 "B<recvmmsg>(2)  には、一度の呼び出しでの複数のデータグラムに使用できる Linux "
 "固有の システムコールに関する情報が書かれている。"
 
 #. type: Plain text
-#: build/C/man2/recv.2:493
+#: build/C/man2/recv.2:516
 msgid "An example of the use of B<recvfrom>()  is shown in B<getaddrinfo>(3)."
 msgstr "B<recvfrom>()  の利用例が B<getaddrinfo>(3)  に記載されている。"
 
 #. type: Plain text
-#: build/C/man2/recv.2:503
+#: build/C/man2/recv.2:527
 msgid ""
 "B<fcntl>(2), B<getsockopt>(2), B<read>(2), B<recvmmsg>(2), B<select>(2), "
 "B<shutdown>(2), B<socket>(2), B<cmsg>(3), B<sockatmark>(3), B<socket>(7)"
@@ -3373,46 +4001,46 @@ msgstr ""
 "B<shutdown>(2), B<socket>(2), B<cmsg>(3), B<sockatmark>(3), B<socket>(7)"
 
 #. type: TH
-#: build/C/man2/recvmmsg.2:26
+#: build/C/man2/recvmmsg.2:31
 #, no-wrap
 msgid "RECVMMSG"
 msgstr "RECVMMSG"
 
 #. type: TH
-#: build/C/man2/recvmmsg.2:26
+#: build/C/man2/recvmmsg.2:31
 #, no-wrap
-msgid "2011-10-04"
-msgstr "2011-10-04"
+msgid "2014-06-13"
+msgstr "2014-06-13"
 
 #. type: Plain text
-#: build/C/man2/recvmmsg.2:29
+#: build/C/man2/recvmmsg.2:34
 msgid "recvmmsg - receive multiple messages on a socket"
-msgstr "recvmmsg - receive multiple messages on a socket"
+msgstr "recvmmsg - 複数のメッセージをソケットから受信する"
 
 #. type: Plain text
-#: build/C/man2/recvmmsg.2:33 build/C/man2/sendmmsg.2:35
+#: build/C/man2/recvmmsg.2:38 build/C/man2/sendmmsg.2:35
 #, no-wrap
 msgid ""
-"B<#define _GNU_SOURCE>\n"
+"B<#define _GNU_SOURCE>         /* See feature_test_macros(7) */\n"
 "B<#include E<lt>sys/socket.hE<gt>>\n"
 msgstr ""
-"B<#define _GNU_SOURCE>\n"
+"B<#define _GNU_SOURCE>         /* feature_test_macros(7) 参照 */\n"
 "B<#include E<lt>sys/socket.hE<gt>>\n"
 
 #. type: Plain text
-#: build/C/man2/recvmmsg.2:36
+#: build/C/man2/recvmmsg.2:41
 #, no-wrap
 msgid "B<int recvmmsg(int >I<sockfd>B<, struct mmsghdr *>I<msgvec>B<, unsigned int >I<vlen>B<,>\n"
 msgstr "B<int recvmmsg(int >I<sockfd>B<, struct mmsghdr *>I<msgvec>B<, unsigned int >I<vlen>B<,>\n"
 
 #. type: Plain text
-#: build/C/man2/recvmmsg.2:38
+#: build/C/man2/recvmmsg.2:43
 #, no-wrap
 msgid "B<             unsigned int >I<flags>B<, struct timespec *>I<timeout>B<);>\n"
 msgstr "B<             unsigned int >I<flags>B<, struct timespec *>I<timeout>B<);>\n"
 
 #. type: Plain text
-#: build/C/man2/recvmmsg.2:50
+#: build/C/man2/recvmmsg.2:55
 msgid ""
 "The B<recvmmsg>()  system call is an extension of B<recvmsg>(2)  that allows "
 "the caller to receive multiple messages from a socket using a single system "
@@ -3420,37 +4048,37 @@ msgid ""
 "extension over B<recvmsg>(2)  is support for a timeout on the receive "
 "operation."
 msgstr ""
-"The B<recvmmsg>()  system call is an extension of B<recvmsg>(2)  that allows "
-"the caller to receive multiple messages from a socket using a single system "
-"call.  (This has performance benefits for some applications.)  A further "
-"extension over B<recvmsg>(2)  is support for a timeout on the receive "
-"operation."
+"B<recvmmsg>() システムコールは B<recvmsg>(2) の拡張で、 このシステムコールを"
+"使うと一度の呼び出しでソケットから複数のメッセージを受信することができる (ア"
+"プリケーションによっては性能上のメリットがある)。 他に B<recvmsg>(2) から拡張"
+"されている点としては、受信操作におけるタイムアウトのサポートがある。"
 
 #. type: Plain text
-#: build/C/man2/recvmmsg.2:54
+#: build/C/man2/recvmmsg.2:59
 msgid ""
 "The I<sockfd> argument is the file descriptor of the socket to receive data "
 "from."
 msgstr ""
-"The I<sockfd> argument is the file descriptor of the socket to receive data "
-"from."
+"I<sockfd> 引き数は、データを受信するソケットのファイルディスクリプターであ"
+"る。"
 
 #. type: Plain text
-#: build/C/man2/recvmmsg.2:62 build/C/man2/sendmmsg.2:62
+#: build/C/man2/recvmmsg.2:67 build/C/man2/sendmmsg.2:62
 msgid ""
 "The I<msgvec> argument is a pointer to an array of I<mmsghdr> structures.  "
 "The size of this array is specified in I<vlen>."
 msgstr ""
-"The I<msgvec> argument is a pointer to an array of I<mmsghdr> structures.  "
-"The size of this array is specified in I<vlen>."
+"I<msgvec> 引き数は I<mmsghdr> 構造体の配列である。 この配列の大きさは "
+"I<vlen> で指定する。"
 
 #. type: Plain text
-#: build/C/man2/recvmmsg.2:68 build/C/man2/sendmmsg.2:68
+#: build/C/man2/recvmmsg.2:73 build/C/man2/sendmmsg.2:68
 msgid "The I<mmsghdr> structure is defined in I<E<lt>sys/socket.hE<gt>> as:"
-msgstr "The I<mmsghdr> structure is defined in I<E<lt>sys/socket.hE<gt>> as:"
+msgstr ""
+"I<mmsghdr> 構造体は I<E<lt>sys/socket.hE<gt>> で次のように定義されている。"
 
 #. type: Plain text
-#: build/C/man2/recvmmsg.2:75
+#: build/C/man2/recvmmsg.2:80
 #, no-wrap
 msgid ""
 "struct mmsghdr {\n"
@@ -3459,69 +4087,74 @@ msgid ""
 "};\n"
 msgstr ""
 "struct mmsghdr {\n"
-"    struct msghdr msg_hdr;  /* Message header */\n"
-"    unsigned int  msg_len;  /* Number of received bytes for header */\n"
+"    struct msghdr msg_hdr;  /* メッセージヘッダー */\n"
+"    unsigned int  msg_len;  /* このヘッダーで受信されたバイト数 */\n"
 "};\n"
 
 #. type: Plain text
-#: build/C/man2/recvmmsg.2:90
+#: build/C/man2/recvmmsg.2:95
 msgid ""
-"The I<msg_hdr> field is a I<msghdr> structure, as described in B<recvmsg>"
-"(2).  The I<msg_len> field is the number of bytes returned for the message "
-"in the entry.  This field has the same value as the return value of a single "
-"B<recvmsg>(2)  on the header."
+"The I<msg_hdr> field is a I<msghdr> structure, as described in "
+"B<recvmsg>(2).  The I<msg_len> field is the number of bytes returned for the "
+"message in the entry.  This field has the same value as the return value of "
+"a single B<recvmsg>(2)  on the header."
 msgstr ""
-"The I<msg_hdr> field is a I<msghdr> structure, as described in B<recvmsg>"
-"(2).  The I<msg_len> field is the number of bytes returned for the message "
-"in the entry.  This field has the same value as the return value of a single "
-"B<recvmsg>(2)  on the header."
+"I<msg_hdr> フィールドは、 B<recvmsg>(2) で説明されている I<msghdr> 構造体であ"
+"る。 I<msg_len> フィールドは、 このエントリーで返されるメッセージのバイト数"
+"で、 このヘッダーに対して B<recvmsg>(2) を呼び出した場合の返り値と同じ値が入"
+"る。"
 
 #. type: Plain text
-#: build/C/man2/recvmmsg.2:97
+#: build/C/man2/recvmmsg.2:102
 msgid ""
 "The I<flags> argument contains flags ORed together.  The flags are the same "
 "as documented for B<recvmsg>(2), with the following addition:"
 msgstr ""
-"The I<flags> argument contains flags ORed together.  The flags are the same "
-"as documented for B<recvmsg>(2), with the following addition:"
+"I<flags> 引き数には複数のフラグを論理和 (OR) で指定できる。 フラグは、 "
+"B<recvmsg>(2) で説明されているものに加えて、以下が使用できる。"
 
 #. type: TP
-#: build/C/man2/recvmmsg.2:97
+#: build/C/man2/recvmmsg.2:102
 #, no-wrap
-msgid "B<MSG_WAITFORONE>"
-msgstr "B<MSG_WAITFORONE>"
+msgid "B<MSG_WAITFORONE> (since Linux 2.6.34)"
+msgstr "B<MSG_WAITFORONE> (Linux 2.6.34 以降)"
 
 #. type: Plain text
-#: build/C/man2/recvmmsg.2:102
+#: build/C/man2/recvmmsg.2:107
 msgid "Turns on B<MSG_DONTWAIT> after the first message has been received."
-msgstr "Turns on B<MSG_DONTWAIT> after the first message has been received."
+msgstr "最初のメッセージを受信後に B<MSG_DONTWAIT> を有効にする。"
 
 #. type: Plain text
-#: build/C/man2/recvmmsg.2:115
+#: build/C/man2/recvmmsg.2:122
 msgid ""
-"The I<timeout> argument points to a I<struct timespec> (see B<clock_gettime>"
-"(2))  defining a timeout (seconds plus nanoseconds) for the receive "
-"operation.  If I<timeout> is I<NULL> then the operation blocks indefinitely."
+"The I<timeout> argument points to a I<struct timespec> (see "
+"B<clock_gettime>(2))  defining a timeout (seconds plus nanoseconds) for the "
+"receive operation (I<but see BUGS!>).  (This interval will be rounded up to "
+"the system clock granularity, and kernel scheduling delays mean that the "
+"blocking interval may overrun by a small amount.)  If I<timeout> is NULL, "
+"then the operation blocks indefinitely."
 msgstr ""
-"The I<timeout> argument points to a I<struct timespec> (see B<clock_gettime>"
-"(2))  defining a timeout (seconds plus nanoseconds) for the receive "
-"operation.  If I<timeout> is I<NULL> then the operation blocks indefinitely."
+"I<timeout> 引き数は I<struct timespec> (B<clock_gettime>(2) 参照) へのポイン"
+"ターで、 この構造体で受信操作のタイムアウト (秒とナノ秒) を指定する (I<ただ"
+"し、バグを参照のこと>) (待ち時間はシステムクロックの粒度に切り上げられ、カー"
+"ネルのスケジューリング遅延により少しだけ長くなる可能性がある)。 I<timeout>が "
+"NULL の場合、 受信操作は無期限に停止 (block) する。"
 
 #. type: Plain text
-#: build/C/man2/recvmmsg.2:126
+#: build/C/man2/recvmmsg.2:133
 msgid ""
 "A blocking B<recvmmsg>()  call blocks until I<vlen> messages have been "
 "received or until the timeout expires.  A nonblocking call reads as many "
 "messages as are available (up to the limit specified by I<vlen>)  and "
 "returns immediately."
 msgstr ""
-"A blocking B<recvmmsg>()  call blocks until I<vlen> messages have been "
-"received or until the timeout expires.  A nonblocking call reads as many "
-"messages as are available (up to the limit specified by I<vlen>)  and "
-"returns immediately."
+"停止 (blocking) モードの B<recvmmsg>() の呼び出しは、 I<vlen> 個のメッセージ"
+"を受信するか、タイムアウトが満了するまで停止する。 非停止 (nonblocking) モー"
+"ドの呼び出しでは、 読み出し可能なメッセージ (最大で I<vlen> 個) を読み出し、 "
+"すぐに返る。"
 
 #. type: Plain text
-#: build/C/man2/recvmmsg.2:141
+#: build/C/man2/recvmmsg.2:148
 msgid ""
 "On return from B<recvmmsg>(), successive elements of I<msgvec> are updated "
 "to contain information about each received message: I<msg_len> contains the "
@@ -3529,57 +4162,281 @@ msgid ""
 "described in B<recvmsg>(2).  The return value of the call indicates the "
 "number of elements of I<msgvec> that have been updated."
 msgstr ""
-"On return from B<recvmmsg>(), successive elements of I<msgvec> are updated "
-"to contain information about each received message: I<msg_len> contains the "
-"size of the received message; the subfields of I<msg_hdr> are updated as "
-"described in B<recvmsg>(2).  The return value of the call indicates the "
-"number of elements of I<msgvec> that have been updated."
+"B<recvmmsg>() が返った際には、 I<msgvec> のうちデータが受信された要素には、受"
+"信したそれぞれのメッセージの情報が格納されている。 また、 I<msg_len> には受信"
+"したメッセージの大きさが入り、 I<msg_hdr> の各フィールドは B<recvmsg>(2) に書"
+"かれている通りに更新される。 呼び出しの返り値は、更新された I<msgvec> の要素"
+"数である。"
 
 #. type: Plain text
-#: build/C/man2/recvmmsg.2:149
+#: build/C/man2/recvmmsg.2:156
 msgid ""
 "On success, B<recvmmsg>()  returns the number of messages received in "
 "I<msgvec>; on error, -1 is returned, and I<errno> is set to indicate the "
 "error."
 msgstr ""
-"On success, B<recvmmsg>()  returns the number of messages received in "
-"I<msgvec>; on error, -1 is returned, and I<errno> is set to indicate the "
-"error."
+"成功すると、 B<recvmmsg>() は I<msgvec> に受信されたメッセージ数を返す。 エ"
+"ラーの場合、 -1 を返し、 I<errno> にエラーを示す値を設定する。"
 
 #. type: Plain text
-#: build/C/man2/recvmmsg.2:153
+#: build/C/man2/recvmmsg.2:160
 msgid ""
 "Errors are as for B<recvmsg>(2).  In addition, the following error can occur:"
 msgstr ""
-"Errors are as for B<recvmsg>(2).  In addition, the following error can occur:"
+"エラーは B<recvmsg>(2) と同じである。 これに加えて、以下のエラーが起こる場合"
+"がある。"
 
 #. type: Plain text
-#: build/C/man2/recvmmsg.2:157
+#: build/C/man2/recvmmsg.2:164
 msgid "I<timeout> is invalid."
-msgstr "I<timeout> is invalid."
+msgstr "I<timeout> が無効である。"
 
 #. type: Plain text
-#: build/C/man2/recvmmsg.2:162
+#: build/C/man2/recvmmsg.2:169
 msgid ""
-"The B<recvmmsg>()  system call was added in Linux 2.6.32.  Support in glibc "
+"The B<recvmmsg>()  system call was added in Linux 2.6.33.  Support in glibc "
 "was added in version 2.12."
 msgstr ""
-"The B<recvmmsg>()  system call was added in Linux 2.6.32.  Support in glibc "
-"was added in version 2.12."
+"B<recvmmsg>() システムコールは Linux 2.6.33 で追加された。 glibc でのサポート"
+"はバージョン 2.12 以降で利用可能である。"
 
 #. type: Plain text
-#: build/C/man2/recvmmsg.2:165
+#: build/C/man2/recvmmsg.2:172
 msgid "B<recvmmsg>()  is Linux-specific."
-msgstr "B<recvmmsg>()  is Linux-specific."
+msgstr "B<recvmmsg>() は Linux 固有である。"
+
+#. type: Plain text
+#: build/C/man2/recvmmsg.2:180
+msgid ""
+"The following program uses B<recvmmsg>()  to receive multiple messages on a "
+"socket and stores them in multiple buffers.  The call returns if all buffers "
+"are filled or if the timeout specified has expired."
+msgstr ""
+"以下のプログラムは、 B<recvmmsg>() を使って複数のメッセージをソケットから受信"
+"し、それらを複数のバッファーに格納する。 呼び出しは、すべてのバッファーにメッ"
+"セージが格納されるか、 指定したタイムアウト時間が経過すると返る。"
+
+#. type: Plain text
+#: build/C/man2/recvmmsg.2:183
+msgid ""
+"The following snippet periodically generates UDP datagrams containing a "
+"random number:"
+msgstr ""
+"以下のコマンドは、 ランダムな数字が入った UDP データグラムを定期的に生成す"
+"る。"
+
+#. type: Plain text
+#: build/C/man2/recvmmsg.2:188
+#, no-wrap
+msgid ""
+"$B< while true; do echo $RANDOM E<gt> /dev/udp/127.0.0.1/1234; >\n"
+"B<sleep 0.25; done>\n"
+msgstr ""
+"$B< while true; do echo $RANDOM E<gt> /dev/udp/127.0.0.1/1234; >\n"
+"B<sleep 0.25; done>\n"
+
+#. type: Plain text
+#: build/C/man2/recvmmsg.2:193
+msgid ""
+"These datagrams are read by the example application, which can give the "
+"following output:"
+msgstr ""
+"生成されたデータグラムをサンプルアプリケーションが読み出し、以下のような出力"
+"が得られる。"
+
+#. type: Plain text
+#: build/C/man2/recvmmsg.2:203
+#, no-wrap
+msgid ""
+"$B< ./a.out>\n"
+"5 messages received\n"
+"1 11782\n"
+"2 11345\n"
+"3 304\n"
+"4 13514\n"
+"5 28421\n"
+msgstr ""
+"$B< ./a.out>\n"
+"5 messages received\n"
+"1 11782\n"
+"2 11345\n"
+"3 304\n"
+"4 13514\n"
+"5 28421\n"
+
+#. type: Plain text
+#: build/C/man2/recvmmsg.2:214
+#, no-wrap
+msgid ""
+"#define _GNU_SOURCE\n"
+"#include E<lt>netinet/ip.hE<gt>\n"
+"#include E<lt>stdio.hE<gt>\n"
+"#include E<lt>stdlib.hE<gt>\n"
+"#include E<lt>string.hE<gt>\n"
+"#include E<lt>sys/socket.hE<gt>\n"
+msgstr ""
+"#define _GNU_SOURCE\n"
+"#include E<lt>netinet/ip.hE<gt>\n"
+"#include E<lt>stdio.hE<gt>\n"
+"#include E<lt>stdlib.hE<gt>\n"
+"#include E<lt>string.hE<gt>\n"
+"#include E<lt>sys/socket.hE<gt>\n"
+
+#. type: Plain text
+#: build/C/man2/recvmmsg.2:227
+#, no-wrap
+msgid ""
+"int\n"
+"main(void)\n"
+"{\n"
+"#define VLEN 10\n"
+"#define BUFSIZE 200\n"
+"#define TIMEOUT 1\n"
+"    int sockfd, retval, i;\n"
+"    struct sockaddr_in sa;\n"
+"    struct mmsghdr msgs[VLEN];\n"
+"    struct iovec iovecs[VLEN];\n"
+"    char bufs[VLEN][BUFSIZE+1];\n"
+"    struct timespec timeout;\n"
+msgstr ""
+"int\n"
+"main(void)\n"
+"{\n"
+"#define VLEN 10\n"
+"#define BUFSIZE 200\n"
+"#define TIMEOUT 1\n"
+"    int sockfd, retval, i;\n"
+"    struct sockaddr_in sa;\n"
+"    struct mmsghdr msgs[VLEN];\n"
+"    struct iovec iovecs[VLEN];\n"
+"    char bufs[VLEN][BUFSIZE+1];\n"
+"    struct timespec timeout;\n"
+
+#. type: Plain text
+#: build/C/man2/recvmmsg.2:233 build/C/man2/sendmmsg.2:201
+#, no-wrap
+msgid ""
+"    sockfd = socket(AF_INET, SOCK_DGRAM, 0);\n"
+"    if (sockfd == -1) {\n"
+"        perror(\"socket()\");\n"
+"        exit(EXIT_FAILURE);\n"
+"    }\n"
+msgstr ""
+"    sockfd = socket(AF_INET, SOCK_DGRAM, 0);\n"
+"    if (sockfd == -1) {\n"
+"        perror(\"socket()\");\n"
+"        exit(EXIT_FAILURE);\n"
+"    }\n"
 
 #. type: Plain text
-#: build/C/man2/recvmmsg.2:171
+#: build/C/man2/recvmmsg.2:241
+#, no-wrap
 msgid ""
-"B<clock_gettime>(2), B<recvmsg>(2), B<sendmmsg>(2), B<sendmsg>(2), B<socket>"
-"(2), B<socket>(7)"
+"    sa.sin_family = AF_INET;\n"
+"    sa.sin_addr.s_addr = htonl(INADDR_LOOPBACK);\n"
+"    sa.sin_port = htons(1234);\n"
+"    if (bind(sockfd, (struct sockaddr *) &sa, sizeof(sa)) == -1) {\n"
+"        perror(\"bind()\");\n"
+"        exit(EXIT_FAILURE);\n"
+"    }\n"
 msgstr ""
-"B<clock_gettime>(2), B<recvmsg>(2), B<sendmmsg>(2), B<sendmsg>(2), B<socket>"
-"(2), B<socket>(7)"
+"    sa.sin_family = AF_INET;\n"
+"    sa.sin_addr.s_addr = htonl(INADDR_LOOPBACK);\n"
+"    sa.sin_port = htons(1234);\n"
+"    if (bind(sockfd, (struct sockaddr *) &sa, sizeof(sa)) == -1) {\n"
+"        perror(\"bind()\");\n"
+"        exit(EXIT_FAILURE);\n"
+"    }\n"
+
+#. type: Plain text
+#: build/C/man2/recvmmsg.2:249
+#, no-wrap
+msgid ""
+"    memset(msgs, 0, sizeof(msgs));\n"
+"    for (i = 0; i E<lt> VLEN; i++) {\n"
+"        iovecs[i].iov_base         = bufs[i];\n"
+"        iovecs[i].iov_len          = BUFSIZE;\n"
+"        msgs[i].msg_hdr.msg_iov    = &iovecs[i];\n"
+"        msgs[i].msg_hdr.msg_iovlen = 1;\n"
+"    }\n"
+msgstr ""
+"    memset(msgs, 0, sizeof(msgs));\n"
+"    for (i = 0; i E<lt> VLEN; i++) {\n"
+"        iovecs[i].iov_base         = bufs[i];\n"
+"        iovecs[i].iov_len          = BUFSIZE;\n"
+"        msgs[i].msg_hdr.msg_iov    = &iovecs[i];\n"
+"        msgs[i].msg_hdr.msg_iovlen = 1;\n"
+"    }\n"
+
+#. type: Plain text
+#: build/C/man2/recvmmsg.2:252
+#, no-wrap
+msgid ""
+"    timeout.tv_sec = TIMEOUT;\n"
+"    timeout.tv_nsec = 0;\n"
+msgstr ""
+"    timeout.tv_sec = TIMEOUT;\n"
+"    timeout.tv_nsec = 0;\n"
+
+#. type: Plain text
+#: build/C/man2/recvmmsg.2:258
+#, no-wrap
+msgid ""
+"    retval = recvmmsg(sockfd, msgs, VLEN, 0, &timeout);\n"
+"    if (retval == -1) {\n"
+"        perror(\"recvmmsg()\");\n"
+"        exit(EXIT_FAILURE);\n"
+"    }\n"
+msgstr ""
+"    retval = recvmmsg(sockfd, msgs, VLEN, 0, &timeout);\n"
+"    if (retval == -1) {\n"
+"        perror(\"recvmmsg()\");\n"
+"        exit(EXIT_FAILURE);\n"
+"    }\n"
+
+#. type: Plain text
+#: build/C/man2/recvmmsg.2:266
+#, no-wrap
+msgid ""
+"    printf(\"%d messages received\\en\", retval);\n"
+"    for (i = 0; i E<lt> retval; i++) {\n"
+"        bufs[i][msgs[i].msg_len] = 0;\n"
+"        printf(\"%d %s\", i+1, bufs[i]);\n"
+"    }\n"
+"    exit(EXIT_SUCCESS);\n"
+"}\n"
+msgstr ""
+"    printf(\"%d messages received\\en\", retval);\n"
+"    for (i = 0; i E<lt> retval; i++) {\n"
+"        bufs[i][msgs[i].msg_len] = 0;\n"
+"        printf(\"%d %s\", i+1, bufs[i]);\n"
+"    }\n"
+"    exit(EXIT_SUCCESS);\n"
+"}\n"
+
+#.  FIXME . https://bugzilla.kernel.org/show_bug.cgi?id=75371
+#.  http://thread.gmane.org/gmane.linux.man/5677
+#. type: Plain text
+#: build/C/man2/recvmmsg.2:278
+msgid ""
+"The I<timeout> argument does not work as intended.  The timeout is checked "
+"only after the receipt of each datagram, so that if up to I<vlen-1> "
+"datagrams are received before the timeout expires, but then no further "
+"datagrams are received, the call will block forever."
+msgstr ""
+"I<timeout> 引き数は意図した通りには動作しない。 タイムアウトは各データグラム"
+"の受信後にのみチェックされる。 そのため、 タイムアウトが満了する前に "
+"I<vlen-1> 個のデータグラムを受信し、 その後全くデータグラムを受信しなかった場"
+"合、 呼び出しはずっと停止し続けてしまう。"
+
+#. type: Plain text
+#: build/C/man2/recvmmsg.2:285
+msgid ""
+"B<clock_gettime>(2), B<recvmsg>(2), B<sendmmsg>(2), B<sendmsg>(2), "
+"B<socket>(2), B<socket>(7)"
+msgstr ""
+"B<clock_gettime>(2), B<recvmsg>(2), B<sendmmsg>(2), B<sendmsg>(2), "
+"B<socket>(2), B<socket>(7)"
 
 #. type: TH
 #: build/C/man2/select.2:38
@@ -3590,43 +4447,43 @@ msgstr "SELECT"
 #. type: TH
 #: build/C/man2/select.2:38
 #, no-wrap
-msgid "2010-08-31"
-msgstr "2010-08-31"
+msgid "2015-01-22"
+msgstr "2015-01-22"
 
 #. type: Plain text
-#: build/C/man2/select.2:42 build/C/man2/select_tut.2:34
+#: build/C/man2/select.2:42 build/C/man2/select_tut.2:36
 msgid ""
 "select, pselect, FD_CLR, FD_ISSET, FD_SET, FD_ZERO - synchronous I/O "
 "multiplexing"
 msgstr "select, pselect, FD_CLR, FD_ISSET, FD_SET, FD_ZERO - 同期 I/O の多重化"
 
 #. type: Plain text
-#: build/C/man2/select.2:45 build/C/man2/select_tut.2:37
+#: build/C/man2/select.2:45 build/C/man2/select_tut.2:39
 #, no-wrap
 msgid "/* According to POSIX.1-2001 */\n"
 msgstr "/* POSIX.1-2001 に従う場合 */\n"
 
 #. type: Plain text
 #: build/C/man2/select.2:47 build/C/man2/select.2:68
-#: build/C/man2/select_tut.2:39 build/C/man2/select_tut.2:60
+#: build/C/man2/select_tut.2:41 build/C/man2/select_tut.2:62
 #, no-wrap
 msgid "B<#include E<lt>sys/select.hE<gt>>\n"
 msgstr "B<#include E<lt>sys/select.hE<gt>>\n"
 
 #. type: Plain text
-#: build/C/man2/select.2:49 build/C/man2/select_tut.2:41
+#: build/C/man2/select.2:49 build/C/man2/select_tut.2:43
 #, no-wrap
 msgid "/* According to earlier standards */\n"
 msgstr "/* 以前の規格に従う場合 */\n"
 
 #. type: Plain text
-#: build/C/man2/select.2:51 build/C/man2/select_tut.2:43
+#: build/C/man2/select.2:51 build/C/man2/select_tut.2:45
 #, no-wrap
 msgid "B<#include E<lt>sys/time.hE<gt>>\n"
 msgstr "B<#include E<lt>sys/time.hE<gt>>\n"
 
 #. type: Plain text
-#: build/C/man2/select.2:55 build/C/man2/select_tut.2:47
+#: build/C/man2/select.2:55 build/C/man2/select_tut.2:49
 #, no-wrap
 msgid "B<#include E<lt>unistd.hE<gt>>\n"
 msgstr "B<#include E<lt>unistd.hE<gt>>\n"
@@ -3642,25 +4499,25 @@ msgstr ""
 "B<           fd_set *>I<exceptfds>B<, struct timeval *>I<timeout>B<);>\n"
 
 #. type: Plain text
-#: build/C/man2/select.2:60 build/C/man2/select_tut.2:52
+#: build/C/man2/select.2:60 build/C/man2/select_tut.2:54
 #, no-wrap
 msgid "B<void FD_CLR(int >I<fd>B<, fd_set *>I<set>B<);>\n"
 msgstr "B<void FD_CLR(int >I<fd>B<, fd_set *>I<set>B<);>\n"
 
 #. type: Plain text
-#: build/C/man2/select.2:62 build/C/man2/select_tut.2:54
+#: build/C/man2/select.2:62 build/C/man2/select_tut.2:56
 #, no-wrap
 msgid "B<int  FD_ISSET(int >I<fd>B<, fd_set *>I<set>B<);>\n"
 msgstr "B<int  FD_ISSET(int >I<fd>B<, fd_set *>I<set>B<);>\n"
 
 #. type: Plain text
-#: build/C/man2/select.2:64 build/C/man2/select_tut.2:56
+#: build/C/man2/select.2:64 build/C/man2/select_tut.2:58
 #, no-wrap
 msgid "B<void FD_SET(int >I<fd>B<, fd_set *>I<set>B<);>\n"
 msgstr "B<void FD_SET(int >I<fd>B<, fd_set *>I<set>B<);>\n"
 
 #. type: Plain text
-#: build/C/man2/select.2:66 build/C/man2/select_tut.2:58
+#: build/C/man2/select.2:66 build/C/man2/select_tut.2:60
 #, no-wrap
 msgid "B<void FD_ZERO(fd_set *>I<set>B<);>\n"
 msgstr "B<void FD_ZERO(fd_set *>I<set>B<);>\n"
@@ -3678,14 +4535,14 @@ msgstr ""
 "B<            const sigset_t *>I<sigmask>B<);>\n"
 
 #. type: Plain text
-#: build/C/man2/select.2:77 build/C/man2/select_tut.2:69
-#: build/C/man3/sockatmark.3:34
+#: build/C/man2/select.2:77 build/C/man2/select_tut.2:71
+#: build/C/man3/sockatmark.3:36
 msgid ""
 "Feature Test Macro Requirements for glibc (see B<feature_test_macros>(7)):"
 msgstr "glibc 向けの機能検査マクロの要件 (B<feature_test_macros>(7)  参照):"
 
 #. type: Plain text
-#: build/C/man2/select.2:81 build/C/man2/select_tut.2:73
+#: build/C/man2/select.2:81 build/C/man2/select_tut.2:75
 msgid ""
 "B<pselect>(): _POSIX_C_SOURCE\\ E<gt>=\\ 200112L || _XOPEN_SOURCE\\ E<gt>=\\ "
 "600"
@@ -3694,37 +4551,38 @@ msgstr ""
 "600"
 
 #. type: Plain text
-#: build/C/man2/select.2:92
+#: build/C/man2/select.2:93
 msgid ""
 "B<select>()  and B<pselect>()  allow a program to monitor multiple file "
 "descriptors, waiting until one or more of the file descriptors become \"ready"
 "\" for some class of I/O operation (e.g., input possible).  A file "
-"descriptor is considered ready if it is possible to perform the "
-"corresponding I/O operation (e.g., B<read>(2))  without blocking."
+"descriptor is considered ready if it is possible to perform a corresponding "
+"I/O operation (e.g., B<read>(2)  without blocking, or a sufficiently small "
+"B<write>(2))."
 msgstr ""
 "B<select>()  や B<pselect>()  を使うと、プログラムで複数のファイルディスクリ"
-"ã\83\97ã\82¿ã\82\92ç\9b£è¦\96ã\81\97ã\80\81 ä¸\80ã\81¤ä»¥ä¸\8aã\81®ã\83\95ã\82¡ã\82¤ã\83«ã\83\87ã\82£ã\82¹ã\82¯ã\83ªã\83\97ã\82¿ã\81\8cã\81\82ã\82\8b種ã\81® I/O æ\93\8dä½\9cã\81® ã\80\8cready "
-"(準備ができた)」状態 (例えば、読み込み可能になった状態)  になるまで待つことが"
-"ã\81§ã\81\8dã\82\8bã\80\82 ã\83\95ã\82¡ã\82¤ã\83«ã\83\87ã\82£ã\82¹ã\82¯ã\83ªã\83\97ã\82¿ã\81\8c ready (æº\96å\82\99ã\81\8cã\81§ã\81\8dã\81\9f) ã\81¨ã\81¯ã\80\81 å¯¾å¿\9cã\81\99ã\82\8b I/O æ\93\8d"
-"作 (例えば B<read>(2)  など) が停止 (block) なしに実行可能な状態にあることを"
-"意味する。"
+"ã\83\97ã\82¿ã\83¼ã\82\92ç\9b£è¦\96ã\81\97ã\80\81 ä¸\80ã\81¤ä»¥ä¸\8aã\81®ã\83\95ã\82¡ã\82¤ã\83«ã\83\87ã\82£ã\82¹ã\82¯ã\83ªã\83\97ã\82¿ã\83¼ã\81\8cã\81\82ã\82\8b種ã\81® I/O æ\93\8dä½\9cã\81® "
+"「ready (準備ができた)」状態 (例えば、読み込み可能になった状態)  になるまで待"
+"ã\81¤ã\81\93ã\81¨ã\81\8cã\81§ã\81\8dã\82\8bã\80\82 ã\83\95ã\82¡ã\82¤ã\83«ã\83\87ã\82£ã\82¹ã\82¯ã\83ªã\83\97ã\82¿ã\83¼ã\81\8c ready (æº\96å\82\99ã\81\8cã\81§ã\81\8dã\81\9f) ã\81¨ã\81¯ã\80\81 "
+"(B<read>(2)  などの) 対応する I/O 操作が停止 (block) なしに実行したり、 十分"
+"小さな B<write>(2) を実行したりできる状態にあることを意味する。"
 
 #. type: Plain text
-#: build/C/man2/select.2:98
+#: build/C/man2/select.2:99
 msgid ""
-"The operation of B<select>()  and B<pselect>()  is identical, with three "
-"differences:"
+"The operation of B<select>()  and B<pselect>()  is identical, other than "
+"these three differences:"
 msgstr ""
 "B<select>()  と B<pselect>()  の動作は同じであるが、以下の 3 点が異なる:"
 
 #. type: TP
-#: build/C/man2/select.2:98
+#: build/C/man2/select.2:99
 #, no-wrap
 msgid "(i)"
 msgstr "(i)"
 
 #. type: Plain text
-#: build/C/man2/select.2:108
+#: build/C/man2/select.2:109
 msgid ""
 "B<select>()  uses a timeout that is a I<struct timeval> (with seconds and "
 "microseconds), while B<pselect>()  uses a I<struct timespec> (with seconds "
@@ -3735,13 +4593,13 @@ msgstr ""
 "timespec> (秒・ナノ秒単位) を用いる。"
 
 #. type: TP
-#: build/C/man2/select.2:108
+#: build/C/man2/select.2:109
 #, no-wrap
 msgid "(ii)"
 msgstr "(ii)"
 
 #. type: Plain text
-#: build/C/man2/select.2:116
+#: build/C/man2/select.2:117
 msgid ""
 "B<select>()  may update the I<timeout> argument to indicate how much time "
 "was left.  B<pselect>()  does not change this argument."
@@ -3750,13 +4608,13 @@ msgstr ""
 "B<pselect>()  はこの引き数を変更しない。"
 
 #. type: TP
-#: build/C/man2/select.2:116
+#: build/C/man2/select.2:117
 #, no-wrap
 msgid "(iii)"
 msgstr "(iii)"
 
 #. type: Plain text
-#: build/C/man2/select.2:125
+#: build/C/man2/select.2:126
 msgid ""
 "B<select>()  has no I<sigmask> argument, and behaves as B<pselect>()  called "
 "with NULL I<sigmask>."
@@ -3765,31 +4623,33 @@ msgstr ""
 "指定した場合の B<pselect>()  と同じである。"
 
 #. type: Plain text
-#: build/C/man2/select.2:143
+#: build/C/man2/select.2:144
 msgid ""
 "Three independent sets of file descriptors are watched.  Those listed in "
 "I<readfds> will be watched to see if characters become available for reading "
 "(more precisely, to see if a read will not block; in particular, a file "
 "descriptor is also ready on end-of-file), those in I<writefds> will be "
-"watched to see if a write will not block, and those in I<exceptfds> will be "
-"watched for exceptions.  On exit, the sets are modified in place to indicate "
-"which file descriptors actually changed status.  Each of the three file "
-"descriptor sets may be specified as NULL if no file descriptors are to be "
-"watched for the corresponding class of events."
-msgstr ""
-"3 つの独立したファイルディスクリプタ集合の監視を行う。 I<readfds> に入れられ"
-"たディスクリプタについては、読み込みが可能かどうかを 監視する (より正確にいう"
-"と、停止 (block) なしで読むことができるかを 調べる。ファイルの終端 (end-of-"
-"file) の場合も、 ファイルディスクリプタは読み込み可能として扱われる)。 "
-"I<writefds> に入れられたディスクリプタについては、停止せずに書き込みが 可能か"
-"どうかを監視する。 I<exceptfds> にあるものについては、例外の監視を行なう。シ"
-"ステムコール終了時に、 どのファイルディスクリプタの状態が実際に変化したか示す"
-"ために、 集合の内容が変更される。 ある種別のイベントを監視したいファイルディ"
-"スクリプタが一つもない場合には、 対応するファイルディスクリプタ集合に NULL を"
-"指定することができる。"
-
-#. type: Plain text
-#: build/C/man2/select.2:156
+"watched to see if space is available for write (though a large write may "
+"still block), and those in I<exceptfds> will be watched for exceptions.  On "
+"exit, the sets are modified in place to indicate which file descriptors "
+"actually changed status.  Each of the three file descriptor sets may be "
+"specified as NULL if no file descriptors are to be watched for the "
+"corresponding class of events."
+msgstr ""
+"3 つの独立したファイルディスクリプター集合の監視を行う。 I<readfds> に入れら"
+"れたディスクリプターについては、読み込みが可能かどうかを 監視する (より正確に"
+"いうと、停止 (block) なしで読むことができるかを 調べる。ファイルの終端 (end-"
+"of-file) の場合も、 ファイルディスクリプターは読み込み可能として扱われる)。 "
+"I<writefds> に入れられたディスクリプターについては、書き込み用に利用可能な領"
+"域があるかを監視する (ただし、大きな書き込みの場合には停止する可能性はあ"
+"る)。 I<exceptfds> にあるものについては、例外の監視を行なう。システムコール終"
+"了時に、 どのファイルディスクリプターの状態が実際に変化したか示すために、 集"
+"合の内容が変更される。 ある種別のイベントを監視したいファイルディスクリプター"
+"が一つもない場合には、 対応するファイルディスクリプター集合に NULL を指定する"
+"ことができる。"
+
+#. type: Plain text
+#: build/C/man2/select.2:157
 msgid ""
 "Four macros are provided to manipulate the sets.  B<FD_ZERO>()  clears a "
 "set.  B<FD_SET>()  and B<FD_CLR>()  respectively add and remove a given file "
@@ -3798,47 +4658,83 @@ msgid ""
 msgstr ""
 "集合を操作するために 4 つのマクロが提供されている。 B<FD_ZERO>()  は集合を消"
 "去する。 B<FD_SET>()  と B<FD_CLR>()  はそれぞれ指定したファイルディスクリプ"
-"タの集合への追加、削除を行う。 B<FD_ISSET>()  は集合にファイルディスクリプタ"
-"があるかどうか調べる; このマクロは B<select>()  が終了した後に使うと便利であ"
-"る。"
+"ターの集合への追加、削除を行う。 B<FD_ISSET>()  は集合にファイルディスクリプ"
+"ターがあるかどうか調べる; このマクロは B<select>()  が終了した後に使うと便利"
+"である。"
+
+#. type: Plain text
+#: build/C/man2/select.2:160
+msgid ""
+"I<nfds> is the highest-numbered file descriptor in any of the three sets, "
+"plus 1."
+msgstr ""
+"I<nfds> は 3 つの集合に含まれるファイルディスクリプターの最大値に 1 を足した"
+"ものである。"
+
+#. type: Plain text
+#: build/C/man2/select.2:167
+msgid ""
+"The I<timeout> argument specifies the interval that B<select>()  should "
+"block waiting for a file descriptor to become ready.  The call will block "
+"until either:"
+msgstr ""
+"I<timeout> 引き数は、 B<select>() がファイルディスクリプターが ready になるの"
+"を待って停止する時間を指定する。 呼び出しは以下のいずれかになるまで停止する。"
+
+#. type: IP
+#: build/C/man2/select.2:167 build/C/man2/select.2:169
+#: build/C/man2/select.2:171
+#, no-wrap
+msgid "*"
+msgstr "*"
+
+#. type: Plain text
+#: build/C/man2/select.2:169
+msgid "a file descriptor becomes ready;"
+msgstr "ファイルディスクリプターが利用可能になる。"
+
+#. type: Plain text
+#: build/C/man2/select.2:171
+msgid "the call is interrupted by a signal handler; or"
+msgstr "システムコールがシグナルハンドラーにより割り込まれた。"
 
 #. type: Plain text
-#: build/C/man2/select.2:159
-msgid ""
-"I<nfds> is the highest-numbered file descriptor in any of the three sets, "
-"plus 1."
-msgstr ""
-"I<nfds> は 3 つの集合に含まれるファイルディスクリプタの最大値に 1 を足したも"
-"のである。"
+#: build/C/man2/select.2:173
+msgid "the timeout expires."
+msgstr "タイムアウト時間が満了した。"
 
 #. type: Plain text
-#: build/C/man2/select.2:175
+#: build/C/man2/select.2:190
 msgid ""
-"I<timeout> is an upper bound on the amount of time elapsed before B<select>"
-"()  returns.  If both fields of the I<timeval> structure are zero, then "
-"B<select>()  returns immediately.  (This is useful for polling.)  If "
-"I<timeout> is NULL (no timeout), B<select>()  can block indefinitely."
+"Note that the I<timeout> interval will be rounded up to the system clock "
+"granularity, and kernel scheduling delays mean that the blocking interval "
+"may overrun by a small amount.  If both fields of the I<timeval> structure "
+"are zero, then B<select>()  returns immediately.  (This is useful for "
+"polling.)  If I<timeout> is NULL (no timeout), B<select>()  can block "
+"indefinitely."
 msgstr ""
-"I<timeout> は B<select>()  が復帰するまでの経過時間の上限である。 I<timeval> "
-"構造体の両方のフィールドが 0 の場合、 B<select>()  はすぐに復帰する (この機能"
-"はポーリング (polling) を行うのに便利である)。 I<timeout> に NULL (タイムアウ"
-"トなし)  が指定されると、 B<select>()  は無期限に停止 (block) する。"
+"この I<timeout> 時間はシステムクロックの粒度に切り上げられ、 カーネルのスケ"
+"ジューリング遅延により少しだけ長くなる可能性がある点に注意すること。 "
+"I<timeval> 構造体の両方のフィールドが 0 の場合、 B<select>() はすぐに復帰す"
+"る (この機能はポーリング (polling) を行うのに便利である)。 I<timeout> に "
+"NULL (タイムアウトなし) が指定されると、 B<select>() は無期限に停止 (block) "
+"する。"
 
 #. type: Plain text
-#: build/C/man2/select.2:185
+#: build/C/man2/select.2:200
 msgid ""
 "I<sigmask> is a pointer to a signal mask (see B<sigprocmask>(2)); if it is "
 "not NULL, then B<pselect>()  first replaces the current signal mask by the "
 "one pointed to by I<sigmask>, then does the \"select\" function, and then "
 "restores the original signal mask."
 msgstr ""
-"I<sigmask> は、シグナルマスク (B<sigprocmask>(2)  を参照) へのポインタであ"
+"I<sigmask> ã\81¯ã\80\81ã\82·ã\82°ã\83\8aã\83«ã\83\9eã\82¹ã\82¯ (B<sigprocmask>(2)  ã\82\92å\8f\82ç\85§) ã\81¸ã\81®ã\83\9dã\82¤ã\83³ã\82¿ã\83¼ã\81§ã\81\82"
 "る。 I<sigmask> が NULL でない場合、 B<pselect>()  は I<sigmask> が指している"
 "シグナルマスクで現在のシグナルマスクを置き換えてから、 \"select\" 関数を実行"
 "し、 終了後にシグナルマスクを元のシグナルマスクに戻す。"
 
 #. type: Plain text
-#: build/C/man2/select.2:191
+#: build/C/man2/select.2:206
 msgid ""
 "Other than the difference in the precision of the I<timeout> argument, the "
 "following B<pselect>()  call:"
@@ -3846,7 +4742,7 @@ msgstr ""
 "I<timeout> 引き数の精度の違いを除くと、以下の B<pselect>()  の呼び出しは、"
 
 #. type: Plain text
-#: build/C/man2/select.2:195
+#: build/C/man2/select.2:210
 #, no-wrap
 msgid ""
 "    ready = pselect(nfds, &readfds, &writefds, &exceptfds,\n"
@@ -3856,30 +4752,30 @@ msgstr ""
 "                    timeout, &sigmask);\n"
 
 #. type: Plain text
-#: build/C/man2/select.2:200
+#: build/C/man2/select.2:215
 msgid "is equivalent to I<atomically> executing the following calls:"
 msgstr "次のコールを I<atomic> に実行するのと等価である。"
 
 #. type: Plain text
-#: build/C/man2/select.2:203
+#: build/C/man2/select.2:218
 #, no-wrap
 msgid "    sigset_t origmask;\n"
 msgstr "    sigset_t origmask;\n"
 
 #. type: Plain text
-#: build/C/man2/select.2:207
+#: build/C/man2/select.2:222
 #, no-wrap
 msgid ""
-"    sigprocmask(SIG_SETMASK, &sigmask, &origmask);\n"
+"    pthread_sigmask(SIG_SETMASK, &sigmask, &origmask);\n"
 "    ready = select(nfds, &readfds, &writefds, &exceptfds, timeout);\n"
-"    sigprocmask(SIG_SETMASK, &origmask, NULL);\n"
+"    pthread_sigmask(SIG_SETMASK, &origmask, NULL);\n"
 msgstr ""
-"    sigprocmask(SIG_SETMASK, &sigmask, &origmask);\n"
+"    pthread_sigmask(SIG_SETMASK, &sigmask, &origmask);\n"
 "    ready = select(nfds, &readfds, &writefds, &exceptfds, timeout);\n"
-"    sigprocmask(SIG_SETMASK, &origmask, NULL);\n"
+"    pthread_sigmask(SIG_SETMASK, &origmask, NULL);\n"
 
 #. type: Plain text
-#: build/C/man2/select.2:228
+#: build/C/man2/select.2:243
 msgid ""
 "The reason that B<pselect>()  is needed is that if one wants to wait for "
 "either a signal or for a file descriptor to become ready, then an atomic "
@@ -3890,23 +4786,23 @@ msgid ""
 "one to first block signals, handle the signals that have come in, then call "
 "B<pselect>()  with the desired I<sigmask>, avoiding the race.)"
 msgstr ""
-"B<pselect>()  ã\81\8cå¿\85è¦\81ã\81«ã\81ªã\82\8bç\90\86ç\94±ã\81¯ã\80\81ã\82·ã\82°ã\83\8aã\83«ã\82\84ã\83\95ã\82¡ã\82¤ã\83«ã\83\87ã\82£ã\82¹ã\82¯ã\83ªã\83\97ã\82¿ã\81®ç\8a¶æ\85\8bå¤\89å\8c\96"
-"を 待ちたいときには、競合状態を避けるために atomic なテストが必要になる から"
-"ã\81§ã\81\82ã\82\8bã\80\82 (ã\82·ã\82°ã\83\8aã\83«ã\83\8fã\83³ã\83\89ã\83©ã\81\8c大å\9f\9fã\83\95ã\83©ã\82°ã\82\92設å®\9aã\81\97ã\81¦æ\88»ã\82\8bå ´å\90\88ã\82\92è\80\83ã\81\88ã\81¦ã\81¿ã\82\88ã\81\86ã\80\82 ã\81\93ã\81®"
-"大域フラグのテストに続けて B<select>()  を呼び出すと、 シグナルがテストの直後"
-"かつ呼び出しの直前に届いた時には B<select>()  は永久にハングしてしまうかもし"
-"ã\82\8cã\81ªã\81\84ã\80\82 ä¸\80æ\96¹ã\80\81 B<pselect>()  ã\82\92使ã\81\86ã\81¨ã\80\81ã\81¾ã\81\9aã\82·ã\82°ã\83\8aã\83«ã\82\92ç¦\81æ­¢ (block) ã\81\97ã\81¦ã\80\81å\85¥ã\81£"
-"てくるシグナルを操作し、 望みの I<sigmask> で B<pselect>()  を呼び出すこと"
-"で、前記の競合を避けることができる。)"
+"B<pselect>()  ã\81\8cå¿\85è¦\81ã\81«ã\81ªã\82\8bç\90\86ç\94±ã\81¯ã\80\81ã\82·ã\82°ã\83\8aã\83«ã\82\84ã\83\95ã\82¡ã\82¤ã\83«ã\83\87ã\82£ã\82¹ã\82¯ã\83ªã\83\97ã\82¿ã\83¼ã\81®ç\8a¶æ\85\8bå¤\89"
+"化を 待ちたいときには、競合状態を避けるために atomic なテストが必要になる か"
+"ã\82\89ã\81§ã\81\82ã\82\8bã\80\82 (ã\82·ã\82°ã\83\8aã\83«ã\83\8fã\83³ã\83\89ã\83©ã\83¼ã\81\8c大å\9f\9fã\83\95ã\83©ã\82°ã\82\92設å®\9aã\81\97ã\81¦æ\88»ã\82\8bå ´å\90\88ã\82\92è\80\83ã\81\88ã\81¦ã\81¿ã\82\88ã\81\86ã\80\82 "
+"この大域フラグのテストに続けて B<select>()  を呼び出すと、 シグナルがテストの"
+"直後かつ呼び出しの直前に届いた時には B<select>()  は永久にハングしてしまうか"
+"ã\82\82ã\81\97ã\82\8cã\81ªã\81\84ã\80\82 ä¸\80æ\96¹ã\80\81 B<pselect>()  ã\82\92使ã\81\86ã\81¨ã\80\81ã\81¾ã\81\9aã\82·ã\82°ã\83\8aã\83«ã\82\92ç¦\81æ­¢ (block) ã\81\97ã\81¦ã\80\81"
+"入ってくるシグナルを操作し、 望みの I<sigmask> で B<pselect>()  を呼び出すこ"
+"ã\81¨ã\81§ã\80\81å\89\8dè¨\98ã\81®ç«¶å\90\88ã\82\92é\81¿ã\81\91ã\82\8bã\81\93ã\81¨ã\81\8cã\81§ã\81\8dã\82\8bã\80\82)"
 
 #. type: SS
-#: build/C/man2/select.2:228
+#: build/C/man2/select.2:243
 #, no-wrap
 msgid "The timeout"
 msgstr "タイムアウト"
 
 #. type: Plain text
-#: build/C/man2/select.2:232
+#: build/C/man2/select.2:247
 msgid ""
 "The time structures involved are defined in I<E<lt>sys/time.hE<gt>> and look "
 "like"
@@ -3914,7 +4810,7 @@ msgstr ""
 "これらの関数で使用される時間関連の構造体は、 I<E<lt>sys/time.hE<gt>> で"
 
 #. type: Plain text
-#: build/C/man2/select.2:239
+#: build/C/man2/select.2:254
 #, no-wrap
 msgid ""
 "struct timeval {\n"
@@ -3928,12 +4824,12 @@ msgstr ""
 "};\n"
 
 #. type: Plain text
-#: build/C/man2/select.2:243
+#: build/C/man2/select.2:258
 msgid "and"
 msgstr "や"
 
 #. type: Plain text
-#: build/C/man2/select.2:250
+#: build/C/man2/select.2:265
 #, no-wrap
 msgid ""
 "struct timespec {\n"
@@ -3947,14 +4843,14 @@ msgstr ""
 "};\n"
 
 #. type: Plain text
-#: build/C/man2/select.2:254
+#: build/C/man2/select.2:269
 msgid "(However, see below on the POSIX.1-2001 versions.)"
 msgstr ""
 "のように定義されている。 (POSIX.1-2001 での定義については下記の「注意」を参"
 "照)"
 
 #. type: Plain text
-#: build/C/man2/select.2:262
+#: build/C/man2/select.2:277
 msgid ""
 "Some code calls B<select>()  with all three sets empty, I<nfds> zero, and a "
 "non-NULL I<timeout> as a fairly portable way to sleep with subsecond "
@@ -3969,7 +4865,7 @@ msgstr ""
 #.  - it is certainly true that:
 #.  Linux follows SUSv2 and sets the bit masks to zero upon a timeout.
 #. type: Plain text
-#: build/C/man2/select.2:285
+#: build/C/man2/select.2:300
 msgid ""
 "On Linux, B<select>()  modifies I<timeout> to reflect the amount of time not "
 "slept; most other implementations do not do this.  (POSIX.1-2001 permits "
@@ -3982,100 +4878,108 @@ msgstr ""
 "Linux では、 B<select>()  は I<timeout> を変更し、残りの停止時間を反映するよ"
 "うになっているが、 他のほとんどの実装ではこのようになっていない "
 "(POSIX.1-2001 はどちらの動作も認めている)。 このため、 I<timeout> を参照して"
-"ã\81\84ã\82\8b Linux ã\81®ã\82³ã\83¼ã\83\89ã\82\92ä»\96ã\81®ã\82ªã\83\9aã\83¬ã\83¼ã\83\86ã\82£ã\83³ã\82°ã\83»ã\82·ã\82¹ã\83\86ã\83 ã\81¸ ç§»æ¤\8dã\81\99ã\82\8bå ´å\90\88ã\80\81å\95\8fé¡\8cã\81\8cèµ·"
-"ã\81\93ã\82\8bã\80\82 ã\81¾ã\81\9fã\80\81ã\83«ã\83¼ã\83\97ã\81®ä¸­ã\81§ I<timeval> æ§\8bé\80 ä½\93ã\82\92å\88\9dæ\9c\9få\8c\96ã\81\9bã\81\9aã\81«ã\81\9dã\81®ã\81¾ã\81¾å\86\8då\88©ç\94¨ã\81\97ã\81¦ "
+"ã\81\84ã\82\8b Linux ã\81®ã\82³ã\83¼ã\83\89ã\82\92ä»\96ã\81®ã\82ªã\83\9aã\83¬ã\83¼ã\83\86ã\82£ã\83³ã\82°ã\82·ã\82¹ã\83\86ã\83 ã\81¸ ç§»æ¤\8dã\81\99ã\82\8bå ´å\90\88ã\80\81å\95\8fé¡\8cã\81\8cèµ·ã\81\93"
+"る。 また、ループの中で I<timeval> 構造体を初期化せずにそのまま再利用して "
 "B<select>()  を複数回行なっているコードを Linux へ移植する場合にも、問題が起"
 "こる。 B<select>()  から復帰した後は I<timeout> は未定義であると考えるべきで"
 "ある。"
 
 #. type: Plain text
-#: build/C/man2/select.2:302
+#: build/C/man2/select.2:318
 msgid ""
 "On success, B<select>()  and B<pselect>()  return the number of file "
 "descriptors contained in the three returned descriptor sets (that is, the "
 "total number of bits that are set in I<readfds>, I<writefds>, I<exceptfds>)  "
 "which may be zero if the timeout expires before anything interesting "
-"happens.  On error, -1 is returned, and I<errno> is set appropriately; the "
-"sets and I<timeout> become undefined, so do not rely on their contents after "
-"an error."
+"happens.  On error, -1 is returned, and I<errno> is set to indicate the "
+"error; the file descriptor sets are unmodified, and I<timeout> becomes "
+"undefined."
 msgstr ""
 "成功した場合、 B<select>()  と B<pselect>()  は更新された 3 つのディスクリプ"
-"タ集合に含まれている ファイルディスクリプタの数 (つまり、 I<readfds>, "
+"ター集合に含まれている ファイルディスクリプターの数 (つまり、 I<readfds>, "
 "I<writefds>, I<exceptfds> 中の 1 になっているビットの総数) を返す。 何も起こ"
-"ã\82\89ã\81\9aã\81«æ\99\82é\96\93å\88\87ã\82\8cã\81«ã\81ªã\81£ã\81\9få ´å\90\88ã\80\81 ã\83\87ã\82£ã\82¹ã\82¯ã\83ªã\83\97ã\82¿ã\81®æ\95°ã\81¯ 0 ã\81«ã\81ªã\82\8bã\81\93ã\81¨ã\82\82ã\81\82ã\82\8bã\80\82 ã\82¨ã\83©ã\83¼"
-"ã\81ªã\82\89ã\81° -1 ã\82\92è¿\94ã\81\97ã\80\81 I<errno> ã\81«é\81©å\88\87ã\81ªå\80¤ã\81\8c設å®\9aã\81\95ã\82\8cã\82\8b; é\9b\86å\90\88ã\81¨ I<timeout> ã\81¯æ\9cªå®\9a"
-"義となるので、エラーが起こった後はそれらの内容を信頼してはならない。"
+"ã\82\89ã\81\9aã\81«æ\99\82é\96\93å\88\87ã\82\8cã\81«ã\81ªã\81£ã\81\9få ´å\90\88ã\80\81 ã\83\87ã\82£ã\82¹ã\82¯ã\83ªã\83\97ã\82¿ã\83¼ã\81®æ\95°ã\81¯ 0 ã\81«ã\81ªã\82\8bã\81\93ã\81¨ã\82\82ã\81\82ã\82\8bã\80\82 ã\82¨"
+"ã\83©ã\83¼ã\81ªã\82\89ã\81° -1 ã\82\92è¿\94ã\81\97ã\80\81 I<errno> ã\81«ã\82¨ã\83©ã\83¼ã\82\92示ã\81\99å\80¤ã\81\8c設å®\9aã\81\95ã\82\8cã\82\8b; ã\83\95ã\82¡ã\82¤ã\83«ã\83\87ã\82£ã\82¹"
+"クリプター集合は変更されず、 I<timeout> は不定となる。"
 
 #. type: Plain text
-#: build/C/man2/select.2:308
+#: build/C/man2/select.2:324
 msgid ""
 "An invalid file descriptor was given in one of the sets.  (Perhaps a file "
 "descriptor that was already closed, or one on which an error has occurred.)"
 msgstr ""
-"ã\81\84ã\81\9aã\82\8cã\81\8bã\81®é\9b\86å\90\88ã\81«ç\84¡å\8a¹ã\81ªã\83\95ã\82¡ã\82¤ã\83«ã\83\87ã\82£ã\82¹ã\82¯ã\83ªã\83\97ã\82¿ã\81\8cæ\8c\87å®\9aã\81\95ã\82\8cã\81\9f (ã\81\8aã\81\9dã\82\89ã\81\8fã\81¯ã\80\81ã\81\99ã\81§ã\81«"
-"ã\82¯ã\83­ã\83¼ã\82ºã\81\95ã\82\8cã\81\9fã\83\95ã\82¡ã\82¤ã\83«ã\83\87ã\82£ã\82¹ã\82¯ã\83ªã\83\97ã\82¿ã\81\8bã\80\81 ã\82¨ã\83©ã\83¼ã\81\8cç\99ºç\94\9fã\81\97ã\81\9fã\83\95ã\82¡ã\82¤ã\83«ã\83\87ã\82£ã\82¹ã\82¯ã\83ªã\83\97"
-"ã\82¿が指定された)。"
+"ã\81\84ã\81\9aã\82\8cã\81\8bã\81®é\9b\86å\90\88ã\81«ç\84¡å\8a¹ã\81ªã\83\95ã\82¡ã\82¤ã\83«ã\83\87ã\82£ã\82¹ã\82¯ã\83ªã\83\97ã\82¿ã\83¼ã\81\8cæ\8c\87å®\9aã\81\95ã\82\8cã\81\9f (ã\81\8aã\81\9dã\82\89ã\81\8fã\81¯ã\80\81ã\81\99ã\81§"
+"ã\81«ã\82¯ã\83­ã\83¼ã\82ºã\81\95ã\82\8cã\81\9fã\83\95ã\82¡ã\82¤ã\83«ã\83\87ã\82£ã\82¹ã\82¯ã\83ªã\83\97ã\82¿ã\83¼ã\81\8bã\80\81 ã\82¨ã\83©ã\83¼ã\81\8cç\99ºç\94\9fã\81\97ã\81\9fã\83\95ã\82¡ã\82¤ã\83«ã\83\87ã\82£ã\82¹ã\82¯"
+"ã\83ªã\83\97ã\82¿ã\83¼が指定された)。"
 
 #. type: Plain text
-#: build/C/man2/select.2:312
+#: build/C/man2/select.2:328
 msgid "A signal was caught; see B<signal>(7)."
 msgstr "シグナルを受信した。"
 
 #. type: Plain text
-#: build/C/man2/select.2:318
+#: build/C/man2/select.2:335
 msgid ""
-"I<nfds> is negative or the value contained within I<timeout> is invalid."
-msgstr "I<n> が負、または I<timeout> に入っている値が不正である。"
+"I<nfds> is negative or exceeds the B<RLIMIT_NOFILE> resource limit (see "
+"B<getrlimit>(2))."
+msgstr ""
+"I<nfds> が負、 またはリソース上限 B<RLIMIT_NOFILE> (B<getrlimit>(2) 参照) よ"
+"り大きい。"
+
+#. type: Plain text
+#: build/C/man2/select.2:340
+msgid "the value contained within I<timeout> is invalid."
+msgstr "I<timeout> に入っている値が不正である。"
 
 #. type: Plain text
-#: build/C/man2/select.2:321
+#: build/C/man2/select.2:343
 msgid "unable to allocate memory for internal tables."
-msgstr "内部テーブルにメモリを割り当てることができなかった。"
+msgstr "å\86\85é\83¨ã\83\86ã\83¼ã\83\96ã\83«ã\81«ã\83¡ã\83¢ã\83ªã\83¼ã\82\92å\89²ã\82\8aå½\93ã\81¦ã\82\8bã\81\93ã\81¨ã\81\8cã\81§ã\81\8dã\81ªã\81\8bã\81£ã\81\9fã\80\82"
 
 #. type: Plain text
-#: build/C/man2/select.2:327
+#: build/C/man2/select.2:349
 msgid ""
-"B<pselect>()  was added to Linux in kernel 2.6.16.  Prior to this, B<pselect>"
-"()  was emulated in glibc (but see BUGS)."
+"B<pselect>()  was added to Linux in kernel 2.6.16.  Prior to this, "
+"B<pselect>()  was emulated in glibc (but see BUGS)."
 msgstr ""
 "B<pselect>()  はカーネル 2.6.16 で Linux に追加された。 それ以前は、 "
 "B<pselect>()  は glibc でエミュレートされていた (「バグ」の章を参照)。"
 
 #. type: Plain text
-#: build/C/man2/select.2:338
+#: build/C/man2/select.2:360
 msgid ""
 "B<select>()  conforms to POSIX.1-2001 and 4.4BSD (B<select>()  first "
 "appeared in 4.2BSD).  Generally portable to/from non-BSD systems supporting "
-"clones of the BSD socket layer (including System V variants).  However, note "
-"that the System V variant typically sets the timeout variable before exit, "
-"but the BSD variant does not."
+"clones of the BSD socket layer (including System\\ V variants).  However, "
+"note that the System\\ V variant typically sets the timeout variable before "
+"exit, but the BSD variant does not."
 msgstr ""
 "B<select>()  は POSIX.1-2001 と 4.4BSD (B<select>()  は 4.2BSD で最初に登場し"
 "た) に準拠する。 BSD ソケット層のクローンをサポートしている非 BSD システム "
-"(System V 系も含む) との間でだいたい移植性がある。しかし System V 系では たい"
-"ã\81\8cã\81\84 timeout å¤\89æ\95°ã\82\92 exit ã\81®å\89\8dã\81«ã\82»ã\83\83ã\83\88ã\81\99ã\82\8bã\81\8cã\80\81 BSD ç³»ã\81§ã\81¯ã\81\9dã\81\86ã\81§ã\81ªã\81\84ã\81®ã\81§æ³¨æ\84\8fã\81\99"
-"ること。"
+"(System\\ V 系も含む) との間でだいたい移植性がある。しかし System\\ V 系では "
+"ã\81\9fã\81\84ã\81\8cã\81\84 timeout å¤\89æ\95°ã\82\92 exit ã\81®å\89\8dã\81«ã\82»ã\83\83ã\83\88ã\81\99ã\82\8bã\81\8cã\80\81 BSD ç³»ã\81§ã\81¯ã\81\9dã\81\86ã\81§ã\81ªã\81\84ã\81®ã\81§æ³¨"
+"意すること。"
 
 #. type: Plain text
-#: build/C/man2/select.2:342
+#: build/C/man2/select.2:364
 msgid "B<pselect>()  is defined in POSIX.1g, and in POSIX.1-2001."
 msgstr "B<pselect>()  は POSIX.1g と POSIX.1-2001 で定義されている。"
 
 #. type: Plain text
-#: build/C/man2/select.2:359
+#: build/C/man2/select.2:381
 msgid ""
 "An I<fd_set> is a fixed size buffer.  Executing B<FD_CLR>()  or B<FD_SET>()  "
 "with a value of I<fd> that is negative or is equal to or larger than "
 "B<FD_SETSIZE> will result in undefined behavior.  Moreover, POSIX requires "
 "I<fd> to be a valid file descriptor."
 msgstr ""
-"I<fd_set> は固定サイズのバッファである。 負や B<FD_SETSIZE> 以上の値を持つ "
+"I<fd_set> ã\81¯å\9bºå®\9aã\82µã\82¤ã\82ºã\81®ã\83\90ã\83\83ã\83\95ã\82¡ã\83¼ã\81§ã\81\82ã\82\8bã\80\82 è² ã\82\84 B<FD_SETSIZE> ä»¥ä¸\8aã\81®å\80¤ã\82\92æ\8c\81ã\81¤ "
 "I<fd> に対して B<FD_CLR>()  や B<FD_SET>()  を実行した場合、 どのような動作を"
 "するかは定義されていない。 また、 POSIX では I<fd> は有効なファイルディスクリ"
-"プタでなければならないと規定されている。"
+"ã\83\97ã\82¿ã\83¼ã\81§ã\81ªã\81\91ã\82\8cã\81°ã\81ªã\82\89ã\81ªã\81\84ã\81¨è¦\8få®\9aã\81\95ã\82\8cã\81¦ã\81\84ã\82\8bã\80\82"
 
 #. type: Plain text
-#: build/C/man2/select.2:368
+#: build/C/man2/select.2:390
 msgid ""
 "Concerning the types involved, the classical situation is that the two "
 "fields of a I<timeval> structure are typed as I<long> (as shown above), and "
@@ -4087,7 +4991,7 @@ msgstr ""
 "定義されている。 POSIX.1-2001 の下では、以下のようになっている。"
 
 #. type: Plain text
-#: build/C/man2/select.2:375
+#: build/C/man2/select.2:397
 #, no-wrap
 msgid ""
 "struct timeval {\n"
@@ -4101,7 +5005,7 @@ msgstr ""
 "};\n"
 
 #. type: Plain text
-#: build/C/man2/select.2:386
+#: build/C/man2/select.2:408
 msgid ""
 "where the structure is defined in I<E<lt>sys/select.hE<gt>> and the data "
 "types I<time_t> and I<suseconds_t> are defined in I<E<lt>sys/types.hE<gt>>."
@@ -4110,7 +5014,7 @@ msgstr ""
 "と I<suseconds_t> は I<E<lt>sys/types.hE<gt>> で定義されている。"
 
 #. type: Plain text
-#: build/C/man2/select.2:398
+#: build/C/man2/select.2:420
 msgid ""
 "Concerning prototypes, the classical situation is that one should include "
 "I<E<lt>time.hE<gt>> for B<select>().  The POSIX.1-2001 situation is that one "
@@ -4122,50 +5026,119 @@ msgstr ""
 "インクルードすればよい。"
 
 #. type: Plain text
-#: build/C/man2/select.2:410
+#: build/C/man2/select.2:431
+msgid ""
+"Under glibc 2.0, I<E<lt>sys/select.hE<gt>> gives the wrong prototype for "
+"B<pselect>().  Under glibc 2.1 to 2.2.1, it gives B<pselect>()  when "
+"B<_GNU_SOURCE> is defined.  Since glibc 2.2.2, the requirements are as shown "
+"in the SYNOPSIS."
+msgstr ""
+"glibc 2.0 では I<E<lt>sys/select.hE<gt>> が提供する B<pselect>()  のプロトタ"
+"イプが間違っている。 glibc 2.1 から 2.2.1 では B<_GNU_SOURCE> が定義されてい"
+"る場合に、 B<pselect>()  が提供される。 glibc 2.2.2 以降では、 B<pselect>()  "
+"を使用するには、「書式」に記載された要件を満たす必要がある。"
+
+#. type: SS
+#: build/C/man2/select.2:431
+#, no-wrap
+msgid "Multithreaded applications"
+msgstr "マルチスレッドアプリケーション"
+
+#. type: Plain text
+#: build/C/man2/select.2:448
 msgid ""
-"Libc4 and libc5 do not have a I<E<lt>sys/select.hE<gt>> header; under glibc "
-"2.0 and later this header exists.  Under glibc 2.0 it unconditionally gives "
-"the wrong prototype for B<pselect>().  Under glibc 2.1 to 2.2.1 it gives "
-"B<pselect>()  when B<_GNU_SOURCE> is defined.  Since glibc 2.2.2 the "
-"requirements are as shown in the SYNOPSIS."
+"If a file descriptor being monitored by B<select>()  is closed in another "
+"thread, the result is unspecified.  On some UNIX systems, B<select>()  "
+"unblocks and returns, with an indication that the file descriptor is ready "
+"(a subsequent I/O operation will likely fail with an error, unless another "
+"the file descriptor reopened between the time B<select>()  returned and the "
+"I/O operations was performed).  On Linux (and some other systems), closing "
+"the file descriptor in another thread has no effect on B<select>().  In "
+"summary, any application that relies on a particular behavior in this "
+"scenario must be considered buggy."
 msgstr ""
-"ヘッダファイル I<E<lt>sys/select.hE<gt>> は libc4 と libc5 にはなく、glibc "
-"2.0 以降に存在する。 悪いことに glibc 2.0 以前では B<pselect>()  のプロトタイ"
-"プが間違っている。 glibc 2.1 から 2.2.1 では B<_GNU_SOURCE> が定義されている"
-"場合に、 B<pselect>()  が提供される。 glibc 2.2.2 以降では、 B<pselect>()  を"
-"使用するには、「書式」に記載された要件を満たす必要がある。"
+"B<select>() で監視中のファイルディスクリプターが別のスレッドでクローズされた"
+"場合、どのような結果になるかは規定されていない。いくつかの UNIX システムで"
+"は、 B<select>() は停止 (block) せず、すぐ返り、ファイルディスクリプターが "
+"ready だと報告される (B<select>() が返ってから I/O 操作が実行されるまでの間"
+"に、 別のファイルディスクリプターが再度オープンされない限り、 それ以降の I/O "
+"操作はおそらく失敗するだろう)。 Linux (や他のいくつかのシステム) では、 別の"
+"スレッドでファイルディスクリプターがクローズされても B<select>() には影響を与"
+"えない。 まとめると、このような場合に特定の動作に依存しているアプリケーション"
+"は「バグっている」と考えなければならない。"
 
 #. type: SS
-#: build/C/man2/select.2:410
+#: build/C/man2/select.2:448
 #, no-wrap
-msgid "Linux Notes"
-msgstr "Linux での注意"
+msgid "C library/kernel ABI differences"
+msgstr "C ライブラリとカーネル ABI の違い"
+
+#. type: Plain text
+#: build/C/man2/select.2:456
+msgid ""
+"The B<pselect>()  interface described in this page is implemented by glibc.  "
+"The underlying Linux system call is named B<pselect6>().  This system call "
+"has somewhat different behavior from the glibc wrapper function."
+msgstr ""
+"このページで説明している B<pselect>() のインターフェースは、glibc に\n"
+"実装されているものである。内部で呼び出される Linux のシステムコールは\n"
+"B<pselect6>() という名前である。このシステムコールは glibc のラッパー\n"
+"関数とは少し違った動作をする。"
 
 #. type: Plain text
-#: build/C/man2/select.2:425
-#, fuzzy
-#| msgid ""
-#| "The Linux B<pselect>()  system call modifies its I<timeout> argument.  "
-#| "However, the glibc wrapper function hides this behavior by using a local "
-#| "variable for the timeout argument that is passed to the system call.  "
-#| "Thus, the glibc B<pselect>()  function does not modify its timeout "
-#| "argument; this is the behavior required by POSIX.1-2001."
+#: build/C/man2/select.2:471
 msgid ""
-"The Linux B<pselect>()  system call modifies its I<timeout> argument.  "
+"The Linux B<pselect6>()  system call modifies its I<timeout> argument.  "
 "However, the glibc wrapper function hides this behavior by using a local "
 "variable for the timeout argument that is passed to the system call.  Thus, "
 "the glibc B<pselect>()  function does not modify its I<timeout> argument; "
 "this is the behavior required by POSIX.1-2001."
 msgstr ""
-"Linux の B<pselect>()  システムコールは I<timeout> 引き数を変更する。 しか"
-"ã\81\97ã\80\81 glibc ã\81®ã\83©ã\83\83ã\83\91ã\83¼é\96¢æ\95°ã\81¯ã\80\81ã\82·ã\82¹ã\83\86ã\83 ã\82³ã\83¼ã\83«ã\81«æ¸¡ã\81\99 timeout å¼\95ã\81\8dæ\95° ã\81¨ã\81\97ã\81¦ã\83­ã\83¼ã\82«"
-"ã\83«å¤\89æ\95°ã\82\92使ã\81\86ã\81\93ã\81¨ã\81§ã\81\93ã\81®å\8b\95ä½\9cã\82\92é\9a è\94½ã\81\97ã\81¦ã\81\84ã\82\8bã\80\82 ã\81\93ã\81®ã\81\9fã\82\81ã\80\81glibc ã\81® B<pselect>()  "
-"関数は timeout 引き数を変更しない。 これが POSIX.1-2001 が要求している動作で"
-"ある。"
+"Linux の B<pselect6>() システムコールは I<timeout> 引き数を変更する。\n"
+"ã\81\97ã\81\8bã\81\97ã\80\81glibc ã\81®ã\83©ã\83\83ã\83\91ã\83¼é\96¢æ\95°ã\81¯ã\80\81ã\82·ã\82¹ã\83\86ã\83 ã\82³ã\83¼ã\83«ã\81«æ¸¡ã\81\99 timeout å¼\95ã\81\8dæ\95°ã\81¨\n"
+"ã\81\97ã\81¦ã\83­ã\83¼ã\82«ã\83«å¤\89æ\95°ã\82\92使ã\81\86ã\81\93ã\81¨ã\81§ã\81\93ã\81®å\8b\95ä½\9cã\82\92é\9a è\94½ã\81\97ã\81¦ã\81\84ã\82\8bã\80\82ã\81\93ã\81®ã\81\9fã\82\81ã\80\81glibc ã\81®\n"
+"B<pselect>() 関数は I<timeout> 引き数を変更しない。\n"
+"ã\81\93ã\82\8cã\81\8c POSIX.1-2001 ã\81\8cè¦\81æ±\82ã\81\97ã\81¦ã\81\84ã\82\8bå\8b\95ä½\9cã\81§ã\81\82ã\82\8bã\80\82"
 
 #. type: Plain text
-#: build/C/man2/select.2:431
+#: build/C/man2/select.2:477
+msgid ""
+"The final argument of the B<pselect6>()  system call is not a I<sigset_t\\ "
+"*> pointer, but is instead a structure of the form:"
+msgstr ""
+"B<pselect6>() システムコールの最後の引き数は I<sigset_t\\ *> 型の\n"
+"ポインターではなく、以下に示す構造体である。"
+
+#. type: Plain text
+#: build/C/man2/select.2:485
+#, no-wrap
+msgid ""
+"struct {\n"
+"    const sigset_t *ss;     /* Pointer to signal set */\n"
+"    size_t          ss_len; /* Size (in bytes) of object pointed\n"
+"                               to by 'ss' */\n"
+"};\n"
+msgstr ""
+"struct {\n"
+"    const sigset_t *ss;     /* シグナル集合へのポインター */\n"
+"    size_t          ss_len; /* 'ss' が指すオブジェクトのサイズ\n"
+"                               (バイト数) */\n"
+"};\n"
+
+#. type: Plain text
+#: build/C/man2/select.2:492
+msgid ""
+"This allows the system call to obtain both a pointer to the signal set and "
+"its size, while allowing for the fact that most architectures support a "
+"maximum of 6 arguments to a system call."
+msgstr ""
+"このようにすることで、ほとんどのアーキテクチャーがサポートしている\n"
+"システムコールの引き数が最大で 6 個という事実を満たしつつ、\n"
+"B<pselect6>() システムコールがシグナル集合へのポインターとシグナル集合\n"
+"のサイズの両方を取得することができるのである。"
+
+#. type: Plain text
+#: build/C/man2/select.2:498
 msgid ""
 "Glibc 2.0 provided a version of B<pselect>()  that did not take a I<sigmask> "
 "argument."
@@ -4174,13 +5147,13 @@ msgstr ""
 "されていた。"
 
 #. type: Plain text
-#: build/C/man2/select.2:444
+#: build/C/man2/select.2:511
 msgid ""
 "Starting with version 2.1, glibc provided an emulation of B<pselect>()  that "
 "was implemented using B<sigprocmask>(2)  and B<select>().  This "
-"implementation remained vulnerable to the very race condition that B<pselect>"
-"()  was designed to prevent.  Modern versions of glibc use the (race-free)  "
-"B<pselect>()  system call on kernels where it is provided."
+"implementation remained vulnerable to the very race condition that "
+"B<pselect>()  was designed to prevent.  Modern versions of glibc use the "
+"(race-free)  B<pselect>()  system call on kernels where it is provided."
 msgstr ""
 "バージョン 2.1 以降の glibc では、 B<pselect>()  は B<sigprocmask>(2)  と "
 "B<select>()  を使ってエミュレートされていた。 この実装にはきわどい競合条件に"
@@ -4190,23 +5163,28 @@ msgstr ""
 "が使用される。"
 
 #. type: Plain text
-#: build/C/man2/select.2:453
+#: build/C/man2/select.2:524
 msgid ""
 "On systems that lack B<pselect>(), reliable (and more portable) signal "
-"trapping can be achieved using the self-pipe trick (where a signal handler "
-"writes a byte to a pipe whose other end is monitored by B<select>()  in the "
-"main program.)"
-msgstr ""
-"B<pselect>()  がないシステムにおいて、 シグナルの捕捉を信頼性があり (移植性も"
-"高い) 方法で行うには、 自己パイプ (self-pipe) という技を使うとよい (シグナル"
-"ハンドラはパイプへ 1 バイトのデータを書き込み、同じパイプのもう一端をメインプ"
-"ログラムの B<select>()  で監視するという方法である)。"
+"trapping can be achieved using the self-pipe trick.  In this technique, a "
+"signal handler writes a byte to a pipe whose other end is monitored by "
+"B<select>()  in the main program.  (To avoid possibly blocking when writing "
+"to a pipe that may be full or reading from a pipe that may be empty, "
+"nonblocking I/O is used when reading from and writing to the pipe.)"
+msgstr ""
+"B<pselect>() がないシステムにおいて、シグナルの捕捉を信頼性があり (移植\n"
+"性も高い) 方法で行うには、 自己パイプ (self-pipe) という技を使うとよい。\n"
+"この方法では、シグナルハンドラーはパイプへ 1 バイトのデータを書き込み、\n"
+"同じパイプのもう一端をメインプログラムの B<select>() で監視する (一杯に\n"
+"なったパイプへの書き込みや空のパイプから読み出しを行った際に起こるであ\n"
+"ろう停止 (blocking) を避けるためには、パイプへの読み書きの際には 非停止\n"
+"(nonblocking) I/O を使用するとよい)。"
 
 #.  Stevens discusses a case where accept can block after select
 #.  returns successfully because of an intervening RST from the client.
 #.  Maybe the kernel should have returned EIO in such a situation?
 #. type: Plain text
-#: build/C/man2/select.2:469
+#: build/C/man2/select.2:540
 msgid ""
 "Under Linux, B<select>()  may report a socket file descriptor as \"ready for "
 "reading\", while nevertheless a subsequent read blocks.  This could for "
@@ -4215,15 +5193,15 @@ msgid ""
 "descriptor is spuriously reported as ready.  Thus it may be safer to use "
 "B<O_NONBLOCK> on sockets that should not block."
 msgstr ""
-"Linux ã\81§ã\81¯ã\80\81 B<select>()  ã\81\8cã\82½ã\82±ã\83\83ã\83\88ã\83\95ã\82¡ã\82¤ã\83«ã\83\87ã\82£ã\82¹ã\82¯ã\83ªã\83\97ã\82¿ã\81§ \"読ã\81¿è¾¼ã\81¿ã\81®æº\96å\82\99"
-"ができた\" と報告した場合でも、 この後で read を行うと停止 (block) することが"
-"ã\81\82ã\82\8bã\80\82ã\81\93ã\81®ã\82\88ã\81\86ã\81ªç\8a¶æ³\81ã\81¯ã\80\81 ä¾\8bã\81\88ã\81°ã\80\81ã\83\87ã\83¼ã\82¿ã\81\8cå\88°ç\9d\80ã\81\97ã\81\9fã\81\8cã\80\81æ¤\9cæ\9f»ã\81§ã\83\81ã\82§ã\83\83ã\82¯ã\82µã\83 ç\95°å¸¸ã\81\8c"
-"見つかり廃棄された時 などに起こりえる。他にもファイルディスクリプタが準備でき"
-"ã\81\9fã\81¨é\96\93é\81\95ã\81£ã\81¦ å ±å\91\8aã\81\95ã\82\8cã\82\8bç\8a¶æ³\81ã\81\8cèµ·ã\81\93ã\82\8bã\81\8bã\82\82ã\81\97ã\82\8cã\81ªã\81\84ã\80\82 ã\81\97ã\81\9fã\81\8cã\81£ã\81¦ã\80\81å\81\9cæ­¢ã\81\99ã\81¹ã\81\8dã\81§ã\81¯"
-"ないソケットに対しては B<O_NONBLOCK> を使うとより安全であろう。"
+"Linux ã\81§ã\81¯ã\80\81 B<select>()  ã\81\8cã\82½ã\82±ã\83\83ã\83\88ã\83\95ã\82¡ã\82¤ã\83«ã\83\87ã\82£ã\82¹ã\82¯ã\83ªã\83\97ã\82¿ã\83¼ã\81§ \"読ã\81¿è¾¼ã\81¿ã\81®æº\96"
+"備ができた\" と報告した場合でも、 この後で read を行うと停止 (block) すること"
+"ã\81\8cã\81\82ã\82\8bã\80\82ã\81\93ã\81®ã\82\88ã\81\86ã\81ªç\8a¶æ³\81ã\81¯ã\80\81 ä¾\8bã\81\88ã\81°ã\80\81ã\83\87ã\83¼ã\82¿ã\81\8cå\88°ç\9d\80ã\81\97ã\81\9fã\81\8cã\80\81æ¤\9cæ\9f»ã\81§ã\83\81ã\82§ã\83\83ã\82¯ã\82µã\83 ç\95°å¸¸"
+"が見つかり廃棄された時 などに起こりえる。他にもファイルディスクリプターが準備"
+"ã\81§ã\81\8dã\81\9fã\81¨é\96\93é\81\95ã\81£ã\81¦ å ±å\91\8aã\81\95ã\82\8cã\82\8bç\8a¶æ³\81ã\81\8cèµ·ã\81\93ã\82\8bã\81\8bã\82\82ã\81\97ã\82\8cã\81ªã\81\84ã\80\82 ã\81\97ã\81\9fã\81\8cã\81£ã\81¦ã\80\81å\81\9cæ­¢ã\81\99ã\81¹ã\81\8d"
+"ã\81§ã\81¯ã\81ªã\81\84ã\82½ã\82±ã\83\83ã\83\88ã\81«å¯¾ã\81\97ã\81¦ã\81¯ B<O_NONBLOCK> ã\82\92使ã\81\86ã\81¨ã\82\88ã\82\8aå®\89å\85¨ã\81§ã\81\82ã\82\8dã\81\86ã\80\82"
 
 #. type: Plain text
-#: build/C/man2/select.2:484
+#: build/C/man2/select.2:555
 msgid ""
 "On Linux, B<select>()  also modifies I<timeout> if the call is interrupted "
 "by a signal handler (i.e., the B<EINTR> error return).  This is not "
@@ -4232,7 +5210,7 @@ msgid ""
 "the I<timeout> to a local variable and passing that variable to the system "
 "call."
 msgstr ""
-"Linux では、 B<select>()  がシグナルハンドラにより割り込まれた場合 (つまり "
+"Linux ã\81§ã\81¯ã\80\81 B<select>()  ã\81\8cã\82·ã\82°ã\83\8aã\83«ã\83\8fã\83³ã\83\89ã\83©ã\83¼ã\81«ã\82\88ã\82\8aå\89²ã\82\8aè¾¼ã\81¾ã\82\8cã\81\9få ´å\90\88 (ã\81¤ã\81¾ã\82\8a "
 "B<EINTR> エラーが返る場合)、 I<timeout> も変更する。 これは POSIX.1-2001 では"
 "認められていない挙動である。 Linux の B<pselect>()  システムコールも同じ挙動"
 "をするが、 glibc のラッパー関数がこの挙動を隠蔽している。 具体的には、glibc "
@@ -4240,7 +5218,7 @@ msgstr ""
 "数をシステムコールに渡している。"
 
 #. type: Plain text
-#: build/C/man2/select.2:491
+#: build/C/man2/select.2:562
 #, no-wrap
 msgid ""
 "#include E<lt>stdio.hE<gt>\n"
@@ -4256,7 +5234,7 @@ msgstr ""
 "#include E<lt>unistd.hE<gt>\n"
 
 #. type: Plain text
-#: build/C/man2/select.2:498
+#: build/C/man2/select.2:569
 #, no-wrap
 msgid ""
 "int\n"
@@ -4274,7 +5252,7 @@ msgstr ""
 "    int retval;\n"
 
 #. type: Plain text
-#: build/C/man2/select.2:502
+#: build/C/man2/select.2:573
 #, no-wrap
 msgid ""
 "    /* Watch stdin (fd 0) to see when it has input. */\n"
@@ -4286,7 +5264,7 @@ msgstr ""
 "    FD_SET(0, &rfds);\n"
 
 #. type: Plain text
-#: build/C/man2/select.2:506
+#: build/C/man2/select.2:577
 #, no-wrap
 msgid ""
 "    /* Wait up to five seconds. */\n"
@@ -4298,7 +5276,7 @@ msgstr ""
 "    tv.tv_usec = 0;\n"
 
 #. type: Plain text
-#: build/C/man2/select.2:509
+#: build/C/man2/select.2:580
 #, no-wrap
 msgid ""
 "    retval = select(1, &rfds, NULL, NULL, &tv);\n"
@@ -4308,7 +5286,7 @@ msgstr ""
 "    /* この時点での tv の値を信頼してはならない。*/\n"
 
 #. type: Plain text
-#: build/C/man2/select.2:517
+#: build/C/man2/select.2:588
 #, no-wrap
 msgid ""
 "    if (retval == -1)\n"
@@ -4328,46 +5306,36 @@ msgstr ""
 "        printf(\"5 秒以内にデータが入力されませんでした。\\en\");\n"
 
 #. type: Plain text
-#: build/C/man2/select.2:520
-#, no-wrap
+#: build/C/man2/select.2:604
 msgid ""
-"    exit(EXIT_SUCCESS);\n"
-"}\n"
+"B<accept>(2), B<connect>(2), B<poll>(2), B<read>(2), B<recv>(2), "
+"B<restart_syscall>(2), B<send>(2), B<sigprocmask>(2), B<write>(2), "
+"B<epoll>(7), B<time>(7)"
 msgstr ""
-"    exit(EXIT_SUCCESS);\n"
-"}\n"
+"B<accept>(2), B<connect>(2), B<poll>(2), B<read>(2), B<recv>(2), "
+"B<restart_syscall>(2), B<send>(2), B<sigprocmask>(2), B<write>(2), "
+"B<epoll>(7), B<time>(7)"
 
 #. type: Plain text
-#: build/C/man2/select.2:524
+#: build/C/man2/select.2:607
 msgid "For a tutorial with discussion and examples, see B<select_tut>(2)."
 msgstr ""
 "考察と使用例の書かれたチュートリアルとして、 B<select_tut>(2)  がある。"
 
-#. type: Plain text
-#: build/C/man2/select.2:535
-msgid ""
-"For vaguely related stuff, see B<accept>(2), B<connect>(2), B<poll>(2), "
-"B<read>(2), B<recv>(2), B<send>(2), B<sigprocmask>(2), B<write>(2), B<epoll>"
-"(7), B<time>(7)"
-msgstr ""
-"関係がありそうなものを挙げておく: B<accept>(2), B<connect>(2), B<poll>(2), "
-"B<read>(2), B<recv>(2), B<send>(2), B<sigprocmask>(2), B<write>(2), B<epoll>"
-"(7), B<time>(7)"
-
 #. type: TH
-#: build/C/man2/select_tut.2:30
+#: build/C/man2/select_tut.2:32
 #, no-wrap
 msgid "SELECT_TUT"
 msgstr "SELECT_TUT"
 
 #. type: TH
-#: build/C/man2/select_tut.2:30
+#: build/C/man2/select_tut.2:32
 #, no-wrap
-msgid "2010-06-10"
-msgstr "2010-06-10"
+msgid "2013-12-30"
+msgstr "2013-12-30"
 
 #. type: Plain text
-#: build/C/man2/select_tut.2:50
+#: build/C/man2/select_tut.2:52
 #, no-wrap
 msgid ""
 "B<int select(int >I<nfds>B<, fd_set *>I<readfds>B<, fd_set *>I<writefds>B<,>\n"
@@ -4377,7 +5345,7 @@ msgstr ""
 "B<           fd_set *>I<exceptfds>B<, struct timeval *>I<utimeout>B<);>\n"
 
 #. type: Plain text
-#: build/C/man2/select_tut.2:64
+#: build/C/man2/select_tut.2:66
 #, no-wrap
 msgid ""
 "B<int pselect(int >I<nfds>B<, fd_set *>I<readfds>B<, fd_set *>I<writefds>B<,>\n"
@@ -4389,7 +5357,7 @@ msgstr ""
 "B<            const sigset_t *>I<sigmask>B<);>\n"
 
 #. type: Plain text
-#: build/C/man2/select_tut.2:81
+#: build/C/man2/select_tut.2:83
 msgid ""
 "B<select>()  (or B<pselect>())  is used to efficiently monitor multiple file "
 "descriptors, to see if any of them is, or becomes, \"ready\"; that is, to "
@@ -4397,13 +5365,13 @@ msgid ""
 "occurred on any of the descriptors."
 msgstr ""
 "B<select>()  (や B<pselect>())  を使うと、効率的に複数のファイルディスクリプ"
-"ã\82¿ã\82\92ç\9b£è¦\96ã\81\97ã\80\81 ã\81\9dã\81®ã\83\95ã\82¡ã\82¤ã\83«ã\83\87ã\82£ã\82¹ã\82¯ã\83ªã\83\97ã\82¿ã\81®ã\81\84ã\81\9aã\82\8cã\81\8bã\81\8c ã\80\8cready (æº\96å\82\99ã\81\8cã\81§ã\81\8dã\81\9f\80\8d"
-"状態、つまり I/O (入出力) が可能になっているかや、 ファイルディスクリプタのい"
-"ã\81\9aã\82\8cã\81\8bã\81\8c ã\80\8cä¾\8bå¤\96ç\8a¶æ\85\8b (exceptional condition)ã\80\8dã\81\8cç\99ºç\94\9fã\81\97ã\81\9fã\81\8bã\80\81ã\82\92調ã\81¹ã\82\8bã\81\93ã\81¨ã\81\8cã\81§ã\81\8d"
-"る。"
+"ã\82¿ã\83¼ã\82\92ç\9b£è¦\96ã\81\97ã\80\81 ã\81\9dã\81®ã\83\95ã\82¡ã\82¤ã\83«ã\83\87ã\82£ã\82¹ã\82¯ã\83ªã\83\97ã\82¿ã\83¼ã\81®ã\81\84ã\81\9aã\82\8cã\81\8bã\81\8c ã\80\8cready (æº\96å\82\99ã\81\8cã\81§ã\81\8d"
+"た)」状態、つまり I/O (入出力) が可能になっているかや、 ファイルディスクリプ"
+"ã\82¿ã\83¼ã\81®ã\81\84ã\81\9aã\82\8cã\81\8bã\81\8c ã\80\8cä¾\8bå¤\96ç\8a¶æ\85\8b (exceptional condition)ã\80\8dã\81\8cç\99ºç\94\9fã\81\97ã\81\9fã\81\8bã\80\81ã\82\92調ã\81¹ã\82\8bã\81\93"
+"ã\81¨ã\81\8cã\81§ã\81\8dã\82\8bã\80\82"
 
 #. type: Plain text
-#: build/C/man2/select_tut.2:106
+#: build/C/man2/select_tut.2:108
 msgid ""
 "Its principal arguments are three \"sets\" of file descriptors: I<readfds>, "
 "I<writefds>, and I<exceptfds>.  Each set is declared as type I<fd_set>, and "
@@ -4416,67 +5384,67 @@ msgid ""
 "present in a set and zero if it is not.  B<FD_CLR>()  removes a file "
 "descriptor from a set."
 msgstr ""
-"この関数の主要な引き数は、3種類のファイルディスクリプタの「集合」 "
+"ã\81\93ã\81®é\96¢æ\95°ã\81®ä¸»è¦\81ã\81ªå¼\95ã\81\8dæ\95°ã\81¯ã\80\813種é¡\9eã\81®ã\83\95ã\82¡ã\82¤ã\83«ã\83\87ã\82£ã\82¹ã\82¯ã\83ªã\83\97ã\82¿ã\83¼ã\81®ã\80\8cé\9b\86å\90\88ã\80\8d "
 "I<readfds>, I<writefds>, I<exceptfds> である。 各々の集合は B<fd_set> として"
 "宣言され、その内容は B<FD_CLR>(), B<FD_ISSET>(), B<FD_SET>(), B<FD_ZERO>()  "
 "といったマクロによって操作できる。 新しく宣言された集合は、まず最初に "
 "B<FD_ZERO>()  を使ってクリアすべきである。 B<select>()  はこれらの集合の内容"
 "を、以降に述べる規則に従って修正する。 B<select>()  を呼んだ後、ファイルディ"
-"ã\82¹ã\82¯ã\83ªã\83\97ã\82¿ã\81\8cã\81¾ã\81 é\9b\86å\90\88ã\81«å­\98å\9c¨ã\81\97ã\81¦ã\81\84ã\82\8bã\81\8bã\81©ã\81\86ã\81\8bã\81¯ã\80\81 B<FD_ISSET>()  ã\83\9eã\82¯ã\83­ã\81«ã\82\88ã\81£ã\81¦"
-"調べることができる。 B<FD_ISSET>()  は指定されたディスクリプタが集合に存在し"
-"ていれば 0 以外の値を返し、 存在しなければ 0 を返す。 B<FD_CLR>()  は集合から"
-"ã\81®ã\83\95ã\82¡ã\82¤ã\83«ã\83\87ã\82£ã\82¹ã\82¯ã\83ªã\83\97ã\82¿の削除を行う。"
+"ã\82¹ã\82¯ã\83ªã\83\97ã\82¿ã\83¼ã\81\8cã\81¾ã\81 é\9b\86å\90\88ã\81«å­\98å\9c¨ã\81\97ã\81¦ã\81\84ã\82\8bã\81\8bã\81©ã\81\86ã\81\8bã\81¯ã\80\81 B<FD_ISSET>()  ã\83\9eã\82¯ã\83­ã\81«ã\82\88ã\81£"
+"て調べることができる。 B<FD_ISSET>()  は指定されたディスクリプターが集合に存"
+"在していれば 0 以外の値を返し、 存在しなければ 0 を返す。 B<FD_CLR>()  は集合"
+"ã\81\8bã\82\89ã\81®ã\83\95ã\82¡ã\82¤ã\83«ã\83\87ã\82£ã\82¹ã\82¯ã\83ªã\83\97ã\82¿ã\83¼の削除を行う。"
 
 #. type: SS
-#: build/C/man2/select_tut.2:106
+#: build/C/man2/select_tut.2:108
 #, no-wrap
 msgid "Arguments"
 msgstr "引き数"
 
 #. type: TP
-#: build/C/man2/select_tut.2:107
+#: build/C/man2/select_tut.2:109
 #, no-wrap
 msgid "I<readfds>"
 msgstr "I<readfds>"
 
 #. type: Plain text
-#: build/C/man2/select_tut.2:116
+#: build/C/man2/select_tut.2:118
 msgid ""
 "This set is watched to see if data is available for reading from any of its "
 "file descriptors.  After B<select>()  has returned, I<readfds> will be "
 "cleared of all file descriptors except for those that are immediately "
 "available for reading."
 msgstr ""
-"ã\81\93ã\81®é\9b\86å\90\88ã\81«å\90«ã\81¾ã\82\8cã\82\8bã\81\84ã\81\9aã\82\8cã\81\8bã\81®ã\83\95ã\82¡ã\82¤ã\83«ã\83\87ã\82£ã\82¹ã\82¯ã\83ªã\83\97ã\82¿ã\81§ã\80\81 ã\83\87ã\83¼ã\82¿ã\81®èª­ã\81¿è¾¼ã\81¿ã\81\8cå\8f¯è\83½"
-"になったかどうかを監視する。 B<select>()  から戻る時に、I<readfds> のうち、 "
-"直ちに読み込み可能なファイルディスクリプタ以外は 集合から削除される。"
+"ã\81\93ã\81®é\9b\86å\90\88ã\81«å\90«ã\81¾ã\82\8cã\82\8bã\81\84ã\81\9aã\82\8cã\81\8bã\81®ã\83\95ã\82¡ã\82¤ã\83«ã\83\87ã\82£ã\82¹ã\82¯ã\83ªã\83\97ã\82¿ã\83¼ã\81§ã\80\81 ã\83\87ã\83¼ã\82¿ã\81®èª­ã\81¿è¾¼ã\81¿ã\81\8cå\8f¯"
+"能になったかどうかを監視する。 B<select>()  から戻る時に、I<readfds> のう"
+"ち、 直ちに読み込み可能なファイルディスクリプター以外は 集合から削除される。"
 
 #. type: TP
-#: build/C/man2/select_tut.2:116
+#: build/C/man2/select_tut.2:118
 #, no-wrap
 msgid "I<writefds>"
 msgstr "I<writefds>"
 
 #. type: Plain text
-#: build/C/man2/select_tut.2:125
+#: build/C/man2/select_tut.2:127
 msgid ""
 "This set is watched to see if there is space to write data to any of its "
 "file descriptors.  After B<select>()  has returned, I<writefds> will be "
 "cleared of all file descriptors except for those that are immediately "
 "available for writing."
 msgstr ""
-"ã\81\93ã\81®é\9b\86å\90\88ã\81«å\90«ã\81¾ã\82\8cã\82\8bã\81\84ã\81\9aã\82\8cã\81\8bã\81®ã\83\95ã\82¡ã\82¤ã\83«ã\83\87ã\82£ã\82¹ã\82¯ã\83ªã\83\97ã\82¿ã\81§ã\80\81 ã\83\87ã\83¼ã\82¿ã\82\92æ\9b¸ã\81\8dè¾¼ã\82\80ã\82¹ã\83\9aã\83¼"
-"ã\82¹ã\81\8cã\81\82ã\82\8bã\81\8bã\81©ã\81\86ã\81\8bã\82\92ç\9b£è¦\96ã\81\99ã\82\8bã\80\82 B<select>()  ã\81\8bã\82\89æ\88»ã\82\8bæ\99\82ã\81«ã\80\81I<writefds> ã\81®ã\81\86ã\81¡ã\80\81 "
-"直ちに書き込み可能なファイルディスクリプタ以外は 集合から削除される。"
+"ã\81\93ã\81®é\9b\86å\90\88ã\81«å\90«ã\81¾ã\82\8cã\82\8bã\81\84ã\81\9aã\82\8cã\81\8bã\81®ã\83\95ã\82¡ã\82¤ã\83«ã\83\87ã\82£ã\82¹ã\82¯ã\83ªã\83\97ã\82¿ã\83¼ã\81§ã\80\81 ã\83\87ã\83¼ã\82¿ã\82\92æ\9b¸ã\81\8dè¾¼ã\82\80ã\82¹"
+"ã\83\9aã\83¼ã\82¹ã\81\8cã\81\82ã\82\8bã\81\8bã\81©ã\81\86ã\81\8bã\82\92ç\9b£è¦\96ã\81\99ã\82\8bã\80\82 B<select>()  ã\81\8bã\82\89æ\88»ã\82\8bæ\99\82ã\81«ã\80\81I<writefds> ã\81®ã\81\86"
+"ち、 直ちに書き込み可能なファイルディスクリプター以外は 集合から削除される。"
 
 #. type: TP
-#: build/C/man2/select_tut.2:125
+#: build/C/man2/select_tut.2:127
 #, no-wrap
 msgid "I<exceptfds>"
 msgstr "I<exceptfds>"
 
 #. type: Plain text
-#: build/C/man2/select_tut.2:147
+#: build/C/man2/select_tut.2:149
 msgid ""
 "This set is watched for \"exceptional conditions\".  In practice, only one "
 "such exceptional condition is common: the availability of I<out-of-band> "
@@ -4487,42 +5455,42 @@ msgid ""
 "has returned, I<exceptfds> will be cleared of all file descriptors except "
 "for those for which an exceptional condition has occurred."
 msgstr ""
-"この集合に含まれるいずれかのファイルディスクリプタで、 「例外状態 "
+"ã\81\93ã\81®é\9b\86å\90\88ã\81«å\90«ã\81¾ã\82\8cã\82\8bã\81\84ã\81\9aã\82\8cã\81\8bã\81®ã\83\95ã\82¡ã\82¤ã\83«ã\83\87ã\82£ã\82¹ã\82¯ã\83ªã\83\97ã\82¿ã\83¼ã\81§ã\80\81 ã\80\8cä¾\8bå¤\96ç\8a¶æ\85\8b "
 "(exceptional condition)」が発生したかどうかを監視する。 実際の動作では、普通"
 "に起こり得る例外状態は一つだけであり、 それは TCP ソケットで I<帯域外 (out-"
 "of-band; OOB)> データが 読み込み可能な場合である。 OOB データの詳細について"
 "は、 B<recv>(2), B<send>(2), B<tcp>(7)  を参照のこと。 (これ以外では、まれな"
 "ことだが、 パケットモードの擬似端末 (pseudoterminals) で B<select>()  が例外"
 "状態を示すことがある。)  B<select>()  が返る時に、I<exceptfds> のうち、 例外"
-"状態が発生したディスクリプタ以外は集合から削除される。"
+"状態が発生したディスクリプタ以外は集合から削除される。"
 
 #. type: TP
-#: build/C/man2/select_tut.2:147
+#: build/C/man2/select_tut.2:149
 #, no-wrap
 msgid "I<nfds>"
 msgstr "I<nfds>"
 
 #. type: Plain text
-#: build/C/man2/select_tut.2:154
+#: build/C/man2/select_tut.2:156
 msgid ""
 "This is an integer one more than the maximum of any file descriptor in any "
 "of the sets.  In other words, while adding file descriptors to each of the "
 "sets, you must calculate the maximum integer value of all of them, then "
 "increment this value by one, and then pass this as I<nfds>."
 msgstr ""
-"å\85¨ã\81¦ã\81®é\9b\86å\90\88ã\81«å\90«ã\81¾ã\82\8cã\82\8bã\83\95ã\82¡ã\82¤ã\83«ã\83\87ã\82£ã\82¹ã\82¯ã\83ªã\83\97ã\82¿ã\81®ã\81\86ã\81¡ã\80\81 å\80¤ã\81\8cæ\9c\80大ã\81®ã\82\82ã\81®ã\81« 1 ã\82\92足ã\81\97"
-"ã\81\9fæ\95´æ\95°ã\81§ã\81\82ã\82\8bã\80\82 ã\81\99ã\81ªã\82\8fã\81¡ã\80\81ã\83\95ã\82¡ã\82¤ã\83«ã\83\87ã\82£ã\82¹ã\82¯ã\83ªã\83\97ã\82¿を各集合に加える作業の途中"
-"で、 全てのファイルディスクリプタを見て最大値を求め、 それに 1 を加えて "
+"å\85¨ã\81¦ã\81®é\9b\86å\90\88ã\81«å\90«ã\81¾ã\82\8cã\82\8bã\83\95ã\82¡ã\82¤ã\83«ã\83\87ã\82£ã\82¹ã\82¯ã\83ªã\83\97ã\82¿ã\83¼ã\81®ã\81\86ã\81¡ã\80\81 å\80¤ã\81\8cæ\9c\80大ã\81®ã\82\82ã\81®ã\81« 1 ã\82\92足"
+"ã\81\97ã\81\9fæ\95´æ\95°ã\81§ã\81\82ã\82\8bã\80\82 ã\81\99ã\81ªã\82\8fã\81¡ã\80\81ã\83\95ã\82¡ã\82¤ã\83«ã\83\87ã\82£ã\82¹ã\82¯ã\83ªã\83\97ã\82¿ã\83¼を各集合に加える作業の途中"
+"ã\81§ã\80\81 å\85¨ã\81¦ã\81®ã\83\95ã\82¡ã\82¤ã\83«ã\83\87ã\82£ã\82¹ã\82¯ã\83ªã\83\97ã\82¿ã\83¼ã\82\92è¦\8bã\81¦æ\9c\80大å\80¤ã\82\92æ±\82ã\82\81ã\80\81 ã\81\9dã\82\8cã\81« 1 ã\82\92å\8a ã\81\88ã\81¦ "
 "I<nfds> として渡さないといけない、ということだ。"
 
 #. type: TP
-#: build/C/man2/select_tut.2:154
+#: build/C/man2/select_tut.2:156
 #, no-wrap
 msgid "I<utimeout>"
 msgstr "I<utimeout>"
 
 #. type: Plain text
-#: build/C/man2/select_tut.2:167
+#: build/C/man2/select_tut.2:169
 msgid ""
 "This is the longest time B<select>()  may wait before returning, even if "
 "nothing interesting happened.  If this value is passed as NULL, then "
@@ -4532,14 +5500,14 @@ msgid ""
 "at the time of the call.  The structure I<struct timeval> is defined as:"
 msgstr ""
 "(何も起こらなかった場合に)  B<select>()  が戻る前に待つ最大時間である。 この"
-"å\80¤ã\81« NULL ã\82\92渡ã\81\99ã\81¨ã\80\81 B<select>()  ã\81¯ã\83\95ã\82¡ã\82¤ã\83«ã\83\87ã\82£ã\82¹ã\82¯ã\83ªã\83\97ã\82¿ã\81®ã\81\84ã\81\9aã\82\8cã\81\8bã\81\8c ready "
-"(準備ができた) 状態に なるまで待ち続けてずっと停止する。 I<utimeout> は 0 秒"
-"ã\81«ã\81\99ã\82\8bã\81\93ã\81¨ã\82\82ã\81§ã\81\8dã\80\81 ã\81\93ã\81®å ´å\90\88 B<select>()  ã\81¯ç\9b´ã\81¡ã\81«è¿\94ã\82\8aã\80\81å\91¼ã\81³å\87ºã\81\97æ\99\82ç\82¹ã\81®ã\83\95ã\82¡ã\82¤ã\83«"
-"ã\83\87ã\82£ã\82¹ã\82¯ã\83ªã\83\97ã\82¿ã\81®ç\8a¶æ\85\8bã\81« é\96¢ã\81\99ã\82\8bæ\83\85å ±ã\81\8cè¿\94ã\81\95ã\82\8cã\82\8bã\80\82 æ§\8bé\80 ä½\93 I<struct timeval> ã\81¯æ¬¡ã\81®"
-"ように定義されている:"
+"å\80¤ã\81« NULL ã\82\92渡ã\81\99ã\81¨ã\80\81 B<select>()  ã\81¯ã\83\95ã\82¡ã\82¤ã\83«ã\83\87ã\82£ã\82¹ã\82¯ã\83ªã\83\97ã\82¿ã\83¼ã\81®ã\81\84ã\81\9aã\82\8cã\81\8bã\81\8c "
+"ready (準備ができた) 状態に なるまで待ち続けてずっと停止する。 I<utimeout> "
+"ã\81¯ 0 ç§\92ã\81«ã\81\99ã\82\8bã\81\93ã\81¨ã\82\82ã\81§ã\81\8dã\80\81 ã\81\93ã\81®å ´å\90\88 B<select>()  ã\81¯ç\9b´ã\81¡ã\81«è¿\94ã\82\8aã\80\81å\91¼ã\81³å\87ºã\81\97æ\99\82ç\82¹ã\81®"
+"ã\83\95ã\82¡ã\82¤ã\83«ã\83\87ã\82£ã\82¹ã\82¯ã\83ªã\83\97ã\82¿ã\83¼ã\81®ç\8a¶æ\85\8bã\81« é\96¢ã\81\99ã\82\8bæ\83\85å ±ã\81\8cè¿\94ã\81\95ã\82\8cã\82\8bã\80\82 æ§\8bé\80 ä½\93 I<struct "
+"timeval> は次のように定義されている:"
 
 #. type: Plain text
-#: build/C/man2/select_tut.2:174
+#: build/C/man2/select_tut.2:176
 #, no-wrap
 msgid ""
 "struct timeval {\n"
@@ -4553,13 +5521,13 @@ msgstr ""
 "};\n"
 
 #. type: TP
-#: build/C/man2/select_tut.2:176
+#: build/C/man2/select_tut.2:178
 #, no-wrap
 msgid "I<ntimeout>"
 msgstr "I<ntimeout>"
 
 #. type: Plain text
-#: build/C/man2/select_tut.2:185
+#: build/C/man2/select_tut.2:187
 msgid ""
 "This argument for B<pselect>()  has the same meaning as I<utimeout>, but "
 "I<struct timespec> has nanosecond precision as follows:"
@@ -4568,7 +5536,7 @@ msgstr ""
 "timespec> は次に示すようにナノ秒の精度を持つ。"
 
 #. type: Plain text
-#: build/C/man2/select_tut.2:192
+#: build/C/man2/select_tut.2:194
 #, no-wrap
 msgid ""
 "struct timespec {\n"
@@ -4582,36 +5550,36 @@ msgstr ""
 "};\n"
 
 #. type: TP
-#: build/C/man2/select_tut.2:194
+#: build/C/man2/select_tut.2:196
 #, no-wrap
 msgid "I<sigmask>"
 msgstr "I<sigmask>"
 
 #. type: Plain text
-#: build/C/man2/select_tut.2:211
+#: build/C/man2/select_tut.2:213
 msgid ""
 "This argument holds a set of signals that the kernel should unblock (i.e., "
 "remove from the signal mask of the calling thread), while the caller is "
 "blocked inside the B<pselect>()  call (see B<sigaddset>(3)  and "
 "B<sigprocmask>(2)).  It may be NULL, in which case the call does not modify "
-"the signal mask on entry and exit to the function.  In this case, B<pselect>"
-"()  will then behave just like B<select>()."
+"the signal mask on entry and exit to the function.  In this case, "
+"B<pselect>()  will then behave just like B<select>()."
 msgstr ""
 "この引き数は、呼び出し側が B<pselect>()  内部で停止している間に、カーネルが通"
 "知を許可すべきシグナル集合 (すなわち、呼び出したスレッドのシグナルマスクから"
 "削除すべきシグナル集合)  を保持する (B<sigaddset>(3)  と B<sigprocmask>(2)  "
 "を参照)。 この引き数は NULL にすることもでき、その場合はこの関数へ 入るとき・"
-"出るときにシグナルマスクを変更しない。 この場合、 B<pselect>()  は B<select>"
-"()  と全く同じ動作となる。"
+"出るときにシグナルマスクを変更しない。 この場合、 B<pselect>()  は "
+"B<select>()  と全く同じ動作となる。"
 
 #. type: SS
-#: build/C/man2/select_tut.2:211
+#: build/C/man2/select_tut.2:213
 #, no-wrap
-msgid "Combining Signal and Data Events"
+msgid "Combining signal and data events"
 msgstr "シグナルとデータイベントを組み合わせる"
 
 #. type: Plain text
-#: build/C/man2/select_tut.2:255
+#: build/C/man2/select_tut.2:257
 msgid ""
 "B<pselect>()  is useful if you are waiting for a signal as well as for file "
 "descriptor(s) to become ready for I/O.  Programs that receive signals "
@@ -4619,9 +5587,9 @@ msgid ""
 "flag will indicate that the event must be processed in the main loop of the "
 "program.  A signal will cause the B<select>()  (or B<pselect>())  call to "
 "return with I<errno> set to B<EINTR>.  This behavior is essential so that "
-"signals can be processed in the main loop of the program, otherwise B<select>"
-"()  would block indefinitely.  Now, somewhere in the main loop will be a "
-"conditional to check the global flag.  So we must ask: what if a signal "
+"signals can be processed in the main loop of the program, otherwise "
+"B<select>()  would block indefinitely.  Now, somewhere in the main loop will "
+"be a conditional to check the global flag.  So we must ask: what if a signal "
 "arrives after the conditional, but before the B<select>()  call? The answer "
 "is that B<select>()  would block indefinitely, even though an event is "
 "actually pending.  This race condition is solved by the B<pselect>()  call.  "
@@ -4632,11 +5600,11 @@ msgid ""
 "Our B<pselect>()  call would enable B<SIGCHLD> by using an empty signal "
 "mask.  Our program would look like:"
 msgstr ""
-"ã\83\95ã\82¡ã\82¤ã\83«ã\83\87ã\82£ã\82¹ã\82¯ã\83ªã\83\97ã\82¿ã\81\8c I/O å\8f¯è\83½ã\81ªç\8a¶æ\85\8bã\81«ã\81ªã\82\8bã\81®ã\81¨å\90\8cæ\99\82ã\81« ã\82·ã\82°ã\83\8aã\83«ã\82\82å¾\85ã\81¡ã\81\9fã\81\84å ´"
-"合には、 B<pselect>()  が便利である。 シグナルを受信するプログラムは、通常"
-"ã\81¯ã\80\81 ã\82·ã\82°ã\83\8aã\83«ã\83\8fã\83³ã\83\89ã\83©ã\82\92ã\82°ã\83­ã\83¼ã\83\90ã\83«ã\81ªã\83\95ã\83©ã\82°ã\82\92ç«\8bã\81¦ã\82\8bã\81\9fã\82\81ã\81 ã\81\91ã\81«ä½¿ã\81\86ã\80\82 ã\81\93ã\81®ã\82°ã\83­ã\83¼"
-"ã\83\90ã\83«ã\81ªã\83\95ã\83©ã\82°ã\81¯ã\80\81 ã\81\9dã\81®ã\82¤ã\83\99ã\83³ã\83\88ã\82\92ã\83\97ã\83­ã\82°ã\83©ã\83 ã\81®ã\83¡ã\82¤ã\83³ã\83«ã\83¼ã\83\97ã\81§ å\87¦ç\90\86ã\81\97ã\81ªã\81\91ã\82\8cã\81°ã\81ªã\82\89"
-"ないことを示す。 シグナルを受けると B<select>()  (や B<pselect>())  は "
+"ã\83\95ã\82¡ã\82¤ã\83«ã\83\87ã\82£ã\82¹ã\82¯ã\83ªã\83\97ã\82¿ã\83¼ã\81\8c I/O å\8f¯è\83½ã\81ªç\8a¶æ\85\8bã\81«ã\81ªã\82\8bã\81®ã\81¨å\90\8cæ\99\82ã\81« ã\82·ã\82°ã\83\8aã\83«ã\82\82å¾\85ã\81¡ã\81\9fã\81\84"
+"å ´å\90\88ã\81«ã\81¯ã\80\81 B<pselect>()  ã\81\8c便å\88©ã\81§ã\81\82ã\82\8bã\80\82 ã\82·ã\82°ã\83\8aã\83«ã\82\92å\8f\97ä¿¡ã\81\99ã\82\8bã\83\97ã\83­ã\82°ã\83©ã\83 ã\81¯ã\80\81é\80\9a常"
+"ã\81¯ã\80\81 ã\82·ã\82°ã\83\8aã\83«ã\83\8fã\83³ã\83\89ã\83©ã\83¼ã\82\92ã\82°ã\83­ã\83¼ã\83\90ã\83«ã\81ªã\83\95ã\83©ã\82°ã\82\92ç«\8bã\81¦ã\82\8bã\81\9fã\82\81ã\81 ã\81\91ã\81«ä½¿ã\81\86ã\80\82 ã\81\93ã\81®ã\82°"
+"ã\83­ã\83¼ã\83\90ã\83«ã\81ªã\83\95ã\83©ã\82°ã\81¯ã\80\81 ã\81\9dã\81®ã\82¤ã\83\99ã\83³ã\83\88ã\82\92ã\83\97ã\83­ã\82°ã\83©ã\83 ã\81®ã\83¡ã\82¤ã\83³ã\83«ã\83¼ã\83\97ã\81§ å\87¦ç\90\86ã\81\97ã\81ªã\81\91ã\82\8cã\81°"
+"ã\81ªã\82\89ã\81ªã\81\84ã\81\93ã\81¨ã\82\92示ã\81\99ã\80\82 ã\82·ã\82°ã\83\8aã\83«ã\82\92å\8f\97ã\81\91ã\82\8bã\81¨ B<select>()  (ã\82\84 B<pselect>())  ã\81¯ "
 "I<errno> に B<EINTR> をセットして戻ることになる。 シグナルがプログラムのメイ"
 "ンループで処理されるためにはこの動作が不可欠で、 これがないと B<select>()  は"
 "永遠に停止し続けることになる。 さて、メインループのどこかにこのグローバルフラ"
@@ -4652,13 +5620,13 @@ msgstr ""
 "る。"
 
 #. type: Plain text
-#: build/C/man2/select_tut.2:258
+#: build/C/man2/select_tut.2:260
 #, no-wrap
 msgid "static volatile sig_atomic_t got_SIGCHLD = 0;\n"
 msgstr "static volatile sig_atomic_t got_SIGCHLD = 0;\n"
 
 #. type: Plain text
-#: build/C/man2/select_tut.2:264
+#: build/C/man2/select_tut.2:266
 #, no-wrap
 msgid ""
 "static void\n"
@@ -4674,7 +5642,7 @@ msgstr ""
 "}\n"
 
 #. type: Plain text
-#: build/C/man2/select_tut.2:272
+#: build/C/man2/select_tut.2:274
 #, no-wrap
 msgid ""
 "int\n"
@@ -4694,7 +5662,7 @@ msgstr ""
 "    int r;\n"
 
 #. type: Plain text
-#: build/C/man2/select_tut.2:279
+#: build/C/man2/select_tut.2:281
 #, no-wrap
 msgid ""
 "    sigemptyset(&sigmask);\n"
@@ -4712,7 +5680,7 @@ msgstr ""
 "    }\n"
 
 #. type: Plain text
-#: build/C/man2/select_tut.2:287
+#: build/C/man2/select_tut.2:289
 #, no-wrap
 msgid ""
 "    sa.sa_flags = 0;\n"
@@ -4732,13 +5700,13 @@ msgstr ""
 "    }\n"
 
 #. type: Plain text
-#: build/C/man2/select_tut.2:289
+#: build/C/man2/select_tut.2:291
 #, no-wrap
 msgid "    sigemptyset(&empty_mask);\n"
 msgstr "    sigemptyset(&empty_mask);\n"
 
 #. type: Plain text
-#: build/C/man2/select_tut.2:293
+#: build/C/man2/select_tut.2:295
 #, no-wrap
 msgid ""
 "    for (;;) {          /* main loop */\n"
@@ -4750,7 +5718,7 @@ msgstr ""
 "           before the pselect() call. (Code omitted.) */\n"
 
 #. type: Plain text
-#: build/C/man2/select_tut.2:299
+#: build/C/man2/select_tut.2:301
 #, no-wrap
 msgid ""
 "        r = pselect(nfds, &readfds, &writefds, &exceptfds,\n"
@@ -4766,7 +5734,7 @@ msgstr ""
 "        }\n"
 
 #. type: Plain text
-#: build/C/man2/select_tut.2:302
+#: build/C/man2/select_tut.2:304
 #, no-wrap
 msgid ""
 "        if (got_SIGCHLD) {\n"
@@ -4776,7 +5744,7 @@ msgstr ""
 "            got_SIGCHLD = 0;\n"
 
 #. type: Plain text
-#: build/C/man2/select_tut.2:306
+#: build/C/man2/select_tut.2:308
 #, no-wrap
 msgid ""
 "            /* Handle signalled event here; e.g., wait() for all\n"
@@ -4788,7 +5756,7 @@ msgstr ""
 "        }\n"
 
 #. type: Plain text
-#: build/C/man2/select_tut.2:310
+#: build/C/man2/select_tut.2:312
 #, no-wrap
 msgid ""
 "        /* main body of program */\n"
@@ -4800,13 +5768,13 @@ msgstr ""
 "}\n"
 
 #. type: SS
-#: build/C/man2/select_tut.2:311
+#: build/C/man2/select_tut.2:313
 #, no-wrap
 msgid "Practical"
 msgstr "実例"
 
 #. type: Plain text
-#: build/C/man2/select_tut.2:332
+#: build/C/man2/select_tut.2:334
 msgid ""
 "So what is the point of B<select>()? Can't I just read and write to my "
 "descriptors whenever I want? The point of B<select>()  is that it watches "
@@ -4819,24 +5787,25 @@ msgid ""
 "another file descriptor is unused though ready for I/O.  B<select>()  "
 "efficiently copes with this situation."
 msgstr ""
-"実際のところ B<select>()  の大事な点は何なのか? ディスクリプタは好きなときに"
-"読み書きできるんじゃないの? B<select>()  の重要なところは、複数のディスクリ"
-"プタを同時に監視でき、 なんの動きもなければプロセスを適切にスリープ状態に移行"
-"するところにあるのだ。 UNIX プログラマは、 複数のファイルディスクリプタの入出"
-"力を同時に扱わねばならず、 しかもデータの流れは間欠的である、という状況によく"
-"出会う。 単に B<read>(2)  や B<write>(2)  コールのシーケンスを作るだけでは、"
-"それらのコールのどれかが ファイルディスクリプタからのデータを待ってブロックし"
-"ており、 別のファイルディスクリプタには I/O が可能なのに使えない、 ということ"
-"になってしまうだろう。 B<select>()  を使うとこの状況に効果的に対処できる。"
+"実際のところ B<select>()  の大事な点は何なのか? ディスクリプターは好きなとき"
+"に読み書きできるんじゃないの? B<select>()  の重要なところは、複数のディスク"
+"リプターを同時に監視でき、 なんの動きもなければプロセスを適切にスリープ状態に"
+"移行するところにあるのだ。 UNIX プログラマは、 複数のファイルディスクリプター"
+"の入出力を同時に扱わねばならず、 しかもデータの流れは間欠的である、という状況"
+"によく出会う。 単に B<read>(2)  や B<write>(2)  コールのシーケンスを作るだけ"
+"では、それらのコールのどれかが ファイルディスクリプターからのデータを待ってブ"
+"ロックしており、 別のファイルディスクリプターには I/O が可能なのに使えない、 "
+"ということになってしまうだろう。 B<select>()  を使うとこの状況に効果的に対処"
+"できる。"
 
 #. type: SS
-#: build/C/man2/select_tut.2:332
+#: build/C/man2/select_tut.2:334
 #, no-wrap
-msgid "Select Law"
+msgid "Select law"
 msgstr "SELECT の掟"
 
 #. type: Plain text
-#: build/C/man2/select_tut.2:345
+#: build/C/man2/select_tut.2:347
 msgid ""
 "Many people who try to use B<select>()  come across behavior that is "
 "difficult to understand and produces nonportable or borderline results.  For "
@@ -4848,14 +5817,14 @@ msgid ""
 msgstr ""
 "B<select>()  を使おうとした多くの人は、理解しにくい挙動に出くわし、結果的に "
 "できたものは移植性がないか、よくてもギリギリのものになってしまう。 例えば、上"
-"記のプログラムは、 集合に含まれるファイルディスクリプタを非停止 "
+"è¨\98ã\81®ã\83\97ã\83­ã\82°ã\83©ã\83 ã\81¯ã\80\81 é\9b\86å\90\88ã\81«å\90«ã\81¾ã\82\8cã\82\8bã\83\95ã\82¡ã\82¤ã\83«ã\83\87ã\82£ã\82¹ã\82¯ã\83ªã\83\97ã\82¿ã\83¼ã\82\92é\9d\9eå\81\9cæ­¢ "
 "(nonblocking) モード にしなくても、どこにもブロックが生じないよう注意して書か"
 "れている。 微妙な間違いによって、 B<select>()  を使う利点は簡単に失われてしま"
 "う。 そこで、 B<select>()  コールを使うときに注意すべき重要事項を列挙しておく"
 "ことにする。"
 
 #. type: Plain text
-#: build/C/man2/select_tut.2:354
+#: build/C/man2/select_tut.2:356
 msgid ""
 "You should always try to use B<select>()  without a timeout.  Your program "
 "should have nothing to do if there is no data available.  Code that depends "
@@ -4866,7 +5835,7 @@ msgstr ""
 "ウトに依存したコードは通常移植性がなく、 デバッグも難しくなる。"
 
 #. type: Plain text
-#: build/C/man2/select_tut.2:358
+#: build/C/man2/select_tut.2:360
 msgid ""
 "The value I<nfds> must be properly calculated for efficiency as explained "
 "above."
@@ -4875,38 +5844,39 @@ msgstr ""
 "えなければならない。"
 
 #. type: Plain text
-#: build/C/man2/select_tut.2:365
+#: build/C/man2/select_tut.2:367
 msgid ""
 "No file descriptor must be added to any set if you do not intend to check "
 "its result after the B<select>()  call, and respond appropriately.  See next "
 "rule."
 msgstr ""
 "B<select>()  コールの終了後に結果をチェックして、 適切に対応するつもりのない"
-"ファイルディスクリプタは、 どの集合にも加えてはならない。 次のルールも参照。"
+"ファイルディスクリプターは、 どの集合にも加えてはならない。 次のルールも参"
+"照。"
 
 #. type: Plain text
-#: build/C/man2/select_tut.2:371
+#: build/C/man2/select_tut.2:373
 msgid ""
 "After B<select>()  returns, all file descriptors in all sets should be "
 "checked to see if they are ready."
 msgstr ""
-"B<select>()  ã\81\8bã\82\89è¿\94ã\81£ã\81\9få¾\8cã\81«ã\81¯ã\80\81å\85¨ã\81¦ã\81®é\9b\86å\90\88ã\81®å\85¨ã\81¦ã\81®ã\83\95ã\82¡ã\82¤ã\83«ã\83\87ã\82£ã\82¹ã\82¯ã\83ªã\83\97ã\82¿ã\81«ã\81¤ã\81\84"
-"て 読み書き可能な状態になっているかをチェックすべきである。"
+"B<select>()  ã\81\8bã\82\89è¿\94ã\81£ã\81\9få¾\8cã\81«ã\81¯ã\80\81å\85¨ã\81¦ã\81®é\9b\86å\90\88ã\81®å\85¨ã\81¦ã\81®ã\83\95ã\82¡ã\82¤ã\83«ã\83\87ã\82£ã\82¹ã\82¯ã\83ªã\83\97ã\82¿ã\83¼ã\81«ã\81¤"
+"ã\81\84ã\81¦ èª­ã\81¿æ\9b¸ã\81\8då\8f¯è\83½ã\81ªç\8a¶æ\85\8bã\81«ã\81ªã\81£ã\81¦ã\81\84ã\82\8bã\81\8bã\82\92ã\83\81ã\82§ã\83\83ã\82¯ã\81\99ã\81¹ã\81\8dã\81§ã\81\82ã\82\8bã\80\82"
 
 #. type: TP
-#: build/C/man2/select_tut.2:371
+#: build/C/man2/select_tut.2:373
 #, no-wrap
 msgid "5."
 msgstr "5."
 
 #. type: Plain text
-#: build/C/man2/select_tut.2:386
+#: build/C/man2/select_tut.2:388
 msgid ""
 "The functions B<read>(2), B<recv>(2), B<write>(2), and B<send>(2)  do I<not> "
 "necessarily read/write the full amount of data that you have requested.  If "
 "they do read/write the full amount, it's because you have a low traffic load "
 "and a fast stream.  This is not always going to be the case.  You should "
-"cope with the case of your functions only managing to send or receive a "
+"cope with the case of your functions managing to send or receive only a "
 "single byte."
 msgstr ""
 "B<read>(2), B<recv>(2), B<write>(2), B<send>(2)  といった関数は、こちらが要求"
@@ -4916,13 +5886,13 @@ msgstr ""
 "うな場合も 考慮に入れてやらなければならない。"
 
 #. type: TP
-#: build/C/man2/select_tut.2:386
+#: build/C/man2/select_tut.2:388
 #, no-wrap
 msgid "6."
 msgstr "6."
 
 #. type: Plain text
-#: build/C/man2/select_tut.2:394
+#: build/C/man2/select_tut.2:396
 msgid ""
 "Never read/write only in single bytes at a time unless you are really sure "
 "that you have a small amount of data to process.  It is extremely "
@@ -4931,19 +5901,19 @@ msgid ""
 "made larger."
 msgstr ""
 "処理するデータ量が小さいことがはっきりとわかっている場合を除いて、 一度に 1 "
-"ã\83\90ã\82¤ã\83\88ã\81\9aã\81¤èª­ã\81¿æ\9b¸ã\81\8dã\81\99ã\82\8bã\82\88ã\81\86ã\81ªã\81\93ã\81¨ã\81¯ã\81\97ã\81¦ã\81¯ã\81ªã\82\89ã\81ªã\81\84ã\80\82 ã\83\90ã\83\83ã\83\95ã\82¡ã\81®è¨±ã\81\99ã\81\8bã\81\8eã\82\8aã\81®ã\83\87ã\83¼"
-"ã\82¿ã\82\92ã\81¾ã\81¨ã\82\81ã\81¦èª­ã\81¿æ\9b¸ã\81\8dã\81\97ã\81ªã\81\84ã\81¨ã\80\81 é\9d\9e常ã\81«å\8a¹ç\8e\87ã\81\8cæ\82ªã\81\84ã\80\82ä¸\8bè¨\98ã\81®ä¾\8bã\81§ã\81¯ã\83\90ã\83\83ã\83\95ã\82¡ã\81¯ 1024 "
-"バイトにしているが、 このサイズを大きくするのは簡単だろう。"
+"ã\83\90ã\82¤ã\83\88ã\81\9aã\81¤èª­ã\81¿æ\9b¸ã\81\8dã\81\99ã\82\8bã\82\88ã\81\86ã\81ªã\81\93ã\81¨ã\81¯ã\81\97ã\81¦ã\81¯ã\81ªã\82\89ã\81ªã\81\84ã\80\82 ã\83\90ã\83\83ã\83\95ã\82¡ã\83¼ã\81®è¨±ã\81\99ã\81\8bã\81\8eã\82\8aã\81®"
+"ã\83\87ã\83¼ã\82¿ã\82\92ã\81¾ã\81¨ã\82\81ã\81¦èª­ã\81¿æ\9b¸ã\81\8dã\81\97ã\81ªã\81\84ã\81¨ã\80\81 é\9d\9e常ã\81«å\8a¹ç\8e\87ã\81\8cæ\82ªã\81\84ã\80\82ä¸\8bè¨\98ã\81®ä¾\8bã\81§ã\81¯ã\83\90ã\83\83ã\83\95ã\82¡ã\83¼"
+"ã\81¯ 1024 ã\83\90ã\82¤ã\83\88ã\81«ã\81\97ã\81¦ã\81\84ã\82\8bã\81\8cã\80\81 ã\81\93ã\81®ã\82µã\82¤ã\82ºã\82\92大ã\81\8dã\81\8fã\81\99ã\82\8bã\81®ã\81¯ç°¡å\8d\98ã\81 ã\82\8dã\81\86ã\80\82"
 
 #. type: TP
-#: build/C/man2/select_tut.2:394
+#: build/C/man2/select_tut.2:396
 #, no-wrap
 msgid "7."
 msgstr "7."
 
 #.  Nonetheless, you should still cope with these errors for completeness.
 #. type: Plain text
-#: build/C/man2/select_tut.2:416
+#: build/C/man2/select_tut.2:418
 msgid ""
 "The functions B<read>(2), B<recv>(2), B<write>(2), and B<send>(2)  as well "
 "as the B<select>()  call can return -1 with I<errno> set to B<EINTR>, or "
@@ -4960,28 +5930,28 @@ msgstr ""
 "ク I/O をセットしていない場合は、 B<EAGAIN> が返されることはないだろう。"
 
 #. type: TP
-#: build/C/man2/select_tut.2:416
+#: build/C/man2/select_tut.2:418
 #, no-wrap
 msgid "8."
 msgstr "8."
 
 #. type: Plain text
-#: build/C/man2/select_tut.2:425
+#: build/C/man2/select_tut.2:427
 msgid ""
 "Never call B<read>(2), B<recv>(2), B<write>(2), or B<send>(2)  with a buffer "
 "length of zero."
 msgstr ""
-"決ã\81\97ã\81¦ã\80\81å¼\95ã\81\8dæ\95°ã\81«é\95·ã\81\95 0 ã\81®ã\83\90ã\83\83ã\83\95ã\82¡ã\82\92æ\8c\87å®\9aã\81\97ã\81¦ B<read>(2), B<recv>(2), B<write>"
-"(2), B<send>(2)  を呼び出してはならない。"
+"決ã\81\97ã\81¦ã\80\81å¼\95ã\81\8dæ\95°ã\81«é\95·ã\81\95 0 ã\81®ã\83\90ã\83\83ã\83\95ã\82¡ã\83¼ã\82\92æ\8c\87å®\9aã\81\97ã\81¦ B<read>(2), B<recv>(2), "
+"B<write>(2), B<send>(2)  を呼び出してはならない。"
 
 #. type: TP
-#: build/C/man2/select_tut.2:425
+#: build/C/man2/select_tut.2:427
 #, no-wrap
 msgid "9."
 msgstr "9."
 
 #. type: Plain text
-#: build/C/man2/select_tut.2:441
+#: build/C/man2/select_tut.2:443
 msgid ""
 "If the functions B<read>(2), B<recv>(2), B<write>(2), and B<send>(2)  fail "
 "with errors other than those listed in B<7.>, or one of the input functions "
@@ -4992,18 +5962,18 @@ msgid ""
 msgstr ""
 "B<read>(2), B<recv>(2), B<write>(2), B<send>(2)  が B<7.> に示した以外のエ"
 "ラーで失敗した場合や、 入力系の関数の一つがファイル末尾を表す 0 を返した場合"
-"は、 そのディスクリプタをもう一度 select に渡してはI<ならない>。 下記の例で"
-"ã\81¯ã\80\81ã\81\9dã\81®ã\83\87ã\82£ã\82¹ã\82¯ã\83ªã\83\97ã\82¿ã\82\92ã\81\9fã\81 ã\81¡ã\81«ã\82¯ã\83­ã\83¼ã\82ºã\81\97ã\80\81 ã\81\9dã\81\93ã\81«ã\81¯ -1 ã\82\92ã\82»ã\83\83ã\83\88ã\81\97ã\81¦ã\80\81 ã\81\9dã\82\8c"
-"が集合に含まれ続けるのを許さないようにしている。"
+"ã\81¯ã\80\81 ã\81\9dã\81®ã\83\87ã\82£ã\82¹ã\82¯ã\83ªã\83\97ã\82¿ã\83¼ã\82\92ã\82\82ã\81\86ä¸\80度 select ã\81«æ¸¡ã\81\97ã\81¦ã\81¯I<ã\81ªã\82\89ã\81ªã\81\84\80\82 ä¸\8bè¨\98ã\81®ä¾\8bã\81§"
+"ã\81¯ã\80\81ã\81\9dã\81®ã\83\87ã\82£ã\82¹ã\82¯ã\83ªã\83\97ã\82¿ã\83¼ã\82\92ã\81\9fã\81 ã\81¡ã\81«ã\82¯ã\83­ã\83¼ã\82ºã\81\97ã\80\81 ã\81\9dã\81\93ã\81«ã\81¯ -1 ã\82\92ã\82»ã\83\83ã\83\88ã\81\97ã\81¦ã\80\81 ã\81\9d"
+"ã\82\8cã\81\8cé\9b\86å\90\88ã\81«å\90«ã\81¾ã\82\8cç¶\9aã\81\91ã\82\8bã\81®ã\82\92許ã\81\95ã\81ªã\81\84ã\82\88ã\81\86ã\81«ã\81\97ã\81¦ã\81\84ã\82\8bã\80\82"
 
 #. type: TP
-#: build/C/man2/select_tut.2:441
+#: build/C/man2/select_tut.2:443
 #, no-wrap
 msgid "10."
 msgstr "10."
 
 #. type: Plain text
-#: build/C/man2/select_tut.2:448
+#: build/C/man2/select_tut.2:450
 msgid ""
 "The timeout value must be initialized with each new call to B<select>(), "
 "since some operating systems modify the structure.  B<pselect>()  however "
@@ -5014,7 +5984,7 @@ msgstr ""
 "分の timeout 構造体を変更することはない。"
 
 #. type: TP
-#: build/C/man2/select_tut.2:448
+#: build/C/man2/select_tut.2:450
 #, no-wrap
 msgid "11."
 msgstr "11."
@@ -5032,33 +6002,33 @@ msgstr "11."
 #.  way to sleep the process with subsecond precision by using the timeout.
 #.  (See further on.)
 #. type: Plain text
-#: build/C/man2/select_tut.2:467
+#: build/C/man2/select_tut.2:469
 msgid ""
 "Since B<select>()  modifies its file descriptor sets, if the call is being "
 "used in a loop, then the sets must be reinitialized before each call."
 msgstr ""
-"B<select>()  はファイルディスクリプタ集合を変更するので、 B<select>()  がルー"
-"ã\83\97ã\81®ä¸­ã\81§ä½¿ç\94¨ã\81\95ã\82\8cã\81¦ã\81\84ã\82\8bå ´å\90\88ã\81«ã\81¯ã\80\81å\91¼ã\81³å\87ºã\81\97ã\82\92è¡\8cã\81\86å\89\8dã\81«æ¯\8eå\9b\9e ã\83\87ã\82£ã\82¹ã\82¯ã\83ªã\83\97ã\82¿é\9b\86å\90\88ã\82\92å\88\9d"
-"期化し直さなければならない。"
+"B<select>()  はファイルディスクリプター集合を変更するので、 B<select>()  が"
+"ã\83«ã\83¼ã\83\97ã\81®ä¸­ã\81§ä½¿ç\94¨ã\81\95ã\82\8cã\81¦ã\81\84ã\82\8bå ´å\90\88ã\81«ã\81¯ã\80\81å\91¼ã\81³å\87ºã\81\97ã\82\92è¡\8cã\81\86å\89\8dã\81«æ¯\8eå\9b\9e ã\83\87ã\82£ã\82¹ã\82¯ã\83ªã\83\97ã\82¿ã\83¼é\9b\86"
+"合を初期化し直さなければならない。"
 
 #. type: SS
-#: build/C/man2/select_tut.2:467
+#: build/C/man2/select_tut.2:469
 #, no-wrap
-msgid "Usleep Emulation"
+msgid "Usleep emulation"
 msgstr "usleep エミュレーション"
 
 #. type: Plain text
-#: build/C/man2/select_tut.2:474
+#: build/C/man2/select_tut.2:476
 msgid ""
-"On systems that do not have a B<usleep>(3)  function, you can call B<select>"
-"()  with a finite timeout and no file descriptors as follows:"
+"On systems that do not have a B<usleep>(3)  function, you can call "
+"B<select>()  with a finite timeout and no file descriptors as follows:"
 msgstr ""
 "B<usleep>(3)  関数を持たないシステムでは、 有限のタイムアウトを指定し、ファイ"
-"ã\83«ã\83\87ã\82£ã\82¹ã\82¯ã\83ªã\83\97ã\82¿ã\82\92å\85¨ã\81\8fã\82»ã\83\83ã\83\88ã\81\9bã\81\9aã\81« B<select>()  ã\82\92å\91¼ã\81³å\87ºã\81\99ã\81\93ã\81¨ã\81§ã\80\81ã\81\93ã\82\8cã\82\92代ç\94¨"
-"できる。 以下のようにする。"
+"ã\83«ã\83\87ã\82£ã\82¹ã\82¯ã\83ªã\83\97ã\82¿ã\83¼ã\82\92å\85¨ã\81\8fã\82»ã\83\83ã\83\88ã\81\9bã\81\9aã\81« B<select>()  ã\82\92å\91¼ã\81³å\87ºã\81\99ã\81\93ã\81¨ã\81§ã\80\81ã\81\93ã\82\8cã\82\92代"
+"できる。 以下のようにする。"
 
 #. type: Plain text
-#: build/C/man2/select_tut.2:480
+#: build/C/man2/select_tut.2:482
 #, no-wrap
 msgid ""
 "    struct timeval tv;\n"
@@ -5072,30 +6042,30 @@ msgstr ""
 "    select(0, NULL, NULL, NULL, &tv);\n"
 
 #. type: Plain text
-#: build/C/man2/select_tut.2:483
-msgid "This is only guaranteed to work on UNIX systems, however."
+#: build/C/man2/select_tut.2:485
+msgid "This is guaranteed to work only on UNIX systems, however."
 msgstr "但し、これが動くと保証されているのは UNIX システムに限られる。"
 
 #. type: Plain text
-#: build/C/man2/select_tut.2:488
+#: build/C/man2/select_tut.2:490
 msgid ""
 "On success, B<select>()  returns the total number of file descriptors still "
 "present in the file descriptor sets."
 msgstr ""
-"成功すると、 B<select>()  はファイルディスクリプタ集合に残っている ファイル"
-"ディスクリプタの総数を返す。"
+"成功すると、 B<select>()  はファイルディスクリプタ集合に残っている ファイル"
+"ã\83\87ã\82£ã\82¹ã\82¯ã\83ªã\83\97ã\82¿ã\83¼ã\81®ç·\8fæ\95°ã\82\92è¿\94ã\81\99ã\80\82"
 
 #. type: Plain text
-#: build/C/man2/select_tut.2:494
+#: build/C/man2/select_tut.2:496
 msgid ""
 "If B<select>()  timed out, then the return value will be zero.  The file "
 "descriptors set should be all empty (but may not be on some systems)."
 msgstr ""
 "B<select>()  がタイムアウトすると、返り値は 0 になる。 その時、ファイルディス"
-"クリプタ集合はすべて空である (しかしそうならないシステムもある)。"
+"クリプタ集合はすべて空である (しかしそうならないシステムもある)。"
 
 #. type: Plain text
-#: build/C/man2/select_tut.2:501
+#: build/C/man2/select_tut.2:503
 msgid ""
 "A return value of -1 indicates an error, with I<errno> being set "
 "appropriately.  In the case of an error, the contents of the returned sets "
@@ -5108,7 +6078,7 @@ msgstr ""
 "変更しない。"
 
 #. type: Plain text
-#: build/C/man2/select_tut.2:510
+#: build/C/man2/select_tut.2:512
 msgid ""
 "Generally speaking, all operating systems that support sockets also support "
 "B<select>().  B<select>()  can be used to solve many problems in a portable "
@@ -5117,11 +6087,11 @@ msgid ""
 msgstr ""
 "一般的に言って、ソケットをサポートする全てのオペレーティングシステムは "
 "B<select>()  もサポートしている。 B<select>()  を使うと、プログラマがスレッ"
-"ド、フォーク、IPC、シグナル、メモリ共有、 等々を使ってもっと複雑な方法で解決"
-"しようとする多くの問題が、 移植性がありかつ効率的な方法で解決できる。"
+"ド、フォーク、IPC、シグナル、メモリー共有、 等々を使ってもっと複雑な方法で解"
+"しようとする多くの問題が、 移植性がありかつ効率的な方法で解決できる。"
 
 #. type: Plain text
-#: build/C/man2/select_tut.2:519
+#: build/C/man2/select_tut.2:521
 msgid ""
 "The B<poll>(2)  system call has the same functionality as B<select>(), and "
 "is somewhat more efficient when monitoring sparse file descriptor sets.  It "
@@ -5129,31 +6099,32 @@ msgid ""
 "B<select>()."
 msgstr ""
 "B<poll>(2)  システムコールは B<select>()  と同じ機能を持っており、 まばらな"
-"ファイルディスクリプタ集合を監視する場合に いくらか効率がよい。 現在では広く"
-"利用可能であるが、以前は B<select>()  より移植性の面で劣っていた。"
+"ファイルディスクリプター集合を監視する場合に いくらか効率がよい。 現在では広"
+"利用可能であるが、以前は B<select>()  より移植性の面で劣っていた。"
 
 #. type: Plain text
-#: build/C/man2/select_tut.2:527
+#: build/C/man2/select_tut.2:529
 msgid ""
 "The Linux-specific B<epoll>(7)  API provides an interface that is more "
 "efficient than B<select>(2)  and B<poll>(2)  when monitoring large numbers "
 "of file descriptors."
 msgstr ""
-"Linux 独自の B<epoll>(7)  API は、多数のファイルディスクリプタを監視する場合"
-"に B<select>(2)  や B<poll>(2)  よりも効率的なインタフェースを提供している。"
+"Linux 独自の B<epoll>(7)  API は、多数のファイルディスクリプターを監視する場"
+"合に B<select>(2)  や B<poll>(2)  よりも効率的なインターフェースを提供してい"
+"る。"
 
 #. type: Plain text
-#: build/C/man2/select_tut.2:532
+#: build/C/man2/select_tut.2:534
 msgid ""
-"Here is an example that better demonstrates the true utility of B<select>"
-"().  The listing below is a TCP forwarding program that forwards from one "
-"TCP port to another."
+"Here is an example that better demonstrates the true utility of "
+"B<select>().  The listing below is a TCP forwarding program that forwards "
+"from one TCP port to another."
 msgstr ""
 "B<select>()  の本当に便利な点を示す、よい例を紹介する。 以下のリストは、ある "
 "TCP ポートから別のポートへ転送を行う TCP フォワードプログラムである。"
 
 #. type: Plain text
-#: build/C/man2/select_tut.2:545
+#: build/C/man2/select_tut.2:547
 #, no-wrap
 msgid ""
 "#include E<lt>stdlib.hE<gt>\n"
@@ -5181,13 +6152,13 @@ msgstr ""
 "#include E<lt>errno.hE<gt>\n"
 
 #. type: Plain text
-#: build/C/man2/select_tut.2:547
+#: build/C/man2/select_tut.2:549
 #, no-wrap
 msgid "static int forward_port;\n"
 msgstr "static int forward_port;\n"
 
 #. type: Plain text
-#: build/C/man2/select_tut.2:550
+#: build/C/man2/select_tut.2:552
 #, no-wrap
 msgid ""
 "#undef max\n"
@@ -5197,7 +6168,7 @@ msgstr ""
 "#define max(x,y) ((x) E<gt> (y) ? (x) : (y))\n"
 
 #. type: Plain text
-#: build/C/man2/select_tut.2:557
+#: build/C/man2/select_tut.2:559
 #, no-wrap
 msgid ""
 "static int\n"
@@ -5215,16 +6186,17 @@ msgstr ""
 "    int yes;\n"
 
 #. type: Plain text
-#: build/C/man2/select_tut.2:581
+#: build/C/man2/select_tut.2:584
 #, no-wrap
 msgid ""
-"    if ((s = socket(AF_INET, SOCK_STREAM, 0)) == -1) {\n"
+"    s = socket(AF_INET, SOCK_STREAM, 0);\n"
+"    if (s == -1) {\n"
 "        perror(\"socket\");\n"
 "        return -1;\n"
 "    }\n"
 "    yes = 1;\n"
 "    if (setsockopt(s, SOL_SOCKET, SO_REUSEADDR,\n"
-"            (char *) &yes, sizeof(yes)) == -1) {\n"
+"            &yes, sizeof(yes)) == -1) {\n"
 "        perror(\"setsockopt\");\n"
 "        close(s);\n"
 "        return -1;\n"
@@ -5248,7 +6220,7 @@ msgstr ""
 "    }\n"
 "    yes = 1;\n"
 "    if (setsockopt(s, SOL_SOCKET, SO_REUSEADDR,\n"
-"            (char *) &yes, sizeof(yes)) == -1) {\n"
+"            &yes, sizeof(yes)) == -1) {\n"
 "        perror(\"setsockopt\");\n"
 "        close(s);\n"
 "        return -1;\n"
@@ -5267,7 +6239,7 @@ msgstr ""
 "}\n"
 
 #. type: Plain text
-#: build/C/man2/select_tut.2:587
+#: build/C/man2/select_tut.2:590
 #, no-wrap
 msgid ""
 "static int\n"
@@ -5283,23 +6255,25 @@ msgstr ""
 "    int s;\n"
 
 #. type: Plain text
-#: build/C/man2/select_tut.2:593
+#: build/C/man2/select_tut.2:597
 #, no-wrap
 msgid ""
-"    if ((s = socket(AF_INET, SOCK_STREAM, 0)) == -1) {\n"
+"    s = socket(AF_INET, SOCK_STREAM, 0);\n"
+"    if (s == -1) {\n"
 "        perror(\"socket\");\n"
 "        close(s);\n"
 "        return -1;\n"
 "    }\n"
 msgstr ""
-"    if ((s = socket(AF_INET, SOCK_STREAM, 0)) == -1) {\n"
+"    s = socket(AF_INET, SOCK_STREAM, 0);\n"
+"    if (s == -1) {\n"
 "        perror(\"socket\");\n"
 "        close(s);\n"
 "        return -1;\n"
 "    }\n"
 
 #. type: Plain text
-#: build/C/man2/select_tut.2:597
+#: build/C/man2/select_tut.2:601
 #, no-wrap
 msgid ""
 "    memset(&a, 0, sizeof(a));\n"
@@ -5311,7 +6285,7 @@ msgstr ""
 "    a.sin_family = AF_INET;\n"
 
 #. type: Plain text
-#: build/C/man2/select_tut.2:603
+#: build/C/man2/select_tut.2:607
 #, no-wrap
 msgid ""
 "    if (!inet_aton(address, (struct in_addr *) &a.sin_addr.s_addr)) {\n"
@@ -5327,7 +6301,7 @@ msgstr ""
 "    }\n"
 
 #. type: Plain text
-#: build/C/man2/select_tut.2:612
+#: build/C/man2/select_tut.2:616
 #, no-wrap
 msgid ""
 "    if (connect(s, (struct sockaddr *) &a, sizeof(a)) == -1) {\n"
@@ -5349,7 +6323,7 @@ msgstr ""
 "}\n"
 
 #. type: Plain text
-#: build/C/man2/select_tut.2:620
+#: build/C/man2/select_tut.2:624
 #, no-wrap
 msgid ""
 "#define SHUT_FD1 do {                                \\e\n"
@@ -5369,7 +6343,7 @@ msgstr ""
 "                 } while (0)\n"
 
 #. type: Plain text
-#: build/C/man2/select_tut.2:628
+#: build/C/man2/select_tut.2:632
 #, no-wrap
 msgid ""
 "#define SHUT_FD2 do {                                \\e\n"
@@ -5389,13 +6363,13 @@ msgstr ""
 "                 } while (0)\n"
 
 #. type: Plain text
-#: build/C/man2/select_tut.2:630
+#: build/C/man2/select_tut.2:634
 #, no-wrap
 msgid "#define BUF_SIZE 1024\n"
 msgstr "#define BUF_SIZE 1024\n"
 
 #. type: Plain text
-#: build/C/man2/select_tut.2:639
+#: build/C/man2/select_tut.2:643
 #, no-wrap
 msgid ""
 "int\n"
@@ -5417,7 +6391,7 @@ msgstr ""
 "    int buf2_avail, buf2_written;\n"
 
 #. type: Plain text
-#: build/C/man2/select_tut.2:645
+#: build/C/man2/select_tut.2:649
 #, no-wrap
 msgid ""
 "    if (argc != 4) {\n"
@@ -5433,19 +6407,19 @@ msgstr ""
 "    }\n"
 
 #. type: Plain text
-#: build/C/man2/select_tut.2:647
+#: build/C/man2/select_tut.2:651
 #, no-wrap
 msgid "    signal(SIGPIPE, SIG_IGN);\n"
 msgstr "    signal(SIGPIPE, SIG_IGN);\n"
 
 #. type: Plain text
-#: build/C/man2/select_tut.2:649
+#: build/C/man2/select_tut.2:653
 #, no-wrap
 msgid "    forward_port = atoi(argv[2]);\n"
 msgstr "    forward_port = atoi(argv[2]);\n"
 
 #. type: Plain text
-#: build/C/man2/select_tut.2:653
+#: build/C/man2/select_tut.2:657
 #, no-wrap
 msgid ""
 "    h = listen_socket(atoi(argv[1]));\n"
@@ -5457,7 +6431,7 @@ msgstr ""
 "        exit(EXIT_FAILURE);\n"
 
 #. type: Plain text
-#: build/C/man2/select_tut.2:657
+#: build/C/man2/select_tut.2:661
 #, no-wrap
 msgid ""
 "    for (;;) {\n"
@@ -5469,7 +6443,7 @@ msgstr ""
 "        fd_set rd, wr, er;\n"
 
 #. type: Plain text
-#: build/C/man2/select_tut.2:687
+#: build/C/man2/select_tut.2:691
 #, no-wrap
 msgid ""
 "        FD_ZERO(&rd);\n"
@@ -5533,13 +6507,13 @@ msgstr ""
 "        }\n"
 
 #. type: Plain text
-#: build/C/man2/select_tut.2:689
+#: build/C/man2/select_tut.2:693
 #, no-wrap
 msgid "        r = select(nfds + 1, &rd, &wr, &er, NULL);\n"
 msgstr "        r = select(nfds + 1, &rd, &wr, &er, NULL);\n"
 
 #. type: Plain text
-#: build/C/man2/select_tut.2:692
+#: build/C/man2/select_tut.2:696
 #, no-wrap
 msgid ""
 "        if (r == -1 && errno == EINTR)\n"
@@ -5549,7 +6523,7 @@ msgstr ""
 "            continue;\n"
 
 #. type: Plain text
-#: build/C/man2/select_tut.2:697
+#: build/C/man2/select_tut.2:701
 #, no-wrap
 msgid ""
 "        if (r == -1) {\n"
@@ -5563,7 +6537,7 @@ msgstr ""
 "        }\n"
 
 #. type: Plain text
-#: build/C/man2/select_tut.2:701
+#: build/C/man2/select_tut.2:705
 #, no-wrap
 msgid ""
 "        if (FD_ISSET(h, &rd)) {\n"
@@ -5575,7 +6549,7 @@ msgstr ""
 "            struct sockaddr_in client_address;\n"
 
 #. type: Plain text
-#: build/C/man2/select_tut.2:720
+#: build/C/man2/select_tut.2:724
 #, no-wrap
 msgid ""
 "            memset(&client_address, 0, l = sizeof(client_address));\n"
@@ -5617,13 +6591,13 @@ msgstr ""
 "        }\n"
 
 #. type: Plain text
-#: build/C/man2/select_tut.2:722
+#: build/C/man2/select_tut.2:726
 #, no-wrap
 msgid "        /* NB: read oob data before normal reads */\n"
 msgstr "        /* NB: read oob data before normal reads */\n"
 
 #. type: Plain text
-#: build/C/man2/select_tut.2:726
+#: build/C/man2/select_tut.2:730
 #, no-wrap
 msgid ""
 "        if (fd1 E<gt> 0)\n"
@@ -5635,7 +6609,7 @@ msgstr ""
 "                char c;\n"
 
 #. type: Plain text
-#: build/C/man2/select_tut.2:736
+#: build/C/man2/select_tut.2:740
 #, no-wrap
 msgid ""
 "                r = recv(fd1, &c, 1, MSG_OOB);\n"
@@ -5659,7 +6633,7 @@ msgstr ""
 "                char c;\n"
 
 #. type: Plain text
-#: build/C/man2/select_tut.2:779
+#: build/C/man2/select_tut.2:783
 #, no-wrap
 msgid ""
 "                r = recv(fd2, &c, 1, MSG_OOB);\n"
@@ -5749,13 +6723,13 @@ msgstr ""
 "            }\n"
 
 #. type: Plain text
-#: build/C/man2/select_tut.2:781
+#: build/C/man2/select_tut.2:785
 #, no-wrap
 msgid "        /* check if write data has caught read data */\n"
 msgstr "        /* check if write data has caught read data */\n"
 
 #. type: Plain text
-#: build/C/man2/select_tut.2:786
+#: build/C/man2/select_tut.2:790
 #, no-wrap
 msgid ""
 "        if (buf1_written == buf1_avail)\n"
@@ -5769,7 +6743,7 @@ msgstr ""
 "            buf2_written = buf2_avail = 0;\n"
 
 #. type: Plain text
-#: build/C/man2/select_tut.2:789
+#: build/C/man2/select_tut.2:793
 #, no-wrap
 msgid ""
 "        /* one side has closed the connection, keep\n"
@@ -5779,7 +6753,7 @@ msgstr ""
 "           writing to the other side until empty */\n"
 
 #. type: Plain text
-#: build/C/man2/select_tut.2:797
+#: build/C/man2/select_tut.2:801
 #, no-wrap
 msgid ""
 "        if (fd1 E<lt> 0 && buf1_avail - buf1_written == 0)\n"
@@ -5799,7 +6773,7 @@ msgstr ""
 "}\n"
 
 #. type: Plain text
-#: build/C/man2/select_tut.2:811
+#: build/C/man2/select_tut.2:815
 msgid ""
 "The above program properly forwards most kinds of TCP connections including "
 "OOB signal data transmitted by B<telnet> servers.  It handles the tricky "
@@ -5811,15 +6785,15 @@ msgid ""
 msgstr ""
 "上記のプログラムは、ほとんどの種類の TCP 接続をフォワードする。 B<telnet> "
 "サーバによって中継される OOB シグナルデータも扱える。 このプログラムは、デー"
-"タフローを双方向に同時に送るという、 ややこしい問題も処理できる。 B<fork>"
-"(2)  コールを使って、各ストリームごとに専用のスレッドを用いるほうが効率的"
-"だ、 という人もいるかもしれない。しかし、これは考えているよりずっとややこし"
-"ã\81\84ã\80\82 ã\81\82ã\82\8bã\81\84ã\81¯ã\80\81 B<fcntl>(2)  ã\82\92使ã\81£ã\81¦é\9d\9eã\83\96ã\83­ã\83\83ã\82¯ I/O ã\82\92ã\82»ã\83\83ã\83\88ã\81\99ã\82\8cã\81°è\89¯ã\81\84ã\80\81ã\81¨ã\81\84"
-"ã\81\86ã\82¢ã\82¤ã\83\87ã\82¢ã\82\82ã\81\82ã\82\8bã\81 ã\82\8dã\81\86ã\80\82 ã\81\93ã\82\8cã\81«ã\82\82å®\9fé\9a\9bã\81«ã\81¯å\95\8fé¡\8cã\81\8cã\81\82ã\82\8aã\80\81ã\82¿ã\82¤ã\83 ã\82¢ã\82¦ã\83\88ã\81\8cé\9d\9eå\8a¹ç\8e\87ç\9a\84ã\81«"
-"起こってしまう。"
+"タフローを双方向に同時に送るという、 ややこしい問題も処理できる。 "
+"B<fork>(2)  コールを使って、各ストリームごとに専用のスレッドを用いるほうが効"
+"率的だ、 という人もいるかもしれない。しかし、これは考えているよりずっとややこ"
+"ã\81\97ã\81\84ã\80\82 ã\81\82ã\82\8bã\81\84ã\81¯ã\80\81 B<fcntl>(2)  ã\82\92使ã\81£ã\81¦é\9d\9eã\83\96ã\83­ã\83\83ã\82¯ I/O ã\82\92ã\82»ã\83\83ã\83\88ã\81\99ã\82\8cã\81°è\89¯ã\81\84ã\80\81ã\81¨"
+"ã\81\84ã\81\86ã\82¢ã\82¤ã\83\87ã\82¢ã\82\82ã\81\82ã\82\8bã\81 ã\82\8dã\81\86ã\80\82 ã\81\93ã\82\8cã\81«ã\82\82å®\9fé\9a\9bã\81«ã\81¯å\95\8fé¡\8cã\81\8cã\81\82ã\82\8aã\80\81ã\82¿ã\82¤ã\83 ã\82¢ã\82¦ã\83\88ã\81\8cé\9d\9eå\8a¹ç\8e\87ç\9a\84"
+"起こってしまう。"
 
 #. type: Plain text
-#: build/C/man2/select_tut.2:817
+#: build/C/man2/select_tut.2:821
 msgid ""
 "The program does not handle more than one simultaneous connection at a time, "
 "although it could easily be extended to do this with a linked list of buffers"
@@ -5827,41 +6801,37 @@ msgid ""
 "current connection to be dropped."
 msgstr ""
 "このプログラムは一度にひとつ以上の同時接続を扱うことはできないが、 その様に拡"
-"張するのは簡単で、バッファのリンクリストを (接続ごとにひとつずつ) 使えばよ"
+"å¼µã\81\99ã\82\8bã\81®ã\81¯ç°¡å\8d\98ã\81§ã\80\81ã\83\90ã\83\83ã\83\95ã\82¡ã\83¼ã\81®ã\83ªã\83³ã\82¯ã\83ªã\82¹ã\83\88ã\82\92 (æ\8e¥ç¶\9aã\81\94ã\81¨ã\81«ã\81²ã\81¨ã\81¤ã\81\9aã\81¤) ä½¿ã\81\88ã\81°ã\82\88"
 "い。 現時点のものでは、新しい接続がくると古い接続は落ちてしまう。"
 
+#.  .SH AUTHORS
+#.  This man page was written by Paul Sheer.
 #. type: Plain text
-#: build/C/man2/select_tut.2:833
+#: build/C/man2/select_tut.2:840
 msgid ""
-"B<accept>(2), B<connect>(2), B<ioctl>(2), B<poll>(2), B<read>(2), B<recv>"
-"(2), B<select>(2), B<send>(2), B<sigprocmask>(2), B<write>(2), B<sigaddset>"
-"(3), B<sigdelset>(3), B<sigemptyset>(3), B<sigfillset>(3), B<sigismember>"
-"(3), B<epoll>(7)"
+"B<accept>(2), B<connect>(2), B<ioctl>(2), B<poll>(2), B<read>(2), "
+"B<recv>(2), B<select>(2), B<send>(2), B<sigprocmask>(2), B<write>(2), "
+"B<sigaddset>(3), B<sigdelset>(3), B<sigemptyset>(3), B<sigfillset>(3), "
+"B<sigismember>(3), B<epoll>(7)"
 msgstr ""
-"B<accept>(2), B<connect>(2), B<ioctl>(2), B<poll>(2), B<read>(2), B<recv>"
-"(2), B<select>(2), B<send>(2), B<sigprocmask>(2), B<write>(2), B<sigaddset>"
-"(3), B<sigdelset>(3), B<sigemptyset>(3), B<sigfillset>(3), B<sigismember>"
-"(3), B<epoll>(7)"
+"B<accept>(2), B<connect>(2), B<ioctl>(2), B<poll>(2), B<read>(2), "
+"B<recv>(2), B<select>(2), B<send>(2), B<sigprocmask>(2), B<write>(2), "
+"B<sigaddset>(3), B<sigdelset>(3), B<sigemptyset>(3), B<sigfillset>(3), "
+"B<sigismember>(3), B<epoll>(7)"
 
 #. type: TH
-#: build/C/man2/send.2:38
+#: build/C/man2/send.2:40
 #, no-wrap
 msgid "SEND"
 msgstr "SEND"
 
-#. type: TH
-#: build/C/man2/send.2:38 build/C/man2/sendmmsg.2:28
-#, no-wrap
-msgid "2012-02-27"
-msgstr "2012-02-27"
-
 #. type: Plain text
-#: build/C/man2/send.2:41
+#: build/C/man2/send.2:43
 msgid "send, sendto, sendmsg - send a message on a socket"
 msgstr "send, sendto, sendmsg - ソケットへメッセージを送る"
 
 #. type: Plain text
-#: build/C/man2/send.2:45
+#: build/C/man2/send.2:47
 #, no-wrap
 msgid ""
 "B<#include E<lt>sys/types.hE<gt>>\n"
@@ -5871,13 +6841,13 @@ msgstr ""
 "B<#include E<lt>sys/socket.hE<gt>>\n"
 
 #. type: Plain text
-#: build/C/man2/send.2:48
+#: build/C/man2/send.2:50
 #, no-wrap
 msgid "B<ssize_t send(int >I<sockfd>B<, const void *>I<buf>B<, size_t >I<len>B<, int >I<flags>B<);>\n"
 msgstr "B<ssize_t send(int >I<sockfd>B<, const void *>I<buf>B<, size_t >I<len>B<, int >I<flags>B<);>\n"
 
 #. type: Plain text
-#: build/C/man2/send.2:52
+#: build/C/man2/send.2:54
 #, no-wrap
 msgid ""
 "B<ssize_t sendto(int >I<sockfd>B<, const void *>I<buf>B<, size_t >I<len>B<, int >I<flags>B<,>\n"
@@ -5887,13 +6857,13 @@ msgstr ""
 "B<               const struct sockaddr *>I<dest_addr>B<, socklen_t >I<addrlen>B<);>\n"
 
 #. type: Plain text
-#: build/C/man2/send.2:55
+#: build/C/man2/send.2:57
 #, no-wrap
 msgid "B<ssize_t sendmsg(int >I<sockfd>B<, const struct msghdr *>I<msg>B<, int >I<flags>B<);>\n"
 msgstr "B<ssize_t sendmsg(int >I<sockfd>B<, const struct msghdr *>I<msg>B<, int >I<flags>B<);>\n"
 
 #. type: Plain text
-#: build/C/man2/send.2:63
+#: build/C/man2/send.2:65
 msgid ""
 "The system calls B<send>(), B<sendto>(), and B<sendmsg>()  are used to "
 "transmit a message to another socket."
@@ -5902,7 +6872,7 @@ msgstr ""
 "メッセージを転送するのに使用される。"
 
 #. type: Plain text
-#: build/C/man2/send.2:82
+#: build/C/man2/send.2:84
 msgid ""
 "The B<send>()  call may be used only when the socket is in a I<connected> "
 "state (so that the intended recipient is known).  The only difference "
@@ -5911,36 +6881,37 @@ msgid ""
 "following call"
 msgstr ""
 "B<send>()  は、ソケットが I<接続された (connected)> 状態にある場合にのみ使用"
-"できる (つまり、どの相手に送信するかは既知である)。 B<send>()  と B<write>"
-"(2)  の違いは、引き数に I<flags> があるかどうかだけである。 引き数 I<flags> "
-"にフラグが指定されない場合、 B<send>()  は B<write>(2)  と等価である。 また、"
+"できる (つまり、どの相手に送信するかは既知である)。 B<send>()  と "
+"B<write>(2)  の違いは、引き数に I<flags> があるかどうかだけである。 引き数 "
+"I<flags> にフラグが指定されない場合、 B<send>()  は B<write>(2)  と等価であ"
+"る。 また、"
 
 #. type: Plain text
-#: build/C/man2/send.2:84
+#: build/C/man2/send.2:86
 #, no-wrap
 msgid "    send(sockfd, buf, len, flags);\n"
 msgstr "    send(sockfd, buf, len, flags);\n"
 
 #. type: Plain text
-#: build/C/man2/send.2:86
+#: build/C/man2/send.2:88
 msgid "is equivalent to"
 msgstr "は以下と等価である。"
 
 #. type: Plain text
-#: build/C/man2/send.2:88
+#: build/C/man2/send.2:90
 #, no-wrap
 msgid "    sendto(sockfd, buf, len, flags, NULL, 0);\n"
 msgstr "    sendto(sockfd, buf, len, flags, NULL, 0);\n"
 
 #. type: Plain text
-#: build/C/man2/send.2:92
+#: build/C/man2/send.2:94
 msgid "The argument I<sockfd> is the file descriptor of the sending socket."
 msgstr ""
-"å¼\95ã\81\8dæ\95° I<sockfd> ã\81¯ã\80\81ã\83\87ã\83¼ã\82¿ã\82\92é\80\81ä¿¡ã\81\99ã\82\8bã\83\91ã\82±ã\83\83ã\83\88ã\81®ã\83\95ã\82¡ã\82¤ã\83«ã\83»ã\83\87ã\82£ã\82¹ã\82¯ã\83ªã\83\97ã\82¿であ"
+"å¼\95ã\81\8dæ\95° I<sockfd> ã\81¯ã\80\81ã\83\87ã\83¼ã\82¿ã\82\92é\80\81ä¿¡ã\81\99ã\82\8bã\83\91ã\82±ã\83\83ã\83\88ã\81®ã\83\95ã\82¡ã\82¤ã\83«ã\83\87ã\82£ã\82¹ã\82¯ã\83ªã\83\97ã\82¿ã\83¼であ"
 "る。"
 
 #. type: Plain text
-#: build/C/man2/send.2:120
+#: build/C/man2/send.2:122
 msgid ""
 "If B<sendto>()  is used on a connection-mode (B<SOCK_STREAM>, "
 "B<SOCK_SEQPACKET>)  socket, the arguments I<dest_addr> and I<addrlen> are "
@@ -5956,12 +6927,12 @@ msgstr ""
 "視される (各々の引き数が NULL と 0 でない場合は B<EISCONN> エラーも返され"
 "る)。 また、ソケットが実際には接続されていなかった時には B<ENOTCONN> エラーが"
 "返される。 接続型のソケット以外で使用された場合は、接続先のアドレスは "
-"I<dest_addr> で与えられ、そのサイズは I<addrlen> で指定される。 B<sendmsg>"
-"()  では、接続先のアドレスは I<msg.msg_name> で与えられ、そのサイズは I<msg."
-"msg_namelen> で指定される。"
+"I<dest_addr> で与えられ、そのサイズは I<addrlen> で指定される。 "
+"B<sendmsg>()  では、接続先のアドレスは I<msg.msg_name> で与えられ、そのサイズ"
+"は I<msg.msg_namelen> で指定される。"
 
 #. type: Plain text
-#: build/C/man2/send.2:136
+#: build/C/man2/send.2:138
 msgid ""
 "For B<send>()  and B<sendto>(), the message is found in I<buf> and has "
 "length I<len>.  For B<sendmsg>(), the message is pointed to by the elements "
@@ -5974,7 +6945,7 @@ msgstr ""
 "(制御情報とも呼ばれる) を送信することもできる。"
 
 #. type: Plain text
-#: build/C/man2/send.2:141
+#: build/C/man2/send.2:143
 msgid ""
 "If the message is too long to pass atomically through the underlying "
 "protocol, the error B<EMSGSIZE> is returned, and the message is not "
@@ -5985,7 +6956,7 @@ msgstr ""
 "ラーが返され、そのメッセージは転送されない。"
 
 #. type: Plain text
-#: build/C/man2/send.2:145
+#: build/C/man2/send.2:147
 msgid ""
 "No indication of failure to deliver is implicit in a B<send>().  Locally "
 "detected errors are indicated by a return value of -1."
@@ -5994,7 +6965,7 @@ msgstr ""
 "出された場合は、返り値 -1 として通知される。"
 
 #. type: Plain text
-#: build/C/man2/send.2:158
+#: build/C/man2/send.2:160
 msgid ""
 "When the message does not fit into the send buffer of the socket, B<send>()  "
 "normally blocks, unless the socket has been placed in nonblocking I/O mode.  "
@@ -6002,15 +6973,15 @@ msgid ""
 "in this case.  The B<select>(2)  call may be used to determine when it is "
 "possible to send more data."
 msgstr ""
-"ã\83¡ã\83\83ã\82»ã\83¼ã\82¸ã\81\8cã\82½ã\82±ã\83\83ã\83\88ã\81®é\80\81ä¿¡ã\83\90ã\83\83ã\83\95ã\82¡ã\81«å\85¥ã\82\8cã\82\8bã\81\93ã\81¨ã\81\8cã\81§ã\81\8dã\81ªã\81\84å ´å\90\88ã\80\81 B<send>()  ã\81¯"
-"通常は停止 (block) する (ソケットが非停止 (nonblocking) I/O モード でない場"
+"ã\83¡ã\83\83ã\82»ã\83¼ã\82¸ã\81\8cã\82½ã\82±ã\83\83ã\83\88ã\81®é\80\81ä¿¡ã\83\90ã\83\83ã\83\95ã\82¡ã\83¼ã\81«å\85¥ã\82\8cã\82\8bã\81\93ã\81¨ã\81\8cã\81§ã\81\8dã\81ªã\81\84å ´å\90\88ã\80\81 B<send>()  "
+"通常は停止 (block) する (ソケットが非停止 (nonblocking) I/O モード でない場"
 "合)。非停止モードの場合にはエラー B<EAGAIN> か B<EWOULDBLOCK> で失敗する。 い"
 "つデータをさらに送信できるようになるかを知るために、 B<select>(2)  コールを使"
 "用することができる。"
 
-#.  FIXME ? document MSG_PROXY (which went away in 2.3.15)
+#.  FIXME ? document MSG_PROXY (which went away in 2.3.15)
 #. type: Plain text
-#: build/C/man2/send.2:164
+#: build/C/man2/send.2:166
 msgid ""
 "The I<flags> argument is the bitwise OR of zero or more of the following "
 "flags."
@@ -6019,18 +6990,18 @@ msgstr ""
 "のを指定する。"
 
 #. type: TP
-#: build/C/man2/send.2:164
+#: build/C/man2/send.2:166
 #, no-wrap
-msgid "B<MSG_CONFIRM> (Since Linux 2.3.15)"
+msgid "B<MSG_CONFIRM> (since Linux 2.3.15)"
 msgstr "B<MSG_CONFIRM> (Linux 2.3.15 以降)"
 
 #. type: Plain text
-#: build/C/man2/send.2:178
+#: build/C/man2/send.2:180
 msgid ""
 "Tell the link layer that forward progress happened: you got a successful "
 "reply from the other side.  If the link layer doesn't get this it will "
 "regularly reprobe the neighbor (e.g., via a unicast ARP).  Only valid on "
-"B<SOCK_DGRAM> and B<SOCK_RAW> sockets and currently only implemented for "
+"B<SOCK_DGRAM> and B<SOCK_RAW> sockets and currently implemented only for "
 "IPv4 and IPv6.  See B<arp>(7)  for details."
 msgstr ""
 "転送処理に進展があった、つまり相手側から成功の応答を受けたことをリンク層に 知"
@@ -6040,26 +7011,26 @@ msgstr ""
 "されている。 詳しくは B<arp>(7)  参照のこと。"
 
 #. type: TP
-#: build/C/man2/send.2:178
+#: build/C/man2/send.2:180
 #, no-wrap
 msgid "B<MSG_DONTROUTE>"
 msgstr "B<MSG_DONTROUTE>"
 
 #. type: Plain text
-#: build/C/man2/send.2:186
+#: build/C/man2/send.2:188
 msgid ""
-"Don't use a gateway to send out the packet, only send to hosts on directly "
+"Don't use a gateway to send out the packet, send to hosts only on directly "
 "connected networks.  This is usually used only by diagnostic or routing "
-"programs.  This is only defined for protocol families that route; packet "
+"programs.  This is defined only for protocol families that route; packet "
 "sockets don't."
 msgstr ""
 "パケットを送り出すのにゲートウェイを使用せず、 直接接続されているネットワーク"
-"ä¸\8aã\81®ã\83\9bã\82¹ã\83\88ã\81 ã\81\91ã\81«é\80\81ã\82\8bã\80\82 é\80\9a常ã\80\81ã\81\93ã\81®ã\83\95ã\83©ã\82°ã\81¯è¨ºæ\96­ (diagnostic) ã\82\84ã\83«ã\83¼ã\83\86ã\82£ã\83³ã\82°ã\83»ã\83\97"
-"ã\83­ã\82°ã\83©ã\83 ã\81« ã\82\88ã\81£ã\81¦ã\81®ã\81¿ä½¿ç\94¨ã\81\95ã\82\8cã\82\8bã\80\82ã\81\93ã\81®ã\83\95ã\83©ã\82°ã\81¯ã\80\81çµ\8cè·¯å\88¶å¾¡ã\81\8cè¡\8cã\82\8fã\82\8cã\82\8bã\83\97ã\83­ã\83\88ã\82³ã\83«"
-"ã\83\95ã\82¡ã\83\9fã\83ªã\83¼ ã\81«å¯¾ã\81\97ã\81¦ã\81®ã\81¿å®\9a義ã\81\95ã\82\8cã\81¦ã\81\84ã\82\8bã\80\82ã\83\91ã\82±ã\83\83ã\83\88ã\82½ã\82±ã\83\83ã\83\88ã\81«ã\81¯å®\9a義ã\81\95ã\82\8cã\81¦ã\81\84ã\81ªã\81\84ã\80\82"
+"ä¸\8aã\81®ã\83\9bã\82¹ã\83\88ã\81 ã\81\91ã\81«é\80\81ã\82\8bã\80\82 é\80\9a常ã\80\81ã\81\93ã\81®ã\83\95ã\83©ã\82°ã\81¯è¨ºæ\96­ (diagnostic) ã\82\84ã\83«ã\83¼ã\83\86ã\82£ã\83³ã\82°ã\83\97ã\83­"
+"ã\82°ã\83©ã\83 ã\81« ã\82\88ã\81£ã\81¦ã\81®ã\81¿ä½¿ç\94¨ã\81\95ã\82\8cã\82\8bã\80\82ã\81\93ã\81®ã\83\95ã\83©ã\82°ã\81¯ã\80\81çµ\8cè·¯å\88¶å¾¡ã\81\8cè¡\8cã\82\8fã\82\8cã\82\8bã\83\97ã\83­ã\83\88ã\82³ã\83«ã\83\95ã\82¡"
+"ミリー に対してのみ定義されている。パケットソケットには定義されていない。"
 
 #. type: Plain text
-#: build/C/man2/send.2:197
+#: build/C/man2/send.2:199
 msgid ""
 "Enables nonblocking operation; if the operation would block, B<EAGAIN> or "
 "B<EWOULDBLOCK> is returned (this can also be enabled using the B<O_NONBLOCK> "
@@ -6070,13 +7041,13 @@ msgstr ""
 "B<O_NONBLOCK> フラグを指定することによっても有効にできる)。"
 
 #. type: TP
-#: build/C/man2/send.2:197
+#: build/C/man2/send.2:199
 #, no-wrap
 msgid "B<MSG_EOR> (since Linux 2.2)"
 msgstr "B<MSG_EOR> (Linux 2.2 以降)"
 
 #. type: Plain text
-#: build/C/man2/send.2:201
+#: build/C/man2/send.2:203
 msgid ""
 "Terminates a record (when this notion is supported, as for sockets of type "
 "B<SOCK_SEQPACKET>)."
@@ -6085,29 +7056,29 @@ msgstr ""
 "ケット種別のときに有効)。"
 
 #. type: TP
-#: build/C/man2/send.2:201
+#: build/C/man2/send.2:203
 #, no-wrap
-msgid "B<MSG_MORE> (Since Linux 2.4.4)"
+msgid "B<MSG_MORE> (since Linux 2.4.4)"
 msgstr "B<MSG_MORE> (Linux 2.4.4 以降)"
 
 #. type: Plain text
-#: build/C/man2/send.2:210
+#: build/C/man2/send.2:212
 msgid ""
 "The caller has more data to send.  This flag is used with TCP sockets to "
 "obtain the same effect as the B<TCP_CORK> socket option (see B<tcp>(7)), "
 "with the difference that this flag can be set on a per-call basis."
 msgstr ""
 "呼び出し元にさらに送るデータがあることを示す。 このフラグは TCP ソケットとと"
-"もに使用され、 B<TCP_CORK> ソケットオプションと同じ効果が得られる (B<tcp>"
-"(7)  を参照)。 B<TCP_CORK> との違いは、このフラグを使うと呼び出し単位で この"
-"機能を有効にできる点である。"
+"もに使用され、 B<TCP_CORK> ソケットオプションと同じ効果が得られる "
+"(B<tcp>(7)  を参照)。 B<TCP_CORK> との違いは、このフラグを使うと呼び出し単位"
+"で この機能を有効にできる点である。"
 
 #. type: Plain text
-#: build/C/man2/send.2:219
+#: build/C/man2/send.2:221
 msgid ""
 "Since Linux 2.6, this flag is also supported for UDP sockets, and informs "
 "the kernel to package all of the data sent in calls with this flag set into "
-"a single datagram which is only transmitted when a call is performed that "
+"a single datagram which is transmitted only when a call is performed that "
 "does not specify this flag.  (See also the B<UDP_CORK> socket option "
 "described in B<udp>(7).)"
 msgstr ""
@@ -6118,13 +7089,13 @@ msgstr ""
 "ソケットオプション B<UDP_CORK> も参照)。"
 
 #. type: TP
-#: build/C/man2/send.2:219
+#: build/C/man2/send.2:221
 #, no-wrap
 msgid "B<MSG_NOSIGNAL> (since Linux 2.2)"
 msgstr "B<MSG_NOSIGNAL> (Linux 2.2 以降)"
 
 #. type: Plain text
-#: build/C/man2/send.2:228
+#: build/C/man2/send.2:230
 msgid ""
 "Requests not to send B<SIGPIPE> on errors on stream oriented sockets when "
 "the other end breaks the connection.  The B<EPIPE> error is still returned."
@@ -6133,7 +7104,7 @@ msgstr ""
 "B<SIGPIPE> を送信しないように要求する。この場合でも B<EPIPE> は返される。"
 
 #. type: Plain text
-#: build/C/man2/send.2:237
+#: build/C/man2/send.2:239
 msgid ""
 "Sends I<out-of-band> data on sockets that support this notion (e.g., of type "
 "B<SOCK_STREAM>); the underlying protocol must also support I<out-of-band> "
@@ -6143,66 +7114,134 @@ msgstr ""
 "B<SOCK_STREAM>)  で I<帯域外> データを送る。下位プロトコルも I<帯域外> データ"
 "をサポートしている必要がある。"
 
+#. type: SS
+#: build/C/man2/send.2:239
+#, no-wrap
+msgid "sendmsg()"
+msgstr "sendmsg()"
+
+#. type: Plain text
+#: build/C/man2/send.2:245
+msgid ""
+"The definition of the I<msghdr> structure employed by B<sendmsg>()  is as "
+"follows:"
+msgstr "B<sendmsg>() で利用されている I<msghdr> 構造体は以下の通り。"
+
+#. type: Plain text
+#: build/C/man2/send.2:257
+#, no-wrap
+msgid ""
+"struct msghdr {\n"
+"    void         *msg_name;       /* optional address */\n"
+"    socklen_t     msg_namelen;    /* size of address */\n"
+"    struct iovec *msg_iov;        /* scatter/gather array */\n"
+"    size_t        msg_iovlen;     /* # elements in msg_iov */\n"
+"    void         *msg_control;    /* ancillary data, see below */\n"
+"    size_t        msg_controllen; /* ancillary data buffer len */\n"
+"    int           msg_flags;      /* flags (unused) */\n"
+"};\n"
+msgstr ""
+"struct msghdr {\n"
+"    void         *msg_name;       /* 追加のアドレス */\n"
+"    socklen_t     msg_namelen;    /* アドレスのサイズ */\n"
+"    struct iovec *msg_iov;        /* scatter/gather 配列 */\n"
+"    size_t        msg_iovlen;     /* msg_iov の要素数 */\n"
+"    void         *msg_control;    /* 補助データ (後述) */\n"
+"    size_t        msg_controllen; /* 補助データバッファー長 */\n"
+"    int           msg_flags;      /* フラグ (未使用) */\n"
+"};\n"
+
 #. type: Plain text
-#: build/C/man2/send.2:244
+#: build/C/man2/send.2:269
 msgid ""
-"The definition of the I<msghdr> structure follows.  See B<recv>(2)  and "
-"below for an exact description of its fields."
+"The I<msg_name> field is used on an unconnected socket to specify the target "
+"address for a datagram.  It points to a buffer containing the address; the "
+"I<msg_namelen> field should be set to the size of the address.  For a "
+"connected socket, these fields should be specified as NULL and 0, "
+"respectively."
 msgstr ""
-"I<msghdr> 構造体の内容は以下の通り。 各フィールドの正確な記述については "
-"B<recv>(2)  と以下の説明を参照すること。"
+"フィールド I<msg_name> は、 未接続のソケットでデータグラムの宛先アドレスを指"
+"定するのに使用される。 このフィールドはアドレスを格納したバッファーを指す。 "
+"フィールド I<msg_namelen> にはアドレスの大きさを設定しなければならない。 接続"
+"済のソケットについては、これらのフィールドにはそれぞれ NULL と 0 を指定しなけ"
+"ればならない。"
+
+#. type: Plain text
+#: build/C/man2/send.2:276
+msgid ""
+"The I<msg_iov> and I<msg_iovlen> fields specify scatter-gather locations, as "
+"for B<writev>(2)."
+msgstr ""
+"フィールド B<msg_iov> と I<msg_iovlen> は scatter-gather 用の場所を指定す"
+"る。 B<writev>(2) と同じ。"
 
-#.  Still to be documented:
-#.   Send file descriptors and user credentials using the
-#.   msg_control* fields.
-#.   The flags returned in msg_flags.
 #. type: Plain text
-#: build/C/man2/send.2:273
+#: build/C/man2/send.2:287
 msgid ""
 "You may send control information using the I<msg_control> and "
 "I<msg_controllen> members.  The maximum control buffer length the kernel can "
 "process is limited per socket by the value in I</proc/sys/net/core/"
 "optmem_max>; see B<socket>(7)."
 msgstr ""
-"I<msg_control> と I<msg_controllen> メンバーを使用して制御情報を送信すること"
-"ができる。 カーネルが処理できる制御バッファのソケットあたりの最大長は、 I</"
-"proc/sys/net/core/optmem_max> の値に制限されている。 B<socket>(7)  を参照。"
+"フィールド I<msg_control> と I<msg_controllen> を使用して制御情報を送信するこ"
+"とができる。 カーネルが処理できる制御バッファーのソケットあたりの最大長は、 "
+"I</proc/sys/net/core/optmem_max> の値に制限されている。 B<socket>(7)  を参"
+"照。"
+
+#.  Still to be documented:
+#.   Send file descriptors and user credentials using the
+#.   msg_control* fields.
+#. type: Plain text
+#: build/C/man2/send.2:294
+msgid "The I<msg_flags> field is ignored."
+msgstr "フィールド I<msg_flags> は無視される。"
 
 #. type: Plain text
-#: build/C/man2/send.2:278
+#: build/C/man2/send.2:299
 msgid ""
-"On success, these calls return the number of characters sent.  On error, -1 "
-"is returned, and I<errno> is set appropriately."
+"On success, these calls return the number of bytes sent.  On error, -1 is "
+"returned, and I<errno> is set appropriately."
 msgstr ""
 "成功した場合、これらのシステムコールは送信されたバイト数を返す。 エラーの場"
 "合、 -1 を返し、 I<errno> を適切に設定にする。"
 
 #. type: Plain text
-#: build/C/man2/send.2:283
+#: build/C/man2/send.2:304
 msgid ""
 "These are some standard errors generated by the socket layer.  Additional "
 "errors may be generated and returned from the underlying protocol modules; "
 "see their respective manual pages."
 msgstr ""
 "これらはソケット層で発生する一般的なエラーである。これ以外に、下層の プロトコ"
-"ã\83«ã\83»ã\83¢ã\82¸ã\83¥ã\83¼ã\83«ã\81§ç\94\9fæ\88\90ã\81\95ã\82\8cã\81\9fã\82¨ã\83©ã\83¼ã\81\8cè¿\94ã\81\95ã\82\8cã\82\8bã\81\8bã\82\82ã\81\97ã\82\8cã\81ªã\81\84ã\80\82 ã\81\93ã\82\8cã\82\89ã\81«ã\81¤ã\81\84ã\81¦ã\81¯ã\80\81ã\81\9d"
-"ã\82\8cã\81\9eã\82\8cã\81®ã\83\9eã\83\8bã\83¥ã\82¢ã\83«ã\82\92å\8f\82ç\85§ã\81\99ã\82\8bã\81\93ã\81¨ã\80\82"
+"ã\83«ã\83¢ã\82¸ã\83¥ã\83¼ã\83«ã\81§ç\94\9fæ\88\90ã\81\95ã\82\8cã\81\9fã\82¨ã\83©ã\83¼ã\81\8cè¿\94ã\81\95ã\82\8cã\82\8bã\81\8bã\82\82ã\81\97ã\82\8cã\81ªã\81\84ã\80\82 ã\81\93ã\82\8cã\82\89ã\81«ã\81¤ã\81\84ã\81¦ã\81¯ã\80\81ã\81\9dã\82\8c"
+"ぞれのマニュアルを参照すること。"
 
 #. type: Plain text
-#: build/C/man2/send.2:291
+#: build/C/man2/send.2:312
 msgid ""
 "(For UNIX domain sockets, which are identified by pathname)  Write "
 "permission is denied on the destination socket file, or search permission is "
-"denied for one of the directories the path prefix.  (See B<path_resolution>"
-"(7).)"
+"denied for one of the directories the path prefix.  (See "
+"B<path_resolution>(7).)"
+msgstr ""
+"(UNIX ドメインソケットの場合; パス名で識別される。)\n"
+"\n"
+"ソケットファイルへの書き込み許可がなかったか、パス名へ到達するまでの\n"
+"ディレクトリのいずれかに対する検索許可がなかった。\n"
+"(B<path_resolution>(7) も参照のこと)"
+
+#. type: Plain text
+#: build/C/man2/send.2:315
+msgid ""
+"(For UDP sockets) An attempt was made to send to a network/broadcast address "
+"as though it was a unicast address."
 msgstr ""
-"(UNIX ドメインソケットはパス名で識別される。)  ソケット・ファイルへの書き込み"
-"許可がなかったか、パス名へ 到達するまでのディレクトリのいずれかに対する検索許"
-"可がなかった。 (B<path_resolution>(7)  も参照のこと)"
+"(UDP ソケットの場合) ユニキャストアドレスであるかのように、\n"
+"ネットワークアドレスやブロードキャストアドレスへの送信が試みられた。"
 
 #.  Actually EAGAIN on Linux
 #. type: Plain text
-#: build/C/man2/send.2:299
+#: build/C/man2/send.2:323
 msgid ""
 "The socket is marked nonblocking and the requested operation would block.  "
 "POSIX.1-2001 allows either error to be returned for this case, and does not "
@@ -6215,46 +7254,61 @@ msgstr ""
 "両方の可能性を 確認すべきである。"
 
 #. type: Plain text
-#: build/C/man2/send.2:302
+#: build/C/man2/send.2:336
+msgid ""
+"(Internet domain datagram sockets)  The socket referred to by I<sockfd> had "
+"not previously been bound to an address and, upon attempting to bind it to "
+"an ephemeral port, it was determined that all port numbers in the ephemeral "
+"port range are currently in use.  See the discussion of I</proc/sys/net/ipv4/"
+"ip_local_port_range> in B<ip>(7)."
+msgstr ""
+"(インターネットドメインデータグラムソケットの場合) I<sockfd> が参照するソケッ"
+"トがそれ以前にアドレスにバインドされておらず、 そのソケットに一時ポートをバイ"
+"ンドしようとした際に、 一時ポートとして使用する範囲のポート番号がすべて使用中"
+"であった。 B<ip>(7) の I</proc/sys/net/ipv4/ip_local_port_range> の議論を参照"
+"のこと。"
+
+#. type: Plain text
+#: build/C/man2/send.2:339
 msgid "An invalid descriptor was specified."
 msgstr "無効なディスクリプターが指定された。"
 
 #. type: TP
-#: build/C/man2/send.2:302
+#: build/C/man2/send.2:339
 #, no-wrap
 msgid "B<ECONNRESET>"
 msgstr "B<ECONNRESET>"
 
 #. type: Plain text
-#: build/C/man2/send.2:305
+#: build/C/man2/send.2:342
 msgid "Connection reset by peer."
 msgstr "接続が接続相手によりリセットされた。"
 
 #. type: TP
-#: build/C/man2/send.2:305
+#: build/C/man2/send.2:342
 #, no-wrap
 msgid "B<EDESTADDRREQ>"
 msgstr "B<EDESTADDRREQ>"
 
 #. type: Plain text
-#: build/C/man2/send.2:308
+#: build/C/man2/send.2:345
 msgid "The socket is not connection-mode, and no peer address is set."
 msgstr ""
 "ソケットが接続型 (connection-mode) ではなく、 かつ送信先のアドレスが設定され"
 "ていない。"
 
 #. type: Plain text
-#: build/C/man2/send.2:311
+#: build/C/man2/send.2:348
 msgid "An invalid user space address was specified for an argument."
 msgstr "ユーザー空間として不正なアドレスがパラメーターとして指定された。"
 
 #. type: Plain text
-#: build/C/man2/send.2:315
+#: build/C/man2/send.2:352
 msgid "A signal occurred before any data was transmitted; see B<signal>(7)."
 msgstr "データが送信される前に、シグナルが発生した。 B<signal>(7)  参照。"
 
 #. type: Plain text
-#: build/C/man2/send.2:324
+#: build/C/man2/send.2:361
 msgid ""
 "The connection-mode socket was connected already but a recipient was "
 "specified.  (Now either this error is returned, or the recipient "
@@ -6265,14 +7319,14 @@ msgstr ""
 "いずれかとなる)"
 
 #. type: TP
-#: build/C/man2/send.2:324
+#: build/C/man2/send.2:361
 #, no-wrap
 msgid "B<EMSGSIZE>"
 msgstr "B<EMSGSIZE>"
 
 #.  (e.g., SOCK_DGRAM )
 #. type: Plain text
-#: build/C/man2/send.2:330
+#: build/C/man2/send.2:367
 msgid ""
 "The socket type requires that message be sent atomically, and the size of "
 "the message to be sent made this impossible."
@@ -6281,61 +7335,61 @@ msgstr ""
 "るが、 メッセージが大き過ぎるため送信することができない。"
 
 #. type: Plain text
-#: build/C/man2/send.2:338
+#: build/C/man2/send.2:375
 msgid ""
 "The output queue for a network interface was full.  This generally indicates "
 "that the interface has stopped sending, but may be caused by transient "
 "congestion.  (Normally, this does not occur in Linux.  Packets are just "
 "silently dropped when a device queue overflows.)"
 msgstr ""
-"ã\83\8dã\83\83ã\83\88ã\83¯ã\83¼ã\82¯ã\83»ã\82¤ã\83³ã\82¿ã\83¼ã\83\95ã\82§ã\83¼ã\82¹ã\81®å\87ºå\8a\9bã\82­ã\83¥ã\83¼ã\81\8cä¸\80æ\9d¯ã\81§ã\81\82ã\82\8bã\80\82 ä¸\80è\88¬ç\9a\84ã\81«ã\81¯ã\80\81ä¸\80æ\99\82ç\9a\84ã\81ª"
-"輻輳 (congestion) ã\81®ã\81\9fã\82\81ã\81«ã\82¤ã\83³ã\82¿ã\83¼ã\83\95ã\82§ã\83¼ã\82¹ã\81\8c é\80\81ä¿¡ã\82\92æ­¢ã\82\81ã\81¦ã\81\84ã\82\8bã\81\93ã\81¨ã\82\92æ\84\8få\91³ã\81\99"
-"る。 (通常、Linux ではこのようなことは起こらない。デバイスのキューが オーバー"
-"ã\83\95ã\83­ã\83¼ã\81\97ã\81\9få ´å\90\88ã\81«ã\81¯ã\83\91ã\82±ã\83\83ã\83\88ã\81¯é»\99ã\81£ã\81¦æ\8d¨ã\81¦ã\82\89ã\82\8cã\82\8b)"
+"ã\83\8dã\83\83ã\83\88ã\83¯ã\83¼ã\82¯ã\82¤ã\83³ã\82¿ã\83¼ã\83\95ã\82§ã\83¼ã\82¹ã\81®å\87ºå\8a\9bã\82­ã\83¥ã\83¼ã\81\8cä¸\80æ\9d¯ã\81§ã\81\82ã\82\8bã\80\82 ä¸\80è\88¬ç\9a\84ã\81«ã\81¯ã\80\81ä¸\80æ\99\82ç\9a\84ã\81ªè¼»"
+"è¼³ (congestion) ã\81®ã\81\9fã\82\81ã\81«ã\82¤ã\83³ã\82¿ã\83¼ã\83\95ã\82§ã\83¼ã\82¹ã\81\8c é\80\81ä¿¡ã\82\92æ­¢ã\82\81ã\81¦ã\81\84ã\82\8bã\81\93ã\81¨ã\82\92æ\84\8få\91³ã\81\99ã\82\8bã\80\82 "
+"(通常、Linux ではこのようなことは起こらない。デバイスのキューが オーバーフ"
+"ローした場合にはパケットは黙って捨てられる)"
 
 #. type: Plain text
-#: build/C/man2/send.2:341
+#: build/C/man2/send.2:378
 msgid "No memory available."
-msgstr "メモリが足りない。"
+msgstr "ã\83¡ã\83¢ã\83ªã\83¼ã\81\8c足ã\82\8aã\81ªã\81\84ã\80\82"
 
 #. type: Plain text
-#: build/C/man2/send.2:344
+#: build/C/man2/send.2:381
 msgid "The socket is not connected, and no target has been given."
 msgstr "ソケットが接続されておらず、接続先も指定されていない。"
 
 #. type: Plain text
-#: build/C/man2/send.2:354
+#: build/C/man2/send.2:391
 msgid "Some bit in the I<flags> argument is inappropriate for the socket type."
 msgstr ""
 "引き数 I<flags> のいくつかのビットが、そのソケット種別では不適切なものであ"
 "る。"
 
 #. type: TP
-#: build/C/man2/send.2:354
+#: build/C/man2/send.2:391
 #, no-wrap
 msgid "B<EPIPE>"
 msgstr "B<EPIPE>"
 
 #. type: Plain text
-#: build/C/man2/send.2:363
+#: build/C/man2/send.2:400
 msgid ""
 "The local end has been shut down on a connection oriented socket.  In this "
-"case the process will also receive a B<SIGPIPE> unless B<MSG_NOSIGNAL> is "
+"case, the process will also receive a B<SIGPIPE> unless B<MSG_NOSIGNAL> is "
 "set."
 msgstr ""
 "接続指向のソケットでローカル側が閉じられている。 この場合、 B<MSG_NOSIGNAL> "
 "が設定されていなければ、プロセスには B<SIGPIPE> も同時に送られる。"
 
 #. type: Plain text
-#: build/C/man2/send.2:366
+#: build/C/man2/send.2:403
 msgid "4.4BSD, SVr4, POSIX.1-2001.  These function calls appeared in 4.2BSD."
 msgstr ""
 "4.4BSD, SVr4, POSIX.1-2001.  (これらの関数コールは 4.2BSD で最初に登場した)。"
 
 #. type: Plain text
-#: build/C/man2/send.2:377
+#: build/C/man2/send.2:414
 msgid ""
-"POSIX.1-2001 only describes the B<MSG_OOB> and B<MSG_EOR> flags.  "
+"POSIX.1-2001 describes only the B<MSG_OOB> and B<MSG_EOR> flags.  "
 "POSIX.1-2008 adds a specification of B<MSG_NOSIGNAL>.  The B<MSG_CONFIRM> "
 "flag is a Linux extension."
 msgstr ""
@@ -6344,24 +7398,9 @@ msgstr ""
 "ラグは Linux での拡張である。"
 
 #. type: Plain text
-#: build/C/man2/send.2:390
-msgid ""
-"The prototypes given above follow the Single UNIX Specification, as glibc2 "
-"also does; the I<flags> argument was I<int> in 4.x BSD, but I<unsigned int> "
-"in libc4 and libc5; the I<len> argument was I<int> in 4.x BSD and libc4, but "
-"I<size_t> in libc5; the I<addrlen> argument was I<int> in 4.x BSD and libc4 "
-"and libc5.  See also B<accept>(2)."
-msgstr ""
-"上記のプロトタイプは Single UNIX Specification に従っている。 glibc2 も同様で"
-"ある。 I<flags> 引き数は 4.x BSD では I<int> であり、 libc4 と libc5 では "
-"I<unsigned int> である。 I<len> 引き数は 4.x BSD と libc4 では I<int> であ"
-"り、 libc5 では I<size_t> である。 I<addrlen> 引き数は 4.x BSD と libc4 と "
-"libc5 では I<int> である。 B<accept>(2)  も参照すること。"
-
-#. type: Plain text
-#: build/C/man2/send.2:409
+#: build/C/man2/send.2:433
 msgid ""
-"See B<sendmmsg(2)> for information about a Linux-specific system call that "
+"See B<sendmmsg>(2)  for information about a Linux-specific system call that "
 "can be used to transmit multiple datagrams in a single call."
 msgstr ""
 "B<sendmmsg>(2)  には、一度の呼び出しでの複数のデータグラムの送信に使用でき"
@@ -6369,25 +7408,25 @@ msgstr ""
 "Linux 固有の システムコールに関する情報が書かれている。"
 
 #. type: Plain text
-#: build/C/man2/send.2:414
+#: build/C/man2/send.2:438
 msgid "Linux may return B<EPIPE> instead of B<ENOTCONN>."
 msgstr "Linux は B<ENOTCONN> を返す状況で B<EPIPE> を返すことがある。"
 
 #. type: Plain text
-#: build/C/man2/send.2:419
+#: build/C/man2/send.2:443
 msgid "An example of the use of B<sendto>()  is shown in B<getaddrinfo>(3)."
 msgstr "B<sendto>()  の利用例が B<getaddrinfo>(3)  に記載されている。"
 
 #. type: Plain text
-#: build/C/man2/send.2:433
+#: build/C/man2/send.2:458
 msgid ""
 "B<fcntl>(2), B<getsockopt>(2), B<recv>(2), B<select>(2), B<sendfile>(2), "
-"B<sendmmsg>(2), B<shutdown>(2), B<socket>(2), B<write>(2), B<cmsg>(3), B<ip>"
-"(7), B<socket>(7), B<tcp>(7), B<udp>(7)"
+"B<sendmmsg>(2), B<shutdown>(2), B<socket>(2), B<write>(2), B<cmsg>(3), "
+"B<ip>(7), B<socket>(7), B<tcp>(7), B<udp>(7)"
 msgstr ""
 "B<fcntl>(2), B<getsockopt>(2), B<recv>(2), B<select>(2), B<sendfile>(2), "
-"B<sendmmsg>(2), B<shutdown>(2), B<socket>(2), B<write>(2), B<cmsg>(3), B<ip>"
-"(7), B<socket>(7), B<tcp>(7), B<udp>(7)"
+"B<sendmmsg>(2), B<shutdown>(2), B<socket>(2), B<write>(2), B<cmsg>(3), "
+"B<ip>(7), B<socket>(7), B<tcp>(7), B<udp>(7)"
 
 #. type: TH
 #: build/C/man2/sendmmsg.2:28
@@ -6395,10 +7434,16 @@ msgstr ""
 msgid "SENDMMSG"
 msgstr "SENDMMSG"
 
+#. type: TH
+#: build/C/man2/sendmmsg.2:28 build/C/man7/socket.7:58
+#, no-wrap
+msgid "2014-07-08"
+msgstr "2014-07-08"
+
 #. type: Plain text
 #: build/C/man2/sendmmsg.2:31
 msgid "sendmmsg - send multiple messages on a socket"
-msgstr ""
+msgstr "sendmmsg - 複数のメッセージをソケットへ送信する"
 
 #. type: Plain text
 #: build/C/man2/sendmmsg.2:39
@@ -6418,6 +7463,9 @@ msgid ""
 "the caller to transmit multiple messages on a socket using a single system "
 "call.  (This has performance benefits for some applications.)"
 msgstr ""
+"B<sendmmsg>() システムコールは B<sendmsg>(2) の拡張で、 このシステムコールを"
+"使うと一度の呼び出しでソケットに複数のメッセージを送信できる (アプリケーショ"
+"ンによっては性能上のメリットがある)。"
 
 #. type: Plain text
 #: build/C/man2/sendmmsg.2:54
@@ -6425,6 +7473,8 @@ msgid ""
 "The I<sockfd> argument is the file descriptor of the socket on which data is "
 "to be transmitted."
 msgstr ""
+"I<sockfd> 引き数は、 データを送信するソケットのファイルディスクリプターであ"
+"る。"
 
 #. type: Plain text
 #: build/C/man2/sendmmsg.2:75
@@ -6435,15 +7485,23 @@ msgid ""
 "    unsigned int  msg_len;  /* Number of bytes transmitted */\n"
 "};\n"
 msgstr ""
+"struct mmsghdr {\n"
+"    struct msghdr msg_hdr;  /* メッセージヘッダー */\n"
+"    unsigned int  msg_len;  /* 送信されたバイト数 */\n"
+"};\n"
 
 #. type: Plain text
 #: build/C/man2/sendmmsg.2:91
 msgid ""
-"The I<msg_hdr> field is a I<msghdr> structure, as described in B<sendmsg>"
-"(2).  The I<msg_len> field is used to return the number of bytes sent from "
-"the message in I<msg_hdr> (i.e., the same as the return value from a single "
-"B<sendmsg>(2)  call)."
+"The I<msg_hdr> field is a I<msghdr> structure, as described in "
+"B<sendmsg>(2).  The I<msg_len> field is used to return the number of bytes "
+"sent from the message in I<msg_hdr> (i.e., the same as the return value from "
+"a single B<sendmsg>(2)  call)."
 msgstr ""
+"I<msg_hdr> フィールドは、 B<sendmsg>(2) で説明されている I<msghdr> 構造体であ"
+"る。 I<msg_len> フィールドは I<msg_hdr> から送信されたメッセージのバイト数を"
+"返すのに使用される。 この値は B<sendmsg>(2) をこのヘッダーに対して呼び出した"
+"場合の返り値と同じである。"
 
 #. type: Plain text
 #: build/C/man2/sendmmsg.2:97
@@ -6451,6 +7509,8 @@ msgid ""
 "The I<flags> argument contains flags ORed together.  The flags are the same "
 "as for B<sendmsg>(2)."
 msgstr ""
+"I<flags> 引き数には複数のフラグを論理和 (OR) で指定できる。フラグは "
+"B<sendmsg>(2) と同じである。"
 
 #. type: Plain text
 #: build/C/man2/sendmmsg.2:107
@@ -6459,101 +7519,269 @@ msgid ""
 "sent.  A nonblocking call sends as many messages as possible (up to the "
 "limit specified by I<vlen>)  and returns immediately."
 msgstr ""
+"停止 (blocking) モードの B<sendmmsg>() の呼び出しは、 I<vlen> 個のメッセージ"
+"が送信されるまで停止する。 非停止 (nonblocking) モードの呼び出しでは、 送信で"
+"きるだけのメッセージ (最大で I<vlen> 個) を送信し、 すぐに返る。"
 
 #. type: Plain text
 #: build/C/man2/sendmmsg.2:119
 msgid ""
-"On return from B<sendmmsg>(), the I<msg_len> fields of successive elements "
-"of I<msgvec> are updated to contain the number of bytes transmitted from the "
-"corresponding I<msg_hdr>.  The return value of the call indicates the number "
-"of elements of I<msgvec> that have been updated."
+"On return from B<sendmmsg>(), the I<msg_len> fields of successive elements "
+"of I<msgvec> are updated to contain the number of bytes transmitted from the "
+"corresponding I<msg_hdr>.  The return value of the call indicates the number "
+"of elements of I<msgvec> that have been updated."
+msgstr ""
+"B<sendmmsg>() が返った際には、 I<msgvec> の送信が行われた要素の I<msg_len> "
+"フィールドは、対応する I<msg_hdr> から送信されたバイト数が入っている。 呼び出"
+"しの返り値は、更新された I<msgvec> の要素数である。"
+
+#. type: Plain text
+#: build/C/man2/sendmmsg.2:129
+msgid ""
+"On success, B<sendmmsg>()  returns the number of messages sent from "
+"I<msgvec>; if this is less than I<vlen>, the caller can retry with a further "
+"B<sendmmsg>()  call to send the remaining messages."
+msgstr ""
+"成功すると、 B<sendmmsg>() は I<msgvec> から送信されたメッセージ数を返す。 返"
+"り値が I<vlen> よりも小さい場合、 呼び出した側では再度 B<sendmmsg> を呼び出し"
+"て残りのメッセージを送信することができる。"
+
+#. type: Plain text
+#: build/C/man2/sendmmsg.2:133
+msgid "On error, -1 is returned, and I<errno> is set to indicate the error."
+msgstr "エラーの場合、 -1 を返し、 I<errno> にエラーを示す値を設定する。"
+
+#
+#.  commit 728ffb86f10873aaf4abd26dde691ee40ae731fe
+#.      ... only return an error if no datagrams could be sent.
+#.      If less than the requested number of messages were sent, the application
+#.      must retry starting at the first failed one and if the problem is
+#.      persistent the error will be returned.
+#.      This matches the behavior of other syscalls like read/write - it
+#.      is not an error if less than the requested number of elements are sent.
+#. type: Plain text
+#: build/C/man2/sendmmsg.2:145
+msgid ""
+"Errors are as for B<sendmsg>(2).  An error is returned only if no datagrams "
+"could be sent."
+msgstr ""
+"エラーは B<sendmsg>(2) と同じである。 エラーが返されるのは、 データグラムが全"
+"く送信できなかった場合のみである。"
+
+#. type: Plain text
+#: build/C/man2/sendmmsg.2:150
+msgid ""
+"The B<sendmmsg>()  system call was added in Linux 3.0.  Support in glibc was "
+"added in version 2.14."
+msgstr ""
+"B<sendmmsg>() システムコールは Linux 3.0 で追加された。 glibc でのサポートは"
+"バージョン 2.14 で追加された。"
+
+#. type: Plain text
+#: build/C/man2/sendmmsg.2:153
+msgid "B<sendmmsg>()  is Linux-specific."
+msgstr "B<sendmmsg>() は Linux 固有である。"
+
+#
+#
+#.  commit 98382f419f32d2c12d021943b87dea555677144b
+#.      net: Cap number of elements for sendmmsg
+#.      To limit the amount of time we can spend in sendmmsg, cap the
+#.      number of elements to UIO_MAXIOV (currently 1024).
+#.      For error handling an application using sendmmsg needs to retry at
+#.      the first unsent message, so capping is simpler and requires less
+#.      application logic than returning EINVAL.
+#. type: Plain text
+#: build/C/man2/sendmmsg.2:168
+msgid "The value specified in I<vlen> is capped to B<UIO_MAXIOV> (1024)."
+msgstr "I<vlen> に指定できる値の最大値は B<UIO_MAXIOV> (1024) である。"
+
+#. type: Plain text
+#: build/C/man2/sendmmsg.2:177
+msgid ""
+"The example below uses B<sendmmsg>()  to send I<onetwo> and I<three> in two "
+"distinct UDP datagrams using one system call.  The contents of the first "
+"datagram originates from a pair of buffers."
+msgstr ""
+"以下の例では、 B<sendmmsg>() を使って、 一度のシステムコールで、 I<onetwo> "
+"と I<three> を二つの別々の UDP データグラムで送信する。 一つ目のデータグラム"
+"の内容は、二つのバッファーから取得される。"
+
+#. type: Plain text
+#: build/C/man2/sendmmsg.2:186
+#, no-wrap
+msgid ""
+"#define _GNU_SOURCE\n"
+"#include E<lt>netinet/ip.hE<gt>\n"
+"#include E<lt>stdio.hE<gt>\n"
+"#include E<lt>stdlib.hE<gt>\n"
+"#include E<lt>string.hE<gt>\n"
+"#include E<lt>sys/types.hE<gt>\n"
+"#include E<lt>sys/socket.hE<gt>\n"
+msgstr ""
+"#define _GNU_SOURCE\n"
+"#include E<lt>netinet/ip.hE<gt>\n"
+"#include E<lt>stdio.hE<gt>\n"
+"#include E<lt>stdlib.hE<gt>\n"
+"#include E<lt>string.hE<gt>\n"
+"#include E<lt>sys/types.hE<gt>\n"
+"#include E<lt>sys/socket.hE<gt>\n"
+
+#. type: Plain text
+#: build/C/man2/sendmmsg.2:195
+#, no-wrap
+msgid ""
+"int\n"
+"main(void)\n"
+"{\n"
+"    int sockfd;\n"
+"    struct sockaddr_in sa;\n"
+"    struct mmsghdr msg[2];\n"
+"    struct iovec msg1[2], msg2;\n"
+"    int retval;\n"
+msgstr ""
+"int\n"
+"main(void)\n"
+"{\n"
+"    int sockfd;\n"
+"    struct sockaddr_in sa;\n"
+"    struct mmsghdr msg[2];\n"
+"    struct iovec msg1[2], msg2;\n"
+"    int retval;\n"
+
+#. type: Plain text
+#: build/C/man2/sendmmsg.2:209
+#, no-wrap
+msgid ""
+"    sa.sin_family = AF_INET;\n"
+"    sa.sin_addr.s_addr = htonl(INADDR_LOOPBACK);\n"
+"    sa.sin_port = htons(1234);\n"
+"    if (connect(sockfd, (struct sockaddr *) &sa, sizeof(sa)) == -1) {\n"
+"        perror(\"connect()\");\n"
+"        exit(EXIT_FAILURE);\n"
+"    }\n"
 msgstr ""
+"    sa.sin_family = AF_INET;\n"
+"    sa.sin_addr.s_addr = htonl(INADDR_LOOPBACK);\n"
+"    sa.sin_port = htons(1234);\n"
+"    if (connect(sockfd, (struct sockaddr *) &sa, sizeof(sa)) == -1) {\n"
+"        perror(\"connect()\");\n"
+"        exit(EXIT_FAILURE);\n"
+"    }\n"
 
 #. type: Plain text
-#: build/C/man2/sendmmsg.2:129
+#: build/C/man2/sendmmsg.2:215
+#, no-wrap
 msgid ""
-"On success, B<sendmmsg>()  returns the number of messages sent from "
-"I<msgvec>; if this is less than I<vlen>, the caller can retry with a further "
-"B<sendmmsg>()  call to send the remaining messages."
+"    memset(msg1, 0, sizeof(msg1));\n"
+"    msg1[0].iov_base = \"one\";\n"
+"    msg1[0].iov_len = 3;\n"
+"    msg1[1].iov_base = \"two\";\n"
+"    msg1[1].iov_len = 3;\n"
 msgstr ""
+"    memset(msg1, 0, sizeof(msg1));\n"
+"    msg1[0].iov_base = \"one\";\n"
+"    msg1[0].iov_len = 3;\n"
+"    msg1[1].iov_base = \"two\";\n"
+"    msg1[1].iov_len = 3;\n"
 
 #. type: Plain text
-#: build/C/man2/sendmmsg.2:133
-msgid "On error, -1 is returned, and I<errno> is set to indicate the error."
+#: build/C/man2/sendmmsg.2:219
+#, no-wrap
+msgid ""
+"    memset(&msg2, 0, sizeof(msg2));\n"
+"    msg2.iov_base = \"three\";\n"
+"    msg2.iov_len = 5;\n"
 msgstr ""
+"    memset(&msg2, 0, sizeof(msg2));\n"
+"    msg2.iov_base = \"three\";\n"
+"    msg2.iov_len = 5;\n"
 
-#
-#.  commit 728ffb86f10873aaf4abd26dde691ee40ae731fe
-#.      ... only return an error if no datagrams could be sent.
-#.      If less than the requested number of messages were sent, the application
-#.      must retry starting at the first failed one and if the problem is
-#.      persistent the error will be returned.
-#.      This matches the behaviour of other syscalls like read/write - it
-#.      is not an error if less than the requested number of elements are sent.
 #. type: Plain text
-#: build/C/man2/sendmmsg.2:145
+#: build/C/man2/sendmmsg.2:223
+#, no-wrap
 msgid ""
-"Errors are as for B<sendmsg>(2).  An error is returned only if no datagrams "
-"could be sent."
+"    memset(msg, 0, sizeof(msg));\n"
+"    msg[0].msg_hdr.msg_iov = msg1;\n"
+"    msg[0].msg_hdr.msg_iovlen = 2;\n"
 msgstr ""
+"    memset(msg, 0, sizeof(msg));\n"
+"    msg[0].msg_hdr.msg_iov = msg1;\n"
+"    msg[0].msg_hdr.msg_iovlen = 2;\n"
 
 #. type: Plain text
-#: build/C/man2/sendmmsg.2:150
+#: build/C/man2/sendmmsg.2:226
+#, no-wrap
 msgid ""
-"The B<sendmmsg>()  system call was added in Linux 3.0.  Support in glibc was "
-"added in version 2.14."
+"    msg[1].msg_hdr.msg_iov = &msg2;\n"
+"    msg[1].msg_hdr.msg_iovlen = 1;\n"
 msgstr ""
+"    msg[1].msg_hdr.msg_iov = &msg2;\n"
+"    msg[1].msg_hdr.msg_iovlen = 1;\n"
 
 #. type: Plain text
-#: build/C/man2/sendmmsg.2:153
-msgid "B<sendmmsg>()  is Linux-specific."
+#: build/C/man2/sendmmsg.2:232
+#, no-wrap
+msgid ""
+"    retval = sendmmsg(sockfd, msg, 2, 0);\n"
+"    if (retval == -1)\n"
+"        perror(\"sendmmsg()\");\n"
+"    else\n"
+"        printf(\"%d messages sent\\en\", retval);\n"
 msgstr ""
+"    retval = sendmmsg(sockfd, msg, 2, 0);\n"
+"    if (retval == -1)\n"
+"        perror(\"sendmmsg()\");\n"
+"    else\n"
+"        printf(\"%d messages sent\\en\", retval);\n"
 
-#
-#
-#.  commit 98382f419f32d2c12d021943b87dea555677144b
-#.      net: Cap number of elements for sendmmsg
-#.      To limit the amount of time we can spend in sendmmsg, cap the
-#.      number of elements to UIO_MAXIOV (currently 1024).
-#.      For error handling an application using sendmmsg needs to retry at
-#.      the first unsent message, so capping is simpler and requires less
-#.      application logic than returning EINVAL.
 #. type: Plain text
-#: build/C/man2/sendmmsg.2:168
-msgid "The value specified in I<vlen> is capped to B<UIO_MAXIOV> (1024)."
+#: build/C/man2/sendmmsg.2:235
+#, no-wrap
+msgid ""
+"    exit(0);\n"
+"}\n"
 msgstr ""
+"    exit(0);\n"
+"}\n"
 
 #. type: Plain text
-#: build/C/man2/sendmmsg.2:172
+#: build/C/man2/sendmmsg.2:241
 msgid "B<recvmmsg>(2), B<sendmsg>(2), B<socket>(2), B<socket>(7)"
 msgstr "B<recvmmsg>(2), B<sendmsg>(2), B<socket>(2), B<socket>(7)"
 
 #. type: TH
-#: build/C/man3/sockatmark.3:23
+#: build/C/man3/sockatmark.3:25
 #, no-wrap
 msgid "SOCKATMARK"
 msgstr "SOCKATMARK"
 
+#. type: TH
+#: build/C/man3/sockatmark.3:25
+#, no-wrap
+msgid "2014-02-28"
+msgstr "2014-02-28"
+
 #. type: Plain text
-#: build/C/man3/sockatmark.3:26
+#: build/C/man3/sockatmark.3:28
 msgid "sockatmark - determine whether socket is at out-of-band mark"
 msgstr ""
 "sockatmark - どのソケットに帯域外 (out-of-band) マークが付けられているかを調"
 "べる"
 
 #. type: Plain text
-#: build/C/man3/sockatmark.3:28 build/C/man2/socket.2:48
-#: build/C/man7/socket.7:31 build/C/man2/socketpair.2:47
+#: build/C/man3/sockatmark.3:30 build/C/man2/socket.2:50
+#: build/C/man7/socket.7:63 build/C/man2/socketpair.2:49
 msgid "B<#include E<lt>sys/socket.hE<gt>>"
 msgstr "B<#include E<lt>sys/socket.hE<gt>>"
 
 #. type: Plain text
-#: build/C/man3/sockatmark.3:30
+#: build/C/man3/sockatmark.3:32
 msgid "B<int sockatmark(int >I<sockfd>B<);>"
 msgstr "B<int sockatmark(int >I<sockfd>B<);>"
 
 #. type: Plain text
-#: build/C/man3/sockatmark.3:39
+#: build/C/man3/sockatmark.3:41
 msgid ""
 "B<sockatmark>(): _POSIX_C_SOURCE\\ E<gt>=\\ 200112L || _XOPEN_SOURCE\\ E<gt>="
 "\\ 600"
@@ -6562,20 +7790,20 @@ msgstr ""
 "\\ 600"
 
 #. type: Plain text
-#: build/C/man3/sockatmark.3:49
+#: build/C/man3/sockatmark.3:51
 msgid ""
 "B<sockatmark>()  returns a value indicating whether or not the socket "
 "referred to by the file descriptor I<sockfd> is at the out-of-band mark.  If "
 "the socket is at the mark, then 1 is returned; if the socket is not at the "
 "mark, 0 is returned.  This function does not remove the out-of-band mark."
 msgstr ""
-"B<sockatmark>()  はファイルディスクリプタ I<sockfd> で参照されるソケットに帯"
-"å\9f\9få¤\96ã\83\9eã\83¼ã\82¯ã\81\8cä»\98ã\81\91ã\82\89ã\82\8cã\81¦ã\81\84ã\82\8bã\81\8bå\90¦ã\81\8bã\82\92è¿\94ã\81\99ã\80\82 ã\82½ã\82±ã\83\83ã\83\88ã\81«ã\83\9eã\83¼ã\82¯ã\81\8cä»\98ã\81\91ã\82\89ã\82\8cã\81¦ã\81\84ã\82\8bå ´å\90\88"
-"は、1 が返される。 ソケットにマークが付けられていない場合は、0 が返される。 "
-"この関数は帯域外マークを削除しない。"
+"B<sockatmark>()  はファイルディスクリプター I<sockfd> で参照されるソケットに"
+"帯å\9f\9få¤\96ã\83\9eã\83¼ã\82¯ã\81\8cä»\98ã\81\91ã\82\89ã\82\8cã\81¦ã\81\84ã\82\8bã\81\8bå\90¦ã\81\8bã\82\92è¿\94ã\81\99ã\80\82 ã\82½ã\82±ã\83\83ã\83\88ã\81«ã\83\9eã\83¼ã\82¯ã\81\8cä»\98ã\81\91ã\82\89ã\82\8cã\81¦ã\81\84ã\82\8bå ´"
+"合は、1 が返される。 ソケットにマークが付けられていない場合は、0 が返され"
+"ã\82\8bã\80\82 ã\81\93ã\81®é\96¢æ\95°ã\81¯å¸¯å\9f\9få¤\96ã\83\9eã\83¼ã\82¯ã\82\92å\89\8aé\99¤ã\81\97ã\81ªã\81\84ã\80\82"
 
 #. type: Plain text
-#: build/C/man3/sockatmark.3:54
+#: build/C/man3/sockatmark.3:58
 msgid ""
 "A successful call to B<sockatmark>()  returns 1 if the socket is at the out-"
 "of-band mark, or 0 if it is not.  On error, -1 is returned and I<errno> is "
@@ -6586,30 +7814,35 @@ msgstr ""
 "れ、エラーを表す I<errno> が設定される。"
 
 #. type: Plain text
-#: build/C/man3/sockatmark.3:59
+#: build/C/man3/sockatmark.3:63
 msgid "I<sockfd> is not a valid file descriptor."
-msgstr "I<sockfd> が有効なファイルディスクリプタでない。"
+msgstr "I<sockfd> ã\81\8cæ\9c\89å\8a¹ã\81ªã\83\95ã\82¡ã\82¤ã\83«ã\83\87ã\82£ã\82¹ã\82¯ã\83ªã\83\97ã\82¿ã\83¼ã\81§ã\81ªã\81\84ã\80\82"
 
 #.  POSIX.1 says ENOTTY for this case
 #. type: Plain text
-#: build/C/man3/sockatmark.3:66
+#: build/C/man3/sockatmark.3:70
 msgid ""
 "I<sockfd> is not a file descriptor to which B<sockatmark>()  can be applied."
 msgstr ""
-"I<sockfd> は B<sockatmark>()  が適用できないファイルディスクリプタである。"
+"I<sockfd> ã\81¯ B<sockatmark>()  ã\81\8cé\81©ç\94¨ã\81§ã\81\8dã\81ªã\81\84ã\83\95ã\82¡ã\82¤ã\83«ã\83\87ã\82£ã\82¹ã\82¯ã\83ªã\83\97ã\82¿ã\83¼ã\81§ã\81\82ã\82\8bã\80\82"
 
 #. type: Plain text
-#: build/C/man3/sockatmark.3:69
+#: build/C/man3/sockatmark.3:73
 msgid "B<sockatmark>()  was added to glibc in version 2.2.4."
 msgstr "B<sockatmark>()  は glibc バージョン 2.2.4 で追加された。"
 
 #. type: Plain text
-#: build/C/man3/sockatmark.3:71
+#: build/C/man3/sockatmark.3:78
+msgid "The B<sockatmark>()  function is thread-safe."
+msgstr "B<sockatmark>() 関数はスレッドセーフである。"
+
+#. type: Plain text
+#: build/C/man3/sockatmark.3:80
 msgid "POSIX.1-2001."
 msgstr "POSIX.1-2001."
 
 #. type: Plain text
-#: build/C/man3/sockatmark.3:78
+#: build/C/man3/sockatmark.3:87
 msgid ""
 "If B<sockatmark>()  returns 1, then the out-of-band data can be read using "
 "the B<MSG_OOB> flag of B<recv>(2)."
@@ -6618,23 +7851,23 @@ msgstr ""
 "B<recv>(2)  で読み込むことができる。"
 
 #. type: Plain text
-#: build/C/man3/sockatmark.3:80
-msgid "Out-of-band data is only supported on some stream socket protocols."
+#: build/C/man3/sockatmark.3:89
+msgid "Out-of-band data is supported only on some stream socket protocols."
 msgstr ""
 "帯域外データは、いくつかのストリームソケットプロトコルでしか サポートされてい"
 "ない。"
 
 #. type: Plain text
-#: build/C/man3/sockatmark.3:85
+#: build/C/man3/sockatmark.3:94
 msgid ""
 "B<sockatmark>()  can safely be called from a handler for the B<SIGURG> "
 "signal."
 msgstr ""
-"B<sockatmark>()  ã\81¯ B<SIGURG> ã\82·ã\82°ã\83\8aã\83«ã\81®ã\83\8fã\83³ã\83\89ã\83©ã\81\8bã\82\89å®\89å\85¨ã\81«å\91¼ã\81³å\87ºã\81\99ã\81\93ã\81¨ã\81\8cã\81§ã\81\8d"
-"る。"
+"B<sockatmark>()  ã\81¯ B<SIGURG> ã\82·ã\82°ã\83\8aã\83«ã\81®ã\83\8fã\83³ã\83\89ã\83©ã\83¼ã\81\8bã\82\89å®\89å\85¨ã\81«å\91¼ã\81³å\87ºã\81\99ã\81\93ã\81¨ã\81\8cã\81§"
+"ã\81\8dã\82\8bã\80\82"
 
 #. type: Plain text
-#: build/C/man3/sockatmark.3:91
+#: build/C/man3/sockatmark.3:100
 msgid ""
 "B<sockatmark>()  is implemented using the B<SIOCATMARK> B<ioctl>(2)  "
 "operation."
@@ -6642,12 +7875,12 @@ msgstr ""
 "B<sockatmark>()  は B<SIOCATMARK> B<ioctl>(2)  操作を使って実装されている。"
 
 #. type: Plain text
-#: build/C/man3/sockatmark.3:95
+#: build/C/man3/sockatmark.3:104
 msgid "Prior to glibc 2.4, B<sockatmark>()  did not work."
 msgstr "glibc 2.4 より前のバージョンでは、 B<sockatmark>()  は動作しない。"
 
 #. type: Plain text
-#: build/C/man3/sockatmark.3:100
+#: build/C/man3/sockatmark.3:109
 msgid ""
 "The following code can be used after receipt of a B<SIGURG> signal to read "
 "(and discard) all data up to the mark, and then read the byte of data at the "
@@ -6657,7 +7890,7 @@ msgstr ""
 "読み込んで (破棄し)、 マークされたデータのバイトを読み込むのに使用できる。"
 
 #. type: Plain text
-#: build/C/man3/sockatmark.3:105
+#: build/C/man3/sockatmark.3:114
 #, no-wrap
 msgid ""
 "    char buf[BUF_LEN];\n"
@@ -6669,7 +7902,7 @@ msgstr ""
 "    int atmark, s;\n"
 
 #. type: Plain text
-#: build/C/man3/sockatmark.3:112
+#: build/C/man3/sockatmark.3:121
 #, no-wrap
 msgid ""
 "    for (;;) {\n"
@@ -6687,7 +7920,7 @@ msgstr ""
 "        }\n"
 
 #. type: Plain text
-#: build/C/man3/sockatmark.3:115
+#: build/C/man3/sockatmark.3:124
 #, no-wrap
 msgid ""
 "        if (atmark)\n"
@@ -6697,7 +7930,7 @@ msgstr ""
 "            break;\n"
 
 #. type: Plain text
-#: build/C/man3/sockatmark.3:122
+#: build/C/man3/sockatmark.3:131
 #, no-wrap
 msgid ""
 "        s = read(sockfd, buf, BUF_LEN) E<lt>= 0);\n"
@@ -6715,7 +7948,7 @@ msgstr ""
 "    }\n"
 
 #. type: Plain text
-#: build/C/man3/sockatmark.3:129
+#: build/C/man3/sockatmark.3:138
 #, no-wrap
 msgid ""
 "    if (atmark == 1) {\n"
@@ -6733,39 +7966,39 @@ msgstr ""
 "    }\n"
 
 #. type: Plain text
-#: build/C/man3/sockatmark.3:134
+#: build/C/man3/sockatmark.3:144
 msgid "B<fcntl>(2), B<recv>(2), B<send>(2), B<tcp>(7)"
 msgstr "B<fcntl>(2), B<recv>(2), B<send>(2), B<tcp>(7)"
 
 #. type: TH
-#: build/C/man2/socket.2:41 build/C/man7/socket.7:26
+#: build/C/man2/socket.2:43 build/C/man7/socket.7:58
 #, no-wrap
 msgid "SOCKET"
 msgstr "SOCKET"
 
 #. type: TH
-#: build/C/man2/socket.2:41
+#: build/C/man2/socket.2:43
 #, no-wrap
-msgid "2009-01-19"
-msgstr "2009-01-19"
+msgid "2013-12-31"
+msgstr "2013-12-31"
 
 #. type: Plain text
-#: build/C/man2/socket.2:44
+#: build/C/man2/socket.2:46
 msgid "socket - create an endpoint for communication"
 msgstr "socket - 通信のための端点(endpoint)を作成する"
 
 #. type: Plain text
-#: build/C/man2/socket.2:46 build/C/man2/socketpair.2:45
+#: build/C/man2/socket.2:48 build/C/man2/socketpair.2:47
 msgid "B<#include E<lt>sys/types.hE<gt>> /* See NOTES */"
 msgstr "B<#include E<lt>sys/types.hE<gt>> /* 「注意」参照 */"
 
 #. type: Plain text
-#: build/C/man2/socket.2:50
+#: build/C/man2/socket.2:52
 msgid "B<int socket(int >I<domain>B<, int >I<type>B<, int >I<protocol>B<);>"
 msgstr "B<int socket(int >I<domain>B<, int >I<type>B<, int >I<protocol>B<);>"
 
 #. type: Plain text
-#: build/C/man2/socket.2:53
+#: build/C/man2/socket.2:55
 msgid ""
 "B<socket>()  creates an endpoint for communication and returns a descriptor."
 msgstr ""
@@ -6773,222 +8006,223 @@ msgstr ""
 "(descriptor)を返す。"
 
 #. type: Plain text
-#: build/C/man2/socket.2:61
+#: build/C/man2/socket.2:63
 msgid ""
 "The I<domain> argument specifies a communication domain; this selects the "
 "protocol family which will be used for communication.  These families are "
 "defined in I<E<lt>sys/socket.hE<gt>>.  The currently understood formats "
 "include:"
 msgstr ""
-"I<domain> å¼\95æ\95°ã\81¯é\80\9aä¿¡ã\82\92è¡\8cã\81ªã\81\86ã\83\89ã\83¡ã\82¤ã\83³ã\82\92æ\8c\87å®\9aã\81\99ã\82\8b; ã\81\93ã\82\8cã\81¯ã\81©ã\81® ã\83\97ã\83­ã\83\88ã\82³ã\83«ã\83»ã\83\95ã\82¡ã\83\9f"
-"リ(protocol family)を通信に使用するかを指定する。 これらのファミリは "
+"I<domain> 引数は通信を行なうドメインを指定する; これはどの プロトコルファミ"
+"リー(protocol family)を通信に使用するかを指定する。 これらのファミリーは "
 "I<E<lt>sys/socket.hE<gt>> に定義されている。 現在、理解できるフォーマットは以"
 "下の通り。"
 
 #. type: tbl table
-#: build/C/man2/socket.2:64
+#: build/C/man2/socket.2:66
 #, no-wrap
 msgid "Name:Purpose:Man page\n"
 msgstr "名前:目的:マニュアル\n"
 
 #. type: tbl table
-#: build/C/man2/socket.2:65 build/C/man2/socket.2:72 build/C/man2/socket.2:77
-#: build/C/man2/socket.2:82 build/C/man2/socket.2:85 build/C/man2/socket.2:92
-#: build/C/man2/socket.2:97 build/C/man2/socket.2:102
-#: build/C/man2/socket.2:105 build/C/man2/socket.2:110
+#: build/C/man2/socket.2:67 build/C/man2/socket.2:74 build/C/man2/socket.2:79
+#: build/C/man2/socket.2:84 build/C/man2/socket.2:87 build/C/man2/socket.2:94
+#: build/C/man2/socket.2:99 build/C/man2/socket.2:104
+#: build/C/man2/socket.2:107 build/C/man2/socket.2:112
 #, no-wrap
 msgid "T{\n"
 msgstr "T{\n"
 
 #. type: tbl table
-#: build/C/man2/socket.2:66
+#: build/C/man2/socket.2:68
 #, no-wrap
 msgid "B<AF_UNIX>, B<AF_LOCAL>\n"
 msgstr "B<AF_UNIX>, B<AF_LOCAL>\n"
 
 #. type: tbl table
-#: build/C/man2/socket.2:67 build/C/man2/socket.2:69 build/C/man2/socket.2:87
-#: build/C/man2/socket.2:89 build/C/man2/socket.2:99 build/C/man2/socket.2:112
-#: build/C/man2/socket.2:114 build/C/man7/socket.7:162
+#: build/C/man2/socket.2:69 build/C/man2/socket.2:71 build/C/man2/socket.2:89
+#: build/C/man2/socket.2:91 build/C/man2/socket.2:101
+#: build/C/man2/socket.2:114 build/C/man2/socket.2:116
+#: build/C/man7/socket.7:194
 #, no-wrap
 msgid "T}:T{\n"
 msgstr "T}:T{\n"
 
 #. type: tbl table
-#: build/C/man2/socket.2:68
+#: build/C/man2/socket.2:70
 #, no-wrap
 msgid "Local communication\n"
 msgstr "ローカル通信\n"
 
 #. type: tbl table
-#: build/C/man2/socket.2:70
+#: build/C/man2/socket.2:72
 #, no-wrap
 msgid "B<unix>(7)\n"
 msgstr "B<unix>(7)\n"
 
 #. type: tbl table
-#: build/C/man2/socket.2:71 build/C/man2/socket.2:76 build/C/man2/socket.2:81
-#: build/C/man2/socket.2:91 build/C/man2/socket.2:96 build/C/man2/socket.2:109
-#: build/C/man2/socket.2:116 build/C/man7/socket.7:141
-#: build/C/man7/socket.7:145 build/C/man7/socket.7:148
-#: build/C/man7/socket.7:154 build/C/man7/socket.7:157
-#: build/C/man7/socket.7:166 build/C/man7/socket.7:173
+#: build/C/man2/socket.2:73 build/C/man2/socket.2:78 build/C/man2/socket.2:83
+#: build/C/man2/socket.2:93 build/C/man2/socket.2:98 build/C/man2/socket.2:111
+#: build/C/man2/socket.2:118 build/C/man7/socket.7:173
+#: build/C/man7/socket.7:177 build/C/man7/socket.7:180
+#: build/C/man7/socket.7:186 build/C/man7/socket.7:189
+#: build/C/man7/socket.7:198 build/C/man7/socket.7:205
 #, no-wrap
 msgid "T}\n"
 msgstr "T}\n"
 
 #. type: tbl table
-#: build/C/man2/socket.2:73
+#: build/C/man2/socket.2:75
 #, no-wrap
 msgid "B<AF_INET>\n"
 msgstr "B<AF_INET>\n"
 
 #. type: tbl table
-#: build/C/man2/socket.2:74
+#: build/C/man2/socket.2:76
 #, no-wrap
 msgid "T}:IPv4 Internet protocols:T{\n"
-msgstr "T}:IPv4 ã\82¤ã\83³ã\82¿ã\83¼ã\83\8dã\83\83ã\83\88ã\83»ã\83\97ã\83­ã\83\88ã\82³ã\83«:T{\n"
+msgstr "T}:IPv4 インターネットプロトコル:T{\n"
 
 #. type: tbl table
-#: build/C/man2/socket.2:75
+#: build/C/man2/socket.2:77
 #, no-wrap
 msgid "B<ip>(7)\n"
 msgstr "B<ip>(7)\n"
 
 #. type: tbl table
-#: build/C/man2/socket.2:78
+#: build/C/man2/socket.2:80
 #, no-wrap
 msgid "B<AF_INET6>\n"
 msgstr "B<AF_INET6>\n"
 
 #. type: tbl table
-#: build/C/man2/socket.2:79
+#: build/C/man2/socket.2:81
 #, no-wrap
 msgid "T}:IPv6 Internet protocols:T{\n"
-msgstr "T}:IPv6 ã\82¤ã\83³ã\82¿ã\83¼ã\83\8dã\83\83ã\83\88ã\83»ã\83\97ã\83­ã\83\88ã\82³ã\83«:T{\n"
+msgstr "T}:IPv6 インターネットプロトコル:T{\n"
 
 #. type: tbl table
-#: build/C/man2/socket.2:80
+#: build/C/man2/socket.2:82
 #, no-wrap
 msgid "B<ipv6>(7)\n"
 msgstr "B<ipv6>(7)\n"
 
 #. type: tbl table
-#: build/C/man2/socket.2:83
+#: build/C/man2/socket.2:85
 #, no-wrap
 msgid "B<AF_IPX>\n"
 msgstr "B<AF_IPX>\n"
 
 #. type: tbl table
-#: build/C/man2/socket.2:84
+#: build/C/man2/socket.2:86
 #, no-wrap
 msgid "T}:IPX - Novell protocols:\n"
 msgstr "T}:IPX - Novell プロトコル:\n"
 
 #. type: tbl table
-#: build/C/man2/socket.2:86
+#: build/C/man2/socket.2:88
 #, no-wrap
 msgid "B<AF_NETLINK>\n"
 msgstr "B<AF_NETLINK>\n"
 
 #. type: tbl table
-#: build/C/man2/socket.2:88
+#: build/C/man2/socket.2:90
 #, no-wrap
 msgid "Kernel user interface device\n"
-msgstr "ã\82«ã\83¼ã\83\8dã\83«ã\83»ã\83¦ã\83¼ã\82¶ã\83»デバイス\n"
+msgstr "ã\82«ã\83¼ã\83\8dã\83«ã\83¦ã\83¼ã\82¶ã\83¼ã\82¤ã\83³ã\82¿ã\83¼ã\83\95ã\82§ã\83¼ã\82¹デバイス\n"
 
 #. type: tbl table
-#: build/C/man2/socket.2:90
+#: build/C/man2/socket.2:92
 #, no-wrap
 msgid "B<netlink>(7)\n"
 msgstr "B<netlink>(7)\n"
 
 #. type: tbl table
-#: build/C/man2/socket.2:93
+#: build/C/man2/socket.2:95
 #, no-wrap
 msgid "B<AF_X25>\n"
 msgstr "B<AF_X25>\n"
 
 #. type: tbl table
-#: build/C/man2/socket.2:94
+#: build/C/man2/socket.2:96
 #, no-wrap
 msgid "T}:ITU-T X.25 / ISO-8208 protocol:T{\n"
 msgstr "T}:ITU-T X.25 / ISO-8208 プロトコル:T{\n"
 
 #. type: tbl table
-#: build/C/man2/socket.2:95
+#: build/C/man2/socket.2:97
 #, no-wrap
 msgid "B<x25>(7)\n"
 msgstr "B<x25>(7)\n"
 
 #. type: tbl table
-#: build/C/man2/socket.2:98
+#: build/C/man2/socket.2:100
 #, no-wrap
 msgid "B<AF_AX25>\n"
 msgstr "B<AF_AX25>\n"
 
 #. type: tbl table
-#: build/C/man2/socket.2:100
+#: build/C/man2/socket.2:102
 #, no-wrap
 msgid "Amateur radio AX.25 protocol\n"
 msgstr "アマチュア無線 AX.25 プロトコル\n"
 
 #. type: tbl table
-#: build/C/man2/socket.2:101
+#: build/C/man2/socket.2:103
 #, no-wrap
 msgid "T}:\n"
 msgstr "T}:\n"
 
 #. type: tbl table
-#: build/C/man2/socket.2:103
+#: build/C/man2/socket.2:105
 #, no-wrap
 msgid "B<AF_ATMPVC>\n"
 msgstr "B<AF_ATMPVC>\n"
 
 #. type: tbl table
-#: build/C/man2/socket.2:104
+#: build/C/man2/socket.2:106
 #, no-wrap
 msgid "T}:Access to raw ATM PVCs:\n"
 msgstr "T}:生の ATM PVC にアクセスする:\n"
 
 #. type: tbl table
-#: build/C/man2/socket.2:106
+#: build/C/man2/socket.2:108
 #, no-wrap
 msgid "B<AF_APPLETALK>\n"
 msgstr "B<AF_APPLETALK>\n"
 
 #. type: tbl table
-#: build/C/man2/socket.2:107
+#: build/C/man2/socket.2:109
 #, no-wrap
-msgid "T}:Appletalk:T{\n"
-msgstr "T}:アップルトーク:T{\n"
+msgid "T}:AppleTalk:T{\n"
+msgstr "T}:AppleTalk:T{\n"
 
 #. type: tbl table
-#: build/C/man2/socket.2:108
+#: build/C/man2/socket.2:110
 #, no-wrap
 msgid "B<ddp>(7)\n"
 msgstr "B<ddp>(7)\n"
 
 #. type: tbl table
-#: build/C/man2/socket.2:111
+#: build/C/man2/socket.2:113
 #, no-wrap
 msgid "B<AF_PACKET>\n"
 msgstr "B<AF_PACKET>\n"
 
 #. type: tbl table
-#: build/C/man2/socket.2:113
+#: build/C/man2/socket.2:115
 #, no-wrap
 msgid "Low level packet interface\n"
 msgstr "低レベルのパケットインターフェース\n"
 
 #. type: tbl table
-#: build/C/man2/socket.2:115
+#: build/C/man2/socket.2:117
 #, no-wrap
 msgid "B<packet>(7)\n"
 msgstr "B<packet>(7)\n"
 
 #. type: Plain text
-#: build/C/man2/socket.2:124
+#: build/C/man2/socket.2:126
 msgid ""
 "The socket has the indicated I<type>, which specifies the communication "
 "semantics.  Currently defined types are:"
@@ -6997,96 +8231,95 @@ msgstr ""
 "る。 定義されている型は現在以下の通り。"
 
 #. type: TP
-#: build/C/man2/socket.2:124
+#: build/C/man2/socket.2:126
 #, no-wrap
 msgid "B<SOCK_STREAM>"
 msgstr "B<SOCK_STREAM>"
 
 #. type: Plain text
-#: build/C/man2/socket.2:128
+#: build/C/man2/socket.2:130
 msgid ""
 "Provides sequenced, reliable, two-way, connection-based byte streams.  An "
 "out-of-band data transmission mechanism may be supported."
 msgstr ""
-"é \86åº\8fæ\80§ã\81¨ä¿¡é ¼æ\80§ã\81\8cã\81\82ã\82\8aã\80\81å\8f\8cæ\96¹å\90\91ã\81®ã\80\81æ\8e¥ç¶\9aã\81\95ã\82\8cã\81\9f ã\83\90ã\82¤ã\83\88ã\83»ã\82¹ã\83\88ã\83ªã\83¼ã\83 (byte stream)ã\82\92"
-"供する。 帯域外(out-of-band)データ転送メカニズムもサポートされる。"
+"é \86åº\8fæ\80§ã\81¨ä¿¡é ¼æ\80§ã\81\8cã\81\82ã\82\8aã\80\81å\8f\8cæ\96¹å\90\91ã\81®ã\80\81æ\8e¥ç¶\9aã\81\95ã\82\8cã\81\9f ã\83\90ã\82¤ã\83\88ã\82¹ã\83\88ã\83ªã\83¼ã\83 (byte stream)ã\82\92æ\8f\90"
+"供する。 帯域外(out-of-band)データ転送メカニズムもサポートされる。"
 
 #. type: TP
-#: build/C/man2/socket.2:128
+#: build/C/man2/socket.2:130
 #, no-wrap
 msgid "B<SOCK_DGRAM>"
 msgstr "B<SOCK_DGRAM>"
 
 #. type: Plain text
-#: build/C/man2/socket.2:132
+#: build/C/man2/socket.2:134
 msgid ""
 "Supports datagrams (connectionless, unreliable messages of a fixed maximum "
 "length)."
-msgstr "データグラム(接続、信頼性無し、固定最大長メッセージ)  をサポートする。"
+msgstr ""
+"データグラム (コネクションレス、信頼性無し、固定最大長メッセージ) をサポート"
+"する。"
 
 #. type: TP
-#: build/C/man2/socket.2:132
+#: build/C/man2/socket.2:134
 #, no-wrap
 msgid "B<SOCK_SEQPACKET>"
 msgstr "B<SOCK_SEQPACKET>"
 
 #. type: Plain text
-#: build/C/man2/socket.2:137
+#: build/C/man2/socket.2:139
 msgid ""
 "Provides a sequenced, reliable, two-way connection-based data transmission "
 "path for datagrams of fixed maximum length; a consumer is required to read "
 "an entire packet with each input system call."
 msgstr ""
 "固定最大長のデータグラム転送パスに基づいた順序性、信頼性のある 双方向の接続に"
-"å\9fºã\81¥ã\81\84ã\81\9fé\80\9aä¿¡ã\82\92æ\8f\90ä¾\9bã\81\99ã\82\8bã\80\82å\8f\97ã\81\91å\8f\96ã\82\8aå\81´ã\81§ã\81¯ã\81\9dã\82\8cã\81\9eã\82\8cã\81®å\85¥å\8a\9b ã\82·ã\82¹ã\83\86ã\83 ã\83»ã\82³ã\83¼ã\83«ã\81§ã\83\91ã\82±ã\83\83"
-"全体を読み取ることが要求される。"
+"å\9fºã\81¥ã\81\84ã\81\9fé\80\9aä¿¡ã\82\92æ\8f\90ä¾\9bã\81\99ã\82\8bã\80\82å\8f\97ã\81\91å\8f\96ã\82\8aå\81´ã\81§ã\81¯ã\81\9dã\82\8cã\81\9eã\82\8cã\81®å\85¥å\8a\9b ã\82·ã\82¹ã\83\86ã\83 ã\82³ã\83¼ã\83«ã\81§ã\83\91ã\82±ã\83\83ã\83\88"
+"全体を読み取ることが要求される。"
 
 #. type: TP
-#: build/C/man2/socket.2:137
+#: build/C/man2/socket.2:139
 #, no-wrap
 msgid "B<SOCK_RAW>"
 msgstr "B<SOCK_RAW>"
 
 #. type: Plain text
-#: build/C/man2/socket.2:140
+#: build/C/man2/socket.2:142
 msgid "Provides raw network protocol access."
-msgstr "ç\94\9fã\81®ã\83\8dã\83\83ã\83\88ã\83¯ã\83¼ã\82¯ã\83»ã\83\97ã\83­ã\83\88ã\82³ã\83«ã\81¸ã\81®ã\82¢ã\82¯ã\82»ã\82¹ã\82\92æ\8f\90ä¾\9bã\81\99ã\82\8bã\80\82"
+msgstr "生のネットワークプロトコルへのアクセスを提供する。"
 
 #. type: TP
-#: build/C/man2/socket.2:140
+#: build/C/man2/socket.2:142
 #, no-wrap
 msgid "B<SOCK_RDM>"
 msgstr "B<SOCK_RDM>"
 
 #. type: Plain text
-#: build/C/man2/socket.2:143
+#: build/C/man2/socket.2:145
 msgid "Provides a reliable datagram layer that does not guarantee ordering."
 msgstr "信頼性はあるが、順序は保証しないデータグラム層を提供する。"
 
 #. type: TP
-#: build/C/man2/socket.2:143
+#: build/C/man2/socket.2:145
 #, no-wrap
 msgid "B<SOCK_PACKET>"
 msgstr "B<SOCK_PACKET>"
 
 #. type: Plain text
-#: build/C/man2/socket.2:148
+#: build/C/man2/socket.2:150
 msgid "Obsolete and should not be used in new programs; see B<packet>(7)."
 msgstr ""
 "廃止されており新しいプログラムで使用してはいけない。 B<packet>(7)  を参照する"
 "こと"
 
 #. type: Plain text
-#: build/C/man2/socket.2:154
-msgid ""
-"Some socket types may not be implemented by all protocol families; for "
-"example, B<SOCK_SEQPACKET> is not implemented for B<AF_INET>."
+#: build/C/man2/socket.2:152
+msgid "Some socket types may not be implemented by all protocol families."
 msgstr ""
-"ある種のソケット型が全てのプロトコル・ファミリで実装されているわけではない。 "
-"例えば B<SOCK_SEQPACKET> は B<AF_INET> には実装されていない。"
+"ある種のソケット型が全てのプロトコルファミリーで実装されているわけではない。"
 
 #. type: Plain text
-#: build/C/man2/socket.2:162
+#: build/C/man2/socket.2:160
 msgid ""
 "Since Linux 2.6.27, the I<type> argument serves a second purpose: in "
 "addition to specifying a socket type, it may include the bitwise OR of any "
@@ -7097,7 +8330,7 @@ msgstr ""
 "ることで、 B<socket>()  の振舞いを変更することができる。"
 
 #. type: Plain text
-#: build/C/man2/socket.2:196
+#: build/C/man2/socket.2:194
 msgid ""
 "The I<protocol> specifies a particular protocol to be used with the socket.  "
 "Normally only a single protocol exists to support a particular socket type "
@@ -7109,7 +8342,7 @@ msgid ""
 "protocol name strings to protocol numbers."
 msgstr ""
 "I<protocol> はソケットによって使用される固有のプロトコルを指定する。通常それ"
-"ã\81\9eã\82\8cã\81® ã\82½ã\82±ã\83\83ã\83\88ã\81¯ã\80\81ä¸\8eã\81\88ã\82\89ã\82\8cã\81\9fã\83\97ã\83­ã\83\88ã\82³ã\83«ã\83»ã\83\95ã\82¡ã\83\9fã\83ªの種類ごとに一つのプロトコル"
+"ã\81\9eã\82\8cã\81® ã\82½ã\82±ã\83\83ã\83\88ã\81¯ã\80\81ä¸\8eã\81\88ã\82\89ã\82\8cã\81\9fã\83\97ã\83­ã\83\88ã\82³ã\83«ã\83\95ã\82¡ã\83\9fã\83ªã\83¼の種類ごとに一つのプロトコル"
 "のみを サポートする。 その場合は I<protocol> に 0 を指定できる。 しかし、多く"
 "のプロトコルが存在してもかまわない。 この場合にはこの方法により固有のプロトコ"
 "ルを指定する必要がある。 使用されるプロトコル番号は通信の行なわれる``通信ドメ"
@@ -7117,28 +8350,27 @@ msgstr ""
 "てプロトコル番号に対応させるかについては B<getprotoent>(3)  を参照すること。"
 
 #. type: Plain text
-#: build/C/man2/socket.2:226
+#: build/C/man2/socket.2:224
 msgid ""
-"Sockets of type B<SOCK_STREAM> are full-duplex byte streams, similar to "
-"pipes.  They do not preserve record boundaries.  A stream socket must be in "
-"a I<connected> state before any data may be sent or received on it.  A "
-"connection to another socket is created with a B<connect>(2)  call.  Once "
-"connected, data may be transferred using B<read>(2)  and B<write>(2)  calls "
-"or some variant of the B<send>(2)  and B<recv>(2)  calls.  When a session "
-"has been completed a B<close>(2)  may be performed.  Out-of-band data may "
-"also be transmitted as described in B<send>(2)  and received as described in "
-"B<recv>(2)."
+"Sockets of type B<SOCK_STREAM> are full-duplex byte streams.  They do not "
+"preserve record boundaries.  A stream socket must be in a I<connected> state "
+"before any data may be sent or received on it.  A connection to another "
+"socket is created with a B<connect>(2)  call.  Once connected, data may be "
+"transferred using B<read>(2)  and B<write>(2)  calls or some variant of the "
+"B<send>(2)  and B<recv>(2)  calls.  When a session has been completed a "
+"B<close>(2)  may be performed.  Out-of-band data may also be transmitted as "
+"described in B<send>(2)  and received as described in B<recv>(2)."
 msgstr ""
-"B<SOCK_STREAM> 型のソケットはパイプのような全二重バイト・ストリームである。 "
-"これらはレコード境界を保存しない。 ストリームは、ソケットがデータを送ったり受"
-"けたりする前に I<接続された> 状態になってなければならない。他のソケットへの接"
-"続は B<connect>(2)  コールによって行なわれる。一度接続したらデータは B<read>"
-"(2)  と B<write>(2)  コールや B<send>(2)  と B<recv>(2)  コールの変種を使用し"
-"て転送できる。 セッションが完了したら B<close>(2)  が行なわれる。帯域外データ"
-"の転送も B<send>(2)  に記述されており、 受信も B<recv>(2)  に記述されている。"
+"B<SOCK_STREAM> 型のソケットは全二重バイトストリームである。 これらはレコード"
+"境界を保存しない。 ストリームは、ソケットがデータを送ったり受けたりする前に "
+"I<接続された> 状態になってなければならない。他のソケットへの接続は "
+"B<connect>(2)  コールによって行なわれる。一度接続したらデータは B<read>(2)  "
+"と B<write>(2)  コールや B<send>(2)  と B<recv>(2)  コールの変種を使用して転"
+"送できる。 セッションが完了したら B<close>(2)  が行なわれる。帯域外データの転"
+"送も B<send>(2)  に記述されており、 受信も B<recv>(2)  に記述されている。"
 
 #. type: Plain text
-#: build/C/man2/socket.2:252
+#: build/C/man2/socket.2:250
 msgid ""
 "The communications protocols which implement a B<SOCK_STREAM> ensure that "
 "data is not lost or duplicated.  If a piece of data for which the peer "
@@ -7161,12 +8393,12 @@ msgstr ""
 "をチェックする。 もしプロセスが、壊れたストリームでデータを送受信しようとした"
 "場合には B<SIGPIPE> シグナルが送られる; これは通常のそのシグナルを扱っていな"
 "いプロセスを 終了させる。 B<SOCK_SEQPACKET> ソケットは B<SOCK_STREAM> ソケッ"
-"ã\83\88ã\81¨å\90\8cã\81\98ã\82·ã\82¹ã\83\86ã\83 ã\83»ã\82³ã\83¼ã\83«ã\82\92使ç\94¨ã\81\99ã\82\8bã\80\82 å\94¯ä¸\80ã\81®é\81\95ã\81\84ã\81¯ B<read>(2)  ã\82³ã\83¼ã\83«ã\81\8cè¦\81æ±\82ã\81\95"
-"ã\82\8cã\81\9fé\87\8fã\81®ã\83\87ã\83¼ã\82¿ã\81®ã\81¿ã\82\92è¿\94ã\81\97ã\80\81å\88°ç\9d\80ã\81\97ã\81\9fã\83\91ã\82±ã\83\83ã\83\88ã\81®æ®\8bã\82\8aã\81®é\83¨å\88\86ã\82\92 æ\8d¨ã\81¦ã\81¦ã\81\97ã\81¾ã\81\86ã\81\93ã\81¨ã\81§ã\81\82"
+"ã\83\88ã\81¨å\90\8cã\81\98ã\82·ã\82¹ã\83\86ã\83 ã\82³ã\83¼ã\83«ã\82\92使ç\94¨ã\81\99ã\82\8bã\80\82 å\94¯ä¸\80ã\81®é\81\95ã\81\84ã\81¯ B<read>(2)  ã\82³ã\83¼ã\83«ã\81\8cè¦\81æ±\82ã\81\95ã\82\8c"
+"た量のデータのみを返し、到着したパケットの残りの部分を 捨ててしまうことであ"
 "る。同様に入ってくるデータグラムの全てのメッセージ境界は 保存される。"
 
 #. type: Plain text
-#: build/C/man2/socket.2:262
+#: build/C/man2/socket.2:260
 msgid ""
 "B<SOCK_DGRAM> and B<SOCK_RAW> sockets allow sending of datagrams to "
 "correspondents named in B<sendto>(2)  calls.  Datagrams are generally "
@@ -7174,12 +8406,12 @@ msgid ""
 "address of its sender."
 msgstr ""
 "B<SOCK_DGRAM> と B<SOCK_RAW> ソケットは B<sendto>(2)  コールで指定された相手"
-"へデータグラムを送ることが許されている。 データグラムは一般に B<recvfrom>"
-"(2)  で受けとり、 このコールは次のデータグラムを送信者のアドレスと一緒に返"
-"す。"
+"へデータグラムを送ることが許されている。 データグラムは一般に "
+"B<recvfrom>(2)  で受けとり、 このコールは次のデータグラムを送信者のアドレスと"
+"一緒に返す。"
 
 #. type: Plain text
-#: build/C/man2/socket.2:269
+#: build/C/man2/socket.2:267
 msgid ""
 "B<SOCK_PACKET> is an obsolete socket type to receive raw packets directly "
 "from the device driver.  Use B<packet>(7)  instead."
@@ -7188,7 +8420,7 @@ msgstr ""
 "接受信するためのものである。 今は代わりに B<packet>(7)  を用いること。"
 
 #. type: Plain text
-#: build/C/man2/socket.2:292
+#: build/C/man2/socket.2:290
 msgid ""
 "An B<fcntl>(2)  B<F_SETOWN> operation can be used to specify a process or "
 "process group to receive a B<SIGURG> signal when the out-of-band data "
@@ -7199,53 +8431,53 @@ msgid ""
 "B<FIOSETOWN> or B<SIOCSPGRP> argument."
 msgstr ""
 "B<fcntl>(2)  の B<F_SETOWN> 操作を使って、シグナル B<SIGURG> や B<SIGPIPE> を"
-"å\8f\97ã\81\91ã\81¨ã\82\8bã\83\97ã\83­ã\82»ã\82¹ã\83»ã\82°ã\83«ã\83¼ã\83\97ã\82\92æ\8c\87å®\9aã\81§ã\81\8dã\82\8bã\80\82 B<SIGURG> ã\82·ã\82°ã\83\8aã\83«ã\81¯å¸¯å\9f\9få¤\96ã\83\87ã\83¼ã\82¿ã\81\8cå\88°"
-"着した時に、 B<SIGPIPE> シグナルは B<SOCK_STREAM> 接続が予期せず切断された時"
-"送られる。 また、 B<F_SETOWN> 操作は、I/O や I/O イベントの非同期 "
-"(asynchronous) é\80\9aç\9f¥ã\82\92 B<SIGIO> ã\82\92çµ\8cç\94±ã\81§å\8f\97ã\81\91å\8f\96ã\82\8bã\83\97ã\83­ã\82»ã\82¹ã\82\84ã\83\97ã\83­ã\82»ã\82¹ã\83»ã\82°ã\83«ã\83¼ã\83\97ã\82\92"
-"定するのにも使用できる。 B<F_SETOWN> を使用することは B<FIOSETOWN> または "
+"å\8f\97ã\81\91ã\81¨ã\82\8bã\83\97ã\83­ã\82»ã\82¹ã\82°ã\83«ã\83¼ã\83\97ã\82\92æ\8c\87å®\9aã\81§ã\81\8dã\82\8bã\80\82 B<SIGURG> ã\82·ã\82°ã\83\8aã\83«ã\81¯å¸¯å\9f\9få¤\96ã\83\87ã\83¼ã\82¿ã\81\8cå\88°ç\9d\80"
+"した時に、 B<SIGPIPE> シグナルは B<SOCK_STREAM> 接続が予期せず切断された時に"
+"送られる。 また、 B<F_SETOWN> 操作は、I/O や I/O イベントの非同期 "
+"(asynchronous) é\80\9aç\9f¥ã\82\92 B<SIGIO> ã\82\92çµ\8cç\94±ã\81§å\8f\97ã\81\91å\8f\96ã\82\8bã\83\97ã\83­ã\82»ã\82¹ã\82\84ã\83\97ã\83­ã\82»ã\82¹ã\82°ã\83«ã\83¼ã\83\97ã\82\92設"
+"定するのにも使用できる。 B<F_SETOWN> を使用することは B<FIOSETOWN> または "
 "B<SIOCSPGRP> の引数で B<ioctl>(2)  を使用することと等価である。"
 
 #. type: Plain text
-#: build/C/man2/socket.2:302
+#: build/C/man2/socket.2:300
 msgid ""
 "When the network signals an error condition to the protocol module (e.g., "
 "using a ICMP message for IP) the pending error flag is set for the socket.  "
 "The next operation on this socket will return the error code of the pending "
 "error.  For some protocols it is possible to enable a per-socket error queue "
-"to retrieve detailed information about the error; see B<IP_RECVERR> in B<ip>"
-"(7)."
+"to retrieve detailed information about the error; see B<IP_RECVERR> in "
+"B<ip>(7)."
 msgstr ""
-"ã\83\8dã\83\83ã\83\88ã\83¯ã\83¼ã\82¯ã\81\8cã\83\97ã\83­ã\83\88ã\82³ã\83«ã\83»ã\83¢ã\82¸ã\83¥ã\83¼ã\83«ã\81«ã\82¨ã\83©ã\83¼ç\8a¶æ\85\8bã\82\92ä¼\9dã\81\88ã\81\9få ´å\90\88 (ä¾\8bã\81\88ã\81°ã\80\81IP ã\81® "
-"ICMP ã\83¡ã\83\83ã\82»ã\83¼ã\82¸ã\82\92使ç\94¨ã\81\97ã\81¦)ã\81«ã\81¯ã\80\81ã\82½ã\82±ã\83\83ã\83\88ã\81® ã\83\9aã\83³ã\83\87ã\82£ã\83³ã\82°ã\83»ã\82¨ã\83©ã\83¼ã\83»ã\83\95ã\83©ã\82°ã\81\8c設å®\9a"
-"ã\81\95ã\82\8cã\82\8bã\80\82次ã\81«ã\81\93ã\81®ã\82½ã\82±ã\83\83ã\83\88ã\82\92æ\93\8dä½\9cã\81\97ã\81\9f æ\99\82ã\81«ã\83\9aã\83³ã\83\87ã\82£ã\83³ã\82°ã\81\95ã\82\8cã\81¦ã\81\84ã\81\9fã\82¨ã\83©ã\83¼ã\83»ã\82³ã\83¼ã\83\89ã\81\8c"
-"返される。プロトコルによっては エラーについてのより詳しい情報を受け取るために"
-"ã\82½ã\82±ã\83\83ã\83\88ã\81\94ã\81¨ã\81®ã\82¨ã\83©ã\83¼ã\83»ã\82­ã\83¥ã\83¼ã\82\92 å\8f\97ã\81\91å\8f\96ã\82\8bã\81\93ã\81¨ã\81\8cå\8f¯è\83½ã\81§ã\81\82ã\82\8bã\80\82 B<ip>(7)  ã\81® "
-"B<IP_RECVERR> を参照すること。"
+"ネットワークがプロトコルモジュールにエラー状態を伝えた場合 (例えば、IP の "
+"ICMP ã\83¡ã\83\83ã\82»ã\83¼ã\82¸ã\82\92使ç\94¨ã\81\97ã\81¦)ã\81«ã\81¯ã\80\81ã\82½ã\82±ã\83\83ã\83\88ã\81® ã\83\9aã\83³ã\83\87ã\82£ã\83³ã\82°ã\82¨ã\83©ã\83¼ã\83\95ã\83©ã\82°ã\81\8c設å®\9aã\81\95ã\82\8c"
+"ã\82\8bã\80\82次ã\81«ã\81\93ã\81®ã\82½ã\82±ã\83\83ã\83\88ã\82\92æ\93\8dä½\9cã\81\97ã\81\9f æ\99\82ã\81«ã\83\9aã\83³ã\83\87ã\82£ã\83³ã\82°ã\81\95ã\82\8cã\81¦ã\81\84ã\81\9fã\82¨ã\83©ã\83¼ã\82³ã\83¼ã\83\89ã\81\8cè¿\94ã\81\95ã\82\8c"
+"る。プロトコルによっては エラーについてのより詳しい情報を受け取るためにソケッ"
+"ã\83\88ã\81\94ã\81¨ã\81®ã\82¨ã\83©ã\83¼ã\82­ã\83¥ã\83¼ã\82\92 å\8f\97ã\81\91å\8f\96ã\82\8bã\81\93ã\81¨ã\81\8cå\8f¯è\83½ã\81§ã\81\82ã\82\8bã\80\82 B<ip>(7)  ã\81® B<IP_RECVERR> "
+"を参照すること。"
 
 #. type: Plain text
-#: build/C/man2/socket.2:312
+#: build/C/man2/socket.2:310
 msgid ""
 "The operation of sockets is controlled by socket level I<options>.  These "
 "options are defined in I<E<lt>sys/socket.hE<gt>>.  The functions "
 "B<setsockopt>(2)  and B<getsockopt>(2)  are used to set and get options, "
 "respectively."
 msgstr ""
-"ã\82½ã\82±ã\83\83ã\83\88ã\81®æ\93\8dä½\9cã\81¯ã\82½ã\82±ã\83\83ã\83\88ã\83»ã\83¬ã\83\99ã\83« I<options> ã\81«ã\82\88ã\81£ã\81¦å\88¶å¾¡ã\81\95ã\82\8cã\82\8bã\80\82 ã\81\93ã\82\8cã\82\89ã\81®ã\82ªã\83\97"
+"ソケットの操作はソケットレベル I<options> によって制御される。 これらのオプ"
 "ションは I<E<lt>sys/socket.hE<gt>> に定義されている。 B<setsockopt>(2)  と "
 "B<getsockopt>(2)  関数はそれぞれオプションの設定と取得を行なう。"
 
 #. type: Plain text
-#: build/C/man2/socket.2:317
+#: build/C/man2/socket.2:315
 msgid ""
 "On success, a file descriptor for the new socket is returned.  On error, -1 "
 "is returned, and I<errno> is set appropriately."
 msgstr ""
-"æ\88\90å\8a\9fã\81\97ã\81\9få ´å\90\88ã\80\81æ\96°ã\81\97ã\81\84ã\82½ã\82±ã\83\83ã\83\88ã\81®ã\83\95ã\82¡ã\82¤ã\83«ã\83»ã\83\87ã\82£ã\82¹ã\82¯ã\83ªã\83\97ã\82¿ã\83¼ã\82\92è¿\94ã\81\99ã\80\82 ã\82¨ã\83©ã\83¼ã\81\8cç\99ºç\94\9f"
-"ã\81\97ã\81\9få ´å\90\88ã\81¯ -1 ã\82\92è¿\94ã\81\97ã\80\81 I<errno> ã\82\92é\81©å\88\87ã\81«è¨­å®\9aã\81\99ã\82\8bã\80\82"
+"æ\88\90å\8a\9fã\81\97ã\81\9få ´å\90\88ã\80\81æ\96°ã\81\97ã\81\84ã\82½ã\82±ã\83\83ã\83\88ã\81®ã\83\95ã\82¡ã\82¤ã\83«ã\83\87ã\82£ã\82¹ã\82¯ã\83ªã\83\97ã\82¿ã\83¼ã\82\92è¿\94ã\81\99ã\80\82 ã\82¨ã\83©ã\83¼ã\81\8cç\99ºç\94\9fã\81\97"
+"た場合は -1 を返し、 I<errno> を適切に設定する。"
 
 #. type: Plain text
-#: build/C/man2/socket.2:322
+#: build/C/man2/socket.2:320
 msgid ""
 "Permission to create a socket of the specified type and/or protocol is "
 "denied."
@@ -7253,148 +8485,136 @@ msgstr ""
 "指定されたタイプまたはプロトコルのソケットを作成する許可が与えられていない。"
 
 #. type: Plain text
-#: build/C/man2/socket.2:325
+#: build/C/man2/socket.2:323
 msgid "The implementation does not support the specified address family."
 msgstr "指定されたアドレスファミリーがサポートされていない。"
 
 #. type: Plain text
-#: build/C/man2/socket.2:328
+#: build/C/man2/socket.2:326
 msgid "Unknown protocol, or protocol family not available."
-msgstr "ç\9f¥ã\82\89ã\81ªã\81\84ã\83\97ã\83­ã\83\88ã\82³ã\83«ã\80\81ã\81¾ã\81\9fã\81¯å\88©ç\94¨ã\81§ã\81\8dã\81ªã\81\84ã\83\97ã\83­ã\83\88ã\82³ã\83«ã\83»ã\83\95ã\82¡ã\83\9fã\83ªである。"
+msgstr "ç\9f¥ã\82\89ã\81ªã\81\84ã\83\97ã\83­ã\83\88ã\82³ã\83«ã\80\81ã\81¾ã\81\9fã\81¯å\88©ç\94¨ã\81§ã\81\8dã\81ªã\81\84ã\83\97ã\83­ã\83\88ã\82³ã\83«ã\83\95ã\82¡ã\83\9fã\83ªã\83¼である。"
 
 #.  Since Linux 2.6.27
 #. type: Plain text
-#: build/C/man2/socket.2:333
+#: build/C/man2/socket.2:331
 msgid "Invalid flags in I<type>."
 msgstr "I<type> に無効なフラグが指定されている。"
 
 #. type: Plain text
-#: build/C/man2/socket.2:336
+#: build/C/man2/socket.2:334
 msgid "Process file table overflow."
 msgstr "プロセスのファイルテーブルが溢れている。"
 
 #. type: TP
-#: build/C/man2/socket.2:339
+#: build/C/man2/socket.2:337
 #, no-wrap
 msgid "B<ENOBUFS> or B<ENOMEM>"
 msgstr "B<ENOBUFS> または B<ENOMEM>"
 
 #. type: Plain text
-#: build/C/man2/socket.2:344
+#: build/C/man2/socket.2:342
 msgid ""
 "Insufficient memory is available.  The socket cannot be created until "
 "sufficient resources are freed."
 msgstr ""
-"å\8d\81å\88\86ã\81ªã\83¡ã\83¢ã\83ªã\81\8cã\81ªã\81\84ã\80\82å\8d\81å\88\86ã\81ªè³\87æº\90ã\81\8c解æ\94¾ã\81\95ã\82\8cã\82\8bã\81¾ã\81§ã\81¯ã\82½ã\82±ã\83\83ã\83\88ã\82\92 ä½\9cæ\88\90ã\81\99ã\82\8bã\81\93ã\81¨ã\81¯ã\81§ã\81\8d"
-"ない。"
+"å\8d\81å\88\86ã\81ªã\83¡ã\83¢ã\83ªã\83¼ã\81\8cã\81ªã\81\84ã\80\82å\8d\81å\88\86ã\81ªè³\87æº\90ã\81\8c解æ\94¾ã\81\95ã\82\8cã\82\8bã\81¾ã\81§ã\81¯ã\82½ã\82±ã\83\83ã\83\88ã\82\92 ä½\9cæ\88\90ã\81\99ã\82\8bã\81\93ã\81¨ã\81¯ã\81§"
+"ã\81\8dã\81ªã\81\84ã\80\82"
 
 #. type: TP
-#: build/C/man2/socket.2:344 build/C/man2/socketpair.2:90
+#: build/C/man2/socket.2:342 build/C/man2/socketpair.2:92
 #, no-wrap
 msgid "B<EPROTONOSUPPORT>"
 msgstr "B<EPROTONOSUPPORT>"
 
 #. type: Plain text
-#: build/C/man2/socket.2:348
+#: build/C/man2/socket.2:346
 msgid ""
 "The protocol type or the specified protocol is not supported within this "
 "domain."
 msgstr ""
-"ã\81\93ã\81®ã\83\89ã\83¡ã\82¤ã\83³ã\81§ã\81¯æ\8c\87å®\9aã\81\95ã\82\8cã\81\9fã\83\97ã\83­ã\83\88ã\82³ã\83«ã\81¾ã\81\9fã\81¯ã\83\97ã\83­ã\83\88ã\82³ã\83«ã\83»ã\82¿ã\82¤ã\83\97ã\81\8c ã\82µã\83\9dã\83¼ã\83\88ã\81\95ã\82\8cã\81¦"
-"ã\81\84ã\81ªã\81\84ã\80\82"
+"ã\81\93ã\81®ã\83\89ã\83¡ã\82¤ã\83³ã\81§ã\81¯æ\8c\87å®\9aã\81\95ã\82\8cã\81\9fã\83\97ã\83­ã\83\88ã\82³ã\83«ã\81¾ã\81\9fã\81¯ã\83\97ã\83­ã\83\88ã\82³ã\83«ã\82¿ã\82¤ã\83\97ã\81\8c ã\82µã\83\9dã\83¼ã\83\88ã\81\95ã\82\8cã\81¦ã\81\84"
+"ない。"
 
 #. type: Plain text
-#: build/C/man2/socket.2:350
+#: build/C/man2/socket.2:348
 msgid "Other errors may be generated by the underlying protocol modules."
-msgstr "ä¸\8bä½\8dã\81®ã\83\97ã\83­ã\83\88ã\82³ã\83«ã\83»ã\83¢ã\82¸ã\83¥ã\83¼ã\83«ã\81\8bã\82\89ä»\96ã\81®ã\82¨ã\83©ã\83¼ã\81\8cç\94\9fæ\88\90ã\81\95ã\82\8cã\82\8bã\81\8bã\82\82ã\81\97ã\82\8cã\81ªã\81\84ã\80\82"
+msgstr "下位のプロトコルモジュールから他のエラーが生成されるかもしれない。"
 
 #. type: Plain text
-#: build/C/man2/socket.2:352
+#: build/C/man2/socket.2:350
 msgid "4.4BSD, POSIX.1-2001."
 msgstr "4.4BSD, POSIX.1-2001."
 
 #. type: Plain text
-#: build/C/man2/socket.2:358
+#: build/C/man2/socket.2:356
 msgid "The B<SOCK_NONBLOCK> and B<SOCK_CLOEXEC> flags are Linux-specific."
 msgstr "フラグ B<SOCK_NONBLOCK>, B<SOCK_CLOEXEC> は Linux 固有である。"
 
 #. type: Plain text
-#: build/C/man2/socket.2:364
+#: build/C/man2/socket.2:362
 msgid ""
 "B<socket>()  appeared in 4.2BSD.  It is generally portable to/from non-BSD "
-"systems supporting clones of the BSD socket layer (including System V "
+"systems supporting clones of the BSD socket layer (including System\\ V "
 "variants)."
 msgstr ""
-"B<socket>()  は 4.2BSD で登場した。一般に、(System V の変種を含めて)  BSD の"
-"ã\82½ã\82±ã\83\83ã\83\88層ã\81®äº\92æ\8f\9bæ\80§ã\82\92ã\82µã\83\9dã\83¼ã\83\88ã\81\97ã\81¦ã\81\84ã\82\8b BSD ä»¥å¤\96ã\81®ã\82·ã\82¹ã\83\86ã\83 ã\81¸ã\81®ã\80\81 ã\81¾ã\81\9fã\81¯ã\80\81BSD ä»¥"
-"外のシステムからの移植ができる。"
+"B<socket>()  は 4.2BSD で登場した。一般に、(System\\ V の変種を含めて)  BSD "
+"ã\81®ã\82½ã\82±ã\83\83ã\83\88層ã\81®äº\92æ\8f\9bæ\80§ã\82\92ã\82µã\83\9dã\83¼ã\83\88ã\81\97ã\81¦ã\81\84ã\82\8b BSD ä»¥å¤\96ã\81®ã\82·ã\82¹ã\83\86ã\83 ã\81¸ã\81®ã\80\81 ã\81¾ã\81\9fã\81¯ã\80\81BSD "
+"外のシステムからの移植ができる。"
 
 #. type: Plain text
-#: build/C/man2/socket.2:382
+#: build/C/man2/socket.2:381
 msgid ""
 "The manifest constants used under 4.x BSD for protocol families are "
-"B<PF_UNIX>, B<PF_INET>, etc., while B<AF_UNIX> etc. are used for address "
-"families.  However, already the BSD man page promises: \"The protocol family "
-"generally is the same as the address family\", and subsequent standards use "
-"AF_* everywhere."
+"B<PF_UNIX>, B<PF_INET>, and so on, while B<AF_UNIX>, B<AF_INET>, and so on "
+"are used for address families.  However, already the BSD man page promises: "
+"\"The protocol family generally is the same as the address family\", and "
+"subsequent standards use AF_* everywhere."
 msgstr ""
-"4.x BSD において定数を使用する場合、プロトコル・ファミリーには B<PF_UNIX>, "
-"B<PF_INET> 等を使用している。一方でアドレス・ファミリーには B<AF_UNIX> 等が使"
-"用されている。しかしながら BSD のマニュアルでは 「一般にプロトコル・ファミ"
-"リーはアドレス・ファミリーと同じものである。」 と保証している。それでそれ以外"
-"の規格では全ての場所で AF_* が使用されている。"
+"4.x BSD において定数を使用する場合、プロトコルファミリーには\n"
+"B<PF_UNIX>, B<PF_INET> 等を使用している。一方でアドレスファミリーには\n"
+"B<AF_UNIX>, B<AF_INET> 等が使用されている。\n"
+"しかしながら BSD のマニュアルでは 「一般にプロトコルファミリーは\n"
+"アドレスファミリーと同じものである。」 と保証している。\n"
+"それ以外の規格では全ての場所で AF_* が使用されている。"
 
 #. type: Plain text
-#: build/C/man2/socket.2:387
+#: build/C/man2/socket.2:386
 msgid "An example of the use of B<socket>()  is shown in B<getaddrinfo>(3)."
 msgstr "B<socket>()  の利用例が B<getaddrinfo>(3)  に記載されている。"
 
 #. type: Plain text
-#: build/C/man2/socket.2:410
+#: build/C/man2/socket.2:409
 msgid ""
 "B<accept>(2), B<bind>(2), B<connect>(2), B<fcntl>(2), B<getpeername>(2), "
 "B<getsockname>(2), B<getsockopt>(2), B<ioctl>(2), B<listen>(2), B<read>(2), "
 "B<recv>(2), B<select>(2), B<send>(2), B<shutdown>(2), B<socketpair>(2), "
-"B<write>(2), B<getprotoent>(3), B<ip>(7), B<socket>(7), B<tcp>(7), B<udp>"
-"(7), B<unix>(7)"
+"B<write>(2), B<getprotoent>(3), B<ip>(7), B<socket>(7), B<tcp>(7), "
+"B<udp>(7), B<unix>(7)"
 msgstr ""
 "B<accept>(2), B<bind>(2), B<connect>(2), B<fcntl>(2), B<getpeername>(2), "
 "B<getsockname>(2), B<getsockopt>(2), B<ioctl>(2), B<listen>(2), B<read>(2), "
 "B<recv>(2), B<select>(2), B<send>(2), B<shutdown>(2), B<socketpair>(2), "
-"B<write>(2), B<getprotoent>(3), B<ip>(7), B<socket>(7), B<tcp>(7), B<udp>"
-"(7), B<unix>(7)"
-
-#. type: Plain text
-#: build/C/man2/socket.2:414
-msgid ""
-"\\(lqAn Introductory 4.3BSD Interprocess Communication Tutorial\\(rq is "
-"reprinted in I<UNIX Programmer's Supplementary Documents Volume 1.>"
-msgstr ""
-"\\(lqAn Introductory 4.3BSD Interprocess Communication Tutorial\\(rq は "
-"I<UNIX Programmer's Supplementary Documents Volume 1> として再版された。"
+"B<write>(2), B<getprotoent>(3), B<ip>(7), B<socket>(7), B<tcp>(7), "
+"B<udp>(7), B<unix>(7)"
 
 #. type: Plain text
-#: build/C/man2/socket.2:417
+#: build/C/man2/socket.2:415
 msgid ""
-"\\(lqBSD Interprocess Communication Tutorial\\(rq is reprinted in I<UNIX "
+"\\(lqAn Introductory 4.3BSD Interprocess Communication Tutorial\\(rq and "
+"\\(lqBSD Interprocess Communication Tutorial\\(rq, reprinted in I<UNIX "
 "Programmer's Supplementary Documents Volume 1.>"
 msgstr ""
-"\\(lqBSD Interprocess Communication Tutorial\\(rq は I<UNIX Programmer's "
-"Supplementary Documents Volume 1> として再版された。"
-
-#. type: TH
-#: build/C/man7/socket.7:26
-#, no-wrap
-msgid "2010-06-13"
-msgstr "2010-06-13"
+"\\(lqAn Introductory 4.3BSD Interprocess Communication Tutorial\\(rq and "
+"\\(lqBSD Interprocess Communication Tutorial\\(rq, (I<UNIX Programmer's "
+"Supplementary Documents Volume 1.> として再版された)"
 
 #. type: Plain text
-#: build/C/man7/socket.7:29
+#: build/C/man7/socket.7:61
 msgid "socket - Linux socket interface"
 msgstr "socket - Linux のソケットインターフェース"
 
 #. type: Plain text
-#: build/C/man7/socket.7:33
+#: build/C/man7/socket.7:65
 msgid ""
 "I<sockfd>B< = socket(int >I<socket_family>B<, int >I<socket_type>B<, int "
 ">I<protocol>B<);>"
@@ -7403,48 +8623,49 @@ msgstr ""
 ">I<protocol>B<);>"
 
 #. type: Plain text
-#: build/C/man7/socket.7:52
+#: build/C/man7/socket.7:84
 msgid ""
 "This manual page describes the Linux networking socket layer user "
 "interface.  The BSD compatible sockets are the uniform interface between the "
 "user process and the network protocol stacks in the kernel.  The protocol "
-"modules are grouped into I<protocol families> like B<AF_INET>, B<AF_IPX>, "
-"B<AF_PACKET> and I<socket types> like B<SOCK_STREAM> or B<SOCK_DGRAM>.  See "
-"B<socket>(2)  for more information on families and types."
-msgstr ""
-"ã\81\93ã\81®ã\83\9eã\83\8bã\83¥ã\82¢ã\83«ã\83\9aã\83¼ã\82¸ã\81¯ Linux ã\83\8dã\83\83ã\83\88ã\83¯ã\83¼ã\82¯ã\81®ã\82½ã\82±ã\83\83ã\83\88層ã\81«å¯¾ã\81\99ã\82\8b ã\83¦ã\83¼ã\82¶ã\82¤ã\83³ã\82¿ã\83¼"
-"ã\83\95ã\82§ã\83¼ã\82¹ã\82\92è¨\98è¿°ã\81\99ã\82\8bã\82\82ã\81®ã\81§ã\81\82ã\82\8bã\80\82 BSD äº\92æ\8f\9bã\82½ã\82±ã\83\83ã\83\88ã\81¯ã\80\81ã\83¦ã\83¼ã\82¶ã\83\97ã\83­ã\82»ã\82¹ã\81¨ã\82«ã\83¼ã\83\8dã\83«å\86\85"
-"部の ネットワークプロトコルスタック群との間に、 統一的なインターフェースを提"
-"供するものである。 プロトコルモジュールは I<プロトコルファミリー (protocol "
-"familiy)> (例: B<AF_INET>, B<AF_IPX>, B<AF_PACKET>)  と I<ソケットタイプ "
-"(socket types)> (例: B<SOCK_STREAM>, B<SOCK_DGRAM>)  に分類できる。 これらに"
-"関するより詳しい情報は B<socket>(2)  を参照のこと。"
+"modules are grouped into I<protocol families> such as B<AF_INET>, B<AF_IPX>, "
+"and B<AF_PACKET>, and I<socket types> such as B<SOCK_STREAM> or "
+"B<SOCK_DGRAM>.  See B<socket>(2)  for more information on families and types."
+msgstr ""
+"ã\81\93ã\81®ã\83\9eã\83\8bã\83¥ã\82¢ã\83«ã\83\9aã\83¼ã\82¸ã\81¯ Linux ã\83\8dã\83\83ã\83\88ã\83¯ã\83¼ã\82¯ã\81®ã\82½ã\82±ã\83\83ã\83\88層ã\81«å¯¾ã\81\99ã\82\8b ã\83¦ã\83¼ã\82¶ã\83¼ã\82¤ã\83³"
+"ã\82¿ã\83¼ã\83\95ã\82§ã\83¼ã\82¹ã\82\92è¨\98è¿°ã\81\99ã\82\8bã\82\82ã\81®ã\81§ã\81\82ã\82\8bã\80\82 BSD äº\92æ\8f\9bã\82½ã\82±ã\83\83ã\83\88ã\81¯ã\80\81ã\83¦ã\83¼ã\82¶ã\83¼ã\83\97ã\83­ã\82»ã\82¹ã\81¨ã\82«ã\83¼"
+"ネル内部の ネットワークプロトコルスタック群との間に、 統一的なインターフェー"
+"スを提供するものである。 プロトコルモジュールは I<プロトコルファミリー "
+"(protocol familiy)> (例: B<AF_INET>, B<AF_IPX>, B<AF_PACKET>)  と I<ソケット"
+"タイプ (socket types)> (例: B<SOCK_STREAM>, B<SOCK_DGRAM>)  に分類できる。 "
+"これらに関するより詳しい情報は B<socket>(2)  を参照のこと。"
 
 #. type: SS
-#: build/C/man7/socket.7:52
+#: build/C/man7/socket.7:84
 #, no-wrap
-msgid "Socket Layer Functions"
+msgid "Socket-layer functions"
 msgstr "ソケット層の関数群"
 
 #. type: Plain text
-#: build/C/man7/socket.7:56
+#: build/C/man7/socket.7:88
 msgid ""
 "These functions are used by the user process to send or receive packets and "
 "to do other socket operations.  For more information see their respective "
 "manual pages."
 msgstr ""
-"これらの関数はユーザプロセスがパケットを送受信したり、その他のソケット操作を "
-"行ったりするために用いられる。詳細はそれぞれのマニュアルページを 見てほしい。"
+"これらの関数はユーザープロセスがパケットを送受信したり、その他のソケット操作"
+"を 行ったりするために用いられる。詳細はそれぞれのマニュアルページを 見てほし"
+"い。"
 
 #. type: Plain text
-#: build/C/man7/socket.7:72
+#: build/C/man7/socket.7:104
 msgid ""
 "B<socket>(2)  creates a socket, B<connect>(2)  connects a socket to a remote "
 "socket address, the B<bind>(2)  function binds a socket to a local socket "
 "address, B<listen>(2)  tells the socket that new connections shall be "
 "accepted, and B<accept>(2)  is used to get a new socket with a new incoming "
-"connection.  B<socketpair>(2)  returns two connected anonymous sockets (only "
-"implemented for a few local families like B<AF_UNIX>)"
+"connection.  B<socketpair>(2)  returns two connected anonymous sockets "
+"(implemented only for a few local families like B<AF_UNIX>)"
 msgstr ""
 "B<socket>(2)  はソケットを生成する。 B<connect>(2)  はソケットをリモートのソ"
 "ケットアドレスに接続する。 B<bind>(2)  はソケットをローカルのソケットアドレス"
@@ -7455,14 +8676,14 @@ msgstr ""
 "リーでしか実装されていない)。"
 
 #. type: Plain text
-#: build/C/man7/socket.7:94
+#: build/C/man7/socket.7:126
 msgid ""
 "B<send>(2), B<sendto>(2), and B<sendmsg>(2)  send data over a socket, and "
 "B<recv>(2), B<recvfrom>(2), B<recvmsg>(2)  receive data from a socket.  "
 "B<poll>(2)  and B<select>(2)  wait for arriving data or a readiness to send "
-"data.  In addition, the standard I/O operations like B<write>(2), B<writev>"
-"(2), B<sendfile>(2), B<read>(2), and B<readv>(2)  can be used to read and "
-"write data."
+"data.  In addition, the standard I/O operations like B<write>(2), "
+"B<writev>(2), B<sendfile>(2), B<read>(2), and B<readv>(2)  can be used to "
+"read and write data."
 msgstr ""
 "B<send>(2), B<sendto>(2), B<sendmsg>(2)  はソケットを通してデータを送信し、 "
 "B<recv>(2)  B<recvfrom>(2), B<recvmsg>(2)  はソケットからデータを受信する。 "
@@ -7472,7 +8693,7 @@ msgstr ""
 "ことができる。"
 
 #. type: Plain text
-#: build/C/man7/socket.7:105
+#: build/C/man7/socket.7:137
 msgid ""
 "B<getsockname>(2)  returns the local socket address and B<getpeername>(2)  "
 "returns the remote socket address.  B<getsockopt>(2)  and B<setsockopt>(2)  "
@@ -7485,7 +8706,7 @@ msgstr ""
 "いくつかのオプションの取得・設定には B<ioctl>(2)  を使うことができる。"
 
 #. type: Plain text
-#: build/C/man7/socket.7:110
+#: build/C/man7/socket.7:142
 msgid ""
 "B<close>(2)  is used to close a socket.  B<shutdown>(2)  closes parts of a "
 "full-duplex socket connection."
@@ -7494,7 +8715,7 @@ msgstr ""
 "続を部分的にクローズする。"
 
 #. type: Plain text
-#: build/C/man7/socket.7:116
+#: build/C/man7/socket.7:148
 msgid ""
 "Seeking, or calling B<pread>(2)  or B<pwrite>(2)  with a nonzero position is "
 "not supported on sockets."
@@ -7503,7 +8724,7 @@ msgstr ""
 "ではサポートされていない。"
 
 #. type: Plain text
-#: build/C/man7/socket.7:133
+#: build/C/man7/socket.7:165
 msgid ""
 "It is possible to do nonblocking I/O on sockets by setting the B<O_NONBLOCK> "
 "flag on a socket file descriptor using B<fcntl>(2).  Then all operations "
@@ -7512,176 +8733,176 @@ msgid ""
 "can then wait for various events via B<poll>(2)  or B<select>(2)."
 msgstr ""
 "非ブロッキングな I/O をソケットで行うことは可能で、 B<fcntl>(2)  を使ってソ"
-"ã\82±ã\83\83ã\83\88ã\81®ã\83\95ã\82¡ã\82¤ã\83«ã\83\87ã\82£ã\82¹ã\82¯ã\83ªã\83\97ã\82¿ã\81« B<O_NONBLOCK> ã\83\95ã\83©ã\82°ã\82\92ã\82»ã\83\83ã\83\88ã\81\99ã\82\8cã\81°è\89¯ã\81\84ã\80\82 ã\81\93"
-"ã\81\86ã\81\99ã\82\8bã\81¨ã\83\96ã\83­ã\83\83ã\82¯ã\81\95ã\82\8cã\82\8bæ\93\8dä½\9cã\81¯ã\80\81 (é\80\9a常)  B<EAGAIN> ã\82¨ã\83©ã\83¼ã\81§æ\88»ã\82\8bã\81\93ã\81¨ã\81«ã\81ªã\82\8b (å¾\8cã\81§"
-"処理が再試行されることが期待されている)。 B<connect>(2)  では B<EINPROGRESS> "
-"エラーが返される。 この場合、ユーザはさまざまなイベントを B<poll>(2)  や "
-"B<select>(2)  を使って待つことができる。"
+"ã\82±ã\83\83ã\83\88ã\81®ã\83\95ã\82¡ã\82¤ã\83«ã\83\87ã\82£ã\82¹ã\82¯ã\83ªã\83\97ã\82¿ã\83¼ã\81« B<O_NONBLOCK> ã\83\95ã\83©ã\82°ã\82\92ã\82»ã\83\83ã\83\88ã\81\99ã\82\8cã\81°è\89¯ã\81\84ã\80\82 "
+"ã\81\93ã\81\86ã\81\99ã\82\8bã\81¨ã\83\96ã\83­ã\83\83ã\82¯ã\81\95ã\82\8cã\82\8bæ\93\8dä½\9cã\81¯ã\80\81 (é\80\9a常)  B<EAGAIN> ã\82¨ã\83©ã\83¼ã\81§æ\88»ã\82\8bã\81\93ã\81¨ã\81«ã\81ªã\82\8b (å¾\8c"
+"で処理が再試行されることが期待されている)。 B<connect>(2)  では "
+"B<EINPROGRESS> エラーが返される。 この場合、ユーザーはさまざまなイベントを "
+"B<poll>(2)  や B<select>(2)  を使って待つことができる。"
 
 #. type: tbl table
-#: build/C/man7/socket.7:137
+#: build/C/man7/socket.7:169
 #, no-wrap
 msgid "I/O events\n"
 msgstr "I/O イベント\n"
 
 #. type: tbl table
-#: build/C/man7/socket.7:138
+#: build/C/man7/socket.7:170
 #, no-wrap
 msgid "Event:Poll flag:Occurrence\n"
 msgstr "イベント:poll フラグ:内容\n"
 
 #. type: tbl table
-#: build/C/man7/socket.7:139 build/C/man7/socket.7:142
+#: build/C/man7/socket.7:171 build/C/man7/socket.7:174
 #, no-wrap
 msgid "Read:POLLIN:T{\n"
 msgstr "Read:POLLIN:T{\n"
 
 #. type: tbl table
-#: build/C/man7/socket.7:140
+#: build/C/man7/socket.7:172
 #, no-wrap
 msgid "New data arrived.\n"
 msgstr "新しいデータが到着した。\n"
 
 #. type: tbl table
-#: build/C/man7/socket.7:143
+#: build/C/man7/socket.7:175
 #, no-wrap
 msgid "A connection setup has been completed\n"
 msgstr "(接続志向のソケットで)\n"
 
 #. type: tbl table
-#: build/C/man7/socket.7:144
+#: build/C/man7/socket.7:176
 #, no-wrap
 msgid "(for connection-oriented sockets)\n"
 msgstr "接続の設定が終了した。\n"
 
 #. type: tbl table
-#: build/C/man7/socket.7:146 build/C/man7/socket.7:149
+#: build/C/man7/socket.7:178 build/C/man7/socket.7:181
 #, no-wrap
 msgid "Read:POLLHUP:T{\n"
 msgstr "Read:POLLHUP:T{\n"
 
 #. type: tbl table
-#: build/C/man7/socket.7:147
+#: build/C/man7/socket.7:179
 #, no-wrap
 msgid "A disconnection request has been initiated by the other end.\n"
 msgstr "接続先で切断要求が生成された。\n"
 
 #. type: tbl table
-#: build/C/man7/socket.7:150
+#: build/C/man7/socket.7:182
 #, no-wrap
 msgid "A connection is broken (only for connection-oriented protocols).\n"
 msgstr "接続が壊れた (接続志向のプロトコルのみ)。\n"
 
 #. type: tbl table
-#: build/C/man7/socket.7:151
+#: build/C/man7/socket.7:183
 #, no-wrap
 msgid "When the socket is written\n"
 msgstr "この場合、ソケットに書き込みが行われると\n"
 
 #. type: tbl table
-#: build/C/man7/socket.7:152
+#: build/C/man7/socket.7:184
 #, no-wrap
 msgid "B<SIGPIPE>\n"
 msgstr "B<SIGPIPE>\n"
 
 #. type: tbl table
-#: build/C/man7/socket.7:153
+#: build/C/man7/socket.7:185
 #, no-wrap
 msgid "is also sent.\n"
 msgstr "も送信される。\n"
 
 #. type: tbl table
-#: build/C/man7/socket.7:155
+#: build/C/man7/socket.7:187
 #, no-wrap
 msgid "Write:POLLOUT:T{\n"
 msgstr "Write:POLLOUT:T{\n"
 
 #. type: tbl table
-#: build/C/man7/socket.7:156
+#: build/C/man7/socket.7:188
 #, no-wrap
 msgid "Socket has enough send buffer space for writing new data.\n"
-msgstr "ã\82½ã\82±ã\83\83ã\83\88ã\81«ã\81¯æ\96°ã\81\97ã\81\84ã\83\87ã\83¼ã\82¿ã\82\92æ\9b¸ã\81\8dè¾¼ã\82\80ã\81®ã\81«å\85\85å\88\86ã\81ªã\83\90ã\83\83ã\83\95ã\82¡é \98å\9f\9fがある。\n"
+msgstr "ã\82½ã\82±ã\83\83ã\83\88ã\81«ã\81¯æ\96°ã\81\97ã\81\84ã\83\87ã\83¼ã\82¿ã\82\92æ\9b¸ã\81\8dè¾¼ã\82\80ã\81®ã\81«å\8d\81å\88\86ã\81ªã\83\90ã\83\83ã\83\95ã\82¡ã\83¼がある。\n"
 
 #. type: tbl table
-#: build/C/man7/socket.7:158
+#: build/C/man7/socket.7:190
 #, no-wrap
 msgid "Read/Write:T{\n"
 msgstr "Read/Write:T{\n"
 
 #. type: tbl table
-#: build/C/man7/socket.7:159
+#: build/C/man7/socket.7:191
 #, no-wrap
 msgid "POLLIN|\n"
 msgstr "POLLIN|\n"
 
 #. type: tbl table
-#: build/C/man7/socket.7:160
+#: build/C/man7/socket.7:192
 #, no-wrap
 msgid ".br\n"
 msgstr ".br\n"
 
 #. type: tbl table
-#: build/C/man7/socket.7:161
+#: build/C/man7/socket.7:193
 #, no-wrap
 msgid "POLLOUT\n"
 msgstr "POLLOUT\n"
 
 #. type: tbl table
-#: build/C/man7/socket.7:163
+#: build/C/man7/socket.7:195
 #, no-wrap
 msgid "An outgoing\n"
 msgstr "外部向けの\n"
 
 #. type: tbl table
-#: build/C/man7/socket.7:164
+#: build/C/man7/socket.7:196
 #, no-wrap
 msgid "B<connect>(2)\n"
 msgstr "B<connect>(2)\n"
 
 #. type: tbl table
-#: build/C/man7/socket.7:165
+#: build/C/man7/socket.7:197
 #, no-wrap
 msgid "finished.\n"
 msgstr "が終了した。\n"
 
 #. type: tbl table
-#: build/C/man7/socket.7:167
+#: build/C/man7/socket.7:199
 #, no-wrap
 msgid "Read/Write:POLLERR:An asynchronous error occurred.\n"
 msgstr "Read/Write:POLLERR:非同期的 (asynchronous) なエラーが起こった。\n"
 
 #. type: tbl table
-#: build/C/man7/socket.7:168
+#: build/C/man7/socket.7:200
 #, no-wrap
 msgid "Read/Write:POLLHUP:The other end has shut down one direction.\n"
 msgstr "Read/Write:POLLHUP:接続先が片方向を切断した。\n"
 
 #. type: tbl table
-#: build/C/man7/socket.7:169
+#: build/C/man7/socket.7:201
 #, no-wrap
 msgid "Exception:POLLPRI:T{\n"
 msgstr "Exception:POLLPRI:T{\n"
 
 #. type: tbl table
-#: build/C/man7/socket.7:170
+#: build/C/man7/socket.7:202
 #, no-wrap
 msgid "Urgent data arrived.\n"
 msgstr "緊急データ (urgent data) が到着した。この場合は\n"
 
 #. type: tbl table
-#: build/C/man7/socket.7:171
+#: build/C/man7/socket.7:203
 #, no-wrap
 msgid "B<SIGURG>\n"
 msgstr "B<SIGURG>\n"
 
 #. type: tbl table
-#: build/C/man7/socket.7:172
+#: build/C/man7/socket.7:204
 #, no-wrap
 msgid "is sent then.\n"
 msgstr "が送信される。\n"
 
 #. type: Plain text
-#: build/C/man7/socket.7:202
+#: build/C/man7/socket.7:233
 msgid ""
 "An alternative to B<poll>(2)  and B<select>(2)  is to let the kernel inform "
 "the application about events via a B<SIGIO> signal.  For that the B<O_ASYNC> "
@@ -7691,40 +8912,117 @@ msgid ""
 msgstr ""
 "B<poll>(2)  や B<select>(2)  を使う代わりに、カーネルからアプリケーションに "
 "イベントを通知させるのに B<SIGIO> シグナルを使う方法もある。 この方法を使うに"
-"ã\81¯ã\80\81 B<fcntl>(2)  ã\82\92ç\94¨ã\81\84ã\81¦ã\82½ã\82±ã\83\83ã\83\88ã\81®ã\83\95ã\82¡ã\82¤ã\83«ã\83\87ã\82£ã\82¹ã\82¯ã\83ªã\83\97ã\82¿ã\81« B<O_ASYNC> ã\83\95ã\83©"
-"ã\82°ã\82\92ã\82»ã\83\83ã\83\88ã\81\97ã\80\81 B<SIGIO> ã\81«å¯¾ã\81\99ã\82\8bæ\9c\89å\8a¹ã\81ªã\82·ã\82°ã\83\8aã\83«ã\83\8fã\83³ã\83\89ã\83©ã\82\92 B<sigaction>(2)  ã\81«"
-"よって設定しておく必要がある。 後述の I<シグナル> に関する議論も参考にするこ"
-"と。"
+"ã\81¯ã\80\81 B<fcntl>(2)  ã\82\92ç\94¨ã\81\84ã\81¦ã\82½ã\82±ã\83\83ã\83\88ã\81®ã\83\95ã\82¡ã\82¤ã\83«ã\83\87ã\82£ã\82¹ã\82¯ã\83ªã\83\97ã\82¿ã\83¼ã\81« B<O_ASYNC> ã\83\95"
+"ã\83©ã\82°ã\82\92ã\82»ã\83\83ã\83\88ã\81\97ã\80\81 B<SIGIO> ã\81«å¯¾ã\81\99ã\82\8bæ\9c\89å\8a¹ã\81ªã\82·ã\82°ã\83\8aã\83«ã\83\8fã\83³ã\83\89ã\83©ã\83¼ã\82\92 "
+"B<sigaction>(2)  によって設定しておく必要がある。 後述の I<シグナル> に関する"
+"議論も参考にすること。"
 
 #. type: SS
-#: build/C/man7/socket.7:202
+#: build/C/man7/socket.7:233
+#, no-wrap
+msgid "Socket address structures"
+msgstr "ソケットアドレス構造体"
+
+#. type: Plain text
+#: build/C/man7/socket.7:249
+msgid ""
+"Each socket domain has its own format for socket addresses, with a domain-"
+"specific address structure.  Each of these structures begins with an integer "
+"\"family\" field (typed as I<sa_family_t>)  that indicates the type of the "
+"address structure.  This allows the various system calls (e.g., "
+"B<connect>(2), B<bind>(2), B<accept>(2), B<getsockname>(2), "
+"B<getpeername>(2)), which are generic to all socket domains, to determine "
+"the domain of a particular socket address."
+msgstr ""
+"各ソケットドメインにはそれぞれ独自のソケットアドレス形式があり、ドメイン固有"
+"のアドレス構造体を持っている。 これらの構造体の先頭には、アドレス構造体の種類"
+"を示す整数の \"family\" フィールド (型は I<sa_family_t>) がある。 このフィー"
+"ルドにより、 すべてのソケットドメインで汎用的に使用されるシステムコール (例え"
+"ば、 B<connect>(2), B<bind>(2), B<accept>(2), B<getsockname>(2), "
+"B<getpeername>(2) など) が、特定のソケットアドレスのドメインを判定することが"
+"できる。"
+
+#. type: Plain text
+#: build/C/man7/socket.7:259
+msgid ""
+"To allow any type of socket address to be passed to interfaces in the "
+"sockets API, the type I<struct sockaddr> is defined.  The purpose of this "
+"type is purely to allow casting of domain-specific socket address types to a "
+"\"generic\" type, so as to avoid compiler warnings about type mismatches in "
+"calls to the sockets API."
+msgstr ""
+"任意の種類のソケットアドレスをソケット API のインターフェースに渡せるよう"
+"に、 I<struct sockaddr> 型が定義されている。 この型の目的は、 純粋に、 ドメイ"
+"ン固有のソケットアドレスを 「汎用的な」型にキャストできるようにする点にあ"
+"る。 これにより、 ソケット API 呼び出しにおいて、 コンパイラが型の不一致の警"
+"告を出すのを避けることができる。"
+
+#. type: Plain text
+#: build/C/man7/socket.7:269
+msgid ""
+"In addition, the sockets API provides the data type I<struct "
+"sockaddr_storage>.  This type is suitable to accommodate all supported "
+"domain-specific socket address structures; it is large enough and is aligned "
+"properly.  (In particular, it is large enough to hold IPv6 socket "
+"addresses.)  The structure includes the following field, which can be used "
+"to identify the type of socket address actually stored in the structure:"
+msgstr ""
+"これに加えて、ソケット API ではデータ型 I<struct sockaddr_storage> が提供され"
+"ている。 サポートしているすべてのドメイン固有のソケットアドレス構造体を収容す"
+"るのに、この型を使うことができる。 この型は十分な大きさがあり、(メモリー境界"
+"への) アラインも適切に行われている (特に、 IPv6 ソケットアドレスを収容するの"
+"にも十分な大きさである)。 この構造体には次のフィールドがあり、 このフィールド"
+"を使って、 この構造体に実際に格納されているソケットアドレスの型を特定すること"
+"ができる。"
+
+#. type: Plain text
+#: build/C/man7/socket.7:273
+#, no-wrap
+msgid "    sa_family_t ss_family;\n"
+msgstr "    sa_family_t ss_family;\n"
+
+#. type: Plain text
+#: build/C/man7/socket.7:281
+msgid ""
+"The I<sockaddr_storage> structure is useful in programs that must handle "
+"socket addresses in a generic way (e.g., programs that must deal with both "
+"IPv4 and IPv6 socket addresses)."
+msgstr ""
+"I<sockaddr_storage> 構造体は、 ソケットアドレスを汎用的な方法で扱う必要がある"
+"プログラム (例えば、 IPv4 と IPv6 の両方のソケットアドレスを扱う必要があるプ"
+"ログラム) で有用である。"
+
+#. type: SS
+#: build/C/man7/socket.7:281
 #, no-wrap
-msgid "Socket Options"
+msgid "Socket options"
 msgstr "ソケットオプション"
 
-#.  FIXME
+#.  FIXME .
 #.  In the list below, the text used to describe argument types
 #.  for each socket option should be more consistent
 #.  SO_ACCEPTCONN is in POSIX.1-2001, and its origin is explained in
 #.  W R Stevens, UNPv1
 #. type: Plain text
-#: build/C/man7/socket.7:216
+#: build/C/man7/socket.7:299
 msgid ""
-"These socket options can be set by using B<setsockopt>(2)  and read with "
-"B<getsockopt>(2)  with the socket level set to B<SOL_SOCKET> for all sockets:"
+"The socket options listed below can be set by using B<setsockopt>(2)  and "
+"read with B<getsockopt>(2)  with the socket level set to B<SOL_SOCKET> for "
+"all sockets.  Unless otherwise noted, I<optval> is a pointer to an I<int>."
 msgstr ""
 "これらのソケットオプションは、 B<setsockopt>(2)  を用いれば設定でき、 "
 "B<getsockopt>(2)  を用いれば取得できる。 但し、どのソケットの場合も ソケット"
-"レベルには B<SOL_SOCKET> を指定すること。"
+"レベルには B<SOL_SOCKET> を指定すること。 注釈がない限り、 I<optval> は "
+"I<int> へのポインターである。"
 
 #. type: TP
-#: build/C/man7/socket.7:216
+#: build/C/man7/socket.7:299
 #, no-wrap
 msgid "B<SO_ACCEPTCONN>"
 msgstr "B<SO_ACCEPTCONN>"
 
 #. type: Plain text
-#: build/C/man7/socket.7:224
+#: build/C/man7/socket.7:307
 msgid ""
 "Returns a value indicating whether or not this socket has been marked to "
 "accept connections with B<listen>(2).  The value 0 indicates that this is "
@@ -7736,13 +9034,13 @@ msgstr ""
 "状態のソケットであることを示す。このソケットオプションは読み込み専用である。"
 
 #. type: TP
-#: build/C/man7/socket.7:224
+#: build/C/man7/socket.7:307
 #, no-wrap
 msgid "B<SO_BINDTODEVICE>"
 msgstr "B<SO_BINDTODEVICE>"
 
 #. type: Plain text
-#: build/C/man7/socket.7:243
+#: build/C/man7/socket.7:326
 msgid ""
 "Bind this socket to a particular device like \\(lqeth0\\(rq, as specified in "
 "the passed interface name.  If the name is an empty string or the option "
@@ -7750,51 +9048,63 @@ msgid ""
 "a variable-length null-terminated interface name string with the maximum "
 "size of B<IFNAMSIZ>.  If a socket is bound to an interface, only packets "
 "received from that particular interface are processed by the socket.  Note "
-"that this only works for some socket types, particularly B<AF_INET> "
+"that this works only for some socket types, particularly B<AF_INET> "
 "sockets.  It is not supported for packet sockets (use normal B<bind>(2)  "
 "there)."
 msgstr ""
-"このソケットを、引き数で渡したインターフェース名で指定される\n"
-"(\\(lqeth0\\(rq のような) 特定のデバイスにバインドする。\n"
-"名前が空文字列だったり、オプションの長さ (optlen) が 0 の場合には、\n"
-"ソケットのバインドが削除される。渡すオプションは、インターフェース名が\n"
-"入ったヌル文字で終端された可変長の文字列である。\n"
-"文字列の最大のサイズは B<IFNAMSIX> である。\n"
-"ソケットがインターフェースにバインドされると、その特定のインターフェース\n"
-"から受信されたパケットだけを処理する。\n"
-"このオプションはいくつかのソケットタイプ、\n"
-"特に B<AF_INET> に対してのみ動作する点に注意すること。\n"
-"パケットソケットではサポートされていない (通常の B<bind>(2) を使うこと)。"
+"このソケットを、引き数で渡したインターフェース名で指定される (\\(lqeth0\\(rq "
+"のような) 特定のデバイスにバインドする。 名前が空文字列だったり、オプションの"
+"長さ (optlen) が 0 の場合には、 ソケットのバインドが削除される。 渡すオプショ"
+"ンは、インターフェース名が 入ったヌル文字で終端された可変長の文字列である。 "
+"文字列の最大のサイズは B<IFNAMSIX> である。 ソケットがインターフェースにバイ"
+"ンドされると、 その特定のインターフェースから受信されたパケットだけを処理す"
+"る。 このオプションはいくつかのソケットタイプ、 特に B<AF_INET> に対してのみ"
+"動作する点に注意すること。 パケットソケットではサポートされていない (通常の "
+"B<bind>(2) を使うこと)。"
+
+#. type: Plain text
+#: build/C/man7/socket.7:340
+msgid ""
+"Before Linux 3.8, this socket option could be set, but could not retrieved "
+"with B<getsockopt>(2).  Since Linux 3.8, it is readable.  The I<optlen> "
+"argument should contain the buffer size available to receive the device name "
+"and is recommended to be B<IFNAMSZ> bytes.  The real device name length is "
+"reported back in the I<optlen> argument."
+msgstr ""
+"Linux 3.8 より前のバージョンでは、このソケットオプションは B<getsockname>(2) "
+"で設定することはできたが、取得することができなかった。 Linux 3.8 以降では、読"
+"み出すことができる。 I<optlen> 引き数には、 デバイス名を格納するのに十分な"
+"バッファーサイズを渡すべきであり、 B<IFNAMSIZ> バイトにすることを推奨する。 "
+"実際のデバイス名の長さは I<optlen> 引き数に格納されて返される。"
 
 #. type: TP
-#: build/C/man7/socket.7:243
+#: build/C/man7/socket.7:340
 #, no-wrap
 msgid "B<SO_BROADCAST>"
 msgstr "B<SO_BROADCAST>"
 
 #. type: Plain text
-#: build/C/man7/socket.7:250
+#: build/C/man7/socket.7:346
 msgid ""
-"Set or get the broadcast flag.  When enabled, datagram sockets receive "
-"packets sent to a broadcast address and they are allowed to send packets to "
-"a broadcast address.  This option has no effect on stream-oriented sockets."
+"Set or get the broadcast flag.  When enabled, datagram sockets are allowed "
+"to send packets to a broadcast address.  This option has no effect on stream-"
+"oriented sockets."
 msgstr ""
-"ブロードキャストフラグを設定・取得する。有効になっていると、 データグラムソ"
-"ケットはブロードキャストアドレスに送られたパケットを受信したり、 ブロードキャ"
-"ストアドレスにパケットを送信したりできるようになる。 ストリーム指向のソケット"
-"には何の効果もない。"
+"ブロードキャストフラグを設定・取得する。有効になっていると、データグラ\n"
+"ムソケットはブロードキャストアドレスにパケットを送信できるようになる。\n"
+"ストリーム指向のソケットには何の効果もない。"
 
 #. type: TP
-#: build/C/man7/socket.7:250
+#: build/C/man7/socket.7:346
 #, no-wrap
 msgid "B<SO_BSDCOMPAT>"
 msgstr "B<SO_BSDCOMPAT>"
 
 #. type: Plain text
-#: build/C/man7/socket.7:262
+#: build/C/man7/socket.7:358
 msgid ""
 "Enable BSD bug-to-bug compatibility.  This is used by the UDP protocol "
-"module in Linux 2.0 and 2.2.  If enabled ICMP errors received for a UDP "
+"module in Linux 2.0 and 2.2.  If enabled, ICMP errors received for a UDP "
 "socket will not be passed to the user program.  In later kernel versions, "
 "support for this option has been phased out: Linux 2.4 silently ignores it, "
 "and Linux 2.6 generates a kernel warning (printk()) if a program uses this "
@@ -7804,51 +9114,54 @@ msgid ""
 msgstr ""
 "BSD のバグに対して互換性を取るための機能を有効にする。 この機能は Linux 2.0 "
 "と 2.2 の UDP プロトコルモジュールで使用されている。 有効になっていると、 "
-"UDP ソケットで受信された ICMP エラーは ユーザプログラムに渡されない。 これ以"
-"降のバージョンのカーネルでは、このオプションのサポートは 段階的に廃止されてき"
-"た。 Linux 2.4 ではこのオプションは黙って無視され、 Linux 2.6 ではプログラム"
-"がこのオプションを使用すると (printk() を使って)  カーネルの警告メッセージが"
-"出力される。 Linux 2.0 では、このオプションを指定すると、 raw ソケットにおい"
-"ても BSD のバグ (ランダムヘッダ変更、 ブロードキャストフラグのスキップ)  に対"
-"する互換機能が有効になっていた。 しかし、こちらは Linux 2.2 で削除された。"
+"UDP ソケットで受信された ICMP エラーは ユーザープログラムに渡されない。 これ"
+"以降のバージョンのカーネルでは、このオプションのサポートは 段階的に廃止されて"
+"きた。 Linux 2.4 ではこのオプションは黙って無視され、 Linux 2.6 ではプログラ"
+"ムがこのオプションを使用すると (printk() を使って)  カーネルの警告メッセージ"
+"が出力される。 Linux 2.0 では、このオプションを指定すると、 raw ソケットにお"
+"いても BSD のバグ (ランダムヘッダー変更、 ブロードキャストフラグのスキップ)  "
+"に対する互換機能が有効になっていた。 しかし、こちらは Linux 2.2 で削除され"
+"た。"
 
 #. type: TP
-#: build/C/man7/socket.7:262
+#: build/C/man7/socket.7:358
 #, no-wrap
 msgid "B<SO_DEBUG>"
 msgstr "B<SO_DEBUG>"
 
 #. type: Plain text
-#: build/C/man7/socket.7:268
+#: build/C/man7/socket.7:364
 msgid ""
 "Enable socket debugging.  Only allowed for processes with the "
 "B<CAP_NET_ADMIN> capability or an effective user ID of 0."
 msgstr ""
 "ソケットのデバッグ機能を有効にする。 B<CAP_NET_ADMIN> 権限を持つプロセスか、"
-"実効ユーザ ID が 0 のプロセスでしか 利用できない。"
+"実効ユーザ ID が 0 のプロセスでしか 利用できない。"
 
 #. type: TP
-#: build/C/man7/socket.7:268
+#: build/C/man7/socket.7:364
 #, no-wrap
 msgid "B<SO_DOMAIN> (since Linux 2.6.32)"
 msgstr "B<SO_DOMAIN> (Linux 2.6.32 以降)"
 
 #. type: Plain text
-#: build/C/man7/socket.7:276
+#: build/C/man7/socket.7:372
 msgid ""
 "Retrieves the socket domain as an integer, returning a value such as "
 "B<AF_INET6>.  See B<socket>(2)  for details.  This socket option is read-"
 "only."
 msgstr ""
+"ソケットドメインを整数で取得する。 B<AF_INET6> のような値が返される。\n"
+"詳細は B<socket>(2) を参照。このソケットオプションは読み込み専用である。"
 
 #. type: TP
-#: build/C/man7/socket.7:276
+#: build/C/man7/socket.7:372
 #, no-wrap
 msgid "B<SO_ERROR>"
 msgstr "B<SO_ERROR>"
 
 #. type: Plain text
-#: build/C/man7/socket.7:281
+#: build/C/man7/socket.7:377
 msgid ""
 "Get and clear the pending socket error.  This socket option is read-only.  "
 "Expects an integer."
@@ -7857,30 +9170,30 @@ msgstr ""
 "このソケットオプションは読み込み専用である。整数値をとる。"
 
 #. type: TP
-#: build/C/man7/socket.7:281
+#: build/C/man7/socket.7:377
 #, no-wrap
 msgid "B<SO_DONTROUTE>"
 msgstr "B<SO_DONTROUTE>"
 
 #. type: Plain text
-#: build/C/man7/socket.7:290
+#: build/C/man7/socket.7:386
 msgid ""
-"Don't send via a gateway, only send to directly connected hosts.  The same "
+"Don't send via a gateway, send only to directly connected hosts.  The same "
 "effect can be achieved by setting the B<MSG_DONTROUTE> flag on a socket "
 "B<send>(2)  operation.  Expects an integer boolean flag."
 msgstr ""
-"ゲートウェイを経由せず、直接接続されているホストに送信する。 B<send>(2)  操作"
-"で B<MSG_DONTROUTE> フラグをセットした場合も同じ効果が得られる。 ブール整数の"
-"フラグを取る。"
+"ゲートウェイを経由せず、直接接続されているホストにのみ送信する。 B<send>(2)  "
+"操作で B<MSG_DONTROUTE> フラグをセットした場合も同じ効果が得られる。 ブール整"
+"数のフラグを取る。"
 
 #. type: TP
-#: build/C/man7/socket.7:290
+#: build/C/man7/socket.7:386
 #, no-wrap
 msgid "B<SO_KEEPALIVE>"
 msgstr "B<SO_KEEPALIVE>"
 
 #. type: Plain text
-#: build/C/man7/socket.7:294
+#: build/C/man7/socket.7:390
 msgid ""
 "Enable sending of keep-alive messages on connection-oriented sockets.  "
 "Expects an integer boolean flag."
@@ -7889,20 +9202,20 @@ msgstr ""
 "の整数フラグをとる。"
 
 #. type: TP
-#: build/C/man7/socket.7:294
+#: build/C/man7/socket.7:390
 #, no-wrap
 msgid "B<SO_LINGER>"
 msgstr "B<SO_LINGER>"
 
 #. type: Plain text
-#: build/C/man7/socket.7:302
+#: build/C/man7/socket.7:398
 msgid ""
 "Sets or gets the B<SO_LINGER> option.  The argument is a I<linger> structure."
 msgstr ""
 "B<SO_LINGER> オプションを取得・設定する。引き数には I<linger> 構造体を取る。"
 
 #. type: Plain text
-#: build/C/man7/socket.7:309
+#: build/C/man7/socket.7:405
 #, no-wrap
 msgid ""
 "struct linger {\n"
@@ -7916,7 +9229,7 @@ msgstr ""
 "};\n"
 
 #. type: Plain text
-#: build/C/man7/socket.7:323
+#: build/C/man7/socket.7:419
 msgid ""
 "When enabled, a B<close>(2)  or B<shutdown>(2)  will not return until all "
 "queued messages for the socket have been successfully sent or the linger "
@@ -7932,7 +9245,29 @@ msgstr ""
 "送られる。"
 
 #. type: TP
-#: build/C/man7/socket.7:323
+#: build/C/man7/socket.7:419
+#, no-wrap
+msgid "B<SO_MARK> (since Linux 2.6.25)"
+msgstr "B<SO_MARK> (Linux 2.6.25 以降)"
+
+#.  commit 4a19ec5800fc3bb64e2d87c4d9fdd9e636086fe0
+#.  and    914a9ab386a288d0f22252fc268ecbc048cdcbd5
+#. type: Plain text
+#: build/C/man7/socket.7:430
+msgid ""
+"Set the mark for each packet sent through this socket (similar to the "
+"netfilter MARK target but socket-based).  Changing the mark can be used for "
+"mark-based routing without netfilter or for packet filtering.  Setting this "
+"option requires the B<CAP_NET_ADMIN> capability."
+msgstr ""
+"このソケットから送信される各パケットにマークをセットする (netfilter の MARK "
+"ターゲットと似ているが、ソケット単位である点が異なる)。 マークの変更は、 "
+"netfilter なしでのマークに基づいてのルーティングや、 パケットフィルタリングに"
+"使うことができる。 このオプションを変更するには B<CAP_NET_ADMIN> ケーパビリ"
+"ティが必要である。"
+
+#. type: TP
+#: build/C/man7/socket.7:430
 #, no-wrap
 msgid "B<SO_OOBINLINE>"
 msgstr "B<SO_OOBINLINE>"
@@ -7940,10 +9275,10 @@ msgstr "B<SO_OOBINLINE>"
 #.  don't document it because it can do too much harm.
 #. .B SO_NO_CHECK
 #. type: Plain text
-#: build/C/man7/socket.7:332
+#: build/C/man7/socket.7:439
 msgid ""
 "If this option is enabled, out-of-band data is directly placed into the "
-"receive data stream.  Otherwise out-of-band data is only passed when the "
+"receive data stream.  Otherwise, out-of-band data is passed only when the "
 "B<MSG_OOB> flag is set during receiving."
 msgstr ""
 "このオプションを有効にすると、帯域外データ (out-of-band data) は 受信データス"
@@ -7951,7 +9286,7 @@ msgstr ""
 "ラグがセットされている場合に限って渡される。"
 
 #. type: TP
-#: build/C/man7/socket.7:332
+#: build/C/man7/socket.7:439
 #, no-wrap
 msgid "B<SO_PASSCRED>"
 msgstr "B<SO_PASSCRED>"
@@ -7959,7 +9294,7 @@ msgstr "B<SO_PASSCRED>"
 #.  FIXME Document SO_PASSSEC, added in 2.6.18; there is some info
 #.  in the 2.6.18 ChangeLog
 #. type: Plain text
-#: build/C/man7/socket.7:341
+#: build/C/man7/socket.7:448
 msgid ""
 "Enable or disable the receiving of the B<SCM_CREDENTIALS> control message.  "
 "For more information see B<unix>(7)."
@@ -7968,41 +9303,158 @@ msgstr ""
 "を参照のこと。"
 
 #. type: TP
-#: build/C/man7/socket.7:341
+#: build/C/man7/socket.7:448
+#, no-wrap
+msgid "B<SO_PEEK_OFF> (since Linux 3.4)"
+msgstr "B<SO_PEEK_OFF> (Linux 3.4 以降)"
+
+#.  commit ef64a54f6e558155b4f149bb10666b9e914b6c54
+#. type: Plain text
+#: build/C/man7/socket.7:458
+msgid ""
+"This option, which is currently supported only for B<unix>(7)  sockets, sets "
+"the value of the \"peek offset\" for the B<recv>(2)  system call when used "
+"with B<MSG_PEEK> flag."
+msgstr ""
+"B<MSG_PEEK> フラグと一緒に使用された場合 B<recv>(2) システムコールの \"peek "
+"offset\" にこのオプションの値が設定される。現在のところ、このオプションは "
+"B<unix>(7) ソケットでのみサポートされている。"
+
+#. type: Plain text
+#: build/C/man7/socket.7:466
+msgid ""
+"When this option is set to a negative value (it is set to -1 for all new "
+"sockets), traditional behavior is provided: B<recv>(2)  with the B<MSG_PEEK> "
+"flag will peek data from the front of the queue."
+msgstr ""
+"このオプションが負の値に設定された場合、従来の動作となる。 つまり "
+"B<MSG_PEEK> フラグが指定された B<recv>(2) は、キューの先頭のデータに対して "
+"peek 処理を行う (データを読み出すが、キューからデータの削除を行わない)。 新規"
+"のソケットではこのオプションの値は必ず -1 に設定される。"
+
+#. type: Plain text
+#: build/C/man7/socket.7:473
+msgid ""
+"When the option is set to a value greater than or equal to zero, then the "
+"next peek at data queued in the socket will occur at the byte offset "
+"specified by the option value.  At the same time, the \"peek offset\" will "
+"be incremented by the number of bytes that were peeked from the queue, so "
+"that a subsequent peek will return the next data in the queue."
+msgstr ""
+"このオプションに 0 以上の値が設定されると、 そのソケットのキュー上のオプショ"
+"ン値で指定されたバイトオフセットにあるデータが次の peek 処理で返される。 同時"
+"に、 \"peek offset\" がキューから peek 処理されたバイト数だけ加算される。した"
+"がって、次の peek 処理ではキューのその次にあるデータが返される。"
+
+#. type: Plain text
+#: build/C/man7/socket.7:485
+msgid ""
+"If data is removed from the front of the queue via a call to B<recv>(2)  (or "
+"similar) without the B<MSG_PEEK> flag, the \"peek offset\" will be decreased "
+"by the number of bytes removed.  In other words, receiving data without the "
+"B<MSG_PEEK> flag will cause the \"peek offset\" to be adjusted to maintain "
+"the correct relative position in the queued data, so that a subsequent peek "
+"will retrieve the data that would have been retrieved had the data not been "
+"removed."
+msgstr ""
+"B<recv>(2) (や同様のシステムコール) の B<MSG_PEEK> フラグなしの呼び出しで"
+"キューの先頭のデータが削除された場合、 \"peek offset\" は削除されたバイト数だ"
+"け減算される。 言い換えると、 B<MSG_PEEK> フラグなしでデータを受信すると、 "
+"\"peek offset\" が指すキュー内の相対的な位置が狂わないように調整され、この後"
+"の peek では、 データ削除が行われなかった場合に返されたのと同じ値が返されると"
+"いうことである。"
+
+#. type: Plain text
+#: build/C/man7/socket.7:490
+msgid ""
+"For datagram sockets, if the \"peek offset\" points to the middle of a "
+"packet, the data returned will be marked with the B<MSG_TRUNC> flag."
+msgstr ""
+"データグラムソケットでは、 \"peek offset\" がパケットの途中を指している場合に"
+"は、 返されるデータには B<MSG_TRUNC> フラグが付与される。"
+
+#. type: Plain text
+#: build/C/man7/socket.7:494
+msgid ""
+"The following example serves to illustrate the use of B<SO_PEEK_OFF>.  "
+"Suppose a stream socket has the following queued input data:"
+msgstr ""
+"以下の例は B<SO_PEEK_OFF> の利用例を示している。ストリームソケットのキューに"
+"以下の入力データが入っているものとする。"
+
+#. type: Plain text
+#: build/C/man7/socket.7:496
+#, no-wrap
+msgid "    aabbccddeeff\n"
+msgstr "    aabbccddeeff\n"
+
+#. type: Plain text
+#: build/C/man7/socket.7:501
+msgid ""
+"The following sequence of B<recv>(2)  calls would have the effect noted in "
+"the comments:"
+msgstr ""
+"以下の順序で B<recv>(2) の呼び出しを行うと、コメントに書かれた結果となる。"
+
+#. type: Plain text
+#: build/C/man7/socket.7:506
+#, no-wrap
+msgid ""
+"int ov = 4;                  // Set peek offset to 4\n"
+"setsockopt(fd, SOL_SOCKET, SO_PEEK_OFF, &ov, sizeof(ov));\n"
+msgstr ""
+"int ov = 4;                  // Set peek offset to 4\n"
+"setsockopt(fd, SOL_SOCKET, SO_PEEK_OFF, &ov, sizeof(ov));\n"
+
+#. type: Plain text
+#: build/C/man7/socket.7:511
+#, no-wrap
+msgid ""
+"recv(fd, buf, 2, MSG_PEEK);  // Peeks \"cc\"; offset set to 6\n"
+"recv(fd, buf, 2, MSG_PEEK);  // Peeks \"dd\"; offset set to 8\n"
+"recv(fd, buf, 2, 0);         // Reads \"aa\"; offset set to 6\n"
+"recv(fd, buf, 2, MSG_PEEK);  // Peeks \"ee\"; offset set to 8\n"
+msgstr ""
+"recv(fd, buf, 2, MSG_PEEK);  // Peeks \"cc\"; offset set to 6\n"
+"recv(fd, buf, 2, MSG_PEEK);  // Peeks \"dd\"; offset set to 8\n"
+"recv(fd, buf, 2, 0);         // Reads \"aa\"; offset set to 6\n"
+"recv(fd, buf, 2, MSG_PEEK);  // Peeks \"ee\"; offset set to 8\n"
+
+#. type: TP
+#: build/C/man7/socket.7:513
 #, no-wrap
 msgid "B<SO_PEERCRED>"
 msgstr "B<SO_PEERCRED>"
 
 #. type: Plain text
-#: build/C/man7/socket.7:361
+#: build/C/man7/socket.7:536
 msgid ""
 "Return the credentials of the foreign process connected to this socket.  "
-"This is only possible for connected B<AF_UNIX> stream sockets and B<AF_UNIX> "
-"stream and datagram socket pairs created using B<socketpair>(2); see B<unix>"
-"(7).  The returned credentials are those that were in effect at the time of "
-"the call to B<connect>(2)  or B<socketpair>(2).  Argument is a I<ucred> "
-"structure.  This socket option is read-only."
-msgstr ""
-"このソケットに接続してきた外部プロセスの信任状 (credential) を返す。\n"
-"このソケットオプションが利用できるのは、接続された B<AF_UNIX> ストリームソ"
-"ケット間、\n"
-"および B<socketpair>(2) を使って作成された B<AF_UNIX> のストリームソケット"
-"と\n"
-"データグラムソケットのペアだけである。\n"
-"B<unix>(7)  を参照のこと。\n"
+"This is possible only for connected B<AF_UNIX> stream sockets and B<AF_UNIX> "
+"stream and datagram socket pairs created using B<socketpair>(2); see "
+"B<unix>(7).  The returned credentials are those that were in effect at the "
+"time of the call to B<connect>(2)  or B<socketpair>(2).  The argument is a "
+"I<ucred> structure; define the B<_GNU_SOURCE> feature test macro to obtain "
+"the definition of that structure from I<E<lt>sys/socket.hE<gt>>.  This "
+"socket option is read-only."
+msgstr ""
+"このソケットに接続してきた外部プロセスの信任状 (credential) を返す。このソ"
+"ケットオプションが利用できるのは、接続された B<AF_UNIX> ストリームソケット"
+"間、および B<socketpair>(2) を使って作成された B<AF_UNIX> のストリームソケッ"
+"トとデータグラムソケットのペアだけである。 B<unix>(7)  を参照のこと。 "
 "B<connect>(2) や B<socketpair>(2) が呼ばれた時に有効であった信任状が返され"
-"る。\n"
-"引き数は I<ucred> 構造体である。\n"
-"ã\81\93ã\81®ã\82½ã\82±ã\83\83ã\83\88ã\82ªã\83\97ã\82·ã\83§ã\83³ã\81¯èª­ã\81¿è¾¼ã\81¿å°\82ç\94¨ã\81§ã\81\82ã\82\8bã\80\82"
+"る。 引き数は I<ucred> 構造体である。この構造体の定義を I<E<lt>sys/socket."
+"hE<gt>> を得るには、 機能検査マクロ B<_GNU_SOURCE> を定義すること。 このソ"
+"ケットオプションは読み込み専用である。"
 
 #. type: TP
-#: build/C/man7/socket.7:361
+#: build/C/man7/socket.7:536
 #, no-wrap
 msgid "B<SO_PRIORITY>"
 msgstr "B<SO_PRIORITY>"
 
 #. type: Plain text
-#: build/C/man7/socket.7:374
+#: build/C/man7/socket.7:549
 msgid ""
 "Set the protocol-defined priority for all packets to be sent on this "
 "socket.  Linux uses this value to order the networking queues: packets with "
@@ -8019,28 +9471,35 @@ msgstr ""
 "B<CAP_NET_ADMIN> ケーパビリティが必要である。"
 
 #. type: TP
-#: build/C/man7/socket.7:374
+#: build/C/man7/socket.7:549
 #, no-wrap
 msgid "B<SO_PROTOCOL> (since Linux 2.6.32)"
 msgstr "B<SO_PROTOCOL> (Linux 2.6.32 以降)"
 
 #. type: Plain text
-#: build/C/man7/socket.7:382
+#: build/C/man7/socket.7:557
 msgid ""
 "Retrieves the socket protocol as an integer, returning a value such as "
 "B<IPPROTO_SCTP>.  See B<socket>(2)  for details.  This socket option is read-"
 "only."
 msgstr ""
+"ソケットのプロトコルを整数で取得する。 B<IPPROTO_SCTP> のような値が返され"
+"る。\n"
+"詳細は B<socket>(2) を参照。このソケットオプションは読み込み専用である。"
 
 #. type: TP
-#: build/C/man7/socket.7:382
+#: build/C/man7/socket.7:557
 #, no-wrap
 msgid "B<SO_RCVBUF>"
 msgstr "B<SO_RCVBUF>"
 
 #.  Most (all?) other implementations do not do this -- MTK, Dec 05
+#.  The following thread on LMKL is quite informative:
+#.  getsockopt/setsockopt with SO_RCVBUF and SO_SNDBUF "non-standard" behavior
+#.  17 July 2012
+#.  http://thread.gmane.org/gmane.linux.kernel/1328935
 #. type: Plain text
-#: build/C/man7/socket.7:397
+#: build/C/man7/socket.7:576
 msgid ""
 "Sets or gets the maximum socket receive buffer in bytes.  The kernel doubles "
 "this value (to allow space for bookkeeping overhead)  when it is set using "
@@ -8049,7 +9508,7 @@ msgid ""
 "the maximum allowed value is set by the I</proc/sys/net/core/rmem_max> "
 "file.  The minimum (doubled) value for this option is 256."
 msgstr ""
-"ソケットの受信バッファの最大サイズを設定・取得する (バイト単位)。 "
+"ã\82½ã\82±ã\83\83ã\83\88ã\81®å\8f\97ä¿¡ã\83\90ã\83\83ã\83\95ã\82¡ã\83¼ã\81®æ\9c\80大ã\82µã\82¤ã\82ºã\82\92設å®\9aã\83»å\8f\96å¾\97ã\81\99ã\82\8b (ã\83\90ã\82¤ã\83\88å\8d\98ä½\8d\80\82 "
 "B<setsockopt>(2)  を使って値が設定されたときに (管理オーバヘッド用の領域を確"
 "保するために)  カーネルはこの値を 2倍し、 B<getsockopt>(2)  はこの 2倍された"
 "値を返す。 デフォルトの値は I</proc/sys/net/core/rmem_default> ファイルで設定"
@@ -8057,13 +9516,13 @@ msgstr ""
 "る。 このオプションの最小値は (2倍した値で) 256 である。"
 
 #. type: TP
-#: build/C/man7/socket.7:397
+#: build/C/man7/socket.7:576
 #, no-wrap
 msgid "B<SO_RCVBUFFORCE> (since Linux 2.6.14)"
 msgstr "B<SO_RCVBUFFORCE> (Linux 2.6.14 以降)"
 
 #. type: Plain text
-#: build/C/man7/socket.7:406
+#: build/C/man7/socket.7:585
 msgid ""
 "Using this socket option, a privileged (B<CAP_NET_ADMIN>)  process can "
 "perform the same task as B<SO_RCVBUF>, but the I<rmem_max> limit can be "
@@ -8074,7 +9533,7 @@ msgstr ""
 "きすることができる。"
 
 #. type: TP
-#: build/C/man7/socket.7:406
+#: build/C/man7/socket.7:585
 #, no-wrap
 msgid "B<SO_RCVLOWAT> and B<SO_SNDLOWAT>"
 msgstr "B<SO_RCVLOWAT> と B<SO_SNDLOWAT>"
@@ -8082,7 +9541,7 @@ msgstr "B<SO_RCVLOWAT> と B<SO_SNDLOWAT>"
 #.  See http://marc.theaimsgroup.com/?l=linux-kernel&m=111049368106984&w=2
 #.  Tested on kernel 2.6.14 -- mtk, 30 Nov 05
 #. type: Plain text
-#: build/C/man7/socket.7:435
+#: build/C/man7/socket.7:614
 msgid ""
 "Specify the minimum number of bytes in the buffer until the socket layer "
 "will pass the data to the protocol (B<SO_SNDLOWAT>)  or the user on "
@@ -8094,9 +9553,9 @@ msgid ""
 "single byte of data is available.  A subsequent read from the socket will "
 "block until B<SO_RCVLOWAT> bytes are available."
 msgstr ""
-"バッファ中に溜めることのできるデータの最小値を指定する。 このサイズを越える"
+"バッファ中に溜めることのできるデータの最小値を指定する。 このサイズを越える"
 "と、ソケット層はそのデータをプロトコルに渡し (B<SO_SNDLOWAT>)、 受信時には"
-"ユーザに渡す (B<SO_RCVLOWAT>)。 これら二つの値は 1 に初期化される。 "
+"ã\83¦ã\83¼ã\82¶ã\83¼ã\81«æ¸¡ã\81\99 (B<SO_RCVLOWAT>)ã\80\82 ã\81\93ã\82\8cã\82\89äº\8cã\81¤ã\81®å\80¤ã\81¯ 1 ã\81«å\88\9dæ\9c\9få\8c\96ã\81\95ã\82\8cã\82\8bã\80\82 "
 "B<SO_SNDLOWAT> は Linux では変更できない (B<setsockopt>(2)  は "
 "B<ENOPROTOOPT> エラーで失敗する)。 B<SO_RCVLOWAT> は Linux 2.4 以降でのみ変更"
 "可能である。 現状、Linux ではシステムコール B<select>(2)  と B<poll>(2)  は "
@@ -8106,7 +9565,7 @@ msgstr ""
 "してしまう。"
 
 #. type: TP
-#: build/C/man7/socket.7:435
+#: build/C/man7/socket.7:614
 #, no-wrap
 msgid "B<SO_RCVTIMEO> and B<SO_SNDTIMEO>"
 msgstr "B<SO_RCVTIMEO> と B<SO_SNDTIMEO>"
@@ -8116,46 +9575,47 @@ msgstr "B<SO_RCVTIMEO> と B<SO_SNDTIMEO>"
 #.  Implemented in 2.3.41 for setsockopt, and actually used.
 #.  in fact to EAGAIN
 #. type: Plain text
-#: build/C/man7/socket.7:466
+#: build/C/man7/socket.7:649
 msgid ""
 "Specify the receiving or sending timeouts until reporting an error.  The "
 "argument is a I<struct timeval>.  If an input or output function blocks for "
 "this period of time, and data has been sent or received, the return value of "
 "that function will be the amount of data transferred; if no data has been "
-"transferred and the timeout has been reached then -1 is returned with "
-"I<errno> set to B<EAGAIN> or B<EWOULDBLOCK> just as if the socket was "
-"specified to be nonblocking.  If the timeout is set to zero (the default)  "
-"then the operation will never timeout.  Timeouts only have effect for system "
-"calls that perform socket I/O (e.g., B<read>(2), B<recvmsg>(2), B<send>(2), "
-"B<sendmsg>(2)); timeouts have no effect for B<select>(2), B<poll>(2), "
-"B<epoll_wait>(2), etc."
+"transferred and the timeout has been reached, then -1 is returned with "
+"I<errno> set to B<EAGAIN> or B<EWOULDBLOCK>, or B<EINPROGRESS> (for "
+"B<connect>(2))  just as if the socket was specified to be nonblocking.  If "
+"the timeout is set to zero (the default), then the operation will never "
+"timeout.  Timeouts only have effect for system calls that perform socket I/O "
+"(e.g., B<read>(2), B<recvmsg>(2), B<send>(2), B<sendmsg>(2)); timeouts have "
+"no effect for B<select>(2), B<poll>(2), B<epoll_wait>(2), and so on."
 msgstr ""
 "送信・受信のタイムアウトを指定する。これを越えるとエラーを報告する。 引き数"
 "は I<struct timeval> である。 入出力関数がタイムアウト時間の間ブロックされ、"
 "かつデータの送信または 受信が行われていた場合は、転送されたデータ量が関数の返"
 "り値となる。 何もデータが転送されずにタイムアウトに達した場合は、 -1 を返"
-"し、 I<errno> に B<EAGAIN> か B<EWOULDBLOCK> を設定され、 あたかもソケットに"
-"非ブロッキングが指定されたように見える。 タイムアウト値に (デフォルト値であ"
-"る) 0 に設定すると、 操作は決してタイムアウトしなくなる。 タイムアウトが影響"
-"を及ぼすのは、 ソケット I/O を実行するシステムコールだけ (例えば B<read>(2), "
-"B<recvmsg>(2), B<send>(2), B<sendmsg>(2))  である。 B<select>(2), B<poll>"
-"(2), B<epoll_wait>(2)  などにはタイムアウトは影響を及ぼさない。"
+"し、 I<errno> に B<EAGAIN> か B<EWOULDBLOCK> か B<EINPROGRESS> "
+"(B<connect>(2) の場合) が設定され、 あたかもソケットに非ブロッキングが指定さ"
+"れたように見える。 タイムアウト値に (デフォルト値である) 0 に設定すると、 操"
+"作は決してタイムアウトしなくなる。 タイムアウトが影響を及ぼすのは、 ソケット "
+"I/O を実行するシステムコールだけ (例えば B<read>(2), B<recvmsg>(2), "
+"B<send>(2), B<sendmsg>(2))  である。 B<select>(2), B<poll>(2), "
+"B<epoll_wait>(2)  などにはタイムアウトは影響を及ぼさない。"
 
 #. type: TP
-#: build/C/man7/socket.7:466
+#: build/C/man7/socket.7:649
 #, no-wrap
 msgid "B<SO_REUSEADDR>"
 msgstr "B<SO_REUSEADDR>"
 
 #. type: Plain text
-#: build/C/man7/socket.7:481
+#: build/C/man7/socket.7:664
 msgid ""
-"Indicates that the rules used in validating addresses supplied in a B<bind>"
-"(2)  call should allow reuse of local addresses.  For B<AF_INET> sockets "
-"this means that a socket may bind, except when there is an active listening "
-"socket bound to the address.  When the listening socket is bound to "
-"B<INADDR_ANY> with a specific port then it is not possible to bind to this "
-"port for any local address.  Argument is an integer boolean flag."
+"Indicates that the rules used in validating addresses supplied in a "
+"B<bind>(2)  call should allow reuse of local addresses.  For B<AF_INET> "
+"sockets this means that a socket may bind, except when there is an active "
+"listening socket bound to the address.  When the listening socket is bound "
+"to B<INADDR_ANY> with a specific port then it is not possible to bind to "
+"this port for any local address.  Argument is an integer boolean flag."
 msgstr ""
 "B<bind>(2)  コールに与えられたアドレスが正しいかを判断するルールで、 ローカル"
 "アドレスの再利用を可能にする。 つまり B<AF_INET> ソケットなら、そのアドレスに"
@@ -8165,14 +9625,33 @@ msgstr ""
 "ドできない。 引き数はブール整数のフラグである。"
 
 #. type: TP
-#: build/C/man7/socket.7:481
+#: build/C/man7/socket.7:664
+#, no-wrap
+msgid "B<SO_RXQ_OVFL> (since Linux 2.6.33)"
+msgstr "B<SO_RXQ_OVFL> (Linux 2.6.33 以降)"
+
+#.  commit 3b885787ea4112eaa80945999ea0901bf742707f
+#. type: Plain text
+#: build/C/man7/socket.7:671
+msgid ""
+"Indicates that an unsigned 32-bit value ancillary message (cmsg)  should be "
+"attached to received skbs indicating the number of packets dropped by the "
+"socket between the last received packet and this received packet."
+msgstr ""
+"最後の受信パケットとこの受信パケットの間にそのソケットで捨てられた (ドロップ"
+"された) パケット数を示す、unsigned 32 ビット値の補助メッセージ (cmsg) を受信"
+"した skb に付与することを指示する。"
+
+#. type: TP
+#: build/C/man7/socket.7:671
 #, no-wrap
 msgid "B<SO_SNDBUF>"
 msgstr "B<SO_SNDBUF>"
 
 #.  Most (all?) other implementations do not do this -- MTK, Dec 05
+#.  See also the comment to SO_RCVBUF (17 Jul 2012 LKML mail)
 #. type: Plain text
-#: build/C/man7/socket.7:496
+#: build/C/man7/socket.7:687
 msgid ""
 "Sets or gets the maximum socket send buffer in bytes.  The kernel doubles "
 "this value (to allow space for bookkeeping overhead)  when it is set using "
@@ -8181,7 +9660,7 @@ msgid ""
 "the maximum allowed value is set by the I</proc/sys/net/core/wmem_max> "
 "file.  The minimum (doubled) value for this option is 2048."
 msgstr ""
-"ソケットの送信バッファの最大サイズを設定・取得する (バイト単位)。 "
+"ã\82½ã\82±ã\83\83ã\83\88ã\81®é\80\81ä¿¡ã\83\90ã\83\83ã\83\95ã\82¡ã\83¼ã\81®æ\9c\80大ã\82µã\82¤ã\82ºã\82\92設å®\9aã\83»å\8f\96å¾\97ã\81\99ã\82\8b (ã\83\90ã\82¤ã\83\88å\8d\98ä½\8d\80\82 "
 "B<setsockopt>(2)  を使って値が設定されたときに (管理オーバヘッド用の領域を確"
 "保するために)  カーネルはこの値を 2倍し、 B<getsockopt>(2)  はこの 2倍された"
 "値を返す。 デフォルトの値は I</proc/sys/net/core/wmem_default> ファイルで設定"
@@ -8189,13 +9668,13 @@ msgstr ""
 "る。 このオプションの最小値は (2倍した値で) 2048 である。"
 
 #. type: TP
-#: build/C/man7/socket.7:496
+#: build/C/man7/socket.7:687
 #, no-wrap
 msgid "B<SO_SNDBUFFORCE> (since Linux 2.6.14)"
 msgstr "B<SO_SNDBUFFORCE> (Linux 2.6.14 以降)"
 
 #. type: Plain text
-#: build/C/man7/socket.7:505
+#: build/C/man7/socket.7:696
 msgid ""
 "Using this socket option, a privileged (B<CAP_NET_ADMIN>)  process can "
 "perform the same task as B<SO_SNDBUF>, but the I<wmem_max> limit can be "
@@ -8206,13 +9685,13 @@ msgstr ""
 "きすることができる。"
 
 #. type: TP
-#: build/C/man7/socket.7:505
+#: build/C/man7/socket.7:696
 #, no-wrap
 msgid "B<SO_TIMESTAMP>"
 msgstr "B<SO_TIMESTAMP>"
 
 #. type: Plain text
-#: build/C/man7/socket.7:521
+#: build/C/man7/socket.7:712
 msgid ""
 "Enable or disable the receiving of the B<SO_TIMESTAMP> control message.  The "
 "timestamp control message is sent with level B<SOL_SOCKET> and the "
@@ -8222,17 +9701,17 @@ msgid ""
 msgstr ""
 "B<SO_TIMESTAMP> 制御メッセージの受信を有効/無効にする。 タイムスタンプ制御"
 "メッセージはレベル B<SOL_SOCKET> で送信され、 I<cmsg_data> フィールドはこのシ"
-"ステムコールでユーザに渡した 最後のパケットの受信時刻を示す I<struct "
+"ã\82¹ã\83\86ã\83 ã\82³ã\83¼ã\83«ã\81§ã\83¦ã\83¼ã\82¶ã\83¼ã\81«æ¸¡ã\81\97ã\81\9f æ\9c\80å¾\8cã\81®ã\83\91ã\82±ã\83\83ã\83\88ã\81®å\8f\97ä¿¡æ\99\82å\88»ã\82\92示ã\81\99 I<struct "
 "timeval> である。 制御メッセージの詳細については B<cmsg>(3)  を参照。"
 
 #. type: TP
-#: build/C/man7/socket.7:521
+#: build/C/man7/socket.7:712
 #, no-wrap
 msgid "B<SO_TYPE>"
 msgstr "B<SO_TYPE>"
 
 #. type: Plain text
-#: build/C/man7/socket.7:526
+#: build/C/man7/socket.7:717
 msgid ""
 "Gets the socket type as an integer (e.g., B<SOCK_STREAM>).  This socket "
 "option is read-only."
@@ -8240,14 +9719,65 @@ msgstr ""
 "ソケットのタイプを整数で取得する (例: B<SOCK_STREAM>)。\n"
 "このソケットオプションは読み出し専用である。"
 
+#. type: TP
+#: build/C/man7/socket.7:717
+#, no-wrap
+msgid "B<SO_BUSY_POLL> (since Linux 3.11)"
+msgstr "B<SO_BUSY_POLL> (Linux 3.11 以降)"
+
+#. type: Plain text
+#: build/C/man7/socket.7:726
+msgid ""
+"Sets the approximate time in microseconds to busy poll on a blocking receive "
+"when there is no data.  Increasing this value requires B<CAP_NET_ADMIN>.  "
+"The default for this option is controlled by the I</proc/sys/net/core/"
+"busy_read> file."
+msgstr ""
+"データがなかった際にブロッキング受信での busy polling のおおよその時間をマイ"
+"クロ秒単位で設定する。 この値を増やすには B<CAP_NET_ADMIN> ケーパビリティが必"
+"要である。 このオプションのデフォルト値は I</proc/sys/net/core/busy_read> で"
+"制御できる。"
+
+#. type: Plain text
+#: build/C/man7/socket.7:736
+msgid ""
+"The value in the I</proc/sys/net/core/busy_poll> file determines how long "
+"B<select>(2)  and B<poll>(2)  will busy poll when they operate on sockets "
+"with B<SO_BUSY_POLL> set and no events to report are found."
+msgstr ""
+"I</proc/sys/net/core/busy_poll> の値により、 B<SO_BUSY_POLL> がセットされたソ"
+"ケットに対して B<select>(2) や B<poll>(2) を行い、報告すべきイベントがない場"
+"合に、 B<select>(2) や B<poll>(2) が busy polling をどのくらいの時間行うかが"
+"決まる。"
+
+#. type: Plain text
+#: build/C/man7/socket.7:740
+msgid ""
+"In both cases, busy polling will only be done when the socket last received "
+"data from a network device that supports this option."
+msgstr ""
+"どちらの場合も、busy polling は、そのソケットが最後にデータを受信したネット"
+"ワークデバイスがこのオプションに対応している場合のみ行われる。"
+
+#. type: Plain text
+#: build/C/man7/socket.7:744
+msgid ""
+"While busy polling may improve latency of some applications, care must be "
+"taken when using it since this will increase both CPU utilization and power "
+"usage."
+msgstr ""
+"busy polling により遅延が改善されるはアプリケーションもあるが、 busy polling "
+"は CPU 使用率と電力使用量をともに増加させることになるので、使用する際は注意し"
+"て行うこと。"
+
 #. type: SS
-#: build/C/man7/socket.7:526
+#: build/C/man7/socket.7:744
 #, no-wrap
 msgid "Signals"
 msgstr "シグナル"
 
 #. type: Plain text
-#: build/C/man7/socket.7:537
+#: build/C/man7/socket.7:755
 msgid ""
 "When writing onto a connection-oriented socket that has been shut down (by "
 "the local or the remote end)  B<SIGPIPE> is sent to the writing process and "
@@ -8260,28 +9790,28 @@ msgstr ""
 "していた場合はシグナルは送られない。"
 
 #. type: Plain text
-#: build/C/man7/socket.7:562
+#: build/C/man7/socket.7:780
 msgid ""
-"When requested with the B<FIOSETOWN> B<fcntl>(2)  or B<SIOCSPGRP> B<ioctl>"
-"(2), B<SIGIO> is sent when an I/O event occurs.  It is possible to use "
-"B<poll>(2)  or B<select>(2)  in the signal handler to find out which socket "
-"the event occurred on.  An alternative (in Linux 2.2) is to set a real-time "
-"signal using the B<F_SETSIG> B<fcntl>(2); the handler of the real time "
-"signal will be called with the file descriptor in the I<si_fd> field of its "
-"I<siginfo_t>.  See B<fcntl>(2)  for more information."
+"When requested with the B<FIOSETOWN> B<fcntl>(2)  or B<SIOCSPGRP> "
+"B<ioctl>(2), B<SIGIO> is sent when an I/O event occurs.  It is possible to "
+"use B<poll>(2)  or B<select>(2)  in the signal handler to find out which "
+"socket the event occurred on.  An alternative (in Linux 2.2) is to set a "
+"real-time signal using the B<F_SETSIG> B<fcntl>(2); the handler of the real "
+"time signal will be called with the file descriptor in the I<si_fd> field of "
+"its I<siginfo_t>.  See B<fcntl>(2)  for more information."
 msgstr ""
 "B<FIOSETOWN> B<fcntl>(2)  や B<SIOCSPGRP> B<ioctl>(2)  をプロセスまたはプロセ"
 "スグループに指定しておくと、 I/O イベントが起きたときに B<SIGIO> が送られ"
-"る。 B<poll>(2)  や B<select>(2)  をシグナルハンドラ内で用いれば、どのソケッ"
-"ã\83\88ã\81§ã\82¤ã\83\99ã\83³ã\83\88ã\81\8cèµ·ã\81\93ã\81£ã\81\9fã\81\8bã\82\92 ç\9f¥ã\82\8bã\81\93ã\81¨ã\81\8cã\81§ã\81\8dã\82\8bã\80\82 (Linux 2.2 ã\81«ã\81\8aã\81\91ã\82\8b) å\88¥ã\81®æ\96¹æ³\95ã\81¨"
-"しては、 B<F_SETSIG> B<fcntl>(2)  を用いてリアルタイムシグナルを設定するやり"
-"方もある。 リアルタイムシグナルのハンドラは、 I<siginfo_t> の I<si_fd> フィー"
-"ã\83«ã\83\89ã\81«ã\83\95ã\82¡ã\82¤ã\83«ã\83\87ã\82£ã\82¹ã\82¯ã\83ªã\83\97ã\82¿ã\81\8cå\85¥ã\81£ã\81\9fç\8a¶æ\85\8bã\81§å\91¼ã\81³å\87ºã\81\95ã\82\8cã\82\8bã\80\82 è©³ç´°ã\81¯ B<fcntl>(2)  "
-"を参照のこと。"
+"る。 B<poll>(2)  や B<select>(2)  をシグナルハンドラー内で用いれば、どのソ"
+"ã\82±ã\83\83ã\83\88ã\81§ã\82¤ã\83\99ã\83³ã\83\88ã\81\8cèµ·ã\81\93ã\81£ã\81\9fã\81\8bã\82\92 ç\9f¥ã\82\8bã\81\93ã\81¨ã\81\8cã\81§ã\81\8dã\82\8bã\80\82 (Linux 2.2 ã\81«ã\81\8aã\81\91ã\82\8b) å\88¥ã\81®æ\96¹"
+"法としては、 B<F_SETSIG> B<fcntl>(2)  を用いてリアルタイムシグナルを設定する"
+"やり方もある。 リアルタイムシグナルのハンドラーは、 I<siginfo_t> の I<si_fd> "
+"ã\83\95ã\82£ã\83¼ã\83«ã\83\89ã\81«ã\83\95ã\82¡ã\82¤ã\83«ã\83\87ã\82£ã\82¹ã\82¯ã\83ªã\83\97ã\82¿ã\83¼ã\81\8cå\85¥ã\81£ã\81\9fç\8a¶æ\85\8bã\81§å\91¼ã\81³å\87ºã\81\95ã\82\8cã\82\8bã\80\82 è©³ç´°ã\81¯ "
+"B<fcntl>(2)  を参照のこと。"
 
-#.  .SS Ancillary Messages
+#.  .SS Ancillary messages
 #. type: Plain text
-#: build/C/man7/socket.7:570
+#: build/C/man7/socket.7:788
 msgid ""
 "Under some circumstances (e.g., multiple processes accessing a single "
 "socket), the condition that caused the B<SIGIO> may have already disappeared "
@@ -8294,151 +9824,151 @@ msgstr ""
 "すべきである。 Linux は同じシグナルを後で再送するからである。"
 
 #. type: SS
-#: build/C/man7/socket.7:570
+#: build/C/man7/socket.7:788
 #, no-wrap
 msgid "/proc interfaces"
-msgstr "/proc インタフェース"
+msgstr "/proc ã\82¤ã\83³ã\82¿ã\83¼ã\83\95ã\82§ã\83¼ã\82¹"
 
 #. type: Plain text
-#: build/C/man7/socket.7:574
+#: build/C/man7/socket.7:792
 msgid ""
 "The core socket networking parameters can be accessed via files in the "
 "directory I</proc/sys/net/core/>."
 msgstr ""
-"core ã\81®ã\82½ã\82±ã\83\83ã\83\88ã\81®ã\83\8dã\83\83ã\83\88ã\83¯ã\83¼ã\82­ã\83³ã\82°ã\83\91ã\83©ã\83¡ã\83¼ã\82¿ã\81«ã\81¯ã\80\81 I</proc/sys/net/core/> ã\83\87ã\82£"
-"レクトリ内のファイルを通してアクセスできる。"
+"core ã\81®ã\82½ã\82±ã\83\83ã\83\88ã\81®ã\83\8dã\83\83ã\83\88ã\83¯ã\83¼ã\82­ã\83³ã\82°ã\83\91ã\83©ã\83¡ã\83¼ã\82¿ã\83¼ã\81«ã\81¯ã\80\81 I</proc/sys/net/core/> "
+"ã\83\87ã\82£ã\83¬ã\82¯ã\83\88ã\83ªå\86\85ã\81®ã\83\95ã\82¡ã\82¤ã\83«ã\82\92é\80\9aã\81\97ã\81¦ã\82¢ã\82¯ã\82»ã\82¹ã\81§ã\81\8dã\82\8bã\80\82"
 
 #. type: TP
-#: build/C/man7/socket.7:574
+#: build/C/man7/socket.7:792
 #, no-wrap
 msgid "I<rmem_default>"
 msgstr "I<rmem_default>"
 
 #. type: Plain text
-#: build/C/man7/socket.7:577
+#: build/C/man7/socket.7:795
 msgid "contains the default setting in bytes of the socket receive buffer."
-msgstr "ソケットの受信バッファサイズのデフォルト値 (バイト単位)。"
+msgstr "ã\82½ã\82±ã\83\83ã\83\88ã\81®å\8f\97ä¿¡ã\83\90ã\83\83ã\83\95ã\82¡ã\83¼ã\82µã\82¤ã\82ºã\81®ã\83\87ã\83\95ã\82©ã\83«ã\83\88å\80¤ (ã\83\90ã\82¤ã\83\88å\8d\98ä½\8d\80\82"
 
 #. type: TP
-#: build/C/man7/socket.7:577
+#: build/C/man7/socket.7:795
 #, no-wrap
 msgid "I<rmem_max>"
 msgstr "I<rmem_max>"
 
 #. type: Plain text
-#: build/C/man7/socket.7:583
+#: build/C/man7/socket.7:801
 msgid ""
 "contains the maximum socket receive buffer size in bytes which a user may "
 "set by using the B<SO_RCVBUF> socket option."
 msgstr ""
-"B<SO_RCVBUF> ã\82½ã\82±ã\83\83ã\83\88ã\82ªã\83\97ã\82·ã\83§ã\83³ã\82\92ç\94¨ã\81\84ã\81¦ã\83¦ã\83¼ã\82¶ã\81\8c設å®\9aã\81§ã\81\8dã\82\8b ã\82½ã\82±ã\83\83ã\83\88ã\81®å\8f\97ä¿¡ã\83\90ã\83\83"
-"ã\83\95ã\82¡サイズの最大値 (バイト単位)。"
+"B<SO_RCVBUF> ã\82½ã\82±ã\83\83ã\83\88ã\82ªã\83\97ã\82·ã\83§ã\83³ã\82\92ç\94¨ã\81\84ã\81¦ã\83¦ã\83¼ã\82¶ã\83¼ã\81\8c設å®\9aã\81§ã\81\8dã\82\8b ã\82½ã\82±ã\83\83ã\83\88ã\81®å\8f\97ä¿¡"
+"ã\83\90ã\83\83ã\83\95ã\82¡ã\83¼サイズの最大値 (バイト単位)。"
 
 #. type: TP
-#: build/C/man7/socket.7:583
+#: build/C/man7/socket.7:801
 #, no-wrap
 msgid "I<wmem_default>"
 msgstr "I<wmem_default>"
 
 #. type: Plain text
-#: build/C/man7/socket.7:586
+#: build/C/man7/socket.7:804
 msgid "contains the default setting in bytes of the socket send buffer."
-msgstr "ソケットの送信バッファサイズのデフォルト値 (バイト単位)。"
+msgstr "ã\82½ã\82±ã\83\83ã\83\88ã\81®é\80\81ä¿¡ã\83\90ã\83\83ã\83\95ã\82¡ã\83¼ã\82µã\82¤ã\82ºã\81®ã\83\87ã\83\95ã\82©ã\83«ã\83\88å\80¤ (ã\83\90ã\82¤ã\83\88å\8d\98ä½\8d\80\82"
 
 #. type: TP
-#: build/C/man7/socket.7:586
+#: build/C/man7/socket.7:804
 #, no-wrap
 msgid "I<wmem_max>"
 msgstr "I<wmem_max>"
 
 #. type: Plain text
-#: build/C/man7/socket.7:592
+#: build/C/man7/socket.7:810
 msgid ""
 "contains the maximum socket send buffer size in bytes which a user may set "
 "by using the B<SO_SNDBUF> socket option."
 msgstr ""
-"B<SO_SNDBUF> ã\82½ã\82±ã\83\83ã\83\88ã\82ªã\83\97ã\82·ã\83§ã\83³ã\82\92ç\94¨ã\81\84ã\81¦ã\83¦ã\83¼ã\82¶ã\81\8c設å®\9aã\81§ã\81\8dã\82\8b ã\82½ã\82±ã\83\83ã\83\88ã\81®é\80\81ä¿¡ã\83\90ã\83\83"
-"ã\83\95ã\82¡サイズの最大値 (バイト単位)。"
+"B<SO_SNDBUF> ã\82½ã\82±ã\83\83ã\83\88ã\82ªã\83\97ã\82·ã\83§ã\83³ã\82\92ç\94¨ã\81\84ã\81¦ã\83¦ã\83¼ã\82¶ã\83¼ã\81\8c設å®\9aã\81§ã\81\8dã\82\8b ã\82½ã\82±ã\83\83ã\83\88ã\81®é\80\81ä¿¡"
+"ã\83\90ã\83\83ã\83\95ã\82¡ã\83¼サイズの最大値 (バイト単位)。"
 
 #. type: TP
-#: build/C/man7/socket.7:592
+#: build/C/man7/socket.7:810
 #, no-wrap
 msgid "I<message_cost> and I<message_burst>"
 msgstr "I<message_cost> と I<message_burst>"
 
 #. type: Plain text
-#: build/C/man7/socket.7:596
+#: build/C/man7/socket.7:814
 msgid ""
 "configure the token bucket filter used to load limit warning messages caused "
 "by external network events."
 msgstr ""
-"ã\83\88ã\83¼ã\82¯ã\83³ã\83»ã\83\90ã\82±ã\83\83ã\83\88ã\83»ã\83\95ã\82£ã\83«ã\82¿ã\83¼ã\82\92設å®\9aã\81\99ã\82\8bã\80\82 ã\81\93ã\82\8cã\81¯å¤\96é\83¨ã\81®ã\83\8dã\83\83ã\83\88ã\83¯ã\83¼ã\82¯ã\82¤ã\83\99ã\83³ã\83\88ã\81«"
-"ã\82\88ã\81£ã\81¦å¼\95ã\81\8dèµ·ã\81\93ã\81\95ã\82\8cã\81\9f è² è\8d·é\99\90ç\95\8cã\81®è­¦å\91\8aã\83¡ã\83\83ã\82»ã\83¼ã\82¸ã\81«ç\94¨ã\81\84ã\82\89ã\82\8cã\82\8bã\80\82"
+"ã\83\88ã\83¼ã\82¯ã\83³ã\83\90ã\82±ã\83\83ã\83\88ã\83\95ã\82£ã\83«ã\82¿ã\83¼ã\82\92設å®\9aã\81\99ã\82\8bã\80\82 ã\81\93ã\82\8cã\81¯å¤\96é\83¨ã\81®ã\83\8dã\83\83ã\83\88ã\83¯ã\83¼ã\82¯ã\82¤ã\83\99ã\83³ã\83\88ã\81«ã\82\88ã\81£"
+"て引き起こされた 負荷限界の警告メッセージに用いられる。"
 
 #. type: TP
-#: build/C/man7/socket.7:596
+#: build/C/man7/socket.7:814
 #, no-wrap
 msgid "I<netdev_max_backlog>"
 msgstr "I<netdev_max_backlog>"
 
 #. type: Plain text
-#: build/C/man7/socket.7:599
+#: build/C/man7/socket.7:817
 msgid "Maximum number of packets in the global input queue."
 msgstr "グローバルな入力キューにおける最大のパケット数。"
 
 #. type: TP
-#: build/C/man7/socket.7:599
+#: build/C/man7/socket.7:817
 #, no-wrap
 msgid "I<optmem_max>"
 msgstr "I<optmem_max>"
 
 #.  netdev_fastroute is not documented because it is experimental
 #. type: Plain text
-#: build/C/man7/socket.7:604
+#: build/C/man7/socket.7:822
 msgid ""
 "Maximum length of ancillary data and user control data like the iovecs per "
 "socket."
 msgstr ""
-"ソケットあたりの、補助データ (ancillary data) とユーザ制御データ (iovecs のよ"
-"うなもの) との和の最大長。"
+"ソケットあたりの、補助データ (ancillary data) とユーザー制御データ (iovecs の"
+"ã\82\88ã\81\86ã\81ªã\82\82ã\81®) ã\81¨ã\81®å\92\8cã\81®æ\9c\80大é\95·ã\80\82"
 
 #. type: SS
-#: build/C/man7/socket.7:604
+#: build/C/man7/socket.7:822
 #, no-wrap
 msgid "Ioctls"
 msgstr "ioctl"
 
 #. type: Plain text
-#: build/C/man7/socket.7:607
+#: build/C/man7/socket.7:825
 msgid "These operations can be accessed using B<ioctl>(2):"
 msgstr "以下に示す操作には B<ioctl>(2)  を用いてアクセスできる。"
 
 #. type: Plain text
-#: build/C/man7/socket.7:611
+#: build/C/man7/socket.7:829
 #, no-wrap
 msgid "I<error>B< = ioctl(>I<ip_socket>B<, >I<ioctl_type>B<, >I<&value_result>B<);>\n"
 msgstr "I<error>B< = ioctl(>I<ip_socket>B<, >I<ioctl_type>B<, >I<&value_result>B<);>\n"
 
 #. type: TP
-#: build/C/man7/socket.7:613
+#: build/C/man7/socket.7:831
 #, no-wrap
 msgid "B<SIOCGSTAMP>"
 msgstr "B<SIOCGSTAMP>"
 
 #. type: Plain text
-#: build/C/man7/socket.7:637
+#: build/C/man7/socket.7:855
 msgid ""
 "Return a I<struct timeval> with the receive timestamp of the last packet "
 "passed to the user.  This is useful for accurate round trip time "
 "measurements.  See B<setitimer>(2)  for a description of I<struct timeval>.  "
-"This ioctl should only be used if the socket option B<SO_TIMESTAMP> is not "
+"This ioctl should be used only if the socket option B<SO_TIMESTAMP> is not "
 "set on the socket.  Otherwise, it returns the timestamp of the last packet "
 "that was received while B<SO_TIMESTAMP> was not set, or it fails if no such "
 "packet has been received, (i.e., B<ioctl>(2)  returns -1 with I<errno> set "
 "to B<ENOENT>)."
 msgstr ""
-"æ\9c\80å¾\8cã\81«ã\83¦ã\83¼ã\82¶ã\81«æ¸¡ã\81\95ã\82\8cã\81\9fã\83\91ã\82±ã\83\83ã\83\88ã\81®å\8f\97ä¿¡ã\82¿ã\82¤ã\83 ã\82¹ã\82¿ã\83³ã\83\97ã\82\92 I<struct timeval> ã\81«å\85¥ã\82\8c"
-"て返す。 これは round trip 時間を正確に測りたいときに便利である。 I<struct "
+"æ\9c\80å¾\8cã\81«ã\83¦ã\83¼ã\82¶ã\83¼ã\81«æ¸¡ã\81\95ã\82\8cã\81\9fã\83\91ã\82±ã\83\83ã\83\88ã\81®å\8f\97ä¿¡ã\82¿ã\82¤ã\83 ã\82¹ã\82¿ã\83³ã\83\97ã\82\92 I<struct timeval> ã\81«å\85¥"
+"ã\82\8cã\81¦è¿\94ã\81\99ã\80\82 ã\81\93ã\82\8cã\81¯ round trip æ\99\82é\96\93ã\82\92正確ã\81«æ¸¬ã\82\8aã\81\9fã\81\84ã\81¨ã\81\8dã\81«ä¾¿å\88©ã\81§ã\81\82ã\82\8bã\80\82 I<struct "
 "timeval> の説明は B<setitimer>(2)  を見てほしい。 この ioctl は、ソケットオプ"
 "ション B<SO_TIMESTAMP> がソケットにセットされていない場合にのみ使用すべきであ"
 "る。 さもなければ、この ioctl は B<SO_TIMESTAMP> がセットされていなかった間に"
@@ -8447,13 +9977,13 @@ msgstr ""
 "セットする)。"
 
 #. type: TP
-#: build/C/man7/socket.7:637
+#: build/C/man7/socket.7:855
 #, no-wrap
 msgid "B<SIOCSPGRP>"
 msgstr "B<SIOCSPGRP>"
 
 #. type: Plain text
-#: build/C/man7/socket.7:656
+#: build/C/man7/socket.7:874
 msgid ""
 "Set the process or process group to send B<SIGIO> or B<SIGURG> signals to "
 "when an asynchronous I/O operation has finished or urgent data is "
@@ -8465,21 +9995,21 @@ msgid ""
 "UID of 0."
 msgstr ""
 "非同期 I/O 操作の終了時や緊急データの受信時に B<SIGIO> や B<SIGURG> シグナル"
-"群を送るプロセスやプロセスグループを設定する。 引き数は I<pid_t> へのポイン"
-"ã\81§ã\81\82ã\82\8bã\80\82 å¼\95ã\81\8dæ\95°ã\81\8cæ­£ã\81 ã\81¨ã\80\81ã\81\9dã\81®ã\83\97ã\83­ã\82»ã\82¹ã\81«ã\82·ã\82°ã\83\8aã\83«ã\81\8cé\80\81ã\82\89ã\82\8cã\82\8bã\80\82è² ã\81 ã\81¨ã\80\81 å¼\95ã\81\8dæ\95°ã\81®"
-"絶対値を ID に持つプロセスグループにシグナルが送られる。 シグナル受信先には、"
-"自分自身のプロセス / 自分の所属するプロセスグループ しか指定できない。但し、 "
-"B<CAP_KILL> ケーパビリティを持っている場合、及び実効ユーザ ID が 0 のプロセス"
-"の場合は この限りではない。"
+"群を送るプロセスやプロセスグループを設定する。 引き数は I<pid_t> へのポイン"
+"ã\82¿ã\83¼ã\81§ã\81\82ã\82\8bã\80\82 å¼\95ã\81\8dæ\95°ã\81\8cæ­£ã\81 ã\81¨ã\80\81ã\81\9dã\81®ã\83\97ã\83­ã\82»ã\82¹ã\81«ã\82·ã\82°ã\83\8aã\83«ã\81\8cé\80\81ã\82\89ã\82\8cã\82\8bã\80\82è² ã\81 ã\81¨ã\80\81 å¼\95ã\81\8d"
+"数の絶対値を ID に持つプロセスグループにシグナルが送られる。 シグナル受信先に"
+"は、自分自身のプロセス / 自分の所属するプロセスグループ しか指定できない。但"
+"し、 B<CAP_KILL> ケーパビリティを持っている場合、及び実効ユーザー ID が 0 の"
+"ã\83\97ã\83­ã\82»ã\82¹ã\81®å ´å\90\88ã\81¯ ã\81\93ã\81®é\99\90ã\82\8aã\81§ã\81¯ã\81ªã\81\84ã\80\82"
 
 #. type: TP
-#: build/C/man7/socket.7:656
+#: build/C/man7/socket.7:874
 #, no-wrap
 msgid "B<FIOASYNC>"
 msgstr "B<FIOASYNC>"
 
 #. type: Plain text
-#: build/C/man7/socket.7:666
+#: build/C/man7/socket.7:884
 msgid ""
 "Change the B<O_ASYNC> flag to enable or disable asynchronous I/O mode of the "
 "socket.  Asynchronous I/O mode means that the B<SIGIO> signal or the signal "
@@ -8487,10 +10017,10 @@ msgid ""
 msgstr ""
 "B<O_ASYNC> フラグを変更し、ソケットの非同期 (asynchronous) I/O モードを 有効/"
 "無効にする。非同期 I/O モードでは、 新しい I/O イベントが起きたときに、 "
-"B<SIGIO> ã\82·ã\82°ã\83\8aã\83«ã\82\84 B<F_SETSIG> ã\81§è¨­å®\9aã\81\95ã\82\8cã\81\9fã\82·ã\82°ã\83\8aã\83«ã\83»ã\82»ã\83\83ã\83\88ã\81\8cç\99ºè¡\8cã\81\95ã\82\8cã\82\8bã\80\82"
+"B<SIGIO> シグナルや B<F_SETSIG> で設定されたシグナルセットが発行される。"
 
 #. type: Plain text
-#: build/C/man7/socket.7:674
+#: build/C/man7/socket.7:892
 msgid ""
 "Argument is an integer boolean flag.  (This operation is synonymous with the "
 "use of B<fcntl>(2)  to set the B<O_ASYNC> flag.)"
@@ -8499,49 +10029,49 @@ msgstr ""
 "B<O_ASYNC> フラグをセットするのと同じ意味である。)"
 
 #. type: TP
-#: build/C/man7/socket.7:674
+#: build/C/man7/socket.7:892
 #, no-wrap
 msgid "B<SIOCGPGRP>"
 msgstr "B<SIOCGPGRP>"
 
 #. type: Plain text
-#: build/C/man7/socket.7:683
+#: build/C/man7/socket.7:901
 msgid ""
 "Get the current process or process group that receives B<SIGIO> or B<SIGURG> "
 "signals, or 0 when none is set."
 msgstr ""
-"B<SIGIO> ã\82\84 B<SIGURG> ã\82\92å\8f\97ä¿¡ã\81\97ã\81\9fã\82«ã\83¬ã\83³ã\83\88ã\83\97ã\83­ã\82»ã\82¹ã\83»プロセスグループを取得す"
+"B<SIGIO> ã\82\84 B<SIGURG> ã\82\92å\8f\97ä¿¡ã\81\97ã\81\9fã\82«ã\83¬ã\83³ã\83\88ã\83\97ã\83­ã\82»ã\82¹ã\81\8bプロセスグループを取得す"
 "る。 ない場合は 0 が返る。"
 
 #. type: Plain text
-#: build/C/man7/socket.7:687
+#: build/C/man7/socket.7:905
 msgid "Valid B<fcntl>(2)  operations:"
 msgstr "有効な B<fcntl>(2)  操作:"
 
 #. type: TP
-#: build/C/man7/socket.7:687
+#: build/C/man7/socket.7:905
 #, no-wrap
 msgid "B<FIOGETOWN>"
 msgstr "B<FIOGETOWN>"
 
 #. type: Plain text
-#: build/C/man7/socket.7:692
+#: build/C/man7/socket.7:910
 msgid "The same as the B<SIOCGPGRP> B<ioctl>(2)."
 msgstr "B<SIOCGPGRP> B<ioctl>(2)  と同じ。"
 
 #. type: TP
-#: build/C/man7/socket.7:692
+#: build/C/man7/socket.7:910
 #, no-wrap
 msgid "B<FIOSETOWN>"
 msgstr "B<FIOSETOWN>"
 
 #. type: Plain text
-#: build/C/man7/socket.7:697
+#: build/C/man7/socket.7:915
 msgid "The same as the B<SIOCSPGRP> B<ioctl>(2)."
 msgstr "B<SIOCSPGRP> B<ioctl>(2)  と同じ。"
 
 #. type: Plain text
-#: build/C/man7/socket.7:711
+#: build/C/man7/socket.7:929
 msgid ""
 "B<SO_BINDTODEVICE> was introduced in Linux 2.0.30.  B<SO_PASSCRED> is new in "
 "Linux 2.2.  The I</proc> interfaces was introduced in Linux 2.2.  "
@@ -8550,24 +10080,24 @@ msgid ""
 "be read or written."
 msgstr ""
 "B<SO_BINDTODEVICE> は Linux 2.0.30 で導入された。 B<SO_PASSCRED> は Linux "
-"2.2 で登場した。 I</proc> インタフェースは Linux 2.2 で導入された。 "
+"2.2 ã\81§ç\99»å ´ã\81\97ã\81\9fã\80\82 I</proc> ã\82¤ã\83³ã\82¿ã\83¼ã\83\95ã\82§ã\83¼ã\82¹ã\81¯ Linux 2.2 ã\81§å°\8eå\85¥ã\81\95ã\82\8cã\81\9fã\80\82 "
 "B<SO_RCVTIMEO> と B<SO_SNDTIMEO> は Linux 2.3.41 以降でサポートされている。 "
 "それ以前は、タイムアウトはプロトコル固有の固定の設定値で、 読み書きをすること"
 "はできなかった。"
 
 #. type: Plain text
-#: build/C/man7/socket.7:716
+#: build/C/man7/socket.7:934
 msgid ""
 "Linux assumes that half of the send/receive buffer is used for internal "
 "kernel structures; thus the values in the corresponding I</proc> files are "
 "twice what can be observed on the wire."
 msgstr ""
-"Linux ã\81¯ã\80\81é\80\81å\8f\97ä¿¡ã\83\90ã\83\83ã\83\95ã\82¡ã\81®å\8d\8aå\88\86ã\82\92å\86\85é\83¨ã\81®ã\82«ã\83¼ã\83\8dã\83«æ§\8bé\80 ä½\93ã\81§ç\94¨ã\81\84ã\82\8bã\81¨ä»®å®\9aã\81\97ã\81¦ã\81\84ã\82\8bã\80\82 "
-"ã\81\97ã\81\9fã\81\8cã\81£ã\81¦ã\80\81対å¿\9cã\81\99ã\82\8b I</proc> ã\83\95ã\82¡ã\82¤ã\83«ã\81¯ã\83\8dã\83\83ã\83\88ã\83¯ã\83¼ã\82¯å\9b\9eç·\9aä¸\8aã\81§ã\81®å¤§ã\81\8dã\81\95ã\81® 2 å\80\8dã\81«"
-"なる。"
+"Linux ã\81¯ã\80\81é\80\81å\8f\97ä¿¡ã\83\90ã\83\83ã\83\95ã\82¡ã\83¼ã\81®å\8d\8aå\88\86ã\82\92å\86\85é\83¨ã\81®ã\82«ã\83¼ã\83\8dã\83«æ§\8bé\80 ä½\93ã\81§ç\94¨ã\81\84ã\82\8bã\81¨ä»®å®\9aã\81\97ã\81¦ã\81\84"
+"ã\82\8bã\80\82 ã\81\97ã\81\9fã\81\8cã\81£ã\81¦ã\80\81対å¿\9cã\81\99ã\82\8b I</proc> ã\83\95ã\82¡ã\82¤ã\83«ã\81¯ã\83\8dã\83\83ã\83\88ã\83¯ã\83¼ã\82¯å\9b\9eç·\9aä¸\8aã\81§ã\81®å¤§ã\81\8dã\81\95ã\81® "
+"2 倍になる。"
 
 #. type: Plain text
-#: build/C/man7/socket.7:729
+#: build/C/man7/socket.7:947
 msgid ""
 "Linux will only allow port reuse with the B<SO_REUSEADDR> option when this "
 "option was set both in the previous program that performed a B<bind>(2)  to "
@@ -8588,7 +10118,7 @@ msgstr ""
 #.  .SH AUTHORS
 #.  This man page was written by Andi Kleen.
 #. type: Plain text
-#: build/C/man7/socket.7:742
+#: build/C/man7/socket.7:960
 msgid ""
 "The B<CONFIG_FILTER> socket options B<SO_ATTACH_FILTER> and "
 "B<SO_DETACH_FILTER> are not documented.  The suggested interface to use them "
@@ -8599,62 +10129,64 @@ msgstr ""
 "して 用いる方が良い。"
 
 #. type: Plain text
-#: build/C/man7/socket.7:752
+#: build/C/man7/socket.7:972
 msgid ""
-"B<getsockopt>(2), B<setsockopt>(2), B<socket>(2), B<capabilities>(7), B<ddp>"
-"(7), B<ip>(7), B<packet>(7), B<tcp>(7), B<udp>(7), B<unix>(7)"
+"B<connect>(2), B<getsockopt>(2), B<setsockopt>(2), B<socket>(2), "
+"B<capabilities>(7), B<ddp>(7), B<ip>(7), B<packet>(7), B<tcp>(7), B<udp>(7), "
+"B<unix>(7)"
 msgstr ""
-"B<getsockopt>(2), B<setsockopt>(2), B<socket>(2), B<capabilities>(7), B<ddp>"
-"(7), B<ip>(7), B<packet>(7), B<tcp>(7), B<udp>(7), B<unix>(7)"
+"B<connect>(2), B<getsockopt>(2), B<setsockopt>(2), B<socket>(2), "
+"B<capabilities>(7), B<ddp>(7), B<ip>(7), B<packet>(7), B<tcp>(7), B<udp>(7), "
+"B<unix>(7)"
 
 #. type: TH
-#: build/C/man2/socketcall.2:26
+#: build/C/man2/socketcall.2:25
 #, no-wrap
 msgid "SOCKETCALL"
 msgstr "SOCKETCALL"
 
 #. type: TH
-#: build/C/man2/socketcall.2:26
+#: build/C/man2/socketcall.2:25
 #, no-wrap
-msgid "2007-06-28"
-msgstr "2007-06-28"
+msgid "2012-10-16"
+msgstr "2012-10-16"
 
 #. type: Plain text
-#: build/C/man2/socketcall.2:29
+#: build/C/man2/socketcall.2:28
 msgid "socketcall - socket system calls"
-msgstr "socketcall - ã\82½ã\82±ã\83\83ã\83\88ã\83»ã\82·ã\82¹ã\83\86ã\83 ã\82³ã\83¼ã\83«"
+msgstr "socketcall - ソケットシステムコール"
 
 #. type: Plain text
-#: build/C/man2/socketcall.2:31
+#: build/C/man2/socketcall.2:30
 msgid "B<int socketcall(int >I<call>B<, unsigned long *>I<args>B<);>"
 msgstr "B<int socketcall(int >I<call>B<, unsigned long *>I<args>B<);>"
 
 #. type: Plain text
-#: build/C/man2/socketcall.2:39
+#: build/C/man2/socketcall.2:38
 msgid ""
 "B<socketcall>()  is a common kernel entry point for the socket system "
 "calls.  I<call> determines which socket function to invoke.  I<args> points "
 "to a block containing the actual arguments, which are passed through to the "
 "appropriate call."
 msgstr ""
-"B<socketcall>()  ã\81¯ã\82½ã\82±ã\83\83ã\83\88ã\83»ã\82·ã\82¹ã\83\86ã\83 ã\82³ã\83¼ã\83«ã\81®ã\81\9fã\82\81ã\81®å\85±é\80\9aã\81®ã\82«ã\83¼ã\83\8dã\83«ã\83»ã\82¨ã\83³ã\83\88"
-"ã\83ªã\83» ã\83\9dã\82¤ã\83³ã\83\88(kernel entry point)ã\81§ã\81\82ã\82\8bã\80\82 I<call> ã\81¯ã\81©ã\81®ã\82½ã\82±ã\83\83ã\83\88é\96¢æ\95°ã\82\92å\91¼ã\81³å\87º"
-"すかを指定する。 I<args> は適切なコールに渡すための実際の引き数を含んでいるブ"
-"ロックを指す。"
+"B<socketcall>()  ã\81¯ã\82½ã\82±ã\83\83ã\83\88ã\82·ã\82¹ã\83\86ã\83 ã\82³ã\83¼ã\83«ã\81®ã\81\9fã\82\81ã\81®å\85±é\80\9aã\81®ã\82«ã\83¼ã\83\8dã\83«ã\82¨ã\83³ã\83\88ã\83ªã\83¼ ã\83\9d"
+"ã\82¤ã\83³ã\83\88(kernel entry point)ã\81§ã\81\82ã\82\8bã\80\82 I<call> ã\81¯ã\81©ã\81®ã\82½ã\82±ã\83\83ã\83\88é\96¢æ\95°ã\82\92å\91¼ã\81³å\87ºã\81\99ã\81\8bã\82\92æ\8c\87"
+"定する。 I<args> は適切なコールに渡すための実際の引き数を含んでいるブロックを"
+"指す。"
 
 #. type: Plain text
-#: build/C/man2/socketcall.2:43
+#: build/C/man2/socketcall.2:42
 msgid ""
 "User programs should call the appropriate functions by their usual names.  "
 "Only standard library implementors and kernel hackers need to know about "
 "B<socketcall>()."
 msgstr ""
-"ã\83¦ã\83¼ã\82¶ã\83¼ã\83»ã\83\97ã\83­ã\82°ã\83©ã\83 ã\81¯é\80\9a常ã\81®å\90\8då\89\8dã\82\92使ç\94¨ã\81\97ã\81¦é\81©å\88\87ã\81ªé\96¢æ\95°ã\82\92å\91¼ã\81³å\87ºã\81\99ã\81¹ã\81\8dã\81§ã\81\82ã\82\8bã\80\82 æ¨\99"
-"準ライブラリの実装者やカーネル・ハッカーのみが B<socketcall>()  について知る"
-"必要がある。"
+"ã\83¦ã\83¼ã\82¶ã\83¼ã\83\97ã\83­ã\82°ã\83©ã\83 ã\81¯é\80\9a常ã\81®å\90\8då\89\8dã\82\92使ç\94¨ã\81\97ã\81¦é\81©å\88\87ã\81ªé\96¢æ\95°ã\82\92å\91¼ã\81³å\87ºã\81\99ã\81¹ã\81\8dã\81§ã\81\82ã\82\8bã\80\82 æ¨\99æº\96"
+"ライブラリの実装者やカーネルハッカーのみが B<socketcall>()  について知る必要"
+"がある。"
 
 #. type: Plain text
-#: build/C/man2/socketcall.2:46
+#: build/C/man2/socketcall.2:45
 msgid ""
 "This call is specific to Linux, and should not be used in programs intended "
 "to be portable."
@@ -8663,48 +10195,48 @@ msgstr ""
 "い。"
 
 #. type: Plain text
-#: build/C/man2/socketcall.2:54
+#: build/C/man2/socketcall.2:53
 msgid ""
-"On a few architectures, for example ia64, there is no B<socketcall>()  "
-"system call; instead B<socket>(2), B<accept>(2), B<bind>(2), and so on "
-"really are implemented as separate system calls."
+"On a some architectures\\(emfor example, x86-64 and ARM\\(emthere is no "
+"B<socketcall>()  system call; instead B<socket>(2), B<accept>(2), "
+"B<bind>(2), and so on really are implemented as separate system calls."
 msgstr ""
-"ia64 などのいくつかのアーキテクチャでは、システムコール B<socketcall>()  が存"
-"在しない。実際には、その代わりに B<socket>(2), B<accept>(2), B<bind>(2)  など"
-"が独立したシステムコールとして実装されている。"
+"いくつかのアーキテクチャー\\\\(emfor 例えば x86-64 や ARM\\\\(emでは、システ"
+"ムコール B<socketcall>()  が存在しない。実際には、その代わりに B<socket>(2), "
+"B<accept>(2), B<bind>(2)  などが独立したシステムコールとして実装されている。"
 
 #. type: Plain text
 #: build/C/man2/socketcall.2:71
 msgid ""
-"B<accept>(2), B<bind>(2), B<connect>(2), B<getpeername>(2), B<getsockname>"
-"(2), B<getsockopt>(2), B<listen>(2), B<recv>(2), B<recvfrom>(2), B<recvmsg>"
-"(2), B<send>(2), B<sendmsg>(2), B<sendto>(2), B<setsockopt>(2), B<shutdown>"
-"(2), B<socket>(2), B<socketpair>(2)"
+"B<accept>(2), B<bind>(2), B<connect>(2), B<getpeername>(2), "
+"B<getsockname>(2), B<getsockopt>(2), B<listen>(2), B<recv>(2), "
+"B<recvfrom>(2), B<recvmsg>(2), B<send>(2), B<sendmsg>(2), B<sendto>(2), "
+"B<setsockopt>(2), B<shutdown>(2), B<socket>(2), B<socketpair>(2)"
 msgstr ""
-"B<accept>(2), B<bind>(2), B<connect>(2), B<getpeername>(2), B<getsockname>"
-"(2), B<getsockopt>(2), B<listen>(2), B<recv>(2), B<recvfrom>(2), B<recvmsg>"
-"(2), B<send>(2), B<sendmsg>(2), B<sendto>(2), B<setsockopt>(2), B<shutdown>"
-"(2), B<socket>(2), B<socketpair>(2)"
+"B<accept>(2), B<bind>(2), B<connect>(2), B<getpeername>(2), "
+"B<getsockname>(2), B<getsockopt>(2), B<listen>(2), B<recv>(2), "
+"B<recvfrom>(2), B<recvmsg>(2), B<send>(2), B<sendmsg>(2), B<sendto>(2), "
+"B<setsockopt>(2), B<shutdown>(2), B<socket>(2), B<socketpair>(2)"
 
 #. type: TH
-#: build/C/man2/socketpair.2:40
+#: build/C/man2/socketpair.2:42
 #, no-wrap
 msgid "SOCKETPAIR"
 msgstr "SOCKETPAIR"
 
 #. type: TH
-#: build/C/man2/socketpair.2:40
+#: build/C/man2/socketpair.2:42
 #, no-wrap
 msgid "2008-10-11"
 msgstr "2008-10-11"
 
 #. type: Plain text
-#: build/C/man2/socketpair.2:43
+#: build/C/man2/socketpair.2:45
 msgid "socketpair - create a pair of connected sockets"
 msgstr "socketpair - 接続されたソケットのペアを作成する"
 
 #. type: Plain text
-#: build/C/man2/socketpair.2:50
+#: build/C/man2/socketpair.2:52
 msgid ""
 "B<int socketpair(int >I<domain>B<, int >I<type>B<, int >I<protocol>B<, int "
 ">I<sv>B<[2]);>"
@@ -8713,65 +10245,65 @@ msgstr ""
 ">I<sv>B<[2]);>"
 
 #. type: Plain text
-#: build/C/man2/socketpair.2:61
+#: build/C/man2/socketpair.2:63
 msgid ""
 "The B<socketpair>()  call creates an unnamed pair of connected sockets in "
 "the specified I<domain>, of the specified I<type>, and using the optionally "
-"specified I<protocol>.  For further details of these arguments, see B<socket>"
-"(2)."
+"specified I<protocol>.  For further details of these arguments, see "
+"B<socket>(2)."
 msgstr ""
 "B<socketpair>()  は、指定されたドメイン I<domain> に指定された種類 I<type> で"
 "名前のないソケットの接続されたペアを作成する。 I<protocol> が指定されると、こ"
 "のプロトコルを用いる。 これらの引き数の詳細は B<socket>(2)  を参照のこと。"
 
 #. type: Plain text
-#: build/C/man2/socketpair.2:67
+#: build/C/man2/socketpair.2:69
 msgid ""
 "The descriptors used in referencing the new sockets are returned in I<sv>[0] "
 "and I<sv>[1].  The two sockets are indistinguishable."
 msgstr ""
-"新しいソケットの参照に使用するディスクリプタ (descriptor) が I<sv>[0] と "
+"新しいソケットの参照に使用するディスクリプタ (descriptor) が I<sv>[0] と "
 "I<sv>[1] に返される。 二つのソケットは全く同じである。"
 
 #. type: Plain text
-#: build/C/man2/socketpair.2:76
+#: build/C/man2/socketpair.2:78
 msgid "The specified address family is not supported on this machine."
-msgstr "ã\81\93ã\81®ã\83\9eã\82·ã\83³ã\81§ã\81¯æ\8c\87å®\9aã\81\95ã\82\8cã\81\9fã\82¢ã\83\89ã\83¬ã\82¹ã\83»ã\83\95ã\82¡ã\83\9fã\83ªがサポートされていない。"
+msgstr "ã\81\93ã\81®ã\83\9eã\82·ã\83³ã\81§ã\81¯æ\8c\87å®\9aã\81\95ã\82\8cã\81\9fã\82¢ã\83\89ã\83¬ã\82¹ã\83\95ã\82¡ã\83\9fã\83ªã\83¼がサポートされていない。"
 
 #. type: Plain text
-#: build/C/man2/socketpair.2:81
+#: build/C/man2/socketpair.2:83
 msgid ""
 "The address I<sv> does not specify a valid part of the process address space."
 msgstr "アドレス I<sv> がこのプロセスで使えるアドレス空間を指定していない。"
 
 #. type: Plain text
-#: build/C/man2/socketpair.2:84
+#: build/C/man2/socketpair.2:86
 msgid "Too many descriptors are in use by this process."
-msgstr "このプロセスが使用しているディスクリプタの数が多すぎる。"
+msgstr "ã\81\93ã\81®ã\83\97ã\83­ã\82»ã\82¹ã\81\8c使ç\94¨ã\81\97ã\81¦ã\81\84ã\82\8bã\83\87ã\82£ã\82¹ã\82¯ã\83ªã\83\97ã\82¿ã\83¼ã\81®æ\95°ã\81\8cå¤\9aã\81\99ã\81\8eã\82\8bã\80\82"
 
 #. type: Plain text
-#: build/C/man2/socketpair.2:90
+#: build/C/man2/socketpair.2:92
 msgid "The specified protocol does not support creation of socket pairs."
 msgstr "指定されたプロトコルではソケットのペアの作成がサポートされていない。"
 
 #. type: Plain text
-#: build/C/man2/socketpair.2:93
+#: build/C/man2/socketpair.2:95
 msgid "The specified protocol is not supported on this machine."
 msgstr "このマシンでは指定されたプロトコルがサポートされていない。"
 
 #. type: Plain text
-#: build/C/man2/socketpair.2:101
+#: build/C/man2/socketpair.2:103
 msgid ""
 "4.4BSD, POSIX.1-2001.  The B<socketpair>()  function call appeared in "
 "4.2BSD.  It is generally portable to/from non-BSD systems supporting clones "
-"of the BSD socket layer (including System V variants)."
+"of the BSD socket layer (including System\\ V variants)."
 msgstr ""
 "4.4BSD, POSIX.1-2001.  B<socketpair>()  関数コールは 4.2BSD で現われた。一般"
-"に (System V の変種を含めて)  BSD のソケット層のクローンをサポートしている、"
-"BSD 以外のシステムと、 互いに移植性がある。"
+"に (System\\ V の変種を含めて)  BSD のソケット層のクローンをサポートしてい"
+"る、BSD 以外のシステムと、 互いに移植性がある。"
 
 #. type: Plain text
-#: build/C/man2/socketpair.2:107
+#: build/C/man2/socketpair.2:109
 msgid ""
 "On Linux, the only supported domain for this call is B<AF_UNIX> (or "
 "synonymously, B<AF_LOCAL>).  (Most implementations have the same "
@@ -8781,7 +10313,7 @@ msgstr ""
 "ある B<AF_LOCAL>)  だけである。 (ほとんどの実装で同じ制限がある)"
 
 #. type: Plain text
-#: build/C/man2/socketpair.2:116
+#: build/C/man2/socketpair.2:118
 msgid ""
 "Since Linux 2.6.27, B<socketpair>()  supports the B<SOCK_NONBLOCK> and "
 "B<SOCK_CLOEXEC> flags described in B<socket>(2)."
@@ -8790,27 +10322,8 @@ msgstr ""
 "B<SOCK_CLOEXEC> に対応している。フラグの説明は B<socket>(2)  を参照のこと。"
 
 #. type: Plain text
-#: build/C/man2/socketpair.2:128
+#: build/C/man2/socketpair.2:131
 msgid ""
 "B<pipe>(2), B<read>(2), B<socket>(2), B<write>(2), B<socket>(7), B<unix>(7)"
 msgstr ""
 "B<pipe>(2), B<read>(2), B<socket>(2), B<write>(2), B<socket>(7), B<unix>(7)"
-
-#~ msgid "COLOPHON"
-#~ msgstr "この文書について"
-
-#~ msgid ""
-#~ "This page is part of release 3.38 of the Linux I<man-pages> project.  A "
-#~ "description of the project, and information about reporting bugs, can be "
-#~ "found at http://www.kernel.org/doc/man-pages/."
-#~ msgstr ""
-#~ "この man ページは Linux I<man-pages> プロジェクトのリリース 3.38 の一部で"
-#~ "ある。\n"
-#~ "プロジェクトの説明とバグ報告に関する情報は\n"
-#~ "http://www.kernel.org/doc/man-pages/ に書かれている。"
-
-#~ msgid "RETURN VALUES"
-#~ msgstr "RETURN VALUES"
-
-#~ msgid "2011-10-01"
-#~ msgstr "2011-10-01"