svn commit: r193852 - projects/mesh11s/sys/net80211
Rui Paulo
rpaulo at FreeBSD.org
Tue Jun 9 20:16:23 UTC 2009
Author: rpaulo
Date: Tue Jun 9 20:16:22 2009
New Revision: 193852
URL: http://svn.freebsd.org/changeset/base/193852
Log:
Move code previously added to vdetach to vattach.
Add debugging to verify_meshconf()
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 Tue Jun 9 19:51:34 2009 (r193851)
+++ projects/mesh11s/sys/net80211/ieee80211_mesh.c Tue Jun 9 20:16:22 2009 (r193852)
@@ -117,8 +117,6 @@ static void
mesh_vdetach(struct ieee80211vap *vap)
{
ieee80211_hwmp_vdetach(vap);
- vap->iv_meshseq = 0;
- vap->iv_meshflags = (IEEE80211_MFLAGS_AP | IEEE80211_MFLAGS_FWRD);
}
static void
@@ -128,6 +126,8 @@ mesh_vattach(struct ieee80211vap *vap)
vap->iv_input = mesh_input;
vap->iv_opdetach = mesh_vdetach;
vap->iv_recv_mgmt = mesh_recv_mgmt;
+ vap->iv_meshseq = 0;
+ vap->iv_meshflags = (IEEE80211_MFLAGS_AP | IEEE80211_MFLAGS_FWRD);
ieee80211_hwmp_vattach(vap);
}
@@ -1043,21 +1043,53 @@ mesh_verify_meshconf(struct ieee80211vap
if (meshconf == NULL)
return 1;
- if (meshconf->conf_ver != IEEE80211_MESHCONF_VERSION)
+ if (meshconf->conf_ver != IEEE80211_MESHCONF_VERSION) {
+ IEEE80211_DPRINTF(vap, IEEE80211_MSG_MESH,
+ "wrong mesh conf version: %d\n", meshconf->conf_ver);
return 1;
- if (memcmp(meshconf->conf_pselid, hwmp, 4) != 0)
+ }
+ if (memcmp(meshconf->conf_pselid, hwmp, 4) != 0) {
+ IEEE80211_DPRINTF(vap, IEEE80211_MSG_MESH,
+ "unknown path selection algorithm: 0x%x%x%x%x\n",
+ meshconf->conf_pselid[0], meshconf->conf_pselid[1],
+ meshconf->conf_pselid[2], meshconf->conf_pselid[3]);
return 1;
- if (memcmp(meshconf->conf_pmetid, airtime, 4) != 0)
+ }
+ if (memcmp(meshconf->conf_pmetid, airtime, 4) != 0) {
+ IEEE80211_DPRINTF(vap, IEEE80211_MSG_MESH,
+ "unknown path metric algorithm: 0x%x%x%x%x\n",
+ meshconf->conf_pmetid[0], meshconf->conf_pmetid[1],
+ meshconf->conf_pmetid[2], meshconf->conf_pmetid[3]);
return 1;
- if (memcmp(meshconf->conf_ccid, null, 4) != 0)
+ }
+ if (memcmp(meshconf->conf_ccid, null, 4) != 0) {
+ IEEE80211_DPRINTF(vap, IEEE80211_MSG_MESH,
+ "unknown congestion sig algorithm: 0x%x%x%x%x\n",
+ meshconf->conf_ccid[0], meshconf->conf_ccid[1],
+ meshconf->conf_ccid[2], meshconf->conf_ccid[3]);
return 1;
- if (memcmp(meshconf->conf_syncid, null, 4) != 0)
+ }
+ if (memcmp(meshconf->conf_syncid, null, 4) != 0) {
+ IEEE80211_DPRINTF(vap, IEEE80211_MSG_MESH,
+ "unknown sync algorithm: 0x%x%x%x%x\n",
+ meshconf->conf_syncid[0], meshconf->conf_syncid[1],
+ meshconf->conf_syncid[2], meshconf->conf_syncid[3]);
return 1;
- if (memcmp(meshconf->conf_authid, null, 4) != 0)
+ }
+ if (memcmp(meshconf->conf_authid, null, 4) != 0) {
+ IEEE80211_DPRINTF(vap, IEEE80211_MSG_MESH,
+ "unknown auth auth algorithm: 0x%x%x%x%x\n",
+ meshconf->conf_pselid[0], meshconf->conf_pselid[1],
+ meshconf->conf_pselid[2], meshconf->conf_pselid[3]);
return 1;
+ }
/* Not accepting peers */
- if (!(meshconf->conf_cap & IEEE80211_MESHCONF_CAP_AP))
+ if (!(meshconf->conf_cap & IEEE80211_MESHCONF_CAP_AP)) {
+ IEEE80211_DPRINTF(vap, IEEE80211_MSG_MESH,
+ "not accepting peers: 0x%x\n", meshconf->conf_cap);
return 1;
+ }
+
return 0;
}
More information about the svn-src-projects
mailing list