route_table.h

#include <linux/module.h>
#include <linux/kernel.h>
#include <linux/netdevice.h>
#include <linux/skbuff.h>
#include <linux/in.h>
#include <linux/ip.h>
#include <net/route.h>
#include <net/ip_fib.h>
#include <net/ip.h>
#include "aodv.h"
#include "utils.h"
#include "rerr.h"
#include "flood_id_queue.h"
#include "packet_queue.h"

ソースコードを見る。

関数

route_table_entryget_first_route_table_entry ()
route_table_entrycreate_route_table_entry ()
route_table_entryfind_route_table_entry (u_int32_t tmp_ip)
route_table_entryfast_find_route_table_entry (u_int32_t tmp_ip)
int delete_route_table_entry (u_int32_t tmp_ip)
int cleanup_route_table (void)
void find_inactive_route_table_entries ()
int insert_precursor_entry (struct route_table_entry *tmp_entry, u_int32_t tmp_ip)
void delete_precursor_entry (struct route_table_entry *tmp_entry, u_int32_t tmp_ip)
void delete_precursor_entry_from_route_table (u_int32_t tmp_ip)
precursor_entryfind_precursor_entry (struct route_table_entry *tmp_entry, u_int32_t tmp_ip)
int update_route_entry (u_int32_t ip, u_int32_t next_hop_ip, u_int8_t hop_count, u_int32_t seq, struct net_device *dev)
void delete_precursors_from_route_table_entry (struct route_table_entry *tmp_entry)
rtentry * create_kernel_route_entry (u_int32_t dst_ip, u_int32_t gw_ip, char *interf)
int insert_kernel_route_entry (u_int32_t dst_ip, u_int32_t gw_ip, char *interf)
int delete_kernel_route_entry (u_int32_t dst_ip, u_int32_t gw_ip)
int init_route_table (void)
int read_route_table_proc (char *buffer, char **buffer_location, off_t offset, int buffer_length, int *eof, void *data)
int read_monitor_proc (char *buffer, char **buffer_location, off_t offset, int buffer_length, int *eof, void *data)
void print_route_table ()
void reset_route_table_link ()


関数

int cleanup_route_table void   ) 
 

route_table.c589 行で定義されています。

参照先 delete_kernel_route_entry()delete_precursors_from_route_table_entry()route_table_entry::dst_ipinet_ntoa()route_table_entry::nextroute_table_entry::next_hopprint_route_table().

参照元 cleanup_module().

struct rtentry* create_kernel_route_entry u_int32_t  dst_ip,
u_int32_t  gw_ip,
char *  interf
 

route_table.c859 行で定義されています。

参照先 g_broadcast_ip.

参照元 delete_kernel_route_entry()insert_kernel_route_entry().

struct route_table_entry* create_route_table_entry  ) 
 

route_table.c208 行で定義されています。

参照先 route_table_entry::devFALSEroute_table_entry::linkroute_table_entry::nextroute_table_entry::precursorsroute_table_entry::prevroute_table_entry::route_seq_validroute_table_entry::route_validroute_write_lock()route_write_unlock()route_table_entry::rreq_idroute_table_entry::self_route.

参照元 init_interface_list()recv_hello()recv_rreq()update_route_entry().

int delete_kernel_route_entry u_int32_t  dst_ip,
u_int32_t  gw_ip
 

route_table.c951 行で定義されています。

参照先 create_kernel_route_entry().

参照元 cleanup_route_table()delete_route_table_entry()recv_hello()recv_rerr()route_expiry()update_route_entry().

void delete_precursor_entry struct route_table_entry tmp_entry,
u_int32_t  tmp_ip
 

route_table.c683 行で定義されています。

参照先 find_precursor_entry()precursor_entry::nextroute_table_entry::precursorsprecursor_entry::prev.

参照元 delete_precursor_entry_from_route_table().

void delete_precursor_entry_from_route_table u_int32_t  tmp_ip  ) 
 

route_table.c706 行で定義されています。

参照先 delete_precursor_entry()route_read_lock()route_read_unlock().

参照元 link_break().

void delete_precursors_from_route_table_entry struct route_table_entry tmp_entry  ) 
 

route_table.c835 行で定義されています。

参照先 precursor_entry::nextroute_table_entry::precursors.

参照元 cleanup_route_table()delete_route_table_entry()find_inactive_route_table_entries().

int delete_route_table_entry u_int32_t  tmp_ip  ) 
 

route_table.c322 行で定義されています。

参照先 delete_kernel_route_entry()delete_precursors_from_route_table_entry()route_table_entry::dst_ipfind_route_table_entry()route_table_entry::nextroute_table_entry::next_hoproute_table_entry::prevroute_write_lock()route_write_unlock().

struct route_table_entry* fast_find_route_table_entry u_int32_t  tmp_ip  ) 
 

route_table.c257 行で定義されています。

参照先 route_table_entry::dst_iproute_table_entry::next.

void find_inactive_route_table_entries  ) 
 

route_table.c111 行で定義されています。

参照先 delete_precursors_from_route_table_entry()route_table_entry::dst_ipFALSEgetcurrtime()inet_ntoa()route_table_entry::lifetimelink_break()route_table_entry::nextroute_table_entry::next_hoproute_table_entry::prevroute_expiry()route_table_entry::route_validroute_write_lock()route_write_unlock()route_table_entry::self_route.

参照元 aodv().

struct precursor_entry* find_precursor_entry struct route_table_entry tmp_entry,
u_int32_t  tmp_ip
 

struct route_table_entry* find_route_table_entry u_int32_t  tmp_ip  ) 
 

route_table.c285 行で定義されています。

参照先 route_table_entry::dst_iproute_table_entry::nextroute_read_lock()route_read_unlock().

参照元 delete_route_table_entry()gen_rrep()gen_rreq()host_unr()packet_in()recv_hello()recv_rerr()recv_rrep()recv_rreq()send_message()timer_neighbor()update_route_entry().

struct route_table_entry* get_first_route_table_entry  ) 
 

route_table.c96 行で定義されています。

参照元 link_break().

int init_route_table void   ) 
 

route_table.c83 行で定義されています。

参照元 init_module().

int insert_kernel_route_entry u_int32_t  dst_ip,
u_int32_t  gw_ip,
char *  interf
 

route_table.c905 行で定義されています。

参照先 create_kernel_route_entry()inet_ntoa().

参照元 init_interface_list()recv_hello()update_route_entry().

int insert_precursor_entry struct route_table_entry tmp_entry,
u_int32_t  tmp_ip
 

route_table.c647 行で定義されています。

参照先 find_precursor_entry()precursor_entry::ipprecursor_entry::nextroute_table_entry::precursorsprecursor_entry::prev.

参照元 gen_rrep()recv_rrep().

void print_route_table  ) 
 

route_table.c557 行で定義されています。

参照先 route_table_entry::dst_iproute_table_entry::dst_seqroute_table_entry::hop_countinet_ntoa()route_table_entry::nextroute_table_entry::next_hopprint_precursors().

参照元 cleanup_route_table().

int read_monitor_proc char *  buffer,
char **  buffer_location,
off_t  offset,
int  buffer_length,
int *  eof,
void *  data
 

route_table.c360 行で定義されています。

参照先 route_table_entry::dst_iproute_table_entry::hop_countinet_ntoa()route_table_entry::nextroute_table_entry::next_hoproute_read_lock()route_read_unlock().

参照元 init_module().

int read_route_table_proc char *  buffer,
char **  buffer_location,
off_t  offset,
int  buffer_length,
int *  eof,
void *  data
 

route_table.c439 行で定義されています。

参照先 route_table_entry::dst_iproute_table_entry::dst_seqgetcurrtime()route_table_entry::hop_countinet_ntoa()precursor_entry::iproute_table_entry::lifetimeroute_table_entry::nextprecursor_entry::nextroute_table_entry::next_hoproute_table_entry::precursorsroute_read_lock()route_read_unlock()route_table_entry::route_validroute_table_entry::self_route.

参照元 init_module().

void reset_route_table_link  ) 
 

int update_route_entry u_int32_t  ip,
u_int32_t  next_hop_ip,
u_int8_t  hop_count,
u_int32_t  seq,
struct net_device *  dev
 

route_table.c758 行で定義されています。

参照先 ACTIVE_ROUTE_TIMEOUTcreate_route_table_entry()delete_kernel_route_entry()route_table_entry::devroute_table_entry::dst_iproute_table_entry::dst_seqfind_route_table_entry()getcurrtime()route_table_entry::hop_countinet_ntoa()insert_kernel_route_entry()ipq_send_ip()route_table_entry::lifetimeroute_table_entry::next_hoproute_table_entry::route_seq_validroute_table_entry::route_validroute_table_entry::self_routeseq_greater()TRUE.

参照元 recv_rrep()recv_rreq().


kernel_aodvmに対してThu Nov 10 18:53:12 2005に生成されました。  doxygen 1.4.5