aboutsummaryrefslogtreecommitdiffstats
path: root/net/mac80211/cfg.c
diff options
context:
space:
mode:
authorJavier Cardona <javier@cozybit.com>2011-04-07 18:08:27 -0400
committerJohn W. Linville <linville@tuxdriver.com>2011-04-12 16:57:37 -0400
commit581a8b0feeed8877aab3a8ca4c972419790cd07f (patch)
tree36ef0e86b367e0abeb0a50fbf59840f125efdbc7 /net/mac80211/cfg.c
parenta22e93f5d819f11d2a2d6332e20ff5b462e5c208 (diff)
nl80211: rename NL80211_MESH_SETUP_VENDOR_PATH_SEL_IE
To NL80211_MESH_SETUP_IE. This reflects our ability to insert any ie into a mesh beacon, not simply path selection ies. Signed-off-by: Javier Cardona <javier@cozybit.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
Diffstat (limited to 'net/mac80211/cfg.c')
-rw-r--r--net/mac80211/cfg.c15
1 files changed, 7 insertions, 8 deletions
diff --git a/net/mac80211/cfg.c b/net/mac80211/cfg.c
index bf5d28da46e6..d9428afd8bf6 100644
--- a/net/mac80211/cfg.c
+++ b/net/mac80211/cfg.c
@@ -1034,26 +1034,25 @@ static int copy_mesh_setup(struct ieee80211_if_mesh *ifmsh,
1034 u8 *new_ie; 1034 u8 *new_ie;
1035 const u8 *old_ie; 1035 const u8 *old_ie;
1036 1036
1037 /* first allocate the new vendor information element */ 1037 /* allocate information elements */
1038 new_ie = NULL; 1038 new_ie = NULL;
1039 old_ie = ifmsh->vendor_ie; 1039 old_ie = ifmsh->ie;
1040 1040
1041 ifmsh->vendor_ie_len = setup->vendor_ie_len; 1041 if (setup->ie_len) {
1042 if (setup->vendor_ie_len) { 1042 new_ie = kmemdup(setup->ie, setup->ie_len,
1043 new_ie = kmemdup(setup->vendor_ie, setup->vendor_ie_len,
1044 GFP_KERNEL); 1043 GFP_KERNEL);
1045 if (!new_ie) 1044 if (!new_ie)
1046 return -ENOMEM; 1045 return -ENOMEM;
1047 } 1046 }
1047 ifmsh->ie_len = setup->ie_len;
1048 ifmsh->ie = new_ie;
1049 kfree(old_ie);
1048 1050
1049 /* now copy the rest of the setup parameters */ 1051 /* now copy the rest of the setup parameters */
1050 ifmsh->mesh_id_len = setup->mesh_id_len; 1052 ifmsh->mesh_id_len = setup->mesh_id_len;
1051 memcpy(ifmsh->mesh_id, setup->mesh_id, ifmsh->mesh_id_len); 1053 memcpy(ifmsh->mesh_id, setup->mesh_id, ifmsh->mesh_id_len);
1052 ifmsh->mesh_pp_id = setup->path_sel_proto; 1054 ifmsh->mesh_pp_id = setup->path_sel_proto;
1053 ifmsh->mesh_pm_id = setup->path_metric; 1055 ifmsh->mesh_pm_id = setup->path_metric;
1054 ifmsh->vendor_ie = new_ie;
1055
1056 kfree(old_ie);
1057 1056
1058 return 0; 1057 return 0;
1059} 1058}