Функция NdisIMCopySendCompletePerPacketInfo (ndis.h)
Примечание NDIS 5. x устарел и заменен NDIS 6. x. Сведения о разработке новых драйверов NDIS см. в статье Сетевые драйверы, начиная с Windows Vista. Сведения о переносе NDIS 5. драйверов x в NDIS 6. xсм. перенос драйверов NDIS 5.x в NDIS 6.0.
NdisIMCopySendCompletePerPacketInfo копирует сведения о каждом пакете из пакета, возвращаемого драйвером нижнего минипорта, в новый пакет, который должен быть возвращен драйверу верхнего уровня.
Синтаксис
void NdisIMCopySendCompletePerPacketInfo(
[out] OUT PNDIS_PACKET DstPacket,
[in] IN PNDIS_PACKET SrcPacket
);
Параметры
[out] DstPacket
Указатель на дескриптор целевого пакета, в котором копируются сведения о каждом пакете.
[in] SrcPacket
Указатель на дескриптор исходного пакета, из которого копируются сведения о каждом пакете.
Возвращаемое значение
Никакой
Замечания
Когда промежуточный драйвер обрабатывает завершение запроса на отправку от нижнего минипорта драйвера, то промежуточный драйвер вызывает NdisIMCopySendCompletePerPacketInfo для копирования сведений о каждом пакете. Промежуточный драйвер копирует сведения о каждом пакете из пакета, возвращенного драйвером нижнего минипорта, в новый пакет, который промежуточный драйвер возвращается драйверу верхнего уровня. Промежуточный драйвер вызывает NdisIMCopySendCompletePerPacketInfo для каждого пакета, возвращаемого через стек, если промежуточный драйвер не должен изменять сведения о пакете для каждого пакета.
Сведения о каждом пакете содержатся в структуре NDIS_PACKET_EXTENSION и включают, например, сведения о контрольной сумме, сведения о безопасности протокола Интернета и сведения о приоритете 802.1p.
Если промежуточный драйвер должен изменить сведения о пакете для каждого пакета, этот промежуточный драйвер должен использовать макрос NDIS_PER_PACKET_INFO_FROM_PACKET для доступа к информации. Драйвер может вызывать этот макрос один раз для каждого типа сведений о каждом пакете, к которым он должен получить доступ.
Драйверы также могут использовать макрос NDIS_PACKET_EXTENSION_FROM_PACKET, который возвращает указатель на структуру NDIS_PACKET_EXTENSION. Драйвер может вызывать этот макрос, если он должен получить доступ к нескольким типам сведений о каждом пакете, связанном с дескриптором пакета. Получив указатель на структуру NDIS_PACKET_EXTENSION, драйвер может использовать соответствующий индекс массива для получения указателя на определенный тип сведений о каждом пакете.
Чтобы скопировать диапазон данных из одного пакета в другой, используйте функцию NdisCopyFromPacketToPacket.
- Целевая платформа: универсальная
- Версия: не поддерживается для драйверов NDIS 6.0 в Windows Vista. Поддерживается для драйверов NDIS 5.1 в Windows Vista и Windows XP.
Требования
Требование | Ценность |
---|---|
заголовка | ndis.h (include Ndis.h) |
библиотеки | Ndis.lib |
IRQL | Любой уровень |