summaryrefslogtreecommitdiff
path: root/zebra/main.c
diff options
context:
space:
mode:
authorQuentin Young <qlyoung@cumulusnetworks.com>2020-04-04 23:26:19 -0400
committerQuentin Young <qlyoung@cumulusnetworks.com>2020-04-04 23:26:19 -0400
commit1e03d6bc760861ea954f8485604eba67fd05f7c0 (patch)
tree3842a7999582e37b62b00dd7fcefa0898879a1ad /zebra/main.c
parentcd05906c41aaaf94e06fa9d14a7634bdffd99ed0 (diff)
bgpd, zebra: don't compare unsigned < 0
Signed-off-by: Quentin Young <qlyoung@cumulusnetworks.com>
Diffstat (limited to 'zebra/main.c')
-rw-r--r--zebra/main.c14
1 files changed, 9 insertions, 5 deletions
diff --git a/zebra/main.c b/zebra/main.c
index 306372ccdb..fb7e926c5c 100644
--- a/zebra/main.c
+++ b/zebra/main.c
@@ -331,17 +331,21 @@ int main(int argc, char **argv)
case 'a':
allow_delete = 1;
break;
- case 'e':
- zrouter.multipath_num = atoi(optarg);
- if (zrouter.multipath_num > MULTIPATH_NUM
- || zrouter.multipath_num <= 0) {
+ case 'e': {
+ unsigned long int parsed_multipath =
+ strtoul(optarg, NULL, 10);
+ if (parsed_multipath == 0
+ || parsed_multipath > MULTIPATH_NUM
+ || parsed_multipath > UINT32_MAX) {
flog_err(
EC_ZEBRA_BAD_MULTIPATH_NUM,
- "Multipath Number specified must be less than %d and greater than 0",
+ "Multipath Number specified must be less than %u and greater than 0",
MULTIPATH_NUM);
return 1;
}
+ zrouter.multipath_num = parsed_multipath;
break;
+ }
case 'o':
vrf_default_name_configured = optarg;
break;