From bde968105c02f2d9a24160a22a7acbb758e7d93c Mon Sep 17 00:00:00 2001 From: Rui Chen Date: Sun, 15 Sep 2024 17:03:59 -0400 Subject: [PATCH] fix build failures seeing some build failure while building for macos sequoia, the error is below: ``` net_socket.c:105:14: error: no member named 'ifr_ifrn' in 'struct ifreq' 105 | strncpy(ifr.ifr_ifrn.ifrn_name, iface, IFNAMSIZ); | ~~~ ^ /Library/Developer/CommandLineTools/SDKs/MacOSX15.sdk/usr/include/secure/_string.h:128:28: note: expanded from macro 'strncpy' 128 | __builtin___strncpy_chk (dest, __VA_ARGS__, __darwin_obsz (dest)) | ^~~~ net_socket.c:105:14: error: no member named 'ifr_ifrn' in 'struct ifreq' 105 | strncpy(ifr.ifr_ifrn.ifrn_name, iface, IFNAMSIZ); | ~~~ ^ /Library/Developer/CommandLineTools/SDKs/MacOSX15.sdk/usr/include/secure/_string.h:128:62: note: expanded from macro 'strncpy' 128 | __builtin___strncpy_chk (dest, __VA_ARGS__, __darwin_obsz (dest)) | ^~~~ /Library/Developer/CommandLineTools/SDKs/MacOSX15.sdk/usr/include/secure/_common.h:41:54: note: expanded from macro '__darwin_obsz' 41 | #define __darwin_obsz(object) __builtin_object_size (object, _USE_FORTIFY_LEVEL > 1 ? 1 : 0) | ^~~~~~ ``` full build log, https://github.com/Homebrew/homebrew-core/actions/runs/10837004674/job/30072048690 Signed-off-by: Rui Chen --- src/net_socket.c | 8 ++++---- src/raw_socket_device.c | 4 ++-- 2 files changed, 6 insertions(+), 6 deletions(-) diff --git a/src/net_socket.c b/src/net_socket.c index c8aa78824..4737f0c6a 100644 --- a/src/net_socket.c +++ b/src/net_socket.c @@ -122,8 +122,8 @@ static bool bind_to_interface(int sd) { #if defined(SOL_SOCKET) && defined(SO_BINDTODEVICE) memset(&ifr, 0, sizeof(ifr)); - strncpy(ifr.ifr_ifrn.ifrn_name, iface, IFNAMSIZ); - ifr.ifr_ifrn.ifrn_name[IFNAMSIZ - 1] = 0; + strncpy(ifr.ifr_name, iface, IFNAMSIZ); + ifr.ifr_name[IFNAMSIZ - 1] = 0; status = setsockopt(sd, SOL_SOCKET, SO_BINDTODEVICE, (void *)&ifr, sizeof(ifr)); @@ -233,8 +233,8 @@ int setup_listen_socket(const sockaddr_t *sa) { struct ifreq ifr; memset(&ifr, 0, sizeof(ifr)); - strncpy(ifr.ifr_ifrn.ifrn_name, iface, IFNAMSIZ); - ifr.ifr_ifrn.ifrn_name[IFNAMSIZ - 1] = 0; + strncpy(ifr.ifr_name, iface, IFNAMSIZ); + ifr.ifr_name[IFNAMSIZ - 1] = 0; if(setsockopt(nfd, SOL_SOCKET, SO_BINDTODEVICE, (void *)&ifr, sizeof(ifr))) { closesocket(nfd); diff --git a/src/raw_socket_device.c b/src/raw_socket_device.c index 1c455e6a7..dc4442075 100644 --- a/src/raw_socket_device.c +++ b/src/raw_socket_device.c @@ -55,8 +55,8 @@ static bool setup_device(void) { fcntl(device_fd, F_SETFD, FD_CLOEXEC); #endif - strncpy(ifr.ifr_ifrn.ifrn_name, iface, IFNAMSIZ); - ifr.ifr_ifrn.ifrn_name[IFNAMSIZ - 1] = 0; + strncpy(ifr.ifr_name, iface, IFNAMSIZ); + ifr.ifr_name[IFNAMSIZ - 1] = 0; if(ioctl(device_fd, SIOCGIFINDEX, &ifr)) { close(device_fd);