aboutsummaryrefslogtreecommitdiffstats
path: root/main/ipsec-tools/04-splitnet-malloc-fix.patch
blob: 5f7aa8b90aed491b316bd867f5b92af8eff7465b (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.

===================================================================
RCS file: /ftp/cvs/cvsroot/src/crypto/dist/ipsec-tools/src/racoon/isakmp_unity.c,v
retrieving revision 1.9
retrieving revision 1.9.18.1
diff -u -p -r1.9 -r1.9.18.1
--- ipsec-tools/src/racoon/isakmp_unity.c	2007/10/19 03:37:19	1.9
+++ ipsec-tools/src/racoon/isakmp_unity.c	2012/01/01 17:32:04	1.9.18.1
@@ -1,4 +1,4 @@
-/*	$NetBSD: isakmp_unity.c,v 1.9 2007/10/19 03:37:19 manu Exp $	*/
+/*	$NetBSD: isakmp_unity.c,v 1.9.18.1 2012/01/01 17:32:04 tteras Exp $	*/
 
 /* Id: isakmp_unity.c,v 1.10 2006/07/31 04:49:23 manubsd Exp */
 
@@ -387,8 +387,9 @@ char * splitnet_list_2str(list, splitnet
 		netentry = netentry->next;
 	}
 
-	/* allocate network list string */
-	str = racoon_malloc(len);
+	/* allocate network list string; we need the extra byte temporarily
+	 * as sprintf() will write trailing 0-byte after the space. */
+	str = racoon_malloc(len + 1);
 	if (str == NULL)
 		return NULL;
 
@@ -414,6 +415,7 @@ char * splitnet_list_2str(list, splitnet
 		netentry = netentry->next;
 	}
 
+	/* trim the string to not have trailing spaces */
 	str[len-1]=0;
 
 	return str;