Staging
v0.5.1
v0.5.1
Revision 123f6c4914827c4ced65d032fab74de62db31cd6 authored by Miss Islington (bot) on 14 August 2019, 21:47:43 UTC, committed by GitHub on 14 August 2019, 21:47:43 UTC
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 28146206578ebe1b84b48e6f255738a227058c04) Co-authored-by: Artem Khramov <akhramov@pm.me>
1 parent 557802d
File | Mode | Size |
---|---|---|
clinic | ||
Python-ast.c | -rw-r--r-- | 283.8 KB |
README | -rw-r--r-- | 62 bytes |
_warnings.c | -rw-r--r-- | 37.1 KB |
asdl.c | -rw-r--r-- | 1.4 KB |
ast.c | -rw-r--r-- | 188.0 KB |
ast_opt.c | -rw-r--r-- | 23.4 KB |
ast_unparse.c | -rw-r--r-- | 24.6 KB |
bltinmodule.c | -rw-r--r-- | 83.1 KB |
bootstrap_hash.c | -rw-r--r-- | 17.3 KB |
ceval.c | -rw-r--r-- | 176.0 KB |
ceval_gil.h | -rw-r--r-- | 8.4 KB |
codecs.c | -rw-r--r-- | 44.9 KB |
compile.c | -rw-r--r-- | 169.1 KB |
condvar.h | -rw-r--r-- | 8.4 KB |
context.c | -rw-r--r-- | 29.7 KB |
dtoa.c | -rw-r--r-- | 77.8 KB |
dup2.c | -rw-r--r-- | 759 bytes |
dynamic_annotations.c | -rw-r--r-- | 6.6 KB |
dynload_aix.c | -rw-r--r-- | 5.7 KB |
dynload_dl.c | -rw-r--r-- | 581 bytes |
dynload_hpux.c | -rw-r--r-- | 1.9 KB |
dynload_shlib.c | -rw-r--r-- | 3.4 KB |
dynload_stub.c | -rw-r--r-- | 186 bytes |
dynload_win.c | -rw-r--r-- | 10.3 KB |
errors.c | -rw-r--r-- | 43.4 KB |
fileutils.c | -rw-r--r-- | 52.0 KB |
formatter_unicode.c | -rw-r--r-- | 50.3 KB |
frozen.c | -rw-r--r-- | 1.8 KB |
frozenmain.c | -rw-r--r-- | 3.2 KB |
future.c | -rw-r--r-- | 4.7 KB |
getargs.c | -rw-r--r-- | 85.2 KB |
getcompiler.c | -rw-r--r-- | 538 bytes |
getcopyright.c | -rw-r--r-- | 511 bytes |
getopt.c | -rw-r--r-- | 4.6 KB |
getplatform.c | -rw-r--r-- | 133 bytes |
getversion.c | -rw-r--r-- | 308 bytes |
graminit.c | -rw-r--r-- | 53.2 KB |
hamt.c | -rw-r--r-- | 79.0 KB |
import.c | -rw-r--r-- | 65.9 KB |
importdl.c | -rw-r--r-- | 7.3 KB |
importdl.h | -rw-r--r-- | 487 bytes |
importlib.h | -rw-r--r-- | 94.2 KB |
importlib_external.h | -rw-r--r-- | 151.4 KB |
importlib_zipimport.h | -rw-r--r-- | 57.8 KB |
initconfig.c | -rw-r--r-- | 69.9 KB |
makeopcodetargets.py | -rwxr-xr-x | 1.6 KB |
marshal.c | -rw-r--r-- | 48.4 KB |
modsupport.c | -rw-r--r-- | 17.6 KB |
mysnprintf.c | -rw-r--r-- | 3.3 KB |
mystrtoul.c | -rw-r--r-- | 8.1 KB |
opcode_targets.h | -rw-r--r-- | 6.3 KB |
pathconfig.c | -rw-r--r-- | 19.3 KB |
peephole.c | -rw-r--r-- | 19.0 KB |
preconfig.c | -rw-r--r-- | 24.3 KB |
pyarena.c | -rw-r--r-- | 5.5 KB |
pyctype.c | -rw-r--r-- | 7.7 KB |
pyfpe.c | -rw-r--r-- | 345 bytes |
pyhash.c | -rw-r--r-- | 13.2 KB |
pylifecycle.c | -rw-r--r-- | 64.1 KB |
pymath.c | -rw-r--r-- | 1.6 KB |
pystate.c | -rw-r--r-- | 50.0 KB |
pystrcmp.c | -rw-r--r-- | 613 bytes |
pystrhex.c | -rw-r--r-- | 4.1 KB |
pystrtod.c | -rw-r--r-- | 40.1 KB |
pythonrun.c | -rw-r--r-- | 47.4 KB |
pytime.c | -rw-r--r-- | 26.6 KB |
strdup.c | -rw-r--r-- | 251 bytes |
structmember.c | -rw-r--r-- | 8.6 KB |
symtable.c | -rw-r--r-- | 59.8 KB |
sysmodule.c | -rw-r--r-- | 92.0 KB |
thread.c | -rw-r--r-- | 5.3 KB |
thread_nt.h | -rw-r--r-- | 11.8 KB |
thread_pthread.h | -rw-r--r-- | 23.5 KB |
traceback.c | -rw-r--r-- | 24.6 KB |
wordcode_helpers.h | -rw-r--r-- | 1.2 KB |
Computing file changes ...