From a6e20e9bf2bf266e3b800bf6d72306bed9639ee2 Mon Sep 17 00:00:00 2001
From: "Daniel P. Berrange" <berrange@fedoraproject.org>
Date: Thu, 5 Mar 2009 16:10:38 +0000
Subject: [PATCH] Fix generation of SASL address when using AF_UNIX

---
 gtk-vnc-0.3.8-sasl-auth-tunnel.patch | 25 +++++++++++++++++++++++++
 gtk-vnc.spec                         |  7 ++++++-
 2 files changed, 31 insertions(+), 1 deletion(-)
 create mode 100644 gtk-vnc-0.3.8-sasl-auth-tunnel.patch

diff --git a/gtk-vnc-0.3.8-sasl-auth-tunnel.patch b/gtk-vnc-0.3.8-sasl-auth-tunnel.patch
new file mode 100644
index 0000000..58e0c9a
--- /dev/null
+++ b/gtk-vnc-0.3.8-sasl-auth-tunnel.patch
@@ -0,0 +1,25 @@
+diff -rup gtk-vnc-0.3.8.orig/src/gvnc.c gtk-vnc-0.3.8.new/src/gvnc.c
+--- gtk-vnc-0.3.8.orig/src/gvnc.c	2009-03-05 15:35:33.000000000 +0000
++++ gtk-vnc-0.3.8.new/src/gvnc.c	2009-03-05 15:57:58.000000000 +0000
+@@ -2579,7 +2579,9 @@ static gboolean gvnc_perform_auth_sasl(s
+ 			   errno, strerror(errno));
+ 		goto error;
+ 	}
+-	if ((localAddr = gvnc_addr_to_string(&sa, salen)) == NULL)
++	if ((sa.ss_family == AF_INET ||
++	     sa.ss_family == AF_INET6) &&
++	    (localAddr = gvnc_addr_to_string(&sa, salen)) == NULL)
+ 		goto error;
+ 
+ 	/* Get remote address in form  IPADDR:PORT */
+@@ -2590,7 +2592,9 @@ static gboolean gvnc_perform_auth_sasl(s
+ 		g_free(localAddr);
+ 		goto error;
+ 	}
+-	if ((remoteAddr = gvnc_addr_to_string(&sa, salen)) == NULL) {
++	if ((sa.ss_family == AF_INET ||
++	     sa.ss_family == AF_INET6) &&
++	    (remoteAddr = gvnc_addr_to_string(&sa, salen)) == NULL) {
+ 		g_free(localAddr);
+ 		goto error;
+ 	}
diff --git a/gtk-vnc.spec b/gtk-vnc.spec
index aad6ed9..8c1969d 100644
--- a/gtk-vnc.spec
+++ b/gtk-vnc.spec
@@ -7,12 +7,13 @@
 Summary: A GTK widget for VNC clients
 Name: gtk-vnc
 Version: 0.3.8
-Release: 5%{?dist}
+Release: 6%{?dist}
 License: LGPLv2+
 Group: Development/Libraries
 Source: http://ftp.gnome.org/pub/GNOME/sources/%{name}/0.3/%{name}-%{version}.tar.gz
 Patch1: %{name}-%{version}-relative-mouse.patch
 Patch2: %{name}-%{version}-sasl-auth.patch
+Patch3: %{name}-%{version}-sasl-auth-tunnel.patch
 BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n)
 URL: http://live.gnome.org/gtk-vnc
 BuildRequires: gtk2-devel pygtk2-devel python-devel zlib-devel
@@ -73,6 +74,7 @@ browsers.
 %setup -q
 %patch1 -p1
 %patch2 -p1
+%patch3 -p1
 
 %build
 # Temp hack for patch2
@@ -132,6 +134,9 @@ rm -fr %{buildroot}
 %endif
 
 %changelog
+* Thu Mar  5 2009 Daniel P. Berrange <berrange@redhat.com> - 0.3.8-6.fc11
+- Fix SASL address generation when using AF_UNIX sockets
+
 * Tue Mar  3 2009 Daniel P. Berrange <berrange@redhat.com> - 0.3.8-5.fc11
 - Support SASL authentication extension