1/* 2 * $Id: printer.h,v 1.6 2005-04-28 20:49:49 bfernhomberg Exp $ 3 * 4 * Copyright (c) 1990,1995 Regents of The University of Michigan. 5 * All Rights Reserved. See COPYRIGHT. 6 */ 7 8struct printer { 9 char *p_name; 10 char *p_type; 11 char *p_zone; 12 char *p_u_name; 13#ifdef notdef 14 char *p_fonts; 15 char *p_psetdir; 16#endif /* notdef */ 17 char *p_ppdfile; 18 char p_status[255]; 19 char *p_authprintdir; 20 int p_flags; 21 struct at_addr p_addr; 22 union { 23 struct { 24 char *pr_printer; 25 char *pr_operator; 26 char *pr_spool; 27#ifdef ABS_PRINT 28 char *pr_role; 29 double pr_balance; 30 int pr_srvid; 31#endif /* ABS_PRINT */ 32 int pr_pagecost; 33 char *pr_pagecost_msg; 34 char *pr_lock; 35 } pu_pr; 36 char *pu_cmd; 37 } p_un; 38 ATP p_atp; 39#ifdef HAVE_CUPS 40 char *p_cupsoptions; 41#endif 42 struct printer *p_next; 43}; 44#define p_cmd p_un.pu_cmd 45#define p_printer p_un.pu_pr.pr_printer 46#define p_operator p_un.pu_pr.pr_operator 47#define p_spool p_un.pu_pr.pr_spool 48#ifdef ABS_PRINT 49#define p_role p_un.pu_pr.pr_role 50#define p_balance p_un.pu_pr.pr_balance 51#define p_srvid p_un.pu_pr.pr_srvid 52#endif /* ABS_PRINT */ 53#define p_pagecost p_un.pu_pr.pr_pagecost 54#define p_pagecost_msg p_un.pu_pr.pr_pagecost_msg 55#define p_lock p_un.pu_pr.pr_lock 56 57#define P_PIPED (1<<0) 58#define P_SPOOLED (1<<1) 59#define P_REGISTERED (1<<2) 60#define P_ACCOUNT (1<<3) 61#define P_KRB (1<<4) 62#define P_AUTH (1<<5) 63#define P_AUTH_PSSP (1<<6) 64#define P_AUTH_CAP (1<<7) 65#define P_CUPS (1<<8) 66#define P_CUPS_PPD (1<<9) 67#define P_CUPS_AUTOADDED (1<<10) 68#define P_FOOMATIC_HACK (1<<11) 69 70extern struct printer *printer; 71