Fix memleaks in driver_broadcom.c (thanks framer99)

SVN-Revision: 1182
owl
Nicolas Thill 2005-06-10 05:55:28 +00:00
parent e091c662cc
commit 9fa7d26d60
2 changed files with 37 additions and 1 deletions

View File

@ -4,7 +4,7 @@ include $(TOPDIR)/rules.mk
PKG_NAME:=wpa_supplicant
PKG_VERSION:=0.3.8
PKG_RELEASE:=1
PKG_RELEASE:=2
PKG_MD5SUM:=c9ced104f0322f834a84336c293b4b57
PKG_SOURCE_URL:=http://hostap.epitest.fi/releases/

View File

@ -0,0 +1,36 @@
Fixes some memory leaks in driver_broadom.c
http://openwrt.org/forum/viewtopic.php?pid=8217#p8217
Thanks Greg (framer99)
--- wpa_supplicant-0.3.8/driver_broadcom.c.orig 2005-01-22 05:35:13.000000000 +0100
+++ wpa_supplicant-0.3.8/driver_broadcom.c 2005-06-10 08:50:14.000000000 +0200
@@ -289,6 +289,7 @@
wwh->type);
break;
}
+ free(data.assoc_info.resp_ies);
}
static void * wpa_driver_broadcom_init(void *ctx, const char *ifname)
@@ -449,8 +450,10 @@
wsr->count = 0;
if (broadcom_ioctl(drv, WLC_SCAN_RESULTS, buf, WLC_IOCTL_MAXLEN) <
- 0)
+ 0) {
+ free(buf);
return -1;
+ }
memset(results, 0, max_size * sizeof(struct wpa_scan_result));
@@ -490,6 +493,7 @@
wpa_printf(MSG_MSGDUMP, "Received %d bytes of scan results (%d BSSes)",
wsr->buflen, ap_num);
+ free(buf);
return ap_num;
}