vscode-cpptools
vscode-cpptools copied to clipboard
Sudo elevation not working with gdb
Type: Debugger
Describe the bug
- OS and Version: Ubuntu 18.04.2
- VS Code Version: 1.38.0
- C/C++ Extension Version: 0.25.1
- Other extensions you installed (and if the issue persists after disabling them):
- A clear and concise description of what the bug is.
When trying to attach with gdb it correctly asks "Superuser access is required to attach to a process. Attaching as superuser can potentially harm your computer. Do you want to continue? [y/N]". After typing "y" and enter, I get the following:
==== AUTHENTICATING FOR org.freedesktop.policykit.exec ===
Authentication is needed to run `/usr/bin/gdb' as the super user
Multiple identities can be used for authentication:
1. ...
2. ...
...
Choose identity to authenticate as (1-16): [1] + Stopped (tty input) /usr/bin/pkexec "/usr/bin/gdb" --interpreter=mi --tty=${DbgTerm} 0<"/tmp/Microsoft-MIEngine-In-hrnsnxv9.sdc" 1>"/tmp/Microsoft-MIEngine-Out-prn74k9m.v7c"
You have stopped jobs.
It immediately stops and doesn't let me select an identity. It says "Running" in the debug view but this seems not correct, also nothing happens when pressing pause.
To Reproduce
Please include a code sample and launch.json
configuration.
{
"name": "Attach",
"type": "cppdbg",
"request": "attach",
"MIMode": "gdb",
"program": "...",
"processId": "${command:pickProcess}",
"setupCommands": [
{
"description": "Enable pretty-printing for gdb",
"text": "-enable-pretty-printing",
"ignoreFailures": true
}
]
},
Additional context
If applicable, please include logging by adding "logging": { "engineLogging": true, "trace": true, "traceResponse": true } in your launch.json
Add any other context about the problem here including log or error messages in your Debug Console or Output windows.
This sounds like #4133. Are you able to change your ptrace_scope
value?
The original ptrace_scope
value was 1. When I change it to 0 with echo 0 | sudo tee /proc/sys/kernel/yama/ptrace_scope
everything works.
That can be the work around for now. I think with pkexec
allowing selection of profiles to elevate to needs some more investigation.
The original
ptrace_scope
value was 1. When I change it to 0 withecho 0 | sudo tee /proc/sys/kernel/yama/ptrace_scope
everything works.
Unfortunately, it does not solve the problem for me. I get prompt by pkexec and it doe not wait for the next prompts
Has anyone found a workaround for this? We're hitting this with our shared test machine that has multiple accounts.