Also remove code dependency on ip6_hdr pointer. It is used solely for the
"ipv6" tap now.
Change-Id: I07150bfae8bf94bf3c585f20c27b60db78688a7b
Reviewed-on: https://code.wireshark.org/review/16655
Petri-Dish: João Valverde <j@v6e.pt>
Tested-by: Petri Dish Buildbot <buildbot-no-reply@wireshark.org>
Reviewed-by: João Valverde <j@v6e.pt>
To perform IPv6 defragmentation we need to compute the IPv6 fragment header
payload length by subtracting the length of intermediate extension headers
from the IPv6 payload length.
Add a new frag_plen field to ipv6_pinfo_t to do that instead of (ab)using
struct ws_ip.
Note: The RFC 2460 rules for fragment header order are stricter than the code
suggests but that shouldn't be a problem here.
Change-Id: I76f3cb3a1a29d96b080d3d53c0f493f9d0b2786c
Reviewed-on: https://code.wireshark.org/review/16637
Petri-Dish: João Valverde <j@v6e.pt>
Tested-by: Petri Dish Buildbot <buildbot-no-reply@wireshark.org>
Reviewed-by: João Valverde <j@v6e.pt>
That way, we don't rely on the ws_ip pointer being non-null.
Based on changes from Ib73410fd8575ad6c836311bbda87a0580e5640ac.
Change-Id: If8c437572c725481ac4148c8095a1a479b4fb0f8
Reviewed-on: https://code.wireshark.org/review/16617
Reviewed-by: Guy Harris <guy@alum.mit.edu>
That way, we don't rely on the ws_ip pointer being non-null.
Based on changes from Ib73410fd8575ad6c836311bbda87a0580e5640ac.
Bug: 12645
Change-Id: I8c74ba57637b6a125593c4711d7c21b9693c2c85
Reviewed-on: https://code.wireshark.org/review/16616
Reviewed-by: Guy Harris <guy@alum.mit.edu>
Change field ip_v_hl to version.
Change-Id: Ic7ce8d6d083f6413284a7b9ba91a2387b11b29fb
Reviewed-on: https://code.wireshark.org/review/16555
Petri-Dish: João Valverde <j@v6e.pt>
Tested-by: Petri Dish Buildbot <buildbot-no-reply@wireshark.org>
Reviewed-by: João Valverde <j@v6e.pt>
This is an attempt to standardize display/handling of checksum fields for all dissectors.
The main target is for dissectors that do validation, but dissectors that just report the
checksum were also included just to make them easier to find in the future.
Bug: 10620
Bug: 12058
Ping-Bug: 8859
Change-Id: Ia8abd86e42eaf8ed50de6b173409e914b17993bf
Reviewed-on: https://code.wireshark.org/review/16380
Petri-Dish: Michael Mann <mmann78@netscape.net>
Tested-by: Petri Dish Buildbot <buildbot-no-reply@wireshark.org>
Reviewed-by: Jeff Morriss <jeff.morriss.ws@gmail.com>
Reviewed-by: Michael Mann <mmann78@netscape.net>
As requested by Alexis.
Change-Id: I33e91aa0234e7c07869d69b5da6d0df8f94254ba
Reviewed-on: https://code.wireshark.org/review/16559
Reviewed-by: Alexis La Goutte <alexis.lagoutte@gmail.com>
It was passing the wrong offset for an FT_UINT_STRING type.
Change-Id: I739eb5bbf86768f6bf953662d407270cc8e27f2b
Reviewed-on: https://code.wireshark.org/review/16547
Petri-Dish: João Valverde <j@v6e.pt>
Tested-by: Petri Dish Buildbot <buildbot-no-reply@wireshark.org>
Reviewed-by: João Valverde <j@v6e.pt>
In accordance with the IANA registry. This option was never used.
Change-Id: I2fc16579b084a0d537f16b9104b025d97a0afd8d
Reviewed-on: https://code.wireshark.org/review/16552
Reviewed-by: João Valverde <j@v6e.pt>
It's not being used and makes some things more difficult so kill it.
It's not possible in general to distinguish an unknown extension header from
an unknown IP protocol and the concept is fuzzy anyway (for example ESP is
officially an extension header but meh) so don't bother trying for now.
Change-Id: I3bdfcc2b76b47e8c1588e91838225b14808e43a7
Reviewed-on: https://code.wireshark.org/review/16529
Petri-Dish: João Valverde <j@v6e.pt>
Tested-by: Petri Dish Buildbot <buildbot-no-reply@wireshark.org>
Reviewed-by: João Valverde <j@v6e.pt>
Don't require 40 bytes upfront, do it by field.
Miscellaneous cleanups.
Change-Id: Ib40b43eb3cf9aa52aa490cdabc6de26b0e977483
Reviewed-on: https://code.wireshark.org/review/16522
Reviewed-by: João Valverde <j@v6e.pt>
struct ws_ip is IP version agnostic. "ip_p" is too terse and less
appropriate.
Change-Id: I06b8740ab420e20781bf7b9efcf5dce19ad22ab2
Reviewed-on: https://code.wireshark.org/review/16519
Reviewed-by: Michael Mann <mmann78@netscape.net>
Petri-Dish: Michael Mann <mmann78@netscape.net>
Tested-by: Petri Dish Buildbot <buildbot-no-reply@wireshark.org>
Reviewed-by: João Valverde <j@v6e.pt>
The field macros are a particularly obnoxious form of namespace pollution.
Change-Id: I9010a767625fd1c4b4a48c9d75481c577915fce6
Reviewed-on: https://code.wireshark.org/review/16520
Petri-Dish: João Valverde <j@v6e.pt>
Tested-by: Petri Dish Buildbot <buildbot-no-reply@wireshark.org>
Reviewed-by: João Valverde <j@v6e.pt>
We pass the Option Data offset to sub-dissectors.
Change-Id: I4a20514f3f1c31179f93c86e251ba67d671844b3
Reviewed-on: https://code.wireshark.org/review/16484
Petri-Dish: João Valverde <j@v6e.pt>
Tested-by: Petri Dish Buildbot <buildbot-no-reply@wireshark.org>
Reviewed-by: João Valverde <j@v6e.pt>
Change-Id: Ia35a78ccaa4f61fbbbfff304f12d813fdbdd009d
Reviewed-on: https://code.wireshark.org/review/16452
Reviewed-by: João Valverde <j@v6e.pt>
Petri-Dish: João Valverde <j@v6e.pt>
Tested-by: Petri Dish Buildbot <buildbot-no-reply@wireshark.org>
Reviewed-by: Michael Mann <mmann78@netscape.net>
Use a wmem_array to perform strict checking.
Fold cmprI/cmprE dissection into a single loop.
Change-Id: I67443a604b47cd9cbca32c7f7276a7e2229580f1
Reviewed-on: https://code.wireshark.org/review/16348
Petri-Dish: João Valverde <j@v6e.pt>
Tested-by: Petri Dish Buildbot <buildbot-no-reply@wireshark.org>
Reviewed-by: João Valverde <j@v6e.pt>
Replace CamelCase and remove unnecessary casts too.
Change-Id: Iacf56912448c0e0dc0fe21477d6b71ba9caba69a
Reviewed-on: https://code.wireshark.org/review/16344
Reviewed-by: Michael Mann <mmann78@netscape.net>
Petri-Dish: Michael Mann <mmann78@netscape.net>
Tested-by: Petri Dish Buildbot <buildbot-no-reply@wireshark.org>
Reviewed-by: João Valverde <j@v6e.pt>