[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
bug#19702: 25.0.50; Tramp with ssh not working with openssh 6.7 while wo
From: |
Filipp Gunbin |
Subject: |
bug#19702: 25.0.50; Tramp with ssh not working with openssh 6.7 while worked with 6.6 |
Date: |
Tue, 27 Jan 2015 20:45:39 +0300 |
User-agent: |
Gnus/5.13 (Gnus v5.13) Emacs/25.0.50 (darwin) |
Michael,
On 27/01/2015 17:06 +0100, Michael Albinus wrote:
> Filipp Gunbin <fgunbin@fastmail.fm> writes:
>
> Hi Filipp,
>
>> I've recently upgraded openssh to 6.7 on MacOS X (from MacPorts) and ssh
>> in Tramp stopped working. Logs are below. Activating openssh 6.6
>> brings back the working state.
>>
>> Tramp log buffer:
>>
>> 17:34:12.318598 tramp-send-command (6) # exec ssh -l root -o
>> ControlPath=/var/folders/yb/0cdss5q52d1848_2th2kp_740000gn/T/tramp.587ZOm.%r@%h:%p
>> -o ControlMaster=auto -o ControlPersist=no -e none <myhost>
>> 17:34:15.933185 tramp-process-actions (6) #
>> root@<myhost>'s password:
>> unix_listener:
>> "/var/folders/yb/0cdss5q52d1848_2th2kp_740000gn/T/tramp.587ZOm.root@<myhost>:22.rIZDlnMe9NViEUbt"
>> too long for Unix domain socket.
>
> You see the error message: the file name of the socket is too long. What
> has changed wrt openssh 6.6? Has the template Tramp uses being expanded
> differently? And why is there the suffix ".rIZDlnMe9NViEUbt" after the
> port number?
Release notes for openssh 6.7 [1] tell:
* ssh(1): Add a %C escape sequence for LocalCommand and ControlPath
that expands to a unique identifer based on a hash of the tuple of
(local host, remote user, hostname, port). Helps avoid exceeding
miserly pathname limits for Unix domain sockets in multiplexing
control paths; bz#2220
I changed `tramp-ssh-controlmaster-options' as follows:
(setq tramp-ssh-controlmaster-options "-o ControlPath=%%C -o
ControlMaster=auto -o ControlPersist=no")
And it started working.
BTW, "name is too long" errors also occurred with 6.6, too. And the
template was expanded similarly, I checked that.
The original value contained "%t.%%r@%%h:%%p". %r, %h and %p could be
substituted by %C as the above doc says. But what about %t? It's a
temporary file as I understand and is substituted by Tramp, not by ssh.
Is it critical that it should be present in the resulting file name?
Filipp
[1] http://www.openssh.com/txt/release-6.7