Skip site navigation (1)Skip section navigation (2)
Date:      Fri, 21 Oct 2011 11:11:18 +0000 (UTC)
From:      Gleb Smirnoff <glebius@FreeBSD.org>
To:        src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org
Subject:   svn commit: r226609 - head/sys/contrib/pf/net
Message-ID:  <201110211111.p9LBBInd021796@svn.freebsd.org>

next in thread | raw e-mail | index | archive | help
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 */



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201110211111.p9LBBInd021796>