Annotation of 43BSD/contrib/notes/src/parms.h, revision 1.1.1.1

1.1       root        1: #if    defined(RCSIDENT) && defined(MAINLINE)
                      2: static char zzparms[] = "$Header: parms.h,v 1.7.0.8 85/09/20 12:56:25 notes Rel $";
                      3: #endif defined(RCSIDENT) && defined(MAINLINE)
                      4: 
                      5: /*
                      6:  *     This file contains the constants that must be reset on each system
                      7:  *     when notefiles are first installed.  Other constants exist in
                      8:  *     structs.h, but in general should not be modified unless needed.
                      9:  */
                     10: 
                     11: #define                ARCHTIME        14                      /* expire threshold */
                     12: #define                WORKSETSIZE     0                       /* working set size */
                     13: 
                     14: #define                DFLTSH "/bin/sh"                        /* default shell */
                     15: #define                DFLTED "/bin/ed"                        /* default editor */
                     16: #define                SEQFILE "Dflt-Seq"                      /* file in MSTDIR */
                     17: #define                DFLTSEQ "general,net.general"           /* unspecified NFSEQ */
                     18: 
                     19: /*
                     20:  *     These define defaults for various Unix functions that can
                     21:  *     be overidden by environment variables 
                     22:  */
                     23: 
                     24: #define                MAILER  "/usr/ucb/mail"                 /* mailer to use */
                     25: #define                SUPERMAILER                             /* is a smart mailer */
                     26: #define                PAGER   "/usr/ucb/more"                 /* pg/more default */
                     27: #define                WRITE   "/bin/write"                    /* user-user communication */
                     28: 
                     29: /*
                     30:  *     Definition of the domain this binary will run in. Examples
                     31:  *     are "UUCP", "ARPA", or "Uiuc.ARPA". This string is appended
                     32:  *     to the hostname and used to build addresses. Thus with a
                     33:  *     hostname of "uiucdcsb" and a FULLDOMAIN of "Uiuc.ARPA",
                     34:  *     my articles would show as being from "[email protected]".
                     35:  *
                     36:  *     Undefining this has some effects in the notes/news gateway
                     37:  *     with stripping/adding domains. It isn't a good idea to have
                     38:  *     this undefined.
                     39:  */
                     40: 
                     41: #define        FULLDOMAIN      "CS.UIUC.EDU"                   /* local domain */
                     42: #undef IDDOMAIN                                        /* not in unique id */
                     43: 
                     44: /*
                     45:  *     define at most 1 of these (V7, UNIX4.0, etc.) 
                     46:  *     If none are defined, things probably won't go too well.
                     47:  */
                     48: 
                     49: #undef BSD41                                           /* Berkeley 4.1 bsd */
                     50: #undef BSD41A                                          /* Berkeley 4.1a bsd */
                     51: #define        BSD42                                           /* Berkeley 4.2 Bsd */
                     52: #undef V7                                              /* version 7 kernel */
                     53: #undef SYSIII                                          /* BTL System III kernel */
                     54: #undef UNIX40                                          /* Unix 4.0 kernel */
                     55: #undef SYSV                                            /* BTL System V kernel */
                     56: #undef BSD28                                           /* Berkeley 2.8 */
                     57: #undef BSD29                                           /* Berkeley 2.9 */
                     58: 
                     59: /*
                     60:  *     Some configurable options.  These depend on how you like 
                     61:  *     to flavor your stew. 
                     62:  *             Define          What it gets you
                     63:  *             --------        -------------------------------------
                     64:  *             PROMPT          if you want a command prompt.
                     65:  *             USERHOST        if you want addresses in the form 
                     66:  *                             user@host instead of host!user
                     67:  *             DYNADIR         enables code to determine Mstdir
                     68:  *                             (the /usr/spool/notes directory) from
                     69:  *                             the /etc/passwd.  When on, Mstdir is
                     70:  *                             set to the directory above notes' home.
                     71:  *             K_KEY           Defined if you want k and K to be aliases
                     72:  *                             for q and Q.  It is handy and allows you
                     73:  *                             to read with one hand.  You can also
                     74:  *                             get very aggravated when you hit "k" instead
                     75:  *                             of "j".
                     76:  *             BIGTEXT         change from a u_short to a long counter
                     77:  *                             to allow longer texts...
                     78:  */
                     79: 
                     80: #undef PROMPT  "? "                                    /* command prompt */
                     81: #undef PROMPTMSGX      (17)                            /* stren(PROMPT) */
                     82: #define        USERHOST                                        /* user@host */
                     83: #undef DYNADIR                                         /* dynamic Mstdir */
                     84: #define        K_KEY                                           /* k==q, K==Q */
                     85: #define        BIGTEXT                                         /* 32 bit counters */
                     86: 
                     87: 
                     88: /*
                     89:  *     The remaining options are pretty much stock.  You shouldn't
                     90:  *     have to play with them unless you want to run a very non-standard
                     91:  *     shop.
                     92:  */
                     93: 
                     94: 
                     95: #define                NFMAINT "nfmaint"                       /* internal logging */
                     96: #define                AUTOCREATE                              /* automatic mknf */
                     97: #define                STATS                                   /* keep usage stats */
                     98: 
                     99: #define                FASTSEQ                                 /* use stat to check */
                    100: 
                    101: #define                DUMPCORE        "coredump"              /* subdir of UTILITY */
                    102: 
                    103: #define                FASTFORK                                /* faster forking */
                    104: /*
                    105:  *     Thanks to Malcolm Slaney of Purdue EE for both BUFIO and FASTFORK
                    106:  *     modifications. (BUFIO is now used exclusively and so isn't 
                    107:  *     surrounded by ifdefs any more.
                    108:  */
                    109: 
                    110: /*
                    111:  *     REMAINDER OF THIS FILE PROBABLY DOESN'T NEED TO BE CHANGED
                    112:  *
                    113:  *     Do some specific defines that go along with particluar OS's.
                    114:  *     I may have missed some stuff and if you are running hybrid
                    115:  *     versions of Unix, you might need to change things.
                    116:  */
                    117: 
                    118: #if    defined(BSD41)                                  /* UCB 4.1 BSD */
                    119: #define        VFORK
                    120: #define        BSD4x
                    121: #endif defined(BSD41)
                    122: 
                    123: #if    defined(BSD41A)                                 /* UCB 4.1a BSD */
                    124: #define        PORTBINARY                                      /* portable binaries */
                    125: #define        VFORK
                    126: #define        BSD4x
                    127: #endif defined(BSD41A)
                    128: 
                    129: #if    defined(BSD42)                                  /* UCB 4.2 BSD */
                    130: #define        PORTBINARY
                    131: #define        VFORK
                    132: #define        BSD4x
                    133: #define        FILENAMELEN     255
                    134: #endif defined(BSD42)
                    135: 
                    136: #if    defined(V7)                                     /* Research V7 */
                    137: #define        WHOAMI
                    138: #define        WHOAMIFILE      "/usr/include/whoami.h"
                    139: /*
                    140:  *     has a line in it of the form:
                    141:  *     #define sysname "XXXX"
                    142:  *     and maybe other lines too.
                    143:  */
                    144: #endif defined(V7)
                    145: 
                    146: #if    defined(SYSIII)                                 /* BTL System III */
                    147: #define        UNAME                                           /* more port-binary */
                    148: #define        USG                                             /* BTL Unix */
                    149: #endif defined(SYSIII)
                    150: 
                    151: #if    defined(UNIX40)                                 /* BTL (internal) */
                    152: #define        UNAME                                           /* more port-binary */
                    153: #define        USG                                             /* BTL Unix */
                    154: #endif defined(UNIX40)
                    155: 
                    156: #if    defined(SYSV)                                   /* BTL System V */
                    157: #define        UNAME                                           /* more port-binary */
                    158: #define        USG                                             /* BTL Unix */
                    159: #endif defined(SYSV)
                    160: 
                    161: #ifdef USG                                             /* a BTL Unix */
                    162: /*
                    163:  *     BTL Unix doesn't have index/rindex. Instead have strchr/strrchr.
                    164:  *     define as macros here instead of plain substitution so won't
                    165:  *     get tripped on a variable called "index" someday.
                    166:  */
                    167: #define        index(s,c)      strchr(s,c)                     /* 1st char */
                    168: #define        rindex(s,c)     strrchr(s,c)                    /* last char */
                    169: 
                    170: extern char *strchr ();                                        /* for lint */
                    171: extern char *strrchr ();
                    172: #else
                    173: extern char *index ();                                 /* for lint */
                    174: extern char *rindex ();
                    175: #endif USG
                    176: 
                    177: #if    defined(BSD28)                                  /* UCB 2.8 BSD */
                    178: #define        BSD2x
                    179: #endif defined(BSD28)
                    180: 
                    181: #if    defined(BSD29)                                  /* UCB 2.9 BSD */
                    182: #define        BSD2x
                    183: #endif defined(BSD29)
                    184: 
                    185: /*
                    186:  *     if the kernel hasn't already selected this...
                    187:  */
                    188: 
                    189: #ifndef                FILENAMELEN
                    190: #define                FILENAMELEN     14
                    191: #endif
                    192: #define                ROTATE          13                      /* rotation factor */
                    193: #ifndef        PROMPTMSGX
                    194: #define                PROMPTMSGX      (15)                    /* make sure it's there */
                    195: #endif PROMPTMSGX
                    196: 
                    197: #ifndef        VFORK
                    198: #define                vfork   fork
                    199: /*
                    200:  *     There are legit uses of both fork/vfork.
                    201:  *     This lets us use vfork where we should and it defaults 
                    202:  *     to fork on systems that don't have it.
                    203:  *
                    204:  *     This may be a red herring for this implementation, but I 
                    205:  *     like the idea.
                    206:  */
                    207: #endif VFORK
                    208: 
                    209: #define                SHAREDATA                               /* in note.c, resp.c */
                    210: #undef         RUNSUID                                 /* use set-gid */
                    211: 
                    212: /*
                    213:  *     Version of the database in use. You don't want to change this.
                    214:  *     This reflects the format of the notesfile database and when
                    215:  *     the database format changes, this changes. It shouldn't
                    216:  *     change unless the database format changes.
                    217:  *     Format:         yyyymmdd
                    218:  */
                    219: 
                    220: #define                DBVERSION       19850101                /* current format */
                    221: 
                    222: /*
                    223:  *     If worrying about mangled id's coming back from older
                    224:  *     notesfile sites with shorter fields. This affects code
                    225:  *     in "find.c"
                    226:  */
                    227: #define        IDCOMPAT
                    228: #define        OLDSYSSZ        10                              /* old SYSSZ */
                    229: #undef FIXTIMES                                        /* fix gmttimes in future */

unix.superglobalmegacorp.com

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