diff options
author | Dimitry Ivanov <dimitry@google.com> | 2016-05-17 13:29:37 -0700 |
---|---|---|
committer | Dimitry Ivanov <dimitry@google.com> | 2016-05-17 13:55:46 -0700 |
commit | 2ba1cf39ae6087249a839ec7b3793d4d4fa75438 (patch) | |
tree | adf1d98570a548157112a307ccd58c17b5ffb320 /tests/dlext_test.cpp | |
parent | 5df5884743306f7b2ee437c293f4197101528a98 (diff) | |
download | android_bionic-2ba1cf39ae6087249a839ec7b3793d4d4fa75438.tar.gz android_bionic-2ba1cf39ae6087249a839ec7b3793d4d4fa75438.tar.bz2 android_bionic-2ba1cf39ae6087249a839ec7b3793d4d4fa75438.zip |
Fix dlopen of main executable by absolute path
This CL adds initialization of inode for the main executable
which enables linker to resolve the correct soinfo when
application calls dlopen with absolute path to the
main executable.
Bug: http://b/28420266
Change-Id: I102e07bde454bd44c6e46075e3faeeb5092830d8
Diffstat (limited to 'tests/dlext_test.cpp')
-rw-r--r-- | tests/dlext_test.cpp | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/tests/dlext_test.cpp b/tests/dlext_test.cpp index 109bab5a8..09f7d668a 100644 --- a/tests/dlext_test.cpp +++ b/tests/dlext_test.cpp @@ -803,7 +803,7 @@ TEST(dlext, ns_isolated) { handle2 = android_dlopen_ext(lib_private_external_path.c_str(), RTLD_NOW, &extinfo); ASSERT_TRUE(handle2 == nullptr); ASSERT_EQ("dlopen failed: library \"" + lib_private_external_path + "\" needed" - " or dlopened by \"" + get_executable_name() + "\" is not accessible" + " or dlopened by \"" + get_executable_path() + "\" is not accessible" " for the namespace \"private_isolated1\"", dlerror()); extinfo.library_namespace = ns_isolated2; @@ -905,7 +905,7 @@ TEST(dlext, ns_shared) { handle2 = android_dlopen_ext(lib_private_external_path.c_str(), RTLD_NOW, &extinfo); ASSERT_TRUE(handle2 == nullptr); ASSERT_EQ("dlopen failed: library \"" + lib_private_external_path + "\" needed" - " or dlopened by \"" + get_executable_name() + "\" is not accessible" + " or dlopened by \"" + get_executable_path() + "\" is not accessible" " for the namespace \"private_isolated_shared\"", dlerror()); // load libnstest_root.so to shared namespace in order to check that everything is different |