diff options
author | Sven Gothel <[email protected]> | 2013-06-20 20:09:43 +0200 |
---|---|---|
committer | Sven Gothel <[email protected]> | 2013-06-20 20:09:43 +0200 |
commit | 12b3084ecc9da5b768fb7c9a9180d54b3d24ee43 (patch) | |
tree | 5d44696c07f6a14d72024b44bb214bbe2b18e939 /make/joal-alcabstract-CustomJavaCode.java | |
parent | 55b5449ce106164e7f47b827cbe03a7831de9942 (diff) |
Security: Tighten DynamicLinker*, NativeLibrary and DynamicLibraryBundle access.
Diffstat (limited to 'make/joal-alcabstract-CustomJavaCode.java')
-rwxr-xr-x | make/joal-alcabstract-CustomJavaCode.java | 14 |
1 files changed, 9 insertions, 5 deletions
diff --git a/make/joal-alcabstract-CustomJavaCode.java b/make/joal-alcabstract-CustomJavaCode.java index 3420cc2..debadad 100755 --- a/make/joal-alcabstract-CustomJavaCode.java +++ b/make/joal-alcabstract-CustomJavaCode.java @@ -1,11 +1,15 @@ private static final ALCProcAddressTable alcProcAddressTable; static { - alcProcAddressTable = new ALCProcAddressTable(); - if(null==alcProcAddressTable) { - throw new RuntimeException("Couldn't instantiate ALCProcAddressTable"); - } - alcProcAddressTable.reset(ALImpl.alDynamicLookupHelper); + alcProcAddressTable = AccessController.doPrivileged(new PrivilegedAction<ALCProcAddressTable>() { + public ALCProcAddressTable run() { + final ALCProcAddressTable alcProcAddressTable = new ALCProcAddressTable(); + if(null==alcProcAddressTable) { + throw new RuntimeException("Couldn't instantiate ALCProcAddressTable"); + } + alcProcAddressTable.reset(ALImpl.alDynamicLookupHelper); + return alcProcAddressTable; + } } ); } public static ALCProcAddressTable getALCProcAddressTable() { return alcProcAddressTable; } |