Skip to content

Commit

Permalink
deps: cherry-pick bfbe4e38d7 from libuv upstream
Browse files Browse the repository at this point in the history
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: libuv/libuv#4222 (comment)
  Refs: #50650

Refs: libuv/libuv@bfbe4e3
PR-URL: #50650
Reviewed-By: Ben Noordhuis <info@bnoordhuis.nl>
Reviewed-By: Richard Lau <rlau@redhat.com>
Reviewed-By: Luigi Pinca <luigipinca@gmail.com>
  • Loading branch information
abmusse authored and RafaelGSS committed Dec 15, 2023
1 parent 06038a4 commit 95d8a27
Showing 1 changed file with 7 additions and 6 deletions.
13 changes: 7 additions & 6 deletions deps/uv/src/unix/tcp.c
Original file line number Diff line number Diff line change
Expand Up @@ -30,12 +30,8 @@
#include <sys/types.h>
#include <sys/socket.h>

#if defined(__PASE__)
#include <as400_protos.h>
#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 <ifaddrs.h>
#endif

Expand Down Expand Up @@ -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;
Expand All @@ -244,6 +244,7 @@ static int uv__ipv6_link_local_scope_id(void) {

freeifaddrs(ifa);
return rv;
#endif
}


Expand Down

0 comments on commit 95d8a27

Please sign in to comment.