From 5e4f7b92b0b0bf4724c505fa95fcae1526a8f88b Mon Sep 17 00:00:00 2001 From: Stefano Brivio Date: Wed, 23 Aug 2023 09:34:44 +0200 Subject: [PATCH] netlink: Set IFA_ADDRESS, not just IFA_LOCAL, while adding IPv4 addresses Otherwise, we actually configure the address, but it's not usable because no local route is added by the kernel. Link: https://github.com/containers/podman/pull/19699 Fixes: cfe7509e5c16 ("netlink: Use struct in_addr for IPv4 addresses, not bare uint32_t") Signed-off-by: Stefano Brivio --- netlink.c | 1 + 1 file changed, 1 insertion(+) diff --git a/netlink.c b/netlink.c index f55f2c3..7e9caf4 100644 --- a/netlink.c +++ b/netlink.c @@ -629,6 +629,7 @@ int nl_addr_set(int s, unsigned int ifi, sa_family_t af, memcpy(&req.set.a4.l, addr, sizeof(req.set.a4.l)); req.set.a4.rta_l.rta_len = rta_len; req.set.a4.rta_l.rta_type = IFA_LOCAL; + memcpy(&req.set.a4.a, addr, sizeof(req.set.a4.a)); req.set.a4.rta_a.rta_len = rta_len; req.set.a4.rta_a.rta_type = IFA_ADDRESS; }