ldap_extended_operation_sA関数 (winldap.h)
ldap_extended_operation_s関数は、拡張 LDAP 操作をサーバーに渡すために使用されます。
構文
WINLDAPAPI ULONG LDAPAPI ldap_extended_operation_sA(
[in] LDAP *ExternalHandle,
[in] PSTR Oid,
[in] berval *Data,
[in] PLDAPControlA *ServerControls,
[in] PLDAPControlA *ClientControls,
[out] PCHAR *ReturnedOid,
[out] berval **ReturnedData
);
パラメーター
[in] ExternalHandle
セッション ハンドル。
[in] Oid
要求に名前を付けるドット オブジェクト識別子 (OID) テキスト文字列を含む null で終わる文字列へのポインター。
[in] Data
操作に必要な任意のデータ。 NULL の場合、データはサーバーに送信されません。
[in] ServerControls
省略可能。 LDAP サーバー コントロールの一覧。 使用しない場合は、このパラメーターを NULL に 設定します。
[in] ClientControls
省略可能。 クライアント コントロールの一覧。 使用しない場合は、このパラメーターを NULL に 設定します。
[out] ReturnedOid
省略可能。 サーバー応答メッセージの点線 OID テキスト文字列を含む null で終わる文字列へのポインター。 これは通常、Oid パラメーターでサーバーに渡された要求の名前を指定する OID と同じです。 使用しない場合は NULL に設定します。
[out] ReturnedData
省略可能。 拡張操作によって返される任意のデータ。 NULL の場合、サーバーからデータは返されません。 使用しない場合は、このパラメーターを NULL に 設定します。
戻り値
関数が成功すると、 LDAP_SUCCESS が返されます。
関数が失敗した場合は、エラー コードが返されます。 詳細については、「 戻り値」を参照してください。
注釈
ldap_extended_operation_s関数を使用すると、クライアントは拡張要求 (すべて無料) を LDAP 3 (またはそれ以降) サーバーに送信できます。 機能が開いているので、クライアント要求は任意の操作に対して行うことができます。
同期関数として、ldap_extended_operation_sは ReturnedOid フィールドと ReturnedData フィールドの応答データを返します。 不要になった場合は、ldap_memfreeを呼び出して ReturnedOid 文字列と ReturnedData バッファーを解放します。 ReturnedData は PCHAR データ型ではないので、次のようなldap_memfreeの引数として使用する場合は明示的にキャストする必要があります。
struct berval *pBV;
ldap_extended_operation_s(......., &pBV);
...
ldap_memfree( (PCHAR) pBV);
マルチスレッド: ldap_extended_operation_s 関数はスレッド セーフです。
注意
winldap.h ヘッダーは、unicode プリプロセッサ定数の定義に基づいて、この関数の ANSI または Unicode バージョンを自動的に選択するエイリアスとしてldap_extended_operation_sを定義します。 エンコードに依存しないエイリアスをエンコードニュートラルでないコードと組み合わせて使用すると、コンパイルまたはランタイム エラーが発生する不一致が発生する可能性があります。 詳細については、「 関数プロトタイプの規則」を参照してください。
要件
要件 | 値 |
---|---|
サポートされている最小のクライアント | Windows Vista |
サポートされている最小のサーバー | Windows Server 2008 |
対象プラットフォーム | Windows |
ヘッダー | winldap.h |
Library | Wldap32.lib |
[DLL] | Wldap32.dll |