Funzione BCryptResolveProviders (bcrypt.h)
La funzione BCryptResolveProviders ottiene una raccolta di tutti i provider che soddisfano i criteri specificati.
Sintassi
NTSTATUS BCryptResolveProviders(
[in, optional] LPCWSTR pszContext,
[in, optional] ULONG dwInterface,
[in, optional] LPCWSTR pszFunction,
[in, optional] LPCWSTR pszProvider,
[in] ULONG dwMode,
[in] ULONG dwFlags,
[in, out] ULONG *pcbBuffer,
[in, out] PCRYPT_PROVIDER_REFS *ppBuffer
);
Parametri
[in, optional] pszContext
Puntatore a una stringa Unicode con terminazione Null contenente l'identificatore del contesto per cui ottenere i provider. Se questa proprietà è impostata su NULL o su una stringa vuota, verrà utilizzato il contesto predefinito.
[in, optional] dwInterface
Identificatore di un'interfaccia che il provider deve supportare. Deve essere uno degli identificatori di interfaccia CNG . Se il parametro pszFunction
[in, optional] pszFunction
Puntatore a una stringa Unicode con terminazione Null contenente l'algoritmo o l'identificatore di funzione che il provider deve supportare. Può trattarsi di uno degli identificatori di algoritmo CNG standard o dell'identificatore per un altro algoritmo registrato. Se dwInterface è impostato su un valore diverso da zero, pszFunction può essere NULL per includere tutti gli algoritmi e le funzioni.
[in, optional] pszProvider
Puntatore a una stringa Unicode con terminazione Null contenente il nome del provider da recuperare. Se questo parametro è NULL, verranno inclusi tutti i provider.
Questo parametro consente di specificare un provider specifico da recuperare nel caso in cui più provider soddisfino gli altri criteri.
[in] dwMode
Specifica il tipo di provider da recuperare. Può trattarsi di uno dei valori seguenti.
Valore | Significato |
---|---|
|
Recuperare i provider in modalità utente. |
|
Recuperare i provider in modalità kernel. |
|
Recuperare sia i provider in modalità utente che in modalità kernel. |
[in] dwFlags
Set di flag che modificano il comportamento di questa funzione.
Può essere uno zero o una combinazione di uno o più dei valori seguenti.
[in, out] pcbBuffer
Puntatore a un valore DWORD che, in ingresso, contiene le dimensioni, in byte, del buffer a cui punta il parametro ppBuffer. All'uscita, questo valore riceve il numero di byte copiati nel buffer o le dimensioni necessarie, in byte, del buffer.
[in, out] ppBuffer
Indirizzo di un puntatore CRYPT_PROVIDER_REFS che riceve la raccolta di provider che soddisfano i criteri specificati.
Se questo parametro è
Se questo parametro è l'indirizzo di un puntatore NULL
Se questo parametro è l'indirizzo di un puntatore NULL non
Valore restituito
Restituisce un codice di stato che indica l'esito positivo o negativo della funzione.
I codici restituiti possibili includono, ma non solo, quanto segue.
Codice restituito | Descrizione |
---|---|
|
La funzione ha avuto esito positivo. |
|
Le dimensioni specificate dal parametro |
|
Uno o più parametri non sono validi. |
|
Non è stato possibile trovare alcun provider che soddisfi tutti i criteri specificati. |
Osservazioni
BCryptResolveProviders può essere chiamato dalla modalità utente o dal kernel. I chiamanti in modalità kernel devono essere in esecuzione in PASSIVE_LEVELIRQL.
Fabbisogno
Requisito | Valore |
---|---|
client minimo supportato | Windows Vista [solo app desktop] |
server minimo supportato | Windows Server 2008 [solo app desktop] |
piattaforma di destinazione | Finestre |
intestazione |
bcrypt.h |
libreria |
Bcrypt.lib |
dll | Bcrypt.dll |