The Design and Implementation of the FreeBSD Operating System, Second Edition
Now available: The Design and Implementation of the FreeBSD Operating System (Second Edition)


[ source navigation ] [ diff markup ] [ identifier search ] [ freetext search ] [ file search ] [ list types ] [ track identifier ]

FreeBSD/Linux Kernel Cross Reference
sys/netatm/atm_proto.c

Version: -  FREEBSD  -  FREEBSD-13-STABLE  -  FREEBSD-13-0  -  FREEBSD-12-STABLE  -  FREEBSD-12-0  -  FREEBSD-11-STABLE  -  FREEBSD-11-0  -  FREEBSD-10-STABLE  -  FREEBSD-10-0  -  FREEBSD-9-STABLE  -  FREEBSD-9-0  -  FREEBSD-8-STABLE  -  FREEBSD-8-0  -  FREEBSD-7-STABLE  -  FREEBSD-7-0  -  FREEBSD-6-STABLE  -  FREEBSD-6-0  -  FREEBSD-5-STABLE  -  FREEBSD-5-0  -  FREEBSD-4-STABLE  -  FREEBSD-3-STABLE  -  FREEBSD22  -  l41  -  OPENBSD  -  linux-2.6  -  MK84  -  PLAN9  -  xnu-8792 
SearchContext: -  none  -  3  -  10 

    1 /*-
    2  * ===================================
    3  * HARP  |  Host ATM Research Platform
    4  * ===================================
    5  *
    6  *
    7  * This Host ATM Research Platform ("HARP") file (the "Software") is
    8  * made available by Network Computing Services, Inc. ("NetworkCS")
    9  * "AS IS".  NetworkCS does not provide maintenance, improvements or
   10  * support of any kind.
   11  *
   12  * NETWORKCS MAKES NO WARRANTIES OR REPRESENTATIONS, EXPRESS OR IMPLIED,
   13  * INCLUDING, BUT NOT LIMITED TO, IMPLIED WARRANTIES OF MERCHANTABILITY
   14  * AND FITNESS FOR A PARTICULAR PURPOSE, AS TO ANY ELEMENT OF THE
   15  * SOFTWARE OR ANY SUPPORT PROVIDED IN CONNECTION WITH THIS SOFTWARE.
   16  * In no event shall NetworkCS be responsible for any damages, including
   17  * but not limited to consequential damages, arising from or relating to
   18  * any use of the Software or related support.
   19  *
   20  * Copyright 1994-1998 Network Computing Services, Inc.
   21  *
   22  * Copies of this Software may be made, however, the above copyright
   23  * notice must be reproduced on all copies.
   24  */
   25 
   26 /*
   27  * Core ATM Services
   28  * -----------------
   29  *
   30  * ATM socket protocol family support definitions
   31  */
   32 
   33 #include <sys/cdefs.h>
   34 __FBSDID("$FreeBSD: releng/6.2/sys/netatm/atm_proto.c 152516 2005-11-16 10:31:23Z ru $");
   35 
   36 #include <sys/param.h>
   37 #include <sys/kernel.h>
   38 #include <sys/domain.h>
   39 #include <sys/protosw.h>
   40 #include <sys/socket.h>
   41 #include <sys/sysctl.h>
   42 #include <net/if.h>
   43 #include <netatm/port.h>
   44 #include <netatm/queue.h>
   45 #include <netatm/atm.h>
   46 #include <netatm/atm_sys.h>
   47 #include <netatm/atm_sap.h>
   48 #include <netatm/atm_cm.h>
   49 #include <netatm/atm_if.h>
   50 #include <netatm/atm_stack.h>
   51 #include <netatm/atm_pcb.h>
   52 #include <netatm/atm_var.h>
   53 
   54 NET_NEEDS_GIANT("netatm");
   55 
   56 struct protosw atmsw[] = {
   57 {
   58         .pr_type =              SOCK_DGRAM,             /* ioctl()-only */
   59         .pr_domain =            &atmdomain,
   60         .pr_usrreqs =           &atm_dgram_usrreqs
   61 },
   62 
   63 {
   64         .pr_type =              SOCK_SEQPACKET,         /* AAL-5 */
   65         .pr_domain =            &atmdomain,
   66         .pr_protocol =          ATM_PROTO_AAL5,
   67         .pr_flags =             PR_ATOMIC|PR_CONNREQUIRED,
   68         .pr_ctloutput =         atm_aal5_ctloutput,
   69         .pr_usrreqs =           &atm_aal5_usrreqs
   70 },
   71 
   72 #ifdef XXX
   73 {
   74         .pr_type =              SOCK_SEQPACKET,         /* SSCOP */
   75         .pr_domain =            &atmdomain,
   76         .pr_protocol =          ATM_PROTO_SSCOP,
   77         .pr_flags =             PR_ATOMIC|PR_CONNREQUIRED|PR_WANTRCVD,
   78         .pr_input =             x,
   79         .pr_output =            x,
   80         .pr_ctlinput =          x,
   81         .pr_ctloutput =         x,
   82         .pr_drain =             x,
   83         .pr_usrreqs =           x
   84 },
   85 #endif
   86 };
   87 
   88 struct domain atmdomain = {
   89         .dom_family =           AF_ATM,
   90         .dom_name =             "atm",
   91         .dom_init =             atm_initialize,
   92         .dom_protosw =          atmsw,
   93         .dom_protoswNPROTOSW =  &atmsw[sizeof(atmsw) / sizeof(atmsw[0])]
   94 };
   95 
   96 DOMAIN_SET(atm);
   97 
   98 SYSCTL_NODE(_net, PF_ATM, harp, CTLFLAG_RW, 0, "HARP/ATM family");
   99 SYSCTL_NODE(_net_harp, OID_AUTO, atm, CTLFLAG_RW, 0, "ATM layer");
  100 
  101 /*
  102  * Protocol request not supported
  103  *
  104  * Arguments:
  105  *      so      pointer to socket
  106  *
  107  * Returns:
  108  *      errno   error - operation not supported
  109  *
  110  */
  111 int
  112 atm_proto_notsupp1(so)
  113         struct socket   *so;
  114 {
  115         return (EOPNOTSUPP);
  116 }
  117 
  118 
  119 /*
  120  * Protocol request not supported
  121  *
  122  * Arguments:
  123  *      so      pointer to socket
  124  *      addr    pointer to protocol address
  125  *      p       pointer to process
  126  *
  127  * Returns:
  128  *      errno   error - operation not supported
  129  *
  130  */
  131 int
  132 atm_proto_notsupp2(so, addr, td)
  133         struct socket   *so;
  134         struct sockaddr *addr;
  135         struct thread   *td;
  136 {
  137         return (EOPNOTSUPP);
  138 }
  139 
  140 
  141 /*
  142  * Protocol request not supported
  143  *
  144  * Arguments:
  145  *      so      pointer to socket
  146  *      addr    pointer to pointer to protocol address
  147  *
  148  * Returns:
  149  *      errno   error - operation not supported
  150  *
  151  */
  152 int
  153 atm_proto_notsupp3(so, addr)
  154         struct socket   *so;
  155         struct sockaddr **addr;
  156 {
  157         return (EOPNOTSUPP);
  158 }
  159 
  160 
  161 /*
  162  * Protocol request not supported
  163  *
  164  * Arguments:
  165  *      so      pointer to socket
  166  *      i       integer
  167  *      m       pointer to kernel buffer
  168  *      addr    pointer to protocol address
  169  *      m2      pointer to kernel buffer
  170  *      p       pointer to process
  171  *
  172  * Returns:
  173  *      errno   error - operation not supported
  174  *
  175  */
  176 int
  177 atm_proto_notsupp4(so, i, m, addr, m2, td)
  178         struct socket   *so;
  179         int             i;
  180         KBuffer         *m;
  181         struct sockaddr *addr;
  182         KBuffer         *m2;
  183         struct thread   *td;
  184 {
  185         return (EOPNOTSUPP);
  186 }

Cache object: 73dc09fb283245ed1f57ced42b24fdb6


[ source navigation ] [ diff markup ] [ identifier search ] [ freetext search ] [ file search ] [ list types ] [ track identifier ]


This page is part of the FreeBSD/Linux Linux Kernel Cross-Reference, and was automatically generated using a modified version of the LXR engine.