IOCTL_NFCSE_SET_CARD_EMULATION_MODE IOCTL (nfcsedev.h)

Der IOCTL_NFCSE_SET_CARD_EMULATION_MODE-Steuerelementcode legt fest, ob das angegebene sichere Element im Karte Emulationsmodus verfügbar gemacht wird. Wenn ein sicheres Element als Karte Emulation "verfügbar gemacht" wird, bedeutet dies, dass der Leser auf dieses sichere Element zugreifen kann, wenn das Gerät an einen externen Reader gebracht wird. Die IOCTL wird für ein Dateihandle ausgegeben, das mit dem relativen Dateinamen "SEManage" geöffnet wird. Der Treiber MUSS exklusiven Zugriff auf den Client gewähren, um Karte Emulationsmodus zu verwalten. Das heißt, nachfolgende Aufrufe zum Öffnen eines Dateihandles mit dem relativen Dateinamen "SEManage" schlagen mit STATUS_ACCESS_DENIED fehl, bis der Client mit exklusivem Zugriff sein Dateihandle schließt.

Hauptcode

IRP_MJ_DEVICE_CONTROL

Eingabepuffer

SECURE_ELEMENT_SET_CARD_EMULATION_MODE_INFO Struktur.

Ausgabepuffer

Keine

Statusblock

Irp->IoStatus.Status ist auf STATUS_SUCCESS festgelegt, wenn die Anforderung erfolgreich ist. Mögliche Fehlercodes sind:

Code zurückgeben Beschreibung
STATUS_INVALID_PARAMETER Wenn die GUID des sicheren Elements ungültig ist oder der Ausgabepuffer ungleich 0 ist.
STATUS_INVALID_DEVICE_STATE Wenn die IOCTL auf einem anderen Handle als mit dem relativen Namen "SEManage" gesendet wird.

Hinweise

Im Folgenden sind Anforderungen aufgeführt, die der Treiber erfüllen muss.

  • Diese IOCTL muss für ein Handle aufgerufen werden, das über einen relativen Dateinamen SEEvents verfügt. Andernfalls gibt der Treiber STATUS_INVALID_DEVICE_STATE zurück.
  • Wenn Karte Emulationsmodus für alle sicheren Elemente, die an den NFC-Controller angefügt sind, auf EmulationOff festgelegt ist, muss der Emulationsmodus der Abrufschleife deaktiviert werden. Wenn näherungsfeatures ebenfalls deaktiviert sind, sollte der Treiber in einen Energiesparmodus wechseln.
  • Wenn Karte Emulationsmodus auf einen anderen Wert als EmulationOff festgelegt ist, muss sich der Treiber weiterhin im D0-Zustand befinden, und der Emulationsmodus der Abfrageschleife sollte aktiviert sein (für externe Leser erkennbar).
  • Wenn das geöffnete SEManage-Dateihandle geschlossen ist, muss der Treiber die Karte Emulationsmoduseinstellungen aller sicheren Elemente auf EmulationOff festlegen, außer wenn der letzte Satz Karte Emulationsmoduszustand EmulationOnPowerIndependent lautet. Wenn die letzte Einstellung Karte Emulationsmoduszustand EmulationOnPowerIndependent ist, muss der Treiber bei der Einstellung Karte Emulationsmodus auf Ein mit der PbF-Option für die spezifischen sicheren Elemente bleiben.
  • Der Treiber muss dem Client exklusiven Zugriff gewähren, um Karte Emulationsmodus zu verwalten. Nachfolgende Aufrufe zum Öffnen eines Dateihandles mit dem relativen Dateinamen SEManage schlagen mit STATUS_ACCESS_DENIED fehl, bis der Client mit exklusivem Zugriff sein Dateihandle schließt.

Anforderungen

Anforderung Wert
Header nfcsedev.h