diff options
author | Gilbert Ramirez <gram@alumni.rice.edu> | 2003-07-25 03:44:05 +0000 |
---|---|---|
committer | Gilbert Ramirez <gram@alumni.rice.edu> | 2003-07-25 03:44:05 +0000 |
commit | 086774b71f236b797a9e7a14e2bbb444b55e6d79 (patch) | |
tree | c295c5d9f4e05517f4d56f17032183c996ab27df /epan/ftypes/ftypes.h | |
parent | c2150d9d778613bb7eb8135ea1f155346f26e473 (diff) |
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
Diffstat (limited to 'epan/ftypes/ftypes.h')
-rw-r--r-- | epan/ftypes/ftypes.h | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/epan/ftypes/ftypes.h b/epan/ftypes/ftypes.h index 9ddac05bb6..1e224cbf53 100644 --- a/epan/ftypes/ftypes.h +++ b/epan/ftypes/ftypes.h @@ -1,7 +1,7 @@ /* ftypes.h * Definitions for field types * - * $Id: ftypes.h,v 1.17 2003/06/11 21:24:54 gram Exp $ + * $Id: ftypes.h,v 1.18 2003/07/25 03:44:04 gram Exp $ * * Ethereal - Network traffic analyzer * By Gerald Combs <gerald@ethereal.com> @@ -73,6 +73,7 @@ enum ftrepr { typedef enum ftrepr ftrepr_t; + /* Initialize the ftypes subsytem. Called once. */ void ftypes_initialize(void); @@ -151,6 +152,9 @@ fvalue_free(fvalue_t *fv); typedef void (*LogFunc)(char*,...); fvalue_t* +fvalue_from_unparsed(ftenum_t ftype, char *s, LogFunc log); + +fvalue_t* fvalue_from_string(ftenum_t ftype, char *s, LogFunc log); /* Returns the length of the string required to hold the |