diff options
author | Javier Cardona <javier@cozybit.com> | 2011-04-07 18:08:27 -0400 |
---|---|---|
committer | John W. Linville <linville@tuxdriver.com> | 2011-04-12 16:57:37 -0400 |
commit | 581a8b0feeed8877aab3a8ca4c972419790cd07f (patch) | |
tree | 36ef0e86b367e0abeb0a50fbf59840f125efdbc7 /net/mac80211/cfg.c | |
parent | a22e93f5d819f11d2a2d6332e20ff5b462e5c208 (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.c | 15 |
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 | } |