Don't fetch CHAP fields until we need them, so that we can at least
partially dissect a short frame.
Even if the CHAP length is wrong, put it into the protocol tree using
the registered field.
Use "tvb_format_text()" to put text into the Info column, so we handle
non-printable characters by escaping them.
svn path=/trunk/; revision=16616
correct a bug in parsing Lucent/Ascend PPP dumps. Basically, blobs with "PPP-OUT" should be labelled "PPP transmit" while blobs with "PPP-IN" should be labelled "PPP receive". The current code labels them the other way around.
packet-ppp.c
- Properly decode option to enable ECRTP (it wasn't decoded).
- Use the ipv6 knob to control ipv6 decoding (previously, it
was using the ipv4 knob).
svn path=/trunk/; revision=16194
and not free the string to which it points. Pass to
REPORT_DISSECTOR_BUG() strings allocated with ep_strdup_printf(), so
that they're freed automatically.
svn path=/trunk/; revision=16039
directory to the epan directory. Some of them should perhaps ultimately
be moved to epan/dissectors, if they pertain only to stuff exported by a
particular dissector.
Fix Gerald's e-mail address in files we're moving.
svn path=/trunk/; revision=15844
Camel: Fix an off-by-one error. Don't alloc and free where it's not
needed. Remove an unused variable.
PPP and K12: Fix memory leaks.
svn path=/trunk/; revision=15725
in a simple approach, I've replaced all g_assert() and g_assert_not_reached() calls by their exception throwing counterparts DISSECTOR_ASSERT() and DISSECTOR_ASSERT_NOT_REACHED()
this will replace application crash by showing a dissector bug, which is the desired behaviour
there were some g_assert calls in the protocol registering functions, which might not be acting as expected now, but to be able to simply search for g_assert in the future I've replaced that calls too
one g_assert remained, the one when someone throws an unknown exception "into" packet_frame.c, but IMHO this one should remain.
svn path=/trunk/; revision=14608
the length of a suboption must be at least 2;
the length of the Unique Digit option must be 3, and its name is
"Unique Digit", not "Uniq Digit";
the length of the other suboptions must be at least 3.
svn path=/trunk/; revision=13901
items don't run past the length left in the option, and, if they do, put
an indication into the protocol tree that they did.
The length returned by "tvb_strsize()" includes the terminating null
character.
svn path=/trunk/; revision=13900
- Fix partly wrong cause values in the gmm (found by Miklos Szurdi)
- Fix high/low nibble swap of the force to standby field (found by
Miklos Szurdi)
- Dissect all elements
svn path=/trunk/; revision=13030
part of the packet's data.
If a packet has a starting and ending frame delimiter - i.e., the
delimiter at the end is followed by another delimiter - consider the
ending delimiter part of the first packet's raw data.
svn path=/trunk/; revision=12749
framing, and put the raw packet and fragment data at that layer.
Add a common routine to dissect un-escaped PPP data that might have 0xff
0x03, and use it both for the raw PPP in HDLC-like framing and for
processing un-escaped data.
Check for an escape byte not followed by another byte (e.g., because the
packet is too short).
Handle the case where a chunk of that raw byte data doesn't begin with
0x7e, but starts with cruft from a previous PPP packet split across
lower-level packets.
svn path=/trunk/; revision=12741
The compression option isn't just the compression protocol, it can
include options for the protocol, so name the ett_ variable for its tree
appropriately.
svn path=/trunk/; revision=12572
should be the length of the packet being dissected, so that if we throw
an exception dissecting it, the item covers the entire packet (because
it's incomplete, and thus *all* of it is the beginning of the header).
Instead, we should pass the length of the part of the header prior to
the protocol field as an argument to "dissect_ppp_common()", and it
should use that to set the length of that item.
svn path=/trunk/; revision=12441
Also move ncp222.py, x11-fields, process-x11-fields.pl,
make-reg-dotc, and make-reg-dotc.py.
Adjust #include lines in files that include packet-*.h
files.
svn path=/trunk/; revision=11410