#ifndef RT_H #define RT_H #include #include #include #include #include #include #include #include #include #include "aodv.h" #include "utils.h" #include "rerr.h" #include "flood_id_queue.h" #include "packet_queue.h" struct route_table_entry *get_first_route_table_entry(); struct route_table_entry *create_route_table_entry(); struct route_table_entry *find_route_table_entry(u_int32_t tmp_ip); struct route_table_entry *fast_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); struct precursor_entry* find_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); struct 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_signal_proc(char *buffer, char **buffer_location, off_t offset, int buffer_length,int *eof,void *data); 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(); #endif