Make sure that there is enough space allocated for PPP encapsulated CRTP
packet's header.
The bug can be triggered on an x86_64 system using the cpature file attached to
http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=680056
svn path=/trunk/; revision=43784
Also:
- don't use val_to_str_const() with a "format" default string;
- rename 'opt_len_type' enumeration identifiers to be less generic.
svn path=/trunk/; revision=43210
Other misc. changes:
-> Delete useless, duplicate assignment of offset to 0 in dissect_vsnp().
-> Change short seq # display filter so it's not the same as the seq # filter.
-> pppoe.dump.gz looks to be malformed, so remove unnecessary "remlen" code in
dissect_cp() and let the packets be displayed as malformed since they are.
-> Remove if (check_col()) checks.
-> Fix copy-and-paste of filter name for ipcp.opt.max_header.
svn path=/trunk/; revision=42661
-> Support RFC 2153's Vendor Specific decode
-> Make more fields filterable by converting some add_text()'s to add_xyz().
-> Don't wrap call_dissector_only() within an if(tree){} block.
svn path=/trunk/; revision=42581
1. If there's no character encoding (ENC_ASCII, ...) specified
then use ENC_ASCII.
2. For all but FT_UINT_STRING, always use ENC_NA
(replacing any existing True/1/FALSE/0
/ENC_BIG_ENDIAN/ENC_LITTLE_ENDIAN).
svn path=/trunk/; revision=39426
Specifically: Replace FALSE|0 and TRUE|1 by ENC_BIG_ENDIAN|ENC_LITTLE_ENDIAN as
the encoding parameter for proto_tree_add_item() calls which directly reference
an item in hf[] which has a type of:
FT_BOOLEAN
FT_IPv4
FT_EUI64
FT_GUID
FT_UINT_STRING
Also: For type FT_ITv6 use ENC_NA. (This was missed in SVN #39260)
svn path=/trunk/; revision=39328
Specifically: Replace FALSE|0 and TRUE|1 by ENC_BIG_ENDIAN|ENC_LITTLE_ENDIAN as
the encoding parameter for proto_tree_add_item() calls which directly reference
an item in hf[] which has a type of:
FT_UINT8
FT_UINT16
FT_UINT24
FT_UINT32
FT_UINT64
FT_INT8
FT_INT16
FT_INT24
FT_INT32
FT_INT64
FT_FLOAT
FT_DOUBLE
svn path=/trunk/; revision=39288
FT_NONE
FT_BYTES
FT_IPV6
FT_IPXNET
FT_OID
Note: Encoding field set to ENC_NA only if the field was previously TRUE|FALSE|ENC_LITTLE_ENDIAN|ENC_BIG_ENDIAN
svn path=/trunk/; revision=39260
Also: Fix a bug wherein PPP_RTP_CUD8 was being registered
to "ppp.protocol" with the cudp16 handle rather than the cudp8 handle.
Coverity 1004-1013
svn path=/trunk/; revision=36322
keys to have _uint in their names, to match the routines that handle
dissector tables with string keys. (Using _port can confuse people into
thinking they're intended solely for use with TCP/UDP/etc. ports when,
in fact, they work better for things such as Ethernet types, where the
binding of particular values to particular protocols are a lot
stronger.)
svn path=/trunk/; revision=35224
Find a patch who clean up PPP dissector
* Remove check_col (from my previous patch #5325)
* Remove the #define ppp_min (unused)
* Remove some unused ett_*
* Cleanup NO ARRAY entry (it is a false positive of checkhf tool, it is need {
(in the same line) before a hf_... in hf_register_info struct
* Cleanup Unused entry in VSNP Dissector ( it's really strange, there is no
check when the code was added #4434 ;) )
* minor bug fix...
From me: put one of the check_col()'s (that also protects a val_to_str() call)
back in.
Note: the checkhf tool bug was fixed in rev 34623.
svn path=/trunk/; revision=34624
It is a rework of PAP PPP dissector
- Replace proto_tree_add_text by proto_tree_add_item
- add col_append_fstr to show information (Peer-ID, Password...)
svn path=/trunk/; revision=34604
Fix for bug 4810 so PPP/USB dissector registers for IF_CLASS_CDC_DATA
- in addition to IF_CLASS_UNKNOWN and IF_CLASS_VENDOR_SPECIFIC, for those rare
occasions that the right set of circumstances arise where PPP traffic will be
(correctly) encapsulated in a USB frame of that interface class.
svn path=/trunk/; revision=33026
Fix for bug 4807 to handle compressed (NULL) address and control bytes.
The problem seems to be that the address and control bytes are missing,
presumably because they are compressed per section 3.2 of
http://tools.ietf.org/html/rfc1662. The attached patch tries to account for
that.
The patch also fixes another bug. If the hdlc framing character, 0x7e, is not
present, but the address and control fields are, then the offset might need to
be 3 bytes instead of only 2 bytes if the control field is escaped. Sometimes
it is escaped and sometimes it isn't, so we need to handle both cases.
svn path=/trunk/; revision=33021
When I submitted the USB and PPP changes, I had not previously tested with a
full insertion of a particular USB device. Now that I have, I've found that
what used to be reported as an unknown interface class is now reported as a
vendor specific interface class. Thus, in order for PPP/USB dissection to
work, the ppp dissector must register for that class as well. The attached
trivial patch does just that.
svn path=/trunk/; revision=32768
Support PPP-over-USB.
Don't remove the USB pseudo-header from the packet data for
Linux USB packets, just byte-swap it if necessary and have the
USB dissector fetch the pseudo-header from the raw packet data.
Update USB language ID values.
svn path=/trunk/; revision=32534