Skip site navigation (1)Skip section navigation (2)
Date:      Mon, 8 Jun 2009 11:24:23 +0000 (UTC)
From:      Rui Paulo <rpaulo@FreeBSD.org>
To:        src-committers@freebsd.org, svn-src-projects@freebsd.org
Subject:   svn commit: r193708 - projects/mesh11s/sys/net80211
Message-ID:  <200906081124.n58BONDC027970@svn.freebsd.org>

next in thread | raw e-mail | index | archive | help
Author: rpaulo
Date: Mon Jun  8 11:24:23 2009
New Revision: 193708
URL: http://svn.freebsd.org/changeset/base/193708

Log:
  Accept from ds frames.
  
  Sponsored by:	The FreeBSD Foundation

Modified:
  projects/mesh11s/sys/net80211/ieee80211_mesh.c

Modified: projects/mesh11s/sys/net80211/ieee80211_mesh.c
==============================================================================
--- projects/mesh11s/sys/net80211/ieee80211_mesh.c	Mon Jun  8 11:21:09 2009	(r193707)
+++ projects/mesh11s/sys/net80211/ieee80211_mesh.c	Mon Jun  8 11:24:23 2009	(r193708)
@@ -282,6 +282,13 @@ mesh_input(struct ieee80211_node *ni, st
 			    "peer link not yet established (%s)",
 			    nodemeshstates[ni->ni_mlstate]);
 		}	
+		if (dir != IEEE80211_FC1_DIR_FROMDS &&
+		    dir != IEEE80211_FC1_DIR_DSTODS) {
+			IEEE80211_DISCARD(vap, IEEE80211_MSG_INPUT,
+			    wh, "data", "incorrect dir 0x%x", dir);
+			vap->iv_stats.is_rx_wrongdir++;
+			goto err;
+		}
 		/* NB: not ieee80211_hdrspace, datapad is not honored */
 		hdrlen = ieee80211_hdrsize(wh)
 		    + sizeof(struct ieee80211_meshcntl);
@@ -293,12 +300,6 @@ mesh_input(struct ieee80211_node *ni, st
 			vap->iv_stats.is_rx_tooshort++;
 			goto out;		/* XXX */
 		}
-		if (dir != IEEE80211_FC1_DIR_DSTODS) {
-			IEEE80211_DISCARD(vap, IEEE80211_MSG_INPUT,
-			    wh, "data", "incorrect dir 0x%x", dir);
-			vap->iv_stats.is_rx_wrongdir++;
-			goto err;
-		}
 		/*
 		 * Save QoS bits for use below--before we strip the header.
 		 */



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