[MERGE] "bzr commit" fails with Microsoft FTP Service

John Arbash Meinel john at arbash-meinel.com
Wed Apr 9 08:46:14 BST 2008


-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Andreas Deininger wrote:
| Hi all,
|
| Using bazaar version 1.3, I successfully checked out a branch via ftp
| from a Windows server which runs the Microsoft FTP Service that comes
| bundled with IIS 6.0.
| While trying to commit my changes, however, I ran into the following error:
| "The system cannot find the file specified."
|
| Using wireshark I found out that Microsoft FTP Service returns: "550
| /path/filename Das System kann die angegebene Datei nicht finden.".
| However, currently, that Microsoft FTP Service specific error message
| is not translated to to the correct exception in the bzr-code.
|
| Notes:
|
| * stacktrace for the error may be found here:
| https://bugs.launchpad.net/bzr/+bug/213849
| * This error and the patch attached are very similar to
| https://bugs.launchpad.net/bzr/+bug/129786 (Thanks to Alexander B. for
| pointing that out)
| * According to https://bugs.launchpad.net/bzr/+bug/129786, vsFTPd
| always returns "550 RNFR command failed." That means that this patch
| cures the vsFTPd issue also, that's why I removed the line from the
| patch submitted with the vsFTPd bug
| (http://launchpadlibrarian.net/8655297/bzr-vsftpd-rnfr-message.patch)
| again.
|
| Thanks for your attention
|
| Regards
| Andreas
|

BB:tweak

I don't think matching 550 anywhere in the string should be accepted. Instead we
should probably do "if s.startswith('550')" or something similar.

I don't know FTP well enough to know that for sure.

Certainly our FTP error handling is a bit weak if they can send
internationalized strings back to us. IIRC the error codes aren't particularly
clear (you get a 550 for more than just file does not exist), which is why most
of our code biases errors with the expected failure mode. (Creating a file
likely doesn't have it's parent exist, renaming a file likely doesn't have the
source exist, etc.)

Anyway, if someone else knows FTP 550 better than I, I'm happy to have a
.startswith() merged.

John
=:->

-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.5 (Cygwin)
Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org

iD8DBQFH/HRGJdeBCYSNAAMRAglGAJ9UibBZbDfFtVRRlx5ibEQsmRo9bwCfTu5q
jIpN78lTfvQyTWTolJkH7bY=
=N95r
-----END PGP SIGNATURE-----




More information about the bazaar mailing list