diff options
Diffstat (limited to 'security')
| -rw-r--r-- | security/py-paramiko/Makefile | 4 | ||||
| -rw-r--r-- | security/py-paramiko/distinfo | 6 | ||||
| -rw-r--r-- | security/py-paramiko/files/patch-paramiko_client.py | 44 |
3 files changed, 49 insertions, 5 deletions
diff --git a/security/py-paramiko/Makefile b/security/py-paramiko/Makefile index 04864cd0f33e..c4c6ac6b39ac 100644 --- a/security/py-paramiko/Makefile +++ b/security/py-paramiko/Makefile @@ -2,7 +2,7 @@ # $FreeBSD$ PORTNAME= paramiko -PORTVERSION= 2.0.5 +PORTVERSION= 2.2.1 CATEGORIES= security python MASTER_SITES= CHEESESHOP PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX} @@ -16,7 +16,7 @@ LICENSE_FILE= ${WRKSRC}/LICENSE RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}cryptography>0:security/py-cryptography \ ${PYTHON_PKGNAMEPREFIX}ecdsa>0:security/py-ecdsa -USES= python +USES?= python USE_PYTHON= autoplist concurrent distutils CONFLICTS_INSTALL= py??-paramiko1-* diff --git a/security/py-paramiko/distinfo b/security/py-paramiko/distinfo index 27aceb63ff38..5ed1a8548aa2 100644 --- a/security/py-paramiko/distinfo +++ b/security/py-paramiko/distinfo @@ -1,3 +1,3 @@ -TIMESTAMP = 1487797591 -SHA256 (paramiko-2.0.5.tar.gz) = 9fd9381326465ede02b5447d7d3b77332e7719e2ee82f39eb4cd342b8437bfe8 -SIZE (paramiko-2.0.5.tar.gz) = 1191546 +TIMESTAMP = 1501425369 +SHA256 (paramiko-2.2.1.tar.gz) = ff94ae65379914ec3c960de731381f49092057b6dd1d24d18842ead5a2eb2277 +SIZE (paramiko-2.2.1.tar.gz) = 1205818 diff --git a/security/py-paramiko/files/patch-paramiko_client.py b/security/py-paramiko/files/patch-paramiko_client.py new file mode 100644 index 000000000000..5d0c0f116743 --- /dev/null +++ b/security/py-paramiko/files/patch-paramiko_client.py @@ -0,0 +1,44 @@ +--- paramiko/client.py.orig 2017-07-30 14:38:18 UTC ++++ paramiko/client.py +@@ -331,6 +331,30 @@ class SSHClient (ClosingContextManager): + t = self._transport = Transport( + sock, gss_kex=gss_kex, gss_deleg_creds=gss_deleg_creds) + t.use_compression(compress=compress) ++ ++ if port == SSH_PORT: ++ server_hostkey_name = hostname ++ else: ++ server_hostkey_name = "[%s]:%d" % (hostname, port) ++ ++ # if we already have a host key stored, change our key preference ++ known_host_keys = {} ++ known_host_keys.update( ++ self._system_host_keys.get(server_hostkey_name, {}) ++ ) ++ known_host_keys.update( ++ self.get_host_keys().get(server_hostkey_name, {}) ++ ) ++ ++ if known_host_keys: ++ # order the keys as follows: known keys in preferred-keys order, ++ # then unknown keys in preferred-keys order ++ valid_known_keys = [k for k in t._preferred_keys ++ if k in known_host_keys] ++ t._preferred_keys = (valid_known_keys ++ + [k for k in t._preferred_keys ++ if k not in valid_known_keys]) ++ + if gss_kex and gss_host is None: + t.set_gss_host(hostname) + elif gss_kex and gss_host is not None: +@@ -344,10 +368,6 @@ class SSHClient (ClosingContextManager): + if auth_timeout is not None: + t.auth_timeout = auth_timeout + +- if port == SSH_PORT: +- server_hostkey_name = hostname +- else: +- server_hostkey_name = "[%s]:%d" % (hostname, port) + our_server_keys = None + + # If GSS-API Key Exchange is performed we are not required to check the |
