summaryrefslogtreecommitdiffstats
path: root/Misc/NEWS.d
diff options
context:
space:
mode:
authorMiss Islington (bot) <31488909+miss-islington@users.noreply.github.com>2022-08-15 15:37:51 (GMT)
committerGitHub <noreply@github.com>2022-08-15 15:37:51 (GMT)
commit3fa97b8589c551e70ec935e7f39d56c3c5d5ed7e (patch)
tree7af644b84027bc7ceac1b93e4ff91dfecba5d280 /Misc/NEWS.d
parent3ce1d0093e61605209ed7ce93b541eb42aea6ffc (diff)
downloadcpython-3fa97b8589c551e70ec935e7f39d56c3c5d5ed7e.zip
cpython-3fa97b8589c551e70ec935e7f39d56c3c5d5ed7e.tar.gz
cpython-3fa97b8589c551e70ec935e7f39d56c3c5d5ed7e.tar.bz2
gh-95231: Disable md5 & crypt modules if FIPS is enabled (GH-94742)
If kernel fips is enabled, we get permission error upon doing `import crypt`. So, if kernel fips is enabled, disable the unallowed hashing methods. Python 3.9.1 (default, May 10 2022, 11:36:26) [GCC 10.2.0] on linux Type "help", "copyright", "credits" or "license" for more information. >>> import crypt Traceback (most recent call last): File "<stdin>", line 1, in <module> File "/usr/lib/python3.9/crypt.py", line 117, in <module> _add_method('MD5', '1', 8, 34) File "/usr/lib/python3.9/crypt.py", line 94, in _add_method result = crypt('', salt) File "/usr/lib/python3.9/crypt.py", line 82, in crypt return _crypt.crypt(word, salt) PermissionError: [Errno 1] Operation not permitted Signed-off-by: Shreenidhi Shedi <sshedi@vmware.com> (cherry picked from commit 2fa03b1b0708d5d74630c351ec9abd2aac7550da) Co-authored-by: Shreenidhi Shedi <53473811+sshedi@users.noreply.github.com>
Diffstat (limited to 'Misc/NEWS.d')
-rw-r--r--Misc/NEWS.d/next/Library/2022-07-25-15-45-06.gh-issue-95231.i807-g.rst3
1 files changed, 3 insertions, 0 deletions
diff --git a/Misc/NEWS.d/next/Library/2022-07-25-15-45-06.gh-issue-95231.i807-g.rst b/Misc/NEWS.d/next/Library/2022-07-25-15-45-06.gh-issue-95231.i807-g.rst
new file mode 100644
index 0000000..aa53f29
--- /dev/null
+++ b/Misc/NEWS.d/next/Library/2022-07-25-15-45-06.gh-issue-95231.i807-g.rst
@@ -0,0 +1,3 @@
+Fail gracefully if :data:`~errno.EPERM` or :data:`~errno.ENOSYS` is raised when loading
+:mod:`crypt` methods. This may happen when trying to load ``MD5`` on a Linux kernel
+with :abbr:`FIPS (Federal Information Processing Standard)` enabled.