141 lines
3.1 KiB
Text
141 lines
3.1 KiB
Text
=head1 NAME
|
|
|
|
Net::LDAP::LDIF - LDIF reading and writing
|
|
|
|
=head1 SYNOPSIS
|
|
|
|
use Net::LDAP::LDIF;
|
|
|
|
$ldif = Net::LDAP::LDIF->new( "file.ldif", "r", onerror => 'undef' );
|
|
while( not $ldif->eof() ) {
|
|
$entry = $ldif->read_entry();
|
|
if ( $ldif->error() ) {
|
|
print "Error msg: ",$ldif->error(),"\n";
|
|
print "Error lines:\n",$ldif->error_lines(),"\n";
|
|
}
|
|
else {
|
|
# do stuff
|
|
}
|
|
}
|
|
$ldif->done();
|
|
|
|
=head1 DESCRIPTION
|
|
|
|
B<Net::LDAP::LDIF> provides a means to convert between
|
|
L<Net::LDAP::Entry> objects and LDAP entries represented
|
|
in LDIF format files. Reading and writing are supported and may manipulate
|
|
single entries or lists of entries.
|
|
|
|
As when reading an entire file into memory with perl normally, take into
|
|
account the possibility of memory use when loading an LDIF file in one go.
|
|
|
|
=head1 CONSTRUCTOR
|
|
|
|
=over 4
|
|
|
|
=item new ( [ FILE [, MODE [,OPTIONS ]]] )
|
|
|
|
FILE may be the name of a file or an already open filehandle. If a filename
|
|
is passed in then it will be opened with the mode specified.
|
|
|
|
MODE defaults to "r" for read. You may specify "w" to for write+truncate or
|
|
"a" for write+append.
|
|
|
|
OPTIONS is a list of key-value pairs. Valid options are:
|
|
|
|
=over 4
|
|
|
|
=item encode
|
|
|
|
Some values in LDIF cannot be written verbatim and have to be encoded
|
|
in some way. This option lets you specify how. Valid encoding options
|
|
are 'none' (the default), 'canonical' (see
|
|
L<Net::LDAP::Util/canonical_dn>), or 'base64'.
|
|
|
|
=back
|
|
|
|
=item onerror
|
|
|
|
If set then Net::LDAP::LDIF will check all responses for errors on all methods.
|
|
If an error is detected then the specified action will be taken. Valid values
|
|
and their actions are.
|
|
|
|
=over 4
|
|
|
|
=item die
|
|
|
|
Net::LDAP::LDIF will croak with an appropriate message.
|
|
|
|
=item warn
|
|
|
|
Net::LDAP::LDIF will warn with an appropriate message.
|
|
|
|
=item undef
|
|
|
|
Net::LDAP::LDIF will warn with an appropriate message if C<-w> is in effect.
|
|
The method that was called will return C<undef>
|
|
|
|
=back
|
|
|
|
=back
|
|
|
|
=head1 METHODS
|
|
|
|
=over 4
|
|
|
|
=item read_entry
|
|
|
|
Read one entry from the file and return it as a Net::LDAP::Entry object.
|
|
|
|
=item eof
|
|
|
|
Returns true when the end of the file is reached.
|
|
|
|
=item write_entry ( ENTRIES )
|
|
|
|
|
|
|
|
=item done
|
|
|
|
This method signals that the LDIF object is no longer needed. If a file was
|
|
opened automatically when the object was created it will be closed. This
|
|
method is called automatically via DESTROY when the object goes out of scope.
|
|
|
|
=item error
|
|
|
|
Returns error message if error was found.
|
|
|
|
=item error_lines
|
|
|
|
Returns lines that resulted in error.
|
|
|
|
=item current_entry
|
|
|
|
Returns the current Net::LDAP::Entry object.
|
|
|
|
=item current_lines
|
|
|
|
Returns the lines that generated the current Net::LDAP::Entry object.
|
|
|
|
=item next_lines
|
|
|
|
Returns the lines that will generate the next Net::LDAP::Entry object.
|
|
|
|
=back
|
|
|
|
=head1 AUTHOR
|
|
|
|
Graham Barr <gbarr@pobox.com>.
|
|
|
|
Please report any bugs, or post any suggestions, to the perl-ldap mailing list
|
|
<perl-ldap-dev@lists.sourceforge.net>.
|
|
|
|
=head1 COPYRIGHT
|
|
|
|
Copyright (c) 1997-2000 Graham Barr. All rights reserved. This program is
|
|
free software; you can redistribute it and/or modify it under the same
|
|
terms as Perl itself.
|
|
|
|
=for html <hr>
|
|
|
|
=cut
|