/* * * System accounting log definitions */ #ifndef _ACCDEF_H #define _ACCDEF_H /* Accounting record for processes; batch jobs have two extra fields */ #define ACC$K_TERMLEN 84 /* termination message length */ #define ACC$C_TERMLEN 84 #define ACC$K_JOB_LEN 108 /* length of batch job accounting record */ #define ACC$C_JOB_LEN 108 struct accdef { unsigned short acc$w_msgtyp; /* message type code */ unsigned short acc$w_msgsiz; /* length of data message (valid only in acCLOG) */ unsigned long acc$l_finalsts; /* final exit status */ unsigned long acc$l_pid; /* process id */ unsigned long acc$l_jobid; /* job identification (valid only in acclog) */ unsigned int acc$q_termtime[2]; /* termination time (100ns units) */ char acc$t_account[8]; /* account name string (blank filled) */ char acc$t_username[12]; /* user name string (blank filled) */ unsigned long acc$l_cputim; /* cputim in 10ms units */ unsigned long acc$l_pageflts; /* total page faults */ unsigned long acc$l_pgflpeak; /* peak paging file usage */ unsigned long acc$l_wspeak; /* peak working set size */ unsigned long acc$l_biocnt; /* count of buffered i/o operations */ unsigned long acc$l_diocnt; /* count of direct i/o operations */ unsigned long acc$l_volumes; /* count of volumes mounted */ unsigned int acc$q_login[2]; /* login time (100ns units) */ unsigned long acc$l_owner; /* pid of subprocess owner */ /* end of termination message; remainder is for batch jobs */ char acc$t_job_name[8]; /* job name (blank filled) */ char acc$t_job_que[16]; /* queue name (.ascic) */ }; /* Accounting record for print jobs */ #define ACC$K_PRT_LEN 88 /* length of print accounting record */ #define ACC$C_PRT_LEN 88 struct accdef1 { char accdef$$_fill_1[48]; unsigned long acc$l_pagcnt; /* symbiont page count */ unsigned long acc$l_qiocnt; /* symbiont qio count */ unsigned long acc$l_getcnt; /* symbiont get count */ unsigned int acc$q_quetime[2]; /* time job was queued */ char acc$t_prt_name[8]; /* name of print job */ char acc$t_prt_que[12]; /* name of print queue */ }; /* Define user accounting message data area */ #define ACC$K_INS_LEN 176 /* length of insert message */ #define ACC$C_INS_LEN 176 struct accdef2 { char accdef$$_fill_2[44]; char acc$t_user_data[132]; /* allow up to 132 bytes of user data */ }; /* Assign record type codes for records in the account log file */ /* Process accounting records */ #define ACC$K_PRCTRM 1 /* job termination */ #define ACC$K_BATTRM 2 /* batch job termination */ #define ACC$K_INTTRM 3 /* interactive job termination */ #define ACC$K_LOGTRM 4 /* login failure process termination */ #define ACC$K_IMGTRM 5 /* image termination */ #define ACC$K_SUBTRM 6 /* subprocess termination */ #define ACC$K_DETTRM 7 /* detached process termination */ #define ACC$K_NETTRM 8 /* network process termination */ /* Misc accounting records */ #define ACC$K_PRTJOB 16 /* print job accounting */ #define ACC$K_INSMSG 17 /* inserted message */ /* Define accounting manager message codes */ #define ACC$K_INSMESG 1 /* insert message into accounting file */ #define ACC$K_NEWFILE 2 /* create a new account file */ #define ACC$K_ENABACC 3 /* enable accounting */ #define ACC$K_DISAACC 4 /* disable accounting */ #define ACC$K_ENABSEL 5 /* enable selective accounting */ #define ACC$K_DISASEL 6 /* disable selective accounting */ #endif /*_ACCDEF_H*/