remote_address_t

Материал из CAMaaS preliminary wiki
Перейти к навигации Перейти к поиску

Задает адрес удаленного узла для интернет-соединения.

Открытые данные
Элемент данныхОписание
nTypeТип адреса размером в машинное слово. Принимает одно из значений перечисления AddressType.

Структура определяет базовый тип для адресов следующих категорий.

Структура Идентификатор AddressType Краткое описание
ip4_address_t AddressType::IPV4_ADDRESS Задает адрес IPv4.
ip6_address_t AddressType::IPV6_ADDRESS Задает адрес IPv6.
dns_address_t AddressType::DNS_NAME Задает строку с общеизвестным именем удаленной стороны, которое подвергается разрешению с помощью сервера доменных имен.
Пример
ip4_address_t ip4addr = {IPV4_ADDRESS, 0xff000001}; //127.0.0.1
IInternetConnectionEndPoint pIP4Connection;
return_code_t err = CreateTCPClient(&ip4addr, 80, &pIP4Connection) noexcept;
if (err < 0)
	std::cerr << "Error " << err << "\n";
else
{
	//...
	pIP4Connection->Release();
}

ip6_address_t ip6addr =
{
	IPV6_ADDRESS,
	{8888, 2001486048600000}, //2001:4860:4860::8888
	0 // default scope
};
IInternetConnectionEndPoint pIP6Connection;
return_code_t err = CreateTCPClient(&ip6addr, 80, &pIP6Connection) noexcept;
if (err < 0)
	std::cerr << "Error " << err << "\n";
else
{
	//...
	pIP6Connection->Release();
}

const char pszDnsAddr[] = "www.chusov.org";
dns_address_t dns_addr = {DNS_NAME, pszDnsAddr, sizeof(pszDnsAddr) - 1};
IInternetConnectionEndPoint pDomainConnection;
return_code_t err = CreateTCPClient(&dns_addr, 80, &pDomainConnection) noexcept;
if (err < 0)
	std::cerr << "Error " << err << "\n";
else
{
	//...
	pDomainConnection->Release();
}
См. также
CreateTCPServerСоздает TCP-сервер с интерфейсом IInternetConnectionEndPoint.
CreateTCPClientСоздает TCP-клиент с интерфейсом IInternetConnectionEndPoint.