jfclere     01/09/14 07:26:39

  Modified:    jk/java/org/apache/ajp Ajp13.java
  Log:
  Arrange javax.servlet.request.X509Certificate so that it follows SRV4.7
  2.3 Spec's.
  
  Revision  Changes    Path
  1.13      +18 -2     jakarta-tomcat-connectors/jk/java/org/apache/ajp/Ajp13.java
  
  Index: Ajp13.java
  ===================================================================
  RCS file: /home/cvs/jakarta-tomcat-connectors/jk/java/org/apache/ajp/Ajp13.java,v
  retrieving revision 1.12
  retrieving revision 1.13
  diff -u -r1.12 -r1.13
  --- Ajp13.java        2001/09/14 11:15:00     1.12
  +++ Ajp13.java        2001/09/14 14:26:38     1.13
  @@ -65,6 +65,7 @@
   import java.io.OutputStream;
   import java.net.Socket;
   import java.util.Enumeration;
  +import javax.security.cert.X509Certificate;
   
   import org.apache.tomcat.util.buf.MessageBytes;
   import org.apache.tomcat.util.buf.ByteChunk;
  @@ -402,8 +403,23 @@
                
            case SC_A_SSL_CERT     :
                isSSL = true;
  -             req.setAttribute("javax.servlet.request.X509Certificate",
  -                              msg.getString());
  +                // Transform the string into certificate.
  +                String certString = msg.getString();
  +                byte[] certData = certString.getBytes();
  + 
  +                // Fill the first element.
  +                X509Certificate jsseCerts[] = null;
  +                try {
  +                    X509Certificate cert =
  +                        X509Certificate.getInstance(certData);
  +                    jsseCerts =  new X509Certificate[1];
  +                    jsseCerts[0] = cert;
  +                } catch(javax.security.cert.CertificateException e) {
  +                    logger.log("Certificate convertion failed" + e );
  +                }
  + 
  +                req.setAttribute("javax.servlet.request.X509Certificate",
  +                                 jsseCerts);
                   break;
                
            case SC_A_SSL_CIPHER   :
  
  
  

Reply via email to