xref: /original-bsd/bin/pax/sel_subs.h (revision 3631e65b)
114682e57Smuller /*-
214682e57Smuller  * Copyright (c) 1992 Keith Muller.
3*3631e65bSbostic  * Copyright (c) 1992, 1993
4*3631e65bSbostic  *	The Regents of the University of California.  All rights reserved.
514682e57Smuller  *
614682e57Smuller  * This code is derived from software contributed to Berkeley by
714682e57Smuller  * Keith Muller of the University of California, San Diego.
814682e57Smuller  *
914682e57Smuller  * %sccs.include.redist.c%
1014682e57Smuller  *
11*3631e65bSbostic  *	@(#)sel_subs.h	8.1 (Berkeley) 05/31/93
1214682e57Smuller  */
1314682e57Smuller 
1414682e57Smuller /*
1514682e57Smuller  * data structure for storing uid/grp selects (-U, -G non standard options)
1614682e57Smuller  */
1714682e57Smuller 
1814682e57Smuller #define USR_TB_SZ	317		/* user selection table size */
1914682e57Smuller #define GRP_TB_SZ	317		/* user selection table size */
2014682e57Smuller 
2114682e57Smuller typedef struct usrt {
2214682e57Smuller 	uid_t uid;
2314682e57Smuller 	struct usrt *fow;		/* next uid */
2414682e57Smuller } USRT;
2514682e57Smuller 
2614682e57Smuller typedef struct grpt {
2714682e57Smuller 	gid_t gid;
2814682e57Smuller 	struct grpt *fow;		/* next gid */
2914682e57Smuller } GRPT;
3014682e57Smuller 
3114682e57Smuller /*
3214682e57Smuller  * data structure for storing user supplied time ranges (-T option)
3314682e57Smuller  */
3414682e57Smuller 
3514682e57Smuller #define ATOI2(s)	((((s)[0] - '0') * 10) + ((s)[1] - '0'))
3614682e57Smuller 
3714682e57Smuller typedef struct time_rng {
3814682e57Smuller 	time_t		low_time;	/* lower inclusive time limit */
3914682e57Smuller 	time_t		high_time;	/* higher inclusive time limit */
40398165ebSmuller 	int		flgs;		/* option flags */
41398165ebSmuller #define	HASLOW		0x01		/* has lower time limit */
42398165ebSmuller #define HASHIGH		0x02		/* has higher time limit */
43398165ebSmuller #define CMPMTME		0x04		/* compare file modification time */
44398165ebSmuller #define CMPCTME		0x08		/* compare inode change time */
45398165ebSmuller #define CMPBOTH	(CMPMTME|CMPCTME)	/* compare inode and mod time */
4614682e57Smuller 	struct time_rng	*fow;		/* next pattern */
4714682e57Smuller } TIME_RNG;
48