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