[Bug 772] dladdr() behavior is ambiguous

[email protected]
Newsgroups gmane.linux.lsb.specification
Message-ID <[email protected]>


------- Additional Comments From [email protected]  2005-03-22 09:48 -------
The behavior of dladdr() has appearantly changed on ia64 recently. The symbol 
version does not appear to have be bumped to reflect this change. The change 
can be seen here: 
 
http://savannah.gnu.org/cgi-bin/viewcvs/libc/libc/elf/dl-addr.c.diff?r1=1.23&r2=1.24&diff_format=l 
 
This change seems to only affect ia64 which implementes DL_SYMBOL_ADDR 
differently. The pointer to the fptr is now being returned instead of the 
address of the functionentry point. 
 
The testprogram which is attached produces this output for SLES9 
w/libstdc++.so.6 added, and Debian Sarge: 
 
stu1 found at 0x200000000003c0f0 
&stu1 found at 0x200000000003c0f0 
stup found at 0x200000000003c0f0 
dlinfo_dli.fname ./studl.so 
dlinfo_dli.fbase 0x2000000000040000 
dlinfo_dli.sname stu1 
dlinfo_dli.saddr 0x2000000000040400 
dlinfo_dli.fname ./studl.so 
dlinfo_dli.fbase 0x2000000000040000 
dlinfo_dli.sname stu1 
dlinfo_dli.saddr 0x2000000000040400 
 
Note that the value of stup != dlinfo.dli_saddr 
 
On RHEL4 the output is: 
 
stu1 found at 0x200000000003ebc0 
&stu1 found at 0x200000000003ebc0 
stup found at 0x200000000003ebc0 
dlinfo_dli.fname ./studl.so 
dlinfo_dli.fbase 0x2000000000044000 
dlinfo_dli.sname stu1 
dlinfo_dli.saddr 0x200000000003ebc0 
dlinfo_dli.fname ./studl.so 
dlinfo_dli.fbase 0x2000000000044000 
dlinfo_dli.sname stu1 
dlinfo_dli.saddr 0x200000000003ebc0 
 
Note that stup == dlinfo.dli_saddr    
 
--    
Configure bugmail: http://bugs.linuxbase.org/userprefs.cgi?tab=email   
------- You are receiving this mail because: -------
You are the assignee for the bug, or are watching the assignee.
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.