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