diff options
author | coadde [Márcio Alexandre Silva Delgado] <coadde@parabola.nu> | 2015-06-04 06:38:22 -0300 |
---|---|---|
committer | coadde [Márcio Alexandre Silva Delgado] <coadde@parabola.nu> | 2015-06-04 06:38:22 -0300 |
commit | 00c476b594c415e80583ab285cd55dd2f7743cce (patch) | |
tree | 963f94c30d0a809972528741d5b54256e897b35f /cross/cross-binutils/binutils-2.24-CVE-2014-8485.patch | |
parent | d34fe86cd686ece409617c1816d03539f288d9a8 (diff) | |
download | abslibre-00c476b594c415e80583ab285cd55dd2f7743cce.tar.gz abslibre-00c476b594c415e80583ab285cd55dd2f7743cce.tar.bz2 abslibre-00c476b594c415e80583ab285cd55dd2f7743cce.zip |
update cross-binutils
Diffstat (limited to 'cross/cross-binutils/binutils-2.24-CVE-2014-8485.patch')
-rw-r--r-- | cross/cross-binutils/binutils-2.24-CVE-2014-8485.patch | 70 |
1 files changed, 0 insertions, 70 deletions
diff --git a/cross/cross-binutils/binutils-2.24-CVE-2014-8485.patch b/cross/cross-binutils/binutils-2.24-CVE-2014-8485.patch deleted file mode 100644 index 705c74835..000000000 --- a/cross/cross-binutils/binutils-2.24-CVE-2014-8485.patch +++ /dev/null @@ -1,70 +0,0 @@ -diff --git a/bfd/elf.c b/bfd/elf.c -index c884d1d..c8ac826 100644 ---- a/bfd/elf.c -+++ b/bfd/elf.c -@@ -608,9 +608,10 @@ setup_group (bfd *abfd, Elf_Internal_Shdr *hdr, asection *newsect) - if (shdr->contents == NULL) - { - _bfd_error_handler -- (_("%B: Corrupt size field in group section header: 0x%lx"), abfd, shdr->sh_size); -+ (_("%B: corrupt size field in group section header: 0x%lx"), abfd, shdr->sh_size); - bfd_set_error (bfd_error_bad_value); -- return FALSE; -+ -- num_group; -+ continue; - } - - memset (shdr->contents, 0, amt); -@@ -618,8 +619,17 @@ setup_group (bfd *abfd, Elf_Internal_Shdr *hdr, asection *newsect) - if (bfd_seek (abfd, shdr->sh_offset, SEEK_SET) != 0 - || (bfd_bread (shdr->contents, shdr->sh_size, abfd) - != shdr->sh_size)) -- return FALSE; -- -+ { -+ _bfd_error_handler -+ (_("%B: invalid size field in group section header: 0x%lx"), abfd, shdr->sh_size); -+ bfd_set_error (bfd_error_bad_value); -+ -- num_group; -+ /* PR 17510: If the group contents are even partially -+ corrupt, do not allow any of the contents to be used. */ -+ memset (shdr->contents, 0, amt); -+ continue; -+ } -+ - /* Translate raw contents, a flag word followed by an - array of elf section indices all in target byte order, - to the flag word followed by an array of elf section -@@ -651,6 +661,21 @@ setup_group (bfd *abfd, Elf_Internal_Shdr *hdr, asection *newsect) - } - } - } -+ -+ /* PR 17510: Corrupt binaries might contain invalid groups. */ -+ if (num_group != (unsigned) elf_tdata (abfd)->num_group) -+ { -+ elf_tdata (abfd)->num_group = num_group; -+ -+ /* If all groups are invalid then fail. */ -+ if (num_group == 0) -+ { -+ elf_tdata (abfd)->group_sect_ptr = NULL; -+ elf_tdata (abfd)->num_group = num_group = -1; -+ (*_bfd_error_handler) (_("%B: no valid group sections found"), abfd); -+ bfd_set_error (bfd_error_bad_value); -+ } -+ } - } - } - -@@ -716,6 +741,7 @@ setup_group (bfd *abfd, Elf_Internal_Shdr *hdr, asection *newsect) - { - (*_bfd_error_handler) (_("%B: no group info for section %A"), - abfd, newsect); -+ return FALSE; - } - return TRUE; - } --- -1.7.1 - |