HOME


NAME

pim_dissect - Protocol Independent Multicast dissect function

SYNOPSIS

data,offset=pim_dissect(pkt,offset)

PIM_HELLO = 0
PIM_REGISTER = 1
PIM_REGISTER_STOP = 2
PIM_JOIN_PRUNE = 3
PIM_BOOTSTRAP = 4
PIM_ASSERT = 5
PIM_GRAFT = 6
PIM_GRAFT_ACK = 7
PIM_CANDIDATE = 8

DESCRIPTION

dissect Protocol Independent Multicast
just type PIM_HELLO is dissectable at the moment

                  PIM Header Format ( fixed-part )
    0                   1                   2                   3
    0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   |PIM Ver| Type  | Reserved      |           Checksum            |
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

                                    reference RFC 2362

if type == PIM_HELLO

                  Hello Message Format
    0                   1                   2                   3
    0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   |          Option Type          |         Option Length         |
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   |                         Option Value                          |
   |                              ...                              |
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   |                               .                               |
   |                               .                               |
   |                               .                               |
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   |          Option Type          |         Option Length         |
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   |                         Option Value                          |
   |                              ...                              |
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+


funtion accepts two arguments:
    pkt is a packet reference containing the whole packet to be dissect
    offset is the position inside packet to start dissection

funtion return two values:
    data is a variable long tuple:

pim version
type
reserved

checksum

if type == PIM_HELLO a list with options follows

    offset could be the original offset plus 4
                or the end of the packet if type equals PIM_HELLO

SEE ALSO
pim_opn_dissect

HOME


This document was generated by paolo bastiancich on January, 16 2003 using texi2html