GlueGen: com.jogamp.common.os.DynamicLinker Interface Reference

GlueGen v2.6.0-rc-20250721 GlueGen, Native Binding Generator for Java™ (public API).

Public Member Functions | Static Public Attributes | List of all members
com.jogamp.common.os.DynamicLinker Interface Reference

Low level secure dynamic linker access. More...

Collaboration diagram for com.jogamp.common.os.DynamicLinker:

## Public Member Functions

void | claimAllLinkPermission () throws SecurityException
void | releaseAllLinkPermission () throws SecurityException
long | openLibraryGlobal (LibPath libpath, boolean debug) throws SecurityException
| If a `SecurityManager` is installed, user needs link permissions for the named library. More...
long | openLibraryLocal (LibPath libpath, boolean debug) throws SecurityException
| If a `SecurityManager` is installed, user needs link permissions for the named library. More...
String | lookupLibraryPathname (long libraryHandle, String symbolName) throws SecurityException
| Security checks are implicit by previous call of `openLibraryLocal(String, boolean)` or `openLibraryGlobal(String, boolean)` retrieving the `librarHandle`. More...
long | lookupSymbolGlobal (String symbolName) throws SecurityException
| If a `SecurityManager` is installed, user needs link permissions for all libraries, i.e. More...
long | lookupSymbol (long libraryHandle, String symbolName) throws SecurityException, IllegalArgumentException
| Security checks are implicit by previous call of `openLibraryLocal(String, boolean)` or `openLibraryGlobal(String, boolean)` retrieving the `librarHandle`. More...
void | closeLibrary (long libraryHandle, boolean debug) throws SecurityException, IllegalArgumentException
| Security checks are implicit by previous call of `openLibraryLocal(String, boolean)` or `openLibraryGlobal(String, boolean)` retrieving the `librarHandle`. More...
String | getLastError ()
| Returns a string containing the last error. More...

## Static Public Attributes

static final boolean | DEBUG = NativeLibrary.DEBUG
static final boolean | DEBUG_LOOKUP = NativeLibrary.DEBUG_LOOKUP

## Detailed Description

Low level secure dynamic linker access.

Definition at line 34 of file DynamicLinker.java.

## Member Function Documentation

## ◆ claimAllLinkPermission()

void com.jogamp.common.os.DynamicLinker.claimAllLinkPermission | ( |  | ) | throws SecurityException

Exceptions

  SecurityException | if user is not granted global access

Here is the caller graph for this function:

## ◆ closeLibrary()

void com.jogamp.common.os.DynamicLinker.closeLibrary | ( | long | libraryHandle,
|  | boolean | debug
| ) |  | throws SecurityException, IllegalArgumentException

Security checks are implicit by previous call of `openLibraryLocal(String, boolean)` or `openLibraryGlobal(String, boolean)` retrieving the `librarHandle`.

Parameters

  libraryHandle | a library handle previously retrieved via `openLibraryLocal(String, boolean)` or `openLibraryGlobal(String, boolean)`.
  debug | set to true to enable debugging

Exceptions

  IllegalArgumentException | in case case `libraryHandle` is unknown.
  SecurityException | if user is not granted access for the given library handle

## ◆ getLastError()

String com.jogamp.common.os.DynamicLinker.getLastError | ( |  | ) |

Returns a string containing the last error.

Maybe called for debuging purposed if any method fails.

Returns
  error string, maybe null. A null or non-null value has no semantics.

Here is the caller graph for this function:

## ◆ lookupLibraryPathname()

String com.jogamp.common.os.DynamicLinker.lookupLibraryPathname | ( | long | libraryHandle,
|  | String | symbolName
| ) |  | throws SecurityException

Security checks are implicit by previous call of `openLibraryLocal(String, boolean)` or `openLibraryGlobal(String, boolean)` retrieving the `librarHandle`.

Parameters

  libraryHandle | a library handle previously retrieved via `openLibraryLocal(String, boolean)` or `openLibraryGlobal(String, boolean)`.
  symbolName | optional symbol name for an OS which requires the symbol's address to retrieve the path of the containing library

Returns
  the library pathname if found and supported by OS or `null`.

Exceptions

  IllegalArgumentException | in case case `libraryHandle` is unknown.
  SecurityException | if user is not granted access for the given library handle

## ◆ lookupSymbol()

long com.jogamp.common.os.DynamicLinker.lookupSymbol | ( | long | libraryHandle,
|  | String | symbolName
| ) |  | throws SecurityException, IllegalArgumentException

Security checks are implicit by previous call of `openLibraryLocal(String, boolean)` or `openLibraryGlobal(String, boolean)` retrieving the `librarHandle`.

Parameters

  libraryHandle | a library handle previously retrieved via `openLibraryLocal(String, boolean)` or `openLibraryGlobal(String, boolean)`.
  symbolName | global symbol name to lookup up system wide.

Returns
  the library handle, maybe 0 if not found.

Exceptions

  IllegalArgumentException | in case case `libraryHandle` is unknown.
  SecurityException | if user is not granted access for the given library handle

Here is the caller graph for this function:

## ◆ lookupSymbolGlobal()

long com.jogamp.common.os.DynamicLinker.lookupSymbolGlobal | ( | String | symbolName | ) | throws SecurityException

If a `SecurityManager` is installed, user needs link permissions for all libraries, i.e.

for `new RuntimePermission("loadLibrary.*");`!

Parameters

  symbolName | global symbol name to lookup up system wide.

Returns
  the library handle, maybe 0 if not found.

Exceptions

  SecurityException | if user is not granted access for all libraries.

Here is the caller graph for this function:

## ◆ openLibraryGlobal()

long com.jogamp.common.os.DynamicLinker.openLibraryGlobal | ( | LibPath | libpath,
|  | boolean | debug
| ) |  | throws SecurityException

If a `SecurityManager` is installed, user needs link permissions for the named library.

Opens the named library, allowing system wide access for other users.

Parameters

  libpath | the LibPath for the library to open
  debug | set to true to enable debugging

Returns
  the library handle, maybe 0 if not found.

Exceptions

  SecurityException | if user is not granted access for the named library.

Here is the caller graph for this function:

## ◆ openLibraryLocal()

long com.jogamp.common.os.DynamicLinker.openLibraryLocal | ( | LibPath | libpath,
|  | boolean | debug
| ) |  | throws SecurityException

If a `SecurityManager` is installed, user needs link permissions for the named library.

Opens the named library, restricting access to this process.

Parameters

  libpath | the LibPath for the library to open
  debug | set to true to enable debugging

Returns
  the library handle, maybe 0 if not found.

Exceptions

  SecurityException | if user is not granted access for the named library.

Here is the caller graph for this function:

## ◆ releaseAllLinkPermission()

void com.jogamp.common.os.DynamicLinker.releaseAllLinkPermission | ( |  | ) | throws SecurityException

Exceptions

  SecurityException | if user is not granted global access

Here is the caller graph for this function:

## Member Data Documentation

## ◆ DEBUG

final boolean com.jogamp.common.os.DynamicLinker.DEBUG = NativeLibrary.DEBUG

static

Definition at line 35 of file DynamicLinker.java.

## ◆ DEBUG_LOOKUP

final boolean com.jogamp.common.os.DynamicLinker.DEBUG_LOOKUP = NativeLibrary.DEBUG_LOOKUP

static

Definition at line 36 of file DynamicLinker.java.

The documentation for this interface was generated from the following file:

- src/java/com/jogamp/common/os/DynamicLinker.java