bug-binutils
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Bug binutils/19938] New: objcopy breaks sh_link and sh_info of SHT_SUNW


From: ro at TechFak dot Uni-Bielefeld.DE
Subject: [Bug binutils/19938] New: objcopy breaks sh_link and sh_info of SHT_SUNW_LDYNSYM and SHT_SUNW_symsort sections
Date: Mon, 11 Apr 2016 11:22:27 +0000

https://sourceware.org/bugzilla/show_bug.cgi?id=19938

            Bug ID: 19938
           Summary: objcopy breaks sh_link and sh_info of SHT_SUNW_LDYNSYM
                    and SHT_SUNW_symsort sections
           Product: binutils
           Version: 2.26
            Status: NEW
          Severity: normal
          Priority: P2
         Component: binutils
          Assignee: unassigned at sourceware dot org
          Reporter: ro at TechFak dot Uni-Bielefeld.DE
  Target Milestone: 2.27
              Host: *-*-solaris2.*
            Target: *-*-solaris2.*
             Build: *-*-solaris2.*

objcopy invalidates (at least) two Solaris-specific sections:

* hello is a trivial hello world program linked with Solaris ld.

address@hidden 1274 > objcopy hello hello.copy
address@hidden 1275 > elfdump hello > /dev/null
address@hidden 1276 > elfdump hello.copy > /dev/null
hello.copy: .SUNW_ldynsym: sh_link: 0: does not point to a valid section
hello.copy: .SUNW_dynsymsort: sh_link: 0: does not point to a valid section
address@hidden 1277 > elfdump -N .SUNW_ldynsym -N .SUNW_dynsymsort -c hello

Section Header[3]:  sh_name: .SUNW_ldynsym
    sh_addr:      0x80501ac       sh_flags:   [ SHF_ALLOC ]
    sh_size:      0xe0            sh_type:    [ SHT_SUNW_LDYNSYM ]
    sh_offset:    0x1ac           sh_entsize: 0x10 (14 entries)
    sh_link:      5               sh_info:    14
    sh_addralign: 0x4       

Section Header[8]:  sh_name: .SUNW_dynsymsort
    sh_addr:      0x80507ec       sh_flags:   [ SHF_ALLOC ]
    sh_size:      0x2c            sh_type:    [ SHT_SUNW_symsort ]
    sh_offset:    0x7ec           sh_entsize: 0x4 (11 entries)
    sh_link:      3               sh_info:    0
    sh_addralign: 0x4       
address@hidden 1278 > elfdump -N .SUNW_ldynsym -N .SUNW_dynsymsort -c hello.copy

Section Header[3]:  sh_name: .SUNW_ldynsym
    sh_addr:      0x80501ac       sh_flags:   [ SHF_ALLOC ]
    sh_size:      0xe0            sh_type:    [ SHT_SUNW_LDYNSYM ]
    sh_offset:    0x1ac           sh_entsize: 0x10 (14 entries)
    sh_link:      0               sh_info:    0
    sh_addralign: 0x4       

Section Header[8]:  sh_name: .SUNW_dynsymsort
    sh_addr:      0x80507ec       sh_flags:   [ SHF_ALLOC ]
    sh_size:      0x2c            sh_type:    [ SHT_SUNW_symsort ]
    sh_offset:    0x7ec           sh_entsize: 0x4 (11 entries)
    sh_link:      0               sh_info:    0
    sh_addralign: 0x4       

Obviously objcopy loses the sh_link and sh_info fields, which are described
in the Oracle Solaris 11.3 Linkers and Libraries Guide, Ch. 13, Object File
Format, Table 13-9  ELF sh_link and sh_info Interpretation:

  http://docs.oracle.com/cd/E53394_01/html/E54813/chapter6-94076.html#scrolltoc

  Rainer

-- 
You are receiving this mail because:
You are on the CC list for the bug.


reply via email to

[Prev in Thread] Current Thread [Next in Thread]