Linux Kernel  3.7.1
 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Groups Pages
Data Structures | Macros | Typedefs | Functions
fib_trie.c File Reference
#include <asm/uaccess.h>
#include <linux/bitops.h>
#include <linux/types.h>
#include <linux/kernel.h>
#include <linux/mm.h>
#include <linux/string.h>
#include <linux/socket.h>
#include <linux/sockios.h>
#include <linux/errno.h>
#include <linux/in.h>
#include <linux/inet.h>
#include <linux/inetdevice.h>
#include <linux/netdevice.h>
#include <linux/if_arp.h>
#include <linux/proc_fs.h>
#include <linux/rcupdate.h>
#include <linux/skbuff.h>
#include <linux/netlink.h>
#include <linux/init.h>
#include <linux/list.h>
#include <linux/slab.h>
#include <linux/prefetch.h>
#include <linux/export.h>
#include <net/net_namespace.h>
#include <net/ip.h>
#include <net/protocol.h>
#include <net/route.h>
#include <net/tcp.h>
#include <net/sock.h>
#include <net/ip_fib.h>
#include "fib_lookup.h"

Go to the source code of this file.

Data Structures

struct  rt_trie_node
 
struct  leaf
 
struct  leaf_info
 
struct  tnode
 
struct  trie_stat
 
struct  trie
 

Macros

#define VERSION   "0.409"
 
#define MAX_STAT_DEPTH   32
 
#define KEYLENGTH   (8*sizeof(t_key))
 
#define T_TNODE   0
 
#define T_LEAF   1
 
#define NODE_TYPE_MASK   0x1UL
 
#define NODE_TYPE(node)   ((node)->parent & NODE_TYPE_MASK)
 
#define IS_TNODE(n)   (!(n->parent & T_LEAF))
 
#define IS_LEAF(n)   (n->parent & T_LEAF)
 
#define MAX_WORK   10
 

Typedefs

typedef unsigned int t_key
 

Functions

int fib_table_insert (struct fib_table *tb, struct fib_config *cfg)
 
int fib_table_lookup (struct fib_table *tb, const struct flowi4 *flp, struct fib_result *res, int fib_flags)
 
 EXPORT_SYMBOL_GPL (fib_table_lookup)
 
int fib_table_delete (struct fib_table *tb, struct fib_config *cfg)
 
int fib_table_flush (struct fib_table *tb)
 
void fib_free_table (struct fib_table *tb)
 
int fib_table_dump (struct fib_table *tb, struct sk_buff *skb, struct netlink_callback *cb)
 
void __init fib_trie_init (void)
 
struct fib_tablefib_trie_table (u32 id)
 

Macro Definition Documentation

#define IS_LEAF (   n)    (n->parent & T_LEAF)

Definition at line 97 of file fib_trie.c.

#define IS_TNODE (   n)    (!(n->parent & T_LEAF))

Definition at line 96 of file fib_trie.c.

#define KEYLENGTH   (8*sizeof(t_key))

Definition at line 87 of file fib_trie.c.

#define MAX_STAT_DEPTH   32

Definition at line 85 of file fib_trie.c.

#define MAX_WORK   10

Definition at line 533 of file fib_trie.c.

#define NODE_TYPE (   node)    ((node)->parent & NODE_TYPE_MASK)

Definition at line 94 of file fib_trie.c.

#define NODE_TYPE_MASK   0x1UL

Definition at line 93 of file fib_trie.c.

#define T_LEAF   1

Definition at line 92 of file fib_trie.c.

#define T_TNODE   0

Definition at line 91 of file fib_trie.c.

#define VERSION   "0.409"

Definition at line 51 of file fib_trie.c.

Typedef Documentation

typedef unsigned int t_key

Definition at line 89 of file fib_trie.c.

Function Documentation

EXPORT_SYMBOL_GPL ( fib_table_lookup  )
void fib_free_table ( struct fib_table tb)

Definition at line 1852 of file fib_trie.c.

int fib_table_delete ( struct fib_table tb,
struct fib_config cfg 
)

Definition at line 1633 of file fib_trie.c.

int fib_table_dump ( struct fib_table tb,
struct sk_buff skb,
struct netlink_callback cb 
)

Definition at line 1928 of file fib_trie.c.

int fib_table_flush ( struct fib_table tb)

Definition at line 1831 of file fib_trie.c.

int fib_table_insert ( struct fib_table tb,
struct fib_config cfg 
)

Definition at line 1183 of file fib_trie.c.

int fib_table_lookup ( struct fib_table tb,
const struct flowi4 flp,
struct fib_result res,
int  fib_flags 
)

Definition at line 1417 of file fib_trie.c.

void __init fib_trie_init ( void  )

Definition at line 1970 of file fib_trie.c.

struct fib_table* fib_trie_table ( u32  id)
read

Definition at line 1983 of file fib_trie.c.