d7c4832e6a640be972017e85ab21e72950dfeddd |
|
03-Apr-2017 |
Jiyong Park <jiyong@google.com> |
linker: add android_get_exported_namespace Depending on how ld.config.txt is configured, there can be multiple built-in namespaces created by the linker from the beginning of a process. android_get_exported_namespace is a platform only API for getting a handle (android_namespace_t*) to one of the built-in namespaces with given name. The returned namespace can then be given to android_dlopen_ext in order to explicitly specify the target namespace where the library is searched and loaded from. Note that this function only returns 'exported' namespaces created via ld.config.txt file. In order to export a namespace, the visible property should be set to true: namespace.<name>.visible = true Namespaces are hidden by default. Hidden namespaces and namespaces that are created programmatically, notably 'classloader-namespace', aren't returned by this function. Bug: 36851137 Test: confirmed that namespaces created with ld.config.txt is retrieved. Test: linker-unit-tests passes Change-Id: I0d05fa7e0e116009edf8ea362ab46774bc617cbf
|
7a34b9d57a762ca7cd6b8d6b9f9fb45c2b991da7 |
|
03-Feb-2017 |
Dimitry Ivanov <dimitry@google.com> |
Replace public library list with shared lib sonames (part 2/2) This commit updates interface of libdl.c. 1. android_init_namespaces is replaces with android_init_anonymous_namespace 2. added 2 arguments to android_create_namespace to specify linked namespace and the list of shared libraries sonames. 3. symbol lookup does not get past boundary libraries (added check and test for it). Bug: http://b/26833548 Bug: http://b/21879602 Test: bionic-unit-tests --gtest_filter=dl*:Dl* Change-Id: I32921da487a02e5bd0d2fc528904d1228394bfb9
|
4e84d5e4fa10a405c155bf7c655c2000d0ea6520 |
|
13-Dec-2016 |
Dimitry Ivanov <dimitry@google.com> |
Repair dlwarning toast This was introduced by d9e427cf41893377dcdd0650ba20ff7cf7d72209 where libdl.c android_dlwarning method implementation was not updated. This makes it delegate the call to ld-android.so Bug: http://b/33530622 Test: build, flash and launch test app Change-Id: I8a379442de94724280638db73e5f7934f2ea394e
|
d9e427cf41893377dcdd0650ba20ff7cf7d72209 |
|
23-Nov-2016 |
Dimitry Ivanov <dimitry@google.com> |
Bionic loader is no longer hijacking libdl.so Do not hijack libdl.so methods but make libdl proxy calls to loader instead. This will be replaces by calls to libc.so once loader functionality is migrated. Also add a lock to dl_unwind_find_exidx function call. Test: bionic-unit-tests --gtest_filter=dl*:Dl* Bug: http://b/27106625 Change-Id: Ic33a7109a86f4262798d63a35f4c61d15b0068bb
|
dcb846cb4978130d5db6b795e22e08b65e73f3cd |
|
06-Dec-2016 |
Andreas Gampe <agampe@google.com> |
Revert "Bionic loader is no longer hijacking libdl.so" This reverts commit c12acef96bd80c419654e159e1dc24a69513a86d. Breaks the Mips build. Bug: 27106625 Change-Id: I27edb7114065c36e1b618e387530d58189cdb184
|
c12acef96bd80c419654e159e1dc24a69513a86d |
|
23-Nov-2016 |
Dimitry Ivanov <dimitry@google.com> |
Bionic loader is no longer hijacking libdl.so Do not hijack libdl.so methods but make libdl proxy calls to loader instead. This will be replaces by calls to libc.so once loader functionality is migrated. Also add a lock to dl_unwind_find_exidx function call. Test: bionic-unit-tests --gtest_filter=dl*:Dl* Bug: http://b/27106625 Change-Id: I9e666e771e4bbca52151cfa7fc4c8677e1480818
|
5e071a18ce88d93fcffaebb9e0f62524ae504908 |
|
12-Aug-2016 |
Elliott Hughes <enh@google.com> |
dlerror returns char*, not const char*. http://pubs.opengroup.org/onlinepubs/9699919799/functions/dlerror.html: char *dlerror(void); ... The application shall not modify the string returned. Change-Id: I5e684bfd3930c39a2a30ea6fd005a5d5d3e5b181
|
769b33fadf45a039741f932672ac2c4f901d7d4a |
|
21-Jul-2016 |
Dimitry Ivanov <dimitry@google.com> |
Sync linker with internal branch This change includes dlwarning implementation and the compatibility greylist for apps targeting pre-N. Change-Id: Ibf02a07cc58cbbb1a5aef4ac34558c5d43e4305f Test: Run bionic-unit-tests --gtest_filter=dl*:Dl*
|
6be6ef563e15cec05ea758f76b493b63c760923c |
|
02-Mar-2016 |
Dimitry Ivanov <dimitry@google.com> |
Modify android_dlwarning function to use a callback The previous implementation of android_dlwarning was not thread-safe and could return a pointer soon to become invalid in some situations. This change fixed the problem. I have also removed android_dlwarning from the dlext.h header file in case we decide to keep android_dlwarning in the final release. Bug: http://b/27453994 Change-Id: If6c896a80a17c4be0e18795e617712ad36a106fe
|
df91dc2c192aa2789320c500037d28c919daa820 |
|
26-Feb-2016 |
Dimitry Ivanov <dimitry@google.com> |
Add android_dlwarning() method This is temporary method intended to use for a toast message on preview and beta releases. Will be removed before the production release. Bug: http://b/27365747 Change-Id: I39cc716bb82863ae761b6821bcec77cce6db3781
|
7331fe18d7ffd550996e07b534bc7a6cf625afa5 |
|
14-Dec-2015 |
Dimitry Ivanov <dimitry@google.com> |
linker: implement shared namespaces Shared namespaces clone the list of loaded native libraries from the caller namespace. This allows classloaders for bundled apps to share already loaded libraries with default namespace. Bug: http://b/22548808 Bug: http://b/26165097 Change-Id: I8949d45937fdb38e1f586ff0679003adac0d9dad (cherry picked from commit e78deef364d952dd1141a2f3067a12060aaf11e6)
|
e78deef364d952dd1141a2f3067a12060aaf11e6 |
|
14-Dec-2015 |
Dimitry Ivanov <dimitry@google.com> |
linker: implement shared namespaces Shared namespaces clone the list of loaded native libraries from the caller namespace. This allows classloaders for bundled apps to share already loaded libraries with default namespace. Bug: http://b/22548808 Bug: http://b/26165097 Change-Id: I8949d45937fdb38e1f586ff0679003adac0d9dad
|
9cf99cbad89c8495828788ce693a99ced434f66f |
|
11-Dec-2015 |
Dimitry Ivanov <dimitry@google.com> |
linker: add dlvsym(3) This changes implements dlvsym - dlsym for versioned symbols. Bug: http://b/22865643 Change-Id: Ic90a60d512104261a1416c43f9100f0d88e3b46f
|
284ae3559ed909613b189b98bdc3efab94373a30 |
|
08-Dec-2015 |
Dimitry Ivanov <dimitry@google.com> |
Add permitted_when_isolated_path to linker namespaces The permitted_when_isolated_path is a way to white-list directories not present in search-path. It is ignored for not isolated namespaces. Bug: http://b/25853516 Bug: http://b/22548808 Change-Id: Ib1538037268eea69323ea49968a34a4a1d1938a5
|
1ffec1cc4d0e283bb1ff6f49843769a3493b8d73 |
|
23-Nov-2015 |
Dmitriy Ivanov <dimitry@google.com> |
Introduce anonymous namespace The anonymous namespace is introduced to handle cases when linker can not find the caller. This usually happens when caller code was not loaded by dynamic linker; for example mono-generated code. Bug: http://b/25844435 Bug: http://b/22548808 Change-Id: I9e5b1d23c1c75bc78548d68e79216a6a943a33cf
|
42d5fcb9f494eb45de3b6bf759f4a18076e84728 |
|
30-Oct-2015 |
Dmitriy Ivanov <dimitry@google.com> |
Introducing linker namespaces Bug: http://b/22548808 Change-Id: Ia3af3c0a167f1d16447a3d83bb045d143319b1e1
|
d8ead18145cba98fdc7256f9a0e69b8c1c90cd1c |
|
22-May-2015 |
Dmitriy Ivanov <dimitry@google.com> |
Add functions to provide target sdk version Bug: http://b/21364029 Change-Id: I8648d1bff6c8fd6e7cd12da7f128e048b9f2829a (cherry picked from commit 79fd668bb4ddb22432eeda2ebd8d10359013d9a8)
|
79fd668bb4ddb22432eeda2ebd8d10359013d9a8 |
|
22-May-2015 |
Dmitriy Ivanov <dimitry@google.com> |
Add functions to provide target sdk version Bug: http://b/21364029 Change-Id: I8648d1bff6c8fd6e7cd12da7f128e048b9f2829a
|
012cb4583a5f8564059142bb1900ea3a31e7cfa9 |
|
06-Feb-2014 |
Torne (Richard Coles) <torne@google.com> |
Add android_dlopen_ext() interface to linker. Add a function "android_dlopen_ext()", defined in <android/dlext.h>. This is an extended version of dlopen() which takes a struct for passing additional parameters for Android-specific functionality. This will be used to support RELRO section sharing between separate processes. Bug: 13005501 Change-Id: I9c99b2f2a02ee329dedaeba09ef3a1113b17b2d6
|
7ac975146ea7bc1ee7499bafc4e0b57b7ee56c98 |
|
15-Jan-2014 |
Elliott Hughes <enh@google.com> |
Fix libdl build warnings, turn on -Werror. Change-Id: I71c39b77ac1e9a92482ce71a829449100945ec86
|
a4aafd156068ee174012f28cd894dbecf0e4ab90 |
|
14-Jan-2014 |
Elliott Hughes <enh@google.com> |
Make it possible for code to query the dynamic linker's default search path. We're not going to have init(1) set LD_LIBRARY_PATH globally on 64-bit. This patch makes it possible for libnativehelper to set LD_LIBRARY_PATH in each Java VM (to support System.loadLibrary) without also hard-coding the default search path there. Change-Id: If13961fae976e06dd80d5ef522f31e8b7eb01154
|
24053a461e7a20f34002262c1bb122023134989d |
|
20-Aug-2013 |
Christopher Ferris <cferris@google.com> |
Add the dl_iterate_phdr function to libdl for arm. Bug: 8410085 Merge from internal master. (cherry-picked from cb491bc66dc0abc145930b09086eb9189a30f6c2) Change-Id: I94ed51bc5d4c626df7552c0e85c31ccee2d6568f
|
cb491bc66dc0abc145930b09086eb9189a30f6c2 |
|
20-Aug-2013 |
Christopher Ferris <cferris@google.com> |
Add the dl_iterate_phdr function to libdl for arm. Bug: 8410085 Change-Id: I94ed51bc5d4c626df7552c0e85c31ccee2d6568f
|
cade4c36e7c9c62db3f476a0f9cfc329bac9acb7 |
|
20-Dec-2012 |
Elliott Hughes <enh@google.com> |
Support System.loadLibrary for libraries with transitive dependencies. Also fix the FLAG_ERROR annoyance --- it's not helpful to cache failures. Bug: 7896159 Bug: http://code.google.com/p/android/issues/detail?id=34416 Bug: http://code.google.com/p/android/issues/detail?id=22143 Change-Id: I60f235edb4ea4756e1f7ce56f7739f18e8a50789
|
22d629211d72adaf46f3fc48f59540f8e5798b1e |
|
12-Oct-2012 |
Elliott Hughes <enh@google.com> |
Make the dlfcn mutex static. More style fixes too, and removal of yet another lingering SH reference! Change-Id: Iebc34a46475dd11845ad172b9108bb6ddd7585bb
|
726800e8f42f25a1bf7a36b1603ded29266e8ac6 |
|
02-May-2012 |
Chris Dearman <chris@mips.com> |
MIPS support to libm, libdl and libthread_db Change-Id: I9106721af7fe0cd45df82976250db0d300a20117 Signed-off-by: Raghu Gandham <raghu@mips.com>
|
bda5da074eab4bdf374e1f4a19d480c62c72f5ff |
|
28-Sep-2011 |
Mathias Agopian <mathias@google.com> |
fix prototype of dladdr this breaks C++ source code in particular. Change-Id: Ie06b5d31d23b5455e6950c470adc64dd5e7784df
|
e2a8b1fd19fb3a8ead2ba28ddba27be19fa978b5 |
|
31-Dec-2009 |
Matt Fischer <matt.fischer@garmin.com> |
Added support for dladdr() dladdr() is a GNU extension function, which allows the caller to retrieve symbol information for a specified memory address. It is useful for things like generating backtrace information at runtime. Change-Id: I3a1def1a6c9c666d93e1e97b7d260dfa5b9b79a9
|
efecfde19a1af5aacbd77a6124968df2d7a49a83 |
|
31-Aug-2009 |
Shin-ichiro KAWASAKI <shinichiro.kawasaki.mg@hitachi.com> |
added and modified libdl to support SuperH architecture
|
1dc9e472e19acfe6dc7f41e429236e7eef7ceda1 |
|
04-Mar-2009 |
The Android Open Source Project <initial-contribution@android.com> |
auto import from //depot/cupcake/@135843
|
1767f908af327fa388b1c66883760ad851267013 |
|
04-Mar-2009 |
The Android Open Source Project <initial-contribution@android.com> |
auto import from //depot/cupcake/@135843
|
4e468ed2eb86a2406e14f1eca82072ee501d05fd |
|
18-Dec-2008 |
The Android Open Source Project <initial-contribution@android.com> |
Code drop from //branches/cupcake/...@124589
|
a27d2baa0c1a2ec70f47ea9199b1dd6762c8a349 |
|
21-Oct-2008 |
The Android Open Source Project <initial-contribution@android.com> |
Initial Contribution
|