CertCreateCTLEntryFromCertificateContextProperties 函式 (wincrypt.h)
CertCreateCTLEntryFromCertificateContextProperties 函式會建立憑證信任清單 (CTL) 專案,其屬性是憑證內容的屬性。 CTL 專案中的 SubjectIdentifier 是憑證的 SHA1 哈希。
憑證屬性會新增為屬性。 屬性 OID 是前面加上szOID_CERT_PROP_ID_PREFIX的小數PROP_ID。 每個屬性值都會複製為單一屬性值。
您可以使用 cOptAttr 和 rgOptAttr 參數,將其他屬性包含在 CTL 專案中。
語法
BOOL CertCreateCTLEntryFromCertificateContextProperties(
[in] PCCERT_CONTEXT pCertContext,
[in] DWORD cOptAttr,
[in] PCRYPT_ATTRIBUTE rgOptAttr,
[in] DWORD dwFlags,
[in] void *pvReserved,
[out] PCTL_ENTRY pCtlEntry,
[in, out] DWORD *pcbCtlEntry
);
參數
[in] pCertContext
用來建立 CTL 之CERT_CONTEXT 的指標。
[in] cOptAttr
DWORD,指定要加入的其他屬性數目。
[in] rgOptAttr
要新增至 CTL 之任何 CRYPT_ATTRIBUTE屬性陣列的指標。
[in] dwFlags
DWORD。 可以設定為 CTL_ENTRY_FROM_PROP_CHAIN_FLAG,以強制包含鏈結建置哈希屬性做為屬性。
[in] pvReserved
VOID 的指標。 保留供未來使用。
[out] pCtlEntry
CTL_ENTRY 結構的指標位址。 呼叫此函式兩次以擷取 CTL 專案。 在第一次呼叫時,將此參數設定為 NULL 。 當函式傳回時,請使用從 HTTPCtlEntry 參數擷取的位元組數目來配置記憶體。 再次呼叫 函式,將此參數設定為配置記憶體的位址。
[in, out] pcbCtlEntry
DWORD 的指標,其中包含必須配置給CTL_ENTRY結構的位元元組數目。 呼叫此函式兩次以擷取位元元組數目。 針對第一次呼叫,請將此參數設定為包含零的 DWORD 值位址,並將 pCtlEntry 參數設定為 NULL。 如果第一次呼叫成功, DWORD 值將包含您必須為 CTL_ENTRY 結構配置的位元元組數目。 配置必要的記憶體,並再次呼叫 函式,並在 pCtlEntry 參數中提供記憶體的位址。
傳回值
如果函式成功,函式會傳回非零 (TRUE) 。
如果函式失敗,它會傳回零 (FALSE) 。 如需擴充錯誤資訊,請呼叫 GetLastError。
規格需求
需求 | 值 |
---|---|
最低支援的用戶端 | Windows XP [僅限傳統型應用程式] |
最低支援的伺服器 | Windows Server 2003 [僅限傳統型應用程式] |
目標平台 | Windows |
標頭 | wincrypt.h |
程式庫 | Crypt32.lib |
Dll | Crypt32.dll |