|
|
|
/* Copyright (c) 2008 Victor Julien <victor@inliniac.net> */
|
|
|
|
|
|
|
|
#ifndef __DECODE_EVENTS_H__
|
|
|
|
#define __DECODE_EVENTS_H__
|
|
|
|
|
|
|
|
enum {
|
|
|
|
/* IPV4 EVENTS */
|
|
|
|
IPV4_PKT_TOO_SMALL = 1, /* pkt smaller than minimum header size */
|
|
|
|
IPV4_HLEN_TOO_SMALL,
|
|
|
|
IPV4_IPLEN_SMALLER_THAN_HLEN,
|
|
|
|
IPV4_TRUNC_PKT,
|
|
|
|
|
|
|
|
/* IPV4 OPTIONS */
|
|
|
|
IPV4_OPT_INVALID,
|
|
|
|
IPV4_OPT_INVALID_LEN,
|
|
|
|
IPV4_OPT_MALFORMED,
|
|
|
|
IPV4_OPT_PAD_REQUIRED,
|
|
|
|
IPV4_OPT_EOL_REQUIRED,
|
|
|
|
IPV4_OPT_DUPLICATE,
|
|
|
|
IPV4_OPT_UNKNOWN,
|
|
|
|
|
|
|
|
/* ICMP EVENTS */
|
|
|
|
ICMPV4_PKT_TOO_SMALL,
|
|
|
|
ICMPV4_UNKNOWN_TYPE,
|
|
|
|
ICMPV4_UNKNOWN_CODE,
|
|
|
|
|
|
|
|
/* IPV6 EVENTS */
|
|
|
|
IPV6_PKT_TOO_SMALL,
|
|
|
|
IPV6_TRUNC_PKT,
|
|
|
|
IPV6_TRUNC_EXTHDR,
|
|
|
|
IPV6_EXTHDR_DUPL_FH,
|
|
|
|
IPV6_EXTHDR_DUPL_RH,
|
|
|
|
IPV6_EXTHDR_DUPL_HH,
|
|
|
|
IPV6_EXTHDR_DUPL_DH,
|
|
|
|
IPV6_EXTHDR_DUPL_AH,
|
|
|
|
IPV6_EXTHDR_DUPL_EH,
|
|
|
|
|
|
|
|
IPV6_EXTHDR_INVALID_OPTLEN, /* the optlen in an hop or dst hdr is invalid. */
|
|
|
|
|
|
|
|
/* TCP EVENTS */
|
|
|
|
TCP_PKT_TOO_SMALL,
|
|
|
|
TCP_HLEN_TOO_SMALL,
|
|
|
|
TCP_INVALID_OPTLEN,
|
|
|
|
|
|
|
|
/* TCP OPTIONS */
|
|
|
|
TCP_OPT_INVALID_LEN,
|
|
|
|
TCP_OPT_DUPLICATE, /* option length isn't right */
|
|
|
|
|
|
|
|
/* UDP EVENTS */
|
|
|
|
UDP_PKT_TOO_SMALL,
|
|
|
|
UDP_HLEN_TOO_SMALL,
|
|
|
|
UDP_HLEN_INVALID,
|
|
|
|
|
|
|
|
/* SLL EVENTS */
|
|
|
|
SLL_PKT_TOO_SMALL,
|
|
|
|
|
|
|
|
/* ETHERNET EVENTS */
|
|
|
|
ETHERNET_PKT_TOO_SMALL,
|
|
|
|
|
|
|
|
/* PPP EVENTS */
|
|
|
|
PPP_PKT_TOO_SMALL,
|
|
|
|
PPPVJU_PKT_TOO_SMALL,
|
|
|
|
PPPIPV4_PKT_TOO_SMALL,
|
|
|
|
PPPIPV6_PKT_TOO_SMALL,
|
|
|
|
PPP_WRONG_TYPE,
|
|
|
|
PPP_UNSUP_PROTO,
|
|
|
|
|
|
|
|
/* PPPOE EVENTS */
|
|
|
|
PPPOE_PKT_TOO_SMALL,
|
|
|
|
PPPOE_WRONG_CODE,
|
|
|
|
PPPOE_MALFORMED_TAGS,
|
|
|
|
|
|
|
|
/* GRE EVENTS */
|
|
|
|
GRE_PKT_TOO_SMALL,
|
|
|
|
GRE_WRONG_VERSION,
|
|
|
|
GRE_VERSION0_RECUR,
|
|
|
|
GRE_VERSION0_FLAGS,
|
|
|
|
GRE_VERSION0_HDR_TOO_BIG,
|
|
|
|
GRE_VERSION1_CHKSUM,
|
|
|
|
GRE_VERSION1_ROUTE,
|
|
|
|
GRE_VERSION1_SSR,
|
|
|
|
GRE_VERSION1_RECUR,
|
|
|
|
GRE_VERSION1_FLAGS,
|
|
|
|
GRE_VERSION1_NO_KEY,
|
|
|
|
GRE_VERSION1_WRONG_PROTOCOL,
|
|
|
|
GRE_VERSION1_MALFORMED_SRE_HDR,
|
|
|
|
GRE_VERSION1_HDR_TOO_BIG,
|
|
|
|
|
|
|
|
};
|
|
|
|
|
|
|
|
#endif /* __DECODE_EVENTS_H__ */
|