[Skiboot] [PATCH v3 4/7] core/pci: pci_slot_add_loc use null-terminated strings
Nicholas Piggin
npiggin at gmail.com
Wed May 8 16:17:49 AEST 2019
Use null-terminated strings consistently, making the maximum string
length in all cases the same, and avoiding dt_add_property_nstr.
This avoids the following warning that appears after adding more
checking to string ops:
core/pci-slot.c: In function ‘pci_slot_add_loc’:
skiboot/libc/include/string.h:19:17: warning: ‘__builtin_strncpy’
specified bound 80 equals destination size [-Wstringop-truncation]
#define strncpy __builtin_strncpy
core/pci-slot.c:244:3: note: in expansion of macro ‘strncpy’
strncpy(loc_code, label, sizeof(loc_code));
^~~~~~~
Signed-off-by: Nicholas Piggin <npiggin at gmail.com>
---
core/pci-slot.c | 6 +++---
1 file changed, 3 insertions(+), 3 deletions(-)
diff --git a/core/pci-slot.c b/core/pci-slot.c
index 497d0a47f..d8c80241f 100644
--- a/core/pci-slot.c
+++ b/core/pci-slot.c
@@ -241,10 +241,10 @@ void pci_slot_add_loc(struct pci_slot *slot,
snprintf(loc_code, sizeof(loc_code), "%s-%s",
phb->base_loc_code, label);
} else {
- strncpy(loc_code, label, sizeof(loc_code));
+ strncpy(loc_code, label, sizeof(loc_code) - 1);
+ loc_code[LOC_CODE_SIZE - 1] = '\0';
}
dt_add_property_string(np, "ibm,slot-label", label);
- dt_add_property_nstr(np, "ibm,slot-location-code", loc_code,
- sizeof(loc_code));
+ dt_add_property_string(np, "ibm,slot-location-code", loc_code);
}
--
2.20.1
More information about the Skiboot
mailing list