* gnu/packages/patches/cyrus-sasl-CVE-2019-19906.patch: New patch. * gnu/local.mk (dist_patch_DATA): Register it. * gnu/packages/cyrus-sasl.scm (cyrus-sasl/fixed): New variable. Apply patch. (cyrus-sasl)[replacement]: Graft.
		
			
				
	
	
		
			25 lines
		
	
	
	
		
			745 B
		
	
	
	
		
			Diff
		
	
	
	
	
	
			
		
		
	
	
			25 lines
		
	
	
	
		
			745 B
		
	
	
	
		
			Diff
		
	
	
	
	
	
From dcc9f51cbd4ed622cfb0f9b1c141eb2ffe3b12f1 Mon Sep 17 00:00:00 2001
 | 
						|
From: Quanah Gibson-Mount <quanah@symas.com>
 | 
						|
Date: Tue, 18 Feb 2020 19:05:12 +0000
 | 
						|
Subject: [PATCH] Fix #587
 | 
						|
 | 
						|
Off by one error in common.c, CVE-2019-19906.
 | 
						|
 | 
						|
Thanks to Stephan Zeisberg for reporting
 | 
						|
---
 | 
						|
 lib/common.c | 2 +-
 | 
						|
 1 file changed, 1 insertion(+), 1 deletion(-)
 | 
						|
 | 
						|
diff --git a/lib/common.c b/lib/common.c
 | 
						|
index bc3bf1df..9969d6aa 100644
 | 
						|
--- a/lib/common.c
 | 
						|
+++ b/lib/common.c
 | 
						|
@@ -190,7 +190,7 @@ int _sasl_add_string(char **out, size_t *alloclen,
 | 
						|
 
 | 
						|
   if (add==NULL) add = "(null)";
 | 
						|
 
 | 
						|
-  addlen=strlen(add); /* only compute once */
 | 
						|
+  addlen=strlen(add)+1; /* only compute once */
 | 
						|
   if (_buf_alloc(out, alloclen, (*outlen)+addlen)!=SASL_OK)
 | 
						|
     return SASL_NOMEM;
 | 
						|
 
 |