bugzilla-daemon at mindrot.org
2002-Mar-22 11:56 UTC
[Bug 180] New: [PATCH] sshd sets no ToS bit on connections with IPv4-mapped IPv6 addresses
http://bugzilla.mindrot.org/show_bug.cgi?id=180 Summary: [PATCH] sshd sets no ToS bit on connections with IPv4- mapped IPv6 addresses Product: Portable OpenSSH Version: -current Platform: ix86 OS/Version: Linux Status: NEW Severity: minor Priority: P2 Component: sshd AssignedTo: openssh-unix-dev at mindrot.org ReportedBy: openssh at misc.tecq.org sshd recognises IPv4-mapped IPv6 addresses as non-IPv4 connections and therefore does not set the ToS bit. The following patch solves this problem. Compatibility checks with kerberos-enabled systems may be needed. --- openssh-3.1p1/packet.c Tue Mar 5 02:31:29 2002 +++ openssh-3.1p1-v4inv6-ToS/packet.c Thu Mar 21 13:43:01 2002 @@ -178,13 +178,24 @@ { struct sockaddr_storage to; socklen_t tolen = sizeof(to); + struct sockaddr_in6 *to6; memset(&to, 0, sizeof(to)); if (getsockname(connection_out, (struct sockaddr *)&to, &tolen) < 0) return 0; - if (to.ss_family != AF_INET) + switch (to.ss_family) { + case AF_INET: + return 1; +#ifdef IPV4_IN_IPV6 + case AF_INET6: + to6 = (struct sockaddr_in6 *)&to; + if (IN6_IS_ADDR_V4MAPPED(&to6->sin6_addr)) + return 1; return 0; - return 1; +#endif + default: + return 0; + } } ------- You are receiving this mail because: ------- You are the assignee for the bug, or are watching the assignee.