Subject: bug#38079: closed (Re: bug#38079: On Windows tramp hangs after server-start is called)

From: [email-masked] (GNU bug Tracking System)
Date: Thu, 07 Nov 2019 17:46:03 +0000

Your bug report

#38079: On Windows tramp hangs after server-start is called

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].

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

Subject: Re: bug#38079: On Windows tramp hangs after server-start is called
From: Michael Albinus <[email-masked]>
To: Wanrong Lin <[email-masked]>
Cc: Eli Zaretskii <[email-masked]>, [email-masked]
Date: Thu, 07 Nov 2019 18:45:08 +0100
List-Id: <debbugs-submit.debbugs.gnu.org>

Version: 27.1

Wanrong Lin <[email-masked]> writes:

> Yes it does. Thanks.

Thanks for the feedback. I've committed the patch to the repositories,
closing the bug.

> Wanrong

Best regards, Michael.

Subject: On Windows tramp hangs after server-start is called
From: Wanrong Lin <[email-masked]>
To: [email-masked]
Date: Tue, 5 Nov 2019 19:52:59 -0500
List-Id: <debbugs-submit.debbugs.gnu.org>

On Windows, after M-x server-start, tramp no longer works. When I tried 
to connect to a "pscp" remote Linux host, it just hangs at the message 
"Remote prompt found" (something like that).

Today I finally figured out what the problem is, and put in a work 
around as following:

;; On Windows, after "server-start" is called, somehow (system-name) 
will return lower case host name. If the original
;; (system-name) returns upper case host name now 
tramp-restricted-shell-hosts-alist will be out-of-date and cause
;; tramp not to function properly.
(defadvice server-start (after update-restricted-host-list last activate)
   (setf tramp-restricted-shell-hosts-alist
         (when (memq system-type '(windows-nt))
           (list (concat "\\`" (regexp-quote (system-name)) "\\'")))))

But the proper fix should be to make sure (system-name) always returns 
the same string consistently. I found it is this sexp in "server-start" 
function that changes the return value of (system-name):

       (setq server-process
         (apply #'make-network-process ....))

This bug has bothered me for a long time. Even Emacs 26.3 still has it 
(although I am still using 26.2 for daily work). I hope this can lead to 
a fix that saves some frustration for other fellow Emacs users.

Here is my set up:

In GNU Emacs 26.2 (build 1, x86_64-w64-mingw32)
  of 2019-04-13 built on CIRROCUMULUS
Repository revision: fd1b34bfba8f3f6298df47c8e10b61530426f749

Warren