On October 5, 2009 01:04:43 pm Dave Anderson wrote: > Thanks -- I'll take a look. It appears that the extension module > is passing this test in is_shared_object(): > > if (elf64->e_ident[EI_CLASS] == ELFCLASS64 ... > > What does "readelf -a" show for the echo.so file? (I don't have > a handy x86 machine readily available at the moment...) Hi Dave, I have attached both the output of "readelf -a" and 32-bit echo.so file. Cheers, Alex -- ------------------------------------------------------------------ Alexandre Sidorenko email: asid@xxxxxx WTEC Linux Hewlett-Packard (Canada) ------------------------------------------------------------------
Attachment:
echo.so
Description: application/hpvirtualrooms-plugin
ELF Header: Magic: 7f 45 4c 46 01 01 01 00 00 00 00 00 00 00 00 00 Class: ELF32 Data: 2's complement, little endian Version: 1 (current) OS/ABI: UNIX - System V ABI Version: 0 Type: DYN (Shared object file) Machine: Intel 80386 Version: 0x1 Entry point address: 0x4dc Start of program headers: 52 (bytes into file) Start of section headers: 2252 (bytes into file) Flags: 0x0 Size of this header: 52 (bytes) Size of program headers: 32 (bytes) Number of program headers: 4 Size of section headers: 40 (bytes) Number of section headers: 21 Section header string table index: 18 Section Headers: [Nr] Name Type Addr Off Size ES Flg Lk Inf Al [ 0] NULL 00000000 000000 000000 00 0 0 0 [ 1] .hash HASH 000000b4 0000b4 00009c 04 A 3 0 4 [ 2] .gnu.hash GNU_HASH 00000150 000150 000044 04 A 3 0 4 [ 3] .dynsym DYNSYM 00000194 000194 000140 10 A 4 1 4 [ 4] .dynstr STRTAB 000002d4 0002d4 0000ae 00 A 0 0 1 [ 5] .gnu.version VERSYM 00000382 000382 000028 02 A 3 0 2 [ 6] .gnu.version_r VERNEED 000003ac 0003ac 000020 00 A 4 1 4 [ 7] .rel.dyn REL 000003cc 0003cc 000088 08 A 3 0 4 [ 8] .rel.plt REL 00000454 000454 000028 08 A 3 9 4 [ 9] .plt PROGBITS 0000047c 00047c 000060 04 AX 0 0 4 [10] .text PROGBITS 000004dc 0004dc 000126 00 AX 0 0 4 [11] .rodata PROGBITS 00000604 000604 0000ba 00 A 0 0 4 [12] .dynamic DYNAMIC 000016c0 0006c0 0000c8 08 WA 4 0 4 [13] .got PROGBITS 00001788 000788 000018 04 WA 0 0 4 [14] .got.plt PROGBITS 000017a0 0007a0 000020 04 WA 0 0 4 [15] .data PROGBITS 000017c0 0007c0 000044 00 WA 0 0 32 [16] .bss NOBITS 00001804 000804 000004 00 WA 0 0 4 [17] .comment PROGBITS 00000000 000804 00002a 00 0 0 1 [18] .shstrtab STRTAB 00000000 00082e 00009c 00 0 0 1 [19] .symtab SYMTAB 00000000 000c14 0002a0 10 20 23 4 [20] .strtab STRTAB 00000000 000eb4 000111 00 0 0 1 Key to Flags: W (write), A (alloc), X (execute), M (merge), S (strings) I (info), L (link order), G (group), x (unknown) O (extra OS processing required) o (OS specific), p (processor specific) There are no section groups in this file. Program Headers: Type Offset VirtAddr PhysAddr FileSiz MemSiz Flg Align LOAD 0x000000 0x00000000 0x00000000 0x006be 0x006be R E 0x1000 LOAD 0x0006c0 0x000016c0 0x000016c0 0x00144 0x00148 RW 0x1000 DYNAMIC 0x0006c0 0x000016c0 0x000016c0 0x000c8 0x000c8 RW 0x4 GNU_STACK 0x000000 0x00000000 0x00000000 0x00000 0x00000 RW 0x4 Section to Segment mapping: Segment Sections... 00 .hash .gnu.hash .dynsym .dynstr .gnu.version .gnu.version_r .rel.dyn .rel.plt .plt .text .rodata 01 .dynamic .got .got.plt .data .bss 02 .dynamic 03 Dynamic section at offset 0x6c0 contains 21 entries: Tag Type Name/Value 0x00000001 (NEEDED) Shared library: [libc.so.6] 0x0000000c (INIT) 0x4dc 0x0000000d (FINI) 0x507 0x00000004 (HASH) 0xb4 0x6ffffef5 (GNU_HASH) 0x150 0x00000005 (STRTAB) 0x2d4 0x00000006 (SYMTAB) 0x194 0x0000000a (STRSZ) 174 (bytes) 0x0000000b (SYMENT) 16 (bytes) 0x00000003 (PLTGOT) 0x17a0 0x00000002 (PLTRELSZ) 40 (bytes) 0x00000014 (PLTREL) REL 0x00000017 (JMPREL) 0x454 0x00000011 (REL) 0x3cc 0x00000012 (RELSZ) 136 (bytes) 0x00000013 (RELENT) 8 (bytes) 0x6ffffffe (VERNEED) 0x3ac 0x6fffffff (VERNEEDNUM) 1 0x6ffffff0 (VERSYM) 0x382 0x6ffffffa (RELCOUNT) 9 0x00000000 (NULL) 0x0 Relocation section '.rel.dyn' at offset 0x3cc contains 17 entries: Offset Info Type Sym.Value Sym. Name 000017c0 00000008 R_386_RELATIVE 000017e0 00000008 R_386_RELATIVE 000017e4 00000008 R_386_RELATIVE 000017e8 00000008 R_386_RELATIVE 000017ec 00000008 R_386_RELATIVE 000017f0 00000008 R_386_RELATIVE 000017f4 00000008 R_386_RELATIVE 000017f8 00000008 R_386_RELATIVE 000017fc 00000008 R_386_RELATIVE 00001788 00000106 R_386_GLOB_DAT 00000000 pc 0000178c 00000206 R_386_GLOB_DAT 00000000 optind 00001790 00000306 R_386_GLOB_DAT 00000000 fp 00001794 00000606 R_386_GLOB_DAT 00000000 argerrs 00001798 00000a06 R_386_GLOB_DAT 00000000 args 0000179c 00000b06 R_386_GLOB_DAT 00000000 argcnt 000017c4 00001001 R_386_32 00000511 cmd_echo 000017c8 00001301 R_386_32 000017e0 help_echo Relocation section '.rel.plt' at offset 0x454 contains 5 entries: Offset Info Type Sym.Value Sym. Name 000017ac 00000407 R_386_JUMP_SLOT 00000000 getopt 000017b0 00000507 R_386_JUMP_SLOT 00000000 fprintf 000017b4 00000707 R_386_JUMP_SLOT 00000000 fputc 000017b8 00000807 R_386_JUMP_SLOT 00000000 cmd_usage 000017bc 00000907 R_386_JUMP_SLOT 00000000 register_extension There are no unwind sections in this file. Symbol table '.dynsym' contains 20 entries: Num: Value Size Type Bind Vis Ndx Name 0: 00000000 0 NOTYPE LOCAL DEFAULT UND 1: 00000000 0 NOTYPE GLOBAL DEFAULT UND pc 2: 00000000 4 OBJECT GLOBAL DEFAULT UND optind@xxxxxxxxx (2) 3: 00000000 0 NOTYPE GLOBAL DEFAULT UND fp 4: 00000000 73 FUNC GLOBAL DEFAULT UND getopt@xxxxxxxxx (2) 5: 00000000 36 FUNC GLOBAL DEFAULT UND fprintf@xxxxxxxxx (2) 6: 00000000 0 NOTYPE GLOBAL DEFAULT UND argerrs 7: 00000000 246 FUNC GLOBAL DEFAULT UND fputc@xxxxxxxxx (2) 8: 00000000 0 NOTYPE GLOBAL DEFAULT UND cmd_usage 9: 00000000 0 NOTYPE GLOBAL DEFAULT UND register_extension 10: 00000000 0 NOTYPE GLOBAL DEFAULT UND args 11: 00000000 0 NOTYPE GLOBAL DEFAULT UND argcnt 12: 00001804 4 OBJECT GLOBAL DEFAULT 16 diskdump_flags 13: 00001808 0 NOTYPE GLOBAL DEFAULT ABS _end 14: 00001804 0 NOTYPE GLOBAL DEFAULT ABS _edata 15: 00001804 0 NOTYPE GLOBAL DEFAULT ABS __bss_start 16: 00000511 237 FUNC GLOBAL DEFAULT 10 cmd_echo 17: 000004dc 43 FUNC GLOBAL DEFAULT 10 _init 18: 00000507 10 FUNC GLOBAL DEFAULT 10 _fini 19: 000017e0 36 OBJECT GLOBAL DEFAULT 15 help_echo Symbol table '.symtab' contains 42 entries: Num: Value Size Type Bind Vis Ndx Name 0: 00000000 0 NOTYPE LOCAL DEFAULT UND 1: 000000b4 0 SECTION LOCAL DEFAULT 1 2: 00000150 0 SECTION LOCAL DEFAULT 2 3: 00000194 0 SECTION LOCAL DEFAULT 3 4: 000002d4 0 SECTION LOCAL DEFAULT 4 5: 00000382 0 SECTION LOCAL DEFAULT 5 6: 000003ac 0 SECTION LOCAL DEFAULT 6 7: 000003cc 0 SECTION LOCAL DEFAULT 7 8: 00000454 0 SECTION LOCAL DEFAULT 8 9: 0000047c 0 SECTION LOCAL DEFAULT 9 10: 000004dc 0 SECTION LOCAL DEFAULT 10 11: 00000604 0 SECTION LOCAL DEFAULT 11 12: 000016c0 0 SECTION LOCAL DEFAULT 12 13: 00001788 0 SECTION LOCAL DEFAULT 13 14: 000017a0 0 SECTION LOCAL DEFAULT 14 15: 000017c0 0 SECTION LOCAL DEFAULT 15 16: 00001804 0 SECTION LOCAL DEFAULT 16 17: 00000000 0 SECTION LOCAL DEFAULT 17 18: 00000000 0 FILE LOCAL DEFAULT ABS echo.c 19: 000017c0 32 OBJECT LOCAL DEFAULT 15 command_table 20: 000017a0 0 OBJECT LOCAL HIDDEN ABS _GLOBAL_OFFSET_TABLE_ 21: 000005fe 0 FUNC LOCAL HIDDEN 10 __i686.get_pc_thunk.bx 22: 000016c0 0 OBJECT LOCAL HIDDEN ABS _DYNAMIC 23: 00000507 10 FUNC GLOBAL DEFAULT 10 _fini 24: 00001804 4 OBJECT GLOBAL DEFAULT 16 diskdump_flags 25: 00000000 0 NOTYPE GLOBAL DEFAULT UND pc 26: 00000000 4 OBJECT GLOBAL DEFAULT UND optind@@GLIBC_2.0 27: 00000000 0 NOTYPE GLOBAL DEFAULT UND fp 28: 00000000 73 FUNC GLOBAL DEFAULT UND getopt@@GLIBC_2.0 29: 000017e0 36 OBJECT GLOBAL DEFAULT 15 help_echo 30: 00000000 36 FUNC GLOBAL DEFAULT UND fprintf@@GLIBC_2.0 31: 00001804 0 NOTYPE GLOBAL DEFAULT ABS __bss_start 32: 00000511 237 FUNC GLOBAL DEFAULT 10 cmd_echo 33: 00000000 0 NOTYPE GLOBAL DEFAULT UND argerrs 34: 00000000 246 FUNC GLOBAL DEFAULT UND fputc@@GLIBC_2.0 35: 00000000 0 NOTYPE GLOBAL DEFAULT UND cmd_usage 36: 00001808 0 NOTYPE GLOBAL DEFAULT ABS _end 37: 00000000 0 NOTYPE GLOBAL DEFAULT UND register_extension 38: 00001804 0 NOTYPE GLOBAL DEFAULT ABS _edata 39: 00000000 0 NOTYPE GLOBAL DEFAULT UND args 40: 00000000 0 NOTYPE GLOBAL DEFAULT UND argcnt 41: 000004dc 43 FUNC GLOBAL DEFAULT 10 _init Histogram for bucket list length (total of 17 buckets): Length Number % of total Coverage 0 4 ( 23.5%) 1 8 ( 47.1%) 42.1% 2 4 ( 23.5%) 84.2% 3 1 ( 5.9%) 100.0% Histogram for `.gnu.hash' bucket list length (total of 3 buckets): Length Number % of total Coverage 0 0 ( 0.0%) 1 0 ( 0.0%) 0.0% 2 1 ( 33.3%) 25.0% 3 2 ( 66.7%) 100.0% Version symbols section '.gnu.version' contains 20 entries: Addr: 0000000000000382 Offset: 0x000382 Link: 3 (.dynsym) 000: 0 (*local*) 0 (*local*) 2 (GLIBC_2.0) 0 (*local*) 004: 2 (GLIBC_2.0) 2 (GLIBC_2.0) 0 (*local*) 2 (GLIBC_2.0) 008: 0 (*local*) 0 (*local*) 0 (*local*) 0 (*local*) 00c: 1 (*global*) 1 (*global*) 1 (*global*) 1 (*global*) 010: 1 (*global*) 1 (*global*) 1 (*global*) 1 (*global*) Version needs section '.gnu.version_r' contains 1 entries: Addr: 0x00000000000003ac Offset: 0x0003ac Link to section: 4 (.dynstr) 000000: Version: 1 File: libc.so.6 Cnt: 1 0x0010: Name: GLIBC_2.0 Flags: none Version: 2
-- Crash-utility mailing list Crash-utility@xxxxxxxxxx https://www.redhat.com/mailman/listinfo/crash-utility