Ethereal-cvs: [ethereal-cvs] cvs commit: ethereal packet-sna.c Makefile.am dfilter-grammar.y
gram 1999/10/12 01:21:05 CDT
Modified files:
. Makefile.am dfilter-grammar.y
dfilter-scanner.l packet-aarp.c
packet-arp.c packet-ascend.c
packet-atalk.c packet-bootp.c
packet-bpdu.c packet-cdp.c packet-eth.c
packet-fddi.c packet-ftp.c packet-giop.c
packet-icmpv6.c packet-icp.c packet-ip.c
packet-ipsec.c packet-ipv6.c packet-ipx.c
packet-lapb.c packet-llc.c packet-null.c
packet-osi.c packet-ppp.c packet-radius.c
packet-rsvp.c packet-tcp.c packet-tr.c
packet-trmac.c packet-udp.c packet-x25.c
packet.c packet.h proto.c proto.h
Added files:
. packet-sna.c
Log:
New proto_tree header_field_info stuff. Header_field_infos now contain
the base for numbers to be displayed in, bitmasks for bitfields, and blurbs
(which are one or two sentences describing the field).
proto_tree_add*() routines now automatically handle bitfields. You tell
it which header field you are adding, and just pass it the value of the
entire field, and the proto_tree routines will do the masking and shifting
for you.
This means that bitfields are more naturally filtered via dfilter now.
Added Phil Techau's support for signed integers in dfilters/proto_tree.
Added the beginning of the SNA dissector. It's not complete, but I'm
committing it now because it has example after example of how to use
bitfields with the new header_field_info struct and proto_tree routines.
It was the impetus to change how header_field_info works.
Revision Changes Path
1.80 +2 -1 ethereal/Makefile.am
1.29 +10 -1 ethereal/dfilter-grammar.y
1.20 +13 -6 ethereal/dfilter-scanner.l
1.11 +27 -10 ethereal/packet-aarp.c
1.19 +27 -10 ethereal/packet-arp.c
1.5 +7 -4 ethereal/packet-ascend.c
1.15 +30 -11 ethereal/packet-atalk.c
1.21 +47 -21 ethereal/packet-bootp.c
1.4 +25 -13 ethereal/packet-bpdu.c
1.15 +5 -3 ethereal/packet-cdp.c
1.20 +9 -5 ethereal/packet-eth.c
1.22 +7 -4 ethereal/packet-fddi.c
1.9 +18 -7 ethereal/packet-ftp.c
1.8 +5 -3 ethereal/packet-giop.c
1.9 +7 -4 ethereal/packet-icmpv6.c
1.2 +13 -5 ethereal/packet-icp.c
1.51 +48 -23 ethereal/packet-ip.c
1.5 +9 -5 ethereal/packet-ipsec.c
1.15 +5 -3 ethereal/packet-ipv6.c
1.28 +23 -13 ethereal/packet-ipx.c
1.6 +6 -3 ethereal/packet-lapb.c
1.26 +12 -7 ethereal/packet-llc.c
1.16 +5 -3 ethereal/packet-null.c
1.11 +33 -12 ethereal/packet-osi.c
1.21 +7 -4 ethereal/packet-ppp.c
1.4 +9 -4 ethereal/packet-radius.c
1.9 +82 -30 ethereal/packet-rsvp.c
1.34 +11 -6 ethereal/packet-tcp.c
1.29 +50 -47 ethereal/packet-tr.c
1.16 +37 -19 ethereal/packet-trmac.c
1.26 +11 -6 ethereal/packet-udp.c
1.7 +6 -3 ethereal/packet-x25.c
1.46 +13 -7 ethereal/packet.c
1.104 +20 -1 ethereal/packet.h
1.35 +373 -97 ethereal/proto.c
1.17 +31 -12 ethereal/proto.h