1: /*
   2:  * Copyright (c) 1983 Regents of the University of California.
   3:  * All rights reserved.  The Berkeley software License Agreement
   4:  * specifies the terms and conditions for redistribution.
   5:  *
   6:  *	@(#)lp.h	5.1 (Berkeley) 6/6/85
   7:  */
   8: 
   9: /*
  10:  * Global definitions for the line printer system.
  11:  */
  12: 
  13: #include <stdio.h>
  14: #include <sys/param.h>
  15: #include <sys/file.h>
  16: #include <sys/dir.h>
  17: #include <sys/stat.h>
  18: #include <sys/socket.h>
  19: #include <sys/un.h>
  20: #include <netinet/in.h>
  21: #include <netdb.h>
  22: #include <pwd.h>
  23: #include <syslog.h>
  24: #include <signal.h>
  25: #include <sys/wait.h>
  26: #include <sgtty.h>
  27: #include <ctype.h>
  28: #include <errno.h>
  29: #include "lp.local.h"
  30: 
  31: extern int  DU;     /* daeomon user-id */
  32: extern int  MX;     /* maximum number of blocks to copy */
  33: extern int  MC;     /* maximum number of copies allowed */
  34: extern char *LP;        /* line printer device name */
  35: extern char *RM;        /* remote machine name */
  36: extern char *RG;        /* restricted group */
  37: extern char *RP;        /* remote printer name */
  38: extern char *LO;        /* lock file name */
  39: extern char *ST;        /* status file name */
  40: extern char *SD;        /* spool directory */
  41: extern char *AF;        /* accounting file */
  42: extern char *LF;        /* log file for error messages */
  43: extern char *OF;        /* name of output filter (created once) */
  44: extern char *IF;        /* name of input filter (created per job) */
  45: extern char *RF;        /* name of fortran text filter (per job) */
  46: extern char *TF;        /* name of troff(1) filter (per job) */
  47: extern char *NF;        /* name of ditroff(1) filter (per job) */
  48: extern char *DF;        /* name of tex filter (per job) */
  49: extern char *GF;        /* name of graph(1G) filter (per job) */
  50: extern char *VF;        /* name of raster filter (per job) */
  51: extern char *CF;        /* name of cifplot filter (per job) */
  52: extern char *FF;        /* form feed string */
  53: extern char *TR;        /* trailer string to be output when Q empties */
  54: extern short    SC;     /* suppress multiple copies */
  55: extern short    SF;     /* suppress FF on each print job */
  56: extern short    SH;     /* suppress header page */
  57: extern short    SB;     /* short banner instead of normal header */
  58: extern short    HL;     /* print header last */
  59: extern short    RW;     /* open LP for reading and writing */
  60: extern short    PW;     /* page width */
  61: extern short    PX;     /* page width in pixels */
  62: extern short    PY;     /* page length in pixels */
  63: extern short    PL;     /* page length */
  64: extern short    BR;     /* baud rate if lp is a tty */
  65: extern int  FC;     /* flags to clear if lp is a tty */
  66: extern int  FS;     /* flags to set if lp is a tty */
  67: extern int  XC;     /* flags to clear for local mode */
  68: extern int  XS;     /* flags to set for local mode */
  69: extern short    RS;     /* restricted to those with local accounts */
  70: 
  71: extern char line[BUFSIZ];
  72: extern char pbuf[];     /* buffer for printcap entry */
  73: extern char *bp;        /* pointer into ebuf for pgetent() */
  74: extern char *name;      /* program name */
  75: extern char *printer;   /* printer name */
  76: extern char host[32];   /* host machine name */
  77: extern char *from;      /* client's machine name */
  78: extern int  errno;
  79: 
  80: /*
  81:  * Structure used for building a sorted list of control files.
  82:  */
  83: struct queue {
  84:     time_t  q_time;         /* modification time */
  85:     char    q_name[MAXNAMLEN+1];    /* control file name */
  86: };
  87: 
  88: char    *pgetstr();
  89: char    *malloc();
  90: char    *getenv();
  91: char    *index();
  92: char    *rindex();
Last modified: 1987-02-18
Generated: 2016-12-26
Generated by src2html V0.67
page hit count: 701
Valid CSS Valid XHTML 1.0 Strict