[BACK]Return to ip_input.c CVS log [TXT][DIR] Up to [cvs.NetBSD.org] / src / sys / netinet

Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files.

Diff for /src/sys/netinet/ip_input.c between version 1.82.2.2.4.1 and 1.91

version 1.82.2.2.4.1, 1999/06/28 06:37:00 version 1.91, 1999/07/09 22:57:18
Line 1 
Line 1 
 /*      $NetBSD$        */  /*      $NetBSD$        */
   
   /*
    * Copyright (C) 1995, 1996, 1997, and 1998 WIDE Project.
    * All rights reserved.
    *
    * Redistribution and use in source and binary forms, with or without
    * modification, are permitted provided that the following conditions
    * are met:
    * 1. Redistributions of source code must retain the above copyright
    *    notice, this list of conditions and the following disclaimer.
    * 2. Redistributions in binary form must reproduce the above copyright
    *    notice, this list of conditions and the following disclaimer in the
    *    documentation and/or other materials provided with the distribution.
    * 3. Neither the name of the project nor the names of its contributors
    *    may be used to endorse or promote products derived from this software
    *    without specific prior written permission.
    *
    * THIS SOFTWARE IS PROVIDED BY THE PROJECT AND CONTRIBUTORS ``AS IS'' AND
    * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
    * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
    * ARE DISCLAIMED.  IN NO EVENT SHALL THE PROJECT OR CONTRIBUTORS BE LIABLE
    * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
    * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
    * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
    * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
    * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
    * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
    * SUCH DAMAGE.
    */
   
 /*-  /*-
  * Copyright (c) 1998 The NetBSD Foundation, Inc.   * Copyright (c) 1998 The NetBSD Foundation, Inc.
  * All rights reserved.   * All rights reserved.
Line 38 
Line 67 
  */   */
   
 /*  /*
  * Copyright (C) 1995, 1996, 1997, and 1998 WIDE Project.  
  * All rights reserved.  
  *  
  * Redistribution and use in source and binary forms, with or without  
  * modification, are permitted provided that the following conditions  
  * are met:  
  * 1. Redistributions of source code must retain the above copyright  
  *    notice, this list of conditions and the following disclaimer.  
  * 2. Redistributions in binary form must reproduce the above copyright  
  *    notice, this list of conditions and the following disclaimer in the  
  *    documentation and/or other materials provided with the distribution.  
  * 3. Neither the name of the project nor the names of its contributors  
  *    may be used to endorse or promote products derived from this software  
  *    without specific prior written permission.  
  *  
  * THIS SOFTWARE IS PROVIDED BY THE PROJECT AND CONTRIBUTORS ``AS IS'' AND  
  * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE  
  * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE  
  * ARE DISCLAIMED.  IN NO EVENT SHALL THE PROJECT OR CONTRIBUTORS BE LIABLE  
  * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL  
  * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS  
  * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)  
  * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT  
  * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY  
  * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF  
  * SUCH DAMAGE.  
  */  
   
 /*  
  * Copyright (c) 1982, 1986, 1988, 1993   * Copyright (c) 1982, 1986, 1988, 1993
  *      The Regents of the University of California.  All rights reserved.   *      The Regents of the University of California.  All rights reserved.
  *   *
Line 103 
Line 103 
   
 #include "opt_gateway.h"  #include "opt_gateway.h"
 #include "opt_pfil_hooks.h"  #include "opt_pfil_hooks.h"
   #include "opt_ipsec.h"
 #include "opt_mrouting.h"  #include "opt_mrouting.h"
   
 #include <sys/param.h>  #include <sys/param.h>
Line 141 
Line 142 
 #ifdef IPSEC  #ifdef IPSEC
 #include <netinet6/ipsec.h>  #include <netinet6/ipsec.h>
 #include <netinet6/ah.h>  #include <netinet6/ah.h>
   #ifdef IPSEC_ESP
 #include <netinet6/esp.h>  #include <netinet6/esp.h>
   #endif
 #include <netkey/key.h>  #include <netkey/key.h>
 #include <netkey/key_debug.h>  #include <netkey/key_debug.h>
 #endif  #endif
Line 398  ip_input(struct mbuf *m)
Line 401  ip_input(struct mbuf *m)
                 }                  }
                 ip = mtod(m, struct ip *);                  ip = mtod(m, struct ip *);
         }          }
           /*
            * we drop packets that have a multicast address as source
            * as wanted by rfc 1112
            */
           if (IN_MULTICAST(ip->ip_src.s_addr)) {
                   goto bad;
           }
   
         if (in_cksum(m, hlen) != 0) {          if (in_cksum(m, hlen) != 0) {
                 ipstat.ips_badsum++;                  ipstat.ips_badsum++;
                 goto bad;                  goto bad;
Line 413  ip_input(struct mbuf *m)
Line 424  ip_input(struct mbuf *m)
         /*          /*
          * Check for additional length bogosity           * Check for additional length bogosity
          */           */
         if (len < hlen)          if (len < hlen) {
         {  
                 ipstat.ips_badlen++;                  ipstat.ips_badlen++;
                 goto bad;                  goto bad;
         }          }
Line 1537  ip_sysctl(name, namelen, oldp, oldlenp, 
Line 1547  ip_sysctl(name, namelen, oldp, oldlenp, 
         void *newp;          void *newp;
         size_t newlen;          size_t newlen;
 {  {
         extern int subnetsarelocal;          extern int subnetsarelocal, hostzeroisbroadcast;
   
         int error, old;          int error, old;
   
Line 1629  ip_sysctl(name, namelen, oldp, oldlenp, 
Line 1639  ip_sysctl(name, namelen, oldp, oldlenp, 
                 return (error);                  return (error);
             }              }
 #endif  #endif
           case IPCTL_HOSTZEROBROADCAST:
                   return (sysctl_int(oldp, oldlenp, newp, newlen,
                       &hostzeroisbroadcast));
 #if NGIF > 0  #if NGIF > 0
         case IPCTL_GIF_TTL:          case IPCTL_GIF_TTL:
                 return(sysctl_int(oldp, oldlenp, newp, newlen,                  return(sysctl_int(oldp, oldlenp, newp, newlen,
                                   &gif_ttl));                                    &ip_gif_ttl));
 #endif  #endif
   
         default:          default:
                 return (EOPNOTSUPP);                  return (EOPNOTSUPP);
         }          }

Legend:
Removed from v.1.82.2.2.4.1  
changed lines
  Added in v.1.91

CVSweb <webmaster@jp.NetBSD.org>