|
| UnixDynamicLinker (void *const lib_default, void *const lib_next, int const flag_lazy, int const flag_now, int const flag_local, int const flag_global) |
|
void | closeLibraryImpl (libhandle_t handle) noexcept override |
|
std::string | getLastErrorImpl () noexcept override |
|
const char * | lookupLibraryPathnameImpl (libhandle_t handle, const std::string &symbolName) noexcept override |
|
symhandle_t | lookupSymbolGlobalImpl (const std::string &symbolName) noexcept override |
|
symhandle_t | lookupSymbolLocalImpl (libhandle_t handle, const std::string &symbolName) noexcept override |
|
libhandle_t | openLibraryGlobalImpl (const std::string &pathname) noexcept override |
|
libhandle_t | openLibraryLocalImpl (const std::string &pathname) noexcept override |
|
| DynamicLinker () noexcept=default |
|
virtual void | closeLibraryImpl (libhandle_t handle) noexcept=0 |
|
LibRef_ref | decrLibRefCount (const libhandle_t handle) noexcept |
|
virtual std::string | getLastErrorImpl () noexcept=0 |
|
LibRef_ref | incrLibRefCount (const libhandle_t handle, const std::string &libName) noexcept |
|
virtual const char * | lookupLibraryPathnameImpl (libhandle_t libraryHandle, const std::string &symbolName) noexcept=0 |
|
virtual symhandle_t | lookupSymbolGlobalImpl (const std::string &symbolName) noexcept=0 |
|
virtual symhandle_t | lookupSymbolLocalImpl (libhandle_t handle, const std::string &symbolName) noexcept=0 |
|
virtual libhandle_t | openLibraryGlobalImpl (const std::string &pathname) noexcept=0 |
|
virtual libhandle_t | openLibraryLocalImpl (const std::string &pathname) noexcept=0 |
|
|
typedef void * | libhandle_t |
| library handle More...
|
|
typedef void * | symhandle_t |
| symbol handle within a library More...
|
|
virtual | ~DynamicLinker () noexcept=default |
|
void | closeLibrary (libhandle_t handle) noexcept |
| Security checks are implicit by previous call of openLibraryLocal(const std::string_view&, boolean) or openLibraryGlobal(const std::string_view&, boolean) retrieving the librarHandle . More...
|
|
std::string | getLastError () noexcept |
| Returns a string containing the last error. More...
|
|
const char * | lookupLibraryPathname (libhandle_t handle, const std::string &symbolName) noexcept |
|
symhandle_t | lookupSymbol (libhandle_t handle, const std::string &symbolName) noexcept |
|
symhandle_t | lookupSymbolGlobal (const std::string &symbolName) noexcept |
|
libhandle_t | openLibraryGlobal (const std::string &pathname) noexcept |
| Opens the named library, allowing system wide access for other users. More...
|
|
libhandle_t | openLibraryLocal (const std::string &pathname) noexcept |
| Opens the named library, restricting access to this process. More...
|
|
static std::vector< std::string > | enumerateLibraryPaths (const std::string &libName, bool searchSystemPath=false, bool searchSystemPathFirst=false) noexcept |
| Returns list of potential absolute library filenames. More...
|
|
static DynamicLinker & | get () noexcept |
| Returns static singleton instance of DynamicLinker. More...
|
|
static std::string | getBaseName (const std::string &filename, const bool isBasename=false, const bool caseInsensitive=jau::os::is_windows()) noexcept |
| Returns the library basename, i.e. More...
|
|
static constexpr_cxx20 std::string | getCanonicalName (const std::string &basename, const bool checkIsCanonical=true) noexcept |
| Returns canonical library name for this system from given library-basename, e.g. More...
|
|
static constexpr_cxx20 std::string | getDefaultPrefix () noexcept |
| Returns the native library prefix, e.g. More...
|
|
static constexpr_cxx20 std::string | getDefaultSuffix () noexcept |
| Returns the native library suffix including the dot, e.g. More...
|
|
static constexpr_cxx20 std::string | getEnvLibPathVarName () noexcept |
| Returns the environment library path variable name, e.g. More...
|
|
static std::vector< std::string > | getSystemEnvLibraryPaths () |
| Returns a list of system paths, from the getSystemEnvLibraryPathVarname() variable. More...
|
|
static bool | isCanonicalName (const std::string &filename, const bool isBasename=false, const bool caseInsensitive=jau::os::is_windows()) noexcept |
| Returns true if the given filename contains the canonical prefix and suffix, otherwise returns false. More...
|
|
static constexpr const bool | DEBUG_LOOKUP = false |
|
Definition at line 49 of file unix_dyn_linker.cpp.