diff options
author | midipix <writeonce@midipix.org> | 2025-06-20 05:47:12 +0000 |
---|---|---|
committer | midipix <writeonce@midipix.org> | 2025-06-20 06:01:23 +0000 |
commit | 6e95252bc1d2ed235d9e86bd99973e3da0739a1c (patch) | |
tree | 4ffeb84ba931545fee838eacd1df3108af9b015d /include | |
parent | 61162feacea8f33fe58345f5c92a5c20613f2b1c (diff) | |
download | sltdl-6e95252bc1d2ed235d9e86bd99973e3da0739a1c.tar.bz2 sltdl-6e95252bc1d2ed235d9e86bd99973e3da0739a1c.tar.xz |
sltdl.h: define struct lt_dlloader and related type definitions.
Diffstat (limited to 'include')
-rw-r--r-- | include/sltdl/sltdl.h | 21 |
1 files changed, 21 insertions, 0 deletions
diff --git a/include/sltdl/sltdl.h b/include/sltdl/sltdl.h index 5d1b51b..db51e6f 100644 --- a/include/sltdl/sltdl.h +++ b/include/sltdl/sltdl.h @@ -52,6 +52,27 @@ typedef struct lt_modctx * lt_dlhandle; typedef struct lt_modctl * lt_dladvise; typedef struct lt_symdef lt_dlsymlist; +typedef void * lt_module_open (void *, const char *, struct lt_modctx *); +typedef int lt_module_close (void *, void *); +typedef void * lt_find_sym (void *, void *, const char *); +typedef int lt_dlloader_init (void *); +typedef int lt_dlloader_exit (void *); + + +struct lt_dlentry { + const char * name; + const char * sym_prefix; + lt_module_open * module_open; + lt_module_close * module_close; + lt_find_sym * find_sym; + lt_dlloader_init * dlloader_init; + lt_dlloader_exit * dlloader_exit; + lt_user_data dlloader_data; + enum lt_dlpriority priority; +}; + +typedef struct lt_dlentry lt_dlvtable; + /* dlsym vtable */ extern const struct lt_symdef lt__PROGRAM__LTX_preloaded_symbols[]; |