EricGetPinStatus

Function EricGetPinStatus 

Source
pub unsafe extern "C" fn EricGetPinStatus(
    hToken: EricZertifikatHandle,
    pinStatus: *mut u32,
    keyType: u32,
) -> c_int
Expand description

@brief Der PIN-Status wird für ein passwortgeschütztes Kryptomittel abgefragt und in @c pinStatus zurückgegeben.

Der PIN-Status wird für einen passwortgeschützten Bereich ermittelt, der durch das übergebene Zertifikat-Handle im Parameter @c hToken referenziert wird. Da bei Sicherheitssticks und Signaturkarten durch ein einziges Zertifikat-Handle zwei Schlüsselpaare referenziert werden können (eines für die Signatur und eines für die Verschlüsselung von Daten), muss grundsätzlich der Parameter @c keyType gesetzt werden.

Mit dem Rückgabewert der Funktion kann der Endanwender rechtzeitig informiert werden, falls bei einer weiteren falschen PIN-Eingabe das Kryptomittel gesperrt wird. Im Fehlerfall ist @c pinStatus nicht definiert.

Der Karten- bzw. Stickhersteller ist verantwortlich, dass seine Implementierung den korrekten PIN-Status zurückgibt, siehe auch Tabelle “PIN-Statusabfrage für POZ” im Unterkap. “Das Portalzertifikat (POZ)” im Dokument @typeDokumentation{ERiC-Entwicklerhandbuch.pdf}.

@param[in] hToken @parblock Zertifikat-Handle, für dessen passwortgeschützten Bereich der PIN-Status ermittelt werden soll.

       Wird von der Funktion
       EricGetHandleToCertificate() zurückgeliefert.
 @endparblock

@param[out] pinStatus @parblock Mögliche Rückgabewerte: @mAbsatz - 0: StatusPinOk: Kein Fehlversuch oder keine Informationen verfügbar - 1: StatusPinLocked: PIN gesperrt - 2: StatusPreviousPinError: Die letzte PIN-Eingabe war fehlerhaft - 3: StatusLockedIfPinError: Beim nächsten fehlerhaften Versuch wird die PIN gesperrt @endparblock @param[in] keyType @parblock Mögliche Eingabewerte: @mAbsatz - 0: eSignatureKey: Schlüssel für die Signatur von Daten - 1: eEncryptionKey: Schlüssel für die Verschlüsselung von Daten @endparblock @return - ::ERIC_OK - ::ERIC_GLOBAL_NULL_PARAMETER - ::ERIC_GLOBAL_NICHT_GENUEGEND_ARBEITSSPEICHER - weitere, siehe eric_fehlercodes.h

@see - EricGetHandleToCertificate() - @typeDokumentation{ERiC-Entwicklerhandbuch.pdf}, Kap. “Zertifikate und Authentifizierungsverfahren”