Fix to resend GRQ/RRQ if RRJ (registration reject) is received
(close issue ASTERISK-20094) Patches: ASTERISK-20094.patch ........ Merged revisions 371011 from http://svn.asterisk.org/svn/asterisk/branches/1.8 ........ Merged revisions 371022 from http://svn.asterisk.org/svn/asterisk/branches/10 git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@371036 65c4cc65-6c06-0410-ace0-fbb531ad65f3
This commit is contained in:
parent
18d5041981
commit
6153acebe8
|
@ -812,6 +812,9 @@ int ooGkClientHandleGatekeeperConfirm
|
||||||
if(pGatekeeperConfirm->m.gatekeeperIdentifierPresent)
|
if(pGatekeeperConfirm->m.gatekeeperIdentifierPresent)
|
||||||
{
|
{
|
||||||
pGkClient->gkId.nchars = pGatekeeperConfirm->gatekeeperIdentifier.nchars;
|
pGkClient->gkId.nchars = pGatekeeperConfirm->gatekeeperIdentifier.nchars;
|
||||||
|
if (pGkClient->gkId.data) {
|
||||||
|
memFreePtr(&pGkClient->ctxt, pGkClient->gkId.data);
|
||||||
|
}
|
||||||
pGkClient->gkId.data = (ASN116BITCHAR*)memAlloc(&pGkClient->ctxt,
|
pGkClient->gkId.data = (ASN116BITCHAR*)memAlloc(&pGkClient->ctxt,
|
||||||
sizeof(ASN116BITCHAR)*pGkClient->gkId.nchars);
|
sizeof(ASN116BITCHAR)*pGkClient->gkId.nchars);
|
||||||
if(!pGkClient->gkId.data)
|
if(!pGkClient->gkId.data)
|
||||||
|
@ -1371,7 +1374,20 @@ int ooGkClientHandleRegistrationReject
|
||||||
default:
|
default:
|
||||||
OOTRACEINFO1("RRQ Rejected - Invalid Reason\n");
|
OOTRACEINFO1("RRQ Rejected - Invalid Reason\n");
|
||||||
}
|
}
|
||||||
pGkClient->state = GkClientGkErr;
|
|
||||||
|
/* send again GRQ/RRQ's */
|
||||||
|
ast_mutex_lock(&pGkClient->Lock);
|
||||||
|
pGkClient->state = GkClientUnregistered;
|
||||||
|
pGkClient->rrqRetries = 0;
|
||||||
|
pGkClient->grqRetries = 0;
|
||||||
|
pGkClient->discoveryComplete = FALSE;
|
||||||
|
ast_mutex_unlock(&pGkClient->Lock);
|
||||||
|
|
||||||
|
iRet = ooGkClientSendGRQ(pGkClient);
|
||||||
|
if(iRet != OO_OK){
|
||||||
|
OOTRACEERR1("\nError: Transmission of rediscovery of GK failed\n");
|
||||||
|
return OO_FAILED;
|
||||||
|
}
|
||||||
return OO_OK;
|
return OO_OK;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue