platform: refetch TUN link when no type-specific lnk data was received

Now that kernel supports providing information about tun/tap devices
via netlink, make use of it.

Also, enable the hack that:
  - when we first see a link that has no lnk data, we refetch
    it on the assumption, that kernel just didn't send it
    the first time.

For old kernels that do not yet support tun properties on netlink,
this means that we will always refetch the link once, the first
time we see it. I think that is acceptable, and the more correct
behavior for newer kernels that do support it.
This commit is contained in:
Thomas Haller
2018-04-05 11:35:55 +02:00
parent 031e58e1cf
commit f76a94668d

View File

@@ -3939,6 +3939,7 @@ cache_on_change (NMPlatform *platform,
NM_LINK_TYPE_MACVLAN, NM_LINK_TYPE_MACVLAN,
NM_LINK_TYPE_MACVLAN, NM_LINK_TYPE_MACVLAN,
NM_LINK_TYPE_SIT, NM_LINK_TYPE_SIT,
NM_LINK_TYPE_TUN,
NM_LINK_TYPE_VLAN, NM_LINK_TYPE_VLAN,
NM_LINK_TYPE_VXLAN)) { NM_LINK_TYPE_VXLAN)) {
/* certain link-types also come with a IFLA_INFO_DATA/lnk_data. It may happen that /* certain link-types also come with a IFLA_INFO_DATA/lnk_data. It may happen that