From: Zhang Shengju Date: Wed, 26 Apr 2017 07:08:39 +0000 (+0800) Subject: iplink: add support for IFLA_CARRIER attribute X-Git-Tag: v4.11.0~11 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=432b92a70287e54db6217510f97d4669582933b1;p=thirdparty%2Fiproute2.git iplink: add support for IFLA_CARRIER attribute Add support to set IFLA_CARRIER attribute. Signed-off-by: Zhang Shengju --- diff --git a/ip/iplink.c b/ip/iplink.c index 866ad723f..263bfdde5 100644 --- a/ip/iplink.c +++ b/ip/iplink.c @@ -72,6 +72,7 @@ void iplink_usage(void) " [ allmulticast { on | off } ]\n" " [ promisc { on | off } ]\n" " [ trailers { on | off } ]\n" + " [ carrier { on | off } ]\n" " [ txqueuelen PACKETS ]\n" " [ name NEWNAME ]\n" " [ address LLADDR ]\n" @@ -673,6 +674,17 @@ int iplink_parse(int argc, char **argv, struct iplink_req *req, req->i.ifi_flags |= IFF_NOARP; else return on_off("arp", *argv); + } else if (strcmp(*argv, "carrier") == 0) { + int carrier; + NEXT_ARG(); + if (strcmp(*argv, "on") == 0) + carrier = 1; + else if (strcmp(*argv, "off") == 0) + carrier = 0; + else + return on_off("carrier", *argv); + + addattr8(&req->n, sizeof(*req), IFLA_CARRIER, carrier); } else if (strcmp(*argv, "vf") == 0) { struct rtattr *vflist;