me
/
guix
Archived
1
0
Fork 0

gnu: cyrus-sasl: Fix CVE-2019-19906.

* 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.
master
Léo Le Bouter 2021-03-10 11:49:35 +01:00
parent fb4ccb86c2
commit 70128b8afa
No known key found for this signature in database
GPG Key ID: 45A8B1E86BCD10A6
3 changed files with 44 additions and 0 deletions

View File

@ -917,6 +917,7 @@ dist_patch_DATA = \
%D%/packages/patches/cursynth-wave-rand.patch \
%D%/packages/patches/cvs-CVE-2017-12836.patch \
%D%/packages/patches/cyrus-sasl-ac-try-run-fix.patch \
%D%/packages/patches/cyrus-sasl-CVE-2019-19906.patch \
%D%/packages/patches/c++-gsl-find-system-gtest.patch \
%D%/packages/patches/date-output-pkg-config-files.patch \
%D%/packages/patches/datefudge-gettimeofday.patch \

View File

@ -45,6 +45,7 @@
(sha256 (base32
"1m85zcpgfdhm43cavpdkhb1s2zq1b31472hq1w1gs3xh94anp1i6"))
(patches (search-patches "cyrus-sasl-ac-try-run-fix.patch"))))
(replacement cyrus-sasl/fixed)
(build-system gnu-build-system)
(native-inputs
`(("autoconf" ,autoconf)
@ -80,3 +81,20 @@ server writers.")
(license (license:non-copyleft "file://COPYING"
"See COPYING in the distribution."))
(home-page "https://cyrusimap.org/sasl/")))
(define-public cyrus-sasl/fixed
(package
(inherit cyrus-sasl)
(version "2.1.27")
(source (origin
(method url-fetch)
(uri (list (string-append
"https://cyrusimap.org/releases/cyrus-sasl-"
version ".tar.gz")
(string-append
"ftp://ftp.cyrusimap.org/cyrus-sasl/cyrus-sasl-"
version ".tar.gz")))
(sha256 (base32
"1m85zcpgfdhm43cavpdkhb1s2zq1b31472hq1w1gs3xh94anp1i6"))
(patches (search-patches "cyrus-sasl-ac-try-run-fix.patch"
"cyrus-sasl-CVE-2019-19906.patch"))))))

View File

@ -0,0 +1,25 @@
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;