Примечание.
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
[Функция разгрузки дымохода TCP не рекомендуется и не должна использоваться.]
NDIS вызывает драйвер протокола или промежуточный драйвер функция ProtocolTcpOffloadReceiveIndicate для доставки полученных данных, которые указываются базовым драйвером или целевым объектом разгрузки.
Синтаксис
TCP_OFFLOAD_RECEIVE_INDICATE_HANDLER TcpOffloadReceiveIndicateHandler;
NDIS_STATUS TcpOffloadReceiveIndicateHandler(
[in] IN PVOID OffloadContext,
[in] IN PNET_BUFFER_LIST NetBufferList,
[in] IN NDIS_STATUS Status,
[out] OUT PULONG BytesConsumed
)
{...}
Параметры
[in] OffloadContext
Указатель на структуру NDIS_OFFLOAD_HANDLE протокола или промежуточного драйвера для TCP-подключения, на котором выполняется указание. Протокол или промежуточный драйвер предоставил этот указатель в качестве входного параметра функции NdisInitiateOffload при разгрузке соединения.
[in] NetBufferList
Указатель на структуру NET_BUFFER_LIST. Каждая NET_BUFFER_LIST структура описывает список NET_BUFFER структур. Каждая NET_BUFFER структура в списке сопоставляется с цепочкой списков дескрипторов памяти (МНОГОМЕРНЫЕ выражения). Многомерные выражения содержат полученные данные. Многомерные ключи блокируются таким образом, чтобы они оставались резидентными, но они не сопоставляются с системной памятью.
Структура NET_BUFFER_LIST, указанная NetBufferList, должна быть автономной структурой и не может быть первой в связанном списке структур NET_BUFFER_LIST. Целевые показатели разгрузки могут обойти это ограничение путем цепочки столько много многомерных выражений, сколько необходимо для того же NET_BUFFER в признаке получения разгрузки.
[in] Status
Промежуточный драйвер должен распространять это состояние при вызове. NdisTcpOffloadReceiveHandler.
[out] BytesConsumed
Указатель на переменную типа ULONG, которая получает количество байтов, потребляемых клиентским приложением.
Возвращаемое значение
Тем функция ProtocolTcpOffloadReceiveIndicate может возвращать одно из следующих значений:
| Возвращаемый код | Описание |
|---|---|
|
Клиентское приложение использовало все указанные данные получения. |
|
Клиентское приложение отклонило все указанные данные получения. |
|
Клиентское приложение использовало подмножество указанных данных получения. Объем данных в байтах, который использовался клиентским приложением, возвращается в переменной, указанной параметром BytesConsumed. |
Замечания
Чтобы распространить указание на избыточный драйвер или стек узлов, промежуточный драйвер вызывает функции NdisTcpOffloadReceiveHandler. Промежуточный драйвер передает следующие параметры функции NdisTcpOffloadReceiveHandler:
- NdisOffloadHandle, что целевой объект разгрузки, хранящийся в его контексте для отключенного TCP-подключения. Дополнительные сведения см. в разделе ссылки на отключенное состояние через промежуточный драйвер.
- Указатель NetBufferList, передаваемый NDIS в функцию протокола ProtocolTcpOffloadReceiveIndic ate промежуточного драйвера.
- состояния, передаваемые NDIS в функцию протокола ProtocolTcpOffloadReceiveIndicate драйвера.
Требования
| Требование | Ценность |
|---|---|
| целевая платформа | Виндоус |
| заголовка | ndischimney.h (включая Ndischimney.h) |