aboutsummaryrefslogtreecommitdiffstats
path: root/epan/dfilter/dfilter-int.h
AgeCommit message (Collapse)AuthorFilesLines
2004-06-15From Graeme Hewson:Guy Harris1-1/+5
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-02-11Use -1 rather than 0 as the SCAN_FAILED return value from the lexicalGuy Harris1-4/+6
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
2002-08-28Removed trailing whitespaces from .h and .c files using theJörg Mayer1-4/+4
winapi_cleanup tool written by Patrik Stridvall for the wine project. svn path=/trunk/; revision=6116
2002-04-29Move the code to build the balanced tree of fields into "proto_init()",Guy Harris1-6/+1
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-01-21Include files from the "epan" directory and subdirectories thereof withGuy Harris1-4/+3
"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
2001-12-18Provide for per-protocol-tree data in the proto_tree code.Gilbert Ramirez1-1/+4
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-02-15More prototype fun - make the Lemon parser allocate and free routinesGuy Harris1-3/+3
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-01Grumble, grumble. I forgot to add the license comment at the topGilbert Ramirez1-3/+19
of these files. svn path=/trunk/; revision=2968
2001-02-01Create a more modular type system for the FT_* types. Put themGilbert Ramirez1-0/+52
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