SslEnumCipherSuites 函式
SslEnumCipherSuites函式會列舉安全通訊端層通訊協定所支援的加密套件, (SSL) 通訊協定提供者。
語法
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
);
參數
-
hSslProvider [in]
-
SSL 通訊協定提供者實例的控制碼。
-
hPrivateKey [in, optional]
-
私密金鑰的控制碼。 指定私密金鑰時, SslEnumCipherSuites 會 列舉與私密金鑰相容的加密套件。 例如,如果私密金鑰是 DSS 金鑰,則只會傳回DSS_DHE加密套件。 如果私密金鑰是 RSA 金鑰,但不支援原始解密作業,則不會傳回 SSL2 加密套件。
當您未指定私密金鑰時,請將此參數設定為 Null 。
注意
藉由呼叫SslOpenPrivateKey函式來取得hPrivateKey控制碼。 不支援從 NCryptOpenKey 函式取得的控制碼。
-
ppCipherSuite [out]
-
要接收清單中下一個加密套件位址 之NCRYPT_SSL_CIPHER_SUITE 結構的指標。
-
ppEnumState [in, out]
-
緩衝區的指標,表示加密套件清單中的目前位置。
在第一次呼叫SslEnumCipherSuites時,將指標設定為Null。 在每個後續呼叫上,將未修改的值傳回 SslEnumCipherSuites。
當沒有更多可用的加密套件時,您應該呼叫SslFreeBuffer 函式來釋放ppEnumState。
-
dwFlags [in]
-
這個參數保留給未來使用。
傳回值
如果函式成功,則會傳回零。
如果函式失敗,它會傳回非零的錯誤值。
可能的傳回碼包括但不限於下列專案。
傳回碼/值 | Description |
---|---|
|
記憶體不足,無法配置必要的緩衝區。 |
|
其中一個提供的控制碼無效。 |
|
不支援其他加密套件。 |
備註
若要列舉 SSL 提供者支援的所有加密套件,請在迴圈中呼叫 SslEnumCipherSuites 函式,直到 傳回NTE_NO_MORE_ITEMS 為止。
規格需求
需求 | 值 |
---|---|
最低支援的用戶端 |
Windows Vista [僅限傳統型應用程式] |
最低支援的伺服器 |
Windows Server 2008 [僅限傳統型應用程式] |
標頭 |
|
程式庫 |
|
DLL |
|