On 6/17/26 17:16, Joseph Myers wrote:
remote_exec is sometimes used with the name of an installed command
plus its arguments, which means the 'rm -f $program' breaks in
general.

---

On Tue, 2 Jun 2026, Jacob Bachmeyer wrote:

Logically, this makes sense:  ssh_exec did not transfer $program to the
remote, so it should not be performing cleanup like that. However, the
trailing semicolon also should be removed, so that the string ends with ZYX.
This version also removes the trailing semicolon.

---
  lib/ssh.exp | 2 +-
  1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/lib/ssh.exp b/lib/ssh.exp
index b0f0696..0282bff 100644
--- a/lib/ssh.exp
+++ b/lib/ssh.exp
@@ -168,7 +168,7 @@ proc ssh_exec { boardname program pargs inp outp } {
        set inp "/dev/null"
      }
- set ret [local_exec "$SSH $ssh_useropts $ssh_user$hostname sh -c '$program $pargs 2>&1 ; echo XYZ\\\${?}ZYX \\; rm -f $program'" $inp $outp $timeout]
+    set ret [local_exec "$SSH $ssh_useropts $ssh_user$hostname sh -c '$program $pargs 
2>&1 ; echo XYZ\\\${?}ZYX'" $inp $outp $timeout]
      set status [lindex $ret 0]
      set output [lindex $ret 1]

Applied; thanks.


-- Jacob



Reply via email to