|
|
1.1 root 1: #ifndef MAXPATHLEN
2: #ifdef KERNEL
3: #include "../h/param.h"
4: #else
5: #include <sys/param.h>
6: #endif
7: #endif
8:
9: /*
10: * Record written to audit file.
11: */
12: struct aud_rec
13: {
14: unsigned short a_flag; /* flag bits +0 */
15: unsigned short a_uid; /* effective user-id */
16: long a_time; /* date and time */
17: char a_comm[MAXPATHLEN+1]; /* command name */
18: char a_path[MAXPATHLEN+1]; /* path name */
19: };
20:
21: /* a_flag values */
22: #define AUDSUCCESS 0x01 /* file accessed successfully */
23: #define AUDREAD 0x02 /* file opened for reading */
24: #define AUDWRITE 0x04 /* file opened for writing */
25: #define AUDEXEC 0x08 /* file executed */
26: #define AUDUNLINK 0x10 /* file removed */
27: #define AUDOFFTON 0x20 /* status changed to sensitive */
28: #define AUDONTOFF 0x40 /* status changed to non-sensitive */
29:
30: /*
31: * Audit system call flags.
32: */
33: #define UNSECURE 0 /* turn audit trail security off */
34: #define SECURE 1 /* turn audit trail security on */
35: #define QUERY 2 /* request audit trail security */
36: #define MASK 3 /* set audit status with umask */
37: #define AUDMASK 010000 /* flag bit in the umask to turn on auditing */
38:
39: #ifdef KERNEL
40:
41: /*
42: * Root relative vs. current working directory relative flags.
43: */
44: #define ROOTREL 0 /* pathname relative to the root */
45: #define CDIRREL 1 /* pathname relative to curr dir */
46:
47: #define SUCCESS 0
48: #define FAILURE 1
49:
50: #define AUDBUFLEN 24 /* length of data buffers */
51: #define AUDPRI 26 /* Sleeping on audbuf priority */
52:
53: struct audbuf {
54: struct audbuf *a_fptr; /* pointer to next in chain */
55: struct audbuf *a_bptr; /* pointer to last in chain */
56: unsigned short a_flags; /* flag word */
57: char a_buf[AUDBUFLEN]; /* data buffer */
58: } *audbuf;
59:
60: int naudbuf;
61:
62: /* a_flags */
63:
64: #define AUDFREE 0 /* aud buffer on the freelist */
65: #define AUDBUSY 1 /* aud buffer in use */
66:
67: struct audcb {
68: struct audbuf *acb_fptr; /* pointer to first on freelist */
69: struct audbuf *acb_bptr; /* pointer to last on freelist */
70: short acb_flags; /* flag word */
71: };
72:
73: /* acb_flags */
74: #define AUDWANTED 1 /* a process is in need of aud buf */
75:
76: struct audcb audcrb, *acb; /* audit buffer control block */
77: #endif
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.