57 #ifndef ROUTE_DISCOVERY_H_
58 #define ROUTE_DISCOVERY_H_
64 struct route_discovery_conn;
66 struct route_discovery_callbacks {
67 void (* new_route)(
struct route_discovery_conn *c,
const linkaddr_t *to);
68 void (* timedout)(
struct route_discovery_conn *c);
71 #define ROUTE_DISCOVERY_ENTRIES 8
73 struct route_discovery_conn {
74 struct netflood_conn rreqconn;
75 struct unicast_conn rrepconn;
77 linkaddr_t last_rreq_originator;
78 uint16_t last_rreq_id;
80 const struct route_discovery_callbacks *cb;
83 void route_discovery_open(
struct route_discovery_conn *c, clock_time_t time,
85 const struct route_discovery_callbacks *callbacks);
86 void route_discovery_explicit_open(
struct route_discovery_conn *c, clock_time_t time,
87 uint16_t netflood_channel,
88 uint16_t unicast_channel,
89 const struct route_discovery_callbacks *callbacks);
90 int route_discovery_discover(
struct route_discovery_conn *c,
const linkaddr_t *dest,
91 clock_time_t timeout);
93 void route_discovery_close(
struct route_discovery_conn *c);
Header file for the best-effort network flooding (netflood)
Header file for Rime's single-hop unicast
Header file for the callback timer