David Ahern wrote: > On 2/22/18 6:02 AM, Serhey Popovych wrote: >> To benefit other users (e.g. link_veth.c) of iplink_parse() from >> additional attribute checks and setups made in iplink_modify(). This >> catches most of weired cobination of parameters to peer device >> configuration. >> >> Drop @link, @group and @index from iplink_parse() parameters list: they >> are not needed outside. >> >> While there change return -1 to exit(-1) for group parsing errors: we >> want to stop further command processing unless -force option is given >> to get error line easily. >> >> Signed-off-by: Serhey Popovych <serhe.popov...@gmail.com> >> --- >> ip/ip_common.h | 3 +- >> ip/iplink.c | 118 >> +++++++++++++++++++++++++---------------------------- >> ip/iplink_vxcan.c | 13 +----- >> ip/link_veth.c | 13 +----- >> 4 files changed, 59 insertions(+), 88 deletions(-) >> > > IMO veth and vxcan should not be re-using iplink_parse since they only > want a subset of the parsing. >
In kernel we call rtnl_create_link() and rtnl_configure_link() to configure peer device from VETH_INFO_PEER. Also we use ifla_policy from net/core/rtnetlink.c with lots of parameters. Agree not all of them needed/used for veth, but at the moment dropping iplink_parse() from vxcan and veth in iproute2 without corresponding change may restrict functionality.
Description: OpenPGP digital signature