From b2f932c1dbb6180a3b4a86c7510ef4beff814bb0 Mon Sep 17 00:00:00 2001 From: Gilbert Ramirez Date: Sun, 1 Aug 1999 04:28:20 +0000 Subject: Changed the display filter scanner from GLIB's GScanner to lex. The code as it standed depends on your lex being flex, but that only matters if you're a developer. The distribution will include the dfilter-scanner.c file, so that if the user doesn't modify dfilter-scanner.l, he won't need flex to re-create the *.c file. The new lex scanner gives me better syntax checking for ether addresses. I thought I could get by using GScanner, but it simply wasn't powerful enough. All operands have English-like abbreviations and C-like syntax: and, && ; or, || ; eq, == ; ne, != ; , etc. I removed the ETHER_VENDOR type in favor of letting the user use the [x:y] notation: ether.src[0:3] == 0:6:29 instead of ether.srcvendor == 00:06:29 I implemented the IPXNET field type; it had been there before, but was not implemented. I chose to make it use integer values rather than byte ranges, since an IPX Network is 4 bytes. So a display filter looks like this: ipx.srcnet == 0xc0a82c00 rather than this: ipx.srcnet == c0:a8:2c:00 I can supposrt the byte-range type IPXNET in the future, very trivially. I still have more work to do on the parser though. It needs to check ranges when extracting byte ranges ([x:y]) from packets. And I need to get rid of those reduce/reduce errors from yacc! svn path=/trunk/; revision=414 --- proto.h | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) (limited to 'proto.h') diff --git a/proto.h b/proto.h index d4ce6d10bf..3d436c4fa1 100644 --- a/proto.h +++ b/proto.h @@ -1,7 +1,7 @@ /* proto.h * Definitions for protocol display * - * $Id: proto.h,v 1.4 1999/07/15 15:32:44 gram Exp $ + * $Id: proto.h,v 1.5 1999/08/01 04:28:09 gram Exp $ * * Ethereal - Network traffic analyzer * By Gerald Combs @@ -60,11 +60,10 @@ enum ftenum { FT_RELATIVE_TIME, FT_STRING, FT_ETHER, - FT_ETHER_VENDOR, FT_BYTES, FT_IPv4, FT_IPv6, - FT_IPXSERVER, + FT_IPXNET, FT_VALS_UINT8, FT_VALS_UINT16, FT_VALS_UINT24, -- cgit v1.2.3