Hi,
I am trying to get handle(or load) of some system library like libjavacore.so using dlopen() function, and typecasting it return type into struct soinfo.
For 32 bit Arch it works fine.
soname_[libjavacore.so]
version_[2]
old_name_[libjavacore.so]
size[221184]
nbucket_[0]
Bu for 64 bit arch dlopen() is returning dangling pointer or struct soinfo is get changed.
$5 = {
old_name_ = "@P3\217\321\177\000\000\t", '\000' <repeats 16 times>, "P3\217\321\177\000\000\000p\006\000\000\000\000\000(g9\217\321\177\000\000\230\375&\225\321\177\000\000A\000\000@\000\000\000\000h\231\063\217\321\177\000\000\210R3\217\321\177", '\000' <repeats 34 times>, "`}4\217\321\177\000\000\215\002\000\000\000\000\000",
phdr = 0x7fd18f33f570,
phnum = 1450,
entry = 0,
base = 0,
size = 0,
unused1 = 0,
dynamic = 0x7fd18f396628,
unused2 = 1,
unused3 = 0,
next = 0x0,
flags_ = 0,
strtab_ = 0x3 <error: Cannot access memory at address 0x3>,
symtab_ = 0x7fd18f335000,
nbucket_ = 140538130281552,
nchain_ = 140538027796264,
bucket_ = 0x7fd19526fe70,
chain_ = 0x7fd19526fa90,