Subject: Re: bug#30946: 26.0.90; TRAMP cannot access some files when using hops

From: Michael Albinus <[email-masked]>
Date: Mon, 31 Dec 2018 12:20:04 +0100

Phil Sainty <[email-masked]> writes:

Hi Phil,

> i.e. /ssh:[email-masked]|sudo:localhost was previously creating a proxy
> that said that when you request files as root@localhost (for *any*
> tramp method!) it should proxy via "/ssh:[email-masked]:".  The sudo
> method didn't actually need or care about the specified host, so that
> "worked" -- but the proxy you'd created was then a problem waiting to
> bite you.
>
> Ooohh.
>
> Michael, that actually still remains a problem in the new version.
>
> Despite the error message, the unintended proxy is still created,
> and hence can still break things.
>
> i.e. I try to visit:
>
> /ssh:[email-masked]|sudo:localhost
>
> I get the new error message:
>
> Host name ‘localhost’ does not match ‘^example.com$’
>
> but I *also* get a new proxy entry:
>
> ("localhost" "root" "/ssh:[email-masked]:")
>
> So when I then visit:
>
> /sudo:localhost:
>
> I get the error message:
>
> Host name ‘localhost’ does not match ‘^example.com$’
>
> etc, etc...

Ad-hoc proxy definitions are removed by "M-x
tramp-cleanup-all-connections". I've added a respective hint to the manual.

> Conversely, it seems that the "::" case has been attended to so that
> it now transparently DWIM ?
>
> i.e. When I try /ssh:[email-masked]|sudo:: I get a proxy entry of:
> ("example.com" "root" "/ssh:[email-masked]:")

Yes. This was already documented in the Tramp manual.

> whereas in earlier versions of Emacs I get the undesirable:
> ("<FOO>" "root" "/ssh:[email-masked]:")
> Where <FOO> is my local hostname.
>
> That's excellent, and possibly also deserves a note in the NEWS?

The previous behaviour was a bug. I've corrected it. Bugs don't need to
be mentioned in etc/NEWS. I've extended the NEWS entry to describe the
new default host name behavior.

> cheers,
> -Phil
>
> p.s. I find the new error slightly confusing to dismiss.  It's not
> entirely obvious how to get back to the prompt.  Not a big problem,
> as ideally people don't run into it at all, but I just thought I'd
> mention it.
>
> The error sticks around persistently until I type C-g, at which point
> I get a new error "Tramp: Opening connection for root@localhost using
> sudo...failed".  That error also sticks around for a couple of seconds,
> which is long enough to make one suspect that it also needs to be
> dismissed with C-g -- which will actually exit the minibuffer entirely,
> meaning you can't simply edit the incorrect path to fix the problem,
> but must start over.
>
> (So the correct sequence is C-g and then either wait a couple of
> seconds, or just start typing blindly.)
>
> It would be nice if that was a bit smoother -- but again, I don't
> think this is a significant issue in reality, so I wouldn't worry
> about it unless you think it's easy to deal with.

See above. Some "C-g" in a raw (let's say, two or three times) plus
"M-x tramp-cleanup-all-connections" shall be sufficient.

Best regards, Michael.