Add the sysrq_always_enabled check
[kconfig-hardened-check.git] / kconfig_hardened_check / __init__.py
index 48476a439a2b599bd5224f020b0147c04c94040e..71840aa321092e6dff2a211de60973044c105efd 100644 (file)
 #           tsx=off
 #       ARM64:
 #           kpti=on
-#           ssbd=force-on
 #
 #    Should NOT be set:
-#           sysrq_always_enabled
 #           arm64.nobti
 #           arm64.nopauth
 #           arm64.nomte
@@ -751,6 +749,9 @@ def add_cmdline_checks(l, arch):
     l += [OR(CmdlineCheck('self_protection', 'defconfig', 'retbleed', 'is not off'),
              CmdlineCheck('self_protection', 'defconfig', 'retbleed', 'is not set'))]
     if arch == 'ARM64':
+        l += [OR(CmdlineCheck('self_protection', 'defconfig', 'ssbd', 'kernel'),
+                 CmdlineCheck('self_protection', 'my', 'ssbd', 'force-on'),
+                 CmdlineCheck('self_protection', 'defconfig', 'ssbd', 'is not set'))]
         l += [OR(CmdlineCheck('self_protection', 'defconfig', 'rodata', 'full'),
                  AND(KconfigCheck('self_protection', 'defconfig', 'RODATA_FULL_DEFAULT_ENABLED', 'y'),
                      CmdlineCheck('self_protection', 'defconfig', 'rodata', 'is not set')))]
@@ -808,6 +809,8 @@ def add_cmdline_checks(l, arch):
     l += [OR(CmdlineCheck('cut_attack_surface', 'grsec', 'debugfs', 'off'),
              KconfigCheck('cut_attack_surface', 'grsec', 'DEBUG_FS', 'is not set'))] # ... the end
 
+    # 'cut_attack_surface', 'my'
+    l += [CmdlineCheck('cut_attack_surface', 'my', 'sysrq_always_enabled', 'is not set')]
 
 def print_unknown_options(checklist, parsed_options):
     known_options = []