From Cvetan Ivanov:
authoretxrab <etxrab@f5534014-38df-0310-8fa8-9805f1628bb7>
Thu, 1 Jun 2006 20:19:51 +0000 (20:19 +0000)
committeretxrab <etxrab@f5534014-38df-0310-8fa8-9805f1628bb7>
Thu, 1 Jun 2006 20:19:51 +0000 (20:19 +0000)
H225.cnf
I noticed is that the voip call flow graph does not have a label for the setupAck packet. I traced this to the empty frame_label.

voip_calls.c
It seems to me that in gtk/voip_calls.c tmp_h323info->guid is pointer itself, therefore:
memcmp(&tmp_h323info->guid
should in fact read:
memcmp(tmp_h323info->guid

git-svn-id: http://anonsvn.wireshark.org/wireshark/trunk@18304 f5534014-38df-0310-8fa8-9805f1628bb7

asn1/h225/h225.cnf
epan/dissectors/packet-h225.c
gtk/voip_calls.c

index d89b7348a38a122f225b3b6137880106c3277acd..ff447a780a8f386bdb934bcecde63e887d89de68 100644 (file)
@@ -308,6 +308,12 @@ CallIdentifier/guid guid
         g_snprintf(h225_pi->frame_label, 50, "%s", val_to_str(h225_pi->cs_type, T_h323_message_body_vals, "<unknown>"));
 #.END
 #----------------------------------------------------------------------------------------
+#.FN_FTR SetupAcknowledge-UUIE
+  /* Add to packet info */
+  h225_pi->cs_type = H225_SETUP_ACK;
+  g_snprintf(h225_pi->frame_label, 50, "%s", val_to_str(h225_pi->cs_type, T_h323_message_body_vals, "<unknown>"));
+#.END
+#----------------------------------------------------------------------------------------
 #.FN_FTR Facility-UUIE
   /* Add to packet info */
   h225_pi->cs_type = H225_FACILITY;
index ab7590e4338c1d2543822a6ed72d4e59c85e4e80..e893e2bc57b2ab1e00d6a1ba4d4125398cd202ba 100644 (file)
@@ -2119,7 +2119,7 @@ static const per_sequence_t H221NonStandard_sequence[] = {
 
 static int
 dissect_h225_H221NonStandard(tvbuff_t *tvb, int offset, asn_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
-#line 556 "h225.cnf"
+#line 562 "h225.cnf"
   t35CountryCode = 0;
   t35Extension = 0;
   manufacturerCode = 0;
@@ -2127,7 +2127,7 @@ dissect_h225_H221NonStandard(tvbuff_t *tvb, int offset, asn_ctx_t *actx _U_, pro
   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
                                    ett_h225_H221NonStandard, H221NonStandard_sequence);
 
-#line 560 "h225.cnf"
+#line 566 "h225.cnf"
   h221NonStandard = ((t35CountryCode * 256) + t35Extension) * 65536 + manufacturerCode;
   proto_tree_add_uint(tree, hf_h221Manufacturer, tvb, (offset>>3)-4, 4, h221NonStandard);
 
@@ -2155,7 +2155,7 @@ static const per_choice_t NonStandardIdentifier_choice[] = {
 
 static int
 dissect_h225_NonStandardIdentifier(tvbuff_t *tvb, int offset, asn_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
-#line 537 "h225.cnf"
+#line 543 "h225.cnf"
        guint32 value;
 
        nsiOID = "";
@@ -2187,7 +2187,7 @@ static int dissect_nonStandardIdentifier(tvbuff_t *tvb, int offset, asn_ctx_t *a
 
 static int
 dissect_h225_T_nsp_data(tvbuff_t *tvb, int offset, asn_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
-#line 571 "h225.cnf"
+#line 577 "h225.cnf"
   tvbuff_t *next_tvb = NULL;
 
   offset = dissect_per_octet_string(tvb, offset, actx, tree, hf_index,
@@ -2213,7 +2213,7 @@ static const per_sequence_t NonStandardParameter_sequence[] = {
 
 int
 dissect_h225_NonStandardParameter(tvbuff_t *tvb, int offset, asn_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
-#line 569 "h225.cnf"
+#line 575 "h225.cnf"
   nsp_handle = NULL;
 
   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
@@ -2268,7 +2268,7 @@ static const per_choice_t H245TransportAddress_choice[] = {
 
 static int
 dissect_h225_H245TransportAddress(tvbuff_t *tvb, int offset, asn_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
-#line 366 "h225.cnf"
+#line 372 "h225.cnf"
        ipv4_address=0;
        ipv4_port=0;
 
@@ -2277,7 +2277,7 @@ dissect_h225_H245TransportAddress(tvbuff_t *tvb, int offset, asn_ctx_t *actx _U_
                                  ett_h225_H245TransportAddress, H245TransportAddress_choice,
                                  NULL);
 
-#line 372 "h225.cnf"
+#line 378 "h225.cnf"
        /* we need this info for TAPing */
        h225_pi->is_h245 = TRUE;
        h225_pi->h245_address = ipv4_address;   
@@ -3907,13 +3907,13 @@ static const per_sequence_t TunnelledProtocol_sequence[] = {
 
 static int
 dissect_h225_TunnelledProtocol(tvbuff_t *tvb, int offset, asn_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
-#line 514 "h225.cnf"
+#line 520 "h225.cnf"
   tpOID = "";
 
   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
                                    ett_h225_TunnelledProtocol, TunnelledProtocol_sequence);
 
-#line 516 "h225.cnf"
+#line 522 "h225.cnf"
   tp_handle = dissector_get_string_handle(tp_dissector_table, tpOID);
 
   return offset;
@@ -4157,7 +4157,7 @@ static int dissect_callType(tvbuff_t *tvb, int offset, asn_ctx_t *actx, proto_tr
 
 static int
 dissect_h225_T_guid(tvbuff_t *tvb, int offset, asn_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
-#line 493 "h225.cnf"
+#line 499 "h225.cnf"
   tvbuff_t *guid_tvb;
 
   offset = dissect_per_octet_string(tvb,offset,actx,tree,hf_index,GUID_LEN,GUID_LEN,&guid_tvb);
@@ -5602,13 +5602,13 @@ static const per_sequence_t Setup_UUIE_sequence[] = {
 
 static int
 dissect_h225_Setup_UUIE(tvbuff_t *tvb, int offset, asn_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
-#line 320 "h225.cnf"
+#line 326 "h225.cnf"
   contains_faststart = FALSE;
 
   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
                                    ett_h225_Setup_UUIE, Setup_UUIE_sequence);
 
-#line 324 "h225.cnf"
+#line 330 "h225.cnf"
   /* Add to packet info */
   h225_pi->cs_type = H225_SETUP;
   if (contains_faststart == TRUE )
@@ -5664,7 +5664,7 @@ dissect_h225_CallProceeding_UUIE(tvbuff_t *tvb, int offset, asn_ctx_t *actx _U_,
   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
                                    ett_h225_CallProceeding_UUIE, CallProceeding_UUIE_sequence);
 
-#line 333 "h225.cnf"
+#line 339 "h225.cnf"
   /* Add to packet info */
   h225_pi->cs_type = H225_CALL_PROCEDING;
   if (contains_faststart == TRUE )
@@ -5707,7 +5707,7 @@ dissect_h225_Connect_UUIE(tvbuff_t *tvb, int offset, asn_ctx_t *actx _U_, proto_
   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
                                    ett_h225_Connect_UUIE, Connect_UUIE_sequence);
 
-#line 357 "h225.cnf"
+#line 363 "h225.cnf"
   /* Add to packet info */
   h225_pi->cs_type = H225_CONNECT;
   if (contains_faststart == TRUE )
@@ -5748,7 +5748,7 @@ dissect_h225_Alerting_UUIE(tvbuff_t *tvb, int offset, asn_ctx_t *actx _U_, proto
   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
                                    ett_h225_Alerting_UUIE, Alerting_UUIE_sequence);
 
-#line 342 "h225.cnf"
+#line 348 "h225.cnf"
   /* Add to packet info */
   h225_pi->cs_type = H225_ALERTING;
   if (contains_faststart == TRUE )
@@ -5910,7 +5910,7 @@ static const per_choice_t ReleaseCompleteReason_choice[] = {
 
 static int
 dissect_h225_ReleaseCompleteReason(tvbuff_t *tvb, int offset, asn_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
-#line 486 "h225.cnf"
+#line 492 "h225.cnf"
   guint32 value;
        
   offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
@@ -5947,7 +5947,7 @@ dissect_h225_ReleaseComplete_UUIE(tvbuff_t *tvb, int offset, asn_ctx_t *actx _U_
   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
                                    ett_h225_ReleaseComplete_UUIE, ReleaseComplete_UUIE_sequence);
 
-#line 351 "h225.cnf"
+#line 357 "h225.cnf"
   /* Add to packet info */
   h225_pi->cs_type = H225_RELEASE_COMPLET;
   g_snprintf(h225_pi->frame_label, 50, "%s", val_to_str(h225_pi->cs_type, T_h323_message_body_vals, "<unknown>"));
@@ -5991,7 +5991,7 @@ static const per_choice_t FacilityReason_choice[] = {
 
 static int
 dissect_h225_FacilityReason(tvbuff_t *tvb, int offset, asn_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
-#line 410 "h225.cnf"
+#line 416 "h225.cnf"
        guint32 value;
        
   offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
@@ -6073,7 +6073,7 @@ dissect_h225_Facility_UUIE(tvbuff_t *tvb, int offset, asn_ctx_t *actx _U_, proto
   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
                                    ett_h225_Facility_UUIE, Facility_UUIE_sequence);
 
-#line 312 "h225.cnf"
+#line 318 "h225.cnf"
   /* Add to packet info */
   h225_pi->cs_type = H225_FACILITY;
   g_snprintf(h225_pi->frame_label, 50, "%s", val_to_str(h225_pi->cs_type, T_h323_message_body_vals, "<unknown>"));
@@ -6193,6 +6193,11 @@ dissect_h225_SetupAcknowledge_UUIE(tvbuff_t *tvb, int offset, asn_ctx_t *actx _U
   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
                                    ett_h225_SetupAcknowledge_UUIE, SetupAcknowledge_UUIE_sequence);
 
+#line 312 "h225.cnf"
+  /* Add to packet info */
+  h225_pi->cs_type = H225_SETUP_ACK;
+  g_snprintf(h225_pi->frame_label, 50, "%s", val_to_str(h225_pi->cs_type, T_h323_message_body_vals, "<unknown>"));
+
   return offset;
 }
 static int dissect_setupAcknowledge(tvbuff_t *tvb, int offset, asn_ctx_t *actx, proto_tree *tree) {
@@ -6296,7 +6301,7 @@ static int dissect_h323_message_body(tvbuff_t *tvb, int offset, asn_ctx_t *actx,
 
 static int
 dissect_h225_T_h4501SupplementaryService_item(tvbuff_t *tvb, int offset, asn_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
-#line 502 "h225.cnf"
+#line 508 "h225.cnf"
        tvbuff_t *h4501_tvb = NULL;
 
   offset = dissect_per_octet_string(tvb, offset, actx, tree, hf_index,
@@ -6420,7 +6425,7 @@ static int dissect_callLinkage(tvbuff_t *tvb, int offset, asn_ctx_t *actx, proto
 
 static int
 dissect_h225_T_messageContent_item(tvbuff_t *tvb, int offset, asn_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
-#line 524 "h225.cnf"
+#line 530 "h225.cnf"
   tvbuff_t *next_tvb = NULL;
 
   offset = dissect_per_octet_string(tvb, offset, actx, tree, hf_index,
@@ -6462,7 +6467,7 @@ static const per_sequence_t T_tunnelledSignallingMessage_sequence[] = {
 
 static int
 dissect_h225_T_tunnelledSignallingMessage(tvbuff_t *tvb, int offset, asn_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
-#line 522 "h225.cnf"
+#line 528 "h225.cnf"
   tp_handle = NULL;
 
   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
@@ -7484,7 +7489,7 @@ static const per_choice_t GatekeeperRejectReason_choice[] = {
 
 static int
 dissect_h225_GatekeeperRejectReason(tvbuff_t *tvb, int offset, asn_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
-#line 417 "h225.cnf"
+#line 423 "h225.cnf"
   guint32 value;
        
   offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
@@ -7776,7 +7781,7 @@ static const per_choice_t RegistrationRejectReason_choice[] = {
 
 static int
 dissect_h225_RegistrationRejectReason(tvbuff_t *tvb, int offset, asn_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
-#line 472 "h225.cnf"
+#line 478 "h225.cnf"
   guint32 value;
 
   offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
@@ -7842,7 +7847,7 @@ static const per_choice_t UnregRequestReason_choice[] = {
 
 static int
 dissect_h225_UnregRequestReason(tvbuff_t *tvb, int offset, asn_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
-#line 424 "h225.cnf"
+#line 430 "h225.cnf"
   guint32 value;
        
   offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
@@ -7934,7 +7939,7 @@ static const per_choice_t UnregRejectReason_choice[] = {
 
 static int
 dissect_h225_UnregRejectReason(tvbuff_t *tvb, int offset, asn_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
-#line 431 "h225.cnf"
+#line 437 "h225.cnf"
   guint32 value;
 
   offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
@@ -8259,7 +8264,7 @@ static const per_choice_t AdmissionRejectReason_choice[] = {
 
 static int
 dissect_h225_AdmissionRejectReason(tvbuff_t *tvb, int offset, asn_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
-#line 458 "h225.cnf"
+#line 464 "h225.cnf"
   guint32 value;
 
   offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
@@ -8403,7 +8408,7 @@ static const per_choice_t BandRejectReason_choice[] = {
 
 static int
 dissect_h225_BandRejectReason(tvbuff_t *tvb, int offset, asn_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
-#line 438 "h225.cnf"
+#line 444 "h225.cnf"
   guint32 value;
 
   offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
@@ -8461,7 +8466,7 @@ static const per_choice_t DisengageReason_choice[] = {
 
 static int
 dissect_h225_DisengageReason(tvbuff_t *tvb, int offset, asn_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
-#line 445 "h225.cnf"
+#line 451 "h225.cnf"
   guint32 value;
        
   offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
@@ -8556,7 +8561,7 @@ static const per_choice_t DisengageRejectReason_choice[] = {
 
 static int
 dissect_h225_DisengageRejectReason(tvbuff_t *tvb, int offset, asn_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
-#line 451 "h225.cnf"
+#line 457 "h225.cnf"
   guint32 value;
        
   offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
@@ -8713,7 +8718,7 @@ static const per_choice_t LocationRejectReason_choice[] = {
 
 static int
 dissect_h225_LocationRejectReason(tvbuff_t *tvb, int offset, asn_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
-#line 465 "h225.cnf"
+#line 471 "h225.cnf"
   guint32 value;
 
   offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
@@ -9140,7 +9145,7 @@ static const per_choice_t InfoRequestNakReason_choice[] = {
 
 static int
 dissect_h225_InfoRequestNakReason(tvbuff_t *tvb, int offset, asn_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
-#line 479 "h225.cnf"
+#line 485 "h225.cnf"
   guint32 value;
        
   offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
index cbf06e795edc0776064e9c5ed4998bd00dcef8a7..50933f64c63b948c2464cf7d155966e80b48aef3 100644 (file)
@@ -1698,7 +1698,7 @@ H225calls_packet(void *ptr _U_, packet_info *pinfo, epan_dissect_t *edt _U_, con
                        tmp_listinfo=list->data;
                        if (tmp_listinfo->protocol == VOIP_H323){
                                tmp_h323info = tmp_listinfo->prot_info;
-                               if ( (memcmp(&tmp_h323info->guid, &guid_allzero, GUID_LEN) != 0) && (memcmp(&tmp_h323info->guid, &pi->guid,GUID_LEN)==0) ){ 
+                               if ( (memcmp(tmp_h323info->guid, &guid_allzero, GUID_LEN) != 0) && (memcmp(&tmp_h323info->guid, &pi->guid,GUID_LEN)==0) ){ 
                                        strinfo = (voip_calls_info_t*)(list->data);
                                        break;
                                }