elf-eh-frame.c (104834) | elf-eh-frame.c (107492) |
---|---|
1/* .eh_frame section optimization. 2 Copyright 2001, 2002 Free Software Foundation, Inc. 3 Written by Jakub Jelinek <jakub@redhat.com>. 4 5This file is part of BFD, the Binary File Descriptor library. 6 7This program is free software; you can redistribute it and/or modify 8it under the terms of the GNU General Public License as published by --- 400 unchanged lines hidden (view full) --- 409 /* No space for CIE/FDE header length. */ 410 goto free_no_table; 411 412 hdr.length = bfd_get_32 (abfd, buf); 413 if (hdr.length == 0xffffffff) 414 /* 64-bit .eh_frame is not supported. */ 415 goto free_no_table; 416 buf += 4; | 1/* .eh_frame section optimization. 2 Copyright 2001, 2002 Free Software Foundation, Inc. 3 Written by Jakub Jelinek <jakub@redhat.com>. 4 5This file is part of BFD, the Binary File Descriptor library. 6 7This program is free software; you can redistribute it and/or modify 8it under the terms of the GNU General Public License as published by --- 400 unchanged lines hidden (view full) --- 409 /* No space for CIE/FDE header length. */ 410 goto free_no_table; 411 412 hdr.length = bfd_get_32 (abfd, buf); 413 if (hdr.length == 0xffffffff) 414 /* 64-bit .eh_frame is not supported. */ 415 goto free_no_table; 416 buf += 4; |
417 if ((buf - ehbuf) + hdr.length > sec->_raw_size) | 417 if ((bfd_size_type) (buf - ehbuf) + hdr.length > sec->_raw_size) |
418 /* CIE/FDE not contained fully in this .eh_frame input section. */ 419 goto free_no_table; 420 421 sec_info->entry[sec_info->count].offset = last_fde - ehbuf; 422 sec_info->entry[sec_info->count].size = 4 + hdr.length; 423 424 if (hdr.length == 0) 425 { --- 815 unchanged lines hidden --- | 418 /* CIE/FDE not contained fully in this .eh_frame input section. */ 419 goto free_no_table; 420 421 sec_info->entry[sec_info->count].offset = last_fde - ehbuf; 422 sec_info->entry[sec_info->count].size = 4 + hdr.length; 423 424 if (hdr.length == 0) 425 { --- 815 unchanged lines hidden --- |