Q931mes_Generic *pMes = (Q931mes_Generic *)&buf[Q931L4HeaderSpace];
L3INT state = Q931GetCallState(pTrunk, pMes->CRV);
L3INT ret = Q931E_NO_ERROR;
- if(iFrom == 4)
- {
- /* TODO Add proc here*/
- ret = Q931Tx32(pTrunk,buf,pMes->Size);
- }
- else if(state == Q931_U0 && iFrom == 2)
- {
- ret = Q931ReleaseComplete(pTrunk, iFrom);
- }
- else
- {
+ if(iFrom == 4) {
+ /* TODO Add proc here*/
+ ret = Q931Tx32(pTrunk,buf,pMes->Size);
+ } else if(state == Q931_U0 && iFrom == 2) {
+ ret = Q931ReleaseComplete(pTrunk, buf);
+ } else {
ret = Q931ProcUnexpectedMessage(pTrunk, buf, iFrom);
}
return 0;
}
-L3INT Q931ReleaseComplete(Q931_TrunkInfo_t *pTrunk, L3INT iTo)
+L3INT Q931ReleaseComplete(Q931_TrunkInfo_t *pTrunk, L3UCHAR *buf)
{
- /* TODO: Unhandled paramaters */
- (void)pTrunk;
- (void)iTo;
+ Q931mes_Header *ptr = (Q931mes_Header*)&buf[Q931L4HeaderSpace];
+ ptr->MesType = Q931mes_RESTART_ACKNOWLEDGE;
- return 0;
+ return Q931Tx32(pTrunk,buf,ptr->Size);
}
L3INT Q931AckRestart(Q931_TrunkInfo_t *pTrunk, L3UCHAR *buf)
L3INT RetCode;
Q931mes_Header *ptr = (Q931mes_Header*)&buf[Q931L4HeaderSpace];
- ptr->MesType = Q931mes_RESTART_ACKNOWLEDGE;
+ ptr->MesType = Q931mes_RELEASE_COMPLETE;
RetCode = Q931Proc[pTrunk->Dialect][ptr->MesType](pTrunk, buf, 4);
L3INT Q931InitIEHLComp(Q931ie_HLComp * pIE);
L3INT Q931Disconnect(Q931_TrunkInfo_t *pTrunk, L3INT iTo, L3INT iCRV, L3INT iCause);
-L3INT Q931ReleaseComplete(Q931_TrunkInfo_t *pTrunk, L3INT iTo);
+L3INT Q931ReleaseComplete(Q931_TrunkInfo_t *pTrunk, L3UCHAR *buf);
L3INT Q931AckRestart(Q931_TrunkInfo_t *pTrunk, L3UCHAR *buf);
L3INT Q931AckConnect(Q931_TrunkInfo_t *pTrunk, L3UCHAR *buf);
L3INT Q931AckSetup(Q931_TrunkInfo_t *pTrunk, L3UCHAR *buf);