cc [ flag ... ] file ... -lbsm -lsocket -lnsl [ library... ] #include <sys/param.h> #include <bsm/libbsm.h> int audit(caddr_t record, int length);
The audit() function queues a record for writing to the system audit log. The data pointed to by record is queued for the log after a minimal consistency check, with the length parameter specifying the size of the record in bytes. The data should be a well-formed audit record as described by audit.log(4).
The kernel validates the record header token type and length, and sets the time stamp value before writing the record to the audit log. The kernel does not do any preselection for user-level generated events. If the audit policy is set to include sequence or trailer tokens, the kernel will append them to the record.
Upon successful completion, 0 is returned. Otherwise, -1 is returned and errno is set to indicate the error.
The audit() function will fail if:
Only privileged processes can successfully execute this call.
See attributes(5) for descriptions of the following attributes:
bsmconv(1M), audit(1M), auditd(1M), svcadm(1M), auditon(2), auditsvc(2), getaudit(2), audit.log(4), attributes(5), privileges(5)
The functionality described in this man page is available only if the Basic Security Module (BSM) has been enabled and the audit daemon auditd(1M) has not been disabled by audit(1M) or svcadm(1M). See bsmconv(1M) for more information.