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

📄 layerapp.c

📁 gsm map协议源代码
💻 C
📖 第 1 页 / 共 5 页
字号:

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

#endif /* MAP_VLR || MAP_HLR */

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

#ifdef ANSI
PUBLIC S16 AuLiMatFRMgmtInd
(
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 */
MaFREv    *frEv             /* Fault and Recovery Event Structure */            
)
#else
PUBLIC S16 AuLiMatFRMgmtInd(pst, suId, suDlgId, spDlgId, invkId, oprType, frEv)
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 */
MaFREv    *frEv;            /* Fault and Recovery Event Structure */            
#endif
{
  Txt prntBuf[MA_PRNTBUF_SIZE];
  TRC2(AuLiMatFRMgmtInd)

  sprintf(prntBuf, "MAP Fault Management Ind suId %d - SuDlgId %3ld   SpDlgId %3ld Operation %d\n", suId, suDlgId, spDlgId, oprType);
  SPrint(prntBuf);
  qElm.evtType = MAT_EVTFRMGMTIND;
  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(frEv != NULLP)
  {
     cmCpy((PTR)frEv, (PTR)&qElm.s.operEv.oprEv.frEv, sizeof(MaFREv));
  }

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

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

/* --------------- OAM Management ----------------------------------- */
#if (MAP_MSC || MAP_VLR || MAP_HLR)

/* 
* 
*       Fun:   AuLiMatOAMCfm 
*  
*       Desc:  This function handles the Confirm for Operation and Maintenance
*              services from the MAP user 
*  
*       Ret:   ROK      - ok
* 
*       Notes: None 
* 
*       File:  layerapp.c
* 
*/

#ifdef ANSI
PUBLIC S16 AuLiMatOAMCfm
(
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 */
MaOAMEv    *oamEv           /* Operation and Maintenance Event Structure */             
)
#else
PUBLIC S16 AuLiMatOAMCfm(pst, suId, suDlgId, spDlgId, invkId, oprType, usrErr, prvErr, oamEv)
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 */
MaOAMEv    *oamEv;          /* Operation and Maintenance Event Structure */             
#endif
{
  Txt prntBuf[MA_PRNTBUF_SIZE];


  TRC2(AuLiMatOAMCfm)
  sprintf(prntBuf, "MAP OAM Management Cfm suId %d - SuDlgId %3ld   SpDlgId %3ld Operation %d\n", suId, suDlgId, spDlgId, oprType);
  SPrint(prntBuf);
  qElm.evtType = MAT_EVTOAMMGMTCFM;
  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(oamEv != NULLP)
  {
     cmCpy((PTR)oamEv, (PTR)&qElm.s.operEv.oprEv.oamEv, sizeof(MaOAMEv));
  }

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

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

#if (MAP_MSC || MAP_VLR || MAP_HLR || MAP_GSN)


/* 
* 
*       Fun:   AuLiMatOAMInd 
*  
*       Desc:  This function handles the  indication for Operation and Maintenance
*              services from the MAP user.
*  
*       Ret:   ROK      - ok
* 
*       Notes: None 
* 
*       File:  layerapp.c
* 
*/

#ifdef ANSI
PUBLIC S16 AuLiMatOAMInd
(
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 */
MaOAMEv    *oamEv           /* Operation and Maintenance Event Structure */             
)
#else
PUBLIC S16 AuLiMatOAMInd(pst, suId, suDlgId, spDlgId, invkId, oprType, oamEv)
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 */
MaOAMEv    *oamEv;          /* Operation and Maintenance Event Structure */             
#endif
{
  Txt prntBuf[MA_PRNTBUF_SIZE];
  TRC2(AuLiMatOAMInd)
  sprintf(prntBuf, "MAP OAM Management Ind suId %d - SuDlgId %3ld   SpDlgId %3ld Operation %d\n", 
                   suId, suDlgId, spDlgId, oprType);
  SPrint(prntBuf);
  qElm.evtType = MAT_EVTOAMMGMTIND;
  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(oamEv != NULLP)
  {
     cmCpy((PTR)oamEv, (PTR)&qElm.s.operEv.oprEv.oamEv, sizeof(MaOAMEv));
  }

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


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

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

#ifdef ANSI
PUBLIC S16 AuLiMatCallMgmtInd
(
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 */
MaCallEv    *callEv         /* Call Event Structure */          
)
#else
PUBLIC S16 AuLiMatCallMgmtInd(pst, suId, suDlgId, spDlgId, invkId, oprType, callEv)
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 */
MaCallEv    *callEv;        /* Call Event Structure */          
#endif
{
  Txt prntBuf[MA_PRNTBUF_SIZE];
  TRC2(AuLiMatCallMgmtInd)
  sprintf(prntBuf, "MAP Call Management Ind suId %d - SuDlgId %3ld   SpDlgId %3ld Operation %d\n", suId, suDlgId, spDlgId, oprType);
  SPrint(prntBuf);
  qElm.evtType = MAT_EVTCALLMGMTIND;
  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(callEv != NULLP)
  {
     cmCpy((PTR)callEv, (PTR)&qElm.s.operEv.oprEv.callEv, sizeof(MaCallEv));
  }

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

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

#ifdef ANSI
PUBLIC S16 AuLiMatCallMgmtCfm
(
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 */
MaCallEv    *callEv         /* Call Management Event Structure */               
)
#else
PUBLIC S16 AuLiMatCallMgmtCfm(pst, suId, suDlgId, spDlgId, invkId, oprType, usrErr,prvErr, callEv)
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 */
MaCallEv    *callEv;        /* call Management Event Structure */               
#endif
{
  Txt prntBuf[MA_PRNTBUF_SIZE];
  TRC2(AuLiMatCallMgmtCfm)
  sprintf(prntBuf, "MAP Call Management Cfm suId %d - SuDlgId %3ld   SpDlgId %3ld Operation %d\n", suId, suDlgId, spDlgId, oprType);
  SPrint(prntBuf);
  qElm.evtType = MAT_EVTCALLMGMTCFM;
  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(callEv != NULLP)
  {
     cmCpy((PTR)callEv, (PTR)&qElm.s.operEv.oprEv.callEv, sizeof(MaCallEv));
  }

  maAccPushMsgQ(&qElm);
   MAACC_INVOKE_TEST

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

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

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

#ifdef ANSI
PUBLIC S16 AuLiMatSSInd
(
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 */
MaInvokeId *lnkId,          /* Linked Invoke Id */
MaSSEv    *ssEv             /* Supplementry Services Event Structure */         
)
#else
PUBLIC S16 AuLiMatSSInd(pst, suId, suDlgId, spDlgId, invkId, oprType, lnkId, ssEv)
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 */
MaInvokeId *lnkId;          /* Linked Invoke Id */
MaSSEv    *ssEv;            /* Supplementry Services Event Structure */         
#endif
{
  Txt prntBuf[MA_PRNTBUF_SIZE];
  EXTERN MaAccCb maAccCb;


  TRC2(AuLiMatSSInd)
  sprintf(prntBuf, "MAP Supplementry Serv. Management Ind suId %d - SuDlgId %3ld   SpDlgId %3ld Operation %d\n", suId, suDlgId, spDlgId, oprType);
  SPrint(prntBuf);
  if((oprType == MAT_BEGIN_SUBS_ACTV) && (maAccCb.curTst.id != MA_TSTID_12))
  {
     /* This indication is not checked in the acceptance tests */
     /* so this should not be pushed into the msgQ */
     RETVALUE(ROK);
  }
  qElm.evtType = MAT_EVTSSMGMTIND;
  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(ssEv != NULLP)
  {
     cmCpy((PTR)ssEv, (PTR)&qElm.s.operEv.oprEv.ssEv, sizeof(MaSSEv));
  }

  maAccPushMsgQ(&qElm);
   MAACC_INVOKE_TEST

  RETVALUE(ROK);
} /* end of AuLiMatSSInd */
#endif /* MAP_HLR */

#if (MAP_VLR || MAP_HLR)

/* 
* 
*       Fun:   AuLiMatSSCfm 
*  
*       Desc:  This function handles the Confirm for Supplementry services 
*              services from the MAP user 
*
*       Ret:   ROK      - ok
* 
*       Notes: None 
* 
*       File:  layerapp.c
* 
*/

#ifdef ANSI
PUBLIC S16 AuLiMatSSCfm
(
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 */
MaSSEv    *ssEv             /* Supplementry Services Event Structure */         
)
#else
PUBLIC S16 AuLiMatSSCfm(pst, suId, suDlgId, spDlgId, invkId, oprType, usrErr,prvErr, ssEv)
Pst      *pst;              /* post structure */

⌨️ 快捷键说明

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