26 #define TRACER_RQ_TIMEOUT 16
34 #define TRCR_IGW (1<<1)
48 {
sizeof(u_char),
sizeof(u_char)+
sizeof(u_short) },
62 {
sizeof(char),
sizeof(
char)+
sizeof(u_int) },
65 #define TRACERPKT_SZ(hops) (sizeof(tracer_hdr)+(sizeof(tracer_chunk)*(hops)))
66 #define TRACER_HDR_PTR(msg) ((tracer_hdr *)(((char *)BRDCAST_HDR_PTR((msg)))+sizeof(brdcast_hdr)))
67 #define TRACER_CHUNK_PTR(msg) ((tracer_chunk *)(((char *)TRACER_HDR_PTR(msg))+sizeof(tracer_hdr)))
75 tracer_chunk *tracer, u_int *hops, u_char level);
79 tracer_chunk *tracer, u_int *trtt);
81 tracer_chunk *,
void *,
size_t, u_short *,
char **,
size_t *);
84 int tracer_pkt_build(u_char,
int,
int,
int, u_char, brdcast_hdr *, tracer_hdr *,
85 tracer_chunk *, u_short,
char *,
size_t,
PACKET *);
98 #define TRACER_PKT_EXCLUDE_VARS ext_rnode *e_rnode, map_node *node, \
99 int from_rpos, int pos, \
100 u_char excl_level, int sub_id
101 #define TRACER_PKT_EXCLUDE_VARS_NAME e_rnode, node, from_rpos, pos, \
104 int sub_id,
int from_rpos,
PACKET pkt);
int tracer_unpack_pkt(PACKET, brdcast_hdr **, tracer_hdr **, tracer_chunk **, bnode_hdr **, size_t *, quadro_group *, int *)
Definition: tracer.c:645
int tracer_add_rtt(int rpos, tracer_chunk *tracer, u_short hop)
Definition: tracer.c:242
static const int_info tracer_chunk_iinfo
Definition: tracer.h:60
tracer_chunk * tracer_add_entry(void *void_map, void *void_node, tracer_chunk *tracer, u_int *hops, u_char level)
Definition: tracer.c:163
#define INT_TYPE_16BIT
Definition: endianness.h:36
int tracer_get_trtt(int from_rnode_pos, tracer_hdr *trcr_hdr, tracer_chunk *tracer, u_int *trtt)
Definition: tracer.c:254
u_short hops
Definition: tracer.h:43
int exclude_from(ext_rnode *e_rnode, map_node *node, int from_rpos, int pos, u_char excl_level, int sub_id)
Definition: tracer.c:1359
u_int gcount
Definition: tracer.h:57
int ip_to_rfrom(inet_prefix rip, quadro_group *rip_quadg, quadro_group *new_quadg, char quadg_flags)
Definition: tracer.c:45
#define TRACER_PKT_EXCLUDE_VARS
Definition: tracer.h:98
int exclude_all_but_notfrom(ext_rnode *e_rnode, map_node *node, int from_rpos, int pos, u_char excl_level, int sub_id)
Definition: tracer.c:1367
int exclude_glevel(ext_rnode *e_rnode, map_node *node, int from_rpos, int pos, u_char excl_level, int sub_id)
Definition: tracer.c:1340
int tracer_pkt_start_mutex
Definition: tracer.h:69
int tracer_store_pkt(inet_prefix, quadro_group *, u_char, tracer_hdr *, tracer_chunk *, void *, size_t, u_short *, char **, size_t *)
Definition: tracer.c:1069
#define INT_INFO
Definition: endianness.h:90
int tracer_pkt_start(u_char level)
Definition: tracer.c:1516
u_short tracer_split_bblock(void *, size_t, bnode_hdr ***, bnode_chunk ****, size_t *)
Definition: tracer.c:747
static const int_info tracer_hdr_iinfo
Definition: tracer.h:46
int flood_pkt_send(int(*is_node_excluded)(ext_rnode *e_rnode, map_node *node, int from_rpos, int pos, u_char excl_level, int sub_id), u_char level, int sub_id, int from_rpos, PACKET pkt)
Definition: tracer.c:1277
int exclude_from_and_glevel(ext_rnode *e_rnode, map_node *node, int from_rpos, int pos, u_char excl_level, int sub_id)
Definition: tracer.c:1374
int flags
Definition: if.c:39
#define INT_TYPE_32BIT
Definition: endianness.h:35
int tracer_pkt_build(u_char, int, int, int, u_char, brdcast_hdr *, tracer_hdr *, tracer_chunk *, u_short, char *, size_t, PACKET *)
Definition: tracer.c:429
u_char node
Definition: tracer.h:53
u_short first_qspn_open_chunk
Definition: tracer.h:44
int tracer_pkt_recv(PACKET rpkt)
Definition: tracer.c:1388