ip6_address_t

Материал из CAMaaS preliminary wiki
Версия от 04:38, 4 сентября 2019; Андрей Чусов (обсуждение | вклад)
(разн.) ← Предыдущая | Текущая версия (разн.) | Следующая → (разн.)
Перейти к навигации Перейти к поиску

Задает адрес IPv6.

Открытые данные
Элемент данныхОписание
dqОбъединенная в структуру пара значений. Первый элемент пары - nValueLow - задает младшие восемь байт адреса, а второй элемент - nValueHigh - старшие восемь байт адреса.
pWordsМассив из восьми шетнадцатибитовых компонент адреса IPv6.
pBytesБайтовое представление адреса IPv6.
nScopeИндекс области действия и зоны адреса IPv6. Значение по умолчанию - 0.
Наследует
КлассОписание
Задает адрес удаленного узла для интернет-соединения.

Компоненты адреса, кроме nScope, связаны объединением. Элементы массива pScope задаются в порядке от младшего байта адреса к старшему, а остальные компоненты ip6_address_t, включая nScope, - в формате Little-Endian.

Определение структуры:

struct ip6_address_t:remote_address_t
{
	union
	{
		struct
		{
			std::uint64_t nValueLow;
			std::uint64_t nValueHigh;
		} dq;
		std::uint16_t pWords[8];
		std::uint8_t pBytes[16];
	};
	std::uint32_t nScope;
};
Пример
ip6_address_t addr =
{
	IPV6_ADDRESS,
	{0x8888, 0x2001486048600000}, //2001:4860:4860::8888
	0 // default scope
};
IInternetConnectionEndPoint pCP;
return_code_t err = CreateTCPClient(&addr, 80, &pCP) noexcept;
if (err < 0)
	std::cerr << "Error " << err << "\n";
else
{
	//...
	pCP->Release();
}
См. также
make_ip6_addressФорматирует заданные параметрически 16-битные компоненты адреса IPv6 и создает на их основе адрес в формате ip6_address_t.
ip4_address_tЗадает адрес IPv4.
dns_address_tЗадает строку с общеизвестным именем удаленной стороны, которое подвергается разрешению с помощью сервера доменных имен.