-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
[NETFILTER]: x_tables: unify IPv4/IPv6 multiport match
This unifies ipt_multiport and ip6t_multiport to xt_multiport. As a result, this addes support for inversion and port range match to IPv6 packets. Signed-off-by: Yasuyuki Kozakai <yasuyuki.kozakai@toshiba.co.jp> Signed-off-by: Patrick McHardy <kaber@trash.net> Signed-off-by: David S. Miller <davem@davemloft.net>
- Loading branch information
Yasuyuki Kozakai
authored and
David S. Miller
committed
Apr 1, 2006
1 parent
dc5ab2f
commit a89ecb6
Showing
12 changed files
with
372 additions
and
381 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,30 @@ | ||
#ifndef _XT_MULTIPORT_H | ||
#define _XT_MULTIPORT_H | ||
|
||
enum xt_multiport_flags | ||
{ | ||
XT_MULTIPORT_SOURCE, | ||
XT_MULTIPORT_DESTINATION, | ||
XT_MULTIPORT_EITHER | ||
}; | ||
|
||
#define XT_MULTI_PORTS 15 | ||
|
||
/* Must fit inside union xt_matchinfo: 16 bytes */ | ||
struct xt_multiport | ||
{ | ||
u_int8_t flags; /* Type of comparison */ | ||
u_int8_t count; /* Number of ports */ | ||
u_int16_t ports[XT_MULTI_PORTS]; /* Ports */ | ||
}; | ||
|
||
struct xt_multiport_v1 | ||
{ | ||
u_int8_t flags; /* Type of comparison */ | ||
u_int8_t count; /* Number of ports */ | ||
u_int16_t ports[XT_MULTI_PORTS]; /* Ports */ | ||
u_int8_t pflags[XT_MULTI_PORTS]; /* Port flags */ | ||
u_int8_t invert; /* Invert flag */ | ||
}; | ||
|
||
#endif /*_XT_MULTIPORT_H*/ |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,30 +1,15 @@ | ||
#ifndef _IPT_MULTIPORT_H | ||
#define _IPT_MULTIPORT_H | ||
#include <linux/netfilter_ipv4/ip_tables.h> | ||
|
||
enum ipt_multiport_flags | ||
{ | ||
IPT_MULTIPORT_SOURCE, | ||
IPT_MULTIPORT_DESTINATION, | ||
IPT_MULTIPORT_EITHER | ||
}; | ||
#include <linux/netfilter/xt_multiport.h> | ||
|
||
#define IPT_MULTI_PORTS 15 | ||
#define IPT_MULTIPORT_SOURCE XT_MULTIPORT_SOURCE | ||
#define IPT_MULTIPORT_DESTINATION XT_MULTIPORT_DESTINATION | ||
#define IPT_MULTIPORT_EITHER XT_MULTIPORT_EITHER | ||
|
||
/* Must fit inside union ipt_matchinfo: 16 bytes */ | ||
struct ipt_multiport | ||
{ | ||
u_int8_t flags; /* Type of comparison */ | ||
u_int8_t count; /* Number of ports */ | ||
u_int16_t ports[IPT_MULTI_PORTS]; /* Ports */ | ||
}; | ||
#define IPT_MULTI_PORTS XT_MULTI_PORTS | ||
|
||
#define ipt_multiport xt_multiport | ||
#define ipt_multiport_v1 xt_multiport_v1 | ||
|
||
struct ipt_multiport_v1 | ||
{ | ||
u_int8_t flags; /* Type of comparison */ | ||
u_int8_t count; /* Number of ports */ | ||
u_int16_t ports[IPT_MULTI_PORTS]; /* Ports */ | ||
u_int8_t pflags[IPT_MULTI_PORTS]; /* Port flags */ | ||
u_int8_t invert; /* Invert flag */ | ||
}; | ||
#endif /*_IPT_MULTIPORT_H*/ |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,21 +1,14 @@ | ||
#ifndef _IP6T_MULTIPORT_H | ||
#define _IP6T_MULTIPORT_H | ||
#include <linux/netfilter_ipv6/ip6_tables.h> | ||
|
||
enum ip6t_multiport_flags | ||
{ | ||
IP6T_MULTIPORT_SOURCE, | ||
IP6T_MULTIPORT_DESTINATION, | ||
IP6T_MULTIPORT_EITHER | ||
}; | ||
#include <linux/netfilter/xt_multiport.h> | ||
|
||
#define IP6T_MULTI_PORTS 15 | ||
#define IP6T_MULTIPORT_SOURCE XT_MULTIPORT_SOURCE | ||
#define IP6T_MULTIPORT_DESTINATION XT_MULTIPORT_DESTINATION | ||
#define IP6T_MULTIPORT_EITHER XT_MULTIPORT_EITHER | ||
|
||
/* Must fit inside union ip6t_matchinfo: 16 bytes */ | ||
struct ip6t_multiport | ||
{ | ||
u_int8_t flags; /* Type of comparison */ | ||
u_int8_t count; /* Number of ports */ | ||
u_int16_t ports[IP6T_MULTI_PORTS]; /* Ports */ | ||
}; | ||
#endif /*_IPT_MULTIPORT_H*/ | ||
#define IP6T_MULTI_PORTS XT_MULTI_PORTS | ||
|
||
#define ip6t_multiport xt_multiport | ||
|
||
#endif /*_IP6T_MULTIPORT_H*/ |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file was deleted.
Oops, something went wrong.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Oops, something went wrong.