Поделиться через


структура IN_PKTINFO (ws2ipdef.h)

Структура in_pktinfo используется для хранения сведений об адресах полученных пакетов и используется Windows для возврата сведений о полученных пакетах, а также позволяет указать локальный IPv4-адрес для отправки пакетов.

Синтаксис

typedef struct in_pktinfo {
  IN_ADDR ipi_addr;
  ULONG   ipi_ifindex;
} IN_PKTINFO, *PIN_PKTINFO;

Члены

ipi_addr

Целевой IPv4-адрес из IP-заголовка полученного пакета при использовании с функцией LPFN_WSARECVMSG (WSARecvMsg). Локальный исходный IPv4-адрес, задаемый в заголовке IP-адреса при использовании с функцией WSASendMsg .

ipi_ifindex

Интерфейс, в котором был получен пакет при использовании с функцией LPFN_WSARECVMSG (WSARecvMsg). Интерфейс, по которому должен отправляться пакет при использовании с функцией WSASendMsg .

Комментарии

Если параметр сокета IP_PKTINFO задан для сокета типа SOCK_DGRAM или SOCK_RAW, один из объектов управляющих данных, возвращаемых функцией LPFN_WSARECVMSG (WSARecvMsg), будет содержать структуру in_pktinfo , используемую для хранения сведений об адресах полученных пакетов.

В сокете IPv4 типа SOCK_DGRAM или SOCK_RAW приложение может указать локальный IP-адрес для отправки с помощью функции WSASendMsg . Один из объектов управляющих данных, передаваемых в структуре WSAMSG в функцию WSASendMsg , может содержать структуру in_pktinfo , используемую для указания локального IPv4-адреса, используемого для отправки.

В пакете SDK microsoft Windows, выпущенном для Windows Vista и более поздних версий, организация файлов заголовков изменилась, а структура in_pktinfo определена в файле заголовка Ws2ipdef.h , который автоматически включается в файл заголовка Ws2tcpip.h . Файлы заголовков Ws2ipdef.h никогда не следует использовать напрямую.

Требования

   
Минимальная версия клиента Windows XP [только классические приложения]
Минимальная версия сервера Windows Server 2003 [только классические приложения]
Верхняя часть ws2ipdef.h (включая Ws2tcpip.h)

См. также раздел

Сокеты с двумя стеками для приложений Winsock IPv6

Параметры сокета IPPROTO_IP

IPV6_PKTINFO

IP_PKTINFO

WSAMSG

LPFN_WSARECVMSG (WSARecvMsg)

WSASendMsg

in6_pktinfo