]> git.ipfire.org Git - thirdparty/iproute2.git/commitdiff
do not exit silently when link is not found
authorCong Wang <xiyou.wangcong@gmail.com>
Tue, 3 Jun 2014 23:06:45 +0000 (16:06 -0700)
committerStephen Hemminger <stephen@networkplumber.org>
Mon, 9 Jun 2014 19:38:32 +0000 (12:38 -0700)
When we create a tunnel on top of a link and the link specified
in cmdline doesn't exist, an error message should be shown.

Cc: Stephen Hemminger <stephen@networkplumber.org>
Signed-off-by: Cong Wang <xiyou.wangcong@gmail.com>
ip/iplink_vxlan.c
ip/iptunnel.c
ip/link_gre.c
ip/link_gre6.c
ip/link_vti.c

index b9a516e1e477d596d3aae9d6862ea12dbc20dcf7..53c50accde893d973cb1483ab34fd5fc840b1975 100644 (file)
@@ -99,8 +99,11 @@ static int vxlan_parse_opt(struct link_util *lu, int argc, char **argv,
                } else if (!matches(*argv, "dev")) {
                        NEXT_ARG();
                        link = if_nametoindex(*argv);
-                       if (link == 0)
+                       if (link == 0) {
+                               fprintf(stderr, "Cannot find device \"%s\"\n",
+                                       *argv);
                                exit(-1);
+                       }
                } else if (!matches(*argv, "ttl") ||
                           !matches(*argv, "hoplimit")) {
                        unsigned uval;
index 9ae8847dca672f3e85fd4778bd221ce02e51dbc5..f96ce4582ca620e29f240f20f34669891fa0a641 100644 (file)
@@ -250,8 +250,11 @@ static int parse_args(int argc, char **argv, int cmd, struct ip_tunnel_parm *p)
 
        if (medium[0]) {
                p->link = if_nametoindex(medium);
-               if (p->link == 0)
+               if (p->link == 0) {
+                       fprintf(stderr, "Cannot find device \"%s\"\n",
+                               medium);
                        return -1;
+               }
        }
 
        if (p->i_key == 0 && IN_MULTICAST(ntohl(p->iph.daddr))) {
index 17478868e39884ea42fae2cafac7d2903507b52b..fda84d832f542b319ace8fe466f93c3891bf32cd 100644 (file)
@@ -207,8 +207,11 @@ get_failed:
                } else if (!matches(*argv, "dev")) {
                        NEXT_ARG();
                        link = if_nametoindex(*argv);
-                       if (link == 0)
+                       if (link == 0) {
+                               fprintf(stderr, "Cannot find device \"%s\"\n",
+                                       *argv);
                                exit(-1);
+                       }
                } else if (!matches(*argv, "ttl") ||
                           !matches(*argv, "hoplimit")) {
                        unsigned uval;
index 4c9c536538cc30041ad974e40b0ee9b45ccf23bc..c7183e2fd4e758e4bd138ece46d52ff55f808b8a 100644 (file)
@@ -225,8 +225,11 @@ get_failed:
                } else if (!matches(*argv, "dev")) {
                        NEXT_ARG();
                        link = if_nametoindex(*argv);
-                       if (link == 0)
+                       if (link == 0) {
+                               fprintf(stderr, "Cannot find device \"%s\"\n",
+                                       *argv);
                                exit(-1);
+                       }
                } else if (!matches(*argv, "ttl") ||
                           !matches(*argv, "hoplimit")) {
                        __u8 uval;
index 77a7482cc68983721add16a809d72944e7037a05..6274c836cb944b9c47aad6804b0395d8b08e190c 100644 (file)
@@ -171,8 +171,11 @@ get_failed:
                } else if (!matches(*argv, "dev")) {
                        NEXT_ARG();
                        link = if_nametoindex(*argv);
-                       if (link == 0)
+                       if (link == 0) {
+                               fprintf(stderr, "Cannot find device \"%s\"\n",
+                                       *argv);
                                exit(-1);
+                       }
                } else
                        usage();
                argc--; argv++;