summaryrefslogtreecommitdiffstats
path: root/libc/include/android/dlext.h
diff options
context:
space:
mode:
Diffstat (limited to 'libc/include/android/dlext.h')
-rw-r--r--libc/include/android/dlext.h10
1 files changed, 9 insertions, 1 deletions
diff --git a/libc/include/android/dlext.h b/libc/include/android/dlext.h
index 5c3a206..f27e4e5 100644
--- a/libc/include/android/dlext.h
+++ b/libc/include/android/dlext.h
@@ -54,12 +54,19 @@ enum {
*/
ANDROID_DLEXT_USE_LIBRARY_FD = 0x10,
+ /* If opening a library using library_fd read it starting at library_fd_offset.
+ * This flag is only valid when ANDROID_DLEXT_USE_LIBRARY_FD is set.
+ */
+
+ ANDROID_DLEXT_USE_LIBRARY_FD_OFFSET = 0x20,
+
/* Mask of valid bits */
ANDROID_DLEXT_VALID_FLAG_BITS = ANDROID_DLEXT_RESERVED_ADDRESS |
ANDROID_DLEXT_RESERVED_ADDRESS_HINT |
ANDROID_DLEXT_WRITE_RELRO |
ANDROID_DLEXT_USE_RELRO |
- ANDROID_DLEXT_USE_LIBRARY_FD,
+ ANDROID_DLEXT_USE_LIBRARY_FD |
+ ANDROID_DLEXT_USE_LIBRARY_FD_OFFSET,
};
typedef struct {
@@ -68,6 +75,7 @@ typedef struct {
size_t reserved_size;
int relro_fd;
int library_fd;
+ off64_t library_fd_offset;
} android_dlextinfo;
extern void* android_dlopen_ext(const char* filename, int flag, const android_dlextinfo* extinfo);