From f18a751f8956fb4f1696a4ec426846ff0d859852 Mon Sep 17 00:00:00 2001 From: Vladimir Dubrovin <3proxy@3proxy.ru> Date: Fri, 17 Jul 2026 15:07:11 +0300 Subject: [PATCH] define IPV6_BOUND_IF if not defined (for legacy MacOS 10.x) See: https://github.com/3proxy/3proxy/issues/1250 Upstream-Status: Backport [https://github.com/3proxy/3proxy/compare/f18a751f89%5E...afb2ec0696] --- src/common.c | 3 +++ src/proxymain.c | 3 +++ 2 files changed, 6 insertions(+) diff --git a/src/common.c b/src/common.c index 3444dcd..f0eada7 100644 --- src/common.c.orig +++ src/common.c @@ -659,7 +659,9 @@ int doconnect(struct clientparam * param){ if(!idx || (*SAFAMILY(¶m->sinsl) == AF_INET && param->srv->so._setsockopt(param->sostate, param->remsock, IPPROTO_IP, IP_BOUND_IF, &idx, sizeof(idx)))) return 12; #ifndef NOIPV6 +#ifdef IPV6_BOUND_IF if(*SAFAMILY(¶m->sinsl) == AF_INET6 && param->srv->so._setsockopt(param->sostate, param->remsock, IPPROTO_IPV6, IPV6_BOUND_IF, &idx, sizeof(idx))) return 12; +#endif #endif } #endif diff --git a/src/proxymain.c b/src/proxymain.c index fe938f8..08eef95 100644 --- src/proxymain.c.orig +++ src/proxymain.c @@ -772,10 +772,12 @@ int MODULEMAINFUNC (int argc, char** argv){ return -12; } #ifndef NOIPV6 +#ifdef IPV6_BOUND_IF if((*SAFAMILY(&srv.intsa) == AF_INET6 && srv.so._setsockopt(srv.so.state, sock, IPPROTO_IPV6, IPV6_BOUND_IF, &idx, sizeof(idx)))) { dolog(&defparam, (unsigned char *)"failed to bind device"); return -12; } +#endif #endif } #endif -- 2.55.0