@@ -930,12 +930,8 @@ private static class KeyManagerImpl extends X509ExtendedKeyManager {
930930
931931 @ Override
932932 public String chooseEngineClientAlias (String [] keyType , java .security .Principal [] issuers , javax .net .ssl .SSLEngine engine ) {
933- if (internalContext == null ) {
934- return null ;
935- }
936- if (internalContext .privateKey == null ) {
937- return null ;
938- }
933+ if (internalContext .privateKey == null ) return null ;
934+
939935 for (int i = 0 ; i < keyType .length ; i ++) {
940936 if (keyType [i ].equalsIgnoreCase (internalContext .keyAlgorithm )) {
941937 return keyType [i ];
@@ -946,9 +942,8 @@ public String chooseEngineClientAlias(String[] keyType, java.security.Principal[
946942
947943 @ Override
948944 public String chooseEngineServerAlias (String keyType , java .security .Principal [] issuers , javax .net .ssl .SSLEngine engine ) {
949- if (internalContext == null || internalContext .privateKey == null ) {
950- return null ;
951- }
945+ if (internalContext .privateKey == null ) return null ;
946+
952947 if (keyType .equalsIgnoreCase (internalContext .keyAlgorithm )) {
953948 return keyType ;
954949 }
@@ -967,9 +962,8 @@ public String chooseServerAlias(String keyType, java.security.Principal[] issuer
967962
968963 @ Override // c: ssl3_output_cert_chain
969964 public java .security .cert .X509Certificate [] getCertificateChain (String alias ) {
970- if ( internalContext == null ) return null ;
971-
972965 final List <java .security .cert .X509Certificate > chain ;
966+
973967 if ( internalContext .extraChainCert != null ) {
974968 chain = (List ) internalContext .extraChainCert ;
975969 }
@@ -1015,10 +1009,7 @@ public String[] getClientAliases(String keyType, java.security.Principal[] issue
10151009
10161010 @ Override
10171011 public java .security .PrivateKey getPrivateKey (String alias ) {
1018- if (internalContext == null || internalContext .privateKey == null ) {
1019- return null ;
1020- }
1021- return internalContext .privateKey ;
1012+ return internalContext .privateKey ; // might be null
10221013 }
10231014
10241015 @ Override
@@ -1049,16 +1040,12 @@ public void checkServerTrusted(java.security.cert.X509Certificate[] chain, Strin
10491040
10501041 @ Override
10511042 public java .security .cert .X509Certificate [] getAcceptedIssuers () {
1052- if ( internalContext == null ) return null ;
1053-
10541043 final int size = internalContext .clientCert .size ();
10551044 return internalContext .clientCert .toArray ( new java .security .cert .X509Certificate [size ] );
10561045 }
10571046
10581047 // c: ssl_verify_cert_chain
10591048 private void checkTrusted (final String purpose , final X509Certificate [] chain ) throws CertificateException {
1060- if ( internalContext == null ) throw new CertificateException ("uninitialized trust manager" );
1061-
10621049 if ( chain != null && chain .length > 0 ) {
10631050 if ( (internalContext .verifyMode & SSL .VERIFY_PEER ) != 0 ) {
10641051 // verify_peer
0 commit comments