OID_PM_ADD_WOL_PATTERN
En tant qu’ensemble, les pilotes de protocole NDIS utilisent l’OID OID_PM_ADD_WOL_PATTERN pour ajouter un modèle wake-on-LAN de gestion de l’alimentation à une carte réseau. Le membre InformationBuffer de la structure NDIS_OID_REQUEST contient un pointeur vers une structure NDIS_PM_WOL_PATTERN .
Notes
Les pilotes de protocole NDIS 6.20 et versions ultérieures utilisent OID_PM_ADD_WOL_PATTERN pour ajouter un modèle De veille sur RÉSEAU (WOL) à une carte réseau. La requête OID contient le critère que la carte réseau doit comparer aux paquets entrants lorsqu’elle est dans un état de faible consommation. La carte réseau doit générer un événement de mise en éveil lorsqu’elle reçoit un paquet qui correspond aux critères de modèle.
Un pilote de protocole peut ajouter des modèles WOL après sa liaison à une carte réseau sous-jacente et dès qu’il dispose des données nécessaires (telles que l’adresse IP de l’interface) pour configurer le modèle WOL. Le pilote de protocole peut également ajouter un modèle WOL en réponse à d’autres notifications d’événements de gestion de l’alimentation, telles que le rejet d’un modèle WOL précédemment ajouté ou d’un protocole déchargé.
Pour éviter les conditions de concurrence dans NDIS et d’autres pilotes de protocole qui sont liés à la même carte miniport, une fois que NDIS commence à définir une carte réseau à un état d’alimentation faible, toute tentative d’ajout d’un nouveau modèle de mise en éveil à cette carte réseau échoue. Par exemple, si un pilote de protocole NDIS tente d’ajouter un nouveau modèle WOL dans le contexte du traitement d’une notification d’événement NetEventSetPower pour cette carte réseau, NDIS échoue à la demande.
Avant que NDIS envoie cette requête OID aux pilotes NDIS sous-jacents ou termine la demande au pilote de sur-insertion, il définit le membre ULONG PatternId de la structure NDIS_PM_WOL_PATTERN sur une valeur unique. Les pilotes de protocole et NDIS utilisent cet identificateur de modèle avec la requête OID OID_PM_REMOVE_WOL_PATTERN pour supprimer le modèle WOL de la carte réseau sous-jacente.
Note L’identificateur de modèle est une valeur unique pour chacun des modèles définis sur une carte réseau. Toutefois, l’identificateur de modèle n’est pas globalement unique sur tous les adaptateurs miniport.
Si NDIS ou une carte réseau sous-jacente supprime un modèle WOL, il génère une indication NDIS_STATUS_PM_WOL_PATTERN_REJECTED status. Le membre StatusBuffer de la structure NDIS_STATUS_INDICATION contient l’identificateur de modèle WOL ULONG du modèle WOL rejeté.
Le pilote miniport retourne l’un des codes status suivants pour la demande :
NDIS_STATUS_SUCCESS
Le modèle demandé a été ajouté avec succès. Le membre PatternId de la structure NDIS_PM_WOL_PATTERN contient un identificateur de modèle.
NDIS_STATUS_PENDING
La demande est en attente d’achèvement. NDIS transmet le code status final et les résultats au gestionnaire d’achèvement de la requête OID de l’appelant une fois la requête terminée.
NDIS_STATUS_PM_WOL_PATTERN_LIST_FULL
La demande a échoué, car la liste des modèles est complète et la carte réseau ne peut pas ajouter un autre modèle.
NDIS_STATUS_RESOURCES
NDIS ou la carte réseau sous-jacente n’a pas pu ajouter le nouveau modèle en raison d’un manque de ressources.
NDIS_STATUS_INVALID_PARAMETER
Un ou plusieurs paramètres de la structure NDIS_PM_WOL_PATTERN n’étaient pas valides.
NDIS_STATUS_BUFFER_TOO_SHORT
La mémoire tampon d’informations était trop courte. NDIS définit les DONNÉES. SET_INFORMATION. Le membre BytesNeeded dans le NDIS_OID_REQUEST structure à la taille de mémoire tampon minimale requise.
NDIS_STATUS_NOT_SUPPORTED
La carte réseau ne prend pas en charge le modèle WOL demandé.
NDIS_STATUS_FAILURE
La demande a échoué pour d’autres raisons que les raisons précédentes.
Spécifications
Version |
Pris en charge dans NDIS 6.20 et versions ultérieures. Obligatoire pour les pilotes de miniport. |
En-tête |
Ntddndis.h (inclure Ndis.h) |