changed "dp" command to say "At EOF" when executed on last message
[unix-history] / usr / src / usr.bin / mail / configdefs.h
CommitLineData
4a03b5a8
KS
1#
2
3/*
4 * This file contains the definitions of data structures used in
5 * configuring the network behavior of Mail when replying.
6 */
7
8/*
9 * Sccs ID @(#)configdefs.h 1.1 %G%
10 */
11
12/*
13 * The following data structure is the host table. You must have
14 * an entry here for your own machine, plus any special stuff you
15 * expect the mailer to know about. Not all hosts need be here,
16 * however: Mail can dope out stuff about hosts on the fly by looking
17 * at addresses. The machines needed here are:
18 * 1) The local machine
19 * 2) Any machines on the path to a network gateway
20 * 3) Any machines with nicknames that you want to have considered
21 * the same.
22 * The machine id letters can be anything you like and are not seen
23 * externally. Be sure not to use characters with the 0200 bit set --
24 * these have special meanings.
25 */
26struct netmach {
27 char *nt_machine;
28 char nt_mid;
29 short nt_type;
30};
31
32/*
33 * Network type codes. Basically, there is one for each different
34 * network, if the network can be discerned by the separator character,
35 * such as @ for the arpa net. The purpose of these codes is to
36 * coalesce cases where more than one character means the same thing,
37 * such as % and @ for the arpanet. Also, the host table uses a
38 * bit map of these codes to show what it is connected to.
39 * BN -- connected to Bell Net.
40 * AN -- connected to ARPA net, SN -- connected to Schmidt net.
41 */
42#define AN 1 /* Connected to ARPA net */
43#define BN 2 /* Connected to BTL net */
44#define SN 4 /* Connected to Schmidt net */
45
46/*
47 * Data structure for table mapping network characters to network types.
48 */
49struct nettypetab {
50 char nt_char; /* Actual character separator */
51 int nt_type; /* Type bit code */
52};
53
54/*
55 * Codes for the "kind" of a network. IMPLICIT means that if there are
56 * physically several machines on the path, one does not list them in the
57 * address. The arpa net is like this. EXPLICIT means you list them,
58 * as in UUCP.
59 * By the way, this distinction means we lose if anyone actually uses the
60 * arpa net subhost convention: name@subhost@arpahost
61 */
62#define IMPLICIT 1
63#define EXPLICIT 2
64
65/*
66 * Table for mapping a network code to its type -- IMPLICIT routing or
67 * IMPLICIT routing.
68 */
69struct netkindtab {
70 int nk_type; /* Its bit code */
71 int nk_kind; /* Whether explicit or implicit */
72};
73
74/*
75 * The following table gives the order of preference of the various
76 * networks. Thus, if we have a choice of how to get somewhere, we
77 * take the preferred route.
78 */
79struct netorder {
80 short no_stat;
81 char no_char;
82};
83
84/*
85 * External declarations for above defined tables.
86 */
87#ifndef CONFIGFILE
88extern struct netmach netmach[1];
89extern struct nettypetab nettypetab[1];
90extern struct netkindtab netkindtab[1];
91extern struct netorder netorder[1];
92extern char *metanet;
93#endif