V10/history/ix/include/sys/log.h

/*
 * commands to log system call
 */
#define LOGON		1
#define LOGOFF		2
#define	LOGGET		3
#define	LOGSET		4
#define	LOGFGET		5
#define	LOGFSET		6
#define	LOGPGET		7
#define	LOGPSET		8


/*
 * security logfile records
 */
#define LOGLEN (BUFSIZE+20) 
struct logbuf {
	short len;		/* total length of whole record */
	short pid;
	long slug;		/* transaction number */
	char code;		/* kind of record, see below */
	char mode;		/* sub-kind */
	char colon;		/* ':', aids sync */
	char body[LOGLEN];	/* big enough for namei arg */
};

#define	LOG_USER		0	/* user write to /dev/log, log.c */
#define	LOG_SYSCALL		2	/* trap.c */
#define	LOG_NAMEI		3	/* nami.c */
#define	LOG_EXEC		5	/* sys1.c */
#define	LOG_PLAB		6	/* process label change, sys5.c */
#define	LOG_SLAB		7	/* jlabel.c */
#define LOG_LOGNAME		8	/* sys4.c */
#define LOG_EXTERN		9	/* this priv or that was exercised: */
#define LOG_NOCHK		10	/* ... */
#define LOG_SETLIC		11
#define LOG_SPRIV		12
#define LOG_UAREA		13
#define LOG_LOG			22
#define LOG_FMOUNT		15	/* mount or unmount call */
#define	LOG_SEEK		16
#define LOG_OPEN		17	/* a process gets a new fd */
#define LOG_CLOSE		18	/* a process looses an fd */
#define	LOG_FLAB		19	/* file label change */
#define	LOG_TRACE		20	/* file or uid being traced */
#define	LOG_EXIT		21	/* sys1.c */

/*
 * bits in p_log
 */
#define loggable(x)	(u.u_procp->p_log & (x))
#define	LABAUDIT (1<<0)		/* this sys call is in midst of logging self */

/*
 * Question logging:
 */
#define	LN	(1<< 8)		/* log refs to file names */
#define	LS	(1<< 9)		/* log refs to seek ptrs */
#define	LU	(1<<10)		/* log refs to u_area */
#define LI	(1<<11)		/* log refs to inode contents */
#define LD	(1<<12)		/* log refs to file contents */
#define LP	(1<<13)		/* log processes creation, etc */

/*
 * Status logging:
 */
#define	LL	(1<<15)		/* log explicit label changes */
#define	LA	(1<<16)		/* log ALL label changes (floating) */
#define	LX	(1<<17)		/* log uses of privilege */
#define	LE	(1<<18)		/* log all ELAB returns */
#define	LT	(1<<19)		/* log all uses of traced file or process */


#ifdef KERNEL

extern int lgcnt;
extern struct inode *lg[];

extern long logmask[5];
extern struct logbuf abuf;
extern struct inode alog;
extern seclog();

#define POISON	3
#define ISLOGFILE 128	/* lend/lease from i_pexflag */
#define	LOG_AC(ip)	((ip)->i_pexflag & POISON) /* file poison level */
#define setpoison(ip,x) (ip)->i_pexflag=((x)&POISON)|((ip)->i_pexflag&~POISON)
#endif KERNEL