#############################################################################
#                                                                           #
#            PerLDAP v1.5 - A Perl Developers' Kit for LDAP		    #
#                                                                           #
#############################################################################


What is PerLDAP?
================

PerLDAP is a set of modules written in Perl and C that allow developers to
leverage their existing Perl knowledge to easily access and manage LDAP-
enabled directories.  PerLDAP makes it very easy to search, add, delete,
and modify directory entries.  For example, Perl developers can easily
build web applications to access information stored in a directory or
create directory sync tools between directories and other services.

PerLDAP is an open source development project, the result of a joint effort
between Netscape, Leif Hedstrom, Clayton Donley and several other
contributors. PerLDAP currently provides the basic functions to allow Perl
users to access and manipulate directories easily.



Compiling the PerLDAP Sources
=============================

The source to PerLDAP is available on the Mozilla site at:

  http://www.mozilla.org/directory/

You can either retrieve the .tar/zip file with the source distribution, or
use CVS to checkout the module directly. The name of the CVS module is
PerLDAP, and it checks out the directory

  mozilla/directory/perldap

Further instructions for using CVS and Mozilla is available at

  http://www.mozilla.org/cvs.html

and an FAQ for PerLDAP is at

  http://www.mozilla.org/directory/faq/perldap-faq.html


Instructions for building the source can be found in the INSTALL file
in the source distribution. The latest stable release of PerLDAP is
v1.5, not further development is planned at this time due to lack of time
and resources.


Getting Started
===============

Documentation for this module is in standard Perl 'pod' format.  HTML
versions of this documentation can also be found on the Netscape DevEdge
site at:  http://developer.netscape.com/tech/directory/.

Additionally, many good examples can be found in the 'examples' directory.


Modules and Examples Included
=============================

Mozilla::LDAP::API - Low level interface between Perl and the LDAP C API
Mozilla::LDAP::Entry - Perl methods for manipulating entry objects
Mozilla::LDAP::Conn - Perl methods for performing LDAP operations
Mozilla::LDAP::LDIF - Perl methods for utilizing LDIF
Mozilla::LDAP::Utils - Some convenient LDAP related utilities
test_api/search.pl - Tests low level API search calls
test_api/write.pl  - Tests low level API write calls
test_api/api.pl - Tests ALL low level LDAPv2 calls
examples/lfinger.pl - LDAP version of the regular Unix finger command.
examples/qsearch.pl - Simple ldapsearch replacement.
examples/monitor.pl - Retrieve status information from an LDAP server.
examples/ldappasswd.pl - Change the LDAP password for a user.
examples/rmentry.pl - Remove an entire entry from the database.
examples/rename.pl - Rename (modRDN) an entry.
examples/tabdump.pl - Dump LDAP information into a tab separated file.
examples/psoftsync.pl - Synchronize LDAP with a PeopleSoft "dump" file.


All examples support the "standard" LDAP command line options, which are

        -h hostname     LDAP server name
        -p port #       LDAP port, default is 389 (or 636 for SSL)
        -b base DN      LDAP Base-DN
        -D bind DN      LDAP bind DN (connect to server as this "user")
        -w bind pswd    Password to bind to the server
        -P certfile     Use SSL, with the publick keys from this file


Note that the examples currently only support Simple Authentication
(passwords), the Client Authentication features (using certificates) will
be used in the next release. All examples also honors the environment
variable LDAP_BASEDN, set it to your systems base DN, e.g.

        % setenv LDAP_BASEDN 'dc=netscape,dc=com'

or for Bourne shell

        # LDAP_BASEDN='dc=netscape,dc=com'; export LDAP_BASEDN


Reporting problems and bugs
===========================

Address all bug reports and comments to the Mozilla newsgroups at:

   news://news.mozilla.org/netscape.public.mozilla.directory


License/Copyright
=================

Portions by Netscape (c) Copyright 1998 Netscape Communications Corp, Inc.
Portions by Leif Hedstrom (c) Copyright 2003 Leif Hedstrom
Portions by Clayton Donley (c) Copyright 1998 Clayton Donley

This code is available under the mozilla.org tri-license.
See http://www.mozilla.org/MPL/ .

Known Bugs
==========

 - The Rebind operation on NT does NOT work properly when set to a Perl
   function.  This is being investigated.
