You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@tomcat.apache.org by bu...@apache.org on 2004/10/19 06:21:54 UTC

DO NOT REPLY [Bug 31766] New: - Error getting client certificate under iPlanet 6.1/Tomact 5.0.28

DO NOT REPLY TO THIS EMAIL, BUT PLEASE POST YOUR BUG 
RELATED COMMENTS THROUGH THE WEB INTERFACE AVAILABLE AT
<http://issues.apache.org/bugzilla/show_bug.cgi?id=31766>.
ANY REPLY MADE TO THIS MESSAGE WILL NOT BE COLLECTED AND 
INSERTED IN THE BUG DATABASE.

http://issues.apache.org/bugzilla/show_bug.cgi?id=31766

Error getting client certificate under iPlanet 6.1/Tomact 5.0.28

           Summary: Error getting client certificate under iPlanet
                    6.1/Tomact 5.0.28
           Product: Tomcat 5
           Version: 5.0.28
          Platform: PC
        OS/Version: Windows XP
            Status: NEW
          Severity: Major
          Priority: Other
         Component: Native:JK
        AssignedTo: tomcat-dev@jakarta.apache.org
        ReportedBy: nclement@qvalent.com


This bug seems to be basically the same as 15790, but under 5.0.28.  I am 
using Sun One Webserver 6.1 (the latest incarnation of Netscape iPlanet) with 
1.2.6 of JK.  Tomcat 5.0.28 is running under Sun's J2SDK 1.4.2_05

I apologise if this is a duplicate of an existing bug.

When I try to get the client certificate from the request using the code 
below, I get an exception.  This code is called from a JSP.

    java.security.cert.X509Certificate[] certs = 
        (java.security.cert.X509Certificate[])
            request.getAttribute( "javax.servlet.request.X509Certificate" );


SEVERE: Certificate convertion failed
java.security.cert.CertificateException: Unable to initialize, 
java.io.IOException: insufficient data
        at sun.security.x509.X509CertImpl.<init>(X509CertImpl.java:300)
        at sun.security.provider.X509Factory.engineGenerateCertificate
(X509Factory.java:104)
        at java.security.cert.CertificateFactory.generateCertificate
(CertificateFactory.java:389)
        at org.apache.jk.server.JkCoyoteHandler.action
(JkCoyoteHandler.java:478)
        at org.apache.coyote.Request.action(Request.java:367)
        at org.apache.coyote.tomcat5.CoyoteRequest.getAttribute
(CoyoteRequest.java:934)
        at org.apache.coyote.tomcat5.CoyoteRequestFacade.getAttribute
(CoyoteRequestFacade.java:214)
        at org.apache.jsp.icc.cert_jsp._jspService(cert_jsp.java:50)
        at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:94)
        at javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
        at org.apache.jasper.servlet.JspServletWrapper.service
(JspServletWrapper.java:324)
        at org.apache.jasper.servlet.JspServlet.serviceJspFile
(JspServlet.java:292)
        at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:236)
        at javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
        at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter
(ApplicationFilterChain.java:237)
        at org.apache.catalina.core.ApplicationFilterChain.doFilter
(ApplicationFilterChain.java:157)
        at org.apache.catalina.core.StandardWrapperValve.invoke
(StandardWrapperValve.java:214)
        at org.apache.catalina.core.StandardValveContext.invokeNext
(StandardValveContext.java:104)
        at org.apache.catalina.core.StandardPipeline.invoke
(StandardPipeline.java:520)
        at org.apache.catalina.core.StandardContextValve.invokeInternal
(StandardContextValve.java:198)
        at org.apache.catalina.core.StandardContextValve.invoke
(StandardContextValve.java:152)
        at org.apache.catalina.core.StandardValveContext.invokeNext
(StandardValveContext.java:104)
        at org.apache.catalina.core.StandardPipeline.invoke
(StandardPipeline.java:520)
        at org.apache.catalina.core.StandardHostValve.invoke
(StandardHostValve.java:137)
        at org.apache.catalina.core.StandardValveContext.invokeNext
(StandardValveContext.java:104)
        at org.apache.catalina.valves.ErrorReportValve.invoke
(ErrorReportValve.java:118)
        at org.apache.catalina.core.StandardValveContext.invokeNext
(StandardValveContext.java:102)
        at org.apache.catalina.core.StandardPipeline.invoke
(StandardPipeline.java:520)
        at org.apache.catalina.core.StandardEngineValve.invoke
(StandardEngineValve.java:109)
        at org.apache.catalina.core.StandardValveContext.invokeNext
(StandardValveContext.java:104)
        at org.apache.catalina.core.StandardPipeline.invoke
(StandardPipeline.java:520)
        at org.apache.catalina.core.ContainerBase.invoke
(ContainerBase.java:929)
        at org.apache.coyote.tomcat5.CoyoteAdapter.service
(CoyoteAdapter.java:160)
        at org.apache.jk.server.JkCoyoteHandler.invoke
(JkCoyoteHandler.java:300)
        at org.apache.jk.common.HandlerRequest.invoke(HandlerRequest.java:374)
        at org.apache.jk.common.ChannelSocket.invoke(ChannelSocket.java:743)
        at org.apache.jk.common.ChannelSocket.processConnection
(ChannelSocket.java:675)
        at org.apache.jk.common.SocketConnection.runIt(ChannelSocket.java:866)
        at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run
(ThreadPool.java:683)
        at java.lang.Thread.run(Thread.java:534)
Caused by: java.io.IOException: insufficient data
        at sun.security.util.DerInputBuffer.truncate(DerInputBuffer.java:108)
        at sun.security.util.DerValue.<init>(DerValue.java:261)
        at sun.security.util.DerInputStream.getDerValue
(DerInputStream.java:386)
        at sun.security.x509.X509CertImpl.parse(X509CertImpl.java:1658)
        at sun.security.x509.X509CertImpl.<init>(X509CertImpl.java:297)
        ... 39 more

Thanks!

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