Patch #849595: Add socket.shutdown() constants.
This commit is contained in:
parent
04bf7241e4
commit
94681fc4a3
|
@ -638,8 +638,8 @@ structures as strings).
|
|||
|
||||
\begin{methoddesc}[socket]{shutdown}{how}
|
||||
Shut down one or both halves of the connection. If \var{how} is
|
||||
\code{0}, further receives are disallowed. If \var{how} is \code{1},
|
||||
further sends are disallowed. If \var{how} is \code{2}, further sends
|
||||
\constant{SHUT_RD}, further receives are disallowed. If \var{how} is \constant{SHUT_WR},
|
||||
further sends are disallowed. If \var{how} is \constant{SHUT_RDWR}, further sends
|
||||
and receives are disallowed.
|
||||
\end{methoddesc}
|
||||
|
||||
|
|
|
@ -95,6 +95,8 @@ Core and builtins
|
|||
Extension modules
|
||||
-----------------
|
||||
|
||||
- socket.SHUT_{RD,WR,RDWR} was added.
|
||||
|
||||
- os.getsid was added.
|
||||
|
||||
- The pwd module incorrectly advertised its struct type as
|
||||
|
|
|
@ -2097,8 +2097,8 @@ sock_shutdown(PySocketSockObject *s, PyObject *arg)
|
|||
PyDoc_STRVAR(shutdown_doc,
|
||||
"shutdown(flag)\n\
|
||||
\n\
|
||||
Shut down the reading side of the socket (flag == 0), the writing side\n\
|
||||
of the socket (flag == 1), or both ends (flag == 2).");
|
||||
Shut down the reading side of the socket (flag == SHUT_RD), the writing side\n\
|
||||
of the socket (flag == SHUT_WR), or both ends (flag == SHUT_RDWR).");
|
||||
|
||||
|
||||
/* List of methods for socket objects */
|
||||
|
@ -4101,6 +4101,29 @@ init_socket(void)
|
|||
PyModule_AddIntConstant(m, "NI_DGRAM", NI_DGRAM);
|
||||
#endif
|
||||
|
||||
/* shutdown() parameters */
|
||||
#ifdef SHUT_RD
|
||||
PyModule_AddIntConstant(m, "SHUT_RD", SHUT_RD);
|
||||
#elif defined(SD_RECEIVE)
|
||||
PyModule_AddIntConstant(m, "SHUT_RD", SD_RECEIVE);
|
||||
#else
|
||||
PyModule_AddIntConstant(m, "SHUT_RD", 0);
|
||||
#endif
|
||||
#ifdef SHUT_WR
|
||||
PyModule_AddIntConstant(m, "SHUT_WR", SHUT_WR);
|
||||
#elif defined(SD_SEND)
|
||||
PyModule_AddIntConstant(m, "SHUT_WR", SD_SEND);
|
||||
#else
|
||||
PyModule_AddIntConstant(m, "SHUT_WR", 1);
|
||||
#endif
|
||||
#ifdef SHUT_RDWR
|
||||
PyModule_AddIntConstant(m, "SHUT_RDWR", SHUT_RDWR);
|
||||
#elif defined(SD_BOTH)
|
||||
PyModule_AddIntConstant(m, "SHUT_RDWR", SD_BOTH);
|
||||
#else
|
||||
PyModule_AddIntConstant(m, "SHUT_RDWR", 2);
|
||||
#endif
|
||||
|
||||
/* Initialize gethostbyname lock */
|
||||
#if defined(USE_GETHOSTBYNAME_LOCK) || defined(USE_GETADDRINFO_LOCK)
|
||||
netdb_lock = PyThread_allocate_lock();
|
||||
|
|
Loading…
Reference in New Issue