Add IPv6 support and sfDns

- Grow sfIpAddress to hold IPv6 addresses and add address types

- Make sfIpAddress_fromString not resolve network names anymore, matching sf::IpAddress::fromString, and add the deprecated sfIpAddress_resolve

- Add sfDns for resolving hostnames and querying NS, MX, SRV and TXT records
This commit is contained in:
Lukas Dürrenberger committed 2026-10-04 22:12:01 +02:00
1 parent 523c48cf98
commit 917e811888
16 files changed
+1112 -48

No files matched your search

+25
View File
@@ -0,0 +1,25 @@
#include <CSFML/Network/Dns.h>
#include <CSFML/System/Alloc.h>
#include <catch2/catch_test_macros.hpp>
#include <cstring>
TEST_CASE("[Network] sfDns")
{
SECTION("sfDns_resolve")
{
size_t count = 0;
sfIpAddress* addresses = sfDns_resolve("127.0.0.1", nullptr, 0, sfSeconds(1), &count);
REQUIRE(addresses != nullptr);
REQUIRE(count == 1);
CHECK(std::strcmp(addresses[0].address, "127.0.0.1") == 0);
sfFree(addresses);
addresses = sfDns_resolve("::1", nullptr, 0, sfSeconds(1), &count);
REQUIRE(addresses != nullptr);
REQUIRE(count == 1);
CHECK(std::strcmp(addresses[0].address, "::1") == 0);
sfFree(addresses);
}
}