4.3BSD/usr/contrib/spms/include/pdb.h

Compare this file to the similar file:
Show the results in this format:

/* $Header$ */

/*
 * Project database definitions
 *
 * Author: Peter J. Nicklin
 */

/*
 * Buffer sizes
 */
#define PBUFSIZE	1024		/* project database buffer size */
#define PDBERRSIZE	256		/* database error message buffer size */
/*
 * Database access mode definitions
 */
#define _PACCESS	007		/* access mask */
#define _PREAD		001		/* database open for reading */
#define _PWRITE		002		/* database open for writing */
#define _PAPPEND	004		/* database open for appending */
/*
 * Database status definitions
 */
#define _PSTAT		070		/* status mask */
#define _PUPDATE	010		/* database updated */
#define _PEOF		020		/* EOF */
#define _PERR		040		/* error */
/*
 * Project database structure
 */
typedef struct _pdbdesc			/* database description struct */
	{
	char root[PATHSIZE];		/* database directory pathname */
	char path[PATHSIZE];		/* database pathname */
	FILE *fp;			/* database file pointer */
	char tpath[PATHSIZE];		/* temporary database pathname */
	FILE *tfp;			/* temporary database file ptr */
	unsigned short flag;		/* mode of database access */
	char pbuf[PBUFSIZE];		/* database line buffer */
	char perr[PDBERRSIZE];		/* database error message buffer */
	} PDB;
/*
 * Functions defined for project databases
 */
extern int _closepdb();			/* close database without updating */
extern int closepdb();			/* close database */
extern int errpdb();			/* print database error message */
extern PDB *mustopenpdb();		/* must open database or die */
extern PDB *openpdb();			/* open database */
extern void renamepdb();		/* rename database */
extern void resetpdb();			/* reset current database ptr */
extern void rewindpdb();		/* rewind database */
extern int  pfndent();			/* find and load database entry */
extern int  pgetent();			/* load next entry into buffer */
extern int  pputent();			/* write buffer to database */
extern void prment();			/* remove database entry */
extern void paddkey();			/* add key to specified entries */
extern void pchgkey();			/* change specified key */
extern void prmkey();			/* remove specified key */
extern void paddflag();			/* add flags */
extern void pchgflag();			/* change flags */
extern void pputflag();			/* add or change flags */
extern void prmflag();			/* remove flags */
extern void paddstring();		/* add or change strings */
extern void pchgstring();		/* change strings */
extern void pputstring();		/* add or change strings */
extern void prmstring();		/* remove strings */