1) A third party excutable that I used for test, and the readelf result is:
arm-linux-androideabi-readelf -d asan_use_after_free | grep NEEDED
0x00000001 (NEEDED) Shared library: [libc.so]
0x00000001 (NEEDED) Shared library: [libstdc++.so]
0x00000001 (NEEDED) Shared library: [libm.so]
0x00000001 (NEEDED) Shared library: [libasan.so.1]
0x00000001 (NEEDED) Shared library: [libdl.so]
According to this result, the libc.so is ahead of libasan.so.1, so the Asan
interceptors may all disabled, but when I run this excutable still can get
error detected correctly:
... ...
==5215==AddressSanitizer Init done
=================================================================
==5215==ERROR: AddressSanitizer: heap-use-after-free on address 0xb5700fd4
at pc 0xb6f9b5e7 bp 0xbed639bc sp 0xbed639b4
WRITE of size 4 at 0xb5700fd4 thread T0
#0 0xb6f9b5e5 (/system/bin/asan_use_after_free+0x5e5)
#1 0xb6f373ff (/system/lib/libc.so+0xe3ff)
0xb5700fd4 is located 4 bytes inside of 40-byte region
[0xb5700fd0,0xb5700ff8)
freed by thread T0 here:
...
... ...
2) For test an android shared lib, libhwui.so, I think the ldd result is
same as readelf to excutable:
arm-linux-gnueabihf-ldd --root=/home/xxx libhwui.so
liblog.so not found
libcutils.so not found
libutils.so not found
libEGL.so not found
libGLESv2.so not found
libskia.so not found
libui.so not found
libRS.so not found
libRScpp.so not found
libstlport.so not found
libc.so not found
libstdc++.so not found
libm.so not found
libasan.so.1 not found
The libc.so is ahead of libasan.so.1, but also can get error detected
correctly(the error that I planted into libhwui.so at first).
--
You received this message because you are subscribed to the Google Groups
"address-sanitizer" group.
To unsubscribe from this group and stop receiving emails from it, send an email
to [email protected].
For more options, visit https://groups.google.com/d/optout.