From mboxrd@z Thu Jan 1 00:00:00 1970 Received: by passt.top (Postfix, from userid 1000) id D73C45A0271; Wed, 23 Aug 2023 09:38:20 +0200 (CEST) From: Stefano Brivio To: passt-dev@passt.top Subject: [PATCH] netlink: Set IFA_ADDRESS, not just IFA_LOCAL, while adding IPv4 addresses Date: Wed, 23 Aug 2023 09:38:20 +0200 Message-Id: <20230823073820.1570627-1-sbrivio@redhat.com> X-Mailer: git-send-email 2.39.2 MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Message-ID-Hash: FFL334FKREDK6HCQTVKHC5HSXVHN2PKR X-Message-ID-Hash: FFL334FKREDK6HCQTVKHC5HSXVHN2PKR X-MailFrom: sbrivio@passt.top X-Mailman-Rule-Misses: dmarc-mitigation; no-senders; approved; emergency; loop; banned-address; member-moderation; nonmember-moderation; administrivia; implicit-dest; max-recipients; max-size; news-moderation; no-subject; digests; suspicious-header CC: David Gibson X-Mailman-Version: 3.3.8 Precedence: list List-Id: Development discussion and patches for passt Archived-At: Archived-At: List-Archive: List-Archive: List-Help: List-Owner: List-Post: List-Subscribe: List-Unsubscribe: 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; } -- 2.39.2