Commit Graph

355 Commits

Author SHA1 Message Date
Stephen Fisher fa57c8fc44 Fix some Solaris buildbot warnings
svn path=/trunk/; revision=21423
2007-04-13 23:32:21 +00:00
Richard van der Hoff 794b272985 From Sake Blok:
wireshark SHOULD be able to filter on multiple hf's with the
same field-name, BUT there is a little bug in the code. I have pinpointed it to
the following in epan/dfilter/dfvm.c:
...
It actually loops through all the hf's with the same name, but only checks
against the original (first) hf.


svn path=/trunk/; revision=21372
2007-04-10 18:31:36 +00:00
Stephen Fisher 6625e7503f Fix warnings on Linux/gcc 4.1.1
svn path=/trunk/; revision=21330
2007-04-03 21:17:13 +00:00
Luis Ontanon 9709011a9b Implement a proposal from Elefterios Gabriel for SCCP:
Add a table of DPCs and SSNs that allow to override the protocol that would be choosen
so that the same SSN can use two different protocols in two different DPCs.

I did not believe it someone could have done it, then I saw the captures...


svn path=/trunk/; revision=21321
2007-04-03 19:08:00 +00:00
Richard van der Hoff 8177d0f4a9 disable generation of unput to avoid a compiler warning.
svn path=/trunk/; revision=21320
2007-04-03 18:41:24 +00:00
Sebastien Tandel c136927420 revert back (void*) -> (void**) which will stop free-warning compilation with
gcc-4.1.2


svn path=/trunk/; revision=21282
2007-03-30 12:04:40 +00:00
Sebastien Tandel 8405f21ea2 strict aliasing warnings fix : replace (void**) by (void*)
svn path=/trunk/; revision=21274
2007-03-29 22:58:02 +00:00
Stephen Fisher 62f88a4a04 From Sebastien Tandel:
(Temporarily disable the warnings as errors default on Unix to get
to get the buildbots and people with gcc40 going again until those
additional warnings gcc40 generates can be fixed-I'm working on it
ASAP)

   Patch for configure.in which disables by default the treatment of
warnings as errors.
It can be enabled with './configure --with-warnings-as-errors'.
The macro will test first if GCC is present. If it's the case,
HAVE_WARNINGS_AS_ERRORS is defined. All the USING_GCC have been replaced
by HAVE_WARNINGS_AS_ERRORS.
With this switch, people won't suffer from unexpected warnings when
downloading svn sources during the transition time ;)


svn path=/trunk/; revision=21153
2007-03-23 17:49:59 +00:00
Ulf Lamping 3dfa722849 fix warnings of (generated) grammar.c
svn path=/trunk/; revision=21146
2007-03-23 03:45:18 +00:00
Ulf Lamping 9977de732f disable "warning as error" for now so the buildbot runs again, grammar.c still makes trouble :-(
svn path=/trunk/; revision=21145
2007-03-23 02:27:14 +00:00
Stephen Fisher 13ae3f5dfc Add -Werror for gcc back to epan/dfilter directory
svn path=/trunk/; revision=21136
2007-03-22 23:49:06 +00:00
Stephen Fisher 395bb9b379 Remove -Werror under gcc temporarily until a warning can be fixed
in grammar.c


svn path=/trunk/; revision=21130
2007-03-22 23:28:58 +00:00
Stephen Fisher 84c5becd89 Add -Werror for gcc to a few more directories and fix a few warnings
svn path=/trunk/; revision=21129
2007-03-22 23:24:13 +00:00
Ulf Lamping dcb1e1bdfd add "treat warnings as errors" flag(s)
svn path=/trunk/; revision=21125
2007-03-22 22:54:00 +00:00
Bill Meier 04d29de81d Fix Windows Makefiles so clean removes all pdb files (PDB_FILE no longer defined)
svn path=/trunk/; revision=21052
2007-03-18 15:36:22 +00:00
Luis Ontanon b26c1c4ca2 Add a description of UAT fields, and have it as a tooltip in the New/Edit Dialog.
svn path=/trunk/; revision=20797
2007-02-12 19:57:41 +00:00
Luis Ontanon 7c57c05ed5 * Add a Submenu (/Views/User Tables) where UATs can be accessed.
* Remove macros_dlg, the DFMacros UAT goes in the menu with all the rest
* in packet-user_encap.c WTAP_ENCAP=XXX has become useless information for the user leave just the DLT#



svn path=/trunk/; revision=20753
2007-02-09 03:11:14 +00:00
Luis Ontanon 2006fac500 * Add a category param to the uat.
* UATify SNMP Users


svn path=/trunk/; revision=20736
2007-02-07 14:54:35 +00:00
Luis Ontanon 2b22bcb1a3 * Add a help facility for UATs
* export help_topic_html()


svn path=/trunk/; revision=20717
2007-02-05 05:06:21 +00:00
Luis Ontanon d70a58f881 second iteration:
* fields of an uat table now are passed using an array of uat_filed_t
* field callbacks take two more userdata arguments
* add some macros to define uat field callbacks.
* uats can be registered as preferences for a specific protocol
   - the preference widget is a button that opens the uat's window
* dfilter-macro => reflect changes to API


svn path=/trunk/; revision=20695
2007-02-03 14:25:02 +00:00
Jeff Morriss 9811341b9f dfilter-macro.c is in SVN, it should not be in MAINTAINERCLEANFILES (else we have to re-fetch the file from svn each time we make maintainer-clean
svn path=/trunk/; revision=20641
2007-01-31 03:30:49 +00:00
Luis Ontanon 7d352fa51b some cleanup and pset of svn:ignore
svn path=/trunk/; revision=20603
2007-01-29 14:11:44 +00:00
Luis Ontanon 6a4a51ffec The UAT gui starts to work
set the macros_dlg to use it

add a dummy dfilter_macros file to supress a warning at startup


svn path=/trunk/; revision=20598
2007-01-29 10:23:38 +00:00
Luis Ontanon 8e849698a3 Drop dfilter_macro_load.l as dfilter-macro now uses UAT
svn path=/trunk/; revision=20596
2007-01-29 04:57:23 +00:00
Anders Broman 2749bc7c80 Add dfilter_macro_load.c to the distclean target to rebuild it if building from a tarball.
svn path=/trunk/; revision=20524
2007-01-22 21:32:17 +00:00
Guy Harris 21b8d9cd90 Set the appropriate keywords.
svn path=/trunk/; revision=20517
2007-01-21 22:32:37 +00:00
Guy Harris 30bbd38b18 Set the appropriate keywords.
Add a newline at the end of the file.

svn path=/trunk/; revision=20516
2007-01-21 22:28:54 +00:00
Luis Ontanon 9a2c1e35a6 fix the dfilter_macro_load.c rule
svn path=/trunk/; revision=20482
2007-01-18 15:32:01 +00:00
Luis Ontanon 2b571075d7 I actually forgot that dfilter_macro_expand.l was not used
svn path=/trunk/; revision=20481
2007-01-18 15:00:39 +00:00
Luis Ontanon c09a6093a3 The forgotten file strikes back...
svn path=/trunk/; revision=20480
2007-01-18 14:56:03 +00:00
Jaap Keuter 820dad2816 Trying to fix the build on Ubuntu-5.10-x86 buildbot again.
svn path=/trunk/; revision=20473
2007-01-18 11:28:47 +00:00
Martin Mathieson 997e5415f9 Add separate union entries to fvalue.value for signed and unsigned
32-bit numbers.  Separate signed and unsigned accessors have been
added and used where appropriate.

Definitely not for 0.99.5.

svn path=/trunk/; revision=20472
2007-01-18 11:02:26 +00:00
Luis Ontanon 80dcfb23d2 display filter macros.
NOT to be copied over to release 0.99.5


svn path=/trunk/; revision=20467
2007-01-18 02:54:56 +00:00
Luis Ontanon 22004e8190 productions of non-terminal "sentence" do not generate any value. Avoid a destructor being called for them.
see http://www.sqlite.org/cvstrac/tktview?tn=2172


svn path=/trunk/; revision=20460
2007-01-17 16:41:22 +00:00
Ronnie Sahlberg 244956f843 use an ep allocated temporary string when creating the string for a FT_STRING value and call fvalue_set with already_copied==FALSE so the string gets allocated in ftype-string.c instead
svn path=/trunk/; revision=20239
2006-12-29 22:55:13 +00:00
Ronnie Sahlberg 8fc740a53e hmm
best to revert this for a while.



revert all changes from previous patch.



svn path=/trunk/; revision=20195
2006-12-22 09:01:12 +00:00
Ronnie Sahlberg 8433f6d589 change some slab allocated memory into ep/emem allocated structures instead.
this primarily removes code and simplifies (==eliminates) the need to track the data that is allocated and should potentially be slightly faster than a slab allocator.
however these functions are called A LOT so there might be a performance hit when using emem with full debugging canary values and all the bells and whistles activated.


this change also makes any future attempt to parallellize dissection of frames easier if we just make the ep allocator allocate from a threads specific ep pool.
(something we would have to do anyway to make ep allocations multithreaded)



this works in all my tests so far but needs more test coverage.



svn path=/trunk/; revision=20194
2006-12-22 08:35:43 +00:00
Bill Meier e4a99fc4dd Add a few missing /$(MAKEFLAGS)
svn path=/trunk/; revision=20046
2006-12-05 12:36:06 +00:00
Guy Harris 9b549043d2 Add $(EXEXT) after references to the Lemon executable.
svn path=/trunk/; revision=19785
2006-11-03 18:39:03 +00:00
Guy Harris e773247138 If we have to use Lex or Flex, check whether we found it, first, and if
we didn't, report an error and fail, rather than blithely executing
commands with the command a blank string.

svn path=/trunk/; revision=19602
2006-10-19 07:45:10 +00:00
Gerald Combs f7e38bd5e6 Change ETH_VAR_IMPORT to WS_VAR_IMPORT. Try to fix a duplicate variable
definition in the Catapult DCT2000 code.

svn path=/trunk/; revision=18524
2006-06-20 18:30:54 +00:00
Ronnie Sahlberg 9b67217fb5 ethereal to wireshark changes
svn path=/trunk/; revision=18499
2006-06-17 12:04:30 +00:00
Gerald Combs eb71f7fb96 Rename the main executable to "wireshark", along with more conversions:
ethereal.com -> wireshark.org
  mailing lists and addresses
  ETHEREAL -> WIRESHARK
  Man pages
  Automake/Autoconf names


svn path=/trunk/; revision=18271
2006-05-31 19:12:15 +00:00
Gerald Combs b15974d094 libethereal -> libwireshark. idl2eth -> idl2wrs. There are a _lot_ of
changes here.  It compiles OK on OS X, but hasn't been tested anywhere else.

svn path=/trunk/; revision=18260
2006-05-31 00:23:01 +00:00
Anders Broman 996d4db495 Ethereal->Wireshark
svn path=/trunk/; revision=18234
2006-05-28 19:49:07 +00:00
Ronnie Sahlberg f0b33a4789 ethereal->wireshark updates
svn path=/trunk/; revision=18206
2006-05-22 08:14:01 +00:00
Ronnie Sahlberg 89f022b12b name change
svn path=/trunk/; revision=18197
2006-05-21 05:12:17 +00:00
Anders Broman 0fdfab9fc6 MSVC is picky about assignments in declarations.
svn path=/trunk/; revision=18074
2006-05-02 19:07:38 +00:00
Gilbert Ramirez e3899ed4a4 Add infrastructure for display filter functions.
Add upper() and lower() display filter functions for string fields.

svn path=/trunk/; revision=18071
2006-05-02 14:26:17 +00:00
Tomas Kukosa dcae7d303f new field type FT_OID for OBJECT IDENTIFIERs
svn path=/trunk/; revision=16652
2005-12-02 13:16:58 +00:00
Guy Harris 1ed8d400ff Dump the range when printing an MK_RANGE operator.
svn path=/trunk/; revision=16370
2005-10-31 03:33:14 +00:00
Guy Harris cbce856e9e When printing the code for a display filter:
print register numbers as unsigned (they're guint32);

	when printing a PUT_FVALUE instruction, show the value as well
	as the type of the value.

That requires that a bunch of types get to_repr methods; add them for
PCRE (FTREPR_DFILTER-only - show the regular expression as text),
tvbuffs (FTREPR_DFILTER_only - show the data as a hex string), integral
types, string types other than FT_STRING, and FT_IPv6.

That means we can use fvalue_to_string_repr() for FT_IPXNET and FT_IPv6
in proto_construct_dfilter_string(), and that we don't need to handle
integer and floating types specially in MATE.

Fix some problems with the PCRE execution code for tvbuff types.

svn path=/trunk/; revision=16369
2005-10-31 02:42:22 +00:00
Jörg Mayer 96adc5f4a1 - Include the .h files in their .c files.
- Remove epan/dissectors/packet-sna.h, it isn't used anywhere.

svn path=/trunk/; revision=15475
2005-08-20 16:19:22 +00:00
Ulf Lamping 994496a184 several times replacing:
sprintf -> g_snprintf
snprintf -> g_snprintf
vsnprintf -> g_vsnprintf
strdup -> g_strdup

svn path=/trunk/; revision=15412
2005-08-18 19:31:15 +00:00
Ulf Lamping 0dc9fb3d4a various code cleanup:
-use g_snprintf instead of sprintf and snprintf
-use g_strdup_printf where appropriate
-remove #include "snprintf.h" (as only g_snprintf should be used)
-replace some more alloc/realloc/calloc/free with their glib pendants

svn path=/trunk/; revision=15264
2005-08-08 18:50:39 +00:00
Jörg Mayer 8433afe23b Albert Chin:
Don't include epan/gdebug.h

Now that epan/gdebug.h is unused: remove it

svn path=/trunk/; revision=15209
2005-08-04 21:09:08 +00:00
Gerald Combs c214405e41 Clean up after ourselves so that we pass "distcheck" again.
svn path=/trunk/; revision=15194
2005-08-02 15:25:41 +00:00
Jörg Mayer 4f693dfae2 Some warning fixes for "no previous declaration"
Remove svn:executable
Add svn:eol-style native
Add svn:keywords Id


svn path=/trunk/; revision=15179
2005-08-02 05:39:45 +00:00
Gerald Combs 6bcaec9a12 Make sure "lemon" exists before we try to use it. This can happen if we
run "make dist" before running "make".

svn path=/trunk/; revision=15167
2005-08-01 21:09:34 +00:00
Jörg Mayer c5ab5374c2 Some more 'char*' -> 'const char*' changes
svn path=/trunk/; revision=15013
2005-07-23 06:53:59 +00:00
Jörg Mayer cd0744efd1 Add includes to fix warnings of type
gencode.c:383: warning: no previous declaration for
                        'dfw_interesting_fields'

svn path=/trunk/; revision=15012
2005-07-23 06:51:57 +00:00
Jörg Mayer fd9291e9c6 Move declaration of sttype_register_* functions from
syntax-tree.c to syntax-tree.h.

This fixes some warning of type
sttype-integer.c:33: warning: no previous declaration for
                                'sttype_register_integer'


svn path=/trunk/; revision=15011
2005-07-23 06:49:07 +00:00
Jörg Mayer 5b442f2279 After doing "make maintainer-clean", "svn status --no-ignore | grep ^I"
returned quite a list of files. Add them to MAINTAINERCLEANFILES.

Whitespace changes (replace multiple spaces by TABs, in a few cases this
needed to be done at the beginning of Makefile lines.


svn path=/trunk/; revision=14891
2005-07-10 08:04:27 +00:00
Tomas Kukosa bab34b522b new field type FT_GUID
svn path=/trunk/; revision=14845
2005-07-04 13:04:53 +00:00
Guy Harris e361585aef The "new" routine for STTYPE_STRING and STTYPE_UNPARSED does a
"strdup()" on the argument, so we don't need to do that ourselves (and,
in fact, as we're doing it ourselves but not freeing the result, we leak
memory).

svn path=/trunk/; revision=13892
2005-03-24 05:27:03 +00:00
Guy Harris 6616a3770c Make the "maintainer-clean" rules get rid of some additional generated
files.  Do this with GENERATED_HEADER_FILES, GENERATED_C_FILES, and
GENERATED_FILES macros in Makefile.common files, along the lines of what
wiretap/Makefile.common has.

Clean up "*~" files with "make clean" rather than only "make distclean"
in some additional places.

Add "maintainer-clean" rules to the Makefile.nmake files, paralelling
the ones in the automake-generated Makefile.in files, using the
GENERATED_FILES macros from Makefile.common files.  In some cases, move
the cleanup of files from "make distclean" to "make maintainer-clean",
and in other cases, put in a comment indicating why we're not doing that
(because some files that are distributed in the source tarballs, namely
Flex output, were built with a UN*X Flex and won't compile on Windows,
so we get rid of them with "make distclean" so you can clean up stuff
that *has* to be re-generated for Windows).

Clean up some *CLEANFILES definitions - get rid of ones that no longer
apply as files were moved or that add to the definition a name that's
already there.

svn path=/trunk/; revision=13402
2005-02-14 20:33:57 +00:00
Jörg Mayer fd24ad7d92 .cvsignore is dead
it has been replaced by
svn proplist -v <dir/file>
and
svn propedit <dir/file>

svn path=/trunk/; revision=11422
2004-07-18 23:44:34 +00:00
Jörg Mayer 56c759212f Add epan/dissectors/.cvsignore
Add tags and TAGS to all .cvsignore files

svn path=/trunk/; revision=11419
2004-07-18 22:51:50 +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
Guy Harris 12fddb1280 G_MAXINT32, G_MININT32, and G_MAXUINT32 aren't defined by GLib 1.2[.x],
so we have to define them ourselves if they're not defined.

svn path=/trunk/; revision=11384
2004-07-17 08:45:10 +00:00
Guy Harris c27d80c9ad I'm not sure "strtol()" and "strtoul()" are guaranteed to clear "errno"
on success, so we clear it before calling them.

Assign the value of "strtol()" to a "long" and assign the value of
"strtoul()" to an "unsigned long", as those are the return types for
those functions - "gint32" and "guint32" might not be large enough for
the return value on an LP64 platform.

Check for errno being EINVAL, as that can happen if the number isn't
valid.

Before assigning the value returned by "strtol()" or "strtoul()" to the
final destination, check whether it's in the right range for that
destination.

svn path=/trunk/; revision=11382
2004-07-16 23:35:46 +00:00
Guy Harris 7737b1382d From Laurent Rabret: replace "lib" with "link /lib"; "lib" is just a
wrapper around "link /lib", and not all Microsoft C compiler
distributions provide "lib".

svn path=/trunk/; revision=11242
2004-06-26 02:16:16 +00:00
Guy Harris 7e128ddeb3 Note that the reason why there's parser state that stays around after
the parse finishes (forcing us to feed the parser an end-of-input even
after an error) is that we don't create a new parser object when we
start a new parse and don't destroy it when the parse finishes.

svn path=/trunk/; revision=11156
2004-06-16 07:33:46 +00:00
Guy Harris 95391789a3 From Graeme Hewson:
Add a #define to enable parser tracing.

	Clean up parser state when finished parsing, even if we stopped
	parsing due to a syntax error, so that there's nothing left
	around to screw up the next parse.

svn path=/trunk/; revision=11152
2004-06-15 10:38:14 +00:00
Guy Harris 6ce3f952e0 From Graeme Hewson: fix a debug message.
svn path=/trunk/; revision=11151
2004-06-15 10:16:10 +00:00
Guy Harris e1e690ff3a From Graeme Hewson:
Use gint32 instead of guint32 for node data.

Fix up some other signed-vs-unsigned issues in the display filter
parser and lexical analyzer.

svn path=/trunk/; revision=11085
2004-06-03 07:36:25 +00:00
Guy Harris 53cb6eeb54 From Graeme Hewson:
Check slice lengths as well as offsets.  Disallow negative/zero
     lengths.

     Range on RHS of display filter expression wasn't being checked in
     every case.

svn path=/trunk/; revision=11083
2004-06-03 07:33:46 +00:00
Guy Harris c02072be2c From Graeme Hewson:
Use gint32 instead of guint32 and strtol() instead of strtoul()
     for signed integers.

     Pathological slice specifications could cause Flex default rule
     to be invoked, echoing characters to stdout.
     Example: frame[0foo]==1

svn path=/trunk/; revision=11082
2004-06-03 07:17:24 +00:00
Guy Harris 15af0f656f From Lars Roland: add support for building a libethereal.dll with MSVC:
add a config.nmake option to control whether to build
	libethereal.dll or not;

	remove "./wiretap" from PATH to prevent problems due to
	wrongly-loaded files;

	build dissector.lib with MSVC;

	move "print.c" and "ps.c" to the dissector helpers, as "print.c"
	imports variables from packet-frame.c and packet-data.c, which
	are in libethereal;

	move "g711.c" out of the dissector helpers, as they're used only
	by Ethereal in a tap, not in Tethereal or in any dissector;

	add a .def file for libethereal;

	arrange to declare global variables exported from libethereal
	with "__declspec(dllimport)" when building programs that import
	those variables;

	update the NSIS installer.

Make the "configure" script define ETH_VAR_IMPORT as "extern".

svn path=/trunk/; revision=10834
2004-05-09 10:03:41 +00:00
Guy Harris af3885bcf1 From Graeme Hewson:
Error if protocol specified on RHS of display filter comparison.
     If user specified "fc", they probably intended a byte value rather than
     the fibre channel protocol; fix makes mistake clear.

     Fix assertion failure with range on LHS of display filter comparison
     and field on RHS.

svn path=/trunk/; revision=10829
2004-05-09 08:17:32 +00:00
Guy Harris 4befb390d1 From Graeme Hewson: get rid of unnecessary check (it's necessary for
octal, as the maximum of 3 octal digits can be more than 0377, but not
necessary for hex, as the maximum of 2 hex digits can't be more than
0xff).

svn path=/trunk/; revision=10827
2004-05-08 22:03:43 +00:00
Olivier Biot 9ee716dfb5 Add the valuable input from Gilbert Ramirez in reply to questions I had when
thinking at implemeting an "in" display filter operation.

svn path=/trunk/; revision=10820
2004-05-08 11:40:29 +00:00
Olivier Biot 388aaadcb7 Get rid of epan/config.h.win32.
Fix a missing ZLIB_CFLAGS in epan/Makefile.nmake.

svn path=/trunk/; revision=10807
2004-05-06 20:48:36 +00:00
Ulf Lamping 37fc156dc6 removed unused things
svn path=/trunk/; revision=10740
2004-04-30 06:56:15 +00:00
Gilbert Ramirez f31ddecf91 Add support for flex 2.5.31.
svn path=/trunk/; revision=10684
2004-04-25 04:53:42 +00:00
Olivier Biot eee9dc26ac Fix the CLEANFILES target so both static and shared libraries are cleaned.
svn path=/trunk/; revision=10475
2004-03-24 21:27:44 +00:00
Jörg Mayer b7803c8fc6 Make libethereal and libwiretap shared libs.
svn path=/trunk/; revision=10368
2004-03-13 10:15:36 +00:00
Olivier Biot 1791f84919 First attempt at "bitwise AND" display filter operator.
Document how a display operator can be added.

svn path=/trunk/; revision=10250
2004-02-27 12:00:32 +00:00
Gilbert Ramirez 5cfc41fd88 If the LHS is a STRING or UNPARSED string, and the RHS is a FIELD,
then make sure that the FIELD can participate in the relation that
is expressed in the display filter.

Note that tvbuff's *should* be able to participate in == comparisons, etc.,
but those functions need to be added to ftype-tvbuff.c first.

svn path=/trunk/; revision=10175
2004-02-22 03:04:41 +00:00
Guy Harris 60096bfad9 Use -1 rather than 0 as the SCAN_FAILED return value from the lexical
analyzer on errors, and check for SCAN_FAILED from the lexical analyzer
and abort the parse if we see it; 0 means "end of input", and we want to
distinguish errors from end-of-input, so that we can report errors as
such.

If we see end-of-input while parsing a double-quoted string, report the
error (missing closing quote).

Fix the URL for the "Start conditions" section of the Flex manual.

svn path=/trunk/; revision=10044
2004-02-11 22:52:54 +00:00
Guy Harris b9b4a23834 Make an existence test of an arbitrary entity syntactically valid, but
check, in the semantics-checking phase, that we're testing a field, so
that we can give a better message than, for example, "Unexpected end of
filter string." for an existence test with a misspelled field name.

svn path=/trunk/; revision=10043
2004-02-11 21:20:52 +00:00
Jörg Mayer a02d03c089 Forgot *.la
svn path=/trunk/; revision=10012
2004-02-09 17:23:59 +00:00
Jörg Mayer 96ad35f100 Ignore shared dll stuff
svn path=/trunk/; revision=10011
2004-02-09 16:49:00 +00:00
Ulf Lamping cd85423556 epan don't need GTK_CFLAGS as GTK isn't used,
GLIB_CFLAGS are just enough

svn path=/trunk/; revision=9779
2004-01-22 19:27:59 +00:00
Jörg Mayer fac68ec7a8 Warning fix when compiling with -strict-prototypes
../../epan/dfilter/drange.h:62: warning: function declaration isn't a prototype
../../epan/dfilter/drange.h:83: warning: function declaration isn't a prototype

svn path=/trunk/; revision=9719
2004-01-18 15:34:23 +00:00
Gilbert Ramirez 4f1c2830f1 Don't assert that quoted_string be NULL; it can be non-NULL if
the previous dfilter failed to compile because a closing double-quote
was not provided. Handle that case.

svn path=/trunk/; revision=9585
2004-01-07 05:24:04 +00:00
Olivier Biot ef48504769 Add support of contains and matches operators on slices.
svn path=/trunk/; revision=9511
2004-01-01 16:59:20 +00:00
Guy Harris 331b8b5a8b Add, for \xXX, the same sanity check (that 0xXX fits in a single byte)
that we have for \0OOO.

svn path=/trunk/; revision=9396
2003-12-21 21:04:56 +00:00
Ulf Lamping dea93d2bee removed some MSVC warnings (added type casts)
svn path=/trunk/; revision=9370
2003-12-20 23:50:50 +00:00
Gilbert Ramirez 1cbfbd022b Print values for ANY_MATCHES and ANY_CONTAINS so that the dftest
executable works properly.

svn path=/trunk/; revision=9353
2003-12-19 04:40:24 +00:00
Olivier Biot ca6b915862 PCRE support requires $(PCRE_CFLAGS) in CFLAGS.
svn path=/trunk/; revision=9237
2003-12-10 22:38:48 +00:00
Olivier Biot 0f18533b75 Internal PCRE field type for efficient RE parsing in dfilters.
svn path=/trunk/; revision=9224
2003-12-09 23:02:40 +00:00
Gilbert Ramirez 55a6251e7c From Olivier Biot
New "matches" operater in display filter language. Uses PCRE.

If a "matches" operator is found in a dfilter
while libpcre has not been used to build the binary, then an
exception is thrown after using dfilter_fail() to set an apporporiate
error message.

svn path=/trunk/; revision=9182
2003-12-06 16:35:20 +00:00
Guy Harris bd9f96738c From Didier Gautheron: put an "fvalue_t" structure into a "field_info"
structure, rather than separately allocating "fvalue_t"s and having the
"field_info" structure point to them - this appears to speed up protocol
tree construction a bit.

svn path=/trunk/; revision=9146
2003-12-02 21:15:49 +00:00
Ronnie Sahlberg 4f84e65c50 fvalue_free() is one of the most called functions.
This function is also very small, so small that teh overhead for the actual function call and return is likely to be a significant part
of its execution time.

change it into a macro and make it thus slightly faster by eliminating the function call overhead.

svn path=/trunk/; revision=9083
2003-11-25 13:20:36 +00:00
Guy Harris 4b1fda78b9 Allow + and , in unparsed strings, so that you can use + as a sign in a
number or exponent and so that floating-point numbers can use , as well
as . as a decimal point.

svn path=/trunk/; revision=8791
2003-10-27 22:45:47 +00:00
Guy Harris 02e1d2680a Give every Makefile.nmake file a "distclean" rule, and have "distclean"
recurse into subdirectories doing "nmake -f Makefile.nmake distclean".

Have "nmake -f Makefile.nmake clean" not remove stuff that "make clean"
doesn't remove (such as Flex/Bison output and config.h files) - and have
"nmake -f Makefile.nmake distclean" remove stuff that "make distclean"
removes, including "tethereal-tap-register.c" and
"ethereal-tap-register.c".

svn path=/trunk/; revision=8672
2003-10-10 21:31:53 +00:00
Gilbert Ramirez 52338a3baf Add a "contains" operator for byte-strings, strings, and tvbuffs (protocols).
The search uses a naive approach; more work is required to add a
Boyer-Moore Search algorithm.

svn path=/trunk/; revision=8280
2003-08-27 15:23:11 +00:00
Gilbert Ramirez 086774b71f Add to the fundamental types passed between the scanner and the parser.
Besides "STRING", there is now "UNPARSED_STRING", where the distinction
is that "STRING" was a double-quoted string and "UNPARSED_STRING" is just
a sequence of characters that the scanner didn't know how to scan/parse,
so it's up to the Ftype to parse it.

This gives us more flexibility and prepares the dfilter parsing engine
for the upcoming addition of the "contains" operator.

In the process of doing this, I also re-did the double-quoted string
support in the scanner, so that instead of the naively-simple support we
used to have, double-quoted strings now can have embedded dobule-quotes,
embedded octal sequences, and embedded hexadecimal sequences:
    "\""    embedded double-quote
    "\110"  embedded octal
    "\x48"  embedded hex

Enhance the dfilter unit test script to be able to run a single collection
of tests instead of having to run all of them all the time.

svn path=/trunk/; revision=8083
2003-07-25 03:44:05 +00:00
Guy Harris 71424053cd Define GLIB_CFLAGS and GTK_CFLAGS variables in config.nmake (based on
variables the user configures - the user isn't expected to change
GLIB_CFLAGS or GTK_CFLAGS, and there's a comment nothing that users
shouldn't have to do so), which contain the appropriate "/I" flags for
building stuff that requires only GLib, and stuff that required GTK+ and
GLib, respectively, and use those macros in the Makefile.nmake files.

svn path=/trunk/; revision=7884
2003-06-14 20:36:04 +00:00
Guy Harris b18f9bad07 Handle the case of a comparison between two ranges (or, at least, don't
dump core if the user tries it).

svn path=/trunk/; revision=7875
2003-06-13 10:03:25 +00:00
Guy Harris 47895f5e55 Oops, a range of N-N is valid and means "the byte at offset N".
svn path=/trunk/; revision=7874
2003-06-13 07:39:26 +00:00
Guy Harris 669e203f4b Add some sanity checking for ranges, so that you can't say "foo[M-N]"
where N is less than or equal to M.

svn path=/trunk/; revision=7873
2003-06-13 07:27:46 +00:00
Guy Harris a97b83a7f4 Add a new field type FT_FRAMENUM; an FT_FRAMENUM is a 32-bit unsigned
frame number, which is always decimal.  If you select an FT_FRAMENUM
field, there are menu items that let you go to the frame whose frame
number appears in that field.

Add FT_FRAMENUM fields for the ONC RPC "matching request is in this
frame" and "matching reply is in this frame" protocol tree items.

svn path=/trunk/; revision=6802
2002-12-19 02:58:53 +00:00
Guy Harris cfa04730cf "dfilter_compile()" doesn't modify the string pointed to by its first
argument; make it a const pointer.

svn path=/trunk/; revision=6724
2002-12-02 23:28:16 +00:00
Guy Harris 7b743f7d7d Make the "strings" pointer in a "header_field_info" structure a const
pointer, and put "const" into the casts in "VALS()" and "TFS()" macros,
so we don't un-constify pointers to "value_string" arrays and
"true_false_string" structures.

Make some things "const" to keep the compiler happy with the previous
change.

svn path=/trunk/; revision=6684
2002-11-28 01:46:14 +00:00
Gilbert Ramirez ddc7b4597b Fix a problem when using the same field more than once in a display
filter, as in "ip.src == x.x.x.x || ip.src == y.y.y.y". My previous
change to allow filtering on multiple fields of the same name moved
some code into the wrong block within the function, causing the error.

svn path=/trunk/; revision=6544
2002-11-01 17:37:25 +00:00
Gilbert Ramirez 1ba73660c0 Make the dfilter code support multiple header_field_info's with
the same name (abbreviation). Thus, if multiple protocols or fields
are registered with the same name, you can still filter on the name
and have the filtering work as expected.

svn path=/trunk/; revision=6434
2002-10-16 16:32:59 +00:00
Guy Harris ac69a72fda "dfilter_prime_proto_tree()" doesn't modify the "dfilter_t" to which
it's handed a pointer, which means that "epan_dissect_prime_dfilter()"
doesn't do so either; make that argument a "const dfilter_t *" in both
cases.

svn path=/trunk/; revision=6239
2002-09-09 21:04:15 +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
Guy Harris 6e56c25c9d From Ulf Lamping: add a new FT_FLOAT type, for single-precision
floating-point numbers, and display all the significant digits for both
single-precision and double-precision floating-point numbers in the
protocol tree, not just what "%g" does (6 digits).

Put in comments explaining how the length of filter strings is computed,
and fix some of the computations.

svn path=/trunk/; revision=6081
2002-08-24 19:45:28 +00:00
Gilbert Ramirez 41cc7f0707 Merge the work in Novell_NCP_branch into the mainline code.
A little work still needs to be done on the new NCP dissector -- make
some of the COL_INFO texts more useful, handle a Unicode issue, and
modify some of the cases that use "request conditions".
But the NCP dissector as it stands is very usable now.

Note: I didn't merge in the PROTO_LENGTH_UNTIL_END macro... I wanted
to think about the various possible macros and review an email conversation
I had with Guy on the subject.

svn path=/trunk/; revision=5432
2002-05-09 23:50:34 +00:00
Guy Harris 30f02bc99c Move the code to build the balanced tree of fields into "proto_init()",
move the code from "dfilter_lookup_token()" into
"proto_registrar_get_byname()", and get rid of "dfilter_lookup_token()"
and have its callers call "proto_registrar_get_byname()" instead.

svn path=/trunk/; revision=5287
2002-04-29 07:55:32 +00:00
Gilbert Ramirez 5c75eb2df7 Add "-" (hyphen) to the pattern for field-name/non-quoted string.
svn path=/trunk/; revision=5139
2002-04-11 03:26:26 +00:00
Gilbert Ramirez bf43b509f0 Make some variables and functions static.
svn path=/trunk/; revision=5129
2002-04-08 20:11:31 +00:00
Guy Harris 52fb615708 From Joerg Mayer: get rid of "-Wno-unused" flag in some configure
scripts, and check in changes to add _U_ to some unused arguments (some
other should perhaps be used, so we leave the _U_ out so that the
warnings serve as a reminder to check those).

svn path=/trunk/; revision=4848
2002-03-02 20:51:46 +00:00
Gilbert Ramirez 2e6ded0440 Remove unused variables, structure definitions, and functions.
From Joerg Mayer.

svn path=/trunk/; revision=4827
2002-02-27 18:54:33 +00:00
Guy Harris b4971b39bf From Joerg Mayer:
In the "configure.in" files, add

		-D_U_="__attribute__((unused))"

	to CFLAGS if we're using GCC, and add

		-D_U_=""

	otherwise, so _U_ can be used to mark arguments as unused.

Add -D_U_="" arguments to the Makefile.nmake files as well, so _U_ works
with Microsoft Visual C++ as well.

Add comments and RCS IDs to the Makefile.nmake files that don't already
have them.

svn path=/trunk/; revision=4824
2002-02-27 09:42:52 +00:00
Guy Harris ee5ca25d31 Include files from the "epan" directory and subdirectories thereof with
"epan/..." pathnames, so as to avoid collisions with header files in any
of the directories in which we look (e.g., "proto.h", as some other
package has its own "proto.h" file which it installs in the top-level
include directory).

Don't add "-I" flags to search "epan", as that's no longer necessary
(and we want includes of "epan" headers to fail if the "epan/" is left
out, so that we don't re-introduce includes lacking "epan/").

svn path=/trunk/; revision=4586
2002-01-21 07:37:49 +00:00
Guy Harris cb489a92bb From Hamish Moffatt:
Additional Windows Makefile dependencies, so more stuff gets
	built as needed.

	Additional stuff cleaned up by "make clean" (well, "nmake -f
	makefile.nmake clean", anyway)

	Make PDB_FILE be "vc*.pdb", so it referes to the PDB files
	either for VC++ 5.0 or VC++ 6.0.

svn path=/trunk/; revision=4481
2002-01-04 21:20:20 +00:00
Gilbert Ramirez 791f5774d0 Provide for per-protocol-tree data in the proto_tree code.
Put a hash-table of "interesting" fields in the per-proto-tree data.
The dfilter code records which fields/protocols are "interesting" (by which
I mean, their value or existence is checked). Thus, the proto_tree routines
can create special arrays of field_info*'s that are ready for the dfilter
engine to use during a filter operation.

Also store the "proto_tree_is_visible" boolean, renamed "visible", in
the per-proto-tree data.

Move epan_dissect_t to its own header file to make #include dependencies
easier to handle.

Provide epan_dissect_fill_in_columns(), which accepts just the epan_dissect_t*
as an argument.

epan_dissect_new() needs to be followed by epan_dissect_run() for the
dissection to actually take place. Between those two calls,
epan_dissect_prime_dfilter() can be run 0, 1, or multiple times in order to
prime the empty proto_tree with the "intersesting" fields from the dfilter_t.

svn path=/trunk/; revision=4422
2001-12-18 19:09:08 +00:00
Gilbert Ramirez f7b8847a38 Plug a really bad memory leak. The GPtrArrays of field_info's that
are created for every tested field for every tested packet during
a dfilter run were not being destroyed.

svn path=/trunk/; revision=4393
2001-12-13 05:55:23 +00:00
Guy Harris 8bae6e2e3d From Motonori Shindo: add "*.pdb" to the ".cvsignore" files in
directories in which PDB files are generated and in which it wasn't
already present.

svn path=/trunk/; revision=4386
2001-12-12 01:39:44 +00:00
Guy Harris 39362af814 From Motonori Shindo:
fix a bogus batch mode inference rule of make, so that
	"vc60.pdb" files are created in the proper directory;

	delete ".pdb" files in a "nmake -f Makefile.nmake clean";

	include the text2pcap and mergecap ".pdb" files in the Windows
	binary distribution.

svn path=/trunk/; revision=4385
2001-12-12 01:29:13 +00:00
Guy Harris 5511e79593 Add support for 64-bit signed integers in "int-64bit.[ch]", add an
FT_INT64 type, and make the Diameter dissector use it.

Handle the 64-bit integer types in the display filter semantics checks.

svn path=/trunk/; revision=4125
2001-11-02 10:09:51 +00:00
Guy Harris d82c74d757 From Ronnie Sahlberg: FT_UINT64 support, code to handle 64-bit integers
without requiring compiler support for them, and updates to the
Diameter, L2TP, NFS, and NLM dissectors to use it and to the ONC RPC
dissector to allow ONC RPC subdissectors to use it.

svn path=/trunk/; revision=4099
2001-10-29 21:13:13 +00:00
Gilbert Ramirez 038da8730a Fix some signed/unsigned comparison warnings. In the case of tvbuff.h,
there were 2 functions which accepted 'maxlength' == -1, but the function
prototypes had maxlength as a guint --- fixed.

svn path=/trunk/; revision=4087
2001-10-26 17:29:12 +00:00
Guy Harris f7b50ca754 From Joerg Mayer:
* gcc 3.0 warning fixes:
  - text2pcap.c: The number of characters to scan should probably not be 0
  - wiretap/csids.c: using preincrement on a variable used on both
    sides of an assignment might be undefined by the C99(?) standard
 * turn on additional warnings for epan and wiretap too
  - epan/configure.in
  - wiretap/configure.in
 * Fix some warnings (missing includes, signed/unsigned, missing
    initializers) found by turning on the warnings
  - all other files :-)

svn path=/trunk/; revision=3709
2001-07-13 00:55:58 +00:00
Gilbert Ramirez 39b0e82f63 Support CIDR notation in IPv4 address filtering.
svn path=/trunk/; revision=3601
2001-06-22 16:29:15 +00:00
Gilbert Ramirez e108afe2bb The Win32 build builds wiretap as a DLL and requires WinPcap 2.1.
svn path=/trunk/; revision=3163
2001-03-23 02:05:29 +00:00
Gilbert Ramirez 4b6b3da4e7 Add some win32-specific targets in .cvsignore's.
Replace 'nmake' with $(MAKE) /$(MAKEFLAGS), from Mike Frisch.

svn path=/trunk/; revision=3108
2001-03-06 13:08:13 +00:00
Gilbert Ramirez d21e83b98b Move version to 0.8.16.
Fix build for splitting build dir from src dir.
Note the use of updated GTK+ release for Win32 binaries.

svn path=/trunk/; revision=3107
2001-03-05 22:53:41 +00:00
Gilbert Ramirez b24dff17bd Enable slices of [i-j], where i is start offset and j is end offset,
inclusive. That is, [0-1] is a slice of 2 bytes.

svn path=/trunk/; revision=3092
2001-03-02 17:04:25 +00:00
Gilbert Ramirez b864c8d80d Move the location of cppmagic.h, since the lemon-flex include files
require it. It makes more sense to either put cppmagic with lemon, or
in yet another common directory. I'll just put it with lemon.

svn path=/trunk/; revision=3083
2001-02-27 20:34:09 +00:00
Gilbert Ramirez 2a50f8af4f Add Ed Warnicke's drange code to the new dfilter system.
Not supported yet: [i-j] (offset-offset)
Supported:
	[i]	index
	[i:j]	offset:length
	[:j]	0:offset
	[i:]	offset:end
	[x,y]	concatenation of slices

svn path=/trunk/; revision=3080
2001-02-27 19:23:30 +00:00
Guy Harris c61ee2b4ad Remove the Lemon stuff from EXTRA_DIST; the Lemon source is now in
"tools/lemon", and that directory's "Makefile.am" arranges to put the
Lemon stuff into the distribution.

svn path=/trunk/; revision=3077
2001-02-26 23:56:59 +00:00
Gilbert Ramirez 728ec7f581 Actually, this works better.
svn path=/trunk/; revision=3043
2001-02-16 19:45:38 +00:00
Gilbert Ramirez 9bf1a2e8d0 Use the proper way to denote that a single operation
produces 2 files. (grammar.lemon --> grammar.c grammar.h)

svn path=/trunk/; revision=3042
2001-02-16 19:44:16 +00:00
Guy Harris 352eec3037 More prototype fun - make the Lemon parser allocate and free routines
take fully-prototyped function arguments with types appropriate to
"g_malloc()" and "g_free()", and change the calls to the functions
pointed to by those arguments not pass the extra __FILE__ and __LINE__
arguments.

svn path=/trunk/; revision=3039
2001-02-15 06:22:46 +00:00
Guy Harris bea00e22cf In a display filter expression, make a field name refer to any of the
fields with that name.

svn path=/trunk/; revision=3030
2001-02-13 18:34:51 +00:00
Guy Harris 0196634a17 If there are multiple fields with the same name, list only one of them
in the output of "{ethereal,tethereal} -G", so that it appears only once
in the documentation.

Expand some comments to give more details.

svn path=/trunk/; revision=3024
2001-02-12 10:06:51 +00:00
Gilbert Ramirez ea7ef0fb0c Remove unused variable and add copyright and RCS ID.
svn path=/trunk/; revision=3013
2001-02-11 03:12:46 +00:00
Gilbert Ramirez 95e09f5ac3 Add Makefile.nmake files for new subdirs.
Add them to EXTRA_DIST in corresponding Makefile.am's so that they
get packaged with the distribution.

svn path=/trunk/; revision=2979
2001-02-02 04:03:43 +00:00
Gilbert Ramirez 96e0398fc6 Grumble, grumble. I forgot to add the license comment at the top
of these files.

svn path=/trunk/; revision=2968
2001-02-01 20:31:21 +00:00
Gilbert Ramirez 8f1fff2e6a Create a more modular type system for the FT_* types. Put them
into epan/ftypes.

Re-write display filter routines using Lemon parser instead of yacc.
Besides using a different tool, the new grammar is much simpler, while
the display filter engine itself is more powerful and more easily extended.

Add dftest executable, to test display filter "bytecode" generation.
Add option to "configure" to build dftest or randpkt, both of which are not
built by default.

Implement Ed Warnicke's ideas about dranges in the new display filter and
ftype code.

Remove type FT_TEXT_ONLY in favor of FT_NONE, and have protocols registered
as FT_PROTOCOL. Thus, FT_NONE is used only for simple labels in the proto tree,
while FT_PROTOCOL is used for protocols. This was necessary for being
able to make byte slices (ranges) out of protocols, like "frame[0:3]"

Win32 Makefile.nmake's will be added tonight.

svn path=/trunk/; revision=2967
2001-02-01 20:21:25 +00:00