diff options
Diffstat (limited to 'net/mac80211/mlme.c')
-rw-r--r-- | net/mac80211/mlme.c | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/net/mac80211/mlme.c b/net/mac80211/mlme.c index 54a2a1db98a3..87743e47a05f 100644 --- a/net/mac80211/mlme.c +++ b/net/mac80211/mlme.c | |||
@@ -2492,6 +2492,13 @@ int ieee80211_sta_set_extra_ie(struct ieee80211_sub_if_data *sdata, | |||
2492 | { | 2492 | { |
2493 | struct ieee80211_if_managed *ifmgd = &sdata->u.mgd; | 2493 | struct ieee80211_if_managed *ifmgd = &sdata->u.mgd; |
2494 | 2494 | ||
2495 | if (len == 0 && ifmgd->extra_ie_len == 0) | ||
2496 | return -EALREADY; | ||
2497 | |||
2498 | if (len == ifmgd->extra_ie_len && ifmgd->extra_ie && | ||
2499 | memcmp(ifmgd->extra_ie, ie, len) == 0) | ||
2500 | return -EALREADY; | ||
2501 | |||
2495 | kfree(ifmgd->extra_ie); | 2502 | kfree(ifmgd->extra_ie); |
2496 | if (len == 0) { | 2503 | if (len == 0) { |
2497 | ifmgd->extra_ie = NULL; | 2504 | ifmgd->extra_ie = NULL; |