1 /*
   2  * CDDL HEADER START
   3  *
   4  * The contents of this file are subject to the terms of the
   5  * Common Development and Distribution License, Version 1.0 only
   6  * (the "License").  You may not use this file except in compliance
   7  * with the License.
   8  *
   9  * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
  10  * or http://www.opensolaris.org/os/licensing.
  11  * See the License for the specific language governing permissions
  12  * and limitations under the License.
  13  *
  14  * When distributing Covered Code, include this CDDL HEADER in each
  15  * file and include the License file at usr/src/OPENSOLARIS.LICENSE.
  16  * If applicable, add the following below this CDDL HEADER, with the
  17  * fields enclosed by brackets "[]" replaced with your own identifying
  18  * information: Portions Copyright [yyyy] [name of copyright owner]
  19  *
  20  * CDDL HEADER END
  21  */
  22 /*      Copyright (c) 1984, 1986, 1987, 1988, 1989 AT&T */
  23 /*        All Rights Reserved */
  24 
  25 
  26 #ifndef _PARMS_H
  27 #define _PARMS_H
  28 
  29 /* If running SVR3, #define both ATTSVR3 and ATTSV */
  30 #define ATTSVR3 /* System V Release 3 */
  31 
  32 /* One of the following four lines should not be commented out.
  33  * The other three should be unless you are running a unique hybrid.
  34  */
  35 
  36 #define ATTSV   /* System III or System V */
  37 /* #define      V7 */   /* Version 7 systems (32V, Berkeley 4BSD, 4.1BSD) */
  38 /* #define      BSD4_2 */       /* Berkeley 4.2BSD */
  39 /* #define      V8 */   /* Research Eighth Edition */
  40 
  41 /* Owner of setud files running on behalf of uucp.  Needed in case
  42  * root runs uucp and euid is not honored by kernel.
  43  * GID is needed for some chown() calls.
  44  * Also used if guinfo() cannot find the current users ID in the
  45  * password file.
  46  */
  47 #define UUCPUID         (uid_t) 5       /* */
  48 #define UUCPGID         (gid_t) 5       /* */
  49 
  50 /* define ATTSVKILL if your system has a kill(2) that accepts kill(0, pid)
  51  * as a test for killability.  If ATTSV is defined this will automatically
  52  * be defined anyway.
  53  */
  54 #define ATTSVKILL       /* */
  55 
  56 /*
  57  * the next two lines control high resolution sleeps, called naps.
  58  *
  59  * most UNIX versions have no nap() system call; they want NONAP defined,
  60  * in which case one is provided in the code.  this includes all standard
  61  * versions of UNIX.
  62  *
  63  * some sites use a fast timer that reads a number of clock ticks and naps
  64  * for that interval; they want NONAP defined, and FASTTIMER defined as
  65  * the name of the device, e.g., /dev/ft.
  66  *
  67  * repeating, NONAP should be disabled *only* if your standard library has a
  68  * function called nap.
  69  */
  70 
  71 
  72 #define NONAP   /* nominal case -- no nap() in the standard library */
  73 /* #define FASTTIMER "/dev/ft" */   /* identify the device used for naps */
  74 
  75 /*
  76  * we use ustat to decide whether there's enough space to receive a
  77  * file.  if you're not ATTSV, you can use a setgid program to read the
  78  * number of free blocks and free inodes directly off the disk.  if you
  79  * choose this course, do not define NOUSTAT; rather, define V7USTAT to
  80  * be the name of that program.  be sure it accepts 2 args, major and minor
  81  * device numbers, and returns two numbers, blocks and inodes, in
  82  * "%d %d" format, or you'll never receive another file.
  83  */
  84 /* #define V7USTAT  "/usr/local/lib/ustat" */
  85 /* #define NOUSTAT   */ /* define NOUSTAT if you don't have ustat */
  86 
  87 /* define GRPCHK if you want to restrict the ability to read */
  88 /* Systems file stuff by way of the DEBUG flags based on a group id range */
  89 /* ex: if (GRPCHK(getgid()) no_secrets(); */
  90 #define GRPMIN  (gid_t) 2       /* */
  91 #define GRPMAX  (gid_t) 10      /* */
  92 #define GRPCHK(gid)     ( gid >= GRPMIN && gid <= GRPMAX ? 1 : 0 )        /* */
  93 /* #define GRPCHK(gid)  1 */    /* Systems info is not protected from DEBUG */
  94 
  95 /* definitions for the types of networks and dialers that are available */
  96 /* used to depend on STANDALONE, but now done at runtime via Sysfiles   */
  97 #define DATAKIT         /* define DATAKIT if datakit is available. */
  98 /* #define UNET */      /* define UNET if you have 3com ethernet software */
  99 /* #define TCP  */      /* TCP (bsd systems) */
 100 /* #define SYTEK*/      /* for sytek network */
 101 
 102 #ifdef ATTSVR3
 103 #define TLI             /* for AT&T Transport Layer Interface networks */
 104 #define TLIS            /* for AT&T Transport Layer Interface networks */
 105                         /* with streams module "tirdwr" */
 106 #endif /* ATTSVR3 */
 107 
 108 #define DIAL801 /* 801/212-103 auto dialers */
 109 
 110 /* define DUMB_DN if your dn driver (801 acu) cannot handle '=' */
 111 /* #define DUMB_DN */
 112 
 113 /*
 114  * Define protocols that are to be linked into uucico:
 115  *
 116  * The following table shows which protocols and networks work well
 117  * together.  The g protocol works over noisy links.  The e protocol
 118  * assumes that the underlying network provides an error free communications
 119  * channel that transfers the data in sequence without duplication.  The
 120  * d protocols makes the same assumptions as the e protocol, but in addition
 121  * it does Datakit specific ioctl's.  The g protocol is always included in
 122  * uucico.  To include the other protocols, 1) insure that the symbol from
 123  * the Symbol column is defined in this file and 2) include the file from
 124  * the File comlumn in the definition of PROTOCOLS in uucp.mk.
 125  *
 126  * Prot.
 127  * Letter Symbol       File     Applicable Media
 128  *
 129  *   g    none         -        -
 130  *   e    E_PROTOCOL   eio.c    TCP, UNET, TLI, and DATAKIT.
 131  *   d    D_PROTOCOL   dio.c    DATAKIT
 132  *   x    X_PROTOCOL   xio.c    -
 133  *
 134  * The next six lines conditionally define the protocol symbols for d
 135  * and e protocols based on the networks that were chosen above.  For the
 136  * x protocol you must explicitly define X_PROTOCOL.
 137  */
 138 
 139 #ifdef DATAKIT          /* Should include D protocol for Datakit. */
 140 #define D_PROTOCOL
 141 #endif /* DATAKIT */
 142 
 143 #if defined TCP || defined UNET || defined TLI || defined DATAKIT
 144 #define E_PROTOCOL      /* Include e protocol. */
 145 #endif  /* TCP || UNET || TLI || DATAKIT */
 146 
 147 /* #define X_PROTOCOL */ /* define X_PROTOCOL to use the xio protocol */
 148 #define X_PROTOCOL /* aeh - to check compilation */
 149 
 150 #define MAXCALLTRIES    2       /* maximum call attempts per Systems file line */
 151 
 152 /* define DEFAULT_BAUDRATE to be the baud rate you want to use when both */
 153 /* Systems file and Devices file allow Any */
 154 #define DEFAULT_BAUDRATE "9600" /* */
 155 
 156 /*define permission modes for the device */
 157 #define M_DEVICEMODE (mode_t) 0600      /* manager device mode */
 158 #define S_DEVICEMODE (mode_t) 0600      /* subsidiary device mode */
 159 #define R_DEVICEMODE (mode_t) 0600      /* default mode to restore */
 160 
 161 /* NO_MODEM_CTRL - define this if you have very old hardware
 162  * that does not know how to correctly handle modem control
 163  * Some old pdp/11 hardware such as dk, dl
 164  * If you define this, and have DH devices for direct lines,
 165  * the ports will often hang and be unusable.
 166 */
 167 /*#define NO_MODEM_CTRL */
 168 
 169 
 170 /* UUSTAT_TBL - this is the maximum number of machines that
 171  * status may be needed at any instant.
 172  * If you are not concerned with memory for a seldom used program,
 173  * make it very large.
 174  * This number is also used in uusched for its machine table -- it has
 175  * the same properties as the one in uustat.
 176  */
 177 
 178 /* #define UUSTAT_TBL 1000 */           /* big machine with lots of traffic */
 179 #define UUSTAT_TBL 200
 180 
 181 /* define UNAME if uname() should be used to get uucpname
 182  * This will be defined automatically if ATTSV is defined
 183  */
 184 #define UNAME /*  */
 185 
 186 /* initial wait time after failure before retry */
 187 #define RETRYTIME 300           /* 5 minutes */
 188 /* MAXRETRYTIME is for exponential backoff  limit.
 189  * NOTE - this should not be 24 hours so that
 190  * retry is not always at the same time each day
 191  */
 192 #define MAXRETRYTIME 82800      /* 23 hours */
 193 #define ASSERT_RETRYTIME 86400  /* retry time for ASSERT errors */
 194 
 195 /*  This is the path that will be used for uuxqt command executions */
 196 #define PATH    "PATH=/usr/bin " /* */
 197 
 198 /*  This is the set of default commands that can be executed */
 199 /*  if non is given for the system name in PERMISSIONS file */
 200 /*  It is a colon separated list as in PERMISSIONS file */
 201 #define DEFAULTCMDS     "rmail" /* standard default command list */
 202 
 203 /* define HZ to be the number of clock ticks per second */
 204 /* #define HZ 60 */ /* not needed for ATTSV or above */
 205 
 206 /*
 207  * put in local uucp name of this machine if there is no "/etc/whoami"
 208  * and no uname() (this is a last resort)
 209  */
 210 #define MYNAME          "kilroy"        /* */
 211 
 212 /* define NOSTRANGERS if you want to reject calls from systems which
 213  * are not in your Systems file.   If defined, NOSTRANGERS should be the name
 214  * of the program to execute when such a system dials in.  The argument
 215  * to said program will be the name of said system.  Typically this is a shell
 216  * procedure that sends mail to the uucp administrator informing them of an
 217  * attempt to communicate by an unknown system.
 218  * NOTE - if this is defined, it can be overridden by the administrator
 219  * by making the command non-executable.  (It can be turned on and off
 220  * by changing the mode of the command.)
 221  */
 222 #define NOSTRANGERS     "/usr/lib/uucp/remote.unknown"  /* */
 223 
 224 /* define LIMITS to be the name of a file which contains information
 225  * about the number of simultaneous uucicos,uuxqts, and uuscheds
 226  * that are allowed to run. If it is not defined, then there may be
 227  * "many" uucicos, uuxqts, and uuscheds running.
 228  */
 229 #define LIMITS          "/etc/uucp/Limits"              /* */
 230 
 231 /* define USRSPOOLLOCKS if you like your lock files in /var/spool/locks
 232  * be sure other programs such as 'cu' and 'ct' know about this
 233  *
 234  * WARNING: if you do not define USRSPOOLLOCKS, then $LOCK in
 235  * uudemon.cleanup must be changed.
 236  */
 237 #define USRSPOOLLOCKS  /* define to use /var/spool/locks for LCK files */
 238 
 239 /* define PKSPEEDUP if you want to try the recommended speedup in pkcget.
 240  * this entails sleeping between reads at low baud rates.
 241  */
 242 #define PKSPEEDUP       /* */
 243 
 244 #endif /* !_PARMS_H */