the len and offset have been put in net order, but the len is then
assumed to be in host order:

in sys/netinet:

--- ip_mroute.c.orig    Thu Jul 19 01:37:26 2001
+++ ip_mroute.c Thu Dec  6 12:26:25 2001
@@ -1595,6 +1595,7 @@
      */
     ip = (struct ip *)((caddr_t)ip_copy + sizeof(multicast_encap_iphdr));
     --ip->ip_ttl;
+    len = ip->ip_len;
     HTONS(ip->ip_len);
     HTONS(ip->ip_off);
     ip->ip_sum = 0;
@@ -1605,7 +1606,7 @@
     if (vifp->v_rate_limit == 0)
        tbf_send_packet(vifp, mb_copy);
     else
-       tbf_control(vifp, mb_copy, ip, ip_copy->ip_len);
+       tbf_control(vifp, mb_copy, ip, len);
 }
 
 /*

To Unsubscribe: send mail to [EMAIL PROTECTED]
with "unsubscribe freebsd-hackers" in the body of the message

Reply via email to