HP-UX C SIP Stack Programmer's Guide (Novembery 2007)

336 HP-UX C SIP Stack Programmers Guide
State Machine and API Functions
switch(eNewState)
{
case RVSIP_TRANSC_STATE_CLIENT_MSG_SEND_FAILURE:
{
/*Creates a new "cloned" transaction.*/
rv= RvSipTransactionDNSContinue(hTransaction, (RvSipTranscOwnerHandle)NULL,
&hCloneTransc);
if(rv != RV_OK)
{
/*Performs the error handle routine.*/
}
/* 503 on INVITE will be acked!! */
if (0 == stricmp(strMethod,"INVITE") &&
RVSIP_TRANSC_REASON_503_RECEIVED == eReason)
{
rv = RvSipTransactionAck(hTransaction,NULL);
if (rv != RV_OK)
{
/*Performs the error handle routine.*/
}
}
/*Requests on the new "cloned" transaction.*/
rv = RvSipTransactionRequest(hCloneTransc, strMethod, hUri);
if(rv != RV_OK)
{
/*Performs error handle routine.*/
}
} /* case RVSIP_TRANSC_STATE_CLIENT_MSG_SEND_FAILURE: */
break;
default:
break;
} /* switch(eNewState) */
}
/*=========================================================================================*/