svn commit: r195308 - projects/mesh11s/sys/net80211

Rui Paulo rpaulo at FreeBSD.org
Fri Jul 3 14:43:30 UTC 2009


Author: rpaulo
Date: Fri Jul  3 14:43:29 2009
New Revision: 195308
URL: http://svn.freebsd.org/changeset/base/195308

Log:
  Add HWMP case labels.
  
  Sponsored by:	The FreeBSD Foundation

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

Modified: projects/mesh11s/sys/net80211/ieee80211_action.c
==============================================================================
--- projects/mesh11s/sys/net80211/ieee80211_action.c	Fri Jul  3 14:37:10 2009	(r195307)
+++ projects/mesh11s/sys/net80211/ieee80211_action.c	Fri Jul  3 14:43:29 2009	(r195308)
@@ -69,6 +69,10 @@ static ieee80211_send_action_func *meshp
 static ieee80211_send_action_func *meshlm_send_action[4] = {
 	send_inval, send_inval, send_inval, send_inval,
 };
+static ieee80211_send_action_func *hwmp_send_action[8] = {
+	send_inval, send_inval, send_inval, send_inval,
+	send_inval, send_inval, send_inval, send_inval,
+};
 static ieee80211_send_action_func *vendor_send_action[8] = {
 	send_inval, send_inval, send_inval, send_inval,
 	send_inval, send_inval, send_inval, send_inval,
@@ -99,6 +103,11 @@ ieee80211_send_action_register(int cat, 
 			break;
 		meshlm_send_action[act] = f;
 		return 0;
+	case IEEE80211_ACTION_CAT_MESHPATH:
+		if (act > N(hwmp_send_action))
+			break;
+		hwmp_send_action[act] = f;
+		return 0;
 	case IEEE80211_ACTION_CAT_VENDOR:
 		if (act >= N(vendor_send_action))
 			break;
@@ -138,6 +147,10 @@ ieee80211_send_action(struct ieee80211_n
 		if (act < N(meshlm_send_action))
 			f = meshlm_send_action[act];
 		break;
+	case IEEE80211_ACTION_CAT_MESHPATH:
+		if (act < N(hwmp_send_action))
+			f = hwmp_send_action[act];
+		break;
 	case IEEE80211_ACTION_CAT_VENDOR:
 		if (act < N(vendor_send_action))
 			f = vendor_send_action[act];
@@ -169,6 +182,10 @@ static ieee80211_recv_action_func *meshp
 static ieee80211_recv_action_func *meshlm_recv_action[4] = {
 	recv_inval, recv_inval, recv_inval, recv_inval,
 };
+static ieee80211_recv_action_func *hwmp_recv_action[8] = {
+	recv_inval, recv_inval, recv_inval, recv_inval,
+	recv_inval, recv_inval, recv_inval, recv_inval,
+};
 static ieee80211_recv_action_func *vendor_recv_action[8] = {
 	recv_inval, recv_inval, recv_inval, recv_inval,
 	recv_inval, recv_inval, recv_inval, recv_inval,
@@ -199,6 +216,11 @@ ieee80211_recv_action_register(int cat, 
 			break;
 		meshlm_recv_action[act] = f;
 		return 0;
+	case IEEE80211_ACTION_CAT_MESHPATH:
+		if (act >= N(hwmp_recv_action))
+			break;
+		hwmp_recv_action[act] = f;
+		return 0;
 	case IEEE80211_ACTION_CAT_VENDOR:
 		if (act >= N(vendor_recv_action))
 			break;
@@ -241,6 +263,10 @@ ieee80211_recv_action(struct ieee80211_n
 		if (ia->ia_action < N(meshlm_recv_action))
 			f = meshlm_recv_action[ia->ia_action];
 		break;
+	case IEEE80211_ACTION_CAT_MESHPATH:
+		if (ia->ia_action < N(hwmp_recv_action))
+			f = hwmp_recv_action[ia->ia_action];
+		break;
 	case IEEE80211_ACTION_CAT_VENDOR:
 		if (ia->ia_action < N(vendor_recv_action))
 			f = vendor_recv_action[ia->ia_action];


More information about the svn-src-projects mailing list