LDAP サーバーのエントリを読み取り、書き込み、追加、更新、および削除するための perl プログラムを作成しています。これまでに取得したのは、LDIF を使用した書き込み、追加、更新、削除、およびエントリを DSML として返す読み取りです。
さて、私の質問ですが、DSML を書き込み、追加、更新、削除することは可能ですか? コード例は大歓迎です。
私の検索は次のようになり、魅力のように機能します。
my $dsml = Net::LDAP::DSML->new(output => $oio, pretty_print => 1 )
or die ("DSML object creation problem using an output file.\n");
$dsml->start_dsml();
$ldap->search(
base => "applicationName=HSS_ESM,nodeName=jambala",
scope => "sub",
filter => $intext,
attrs => ['*'],
callback => sub {
my ($mesg,$entry) =@_;
$dsml->write_entry($entry)
if (ref $entry eq 'Net::LDAP::Entry');
}
);
$dsml->end_dsml();
私の書き込み、追加、更新、削除は次のようになり、成功またはエラーのいずれかで DSML を返したいのですが、
# Create LDIF
my $ldif = Net::LDAP::LDIF->new($fh, "r", onerror => 'undef' );
# Loop over the entries in LDIF
while ( not $ldif->eof ( ) ) {
my $entry = $ldif->read_entry( );
if ( $ldif->error ( ) ) {
# handle error
} else {
# do stuff
my $res = $entry->update($ldap);
if ($res->code != 0) {
# handle error
}
}
}
$ldif->done ( );
ありがとうございました。