112118Sralph /*
261840Sbostic  * Copyright (c) 1983, 1993
361840Sbostic  *	The Regents of the University of California.  All rights reserved.
422441Sdist  *
556248Selan  * %sccs.include.redist.c%
634203Sbostic  *
7*69009Stef  * 	@(#)lp.h	8.2 (Berkeley) 04/28/95
822441Sdist  */
922441Sdist 
1056243Selan 
1122441Sdist /*
1212118Sralph  * Global definitions for the line printer system.
1312118Sralph  */
1412118Sralph 
1556120Selan extern char	*AF;		/* accounting file */
1656120Selan extern long	 BR;		/* baud rate if lp is a tty */
1756120Selan extern char	*CF;		/* name of cifplot filter (per job) */
1856120Selan extern char	*DF;		/* name of tex filter (per job) */
1956120Selan extern long	 DU;		/* daeomon user-id */
2056120Selan extern long	 FC;		/* flags to clear if lp is a tty */
2156120Selan extern char	*FF;		/* form feed string */
2256120Selan extern long	 FS;		/* flags to set if lp is a tty */
2356120Selan extern char	*GF;		/* name of graph(1G) filter (per job) */
2456120Selan extern long	 HL;		/* print header last */
2556120Selan extern char	*IF;		/* name of input filter (created per job) */
2656120Selan extern char	*LF;		/* log file for error messages */
2756120Selan extern char	*LO;		/* lock file name */
2812118Sralph extern char	*LP;		/* line printer device name */
2956120Selan extern long	 MC;		/* maximum number of copies allowed */
3056120Selan extern long      MX;		/* maximum number of blocks to copy */
3156120Selan extern char	*NF;		/* name of ditroff(1) filter (per job) */
3256120Selan extern char	*OF;		/* name of output filter (created once) */
3356120Selan extern long	 PL;		/* page length */
3456120Selan extern long	 PW;		/* page width */
3556120Selan extern long	 PX;		/* page width in pixels */
3656120Selan extern long	 PY;		/* page length in pixels */
3756120Selan extern char	*RF;		/* name of fortran text filter (per job) */
3856120Selan extern char	*RG;		/* restricted group */
3912118Sralph extern char	*RM;		/* remote machine name */
4012118Sralph extern char	*RP;		/* remote printer name */
4156120Selan extern long	 RS;		/* restricted to those with local accounts */
4256120Selan extern long	 RW;		/* open LP for reading and writing */
4356120Selan extern long	 SB;		/* short banner instead of normal header */
4456120Selan extern long	 SC;		/* suppress multiple copies */
4556120Selan extern char	*SD;		/* spool directory */
4656120Selan extern long	 SF;		/* suppress FF on each print job */
4756120Selan extern long	 SH;		/* suppress header page */
4812118Sralph extern char	*ST;		/* status file name */
4912118Sralph extern char	*TF;		/* name of troff(1) filter (per job) */
5056120Selan extern char	*TR;		/* trailer string to be output when Q empties */
5112118Sralph extern char	*VF;		/* name of raster filter (per job) */
5256120Selan extern long	 XC;		/* flags to clear for local mode */
5356120Selan extern long	 XS;		/* flags to set for local mode */
5412118Sralph 
5512118Sralph extern char	line[BUFSIZ];
5656120Selan extern char	*bp;		/* pointer into printcap buffer */
5712118Sralph extern char	*name;		/* program name */
5812118Sralph extern char	*printer;	/* printer name */
5955470Sbostic 				/* host machine name */
6055470Sbostic extern char	host[MAXHOSTNAMELEN];
6112118Sralph extern char	*from;		/* client's machine name */
62*69009Stef extern int	remote;		/* true if sending files to a remote host */
6356120Selan extern char	*printcapdb[];  /* printcap database array */
6412118Sralph /*
6512118Sralph  * Structure used for building a sorted list of control files.
6612118Sralph  */
6712118Sralph struct queue {
6812118Sralph 	time_t	q_time;			/* modification time */
6912118Sralph 	char	q_name[MAXNAMLEN+1];	/* control file name */
7012118Sralph };
7112118Sralph 
7255470Sbostic #include <sys/cdefs.h>
7356120Selan 
7458252Storek __BEGIN_DECLS
7555470Sbostic struct dirent;
7655470Sbostic 
7755470Sbostic void     blankfill __P((int));
7855470Sbostic char	*checkremote __P((void));
7955470Sbostic int      chk __P((char *));
8055470Sbostic void     displayq __P((int));
8155470Sbostic void     dump __P((char *, char *, int));
8255470Sbostic void	 fatal __P((const char *, ...));
8355470Sbostic int	 getline __P((FILE *));
84*69009Stef int	 getport __P((char *, int));
8555470Sbostic int	 getq __P((struct queue *(*[])));
8655470Sbostic void     header __P((void));
8755470Sbostic void     inform __P((char *));
8855470Sbostic int      inlist __P((char *, char *));
8955470Sbostic int      iscf __P((struct dirent *));
9055470Sbostic int      isowner __P((char *, char *));
9155470Sbostic void     ldump __P((char *, char *, int));
9255470Sbostic int      lockchk __P((char *));
9355470Sbostic void     prank __P((int));
9455470Sbostic void     process __P((char *));
9555470Sbostic void     rmjob __P((void));
9655470Sbostic void     rmremote __P((void));
9755470Sbostic void     show __P((char *, char *, int));
9855470Sbostic int      startdaemon __P((char *));
9955470Sbostic void     warn __P((void));
100*69009Stef void     delay __P((int));
10158252Storek __END_DECLS
102