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