I've not played with this project much, but thought I should check
this out after I saw the SFTP support in the release notes. I could
not get a working SFTP session using FileZilla. SSHD is running on
Windows using the code from trunk. I've modified the main method in
SshServer to add the SFTP subsystem. I was able to connect, login and
then when FileZilla does a PWD, it errors out as it receives an
invalid response from the server. Below is the debug log from
FileZilla:

Status: Connecting to localhost:2222...
Trace:  Going to execute "C:\Program Files (x86)\FileZilla FTP 
Client\fzsftp.exe"
Response:       fzSftp started
Trace:  CSftpControlSocket::ConnectParseResponse(fzSftp started)
Trace:  CSftpControlSocket::SendNextCommand()
Trace:  CSftpControlSocket::ConnectSend()
Command:        keyfile "C:\Users\sai\temp\filezilla.ppk"
Trace:  CSftpControlSocket::ConnectParseResponse()
Trace:  CSftpControlSocket::SendNextCommand()
Trace:  CSftpControlSocket::ConnectSend()
Command:        open "p...@localhost" 2222
Trace:  Looking up host "localhost"
Trace:  Connecting to 127.0.0.1 port 2222
Trace:  Server version: SSH-2.0-${POM.ARTIFACTID}-${POM.VERSION}
Trace:  Using SSH protocol version 2
Trace:  We claim version: SSH-2.0-PuTTY_Local:_Oct_10_2009_18:54:23
Trace:  Using Diffie-Hellman with standard group "group14"
Trace:  Doing Diffie-Hellman key exchange with hash SHA-1
Command:        Trust new Hostkey: Once
Trace:  Host key fingerprint is:
Trace:  ssh-dss 1024 90:c8:10:01:dd:81:97:00:65:ec:c3:f9:d9:16:2d:b1
Trace:  Initialised AES-256 CBC client->server encryption
Trace:  Initialised HMAC-SHA1 client->server MAC algorithm
Trace:  Initialised AES-256 CBC server->client encryption
Trace:  Initialised HMAC-SHA1 server->client MAC algorithm
Trace:  Successfully loaded 1 key pair from file
Trace:  Offered public key from "C:\Users\sai\temp\filezilla.ppk"
Trace:  Offer of public key accepted, trying to authenticate using it.
Trace:  Access granted
Trace:  Opened channel for session
Trace:  Started a shell/command
Status: Connected to SAI
Trace:  CSftpControlSocket::ConnectParseResponse()
Trace:  CSftpControlSocket::ResetOperation(0)
Trace:  CControlSocket::ResetOperation(0)
Status: Retrieving directory listing...
Trace:  CSftpControlSocket::SendNextCommand()
Trace:  CSftpControlSocket::ChangeDirSend()
Command:        pwd
Response:       Current directory is: "."
Trace:  ControlSocket.cpp(361): Failed to parse returned path.   
caller=0p2835f80
Trace:  CSftpControlSocket::ResetOperation(2)
Trace:  CControlSocket::ResetOperation(2)
Trace:  CSftpControlSocket::ParseSubcommandResult(2)
Trace:  CSftpControlSocket::ListSubcommandResult()
Trace:  CSftpControlSocket::ResetOperation(2)
Trace:  CControlSocket::ResetOperation(2)
Error:  Failed to retrieve directory listing

Notice that the reply to pwd (real path) is just ".". I think it
should start with "/", and that is why FileZilla is blowing up.

In short, the question is - should SSH_FXP_REALPATH return the path
(virtual or absolute) instead of just the name?

Regards,
Sai Pullabhotla





On Tue, May 4, 2010 at 8:19 AM, Guillaume Nodet <[email protected]> wrote:
> I've uploaded a RC for SSHD 0.4.0 at
>  https://repository.apache.org/content/repositories/orgapachemina-003/
>
> The release notes are available at
>  https://cwiki.apache.org/SSHD/sshd-040.html
>
> Please review and vote
>
> --
> Cheers,
> Guillaume Nodet
> ------------------------
> Blog: http://gnodet.blogspot.com/
> ------------------------
> Open Source SOA
> http://fusesource.com
>

Reply via email to