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);
_______________________________________________
svn-src-head@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/svn-src-head
To unsubscribe, send any mail to "svn-src-head-unsubscr...@freebsd.org"

Reply via email to