Skip site navigation (1)Skip section navigation (2)
Date:      Sat, 25 Oct 2008 23:28:04 +0000 (UTC)
From:      Sam Leffler <sam@FreeBSD.org>
To:        src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org
Subject:   svn commit: r184271 - head/sys/net80211
Message-ID:  <200810252328.m9PNS4n4060205@svn.freebsd.org>

next in thread | raw e-mail | index | archive | help
Author: sam
Date: Sat Oct 25 23:28:04 2008
New Revision: 184271
URL: http://svn.freebsd.org/changeset/base/184271

Log:
  fix associd check for adhoc mode
  
  Reviewed by:	jhay

Modified:
  head/sys/net80211/ieee80211_output.c

Modified: head/sys/net80211/ieee80211_output.c
==============================================================================
--- head/sys/net80211/ieee80211_output.c	Sat Oct 25 23:26:57 2008	(r184270)
+++ head/sys/net80211/ieee80211_output.c	Sat Oct 25 23:28:04 2008	(r184271)
@@ -203,24 +203,19 @@ ieee80211_start(struct ifnet *ifp)
 			continue;
 		}
 		/* XXX AUTH'd */
-		if (ni->ni_associd == 0) {
-			/*
-			 * Destination is not associated; must special
-			 * case DWDS where we point iv_bss at the node
-			 * for the associated station.
-			 * XXX adhoc mode?
-			 */
-			if (ni != vap->iv_bss || IS_DWDS(vap)) {
-				IEEE80211_DISCARD_MAC(vap, IEEE80211_MSG_OUTPUT,
-				    eh->ether_dhost, NULL,
-				    "sta not associated (type 0x%04x)",
-				    htons(eh->ether_type));
-				vap->iv_stats.is_tx_notassoc++;
-				ifp->if_oerrors++;
-				m_freem(m);
-				ieee80211_free_node(ni);
-				continue;
-			}
+		/* XXX mark vap to identify if associd is required */
+		if (ni->ni_associd == 0 &&
+		    (vap->iv_opmode == IEEE80211_M_STA ||
+		     vap->iv_opmode == IEEE80211_M_HOSTAP || IS_DWDS(vap))) {
+			IEEE80211_DISCARD_MAC(vap, IEEE80211_MSG_OUTPUT,
+			    eh->ether_dhost, NULL,
+			    "sta not associated (type 0x%04x)",
+			    htons(eh->ether_type));
+			vap->iv_stats.is_tx_notassoc++;
+			ifp->if_oerrors++;
+			m_freem(m);
+			ieee80211_free_node(ni);
+			continue;
 		}
 		if ((ni->ni_flags & IEEE80211_NODE_PWR_MGT) &&
 		    (m->m_flags & M_PWR_SAV) == 0) {



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200810252328.m9PNS4n4060205>