[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Message-Id: <1520412039-17154-1-git-send-email-serhe.popovych@gmail.com>
Date: Wed, 7 Mar 2018 10:40:35 +0200
From: Serhey Popovych <serhe.popovych@...il.com>
To: netdev@...r.kernel.org
Cc: dsahern@...il.com
Subject: [PATCH iproute2-next v4 0/4] iplink: Improve iplink_parse()
This is main routine to parse ip-link(8) configuration parameters.
Move all code related to command line parsing and validation to it from
iptables_modify(). As benefit we reduce number of arguments as well as
checking for most of weired cases in single place to give benefit to
iptables_parse() users.
See individual patch description message for more information.
v4
Drop patches intended to reduce number of arguments to
iptables_parse(): postpone to the series with real use cases.
Save only ifi_index in iplink_vxcan.c and link_veth.c: no need
to save whole ifinfomsg data structure.
Note that there is no sense to introduce custom version of
iplink_parse() to use in iplink_vxcan.c and link_veth.c because
there is too much parameters we need to support (except VF and
few others) making huge code duplication.
v3
Move vxlan/veth ifinfomsg save/restore to separate patch to
make clear change that perform most of request buffer setups
and checks in iplink_parse().
Update commit message descriptions and extra new line from
"utils: Introduce and use nodev() helper routine" patch.
v2
Terminate via exit() when failing to parse command line arguments
to help identify failing line in batch mode.
Thanks,
Serhii
Serhey Popovych (4):
utils: Introduce and use nodev() helper routine
iplink: Use "dev" and "name" parameters interchangeable when possible
iplink: Follow documented behaviour when "index" is given
iplink: Perform most of request buffer setups and checks in
iplink_parse()
bridge/fdb.c | 17 ++----
bridge/link.c | 8 +--
bridge/mdb.c | 19 ++----
bridge/vlan.c | 7 +--
include/utils.h | 1 +
ip/ip6tunnel.c | 6 +-
ip/ip_common.h | 4 +-
ip/ipaddress.c | 7 +--
ip/iplink.c | 163 +++++++++++++++++++++++++++----------------------
ip/iplink_bond.c | 4 +-
ip/iplink_bridge.c | 7 +--
ip/iplink_vxcan.c | 23 ++-----
ip/iplink_vxlan.c | 7 +--
ip/ipmroute.c | 7 +--
ip/ipneigh.c | 14 ++---
ip/ipntable.c | 6 +-
ip/iproute.c | 36 ++++-------
ip/iproute_lwtunnel.c | 4 +-
ip/iptunnel.c | 6 +-
ip/link_gre.c | 7 +--
ip/link_gre6.c | 7 +--
ip/link_ip6tnl.c | 4 +-
ip/link_iptnl.c | 4 +-
ip/link_veth.c | 23 ++-----
ip/link_vti.c | 7 +--
ip/link_vti6.c | 7 +--
lib/utils.c | 6 ++
tc/m_mirred.c | 6 +-
tc/tc_class.c | 14 ++---
tc/tc_filter.c | 18 ++----
tc/tc_qdisc.c | 12 ++--
31 files changed, 196 insertions(+), 265 deletions(-)
--
1.7.10.4
Powered by blists - more mailing lists