File N_xorg-server-xdmcp.patch of Package xorg-x11-server

Index: xorg-server-1.12.1/os/access.c
===================================================================
--- xorg-server-1.12.1.orig/os/access.c
+++ xorg-server-1.12.1/os/access.c
@@ -714,7 +714,9 @@ DefineSelf(int fd)
 
             /* 
              * ignore 'localhost' entries as they're not useful
-             * on the other end of the wire
+             * on the other end of the wire and because on hosts
+	     * with shared home dirs they'll result in conflicting
+	     * entries in ~/.Xauthority
              */
             if (ifr->ifa_flags & IFF_LOOPBACK)
                 continue;
@@ -735,6 +737,14 @@ DefineSelf(int fd)
             else if (family == FamilyInternet6 &&
                      IN6_IS_ADDR_LOOPBACK((struct in6_addr *) addr))
                 continue;
+
+	    /* Ignore IPv6 link local addresses (fe80::/10), because
+	     * they need a scope identifier, which we have no way
+	     * of telling to the other end.
+	     */
+	    if (family == FamilyInternet6 &&
+			    IN6_IS_ADDR_LINKLOCAL((struct in6_addr *)addr))
+		    continue;
 #endif
             XdmcpRegisterConnection(family, (char *) addr, len);
 #if defined(IPv6) && defined(AF_INET6)
openSUSE Build Service is sponsored by