cpython/Modules
Miss Islington (bot) 05455637f3
bpo-32844: Fix a subprocess misredirection of a low fd (GH5689)
bpo-32844: subprocess: Fix a potential misredirection of a low fd to stderr.

When redirecting, subprocess attempts to achieve the following state:
each fd to be redirected to is less than or equal to the fd
it is redirected from, which is necessary because redirection
occurs in the ascending order of destination descriptors.
It fails to do so in a couple of corner cases,
for example, if 1 is redirected to 2 and 0 is closed in the parent.
(cherry picked from commit 0e7144b064)

Co-authored-by: Alexey Izbyshev <izbyshev@users.noreply.github.com>
2018-03-26 13:14:09 -07:00
..
_blake2 bpo-31933: fix blake2 multi-byte params on big endian platforms (#4250) 2017-11-03 20:02:41 +01:00
_ctypes closes bpo-32460: ensure all non-static globals have initializers (#5061) 2017-12-31 10:04:13 -08:00
_decimal bpo-25988: Emit a warning when use or import ABCs from 'collections'. (GH-5734) 2018-02-18 17:40:59 +00:00
_io bpo-31966: Fixed WindowsConsoleIO.write() for writing empty data. (GH-5754) 2018-02-24 09:39:18 -08:00
_multiprocessing bpo-31653: Remove deadcode in semlock_acquire() (#4091) 2017-10-23 13:57:51 -07:00
_sha3 bpo-32240: Add the const qualifier to declarations of PyObject* array arguments. (#4746) 2017-12-15 13:11:11 +02:00
_sqlite Fix error message in sqlite connection thread check. (GH-6028) 2018-03-26 09:01:22 -07:00
_xxtestfuzz Avoid UB in test selection macro. (#3407) 2017-09-06 18:00:47 -07:00
cjkcodecs bpo-32240: Add the const qualifier to declarations of PyObject* array arguments. (#4746) 2017-12-15 13:11:11 +02:00
clinic bpo-32922: dbm.open() now encodes filename with the filesystem encoding. (GH-5832) 2018-02-26 06:25:40 -08:00
expat Fix miscellaneous typos (#4275) 2017-11-05 15:37:50 +02:00
README
Setup.dist bpo-31333: Re-implement ABCMeta in C (GH-5733) 2018-02-18 17:39:43 +00:00
_abc.c bpo-32999: ast: Convert useless check to assert (GH-6197) 2018-03-23 02:43:11 -07:00
_asynciomodule.c bpo-31787: Prevent refleaks when calling __init__() more than once (GH-3995) 2018-02-13 03:32:18 -08:00
_bisectmodule.c Issue #28792: Remove aliases from _bisect 2016-11-24 23:31:59 +01:00
_bz2module.c bpo-31787: Prevent refleaks when calling __init__() more than once (GH-3995) 2018-02-13 03:32:18 -08:00
_codecsmodule.c bpo-24037: Add Argument Clinic converter `bool(accept={int})`. (#485) 2017-03-12 10:10:47 +02:00
_collectionsmodule.c bpo-32571: Avoid raising unneeded AttributeError and silencing it in C code (GH-5222) 2018-01-25 17:49:40 +09:00
_contextvarsmodule.c bpo-32436: Implement PEP 567 (#5027) 2018-01-22 19:11:18 -05:00
_cryptmodule.c fixes bpo-31866: remove code pertaining to AtheOS support (#4115) 2017-10-25 23:55:14 -07:00
_csv.c bpo-32255: Always quote a single empty field when write into a CSV file. (#4769) 2017-12-12 11:57:06 +02:00
_curses_panel.c Issue #28999: Use Py_RETURN_NONE, Py_RETURN_TRUE and Py_RETURN_FALSE wherever 2017-01-23 09:47:21 +02:00
_cursesmodule.c correct the typos (#4950) 2017-12-20 23:36:10 +02:00
_datetimemodule.c [3.7] bpo-32746: Fix multiple typos (GH-5144) (GH-5520) 2018-02-03 20:41:43 -05:00
_dbmmodule.c bpo-32922: dbm.open() now encodes filename with the filesystem encoding. (GH-5832) 2018-02-26 06:25:40 -08:00
_elementtree.c bpo-32240: Add the const qualifier to declarations of PyObject* array arguments. (#4746) 2017-12-15 13:11:11 +02:00
_functoolsmodule.c bpo-32422: Reduce lru_cache memory usage (GH-5008) 2017-12-26 02:03:24 +09:00
_gdbmmodule.c bpo-32922: dbm.open() now encodes filename with the filesystem encoding. (GH-5832) 2018-02-26 06:25:40 -08:00
_hashopenssl.c bpo-31787: Prevent refleaks when calling __init__() more than once (GH-3995) 2018-02-13 03:32:18 -08:00
_heapqmodule.c Issue #15984: Merge PyUnicode doc from 3.5 2016-04-15 02:27:11 +00:00
_json.c bpo-24641: Improved error message for JSON unserializible keys. (#4364) 2017-11-25 17:38:20 +02:00
_localemodule.c bpo-31900: Fix localeconv() encoding for LC_NUMERIC (#4174) 2018-01-15 15:58:02 +01:00
_lsprof.c Issue #28999: Use Py_RETURN_NONE, Py_RETURN_TRUE and Py_RETURN_FALSE wherever 2017-01-23 09:47:21 +02:00
_lzmamodule.c bpo-31787: Prevent refleaks when calling __init__() more than once (GH-3995) 2018-02-13 03:32:18 -08:00
_math.c Issue #28256: Cleanup _math.c 2016-10-18 16:29:27 +02:00
_math.h Issue #28256: Cleanup _math.c 2016-10-18 16:29:27 +02:00
_opcode.c Issue #27332: Fixed the type of the first argument of module-level functions 2016-07-07 17:35:15 +03:00
_operator.c bpo-30592: Fixed error messages for some builtins. (#1996) 2017-06-08 14:41:19 +03:00
_pickle.c [3.7] bpo-32746: Fix multiple typos (GH-5144) (GH-5520) 2018-02-03 20:41:43 -05:00
_posixsubprocess.c bpo-32844: Fix a subprocess misredirection of a low fd (GH5689) 2018-03-26 13:14:09 -07:00
_queuemodule.c bpo-14976: Reentrant simple queue (#3346) 2018-01-16 00:27:16 +01:00
_randommodule.c bpo-31478: Fix an assertion failure in random.seed() in case a seed has a bad __abs__() method. (#3596) 2017-09-28 10:50:01 +03:00
_scproxy.c Issue #28999: Use Py_RETURN_NONE, Py_RETURN_TRUE and Py_RETURN_FALSE wherever 2017-01-23 09:47:21 +02:00
_sre.c bpo-32308: Replace empty matches adjacent to a previous non-empty match in re.sub(). (#4846) 2018-01-04 11:06:13 +02:00
_ssl.c [3.7] bpo-33136: Harden ssl module against CVE-2018-8970 (GH-6229) (GH-6230) 2018-03-25 13:28:20 +02:00
_ssl_data.h
_stat.c
_struct.c bpo-32240: Add the const qualifier to declarations of PyObject* array arguments. (#4746) 2017-12-15 13:11:11 +02:00
_testbuffer.c Expand the PySlice_GetIndicesEx macro. (#1023) 2017-04-08 09:53:51 +03:00
_testcapimodule.c Test that new_timezone can return the UTC singleton (gh-5318) (#5819) 2018-02-22 16:18:54 -05:00
_testimportmultiple.c
_testmultiphase.c bpo-32374: m_traverse may be called with m_state=NULL (GH-5140) 2018-03-16 23:03:56 -07:00
_threadmodule.c bpo-32544: Speed up hasattr() and getattr() (GH-5173) 2018-01-16 20:52:41 +09:00
_tkinter.c Fix miscellaneous typos (#4275) 2017-11-05 15:37:50 +02:00
_tracemalloc.c bpo-32030: Enhance Py_Main() (#4412) 2017-11-15 18:11:45 -08:00
_uuidmodule.c bpo-32493: Not only AIX, but FreeBSD has uuid_create support (#5089) 2018-01-09 20:38:07 +01:00
_weakref.c bpo-32150: Expand tabs to spaces in C files. (#4583) 2017-11-28 17:56:10 +02:00
_winapi.c bpo-19764: Implemented support for subprocess.Popen(close_fds=True) on Windows (#1218) 2017-12-18 10:28:19 +01:00
_xxsubinterpretersmodule.c bpo-32604: Swap threads only if the interpreter is different. (gh-5783) 2018-02-20 17:09:41 -07:00
addrinfo.h replace PY_LONG_LONG with long long 2016-09-06 10:46:49 -07:00
arraymodule.c bpo-32571: Avoid raising unneeded AttributeError and silencing it in C code (GH-5222) 2018-01-25 17:49:40 +09:00
atexitmodule.c bpo-31901: atexit callbacks should be run at subinterpreter shutdown (#4611) 2017-12-20 11:17:58 +01:00
audioop.c bpo-28261: Fixed err msgs where PyArg_ParseTuple is used to parse normal tuples. (#3119) 2017-08-20 18:35:36 +03:00
binascii.c bpo-9566: Fix some Windows x64 compiler warnings (#2492) 2017-07-26 15:17:57 -07:00
cmathmodule.c Issue 23229: add cmath.inf, cmath.nan, cmath.infj and cmath.nanj. 2016-08-29 13:56:58 +01:00
config.c.in rename _imp initialization function to follow conventions (#5432) 2018-01-29 11:33:57 -08:00
errnomodule.c
faulthandler.c bpo-32297: Few misspellings found in Python source code comments. (#4803) 2017-12-14 13:04:53 +02:00
fcntlmodule.c bpo-30022: Get rid of using EnvironmentError and IOError (except test… (#1051) 2017-04-16 10:46:38 +03:00
gc_weakref.txt
gcmodule.c Revert "bpo-31356: Add context manager to temporarily disable GC GH-5495 (#5496) 2018-02-02 10:04:32 -05:00
getaddrinfo.c bpo-32241: Add the const qualifire to declarations of umodifiable strings. (#4748) 2017-12-12 13:55:04 +02:00
getbuildinfo.c bpo-27593: Get SCM build info from git instead of hg. (#446) 2017-03-04 00:19:55 -05:00
getnameinfo.c
getpath.c bpo-29240: Fix locale encodings in UTF-8 Mode (#5170) 2018-01-15 10:45:49 +01:00
grpmodule.c [security] bpo-13617: Reject embedded null characters in wchar* strings. (#2302) 2017-06-28 08:30:06 +03:00
hashlib.h bpo-31370: Remove support for threads-less builds (#3385) 2017-09-07 18:56:24 +02:00
hashtable.c Replace KB unit with KiB (#4293) 2017-11-08 14:44:44 -08:00
hashtable.h Issue #28126: Replace Py_MEMCPY with memcpy(). Visual Studio can properly optimize memcpy(). 2016-09-13 20:22:02 +02:00
itertoolsmodule.c bpo-32571: Avoid raising unneeded AttributeError and silencing it in C code (GH-5222) 2018-01-25 17:49:40 +09:00
ld_so_aix.in Issue #10656: Fix out-of-tree building on AIX 2016-11-20 07:56:37 +00:00
main.c bpo-17232: Clarify docs for -O and -OO command line options (GH-5839) 2018-02-24 19:24:08 -08:00
makesetup bpo-20210: Support the *disabled* marker in Setup files (GH-132) 2017-05-27 18:25:03 +02:00
makexp_aix
mathmodule.c bpo-31338 (#3374) 2017-09-14 18:13:16 -07:00
md5module.c [3.7] bpo-32746: Fix multiple typos (GH-5144) (GH-5520) 2018-02-03 20:41:43 -05:00
mmapmodule.c Fix typos in mmap() error messages (GH-6173) 2018-03-20 23:24:41 -07:00
nismodule.c [security] bpo-13617: Reject embedded null characters in wchar* strings. (#2302) 2017-06-28 08:30:06 +03:00
ossaudiodev.c Add the const qualifier to "char *" variables that refer to literal strings. (#4370) 2017-11-11 13:06:26 +02:00
overlapped.c bpo-32622: Native sendfile on windows (GH-5565) 2018-02-25 09:10:58 -08:00
parsermodule.c bpo-23699: Use a macro to reduce boilerplate code in rich comparison functions (GH-793) 2017-11-02 20:32:54 +10:00
posixmodule.c bpo-33016: Fix potential use of uninitialized memory in nt._getfinalpathname (GH-6010) 2018-03-08 08:26:43 -08:00
posixmodule.h
pwdmodule.c [security] bpo-13617: Reject embedded null characters in wchar* strings. (#2302) 2017-06-28 08:30:06 +03:00
pyexpat.c bpo-28411: Support other mappings in PyInterpreterState.modules. (#3593) 2017-09-15 16:35:20 -06:00
readline.c bpo-29240: Fix locale encodings in UTF-8 Mode (#5170) 2018-01-15 10:45:49 +01:00
resource.c bpo-20185: Convert the resource moduel to Argument Clinic. (#545) 2017-03-12 13:08:30 +02:00
rotatingtree.c
rotatingtree.h bpo-32150: Expand tabs to spaces in C files. (#4583) 2017-11-28 17:56:10 +02:00
selectmodule.c bpo-28914: Fix compilation of select on Android (#5447) 2018-01-30 12:18:54 +01:00
sha1module.c Issue #28999: Use Py_RETURN_NONE, Py_RETURN_TRUE and Py_RETURN_FALSE wherever 2017-01-23 09:47:21 +02:00
sha256module.c Issue #28999: Use Py_RETURN_NONE, Py_RETURN_TRUE and Py_RETURN_FALSE wherever 2017-01-23 09:47:21 +02:00
sha512module.c Removed redundant Argument Clinic directives. 2017-02-04 11:53:22 +02:00
signalmodule.c bpo-30050: Allow disabling full buffer warnings in signal.set_wakeup_fd (#4792) 2017-12-17 23:10:18 -05:00
socketmodule.c bpo-32394: Remove some TCP options on old version Windows. (GH-5523) 2018-02-26 10:36:17 -08:00
socketmodule.h bpo-31927: Fix bugs in socketmodule.c on NetBSD and other issues. (#4235) 2017-11-09 18:00:38 +02:00
spwdmodule.c [security] bpo-13617: Reject embedded null characters in wchar* strings. (#2302) 2017-06-28 08:30:06 +03:00
sre.h bpo-25054, bpo-1647489: Added support of splitting on zerowidth patterns. (#4471) 2017-12-04 14:29:05 +02:00
sre_constants.h bpo-31690: Allow the inline flags "a", "L", and "u" to be used as group flags for RE. (#3885) 2017-10-24 23:31:42 +03:00
sre_lib.h bpo-25054, bpo-1647489: Added support of splitting on zerowidth patterns. (#4471) 2017-12-04 14:29:05 +02:00
symtablemodule.c Issue #20186: Converted the symtable module to Argument Clinic. 2017-02-04 12:13:20 +02:00
syslogmodule.c Issue #28999: Use Py_RETURN_NONE, Py_RETURN_TRUE and Py_RETURN_FALSE wherever 2017-01-23 09:47:21 +02:00
termios.c bpo-32660: Solaris should support constants like termios' FIONREAD (#5328) 2018-01-28 14:00:48 +01:00
testcapi_long.h
timemodule.c Fix some warnings produced by different compilers. (GH-5593) (GH-5600) 2018-02-09 17:56:34 +02:00
tkappinit.c
tkinter.h Issue #16840. Turn off bignum support in tkinter with with Tcl earlier than 8.5.8 2015-04-22 10:59:32 +03:00
unicodedata.c Fix miscellaneous typos (#4275) 2017-11-05 15:37:50 +02:00
unicodedata_db.h bpo-30736: upgrade to Unicode 10.0 (#2344) 2017-06-22 22:31:08 -07:00
unicodename_db.h bpo-30736: upgrade to Unicode 10.0 (#2344) 2017-06-22 22:31:08 -07:00
winreparse.h Issue #17599: Use unique _Py_REPARSE_DATA_BUFFER etc names to avoid conflict 2016-08-04 02:38:59 +00:00
xxlimited.c merge 3.5 (#29398) 2017-01-31 23:31:10 -08:00
xxmodule.c bpo-31443: Formulate the type slot initialization rules in terms of C99. (#3688) 2017-09-22 17:44:58 +02:00
xxsubtype.c PEP 489: Multi-phase extension module initialization 2015-05-23 22:24:10 +10:00
zipimport.c bpo-32248 - Implement `ResourceReader` and `get_resource_reader()` for zipimport (#5248) 2018-01-24 15:36:21 -05:00
zlibmodule.c bpo-32969: Expose some missing constants in zlib and fix the doc (GH-5988) 2018-03-06 21:26:19 -08:00

README

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