/*-------------------------------------------------------------*/ /* ICMP4 types. Comments starting with "NI" are not implemented */ typedef enum { NETWIB_ICMP4TYPE_ECHOREP = 0, /* echo reply */ NETWIB_ICMP4TYPE_DESTUNREACH = 3, /* destination unreachable */ NETWIB_ICMP4TYPE_SRCQUENCH = 4, /* source quench */ NETWIB_ICMP4TYPE_REDIRECT = 5, /* redirect */ NETWIB_ICMP4TYPE_ALTHOSTAD = 6, /* NI www.iana.org */ NETWIB_ICMP4TYPE_ECHOREQ = 8, /* echo request */ NETWIB_ICMP4TYPE_ROUTERADVERT = 9, /* NI rfc 1256 */ NETWIB_ICMP4TYPE_ROUTERSELECT = 10, /* NI rfc 1256 */ NETWIB_ICMP4TYPE_TIMEEXCEED = 11, /* time exceeded */ NETWIB_ICMP4TYPE_PARAPROB = 12, /* parameter problem */ NETWIB_ICMP4TYPE_TIMESTAMPREQ = 13, /* timestamp request */ NETWIB_ICMP4TYPE_TIMESTAMPREP = 14, /* timestamp reply */ NETWIB_ICMP4TYPE_INFOREQ = 15, /* information request */ NETWIB_ICMP4TYPE_INFOREP = 16, /* information reply */ NETWIB_ICMP4TYPE_ADMASKREQ = 17, /* NI rfc 950 */ NETWIB_ICMP4TYPE_ADMASKREP = 18, /* NI rfc 950 */ NETWIB_ICMP4TYPE_TRACEROUTE = 30, /* NI rfc 1393 */ NETWIB_ICMP4TYPE_DATACONVERR = 31, /* NI rfc 1474 */ NETWIB_ICMP4TYPE_MOBHOSTREDIR = 32, /* NI www.iana.org */ NETWIB_ICMP4TYPE_IPV6WHEREYOU = 33, /* NI www.iana.org */ NETWIB_ICMP4TYPE_IPV6IAMHERE = 34, /* NI www.iana.org */ NETWIB_ICMP4TYPE_MOBREGREQ = 35, /* NI www.iana.org */ NETWIB_ICMP4TYPE_MOBREGREP = 36, /* NI www.iana.org */ NETWIB_ICMP4TYPE_SKIP = 39, /* NI www.iana.org */ NETWIB_ICMP4TYPE_PHOTURIS = 40 /* NI www.iana.org */ } netwib_icmp4type; /*-------------------------------------------------------------*/ /*************************************************************** * We define an ICMP4 code like this. Really, it should be one * * of : * * - netwib_icmp4code_destunreach * * - netwib_icmp4code_timeexceed * * - netwib_icmp4code_paraprob * * - netwib_icmp4code_redirect * ***************************************************************/ typedef netwib_uint32 netwib_icmp4code; /*-------------------------------------------------------------*/ /* Name : netwib_buf_append_icmp4type Description : Print the text corresponding to icmp type. Input parameter(s) : type : icmp4 type Input/output parameter(s) : *pbuf : netwib_buf receiving data Output parameter(s) : Normal return values : NETWIB_ERR_OK : ok */ netwib_err netwib_buf_append_icmp4type(netwib_icmp4type type, netwib_buf *pbuf); /*-------------------------------------------------------------*/ /* Name : netwib_buf_append_icmp4code Description : Print the text corresponding to icmp code. Input parameter(s) : type : icmp4 type code : icmp4 code Input/output parameter(s) : *pbuf : netwib_buf receiving data Output parameter(s) : Normal return values : NETWIB_ERR_OK : ok */ netwib_err netwib_buf_append_icmp4code(netwib_icmp4type type, netwib_icmp4code code, netwib_buf *pbuf);