[Ltrace-devel] No output on Ubuntu 16.10
doug
doug at hoytech.com
Wed May 31 22:13:51 UTC 2017
Hi,
I've noticed ltrace not working in certain cases too. I think it might have something to do with binaries compiled with "relro now". This is a security feature where all the symbols are looked up on startup, not lazily, so that the GOT can be made read-only.
I'm still on Ubuntu 16.04 so I can still ltrace ls just fine. However, I can't ltrace curl. Here's the reason I think it's related to relro now (LAZY vs NOW in the scanelf output):
$ scanelf -a /bin/ls /usr/bin/curl
ET_EXEC PeMRxS 0755 LE RW- R-- RW- - - LAZY /bin/ls
ET_DYN PeMRxS 0755 LE RW- R-- RW- - - NOW /usr/bin/curl
I added a little test case to the stack overflow question:
https://stackoverflow.com/questions/43213505/no-output-when-running-ltrace/44295494
Note that this issue was reported earlier on this list by Martin Cermak:
http://lists.alioth.debian.org/pipermail/ltrace-devel/2016-May/001378.html
Regards,
Doug
PS. This also seems to affect LD_AUDIT (and therefore latrace, where I'm going to report another bug right after this).
More information about the Ltrace-devel
mailing list