Le 13/05/2019 à 15:01, Sabrina Dubroca a écrit :
> Currently, nla_put_iflink() doesn't put the IFLA_LINK attribute when
> iflink == ifindex.
> 
> In some cases, a device can be created in a different netns with the
> same ifindex as its parent. That device will not dump its IFLA_LINK
> attribute, which can confuse some userspace software that expects it.
> For example, if the last ifindex created in init_net and foo are both
> 8, these commands will trigger the issue:
> 
>     ip link add parent type dummy                   # ifindex 9
>     ip link add link parent netns foo type macvlan  # ifindex 9 in ns foo
> 
> So, in case a device puts the IFLA_LINK_NETNSID attribute in a dump,
> always put the IFLA_LINK attribute as well.
> 
> Thanks to Dan Winship for analyzing the original OpenShift bug down to
> the missing netlink attribute.
Good catch.

> 
> Analyzed-by: Dan Winship <d...@redhat.com>
> Fixes: a54acb3a6f85 ("dev: introduce dev_get_iflink()")
I don't agree with the Fixes tag. The test 'iflink != ifindex' is here at least
since the beginning of the git history.

> Signed-off-by: Sabrina Dubroca <s...@queasysnail.net>
Acked-by: Nicolas Dichtel <nicolas.dich...@6wind.com>

Reply via email to