[Bug 2213] New: X11 forwarding to DISPLAY containing a hexadecimal-colon IPv6 address fails

bugzilla-daemon at mindrot.org bugzilla-daemon at mindrot.org
Thu Mar 20 20:31:46 EST 2014


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

            Bug ID: 2213
           Summary: X11 forwarding to DISPLAY containing a
                    hexadecimal-colon IPv6 address fails
           Product: Portable OpenSSH
           Version: -current
          Hardware: Other
                OS: Linux
            Status: NEW
          Severity: normal
          Priority: P5
         Component: ssh
          Assignee: unassigned-bugs at mindrot.org
          Reporter: hektor at itc.rwth-aachen.de

If an IPv6 host has no AAAA DNS entry the DISPLAY variable might
contain a hexadecimal/colon address.

The function x11_connect_display() in channels.c determins the
"hostname"
in the DISPLAY variable by searching for the *first* colon occurence
(line 3550 in that file):

    cp = strchr(buf, ':');

This seems to be incompatible with the representation of IPv6
addresses.

The resulting error produces an error message which can be attributed 
to the debug2 statement later in that function (line 3582):

    connect 2001 port 6006: Invalid argument
    Error: Can't open display: localhost:10.0

A workaround is documented here:

  
http://www.technologische-hilfe.de/antworten/lightdm-xdm-sitzung-und-ipv6-support-241428392.html

My guess is that the problem can be solved by using strrchr in that
statement:

     cp = strrchr(buf, ':');

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


More information about the openssh-bugs mailing list