Commit Graph

10 Commits

Author SHA1 Message Date
Guy Harris bced8711f6 Make "dissector_add()", "dissector_delete()", and "dissector_change()"
take a dissector handle as an argument, rather than a pointer to a
dissector function and a protocol ID.  Associate dissector handles with
dissector table entries.

svn path=/trunk/; revision=4308
2001-12-03 04:00:26 +00:00
Ed Warnicke 34dbc86e65 Moved from using dissect_data to using call_dissector()
svn path=/trunk/; revision=4264
2001-11-25 22:51:14 +00:00
Guy Harris 60fe401dc7 Get rid of some unused variables.
svn path=/trunk/; revision=4241
2001-11-21 02:01:06 +00:00
Guy Harris 57091e1abb Update from Steve Dickson to add support for UDP encapsulation of PGM
packets.

svn path=/trunk/; revision=3831
2001-08-06 19:05:14 +00:00
Guy Harris 131228b0b1 Updates from Steve Dickson.
svn path=/trunk/; revision=3812
2001-08-02 17:05:00 +00:00
Guy Harris 681f73adb7 There is really no need to have the BGP dissector and the LDP dissector
have two independent "value_string" tables mapping RFC 1700 address
family numbers to names, nor is there any need to have the BGP dissector
and the PIM dissector have two independent sets of #defines for RFC 1700
address family numbers; put a single "value_string" table in "afn.c" and
put a declaration of it, and #defines for the address family numbers,
into "afn.h", and have the dissectors use that.

Move the #define for PGM into "ipproto.h", and add an entry for it in
the "value_string" table in "ipproto.c".

Have the PGM dissector use the standard Ethereal mechanisms for
resolving addresses, and have it use "value_string" tables for mapping
option types, the OPX bits, and packet types to strings.  Use
"bytes_to_str()" to turn byte arrays into strings of hex digits.  Pass
the packet type string to "dissect_pgmopts()" as an argument, rather
than making it a global.  Don't use "proto_tree_add_XXX_format" routines
if you can possibly just use "proto_tree_add_XXX"; give various fields
the correct radix and type, and VALS() strings if necessary, to make
that happen (and to make filtering on them more pleasant).  Put the
type, length, and total length of the options into the protocol tree as
separate fields.  Don't have separate type, length, and OPX fields for
every type of option; one field will suffice.  Don't format a string
with "sprintf()" and then pass that string to "col_add_fstr()" with a
format of "%s" and the string as an argument - "col_add_fstr()" can
format strings itself (that's what the "f" stands for).  Don't byte-swap
and then un-byte-swap IPv4 address fields in the header, just leave them
network byte order to start with.  Use the correct fields for
"proto_tree_add_XXX", rather than using the same field multiple times.
Quit early if an address family identifier isn't AFNUM_INET, as that
means the structure we use to dissect the header doesn't match the
actual header.

svn path=/trunk/; revision=3761
2001-07-21 10:27:13 +00:00
Guy Harris 45510255a7 "inline" is an extension to C, not a standard part of C; don't declare
functions as "inline", use G_INLINE_FUNC (<glib.h> declares it
appropriately).

Put in a URL for the current PGM draft.

svn path=/trunk/; revision=3757
2001-07-20 23:21:33 +00:00
Uwe Girlich 3d152ef40a The type pgm_t is also defined in /usr/include/sys/immu.h on SINIX-N systems.
So I renamed it to pgm_type to remove the name-clash.

svn path=/trunk/; revision=3715
2001-07-13 11:42:44 +00:00
Guy Harris 9c0d2087dc Pragmatic General Multicast isn't RFC 2705.
svn path=/trunk/; revision=3704
2001-07-12 21:48:46 +00:00
Guy Harris 23b15f991f PGM (Pragmatic General Multicast - RFC 2705) support, from Steve Dickson.
svn path=/trunk/; revision=3702
2001-07-12 20:16:29 +00:00