ip: iplink: Convert to use parse_on_off()
Invoke parse_on_off() instead of rolling a custom function. Signed-off-by: Petr Machata <me@pmachata.org> Signed-off-by: David Ahern <dsahern@gmail.com>
This commit is contained in:
parent
94d12fd796
commit
5f685d064b
47
ip/iplink.c
47
ip/iplink.c
|
|
@ -352,6 +352,7 @@ static int iplink_parse_vf(int vf, int *argcp, char ***argvp,
|
||||||
int len, argc = *argcp;
|
int len, argc = *argcp;
|
||||||
char **argv = *argvp;
|
char **argv = *argvp;
|
||||||
struct rtattr *vfinfo;
|
struct rtattr *vfinfo;
|
||||||
|
int ret;
|
||||||
|
|
||||||
tivt.min_tx_rate = -1;
|
tivt.min_tx_rate = -1;
|
||||||
tivt.max_tx_rate = -1;
|
tivt.max_tx_rate = -1;
|
||||||
|
|
@ -464,12 +465,9 @@ static int iplink_parse_vf(int vf, int *argcp, char ***argvp,
|
||||||
struct ifla_vf_spoofchk ivs;
|
struct ifla_vf_spoofchk ivs;
|
||||||
|
|
||||||
NEXT_ARG();
|
NEXT_ARG();
|
||||||
if (matches(*argv, "on") == 0)
|
ivs.setting = parse_on_off("spoofchk", *argv, &ret);
|
||||||
ivs.setting = 1;
|
if (ret)
|
||||||
else if (matches(*argv, "off") == 0)
|
return ret;
|
||||||
ivs.setting = 0;
|
|
||||||
else
|
|
||||||
return on_off("spoofchk", *argv);
|
|
||||||
ivs.vf = vf;
|
ivs.vf = vf;
|
||||||
addattr_l(&req->n, sizeof(*req), IFLA_VF_SPOOFCHK,
|
addattr_l(&req->n, sizeof(*req), IFLA_VF_SPOOFCHK,
|
||||||
&ivs, sizeof(ivs));
|
&ivs, sizeof(ivs));
|
||||||
|
|
@ -478,12 +476,9 @@ static int iplink_parse_vf(int vf, int *argcp, char ***argvp,
|
||||||
struct ifla_vf_rss_query_en ivs;
|
struct ifla_vf_rss_query_en ivs;
|
||||||
|
|
||||||
NEXT_ARG();
|
NEXT_ARG();
|
||||||
if (matches(*argv, "on") == 0)
|
ivs.setting = parse_on_off("query_rss", *argv, &ret);
|
||||||
ivs.setting = 1;
|
if (ret)
|
||||||
else if (matches(*argv, "off") == 0)
|
return ret;
|
||||||
ivs.setting = 0;
|
|
||||||
else
|
|
||||||
return on_off("query_rss", *argv);
|
|
||||||
ivs.vf = vf;
|
ivs.vf = vf;
|
||||||
addattr_l(&req->n, sizeof(*req), IFLA_VF_RSS_QUERY_EN,
|
addattr_l(&req->n, sizeof(*req), IFLA_VF_RSS_QUERY_EN,
|
||||||
&ivs, sizeof(ivs));
|
&ivs, sizeof(ivs));
|
||||||
|
|
@ -492,12 +487,9 @@ static int iplink_parse_vf(int vf, int *argcp, char ***argvp,
|
||||||
struct ifla_vf_trust ivt;
|
struct ifla_vf_trust ivt;
|
||||||
|
|
||||||
NEXT_ARG();
|
NEXT_ARG();
|
||||||
if (matches(*argv, "on") == 0)
|
ivt.setting = parse_on_off("trust", *argv, &ret);
|
||||||
ivt.setting = 1;
|
if (ret)
|
||||||
else if (matches(*argv, "off") == 0)
|
return ret;
|
||||||
ivt.setting = 0;
|
|
||||||
else
|
|
||||||
invarg("Invalid \"trust\" value\n", *argv);
|
|
||||||
ivt.vf = vf;
|
ivt.vf = vf;
|
||||||
addattr_l(&req->n, sizeof(*req), IFLA_VF_TRUST,
|
addattr_l(&req->n, sizeof(*req), IFLA_VF_TRUST,
|
||||||
&ivt, sizeof(ivt));
|
&ivt, sizeof(ivt));
|
||||||
|
|
@ -595,6 +587,7 @@ int iplink_parse(int argc, char **argv, struct iplink_req *req, char **type)
|
||||||
int index = 0;
|
int index = 0;
|
||||||
int group = -1;
|
int group = -1;
|
||||||
int addr_len = 0;
|
int addr_len = 0;
|
||||||
|
int err;
|
||||||
|
|
||||||
ret = argc;
|
ret = argc;
|
||||||
|
|
||||||
|
|
@ -738,12 +731,9 @@ int iplink_parse(int argc, char **argv, struct iplink_req *req, char **type)
|
||||||
int carrier;
|
int carrier;
|
||||||
|
|
||||||
NEXT_ARG();
|
NEXT_ARG();
|
||||||
if (strcmp(*argv, "on") == 0)
|
carrier = parse_on_off("carrier", *argv, &err);
|
||||||
carrier = 1;
|
if (err)
|
||||||
else if (strcmp(*argv, "off") == 0)
|
return err;
|
||||||
carrier = 0;
|
|
||||||
else
|
|
||||||
return on_off("carrier", *argv);
|
|
||||||
|
|
||||||
addattr8(&req->n, sizeof(*req), IFLA_CARRIER, carrier);
|
addattr8(&req->n, sizeof(*req), IFLA_CARRIER, carrier);
|
||||||
} else if (strcmp(*argv, "vf") == 0) {
|
} else if (strcmp(*argv, "vf") == 0) {
|
||||||
|
|
@ -896,12 +886,9 @@ int iplink_parse(int argc, char **argv, struct iplink_req *req, char **type)
|
||||||
unsigned int proto_down;
|
unsigned int proto_down;
|
||||||
|
|
||||||
NEXT_ARG();
|
NEXT_ARG();
|
||||||
if (strcmp(*argv, "on") == 0)
|
proto_down = parse_on_off("protodown", *argv, &err);
|
||||||
proto_down = 1;
|
if (err)
|
||||||
else if (strcmp(*argv, "off") == 0)
|
return err;
|
||||||
proto_down = 0;
|
|
||||||
else
|
|
||||||
return on_off("protodown", *argv);
|
|
||||||
addattr8(&req->n, sizeof(*req), IFLA_PROTO_DOWN,
|
addattr8(&req->n, sizeof(*req), IFLA_PROTO_DOWN,
|
||||||
proto_down);
|
proto_down);
|
||||||
} else if (strcmp(*argv, "protodown_reason") == 0) {
|
} else if (strcmp(*argv, "protodown_reason") == 0) {
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue