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/21 22:33:00 UTC

[jira] [Updated] (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:all-tabpanel ]

Logan updated SSHD-927:
-----------------------
    Attachment: thread-callstack.txt

> 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
>         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 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