diff options
author | Johannes Berg <johannes.berg@intel.com> | 2011-10-27 08:45:02 -0400 |
---|---|---|
committer | John W. Linville <linville@tuxdriver.com> | 2011-11-09 16:00:59 -0500 |
commit | ef100682814c429709f0904b757595e25019cb31 (patch) | |
tree | 60afaeb0de107b24430f870bd626c691e983a216 /include/net/cfg80211.h | |
parent | c74d084f914e16e42730bcf625ab3f37a4cae8d4 (diff) |
cfg80211: annotate cfg80211_inform_bss
This function returns a referenced BSS struct
(or NULL), annotate with __must_check. It seems
that a lot of drivers get this completely wrong
and leak all BSS structs as a result.
Reported-by: Adam Mikuta <Adam.Mikuta@tieto.com>
Signed-off-by: Johannes Berg <johannes.berg@intel.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
Diffstat (limited to 'include/net/cfg80211.h')
-rw-r--r-- | include/net/cfg80211.h | 8 |
1 files changed, 6 insertions, 2 deletions
diff --git a/include/net/cfg80211.h b/include/net/cfg80211.h index 95852e36713b..0c71d4a30cd6 100644 --- a/include/net/cfg80211.h +++ b/include/net/cfg80211.h | |||
@@ -2636,8 +2636,10 @@ void cfg80211_sched_scan_stopped(struct wiphy *wiphy); | |||
2636 | * | 2636 | * |
2637 | * This informs cfg80211 that BSS information was found and | 2637 | * This informs cfg80211 that BSS information was found and |
2638 | * the BSS should be updated/added. | 2638 | * the BSS should be updated/added. |
2639 | * | ||
2640 | * NOTE: Returns a referenced struct, must be released with cfg80211_put_bss()! | ||
2639 | */ | 2641 | */ |
2640 | struct cfg80211_bss* | 2642 | struct cfg80211_bss * __must_check |
2641 | cfg80211_inform_bss_frame(struct wiphy *wiphy, | 2643 | cfg80211_inform_bss_frame(struct wiphy *wiphy, |
2642 | struct ieee80211_channel *channel, | 2644 | struct ieee80211_channel *channel, |
2643 | struct ieee80211_mgmt *mgmt, size_t len, | 2645 | struct ieee80211_mgmt *mgmt, size_t len, |
@@ -2659,8 +2661,10 @@ cfg80211_inform_bss_frame(struct wiphy *wiphy, | |||
2659 | * | 2661 | * |
2660 | * This informs cfg80211 that BSS information was found and | 2662 | * This informs cfg80211 that BSS information was found and |
2661 | * the BSS should be updated/added. | 2663 | * the BSS should be updated/added. |
2664 | * | ||
2665 | * NOTE: Returns a referenced struct, must be released with cfg80211_put_bss()! | ||
2662 | */ | 2666 | */ |
2663 | struct cfg80211_bss* | 2667 | struct cfg80211_bss * __must_check |
2664 | cfg80211_inform_bss(struct wiphy *wiphy, | 2668 | cfg80211_inform_bss(struct wiphy *wiphy, |
2665 | struct ieee80211_channel *channel, | 2669 | struct ieee80211_channel *channel, |
2666 | const u8 *bssid, | 2670 | const u8 *bssid, |