Wireshark-commits: [Wireshark-commits] master d16308c: UDP: Heuristic dissector for conversation ta

From: Wireshark code review <code-review-do-not-reply@xxxxxxxxxxxxx>
Date: Sat, 10 Feb 2018 20:52:08 +0000
URL: https://code.wireshark.org/review/gitweb?p=wireshark.git;a=commit;h=d16308c89a4399897874ea660267f0c6303872dc
Submitter: Michael Mann (mmann78@xxxxxxxxxxxx)
Changed: branch: master
Repository: wireshark

Commits:

d16308c by Robert Jongbloed (robertj@xxxxxxxxxxxxxxxx):

    UDP: Heuristic dissector for conversation taking precedence
    
    When a single UDP port is supporting multiple protocols, for example RTP and
    RTCP can share a port, and one of these protocols is detected through a
    heuristic before a superior protocol (e.g. SIP/SDP) has established that the
    port has multiple protocols, then only the heuristic is used. This is due to
    only looking for an exact match with find_conversation() and not going any
    further. The superior protocol only adds the dissector by source address/port.
    So, to fix, if we do not find the exact match, we continue serching for a
    dissector on the partial matches.
    
    Bug: 14370
    Change-Id: Icdded9ca1637cd594b920f979f6f0a003bef9aae
    Reviewed-on: https://code.wireshark.org/review/25432
    Petri-Dish: Michael Mann <mmann78@xxxxxxxxxxxx>
    Tested-by: Petri Dish Buildbot
    Reviewed-by: Michael Mann <mmann78@xxxxxxxxxxxx>
    

Actions performed:

    from  9ff64c8   musl: compile with musl libc
    adds  d16308c   UDP: Heuristic dissector for conversation taking precedence


Summary of changes:
 epan/conversation.c             | 62 +++++++++++++++++++++++++++++++----------
 epan/conversation.h             |  2 +-
 epan/dissectors/packet-atalk.c  |  2 +-
 epan/dissectors/packet-dccp.c   |  2 +-
 epan/dissectors/packet-fp_mux.c |  2 +-
 epan/dissectors/packet-tcp.c    |  2 +-
 epan/dissectors/packet-udp.c    |  2 +-
 7 files changed, 53 insertions(+), 21 deletions(-)