diff --git a/Doc/library/select.rst b/Doc/library/select.rst index 6dbf16f8347..bffb9cba758 100644 --- a/Doc/library/select.rst +++ b/Doc/library/select.rst @@ -94,6 +94,15 @@ The module defines the following: library, and does not handle file descriptors that don't originate from WinSock. +.. attribute:: select.PIPE_BUF + + Files reported as ready for writing by :func:`select`, :func:`poll` or + similar interfaces in this module are guaranteed to not block on a write + of up to :const:`PIPE_BUF` bytes. + This value is guaranteed by POSIX to be at least 512. + + .. versionadded:: 2.7 + .. _epoll-objects: diff --git a/Modules/selectmodule.c b/Modules/selectmodule.c index 191296e0d9e..085537513b2 100644 --- a/Modules/selectmodule.c +++ b/Modules/selectmodule.c @@ -1764,6 +1764,8 @@ PyInit_select(void) Py_INCREF(SelectError); PyModule_AddObject(m, "error", SelectError); + PyModule_AddIntConstant(m, "PIPE_BUF", PIPE_BUF); + #if defined(HAVE_POLL) #ifdef __APPLE__ if (select_have_broken_poll()) {