Skip to content
Snippets Groups Projects
Commit a5b112befe92 authored by Jeff Forcier's avatar Jeff Forcier
Browse files

Merge branch '1.10' into 1.11

Conflicts:
	NEWS
No related branches found
No related tags found
No related merge requests found
...@@ -12,6 +12,20 @@ ...@@ -12,6 +12,20 @@
Releases Releases
======== ========
v1.11.3 (8th Jan 2014)
----------------------
* #176: Fix AttributeError bugs in known_hosts file (re)loading. Thanks to
Nathan Scowcroft for the patch & Martin Blumenstingl for the initial test
case.
v1.10.5 (8th Jan 2014)
----------------------
* #176: Fix AttributeError bugs in known_hosts file (re)loading. Thanks to
Nathan Scowcroft for the patch & Martin Blumenstingl for the initial test
case.
v1.11.2 (27th Sep 2013) v1.11.2 (27th Sep 2013)
----------------------- -----------------------
......
...@@ -189,8 +189,8 @@ ...@@ -189,8 +189,8 @@
# update local host keys from file (in case other SSH clients # update local host keys from file (in case other SSH clients
# have written to the known_hosts file meanwhile. # have written to the known_hosts file meanwhile.
if self.known_hosts is not None: if self._host_keys_filename is not None:
self.load_host_keys(self.known_hosts) self.load_host_keys(self._host_keys_filename)
f = open(filename, 'w') f = open(filename, 'w')
for hostname, keys in self._host_keys.iteritems(): for hostname, keys in self._host_keys.iteritems():
......
...@@ -20,8 +20,9 @@ ...@@ -20,8 +20,9 @@
Some unit tests for SSHClient. Some unit tests for SSHClient.
""" """
from __future__ import with_statement # Python 2.5 support
import socket import socket
import threading import threading
import time import time
import unittest import unittest
import weakref import weakref
...@@ -23,8 +24,10 @@ ...@@ -23,8 +24,10 @@
import socket import socket
import threading import threading
import time import time
import unittest import unittest
import weakref import weakref
import warnings
import os
from binascii import hexlify from binascii import hexlify
import paramiko import paramiko
...@@ -184,7 +187,33 @@ ...@@ -184,7 +187,33 @@
self.assertEquals(1, len(self.tc.get_host_keys())) self.assertEquals(1, len(self.tc.get_host_keys()))
self.assertEquals(public_host_key, self.tc.get_host_keys()['[%s]:%d' % (self.addr, self.port)]['ssh-rsa']) self.assertEquals(public_host_key, self.tc.get_host_keys()['[%s]:%d' % (self.addr, self.port)]['ssh-rsa'])
def test_5_cleanup(self): def test_5_save_host_keys(self):
"""
verify that SSHClient correctly saves a known_hosts file.
"""
warnings.filterwarnings('ignore', 'tempnam.*')
host_key = paramiko.RSAKey.from_private_key_file('tests/test_rsa.key')
public_host_key = paramiko.RSAKey(data=str(host_key))
localname = os.tempnam()
client = paramiko.SSHClient()
self.assertEquals(0, len(client.get_host_keys()))
host_id = '[%s]:%d' % (self.addr, self.port)
client.get_host_keys().add(host_id, 'ssh-rsa', public_host_key)
self.assertEquals(1, len(client.get_host_keys()))
self.assertEquals(public_host_key, client.get_host_keys()[host_id]['ssh-rsa'])
client.save_host_keys(localname)
with open(localname) as fd:
assert host_id in fd.read()
os.unlink(localname)
def test_6_cleanup(self):
""" """
verify that when an SSHClient is collected, its transport (and the verify that when an SSHClient is collected, its transport (and the
transport's packetizer) is closed. transport's packetizer) is closed.
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment