82 #define NETFLOOD_ATTRIBUTES { PACKETBUF_ADDR_ESENDER, PACKETBUF_ADDRSIZE }, \
83 { PACKETBUF_ATTR_HOPS, PACKETBUF_ATTR_BIT * 5 }, \
84 { PACKETBUF_ATTR_EPACKET_ID, PACKETBUF_ATTR_BIT * 4 }, \
87 struct netflood_callbacks {
88 int (* recv)(
struct netflood_conn *c,
const linkaddr_t *from,
89 const linkaddr_t *originator, uint8_t seqno, uint8_t hops);
90 void (* sent)(
struct netflood_conn *c);
91 void (* dropped)(
struct netflood_conn *c);
94 struct netflood_conn {
96 const struct netflood_callbacks *u;
97 clock_time_t queue_time;
98 linkaddr_t last_originator;
99 uint8_t last_originator_seqno;
102 void netflood_open(
struct netflood_conn *c, clock_time_t queue_time,
103 uint16_t channel,
const struct netflood_callbacks *u);
104 void netflood_close(
struct netflood_conn *c);
106 int netflood_send(
struct netflood_conn *c, uint8_t seqno);
Header file for Ipolite best effort local Broadcast (ipolite)
An opaque structure with no user-visible elements that holds the state of an ipolite connection...
Header file for the Rime queue buffer management