[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.209 and 1.210

version 1.209, 2014/07/23 13:17:18 version 1.210, 2014/07/24 15:12:03
Line 900  udp_accept(struct socket *so, struct mbu
Line 900  udp_accept(struct socket *so, struct mbu
         KASSERT(solocked(so));          KASSERT(solocked(so));
   
         panic("udp_accept");          panic("udp_accept");
         /* NOT REACHED */  
           return EOPNOTSUPP;
   }
   
   static int
   udp_bind(struct socket *so, struct mbuf *nam)
   {
           struct inpcb *inp = sotoinpcb(so);
           int error = 0;
           int s;
   
           KASSERT(solocked(so));
           KASSERT(inp != NULL);
           KASSERT(nam != NULL);
   
           s = splsoftnet();
           error = in_pcbbind(inp, nam);
           splx(s);
   
           return error;
   }
   
   static int
   udp_listen(struct socket *so)
   {
           KASSERT(solocked(so));
   
         return EOPNOTSUPP;          return EOPNOTSUPP;
 }  }
   
   
 static int  static int
 udp_ioctl(struct socket *so, u_long cmd, void *nam, struct ifnet *ifp)  udp_ioctl(struct socket *so, u_long cmd, void *nam, struct ifnet *ifp)
 {  {
Line 970  udp_usrreq(struct socket *so, int req, s
Line 997  udp_usrreq(struct socket *so, int req, s
         KASSERT(req != PRU_ATTACH);          KASSERT(req != PRU_ATTACH);
         KASSERT(req != PRU_DETACH);          KASSERT(req != PRU_DETACH);
         KASSERT(req != PRU_ACCEPT);          KASSERT(req != PRU_ACCEPT);
           KASSERT(req != PRU_BIND);
           KASSERT(req != PRU_LISTEN);
         KASSERT(req != PRU_CONTROL);          KASSERT(req != PRU_CONTROL);
         KASSERT(req != PRU_SENSE);          KASSERT(req != PRU_SENSE);
         KASSERT(req != PRU_PEERADDR);          KASSERT(req != PRU_PEERADDR);
Line 1002  udp_usrreq(struct socket *so, int req, s
Line 1031  udp_usrreq(struct socket *so, int req, s
          * the udp pcb queue and/or pcb addresses.           * the udp pcb queue and/or pcb addresses.
          */           */
         switch (req) {          switch (req) {
         case PRU_BIND:  
                 error = in_pcbbind(inp, nam, l);  
                 break;  
   
         case PRU_LISTEN:  
                 error = EOPNOTSUPP;  
                 break;  
   
         case PRU_CONNECT:          case PRU_CONNECT:
                 error = in_pcbconnect(inp, nam, l);                  error = in_pcbconnect(inp, nam, l);
                 if (error)                  if (error)
Line 1305  PR_WRAP_USRREQS(udp)
Line 1326  PR_WRAP_USRREQS(udp)
 #define udp_attach      udp_attach_wrapper  #define udp_attach      udp_attach_wrapper
 #define udp_detach      udp_detach_wrapper  #define udp_detach      udp_detach_wrapper
 #define udp_accept      udp_accept_wrapper  #define udp_accept      udp_accept_wrapper
   #define udp_bind        udp_bind_wrapper
   #define udp_listen      udp_listen_wrapper
 #define udp_ioctl       udp_ioctl_wrapper  #define udp_ioctl       udp_ioctl_wrapper
 #define udp_stat        udp_stat_wrapper  #define udp_stat        udp_stat_wrapper
 #define udp_peeraddr    udp_peeraddr_wrapper  #define udp_peeraddr    udp_peeraddr_wrapper
Line 1317  const struct pr_usrreqs udp_usrreqs = {
Line 1340  const struct pr_usrreqs udp_usrreqs = {
         .pr_attach      = udp_attach,          .pr_attach      = udp_attach,
         .pr_detach      = udp_detach,          .pr_detach      = udp_detach,
         .pr_accept      = udp_accept,          .pr_accept      = udp_accept,
           .pr_bind        = udp_bind,
           .pr_listen      = udp_listen,
         .pr_ioctl       = udp_ioctl,          .pr_ioctl       = udp_ioctl,
         .pr_stat        = udp_stat,          .pr_stat        = udp_stat,
         .pr_peeraddr    = udp_peeraddr,          .pr_peeraddr    = udp_peeraddr,

Legend:
Removed from v.1.209  
changed lines
  Added in v.1.210

CVSweb <webmaster@jp.NetBSD.org>