diff --git a/ip/iplink.c b/ip/iplink.c index b4307ab7..6d3ebdee 100644 --- a/ip/iplink.c +++ b/ip/iplink.c @@ -964,6 +964,12 @@ static int iplink_modify(int cmd, unsigned int flags, int argc, char **argv) argc -= ret; argv += ret; + if (!(flags & NLM_F_CREATE) && index) { + fprintf(stderr, + "index can be used only when creating devices.\n"); + exit(-1); + } + if (group != -1) { if (dev) addattr_l(&req.n, sizeof(req), IFLA_GROUP, @@ -994,11 +1000,6 @@ static int iplink_modify(int cmd, unsigned int flags, int argc, char **argv) "Not enough information: \"dev\" argument is required.\n"); exit(-1); } - if (cmd == RTM_NEWLINK && index) { - fprintf(stderr, - "index can be used only when creating devices.\n"); - exit(-1); - } req.i.ifi_index = ll_name_to_index(dev); if (!req.i.ifi_index)