[svn-commits] may: trunk r331202 - in /trunk: ./ addons/ addons/ooh323c/src/

SVN commits to the Digium repositories svn-commits at lists.digium.com
Tue Aug 9 12:12:31 CDT 2011


Author: may
Date: Tue Aug  9 12:12:27 2011
New Revision: 331202

URL: http://svnview.digium.com/svn/asterisk?view=rev&rev=331202
Log:
Merged revisions 331147,331200 via svnmerge from 
https://origsvn.digium.com/svn/asterisk/branches/10

................
  r331147 | may | 2011-08-09 20:16:55 +0400 (Tue, 09 Aug 2011) | 11 lines
  
  Merged revisions 331146 via svnmerge from 
  https://origsvn.digium.com/svn/asterisk/branches/1.8
  
  ........
    r331146 | may | 2011-08-09 20:13:09 +0400 (Tue, 09 Aug 2011) | 4 lines
    
    move ast_cond_signal for admitted call after all data filled/freed
    clear all log channels by pointed number not only first
    free allocated callToken in ooh323_answer
  ........
................
  r331200 | may | 2011-08-09 20:36:39 +0400 (Tue, 09 Aug 2011) | 9 lines
  
  Setup IP proto version for call in GK mode
  Added additional check for IP semantics before parse destination
  by ast_parse_args due to it can parse numeric as IP.
  
   (closes issue ASTERISK-18218)
   Reported by: slesru
   Patch: ASTERISK-18218.patch
................

Modified:
    trunk/   (props changed)
    trunk/addons/chan_ooh323.c
    trunk/addons/ooh323c/src/ooGkClient.c
    trunk/addons/ooh323c/src/ooLogChan.c
    trunk/addons/ooh323c/src/ooq931.c

Propchange: trunk/
------------------------------------------------------------------------------
Binary property 'branch-10-merged' - no diff available.

Modified: trunk/addons/chan_ooh323.c
URL: http://svnview.digium.com/svn/asterisk/trunk/addons/chan_ooh323.c?view=diff&rev=331202&r1=331201&r2=331202
==============================================================================
--- trunk/addons/chan_ooh323.c (original)
+++ trunk/addons/chan_ooh323.c Tue Aug  9 12:12:27 2011
@@ -1122,6 +1122,9 @@
 				ast_debug(1, "ooh323_answer(%s)\n", ast->name);
 			ast_channel_unlock(ast);
 			ooAnswerCall(p->callToken);
+		}
+		if (callToken) {
+			free(callToken);
 		}
 		ast_mutex_unlock(&p->lock);
 	}

Modified: trunk/addons/ooh323c/src/ooGkClient.c
URL: http://svnview.digium.com/svn/asterisk/trunk/addons/ooh323c/src/ooGkClient.c?view=diff&rev=331202&r1=331201&r2=331202
==============================================================================
--- trunk/addons/ooh323c/src/ooGkClient.c (original)
+++ trunk/addons/ooh323c/src/ooGkClient.c Tue Aug  9 12:12:27 2011
@@ -1947,8 +1947,11 @@
                                     ipAddress->ip.data[1],
                                     ipAddress->ip.data[2],
                                     ipAddress->ip.data[3]);
-         if(strcmp(ip, "0.0.0.0"))
+         if(strcmp(ip, "0.0.0.0")) {
+/* fix this when gk client will adopt to work with IPv6 */
+	    pCallAdmInfo->call->versionIP = 4;
             strcpy(pCallAdmInfo->call->remoteIP, ip);
+	 }
          pCallAdmInfo->call->remotePort = ipAddress->port;
          /* Update call model */
          if(pAdmissionConfirm->callModel.t == T_H225CallModel_direct)
@@ -1997,13 +2000,13 @@
                        pCallAdmInfo->call->callToken);
 
 	 pCallAdmInfo->call->callState = OO_CALL_CONNECTING;
-	 ast_cond_signal(&pCallAdmInfo->call->gkWait);
          /* ooH323CallAdmitted( pCallAdmInfo->call); */
 
          dListRemove(&pGkClient->callsPendingList, pNode);
          dListAppend(&pGkClient->ctxt, &pGkClient->callsAdmittedList, 
                                                         pNode->data);
          memFreePtr(&pGkClient->ctxt, pNode);
+	 ast_cond_signal(&pCallAdmInfo->call->gkWait);
          return OO_OK;
          break;
       }

Modified: trunk/addons/ooh323c/src/ooLogChan.c
URL: http://svnview.digium.com/svn/asterisk/trunk/addons/ooh323c/src/ooLogChan.c?view=diff&rev=331202&r1=331201&r2=331202
==============================================================================
--- trunk/addons/ooh323c/src/ooLogChan.c (original)
+++ trunk/addons/ooh323c/src/ooLogChan.c Tue Aug  9 12:12:27 2011
@@ -284,7 +284,7 @@
                  call->callType, call->callToken);
 
    pLogicalChannel = ooFindLogicalChannelByLogicalChannelNo(call,channelNo);
-   if(!pLogicalChannel)
+   do { if(!pLogicalChannel)
    {
       OOTRACEWARN4("Logical Channel %d doesn't exist, in clearLogicalChannel."
                    " (%s, %s)\n",
@@ -326,6 +326,7 @@
    ooRemoveLogicalChannel(call, channelNo);/* TODO: efficiency - This causes re-search of
                                                     of logical channel in the list. Can be
                                                     easily improved.*/
+   }  while ((pLogicalChannel = ooFindLogicalChannelByLogicalChannelNo(call,channelNo)));
    return OO_OK;
 }
 

Modified: trunk/addons/ooh323c/src/ooq931.c
URL: http://svnview.digium.com/svn/asterisk/trunk/addons/ooh323c/src/ooq931.c?view=diff&rev=331202&r1=331201&r2=331202
==============================================================================
--- trunk/addons/ooh323c/src/ooq931.c (original)
+++ trunk/addons/ooh323c/src/ooq931.c Tue Aug  9 12:12:27 2011
@@ -3624,7 +3624,8 @@
       return OO_OK;
    }
 
-   if (!ast_parse_arg(dest, PARSE_ADDR, &tmpaddr)) {
+   /* parse direct IP dest */
+   if ((strchr(dest, ':') || strchr(dest,'[') || strchr(dest,'.')) && !ast_parse_arg(dest, PARSE_ADDR, &tmpaddr)) {
       if(strlen(dest)+7>len)
       {
          OOTRACEERR1("Error:Insufficient buffer space for parsed ip - "




More information about the svn-commits mailing list