| Summary: | Swapped parameters of SSH_FXP_SYMLINK packet of SFTP protocol | ||
|---|---|---|---|
| Product: | Portable OpenSSH | Reporter: | Martin Prikryl <opensshbugzilla> |
| Component: | sftp-server | Assignee: | OpenSSH Bugzilla mailing list <openssh-bugs> |
| Status: | CLOSED WONTFIX | ||
| Severity: | normal | ||
| Priority: | P2 | ||
| Version: | -current | ||
| Hardware: | All | ||
| OS: | All | ||
|
Description
Martin Prikryl
2004-05-04 17:35:02 AEST
Yep, that looks like a bug to me. I suspect the confusion is due to SSH_FXP_SYMLINK having its arguments in the opposite order to the equivalent Unix "ln" command, whereas other (eg FXP_RENAME) are the same as their equivalents. The next question is what to do about it, and when? AFAIK, sftp doesn't know what SSH server is on the other end, except for the SFTP protocol version (it just runs "ssh -s host sftp"). Maybe fix it next time the protocol version supported is bumped? Are there any plans to support newer version of SFTP? You support version 3, while there is version 5 draft published already. BTW: version 5 has mechanism to detect version of SFTP server software (not SFTP protocol version). Possible (maybe dirty) workaround would be to utilize SFTP extension to let the client know if the bug is fixed already. But it would not solve problem when other vendors's client connects to your server. I have thought about adding filexfer-06 support but every time I go to read the internet-draft again I am repulsed by all the unnecessary bloat that has crept in. Not to mention that the filexfer negotiation mechanism requires that we implement versions 4 and 5 of the protocol too. We could use an extension to detect this bug, but I recall some discussion on the working group mailing list that SSH_FXP_INIT extensions were removed because of incompatibility with filexfer-02 clients. Therefore, we would need to use a SSH_FXP_EXTENDED packet. This would need an additional round-trip and would only work for clients that know about the extension anyway. I also think that it is overkill to do all this to fix a argument-swapping bug. So I think this solution is pretty useless :( To avoid breaking deployed software, I think that the only "solution" is to leave the bug as it is and fix it if/when we add support for a newer filexfer version. Change all RESOLVED bug to CLOSED with the exception of the ones fixed post-4.4. |