FreeCalypso > hg > fc-magnetite
annotate src/g23m-aci/aci/psa_satp.c @ 582:72f5b47a0d07
src/{aci2,ui3}/bmi/mmiIdle.c: enlarged buffer for ###520#
to handle the longer fw version ID strings we now have
| author | Mychaela Falconia <falcon@freecalypso.org> | 
|---|---|
| date | Tue, 29 Jan 2019 05:26:34 +0000 | 
| parents | 53929b40109c | 
| children | 
| rev | line source | 
|---|---|
| 162 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1 /* | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2 +----------------------------------------------------------------------------- | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 3 | Project : GSM-PS (6147) | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 4 | Modul : PSA_SATP | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 5 +----------------------------------------------------------------------------- | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 6 | Copyright 2002 Texas Instruments Berlin, AG | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 7 | All rights reserved. | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 8 | | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 9 | This file is confidential and a trade secret of Texas | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 10 | Instruments Berlin, AG | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 11 | The receipt of or possession of this file does not convey | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 12 | any rights to reproduce or disclose its contents or to | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 13 | manufacture, use, or sell anything it may describe, in | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 14 | whole, or in part, without the specific written consent of | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 15 | Texas Instruments Berlin, AG. | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 16 +----------------------------------------------------------------------------- | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 17 | Purpose : This module defines the processing functions for the | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 18 | primitives send to the protocol stack adapter by the | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 19 | SIM application toolkit. | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 20 +----------------------------------------------------------------------------- | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 21 */ | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 22 | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 23 #ifdef SIM_TOOLKIT | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 24 | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 25 #ifndef PSA_SATP_C | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 26 #define PSA_SATP_C | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 27 #endif | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 28 | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 29 #include "aci_all.h" | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 30 | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 31 /*==== INCLUDES ===================================================*/ | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 32 #include "aci_cmh.h" | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 33 #include "aci_mem.h" | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 34 | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 35 #ifdef FAX_AND_DATA | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 36 #include "aci_fd.h" | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 37 #endif /* of #ifdef FAX_AND_DATA */ | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 38 | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 39 #include "aci.h" | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 40 #include "psa.h" | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 41 #include "psa_cc.h" | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 42 #include "psa_sim.h" /* for simShrdPrm declaration */ | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 43 #include "psa_sat.h" | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 44 #include "psa_sms.h" | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 45 #include "cmh.h" | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 46 #include "cmh_sat.h" | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 47 | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 48 /*==== CONSTANTS ==================================================*/ | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 49 | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 50 | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 51 /*==== TYPES ======================================================*/ | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 52 | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 53 | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 54 /*==== EXPORT =====================================================*/ | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 55 UBYTE temp ; | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 56 | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 57 /*==== VARIABLES ==================================================*/ | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 58 | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 59 /*==== FUNCTIONS ==================================================*/ | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 60 | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 61 /* | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 62 +-------------------------------------------------------------------+ | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 63 | PROJECT : GSM-PS (6147) MODULE : PSA_SATP | | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 64 | ROUTINE : psa_sim_toolkit_ind | | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 65 +-------------------------------------------------------------------+ | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 66 | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 67 PURPOSE : processes the SIM_TOOLKIT_IND primitive send by SIM. | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 68 this is an indication that a STK command was received. | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 69 | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 70 */ | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 71 | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 72 GLOBAL void psa_sim_toolkit_ind | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 73 ( T_SIM_TOOLKIT_IND *sim_toolkit_ind ) | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 74 { | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 75 T_ACI_SAT_TERM_RESP resp_data; | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 76 | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 77 TRACE_FUNCTION ("psa_sim_toolkit_ind()"); | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 78 | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 79 /* | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 80 *------------------------------------------------------------------- | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 81 * update shared parameter | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 82 *------------------------------------------------------------------- | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 83 */ | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 84 | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 85 satShrdPrm.stkCmdLen = sim_toolkit_ind -> stk_cmd.l_cmd; | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 86 satShrdPrm.stkCmd = sim_toolkit_ind -> stk_cmd.cmd; | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 87 | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 88 TRACE_EVENT_P1("%x", satShrdPrm.stkCmd[44] ); | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 89 | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 90 psaSAT_DumpCmd ( &sim_toolkit_ind -> stk_cmd ); | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 91 | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 92 /* | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 93 *------------------------------------------------------------------- | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 94 * decode SIM toolkit command | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 95 *------------------------------------------------------------------- | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 96 */ | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 97 CCD_START; | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 98 { | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 99 UBYTE ccdRet; | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 100 | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 101 MCAST( cmd, STK_CMD ); | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 102 memset( cmd, 0, sizeof( T_STK_CMD )); | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 103 | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 104 ccdRet = ccd_decodeMsg (CCDENT_SAT, | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 105 DOWNLINK, | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 106 (T_MSGBUF *) &sim_toolkit_ind -> stk_cmd, | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 107 (UBYTE *) _decodedMsg, | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 108 STK_CMD); | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 109 | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 110 if( ccdRet NEQ ccdOK OR !cmd->v_pas_cmd) | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 111 { | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 112 cmhSAT_STKCmdInd(); | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 113 } | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 114 else if( cmd->pas_cmd.v_cmd_details AND cmd->pas_cmd.v_dev_ids ) | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 115 { | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 116 /* store command details */ | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 117 satShrdPrm.cmdDet.cmdNr = cmd->pas_cmd.cmd_details.cmd_nr; | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 118 satShrdPrm.cmdDet.cmdType = cmd->pas_cmd.cmd_details.cmd_typ; | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 119 satShrdPrm.cmdDet.cmdQlf = cmd->pas_cmd.cmd_details.cmd_qlf; | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 120 | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 121 #ifdef TI_PS_FF_AT_P_CMD_CUST | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 122 if (simShrdPrm.overall_cust_mode EQ (UBYTE)CUST_MODE_BEHAVIOUR_1) | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 123 { | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 124 /* | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 125 ** Customised behaviour for the Cust1 MMI | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 126 */ | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 127 switch (cmd->pas_cmd.cmd_details.cmd_typ) | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 128 { | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 129 case SAT_CMD_SETUP_CALL: | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 130 case SAT_CMD_SEND_SMS: | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 131 case SAT_CMD_SEND_SS: | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 132 case SAT_CMD_SEND_USSD: | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 133 if (satShrdPrm.cust1StkCmd != (void *)0) | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 134 { | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 135 /* | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 136 ** The previous command has not been deleted. | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 137 */ | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 138 ACI_MFREE(satShrdPrm.cust1StkCmd); | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 139 | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 140 satShrdPrm.cust1StkCmd = (void *)0; | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 141 satShrdPrm.cust1StkCmdLen = 0; | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 142 } | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 143 | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 144 /* | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 145 ** Allocate memory to store the command | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 146 */ | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 147 ACI_MALLOC(satShrdPrm.cust1StkCmd, MAX_STK_CMD); | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 148 if (satShrdPrm.cust1StkCmd EQ (void *)0) | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 149 { | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 150 /* | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 151 ** Memory allocation has failed, return ME Unable to Process Cmd | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 152 */ | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 153 TRACE_EVENT("Memory Allocation Failure"); | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 154 psaSAT_InitTrmResp( &resp_data ); | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 155 psaSAT_SendTrmResp( RSLT_ME_UNAB_PROC, &resp_data ); | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 156 break; | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 157 } | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 158 | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 159 /* | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 160 ** Save the received data before proceeding | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 161 */ | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 162 memset(satShrdPrm.cust1StkCmd, 0, MAX_STK_CMD); | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 163 /* | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 164 ** stkCmdLen is the BIT length of the received data, so shift right 3 (divide by 8) | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 165 ** in order to get the BYTE length | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 166 */ | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 167 memcpy(satShrdPrm.cust1StkCmd, satShrdPrm.stkCmd, satShrdPrm.stkCmdLen >> 3); | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 168 satShrdPrm.cust1StkCmdLen = satShrdPrm.stkCmdLen; | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 169 | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 170 /* | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 171 ** Continue the processing as for normal behaviour, | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 172 ** special processing will be applied later | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 173 ** | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 174 ** No Break! | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 175 */ | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 176 /*lint -fallthrough */ | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 177 case SAT_CMD_EVENT_LIST: | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 178 /* | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 179 ** This command is processed normally | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 180 */ | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 181 if( !cmd->pas_cmd.v_cmd_prms OR !cmd->pas_cmd.cmd_prms.l_cmd_prms ) | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 182 { | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 183 TRACE_EVENT("no parameters in envelope"); | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 184 psaSAT_dasmMECmd( NULL ); | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 185 } | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 186 else | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 187 psaSAT_dasmMECmd( &cmd->pas_cmd.cmd_prms ); | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 188 break; | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 189 | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 190 case SAT_CMD_REFRESH: | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 191 /* | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 192 ** This command is to be forwarded to the MMI, for the user to be given the | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 193 ** chance to accept or reject the Refresh action. The user response will be | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 194 ** contained in a SATR Response indication, and we must be prepared to | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 195 ** process that indication in a different manner. | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 196 */ | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 197 satShrdPrm.cust1SimRefreshRespRqd = TRUE; | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 198 | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 199 /* | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 200 ** Forward the command to the MMI | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 201 */ | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 202 cmhSAT_STKCmdInd(); | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 203 break; | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 204 | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 205 default: | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 206 /* | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 207 ** If the command is handled by the MMI pass it up in a %SATI indication | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 208 */ | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 209 if (cmhSAT_IsStkCmdForMmi(cmd->pas_cmd.cmd_details.cmd_typ, | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 210 cmd->pas_cmd.cmd_details.cmd_qlf) EQ FALSE) | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 211 { | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 212 /* | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 213 ** Otherwise Determine whether the command is handled in the Modem Part | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 214 */ | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 215 switch (cmd->pas_cmd.cmd_details.cmd_typ) | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 216 { | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 217 case( SAT_CMD_SEND_DTMF ): | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 218 case( SAT_CMD_RUN_AT ): | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 219 case( SAT_CMD_LAUNCH_BROWSER ): | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 220 case (SAT_CMD_PROV_LOC_INFO): | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 221 #ifdef FF_SAT_E | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 222 case( SAT_CMD_OPEN_CHANNEL ): | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 223 #endif /* FF_SAT_E */ | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 224 if( !cmd->pas_cmd.v_cmd_prms OR !cmd->pas_cmd.cmd_prms.l_cmd_prms ) | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 225 { | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 226 TRACE_EVENT("no parameters in envelope"); | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 227 psaSAT_dasmMECmd( NULL ); | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 228 } | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 229 else | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 230 psaSAT_dasmMECmd( &cmd->pas_cmd.cmd_prms ); | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 231 break; | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 232 #ifdef FF_SAT_E | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 233 /* special handling for CLOSE CHANNEL, no further decoding required. | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 234 all that is needed can be found in device identities */ | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 235 case( SAT_CMD_CLOSE_CHANNEL ): | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 236 | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 237 cmhSAT_CloseChannel(); | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 238 | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 239 break; | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 240 | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 241 /* special handling for SEND DATA, no further decoding required. | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 242 all that is needed can be found in command details */ | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 243 case( SAT_CMD_SEND_DATA ): | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 244 cmhSAT_SendData(); | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 245 break; | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 246 | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 247 /* special handling for GET CHANNEL STATUS, no further decoding required */ | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 248 case( SAT_CMD_GET_CHANNEL_STATUS ): | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 249 cmhSAT_GetChannelStatus(); | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 250 break; | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 251 | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 252 /* special handling for RECEIVE DATA, no further decoding required */ | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 253 case( SAT_CMD_RECEIVE_DATA ): | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 254 cmhSAT_STKUsrNtfy(); | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 255 break; | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 256 #endif /* FF_SAT_E */ | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 257 | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 258 /* | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 259 ** If the command is not handled by the Modem Part, return a "Beyond ME | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 260 ** Capabilities" response to the SIM Entity. | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 261 */ | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 262 default: | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 263 TRACE_EVENT("Unable to handle command"); | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 264 psaSAT_InitTrmResp( &resp_data ); | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 265 psaSAT_SendTrmResp( RSLT_ME_CAP, &resp_data ); | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 266 } | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 267 } | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 268 } | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 269 } | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 270 else | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 271 #endif /* TI_PS_FF_AT_P_CMD_CUST */ | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 272 { | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 273 /* if command is addressed to ACI */ | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 274 switch( cmd->pas_cmd.cmd_details.cmd_typ ) | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 275 { | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 276 case( SAT_CMD_SETUP_CALL ): | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 277 case( SAT_CMD_SEND_SS ): | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 278 case( SAT_CMD_SEND_SMS ): | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 279 case( SAT_CMD_SEND_USSD ): | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 280 case( SAT_CMD_SEND_DTMF ): | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 281 case( SAT_CMD_EVENT_LIST ): | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 282 case( SAT_CMD_RUN_AT ): | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 283 case( SAT_CMD_LAUNCH_BROWSER ): | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 284 case (SAT_CMD_PROV_LOC_INFO): | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 285 #ifdef FF_SAT_E | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 286 case( SAT_CMD_OPEN_CHANNEL ): | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 287 #endif /* FF_SAT_E */ | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 288 if( !cmd->pas_cmd.v_cmd_prms OR !cmd->pas_cmd.cmd_prms.l_cmd_prms ) | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 289 { | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 290 TRACE_EVENT("no parameters in envelope"); | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 291 psaSAT_dasmMECmd( NULL ); | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 292 } | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 293 else | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 294 psaSAT_dasmMECmd( &cmd->pas_cmd.cmd_prms ); | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 295 break; | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 296 #ifdef FF_SAT_E | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 297 /* special handling for CLOSE CHANNEL, no further decoding required. | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 298 all that is needed can be found in device identities */ | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 299 case( SAT_CMD_CLOSE_CHANNEL ): | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 300 /* Channel Id invalid */ | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 301 temp = (UBYTE) cmd->pas_cmd.dev_ids.dest_dev; | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 302 if ( (CHANNEL_ID_1 NEQ (UBYTE)(temp & 0x0f)) OR ( satShrdPrm.chnTb.lnkStat EQ SIM_NO_LINK ) ) | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 303 { | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 304 /* Close Channel with an invalid channel identifier */ | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 305 psaSAT_InitTrmResp( &resp_data ); | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 306 resp_data.chnStat = FALSE; | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 307 resp_data.add_content = ADD_BIP_CHANID_NT_VLD; | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 308 psaSAT_SendTrmResp( RSLT_BEARIND_PERR, &resp_data ); | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 309 } | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 310 else | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 311 { | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 312 cmhSAT_CloseChannel(); | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 313 } | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 314 break; | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 315 | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 316 /* special handling for SEND DATA, no further decoding required. | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 317 all that is needed can be found in command details */ | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 318 case( SAT_CMD_SEND_DATA ): | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 319 | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 320 /* Channel Id invalid */ | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 321 temp = (UBYTE) cmd->pas_cmd.dev_ids.dest_dev; | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 322 if ( (CHANNEL_ID_1 NEQ (UBYTE)(temp & 0x0f)) OR ( satShrdPrm.chnTb.lnkStat EQ SIM_NO_LINK ) ) | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 323 { | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 324 /* Close Channel with an invalid channel identifier */ | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 325 psaSAT_InitTrmResp( &resp_data ); | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 326 resp_data.chnStat = FALSE; | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 327 resp_data.add_content = ADD_BIP_CHANID_NT_VLD; | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 328 psaSAT_SendTrmResp( RSLT_BEARIND_PERR, &resp_data ); | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 329 } | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 330 else | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 331 { | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 332 | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 333 cmhSAT_SendData(); | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 334 } | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 335 break; | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 336 | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 337 /* special handling for GET CHANNEL STATUS, no further decoding required */ | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 338 case( SAT_CMD_GET_CHANNEL_STATUS ): | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 339 | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 340 cmhSAT_GetChannelStatus(); | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 341 break; | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 342 | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 343 /* special handling for RECEIVE DATA, no further decoding required */ | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 344 case( SAT_CMD_RECEIVE_DATA ): | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 345 | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 346 cmhSAT_STKUsrNtfy(); | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 347 break; | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 348 #endif /* FF_SAT_E */ | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 349 /* otherwise pass command to user */ | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 350 default: | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 351 cmhSAT_STKCmdInd(); | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 352 } | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 353 } | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 354 } | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 355 else | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 356 { | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 357 /* respond with "error, required values are missing" */ | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 358 TRACE_EVENT("parameters are missing"); | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 359 psaSAT_InitTrmResp( &resp_data ); | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 360 psaSAT_SendTrmResp( RSLT_ERR_REQ_VAL, &resp_data ); | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 361 } | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 362 } | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 363 CCD_END; | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 364 | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 365 /* | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 366 *------------------------------------------------------------------- | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 367 * free the primitive buffer | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 368 *------------------------------------------------------------------- | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 369 */ | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 370 PFREE (sim_toolkit_ind); | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 371 | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 372 } | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 373 | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 374 /* | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 375 +-------------------------------------------------------------------+ | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 376 | PROJECT : GSM-PS (6147) MODULE : PSA_SATP | | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 377 | ROUTINE : psa_sim_toolkit_cnf | | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 378 +-------------------------------------------------------------------+ | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 379 | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 380 PURPOSE : processes the SIM_TOOLKIT_CNF primitive send by SIM. | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 381 this is a confirmation to a previous STK command. | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 382 | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 383 */ | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 384 | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 385 GLOBAL void psa_sim_toolkit_cnf( T_SIM_TOOLKIT_CNF *sim_toolkit_cnf ) | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 386 { | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 387 void *p = NULL; | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 388 BOOL SIM_error = FALSE; | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 389 BOOL not_allw = FALSE; | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 390 BOOL allw = FALSE; | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 391 void *p_allw = NULL; | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 392 UBYTE *p_v_allw = NULL; | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 393 void *p_not_allw = NULL; | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 394 UBYTE *p_v_not_allw = NULL; | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 395 void *p_allw_mdfy = NULL; | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 396 UBYTE *p_v_allw_mdfy = NULL; | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 397 SHORT StructSize = 0; | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 398 UBYTE DynEnv = '\0'; | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 399 | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 400 TRACE_FUNCTION ("psa_sim_toolkit_cnf()"); | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 401 /* | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 402 *------------------------------------------------------------------- | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 403 * update shared parameter | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 404 *------------------------------------------------------------------- | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 405 */ | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 406 satShrdPrm.stkCmdLen = sim_toolkit_cnf -> stk_cmd.l_cmd; | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 407 satShrdPrm.stkCmd = sim_toolkit_cnf -> stk_cmd.cmd; | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 408 satShrdPrm.stkError = sim_toolkit_cnf -> cause; | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 409 | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 410 psaSAT_DumpCmd ( &sim_toolkit_cnf -> stk_cmd ); | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 411 | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 412 /* | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 413 *------------------------------------------------------------------- | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 414 * if request was invoked by MMI pass reply to MMI | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 415 *------------------------------------------------------------------- | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 416 */ | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 417 if( sim_toolkit_cnf -> req_id EQ SRQ_MMI ) | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 418 { | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 419 cmhSAT_STKCmdCnf(); | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 420 } | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 421 | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 422 /* | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 423 *------------------------------------------------------------------- | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 424 * if request was invoked by ACI decode envelope command result | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 425 *------------------------------------------------------------------- | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 426 */ | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 427 else if( sim_toolkit_cnf -> req_id EQ SRQ_ACI ) | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 428 { | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 429 if( sim_toolkit_cnf -> stk_cmd.l_cmd EQ 0 OR | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 430 sim_toolkit_cnf -> cause EQ SIM_CAUSE_SAT_BUSY) | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 431 { | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 432 SIM_error = TRUE; | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 433 | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 434 switch ( sim_toolkit_cnf -> cause ) | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 435 { | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 436 case SIM_CAUSE_OTHER_ERROR: | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 437 case SIM_CAUSE_SAT_BUSY: | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 438 case SIM_CAUSE_CARD_REMOVED: | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 439 case SIM_CAUSE_PIN1_EXPECT: | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 440 case SIM_CAUSE_PIN1_BLOCKED: | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 441 case SIM_CAUSE_PUK1_EXPECT: | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 442 case SIM_CAUSE_PUK1_BLOCKED: | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 443 case SIM_CAUSE_PIN2_EXPECT: | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 444 case SIM_CAUSE_PIN2_BLOCKED: | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 445 case SIM_CAUSE_PUK2_EXPECT: | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 446 case SIM_CAUSE_PUK2_BLOCKED: | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 447 /* in case of certain errors, assume not allowed */ | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 448 not_allw = TRUE; | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 449 sim_toolkit_cnf -> stk_cmd.cmd[0] = CCR_NOT_ALLW; | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 450 break; | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 451 | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 452 default: | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 453 /* in case of a positive result without further info, | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 454 assume allowed not modified */ | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 455 allw = TRUE; | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 456 sim_toolkit_cnf -> stk_cmd.cmd[0] = CCR_ALLW_NO_MDFY; | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 457 break; | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 458 } | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 459 sim_toolkit_cnf -> stk_cmd.cmd[1] = 0; /* no extra TLVs */ | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 460 satShrdPrm.stkCmdLen = 2<<3; /* 2 bytes result */ | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 461 } | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 462 | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 463 else | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 464 { | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 465 SIM_error = FALSE; | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 466 } | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 467 | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 468 | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 469 { | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 470 CCD_START; | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 471 { | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 472 UBYTE ccdRet; | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 473 MCAST( env, ENV_RES ); | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 474 MCAST( smc_env, ENV_RES_SMC ); | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 475 | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 476 switch( satShrdPrm.SIMCCParm.ccAct ) | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 477 { | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 478 case( CC_ACT_CAL ): | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 479 case( CC_ACT_SS ): | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 480 case( CC_ACT_USSD ): | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 481 memset( env, 0, sizeof( T_ENV_RES )); | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 482 p_v_not_allw = &env->v_ccr_not_allw; | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 483 p_v_allw = &env->v_ccr_allw; | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 484 p_v_allw_mdfy = &env->v_ccr_allw_mdfy; | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 485 p_not_allw = &env->ccr_not_allw; | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 486 p_allw = &env->ccr_allw; | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 487 p_allw_mdfy = &env->ccr_allw_mdfy; | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 488 DynEnv = ENV_RES; | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 489 break; | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 490 case( SMC_ACT_MO ): | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 491 memset( smc_env, 0, sizeof( T_ENV_RES_SMC )); | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 492 p_v_not_allw = &smc_env->v_smcr_not_allw; | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 493 p_v_allw = &smc_env->v_smcr_allw; | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 494 p_v_allw_mdfy = &smc_env->v_smcr_allw_mdfy; | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 495 p_not_allw = &smc_env->smcr_not_allw; | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 496 p_allw = &smc_env->smcr_allw; | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 497 p_allw_mdfy = &smc_env->smcr_allw_mdfy; | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 498 DynEnv = ENV_RES_SMC; | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 499 break; | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 500 } | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 501 | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 502 if (SIM_error) | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 503 { | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 504 if(p_v_not_allw AND p_v_allw) /* To avoid the NULL poiner usage, 613 lint warning */ | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 505 { | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 506 *p_v_not_allw = not_allw; | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 507 *p_v_allw = allw; | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 508 } | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 509 } | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 510 /* otherwise decode message */ | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 511 else | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 512 { | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 513 ccdRet = ccd_decodeMsg (CCDENT_SAT, | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 514 DOWNLINK, | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 515 (T_MSGBUF *) &sim_toolkit_cnf -> stk_cmd, | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 516 (UBYTE *) _decodedMsg, | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 517 DynEnv ); | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 518 | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 519 if( ccdRet NEQ ccdOK ) | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 520 { | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 521 /* in case of a result failure, pretend allowed not modified */ | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 522 if(p_v_not_allw AND p_v_allw AND p_v_allw_mdfy) /* To avoid the NULL poiner usage, 613 lint warning */ | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 523 | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 524 { | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 525 if( psaSAT_ccdErrChk() NEQ 0 AND | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 526 (!(*p_v_allw) AND !(*p_v_not_allw) AND !(*p_v_allw_mdfy))) | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 527 { | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 528 memset( env, 0, StructSize ); | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 529 *p_v_allw = TRUE; | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 530 sim_toolkit_cnf -> stk_cmd.cmd[0] = CCR_ALLW_NO_MDFY; | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 531 sim_toolkit_cnf -> stk_cmd.cmd[1] = 0; | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 532 satShrdPrm.stkCmdLen = 2<<3; /* 2 bytes result */ | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 533 } | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 534 } | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 535 } | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 536 } | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 537 | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 538 /* process result */ | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 539 if(p_v_not_allw AND p_v_allw AND p_v_allw_mdfy) /* To avoid the NULL poiner usage, 613 lint warning */ | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 540 | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 541 { | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 542 if ( *p_v_allw ) p = p_allw; | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 543 else if( *p_v_not_allw ) p = p_not_allw; | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 544 else if( *p_v_allw_mdfy ) p = p_allw_mdfy; | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 545 | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 546 | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 547 satShrdPrm.ntfy = USR_NTF_CC_SIM; | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 548 cmhSAT_STKUsrNtfy(); | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 549 | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 550 switch( satShrdPrm.SIMCCParm.ccAct ) | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 551 { | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 552 case( CC_ACT_CAL ): | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 553 | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 554 if( cmhSAT_ResCalCntrlBySIM( sim_toolkit_cnf -> stk_cmd.cmd, p )) | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 555 { | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 556 /* keep primitive for terminal response */ | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 557 satShrdPrm.stkCnfPrim = sim_toolkit_cnf; | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 558 CCD_END; | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 559 return; | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 560 } | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 561 break; | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 562 | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 563 case( CC_ACT_SS ): | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 564 | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 565 if( cmhSAT_ResSSCntrlBySIM( sim_toolkit_cnf -> stk_cmd.cmd, p )) | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 566 { | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 567 /* keep primitive for terminal response */ | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 568 satShrdPrm.stkCnfPrim = sim_toolkit_cnf; | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 569 CCD_END; | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 570 return; | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 571 } | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 572 break; | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 573 | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 574 case( CC_ACT_USSD ): | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 575 | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 576 if( cmhSAT_ResUSSDCntrlBySIM( sim_toolkit_cnf -> stk_cmd.cmd, p )) | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 577 { | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 578 /* keep primitive for terminal response */ | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 579 /*satShrdPrm.stkCnfPrim = sim_toolkit_cnf;*/ | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 580 CCD_END; | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 581 return; | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 582 } | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 583 break; | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 584 | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 585 case( SMC_ACT_MO ): | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 586 if( cmhSAT_ResSMCntrlBySIM( sim_toolkit_cnf -> stk_cmd.cmd, p )) | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 587 { | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 588 /* keep primitive for terminal response */ | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 589 /*satShrdPrm.stkCnfPrim = sim_toolkit_cnf;*/ | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 590 CCD_END; | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 591 return; | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 592 } | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 593 break; | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 594 | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 595 default: | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 596 TRACE_EVENT("UNEXP CC ACTION IN SAT PARMS"); | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 597 break; | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 598 } | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 599 } | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 600 } | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 601 satShrdPrm.SIMCCParm.ccAct = NO_CC_ACT; | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 602 CCD_END; | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 603 } | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 604 } | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 605 | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 606 /* | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 607 *------------------------------------------------------------------- | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 608 * free the primitive buffer | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 609 *------------------------------------------------------------------- | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 610 */ | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 611 PFREE (sim_toolkit_cnf); | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 612 | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 613 } | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 614 | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 615 /* | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 616 +-------------------------------------------------------------------+ | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 617 | PROJECT : GSM-PS (6147) MODULE : PSA_SATP | | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 618 | ROUTINE : psa_sim_file_update_ind | | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 619 +-------------------------------------------------------------------+ | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 620 | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 621 PURPOSE : processes the FILE_UPDATE_IND primitive send by SIM. | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 622 It provides a list of updated EFs. | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 623 | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 624 */ | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 625 | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 626 GLOBAL void psa_sim_file_update_ind | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 627 ( T_SIM_FILE_UPDATE_IND *sim_file_update_ind ) | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 628 { | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 629 SHORT i; | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 630 BOOL send_confirm_now=TRUE; | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 631 | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 632 TRACE_FUNCTION ("psa_sim_file_update_ind()"); | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 633 | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 634 /* | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 635 *------------------------------------------------------------------- | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 636 * store the primitive and start processing | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 637 *------------------------------------------------------------------- | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 638 */ | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 639 satShrdPrm.fu_ind = sim_file_update_ind; | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 640 | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 641 /* | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 642 * Broadcast %SIMEF unsolicited event to all interested parties. | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 643 */ | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 644 for(i=CMD_SRC_LCL;i<CMD_SRC_MAX;i++) | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 645 { | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 646 if (simShrdPrm.SIMEFMode[i] EQ SIMEF_MODE_ON) | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 647 { | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 648 /* | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 649 * As we have reported the EF update, it is not now the | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 650 * responsibility of this function to send the response | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 651 * immediately. | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 652 */ | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 653 send_confirm_now=FALSE; | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 654 | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 655 R_AT(RAT_P_SIMEF,(T_ACI_CMD_SRC)i)(sim_file_update_ind); | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 656 | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 657 } | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 658 } | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 659 | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 660 /* | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 661 * If we didn't report the EF update to anyone we must send | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 662 * the response now. | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 663 */ | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 664 if (send_confirm_now NEQ FALSE) | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 665 psaSAT_FUConfirm (-1, NOT_PRESENT_16BIT); | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 666 } | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 667 | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 668 #endif /* #ifdef SIM_TOOLKIT */ | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 669 | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 670 /*==== EOF =========================================================*/ | 
