aboutsummaryrefslogtreecommitdiff
path: root/net/ipv4/ipvs/ip_vs_proto_ah.c
diff options
context:
space:
mode:
authorJulian Anastasov <ja@ssi.bg>2008-04-29 03:21:23 -0700
committerGreg Kroah-Hartman <gregkh@suse.de>2008-05-15 07:50:02 -0700
commitdbfda7d328029421c1126423646e602c553ea2a2 (patch)
treefc6ba9e6079e7c792d647208608e021dc778babc /net/ipv4/ipvs/ip_vs_proto_ah.c
parent781ce5ffe1ff6b5b288575d4d42f46cb7a25b175 (diff)
ipvs: fix oops in backup for fwmark conn templates
[ Upstream commit: 2ad17defd596ca7e8ba782d5fc6950ee0e99513c ] Fixes bug http://bugzilla.kernel.org/show_bug.cgi?id=10556 where conn templates with protocol=IPPROTO_IP can oops backup box. Result from ip_vs_proto_get() should be checked because protocol value can be invalid or unsupported in backup. But for valid message we should not fail for templates which use IPPROTO_IP. Also, add checks to validate message limits and connection state. Show state NONE for templates using IPPROTO_IP. Fix tested and confirmed by L0op8ack <l0op8ack@hotmail.com> Signed-off-by: Julian Anastasov <ja@ssi.bg> Signed-off-by: David S. Miller <davem@davemloft.net> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
Diffstat (limited to 'net/ipv4/ipvs/ip_vs_proto_ah.c')
-rw-r--r--net/ipv4/ipvs/ip_vs_proto_ah.c1
1 files changed, 1 insertions, 0 deletions
diff --git a/net/ipv4/ipvs/ip_vs_proto_ah.c b/net/ipv4/ipvs/ip_vs_proto_ah.c
index a842676e1c6..4bf835e1d86 100644
--- a/net/ipv4/ipvs/ip_vs_proto_ah.c
+++ b/net/ipv4/ipvs/ip_vs_proto_ah.c
@@ -160,6 +160,7 @@ static void ah_exit(struct ip_vs_protocol *pp)
struct ip_vs_protocol ip_vs_protocol_ah = {
.name = "AH",
.protocol = IPPROTO_AH,
+ .num_states = 1,
.dont_defrag = 1,
.init = ah_init,
.exit = ah_exit,