I am trying to setup a FTP server on Android using Apache FTP server
libraries. I was able to setup a FTP with Implicit SSL enabled in JVM.
When I ran the FTP server on Android, the connection was always lost
right after the client received the certificate. The following error
was shown in LogCat. This error was caused by
SSLEngineResult.getHandshakeStatus() returned "NOT_HANDSHAKING". I
spent a week trying to resolve this problem, but without any luck. Can
anyone give me some pointers where I should search for the real cause
of the error? Thank you.


08-03 01:19:08.739: WARN/org.apache.ftps(501): EXCEPTION :
08-03 01:19:08.739: WARN/org.apache.ftps(501):
java.lang.IllegalStateException: Invalid Handshaking
StateNOT_HANDSHAKING
08-03 01:19:08.739: WARN/org.apache.ftps(501):     at
org.apache.mina.filter.ssl.SslHandler.handshake(SslHandler.java:517)
08-03 01:19:08.739: WARN/org.apache.ftps(501):     at
org.apache.mina.filter.ssl.SslHandler.writeNetBuffer(SslHandler.java:
561)
08-03 01:19:08.739: WARN/org.apache.ftps(501):     at
org.apache.mina.filter.ssl.SslHandler.handshake(SslHandler.java:513)
08-03 01:19:08.739: WARN/org.apache.ftps(501):     at
org.apache.mina.filter.ssl.SslHandler.messageReceived(SslHandler.java:
299)
08-03 01:19:08.739: WARN/org.apache.ftps(501):     at
org.apache.mina.filter.ssl.SslFilter.messageReceived(SslFilter.java:
414)
08-03 01:19:08.739: WARN/org.apache.ftps(501):     at
org.apache.mina.core.filterchain.DefaultIoFilterChain.callNextMessageReceived
(DefaultIoFilterChain.java:433)
08-03 01:19:08.739: WARN/org.apache.ftps(501):     at
org.apache.mina.core.filterchain.DefaultIoFilterChain.access$1200
(DefaultIoFilterChain.java:47)
08-03 01:19:08.739: WARN/org.apache.ftps(501):     at
org.apache.mina.core.filterchain.DefaultIoFilterChain$EntryImpl
$1.messageReceived(DefaultIoFilterChain.java:801)
08-03 01:19:08.739: WARN/org.apache.ftps(501):     at
org.apache.mina.core.filterchain.IoFilterAdapter.messageReceived
(IoFilterAdapter.java:119)
08-03 01:19:08.739: WARN/org.apache.ftps(501):     at
org.apache.mina.core.filterchain.DefaultIoFilterChain.callNextMessageReceived
(DefaultIoFilterChain.java:433)
08-03 01:19:08.739: WARN/org.apache.ftps(501):     at
org.apache.mina.core.filterchain.DefaultIoFilterChain.fireMessageReceived
(DefaultIoFilterChain.java:425)
08-03 01:19:08.739: WARN/org.apache.ftps(501):     at
org.apache.mina.core.polling.AbstractPollingIoProcessor.read
(AbstractPollingIoProcessor.java:603)
08-03 01:19:08.739: WARN/org.apache.ftps(501):     at
org.apache.mina.core.polling.AbstractPollingIoProcessor.process
(AbstractPollingIoProcessor.java:563)
08-03 01:19:08.739: WARN/org.apache.ftps(501):     at
org.apache.mina.core.polling.AbstractPollingIoProcessor.process
(AbstractPollingIoProcessor.java:552)
08-03 01:19:08.739: WARN/org.apache.ftps(501):     at
org.apache.mina.core.polling.AbstractPollingIoProcessor.access$400
(AbstractPollingIoProcessor.java:56)
08-03 01:19:08.739: WARN/org.apache.ftps(501):     at
org.apache.mina.core.polling.AbstractPollingIoProcessor$Processor.run
(AbstractPollingIoProcessor.java:891)
08-03 01:19:08.739: WARN/org.apache.ftps(501):     at
org.apache.mina.util.NamePreservingRunnable.run
(NamePreservingRunnable.java:64)
08-03 01:19:08.739: WARN/org.apache.ftps(501):     at
java.util.concurrent.ThreadPoolExecutor$Worker.runTask
(ThreadPoolExecutor.java:648)
08-03 01:19:08.739: WARN/org.apache.ftps(501):     at
java.util.concurrent.ThreadPoolExecutor$Worker.run
(ThreadPoolExecutor.java:673)
08-03 01:19:08.739: WARN/org.apache.ftps(501):     at
java.lang.Thread.run(Thread.java:1058)
08-03 01:19:08.749: ERROR/org.apache.ftps(501): Exception caught,
closing session
08-03 01:19:08.749: ERROR/org.apache.ftps(501):
java.lang.IllegalStateException: Invalid Handshaking
StateNOT_HANDSHAKING
08-03 01:19:08.749: ERROR/org.apache.ftps(501):     at
org.apache.mina.filter.ssl.SslHandler.handshake(SslHandler.java:517)
08-03 01:19:08.749: ERROR/org.apache.ftps(501):     at
org.apache.mina.filter.ssl.SslHandler.writeNetBuffer(SslHandler.java:
561)
08-03 01:19:08.749: ERROR/org.apache.ftps(501):     at
org.apache.mina.filter.ssl.SslHandler.handshake(SslHandler.java:513)
08-03 01:19:08.749: ERROR/org.apache.ftps(501):     at
org.apache.mina.filter.ssl.SslHandler.messageReceived(SslHandler.java:
299)
08-03 01:19:08.749: ERROR/org.apache.ftps(501):     at
org.apache.mina.filter.ssl.SslFilter.messageReceived(SslFilter.java:
414)
08-03 01:19:08.749: ERROR/org.apache.ftps(501):     at
org.apache.mina.core.filterchain.DefaultIoFilterChain.callNextMessageReceived
(DefaultIoFilterChain.java:433)
08-03 01:19:08.749: ERROR/org.apache.ftps(501):     at
org.apache.mina.core.filterchain.DefaultIoFilterChain.access$1200
(DefaultIoFilterChain.java:47)
08-03 01:19:08.749: ERROR/org.apache.ftps(501):     at
org.apache.mina.core.filterchain.DefaultIoFilterChain$EntryImpl
$1.messageReceived(DefaultIoFilterChain.java:801)
08-03 01:19:08.749: ERROR/org.apache.ftps(501):     at
org.apache.mina.core.filterchain.IoFilterAdapter.messageReceived
(IoFilterAdapter.java:119)
08-03 01:19:08.749: ERROR/org.apache.ftps(501):     at
org.apache.mina.core.filterchain.DefaultIoFilterChain.callNextMessageReceived
(DefaultIoFilterChain.java:433)
08-03 01:19:08.749: ERROR/org.apache.ftps(501):     at
org.apache.mina.core.filterchain.DefaultIoFilterChain.fireMessageReceived
(DefaultIoFilterChain.java:425)
08-03 01:19:08.749: ERROR/org.apache.ftps(501):     at
org.apache.mina.core.polling.AbstractPollingIoProcessor.read
(AbstractPollingIoProcessor.java:603)
08-03 01:19:08.749: ERROR/org.apache.ftps(501):     at
org.apache.mina.core.polling.AbstractPollingIoProcessor.process
(AbstractPollingIoProcessor.java:563)
08-03 01:19:08.749: ERROR/org.apache.ftps(501):     at
org.apache.mina.core.polling.AbstractPollingIoProcessor.process
(AbstractPollingIoProcessor.java:552)
08-03 01:19:08.749: ERROR/org.apache.ftps(501):     at
org.apache.mina.core.polling.AbstractPollingIoProcessor.access$400
(AbstractPollingIoProcessor.java:56)
08-03 01:19:08.749: ERROR/org.apache.ftps(501):     at
org.apache.mina.core.polling.AbstractPollingIoProcessor$Processor.run
(AbstractPollingIoProcessor.java:891)
08-03 01:19:08.749: ERROR/org.apache.ftps(501):     at
org.apache.mina.util.NamePreservingRunnable.run
(NamePreservingRunnable.java:64)
08-03 01:19:08.749: ERROR/org.apache.ftps(501):     at
java.util.concurrent.ThreadPoolExecutor$Worker.runTask
(ThreadPoolExecutor.java:648)
08-03 01:19:08.749: ERROR/org.apache.ftps(501):     at
java.util.concurrent.ThreadPoolExecutor$Worker.run
(ThreadPoolExecutor.java:673)
08-03 01:19:08.749: ERROR/org.apache.ftps(501):     at
java.lang.Thread.run(Thread.java:1058)
08-03 01:19:08.799: DEBUG/org.apache.mina(501): Unexpected exception
from SSLEngine.closeInbound().
08-03 01:19:08.799: DEBUG/org.apache.mina(501):
javax.net.ssl.SSLException: Inbound is closed before close_notify
alert has been received.
08-03 01:19:08.799: DEBUG/org.apache.mina(501):     at
org.apache.harmony.xnet.provider.jsse.SSLEngineImpl.closeInbound
(SSLEngineImpl.java:162)
08-03 01:19:08.799: DEBUG/org.apache.mina(501):     at
org.apache.mina.filter.ssl.SslHandler.destroy(SslHandler.java:168)
08-03 01:19:08.799: DEBUG/org.apache.mina(501):     at
org.apache.mina.filter.ssl.SslFilter.initiateClosure(SslFilter.java:
623)
08-03 01:19:08.799: DEBUG/org.apache.mina(501):     at
org.apache.mina.filter.ssl.SslFilter.filterClose(SslFilter.java:579)
08-03 01:19:08.799: DEBUG/org.apache.mina(501):     at
org.apache.mina.core.filterchain.DefaultIoFilterChain.callPreviousFilterClose
(DefaultIoFilterChain.java:521)
08-03 01:19:08.799: DEBUG/org.apache.mina(501):     at
org.apache.mina.core.filterchain.DefaultIoFilterChain.access$1500
(DefaultIoFilterChain.java:47)
08-03 01:19:08.799: DEBUG/org.apache.mina(501):     at
org.apache.mina.core.filterchain.DefaultIoFilterChain$EntryImpl
$1.filterClose(DefaultIoFilterChain.java:818)
08-03 01:19:08.799: DEBUG/org.apache.mina(501):     at
org.apache.mina.core.filterchain.IoFilterEvent.fire(IoFilterEvent.java:
82)
08-03 01:19:08.799: DEBUG/org.apache.mina(501):     at
org.apache.mina.filter.logging.MdcInjectionFilter.filter
(MdcInjectionFilter.java:136)
08-03 01:19:08.799: DEBUG/org.apache.mina(501):     at
org.apache.mina.filter.util.CommonEventFilter.filterClose
(CommonEventFilter.java:85)
08-03 01:19:08.799: DEBUG/org.apache.mina(501):     at
org.apache.mina.core.filterchain.DefaultIoFilterChain.callPreviousFilterClose
(DefaultIoFilterChain.java:521)
08-03 01:19:08.799: DEBUG/org.apache.mina(501):     at
org.apache.mina.core.filterchain.DefaultIoFilterChain.access$1500
(DefaultIoFilterChain.java:47)
08-03 01:19:08.799: DEBUG/org.apache.mina(501):     at
org.apache.mina.core.filterchain.DefaultIoFilterChain$EntryImpl
$1.filterClose(DefaultIoFilterChain.java:818)
08-03 01:19:08.799: DEBUG/org.apache.mina(501):     at
org.apache.mina.core.filterchain.IoFilterAdapter.filterClose
(IoFilterAdapter.java:143)
08-03 01:19:08.799: DEBUG/org.apache.mina(501):     at
org.apache.mina.core.filterchain.DefaultIoFilterChain.callPreviousFilterClose
(DefaultIoFilterChain.java:521)
08-03 01:19:08.799: DEBUG/org.apache.mina(501):     at
org.apache.mina.core.filterchain.DefaultIoFilterChain.access$1500
(DefaultIoFilterChain.java:47)
08-03 01:19:08.799: DEBUG/org.apache.mina(501):     at
org.apache.mina.core.filterchain.DefaultIoFilterChain$EntryImpl
$1.filterClose(DefaultIoFilterChain.java:818)
08-03 01:19:08.799: DEBUG/org.apache.mina(501):     at
org.apache.mina.filter.executor.ExecutorFilter.filterClose
(ExecutorFilter.java:728)
08-03 01:19:08.799: DEBUG/org.apache.mina(501):     at
org.apache.mina.core.filterchain.DefaultIoFilterChain.callPreviousFilterClose
(DefaultIoFilterChain.java:521)
08-03 01:19:08.799: DEBUG/org.apache.mina(501):     at
org.apache.mina.core.filterchain.DefaultIoFilterChain.access$1500
(DefaultIoFilterChain.java:47)
08-03 01:19:08.799: DEBUG/org.apache.mina(501):     at
org.apache.mina.core.filterchain.DefaultIoFilterChain$EntryImpl
$1.filterClose(DefaultIoFilterChain.java:818)
08-03 01:19:08.799: DEBUG/org.apache.mina(501):     at
org.apache.mina.core.filterchain.IoFilterAdapter.filterClose
(IoFilterAdapter.java:143)
08-03 01:19:08.799: DEBUG/org.apache.mina(501):     at
org.apache.mina.core.filterchain.DefaultIoFilterChain.callPreviousFilterClose
(DefaultIoFilterChain.java:521)
08-03 01:19:08.799: DEBUG/org.apache.mina(501):     at
org.apache.mina.core.filterchain.DefaultIoFilterChain.access$1500
(DefaultIoFilterChain.java:47)
08-03 01:19:08.799: DEBUG/org.apache.mina(501):     at
org.apache.mina.core.filterchain.DefaultIoFilterChain$EntryImpl
$1.filterClose(DefaultIoFilterChain.java:818)
08-03 01:19:08.799: DEBUG/org.apache.mina(501):     at
org.apache.mina.core.filterchain.IoFilterEvent.fire(IoFilterEvent.java:
82)
08-03 01:19:08.799: DEBUG/org.apache.mina(501):     at
org.apache.mina.filter.logging.MdcInjectionFilter.filter
(MdcInjectionFilter.java:136)
08-03 01:19:08.799: DEBUG/org.apache.mina(501):     at
org.apache.mina.filter.util.CommonEventFilter.filterClose
(CommonEventFilter.java:85)
08-03 01:19:08.799: DEBUG/org.apache.mina(501):     at
org.apache.mina.core.filterchain.DefaultIoFilterChain.callPreviousFilterClose
(DefaultIoFilterChain.java:521)
08-03 01:19:08.799: DEBUG/org.apache.mina(501):     at
org.apache.mina.core.filterchain.DefaultIoFilterChain.access$1500
(DefaultIoFilterChain.java:47)
08-03 01:19:08.799: DEBUG/org.apache.mina(501):     at
org.apache.mina.core.filterchain.DefaultIoFilterChain$EntryImpl
$1.filterClose(DefaultIoFilterChain.java:818)
08-03 01:19:08.799: DEBUG/org.apache.mina(501):     at
org.apache.mina.core.filterchain.IoFilterAdapter.filterClose
(IoFilterAdapter.java:143)
08-03 01:19:08.799: DEBUG/org.apache.mina(501):     at
org.apache.mina.core.filterchain.DefaultIoFilterChain.callPreviousFilterClose
(DefaultIoFilterChain.java:521)
08-03 01:19:08.799: DEBUG/org.apache.mina(501):     at
org.apache.mina.core.filterchain.DefaultIoFilterChain.access$1500
(DefaultIoFilterChain.java:47)
08-03 01:19:08.799: DEBUG/org.apache.mina(501):     at
org.apache.mina.core.filterchain.DefaultIoFilterChain$EntryImpl
$1.filterClose(DefaultIoFilterChain.java:818)
08-03 01:19:08.799: DEBUG/org.apache.mina(501):     at
org.apache.mina.core.filterchain.DefaultIoFilterChain
$TailFilter.filterClose(DefaultIoFilterChain.java:745)
08-03 01:19:08.799: DEBUG/org.apache.mina(501):     at
org.apache.mina.core.filterchain.DefaultIoFilterChain.callPreviousFilterClose
(DefaultIoFilterChain.java:521)
08-03 01:19:08.799: DEBUG/org.apache.mina(501):     at
org.apache.mina.core.filterchain.DefaultIoFilterChain.fireFilterClose
(DefaultIoFilterChain.java:514)
08-03 01:19:08.799: DEBUG/org.apache.mina(501):     at
org.apache.mina.core.session.AbstractIoSession.close
(AbstractIoSession.java:249)
08-03 01:19:08.799: DEBUG/org.apache.mina(501):     at
org.apache.mina.core.se
08-03 01:19:08.829: INFO/org.apache.ftps(501): CLOSED
08-03 01:19:08.829: DEBUG/org.apache.ftps(501): Closing session

--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google
Groups "Android Developers" group.
To post to this group, send email to [email protected]
To unsubscribe from this group, send email to
[email protected]
For more options, visit this group at
http://groups.google.com/group/android-developers?hl=en
-~----------~----~----~----~------~----~------~--~---

Reply via email to