r23766 - in /desktop/unstable/gnome-keyring/debian: changelog patches/05_hurd_maxpathlen.patch patches/series

pochu at users.alioth.debian.org pochu at users.alioth.debian.org
Tue Apr 13 08:08:45 UTC 2010


Author: pochu
Date: Tue Apr 13 08:08:42 2010
New Revision: 23766

URL: http://svn.debian.org/wsvn/pkg-gnome/?sc=1&rev=23766
Log:
* debian/patches/05_hurd_maxpathlen.patch:
  - Fix build on Hurd, again (MAXPATHLEN reintroduced).

Added:
    desktop/unstable/gnome-keyring/debian/patches/05_hurd_maxpathlen.patch
Modified:
    desktop/unstable/gnome-keyring/debian/changelog
    desktop/unstable/gnome-keyring/debian/patches/series

Modified: desktop/unstable/gnome-keyring/debian/changelog
URL: http://svn.debian.org/wsvn/pkg-gnome/desktop/unstable/gnome-keyring/debian/changelog?rev=23766&op=diff
==============================================================================
--- desktop/unstable/gnome-keyring/debian/changelog [utf-8] (original)
+++ desktop/unstable/gnome-keyring/debian/changelog [utf-8] Tue Apr 13 08:08:42 2010
@@ -1,3 +1,10 @@
+gnome-keyring (2.30.0-2) UNRELEASED; urgency=low
+
+  * debian/patches/05_hurd_maxpathlen.patch:
+    - Fix build on Hurd, again (MAXPATHLEN reintroduced).
+
+ -- Emilio Pozuelo Monfort <pochu at debian.org>  Tue, 13 Apr 2010 08:44:10 +0200
+
 gnome-keyring (2.30.0-1) unstable; urgency=low
 
   [ Josselin Mouette ]

Added: desktop/unstable/gnome-keyring/debian/patches/05_hurd_maxpathlen.patch
URL: http://svn.debian.org/wsvn/pkg-gnome/desktop/unstable/gnome-keyring/debian/patches/05_hurd_maxpathlen.patch?rev=23766&op=file
==============================================================================
--- desktop/unstable/gnome-keyring/debian/patches/05_hurd_maxpathlen.patch (added)
+++ desktop/unstable/gnome-keyring/debian/patches/05_hurd_maxpathlen.patch [utf-8] Tue Apr 13 08:08:42 2010
@@ -1,0 +1,85 @@
+Bug: https://bugzilla.gnome.org/show_bug.cgi?id=615618
+Author: Emilio Pozuelo Monfort <pochu27 at gmail.com>
+
+Use dynamic allocation rather than fixed MAXPATHLEN size buffers.
+Fixes the build on GNU/Hurd where MAXPATHLEN is undefined.
+
+diff -ruNp gnome-keyring-2.30.0/pam/gkr-pam-client.c gnome-keyring-2.30.0.new/pam/gkr-pam-client.c
+--- gnome-keyring-2.30.0/pam/gkr-pam-client.c	2009-12-22 14:30:53.000000000 +0100
++++ gnome-keyring-2.30.0.new/pam/gkr-pam-client.c	2010-04-13 09:50:39.000000000 +0200
+@@ -145,16 +145,17 @@ write_credentials_byte (int sock)
+ static int
+ connect_to_daemon (const char *control)
+ {
+-	char path[MAXPATHLEN];
++	char *path;
+ 	struct sockaddr_un addr;
+ 	struct stat st;
+ 	int sock;
+ 
+-	/* Build up the directory name */
+-	if (strlen (control) + strlen ("/control") + 1 >= MAXPATHLEN) {
+-		syslog (GKR_LOG_ERR, "The gnome keyring socket directory is too long");
++	path = malloc (strlen (control) + strlen ("/control") + 1);
++	if (!path) {
++		syslog (GKR_LOG_ERR, "gkr-pam: out of memory");
+ 		return -1;
+ 	}
++
+ 	strcpy (path, control);
+ 	strcat (path, "/control");
+ 
+@@ -162,18 +163,21 @@ connect_to_daemon (const char *control)
+ 	if (lstat (path, &st) < 0) {
+ 		syslog (GKR_LOG_ERR, "Couldn't access gnome keyring socket: %s: %s",
+ 		        path, strerror (errno));
++		free (path);
+ 		return -1;
+ 	}
+ 	
+ 	if (st.st_uid != geteuid ()) {
+ 		syslog (GKR_LOG_ERR, "The gnome keyring socket is not owned with the same "
+ 		        "credentials as the user login: %s", path);
++		free (path);
+ 		return -1;
+ 	}
+ 	
+ 	if (S_ISLNK(st.st_mode) || !S_ISSOCK(st.st_mode)) {
+ 		syslog (GKR_LOG_ERR, "The gnome keyring socket is not a valid simple "
+ 		        "non-linked socket");
++		free (path);
+ 		return -1;
+ 	}	
+ 	
+@@ -185,6 +189,7 @@ connect_to_daemon (const char *control)
+ 	sock = socket (AF_UNIX, SOCK_STREAM, 0);
+ 	if (sock < 0) {
+ 		syslog (GKR_LOG_ERR, "couldn't create control socket: %s", strerror (errno));
++		free (path);
+ 		return -1;
+ 	}
+ 
+@@ -195,6 +200,7 @@ connect_to_daemon (const char *control)
+ 		syslog (GKR_LOG_ERR, "couldn't connect to gnome-keyring-daemon socket at: %s: %s",
+ 		        path, strerror (errno));
+ 		close (sock);
++		free (path);
+ 		return -1;
+ 	}
+ 	
+@@ -202,6 +208,7 @@ connect_to_daemon (const char *control)
+ 	
+ 	if (check_peer_same_uid (sock) <= 0) {
+ 		close (sock);
++		free (path);
+ 		return -1;
+ 	}
+ 	
+@@ -209,6 +216,7 @@ connect_to_daemon (const char *control)
+ 	
+ 	if (write_credentials_byte (sock) < 0) {
+ 		close (sock);
++		free (path);
+ 		return -1;
+ 	}
+ 	

Modified: desktop/unstable/gnome-keyring/debian/patches/series
URL: http://svn.debian.org/wsvn/pkg-gnome/desktop/unstable/gnome-keyring/debian/patches/series?rev=23766&op=diff
==============================================================================
--- desktop/unstable/gnome-keyring/debian/patches/series [utf-8] (original)
+++ desktop/unstable/gnome-keyring/debian/patches/series [utf-8] Tue Apr 13 08:08:42 2010
@@ -2,4 +2,5 @@
 02_uidir_relocate.patch
 03_kfreebsd.patch
 04_link-libtasns1.patch
+05_hurd_maxpathlen.patch
 99_ltmain_as-needed.patch




More information about the pkg-gnome-commits mailing list