BCryptQueryContextFunctionConfiguration-Funktion (bcrypt.h)
[BCryptQueryContextFunctionConfiguration ist für die Verwendung in den Betriebssystemen verfügbar, die im Abschnitt Anforderungen angegeben sind. Sie kann in nachfolgenden Versionen geändert oder nicht verfügbar sein.]
Die BCryptQueryContextFunctionConfiguration-Funktion ruft die Konfigurationsinformationen der kryptografischen Funktion für einen vorhandenen CNG-Kontext ab.
Syntax
NTSTATUS BCryptQueryContextFunctionConfiguration(
[in] ULONG dwTable,
[in] LPCWSTR pszContext,
[in] ULONG dwInterface,
[in] LPCWSTR pszFunction,
[in, out] ULONG *pcbBuffer,
[in, out] PCRYPT_CONTEXT_FUNCTION_CONFIG *ppBuffer
);
Parameter
[in] dwTable
Gibt die Konfigurationstabelle an, in der der Kontext vorhanden ist. Dies kann einer der folgenden Werte sein.
Wert | Bedeutung |
---|---|
|
Der Kontext ist in der Konfigurationstabelle des lokalen Computers vorhanden. |
|
Dieser Wert steht nicht zur Verwendung zur Verfügung. |
[in] pszContext
Ein Zeiger auf eine mit NULL beendete Unicode-Zeichenfolge, die den Bezeichner des Kontexts enthält, für den die Funktionskonfigurationsinformationen abgerufen werden sollen.
[in] dwInterface
Gibt die kryptografische Schnittstelle an, für die die Funktionskonfigurationsinformationen abgerufen werden sollen. Dies kann einer der folgenden Werte sein.
[in] pszFunction
Ein Zeiger auf eine Unicode-Zeichenfolge mit NULL-Beendigung, die den Bezeichner der kryptografischen Funktion enthält, für die die Konfigurationsinformationen abgerufen werden sollen.
[in, out] pcbBuffer
Die Adresse einer ULONG-Variablen , die bei einem Eintrag die Größe des Puffers in Bytes enthält, auf den ppBuffer verweist. Wenn diese Größe nicht groß genug ist, um die Kontextinformationen zu enthalten, schlägt diese Funktion mit STATUS_BUFFER_TOO_SMALL fehl.
Nachdem diese Funktion zurückgegeben wurde, enthält diese Variable die Anzahl der Bytes, die in den ppBuffer-Puffer kopiert wurden.
[in, out] ppBuffer
Die Adresse eines Zeigers auf eine CRYPT_CONTEXT_FUNCTION_CONFIG Struktur, die die von dieser Funktion abgerufenen Funktionskonfigurationsinformationen empfängt. Der Wert, auf den der pcbBuffer-Parameter verweist, enthält die Größe dieses Puffers.
Wenn der Wert, auf den dieser Parameter verweist, NULL ist, weist diese Funktion den erforderlichen Arbeitsspeicher zu. Dieser Speicher muss freigegeben werden, wenn er nicht mehr benötigt wird, indem dieser Zeiger an die BCryptFreeBuffer-Funktion übergeben wird.
Wenn dieser Parameter NULL ist, platziert diese Funktion die erforderliche Größe in Bytes in der Variablen, auf die der pcbBuffer-Parameter verweist, und gibt STATUS_BUFFER_TOO_SMALL zurück.
Weitere Informationen zur Verwendung dieses Parameters finden Sie unter Hinweise.
Rückgabewert
Gibt einen status Code zurück, der den Erfolg oder Fehler der Funktion angibt.
Mögliche Rückgabecodes umfassen folgendes, sind aber nicht darauf beschränkt.
Rückgabecode | Beschreibung |
---|---|
|
Die Funktion war erfolgreich. |
|
Der ppBuffer-Parameter ist nicht NULL, und der Wert, auf den der pcbBuffer-Parameter verweist, ist nicht groß genug, um den Satz von Kontexten zu enthalten. |
|
Mindestens ein Parameter ist ungültig. |
|
Ein Fehler bei der Speicherzuordnung ist aufgetreten. |
|
Der angegebene Kontext oder die angegebene Funktion konnte nicht gefunden werden. |
Hinweise
Jede kryptografische Funktion verfügt nur über einen Satz von Konfigurationsinformationen. Obwohl der ppBuffer-Parameter als Array verwendet zu werden scheint, behandelt diese Funktion dies als Array mit nur einem Element. Im folgenden Beispiel wird erläutert, wie dieser Parameter verwendet wird.
// Get the function configuration information.
CRYPT_CONTEXT_FUNCTION_CONFIG FuncConfig;
ULONG uSize = sizeof(FuncConfig);
PCRYPT_CONTEXT_FUNCTION_CONFIG pFuncConfig = &FuncConfig;
status = BCryptQueryContextFunctionConfiguration(
CRYPT_LOCAL,
pszContext,
NCRYPT_SCHANNEL_INTERFACE,
pszFunction,
&uSize,
&pFuncConfig);
BCryptQueryContextFunctionConfiguration kann nur im Benutzermodus aufgerufen werden.
Anforderungen
Anforderung | Wert |
---|---|
Unterstützte Mindestversion (Client) | Windows Vista [nur Desktop-Apps] |
Unterstützte Mindestversion (Server) | Windows Server 2008 [nur Desktop-Apps] |
Zielplattform | Windows |
Kopfzeile | bcrypt.h |
Bibliothek | Bcrypt.lib |
DLL | Bcrypt.dll |