diff options
author | Ray Kinsella <mdr@ashroe.eu> | 2021-11-02 13:18:49 +0000 |
---|---|---|
committer | Damjan Marion <dmarion@me.com> | 2021-11-02 22:25:40 +0000 |
commit | 4b1e76b8e6f8d9ae7a3455402e4cb179b693a925 (patch) | |
tree | ebe55d85ebdbf888761aa8254780bb6091209571 | |
parent | 6eb0f84e37d84caeb9db773976df5ab3a7e794d0 (diff) |
vlib: allocate pci product_name with vec_alloc
The pci device product_name array was being allocated with vec_validate, not
vec_alloc. This was allocating an additional byte at the end of the array, which
was causing a spurious '\0' to be returned in the middle of format strings.
Type: fix
Fixes: cef87f1a5e
Signed-off-by: Ray Kinsella <mdr@ashroe.eu>
Change-Id: I21e0aa4f0455ee03bd0acc675d0deae02eddea2b
-rw-r--r-- | src/vlib/linux/pci.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/src/vlib/linux/pci.c b/src/vlib/linux/pci.c index 7c18505bbfc..1e5ab67b25d 100644 --- a/src/vlib/linux/pci.c +++ b/src/vlib/linux/pci.c @@ -347,7 +347,7 @@ vlib_pci_get_device_info (vlib_main_t * vm, vlib_pci_addr_t * addr, break; len = (tag[2] << 8) | tag[1]; - vec_validate (data, len); + vec_alloc (data, len); if (read (fd, data, len) != len) { |