AU_BSM_TO_ERRNO(3) | Library Functions Manual | AU_BSM_TO_ERRNO(3) |
au_bsm_to_errno
,
au_errno_to_bsm
, au_strerror
— convert between BSM and local error
numbers
Basic Security Module Library (libbsm, -lbsm)
<bsm/libbsm.h>
int
au_bsm_to_errno
(u_char
bsm_error, int *errorp)
u_char
au_errno_to_bsm
(int error)
const char *
au_strerror
(int bsm_error)
These interfaces may be used to convert between the local ( errno(2)) and BSM error number spaces found in BSM return tokens.
The
au_bsm_to_errno
()
function accepts a BSM error value, bsm_error, and
converts it to an errno(2) that will be
stored in the integer pointed to by errorp if
successful. This call will fail if the BSM error cannot be mapped into a
local error number, which may occur if the return token was generated on
another operating system.
The
au_errno_to_bsm
()
function accepts a local errno(2) value,
and returns the BSM error number for it. This call cannot fail, and instead
returns a BSM error number indicating to a later decoder that the error
could not be encoded.
The
au_strerror
()
function converts a BSM error value to a string, generally by converting
first to a local error number and using the local
strerror(3) function, but will also
work for errors that are not locally defined.
On success, au_bsm_to_errno
() returns 0
and a converted error value; on failure, it returns -1 but does not set
errno(2).
On success,
au_strerror
()
returns a pointer to an error string; on failure it will return
NULL
.
au_to_return(3), au_to_return32(3), au_to_return64(3), libbsm(3)
au_bsm_to_errno
() and
au_errno_to_bsm
() were introduced in OpenBSM
1.1.
These functions were implemented by Robert Watson under contract to Apple Inc.
The Basic Security Module (BSM) interface to audit records and audit event stream format were defined by Sun Microsystems.
au_strerror
is unable to provide localized
strings for errors not available in the local operating system.
December 8, 2008 | macOS 14.6 |