svn commit: r226609 - head/sys/contrib/pf/net
Gleb Smirnoff
glebius at FreeBSD.org
Fri Oct 21 11:11:19 UTC 2011
Author: glebius
Date: Fri Oct 21 11:11:18 2011
New Revision: 226609
URL: http://svn.freebsd.org/changeset/base/226609
Log:
In FreeBSD ip_output() expects ip_len and ip_off in host byte order
PR: kern/159029
Modified:
head/sys/contrib/pf/net/if_pfsync.c
Modified: head/sys/contrib/pf/net/if_pfsync.c
==============================================================================
--- head/sys/contrib/pf/net/if_pfsync.c Fri Oct 21 11:08:25 2011 (r226608)
+++ head/sys/contrib/pf/net/if_pfsync.c Fri Oct 21 11:11:18 2011 (r226609)
@@ -1959,7 +1959,11 @@ pfsyncioctl(struct ifnet *ifp, u_long cm
ip->ip_hl = sizeof(sc->sc_template) >> 2;
ip->ip_tos = IPTOS_LOWDELAY;
/* len and id are set later */
+#ifdef __FreeBSD__
+ ip->ip_off = IP_DF;
+#else
ip->ip_off = htons(IP_DF);
+#endif
ip->ip_ttl = PFSYNC_DFLTTL;
ip->ip_p = IPPROTO_PFSYNC;
ip->ip_src.s_addr = INADDR_ANY;
@@ -2211,7 +2215,11 @@ pfsync_sendout(void)
bcopy(&sc->sc_template, ip, sizeof(*ip));
offset = sizeof(*ip);
+#ifdef __FreeBSD__
+ ip->ip_len = m->m_pkthdr.len;
+#else
ip->ip_len = htons(m->m_pkthdr.len);
+#endif
ip->ip_id = htons(ip_randomid());
/* build the pfsync header */
More information about the svn-src-head
mailing list