diff options
author | Olle Lundberg <geek@nerd.sh> | 2012-11-20 12:43:40 +0100 |
---|---|---|
committer | Olle Lundberg <geek@nerd.sh> | 2012-11-20 12:43:40 +0100 |
commit | a07a339006259eb7ad60993415493d2d25a760d3 (patch) | |
tree | bb0c94de7fe97a50bbfbd9081fddc8620d9ec82e | |
parent | 5670e111c95612fc1c96135ca0e942ed89ec5420 (diff) |
Create a copy of the identityfile list.
The copy is needed else the original
identityfile list is in the internal
config list is updated when we modify
the return dictionary.
-rw-r--r-- | paramiko/config.py | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/paramiko/config.py b/paramiko/config.py index 135e0090..c5a58040 100644 --- a/paramiko/config.py +++ b/paramiko/config.py @@ -122,7 +122,11 @@ class SSHConfig (object): for match in matches: for key, value in match['config'].iteritems(): if key not in ret: - ret[key] = value + # Create a copy of the original value, + # else it will reference the original list + # in self._config and update that value too + # when the extend() is being called. + ret[key] = value[:] elif key == 'identityfile': ret[key].extend(value) ret = self._expand_variables(ret, hostname) |