[win32] sftp access to remote server with SSH key failed
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
Bazaar |
Fix Released
|
High
|
Unassigned | ||
paramiko |
Fix Released
|
Medium
|
Robey Pointer |
Bug Description
I cannot do bzr operations over sftp with remote server when I use SSH key authorisation.
I use native windows version of bzr + paramiko + pageant.exe utility as server for SSH private keys.
When I try to connect to another machine in my local network -- all OK.
When I try to connect to my repo on Aaron Bentley's site (many thanks to Aaron) I cannot do this with bzr. With Putty.exe ssh session works OK.
Here is traceback:
D:\Bazaar\
Connected (version 2.0, client OpenSSH_4.2p1)
Adding ssh-rsa host key for aaronbentley.com: 882392A28664E4C
bzr: ERROR: exceptions.
Traceback (most recent call last):
File "D:\Bazaar\
return run_bzr(argv)
File "D:\Bazaar\
ret = run(*run_argv)
File "D:\Bazaar\
return self.run(
File "D:\Bazaar\
result = func(*args, **kwargs)
File "D:\Bazaar\
self.
File "D:\Bazaar\
control, relpath = bzrdir.
File "D:\Bazaar\
return BzrDir.
File "D:\Bazaar\
return obj(*args, **kwargs)
File "D:\Bazaar\
t, last_err = _try_transport_
File "D:\Bazaar\
return factory(base), None
File "D:\Bazaar\
return klass(base)
File "D:\Bazaar\
self.
File "D:\Bazaar\
self._password)
File "D:\Bazaar\
sftp = _sftp_connect_
File "D:\Bazaar\
sftp = vendor.
File "D:\Bazaar\
t = self._connect(
File "D:\Bazaar\
BZR_
File "E:\Python24\
raise KeyError(key)
KeyError: 'aaronbentley.com'
bzr 0.13.0dev0 on python 2.4.4.final.0 (win32)
arguments: ['c:\\utils\
As I see bzr expect to get key by the name of remote site. What I do wrong?
Paramiko 1.6.3
bzr 0.13.dev revno.2120
Changed in paramiko: | |
status: | Fix Committed → Fix Released |
I think the bug is actually happening two lines above, at:
if host not in BZR_HOSTKEYS: HOSTKEYS[ host] = {}
BZR_
Using a HostKeys object as a dict is deprecated since 1.5.3, but I guess it at least shouldn't throw an exception. I think I can patch paramiko to silently ignore in 1.6.4.
Note that even in 1.6.1, no keys are actually getting added to the hostkeys file. You have to use HostKeys.add() for that. My change to paramiko will just make it stop throwing an exception when you try.