diff options
author | Pascal Quantin <pascal.quantin@gmail.com> | 2017-10-18 21:18:00 +0200 |
---|---|---|
committer | Anders Broman <a.broman58@gmail.com> | 2017-10-18 21:15:46 +0000 |
commit | 288973ff7485d910fbef60ed2875edfd387f1a4f (patch) | |
tree | 9ac17f221b771d4ecc082c6cea3a71194125c7a8 /epan/dissectors/packet-fp_mux.c | |
parent | b580bbfdd275e6151e2d67d8a03da6c9dae0b36b (diff) |
FP Mux: create conversation if it does not exist
Change-Id: Ib26145c30f6f3ba20e26d52f1e4b90825029809d
Ping-Bug: 14140
Reviewed-on: https://code.wireshark.org/review/23977
Reviewed-by: Anders Broman <a.broman58@gmail.com>
Diffstat (limited to 'epan/dissectors/packet-fp_mux.c')
-rw-r--r-- | epan/dissectors/packet-fp_mux.c | 9 |
1 files changed, 6 insertions, 3 deletions
diff --git a/epan/dissectors/packet-fp_mux.c b/epan/dissectors/packet-fp_mux.c index a73cc3b67d..1758eba74f 100644 --- a/epan/dissectors/packet-fp_mux.c +++ b/epan/dissectors/packet-fp_mux.c @@ -316,9 +316,12 @@ static int heur_dissect_fp_mux(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tr /* This is FP Mux! */ /* Set conversation dissector and dissect */ - conversation = (conversation_t *)find_conversation(pinfo->num, &pinfo->net_dst, &pinfo->net_src, - pinfo->ptype, - pinfo->destport, pinfo->srcport, 0); + conversation = find_conversation(pinfo->num, &pinfo->net_dst, &pinfo->net_src, + pinfo->ptype, pinfo->destport, pinfo->srcport, 0); + if (!conversation) { + conversation = conversation_new(pinfo->num, &pinfo->net_dst, &pinfo->net_src, + pinfo->ptype, pinfo->destport, pinfo->srcport, 0); + } conversation_set_dissector(conversation, fp_mux_handle); dissect_fp_mux(tvb, pinfo, tree, data); |