cpython/Modules
Miss Islington (bot) 123f6c4914
bpo-37811: FreeBSD, OSX: fix poll(2) usage in sockets module (GH-15202)
FreeBSD implementation of poll(2) restricts the timeout argument to be
either zero, or positive, or equal to INFTIM (-1).

Unless otherwise overridden, socket timeout defaults to -1. This value
is then converted to milliseconds (-1000) and used as argument to the
poll syscall. poll returns EINVAL (22), and the connection fails.

This bug was discovered during the EINTR handling testing, and the
reproduction code can be found in
https://bugs.python.org/issue23618 (see connect_eintr.py,
attached). On GNU/Linux, the example runs as expected.

This change is trivial:
If the supplied timeout value is negative, truncate it to -1.
(cherry picked from commit 2814620657)

Co-authored-by: Artem Khramov <akhramov@pm.me>
2019-08-14 14:47:43 -07:00
..
_blake2 bpo-36974: tp_print -> tp_vectorcall_offset and tp_reserved -> tp_as_async (GH-13464) 2019-05-30 19:13:39 -07:00
_ctypes [3.8] bpo-37188: Fix a divide-by-zero in arrays of size-0 objects (#13911) 2019-06-08 11:46:53 +02:00
_decimal bpo-36974: tp_print -> tp_vectorcall_offset and tp_reserved -> tp_as_async (GH-13464) 2019-05-30 19:13:39 -07:00
_io Fix the error handling in bytesio_sizeof(). (GH-10459) 2019-06-02 00:07:45 +03:00
_multiprocessing bpo-36974: tp_print -> tp_vectorcall_offset and tp_reserved -> tp_as_async (GH-13464) 2019-05-30 19:13:39 -07:00
_sha3 bpo-36974: tp_print -> tp_vectorcall_offset and tp_reserved -> tp_as_async (GH-13464) 2019-05-30 19:13:39 -07:00
_sqlite closes bpo-37347: Fix refcount problem in sqlite3. (GH-14268) 2019-07-12 20:33:53 -07:00
_ssl bpo-34271: Fix compatibility with 1.0.2 (GH-13728) 2019-06-03 20:40:15 +02:00
_xxtestfuzz [3.8] Fix typos in docs, comments and test assert messages (GH-14872). (#14900) 2019-07-21 22:48:45 -04:00
cjkcodecs bpo-36974: tp_print -> tp_vectorcall_offset and tp_reserved -> tp_as_async (GH-13464) 2019-05-30 19:13:39 -07:00
clinic Delete leftover clinic-generated file for C zipimport. (GH-15174) 2019-08-10 00:37:35 -07:00
expat Put pyexpatns.h include back. bpo-37437 (GH-14539) 2019-07-01 22:26:40 -07:00
_abc.c Fix some typos (GH-14435) 2019-07-05 15:00:43 -07:00
_asynciomodule.c bpo-36999: Add asyncio.Task.get_coro() (GH-13680) 2019-05-30 08:30:09 -07:00
_bisectmodule.c bpo-33012: Fix invalid function cast warnings with gcc 8. (GH-6749) 2018-11-27 13:27:31 +02:00
_bz2module.c bpo-36974: tp_print -> tp_vectorcall_offset and tp_reserved -> tp_as_async (GH-13464) 2019-05-30 19:13:39 -07:00
_codecsmodule.c bpo-36297: remove "unicode_internal" codec (GH-12342) 2019-03-18 15:44:11 +09:00
_collectionsmodule.c bpo-37165: Convert _count_elements to the argument clinic (GH-13848) 2019-06-05 16:20:58 -07:00
_contextvarsmodule.c bpo-34762: Fix contextvars C API to use PyObject* pointer types. (GH-9473) 2018-09-21 15:33:56 -04:00
_cryptmodule.c bpo-28503: Use crypt_r() when available instead of crypt() (GH-11373) 2018-12-30 15:42:32 -08:00
_csv.c Fix name of '\0'. (GH-14222) 2019-06-18 21:55:59 -07:00
_curses_panel.c bpo-35810: Incref heap-allocated types in PyObject_Init (GH-11661) 2019-03-27 12:52:18 +01:00
_cursesmodule.c bpo-37738: Fix curses addch(str, color_pair) (GH-15071) 2019-08-14 03:49:13 -07:00
_datetimemodule.c bpo-37685: Fixed comparisons of datetime.timedelta and datetime.timezone. (GH-14996) 2019-08-04 03:01:55 -07:00
_dbmmodule.c bpo-36974: tp_print -> tp_vectorcall_offset and tp_reserved -> tp_as_async (GH-13464) 2019-05-30 19:13:39 -07:00
_elementtree.c [3.8] bpo-37399: Correctly attach tail text to the last element/comment/pi (GH-14856) (GH-14936) 2019-07-24 20:46:01 +02:00
_functoolsmodule.c bpo-34303: Micro-optimizations in functools.reduce() (GH-8598) 2019-06-01 13:32:17 -07:00
_gdbmmodule.c bpo-36974: tp_print -> tp_vectorcall_offset and tp_reserved -> tp_as_async (GH-13464) 2019-05-30 19:13:39 -07:00
_hashopenssl.c bpo-36974: tp_print -> tp_vectorcall_offset and tp_reserved -> tp_as_async (GH-13464) 2019-05-30 19:13:39 -07:00
_heapqmodule.c bpo-34797: Convert heapq to the argument clinic (GH-9560) 2018-09-28 12:39:43 -07:00
_json.c bpo-37587: Make json.loads faster for long strings (GH-14752) 2019-07-30 07:37:28 -07:00
_localemodule.c bpo-36254: Fix invalid uses of %d in format strings in C. (GH-12264) 2019-03-13 22:59:55 +02:00
_lsprof.c bpo-36974: tp_print -> tp_vectorcall_offset and tp_reserved -> tp_as_async (GH-13464) 2019-05-30 19:13:39 -07:00
_lzmamodule.c bpo-36974: tp_print -> tp_vectorcall_offset and tp_reserved -> tp_as_async (GH-13464) 2019-05-30 19:13:39 -07:00
_math.c
_math.h
_opcode.c bpo-32455: Add jump parameter to dis.stack_effect(). (GH-6610) 2018-09-18 09:54:26 +03:00
_operator.c bpo-36974: tp_print -> tp_vectorcall_offset and tp_reserved -> tp_as_async (GH-13464) 2019-05-30 19:13:39 -07:00
_pickle.c bpo-37502: handle default parameter for buffers argument of pickle.loads correctly (GH-14593) 2019-07-25 09:18:20 -07:00
_posixsubprocess.c bpo-35550: Fix incorrect Solaris define guards (GH-11275) 2018-12-30 18:16:40 -08:00
_queuemodule.c bpo-36974: tp_print -> tp_vectorcall_offset and tp_reserved -> tp_as_async (GH-13464) 2019-05-30 19:13:39 -07:00
_randommodule.c bpo-36974: tp_print -> tp_vectorcall_offset and tp_reserved -> tp_as_async (GH-13464) 2019-05-30 19:13:39 -07:00
_scproxy.c closes bpo-31903: Release the GIL when calling into SystemConfiguration (GH-4178) 2018-09-11 16:14:00 -07:00
_sre.c bpo-36974: tp_print -> tp_vectorcall_offset and tp_reserved -> tp_as_async (GH-13464) 2019-05-30 19:13:39 -07:00
_ssl.c bpo-37120: Fix _ssl get_num_tickets() (GH-14668) 2019-07-09 05:42:49 -07:00
_ssl_data.h
_stat.c
_struct.c bpo-36974: tp_print -> tp_vectorcall_offset and tp_reserved -> tp_as_async (GH-13464) 2019-05-30 19:13:39 -07:00
_testbuffer.c bpo-36974: tp_print -> tp_vectorcall_offset and tp_reserved -> tp_as_async (GH-13464) 2019-05-30 19:13:39 -07:00
_testcapimodule.c [3.8] bpo-37250: put back tp_print for backwards compatibility (GH-14193) 2019-06-25 12:58:58 +02:00
_testimportmultiple.c
_testinternalcapi.c bpo-36763: Implement the PEP 587 (GH-13592) 2019-05-27 16:39:22 +02:00
_testmultiphase.c bpo-32388: Remove cross-version binary compatibility requirement in tp_flags (GH-4944) 2019-05-29 22:12:38 +02:00
_threadmodule.c Revert "bpo-36818: Add PyInterpreterState.runtime field. (gh-13129)" (GH-13795) 2019-06-04 03:15:09 +02:00
_tkinter.c bpo-35810: Incref heap-allocated types in PyObject_Init (GH-11661) 2019-03-27 12:52:18 +01:00
_tracemalloc.c bpo-35134: Split traceback.h header (GH-13430) 2019-05-20 00:14:57 +02:00
_uuidmodule.c bpo-32627: Fix compile error when conflicting _uuid headers included (GH-11751) 2019-06-24 11:27:57 -07:00
_weakref.c
_winapi.c bpo-36974: tp_print -> tp_vectorcall_offset and tp_reserved -> tp_as_async (GH-13464) 2019-05-30 19:13:39 -07:00
_xxsubinterpretersmodule.c bpo-36974: tp_print -> tp_vectorcall_offset and tp_reserved -> tp_as_async (GH-13464) 2019-05-30 19:13:39 -07:00
addrinfo.h
arraymodule.c bpo-36974: tp_print -> tp_vectorcall_offset and tp_reserved -> tp_as_async (GH-13464) 2019-05-30 19:13:39 -07:00
atexitmodule.c bpo-33012: Fix invalid function cast warnings with gcc 8. (GH-6749) 2018-11-27 13:27:31 +02:00
audioop.c bpo-33781: audioop: enhance rounding double as int (GH-7447) 2018-06-06 15:50:50 +02:00
binascii.c bpo-22385: Support output separators in hex methods. (#13578) 2019-05-29 11:46:58 -07:00
cmathmodule.c bpo-36908: 'This module is always available' isn't helpful. (#13297) 2019-05-17 15:29:13 +05:30
config.c.in
errnomodule.c
faulthandler.c bpo-36763: Implement the PEP 587 (GH-13592) 2019-05-27 16:39:22 +02:00
fcntlmodule.c bpo-26835: Add file sealing constants to fcntl (GH-13694) 2019-05-31 18:32:33 +02:00
gc_weakref.txt
gcmodule.c bpo-37729: gc: write stats at once (GH-15050) 2019-08-05 16:20:25 +09:00
getaddrinfo.c
getbuildinfo.c
getnameinfo.c
getpath.c bpo-36763: Implement the PEP 587 (GH-13592) 2019-05-27 16:39:22 +02:00
grpmodule.c bpo-34604: Use %R because of invisible characters or trailing whitespaces. (GH-9165) 2018-12-05 21:10:18 +02:00
hashlib.h
hashtable.c bpo-36594: Fix incorrect use of %p in format strings (GH-12769) 2019-05-06 12:56:50 -04:00
hashtable.h
itertoolsmodule.c bpo-36974: tp_print -> tp_vectorcall_offset and tp_reserved -> tp_as_async (GH-13464) 2019-05-30 19:13:39 -07:00
ld_so_aix.in
main.c bpo-37363: Add audit events on startup for the run commands (GH-14524) 2019-07-01 16:22:29 -07:00
makesetup closes bpo-34212: Build core extension modules with Py_BUILD_CORE_BUILTIN. (GH-8712) 2018-11-26 20:21:31 -06:00
makexp_aix
mathmodule.c bpo-37691: Let math.dist() accept sequences and iterables for coordinates (GH-14975) (GH-14984) 2019-07-27 14:26:58 -07:00
md5module.c bpo-36974: tp_print -> tp_vectorcall_offset and tp_reserved -> tp_as_async (GH-13464) 2019-05-30 19:13:39 -07:00
mmapmodule.c bpo-37316: mmap.mmap() passes the wrong variable to PySys_Audit() (GH-14152) 2019-06-21 09:45:13 -07:00
nismodule.c bpo-35356: Fix a possible reference leak in nis.maps(). (GH-10808) 2018-11-30 09:40:16 +02:00
ossaudiodev.c bpo-36974: tp_print -> tp_vectorcall_offset and tp_reserved -> tp_as_async (GH-13464) 2019-05-30 19:13:39 -07:00
overlapped.c bpo-36974: tp_print -> tp_vectorcall_offset and tp_reserved -> tp_as_async (GH-13464) 2019-05-30 19:13:39 -07:00
parsermodule.c bpo-37253: Add _PyCompilerFlags_INIT macro (GH-14018) 2019-06-12 17:36:03 -07:00
posixmodule.c bpo-37412: Fix os.getcwd() for long path on Windows (GH-14424) (GH-14451) 2019-06-28 18:23:06 +02:00
posixmodule.h bpo-33441: Make the sigset_t converter available in other modules. (GH-6720) 2018-05-08 07:48:50 +03:00
pwdmodule.c bpo-34604: Use %R because of invisible characters or trailing whitespaces. (GH-9165) 2018-12-05 21:10:18 +02:00
pyexpat.c bpo-36974: tp_print -> tp_vectorcall_offset and tp_reserved -> tp_as_async (GH-13464) 2019-05-30 19:13:39 -07:00
readline.c bpo-35441: Remove dead and buggy code related to PyList_SetItem(). (GH-11033) 2018-12-08 16:16:55 +02:00
README
resource.c bpo-34674: Assume unistd.h exists on Unix. (GH-9290) 2018-09-13 21:57:31 -07:00
rotatingtree.c
rotatingtree.h
selectmodule.c bpo-36974: tp_print -> tp_vectorcall_offset and tp_reserved -> tp_as_async (GH-13464) 2019-05-30 19:13:39 -07:00
Setup closes bpo-35184: Fix XML_POOR_ENTROPY option that breaks makesetup parsing of pyexpat line in Setup. (GH-13064) 2019-06-10 19:14:23 -07:00
sha1module.c bpo-36974: tp_print -> tp_vectorcall_offset and tp_reserved -> tp_as_async (GH-13464) 2019-05-30 19:13:39 -07:00
sha256module.c bpo-36974: tp_print -> tp_vectorcall_offset and tp_reserved -> tp_as_async (GH-13464) 2019-05-30 19:13:39 -07:00
sha512module.c bpo-36974: tp_print -> tp_vectorcall_offset and tp_reserved -> tp_as_async (GH-13464) 2019-05-30 19:13:39 -07:00
signalmodule.c Revert "bpo-33608: Factor out a private, per-interpreter _Py_AddPendingCall(). (gh-13714)" (GH-13780) 2019-06-03 18:14:24 +02:00
socketmodule.c bpo-37811: FreeBSD, OSX: fix poll(2) usage in sockets module (GH-15202) 2019-08-14 14:47:43 -07:00
socketmodule.h bpo-31425: Expose AF_QIPCRTR in socket module (GH-3706) 2018-09-26 16:47:52 +03:00
spwdmodule.c
sre.h
sre_constants.h
sre_lib.h bpo-34294: re module, fix wrong capturing groups in rare cases. (GH-11546) 2019-02-18 15:26:37 +02:00
symtablemodule.c bpo-37253: Add _PyCompilerFlags_INIT macro (GH-14018) 2019-06-12 17:36:03 -07:00
syslogmodule.c bpo-33012: Fix invalid function cast warnings with gcc 8. (GH-6749) 2018-11-27 13:27:31 +02:00
termios.c Fix a possible "double decref" in termios.tcgetattr(). (GH-10194) 2018-10-29 06:55:20 +02:00
testcapi_long.h
timemodule.c bpo-36779: time.tzname returns empty string on Windows if default cod… (GH-13073) (GH-14032) 2019-06-13 15:22:51 +02:00
tkappinit.c
tkinter.h
unicodedata.c bpo-36974: tp_print -> tp_vectorcall_offset and tp_reserved -> tp_as_async (GH-13464) 2019-05-30 19:13:39 -07:00
unicodedata_db.h closes bpo-36861: Update Unicode database to 12.1.0. (GH-13214) 2019-05-08 20:59:35 -07:00
unicodename_db.h closes bpo-36861: Update Unicode database to 12.1.0. (GH-13214) 2019-05-08 20:59:35 -07:00
winreparse.h bpo-31512: Add non-elevated symlink support for Windows (GH-3652) 2019-04-09 11:19:46 -07:00
xxlimited.c bpo-32388: Remove cross-version binary compatibility requirement in tp_flags (GH-4944) 2019-05-29 22:12:38 +02:00
xxmodule.c bpo-36974: tp_print -> tp_vectorcall_offset and tp_reserved -> tp_as_async (GH-13464) 2019-05-30 19:13:39 -07:00
xxsubtype.c bpo-36974: tp_print -> tp_vectorcall_offset and tp_reserved -> tp_as_async (GH-13464) 2019-05-30 19:13:39 -07:00
zlibmodule.c bpo-36974: tp_print -> tp_vectorcall_offset and tp_reserved -> tp_as_async (GH-13464) 2019-05-30 19:13:39 -07:00

Source files for standard library extension modules,
and former extension modules that are now builtin modules.