/* Cisco IGRP definitions */ /* IGRP Header */ struct igrphdr { #if BYTE_ORDER == BIG_ENDIAN u_char ig_v:4; /* protocol version number */ u_char ig_op:4; /* opcode */ #else u_char ig_op:4; /* opcode */ u_char ig_v:4; /* protocol version number */ #endif u_char ig_ed; /* edition number */ u_short ig_as; /* autonomous system number */ u_short ig_ni; /* number of subnet in local net */ u_short ig_ns; /* number of networks in AS */ u_short ig_nx; /* number of networks ouside AS */ u_short ig_sum; /* checksum of IGRP header & data */ }; #define IGRP_UPDATE 1 #define IGRP_REQUEST 2 /* IGRP routing entry */ struct igrprte { u_char igr_net[3]; /* 3 significant octets of IP address */ u_char igr_dly[3]; /* delay in tens of microseconds */ u_char igr_bw[3]; /* bandwidth in units of 1 kb/s */ u_char igr_mtu[2]; /* MTU in octets */ u_char igr_rel; /* percent packets successfully tx/rx */ u_char igr_ld; /* percent of channel occupied */ u_char igr_hct; /* hop count */ }; #define IGRP_RTE_SIZE 14 /* don't believe sizeof ! */