pim
pimhdr->pim.pim_cksum = in_cksum(mb_first, sizeof(pim_encap_pimhdr));
struct pim *pim;
pim = mtod(m, struct pim *);
if (PIM_VT_T(pim->pim_vt) == PIM_REGISTER && in_cksum(m, PIM_MINLEN) == 0) {
if (PIM_VT_V(pim->pim_vt) < PIM_VERSION) {
PIM_VT_V(pim->pim_vt), PIM_VERSION);
if (PIM_VT_T(pim->pim_vt) == PIM_REGISTER) {
struct pim pim;
reghdr = (u_int32_t *)(pim + 1);
struct pim *pim;
IP6_EXTHDR_GET(pim, struct pim *, m, off, minlen);
if (pim == NULL) {
if (pim->pim_ver != PIM_VERSION) {
pim->pim_ver, PIM_VERSION);
if (pim->pim_type == PIM_REGISTER)
if (pim->pim_type == PIM_REGISTER) {
reghdr = (u_int32_t *)(pim + 1);