Win32 API 日本語リファレンス
ホーム › System.Rpc › RPC_IF_CALLBACK_FN

RPC_IF_CALLBACK_FN

コールバック

シグネチャ

RPC_STATUS RPC_IF_CALLBACK_FN(
    void* InterfaceUuid,
    void* Context
);

パラメーター

フィールド型説明
InterfaceUuidvoid*
Contextvoid*

クライアントを表す RPC_IF_ID サーバーバインディングハンドルへのポインターです。関数宣言では RPC_IF_HANDLE 型にする必要がありますが、実際にはクライアントバインディングハンドルであり、安全にキャストできます。コールバック関数はこのハンドルを RpcImpersonateClient、 RpcBindingServerFromClient、 RpcGetAuthorizationContextForClient、またはクライアントバインディングハンドルを受け取るその他のサーバー側関数に渡して、クライアントに関する情報を取得できます。

- Interface [in]

インターフェイスの UUID とバージョンです。

公式ドキュメント

RPC_IF_CALLBACK_FN は、アプリケーションが提供するセキュリティコールバック関数のプロトタイプです。プログラムは、定義するインターフェイスごとにコールバック関数を用意できます。

戻り値

クライアントがこのインターフェイスのメソッドを呼び出すことを許可する場合、コールバック関数は RPC_S_OK を返します。これ以外の戻り値を返した場合、クライアントは例外 RPC_S_ACCESS_DENIED を受け取ります。

注意 有効なエラーコードの一覧については、 RPC の戻り値を参照してください。

解説(Remarks)

場合によっては、RPC ランタイムが 1 つのクライアントおよび 1 つのインターフェイスに対してセキュリティコールバック関数を複数回呼び出すことがあります。コールバック関数がこの状況を処理できるようにしてください。

セキュリティコールバックは RPC_ENTRY として宣言する必要があります。

出典・ライセンス: 上記「公式ドキュメント」の内容は Microsoft の Win32 API ドキュメント(MicrosoftDocs/sdk-api)を日本語に翻訳・改変したものです。© Microsoft Corporation. CC BY 4.0 で提供。
Microsoft 公式リファレンス: 英語 (en-us) · 日本語 (ja-jp) · 原文ソース (GitHub)