1 /* 2 * Copyright (c) 1983 Regents of the University of California. 3 * All rights reserved. 4 * 5 * %sccs.include.redist.c% 6 * 7 * @(#)lp.h 5.9 (Berkeley) 09/15/92 8 */ 9 10 11 /* 12 * Global definitions for the line printer system. 13 */ 14 15 extern char *AF; /* accounting file */ 16 extern long BR; /* baud rate if lp is a tty */ 17 extern char *CF; /* name of cifplot filter (per job) */ 18 extern char *DF; /* name of tex filter (per job) */ 19 extern long DU; /* daeomon user-id */ 20 extern long FC; /* flags to clear if lp is a tty */ 21 extern char *FF; /* form feed string */ 22 extern long FS; /* flags to set if lp is a tty */ 23 extern char *GF; /* name of graph(1G) filter (per job) */ 24 extern long HL; /* print header last */ 25 extern char *IF; /* name of input filter (created per job) */ 26 extern char *LF; /* log file for error messages */ 27 extern char *LO; /* lock file name */ 28 extern char *LP; /* line printer device name */ 29 extern long MC; /* maximum number of copies allowed */ 30 extern long MX; /* maximum number of blocks to copy */ 31 extern char *NF; /* name of ditroff(1) filter (per job) */ 32 extern char *OF; /* name of output filter (created once) */ 33 extern long PL; /* page length */ 34 extern long PW; /* page width */ 35 extern long PX; /* page width in pixels */ 36 extern long PY; /* page length in pixels */ 37 extern char *RF; /* name of fortran text filter (per job) */ 38 extern char *RG; /* restricted group */ 39 extern char *RM; /* remote machine name */ 40 extern char *RP; /* remote printer name */ 41 extern long RS; /* restricted to those with local accounts */ 42 extern long RW; /* open LP for reading and writing */ 43 extern long SB; /* short banner instead of normal header */ 44 extern long SC; /* suppress multiple copies */ 45 extern char *SD; /* spool directory */ 46 extern long SF; /* suppress FF on each print job */ 47 extern long SH; /* suppress header page */ 48 extern char *ST; /* status file name */ 49 extern char *TF; /* name of troff(1) filter (per job) */ 50 extern char *TR; /* trailer string to be output when Q empties */ 51 extern char *VF; /* name of raster filter (per job) */ 52 extern long XC; /* flags to clear for local mode */ 53 extern long XS; /* flags to set for local mode */ 54 55 extern char line[BUFSIZ]; 56 extern char *bp; /* pointer into printcap buffer */ 57 extern char *name; /* program name */ 58 extern char *printer; /* printer name */ 59 /* host machine name */ 60 extern char host[MAXHOSTNAMELEN]; 61 extern char *from; /* client's machine name */ 62 extern int sendtorem; /* are we sending to a remote? */ 63 extern char *printcapdb[]; /* printcap database array */ 64 /* 65 * Structure used for building a sorted list of control files. 66 */ 67 struct queue { 68 time_t q_time; /* modification time */ 69 char q_name[MAXNAMLEN+1]; /* control file name */ 70 }; 71 72 #include <sys/cdefs.h> 73 74 _BEGIN_DECLS 75 struct dirent; 76 77 void blankfill __P((int)); 78 char *checkremote __P((void)); 79 int chk __P((char *)); 80 void displayq __P((int)); 81 void dump __P((char *, char *, int)); 82 void fatal __P((const char *, ...)); 83 int getline __P((FILE *)); 84 int getport __P((char *)); 85 int getq __P((struct queue *(*[]))); 86 void header __P((void)); 87 void inform __P((char *)); 88 int inlist __P((char *, char *)); 89 int iscf __P((struct dirent *)); 90 int isowner __P((char *, char *)); 91 void ldump __P((char *, char *, int)); 92 int lockchk __P((char *)); 93 void prank __P((int)); 94 void process __P((char *)); 95 void rmjob __P((void)); 96 void rmremote __P((void)); 97 void show __P((char *, char *, int)); 98 int startdaemon __P((char *)); 99 void warn __P((void)); 100 _END_DECLS 101