Poco SocketAddress не предпочитает IPv4-адрес с определенным макросом препроцессора - PullRequest
0 голосов
/ 05 ноября 2018

Здравствуйте, у меня проблема с SocketAddress class из Poco. Я передал имя хоста, и разрешенные адреса содержат адреса IPv4 и IPv6. Внутри init метода SocketAddress есть этот фрагмент кода:

if (addresses.size() > 0)
{
#if defined(POCO_HAVE_IPv6) && defined(POCO_SOCKETADDRESS_PREFER_IPv4)
    // if we get both IPv4 and IPv6 addresses, prefer IPv4
    std::stable_sort(addresses.begin(), addresses.end(), AFLT());
#endif
    init(addresses[0], portNumber);
}

Я добавил макрос препроцессора POCO_SOCKETADDRESS_PREFER_IPv4, но он не активирует эту часть кода. Макрос POCO_HAVE_IPv6 кажется активным по умолчанию. Нужно ли добавлять POCO_SOCKETADDRESS_PREFER_IPv4 при сборке Poco Lib?

...