[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.196 and 1.200

version 1.196, 2004/01/15 05:13:17 version 1.200, 2004/04/25 16:42:42
Line 219  int ip_checkinterface = 0;
Line 219  int ip_checkinterface = 0;
   
 struct rttimer_queue *ip_mtudisc_timeout_q = NULL;  struct rttimer_queue *ip_mtudisc_timeout_q = NULL;
   
 extern  struct domain inetdomain;  
 int     ipqmaxlen = IFQ_MAXLEN;  int     ipqmaxlen = IFQ_MAXLEN;
 u_long  in_ifaddrhash;                          /* size of hash table - 1 */  u_long  in_ifaddrhash;                          /* size of hash table - 1 */
 int     in_ifaddrentries;                       /* total number of addrs */  int     in_ifaddrentries;                       /* total number of addrs */
Line 333  do {         \
Line 332  do {         \
   
 #define IPQ_UNLOCK()            ipq_unlock()  #define IPQ_UNLOCK()            ipq_unlock()
   
 struct pool inmulti_pool;  POOL_INIT(inmulti_pool, sizeof(struct in_multi), 0, 0, 0, "inmltpl", NULL);
 struct pool ipqent_pool;  POOL_INIT(ipqent_pool, sizeof(struct ipqent), 0, 0, 0, "ipqepl", NULL);
   
 #ifdef INET_CSUM_COUNTERS  #ifdef INET_CSUM_COUNTERS
 #include <sys/device.h>  #include <sys/device.h>
Line 393  ip_nmbclusters_changed(void)
Line 392  ip_nmbclusters_changed(void)
 void  void
 ip_init()  ip_init()
 {  {
         struct protosw *pr;          const struct protosw *pr;
         int i;          int i;
   
         pool_init(&inmulti_pool, sizeof(struct in_multi), 0, 0, 0, "inmltpl",  
             NULL);  
         pool_init(&ipqent_pool, sizeof(struct ipqent), 0, 0, 0, "ipqepl",  
             NULL);  
   
         pr = pffindproto(PF_INET, IPPROTO_RAW, SOCK_RAW);          pr = pffindproto(PF_INET, IPPROTO_RAW, SOCK_RAW);
         if (pr == 0)          if (pr == 0)
                 panic("ip_init");                  panic("ip_init");
Line 1288  static u_int fragttl_histo[(IPFRAGTTL+1)
Line 1282  static u_int fragttl_histo[(IPFRAGTTL+1)
 static u_int  static u_int
 ip_reass_ttl_decr(u_int ticks)  ip_reass_ttl_decr(u_int ticks)
 {  {
         u_int i, nfrags, median;          u_int nfrags, median, dropfraction, keepfraction;
         struct ipq *fp, *nfp;          struct ipq *fp, *nfp;
         u_int dropfraction, keepfraction;          int i;
   
         nfrags = 0;          nfrags = 0;
         memset(fragttl_histo, 0, sizeof fragttl_histo);          memset(fragttl_histo, 0, sizeof fragttl_histo);
Line 2170  SYSCTL_SETUP(sysctl_net_inet_ip_setup, "
Line 2164  SYSCTL_SETUP(sysctl_net_inet_ip_setup, "
 {  {
         extern int subnetsarelocal, hostzeroisbroadcast;          extern int subnetsarelocal, hostzeroisbroadcast;
   
         sysctl_createv(SYSCTL_PERMANENT,          sysctl_createv(clog, 0, NULL, NULL,
                          CTLFLAG_PERMANENT,
                        CTLTYPE_NODE, "net", NULL,                         CTLTYPE_NODE, "net", NULL,
                        NULL, 0, NULL, 0,                         NULL, 0, NULL, 0,
                        CTL_NET, CTL_EOL);                         CTL_NET, CTL_EOL);
         sysctl_createv(SYSCTL_PERMANENT,          sysctl_createv(clog, 0, NULL, NULL,
                          CTLFLAG_PERMANENT,
                        CTLTYPE_NODE, "inet", NULL,                         CTLTYPE_NODE, "inet", NULL,
                        NULL, 0, NULL, 0,                         NULL, 0, NULL, 0,
                        CTL_NET, PF_INET, CTL_EOL);                         CTL_NET, PF_INET, CTL_EOL);
         sysctl_createv(SYSCTL_PERMANENT,          sysctl_createv(clog, 0, NULL, NULL,
                          CTLFLAG_PERMANENT,
                        CTLTYPE_NODE, "ip", NULL,                         CTLTYPE_NODE, "ip", NULL,
                        NULL, 0, NULL, 0,                         NULL, 0, NULL, 0,
                        CTL_NET, PF_INET, IPPROTO_IP, CTL_EOL);                         CTL_NET, PF_INET, IPPROTO_IP, CTL_EOL);
   
         sysctl_createv(SYSCTL_PERMANENT|SYSCTL_READWRITE,          sysctl_createv(clog, 0, NULL, NULL,
                          CTLFLAG_PERMANENT|CTLFLAG_READWRITE,
                        CTLTYPE_INT, "forwarding", NULL,                         CTLTYPE_INT, "forwarding", NULL,
                        NULL, 0, &ipforwarding, 0,                         NULL, 0, &ipforwarding, 0,
                        CTL_NET, PF_INET, IPPROTO_IP,                         CTL_NET, PF_INET, IPPROTO_IP,
                        IPCTL_FORWARDING, CTL_EOL);                         IPCTL_FORWARDING, CTL_EOL);
         sysctl_createv(SYSCTL_PERMANENT|SYSCTL_READWRITE,          sysctl_createv(clog, 0, NULL, NULL,
                          CTLFLAG_PERMANENT|CTLFLAG_READWRITE,
                        CTLTYPE_INT, "redirect", NULL,                         CTLTYPE_INT, "redirect", NULL,
                        NULL, 0, &ipsendredirects, 0,                         NULL, 0, &ipsendredirects, 0,
                        CTL_NET, PF_INET, IPPROTO_IP,                         CTL_NET, PF_INET, IPPROTO_IP,
                        IPCTL_SENDREDIRECTS, CTL_EOL);                         IPCTL_SENDREDIRECTS, CTL_EOL);
         sysctl_createv(SYSCTL_PERMANENT|SYSCTL_READWRITE,          sysctl_createv(clog, 0, NULL, NULL,
                          CTLFLAG_PERMANENT|CTLFLAG_READWRITE,
                        CTLTYPE_INT, "ttl", NULL,                         CTLTYPE_INT, "ttl", NULL,
                        NULL, 0, &ip_defttl, 0,                         NULL, 0, &ip_defttl, 0,
                        CTL_NET, PF_INET, IPPROTO_IP,                         CTL_NET, PF_INET, IPPROTO_IP,
                        IPCTL_DEFTTL, CTL_EOL);                         IPCTL_DEFTTL, CTL_EOL);
 #ifdef IPCTL_DEFMTU  #ifdef IPCTL_DEFMTU
         sysctl_createv(SYSCTL_PERMANENT /* |SYSCTL_READWRITE? */,          sysctl_createv(clog, 0, NULL, NULL,
                          CTLFLAG_PERMANENT /* |CTLFLAG_READWRITE? */,
                        CTLTYPE_INT, "mtu", NULL,                         CTLTYPE_INT, "mtu", NULL,
                        NULL, 0, &ip_mtu, 0,                         NULL, 0, &ip_mtu, 0,
                        CTL_NET, PF_INET, IPPROTO_IP,                         CTL_NET, PF_INET, IPPROTO_IP,
                        IPCTL_DEFMTU, CTL_EOL);                         IPCTL_DEFMTU, CTL_EOL);
 #endif /* IPCTL_DEFMTU */  #endif /* IPCTL_DEFMTU */
         sysctl_createv(SYSCTL_PERMANENT|SYSCTL_READONLY1,          sysctl_createv(clog, 0, NULL, NULL,
                          CTLFLAG_PERMANENT|CTLFLAG_READONLY1,
                        CTLTYPE_INT, "forwsrcrt", NULL,                         CTLTYPE_INT, "forwsrcrt", NULL,
                        NULL, 0, &ip_forwsrcrt, 0,                         NULL, 0, &ip_forwsrcrt, 0,
                        CTL_NET, PF_INET, IPPROTO_IP,                         CTL_NET, PF_INET, IPPROTO_IP,
                        IPCTL_FORWSRCRT, CTL_EOL);                         IPCTL_FORWSRCRT, CTL_EOL);
         sysctl_createv(SYSCTL_PERMANENT|SYSCTL_READWRITE,          sysctl_createv(clog, 0, NULL, NULL,
                          CTLFLAG_PERMANENT|CTLFLAG_READWRITE,
                        CTLTYPE_INT, "directed-broadcast", NULL,                         CTLTYPE_INT, "directed-broadcast", NULL,
                        NULL, 0, &ip_directedbcast, 0,                         NULL, 0, &ip_directedbcast, 0,
                        CTL_NET, PF_INET, IPPROTO_IP,                         CTL_NET, PF_INET, IPPROTO_IP,
                        IPCTL_DIRECTEDBCAST, CTL_EOL);                         IPCTL_DIRECTEDBCAST, CTL_EOL);
         sysctl_createv(SYSCTL_PERMANENT|SYSCTL_READWRITE,          sysctl_createv(clog, 0, NULL, NULL,
                          CTLFLAG_PERMANENT|CTLFLAG_READWRITE,
                        CTLTYPE_INT, "allowsrcrt", NULL,                         CTLTYPE_INT, "allowsrcrt", NULL,
                        NULL, 0, &ip_allowsrcrt, 0,                         NULL, 0, &ip_allowsrcrt, 0,
                        CTL_NET, PF_INET, IPPROTO_IP,                         CTL_NET, PF_INET, IPPROTO_IP,
                        IPCTL_ALLOWSRCRT, CTL_EOL);                         IPCTL_ALLOWSRCRT, CTL_EOL);
         sysctl_createv(SYSCTL_PERMANENT|SYSCTL_READWRITE,          sysctl_createv(clog, 0, NULL, NULL,
                          CTLFLAG_PERMANENT|CTLFLAG_READWRITE,
                        CTLTYPE_INT, "subnetsarelocal", NULL,                         CTLTYPE_INT, "subnetsarelocal", NULL,
                        NULL, 0, &subnetsarelocal, 0,                         NULL, 0, &subnetsarelocal, 0,
                        CTL_NET, PF_INET, IPPROTO_IP,                         CTL_NET, PF_INET, IPPROTO_IP,
                        IPCTL_SUBNETSARELOCAL, CTL_EOL);                         IPCTL_SUBNETSARELOCAL, CTL_EOL);
         sysctl_createv(SYSCTL_PERMANENT|SYSCTL_READWRITE,          sysctl_createv(clog, 0, NULL, NULL,
                          CTLFLAG_PERMANENT|CTLFLAG_READWRITE,
                        CTLTYPE_INT, "mtudisc", NULL,                         CTLTYPE_INT, "mtudisc", NULL,
                        NULL, 0, &ip_mtudisc, 0,                         NULL, 0, &ip_mtudisc, 0,
                        CTL_NET, PF_INET, IPPROTO_IP,                         CTL_NET, PF_INET, IPPROTO_IP,
                        IPCTL_MTUDISC, CTL_EOL);                         IPCTL_MTUDISC, CTL_EOL);
         sysctl_createv(SYSCTL_PERMANENT|SYSCTL_READWRITE,          sysctl_createv(clog, 0, NULL, NULL,
                          CTLFLAG_PERMANENT|CTLFLAG_READWRITE,
                        CTLTYPE_INT, "anonportmin", NULL,                         CTLTYPE_INT, "anonportmin", NULL,
                        sysctl_net_inet_ip_ports, 0, &anonportmin, 0,                         sysctl_net_inet_ip_ports, 0, &anonportmin, 0,
                        CTL_NET, PF_INET, IPPROTO_IP,                         CTL_NET, PF_INET, IPPROTO_IP,
                        IPCTL_ANONPORTMIN, CTL_EOL);                         IPCTL_ANONPORTMIN, CTL_EOL);
         sysctl_createv(SYSCTL_PERMANENT|SYSCTL_READWRITE,          sysctl_createv(clog, 0, NULL, NULL,
                          CTLFLAG_PERMANENT|CTLFLAG_READWRITE,
                        CTLTYPE_INT, "anonportmax", NULL,                         CTLTYPE_INT, "anonportmax", NULL,
                        sysctl_net_inet_ip_ports, 0, &anonportmax, 0,                         sysctl_net_inet_ip_ports, 0, &anonportmax, 0,
                        CTL_NET, PF_INET, IPPROTO_IP,                         CTL_NET, PF_INET, IPPROTO_IP,
                        IPCTL_ANONPORTMAX, CTL_EOL);                         IPCTL_ANONPORTMAX, CTL_EOL);
         sysctl_createv(SYSCTL_PERMANENT|SYSCTL_READWRITE,          sysctl_createv(clog, 0, NULL, NULL,
                          CTLFLAG_PERMANENT|CTLFLAG_READWRITE,
                        CTLTYPE_INT, "mtudisctimeout", NULL,                         CTLTYPE_INT, "mtudisctimeout", NULL,
                        sysctl_net_inet_ip_pmtudto, 0, &ip_mtudisc_timeout, 0,                         sysctl_net_inet_ip_pmtudto, 0, &ip_mtudisc_timeout, 0,
                        CTL_NET, PF_INET, IPPROTO_IP,                         CTL_NET, PF_INET, IPPROTO_IP,
                        IPCTL_MTUDISCTIMEOUT, CTL_EOL);                         IPCTL_MTUDISCTIMEOUT, CTL_EOL);
 #ifdef GATEWAY  #ifdef GATEWAY
         sysctl_createv(SYSCTL_PERMANENT|SYSCTL_READWRITE,          sysctl_createv(clog, 0, NULL, NULL,
                          CTLFLAG_PERMANENT|CTLFLAG_READWRITE,
                        CTLTYPE_INT, "maxflows", NULL,                         CTLTYPE_INT, "maxflows", NULL,
                        sysctl_net_inet_ip_maxflows, 0, &ip_maxflows, 0,                         sysctl_net_inet_ip_maxflows, 0, &ip_maxflows, 0,
                        CTL_NET, PF_INET, IPPROTO_IP,                         CTL_NET, PF_INET, IPPROTO_IP,
                        IPCTL_MAXFLOWS, CTL_EOL);                         IPCTL_MAXFLOWS, CTL_EOL);
 #endif /* GATEWAY */  #endif /* GATEWAY */
         sysctl_createv(SYSCTL_PERMANENT|SYSCTL_READWRITE,          sysctl_createv(clog, 0, NULL, NULL,
                          CTLFLAG_PERMANENT|CTLFLAG_READWRITE,
                        CTLTYPE_INT, "hostzerobroadcast", NULL,                         CTLTYPE_INT, "hostzerobroadcast", NULL,
                        NULL, 0, &hostzeroisbroadcast, 0,                         NULL, 0, &hostzeroisbroadcast, 0,
                        CTL_NET, PF_INET, IPPROTO_IP,                         CTL_NET, PF_INET, IPPROTO_IP,
                        IPCTL_HOSTZEROBROADCAST, CTL_EOL);                         IPCTL_HOSTZEROBROADCAST, CTL_EOL);
 #if NGIF > 0  #if NGIF > 0
         sysctl_createv(SYSCTL_PERMANENT|SYSCTL_READWRITE,          sysctl_createv(clog, 0, NULL, NULL,
                          CTLFLAG_PERMANENT|CTLFLAG_READWRITE,
                        CTLTYPE_INT, "gifttl", NULL,                         CTLTYPE_INT, "gifttl", NULL,
                        NULL, 0, &ip_gif_ttl, 0,                         NULL, 0, &ip_gif_ttl, 0,
                        CTL_NET, PF_INET, IPPROTO_IP,                         CTL_NET, PF_INET, IPPROTO_IP,
                        IPCTL_GIF_TTL, CTL_EOL);                         IPCTL_GIF_TTL, CTL_EOL);
 #endif /* NGIF */  #endif /* NGIF */
 #ifndef IPNOPRIVPORTS  #ifndef IPNOPRIVPORTS
         sysctl_createv(SYSCTL_PERMANENT|SYSCTL_READWRITE,          sysctl_createv(clog, 0, NULL, NULL,
                          CTLFLAG_PERMANENT|CTLFLAG_READWRITE,
                        CTLTYPE_INT, "lowportmin", NULL,                         CTLTYPE_INT, "lowportmin", NULL,
                        sysctl_net_inet_ip_ports, 0, &lowportmin, 0,                         sysctl_net_inet_ip_ports, 0, &lowportmin, 0,
                        CTL_NET, PF_INET, IPPROTO_IP,                         CTL_NET, PF_INET, IPPROTO_IP,
                        IPCTL_LOWPORTMIN, CTL_EOL);                         IPCTL_LOWPORTMIN, CTL_EOL);
         sysctl_createv(SYSCTL_PERMANENT|SYSCTL_READWRITE,          sysctl_createv(clog, 0, NULL, NULL,
                          CTLFLAG_PERMANENT|CTLFLAG_READWRITE,
                        CTLTYPE_INT, "lowportmax", NULL,                         CTLTYPE_INT, "lowportmax", NULL,
                        sysctl_net_inet_ip_ports, 0, &lowportmax, 0,                         sysctl_net_inet_ip_ports, 0, &lowportmax, 0,
                        CTL_NET, PF_INET, IPPROTO_IP,                         CTL_NET, PF_INET, IPPROTO_IP,
                        IPCTL_LOWPORTMAX, CTL_EOL);                         IPCTL_LOWPORTMAX, CTL_EOL);
 #endif /* IPNOPRIVPORTS */  #endif /* IPNOPRIVPORTS */
         sysctl_createv(SYSCTL_PERMANENT|SYSCTL_READWRITE,          sysctl_createv(clog, 0, NULL, NULL,
                          CTLFLAG_PERMANENT|CTLFLAG_READWRITE,
                        CTLTYPE_INT, "maxfragpackets", NULL,                         CTLTYPE_INT, "maxfragpackets", NULL,
                        NULL, 0, &ip_maxfragpackets, 0,                         NULL, 0, &ip_maxfragpackets, 0,
                        CTL_NET, PF_INET, IPPROTO_IP,                         CTL_NET, PF_INET, IPPROTO_IP,
                        IPCTL_MAXFRAGPACKETS, CTL_EOL);                         IPCTL_MAXFRAGPACKETS, CTL_EOL);
 #if NGRE > 0  #if NGRE > 0
         sysctl_createv(SYSCTL_PERMANENT|SYSCTL_READWRITE,          sysctl_createv(clog, 0, NULL, NULL,
                          CTLFLAG_PERMANENT|CTLFLAG_READWRITE,
                        CTLTYPE_INT, "grettl", NULL,                         CTLTYPE_INT, "grettl", NULL,
                        NULL, 0, &ip_gre_ttl, 0,                         NULL, 0, &ip_gre_ttl, 0,
                        CTL_NET, PF_INET, IPPROTO_IP,                         CTL_NET, PF_INET, IPPROTO_IP,
                        IPCTL_GRE_TTL, CTL_EOL);                         IPCTL_GRE_TTL, CTL_EOL);
 #endif /* NGRE */  #endif /* NGRE */
         sysctl_createv(SYSCTL_PERMANENT|SYSCTL_READWRITE,          sysctl_createv(clog, 0, NULL, NULL,
                          CTLFLAG_PERMANENT|CTLFLAG_READWRITE,
                        CTLTYPE_INT, "checkinterface", NULL,                         CTLTYPE_INT, "checkinterface", NULL,
                        NULL, 0, &ip_checkinterface, 0,                         NULL, 0, &ip_checkinterface, 0,
                        CTL_NET, PF_INET, IPPROTO_IP,                         CTL_NET, PF_INET, IPPROTO_IP,
                        IPCTL_CHECKINTERFACE, CTL_EOL);                         IPCTL_CHECKINTERFACE, CTL_EOL);
         sysctl_createv(SYSCTL_PERMANENT|SYSCTL_READWRITE,          sysctl_createv(clog, 0, NULL, NULL,
                          CTLFLAG_PERMANENT|CTLFLAG_READWRITE,
                        CTLTYPE_INT, "random_id", NULL,                         CTLTYPE_INT, "random_id", NULL,
                        NULL, 0, &ip_do_randomid, 0,                         NULL, 0, &ip_do_randomid, 0,
                        CTL_NET, PF_INET, IPPROTO_IP,                         CTL_NET, PF_INET, IPPROTO_IP,

Legend:
Removed from v.1.196  
changed lines
  Added in v.1.200

CVSweb <webmaster@jp.NetBSD.org>