svn commit: r302202 - head/sys/net80211

Adrian Chadd adrian at FreeBSD.org
Sat Jun 25 20:31:22 UTC 2016


Author: adrian
Date: Sat Jun 25 20:31:20 2016
New Revision: 302202
URL: https://svnweb.freebsd.org/changeset/base/302202

Log:
  [net80211] re-revert the ibss "is this local to the bss" patch.
  
  avos@ pointed out to me that this broke IBSS merging because the rest of
  the input path no longer was called for non-IBSS frames.
  
  I committed a change to not input non-IBSS frames, which stopped
  nodes being created for BSSes that weren't ours.  Unfortunately
  thta stopped the input path for non-IBSS frames in general,
  so the management input path didn't work.
  
  So, I'll revert this until I come up with a better solution.
  (Hopefully before 11.)
  
  Reviewed by:	avos
  Approved by:	re (gjb)

Modified:
  head/sys/net80211/ieee80211_adhoc.c

Modified: head/sys/net80211/ieee80211_adhoc.c
==============================================================================
--- head/sys/net80211/ieee80211_adhoc.c	Sat Jun 25 20:20:24 2016	(r302201)
+++ head/sys/net80211/ieee80211_adhoc.c	Sat Jun 25 20:31:20 2016	(r302202)
@@ -371,7 +371,10 @@ adhoc_input(struct ieee80211_node *ni, s
 		/*
 		 * Validate the bssid.
 		 */
-		if (!IEEE80211_ADDR_EQ(bssid, vap->iv_bss->ni_bssid) &&
+		if (!(type == IEEE80211_FC0_TYPE_MGT &&
+		     (subtype == IEEE80211_FC0_SUBTYPE_BEACON ||
+		      subtype == IEEE80211_FC0_SUBTYPE_PROBE_RESP)) &&
+		    !IEEE80211_ADDR_EQ(bssid, vap->iv_bss->ni_bssid) &&
 		    !IEEE80211_ADDR_EQ(bssid, ifp->if_broadcastaddr)) {
 			/* not interested in */
 			IEEE80211_DISCARD_MAC(vap, IEEE80211_MSG_INPUT,


More information about the svn-src-all mailing list