Added filters for BOOTP options of "basic" types (modeled after packet-wssap.c)
"bootp.option.length" only used when specific option filter can't be found.
"bootp.option.value" expanded to support multiple types
Converted "custom options string" to UAT
replacing many proto_tree_add_text() calls with
proto_tree_add_item(), so the BOOTP dissector is considerably more filterable
svn path=/trunk/; revision=37958
should be used (instead of the non-tvb functions with a call to tvb_get_ptr()).
Use those functions in a bunch of places.
svn path=/trunk/; revision=35911
bootp option 123 has 2 chooses - coordinate based location RFC 3825 or
CableLabs DSS_ID. Add better support for having 2 DSS_ID with dynamic
size (up to 32 byte each)
svn path=/trunk/; revision=35530
Replace ip6_to_str((tvb_get_ptr(...)) with tvb_ip6_to_str().
There's no need to pass the result of tvb_get_ptr() as the 'value' in
proto_tree_add_*(): just use proto_tree_add_item().
Replace some tvb_get_ptr()s with tvb_get_ephemeral_string()s.
Replace some memcpy()+tvb_get_ptr() with tvb_memcpy().
svn path=/trunk/; revision=35529
Add support to EuroCableLabs at bootp opt 60 sub 23.
according to PKT-SP-PROV1.5-I04-090624, paragraph 10.23 Device MIB Support:
type 2 is indicating EuroCableLabs.
svn path=/trunk/; revision=35350
buffer - the size of the latter can't be found with sizeof, as all you
have is a pointer to the buffer. sizeof (pointer) happened, by chance,
to give the right answer on ILP32 platforms, but gave a too-big answer
on LP64 and LLP64 platforms, which meant we overflowed the buffer when
clearing it.
svn path=/trunk/; revision=35297
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
- Initialize a few static global variables;
- Remove two unnecessary calls to g_hash_table_foreach_remove;
- Do whitespace cleanup and use consistent indentation;
- Fix a few typos and fix up several comments.
svn path=/trunk/; revision=35183
CableLabs has added additional TLV's to DHCP Option 60 Modem capabilities
reporting for their Docsis 2.0 devices. Additionally, in Docsis 3.0, they have
moved the capabilities portion of Option 60 (sub-option 5) to now reside in the
vendor specific Option 125 using their Enterprise number (4491).
svn path=/trunk/; revision=34605
bootp dissector when dissecting packetcable MTA capabilities).
Limit the tlv_len to G_MAXUINT16 to prevent an integer overflow from causing us to
increment the working offset by 0 (thus causing us to loop).
svn path=/trunk/; revision=33846
"According to this document DHCP Option 150 is an array of IPv4 TFTP Server
Addresses
http://cisco.com/en/US/products/sw/voicesw/ps556/products_tech_note09186a00800942f4.shtml#tftp_option
I fixed the capitalization of this option in the bootp dissector and changed
the type to match the actual use of the option. (ipv4_list)"
From me: Add a pointer to a draft RFC about the DHCP "TFTP Server Address" option.
svn path=/trunk/; revision=33203
Add some more robustness to Alcatel-Lucent vendor specific
DHCP options and add some new option values.
It now supports all currently implemented option values, i.e.:
{Option Opcode Length (bytes) Content}
AVA 58 (0x3A) 2 Vlanid
IP Touch TFTP1 64 (0x40) 4 IPv4 address
IP Touch TFTP2 65 (0x41) 4 IPv4 address
APPLICATION_TYPE 66 (0x42) 1 0 (noe) / 1 (sip)
SIP URL 67 (0x43) x bytes url string
svn path=/trunk/; revision=32845
1. add docsis3.0 support in bootp option 60
2. change to text option 123 (Cable lab)
3. change to text option 43 sub option 8 (OUI)
svn path=/trunk/; revision=32696
- vendor option field
- overloaded sname field
- overloaded file name field
Improve the overload determination of sname and file name field.
svn path=/trunk/; revision=31927
Add Packet Cable 2.0 bootp option 60 support:
sub-option 01 new type value 2 for packet cable 2.0
sub-option 1a new sun-option "Certificate Bootstrapping Support" length 01,
value 1 for support and 0 for not supported.
svn path=/trunk/; revision=31647
- Add another break
- Add a comment about suboption 9
- Add suboption 11 decoding while I'm at it
(Server Identifier Override Suboption)
svn path=/trunk/; revision=30131
* Expert Info / Expert Info Composite requires a full protocol tree.
* Delay tree NULL pointer check in bootp dissector
svn path=/trunk/; revision=29530
(1) Trailing/leading spaces are removed from 'name's/'blurb's
(2) Duplicate 'blurb's are replaced with NULL
(3) Empty ("") 'blurb's are replaced with NULL
(4) BASE_NONE, NULL, 0x0 are used for 'display', 'strings' and 'bitmask' fields
for FT_NONE, FT_BYTES, FT_IPv4, FT_IPv6, FT_ABSOLUTE_TIME, FT_RELATIVE_TIME,
FT_PROTOCOL, FT_STRING and FT_STRINGZ field types
(5) Only allow non-zero value for 'display' if 'bitmask' is non-zero
svn path=/trunk/; revision=28770
possibly undesirable - in a Turkish locale, for example, "i" and "I" are
not equal); g_ascii_strcasecmp()'s behavior is not locale-dependent (and
treats "i" and "I" as equal even in a Turkish locale; the strings being
compared against are English, not Turkish, so treating "i" and "I" as
equal is a feature, not a bug).
svn path=/trunk/; revision=27236
Provide for custom decodes of bootp/dhcp options.
By Jaap Keuter:
Cleaned up some option processing code and made option change more robust.
svn path=/trunk/; revision=27233
This patch adds support for DHCPv4 coordinate-based Location Configuration
Option 123, as proposed by RFC 3825.
The decoding functionality is based on the RFC3825decoder by Klaus Darilion
http://www.enum.at/rfc3825encoder.529.0.html
svn path=/trunk/; revision=26381
Display FQDN binary encoded name as text
Ensure that get_dns_name does not cross packet sub boundry
From me:
Preserve the usage of bootp.fqdn.name as a display filter
svn path=/trunk/; revision=25981
- The overloaded options are displayed at the same level as other options
- The bootp file and server name options are displayed as overloaded if
appropriate. To achieve this the bootp header parsing code needed to be
moved to a later point.
+ Some signedness warning fixes.
+ Make a global variable (novell_string) static
svn path=/trunk/; revision=24611
This patch decodes the Civic Address Types (CATypes) for Civic Addresses
Configuration Information. This GEOCONF_CIVIC DHCP option number 99 is defined
in RFC 4776.
svn path=/trunk/; revision=24406
According to http://www.iana.org/assignments/bootp-dhcp-parameters, suboptions
from 1 to 10 have been defined. 3 is reserved, and most of the others have
their own RFC. For a start I've attached a patch that decodes suboption 6 just
as 1 and 2, and also suboption 3. This might not be entirely correct, since
suboptions 1 and 2 are opaque values (RFC3046), while 6 is an ASCII text
string.
I added something for the other values as well...
svn path=/trunk/; revision=23293
The following patch decode DHCP option 249 (Classless Static Route) used by
some Microsoft systems. Same decoding as option 121 (RFC 3442).
svn path=/trunk/; revision=22576
routines and routines using those routines. GLib might use different
modifiers for 64-bit quantities than the platform's C library does.
svn path=/trunk/; revision=21990
--enable-extra-gcc-checks set.
If we turn on -pedantic, try turning on -Wno-long-long as well, so that
it's not *so* pedantic that it rejects the 64-bit integral data types
that we explicitly require.
Constify a bunch of stuff, and make some other changes, to get rid of
warnings.
Clean up some indentation.
svn path=/trunk/; revision=21526
Attached is a wireshark patch that adds support for decoding DHCP option 125
and the DHCP option 125 suboptions defined by the DSL Forum's TR-111
specification.
svn path=/trunk/; revision=20783