# Re: \[PATCH iproute2-next v3 6/8\] iplink: Perform most of request buffer setups and checks in iplink\_parse()

- From: Serhey Popovych \<hidden\>
- Date: 2018-02-26 15:51:47 
- List: netdev
- Page: https://ratatoskr.run/netdev/2018/02/11085758
- Thread: https://ratatoskr.run/netdev/2018/02/11085004/t.md

```text
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 <redacted>
>> ---
>>  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.

```

## Attachments

- [signature.asc](https://ratatoskr.run/netdev/2018/02/11085758/attachment/0) (application/pgp-signature, 490 bytes)
