From 113642075853a7ebdd9867b0e097fce4bc7ff873 Mon Sep 17 00:00:00 2001 From: Aleksej Lebedev Date: Fri, 7 Aug 2020 11:21:19 +0200 Subject: [PATCH] unix: fix DragonFly BSD build This commit includes patches from dports to fix the DragonFly BSD build. It also removes the now unused uv_exepath_procfs(). PR-URL: https://github.com/libuv/libuv/pull/2952 Reviewed-By: Jameson Nash Reviewed-By: Colin Ihrig --- src/unix/freebsd.c | 26 -------------------------- src/unix/udp.c | 4 ++-- 2 files changed, 2 insertions(+), 28 deletions(-) diff --git a/src/unix/freebsd.c b/src/unix/freebsd.c index ef77e127..406eb158 100644 --- a/src/unix/freebsd.c +++ b/src/unix/freebsd.c @@ -56,31 +56,6 @@ int uv__platform_loop_init(uv_loop_t* loop) { void uv__platform_loop_delete(uv_loop_t* loop) { } - -#ifdef __DragonFly__ -int uv_exepath(char* buffer, size_t* size) { - char abspath[PATH_MAX * 2 + 1]; - ssize_t abspath_size; - - if (buffer == NULL || size == NULL || *size == 0) - return UV_EINVAL; - - abspath_size = readlink("/proc/curproc/file", abspath, sizeof(abspath)); - if (abspath_size < 0) - return UV__ERR(errno); - - assert(abspath_size > 0); - *size -= 1; - - if (*size > abspath_size) - *size = abspath_size; - - memcpy(buffer, abspath, *size); - buffer[*size] = '\0'; - - return 0; -} -#else int uv_exepath(char* buffer, size_t* size) { char abspath[PATH_MAX * 2 + 1]; int mib[4]; @@ -110,7 +85,6 @@ int uv_exepath(char* buffer, size_t* size) { return 0; } -#endif uint64_t uv_get_free_memory(void) { int freecount; diff --git a/src/unix/udp.c b/src/unix/udp.c index 587c3475..5ca54cef 100644 --- a/src/unix/udp.c +++ b/src/unix/udp.c @@ -851,7 +851,7 @@ static int uv__udp_set_membership6(uv_udp_t* handle, } -#if !defined(__OpenBSD__) && !defined(__NetBSD__) && !defined(__ANDROID__) +#if !defined(__OpenBSD__) && !defined(__NetBSD__) && !defined(__ANDROID__) && !defined(__DragonFly__) static int uv__udp_set_source_membership4(uv_udp_t* handle, const struct sockaddr_in* multicast_addr, const char* interface_addr, @@ -1039,7 +1039,7 @@ int uv_udp_set_source_membership(uv_udp_t* handle, const char* interface_addr, const char* source_addr, uv_membership membership) { -#if !defined(__OpenBSD__) && !defined(__NetBSD__) && !defined(__ANDROID__) +#if !defined(__OpenBSD__) && !defined(__NetBSD__) && !defined(__ANDROID__) && !defined(__DragonFly__) int err; union uv__sockaddr mcast_addr; union uv__sockaddr src_addr;