Anhalten einer Bindung
Nachdem NDIS einem Protokolltreiber eine PnP-Pause-Ereignisbenachrichtigung (Network Plug & Play) für eine Bindung gesendet hat, wechselt die Bindung in den Zustand Anhalten.
Um den Protokolltreiber über das PnP-Pause-Ereignis zu benachrichtigen, ruft NDIS die ProtocolNetPnPEvent-Funktion auf, wobei das NetEvent-Element der NET_PNP_EVENT_NOTIFICATION Struktur auf NetEventPause festgelegt ist. Das Buffer-Element enthält eine NDIS_PROTOCOL_PAUSE_PARAMETERS-Struktur .
Für eine Bindung im Zustand "Anhalten" der Protokolltreiber:
Sollte keine neuen Sendeanforderungen initiieren.
Muss warten, bis ausstehende Sendeanforderungen abgeschlossen sind. Der Pausenvorgang ist erst abgeschlossen, wenn NDIS die ProtocolSendNetBufferListsComplete-Funktion für alle ausstehenden Sendeanforderungen des Treibers aufruft.
Sollte empfangsindikationen wie gewohnt verarbeiten. Der zugrunde liegende Miniporttreiber wartet, bis ausstehende Empfangsdaten zurückgegeben werden, bevor ein Pausenvorgang abgeschlossen wird. Dadurch wird sichergestellt, dass keine laufenden Empfangsvorgänge im Treiberstapel vorhanden sind, nachdem der Miniporttreiber angehalten wurde.
Sollte neue Empfangsanzeigen sofort an NDIS zurückgeben. Bei Bedarf kann der Treiber solche Empfangshinweise kopieren, bevor er sie zurückgibt.
Weitere Informationen zu Sende- und Empfangsvorgängen des Protokolltreibers finden Sie unter Sende- und Empfangsvorgänge des Protokolltreibers.
Eine Bindung wechselt in den Zustand Angehalten, nachdem der Protokolltreiber ausstehende Empfangsanzeigen für die Bindung zurückgegeben hat und NDIS alle ausstehenden Sendeanforderungen für die Bindung abgeschlossen hat.
Für eine Bindung im Zustand Angehalten:
Darf keine Sendeanforderungen stellen.
Sollte empfangene Hinweise sofort zurückgeben. Bei Bedarf kann der Treiber solche Empfangshinweise kopieren, bevor er sie zurückgibt.