From 8553a8d63f97cfa8d64b5b2260e81f8c896a8398 Mon Sep 17 00:00:00 2001 From: nancy.liao <huihui.liao@greentest.com.cn> Date: 周五, 23 5月 2025 18:36:03 +0800 Subject: [PATCH] 修改部分因为标准原因的报错 --- src/library/os/linux/network.cpp | 49 ++++++++++++------------------------------------- 1 files changed, 12 insertions(+), 37 deletions(-) diff --git a/src/library/os/linux/network.cpp b/src/library/os/linux/network.cpp index e456989..08ee164 100644 --- a/src/library/os/linux/network.cpp +++ b/src/library/os/linux/network.cpp @@ -23,11 +23,12 @@ #include <ifaddrs.h> #include <linux/if_link.h> #include <netpacket/packet.h> -#include <string.h> #include <stdio.h> #include <unordered_map> +#include <string.h> +#include <memory.h> -#include "../../base/StringUtils.h" +#include "../../base/string_utils.h" #include "../../base/logger.h" #include "../network.hpp" @@ -35,25 +36,6 @@ namespace os { using namespace std; -/** - * - * @param ifnames - * @param ifname - * @param ifnames_max - * @return - */ - -static int ifname_position(char *ifnames, char *ifname, int ifnames_max) { - int i, position; - position = -1; - for (i = 0; i < ifnames_max; i++) { - if (strcmp(ifname, &ifnames[i * NI_MAXHOST]) == 0) { - position = i; - break; - } - } - return position; -} /** * @@ -67,7 +49,7 @@ FUNCTION_RETURN f_return = FUNC_RET_OK; struct ifaddrs *ifaddr, *ifa; int family, n = 0; - unsigned int if_num, if_max; + unsigned int if_num; if (getifaddrs(&ifaddr) == -1) { LOG_WARN("getifaddrs failed == -1"); @@ -78,15 +60,14 @@ if (ifa->ifa_addr == NULL || (ifa->ifa_flags & IFF_LOOPBACK) != 0) { continue; } - string if_name(ifa->ifa_name, mstrnlen_s(ifa->ifa_name, NI_MAXHOST)); + string if_name(ifa->ifa_name, mstrnlen_s(ifa->ifa_name, LCC_ADAPTER_DESCRIPTION_LEN)); // if_name_position = ifname_position(ifnames, ifa->ifa_name, if_num); // interface name not seen en advance OsAdapterInfo *currentAdapter; - // FIXME not working if (adapterByName.find(if_name) == adapterByName.end()) { OsAdapterInfo newAdapter; memset(&newAdapter, 0, sizeof(OsAdapterInfo)); - strncpy(&newAdapter.description[0], ifa->ifa_name, NI_MAXHOST); + mstrlcpy(&newAdapter.description[0], ifa->ifa_name, LCC_ADAPTER_DESCRIPTION_LEN); adapterByName[if_name] = newAdapter; } auto it = adapterByName.find(if_name); @@ -94,12 +75,10 @@ family = ifa->ifa_addr->sa_family; /* Display interface name and family (including symbolic form of the latter for the common families) */ -#ifdef _DEBUG - printf("%-8s %s (%d)\n", ifa->ifa_name, - (family == AF_PACKET) ? "AF_PACKET" - : (family == AF_INET) ? "AF_INET" : (family == AF_INET6) ? "AF_INET6" : "???", - family); -#endif + LOG_DEBUG("%-8s %s (%d)\n", ifa->ifa_name, + (family == AF_PACKET) ? "AF_PACKET" + : (family == AF_INET) ? "AF_INET" : (family == AF_INET6) ? "AF_INET6" : "???", + family); /* For an AF_INET* interface address, display the address * || family == AF_INET6*/ if (family == AF_INET) { @@ -115,13 +94,9 @@ int i; for (i = 0; i < 6; i++) { currentAdapter->mac_address[i] = s1->sll_addr[i]; -#ifdef _DEBUG - printf("%02x:", s1->sll_addr[i]); -#endif + LOG_DEBUG("%02x:", s1->sll_addr[i]); } -#ifdef _DEBUG - printf("\t %s\n", ifa->ifa_name); -#endif + LOG_DEBUG("\t %s\n", ifa->ifa_name); } } freeifaddrs(ifaddr); -- Gitblit v1.9.1