platform/linux: fix setting of IFA_ADDRESS without a peer

Since commit 9ecdba316 ('platform: create netlink messages directly
without libnl-route-3') we're unconditionally setting IFA_ADDRESS to
the peer address, even if there's no peer and it's all zeroes.

The kernel actually stopped caring somewhere around commit caeaba790
('ipv6: add support of peer address') in v3.10, but Ubuntu Touch likes
to run Android's v3.4 on some poorly supported hardware.

Fixes: 9ecdba316c

https://gitlab.freedesktop.org/NetworkManager/NetworkManager/merge_requests/77
(cherry picked from commit ef6d461b7f)
(cherry picked from commit e2409b1888)
This commit is contained in:
Lubomir Rintel 2019-02-03 21:40:53 +01:00
parent ef6ad04821
commit 58f7b55bde

View file

@ -6262,7 +6262,7 @@ ip6_address_add (NMPlatform *platform,
ifindex,
&addr,
plen,
&peer_addr,
IN6_IS_ADDR_UNSPECIFIED (&peer_addr) ? NULL : &peer_addr,
flags,
RT_SCOPE_UNIVERSE,
lifetime,