From 88e2511e217f2c23c6048d6cf104df99be3fef63 Mon Sep 17 00:00:00 2001 From: Marius Bakke Date: Sat, 10 Jun 2017 15:47:00 +0200 Subject: gnu: gnutls: Replace with 3.5.13. This update addresses the following security advisories: GNUTLS-SA-2017-3 (aka CVE-2017-7869) and GNUTLS-SA-2017-4. See and . * gnu/packages/patches/gnutls-skip-pkgconfig-test.patch, gnu/packages/patches/gnutls-skip-trust-store-test.patch: New files. * gnu/local.mk (dist_patch_DATA): Register patches. * gnu/packages/tls.scm (gnutls)[replacement]: New field. (gnutls-3.5.13): New variable. (gnutls/guile-2.2)[replacement]: New field. Set #f. [source]: Inherit from GNUTLS-3.5.13. --- .../patches/gnutls-skip-pkgconfig-test.patch | 24 ++++++++++++++++++++++ .../patches/gnutls-skip-trust-store-test.patch | 15 ++++++++++++++ 2 files changed, 39 insertions(+) create mode 100644 gnu/packages/patches/gnutls-skip-pkgconfig-test.patch create mode 100644 gnu/packages/patches/gnutls-skip-trust-store-test.patch (limited to 'gnu/packages/patches') diff --git a/gnu/packages/patches/gnutls-skip-pkgconfig-test.patch b/gnu/packages/patches/gnutls-skip-pkgconfig-test.patch new file mode 100644 index 0000000000..1fad7c14e3 --- /dev/null +++ b/gnu/packages/patches/gnutls-skip-pkgconfig-test.patch @@ -0,0 +1,24 @@ +FIXME: The static test fails with an error such as: + +/tmp/guix-build-gnutls-3.5.13.drv-0/ccOnGPmc.o: In function `main': +c.29617.tmp.c:(.text+0x5): undefined reference to `gnutls_global_init' +collect2: error: ld returned 1 exit status +FAIL pkgconfig.sh (exit status: 1) + +diff --git a/tests/pkgconfig.sh b/tests/pkgconfig.sh +index 6bd4e62f9..05aab8278 100755 +--- a/tests/pkgconfig.sh ++++ b/tests/pkgconfig.sh +@@ -57,11 +57,7 @@ echo "Trying dynamic linking with:" + echo " * flags: $(${PKGCONFIG} --libs gnutls)" + echo " * common: ${COMMON}" + echo " * lib: ${CFLAGS}" +-cc ${TMPFILE} -o ${TMPFILE_O} $(${PKGCONFIG} --libs gnutls) $(${PKGCONFIG} --cflags gnutls) ${COMMON} +- +-echo "" +-echo "Trying static linking with $(${PKGCONFIG} --libs --static gnutls)" +-cc ${TMPFILE} -o ${TMPFILE_O} $(${PKGCONFIG} --static --libs gnutls) $(${PKGCONFIG} --cflags gnutls) ${COMMON} ++gcc ${TMPFILE} -o ${TMPFILE_O} $(${PKGCONFIG} --libs gnutls) $(${PKGCONFIG} --cflags gnutls) ${COMMON} + + rm -f ${TMPFILE} ${TMPFILE_O} + diff --git a/gnu/packages/patches/gnutls-skip-trust-store-test.patch b/gnu/packages/patches/gnutls-skip-trust-store-test.patch new file mode 100644 index 0000000000..e0536712a5 --- /dev/null +++ b/gnu/packages/patches/gnutls-skip-trust-store-test.patch @@ -0,0 +1,15 @@ +Version 3.5.11 added a test to check that the default trust store is readable. +It does not exist in the build environment, so pretend everything is fine. + +diff a/tests/trust-store.c b/tests/trust-store.c +--- a/tests/trust-store.c ++++ b/tests/trust-store.c +@@ -61,7 +61,7 @@ + } else if (ret < 0) { + fail("error loading system trust store: %s\n", gnutls_strerror(ret)); + } else if (ret == 0) { +- fail("no certificates were found in system trust store!\n"); ++ success("no trust store in the Guix build environment!\n"); + } + + gnutls_certificate_free_credentials(x509_cred); -- cgit 1.4.1