From 12feaa7d3b1544098f684d851e3caff1ec88cbc8 Mon Sep 17 00:00:00 2001 From: Sven Gothel Date: Fri, 30 Jan 2015 21:09:17 +0100 Subject: Refine Native Library Code: Bulk Permissions, Cleanup DynamicLinker impl. - and fix Android AArch64 BionicDynamicLinker (Bug 1122) - Bulk Permissions ProcAddressTable.reset(..) performs address lookup in one block. Now claiming all permissions upfront once, and releasing them afterwards. - Cleanup DynamicLinker impl. Proper top-down impl. of DynamicLinkerImpl, handling all security code and validations. - Fix Android AArch64 BionicDynamicLinker (Bug 1122) Dalvik uses diff RTLD_* defines for AArch64! --- src/java/jogamp/common/os/MacOSXDynamicLinkerImpl.java | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) (limited to 'src/java/jogamp/common/os/MacOSXDynamicLinkerImpl.java') diff --git a/src/java/jogamp/common/os/MacOSXDynamicLinkerImpl.java b/src/java/jogamp/common/os/MacOSXDynamicLinkerImpl.java index 0fdfc8b..d724f9a 100644 --- a/src/java/jogamp/common/os/MacOSXDynamicLinkerImpl.java +++ b/src/java/jogamp/common/os/MacOSXDynamicLinkerImpl.java @@ -42,18 +42,18 @@ public final class MacOSXDynamicLinkerImpl extends UnixDynamicLinkerImpl { private static final int RTLD_GLOBAL = 0x00008; @Override - public final long openLibraryLocal(final String pathname, final boolean debug) throws SecurityException { - return this.openLibraryImpl(pathname, RTLD_LAZY | RTLD_LOCAL, debug); + protected final long openLibraryLocalImpl(final String pathname) throws SecurityException { + return dlopen(pathname, RTLD_LAZY | RTLD_LOCAL); } @Override - public final long openLibraryGlobal(final String pathname, final boolean debug) throws SecurityException { - return this.openLibraryImpl(pathname, RTLD_LAZY | RTLD_GLOBAL, debug); + protected final long openLibraryGlobalImpl(final String pathname) throws SecurityException { + return dlopen(pathname, RTLD_LAZY | RTLD_GLOBAL); } @Override - public final long lookupSymbolGlobal(final String symbolName) throws SecurityException { - return this.lookupSymbolGlobalImpl(RTLD_DEFAULT, symbolName); + protected final long lookupSymbolGlobalImpl(final String symbolName) throws SecurityException { + return dlsym(RTLD_DEFAULT, symbolName); } } -- cgit v1.2.3