Linux Kernel  3.7.1
 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Groups Pages
Data Structures | Macros | Functions
vxlan.c File Reference
#include <linux/kernel.h>
#include <linux/types.h>
#include <linux/module.h>
#include <linux/errno.h>
#include <linux/slab.h>
#include <linux/skbuff.h>
#include <linux/rculist.h>
#include <linux/netdevice.h>
#include <linux/in.h>
#include <linux/ip.h>
#include <linux/udp.h>
#include <linux/igmp.h>
#include <linux/etherdevice.h>
#include <linux/if_ether.h>
#include <linux/hash.h>
#include <net/ip.h>
#include <net/icmp.h>
#include <net/udp.h>
#include <net/rtnetlink.h>
#include <net/route.h>
#include <net/dsfield.h>
#include <net/inet_ecn.h>
#include <net/net_namespace.h>
#include <net/netns/generic.h>

Go to the source code of this file.

Data Structures

struct  vxlanhdr
 
struct  vxlan_net
 
struct  vxlan_fdb
 
struct  vxlan_stats
 
struct  vxlan_dev
 

Macros

#define pr_fmt(fmt)   KBUILD_MODNAME ": " fmt
 
#define VXLAN_VERSION   "0.1"
 
#define VNI_HASH_BITS   10
 
#define VNI_HASH_SIZE   (1<<VNI_HASH_BITS)
 
#define FDB_HASH_BITS   8
 
#define FDB_HASH_SIZE   (1<<FDB_HASH_BITS)
 
#define FDB_AGE_DEFAULT   300 /* 5 min */
 
#define FDB_AGE_INTERVAL   (10 * HZ) /* rescan interval */
 
#define VXLAN_N_VID   (1u << 24)
 
#define VXLAN_VID_MASK   (VXLAN_N_VID - 1)
 
#define VXLAN_HEADROOM   (20 + 8 + 8 + 14)
 
#define VXLAN_FLAGS   0x08000000 /* struct vxlanhdr.vx_flags required value. */
 

Functions

 module_param_named (udp_port, vxlan_port, uint, 0444)
 
 MODULE_PARM_DESC (udp_port,"Destination UDP port")
 
 module_param (log_ecn_error, bool, 0644)
 
 MODULE_PARM_DESC (log_ecn_error,"Log packets received with corrupted ECN")
 
 module_init (vxlan_init_module)
 
 module_exit (vxlan_cleanup_module)
 
 MODULE_LICENSE ("GPL")
 
 MODULE_VERSION (VXLAN_VERSION)
 
 MODULE_AUTHOR ("Stephen Hemminger <[email protected]>")
 
 MODULE_ALIAS_RTNL_LINK ("vxlan")
 

Macro Definition Documentation

#define FDB_AGE_DEFAULT   300 /* 5 min */

Definition at line 48 of file vxlan.c.

#define FDB_AGE_INTERVAL   (10 * HZ) /* rescan interval */

Definition at line 49 of file vxlan.c.

#define FDB_HASH_BITS   8

Definition at line 46 of file vxlan.c.

#define FDB_HASH_SIZE   (1<<FDB_HASH_BITS)

Definition at line 47 of file vxlan.c.

#define pr_fmt (   fmt)    KBUILD_MODNAME ": " fmt

Definition at line 15 of file vxlan.c.

#define VNI_HASH_BITS   10

Definition at line 44 of file vxlan.c.

#define VNI_HASH_SIZE   (1<<VNI_HASH_BITS)

Definition at line 45 of file vxlan.c.

#define VXLAN_FLAGS   0x08000000 /* struct vxlanhdr.vx_flags required value. */

Definition at line 56 of file vxlan.c.

#define VXLAN_HEADROOM   (20 + 8 + 8 + 14)

Definition at line 54 of file vxlan.c.

#define VXLAN_N_VID   (1u << 24)

Definition at line 51 of file vxlan.c.

#define VXLAN_VERSION   "0.1"

Definition at line 42 of file vxlan.c.

#define VXLAN_VID_MASK   (VXLAN_N_VID - 1)

Definition at line 52 of file vxlan.c.

Function Documentation

MODULE_ALIAS_RTNL_LINK ( "vxlan"  )
MODULE_AUTHOR ( "Stephen Hemminger <[email protected]>"  )
module_exit ( vxlan_cleanup_module  )
module_init ( vxlan_init_module  )
MODULE_LICENSE ( "GPL"  )
module_param ( log_ecn_error  ,
bool  ,
0644   
)
module_param_named ( udp_port  ,
vxlan_port  ,
uint  ,
0444   
)
MODULE_PARM_DESC ( udp_port  ,
"Destination UDP port  
)
MODULE_PARM_DESC ( log_ecn_error  ,
"Log packets received with corrupted ECN"   
)
MODULE_VERSION ( VXLAN_VERSION  )