diff options
author | Jeff Forcier <jeff@bitprophet.org> | 2017-08-28 20:55:25 -0700 |
---|---|---|
committer | Jeff Forcier <jeff@bitprophet.org> | 2017-08-28 20:55:25 -0700 |
commit | fe06342df3daf405aa4d88e4ceebd8a757e7a7c6 (patch) | |
tree | 58bd3917e06c415596d1e67cb5887becc601ae04 | |
parent | b9f7b6058906ac7f80b815570731d967b299ba8d (diff) | |
download | paramiko-fe06342df3daf405aa4d88e4ceebd8a757e7a7c6.tar.gz |
Implement DSS certs
-rw-r--r-- | paramiko/dsskey.py | 9 | ||||
-rw-r--r-- | paramiko/transport.py | 1 |
2 files changed, 6 insertions, 4 deletions
diff --git a/paramiko/dsskey.py b/paramiko/dsskey.py index b3197f62..f9c02153 100644 --- a/paramiko/dsskey.py +++ b/paramiko/dsskey.py @@ -61,10 +61,11 @@ class DSSKey(PKey): if vals is not None: self.p, self.q, self.g, self.y = vals else: - if msg is None: - raise SSHException('Key object may not be empty') - if msg.get_text() != 'ssh-dss': - raise SSHException('Invalid key') + self._check_type_and_load_cert( + msg=msg, + key_type='ssh-dss', + cert_type='ssh-dss-cert-v01@openssh.com', + ) self.p = msg.get_mpint() self.q = msg.get_mpint() self.g = msg.get_mpint() diff --git a/paramiko/transport.py b/paramiko/transport.py index 0dc2e28a..d97bee80 100644 --- a/paramiko/transport.py +++ b/paramiko/transport.py @@ -206,6 +206,7 @@ class Transport(threading.Thread, ClosingContextManager): 'ssh-rsa': RSAKey, 'ssh-rsa-cert-v01@openssh.com': RSAKey, 'ssh-dss': DSSKey, + 'ssh-dss-cert-v01@openssh.com': DSSKey, 'ecdsa-sha2-nistp256': ECDSAKey, 'ecdsa-sha2-nistp384': ECDSAKey, 'ecdsa-sha2-nistp521': ECDSAKey, |