cfg80211: fix possible memory leak in regdb_query_country()
authorweiyongjun (A) <weiyongjun1@huawei.com>
Fri, 30 Mar 2018 02:07:05 +0000 (02:07 +0000)
committerJohannes Berg <johannes.berg@intel.com>
Thu, 19 Apr 2018 15:02:53 +0000 (17:02 +0200)
'wmm_ptrs' is malloced in regdb_query_country() and should be freed
before leaving from the error handling cases, otherwise it will cause
memory leak.

Fixes: 230ebaa189af ("cfg80211: read wmm rules from regulatory database")
Signed-off-by: Wei Yongjun <weiyongjun1@huawei.com>
[johannes: add Fixes tag]
Signed-off-by: Johannes Berg <johannes.berg@intel.com>
net/wireless/reg.c

index 16c7e4ef58207cc781b80ef9bb3242ead81001a0..ac3e12c32aa30053a110d6a46f5bb813d660c8b6 100644 (file)
@@ -1026,6 +1026,7 @@ static int regdb_query_country(const struct fwdb_header *db,
 
                        if (!tmp_rd) {
                                kfree(regdom);
+                               kfree(wmm_ptrs);
                                return -ENOMEM;
                        }
                        regdom = tmp_rd;