⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 ma_acc.h

📁 gsm map协议源代码
💻 H
📖 第 1 页 / 共 5 页
字号:
case MAT_PROCUSSDATA:\
case MAT_PROCUSSREQ:\
case MAT_USSREQ:\
case MAT_USSNOTIFY:\
case MAT_REGPASSWD:\
case MAT_GETPASSWD:\
case MAT_REGCCENT:\
case MAT_ERASECCENT:\
   {\
   MaAccDlgCp    *_dlgCp = &maAccCb.dlgCp[_dlgIdx];          \
   AuLiMatSSReq(&maAccCb.uiPst,_spId,_dlgCp->auDlgId,\
   _dlgCp->smaDlgId,_invId,_oCode,_lnkId,(MaSSEv *)_ev);\
   break;\
   }\
case MAT_SSINV_NOTIFY:\
case MAT_FWDSM:\
case MAT_ROUTINFOSM:\
case MAT_MT_FWDSM:\
case MAT_SMDEL:\
case MAT_INFSC:\
case MAT_ALRTSC:\
case MAT_SMRDY:\
case MAT_NOTSUBPRES:\
case MAT_ALRTSCWRSLT:\
   {\
   MaAccDlgCp    *_dlgCp = &maAccCb.dlgCp[_dlgIdx];          \
   AuLiMatSMReq(&maAccCb.uiPst,_spId,_dlgCp->auDlgId,\
   _dlgCp->smaDlgId,_invId,_oCode,(MaSMEv *)_ev);\
   break;\
   }\
case MAT_INSSUBSDATA:\
case MAT_DELSUBSDATA:\
case MAT_PROVSUBSINFO:\
case MAT_ANY_INTER:\
case MAT_SNDPARAM:\
case MAT_ANY_SUBSDATA_INTER:\
case MAT_ANY_MOD:\
case MAT_NOTE_SUBSDATA_MOD:\
   {\
   MaAccDlgCp    *_dlgCp = &maAccCb.dlgCp[_dlgIdx];          \
   AuLiMatSubMgmtReq(&maAccCb.uiPst,_spId,_dlgCp->auDlgId,\
   _dlgCp->smaDlgId,_invId,_oCode,(MaSubEv *)_ev);\
   break;\
   }\
case MAT_GPRS_ROUTINFO:\
case MAT_FAILRPT:\
case MAT_GPRS_NOTEMSPRES:\
   {\
   MaAccDlgCp    *_dlgCp = &maAccCb.dlgCp[_dlgIdx];          \
   AuLiMatNwReqPdpCntxtActvReq(&maAccCb.uiPst,_spId,_dlgCp->auDlgId,\
   _dlgCp->smaDlgId,_invId,_oCode,(MaPdpActvEv *)_ev);\
   break;\
   }\
case MAT_PROVSUBSLOC:\
case MAT_SENDROUTINFOFORLCS:\
case MAT_SUBSLOCRPT:\
   {\
   MaAccDlgCp    *_dlgCp = &maAccCb.dlgCp[_dlgIdx];          \
   AuLiMatLocServMgmtReq(&maAccCb.uiPst,_spId,_dlgCp->auDlgId,\
   _dlgCp->smaDlgId,_invId,_oCode,(MaLocServEv *)_ev);\
   break;\
   }\
default:\
   break;\
}

#define MAACCOPRRSP(_spId, _dlgIdx, _invId,  _oCode, _oprErr,_ev) \
switch(_oCode)\
{\
case MAT_UPLOC:\
case MAT_CANCELLOC:\
case MAT_PURGE:\
case MAT_SNDID:\
case MAT_GPRS_UPLOC:\
case MAT_NOTE_MMEVT:\
   {\
   MaAccDlgCp    *_dlgCp = &maAccCb.dlgCp[_dlgIdx];          \
   AuLiMatLocMgmtRsp(&maAccCb.uiPst,_spId,_dlgCp->auDlgId,\
   _dlgCp->smaDlgId,_invId,_oCode,_oprErr,(MaLocEv *)_ev);\
   break;\
   }\
case MAT_PRE_HO:\
case MAT_PRE_SUBSHO:\
case MAT_PER_HO:\
case MAT_PER_SUBSHO:\
case MAT_SNDENDSIG:\
case MAT_PROCACCSIG:\
case MAT_FWDACCSIG:\
   {\
   MaAccDlgCp    *_dlgCp = &maAccCb.dlgCp[_dlgIdx];          \
   AuLiMatHOMgmtRsp(&maAccCb.uiPst,_spId,_dlgCp->auDlgId,\
   _dlgCp->smaDlgId,_invId,_oCode,_oprErr,(MaHoEv *)_ev);\
   break;\
   }\
case MAT_AUTHINFO:\
case MAT_AUTHFAILRPT:\
   {\
   MaAccDlgCp    *_dlgCp = &maAccCb.dlgCp[_dlgIdx];          \
   AuLiMatAuthMgmtRsp(&maAccCb.uiPst,_spId,_dlgCp->auDlgId,\
   _dlgCp->smaDlgId,_invId,_oCode,_oprErr,(MaAuthEv *)_ev);\
   break;\
   }\
case MAT_CHKIMEI:\
   {\
   MaAccDlgCp    *_dlgCp = &maAccCb.dlgCp[_dlgIdx];          \
   AuLiMatIMEIMgmtRsp(&maAccCb.uiPst,_spId,_dlgCp->auDlgId,\
   _dlgCp->smaDlgId,_invId,_oCode,_oprErr,(MaIMEIEv *)_ev);\
   break;\
   }\
case MAT_RESET:\
case MAT_RESTOREDATA:\
case MAT_FWDCHKSSIND:\
   {\
   MaAccDlgCp    *_dlgCp = &maAccCb.dlgCp[_dlgIdx];          \
   AuLiMatFRMgmtRsp(&maAccCb.uiPst,_spId,_dlgCp->auDlgId,\
   _dlgCp->smaDlgId,_invId,_oCode,_oprErr,(MaFREv *)_ev);\
   break;\
   }\
case MAT_ACTVTRACE:\
case MAT_DACTVTRACE:\
case MAT_SNDIMSI:\
case MAT_TRACESUBSACTV:\
case MAT_NOTEINTERHO:\
   {\
   MaAccDlgCp    *_dlgCp = &maAccCb.dlgCp[_dlgIdx];          \
   AuLiMatOAMRsp(&maAccCb.uiPst,_spId,_dlgCp->auDlgId,\
   _dlgCp->smaDlgId,_invId,_oCode,_oprErr,(MaOAMEv *)_ev);\
   break;\
   }\
case MAT_ROUTINFO:\
case MAT_PROVROAMNMB:\
case MAT_PROV_SIWFS_NMB:\
case MAT_SIWFS_SIGMOD:\
case MAT_RESCALLHANDL:\
case MAT_SETRPTSTATE:\
case MAT_STARPT:\
case MAT_RMTUSRFREE:\
case MAT_PREP_GRPCALL:\
case MAT_SND_GRPCALLENDSIG:\
case MAT_PRO_GRPCALLSIG:\
case MAT_FWD_GRPCALLSIG:\
case MAT_IST_ALERT:\
case MAT_IST_COMMAND:\
   {\
   MaAccDlgCp    *_dlgCp = &maAccCb.dlgCp[_dlgIdx];          \
   AuLiMatCallMgmtRsp(&maAccCb.uiPst,_spId,_dlgCp->auDlgId,\
   _dlgCp->smaDlgId,_invId,_oCode,_oprErr,(MaCallEv *)_ev);\
   break;\
   }\
case MAT_REGSS:\
case MAT_ERASESS:\
case MAT_ACTVSS:\
case MAT_DACTVSS:\
case MAT_INTERSS:\
case MAT_PROCUSSDATA:\
case MAT_PROCUSSREQ:\
case MAT_USSREQ:\
case MAT_USSNOTIFY:\
case MAT_REGPASSWD:\
case MAT_GETPASSWD:\
case MAT_REGCCENT:\
case MAT_ERASECCENT:\
   {\
   MaAccDlgCp    *_dlgCp = &maAccCb.dlgCp[_dlgIdx];          \
   AuLiMatSSRsp(&maAccCb.uiPst,_spId,_dlgCp->auDlgId,\
   _dlgCp->smaDlgId,_invId,_oCode,_oprErr,(MaSSEv *)_ev);\
   break;\
   }\
case MAT_SSINV_NOTIFY:\
case MAT_FWDSM:\
case MAT_ROUTINFOSM:\
case MAT_MT_FWDSM:\
case MAT_SMDEL:\
case MAT_INFSC:\
case MAT_ALRTSC:\
case MAT_SMRDY:\
case MAT_NOTSUBPRES:\
case MAT_ALRTSCWRSLT:\
   {\
   MaAccDlgCp    *_dlgCp = &maAccCb.dlgCp[_dlgIdx];          \
   AuLiMatSMRsp(&maAccCb.uiPst,_spId,_dlgCp->auDlgId,\
   _dlgCp->smaDlgId,_invId,_oCode,_oprErr,(MaSMEv *)_ev);\
   break;\
   }\
case MAT_INSSUBSDATA:\
case MAT_DELSUBSDATA:\
case MAT_PROVSUBSINFO:\
case MAT_ANY_INTER:\
case MAT_SNDPARAM:\
case MAT_ANY_SUBSDATA_INTER:\
case MAT_ANY_MOD:\
case MAT_NOTE_SUBSDATA_MOD:\
   {\
   MaAccDlgCp    *_dlgCp = &maAccCb.dlgCp[_dlgIdx];          \
   AuLiMatSubMgmtRsp(&maAccCb.uiPst,_spId,_dlgCp->auDlgId,\
   _dlgCp->smaDlgId,_invId,_oCode,_oprErr,(MaSubEv *)_ev);\
   break;\
   }\
case MAT_GPRS_ROUTINFO:\
case MAT_FAILRPT:\
case MAT_GPRS_NOTEMSPRES:\
   {\
   MaAccDlgCp    *_dlgCp = &maAccCb.dlgCp[_dlgIdx];          \
   AuLiMatNwReqPdpCntxtActvRsp(&maAccCb.uiPst,_spId,_dlgCp->auDlgId,\
   _dlgCp->smaDlgId,_invId,_oCode,_oprErr,(MaPdpActvEv *)_ev);\
   break;\
   }\
case MAT_PROVSUBSLOC:\
case MAT_SENDROUTINFOFORLCS:\
case MAT_SUBSLOCRPT:\
   {\
   MaAccDlgCp    *_dlgCp = &maAccCb.dlgCp[_dlgIdx];          \
   AuLiMatLocServMgmtRsp(&maAccCb.uiPst,_spId,_dlgCp->auDlgId,\
   _dlgCp->smaDlgId,_invId,_oCode,_oprErr,(MaLocServEv *)_ev);\
   break;\
   }\
}







#ifndef MATV2
#define MAACCDELIMREQ(_spId, _dlgIdx)                 \
{                                                     \
   MaAccDlgCp   *_dlgCp = &maAccCb.dlgCp[_dlgIdx];    \
                                                      \
   (Void) AuLiMatDelimReq(&maAccCb.uiPst,             \
                  _spId,                              \
                  _dlgCp->auDlgId,                    \
                  _dlgCp->smaDlgId);                  \
}
#else /* MATV2 */
#define MAACCDELIMREQ(_spId, _dlgIdx)                 \
{                                                     \
   MaDelimReqEv _matDelimReqEv;                      \
   MaAccDlgCp   *_dlgCp = &maAccCb.dlgCp[_dlgIdx];    \
                                                      \
   cmZero(&_matDelimReqEv,sizeof(MaDelimReqEv));     \
   (Void) AuLiMatDelimReq(&maAccCb.uiPst,             \
                  _spId,                              \
                  _dlgCp->auDlgId,                    \
                  _dlgCp->smaDlgId,_matDelimReqEv);   \
}
#endif /* MATV2 */


#ifdef MATV2
#define MAACCDELIMREQUEST(_spId, _dlgIdx, _matDelimReqEv) \
{                                                     \
   MaAccDlgCp   *_dlgCp = &maAccCb.dlgCp[_dlgIdx];    \
                                                      \
   (Void) AuLiMatDelimReq(&maAccCb.uiPst,             \
                  _spId,                              \
                  _dlgCp->auDlgId,                    \
                  _dlgCp->smaDlgId,                   \
                  _matDelimReqEv);                    \
}
#endif /* MATV2 */

#define MAACCABRTREQ(_spId, _dlgIdx, _abrtEv)        \
{                                                     \
   MaAccDlgCp    *_dlgCp = &maAccCb.dlgCp[_dlgIdx];   \
                                                      \
   (Void) AuLiMatAbrtReq(&maAccCb.uiPst,              \
                  _spId,                              \
                  _dlgCp->auDlgId,                    \
                  _dlgCp->smaDlgId,                   \
                  _abrtEv);                           \
}

#define MA_ACC_ISACNSAME(_acn1, _acn2)    maAccSameAcn(_acn1, _acn2)
#define MA_ACC_ISADDRSAME(_addr1, _addr2) maAccSameAddr(_addr1, _addr2)

#define MA_ACC_CHK_USRABRTINFO(_info, _res)                               \
{                                                                         \
   if (((_info)->pres == NOTPRSNT) ||                                     \
       ((_info)->len != 64)  ||                                           \
       (cmCmpStr((U8 *) (&maAccUsrAbrtInfo)->val, 64, (_info)->val, (_info)->len) != 0)) \
      _res = RFAILED;                                                     \
   else                                                                   \
      _res = ROK;                                                         \
}

#define MA_ACC_SET_OPCODE(_opcode, _code)             \
{                                                     \
   _opcode.pres             = TRUE;                   \
   _opcode.oprCodeType      = MAT_TKN_INT;            \
   _opcode.oprCodeSpec      = (U16) _code;            \
   _opcode.u.oprInt.pres    = PRSNT_NODEF;            \
   _opcode.u.oprInt.val     = _code;                  \
}

#define MA_ACC_FILL_TKNSTR32_LEN     4
#define MA_ACC_FILL_TKNSTR256_LEN    4
#define MA_ACC_FILL_TKNSTR32_VAL    65
#define MA_ACC_FILL_TKNSTR256_VAL   66
#define MA_ACC_FILL_TKNU8_VAL        1


#define MA_ACC_CHECK_OPR_VER(_x,_maVer)                 \
      if(((maAccCb.pSwtch == LMA_VER1)  && !(IS_EQUAL_VER1(_maVer)))||\
      ((maAccCb.pSwtch == LMA_VER2)  && !(IS_EQUAL_VER2(_maVer))) ||\
      ((maAccCb.pSwtch == LMA_VER2P) && !(IS_EQUAL_VER2P(_maVer)))||\
      ((maAccCb.pSwtch == LMA_VER4)  && !(IS_EQUAL_VER4(_maVer))))\
      {\
         MAACCPRNERROR((prntBuf,"Context Version Not applicable\n"));\
         maAccCb.curTst.state = _x;\
      }

#ifndef MA_STATIC_EVT_STRUCT
#if (ERRCLASS & ERRCLS_DEBUG)
#define MA_ACC_ALLOC_LWLC_PTR(x,y)   if(maAccAuUiSel == 2){\
        x *ev1;\
        SGetSBuf(maAccCb.uiPst.region,maAccCb.uiPst.pool,(Data **)&ev1,\
        sizeof(x)); if(ev1 == (x *)NULLP) {\
           SLogError(maAccCb.uiPst.srcEnt, maAccCb.uiPst.srcInst, \
                     maAccCb.uiPst.srcProcId, __FILE__,\
               __LINE__, (ErrCls) ERRCLS_DEBUG, 0, (ErrVal)0,\
               "SGetSBuf() Failed: Static Memory Allocation Failure");\
           RETVALUE(RFAILED); }\
        cmCopy((U8 *) &(((MaAllSSEv *)ev)->y), (U8 *)ev1,sizeof(x)); ev = (PTR)ev1;}

#else /* ERRCLASS & ERRCLS_DEBUG */
#define MA_ACC_ALLOC_LWLC_PTR(x,y)   if(maAccAuUiSel == 2){\
        x *ev1;\
        SGetSBuf(maAccCb.uiPst.region,maAccCb.uiPst.pool,(Data **)&ev1,\
        sizeof(x)); if(ev1 == (x *)NULLP) {\
           RETVALUE(RFAILED); }\
        cmCopy((U8 *) &(((MaAllSSEv *)ev)->y), (U8 *)ev1,sizeof(x)); ev = (PTR)ev1;}

#endif /* ERRCLASS & ERRCLS_DEBUG */
#else /* MA_STATIC_EVT_STRUCT */
#define MA_ACC_ALLOC_LWLC_PTR(x,y)
#endif
       
#define MA_ACC_CHK_EXTCONT(_extCont, _res)               \
{                                                        \
   U32  j;                                               \
   U32  k;                                               \
   if ((maAccMaFillExtCont == TRUE) &&                   \
       (maAccCb.pSwtch >= LMA_VER2P))                    \
   {                                                     \
      for (j = 0; j < MA_MAX_NMB_PRI_EXT; j ++)          \
      {                                                  \
         if ((_extCont)->priExtLst[j].pres != TRUE)      \
            _res = RFAILED;                              \
         if ((_extCont)->priExtLst[j].len != 5)          \
            _res = RFAILED;                              \
         for (k = 0; k < 5; k++)                         \
         {                                               \
            if ((_extCont)->priExtLst[j].val[k] != 'D')  \
               _res = RFAILED;                           \
         }                                               \
      }                                                  \
   }                                                     \
   _res = ROK;                                           \
}                           
#define MA_ACC_CHK_USRINFO(_usrInfo, _res)               \
{                                                        \
   U32  j;                                               \
   if ((maAccMaFillExtCont == TRUE) &&                   \
       (maAccCb.pSwtch != LMA_VER1))                     \
   {                                                     \
      if ((_usrInfo)->pres != TRUE)                      \
          _res = RFAILED;                                \
      if ((_usrInfo)->len != 5)                          \
         _res = RFAILED;                                 \
      for ( j = 0; j < 5; j++)                           \
      {                                                  \
         if ((_usrInfo)->val[j] != 'D')                  \
             _res = RFAILED;                             \
      }                                                  \
   }                                                     \
   _res = ROK;                                           \
}
 
#define MA_ACC_CHK_SA_MAPTBL(_val, _cc, _ndc, _idx, _indx) \
    CAT_PLMNID_164_VAL(_val, _cc, _ndc) \
    saMap = *(maCb.maSecCp.maSaMapTbl + _idx); \
    if (saMap->plid_164 != _val) \
    { \
       MAACCPRNERROR((prntBuf, "maAccTst606: Wrong PLMN_ID value \n")); \
       maAccCb.curTst.result = MA_TST_FAILED; \
       RETVALUE(RFAILED); \
    } \
    if (saMap->indx != _indx) \
    { \
       MAACCPRNERROR((prntBuf, "maAccT

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -