BCryptQueryContextFunctionProperty 関数 (bcrypt.h)

BCryptQueryContextFunctionProperty 関数は、既存の CNG コンテキストの暗号化関数の名前付きプロパティの値を取得します。

構文

NTSTATUS BCryptQueryContextFunctionProperty(
  [in]      ULONG   dwTable,
  [in]      LPCWSTR pszContext,
  [in]      ULONG   dwInterface,
  [in]      LPCWSTR pszFunction,
  [in]      LPCWSTR pszProperty,
  [in, out] ULONG   *pcbValue,
  [in, out] PUCHAR  *ppbValue
);

パラメーター

[in] dwTable

コンテキストが存在する構成テーブルを識別します。 これには、次のいずれかの値を指定できます。

意味
CRYPT_LOCAL
コンテキストは、ローカル コンピューター構成テーブルに存在します。
CRYPT_DOMAIN
この値は使用できません。

[in] pszContext

関数プロパティを取得するコンテキストの識別子を含む、null で終わる Unicode 文字列へのポインター。

[in] dwInterface

関数が存在する暗号化インターフェイスを識別します。 これには、次のいずれかの値を指定できます。

意味
BCRYPT_ASYMMETRIC_ENCRYPTION_INTERFACE
関数は、非対称暗号化関数の一覧に存在します。
BCRYPT_CIPHER_INTERFACE
関数は暗号関数の一覧に存在します。
BCRYPT_HASH_INTERFACE
関数はハッシュ関数の一覧に存在します。
BCRYPT_RNG_INTERFACE
関数は、乱数ジェネレーター関数の一覧に存在します。
BCRYPT_SECRET_AGREEMENT_INTERFACE
この関数は、シークレット アグリーメント関数の一覧に存在します。
BCRYPT_SIGNATURE_INTERFACE
関数は、シグネチャ関数の一覧に存在します。
NCRYPT_KEY_STORAGE_INTERFACE
この関数は、キー ストレージ関数の一覧に存在します。
NCRYPT_SCHANNEL_INTERFACE
関数は、Schannel 関数の一覧に存在します。

[in] pszFunction

プロパティを取得する暗号化関数の識別子を含む、null で終わる Unicode 文字列へのポインター。

[in] pszProperty

取得するプロパティの識別子を含む null で終わる Unicode 文字列へのポインター。

[in, out] pcbValue

入力時に ppbValue が指すバッファーのサイズ (バイト単位) を含む ULONG 変数のアドレス。 このサイズがプロパティ値を保持するのに十分な大きさでない場合、この関数は STATUS_BUFFER_TOO_SMALLで失敗します。

この関数が戻った後、この変数には ppbValue バッファーにコピーされたバイト数が含まれます。

[in, out] ppbValue

プロパティ データを受け取るバッファーへのポインターのアドレス。 このバッファーのサイズと形式は、取得するプロパティの形式によって異なります。 pcbValue パラメーターが指す値には、このバッファーのサイズが含まれています。

このパラメーターが指す値が NULL の場合、この関数は必要なメモリを割り当てます。 このメモリは、このポインターを BCryptFreeBuffer 関数に渡すことによって不要になった場合に解放する必要があります。

このパラメーターが NULL の場合、この関数は必要なサイズ (バイト単位) を pcbValue パラメーターが指す変数に配置し、 STATUS_BUFFER_TOO_SMALLを返します。

戻り値

関数の成功または失敗を示す状態コードを返します。

可能なリターン コードには、次のものが含まれますが、これらに限定されません。

リターン コード 説明
STATUS_SUCCESS
関数は成功しました。
STATUS_BUFFER_TOO_SMALL
ppbValue パラメーターは NULL ではなく、pcbValue パラメーターが指す値は、コンテキストのセットを保持するのに十分な大きさではありません。
STATUS_INVALID_PARAMETER
1 つ以上のパラメーターが無効です。
STATUS_NO_MEMORY
メモリ割り当てエラーが発生しました。
STATUS_NOT_FOUND
指定したコンテキスト、関数、またはプロパティが見つかりませんでした。

注釈

BCryptQueryContextFunctionProperty は、ユーザー モードでのみ呼び出すことができます。

要件

要件
サポートされている最小のクライアント Windows Vista [デスクトップ アプリのみ]
サポートされている最小のサーバー Windows Server 2008 [デスクトップ アプリのみ]
対象プラットフォーム Windows
ヘッダー bcrypt.h
Library Bcrypt.lib
[DLL] Bcrypt.dll