[Python-checkins] r43523 - in python/trunk: Doc/lib/libsocket.tex Modules/socketmodule.c (original) (raw)

georg.brandl python-checkins at python.org
Sat Apr 1 09:33:18 CEST 2006


Author: georg.brandl Date: Sat Apr 1 09:33:08 2006 New Revision: 43523

Modified: python/trunk/Doc/lib/libsocket.tex python/trunk/Modules/socketmodule.c Log: Bug #1460564: document that socket.fromfd() duplicates the given file descriptor.

Modified: python/trunk/Doc/lib/libsocket.tex

--- python/trunk/Doc/lib/libsocket.tex (original) +++ python/trunk/Doc/lib/libsocket.tex Sat Apr 1 09:33:08 2006 @@ -317,10 +317,11 @@ \end{funcdesc}

\begin{funcdesc}{fromfd}{fd, family, type\optional{, proto}} -Build a socket object from an existing file descriptor (an integer as -returned by a file object's \method{fileno()} method). Address family, -socket type and protocol number are as for the \function{socket()} function -above. The file descriptor should refer to a socket, but this is not +Duplicate the file descriptor \var{fd} (an integer as returned by a file +object's \method{fileno()} method) and build a socket object from the +result. Address family, socket type and protocol number are as for the +\function{socket()} function above. +The file descriptor should refer to a socket, but this is not checked --- subsequent operations on the object may fail if the file descriptor is invalid. This function is rarely needed, but can be used to get or set socket options on a socket passed to a program as

Modified: python/trunk/Modules/socketmodule.c

--- python/trunk/Modules/socketmodule.c (original) +++ python/trunk/Modules/socketmodule.c Sat Apr 1 09:33:08 2006 @@ -3168,7 +3168,8 @@ PyDoc_STRVAR(fromfd_doc, "fromfd(fd, family, type[, proto]) -> socket object\n
\n
-Create a socket object from the given file descriptor.\n
+Create a socket object from a duplicate of the given\n
+file descriptor.\n
The remaining arguments are the same as for socket().");

#endif /* NO_DUP / @@ -4052,7 +4053,7 @@ PyModule_AddIntConstant(m, "NETLINK_IP6_FW", NETLINK_IP6_FW); PyModule_AddIntConstant(m, "NETLINK_DNRTMSG", NETLINK_DNRTMSG); PyModule_AddIntConstant(m, "NETLINK_TAPBASE", NETLINK_TAPBASE); -#endif +#endif / AF_NETLINK / #ifdef AF_ROUTE / Alias to emulate 4.4BSD */ PyModule_AddIntConstant(m, "AF_ROUTE", AF_ROUTE);



More information about the Python-checkins mailing list