CertIsRDNAttrsInCertificateName

CertIsRDNAttrsInCertificateName 関数は、証明書名の属性と指定した CERT_RDN を比較し、すべての属性がその中に含まれているかを判定する。

CertIsRDNAttrsInCertificateName dwCertEncodingType, dwFlags, pCertName, pRDN

dwCertEncodingType : [int] 使用するエンコーディング種別を指定する。次の例のように証明書エンコーディングとメッセージエンコーディングをビット単位 OR で組み合わせて指定することも常に許容される: X509_ASN_ENCODING | PKCS_7_ASN_ENCODING 現在定義されているエンコーディング種別は次のとおり。
dwFlags : [int] pRDN が lpszStructType を X509_UNICODE_NAME に設定した CryptEncodeObject のように Unicode 文字列で初期化されている場合、CERT_UNICODE_IS_RDN_ATTRS_FLAG を設定しなければならない。大文字小文字を区別しない照合を行うには CERT_CASE_INSENSITIVE_IS_RDN_ATTRS_FLAG を設定する。それ以外の場合は、完全一致かつ大文字小文字を区別する照合が行われる。
pCertName : [var] エンコードされたサブジェクト名または発行者名を含む CRYPT_INTEGER_BLOB へのポインター。
pRDN : [var] 名前の中で検索する属性を含む CERT_RDN 構造体の配列。CERT_RDN 構造体の CERT_RDN_ATTR メンバーは次の規則に従って動作する。

(プラグイン / モジュール : crypt32.dll)

解説

CertIsRDNAttrsInCertificateName 関数は、証明書名の属性と指定した CERT_RDN
を比較し、すべての属性がその中に含まれているかを判定する。

[戻り値]
関数が成功し、指定した CERT_RDN 内のすべての RDN 値が証明書名に含まれている場合、戻り値は 0 以外 (TRUE)
となる。関数が失敗した場合、または指定した CERT_RDN 内の RDN 値のうち証明書名に含まれないものがある場合、戻り値は 0
(FALSE) となる。拡張エラー情報を取得するには GetLastError を呼び出す。考えられるエラーコードを次の表に示す。
(以下省略)

[備考]
現在、完全一致かつ大文字小文字を区別する照合のみがサポートされている。

情報

プラグイン / モジュールcrypt32.dll
バージョン1.0
作成日2026/04/16
著作者IronHSP / CsWin32 bridge
URLhttps://github.com/inovia/IronHSP
備考Win32 API の crypt32.dll 関数群。CsWin32 + win32metadata から自動生成。
hsp3net 専用 (intptr / NSTRUCT / wstr を使用)。
タイプ拡張命令
グループWin32API
対応環境
  • Windows 版 HSP
hs ファイルhsphelp\win32_crypt32_gen2.hs