itojun@xxxxxxxxxx wrote:
>
> >> Here's decoding code for pim (protocol independent multicast).
> >> test data is included.
> >Our first protocol-within-a-protocol! In packet-pim.c, in line 264,
> >when you call the next dissector (ipv4 or ipv6), can we pass it
> >tree instead of pimopt_tree, so that those dissectors put their
> >protocols at the top level of the protocol tree?
>
> >Then in that trace that you sent, we'l' have packets like:
> >Frame #3:
> >+ Frame (1124 on wire, 1124 captured)
> >+ Null/Loopback
> >+ IPv6
> >+ PIM
> >+ IPv6
> >+ UDP
> >+ Data
>
> PIM register message is sort of tunneled packet, so I thought
> it would be good to have it inside PIM tree. I totally agree
> with your change, as tunneled packets are aligned just like above
> (call to dissect_ipv6() from dissect_ip(), for example).
I agree for the detailed window but having the proto/info fields in the
summary list repaced by UDP while it is not really a simple IP+UDP packet
is a bit confusing. The worst case for instance is having an UDP or NBNS
info field when decoding an ICMP port unreachable message for instance
(if we had called dissect_ip in dissect_icmp) ... Maybe some GUI options
could be added to control the level of decoding (in the detailed tree as
well as in the summary list window).
Laurent.
--
Laurent DENIEL | E-mail: deniel@xxxxxxxxxxx
Paris, FRANCE | laurent.deniel@xxxxxxxxxxxxxxxxxxxxxxxxxxxx
| WWW : http://www.worldnet.fr/~deniel
All above opinions are personal, unless stated otherwise.