ACCT(2) System Calls ACCT(2)

NAME


acct - enable or disable process accounting

SYNOPSIS


#include <unistd.h>

int acct(const char *path);


DESCRIPTION


The acct() function enables or disables the system process accounting
routine. If the routine is enabled, an accounting record will be written
in an accounting file for each process that terminates. The termination
of a process can be caused by either an exit(2) call or a signal(3C)).
The effective user ID of the process calling acct() must have the
appropriate privileges.


The path argument points to the pathname of the accounting file, whose
file format is described on the acct.h(3HEAD) manual page.


The accounting routine is enabled if path is non-zero and no errors occur
during the function. It is disabled if path is (char *)NULL and no
errors occur during the function.

RETURN VALUES


Upon successful completion, 0 is returned. Otherwise, -1 is returned and
errno is set to indicate the error.

ERRORS


The acct() function will fail if:

EACCES
The file named by path is not an ordinary file.


EBUSY
An attempt is being made to enable accounting using the
same file that is currently being used.


EFAULT
The path argument points to an illegal address.


ELOOP
Too many symbolic links were encountered in translating
path.


ENAMETOOLONG
The length of the path argument exceeds {PATH_MAX}, or
the length of a path argument exceeds {NAME_MAX} while
_POSIX_NO_TRUNC is in effect.


ENOENT
One or more components of the accounting file pathname do
not exist.


ENOTDIR
A component of the path prefix is not a directory.


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


EROFS
The named file resides on a read-only file system.


SEE ALSO


exit(2), signal(3C), acct.h(3HEAD), privileges(7)

January 20, 2003 ACCT(2)