Skip to content

bpo-39850: Add support for abstract sockets in multiprocessing #18866

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 7 commits into from
Mar 9, 2020

Conversation

pablogsal
Copy link
Member

@pablogsal pablogsal commented Mar 9, 2020

@pablogsal pablogsal force-pushed the bpo-39850 branch 2 times, most recently from 4c3361e to 338696b Compare March 9, 2020 01:49
@pablogsal pablogsal requested a review from pitrou March 9, 2020 01:49
@pablogsal pablogsal self-assigned this Mar 9, 2020
@pablogsal pablogsal force-pushed the bpo-39850 branch 5 times, most recently from 4fa7210 to 95575e1 Compare March 9, 2020 02:53
Copy link
Member

@pitrou pitrou left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM, just a nit.

@pitrou
Copy link
Member

pitrou commented Mar 9, 2020

By the way, I don't think this can be backported since it's a behaviour change. If we want to fix support for abstract sockets on 3.7-3.8 we'll need a different patch.

@pablogsal
Copy link
Member Author

@pitrou Would you like me to split this PR in two (one with the fix 'per se' and the other with the new default)?

Another possibility is that I create manually the backports, removing the new behaviour in the process.

@pitrou
Copy link
Member

pitrou commented Mar 9, 2020

@pablogsal As is the most convenient for you.

pablogsal and others added 2 commits March 9, 2020 10:17
Co-Authored-By: Victor Stinner <vstinner@python.org>
Co-Authored-By: Victor Stinner <vstinner@python.org>
@pablogsal
Copy link
Member Author

LGTM. Thanks for all updates I asked for ;-)

Always happy to do them! Thanks for the review :)

@pablogsal pablogsal merged commit 6012f30 into python:master Mar 9, 2020
@pablogsal pablogsal deleted the bpo-39850 branch March 9, 2020 13:48
pablogsal added a commit to pablogsal/cpython that referenced this pull request Mar 9, 2020
…ythonGH-18866)

(cherry picked from commit 6012f30)

Co-authored-by: Pablo Galindo <Pablogsal@gmail.com>
pablogsal added a commit to pablogsal/cpython that referenced this pull request Mar 9, 2020
…ssing (pythonGH-18866)

(cherry picked from commit 6012f30)

Co-authored-by: Pablo Galindo <Pablogsal@gmail.com>.
(cherry picked from commit 5e217bb)

Co-authored-by: Pablo Galindo <Pablogsal@gmail.com>
pablogsal added a commit that referenced this pull request Mar 9, 2020
pablogsal added a commit that referenced this pull request Mar 9, 2020
@AmirHmZz
Copy link

AmirHmZz commented Apr 3, 2020

So now does windows support AF_UNIX for IPC ?

Yhg1s pushed a commit that referenced this pull request Oct 20, 2022
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
#18866 while fixing
#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.
miss-islington pushed a commit to miss-islington/cpython that referenced this pull request Oct 20, 2022
…ythonGH-98501)

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
python#18866 while fixing
python#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 49f6106)

Co-authored-by: Gregory P. Smith <greg@krypto.org>
miss-islington pushed a commit to miss-islington/cpython that referenced this pull request Oct 20, 2022
…ythonGH-98501)

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
python#18866 while fixing
python#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 49f6106)

Co-authored-by: Gregory P. Smith <greg@krypto.org>
miss-islington pushed a commit to miss-islington/cpython that referenced this pull request Oct 20, 2022
…ythonGH-98501)

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
python#18866 while fixing
python#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 49f6106)

Co-authored-by: Gregory P. Smith <greg@krypto.org>
miss-islington pushed a commit to miss-islington/cpython that referenced this pull request Oct 20, 2022
…ythonGH-98501)

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
python#18866 while fixing
python#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 49f6106)

Co-authored-by: Gregory P. Smith <greg@krypto.org>
miss-islington added a commit that referenced this pull request Oct 20, 2022
…GH-98501) (GH-98503)

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
#18866 while fixing
#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 49f6106)


Co-authored-by: Gregory P. Smith <greg@krypto.org>

Automerge-Triggered-By: GH:gpshead
miss-islington added a commit that referenced this pull request Oct 20, 2022
…GH-98501) (GH-98502)

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
#18866 while fixing
#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 49f6106)


Co-authored-by: Gregory P. Smith <greg@krypto.org>

Automerge-Triggered-By: GH:gpshead
pablogsal pushed a commit that referenced this pull request Oct 22, 2022
…GH-98501) (GH-98502)

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
#18866 while fixing
#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 49f6106)


Co-authored-by: Gregory P. Smith <greg@krypto.org>

Automerge-Triggered-By: GH:gpshead
ambv pushed a commit that referenced this pull request Oct 28, 2022
…H-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
#18866 while fixing
#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 49f6106)

Co-authored-by: Gregory P. Smith <greg@krypto.org>
frenzymadness pushed a commit to fedora-python/cpython that referenced this pull request Nov 9, 2022
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
python#18866 while fixing
python#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 49f6106)

Co-authored-by: Gregory P. Smith <greg@krypto.org>

Automerge-Triggered-By: GH:gpshead
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

6 participants