The functionality was suiting for address_to_str.c and the #defines belong in packet-atalk.h. Kept the address structure with the "address string conversion", but that can probably be better cleaned up when the address to str as a whole is cleaned up.
Would also consider making AT_ATALK an FT_ type as well.
Change-Id: Ia534096c707e6fb94acdfee0d332beda6571c371
Reviewed-on: https://code.wireshark.org/review/6417
Petri-Dish: Hadriel Kaplan <hadrielk@yahoo.com>
Reviewed-by: Anders Broman <a.broman58@gmail.com>
This is intended to handle ALL address types retrieved from a tvbuff.
One of the (good) side effects of this function is that it can replace a lot of the "hidden" ep_alloc calls used to allocate memory for the address string.
A few existing "popular" helper tvb_ functions were turned into pure macros calling tvb_address_to_str. Some of the "less used" helper tvb_ functions were just directly replaced with tvb_address_to_str.
Change-Id: I361d991c4ad90142173e63eae02a94d68af3ec43
Reviewed-on: https://code.wireshark.org/review/6333
Reviewed-by: Michael Mann <mmann78@netscape.net>
Change-Id: I1d258923a7a63539ec8456d3e306bca5016a1e4b
Reviewed-on: https://code.wireshark.org/review/6060
Petri-Dish: Michael Mann <mmann78@netscape.net>
Tested-by: Petri Dish Buildbot <buildbot-no-reply@wireshark.org>
Reviewed-by: Pascal Quantin <pascal.quantin@gmail.com>
Reviewed-by: Michael Mann <mmann78@netscape.net>
Change-Id: I40d0c8253743183aecef252040b7dd6742ae5c71
Reviewed-on: https://code.wireshark.org/review/5934
Reviewed-by: Michael Mann <mmann78@netscape.net>
Specifically:
- Set packet.h to be the first wireshark #include after
config.h and "system" #includes.
packet.h added as an #include in some cases when missing.
- Remove some #includes included (directly/indirectly) in
packet.h. E.g., glib.h.
(Done only for those files including packet.h).
- As needed, move "system" #includes to be after config.h and
before wireshark #includes.
- Rework various #include file specifications for consistency.
- Misc.
Change-Id: Ifaa1a14b50b69fbad38ea4838a49dfe595c54c95
Reviewed-on: https://code.wireshark.org/review/5923
Petri-Dish: Alexis La Goutte <alexis.lagoutte@gmail.com>
Reviewed-by: Bill Meier <wmeier@newsguy.com>
Add macros to set entries of a vec_t, one for use when you have a
pointer to private data, and one for use when you have data in a tvbuff.
The latter wraps the use of tvb_get_ptr(), so that you're not directly
calling it in a dissector.
Move ip_checksum() to epan/in_cksum.c, and add an ip_checksum_tvb() that
wraps the use of tvb_get_ptr().
In the CARP dissector, give the length variable an unsigned type -
there's no benefit to it being signed, and that requires some casts to
be thrown around.
In the DCCP dissector, check only against the coverage length to see if
we have enough data, combine the "should we check the checksum?" check
with the "*can* we check the checksum?" check in a single if, and throw
a dissector assertion if the source network address type isn't IPv4 or
IPv6.
Get rid of inclues of <epan/in_cksum.h> in dissectors that don't use any
of the Internet checksum routines.
In the HIP dissector, make sure we have the data to calculate the
checksum before doing so.
Change-Id: I2f9674775dbb54c533d33082632809f7d32ec8ae
Reviewed-on: https://code.wireshark.org/review/3517
Reviewed-by: Guy Harris <guy@alum.mit.edu>
Change-Id: I525ac2aae2bdbfd5f3a2f3b35f1bf10dde053f66
Reviewed-on: https://code.wireshark.org/review/2667
Tested-by: Michael Mann <mmann78@netscape.net>
Reviewed-by: Michael Mann <mmann78@netscape.net>
tvb_new_subset -> tvb_new_subset_remaining it appears that's what the intention is.
Change-Id: I2334bbf3f10475b3c22391392fc8b6864454de2d
Reviewed-on: https://code.wireshark.org/review/1999
Reviewed-by: Pascal Quantin <pascal.quantin@gmail.com>
In the EIGRP packet dissector, the dissector routine for the Sequence TLV
dissected the TLV only up to the first address in the list. However, the
Sequence TLV contains a variably sized list of addresses. This patch
modifies the routine so that it processes the entire TLV, not just the
first address in the contained list.
Also, in the dissect_eigrp(), replaced calls to tvb_new_subset() with
the reported length set to -1 with the call to tvb_new_subset_length().
TLVs always carry information about their length. And this time,
correct truly ALL calls in the switch{} section.
Sample packet capture is available in BugZilla.
Bug: 10156
Change-Id: Idaaf182c05bcf799f770f23a2ce2b1e05a3d569a
Reviewed-on: https://code.wireshark.org/review/1911
Reviewed-by: Pascal Quantin <pascal.quantin@gmail.com>
Introduce a new tvb_ipxnet_to_string() routine to help that.
Change-Id: Icb27f7cdd6e6e7de67e765715e450063d7de6072
Reviewed-on: https://code.wireshark.org/review/1647
Reviewed-by: Guy Harris <guy@alum.mit.edu>
(Using sed : sed -i '/^ \* \$Id\$/,+1 d')
Fix manually some typo (in export_object_dicom.c and crc16-plain.c)
Change-Id: I4c1ae68d1c4afeace8cb195b53c715cf9e1227a8
Reviewed-on: https://code.wireshark.org/review/497
Reviewed-by: Anders Broman <a.broman58@gmail.com>
Specifically, proto_tree_add_expert() must take an actual tree node (for example
from proto_item_add_subtree()) and cannot take just any old item node. The
original intent (before the conversion) appeared to be just to put it on the
tree, so do that.
Another assertion gone from
https://bugs.wireshark.org/bugzilla/show_bug.cgi?id=9406
svn path=/trunk/; revision=53456
packet-eigrp.c:633:10: error: unrecognized parameter passing direction, valid
directions are '[in]', '[out]' and '[in,out]' [-Werror,-Wdocumentation]
* @param[in|out] tree detail dissection result
^~~~~~~~
packet-eigrp.c:638:5: error: '@return' command used in a comment that is
attached to a function returning void [-Werror,-Wdocumentation]
* @return void
~^~~~~~~~~~~
packet-eigrp.c:691:10: error: unrecognized parameter passing direction, valid
directions are '[in]', '[out]' and '[in,out]' [-Werror,-Wdocumentation]
* @param[in|out] tree detail dissection result
^~~~~~~~
packet-eigrp.c:696:5: error: '@return' command used in a comment that is
attached to a function returning void [-Werror,-Wdocumentation]
* @return void
~^~~~~~~~~~~
packet-eigrp.c:765:10: error: unrecognized parameter passing direction, valid
directions are '[in]', '[out]' and '[in,out]' [-Werror,-Wdocumentation]
* @param[in|out] tree detail dissection result
^~~~~~~~
packet-eigrp.c:769:5: error: '@return' command used in a comment that is
attached to a function returning void [-Werror,-Wdocumentation]
* @return void
~^~~~~~~~~~~
packet-eigrp.c:814:10: error: unrecognized parameter passing direction, valid
directions are '[in]', '[out]' and '[in,out]' [-Werror,-Wdocumentation]
* @param[in|out] tree detail dissection result
^~~~~~~~
packet-eigrp.c:818:5: error: '@return' command used in a comment that is
attached to a function returning void [-Werror,-Wdocumentation]
* @return void
~^~~~~~~~~~~
packet-eigrp.c:853:10: error: unrecognized parameter passing direction, valid
directions are '[in]', '[out]' and '[in,out]' [-Werror,-Wdocumentation]
* @param[in|out] tree detail dissection result
^~~~~~~~
packet-eigrp.c:857:5: error: '@return' command used in a comment that is
attached to a function returning void [-Werror,-Wdocumentation]
* @return void
~^~~~~~~~~~~
packet-eigrp.c:878:10: error: unrecognized parameter passing direction, valid
directions are '[in]', '[out]' and '[in,out]' [-Werror,-Wdocumentation]
* @param[in|out] tree detail dissection result
^~~~~~~~
packet-eigrp.c:882:19: error: empty paragraph passed to '@param' command
[-Werror,-Wdocumentation]
* @param[out] None
~~~~~~~~~~~~~~~^
packet-eigrp.c:884:5: error: '@return' command used in a comment that is
attached to a function returning void [-Werror,-Wdocumentation]
* @return void
~^~~~~~~~~~~
packet-eigrp.c:880:15: error: parameter 'pinfo' not found in the function
declaration [-Werror,-Wdocumentation]
* @param[in] pinfo general data about the protocol
^~~~~
packet-eigrp.c:881:15: error: parameter 'ti' not found in the function
declaration [-Werror,-Wdocumentation]
* @param[in] ti protocol item
^~
packet-eigrp.c:882:16: error: parameter 'None' not found in the function
declaration [-Werror,-Wdocumentation]
* @param[out] None
^~~~
packet-eigrp.c:902:19: error: empty paragraph passed to '@param' command
[-Werror,-Wdocumentation]
* @param[out] None
~~~~~~~~~~~~~~~^
packet-eigrp.c:904:5: error: '@return' command used in a comment that is
attached to a function returning void [-Werror,-Wdocumentation]
* @return void
~^~~~~~~~~~~
packet-eigrp.c:902:16: error: parameter 'None' not found in the function
declaration [-Werror,-Wdocumentation]
* @param[out] None
^~~~
packet-eigrp.c:1712:15: error: parameter 'pinfo' not found in the function
declaration [-Werror,-Wdocumentation]
* @param[in] pinfo general data about the protocol
^~~~~
packet-eigrp.c:1712:15: note: did you mean 'ti'?
* @param[in] pinfo general data about the protocol
^~~~~
ti
packet-eigrp.c:2585:18: error: empty paragraph passed to '@param' command
[-Werror,-Wdocumentation]
* @param[in] void
~~~~~~~~~~~~~~^
packet-eigrp.c:2585:15: error: parameter 'void' not found in the function
declaration [-Werror,-Wdocumentation]
* @param[in] void
^~~~
packet-eigrp.c:3324:18: error: empty paragraph passed to '@param' command
[-Werror,-Wdocumentation]
* @param[in] void
~~~~~~~~~~~~~~^
packet-eigrp.c:3324:15: error: parameter 'void' not found in the function
declaration [-Werror,-Wdocumentation]
* @param[in] void
^~~~
svn path=/trunk/; revision=51266
tvbuff and runs to the end of the tvbuff? Let me count the ways....
Replace a bunch of different ways of doing that (some incorrect, in that
they're not properly handling tvbuffs where the captured and reported
lengths are different) with tvb_new_subset_remaining().
svn path=/trunk/; revision=47751
Also (for a few files):
- create/use some extended value strings;
- remove unneeded #include files;
- remove unneeded variable initialization;
- re-order fcns slightly so prefs_reg_handoff...() at end, etc
svn path=/trunk/; revision=44438
tidlist is registered as a FT_UINT16 so don't add an array of 16-bit entities
(tids) using it. Instead add each TID individually.
svn path=/trunk/; revision=41637
Re-write of the EIGRP dissector to support Multi-Protocol (TLV 2.0) and
Multi-Topology (TLV 3.0). This version also support Service Advertisement
Framework(SAF) extensions to EIGRP
Dissector includes:
- Dissection of all EIGRP Opcodes and TLVs
- Decode of EIGRP Flags and bitfields
- Decode of EIGRP Communities
- Decode of latest EIGRP "wide metric" formats
- Decode of EIGRP Extended Metrics
- Decode of SAF packets with XML client data handed off to XML dissector
From me:
Fix checkapi errors/warnings use G_GINT64_CONSTANT and G_GINT64_MODIFIER
svn path=/trunk/; revision=39339
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