From 2088f8c991de090e8b9e75ecbd416c98a511b214 Mon Sep 17 00:00:00 2001 From: cinap_lenrek Date: Fri, 12 Jan 2018 08:01:15 +0100 Subject: wifi: filter out loopback traffic from myself broadcast traffic was received back on the wire causing duplicate address detection to break with dmat proy as the rewritten broadcasts where observable. the fix is to just ignore packets from ourselfs received from the air. devether already handles loopback. --- sys/src/9/pc/wifi.c | 2 ++ 1 file changed, 2 insertions(+) (limited to 'sys/src') diff --git a/sys/src/9/pc/wifi.c b/sys/src/9/pc/wifi.c index 02adc6b69..27f70d7b5 100644 --- a/sys/src/9/pc/wifi.c +++ b/sys/src/9/pc/wifi.c @@ -100,6 +100,8 @@ wifiiq(Wifi *wifi, Block *b) hdrlen = wifihdrlen(w); if(BLEN(b) < hdrlen) goto drop; + if(memcmp(srcaddr(w), wifi->ether->ea, Eaddrlen) == 0) + goto drop; if(w->fc[1] & 0x40){ /* encrypted */ qpass(wifi->iq, b); -- cgit v1.2.3