Support LocalSite SSH keys and SSH agent disabling in rbssh.
Review Request #2329 — Created May 1, 2011 and submitted
Support LocalSite SSH keys and SSH agent disabling in rbssh. rbssh now accepts two new parameters (--rb-disallow-agent and --rb-local-site) and accompanying environment variables ($RBSSH_ALLOW_AGENT and $RB_LOCAL_SITE) for better controlling how rbssh performs authentication. Normally, rbssh will use the SSH agent, which can interfere with unit tests. Unit tests will now turn this ability off by setting $RBSSH_ALLOW_AGENT=0. SCMTools can pass the LocalSite name through either --rb-local-site or $RB_LOCAL_SITE (depending on methods available for that SCMTool) in order to tell rbssh which SSH keys it should be looking for. This uses the new LocalSite code in sshutils, meaning that rbssh really has to do very little.
Tested by hand and through unit tests to verify that I was able to use the correct per-LocalSite SSH key when accessing a repository. This requires other changes going up for review in order to actually work when called from SCMTools.