[PATCH v2] gdb: testsuite: fix wrong expected result in attach-pie-noexec.exp

Tiezhu Yang yangtiezhu@loongson.cn
Tue Nov 23 10:18:39 GMT 2021


If /proc/sys/kernel/yama/ptrace_scope is 1, when execute attach-pie-noexec.exp
without superuser, the gdb.log shows the following info:

    (gdb) attach 6500
    Attaching to process 6500
    ptrace: Operation not permitted.
    (gdb) PASS: gdb.base/attach-pie-noexec.exp: attach

It is obviously wrong, the expected result should be UNSUPPORTED in such a case.

With this patch:

    (gdb) attach 6600
    Attaching to process 6600
    ptrace: Operation not permitted.
    (gdb) UNSUPPORTED: gdb.base/attach-pie-noexec.exp: attach (please check privileges and try again)

When check the above log info, we can do the following processes to test:
(1) set ptrace_scope as 0
    $ echo 0 | sudo tee /proc/sys/kernel/yama/ptrace_scope
    $ make check-gdb TESTS="gdb.base/attach-pie-noexec.exp"
(2) use sudo to test
    $ sudo make check-gdb TESTS="gdb.base/attach-pie-noexec.exp"

Signed-off-by: Tiezhu Yang <yangtiezhu@loongson.cn>
---
 gdb/testsuite/gdb.base/attach-pie-noexec.exp | 10 +++++++++-
 1 file changed, 9 insertions(+), 1 deletion(-)

diff --git a/gdb/testsuite/gdb.base/attach-pie-noexec.exp b/gdb/testsuite/gdb.base/attach-pie-noexec.exp
index 85161fa..7c9105c 100644
--- a/gdb/testsuite/gdb.base/attach-pie-noexec.exp
+++ b/gdb/testsuite/gdb.base/attach-pie-noexec.exp
@@ -59,7 +59,15 @@ set testpid [spawn_id_get_pid $test_spawn_id]
 
 gdb_start
 file delete -- $binfile
-gdb_test "attach $testpid" "Attaching to process $testpid\r\n.*" "attach"
+set test "attach"
+gdb_test_multiple "attach $testpid" $test {
+    -re "Attaching to process $testpid\r\n.*No executable file now.*\r\n$gdb_prompt $" {
+	pass $test
+    }
+    -re "Attaching to process $testpid\r\n.*ptrace: Operation not permitted\\.\r\n$gdb_prompt $" {
+	unsupported "$test (please check privileges and try again)"
+    }
+}
 gdb_test "set architecture $arch" "The target architecture is set to \"$arch\"\\."
 gdb_test "info shared" "From\[ \t\]+To\[ \t\]+Syms Read\[ \t\]+Shared Object Library\r\n0x.*"
 
-- 
2.1.0



More information about the Gdb-patches mailing list