Subject: bug#19702: 25.0.50; Tramp with ssh not working with openssh 6.7 while worked with 6.6

From: Filipp Gunbin <[email-masked]>
Date: Mon, 02 Feb 2015 17:09:25 +0300

Michael,

On 02/02/2015 10:20 +0100, Michael Albinus wrote:

> I have committed a patch to the emacs-24 branch which uses %C in
> ControlPath if possible. Could you, pls, check? I have no openssh 6.7
> installed, so I cannot test myself.

Thanks, but it didn't work:

17:02:55.588956 tramp-send-command (6) # exec ssh -l root  -o ControlMaster=auto -o ControlPath=/var/folders/yb/0cdss5q52d1848_2th2kp_740000gn/T/tramp.54213PO4.%C -o ControlPersist=no -e none <myhost>
17:02:55.606731 tramp-process-one-action (5) # Call `tramp-action-process-alive'
17:02:55.606825 tramp-process-actions (6) #
ControlPath too long^
17:02:55.606932 tramp-process-sentinel (5) # Sentinel called: `#<process *tramp/ssh root@<myhost>*>' `exited abnormally with code 255'
17:02:55.610263 tramp-process-actions (1) # File error: Tramp failed to connect.  If this happens repeatedly, try
`M-x tramp-cleanup-this-connection'
17:02:58.732912 tramp-maybe-open-connection (3) # Opening connection for root@<myhost> using ssh...failed

>> 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?
>
> In the past there were problems when Tramp used the same ControlPath
> like ssh connections started/stopped outside Emacs. That's why Tramp
> uses its own one.

Aren't values produced by %C supposed to be unique?  Then probably the
temporary file isn't needed.

Filipp