#!/usr/bin/env bash{a_output=()a_output2=()f_check_setting(){grep-Psrilq--"^\h*$2\b"/etc/dconf/db/local.d/locks/*&&\echo"- \"$3\" is locked"||echo"- \"$3\" is not locked or not set"}declare-Asettings=(["idle-delay"]="/org/gnome/desktop/session/idle-delay"["lock-delay"]="/org/gnome/desktop/screensaver/lock-delay")forsettingin"${!settings[@]}";doresult=$(f_check_setting"$setting""${settings[$setting]}""$setting")if[[$result==*"is not locked"*||$result==*"not set to false"*]];thena_output2+=("$result")elsea_output+=("$result")fidoneprintf'%s\n'"""- Audit Result:"if["${#a_output2[@]}"-gt0];thenprintf'%s\n'" ** FAIL **"" - Reason(s) for audit failure:""${a_output2[@]}"["${#a_output[@]}"-gt0]&&printf'%s\n'"""- Correctly set:""${a_output[@]}"elseprintf'%s\n'" ** PASS **""${a_output[@]}"fi}