[gdb/testsuite] Normalize gdbserver path name
authorTom de Vries <tdevries@suse.de>
Tue, 15 Nov 2022 14:24:54 +0000 (15:24 +0100)
committerTom de Vries <tdevries@suse.de>
Tue, 15 Nov 2022 14:24:54 +0000 (15:24 +0100)
Currently for the target board remote-gdbserver-on-localhost we use the
gdbserver file on build, using a file name which includes "/../".

Fix this by using a normalized file name instead.

This allows us to be more restrictive about which files REMOTE_TARGET_USERNAME
can access:
...
-    remote_exec build "chmod go-rx $objdir/outputs"
+    remote_exec build "chmod go-rx $objdir"
...

Tested on x86_64-linux.

gdb/testsuite/boards/gdbserver-base.exp
gdb/testsuite/boards/remote-gdbserver-on-localhost.exp

index 20ee90d611676c93fd2cfb8fb115a1b657e460bf..633ac7e2342ec75e34134fadf6b4406b4487b7f9 100644 (file)
@@ -22,7 +22,8 @@ process_multilib_options ""
 set_board_info compiler "[find_gcc]"
 
 # Test the copy of gdbserver in the build directory.
-set_board_info gdb_server_prog "[pwd]/../../gdbserver/gdbserver"
+set_board_info gdb_server_prog \
+    "[file normalize [pwd]/../../gdbserver/gdbserver]"
 
 # gdbserver does not intercept target file operations and perform them
 # on the host.
index 931fba7fa2632e31939d9d175e03721984bd67f7..af23eaad083ce3228a15ee17ce79cef1e638adf1 100644 (file)
@@ -42,10 +42,8 @@ if { [board_info $board username] != $env(USER) } {
     # We're pretending that some local user account is remote target.
     # Make things a bit more realistic by restricting file permissions.
 
-    # Make sure remote target can't see files on build.  Note that we're
-    # currently using $objdir/output instead of $objdir because of gdbserver
-    # being accessed on the target using $objdir/../../gdbserver/gdbserver.
-    remote_exec build "chmod go-rx $objdir/outputs"
+    # Make sure remote target can't see files on build.
+    remote_exec build "chmod go-rx $objdir"
 
     # Make sure build can't see files on remote target.  We can't use
     # remote_exec target, because we're in the middle of parsing the