Annotation of 43BSD/ucb/Mail/configdefs.h, revision 1.1

1.1     ! root        1: /*
        !             2:  * Copyright (c) 1980 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:  *     @(#)configdefs.h        5.1 (Berkeley) 6/6/85
        !             7:  */
        !             8: 
        !             9: /*
        !            10:  * This file contains the definitions of data structures used in
        !            11:  * configuring the network behavior of Mail when replying.
        !            12:  */
        !            13: 
        !            14: /*
        !            15:  * The following constants are used when you are running 4.1a bsd or
        !            16:  * later on a local network.  Under control of the #define flag
        !            17:  * GETHOST, the host name is determined dynamically using the
        !            18:  * gethostname() system call.  The name thus found is inserted
        !            19:  * into the host table slot whose name was originally EMPTY.
        !            20:  */
        !            21: #define        EMPTY           "** empty **"
        !            22: #define        EMPTYID         'E'
        !            23: 
        !            24: /*
        !            25:  * The following data structure is the host table.  You must have
        !            26:  * an entry here for your own machine, plus any special stuff you
        !            27:  * expect the mailer to know about.  If you have #define'd GETHOST
        !            28:  * in v7.local.h, you needn't add your machine to the host table.
        !            29:  * Not all hosts need be here, however:
        !            30:  * Mail can dope out stuff about hosts on the fly by looking
        !            31:  * at addresses.  The machines needed here are:
        !            32:  *     1) The local machine
        !            33:  *     2) Any machines on the path to a network gateway
        !            34:  *     3) Any machines with nicknames that you want to have considered
        !            35:  *        the same.
        !            36:  * The machine id letters can be anything you like and are not seen
        !            37:  * externally.  Be sure not to use characters with the 0200 bit set --
        !            38:  * these have special meanings.
        !            39:  */
        !            40: struct netmach {
        !            41:        char    *nt_machine;
        !            42:        char    nt_mid;
        !            43:        short   nt_type;
        !            44: };
        !            45: 
        !            46: /*
        !            47:  * Network type codes.  Basically, there is one for each different
        !            48:  * network, if the network can be discerned by the separator character,
        !            49:  * such as @ for the arpa net.  The purpose of these codes is to
        !            50:  * coalesce cases where more than one character means the same thing,
        !            51:  * such as % and @ for the arpanet.  Also, the host table uses a
        !            52:  * bit map of these codes to show what it is connected to.
        !            53:  * BN -- connected to Bell Net.
        !            54:  * AN -- connected to ARPA net, SN -- connected to Schmidt net.
        !            55:  */
        !            56: #define        AN      1                       /* Connected to ARPA net */
        !            57: #define        BN      2                       /* Connected to BTL net */
        !            58: #define        SN      4                       /* Connected to Schmidt net */
        !            59: 
        !            60: /*
        !            61:  * Data structure for table mapping network characters to network types.
        !            62:  */
        !            63: struct ntypetab {
        !            64:        char    nt_char;                /* Actual character separator */
        !            65:        int     nt_bcode;               /* Type bit code */
        !            66: };
        !            67: 
        !            68: /*
        !            69:  * Codes for the "kind" of a network.  IMPLICIT means that if there are
        !            70:  * physically several machines on the path, one does not list them in the
        !            71:  * address.  The arpa net is like this.  EXPLICIT means you list them,
        !            72:  * as in UUCP.
        !            73:  * By the way, this distinction means we lose if anyone actually uses the
        !            74:  * arpa net subhost convention: name@subhost@arpahost
        !            75:  */
        !            76: #define        IMPLICIT        1
        !            77: #define        EXPLICIT        2
        !            78: 
        !            79: /*
        !            80:  * Table for mapping a network code to its type -- IMPLICIT routing or
        !            81:  * IMPLICIT routing.
        !            82:  */
        !            83: struct nkindtab {
        !            84:        int     nk_type;                /* Its bit code */
        !            85:        int     nk_kind;                /* Whether explicit or implicit */
        !            86: };
        !            87: 
        !            88: /*
        !            89:  * The following table gives the order of preference of the various
        !            90:  * networks.  Thus, if we have a choice of how to get somewhere, we
        !            91:  * take the preferred route.
        !            92:  */
        !            93: struct netorder {
        !            94:        short   no_stat;
        !            95:        char    no_char;
        !            96: };
        !            97: 
        !            98: /*
        !            99:  * External declarations for above defined tables.
        !           100:  */
        !           101: #ifndef CONFIGFILE
        !           102: extern struct netmach netmach[1];
        !           103: extern struct ntypetab ntypetab[1];
        !           104: extern struct nkindtab nkindtab[1];
        !           105: extern struct netorder netorder[1];
        !           106: extern char *metanet;
        !           107: #endif

unix.superglobalmegacorp.com

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