From: Miss Islington (bot) <31488909+miss-islington@users.noreply.github.com> Date: Wed, 15 Apr 2026 00:06:25 +0000 (+0200) Subject: [3.14] gh-137335: remove a mktemp use in multiprocessing.connection to avoid security... X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=e590f007ed8b0268c40bcae445d6b50e06b00960;p=thirdparty%2FPython%2Fcpython.git [3.14] gh-137335: remove a mktemp use in multiprocessing.connection to avoid security scanner noise (GH-148578) (#148583) gh-137335: remove a mktemp use in multiprocessing.connection to avoid security scanner noise (GH-148578) remove a mktemp use to avoid security scanner noise (cherry picked from commit fd81246bd55e4fab1976a7cca3e5d42582dbdac0) Co-authored-by: Gregory P. Smith <68491+gpshead@users.noreply.github.com> --- diff --git a/Lib/multiprocessing/connection.py b/Lib/multiprocessing/connection.py index a6e1b0c78628..f577186e91b0 100644 --- a/Lib/multiprocessing/connection.py +++ b/Lib/multiprocessing/connection.py @@ -16,7 +16,6 @@ import os import sys import socket import struct -import tempfile import time @@ -77,7 +76,11 @@ def arbitrary_address(family): if family == 'AF_INET': return ('localhost', 0) elif family == 'AF_UNIX': - return tempfile.mktemp(prefix='sock-', dir=util.get_temp_dir()) + # NOTE: util.get_temp_dir() is a 0o700 per-process directory. A + # mktemp-style ToC vs ToU concern is not important; bind() surfaces + # the extremely unlikely collision as EADDRINUSE. + return os.path.join(util.get_temp_dir(), + f'sock-{os.urandom(6).hex()}') elif family == 'AF_PIPE': return (r'\\.\pipe\pyc-%d-%d-%s' % (os.getpid(), next(_mmap_counter), os.urandom(8).hex()))