Closed
Closed
Copy link
Description
Bug report
Bug description:
- run
python3.14
- find its pid
sudo python3.14 -m pdb -p $pid
the pdb
tab will hang, the other side will display similar to:
Python 3.14.0b1 (main, May 8 2025, 08:57:13) [GCC 13.3.0] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> Can't open debugger script /tmp/tmpmbdwo7d_:
Traceback (most recent call last):
File "/usr/lib/python3.14/_pyrepl/unix_console.py", line 422, in wait
or bool(self.pollob.poll(timeout))
PermissionError: [Errno 13] Permission denied: '/tmp/tmpmbdwo7d_'
the debugger script needs to at least be readable by the unprivileged user to be opened:
$ ls -al /tmp/tmpmbdwo7d_
-rw------- 1 root root 190 May 22 16:51 /tmp/tmpmbdwo7d_
Line 3398 in 742d5b5
I believe a patch similar to this fixes it:
diff --git a/Lib/pdb.py b/Lib/pdb.py
index 78ee35f61bb..bb12d1baae8 100644
--- a/Lib/pdb.py
+++ b/Lib/pdb.py
@@ -75,6 +75,7 @@
import code
import glob
import json
+import stat
import token
import types
import atexit
@@ -3418,6 +3419,7 @@ def attach(pid, commands=()):
)
)
connect_script.close()
+ os.chmod(connect_script.name, os.stat(connect_script.name).st_mode | stat.S_IRGRP | stat.S_IROTH)
sys.remote_exec(pid, connect_script.name)
# TODO Add a timeout? Or don't bother since the user can ^C?
CPython versions tested on:
3.14
Operating systems tested on:
Linux
Linked PRs
Metadata
Metadata
Assignees
Labels
bugs and security fixesbugs and security fixesnew features, bugs and security fixesnew features, bugs and security fixesPython modules in the Lib dirPython modules in the Lib dirAn unexpected behavior, bug, or errorAn unexpected behavior, bug, or error