mirror of
https://github.com/fastfetch-cli/fastfetch.git
synced 2026-09-13 10:52:08 +02:00
Global (Windows): prefers Rtl APIs
This commit is contained in:
@@ -51,15 +51,14 @@ const char* ffDetectDNS(FFDNSOptions* options, FFlist* results)
|
||||
{
|
||||
SOCKADDR_IN* ipv4 = (SOCKADDR_IN*) ifa->Address.lpSockaddr;
|
||||
ffStrbufInitA(item, INET_ADDRSTRLEN);
|
||||
inet_ntop(AF_INET, &ipv4->sin_addr, item->chars, item->allocated);
|
||||
item->length = (uint32_t) (RtlIpv4AddressToStringA(&ipv4->sin_addr, item->chars) - item->chars);
|
||||
}
|
||||
else if (ifa->Address.lpSockaddr->sa_family == AF_INET6)
|
||||
{
|
||||
SOCKADDR_IN6* ipv6 = (SOCKADDR_IN6*) ifa->Address.lpSockaddr;
|
||||
ffStrbufInitA(item, INET6_ADDRSTRLEN);
|
||||
inet_ntop(AF_INET6, &ipv6->sin6_addr, item->chars, item->allocated);
|
||||
item->length = (uint32_t) (RtlIpv6AddressToStringA(&ipv6->sin6_addr, item->chars) - item->chars);
|
||||
}
|
||||
ffStrbufRecalculateLength(item);
|
||||
}
|
||||
break;
|
||||
}
|
||||
|
||||
@@ -175,19 +175,16 @@ const char* ffDetectLocalIps(const FFLocalIpOptions* options, FFlist* results)
|
||||
}
|
||||
|
||||
SOCKADDR_IN* ipv4 = (SOCKADDR_IN*) ifa->Address.lpSockaddr;
|
||||
char addressBuffer[INET_ADDRSTRLEN + 6];
|
||||
inet_ntop(AF_INET, &ipv4->sin_addr, addressBuffer, INET_ADDRSTRLEN);
|
||||
char addressBuffer[INET_ADDRSTRLEN + 10];
|
||||
char* end = RtlIpv4AddressToStringA(&ipv4->sin_addr, addressBuffer);
|
||||
|
||||
if ((options->showType & FF_LOCALIP_TYPE_PREFIX_LEN_BIT) && ifa->OnLinkPrefixLength)
|
||||
{
|
||||
size_t len = strlen(addressBuffer);
|
||||
snprintf(addressBuffer + len, 6, "/%u", (unsigned) ifa->OnLinkPrefixLength);
|
||||
}
|
||||
end += snprintf(end, 10, "/%u", (unsigned) ifa->OnLinkPrefixLength);
|
||||
|
||||
FF_DEBUG("Adding IPv4 address: %s (isDefaultRoute=%s)", addressBuffer, isDefaultRoute ? "true" : "false");
|
||||
|
||||
if (item->ipv4.length) ffStrbufAppendC(&item->ipv4, ',');
|
||||
ffStrbufAppendS(&item->ipv4, addressBuffer);
|
||||
ffStrbufAppendNS(&item->ipv4, (uint32_t) (end - addressBuffer), addressBuffer);
|
||||
if (isDefaultRoute) item->defaultRoute |= FF_LOCALIP_TYPE_IPV4_BIT;
|
||||
|
||||
ipv4Count++;
|
||||
@@ -223,19 +220,16 @@ const char* ffDetectLocalIps(const FFLocalIpOptions* options, FFlist* results)
|
||||
continue;
|
||||
}
|
||||
|
||||
char addressBuffer[INET6_ADDRSTRLEN + 6];
|
||||
inet_ntop(AF_INET6, &ipv6->sin6_addr, addressBuffer, INET6_ADDRSTRLEN);
|
||||
char addressBuffer[INET6_ADDRSTRLEN + 10];
|
||||
char* end = RtlIpv6AddressToStringA(&ipv6->sin6_addr, addressBuffer);
|
||||
|
||||
if ((options->showType & FF_LOCALIP_TYPE_PREFIX_LEN_BIT) && ifa->OnLinkPrefixLength)
|
||||
{
|
||||
size_t len = strlen(addressBuffer);
|
||||
snprintf(addressBuffer + len, 6, "/%u", (unsigned) ifa->OnLinkPrefixLength);
|
||||
}
|
||||
end += snprintf(end, 10, "/%u", (unsigned) ifa->OnLinkPrefixLength);
|
||||
|
||||
FF_DEBUG("Adding IPv6 address: %s (isDefaultRoute=%s)", addressBuffer, isDefaultRoute ? "true" : "false");
|
||||
|
||||
if (item->ipv6.length) ffStrbufAppendC(&item->ipv6, ',');
|
||||
ffStrbufAppendS(&item->ipv6, addressBuffer);
|
||||
ffStrbufAppendNS(&item->ipv6, (uint32_t) (end - addressBuffer), addressBuffer);
|
||||
if (isDefaultRoute) item->defaultRoute |= FF_LOCALIP_TYPE_IPV6_BIT;
|
||||
|
||||
ipv6Count++;
|
||||
|
||||
@@ -42,8 +42,8 @@ const char* ffDetectUsers(FFUsersOptions* options, FFlist* users)
|
||||
else if (address->AddressFamily == AF_INET6)
|
||||
{
|
||||
char ipStr[INET6_ADDRSTRLEN];
|
||||
if (inet_ntop(AF_INET6, address->Address, ipStr, sizeof(ipStr)) != NULL)
|
||||
ffStrbufSetS(&user->clientIp, ipStr);
|
||||
const char* end = RtlIpv6AddressToStringA((const IN6_ADDR *) address->Address, ipStr);
|
||||
ffStrbufSetNS(&user->clientIp, (uint32_t) (end - ipStr), ipStr);
|
||||
}
|
||||
WTSFreeMemory(address);
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user