Commit graph

78 commits

Author SHA1 Message Date
Bill Meier
f161dc95fa Fix gcc 4.6 "set but not used [-Wunused-but-set-variable]" warnings.
svn path=/trunk/; revision=38150
2011-07-21 19:10:10 +00:00
Bill Meier
e07cb22a47 Rework whitespace.
svn path=/trunk/; revision=36583
2011-04-12 14:33:30 +00:00
Bill Meier
c424bd7c83 Don't assign to a proto_item * if the value won't be used: Coverity 1158 & 1159.
svn path=/trunk/; revision=36581
2011-04-12 13:27:08 +00:00
Bill Meier
e3f4dc17a9 localtime() can return a NULL ptr.
svn path=/trunk/; revision=36580
2011-04-12 13:21:32 +00:00
Jeff Morriss
f53744b59d 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().

svn path=/trunk/; revision=35603
2011-01-21 03:00:31 +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
Stig Bjørlykke
1f2f2e918e Simply use %c for printing char.
svn path=/trunk/; revision=34789
2010-11-05 09:59:40 +00:00
Stig Bjørlykke
75c2052a01 Fixed a printf modifier to remove a warning from clang.
svn path=/trunk/; revision=34784
2010-11-05 08:04:24 +00:00
Anders Broman
7cfa27b04b Get rid of a bunch of check_col().
svn path=/trunk/; revision=32388
2010-04-05 20:04:52 +00:00
Bill Meier
1341fcd87e Fix some gcc -Wshadow warnings.
svn path=/trunk/; revision=31722
2010-01-28 21:49:30 +00:00
Kovarththanan Rajaratnam
9441e9b344 Use tvb_get_ephemeral_stringz() instead of tvb_get_stringz()
svn path=/trunk/; revision=30002
2009-09-20 08:40:01 +00:00
Bill Meier
6f87844d0a (Minor) Remove unneeded #includes.
svn path=/trunk/; revision=29492
2009-08-21 14:36:27 +00:00
Kovarththanan Rajaratnam
0a5b014cec Don't guard col_clear with col_check
svn path=/trunk/; revision=29344
2009-08-09 07:36:13 +00:00
Kovarththanan Rajaratnam
e971354a54 Don't guard col_set_str (COL_PROTOCOL) with col_check
svn path=/trunk/; revision=29340
2009-08-09 06:26:46 +00:00
Stig Bjørlykke
2bba6be84f From Kovarththanan Rajaratnam via bug 3548:
Cleanup header_field_info in plugins.

svn path=/trunk/; revision=28771
2009-06-18 23:22:10 +00:00
Jaap Keuter
56f631f9d0 Correct copyright statements.
svn path=/trunk/; revision=27480
2009-02-18 07:20:26 +00:00
Bill Meier
4aa1788a3b #include <emem.h> not req'd
svn path=/trunk/; revision=26095
2008-08-26 03:19:29 +00:00
Anders Broman
8db8e90221 Use PROTO_ITEM_SET_HIDDEN().
Fix ID marking
Add checkapi to makefiles

svn path=/trunk/; revision=25260
2008-05-09 07:07:50 +00:00
Anders Broman
db6d0b9a4c Run checkAPI in plugins dir.
svn path=/trunk/; revision=25259
2008-05-08 18:24:08 +00:00
Stig Bjørlykke
cfc7b3276c Rewrote some prohibited APIs in plugins/ (sprintf, strcpy, strcat).
svn path=/trunk/; revision=24274
2008-02-05 22:30:32 +00:00
Richard van der Hoff
1350d63c1e From Chris Maynard (bug 1852):
These packet-g*.c files all have display filter issues:

1) packet-gryphon.c: PROTOABBREV is "gryphon", but display filter fields are
prefixed with only "gryph".

2) packet-gmrp.c: PROTOABBREV is "gmrp", but display filter fields are prefixed
with "garp".

3) packet-gssapi.c: PROTOABBREV is "gss-api", but display filter fields are
prefixed with "gssapi".

4) packet-gvrp.c: PROTOABBREV is "gvrp", but display filter fields are prefixed
with "garp", most of which conflict with packet-gmrp.c's display filter fields.




svn path=/trunk/; revision=24058
2008-01-10 16:35:54 +00:00
Ronnie Sahlberg
2d1bb39121 change the signature for the get_pdu_len() function pointer passed to tcp_dissect_pdus() to also include a packet_info pointer.
there are many reasons why some protocols actually need to be able to access the pinfo structure while determining the pdu size



svn path=/trunk/; revision=19751
2006-10-31 09:29:07 +00:00
Ronnie Sahlberg
89f022b12b name change
svn path=/trunk/; revision=18197
2006-05-21 05:12:17 +00:00
Guy Harris
5199671441 Convert most other plugin dissectors to use the make-dissector-reg
scripts.

svn path=/trunk/; revision=17961
2006-04-22 20:26:16 +00:00
Ronnie Sahlberg
f331077a60 waste a couple of bytes per tcp conversation and make the tree for acked_packets (i.e. packets that have interesting tcp properties such as being retransmissions etc) hang off the per conversation tcpd struct instead of being global.
while this should improve performance by unmeasurably little it does have the sideeffect that once we finish the rewrite   tcp analysis might actually work and work well even for tcp over tcp tunnelling. 

this also means that if you include packet-tcp.h   you also need to include emem.h .




svn path=/trunk/; revision=17681
2006-03-20 10:52:53 +00:00
Jörg Mayer
30a8557868 More 'char*' -> 'const char*' changes to fix warnings.
svn path=/trunk/; revision=15015
2005-07-23 11:41:25 +00:00
Guy Harris
802859d3fd Call the "new-style init" routine for plugins a "register" routine, as
it serves the same purpose as the register routine in a built-in
dissector, and don't require all dissectors to have one, as they might
just be taps.

Get rid of the stats tree's init routine, as it's just a tap, and as it
doesn't do anything.

Update the idl2eth Python script to generate plugins with register routines.

svn path=/trunk/; revision=13644
2005-03-07 02:44:41 +00:00
Lars Roland
00273300e7 Preparations for dropping the old plugin api.
Introduce a new init routine for plugins, 
which does not take the plugin api table as an 
argument and allows etheral to distinguish 
between plugins using the old and the new api.

Update README.plugins accordingly

Change all g_warnings() in epan/plugins.c to report_failue().
On windows we do not have a log console open while
loading the plugins, because a log console cannot be opened before the prefs have been read. Thus g_warnings()
does not work for reporting problems with plugins.

svn path=/trunk/; revision=13596
2005-03-05 06:28:10 +00:00
Guy Harris
77f9af3434 Update a URL.
svn path=/trunk/; revision=12550
2004-11-21 03:01:15 +00:00
Guy Harris
bbe7f89742 Move prefs.c and prefs.h into the epan subdirectory.
svn path=/trunk/; revision=12115
2004-09-27 22:55:15 +00:00
Guy Harris
fcf529654a Ethereal has required guint64 support for a while, so there's no need to
check for it in the Gryphon plugin.

Use "tvb_get_ntoh64()" to fetch the time stamp, and format it similarly
to the way absolute date/time time stamps are formatted.

svn path=/trunk/; revision=11800
2004-08-22 02:42:27 +00:00
Gilbert Ramirez
669db206cb Move dissectors to epan/dissectors directory.
Also move ncp222.py, x11-fields, process-x11-fields.pl,
make-reg-dotc, and make-reg-dotc.py.

Adjust #include lines in files that include packet-*.h
files.

svn path=/trunk/; revision=11410
2004-07-18 18:06:47 +00:00
Guy Harris
8a8b883450 Set the svn:eol-style property on all text files to "native", so that
they have LF at the end of the line on UN*X and CR/LF on Windows;
hopefully this means that if a CR/LF version is checked in on Windows,
the CRs will be stripped so that they show up only when checked out on
Windows, not on UN*X.

svn path=/trunk/; revision=11400
2004-07-18 00:24:25 +00:00
Jörg Mayer
7180513677 Trivial signed/unsigned warning fixes
svn path=/trunk/; revision=9824
2004-01-24 02:07:05 +00:00
Ulf Lamping
0d9679de8d removed some MSVC warnings (level 3)
svn path=/trunk/; revision=9561
2004-01-05 19:31:44 +00:00
Guy Harris
07697e98d3 From Masaki Chikama: fix static compilation of "generic ASN.1" and
Gryphon plugins.

svn path=/trunk/; revision=8878
2003-11-04 18:38:53 +00:00
Jörg Mayer
7a593c3d3c check in the following comment:
/* XXX This code is neither Endianess independent, nor will it work
     * on platforms that do not support the *optional* guin64 type
     */

svn path=/trunk/; revision=8626
2003-10-06 15:41:53 +00:00
Jörg Mayer
e5a9846c56 Fix 4 warnings in case of strict-aliasing by declaring timestamp as time_t
instead of int.

svn path=/trunk/; revision=8618
2003-10-06 02:01:47 +00:00
Guy Harris
8b34a7f4ba From Steve Limkemann:
Added two new "well known destinations": SD_IOPWR AND SD_UTIL.

    Added logic to dissect the CMD_SET_TIME command.

    Added an alterate destination for the CMD_PGM_START command.

    Added logic to dissect the CMD_SCHED_MSG_REPLACE command.

    Added logic to dissect the CMD_USDT_REGISTER command.

    Added logic to dissect the CMD_USDT_SET_FUNCTIONAL command.

    Added logic to dissect the following commands
       CMD_IOPWR_GETINP
       CMD_IOPWR_GETLATCH
       CMD_IOPWR_CLRLATCH
       CMD_IOPWR_GETOUT
       CMD_IOPWR_SETOUT
       CMD_IOPWR_SETBIT
       CMD_IOPWR_CLRBIT
       CMD_IOPWR_GETPOWER
       CMD_UTIL_SET_INIT_STRATEGY
       CMD_UTIL_GET_INIT_STRATEGY

    Added the ability to recongnize more IOCTLS.  (For the SJA1000 driver, LIN
        and power drivers.)

    Added the ability to recognize more card types.

    Added dissection of more fields for CMD_SCHED_TX command.

    Bug fixes and general updating.

svn path=/trunk/; revision=8607
2003-10-03 23:22:12 +00:00
Guy Harris
95f648cd9e Use the right value_string table for the filter mode in
CMD_CARD_SET_FILTER_MODE and CMD_CARD_GET_FILTER_MODE.

svn path=/trunk/; revision=8437
2003-09-09 19:22:05 +00:00
Jörg Mayer
10b364c56d - Make --enable-static work again (configure.in, Makefile.am)
- get rid of ...-static.o files in the build process (now done via
  config.h instead of compiler flag)
- make packet-rtnet link statically (remove one unused function, rename
  another one)

svn path=/trunk/; revision=8389
2003-09-05 07:44:50 +00:00
Guy Harris
ee97ce3196 Add new routines:
tvb_get_string() - takes a tvbuff, an offset, and a length as
	arguments, allocates a buffer big enough to hold a string with
	the specified number of bytes plus an added null terminator
	(i.e., length+1), copies the specified number of bytes from the
	tvbuff, at the specified offset, to that buffer and puts in a
	null terminator, and returns a pointer to that buffer (or throws
	an exception before allocating the buffer if that many bytes
	aren't available in the tvbuff);

	tvb_get_stringz() - takes a tvbuff, an offset, and a pointer to
	a "gint" as arguments, gets the size of the null-terminated
	string starting at the specified offset in the tvbuff (throwing
	an exception if the null terminator isn't found), allocates a
	buffer big enough to hold that string, copies the string to that
	buffer, and returns a pointer to that buffer and stores the
	length of the string (including the terminating null) in the
	variable pointed to by the "gint" pointer.

Replace many pieces of code allocating a buffer and copying a string
with calls to "tvb_get_string()" (for one thing, "tvb_get_string()"
doesn't require you to remember that the argument to
"tvb_get_nstringz0()" is the size of the buffer into which you're
copying the string, which might be the length of the string to be copied
*plus 1*).

Don't use fixed-length buffers for null-terminated strings (even if the
code that generates those packets has a #define to limit the length of
the string).  Use "tvb_get_stringz()", instead.

In some cases where a value is fetched but is only used to pass an
argument to a "proto_tree_add_XXX" routine, use "proto_tree_add_item()"
instead.

svn path=/trunk/; revision=7859
2003-06-12 08:33:32 +00:00
Gerald Combs
0b9bbbbdb6 Modify tvb_get_nstringz*() to behave more like snprintf(). Make changes
where necessary to reflect the new behavior.

svn path=/trunk/; revision=7607
2003-04-30 02:35:28 +00:00
Jörg Mayer
48be4e530d Removed trailing whitespaces from .h and .c files using the
winapi_cleanup tool written by Patrik Stridvall for the wine
project.

svn path=/trunk/; revision=6116
2002-08-28 20:41:00 +00:00
Jörg Mayer
7e4e31f94c Replace the types from sys/types.h and netinet/in.h by their glib.h
equivalents for the plugins/ directory.

svn path=/trunk/; revision=5929
2002-08-02 22:04:22 +00:00
Guy Harris
eb70c97a9b Make a "tcp_dissect_pdus()" with the standard loop for a TCP segment,
extracting PDUs from it and possibly doing reassembly.  Make the COPS,
DNS, DSI, Gryphon, and SCCP dissectors use it.

Add "set_actual_length()", "tcp_dissect_pdus()",
"decode_boolean_bitfield()", "decode_numeric_bitfield()", and
"decode_enumerated_bitfield()" to the list of routines available to
dissectors on platforms where routines in the main program aren't
available to dynamically-loaded code.

Declare routines in "to_str.h" as "extern"; as I remember, that's
necessary to allow the "decode_XXX_bitfield()" routines declared therein
to be made available to plugins as per the above.

Note that new exported routines should be added to the end of the table
if that's the only change being made to the table.

Create a new "plugin_api_decls.h" header file, used to declare both the
"p_" variables and the "p_" structure members in the routine-exporting
mechanism; this reduces the number of places you have to change to
change the list of exported routines.

svn path=/trunk/; revision=5394
2002-05-05 00:16:38 +00:00
Guy Harris
09f812b7c2 Get rid of unused arguments.
svn path=/trunk/; revision=5325
2002-05-01 06:56:16 +00:00
Guy Harris
2793de4cf9 Make more use of "val_to_str()" and "decode_boolean_bitfield()".
svn path=/trunk/; revision=5324
2002-05-01 06:46:52 +00:00
Guy Harris
66bbf2411a Use the bitfield decoding routines for bitfields.
Show the value of flag fields in the top-level item for the field.

Use "%u", not "%d", to display unsigned quantities.

svn path=/trunk/; revision=5323
2002-05-01 06:15:44 +00:00
Guy Harris
573530d0e2 Add desegmentation support.
As a result of that, we now construct a tvbuff for each Gryphon message;
this obviates the need to pass a message length to the dissectors for
each message type.

svn path=/trunk/; revision=5321
2002-05-01 05:24:42 +00:00