TSCH: filter out frames from ourselves
This commit is contained in:
parent
e3f1b67096
commit
4cc64ea942
@ -849,8 +849,12 @@ PT_THREAD(tsch_rx_slot(struct pt *pt, struct rtimer *t))
|
||||
#endif /* LLSEC802154_ENABLED */
|
||||
|
||||
if(frame_valid) {
|
||||
if(linkaddr_cmp(&destination_address, &linkaddr_node_addr)
|
||||
|| linkaddr_cmp(&destination_address, &linkaddr_null)) {
|
||||
/* Check that frome is for us or broadcast, AND that it is not from
|
||||
* ourselves. This is for consistency with CSMA and to avoid adding
|
||||
* ourselves to neighbor tables in case frames are being replayed. */
|
||||
if((linkaddr_cmp(&destination_address, &linkaddr_node_addr)
|
||||
|| linkaddr_cmp(&destination_address, &linkaddr_null))
|
||||
&& !linkaddr_cmp(&source_address, &linkaddr_node_addr)) {
|
||||
int do_nack = 0;
|
||||
rx_count++;
|
||||
estimated_drift = RTIMER_CLOCK_DIFF(expected_rx_time, rx_start_time);
|
||||
|
Loading…
Reference in New Issue
Block a user