From 7b52f6d70d6c0cf6f498f50477963efa185cfa0f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=D0=91=D1=8B=D1=87=D0=BA=D0=BE=D0=B2=20=D0=90=D0=BD=D0=B4?= =?UTF-8?q?=D1=80=D0=B5=D0=B9?= Date: Thu, 26 Jun 2025 10:52:36 +0300 Subject: [PATCH] fix get mtu (#186) Reviewed-on: https://git.shstk.ru/SHS/pip/pulls/186 --- libs/main/io_devices/piethernet.cpp | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/libs/main/io_devices/piethernet.cpp b/libs/main/io_devices/piethernet.cpp index 69cc2f30..89634d5f 100644 --- a/libs/main/io_devices/piethernet.cpp +++ b/libs/main/io_devices/piethernet.cpp @@ -1243,9 +1243,12 @@ PIEthernet::InterfaceList PIEthernet::interfaces() { # else if (s != -1) { struct ifreq ir; - strcpy(ir.ifr_name, cif->ifa_name); + memset(&ir, 0, sizeof(ir)); + strncpy(ir.ifr_name, cif->ifa_name, sizeof(ir.ifr_name)); if (ioctl(s, SIOCGIFHWADDR, &ir) == 0) { ci.mac = macFromBytes(PIByteArray(ir.ifr_hwaddr.sa_data, 6)); + } + if (ioctl(s, SIOCGIFMTU, &ir) == 0) { ci.mtu = ir.ifr_mtu; } }