svn commit: r223358 - head/sys/netinet/ipfw
Andrey V. Elsukov
ae at FreeBSD.org
Tue Jun 21 06:06:47 UTC 2011
Author: ae
Date: Tue Jun 21 06:06:47 2011
New Revision: 223358
URL: http://svn.freebsd.org/changeset/base/223358
Log:
Do not use SET_HOST_IPLEN() macro for IPv6 packets.
PR: kern/157239
MFC after: 2 weeks
Modified:
head/sys/netinet/ipfw/ip_dn_io.c
head/sys/netinet/ipfw/ip_fw_pfil.c
Modified: head/sys/netinet/ipfw/ip_dn_io.c
==============================================================================
--- head/sys/netinet/ipfw/ip_dn_io.c Tue Jun 21 05:27:49 2011 (r223357)
+++ head/sys/netinet/ipfw/ip_dn_io.c Tue Jun 21 06:06:47 2011 (r223358)
@@ -668,7 +668,6 @@ dummynet_send(struct mbuf *m)
break;
case DIR_OUT | PROTO_IPV6:
- SET_HOST_IPLEN(mtod(m, struct ip *));
ip6_output(m, NULL, NULL, IPV6_FORWARDING, NULL, NULL, NULL);
break;
#endif
Modified: head/sys/netinet/ipfw/ip_fw_pfil.c
==============================================================================
--- head/sys/netinet/ipfw/ip_fw_pfil.c Tue Jun 21 05:27:49 2011 (r223357)
+++ head/sys/netinet/ipfw/ip_fw_pfil.c Tue Jun 21 06:06:47 2011 (r223358)
@@ -127,8 +127,9 @@ again:
args.rule = *((struct ipfw_rule_ref *)(tag+1));
m_tag_delete(*m0, tag);
if (args.rule.info & IPFW_ONEPASS) {
- SET_HOST_IPLEN(mtod(*m0, struct ip *));
- return 0;
+ if (mtod(*m0, struct ip *)->ip_v == 4)
+ SET_HOST_IPLEN(mtod(*m0, struct ip *));
+ return (0);
}
}
More information about the svn-src-head
mailing list