kohlschutter / junixsocket

Unix Domain Sockets in Java 7 and newer (AF_UNIX), AF_TIPC, AF_VSOCK, and more
Apache License 2.0
438 stars 114 forks source link

Windows: Temporary DLL file is not deleted upon JVM shutdown #160

Closed sutr90 closed 2 months ago

sutr90 commented 2 months ago

Describe the bug Native DLL is not deleted on JVM shutdown.

This means there is an evergrowing list of DLL files, like this:

To Reproduce Steps to reproduce the behavior:

  1. Create dedicated directory C:/tmp
  2. Run java -Dorg.newsclub.net.unix.library.tmpdir=C:/tmp -jar junixsocket-selftest-2.10.0-jar-with-dependencies.jar
    • the tmpdir override is just so the DLL is in some easily accessible location

Expected behavior There are not DLL files left over in the C:/tmp directory

Output/Screenshots n/a

Please make sure to test the problem still occurs on the latest version of junixsocket

Selftest output This program determines whether junixsocket is supported on the current platform. The final line should say whether the selftest passed or failed. If the selftest failed, please visit https://github.com/kohlschutter/junixsocket/issues and file a new bug report with the output below. junixsocket selftest version 2.10.0 Build properties: project.version: 2.10.0 git.build.version: 2.10.0 git.commit.id.abbrev: 59389b8 git.commit.id.describe: junixsocket-2.10.0 git.commit.id.full: 59389b8e04266581ac637ef52b15ec68cc164f2e git.commit.time: 2024-07-08T18:06:32+02:00 git.dirty: false Native architecture: [amd64-Windows11, amd64-Windows10] Virtual threads support enabled: false junixsocket-mysql: The following class requirements are not met: [com.mysql.cj.protocol.SocketFactory, com.mysql.jdbc.SocketFactory] System properties: com.kohlschutter.selftest: org.newsclub.net.unix.selftest.Selftest file.encoding: Cp1252 file.separator: \ java.class.path: junixsocket-selftest-2.10.0-jar-with-dependencies.jar java.class.version: 61.0 java.home: C:\Program Files\Java\jdk-17 java.io.tmpdir: C:\Users\XXX\AppData\Local\Temp\ java.library.path: C:\Program Files\Java\jdk-17\bin;C:\WINDOWS\Sun\Java\bin;C:\WINDOWS\system32;C:\WINDOWS;C:\Users\XXX\bin;C:\Program Files\Git\mingw64\bin;C:\Program Files\Git\usr\local\bin;C:\Program Files\Git\usr\bin;C:\Program Files\Git\usr\bin;C:\Program Files\Git\mingw64\bin;C:\Program Files\Git\usr\bin;C:\Users\XXX\bin;C:\WINDOWS\system32;C:\WINDOWS;C:\WINDOWS\System32\Wbem;C:\WINDOWS\System32\WindowsPowerShell\v1.0;C:\WINDOWS\System32\OpenSSH;C:\Program Files\dotnet;C:\Program Files\WireGuard;C:\Users\XXX\AppData\Roaming\nvm;C:\Program Files\nodejs;C:\Program Files\WinMerge;C:\ProgramData\chocolatey\bin;C:\Program Files\PuTTY;C:\Program Files\Rancher Desktop\resources\resources\win32\bin;C:\Program Files\Rancher Desktop\resources\resources\linux\bin;C:\Program Files\Git\cmd;C:\Users\XXX\AppData\Local\Microsoft\WindowsApps;C:\Users\XXX\apps\apache-maven-3.8.8\bin;C:\Users\XXX\AppData\Roaming\nvm;C:\Program Files\nodejs;C:\Program Files\InstallBuilder Enterprise 23.11.0\bin;C:\Program Files\Java\jdk-17\bin;C:\gradle\gradle-8.7\bin;C:\Users\XXX\AppData\Local\Box\Box Edit;C:\Program Files\Git\usr\bin\vendor_perl;C:\Program Files\Git\usr\bin\core_perl;C:\Users\XXX\apps;. java.runtime.name: Java(TM) SE Runtime Environment java.runtime.version: 17.0.9+11-LTS-201 java.specification.name: Java Platform API Specification java.specification.vendor: Oracle Corporation java.specification.version: 17 java.vendor: Oracle Corporation java.vendor.url: https://java.oracle.com/ java.vendor.url.bug: https://bugreport.java.com/bugreport/ java.version: 17.0.9 java.version.date: 2023-10-17 java.vm.compressedOopsMode: Zero based java.vm.info: mixed mode, sharing java.vm.name: Java HotSpot(TM) 64-Bit Server VM java.vm.specification.name: Java Virtual Machine Specification java.vm.specification.vendor: Oracle Corporation java.vm.specification.version: 17 java.vm.vendor: Oracle Corporation java.vm.version: 17.0.9+11-LTS-201 jdk.debug: release line.separator: \r\n native.encoding: Cp1252 org.newsclub.net.unix.library.tmpdir: C:/tmp os.arch: amd64 os.name: Windows 11 os.version: 10.0 path.separator: ; sun.arch.data.model: 64 sun.boot.library.path: C:\Program Files\Java\jdk-17\bin sun.cpu.endian: little sun.cpu.isalist: amd64 sun.io.unicode.encoding: UnicodeLittle sun.java.command: junixsocket-selftest-2.10.0-jar-with-dependencies.jar sun.java.launcher: SUN_STANDARD sun.jnu.encoding: Cp1252 sun.management.compiler: HotSpot 64-Bit Tiered Compilers sun.os.patch.level: sun.stderr.encoding: cp437 sun.stdout.encoding: cp437 user.country: US user.country.format: CZ user.dir: C:\Users\XXX\Downloads user.home: C:\Users\XXX user.language: en user.language.format: cs user.name: XXX user.script: user.variant: AFSocket.isSupported: true AFUNIXSocket.isSupported: true Testing "junixsocket-common"... PeerCredentialsTest.testSocketsSameProcess()... Supported credentials: pid Unsupported credentials: uid gid additional_gids uuid Testing "junixsocket-common"... SocketTest.testMain()... org.newsclub.net.unix.AFUNIXSocket.isSupported(): true CAPABILITY_PEER_CREDENTIALS: true CAPABILITY_ANCILLARY_MESSAGES: false CAPABILITY_FILE_DESCRIPTORS: false CAPABILITY_ABSTRACT_NAMESPACE: false CAPABILITY_UNIX_DATAGRAMS: false CAPABILITY_NATIVE_SOCKETPAIR: false CAPABILITY_FD_AS_REDIRECT: false CAPABILITY_TIPC: false CAPABILITY_UNIX_DOMAIN: true CAPABILITY_VSOCK: false CAPABILITY_VSOCK_DGRAM: false CAPABILITY_ZERO_LENGTH_SEND: true CAPABILITY_UNSAFE: false CAPABILITY_LARGE_PORTS: true CAPABILITY_DARWIN: false Starting mini selftest... Using temporary address: org.newsclub.net.unix.AFUNIXSocketAddress[path=C:\Users\XXX\AppData\Local\Temp\jux17030189356935324906.sock] Server accepted client connection Data exchange succeeded mini selftest passed Testing "junixsocket-common"... done . '-- JUnit Jupiter [OK] +-- AFTIPCSocketAddressTest [OK] | +-- testParseFail() [OK] | +-- testSchemesAvailable() [OK] | +-- testGeneric() [OK] | +-- testSocatString() [OK] | +-- testSocketURI() [OK] | +-- testServiceRangeURI() [OK] | '-- testServiceURI() [OK] +-- AFUNIXSocketAddressTest [OK] | +-- testSchemesAvailable() [OK] | +-- testCraftDeserialization() [OK] | +-- testSocatString() [OK] | +-- testURITemplateWithPortNumber() [OK] | +-- testSerialize() [OK] | +-- testURITemplate() [OK] | +-- testHttpUnix() [OK] | +-- testUnixScheme() [OK] | +-- testFileScheme() [OK] | +-- testAbstractNamespace() [OK] | '-- testParseURIandBack() [OK] +-- AbstractNamespaceTest [S] Missing capabilities: [CAPABILITY_ABSTRACT_NAMESPACE] +-- AcceptTimeoutTest [OK] | +-- testCatchTimeout() [OK] | +-- testTimeoutAfterDelay() [OK] | +-- testPendingAcceptCloseServerSocketDelayed() [OK] | +-- testPendingAcceptCloseServerSocketImmediately() [OK] | '-- testAcceptWithoutBindToService() [OK] +-- AvailableTest [OK] | +-- testAvailableAtClient() [OK] | '-- testAvailableAtServer() [OK] +-- BuildPropertiesTest [OK] | +-- testNotEmpty() [OK] | +-- testResolved() [OK] | '-- testHasProperties() [OK] +-- BufferOverflowTest [OK] | +-- writeOverflow() [OK] | +-- readUpTo() [OK] | '-- readOutOfBounds() [OK] +-- CancelAcceptTest [OK] | '-- issue6test1() [OK] +-- DatagramSocketTest [S] Missing capabilities: [CAPABILITY_UNIX_DATAGRAMS] +-- EndOfFileTest [OK] | +-- clientWriteToSocketClosedByClient() [OK] | +-- clientWriteToSocketClosedByServer() [OK] | +-- bidirectionalSanity() [OK] | +-- serverWriteToSocketClosedByClient() [OK] | +-- serverWriteToSocketClosedByServer() [OK] | +-- clientReadEof() [OK] | '-- serverReadEof() [OK] +-- FileDescriptorCastTest [OK] | +-- testInvalidFileDescriptor() [OK] | +-- testUnsafeCast() [S] Missing capabilities: [CAPABILITY_UNSAFE] | +-- testCastToServerSocketIsSameType() [OK] | +-- testPipe() [OK] | +-- testCastGeneric() [OK] | +-- testAvailableTypes() [OK] | +-- testCastAsInteger() [OK] | +-- testStdout() [OK] | +-- testRandomAccessFile() [OK] | '-- testCastGenericDuplicating() [OK] +-- FileDescriptorCastTest [OK] | +-- testUnconnectedServerAsSocket() [OK] | +-- testSocketPairNative() [S] Missing capabilities: [CAPABILITY_NATIVE_SOCKETPAIR] | +-- testDatagramFileChannel() [S] Missing capabilities: [CAPABILITY_UNIX_DATAGRAMS] | +-- testSocketPair() [S] Missing capabilities: [CAPABILITY_NATIVE_SOCKETPAIR] | +-- testDatagramSocket() [S] Missing capabilities: [CAPABILITY_UNIX_DATAGRAMS] | +-- testSocketPorts() [OK] | +-- testDatagramPorts() [S] Missing capabilities: [CAPABILITY_UNIX_DATAGRAMS] | +-- testForkedVMRedirectStdin() [S] Missing capabilities: [CAPABILITY_FD_AS_REDIRECT] | '-- testServer() [OK] +-- FileDescriptorsTest [S] Missing capabilities: [CAPABILITY_FILE_DESCRIPTORS] +-- InetAddressTest [OK] | +-- testFromToBytes() [OK] | +-- testHostnameString() [OK] | +-- testIsLoopbackAddress() [OK] | '-- testHostnameStringEndsWithJunixSocket() [OK] +-- InterruptTest [OK] | +-- testInterruptSocketChannelVirtualThread() [A] Virtual Threads are not supported by this JVM | '-- testInterruptSocketVirtualThread() [A] Virtual Threads are not supported by this JVM +-- InterruptIssue158Test [OK] | +-- testClientInterruption(boolean, IOSupplier, IOConsumer, Class, Predicate) [OK] | | +-- variant 1 [OK] | | +-- variant 2 [OK] | | +-- variant 3 [OK] | | +-- variant 4 [OK] | | +-- variant 5 [OK] | | '-- variant 6 [OK] | +-- testServerInterruption(IOSupplier, IOConsumer, Class, Predicate) [OK] | | +-- variant 1 [OK] | | '-- variant 2 [OK] | +-- testClientInterruptionWithDelay(boolean, IOSupplier, IOConsumer, Class, Predicat... [OK] | | +-- variant 1 [OK] | | +-- variant 2 [OK] | | +-- variant 3 [OK] | | +-- variant 4 [OK] | | +-- variant 5 [OK] | | '-- variant 6 [OK] | '-- testServerInterruptionWithDelay(IOSupplier, IOConsumer, Class, Predicate) [OK] | +-- variant 1 [OK] | '-- variant 2 [OK] +-- MassiveParallelTest [OK] | '-- testAcceptConnect() [A] Virtual Threads are not supported by this JVM +-- PeerCredentialsTest [OK] | +-- testSocketsSameProcess() [OK] | '-- testDatagramSocket() [S] Missing capabilities: [CAPABILITY_UNIX_DATAGRAMS] +-- PipeTest [OK] | +-- testPipe() [OK] | '-- testPipeRecvHang() [OK] +-- ReadWriteTest [OK] | +-- testReceiveWithByteArraySendByteForByte() [OK] | +-- testReceiveWithByteArraySendWithByteArray() [OK] | +-- testReceiveDataByteForByteSendByteForByte() [OK] | '-- testReceiveDataByteForByteSendWithByteArray() [OK] +-- SelectorTest [OK] | +-- testNonBlockingAccept() [OK] | +-- testClosedSelectorSelect() [OK] | +-- testClosedSelectorWakeup() [OK] | +-- testCancelSelect() [OK] | +-- testConnectionCloseImmediateClientDisconnect() [OK] | +-- testConnectionCloseImmediateClientDisconnectKeepLooping() [OK] | +-- testConnectionCloseEventualClientDisconnectKeepLooping() [OK] | '-- testConnectionCloseEventualClientDisconnect() [OK] +-- ServerSocketCloseTest [OK] | +-- testUnblockAcceptsWithSoTimeout() [OK] | '-- testUnblockAcceptsWithoutSoTimeout() [OK] +-- ServerSocketTest [OK] | +-- testUnboundServerSocket() [OK] | +-- testBindBadArguments() [OK] | +-- testCloseable() [OK] | '-- testSupported() [OK] +-- SocketAddressTest [OK] | +-- testInetAddress() [OK] | +-- testPath() [OK] | +-- testPort() [OK] | +-- testEmptyAddress() [OK] | +-- testLegacyConstructor() [OK] | +-- testByteConstructor() [OK] | +-- testAbstractNamespace() [OK] | '-- testLargePort() [OK] +-- SocketChannelTest [OK] | +-- testByteBufferWithPositionOffset() [OK] | +-- testDoubleBindAddressReusable() [OK] | +-- testWriteNotConnectedYet() [OK] | +-- testAcceptNotBoundYet() [OK] | +-- testDoubleBindAddressNotReusable() [OK] | +-- testReadNotConnectedYet() [OK] | +-- testNonBlockingConnect() [OK] | +-- testBindNull() [OK] | '-- testUnixDomainProtocolFamily() [OK] +-- SocketFactoryTest [OK] | +-- testReflection() [OK] | +-- testURISchemeCeateSocketWithInvalidHostname() [OK] | +-- testURISchemeCeateSocketWithIllegalArguments() [OK] | +-- testURISchemeCeateSocketThenConnect() [OK] | +-- testURISchemeCeateSocketWithHostnameValidCases() [OK] | +-- testSystemProperty() [OK] | '-- testFactoryArg() [OK] +-- SocketPairTest [OK] | +-- testDatagramPair() [S] Missing capabilities: [CAPABILITY_UNIX_DATAGRAMS] | '-- testSocketPair() [OK] +-- SocketTest [OK] | +-- testConnectBadArguments() [OK] | +-- testBindBadArguments() [OK] | +-- testCloseable() [OK] | +-- testUnconnectedSocket() [OK] | +-- testMain() [OK] | +-- testLoadedLibrary() [OK] | +-- testSupports() [OK] | +-- testVersion() [OK] | +-- testReceivedFileDescriptorsUnconnected() [OK] | '-- testSupported() [OK] +-- SoTimeoutTest [OK] | +-- issue14Fail() [OK] | +-- issue14Pass() [OK] | +-- testSocketTimeoutExceptionRead() [OK] | '-- testSocketTimeoutExceptionWrite() [OK] +-- StandardSocketOptionsTest [OK] | +-- testUnconnectedServerSocketOptions() [OK] | '-- testSocketOptions() [OK] +-- TcpNoDelayTest [OK] | +-- testDefaultImpl() [OK] | '-- testStrictImpl() [OK] +-- ThroughputTest [OK] | +-- testDatagramChannel() [S] Missing capabilities: [CAPABILITY_UNIX_DATAGRAMS] | +-- testDatagramChannelDirect() [S] Missing capabilities: [CAPABILITY_UNIX_DATAGRAMS] | +-- testDatagramChannelNonBlocking() [S] Missing capabilities: [CAPABILITY_UNIX_DATAGRAMS] | +-- testDatagramChannelNonBlockingDirect() [S] Missing capabilities: [CAPABILITY_UNIX_DATAGRAMS] | +-- testDatagramPacket() [S] Missing capabilities: [CAPABILITY_UNIX_DATAGRAMS] | +-- testJEP380() [OK] | +-- testJEP380direct() [OK] | +-- testSocket() [OK] | +-- testSocketChannel() [OK] | '-- testSocketChannelDirectBuffer() [OK] '-- UnixDomainSocketAddressTest [OK] '-- testConvertUnixDomainSocketAddress() [OK] Test run finished after 11511 ms [ 38 containers found ] [ 3 containers skipped ] [ 35 containers started ] [ 0 containers aborted ] [ 35 containers successful ] [ 0 containers failed ] [ 176 tests found ] [ 32 tests skipped ] [ 144 tests started ] [ 3 tests aborted ] [ 141 tests successful ] [ 0 tests failed ] Testing "junixsocket-tipc"... done . '-- JUnit Jupiter [OK] +-- AcceptTimeoutTest [S] Missing capabilities: [CAPABILITY_TIPC] +-- AFTIPCTopologyWatcherTest [S] Missing capabilities: [CAPABILITY_TIPC] +-- AncillaryMessageTest [S] Missing capabilities: [CAPABILITY_TIPC] +-- AvailableTest [S] Missing capabilities: [CAPABILITY_TIPC] +-- BufferOverflowTest [S] Missing capabilities: [CAPABILITY_TIPC] +-- CancelAcceptTest [S] Missing capabilities: [CAPABILITY_TIPC] +-- DatagramSocketTest [S] Missing capabilities: [CAPABILITY_TIPC, CAPABILITY_UNIX_DATAGRAMS] +-- EndOfFileTest [S] Missing capabilities: [CAPABILITY_TIPC] +-- ReadWriteTest [S] Missing capabilities: [CAPABILITY_TIPC] +-- SelectorTest [S] Missing capabilities: [CAPABILITY_TIPC] +-- ServerSocketCloseTest [S] Missing capabilities: [CAPABILITY_TIPC] +-- ServerSocketTest [S] Missing capabilities: [CAPABILITY_TIPC] +-- SocketChannelTest [S] Missing capabilities: [CAPABILITY_TIPC] +-- SocketOptionsTest [S] Missing capabilities: [CAPABILITY_TIPC] +-- SocketPairTest [S] Missing capabilities: [CAPABILITY_TIPC] +-- SocketTest [S] Missing capabilities: [CAPABILITY_TIPC] +-- SoTimeoutTest [S] Missing capabilities: [CAPABILITY_TIPC] +-- StandardSocketOptionsTest [S] Missing capabilities: [CAPABILITY_TIPC] +-- TcpNoDelayTest [S] Missing capabilities: [CAPABILITY_TIPC] '-- ThroughputTest [S] Missing capabilities: [CAPABILITY_TIPC] Test run finished after 15 ms [ 21 containers found ] [ 20 containers skipped ] [ 1 containers started ] [ 0 containers aborted ] [ 1 containers successful ] [ 0 containers failed ] [ 88 tests found ] [ 88 tests skipped ] [ 0 tests started ] [ 0 tests aborted ] [ 0 tests successful ] [ 0 tests failed ] Testing "junixsocket-vsock"... done . '-- JUnit Jupiter [OK] +-- AFVSOCKExtensionsTest [OK] | '-- testGetLocalID() [OK] +-- AcceptTimeoutTest [S] Missing capabilities: [CAPABILITY_VSOCK] +-- AvailableTest [S] Missing capabilities: [CAPABILITY_VSOCK] +-- BufferOverflowTest [S] Missing capabilities: [CAPABILITY_VSOCK] +-- CancelAcceptTest [S] Missing capabilities: [CAPABILITY_VSOCK] +-- DatagramSocketTest [S] Missing capabilities: [CAPABILITY_VSOCK, CAPABILITY_VSOCK_DGRAM] +-- EndOfFileTest [S] Missing capabilities: [CAPABILITY_VSOCK] +-- ReadWriteTest [S] Missing capabilities: [CAPABILITY_VSOCK] +-- SelectorTest [S] Missing capabilities: [CAPABILITY_VSOCK] +-- ServerSocketCloseTest [S] Missing capabilities: [CAPABILITY_VSOCK] +-- ServerSocketTest [S] Missing capabilities: [CAPABILITY_VSOCK] +-- SocketChannelTest [S] Missing capabilities: [CAPABILITY_VSOCK] +-- SocketPairTest [S] Missing capabilities: [CAPABILITY_VSOCK] +-- SocketTest [S] Missing capabilities: [CAPABILITY_VSOCK] +-- SoTimeoutTest [S] Missing capabilities: [CAPABILITY_VSOCK] +-- StandardSocketOptionsTest [S] Missing capabilities: [CAPABILITY_VSOCK] +-- TcpNoDelayTest [S] Missing capabilities: [CAPABILITY_VSOCK] '-- ThroughputTest [S] Missing capabilities: [CAPABILITY_VSOCK] Test run finished after 16 ms [ 19 containers found ] [ 17 containers skipped ] [ 2 containers started ] [ 0 containers aborted ] [ 2 containers successful ] [ 0 containers failed ] [ 75 tests found ] [ 74 tests skipped ] [ 1 tests started ] [ 0 tests aborted ] [ 1 tests successful ] [ 0 tests failed ] Testing "junixsocket-rmi"... done . '-- JUnit Jupiter [OK] +-- RegistryTest [OK] | +-- testDoubleCreateRegistry() [OK] | '-- testExportAndBind() [OK] +-- RemoteCloseableTest [OK] | +-- testRemoteCloseableWithANotCloseableThing() [OK] | '-- testRemoteCloseableWithACloseableThing() [OK] +-- RemoteFileDescriptorTest [S] Missing capabilities: [CAPABILITY_FILE_DESCRIPTORS] +-- RMIPeerCredentialsTest [OK] | '-- testRemotePeerCredentials() [OK] '-- JunixsocketVersionTest [OK] '-- testVersion() [OK] Test run finished after 387 ms [ 6 containers found ] [ 1 containers skipped ] [ 5 containers started ] [ 0 containers aborted ] [ 5 containers successful ] [ 0 containers failed ] [ 12 tests found ] [ 6 tests skipped ] [ 6 tests started ] [ 0 tests aborted ] [ 6 tests successful ] [ 0 tests failed ] Testing "junixsocket-ssl"... ProviderTest.testDumpDefaultProviders()... Available Security providers: - SUN version 17 - SunRsaSign version 17 - SunEC version 17 - SunJSSE version 17 - SunJCE version 17 - SunJGSS version 17 - SunSASL version 17 - XMLDSig version 17 - SunPCSC version 17 - JdkLDAP version 17 - JdkSASL version 17 - SunMSCAPI version 17 - SunPKCS11 version 17 Available Security providers that support TLS: - SunJSSE version 17 Testing "junixsocket-ssl"... testSNISuccessExpectDefault_YES_serverNullDefault_YES_clientEmptyDefault_NO.[1] DEFAULT (SuTesting "junixsocket-ssl"... testSNISuccessExpectDefault_YES_serverNullDefault_YES_clientEmptyDefault_NO.[2] SYSTEM (SunTesting "junixsocket-ssl"... testSNISuccessExpectDefault_YES_serverNullDefault_YES_clientEmptyDefault_NO.[3] BOUNCYCASTLTesting "junixsocket-ssl"... testSNISuccessExpectDefault_YES_serverNullDefault_YES_clientEmptyDefault_NO.[4] BOUNCYCASTLTesting "junixsocket-ssl"... testSNISuccessExpectDefault_YES_serverNullDefault_YES_clientEmptyDefault_NO.[5] BOUNCYCASTLTesting "junixsocket-ssl"... testSNISuccessExpectDefault_YES_serverNullDefault_YES_clientEmptyDefault_NO.[6] IAIK_JCE...Testing "junixsocket-ssl"... testSNISuccessExpectDefault_YES_serverNullDefault_YES_clientEmptyDefault_NO.[7] IAIK_JCE_ANTesting "junixsocket-ssl"... testSNISuccessExpectDefault_YES_serverNullDefault_YES_clientEmptyDefault_NO.[8] OPENJSSE... Testing "junixsocket-ssl"... testSNISuccessExpectDefault_YES_serverNullDefault_YES_clientEmptyDefault_NO.[9] WOLFCRYPT_WTesting "junixsocket-ssl"... testSNISuccessExpectDefault_YES_serverNullDefault_YES_clientEmptyDefault_NO.[10] CONSCRYPT.Testing "junixsocket-ssl"... testSNISuccessExpectDefault_YES_serverNullDefault_YES_clientEmptyDefault_YES.[1] DEFAULT (STesting "junixsocket-ssl"... testSNISuccessExpectDefault_YES_serverNullDefault_YES_clientEmptyDefault_YES.[2] SYSTEM (SuTesting "junixsocket-ssl"... testSNISuccessExpectDefault_YES_serverNullDefault_YES_clientEmptyDefault_YES.[3] BOUNCYCASTTesting "junixsocket-ssl"... testSNISuccessExpectDefault_YES_serverNullDefault_YES_clientEmptyDefault_YES.[4] BOUNCYCASTTesting "junixsocket-ssl"... testSNISuccessExpectDefault_YES_serverNullDefault_YES_clientEmptyDefault_YES.[5] BOUNCYCASTTesting "junixsocket-ssl"... testSNISuccessExpectDefault_YES_serverNullDefault_YES_clientEmptyDefault_YES.[6] IAIK_JCE..Testing "junixsocket-ssl"... testSNISuccessExpectDefault_YES_serverNullDefault_YES_clientEmptyDefault_YES.[7] IAIK_JCE_ATesting "junixsocket-ssl"... testSNISuccessExpectDefault_YES_serverNullDefault_YES_clientEmptyDefault_YES.[8] OPENJSSE..Testing "junixsocket-ssl"... testSNISuccessExpectDefault_YES_serverNullDefault_YES_clientEmptyDefault_YES.[9] WOLFCRYPT_Testing "junixsocket-ssl"... testSNISuccessExpectDefault_YES_serverNullDefault_YES_clientEmptyDefault_YES.[10] CONSCRYPTTesting "junixsocket-ssl"... testSNISuccessExpectDefault_NO_serverNullDefault_YES_clientEmptyDefault_YES.[1] DEFAULT (SuTesting "junixsocket-ssl"... testSNISuccessExpectDefault_NO_serverNullDefault_YES_clientEmptyDefault_YES.[2] SYSTEM (SunTesting "junixsocket-ssl"... testSNISuccessExpectDefault_NO_serverNullDefault_YES_clientEmptyDefault_YES.[3] BOUNCYCASTLTesting "junixsocket-ssl"... testSNISuccessExpectDefault_NO_serverNullDefault_YES_clientEmptyDefault_YES.[4] BOUNCYCASTLTesting "junixsocket-ssl"... testSNISuccessExpectDefault_NO_serverNullDefault_YES_clientEmptyDefault_YES.[5] BOUNCYCASTLTesting "junixsocket-ssl"... testSNISuccessExpectDefault_NO_serverNullDefault_YES_clientEmptyDefault_YES.[6] IAIK_JCE...Testing "junixsocket-ssl"... testSNISuccessExpectDefault_NO_serverNullDefault_YES_clientEmptyDefault_YES.[7] IAIK_JCE_ANTesting "junixsocket-ssl"... testSNISuccessExpectDefault_NO_serverNullDefault_YES_clientEmptyDefault_YES.[8] OPENJSSE... Testing "junixsocket-ssl"... testSNISuccessExpectDefault_NO_serverNullDefault_YES_clientEmptyDefault_YES.[9] WOLFCRYPT_WTesting "junixsocket-ssl"... testSNISuccessExpectDefault_NO_serverNullDefault_YES_clientEmptyDefault_YES.[10] CONSCRYPT.Testing "junixsocket-ssl"... testSNISuccessExpectDefault_NO_serverNullDefault_YES_clientEmptyDefault_NO.[1] DEFAULT (SunTesting "junixsocket-ssl"... testSNISuccessExpectDefault_NO_serverNullDefault_YES_clientEmptyDefault_NO.[2] SYSTEM (SunJTesting "junixsocket-ssl"... testSNISuccessExpectDefault_NO_serverNullDefault_YES_clientEmptyDefault_NO.[3] BOUNCYCASTLETesting "junixsocket-ssl"... testSNISuccessExpectDefault_NO_serverNullDefault_YES_clientEmptyDefault_NO.[4] BOUNCYCASTLETesting "junixsocket-ssl"... testSNISuccessExpectDefault_NO_serverNullDefault_YES_clientEmptyDefault_NO.[5] BOUNCYCASTLETesting "junixsocket-ssl"... testSNISuccessExpectDefault_NO_serverNullDefault_YES_clientEmptyDefault_NO.[7] IAIK_JCE_ANDTesting "junixsocket-ssl"... testSNISuccessExpectDefault_NO_serverNullDefault_YES_clientEmptyDefault_NO.[9] WOLFCRYPT_WOTesting "junixsocket-ssl"... testSNISuccessExpectDefault_NO_serverNullDefault_YES_clientEmptyDefault_NO.[10] CONSCRYPT..Testing "junixsocket-ssl"... testSNISuccessExpectDefault_YES_serverNullDefault_NO_clientEmptyDefault_YES.[1] DEFAULT (SuTesting "junixsocket-ssl"... testSNISuccessExpectDefault_YES_serverNullDefault_NO_clientEmptyDefault_YES.[2] SYSTEM (SunTesting "junixsocket-ssl"... testSNISuccessExpectDefault_YES_serverNullDefault_NO_clientEmptyDefault_YES.[3] BOUNCYCASTLTesting "junixsocket-ssl"... testSNISuccessExpectDefault_YES_serverNullDefault_NO_clientEmptyDefault_YES.[4] BOUNCYCASTLTesting "junixsocket-ssl"... testSNISuccessExpectDefault_YES_serverNullDefault_NO_clientEmptyDefault_YES.[5] BOUNCYCASTLTesting "junixsocket-ssl"... testSNISuccessExpectDefault_YES_serverNullDefault_NO_clientEmptyDefault_YES.[6] IAIK_JCE...Testing "junixsocket-ssl"... testSNISuccessExpectDefault_YES_serverNullDefault_NO_clientEmptyDefault_YES.[7] IAIK_JCE_ANTesting "junixsocket-ssl"... testSNISuccessExpectDefault_YES_serverNullDefault_NO_clientEmptyDefault_YES.[8] OPENJSSE...Testing "junixsocket-ssl"... testSNISuccessExpectDefault_YES_serverNullDefault_NO_clientEmptyDefault_YES.[9] WOLFCRYPT_WTesting "junixsocket-ssl"... testSNISuccessExpectDefault_YES_serverNullDefault_NO_clientEmptyDefault_YES.[10] CONSCRYPT.Testing "junixsocket-ssl"... testSNISuccessExpectDefault_YES_serverNullDefault_NO_clientEmptyDefault_NO.[1] DEFAULT (SunTesting "junixsocket-ssl"... testSNISuccessExpectDefault_YES_serverNullDefault_NO_clientEmptyDefault_NO.[2] SYSTEM (SunJTesting "junixsocket-ssl"... testSNISuccessExpectDefault_YES_serverNullDefault_NO_clientEmptyDefault_NO.[3] BOUNCYCASTLETesting "junixsocket-ssl"... testSNISuccessExpectDefault_YES_serverNullDefault_NO_clientEmptyDefault_NO.[4] BOUNCYCASTLETesting "junixsocket-ssl"... testSNISuccessExpectDefault_YES_serverNullDefault_NO_clientEmptyDefault_NO.[5] BOUNCYCASTLETesting "junixsocket-ssl"... testSNISuccessExpectDefault_YES_serverNullDefault_NO_clientEmptyDefault_NO.[7] IAIK_JCE_ANDTesting "junixsocket-ssl"... testSNISuccessExpectDefault_YES_serverNullDefault_NO_clientEmptyDefault_NO.[9] WOLFCRYPT_WOTesting "junixsocket-ssl"... testSNISuccessExpectDefault_YES_serverNullDefault_NO_clientEmptyDefault_NO.[10] CONSCRYPT..Testing "junixsocket-ssl"... testSNISuccessExpectDefault_NO_serverNullDefault_NO_clientEmptyDefault_NO.[1] DEFAULT (SunJTesting "junixsocket-ssl"... testSNISuccessExpectDefault_NO_serverNullDefault_NO_clientEmptyDefault_NO.[2] SYSTEM (SunJSTesting "junixsocket-ssl"... testSNISuccessExpectDefault_NO_serverNullDefault_NO_clientEmptyDefault_NO.[3] BOUNCYCASTLE_Testing "junixsocket-ssl"... testSNISuccessExpectDefault_NO_serverNullDefault_NO_clientEmptyDefault_NO.[4] BOUNCYCASTLE_Testing "junixsocket-ssl"... testSNISuccessExpectDefault_NO_serverNullDefault_NO_clientEmptyDefault_NO.[5] BOUNCYCASTLE_Testing "junixsocket-ssl"... testSNISuccessExpectDefault_NO_serverNullDefault_NO_clientEmptyDefault_NO.[7] IAIK_JCE_AND_Testing "junixsocket-ssl"... testSNISuccessExpectDefault_NO_serverNullDefault_NO_clientEmptyDefault_NO.[9] WOLFCRYPT_WOLTesting "junixsocket-ssl"... testSNISuccessExpectDefault_NO_serverNullDefault_NO_clientEmptyDefault_NO.[10] CONSCRYPT...Testing "junixsocket-ssl"... testSNISuccessExpectDefault_NO_serverNullDefault_NO_clientEmptyDefault_YES.[1] DEFAULT (SunTesting "junixsocket-ssl"... testSNISuccessExpectDefault_NO_serverNullDefault_NO_clientEmptyDefault_YES.[2] SYSTEM (SunJTesting "junixsocket-ssl"... testSNISuccessExpectDefault_NO_serverNullDefault_NO_clientEmptyDefault_YES.[3] BOUNCYCASTLETesting "junixsocket-ssl"... testSNISuccessExpectDefault_NO_serverNullDefault_NO_clientEmptyDefault_YES.[4] BOUNCYCASTLETesting "junixsocket-ssl"... testSNISuccessExpectDefault_NO_serverNullDefault_NO_clientEmptyDefault_YES.[5] BOUNCYCASTLETesting "junixsocket-ssl"... testSNISuccessExpectDefault_NO_serverNullDefault_NO_clientEmptyDefault_YES.[7] IAIK_JCE_ANDTesting "junixsocket-ssl"... testSNISuccessExpectDefault_NO_serverNullDefault_NO_clientEmptyDefault_YES.[9] WOLFCRYPT_WOTesting "junixsocket-ssl"... testSNISuccessExpectDefault_NO_serverNullDefault_NO_clientEmptyDefault_YES.[10] CONSCRYPT..Testing "junixsocket-ssl"... done . '-- JUnit Jupiter [OK] +-- ProviderTest [OK] | '-- testDumpDefaultProviders() [OK] +-- SSLContextBuilderTest [OK] | +-- testUndestroyablePasswordSupplier(TestSSLConfiguration) [OK] | | +-- [1] DEFAULT (SunJSSE) [OK] | | +-- [2] SYSTEM (SunJSSE) [OK] | | +-- [3] BOUNCYCASTLE_JCE [A] BouncyCastle JCE provider unvailable | | +-- [4] BOUNCYCASTLE_JCE_AND_JSEE [A] BouncyCastle JCE provider unvailable | | +-- [5] BOUNCYCASTLE_JCE_AND_JSEE_FIPS [A] BouncyCastle JCE provider unvailable | | +-- [6] IAIK_JCE [A] IAIK JCE provider unvailable | | +-- [7] IAIK_JCE_AND_JSSE [A] IAIK JCE provider unvailable | | +-- [8] OPENJSSE [A] OPENJSSE provider unvailable | | +-- [9] WOLFCRYPT_WOLFSSL [A] Wolfcrypt JCE provider unvailable | | '-- [10] CONSCRYPT [A] Conscrypt provider unvailable | +-- testClientHasNoTrustStore(TestSSLConfiguration) [OK] | | +-- [1] DEFAULT (SunJSSE) [OK] | | +-- [2] SYSTEM (SunJSSE) [OK] | | +-- [3] BOUNCYCASTLE_JCE [A] BouncyCastle JCE provider unvailable | | +-- [4] BOUNCYCASTLE_JCE_AND_JSEE [A] BouncyCastle JCE provider unvailable | | +-- [5] BOUNCYCASTLE_JCE_AND_JSEE_FIPS [A] BouncyCastle JCE provider unvailable | | +-- [6] IAIK_JCE [A] IAIK JCE provider unvailable | | +-- [7] IAIK_JCE_AND_JSSE [A] IAIK JCE provider unvailable | | +-- [8] OPENJSSE [A] OPENJSSE provider unvailable | | +-- [9] WOLFCRYPT_WOLFSSL [A] Wolfcrypt JCE provider unvailable | | '-- [10] CONSCRYPT [A] Conscrypt provider unvailable | +-- testSocketFactoryMethods(TestSSLConfiguration) [OK] | | +-- [1] DEFAULT (SunJSSE) [OK] | | +-- [2] SYSTEM (SunJSSE) [OK] | | +-- [3] BOUNCYCASTLE_JCE [A] BouncyCastle JCE provider unvailable | | +-- [4] BOUNCYCASTLE_JCE_AND_JSEE [A] BouncyCastle JCE provider unvailable | | +-- [5] BOUNCYCASTLE_JCE_AND_JSEE_FIPS [A] BouncyCastle JCE provider unvailable | | +-- [6] IAIK_JCE [A] IAIK JCE provider unvailable | | +-- [7] IAIK_JCE_AND_JSSE [A] IAIK JCE provider unvailable | | +-- [8] OPENJSSE [A] OPENJSSE provider unvailable | | +-- [9] WOLFCRYPT_WOLFSSL [A] Wolfcrypt JCE provider unvailable | | '-- [10] CONSCRYPT [A] Conscrypt provider unvailable | +-- testServerSocketFactoryMethods(TestSSLConfiguration) [OK] | | +-- [1] DEFAULT (SunJSSE) [OK] | | +-- [2] SYSTEM (SunJSSE) [OK] | | +-- [3] BOUNCYCASTLE_JCE [A] BouncyCastle JCE provider unvailable | | +-- [4] BOUNCYCASTLE_JCE_AND_JSEE [A] BouncyCastle JCE provider unvailable | | +-- [5] BOUNCYCASTLE_JCE_AND_JSEE_FIPS [A] BouncyCastle JCE provider unvailable | | +-- [6] IAIK_JCE [A] IAIK JCE provider unvailable | | +-- [7] IAIK_JCE_AND_JSSE [A] IAIK JCE provider unvailable | | +-- [8] OPENJSSE [A] OPENJSSE provider unvailable | | +-- [9] WOLFCRYPT_WOLFSSL [A] Wolfcrypt JCE provider unvailable | | '-- [10] CONSCRYPT [A] Conscrypt provider unvailable | +-- testClientAuthRequired(TestSSLConfiguration) [OK] | | +-- [1] DEFAULT (SunJSSE) [OK] | | +-- [2] SYSTEM (SunJSSE) [OK] | | +-- [3] BOUNCYCASTLE_JCE [A] BouncyCastle JCE provider unvailable | | +-- [4] BOUNCYCASTLE_JCE_AND_JSEE [A] BouncyCastle JCE provider unvailable | | +-- [5] BOUNCYCASTLE_JCE_AND_JSEE_FIPS [A] BouncyCastle JCE provider unvailable | | +-- [6] IAIK_JCE [A] IAIK JCE provider unvailable | | +-- [7] IAIK_JCE_AND_JSSE [A] IAIK JCE provider unvailable | | +-- [8] OPENJSSE [A] OPENJSSE provider unvailable | | +-- [9] WOLFCRYPT_WOLFSSL [A] Wolfcrypt JCE provider unvailable | | '-- [10] CONSCRYPT [A] Conscrypt provider unvailable | +-- testKeyStoreFileNotFound(TestSSLConfiguration) [OK] | | +-- [1] DEFAULT (SunJSSE) [OK] | | +-- [2] SYSTEM (SunJSSE) [OK] | | +-- [3] BOUNCYCASTLE_JCE [A] BouncyCastle JCE provider unvailable | | +-- [4] BOUNCYCASTLE_JCE_AND_JSEE [A] BouncyCastle JCE provider unvailable | | +-- [5] BOUNCYCASTLE_JCE_AND_JSEE_FIPS [A] BouncyCastle JCE provider unvailable | | +-- [6] IAIK_JCE [A] IAIK JCE provider unvailable | | +-- [7] IAIK_JCE_AND_JSSE [A] IAIK JCE provider unvailable | | +-- [8] OPENJSSE [A] OPENJSSE provider unvailable | | +-- [9] WOLFCRYPT_WOLFSSL [A] Wolfcrypt JCE provider unvailable | | '-- [10] CONSCRYPT [A] Conscrypt provider unvailable | +-- testSocketFactoryMethodsForCodeCoverageOnly(TestSSLConfiguration) [OK] | | +-- [1] DEFAULT (SunJSSE) [OK] | | +-- [2] SYSTEM (SunJSSE) [OK] | | +-- [3] BOUNCYCASTLE_JCE [A] BouncyCastle JCE provider unvailable | | +-- [4] BOUNCYCASTLE_JCE_AND_JSEE [A] BouncyCastle JCE provider unvailable | | +-- [5] BOUNCYCASTLE_JCE_AND_JSEE_FIPS [A] BouncyCastle JCE provider unvailable | | +-- [6] IAIK_JCE [A] IAIK JCE provider unvailable | | +-- [7] IAIK_JCE_AND_JSSE [A] IAIK JCE provider unvailable | | +-- [8] OPENJSSE [A] OPENJSSE provider unvailable | | +-- [9] WOLFCRYPT_WOLFSSL [A] Wolfcrypt JCE provider unvailable | | '-- [10] CONSCRYPT [A] Conscrypt provider unvailable | +-- testServerAndClientBlindlyTrustAnything(TestSSLConfiguration) [OK] | | +-- [1] DEFAULT (SunJSSE) [OK] | | +-- [2] SYSTEM (SunJSSE) [OK] | | +-- [3] BOUNCYCASTLE_JCE [A] BouncyCastle JCE provider unvailable | | +-- [4] BOUNCYCASTLE_JCE_AND_JSEE [A] BouncyCastle JCE provider unvailable | | +-- [5] BOUNCYCASTLE_JCE_AND_JSEE_FIPS [A] BouncyCastle JCE provider unvailable | | +-- [6] IAIK_JCE [A] IAIK JCE provider unvailable | | +-- [7] IAIK_JCE_AND_JSSE [A] IAIK JCE provider unvailable | | +-- [8] OPENJSSE [A] OPENJSSE provider unvailable | | +-- [9] WOLFCRYPT_WOLFSSL [A] Wolfcrypt JCE provider unvailable | | '-- [10] CONSCRYPT [A] Conscrypt provider unvailable | +-- testBothTrustStoreAndTrustManagers(TestSSLConfiguration) [OK] | | +-- [1] DEFAULT (SunJSSE) [OK] | | +-- [2] SYSTEM (SunJSSE) [OK] | | +-- [3] BOUNCYCASTLE_JCE [A] BouncyCastle JCE provider unvailable | | +-- [4] BOUNCYCASTLE_JCE_AND_JSEE [A] BouncyCastle JCE provider unvailable | | +-- [5] BOUNCYCASTLE_JCE_AND_JSEE_FIPS [A] BouncyCastle JCE provider unvailable | | +-- [6] IAIK_JCE [A] IAIK JCE provider unvailable | | +-- [7] IAIK_JCE_AND_JSSE [A] IAIK JCE provider unvailable | | +-- [8] OPENJSSE [A] OPENJSSE provider unvailable | | +-- [9] WOLFCRYPT_WOLFSSL [A] Wolfcrypt JCE provider unvailable | | '-- [10] CONSCRYPT [A] Conscrypt provider unvailable | +-- testNoClientAuth(TestSSLConfiguration) [OK] | | +-- [1] DEFAULT (SunJSSE) [OK] | | +-- [2] SYSTEM (SunJSSE) [OK] | | +-- [3] BOUNCYCASTLE_JCE [A] BouncyCastle JCE provider unvailable | | +-- [4] BOUNCYCASTLE_JCE_AND_JSEE [A] BouncyCastle JCE provider unvailable | | +-- [5] BOUNCYCASTLE_JCE_AND_JSEE_FIPS [A] BouncyCastle JCE provider unvailable | | +-- [6] IAIK_JCE [A] IAIK JCE provider unvailable | | +-- [7] IAIK_JCE_AND_JSSE [A] IAIK JCE provider unvailable | | +-- [8] OPENJSSE [A] OPENJSSE provider unvailable | | +-- [9] WOLFCRYPT_WOLFSSL [A] Wolfcrypt JCE provider unvailable | | '-- [10] CONSCRYPT [A] Conscrypt provider unvailable | +-- testClientAuthRequiredButClientIsNotSendingAKey(TestSSLConfiguration) [OK] | | +-- [1] DEFAULT (SunJSSE) [OK] | | +-- [2] SYSTEM (SunJSSE) [OK] | | +-- [3] BOUNCYCASTLE_JCE [A] BouncyCastle JCE provider unvailable | | +-- [4] BOUNCYCASTLE_JCE_AND_JSEE [A] BouncyCastle JCE provider unvailable | | +-- [5] BOUNCYCASTLE_JCE_AND_JSEE_FIPS [A] BouncyCastle JCE provider unvailable | | +-- [6] IAIK_JCE [A] IAIK JCE provider unvailable | | +-- [7] IAIK_JCE_AND_JSSE [A] IAIK JCE provider unvailable | | +-- [8] OPENJSSE [A] OPENJSSE provider unvailable | | +-- [9] WOLFCRYPT_WOLFSSL [A] Wolfcrypt JCE provider unvailable | | '-- [10] CONSCRYPT [A] Conscrypt provider unvailable | +-- testTrustStoreURLNotFound(TestSSLConfiguration) [OK] | | +-- [1] DEFAULT (SunJSSE) [OK] | | +-- [2] SYSTEM (SunJSSE) [OK] | | +-- [3] BOUNCYCASTLE_JCE [A] BouncyCastle JCE provider unvailable | | +-- [4] BOUNCYCASTLE_JCE_AND_JSEE [A] BouncyCastle JCE provider unvailable | | +-- [5] BOUNCYCASTLE_JCE_AND_JSEE_FIPS [A] BouncyCastle JCE provider unvailable | | +-- [6] IAIK_JCE [A] IAIK JCE provider unvailable | | +-- [7] IAIK_JCE_AND_JSSE [A] IAIK JCE provider unvailable | | +-- [8] OPENJSSE [A] OPENJSSE provider unvailable | | +-- [9] WOLFCRYPT_WOLFSSL [A] Wolfcrypt JCE provider unvailable | | '-- [10] CONSCRYPT [A] Conscrypt provider unvailable | +-- testTrustStoreNullURL(TestSSLConfiguration) [OK] | | +-- [1] DEFAULT (SunJSSE) [OK] | | +-- [2] SYSTEM (SunJSSE) [OK] | | +-- [3] BOUNCYCASTLE_JCE [A] BouncyCastle JCE provider unvailable | | +-- [4] BOUNCYCASTLE_JCE_AND_JSEE [A] BouncyCastle JCE provider unvailable | | +-- [5] BOUNCYCASTLE_JCE_AND_JSEE_FIPS [A] BouncyCastle JCE provider unvailable | | +-- [6] IAIK_JCE [A] IAIK JCE provider unvailable | | +-- [7] IAIK_JCE_AND_JSSE [A] IAIK JCE provider unvailable | | +-- [8] OPENJSSE [A] OPENJSSE provider unvailable | | +-- [9] WOLFCRYPT_WOLFSSL [A] Wolfcrypt JCE provider unvailable | | '-- [10] CONSCRYPT [A] Conscrypt provider unvailable | +-- testDestroyablePasswordSupplierDestroyed(TestSSLConfiguration) [OK] | | +-- [1] DEFAULT (SunJSSE) [OK] | | +-- [2] SYSTEM (SunJSSE) [OK] | | +-- [3] BOUNCYCASTLE_JCE [A] BouncyCastle JCE provider unvailable | | +-- [4] BOUNCYCASTLE_JCE_AND_JSEE [A] BouncyCastle JCE provider unvailable | | +-- [5] BOUNCYCASTLE_JCE_AND_JSEE_FIPS [A] BouncyCastle JCE provider unvailable | | +-- [6] IAIK_JCE [A] IAIK JCE provider unvailable | | +-- [7] IAIK_JCE_AND_JSSE [A] IAIK JCE provider unvailable | | +-- [8] OPENJSSE [A] OPENJSSE provider unvailable | | +-- [9] WOLFCRYPT_WOLFSSL [A] Wolfcrypt JCE provider unvailable | | '-- [10] CONSCRYPT [A] Conscrypt provider unvailable | +-- testBothKeyManagersAndKeyStore(TestSSLConfiguration) [OK] | | +-- [1] DEFAULT (SunJSSE) [OK] | | +-- [2] SYSTEM (SunJSSE) [OK] | | +-- [3] BOUNCYCASTLE_JCE [A] BouncyCastle JCE provider unvailable | | +-- [4] BOUNCYCASTLE_JCE_AND_JSEE [A] BouncyCastle JCE provider unvailable | | +-- [5] BOUNCYCASTLE_JCE_AND_JSEE_FIPS [A] BouncyCastle JCE provider unvailable | | +-- [6] IAIK_JCE [A] IAIK JCE provider unvailable | | +-- [7] IAIK_JCE_AND_JSSE [A] IAIK JCE provider unvailable | | +-- [8] OPENJSSE [A] OPENJSSE provider unvailable | | +-- [9] WOLFCRYPT_WOLFSSL [A] Wolfcrypt JCE provider unvailable | | '-- [10] CONSCRYPT [A] Conscrypt provider unvailable | +-- testBothTrustManagersAndTrustStore(TestSSLConfiguration) [OK] | | +-- [1] DEFAULT (SunJSSE) [OK] | | +-- [2] SYSTEM (SunJSSE) [OK] | | +-- [3] BOUNCYCASTLE_JCE [A] BouncyCastle JCE provider unvailable | | +-- [4] BOUNCYCASTLE_JCE_AND_JSEE [A] BouncyCastle JCE provider unvailable | | +-- [5] BOUNCYCASTLE_JCE_AND_JSEE_FIPS [A] BouncyCastle JCE provider unvailable | | +-- [6] IAIK_JCE [A] IAIK JCE provider unvailable | | +-- [7] IAIK_JCE_AND_JSSE [A] IAIK JCE provider unvailable | | +-- [8] OPENJSSE [A] OPENJSSE provider unvailable | | +-- [9] WOLFCRYPT_WOLFSSL [A] Wolfcrypt JCE provider unvailable | | '-- [10] CONSCRYPT [A] Conscrypt provider unvailable | +-- testTrustStoreFileNotFound(TestSSLConfiguration) [OK] | | +-- [1] DEFAULT (SunJSSE) [OK] | | +-- [2] SYSTEM (SunJSSE) [OK] | | +-- [3] BOUNCYCASTLE_JCE [A] BouncyCastle JCE provider unvailable | | +-- [4] BOUNCYCASTLE_JCE_AND_JSEE [A] BouncyCastle JCE provider unvailable | | +-- [5] BOUNCYCASTLE_JCE_AND_JSEE_FIPS [A] BouncyCastle JCE provider unvailable | | +-- [6] IAIK_JCE [A] IAIK JCE provider unvailable | | +-- [7] IAIK_JCE_AND_JSSE [A] IAIK JCE provider unvailable | | +-- [8] OPENJSSE [A] OPENJSSE provider unvailable | | +-- [9] WOLFCRYPT_WOLFSSL [A] Wolfcrypt JCE provider unvailable | | '-- [10] CONSCRYPT [A] Conscrypt provider unvailable | +-- testUndestroyablePasswordSuppliers(TestSSLConfiguration) [OK] | | +-- [1] DEFAULT (SunJSSE) [OK] | | +-- [2] SYSTEM (SunJSSE) [OK] | | +-- [3] BOUNCYCASTLE_JCE [A] BouncyCastle JCE provider unvailable | | +-- [4] BOUNCYCASTLE_JCE_AND_JSEE [A] BouncyCastle JCE provider unvailable | | +-- [5] BOUNCYCASTLE_JCE_AND_JSEE_FIPS [A] BouncyCastle JCE provider unvailable | | +-- [6] IAIK_JCE [A] IAIK JCE provider unvailable | | +-- [7] IAIK_JCE_AND_JSSE [A] IAIK JCE provider unvailable | | +-- [8] OPENJSSE [A] OPENJSSE provider unvailable | | +-- [9] WOLFCRYPT_WOLFSSL [A] Wolfcrypt JCE provider unvailable | | '-- [10] CONSCRYPT [A] Conscrypt provider unvailable | +-- testBadProtocol(TestSSLConfiguration) [OK] | | +-- [1] DEFAULT (SunJSSE) [OK] | | +-- [2] SYSTEM (SunJSSE) [OK] | | +-- [3] BOUNCYCASTLE_JCE [A] BouncyCastle JCE provider unvailable | | +-- [4] BOUNCYCASTLE_JCE_AND_JSEE [A] BouncyCastle JCE provider unvailable | | +-- [5] BOUNCYCASTLE_JCE_AND_JSEE_FIPS [A] BouncyCastle JCE provider unvailable | | +-- [6] IAIK_JCE [A] IAIK JCE provider unvailable | | +-- [7] IAIK_JCE_AND_JSSE [A] IAIK JCE provider unvailable | | +-- [8] OPENJSSE [A] OPENJSSE provider unvailable | | +-- [9] WOLFCRYPT_WOLFSSL [A] Wolfcrypt JCE provider unvailable | | '-- [10] CONSCRYPT [A] Conscrypt provider unvailable | +-- testDestroyablePasswordSupplier(TestSSLConfiguration) [OK] | | +-- [1] DEFAULT (SunJSSE) [OK] | | +-- [2] SYSTEM (SunJSSE) [OK] | | +-- [3] BOUNCYCASTLE_JCE [A] BouncyCastle JCE provider unvailable | | +-- [4] BOUNCYCASTLE_JCE_AND_JSEE [A] BouncyCastle JCE provider unvailable | | +-- [5] BOUNCYCASTLE_JCE_AND_JSEE_FIPS [A] BouncyCastle JCE provider unvailable | | +-- [6] IAIK_JCE [A] IAIK JCE provider unvailable | | +-- [7] IAIK_JCE_AND_JSSE [A] IAIK JCE provider unvailable | | +-- [8] OPENJSSE [A] OPENJSSE provider unvailable | | +-- [9] WOLFCRYPT_WOLFSSL [A] Wolfcrypt JCE provider unvailable | | '-- [10] CONSCRYPT [A] Conscrypt provider unvailable | +-- testKeyStoreNullURL(TestSSLConfiguration) [OK] | | +-- [1] DEFAULT (SunJSSE) [OK] | | +-- [2] SYSTEM (SunJSSE) [OK] | | +-- [3] BOUNCYCASTLE_JCE [A] BouncyCastle JCE provider unvailable | | +-- [4] BOUNCYCASTLE_JCE_AND_JSEE [A] BouncyCastle JCE provider unvailable | | +-- [5] BOUNCYCASTLE_JCE_AND_JSEE_FIPS [A] BouncyCastle JCE provider unvailable | | +-- [6] IAIK_JCE [A] IAIK JCE provider unvailable | | +-- [7] IAIK_JCE_AND_JSSE [A] IAIK JCE provider unvailable | | +-- [8] OPENJSSE [A] OPENJSSE provider unvailable | | +-- [9] WOLFCRYPT_WOLFSSL [A] Wolfcrypt JCE provider unvailable | | '-- [10] CONSCRYPT [A] Conscrypt provider unvailable | +-- testWithDefaultParameters1(TestSSLConfiguration) [OK] | | +-- [1] DEFAULT (SunJSSE) [OK] | | +-- [2] SYSTEM (SunJSSE) [OK] | | +-- [3] BOUNCYCASTLE_JCE [A] BouncyCastle JCE provider unvailable | | +-- [4] BOUNCYCASTLE_JCE_AND_JSEE [A] BouncyCastle JCE provider unvailable | | +-- [5] BOUNCYCASTLE_JCE_AND_JSEE_FIPS [A] BouncyCastle JCE provider unvailable | | +-- [6] IAIK_JCE [A] IAIK JCE provider unvailable | | +-- [7] IAIK_JCE_AND_JSSE [A] IAIK JCE provider unvailable | | +-- [8] OPENJSSE [A] OPENJSSE provider unvailable | | +-- [9] WOLFCRYPT_WOLFSSL [A] Wolfcrypt JCE provider unvailable | | '-- [10] CONSCRYPT [A] Conscrypt provider unvailable | +-- testWithDefaultParameters2(TestSSLConfiguration) [OK] | | +-- [1] DEFAULT (SunJSSE) [OK] | | +-- [2] SYSTEM (SunJSSE) [OK] | | +-- [3] BOUNCYCASTLE_JCE [A] BouncyCastle JCE provider unvailable | | +-- [4] BOUNCYCASTLE_JCE_AND_JSEE [A] BouncyCastle JCE provider unvailable | | +-- [5] BOUNCYCASTLE_JCE_AND_JSEE_FIPS [A] BouncyCastle JCE provider unvailable | | +-- [6] IAIK_JCE [A] IAIK JCE provider unvailable | | +-- [7] IAIK_JCE_AND_JSSE [A] IAIK JCE provider unvailable | | +-- [8] OPENJSSE [A] OPENJSSE provider unvailable | | +-- [9] WOLFCRYPT_WOLFSSL [A] Wolfcrypt JCE provider unvailable | | '-- [10] CONSCRYPT [A] Conscrypt provider unvailable | +-- testKeyStoreNullPasswordSupplied(TestSSLConfiguration) [OK] | | +-- [1] DEFAULT (SunJSSE) [OK] | | +-- [2] SYSTEM (SunJSSE) [OK] | | +-- [3] BOUNCYCASTLE_JCE [A] BouncyCastle JCE provider unvailable | | +-- [4] BOUNCYCASTLE_JCE_AND_JSEE [A] BouncyCastle JCE provider unvailable | | +-- [5] BOUNCYCASTLE_JCE_AND_JSEE_FIPS [A] BouncyCastle JCE provider unvailable | | +-- [6] IAIK_JCE [A] IAIK JCE provider unvailable | | +-- [7] IAIK_JCE_AND_JSSE [A] IAIK JCE provider unvailable | | +-- [8] OPENJSSE [A] OPENJSSE provider unvailable | | +-- [9] WOLFCRYPT_WOLFSSL [A] Wolfcrypt JCE provider unvailable | | '-- [10] CONSCRYPT [A] Conscrypt provider unvailable | +-- testKeyStoreNullPasswordSupplier(TestSSLConfiguration) [OK] | | +-- [1] DEFAULT (SunJSSE) [OK] | | +-- [2] SYSTEM (SunJSSE) [OK] | | +-- [3] BOUNCYCASTLE_JCE [A] BouncyCastle JCE provider unvailable | | +-- [4] BOUNCYCASTLE_JCE_AND_JSEE [A] BouncyCastle JCE provider unvailable | | +-- [5] BOUNCYCASTLE_JCE_AND_JSEE_FIPS [A] BouncyCastle JCE provider unvailable | | +-- [6] IAIK_JCE [A] IAIK JCE provider unvailable | | +-- [7] IAIK_JCE_AND_JSSE [A] IAIK JCE provider unvailable | | +-- [8] OPENJSSE [A] OPENJSSE provider unvailable | | +-- [9] WOLFCRYPT_WOLFSSL [A] Wolfcrypt JCE provider unvailable | | '-- [10] CONSCRYPT [A] Conscrypt provider unvailable | +-- testSSLEngineMethods(TestSSLConfiguration) [OK] | | +-- [1] DEFAULT (SunJSSE) [OK] | | +-- [2] SYSTEM (SunJSSE) [OK] | | +-- [3] BOUNCYCASTLE_JCE [A] BouncyCastle JCE provider unvailable | | +-- [4] BOUNCYCASTLE_JCE_AND_JSEE [A] BouncyCastle JCE provider unvailable | | +-- [5] BOUNCYCASTLE_JCE_AND_JSEE_FIPS [A] BouncyCastle JCE provider unvailable | | +-- [6] IAIK_JCE [A] IAIK JCE provider unvailable | | +-- [7] IAIK_JCE_AND_JSSE [A] IAIK JCE provider unvailable | | +-- [8] OPENJSSE [A] OPENJSSE provider unvailable | | +-- [9] WOLFCRYPT_WOLFSSL [A] Wolfcrypt JCE provider unvailable | | '-- [10] CONSCRYPT [A] Conscrypt provider unvailable | +-- testBothKeyStoreAndKeyManagers(TestSSLConfiguration) [OK] | | +-- [1] DEFAULT (SunJSSE) [OK] | | +-- [2] SYSTEM (SunJSSE) [OK] | | +-- [3] BOUNCYCASTLE_JCE [A] BouncyCastle JCE provider unvailable | | +-- [4] BOUNCYCASTLE_JCE_AND_JSEE [A] BouncyCastle JCE provider unvailable | | +-- [5] BOUNCYCASTLE_JCE_AND_JSEE_FIPS [A] BouncyCastle JCE provider unvailable | | +-- [6] IAIK_JCE [A] IAIK JCE provider unvailable | | +-- [7] IAIK_JCE_AND_JSSE [A] IAIK JCE provider unvailable | | +-- [8] OPENJSSE [A] OPENJSSE provider unvailable | | +-- [9] WOLFCRYPT_WOLFSSL [A] Wolfcrypt JCE provider unvailable | | '-- [10] CONSCRYPT [A] Conscrypt provider unvailable | +-- testKeyStoreURLNotFound(TestSSLConfiguration) [OK] | | +-- [1] DEFAULT (SunJSSE) [OK] | | +-- [2] SYSTEM (SunJSSE) [OK] | | +-- [3] BOUNCYCASTLE_JCE [A] BouncyCastle JCE provider unvailable | | +-- [4] BOUNCYCASTLE_JCE_AND_JSEE [A] BouncyCastle JCE provider unvailable | | +-- [5] BOUNCYCASTLE_JCE_AND_JSEE_FIPS [A] BouncyCastle JCE provider unvailable | | +-- [6] IAIK_JCE [A] IAIK JCE provider unvailable | | +-- [7] IAIK_JCE_AND_JSSE [A] IAIK JCE provider unvailable | | +-- [8] OPENJSSE [A] OPENJSSE provider unvailable | | +-- [9] WOLFCRYPT_WOLFSSL [A] Wolfcrypt JCE provider unvailable | | '-- [10] CONSCRYPT [A] Conscrypt provider unvailable | +-- testClientAuthRequiredButClientKeyIsNotTrusted(TestSSLConfiguration) [OK] | | +-- [1] DEFAULT (SunJSSE) [OK] | | +-- [2] SYSTEM (SunJSSE) [OK] | | +-- [3] BOUNCYCASTLE_JCE [A] BouncyCastle JCE provider unvailable | | +-- [4] BOUNCYCASTLE_JCE_AND_JSEE [A] BouncyCastle JCE provider unvailable | | +-- [5] BOUNCYCASTLE_JCE_AND_JSEE_FIPS [A] BouncyCastle JCE provider unvailable | | +-- [6] IAIK_JCE [A] IAIK JCE provider unvailable | | +-- [7] IAIK_JCE_AND_JSSE [A] IAIK JCE provider unvailable | | +-- [8] OPENJSSE [A] OPENJSSE provider unvailable | | +-- [9] WOLFCRYPT_WOLFSSL [A] Wolfcrypt JCE provider unvailable | | '-- [10] CONSCRYPT [A] Conscrypt provider unvailable | +-- testServerSocketFactoryMethodsForCodeCoverageOnly(TestSSLConfiguration) [OK] | | +-- [1] DEFAULT (SunJSSE) [OK] | | +-- [2] SYSTEM (SunJSSE) [OK] | | +-- [3] BOUNCYCASTLE_JCE [A] BouncyCastle JCE provider unvailable | | +-- [4] BOUNCYCASTLE_JCE_AND_JSEE [A] BouncyCastle JCE provider unvailable | | +-- [5] BOUNCYCASTLE_JCE_AND_JSEE_FIPS [A] BouncyCastle JCE provider unvailable | | +-- [6] IAIK_JCE [A] IAIK JCE provider unvailable | | +-- [7] IAIK_JCE_AND_JSSE [A] IAIK JCE provider unvailable | | +-- [8] OPENJSSE [A] OPENJSSE provider unvailable | | +-- [9] WOLFCRYPT_WOLFSSL [A] Wolfcrypt JCE provider unvailable | | '-- [10] CONSCRYPT [A] Conscrypt provider unvailable | +-- testTrustStoreNullPasswordSupplied(TestSSLConfiguration) [OK] | | +-- [1] DEFAULT (SunJSSE) [OK] | | +-- [2] SYSTEM (SunJSSE) [OK] | | +-- [3] BOUNCYCASTLE_JCE [A] BouncyCastle JCE provider unvailable | | +-- [4] BOUNCYCASTLE_JCE_AND_JSEE [A] BouncyCastle JCE provider unvailable | | +-- [5] BOUNCYCASTLE_JCE_AND_JSEE_FIPS [A] BouncyCastle JCE provider unvailable | | +-- [6] IAIK_JCE [A] IAIK JCE provider unvailable | | +-- [7] IAIK_JCE_AND_JSSE [A] IAIK JCE provider unvailable | | +-- [8] OPENJSSE [A] OPENJSSE provider unvailable | | +-- [9] WOLFCRYPT_WOLFSSL [A] Wolfcrypt JCE provider unvailable | | '-- [10] CONSCRYPT [A] Conscrypt provider unvailable | '-- testTrustStoreNullPasswordSupplier(TestSSLConfiguration) [OK] | +-- [1] DEFAULT (SunJSSE) [OK] | +-- [2] SYSTEM (SunJSSE) [OK] | +-- [3] BOUNCYCASTLE_JCE [A] BouncyCastle JCE provider unvailable | +-- [4] BOUNCYCASTLE_JCE_AND_JSEE [A] BouncyCastle JCE provider unvailable | +-- [5] BOUNCYCASTLE_JCE_AND_JSEE_FIPS [A] BouncyCastle JCE provider unvailable | +-- [6] IAIK_JCE [A] IAIK JCE provider unvailable | +-- [7] IAIK_JCE_AND_JSSE [A] IAIK JCE provider unvailable | +-- [8] OPENJSSE [A] OPENJSSE provider unvailable | +-- [9] WOLFCRYPT_WOLFSSL [A] Wolfcrypt JCE provider unvailable | '-- [10] CONSCRYPT [A] Conscrypt provider unvailable +-- SNIHostnameCaptureTest [OK] | +-- testSNISuccessExpectDefault_YES_serverNullDefault_YES_clientEmptyDefault_NO(Test... [OK] | | +-- [1] DEFAULT (SunJSSE) [OK] | | +-- [2] SYSTEM (SunJSSE) [OK] | | +-- [3] BOUNCYCASTLE_JCE [A] BouncyCastle JCE provider unvailable | | +-- [4] BOUNCYCASTLE_JCE_AND_JSEE [A] BouncyCastle JCE provider unvailable | | +-- [5] BOUNCYCASTLE_JCE_AND_JSEE_FIPS [A] BouncyCastle JCE provider unvailable | | +-- [6] IAIK_JCE [A] IAIK JCE provider unvailable | | +-- [7] IAIK_JCE_AND_JSSE [A] IAIK JCE provider unvailable | | +-- [8] OPENJSSE [A] OPENJSSE provider unvailable | | +-- [9] WOLFCRYPT_WOLFSSL [A] Wolfcrypt JCE provider unvailable | | '-- [10] CONSCRYPT [A] Conscrypt provider unvailable | +-- testSNISuccessExpectDefault_YES_serverNullDefault_YES_clientEmptyDefault_YES(Tes... [OK] | | +-- [1] DEFAULT (SunJSSE) [OK] | | +-- [2] SYSTEM (SunJSSE) [OK] | | +-- [3] BOUNCYCASTLE_JCE [A] BouncyCastle JCE provider unvailable | | +-- [4] BOUNCYCASTLE_JCE_AND_JSEE [A] BouncyCastle JCE provider unvailable | | +-- [5] BOUNCYCASTLE_JCE_AND_JSEE_FIPS [A] BouncyCastle JCE provider unvailable | | +-- [6] IAIK_JCE [A] IAIK JCE provider unvailable | | +-- [7] IAIK_JCE_AND_JSSE [A] IAIK JCE provider unvailable | | +-- [8] OPENJSSE [A] OPENJSSE provider unvailable | | +-- [9] WOLFCRYPT_WOLFSSL [A] Wolfcrypt JCE provider unvailable | | '-- [10] CONSCRYPT [A] Conscrypt provider unvailable | +-- testSNISuccessExpectDefault_NO_serverNullDefault_YES_clientEmptyDefault_YES(Test... [OK] | | +-- [1] DEFAULT (SunJSSE) [OK] | | +-- [2] SYSTEM (SunJSSE) [OK] | | +-- [3] BOUNCYCASTLE_JCE [A] BouncyCastle JCE provider unvailable | | +-- [4] BOUNCYCASTLE_JCE_AND_JSEE [A] BouncyCastle JCE provider unvailable | | +-- [5] BOUNCYCASTLE_JCE_AND_JSEE_FIPS [A] BouncyCastle JCE provider unvailable | | +-- [6] IAIK_JCE [A] IAIK JCE provider unvailable | | +-- [7] IAIK_JCE_AND_JSSE [A] IAIK JCE provider unvailable | | +-- [8] OPENJSSE [A] OPENJSSE provider unvailable | | +-- [9] WOLFCRYPT_WOLFSSL [A] Wolfcrypt JCE provider unvailable | | '-- [10] CONSCRYPT [A] Conscrypt provider unvailable | +-- testSNISuccessExpectDefault_NO_serverNullDefault_YES_clientEmptyDefault_NO(TestS... [OK] | | +-- [1] DEFAULT (SunJSSE) [OK] | | +-- [2] SYSTEM (SunJSSE) [OK] | | +-- [3] BOUNCYCASTLE_JCE [A] BouncyCastle JCE provider unvailable | | +-- [4] BOUNCYCASTLE_JCE_AND_JSEE [A] BouncyCastle JCE provider unvailable | | +-- [5] BOUNCYCASTLE_JCE_AND_JSEE_FIPS [A] BouncyCastle JCE provider unvailable | | +-- [6] IAIK_JCE [A] IAIK JCE provider unvailable | | +-- [7] IAIK_JCE_AND_JSSE [A] IAIK JCE provider unvailable | | +-- [8] OPENJSSE [A] OPENJSSE provider unvailable | | +-- [9] WOLFCRYPT_WOLFSSL [A] Wolfcrypt JCE provider unvailable | | '-- [10] CONSCRYPT [A] Conscrypt provider unvailable | +-- testSNISuccessExpectDefault_YES_serverNullDefault_NO_clientEmptyDefault_YES(Test... [OK] | | +-- [1] DEFAULT (SunJSSE) [OK] | | +-- [2] SYSTEM (SunJSSE) [OK] | | +-- [3] BOUNCYCASTLE_JCE [A] BouncyCastle JCE provider unvailable | | +-- [4] BOUNCYCASTLE_JCE_AND_JSEE [A] BouncyCastle JCE provider unvailable | | +-- [5] BOUNCYCASTLE_JCE_AND_JSEE_FIPS [A] BouncyCastle JCE provider unvailable | | +-- [6] IAIK_JCE [A] IAIK JCE provider unvailable | | +-- [7] IAIK_JCE_AND_JSSE [A] IAIK JCE provider unvailable | | +-- [8] OPENJSSE [A] OPENJSSE provider unvailable | | +-- [9] WOLFCRYPT_WOLFSSL [A] Wolfcrypt JCE provider unvailable | | '-- [10] CONSCRYPT [A] Conscrypt provider unvailable | +-- testWonkySSLSocket() [OK] | +-- testSNISuccessExpectDefault_YES_serverNullDefault_NO_clientEmptyDefault_NO(TestS... [OK] | | +-- [1] DEFAULT (SunJSSE) [OK] | | +-- [2] SYSTEM (SunJSSE) [OK] | | +-- [3] BOUNCYCASTLE_JCE [A] BouncyCastle JCE provider unvailable | | +-- [4] BOUNCYCASTLE_JCE_AND_JSEE [A] BouncyCastle JCE provider unvailable | | +-- [5] BOUNCYCASTLE_JCE_AND_JSEE_FIPS [A] BouncyCastle JCE provider unvailable | | +-- [6] IAIK_JCE [A] IAIK JCE provider unvailable | | +-- [7] IAIK_JCE_AND_JSSE [A] IAIK JCE provider unvailable | | +-- [8] OPENJSSE [A] OPENJSSE provider unvailable | | +-- [9] WOLFCRYPT_WOLFSSL [A] Wolfcrypt JCE provider unvailable | | '-- [10] CONSCRYPT [A] Conscrypt provider unvailable | +-- testSNISuccessExpectDefault_NO_serverNullDefault_NO_clientEmptyDefault_NO(TestSS... [OK] | | +-- [1] DEFAULT (SunJSSE) [OK] | | +-- [2] SYSTEM (SunJSSE) [OK] | | +-- [3] BOUNCYCASTLE_JCE [A] BouncyCastle JCE provider unvailable | | +-- [4] BOUNCYCASTLE_JCE_AND_JSEE [A] BouncyCastle JCE provider unvailable | | +-- [5] BOUNCYCASTLE_JCE_AND_JSEE_FIPS [A] BouncyCastle JCE provider unvailable | | +-- [6] IAIK_JCE [A] IAIK JCE provider unvailable | | +-- [7] IAIK_JCE_AND_JSSE [A] IAIK JCE provider unvailable | | +-- [8] OPENJSSE [A] OPENJSSE provider unvailable | | +-- [9] WOLFCRYPT_WOLFSSL [A] Wolfcrypt JCE provider unvailable | | '-- [10] CONSCRYPT [A] Conscrypt provider unvailable | '-- testSNISuccessExpectDefault_NO_serverNullDefault_NO_clientEmptyDefault_YES(TestS... [OK] | +-- [1] DEFAULT (SunJSSE) [OK] | +-- [2] SYSTEM (SunJSSE) [OK] | +-- [3] BOUNCYCASTLE_JCE [A] BouncyCastle JCE provider unvailable | +-- [4] BOUNCYCASTLE_JCE_AND_JSEE [A] BouncyCastle JCE provider unvailable | +-- [5] BOUNCYCASTLE_JCE_AND_JSEE_FIPS [A] BouncyCastle JCE provider unvailable | +-- [6] IAIK_JCE [A] IAIK JCE provider unvailable | +-- [7] IAIK_JCE_AND_JSSE [A] IAIK JCE provider unvailable | +-- [8] OPENJSSE [A] OPENJSSE provider unvailable | +-- [9] WOLFCRYPT_WOLFSSL [A] Wolfcrypt JCE provider unvailable | '-- [10] CONSCRYPT [A] Conscrypt provider unvailable '-- ValidatingX509TrustManagerTest [OK] +-- testInspectTrustedCertificateNotExpired(TestSSLConfiguration) [OK] | +-- [1] DEFAULT (SunJSSE) [OK] | +-- [2] SYSTEM (SunJSSE) [OK] | +-- [3] BOUNCYCASTLE_JCE [A] BouncyCastle JCE provider unvailable | +-- [4] BOUNCYCASTLE_JCE_AND_JSEE [A] BouncyCastle JCE provider unvailable | +-- [5] BOUNCYCASTLE_JCE_AND_JSEE_FIPS [A] BouncyCastle JCE provider unvailable | +-- [6] IAIK_JCE [A] IAIK JCE provider unvailable | +-- [7] IAIK_JCE_AND_JSSE [A] IAIK JCE provider unvailable | +-- [8] OPENJSSE [A] OPENJSSE provider unvailable | +-- [9] WOLFCRYPT_WOLFSSL [A] Wolfcrypt JCE provider unvailable | '-- [10] CONSCRYPT [A] Conscrypt provider unvailable +-- testInspectTrustedClientCertificateExpiredNested(TestSSLConfiguration) [OK] | +-- [1] DEFAULT (SunJSSE) [OK] | +-- [2] SYSTEM (SunJSSE) [OK] | +-- [3] BOUNCYCASTLE_JCE [A] BouncyCastle JCE provider unvailable | +-- [4] BOUNCYCASTLE_JCE_AND_JSEE [A] BouncyCastle JCE provider unvailable | +-- [5] BOUNCYCASTLE_JCE_AND_JSEE_FIPS [A] BouncyCastle JCE provider unvailable | +-- [6] IAIK_JCE [A] IAIK JCE provider unvailable | +-- [7] IAIK_JCE_AND_JSSE [A] IAIK JCE provider unvailable | +-- [8] OPENJSSE [A] OPENJSSE provider unvailable | +-- [9] WOLFCRYPT_WOLFSSL [A] Wolfcrypt JCE provider unvailable | '-- [10] CONSCRYPT [A] Conscrypt provider unvailable +-- testInspectTrustedCertificateExpiredNestedFilter(TestSSLConfiguration) [OK] | +-- [1] DEFAULT (SunJSSE) [OK] | +-- [2] SYSTEM (SunJSSE) [OK] | +-- [3] BOUNCYCASTLE_JCE [A] BouncyCastle JCE provider unvailable | +-- [4] BOUNCYCASTLE_JCE_AND_JSEE [A] BouncyCastle JCE provider unvailable | +-- [5] BOUNCYCASTLE_JCE_AND_JSEE_FIPS [A] BouncyCastle JCE provider unvailable | +-- [6] IAIK_JCE [A] IAIK JCE provider unvailable | +-- [7] IAIK_JCE_AND_JSSE [A] IAIK JCE provider unvailable | +-- [8] OPENJSSE [A] OPENJSSE provider unvailable | +-- [9] WOLFCRYPT_WOLFSSL [A] Wolfcrypt JCE provider unvailable | '-- [10] CONSCRYPT [A] Conscrypt provider unvailable +-- testInspectTrustedCertificateExpiredNested(TestSSLConfiguration) [OK] | +-- [1] DEFAULT (SunJSSE) [OK] | +-- [2] SYSTEM (SunJSSE) [OK] | +-- [3] BOUNCYCASTLE_JCE [A] BouncyCastle JCE provider unvailable | +-- [4] BOUNCYCASTLE_JCE_AND_JSEE [A] BouncyCastle JCE provider unvailable | +-- [5] BOUNCYCASTLE_JCE_AND_JSEE_FIPS [A] BouncyCastle JCE provider unvailable | +-- [6] IAIK_JCE [A] IAIK JCE provider unvailable | +-- [7] IAIK_JCE_AND_JSSE [A] IAIK JCE provider unvailable | +-- [8] OPENJSSE [A] OPENJSSE provider unvailable | +-- [9] WOLFCRYPT_WOLFSSL [A] Wolfcrypt JCE provider unvailable | '-- [10] CONSCRYPT [A] Conscrypt provider unvailable +-- testInspectTrustedCertificateExpired(TestSSLConfiguration) [OK] | +-- [1] DEFAULT (SunJSSE) [OK] | +-- [2] SYSTEM (SunJSSE) [OK] | +-- [3] BOUNCYCASTLE_JCE [A] BouncyCastle JCE provider unvailable | +-- [4] BOUNCYCASTLE_JCE_AND_JSEE [A] BouncyCastle JCE provider unvailable | +-- [5] BOUNCYCASTLE_JCE_AND_JSEE_FIPS [A] BouncyCastle JCE provider unvailable | +-- [6] IAIK_JCE [A] IAIK JCE provider unvailable | +-- [7] IAIK_JCE_AND_JSSE [A] IAIK JCE provider unvailable | +-- [8] OPENJSSE [A] OPENJSSE provider unvailable | +-- [9] WOLFCRYPT_WOLFSSL [A] Wolfcrypt JCE provider unvailable | '-- [10] CONSCRYPT [A] Conscrypt provider unvailable +-- testInspectTrustedClientCertificate(TestSSLConfiguration) [OK] | +-- [1] DEFAULT (SunJSSE) [OK] | +-- [2] SYSTEM (SunJSSE) [OK] | +-- [3] BOUNCYCASTLE_JCE [A] BouncyCastle JCE provider unvailable | +-- [4] BOUNCYCASTLE_JCE_AND_JSEE [A] BouncyCastle JCE provider unvailable | +-- [5] BOUNCYCASTLE_JCE_AND_JSEE_FIPS [A] BouncyCastle JCE provider unvailable | +-- [6] IAIK_JCE [A] IAIK JCE provider unvailable | +-- [7] IAIK_JCE_AND_JSSE [A] IAIK JCE provider unvailable | +-- [8] OPENJSSE [A] OPENJSSE provider unvailable | +-- [9] WOLFCRYPT_WOLFSSL [A] Wolfcrypt JCE provider unvailable | '-- [10] CONSCRYPT [A] Conscrypt provider unvailable '-- testInspectTrustedClientCertificateExpired(TestSSLConfiguration) [OK] +-- [1] DEFAULT (SunJSSE) [OK] +-- [2] SYSTEM (SunJSSE) [OK] +-- [3] BOUNCYCASTLE_JCE [A] BouncyCastle JCE provider unvailable +-- [4] BOUNCYCASTLE_JCE_AND_JSEE [A] BouncyCastle JCE provider unvailable +-- [5] BOUNCYCASTLE_JCE_AND_JSEE_FIPS [A] BouncyCastle JCE provider unvailable +-- [6] IAIK_JCE [A] IAIK JCE provider unvailable +-- [7] IAIK_JCE_AND_JSSE [A] IAIK JCE provider unvailable +-- [8] OPENJSSE [A] OPENJSSE provider unvailable +-- [9] WOLFCRYPT_WOLFSSL [A] Wolfcrypt JCE provider unvailable '-- [10] CONSCRYPT [A] Conscrypt provider unvailable Test run finished after 4438 ms [ 52 containers found ] [ 0 containers skipped ] [ 52 containers started ] [ 0 containers aborted ] [ 52 containers successful ] [ 0 containers failed ] [ 472 tests found ] [ 0 tests skipped ] [ 472 tests started ] [ 376 tests aborted ] [ 96 tests successful ] [ 0 tests failed ] Testing "junixsocket-darwin"... KernelControlNamesTest.testStandardKernelControlNames()... Resolved control names 0/23 Testing "junixsocket-darwin"... done . '-- JUnit Jupiter [OK] +-- KernelControlNamesTest [OK] | '-- testStandardKernelControlNames() [OK] '-- UtunTest [OK] '-- testTunnelPingPong() [S] Does not satisfy rule: root=REQUIRED Test run finished after 21 ms [ 3 containers found ] [ 0 containers skipped ] [ 3 containers started ] [ 0 containers aborted ] [ 3 containers successful ] [ 0 containers failed ] [ 2 tests found ] [ 1 tests skipped ] [ 1 tests started ] [ 0 tests aborted ] [ 1 tests successful ] [ 0 tests failed ] Skipping optional module: junixsocket-common.JavaInet; enable by launching with -Dselftest.enable-module.junixsocket-common.JavaInet=true (consult documentation first) Skipping optional module: junixsocket-common.JEP380; enable by launching with -Dselftest.enable-module.junixsocket-common.JEP380=true (consult documentation first) Skipping optional module: junixsocket-mysql; enable by launching with -Dselftest.enable-module.junixsocket-mysql=true (consult documentation first) Selftest results: PASS junixsocket-common 144/176 (32 skipped) PASS junixsocket-tipc 0/88 (88 skipped) PASS junixsocket-vsock 1/75 (74 skipped) PASS junixsocket-rmi 6/12 (6 skipped) PASS junixsocket-ssl 472/472 PASS junixsocket-darwin 1/2 (1 skipped) Supported capabilities: [CAPABILITY_PEER_CREDENTIALS, CAPABILITY_UNIX_DOMAIN, CAPABILITY_ZERO_LENGTH_SEND, CAPABILITY_LARGE_PORTS] Unsupported capabilities: [CAPABILITY_ANCILLARY_MESSAGES, CAPABILITY_FILE_DESCRIPTORS, CAPABILITY_ABSTRACT_NAMESPACE, CAPABILITY_UNIX_DATAGRAMS, CAPABILITY_NATIVE_SOCKETPAIR, CAPABILITY_FD_AS_REDIRECT, CAPABILITY_TIPC, CAPABILITY_VSOCK, CAPABILITY_VSOCK_DGRAM, CAPABILITY_UNSAFE, CAPABILITY_DARWIN] Selftest PASSED

Notes When debugging the shutdown hook in NativeLibraryLoader I have verified that the java.exe is still holding the DLL. This in turn produces AccessDeniedExpection, but because JVM is using the broken File.delete() there is no output and the file stays behind.

I would be happy for any solution that does not create copies of the DLL. There seems to be some option to force override the library, but I have no idea how to get a copy of the lib in Maven build, to package it with my project.

kohlschuetter commented 2 months ago

Thanks for reporting, @sutr90!

It appears that the JVM doesn't bother handling the edge-case of deleting temporary DLLs on Windows. The DLL is still considered loaded when the shutdown hook runs. The special shutdown hook that runs upon "File.deleteOnExit" could be deferred to a point when the DLLs are unloaded, but that doesn't appear to be the case.

There's not much we can do in that case to prevent leaving these files in the temp folder, other than perhaps poking really hard into native Win32 code via the DLL itself, but that obviously comes with a risk of crashing the JVM...

However, we can clean up afterwards when running another JVM with junixsocket, which is what the above commit is supposed to be doing.

Can you please verify that this works for you? Cheers!

https://oss.sonatype.org/content/repositories/snapshots/com/kohlschutter/junixsocket/junixsocket-selftest/2.10.1-SNAPSHOT/junixsocket-selftest-2.10.1-20240826.172554-3-jar-with-dependencies.jar

sutr90 commented 2 months ago

Confirmed working!

Thanks for the quick turnaround on this. The code works as described, on startup the stale DLLs are removed.