I attached patch to add preferences in SDP for RTP stream detection. By default SDP decodes RTP stream but now I can disable it.
svn path=/trunk/; revision=18080
sets errno to 0 when we can't open a file. This resurrected the annoying
"C:\Program Files\Ethereal\asn1/default.tt" error in the ASN.1 plugin,
since we depended on errno being set to ENOENT. Move some logic around
to account for this.
svn path=/trunk/; revision=18073
structs/unions (GCC supports it "for compatibility with other
compilers"; presumably that's not for compatibility with the version of
Sun C that rejected it - was that a PCCism?).
svn path=/trunk/; revision=18072
coverity showed this as a null dereference which was a false positive.
sp can never be null here.
there is a bug however since with this invalid test the memory release functions will never be called and we thus had a memory leak here.
svn path=/trunk/; revision=18053
programs, by reporting it with a dialog box that at least attempts to
indicate what the problem is, and by giving up early on running dumpcap.
svn path=/trunk/; revision=18051
"struct tcp_multisegment_pdu"; that lets it be used in one case where
the code in it was duplicated.
Make "desegment_tcp()" loop rather than recursing - not all compilers
will necessarily recognize the tail recursion.
Catch heuristic dissectors that reject a packet but also request
(whether deliberately or accidentally) that more data be added.
svn path=/trunk/; revision=18050
reassembly. UDP has no notion of reassembly - that's done at the IP
layer - and SCTP has its own notions of reassembly which it currently
doesn't provide. As such, TCP-style reassembly isn't possible for
JXTA-over-UDP or JXTA-over-SCTP.
As for TCP, a heuristic dissector for a TCP-based protocol can't request
more data if it's rejecting a packet; make it not do so. That should
fix the recent buildbot crash, although there are still some reassembly
problems with that capture (c05-http-reply-r1.pcap.gz in the menagerie
and on the SampleCaptures page of the Wiki) that aren't fixed yet.
svn path=/trunk/; revision=18049
use tcp_multisegment_pdu and se_tree_lookup32_le() to track pdu boundaries for tcp reassembly just as this structure is used for the same purpose when reassembly is not enabled.
get rid of a hashtable and two memchunks we no longer need
tcp_segment_table tcp_segment_key_chunk and tcp_segment_address_chunk
This makes tcp reassembly work for out-of-order segments as well as when reassembly completes in one segment and when the tail of the segment contains the head of the next pdu which we did not handle before.
tcp reassembly should be much better and efficient now modulo introduced regressions.
svn path=/trunk/; revision=18046
it to capture_file_dlg.c, and rename its header file. We might want to
move the generic file dialog stuff to a file_dlg.c file (it's currently
in dlg_utils.c), and move the non-capture-file dialog stuff in
capture_file_dlg.c to another file.
svn path=/trunk/; revision=18034
enough to have a non-BVLC packet from or to port 47808, we're likely to
reject it and let another dissector try it. Fixes bug 855 (in which an
MS Messenger packet was unlucky enough to have come from that port).
Add value_string tables to some fields, and just use
proto_tree_add_uint() to add them to the protocol tree, rather than
generating our own text for them.
svn path=/trunk/; revision=18033
as an argument, rather than keeping the count to themselves, so the
count kept by the capturing program can be updated correctly - including
getting reset when files are switched. Fixes bug 895.
svn path=/trunk/; revision=18032
Save the media encoding name in the transport_info_t structure rather
than in a global variable. Allocate it with tvb_get_ephemeral_string()
so it's released after the packet is completely processed. Do *NOT*
assume it's necessarily non-null in decode_sdp_fmtp(), as the code flow
doesn't guarantee that to be true.
proto_tree_add_string() now suffices for adding a particular SDP item -
strings are now displayed "safely", with escaping of non-printable
characters done.
Update a comment (we no longer have the Big Transfer Vector to allow
plugins to call dissector functions in Windows, we have those functions
in a DLL).
svn path=/trunk/; revision=18031
want to have a dissector capable of rejecting packets, you need to
reject the packet before you call tcp_dissect_pdus() - once you're doing
reassembly, etc., it's too late to reject the packet.)
svn path=/trunk/; revision=18029