From 580ee2eb11ae056b9a5ad21a2ce182ba86dd0fcf Mon Sep 17 00:00:00 2001 From: "andrey.bychkov" Date: Wed, 5 Aug 2026 23:21:08 +0300 Subject: [PATCH] fix: SIOCGIFNETMASK reads ifr_addr instead of ifr_netmask --- libs/main/io_devices/piethernet.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/libs/main/io_devices/piethernet.cpp b/libs/main/io_devices/piethernet.cpp index a1245cc1..a27d26ba 100644 --- a/libs/main/io_devices/piethernet.cpp +++ b/libs/main/io_devices/piethernet.cpp @@ -1206,7 +1206,7 @@ PIEthernet::InterfaceList PIEthernet::interfaces() { strcpy(ir.ifr_name, in.dataAscii()); if (ioctl(s, SIOCGIFHWADDR, &ir) == 0) ci.mac = macFromBytes(PIByteArray(ir.ifr_hwaddr.sa_data, 6)); if (ioctl(s, SIOCGIFADDR, &ir) >= 0) ci.address = getSockAddr(&ir.ifr_addr); - if (ioctl(s, SIOCGIFNETMASK, &ir) >= 0) ci.netmask = getSockAddr(&ir.ifr_addr); + if (ioctl(s, SIOCGIFNETMASK, &ir) >= 0) ci.netmask = getSockAddr(&ir.ifr_netmask); ioctl(s, SIOCGIFMTU, &ci.mtu); if (ci.address == "127.0.0.1") ci.flags |= PIEthernet::ifLoopback; il << ci;