Linux Kernel  3.7.1
 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Groups Pages
Data Structures | Macros | Typedefs
mroute.h File Reference
#include <linux/sockios.h>
#include <linux/types.h>

Go to the source code of this file.

Data Structures

struct  vifctl
 
struct  mfcctl
 
struct  sioc_sg_req
 
struct  sioc_vif_req
 
struct  igmpmsg
 

Macros

#define MRT_BASE   200
 
#define MRT_INIT   (MRT_BASE) /* Activate the kernel mroute code */
 
#define MRT_DONE   (MRT_BASE+1) /* Shutdown the kernel mroute */
 
#define MRT_ADD_VIF   (MRT_BASE+2) /* Add a virtual interface */
 
#define MRT_DEL_VIF   (MRT_BASE+3) /* Delete a virtual interface */
 
#define MRT_ADD_MFC   (MRT_BASE+4) /* Add a multicast forwarding entry */
 
#define MRT_DEL_MFC   (MRT_BASE+5) /* Delete a multicast forwarding entry */
 
#define MRT_VERSION   (MRT_BASE+6) /* Get the kernel multicast version */
 
#define MRT_ASSERT   (MRT_BASE+7) /* Activate PIM assert mode */
 
#define MRT_PIM   (MRT_BASE+8) /* enable PIM code */
 
#define MRT_TABLE   (MRT_BASE+9) /* Specify mroute table ID */
 
#define SIOCGETVIFCNT   SIOCPROTOPRIVATE /* IP protocol privates */
 
#define SIOCGETSGCNT   (SIOCPROTOPRIVATE+1)
 
#define SIOCGETRPF   (SIOCPROTOPRIVATE+2)
 
#define MAXVIFS   32
 
#define ALL_VIFS   ((vifi_t)(-1))
 
#define VIFM_SET(n, m)   ((m)|=(1<<(n)))
 
#define VIFM_CLR(n, m)   ((m)&=~(1<<(n)))
 
#define VIFM_ISSET(n, m)   ((m)&(1<<(n)))
 
#define VIFM_CLRALL(m)   ((m)=0)
 
#define VIFM_COPY(mfrom, mto)   ((mto)=(mfrom))
 
#define VIFM_SAME(m1, m2)   ((m1)==(m2))
 
#define VIFF_TUNNEL   0x1 /* IPIP tunnel */
 
#define VIFF_SRCRT   0x2 /* NI */
 
#define VIFF_REGISTER   0x4 /* register vif */
 
#define VIFF_USE_IFINDEX
 
#define MFC_ASSERT_THRESH   (3*HZ) /* Maximal freq. of asserts */
 
#define IGMPMSG_NOCACHE   1 /* Kern cache fill request to mrouted */
 
#define IGMPMSG_WRONGVIF   2 /* For PIM assert processing (unused) */
 
#define IGMPMSG_WHOLEPKT   3 /* For PIM Register processing */
 

Typedefs

typedef unsigned long vifbitmap_t
 
typedef unsigned short vifi_t
 

Macro Definition Documentation

#define ALL_VIFS   ((vifi_t)(-1))

Definition at line 37 of file mroute.h.

#define IGMPMSG_NOCACHE   1 /* Kern cache fill request to mrouted */

Definition at line 137 of file mroute.h.

#define IGMPMSG_WHOLEPKT   3 /* For PIM Register processing */

Definition at line 139 of file mroute.h.

#define IGMPMSG_WRONGVIF   2 /* For PIM assert processing (unused) */

Definition at line 138 of file mroute.h.

#define MAXVIFS   32

Definition at line 34 of file mroute.h.

#define MFC_ASSERT_THRESH   (3*HZ) /* Maximal freq. of asserts */

Definition at line 131 of file mroute.h.

#define MRT_ADD_MFC   (MRT_BASE+4) /* Add a multicast forwarding entry */

Definition at line 23 of file mroute.h.

#define MRT_ADD_VIF   (MRT_BASE+2) /* Add a virtual interface */

Definition at line 21 of file mroute.h.

#define MRT_ASSERT   (MRT_BASE+7) /* Activate PIM assert mode */

Definition at line 26 of file mroute.h.

#define MRT_BASE   200

Definition at line 18 of file mroute.h.

#define MRT_DEL_MFC   (MRT_BASE+5) /* Delete a multicast forwarding entry */

Definition at line 24 of file mroute.h.

#define MRT_DEL_VIF   (MRT_BASE+3) /* Delete a virtual interface */

Definition at line 22 of file mroute.h.

#define MRT_DONE   (MRT_BASE+1) /* Shutdown the kernel mroute */

Definition at line 20 of file mroute.h.

#define MRT_INIT   (MRT_BASE) /* Activate the kernel mroute code */

Definition at line 19 of file mroute.h.

#define MRT_PIM   (MRT_BASE+8) /* enable PIM code */

Definition at line 27 of file mroute.h.

#define MRT_TABLE   (MRT_BASE+9) /* Specify mroute table ID */

Definition at line 28 of file mroute.h.

#define MRT_VERSION   (MRT_BASE+6) /* Get the kernel multicast version */

Definition at line 25 of file mroute.h.

#define SIOCGETRPF   (SIOCPROTOPRIVATE+2)

Definition at line 32 of file mroute.h.

#define SIOCGETSGCNT   (SIOCPROTOPRIVATE+1)

Definition at line 31 of file mroute.h.

#define SIOCGETVIFCNT   SIOCPROTOPRIVATE /* IP protocol privates */

Definition at line 30 of file mroute.h.

#define VIFF_REGISTER   0x4 /* register vif */

Definition at line 69 of file mroute.h.

#define VIFF_SRCRT   0x2 /* NI */

Definition at line 68 of file mroute.h.

#define VIFF_TUNNEL   0x1 /* IPIP tunnel */

Definition at line 67 of file mroute.h.

#define VIFF_USE_IFINDEX
Value:
0x8 /* use vifc_lcl_ifindex instead of
vifc_lcl_addr to find an interface */

Definition at line 70 of file mroute.h.

#define VIFM_CLR (   n,
  m 
)    ((m)&=~(1<<(n)))

Definition at line 44 of file mroute.h.

#define VIFM_CLRALL (   m)    ((m)=0)

Definition at line 46 of file mroute.h.

#define VIFM_COPY (   mfrom,
  mto 
)    ((mto)=(mfrom))

Definition at line 47 of file mroute.h.

#define VIFM_ISSET (   n,
  m 
)    ((m)&(1<<(n)))

Definition at line 45 of file mroute.h.

#define VIFM_SAME (   m1,
  m2 
)    ((m1)==(m2))

Definition at line 48 of file mroute.h.

#define VIFM_SET (   n,
  m 
)    ((m)|=(1<<(n)))

Definition at line 43 of file mroute.h.

Typedef Documentation

typedef unsigned long vifbitmap_t

Definition at line 35 of file mroute.h.

typedef unsigned short vifi_t

Definition at line 36 of file mroute.h.