[PATCH 30/31] staging: brcm80211: simpler string handling in brcmf_c_pktfilter_offload_set()

Arend van Spriel arend at broadcom.com
Tue Jul 5 22:02:57 UTC 2011


From: Roland Vossen <rvossen at broadcom.com>

Replaced two functions with strcpy().

Reported-by: Dan Carpenter <error27 at gmail.com>
Signed-off-by: Arend van Spriel <arend at broadcom.com>
---
 drivers/staging/brcm80211/brcmfmac/dhd_common.c |   11 ++---------
 1 files changed, 2 insertions(+), 9 deletions(-)

diff --git a/drivers/staging/brcm80211/brcmfmac/dhd_common.c b/drivers/staging/brcm80211/brcmfmac/dhd_common.c
index c37128d..fdec468 100644
--- a/drivers/staging/brcm80211/brcmfmac/dhd_common.c
+++ b/drivers/staging/brcm80211/brcmfmac/dhd_common.c
@@ -958,13 +958,7 @@ void brcmf_c_pktfilter_offload_set(struct brcmf_pub *drvr, char *arg)
 		goto fail;
 	}
 
-	memcpy(arg_save, arg, strlen(arg) + 1);
-
-	if (strlen(arg) > PKTFILTER_BUF_SIZE) {
-		BRCMF_ERROR(("Not enough buffer %d < %d\n", (int)strlen(arg),
-			     (int)sizeof(buf)));
-		goto fail;
-	}
+	strcpy(arg_save, arg);
 
 	argv[i] = strsep(&arg_save, " ");
 	while (argv[i++])
@@ -977,9 +971,8 @@ void brcmf_c_pktfilter_offload_set(struct brcmf_pub *drvr, char *arg)
 	}
 
 	str = "pkt_filter_add";
+	strcpy(buf, str);
 	str_len = strlen(str);
-	strncpy(buf, str, str_len);
-	buf[str_len] = '\0';
 	buf_len = str_len + 1;
 
 	pkt_filterp = (struct brcmf_pkt_filter *) (buf + str_len + 1);
-- 
1.7.4.1





More information about the devel mailing list