summaryrefslogtreecommitdiffhomepage
diff options
context:
space:
mode:
authorJeff Forcier <jeff@bitprophet.org>2022-03-14 19:21:01 -0400
committerJeff Forcier <jeff@bitprophet.org>2022-03-14 19:23:40 -0400
commit76b781754bfefe21706762442c422bac523701e4 (patch)
tree18c662d43922a463e173f97b531d44d7edac8ffd
parentabbf52a8c390b38ab4b8d83fc23bbaab3a31abb4 (diff)
Use args, not kwargs, to retain py2 compat for now
-rw-r--r--paramiko/pkey.py5
-rw-r--r--sites/www/changelog.rst8
-rw-r--r--tests/test_pkey.py4
3 files changed, 13 insertions, 4 deletions
diff --git a/paramiko/pkey.py b/paramiko/pkey.py
index 67945261..797e7723 100644
--- a/paramiko/pkey.py
+++ b/paramiko/pkey.py
@@ -565,9 +565,10 @@ class PKey(object):
# existing files, so using all 3 in both cases is fine. Ditto the use
# of the 'mode' argument; it should be safe to give even for existing
# files (though it will not act like a chmod in that case).
- kwargs = dict(flags=os.O_WRONLY | os.O_TRUNC | os.O_CREAT, mode=o600)
+ # TODO 3.0: turn into kwargs again
+ args = [os.O_WRONLY | os.O_TRUNC | os.O_CREAT, o600]
# NOTE: yea, you still gotta inform the FLO that it is in "write" mode
- with os.fdopen(os.open(filename, **kwargs), mode="w") as f:
+ with os.fdopen(os.open(filename, *args), "w") as f:
# TODO 3.0: remove the now redundant chmod
os.chmod(filename, o600)
self._write_private_key(f, key, format, password=password)
diff --git a/sites/www/changelog.rst b/sites/www/changelog.rst
index 45bacd22..d5215995 100644
--- a/sites/www/changelog.rst
+++ b/sites/www/changelog.rst
@@ -2,6 +2,14 @@
Changelog
=========
+- :bug:`2001` Fix Python 2 compatibility breakage introduced in 2.10.1. Spotted
+ by Christian Hammond.
+
+ .. warning::
+ This is almost certainly the last time we will fix Python 2 related
+ errors! Please see `the roadmap
+ <https://bitprophet.org/projects/#roadmap>`_.
+
- :release:`2.10.1 <2022-03-11>`
- :bug:`-` (`CVE-2022-24302
<https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2022-24302>`_) Creation
diff --git a/tests/test_pkey.py b/tests/test_pkey.py
index 97b406c2..cff99aac 100644
--- a/tests/test_pkey.py
+++ b/tests/test_pkey.py
@@ -719,9 +719,9 @@ class KeyTest(unittest.TestCase):
key.write_private_key_file(new, password=newpassword)
# Expected open via os module
os_.open.assert_called_once_with(
- new, flags=os.O_WRONLY | os.O_CREAT | os.O_TRUNC, mode=o600
+ new, os.O_WRONLY | os.O_CREAT | os.O_TRUNC, o600
)
- os_.fdopen.assert_called_once_with(os_.open.return_value, mode="w")
+ os_.fdopen.assert_called_once_with(os_.open.return_value, "w")
# Old chmod still around for backwards compat
os_.chmod.assert_called_once_with(new, o600)
assert (