[BACK]Return to udp_usrreq.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/udp_usrreq.c between version 1.167 and 1.168

version 1.167, 2008/04/15 03:57:04 version 1.168, 2008/04/15 04:43:25
Line 103  __KERNEL_RCSID(0, "$NetBSD$");
Line 103  __KERNEL_RCSID(0, "$NetBSD$");
 #include <netinet6/ip6_private.h>  #include <netinet6/ip6_private.h>
 #include <netinet6/in6_pcb.h>  #include <netinet6/in6_pcb.h>
 #include <netinet6/udp6_var.h>  #include <netinet6/udp6_var.h>
   #include <netinet6/udp6_private.h>
 #include <netinet6/scope6_var.h>  #include <netinet6/scope6_var.h>
 #endif  #endif
   
Line 464  udp6_input_checksum(struct mbuf *m, cons
Line 465  udp6_input_checksum(struct mbuf *m, cons
                 goto good;                  goto good;
         }          }
         if (uh->uh_sum == 0) {          if (uh->uh_sum == 0) {
                 udp6stat.udp6s_nosum++;                  UDP6_STATINC(UDP6_STAT_NOSUM);
                 goto bad;                  goto bad;
         }          }
   
Line 473  udp6_input_checksum(struct mbuf *m, cons
Line 474  udp6_input_checksum(struct mbuf *m, cons
             M_CSUM_TCP_UDP_BAD | M_CSUM_DATA)) {              M_CSUM_TCP_UDP_BAD | M_CSUM_DATA)) {
         case M_CSUM_UDPv6|M_CSUM_TCP_UDP_BAD:          case M_CSUM_UDPv6|M_CSUM_TCP_UDP_BAD:
                 UDP_CSUM_COUNTER_INCR(&udp6_hwcsum_bad);                  UDP_CSUM_COUNTER_INCR(&udp6_hwcsum_bad);
                 udp6stat.udp6s_badsum++;                  UDP6_STATINC(UDP6_STAT_BADSUM);
                 goto bad;                  goto bad;
   
 #if 0 /* notyet */  #if 0 /* notyet */
Line 492  udp6_input_checksum(struct mbuf *m, cons
Line 493  udp6_input_checksum(struct mbuf *m, cons
                  */                   */
                 UDP_CSUM_COUNTER_INCR(&udp6_swcsum);                  UDP_CSUM_COUNTER_INCR(&udp6_swcsum);
                 if (in6_cksum(m, IPPROTO_UDP, off, len) != 0) {                  if (in6_cksum(m, IPPROTO_UDP, off, len) != 0) {
                         udp6stat.udp6s_badsum++;                          UDP6_STATINC(UDP6_STAT_BADSUM);
                         goto bad;                          goto bad;
                 }                  }
         }          }
Line 523  udp6_input(struct mbuf **mp, int *offp, 
Line 524  udp6_input(struct mbuf **mp, int *offp, 
         }          }
 #endif  #endif
   
         udp6stat.udp6s_ipackets++;          UDP6_STATINC(UDP6_STAT_IPACKETS);
   
         /* check for jumbogram is done in ip6_input.  we can trust pkthdr.len */          /* check for jumbogram is done in ip6_input.  we can trust pkthdr.len */
         plen = m->m_pkthdr.len - off;          plen = m->m_pkthdr.len - off;
Line 542  udp6_input(struct mbuf **mp, int *offp, 
Line 543  udp6_input(struct mbuf **mp, int *offp, 
                 ulen = plen;                  ulen = plen;
   
         if (plen != ulen) {          if (plen != ulen) {
                 udp6stat.udp6s_badlen++;                  UDP6_STATINC(UDP6_STAT_BADLEN);
                 goto bad;                  goto bad;
         }          }
   
Line 580  udp6_input(struct mbuf **mp, int *offp, 
Line 581  udp6_input(struct mbuf **mp, int *offp, 
   
         if (udp6_realinput(AF_INET6, &src, &dst, m, off) == 0) {          if (udp6_realinput(AF_INET6, &src, &dst, m, off) == 0) {
                 if (m->m_flags & M_MCAST) {                  if (m->m_flags & M_MCAST) {
                         udp6stat.udp6s_noportmcast++;                          UDP6_STATINC(UDP6_STAT_NOPORTMCAST);
                         goto bad;                          goto bad;
                 }                  }
                 udp6stat.udp6s_noport++;                  UDP6_STATINC(UDP6_STAT_NOPORT);
                 icmp6_error(m, ICMP6_DST_UNREACH, ICMP6_DST_UNREACH_NOPORT, 0);                  icmp6_error(m, ICMP6_DST_UNREACH, ICMP6_DST_UNREACH_NOPORT, 0);
                 m = NULL;                  m = NULL;
         }          }
Line 689  udp6_sendup(struct mbuf *m, int off /* o
Line 690  udp6_sendup(struct mbuf *m, int off /* o
                         if (opts)                          if (opts)
                                 m_freem(opts);                                  m_freem(opts);
                         so->so_rcv.sb_overflowed++;                          so->so_rcv.sb_overflowed++;
                         udp6stat.udp6s_fullsock++;                          UDP6_STATINC(UDP6_STAT_FULLSOCK);
                 } else                  } else
                         sorwakeup(so);                          sorwakeup(so);
         }          }

Legend:
Removed from v.1.167  
changed lines
  Added in v.1.168

CVSweb <webmaster@jp.NetBSD.org>