Hi,
Here are the patches for RTP Analysis to cope with the problems we talked
about lately.
Diffs are relative to 2003-11-20 cvs snapshot.
Please check-in and test.
regards,
Lars
the changes in detail:
----------------------
*** packet-rtp.*:
- added a pointer to raw rtp data to _rtp_info that can be used by taps
- the packet is passed to the tap queue only if it is not an error packet
*** gtk/Makefile.*:
- moved rtp_stream from tap sources to normal files
(prevents on-start-up registration of the rtp_stream tap listener)
*** gtk/rtp_*:
- rtp_stream tap gets registered/unregistered with the "RTP Streams" dialog
box
i.e. the tap is registered as long as the dialog box is open.
- Alternatively, it is de-/registered on demand if RTP Analysis is called
directly on a packet.
- rtp_stream tap listener does no more use a filter in dissection and does
not need to have a proto tree being built. (performance increase)
- fixed: RTP Streams list will get updated in real time if the dialog box is
open while a redissection takes place.
- fixed: rtp_stream now uses pointer provided from _rtp_info to access raw
data.
- fixes the problem in rtpdump output. (cf.
http://www.ethereal.com/lists/ethereal-dev/200311/msg00346.html)
- *does* work with padding (tested with samples provided by Miha Jemec)
- *should* work with fragmented packets (untested!)
open questions/bugs:
--------------------
- Selected packet -> Tools/Statistics/RTP Streams/Analyse...
relies on the RTP streams list being initialized for finding the reverse
direction of the selected stream. This will now only work if the RTP Streams
dialog box is open!!!
If not, the reverse stream will not be found!
I plan to change this behaviour with the release of fast RTP Analysis (see
below).
Then i will have to force the RTP Streams dialog box open (at least the
corresponding structures initialized) before analysing a stream.
Perhaps we should remove the Analyse selected packet from menu entirely?
coming soon:
------------
- fast RTP Analysis: only those packets that are part of the selected
streams will be dissected if "Analyse" button is pressed. No tap listener
will be used any more for that part. (Dissection time for the stream will be
proportional to number of packets in that stream instead of proportional to
number of *all* the packets in the capture)
Attachment:
diff.tar.gz
Description: Binary data