You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@mina.apache.org by "Logan (JIRA)" <ji...@apache.org> on 2019/06/24 13:47:00 UTC

[jira] [Comment Edited] (SSHD-927) SFTP put fails terminating the connection if the remote file exists

    [ https://issues.apache.org/jira/browse/SSHD-927?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16871212#comment-16871212 ] 

Logan edited comment on SSHD-927 at 6/24/19 1:46 PM:
-----------------------------------------------------

SSH client is from Tectia ( [https://www.ssh.com/products/tectia-ssh/] ). Details of version is included in environment.

Would you like to capture SSHD logs at debug or info level?


was (Author: apachelogan):
SSH client is from Tectia ( [https://www.ssh.com/products/tectia-ssh/] ). Details of version is included in environment.

Would you like to capture SSHD logs at debug or info level?

Downloaded latest [putty sftp|https://www.chiark.greenend.org.uk/~sgtatham/putty/latest.html] and it works well.
{noformat}
C:\temp>psftp -P 9999 localhost
The server's host key is not cached in the registry. You
have no guarantee that the server is the computer you
think it is.
The server's rsa2 key fingerprint is:
ssh-rsa 2048 b9:e1:24:12:be:fd:8d:f9:c0:60:38:c9:8b:7c:c0:b0
If you trust this host, enter "y" to add the key to
PuTTY's cache and carry on connecting.
If you want to carry on connecting just once, without
adding the key to the cache, enter "n".
If you do not trust this host, press Return to abandon the
connection.
Store key in cache? (y/n) n
login as: test
Keyboard-interactive authentication prompts from server:
| Password authentication
| Password:
End of keyboard-interactive prompts from server
Remote working directory is /
psftp> put psftp.exe
local:psftp.exe => remote:/psftp.exe
psftp> put psftp.exe
local:psftp.exe => remote:/psftp.exe
psftp> put psftp.exe
local:psftp.exe => remote:/psftp.exe
psftp> put psftp.exe
local:psftp.exe => remote:/psftp.exe
psftp> put psftp.exe
local:psftp.exe => remote:/psftp.exe
psftp> put psftp.exe
local:psftp.exe => remote:/psftp.exe
psftp> exit
{noformat}

> SFTP put fails terminating the connection if the remote file exists
> -------------------------------------------------------------------
>
>                 Key: SSHD-927
>                 URL: https://issues.apache.org/jira/browse/SSHD-927
>             Project: MINA SSHD
>          Issue Type: Bug
>    Affects Versions: 2.1.0, 2.2.0
>         Environment: Java:
> C:\Program Files\Java\jdk1.8.0_201\bin>java -version
> java version "1.8.0_201"
> Java(TM) SE Runtime Environment (build 1.8.0_201-b26)
> Java HotSpot(TM) 64-Bit Server VM (build 25.201-b26, mixed mode)
> Apache SSHD : 2.1.0
> C:\temp>sftp2 --version
> sftp2: Tectia Client 6.4.14 on x86-pc-windows
> Build: 26
> Product: Tectia Client
> License type: commercial
> Copyright (C) SSH Communications Security Corporation.
> This software is protected by international copyright laws.
> All rights reserved.
> This product includes software developed by the OpenSSL Project
> for use in the OpenSSL Toolkit. (http://www.openssl.org/)
> SFT API: 2.0.3 (build 6.4.14.26)
>            Reporter: Logan
>            Priority: Major
>         Attachments: thread-callstack.txt
>
>
> Sftp put fails if the file already exists on the sftp server, terminating the sfp session immediately.Below is the simple configuration to reproduce
>  
> {code:java}
> SshServer sshd = SshServer.setUpDefaultServer();
> sshd.setPort(9999);
> sshd.setKeyPairProvider(new SimpleGeneratorHostKeyProvider());
> sshd.setSubsystemFactories(Arrays.asList(new SftpSubsystemFactory()));
> sshd.setFileSystemFactory(new VirtualFileSystemFactory(new File("C:/temp").toPath()));
> sshd.setPasswordAuthenticator(AcceptAllPasswordAuthenticator.INSTANCE);
> sshd.start();
> {code}
>  
> {noformat}
> C:\temp>sftp2 test@localhost#9999
> Host key for the host "localhost#9999" not found from database.
> The fingerprint of the host public key is:
> Babble: "xodec-damen-ripeg-hehuh-venep-pebys-zureg-rynit-mypiz-byheh-zixax"
> RFC4716: "1d:4f:c2:a4:fe:58:93:61:fe:44:69:26:f2:41:34:f7"
> You can get a public key's fingerprint by running
> % ssh-keygen-g3 -F publickey.pub
> on the key file.
> Please select how you want to proceed.
>  cancel) Cancel the connection.
>  once) Proceed with the connection but do not save the key.
>  save) Proceed with the connection and save the key for future use.
> Please select one (cancel, once, save): once
> test@localhost#9999's password:
> Remote system type is POSIX.
> sftp> put ndp46-kb4483451-x64_41ba9b8a814351a318e78e4e1c02adc7e9fff67a.exe
> Error: Connection lost.
> {noformat}
> Upon Debugging I found the SftpSystem is terminated because the file channel received close command ( see attached )
> Added event listener to see reading and read method are called but no writing/write methods are never called.
>  
> This can reproducible with v2.2.0



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)

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