From: sms Subject: Fix CVE-2014-8140: out-of-bounds write issue in test_compr_eb() Bug-Debian: http://bugs.debian.org/773722 --- a/extract.c +++ b/extract.c @@ -2234,10 +2234,17 @@ if (compr_offset < 4) /* field is not compressed: */ return PK_OK; /* do nothing and signal OK */ + /* Return no/bad-data error status if any problem is found: + * 1. eb_size is too small to hold the uncompressed size + * (eb_ucsize). (Else extract eb_ucsize.) + * 2. eb_ucsize is zero (invalid). 2014-12-04 SMS. + * 3. eb_ucsize is positive, but eb_size is too small to hold + * the compressed data header. + */ if ((eb_size < (EB_UCSIZE_P + 4)) || - ((eb_ucsize = makelong(eb+(EB_HEADSIZE+EB_UCSIZE_P))) > 0L && - eb_size <= (compr_offset + EB_CMPRHEADLEN))) - return IZ_EF_TRUNC; /* no compressed data! */ + ((eb_ucsize = makelong( eb+ (EB_HEADSIZE+ EB_UCSIZE_P))) == 0L) || + ((eb_ucsize > 0L) && (eb_size <= (compr_offset + EB_CMPRHEADLEN)))) + return IZ_EF_TRUNC; /* no/bad compressed data! */ if ( #ifdef INT_16BIT ref='/guix/log/gnu/packages/efi.scm'>logtreecommitdiff
path: root/gnu/packages/efi.scm
AgeCommit message (Expand)Author
2019-02-12gnu: efilinux: Set ARCH variable on some architectures....Even with this patch efilinux does not build for arm*. * gnu/packages/efi.scm (efilinux)[arguments]: On armhf-linux and aarch64-linux set the ARCH variable apropriately. Efraim Flashner
2019-02-04gnu: efilinux: Fix indentation of source code....Follow-up to 6adfcbeab1cbaf8ce6ff6f32aad5d72f94860cbb. * gnu/packages/efi.scm (efilinux): Fix indentation of source code. Danny Milosavljevic
2019-02-04gnu: Add efilinux....* gnu/packages/efi.scm (efilinux): New variable. Danny Milosavljevic
2019-02-04gnu: Add efitools....* gnu/packages/efi.scm (efitools): New variable. Danny Milosavljevic
2019-02-04gnu: Add sbsigntools....* gnu/packages/efi.scm (sbsigntools): New variable. Danny Milosavljevic
2019-02-04gnu: Add gnu-efi....* gnu/packages/efi.scm: New file. * gnu/local.mk (GNU_SYSTEM_MODULES): Add it. Danny Milosavljevic