unixdev.net


Switch to SpeakEasy.net DSL

The Modular Manual Browser

Home Page
Manual: (SunOS-5.10)
Page:
Section:
Apropos / Subsearch:
optional field

getaudit(2)                      System Calls                      getaudit(2)



NAME
       getaudit,  setaudit, getaudit_addr, setaudit_addr - get and set process
       audit information

SYNOPSIS
       cc [ flag ... ] file ... -lbsm -lsocket -lnsl -lintl [ library ... ]
       #include <sys/param.h>
       #include <bsm/libbsm.h>

       int getaudit(struct auditinfo *info);

       int setaudit(struct auditinfo *info);

       int getaudit_addr(struct auditinfo_addr *info, int length);

       int setaudit_addr(struct auditinfo_addr *info, int length);

DESCRIPTION
       The getaudit() function gets the audit ID, the preselection  mask,  the
       terminal ID and the audit session ID for the current process.

       Note  that getaudit() may fail and return an E2BIG errno if the address
       field in the terminal ID is larger than 32 bits. In this  case,  getau-
       dit_addr() should be used.

       The  setaudit()  function sets the audit ID, the preselection mask, the
       terminal ID and the audit session ID for the current process.

       The getaudit_addr() function returns a variable  length  auditinfo_addr
       structure that contains the audit ID, the preselection mask, the termi-
       nal ID, and the audit session ID for the current process. The  terminal
       ID  contains  a  size  field  that  indicates  the  size of the network
       address.

       The setaudit_addr() function sets the audit ID, the preselection  mask,
       the terminal ID, and  the audit session ID for the current process. The
       values are taken from the variable length struture auditinfo_addr.  The
       terminal  ID  contains a size field that indicates the size of the net-
       work address.

       The auditinfo structure is used to pass the process  audit  information
       and contains the following members:

       au_id_t     ai_auid;        /* audit user ID */
       au_mask_t   ai_mask;        /* preselection mask */
       au_tid_t    ai_termid;      /* terminal ID */
       au_asid_t   ai_asid;        /* audit session ID */


       The auditinfo_addr structure is used to pass the process audit informa-
       tion and contains the following members:

       au_id_t        ai_auid;      /* audit user ID */
       au_mask_t      ai_mask;      /* preselection mask */
       au_tid_addr_t  ai_termid;    /* terminal ID */
       au_asid_t      ai_asid;      /* audit session ID */


RETURN VALUES
       Upon successful completion, getaudit() and  setaudit() return 0. Other-
       wise, -1 is returned and errno is set to indicate the error.

ERRORS
       The getaudit() and  setaudit() functions will fail if:

       EFAULT          The  info  parameter points outside the process's allo-
                       cated address space.



       EPERM           The {PRIV_SYS_AUDIT} privilege is not asserted  in  the
                       effective set of the calling process.



USAGE
       The  calling  process must have the {PRIV_SYS_AUDIT} privilege asserted
       in its effective set.

ATTRIBUTES
       See attributes(5) for descriptions of the following attributes:


       tab()    allbox;    cw(2.750000i)|     cw(2.750000i)     lw(2.750000i)|
       lw(2.750000i).  ATTRIBUTE TYPEATTRIBUTE VALUE Interface StabilityStable
       MT-LevelMT-Safe


SEE ALSO
       bsmconv(1M), audit(2), attributes(5)

NOTES
       The functionality described in this man page is available only  if  the
       Basic Security Module (BSM) has been enabled.  See bsmconv(1M) for more
       information.




SunOS 5.10                        22 Mar 2004                      getaudit(2)