Uploaded image for project: 'James Protocols'
  1. James Protocols
  2. PROTOCOLS-113

Unit tests errors due to SSL certificates

    XMLWordPrintableJSON

Details

    • Bug
    • Status: Closed
    • Major
    • Resolution: Cannot Reproduce
    • None
    • None
    • None
    • None

    Description

      While running unit tests from command line before a PR, I had trubbles on trunk with unit tests.

      Using mvn clean install, I get errors in protocols/smtp , protocols/lmtp / pop3 :

      For example in class NettyPOP3ServerTest :

      UNKNOWN SERVER CERTIFICATE: CN=securechat.example.netty.gleamynode.net, OU=Contributors, O=The Netty Project, L=Seongnam-si, ST=Kyunggi-do, C=KR
      javax.net.ssl.SSLException: SSLEngine is closing/closed
      at sun.security.ssl.SSLEngineImpl.kickstartHandshake(SSLEngineImpl.java:713)
      at sun.security.ssl.SSLEngineImpl.beginHandshake(SSLEngineImpl.java:756)
      at org.jboss.netty.handler.ssl.SslHandler.handshake(SslHandler.java:358)
      at org.jboss.netty.handler.ssl.SslHandler.unwrap(SslHandler.java:927)
      at org.jboss.netty.handler.ssl.SslHandler.closeOutboundAndChannel(SslHandler.java:1119)
      at org.jboss.netty.handler.ssl.SslHandler.handleDownstream(SslHandler.java:453)
      at org.jboss.netty.handler.stream.ChunkedWriteHandler.handleDownstream(ChunkedWriteHandler.java:109)
      at org.jboss.netty.channel.Channels.close(Channels.java:714)
      at org.jboss.netty.channel.AbstractChannel.close(AbstractChannel.java:194)
      at org.jboss.netty.channel.group.DefaultChannelGroup.close(DefaultChannelGroup.java:184)
      at org.apache.james.protocols.netty.AbstractAsyncServer.unbind(AbstractAsyncServer.java:134)
      at org.apache.james.protocols.pop3.AbstractPOP3ServerTest.testInvalidAuth(AbstractPOP3ServerTest.java:83)
      at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
      at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
      at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
      at java.lang.reflect.Method.invoke(Method.java:497)
      at org.junit.runners.model.FrameworkMethod$1.runReflectiveCall(FrameworkMethod.java:45)
      at org.junit.internal.runners.model.ReflectiveCallable.run(ReflectiveCallable.java:15)
      at org.junit.runners.model.FrameworkMethod.invokeExplosively(FrameworkMethod.java:42)
      at org.junit.internal.runners.statements.InvokeMethod.evaluate(InvokeMethod.java:20)
      at org.junit.runners.ParentRunner.runLeaf(ParentRunner.java:263)
      at org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:68)
      at org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:47)
      at org.junit.runners.ParentRunner$3.run(ParentRunner.java:231)
      at org.junit.runners.ParentRunner$1.schedule(ParentRunner.java:60)
      at org.junit.runners.ParentRunner.runChildren(ParentRunner.java:229)
      Id='264024021' User='' Unable to process request args=[]
      Id='264024021' User='' Unable to process request args=[]
      at org.junit.runners.ParentRunner.access$000(ParentRunner.java:50)
      at org.junit.runners.ParentRunner$2.evaluate(ParentRunner.java:222)
      at org.junit.runners.ParentRunner.run(ParentRunner.java:300)
      at org.junit.runners.Suite.runChild(Suite.java:128)
      at org.junit.runners.Suite.runChild(Suite.java:24)
      at org.junit.runners.ParentRunner$3.run(ParentRunner.java:231)
      at org.junit.runners.ParentRunner$1.schedule(ParentRunner.java:60)
      at org.junit.runners.ParentRunner.runChildren(ParentRunner.java:229)
      at org.junit.runners.ParentRunner.access$000(ParentRunner.java:50)
      at org.junit.runners.ParentRunner$2.evaluate(ParentRunner.java:222)
      at org.junit.runners.ParentRunner.run(ParentRunner.java:300)
      at org.junit.runner.JUnitCore.run(JUnitCore.java:157)
      at com.intellij.junit4.JUnit4IdeaTestRunner.startRunnerWithArgs(JUnit4IdeaTestRunner.java:78)
      at com.intellij.rt.execution.junit.JUnitStarter.prepareStreamsAndStart(JUnitStarter.java:212)
      at com.intellij.rt.execution.junit.JUnitStarter.main(JUnitStarter.java:68)
      at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
      at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
      at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
      at java.lang.reflect.Method.invoke(Method.java:497)
      at com.intellij.rt.execution.application.AppMain.main(AppMain.java:140)
      java.nio.channels.ClosedChannelException
      at org.jboss.netty.channel.socket.nio.NioWorker.cleanUpWriteBuffer(NioWorker.java:639)
      at org.jboss.netty.channel.socket.nio.NioWorker.close(NioWorker.java:595)
      at org.jboss.netty.channel.socket.nio.NioServerSocketPipelineSink.handleAcceptedSocket(NioServerSocketPipelineSink.java:111)
      at org.jboss.netty.channel.socket.nio.NioServerSocketPipelineSink.eventSunk(NioServerSocketPipelineSink.java:68)
      at org.jboss.netty.channel.Channels.close(Channels.java:730)
      at org.jboss.netty.handler.ssl.SslHandler$ClosingChannelFutureListener.operationComplete(SslHandler.java:1169)
      at org.jboss.netty.channel.CompleteChannelFuture.addListener(CompleteChannelFuture.java:48)
      at org.jboss.netty.handler.ssl.SslHandler.closeOutboundAndChannel(SslHandler.java:1129)
      at org.jboss.netty.handler.ssl.SslHandler.handleDownstream(SslHandler.java:453)
      at org.jboss.netty.handler.stream.ChunkedWriteHandler.handleDownstream(ChunkedWriteHandler.java:109)
      at org.jboss.netty.channel.Channels.close(Channels.java:714)
      at org.jboss.netty.channel.AbstractChannel.close(AbstractChannel.java:194)
      at org.jboss.netty.channel.ChannelFutureListener$1.operationComplete(ChannelFutureListener.java:41)
      at org.jboss.netty.channel.DefaultChannelFuture.notifyListener(DefaultChannelFuture.java:397)
      at org.jboss.netty.channel.DefaultChannelFuture.notifyListeners(DefaultChannelFuture.java:383)
      at org.jboss.netty.channel.DefaultChannelFuture.setSuccess(DefaultChannelFuture.java:332)
      at org.jboss.netty.channel.socket.nio.NioWorker.write0(NioWorker.java:481)
      at org.jboss.netty.channel.socket.nio.NioWorker.writeFromUserCode(NioWorker.java:382)
      at org.jboss.netty.channel.socket.nio.NioServerSocketPipelineSink.handleAcceptedSocket(NioServerSocketPipelineSink.java:129)
      at org.jboss.netty.channel.socket.nio.NioServerSocketPipelineSink.eventSunk(NioServerSocketPipelineSink.java:68)
      at org.jboss.netty.handler.ssl.SslHandler.flushPendingEncryptedWrites(SslHandler.java:824)
      at org.jboss.netty.handler.ssl.SslHandler.wrap(SslHandler.java:768)
      at org.jboss.netty.handler.ssl.SslHandler.handleDownstream(SslHandler.java:490)
      at org.jboss.netty.handler.stream.ChunkedWriteHandler.flush(ChunkedWriteHandler.java:262)
      at org.jboss.netty.handler.stream.ChunkedWriteHandler.handleDownstream(ChunkedWriteHandler.java:119)
      at org.jboss.netty.channel.Channels.write(Channels.java:605)
      at org.jboss.netty.channel.Channels.write(Channels.java:572)
      at org.jboss.netty.channel.AbstractChannel.write(AbstractChannel.java:245)
      at org.apache.james.protocols.netty.NettyProtocolTransport.writeToClient(NettyProtocolTransport.java:116)
      at org.apache.james.protocols.api.AbstractProtocolTransport.writeResponseToClient(AbstractProtocolTransport.java:150)
      at org.apache.james.protocols.api.AbstractProtocolTransport.writeResponse(AbstractProtocolTransport.java:67)
      at org.apache.james.protocols.netty.BasicChannelUpstreamHandler.exceptionCaught(BasicChannelUpstreamHandler.java:226)
      at org.jboss.netty.handler.stream.ChunkedWriteHandler.handleUpstream(ChunkedWriteHandler.java:143)
      at org.jboss.netty.handler.codec.frame.FrameDecoder.exceptionCaught(FrameDecoder.java:244)
      at org.jboss.netty.handler.ssl.SslHandler.exceptionCaught(SslHandler.java:554)
      at org.jboss.netty.channel.Channels.fireExceptionCaught(Channels.java:426)
      at org.jboss.netty.channel.AbstractChannelSink.exceptionCaught(AbstractChannelSink.java:47)
      at org.jboss.netty.channel.Channels.fireMessageReceived(Channels.java:268)
      at org.jboss.netty.channel.Channels.fireMessageReceived(Channels.java:255)
      at org.jboss.netty.channel.socket.nio.NioWorker.read(NioWorker.java:343)
      at org.jboss.netty.channel.socket.nio.NioWorker.processSelectedKeys(NioWorker.java:274)
      at org.jboss.netty.channel.socket.nio.NioWorker.run(NioWorker.java:194)
      at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
      at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
      at java.lang.Thread.run(Thread.java:745)
      java.nio.channels.ClosedChannelException
      at org.jboss.netty.handler.stream.ChunkedWriteHandler.discard(ChunkedWriteHandler.java:171)
      at org.jboss.netty.handler.stream.ChunkedWriteHandler.handleDownstream(ChunkedWriteHandler.java:122)
      at org.jboss.netty.channel.Channels.write(Channels.java:605)
      at org.jboss.netty.channel.Channels.write(Channels.java:572)
      at org.jboss.netty.channel.AbstractChannel.write(AbstractChannel.java:245)
      at org.apache.james.protocols.netty.NettyProtocolTransport.close(NettyProtocolTransport.java:122)
      at org.apache.james.protocols.api.AbstractProtocolTransport.writeResponseToClient(AbstractProtocolTransport.java:159)
      at org.apache.james.protocols.api.AbstractProtocolTransport.writeResponse(AbstractProtocolTransport.java:67)
      at org.apache.james.protocols.netty.BasicChannelUpstreamHandler.exceptionCaught(BasicChannelUpstreamHandler.java:226)
      at org.jboss.netty.handler.stream.ChunkedWriteHandler.handleUpstream(ChunkedWriteHandler.java:143)
      at org.jboss.netty.handler.codec.frame.FrameDecoder.exceptionCaught(FrameDecoder.java:244)
      at org.jboss.netty.handler.ssl.SslHandler.exceptionCaught(SslHandler.java:554)
      at org.jboss.netty.channel.Channels.fireExceptionCaught(Channels.java:426)
      at org.jboss.netty.channel.AbstractChannelSink.exceptionCaught(AbstractChannelSink.java:47)
      at org.jboss.netty.channel.Channels.fireMessageReceived(Channels.java:268)
      at org.jboss.netty.channel.Channels.fireMessageReceived(Channels.java:255)
      at org.jboss.netty.channel.socket.nio.NioWorker.read(NioWorker.java:343)
      at org.jboss.netty.channel.socket.nio.NioWorker.processSelectedKeys(NioWorker.java:274)
      at org.jboss.netty.channel.socket.nio.NioWorker.run(NioWorker.java:194)
      at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
      at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
      at java.lang.Thread.run(Thread.java:745)
      javax.net.ssl.SSLException: Received fatal alert: certificate_unknown
      at sun.security.ssl.Alerts.getSSLException(Alerts.java:208)
      at sun.security.ssl.SSLEngineImpl.fatal(SSLEngineImpl.java:1666)
      at sun.security.ssl.SSLEngineImpl.fatal(SSLEngineImpl.java:1634)
      at sun.security.ssl.SSLEngineImpl.recvAlert(SSLEngineImpl.java:1800)
      at sun.security.ssl.SSLEngineImpl.readRecord(SSLEngineImpl.java:1083)
      at sun.security.ssl.SSLEngineImpl.readNetRecord(SSLEngineImpl.java:907)
      at sun.security.ssl.SSLEngineImpl.unwrap(SSLEngineImpl.java:781)
      at javax.net.ssl.SSLEngine.unwrap(SSLEngine.java:624)
      at org.jboss.netty.handler.ssl.SslHandler.unwrap(SslHandler.java:931)
      at org.jboss.netty.handler.ssl.SslHandler.decode(SslHandler.java:649)
      at org.jboss.netty.handler.codec.frame.FrameDecoder.callDecode(FrameDecoder.java:288)
      at org.jboss.netty.handler.codec.frame.FrameDecoder.messageReceived(FrameDecoder.java:207)
      at org.jboss.netty.channel.Channels.fireMessageReceived(Channels.java:268)
      at org.jboss.netty.channel.Channels.fireMessageReceived(Channels.java:255)
      Id='264024021' User='' Connection closed for 127.0.0.1 args=[]
      Id='264024021' User='' Unable to process request args=[]
      Id='264024021' User='' Unable to process request args=[]
      at org.jboss.netty.channel.socket.nio.NioWorker.read(NioWorker.java:343)
      at org.jboss.netty.channel.socket.nio.NioWorker.processSelectedKeys(NioWorker.java:274)
      at org.jboss.netty.channel.socket.nio.NioWorker.run(NioWorker.java:194)
      at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
      at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
      at java.lang.Thread.run(Thread.java:745)

      javax.net.ssl.SSLHandshakeException: java.security.cert.CertificateException: Certificates does not conform to algorithm constraints
      at sun.security.ssl.Alerts.getSSLException(Alerts.java:192)
      at sun.security.ssl.SSLSocketImpl.fatal(SSLSocketImpl.java:1949)
      at sun.security.ssl.Handshaker.fatalSE(Handshaker.java:302)
      at sun.security.ssl.Handshaker.fatalSE(Handshaker.java:296)
      at sun.security.ssl.ClientHandshaker.serverCertificate(ClientHandshaker.java:1509)
      at sun.security.ssl.ClientHandshaker.processMessage(ClientHandshaker.java:216)
      at sun.security.ssl.Handshaker.processLoop(Handshaker.java:979)
      at sun.security.ssl.Handshaker.process_record(Handshaker.java:914)
      at sun.security.ssl.SSLSocketImpl.readRecord(SSLSocketImpl.java:1062)
      at sun.security.ssl.SSLSocketImpl.performInitialHandshake(SSLSocketImpl.java:1375)
      at sun.security.ssl.SSLSocketImpl.startHandshake(SSLSocketImpl.java:1403)
      at sun.security.ssl.SSLSocketImpl.startHandshake(SSLSocketImpl.java:1387)
      at org.apache.commons.net.pop3.POP3SClient.performSSLNegotiation(POP3SClient.java:210)
      at org.apache.commons.net.pop3.POP3SClient.connectAction(POP3SClient.java:169)
      at org.apache.commons.net.SocketClient.connect(SocketClient.java:176)
      at org.apache.commons.net.SocketClient.connect(SocketClient.java:196)
      at org.apache.james.protocols.pop3.AbstractPOP3ServerTest.testInvalidAuth(AbstractPOP3ServerTest.java:75)
      at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
      at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
      at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
      at org.junit.runners.model.FrameworkMethod$1.runReflectiveCall(FrameworkMethod.java:45)
      at org.junit.internal.runners.model.ReflectiveCallable.run(ReflectiveCallable.java:15)
      at org.junit.runners.model.FrameworkMethod.invokeExplosively(FrameworkMethod.java:42)
      at org.junit.internal.runners.statements.InvokeMethod.evaluate(InvokeMethod.java:20)
      at org.junit.runners.ParentRunner.runLeaf(ParentRunner.java:263)
      at org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:68)
      at org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:47)
      at org.junit.runners.ParentRunner$3.run(ParentRunner.java:231)
      at org.junit.runners.ParentRunner$1.schedule(ParentRunner.java:60)
      at org.junit.runners.ParentRunner.runChildren(ParentRunner.java:229)
      at org.junit.runners.ParentRunner.access$000(ParentRunner.java:50)
      at org.junit.runners.ParentRunner$2.evaluate(ParentRunner.java:222)
      at org.junit.runners.ParentRunner.run(ParentRunner.java:300)
      at org.junit.runners.Suite.runChild(Suite.java:128)
      at org.junit.runners.Suite.runChild(Suite.java:24)
      at org.junit.runners.ParentRunner$3.run(ParentRunner.java:231)
      at org.junit.runners.ParentRunner$1.schedule(ParentRunner.java:60)
      at org.junit.runners.ParentRunner.runChildren(ParentRunner.java:229)
      at org.junit.runners.ParentRunner.access$000(ParentRunner.java:50)
      at org.junit.runners.ParentRunner$2.evaluate(ParentRunner.java:222)
      at org.junit.runners.ParentRunner.run(ParentRunner.java:300)
      at org.junit.runner.JUnitCore.run(JUnitCore.java:157)
      at com.intellij.junit4.JUnit4IdeaTestRunner.startRunnerWithArgs(JUnit4IdeaTestRunner.java:78)
      at com.intellij.rt.execution.junit.JUnitStarter.prepareStreamsAndStart(JUnitStarter.java:212)
      at com.intellij.rt.execution.junit.JUnitStarter.main(JUnitStarter.java:68)
      at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
      at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
      at com.intellij.rt.execution.application.AppMain.main(AppMain.java:140)
      Caused by: java.security.cert.CertificateException: Certificates does not conform to algorithm constraints
      at sun.security.ssl.AbstractTrustManagerWrapper.checkAlgorithmConstraints(SSLContextImpl.java:1055)
      at sun.security.ssl.AbstractTrustManagerWrapper.checkAdditionalTrust(SSLContextImpl.java:981)
      at sun.security.ssl.AbstractTrustManagerWrapper.checkServerTrusted(SSLContextImpl.java:923)
      at sun.security.ssl.ClientHandshaker.serverCertificate(ClientHandshaker.java:1491)
      ... 46 more

      Attachments

        Activity

          People

            eric@apache.org Eric Charles
            btellier Benoit Tellier
            Votes:
            0 Vote for this issue
            Watchers:
            1 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved: