Date: Tue, 12 Jun 2012 12:44:17 +0000 (UTC) From: Randall Stewart <rrs@FreeBSD.org> To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r236955 - head/sys/net Message-ID: <201206121244.q5CCiH4i053940@svn.freebsd.org>
next in thread | raw e-mail | index | archive | help
Author: rrs Date: Tue Jun 12 12:44:17 2012 New Revision: 236955 URL: http://svn.freebsd.org/changeset/base/236955 Log: Note to self. Have morning coffee *before* committing things. There is no mac_addr in the mbuf for BSD.. cheat like we are supposed to and use the csum field since our friend the gif tunnel itself will never use offload. Modified: head/sys/net/if_gif.c Modified: head/sys/net/if_gif.c ============================================================================== --- head/sys/net/if_gif.c Tue Jun 12 12:40:15 2012 (r236954) +++ head/sys/net/if_gif.c Tue Jun 12 12:44:17 2012 (r236955) @@ -388,7 +388,8 @@ keep_going: /* Now pull back the af in packet that * was saved in the address location. */ - bcopy(m->m_pkthdr.src_mac_addr, &af, sizeof(af)); + af = m->m_pkthdr.csum_data; + if (ifp->if_bridge) af = AF_LINK; @@ -503,10 +504,11 @@ gif_output(ifp, m, dst, ro) dst->sa_family = af; } af = dst->sa_family; - /* Now save the af in the inbound pkt mac - * address location. + /* Now save the af in the inbound pkt csum + * data, this is a cheat since really + * gif tunnels don't do offload. */ - bcopy(&af, m->m_pkthdr.src_mac_addr, sizeof(af)); + m->m_pkthdr.csum_data = af; if (!(ifp->if_flags & IFF_UP) || sc->gif_psrc == NULL || sc->gif_pdst == NULL) { m_freem(m);
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201206121244.q5CCiH4i053940>