add docallbacks flag in q931decode function because
authorAlexandr Anikin <may@telecom-service.ru>
Sun, 10 Jan 2010 17:53:59 +0000 (17:53 +0000)
committerAlexandr Anikin <may@telecom-service.ru>
Sun, 10 Jan 2010 17:53:59 +0000 (17:53 +0000)
when we decode received q931 packet we must do callbacks and
when we print sended q931 packet we must not.

git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@239037 65c4cc65-6c06-0410-ace0-fbb531ad65f3

addons/ooh323c/src/oochannels.c
addons/ooh323c/src/ooq931.c
addons/ooh323c/src/ooq931.h

index 2988ff1..fd6cbb3 100644 (file)
@@ -1114,7 +1114,7 @@ int ooH2250Receive(OOH323CallData *call)
 
    initializePrintHandler(&printHandler, "Received H.2250 Message");
    setEventHandler (pctxt, &printHandler);
-   ret = ooQ931Decode (call, pmsg, len, message);
+   ret = ooQ931Decode (call, pmsg, len, message, 1);
    if(ret != OO_OK) {
       OOTRACEERR3("Error:Failed to decode received H.2250 message. (%s, %s)\n",
                    call->callType, call->callToken);
index e8bc41e..1d5f7e7 100644 (file)
@@ -47,7 +47,7 @@ static ASN1OBJID gProtocolID = {
 };
 
 EXTERN int ooQ931Decode 
-   (OOH323CallData *call, Q931Message* msg, int length, ASN1OCTET *data) 
+   (OOH323CallData *call, Q931Message* msg, int length, ASN1OCTET *data, int docallbacks)
 {
    int offset, x;
    int rv = ASN_OK;
@@ -173,7 +173,7 @@ EXTERN int ooQ931Decode
          OOTRACEDBGB1("   Keypad IE = {\n");
          OOTRACEDBGB2("      %s\n", ie->data);
          OOTRACEDBGB1("   }\n");
-         if(gH323ep.h323Callbacks.onReceivedDTMF)
+         if(docallbacks && gH323ep.h323Callbacks.onReceivedDTMF)
          {
             gH323ep.h323Callbacks.onReceivedDTMF(call, (char *)ie->data);
          }
@@ -626,7 +626,7 @@ static void ooQ931PrintMessage
 
    setPERBuffer (pctxt, msgbuf, msglen, TRUE);
 
-   ret = ooQ931Decode (call, &q931Msg, msglen, msgbuf);
+   ret = ooQ931Decode (call, &q931Msg, msglen, msgbuf, 0);
    if(ret != OO_OK)
    {
       OOTRACEERR3("Error:Failed decoding Q931 message. (%s, %s)\n", 
index c70771b..88aef2e 100644 (file)
@@ -335,7 +335,7 @@ typedef struct OOH225MsgCallbacks {
  * @return         Completion status - 0 on success, -1 on failure
  */
 EXTERN int ooQ931Decode 
-(struct OOH323CallData *call, Q931Message* msg, int length, ASN1OCTET *data);
+(struct OOH323CallData *call, Q931Message* msg, int length, ASN1OCTET *data, int docallbacks);
 
 /**
  * This function is used to decode the UUIE of the message from the list of