rpms/evolution-data-server/devel evolution-data-server-1.8.0-fix-camel-malloc.patch, NONE, 1.1 evolution-data-server.spec, 1.129, 1.130

fedora-cvs-commits at redhat.com fedora-cvs-commits at redhat.com
Wed Sep 27 14:02:48 UTC 2006


Author: mbarnes

Update of /cvs/dist/rpms/evolution-data-server/devel
In directory cvs.devel.redhat.com:/tmp/cvs-serv19684

Modified Files:
	evolution-data-server.spec 
Added Files:
	evolution-data-server-1.8.0-fix-camel-malloc.patch 
Log Message:

* Tue Sep 26 2006 Matthew Barnes <mbarnes at redhat.com> - 1.8.0-11.fc6
- Add patch for RH bug #203915 (fix dangerous mallocs in camel).


evolution-data-server-1.8.0-fix-camel-malloc.patch:
 camel-object.c |   13 ++++++++++---
 1 files changed, 10 insertions(+), 3 deletions(-)

--- NEW FILE evolution-data-server-1.8.0-fix-camel-malloc.patch ---
--- evolution-data-server-1.8.0/camel/camel-object.c.fix-camel-malloc	2006-09-26 16:26:00.000000000 -0400
+++ evolution-data-server-1.8.0/camel/camel-object.c	2006-09-26 16:35:32.000000000 -0400
@@ -455,9 +455,13 @@
 			/* maybe it was just version 0 afterall */
 			return 0;
 		}
+
+		count = MIN(count, CAMEL_ARGV_MAX);
 		
 		/* we batch up the properties and set them in one go */
-		if (!(argv = g_try_malloc ((gulong)(sizeof (*argv) + (count - CAMEL_ARGV_MAX) * sizeof (argv->argv[0])))))
+		argv = g_try_malloc(sizeof(CamelArgV) -
+			((CAMEL_ARGV_MAX - count) * sizeof(CamelArg)));
+		if (argv == NULL)
 			return -1;
 		
 		argv->argc = 0;
@@ -536,9 +540,12 @@
 	   we also need an argv to store the results - bit messy */
 
 	count = g_slist_length(props);
+	count = MIN(count, CAMEL_ARGV_MAX);
 
-	arggetv = g_malloc0(sizeof(*arggetv) + (count - CAMEL_ARGV_MAX) * sizeof(arggetv->argv[0]));
-	argv = g_malloc0(sizeof(*argv) + (count - CAMEL_ARGV_MAX) * sizeof(argv->argv[0]));
+	arggetv = g_malloc0(sizeof(CamelArgGetV) -
+		((CAMEL_ARGV_MAX - count) * sizeof(CamelArgGet)));
+	argv = g_malloc0(sizeof(CamelArgV) -
+		((CAMEL_ARGV_MAX - count) * sizeof(CamelArg)));
 	l = props;
 	i = 0;
 	while (l) {


Index: evolution-data-server.spec
===================================================================
RCS file: /cvs/dist/rpms/evolution-data-server/devel/evolution-data-server.spec,v
retrieving revision 1.129
retrieving revision 1.130
diff -u -r1.129 -r1.130
--- evolution-data-server.spec	25 Sep 2006 19:37:49 -0000	1.129
+++ evolution-data-server.spec	27 Sep 2006 14:02:46 -0000	1.130
@@ -25,7 +25,7 @@
 
 Name: evolution-data-server
 Version: 1.8.0
-Release: 10%{?dist}
+Release: 11%{?dist}
 License: LGPL
 Group: System Environment/Libraries
 Summary: Backend data server for Evolution
@@ -66,6 +66,9 @@
 # Gnome.org bug #357666
 Patch21: evolution-data-server-1.8.0-deprecated-glib.patch
 
+# RH bug #203915
+Patch22: evolution-data-server-1.8.0-fix-camel-malloc.patch
+
 ### Dependencies ###
 
 Requires: GConf2
@@ -156,6 +159,7 @@
 %patch19 -p1 -b .fix-ecal-crash
 %patch20 -p1 -b .uninstall
 %patch21 -p1 -b .deprecated-glib
+%patch22 -p1 -b .fix-camel-malloc
 
 mkdir -p krb5-fakeprefix/include
 mkdir -p krb5-fakeprefix/lib
@@ -373,6 +377,9 @@
 %{_libdir}/pkgconfig/libexchange-storage-%{eds_api_version}.pc
 
 %changelog
+* Tue Sep 26 2006 Matthew Barnes <mbarnes at redhat.com> - 1.8.0-11.fc6
+- Add patch for RH bug #203915 (fix dangerous mallocs in camel).
+
 * Mon Sep 25 2006 Matthew Barnes <mbarnes at redhat.com> - 1.8.0-10.fc6
 - Add patch for Gnome.org bug #357666.
 




More information about the fedora-cvs-commits mailing list