Pausando uma associação
Depois que o NDIS envia a um driver de protocolo uma notificação de evento de pausa de Plug and Play de rede (PnP) para uma associação, a associação entra no estado Pausar.
Para notificar o driver de protocolo do evento de pausa PnP, o NDIS chama a função ProtocolNetPnPEvent com o membro NetEvent da estrutura NET_PNP_EVENT_NOTIFICATION é definido como NetEventPause. O membro Buffer contém uma estrutura NDIS_PROTOCOL_PAUSE_PARAMETERS .
Para uma associação no estado Pausar, o driver de protocolo:
Não deve iniciar novas solicitações de envio.
Deve aguardar a conclusão das solicitações de envio pendentes. A operação de pausa não é concluída até que o NDIS chame a função ProtocolSendNetBufferListsComplete para todas as solicitações de envio pendentes do driver.
Deve tratar as indicações de recebimento como de costume. O driver de miniporto subjacente aguarda o retorno dos dados de recebimento pendentes antes de concluir uma operação de pausa. Isso garante que não haja nenhuma operação de recebimento em andamento na pilha do driver depois que o driver de miniporto for pausado.
Deve retornar novas indicações de recebimento ao NDIS imediatamente. Se necessário, o driver pode copiar essas indicações de recebimento antes de retornar.
Para obter mais informações sobre as operações de envio e recebimento do driver de protocolo, consulte Operações de envio e recebimento do driver de protocolo.
Uma associação entra no estado Pausado depois que o driver de protocolo é feito retornando indicações de recebimento pendentes para a associação e o NDIS concluiu todas as solicitações de envio pendentes para a associação.
Para uma associação no estado Pausado, o driver de protocolo:
Não deve fazer nenhuma solicitação de envio.
Deve retornar indicações de recebimento imediatamente. Se necessário, o driver pode copiar essas indicações de recebimento antes de retornar.