Giving invalid or zero portmask as command line option to
packet_ordering application will have an unexpected response.
The reason behind this is that parse_portmask's return value is
stored in a variable called portmask.The data type of portmask
is unsigned int, hence returning -1 in case of zero or invalid
portmask causes an unexpected behaviour.
If we return 0 instead of -1 this issue can be resolved.
The program already contains the functionality to print
"invalid portmask" and program usage if portmask is zero.
Fixes: 850f3733f840 ("examples/packet_ordering: new sample app")
Signed-off-by: Sarosh Arif <sarosh.arif@emumba.com>
---
examples/packet_ordering/main.c | 5 +----
1 file changed, 1 insertion(+), 4 deletions(-)
diff --git a/examples/packet_ordering/main.c b/examples/packet_ordering/main.c
index edaf810d9..b5fc6c54b 100644
--- a/examples/packet_ordering/main.c
+++ b/examples/packet_ordering/main.c
@@ -143,10 +143,7 @@ parse_portmask(const char *portmask)
/* parse hexadecimal string */
pm = strtoul(portmask, &end, 16);
if ((portmask[0] == '\0') || (end == NULL) || (*end != '\0'))
- return -1;
-
- if (pm == 0)
- return -1;
+ return 0;
return pm;
}
--
2.17.1