netfilter: ebtables: add support for matching ICMP type and code
We already have ICMPv6 type/code matches. This adds support for IPv4 ICMP matches in the same way. Signed-off-by: Matthias Schiffer <mschiffer@universe-factory.net> Acked-by: Florian Westphal <fw@strlen.de> Signed-off-by: Pablo Neira Ayuso <pablo@netfilter.org>
This commit is contained in:
parent
20710b3b81
commit
5adc1668dd
2 changed files with 43 additions and 13 deletions
|
|
@ -24,8 +24,9 @@
|
|||
#define EBT_IP_PROTO 0x08
|
||||
#define EBT_IP_SPORT 0x10
|
||||
#define EBT_IP_DPORT 0x20
|
||||
#define EBT_IP_ICMP 0x40
|
||||
#define EBT_IP_MASK (EBT_IP_SOURCE | EBT_IP_DEST | EBT_IP_TOS | EBT_IP_PROTO |\
|
||||
EBT_IP_SPORT | EBT_IP_DPORT )
|
||||
EBT_IP_SPORT | EBT_IP_DPORT | EBT_IP_ICMP)
|
||||
#define EBT_IP_MATCH "ip"
|
||||
|
||||
/* the same values are used for the invflags */
|
||||
|
|
@ -38,8 +39,14 @@ struct ebt_ip_info {
|
|||
__u8 protocol;
|
||||
__u8 bitmask;
|
||||
__u8 invflags;
|
||||
__u16 sport[2];
|
||||
__u16 dport[2];
|
||||
union {
|
||||
__u16 sport[2];
|
||||
__u8 icmp_type[2];
|
||||
};
|
||||
union {
|
||||
__u16 dport[2];
|
||||
__u8 icmp_code[2];
|
||||
};
|
||||
};
|
||||
|
||||
#endif
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue