# Copyright (c) 2011 The Chromium OS Authors. All rights reserved.
# Use of this source code is governed by a BSD-style license that can be
# found in the LICENSE file.

description     "Start the audit daemon (auditd)"
author          "chromium-os-dev@chromium.org"

# Starts the audit daemon, which catch the message from audit system and
# writes to /var/log/audit

start on starting boot-services
stop on stopping boot-services
respawn

pre-start script
  mkdir -p /var/log/audit
end script

post-start script
  auditctl -a never,exclude -F msgtype!=AVC -F msgtype!=SELINUX_ERR \
                            -F msgtype!=SECCOMP -F msgtype!=SYSCALL
end script

exec /sbin/auditd -n -c /etc/audit
