1#ifndef __LINUX_PIM_H 2#define __LINUX_PIM_H 3 4#include <asm/byteorder.h> 5 6/* Message types - V1 */ 7#define PIM_V1_VERSION cpu_to_be32(0x10000000) 8#define PIM_V1_REGISTER 1 9 10/* Message types - V2 */ 11#define PIM_VERSION 2 12#define PIM_REGISTER 1 13 14#define PIM_NULL_REGISTER cpu_to_be32(0x40000000) 15 16/* PIMv2 register message header layout (ietf-draft-idmr-pimvsm-v2-00.ps */ 17struct pimreghdr 18{ 19 __u8 type; 20 __u8 reserved; 21 __be16 csum; 22 __be32 flags; 23}; 24 25struct sk_buff; 26extern int pim_rcv_v1(struct sk_buff *); 27#endif 28