関数名 | 関数の説明 |
---|---|
指定されたエントリを追加します。 | |
指定されたエントリを追加します。 | |
指定されたエントリを追加します。 | |
指定されたエントリを追加します。 |
名前
ldap_add
形式
#include "idldap.h" int ldap_add( LDAP *ld, const char *dn, LDAPMod **attrs );
機能説明
この関数は、非同期型でエントリを追加します。親となるエントリが存在しない場合には、指定されたエントリを追加することができません。
非同期関数の処理結果を受け取る場合、ldap_result()を使用します。この時、ldap_add()の復帰値として返されたメッセージIDを指定します。詳細は、“処理結果の受取り/判定”を参照してください。
ldapssl_init()で獲得したセションハンドルを使用している場合、SSLライブラリで発生したエラーをldapssl_error()で参照することができます。
パラメタ
ldap_init()、またはldapssl_init()で通知された、セションハンドルを指定します。
追加するエントリの、DNのアドレスを指定します。
LDAPMod構造体のポインタ配列アドレスを指定します。各LDAPMod構造体には、エントリに付加する属性名と属性値を設定します。LDAPMod構造体の各項目には、以下の値を設定します。
mod_op
属性値の種類を指定します。
属性値が文字列データの場合 : 0
属性値がバイナリデータの場合 : LDAP_MOD_BVALUES
mod_type
属性名のアドレスを指定します。一部の属性では属性名に“;binary”を付加したものを指定する必要があります。
mod_vals
属性値のアドレスを指定します。
ここで指定する属性値は、mod_vals共用体のポインタ配列です。このポインタ配列は、最後の項目にNULLが設定されている必要があります。mod_vals共用体のメンバは、mod_opパラメタに指定された属性値の種類によって、以下のどちらかを使用します。
文字列データの場合 : mod_valuesに、属性値のポインタ配列のアドレスを指定します。
バイナリデータの場合 : mod_bvaluesに、berval構造体のポインタ配列のアドレスを指定します。berval構造体には、属性値のアドレスとサイズを指定します。
各属性値のポインタ配列は、最後の項目にNULLが設定されている必要があります。
以下のエントリをツリーに追加する場合のパラメタの例を、下図に示します。
エントリの構成
cn: user001 |
バイナリデータの属性値を追加する場合のパラメタの例を下図に示します。
jpegPhotoを追加 |
復帰値
この関数は、復帰値として以下の値を返します。
正常終了の場合 : メッセージID
異常終了の場合 : -1
異常終了の場合のエラー原因は、ldap_get_option()のLDAP_OPT_RESULT_CODEオプションで参照してください。
名前
ldap_add_s
形式
#include "idldap.h" int ldap_add_s( LDAP *ld, const char *dn, LDAPMod **attrs );
機能説明
この関数は、同期型でエントリを追加します。親となるエントリが存在しない場合には、指定されたエントリを追加することができません。
ldapssl_init()で獲得したセションハンドルを使用している場合、SSLライブラリで発生したエラーを1.20.11.6 ldapssl_error()で参照することができます。
パラメタ
ldap_init()、またはldapssl_init()で通知された、セションハンドルを指定します。
追加するエントリの、DNのアドレスを指定します。
LDAPMod構造体のポインタ配列アドレスを指定します。各LDAPMod構造体には、エントリに付加する属性名と属性値を設定します。LDAPMod構造体の各項目には、以下の値を設定します。
mod_op
属性値の種類を指定します。
属性値が文字列データの場合 : 0
属性値がバイナリデータの場合 : LDAP_MOD_BVALUES
mod_type
属性名のアドレスを指定します。一部の属性では属性名に“;binary”を付加したものを指定する必要があります。
mod_vals
属性値のアドレスを指定します。
ここで指定する属性値は、mod_vals共用体のポインタ配列です。このポインタ配列は、最後の項目にNULLが設定されている必要があります。mod_vals共用体のメンバは、mod_opパラメタに指定された属性値の種類によって、以下のどちらかを使用します。
文字列データの場合 : mod_valuesに、属性値のポインタ配列のアドレスを指定します。
バイナリデータの場合 : mod_bvaluesに、berval構造体のポインタ配列のアドレスを指定します。berval構造体には、属性値のアドレスとサイズを指定します。
各属性値のポインタ配列は、最後の項目にNULLが設定されている必要があります。
エントリを追加する場合のパラメタの例については、“add処理におけるパラメタの構成”を参照してください。
復帰値
この関数では、復帰値としてLDAPエラーコードを返します。LDAPエラーコードの値については、“メッセージ集”の“LDAPエラーコード”を参照してください。
正常終了の場合 : LDAP_SUCCESS
異常終了の場合 : LDAP_SUCCESS以外のLDAPエラーコード
名前
ldap_add_ext
形式
#include "idldap.h" int ldap_add_ext( LDAP *ld, const char *dn, LDAPMod **attrs, LDAPControl **serverctrls, LDAPControl **clientctrls, int *msgidp );
機能説明
この関数は、非同期型でエントリを追加します。親となるエントリが存在しない場合には、指定されたエントリを追加することができません。
非同期関数の処理結果を受け取る場合、ldap_result()を使用します。この時、ldap_add_ext()の復帰値として返されたメッセージIDを指定します。詳細は、“処理結果の受取り/判定”を参照してください。
ldapssl_init()で獲得したセションハンドルを使用している場合、SSLライブラリで発生したエラーをldapssl_error()で参照することができます。
パラメタ
ldap_init()、またはldapssl_init()で通知された、セションハンドルを指定します。
追加するエントリの、DNのアドレスを指定します。
LDAPMod構造体のポインタ配列アドレスを指定します。各LDAPMod構造体には、エントリに付加する属性名と属性値を設定します。LDAPMod構造体の各項目には、以下の値を設定します。
mod_op
属性値の種類を指定します。
属性値が文字列データの場合 : 0
属性値がバイナリデータの場合 : LDAP_MOD_BVALUES
mod_type
属性名のアドレスを指定します。一部の属性では属性名に“;binary”を付加したものを指定する必要があります。
mod_vals
属性値のアドレスを指定します。
ここで指定する属性値は、mod_vals共用体のポインタ配列です。このポインタ配列は、最後の項目にNULLが設定されている必要があります。mod_vals共用体のメンバは、mod_opパラメタに指定された属性値の種類によって、以下のどちらかを使用します。
文字列データの場合 : mod_valuesに、属性値のポインタ配列のアドレスを指定します。
バイナリデータの場合 : mod_bvaluesに、berval構造体のポインタ配列のアドレスを指定します。berval構造体には、属性値のアドレスとサイズを指定します。
各属性値のポインタ配列は、最後の項目にNULLが設定されている必要があります。
エントリを追加する場合のパラメタの例については、“add処理におけるパラメタの構成”を参照してください。
Interstage ディレクトリサービスではサーバコントロールをサポートしていないため、このパラメタにはNULLを指定します。
本ライブラリではクライアントコントロールをサポートしていないため、このパラメタにはNULLを指定します。
メッセージIDを格納するための変数のアドレスを指定します。
復帰値
この関数では、復帰値としてLDAPエラーコードを返します。LDAPエラーコードの値については、“メッセージ集”の“LDAPエラーコード”を参照してください。
正常終了の場合 : LDAP_SUCCESS
異常終了の場合 : LDAP_SUCCESS以外のLDAPエラーコード
また、正常終了の場合には、msgidpパラメタが示す変数にメッセージIDが設定されています。
名前
ldap_add_ext_s
形式
#include "idldap.h" int ldap_add_ext_s( LDAP *ld, const char *dn, LDAPMod **attrs, LDAPControl **serverctrls, LDAPControl **clientctrls );
機能説明
この関数は、同期型でエントリを追加します。親となるエントリが存在しない場合には、指定されたエントリを追加することができません。
ldapssl_init()で獲得したセションハンドルを使用している場合、SSLライブラリで発生したエラーをldapssl_error()で参照することができます。
パラメタ
ldap_init()、またはldapssl_init()で通知された、セションハンドルを指定します。
追加するエントリの、DNのアドレスを指定します。
LDAPMod構造体のポインタ配列アドレスを指定します。各LDAPMod構造体には、エントリに付加する属性名と属性値を設定します。LDAPMod構造体の各項目には、以下の値を設定します。
mod_op
属性値の種類を指定します。
属性値が文字列データの場合 : 0
属性値がバイナリデータの場合 : LDAP_MOD_BVALUES
mod_type
属性名のアドレスを指定します。一部の属性では属性名に“;binary”を付加したものを指定する必要があります。
mod_vals
属性値のアドレスを指定します。
ここで指定する属性値は、mod_vals共用体のポインタ配列です。このポインタ配列は、最後の項目にNULLが設定されている必要があります。mod_vals共用体のメンバは、mod_opパラメタに指定された属性値の種類によって、以下のどちらかを使用します。
文字列データの場合 : mod_valuesに、属性値のポインタ配列のアドレスを指定します。
バイナリデータの場合 : mod_bvaluesに、berval構造体のポインタ配列のアドレスを指定します。berval構造体には、属性値のアドレスとサイズを指定します。
各属性値のポインタ配列は、最後の項目にNULLが設定されている必要があります。
エントリを追加する場合のパラメタの例については、“add処理におけるパラメタの構成”を参照してください。
Interstage ディレクトリサービスではサーバコントロールをサポートしていないため、このパラメタにはNULLを指定します。
本ライブラリではクライアントコントロールをサポートしていないため、このパラメタにはNULLを指定します。
復帰値
この関数では、復帰値としてLDAPエラーコードを返します。LDAPエラーコードの値については、“メッセージ集”の“LDAPエラーコード”を参照してください。
正常終了の場合 : LDAP_SUCCESS
異常終了の場合 : LDAP_SUCCESS以外のLDAPエラーコード