Re: [PATCH V2] libelf/elf_end.c: check data_list.data.d.d_buf before free it

2018-08-31 Thread Mark Wielaard
Hi Robert, On Fri, 2018-08-31 at 10:17 +0800, Robert Yang wrote: > Sorry, I can't make sure which ones is wrong, libqb, prelink or > elfutils, this > happens when cross compiling, and I've built more than 4 hunderds of packages, > libqb 1.0.3 is the only package which has the problem, I've also fi

Re: Accessing String Table Indexes for .rodata

2018-08-31 Thread Henry C
Thanks for replying. I mean for example, void myprintf(const char* ptr) { printf("%p\n", ptr); } int main() { myprintf("hello world"); } Let's say the output is 0x403DE. Does it mean that Elf64_Shdr::sh_addr of the string table (of .rodata) + the offset of "hello word" within th

Re: Accessing String Table Indexes for .rodata

2018-08-31 Thread Mark Wielaard
On Fri, 2018-08-31 at 19:07 +0800, Henry C wrote: > Thanks for replying. > > I mean for example, > void myprintf(const char* ptr) { > printf("%p\n", ptr); > } > > int main() { > myprintf("hello world"); > } > > Let's say the output is 0x403DE. > > Does it mean that Elf64_Shdr::s

Re: Accessing String Table Indexes for .rodata

2018-08-31 Thread Henry C
Hi Mark, I just dumped out my executable (code was in my very first email): $ eu-readelf -l myexec Program Headers: Type Offset VirtAddr PhysAddr FileSiz MemSiz Flg Align PHDR 0x40 0x00400040 0x00400040 0x0001f8 0x0001f8 R E 0x8 INTERP

Re: Accessing String Table Indexes for .rodata

2018-08-31 Thread Mark Wielaard
On Fri, 2018-08-31 at 20:35 +0800, Henry C wrote: > As you mentioned, it is not guaranteed, I wonder under what situation > Elf64_Shdr::sh_addr won't represent the virtual address of the > beginning of .rodata section. Try creating a shared library or compile your application with -pie to make an