Função SslEnumCipherSuites
A função SslEnumCipherSuites enumera os conjuntos de criptografia compatíveis com um provedor de protocolo SSL (Protocolo SSL).
Sintaxe
SECURITY_STATUS WINAPI SslEnumCipherSuites(
_In_ NCRYPT_PROV_HANDLE hSslProvider,
_In_opt_ NCRYPT_KEY_HANDLE hPrivateKey,
_Out_ NCRYPT_SSL_CIPHER_SUITE **ppCipherSuite,
_Inout_ PVOID *ppEnumState,
_In_ DWORD dwFlags
);
Parâmetros
-
hSslProvider [in]
-
O identificador da instância do provedor de protocolo SSL.
-
hPrivateKey [in, opcional]
-
O identificador de uma chave privada. Quando uma chave privada é especificada, SslEnumCipherSuites enumera os conjuntos de criptografia compatíveis com a chave privada. Por exemplo, se a chave privada for uma chave DSS, somente os conjuntos de criptografia DSS_DHE serão retornados. Se a chave privada for uma chave RSA, mas não oferecer suporte a operações de descriptografia brutas, os pacotes de criptografia SSL2 não serão retornados.
Defina esse parâmetro como NULL quando você não estiver especificando uma chave privada.
Observação
Um identificador hPrivateKey é obtido chamando a função SslOpenPrivateKey . Não há suporte para identificadores obtidos da função NCryptOpenKey .
-
ppCipherSuite [out]
-
Um ponteiro para uma estrutura NCRYPT_SSL_CIPHER_SUITE para receber o endereço do próximo conjunto de criptografias na lista.
-
ppEnumState [in, out]
-
Um ponteiro para um buffer que indica a posição atual na lista de pacotes de criptografia.
Defina o ponteiro como NULL na primeira chamada como SslEnumCipherSuites. Em cada chamada subsequente, passe o valor não modificado de volta para SslEnumCipherSuites.
Quando não houver mais pacotes de criptografia disponíveis, você deverá liberar ppEnumState chamando a função SslFreeBuffer .
-
dwFlags [in]
-
Esse parâmetro é reservado para uso futuro.
Valor retornado
Se a função for bem-sucedida, ela retornará zero.
Se a função falhar, ela retornará um valor de erro diferente de zero.
Os códigos de retorno possíveis incluem, mas não se limitam a, o seguinte.
Retornar código/valor | Descrição |
---|---|
|
Não há memória suficiente disponível para alocar buffers necessários. |
|
Um dos identificadores fornecidos não é válido. |
|
Não há suporte para pacotes de criptografia adicionais. |
Comentários
Para enumerar todos os pacotes de criptografia compatíveis com o provedor SSL, chame a função SslEnumCipherSuites em um loop até que NTE_NO_MORE_ITEMS seja retornado.
Requisitos
Requisito | Valor |
---|---|
Cliente mínimo com suporte |
Windows Vista [somente aplicativos da área de trabalho] |
Servidor mínimo com suporte |
Windows Server 2008 [somente aplicativos da área de trabalho] |
Cabeçalho |
|
Biblioteca |
|
DLL |
|