diff options
author | Patrick McHardy <kaber@trash.net> | 2006-02-04 11:17:26 +0100 |
---|---|---|
committer | David S. Miller <davem@sunset.davemloft.net> | 2006-02-05 08:51:26 +0100 |
commit | e55f1bc5dcb60a47764f6eabd1501d2cb98fb2c4 (patch) | |
tree | e1737c03ad3d4843601d2eeef99f46d9064abfe0 /net | |
parent | [NETFILTER]: Fix possible overflow in netfilters do_replace() (diff) | |
download | linux-e55f1bc5dcb60a47764f6eabd1501d2cb98fb2c4.tar.xz linux-e55f1bc5dcb60a47764f6eabd1501d2cb98fb2c4.zip |
[NETFILTER]: Check policy length in policy match strict mode
Signed-off-by: Patrick McHardy <kaber@trash.net>
Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'net')
-rw-r--r-- | net/ipv4/netfilter/ipt_policy.c | 2 | ||||
-rw-r--r-- | net/ipv6/netfilter/ip6t_policy.c | 2 |
2 files changed, 2 insertions, 2 deletions
diff --git a/net/ipv4/netfilter/ipt_policy.c b/net/ipv4/netfilter/ipt_policy.c index 18ca8258a1c5..a48949a3a750 100644 --- a/net/ipv4/netfilter/ipt_policy.c +++ b/net/ipv4/netfilter/ipt_policy.c @@ -89,7 +89,7 @@ match_policy_out(const struct sk_buff *skb, const struct ipt_policy_info *info) return 0; } - return strict ? 1 : 0; + return strict ? i == info->len : 0; } static int match(const struct sk_buff *skb, diff --git a/net/ipv6/netfilter/ip6t_policy.c b/net/ipv6/netfilter/ip6t_policy.c index afe1cc4c18a5..9f38cd0a6489 100644 --- a/net/ipv6/netfilter/ip6t_policy.c +++ b/net/ipv6/netfilter/ip6t_policy.c @@ -91,7 +91,7 @@ match_policy_out(const struct sk_buff *skb, const struct ip6t_policy_info *info) return 0; } - return strict ? 1 : 0; + return strict ? i == info->len : 0; } static int match(const struct sk_buff *skb, |