Changelog for
python3-asyncssh-1.8.1-1.19.noarch.rpm :
Sat Jan 7 13:00:00 2017 arunAATTgmx.de
- specfile:
* update copyright year
- update to version 1.8.1:
* Fix an issue in atempting to load the ‘nettle’ library on Windows.
- changes from version 1.8.0:
* Added support for forwarding X11 connections. When requested,
AsyncSSH clients will allow remote X11 applications to tunnel data
back to a local X server and AsyncSSH servers can request an X11
DISPLAY value to export to X11 applications they launch which will
tunnel data back to an X server associated with the client.
* Improved ssh-agent forwarding support on UNIX to allow AsyncSSH
servers to request an SSH_AUTH_SOCK value to export to
applications they launch in order to access the client’s
ssh-agent. Previously, there was support for agent forwarding on
server connections within AsyncSSH itself, but they did not
provide this forwarding to other applications.
* Added support for PuTTY’s Pageant agent on Windows systems,
providing functionality similar to the OpenSSH agent on
UNIX. AsyncSSH client connections from Windows can now access keys
stored in the Pageant agent when they perform public key
authentication.
* Added support for the umac-64 and umac-128 MAC algorithms,
compatible with the implementation in OpenSSH. These algorithms
are preferred over the HMAC algorithms when both are available and
the cipher chosen doesn’t already include a MAC.
* Added curve25519-sha256 as a supported key exchange
algorithm. This algorithm is identical to the previously supported
algorithm named ‘curve25519-sha256AATTlibssh.org’, matching what was
done in OpenSSH 7.3. Either name may now be used to request this
type of key exchange.
* Changed the default order of key exchange algorithms to prefer the
curve25519-sha256 algorithm over the ecdh-sha2-nistp algorithms.
* Added support for a readuntil() function in SSHReader, modeled
after the readuntil() function in asyncio.StreamReader added in
Python 3.5.2. Thanks go to wwjiang for suggesting this and
providing an example implementation.
* Fixed issues where the explicitly provided event loop value was
not being passed through to all of the places which needed
it. Thanks go to Vladimir Rutsky for pointing out this problem and
providing some initial fixes.
* Improved error handling when port forwarding is requested for a
port number outside of the range 0-65535.
* Disabled use of IPv6 in unit tests when opening local loopback
sockets to avoid issues with incomplete IPv6 support in TravisCI.
* Changed the unit tests to always start with a known set of
environment variables rather than inheriting the environment from
the shell running the tests. This was leading to test breakage in
some cases.
Sat Nov 26 13:00:00 2016 arunAATTgmx.de
- update to version 1.7.3:
* Updated unit tests to run properly in environments where OpenSSH
and OpenSSL are not installed.
* Updated a process unit test to not depend on the system’s default
file encoding being UTF-8.
* Updated Mac TravisCI builds to use Xcode 8.1.
* Cleaned up some wording in the documentation.
Sat Oct 29 14:00:00 2016 arunAATTgmx.de
- update to version 1.7.2:
* Fixed an issue with preserving file access times in SFTP, and
update the unit tests to more accurate detect this kind of
failure.
* Fixed some markup errors in the documentation.
* Fixed a small error in the change log for release 1.7.0 regarding
the newly added Diffie Hellman key exchange algorithms.
Sat Oct 15 14:00:00 2016 arunAATTgmx.de
- update to version 1.7.1:
* Fix an error that prevented the docs from building.
- changes from version 1.7.0:
* Added support for group 14 and group 16 Diffie Hellman key
exchange algorithms.
* Added support for using SHA-256 and SHA-512 based signature
algorithms for RSA keys and support for OpenSSH extension
negotiation to advertise these signature algorithms.
* Added new load_keypairs and load_public_keys API functions which
support expicitly loading keys using the same syntax that was
previously available for specifying client_keys,
authorized_client_keys, and server_host_keys arguments when
creating SSH clients and servers.
* Enhanced the SSH agent client to support adding and removing keys
and certificates (including support for constraints) and locking
and unlocking the agent. Support has also been added for adding
and removing smart card keys in the agent.
* Added support for getting and setting a comment value when
generating keys and certificates, and decoding and encoding this
comment when importing and exporting keys that support
it. Currently, this is available for OpenSSH format private keys
and OpenSSH and RFC 4716 format public keys. These comment values
are also passed on to the SSH agent when keys are added to it.
* Fixed a bug in the generation of ECDSA certificates that showed up
when trying to use the nistp384 or nistp521 curves.
* Updated unit tests to use the new key and certificate generation
functions, eliminating the dependency on the ssh-keygen program.
* Updated unit tests to use the new SSH agent support when adding
keys to the SSH agent, eliminating the dependency on the ssh-add
program.
* Incorporated a fix from Vincent Bernat for an issue with launching
ssh-agent on some systems during unit testing.
* Fixed some typos in the documentation found by Jakub Wilk.
Fri Oct 7 14:00:00 2016 mardnhAATTgmx.de
- Use the proper bcrypt package (bcrypt instead of py-bcrypt)
- Recommend libsodium to support curve25519 DHE, ed25519 keys,
and the chacha20-poly1305 cipher.
- Minor specfile cleanup
Sun Sep 4 14:00:00 2016 arunAATTgmx.de
- update to version 1.6.2:
* Added generate_user_certificate() and generate_host_certificate()
methods to SSHKey class to generate SSH certificates, and
export_certificate() and write_certificate() methods on
SSHCertificate class to export certificates for use in other
tools.
* Improved editor unit tests to eliminate timing dependency.
* Cleaned up a few minor documentation issues.
Sun Aug 28 14:00:00 2016 arunAATTgmx.de
- update to version 1.6.1:
* Added generate_private_key() function to create new DSA, RSA,
ECDSA, or Ed25519 private keys which can be used as SSH user and
host keys.
* Removed an unintended dependency in the SSHLineEditor on session
objects keep a private member which referenced the corresponding
channel.
* Fixed a race condition in SFTP unit tests.
* Updated dependencie to require version 1.5 of the cryptography
module and started to take advantage of the new one-shot sign and
verify APIs it now supports.
* Clarified the documentation of the default return value of
eof_received().
* Added new multi-user client and server examples, showing a single
process opening multiple SSH connections in parallel.
* Updated development status and Python versions listed in setup.py.
Wed Aug 17 14:00:00 2016 arunAATTgmx.de
- update to version 1.6.0:
* Added new create_process() and run() APIs modeled after the
“subprocess” module to simplify redirection of stdin, stdout, and
stderr and collection of output from remote SSH processes.
* Added input line editing and echoing capabilities to better
support interactive SSH server applications. AsyncSSH server
sessions will now automatically perform input echoing and provide
basic line editing capabilities to clients which request a
pseudo-terminal, avoiding the need for applications to provide
this functionality.
* Added the ability to use SSHReader objects as async iterators in
Python 3.5, returning input a line at a time.
* Added support for the IUTF8 terminal mode now recognized by
OpenSSH 7.3.
* Fixed a bug where an SSHReader read() call could return an empty
string when it followed a call to readline() instead of blocking
until more input was available.
* Updated AsyncSSH to use the bcrypt package from PyCA, now that it
has support for the kdf function.
* Updated the documentation and examples to show how to take
advantage of the new features listed here.
Sun Jun 19 14:00:00 2016 arunAATTgmx.de
- update to version 1.5.6:
* Added support for Python 3.5 asynchronous context managers in
SSHConnection, SFTPClient, and SFTPFile, while still maintaining
backward compatibility with older Python 3.4 syntax.
* Updated bcrypt check in test code to only test features that
depend on it when the right version is available.
* Switched testing over to using tox to better support testing on
multiple versions of Python.
* Added tests of new Python 3.5 async syntax.
* Expanded Travis CI coverage to test both Python 3.4 and 3.5 on
MacOS.
* Updated documentation and examples to use Python 3.5 syntax.
Sat Jun 18 14:00:00 2016 arunAATTgmx.de
- update to version 1.5.5:
* Updated public_key module to make sure the right version of bcrypt
is installed before attempting to use it.
* Updated forward and sftp module unit tests to work better on
Linux.
* Changed README links to point at new readthedocs.io domain.
- changes from version 1.5.4:
* Added support for setting custom SSH client and server version
strings.
* Added unit tests for the sftp module, bringing AsyncSSH up to 100%
code coverage under test on all modules.
* Added new wait_closed() method in SFTPClient class to wait for an
SFTP client session to be fully closed.
* Fixed an issue with error handling in new parallel SFTP file copy
code.
* Fixed some other minor issues in SFTP found during unit tests.
* Fixed some minor documentation issues.
Sun May 8 14:00:00 2016 arunAATTgmx.de
- specfile:
* updated source url to files.pythonhosted.org
Sun Apr 3 14:00:00 2016 arunAATTgmx.de
- specfile:
* update copyright year
- update to version 1.5.3:
* Added support for opening tunneled SSH connections, where an SSH
connection is opened over another SSH connection’s direct TCP/IP
channel.
* Improve performance of SFTP over high latency connections by
having the internal copy method issue multiple read requests in
parallel.
* Reworked SFTP to mark all coroutine functions explicitly, to
provide better compatibility with the new Python 3.5 “await”
syntax.
* Reworked create_connection() and create_server() functions to do
argument checking immediately rather than in the SSHConnection
constructors, improving error reporting and avoiding a bug in
asyncio which can leak socket objects.
* Fixed a hang which could occur when attempting to close an SSH
connection with a listener still active.
* Fixed an error related to passing keys in via
public_key_auth_requested().
* Fixed a potential leak of an SSHAgentClient object when an error
occurs while opening a client connection.
* Fixed some race conditions related to channel and connection
closes.
* Fixed some minor documentation issues.
* Continued to expand unit test coverage, completing coverage of the
connection module.
Mon Feb 29 13:00:00 2016 termimAATTgmail.com
- update to 1.5.2
* Fix a bug in UNIX domain socket forwarding introduced in 1.5.1 by the
TCP_NODELAY change.
* Fix channel code to report when a channel is closed with incomplete
Unicode data in the receive buffer. This was previously reported
correctly when EOF was received on a channel, but not when it was
closed without sending EOF.
* Added unit tests for channel, forward, and stream modules, partial
unit tests for the connection module, and a placeholder for unit
tests for the sftp module.
- update to 1.5.1
* Added basic support for running AsyncSSH on Windows. Some functionality
such as UNIX domain sockets will not work there, and the test suite will
not run there yet, but basic functionality has been tested and seems
to work. This includes features like bcrypt and support for newer
ciphers provided by libnacl when these optional packages are installed.
* Greatly improved the performance of known_hosts matching on exact
hostnames and addresses. Full wildcard pattern matching is still
supported, but entries involving exact hostnames or addresses are
now matched thousands of times faster.
* Split known_hosts parsing and matching into separate calls so that a
known_hosts file can be parsed once and used to make connections to
several different hosts. Thanks go to Josh Yudaken for suggesting
this and providing a sample implementation.
* Updated AsyncSSH to allow SSH agent forwarding when it is requested
even when local client keys are used to perform SSH authentication.
* Updaded channel state machine to better handle close being received
while the channel is paused for reading. Previously, some data would
not be delivered in this case.
* Set TCP_NODELAY on sockets to avoid latency problems caused by TCP
delayed ACK.
* Fixed a bug where exceptions were not always returned properly when
attempting to drain writes on a stream.
* Fixed a bug which could leak a socket object after an error opening
a local TCP listening socket.
* Fixed a number of race conditions uncovered during unit testing.
- update to 1.5.0
* Added support for OpenSSH-compatible direct and forwarded UNIX domain
socket channels and local and remote UNIX domain socket forwarding.
* Added support for client and server side ssh-agent forwarding.
* Fixed the open_connection() method on SSHServerConnection to not include
a handler_factory argument. This should only have been present on the
start_server() method.
* Fixed wait_closed() on SSHForwardListener to work properly when a
close is in progress at the time of the call.
Tue Jan 26 13:00:00 2016 termimAATTgmail.com
- update to 1.4.1
* Fixed a bug in SFTP introduced in 1.4.0 related to handling of
responses to non-blocking file closes.
* Updated code to avoid calling asyncio.async(), deprecated in
Python 3.4.4.
* Updated unit tests to avoid errors on systems with an older version
of OpenSSL installed.
Wed Jan 20 13:00:00 2016 termimAATTgmail.com
- update to 1.4.0
* Added ssh-agent client support, automatically using it when
SSH_AUTH_SOCK is set and client private keys aren’t explicitly
provided.
* Added new wait_closed() API on SSHConnection to allow applications to
wait for a connection to be fully closed and updated examples to use
it.
* Added a new login_timeout argument when create an SSH server.
* Added a missing acknowledgement response when canceling port forwarding
and fixed a few other issues related to cleaning up port forwarding
listeners.
* Added handlers to improve the catching and reporting of exceptions that
are raised in asynchronous tasks.
* Reworked channel state machine to perform clean up on a channel only
after a close is both sent and received.
* Fixed SSHChannel to run the connection_lost() handler on the SSHSession
before unblocking callers of wait_closed().
* Fixed wait_closed() on SSHListener to wait for the acknowledgement from
the SSH server before returning.
* Fixed a race condition in port forwarding code.
* Fixed a bug related to sending a close on a channel which got a failure
when being opened.
* Fixed a bug related to handling term_type being set without term_size.
* Fixed some issues related to the automatic conversion of client
keyboard-interactive auth to password auth. With this change, automatic
conversion will only occur if the application doesn’t override the
kbdint_challenge_received() method and it will only attempt to
authenticate once with the password provided.
Sat Dec 5 13:00:00 2015 termimAATTgmail.com
- update to 1.3.2
* Added server-side support for handling password changes during password
authentication, and fixed a few other auth-related bugs.
* Added the ability to override the automatic support for
keyboard-interactive authentication when password authentication is
supported.
* Fixed a race condition in unblocking streams.
* Removed support for OpenSSH v00 certificates now that OpenSSH no longer
supports them.
* Added unit tests for auth module.
Thu Nov 26 13:00:00 2015 termimAATTgmail.com
- spec file change
* comment out tests as they requre random numbers disabled on the OBS
version of python
- update to 1.3.1
* Updated AsyncSSH to depend on version 1.1 or later of PyCA and added
support for using its new Elliptic Curve Diffie Hellman (ECDH)
implementation, replacing the the previous AsyncSSH native Python
version.
* Added support for specifying a passphrase in the create_connection,
create_server, connect, and listen functions to allow file names or byte
strings containing encrypted client and server host keys to be specified
in those calls.
* Fixed handling of cancellation in a few AsyncSSH calls, so it is now
possible to make calls to things like stream read or drain which time
out.
* Fixed a bug in keyboard-interactive fallback to password auth which was
introduced when support was added for auth functions optionally being
coroutines.
* Move bcrypt check in encrypted key handling until it is needed so
better errors can be returned if a passphrase is not specified or the key
derivation function used in a key is unknown.
* Added unit tests for the auth_keys module.
* Updated unit tests to better handle bcrypt or libnacl not being
installed.
- update to 1.3.0
* Updated AsyncSSH dependencies to make PyCA version 1.0.0 or later
mandatory and remove the older PyCrypto support. This change also adds
support for the PyCA implementation of ECDSA and removes support for
RC2-based private key encryption that was only supported by PyCrypto.
* Refactored ECDH and Curve25519 key exchange code so they can share an
implementation, and prepared the code for adding a PyCA shim for this as
soon as support for that is released.
* Hardened the DSA and RSA implementations to do stricter checking of the
key exchange response, and sped up the RSA implementation by taking
advantage of optional RSA private key parameters when they are present.
* Added support for asynchronous client and server authentication,
allowing auth-related callbacks in SSHClient and SSHServer to optionally
be defined as coroutines.
* Added support for asynchronous SFTP server processing, allowing
callbacks in SFTPServer to optionally be defined as coroutines.
* Added support for a broader set of open mode flags in the SFTP
server. Note that this change is not completely backward compatible with
previous releases. If you have application code which expects a Python
mode string as an argument to SFTPServer open method, it will need to be
changed to expect a pflags value instead.
* Fixed handling of eof_received() when it returns false to close the
half-open connection but still allow sending or receiving of exit status
and exit signals.
* Added unit tests for the asn1, cipher, compression, ec, kex,
known_hosts, mac, and saslprep modules and expended the set of pbe and
public_key unit tests.
* Fixed a set of issues uncovered by ASN.1 unit tests:
- Removed extra 0xff byte when encoding integers of the form -128
*256^n
- Fixed decoding error for OIDs beginning with 2.n where n >= 40
- Fixed range check for second component of ObjectIdentifier
- Added check for extraneous 0x80 bytes in ObjectIdentifier components
- Added check for negative component values in ObjectIdentifier
- Added error handling for ObjectIdentifier components being non-integer
- Added handling for missing length byte after extended tag
- Raised ASN1EncodeError instead of TypeError on unsupported types
* Added validation on asn1_class argument, and equality and hash methods
to BitString, RawDERObject, and TaggedDERObject. Also, reordered
RawDERObject arguments to be consistent with TaggedDERObject and added
str method to ObjectIdentifier.
* Fixed a set of issues uncovered by additional pbe unit tests:
- Encoding and decoding of PBES2-encrypted keys with a PRF other than
SHA1 is now handled correctly.
- Some exception messages were made more specific.
- Additional checks were put in for empty salt or zero iteration count
in encryption parameters.
* Fixed a set of issues uncovered by additional public key unit tests:
- Properly handle PKCS#8 keys with invalid ASN.1 data
- Properly handle PKCS#8 DSA & RSA keys with non-sequence for arg_params
- Properly handle attempts to import empty string as a public key
- Properly handle encrypted PEM keys with missing DEK-Info header
- Report check byte mismatches for encrypted OpenSSH keys as bad passphrase
- Return KeyImportError instead of KeyEncryptionError when passphrase
is needed but not provided
* Added information about branches to CONTRIBUTING guide.
* Performed a bunch of code cleanup suggested by pylint.
Sat Sep 12 14:00:00 2015 termimAATTgmail.com
- update to version 1.2.1:
* Fixed a problem with passing in client_keys=None to disable public key
authentication in the SSH client.
* Updated Unicode handling to allow multi-byte Unicode characters to be
split across successive SSH data messages.
* Added a note to the documentation for AsyncSSH create_connection()
explaining how to perform the equivalent of a connect with a timeout.
Sat Jun 6 14:00:00 2015 arunAATTgmx.de
- specfile:
* removed README (only README.rst in tar ball)
- update to version 1.2.0:
* Fixed a problem with the SSHConnection context manager on Python
versions older than 3.4.2.
* Updated the documentation for get_extra_info() in the
SSHConnection, SSHChannel, SSHReader, and SSHWriter classes to
contain pointers to get_extra_info() in their parent transports to
make it easier to see all of the attributes which can be queried.
* Clarified the legal return values for the session_requested(),
connection_requested(), and server_requested() methods in
SSHServer.
* Eliminated calls to the deprecated importlib.find_loader() method.
* Made improvements to README suggested by Nicholas Chammas.
* Fixed a number of issues identified by pylint.
Mon May 25 14:00:00 2015 arunAATTgmx.de
- update to version 1.1.1:
* Added new start_sftp_server method on SSHChannel to allow
applications using the non-streams API to start an SFTP server.
* Enhanced the default format_longname() method in SFTPServer to
properly handle the case where not all of the file attributes are
returned by stat().
* Fixed a bug related to the new allow_pty parameter in
create_server.
* Fixed a bug in the hashed known_hosts support introduced in some
recent refactoring of the host pattern matching code.
Mon May 25 14:00:00 2015 arunAATTgmx.de
- update to version 1.1.0:
* SFTP is now supported!
- Both client and server support is available.
- SFTP version 3 is supported, with OpenSSH extensions.
- Recursive transfers and glob matching are supported in the client.
- File I/O APIs allow files to be accessed without downloading them.
* New simplified connect and listen APIs have been added.
* SSHConnection can now be used as a context manager.
* New arguments to create_server now allow the specification of a
session_factory and encoding or sftp_factory as well as controls
over whether a pty is allowed and the window and max packet size,
avoiding the need to create custom SSHServer subclasses or custom
SSHServerChannel instances.
* New examples have been added for SFTP and to show the use of the
new connect and listen APIs.
* Copyrights in changed files have all been updated to 2015.
Sun Apr 12 14:00:00 2015 arunAATTgmx.de
- specfile:
* add bcrypt requirement (test won\'t work otherwise)
- update to versin 1.0.1:
* Fixed a bug in OpenSSH private key encryption introduced in some
recent cipher refactoring.
* Added bcrypt and libnacl as optional dependencies in setup.py.
* Changed test_keys test to work properly when bcrypt or libnacl
aren’t installed.
- changes from version 1.0.0:
* Host and user certificates are now supported!
+ Enforcement is done on principals in certificates.
+ Enforcement is done on force-command and source-address critical
options.
+ Enforcement is done on permit-pty and permit-port-forwarding
extensions.
* OpenSSH-style known hosts files are now supported!
+ Positive and negative wildcard and CIDR-style patterns are
supported.
+ HMAC-SHA1 hashed host entries are supported.
+ The AATTcert-authority and AATTrevoked markers are supported.
* OpenSSH-style authorized keys files are now supported!
+Both client keys and certificate authorities are supported.
+ Enforcement is done on from and principals options during key
matching.
+ Enforcement is done on no-pty, no-port-forwarding, and
permitopen.
+ The command and environment options are supported.
+ Applications can query for their own non-standard options.
* Support has been added for OpenSSH format private keys.
+ DSA, RSA, and ECDSA keys in this format are now supported.
+ Ed25519 keys are supported when libnacl and libsodium are
installed.
+ OpenSSH private key encryption is supported when bcrypt is
installed.
* Curve25519 Diffie-Hellman key exchange is now available via either
the curve25519-donna or libnacl and libsodium packages.
* ECDSA key support has been enhanced.
+ Support is now available for PKCS#8 ECDSA v2 keys.
+ Support is now available for both NamedCurve and explicit
ECParameter versions of keys, as long as the parameters match
one of the supported curves (nistp256, nistp384, or nistp521).
* Support is now available for the OpenSSH chacha20-poly1305 cipher
when libnacl and libsodium are installed.
* Cipher names specified in private key encryption have been changed
to be consistent with OpenSSH cipher naming, and all SSH ciphers
can now be used for encryption of keys in OpenSSH private key
format.
* A couple of race conditions in SSHChannel have been fixed and
channel cleanup is now delayed to allow outstanding message
handling to finish.
* Channel exceptions are now properly delivered in the streams API.
* A bug in SSHStream read() where it could sometimes return more
data than requested has been fixed. Also, read() has been changed
to properly block and return all data until EOF or a signal is
received when it is called with no length.
* A bug in the default implementation of keyboard-interactive
authentication has been fixed, and the matching of a password
prompt has been loosened to allow it to be used for password
authentication on more devices.
* Missing code to resume reading after a stream is paused has been
added.
* Improvements have been made in the handling of canceled requests.
* The test code has been updated to test Ed25519 and OpenSSH format
private keys.
* Examples have been updated to reflect some of the new
capabilities.
Sun Mar 29 14:00:00 2015 termimAATTgmail.com
- Initial checkin asyncssh-0.9.2