From ef8d563a0f51f9a51ad48df6ad54f155ebd0533e Mon Sep 17 00:00:00 2001 From: Max Laier Date: Tue, 18 Aug 2009 16:21:07 +0000 Subject: Import 4.5-002 fix --- net/pf.c | 18 +++++++++++++++++- 1 file changed, 17 insertions(+), 1 deletion(-) (limited to 'net') diff --git a/net/pf.c b/net/pf.c index 1eec998bcdc0..ce288a59b731 100644 --- a/net/pf.c +++ b/net/pf.c @@ -1,4 +1,4 @@ -/* $OpenBSD: pf.c,v 1.633 2009/02/16 00:31:25 dlg Exp $ */ +/* $OpenBSD: pf.c,v 1.634 2009/02/27 12:37:45 henning Exp $ */ /* * Copyright (c) 2001 Daniel Hartmeier @@ -5243,6 +5243,15 @@ pf_test(int dir, struct ifnet *ifp, struct mbuf **m0, break; } +#ifdef INET6 + case IPPROTO_ICMPV6: { + action = PF_DROP; + DPFPRINTF(PF_DEBUG_MISC, + ("pf: dropping IPv4 packet with ICMPv6 payload\n")); + goto done; + } +#endif + default: action = pf_test_state_other(&s, dir, kif, m, &pd); if (action == PF_PASS) { @@ -5597,6 +5606,13 @@ pf_test6(int dir, struct ifnet *ifp, struct mbuf **m0, break; } + case IPPROTO_ICMP: { + action = PF_DROP; + DPFPRINTF(PF_DEBUG_MISC, + ("pf: dropping IPv6 packet with ICMPv4 payload\n")); + goto done; + } + case IPPROTO_ICMPV6: { struct icmp6_hdr ih; -- cgit v1.2.3