FreeCalypso > hg > fc-tourmaline
annotate src/g23m-gsm/cc/cc_for.c @ 241:28071f072194
FCBM bug: erroneously used FCHG_USE_ID in a trace
| author | Mychaela Falconia <falcon@freecalypso.org> | 
|---|---|
| date | Sun, 02 May 2021 06:16:30 +0000 | 
| parents | fa8dc04885d8 | 
| children | 
| rev | line source | 
|---|---|
| 1 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1 /* | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2 +----------------------------------------------------------------------------- | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 3 | Project : GSM-PS (6147) | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 4 | Modul : CC_FOR | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 5 +----------------------------------------------------------------------------- | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 6 | Copyright 2002 Texas Instruments Berlin, AG | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 7 | All rights reserved. | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 8 | | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 9 | This file is confidential and a trade secret of Texas | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 10 | Instruments Berlin, AG | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 11 | The receipt of or possession of this file does not convey | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 12 | any rights to reproduce or disclose its contents or to | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 13 | manufacture, use, or sell anything it may describe, in | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 14 | whole, or in part, without the specific written consent of | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 15 | Texas Instruments Berlin, AG. | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 16 +----------------------------------------------------------------------------- | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 17 | Purpose : This Modul defines the functions for the formatter | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 18 | of the component CC. | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 19 +----------------------------------------------------------------------------- | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 20 */ | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 21 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 22 #ifndef CC_FOR_C | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 23 #define CC_FOR_C | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 24 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 25 #define ENTITY_CC | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 26 /*==== INCLUDES ===================================================*/ | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 27 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 28 #include <string.h> | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 29 #include "typedefs.h" | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 30 #include "pcm.h" | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 31 #include "vsi.h" | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 32 #include "custom.h" | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 33 #include "gsm.h" | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 34 #include "message.h" | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 35 #include "ccdapi.h" | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 36 #include "prim.h" | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 37 #include "cnf_cc.h" | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 38 #include "mon_cc.h" | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 39 #include "pei.h" | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 40 #include "tok.h" | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 41 #include "cc.h" | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 42 #include "cc_em.h" | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 43 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 44 /*==== EXPORT =====================================================*/ | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 45 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 46 /*==== PROTOTYPES =================================================*/ | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 47 /* Implements Measure# 44 */ | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 48 LOCAL void for_send_u_release_comp (USHORT cause); | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 49 /* Implements Measure# 42 */ | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 50 LOCAL void for_fill_sdu_and_send (UBYTE msg, | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 51 USHORT len); | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 52 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 53 /* Implements Measure# 11 */ | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 54 LOCAL void code_msg (UBYTE * msg, | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 55 USHORT len); | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 56 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 57 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 58 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 59 /*==== PRIVAT =====================================================*/ | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 60 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 61 /*==== VARIABLES ==================================================*/ | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 62 #if !defined (SHARED_CCD_BUF) | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 63 GLOBAL UBYTE _decodedMsg [MAX_MSTRUCT_LEN_CC]; | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 64 #else | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 65 GLOBAL UBYTE * _decodedMsg; | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 66 #endif | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 67 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 68 /*==== FUNCTIONS ==================================================*/ | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 69 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 70 #if 0 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 71 /* xhegadeg 24th May 2005 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 72 The part of the code between #if 0 to #endif is never executed.*/ | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 73 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 74 /* | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 75 Reason For Commenting : | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 76 Issue CC-ENH-30714----> | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 77 All the Layer3 CC messages are now traced via TRACE_BINDUMP. | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 78 So no need of the Function cc_trace_bcap() which was earlier | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 79 used for taking Setup ( Both Uplink & Downlink),Call Confirm, | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 80 Call Proceeding Traces using TRACE_BCAP. | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 81 */ | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 82 #if defined TRACE_BCAP | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 83 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 84 /* | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 85 +--------------------------------------------------------------------+ | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 86 | PROJECT : GSM-PS (6147) MODULE : CC_FOR | | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 87 | STATE : code ROUTINE : cc_trace_bcap | | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 88 +--------------------------------------------------------------------+ | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 89 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 90 PURPOSE : Trace messages containing bearer caps. This has been shown | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 91 to be useful in the past. | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 92 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 93 */ | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 94 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 95 LOCAL void cc_trace_bcap (T_CC_DATA *cc_data, | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 96 const T_sdu *sdu, | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 97 UBYTE direction) | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 98 { | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 99 const UBYTE *msg_ptr; /* Pointer to non-decoded message */ | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 100 unsigned msg_len; /* Length of non-decoded message */ | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 101 unsigned str_len; /* Length of trace string */ | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 102 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 103 /* TRACE_FUNCTION ("cc_trace_bcap()"); */ | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 104 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 105 trace_buf[0] = '\0'; | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 106 if (direction EQ UPLINK) | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 107 { | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 108 switch (_decodedMsg[0]) | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 109 { | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 110 case U_SETUP: | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 111 strcpy (trace_buf, "U_SETUP:"); | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 112 break; | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 113 case U_CALL_CONF: | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 114 strcpy (trace_buf, "U_CCONF:"); | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 115 break; | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 116 default: | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 117 break; | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 118 } | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 119 } | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 120 else | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 121 { | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 122 switch (_decodedMsg[0]) | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 123 { | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 124 case D_SETUP: | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 125 strcpy (trace_buf, "D_SETUP:"); | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 126 break; | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 127 case D_CALL_PROCEED: | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 128 strcpy (trace_buf, "D_CPROC:"); | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 129 break; | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 130 default: | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 131 break; | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 132 } | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 133 } | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 134 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 135 str_len = strlen (trace_buf); | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 136 msg_len = sdu->l_buf >> 3; | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 137 msg_ptr = &sdu->buf[sdu->o_buf >> 3]; | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 138 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 139 if (str_len > 0) | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 140 { | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 141 /* Known message containing bearer caps, trace it out */ | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 142 unsigned count; /* Number of dumped hex bytes in the trace line */ | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 143 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 144 count = 0; | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 145 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 146 if (msg_len > 40) | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 147 msg_len = 40; /* Limit trace load */ | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 148 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 149 while (msg_len > 0) | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 150 { | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 151 sprintf (trace_buf + str_len," %02x", *msg_ptr); | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 152 msg_ptr++; | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 153 msg_len--; | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 154 count++; | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 155 str_len += 3; | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 156 if ((msg_len > 0) AND (count >= 20)) | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 157 { | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 158 /* Start new trace line */ | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 159 TRACE_EVENT (trace_buf); | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 160 strcpy (trace_buf, " "); | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 161 str_len = strlen (trace_buf); | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 162 count = 0; | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 163 } | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 164 } | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 165 TRACE_EVENT (trace_buf); | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 166 } | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 167 } | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 168 #endif /* #if defined TRACE_BCAP */ | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 169 #endif /* #if 0 */ | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 170 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 171 /* | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 172 +--------------------------------------------------------------------+ | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 173 | PROJECT : GSM-PS (6147) MODULE : CC_FOR | | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 174 | STATE : code ROUTINE : for_init | | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 175 +--------------------------------------------------------------------+ | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 176 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 177 PURPOSE : Initialize the formatter | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 178 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 179 */ | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 180 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 181 GLOBAL void for_init (void) | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 182 { | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 183 TRACE_FUNCTION ("for_init()"); | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 184 } | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 185 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 186 /* | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 187 +--------------------------------------------------------------------+ | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 188 | PROJECT : GSM-PS (6147) MODULE : CC_FOR | | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 189 | STATE : code ROUTINE : for_mmcm_est_ind | | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 190 +--------------------------------------------------------------------+ | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 191 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 192 PURPOSE : Processing the primitive MMCC_EST_IND from mobility | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 193 management. | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 194 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 195 */ | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 196 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 197 GLOBAL void for_mmcm_est_ind (T_MMCM_ESTABLISH_IND * mmcm_establish_ind) | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 198 { | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 199 UBYTE pd; | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 200 BOOL rel_flag = FALSE; | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 201 GET_INSTANCE_DATA; | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 202 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 203 /* Enable the PCO to correctly decode the message */ | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 204 PPASS (mmcm_establish_ind, data, MMCM_ESTABLISH_IND); | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 205 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 206 TRACE_FUNCTION ("for_mmcm_est_ind()"); | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 207 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 208 cc_data->ti_ext = 0; | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 209 cc_data->ti_ext_pres = FALSE; | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 210 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 211 GET_PD (data->sdu, pd); | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 212 GET_TI (data->sdu, cc_data->ti); | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 213 cc_data->ti_rec = cc_data->ti; | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 214 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 215 if (cc_data->ti >= 8) | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 216 cc_data->ti -= 8; | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 217 else | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 218 cc_data->ti += 8; | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 219 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 220 if ((pd NEQ M_MM_PD_CC) | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 221 OR | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 222 (data->sdu.l_buf < 16)) | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 223 /* | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 224 * wrong protocol discriminator | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 225 * or message too short | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 226 */ | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 227 { | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 228 rel_flag = TRUE; | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 229 } | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 230 else if ((cc_data->ti & 7) EQ 7) | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 231 { | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 232 /* TI value indicates extension octet, not allowed currently */ | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 233 /* retrieve the second octet for TI and store it for subsequent handling in or_decode */ | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 234 GET_TI_EXT(data->sdu, cc_data->ti_ext); | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 235 if ((cc_data->ti_ext & EXTENDED_TI_VALID) EQ EXTENDED_TI_VALID) | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 236 { | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 237 cc_data->ti_ext_pres = TRUE; | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 238 } | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 239 else | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 240 { /* no extended TI */ | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 241 rel_flag = TRUE; | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 242 } | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 243 } | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 244 if (rel_flag==TRUE) | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 245 { | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 246 PPASS (data, rel, MMCM_RELEASE_REQ); | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 247 rel->org_entity = NAS_ORG_ENTITY_CC; | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 248 rel->ti = cc_data->ti; | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 249 PSENDX (MM, rel); | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 250 return; | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 251 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 252 } | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 253 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 254 cc_data->error = 0; | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 255 cc_data->error_count = 0; | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 256 for_decode ((T_PRIM*)(D2P(data)), TRUE); | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 257 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 258 } /* for_mmcm_est_ind() */ | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 259 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 260 /* | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 261 +--------------------------------------------------------------------+ | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 262 | PROJECT : GSM-PS (6147) MODULE : CC_FOR | | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 263 | STATE : code ROUTINE : for_mmcm_data_ind | | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 264 +--------------------------------------------------------------------+ | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 265 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 266 PURPOSE : Processing the primitive MMCM_DATA_IND from mobility | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 267 management. | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 268 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 269 */ | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 270 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 271 GLOBAL void for_mmcm_data_ind (T_MMCM_DATA_IND * mmcm_data_ind) | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 272 { | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 273 UBYTE pd; | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 274 GET_INSTANCE_DATA; | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 275 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 276 /* Enable the PCO to correctly decode the message */ | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 277 PPASS (mmcm_data_ind, data, MMCM_DATA_IND); | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 278 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 279 TRACE_FUNCTION ("for_mmcm_data_ind()"); | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 280 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 281 cc_data->ti_ext = 0; | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 282 cc_data->ti_ext_pres = FALSE; | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 283 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 284 GET_PD (data->sdu, pd); | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 285 GET_TI (data->sdu, cc_data->ti); | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 286 cc_data->ti_rec = cc_data->ti; | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 287 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 288 if (cc_data->ti >= 8) | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 289 cc_data->ti -= 8; | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 290 else | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 291 cc_data->ti += 8; | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 292 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 293 if (((cc_data->ti & 7) EQ 7) | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 294 OR | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 295 (pd NEQ M_MM_PD_CC) | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 296 OR | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 297 (data->sdu.l_buf < 16)) | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 298 /* | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 299 * TI value is reserved, not allowed | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 300 * or wrong protocol discriminator | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 301 * or message too short | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 302 */ | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 303 { | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 304 PFREE (data); | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 305 } | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 306 else | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 307 { | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 308 cc_data->error = 0; | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 309 for_decode ((T_PRIM*)(D2P(data)), FALSE); | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 310 } | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 311 } | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 312 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 313 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 314 /* | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 315 +--------------------------------------------------------------------+ | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 316 | PROJECT : GSM-PS (6147) MODULE : CC_FOR | | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 317 | STATE : code ROUTINE : for_decode | | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 318 +--------------------------------------------------------------------+ | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 319 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 320 PURPOSE : Decoding and distributing of incoming messages. | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 321 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 322 */ | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 323 typedef void (*T_FUNC_PTR) (void); | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 324 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 325 LOCAL const T_FUNC_PTR mess_table[] = { | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 326 cc_unknown_message, /* 0: not used */ | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 327 for_d_alert, /* 1: D_ALERT */ | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 328 for_d_call_proceed, /* 2: D_CALL_PROCEED */ | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 329 for_d_progress, /* 3: D_PROGRESS */ | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 330 for_d_cc_establishment, /* 4: D_CC_ESTABLISHMENT */ | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 331 for_d_setup, /* 5: D_SETUP */ | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 332 cc_unknown_message, /* 6: not used */ | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 333 for_d_connect, /* 7: D_CONNECT */ | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 334 cc_unknown_message, /* 8: not used */ | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 335 cc_unknown_message, /* 9: not used */ | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 336 cc_unknown_message, /* 10: not used */ | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 337 for_d_recall, /* 11: D_RECALL */ | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 338 cc_unknown_message, /* 12: not used */ | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 339 cc_unknown_message, /* 13: not used */ | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 340 cc_unknown_message, /* 14: not used */ | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 341 cc_connect_ack, /* 15: B_CONNECT_ACK */ | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 342 for_b_user_information, /* 16: B_USER_INFO */ | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 343 cc_unknown_message, /* 17: not used */ | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 344 cc_unknown_message, /* 18: not used */ | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 345 for_b_modify_rej, /* 19: B_MODIFY_REJ */ | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 346 cc_unknown_message, /* 20: not used */ | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 347 cc_unknown_message, /* 21: not used */ | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 348 cc_unknown_message, /* 22: not used */ | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 349 for_b_modify, /* 23: B_MODIFY */ | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 350 cc_unknown_message, /* 24: not used */ | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 351 cc_hold_ack, /* 25: D_HOLD_ACK */ | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 352 for_d_hold_rej, /* 26: D_HOLD_REJ */ | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 353 cc_unknown_message, /* 27: not used */ | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 354 cc_unknown_message, /* 28: not used */ | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 355 cc_retrieve_ack, /* 29: D_RETRIEVE_ACK */ | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 356 for_d_retrieve_rej, /* 30: D_RETRIEVE_REJ */ | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 357 for_b_modify_comp, /* 31: B_MODIFY_COMP */ | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 358 cc_unknown_message, /* 32: not used */ | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 359 cc_unknown_message, /* 33: not used */ | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 360 cc_unknown_message, /* 34: not used */ | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 361 cc_unknown_message, /* 35: not used */ | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 362 cc_unknown_message, /* 36: not used */ | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 363 for_d_disconnect, /* 37: D_DISCONNECT */ | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 364 cc_unknown_message, /* 38: not used */ | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 365 cc_unknown_message, /* 39: not used */ | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 366 cc_unknown_message, /* 40: not used */ | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 367 cc_unknown_message, /* 41: not used */ | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 368 for_d_release_comp, /* 42: D_RELEASE_COMP */ | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 369 cc_unknown_message, /* 43: not used */ | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 370 cc_unknown_message, /* 44: not used */ | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 371 for_d_release, /* 45: D_RELEASE */ | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 372 cc_unknown_message, /* 46: not used */ | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 373 cc_unknown_message, /* 47: not used */ | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 374 cc_unknown_message, /* 48: not used */ | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 375 cc_unknown_message, /* 49: not used */ | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 376 cc_stop_dtmf_ack, /* 50: D_STOP_DTMF_ACK */ | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 377 cc_unknown_message, /* 51: not_used */ | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 378 cc_status_enquiry, /* 52: B_STATUS_ENQ */ | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 379 cc_unknown_message, /* 53: not used */ | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 380 for_d_start_dtmf_ack, /* 54: D_START_DTMF_ACK */ | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 381 for_d_start_dtmf_rej, /* 55: D_START_DTMF_REJ */ | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 382 cc_unknown_message, /* 56: not used */ | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 383 for_b_congest_ctrl, /* 57: B_CONGEST_CTRL */ | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 384 for_d_facility, /* 58: D_FACILITY */ | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 385 cc_unknown_message, /* 59: not used */ | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 386 cc_unknown_message, /* 60: not used */ | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 387 for_b_status, /* 61: B_STATUS */ | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 388 for_b_notify, /* 62: B_NOTIFY */ | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 389 cc_unknown_message /* 63: not used */ | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 390 }; | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 391 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 392 GLOBAL void for_decode (T_PRIM * prim, BOOL est_flag) | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 393 { | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 394 GET_INSTANCE_DATA; | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 395 U8 *payload; | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 396 U16 length; | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 397 /* Implements Measure#32: Row 43,...,70 */ | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 398 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 399 PCAST (prim, data, MMCM_DATA_IND); | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 400 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 401 TRACE_FUNCTION ("for_decode()"); | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 402 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 403 if (cc_data->ti_ext_pres EQ TRUE) | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 404 { | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 405 data->sdu.l_buf -= 16; | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 406 data->sdu.o_buf += 16; | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 407 } | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 408 else | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 409 { | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 410 data->sdu.l_buf -= 8; | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 411 data->sdu.o_buf += 8; | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 412 } | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 413 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 414 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 415 cc_data->mt = data->sdu.buf[data->sdu.o_buf >> 3]; | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 416 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 417 /* Obtain the internal shared CCD output buffer */ | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 418 CCD_START; | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 419 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 420 if (ccd_decodeMsg (CCDENT_CC, | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 421 DOWNLINK, | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 422 (T_MSGBUF *) &data->sdu, | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 423 (UBYTE *) _decodedMsg, | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 424 NOT_PRESENT_8BIT) NEQ ccdOK) | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 425 { | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 426 USHORT parlist[6]; | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 427 UBYTE prev_err; | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 428 UBYTE ccd_err; | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 429 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 430 memset (parlist,0, sizeof (parlist)); | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 431 ccd_err = ccd_getFirstError (CCDENT_CC, parlist); | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 432 /* | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 433 * Error Handling | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 434 */ | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 435 do | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 436 { | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 437 TRACE_EVENT_P1 ("cuurent_error = %d", ccd_err); | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 438 switch (ccd_err) | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 439 { | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 440 case ERR_MSG_LEN: /* ignore message & send STATUS #96 */ | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 441 case ERR_MAND_ELEM_MISS: /* ignore message & send STATUS #96 */ | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 442 case ERR_COMPREH_REQUIRED: /* ignore message & send STATUS #96 */ | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 443 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 444 for_set_mandatory_error ((UBYTE)parlist[0]); | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 445 break; | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 446 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 447 case ERR_INVALID_MID: /* ignore message & send STATUS #97 */ | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 448 cc_data->error = M_CC_CAUSE_MESSAGE_TYPE_NOT_IMPLEM; | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 449 break; | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 450 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 451 case ERR_INTERNAL_ERROR: | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 452 #if defined (WIN32) | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 453 TRACE_EVENT_P1("An internal CCD error occured,CCD error code = %u", ccd_err); | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 454 #endif /* #if defined (WIN32) */ | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 455 cc_data->error = M_CC_CAUSE_MESSAGE_INCOMPAT; | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 456 break; | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 457 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 458 case ERR_IE_SEQUENCE: | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 459 #if defined (WIN32) | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 460 TRACE_EVENT_P2("sequence error, CCD error = %u, Parameter = %d", ccd_err, parlist[0]); | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 461 #endif /* #if defined (WIN32) */ | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 462 switch (cc_data->state[srv_convert_ti (cc_data->ti)]) | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 463 { | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 464 case M_CC_CS_11: | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 465 case M_CC_CS_12: | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 466 case M_CC_CS_19: | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 467 break; | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 468 default: /* 24.008: 9.3.18.1.1 Cause ; This information element shall | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 469 * be included if this message is used to initiate call clearing. | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 470 */ | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 471 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 472 if (parlist [0] EQ CAUSE_IEI) | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 473 { | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 474 for_set_mandatory_error ((UBYTE)parlist[0]); | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 475 } | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 476 break; | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 477 } | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 478 break; | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 479 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 480 #if defined (WIN32) /* This part is interesting only in implementation | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 481 and testing; may be included if specific handling | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 482 for specific errors is required in future releases */ | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 483 case ERR_IE_NOT_EXPECTED: | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 484 TRACE_EVENT_P1("CCD ERROR: IE not expected. probably an R99 optional elemet like cell notification, eplmn, or t3302, CCD error code = %u", ccd_err); | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 485 break; | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 486 case ERR_MAX_IE_EXCEED: | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 487 TRACE_EVENT_P1("Maximum amount of repeatable information elements has exceeded, CCD error code = %u", ccd_err); | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 488 break; | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 489 case ERR_MAX_REPEAT: | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 490 TRACE_EVENT_P1("A repeatable element occurs too often in the message, CCD error code = %u", ccd_err); | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 491 break; | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 492 case ERR_PATTERN_MISMATCH: | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 493 case ERR_INVALID_TYPE: | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 494 TRACE_EVENT_P1 ("MNC decoding erroneous = %u", ccd_err); | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 495 break; | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 496 #endif /* #if defined (WIN32) */ | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 497 default: | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 498 #if defined (WIN32) | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 499 TRACE_EVENT_P1 ("Unexpected warnings/errors = %u", ccd_err); | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 500 #endif /* #if defined (WIN32) */ | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 501 break; /* No or non-interesting error */ | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 502 } | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 503 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 504 prev_err = ccd_err; | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 505 ccd_err = ccd_getNextError (CCDENT_CC, parlist); | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 506 } while ( prev_err NEQ ERR_NO_MORE_ERROR | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 507 AND !cc_check_critical_error(cc_data->error) ); | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 508 } | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 509 /*lint -e416 (creation of out-of-bounds pointer)*/ | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 510 EM_CC_DOWNLINK_SETUP_RECEIVED; | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 511 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 512 /* adding TI and PD header to data */ | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 513 data->sdu.l_buf += 8; | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 514 data->sdu.o_buf -= 8; | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 515 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 516 payload = &(data->sdu.buf[0]); /* beginning of buffer */ | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 517 payload += ((data->sdu.o_buf) >> 3); /* plus offset (bytes) */ | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 518 length = ((data->sdu.l_buf) >> 3); /* length (bytes, bits / 8) */ | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 519 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 520 /* Implements Measure#32: Row 43,...,70 */ | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 521 switch (_decodedMsg[0]) | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 522 { | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 523 case D_ALERT: | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 524 TRACE_BINDUMP (cc_handle, | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 525 TC_USER4, | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 526 " Alert DL ", | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 527 payload, | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 528 length); | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 529 break; | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 530 case D_CALL_PROCEED: | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 531 TRACE_BINDUMP (cc_handle, | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 532 TC_USER4, | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 533 " Call Proceed DL ", | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 534 payload, | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 535 length); | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 536 break; | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 537 case D_PROGRESS: | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 538 TRACE_BINDUMP (cc_handle, | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 539 TC_USER4, | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 540 " Progress DL ", | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 541 payload, | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 542 length); | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 543 break; | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 544 case D_CC_ESTABLISHMENT: | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 545 TRACE_BINDUMP (cc_handle, | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 546 TC_USER4, | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 547 " CC Establishment DL ", | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 548 payload, | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 549 length); | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 550 break; | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 551 case D_SETUP: | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 552 TRACE_BINDUMP (cc_handle, | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 553 TC_USER4, | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 554 " Setup DL ", | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 555 payload, | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 556 length); | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 557 break; | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 558 case D_CONNECT: | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 559 TRACE_BINDUMP (cc_handle, | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 560 TC_USER4, | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 561 " Connect DL ", | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 562 payload, | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 563 length); | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 564 break; | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 565 case D_RECALL: | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 566 TRACE_BINDUMP (cc_handle, | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 567 TC_USER4, | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 568 " Recall DL ", | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 569 payload, | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 570 length); | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 571 break; | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 572 case B_CONNECT_ACK: | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 573 TRACE_BINDUMP (cc_handle, | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 574 TC_USER4, | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 575 " Connect Acknowledge DL ", | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 576 payload, | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 577 length); | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 578 break; | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 579 case B_USER_INFO: | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 580 TRACE_BINDUMP (cc_handle, | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 581 TC_USER4, | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 582 " User Information DL ", | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 583 payload, | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 584 length); | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 585 break; | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 586 case B_MODIFY_REJ: | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 587 TRACE_BINDUMP (cc_handle, | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 588 TC_USER4, | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 589 " Modification Reject DL ", | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 590 payload, | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 591 length); | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 592 break; | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 593 case B_MODIFY: | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 594 TRACE_BINDUMP (cc_handle, | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 595 TC_USER4, | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 596 " Call Modify DL ", | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 597 payload, | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 598 length); | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 599 break; | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 600 case D_HOLD_ACK: | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 601 TRACE_BINDUMP (cc_handle, | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 602 TC_USER4, | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 603 " Hold Acknowledge DL ", | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 604 payload, | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 605 length); | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 606 break; | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 607 case D_HOLD_REJ: | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 608 TRACE_BINDUMP (cc_handle, | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 609 TC_USER4, | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 610 " Hold Reject DL ", | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 611 payload, | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 612 length); | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 613 break; | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 614 case D_RETRIEVE_ACK: | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 615 TRACE_BINDUMP (cc_handle, | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 616 TC_USER4, | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 617 " Retrieve Acknowledge DL ", | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 618 payload, | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 619 length); | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 620 break; | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 621 case D_RETRIEVE_REJ: | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 622 TRACE_BINDUMP (cc_handle, | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 623 TC_USER4, | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 624 " Retrieve Reject DL ", | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 625 payload, | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 626 length); | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 627 break; | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 628 case B_MODIFY_COMP: | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 629 TRACE_BINDUMP (cc_handle, | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 630 TC_USER4, | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 631 " Modify Complete DL ", | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 632 payload, | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 633 length); | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 634 break; | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 635 case D_DISCONNECT: | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 636 TRACE_BINDUMP (cc_handle, | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 637 TC_USER4, | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 638 " Disconnect DL ", | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 639 payload, | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 640 length); | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 641 break; | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 642 case D_RELEASE_COMP: | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 643 TRACE_BINDUMP (cc_handle, | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 644 TC_USER4, | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 645 " Release Complete DL ", | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 646 payload, | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 647 length); | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 648 break; | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 649 case D_RELEASE: | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 650 TRACE_BINDUMP (cc_handle, | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 651 TC_USER4, | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 652 " Release DL ", | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 653 payload, | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 654 length); | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 655 break; | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 656 case D_STOP_DTMF_ACK: | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 657 TRACE_BINDUMP (cc_handle, | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 658 TC_USER4, | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 659 " Stop DTMF Acknowledge DL ", | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 660 payload, | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 661 length); | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 662 break; | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 663 case B_STATUS_ENQ: | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 664 TRACE_BINDUMP (cc_handle, | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 665 TC_USER4, | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 666 " Status Enquiry DL ", | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 667 payload, | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 668 length); | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 669 break; | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 670 case D_START_DTMF_ACK: | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 671 TRACE_BINDUMP (cc_handle, | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 672 TC_USER4, | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 673 " Start DTMF Acknowledge DL ", | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 674 payload, | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 675 length); | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 676 break; | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 677 case D_START_DTMF_REJ: | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 678 TRACE_BINDUMP (cc_handle, | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 679 TC_USER4, | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 680 " Start DTMF Reject DL ", | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 681 payload, | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 682 length); | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 683 break; | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 684 case B_CONGEST_CTRL: | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 685 TRACE_BINDUMP (cc_handle, | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 686 TC_USER4, | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 687 " Congestion Control DL ", | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 688 payload, | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 689 length); | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 690 break; | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 691 case D_FACILITY: | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 692 TRACE_BINDUMP (cc_handle, | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 693 TC_USER4, | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 694 " Facility DL ", | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 695 payload, | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 696 length); | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 697 break; | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 698 case B_STATUS: | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 699 TRACE_BINDUMP (cc_handle, | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 700 TC_USER4, | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 701 " Status DL ", | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 702 payload, | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 703 length); | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 704 break; | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 705 case B_NOTIFY: | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 706 TRACE_BINDUMP (cc_handle, | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 707 TC_USER4, | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 708 " Notify DL ", | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 709 payload, | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 710 length); | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 711 break; | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 712 default: | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 713 TRACE_EVENT("Unknown Message"); | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 714 break; | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 715 } /*switch(_decodedMsg[0]) */ | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 716 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 717 /* removing TI and PD header from data */ | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 718 data->sdu.l_buf -= 8; | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 719 data->sdu.o_buf += 8; | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 720 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 721 #if 0 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 722 #if defined TRACE_BCAP | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 723 cc_trace_bcap (cc_data, &data->sdu, DOWNLINK); | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 724 #endif /* #if defined TRACE_BCAP */ | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 725 #endif /* #if 0 */ | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 726 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 727 PFREE (data); | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 728 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 729 /* | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 730 * Only the range 0 to 63 is relevant for the cc message type. | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 731 */ | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 732 if (est_flag) | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 733 { | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 734 /* | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 735 * The message was received by MMCC_ESTABLISH_IND. | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 736 */ | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 737 UBYTE result; | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 738 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 739 switch (_decodedMsg[0]) | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 740 { | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 741 case D_SETUP: | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 742 if ((result = srv_define_ti ()) EQ NOT_PRESENT_8BIT) | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 743 { | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 744 /* | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 745 * Internal problem: CC has run out of call table entries. | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 746 * Release the call. | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 747 */ | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 748 if ( cc_data->ti_rec < 8) /* 24.008; ch. 8.3.1 c) */ | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 749 { | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 750 /* | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 751 * for a reasoning why CAUSE_USER_BUSY was chosen see the | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 752 * definition of UDUB in GSM 02.01! | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 753 */ | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 754 for_send_u_release_comp (M_CC_CAUSE_USER_BUSY); | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 755 return; | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 756 } | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 757 } | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 758 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 759 if (cc_data->ti_ext_pres EQ TRUE) | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 760 { | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 761 /* [ 24.008; ch. 8.3.1] | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 762 * The mobile station and network shall reject a SETUP, EMERGENCY SETUP or START CC | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 763 * message received with octet 1 part of the TI value coded as "111" by sending | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 764 * RELEASE COMPLETE with cause #81 "Invalid transaction identifier value" The TI value | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 765 * in RELEASE COMPLETE shall be the complete TI value including the extension octet | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 766 * from the message that caused the rejection. | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 767 */ | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 768 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 769 for_send_u_release_comp (M_CC_CAUSE_INVALID_TI); | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 770 return; | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 771 } | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 772 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 773 cc_data->index_ti = result; | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 774 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 775 break; | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 776 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 777 case B_STATUS: | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 778 break; | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 779 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 780 case D_RELEASE_COMP: | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 781 CCD_END; | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 782 for_rel_req (); | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 783 return; | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 784 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 785 default: | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 786 for_send_u_release_comp (M_CC_CAUSE_INVALID_TI); | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 787 return; | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 788 } /* switch (_decodedMsg[0]) */ | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 789 } | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 790 else | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 791 { | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 792 /* | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 793 * The message was received by MMCC_DATA_IND. | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 794 */ | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 795 if ((cc_data->index_ti = srv_convert_ti (cc_data->ti)) | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 796 EQ NOT_PRESENT_8BIT) | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 797 { | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 798 for_send_u_release_comp (M_CC_CAUSE_INVALID_TI); | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 799 return; | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 800 } | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 801 } | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 802 if (_decodedMsg[0] < 64) | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 803 { | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 804 JUMP (*mess_table [_decodedMsg[0] & 63]) (); | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 805 } | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 806 else | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 807 { | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 808 cc_unknown_message (); | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 809 } | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 810 } /* for_decode() */ | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 811 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 812 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 813 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 814 /* | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 815 +--------------------------------------------------------------------+ | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 816 | PROJECT : GSM-PS (6147) MODULE : CC_FOR | | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 817 | STATE : code ROUTINE : for_d_alert | | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 818 +--------------------------------------------------------------------+ | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 819 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 820 PURPOSE : Processing a D_ALERT message. | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 821 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 822 */ | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 823 GLOBAL void for_d_alert (void) | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 824 { | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 825 MCAST (alert, D_ALERT); | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 826 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 827 TRACE_FUNCTION ("for_d_alert()"); | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 828 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 829 if (alert->v_progress) | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 830 { | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 831 if (for_check_progress_indicator (&alert->progress) EQ FALSE) | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 832 { | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 833 for_set_optional_error (PROGRESS_IEI); | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 834 } | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 835 } | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 836 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 837 cc_alert (alert); | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 838 } | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 839 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 840 /* | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 841 +--------------------------------------------------------------------+ | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 842 | PROJECT : GSM-PS (6147) MODULE : CC_FOR | | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 843 | STATE : code ROUTINE : for_d_call_proceed | | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 844 +--------------------------------------------------------------------+ | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 845 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 846 PURPOSE : Processing a D_CALL_PROCEED message. | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 847 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 848 */ | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 849 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 850 GLOBAL void for_d_call_proceed (void) | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 851 { | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 852 MCAST (proceed, D_CALL_PROCEED); | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 853 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 854 TRACE_FUNCTION ("for_d_call_proceed()"); | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 855 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 856 if (proceed->v_repeat) | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 857 { | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 858 /* Repeat indicator present */ | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 859 if (for_check_repeat_indicator (proceed->repeat) EQ FALSE) | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 860 { | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 861 /* Repeat indicator contains garbage */ | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 862 for_set_optional_error (REPEAT_IEI); | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 863 } | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 864 if (!(proceed->v_bearer_cap AND proceed->v_bearer_cap_2)) | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 865 { | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 866 /* Repeat indicator, but not both bearer caps present */ | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 867 for_set_conditional_error (REPEAT_IEI); | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 868 } | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 869 } | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 870 else | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 871 { | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 872 /* No repeat indicator present */ | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 873 if (proceed->v_bearer_cap AND proceed->v_bearer_cap_2) | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 874 { | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 875 /* No repeat indicator, but both bearer caps present */ | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 876 for_set_conditional_error (REPEAT_IEI); | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 877 } | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 878 } | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 879 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 880 cc_call_proceeding (proceed); | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 881 } | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 882 /* | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 883 +--------------------------------------------------------------------+ | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 884 | PROJECT : GSM-PS (6147) MODULE : CC_FOR | | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 885 | STATE : code ROUTINE : for_d_connect | | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 886 +--------------------------------------------------------------------+ | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 887 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 888 PURPOSE : Processing a D_CONNECT message. | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 889 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 890 */ | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 891 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 892 GLOBAL void for_d_connect (void) | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 893 { | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 894 MCAST (connect, D_CONNECT); | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 895 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 896 TRACE_FUNCTION ("for_d_connect()"); | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 897 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 898 if (connect->v_progress) | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 899 { | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 900 if (for_check_progress_indicator (&connect->progress) EQ FALSE) | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 901 { | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 902 for_set_optional_error (PROGRESS_IEI); | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 903 } | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 904 } | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 905 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 906 if (connect->v_connect_num) | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 907 { | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 908 if (for_check_calling_party_bcd | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 909 ((T_M_CC_calling_num *)&connect->connect_num) EQ FALSE) | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 910 { | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 911 for_set_optional_error (CONNECTED_NUMBER_IEI); | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 912 } | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 913 } | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 914 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 915 if (connect->v_connect_subaddr) | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 916 { | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 917 if (for_check_calling_party_sub | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 918 ((T_M_CC_calling_subaddr *)&connect->connect_subaddr) EQ FALSE) | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 919 { | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 920 for_set_optional_error (CONNECTED_SUBADDR_IEI); | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 921 } | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 922 } | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 923 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 924 cc_connect (connect); | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 925 } | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 926 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 927 /* | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 928 +--------------------------------------------------------------------+ | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 929 | PROJECT : GSM-PS (6147) MODULE : CC_FOR | | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 930 | STATE : code ROUTINE : for_d_facility | | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 931 +--------------------------------------------------------------------+ | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 932 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 933 PURPOSE : Processing a D_FACILITY message. | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 934 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 935 */ | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 936 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 937 GLOBAL void for_d_facility (void) | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 938 { | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 939 MCAST (facility, D_FACILITY); | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 940 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 941 TRACE_FUNCTION ("for_d_facility()"); | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 942 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 943 cc_facility (facility); | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 944 } | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 945 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 946 /* | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 947 +--------------------------------------------------------------------+ | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 948 | PROJECT : GSM-PS (6147) MODULE : CC_FOR | | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 949 | STATE : code ROUTINE : for_d_disconnect | | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 950 +--------------------------------------------------------------------+ | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 951 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 952 PURPOSE : Processing a D_DISCONNECT message. | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 953 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 954 */ | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 955 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 956 GLOBAL void for_d_disconnect (void) | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 957 { | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 958 MCAST (disconnect, D_DISCONNECT); | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 959 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 960 TRACE_FUNCTION ("for_d_disconnect()"); | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 961 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 962 if (disconnect->v_progress) | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 963 { | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 964 if (for_check_progress_indicator (&disconnect->progress) EQ FALSE) | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 965 { | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 966 for_set_optional_error (PROGRESS_IEI); | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 967 } | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 968 } | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 969 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 970 if (for_check_cc_cause (&disconnect->cc_cause) EQ FALSE) | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 971 { | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 972 for_set_mandatory_error (CAUSE_IEI); | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 973 } | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 974 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 975 cc_disconnect (disconnect); | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 976 } | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 977 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 978 /* | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 979 +--------------------------------------------------------------------+ | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 980 | PROJECT : GSM-PS (6147) MODULE : CC_FOR | | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 981 | STATE : code ROUTINE : for_b_modify | | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 982 +--------------------------------------------------------------------+ | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 983 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 984 PURPOSE : Processing a B_MODIFY message. | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 985 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 986 */ | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 987 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 988 GLOBAL void for_b_modify (void) | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 989 { | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 990 MCAST (modify, B_MODIFY); | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 991 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 992 TRACE_FUNCTION ("for_b_modify()"); | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 993 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 994 cc_modify (modify); | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 995 } | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 996 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 997 /* | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 998 +--------------------------------------------------------------------+ | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 999 | PROJECT : GSM-PS (6147) MODULE : CC_FOR | | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1000 | STATE : code ROUTINE : for_b_modify_comp | | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1001 +--------------------------------------------------------------------+ | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1002 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1003 PURPOSE : Processing a B_MODIFY_COMP message. | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1004 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1005 */ | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1006 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1007 GLOBAL void for_b_modify_comp (void) | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1008 { | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1009 MCAST (modify_com, B_MODIFY_COMP); | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1010 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1011 TRACE_FUNCTION ("for_b_modify_comp()"); | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1012 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1013 cc_modify_complete (modify_com); | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1014 } | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1015 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1016 /* | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1017 +--------------------------------------------------------------------+ | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1018 | PROJECT : GSM-PS (6147) MODULE : CC_FOR | | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1019 | STATE : code ROUTINE : for_b_modify_rej | | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1020 +--------------------------------------------------------------------+ | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1021 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1022 PURPOSE : Processing a B_MODIFY_REJ message. | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1023 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1024 */ | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1025 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1026 GLOBAL void for_b_modify_rej (void) | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1027 { | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1028 MCAST (modify_rej, B_MODIFY_REJ); | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1029 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1030 TRACE_FUNCTION ("for_b_modify_rej()"); | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1031 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1032 if (for_check_cc_cause (&modify_rej->cc_cause) EQ FALSE) | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1033 { | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1034 for_set_mandatory_error (CAUSE_IEI); | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1035 } | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1036 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1037 cc_modify_reject (modify_rej); | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1038 } | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1039 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1040 /* | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1041 +--------------------------------------------------------------------+ | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1042 | PROJECT : GSM-PS (6147) MODULE : CC_FOR | | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1043 | STATE : code ROUTINE : for_b_notify | | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1044 +--------------------------------------------------------------------+ | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1045 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1046 PURPOSE : Processing a B_NOTIFY message. | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1047 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1048 Issue No 7674 : | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1049 Accept the message as according to Anite test case ETSI 11.10 clause 26.8.1.4.2 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1050 and do nothing,no need to send any Notification Indication to ACI.Also check the | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1051 State of the CC, if we get a Notify in CC State other than U10 and U26 then Send | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1052 STATUS message with cause "Message Type Incompatible" to the Network. | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1053 */ | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1054 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1055 GLOBAL void for_b_notify (void) | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1056 { | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1057 GET_INSTANCE_DATA; | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1058 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1059 TRACE_FUNCTION ("for_b_notify()"); | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1060 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1061 /* Processing an incoming notify message.*/ | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1062 switch (cc_data->state[cc_data->index_ti]) | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1063 { | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1064 /* | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1065 * CS_0 is handled by the formatter | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1066 */ | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1067 case M_CC_CS_10: | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1068 case M_CC_CS_26: | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1069 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1070 CCD_END; | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1071 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1072 break; | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1073 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1074 default: | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1075 CCD_END; | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1076 /* Implements Measure# 3 and streamline encoding */ | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1077 cc_send_status (M_CC_CAUSE_MESSAGE_TYPE_INCOMPAT); | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1078 break; | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1079 } | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1080 } | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1081 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1082 /* | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1083 +--------------------------------------------------------------------+ | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1084 | PROJECT : GSM-PS (6147) MODULE : CC_FOR | | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1085 | STATE : code ROUTINE : for_d_progress | | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1086 +--------------------------------------------------------------------+ | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1087 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1088 PURPOSE : Processing a D_PROGRESS message. | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1089 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1090 */ | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1091 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1092 GLOBAL void for_d_progress (void) | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1093 { | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1094 MCAST (progress, D_PROGRESS); | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1095 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1096 TRACE_FUNCTION ("for_d_progress()"); | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1097 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1098 if (for_check_progress_indicator (&progress->progress) EQ FALSE) | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1099 { | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1100 for_set_mandatory_error (PROGRESS_IEI); | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1101 } | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1102 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1103 cc_progress (progress); | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1104 } | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1105 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1106 /* | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1107 +--------------------------------------------------------------------+ | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1108 | PROJECT : GSM-PS (6147) MODULE : CC_FOR | | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1109 | STATE : code ROUTINE : for_d_release | | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1110 +--------------------------------------------------------------------+ | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1111 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1112 PURPOSE : Processing a D_RELEASE message. | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1113 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1114 */ | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1115 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1116 GLOBAL void for_d_release (void) | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1117 { | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1118 MCAST (release, D_RELEASE); | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1119 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1120 TRACE_FUNCTION ("for_d_release()"); | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1121 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1122 if (release->v_cc_cause) | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1123 { | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1124 if (for_check_cc_cause (&release->cc_cause) EQ FALSE) | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1125 { | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1126 for_set_optional_error (CAUSE_IEI); | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1127 } | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1128 } | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1129 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1130 if (release->v_cc_cause_2) | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1131 { | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1132 if (for_check_cc_cause ((T_M_CC_cc_cause*)&release->cc_cause_2) EQ FALSE) | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1133 { | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1134 for_set_optional_error (CAUSE_IEI); | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1135 } | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1136 } | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1137 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1138 cc_release (release); | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1139 } | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1140 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1141 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1142 /* | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1143 +--------------------------------------------------------------------+ | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1144 | PROJECT : GSM-PS (6147) MODULE : CC_FOR | | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1145 | STATE : code ROUTINE : for_d_release_complete | | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1146 +--------------------------------------------------------------------+ | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1147 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1148 PURPOSE : Processing a D_RELEASE_COMPLETE message. | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1149 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1150 */ | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1151 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1152 GLOBAL void for_d_release_comp (void) | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1153 { | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1154 MCAST (rel_comp, D_RELEASE_COMP); | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1155 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1156 TRACE_FUNCTION ("for_d_release_comp()"); | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1157 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1158 if (rel_comp->v_cc_cause) | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1159 { | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1160 if (for_check_cc_cause (&rel_comp->cc_cause) EQ FALSE) | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1161 { | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1162 for_set_optional_error (CAUSE_IEI); | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1163 } | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1164 } | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1165 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1166 cc_release_complete (rel_comp); | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1167 } | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1168 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1169 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1170 /* | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1171 +--------------------------------------------------------------------+ | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1172 | PROJECT : GSM-PS (6147) MODULE : CC_FOR | | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1173 | STATE : code ROUTINE : for_d_cc_establishment | | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1174 +--------------------------------------------------------------------+ | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1175 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1176 PURPOSE : Processing of a D_CC_ESTABLISHMENT message. | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1177 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1178 */ | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1179 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1180 GLOBAL void for_d_cc_establishment (void) | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1181 { | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1182 MCAST(cc_est, D_CC_ESTABLISHMENT); | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1183 T_U_SETUP * setup = NULL; | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1184 USHORT len_in_bits = (cc_est->setup_cont.c_setup_msg + 1) << 3; | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1185 BYTE result; | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1186 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1187 TRACE_FUNCTION ("for_d_cc_establishment()"); | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1188 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1189 /* | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1190 * Decode uplink setup message delivered in setup container. | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1191 */ | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1192 { | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1193 PALLOC_SDU (data, MMCM_DATA_REQ, len_in_bits); | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1194 memcpy(&data->sdu.buf[1], | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1195 cc_est->setup_cont.setup_msg, | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1196 cc_est->setup_cont.c_setup_msg); | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1197 data->sdu.buf[0] = U_SETUP; | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1198 data->sdu.l_buf = len_in_bits; | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1199 data->sdu.o_buf = 0; | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1200 result = ccd_decodeMsg (CCDENT_CC, | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1201 UPLINK, | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1202 (T_MSGBUF *) &data->sdu, | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1203 (UBYTE *) _decodedMsg, | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1204 NOT_PRESENT_8BIT); | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1205 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1206 setup = (T_U_SETUP *)_decodedMsg; | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1207 PFREE (data); | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1208 } | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1209 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1210 if (result NEQ ccdOK) | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1211 { | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1212 USHORT parlist[6]; | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1213 UBYTE first_err; | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1214 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1215 memset (parlist,0, sizeof (parlist)); | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1216 first_err = ccd_getFirstError (CCDENT_CC, parlist); | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1217 /* | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1218 * Error Handling | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1219 */ | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1220 switch (first_err) | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1221 { | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1222 case ERR_COMPREH_REQUIRED: /* comprehension required */ | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1223 for_set_mandatory_error ((UBYTE)parlist[0]); | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1224 break; | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1225 case ERR_MAND_ELEM_MISS: /* Mandatory elements missing */ | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1226 /* | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1227 * Error handling is carried out by checking the content. | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1228 */ | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1229 break; | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1230 } | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1231 } | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1232 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1233 /* Check repeat indicator bearer capabilities */ | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1234 if (setup->v_repeat ) | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1235 { | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1236 if (for_check_repeat_indicator (setup->repeat) EQ FALSE) | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1237 { | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1238 for_set_optional_error (REPEAT_IEI); | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1239 } | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1240 } | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1241 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1242 /* Check presence of bearer capability I */ | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1243 if (setup->v_bearer_cap) | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1244 { | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1245 /* Compability check not done here */ | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1246 } | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1247 else | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1248 for_set_mandatory_error (BEARER_CAP_IEI); | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1249 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1250 /* Check calling party subaddress */ | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1251 if (setup->v_calling_subaddr) | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1252 { | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1253 if (for_check_calling_party_sub (&setup->calling_subaddr) EQ FALSE) | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1254 { | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1255 for_set_optional_error (CALLING_PARTY_SUB_IEI); | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1256 } | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1257 } | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1258 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1259 /* Check called party BCD number */ | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1260 if (setup->v_ul_called_num) | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1261 { | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1262 if (for_check_called_party_bcd (setup->ul_called_num.ton, | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1263 setup->ul_called_num.npi) EQ FALSE) | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1264 { | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1265 for_set_mandatory_error (CALLED_PARTY_BCD_IEI); | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1266 } | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1267 } | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1268 else | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1269 { | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1270 for_set_mandatory_error (CALLED_PARTY_BCD_IEI); | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1271 } | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1272 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1273 /* Check called party subaddress */ | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1274 if (setup->v_called_subaddr) | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1275 { | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1276 if (for_check_called_party_sub (&setup->called_subaddr) EQ FALSE) | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1277 { | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1278 for_set_optional_error (CALLED_PARTY_SUB_IEI); | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1279 } | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1280 } | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1281 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1282 /* Check LLC repeat indicator */ | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1283 if (setup->v_repeat_2) | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1284 { | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1285 if (for_check_repeat_indicator (setup->repeat_2) EQ FALSE) | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1286 { | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1287 for_set_optional_error (REPEAT_IEI); | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1288 } | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1289 } | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1290 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1291 /* Check HLC repeat indicator */ | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1292 if (setup->v_repeat_3) | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1293 { | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1294 if (for_check_repeat_indicator (setup->repeat_3) EQ FALSE) | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1295 { | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1296 for_set_optional_error (REPEAT_IEI); | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1297 } | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1298 } | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1299 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1300 /* Check BC repeat indicator conditions */ | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1301 if (setup->v_repeat) | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1302 { | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1303 if (!(setup->v_bearer_cap AND setup->v_bearer_cap_2)) | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1304 { | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1305 cc_for_set_conditional_error (REPEAT_IEI); | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1306 } | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1307 } | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1308 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1309 /* Check LLC repeat indicator conditions */ | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1310 if (setup->v_repeat_2) | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1311 { | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1312 if (!(setup->v_bearer_cap | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1313 AND setup->v_low_layer_comp | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1314 AND (setup->v_repeat EQ setup->v_repeat_2))) | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1315 { | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1316 cc_for_set_conditional_error (REPEAT_IEI); | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1317 } | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1318 } | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1319 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1320 /* Check second LLC IE condition */ | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1321 if (setup->v_low_layer_comp_2) | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1322 { | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1323 if (!setup->v_repeat_2) | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1324 { | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1325 cc_for_set_conditional_error (REPEAT_IEI); | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1326 } | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1327 } | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1328 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1329 /* Check HLC repeat indicator conditions */ | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1330 if (setup->v_high_layer_comp_2) | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1331 { | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1332 if (!(setup->v_repeat AND setup->v_high_layer_comp)) | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1333 { | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1334 cc_for_set_conditional_error (REPEAT_IEI); | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1335 } | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1336 } | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1337 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1338 /* Check second HLC IE condition */ | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1339 if (setup->v_high_layer_comp) | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1340 { | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1341 if (!setup->v_repeat_3) | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1342 { | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1343 cc_for_set_conditional_error (REPEAT_IEI); | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1344 } | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1345 } | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1346 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1347 /* | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1348 * The only interesting part of the CC ESTABLISHMENT message | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1349 * is the setup container, so only this is delivered | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1350 */ | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1351 cc_cc_establishment (setup); | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1352 } | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1353 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1354 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1355 /* | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1356 +--------------------------------------------------------------------+ | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1357 | PROJECT : GSM-PS (6147) MODULE : CC_FOR | | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1358 | STATE : code ROUTINE : for_d_cc_establishment | | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1359 +--------------------------------------------------------------------+ | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1360 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1361 PURPOSE : Processing of a D_RECALL message. | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1362 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1363 */ | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1364 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1365 GLOBAL void for_d_recall (void) | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1366 { | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1367 MCAST (recall, D_RECALL); | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1368 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1369 TRACE_FUNCTION ("for_d_recall()"); | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1370 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1371 cc_recall(recall); | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1372 } | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1373 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1374 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1375 /* | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1376 +--------------------------------------------------------------------+ | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1377 | PROJECT : GSM-PS (6147) MODULE : CC_FOR | | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1378 | STATE : code ROUTINE : for_d_setup | | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1379 +--------------------------------------------------------------------+ | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1380 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1381 PURPOSE : Processing a D_SETUP message. | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1382 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1383 */ | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1384 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1385 GLOBAL void for_d_setup (void) | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1386 { | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1387 MCAST (setup, D_SETUP); | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1388 UBYTE rep_cnt = 0; | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1389 UBYTE bc_cnt = 0; | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1390 UBYTE lc_cnt = 0; | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1391 UBYTE hc_cnt = 0; | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1392 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1393 TRACE_FUNCTION ("for_d_setup()"); | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1394 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1395 if (setup->v_repeat) | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1396 { | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1397 if (for_check_repeat_indicator (setup->repeat) EQ FALSE) | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1398 { | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1399 for_set_optional_error (REPEAT_IEI); | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1400 } | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1401 } | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1402 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1403 if (setup->v_progress) | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1404 { | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1405 if (for_check_progress_indicator (&setup->progress) EQ FALSE) | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1406 { | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1407 for_set_optional_error (PROGRESS_IEI); | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1408 } | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1409 } | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1410 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1411 if (setup->v_signal) | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1412 { | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1413 if (for_check_signal (setup->signal) EQ FALSE) | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1414 { | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1415 for_set_optional_error (SIGNAL_IEI); | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1416 } | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1417 } | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1418 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1419 if (setup->v_calling_num) | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1420 { | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1421 if (for_check_calling_party_bcd (&setup->calling_num) EQ FALSE) | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1422 { | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1423 for_set_optional_error (CALLING_PARTY_BCD_IEI); | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1424 } | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1425 } | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1426 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1427 if (setup->v_calling_subaddr) | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1428 { | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1429 if (for_check_calling_party_sub (&setup->calling_subaddr) EQ FALSE) | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1430 { | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1431 for_set_optional_error (CALLING_PARTY_SUB_IEI); | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1432 } | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1433 } | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1434 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1435 if (setup->v_dl_called_num) | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1436 { | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1437 if (for_check_called_party_bcd (setup->dl_called_num.ton, | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1438 setup->dl_called_num.npi) EQ FALSE) | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1439 { | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1440 for_set_optional_error (CALLED_PARTY_BCD_IEI); | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1441 } | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1442 } | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1443 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1444 if (setup->v_called_subaddr) | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1445 { | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1446 if (for_check_called_party_sub (&setup->called_subaddr) EQ FALSE) | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1447 { | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1448 for_set_optional_error (CALLED_PARTY_SUB_IEI); | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1449 } | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1450 } | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1451 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1452 if (setup->v_repeat_2) | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1453 { | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1454 if (for_check_repeat_indicator (setup->repeat_2) EQ FALSE) | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1455 { | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1456 for_set_optional_error (REPEAT_IEI); | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1457 } | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1458 } | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1459 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1460 if (setup->v_repeat_3) | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1461 { | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1462 if (for_check_repeat_indicator (setup->repeat_3) EQ FALSE) | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1463 { | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1464 for_set_optional_error (REPEAT_IEI); | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1465 } | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1466 } | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1467 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1468 rep_cnt = setup->v_repeat + | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1469 setup->v_repeat_2 + | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1470 setup->v_repeat_3; | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1471 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1472 bc_cnt = setup->v_bearer_cap + | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1473 setup->v_bearer_cap_2; | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1474 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1475 lc_cnt = setup->v_low_layer_comp + | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1476 setup->v_low_layer_comp_2; | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1477 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1478 hc_cnt = setup->v_high_layer_comp + | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1479 setup->v_high_layer_comp_2; | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1480 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1481 switch (rep_cnt) | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1482 { | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1483 case 0: | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1484 if ((bc_cnt EQ 2) OR | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1485 (lc_cnt EQ 2) OR | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1486 (hc_cnt EQ 2)) | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1487 { | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1488 for_set_conditional_error (REPEAT_IEI); | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1489 } | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1490 break; | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1491 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1492 case 1: | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1493 if ((bc_cnt NEQ 2) OR | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1494 (lc_cnt EQ 2) OR | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1495 (hc_cnt EQ 2)) | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1496 { | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1497 for_set_conditional_error (REPEAT_IEI); | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1498 } | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1499 break; | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1500 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1501 case 2: | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1502 if ((bc_cnt NEQ 2) OR | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1503 (lc_cnt NEQ 2) OR | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1504 (hc_cnt EQ 2)) | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1505 { | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1506 for_set_conditional_error (REPEAT_IEI); | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1507 } | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1508 break; | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1509 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1510 case 3: | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1511 if ((bc_cnt NEQ 2) OR | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1512 (lc_cnt NEQ 2) OR | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1513 (hc_cnt NEQ 2)) | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1514 { | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1515 for_set_conditional_error (REPEAT_IEI); | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1516 } | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1517 break; | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1518 } | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1519 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1520 cc_setup (setup); | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1521 } | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1522 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1523 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1524 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1525 /* | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1526 +--------------------------------------------------------------------+ | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1527 | PROJECT : GSM-PS (6147) MODULE : CC_FOR | | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1528 | STATE : code ROUTINE : for_d_start_dtmf_ack | | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1529 +--------------------------------------------------------------------+ | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1530 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1531 PURPOSE : Processing a D_START_DTMF_ACK message. | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1532 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1533 */ | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1534 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1535 GLOBAL void for_d_start_dtmf_ack (void) | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1536 { | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1537 MCAST (start_ack, D_START_DTMF_ACK); | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1538 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1539 TRACE_FUNCTION ("for_d_start_dtmf_ack()"); | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1540 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1541 cc_start_dtmf_ack (start_ack); | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1542 } | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1543 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1544 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1545 /* | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1546 +--------------------------------------------------------------------+ | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1547 | PROJECT : GSM-PS (6147) MODULE : CC_FOR | | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1548 | STATE : code ROUTINE : for_d_start_dtmf_rej | | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1549 +--------------------------------------------------------------------+ | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1550 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1551 PURPOSE : Processing a D_START_DTMF_REJ message. | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1552 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1553 */ | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1554 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1555 GLOBAL void for_d_start_dtmf_rej (void) | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1556 { | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1557 MCAST (start_rej, D_START_DTMF_REJ); | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1558 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1559 TRACE_FUNCTION ("for_d_start_dtmf_rej()"); | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1560 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1561 if (for_check_cc_cause (&start_rej->cc_cause) EQ FALSE) | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1562 { | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1563 for_set_mandatory_error (CAUSE_IEI); | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1564 } | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1565 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1566 cc_start_dtmf_rej (start_rej); | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1567 } | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1568 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1569 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1570 /* | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1571 +--------------------------------------------------------------------+ | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1572 | PROJECT : GSM-PS (6147) MODULE : CC_FOR | | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1573 | STATE : code ROUTINE : for_b_status | | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1574 +--------------------------------------------------------------------+ | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1575 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1576 PURPOSE : Processing a B_STATUS message. | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1577 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1578 */ | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1579 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1580 GLOBAL void for_b_status (void) | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1581 { | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1582 MCAST (status, B_STATUS); /* T_B_STATUS */ | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1583 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1584 TRACE_FUNCTION ("for_b_status()"); | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1585 if (for_check_cc_cause (&status->cc_cause) EQ FALSE) | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1586 { | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1587 for_set_mandatory_error (CAUSE_IEI); | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1588 } | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1589 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1590 for_check_call_state (&status->call_state); | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1591 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1592 cc_status (status); | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1593 } | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1594 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1595 /* | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1596 +--------------------------------------------------------------------+ | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1597 | PROJECT : GSM-PS (6147) MODULE : CC_FOR | | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1598 | STATE : code ROUTINE : for_d_hold_rej | | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1599 +--------------------------------------------------------------------+ | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1600 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1601 PURPOSE : Processing a D_HOLD_REJ message. | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1602 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1603 */ | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1604 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1605 GLOBAL void for_d_hold_rej (void) | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1606 { | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1607 MCAST (hold_rej, D_HOLD_REJ); | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1608 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1609 TRACE_FUNCTION ("for_d_hold_rej()"); | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1610 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1611 if (for_check_cc_cause (&hold_rej->cc_cause) EQ FALSE) | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1612 { | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1613 for_set_mandatory_error (CAUSE_IEI); | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1614 } | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1615 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1616 cc_hold_rej (hold_rej); | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1617 } | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1618 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1619 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1620 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1621 /* | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1622 +--------------------------------------------------------------------+ | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1623 | PROJECT : GSM-PS (6147) MODULE : CC_FOR | | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1624 | STATE : code ROUTINE : for_d_retrieve_rej | | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1625 +--------------------------------------------------------------------+ | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1626 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1627 PURPOSE : Processing a D_RETRIEVE_REJ message. | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1628 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1629 */ | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1630 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1631 GLOBAL void for_d_retrieve_rej (void) | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1632 { | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1633 MCAST (retrieve_rej, D_RETRIEVE_REJ); | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1634 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1635 TRACE_FUNCTION ("for_d_retrieve_rej()"); | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1636 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1637 if (for_check_cc_cause (&retrieve_rej->cc_cause) EQ FALSE) | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1638 { | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1639 for_set_mandatory_error (CAUSE_IEI); | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1640 } | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1641 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1642 cc_retrieve_rej (retrieve_rej); | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1643 } | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1644 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1645 /* | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1646 +--------------------------------------------------------------------+ | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1647 | PROJECT : GSM-PS (6147) MODULE : CC_FOR | | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1648 | STATE : code ROUTINE : for_b_congest_ctrl | | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1649 +--------------------------------------------------------------------+ | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1650 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1651 PURPOSE : Processing a B_CONGEST_CTRL message. | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1652 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1653 */ | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1654 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1655 GLOBAL void for_b_congest_ctrl (void) | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1656 { | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1657 MCAST (cong, B_CONGEST_CTRL); | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1658 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1659 TRACE_FUNCTION ("for_b_congest_ctrl()"); | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1660 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1661 if (cong->v_cc_cause) | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1662 { | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1663 if (for_check_cc_cause (&cong->cc_cause) EQ FALSE) | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1664 { | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1665 for_set_optional_error (CAUSE_IEI); | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1666 } | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1667 } | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1668 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1669 cc_congestion_control (cong); | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1670 } | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1671 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1672 /* | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1673 +--------------------------------------------------------------------+ | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1674 | PROJECT : GSM-PS (6147) MODULE : CC_FOR | | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1675 | STATE : code ROUTINE : for_b_user_information | | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1676 +--------------------------------------------------------------------+ | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1677 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1678 PURPOSE : Processing a B_USER_INFORMATION message. | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1679 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1680 */ | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1681 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1682 GLOBAL void for_b_user_information (void) | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1683 { | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1684 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1685 MCAST (user, B_USER_INFO); | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1686 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1687 TRACE_FUNCTION ("for_b_user_information()"); | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1688 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1689 cc_user_information (user); | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1690 } | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1691 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1692 /* | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1693 +--------------------------------------------------------------------+ | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1694 | PROJECT : GSM-PS (6147) MODULE : CC_FOR | | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1695 | STATE : code ROUTINE : for_mmcm_sync_ind | | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1696 +--------------------------------------------------------------------+ | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1697 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1698 PURPOSE : Processing the primitive MMCC_SYNC_IND from mobility | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1699 management. | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1700 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1701 */ | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1702 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1703 GLOBAL void for_mmcm_sync_ind (T_MMCM_SYNC_IND * sync) | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1704 { | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1705 GET_INSTANCE_DATA; | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1706 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1707 TRACE_FUNCTION ("for_mmcm_sync_ind()"); | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1708 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1709 cc_data->ti = sync->ti; | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1710 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1711 EM_CC_CHANNEL_MODE_CHANGE; | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1712 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1713 cc_sync_ind (sync); | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1714 } | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1715 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1716 /* | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1717 +--------------------------------------------------------------------+ | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1718 | PROJECT : GSM-PS (6147) MODULE : CC_FOR | | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1719 | STATE : code ROUTINE : for_mmcm_est_cnf | | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1720 +--------------------------------------------------------------------+ | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1721 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1722 PURPOSE : Processing the primitive MMCC_EST_CNF from mobility | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1723 management. | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1724 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1725 */ | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1726 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1727 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1728 GLOBAL void for_mmcm_est_cnf (T_MMCM_ESTABLISH_CNF * est_cnf) | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1729 { | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1730 GET_INSTANCE_DATA; | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1731 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1732 TRACE_FUNCTION ("for_mmcm_est_cnf()"); | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1733 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1734 cc_data->ti = est_cnf->ti; | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1735 if ((cc_data->index_ti = srv_convert_ti (cc_data->ti)) | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1736 NEQ NOT_PRESENT_8BIT) | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1737 { | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1738 cc_est_cnf (); | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1739 } | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1740 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1741 EM_CC_MM_CONNECTION_ESTABLISHED_MO; | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1742 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1743 PFREE (est_cnf); | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1744 } | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1745 /* | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1746 +--------------------------------------------------------------------+ | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1747 | PROJECT : GSM-PS (6147) MODULE : CC_FOR | | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1748 | STATE : code ROUTINE : for_mmcm_rel_ind | | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1749 +--------------------------------------------------------------------+ | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1750 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1751 PURPOSE : Processing the primitive MMCC_REL_IND from mobility | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1752 management. | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1753 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1754 */ | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1755 GLOBAL void for_mmcm_rel_ind (T_MMCM_RELEASE_IND * rel_ind) | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1756 { | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1757 GET_INSTANCE_DATA; | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1758 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1759 TRACE_FUNCTION ("for_mmcm_rel_ind()"); | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1760 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1761 cc_data->ti = rel_ind->ti; | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1762 if ((cc_data->index_ti = srv_convert_ti (cc_data->ti)) | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1763 NEQ NOT_PRESENT_8BIT) | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1764 { | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1765 cc_rel_ind (rel_ind->cause); | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1766 } | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1767 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1768 EM_CC_LOSS_OF_CONNECTION; | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1769 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1770 PFREE (rel_ind); | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1771 } | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1772 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1773 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1774 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1775 /* | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1776 +--------------------------------------------------------------------+ | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1777 | PROJECT : GSM-PS (6147) MODULE : CC_FOR | | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1778 | STATE : code ROUTINE : for_mmcm_prompt_ind | | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1779 +--------------------------------------------------------------------+ | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1780 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1781 PURPOSE : Processing the primitive MMCC_PROMPT_IND from mobility | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1782 management. In the CC entity nothing is done with the | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1783 primitve, a transaction identifier still is not assigned. | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1784 The reception of the primitive only causes the emission | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1785 of MNCC_PROMPT_IND to upper layers. | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1786 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1787 */ | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1788 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1789 GLOBAL void for_mmcm_prompt_ind (T_MMCM_PROMPT_IND * mmcm_prompt_ind) | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1790 { | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1791 TRACE_FUNCTION ("for_mmcm_prompt_ind()"); | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1792 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1793 PFREE (mmcm_prompt_ind); | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1794 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1795 { | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1796 PALLOC (mncc_prompt_ind, MNCC_PROMPT_IND); | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1797 PSENDX (MMI, mncc_prompt_ind); | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1798 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1799 // EM2 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1800 } | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1801 } | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1802 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1803 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1804 /* | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1805 +--------------------------------------------------------------------+ | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1806 | PROJECT : GSM-PS (6147) MODULE : CC_FOR | | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1807 | STATE : code ROUTINE : for_mmcm_err_ind | | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1808 +--------------------------------------------------------------------+ | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1809 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1810 PURPOSE : Processing the primitive MMCC_ERR_IND from mobility | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1811 management. | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1812 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1813 */ | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1814 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1815 GLOBAL void for_mmcm_err_ind (T_MMCM_ERROR_IND * err_ind) | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1816 { | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1817 GET_INSTANCE_DATA; | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1818 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1819 TRACE_FUNCTION ("for_mmcm_err_ind()"); | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1820 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1821 EM_CC_MM_CONNECTION_FAILED; | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1822 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1823 cc_data->ti = err_ind->ti; | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1824 if ((cc_data->index_ti = srv_convert_ti (cc_data->ti)) | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1825 NEQ NOT_PRESENT_8BIT) | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1826 { | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1827 cc_err_ind (err_ind); | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1828 } | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1829 } | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1830 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1831 /* | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1832 +--------------------------------------------------------------------+ | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1833 | PROJECT : GSM-PS (6147) MODULE : CC_FOR | | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1834 | STATE : code ROUTINE : for_mmcm_reest_cnf | | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1835 +--------------------------------------------------------------------+ | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1836 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1837 PURPOSE : Processing the primitive MMCC_REEST_CNF from mobility | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1838 management. | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1839 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1840 */ | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1841 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1842 GLOBAL void for_mmcm_reest_cnf (T_MMCM_REESTABLISH_CNF * reest_cnf) | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1843 { | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1844 GET_INSTANCE_DATA; | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1845 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1846 TRACE_FUNCTION ("for_mmcm_reest_cnf()"); | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1847 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1848 cc_data->ti = reest_cnf->ti; | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1849 if ((cc_data->index_ti = srv_convert_ti (cc_data->ti)) | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1850 NEQ NOT_PRESENT_8BIT) | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1851 { | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1852 cc_reest_cnf (); | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1853 } | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1854 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1855 EM_CC_REESTABLISHED_SUCCESSFUL; | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1856 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1857 PFREE (reest_cnf); | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1858 } | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1859 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1860 /* | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1861 +--------------------------------------------------------------------+ | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1862 | PROJECT : GSM-PS (6147) MODULE : CC_FOR | | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1863 | STATE : code ROUTINE : for_est_req | | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1864 +--------------------------------------------------------------------+ | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1865 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1866 PURPOSE : Build the primitive MMCC_EST_REQ and send them to | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1867 mobility management. | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1868 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1869 */ | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1870 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1871 GLOBAL void for_est_req (T_MMCM_ESTABLISH_REQ * mmcm_establish_req) | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1872 { | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1873 TRACE_FUNCTION ("for_est_req()"); | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1874 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1875 EM_CC_START_MO_CALL; /*Needs perhaps a review */ | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1876 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1877 PSENDX (MM, mmcm_establish_req); | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1878 } | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1879 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1880 /* | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1881 +--------------------------------------------------------------------+ | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1882 | PROJECT : GSM-PS (6147) MODULE : CC_FOR | | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1883 | STATE : code ROUTINE : for_rel_req | | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1884 +--------------------------------------------------------------------+ | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1885 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1886 PURPOSE : Build the primitive MMCC_RELEASE_REQ and send them to | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1887 mobility management. | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1888 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1889 */ | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1890 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1891 GLOBAL void for_rel_req (void) | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1892 { | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1893 GET_INSTANCE_DATA; | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1894 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1895 PALLOC (rel, MMCM_RELEASE_REQ); | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1896 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1897 TRACE_FUNCTION ("for_rel_req()"); | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1898 rel->org_entity = NAS_ORG_ENTITY_CC; | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1899 rel->ti = cc_data->ti; | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1900 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1901 PSENDX (MM, rel); | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1902 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1903 EM_CC_RELEASE_SENT; | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1904 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1905 if (cc_data->ti NEQ cc_data->setup_reattempt_ti) | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1906 { | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1907 srv_free_ti (); | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1908 } | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1909 } | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1910 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1911 /* | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1912 +--------------------------------------------------------------------+ | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1913 | PROJECT : GSM-PS (6147) MODULE : CC_FOR | | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1914 | STATE : code ROUTINE : for_reest_req | | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1915 +--------------------------------------------------------------------+ | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1916 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1917 PURPOSE : Build the primitive MMCC_REEST_REQ and send them to | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1918 mobility management. | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1919 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1920 */ | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1921 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1922 GLOBAL void for_reest_req (void) | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1923 { | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1924 GET_INSTANCE_DATA; | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1925 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1926 PALLOC (reest, MMCM_REESTABLISH_REQ); | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1927 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1928 TRACE_FUNCTION ("for_reest_req()"); | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1929 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1930 reest->ti = cc_data->ti; | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1931 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1932 PSENDX (MM, reest); | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1933 } | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1934 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1935 /* | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1936 +--------------------------------------------------------------------+ | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1937 | PROJECT : GSM-PS (6147) MODULE : CC_FOR | | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1938 | STATE : code ROUTINE : for_start_cc | | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1939 +--------------------------------------------------------------------+ | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1940 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1941 PURPOSE : Code the START CC message and send it to MM. | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1942 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1943 */ | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1944 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1945 GLOBAL void for_start_cc (T_U_START_CC * start_cc) | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1946 { | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1947 TRACE_FUNCTION ("for_start_cc()"); | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1948 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1949 /* Implements Measure# 38 */ | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1950 code_msg ((UBYTE *)start_cc, BSIZE_U_START_CC); | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1951 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1952 } | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1953 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1954 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1955 /* | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1956 +--------------------------------------------------------------------+ | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1957 | PROJECT : GSM-PS (6147) MODULE : CC_FOR | | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1958 | STATE : code ROUTINE : for_cc_est_confirm | | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1959 +--------------------------------------------------------------------+ | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1960 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1961 PURPOSE : Code the CC EST. CONFIRMED message and send it to MM. | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1962 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1963 */ | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1964 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1965 GLOBAL void for_cc_est_confirm (T_U_CC_EST_CONF * est_cnf) | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1966 { | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1967 TRACE_FUNCTION ("for_cc_est_confirm()"); | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1968 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1969 /* Implements Measure# 38 */ | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1970 code_msg ((UBYTE *)est_cnf, BSIZE_U_CC_EST_CONF); | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1971 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1972 } | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1973 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1974 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1975 /* | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1976 +--------------------------------------------------------------------+ | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1977 | PROJECT : GSM-PS (6147) MODULE : CC_FOR | | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1978 | STATE : code ROUTINE : for_setup | | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1979 +--------------------------------------------------------------------+ | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1980 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1981 PURPOSE : Code the message setup. The setup | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1982 message is here not sent to MM, but stored. | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1983 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1984 */ | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1985 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1986 GLOBAL void for_setup (T_U_SETUP * setup) | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1987 { | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1988 GET_INSTANCE_DATA; | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1989 /* | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1990 * the maximum length of the outgoing setup message is 128 Bytes plus | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1991 * the length of the outgoing facility element | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1992 */ | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1993 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1994 USHORT len_in_bits = LEN_U_SETUP; | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1995 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1996 if (setup->v_facility) | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1997 len_in_bits += setup->facility.c_fac * 8; | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1998 { | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1999 PALLOC_SDU (data, MMCM_DATA_REQ, len_in_bits); | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2000 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2001 TRACE_FUNCTION ("for_setup()"); | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2002 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2003 data->sdu.o_buf = CC_ENCODE_OFFSET; | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2004 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2005 ccd_codeMsg (CCDENT_CC, | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2006 UPLINK, | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2007 (T_MSGBUF *) &data->sdu, | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2008 (UBYTE *) setup, | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2009 NOT_PRESENT_8BIT); | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2010 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2011 EM_CC_SENT_SETUP_MESSAGE;/*lint !e416 (creation of out-of-bounds pointer)*/ | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2012 #if 0 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2013 #if defined TRACE_BCAP | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2014 cc_trace_bcap (cc_data, &data->sdu, UPLINK); | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2015 #endif | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2016 #endif /* #if 0 */ | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2017 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2018 srv_free_stored_setup (); /* Security */ | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2019 cc_data->stored_setup = data; | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2020 } | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2021 } | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2022 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2023 /* | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2024 +--------------------------------------------------------------------+ | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2025 | PROJECT : GSM-PS (6147) MODULE : CC_FOR | | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2026 | STATE : code ROUTINE : for_emergency_setup | | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2027 +--------------------------------------------------------------------+ | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2028 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2029 PURPOSE : Code the message emergency setup. The emergency setup | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2030 message is here not sent to MM, but stored. | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2031 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2032 */ | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2033 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2034 GLOBAL void for_emergency_setup (T_U_EMERGE_SETUP * emerg_setup) | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2035 { | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2036 GET_INSTANCE_DATA; | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2037 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2038 PALLOC_MSG (data, MMCM_DATA_REQ, U_EMERGE_SETUP); | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2039 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2040 TRACE_FUNCTION ("for_emergency_setup()"); | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2041 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2042 data->sdu.o_buf = CC_ENCODE_OFFSET; | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2043 ccd_codeMsg (CCDENT_CC, | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2044 UPLINK, | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2045 (T_MSGBUF *) &data->sdu, | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2046 (UBYTE *) emerg_setup, | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2047 NOT_PRESENT_8BIT); | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2048 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2049 EM_CC_SENT_EMERGENCY_SETUP_MESSAGE; | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2050 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2051 srv_free_stored_setup (); /* Security */ | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2052 cc_data->stored_setup = data; | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2053 } | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2054 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2055 /* | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2056 +--------------------------------------------------------------------+ | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2057 | PROJECT : GSM-PS (6147) MODULE : CC_FOR | | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2058 | STATE : code ROUTINE : for_status | | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2059 +--------------------------------------------------------------------+ | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2060 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2061 PURPOSE : Code the message status and send them to | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2062 mobility management. | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2063 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2064 */ | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2065 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2066 GLOBAL void for_status (T_B_STATUS * status) | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2067 { | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2068 TRACE_FUNCTION ("for_status()"); | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2069 /* Implements Measure# 22 */ | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2070 code_msg ((UBYTE *)status, BSIZE_B_STATUS); | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2071 EM_CC_STATUS_SENT; | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2072 } | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2073 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2074 /* | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2075 +--------------------------------------------------------------------+ | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2076 | PROJECT : GSM-PS (6147) MODULE : CC_FOR | | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2077 | STATE : code ROUTINE : for_release_complete | | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2078 +--------------------------------------------------------------------+ | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2079 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2080 PURPOSE : Code the message release_complete and send them to | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2081 mobility management. | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2082 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2083 */ | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2084 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2085 GLOBAL void for_release_complete (T_U_RELEASE_COMP * rel_com) | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2086 { | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2087 GET_INSTANCE_DATA; | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2088 /* | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2089 * the sdu has a maximum length of 34 bytes. | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2090 * User-User, facility and ss version are never used | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2091 */ | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2092 PALLOC_SDU (data, MMCM_DATA_REQ, LEN_U_RELEASE_COMPLETE); | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2093 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2094 TRACE_FUNCTION ("for_release_complete()"); | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2095 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2096 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2097 if (cc_data->ti_ext_pres EQ TRUE) | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2098 { | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2099 data->sdu.o_buf = (USHORT)(CC_ENCODE_OFFSET+8); /* additional byte for extended TI */ | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2100 } | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2101 else | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2102 { | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2103 data->sdu.o_buf = CC_ENCODE_OFFSET; | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2104 } | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2105 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2106 ccd_codeMsg (CCDENT_CC, | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2107 UPLINK, | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2108 (T_MSGBUF *) &data->sdu, | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2109 (UBYTE *) rel_com, | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2110 NOT_PRESENT_8BIT); | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2111 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2112 EM_CC_RELEASE_COMPLETE_SENT; | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2113 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2114 for_pd (data); | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2115 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2116 } | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2117 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2118 /* | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2119 +--------------------------------------------------------------------+ | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2120 | PROJECT : GSM-PS (6147) MODULE : CC_FOR | | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2121 | STATE : code ROUTINE : for_disconnect | | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2122 +--------------------------------------------------------------------+ | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2123 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2124 PURPOSE : Code the message disconnect and send them to | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2125 mobility management. | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2126 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2127 */ | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2128 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2129 GLOBAL void for_disconnect (T_U_DISCONNECT * disconnect) | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2130 { | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2131 /* | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2132 * The mandatory part has a length of 33 bytes. | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2133 * User-User, facility and ss version are never used. | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2134 */ | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2135 TRACE_FUNCTION ("for_disconnect()"); | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2136 /* Implements Measure# 11 */ | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2137 code_msg ((UBYTE *)disconnect, LEN_U_DISCONNECT); | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2138 } | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2139 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2140 /* | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2141 +--------------------------------------------------------------------+ | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2142 | PROJECT : GSM-PS (6147) MODULE : CC_FOR | | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2143 | STATE : code ROUTINE : for_modify_reject | | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2144 +--------------------------------------------------------------------+ | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2145 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2146 PURPOSE : Code the message modify reject and send them to | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2147 mobility management. | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2148 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2149 */ | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2150 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2151 GLOBAL void for_modify_reject (T_B_MODIFY_REJ * modify_rej) | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2152 { | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2153 /* | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2154 * The message has a maximum length of 47 Bytes. | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2155 * HLC and LLC are never used. | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2156 */ | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2157 TRACE_FUNCTION ("for_modify_reject()"); | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2158 /* Implements Measure# 11 */ | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2159 code_msg ((UBYTE *)modify_rej, LEN_U_MODIFY_REJ); | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2160 } | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2161 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2162 /* | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2163 +--------------------------------------------------------------------+ | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2164 | PROJECT : GSM-PS (6147) MODULE : CC_FOR | | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2165 | STATE : code ROUTINE : for_modify_complete | | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2166 +--------------------------------------------------------------------+ | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2167 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2168 PURPOSE : Code the message modify complete and send them to | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2169 mobility management. | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2170 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2171 */ | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2172 GLOBAL void for_modify_complete (T_B_MODIFY_COMP * mod_com) | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2173 { | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2174 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2175 TRACE_FUNCTION ("for_modify_complete()"); | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2176 /* Implements Measure# 27 */ | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2177 code_msg ((UBYTE *)mod_com, BSIZE_B_MODIFY_COMP); | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2178 } | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2179 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2180 /* | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2181 +--------------------------------------------------------------------+ | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2182 | PROJECT : GSM-PS (6147) MODULE : CC_FOR | | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2183 | STATE : code ROUTINE : for_start_dtmf | | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2184 +--------------------------------------------------------------------+ | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2185 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2186 PURPOSE : Code the message start dtmf and send them to | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2187 mobility management. | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2188 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2189 */ | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2190 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2191 GLOBAL void for_start_dtmf ( T_U_START_DTMF * start_dtmf) | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2192 { | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2193 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2194 TRACE_FUNCTION ("for_start_dtmf()"); | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2195 /* Implements Measure# 22 */ | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2196 code_msg ((UBYTE *)start_dtmf, BSIZE_U_START_DTMF); | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2197 EM_CC_START_DTMF; | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2198 } | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2199 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2200 /* | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2201 +--------------------------------------------------------------------+ | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2202 | PROJECT : GSM-PS (6147) MODULE : CC_FOR | | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2203 | STATE : code ROUTINE : for_stop_dtmf | | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2204 +--------------------------------------------------------------------+ | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2205 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2206 PURPOSE : Code the message stop dtmf and send them to | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2207 mobility management. | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2208 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2209 */ | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2210 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2211 GLOBAL void for_stop_dtmf (void) | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2212 { | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2213 GET_INSTANCE_DATA; | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2214 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2215 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2216 TRACE_FUNCTION ("for_stop_dtmf()"); | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2217 /* Implements Measure 42 */ | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2218 for_fill_sdu_and_send (U_STOP_DTMF, BSIZE_U_STOP_DTMF); | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2219 EM_CC_STOP_DTMF; | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2220 } | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2221 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2222 /* | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2223 +--------------------------------------------------------------------+ | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2224 | PROJECT : GSM-PS (6147) MODULE : CC_FOR | | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2225 | STATE : code ROUTINE : for_call_confirm | | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2226 +--------------------------------------------------------------------+ | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2227 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2228 PURPOSE : Code the message call confirm and send them to | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2229 mobility management. | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2230 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2231 */ | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2232 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2233 /* Here measure Measure# 23 is removed since we are accessing data ptr in | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2234 EM_CC_CALL_CONFIRM_SENT */ | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2235 GLOBAL void for_call_confirm (T_U_CALL_CONF * call_confirm) | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2236 { | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2237 GET_INSTANCE_DATA; | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2238 PALLOC_MSG (data, MMCM_DATA_REQ, U_CALL_CONF); | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2239 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2240 TRACE_FUNCTION ("for_call_confirm()"); | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2241 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2242 data->sdu.o_buf = CC_ENCODE_OFFSET; | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2243 ccd_codeMsg (CCDENT_CC, | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2244 UPLINK, | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2245 (T_MSGBUF *) &data->sdu, | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2246 (UBYTE *) call_confirm, | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2247 NOT_PRESENT_8BIT); | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2248 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2249 EM_CC_CALL_CONFIRM_SENT;/*lint !e416 (creation of out-of-bounds pointer)*/ | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2250 #if 0 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2251 #if defined TRACE_BCAP | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2252 cc_trace_bcap (cc_data, &data->sdu, UPLINK); | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2253 #endif /* #if defined TRACE_BCAP */ | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2254 #endif /* #if 0 */ | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2255 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2256 for_pd (data); | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2257 } | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2258 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2259 /* | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2260 +--------------------------------------------------------------------+ | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2261 | PROJECT : GSM-PS (6147) MODULE : CC_FOR | | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2262 | STATE : code ROUTINE : for_release | | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2263 +--------------------------------------------------------------------+ | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2264 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2265 PURPOSE : Code the message release and send them to | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2266 mobility management. | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2267 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2268 */ | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2269 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2270 GLOBAL void for_release (T_U_RELEASE * release) | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2271 { | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2272 /* | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2273 * the message has a maximum length of 34 bytes. | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2274 * It does not include cc_cause2, facility, | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2275 * user-user or ss version. | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2276 */ | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2277 TRACE_FUNCTION ("for_release()"); | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2278 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2279 /* Implements Measure# 12 */ | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2280 code_msg ((UBYTE *)release, LEN_U_RELEASE); | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2281 } | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2282 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2283 /* | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2284 +--------------------------------------------------------------------+ | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2285 | PROJECT : GSM-PS (6147) MODULE : CC_FOR | | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2286 | STATE : code ROUTINE : for_connect_ack | | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2287 +--------------------------------------------------------------------+ | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2288 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2289 PURPOSE : Code the message connect ack and send them to | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2290 mobility management. | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2291 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2292 */ | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2293 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2294 GLOBAL void for_connect_ack (T_B_CONNECT_ACK *b_connect_ack ) | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2295 { | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2296 GET_INSTANCE_DATA; | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2297 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2298 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2299 TRACE_FUNCTION ("for_connect_ack()"); | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2300 /* Implements Measure 34 */ | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2301 for_fill_sdu_and_send (B_CONNECT_ACK, BSIZE_B_CONNECT_ACK); | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2302 EM_CC_CONNECT_ACKNOWLEDGE; | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2303 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2304 } | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2305 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2306 /* | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2307 +--------------------------------------------------------------------+ | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2308 | PROJECT : GSM-PS (6147) MODULE : CC_FOR | | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2309 | STATE : code ROUTINE : for_retrieve | | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2310 +--------------------------------------------------------------------+ | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2311 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2312 PURPOSE : Code the message retrieve and send them to | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2313 mobility management. | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2314 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2315 */ | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2316 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2317 GLOBAL void for_retrieve (void) | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2318 { | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2319 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2320 TRACE_FUNCTION ("for_retrieve()"); | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2321 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2322 /* Implements Measure 42 */ | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2323 for_fill_sdu_and_send (U_RETRIEVE, BSIZE_U_RETRIEVE); | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2324 } | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2325 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2326 /* | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2327 +--------------------------------------------------------------------+ | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2328 | PROJECT : GSM-PS (6147) MODULE : CC_FOR | | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2329 | STATE : code ROUTINE : for_hold | | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2330 +--------------------------------------------------------------------+ | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2331 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2332 PURPOSE : Code the message hold and send them to | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2333 mobility management. | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2334 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2335 */ | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2336 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2337 GLOBAL void for_hold (void) | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2338 { | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2339 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2340 TRACE_FUNCTION ("for_hold()"); | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2341 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2342 /* Implements Measure 42 */ | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2343 for_fill_sdu_and_send (U_HOLD, BSIZE_U_HOLD); | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2344 } | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2345 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2346 /* | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2347 +--------------------------------------------------------------------+ | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2348 | PROJECT : GSM-PS (6147) MODULE : CC_FOR | | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2349 | STATE : code ROUTINE : for_user_information | | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2350 +--------------------------------------------------------------------+ | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2351 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2352 PURPOSE : Code the message user information and send them to | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2353 mobility management. | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2354 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2355 */ | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2356 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2357 GLOBAL void for_user_information (T_B_USER_INFO * user_info) | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2358 { | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2359 GET_INSTANCE_DATA; | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2360 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2361 /* | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2362 * The length of the outgoing message depends on | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2363 * the length of the user information plus message | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2364 * type, transaction identifier and the more data flag. | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2365 */ | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2366 PALLOC_SDU (data, MMCM_DATA_REQ, | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2367 (USHORT)(LEN_U_USER_USER + user_info->user_user.c_info * 8)); | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2368 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2369 TRACE_FUNCTION ("for_user_information()"); | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2370 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2371 EM_CC_USUER_TO_USER_DATA_SENT; | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2372 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2373 data->sdu.o_buf = CC_ENCODE_OFFSET; | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2374 ccd_codeMsg (CCDENT_CC, | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2375 UPLINK, | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2376 (T_MSGBUF *) &data->sdu, | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2377 (UBYTE *) user_info, | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2378 NOT_PRESENT_8BIT); | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2379 for_pd (data); | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2380 } | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2381 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2382 /* | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2383 +--------------------------------------------------------------------+ | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2384 | PROJECT : GSM-PS (6147) MODULE : CC_FOR | | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2385 | STATE : code ROUTINE : for_congestion_control | | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2386 +--------------------------------------------------------------------+ | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2387 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2388 PURPOSE : Code the message congestion control and send them to | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2389 mobility management. | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2390 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2391 */ | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2392 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2393 GLOBAL void for_congestion_control (T_B_CONGEST_CTRL * cong) | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2394 { | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2395 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2396 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2397 TRACE_FUNCTION ("for_congestion_control()"); | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2398 /* Implements Measure# 27 */ | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2399 code_msg ((UBYTE *)cong, BSIZE_B_CONGEST_CTRL); | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2400 } | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2401 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2402 /* | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2403 +--------------------------------------------------------------------+ | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2404 | PROJECT : GSM-PS (6147) MODULE : CC_FOR | | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2405 | STATE : code ROUTINE : for_modify | | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2406 +--------------------------------------------------------------------+ | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2407 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2408 PURPOSE : Code the message modify and send them to | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2409 mobility management. | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2410 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2411 */ | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2412 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2413 GLOBAL void for_modify (T_B_MODIFY * modify) | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2414 { | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2415 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2416 TRACE_FUNCTION ("for_modify()"); | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2417 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2418 /* Implements Measure# 28 */ | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2419 code_msg ((UBYTE *)modify, BSIZE_B_MODIFY); | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2420 } | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2421 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2422 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2423 /* | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2424 +--------------------------------------------------------------------+ | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2425 | PROJECT : GSM-PS (6147) MODULE : CC_FOR | | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2426 | STATE : code ROUTINE : for_connect | | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2427 +--------------------------------------------------------------------+ | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2428 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2429 PURPOSE : Code the message connect and send them to | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2430 mobility management. | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2431 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2432 */ | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2433 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2434 GLOBAL void for_connect (T_U_CONNECT * connect) | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2435 { | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2436 /* | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2437 * the message contains only message type | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2438 * and transaction identifier and no | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2439 * optional elements | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2440 */ | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2441 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2442 TRACE_FUNCTION ("for_connect()"); | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2443 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2444 /* Implements Measure# 13 */ | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2445 code_msg ((UBYTE *)connect, LEN_U_CONNECT); | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2446 } | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2447 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2448 /* | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2449 +--------------------------------------------------------------------+ | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2450 | PROJECT : GSM-PS (6147) MODULE : CC_FOR | | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2451 | STATE : code ROUTINE : for_alert | | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2452 +--------------------------------------------------------------------+ | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2453 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2454 PURPOSE : Code the message alert and send them to | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2455 mobility management. | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2456 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2457 */ | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2458 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2459 GLOBAL void for_alert (T_U_ALERT * alert) | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2460 { | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2461 /* | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2462 * the message contains only message type and | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2463 * transaction identifier and no optional | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2464 * elements | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2465 */ | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2466 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2467 TRACE_FUNCTION ("for_alert()"); | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2468 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2469 /* Implements Measure# 14 */ | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2470 code_msg ((UBYTE *)alert, LEN_U_ALERT); | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2471 } | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2472 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2473 /* | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2474 +--------------------------------------------------------------------+ | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2475 | PROJECT : GSM-PS (6147) MODULE : CC_FOR | | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2476 | STATE : code ROUTINE : for_facility | | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2477 +--------------------------------------------------------------------+ | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2478 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2479 PURPOSE : Code the message facility and send them to | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2480 mobility management. | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2481 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2482 */ | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2483 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2484 GLOBAL void for_facility (T_U_FACILITY * facility) | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2485 { | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2486 /* | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2487 * The length of the outgoing message depends | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2488 * on the length of the facility information | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2489 * element plus message type, transaction identifier | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2490 * and ss version. | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2491 */ | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2492 PALLOC_SDU (data, MMCM_DATA_REQ, | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2493 (USHORT)(LEN_U_FACILITY + facility->facility.c_fac * 8)); | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2494 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2495 TRACE_FUNCTION ("for_facility()"); | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2496 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2497 data->sdu.o_buf = CC_ENCODE_OFFSET; | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2498 ccd_codeMsg (CCDENT_CC, | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2499 UPLINK, | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2500 (T_MSGBUF *) &data->sdu, | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2501 (UBYTE *) facility, | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2502 NOT_PRESENT_8BIT); | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2503 for_pd (data); | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2504 } | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2505 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2506 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2507 /* | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2508 +--------------------------------------------------------------------+ | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2509 | PROJECT : GSM-PS (6147) MODULE : CC_FOR | | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2510 | STATE : code ROUTINE : for_pd | | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2511 +--------------------------------------------------------------------+ | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2512 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2513 PURPOSE : Add protocol discriminator and transaction identifier. | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2514 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2515 */ | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2516 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2517 GLOBAL void for_pd (T_MMCM_DATA_REQ * data) | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2518 { | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2519 GET_INSTANCE_DATA; | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2520 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2521 U8 *payload; | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2522 U16 length; | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2523 UBYTE *msg_type; | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2524 /* Implements Measure#32: Row 71,...,95 */ | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2525 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2526 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2527 TRACE_FUNCTION ("for_pd()"); | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2528 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2529 data->org_entity = NAS_ORG_ENTITY_CC; | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2530 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2531 TRACE_EVENT_P1("extended TI %spresent", (cc_data->ti_ext_pres EQ TRUE)? "":"not "); | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2532 if (cc_data->ti_ext_pres EQ TRUE) | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2533 { | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2534 data->sdu.o_buf -= 8; | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2535 data->sdu.l_buf += 8; | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2536 data->sdu.buf[data->sdu.o_buf >> 3] = cc_data->ti_ext; | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2537 } | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2538 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2539 SET_PD (data->sdu, M_MM_PD_CC); | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2540 SET_TI (data->sdu, cc_data->ti); | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2541 data->sdu.l_buf += 8; | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2542 data->sdu.o_buf -= 8; | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2543 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2544 msg_type = &(data->sdu.buf[CC_ENCODE_OFFSET >> 3]);/*lint !e415 !e416 Likely access or creation of out-of-bounds pointer*/ | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2545 payload = &(data->sdu.buf[0]); /* beginning of buffer */ | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2546 payload += ((data->sdu.o_buf) >> 3); /* plus offset (bytes) */ | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2547 length = ((data->sdu.l_buf) >> 3); /* length (bytes, bits / 8) */ | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2548 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2549 /*lint -e{415} Likely access or creation of out-of-bounds pointer*/ | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2550 switch (*msg_type) | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2551 { | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2552 case U_SETUP: | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2553 TRACE_BINDUMP (cc_handle, | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2554 TC_USER4, | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2555 " Setup UL ", | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2556 payload, | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2557 length); | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2558 break; | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2559 case U_EMERGE_SETUP: | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2560 TRACE_BINDUMP (cc_handle, | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2561 TC_USER4, | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2562 " Emergency Setup UL ", | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2563 payload, | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2564 length); | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2565 break; | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2566 case U_START_CC: | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2567 TRACE_BINDUMP (cc_handle, | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2568 TC_USER4, | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2569 " Call Control Capability UL ", | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2570 payload, | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2571 length); | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2572 break; | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2573 case U_CC_EST_CONF: | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2574 TRACE_BINDUMP (cc_handle, | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2575 TC_USER4, | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2576 " Establishment Confirm UL ", | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2577 payload, | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2578 length); | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2579 break; | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2580 case B_STATUS: | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2581 TRACE_BINDUMP (cc_handle, | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2582 TC_USER4, | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2583 " Status UL ", | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2584 payload, | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2585 length); | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2586 break; | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2587 case U_DISCONNECT: | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2588 TRACE_BINDUMP (cc_handle, | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2589 TC_USER4, | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2590 " Disconnect UL ", | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2591 payload, | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2592 length); | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2593 break; | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2594 case B_MODIFY_REJ: | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2595 TRACE_BINDUMP (cc_handle, | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2596 TC_USER4, | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2597 " Modify Reject UL ", | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2598 payload, | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2599 length); | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2600 break; | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2601 case B_MODIFY_COMP: | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2602 TRACE_BINDUMP (cc_handle, | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2603 TC_USER4, | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2604 " Modify Complete UL ", | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2605 payload, | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2606 length); | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2607 break; | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2608 case U_START_DTMF: | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2609 TRACE_BINDUMP (cc_handle, | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2610 TC_USER4, | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2611 " Start DTMF UL ", | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2612 payload, | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2613 length); | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2614 break; | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2615 case U_STOP_DTMF: | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2616 TRACE_BINDUMP (cc_handle, | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2617 TC_USER4, | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2618 " Stop DTMF UL ", | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2619 payload, | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2620 length); | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2621 break; | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2622 case U_CALL_CONF: | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2623 TRACE_BINDUMP (cc_handle, | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2624 TC_USER4, | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2625 " Call Confirm UL ", | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2626 payload, | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2627 length); | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2628 break; | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2629 case U_RELEASE : | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2630 TRACE_BINDUMP (cc_handle, | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2631 TC_USER4, | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2632 " Release UL ", | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2633 payload, | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2634 length); | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2635 break; | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2636 case B_CONNECT_ACK: | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2637 TRACE_BINDUMP (cc_handle, | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2638 TC_USER4, | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2639 " Connect Acknowledge UL ", | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2640 payload, | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2641 length); | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2642 break; | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2643 case U_RETRIEVE: | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2644 TRACE_BINDUMP (cc_handle, | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2645 TC_USER4, | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2646 " Retrieve UL ", | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2647 payload, | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2648 length); | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2649 break; | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2650 case U_HOLD: | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2651 TRACE_BINDUMP (cc_handle, | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2652 TC_USER4, | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2653 " Hold UL ", | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2654 payload, | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2655 length); | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2656 break; | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2657 case B_USER_INFO: | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2658 TRACE_BINDUMP (cc_handle, | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2659 TC_USER4, | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2660 " User Info UL ", | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2661 payload, | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2662 length); | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2663 break; | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2664 case B_CONGEST_CTRL: | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2665 TRACE_BINDUMP (cc_handle, | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2666 TC_USER4, | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2667 " Congestion Control UL ", | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2668 payload, | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2669 length); | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2670 break; | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2671 case B_MODIFY: | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2672 TRACE_BINDUMP (cc_handle, | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2673 TC_USER4, | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2674 " Modify UL ", | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2675 payload, | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2676 length); | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2677 break; | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2678 case U_CONNECT: | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2679 TRACE_BINDUMP (cc_handle, | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2680 TC_USER4, | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2681 " Connect UL ", | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2682 payload, | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2683 length); | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2684 break; | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2685 case U_ALERT: | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2686 TRACE_BINDUMP (cc_handle, | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2687 TC_USER4, | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2688 " Alert UL ", | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2689 payload, | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2690 length); | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2691 break; | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2692 case U_FACILITY: | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2693 TRACE_BINDUMP (cc_handle, | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2694 TC_USER4, | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2695 " Facility UL ", | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2696 payload, | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2697 length); | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2698 break; | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2699 case U_RELEASE_COMP: | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2700 TRACE_BINDUMP (cc_handle, | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2701 TC_USER4, | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2702 "Release Complete UL ", | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2703 payload, | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2704 length); | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2705 break; | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2706 case B_NOTIFY: | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2707 TRACE_BINDUMP (cc_handle, | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2708 TC_USER4, | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2709 "Notify UL ", | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2710 payload, | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2711 length); | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2712 break; | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2713 case B_STATUS_ENQ: | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2714 TRACE_BINDUMP (cc_handle, | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2715 TC_USER4, | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2716 "Status Enquiry UL ", | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2717 payload, | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2718 length); | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2719 break; | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2720 default: | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2721 TRACE_EVENT("Unknown Message"); | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2722 break; | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2723 } /* switch (*msg_type) */ | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2724 PSENDX (MM, data); | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2725 } | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2726 /* Implements Measure# 11, 12, 13, 14, 22, 27, 28 and 38 */ | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2727 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2728 /* | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2729 +--------------------------------------------------------------------+ | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2730 | PROJECT : GSM-PS (6147) MODULE : CC_FOR | | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2731 | STATE : code ROUTINE : code_msg | | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2732 +--------------------------------------------------------------------+ | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2733 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2734 PURPOSE : Code the message and add protocol discriminator and | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2735 transaction identifier. | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2736 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2737 */ | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2738 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2739 LOCAL void code_msg (UBYTE * mStruct, | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2740 USHORT len) | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2741 { | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2742 TRACE_FUNCTION ("code_msg()"); | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2743 { | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2744 /* Here we are using PALLOC_SDU for PALLOC_MSG also since they are same */ | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2745 PALLOC_SDU (data, MMCM_DATA_REQ, len); | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2746 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2747 data->sdu.o_buf = CC_ENCODE_OFFSET; | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2748 ccd_codeMsg (CCDENT_CC, | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2749 UPLINK, | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2750 (T_MSGBUF *) &data->sdu, | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2751 mStruct, | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2752 NOT_PRESENT_8BIT); | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2753 for_pd (data); | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2754 } | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2755 } | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2756 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2757 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2758 /* Implements Measure# 44 */ | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2759 /* | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2760 +--------------------------------------------------------------------+ | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2761 | PROJECT : GSM-PS (6147) MODULE : CC_FOR | | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2762 | STATE : code ROUTINE : for_send_u_release_comp | | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2763 +--------------------------------------------------------------------+ | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2764 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2765 PURPOSE : Send release complete. | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2766 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2767 */ | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2768 LOCAL void for_send_u_release_comp (USHORT cause) | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2769 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2770 { | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2771 TRACE_FUNCTION ("for_send_u_release_comp()"); | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2772 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2773 CCD_END; | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2774 CCD_START; | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2775 /* | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2776 * For MM the connection is still valid | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2777 * CC has already released the connection. | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2778 */ | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2779 { | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2780 MCAST (rel_com, U_RELEASE_COMP); | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2781 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2782 cc_build_release_complete (rel_com, | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2783 CAUSE_MAKE(DEFBY_STD, | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2784 ORIGSIDE_MS, | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2785 MNCC_CC_ORIGINATING_ENTITY, | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2786 cause)); | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2787 for_release_complete (rel_com); | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2788 } | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2789 CCD_END; | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2790 for_rel_req (); | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2791 } | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2792 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2793 /* Implements Measure# 42 */ | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2794 /* | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2795 +--------------------------------------------------------------------+ | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2796 | PROJECT : GSM-PS (6147) MODULE : CC_FOR | | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2797 | STATE : code ROUTINE : for_retrieve_hold | | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2798 +--------------------------------------------------------------------+ | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2799 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2800 PURPOSE : Send release complete. | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2801 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2802 */ | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2803 | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2804 LOCAL void for_fill_sdu_and_send (UBYTE msg, | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2805 USHORT len) | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2806 { | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2807 PALLOC_SDU (data, MMCM_DATA_REQ, len); | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2808 data->sdu.o_buf = CC_ENCODE_OFFSET; | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2809 data->sdu.l_buf = 8; | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2810 /*lint -e{415} (warning-- Likely access or creation of out-of-bounds pointer)*/ | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2811 data->sdu.buf [CC_ENCODE_OFFSET >> 3] = msg; | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2812 for_pd (data); | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2813 } | 
| 
fa8dc04885d8
src/g23m-*: import from Magnetite
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2814 #endif | 
