File:  [MW Coherent from dump] / coherent / g / usr / bin / mlp / header.h
Revision 1.1.1.1 (vendor branch): download - view: text, annotated - select for diffs
Wed May 29 04:56:35 2019 UTC (7 years ago) by root
Branches: MarkWilliams, MAIN
CVS tags: relic, HEAD
coherent

/******************************************************************************
   MLP Spooler header
******************************************************************************/

#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <fcntl.h>
#include <unistd.h>
#include <time.h>
#include <sys/types.h>
#include <sys/ipc.h>
#include <sys/sem.h>
#include <sys/stat.h>
#include <signal.h>
#include <dirent.h>
#include <varargs.h>
#include <errno.h>
#include <pwd.h>

#define FPERMS 012

#define BACKEND_PATH  "/usr/spool/mlp/backend"
#define ROUTE_PATH    "/usr/spool/mlp/route"
#define QUEUE_PATH    "/usr/spool/mlp/queue"
#define CONTROL_PATH  "/usr/spool/mlp/controls"
#define STATUS_PATH   "/usr/spool/mlp/status"
#define LOG_PATH      "/usr/spool/mlp/log"
#define SPOOL_ENV     "MLP_SPOOL"
#define PRIORITY_ENV  "MLP_PRIORITY"
#define FORMLEN_ENV   "MLP_FORMLEN"
#define COPIES_ENV    "MLP_COPIES"
#define LONGEVITY_ENV "MLP_LIFE"
#define SEQNUM        "seqnum"
#define SYSTEM        "system"
#define DISPLAY       "display"
#define LOCAL         "local"
#define DESPOOLER     "despooler"
#define LOCALFEED     "localfeed"
#define FEED          "feed"
#define DOCOPIES      "docopies"
#define DEFAULT       "default"
#define TLIFE         "templife"
#define SLIFE         "shortlife"
#define LLIFE         "longlife"
#define DBACKEND      "/bin/cat"

#define HEADER_SIZE   192
#define DESC_LEN      45
#define WORKSTR       128

#define TRUE          1
#define FALSE         0
#define BAD          -1

#define BUG(x,y) {fprintf(stderr,"%s : %s\n", x, y); fflush(stderr);}

/* Header Defines */

#define HSET        TRUE
#define HGET        FALSE
#define H_USER      0
#define H_PRINTER   1
#define H_TYPE      2
#define H_FORMLEN   3
#define H_PAGES     4
#define H_DBASE     5
#define H_FORMAT    6
#define H_DSTAMP    7
#define H_DESC      8
#define H_LONGEVITY 9
#define H_COPIES    10
#define H_MAILME    11
#define H_WRITEME   12
#define H_ENTIRE    99


#define PRINTER_DISPLAY 0
#define REQUEST_DISPLAY 1
#define DEVICE_DISPLAY  2
#define PID_DISPLAY     3


#define R_KILL    SIGUSR1
#define R_CANCEL  SIGUSR2

#define A_LIFETIME 0
#define A_PRINTER  1

#define CLEAR_ALL TRUE
#define CLEAR_ONE FALSE

#define SEP  "=,\t \n"

#define E_START   0
#define E_END     1
#define E_NEXT    2
#define E_REWIND  3
#define E_FILE    4
#define E_UNLOCK  5

#define  IPC_NAME   "/usr/spool/mlp"
#define  IPC_PERMS  0666
#define  IPC_SEMS   4
#define  L_CANCEL   0
#define  L_CONTROL  1
#define  L_STATUS   2
#define  L_LOG      3 

extern char *getenv();
extern void  fatal();
extern void  warn();
extern int   rename();
extern char *header();
extern void  get_termcap();
extern char *datestamp();
extern char *uppercase();
extern char *controls();
extern char *status();
extern char *route_request();
extern int   get_seq_num();
extern char *request_filename();
extern void  local_print();
extern char *dirlist();
extern void  wakeup_despooler();
extern char *headerval();
extern char *unpadd();
extern char *basename();
extern int   scheduler_status();
extern int   writeOut();
extern char *request_name();
extern char *report_printer_status();
extern void  cancel_request();
extern int   kill_printing_request();
extern void  make_inactive();
extern char *each_printer();
extern void  MLP_lock();
extern void  MLP_unlock();

unix.superglobalmegacorp.com

This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.