wifi: brcmfmac: fix format-truncation warnings
authorKalle Valo <kvalo@kernel.org>
Thu, 12 Oct 2023 13:58:52 +0000 (16:58 +0300)
committerKalle Valo <kvalo@kernel.org>
Mon, 23 Oct 2023 17:24:39 +0000 (20:24 +0300)
On v6.6-rc4 with GCC 13.2 I see:

drivers/net/wireless/broadcom/brcm80211/brcmfmac/firmware.c:262:52: warning: '%d' directive output may be truncated writing between 1 and 5 bytes into a region of size 4 [-Wformat-truncation=]
drivers/net/wireless/broadcom/brcm80211/brcmfmac/firmware.c:262:46: note: directive argument in the range [0, 65535]
drivers/net/wireless/broadcom/brcm80211/brcmfmac/firmware.c:262:46: note: directive argument in the range [0, 65535]
drivers/net/wireless/broadcom/brcm80211/brcmfmac/firmware.c:262:9: note: 'snprintf' output between 9 and 17 bytes into a destination of size 9
drivers/net/wireless/broadcom/brcm80211/brcmfmac/firmware.c:265:55: warning: '%d' directive output may be truncated writing between 1 and 5 bytes into a region of size 4 [-Wformat-truncation=]
drivers/net/wireless/broadcom/brcm80211/brcmfmac/firmware.c:265:48: note: directive argument in the range [0, 65535]
drivers/net/wireless/broadcom/brcm80211/brcmfmac/firmware.c:265:48: note: directive argument in the range [0, 65535]
drivers/net/wireless/broadcom/brcm80211/brcmfmac/firmware.c:265:9: note: 'snprintf' output between 10 and 18 bytes into a destination of size 10
drivers/net/wireless/broadcom/brcm80211/brcmfmac/firmware.c:342:50: warning: '/' directive output may be truncated writing 1 byte into a region of size between 0 and 4 [-Wformat-truncation=]
drivers/net/wireless/broadcom/brcm80211/brcmfmac/firmware.c:342:42: note: directive argument in the range [0, 65535]
drivers/net/wireless/broadcom/brcm80211/brcmfmac/firmware.c:342:9: note: 'snprintf' output between 10 and 18 bytes into a destination of size 10

Fix these by increasing the buffer sizes to 20 bytes to make sure there's enough space.

Compile tested only.

Signed-off-by: Kalle Valo <kvalo@kernel.org>
Link: https://lore.kernel.org/r/20231012135854.3473332-1-kvalo@kernel.org
drivers/net/wireless/broadcom/brcm80211/brcmfmac/firmware.c

index 09d2f2dc2b46f82f9839872a3b7b4dd3cd9ece5b..83f8ed7d00f96c055df2f22db9d71539ec5dcc06 100644 (file)
@@ -19,7 +19,7 @@
 
 #define BRCMF_FW_MAX_NVRAM_SIZE                        64000
 #define BRCMF_FW_NVRAM_DEVPATH_LEN             19      /* devpath0=pcie/1/4/ */
-#define BRCMF_FW_NVRAM_PCIEDEV_LEN             10      /* pcie/1/4/ + \0 */
+#define BRCMF_FW_NVRAM_PCIEDEV_LEN             20      /* pcie/1/4/ + \0 */
 #define BRCMF_FW_DEFAULT_BOARDREV              "boardrev=0xff"
 #define BRCMF_FW_MACADDR_FMT                   "macaddr=%pM"
 #define BRCMF_FW_MACADDR_LEN                   (7 + ETH_ALEN * 3)
@@ -238,9 +238,9 @@ static void brcmf_fw_strip_multi_v1(struct nvram_parser *nvp, u16 domain_nr,
                                    u16 bus_nr)
 {
        /* Device path with a leading '=' key-value separator */
-       char pci_path[] = "=pci/?/?";
+       char pci_path[20];
        size_t pci_len;
-       char pcie_path[] = "=pcie/?/?";
+       char pcie_path[20];
        size_t pcie_len;
 
        u32 i, j;