Annotation of researchv10no/lbin/mailx/hdr/configdefs.h, revision 1.1.1.1

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

unix.superglobalmegacorp.com

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