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

📄 layerapp.c

📁 gsm map协议源代码
💻 C
📖 第 1 页 / 共 5 页
字号:
SuId     suId;              /* service user id */
MaDlgId  suDlgId;           /* Service user dialogue Id */
MaDlgId  spDlgId;           /* Service provider dialogue Id */
MaInvokeId *invkId;         /* Invoke Id */
MaOprType  oprType;         /* Operation type */
MaUsrErr  *usrErr;          /* User Error */
MaPrvErr  *prvErr;          /* provider Error */
MaSSEv    *ssEv;            /* Supplementry Services Event Structure */         
#endif
{
  Txt prntBuf[MA_PRNTBUF_SIZE];

  TRC2(AuLiMatSSCfm)
  sprintf(prntBuf, "MAP Supplementry Serv. Management Cfm suId %d - SuDlgId %3ld   SpDlgId %3ld Operation %d\n", suId, suDlgId, spDlgId, oprType);
  SPrint(prntBuf);

  qElm.evtType = MAT_EVTSSMGMTCFM;
  qElm.suId    = suId;
  qElm.suDlgId = suDlgId;
  qElm.spDlgId = spDlgId;
  qElm.s.operEv.invId.pres = invkId->pres;
  qElm.s.operEv.invId.octet = invkId->octet;
  qElm.s.operEv.oprCode = oprType;

  if(usrErr != NULLP)
  {
     cmCpy((PTR)usrErr, (PTR)&qElm.s.operEv.usrErr, sizeof(MaUsrErr));
  }
  if(prvErr != NULLP)
  {
     cmCpy((PTR)prvErr, (PTR)&qElm.s.operEv.prvErr, sizeof(MaPrvErr));
  }
  if(ssEv != NULLP)
  {
     cmCpy((PTR)ssEv, (PTR)&qElm.s.operEv.oprEv.ssEv, sizeof(MaSSEv));
  }

  maAccPushMsgQ(&qElm);
   MAACC_INVOKE_TEST
  RETVALUE(ROK);
} /* end of AuLiMatSSCfm */

#endif /* MAP_VLR || MAP_HLR */

/* --------------- Short Message Services Management ------------------ */
#if (MAP_MSC || MAP_VLR || MAP_HLR || MAP_GSN)

/* 
* 
*       Fun:   AuLiMatSMCfm   
*  
*       Desc:  This function handles the Confirm for Short Message 
*              services from the MAP user 
*  
*       Ret:   ROK      - ok
* 
*       Notes: None 
* 
*       File:  layerapp.c
* 
*/

#ifdef ANSI
PUBLIC S16 AuLiMatSMCfm
(
Pst        *pst,            /* post structure */
SuId       suId,            /* service user id */
MaDlgId    suDlgId,         /* Service user dialogue Id */
MaDlgId    spDlgId,         /* Service provider dialogue Id */
MaInvokeId *invkId,         /* Invoke Id */
MaOprType  oprType,         /* Operation type */
MaUsrErr   *usrErr,         /* User Error */
MaPrvErr   *prvErr,         /* provider Error */
MaSMEv    *smEv             /* Short Message Event Structure */         
)
#else
PUBLIC S16 AuLiMatSMCfm(pst, suId, suDlgId, spDlgId, invkId, oprType, usrErr, prvErr, smEv)
Pst      *pst;              /* post structure */
SuId     suId;              /* service user id */
MaDlgId  suDlgId;           /* Service user dialogue Id */
MaDlgId  spDlgId;           /* Service provider dialogue Id */
MaInvokeId *invkId;         /* Invoke Id */
MaOprType  oprType;         /* Operation type */
MaUsrErr  *usrErr;          /* User Error */
MaPrvErr  *prvErr;          /* provider Error */
MaSMEv    *smEv;            /* Short Message Event Structure */         
#endif
{
  Txt prntBuf[MA_PRNTBUF_SIZE];
  TRC2(AuLiMatSMCfm)
  sprintf(prntBuf, "MAP Short Serv Management Cfm suId %d - SuDlgId %3ld   SpDlgId %3ld Operation %d\n", suId, suDlgId, spDlgId, oprType);
  SPrint(prntBuf);
  qElm.evtType = MAT_EVTSMMGMTCFM;
  qElm.suId    = suId;
  qElm.suDlgId = suDlgId;
  qElm.spDlgId = spDlgId;
  qElm.s.operEv.invId.pres = invkId->pres;
  qElm.s.operEv.invId.octet = invkId->octet;
  qElm.s.operEv.oprCode = oprType;

  if(usrErr != NULLP)
  {
     cmCpy((PTR)usrErr, (PTR)&qElm.s.operEv.usrErr, sizeof(MaUsrErr));
  }
  if(prvErr != NULLP)
  {
     cmCpy((PTR)prvErr, (PTR)&qElm.s.operEv.prvErr, sizeof(MaPrvErr));
  }
  if(smEv != NULLP)
  {
     cmCpy((PTR)smEv, (PTR)&qElm.s.operEv.oprEv.smEv, sizeof(MaSMEv));
  }

  maAccPushMsgQ(&qElm);
   MAACC_INVOKE_TEST
  RETVALUE(ROK);
} /* end of AuLiMatSMCfm */

#endif /* MAP_MSC || MAP_VLR || MAP_HLR || MAP_GSN */

#if (MAP_MSC || MAP_HLR || MAP_GSN)

/* 
* 
*       Fun:   AuLiMatSMInd 
*  
*       Desc:  This function handles the  indication for Short Message 
*              services from the MAP user.
*  
*       Ret:   ROK      - ok
* 
*       Notes: None 
* 
*       File:  layerapp.c
* 
*/

#ifdef ANSI
PUBLIC S16 AuLiMatSMInd
(
Pst        *pst,            /* post structure */
SuId       suId,            /* service user id */
MaDlgId    suDlgId,         /* Service user dialogue Id */
MaDlgId    spDlgId,         /* Service provider dialogue Id */
MaInvokeId *invkId,         /* Invoke Id */
MaOprType  oprType,         /* Operation type */
MaSMEv    *smEv             /* Short Message Event Structure */         
)
#else
PUBLIC S16 AuLiMatSMInd(pst, suId, suDlgId, spDlgId, invkId, oprType, smEv)
Pst      *pst;              /* post structure */
SuId     suId;              /* service user id */
MaDlgId  suDlgId;           /* Service user dialogue Id */
MaDlgId  spDlgId;           /* Service provider dialogue Id */
MaInvokeId *invkId;         /* Invoke Id */
MaOprType  oprType;         /* Operation type */
MaSMEv    *smEv;            /* Short Message Event Structure */         
#endif
{
  Txt prntBuf[MA_PRNTBUF_SIZE];

  TRC2(AuLiMatSMInd)
  sprintf(prntBuf, "MAP Short Serv Management Ind suId %d - SuDlgId %3ld   SpDlgId %3ld Operation %d\n", suId, suDlgId, spDlgId, oprType);
  SPrint(prntBuf);

  qElm.evtType = MAT_EVTSMMGMTIND;
  qElm.suId    = suId;
  qElm.suDlgId = suDlgId;
  qElm.spDlgId = spDlgId;
  qElm.s.operEv.invId.pres = invkId->pres;
  qElm.s.operEv.invId.octet = invkId->octet;
  qElm.s.operEv.oprCode = oprType;

  if(smEv != NULLP)
  {
     cmCpy((PTR)smEv, (PTR)&qElm.s.operEv.oprEv.smEv, sizeof(MaSMEv));
  }

  maAccPushMsgQ(&qElm);
   MAACC_INVOKE_TEST

  RETVALUE(ROK);
} /* end of AuLiMatSMInd */


#endif /* MAP_MSC || MAP_HLR || MAP_GSN */

/* --------------- Subscriber Management ------------------------------ */
#if (MAP_VLR || MAP_HLR || MAP_GSN || MAP_MLC)

/* 
* 
*       Fun:   AuLiMatSubMgmtInd 
*  
*       Desc:  This function handles the  indication for Subscriber Management 
*              services from the MAP user.
*  
*       Ret:   ROK      - ok
* 
*       Notes: None 
* 
*       File:  layerapp.c
* 
*/

#ifdef ANSI
PUBLIC S16 AuLiMatSubMgmtInd
(
Pst        *pst,            /* post structure */
SuId       suId,            /* service user id */
MaDlgId    suDlgId,         /* Service user dialogue Id */
MaDlgId    spDlgId,         /* Service provider dialogue Id */
MaInvokeId *invkId,         /* Invoke Id */
MaOprType  oprType,         /* Operation type */
MaSubEv    *subEv           /* Subscriber Event Structure */            
)
#else
PUBLIC S16 AuLiMatSubMgmtInd(pst, suId, suDlgId, spDlgId, invkId, oprType, subEv)
Pst      *pst;              /* post structure */
SuId     suId;              /* service user id */
MaDlgId  suDlgId;           /* Service user dialogue Id */
MaDlgId  spDlgId;           /* Service provider dialogue Id */
MaInvokeId *invkId;         /* Invoke Id */
MaOprType  oprType;         /* Operation type */
MaSubEv    *subEv;          /* Subscriber Event Structure */            
#endif
{
  Txt prntBuf[MA_PRNTBUF_SIZE];

  TRC2(AuLiMatSubMgmtInd)


  sprintf(prntBuf, "MAP Subscriber Management Ind suId %d - SuDlgId %3ld   SpDlgId %3ld Operation %d\n", suId, suDlgId, spDlgId, oprType);
  SPrint(prntBuf);

  qElm.evtType = MAT_EVTSUBMGMTIND;
  qElm.suId    = suId;
  qElm.suDlgId = suDlgId;
  qElm.spDlgId = spDlgId;
  qElm.s.operEv.invId.pres = invkId->pres;
  qElm.s.operEv.invId.octet = invkId->octet;
  qElm.s.operEv.oprCode = oprType;

  if(subEv != NULLP)
  {
     cmCpy((PTR)subEv, (PTR)&qElm.s.operEv.oprEv.subEv, sizeof(MaSubEv));
  }

  maAccPushMsgQ(&qElm);
   MAACC_INVOKE_TEST
  RETVALUE(ROK);
} /* end of AuLiMatSubMgmtInd */

#endif /* MAP_VLR || MAP_HLR || MAP_GSN || MAP_MLC */

#if (MAP_VLR || MAP_HLR || MAP_GSN)


/* 
* 
*       Fun:   AuLiMatSubMgmtCfm 
*  
*       Desc:  This function handles the Confirm for Subscriber Management 
*              services from the MAP user 
*  
*       Ret:   ROK      - ok
* 
*       Notes: None 
* 
*       File:  layerapp.c
* 
*/

#ifdef ANSI
PUBLIC S16 AuLiMatSubMgmtCfm
(
Pst        *pst,            /* post structure */
SuId       suId,            /* service user id */
MaDlgId    suDlgId,         /* Service user dialogue Id */
MaDlgId    spDlgId,         /* Service provider dialogue Id */
MaInvokeId *invkId,         /* Invoke Id */
MaOprType  oprType,         /* Operation type */
MaUsrErr   *usrErr,         /* User Error */
MaPrvErr   *prvErr,         /* provider Error */
MaSubEv    *subEv           /* Subscriber Management Event Structure */         
)
#else
PUBLIC S16 AuLiMatSubMgmtCfm(pst, suId, suDlgId, spDlgId, invkId, oprType, usrErr, prvErr, subEv)
Pst      *pst;              /* post structure */
SuId     suId;              /* service user id */
MaDlgId  suDlgId;           /* Service user dialogue Id */
MaDlgId  spDlgId;           /* Service provider dialogue Id */
MaInvokeId *invkId;         /* Invoke Id */
MaOprType  oprType;         /* Operation type */
MaUsrErr  *usrErr;          /* User Error */
MaPrvErr  *prvErr;          /* provider Error */
MaSubEv    *subEv;          /* Subscriber Management Event Structure */         
#endif
{
  Txt prntBuf[MA_PRNTBUF_SIZE];

  TRC2(AuLiMatSubMgmtCfm)
  sprintf(prntBuf, "MAP Subscriber Management Cfm suId %d - SuDlgId %3ld   SpDlgId %3ld Operation %d\n", suId, suDlgId, spDlgId, oprType);
  SPrint(prntBuf);

  qElm.evtType = MAT_EVTSUBMGMTCFM;
  qElm.suId    = suId;
  qElm.suDlgId = suDlgId;
  qElm.spDlgId = spDlgId;
  qElm.s.operEv.invId.pres = invkId->pres;
  qElm.s.operEv.invId.octet = invkId->octet;
  qElm.s.operEv.oprCode = oprType;

  if(usrErr != NULLP)
  {
     cmCpy((PTR)usrErr, (PTR)&qElm.s.operEv.usrErr, sizeof(MaUsrErr));
  }
  if(prvErr != NULLP)
  {
     cmCpy((PTR)prvErr, (PTR)&qElm.s.operEv.prvErr, sizeof(MaPrvErr));
  }
  if(subEv != NULLP)
  {
     cmCpy((PTR)subEv, (PTR)&qElm.s.operEv.oprEv.subEv, sizeof(MaSubEv));
  }

  maAccPushMsgQ(&qElm);
   MAACC_INVOKE_TEST
  RETVALUE(ROK);
} /* end of AuLiMatSubMgmtCfm */

#endif /* MAP_VLR || MAP_HLR || MAP_GSN */

/* --------------- PDP Context Activation Management ------------------ */
#if (MAP_HLR || MAP_GSN)

/* 
* 
*       Fun:   AuLiMatNwReqPdpCntxtActvInd 
*  
*       Desc:  This function handles the  indication for Subscriber Management 
*              services from the MAP user.
*  
*       Ret:   ROK      - ok
* 
*       Notes: None 
* 
*       File:  layerapp.c
* 
*/

#ifdef ANSI
PUBLIC S16 AuLiMatNwReqPdpCntxtActvInd
(
Pst        *pst,            /* post structure */
SuId       suId,            /* service user id */
MaDlgId    suDlgId,         /* Service user dialogue Id */
MaDlgId    spDlgId,         /* Service provider dialogue Id */
MaInvokeId *invkId,         /* Invoke Id */
MaOprType  oprType,         /* Operation type */
MaPdpActvEv    *pdpActvEv           /* Subscriber Event Structure */            
)
#else
PUBLIC S16 AuLiMatNwReqPdpCntxtActvInd(pst, suId, suDlgId, spDlgId, invkId, oprType, pdpActvEv)
Pst      *pst;              /* post structure */
SuId     suId;              /* service user id */
MaDlgId  suDlgId;           /* Service user dialogue Id */
MaDlgId  spDlgId;           /* Service provider dialogue Id */
MaInvokeId *invkId;         /* Invoke Id */
MaOprType  oprType;         /* Operation type */
MaPdpActvEv    *pdpActvEv;          /* Subscriber Event Structure */            
#endif
{
  Txt prntBuf[MA_PRNTBUF_SIZE];

  TRC2(AuLiMatNwReqPdpCntxtActvInd)


  sprintf(prntBuf, "MAP Subscriber Management Ind suId %d - SuDlgId %3ld   SpDlgId %3ld Operation %d\n", suId, suDlgId, spDlgId, oprType);
  SPrint(prntBuf);

  qElm.evtType = MAT_EVTPDPACTVIND;
  qElm.suId    = suId;
  qElm.suDlgId = suDlgId;
  qElm.spDlgId = spDlgId;
  qElm.s.operEv.invId.pres = invkId->pres;
  qElm.s.operEv.invId.octet = invkId->octet;
  qElm.s.operEv.oprCode = oprType;

  if(pdpActvEv != NULLP)
  {
     cmCpy((PTR)pdpActvEv, (PTR)&qElm.s.operEv.oprEv.pdpActvEv, sizeof(MaPdpActvEv));
  }

  maAccPushMsgQ(&qElm);
   MAACC_INVOKE_TEST
  RETVALUE(ROK);
} /* end of AuLiMatNwReqPdpCntxtActvInd */


/* 
* 
*       Fun:   AuLiMatNwReqPdpCntxtActvCfm 
*  
*       Desc:  This function handles the Confirm for Subscriber Management 
*              services from the MAP user 
*  
*       Ret:   ROK      - ok
* 
*       Notes: None 
* 
*       File:  layerapp.c
* 
*/

#ifdef ANSI
PUBLIC S16 AuLiMatNwReqPdpCntxtActvCfm
(
Pst        *pst,            /* post structure */
SuId       suId,            /* service user id */
MaDlgId    suDlgId,         /* Service user dialogue Id */
MaDlgId    spDlgId,         /* Service provider dialogue Id */
MaInvokeId *invkId,         /* Invoke Id */
MaOprType  oprType,         /* Operation type */
MaUsrErr   *usrErr,         /* User Error */
MaPrvErr   *prvErr,         /* provider Error */
MaPdpActvEv    *pdpActvEv           /* Subscriber Management Event Structure */         
)
#else
PUBLIC S16 AuLiMatNwReqPdpCntxtActvCfm(pst, suId, suDlgId, spDlgId, invkId, oprType, usrErr, prvErr, pdpActvEv)
Pst      *pst;              /* post structure */
SuId     suId;              /* service user id */
MaDlgId  suDlgId;           /* Service user dialogue Id */
MaDlgId  spDlgId;           /* Service provider dialogue Id */
MaInvokeId *invkId;         /* Invoke Id */
MaOprType  oprType;         /* Operation type */
MaUsrErr  *usrErr;          /* User Error */
MaPrvErr  *prvErr;          /* provider Error */
MaPdpActvEv    *pdpActvEv;          /* Subscriber Management Event Structure */         
#endif
{
  Txt prntBuf[MA_PRNTBUF_SIZE];

  TRC2(AuLiMatNwReqPdpCntxtActvCfm)
  sprintf(prntBuf, "MAP Subscriber Management Cfm suId %d - SuDlgId %3ld   SpDlgId %3ld Operation %d\n", suId, suDlgId, spDlgId, oprType);
  SPrint(prntBuf);

  qElm.evtType = MAT_EVTPDPACTVCFM;
  qElm.suId    = suId;
  qElm.suDlgId = suDlgId;
  qElm.spDlgId = spDlgId;
  qElm.s.operEv.invId.pres = invkId->pres;
  qElm.s.operEv.invId.octet = invkId->octet;
  qElm.s.operEv.oprCode = oprType;

  if(usrErr != NULLP)
  {
     cmCpy((PTR)usrErr, (PTR)&qElm.s.operEv.usrErr, sizeof(MaUsrErr));
  }
  if(prvErr != NULLP)
  {
     cmCpy((PTR)prvErr, (PTR)&qElm.s.operEv.prvE

⌨️ 快捷键说明

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