Fix bug 9021: 'RTP not decoded inside the conversation in v.1.10.1'
authorHadriel Kaplan <hadrielk@yahoo.com>
Thu, 6 Mar 2014 22:20:48 +0000 (17:20 -0500)
committerEvan Huus <eapache@gmail.com>
Wed, 12 Mar 2014 17:59:51 +0000 (17:59 +0000)
commitc4c83502849ec2e0a2544e494647641d6c16dc4f
treea2b0dc165f37afcf6f7c8361b5bdbac903b4fc65
parent70ff7be1e6735cd9b00bfeb1c23bf19cf1250c01
Fix bug 9021: 'RTP not decoded inside the conversation in v.1.10.1'

The behavior for SIP/SDP handling of RTP conversation tracking
changed in v1.10, with some unintended consequences.  The bugs did not
show up at the time because wireshark makes 2 passes of the packet list,
and so the problems auto-corrected themselves in most cases.  Unfortunately,
a change in r53641 modified how UDP behaves, making it always create
conversations for UDP packets, and that exposed the bugs inherent in the
SIP/SDP code changes.

This commit reverts the behavior of SIP/SDP to its pre-1.10 model, but
creates a new preference setting for "Delay SDP changes for tracking media",
which if enabled, will turn on the new (but buggy) model introduced in 1.10.
This preference is *disabled* by default, since for a majority of cases the
new behavior is worse than the previous behavior.

The preference, and this commit's fix, is not intended to last long. I intend
to re-write the SIP/SDP/RTP interaction model for release 1.11 - I think it's
too big a change for 1.10, however, which is why I submitted this commit.

Change-Id: Ic5601749d6c2344e952ced8206dd9296bfdc4b90
Reviewed-on: https://code.wireshark.org/review/543
Reviewed-by: Evan Huus <eapache@gmail.com>
epan/dissectors/packet-sdp.c
epan/dissectors/packet-sdp.h
epan/dissectors/packet-sip.c