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_sigmgr.h

Version: -  FREEBSD  -  FREEBSD11  -  FREEBSD10  -  FREEBSD9  -  FREEBSD92  -  FREEBSD91  -  FREEBSD90  -  FREEBSD8  -  FREEBSD82  -  FREEBSD81  -  FREEBSD80  -  FREEBSD7  -  FREEBSD74  -  FREEBSD73  -  FREEBSD72  -  FREEBSD71  -  FREEBSD70  -  FREEBSD6  -  FREEBSD64  -  FREEBSD63  -  FREEBSD62  -  FREEBSD61  -  FREEBSD60  -  FREEBSD5  -  FREEBSD55  -  FREEBSD54  -  FREEBSD53  -  FREEBSD52  -  FREEBSD51  -  FREEBSD50  -  FREEBSD4  -  FREEBSD3  -  FREEBSD22  -  linux-2.6  -  linux-2.4.22  -  MK83  -  MK84  -  PLAN9  -  DFBSD  -  NETBSD  -  NETBSD5  -  NETBSD4  -  NETBSD3  -  NETBSD20  -  OPENBSD  -  xnu-517  -  xnu-792  -  xnu-792.6.70  -  xnu-1228  -  xnu-1456.1.26  -  xnu-1699.24.8  -  xnu-2050.18.24  -  OPENSOLARIS  -  minix-3-1-1 
SearchContext: -  none  -  3  -  10 

    1 /*-
    2  *
    3  * ===================================
    4  * HARP  |  Host ATM Research Platform
    5  * ===================================
    6  *
    7  *
    8  * This Host ATM Research Platform ("HARP") file (the "Software") is
    9  * made available by Network Computing Services, Inc. ("NetworkCS")
   10  * "AS IS".  NetworkCS does not provide maintenance, improvements or
   11  * support of any kind.
   12  *
   13  * NETWORKCS MAKES NO WARRANTIES OR REPRESENTATIONS, EXPRESS OR IMPLIED,
   14  * INCLUDING, BUT NOT LIMITED TO, IMPLIED WARRANTIES OF MERCHANTABILITY
   15  * AND FITNESS FOR A PARTICULAR PURPOSE, AS TO ANY ELEMENT OF THE
   16  * SOFTWARE OR ANY SUPPORT PROVIDED IN CONNECTION WITH THIS SOFTWARE.
   17  * In no event shall NetworkCS be responsible for any damages, including
   18  * but not limited to consequential damages, arising from or relating to
   19  * any use of the Software or related support.
   20  *
   21  * Copyright 1994-1998 Network Computing Services, Inc.
   22  *
   23  * Copies of this Software may be made, however, the above copyright
   24  * notice must be reproduced on all copies.
   25  *
   26  *      @(#) $FreeBSD: src/sys/netatm/atm_sigmgr.h,v 1.5 2005/01/07 01:45:36 imp Exp $
   27  *
   28  */
   29 
   30 /*
   31  * Core ATM Services
   32  * -----------------
   33  *
   34  * ATM Signalling Manager definitions 
   35  *
   36  */
   37 
   38 #ifndef _NETATM_ATM_SIGMGR_H
   39 #define _NETATM_ATM_SIGMGR_H
   40 
   41 #ifdef _KERNEL
   42 /*
   43  * Structure common to all ATM Signalling Managers.  Each Signalling 
   44  * Manager must create one of these and use it to register itself 
   45  * with the system.
   46  */
   47 struct  sigmgr {
   48         struct sigmgr   *sm_next;       /* Next registered sigmgr */
   49         u_char          sm_proto;       /* Signalling protocol (see below) */
   50         struct siginst  *sm_prinst;     /* List of protocol instances */
   51 /* Exported functions */
   52         int             (*sm_attach)    /* Attach interface */
   53                                 (struct sigmgr *, struct atm_pif *);
   54         int             (*sm_detach)    /* Detach interface */
   55                                 (struct atm_pif *);
   56         int             (*sm_setup)     /* Connection setup */
   57                                 (Atm_connvc *, int *);
   58         int             (*sm_accept)    /* Call accepted */
   59                                 (struct vccb *, int *);
   60         int             (*sm_reject)    /* Call rejected */
   61                                 (struct vccb *, int *);
   62         int             (*sm_release)   /* Connection release */
   63                                 (struct vccb *, int *);
   64         int             (*sm_free)      /* Free connection resources */
   65                                 (struct vccb *);
   66         int             (*sm_ioctl)     /* Ioctl handler */
   67                                 (int, caddr_t, caddr_t);
   68 };
   69 #endif  /* _KERNEL */
   70 
   71 /* 
   72  * ATM Signalling Protocols
   73  */
   74 #define ATM_SIG_PVC     1               /* PVC-only */
   75 #define ATM_SIG_SPANS   2               /* Fore Systems SPANS */
   76 #define ATM_SIG_UNI30   3               /* ATM Forum UNI 3.0 */
   77 #define ATM_SIG_UNI31   4               /* ATM Forum UNI 3.1 */
   78 #define ATM_SIG_UNI40   5               /* ATM Forum UNI 4.0 */
   79 
   80 
   81 #ifdef _KERNEL
   82 /*
   83  * Signalling Protocol Instance control block header.  Common header for
   84  * every signalling protocol instance control block.
   85  */
   86 struct  siginst {
   87         struct siginst  *si_next;       /* Next sigmgr protocol instance */
   88         struct atm_pif  *si_pif;        /* Device interface */
   89         Atm_addr        si_addr;        /* Interface ATM address */
   90         Atm_addr        si_subaddr;     /* Interface ATM subaddress */
   91         Queue_t         si_vccq;        /* VCCB queue */
   92         u_short         si_state;       /* Protocol state (sigmgr specific) */
   93 
   94 /* Exported protocol services */
   95         struct ip_serv  *si_ipserv;     /* IP/ATM services */
   96 };
   97 
   98 
   99 /*
  100  * Sigmgr function return codes
  101  */
  102 #define CALL_PROCEEDING 1               /* Connection request is in progress */
  103 #define CALL_FAILED     2               /* Connection request failed */
  104 #define CALL_CONNECTED  3               /* Connection setup successful */
  105 #define CALL_CLEARED    4               /* Connection has been terminated */
  106 
  107 #endif  /* _KERNEL */
  108 
  109 #endif  /* _NETATM_ATM_SIGMGR_H */

Cache object: 2e458d887df86a38f03bbad98bf81eaa


[ 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.