mirror of
https://github.com/python/cpython.git
synced 2025-10-19 16:03:42 +00:00
[3.9] gh-139310: skip test_aead_aes_gcm
for Linux kernel between 6.16.0 and 6.17.x (GH-139552) (GH-139763)
Currently, Fedora 42 uses a custom Linux Kernel 6.16.9 that backported an upstream change from 6.17-rc7 [1,3] but not its subsequent fix [2]. Until the issue is resolved upstream, we skip the failing test `test_socket.test_aead_aes_gcm` for kernel versions between 6.16 and 6.17.x. [1]1b34cbbf4f
[2]d0ca0df179
. [3]45bcf60fe4
(cherry picked from commit41712c4e09
) Co-authored-by: Bénédikt Tran <10796600+picnixz@users.noreply.github.com>
This commit is contained in:
parent
76437ac248
commit
f9728747f8
2 changed files with 17 additions and 1 deletions
|
@ -571,6 +571,16 @@ def requires(resource, msg=None):
|
|||
if resource == 'gui' and not _is_gui_available():
|
||||
raise ResourceDenied(_is_gui_available.reason)
|
||||
|
||||
def _get_kernel_version(sysname="Linux"):
|
||||
import platform
|
||||
if platform.system() != sysname:
|
||||
return None
|
||||
version_txt = platform.release().split('-', 1)[0]
|
||||
try:
|
||||
return tuple(map(int, version_txt.split('.')))
|
||||
except ValueError:
|
||||
return None
|
||||
|
||||
def _requires_unix_version(sysname, min_version):
|
||||
"""Decorator raising SkipTest if the OS is `sysname` and the version is less
|
||||
than `min_version`.
|
||||
|
|
|
@ -6452,8 +6452,14 @@ def test_aes_cbc(self):
|
|||
self.assertEqual(len(dec), msglen * multiplier)
|
||||
self.assertEqual(dec, msg * multiplier)
|
||||
|
||||
@support.requires_linux_version(4, 9) # see issue29324
|
||||
@support.requires_linux_version(4, 9) # see gh-73510
|
||||
def test_aead_aes_gcm(self):
|
||||
kernel_version = support._get_kernel_version("Linux")
|
||||
if kernel_version is not None:
|
||||
if kernel_version >= (6, 16) and kernel_version < (6, 18):
|
||||
# See https://github.com/python/cpython/issues/139310.
|
||||
self.skipTest("upstream Linux kernel issue")
|
||||
|
||||
key = bytes.fromhex('c939cc13397c1d37de6ae0e1cb7c423c')
|
||||
iv = bytes.fromhex('b3d8cc017cbb89b39e0f67e2')
|
||||
plain = bytes.fromhex('c3b3c41f113a31b73d9a5cd432103069')
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue