Wireshark-commits: [Wireshark-commits] master 873d598: stun/turn: stop STUN heuristic incorrectly m

From: Wireshark code review <code-review-do-not-reply@xxxxxxxxxxxxx>
Date: Tue, 14 Jul 2015 03:02:11 +0000 (UTC)
URL: https://code.wireshark.org/review/gitweb?p=wireshark.git;a=commit;h=873d5980cd1d83b7f6728657b98a37c3a882f5e7
Submitter: Hadriel Kaplan (hadrielk@xxxxxxxxx)
Changed: branch: master
Repository: wireshark

Commits:

873d598 by Hadriel Kaplan (hadrielk@xxxxxxxxx):

    stun/turn: stop STUN heuristic incorrectly matching TURN ChannelData messages
    
    The STUN heuristic dissector decoded a packet as a TURN ChannelData message
    with a relatively weak heuristic. In order to avoid incorrect matches, it
    checked for an existing conversation first, but the UDP layer dissector will
    create a conversation so this check was basically useless.
    
    Therefore, the STUN heuristic dissector no longer matches TURN ChannelData
    messages at all. If it matches another TURN message type, then it sets the
    dissector for the conversation to be the non-heuristic dissector, and then
    ChannelData messages will be decoded by that.
    
    Based on the new heuristic dissector enable/disable model, in the near future
    I might add another heuristic for a weaker check, to include TURN ChannelData.
    
    Bug: 11152
    Change-Id: I3f3763ce5f7be71e1402e620424df45e7ea99ee5
    Reviewed-on: https://code.wireshark.org/review/9486
    Petri-Dish: Hadriel Kaplan <hadrielk@xxxxxxxxx>
    Reviewed-by: Michael Mann <mmann78@xxxxxxxxxxxx>
    Tested-by: Petri Dish Buildbot <buildbot-no-reply@xxxxxxxxxxxxx>
    Reviewed-by: Hadriel Kaplan <hadrielk@xxxxxxxxx>
    

Actions performed:

    from  5cd7601   tftp: stop TFTP heuristic incorrectly matching TURN ChannelData messages
    adds  873d598   stun/turn: stop STUN heuristic incorrectly matching TURN ChannelData messages


Summary of changes:
 epan/dissectors/packet-stun.c |   66 ++++++++++++++++++++++++++++++-----------
 1 file changed, 49 insertions(+), 17 deletions(-)