Topic "Possible bug in sftp v5 attrib processing?"

Author Message
galb@vandyke.com
[View user's profile]

Joined: 2005-08-20
Posts: 2
Hi,

I'm working on SFTP v5 support in VShell, and I've got a bug (either yours or mine, I'm not sure which.)

I'm using Version 3.7.6 (Build 306)

First off, when I bring up the properties dialog on a file:

+ WinSCP doesn't send anything to the server
+ Group / Owner are blank

My guess is it is just using the information returned during the FXP_READDIR processing-- however, under windows, it is far too expensive to fetch the security information for every file during FXP_READDIR.

Maybe you could check the "supported" extension, and if it says it supports OWNER/GROUP but it didn't send it to you during READDIR, perform a stat operation and ask for it explicitly?

Now, on to the problem:

If I type a username into the dialog combo box for either goupr of owner, I get this:

+ WinSCP hits me with a lstat() request.

+ I then get a dialog saying:
"Cannot change properties of file
'tsvn_loop_scopes1.patch'"

"EAccessViolation"

The interesting section from the log is:

Changing properties of "tsvn_loop_scopes1.patch" (No)
- owner: "galb"
Type: SSH_FXP_LSTAT, Size: 64, Number: 4615
07,00,00,12,07,00,00,00,33,45,3A,2F,55,73,65,72,73,2F,47,61,6C,62,2F,45,3A,
2F,55,73,65,72,73,2F,47,61,6C,62,2F,74,73,76,6E,5F,6C,6F,6F,70,5F,73,63,6F,
70,65,73,31,2E,70,61,74,63,68,00,00,00,AD,
Sent 68 bytes
There are 0 bytes remaining in the send buffer
Received 4 bytes
Received 34 bytes
Type: SSH_FXP_STATUS, Size: 34, Number: 4356
65,00,00,11,04,00,00,00,00,00,00,00,0F,53,46,54,50,5F,49,5F,53,55,43,43,45,
53,53,20,00,00,00,02,65,6E,
Discarding reserved response
Waiting for another 4 bytes
Looking for incoming data
Select result is 1
Received 4 bytes
Received 112 bytes
Type: SSH_FXP_ATTRS, Size: 112, Number: 4615
69,00,00,12,07,00,00,03,B9,01,00,00,00,00,00,00,09,9C,00,00,00,13,67,61,6C,
62,40,75,74,2E,76,61,6E,64,79,6B,65,2E,63,6F,6D,00,00,00,1B,44,6F,6D,61,69,
6E,20,55,73,65,72,73,40,75,74,2E,76,61,6E,64,79,6B,65,2E,63,6F,6D,00,00,00,
00,43,06,9C,5C,11,96,3E,38,00,00,00,00,43,06,47,59,05,96,82,F0,00,00,00,00,
43,06,47,2F,21,87,11,A0,00,00,00,10,
Asking user:
Cannot change properties of file 'tsvn_loop_scopes1.patch'. (EAccessViolation)

I'm not sure what the STATUS packet is (I'm pretty sure my server didn't send a status during that time frame.)

Anyway, the EAccessViolation led me to hope maybe it wasn't my bug Smile

Thanks,

Joseph Galbraith
galb@vandyke.com
Advertisements
martin
[View user's profile]
Site Admin
Joined: 2002-12-10
Posts: 24991
Location: Prague, Czechia
First thanks for notifing me!

galb@vandyke.com wrote:
Type: SSH_FXP_ATTRS, Size: 112, Number: 4615
69,00,00,12,07,00,00,03,B9,01,00,00,00,00,00,00,09,9C,00,00,00,13,67,61,6C,
62,40,75,74,2E,76,61,6E,64,79,6B,65,2E,63,6F,6D,00,00,00,1B,44,6F,6D,61,69,
6E,20,55,73,65,72,73,40,75,74,2E,76,61,6E,64,79,6B,65,2E,63,6F,6D,00,00,00,
00,43,06,9C,5C,11,96,3E,38,00,00,00,00,43,06,47,59,05,96,82,F0,00,00,00,00,
43,06,47,2F,21,87,11,A0,00,00,00,10,

Unfortunatelly I had no problems parsing the packet Sad
Can I have the Windows version of your server with SFTP5 support, so I can try myself?

Quote:
I'm not sure what the STATUS packet is (I'm pretty sure my server didn't send a status during that time frame.)

It is response from some previous processing, that WinSCP had not considered important to wait for (hence the message "Discarding reserved response").
_________________
Martin Prikryl
martin
[View user's profile]
Site Admin
Joined: 2002-12-10
Posts: 24991
Location: Prague, Czechia
galb@vandyke.com wrote:
Maybe you could check the "supported" extension, and if it says it supports OWNER/GROUP but it didn't send it to you during READDIR, perform a stat operation and ask for it explicitly?

Definitelly. But so far no server I have ever seen supported that, so it was not worth implementing it Smile
_________________
Martin Prikryl
Guest




prikryl wrote:

Unfortunatelly I had no problems parsing the packet Sad
Can I have the Windows version of your server with SFTP5 support, so I can try myself?


I can email you a pre alpha snapshot that has the most recent code in (which may not even be complete SFTPv5 support yet... I think I'm pretty close but I still have to review the drafts.)

You should be able to run it in evaluation mode for 30 days. Have we gotten you a permenant evaluators license so you can do interop testing yet?

Email me privately and let me know where you want the zip of the server sent. If we haven't got you a permenant evaluators license yet, let me know who it should show as registered to and where we should send
it and I'll see about getting you one.

Thanks,

Joseph
galb@vandyke.com
galb@vandyke.com
[View user's profile]

Joined: 2005-08-20
Posts: 2
prikryl wrote:
galb@vandyke.com wrote:
Maybe you could check the "supported" extension, and if it says it supports OWNER/GROUP but it didn't send it to you during READDIR, perform a stat operation and ask for it explicitly?

Definitelly. But so far no server I have ever seen supported that, so it was not worth implementing it Smile


Yes... VShell won't send the "supported" or "supported2" packets until 2.5 (if everything goes as I think it will be 2.5.)

But VShell has included the OWNER/GROUP/ACL information in response to a stat request specifically requesting them since v4 support went in.

It might be worth just always sending the stat for properties if the server didn't send you a "supported" packet. (Of course I'm always reluctant to introduce round trips like that into our clients... though in this case, we actually always send the stat at the moment as the client code hasn't been update for SFTP v5 yet.)

Thanks,

Joseph Galbraith
galb@vandyke.com
Advertisements

You can post new topics in this forum






Search Site

What is WinSCP?

It is award-winning SFTP client, SCP client, FTPS client and FTP client integrated into one software program for file transfer to FTP server or secure SFTP server. [More]

And it's free!

Donate

About donations

$9   $19   $49   $99

About donations

Recommend

WinSCP Privacy Policy

WinSCP License