svn commit: r195110 - projects/mesh11s/sys/net80211
Rui Paulo
rpaulo at FreeBSD.org
Sat Jun 27 16:49:35 UTC 2009
Author: rpaulo
Date: Sat Jun 27 16:49:35 2009
New Revision: 195110
URL: http://svn.freebsd.org/changeset/base/195110
Log:
Add a prototype struct for the extensibility code in mesh vaps.
Sponsored by: The FreeBSD Foundation
Modified:
projects/mesh11s/sys/net80211/ieee80211_mesh.h
Modified: projects/mesh11s/sys/net80211/ieee80211_mesh.h
==============================================================================
--- projects/mesh11s/sys/net80211/ieee80211_mesh.h Sat Jun 27 16:48:07 2009 (r195109)
+++ projects/mesh11s/sys/net80211/ieee80211_mesh.h Sat Jun 27 16:49:35 2009 (r195110)
@@ -371,6 +371,25 @@ struct ieee80211_meshcntl_ae11 {
};
#ifdef _KERNEL
+struct ieee80211_mesh_proto {
+ /* Action frame categories to intercept */
+ uint8_t mpr_actpath;
+ uint8_t mpr_actlinkmetric;
+ /* Values to be sent in the Mesh Configuration IE */
+ uint8_t mpr_pathid[4];
+ uint8_t mpr_metricid[4];
+ uint8_t mpr_congid[4];
+ uint8_t mpr_syncid[4];
+ uint8_t mpr_authid[4];
+ void (*mpr_recv_action)(struct ieee80211vap *,
+ struct ieee80211_node *, struct mbuf *);
+ struct ieee80211_node * (*mpr_discover)(struct ieee80211vap *,
+ uint8_t [IEEE80211_ADDR_LEN], struct mbuf *);
+ struct ieee80211_node * (*mpr_find_txnode)(struct ieee80211vap *vap,
+ uint8_t dest[IEEE80211_ADDR_LEN]);
+ uint32_t (*mpr_linkmetric)(struct ieee80211_node *);
+ /* XXX needs more methods */
+};
struct ieee80211_mesh_state {
int ms_idlen;
uint8_t ms_id[IEEE80211_MESHID_LEN];
@@ -380,7 +399,7 @@ struct ieee80211_mesh_state {
#define IEEE80211_MESHFLAGS_PORTAL 0x02 /* mesh portal role */
#define IEEE80211_MESHFLAGS_FWD 0x04 /* forward packets */
uint8_t ms_flags;
-
+ struct ieee80211_mesh_proto *ms_proto;
};
void ieee80211_mesh_attach(struct ieee80211com *);
void ieee80211_mesh_detach(struct ieee80211com *);
More information about the svn-src-projects
mailing list