[
https://issues.apache.org/jira/browse/SSHD-851?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16660375#comment-16660375
]
ASF GitHub Bot commented on SSHD-851:
-------------------------------------
GitHub user robertodeandrea opened a pull request:
https://github.com/apache/mina-sshd/pull/73
Br ssh851
This is my proposed code change to fix SSHD-851.
You can merge this pull request into a Git repository by running:
$ git pull https://github.com/robertodeandrea/mina-sshd br-SSH851
Alternatively you can review and apply these changes as the patch at:
https://github.com/apache/mina-sshd/pull/73.patch
To close this pull request, make a commit to your master/trunk branch
with (at least) the following in the commit message:
This closes #73
----
commit 9f2d49a97963d9f4330d96578142d67e06b44c07
Author: roberto.deandrea <roberto.deandrea@...>
Date: 2018-10-09T07:37:46Z
SSHD-848 Proposed change code
commit ffc29c475cb6b0240807c7f20680e5a5a2c0db76
Author: roberto.deandrea <roberto.deandrea@...>
Date: 2018-10-10T06:48:44Z
SSHD-848 Removed misleading comment.
commit 851b22fc431e4ed6ba440874f236d93a6aca9827
Author: roberto.deandrea <roberto.deandrea@...>
Date: 2018-10-15T14:43:59Z
SSHD-849 Potential fix
commit 1970d8d045e1a40e64864157cc6d21591e1ca69e
Author: roberto.deandrea <roberto.deandrea@...>
Date: 2018-10-16T06:53:43Z
Merge remote-tracking branch 'upstream/master'
# Conflicts:
#
sshd-core/src/main/java/org/apache/sshd/common/forward/DefaultForwardingFilter.java
commit 4523138ee2b4efa483bc956e8769eafb13eff05d
Author: roberto.deandrea <roberto.deandrea@...>
Date: 2018-10-22T12:00:19Z
SSHD-849 Working code for us
commit d2d8d84293c5c50413747cc7ab00217d16e8f39e
Author: roberto.deandrea <roberto.deandrea@...>
Date: 2018-10-23T10:01:22Z
[SSHD-851] Proposed fix for this issue
----
> Last chunk of data lost into local port forwarding channel
> ----------------------------------------------------------
>
> Key: SSHD-851
> URL: https://issues.apache.org/jira/browse/SSHD-851
> Project: MINA SSHD
> Issue Type: Bug
> Affects Versions: 2.1.1
> Reporter: Roberto Deandrea
> Priority: Major
> Attachments: sshd.agent.trace
>
>
> Hi Lyor,
> I found another problem transferring data through a local port forwarding
> channel.
> It seems that the problem is located into Apache SSHD server code according
> to me.
> All the data are transferred from the originating client to the Apache SSH
> client and then go to the SSHD server through a local port forwarding channel.
> When the client stops sending data, and the channel is being closed, the
> SSHD server fail to send the last chunk of data to the target destination.
> In the attached trace file the problem is isolated as the following:
> *local port forwarding channel : [id=732 recipient=732]*
> *Nio2Session[local=/0:0:0:0:0:0:0:0:50047, remote=/192.168.2.107:62284
> session against target server*
> Looking through the traces I see that when the local port forwarding channel
> is closed, the Nio2Session against the target server is closed gracefully,
> but instead of waiting to complete pending socket writes to the target server
> the Nio2Session is then closed immediately causing write failures.
> In the traces I see:
> 2018-10-16 16:20:19,167 DEBUG [xdmzdriverssh@/192.168.10.34:55335]]-thread-1]
> [AbstractCloseable.close] close(Nio2Session[local=/0:0:0:0:0:0:0:0:50047,
> remote=/192.168.2.107:62284]) Closing gracefully
> 2018-10-16 16:20:19,167 DEBUG [xdmzdriverssh@/192.168.10.34:55335]]-thread-2]
> [AbstractCloseable.close]
> close(org.apache.sshd.common.io.nio2.Nio2Connector@77fcff14) Closing
> immediately^M
> 2018-10-16 16:20:19,167 DEBUG [xdmzdriverssh@/192.168.10.34:55335]]-thread-2]
> [AbstractCloseable.close] close(Nio2Session[local=/0:0:0:0:0:0:0:0:50047,
> remote=/192.168.2.107:62284]) Closing immediately
> After that I see:
> 2018-10-16 16:20:19,167 DEBUG [xdmzdriverssh@/192.168.10.34:55335]]-thread-2]
> [Nio2Session.doCloseImmediately]
> doCloseImmediately(Nio2Session[local=/0:0:0:0:0:0:0:0:50047,
> remote=/192.168.2.107:62284]) signal write abort for
> future=Nio2DefaultIoWriteFuture[id=/192.168.2.107:62284][value=null]
> 2018-10-16 16:20:19,167 DEBUG [xdmzdriverssh@/192.168.10.34:55335]]-thread-2]
> [TcpipServerChannel.handleWriteDataFailure]
> handleWriteDataFailure(TcpipServerChannel[id=732,
> recipient=732]-ServerSessionImpl[aixdmzdriverssh@/192.168.10.34:55335])[SSH_MSG_CHANNEL_DATA]
> failed (WriteAbortedException) to write len=16384: Write request aborted due
> to immediate session close
>
> These errors are repeated multiple times.
> The sum of bytes not written are equal to the chunk of data missing ad the
> target server.
> Can you troubleshoot this problem?
> Let me know if you need more info.
>
> Cheers
> Roberto
>
--
This message was sent by Atlassian JIRA
(v7.6.3#76005)