FreeCalypso > hg > fc-magnetite
diff src/aci2/aci/cmh_phbt.c @ 3:93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
author | Mychaela Falconia <falcon@freecalypso.org> |
---|---|
date | Mon, 26 Sep 2016 00:29:36 +0000 |
parents | |
children |
line wrap: on
line diff
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/src/aci2/aci/cmh_phbt.c Mon Sep 26 00:29:36 2016 +0000 @@ -0,0 +1,216 @@ +/* ++----------------------------------------------------------------------------- +| Project : GSM-PS (6147) +| Modul : CMH_PHBT ++----------------------------------------------------------------------------- +| Copyright 2002 Texas Instruments Berlin, AG +| All rights reserved. +| +| This file is confidential and a trade secret of Texas +| Instruments Berlin, AG +| The receipt of or possession of this file does not convey +| any rights to reproduce or disclose its contents or to +| manufacture, use, or sell anything it may describe, in +| whole, or in part, without the specific written consent of +| Texas Instruments Berlin, AG. ++----------------------------------------------------------------------------- +| Purpose : This module provides the test functions related to the +| protocol stack adapter for the phonebook management. ++----------------------------------------------------------------------------- +*/ + +#ifndef CMH_PHBT_C +#define CMH_PHBT_C +#endif + +#include "aci_all.h" +/*==== INCLUDES ===================================================*/ +#include "aci_cmh.h" + +#ifdef FAX_AND_DATA +#include "aci_fd.h" +#endif /* of #ifdef FAX_AND_DATA */ + +#include "psa.h" +#include "phb.h" +#include "cmh.h" +#include "cmh_phb.h" + +/*==== CONSTANTS ==================================================*/ + +#define PHB_CMH_FIRST_IDX (1) /* first index in phonebook */ + +/*==== EXPORT =====================================================*/ + +/*==== VARIABLES ==================================================*/ + +/*==== FUNCTIONS ==================================================*/ +/* ++--------------------------------------------------------------------+ +| PROJECT : GSM-PS (6147) MODULE : CMH_PHBT | +| STATE : code ROUTINE : cmhPHB_get_phonebook_info| ++--------------------------------------------------------------------+ + + PURPOSE : This function is used to get the basic adjustments of the + current selected phonebook storage. + + <firstIdx>: first supported index + <lastIdx>: last supported index + <nlength>: maximum length of phone number + <tlength>: maximum length of associated text +*/ +LOCAL T_ACI_RETURN cmhPHB_get_phonebook_info( T_ACI_CMD_SRC srcId, + SHORT* firstIdx, + SHORT* lastIdx, + UBYTE* nlength, + UBYTE* tlength ) +{ + T_PHB_CMD_PRM * pPHBCmdPrm; /* points to PHB command parameter */ + SHORT maxIdx; /* maximum record index */ + UBYTE numLen; /* maximum num length */ + UBYTE tagLen; /* maximum tag length */ + SHORT dmyUsed; /* dummy variable, not used */ +#ifndef TI_PS_FFS_PHB + UBYTE dmySrvc; /* dummy variable, not used */ + SHORT dmyAvail; /* dummy variable, not used */ +#endif + + TRACE_FUNCTION("cmhPHB_get_phonebook_info( )"); + + /* + *----------------------------------------------------------------- + * check command source + *----------------------------------------------------------------- + */ + if( ! cmh_IsVldCmdSrc (srcId) ) + { + ACI_ERR_DESC( ACI_ERR_CLASS_Ext, EXT_ERR_Parameter ); + return( AT_FAIL ); + } + + pPHBCmdPrm = &cmhPrm[srcId].phbCmdPrm; + + /* + *----------------------------------------------------------------- + * fill in parameter <firstIdx>, <lastIdx>, <nlength> and <tlength> + *----------------------------------------------------------------- + */ + + if ( pPHBCmdPrm -> cmhStor EQ PB_STOR_NotPresent ) + { + *firstIdx = ACI_NumParmNotPresent; + *lastIdx = ACI_NumParmNotPresent; + *nlength = 0; + *tlength = 0; + return(AT_CMPL); + } + +#ifdef TI_PS_FFS_PHB + if (pb_read_sizes (pPHBCmdPrm -> phbStor, + &maxIdx, + &dmyUsed, + &numLen, + &tagLen) NEQ PHB_OK) +#else + numLen = 2 * PHB_PACKED_NUM_LEN; + if ( pb_read_status ( pPHBCmdPrm -> phbStor, + &dmySrvc, + &maxIdx, + &dmyUsed, + &tagLen, + &dmyAvail ) EQ PHB_FAIL ) +#endif + { + ACI_ERR_DESC( ACI_ERR_CLASS_Cme, CME_ERR_Unknown ); + return( AT_FAIL ); + } + + *firstIdx = PHB_CMH_FIRST_IDX; + *lastIdx = maxIdx; + *nlength = numLen; + *tlength = tagLen; /* excluding null termination */ + + return ( AT_CMPL ); +} + +/* ++--------------------------------------------------------------------+ +| PROJECT : GSM-PS (6147) MODULE : CMH_PHBT | +| STATE : code ROUTINE : tAT_PlusCPBR | ++--------------------------------------------------------------------+ + + PURPOSE : This is the functional counterpart to the +CPBR=? + AT command which is responsible to test for all supported + memory indices, the length of phone numbers and + the length of texts associated with these numbers. + + <firstIdx>: first supported index + <lastIdx>: last supported index + <nlength>: maximum length of phone number + <tlength>: maximum length of associated text +*/ +GLOBAL T_ACI_RETURN tAT_PlusCPBR ( T_ACI_CMD_SRC srcId, + SHORT* firstIdx, + SHORT* lastIdx, + UBYTE* nlength, + UBYTE* tlength ) +{ + TRACE_FUNCTION ("tAT_PlusCPBR ()"); + + return(cmhPHB_get_phonebook_info(srcId, firstIdx, lastIdx, nlength, tlength)); +} + +/* ++--------------------------------------------------------------------+ +| PROJECT : GSM-PS (6147) MODULE : CMH_PHBT | +| STATE : code ROUTINE : tAT_PlusCPBF | ++--------------------------------------------------------------------+ + + PURPOSE : This is the functional counterpart to the +CPBF=? + AT command which is responsible to test for the length of + phone numbers and the length of texts associated with + these numbers. + + <nlength>: maximum length of phone number + <tlength>: maximum length of associated text +*/ +GLOBAL T_ACI_RETURN tAT_PlusCPBF ( T_ACI_CMD_SRC srcId, + UBYTE* nlength, + UBYTE* tlength ) +{ + SHORT firstIdx; /* dummy variable, not used */ + SHORT lastIdx; /* dummy variable, not used */ + + TRACE_FUNCTION ("tAT_PlusCPBF ()"); + + return(cmhPHB_get_phonebook_info(srcId, &firstIdx, &lastIdx, nlength, tlength)); +} + +/* ++--------------------------------------------------------------------+ +| PROJECT : GSM-PS (6147) MODULE : CMH_PHBT | +| STATE : code ROUTINE : tAT_PlusCPBW | ++--------------------------------------------------------------------+ + + PURPOSE : This is the functional counterpart to the +CPBW=? + AT command which is responsible to test for all supported + memory indices, the length of phone numbers and + the length of texts associated with these numbers. + + <firstIdx>: first supported index + <lastIdx>: last supported index + <nlength>: maximum length of phone number + <tlength>: maximum length of associated text +*/ +GLOBAL T_ACI_RETURN tAT_PlusCPBW ( T_ACI_CMD_SRC srcId, + SHORT* firstIdx, + SHORT* lastIdx, + UBYTE* nlength, + UBYTE* tlength ) +{ + TRACE_FUNCTION ("tAT_PlusCPBW ()"); + + return(cmhPHB_get_phonebook_info(srcId, firstIdx, lastIdx, nlength, tlength)); +} + +/*==== EOF ========================================================*/