Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
K
kernel-hardening-checker
Overview
Overview
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
fact-depend
kernel-hardening-checker
Commits
f4ecbe8a
Commit
f4ecbe8a
authored
Jan 23, 2022
by
Alexander Popov
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Extract populate_with_data() from perform_checks()
parent
55690d46
Hide whitespace changes
Inline
Side-by-side
Showing
1 changed file
with
14 additions
and
6 deletions
+14
-6
__init__.py
kconfig_hardened_check/__init__.py
+14
-6
No files found.
kconfig_hardened_check/__init__.py
View file @
f4ecbe8a
...
@@ -673,13 +673,13 @@ def print_checklist(mode, checklist, with_results):
...
@@ -673,13 +673,13 @@ def print_checklist(mode, checklist, with_results):
print
(
'[+] Config check is finished:
\'
OK
\'
- {}{} /
\'
FAIL
\'
- {}{}'
.
format
(
ok_count
,
ok_suppressed
,
fail_count
,
fail_suppressed
))
print
(
'[+] Config check is finished:
\'
OK
\'
- {}{} /
\'
FAIL
\'
- {}{}'
.
format
(
ok_count
,
ok_suppressed
,
fail_count
,
fail_suppressed
))
def
p
erform_check
(
opt
,
parsed_options
,
kernel_version
):
def
p
opulate_opt_with_data
(
opt
,
parsed_options
,
kernel_version
):
if
hasattr
(
opt
,
'opts'
):
if
hasattr
(
opt
,
'opts'
):
# prepare ComplexOptCheck
# prepare ComplexOptCheck
for
o
in
opt
.
opts
:
for
o
in
opt
.
opts
:
if
hasattr
(
o
,
'opts'
):
if
hasattr
(
o
,
'opts'
):
# Recursion for nested ComplexOptChecks
# Recursion for nested ComplexOptChecks
p
erform_check
(
o
,
parsed_options
,
kernel_version
)
p
opulate_opt_with_data
(
o
,
parsed_options
,
kernel_version
)
if
hasattr
(
o
,
'state'
):
if
hasattr
(
o
,
'state'
):
o
.
state
=
parsed_options
.
get
(
o
.
name
,
None
)
o
.
state
=
parsed_options
.
get
(
o
.
name
,
None
)
if
hasattr
(
o
,
'ver'
):
if
hasattr
(
o
,
'ver'
):
...
@@ -689,12 +689,16 @@ def perform_check(opt, parsed_options, kernel_version):
...
@@ -689,12 +689,16 @@ def perform_check(opt, parsed_options, kernel_version):
if
not
hasattr
(
opt
,
'state'
):
if
not
hasattr
(
opt
,
'state'
):
sys
.
exit
(
'[!] ERROR: bad simple check {}'
.
format
(
vars
(
opt
)))
sys
.
exit
(
'[!] ERROR: bad simple check {}'
.
format
(
vars
(
opt
)))
opt
.
state
=
parsed_options
.
get
(
opt
.
name
,
None
)
opt
.
state
=
parsed_options
.
get
(
opt
.
name
,
None
)
opt
.
check
()
def
p
erform_checks
(
checklist
,
parsed_options
,
kernel_version
):
def
p
opulate_with_data
(
checklist
,
parsed_options
,
kernel_version
):
for
opt
in
checklist
:
for
opt
in
checklist
:
perform_check
(
opt
,
parsed_options
,
kernel_version
)
populate_opt_with_data
(
opt
,
parsed_options
,
kernel_version
)
def
perform_checks
(
checklist
):
for
opt
in
checklist
:
opt
.
check
()
def
parse_kconfig_file
(
parsed_options
,
fname
):
def
parse_kconfig_file
(
parsed_options
,
fname
):
...
@@ -769,11 +773,15 @@ def main():
...
@@ -769,11 +773,15 @@ def main():
# add relevant kconfig checks to the checklist
# add relevant kconfig checks to the checklist
add_kconfig_checks
(
config_checklist
,
arch
)
add_kconfig_checks
(
config_checklist
,
arch
)
# populate the checklist with the parsed kconfig data
parsed_kconfig_options
=
OrderedDict
()
parsed_kconfig_options
=
OrderedDict
()
parse_kconfig_file
(
parsed_kconfig_options
,
args
.
config
)
parse_kconfig_file
(
parsed_kconfig_options
,
args
.
config
)
populate_with_data
(
config_checklist
,
parsed_kconfig_options
,
kernel_version
)
perform_checks
(
config_checklist
,
parsed_kconfig_options
,
kernel_version
)
# now everything is ready for performing the checks
perform_checks
(
config_checklist
)
# finally print the results
if
mode
==
'verbose'
:
if
mode
==
'verbose'
:
print_unknown_options
(
config_checklist
,
parsed_kconfig_options
)
print_unknown_options
(
config_checklist
,
parsed_kconfig_options
)
print_checklist
(
mode
,
config_checklist
,
True
)
print_checklist
(
mode
,
config_checklist
,
True
)
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment