aboutsummaryrefslogtreecommitdiff
path: root/gdb/testsuite/gdb.server/server-connect.exp
diff options
context:
space:
mode:
authorTom de Vries <tdevries@suse.de>2019-09-19 00:23:54 +0200
committerTom de Vries <tdevries@suse.de>2019-09-19 00:23:54 +0200
commit81dc3ab59476c9851a6cda321b85dcf8a6ef4be8 (patch)
treeb816302403fc35a17c2d3a2713e4b47e423ddf96 /gdb/testsuite/gdb.server/server-connect.exp
parenta1726c38a9e8ac07b3fd6bbfac04da27c32c0d70 (diff)
downloadgdb-81dc3ab59476c9851a6cda321b85dcf8a6ef4be8.zip
gdb-81dc3ab59476c9851a6cda321b85dcf8a6ef4be8.tar.gz
gdb-81dc3ab59476c9851a6cda321b85dcf8a6ef4be8.tar.bz2
[gdb/testsuite] Handle unreachable network in server-connect.exp
When running gdb.server/server-connect.exp I run into: ... FAIL: gdb.server/server-connect.exp: tcp6: connect to gdbserver using tcp6:::1 FAIL: gdb.server/server-connect.exp: tcp6-with-brackets: connect to gdbserver \ using tcp6:[::1] FAIL: gdb.server/server-connect.exp: udp6: connect to gdbserver using udp6:::1 FAIL: gdb.server/server-connect.exp: udp6-with-brackets: connect to gdbserver \ using udp6:[::1] ... The FAIL is caused by the fact that the ipv6 loopback address is not available: ... PASS: gdb.server/server-connect.exp: tcp6: start gdbserver target remote tcp6:::1:2347^M A program is being debugged already. Kill it? (y or n) y^M tcp6:::1:2347: Network is unreachable.^M (gdb) FAIL: gdb.server/server-connect.exp: tcp6: connect to gdbserver using tcp6:::1 ... This should be marked UNSUPPORTED rather than FAIL. Furthermore, the test-case takes about 4 minutes, because the 'Network is unreachable' response is not explicitly handled in gdb_target_cmd, so instead it runs into the timeout case. Fix this by handling the 'Network is unreachable' response as UNSUPPORTED. This reduces testing time from 4 minutes to about 2 seconds. Tested on x86_64-linux. gdb/testsuite/ChangeLog: 2019-09-19 Tom de Vries <tdevries@suse.de> * lib/gdbserver-support.exp (gdb_target_cmd_ext): Return 2 (meaning UNSUPPORTED) for 'Network is unreachable' message. Factor out of ... (gdb_target_cmd): ... here. * gdb.server/server-connect.exp: Use gdb_target_cmd_ext, handle return value 2.
Diffstat (limited to 'gdb/testsuite/gdb.server/server-connect.exp')
-rw-r--r--gdb/testsuite/gdb.server/server-connect.exp7
1 files changed, 5 insertions, 2 deletions
diff --git a/gdb/testsuite/gdb.server/server-connect.exp b/gdb/testsuite/gdb.server/server-connect.exp
index 682fdaa..e69f792 100644
--- a/gdb/testsuite/gdb.server/server-connect.exp
+++ b/gdb/testsuite/gdb.server/server-connect.exp
@@ -101,10 +101,13 @@ save_vars { GDB_TEST_SOCKETHOST } {
set gdbserver_gdbport [lindex $res 1]
set test "connect to gdbserver using $sockhost"
- if { [gdb_target_cmd $gdbserver_protocol $gdbserver_gdbport] == 0 } {
+ set res [gdb_target_cmd_ext $gdbserver_protocol $gdbserver_gdbport]
+ if { $res == 0 } {
pass $test
- } else {
+ } elseif { $res == 1 } {
fail $test
+ } else {
+ unsupported $test
}
}
}