You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@tomcat.apache.org by fh...@apache.org on 2008/11/25 19:00:43 UTC

svn commit: r720553 - in /tomcat/trunk/java/org/apache: coyote/http11/Http11NioProtocol.java tomcat/util/net/NioEndpoint.java

Author: fhanik
Date: Tue Nov 25 10:00:43 2008
New Revision: 720553

URL: http://svn.apache.org/viewvc?rev=720553&view=rev
Log:
Implement setter for keyalias, not used yet

Modified:
    tomcat/trunk/java/org/apache/coyote/http11/Http11NioProtocol.java
    tomcat/trunk/java/org/apache/tomcat/util/net/NioEndpoint.java

Modified: tomcat/trunk/java/org/apache/coyote/http11/Http11NioProtocol.java
URL: http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/coyote/http11/Http11NioProtocol.java?rev=720553&r1=720552&r2=720553&view=diff
==============================================================================
--- tomcat/trunk/java/org/apache/coyote/http11/Http11NioProtocol.java (original)
+++ tomcat/trunk/java/org/apache/coyote/http11/Http11NioProtocol.java Tue Nov 25 10:00:43 2008
@@ -545,6 +545,10 @@
     public void setKeystore(String s) { setKeystoreFile(s);}
     public String getKeystore(){ return getKeystoreFile();}
     
+    public String getKeyAlias() { return ep.getKeyAlias();}
+    public void setKeyAlias(String s ) { ep.setKeyAlias(s);}
+
+    
     public String getAlgorithm() { return ep.getAlgorithm();}
     public void setAlgorithm(String s ) { ep.setAlgorithm(s);}
     

Modified: tomcat/trunk/java/org/apache/tomcat/util/net/NioEndpoint.java
URL: http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/tomcat/util/net/NioEndpoint.java?rev=720553&r1=720552&r2=720553&view=diff
==============================================================================
--- tomcat/trunk/java/org/apache/tomcat/util/net/NioEndpoint.java (original)
+++ tomcat/trunk/java/org/apache/tomcat/util/net/NioEndpoint.java Tue Nov 25 10:00:43 2008
@@ -44,16 +44,20 @@
 import java.util.concurrent.TimeUnit;
 import java.util.concurrent.atomic.AtomicInteger;
 import java.util.concurrent.atomic.AtomicLong;
+
+import javax.net.ssl.KeyManager;
 import javax.net.ssl.KeyManagerFactory;
 import javax.net.ssl.SSLContext;
 import javax.net.ssl.SSLEngine;
 import javax.net.ssl.TrustManagerFactory;
+import javax.net.ssl.X509KeyManager;
 
 import org.apache.juli.logging.Log;
 import org.apache.juli.logging.LogFactory;
 import org.apache.tomcat.util.IntrospectionUtils;
 import org.apache.tomcat.util.net.JIoEndpoint.Worker;
 import org.apache.tomcat.util.net.SecureNioChannel.ApplicationBufferHandler;
+import org.apache.tomcat.util.net.jsse.JSSEKeyManager;
 import org.apache.tomcat.util.res.StringManager;
 
 /**
@@ -571,6 +575,11 @@
     }
     public void setKeystore(String s ) { setKeystoreFile(s);}
     public String getKeystore() { return getKeystoreFile();}
+
+    String keyAlias = null;
+    public String getKeyAlias() { return keyAlias;}
+    public void setKeyAlias(String s ) { keyAlias = s;}
+    
     
     protected String algorithm = "SunX509";
     public String getAlgorithm() { return algorithm;}
@@ -776,8 +785,8 @@
             ks.load(new FileInputStream(getKeystoreFile()), passphrase);
             KeyStore ts = null;
             if (getTruststoreFile()==null) {
-                ts = KeyStore.getInstance(getKeystoreType());
-                ts.load(new FileInputStream(getKeystoreFile()), passphrase);
+//                ts = KeyStore.getInstance(getKeystoreType());
+//                ts.load(new FileInputStream(getKeystoreFile()), passphrase);
             }else {
                 ts = KeyStore.getInstance(ttype);
                 ts.load(new FileInputStream(getTruststoreFile()), tpassphrase);
@@ -790,7 +799,7 @@
             tmf.init(ts);
 
             sslContext = SSLContext.getInstance(getSslProtocol());
-            sslContext.init(kmf.getKeyManagers(), tmf.getTrustManagers(), null);
+            sslContext.init(wrap(kmf.getKeyManagers()), tmf.getTrustManagers(), null);
         }
         
         if (oomParachute>0) reclaimParachute(true);
@@ -798,6 +807,20 @@
         initialized = true;
 
     }
+    
+    public KeyManager[] wrap(KeyManager[] managers) {
+        return managers;
+//        if (managers==null) return null;
+//        KeyManager[] result = new KeyManager[managers.length];
+//        for (int i=0; i<result.length; i++) {
+//            if (managers[i] instanceof X509KeyManager && getKeyAlias()!=null) {
+//                result[i] = new JSSEKeyManager((X509KeyManager)managers[i],getKeyAlias());
+//            } else {
+//                result[i] = managers[i];
+//            }
+//        }
+//        return result;
+    }
 
 
     /**



---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@tomcat.apache.org
For additional commands, e-mail: dev-help@tomcat.apache.org