Share via


Funzione BCryptQueryContextFunctionProperty (bcrypt.h)

La funzione BCryptQueryContextFunctionProperty ottiene il valore di una proprietà denominata per una funzione crittografica in un contesto CNG esistente.

Sintassi

NTSTATUS BCryptQueryContextFunctionProperty(
  [in]      ULONG   dwTable,
  [in]      LPCWSTR pszContext,
  [in]      ULONG   dwInterface,
  [in]      LPCWSTR pszFunction,
  [in]      LPCWSTR pszProperty,
  [in, out] ULONG   *pcbValue,
  [in, out] PUCHAR  *ppbValue
);

Parametri

[in] dwTable

Identifica la tabella di configurazione presente nel contesto. Questo può essere uno dei valori seguenti.

Valore Significato
CRYPT_LOCAL
Il contesto esiste nella tabella di configurazione del computer locale.
CRYPT_DOMAIN
Questo valore non è disponibile per l'uso.

[in] pszContext

Puntatore a una stringa Unicode con terminazione null contenente l'identificatore del contesto da cui ottenere la proprietà della funzione.

[in] dwInterface

Identifica l'interfaccia crittografica in cui esiste la funzione. Questo può essere uno dei valori seguenti.

Valore Significato
BCRYPT_ASYMMETRIC_ENCRYPTION_INTERFACE
La funzione esiste nell'elenco delle funzioni di crittografia asimmetrica.
BCRYPT_CIPHER_INTERFACE
La funzione esiste nell'elenco di funzioni di crittografia.
BCRYPT_HASH_INTERFACE
La funzione esiste nell'elenco di funzioni hash.
BCRYPT_RNG_INTERFACE
La funzione esiste nell'elenco delle funzioni del generatore di numeri casuali.
BCRYPT_SECRET_AGREEMENT_INTERFACE
La funzione esiste nell'elenco delle funzioni del contratto segreto.
BCRYPT_SIGNATURE_INTERFACE
La funzione esiste nell'elenco di funzioni di firma.
NCRYPT_KEY_STORAGE_INTERFACE
La funzione esiste nell'elenco delle funzioni di archiviazione delle chiavi.
NCRYPT_SCHANNEL_INTERFACE
La funzione esiste nell'elenco di funzioni Schannel.

[in] pszFunction

Puntatore a una stringa Unicode con terminazione null contenente l'identificatore della funzione crittografica per ottenere la proprietà per.

[in] pszProperty

Puntatore a una stringa Unicode con terminazione null contenente l'identificatore della proprietà da ottenere.

[in, out] pcbValue

L'indirizzo di una variabile ULONG che, nella voce, contiene le dimensioni, in byte, del buffer a cui punta ppbValue. Se questa dimensione non è abbastanza grande per contenere il valore della proprietà, questa funzione avrà esito negativo con STATUS_BUFFER_TOO_SMALL.

Dopo che questa funzione restituisce, questa variabile contiene il numero di byte copiati nel buffer ppbValue .

[in, out] ppbValue

Indirizzo di un puntatore a un buffer che riceve i dati della proprietà. Le dimensioni e il formato di questo buffer dipendono dal formato della proprietà recuperata. Il valore a cui punta il parametro pcbValue contiene le dimensioni di questo buffer.

Se il valore puntato da questo parametro è NULL, questa funzione allocherà la memoria necessaria. Questa memoria deve essere liberata quando non è più necessaria passando questo puntatore alla funzione BCryptFreeBuffer .

Se questo parametro è NULL, questa funzione inserisce le dimensioni necessarie, in byte, nella variabile a cui punta il parametro pcbValue e restituisce STATUS_BUFFER_TOO_SMALL.

Valore restituito

Restituisce un codice di stato che indica l'esito positivo o negativo della funzione.

I codici restituiti possibili includono, ma non sono limitati a, i seguenti.

Codice restituito Descrizione
STATUS_SUCCESS
La funzione ha avuto esito positivo.
STATUS_BUFFER_TOO_SMALL
Il parametro ppbValue non è NULL e il valore a cui punta il parametro pcbValue non è sufficiente per contenere il set di contesti.
STATUS_INVALID_PARAMETER
Uno o più parametri non sono validi.
STATUS_NO_MEMORY
Si è verificato un errore di allocazione della memoria.
STATUS_NOT_FOUND
Impossibile trovare il contesto, la funzione o la proprietà specificati.

Commenti

BCryptQueryContextFunctionProperty può essere chiamato solo in modalità utente.

Requisiti

Requisito Valore
Client minimo supportato Windows Vista [solo app desktop]
Server minimo supportato Windows Server 2008 [solo app desktop]
Piattaforma di destinazione Windows
Intestazione bcrypt.h
Libreria Bcrypt.lib
DLL Bcrypt.dll