1*d56f51eaSDavid van Moolenbroek /* $NetBSD: atmuni31.h,v 1.2 2014/11/19 19:33:30 christos Exp $ */ 2*d56f51eaSDavid van Moolenbroek 3*d56f51eaSDavid van Moolenbroek /* 4*d56f51eaSDavid van Moolenbroek * Copyright (c) 1997 Yen Yen Lim and North Dakota State University 5*d56f51eaSDavid van Moolenbroek * All rights reserved. 6*d56f51eaSDavid van Moolenbroek * 7*d56f51eaSDavid van Moolenbroek * Redistribution and use in source and binary forms, with or without 8*d56f51eaSDavid van Moolenbroek * modification, are permitted provided that the following conditions 9*d56f51eaSDavid van Moolenbroek * are met: 10*d56f51eaSDavid van Moolenbroek * 1. Redistributions of source code must retain the above copyright 11*d56f51eaSDavid van Moolenbroek * notice, this list of conditions and the following disclaimer. 12*d56f51eaSDavid van Moolenbroek * 2. Redistributions in binary form must reproduce the above copyright 13*d56f51eaSDavid van Moolenbroek * notice, this list of conditions and the following disclaimer in the 14*d56f51eaSDavid van Moolenbroek * documentation and/or other materials provided with the distribution. 15*d56f51eaSDavid van Moolenbroek * 3. All advertising materials mentioning features or use of this software 16*d56f51eaSDavid van Moolenbroek * must display the following acknowledgement: 17*d56f51eaSDavid van Moolenbroek * This product includes software developed by Yen Yen Lim and 18*d56f51eaSDavid van Moolenbroek North Dakota State University 19*d56f51eaSDavid van Moolenbroek * 4. The name of the author may not be used to endorse or promote products 20*d56f51eaSDavid van Moolenbroek * derived from this software without specific prior written permission. 21*d56f51eaSDavid van Moolenbroek * 22*d56f51eaSDavid van Moolenbroek * THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR 23*d56f51eaSDavid van Moolenbroek * IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED 24*d56f51eaSDavid van Moolenbroek * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE 25*d56f51eaSDavid van Moolenbroek * DISCLAIMED. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, 26*d56f51eaSDavid van Moolenbroek * INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES 27*d56f51eaSDavid van Moolenbroek * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR 28*d56f51eaSDavid van Moolenbroek * SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) 29*d56f51eaSDavid van Moolenbroek * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, 30*d56f51eaSDavid van Moolenbroek * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN 31*d56f51eaSDavid van Moolenbroek * ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE 32*d56f51eaSDavid van Moolenbroek * POSSIBILITY OF SUCH DAMAGE. 33*d56f51eaSDavid van Moolenbroek */ 34*d56f51eaSDavid van Moolenbroek 35*d56f51eaSDavid van Moolenbroek /* Based on UNI3.1 standard by ATM Forum */ 36*d56f51eaSDavid van Moolenbroek 37*d56f51eaSDavid van Moolenbroek /* ATM traffic types based on VPI=0 and (the following VCI */ 38*d56f51eaSDavid van Moolenbroek #define VCI_PPC 0x05 /* Point-to-point signal msg */ 39*d56f51eaSDavid van Moolenbroek #define VCI_BCC 0x02 /* Broadcast signal msg */ 40*d56f51eaSDavid van Moolenbroek #define VCI_OAMF4SC 0x03 /* Segment OAM F4 flow cell */ 41*d56f51eaSDavid van Moolenbroek #define VCI_OAMF4EC 0x04 /* End-to-end OAM F4 flow cell */ 42*d56f51eaSDavid van Moolenbroek #define VCI_METAC 0x01 /* Meta signal msg */ 43*d56f51eaSDavid van Moolenbroek #define VCI_ILMIC 0x10 /* ILMI msg */ 44*d56f51eaSDavid van Moolenbroek 45*d56f51eaSDavid van Moolenbroek /* Q.2931 signalling messages */ 46*d56f51eaSDavid van Moolenbroek #define CALL_PROCEED 0x02 /* call proceeding */ 47*d56f51eaSDavid van Moolenbroek #define CONNECT 0x07 /* connect */ 48*d56f51eaSDavid van Moolenbroek #define CONNECT_ACK 0x0f /* connect_ack */ 49*d56f51eaSDavid van Moolenbroek #define SETUP 0x05 /* setup */ 50*d56f51eaSDavid van Moolenbroek #define RELEASE 0x4d /* release */ 51*d56f51eaSDavid van Moolenbroek #define RELEASE_DONE 0x5a /* release_done */ 52*d56f51eaSDavid van Moolenbroek #define RESTART 0x46 /* restart */ 53*d56f51eaSDavid van Moolenbroek #define RESTART_ACK 0x4e /* restart ack */ 54*d56f51eaSDavid van Moolenbroek #define STATUS 0x7d /* status */ 55*d56f51eaSDavid van Moolenbroek #define STATUS_ENQ 0x75 /* status ack */ 56*d56f51eaSDavid van Moolenbroek #define ADD_PARTY 0x80 /* add party */ 57*d56f51eaSDavid van Moolenbroek #define ADD_PARTY_ACK 0x81 /* add party ack */ 58*d56f51eaSDavid van Moolenbroek #define ADD_PARTY_REJ 0x82 /* add party rej */ 59*d56f51eaSDavid van Moolenbroek #define DROP_PARTY 0x83 /* drop party */ 60*d56f51eaSDavid van Moolenbroek #define DROP_PARTY_ACK 0x84 /* drop party ack */ 61*d56f51eaSDavid van Moolenbroek 62*d56f51eaSDavid van Moolenbroek /* Information Element Parameters in the signalling messages */ 63*d56f51eaSDavid van Moolenbroek #define CAUSE 0x08 /* cause */ 64*d56f51eaSDavid van Moolenbroek #define ENDPT_REF 0x54 /* endpoint reference */ 65*d56f51eaSDavid van Moolenbroek #define AAL_PARA 0x58 /* ATM adaptation layer parameters */ 66*d56f51eaSDavid van Moolenbroek #define TRAFF_DESCRIP 0x59 /* atm traffic descriptors */ 67*d56f51eaSDavid van Moolenbroek #define CONNECT_ID 0x5a /* connection identifier */ 68*d56f51eaSDavid van Moolenbroek #define QOS_PARA 0x5c /* quality of service parameters */ 69*d56f51eaSDavid van Moolenbroek #define B_HIGHER 0x5d /* broadband higher layer information */ 70*d56f51eaSDavid van Moolenbroek #define B_BEARER 0x5e /* broadband bearer capability */ 71*d56f51eaSDavid van Moolenbroek #define B_LOWER 0x5f /* broadband lower information */ 72*d56f51eaSDavid van Moolenbroek #define CALLING_PARTY 0x6c /* calling party number */ 73*d56f51eaSDavid van Moolenbroek #define CALLED_PARTY 0x70 /* called party nmber */ 74*d56f51eaSDavid van Moolenbroek 75*d56f51eaSDavid van Moolenbroek #define Q2931 0x09 76*d56f51eaSDavid van Moolenbroek 77*d56f51eaSDavid van Moolenbroek /* Q.2931 signalling general messages format */ 78*d56f51eaSDavid van Moolenbroek #define PROTO_POS 0 /* offset of protocol discriminator */ 79*d56f51eaSDavid van Moolenbroek #define CALL_REF_POS 2 /* offset of call reference value */ 80*d56f51eaSDavid van Moolenbroek #define MSG_TYPE_POS 5 /* offset of message type */ 81*d56f51eaSDavid van Moolenbroek #define MSG_LEN_POS 7 /* offset of mesage length */ 82*d56f51eaSDavid van Moolenbroek #define IE_BEGIN_POS 9 /* offset of first information element */ 83*d56f51eaSDavid van Moolenbroek 84*d56f51eaSDavid van Moolenbroek /* format of signalling messages */ 85*d56f51eaSDavid van Moolenbroek #define TYPE_POS 0 86*d56f51eaSDavid van Moolenbroek #define LEN_POS 2 87*d56f51eaSDavid van Moolenbroek #define FIELD_BEGIN_POS 4 88