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


код элемента управления SIO_SET_WFP_CONNECTION_REDIRECT_RECORDS

Операция управления вводом-выводом SIO_SET_WFP_CONNECTION_REDIRECT_RECORDS сокета позволяет клиенту Winsock указать запись перенаправления к новому сокету TCP, используемому для подключения к конечному месту назначения.

Запись перенаправления МПП — это буфер непрозрачных данных, который должен установить в исходящем прокси-подключении, чтобы перенаправленное подключение и исходное подключение были логически связаны.

Дополнительные сведения о перенаправлении см. в разделе Использование привязки или перенаправления подключения.

Чтобы задать запись перенаправления для нового сокета TCP, используемого для подключения к конечному назначению, клиент Winsock вызывает функцию WskControlSocket со следующими параметрами.

Параметр Значение

RequestType

WskIoctl

ControlCode

SIO_SET_WFP_CONNECTION_REDIRECT_RECORDS

Уровень

0

InputSize

Размер записи перенаправления, на которую указывает параметр InputBuffer.

InputBuffer

Указатель на запись перенаправления, связанную с сокетом.

OutputSize

0

OutputBuffer

NULL

OutputSizeReturned

NULL

Irp

Указатель на IRP.

Клиент Winsock должен выделить буфер и указать указатель на буфер и его размер в inputBuffer и InputSize.

Клиент Winsock должен указать указатель на IRP и подпрограмму завершения при вызове функции WskControlSocket для этого типа запроса. Клиент не должен освобождать буфер, пока подсистема WSK не завершит IRP. После завершения IRP подсистема вызывает подпрограмму завершения. В процедуре завершения клиент должен проверка состояние IRP и освободить все ресурсы, выделенные ранее для запроса.

Примечание Этот запрос также можно выполнить в приложении пользовательского режима с помощью SIO_SET_WFP_CONNECTION_REDIRECT_RECORDS (SDK).

Дополнительные сведения об обработке WSK IRP см. в разделе Использование IRP с функциями ядра Winsock.

Клиент может получить состояние IRP, проверив Irp-IoStatus.Status>. Irp-> IoStatus.Status будет иметь значение STATUS_SUCCESS , если запрос выполнен успешно. В противном случае он будет содержать STATUS_INTEGER_OVERFLOW или STATUS_ACCESS_DENIED , если вызов не был успешным.

Требования

Минимальная версия клиента

Windows 8

Минимальная версия сервера

Windows Server 2012

Заголовок

Mstcpip.h

IRQL

PASSIVE_LEVEL

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

Использование перенаправления привязки или подключения

Использование IRP с функциями ядра Winsock

SIO_QUERY_WFP_CONNECTION_REDIRECT_RECORDS

SIO_SET_WFP_CONNECTION_REDIRECT_RECORDS (пакет SDK)