[Bug binutils/10341] New: objdump segfault on stripped elf files

View: New views
4 Messages — Rating Filter:   Alert me  

[Bug binutils/10341] New: objdump segfault on stripped elf files

by Bugzilla from sourceware-bugzilla@sourceware.org :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

arm-eabi-objdump segfaults when you try to disassemble a stripped elf file on
mac os. this bug does not happen on linux.
It is easily reproduceable given that you have any arbitrary ELF file:
armeb-eabi-strip --strip-all file.elf && armeb-eabi-objdump -d file.elf

Disassembly of section .text:

02380000 <.text>:

Program received signal EXC_BAD_ACCESS, Could not access memory.
Reason: KERN_INVALID_ADDRESS at address: 0x38667483
0x000354a3 in print_insn (pc=37224448, info=0xbffff6cc, little=1) at arm-dis.c:4082
4082  if (info->symtab != NULL
(gdb) bt
#0  0x000354a3 in print_insn (pc=37224448, info=0xbffff6cc, little=1) at
arm-dis.c:4082
#1  0x00003c20 in disassemble_section (abfd=0x2001b0, section=0x803014,
info=0xbffff6cc) at .././binutils/objdump.c:1566
#2  0x000448c1 in bfd_map_over_sections (abfd=0x2001b0, operation=0x36c0
<disassemble_section>, user_storage=0xbffff6cc) at section.c:1232
#3  0x000065bf in disassemble_data [inlined] () at .././binutils/objdump.c:2121
#4  0x000065bf in dump_bfd (abfd=0x2001b0) at .././binutils/objdump.c:3009
#5  0x00007017 in display_bfd (abfd=0x2001b0) at .././binutils/objdump.c:3085
#6  0x00007185 in display_file (filename=0x2001b0 "", target=<value temporarily
unavailable, due to optimizations>) at .././binutils/objdump.c:3146
#7  0x00007b33 in main (argc=3, argv=0xbffff8bc) at .././binutils/objdump.c:3407
(gdb)

 ./binutils/objdump -v
GNU objdump (GNU Binutils) 2.19.51.20090628
Copyright 2008 Free Software Foundation, Inc.
This program is free software; you may redistribute it under the terms of
the GNU General Public License version 3 or (at your option) any later version.
This program has absolutely no warranty.

--
           Summary: objdump segfault on stripped elf files
           Product: binutils
           Version: unspecified
            Status: NEW
          Severity: normal
          Priority: P2
         Component: binutils
        AssignedTo: unassigned at sources dot redhat dot com
        ReportedBy: svenpeter at gmail dot com
                CC: bug-binutils at gnu dot org
 GCC build triplet: i386-apple-darwin9.7.1
  GCC host triplet: i386-apple-darwin9.7.1
GCC target triplet: armeb-unknown-eabi


http://sourceware.org/bugzilla/show_bug.cgi?id=10341

------- You are receiving this mail because: -------
You are on the CC list for the bug, or are watching someone who is.


_______________________________________________
bug-binutils mailing list
bug-binutils@...
http://lists.gnu.org/mailman/listinfo/bug-binutils

[Bug binutils/10341] objdump segfault on stripped elf files

by Bugzilla from sourceware-bugzilla@sourceware.org :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message


------- Additional Comments From paulreed at paddedcell dot com  2009-10-02 19:28 -------
Created an attachment (id=4247)
 --> (http://sourceware.org/bugzilla/attachment.cgi?id=4247&action=view)
Patch to decide based on symtab_size, not symtab != NULL

The symtab check should go on symtab_size, not whether symtab is allocated.  
In binutils/objdump.c:disassemble_data, sorted_syms is always xmalloc'd, even
if there are no symbols.  The previous patch didn't fix this because *
info->symtab is still (non-NULL) garbage.

Sample output after patching:

...
Sections:
Idx Name  Size    VMA       LMA File off  Algn
  0 .text  00003710  000080ac  000080ac 000000ac  2**2
                  CONTENTS, ALLOC, LOAD, CODE
...

SYMBOL TABLE:
no symbols



Disassembly of section .text:

000080ac <.text>:
    80ac: eb000004 bl 0x80c4
...


--
           What    |Removed                     |Added
----------------------------------------------------------------------------
         AssignedTo|unassigned at sources dot   |paulreed at paddedcell dot
                   |redhat dot com              |com
             Status|NEW                         |ASSIGNED


http://sourceware.org/bugzilla/show_bug.cgi?id=10341

------- You are receiving this mail because: -------
You are on the CC list for the bug, or are watching someone who is.


_______________________________________________
bug-binutils mailing list
bug-binutils@...
http://lists.gnu.org/mailman/listinfo/bug-binutils

[Bug binutils/10341] objdump segfault on stripped elf files

by Bugzilla from sourceware-bugzilla@sourceware.org :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message



--
           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|ASSIGNED                    |WAITING


http://sourceware.org/bugzilla/show_bug.cgi?id=10341

------- You are receiving this mail because: -------
You are on the CC list for the bug, or are watching someone who is.


_______________________________________________
bug-binutils mailing list
bug-binutils@...
http://lists.gnu.org/mailman/listinfo/bug-binutils

[Bug binutils/10341] objdump segfault on stripped elf files

by Bugzilla from sourceware-bugzilla@sourceware.org :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message


------- Additional Comments From paulreed at paddedcell dot com  2009-10-03 08:11 -------
Committed by amodra

--
           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|WAITING                     |RESOLVED
         Resolution|                            |FIXED


http://sourceware.org/bugzilla/show_bug.cgi?id=10341

------- You are receiving this mail because: -------
You are on the CC list for the bug, or are watching someone who is.


_______________________________________________
bug-binutils mailing list
bug-binutils@...
http://lists.gnu.org/mailman/listinfo/bug-binutils