Функция NdisMCoSendNetBufferListsComplete (ndis.h)
Функция NdisMCoSendNetBufferListsComplet e возвращает связанный список структур NET_BUFFER_LIST в избыточный драйвер и возвращает окончательное состояние запроса на отправку CoNDIS.
Синтаксис
void NdisMCoSendNetBufferListsComplete(
[in] IN NDIS_HANDLE NdisVcHandle,
[in] IN PNET_BUFFER_LIST NetBufferLists,
[in] IN ULONG SendCompleteFlags
);
Параметры
[in] NdisVcHandle
Дескриптор, определяющий виртуальное подключение (VC). Минипорт-драйвер получил этот дескриптор в качестве входного параметра для своей функции MiniportCoCreateVc, когда клиент настроит исходящий вызов или когда диспетчер вызовов создал VC для точки доступа к зарегистрированной клиентом службе (SAP), чтобы указать уведомление о входящих вызовах.
[in] NetBufferLists
Указатель на связанный список структур NET_BUFFER_LIST. Минипорт-драйвер получил NET_BUFFER_LIST структуры в предыдущих вызовах к ней функция MiniportCoSendNetBufferLists.
[in] SendCompleteFlags
Флаги NDIS, которые можно объединить с побитовой операцией OR. Чтобы очистить все флаги, установите для этого параметра значение нулю. NdisMCoSendNetBufferListsComplete поддерживает флаг NDIS_SEND_COMPLETE_FLAGS_DISPATCH_LEVEL, который; Значение , если задано, указывает, что текущий IRQL DISPATCH_LEVEL. Дополнительные сведения об этом флаге см. в отслеживания IRQL.
Возвращаемое значение
Никакой
Замечания
Драйвер минипорта вызывает NdisMCoSendNetBufferListsComplete для завершения отправки запросов, внесенных NDIS в драйвер функция MiniportCoSendNetBufferLists. Драйвер минипорта указывает связанный список структур NET_BUFFER_LIST, связанных с завершенными запросами на отправку.
Пока ожидается состояние запросов на отправку, минипорт-драйвер сохраняет владение структурами NET_BUFFER_LIST и всеми ресурсами, связанными с NET_BUFFER_LIST структурами.
После вызова драйвера минипорта NdisMCoSendNetBufferListsComplete, NDIS возвращает структуры NET_BUFFER_LIST и связанные данные с избыточным драйвером, который был создан запросом на отправку.
Минипорт-драйвер может завершить отправку запросов в любом порядке. Например, драйвер минипорта может объединить списки структуры NET_BUFFER_LIST из нескольких MiniportCoSendNetBufferLists вызовов или разделить список из вызова MiniportCoSendNetBufferLists. Однако минипорт-драйвер не должен изменять список NET_BUFFER структур, связанных со структурой NET_BUFFER_LIST.
Драйвер минипорта должен задать один из следующих кодов состояния в элементе состояния каждой структуры NET_BUFFER_LIST, указанной параметром NetBufferLists:
Вызов драйвера мини-порта для NdisMCoSendNetBufferListsComplete не обязательно указывает, что данные для запроса на отправку передаются по сети. Например, данные могут быть помещены в очередь в аппаратном интерфейсе сетевого адаптера.