Partager via


NDIS_STATUS_WWAN_PIN_INFO

Les pilotes miniport utilisent la notification NDIS_STATUS_WWAN_PIN_INFO pour répondre à la requête OID et définir les requêtes de OID_WWAN_PIN.

Les pilotes Miniport ne peuvent pas utiliser cette notification pour envoyer des événements non sollicités.

Cette notification utilise la structure NDIS_WWAN_PIN_INFO .

Notes

Les pilotes miniport doivent retourner des informations sur le numéro d’identité personnel (PIN) que l’appareil Mo attend actuellement en réponse à une requête. Les pilotes miniport doivent retourner la notification status remplie comme décrit dans les sections ci-dessous en réponse à une demande de jeu.

Réponse aux demandes WwanPinOperationEnter

Lorsque les pilotes miniport utilisent la notification NDIS_STATUS_WWAN_PIN_INFO pour répondre aux demandes WwanPinOperationEnter , ils doivent implémenter les procédures suivantes :

  • Pour les requêtes WwanPinOperationEnter réussies, lorsque l’appareil Mo n’a plus besoin d’un code confidentiel, les pilotes miniport doivent définir uStatus sur WWAN_STATUS_SUCCESS et PinType sur WwanPinTypeNone.

  • Pour les requêtes WwanPinOperationEnter ayant échoué, les pilotes miniport doivent définir uStatus sur WWAN_STATUS_FAILURE et inclure les données applicables en fonction des détails suivants :

    • Code confidentiel désactivé ou code confidentiel non attendu : pour les demandes de jeu WwanPinOperationEnter , lorsque le code confidentiel correspondant est désactivé ou n’est actuellement pas attendu par l’appareil Mo, les pilotes de miniport doivent définir PinType sur WwanPinTypeNone. Tous les autres membres sont ignorés.

    • Code confidentiel non pris en charge : si le code confidentiel donné n’est pas pris en charge par le périphérique Mo, les pilotes miniport doivent définir uStatus sur WWAN_STATUS_NO_DEVICE_SUPPORT.

    • Retrial de code confidentiel : dans ce mode, l’appareil Mo exige que le code confidentiel soit entré de nouveau, car la valeur AttemptsRemaining est toujours différente de zéro pour ce type particulier de code confidentiel. Les pilotes miniport doivent définir PinType sur la même valeur que celle de PinType dans NDIS_WWAN_SET_PIN.

    • Blocage du code confidentiel : le code confidentiel est bloqué lorsque TentativesRemaining est égal à zéro. Si l’opération de déblocage du code confidentiel n’est pas disponible, les pilotes miniport doivent définir uStatus sur WWAN_STATUS_FAILURE et PinType sur WwanPinTypeNone. Tous les autres membres sont ignorés.

      Note Si l’appareil Mb prend en charge les opérations de déblocage du code confidentiel, les pilotes miniport doivent suivre l’étape de déblocage du code confidentiel pour répondre à la demande.

    • Déblocage du code confidentiel : le code confidentiel est bloqué lorsque TentativesRemaining est égal à zéro. Pour débloquer le code confidentiel, l’appareil Mo peut demander une clé de déverrouillage (PUK) correspondante, le cas échéant. Dans ce cas, les pilotes miniport doivent définir PinType sur le puK WwanPinTypeXxxcorrespondant avec les détails appropriés.

    • PUK bloqué : si le nombre d’essais ayant échoué dépasse la valeur prédéfinie pour entrer le PUK WwanPinTypeXxx, la PUK devient bloquée. Les pilotes miniport doivent signaler cela en définissant uStatus sur WWAN_STATUS_FAILURE et PinType sur WwanPinTypeNone. En cas de blocage de PUK1, les pilotes miniport doivent envoyer un NDIS_STATUS_WWAN_READY_INFO avec ReadyState défini sur WwanReadyStateBadSim.

Réponse aux demandes WwanPinOperationEnable, WwanPinOperationDisable ou WwanPinOperationChange

Lorsque les pilotes miniport utilisent la notification NDIS_STATUS_WWAN_PIN_INFO pour répondre à WwanPinOperationEnable, WwanPinOperationDisable et WwanPinOperationChange, ils doivent implémenter les opérations suivantes :

  • Pour les demandes réussies, les pilotes miniport doivent définir uStatus sur WWAN_STATUS_SUCCESS. Pour les autres membres dans WWAN_PIN_INFO, consultez les circonstances suivantes.

  • Les pilotes miniport doivent définir uStatus sur WWAN_STATUS_SUCCESS pour les opérations d’activation et de désactivation du code confidentiel lorsque le code confidentiel est déjà dans l’état demandé. Les pilotes miniport doivent définir PinType sur WwanPinTypeNone. Les autres membres sont ignorés.

  • Lorsqu’un mode de code confidentiel passe de désactivé à activé, l’état du code confidentiel doit être WwanPinStateNone.

  • Si PIN1 est activé, l’état du code confidentiel devient WwanPinStateEnter lorsque l’alimentation est activée sur l’appareil Mo.

  • Pour tous les autres codes confidentiels, l’état du code confidentiel peut passer de WwanPinStateNone à WwanPinStateEnter en fonction des conditions spécifiques de l’appareil Mo.

  • Code confidentiel non pris en charge : si une opération de code confidentiel n’est pas prise en charge par le périphérique Mo, les pilotes miniport doivent définir uStatus sur WWAN_STATUS_NO_DEVICE_SUPPORT. Par exemple, l’activation et la désactivation du code PIN2 ne sont généralement pas prises en charge par les appareils Mo. Le code d’erreur ci-dessus doit donc être retourné. Tous les autres membres sont ignorés.

  • Code confidentiel Doit être entré : si une opération de code confidentiel nécessite l’entrée d’un code confidentiel, les pilotes miniport doivent définir uStatus sur WWAN_STATUS_PIN_REQUIRED et PinType sur WwanPinTypeXxx. Les autres membres sont ignorés.

  • Opération de modification du code confidentiel : si l’appareil Mo limite la modification de la valeur du code confidentiel uniquement lorsqu’il est activé, une demande de modification de l’état désactivé doit être retournée avec WWAN_STATUS_PIN_DISABLED.

  • Retrial pin : en cas d’échec, les pilotes miniport doivent définir uStatus sur WWAN_STATUS_FAILURE et PinType sur la même valeur que celle spécifiée dans NDIS_WWAN_SET_PIN. Les autres membres sont ignorés, à l’exception de TentativesRemaining. Cela peut se produire lorsqu’un code confidentiel incorrect est entré.

  • Blocage du code confidentiel : le code confidentiel est bloqué lorsque le nombre de tentativesRemaining est égal à zéro. Si l’opération de déblocage du code confidentiel n’est pas disponible, les pilotes miniport doivent définir uStatus sur WWAN_STATUS_FAILURE et PinType sur WwanPinTypeNone. TentativesRemaining doit être défini sur 0 et tous les autres membres sont ignorés.

    Note Si l’appareil Mb prend en charge les opérations de déblocage du code confidentiel, les pilotes miniport doivent suivre l’étape de déblocage du code confidentiel pour répondre à la demande.

  • Déblocage du code confidentiel : le code confidentiel est bloqué lorsque TentativesRemaining est égal à zéro. Pour débloquer le code confidentiel, l’appareil Mo peut demander une PUK correspondante, le cas échéant. Dans ce cas, les pilotes miniport doivent définir uStatus sur WWAN_STATUS_FAILURE, PinType sur le puk WwanPinTypeXxxcorrespondant, PinState sur WwanPinStateEnter, et AttemptsRemaining doit avoir le nombre de tentatives autorisées pour entrer un PUK valide.

    Si le blocage du code confidentiel entraîne le blocage de l’appareil Mo ou de la carte SIM, les pilotes miniport doivent envoyer une notification d’événement avec ReadyState défini sur WwanReadyStateDeviceLocked.

  • S’il existe un contexte PDP actif au moment du blocage du code PIN1, les pilotes miniports doivent désactiver le contexte PDP et envoyer des notifications au système d’exploitation concernant la désactivation et le changement d’état de liaison PDP.

Spécifications

Version

Disponible dans Windows 7 et versions ultérieures de Windows.

En-tête

Ndis.h

Voir aussi

OID_WWAN_PIN

NDIS_STATUS_WWAN_PIN_INFO