diff options
author | Evan Huus <eapache@gmail.com> | 2013-11-23 22:37:33 +0000 |
---|---|---|
committer | Evan Huus <eapache@gmail.com> | 2013-11-23 22:37:33 +0000 |
commit | 1db1b8e2bb6cd4ae1731205738eef9f572a03ead (patch) | |
tree | d8ad0a9047acd96fd31994459828e3203571c9fe /epan/dissectors/packet-ansi_tcap.c | |
parent | 318d38b576603721ce21ff269c0bb9e60dc766b0 (diff) |
Convert ASN1 dissectors from ep_address_to_str to address_to_str. Clean up a bit
of ansi_tcap code while in the neighbourhood.
svn path=/trunk/; revision=53530
Diffstat (limited to 'epan/dissectors/packet-ansi_tcap.c')
-rw-r--r-- | epan/dissectors/packet-ansi_tcap.c | 33 |
1 files changed, 17 insertions, 16 deletions
diff --git a/epan/dissectors/packet-ansi_tcap.c b/epan/dissectors/packet-ansi_tcap.c index 12ce6297a8..43de2a7b87 100644 --- a/epan/dissectors/packet-ansi_tcap.c +++ b/epan/dissectors/packet-ansi_tcap.c @@ -278,10 +278,12 @@ ansi_tcap_init_protocol(void) static void save_invoke_data(packet_info *pinfo, proto_tree *tree _U_, tvbuff_t *tvb _U_){ struct ansi_tcap_invokedata_t *ansi_tcap_saved_invokedata; - address* src = &(pinfo->src); - address* dst = &(pinfo->dst); + gchar *src, *dst; char *buf; + src = address_to_str(wmem_packet_scope(), &(pinfo->src)); + dst = address_to_str(wmem_packet_scope(), &(pinfo->dst)); + if ((!pinfo->fd->flags.visited)&&(ansi_tcap_private.TransactionID_str)){ /* Only do this once XXX I hope its the right thing to do */ @@ -291,10 +293,10 @@ save_invoke_data(packet_info *pinfo, proto_tree *tree _U_, tvbuff_t *tvb _U_){ buf = wmem_strdup(wmem_packet_scope(), ansi_tcap_private.TransactionID_str); break; case 1: - buf = wmem_strdup_printf(wmem_packet_scope(), "%s%s",ansi_tcap_private.TransactionID_str,ep_address_to_str(src)); + buf = wmem_strdup_printf(wmem_packet_scope(), "%s%s",ansi_tcap_private.TransactionID_str,src); break; default: - buf = wmem_strdup_printf(wmem_packet_scope(), "%s%s%s",ansi_tcap_private.TransactionID_str,ep_address_to_str(src),ep_address_to_str(dst)); + buf = wmem_strdup_printf(wmem_packet_scope(), "%s%s%s",ansi_tcap_private.TransactionID_str,src,dst); break; } @@ -320,32 +322,31 @@ save_invoke_data(packet_info *pinfo, proto_tree *tree _U_, tvbuff_t *tvb _U_){ static gboolean find_saved_invokedata(packet_info *pinfo, proto_tree *tree _U_, tvbuff_t *tvb _U_){ struct ansi_tcap_invokedata_t *ansi_tcap_saved_invokedata; - address* src = &(pinfo->src); - address* dst = &(pinfo->dst); + gchar *src, *dst; char *buf; if (!ansi_tcap_private.TransactionID_str) { return FALSE; } + src = address_to_str(wmem_packet_scope(), &(pinfo->src)); + dst = address_to_str(wmem_packet_scope(), &(pinfo->dst)); + /* The hash string needs to contain src and dest to distiguish differnt flows */ buf = (char *)wmem_alloc(wmem_packet_scope(), MAX_TID_STR_LEN); buf[0] = '\0'; /* Reverse order to invoke */ - g_snprintf(buf, MAX_TID_STR_LEN, "%s%s%s", - ansi_tcap_private.TransactionID_str, ep_address_to_str(dst), - ep_address_to_str(src)); switch(ansi_tcap_response_matching_type){ case 0: g_snprintf(buf,MAX_TID_STR_LEN,"%s",ansi_tcap_private.TransactionID_str); break; case 1: - g_snprintf(buf,MAX_TID_STR_LEN,"%s%s",ansi_tcap_private.TransactionID_str,ep_address_to_str(dst)); + g_snprintf(buf,MAX_TID_STR_LEN,"%s%s",ansi_tcap_private.TransactionID_str,dst); break; default: - g_snprintf(buf,MAX_TID_STR_LEN,"%s%s%s",ansi_tcap_private.TransactionID_str,ep_address_to_str(dst),ep_address_to_str(src)); - break; - } + g_snprintf(buf,MAX_TID_STR_LEN,"%s%s%s",ansi_tcap_private.TransactionID_str,dst,src); + break; + } ansi_tcap_saved_invokedata = (struct ansi_tcap_invokedata_t *)g_hash_table_lookup(TransactionId_table, buf); if(ansi_tcap_saved_invokedata){ @@ -1394,7 +1395,7 @@ dissect_ansi_tcap_PackageType(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int /*--- End of included file: packet-ansi_tcap-fn.c ---*/ -#line 352 "../../asn1/ansi_tcap/packet-ansi_tcap-template.c" +#line 353 "../../asn1/ansi_tcap/packet-ansi_tcap-template.c" @@ -1739,7 +1740,7 @@ proto_register_ansi_tcap(void) NULL, HFILL }}, /*--- End of included file: packet-ansi_tcap-hfarr.c ---*/ -#line 488 "../../asn1/ansi_tcap/packet-ansi_tcap-template.c" +#line 489 "../../asn1/ansi_tcap/packet-ansi_tcap-template.c" }; /* Setup protocol subtree array */ @@ -1777,7 +1778,7 @@ proto_register_ansi_tcap(void) &ett_ansi_tcap_T_paramSet, /*--- End of included file: packet-ansi_tcap-ettarr.c ---*/ -#line 499 "../../asn1/ansi_tcap/packet-ansi_tcap-template.c" +#line 500 "../../asn1/ansi_tcap/packet-ansi_tcap-template.c" }; static const enum_val_t ansi_tcap_response_matching_type_values[] = { |