pci: fix parsing of address without function number
authorThomas Monjalon <thomas@monjalon.net>
Sun, 11 Nov 2018 23:58:56 +0000 (00:58 +0100)
committerThomas Monjalon <thomas@monjalon.net>
Tue, 13 Nov 2018 16:59:42 +0000 (17:59 +0100)
commit31f19a9beb8d88b67be6e469404081eb834d199c
treec51ec760290f6e23b41124d8d43470bb81b2980a
parent9eca8bd7a61cc3a0bd29e2ddd493915902bb98a5
pci: fix parsing of address without function number

If the last part of the PCI address (function number) is missing,
the parsing was successful, assuming function 0.
The call to strtoul is not returning an error in such a case,
so an explicit check is inserted before.

This bug has always been there in older parsing macros:
- GET_PCIADDR_FIELD
- GET_BLACKLIST_FIELD

Fixes: af75078fece3 ("first public release")
Cc: stable@dpdk.org
Reported-by: Wisam Jaddo <wisamm@mellanox.com>
Signed-off-by: Thomas Monjalon <thomas@monjalon.net>
Acked-by: Gaetan Rivet <gaetan.rivet@6wind.com>
lib/librte_pci/rte_pci.c