Home
last modified time | relevance | path

Searched refs:extinfo (Results 1 – 8 of 8) sorted by relevance

/bionic/tests/
Ddlext_test.cpp99 android_dlextinfo extinfo; in TEST_F() local
100 extinfo.flags = 0; in TEST_F()
101 handle_ = android_dlopen_ext(LIBNAME, RTLD_NOW, &extinfo); in TEST_F()
111 android_dlextinfo extinfo; in TEST_F() local
112 extinfo.flags = ANDROID_DLEXT_USE_LIBRARY_FD; in TEST_F()
113 extinfo.library_fd = TEMP_FAILURE_RETRY(open(lib_path.c_str(), O_RDONLY | O_CLOEXEC)); in TEST_F()
114 ASSERT_TRUE(extinfo.library_fd != -1); in TEST_F()
115 handle_ = android_dlopen_ext(lib_path.c_str(), RTLD_NOW, &extinfo); in TEST_F()
129 android_dlextinfo extinfo; in TEST_F() local
130 extinfo.flags = ANDROID_DLEXT_USE_LIBRARY_FD | ANDROID_DLEXT_USE_LIBRARY_FD_OFFSET; in TEST_F()
[all …]
/bionic/libc/include/android/
Ddlext.h131 extern void* android_dlopen_ext(const char* filename, int flag, const android_dlextinfo* extinfo);
/bionic/linker/
Ddlfcn.cpp70 const android_dlextinfo* extinfo, void* caller_addr) { in dlopen_ext() argument
72 void* result = do_dlopen(filename, flags, extinfo, caller_addr); in dlopen_ext()
80 void* android_dlopen_ext(const char* filename, int flags, const android_dlextinfo* extinfo) { in android_dlopen_ext() argument
82 return dlopen_ext(filename, flags, extinfo, caller_addr); in android_dlopen_ext()
Dlinker_phdr.cpp165 bool ElfReader::Load(const android_dlextinfo* extinfo) { in Load() argument
168 if (ReserveAddressSpace(extinfo) && in Load()
429 bool ElfReader::ReserveAddressSpace(const android_dlextinfo* extinfo) { in ReserveAddressSpace() argument
445 if (extinfo != nullptr) { in ReserveAddressSpace()
446 if (extinfo->flags & ANDROID_DLEXT_RESERVED_ADDRESS) { in ReserveAddressSpace()
447 reserved_size = extinfo->reserved_size; in ReserveAddressSpace()
449 } else if (extinfo->flags & ANDROID_DLEXT_RESERVED_ADDRESS_HINT) { in ReserveAddressSpace()
450 reserved_size = extinfo->reserved_size; in ReserveAddressSpace()
453 if (addr != nullptr && (extinfo->flags & ANDROID_DLEXT_FORCE_FIXED_VADDR) != 0) { in ReserveAddressSpace()
455 } else if ((extinfo->flags & ANDROID_DLEXT_LOAD_AT_FIXED_ADDRESS) != 0) { in ReserveAddressSpace()
[all …]
Dlinker_phdr.h46 bool Load(const android_dlextinfo* extinfo);
64 bool ReserveAddressSpace(const android_dlextinfo* extinfo);
Dlinker.cpp1149 void set_extinfo(const android_dlextinfo* extinfo) { in set_extinfo() argument
1150 extinfo_ = extinfo; in set_extinfo()
1694 const android_dlextinfo* extinfo = task->get_extinfo(); in load_library() local
1718 if (extinfo == nullptr || (extinfo->flags & ANDROID_DLEXT_FORCE_LOAD) == 0) { in load_library()
1829 const android_dlextinfo* extinfo = task->get_extinfo(); in load_library() local
1833 if (extinfo != nullptr && (extinfo->flags & ANDROID_DLEXT_USE_LIBRARY_FD) != 0) { in load_library()
1835 if ((extinfo->flags & ANDROID_DLEXT_USE_LIBRARY_FD_OFFSET) != 0) { in load_library()
1836 file_offset = extinfo->library_fd_offset; in load_library()
1839 if (!realpath_fd(extinfo->library_fd, &realpath)) { in load_library()
1845 task->set_fd(extinfo->library_fd, false); in load_library()
[all …]
Dlinker.h293 const android_dlextinfo* extinfo);
458 void* do_dlopen(const char* name, int flags, const android_dlextinfo* extinfo, void* caller_addr);
/bionic/libdl/
Dlibdl.c53 const android_dlextinfo* extinfo __unused) { in android_dlopen_ext()