Skip to content
The Jenkins Controller is preparing for shutdown. No new builds can be started.
Success

Changes

Summary

  1. Fix Bug 757: Regression of URL to URI conversion (Encoded path not (details)
  2. Fix URLCompositionTest for Bug 757: If file, replace '/' in expected (details)
  3. Fix URLCompositionTest for Bug 757 (2): If file, replace '/' in expected (details)
  4. Fix URLCompositionTest for Bug 757 (3): If file, replace '/' in expected (details)
  5. Bug 758: Fix scripts and ant build files to work w/ Java7 (default now) (details)
  6. Security: Tighten DynamicLinker*, NativeLibrary and DynamicLibraryBundle (details)
  7. Security: Gluegen generated native methods w/ 'pass through function (details)
  8. DynamicLinker*: Proper Override notation (details)
  9. DynamicLookupHelper: Add secure isFunctionAvailable(..); NativeLibrary: (details)
  10. ProcAddressTable: Make all handles package private, use local (details)
  11. Script: Add adb logcat script (details)
  12. Scripts: Windows java run: Use 6u45 (details)
  13. Scripts Windows / JOGAMP_JAR_CODEBASE: No double quotes, otherwise they (details)
  14. Fix regression of f69831574d4927d03d40c330d0b047d8c89622a4: Use (details)
  15. Security: Tighten DynamicLinker*, NativeLibrary and DynamicLibraryBundle (details)
  16. Scripts: Use a local hostname for JOGAMP_JAR_CODEBASE for security (details)
  17. scripts runtests .. (details)
  18. ProcAddressTable: If using a SecurityManager 'checkAllLinkPermission()' (details)
  19. ProcAddressTable: Fix regressions: getField(..) -> getDeclaredField(..), (details)
  20. Fix jogamp-androidtask.xml's keytool and jarsigner options for Java6 / (details)
  21. Fix commit eb842815498f5926828b49c48fffce22fc9586a2: Adding missing (details)
  22. Scripts: Build macosx w/ java7 targeting java6 in build-macosx. (details)
  23. SingletonInstance: Add stats about time/attempts, subtract real-time (details)
  24. Fix commit e46b51f75b550bc0faf70ae18f526d466d8180f3 (details)
  25. Fix SingletonInstanceServerSocket.kill(): Needs to mark alive=false in (details)
  26. AbstractBuffer: Generalize 'capacity' calculation, since we may (details)
  27. UnixDynamicLinkerImpl: Unify impl. of openLibraryLocal(..), (details)
  28. Refine commit 5e01e993aeba4e95fc8aa6e75b3e295011e27bbb, skip (details)
  29. TAG RC12 / Android 0914013 (details)
Commit 4376174ad35fdaf76f59430328582e913f468674 by Sven Gothel
Fix Bug 757: Regression of URL to URI conversion (Encoded path not compatible w/ file scheme.

Regression of (Bug 683, Commit b98825eb7cfb61aead4a7dff57471cd2d2c26823).

The URI encoded path cannot be read by File I/O (if file scheme), since the latter
requests an UTF8/16 name, not an URI encoded name (i.e. %20 for space).

The encoded URL is produced if calling 'uri.toURL()' and hence
the new 'IOUtil.toURL(URI)' provides a custom conversion recovering the UTF name via 'new File(uri).getPath()'.

Tested w/
  - synthetic URI/URL coposition (unit test)
  - manual w/ moving 'build' to 'build öä lala' for gluegen, joal and jogl.

+++

Misc.:

- 'URI JarUtil.getURIDirname(URI)'  -> 'URI IOUtil.getDirname(URI)'

++
The file was modifiedsrc/java/com/jogamp/common/util/IOUtil.java (diff)
The file was modifiedsrc/junit/com/jogamp/common/net/URLCompositionTest.java (diff)
The file was modifiedsrc/junit/com/jogamp/common/util/TestTempJarCache.java (diff)
The file was modifiedmake/scripts/runtest.sh (diff)
The file was modifiedsrc/java/com/jogamp/common/util/cache/TempJarCache.java (diff)
The file was modifiedsrc/junit/com/jogamp/common/util/TestJarUtil.java (diff)
The file was modifiedsrc/java/com/jogamp/common/util/JarUtil.java (diff)
The file was modifiedsrc/java/com/jogamp/common/os/Platform.java (diff)
The file was modifiedsrc/java/com/jogamp/common/jvm/JNILibLoaderBase.java (diff)
Commit b97666cf0a6d49c593d565d0eba8af92bcf5eb94 by Sven Gothel
Fix URLCompositionTest for Bug 757: If file, replace '/' in expected result w/ OS specific File.separatorChar
The file was modifiedsrc/junit/com/jogamp/common/net/URLCompositionTest.java (diff)
Commit 4d35974c6b87692bc1c3f6e6b7bb674a7a478053 by Sven Gothel
Fix URLCompositionTest for Bug 757 (2): If file, replace '/' in expected result w/ OS specific File.separatorChar

The JAR entry shall stay untouched, i.e. separator is platform independent '/'.
The file was modifiedsrc/junit/com/jogamp/common/net/URLCompositionTest.java (diff)
Commit 6c30050195849cd385422fc6e65230c16b818215 by Sven Gothel
Fix URLCompositionTest for Bug 757 (3): If file, replace '/' in expected result w/ OS specific File.separatorChar

Take 3 (duh!): JRE impl. varies .. i.e. plain URL w/o JAR path differs from URL w/ JAR scheme on Windows .. well.
The file was modifiedsrc/junit/com/jogamp/common/net/URLCompositionTest.java (diff)
Commit 6704fab767307b89fa21250c20f1dab56323ffac by Sven Gothel
Bug 758: Fix scripts and ant build files to work w/ Java7 (default now) producing Java6 bytecode ; Apply JAR Manifest tags: Sealed, Permissions and Codebase
The file was modifiedmake/jogamp-androidtasks.xml (diff)
The file was modifiedmake/scripts/make.gluegen.all.linux-armv6.sh (diff)
The file was addedmake/Manifest-rt-natives
The file was modifiedmake/scripts/make.gluegen.all.android-armv7-cross.sh (diff)
The file was modifiedmake/scripts/make.gluegen.all.win64.bat (diff)
The file was removedmake/scripts/setenv-build-jogl-x86_64.java7.sh
The file was modifiedmake/Manifest-rt (diff)
The file was modifiedmake/scripts/make.gluegen.all.linux-x86.sh (diff)
The file was removedmake/scripts/make.gluegen.all.macosx-java7_target16.sh
The file was modifiedmake/jogamp-env.xml (diff)
The file was modifiedmake/scripts/make.gluegen.all.android-armv6-cross.sh (diff)
The file was modifiedmake/scripts/make.gluegen.all.linux-armv6hf-cross.sh (diff)
The file was modifiedmake/scripts/make.gluegen.all.linux-armv6hf.sh (diff)
The file was modifiedmake/gluegen-properties.xml (diff)
The file was modifiedmake/scripts/make.gluegen.all.linux-armv6-cross.sh (diff)
The file was modifiedmake/scripts/runtest.sh (diff)
The file was modifiedmake/scripts/setenv-build-jogl-x86.sh (diff)
The file was modifiedmake/scripts/setenv-build-jogl-x86_64.sh (diff)
The file was modifiedmake/scripts/make.gluegen.all.macosx.sh (diff)
The file was modifiedmake/Manifest-android-launcher (diff)
The file was modifiedmake/Manifest-rt-android (diff)
The file was modifiedmake/scripts/make.gluegen.all.linux-x86_64.sh (diff)
The file was modifiedmake/Manifest-rt.cdc (diff)
The file was modifiedmake/build.xml (diff)
The file was removedmake/scripts/make.gluegen.all.linux-x86_64.java7.sh
The file was modifiedmake/scripts/make.gluegen.all.win32.bat (diff)
The file was modifiedmake/scripts/make.gluegen.all.macosx-java7.sh (diff)
Commit 23341a2df2d2ea36784a16fa1db8bc7385351a12 by Sven Gothel
Security: Tighten DynamicLinker*, NativeLibrary and DynamicLibraryBundle access.
The file was modifiedsrc/java/com/jogamp/common/os/DynamicLibraryBundle.java (diff)
The file was modifiedsrc/java/jogamp/common/os/WindowsDynamicLinkerImpl.java (diff)
The file was modifiedsrc/java/jogamp/common/os/BionicDynamicLinkerImpl.java (diff)
The file was modifiedsrc/java/jogamp/common/os/UnixDynamicLinkerImpl.java (diff)
The file was modifiedsrc/java/com/jogamp/common/os/NativeLibrary.java (diff)
The file was modifiedsrc/java/jogamp/common/os/MacOSXDynamicLinkerImpl.java (diff)
Commit 2d8e25398e929f553c4524e9c57f083d90ba4e08 by Sven Gothel
Security: Gluegen generated native methods w/ 'pass through function pointer' _must_ be private!
The file was modifiedsrc/java/com/jogamp/gluegen/procaddress/ProcAddressEmitter.java (diff)
Commit 9a0d4c81e8c38f454d7bb5cde433a32194d410fb by Sven Gothel
DynamicLinker*: Proper Override notation
The file was modifiedsrc/java/jogamp/common/os/WindowsDynamicLinkerImpl.java (diff)
The file was modifiedsrc/java/jogamp/common/os/MacOSXDynamicLinkerImpl.java (diff)
The file was modifiedsrc/java/jogamp/common/os/UnixDynamicLinkerImpl.java (diff)
The file was modifiedsrc/java/jogamp/common/os/BionicDynamicLinkerImpl.java (diff)
Commit 8cabcd2de8b46c42dffcaaf46ccc2dc4d092ebba by Sven Gothel
DynamicLookupHelper: Add secure isFunctionAvailable(..); NativeLibrary: Add TODO comments, re protected lookup functions.
The file was modifiedsrc/java/com/jogamp/common/os/DynamicLibraryBundle.java (diff)
The file was modifiedsrc/java/com/jogamp/common/os/NativeLibrary.java (diff)
The file was modifiedsrc/java/com/jogamp/common/os/DynamicLookupHelper.java (diff)
Commit f69831574d4927d03d40c330d0b047d8c89622a4 by Sven Gothel
ProcAddressTable: Make all handles package private, use local PROCADDRESS_VAR_PREFIX instance, add checkAllPermissions() for reset() and initEntry(..)

- Generated ProcAddressTable's function handles are all package private
- Generated ProcAddressTable's visibility can be set via 'AccessControl' config, default: public.
- ProcAddressTable's reset() and initEntry(..) perform checkAllPermissions() 1st.
The file was modifiedsrc/java/com/jogamp/gluegen/JavaEmitter.java (diff)
The file was modifiedsrc/java/com/jogamp/gluegen/runtime/ProcAddressTable.java (diff)
The file was modifiedsrc/java/com/jogamp/gluegen/procaddress/ProcAddressEmitter.java (diff)
Commit b5fe100798071110119993be89ff66e313f32b96 by Sven Gothel
Script: Add adb logcat script
The file was addedmake/scripts/adb-logcat.sh
Commit 302a821f0b9bd29e8aa9a1f3ddae1d5ec846d6f6 by Sven Gothel
Scripts: Windows java run: Use 6u45
The file was modifiedmake/scripts/java-win64.bat (diff)
The file was modifiedmake/scripts/java-win32.bat (diff)
Commit 2d811311976077bae9522afe533a140b97e62f8f by Sven Gothel
Scripts Windows / JOGAMP_JAR_CODEBASE: No double quotes, otherwise they would be added to MANIFEST
The file was modifiedmake/scripts/make.gluegen.all.win32.bat (diff)
The file was modifiedmake/scripts/make.gluegen.all.win64.bat (diff)
Commit 19bef683d38f4ce7b0dcb5c516244c6f87504e41 by Sven Gothel
Fix regression of f69831574d4927d03d40c330d0b047d8c89622a4: Use getDeclaredField() and setAccessible(true) due to package private handle fields.
The file was modifiedsrc/java/com/jogamp/gluegen/runtime/ProcAddressTable.java (diff)
Commit eb842815498f5926828b49c48fffce22fc9586a2 by Sven Gothel
Security: Tighten DynamicLinker*, NativeLibrary and DynamicLibraryBundle access (2)

- Completes 23341a2df2d2ea36784a16fa1db8bc7385351a12

- Replace 'DynamicLinker' interface w/ well documented one

- All DynamicLinker methods are now considered secure, i.e.:
  - open/lookup and close utilize reference counting on handle via a hash map.

  - lookupSymbol(..) and close(..) impl. validate the passed library handle
    whether it's retrieved via open*.
    This is the fast path, not that expensive.

  - lookupSymbolGlobal(..) performs
    Check acccess of 'new RuntimePermission("loadLibrary.*")' if SecurityManager is installed.
    This is the slow path.

- DynamicLibraryBundleInfo now reflects the security requirements,
  i.e. whether priviledged access is needed.
The file was modifiedsrc/java/com/jogamp/common/os/DynamicLibraryBundleInfo.java (diff)
The file was modifiedsrc/junit/com/jogamp/junit/sec/TestSecIOUtil01.java (diff)
The file was modifiedsrc/java/jogamp/common/os/BionicDynamicLinkerImpl.java (diff)
The file was modifiedsrc/java/jogamp/common/os/MacOSXDynamicLinkerImpl.java (diff)
The file was modifiedsrc/java/com/jogamp/common/os/DynamicLibraryBundle.java (diff)
The file was modifiedsrc/java/com/jogamp/common/os/DynamicLinker.java (diff)
The file was modifiedsrc/java/jogamp/common/os/UnixDynamicLinkerImpl.java (diff)
The file was modifiedsrc/java/jogamp/common/os/WindowsDynamicLinkerImpl.java (diff)
The file was modifiedsrc/java/com/jogamp/common/os/NativeLibrary.java (diff)
The file was modifiedsrc/java/com/jogamp/common/util/SecurityUtil.java (diff)
Commit b82f1b112a57fe2f36ba505fd837e3c6fba5fefa by Sven Gothel
Scripts: Use a local hostname for JOGAMP_JAR_CODEBASE for security testing
The file was modifiedmake/scripts/make.gluegen.all.macosx.sh (diff)
The file was modifiedmake/scripts/java-win64.bat (diff)
The file was modifiedmake/scripts/make.gluegen.all.android-armv7-cross.sh (diff)
The file was modifiedmake/scripts/make.gluegen.all.linux-armv6.sh (diff)
The file was modifiedmake/scripts/make.gluegen.all.linux-armv6-cross.sh (diff)
The file was modifiedmake/scripts/make.gluegen.all.linux-armv6hf-cross.sh (diff)
The file was modifiedmake/scripts/java-win32.bat (diff)
The file was modifiedmake/scripts/make.gluegen.all.linux-x86_64.sh (diff)
The file was modifiedmake/scripts/make.gluegen.all.win32.bat (diff)
The file was modifiedmake/scripts/make.gluegen.all.android-armv6-cross.sh (diff)
The file was modifiedmake/scripts/make.gluegen.all.linux-x86.sh (diff)
The file was modifiedmake/scripts/make.gluegen.all.win64.bat (diff)
The file was modifiedmake/scripts/make.gluegen.all.linux-armv6hf.sh (diff)
The file was modifiedmake/scripts/make.gluegen.all.macosx-java7.sh (diff)
The file was modifiedmake/scripts/runtest.sh (diff)
Commit f55074132e0369cb09a6fc4bda69ab936bd820fa by Sven Gothel
ProcAddressTable: If using a SecurityManager 'checkAllLinkPermission()' instead of 'checkAllPermissions' if accessing the cached function handles.
The file was modifiedsrc/java/com/jogamp/gluegen/runtime/ProcAddressTable.java (diff)
Commit b375bf84b56b391aa014154de2e7129de9af909a by Sven Gothel
ProcAddressTable: Fix regressions: getField(..) -> getDeclaredField(..), incl. access check; Utilize 'AccessibleObject.setAccessible(Field[], true)' for performance.
The file was modifiedsrc/java/com/jogamp/gluegen/runtime/ProcAddressTable.java (diff)
Commit 26bd0f9aa06c3294198f961fadff04ecd8e93cdc by Sven Gothel
Fix jogamp-androidtask.xml's keytool and jarsigner options for Java6 / Android compatibility w/ Java7 toolchain.
The file was modifiedmake/jogamp-androidtasks.xml (diff)
Commit a7545f4fda73c215cff0da7256417bc1d1bd450b by Sven Gothel
Fix commit eb842815498f5926828b49c48fffce22fc9586a2: Adding missing files
The file was addedsrc/java/jogamp/common/os/DynamicLinkerImpl.java
The file was addedsrc/java/jogamp/common/os/PosixDynamicLinkerImpl.java
Commit c5fcd2215ed1c7634d8976ad914506c3ec674a2d by Sven Gothel
Scripts: Build macosx w/ java7 targeting java6 in build-macosx.
The file was modifiedmake/scripts/make.gluegen.all.macosx.sh (diff)
Commit e46b51f75b550bc0faf70ae18f526d466d8180f3 by Sven Gothel
SingletonInstance: Add stats about time/attempts, subtract real-time delta from remaining amount.
The file was modifiedsrc/java/com/jogamp/common/util/locks/SingletonInstance.java (diff)
Commit 0cce9a0eb5ab3ca25531c8fb8a9ef8be5c758487 by Sven Gothel
Fix commit e46b51f75b550bc0faf70ae18f526d466d8180f3

Funny .. subclasses didn't compile in test compilation locally.
The file was modifiedsrc/java/com/jogamp/common/util/locks/SingletonInstance.java (diff)
Commit 6ff3fe730671b0bfed61b56e1179aaecd39f53a5 by Sven Gothel
Fix SingletonInstanceServerSocket.kill(): Needs to mark alive=false in case of JVM shutdown!
The file was modifiedsrc/java/jogamp/common/util/locks/SingletonInstanceServerSocket.java (diff)
Commit 5e01e993aeba4e95fc8aa6e75b3e295011e27bbb by Sven Gothel
AbstractBuffer: Generalize 'capacity' calculation, since we may encounter a byte-buffer w/ given elementSize semantics
The file was modifiedsrc/java/com/jogamp/common/nio/AbstractBuffer.java (diff)
Commit 72f60a534db7c0b731d4dca83481679817ad7574 by Sven Gothel
UnixDynamicLinkerImpl: Unify impl. of openLibraryLocal(..), openLibraryGlobal(..) and lookupSymbolGlobal(..) - removing duplicate code.
The file was modifiedsrc/java/jogamp/common/os/PosixDynamicLinkerImpl.java (diff)
The file was modifiedsrc/java/jogamp/common/os/MacOSXDynamicLinkerImpl.java (diff)
The file was modifiedsrc/java/jogamp/common/os/BionicDynamicLinkerImpl.java (diff)
The file was modifiedsrc/java/jogamp/common/os/UnixDynamicLinkerImpl.java (diff)
Commit c28d5c8d0d83670a548671a1d0da55e3447ea0c7 by Sven Gothel
Refine commit 5e01e993aeba4e95fc8aa6e75b3e295011e27bbb, skip Buffers.sizeOfBufferElem(..) call.
The file was modifiedsrc/java/com/jogamp/common/nio/AbstractBuffer.java (diff)
The file was modifiedsrc/java/com/jogamp/common/nio/PointerBuffer.java (diff)
Commit e946fe33ab21d907e587402572effac4d9aba000 by Sven Gothel
TAG RC12 / Android 0914013
The file was modifiedmake/jogamp-env.xml (diff)