comparison dynload/dynload.h @ 242:85b61e8facfe

dynload: - added new function dlGetLibraryPath to get path of already loaded lib - covered new function in dynload_plain test - cleanups/cosmetics for consistency
author Tassilo Philipp
date Thu, 04 May 2017 13:42:17 +0200
parents 3e629dc19168
children f5577f6bf97a
comparison
equal deleted inserted replaced
241:cde7b1f3b8f2 242:85b61e8facfe
34 34
35 #ifndef DL_API 35 #ifndef DL_API
36 #define DL_API 36 #define DL_API
37 #endif 37 #endif
38 38
39 /* --- public api ---------------------------------------------------------- */
40 39
41 /* shared library loading and explicit symbol resolving */ 40 /* shared library loading and explicit symbol resolving */
41 /* dlLoadLibrary will search for specified lib (e.g. as leaf name, only), */
42 /* to the platforms dynamic linking style */
42 43
43 typedef struct DLLib_ DLLib; 44 typedef struct DLLib_ DLLib;
44 45
45 DL_API DLLib* dlLoadLibrary(const char* libpath); 46 DL_API DLLib* dlLoadLibrary (const char* libPath);
46 DL_API void dlFreeLibrary(DLLib* pLib); 47 DL_API void dlFreeLibrary (DLLib* pLib);
47 DL_API void* dlFindSymbol(DLLib* pLib, const char* pSymbolName); 48 DL_API void* dlFindSymbol (DLLib* pLib, const char* pSymbolName);
49 DL_API int dlGetLibraryPath(DLLib* pLib, char* sOut, int bufSize);
50
48 51
49 /* symbol table enumeration - only for symbol lookup, not resolve */ 52 /* symbol table enumeration - only for symbol lookup, not resolve */
53 /* note that dlSymsInit does not search library paths */
50 54
51 typedef struct DLSyms_ DLSyms; 55 typedef struct DLSyms_ DLSyms;
52 56
53 DL_API DLSyms* dlSymsInit (const char* libPath); 57 DL_API DLSyms* dlSymsInit (const char* libPath);
54 DL_API void dlSymsCleanup(DLSyms* pSyms); 58 DL_API void dlSymsCleanup(DLSyms* pSyms);