aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorTiezhu Yang <yangtiezhu@loongson.cn>2022-03-17 10:22:14 +0800
committerSimon Marchi <simon.marchi@efficios.com>2022-12-01 10:01:43 -0500
commit5091924da94bf68d4301a93fe848bf2c4a674f36 (patch)
tree4abd3d8c534ad767bedf790f4ed96af8e5355ba9
parente15378735d3a7d17890bd811a4c6f746fdc00ce5 (diff)
downloadgdb-5091924da94bf68d4301a93fe848bf2c4a674f36.zip
gdb-5091924da94bf68d4301a93fe848bf2c4a674f36.tar.gz
gdb-5091924da94bf68d4301a93fe848bf2c4a674f36.tar.bz2
gdb: testsuite: add new gdb_attach to check "attach" command
This commit adds new gdb_attach to centralize the failure checking of "attach" command. Return 0 if attach failed, otherwise return 1. Signed-off-by: Tiezhu Yang <yangtiezhu@loongson.cn> Change-Id: I553cf386cef60c67d38e331904b4aa01e132104a
-rw-r--r--gdb/testsuite/lib/gdb.exp26
1 files changed, 26 insertions, 0 deletions
diff --git a/gdb/testsuite/lib/gdb.exp b/gdb/testsuite/lib/gdb.exp
index 6f6acfe..819dfbf 100644
--- a/gdb/testsuite/lib/gdb.exp
+++ b/gdb/testsuite/lib/gdb.exp
@@ -5151,6 +5151,32 @@ gdb_caching_proc can_spawn_for_attach {
return 1
}
+# Centralize the failure checking of "attach" command.
+# Return 0 if attach failed, otherwise return 1.
+
+proc gdb_attach { testpid args } {
+ parse_args {
+ {pattern ""}
+ }
+
+ if { [llength $args] != 0 } {
+ error "Unexpected arguments: $args"
+ }
+
+ gdb_test_multiple "attach $testpid" "attach" {
+ -re -wrap "Attaching to.*ptrace: Operation not permitted\\." {
+ unsupported "$gdb_test_name (Operation not permitted)"
+ return 0
+ }
+ -re -wrap "$pattern" {
+ pass $gdb_test_name
+ return 1
+ }
+ }
+
+ return 0
+}
+
# Kill a progress previously started with spawn_wait_for_attach, and
# reap its wait status. PROC_SPAWN_ID is the spawn id associated with
# the process.