From eae8ef99a46da9b9fdfed3b23d6f82a283178e27 Mon Sep 17 00:00:00 2001 From: mboelen Date: Mon, 25 Apr 2016 10:18:09 +0200 Subject: [PATCH] Exit with exit code 0 by default, unless error-on-warnings is being used --- include/consts | 1 + include/profiles | 7 +++++++ lynis | 7 ++++++- 3 files changed, 14 insertions(+), 1 deletion(-) diff --git a/include/consts b/include/consts index d771f08c..47245bb1 100644 --- a/include/consts +++ b/include/consts @@ -76,6 +76,7 @@ unset LANG DB2_RUNNING=0 DISCOVERED_BINARIES="" DOCKER_DAEMON_RUNNING=0 + ERROR_ON_WARNINGS=0 FILEVALUE="" FIND="" FIREWALL_ACTIVE=0 diff --git a/include/profiles b/include/profiles index 787d561a..7d076d9c 100644 --- a/include/profiles +++ b/include/profiles @@ -99,6 +99,13 @@ fi ;; + # Show non-zero exit code when errors are found + error-on-warnings) + if [ "${VALUE}" = "yes" -o "${VALUE}" = "true" -o ${VALUE} = "1" ]; then + ERROR_ON_WARNINGS=1 + fi + ;; + # Skip FreeBSD port audit freebsd_skip_portaudit) LogText "Option set: Skip FreeBSD portaudit" diff --git a/lynis b/lynis index 06afea7e..b607f932 100755 --- a/lynis +++ b/lynis @@ -986,7 +986,12 @@ ${NORMAL} # Clean exit (Delete PID file) if [ ${TOTAL_WARNINGS} -gt 0 ]; then - ExitCustom 78 + # Use exit code 78 if we found any warnings (and enabled) + if [ ${ERROR_ON_WARNINGS} -eq 1 ]; then + ExitCustom 78 + else + ExitClean + fi else ExitClean fi