On Tue, 20 Feb 2018 21:39:51 +0200 Serhey Popovych <serhe.popov...@gmail.com> wrote:
> Signed-off-by: Serhey Popovych <serhe.popov...@gmail.com> > --- > ip/iplink.c | 12 ++++++------ > 1 file changed, 6 insertions(+), 6 deletions(-) > > diff --git a/ip/iplink.c b/ip/iplink.c > index 74c377c..a2c8108 100644 > --- a/ip/iplink.c > +++ b/ip/iplink.c > @@ -653,7 +653,7 @@ int iplink_parse(int argc, char **argv, struct iplink_req > *req, > NEXT_ARG(); > if (xdp_parse(&argc, &argv, req, dev_index, > generic, drv, offload)) > - exit(-1); > + return -1; > } else if (strcmp(*argv, "netns") == 0) { > NEXT_ARG(); > if (netns != -1) > @@ -972,12 +972,12 @@ static int iplink_modify(int cmd, unsigned int flags, > int argc, char **argv) > if (!dev) { > fprintf(stderr, > "Not enough information: \"dev\" argument is > required.\n"); > - exit(-1); > + return -1; > } > if (cmd == RTM_NEWLINK && index) { > fprintf(stderr, > "index can be used only when creating > devices.\n"); > - exit(-1); > + return -1; > } > > req.i.ifi_index = ll_name_to_index(dev); > @@ -1392,7 +1392,7 @@ static int do_set(int argc, char **argv) > if (!dev) { > fprintf(stderr, > "Not enough of information: \"dev\" argument is > required.\n"); > - exit(-1); > + return -1; > } > > if (newaddr || newbrd) { > @@ -1553,7 +1553,7 @@ static int iplink_afstats(int argc, char **argv) > fprintf(stderr, > "Command \"%s\" is unknown, try \"ip link > help\".\n", > *argv); > - exit(-1); > + return -1; > } > > argv++; argc--; > @@ -1648,5 +1648,5 @@ int do_iplink(int argc, char **argv) > > fprintf(stderr, "Command \"%s\" is unknown, try \"ip link help\".\n", > *argv); > - exit(-1); > + return -1; > } Not sure I like this. If given bad input in batch it is better to stop and exit rather than continuing with more bad data.