From c296001158b979497242dd726430b0b7cb26f984 Mon Sep 17 00:00:00 2001 From: AndersBroman Date: Fri, 5 Feb 2016 15:52:42 +0100 Subject: RTSE and PRES relies on the TCP conversation to do reassembly, switch to the new interface. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Change-Id: I4f818d55416d3b1d09b46015d83f3acc5a9e71cc Reviewed-on: https://code.wireshark.org/review/13744 Reviewed-by: Stig Bjørlykke Petri-Dish: Stig Bjørlykke Tested-by: Petri Dish Buildbot Reviewed-by: Michael Mann --- epan/dissectors/packet-pres.c | 19 ++++++++++++++----- epan/dissectors/packet-rtse.c | 14 +++++++++----- 2 files changed, 23 insertions(+), 10 deletions(-) (limited to 'epan/dissectors') diff --git a/epan/dissectors/packet-pres.c b/epan/dissectors/packet-pres.c index 6a9a7d0eb2..994491fb79 100644 --- a/epan/dissectors/packet-pres.c +++ b/epan/dissectors/packet-pres.c @@ -274,8 +274,13 @@ register_ctx_id_and_oid(packet_info *pinfo _U_, guint32 idx, const char *oid) pco=wmem_new(wmem_file_scope(), pres_ctx_oid_t); pco->ctx_id=idx; pco->oid=wmem_strdup(wmem_file_scope(), oid); - conversation=find_conversation (pinfo->num, &pinfo->src, &pinfo->dst, + if (pinfo->ptype == PT_TCP) { + conversation = find_conversation_ext_from_pinfo(pinfo); + } + else { + conversation = find_conversation(pinfo->num, &pinfo->src, &pinfo->dst, pinfo->ptype, pinfo->srcport, pinfo->destport, 0); + } if (conversation) { pco->idx = conversation->index; } else { @@ -316,8 +321,12 @@ find_oid_by_pres_ctx_id(packet_info *pinfo, guint32 idx) conversation_t *conversation; pco.ctx_id=idx; - conversation=find_conversation (pinfo->num, &pinfo->src, &pinfo->dst, + if (pinfo->ptype == PT_TCP) { + conversation = find_conversation_ext_from_pinfo(pinfo); + }else{ + conversation = find_conversation(pinfo->num, &pinfo->src, &pinfo->dst, pinfo->ptype, pinfo->srcport, pinfo->destport, 0); + } if (conversation) { pco.idx = conversation->index; } else { @@ -1360,7 +1369,7 @@ static int dissect_UD_type_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_ /*--- End of included file: packet-pres-fn.c ---*/ -#line 225 "../../asn1/pres/packet-pres-template.c" +#line 234 "../../asn1/pres/packet-pres-template.c" /* @@ -1844,7 +1853,7 @@ void proto_register_pres(void) { NULL, HFILL }}, /*--- End of included file: packet-pres-hfarr.c ---*/ -#line 396 "../../asn1/pres/packet-pres-template.c" +#line 405 "../../asn1/pres/packet-pres-template.c" }; /* List of subtrees */ @@ -1891,7 +1900,7 @@ void proto_register_pres(void) { &ett_pres_UD_type, /*--- End of included file: packet-pres-ettarr.c ---*/ -#line 402 "../../asn1/pres/packet-pres-template.c" +#line 411 "../../asn1/pres/packet-pres-template.c" }; static ei_register_info ei[] = { diff --git a/epan/dissectors/packet-rtse.c b/epan/dissectors/packet-rtse.c index 18625113cc..e6b7e5bad4 100644 --- a/epan/dissectors/packet-rtse.c +++ b/epan/dissectors/packet-rtse.c @@ -778,9 +778,13 @@ dissect_rtse(tvbuff_t *tvb, packet_info *pinfo, proto_tree *parent_tree, void* d ((session->spdu_type == SES_DATA_TRANSFER) || (session->spdu_type == SES_MAJOR_SYNC_POINT))) { /* Use conversation index as fragment id */ - conversation = find_conversation (pinfo->num, - &pinfo->src, &pinfo->dst, pinfo->ptype, - pinfo->srcport, pinfo->destport, 0); + if (pinfo->ptype == PT_TCP) { + conversation = find_conversation_ext_from_pinfo(pinfo); + } else { + conversation = find_conversation(pinfo->num, + &pinfo->src, &pinfo->dst, pinfo->ptype, + pinfo->srcport, pinfo->destport, 0); + } if (conversation != NULL) { rtse_id = conversation->index; } @@ -1009,7 +1013,7 @@ void proto_register_rtse(void) { NULL, HFILL }}, /*--- End of included file: packet-rtse-hfarr.c ---*/ -#line 365 "../../asn1/rtse/packet-rtse-template.c" +#line 369 "../../asn1/rtse/packet-rtse-template.c" }; /* List of subtrees */ @@ -1031,7 +1035,7 @@ void proto_register_rtse(void) { &ett_rtse_CallingSSuserReference, /*--- End of included file: packet-rtse-ettarr.c ---*/ -#line 374 "../../asn1/rtse/packet-rtse-template.c" +#line 378 "../../asn1/rtse/packet-rtse-template.c" }; static ei_register_info ei[] = { -- cgit v1.2.3