guix-commits
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

branch master updated: gnu: cyrus-sasl: Fix CVE-2019-19906.


From: guix-commits
Subject: branch master updated: gnu: cyrus-sasl: Fix CVE-2019-19906.
Date: Wed, 10 Mar 2021 05:51:35 -0500

This is an automated email from the git hooks/post-receive script.

lle_bout pushed a commit to branch master
in repository guix.

The following commit(s) were added to refs/heads/master by this push:
     new 70128b8  gnu: cyrus-sasl: Fix CVE-2019-19906.
70128b8 is described below

commit 70128b8afacf332b0aff69ebcad6868fd158e8ad
Author: Léo Le Bouter <lle-bout@zaclys.net>
AuthorDate: Wed Mar 10 11:49:35 2021 +0100

    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.
---
 gnu/local.mk                                       |  1 +
 gnu/packages/cyrus-sasl.scm                        | 18 ++++++++++++++++
 .../patches/cyrus-sasl-CVE-2019-19906.patch        | 25 ++++++++++++++++++++++
 3 files changed, 44 insertions(+)

diff --git a/gnu/local.mk b/gnu/local.mk
index dcee722..43ed976 100644
--- a/gnu/local.mk
+++ b/gnu/local.mk
@@ -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            \
diff --git a/gnu/packages/cyrus-sasl.scm b/gnu/packages/cyrus-sasl.scm
index 3e65a1f..691349a 100644
--- a/gnu/packages/cyrus-sasl.scm
+++ b/gnu/packages/cyrus-sasl.scm
@@ -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"))))))
diff --git a/gnu/packages/patches/cyrus-sasl-CVE-2019-19906.patch 
b/gnu/packages/patches/cyrus-sasl-CVE-2019-19906.patch
new file mode 100644
index 0000000..acdf682
--- /dev/null
+++ b/gnu/packages/patches/cyrus-sasl-CVE-2019-19906.patch
@@ -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;
+ 



reply via email to

[Prev in Thread] Current Thread [Next in Thread]