[ 
https://issues.apache.org/jira/browse/DIRMINA-785?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12866077#action_12866077
 ] 

Jan Tauš commented on DIRMINA-785:
----------------------------------

I created patch of MINA(2.0.0.RC1) and AsyncWeb(trunk) (both attached) for my 
use.

The problem is that it is application protocol dependent what to do when the 
input is closed. So my patch sends new event "inputClose(IoSession)" to the 
filter chain instead closing the session. The default handling of this event is 
to close the session.

The patch of the AsyncWeb adds the handling of the new event to the 
SingleHttpSessionIoHandler. If there exists HTTP service context then the 
context is marked to close HTTP connection after a response is commited. If the 
context doesn't exists the session is closed immediately.


> Half-duplex close of TCP channel
> --------------------------------
>
>                 Key: DIRMINA-785
>                 URL: https://issues.apache.org/jira/browse/DIRMINA-785
>             Project: MINA
>          Issue Type: Bug
>          Components: Transport
>    Affects Versions: 2.0.0-M6
>            Reporter: Jan Tauš
>
> Current MINA implementation doesn't support half-duplex close as described in 
> RFC-793 section 3.5. "Closing a Connection". 
> After the read in AbstractPollingIoProcessor#read() fails due to closed of 
> the input stream whole NioSocketSession#channel is scheduled to close. In 
> such situation only the input part should be closed with call to 
> SocketChannel#socket().shutdownInput(). The whole channel should be closed 
> only after the IoSession#close() call.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.

Reply via email to