[3.9] gh-97514: Don't use Linux abstract sockets for multiprocessing (GH-98501) ...
authorMiss Islington (bot) <31488909+miss-islington@users.noreply.github.com>
Fri, 28 Oct 2022 10:08:30 +0000 (03:08 -0700)
committerSean Whitton <spwhitton@spwhitton.name>
Thu, 20 Mar 2025 02:07:39 +0000 (10:07 +0800)
commitc3c8393ae721c094d553fcef7bfe050883d5fdc9
tree8a5357099ca753ddf44a53bb3ce53b3a605641df
parentfc61044df27c51d643bd56330bd968c1af3bde36
[3.9] gh-97514: Don't use Linux abstract sockets for multiprocessing (GH-98501) (#98504)

Linux abstract sockets are insecure as they lack any form of filesystem
permissions so their use allows anyone on the system to inject code into
the process.

This removes the default preference for abstract sockets in
multiprocessing introduced in Python 3.9+ via
https://github.com/python/cpython/pull/18866 while fixing
https://github.com/python/cpython/issues/84031.

Explicit use of an abstract socket by a user now generates a
RuntimeWarning.  If we choose to keep this warning, it should be
backported to the 3.7 and 3.8 branches.
(cherry picked from commit 49f61068f49747164988ffc5a442d2a63874fc17)

Co-authored-by: Gregory P. Smith <greg@krypto.org>
Gbp-Pq: Name 0010-3.9-gh-97514-Don-t-use-Linux-abstract-sockets-for-mu.patch
Lib/multiprocessing/connection.py