Changes presented with this series tested using following script: \#!/bin/bash
iproute2_dir="$1" iface='eth0.2' pushd "$iproute2_dir" &>/dev/null for i in new old; do DIR="/tmp/$i" mkdir -p "$DIR" ln -snf ip.$i ip/ip # normal ip/ip link show >"$DIR/ip-link-show" ip/ip -4 addr show >"$DIR/ip-4-addr-show" ip/ip -6 addr show >"$DIR/ip-6-addr-show" ip/ip addr show dev "$iface" >"$DIR/ip-addr-show-$iface" # brief ip/ip -br link show >"$DIR/ip-br-link-show" ip/ip -br -4 addr show >"$DIR/ip-br-4-addr-show" ip/ip -br -6 addr show >"$DIR/ip-br-6-addr-show" ip/ip -br addr show dev "$iface" >"$DIR/ip-br-addr-show-$iface" done rm -f ip/ip diff -urN /tmp/{old,new} |sed -n -Ee'/^(-{3}|\+{3})[[:space:]]+/!p' rc=$? popd &>/dev/null exit $rc Expected results : <no output> Actual results : <no output> Although test coverage is far from ideal in my opinion it covers most important aspects of the changes presented by the series. All this work is done in prepare of iplink_get() enhancements to support attribute parse that finally will be used to simplify ip/tunnel RTM_GETLINK code. As always reviews, comments, suggestions and criticism is welcome. v2 Rebased to current iproute2-next/master. No changes. Thanks, Serhii Serhey Popovych (9): ipaddress: Abstract IFA_LABEL matching code ipaddress: ll_map: Replace ll_idx_n2a() with ll_index_to_name() utils: Reimplement ll_idx_n2a() and introduce ll_idx_a2n() ipaddress: Improve print_linkinfo() ipaddress: Simplify print_linkinfo_brief() and it's usage lib: Correct object file dependencies utils: Introduce and use get_ifname_rta() utils: Introduce and use print_name_and_link() to print name@link ipaddress: Make print_linkinfo_brief() static bridge/link.c | 21 ++--- include/ll_map.h | 4 +- include/utils.h | 5 ++ ip/ip_common.h | 2 - ip/ipaddress.c | 224 ++++++++++++++---------------------------------------- ip/iplink.c | 5 +- lib/Makefile | 4 +- lib/ll_map.c | 31 +++++--- lib/utils.c | 68 +++++++++++++++++ 9 files changed, 162 insertions(+), 202 deletions(-) -- 1.7.10.4