aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/net/wireless/bcmdhd/dhd_common.c
diff options
context:
space:
mode:
authorDmitry Shmidt <dimitrysh@google.com>2011-08-03 14:11:58 -0700
committerDmitry Shmidt <dimitrysh@google.com>2011-08-03 15:09:47 -0700
commit043cda23f791e3aedf16737100511656f8392412 (patch)
treeb8acfdfab96910585f18e3740fddd6fe4e63064d /drivers/net/wireless/bcmdhd/dhd_common.c
parent7d64f70835ae2fa1df219e5196306bce57077123 (diff)
downloadkernel_samsung_crespo-043cda23f791e3aedf16737100511656f8392412.zip
kernel_samsung_crespo-043cda23f791e3aedf16737100511656f8392412.tar.gz
kernel_samsung_crespo-043cda23f791e3aedf16737100511656f8392412.tar.bz2
net: wireless: bcmdhd: Improve arp_hostip_table processing
Signed-off-by: Dmitry Shmidt <dimitrysh@google.com>
Diffstat (limited to 'drivers/net/wireless/bcmdhd/dhd_common.c')
-rw-r--r--drivers/net/wireless/bcmdhd/dhd_common.c20
1 files changed, 9 insertions, 11 deletions
diff --git a/drivers/net/wireless/bcmdhd/dhd_common.c b/drivers/net/wireless/bcmdhd/dhd_common.c
index 2a68965..c50f053 100644
--- a/drivers/net/wireless/bcmdhd/dhd_common.c
+++ b/drivers/net/wireless/bcmdhd/dhd_common.c
@@ -1486,11 +1486,8 @@ void dhd_arp_offload_add_ip(dhd_pub_t *dhd, uint32 ipaddr)
__FUNCTION__));
}
-
int dhd_arp_get_arp_hostip_table(dhd_pub_t *dhd, void *buf, int buflen)
{
-#define MAX_IPV4_ENTRIES 8
-
int retcode, i;
int iov_len = 0;
uint32 *ptr32 = buf;
@@ -1502,27 +1499,28 @@ int dhd_arp_get_arp_hostip_table(dhd_pub_t *dhd, void *buf, int buflen)
iov_len = bcm_mkiovar("arp_hostip", 0, 0, buf, buflen);
retcode = dhd_wl_ioctl_cmd(dhd, WLC_GET_VAR, buf, buflen, TRUE, 0);
+ if (retcode) {
+ DHD_TRACE(("%s: ioctl WLC_GET_VAR error %d\n",
+ __FUNCTION__, retcode));
+
+ return -1;
+ }
+
/* clean up the buf, ascii reminder */
for (i = 0; i < MAX_IPV4_ENTRIES; i++) {
-
if (!clr_bottom) {
if (*ptr32 == 0)
- clr_bottom = TRUE;
+ clr_bottom = TRUE;
} else {
*ptr32 = 0;
}
ptr32++;
}
- if (retcode) {
- DHD_TRACE(("%s: ioctl WLC_GET_VAR error %d\n",
- __FUNCTION__, retcode));
-
- return -1;
- }
return 0;
}
#endif /* ARP_OFFLOAD_SUPPORT */
+
int
dhd_preinit_ioctls(dhd_pub_t *dhd)
{