#include <libltdl/lt_system.h>
#include <libltdl/lt_error.h>
#include <libltdl/lt_dlloader.h>
Go to the source code of this file.
Classes | |
struct | lt_dlsymlist |
struct | lt_dlinfo |
Defines | |
#define | LT_STRLEN(s) (((s) && (s)[0]) ? strlen (s) : 0) |
#define | lt_preloaded_symbols lt__PROGRAM__LTX_preloaded_symbols |
#define | LTDL_SET_PRELOADED_SYMBOLS() |
#define | lt_ptr void * |
Typedefs | |
typedef struct lt__handle * | lt_dlhandle |
typedef int | lt_dlpreload_callback_func (lt_dlhandle handle) |
typedef void * | lt_dlinterface_id |
typedef int | lt_dlhandle_interface (lt_dlhandle handle, const char *id_string) |
Functions | |
LT_SCOPE int | lt_dlinit (void) |
LT_SCOPE int | lt_dlexit (void) |
LT_SCOPE int | lt_dladdsearchdir (const char *search_dir) |
LT_SCOPE int | lt_dlinsertsearchdir (const char *before, const char *search_dir) |
LT_SCOPE int | lt_dlsetsearchpath (const char *search_path) |
LT_SCOPE const char * | lt_dlgetsearchpath (void) |
LT_SCOPE int | lt_dlforeachfile (const char *search_path, int(*func)(const char *filename, void *data), void *data) |
LT_SCOPE int | lt_dladvise_init (lt_dladvise *advise) |
LT_SCOPE int | lt_dladvise_destroy (lt_dladvise *advise) |
LT_SCOPE int | lt_dladvise_ext (lt_dladvise *advise) |
LT_SCOPE int | lt_dladvise_resident (lt_dladvise *advise) |
LT_SCOPE int | lt_dladvise_local (lt_dladvise *advise) |
LT_SCOPE int | lt_dladvise_global (lt_dladvise *advise) |
LT_SCOPE int | lt_dladvise_preload (lt_dladvise *advise) |
LT_SCOPE lt_dlhandle | lt_dlopen (const char *filename) |
LT_SCOPE lt_dlhandle | lt_dlopenext (const char *filename) |
LT_SCOPE lt_dlhandle | lt_dlopenadvise (const char *filename, lt_dladvise advise) |
LT_SCOPE void * | lt_dlsym (lt_dlhandle handle, const char *name) |
LT_SCOPE const char * | lt_dlerror (void) |
LT_SCOPE int | lt_dlclose (lt_dlhandle handle) |
LT_SCOPE int | lt_dlpreload (const lt_dlsymlist *preloaded) |
LT_SCOPE int | lt_dlpreload_default (const lt_dlsymlist *preloaded) |
LT_SCOPE int | lt_dlpreload_open (const char *originator, lt_dlpreload_callback_func *func) |
LT_SCOPE lt_dlinterface_id | lt_dlinterface_register (const char *id_string, lt_dlhandle_interface *iface) |
LT_SCOPE void | lt_dlinterface_free (lt_dlinterface_id key) |
LT_SCOPE void * | lt_dlcaller_set_data (lt_dlinterface_id key, lt_dlhandle handle, void *data) |
LT_SCOPE void * | lt_dlcaller_get_data (lt_dlinterface_id key, lt_dlhandle handle) |
LT_SCOPE const lt_dlinfo * | lt_dlgetinfo (lt_dlhandle handle) |
LT_SCOPE lt_dlhandle | lt_dlhandle_iterate (lt_dlinterface_id iface, lt_dlhandle place) |
LT_SCOPE lt_dlhandle | lt_dlhandle_fetch (lt_dlinterface_id iface, const char *module_name) |
LT_SCOPE int | lt_dlhandle_map (lt_dlinterface_id iface, int(*func)(lt_dlhandle handle, void *data), void *data) |
LT_SCOPE int | lt_dlmakeresident (lt_dlhandle handle) |
LT_SCOPE int | lt_dlisresident (lt_dlhandle handle) |
#define lt_preloaded_symbols lt__PROGRAM__LTX_preloaded_symbols |
#define lt_ptr void * |
Referenced by gnash::SharedLib::getDllSymbol(), and gnash::SharedLib::getInitEntry().
Referenced by lt_dlinsertsearchdir(), lt_dlsetsearchpath(), and lt_dlsym().
#define LTDL_SET_PRELOADED_SYMBOLS | ( | ) |
LT_STMT_START{ \ extern const lt_dlsymlist lt_preloaded_symbols[]; \ lt_dlpreload_default(lt_preloaded_symbols); \ }LT_STMT_END
typedef struct lt__handle* lt_dlhandle |
typedef int lt_dlhandle_interface(lt_dlhandle handle, const char *id_string) |
typedef void* lt_dlinterface_id |
typedef int lt_dlpreload_callback_func(lt_dlhandle handle) |
LT_SCOPE int lt_dladdsearchdir | ( | const char * | search_dir | ) |
LT_SCOPE int lt_dladvise_destroy | ( | lt_dladvise * | advise | ) |
References FREE.
Referenced by lt_dlopenext().
LT_SCOPE int lt_dladvise_ext | ( | lt_dladvise * | advise | ) |
Referenced by lt_dlopenext().
LT_SCOPE int lt_dladvise_global | ( | lt_dladvise * | advise | ) |
LT_SCOPE int lt_dladvise_init | ( | lt_dladvise * | advise | ) |
References lt__zalloc().
Referenced by lt_dlopenext().
LT_SCOPE int lt_dladvise_local | ( | lt_dladvise * | advise | ) |
LT_SCOPE int lt_dladvise_preload | ( | lt_dladvise * | advise | ) |
LT_SCOPE int lt_dladvise_resident | ( | lt_dladvise * | advise | ) |
LT_SCOPE void* lt_dlcaller_get_data | ( | lt_dlinterface_id | key, | |
lt_dlhandle | handle | |||
) |
References lt_interface_data::data, lt__handle::interface_data, and lt_interface_data::key.
LT_SCOPE void* lt_dlcaller_set_data | ( | lt_dlinterface_id | key, | |
lt_dlhandle | handle, | |||
void * | data | |||
) |
References lt_interface_data::data, lt__handle::interface_data, lt_interface_data::key, and REALLOC.
LT_SCOPE int lt_dlclose | ( | lt_dlhandle | handle | ) |
LT_SCOPE const char* lt_dlerror | ( | void | ) |
References LT__GETERROR, and LT__SETERRORSTR.
Referenced by gnash::SharedLib::openLib(), and gnash::SharedLib::SharedLib().
LT_SCOPE int lt_dlexit | ( | void | ) |
LT_SCOPE int lt_dlforeachfile | ( | const char * | search_path, | |
int(*)(const char *filename, void *data) | func, | |||
void * | data | |||
) |
References LT_MODULE_PATH_VAR, and LTDL_SEARCHPATH_VAR.
LT_SCOPE const lt_dlinfo* lt_dlgetinfo | ( | lt_dlhandle | handle | ) |
References lt__handle::info, and LT__SETERROR.
LT_SCOPE const char* lt_dlgetsearchpath | ( | void | ) |
LT_SCOPE lt_dlhandle lt_dlhandle_fetch | ( | lt_dlinterface_id | iface, | |
const char * | module_name | |||
) |
References lt__handle::info, lt_dlhandle_iterate(), lt_dlinfo::name, and streq.
LT_SCOPE lt_dlhandle lt_dlhandle_iterate | ( | lt_dlinterface_id | iface, | |
lt_dlhandle | place | |||
) |
References lt__handle::next.
Referenced by lt_dlhandle_fetch(), and lt_dlloader_remove().
LT_SCOPE int lt_dlhandle_map | ( | lt_dlinterface_id | iface, | |
int(*)(lt_dlhandle handle, void *data) | func, | |||
void * | data | |||
) |
References lt__handle::next.
LT_SCOPE int lt_dlinit | ( | void | ) |
References get_vtable, lt__alloc_die, lt_dlpreload(), lt_dlpreload_open(), and LT_STR.
Referenced by gnash::SharedLib::SharedLib().
LT_SCOPE int lt_dlinsertsearchdir | ( | const char * | before, | |
const char * | search_dir | |||
) |
References LT__SETERROR, and LT_STRLEN.
LT_SCOPE void lt_dlinterface_free | ( | lt_dlinterface_id | key | ) |
References FREE.
Referenced by lt_dlloader_remove().
LT_SCOPE lt_dlinterface_id lt_dlinterface_register | ( | const char * | id_string, | |
lt_dlhandle_interface * | iface | |||
) |
References FREE, lt__malloc(), and lt__strdup().
Referenced by get_vtable(), and lt_dlloader_remove().
LT_SCOPE int lt_dlisresident | ( | lt_dlhandle | handle | ) |
References LT__SETERROR, and LT_DLIS_RESIDENT.
Referenced by lt_dlloader_remove().
LT_SCOPE int lt_dlmakeresident | ( | lt_dlhandle | handle | ) |
References lt__handle::info, lt_dlinfo::is_resident, and LT__SETERROR.
Referenced by gnash::SharedLib::openLib().
LT_SCOPE lt_dlhandle lt_dlopen | ( | const char * | filename | ) |
References lt_dlopenadvise().
Referenced by lt_dlpreload_open().
LT_SCOPE lt_dlhandle lt_dlopenadvise | ( | const char * | filename, | |
lt_dladvise | advise | |||
) |
References lt__advise::is_symglobal, lt__advise::is_symlocal, LT__GETERROR, LT__SETERROR, LT__SETERRORSTR, and lt__advise::try_ext.
Referenced by lt_dlopen(), and lt_dlopenext().
LT_SCOPE lt_dlhandle lt_dlopenext | ( | const char * | filename | ) |
References lt_dladvise_destroy(), lt_dladvise_ext(), lt_dladvise_init(), and lt_dlopenadvise().
Referenced by gnash::SharedLib::openLib().
LT_SCOPE int lt_dlpreload | ( | const lt_dlsymlist * | preloaded | ) |
References lt_dlpreload().
Referenced by lt_dlinit(), and lt_dlpreload().
LT_SCOPE int lt_dlpreload_default | ( | const lt_dlsymlist * | preloaded | ) |
LT_SCOPE int lt_dlpreload_open | ( | const char * | originator, | |
lt_dlpreload_callback_func * | func | |||
) |
References lt_dlsymlist::address, LT__SETERROR, lt_dlopen(), lt_dlsymlist::name, streq, and strneq.
Referenced by lt_dlinit().
LT_SCOPE int lt_dlsetsearchpath | ( | const char * | search_path | ) |
References FREE, and LT_STRLEN.
Referenced by gnash::Extension::Extension(), cygnal::Handler::initModule(), and gnash::Extension::scanAndLoad().
LT_SCOPE void* lt_dlsym | ( | lt_dlhandle | handle, | |
const char * | name | |||
) |
References lt_dlvtable::dlloader_data, lt_dlvtable::find_sym, FREE, lt__handle::info, LT__GETERROR, LT__SETERROR, LT__SETERRORSTR, LT_STRLEN, LT_SYMBOL_LENGTH, LT_SYMBOL_OVERHEAD, MALLOC, lt__handle::module, lt_dlinfo::name, lt_dlvtable::sym_prefix, and lt__handle::vtable.
Referenced by gnash::SharedLib::getDllSymbol(), and gnash::SharedLib::getInitEntry().