From 5c98ff10a65534dffd2e6426ea8f5592f3957a2d Mon Sep 17 00:00:00 2001 From: Mikko Rapeli Date: Fri, 20 Dec 2024 16:04:27 +0200 Subject: apparmor: update from 3.1.3 to 4.0.3 Fixes python 3.13 support though needed one more patch which is also submitted upstream. oeqa runtime test passes on qemuarm and qemuarm64. Did not fix ptest compilation. Changes: https://apparmor.net/news/release-4.0.2/ https://gitlab.com/apparmor/apparmor/-/releases/v4.0.3 Signed-off-by: Mikko Rapeli Signed-off-by: Armin Kuster --- .../files/0001-fail.py-handle-missing-cgitb.patch | 74 ++++++++++++++++++++++ 1 file changed, 74 insertions(+) create mode 100644 recipes-mac/AppArmor/files/0001-fail.py-handle-missing-cgitb.patch (limited to 'recipes-mac/AppArmor/files/0001-fail.py-handle-missing-cgitb.patch') diff --git a/recipes-mac/AppArmor/files/0001-fail.py-handle-missing-cgitb.patch b/recipes-mac/AppArmor/files/0001-fail.py-handle-missing-cgitb.patch new file mode 100644 index 0000000..28c1d9e --- /dev/null +++ b/recipes-mac/AppArmor/files/0001-fail.py-handle-missing-cgitb.patch @@ -0,0 +1,74 @@ +From 434e34bb510b4cab04e64cd5b21d635c6be8c8ea Mon Sep 17 00:00:00 2001 +From: Mikko Rapeli +Date: Fri, 29 Nov 2024 13:46:32 +0000 +Subject: [PATCH] fail.py: handle missing cgitb + +It's no longer in python standard library starting +at version 3.13. Fixes: + +root@qemuarm64:~# aa-complain /etc/apparmor.d/* +Traceback (most recent call last): + File "/usr/sbin/aa-complain", line 18, in + from apparmor.fail import enable_aa_exception_handler + File "/usr/lib/python3.13/site-packages/apparmor/fail.py", line 12, in + import cgitb +ModuleNotFoundError: No module named 'cgitb' + +Signed-off-by: Mikko Rapeli +--- + utils/apparmor/fail.py | 25 +++++++++++++++---------- + 1 file changed, 15 insertions(+), 10 deletions(-) + +Upstream-Status: Backport + +diff --git a/utils/apparmor/fail.py b/utils/apparmor/fail.py +index ece6efc4..a71ceb66 100644 +--- a/utils/apparmor/fail.py ++++ b/utils/apparmor/fail.py +@@ -8,7 +8,11 @@ + # + # ------------------------------------------------------------------ + +-import cgitb ++try: ++ import cgitb ++except ImportError: ++ cgitb = None ++ pass + import sys + import traceback + from tempfile import NamedTemporaryFile +@@ -32,20 +36,21 @@ def handle_exception(*exc_info): + print('', file=sys.stderr) + error(ex.value) + else: +- with NamedTemporaryFile('w', prefix='apparmor-bugreport-', suffix='.txt', delete=False) as file: +- cgitb_hook = cgitb.Hook(display=1, file=file, format='text', context=10) +- cgitb_hook.handle(exc_info) +- +- file.write('Please consider reporting a bug at https://gitlab.com/apparmor/apparmor/-/issues\n') +- file.write('and attach this file.\n') ++ if cgitb: ++ with NamedTemporaryFile('w', prefix='apparmor-bugreport-', suffix='.txt', delete=False) as file: ++ cgitb_hook = cgitb.Hook(display=1, file=file, format='text', context=10) ++ cgitb_hook.handle(exc_info) ++ file.write('Please consider reporting a bug at https://gitlab.com/apparmor/apparmor/-/issues\n') ++ file.write('and attach this file.\n') + + print(''.join(traceback.format_exception(*exc_info)), file=sys.stderr) +- print('', file=sys.stderr) + print('An unexpected error occurred!', file=sys.stderr) + print('', file=sys.stderr) +- print('For details, see %s' % file.name, file=sys.stderr) ++ if cgitb: ++ print('For details, see %s' % file.name, file=sys.stderr) + print('Please consider reporting a bug at https://gitlab.com/apparmor/apparmor/-/issues', file=sys.stderr) +- print('and attach this file.', file=sys.stderr) ++ if cgitb: ++ print('and attach this file.', file=sys.stderr) + + + def enable_aa_exception_handler(): +-- +2.43.0 + -- cgit v1.2.3-54-g00ecf