From 95d8a273ccef2bc46dabd958f766fa711c9f3046 Mon Sep 17 00:00:00 2001 From: Abdirahim Musse <33973272+abmusse@users.noreply.github.com> Date: Sat, 18 Nov 2023 18:19:16 +0000 Subject: [PATCH] deps: cherry-pick bfbe4e38d7 from libuv upstream Original commit message: aix: disable ipv6 link local (#4229) AIX does not implement ifaddrs and when retrieving the network interfaces with uv_interface_addresses there was a test failure in tcp_connect6_link_local. For now disable ipv6 link local on aix to: 1) fix broken aix build 2) stop blocking libuv upgrade in node Refs: https://github.com/libuv/libuv/pull/4222#issuecomment-1812962233 Refs: https://github.com/nodejs/node/pull/50650 Refs: https://github.com/libuv/libuv/commit/bfbe4e38d7253ed5cfa87bfa44ae66fd7bf1957f PR-URL: https://github.com/nodejs/node/pull/50650 Reviewed-By: Ben Noordhuis Reviewed-By: Richard Lau Reviewed-By: Luigi Pinca --- deps/uv/src/unix/tcp.c | 13 +++++++------ 1 file changed, 7 insertions(+), 6 deletions(-) diff --git a/deps/uv/src/unix/tcp.c b/deps/uv/src/unix/tcp.c index a6b53e5913271d..a02b6bbf88ef3a 100644 --- a/deps/uv/src/unix/tcp.c +++ b/deps/uv/src/unix/tcp.c @@ -30,12 +30,8 @@ #include #include -#if defined(__PASE__) -#include -#define ifaddrs ifaddrs_pase -#define getifaddrs Qp2getifaddrs -#define freeifaddrs Qp2freeifaddrs -#else +/* ifaddrs is not implemented on AIX and IBM i PASE */ +#if !defined(_AIX) #include #endif @@ -224,6 +220,10 @@ static int uv__is_ipv6_link_local(const struct sockaddr* addr) { static int uv__ipv6_link_local_scope_id(void) { +/* disable link local on AIX & PASE for now */ +#if defined(_AIX) + return 0; +#else struct sockaddr_in6* a6; struct ifaddrs* ifa; struct ifaddrs* p; @@ -244,6 +244,7 @@ static int uv__ipv6_link_local_scope_id(void) { freeifaddrs(ifa); return rv; +#endif }