Linux Kernel  3.7.1
 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Groups Pages
Data Structures | Macros | Functions
ip6_gre.c File Reference
#include <linux/capability.h>
#include <linux/module.h>
#include <linux/types.h>
#include <linux/kernel.h>
#include <linux/slab.h>
#include <linux/uaccess.h>
#include <linux/skbuff.h>
#include <linux/netdevice.h>
#include <linux/in.h>
#include <linux/tcp.h>
#include <linux/udp.h>
#include <linux/if_arp.h>
#include <linux/mroute.h>
#include <linux/init.h>
#include <linux/in6.h>
#include <linux/inetdevice.h>
#include <linux/igmp.h>
#include <linux/netfilter_ipv4.h>
#include <linux/etherdevice.h>
#include <linux/if_ether.h>
#include <linux/hash.h>
#include <linux/if_tunnel.h>
#include <linux/ip6_tunnel.h>
#include <net/sock.h>
#include <net/ip.h>
#include <net/icmp.h>
#include <net/protocol.h>
#include <net/addrconf.h>
#include <net/arp.h>
#include <net/checksum.h>
#include <net/dsfield.h>
#include <net/inet_ecn.h>
#include <net/xfrm.h>
#include <net/net_namespace.h>
#include <net/netns/generic.h>
#include <net/rtnetlink.h>
#include <net/ipv6.h>
#include <net/ip6_fib.h>
#include <net/ip6_route.h>
#include <net/ip6_tunnel.h>

Go to the source code of this file.

Data Structures

struct  ip6gre_net
 
struct  pcpu_tstats
 
struct  ipv6_tel_txoption
 

Macros

#define pr_fmt(fmt)   KBUILD_MODNAME ": " fmt
 
#define IPV6_TCLASS_MASK   (IPV6_FLOWINFO_MASK & ~IPV6_FLOWLABEL_MASK)
 
#define IPV6_TCLASS_SHIFT   20
 
#define HASH_SIZE_SHIFT   5
 
#define HASH_SIZE   (1 << HASH_SIZE_SHIFT)
 
#define HASH_KEY(key)   (((__force u32)key^((__force u32)key>>4))&(HASH_SIZE - 1))
 
#define tunnels_r_l   tunnels[3]
 
#define tunnels_r   tunnels[2]
 
#define tunnels_l   tunnels[1]
 
#define tunnels_wc   tunnels[0]
 
#define for_each_ip_tunnel_rcu(start)   for (t = rcu_dereference(start); t; t = rcu_dereference(t->next))
 

Functions

 module_param (log_ecn_error, bool, 0644)
 
 MODULE_PARM_DESC (log_ecn_error,"Log packets received with corrupted ECN")
 
 module_init (ip6gre_init)
 
 module_exit (ip6gre_fini)
 
 MODULE_LICENSE ("GPL")
 
 MODULE_AUTHOR ("D. Kozlov ([email protected])")
 
 MODULE_DESCRIPTION ("GRE over IPv6 tunneling device")
 
 MODULE_ALIAS_RTNL_LINK ("ip6gre")
 
 MODULE_ALIAS_NETDEV ("ip6gre0")
 

Macro Definition Documentation

#define for_each_ip_tunnel_rcu (   start)    for (t = rcu_dereference(start); t; t = rcu_dereference(t->next))

Definition at line 116 of file ip6_gre.c.

#define HASH_KEY (   key)    (((__force u32)key^((__force u32)key>>4))&(HASH_SIZE - 1))

Definition at line 100 of file ip6_gre.c.

#define HASH_SIZE   (1 << HASH_SIZE_SHIFT)

Definition at line 67 of file ip6_gre.c.

#define HASH_SIZE_SHIFT   5

Definition at line 66 of file ip6_gre.c.

#define IPV6_TCLASS_MASK   (IPV6_FLOWINFO_MASK & ~IPV6_FLOWLABEL_MASK)

Definition at line 63 of file ip6_gre.c.

#define IPV6_TCLASS_SHIFT   20

Definition at line 64 of file ip6_gre.c.

#define pr_fmt (   fmt)    KBUILD_MODNAME ": " fmt

Definition at line 13 of file ip6_gre.c.

#define tunnels_l   tunnels[1]

Definition at line 110 of file ip6_gre.c.

#define tunnels_r   tunnels[2]

Definition at line 109 of file ip6_gre.c.

#define tunnels_r_l   tunnels[3]

Definition at line 108 of file ip6_gre.c.

#define tunnels_wc   tunnels[0]

Definition at line 111 of file ip6_gre.c.

Function Documentation

MODULE_ALIAS_NETDEV ( "ip6gre0"  )
MODULE_ALIAS_RTNL_LINK ( "ip6gre"  )
MODULE_AUTHOR ( "D. Kozlov ([email protected])"  )
MODULE_DESCRIPTION ( "GRE over IPv6 tunneling device )
module_exit ( ip6gre_fini  )
module_init ( ip6gre_init  )
MODULE_LICENSE ( "GPL"  )
module_param ( log_ecn_error  ,
bool  ,
0644   
)
MODULE_PARM_DESC ( log_ecn_error  ,
"Log packets received with corrupted ECN"   
)