Fix Bazaar SSH/SFTP support.

Review Request #2106 — Created Feb. 6, 2011 and submitted — Latest diff uploaded


Review Board


Fix Bazaar SSH/SFTP support.

Bazaar's BZR_SSH environment variable doesn't just accept any arbitrary
path. It requires some known, registered value. An "SSH Vendor," as they
call it. We now register rbssh as such a vendor, and serialize the parameters
sent to it.

This supports sftp and ssh-backed repositories.
Verified that SSH works on both Windows and Linux.

SFTP works on Linux, but not Windows. This is not our fault, but rather
a breakage of bzr on Windows. OpenSSH has the same problem. The communication
works fine, but the process never terminates because the pipes are never closed.