From 6ad623a3f77e087e308f334525fd4046811f2a9a Mon Sep 17 00:00:00 2001 From: Lennart Poettering Date: Mon, 2 Nov 2015 23:57:21 +0100 Subject: parse-util: introduce parse_ifindex() and make use of it everywhere We have enough places where we parse an ifindex, hence introduce a proper parsing function for it, that verifies all parameters. --- src/resolve-host/resolve-host.c | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) (limited to 'src/resolve-host/resolve-host.c') diff --git a/src/resolve-host/resolve-host.c b/src/resolve-host/resolve-host.c index 57739d1f3e..432e62dd9f 100644 --- a/src/resolve-host/resolve-host.c +++ b/src/resolve-host/resolve-host.c @@ -300,8 +300,7 @@ static int parse_address(const char *s, int *family, union in_addr_union *addres percent = strchr(s, '%'); if (percent) { - r = safe_atoi(percent+1, &ifi); - if (r < 0 || ifi <= 0) { + if (parse_ifindex(percent+1, &ifi) < 0) { ifi = if_nametoindex(percent+1); if (ifi <= 0) return -EINVAL; @@ -521,7 +520,7 @@ static int parse_argv(int argc, char *argv[]) { case 'i': { int ifi; - if (safe_atoi(optarg, &ifi) >= 0 && ifi > 0) + if (parse_ifindex(optarg, &ifi) >= 0) arg_ifindex = ifi; else { ifi = if_nametoindex(optarg); -- cgit v1.2.3-54-g00ecf