Commit Graph

42 Commits

Author SHA1 Message Date
Michael Mann cd02af56a1 Eliminate (almost all) proto_tree_add_text calls from ASN.1 dissectors.
This mostly involved adding expert info capabilities to many of the dissectors so that they could correctly flag error conditions.

Only remaining proto_tree_add_text calls are in H248.cnf, which has a convoluted way of using hf_ data to make its tree.

Change-Id: I6412150c2ec1977d7fa38f3f0ed416680bdfb141
Reviewed-on: https://code.wireshark.org/review/3500
Petri-Dish: Michael Mann <mmann78@netscape.net>
Reviewed-by: Michael Mann <mmann78@netscape.net>
2014-08-09 01:57:08 +00:00
Guy Harris 4d90d6e38d Add some files under asn1 to the distribution.
Include CMakeLists.txt files and the gnm subdirectory, along with the
top-level Makefile.inc and Makefile.preinc files.  Don't explicitly
include Custom.make, as automake does that automatically given that it's
included by asn1/Makefile.am.

Add some files to EXTRA_DIST lists.

Move some .asn files to EXTRA_DIST; they don't need to be in SRC_FILES,
as SRC_FILES always includes EXTRA_DIST, and they *do* need to be in
EXTRA_DIST so that they're in the distribution.

Change-Id: Id91df577260fa57028d40fe098be1d79c59398e6
Reviewed-on: https://code.wireshark.org/review/3273
Reviewed-by: Guy Harris <guy@alum.mit.edu>
2014-07-30 23:42:55 +00:00
Evan Huus 980f5f6711 batch of tvb-length conversions
Change-Id: I5e40df8af6841e3dad71c41d7e43c7971611b15f
Reviewed-on: https://code.wireshark.org/review/2473
Reviewed-by: Evan Huus <eapache@gmail.com>
2014-06-20 05:33:04 +00:00
Pascal Quantin d0ac937567 Revert "Update ASN.1 source files with the API changes done in g021e7af"
This reverts commit e308e7c4de.

Change-Id: I079616d63f643f79f1bc03ef5fdf724f36df4071
Reviewed-on: https://code.wireshark.org/review/2435
Reviewed-by: Pascal Quantin <pascal.quantin@gmail.com>
2014-06-19 18:42:28 +00:00
Pascal Quantin e308e7c4de Update ASN.1 source files with the API changes done in g021e7af
Change-Id: I52ecfccbce423206242e3cf99401a8c9e1655d88
Reviewed-on: https://code.wireshark.org/review/2385
Reviewed-by: Pascal Quantin <pascal.quantin@gmail.com>
2014-06-18 16:15:42 +00:00
Bill Meier 1dff4e309d Remove trailing whitespace from asn1 .cnf & template.[hc] files. Regenerate dissectors.
Change-Id: I0e779b2ac2f608356649c5bbfca438141070dea4
Reviewed-on: https://code.wireshark.org/review/412
Reviewed-by: Bill Meier <wmeier@newsguy.com>
Tested-by: Bill Meier <wmeier@newsguy.com>
2014-02-26 19:38:21 +00:00
Jeff Morriss 8c608e6e82 Remove $Id$ from the ASN.1 dissectors and regenerate them.
Change-Id: Ie476c6f82f318188b41ed922b92c6fec119ea954
Reviewed-on: https://code.wireshark.org/review/244
Reviewed-by: Jeff Morriss <jeff.morriss.ws@gmail.com>
Tested-by: Jeff Morriss <jeff.morriss.ws@gmail.com>
2014-02-18 03:05:28 +00:00
Anders Broman e6d09c1634 Make local functions static. Include *.h when needed.
svn path=/trunk/; revision=54201
2013-12-17 22:07:32 +00:00
Anders Broman 0d46cdae53 - Forward declaration of register functions.
svn path=/trunk/; revision=53876
2013-12-09 06:20:42 +00:00
Michael Mann 8081cf1d90 Add data parameter to tcp_dissect_pdus() as well as convert it to using "new" style dissectors.
Now that "bytes consumed" can be determined, should tcp_dissect_pdus() take advantage of that?

Should tcp_dissect_pdus return length (bytes consumed)?  There are many dissectors that just call tcp_dissect_pdus() then return tvb_length(tvb).  Seems like that could all be rolled into one.

svn path=/trunk/; revision=53198
2013-11-09 17:46:28 +00:00
Michael Mann b6b78d69db In an effort to reduce the use of pinfo->private_data (and some true global variables), I converted the ASN.1 dissectors that use pinfo->private_data to exchange a SESSION_DATA_STRUCTURE to instead only exchange it in the context of ASN.1. This meant converting dissectors to the "new" style to pass the SESSION_DATA_STRUCTURE as well as providing a pointer to it in asn1_ctx_t.private_data. Yes, it's still "private data", but it's not used by all dissectors like pinfo->private data is.
svn path=/trunk/; revision=53090
2013-11-05 18:47:26 +00:00
Jörg Mayer 686dd9b061 Copy over rev 52110 to cmake
svn path=/trunk/; revision=52112
2013-09-16 21:45:46 +00:00
Chris Maynard e14b587293 Fix dependency problem reported by Joerg Mayer on wireshark-dev.
Ref: http://www.wireshark.org/lists/wireshark-dev/201309/msg00151.html

svn path=/trunk/; revision=52110
2013-09-16 21:35:27 +00:00
Jörg Mayer 888650324b emem -> wmem
svn path=/trunk/; revision=52054
2013-09-15 13:24:14 +00:00
Jakub Zawadzki a18172147f Remove fragment_data, add fragment_head, fragment_item - for now alias it to the same structure.
This is begin of work to split fragment head and fragments items.

svn path=/trunk/; revision=50708
2013-07-17 21:12:24 +00:00
Michael Mann 2dbf6c59a2 Remove check_col() from ASN.1 dissectors
svn path=/trunk/; revision=49927
2013-06-14 12:44:50 +00:00
Jörg Mayer 5fa9c90ffd Some more
svn path=/trunk/; revision=49203
2013-05-07 16:26:35 +00:00
Jörg Mayer 7a58867626 x721 and kerberos: Use standard Makefile.am
idmp: remove an unused line
tetra, h460: Whitespace changes to be a "standard" Makefile.am
asn1/Makefile.am: don't try to build kerberos and x721 dissectors

svn path=/trunk/; revision=49201
2013-05-07 12:58:27 +00:00
Jörg Mayer 8faa262e90 Stub cmake support for generating the asn1 dissectors.
It doesn't do anything yet, it is just to make svn status
readable again.

svn path=/trunk/; revision=49007
2013-04-23 23:05:33 +00:00
Guy Harris a2414d8909 Don't wire into the reassembly code the notion that reassemblies should
be done on flows from one address to another; reassembly for protocols
running atop TCP should be done on flows from one TCP endpoint to
another.

We do this by:

	adding "reassembly table" as a data structure;

	associating hash tables for both in-progress reassemblies and
	completed reassemblies with that data structure (currently, not
	all reassemblies use the latter; they might keep completed
	reassemblies in the first table);

	having functions to create and destroy keys in that table;

	offering standard routines for doing address-based and
	address-and-port-based flow processing, so that dissectors not
	needing their own specialized flow processing can just use them.

This fixes some mis-reassemblies of NIS YPSERV YPALL responses (where
the second YPALL response is processed as if it were a continuation of
a previous response between different endpoints, even though said
response is already reassembled), and also allows the DCE RPC-specific
stuff to be moved out of epan/reassembly.c into the DCE RPC dissector.

svn path=/trunk/; revision=48491
2013-03-22 23:59:54 +00:00
Jeff Morriss 3551a86c36 We always HAVE_CONFIG_H so don't bother checking whether we have it or not.
svn path=/trunk/; revision=45015
2012-09-20 01:29:52 +00:00
Jakub Zawadzki 0176a135db Propage changes done in generated dissectors to asn1/
svn path=/trunk/; revision=44845
2012-09-10 15:24:00 +00:00
Jakub Zawadzki bf81b42e1e Update Free Software Foundation address.
(COPYING will be updated in next commit)

svn path=/trunk/; revision=43536
2012-06-28 22:56:06 +00:00
Bill Meier 43402e0119 FT_BOOLEAN hf[] entry with a 0 'bitmask' should have 'display' = BASE_NONE;
Reformat long lines;
Use consistent indentation;
Do some general whitespace changes.

svn path=/trunk/; revision=41589
2012-03-16 02:24:57 +00:00
Balint Reczey 26503be7dc fix compile errors found by dumpabi target
svn path=/trunk/; revision=40595
2012-01-19 22:55:37 +00:00
Alexis La Goutte 7dc1bd38a1 Fix some Dead Store (Dead assignement/Dead increment) Warning found by Clang
svn path=/trunk/; revision=40460
2012-01-13 16:20:23 +00:00
Bill Meier 794757ae8f For proto_tree_add_item(..., proto_xxx, ...)use ENC_NA as the encoding arg.
Also: remove trailing whitespace for a number of files.

svn path=/trunk/; revision=39503
2011-10-21 02:10:19 +00:00
Jeff Morriss b21b495f9f Don't generate the conformance file for exported types when building the
dissector; instead built it only when the separate target (generate_export)
is built.

Built generate_export when building "all".

This prevents the exp_*.cnf files from being regenerated each time another one
of the exp_*.cnf files (which the current dissector depends on) has changed
(despite the fact that the exported types does not depe

Also fix the CLEANFILES definition so it actually cleans things.

svn path=/trunk/; revision=39421
2011-10-14 10:22:01 +00:00
Jeff Morriss cf012d27b1 Build the ASN.1 dissectors directly into epan/dissectors (rather than building
them and then copying them over).  The "all" target to builds these dissectors
now (instead of "generate_files" and/or "copy_files").

asn2wrs's "-O" option now means "the dissector goes in this directory" (rather
than "all output goes in this directory"); it also means that the "-s" (single
output file) option is now required.

Fix things up so that it's possible to build all of the ASN.1 dissectors in
one shot.

Fix building of conformance files when doing out-of-source-tree builds.


Unfortunately "make all" in the asn1 directory always builds something--I think
because of circular depedencies.

svn path=/trunk/; revision=39333
2011-10-10 02:31:11 +00:00
Bill Meier 6142dd287b Convert 'encoding' parameter of certain proto_tree_add_item() calls in asn1/*:
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_IPv6 use ENC_NA. (This was missed in SVN #39260)

svn path=/trunk/; revision=39332
2011-10-10 01:38:20 +00:00
Bill Meier e2996ceabe Convert 'encoding' parameter of certain proto_tree_add_item() calls in asn1 dissectors:
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=39294
2011-10-06 16:50:13 +00:00
Stig Bjørlykke 84bc28bd6a Introduce "Fragment count" filter element for all protocols doing reassembly.
svn path=/trunk/; revision=35705
2011-01-30 21:01:07 +00:00
Guy Harris a8bc4a0d13 Rename the routines that handle dissector tables with unsigned integer
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
2010-12-20 05:35:29 +00:00
Jeff Morriss f2fc5d42fd Make some prefs callback functions static. (These modules don't use proto_reg_handoff_*() as their prefs callback.)
svn path=/trunk/; revision=35138
2010-12-06 22:08:48 +00:00
Stig Bjørlykke e7a8e117fc Cleanup reassembly hf entries.
svn path=/trunk/; revision=34292
2010-09-30 19:40:02 +00:00
Stig Bjørlykke f38e41b5c1 Initialize dst_ref.
svn path=/trunk/; revision=33189
2010-06-09 16:02:34 +00:00
Graeme Lunt d78f97da2e Removal of unused global variable.
svn path=/trunk/; revision=33188
2010-06-09 15:51:02 +00:00
Graeme Lunt 7a29877cc2 Removal of (hopefully!) the final warning.
svn path=/trunk/; revision=33187
2010-06-09 15:35:08 +00:00
Graeme Lunt aae93d19d4 Update for missing const for object identifier string and marking tree as unused.
svn path=/trunk/; revision=33186
2010-06-09 15:20:48 +00:00
Stig Bjørlykke 89d2aab10f Build dependency x509ce.
svn path=/trunk/; revision=33184
2010-06-09 14:59:02 +00:00
Graeme Lunt cfdd4788cf Updates to the ROS dissector to support IDMP and fix to IDMP for implicit declaration of return value of call_ros_oid_callback().
svn path=/trunk/; revision=33182
2010-06-09 14:45:38 +00:00
Graeme Lunt 1b1ee3ca3e Support for X.519 (section 9) Internet Directly Mapped Protocol (IDMP).
IDMP provides a mapping of request-response service elements directly onto the Internet TCP/IP protocol, bypassing the ACSE, Presentation, Session and Transport layers of the OSI model. It also supports the use of TLS services.

The DAP dissector has been updated to use the IDMP protocol.



svn path=/trunk/; revision=33177
2010-06-09 14:17:51 +00:00