Compartilhar via


NDIS_GET_PACKET_STATUS

Windows Mobile Not SupportedWindows Embedded CE Supported

9/8/2008

Essa macro retorna o Status valor de Out - Of - bloco de dados banda (OOB) associado com um descritor determinado pacote.

Syntax

NDIS_STATUS NDIS_GET_PACKET_STATUS(
  PNDIS_PACKET _Packet
);

Parameters

  • _Packet
    Aponta para um descritor pacote.

Return Value

O valor de retorno é o valor de status de bloco de dados de OOB associado com _Packet. A seguinte tabela mostra os valores possíveis status retornados por NDIS_GET_PACKET_STATUS.

Valor Descrição

NDIS_STATUS_SUCCESS

Se isso é definido em retornar a partir chamar de uma miniporta para NdisMIndicateReceivePacket, a miniporta regains a propriedade do seguinte:

  • Descritor de pacote
  • O associado out - de - bloco de dados banda e de qualquer reserva informações Media-specific especificada neste bloco
  • Todos os buffers mapeados pelo descritores reserva encadeadas para o pacote de miniporta apenas indicada

O driver de miniporta pode preparar esses descritores, de Out - Of - bloco banda e reserva informações Media-specific, se houver, para reutilização em subseqüentes receber indicações e, se ele é um driver NIC, pode receber dados novos do NIC mapeado pelo descritores de reserva retornado buffers de recepção.

NDIS_STATUS_PENDING

Se isso estiver definido em retornar da NdisMIndicateReceivePacket, protocolos apropriar reter do seguinte:

  • Descritor de pacote
  • O associado out - de - bloco de dados banda e de qualquer reserva informações Media-specific especificada neste bloco
  • Todos os buffers mapeados pelo descritores reserva encadeadas para o pacote de miniporta apenas indicada

Até que o descritor pacote é retornado para o MiniportReturnPacket função do indicando driver, ele não deve acessar qualquer um dos buffers de especificado com descritor de pacote.

NDIS_STATUS_RESOURCES

Se isso for definido, de um driver protocolo ProtocolReceivePacketfunção deve copiar os dados pacote imediatamente vez mantendo o NIC - driver - alocado recursos pacote.

Remarks

Use esta macro no serializado drivers, miniportas ou intermediário drivers que indicará uma recepção até os drivers de nível superior. Ao pacote Status é definido como NDIS_STATUS_RESOURCES, Connection-Oriented protocolos chamar essa macro a partir ProtocolReceivePacket.

Drivers serializados não é necessário usar essa macro. Quando esses drivers indicam até um pacote cujos Status não está definido para NDIS_STATUS_RESOURCES, NDIS sempre retorna o pacote para do o driver MiniportReturnPacket função. Quando esses drivers indicam até um pacote cujos Status está definido para NDIS_STATUS_RESOURCES, NDIS sempre retorna o pacote implicitamente em retorno de NdisMIndicateReceivePacket. Em resumo, quando NDIS retorna um pacote para um driver, um sobre o retorno do NdisMIndicateReceivePacket ou Para do o driver MiniportReturnPacket função de pacote retornado e Todos seu associado recursos pertencem para o driver. O driver deve salvar o status de cada Recebido pacote que ela indica até so that ele sabe, sobre o retorno de NdisMIndicateReceivePacket, Se do pacote Status é NDIS_STATUS_RESOURCES.

Drivers de protocolo deve Nunca testar a Status valor em um associado out - de - bloco de dados banda no retorno de NdisSendPackets Ou NdisSend. NDIS ou o subjacente driver retém a propriedade de descritor o pacote, do associado out - de - bloco banda e qualquer buffers especificados neste bloco e de todos os buffers mapeados pelo descritores reserva encadeadas para o descritor pacote até a ProtocolSendComplete função é chamado com descritor de pacote.

O NDIS_GET_PACKET_STATUS macro é definido como a seguir.

#define NDIS_GET_PACKET_STATUS(_Packet)                                 \
                        ((PNDIS_PACKET_OOB_DATA)((PUCHAR)(_Packet) +    \
                        (_Packet)->Private.NdisPacketOobOffset))->Status

Requirements

Header ndis.h
Windows Embedded CE Windows CE .NET 4.0 and later

See Also

Reference

MiniportReturnPacket
NdisAllocatePacket
NdisMIndicateReceivePacket
NDIS_GET_PACKET_MEDIA_SPECIFIC_INFO
NDIS_SET_PACKET_MEDIA_SPECIFIC_INFO
NDIS_SET_PACKET_STATUS
NDIS_PACKET_OOB_DATA
NDIS_OOB_DATA_FROM_PACKET
NdisSend
NdisSendPackets
ProtocolReceivePacket
ProtocolSendComplete