|
|
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
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.