diff options
author | Mark H Weaver <mhw@netris.org> | 2015-07-15 22:55:26 -0400 |
---|---|---|
committer | Mark H Weaver <mhw@netris.org> | 2015-07-15 23:02:27 -0400 |
commit | 385ae063c9826baf00ae47d7689f23af52bce753 (patch) | |
tree | a8f142d508c8f7188387a5b6fbcf9afa664468f4 /gnu/packages/zip.scm | |
parent | 368474150b0a77ff54509f6ad0533d8c5a208bac (diff) | |
download | guix-385ae063c9826baf00ae47d7689f23af52bce753.tar.gz guix-385ae063c9826baf00ae47d7689f23af52bce753.zip |
gnu: unzip: Fix CVE-2014-9636 and some other bugs.
* gnu/packages/patches/unzip-CVE-2014-9636.patch,
gnu/packages/patches/unzip-allow-greater-hostver-values.patch,
gnu/packages/patches/unzip-increase-size-of-cfactorstr.patch,
gnu/packages/patches/unzip-initialize-symlink-flag.patch,
gnu/packages/patches/unzip-remove-build-date.patch: New files.
* gnu-system.am (dist_patch_DATA): Add them.
* gnu/packages/zip.scm (unzip)[source]: Add patches.
[arguments]: Use 'modify-phases'. Remove custom 'configure' phase; pass
additional make-flags instead. Add custom 'build' phase that builds
"generic_gcc" target; remove "generic_gcc" from make-flags.
Diffstat (limited to 'gnu/packages/zip.scm')
-rw-r--r-- | gnu/packages/zip.scm | 36 |
1 files changed, 21 insertions, 15 deletions
diff --git a/gnu/packages/zip.scm b/gnu/packages/zip.scm index e6f5067295..f0f27ddfe2 100644 --- a/gnu/packages/zip.scm +++ b/gnu/packages/zip.scm @@ -1,6 +1,6 @@ ;;; GNU Guix --- Functional package management for GNU ;;; Copyright © 2013 Andreas Enge <andreas@enge.fr> -;;; Copyright © 2014 Mark H Weaver <mhw@netris.org> +;;; Copyright © 2014, 2015 Mark H Weaver <mhw@netris.org> ;;; ;;; This file is part of GNU Guix. ;;; @@ -81,23 +81,29 @@ Compression ratios of 2:1 to 3:1 are common for text files.") (sha256 (base32 "0dxx11knh3nk95p2gg2ak777dd11pr7jx5das2g49l262scrcv83")) - (patches (list (search-patch "unzip-CVE-2014-8139.patch") - (search-patch "unzip-CVE-2014-8140.patch") - (search-patch "unzip-CVE-2014-8141.patch"))))) + (patches (map search-patch '("unzip-CVE-2014-8139.patch" + "unzip-CVE-2014-8140.patch" + "unzip-CVE-2014-8141.patch" + "unzip-CVE-2014-9636.patch" + "unzip-allow-greater-hostver-values.patch" + "unzip-increase-size-of-cfactorstr.patch" + "unzip-initialize-symlink-flag.patch" + "unzip-remove-build-date.patch"))))) (build-system gnu-build-system) ;; no inputs; bzip2 is not supported, since not compiled with BZ_NO_STDIO (arguments - `(#:make-flags '("generic_gcc") - #:phases - (alist-replace - 'configure - (lambda* (#:key inputs outputs #:allow-other-keys) - (let* ((out (assoc-ref outputs "out"))) - (copy-file "unix/Makefile" "Makefile") - (substitute* "Makefile" - (("/usr/local") out) - (("/man/") "/share/man/")))) - %standard-phases))) + `(#:phases (modify-phases %standard-phases + (delete 'configure) + (replace 'build + (lambda* (#:key make-flags #:allow-other-keys) + (zero? (apply system* "make" + `("-j" ,(number->string + (parallel-job-count)) + ,@make-flags + "generic_gcc")))))) + #:make-flags (list "-f" "unix/Makefile" + (string-append "prefix=" %output) + (string-append "MANDIR=" %output "/share/man/man1")))) (home-page "http://www.info-zip.org/UnZip.html") (synopsis "Decompression and file extraction utility") (description |