xref: /csrg-svn/sys/deprecated/bbnnet/hmp.h (revision 25202)
1*25202Skarels /*
2*25202Skarels  * $Header: hmp.h,v 1.1 85/04/08 15:27:33 craig Exp $
3*25202Skarels  *
4*25202Skarels  * $Log:	hmp.h,v $
5*25202Skarels  * Revision 1.1  85/04/08  15:27:33  craig
6*25202Skarels  * Initial revision
7*25202Skarels  *
8*25202Skarels  *
9*25202Skarels */
10*25202Skarels 
11*25202Skarels /**************************************************************************/
12*25202Skarels /*  sockaddr_in with additional fields for hmp                            */
13*25202Skarels /**************************************************************************/
14*25202Skarels 
15*25202Skarels struct sockaddr_hmp {
16*25202Skarels 	short	sin_family;	/* standard INET stuff */
17*25202Skarels 	u_short	sin_port;
18*25202Skarels 	struct	in_addr sin_addr;
19*25202Skarels 	u_char  sih_systype;	/* HMP specific fields */
20*25202Skarels 	u_char	sih_msgtype;
21*25202Skarels 	u_char  sih_options;
22*25202Skarels 	u_char	sih_ctlflgs;
23*25202Skarels 	u_short sih_seqno;
24*25202Skarels 	u_short sih_passwd;
25*25202Skarels };
26*25202Skarels 
27*25202Skarels #define sih_rseqno   sih_passwd
28*25202Skarels 
29*25202Skarels #define HM_MOREBIT	0x2	/* sih_ctlflgs: remote host has more data */
30*25202Skarels 
31*25202Skarels #define HM_TRAPOPT	0x1	/* sih_options: receive traps */
32*25202Skarels #define HM_SEQOPT	0x2	/* sih_options: enforce sequencing */
33*25202Skarels #define HM_NUMOPT	0x3	/* sih_options: use remote seqnum */
34*25202Skarels 
35*25202Skarels #ifdef KERNEL
36*25202Skarels #define HM_CONNOPTS (HM_NUMOPT)
37*25202Skarels #define HM_BINDOPTS (HM_TRAPOPT|HM_SEQOPT)
38*25202Skarels #endif
39*25202Skarels 
40*25202Skarels 
41*25202Skarels /**************************************************************************/
42*25202Skarels /*                       SYSTEM TYPES                                     */
43*25202Skarels /**************************************************************************/
44*25202Skarels 
45*25202Skarels 
46*25202Skarels #define HM_MONHOST	1
47*25202Skarels #define HM_IMP		2
48*25202Skarels #define HM_TAC		3
49*25202Skarels #define HM_GWY		4
50*25202Skarels #define HM_SIMP		5
51*25202Skarels #define HM_HOST		6	/* BBN 4.1BSD HOSTS */
52*25202Skarels #define HM_RESERVED	7
53*25202Skarels #define HM_TIU		9
54*25202Skarels #define HM_FEP		10
55*25202Skarels #define HM_CRHOST	11	/* CRONUS HOST */
56*25202Skarels #define HM_CRMCS	12	/* CRONUS MON & CTL STA */
57*25202Skarels #define HM_42HOST	7
58*25202Skarels #define HM_43HOST	13	/* unapproved # */
59*25202Skarels 
60*25202Skarels /**************************************************************************/
61*25202Skarels /*                         MESSAGE TYPES                                  */
62*25202Skarels /**************************************************************************/
63*25202Skarels 
64*25202Skarels #define HM_TRAP		1
65*25202Skarels #define HM_STATUS	2
66*25202Skarels #define HM_THRUPUT	3
67*25202Skarels #define HM_HTM		4
68*25202Skarels #define HM_PARAM	5
69*25202Skarels #define HM_ROUTE	6
70*25202Skarels #define HM_CALLACCT	7
71*25202Skarels 
72*25202Skarels #define HM_POLL		100
73*25202Skarels #define HM_ERROR	101
74*25202Skarels #define HM_CTLACK	102
75*25202Skarels 
76*25202Skarels /**************************************************************************/
77*25202Skarels /*                       ERROR TYPES                                      */
78*25202Skarels /**************************************************************************/
79*25202Skarels 
80*25202Skarels 
81*25202Skarels #define HM_EUNSPEC	1	/* reason unspecified */
82*25202Skarels #define HM_ERTYPE	2	/* bad r-message type */
83*25202Skarels #define HM_ERSUB	3	/* bad r-sub type */
84*25202Skarels #define HM_EUPARAM	4	/* unknown param */
85*25202Skarels #define HM_EIPARAM	5	/* invalid param */
86*25202Skarels #define HM_EFORMAT	6	/* invalid paramter/value format */
87*25202Skarels #define HM_ELOADER	7	/* machine in loader */
88*25202Skarels 
89*25202Skarels /**************************************************************************/
90*25202Skarels /*                      SPECIAL PORTS                                     */
91*25202Skarels /**************************************************************************/
92*25202Skarels 
93*25202Skarels #define HM_MAXPORTS 0xff
94*25202Skarels 
95*25202Skarels #define HOST_PORT  1		/* where polls to this host go */
96*25202Skarels 
97*25202Skarels /**************************************************************************/
98*25202Skarels /*			OPTIONS                                           */
99*25202Skarels /**************************************************************************/
100*25202Skarels 
101*25202Skarels #define SOI_MONHOST	0x1	/* HMP -- set/get monioring hosts */
102*25202Skarels 
103*25202Skarels #define MAX_MONHOSTS	2	/* how many hosts monitor us at once */
104*25202Skarels 
105