mirror of
https://github.com/topjohnwu/selinux.git
synced 2025-03-02 08:27:04 +00:00

Use the libsepol neverallow checking to determine if a given neverallow rule is violated. If a violation is found, use the function cil_find_matching_avrule_in_ast() to find the AST node of the particular rule that violates the neverallow. This allows CIL to provide a more informative error message that includes the file and line number of the node and all of its parents. Example error report: Neverallow check failed at line 31285 of cil.conf.neverallow (neverallow typeset4 self (memprotect (mmap_zero))) <root> booleanif at line 152094 of cil.conf.neverallow true at line 152095 of cil.conf.neverallow allow at line 152096 of cil.conf.neverallow (allow ada_t self (memprotect (mmap_zero))) Signed-off-by: James Carter <jwcart2@tycho.nsa.gov>