Hello community,

here is the log from the commit of package xauth for openSUSE:Factory checked 
in at 2013-10-29 09:40:34
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/xauth (Old)
 and      /work/SRC/openSUSE:Factory/.xauth.new (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "xauth"

Changes:
--------
--- /work/SRC/openSUSE:Factory/xauth/xauth.changes      2012-05-08 
12:01:15.000000000 +0200
+++ /work/SRC/openSUSE:Factory/.xauth.new/xauth.changes 2013-10-29 
09:40:35.000000000 +0100
@@ -1,0 +2,16 @@
+Fri Oct 25 14:48:02 UTC 2013 - [email protected]
+
+- Update to version 1.0.8
+  * Fix a long standing problem that for ssh tunneled connections a
+    display variable of the form: localhost:<N>.<M> leads to correct
+    authorization when an X client is started but "xauth list $DISPLAY"
+    returns nothing.
+  * Fix for: If using GDM with XDMCP, then ssh is not able to start X11
+    clients on the remote side. You get a "No xauth data; using fake
+    authentication data for X11 forwarding." from SSH.
+- obsoletes xauth-1.0.2.diff, 
+  u_xauth_Look-for-FamilyLocal-if-inet-or-inet6-addr.patch
+- adjusted xauth-tolerant-hostname-changes.diff
+- added new test_xauth tool to %files section
+
+-------------------------------------------------------------------

Old:
----
  u_xauth_Look-for-FamilyLocal-if-inet-or-inet6-addr.patch
  xauth-1.0.2.diff
  xauth-1.0.7.tar.bz2

New:
----
  xauth-1.0.8.tar.bz2

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Other differences:
------------------
++++++ xauth.spec ++++++
--- /var/tmp/diff_new_pack.BMRipu/_old  2013-10-29 09:40:35.000000000 +0100
+++ /var/tmp/diff_new_pack.BMRipu/_new  2013-10-29 09:40:35.000000000 +0100
@@ -1,7 +1,7 @@
 #
 # spec file for package xauth
 #
-# Copyright (c) 2012 SUSE LINUX Products GmbH, Nuernberg, Germany.
+# Copyright (c) 2013 SUSE LINUX Products GmbH, Nuernberg, Germany.
 #
 # All modifications and additions to the file contributed by third parties
 # remain the property of their copyright owners, unless otherwise agreed
@@ -15,18 +15,16 @@
 # Please submit bugfixes or comments via http://bugs.opensuse.org/
 #
 
+
 Name:           xauth
-Version:        1.0.7
-Release:        1
-License:        MIT
+Version:        1.0.8
+Release:        0
 Summary:        Utility to edit and display the X authorization information
-Url:            http://xorg.freedesktop.org/
+License:        MIT
 Group:          System/X11/Utilities
+Url:            http://xorg.freedesktop.org/
 Source0:        
http://xorg.freedesktop.org/releases/individual/app/%{name}-%{version}.tar.bz2
-# PATCH-FIX-UPSTREAM xauth-1.0.2.diff fdo#48642 -- Fix crash on removing 
non-existant entry
-Patch0:         xauth-1.0.2.diff
 Patch1:         xauth-tolerant-hostname-changes.diff
-Patch2:         u_xauth_Look-for-FamilyLocal-if-inet-or-inet6-addr.patch
 BuildRequires:  pkg-config
 BuildRequires:  pkgconfig(x11)
 BuildRequires:  pkgconfig(xau)
@@ -44,9 +42,7 @@
 
 %prep
 %setup -q
-%patch0 -p0
 %patch1 -p1
-%patch2 -p0
 
 %build
 %configure
@@ -59,6 +55,7 @@
 %defattr(-,root,root)
 %doc ChangeLog COPYING README
 %{_bindir}/xauth
+%{_bindir}/test_xauth
 %{_mandir}/man1/xauth.1%{?ext_man}
 
 %changelog

++++++ xauth-1.0.7.tar.bz2 -> xauth-1.0.8.tar.bz2 ++++++
++++ 11315 lines of diff (skipped)
++++    retrying with extended exclude list
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude 
config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 
--exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh 
old/xauth-1.0.7/ChangeLog new/xauth-1.0.8/ChangeLog
--- old/xauth-1.0.7/ChangeLog   2012-03-23 05:42:21.000000000 +0100
+++ new/xauth-1.0.8/ChangeLog   2013-10-11 20:57:36.000000000 +0200
@@ -1,3 +1,247 @@
+commit 4de4a231f3a718d2af0d2b00443c803f8bddfbc5
+Author: Dr. Tilmann Bubeck <[email protected]>
+Date:   Wed Oct 9 23:45:15 2013 +0200
+
+    Second version bump to 1.0.8
+
+commit f7425f45addce5629d338c051a41ec1a119ea51f
+Author: Dr. Tilmann Bubeck <[email protected]>
+Date:   Wed Oct 9 23:38:15 2013 +0200
+
+    Rewrote test_xauth to C to make automake and "make distclean" happy.
+
+commit c4356e8dc8b9fe039c38104551af93e0583ffbee
+Author: Dr. Tilmann Bubeck <[email protected]>
+Date:   Wed Oct 9 23:33:42 2013 +0200
+
+    Revert version bump back to 1.0.7 to prepare missing commit before 1.0.8
+
+commit d907dda4e5a2584ac15a404c8269b888b61bbf9e
+Author: Dr. Tilmann Bubeck <[email protected]>
+Date:   Tue Oct 8 21:45:06 2013 +0200
+
+    version bump to 1.0.8
+
+commit c6ecc2c8470093ba17ff1cf993df46f9e670173d
+Author: Dr. Tilmann Bubeck <[email protected]>
+Date:   Tue Oct 8 21:41:37 2013 +0200
+
+    Improved README to explain "make check".
+
+commit 4e05bce6da8eeb9eb98624cf868675eaf5816df5
+Author: Dr. Tilmann Bubeck <[email protected]>
+Date:   Tue Oct 8 21:34:49 2013 +0200
+
+    Added command "version" and command line arg "-V" to show version of xauth.
+
+commit e53df261c9ca11435df0c8853350d913b557446b
+Author: Dr. Tilmann Bubeck <[email protected]>
+Date:   Sun Oct 6 16:50:33 2013 +0200
+
+    Fix warning raised by "-Wshadow".
+
+commit 92de3583c7aaaa2040728808add2186348859b98
+Author: Dr. Tilmann Bubeck <[email protected]>
+Date:   Sun Oct 6 15:10:05 2013 +0200
+
+    Rework match_auth_dpy() to be easier to read and maintain (hopefully).
+
+commit 1555fff4ab458d7d4053f1ea6b74c3e14a65ad63
+Author: Egbert Eich <[email protected]>
+Date:   Wed Aug 14 22:11:06 2013 +0200
+
+    Make matching algorithm mimic XauGet*AuthByAddr
+    
+    Xlib (xcb) uses XauGetBestAuthByAddr() when looking for an
+    authorization. 'xauth [n]list $DISPLAY' used a slightly
+    stricter algorithm which doesn't find a possible authorization
+    for cases where either the family is set to FamilyWild or
+    address the address length is 0.
+    
+    Signed-off-by: Egbert Eich <[email protected]>
+
+commit 10cbe2ed2a96582e7ee9fa5cfe6f8f69a3a4e4d4
+Author: Dr. Tilmann Bubeck <[email protected]>
+Date:   Sun Oct 6 14:16:59 2013 +0200
+
+    Added black box tests for basic functionality started with "make check".
+
+commit 3be53072f8252962c6df740e64e897b970ae0349
+Author: Egbert Eich <[email protected]>
+Date:   Tue Oct 1 01:17:09 2013 +0200
+
+    Handle v4-mapped inet6 addresses correctly
+    
+    Handling of v4-mapped inet6 addresses has been introduced
+    with commit 58140dbbd39389ad6af58e201e055f3d4b92d368:
+    
+       Look for FamilyLocal if inet or inet6 address is loopback
+    
+    These adresses should be treated as inet addresses. This patch
+    makes the code consistent with the handling if xcb_auth.c in
+    libxcb.
+    
+    Signed-off-by: Egbert Eich <[email protected]>
+
+commit 58140dbbd39389ad6af58e201e055f3d4b92d368
+Author: Egbert Eich <[email protected]>
+Date:   Sun Sep 29 08:25:14 2013 -0700
+
+    Look for FamilyLocal if inet or inet6 address is loopback
+    
+    libxcb uses FamilyLocal authorization if the host name or IP in the
+    display string is from the loopback device. This patch adds the same
+    behavior to xauth.
+    This fixes a long standing problem that for ssh tunneled connections
+    a display variable of the form: localhost:<N>.<M> leads to correct
+    authorization when an X client is started but "xauth list $DISPLAY"
+    returns nothing.
+    
+    Signed-off-by: Egbert Eich <[email protected]>
+    Signed-off-by: Jeremy Huddleston Sequoia <[email protected]>
+    Reviewed-by: Jeremy Huddleston Sequoia <[email protected]>
+
+commit 09a9451af29545196cedfc8dcaf32e3f1ccc672b
+Author: Jeremy Huddleston Sequoia <[email protected]>
+Date:   Sun Sep 29 07:57:37 2013 -0700
+
+    Silenece lack of noreturn warning
+    
+    Signed-off-by: Jeremy Huddleston Sequoia <[email protected]>
+
+commit a2c8f59f13caf63a642bad1b97d9adf5a9e01bcb
+Author: Jeremy Huddleston Sequoia <[email protected]>
+Date:   Sun Sep 29 08:04:39 2013 -0700
+
+    Revert "Look for FamilyLocal if inet or inet6 address is loopback"
+    
+    Also reverts the followup "More fixes for compiler warnings regarding the 
use of "const"."
+    
+    This reverts commits fb328950ce1156b8228214240b213860b794b4c8 and
+    345c7bf0d09f26183cfde9ad1c812c8de71869a5.
+    
+    Fixes build regression found on darwin tinderbox.
+    
+    Per SUSv4*, IN6_IS_ADDR_LOOPBACK takes a 'const struct in6_addr *', not a
+    'const struct sockaddr_in6 *'.
+    
+    *: 
http://pubs.opengroup.org/onlinepubs/9699919799/basedefs/netinet_in.h.html
+
+commit fb328950ce1156b8228214240b213860b794b4c8
+Author: Dr. Tilmann Bubeck <[email protected]>
+Date:   Wed Sep 25 09:36:58 2013 +0200
+
+    More fixes for compiler warnings regarding the use of "const".
+
+commit 345c7bf0d09f26183cfde9ad1c812c8de71869a5
+Author: Egbert Eich <[email protected]>
+Date:   Wed Aug 14 17:08:27 2013 +0200
+
+    Look for FamilyLocal if inet or inet6 address is loopback
+    
+    libxcb uses FamilyLocal authorization if the host name or IP in the
+    display string is from the loopback device. This patch adds the same
+    behavior to xauth.
+    This fixes a long standing problem that for ssh tunneled connections
+    a display variable of the form: localhost:<N>.<M> leads to correct
+    authorization when an X client is started but "xauth list $DISPLAY"
+    returns nothing.
+    
+    Signed-off-by: Egbert Eich <[email protected]>
+
+commit 289ca779f73840cb5c9d69b919413079d1be3fc2
+Author: Dr. Tilmann Bubeck <[email protected]>
+Date:   Tue Sep 24 11:21:52 2013 +0200
+
+    Fix various compiler warnings raised by modern gcc (4.8.1).
+
+commit 2440a254797cc3655c8743a9232f30a693f6f947
+Author: Thomas Klausner <[email protected]>
+Date:   Thu Jul 11 11:27:15 2013 +0200
+
+    Use copystring to create non-const string.]
+    
+    Hello!
+    
+    I see you're the official xauth maintainer according to
+    http://cgit.freedesktop.org/xorg/doc/xorg-docs/tree/MAINTAINERS#n80
+    
+    Can you please take a look at the attached patch and merge it?
+    
+    Thanks,
+     Thomas
+    
+    ----- Forwarded message from Thomas Klausner <[email protected]> -----
+    
+    Date: Sun, 30 Jun 2013 13:29:44 +0200
+    From: Thomas Klausner <[email protected]>
+    To: [email protected]
+    Cc: Thomas Klausner <[email protected]>
+    Subject: [PATCH:xauth] Use copystring to create non-const string.
+    
+    Fixes "error: assignment discards qualifiers from pointer target type"
+    
+    Signed-off-by: Thomas Klausner <[email protected]>
+
+commit eee471e446405350c02c221f044a70669dac48a2
+Author: Egbert Eich <[email protected]>
+Date:   Wed Aug 14 17:07:35 2013 +0200
+
+    Don't crash when running past the end of the chain
+    
+    Running past the end of the chain would cause a SEGV.
+    
+    Signed-off-by: Egbert Eich <[email protected]>
+
+commit 6dda11c17f2fdc47d43f269dccee98ec66cc8c4b
+Author: Alan Coopersmith <[email protected]>
+Date:   Sat Feb 23 10:13:14 2013 -0800
+
+    Assume signal handlers return void, as C89 requires
+    
+    Drops use of autoconf's obsolete AC_TYPE_SIGNAL and Imake's even more
+    obsolete SIGNALRETURNSINT.
+    
+    Signed-off-by: Alan Coopersmith <[email protected]>
+
+commit 399dc5d6282f90fee2f6071aadde977280656ffc
+Author: Alan Coopersmith <[email protected]>
+Date:   Wed Dec 26 23:11:36 2012 -0800
+
+    Remove unused DECnet ("DNETCONN") code from xauth
+    
+    Has never been converted to build in modular builds, so has been unusable
+    since X11R7.0 release in 2005.  DNETCONN support was removed from xtrans
+    back in 2008.
+    
+    Signed-off-by: Alan Coopersmith <[email protected]>
+
+commit fe46fcc3ae58767960434445a4ea9c3ce0a6724e
+Author: Alan Coopersmith <[email protected]>
+Date:   Wed Dec 26 23:09:31 2012 -0800
+
+    Remove unused TLI ("STREAMSCONN") code from xauth
+    
+    Has never been converted to build in modular builds, so has been unusable
+    since X11R7.0 release in 2005.  All known platforms with TLI/XTI support
+    that X11R7 & later releases run on also have (and mostly prefer) BSD
+    socket support for their networking API.
+    
+    And as the comment notes, it never worked right in xauth anyway.
+    
+    Signed-off-by: Alan Coopersmith <[email protected]>
+
+commit ea343d117b5dbb17fc753e08918f44f167207fa9
+Author: Jon TURNEY <[email protected]>
+Date:   Sat Oct 27 18:10:30 2012 +0100
+
+    Include Xwinsock.h rather than sys/socket.h on WIN32
+    
+    For AF_INET6, include Xwinsock.h rather than sys/socket.h on WIN32
+    
+    Signed-off-by: Jon TURNEY <[email protected]>
+    Reviewed-by: Yaakov Selkowitz <[email protected]>
+
 commit 374c8c7005200c13299fdcb7b7d1b12f9f4258ae
 Author: Alan Coopersmith <[email protected]>
 Date:   Thu Mar 22 21:41:35 2012 -0700
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude 
config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 
--exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh 
old/xauth-1.0.7/Makefile.am new/xauth-1.0.8/Makefile.am
--- old/xauth-1.0.7/Makefile.am 2012-03-23 05:41:43.000000000 +0100
+++ new/xauth-1.0.8/Makefile.am 2013-10-06 14:55:26.000000000 +0200
@@ -19,7 +19,7 @@
 #  TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
 #  PERFORMANCE OF THIS SOFTWARE.
 
-SUBDIRS = man
+SUBDIRS = man tests
 bin_PROGRAMS = xauth
 
 AM_CFLAGS = $(CWARNFLAGS) $(XAUTH_CFLAGS)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude 
config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 
--exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh 
old/xauth-1.0.7/README new/xauth-1.0.8/README
--- old/xauth-1.0.7/README      2012-03-23 05:41:43.000000000 +0100
+++ new/xauth-1.0.8/README      2013-10-08 21:42:19.000000000 +0200
@@ -1,5 +1,19 @@
+
+    I. OVERVIEW
+
 The xauth program is used to edit and display the authorization
 information used in connecting to the X server.
+The underlying "Authorization Protocol for X" is described in the
+README file of the libXau module of X11.
+
+    II. BUILDING
+
+Use "./autogen.sh" to configure the package and "make" to compile it.
+A black box check for the correctness of the package can be initiated
+by "make check" (make sure to install "cmdtest" from
+http://liw.fi/cmdtest/). The installation is done by "make install".
+
+   III. COMMUNICATION
 
 All questions regarding this software should be directed at the
 Xorg mailing list:
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude 
config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 
--exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh 
old/xauth-1.0.7/configure.ac new/xauth-1.0.8/configure.ac
--- old/xauth-1.0.7/configure.ac        2012-03-23 05:41:43.000000000 +0100
+++ new/xauth-1.0.8/configure.ac        2013-10-09 23:27:38.000000000 +0200
@@ -22,7 +22,7 @@
 
 AC_PREREQ([2.60])
 AC_INIT([xauth],
-       [1.0.7],
+       [1.0.8],
        [https://bugs.freedesktop.org/enter_bug.cgi?product=xorg],
        [xauth])
 AM_INIT_AUTOMAKE([foreign dist-bzip2])
@@ -36,14 +36,12 @@
 XORG_MACROS_VERSION(1.8)
 XORG_DEFAULT_OPTIONS
 
-AC_TYPE_SIGNAL
-
 AC_CHECK_HEADERS([net/errno.h])
 
 AC_CHECK_FUNCS([strlcpy])
 
 # Checks for pkg-config packages
-PKG_CHECK_MODULES(XAUTH, x11 xau xext xmuu)
+PKG_CHECK_MODULES(XAUTH, x11 xau xext xmuu xproto >= 7.0.17)
 
 # Transport selection macro from xtrans.m4
 # Needed to set *CONN defines for gethost.c & parsedpy.c
@@ -53,5 +51,6 @@
 
 AC_CONFIG_FILES([
        Makefile
+       tests/Makefile
        man/Makefile])
 AC_OUTPUT
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude 
config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 
--exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh 
old/xauth-1.0.7/gethost.c new/xauth-1.0.8/gethost.c
--- old/xauth-1.0.7/gethost.c   2012-03-23 05:41:43.000000000 +0100
+++ new/xauth-1.0.8/gethost.c   2013-10-04 21:32:30.000000000 +0200
@@ -29,12 +29,6 @@
 #include "config.h"
 #endif
 
-/* sorry, streams support does not really work yet */
-#if defined(STREAMSCONN) && defined(SVR4)
-#undef STREAMSCONN
-#define TCPCONN
-#endif
-
 #ifdef WIN32
 #include <X11/Xwinsock.h>
 #define EPROTOTYPE WSAEPROTOTYPE
@@ -48,7 +42,6 @@
 #define __TYPES__
 #endif
 #ifndef WIN32
-#ifndef STREAMSCONN
 #ifndef Lynx
 #include <sys/socket.h>
 #else
@@ -60,15 +53,10 @@
 #ifdef HAVE_NET_ERRNO_H
 #include <net/errno.h>
 #endif /* HAVE_NET_ERRNO_H */
-#endif /* !STREAMSCONN */
 #endif /* !WIN32 */
 #include <errno.h>
 #include "xauth.h"
 
-#ifdef DNETCONN
-#include <netdnet/dn.h>
-#include <netdnet/dnetdb.h>
-#endif
 
 #ifndef WIN32
 #include <arpa/inet.h>
@@ -77,14 +65,13 @@
 const char *
 get_hostname (Xauth *auth)
 {
+#ifdef TCPCONN
     static struct hostent *hp;
     int af;
-#ifdef DNETCONN
-    struct nodeent *np;
-    static char nodeaddr[4 + 2 * DN_MAXADDL];
-#endif /* DNETCONN */
 
     hp = NULL;
+#endif
+
     if (auth->address_length == 0)
        return "Illegal Address";
 #ifdef TCPCONN
@@ -124,19 +111,6 @@
        }
     }
 #endif
-#ifdef DNETCONN
-    if (auth->family == FamilyDECnet) {
-       struct dn_naddr *addr_ptr = (struct dn_naddr *) auth->address;
-
-       if ((no_name_lookups == False) &&
-           (np = getnodebyaddr(addr_ptr->a_addr, addr_ptr->a_len, AF_DECnet))) 
{
-           sprintf(nodeaddr, "%s:", np->n_name);
-       } else {
-           sprintf(nodeaddr, "%s:", dnet_htoa(auth->address));
-       }
-       return(nodeaddr);
-    }
-#endif
 
     return (NULL);
 }
@@ -177,25 +151,6 @@
 }
 #endif
 
-#ifdef DNETCONN
-static Bool get_dnet_address (name, resultp)
-    char *name;
-    struct dn_naddr *resultp;
-{
-    struct dn_naddr *dnaddrp, dnaddr;
-    struct nodeent *np;
-
-    if (dnaddrp = dnet_addr (name)) {  /* stolen from xhost */
-       dnaddr = *dnaddrp;
-    } else {
-       if ((np = getnodebyname (name)) == NULL) return False;
-       dnaddr.a_len = np->n_length;
-       memmove( dnaddr.a_addr, np->n_addr, np->n_length);
-    }
-    *resultp = dnaddr;
-    return True;
-}
-#endif
 
 struct addrlist *get_address_info (
     int family,
@@ -216,9 +171,6 @@
     unsigned int hostinetaddr;
 #endif
 #endif
-#ifdef DNETCONN
-    struct dn_naddr dnaddr;
-#endif
     char buf[255];
 
     /*
@@ -275,16 +227,42 @@
        for (ai = firstai; ai != NULL; ai = ai->ai_next) {
            struct addrlist *duplicate;
 
+            len = 0;
            if (ai->ai_family == AF_INET) {
                struct sockaddr_in *sin = (struct sockaddr_in *)ai->ai_addr;
                src = &(sin->sin_addr);
-               len = sizeof(sin->sin_addr);
-               family = FamilyInternet;
+                if (*(const in_addr_t *) src == htonl(INADDR_LOOPBACK)) {
+                    family = FamilyLocal;
+                    if (get_local_hostname (buf, sizeof buf)) {
+                        src = buf;
+                        len = strlen (buf);
+                    } else
+                        src = NULL;
+                } else {
+                    len = sizeof(sin->sin_addr);
+                    family = FamilyInternet;
+                }
            } else if (ai->ai_family == AF_INET6) {
                struct sockaddr_in6 *sin6 = (struct sockaddr_in6 *)ai->ai_addr;
                src = &(sin6->sin6_addr);
-               len = sizeof(sin6->sin6_addr);
-               family = FamilyInternet6;
+                if (!IN6_IS_ADDR_V4MAPPED((const struct in6_addr *)src)) {
+                    if (IN6_IS_ADDR_LOOPBACK((const struct in6_addr *)src)) {
+                        family = FamilyLocal;
+                        if (get_local_hostname (buf, sizeof buf)) {
+                            src = buf;
+                            len = strlen (buf);
+                        } else
+                            src = NULL;
+                    } else {
+                        len = sizeof(sin6->sin6_addr);
+                        family = FamilyInternet6;
+                    }
+                } else {
+                    src = &(sin6->sin6_addr.s6_addr[12]);
+                    len = sizeof(((struct sockaddr_in *)
+                                  ai->ai_addr)->sin_addr);
+                    family = FamilyInternet;
+                }
            }
 
            for(duplicate = retval; duplicate != NULL; duplicate = 
duplicate->next) {
@@ -323,21 +301,24 @@
 #else
        if (!get_inet_address (host, &hostinetaddr)) return NULL;
        src = (char *) &hostinetaddr;
-       len = 4; /* sizeof inaddr.sin_addr, would fail on Cray */
+        if (*(const in_addr_t *) src == htonl(INADDR_LOOPBACK)) {
+            family = FamilyLocal;
+            if (get_local_hostname (buf, sizeof buf)) {
+                src = buf;
+                len = strlen (buf);
+            } else {
+                len = 0;
+                src = NULL;
+            }
+        } else
+            len = 4; /* sizeof inaddr.sin_addr, would fail on Cray */
        break;
 #endif /* IPv6 */
 #else
        return NULL;
 #endif
       case FamilyDECnet:               /* host::0 */
-#ifdef DNETCONN
-       if (!get_dnet_address (host, &dnaddr)) return NULL;
-       src = (char *) &dnaddr;
-       len = (sizeof dnaddr);
-       break;
-#else
        /* fall through since we don't have code for it */
-#endif
       default:
        src = NULL;
        len = 0;
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude 
config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 
--exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh 
old/xauth-1.0.7/man/xauth.man new/xauth-1.0.8/man/xauth.man
--- old/xauth-1.0.7/man/xauth.man       2012-03-23 05:41:43.000000000 +0100
+++ new/xauth-1.0.8/man/xauth.man       2013-10-08 21:42:19.000000000 +0200
@@ -77,6 +77,9 @@
 This option indicates that \fIxauth\fP should not attempt to resolve any
 hostnames, but should simply always print the host address as stored in
 the authority file.
+.TP 8
+.B \-V
+This option shows the version number of the xauth executable.
 .SH COMMANDS
 The following commands may be used to manipulate authority files:
 .TP 8
@@ -180,6 +183,9 @@
 The program exits, ignoring any modifications.  This may also be accomplished
 by pressing the interrupt character.
 .TP 8
+.B "version"
+This command shows the version number of the xauth executable.
+.TP 8
 .B "help [\fIstring\fP]"
 A description of all commands that begin with the given string (or all
 commands if no string is given) is printed on the standard output.
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude 
config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 
--exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh 
old/xauth-1.0.7/missing new/xauth-1.0.8/missing
--- old/xauth-1.0.7/missing     2012-03-23 05:41:48.000000000 +0100
+++ new/xauth-1.0.8/missing     2013-10-10 23:30:19.000000000 +0200
@@ -1,10 +1,9 @@
 #! /bin/sh
 # Common stub for a few missing GNU programs while installing.
 
-scriptversion=2009-04-28.21; # UTC
+scriptversion=2012-01-06.18; # UTC
 
-# Copyright (C) 1996, 1997, 1999, 2000, 2002, 2003, 2004, 2005, 2006,
-# 2008, 2009 Free Software Foundation, Inc.
+# Copyright (C) 1996-2012 Free Software Foundation, Inc.
 # Originally by Fran,cois Pinard <[email protected]>, 1996.
 
 # This program is free software; you can redistribute it and/or modify
@@ -26,7 +25,7 @@
 # the same distribution terms that you use for the rest of that program.
 
 if test $# -eq 0; then
-  echo 1>&2 "Try \`$0 --help' for more information"
+  echo 1>&2 "Try '$0 --help' for more information"
   exit 1
 fi
 
@@ -34,7 +33,7 @@
 sed_output='s/.* --output[ =]\([^ ]*\).*/\1/p'
 sed_minuso='s/.* -o \([^ ]*\).*/\1/p'
 
-# In the cases where this matters, `missing' is being run in the
+# In the cases where this matters, 'missing' is being run in the
 # srcdir already.
 if test -f configure.ac; then
   configure_ac=configure.ac
@@ -65,7 +64,7 @@
     echo "\
 $0 [OPTION]... PROGRAM [ARGUMENT]...
 
-Handle \`PROGRAM [ARGUMENT]...' for when PROGRAM is missing, or return an
+Handle 'PROGRAM [ARGUMENT]...' for when PROGRAM is missing, or return an
 error status if there is no known handling for PROGRAM.
 
 Options:
@@ -74,21 +73,20 @@
   --run           try to run the given command, and emulate it if it fails
 
 Supported PROGRAM values:
-  aclocal      touch file \`aclocal.m4'
-  autoconf     touch file \`configure'
-  autoheader   touch file \`config.h.in'
+  aclocal      touch file 'aclocal.m4'
+  autoconf     touch file 'configure'
+  autoheader   touch file 'config.h.in'
   autom4te     touch the output file, or create a stub one
-  automake     touch all \`Makefile.in' files
-  bison        create \`y.tab.[ch]', if possible, from existing .[ch]
-  flex         create \`lex.yy.c', if possible, from existing .c
+  automake     touch all 'Makefile.in' files
+  bison        create 'y.tab.[ch]', if possible, from existing .[ch]
+  flex         create 'lex.yy.c', if possible, from existing .c
   help2man     touch the output file
-  lex          create \`lex.yy.c', if possible, from existing .c
+  lex          create 'lex.yy.c', if possible, from existing .c
   makeinfo     touch the output file
-  tar          try tar, gnutar, gtar, then tar without non-portable flags
-  yacc         create \`y.tab.[ch]', if possible, from existing .[ch]
+  yacc         create 'y.tab.[ch]', if possible, from existing .[ch]
 
-Version suffixes to PROGRAM as well as the prefixes \`gnu-', \`gnu', and
-\`g' are ignored when checking the name.
+Version suffixes to PROGRAM as well as the prefixes 'gnu-', 'gnu', and
+'g' are ignored when checking the name.
 
 Send bug reports to <[email protected]>."
     exit $?
@@ -100,8 +98,8 @@
     ;;
 
   -*)
-    echo 1>&2 "$0: Unknown \`$1' option"
-    echo 1>&2 "Try \`$0 --help' for more information"
+    echo 1>&2 "$0: Unknown '$1' option"
+    echo 1>&2 "Try '$0 --help' for more information"
     exit 1
     ;;
 
@@ -122,22 +120,13 @@
     # Not GNU programs, they don't have --version.
     ;;
 
-  tar*)
-    if test -n "$run"; then
-       echo 1>&2 "ERROR: \`tar' requires --run"
-       exit 1
-    elif test "x$2" = "x--version" || test "x$2" = "x--help"; then
-       exit 1
-    fi
-    ;;
-
   *)
     if test -z "$run" && ($1 --version) > /dev/null 2>&1; then
        # We have it, but it failed.
        exit 1
     elif test "x$2" = "x--version" || test "x$2" = "x--help"; then
        # Could not run --version or --help.  This is probably someone
-       # running `$TOOL --version' or `$TOOL --help' to check whether
+       # running '$TOOL --version' or '$TOOL --help' to check whether
        # $TOOL exists and not knowing $TOOL uses missing.
        exit 1
     fi
@@ -149,27 +138,27 @@
 case $program in
   aclocal*)
     echo 1>&2 "\
-WARNING: \`$1' is $msg.  You should only need it if
-         you modified \`acinclude.m4' or \`${configure_ac}'.  You might want
-         to install the \`Automake' and \`Perl' packages.  Grab them from
+WARNING: '$1' is $msg.  You should only need it if
+         you modified 'acinclude.m4' or '${configure_ac}'.  You might want
+         to install the Automake and Perl packages.  Grab them from
          any GNU archive site."
     touch aclocal.m4
     ;;
 
   autoconf*)
     echo 1>&2 "\
-WARNING: \`$1' is $msg.  You should only need it if
-         you modified \`${configure_ac}'.  You might want to install the
-         \`Autoconf' and \`GNU m4' packages.  Grab them from any GNU
+WARNING: '$1' is $msg.  You should only need it if
+         you modified '${configure_ac}'.  You might want to install the
+         Autoconf and GNU m4 packages.  Grab them from any GNU
          archive site."
     touch configure
     ;;
 
   autoheader*)
     echo 1>&2 "\
-WARNING: \`$1' is $msg.  You should only need it if
-         you modified \`acconfig.h' or \`${configure_ac}'.  You might want
-         to install the \`Autoconf' and \`GNU m4' packages.  Grab them
+WARNING: '$1' is $msg.  You should only need it if
+         you modified 'acconfig.h' or '${configure_ac}'.  You might want
+         to install the Autoconf and GNU m4 packages.  Grab them
          from any GNU archive site."
     files=`sed -n 's/^[ ]*A[CM]_CONFIG_HEADER(\([^)]*\)).*/\1/p' 
${configure_ac}`
     test -z "$files" && files="config.h"
@@ -186,9 +175,9 @@
 
   automake*)
     echo 1>&2 "\
-WARNING: \`$1' is $msg.  You should only need it if
-         you modified \`Makefile.am', \`acinclude.m4' or \`${configure_ac}'.
-         You might want to install the \`Automake' and \`Perl' packages.
+WARNING: '$1' is $msg.  You should only need it if
+         you modified 'Makefile.am', 'acinclude.m4' or '${configure_ac}'.
+         You might want to install the Automake and Perl packages.
          Grab them from any GNU archive site."
     find . -type f -name Makefile.am -print |
           sed 's/\.am$/.in/' |
@@ -197,10 +186,10 @@
 
   autom4te*)
     echo 1>&2 "\
-WARNING: \`$1' is needed, but is $msg.
+WARNING: '$1' is needed, but is $msg.
          You might have modified some files without having the
          proper tools for further handling them.
-         You can get \`$1' as part of \`Autoconf' from any GNU
+         You can get '$1' as part of Autoconf from any GNU
          archive site."
 
     file=`echo "$*" | sed -n "$sed_output"`
@@ -220,13 +209,13 @@
 
   bison*|yacc*)
     echo 1>&2 "\
-WARNING: \`$1' $msg.  You should only need it if
-         you modified a \`.y' file.  You may need the \`Bison' package
+WARNING: '$1' $msg.  You should only need it if
+         you modified a '.y' file.  You may need the Bison package
          in order for those modifications to take effect.  You can get
-         \`Bison' from any GNU archive site."
+         Bison from any GNU archive site."
     rm -f y.tab.c y.tab.h
     if test $# -ne 1; then
-        eval LASTARG="\${$#}"
+        eval LASTARG=\${$#}
        case $LASTARG in
        *.y)
            SRCFILE=`echo "$LASTARG" | sed 's/y$/c/'`
@@ -250,13 +239,13 @@
 
   lex*|flex*)
     echo 1>&2 "\
-WARNING: \`$1' is $msg.  You should only need it if
-         you modified a \`.l' file.  You may need the \`Flex' package
+WARNING: '$1' is $msg.  You should only need it if
+         you modified a '.l' file.  You may need the Flex package
          in order for those modifications to take effect.  You can get
-         \`Flex' from any GNU archive site."
+         Flex from any GNU archive site."
     rm -f lex.yy.c
     if test $# -ne 1; then
-        eval LASTARG="\${$#}"
+        eval LASTARG=\${$#}
        case $LASTARG in
        *.l)
            SRCFILE=`echo "$LASTARG" | sed 's/l$/c/'`
@@ -273,10 +262,10 @@
 
   help2man*)
     echo 1>&2 "\
-WARNING: \`$1' is $msg.  You should only need it if
+WARNING: '$1' is $msg.  You should only need it if
         you modified a dependency of a manual page.  You may need the
-        \`Help2man' package in order for those modifications to take
-        effect.  You can get \`Help2man' from any GNU archive site."
+        Help2man package in order for those modifications to take
+        effect.  You can get Help2man from any GNU archive site."
 
     file=`echo "$*" | sed -n "$sed_output"`
     test -z "$file" && file=`echo "$*" | sed -n "$sed_minuso"`
@@ -291,12 +280,12 @@
 
   makeinfo*)
     echo 1>&2 "\
-WARNING: \`$1' is $msg.  You should only need it if
-         you modified a \`.texi' or \`.texinfo' file, or any other file
+WARNING: '$1' is $msg.  You should only need it if
+         you modified a '.texi' or '.texinfo' file, or any other file
          indirectly affecting the aspect of the manual.  The spurious
-         call might also be the consequence of using a buggy \`make' (AIX,
-         DU, IRIX).  You might want to install the \`Texinfo' package or
-         the \`GNU make' package.  Grab either from any GNU archive site."
+         call might also be the consequence of using a buggy 'make' (AIX,
+         DU, IRIX).  You might want to install the Texinfo package or
+         the GNU make package.  Grab either from any GNU archive site."
     # The file to touch is that specified with -o ...
     file=`echo "$*" | sed -n "$sed_output"`
     test -z "$file" && file=`echo "$*" | sed -n "$sed_minuso"`
@@ -318,49 +307,14 @@
     touch $file
     ;;
 
-  tar*)
-    shift
-
-    # We have already tried tar in the generic part.
-    # Look for gnutar/gtar before invocation to avoid ugly error
-    # messages.
-    if (gnutar --version > /dev/null 2>&1); then
-       gnutar "$@" && exit 0
-    fi
-    if (gtar --version > /dev/null 2>&1); then
-       gtar "$@" && exit 0
-    fi
-    firstarg="$1"
-    if shift; then
-       case $firstarg in
-       *o*)
-           firstarg=`echo "$firstarg" | sed s/o//`
-           tar "$firstarg" "$@" && exit 0
-           ;;
-       esac
-       case $firstarg in
-       *h*)
-           firstarg=`echo "$firstarg" | sed s/h//`
-           tar "$firstarg" "$@" && exit 0
-           ;;
-       esac
-    fi
-
-    echo 1>&2 "\
-WARNING: I can't seem to be able to run \`tar' with the given arguments.
-         You may want to install GNU tar or Free paxutils, or check the
-         command line arguments."
-    exit 1
-    ;;
-
   *)
     echo 1>&2 "\
-WARNING: \`$1' is needed, and is $msg.
+WARNING: '$1' is needed, and is $msg.
          You might have modified some files without having the
-         proper tools for further handling them.  Check the \`README' file,
+         proper tools for further handling them.  Check the 'README' file,
          it often tells you about the needed prerequisites for installing
          this package.  You may also peek at any GNU archive site, in case
-         some other package would contain this missing \`$1' program."
+         some other package would contain this missing '$1' program."
     exit 1
     ;;
 esac
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude 
config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 
--exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh 
old/xauth-1.0.7/process.c new/xauth-1.0.8/process.c
--- old/xauth-1.0.7/process.c   2012-03-23 05:41:43.000000000 +0100
+++ new/xauth-1.0.8/process.c   2013-10-08 21:42:19.000000000 +0200
@@ -38,7 +38,11 @@
 #include <ctype.h>
 #include <errno.h>
 #include <sys/stat.h>
+#ifndef WIN32
 #include <sys/socket.h>
+#else
+#include <X11/Xwinsock.h>
+#endif
 
 #include <signal.h>
 #include <X11/X.h>                     /* for Family constants */
@@ -112,6 +116,7 @@
 static int do_quit ( const char *inputfilename, int lineno, int argc, const 
char **argv );
 static int do_source ( const char *inputfilename, int lineno, int argc, const 
char **argv );
 static int do_generate ( const char *inputfilename, int lineno, int argc, 
const char **argv );
+static int do_version ( const char *inputfilename, int lineno, int argc, const 
char **argv );
 
 static CommandTable command_table[] = {        /* table of known commands */
     { "add",      2, 3, do_add,
@@ -140,6 +145,8 @@
        "remove dpyname...              remove entries" },
     { "source",   1, 6, do_source,
        "source filename                read commands from file" },
+    { "version",  1, 7, do_version,
+       "version                        show version number of xauth" },
     { "?",        1, 1, do_questionmark,
        "?                              list available commands" },
     { "generate", 1, 8, do_generate,
@@ -244,17 +251,17 @@
     return s;
 }
 
-static char **
+static const char **
 split_into_words(char *src, int *argcp)  /* argvify string */
 {
     char *jword;
     char savec;
-    char **argv;
+    const char **argv;
     int cur, total;
 
     *argcp = 0;
 #define WORDSTOALLOC 4                 /* most lines are short */
-    argv = (char **) malloc (WORDSTOALLOC * sizeof (char *));
+    argv = malloc (WORDSTOALLOC * sizeof (char *));
     if (!argv) return NULL;
     cur = 0;
     total = WORDSTOALLOC;
@@ -272,7 +279,7 @@
        *src = '\0';
        if (cur == total) {
            total += WORDSTOALLOC;
-           argv = (char **) realloc (argv, total * sizeof (char *));
+           argv = realloc (argv, total * sizeof (char *));
            if (!argv) return NULL;
        }
        argv[cur++] = jword;
@@ -633,18 +640,17 @@
 #define WRITES(fd, S) (void)write((fd), (S), strlen((S)))
 
 /* ARGSUSED */
-static RETSIGTYPE
+_X_NORETURN
+static void
 die(int sig)
 {
     dieing = True;
     _exit (auth_finalize ());
     /* NOTREACHED */
-#ifdef SIGNALRETURNSINT
-    return -1;                         /* for picky compilers */
-#endif
 }
 
-static RETSIGTYPE
+_X_NORETURN
+static void
 catchsig(int sig)
 {
 #ifdef SYSV
@@ -661,9 +667,6 @@
 #endif
     die (sig);
     /* NOTREACHED */
-#ifdef SIGNALRETURNSINT
-    return -1;                         /* for picky compilers */
-#endif
 }
 
 static void
@@ -1066,11 +1069,31 @@
 static int
 match_auth_dpy(register Xauth *a, register Xauth *b)
 {
-    return ((a->family == b->family &&
-            a->address_length == b->address_length &&
-            a->number_length == b->number_length &&
-            memcmp(a->address, b->address, a->address_length) == 0 &&
-            memcmp(a->number, b->number, a->number_length) == 0) ? 1 : 0);
+    if (a->family != FamilyWild && b->family != FamilyWild) {
+        /* Both "a" and "b" are not FamilyWild, they are "normal" families. */
+       
+       /* Make sure, that both families match: */
+       if (a->family != b->family)
+            return 0;
+       
+       /* By looking at 'man Xsecurity' and the code in
+        * GetAuthByAddr() and XauGetBestAuthByAddr() in libXau, we
+        * decided, that the address is only relevant for "normal"
+        * families and therefore should be ignored for
+        * "FamilyWild". */
+       if (a->address_length != b->address_length ||
+            memcmp(a->address, b->address, a->address_length) != 0)
+            return 0;
+    }
+    
+    if (a->number_length != 0 && b->number_length != 0) {
+       /* Both "a" and "b" have a number, make sure they match: */
+       if (a->number_length != b->number_length ||
+           memcmp(a->number, b->number, a->number_length) != 0)
+            return 0;
+    }
+    
+    return 1;
 }
 
 /* return non-zero iff display and authorization type are the same */
@@ -1282,8 +1305,11 @@
     /*
      * unlink the auth we were asked to
      */
-    while (!eq_auth((list = *listp)->auth, auth))
-       listp = &list->next;
+    while (!eq_auth((list = *listp)->auth, auth)) {
+        listp = &list->next;
+        if (!*listp)
+            return 0;
+    }
     *listp = list->next;
     XauDisposeAuth (list->auth);                    /* free the auth */
     free (list);                                   /* free the link */
@@ -1300,23 +1326,23 @@
  * help
  */
 int
-print_help(FILE *fp, const char *cmd, const char *prefix)
+print_help(FILE *fp, const char *cmd, const char *line_prefix)
 {
     CommandTable *ct;
     int n = 0;
 
-    if (!prefix) prefix = "";
+    if (!line_prefix) line_prefix = "";
 
     if (!cmd) {                                /* if no cmd, print all help */
        for (ct = command_table; ct->name; ct++) {
-           fprintf (fp, "%s%s\n", prefix, ct->helptext);
+           fprintf (fp, "%s%s\n", line_prefix, ct->helptext);
            n++;
        }
     } else {
        int len = strlen (cmd);
        for (ct = command_table; ct->name; ct++) {
            if (strncmp (cmd, ct->name, len) == 0) {
-               fprintf (fp, "%s%s\n", prefix, ct->helptext);
+               fprintf (fp, "%s%s\n", line_prefix, ct->helptext);
                n++;
            }
        }
@@ -1389,6 +1415,17 @@
 }
 
 /*
+ * version
+ */
+/* ARGSUSED */
+static int
+do_version(const char *inputfilename, int lineno, int argc, const char **argv)
+{
+    puts (PACKAGE_VERSION);
+    return 0;
+}
+
+/*
  * list [displayname ...]
  */
 static int
@@ -1801,6 +1838,7 @@
     int authdatalen = 0;
     const char *hexdata;
     char *authdata = NULL;
+    char *hex;
 
     if (argc < 2 || !argv[1]) {
        prefix (inputfilename, lineno);
@@ -1891,10 +1929,10 @@
 
     auth_in = XSecurityAllocXauth();
     if (strcmp (protoname, DEFAULT_PROTOCOL_ABBREV) == 0) {
-        auth_in->name = DEFAULT_PROTOCOL;
+        auth_in->name = copystring(DEFAULT_PROTOCOL, strlen(DEFAULT_PROTOCOL));
     }
     else
-       auth_in->name = protoname;
+       auth_in->name = copystring (protoname, strlen(protoname));
     auth_in->name_length = strlen(auth_in->name);
     auth_in->data = authdata;
     auth_in->data_length = authdatalen;
@@ -1916,18 +1954,18 @@
        printf("authorization id is %ld\n", id_return);
 
     /* create a fake input line to give to do_add */
-
+    hex = bintohex(auth_return->data_length, auth_return->data);
     args[0] = "add";
     args[1] = displayname;
     args[2] = auth_in->name;
-    args[3] = bintohex(auth_return->data_length, auth_return->data);
+    args[3] = hex;
 
     status = do_add(inputfilename, lineno, 4, args);
 
     if (authdata) free(authdata);
     XSecurityFreeXauth(auth_in);
     XSecurityFreeXauth(auth_return);
-    free((char *) args[3]); /* hex data */
+    free(hex);
     XCloseDisplay(dpy);
     return status;
 }
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude 
config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 
--exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh 
old/xauth-1.0.7/tests/Makefile.am new/xauth-1.0.8/tests/Makefile.am
--- old/xauth-1.0.7/tests/Makefile.am   1970-01-01 01:00:00.000000000 +0100
+++ new/xauth-1.0.8/tests/Makefile.am   2013-10-10 23:29:31.000000000 +0200
@@ -0,0 +1,8 @@
+## Process this file with automake to produce Makefile.in
+
+TESTS = test_xauth
+bin_PROGRAMS = test_xauth
+test_xauth_SOURCES = test_xauth.c
+
+
+
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude 
config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 
--exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh 
old/xauth-1.0.7/tests/test_xauth.c new/xauth-1.0.8/tests/test_xauth.c
--- old/xauth-1.0.7/tests/test_xauth.c  1970-01-01 01:00:00.000000000 +0100
+++ new/xauth-1.0.8/tests/test_xauth.c  2013-10-10 23:29:31.000000000 +0200
@@ -0,0 +1,6 @@
+#include <unistd.h>
+
+int main(int argc, char *argv[])
+{
+    execlp("cmdtest", "cmdtest", ".", NULL);
+}
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude 
config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 
--exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh 
old/xauth-1.0.7/xauth.c new/xauth-1.0.8/xauth.c
--- old/xauth-1.0.7/xauth.c     2012-03-23 05:41:43.000000000 +0100
+++ new/xauth-1.0.8/xauth.c     2013-10-08 21:42:19.000000000 +0200
@@ -56,6 +56,7 @@
 /*
  * utility routines
  */
+_X_NORETURN
 static void
 usage(void)
 {
@@ -67,6 +68,7 @@
 "    -q                             turn off extra messages",
 "    -i                             ignore locks on authority file",
 "    -b                             break locks on authority file",
+"    -V                             show version number of xauth",
 "",
 "and commands have the following syntax:",
 "",
@@ -111,9 +113,8 @@
 
        if (arg[0] == '-') {
            const char *flag;
-
            for (flag = (arg + 1); *flag; flag++) {
-               switch (*flag) {
+               switch (*flag) {
                  case 'f':             /* -f authfilename */
                    if (++i >= argc) usage ();
                    authfilename = argv[i];
@@ -133,9 +134,12 @@
                  case 'n':             /* -n */
                    no_name_lookups = True;
                    continue;
+                 case 'V':             /* -V */
+                   puts(PACKAGE_VERSION);
+                   exit(0);
                  default:
                    usage ();
-               }
+               }
            }
        } else {
            sourcename = "(argv)";

++++++ xauth-tolerant-hostname-changes.diff ++++++
--- /var/tmp/diff_new_pack.BMRipu/_old  2013-10-29 09:40:36.000000000 +0100
+++ /var/tmp/diff_new_pack.BMRipu/_new  2013-10-29 09:40:36.000000000 +0100
@@ -1,8 +1,8 @@
-Index: xauth-1.0.7/gethost.c
+Index: xauth-1.0.8/gethost.c
 ===================================================================
---- xauth-1.0.7.orig/gethost.c
-+++ xauth-1.0.7/gethost.c
-@@ -201,7 +201,8 @@ struct addrlist *get_address_info (
+--- xauth-1.0.8.orig/gethost.c
++++ xauth-1.0.8/gethost.c
+@@ -156,7 +156,8 @@ struct addrlist *get_address_info (
      int family,
      const char *fulldpyname,
      int prefix,
@@ -12,7 +12,7 @@
  {
      struct addrlist *retval = NULL;
      int len = 0;
-@@ -231,7 +232,7 @@ struct addrlist *get_address_info (
+@@ -183,7 +184,7 @@ struct addrlist *get_address_info (
        if (prefix == 0 && (strncmp (fulldpyname, "unix:", 5) == 0 ||
                            fulldpyname[0] == ':')) {
  
@@ -21,10 +21,37 @@
                len = 0;
            } else {
                src = buf;
-Index: xauth-1.0.7/parsedpy.c
+@@ -233,7 +234,7 @@ struct addrlist *get_address_info (
+               src = &(sin->sin_addr);
+                 if (*(const in_addr_t *) src == htonl(INADDR_LOOPBACK)) {
+                     family = FamilyLocal;
+-                    if (get_local_hostname (buf, sizeof buf)) {
++                    if (get_local_hostname (buf, sizeof buf, localhostname)) {
+                         src = buf;
+                         len = strlen (buf);
+                     } else
+@@ -248,7 +249,7 @@ struct addrlist *get_address_info (
+                 if (!IN6_IS_ADDR_V4MAPPED((const struct in6_addr *)src)) {
+                     if (IN6_IS_ADDR_LOOPBACK((const struct in6_addr *)src)) {
+                         family = FamilyLocal;
+-                        if (get_local_hostname (buf, sizeof buf)) {
++                        if (get_local_hostname (buf, sizeof buf, 
localhostname)) {
+                             src = buf;
+                             len = strlen (buf);
+                         } else
+@@ -303,7 +304,7 @@ struct addrlist *get_address_info (
+       src = (char *) &hostinetaddr;
+         if (*(const in_addr_t *) src == htonl(INADDR_LOOPBACK)) {
+             family = FamilyLocal;
+-            if (get_local_hostname (buf, sizeof buf)) {
++            if (get_local_hostname (buf, sizeof buf, localhostname)) {
+                 src = buf;
+                 len = strlen (buf);
+             } else {
+Index: xauth-1.0.8/parsedpy.c
 ===================================================================
---- xauth-1.0.7.orig/parsedpy.c
-+++ xauth-1.0.7/parsedpy.c
+--- xauth-1.0.8.orig/parsedpy.c
++++ xauth-1.0.8/parsedpy.c
 @@ -70,20 +70,23 @@ copystring (const char *src, int len)
  
  
@@ -69,11 +96,11 @@
            family = FamilyInternet;
        }
  #endif
-Index: xauth-1.0.7/process.c
+Index: xauth-1.0.8/process.c
 ===================================================================
---- xauth-1.0.7.orig/process.c
-+++ xauth-1.0.7/process.c
-@@ -463,7 +463,7 @@ read_auth_entries(FILE *fp, Bool numeric
+--- xauth-1.0.8.orig/process.c
++++ xauth-1.0.8/process.c
+@@ -470,7 +470,7 @@ read_auth_entries(FILE *fp, Bool numeric
  }
  
  static Bool
@@ -82,7 +109,7 @@
  {
      int family;
      char *host = NULL, *rest = NULL;
-@@ -483,11 +483,13 @@ get_displayname_auth(const char *display
+@@ -490,11 +490,13 @@ get_displayname_auth(const char *display
        prelen = (cp - displayname);
  
      if (!parse_displayname (displayname + ((prelen > 0) ? prelen + 1 : 0),
@@ -97,7 +124,7 @@
      if (addrlist_head) {
        char buf[40];                   /* want to hold largest display num */
        unsigned short dpylen;
-@@ -1217,13 +1219,18 @@ iterdpy (const char *inputfilename, int
+@@ -1240,13 +1242,18 @@ iterdpy (const char *inputfilename, int
      Xauth *tmp_auth;
      AuthList *proto_head, *proto;
      AuthList *l, *next;
@@ -118,7 +145,7 @@
            prefix (inputfilename, lineno);
            baddisplayname (displayname, argv[0]);
            errors++;
-@@ -1567,7 +1574,7 @@ do_add(const char *inputfilename, int li
+@@ -1601,7 +1608,7 @@ do_add(const char *inputfilename, int li
        }
      }
  
@@ -127,10 +154,10 @@
        prefix (inputfilename, lineno);
        baddisplayname (dpyname, argv[0]);
        free (key);
-Index: xauth-1.0.7/xauth.h
+Index: xauth-1.0.8/xauth.h
 ===================================================================
---- xauth-1.0.7.orig/xauth.h
-+++ xauth-1.0.7/xauth.h
+--- xauth-1.0.8.orig/xauth.h
++++ xauth-1.0.8/xauth.h
 @@ -48,10 +48,10 @@ struct addrlist {
  };
  

-- 
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to