From 24f9247c5481e686878da0ac579a3c02ac5e7d1d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E6=9D=8E=E9=80=9A=E6=B4=B2?= Date: Tue, 18 Apr 2023 20:38:02 +0800 Subject: [PATCH] LocalIP: simplify loop interface detection --- src/detection/localip/localip_linux.c | 8 ++------ 1 file changed, 2 insertions(+), 6 deletions(-) diff --git a/src/detection/localip/localip_linux.c b/src/detection/localip/localip_linux.c index b38958b19..56a93190a 100644 --- a/src/detection/localip/localip_linux.c +++ b/src/detection/localip/localip_linux.c @@ -2,14 +2,10 @@ #include #include +#include #include #include #include -#include - -#ifdef __FreeBSD__ - #include // FreeBSD needs this for AF_INET -#endif static void addNewIp(FFlist* list, const char* name, const char* addr, bool ipv6) { @@ -31,7 +27,7 @@ const char* ffDetectLocalIps(const FFinstance* instance, FFlist* results) continue; // loop back - if (strncmp(ifa->ifa_name, "lo", 2) == 0 && (ifa->ifa_name[2] == '\0' || isdigit(ifa->ifa_name[2])) && !instance->config.localIpShowLoop) + if ((ifa->ifa_flags & IFF_LOOPBACK) && !instance->config.localIpShowLoop) continue; if (instance->config.localIpNamePrefix.length && strncmp(ifa->ifa_name, instance->config.localIpNamePrefix.chars, instance->config.localIpNamePrefix.length) != 0)