From 086774b71f236b797a9e7a14e2bbb444b55e6d79 Mon Sep 17 00:00:00 2001 From: Gilbert Ramirez Date: Fri, 25 Jul 2003 03:44:05 +0000 Subject: 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 --- epan/ftypes/ftypes-int.h | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) (limited to 'epan/ftypes/ftypes-int.h') diff --git a/epan/ftypes/ftypes-int.h b/epan/ftypes/ftypes-int.h index cda64a1862..d6922ef7c9 100644 --- a/epan/ftypes/ftypes-int.h +++ b/epan/ftypes/ftypes-int.h @@ -1,5 +1,5 @@ /* - * $Id: ftypes-int.h,v 1.8 2003/06/11 21:24:54 gram Exp $ + * $Id: ftypes-int.h,v 1.9 2003/07/25 03:44:03 gram Exp $ * * Ethereal - Network traffic analyzer * By Gerald Combs @@ -29,6 +29,7 @@ typedef void (*FvalueNewFunc)(fvalue_t*); typedef void (*FvalueFreeFunc)(fvalue_t*); +typedef gboolean (*FvalueFromUnparsed)(fvalue_t*, char*, LogFunc); typedef gboolean (*FvalueFromString)(fvalue_t*, char*, LogFunc); typedef void (*FvalueToStringRepr)(fvalue_t*, ftrepr_t, char*); typedef int (*FvalueStringReprLen)(fvalue_t*, ftrepr_t); @@ -52,6 +53,7 @@ struct _ftype_t { int wire_size; FvalueNewFunc new_value; FvalueFreeFunc free_value; + FvalueFromUnparsed val_from_unparsed; FvalueFromString val_from_string; FvalueToStringRepr val_to_string_repr; FvalueStringReprLen len_string_repr; -- cgit v1.2.3