[Bug 2356] New: inheritance of options not working as documented + HostName leads to recursive reparsing isn't documented

bugzilla-daemon at mindrot.org bugzilla-daemon at mindrot.org
Sat Feb 21 18:26:11 AEDT 2015


https://bugzilla.mindrot.org/show_bug.cgi?id=2356

            Bug ID: 2356
           Summary: inheritance of options not working as documented +
                    HostName leads to recursive reparsing isn't documented
           Product: Portable OpenSSH
           Version: 6.7p1
          Hardware: All
                OS: All
            Status: NEW
          Severity: normal
          Priority: P5
         Component: ssh
          Assignee: unassigned-bugs at mindrot.org
          Reporter: calestyo at scientia.net

Hey.

I was asking around about this some time ago on the mailing list, but
no one replied so I assume it's a bug (which I now report for the
records :) ).


I was playing around a bit and noticed the following behaviour which
doesn't seem to match the documentation (which basically says the first
time an option is set, that value is used).

Having the following ~/.ssh/config:
Host foo bar
        HostName        %h.example.org

Host foo.example.org
        User    root
        ControlMaster   auto
        ControlPersist  1h

Host bar.example.org
        User            root
        ControlMaster   auto
        ControlPersist  1h

Host *
        ControlPath     ~/.ssh/control-mux/%l_%r@%h:%p
        ControlPersist  1s

...the following happens when one logs in to foo or bar (without the
domain):


1) Apparently, using HostName works in a way so that ssh_config is
parsed again with the new name, because a socket is actually created.
This behaviour seems to be undocumented, i.e. from the documentation
I'd
have expected that logging in to "foo" wouldn't cause the config from
"foo.example.org" be used.
If you can confirm this, than I can write a patch for you that adds
such documentation.


2) Since ControlMaster=auto applies to just "foo" or "bar", one would
expect that ControlPersist=1h does so as well. But it doesn't (the 1s
is
taken).
As soon as I exit, the mux process quits (after 1s) and the socket gets
removed.
That's not how I'd interpret how inheritance works from the manpage...
is it a bug?

ControlPath in turn is taken up again correctly.


Cheers,
Chris.

-- 
You are receiving this mail because:
You are watching the assignee of the bug.


More information about the openssh-bugs mailing list