Fonction BCryptQueryContextFunctionConfiguration (bcrypt.h)
[BCryptQueryContextFunctionConfiguration est disponible pour une utilisation dans les systèmes d’exploitation spécifiés dans la section Configuration requise. Il peut être modifié ou indisponible dans les versions suivantes.]
La fonction BCryptQueryContextFunctionConfiguration obtient les informations de configuration de la fonction de chiffrement pour un contexte CNG existant.
Syntaxe
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
);
Paramètres
[in] dwTable
Identifie la table de configuration dans laquelle le contexte existe. Il peut s’agir de l’une des valeurs suivantes.
Valeur | Signification |
---|---|
|
Le contexte existe dans la table de configuration de l’ordinateur local. |
|
Cette valeur n’est pas disponible pour l’utilisation. |
[in] pszContext
Pointeur vers une chaîne Unicode terminée par null qui contient l’identificateur du contexte pour lequel obtenir les informations de configuration de la fonction.
[in] dwInterface
Identifie l’interface de chiffrement pour laquelle obtenir les informations de configuration de la fonction. Il peut s’agir de l’une des valeurs suivantes.
[in] pszFunction
Pointeur vers une chaîne Unicode terminée par null qui contient l’identificateur de la fonction de chiffrement pour laquelle obtenir les informations de configuration.
[in, out] pcbBuffer
Adresse d’une variable ULONG qui, lors de l’entrée, contient la taille, en octets, de la mémoire tampon pointée vers ppBuffer. Si cette taille n’est pas suffisante pour contenir les informations de contexte, cette fonction échoue avec STATUS_BUFFER_TOO_SMALL.
Une fois cette fonction retournée, cette variable contient le nombre d’octets qui ont été copiés dans la mémoire tampon ppBuffer .
[in, out] ppBuffer
Adresse d’un pointeur vers une structure CRYPT_CONTEXT_FUNCTION_CONFIG qui reçoit les informations de configuration de fonction récupérées par cette fonction. La valeur indiquée par le paramètre pcbBuffer contient la taille de cette mémoire tampon.
Si la valeur pointée par ce paramètre est NULL, cette fonction alloue la mémoire requise. Cette mémoire doit être libérée lorsqu’elle n’est plus nécessaire en passant ce pointeur vers la fonction BCryptFreeBuffer .
Si ce paramètre a la valeur NULL, cette fonction place la taille requise, en octets, dans la variable pointée par le paramètre pcbBuffer et retourne STATUS_BUFFER_TOO_SMALL.
Pour plus d’informations sur l’utilisation de ce paramètre, consultez Remarques.
Valeur retournée
Retourne un code status qui indique la réussite ou l’échec de la fonction.
Les codes de retour possibles incluent, sans s’y limiter, les éléments suivants.
Code de retour | Description |
---|---|
|
La fonction a réussi. |
|
Le paramètre ppBuffer n’est pas NULL et la valeur pointée par le paramètre pcbBuffer n’est pas assez grande pour contenir l’ensemble de contextes. |
|
Un ou plusieurs paramètres ne sont pas valides. |
|
Un échec d’allocation de mémoire s’est produit. |
|
Le contexte ou la fonction spécifié est introuvable. |
Remarques
Chaque fonction de chiffrement n’a qu’un seul ensemble d’informations de configuration. Par conséquent, bien que le paramètre ppBuffer semble être utilisé comme tableau, cette fonction le traite comme un tableau avec un seul élément. L’exemple suivant permet de clarifier la façon dont ce paramètre est utilisé.
// 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 peut être appelé uniquement en mode utilisateur.
Configuration requise
Condition requise | Valeur |
---|---|
Client minimal pris en charge | Windows Vista [applications de bureau uniquement] |
Serveur minimal pris en charge | Windows Server 2008 [applications de bureau uniquement] |
Plateforme cible | Windows |
En-tête | bcrypt.h |
Bibliothèque | Bcrypt.lib |
DLL | Bcrypt.dll |