Subject: CVS commit: src/sys/net80211
To: None <source-changes@NetBSD.org>
From: Charles M. Hannum <mycroft@netbsd.org>
List: source-changes
Date: 07/29/2004 22:28:05
Module Name:	src
Committed By:	mycroft
Date:		Thu Jul 29 22:28:05 UTC 2004

Modified Files:
	src/sys/net80211: ieee80211_input.c ieee80211_node.c ieee80211_node.h

Log Message:
Implement passive scanning for APs in station and host-AP mode:
  ieee80211_input():
  * Do not discard management frames in station mode just because they have
    the wrong BSSID.
  * Do not discard beacons in station and host-AP mode when not scanning.
  * Some minor rearrangement.  Update node statistics even if the packet is
    rejected.
  ieee80211_recv_mgmt():
  * Accept probe responses and beacons in station and host-AP even when not
    scanning.
  * Do not immediately free the node created by a beacon or probe response.
XXX Should I check BSSIDs more carefully in ieee80211_recv_mgmt() --
specifically for ASSOC_RESP, REASSOC_RESP, AUTH, DEAUTH and DISASSOC?

Fix a problem with APs that advertise multiple SSIDs:
Change the footprint of ieee80211_find_node_with_channel() to take a SSID as
well, and, if not empty, compared it with the existing nodes.  This causes
us to allocate multiple nodes for the same AP.  Without this we were only
leaving one SSID in the node table, which might not be the desired one, and
so the interface would fail to fully initialize.  (Reported by he@ with a
Cisco 350 AP.)


To generate a diff of this commit:
cvs rdiff -r1.32 -r1.33 src/sys/net80211/ieee80211_input.c
cvs rdiff -r1.29 -r1.30 src/sys/net80211/ieee80211_node.c
cvs rdiff -r1.12 -r1.13 src/sys/net80211/ieee80211_node.h

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.