gnu: vim: Update to 8.0.0494.

* gnu/packages/patches/vim-CVE-2017-5953.patch: Delete file.
* gnu/local.mk (dist_patch_DATA): Remove it.
* gnu/packages/vim.scm (vim, vim-full): Update to 8.0.0494.
[source]: Remove patch.
(vim-full)[arguments]: Add two phases to drop tests and start xorg.
[native-inputs]: Add XORG-SERVER.
master
Marius Bakke 2017-03-20 06:57:09 +01:00
parent f69e20341f
commit 38190ea5ef
No known key found for this signature in database
GPG Key ID: A2A06DF2A33A54FA
3 changed files with 24 additions and 38 deletions

View File

@ -964,7 +964,6 @@ dist_patch_DATA = \
%D%/packages/patches/util-linux-CVE-2017-2616.patch \
%D%/packages/patches/upower-builddir.patch \
%D%/packages/patches/valgrind-enable-arm.patch \
%D%/packages/patches/vim-CVE-2017-5953.patch \
%D%/packages/patches/virglrenderer-CVE-2017-6386.patch \
%D%/packages/patches/vorbis-tools-CVE-2014-9638+CVE-2014-9639.patch \
%D%/packages/patches/vorbis-tools-CVE-2014-9640.patch \

View File

@ -1,32 +0,0 @@
Fix CVE-2017-5953:
https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2017-5953
https://groups.google.com/forum/#!topic/vim_dev/t-3RSdEnrHY
This change is adapted from the upstream source repository:
https://github.com/vim/vim/commit/6d3c8586fc81b022e9f06c611b9926108fb878c7
diff --git a/src/spellfile.c b/src/spellfile.c
index c7d87c6..00ef019 100644
--- a/src/spellfile.c
+++ b/src/spellfile.c
@@ -1585,7 +1585,7 @@ spell_read_tree(
int prefixtree, /* TRUE for the prefix tree */
int prefixcnt) /* when "prefixtree" is TRUE: prefix count */
{
- int len;
+ long len;
int idx;
char_u *bp;
idx_T *ip;
@@ -1595,6 +1595,9 @@ spell_read_tree(
len = get4c(fd);
if (len < 0)
return SP_TRUNCERROR;
+ if (len >= LONG_MAX / (long)sizeof(int))
+ /* Invalid length, multiply with sizeof(int) would overflow. */
+ return SP_FORMERROR;
if (len > 0)
{
/* Allocate the byte array. */

View File

@ -3,6 +3,7 @@
;;; Copyright © 2016 Efraim Flashner <efraim@flashner.co.il>
;;; Copyright © 2016, 2017 ng0 <contact.ng0@cryptolab.net>
;;; Copyright © 2017 Ricardo Wurmus <rekado@elephly.net>
;;; Copyright © 2017 Marius Bakke <mbakke@fastmail.com>
;;;
;;; This file is part of GNU Guix.
;;;
@ -22,6 +23,7 @@
(define-module (gnu packages vim)
#:use-module ((guix licenses) #:prefix license:)
#:use-module (guix packages)
#:use-module (guix utils)
#:use-module (guix download)
#:use-module (guix git-download)
#:use-module (guix build-system cmake)
@ -58,16 +60,15 @@
(define-public vim
(package
(name "vim")
(version "8.0.0300")
(version "8.0.0494")
(source (origin
(method url-fetch)
(uri (string-append "https://github.com/vim/vim/archive/v"
version ".tar.gz"))
(file-name (string-append name "-" version ".tar.gz"))
(patches (search-patches "vim-CVE-2017-5953.patch"))
(sha256
(base32
"04samk2bakyixbxyc3p0g6ypls45105sikibg0wc6lmak9bqjs85"))))
"08kzimdyla35ndrbn68jf8pmzm7nd2qrydnvk57j089m6ajic62r"))))
(build-system gnu-build-system)
(arguments
`(#:test-target "test"
@ -128,9 +129,27 @@ configuration files.")
"--enable-xim"
"--disable-selinux"
"--enable-gui")
,@(package-arguments vim)))
,@(substitute-keyword-arguments (package-arguments vim)
((#:phases phases)
`(modify-phases ,phases
(add-after 'build 'drop-failing-tests
(lambda _
;; These tests fail mysteriously with GUI enabled.
;; https://github.com/vim/vim/issues/1460
(substitute* "src/testdir/test_cmdline.vim"
(("call assert_equal\\(.+getcmd.+\\(\\)\\)") ""))
#t))
(add-before 'check 'start-xserver
(lambda* (#:key inputs #:allow-other-keys)
;; Some tests require an X server, but does not start one.
(let ((xorg-server (assoc-ref inputs "xorg-server"))
(display ":1"))
(setenv "DISPLAY" display)
(zero? (system (string-append xorg-server "/bin/Xvfb "
display " &")))))))))))
(native-inputs
`(("pkg-config" ,pkg-config)))
`(("pkg-config" ,pkg-config)
("xorg-server" ,xorg-server)))
(inputs
`(("acl" ,acl)
("atk" ,atk)