[project @ Arch-1:robey@lag.net--2003-public%secsh--dev--1.0--patch-46]
README update notes added notes on what's new, what to watch out for in py22. added a "since: fearow" to all the relevant API calls that are new.
This commit is contained in:
parent
17acfb5d28
commit
5691415af1
29
README
29
README
|
@ -1,5 +1,5 @@
|
||||||
paramiko 0.9
|
paramiko 0.9
|
||||||
"eevee" release, 08 mar 2004
|
"fearow" release, 06 apr 2004
|
||||||
|
|
||||||
Copyright (c) 2003-2004 Robey Pointer <robey@lag.net>
|
Copyright (c) 2003-2004 Robey Pointer <robey@lag.net>
|
||||||
|
|
||||||
|
@ -51,8 +51,12 @@ python 2.2 may work, thanks to some patches from Roger Binns. things to watch
|
||||||
out for:
|
out for:
|
||||||
* sockets in 2.2 don't support timeouts, so the 'select' module is imported
|
* sockets in 2.2 don't support timeouts, so the 'select' module is imported
|
||||||
to do polling. this may not work on windows. (works fine on osx.)
|
to do polling. this may not work on windows. (works fine on osx.)
|
||||||
* there is no logging, period.
|
* logging is mostly stubbed out. it works just enough to let paramiko create
|
||||||
you really should upgrade to python 2.3. laziness is no excuse!
|
log files for debugging, if you want them. to get real logging, you can
|
||||||
|
backport python 2.3's logging package. Roger has done that already:
|
||||||
|
http://sourceforge.net/project/showfiles.php?group_id=75211&package_id=113804
|
||||||
|
|
||||||
|
you really should upgrade to python 2.3. laziness is no excuse! :)
|
||||||
|
|
||||||
|
|
||||||
*** DEMO
|
*** DEMO
|
||||||
|
@ -95,6 +99,25 @@ not much is tested yet, but it's a start. the tests for SFTP are probably
|
||||||
the best and easiest examples of how to use the SFTP class.
|
the best and easiest examples of how to use the SFTP class.
|
||||||
|
|
||||||
|
|
||||||
|
*** WHAT'S NEW
|
||||||
|
|
||||||
|
highlights of what's new in each release:
|
||||||
|
|
||||||
|
v0.9 FEAROW
|
||||||
|
* Transport.send_ignore() -- send random ignored bytes
|
||||||
|
* RSAKey/DSSKey added from_private_key_file() as a factory constructor;
|
||||||
|
write_private_key_file() & generate() to create and save ssh2 keys;
|
||||||
|
get_base64() to retrieve the exported public key
|
||||||
|
* Transport added global_request() [client] and check_global_request() [server]
|
||||||
|
* Transport.get_remove_server_key() now returns a PKey object instead of a
|
||||||
|
tuple of strings
|
||||||
|
* Transport.get_username() -- return the username you auth'd as [client]
|
||||||
|
* Transport.set_keepalive() -- makes paramiko send periodic junk packets to the
|
||||||
|
remote host, to keep the session active
|
||||||
|
* python 2.2 support (thanks to Roger Binns)
|
||||||
|
* misc. bug fixes
|
||||||
|
|
||||||
|
|
||||||
*** MISSING LINKS
|
*** MISSING LINKS
|
||||||
|
|
||||||
* ctr forms of ciphers are missing (blowfish-ctr, aes128-ctr, aes256-ctr)
|
* ctr forms of ciphers are missing (blowfish-ctr, aes128-ctr, aes256-ctr)
|
||||||
|
|
|
@ -92,6 +92,8 @@ class Transport (BaseTransport):
|
||||||
|
|
||||||
@return: username that was authenticated, or C{None}.
|
@return: username that was authenticated, or C{None}.
|
||||||
@rtype: string
|
@rtype: string
|
||||||
|
|
||||||
|
@since: fearow
|
||||||
"""
|
"""
|
||||||
return self.username
|
return self.username
|
||||||
|
|
||||||
|
|
|
@ -151,6 +151,8 @@ class DSSKey (PKey):
|
||||||
@type progress_func: function
|
@type progress_func: function
|
||||||
@return: new private key
|
@return: new private key
|
||||||
@rtype: L{DSSKey}
|
@rtype: L{DSSKey}
|
||||||
|
|
||||||
|
@since: fearow
|
||||||
"""
|
"""
|
||||||
dsa = DSA.generate(bits, randpool.get_bytes, progress_func)
|
dsa = DSA.generate(bits, randpool.get_bytes, progress_func)
|
||||||
key = DSSKey()
|
key = DSSKey()
|
||||||
|
|
|
@ -117,6 +117,8 @@ class PKey (object):
|
||||||
|
|
||||||
@return: a base64 string containing the public part of the key.
|
@return: a base64 string containing the public part of the key.
|
||||||
@rtype: string
|
@rtype: string
|
||||||
|
|
||||||
|
@since: fearow
|
||||||
"""
|
"""
|
||||||
return ''.join(base64.encodestring(str(self)).split('\n'))
|
return ''.join(base64.encodestring(str(self)).split('\n'))
|
||||||
|
|
||||||
|
@ -189,6 +191,8 @@ class PKey (object):
|
||||||
@raise PasswordRequiredException: if the private key file is
|
@raise PasswordRequiredException: if the private key file is
|
||||||
encrypted, and C{password} is C{None}.
|
encrypted, and C{password} is C{None}.
|
||||||
@raise SSHException: if the key file is invalid.
|
@raise SSHException: if the key file is invalid.
|
||||||
|
|
||||||
|
@since: fearow
|
||||||
"""
|
"""
|
||||||
key = cl()
|
key = cl()
|
||||||
key.read_private_key_file(filename, password)
|
key.read_private_key_file(filename, password)
|
||||||
|
@ -207,6 +211,8 @@ class PKey (object):
|
||||||
|
|
||||||
@raise IOError: if there was an error writing the file.
|
@raise IOError: if there was an error writing the file.
|
||||||
@raise SSHException: if the key is invalid.
|
@raise SSHException: if the key is invalid.
|
||||||
|
|
||||||
|
@since: fearow
|
||||||
"""
|
"""
|
||||||
raise exception('Not implemented in PKey')
|
raise exception('Not implemented in PKey')
|
||||||
|
|
||||||
|
|
|
@ -142,6 +142,8 @@ class RSAKey (PKey):
|
||||||
@type progress_func: function
|
@type progress_func: function
|
||||||
@return: new private key
|
@return: new private key
|
||||||
@rtype: L{RSAKey}
|
@rtype: L{RSAKey}
|
||||||
|
|
||||||
|
@since: fearow
|
||||||
"""
|
"""
|
||||||
rsa = RSA.generate(bits, randpool.get_bytes, progress_func)
|
rsa = RSA.generate(bits, randpool.get_bytes, progress_func)
|
||||||
key = RSAKey()
|
key = RSAKey()
|
||||||
|
|
|
@ -479,6 +479,8 @@ class BaseTransport (threading.Thread):
|
||||||
@param interval: seconds to wait before sending a keepalive packet (or
|
@param interval: seconds to wait before sending a keepalive packet (or
|
||||||
0 to disable keepalives).
|
0 to disable keepalives).
|
||||||
@type interval: int
|
@type interval: int
|
||||||
|
|
||||||
|
@since: fearow
|
||||||
"""
|
"""
|
||||||
self.keepalive_interval = interval
|
self.keepalive_interval = interval
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue