X-Git-Url: http://git.harvie.cz/?p=mirrors%2FArchLinux-Packages.git;a=blobdiff_plain;f=apparmor%2Fapparmor.rc;fp=apparmor%2Fapparmor.rc;h=40c68b79f1716b887b9b49d485ad5fe700c2a124;hp=0000000000000000000000000000000000000000;hb=ae9e32a05d4310a9ef574a579c8cfdf0847f584d;hpb=c5ccaa9c059fda56eaa8a54d884e209a923ace02 diff --git a/apparmor/apparmor.rc b/apparmor/apparmor.rc new file mode 100644 index 0000000..40c68b7 --- /dev/null +++ b/apparmor/apparmor.rc @@ -0,0 +1,60 @@ +#!/bin/bash +. /etc/rc.conf +. /etc/rc.d/functions + +aa_profiles='/etc/apparmor.d/' +aa_log='/var/log/apparmor.init.log' + +aa_log_daemon_msg() { echo "$@"; } +aa_log_failure_msg() { echo "$@"; } +aa_log_end_msg() { echo "$@"; } +. /lib/apparmor/rc.apparmor.functions + +aa_parser_all() { + apparmor_parser $@ $(find "$aa_profiles" -maxdepth 1 -type f) 2>>"$aa_log" +} + +case "$1" in + start) + stat_busy "Enabling AppArmor profiles" + aa_parser_all -r + if [ $? -gt 0 ]; then + stat_fail + else + add_daemon apparmor + stat_done + fi + ;; + stop) + stat_busy "Disabling AppArmor profiles" + aa_parser_all -R + if [ $? -gt 0 ]; then + stat_fail + else + rm_daemon apparmor + stat_done + fi + ;; + complain) + $0 stop + sleep 1 + stat_busy "Enabling AppArmor profiles in complain mode" + aa_parser_all -C + if [ $? -gt 0 ]; then + stat_fail + else + stat_done + fi + ;; + restart) + $0 stop + sleep 1 + $0 start + ;; + status) + aa-status + ;; + *) + echo "usage: $0 {start|stop|complain|restart|status}" +esac +exit 0