 5195136002
			
		
	
	5195136002
	
	
	
		
			
			Include kernel version to help tracking changes.
Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
(cherry picked from commit f7a3459ab9)
		
	
		
			
				
	
	
		
			39 lines
		
	
	
		
			1.5 KiB
		
	
	
	
		
			Diff
		
	
	
	
	
	
			
		
		
	
	
			39 lines
		
	
	
		
			1.5 KiB
		
	
	
	
		
			Diff
		
	
	
	
	
	
| From cb18e2e9ec71d42409a51b83546686c609780dde Mon Sep 17 00:00:00 2001
 | |
| From: Rasmus Villemoes <linux@rasmusvillemoes.dk>
 | |
| Date: Wed, 22 Aug 2018 15:22:15 +0200
 | |
| Subject: [PATCH] brcmfmac: fix wrong strnchr usage
 | |
| 
 | |
| strnchr takes arguments in the order of its name: string, max bytes to
 | |
| read, character to search for. Here we're passing '\n' aka 10 as the
 | |
| buffer size, and searching for sizeof(buf) aka BRCMF_DCMD_SMLEN aka
 | |
| 256 (aka '\0', since it's implicitly converted to char) within those 10
 | |
| bytes.
 | |
| 
 | |
| Just interchanging the last two arguments would still leave a bug,
 | |
| because if we've been successful once, there are not sizeof(buf)
 | |
| characters left after the new value of p.
 | |
| 
 | |
| Since clmver is immediately afterwards passed as a %s argument, I assume
 | |
| that it is actually a properly nul-terminated string. For that case, we
 | |
| have strreplace().
 | |
| 
 | |
| Signed-off-by: Rasmus Villemoes <linux@rasmusvillemoes.dk>
 | |
| Signed-off-by: Kalle Valo <kvalo@codeaurora.org>
 | |
| ---
 | |
|  drivers/net/wireless/broadcom/brcm80211/brcmfmac/common.c | 4 +---
 | |
|  1 file changed, 1 insertion(+), 3 deletions(-)
 | |
| 
 | |
| --- a/drivers/net/wireless/broadcom/brcm80211/brcmfmac/common.c
 | |
| +++ b/drivers/net/wireless/broadcom/brcm80211/brcmfmac/common.c
 | |
| @@ -296,9 +296,7 @@ int brcmf_c_preinit_dcmds(struct brcmf_i
 | |
|  		/* Replace all newline/linefeed characters with space
 | |
|  		 * character
 | |
|  		 */
 | |
| -		ptr = clmver;
 | |
| -		while ((ptr = strnchr(ptr, '\n', sizeof(buf))) != NULL)
 | |
| -			*ptr = ' ';
 | |
| +		strreplace(clmver, '\n', ' ');
 | |
|  
 | |
|  		brcmf_dbg(INFO, "CLM version = %s\n", clmver);
 | |
|  	}
 |