Subject: bug#49699: closed (Re: bug#49699: 28.0.50; [PATCH] tramp-scp-strict-file-name-checking fails on macOS 10.14)

From: [email-masked] (GNU bug Tracking System)
Date: Fri, 23 Jul 2021 18:34:02 +0000

Your bug report

#49699: 28.0.50; [PATCH] tramp-scp-strict-file-name-checking fails on macOS 10.14

which was filed against the emacs package, has been closed.

The explanation is attached below, along with your original report.
If you require more details, please reply to [email-masked].

-- 
49699: http://debbugs.gnu.org/cgi/bugreport.cgi?bug=49699
GNU Bug Tracking System
Contact [email-masked] with problems

Subject: Re: bug#49699: 28.0.50; [PATCH] tramp-scp-strict-file-name-checking fails on macOS 10.14
From: Michael Albinus <[email-masked]>
To: Alex Bochannek <[email-masked]>
Cc: [email-masked]
Date: Fri, 23 Jul 2021 20:32:50 +0200
List-Id: <debbugs-submit.debbugs.gnu.org>

Version: 28.1

Alex Bochannek <[email-masked]> writes:

> Hello!

Hi Alex,

> On macOS 10.14 (and some 10.15) with a pre-8.0 OpenSSH, the check for
> the `-T' option when using SCP gives an incorrect result because the
> error message (presumably from the BSD getopt(3)) is different than what
> is checked for. The below patch fixes that.

Thanks for this, I've pushed it to master. Closing the bug.

> Thanks!

Best regards, Michael.

Subject: 28.0.50; [PATCH] tramp-scp-strict-file-name-checking fails on macOS 10.14
From: Alex Bochannek <[email-masked]>
To: [email-masked]
Date: Thu, 22 Jul 2021 12:42:53 -0700
List-Id: <debbugs-submit.debbugs.gnu.org>

Hello!

On macOS 10.14 (and some 10.15) with a pre-8.0 OpenSSH, the check for
the `-T' option when using SCP gives an incorrect result because the
error message (presumably from the BSD getopt(3)) is different than what
is checked for. The below patch fixes that.

Apple upgraded OpenSSH from 7.9 to 8.1 for macOS 10.15.4 and with that
the `-T' option to SCP became available.
diff --git a/lisp/net/tramp-sh.el b/lisp/net/tramp-sh.el
index 8b4c78fe65..f94508303d 100644
--- a/lisp/net/tramp-sh.el
+++ b/lisp/net/tramp-sh.el
@@ -4782,7 +4782,9 @@ tramp-scp-strict-file-name-checking
 	      (with-temp-buffer
 		(tramp-call-process vec "scp" nil t nil "-T")
 		(goto-char (point-min))
-		(unless (search-forward-regexp "unknown option -- T" nil t)
+		(unless
+                    (search-forward-regexp
+                     "\\(illegal\\|unknown\\) option -- T" nil t)
 		  (setq tramp-scp-strict-file-name-checking "-T")))))))
       tramp-scp-strict-file-name-checking)))
Thanks!

-- 
Alex.