структура FWPS_CONNECT_REQUEST0 (fwpsk.h)
Структура FWPS_CONNECT_REQUEST0 определяет изменяемые данные для FWPM_LAYER_ALE_AUTH_CONNECT_REDIRECT_V4 и FWPM_LAYER_ALE_AUTH_CONNECT_REDIRECT_V6 слоев. Драйвер выноски использует эти данные для проверки или изменения сведений о подключении.
Синтаксис
typedef struct _FWPS_CONNECT_REQUEST0 {
SOCKADDR_STORAGE localAddressAndPort;
SOCKADDR_STORAGE remoteAddressAndPort;
UINT64 portReservationToken;
DWORD localRedirectTargetPID;
struct _FWPS_CONNECT_REQUEST0 *previousVersion;
UINT64 modifierFilterId;
HANDLE localRedirectHandle;
void *localRedirectContext;
SIZE_T localRedirectContextSize;
} FWPS_CONNECT_REQUEST0;
Члены
localAddressAndPort
Адрес локального транспорта запроса на подключение. Это IPV4 или IPV6-адрес и TCP-порт, отформатированный как структура SOCKADDR_STORAGE.
remoteAddressAndPort
Адрес удаленного транспорта запроса на подключение. Это IPV4 или IPV6-адрес и порт TCP/UDP, отформатированный как структура SOCKADDR_STORAGE.
portReservationToken
Маркер, используемый для резервирования соответствующего порта. Маркер получается при зарезервировании порта путем вызова CreatePersistentTcpPortReservation или CreatePersistentUdpPortReservation.
localRedirectTargetPID
Идентификатор процесса локального узла, который будет обрабатывать трафик к адресу, указанному в localAddressAndPort. Это значение должно быть задано для изменений перенаправления в цикле, которые должны приниматься подсистемой.
previousVersion
Предыдущая версия данных запроса на подключение. Это поле только для чтения записывает журнал изменений запроса на подключение. Если данные запроса на подключение не были ранее изменены другим фильтром МПП, предыдущей версии будет задано значение NULL.
modifierFilterId
Значение элемента FilterId параметра classifyFn функции фильтра. Дополнительные сведения о элементе FilterId см. в разделе FWPS_FILTER1.
localRedirectHandle
Дескриптор перенаправления, созданный драйвером выноски, вызвав функцию FwpsRedirectHandleCreate0.
localRedirectContext
Область контекста драйвера выноски, выделенная драйвером выноски путем вызова функции ExAllocatePoolWithTag.
localRedirectContextSize
Размер области контекста, предоставленной выноской в байтах.
Замечания
Драйвер выноски получает эту структуру путем вызова функция FwpsAcquireWritableLayerDataPointer0, которая возвращает указатель на структуру FWPS_CONNECT_REQUEST0 через параметр writableLayerData. Функция classifyFn может изменять параметры запроса подключения, например перенаправление локального или удаленного транспортного адреса или порта на другой адрес или порт. Если он изменяет параметры запроса подключения, функция classifyFn должна выполнять следующие действия:
- Внесите все изменения в структуру FWPS_CONNECT_REQUEST0, возвращенную FwpsAcquireWritableLayerDataPointer0. Можно изменить только remoteAddressAndPort, portReservationToken, localRedirectTargetPID, localRedirectHandle, localRedirectContextи localRedirectContextSize.
- Звать FwpsApplyModifiedLayerData0 с параметром modifiedLayerData задан адрес структуры FWPS_CONNECT_REQUEST0, даже если драйвер выноски не изменил никаких данных. Это значение должно совпадать со значением параметра modifiedLayerData, возвращаемым через FwpsAcquireWritableLayerDataPointer0.
Требования
Требование | Ценность |
---|---|
минимальные поддерживаемые клиентские | Доступно начиная с Windows 7. |
заголовка | fwpsk.h (include Fwpsk.h) |