diff options
Diffstat (limited to 'dfilter-scanner.l')
-rw-r--r-- | dfilter-scanner.l | 19 |
1 files changed, 13 insertions, 6 deletions
diff --git a/dfilter-scanner.l b/dfilter-scanner.l index 1bf22ac53b..252ab5fd69 100644 --- a/dfilter-scanner.l +++ b/dfilter-scanner.l @@ -3,7 +3,7 @@ /* dfilter-scanner.l * Scanner for display filters * - * $Id: dfilter-scanner.l,v 1.19 1999/10/12 04:21:10 gram Exp $ + * $Id: dfilter-scanner.l,v 1.20 1999/10/12 06:19:59 gram Exp $ * * Ethereal - Network traffic analyzer * By Gerald Combs <gerald@zing.org> @@ -88,6 +88,7 @@ static char *in_buffer; whitespace [\t ] hex [A-Fa-f0-9]{1,2} hexsep [-:\.] +minus [-] %% @@ -177,18 +178,23 @@ le|\<\= { dfilter_lval.operand = TOK_LE; return TOK_LE; } retval = T_FT_BOOLEAN; break; case FT_UINT8: - case FT_VALS_UINT8: retval = T_FT_UINT8; break; case FT_UINT16: - case FT_VALS_UINT16: retval = T_FT_UINT16; break; case FT_UINT32: - case FT_VALS_UINT32: - case FT_VALS_UINT24: retval = T_FT_UINT32; break; + case FT_INT8: + retval = T_FT_INT8; + break; + case FT_INT16: + retval = T_FT_INT16; + break; + case FT_INT32: + retval = T_FT_INT32; + break; case FT_DOUBLE: dfilter_fail("Sorry, you can't filter on field \"%s\", as we don't yet support filtering on floating-point values.", yytext); @@ -225,6 +231,7 @@ le|\<\= { dfilter_lval.operand = TOK_LE; return TOK_LE; } retval = T_FT_IPXNET; break; default: + printf("ftype for %s is %d\n", yytext, ftype); g_assert_not_reached(); retval = 0; break; @@ -233,7 +240,7 @@ le|\<\= { dfilter_lval.operand = TOK_LE; return TOK_LE; } return retval; } -[0-9]+ { /* decimal or octal values */ +{minus}?[0-9]+ { /* decimal or octal values */ dfilter_lval.string = g_strdup(yytext); return T_VAL_NUMBER_STRING; } |