Back to index

glibc  2.9
acct.h
Go to the documentation of this file.
00001 /* Copyright (C) 1996, 1997, 2000 Free Software Foundation, Inc.
00002    This file is part of the GNU C Library.
00003 
00004    The GNU C Library is free software; you can redistribute it and/or
00005    modify it under the terms of the GNU Lesser General Public
00006    License as published by the Free Software Foundation; either
00007    version 2.1 of the License, or (at your option) any later version.
00008 
00009    The GNU C Library is distributed in the hope that it will be useful,
00010    but WITHOUT ANY WARRANTY; without even the implied warranty of
00011    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
00012    Lesser General Public License for more details.
00013 
00014    You should have received a copy of the GNU Lesser General Public
00015    License along with the GNU C Library; if not, write to the Free
00016    Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
00017    02111-1307 USA.  */
00018 
00019 #ifndef _SYS_ACCT_H
00020 
00021 #define _SYS_ACCT_H  1
00022 #include <features.h>
00023 
00024 #define       __need_time_t
00025 #include <time.h>
00026 
00027 
00028 __BEGIN_DECLS
00029 
00030 #define ACCT_COMM 16
00031 
00032 struct acct
00033   {
00034     char ac_comm[ACCT_COMM];              /* Accounting command name.  */
00035     time_t ac_utime;               /* Accounting user time.  */
00036     time_t ac_stime;               /* Accounting system time.  */
00037     time_t ac_etime;               /* Accounting elapsed time.  */
00038     time_t ac_btime;               /* Beginning time.  */
00039     unsigned int ac_uid;           /* Accounting user ID.  */
00040     unsigned int ac_gid;           /* Accounting group ID.  */
00041     unsigned int ac_tty;           /* Controlling tty.  */
00042     /* Please note that the value of the `ac_tty' field, a device number,
00043        is encoded differently in the kernel and for the libc dev_t type.  */
00044     char ac_flag;                  /* Accounting flag.  */
00045     long int ac_minflt;                   /* Accounting minor pagefaults.  */
00046     long int ac_majflt;                   /* Accounting major pagefaults.  */
00047     long int ac_exitcode;          /* Accounting process exitcode.  */
00048   };
00049 
00050 enum
00051   {
00052     AFORK = 0001,           /* Has executed fork, but no exec.  */
00053     ASU = 0002,                    /* Used super-user privileges.  */
00054     ACORE = 0004,           /* Dumped core.  */
00055     AXSIG = 0010            /* Killed by a signal.  */
00056   };
00057 
00058 #define AHZ     100
00059 
00060 
00061 /* Switch process accounting on and off.  */
00062 extern int acct (__const char *__filename) __THROW;
00063 
00064 __END_DECLS
00065 
00066 #endif /* sys/acct.h */