[packages/subversion] add patch to fix segfault when gnome keyring password lookup fails; rel 3

atler atler at pld-linux.org
Thu Jul 12 14:36:11 CEST 2018


commit 10b774aeb6ae988635f082b1ea091d11d8998f69
Author: Jan Palus <atler at pld-linux.org>
Date:   Thu Jul 12 14:34:48 2018 +0200

    add patch to fix segfault when gnome keyring password lookup fails; rel 3

 subversion.spec                  |  4 +++-
 with_gnome_keyring_sefault.patch | 23 +++++++++++++++++++++++
 2 files changed, 26 insertions(+), 1 deletion(-)
---
diff --git a/subversion.spec b/subversion.spec
index ff38fba..62132e0 100644
--- a/subversion.spec
+++ b/subversion.spec
@@ -51,7 +51,7 @@ Summary(pl.UTF-8):	System kontroli wersji podobny, ale lepszy, niż CVS
 Summary(pt_BR.UTF-8):	Sistema de versionamento concorrente
 Name:		subversion
 Version:	1.10.0
-Release:	2
+Release:	3
 License:	Apache v2.0
 Group:		Development/Version Control
 Source0:	http://www.apache.org/dist/subversion/%{name}-%{version}.tar.bz2
@@ -70,6 +70,7 @@ Patch2:		%{name}-ruby-datadir-path.patch
 Patch3:		%{name}-tests.patch
 Patch4:		x32-libdir.patch
 Patch5:		%{name}-rdoc.patch
+Patch6:		with_gnome_keyring_sefault.patch
 URL:		http://subversion.apache.org/
 %{?with_apache:BuildRequires:	apache-devel >= 2.4.14}
 BuildRequires:	apr-devel >= 1:1.3
@@ -450,6 +451,7 @@ uwierzytelniać się przy użyciu Portfela KDE.
 %patch3 -p1
 %patch4 -p1
 %patch5 -p1
+%patch6 -p0
 
 sed -i -e 's#serf_prefix/lib#serf_prefix/%{_lib}#g' build/ac-macros/serf.m4
 
diff --git a/with_gnome_keyring_sefault.patch b/with_gnome_keyring_sefault.patch
new file mode 100644
index 0000000..b21bc5f
--- /dev/null
+++ b/with_gnome_keyring_sefault.patch
@@ -0,0 +1,23 @@
+[[[
+Fix segfault when subversion is built with gnome keyring support and keyring
+password lookup fails.
+
+* subversion/libsvn_subr/simple_providers.c
+  (svn_auth__simple_creds_cache_get): Initialize 'done' with FALSE since ie
+    password_get_gnome_keyring sets 'done' only to TRUE. In case of error
+    it leaves unintialized 'done' (usually non 0) and default_password with NULL
+    causing segfault at subsequent strcmp.
+]]]
+Index: subversion/libsvn_subr/simple_providers.c
+===================================================================
+--- subversion/libsvn_subr/simple_providers.c	(revision 1835628)
++++ subversion/libsvn_subr/simple_providers.c	(working copy)
+@@ -206,7 +206,7 @@
+         {
+           if (have_passtype)
+             {
+-              svn_boolean_t done;
++              svn_boolean_t done = FALSE;
+ 
+               SVN_ERR(password_get(&done, &default_password, creds_hash,
+                                    realmstring, username, parameters,
================================================================

---- gitweb:

http://git.pld-linux.org/gitweb.cgi/packages/subversion.git/commitdiff/10b774aeb6ae988635f082b1ea091d11d8998f69



More information about the pld-cvs-commit mailing list