OSDN Git Service

(split) LDP: Update POT and ja.po to LDP v3.50.
[linuxjm/LDP_man-pages.git] / po4a / socket / po / socket.pot
index 41608db..42df753 100644 (file)
@@ -7,7 +7,7 @@
 msgid ""
 msgstr ""
 "Project-Id-Version: PACKAGE VERSION\n"
-"POT-Creation-Date: 2012-05-28 07:17+0900\n"
+"POT-Creation-Date: 2013-03-22 01:06+0900\n"
 "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
 "Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
 "Language-Team: LANGUAGE <LL@li.org>\n"
@@ -17,48 +17,48 @@ 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 ""
 
 #. type: TH
-#: build/C/man2/accept.2:39
+#: build/C/man2/accept.2:41
 #, no-wrap
 msgid "2010-09-10"
 msgstr ""
 
 #. 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:48 build/C/man2/socketcall.2:25 build/C/man2/socketpair.2:42
 #, no-wrap
 msgid "Linux"
 msgstr ""
 
 #. 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:48 build/C/man2/socketcall.2:25 build/C/man2/socketpair.2:42
 #, no-wrap
 msgid "Linux Programmer's Manual"
 msgstr ""
 
 #. 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:49 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"
+#: build/C/man2/accept.2:44
+msgid "accept, accept4 - accept a connection on a socket"
 msgstr ""
 
 #. 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:51 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"
@@ -66,7 +66,7 @@ msgid ""
 msgstr ""
 
 #. 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 "
@@ -74,7 +74,7 @@ msgid ""
 msgstr ""
 
 #. 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"
@@ -82,7 +82,7 @@ msgid ""
 msgstr ""
 
 #. 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"
@@ -90,13 +90,13 @@ msgid ""
 msgstr ""
 
 #. 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:55 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 "
@@ -107,7 +107,7 @@ msgid ""
 msgstr ""
 
 #. 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 "
@@ -115,7 +115,7 @@ msgid ""
 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 "
@@ -126,7 +126,7 @@ msgid ""
 msgstr ""
 
 #. 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 "
@@ -134,7 +134,7 @@ msgid ""
 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 "
@@ -142,7 +142,7 @@ msgid ""
 msgstr ""
 
 #. 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 "
@@ -152,7 +152,7 @@ msgid ""
 msgstr ""
 
 #. 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 "
@@ -162,7 +162,7 @@ msgid ""
 msgstr ""
 
 #. 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 "
@@ -173,7 +173,7 @@ msgid ""
 msgstr ""
 
 #. 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 "
@@ -181,13 +181,13 @@ msgid ""
 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:164
 #, no-wrap
 msgid "B<SOCK_NONBLOCK>"
 msgstr ""
 
 #. 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:172
 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 "
@@ -195,13 +195,13 @@ msgid ""
 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:172
 #, no-wrap
 msgid "B<SOCK_CLOEXEC>"
 msgstr ""
 
 #. 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:182
 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 "
@@ -209,13 +209,13 @@ msgid ""
 msgstr ""
 
 #. 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:144 build/C/man2/select.2:289 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:388 build/C/man2/recvmmsg.2:149 build/C/man2/select.2:289 build/C/man2/select_tut.2:485 build/C/man2/send.2:275 build/C/man2/sendmmsg.2:119 build/C/man3/sockatmark.3:51 build/C/man2/socket.2:314 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> "
@@ -223,13 +223,13 @@ msgid ""
 msgstr ""
 
 #. 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 "
@@ -241,20 +241,20 @@ msgid ""
 msgstr ""
 
 #. 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:152 build/C/man2/select.2:306 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:393 build/C/man2/recvmmsg.2:157 build/C/man2/select.2:306 build/C/man2/send.2:280 build/C/man2/sendmmsg.2:133 build/C/man3/sockatmark.3:56 build/C/man2/socket.2:319 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:294
+#: build/C/man2/accept.2:215 build/C/man2/recv.2:398 build/C/man2/send.2:296
 #, no-wrap
 msgid "B<EAGAIN> or B<EWOULDBLOCK>"
 msgstr ""
 
 #.  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, "
@@ -263,155 +263,155 @@ msgid ""
 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:307 build/C/man2/send.2:302 build/C/man3/sockatmark.3:55
+#: build/C/man2/accept.2:223 build/C/man2/bind.2:165 build/C/man2/connect.2:169 build/C/man2/getsockname.2:73 build/C/man2/getsockopt.2:137 build/C/man2/listen.2:91 build/C/man2/recv.2:407 build/C/man2/select.2:307 build/C/man2/send.2:304 build/C/man3/sockatmark.3:57
 #, no-wrap
 msgid "B<EBADF>"
 msgstr ""
 
 #. type: Plain text
-#: build/C/man2/accept.2:224
+#: build/C/man2/accept.2:226
 msgid "The descriptor is invalid."
 msgstr ""
 
 #. type: TP
-#: build/C/man2/accept.2:224
+#: build/C/man2/accept.2:226
 #, no-wrap
 msgid "B<ECONNABORTED>"
 msgstr ""
 
 #. 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:311 build/C/man2/socketpair.2:76
+#: build/C/man2/accept.2:229 build/C/man2/bind.2:191 build/C/man2/connect.2:175 build/C/man2/getsockname.2:78 build/C/man2/getsockopt.2:142 build/C/man2/recv.2:416 build/C/man2/send.2:313 build/C/man2/socketpair.2:78
 #, no-wrap
 msgid "B<EFAULT>"
 msgstr ""
 
 #. 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 ""
 
 #. 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:312 build/C/man2/send.2:314
+#: build/C/man2/accept.2:234 build/C/man2/connect.2:203 build/C/man2/recv.2:420 build/C/man2/select.2:312 build/C/man2/send.2:316
 #, no-wrap
 msgid "B<EINTR>"
 msgstr ""
 
 #. 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)."
 msgstr ""
 
 #. 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:156 build/C/man2/select.2:316 build/C/man2/send.2:318 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:169 build/C/man2/bind.2:195 build/C/man2/getsockname.2:84 build/C/man2/getsockopt.2:152 build/C/man2/recv.2:425 build/C/man2/recvmmsg.2:161 build/C/man2/select.2:316 build/C/man2/send.2:320 build/C/man3/sockatmark.3:61 build/C/man2/socket.2:327 build/C/man2/socket.2:330
 #, no-wrap
 msgid "B<EINVAL>"
 msgstr ""
 
 #. 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)."
 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 ""
 
 #. 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:335 build/C/man2/socketpair.2:83
 #, no-wrap
 msgid "B<EMFILE>"
 msgstr ""
 
 #. 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 ""
 
 #. 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:338 build/C/man2/socketpair.2:86
 #, no-wrap
 msgid "B<ENFILE>"
 msgstr ""
 
 #. 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:341 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 ""
 
 #. 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 ""
 
 #. 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:347
+#: build/C/man2/accept.2:260 build/C/man2/bind.2:174 build/C/man2/connect.2:215 build/C/man2/getsockname.2:92 build/C/man2/getsockopt.2:166 build/C/man2/listen.2:96 build/C/man2/recv.2:440 build/C/man2/send.2:349
 #, no-wrap
 msgid "B<ENOTSOCK>"
 msgstr ""
 
 #. 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 ""
 
 #. type: TP
-#: build/C/man2/accept.2:261 build/C/man2/listen.2:99 build/C/man2/send.2:352 build/C/man2/socketpair.2:87
+#: build/C/man2/accept.2:263 build/C/man2/listen.2:101 build/C/man2/send.2:354 build/C/man2/socketpair.2:89
 #, no-wrap
 msgid "B<EOPNOTSUPP>"
 msgstr ""
 
 #. 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 ""
 
 #. type: TP
-#: build/C/man2/accept.2:265
+#: build/C/man2/accept.2:267
 #, no-wrap
 msgid "B<EPROTO>"
 msgstr ""
 
 #. type: Plain text
-#: build/C/man2/accept.2:268
+#: build/C/man2/accept.2:270
 msgid "Protocol error."
 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 ""
 
 #. type: TP
-#: build/C/man2/accept.2:272
+#: build/C/man2/accept.2:274
 #, no-wrap
 msgid "B<EPERM>"
 msgstr ""
 
 #. 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 "
@@ -420,20 +420,20 @@ msgid ""
 msgstr ""
 
 #. type: SH
-#: build/C/man2/accept.2:287 build/C/man3/getifaddrs.3:157 build/C/man2/recvmmsg.2:160 build/C/man2/select.2:325 build/C/man2/sendmmsg.2:145 build/C/man3/sockatmark.3:66 build/C/man7/socket.7:696
+#: build/C/man2/accept.2:289 build/C/man3/getifaddrs.3:162 build/C/man3/if_nameindex.3:97 build/C/man2/recvmmsg.2:165 build/C/man2/select.2:325 build/C/man2/sendmmsg.2:145 build/C/man3/sockatmark.3:68 build/C/man7/socket.7:802
 #, 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."
 msgstr ""
 
 #. 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:165 build/C/man2/select.2:331 build/C/man2/send.2:366 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:222 build/C/man3/bindresvport.3:92 build/C/man2/connect.2:225 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:85 build/C/man2/listen.2:106 build/C/man2/recv.2:445 build/C/man2/recvmmsg.2:170 build/C/man2/select.2:331 build/C/man2/send.2:368 build/C/man2/sendmmsg.2:150 build/C/man3/sockatmark.3:71 build/C/man2/socket.2:352 build/C/man2/socketcall.2:42 build/C/man2/socketpair.2:95
 #, no-wrap
 msgid "CONFORMING TO"
 msgstr ""
@@ -445,21 +445,21 @@ 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)."
 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 ""
 
 #.  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 "
@@ -470,13 +470,13 @@ msgid ""
 msgstr ""
 
 #. 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:346 build/C/man2/select_tut.2:501 build/C/man2/send.2:380 build/C/man2/sendmmsg.2:153 build/C/man3/sockatmark.3:71 build/C/man2/socket.2:364 build/C/man7/socket.7:710 build/C/man2/socketcall.2:46 build/C/man2/socketpair.2:101
+#: build/C/man2/accept.2:324 build/C/man2/bind.2:234 build/C/man3/bindresvport.3:95 build/C/man2/connect.2:241 build/C/man3/getifaddrs.3:190 build/C/man2/getsockname.2:103 build/C/man2/getsockopt.2:178 build/C/man2/listen.2:111 build/C/man2/recv.2:455 build/C/man2/select.2:346 build/C/man2/select_tut.2:503 build/C/man2/send.2:382 build/C/man2/sendmmsg.2:153 build/C/man3/sockatmark.3:73 build/C/man2/socket.2:366 build/C/man7/socket.7:816 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:240 build/C/man2/connect.2:247 build/C/man2/getsockopt.2:184 build/C/man2/listen.2:137 build/C/man2/socket.2:372 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) "
@@ -485,7 +485,7 @@ msgid ""
 msgstr ""
 
 #. 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 "
@@ -497,13 +497,13 @@ msgid ""
 msgstr ""
 
 #. type: SS
-#: build/C/man2/accept.2:349
+#: build/C/man2/accept.2:351
 #, no-wrap
 msgid "The socklen_t type"
 msgstr ""
 
 #. 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, "
@@ -515,7 +515,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> "
@@ -532,62 +532,62 @@ msgid ""
 msgstr ""
 
 #. 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:521 build/C/man2/select_tut.2:527 build/C/man2/send.2:417 build/C/man3/sockatmark.3:95 build/C/man2/socket.2:383
+#: build/C/man2/accept.2:378 build/C/man2/bind.2:254 build/C/man2/connect.2:258 build/C/man3/getifaddrs.3:207 build/C/man3/if_nameindex.3:108 build/C/man2/listen.2:166 build/C/man2/recv.2:490 build/C/man2/recvmmsg.2:173 build/C/man2/select.2:537 build/C/man2/select_tut.2:529 build/C/man2/send.2:419 build/C/man2/sendmmsg.2:168 build/C/man3/sockatmark.3:97 build/C/man2/socket.2:385
 #, 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:169
 msgid "See B<bind>(2)."
 msgstr ""
 
 #. 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:168 build/C/man2/select.2:558 build/C/man2/select_tut.2:817 build/C/man2/send.2:422 build/C/man2/sendmmsg.2:168 build/C/man3/sockatmark.3:130 build/C/man2/socket.2:388 build/C/man7/socket.7:741 build/C/man2/socketcall.2:54 build/C/man2/socketpair.2:122
+#: build/C/man2/accept.2:381 build/C/man2/bind.2:319 build/C/man3/bindresvport.3:101 build/C/man2/connect.2:263 build/C/man3/getifaddrs.3:290 build/C/man2/getsockname.2:112 build/C/man2/getsockopt.2:202 build/C/man3/if_nameindex.3:146 build/C/man3/if_nametoindex.3:89 build/C/man2/listen.2:169 build/C/man2/recv.2:495 build/C/man2/recvmmsg.2:268 build/C/man2/select.2:574 build/C/man2/select_tut.2:819 build/C/man2/send.2:424 build/C/man2/sendmmsg.2:236 build/C/man3/sockatmark.3:132 build/C/man2/socket.2:390 build/C/man7/socket.7:847 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:386
+#: 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)"
 msgstr ""
 
 #. type: SH
-#: build/C/man2/accept.2:386 build/C/man2/bind.2:330 build/C/man3/bindresvport.3:101 build/C/man2/connect.2:268 build/C/man3/getifaddrs.3:287 build/C/man2/getsockname.2:117 build/C/man2/getsockopt.2:208 build/C/man2/listen.2:173 build/C/man2/recv.2:504 build/C/man2/recvmmsg.2:175 build/C/man2/select.2:573 build/C/man2/select_tut.2:836 build/C/man2/send.2:437 build/C/man2/sendmmsg.2:173 build/C/man3/sockatmark.3:135 build/C/man2/socket.2:419 build/C/man7/socket.7:752 build/C/man2/socketcall.2:72 build/C/man2/socketpair.2:129
+#: build/C/man2/accept.2:388 build/C/man2/bind.2:332 build/C/man3/bindresvport.3:104 build/C/man2/connect.2:270 build/C/man3/getifaddrs.3:296 build/C/man2/getsockname.2:119 build/C/man2/getsockopt.2:210 build/C/man3/if_nameindex.3:153 build/C/man3/if_nametoindex.3:93 build/C/man2/listen.2:175 build/C/man2/recv.2:506 build/C/man2/recvmmsg.2:275 build/C/man2/select.2:588 build/C/man2/select_tut.2:838 build/C/man2/send.2:439 build/C/man2/sendmmsg.2:241 build/C/man3/sockatmark.3:137 build/C/man2/socket.2:419 build/C/man7/socket.7:859 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:393 build/C/man2/bind.2:337 build/C/man3/bindresvport.3:108 build/C/man2/connect.2:275 build/C/man3/getifaddrs.3:294 build/C/man2/getsockname.2:124 build/C/man2/getsockopt.2:215 build/C/man2/listen.2:180 build/C/man2/recv.2:511 build/C/man2/recvmmsg.2:182 build/C/man2/select.2:580 build/C/man2/select_tut.2:843 build/C/man2/send.2:444 build/C/man2/sendmmsg.2:180 build/C/man3/sockatmark.3:142 build/C/man2/socket.2:426 build/C/man7/socket.7:759 build/C/man2/socketcall.2:79 build/C/man2/socketpair.2:136
+#: build/C/man2/accept.2:395 build/C/man2/bind.2:339 build/C/man3/bindresvport.3:111 build/C/man2/connect.2:277 build/C/man3/getifaddrs.3:303 build/C/man2/getsockname.2:126 build/C/man2/getsockopt.2:217 build/C/man3/if_nameindex.3:160 build/C/man3/if_nametoindex.3:100 build/C/man2/listen.2:182 build/C/man2/recv.2:513 build/C/man2/recvmmsg.2:282 build/C/man2/select.2:595 build/C/man2/select_tut.2:845 build/C/man2/send.2:446 build/C/man2/sendmmsg.2:248 build/C/man3/sockatmark.3:144 build/C/man2/socket.2:426 build/C/man7/socket.7:866 build/C/man2/socketcall.2:78 build/C/man2/socketpair.2:138
 msgid ""
-"This page is part of release 3.41 of the Linux I<man-pages> project.  A "
+"This page is part of release 3.50 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 ""
 
 #. type: TH
-#: build/C/man2/bind.2:66
+#: build/C/man2/bind.2:68
 #, no-wrap
 msgid "BIND"
 msgstr ""
 
 #. type: TH
-#: build/C/man2/bind.2:66
+#: build/C/man2/bind.2:68
 #, no-wrap
 msgid "2007-12-28"
 msgstr ""
 
 #. type: Plain text
-#: build/C/man2/bind.2:69
+#: build/C/man2/bind.2:71
 msgid "bind - bind a name to a socket"
 msgstr ""
 
 #. 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"
@@ -595,7 +595,7 @@ msgid ""
 msgstr ""
 
 #. 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 "
@@ -606,14 +606,14 @@ msgid ""
 msgstr ""
 
 #. 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))."
 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 "
@@ -623,14 +623,14 @@ msgid ""
 msgstr ""
 
 #. 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 ""
 
 #. type: Plain text
-#: build/C/man2/bind.2:142
+#: build/C/man2/bind.2:144
 #, no-wrap
 msgid ""
 "struct sockaddr {\n"
@@ -640,157 +640,157 @@ msgid ""
 msgstr ""
 
 #. 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 ""
 
 #. 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."
 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:182 build/C/man3/bindresvport.3:77 build/C/man2/connect.2:135 build/C/man2/send.2:285 build/C/man2/socket.2:320
 #, no-wrap
 msgid "B<EACCES>"
 msgstr ""
 
 #.  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 ""
 
 #. 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/man3/bindresvport.3:82 build/C/man2/connect.2:148 build/C/man2/listen.2:88
 #, no-wrap
 msgid "B<EADDRINUSE>"
 msgstr ""
 
 #. 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:169
 msgid "I<sockfd> is not a valid descriptor."
 msgstr ""
 
 #.  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:174
 msgid "The socket is already bound to an address."
 msgstr ""
 
 #. type: Plain text
-#: build/C/man2/bind.2:176
+#: build/C/man2/bind.2:178
 msgid "I<sockfd> is a descriptor for a file, not a socket."
 msgstr ""
 
 #. type: Plain text
-#: build/C/man2/bind.2:180
+#: build/C/man2/bind.2:182
 msgid "The following errors are specific to UNIX domain (B<AF_UNIX>)  sockets:"
 msgstr ""
 
 #. type: Plain text
-#: build/C/man2/bind.2:185
+#: build/C/man2/bind.2:187
 msgid ""
 "Search permission is denied on a component of the path prefix.  (See also "
 "B<path_resolution>(7).)"
 msgstr ""
 
 #. type: TP
-#: build/C/man2/bind.2:185
+#: build/C/man2/bind.2:187
 #, no-wrap
 msgid "B<EADDRNOTAVAIL>"
 msgstr ""
 
 #. type: Plain text
-#: build/C/man2/bind.2:189
+#: build/C/man2/bind.2:191
 msgid ""
 "A nonexistent interface was requested or the requested address was not "
 "local."
 msgstr ""
 
 #. type: Plain text
-#: build/C/man2/bind.2:193
+#: build/C/man2/bind.2:195
 msgid "I<addr> points outside the user's accessible address space."
 msgstr ""
 
 #. type: Plain text
-#: build/C/man2/bind.2:200
+#: build/C/man2/bind.2:202
 msgid "The I<addrlen> is wrong, or the socket was not in the B<AF_UNIX> family."
 msgstr ""
 
 #. type: TP
-#: build/C/man2/bind.2:200
+#: build/C/man2/bind.2:202
 #, no-wrap
 msgid "B<ELOOP>"
 msgstr ""
 
 #. type: Plain text
-#: build/C/man2/bind.2:204
+#: build/C/man2/bind.2:206
 msgid "Too many symbolic links were encountered in resolving I<addr>."
 msgstr ""
 
 #. type: TP
-#: build/C/man2/bind.2:204
+#: build/C/man2/bind.2:206
 #, no-wrap
 msgid "B<ENAMETOOLONG>"
 msgstr ""
 
 #. type: Plain text
-#: build/C/man2/bind.2:208
+#: build/C/man2/bind.2:210
 msgid "I<addr> is too long."
 msgstr ""
 
 #. type: TP
-#: build/C/man2/bind.2:208
+#: build/C/man2/bind.2:210
 #, no-wrap
 msgid "B<ENOENT>"
 msgstr ""
 
 #. type: Plain text
-#: build/C/man2/bind.2:211
+#: build/C/man2/bind.2:213
 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:322 build/C/man2/send.2:341
+#: build/C/man2/bind.2:213 build/C/man2/recv.2:429 build/C/man2/select.2:322 build/C/man2/send.2:343
 #, no-wrap
 msgid "B<ENOMEM>"
 msgstr ""
 
 #. type: Plain text
-#: build/C/man2/bind.2:214
+#: build/C/man2/bind.2:216
 msgid "Insufficient kernel memory was available."
 msgstr ""
 
 #. type: TP
-#: build/C/man2/bind.2:214
+#: build/C/man2/bind.2:216
 #, no-wrap
 msgid "B<ENOTDIR>"
 msgstr ""
 
 #. type: Plain text
-#: build/C/man2/bind.2:217
+#: build/C/man2/bind.2:219
 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:219
 #, no-wrap
 msgid "B<EROFS>"
 msgstr ""
 
 #. type: Plain text
-#: build/C/man2/bind.2:220
+#: build/C/man2/bind.2:222
 msgid "The socket inode would reside on a read-only file system."
 msgstr ""
 
@@ -803,12 +803,12 @@ msgstr ""
 #.  .B EISDIR
 #.  UNIX-domain error conditions.
 #. type: Plain text
-#: build/C/man2/bind.2:232
+#: build/C/man2/bind.2:234
 msgid "SVr4, 4.4BSD, POSIX.1-2001 (B<bind>()  first appeared in 4.2BSD)."
 msgstr ""
 
 #. type: Plain text
-#: build/C/man2/bind.2:249
+#: build/C/man2/bind.2:251
 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 "
@@ -816,19 +816,19 @@ msgid ""
 msgstr ""
 
 #. type: SH
-#: build/C/man2/bind.2:249 build/C/man2/getsockopt.2:197 build/C/man2/select.2:458 build/C/man2/send.2:412 build/C/man3/sockatmark.3:91 build/C/man7/socket.7:728
+#: build/C/man2/bind.2:251 build/C/man2/getsockopt.2:199 build/C/man2/select.2:474 build/C/man2/send.2:414 build/C/man3/sockatmark.3:93 build/C/man7/socket.7:834
 #, no-wrap
 msgid "BUGS"
 msgstr ""
 
 #.  FIXME What *are* transparent proxy options?
 #. type: Plain text
-#: build/C/man2/bind.2:252
+#: build/C/man2/bind.2:254
 msgid "The transparent proxy options are not described."
 msgstr ""
 
 #. type: Plain text
-#: build/C/man2/bind.2:257
+#: build/C/man2/bind.2:259
 msgid ""
 "An example of the use of B<bind>()  with Internet domain sockets can be "
 "found in B<getaddrinfo>(3)."
@@ -838,14 +838,14 @@ msgstr ""
 #.  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:266
 msgid ""
 "The following example shows how to bind a stream socket in the UNIX "
 "(B<AF_UNIX>)  domain, and accept connections:"
 msgstr ""
 
 #. type: Plain text
-#: build/C/man2/bind.2:271
+#: build/C/man2/bind.2:273
 #, no-wrap
 msgid ""
 "#include E<lt>sys/socket.hE<gt>\n"
@@ -856,7 +856,7 @@ msgid ""
 msgstr ""
 
 #. type: Plain text
-#: build/C/man2/bind.2:274
+#: build/C/man2/bind.2:276
 #, no-wrap
 msgid ""
 "#define MY_SOCK_PATH \"/somepath\"\n"
@@ -864,7 +864,7 @@ msgid ""
 msgstr ""
 
 #. type: Plain text
-#: build/C/man2/bind.2:277
+#: build/C/man2/bind.2:279
 #, no-wrap
 msgid ""
 "#define handle_error(msg) \\e\n"
@@ -872,7 +872,7 @@ msgid ""
 msgstr ""
 
 #. type: Plain text
-#: build/C/man2/bind.2:284
+#: build/C/man2/bind.2:286
 #, no-wrap
 msgid ""
 "int\n"
@@ -884,7 +884,7 @@ msgid ""
 msgstr ""
 
 #. type: Plain text
-#: build/C/man2/bind.2:288
+#: build/C/man2/bind.2:290
 #, no-wrap
 msgid ""
 "    sfd = socket(AF_UNIX, SOCK_STREAM, 0);\n"
@@ -893,7 +893,7 @@ msgid ""
 msgstr ""
 
 #. type: Plain text
-#: build/C/man2/bind.2:294
+#: build/C/man2/bind.2:296
 #, no-wrap
 msgid ""
 "    memset(&my_addr, 0, sizeof(struct sockaddr_un));\n"
@@ -904,7 +904,7 @@ msgid ""
 msgstr ""
 
 #. type: Plain text
-#: build/C/man2/bind.2:298
+#: build/C/man2/bind.2:300
 #, no-wrap
 msgid ""
 "    if (bind(sfd, (struct sockaddr *) &my_addr,\n"
@@ -913,7 +913,7 @@ msgid ""
 msgstr ""
 
 #. type: Plain text
-#: build/C/man2/bind.2:301
+#: build/C/man2/bind.2:303
 #, no-wrap
 msgid ""
 "    if (listen(sfd, LISTEN_BACKLOG) == -1)\n"
@@ -921,7 +921,7 @@ msgid ""
 msgstr ""
 
 #. type: Plain text
-#: build/C/man2/bind.2:304
+#: build/C/man2/bind.2:306
 #, no-wrap
 msgid ""
 "    /* Now we can accept incoming connections one\n"
@@ -929,7 +929,7 @@ msgid ""
 msgstr ""
 
 #. type: Plain text
-#: build/C/man2/bind.2:310
+#: build/C/man2/bind.2:312
 #, no-wrap
 msgid ""
 "    peer_addr_size = sizeof(struct sockaddr_un);\n"
@@ -940,13 +940,13 @@ msgid ""
 msgstr ""
 
 #. type: Plain text
-#: build/C/man2/bind.2:312
+#: build/C/man2/bind.2:314
 #, no-wrap
 msgid "    /* Code to deal with incoming connection(s)... */\n"
 msgstr ""
 
 #. type: Plain text
-#: build/C/man2/bind.2:316
+#: build/C/man2/bind.2:318
 #, no-wrap
 msgid ""
 "    /* When no longer required, the socket pathname, MY_SOCK_PATH\n"
@@ -955,7 +955,7 @@ msgid ""
 msgstr ""
 
 #. type: Plain text
-#: build/C/man2/bind.2:330
+#: build/C/man2/bind.2:332
 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), "
@@ -963,24 +963,24 @@ msgid ""
 msgstr ""
 
 #. type: TH
-#: build/C/man3/bindresvport.3:27
+#: build/C/man3/bindresvport.3:30
 #, no-wrap
 msgid "BINDRESVPORT"
 msgstr ""
 
 #. 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 build/C/man2/connect.2:67 build/C/man2/getsockname.2:40 build/C/man2/getsockopt.2:44 build/C/man3/sockatmark.3:25
 #, no-wrap
 msgid "2008-12-03"
 msgstr ""
 
 #. 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 ""
 
 #. 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"
@@ -988,14 +988,14 @@ msgid ""
 msgstr ""
 
 #. 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 ""
 
 #.  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 "
@@ -1003,7 +1003,7 @@ msgid ""
 msgstr ""
 
 #. 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 "
@@ -1011,7 +1011,7 @@ msgid ""
 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 "
@@ -1020,84 +1020,84 @@ msgid ""
 msgstr ""
 
 #. 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."
 msgstr ""
 
 #. 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:"
 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 ""
 
 #. 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 ""
 
 #. 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 ""
 
 #. type: Plain text
-#: build/C/man3/bindresvport.3:92
+#: build/C/man3/bindresvport.3:95
 msgid "Not in POSIX.1-2001.  Present on the BSDs, Solaris, and many other systems."
 msgstr ""
 
 #. type: Plain text
-#: build/C/man3/bindresvport.3:98
+#: build/C/man3/bindresvport.3:101
 msgid ""
 "Unlike some B<bindresvport>()  implementations, the glibc implementation "
 "ignores any value that the caller supplies in I<sin-E<gt>sin_port>."
 msgstr ""
 
 #. type: Plain text
-#: build/C/man3/bindresvport.3:101
+#: build/C/man3/bindresvport.3:104
 msgid "B<bind>(2), B<getsockname>(2)"
 msgstr ""
 
 #. type: TH
-#: build/C/man2/connect.2:65
+#: build/C/man2/connect.2:67
 #, no-wrap
 msgid "CONNECT"
 msgstr ""
 
 #. type: Plain text
-#: build/C/man2/connect.2:68
+#: build/C/man2/connect.2:70
 msgid "connect - initiate a connection on a socket"
 msgstr ""
 
 #. 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 ""
 
 #. 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 ""
 
 #. 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"
@@ -1105,7 +1105,7 @@ msgid ""
 msgstr ""
 
 #. 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> "
@@ -1115,7 +1115,7 @@ msgid ""
 msgstr ""
 
 #. 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 "
@@ -1125,7 +1125,7 @@ msgid ""
 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 "
@@ -1135,21 +1135,21 @@ msgid ""
 msgstr ""
 
 #. 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."
 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."
 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 "
@@ -1157,13 +1157,13 @@ msgid ""
 msgstr ""
 
 #. type: TP
-#: build/C/man2/connect.2:141
+#: build/C/man2/connect.2:143
 #, no-wrap
 msgid "B<EACCES>, B<EPERM>"
 msgstr ""
 
 #. 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 "
@@ -1171,31 +1171,31 @@ msgid ""
 msgstr ""
 
 #. type: Plain text
-#: build/C/man2/connect.2:149
+#: build/C/man2/connect.2:151
 msgid "Local address is already in use."
 msgstr ""
 
 #. 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:151 build/C/man2/socket.2:324 build/C/man2/socketpair.2:75
 #, no-wrap
 msgid "B<EAFNOSUPPORT>"
 msgstr ""
 
 #. type: Plain text
-#: build/C/man2/connect.2:154
+#: build/C/man2/connect.2:156
 msgid ""
 "The passed address didn't have the correct address family in its "
 "I<sa_family> field."
 msgstr ""
 
 #. type: TP
-#: build/C/man2/connect.2:154
+#: build/C/man2/connect.2:156
 #, no-wrap
 msgid "B<EAGAIN>"
 msgstr ""
 
 #. type: Plain text
-#: build/C/man2/connect.2:163
+#: build/C/man2/connect.2:165
 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> "
@@ -1203,47 +1203,47 @@ msgid ""
 msgstr ""
 
 #. type: TP
-#: build/C/man2/connect.2:163
+#: build/C/man2/connect.2:165
 #, no-wrap
 msgid "B<EALREADY>"
 msgstr ""
 
 #. type: Plain text
-#: build/C/man2/connect.2:167
+#: build/C/man2/connect.2:169
 msgid ""
 "The socket is nonblocking and a previous connection attempt has not yet been "
 "completed."
 msgstr ""
 
 #. type: Plain text
-#: build/C/man2/connect.2:170
+#: build/C/man2/connect.2:172
 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:172 build/C/man2/recv.2:412
 #, no-wrap
 msgid "B<ECONNREFUSED>"
 msgstr ""
 
 #. type: Plain text
-#: build/C/man2/connect.2:173
+#: build/C/man2/connect.2:175
 msgid "No-one listening on the remote address."
 msgstr ""
 
 #. type: Plain text
-#: build/C/man2/connect.2:176
+#: build/C/man2/connect.2:178
 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:178
 #, no-wrap
 msgid "B<EINPROGRESS>"
 msgstr ""
 
 #. type: Plain text
-#: build/C/man2/connect.2:201
+#: build/C/man2/connect.2:203
 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 "
@@ -1257,47 +1257,47 @@ 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:209
 msgid ""
 "The system call was interrupted by a signal that was caught; see "
 "B<signal>(7)."
 msgstr ""
 
 #. type: TP
-#: build/C/man2/connect.2:207 build/C/man2/send.2:321
+#: build/C/man2/connect.2:209 build/C/man2/send.2:323
 #, no-wrap
 msgid "B<EISCONN>"
 msgstr ""
 
 #. type: Plain text
-#: build/C/man2/connect.2:210
+#: build/C/man2/connect.2:212
 msgid "The socket is already connected."
 msgstr ""
 
 #. type: TP
-#: build/C/man2/connect.2:210
+#: build/C/man2/connect.2:212
 #, no-wrap
 msgid "B<ENETUNREACH>"
 msgstr ""
 
 #. type: Plain text
-#: build/C/man2/connect.2:213
+#: build/C/man2/connect.2:215
 msgid "Network is unreachable."
 msgstr ""
 
 #. type: Plain text
-#: build/C/man2/connect.2:216
+#: build/C/man2/connect.2:218
 msgid "The file descriptor is not associated with a socket."
 msgstr ""
 
 #. type: TP
-#: build/C/man2/connect.2:216
+#: build/C/man2/connect.2:218
 #, no-wrap
 msgid "B<ETIMEDOUT>"
 msgstr ""
 
 #. type: Plain text
-#: build/C/man2/connect.2:223
+#: build/C/man2/connect.2:225
 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 "
@@ -1317,14 +1317,14 @@ 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:241
 msgid ""
 "SVr4, 4.4BSD, (the B<connect>()  function first appeared in 4.2BSD), "
 "POSIX.1-2001."
 msgstr ""
 
 #. type: Plain text
-#: build/C/man2/connect.2:256
+#: build/C/man2/connect.2:258
 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 "
@@ -1332,42 +1332,42 @@ msgid ""
 msgstr ""
 
 #. type: Plain text
-#: build/C/man2/connect.2:261
+#: build/C/man2/connect.2:263
 msgid "An example of the use of B<connect>()  is shown in B<getaddrinfo>(3)."
 msgstr ""
 
 #. type: Plain text
-#: build/C/man2/connect.2:268
+#: build/C/man2/connect.2:270
 msgid ""
 "B<accept>(2), B<bind>(2), B<getsockname>(2), B<listen>(2), B<socket>(2), "
 "B<path_resolution>(7)"
 msgstr ""
 
 #. type: TH
-#: build/C/man3/getifaddrs.3:33
+#: build/C/man3/getifaddrs.3:36
 #, no-wrap
 msgid "GETIFADDRS"
 msgstr ""
 
 #. type: TH
-#: build/C/man3/getifaddrs.3:33
+#: build/C/man3/getifaddrs.3:36
 #, no-wrap
-msgid "2010-10-06"
+msgid "2012-11-11"
 msgstr ""
 
 #. 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 ""
 
 #. type: Plain text
-#: build/C/man3/getifaddrs.3:36
+#: build/C/man3/getifaddrs.3:39
 msgid "getifaddrs, freeifaddrs - get interface addresses"
 msgstr ""
 
 #. 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"
@@ -1375,19 +1375,19 @@ msgid ""
 msgstr ""
 
 #. 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 ""
 
 #. 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 ""
 
 #. 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 "
@@ -1396,7 +1396,7 @@ msgid ""
 msgstr ""
 
 #. type: Plain text
-#: build/C/man3/getifaddrs.3:74
+#: build/C/man3/getifaddrs.3:77
 #, no-wrap
 msgid ""
 "struct ifaddrs {\n"
@@ -1418,7 +1418,7 @@ msgid ""
 msgstr ""
 
 #. 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."
@@ -1428,12 +1428,12 @@ msgstr ""
 #.  .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 ""
 
 #. 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 "
@@ -1441,22 +1441,23 @@ msgid ""
 msgstr ""
 
 #. 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 ""
 
 #. 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 ""
 
 #. 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> "
@@ -1466,28 +1467,28 @@ msgid ""
 msgstr ""
 
 #. 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 ""
 
 #. 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 ""
 
 #. 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 ""
 
 #. 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), "
@@ -1495,7 +1496,7 @@ msgid ""
 msgstr ""
 
 #. 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 "
@@ -1508,7 +1509,7 @@ msgstr ""
 #.  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 "
@@ -1520,18 +1521,20 @@ msgid ""
 msgstr ""
 
 #. 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 ""
 
 #. 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 "
@@ -1539,7 +1542,7 @@ msgid ""
 msgstr ""
 
 #. type: Plain text
-#: build/C/man3/getifaddrs.3:219
+#: build/C/man3/getifaddrs.3:228
 #, no-wrap
 msgid ""
 "$ B<./a.out>\n"
@@ -1556,13 +1559,13 @@ msgid ""
 msgstr ""
 
 #. type: SS
-#: build/C/man3/getifaddrs.3:221
+#: build/C/man3/getifaddrs.3:230 build/C/man3/if_nameindex.3:120 build/C/man2/recvmmsg.2:206
 #, no-wrap
 msgid "Program source"
 msgstr ""
 
 #. type: Plain text
-#: build/C/man3/getifaddrs.3:231
+#: build/C/man3/getifaddrs.3:240
 #, no-wrap
 msgid ""
 "#include E<lt>arpa/inet.hE<gt>\n"
@@ -1575,7 +1578,7 @@ msgid ""
 msgstr ""
 
 #. type: Plain text
-#: build/C/man3/getifaddrs.3:238
+#: build/C/man3/getifaddrs.3:247
 #, no-wrap
 msgid ""
 "int\n"
@@ -1587,7 +1590,7 @@ msgid ""
 msgstr ""
 
 #. type: Plain text
-#: build/C/man3/getifaddrs.3:243
+#: build/C/man3/getifaddrs.3:252
 #, no-wrap
 msgid ""
 "    if (getifaddrs(&ifaddr) == -1) {\n"
@@ -1597,7 +1600,7 @@ msgid ""
 msgstr ""
 
 #. type: Plain text
-#: build/C/man3/getifaddrs.3:246
+#: build/C/man3/getifaddrs.3:255
 #, no-wrap
 msgid ""
 "    /* Walk through linked list, maintaining head pointer so we\n"
@@ -1605,7 +1608,7 @@ msgid ""
 msgstr ""
 
 #. type: Plain text
-#: build/C/man3/getifaddrs.3:250
+#: build/C/man3/getifaddrs.3:259
 #, no-wrap
 msgid ""
 "    for (ifa = ifaddr; ifa != NULL; ifa = ifa-E<gt>ifa_next) {\n"
@@ -1614,13 +1617,13 @@ msgid ""
 msgstr ""
 
 #. type: Plain text
-#: build/C/man3/getifaddrs.3:252
+#: build/C/man3/getifaddrs.3:261
 #, no-wrap
 msgid "        family = ifa-E<gt>ifa_addr-E<gt>sa_family;\n"
 msgstr ""
 
 #. type: Plain text
-#: build/C/man3/getifaddrs.3:255
+#: build/C/man3/getifaddrs.3:264
 #, no-wrap
 msgid ""
 "        /* Display interface name and family (including symbolic\n"
@@ -1628,7 +1631,7 @@ msgid ""
 msgstr ""
 
 #. type: Plain text
-#: build/C/man3/getifaddrs.3:261
+#: build/C/man3/getifaddrs.3:270
 #, no-wrap
 msgid ""
 "        printf(\"%s\\t  address family: %d%s\\en\",\n"
@@ -1639,13 +1642,13 @@ msgid ""
 msgstr ""
 
 #. type: Plain text
-#: build/C/man3/getifaddrs.3:263
+#: build/C/man3/getifaddrs.3:272
 #, no-wrap
 msgid "        /* For an AF_INET* interface address, display the address */\n"
 msgstr ""
 
 #. type: Plain text
-#: build/C/man3/getifaddrs.3:276
+#: build/C/man3/getifaddrs.3:285
 #, no-wrap
 msgid ""
 "        if (family == AF_INET || family == AF_INET6) {\n"
@@ -1663,7 +1666,7 @@ msgid ""
 msgstr ""
 
 #. type: Plain text
-#: build/C/man3/getifaddrs.3:280
+#: build/C/man3/getifaddrs.3:289
 #, no-wrap
 msgid ""
 "    freeifaddrs(ifaddr);\n"
@@ -1672,23 +1675,23 @@ msgid ""
 msgstr ""
 
 #. type: Plain text
-#: build/C/man3/getifaddrs.3:287
+#: build/C/man3/getifaddrs.3:296
 msgid "B<bind>(2), B<getsockname>(2), B<socket>(2), B<packet>(7), B<ifconfig>(8)"
 msgstr ""
 
 #. type: TH
-#: build/C/man2/getsockname.2:38
+#: build/C/man2/getsockname.2:40
 #, no-wrap
 msgid "GETSOCKNAME"
 msgstr ""
 
 #. type: Plain text
-#: build/C/man2/getsockname.2:41
+#: build/C/man2/getsockname.2:43
 msgid "getsockname - get socket name"
 msgstr ""
 
 #. 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 "
@@ -1696,7 +1699,7 @@ msgid ""
 msgstr ""
 
 #. 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 "
@@ -1705,51 +1708,51 @@ msgid ""
 msgstr ""
 
 #. 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:96
 msgid "The argument I<sockfd> is not a valid descriptor."
 msgstr ""
 
 #. 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 ""
 
 #. 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 ""
 
 #. type: TP
-#: build/C/man2/getsockname.2:86 build/C/man2/send.2:333
+#: build/C/man2/getsockname.2:88 build/C/man3/if_nameindex.3:83 build/C/man2/send.2:335
 #, no-wrap
 msgid "B<ENOBUFS>"
 msgstr ""
 
 #. 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 ""
 
 #.  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."
 msgstr ""
 
 #. type: Plain text
-#: build/C/man2/getsockname.2:110
+#: build/C/man2/getsockname.2:112
 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 "
@@ -1757,25 +1760,25 @@ msgid ""
 msgstr ""
 
 #. type: Plain text
-#: build/C/man2/getsockname.2:117
+#: build/C/man2/getsockname.2:119
 msgid ""
 "B<bind>(2), B<socket>(2), B<getifaddrs>(3), B<ip>(7), B<socket>(7), "
 "B<unix>(7)"
 msgstr ""
 
 #. type: TH
-#: build/C/man2/getsockopt.2:42
+#: build/C/man2/getsockopt.2:44
 #, no-wrap
 msgid "GETSOCKOPT"
 msgstr ""
 
 #. 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 ""
 
 #. 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"
@@ -1785,7 +1788,7 @@ msgid ""
 msgstr ""
 
 #. 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 "
@@ -1793,7 +1796,7 @@ msgid ""
 msgstr ""
 
 #. 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 "
@@ -1805,7 +1808,7 @@ msgid ""
 msgstr ""
 
 #. 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 "
@@ -1817,7 +1820,7 @@ msgid ""
 msgstr ""
 
 #. 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 "
@@ -1827,7 +1830,7 @@ msgid ""
 msgstr ""
 
 #. 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, "
@@ -1835,14 +1838,14 @@ msgid ""
 msgstr ""
 
 #. 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."
 msgstr ""
 
 #. 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 "
@@ -1850,7 +1853,7 @@ msgid ""
 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> "
@@ -1858,13 +1861,13 @@ msgid ""
 msgstr ""
 
 #. type: TP
-#: build/C/man2/getsockopt.2:161
+#: build/C/man2/getsockopt.2:163
 #, no-wrap
 msgid "B<ENOPROTOOPT>"
 msgstr ""
 
 #. 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 ""
 
@@ -1873,12 +1876,12 @@ msgstr ""
 #.  .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 ""
 
 #. 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).  "
@@ -1887,44 +1890,318 @@ msgid ""
 msgstr ""
 
 #. 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."
 msgstr ""
 
 #. type: Plain text
-#: build/C/man2/getsockopt.2:208
+#: build/C/man2/getsockopt.2:210
 msgid ""
 "B<ioctl>(2), B<socket>(2), B<getprotoent>(3), B<protocols>(5), B<socket>(7), "
 "B<tcp>(7), B<unix>(7)"
 msgstr ""
 
 #. type: TH
-#: build/C/man2/listen.2:43
+#: build/C/man3/if_nameindex.3:26
+#, no-wrap
+msgid "IF_NAMEINDEX"
+msgstr ""
+
+#. type: TH
+#: build/C/man3/if_nameindex.3:26
+#, no-wrap
+msgid "2012-11-21"
+msgstr ""
+
+#. type: Plain text
+#: build/C/man3/if_nameindex.3:29
+msgid "if_nameindex, if_freenameindex - get network interface names and indexes"
+msgstr ""
+
+#. type: Plain text
+#: build/C/man3/if_nameindex.3:32 build/C/man3/if_nametoindex.3:32
+#, no-wrap
+msgid "B<#include E<lt>net/if.hE<gt>>\n"
+msgstr ""
+
+#. type: Plain text
+#: build/C/man3/if_nameindex.3:35
+#, no-wrap
+msgid ""
+"B<struct if_nameindex *if_nameindex(void);>\n"
+"B<void if_freenameindex(struct if_nameindex *>I<ptr>B<);>\n"
+msgstr ""
+
+#. type: Plain text
+#: build/C/man3/if_nameindex.3:46
+msgid ""
+"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 ""
+
+#. type: Plain text
+#: build/C/man3/if_nameindex.3:51
+#, no-wrap
+msgid ""
+"    unsigned int if_index; /* Index of interface (1, 2, ...) */\n"
+"    char        *if_name;  /* Null-terminated name (\"eth0\", etc.) */\n"
+msgstr ""
+
+#. type: Plain text
+#: 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 ""
+
+#. type: Plain text
+#: 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 ""
+
+#. type: Plain text
+#: build/C/man3/if_nameindex.3:78
+msgid ""
+"On success, B<if_nameindex>()  returns pointer to the array; on error, a "
+"NULL pointer is returned, and I<errno> is set appropriately."
+msgstr ""
+
+#. type: Plain text
+#: build/C/man3/if_nameindex.3:83
+msgid "B<if_nameindex>()  may fail and set I<errno> if:"
+msgstr ""
+
+#. type: Plain text
+#: build/C/man3/if_nameindex.3:86
+msgid "Insufficient resources available."
+msgstr ""
+
+#. type: Plain text
+#: build/C/man3/if_nameindex.3:97
+msgid ""
+"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 ""
+
+#. type: Plain text
+#: build/C/man3/if_nameindex.3:104
+msgid ""
+"The B<if_nameindex>()  function first appeared in glibc 2.1, but before "
+"glibc 2.3.4, the implementation only supported interfaces with IPv4 "
+"addresses.  Support of interfaces that don't have IPv4 addresses is only "
+"available on kernels that support netlink."
+msgstr ""
+
+#. type: Plain text
+#: build/C/man3/if_nameindex.3:106 build/C/man3/if_nametoindex.3:87
+msgid "RFC\\ 3493, POSIX.1-2001."
+msgstr ""
+
+#. type: Plain text
+#: build/C/man3/if_nameindex.3:108 build/C/man3/if_nametoindex.3:89
+msgid "This function first appeared in BSDi."
+msgstr ""
+
+#. 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:118
+#, no-wrap
+msgid ""
+"$ B<./a.out>I<\n"
+"1: lo\n"
+"2: wlan0\n"
+"3: em1>\n"
+msgstr ""
+
+#. type: Plain text
+#: build/C/man3/if_nameindex.3:126
+#, 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 ""
+
+#. type: Plain text
+#: build/C/man3/if_nameindex.3:131
+#, no-wrap
+msgid ""
+"int\n"
+"main(int argc, char *argv[])\n"
+"{\n"
+"    struct if_nameindex *if_ni, *i;\n"
+msgstr ""
+
+#. type: Plain text
+#: build/C/man3/if_nameindex.3:137
+#, no-wrap
+msgid ""
+"    if_ni = if_nameindex();\n"
+"    if (if_ni == NULL) {\n"
+"        perror(\"if_nameindex\");\n"
+"        exit(EXIT_FAILURE);\n"
+"    }\n"
+msgstr ""
+
+#. type: Plain text
+#: build/C/man3/if_nameindex.3:140
+#, 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 ""
+
+#. type: Plain text
+#: build/C/man3/if_nameindex.3:142
+#, no-wrap
+msgid "    if_freenameindex(if_ni);\n"
+msgstr ""
+
+#. type: Plain text
+#: build/C/man3/if_nameindex.3:145 build/C/man2/select.2:573
+#, no-wrap
+msgid ""
+"    exit(EXIT_SUCCESS);\n"
+"}\n"
+msgstr ""
+
+#. type: Plain text
+#: build/C/man3/if_nameindex.3:153
+msgid ""
+"B<getsockopt>(2), B<setsockopt>(2), B<getifaddrs>(3), B<if_indextoname>(3), "
+"B<if_nametoindex>(3), B<ifconfig>(8)"
+msgstr ""
+
+#. type: TH
+#: build/C/man3/if_nametoindex.3:25
+#, no-wrap
+msgid "IF_NAMETOINDEX"
+msgstr ""
+
+#. type: TH
+#: build/C/man3/if_nametoindex.3:25
+#, no-wrap
+msgid "2012-12-14"
+msgstr ""
+
+#. type: Plain text
+#: build/C/man3/if_nametoindex.3:29
+msgid ""
+"if_nametoindex, if_indextoname - mappings between network interface names "
+"and indexes"
+msgstr ""
+
+#. 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 ""
+
+#. 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 ""
+
+#. 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 ""
+
+#. 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 ""
+
+#. 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 ""
+
+#. 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 ""
+
+#. type: Plain text
+#: build/C/man3/if_nametoindex.3:74
+msgid "B<if_indextoname>()  may fail and set I<errno> if:"
+msgstr ""
+
+#. type: TP
+#: build/C/man3/if_nametoindex.3:74
+#, no-wrap
+msgid "B<ENXIO>"
+msgstr ""
+
+#. 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 ""
+
+#. type: Plain text
+#: build/C/man3/if_nametoindex.3:93
+msgid "B<getifaddrs>(3), B<if_nameindex>(3), B<ifconfig>(8)"
+msgstr ""
+
+#. type: TH
+#: build/C/man2/listen.2:45
 #, no-wrap
 msgid "LISTEN"
 msgstr ""
 
 #. type: TH
-#: build/C/man2/listen.2:43
+#: build/C/man2/listen.2:45
 #, no-wrap
 msgid "2008-11-20"
 msgstr ""
 
 #. type: Plain text
-#: build/C/man2/listen.2:46
+#: build/C/man2/listen.2:48
 msgid "listen - listen for connections on a socket"
 msgstr ""
 
 #. type: Plain text
-#: build/C/man2/listen.2:53
+#: build/C/man2/listen.2:55
 #, no-wrap
 msgid "B<int listen(int >I<sockfd>B<, int >I<backlog>B<);>\n"
 msgstr ""
 
 #. type: Plain text
-#: build/C/man2/listen.2:61
+#: 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 "
@@ -1932,14 +2209,14 @@ msgid ""
 msgstr ""
 
 #. type: Plain text
-#: build/C/man2/listen.2:68
+#: 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 ""
 
 #. type: Plain text
-#: build/C/man2/listen.2:80
+#: 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 "
@@ -1949,82 +2226,82 @@ msgid ""
 msgstr ""
 
 #. type: Plain text
-#: build/C/man2/listen.2:89
+#: build/C/man2/listen.2:91
 msgid "Another socket is already listening on the same port."
 msgstr ""
 
 #. type: Plain text
-#: build/C/man2/listen.2:99 build/C/man2/send.2:352
+#: build/C/man2/listen.2:101 build/C/man2/send.2:354
 msgid "The argument I<sockfd> is not a socket."
 msgstr ""
 
 #. type: Plain text
-#: build/C/man2/listen.2:104
+#: build/C/man2/listen.2:106
 msgid "The socket is not of a type that supports the B<listen>()  operation."
 msgstr ""
 
 #. type: Plain text
-#: build/C/man2/listen.2:109
+#: build/C/man2/listen.2:111
 msgid ""
 "4.4BSD, POSIX.1-2001.  The B<listen>()  function call first appeared in "
 "4.2BSD."
 msgstr ""
 
 #. type: Plain text
-#: build/C/man2/listen.2:111
+#: build/C/man2/listen.2:113
 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
+#: build/C/man2/listen.2:114 build/C/man2/select_tut.2:347
 #, no-wrap
 msgid "1."
 msgstr ""
 
 #. type: Plain text
-#: build/C/man2/listen.2:115
+#: build/C/man2/listen.2:117
 msgid "A socket is created with B<socket>(2)."
 msgstr ""
 
 #. type: TP
-#: build/C/man2/listen.2:115 build/C/man2/select_tut.2:354
+#: build/C/man2/listen.2:117 build/C/man2/select_tut.2:356
 #, no-wrap
 msgid "2."
 msgstr ""
 
 #. type: Plain text
-#: build/C/man2/listen.2:121
+#: build/C/man2/listen.2:123
 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 ""
 
 #. type: TP
-#: build/C/man2/listen.2:121 build/C/man2/select_tut.2:358
+#: build/C/man2/listen.2:123 build/C/man2/select_tut.2:360
 #, no-wrap
 msgid "3."
 msgstr ""
 
 #. type: Plain text
-#: build/C/man2/listen.2:125
+#: build/C/man2/listen.2:127
 msgid ""
 "A willingness to accept incoming connections and a queue limit for incoming "
 "connections are specified with B<listen>()."
 msgstr ""
 
 #. type: TP
-#: build/C/man2/listen.2:125 build/C/man2/select_tut.2:365
+#: build/C/man2/listen.2:127 build/C/man2/select_tut.2:367
 #, no-wrap
 msgid "4."
 msgstr ""
 
 #. type: Plain text
-#: build/C/man2/listen.2:128
+#: build/C/man2/listen.2:130
 msgid "Connections are accepted with B<accept>(2)."
 msgstr ""
 
 #. type: Plain text
-#: build/C/man2/listen.2:151
+#: build/C/man2/listen.2:153
 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 "
@@ -2039,7 +2316,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:166
 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 "
@@ -2048,35 +2325,35 @@ msgid ""
 msgstr ""
 
 #. type: Plain text
-#: build/C/man2/listen.2:173
+#: build/C/man2/listen.2:175
 msgid "B<accept>(2), B<bind>(2), B<connect>(2), B<socket>(2), B<socket>(7)"
 msgstr ""
 
 #. type: TH
-#: build/C/man2/recv.2:39
+#: build/C/man2/recv.2:41
 #, no-wrap
 msgid "RECV"
 msgstr ""
 
 #. type: TH
-#: build/C/man2/recv.2:39
+#: build/C/man2/recv.2:41
 #, no-wrap
-msgid "2011-09-16"
+msgid "2012-12-21"
 msgstr ""
 
 #. 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 ""
 
 #. 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 ""
 
 #. 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 "
@@ -2084,7 +2361,7 @@ msgid ""
 msgstr ""
 
 #. 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 "
@@ -2094,7 +2371,7 @@ msgid ""
 msgstr ""
 
 #. 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 "
@@ -2102,7 +2379,7 @@ msgid ""
 msgstr ""
 
 #. type: Plain text
-#: build/C/man2/recv.2:64
+#: build/C/man2/recv.2:66
 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 "
@@ -2118,7 +2395,7 @@ msgstr ""
 #.  [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:95
 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, "
@@ -2132,7 +2409,7 @@ msgid ""
 msgstr ""
 
 #. type: Plain text
-#: build/C/man2/recv.2:105
+#: build/C/man2/recv.2:107
 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> "
@@ -2140,7 +2417,7 @@ msgid ""
 msgstr ""
 
 #. type: Plain text
-#: build/C/man2/recv.2:111
+#: build/C/man2/recv.2:113
 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 "
@@ -2149,7 +2426,7 @@ msgid ""
 msgstr ""
 
 #. type: Plain text
-#: build/C/man2/recv.2:121
+#: build/C/man2/recv.2:123
 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 "
@@ -2160,27 +2437,27 @@ msgid ""
 msgstr ""
 
 #. type: Plain text
-#: build/C/man2/recv.2:127
+#: build/C/man2/recv.2:129
 msgid ""
 "The B<select>(2)  or B<poll>(2)  call may be used to determine when more "
 "data arrives."
 msgstr ""
 
 #. type: Plain text
-#: build/C/man2/recv.2:133
+#: build/C/man2/recv.2:135
 msgid ""
 "The I<flags> argument to a B<recv>()  call is formed by ORing one or more of "
 "the following values:"
 msgstr ""
 
 #. type: TP
-#: build/C/man2/recv.2:133
+#: build/C/man2/recv.2:135
 #, no-wrap
 msgid "B<MSG_CMSG_CLOEXEC> (B<recvmsg>() only; since Linux 2.6.23)"
 msgstr ""
 
 #. type: Plain text
-#: build/C/man2/recv.2:144
+#: build/C/man2/recv.2:146
 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 "
@@ -2189,13 +2466,13 @@ msgid ""
 msgstr ""
 
 #. type: TP
-#: build/C/man2/recv.2:144 build/C/man2/send.2:186
+#: build/C/man2/recv.2:146 build/C/man2/send.2:188
 #, no-wrap
 msgid "B<MSG_DONTWAIT> (since Linux 2.2)"
 msgstr ""
 
 #. type: Plain text
-#: build/C/man2/recv.2:154
+#: build/C/man2/recv.2:156
 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 "
@@ -2203,13 +2480,13 @@ msgid ""
 msgstr ""
 
 #. type: TP
-#: build/C/man2/recv.2:154
+#: build/C/man2/recv.2:156
 #, no-wrap
 msgid "B<MSG_ERRQUEUE> (since Linux 2.2)"
 msgstr ""
 
 #. type: Plain text
-#: build/C/man2/recv.2:173
+#: build/C/man2/recv.2:175
 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 "
@@ -2221,7 +2498,7 @@ msgid ""
 msgstr ""
 
 #. type: Plain text
-#: build/C/man2/recv.2:185 build/C/man2/recv.2:248
+#: build/C/man2/recv.2:187 build/C/man2/recv.2:250
 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 "
@@ -2231,12 +2508,12 @@ msgid ""
 msgstr ""
 
 #. type: Plain text
-#: build/C/man2/recv.2:189
+#: build/C/man2/recv.2:191
 msgid "The error is supplied in a I<sock_extended_err> structure:"
 msgstr ""
 
 #. type: Plain text
-#: build/C/man2/recv.2:196
+#: build/C/man2/recv.2:198
 #, no-wrap
 msgid ""
 "#define SO_EE_ORIGIN_NONE    0\n"
@@ -2246,7 +2523,7 @@ msgid ""
 msgstr ""
 
 #. type: Plain text
-#: build/C/man2/recv.2:208
+#: build/C/man2/recv.2:210
 #, no-wrap
 msgid ""
 "struct sock_extended_err\n"
@@ -2263,13 +2540,13 @@ msgid ""
 msgstr ""
 
 #. type: Plain text
-#: build/C/man2/recv.2:210
+#: build/C/man2/recv.2:212
 #, no-wrap
 msgid "struct sockaddr *SO_EE_OFFENDER(struct sock_extended_err *);\n"
 msgstr ""
 
 #. type: Plain text
-#: build/C/man2/recv.2:234
+#: build/C/man2/recv.2:236
 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 "
@@ -2282,13 +2559,13 @@ msgid ""
 msgstr ""
 
 #. 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:250 build/C/man2/recv.2:381 build/C/man2/send.2:230
 #, no-wrap
 msgid "B<MSG_OOB>"
 msgstr ""
 
 #. type: Plain text
-#: build/C/man2/recv.2:255
+#: build/C/man2/recv.2:257
 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 "
@@ -2297,13 +2574,13 @@ msgid ""
 msgstr ""
 
 #. type: TP
-#: build/C/man2/recv.2:255
+#: build/C/man2/recv.2:257
 #, no-wrap
 msgid "B<MSG_PEEK>"
 msgstr ""
 
 #. type: Plain text
-#: build/C/man2/recv.2:262
+#: build/C/man2/recv.2:264
 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 "
@@ -2311,33 +2588,34 @@ msgid ""
 msgstr ""
 
 #. type: TP
-#: build/C/man2/recv.2:262
+#: build/C/man2/recv.2:264
 #, no-wrap
 msgid "B<MSG_TRUNC> (since Linux 2.2)"
 msgstr ""
 
 #. type: Plain text
-#: build/C/man2/recv.2:273
+#: build/C/man2/recv.2:275
 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.  Not implemented for UNIX domain (B<unix>(7))  "
+"sockets."
 msgstr ""
 
 #. type: Plain text
-#: build/C/man2/recv.2:276
+#: build/C/man2/recv.2:278
 msgid "For use with Internet stream sockets, see B<tcp>(7)."
 msgstr ""
 
 #. type: TP
-#: build/C/man2/recv.2:276
+#: build/C/man2/recv.2:278
 #, no-wrap
 msgid "B<MSG_WAITALL> (since Linux 2.2)"
 msgstr ""
 
 #. type: Plain text
-#: build/C/man2/recv.2:283
+#: build/C/man2/recv.2:285
 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 "
@@ -2346,7 +2624,7 @@ msgid ""
 msgstr ""
 
 #. type: Plain text
-#: build/C/man2/recv.2:291
+#: build/C/man2/recv.2:293
 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 "
@@ -2354,7 +2632,7 @@ msgid ""
 msgstr ""
 
 #. type: Plain text
-#: build/C/man2/recv.2:298
+#: build/C/man2/recv.2:300
 #, no-wrap
 msgid ""
 "struct iovec {                    /* Scatter/gather array items */\n"
@@ -2364,7 +2642,7 @@ msgid ""
 msgstr ""
 
 #. type: Plain text
-#: build/C/man2/recv.2:308 build/C/man2/send.2:256
+#: build/C/man2/recv.2:310 build/C/man2/send.2:258
 #, no-wrap
 msgid ""
 "struct msghdr {\n"
@@ -2379,7 +2657,7 @@ msgid ""
 msgstr ""
 
 #. type: Plain text
-#: build/C/man2/recv.2:338
+#: build/C/man2/recv.2:340
 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 "
@@ -2393,12 +2671,12 @@ msgid ""
 msgstr ""
 
 #. type: Plain text
-#: build/C/man2/recv.2:340
+#: build/C/man2/recv.2:342
 msgid "The messages are of the form:"
 msgstr ""
 
 #. type: Plain text
-#: build/C/man2/recv.2:350
+#: build/C/man2/recv.2:352
 #, no-wrap
 msgid ""
 "struct cmsghdr {\n"
@@ -2411,83 +2689,83 @@ msgid ""
 msgstr ""
 
 #. type: Plain text
-#: build/C/man2/recv.2:355
+#: build/C/man2/recv.2:357
 msgid "Ancillary data should only be accessed by the macros defined in B<cmsg>(3)."
 msgstr ""
 
 #. type: Plain text
-#: build/C/man2/recv.2:358
+#: build/C/man2/recv.2:360
 msgid ""
 "As an example, Linux uses this ancillary data mechanism to pass extended "
 "errors, IP options, or file descriptors over UNIX domain sockets."
 msgstr ""
 
 #. type: Plain text
-#: build/C/man2/recv.2:366
+#: build/C/man2/recv.2:368
 msgid ""
 "The I<msg_flags> field in the I<msghdr> is set on return of B<recvmsg>().  "
 "It can contain several flags:"
 msgstr ""
 
 #. type: TP
-#: build/C/man2/recv.2:366
+#: build/C/man2/recv.2:368
 #, no-wrap
 msgid "B<MSG_EOR>"
 msgstr ""
 
 #. type: Plain text
-#: build/C/man2/recv.2:371
+#: build/C/man2/recv.2:373
 msgid ""
 "indicates end-of-record; the data returned completed a record (generally "
 "used with sockets of type B<SOCK_SEQPACKET>)."
 msgstr ""
 
 #. type: TP
-#: build/C/man2/recv.2:371
+#: build/C/man2/recv.2:373
 #, no-wrap
 msgid "B<MSG_TRUNC>"
 msgstr ""
 
 #. type: Plain text
-#: build/C/man2/recv.2:375
+#: build/C/man2/recv.2:377
 msgid ""
 "indicates that the trailing portion of a datagram was discarded because the "
 "datagram was larger than the buffer supplied."
 msgstr ""
 
 #. type: TP
-#: build/C/man2/recv.2:375
+#: build/C/man2/recv.2:377
 #, no-wrap
 msgid "B<MSG_CTRUNC>"
 msgstr ""
 
 #. type: Plain text
-#: build/C/man2/recv.2:379
+#: build/C/man2/recv.2:381
 msgid ""
 "indicates that some control data were discarded due to lack of space in the "
 "buffer for ancillary data."
 msgstr ""
 
 #. type: Plain text
-#: build/C/man2/recv.2:382
+#: build/C/man2/recv.2:384
 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:384
 #, no-wrap
 msgid "B<MSG_ERRQUEUE>"
 msgstr ""
 
 #. type: Plain text
-#: build/C/man2/recv.2:386
+#: build/C/man2/recv.2:388
 msgid ""
 "indicates that no data was received but an extended error from the socket "
 "error queue."
 msgstr ""
 
 #. type: Plain text
-#: build/C/man2/recv.2:391
+#: build/C/man2/recv.2:393
 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 "
@@ -2495,7 +2773,7 @@ msgid ""
 msgstr ""
 
 #. type: Plain text
-#: build/C/man2/recv.2:396
+#: build/C/man2/recv.2:398
 msgid ""
 "These are some standard errors generated by the socket layer.  Additional "
 "errors may be generated and returned from the underlying protocol modules; "
@@ -2504,7 +2782,7 @@ msgstr ""
 
 #.  Actually EAGAIN on Linux
 #. type: Plain text
-#: build/C/man2/recv.2:405
+#: build/C/man2/recv.2:407
 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 "
@@ -2514,71 +2792,71 @@ msgid ""
 msgstr ""
 
 #. type: Plain text
-#: build/C/man2/recv.2:410
+#: build/C/man2/recv.2:412
 msgid "The argument I<sockfd> is an invalid descriptor."
 msgstr ""
 
 #. type: Plain text
-#: build/C/man2/recv.2:414
+#: build/C/man2/recv.2:416
 msgid ""
 "A remote host refused to allow the network connection (typically because it "
 "is not running the requested service)."
 msgstr ""
 
 #. type: Plain text
-#: build/C/man2/recv.2:418
+#: build/C/man2/recv.2:420
 msgid "The receive buffer pointer(s) point outside the process's address space."
 msgstr ""
 
 #. type: Plain text
-#: build/C/man2/recv.2:423
+#: build/C/man2/recv.2:425
 msgid ""
 "The receive was interrupted by delivery of a signal before any data were "
 "available; see B<signal>(7)."
 msgstr ""
 
 #. type: Plain text
-#: build/C/man2/recv.2:427 build/C/man2/send.2:321
+#: build/C/man2/recv.2:429 build/C/man2/send.2:323
 msgid "Invalid argument passed."
 msgstr ""
 
 #. type: Plain text
-#: build/C/man2/recv.2:431
+#: build/C/man2/recv.2:433
 msgid "Could not allocate memory for B<recvmsg>()."
 msgstr ""
 
 #. type: TP
-#: build/C/man2/recv.2:431 build/C/man2/send.2:344
+#: build/C/man2/recv.2:433 build/C/man2/send.2:346
 #, no-wrap
 msgid "B<ENOTCONN>"
 msgstr ""
 
 #. type: Plain text
-#: build/C/man2/recv.2:438
+#: build/C/man2/recv.2:440
 msgid ""
 "The socket is associated with a connection-oriented protocol and has not "
 "been connected (see B<connect>(2)  and B<accept>(2))."
 msgstr ""
 
 #. type: Plain text
-#: build/C/man2/recv.2:443
+#: build/C/man2/recv.2:445
 msgid "The argument I<sockfd> does not refer to a socket."
 msgstr ""
 
 #. type: Plain text
-#: build/C/man2/recv.2:446
+#: build/C/man2/recv.2:448
 msgid "4.4BSD (these function calls first appeared in 4.2BSD), POSIX.1-2001."
 msgstr ""
 
 #. type: Plain text
-#: build/C/man2/recv.2:453
+#: build/C/man2/recv.2:455
 msgid ""
 "POSIX.1-2001 only describes the B<MSG_OOB>, B<MSG_PEEK>, and B<MSG_WAITALL> "
 "flags."
 msgstr ""
 
 #. type: Plain text
-#: build/C/man2/recv.2:469
+#: build/C/man2/recv.2:471
 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 "
@@ -2595,7 +2873,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:407
+#: build/C/man2/recv.2:485 build/C/man2/send.2:409
 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 "
@@ -2603,43 +2881,43 @@ msgid ""
 msgstr ""
 
 #. type: Plain text
-#: build/C/man2/recv.2:488
+#: build/C/man2/recv.2:490
 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 ""
 
 #. type: Plain text
-#: build/C/man2/recv.2:493
+#: build/C/man2/recv.2:495
 msgid "An example of the use of B<recvfrom>()  is shown in B<getaddrinfo>(3)."
 msgstr ""
 
 #. type: Plain text
-#: build/C/man2/recv.2:504
+#: build/C/man2/recv.2:506
 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)"
 msgstr ""
 
 #. type: TH
-#: build/C/man2/recvmmsg.2:26
+#: build/C/man2/recvmmsg.2:31
 #, no-wrap
 msgid "RECVMMSG"
 msgstr ""
 
 #. type: TH
-#: build/C/man2/recvmmsg.2:26 build/C/man2/select.2:38
+#: build/C/man2/recvmmsg.2:31
 #, no-wrap
-msgid "2012-05-02"
+msgid "2012-12-24"
 msgstr ""
 
 #. type: Plain text
-#: build/C/man2/recvmmsg.2:29
+#: build/C/man2/recvmmsg.2:34
 msgid "recvmmsg - receive multiple messages on a socket"
 msgstr ""
 
 #. 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"
@@ -2647,7 +2925,7 @@ msgid ""
 msgstr ""
 
 #. 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 "
@@ -2655,13 +2933,13 @@ msgid ""
 msgstr ""
 
 #. 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 ""
 
 #. 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 "
@@ -2671,26 +2949,26 @@ msgid ""
 msgstr ""
 
 #. 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 ""
 
 #. 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 ""
 
 #. 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 ""
 
 #. type: Plain text
-#: build/C/man2/recvmmsg.2:75
+#: build/C/man2/recvmmsg.2:80
 #, no-wrap
 msgid ""
 "struct mmsghdr {\n"
@@ -2700,7 +2978,7 @@ msgid ""
 msgstr ""
 
 #. 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 "
@@ -2709,25 +2987,25 @@ msgid ""
 msgstr ""
 
 #. 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 ""
 
 #. type: TP
-#: build/C/man2/recvmmsg.2:97
+#: build/C/man2/recvmmsg.2:102
 #, no-wrap
-msgid "B<MSG_WAITFORONE>"
+msgid "B<MSG_WAITFORONE> (since Linux 2.6.34)"
 msgstr ""
 
 #. 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 ""
 
 #. type: Plain text
-#: build/C/man2/recvmmsg.2:118
+#: build/C/man2/recvmmsg.2:123
 msgid ""
 "The I<timeout> argument points to a I<struct timespec> (see "
 "B<clock_gettime>(2))  defining a timeout (seconds plus nanoseconds) for the "
@@ -2738,7 +3016,7 @@ msgid ""
 msgstr ""
 
 #. type: Plain text
-#: build/C/man2/recvmmsg.2:129
+#: build/C/man2/recvmmsg.2:134
 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 "
@@ -2747,7 +3025,7 @@ msgid ""
 msgstr ""
 
 #. type: Plain text
-#: build/C/man2/recvmmsg.2:144
+#: build/C/man2/recvmmsg.2:149
 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 "
@@ -2757,7 +3035,7 @@ msgid ""
 msgstr ""
 
 #. type: Plain text
-#: build/C/man2/recvmmsg.2:152
+#: build/C/man2/recvmmsg.2:157
 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 "
@@ -2765,31 +3043,173 @@ msgid ""
 msgstr ""
 
 #. type: Plain text
-#: build/C/man2/recvmmsg.2:156
+#: build/C/man2/recvmmsg.2:161
 msgid ""
 "Errors are as for B<recvmsg>(2).  In addition, the following error can "
 "occur:"
 msgstr ""
 
 #. type: Plain text
-#: build/C/man2/recvmmsg.2:160
-msgid "I<timeout> is invalid."
+#: build/C/man2/recvmmsg.2:165
+msgid "I<timeout> is invalid."
+msgstr ""
+
+#. type: Plain text
+#: build/C/man2/recvmmsg.2:170
+msgid ""
+"The B<recvmmsg>()  system call was added in Linux 2.6.33.  Support in glibc "
+"was added in version 2.12."
+msgstr ""
+
+#. type: Plain text
+#: build/C/man2/recvmmsg.2:173
+msgid "B<recvmmsg>()  is Linux-specific."
+msgstr ""
+
+#. type: Plain text
+#: build/C/man2/recvmmsg.2:181
+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 ""
+
+#. type: Plain text
+#: build/C/man2/recvmmsg.2:184
+msgid ""
+"The following snippet periodically generates UDP datagrams containing a "
+"random number:"
+msgstr ""
+
+#. type: Plain text
+#: build/C/man2/recvmmsg.2:189
+#, 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 ""
+
+#. type: Plain text
+#: build/C/man2/recvmmsg.2:194
+msgid ""
+"These datagrams are read by the example application, which can give the "
+"following output:"
+msgstr ""
+
+#. type: Plain text
+#: build/C/man2/recvmmsg.2:204
+#, 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 ""
+
+#. type: Plain text
+#: build/C/man2/recvmmsg.2:215
+#, 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 ""
+
+#. type: Plain text
+#: build/C/man2/recvmmsg.2:228
+#, 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 ""
+
+#. type: Plain text
+#: build/C/man2/recvmmsg.2:234 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 ""
+
+#. type: Plain text
+#: build/C/man2/recvmmsg.2:242
+#, 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 (bind(sockfd, (struct sockaddr *) &sa, sizeof(sa)) == -1) {\n"
+"        perror(\"bind()\");\n"
+"        exit(EXIT_FAILURE);\n"
+"    }\n"
+msgstr ""
+
+#. type: Plain text
+#: build/C/man2/recvmmsg.2:250
+#, 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 ""
+
+#. type: Plain text
+#: build/C/man2/recvmmsg.2:253
+#, no-wrap
+msgid ""
+"    timeout.tv_sec = TIMEOUT;\n"
+"    timeout.tv_nsec = 0;\n"
 msgstr ""
 
 #. type: Plain text
-#: build/C/man2/recvmmsg.2:165
+#: build/C/man2/recvmmsg.2:259
+#, no-wrap
 msgid ""
-"The B<recvmmsg>()  system call was added in Linux 2.6.32.  Support in glibc "
-"was added in version 2.12."
+"    retval = recvmmsg(sockfd, msgs, VLEN, 0, &timeout);\n"
+"    if (retval == -1) {\n"
+"        perror(\"recvmmsg()\");\n"
+"        exit(EXIT_FAILURE);\n"
+"    }\n"
 msgstr ""
 
 #. type: Plain text
-#: build/C/man2/recvmmsg.2:168
-msgid "B<recvmmsg>()  is Linux-specific."
+#: build/C/man2/recvmmsg.2:267
+#, 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 ""
 
 #. type: Plain text
-#: build/C/man2/recvmmsg.2:175
+#: build/C/man2/recvmmsg.2:275
 msgid ""
 "B<clock_gettime>(2), B<recvmsg>(2), B<sendmmsg>(2), B<sendmsg>(2), "
 "B<socket>(2), B<socket>(7)"
@@ -2801,39 +3221,45 @@ msgstr ""
 msgid "SELECT"
 msgstr ""
 
+#. type: TH
+#: build/C/man2/select.2:38
+#, no-wrap
+msgid "2012-08-17"
+msgstr ""
+
 #. 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 ""
 
 #. 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 ""
 
 #. 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.2:47 build/C/man2/select.2:68 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 ""
 
 #. 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 ""
 
 #. 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 ""
 
 #. 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 ""
@@ -2848,25 +3274,25 @@ msgid ""
 msgstr ""
 
 #. 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 ""
 
 #. 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 ""
 
 #. 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 ""
 
 #. 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 ""
@@ -2883,12 +3309,12 @@ msgid ""
 msgstr ""
 
 #. 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 ""
 
 #. 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"
@@ -2907,8 +3333,8 @@ msgstr ""
 #. type: Plain text
 #: build/C/man2/select.2:98
 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 ""
 
 #. type: TP
@@ -3032,9 +3458,9 @@ msgstr ""
 #: build/C/man2/select.2:211
 #, 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 ""
 
 #. type: Plain text
@@ -3229,19 +3655,39 @@ msgstr ""
 #. type: SS
 #: build/C/man2/select.2:414
 #, no-wrap
-msgid "Linux Notes"
+msgid "Multithreaded applications"
+msgstr ""
+
+#. type: Plain text
+#: build/C/man2/select.2:430
+msgid ""
+"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 ""
+
+#. type: SS
+#: build/C/man2/select.2:430
+#, no-wrap
+msgid "Linux notes"
 msgstr ""
 
 #. type: Plain text
-#: build/C/man2/select.2:422
+#: build/C/man2/select.2:438
 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 gibc wrapper function."
+"has somewhat different behavior from the glibc wrapper function."
 msgstr ""
 
 #. type: Plain text
-#: build/C/man2/select.2:437
+#: build/C/man2/select.2:453
 msgid ""
 "The Linux B<pselect6>()  system call modifies its I<timeout> argument.  "
 "However, the glibc wrapper function hides this behavior by using a local "
@@ -3251,14 +3697,14 @@ msgid ""
 msgstr ""
 
 #. type: Plain text
-#: build/C/man2/select.2:443
+#: build/C/man2/select.2:459
 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:"
+"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 ""
 
 #. type: Plain text
-#: build/C/man2/select.2:451
+#: build/C/man2/select.2:467
 #, no-wrap
 msgid ""
 "struct {\n"
@@ -3269,7 +3715,7 @@ msgid ""
 msgstr ""
 
 #. type: Plain text
-#: build/C/man2/select.2:458
+#: build/C/man2/select.2:474
 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 "
@@ -3277,14 +3723,14 @@ msgid ""
 msgstr ""
 
 #. type: Plain text
-#: build/C/man2/select.2:464
+#: build/C/man2/select.2:480
 msgid ""
 "Glibc 2.0 provided a version of B<pselect>()  that did not take a I<sigmask> "
 "argument."
 msgstr ""
 
 #. type: Plain text
-#: build/C/man2/select.2:477
+#: build/C/man2/select.2:493
 msgid ""
 "Starting with version 2.1, glibc provided an emulation of B<pselect>()  that "
 "was implemented using B<sigprocmask>(2)  and B<select>().  This "
@@ -3294,7 +3740,7 @@ msgid ""
 msgstr ""
 
 #. type: Plain text
-#: build/C/man2/select.2:490
+#: build/C/man2/select.2:506
 msgid ""
 "On systems that lack B<pselect>(), reliable (and more portable) signal "
 "trapping can be achieved using the self-pipe trick.  In this technique, a "
@@ -3308,7 +3754,7 @@ msgstr ""
 #.  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:506
+#: build/C/man2/select.2:522
 msgid ""
 "Under Linux, B<select>()  may report a socket file descriptor as \"ready for "
 "reading\", while nevertheless a subsequent read blocks.  This could for "
@@ -3319,7 +3765,7 @@ msgid ""
 msgstr ""
 
 #. type: Plain text
-#: build/C/man2/select.2:521
+#: build/C/man2/select.2:537
 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 "
@@ -3330,7 +3776,7 @@ msgid ""
 msgstr ""
 
 #. type: Plain text
-#: build/C/man2/select.2:528
+#: build/C/man2/select.2:544
 #, no-wrap
 msgid ""
 "#include E<lt>stdio.hE<gt>\n"
@@ -3341,7 +3787,7 @@ msgid ""
 msgstr ""
 
 #. type: Plain text
-#: build/C/man2/select.2:535
+#: build/C/man2/select.2:551
 #, no-wrap
 msgid ""
 "int\n"
@@ -3353,7 +3799,7 @@ msgid ""
 msgstr ""
 
 #. type: Plain text
-#: build/C/man2/select.2:539
+#: build/C/man2/select.2:555
 #, no-wrap
 msgid ""
 "    /* Watch stdin (fd 0) to see when it has input. */\n"
@@ -3362,7 +3808,7 @@ msgid ""
 msgstr ""
 
 #. type: Plain text
-#: build/C/man2/select.2:543
+#: build/C/man2/select.2:559
 #, no-wrap
 msgid ""
 "    /* Wait up to five seconds. */\n"
@@ -3371,7 +3817,7 @@ msgid ""
 msgstr ""
 
 #. type: Plain text
-#: build/C/man2/select.2:546
+#: build/C/man2/select.2:562
 #, no-wrap
 msgid ""
 "    retval = select(1, &rfds, NULL, NULL, &tv);\n"
@@ -3379,7 +3825,7 @@ msgid ""
 msgstr ""
 
 #. type: Plain text
-#: build/C/man2/select.2:554
+#: build/C/man2/select.2:570
 #, no-wrap
 msgid ""
 "    if (retval == -1)\n"
@@ -3392,40 +3838,31 @@ msgid ""
 msgstr ""
 
 #. type: Plain text
-#: build/C/man2/select.2:557
-#, no-wrap
+#: build/C/man2/select.2:585
 msgid ""
-"    exit(EXIT_SUCCESS);\n"
-"}\n"
+"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 ""
 
 #. type: Plain text
-#: build/C/man2/select.2:561
+#: build/C/man2/select.2:588
 msgid "For a tutorial with discussion and examples, see B<select_tut>(2)."
 msgstr ""
 
-#. type: Plain text
-#: build/C/man2/select.2:573
-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 ""
-
 #. type: TH
-#: build/C/man2/select_tut.2:30
+#: build/C/man2/select_tut.2:32
 #, no-wrap
 msgid "SELECT_TUT"
 msgstr ""
 
 #. type: TH
-#: build/C/man2/select_tut.2:30
+#: build/C/man2/select_tut.2:32
 #, no-wrap
-msgid "2010-06-10"
+msgid "2012-08-03"
 msgstr ""
 
 #. 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 "
@@ -3434,7 +3871,7 @@ msgid ""
 msgstr ""
 
 #. 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 "
@@ -3445,7 +3882,7 @@ msgid ""
 msgstr ""
 
 #. 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 "
@@ -3454,7 +3891,7 @@ msgid ""
 msgstr ""
 
 #. 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 "
@@ -3469,19 +3906,19 @@ msgid ""
 msgstr ""
 
 #. 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 ""
 
 #. 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 "
@@ -3490,13 +3927,13 @@ msgid ""
 msgstr ""
 
 #. type: TP
-#: build/C/man2/select_tut.2:116
+#: build/C/man2/select_tut.2:118
 #, no-wrap
 msgid "I<writefds>"
 msgstr ""
 
 #. 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 "
@@ -3505,13 +3942,13 @@ msgid ""
 msgstr ""
 
 #. type: TP
-#: build/C/man2/select_tut.2:125
+#: build/C/man2/select_tut.2:127
 #, no-wrap
 msgid "I<exceptfds>"
 msgstr ""
 
 #. 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> "
@@ -3524,13 +3961,13 @@ msgid ""
 msgstr ""
 
 #. type: TP
-#: build/C/man2/select_tut.2:147
+#: build/C/man2/select_tut.2:149
 #, no-wrap
 msgid "I<nfds>"
 msgstr ""
 
 #. 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 "
@@ -3539,13 +3976,13 @@ msgid ""
 msgstr ""
 
 #. type: TP
-#: build/C/man2/select_tut.2:154
+#: build/C/man2/select_tut.2:156
 #, no-wrap
 msgid "I<utimeout>"
 msgstr ""
 
 #. 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 "
@@ -3556,7 +3993,7 @@ msgid ""
 msgstr ""
 
 #. type: Plain text
-#: build/C/man2/select_tut.2:174
+#: build/C/man2/select_tut.2:176
 #, no-wrap
 msgid ""
 "struct timeval {\n"
@@ -3566,20 +4003,20 @@ msgid ""
 msgstr ""
 
 #. type: TP
-#: build/C/man2/select_tut.2:176
+#: build/C/man2/select_tut.2:178
 #, no-wrap
 msgid "I<ntimeout>"
 msgstr ""
 
 #. 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:"
 msgstr ""
 
 #. type: Plain text
-#: build/C/man2/select_tut.2:192
+#: build/C/man2/select_tut.2:194
 #, no-wrap
 msgid ""
 "struct timespec {\n"
@@ -3589,13 +4026,13 @@ msgid ""
 msgstr ""
 
 #. type: TP
-#: build/C/man2/select_tut.2:194
+#: build/C/man2/select_tut.2:196
 #, no-wrap
 msgid "I<sigmask>"
 msgstr ""
 
 #. 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 "
@@ -3606,13 +4043,13 @@ msgid ""
 msgstr ""
 
 #. 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 "
@@ -3635,13 +4072,13 @@ msgid ""
 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 ""
 
 #. type: Plain text
-#: build/C/man2/select_tut.2:264
+#: build/C/man2/select_tut.2:266
 #, no-wrap
 msgid ""
 "static void\n"
@@ -3652,7 +4089,7 @@ msgid ""
 msgstr ""
 
 #. type: Plain text
-#: build/C/man2/select_tut.2:272
+#: build/C/man2/select_tut.2:274
 #, no-wrap
 msgid ""
 "int\n"
@@ -3665,7 +4102,7 @@ msgid ""
 msgstr ""
 
 #. type: Plain text
-#: build/C/man2/select_tut.2:279
+#: build/C/man2/select_tut.2:281
 #, no-wrap
 msgid ""
 "    sigemptyset(&sigmask);\n"
@@ -3677,7 +4114,7 @@ msgid ""
 msgstr ""
 
 #. 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"
@@ -3690,13 +4127,13 @@ msgid ""
 msgstr ""
 
 #. 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 ""
 
 #. type: Plain text
-#: build/C/man2/select_tut.2:293
+#: build/C/man2/select_tut.2:295
 #, no-wrap
 msgid ""
 "    for (;;) {          /* main loop */\n"
@@ -3705,7 +4142,7 @@ msgid ""
 msgstr ""
 
 #. 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"
@@ -3716,7 +4153,7 @@ msgid ""
 msgstr ""
 
 #. type: Plain text
-#: build/C/man2/select_tut.2:302
+#: build/C/man2/select_tut.2:304
 #, no-wrap
 msgid ""
 "        if (got_SIGCHLD) {\n"
@@ -3724,7 +4161,7 @@ msgid ""
 msgstr ""
 
 #. 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"
@@ -3733,7 +4170,7 @@ msgid ""
 msgstr ""
 
 #. 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"
@@ -3742,13 +4179,13 @@ msgid ""
 msgstr ""
 
 #. 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 "
@@ -3763,13 +4200,13 @@ msgid ""
 msgstr ""
 
 #. 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 ""
 
 #. 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 "
@@ -3781,7 +4218,7 @@ msgid ""
 msgstr ""
 
 #. 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 "
@@ -3789,14 +4226,14 @@ msgid ""
 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."
 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 "
@@ -3804,20 +4241,20 @@ msgid ""
 msgstr ""
 
 #. 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 ""
 
 #. type: TP
-#: build/C/man2/select_tut.2:371
+#: build/C/man2/select_tut.2:373
 #, no-wrap
 msgid "5."
 msgstr ""
 
 #. 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 "
@@ -3828,13 +4265,13 @@ msgid ""
 msgstr ""
 
 #. type: TP
-#: build/C/man2/select_tut.2:386
+#: build/C/man2/select_tut.2:388
 #, no-wrap
 msgid "6."
 msgstr ""
 
 #. 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 "
@@ -3844,14 +4281,14 @@ msgid ""
 msgstr ""
 
 #. type: TP
-#: build/C/man2/select_tut.2:394
+#: build/C/man2/select_tut.2:396
 #, no-wrap
 msgid "7."
 msgstr ""
 
 #.  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 "
@@ -3862,26 +4299,26 @@ msgid ""
 msgstr ""
 
 #. type: TP
-#: build/C/man2/select_tut.2:416
+#: build/C/man2/select_tut.2:418
 #, no-wrap
 msgid "8."
 msgstr ""
 
 #. 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 ""
 
 #. type: TP
-#: build/C/man2/select_tut.2:425
+#: build/C/man2/select_tut.2:427
 #, no-wrap
 msgid "9."
 msgstr ""
 
 #. 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 "
@@ -3892,13 +4329,13 @@ msgid ""
 msgstr ""
 
 #. type: TP
-#: build/C/man2/select_tut.2:441
+#: build/C/man2/select_tut.2:443
 #, no-wrap
 msgid "10."
 msgstr ""
 
 #. 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 "
@@ -3906,7 +4343,7 @@ msgid ""
 msgstr ""
 
 #. type: TP
-#: build/C/man2/select_tut.2:448
+#: build/C/man2/select_tut.2:450
 #, no-wrap
 msgid "11."
 msgstr ""
@@ -3924,27 +4361,27 @@ msgstr ""
 #.  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 ""
 
 #. 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 ""
 
 #. 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:"
 msgstr ""
 
 #. type: Plain text
-#: build/C/man2/select_tut.2:480
+#: build/C/man2/select_tut.2:482
 #, no-wrap
 msgid ""
 "    struct timeval tv;\n"
@@ -3954,26 +4391,26 @@ msgid ""
 msgstr ""
 
 #. type: Plain text
-#: build/C/man2/select_tut.2:483
+#: build/C/man2/select_tut.2:485
 msgid "This is only guaranteed to work on UNIX systems, however."
 msgstr ""
 
 #. 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 ""
 
 #. 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 ""
 
 #. 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 "
@@ -3982,7 +4419,7 @@ msgid ""
 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 "
@@ -3991,7 +4428,7 @@ msgid ""
 msgstr ""
 
 #. 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 "
@@ -4000,7 +4437,7 @@ msgid ""
 msgstr ""
 
 #. 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 "
@@ -4008,7 +4445,7 @@ msgid ""
 msgstr ""
 
 #. 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 "
@@ -4016,7 +4453,7 @@ msgid ""
 msgstr ""
 
 #. 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"
@@ -4033,13 +4470,13 @@ msgid ""
 msgstr ""
 
 #. 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 ""
 
 #. type: Plain text
-#: build/C/man2/select_tut.2:550
+#: build/C/man2/select_tut.2:552
 #, no-wrap
 msgid ""
 "#undef max\n"
@@ -4047,7 +4484,7 @@ msgid ""
 msgstr ""
 
 #. type: Plain text
-#: build/C/man2/select_tut.2:557
+#: build/C/man2/select_tut.2:559
 #, no-wrap
 msgid ""
 "static int\n"
@@ -4059,7 +4496,7 @@ msgid ""
 msgstr ""
 
 #. type: Plain text
-#: build/C/man2/select_tut.2:581
+#: build/C/man2/select_tut.2:583
 #, no-wrap
 msgid ""
 "    if ((s = socket(AF_INET, SOCK_STREAM, 0)) == -1) {\n"
@@ -4068,7 +4505,7 @@ msgid ""
 "    }\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"
@@ -4088,7 +4525,7 @@ msgid ""
 msgstr ""
 
 #. type: Plain text
-#: build/C/man2/select_tut.2:587
+#: build/C/man2/select_tut.2:589
 #, no-wrap
 msgid ""
 "static int\n"
@@ -4099,7 +4536,7 @@ msgid ""
 msgstr ""
 
 #. type: Plain text
-#: build/C/man2/select_tut.2:593
+#: build/C/man2/select_tut.2:595
 #, no-wrap
 msgid ""
 "    if ((s = socket(AF_INET, SOCK_STREAM, 0)) == -1) {\n"
@@ -4110,7 +4547,7 @@ msgid ""
 msgstr ""
 
 #. type: Plain text
-#: build/C/man2/select_tut.2:597
+#: build/C/man2/select_tut.2:599
 #, no-wrap
 msgid ""
 "    memset(&a, 0, sizeof(a));\n"
@@ -4119,7 +4556,7 @@ msgid ""
 msgstr ""
 
 #. type: Plain text
-#: build/C/man2/select_tut.2:603
+#: build/C/man2/select_tut.2:605
 #, no-wrap
 msgid ""
 "    if (!inet_aton(address, (struct in_addr *) &a.sin_addr.s_addr)) {\n"
@@ -4130,7 +4567,7 @@ msgid ""
 msgstr ""
 
 #. type: Plain text
-#: build/C/man2/select_tut.2:612
+#: build/C/man2/select_tut.2:614
 #, no-wrap
 msgid ""
 "    if (connect(s, (struct sockaddr *) &a, sizeof(a)) == -1) {\n"
@@ -4144,7 +4581,7 @@ msgid ""
 msgstr ""
 
 #. type: Plain text
-#: build/C/man2/select_tut.2:620
+#: build/C/man2/select_tut.2:622
 #, no-wrap
 msgid ""
 "#define SHUT_FD1 do {                                \\e\n"
@@ -4157,7 +4594,7 @@ msgid ""
 msgstr ""
 
 #. type: Plain text
-#: build/C/man2/select_tut.2:628
+#: build/C/man2/select_tut.2:630
 #, no-wrap
 msgid ""
 "#define SHUT_FD2 do {                                \\e\n"
@@ -4170,13 +4607,13 @@ msgid ""
 msgstr ""
 
 #. type: Plain text
-#: build/C/man2/select_tut.2:630
+#: build/C/man2/select_tut.2:632
 #, no-wrap
 msgid "#define BUF_SIZE 1024\n"
 msgstr ""
 
 #. type: Plain text
-#: build/C/man2/select_tut.2:639
+#: build/C/man2/select_tut.2:641
 #, no-wrap
 msgid ""
 "int\n"
@@ -4190,7 +4627,7 @@ msgid ""
 msgstr ""
 
 #. type: Plain text
-#: build/C/man2/select_tut.2:645
+#: build/C/man2/select_tut.2:647
 #, no-wrap
 msgid ""
 "    if (argc != 4) {\n"
@@ -4202,19 +4639,19 @@ msgid ""
 msgstr ""
 
 #. type: Plain text
-#: build/C/man2/select_tut.2:647
+#: build/C/man2/select_tut.2:649
 #, no-wrap
 msgid "    signal(SIGPIPE, SIG_IGN);\n"
 msgstr ""
 
 #. type: Plain text
-#: build/C/man2/select_tut.2:649
+#: build/C/man2/select_tut.2:651
 #, no-wrap
 msgid "    forward_port = atoi(argv[2]);\n"
 msgstr ""
 
 #. type: Plain text
-#: build/C/man2/select_tut.2:653
+#: build/C/man2/select_tut.2:655
 #, no-wrap
 msgid ""
 "    h = listen_socket(atoi(argv[1]));\n"
@@ -4223,7 +4660,7 @@ msgid ""
 msgstr ""
 
 #. type: Plain text
-#: build/C/man2/select_tut.2:657
+#: build/C/man2/select_tut.2:659
 #, no-wrap
 msgid ""
 "    for (;;) {\n"
@@ -4232,7 +4669,7 @@ msgid ""
 msgstr ""
 
 #. type: Plain text
-#: build/C/man2/select_tut.2:687
+#: build/C/man2/select_tut.2:689
 #, no-wrap
 msgid ""
 "        FD_ZERO(&rd);\n"
@@ -4267,13 +4704,13 @@ msgid ""
 msgstr ""
 
 #. type: Plain text
-#: build/C/man2/select_tut.2:689
+#: build/C/man2/select_tut.2:691
 #, no-wrap
 msgid "        r = select(nfds + 1, &rd, &wr, &er, NULL);\n"
 msgstr ""
 
 #. type: Plain text
-#: build/C/man2/select_tut.2:692
+#: build/C/man2/select_tut.2:694
 #, no-wrap
 msgid ""
 "        if (r == -1 && errno == EINTR)\n"
@@ -4281,7 +4718,7 @@ msgid ""
 msgstr ""
 
 #. type: Plain text
-#: build/C/man2/select_tut.2:697
+#: build/C/man2/select_tut.2:699
 #, no-wrap
 msgid ""
 "        if (r == -1) {\n"
@@ -4291,7 +4728,7 @@ msgid ""
 msgstr ""
 
 #. type: Plain text
-#: build/C/man2/select_tut.2:701
+#: build/C/man2/select_tut.2:703
 #, no-wrap
 msgid ""
 "        if (FD_ISSET(h, &rd)) {\n"
@@ -4300,7 +4737,7 @@ msgid ""
 msgstr ""
 
 #. type: Plain text
-#: build/C/man2/select_tut.2:720
+#: build/C/man2/select_tut.2:722
 #, no-wrap
 msgid ""
 "            memset(&client_address, 0, l = sizeof(client_address));\n"
@@ -4324,13 +4761,13 @@ msgid ""
 msgstr ""
 
 #. type: Plain text
-#: build/C/man2/select_tut.2:722
+#: build/C/man2/select_tut.2:724
 #, no-wrap
 msgid "        /* NB: read oob data before normal reads */\n"
 msgstr ""
 
 #. type: Plain text
-#: build/C/man2/select_tut.2:726
+#: build/C/man2/select_tut.2:728
 #, no-wrap
 msgid ""
 "        if (fd1 E<gt> 0)\n"
@@ -4339,7 +4776,7 @@ msgid ""
 msgstr ""
 
 #. type: Plain text
-#: build/C/man2/select_tut.2:736
+#: build/C/man2/select_tut.2:738
 #, no-wrap
 msgid ""
 "                r = recv(fd1, &c, 1, MSG_OOB);\n"
@@ -4354,7 +4791,7 @@ msgid ""
 msgstr ""
 
 #. type: Plain text
-#: build/C/man2/select_tut.2:779
+#: build/C/man2/select_tut.2:781
 #, no-wrap
 msgid ""
 "                r = recv(fd2, &c, 1, MSG_OOB);\n"
@@ -4402,13 +4839,13 @@ msgid ""
 msgstr ""
 
 #. type: Plain text
-#: build/C/man2/select_tut.2:781
+#: build/C/man2/select_tut.2:783
 #, no-wrap
 msgid "        /* check if write data has caught read data */\n"
 msgstr ""
 
 #. type: Plain text
-#: build/C/man2/select_tut.2:786
+#: build/C/man2/select_tut.2:788
 #, no-wrap
 msgid ""
 "        if (buf1_written == buf1_avail)\n"
@@ -4418,7 +4855,7 @@ msgid ""
 msgstr ""
 
 #. type: Plain text
-#: build/C/man2/select_tut.2:789
+#: build/C/man2/select_tut.2:791
 #, no-wrap
 msgid ""
 "        /* one side has closed the connection, keep\n"
@@ -4426,7 +4863,7 @@ msgid ""
 msgstr ""
 
 #. type: Plain text
-#: build/C/man2/select_tut.2:797
+#: build/C/man2/select_tut.2:799
 #, no-wrap
 msgid ""
 "        if (fd1 E<lt> 0 && buf1_avail - buf1_written == 0)\n"
@@ -4439,7 +4876,7 @@ msgid ""
 msgstr ""
 
 #. type: Plain text
-#: build/C/man2/select_tut.2:811
+#: build/C/man2/select_tut.2:813
 msgid ""
 "The above program properly forwards most kinds of TCP connections including "
 "OOB signal data transmitted by B<telnet> servers.  It handles the tricky "
@@ -4451,7 +4888,7 @@ msgid ""
 msgstr ""
 
 #. type: Plain text
-#: build/C/man2/select_tut.2:817
+#: build/C/man2/select_tut.2:819
 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 "
@@ -4462,7 +4899,7 @@ msgstr ""
 #.  .SH AUTHORS
 #.  This man page was written by Paul Sheer.
 #. type: Plain text
-#: build/C/man2/select_tut.2:836
+#: build/C/man2/select_tut.2:838
 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), "
@@ -4471,24 +4908,24 @@ msgid ""
 msgstr ""
 
 #. type: TH
-#: build/C/man2/send.2:38
+#: build/C/man2/send.2:40
 #, no-wrap
 msgid "SEND"
 msgstr ""
 
 #. type: TH
-#: build/C/man2/send.2:38 build/C/man7/socket.7:26
+#: build/C/man2/send.2:40
 #, no-wrap
 msgid "2012-04-23"
 msgstr ""
 
 #. 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 ""
 
 #. 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"
@@ -4496,7 +4933,7 @@ msgid ""
 msgstr ""
 
 #. 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<, "
@@ -4504,7 +4941,7 @@ msgid ""
 msgstr ""
 
 #. 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<, "
@@ -4514,7 +4951,7 @@ msgid ""
 msgstr ""
 
 #. 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 "
@@ -4522,14 +4959,14 @@ msgid ""
 msgstr ""
 
 #. 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."
 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 "
@@ -4539,29 +4976,29 @@ msgid ""
 msgstr ""
 
 #. 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 ""
 
 #. 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 ""
 
 #. 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 ""
 
 #. 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 "
@@ -4574,7 +5011,7 @@ msgid ""
 msgstr ""
 
 #. 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 "
@@ -4583,7 +5020,7 @@ msgid ""
 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 "
@@ -4591,14 +5028,14 @@ msgid ""
 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."
 msgstr ""
 
 #. 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.  "
@@ -4609,20 +5046,20 @@ msgstr ""
 
 #.  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."
 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)"
 msgstr ""
 
 #. 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 "
@@ -4632,13 +5069,13 @@ msgid ""
 msgstr ""
 
 #. type: TP
-#: build/C/man2/send.2:178
+#: build/C/man2/send.2:180
 #, no-wrap
 msgid "B<MSG_DONTROUTE>"
 msgstr ""
 
 #. 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 "
 "connected networks.  This is usually used only by diagnostic or routing "
@@ -4647,7 +5084,7 @@ msgid ""
 msgstr ""
 
 #. 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> "
@@ -4655,26 +5092,26 @@ msgid ""
 msgstr ""
 
 #. 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 ""
 
 #. 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>)."
 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)"
 msgstr ""
 
 #. 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)), "
@@ -4682,7 +5119,7 @@ msgid ""
 msgstr ""
 
 #. 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 "
@@ -4692,20 +5129,20 @@ msgid ""
 msgstr ""
 
 #. 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 ""
 
 #. 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."
 msgstr ""
 
 #. 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> "
@@ -4713,7 +5150,7 @@ msgid ""
 msgstr ""
 
 #. type: Plain text
-#: build/C/man2/send.2:244
+#: build/C/man2/send.2:246
 msgid ""
 "The definition of the I<msghdr> structure follows.  See B<recv>(2)  and "
 "below for an exact description of its fields."
@@ -4724,7 +5161,7 @@ msgstr ""
 #.   msg_control* fields.
 #.   The flags returned in msg_flags.
 #. type: Plain text
-#: build/C/man2/send.2:273
+#: build/C/man2/send.2:275
 msgid ""
 "You may send control information using the I<msg_control> and "
 "I<msg_controllen> members.  The maximum control buffer length the kernel can "
@@ -4733,14 +5170,14 @@ msgid ""
 msgstr ""
 
 #. type: Plain text
-#: build/C/man2/send.2:278
+#: build/C/man2/send.2:280
 msgid ""
 "On success, these calls return the number of characters sent.  On error, -1 "
 "is returned, and I<errno> is set appropriately."
 msgstr ""
 
 #. type: Plain text
-#: build/C/man2/send.2:283
+#: build/C/man2/send.2:285
 msgid ""
 "These are some standard errors generated by the socket layer.  Additional "
 "errors may be generated and returned from the underlying protocol modules; "
@@ -4748,7 +5185,7 @@ msgid ""
 msgstr ""
 
 #. type: Plain text
-#: build/C/man2/send.2:291
+#: build/C/man2/send.2:293
 msgid ""
 "(For UNIX domain sockets, which are identified by pathname)  Write "
 "permission is denied on the destination socket file, or search permission is "
@@ -4757,7 +5194,7 @@ msgid ""
 msgstr ""
 
 #. type: Plain text
-#: build/C/man2/send.2:294
+#: build/C/man2/send.2:296
 msgid ""
 "(For UDP sockets) An attempt was made to send to a network/broadcast address "
 "as though it was a unicast address."
@@ -4765,7 +5202,7 @@ msgstr ""
 
 #.  Actually EAGAIN on Linux
 #. type: Plain text
-#: build/C/man2/send.2:302
+#: build/C/man2/send.2:304
 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 "
@@ -4774,44 +5211,44 @@ msgid ""
 msgstr ""
 
 #. type: Plain text
-#: build/C/man2/send.2:305
+#: build/C/man2/send.2:307
 msgid "An invalid descriptor was specified."
 msgstr ""
 
 #. type: TP
-#: build/C/man2/send.2:305
+#: build/C/man2/send.2:307
 #, no-wrap
 msgid "B<ECONNRESET>"
 msgstr ""
 
 #. type: Plain text
-#: build/C/man2/send.2:308
+#: build/C/man2/send.2:310
 msgid "Connection reset by peer."
 msgstr ""
 
 #. type: TP
-#: build/C/man2/send.2:308
+#: build/C/man2/send.2:310
 #, no-wrap
 msgid "B<EDESTADDRREQ>"
 msgstr ""
 
 #. type: Plain text
-#: build/C/man2/send.2:311
+#: build/C/man2/send.2:313
 msgid "The socket is not connection-mode, and no peer address is set."
 msgstr ""
 
 #. type: Plain text
-#: build/C/man2/send.2:314
+#: build/C/man2/send.2:316
 msgid "An invalid user space address was specified for an argument."
 msgstr ""
 
 #. type: Plain text
-#: build/C/man2/send.2:318
+#: build/C/man2/send.2:320
 msgid "A signal occurred before any data was transmitted; see B<signal>(7)."
 msgstr ""
 
 #. type: Plain text
-#: build/C/man2/send.2:327
+#: build/C/man2/send.2:329
 msgid ""
 "The connection-mode socket was connected already but a recipient was "
 "specified.  (Now either this error is returned, or the recipient "
@@ -4819,21 +5256,21 @@ msgid ""
 msgstr ""
 
 #. type: TP
-#: build/C/man2/send.2:327
+#: build/C/man2/send.2:329
 #, no-wrap
 msgid "B<EMSGSIZE>"
 msgstr ""
 
 #.  (e.g., SOCK_DGRAM )
 #. type: Plain text
-#: build/C/man2/send.2:333
+#: build/C/man2/send.2:335
 msgid ""
 "The socket type requires that message be sent atomically, and the size of "
 "the message to be sent made this impossible."
 msgstr ""
 
 #. type: Plain text
-#: build/C/man2/send.2:341
+#: build/C/man2/send.2:343
 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 "
@@ -4842,28 +5279,28 @@ msgid ""
 msgstr ""
 
 #. type: Plain text
-#: build/C/man2/send.2:344
+#: build/C/man2/send.2:346
 msgid "No memory available."
 msgstr ""
 
 #. type: Plain text
-#: build/C/man2/send.2:347
+#: build/C/man2/send.2:349
 msgid "The socket is not connected, and no target has been given."
 msgstr ""
 
 #. type: Plain text
-#: build/C/man2/send.2:357
+#: build/C/man2/send.2:359
 msgid "Some bit in the I<flags> argument is inappropriate for the socket type."
 msgstr ""
 
 #. type: TP
-#: build/C/man2/send.2:357
+#: build/C/man2/send.2:359
 #, no-wrap
 msgid "B<EPIPE>"
 msgstr ""
 
 #. type: Plain text
-#: build/C/man2/send.2:366
+#: build/C/man2/send.2:368
 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 "
@@ -4871,12 +5308,12 @@ msgid ""
 msgstr ""
 
 #. type: Plain text
-#: build/C/man2/send.2:369
+#: build/C/man2/send.2:371
 msgid "4.4BSD, SVr4, POSIX.1-2001.  These function calls appeared in 4.2BSD."
 msgstr ""
 
 #. type: Plain text
-#: build/C/man2/send.2:380
+#: build/C/man2/send.2:382
 msgid ""
 "POSIX.1-2001 only describes the B<MSG_OOB> and B<MSG_EOR> flags.  "
 "POSIX.1-2008 adds a specification of B<MSG_NOSIGNAL>.  The B<MSG_CONFIRM> "
@@ -4884,7 +5321,7 @@ msgid ""
 msgstr ""
 
 #. type: Plain text
-#: build/C/man2/send.2:393
+#: build/C/man2/send.2:395
 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> "
@@ -4894,24 +5331,24 @@ msgid ""
 msgstr ""
 
 #. type: Plain text
-#: build/C/man2/send.2:412
+#: build/C/man2/send.2:414
 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 ""
 
 #. type: Plain text
-#: build/C/man2/send.2:417
+#: build/C/man2/send.2:419
 msgid "Linux may return B<EPIPE> instead of B<ENOTCONN>."
 msgstr ""
 
 #. type: Plain text
-#: build/C/man2/send.2:422
+#: build/C/man2/send.2:424
 msgid "An example of the use of B<sendto>()  is shown in B<getaddrinfo>(3)."
 msgstr ""
 
 #. type: Plain text
-#: build/C/man2/send.2:437
+#: build/C/man2/send.2:439
 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), "
@@ -4927,7 +5364,7 @@ msgstr ""
 #. type: TH
 #: build/C/man2/sendmmsg.2:28
 #, no-wrap
-msgid "2012-02-27"
+msgid "2012-12-16"
 msgstr ""
 
 #. type: Plain text
@@ -5058,40 +5495,144 @@ msgid "The value specified in I<vlen> is capped to B<UIO_MAXIOV> (1024)."
 msgstr ""
 
 #. type: Plain text
-#: build/C/man2/sendmmsg.2:173
+#: 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 ""
+
+#. 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 ""
+
+#. 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 ""
+
+#. 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 ""
+
+#. type: Plain text
+#: build/C/man2/sendmmsg.2:215
+#, no-wrap
+msgid ""
+"    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 ""
+
+#. type: Plain text
+#: 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 ""
+
+#. type: Plain text
+#: build/C/man2/sendmmsg.2:223
+#, no-wrap
+msgid ""
+"    memset(msg, 0, sizeof(msg));\n"
+"    msg[0].msg_hdr.msg_iov = msg1;\n"
+"    msg[0].msg_hdr.msg_iovlen = 2;\n"
+msgstr ""
+
+#. type: Plain text
+#: build/C/man2/sendmmsg.2:226
+#, no-wrap
+msgid ""
+"    msg[1].msg_hdr.msg_iov = &msg2;\n"
+"    msg[1].msg_hdr.msg_iovlen = 1;\n"
+msgstr ""
+
+#. type: Plain text
+#: 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 ""
+
+#. type: Plain text
+#: build/C/man2/sendmmsg.2:235
+#, no-wrap
+msgid ""
+"    exit(0);\n"
+"}\n"
+msgstr ""
+
+#. type: Plain text
+#: build/C/man2/sendmmsg.2:241
 msgid "B<recvmmsg>(2), B<sendmsg>(2), B<socket>(2), B<socket>(7)"
 msgstr ""
 
 #. type: TH
-#: build/C/man3/sockatmark.3:23
+#: build/C/man3/sockatmark.3:25
 #, no-wrap
 msgid "SOCKATMARK"
 msgstr ""
 
 #. 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 ""
 
 #. 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:53 build/C/man2/socketpair.2:49
 msgid "B<#include E<lt>sys/socket.hE<gt>>"
 msgstr ""
 
 #. type: Plain text
-#: build/C/man3/sockatmark.3:30
+#: build/C/man3/sockatmark.3:32
 msgid "B<int sockatmark(int >I<sockfd>B<);>"
 msgstr ""
 
 #. 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"
 msgstr ""
 
 #. 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 "
@@ -5100,7 +5641,7 @@ msgid ""
 msgstr ""
 
 #. type: Plain text
-#: build/C/man3/sockatmark.3:54
+#: build/C/man3/sockatmark.3:56
 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> "
@@ -5108,59 +5649,59 @@ msgid ""
 msgstr ""
 
 #. type: Plain text
-#: build/C/man3/sockatmark.3:59
+#: build/C/man3/sockatmark.3:61
 msgid "I<sockfd> is not a valid file descriptor."
 msgstr ""
 
 #.  POSIX.1 says ENOTTY for this case
 #. type: Plain text
-#: build/C/man3/sockatmark.3:66
+#: build/C/man3/sockatmark.3:68
 msgid "I<sockfd> is not a file descriptor to which B<sockatmark>()  can be applied."
 msgstr ""
 
 #. type: Plain text
-#: build/C/man3/sockatmark.3:69
+#: build/C/man3/sockatmark.3:71
 msgid "B<sockatmark>()  was added to glibc in version 2.2.4."
 msgstr ""
 
 #. type: Plain text
-#: build/C/man3/sockatmark.3:71
+#: build/C/man3/sockatmark.3:73
 msgid "POSIX.1-2001."
 msgstr ""
 
 #. type: Plain text
-#: build/C/man3/sockatmark.3:78
+#: build/C/man3/sockatmark.3:80
 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)."
 msgstr ""
 
 #. type: Plain text
-#: build/C/man3/sockatmark.3:80
+#: build/C/man3/sockatmark.3:82
 msgid "Out-of-band data is only supported on some stream socket protocols."
 msgstr ""
 
 #. type: Plain text
-#: build/C/man3/sockatmark.3:85
+#: build/C/man3/sockatmark.3:87
 msgid ""
 "B<sockatmark>()  can safely be called from a handler for the B<SIGURG> "
 "signal."
 msgstr ""
 
 #. type: Plain text
-#: build/C/man3/sockatmark.3:91
+#: build/C/man3/sockatmark.3:93
 msgid ""
 "B<sockatmark>()  is implemented using the B<SIOCATMARK> B<ioctl>(2)  "
 "operation."
 msgstr ""
 
 #. type: Plain text
-#: build/C/man3/sockatmark.3:95
+#: build/C/man3/sockatmark.3:97
 msgid "Prior to glibc 2.4, B<sockatmark>()  did not work."
 msgstr ""
 
 #. type: Plain text
-#: build/C/man3/sockatmark.3:100
+#: build/C/man3/sockatmark.3:102
 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 "
@@ -5168,7 +5709,7 @@ msgid ""
 msgstr ""
 
 #. type: Plain text
-#: build/C/man3/sockatmark.3:105
+#: build/C/man3/sockatmark.3:107
 #, no-wrap
 msgid ""
 "    char buf[BUF_LEN];\n"
@@ -5177,7 +5718,7 @@ msgid ""
 msgstr ""
 
 #. type: Plain text
-#: build/C/man3/sockatmark.3:112
+#: build/C/man3/sockatmark.3:114
 #, no-wrap
 msgid ""
 "    for (;;) {\n"
@@ -5189,7 +5730,7 @@ msgid ""
 msgstr ""
 
 #. type: Plain text
-#: build/C/man3/sockatmark.3:115
+#: build/C/man3/sockatmark.3:117
 #, no-wrap
 msgid ""
 "        if (atmark)\n"
@@ -5197,7 +5738,7 @@ msgid ""
 msgstr ""
 
 #. type: Plain text
-#: build/C/man3/sockatmark.3:122
+#: build/C/man3/sockatmark.3:124
 #, no-wrap
 msgid ""
 "        s = read(sockfd, buf, BUF_LEN) E<lt>= 0);\n"
@@ -5209,7 +5750,7 @@ msgid ""
 msgstr ""
 
 #. type: Plain text
-#: build/C/man3/sockatmark.3:129
+#: build/C/man3/sockatmark.3:131
 #, no-wrap
 msgid ""
 "    if (atmark == 1) {\n"
@@ -5221,44 +5762,44 @@ msgid ""
 msgstr ""
 
 #. type: Plain text
-#: build/C/man3/sockatmark.3:135
+#: build/C/man3/sockatmark.3:137
 msgid "B<fcntl>(2), B<recv>(2), B<send>(2), B<tcp>(7)"
 msgstr ""
 
 #. 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:48
 #, no-wrap
 msgid "SOCKET"
 msgstr ""
 
 #. type: TH
-#: build/C/man2/socket.2:41
+#: build/C/man2/socket.2:43
 #, no-wrap
 msgid "2009-01-19"
 msgstr ""
 
 #. type: Plain text
-#: build/C/man2/socket.2:44
+#: build/C/man2/socket.2:46
 msgid "socket - create an endpoint for communication"
 msgstr ""
 
 #. 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 ""
 
 #. 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 ""
 
 #. 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 ""
 
 #. 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 "
@@ -5267,238 +5808,238 @@ msgid ""
 msgstr ""
 
 #. type: tbl table
-#: build/C/man2/socket.2:64
+#: build/C/man2/socket.2:66
 #, no-wrap
 msgid "Name:Purpose:Man page\n"
 msgstr ""
 
 #. 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 ""
 
 #. 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 ""
 
 #. 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:184
 #, no-wrap
 msgid "T}:T{\n"
 msgstr ""
 
 #. type: tbl table
-#: build/C/man2/socket.2:68
+#: build/C/man2/socket.2:70
 #, no-wrap
 msgid "Local communication\n"
 msgstr ""
 
 #. type: tbl table
-#: build/C/man2/socket.2:70
+#: build/C/man2/socket.2:72
 #, no-wrap
 msgid "B<unix>(7)\n"
 msgstr ""
 
 #. 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:163 build/C/man7/socket.7:167 build/C/man7/socket.7:170 build/C/man7/socket.7:176 build/C/man7/socket.7:179 build/C/man7/socket.7:188 build/C/man7/socket.7:195
 #, no-wrap
 msgid "T}\n"
 msgstr ""
 
 #. type: tbl table
-#: build/C/man2/socket.2:73
+#: build/C/man2/socket.2:75
 #, no-wrap
 msgid "B<AF_INET>\n"
 msgstr ""
 
 #. 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 ""
 
 #. type: tbl table
-#: build/C/man2/socket.2:75
+#: build/C/man2/socket.2:77
 #, no-wrap
 msgid "B<ip>(7)\n"
 msgstr ""
 
 #. type: tbl table
-#: build/C/man2/socket.2:78
+#: build/C/man2/socket.2:80
 #, no-wrap
 msgid "B<AF_INET6>\n"
 msgstr ""
 
 #. 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 ""
 
 #. type: tbl table
-#: build/C/man2/socket.2:80
+#: build/C/man2/socket.2:82
 #, no-wrap
 msgid "B<ipv6>(7)\n"
 msgstr ""
 
 #. type: tbl table
-#: build/C/man2/socket.2:83
+#: build/C/man2/socket.2:85
 #, no-wrap
 msgid "B<AF_IPX>\n"
 msgstr ""
 
 #. type: tbl table
-#: build/C/man2/socket.2:84
+#: build/C/man2/socket.2:86
 #, no-wrap
 msgid "T}:IPX - Novell protocols:\n"
 msgstr ""
 
 #. type: tbl table
-#: build/C/man2/socket.2:86
+#: build/C/man2/socket.2:88
 #, no-wrap
 msgid "B<AF_NETLINK>\n"
 msgstr ""
 
 #. type: tbl table
-#: build/C/man2/socket.2:88
+#: build/C/man2/socket.2:90
 #, no-wrap
 msgid "Kernel user interface device\n"
 msgstr ""
 
 #. type: tbl table
-#: build/C/man2/socket.2:90
+#: build/C/man2/socket.2:92
 #, no-wrap
 msgid "B<netlink>(7)\n"
 msgstr ""
 
 #. type: tbl table
-#: build/C/man2/socket.2:93
+#: build/C/man2/socket.2:95
 #, no-wrap
 msgid "B<AF_X25>\n"
 msgstr ""
 
 #. 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 ""
 
 #. type: tbl table
-#: build/C/man2/socket.2:95
+#: build/C/man2/socket.2:97
 #, no-wrap
 msgid "B<x25>(7)\n"
 msgstr ""
 
 #. type: tbl table
-#: build/C/man2/socket.2:98
+#: build/C/man2/socket.2:100
 #, no-wrap
 msgid "B<AF_AX25>\n"
 msgstr ""
 
 #. 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 ""
 
 #. type: tbl table
-#: build/C/man2/socket.2:101
+#: build/C/man2/socket.2:103
 #, no-wrap
 msgid "T}:\n"
 msgstr ""
 
 #. type: tbl table
-#: build/C/man2/socket.2:103
+#: build/C/man2/socket.2:105
 #, no-wrap
 msgid "B<AF_ATMPVC>\n"
 msgstr ""
 
 #. 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 ""
 
 #. type: tbl table
-#: build/C/man2/socket.2:106
+#: build/C/man2/socket.2:108
 #, no-wrap
 msgid "B<AF_APPLETALK>\n"
 msgstr ""
 
 #. type: tbl table
-#: build/C/man2/socket.2:107
+#: build/C/man2/socket.2:109
 #, no-wrap
 msgid "T}:Appletalk:T{\n"
 msgstr ""
 
 #. type: tbl table
-#: build/C/man2/socket.2:108
+#: build/C/man2/socket.2:110
 #, no-wrap
 msgid "B<ddp>(7)\n"
 msgstr ""
 
 #. type: tbl table
-#: build/C/man2/socket.2:111
+#: build/C/man2/socket.2:113
 #, no-wrap
 msgid "B<AF_PACKET>\n"
 msgstr ""
 
 #. type: tbl table
-#: build/C/man2/socket.2:113
+#: build/C/man2/socket.2:115
 #, no-wrap
 msgid "Low level packet interface\n"
 msgstr ""
 
 #. type: tbl table
-#: build/C/man2/socket.2:115
+#: build/C/man2/socket.2:117
 #, no-wrap
 msgid "B<packet>(7)\n"
 msgstr ""
 
 #. 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:"
 msgstr ""
 
 #. type: TP
-#: build/C/man2/socket.2:124
+#: build/C/man2/socket.2:126
 #, no-wrap
 msgid "B<SOCK_STREAM>"
 msgstr ""
 
 #. 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 ""
 
 #. type: TP
-#: build/C/man2/socket.2:128
+#: build/C/man2/socket.2:130
 #, no-wrap
 msgid "B<SOCK_DGRAM>"
 msgstr ""
 
 #. 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 ""
 
 #. type: TP
-#: build/C/man2/socket.2:132
+#: build/C/man2/socket.2:134
 #, no-wrap
 msgid "B<SOCK_SEQPACKET>"
 msgstr ""
 
 #. 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 "
@@ -5506,47 +6047,47 @@ msgid ""
 msgstr ""
 
 #. type: TP
-#: build/C/man2/socket.2:137
+#: build/C/man2/socket.2:139
 #, no-wrap
 msgid "B<SOCK_RAW>"
 msgstr ""
 
 #. type: Plain text
-#: build/C/man2/socket.2:140
+#: build/C/man2/socket.2:142
 msgid "Provides raw network protocol access."
 msgstr ""
 
 #. type: TP
-#: build/C/man2/socket.2:140
+#: build/C/man2/socket.2:142
 #, no-wrap
 msgid "B<SOCK_RDM>"
 msgstr ""
 
 #. 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 ""
 
 #. 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 ""
 
 #. type: Plain text
-#: build/C/man2/socket.2:154
+#: build/C/man2/socket.2:156
 msgid ""
 "Some socket types may not be implemented by all protocol families; for "
 "example, B<SOCK_SEQPACKET> is not implemented for B<AF_INET>."
 msgstr ""
 
 #. type: Plain text
-#: build/C/man2/socket.2:162
+#: build/C/man2/socket.2:164
 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 "
@@ -5554,7 +6095,7 @@ msgid ""
 msgstr ""
 
 #. type: Plain text
-#: build/C/man2/socket.2:196
+#: build/C/man2/socket.2:198
 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 "
@@ -5567,7 +6108,7 @@ msgid ""
 msgstr ""
 
 #. type: Plain text
-#: build/C/man2/socket.2:226
+#: build/C/man2/socket.2:228
 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 "
@@ -5581,7 +6122,7 @@ msgid ""
 msgstr ""
 
 #. type: Plain text
-#: build/C/man2/socket.2:252
+#: build/C/man2/socket.2:254
 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 "
@@ -5599,7 +6140,7 @@ msgid ""
 msgstr ""
 
 #. type: Plain text
-#: build/C/man2/socket.2:262
+#: build/C/man2/socket.2:264
 msgid ""
 "B<SOCK_DGRAM> and B<SOCK_RAW> sockets allow sending of datagrams to "
 "correspondents named in B<sendto>(2)  calls.  Datagrams are generally "
@@ -5608,14 +6149,14 @@ msgid ""
 msgstr ""
 
 #. type: Plain text
-#: build/C/man2/socket.2:269
+#: build/C/man2/socket.2:271
 msgid ""
 "B<SOCK_PACKET> is an obsolete socket type to receive raw packets directly "
 "from the device driver.  Use B<packet>(7)  instead."
 msgstr ""
 
 #. type: Plain text
-#: build/C/man2/socket.2:292
+#: build/C/man2/socket.2:294
 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 "
@@ -5627,7 +6168,7 @@ msgid ""
 msgstr ""
 
 #. type: Plain text
-#: build/C/man2/socket.2:302
+#: build/C/man2/socket.2:304
 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.  "
@@ -5638,7 +6179,7 @@ msgid ""
 msgstr ""
 
 #. type: Plain text
-#: build/C/man2/socket.2:312
+#: build/C/man2/socket.2:314
 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 "
@@ -5647,83 +6188,83 @@ msgid ""
 msgstr ""
 
 #. type: Plain text
-#: build/C/man2/socket.2:317
+#: build/C/man2/socket.2:319
 msgid ""
 "On success, a file descriptor for the new socket is returned.  On error, -1 "
 "is returned, and I<errno> is set appropriately."
 msgstr ""
 
 #. type: Plain text
-#: build/C/man2/socket.2:322
+#: build/C/man2/socket.2:324
 msgid ""
 "Permission to create a socket of the specified type and/or protocol is "
 "denied."
 msgstr ""
 
 #. type: Plain text
-#: build/C/man2/socket.2:325
+#: build/C/man2/socket.2:327
 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:330
 msgid "Unknown protocol, or protocol family not available."
 msgstr ""
 
 #.  Since Linux 2.6.27
 #. type: Plain text
-#: build/C/man2/socket.2:333
+#: build/C/man2/socket.2:335
 msgid "Invalid flags in I<type>."
 msgstr ""
 
 #. type: Plain text
-#: build/C/man2/socket.2:336
+#: build/C/man2/socket.2:338
 msgid "Process file table overflow."
 msgstr ""
 
 #. type: TP
-#: build/C/man2/socket.2:339
+#: build/C/man2/socket.2:341
 #, no-wrap
 msgid "B<ENOBUFS> or B<ENOMEM>"
 msgstr ""
 
 #. type: Plain text
-#: build/C/man2/socket.2:344
+#: build/C/man2/socket.2:346
 msgid ""
 "Insufficient memory is available.  The socket cannot be created until "
 "sufficient resources are freed."
 msgstr ""
 
 #. type: TP
-#: build/C/man2/socket.2:344 build/C/man2/socketpair.2:90
+#: build/C/man2/socket.2:346 build/C/man2/socketpair.2:92
 #, no-wrap
 msgid "B<EPROTONOSUPPORT>"
 msgstr ""
 
 #. type: Plain text
-#: build/C/man2/socket.2:348
+#: build/C/man2/socket.2:350
 msgid ""
 "The protocol type or the specified protocol is not supported within this "
 "domain."
 msgstr ""
 
 #. type: Plain text
-#: build/C/man2/socket.2:350
+#: build/C/man2/socket.2:352
 msgid "Other errors may be generated by the underlying protocol modules."
 msgstr ""
 
 #. type: Plain text
-#: build/C/man2/socket.2:352
+#: build/C/man2/socket.2:354
 msgid "4.4BSD, POSIX.1-2001."
 msgstr ""
 
 #. type: Plain text
-#: build/C/man2/socket.2:358
+#: build/C/man2/socket.2:360
 msgid "The B<SOCK_NONBLOCK> and B<SOCK_CLOEXEC> flags are Linux-specific."
 msgstr ""
 
 #. type: Plain text
-#: build/C/man2/socket.2:364
+#: build/C/man2/socket.2:366
 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 "
@@ -5731,22 +6272,22 @@ msgid ""
 msgstr ""
 
 #. type: Plain text
-#: build/C/man2/socket.2:383
+#: build/C/man2/socket.2:385
 msgid ""
 "The manifest constants used under 4.x BSD for protocol families are "
-"B<PF_UNIX>, B<PF_INET>, and so on, while B<AF_UNIX>, B<PF_INET>, and so on "
+"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 ""
 
 #. type: Plain text
-#: build/C/man2/socket.2:388
+#: build/C/man2/socket.2:390
 msgid "An example of the use of B<socket>()  is shown in B<getaddrinfo>(3)."
 msgstr ""
 
 #. type: Plain text
-#: build/C/man2/socket.2:411
+#: build/C/man2/socket.2:413
 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), "
@@ -5756,33 +6297,33 @@ msgid ""
 msgstr ""
 
 #. type: Plain text
-#: build/C/man2/socket.2:415
-msgid ""
-"\\(lqAn Introductory 4.3BSD Interprocess Communication Tutorial\\(rq is "
-"reprinted in I<UNIX Programmer's Supplementary Documents Volume 1.>"
-msgstr ""
-
-#. type: Plain text
 #: build/C/man2/socket.2:419
 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 ""
 
+#. type: TH
+#: build/C/man7/socket.7:48
+#, no-wrap
+msgid "2013-03-15"
+msgstr ""
+
 #. type: Plain text
-#: build/C/man7/socket.7:29
+#: build/C/man7/socket.7:51
 msgid "socket - Linux socket interface"
 msgstr ""
 
 #. type: Plain text
-#: build/C/man7/socket.7:33
+#: build/C/man7/socket.7:55
 msgid ""
 "I<sockfd>B< = socket(int >I<socket_family>B<, int >I<socket_type>B<, int "
 ">I<protocol>B<);>"
 msgstr ""
 
 #. type: Plain text
-#: build/C/man7/socket.7:52
+#: build/C/man7/socket.7:74
 msgid ""
 "This manual page describes the Linux networking socket layer user "
 "interface.  The BSD compatible sockets are the uniform interface between the "
@@ -5793,13 +6334,13 @@ msgid ""
 msgstr ""
 
 #. type: SS
-#: build/C/man7/socket.7:52
+#: build/C/man7/socket.7:74
 #, 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:78
 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 "
@@ -5807,7 +6348,7 @@ msgid ""
 msgstr ""
 
 #. type: Plain text
-#: build/C/man7/socket.7:72
+#: build/C/man7/socket.7:94
 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 "
@@ -5818,7 +6359,7 @@ msgid ""
 msgstr ""
 
 #. type: Plain text
-#: build/C/man7/socket.7:94
+#: build/C/man7/socket.7:116
 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.  "
@@ -5829,7 +6370,7 @@ msgid ""
 msgstr ""
 
 #. type: Plain text
-#: build/C/man7/socket.7:105
+#: build/C/man7/socket.7:127
 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)  "
@@ -5838,21 +6379,21 @@ msgid ""
 msgstr ""
 
 #. type: Plain text
-#: build/C/man7/socket.7:110
+#: build/C/man7/socket.7:132
 msgid ""
 "B<close>(2)  is used to close a socket.  B<shutdown>(2)  closes parts of a "
 "full-duplex socket connection."
 msgstr ""
 
 #. type: Plain text
-#: build/C/man7/socket.7:116
+#: build/C/man7/socket.7:138
 msgid ""
 "Seeking, or calling B<pread>(2)  or B<pwrite>(2)  with a nonzero position is "
 "not supported on sockets."
 msgstr ""
 
 #. type: Plain text
-#: build/C/man7/socket.7:133
+#: build/C/man7/socket.7:155
 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 "
@@ -5862,169 +6403,169 @@ msgid ""
 msgstr ""
 
 #. type: tbl table
-#: build/C/man7/socket.7:137
+#: build/C/man7/socket.7:159
 #, no-wrap
 msgid "I/O events\n"
 msgstr ""
 
 #. type: tbl table
-#: build/C/man7/socket.7:138
+#: build/C/man7/socket.7:160
 #, no-wrap
 msgid "Event:Poll flag:Occurrence\n"
 msgstr ""
 
 #. type: tbl table
-#: build/C/man7/socket.7:139 build/C/man7/socket.7:142
+#: build/C/man7/socket.7:161 build/C/man7/socket.7:164
 #, no-wrap
 msgid "Read:POLLIN:T{\n"
 msgstr ""
 
 #. type: tbl table
-#: build/C/man7/socket.7:140
+#: build/C/man7/socket.7:162
 #, no-wrap
 msgid "New data arrived.\n"
 msgstr ""
 
 #. type: tbl table
-#: build/C/man7/socket.7:143
+#: build/C/man7/socket.7:165
 #, no-wrap
 msgid "A connection setup has been completed\n"
 msgstr ""
 
 #. type: tbl table
-#: build/C/man7/socket.7:144
+#: build/C/man7/socket.7:166
 #, no-wrap
 msgid "(for connection-oriented sockets)\n"
 msgstr ""
 
 #. type: tbl table
-#: build/C/man7/socket.7:146 build/C/man7/socket.7:149
+#: build/C/man7/socket.7:168 build/C/man7/socket.7:171
 #, no-wrap
 msgid "Read:POLLHUP:T{\n"
 msgstr ""
 
 #. type: tbl table
-#: build/C/man7/socket.7:147
+#: build/C/man7/socket.7:169
 #, no-wrap
 msgid "A disconnection request has been initiated by the other end.\n"
 msgstr ""
 
 #. type: tbl table
-#: build/C/man7/socket.7:150
+#: build/C/man7/socket.7:172
 #, no-wrap
 msgid "A connection is broken (only for connection-oriented protocols).\n"
 msgstr ""
 
 #. type: tbl table
-#: build/C/man7/socket.7:151
+#: build/C/man7/socket.7:173
 #, no-wrap
 msgid "When the socket is written\n"
 msgstr ""
 
 #. type: tbl table
-#: build/C/man7/socket.7:152
+#: build/C/man7/socket.7:174
 #, no-wrap
 msgid "B<SIGPIPE>\n"
 msgstr ""
 
 #. type: tbl table
-#: build/C/man7/socket.7:153
+#: build/C/man7/socket.7:175
 #, no-wrap
 msgid "is also sent.\n"
 msgstr ""
 
 #. type: tbl table
-#: build/C/man7/socket.7:155
+#: build/C/man7/socket.7:177
 #, no-wrap
 msgid "Write:POLLOUT:T{\n"
 msgstr ""
 
 #. type: tbl table
-#: build/C/man7/socket.7:156
+#: build/C/man7/socket.7:178
 #, no-wrap
 msgid "Socket has enough send buffer space for writing new data.\n"
 msgstr ""
 
 #. type: tbl table
-#: build/C/man7/socket.7:158
+#: build/C/man7/socket.7:180
 #, no-wrap
 msgid "Read/Write:T{\n"
 msgstr ""
 
 #. type: tbl table
-#: build/C/man7/socket.7:159
+#: build/C/man7/socket.7:181
 #, no-wrap
 msgid "POLLIN|\n"
 msgstr ""
 
 #. type: tbl table
-#: build/C/man7/socket.7:160
+#: build/C/man7/socket.7:182
 #, no-wrap
 msgid ".br\n"
 msgstr ""
 
 #. type: tbl table
-#: build/C/man7/socket.7:161
+#: build/C/man7/socket.7:183
 #, no-wrap
 msgid "POLLOUT\n"
 msgstr ""
 
 #. type: tbl table
-#: build/C/man7/socket.7:163
+#: build/C/man7/socket.7:185
 #, no-wrap
 msgid "An outgoing\n"
 msgstr ""
 
 #. type: tbl table
-#: build/C/man7/socket.7:164
+#: build/C/man7/socket.7:186
 #, no-wrap
 msgid "B<connect>(2)\n"
 msgstr ""
 
 #. type: tbl table
-#: build/C/man7/socket.7:165
+#: build/C/man7/socket.7:187
 #, no-wrap
 msgid "finished.\n"
 msgstr ""
 
 #. type: tbl table
-#: build/C/man7/socket.7:167
+#: build/C/man7/socket.7:189
 #, no-wrap
 msgid "Read/Write:POLLERR:An asynchronous error occurred.\n"
 msgstr ""
 
 #. type: tbl table
-#: build/C/man7/socket.7:168
+#: build/C/man7/socket.7:190
 #, no-wrap
 msgid "Read/Write:POLLHUP:The other end has shut down one direction.\n"
 msgstr ""
 
 #. type: tbl table
-#: build/C/man7/socket.7:169
+#: build/C/man7/socket.7:191
 #, no-wrap
 msgid "Exception:POLLPRI:T{\n"
 msgstr ""
 
 #. type: tbl table
-#: build/C/man7/socket.7:170
+#: build/C/man7/socket.7:192
 #, no-wrap
 msgid "Urgent data arrived.\n"
 msgstr ""
 
 #. type: tbl table
-#: build/C/man7/socket.7:171
+#: build/C/man7/socket.7:193
 #, no-wrap
 msgid "B<SIGURG>\n"
 msgstr ""
 
 #. type: tbl table
-#: build/C/man7/socket.7:172
+#: build/C/man7/socket.7:194
 #, no-wrap
 msgid "is sent then.\n"
 msgstr ""
 
 #. type: Plain text
-#: build/C/man7/socket.7:202
+#: build/C/man7/socket.7:223
 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> "
@@ -6034,9 +6575,62 @@ msgid ""
 msgstr ""
 
 #. type: SS
-#: build/C/man7/socket.7:202
+#: build/C/man7/socket.7:223
+#, no-wrap
+msgid "Socket address structures"
+msgstr ""
+
+#. type: Plain text
+#: build/C/man7/socket.7:239
+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 ""
+
+#. type: Plain text
+#: build/C/man7/socket.7:249
+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 ""
+
+#. type: Plain text
+#: build/C/man7/socket.7:259
+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 ""
+
+#. type: Plain text
+#: build/C/man7/socket.7:263
+#, no-wrap
+msgid "    sa_family_t ss_family;\n"
+msgstr ""
+
+#. type: Plain text
+#: build/C/man7/socket.7:271
+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 ""
+
+#. type: SS
+#: build/C/man7/socket.7:271
 #, no-wrap
-msgid "Socket Options"
+msgid "Socket options"
 msgstr ""
 
 #.  FIXME
@@ -6046,7 +6640,7 @@ msgstr ""
 #.  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:285
 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 "
@@ -6054,13 +6648,13 @@ msgid ""
 msgstr ""
 
 #. type: TP
-#: build/C/man7/socket.7:216
+#: build/C/man7/socket.7:285
 #, no-wrap
 msgid "B<SO_ACCEPTCONN>"
 msgstr ""
 
 #. type: Plain text
-#: build/C/man7/socket.7:224
+#: build/C/man7/socket.7:293
 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 "
@@ -6069,13 +6663,13 @@ msgid ""
 msgstr ""
 
 #. type: TP
-#: build/C/man7/socket.7:224
+#: build/C/man7/socket.7:293
 #, no-wrap
 msgid "B<SO_BINDTODEVICE>"
 msgstr ""
 
 #. type: Plain text
-#: build/C/man7/socket.7:243
+#: build/C/man7/socket.7:312
 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 "
@@ -6088,14 +6682,24 @@ msgid ""
 "there)."
 msgstr ""
 
+#. type: Plain text
+#: build/C/man7/socket.7:326
+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 ""
+
 #. type: TP
-#: build/C/man7/socket.7:243
+#: build/C/man7/socket.7:326
 #, no-wrap
 msgid "B<SO_BROADCAST>"
 msgstr ""
 
 #. type: Plain text
-#: build/C/man7/socket.7:249
+#: build/C/man7/socket.7:332
 msgid ""
 "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 "
@@ -6103,13 +6707,13 @@ msgid ""
 msgstr ""
 
 #. type: TP
-#: build/C/man7/socket.7:249
+#: build/C/man7/socket.7:332
 #, no-wrap
 msgid "B<SO_BSDCOMPAT>"
 msgstr ""
 
 #. type: Plain text
-#: build/C/man7/socket.7:261
+#: build/C/man7/socket.7:344
 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 "
@@ -6122,26 +6726,26 @@ msgid ""
 msgstr ""
 
 #. type: TP
-#: build/C/man7/socket.7:261
+#: build/C/man7/socket.7:344
 #, no-wrap
 msgid "B<SO_DEBUG>"
 msgstr ""
 
 #. type: Plain text
-#: build/C/man7/socket.7:267
+#: build/C/man7/socket.7:350
 msgid ""
 "Enable socket debugging.  Only allowed for processes with the "
 "B<CAP_NET_ADMIN> capability or an effective user ID of 0."
 msgstr ""
 
 #. type: TP
-#: build/C/man7/socket.7:267
+#: build/C/man7/socket.7:350
 #, no-wrap
 msgid "B<SO_DOMAIN> (since Linux 2.6.32)"
 msgstr ""
 
 #. type: Plain text
-#: build/C/man7/socket.7:275
+#: build/C/man7/socket.7:358
 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 "
@@ -6149,26 +6753,26 @@ msgid ""
 msgstr ""
 
 #. type: TP
-#: build/C/man7/socket.7:275
+#: build/C/man7/socket.7:358
 #, no-wrap
 msgid "B<SO_ERROR>"
 msgstr ""
 
 #. type: Plain text
-#: build/C/man7/socket.7:280
+#: build/C/man7/socket.7:363
 msgid ""
 "Get and clear the pending socket error.  This socket option is read-only.  "
 "Expects an integer."
 msgstr ""
 
 #. type: TP
-#: build/C/man7/socket.7:280
+#: build/C/man7/socket.7:363
 #, no-wrap
 msgid "B<SO_DONTROUTE>"
 msgstr ""
 
 #. type: Plain text
-#: build/C/man7/socket.7:289
+#: build/C/man7/socket.7:372
 msgid ""
 "Don't send via a gateway, only send to directly connected hosts.  The same "
 "effect can be achieved by setting the B<MSG_DONTROUTE> flag on a socket "
@@ -6176,33 +6780,33 @@ msgid ""
 msgstr ""
 
 #. type: TP
-#: build/C/man7/socket.7:289
+#: build/C/man7/socket.7:372
 #, no-wrap
 msgid "B<SO_KEEPALIVE>"
 msgstr ""
 
 #. type: Plain text
-#: build/C/man7/socket.7:293
+#: build/C/man7/socket.7:376
 msgid ""
 "Enable sending of keep-alive messages on connection-oriented sockets.  "
 "Expects an integer boolean flag."
 msgstr ""
 
 #. type: TP
-#: build/C/man7/socket.7:293
+#: build/C/man7/socket.7:376
 #, no-wrap
 msgid "B<SO_LINGER>"
 msgstr ""
 
 #. type: Plain text
-#: build/C/man7/socket.7:301
+#: build/C/man7/socket.7:384
 msgid ""
 "Sets or gets the B<SO_LINGER> option.  The argument is a I<linger> "
 "structure."
 msgstr ""
 
 #. type: Plain text
-#: build/C/man7/socket.7:308
+#: build/C/man7/socket.7:391
 #, no-wrap
 msgid ""
 "struct linger {\n"
@@ -6212,7 +6816,7 @@ msgid ""
 msgstr ""
 
 #. type: Plain text
-#: build/C/man7/socket.7:322
+#: build/C/man7/socket.7:405
 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 "
@@ -6222,7 +6826,24 @@ msgid ""
 msgstr ""
 
 #. type: TP
-#: build/C/man7/socket.7:322
+#: build/C/man7/socket.7:405
+#, no-wrap
+msgid "B<SO_MARK> (since Linux 2.6.25)"
+msgstr ""
+
+#.  commit 4a19ec5800fc3bb64e2d87c4d9fdd9e636086fe0
+#.  and    914a9ab386a288d0f22252fc268ecbc048cdcbd5
+#. type: Plain text
+#: build/C/man7/socket.7:416
+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 ""
+
+#. type: TP
+#: build/C/man7/socket.7:416
 #, no-wrap
 msgid "B<SO_OOBINLINE>"
 msgstr ""
@@ -6230,7 +6851,7 @@ msgstr ""
 #.  don't document it because it can do too much harm.
 #. .B SO_NO_CHECK
 #. type: Plain text
-#: build/C/man7/socket.7:331
+#: build/C/man7/socket.7:425
 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 "
@@ -6238,7 +6859,7 @@ msgid ""
 msgstr ""
 
 #. type: TP
-#: build/C/man7/socket.7:331
+#: build/C/man7/socket.7:425
 #, no-wrap
 msgid "B<SO_PASSCRED>"
 msgstr ""
@@ -6246,37 +6867,39 @@ msgstr ""
 #.  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:340
+#: build/C/man7/socket.7:434
 msgid ""
 "Enable or disable the receiving of the B<SCM_CREDENTIALS> control message.  "
 "For more information see B<unix>(7)."
 msgstr ""
 
 #. type: TP
-#: build/C/man7/socket.7:340
+#: build/C/man7/socket.7:434
 #, no-wrap
 msgid "B<SO_PEERCRED>"
 msgstr ""
 
 #. type: Plain text
-#: build/C/man7/socket.7:360
+#: build/C/man7/socket.7:457
 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."
+"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 ""
 
 #. type: TP
-#: build/C/man7/socket.7:360
+#: build/C/man7/socket.7:457
 #, no-wrap
 msgid "B<SO_PRIORITY>"
 msgstr ""
 
 #. type: Plain text
-#: build/C/man7/socket.7:373
+#: build/C/man7/socket.7:470
 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 "
@@ -6287,13 +6910,13 @@ msgid ""
 msgstr ""
 
 #. type: TP
-#: build/C/man7/socket.7:373
+#: build/C/man7/socket.7:470
 #, no-wrap
 msgid "B<SO_PROTOCOL> (since Linux 2.6.32)"
 msgstr ""
 
 #. type: Plain text
-#: build/C/man7/socket.7:381
+#: build/C/man7/socket.7:478
 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 "
@@ -6301,14 +6924,18 @@ msgid ""
 msgstr ""
 
 #. type: TP
-#: build/C/man7/socket.7:381
+#: build/C/man7/socket.7:478
 #, no-wrap
 msgid "B<SO_RCVBUF>"
 msgstr ""
 
 #.  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" behaviour
+#.  17 July 2012
+#.  http://thread.gmane.org/gmane.linux.kernel/1328935
 #. type: Plain text
-#: build/C/man7/socket.7:396
+#: build/C/man7/socket.7:497
 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 "
@@ -6319,13 +6946,13 @@ msgid ""
 msgstr ""
 
 #. type: TP
-#: build/C/man7/socket.7:396
+#: build/C/man7/socket.7:497
 #, no-wrap
 msgid "B<SO_RCVBUFFORCE> (since Linux 2.6.14)"
 msgstr ""
 
 #. type: Plain text
-#: build/C/man7/socket.7:405
+#: build/C/man7/socket.7:506
 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 "
@@ -6333,7 +6960,7 @@ msgid ""
 msgstr ""
 
 #. type: TP
-#: build/C/man7/socket.7:405
+#: build/C/man7/socket.7:506
 #, no-wrap
 msgid "B<SO_RCVLOWAT> and B<SO_SNDLOWAT>"
 msgstr ""
@@ -6341,7 +6968,7 @@ msgstr ""
 #.  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:434
+#: build/C/man7/socket.7:535
 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 "
@@ -6355,7 +6982,7 @@ msgid ""
 msgstr ""
 
 #. type: TP
-#: build/C/man7/socket.7:434
+#: build/C/man7/socket.7:535
 #, no-wrap
 msgid "B<SO_RCVTIMEO> and B<SO_SNDTIMEO>"
 msgstr ""
@@ -6365,29 +6992,29 @@ msgstr ""
 #.  Implemented in 2.3.41 for setsockopt, and actually used.
 #.  in fact to EAGAIN
 #. type: Plain text
-#: build/C/man7/socket.7:465
+#: build/C/man7/socket.7:570
 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), and so on."
+"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 ""
 
 #. type: TP
-#: build/C/man7/socket.7:465
+#: build/C/man7/socket.7:570
 #, no-wrap
 msgid "B<SO_REUSEADDR>"
 msgstr ""
 
 #. type: Plain text
-#: build/C/man7/socket.7:480
+#: build/C/man7/socket.7:585
 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> "
@@ -6398,14 +7025,15 @@ msgid ""
 msgstr ""
 
 #. type: TP
-#: build/C/man7/socket.7:480
+#: build/C/man7/socket.7:585
 #, no-wrap
 msgid "B<SO_SNDBUF>"
 msgstr ""
 
 #.  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:495
+#: build/C/man7/socket.7:601
 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 "
@@ -6416,13 +7044,13 @@ msgid ""
 msgstr ""
 
 #. type: TP
-#: build/C/man7/socket.7:495
+#: build/C/man7/socket.7:601
 #, no-wrap
 msgid "B<SO_SNDBUFFORCE> (since Linux 2.6.14)"
 msgstr ""
 
 #. type: Plain text
-#: build/C/man7/socket.7:504
+#: build/C/man7/socket.7:610
 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 "
@@ -6430,13 +7058,13 @@ msgid ""
 msgstr ""
 
 #. type: TP
-#: build/C/man7/socket.7:504
+#: build/C/man7/socket.7:610
 #, no-wrap
 msgid "B<SO_TIMESTAMP>"
 msgstr ""
 
 #. type: Plain text
-#: build/C/man7/socket.7:520
+#: build/C/man7/socket.7:626
 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 "
@@ -6446,26 +7074,26 @@ msgid ""
 msgstr ""
 
 #. type: TP
-#: build/C/man7/socket.7:520
+#: build/C/man7/socket.7:626
 #, no-wrap
 msgid "B<SO_TYPE>"
 msgstr ""
 
 #. type: Plain text
-#: build/C/man7/socket.7:525
+#: build/C/man7/socket.7:631
 msgid ""
 "Gets the socket type as an integer (e.g., B<SOCK_STREAM>).  This socket "
 "option is read-only."
 msgstr ""
 
 #. type: SS
-#: build/C/man7/socket.7:525
+#: build/C/man7/socket.7:631
 #, no-wrap
 msgid "Signals"
 msgstr ""
 
 #. type: Plain text
-#: build/C/man7/socket.7:536
+#: build/C/man7/socket.7:642
 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 "
@@ -6474,7 +7102,7 @@ msgid ""
 msgstr ""
 
 #. type: Plain text
-#: build/C/man7/socket.7:561
+#: build/C/man7/socket.7:667
 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 "
@@ -6485,9 +7113,9 @@ msgid ""
 "its I<siginfo_t>.  See B<fcntl>(2)  for more information."
 msgstr ""
 
-#.  .SS Ancillary Messages
+#.  .SS Ancillary messages
 #. type: Plain text
-#: build/C/man7/socket.7:569
+#: build/C/man7/socket.7:675
 msgid ""
 "Under some circumstances (e.g., multiple processes accessing a single "
 "socket), the condition that caused the B<SIGIO> may have already disappeared "
@@ -6496,117 +7124,117 @@ msgid ""
 msgstr ""
 
 #. type: SS
-#: build/C/man7/socket.7:569
+#: build/C/man7/socket.7:675
 #, no-wrap
 msgid "/proc interfaces"
 msgstr ""
 
 #. type: Plain text
-#: build/C/man7/socket.7:573
+#: build/C/man7/socket.7:679
 msgid ""
 "The core socket networking parameters can be accessed via files in the "
 "directory I</proc/sys/net/core/>."
 msgstr ""
 
 #. type: TP
-#: build/C/man7/socket.7:573
+#: build/C/man7/socket.7:679
 #, no-wrap
 msgid "I<rmem_default>"
 msgstr ""
 
 #. type: Plain text
-#: build/C/man7/socket.7:576
+#: build/C/man7/socket.7:682
 msgid "contains the default setting in bytes of the socket receive buffer."
 msgstr ""
 
 #. type: TP
-#: build/C/man7/socket.7:576
+#: build/C/man7/socket.7:682
 #, no-wrap
 msgid "I<rmem_max>"
 msgstr ""
 
 #. type: Plain text
-#: build/C/man7/socket.7:582
+#: build/C/man7/socket.7:688
 msgid ""
 "contains the maximum socket receive buffer size in bytes which a user may "
 "set by using the B<SO_RCVBUF> socket option."
 msgstr ""
 
 #. type: TP
-#: build/C/man7/socket.7:582
+#: build/C/man7/socket.7:688
 #, no-wrap
 msgid "I<wmem_default>"
 msgstr ""
 
 #. type: Plain text
-#: build/C/man7/socket.7:585
+#: build/C/man7/socket.7:691
 msgid "contains the default setting in bytes of the socket send buffer."
 msgstr ""
 
 #. type: TP
-#: build/C/man7/socket.7:585
+#: build/C/man7/socket.7:691
 #, no-wrap
 msgid "I<wmem_max>"
 msgstr ""
 
 #. type: Plain text
-#: build/C/man7/socket.7:591
+#: build/C/man7/socket.7:697
 msgid ""
 "contains the maximum socket send buffer size in bytes which a user may set "
 "by using the B<SO_SNDBUF> socket option."
 msgstr ""
 
 #. type: TP
-#: build/C/man7/socket.7:591
+#: build/C/man7/socket.7:697
 #, no-wrap
 msgid "I<message_cost> and I<message_burst>"
 msgstr ""
 
 #. type: Plain text
-#: build/C/man7/socket.7:595
+#: build/C/man7/socket.7:701
 msgid ""
 "configure the token bucket filter used to load limit warning messages caused "
 "by external network events."
 msgstr ""
 
 #. type: TP
-#: build/C/man7/socket.7:595
+#: build/C/man7/socket.7:701
 #, no-wrap
 msgid "I<netdev_max_backlog>"
 msgstr ""
 
 #. type: Plain text
-#: build/C/man7/socket.7:598
+#: build/C/man7/socket.7:704
 msgid "Maximum number of packets in the global input queue."
 msgstr ""
 
 #. type: TP
-#: build/C/man7/socket.7:598
+#: build/C/man7/socket.7:704
 #, no-wrap
 msgid "I<optmem_max>"
 msgstr ""
 
 #.  netdev_fastroute is not documented because it is experimental
 #. type: Plain text
-#: build/C/man7/socket.7:603
+#: build/C/man7/socket.7:709
 msgid ""
 "Maximum length of ancillary data and user control data like the iovecs per "
 "socket."
 msgstr ""
 
 #. type: SS
-#: build/C/man7/socket.7:603
+#: build/C/man7/socket.7:709
 #, no-wrap
 msgid "Ioctls"
 msgstr ""
 
 #. type: Plain text
-#: build/C/man7/socket.7:606
+#: build/C/man7/socket.7:712
 msgid "These operations can be accessed using B<ioctl>(2):"
 msgstr ""
 
 #. type: Plain text
-#: build/C/man7/socket.7:610
+#: build/C/man7/socket.7:716
 #, no-wrap
 msgid ""
 "I<error>B< = ioctl(>I<ip_socket>B<, >I<ioctl_type>B<, "
@@ -6614,13 +7242,13 @@ msgid ""
 msgstr ""
 
 #. type: TP
-#: build/C/man7/socket.7:612
+#: build/C/man7/socket.7:718
 #, no-wrap
 msgid "B<SIOCGSTAMP>"
 msgstr ""
 
 #. type: Plain text
-#: build/C/man7/socket.7:636
+#: build/C/man7/socket.7:742
 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 "
@@ -6633,13 +7261,13 @@ msgid ""
 msgstr ""
 
 #. type: TP
-#: build/C/man7/socket.7:636
+#: build/C/man7/socket.7:742
 #, no-wrap
 msgid "B<SIOCSPGRP>"
 msgstr ""
 
 #. type: Plain text
-#: build/C/man7/socket.7:655
+#: build/C/man7/socket.7:761
 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 "
@@ -6652,13 +7280,13 @@ msgid ""
 msgstr ""
 
 #. type: TP
-#: build/C/man7/socket.7:655
+#: build/C/man7/socket.7:761
 #, no-wrap
 msgid "B<FIOASYNC>"
 msgstr ""
 
 #. type: Plain text
-#: build/C/man7/socket.7:665
+#: build/C/man7/socket.7:771
 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 "
@@ -6666,54 +7294,54 @@ msgid ""
 msgstr ""
 
 #. type: Plain text
-#: build/C/man7/socket.7:673
+#: build/C/man7/socket.7:779
 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.)"
 msgstr ""
 
 #. type: TP
-#: build/C/man7/socket.7:673
+#: build/C/man7/socket.7:779
 #, no-wrap
 msgid "B<SIOCGPGRP>"
 msgstr ""
 
 #. type: Plain text
-#: build/C/man7/socket.7:682
+#: build/C/man7/socket.7:788
 msgid ""
 "Get the current process or process group that receives B<SIGIO> or B<SIGURG> "
 "signals, or 0 when none is set."
 msgstr ""
 
 #. type: Plain text
-#: build/C/man7/socket.7:686
+#: build/C/man7/socket.7:792
 msgid "Valid B<fcntl>(2)  operations:"
 msgstr ""
 
 #. type: TP
-#: build/C/man7/socket.7:686
+#: build/C/man7/socket.7:792
 #, no-wrap
 msgid "B<FIOGETOWN>"
 msgstr ""
 
 #. type: Plain text
-#: build/C/man7/socket.7:691
+#: build/C/man7/socket.7:797
 msgid "The same as the B<SIOCGPGRP> B<ioctl>(2)."
 msgstr ""
 
 #. type: TP
-#: build/C/man7/socket.7:691
+#: build/C/man7/socket.7:797
 #, no-wrap
 msgid "B<FIOSETOWN>"
 msgstr ""
 
 #. type: Plain text
-#: build/C/man7/socket.7:696
+#: build/C/man7/socket.7:802
 msgid "The same as the B<SIOCSPGRP> B<ioctl>(2)."
 msgstr ""
 
 #. type: Plain text
-#: build/C/man7/socket.7:710
+#: build/C/man7/socket.7:816
 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.  "
@@ -6723,7 +7351,7 @@ msgid ""
 msgstr ""
 
 #. type: Plain text
-#: build/C/man7/socket.7:715
+#: build/C/man7/socket.7:821
 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 "
@@ -6731,7 +7359,7 @@ msgid ""
 msgstr ""
 
 #. type: Plain text
-#: build/C/man7/socket.7:728
+#: build/C/man7/socket.7:834
 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 "
@@ -6745,7 +7373,7 @@ msgstr ""
 #.  .SH AUTHORS
 #.  This man page was written by Andi Kleen.
 #. type: Plain text
-#: build/C/man7/socket.7:741
+#: build/C/man7/socket.7:847
 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 "
@@ -6753,36 +7381,37 @@ msgid ""
 msgstr ""
 
 #. type: Plain text
-#: build/C/man7/socket.7:752
+#: build/C/man7/socket.7:859
 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<getsockopt>(2), B<connect>(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 ""
 
 #. type: TH
-#: build/C/man2/socketcall.2:26
+#: build/C/man2/socketcall.2:25
 #, no-wrap
 msgid "SOCKETCALL"
 msgstr ""
 
 #. type: TH
-#: build/C/man2/socketcall.2:26
+#: build/C/man2/socketcall.2:25
 #, no-wrap
-msgid "2007-06-28"
+msgid "2012-10-16"
 msgstr ""
 
 #. type: Plain text
-#: build/C/man2/socketcall.2:29
+#: build/C/man2/socketcall.2:28
 msgid "socketcall - socket system calls"
 msgstr ""
 
 #. 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 ""
 
 #. 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 "
@@ -6791,7 +7420,7 @@ msgid ""
 msgstr ""
 
 #. 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 "
@@ -6799,22 +7428,22 @@ msgid ""
 msgstr ""
 
 #. 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."
 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 ""
 
 #. type: Plain text
-#: build/C/man2/socketcall.2:72
+#: 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), "
@@ -6823,31 +7452,31 @@ msgid ""
 msgstr ""
 
 #. type: TH
-#: build/C/man2/socketpair.2:40
+#: build/C/man2/socketpair.2:42
 #, no-wrap
 msgid "SOCKETPAIR"
 msgstr ""
 
 #. type: TH
-#: build/C/man2/socketpair.2:40
+#: build/C/man2/socketpair.2:42
 #, no-wrap
 msgid "2008-10-11"
 msgstr ""
 
 #. type: Plain text
-#: build/C/man2/socketpair.2:43
+#: build/C/man2/socketpair.2:45
 msgid "socketpair - create a pair of connected sockets"
 msgstr ""
 
 #. 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]);>"
 msgstr ""
 
 #. 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 "
@@ -6856,41 +7485,41 @@ msgid ""
 msgstr ""
 
 #. 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 ""
 
 #. 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 ""
 
 #. 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 ""
 
 #. 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 ""
 
 #. 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 "
@@ -6898,7 +7527,7 @@ msgid ""
 msgstr ""
 
 #. 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 "
@@ -6906,13 +7535,13 @@ msgid ""
 msgstr ""
 
 #. 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)."
 msgstr ""
 
 #. type: Plain text
-#: build/C/man2/socketpair.2:129
+#: 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 ""