Функция NdisIMCopySendPerPacketInfo (ndis.h)
Примечание NDIS 5. X является нерекомендуемым и заменен NDIS 6. x. Сведения о разработке новых драйверов NDIS см. в статье Сетевые драйверы, начиная с Windows Vista. Сведения о переносе NDIS 5. x драйверы для NDIS 6. x, см. раздел Перенос драйверов NDIS 5.x в NDIS 6.0.
NdisIMCopySendPerPacketInfo копирует сведения о каждом пакете из пакета, отправленного драйвером верхнего уровня, в новый пакет для отправки в драйвер нижнего минипорта.
Синтаксис
void NdisIMCopySendPerPacketInfo(
[out] OUT PNDIS_PACKET DstPacket,
[in] IN PNDIS_PACKET SrcPacket
);
Параметры
[out] DstPacket
Указатель на дескриптор конечного пакета, в который копируются сведения об каждом пакете.
[in] SrcPacket
Указатель на дескриптор исходного пакета, из которого копируются сведения о каждом пакете.
Возвращаемое значение
None
Remarks
Когда промежуточный драйвер перенаправляет запрос на отправку от драйвера верхнего уровня в драйвер нижнего мини-порта, этот промежуточный драйвер вызывает NdisIMCopySendPerPacketInfo для копирования сведений о пакете. Промежуточный драйвер копирует сведения о каждом пакете из пакета, отправленного драйвером верхнего уровня, в новый пакет, который промежуточный драйвер отправляет в драйвер нижнего мини-порта. Промежуточный драйвер вызывает NdisIMCopySendPerPacketInfo для каждого пакета, отправляемого через стек, если промежуточный драйвер не должен изменять сведения о пакете.
Сведения о каждом пакете содержатся в структуре 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 (включая Ndis.h) |
Библиотека | Ndis.lib |
IRQL | Любой уровень |