if_gre.c (155440) | if_gre.c (158416) |
---|---|
1/* $NetBSD: if_gre.c,v 1.49 2003/12/11 00:22:29 itojun Exp $ */ | 1/* $NetBSD: if_gre.c,v 1.49 2003/12/11 00:22:29 itojun Exp $ */ |
2/* $FreeBSD: head/sys/net/if_gre.c 155440 2006-02-07 20:09:02Z qingli $ */ | 2/* $FreeBSD: head/sys/net/if_gre.c 158416 2006-05-11 00:53:43Z hsu $ */ |
3 4/*- 5 * Copyright (c) 1998 The NetBSD Foundation, Inc. 6 * All rights reserved. 7 * 8 * This code is derived from software contributed to The NetBSD Foundation 9 * by Heiko W.Rupp <hwr@pilhuhn.de> 10 * --- 278 unchanged lines hidden (view full) --- 289 int msiz; 290 291 ip = mtod(m, struct ip *); 292 293 /* 294 * RFC2004 specifies that fragmented diagrams shouldn't 295 * be encapsulated. 296 */ | 3 4/*- 5 * Copyright (c) 1998 The NetBSD Foundation, Inc. 6 * All rights reserved. 7 * 8 * This code is derived from software contributed to The NetBSD Foundation 9 * by Heiko W.Rupp <hwr@pilhuhn.de> 10 * --- 278 unchanged lines hidden (view full) --- 289 int msiz; 290 291 ip = mtod(m, struct ip *); 292 293 /* 294 * RFC2004 specifies that fragmented diagrams shouldn't 295 * be encapsulated. 296 */ |
297 if ((ip->ip_off & IP_MF) != 0) { | 297 if (ip->ip_off & (IP_MF | IP_OFFMASK)) { |
298 _IF_DROP(&ifp->if_snd); 299 m_freem(m); 300 error = EINVAL; /* is there better errno? */ 301 goto end; 302 } 303 memset(&mob_h, 0, MOB_H_SIZ_L); 304 mob_h.proto = (ip->ip_p) << 8; 305 mob_h.odst = ip->ip_dst.s_addr; --- 502 unchanged lines hidden --- | 298 _IF_DROP(&ifp->if_snd); 299 m_freem(m); 300 error = EINVAL; /* is there better errno? */ 301 goto end; 302 } 303 memset(&mob_h, 0, MOB_H_SIZ_L); 304 mob_h.proto = (ip->ip_p) << 8; 305 mob_h.odst = ip->ip_dst.s_addr; --- 502 unchanged lines hidden --- |