AU_OPEN(3BSM) Security and Auditing Library Functions AU_OPEN(3BSM)
NAME
au_open, au_close, au_write - construct and write audit records
SYNOPSIS
cc [
flag... ]
file...
-lbsm -lsocket -lnsl [
library... ]
#include <bsm/libbsm.h>
int au_close(
int d,
int keep,
short event);
int au_open(
void);
int au_write(
int d,
token_t *m);
DESCRIPTION
The
au_open() function returns an audit record descriptor to which audit
tokens can be written using
au_write(). The audit record descriptor is an
integer value that identifies a storage area where audit records are
accumulated.
The
au_close() function terminates the life of an audit record
d of type
event started by
au_open(). If the
keep parameter is
AU_TO_NO_WRITE, the
data contained therein is discarded. If the
keep parameter is
AU_TO_WRITE, the additional parameters are used to create a header token.
Depending on the audit policy information obtained by
auditon(2),
additional tokens such as
sequence and
trailer tokens can be added to
the record. The
au_close() function then writes the record to the audit
trail by calling
audit(2). Any memory used is freed by calling
free(3C).
The
au_write() function adds the audit token pointed to by
m to the audit
record identified by the descriptor
d. After this call is made the audit
token is no longer available to the caller.
RETURN VALUES
Upon successful completion,
au_open() returns an audit record descriptor.
If a descriptor could not be allocated,
au_open() returns
-1 and sets
errno to indicate the error.
Upon successful completion,
au_close() returns
0. If
d is an invalid or
corrupted descriptor or if
audit() fails,
au_close() returns -1 without
setting
errno. If
audit() fails,
errno is set to one of the error values
described on the
audit(2) manual page.
Upon successful completion,
au_write() returns
0. If
d is an invalid
descriptor or
m is an invalid token, or if
audit() fails,
au_write() returns -1 without setting
errno. If
audit() fails,
errno is set to one
of the error values described on the
audit(2) manual page.
ERRORS
The
au_open() function will fail if:
ENOMEM The physical limits of the system have been exceeded such that
sufficient memory cannot be allocated.
EAGAIN There is currently insufficient memory available. The
application can try again later.
ATTRIBUTES
See
attributes(7) for descriptions of the following attributes:
+--------------------+-----------------+
| ATTRIBUTE TYPE | ATTRIBUTE VALUE |
+--------------------+-----------------+
|Interface Stability | Stable |
+--------------------+-----------------+
|MT-Level | MT-Safe |
+--------------------+-----------------+
SEE ALSO
audit(2),
auditon(2),
au_preselect(3BSM),
au_to(3BSM),
free(3C),
attributes(7) March 6, 2017
AU_OPEN(3BSM)