Compartilhar via


NdisMIndicateStatus

Windows Mobile Not SupportedWindows Embedded CE Supported

9/8/2008

Essa função indica alterações no status de uma NIC para drivers NDIS de nível superior.

Syntax

VOID NdisMIndicateStatus(
  NDIS_HANDLE MiniportAdapterHandle,
  NDIS_STATUS GeneralStatus,
  PVOID StatusBuffer,
  UINT StatusBufferSize
);

Parameters

  • MiniportAdapterHandle
    [no] Manipular originalmente entrada para o MiniportInitialize função.
  • GeneralStatus
    [no] Especifica a NDIS_STATUS_XXX valor que indica a alteração geral no status para a NIC.
  • StatusBuffer
    [no] Ponteiro para uma reserva Caller-allocated que contém dados que está Medium-specific e dependente sobre o valor de GeneralStatus. Ele indica informações detalhadas sobre a alteração no status.
  • StatusBufferSize
    [no] Especifica o tamanho, em bytes, da reserva em StatusBuffer.

Return Value

Nenhum.

Remarks

Quando uma miniporta chamadas NdisMIndicateStatusNDIS, chamadas cada ligado do protocolo ProtocolStatus função. Isso permite que um ligado driver protocolo ou, possivelmente, o Gerenciador configuração para log de alteração no status de um subjacente NIC ou tenham ação corretiva. De exemplo, um protocolo pode chamar o NdisReset função, depending on o NDIS_STATUS_XXX indicado.

Quando uma miniporta chamadas NdisMIndicateStatus Para relatório uma alteração no status NIC, NDIS pode chamar o MiniportReset função tentar para restaurar o NIC para uma condição de trabalho. Nessas circunstâncias, NDIS pode chamar ligado protocolos somente com NDIS_STATUS_RESET_START e posteriormente com NDIS_STATUS_RESET_END, em vez com o GeneralStatus indicado de miniporta.

NdisMIndicateStatus Fornece duas partes de informações:

  • Um valor status geral indicando a alteração no status geral.
  • Um motivo específico para a alteração geral, que pode ser Network-specific. Anel de exemplo, - falhas inserção são específico para redes Token Ring (802.5), mas são irrelevantes para placas de rede Ethernet (802.3) e seus drivers.

Uma miniporta também pode chamar NdisMIndicateStatus Para indicar problemas, como cabos que foram removidos acidentalmente e, em seguida, reinseridos, ou um anel que tenha temporariamente falha. De exemplo, dois As seguinte condições pode ocorrer:

  • A miniporta chama essa função com NDIS_STATUS_RING_STATUS.
  • O StatusBuffer Contém um do seguinte status valores:
    • NDIS_RING_LOBE_WIRE_FAULT
    • NDIS_RING_HARD_ERROR
    • NDIS_RING_SIGNAL_LOSS

Depois que tal uma alteração no status tiver sido sinalizado com uma indicação, qualquer associado contadores limites ou estatísticas permanecem inalterado.

A maioria dos rede de longa distância (WAN) NIC drivers indicam status com alguns códigos especiais status e conteúdo reserva. Rede de longa distância (WAN) NIC drivers geram essas indicações sobre status e drivers protocolo NDIS ligado para tal uma miniporta pode ignorar essas indicações. No entanto, processamento essas indicações corretamente geralmente resulta em desempenho aprimorado para protocolos rede de longa distância (WAN) NIC e drivers.

O seguinte quatro tipos de Indicações WAN-específicos podem ser enviados para ligado drivers protocolo com NdisMIndicateStatus:

  • Alinhar
  • Linha para baixo
  • Fragmento
  • TAPI linha evento

Um rede de longa distância (WAN) miniporta torna uma indicação fila sempre que um novo link fica ativo. Até que isso ocorra, o NIC aceita quadros e permite-los bem-sucedida ou falhar, mas é improvável que forem recebidos por qualquer remoto.

O rede de longa distância (WAN) miniporta torna essa indicação com NdisMIndicateStatus Antes de que retornará de um OID_TAPI_GET_ID solicitação.

Codificar o status para a indicação fila é NDIS_STATUS_WAN_LINE_UP. A reserva em StatusBuffer é formatado como um NDIS_MAC_LINE_UP estrutura.

Um rede de longa distância (WAN) miniporta torna uma indicação line-Down sempre que um link for desligado. Quando isso ocorre, ligado protocolos devem reduzir seu timer e repetir as contagens até o próximo indicação fila.

Codificar o status para a indicação line-down é NDIS_STATUS_WAN_LINE_DOWN. A reserva em StatusBuffer é formatado como um NDIS_MAC_LINE_DOWN estrutura.

Um rede de longa distância (WAN) miniporta torna uma indicação de fragmento sempre que ele recebe um pacote parcial do remoto nó. Quando isso ocorre, um ligado protocolo envia quadros para o remoto que notifique-lo nessa situação, rather than aguardando um tempo limite para ocorrer.

Codificar o status para a indicação de fragmento é NDIS_STATUS_WAN_FRAGMENT. A reserva em StatusBuffer é formatado como um NDIS_MAC_FRAGMENT estrutura.

Adaptador monitora pacotes ato de soltar por contagem o número de fragmento indicações em cada link.

Um rede de longa distância (WAN) miniporta deve usar um GeneralStatus valor de NDIS_STATUS_TAPI_INDICATION de TAPI status indicações*.* A reserva em StatusBuffer é formatado como um NDIS_TAPI_EVENT estrutura.

Requirements

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

See Also

Reference

MiniportInitialize
MiniportReset
NdisMIndicateStatusComplete
NDIS_MAC_FRAGMENT
NDIS_MAC_LINE_UP
NDIS_MAC_LINE_DOWN
NDIS_TAPI_EVENT
NdisReset
ProtocolStatus