The Netsukuku Project
0.0.9
An Alternative routing method
|
#include "includes.h"
#include "endianness.h"
#include "bmap.h"
#include "route.h"
#include "request.h"
#include "pkts.h"
#include "tracer.h"
#include "qspn.h"
#include "igs.h"
#include "netsukuku.h"
#include "common.h"
Functions | |
void | qspn_set_map_vars (u_char level, map_node **map, map_node **root_node, int *root_node_pos, map_gnode **gmap) |
void | qspn_time_reset (int start_level, int end_level, int levels) |
void | qspn_reset_counters (u_char levels) |
void | qspn_reset (u_char levels) |
void | qspn_init (u_char levels) |
void | qspn_free (void) |
void | qspn_b_clean (u_char level) |
int | qspn_b_add (struct qspn_buffer *qb, u_char replier, u_short flags) |
struct qspn_buffer * | qspn_b_find_rnode (struct qspn_buffer *qb, map_node *rnode) |
int | qspn_b_find_reply (struct qspn_buffer *qb, int sub_id) |
int | qspn_b_del_dead_rnodes (struct qspn_buffer **qb, map_node *root_node) |
void | qspn_b_del_all_dead_rnodes (void) |
int | qspn_round_left (u_char level) |
void | update_qspn_time (u_char level, u_int new_qspn_time) |
void | qspn_inc_gcount (u_int *gcount, int level, int inc) |
void | qspn_dec_gcount (u_int *gcount, int level, int dec) |
void | qspn_reset_gcount (u_int *gcount, int level, int value) |
void | qspn_backup_gcount (u_int *old_gcount, int *gcount) |
void | qspn_remove_deads (u_char level) |
void | qspn_new_round (u_char level, int new_qspn_id, u_int new_qspn_time) |
int | exclude_from_and_opened_and_glevel (ext_rnode *e_rnode, map_node *node, int from_rpos, int pos, u_char excl_level, int sub_id) |
int | exclude_from_and_glevel_and_closed (ext_rnode *e_rnode, map_node *node, int from_rpos, int pos, u_char excl_level, int sub_id) |
int | exclude_from_and_glevel_and_notstarter (ext_rnode *e_rnode, map_node *node, int from_rpos, int pos, u_char excl_level, int sub_id) |
int | qspn_send (u_char level) |
int | qspn_open_start (int from_rpos, PACKET pkt_to_all, int qspn_id, int root_node_pos, int gid, int level) |
int | qspn_unpack_pkt (PACKET rpkt, brdcast_hdr **new_bcast_hdr, tracer_hdr **new_tracer_hdr, tracer_chunk **new_tracer, bnode_hdr **new_bhdr, size_t *new_bblock_sz, quadro_group *rip_quadg, int *new_real_from_rpos, u_short *new_hops, u_char *new_upper_level, int *new_gid, map_node **new_from, map_node **new_root_node, map_node **new_tracer_starter, int *new_sub_id, int *new_root_node_pos, u_char *new_level, u_char *new_blevel, char *new_just_forward_it, char *new_do_real_qspn_action) |
int | qspn_close (PACKET rpkt) |
int | qspn_open (PACKET rpkt) |
int exclude_from_and_glevel_and_closed | ( | ext_rnode * | e_rnode, |
map_node * | node, | ||
int | from_rpos, | ||
int | pos, | ||
u_char | excl_level, | ||
int | sub_id | ||
) |
int exclude_from_and_glevel_and_notstarter | ( | ext_rnode * | e_rnode, |
map_node * | node, | ||
int | from_rpos, | ||
int | pos, | ||
u_char | excl_level, | ||
int | sub_id | ||
) |
int exclude_from_and_opened_and_glevel | ( | ext_rnode * | e_rnode, |
map_node * | node, | ||
int | from_rpos, | ||
int | pos, | ||
u_char | excl_level, | ||
int | sub_id | ||
) |
int qspn_b_add | ( | struct qspn_buffer * | qb, |
u_char | replier, | ||
u_short | flags | ||
) |
void qspn_b_clean | ( | u_char | level | ) |
void qspn_b_del_all_dead_rnodes | ( | void | ) |
int qspn_b_del_dead_rnodes | ( | struct qspn_buffer ** | qb, |
map_node * | root_node | ||
) |
int qspn_b_find_reply | ( | struct qspn_buffer * | qb, |
int | sub_id | ||
) |
struct qspn_buffer* qspn_b_find_rnode | ( | struct qspn_buffer * | qb, |
map_node * | rnode | ||
) |
void qspn_backup_gcount | ( | u_int * | old_gcount, |
int * | gcount | ||
) |
int qspn_close | ( | PACKET | rpkt | ) |
void qspn_dec_gcount | ( | u_int * | gcount, |
int | level, | ||
int | dec | ||
) |
void qspn_free | ( | void | ) |
void qspn_inc_gcount | ( | u_int * | gcount, |
int | level, | ||
int | inc | ||
) |
void qspn_init | ( | u_char | levels | ) |
void qspn_new_round | ( | u_char | level, |
int | new_qspn_id, | ||
u_int | new_qspn_time | ||
) |
int qspn_open | ( | PACKET | rpkt | ) |
int qspn_open_start | ( | int | from_rpos, |
PACKET | pkt_to_all, | ||
int | qspn_id, | ||
int | root_node_pos, | ||
int | gid, | ||
int | level | ||
) |
void qspn_remove_deads | ( | u_char | level | ) |
void qspn_reset | ( | u_char | levels | ) |
void qspn_reset_counters | ( | u_char | levels | ) |
void qspn_reset_gcount | ( | u_int * | gcount, |
int | level, | ||
int | value | ||
) |
int qspn_round_left | ( | u_char | level | ) |
int qspn_send | ( | u_char | level | ) |
void qspn_set_map_vars | ( | u_char | level, |
map_node ** | map, | ||
map_node ** | root_node, | ||
int * | root_node_pos, | ||
map_gnode ** | gmap | ||
) |
void qspn_time_reset | ( | int | start_level, |
int | end_level, | ||
int | levels | ||
) |
int qspn_unpack_pkt | ( | PACKET | rpkt, |
brdcast_hdr ** | new_bcast_hdr, | ||
tracer_hdr ** | new_tracer_hdr, | ||
tracer_chunk ** | new_tracer, | ||
bnode_hdr ** | new_bhdr, | ||
size_t * | new_bblock_sz, | ||
quadro_group * | rip_quadg, | ||
int * | new_real_from_rpos, | ||
u_short * | new_hops, | ||
u_char * | new_upper_level, | ||
int * | new_gid, | ||
map_node ** | new_from, | ||
map_node ** | new_root_node, | ||
map_node ** | new_tracer_starter, | ||
int * | new_sub_id, | ||
int * | new_root_node_pos, | ||
u_char * | new_level, | ||
u_char * | new_blevel, | ||
char * | new_just_forward_it, | ||
char * | new_do_real_qspn_action | ||
) |
void update_qspn_time | ( | u_char | level, |
u_int | new_qspn_time | ||
) |