From aab483575a9fa633d1b9e8e781c8de90b6d26394 Mon Sep 17 00:00:00 2001 From: may Date: Wed, 30 Dec 2009 23:51:32 +0000 Subject: small q931 processing and signalling corrections don't decode UUIE from Q931StatusMessage clean call without callIdentifier data don't start tcs/msd exchange procedure after call proceeding received (closes issue #16365) Reported by: benngard2 Tested by: may213, benngard2 git-svn-id: http://svn.digium.com/svn/asterisk/trunk@237098 f38db490-d61c-443f-a65b-d21fe96a405b --- addons/ooh323c/src/ooCalls.c | 4 +++- addons/ooh323c/src/ooh323.c | 4 ---- addons/ooh323c/src/ooq931.c | 2 +- 3 files changed, 4 insertions(+), 6 deletions(-) (limited to 'addons/ooh323c/src') diff --git a/addons/ooh323c/src/ooCalls.c b/addons/ooh323c/src/ooCalls.c index 75450182e..3984abc50 100644 --- a/addons/ooh323c/src/ooCalls.c +++ b/addons/ooh323c/src/ooCalls.c @@ -215,7 +215,9 @@ int ooEndCall(OOH323CallData *call) return OO_OK; } - if(call->callState == OO_CALL_CLEARED) + if (call->callIdentifier.guid.numocts == 0) call->callState = OO_CALL_CLEARED; + + if(call->callState == OO_CALL_CLEARED || call->callState == OO_CALL_CLEAR_RELEASESENT) { ooCleanCall(call); call->callState = OO_CALL_REMOVED; diff --git a/addons/ooh323c/src/ooh323.c b/addons/ooh323c/src/ooh323.c index 8ccec6550..971b668a2 100644 --- a/addons/ooh323c/src/ooh323.c +++ b/addons/ooh323c/src/ooh323.c @@ -782,10 +782,6 @@ int ooOnReceivedCallProceeding(OOH323CallData *call, Q931Message *q931Msg) return OO_FAILED; } } - } else if (OO_TESTFLAG (call->flags, OO_M_TUNNELING)) { - ret =ooSendTCSandMSD(call); - if (ret != OO_OK) - return ret; } return OO_OK; } diff --git a/addons/ooh323c/src/ooq931.c b/addons/ooh323c/src/ooq931.c index 8c8860b67..e8bc41e76 100644 --- a/addons/ooh323c/src/ooq931.c +++ b/addons/ooh323c/src/ooq931.c @@ -237,7 +237,7 @@ EXTERN int ooQ931Decode /*cisco router sends Q931Notify without UU ie, we just ignore notify message as of now as handling is optional for end point*/ - if(msg->messageType != Q931NotifyMsg) + if(msg->messageType != Q931NotifyMsg && msg->messageType != Q931StatusMsg) rv = ooDecodeUUIE(pctxt, msg); return rv; } -- cgit v1.2.3