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