summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSean Johnson <seanjohnson@nbnco.com.au>2014-11-11 13:15:08 +1100
committerJeff Forcier <jeff@bitprophet.org>2014-12-17 15:34:59 -0800
commitd120ce4f06da5866c76e5e61196742a89f3c54c3 (patch)
tree355d8edab20e335c743c01c4587b19c0fa5b9ee7
parente5b105ca57b21b3142a80f29ee07e2a5e87ac547 (diff)
downloadparamiko-d120ce4f06da5866c76e5e61196742a89f3c54c3.tar.gz
Added check for proxycommand none and associated test as per Paramiko Issue 415
Conflicts: tests/test_util.py
-rw-r--r--paramiko/config.py3
-rw-r--r--tests/test_util.py20
2 files changed, 23 insertions, 0 deletions
diff --git a/paramiko/config.py b/paramiko/config.py
index 91943ffb..233a87d9 100644
--- a/paramiko/config.py
+++ b/paramiko/config.py
@@ -73,6 +73,9 @@ class SSHConfig (object):
'host': self._get_hosts(value),
'config': {}
}
+ elif key == 'proxycommand' and value.lower() == 'none':
+ # Proxycommands of none should not be added as an actual value. (Issue #415)
+ continue
else:
if value.startswith('"') and value.endswith('"'):
value = value[1:-1]
diff --git a/tests/test_util.py b/tests/test_util.py
index 7f68de21..bfdc525e 100644
--- a/tests/test_util.py
+++ b/tests/test_util.py
@@ -464,3 +464,23 @@ Host param3 parara
assert safe_vanilla == vanilla, err.format(safe_vanilla, vanilla)
assert safe_has_bytes == expected_bytes, \
err.format(safe_has_bytes, expected_bytes)
+
+ def test_proxycommand_none_issue_418(self):
+ test_config_file = """
+Host proxycommand-standard-none
+ ProxyCommand None
+
+Host proxycommand-with-equals-none
+ ProxyCommand=None
+ """
+ for host, values in {
+ 'proxycommand-standard-none': {'hostname': 'proxycommand-standard-none'},
+ 'proxycommand-with-equals-none': {'hostname': 'proxycommand-with-equals-none'}
+ }.items():
+
+ f = StringIO(test_config_file)
+ config = paramiko.util.parse_ssh_config(f)
+ self.assertEqual(
+ paramiko.util.lookup_ssh_host_config(host, config),
+ values
+ )