From: Alexander Popov Date: Tue, 21 Sep 2021 18:19:51 +0000 (+0300) Subject: Fix UBSAN_BOUNDS recommendations X-Git-Tag: v0.5.14~4 X-Git-Url: https://jxself.org/git/?a=commitdiff_plain;h=173e65ef0afcbc38c08ac75b99e2ce6102513301;p=kconfig-hardened-check.git Fix UBSAN_BOUNDS recommendations Thanks to @kees and @equaeghe Refers to #53 --- diff --git a/kconfig_hardened_check/__init__.py b/kconfig_hardened_check/__init__.py index 0a0014f..148c388 100644 --- a/kconfig_hardened_check/__init__.py +++ b/kconfig_hardened_check/__init__.py @@ -419,10 +419,15 @@ def construct_checklist(l, arch): l += [AND(OptCheck('self_protection', 'clipos', 'INTEL_IOMMU', 'y'), iommu_support_is_set)] + # 'self_protection', 'maintainer' + ubsan_bounds_is_set = OptCheck('self_protection', 'maintainer', 'UBSAN_BOUNDS', 'y') # only array index bounds checking + l += [ubsan_bounds_is_set] + l += [AND(OptCheck('self_protection', 'maintainer', 'UBSAN_SANITIZE_ALL', 'y'), + ubsan_bounds_is_set)] + l += [AND(OptCheck('self_protection', 'maintainer', 'UBSAN_TRAP', 'y'), + ubsan_bounds_is_set)] + # 'self_protection', 'my' - l += [AND(OptCheck('self_protection', 'my', 'UBSAN_BOUNDS', 'y'), - OptCheck('self_protection', 'my', 'UBSAN_MISC', 'is not set'), - OptCheck('self_protection', 'my', 'UBSAN_TRAP', 'y'))] l += [OptCheck('self_protection', 'my', 'RESET_ATTACK_MITIGATION', 'y')] # needs userspace support (systemd) if arch == 'X86_64': l += [AND(OptCheck('self_protection', 'my', 'AMD_IOMMU_V2', 'y'),