InfoDirectory使用手引書 |
目次 索引 |
第3部 SDK編 | > 第5章 アプリケーション開発環境(LDAP C API) | > 5.2 関数インタフェース | > 5.2.10 エントリの追加 |
この関数は、非同期型でエントリの追加を行います。【指定形式】
int ldap_add(
LDAP *ld,
char *dn,
LDAPMod **attrs
);【パラメタの説明】
- ld
ldap_init()またはldapssl_init()で通知された、セションハンドルを指定します。
- dn
追加するエントリの、DNのアドレスを指定します。
- attrs
LDAPMod構造体のポインタ配列アドレスを指定します。各LDAPMod構造体には、エントリに付加する属性名と属性値を設定します。LDAPMod構造体の各項目には、以下の値を設定します。
- mod_op
属性値の種類を指定します。
・属性値が文字列データの場合 : 0
・属性値がバイナリデータの場合 : LDAP_MOD_BVALUES- mod_type
属性名のアドレスを指定します。
LDAP V3プロトコルの場合、一部の属性では属性名に“;binary”を付加したものを指定する必要があります。- mod_vals
属性値のアドレスを指定します。
ここで指定する属性値は、mod_vals共用体のポインタ配列です。このポインタ配列は、最後の項目にNULLが設定されている必要があります。mod_vals共用体のメンバは、mod_opパラメタに指定された属性値の種類によって、以下のどちらかを使用します。・文字列データの場合 : mod_valuesに、属性値のポインタ配列のアドレスを指定します。
・バイナリデータの場合 : mod_bvaluesに、berval構造体のポインタ配列のアドレスを指定します。berval構造体には、属性値のアドレスとサイズを指定します。各属性値のポインタ配列は、最後の項目にNULLが設定されている必要があります。
以下のエントリをツリーに追加する場合のパラメタの例を、以下に示します。
- エントリの構成
cn: "Barbara Jensen"
cn: "Babs Jensen"
objectClass: "top"
objectClass: "person"
objectClass: "inetOrgPerson"
【復帰値】
この関数は、復帰値として以下の値を返します。
- 正常完了の場合 : メッセージID
- 異常完了の場合 : -1
【注意事項】
- 非同期関数の結果獲得
非同期関数の処理結果を受取る場合、ldap_result()を使用します。この時、ldap_add()の復帰値として返されたメッセージIDを指定します。詳細は、処理結果の受取り/判定を参照してください。
- 追加可能なエントリ
親となるエントリが存在しない場合には、指定されたエントリを追加することができません。
目次 索引 |