Add SIGHUP Handler to rotate log files

Sending SIGHUP to auditd will now cuase a log
file rotation to occur.

Signed-off-by: William Roberts <wroberts@tresys.com>
Add audit watch rule support and bugfixes

Add libaudit support for adding directory watch rules.
Add rule parsing support to auditd.
Rule format matches auditctl. Currently only supports -w and -e.
Fields supported are uid, euid, suid, fsuid, loginuid, gid, egid, sgid, fsgid and success.
Fields allow further limiting of matches, for example:
 -w /system -pwa -F uid!=system -F success=1
will match a write on /system that was successful and done by a uid other than system

Retry on EAGAIN from recvfrom on the audit netlink socket.
Always enable audit syscall functionality on start of auditd.

Signed-off-by: Joshua Brindle <brindle@quarksecurity.com>

Change-Id: I74a94dbffde835a27539559427f22b73a4c7ea24

Conflicts:
	auditd/README

Conflicts:
	auditd/README
Add sample audit.rules file.

To use:
adb push audit.rules /data/misc/audit
adb reboot
init: Make restorecon_recursive work for /data/

In the following commit:

    commit f2b7ee765516c84a9995e3acdc8fbcd7dc1b33cc
    Author: Stephen Smalley <sds@tycho.nsa.gov>
    Date:   Thu Feb 6 13:52:52 2014 -0500

    Apply restorecon_recursive to all of /data.

they removed all the adhoc restorecon_recursive of subdirectories
of /data/ and replaced it with:

    # Set SELinux security contexts on upgrade or policy update.
    restorecon_recursive /data

Unfortunately, that is a no-op because restorecon doesn't recurse
through /data/ unless you add a FORCE flag.

Since the expectation seems to be that the recursive restorecon
in init will actually work, update the built-in to add the force
flag and a flag to allow /data/data to also be recursed through.

[RC: Removed the DATADATA flag. It throws a ton of errors, and it's
supposed to be handled by seapp_contexts, not file_contexts. The actual
root paths, however, now get their individual restorecon calls so that
installd can deal with them]

Change-Id: I435c505188e924b27ef2e6a2e0ee0a6951e43f0e
Merge remote-tracking branch 'github/cm-12.0' into cm-12.0-now

Change-Id: If9dadf37e116703393f498a8680e9d78ee7a3c57