to add the trailer - that avoids the problem with throwing an exception
inside a CATCH* clause for that same exception. (XXX - is this a
problem with our exception mechanism? What happens in languages with
built-in exceptions if a
try
XXX
catch YYY
ZZZ
end
construct throws exception YYY inside code block ZZZ? If it doesn't
re-enter ZZZ, that argues that our exception mechanism is buggy or, at
least, violates the Principle of Least Surprise.)
Move the code to put the trailer information into the protocol tree out
of the CATCH2 clause, so the trailer shows up if we *do* have the
trailer information.
svn path=/trunk/; revision=9898
sort the columns based on that data, rather than on the raw text of the
column - that's probably faster, and also doesn't get rudely surprised
by "atof()" being locale-dependent.
svn path=/trunk/; revision=9895
don't show up this dialog if no data *is* selected (didn't find an easy way
to control sensitivity of the menus by some mechanism :-(
svn path=/trunk/; revision=9891
- use create_tempfile() to create the temporary files (causes temp files to be
created at the same location as other Ethereal temp files). Changed temp
filenames to "ether_rtp_dXXXXXX", where d is the stream direction.
- fixed a bug with temp files not being removed
svn path=/trunk/; revision=9886
As proposed by some postings on Ethereal-Dev, remove the email addresses
from the authors and refer to the AUTHORS file or the man page.
svn path=/trunk/; revision=9885
clearer what it does (dissect a single T.38-over-TCP or T.38-over-TPKT
PDU).
Have "dissect_t38_udp()" that does T.38-over-UDP dissection and
"dissect_t38_tcp()" that does T.38-over-TCP dissection; register handles
for them for the appropriate protocols, rather than having a single
dissector that checks the IP protocol type.
Use -1 rather than "tvb_length(tvb)" as the length for top-level
protocol tree items.
Clean up indentation.
svn path=/trunk/; revision=9870
the title or contents of the filtering progress bar window and don't
work very well in files such as "recent" or "dfilters".
svn path=/trunk/; revision=9869
- support both T.38IFP/TCP and T38IFP/TPKT/TCP
There is one new preference setting tpkt_usage where you can specify if TPKT
header is used. With the default setting (tpkt_usage=Maybe) the dissector
will look on the first four octets and try to determine if TPKT is used or
not. This setting seems to work well with the captures I have tried,
but there might be some scenarios where it will be better to set the value
to 'Always' or 'Never' dependant on if TPKT header is used or not.
There is also a new preference setting regarding TCP desegmentation. TCP
desegmentation is currently only supported when TPKT header
is used.
You will need to set the preference setting "Allow subdisectors to desegment
TCP streams" for TCP and also the "Desegment all TPKT
messages spanning multiple TCP segments" for TPKT if you want to use this
feature. I don't have any T.38 captures with segmented packets
so I have not been able to test this so much.
- Support for T.38 (2002) ASN.1 specification
http://www.itu.int/ITU-T/asn1/database/itu-t/t/t38/2003/T38(2002).html
Note: This ASN.1 specification is incompatible with the Pre-Corigendum T.38
ASN.1 specification (1998) so you will need to set the preference setting
accordingly.
- When there are extra octets after the T.38 UDPTL packet you will now see
[Malformed?] in the Info-column. I thought that it
was quite irritating that non-T.38 packets could look like they were
correctly coded T.38 packets.
- There might be several T.38 IFP packets in a TCP packet for the T.38
directly over TCP scenario. There is now at least some support for this, but
since
TCP desegmentation is only supported for the TPKT scenario this will not
work if an IFP packet is splitted into several TCP packets.
svn path=/trunk/; revision=9868
added new target "packaging" to root Makefile.nmake,
which will generate version 1 or 2 or both,
depending on config.nmake GTK?_DIR setting
svn path=/trunk/; revision=9866
into "lapd_sapi.h". Use that to register the Q.931 dissector atop LAPD.
From Rolf Fiedler: ISDN TEI management frame support.
svn path=/trunk/; revision=9864
- made streams list sortable by column
- added a button "Find Reverse" that finds the reverse stream to the
selected forward stream. (If different reverse streams available,
pushing the button repeatedly will cycle through all of them,
one after the other.)
- tidied up lots of superflous code.
Also get rid of a const pointer cast warning, and remove the _U_ attribute
from rtpstream_reset().
svn path=/trunk/; revision=9863
interface name, look forward in the interface string for "\Device\", not
backwards for a space, on Windows. (Continue to look backwards for a
space on UNIX; names don't start with "\Device\", or even "/dev/", and
don't have spaces in them on any UNIX-flavored OS I know of.)
svn path=/trunk/; revision=9859
addition to an error code, an error info string, for
WTAP_ERR_UNSUPPORTED, WTAP_ERR_UNSUPPORTED_ENCAP, and
WTAP_ERR_BAD_RECORD errors. Replace the error messages logged with
"g_message()" for those errors with g_strdup()ed or g_strdup_printf()ed
strings returned as the error info string, and change the callers of
those routines to, for those errors, put the info string into the
printed message or alert box for the error.
Add messages for cases where those errors were returned without printing
an additional message.
Nobody uses the error code from "cf_read()" - "cf_read()" puts up the
alert box itself for failures; get rid of the error code, so it just
returns a success/failure indication.
Rename "file_read_error_message()" to "cf_read_error_message()", as it
handles read errors from Wiretap, and have it take an error info string
as an argument. (That handles a lot of the work of putting the info
string into the error message.)
Make some variables in "ascend-grammar.y" static.
Check the return value of "erf_read_header()" in "erf_seek_read()".
Get rid of an unused #define in "i4btrace.c".
svn path=/trunk/; revision=9852
e.g. when applying a "Follow TCP stream",
fix a bug in the recent function, discarding the newest entries when
saving a full list (now discarding the oldest).
svn path=/trunk/; revision=9849