Commits on Oct 6, 2012
  1. Release 0.49

    committed Oct 6, 2012
  2. add examples for Active Directory

    Add examples for MS Active Directory
    - how to create account and groups
    - how to search for accounts & groups using the
      LDAP_MATCHING_RULE_BIT_AND matching rule
    committed Oct 5, 2012
Commits on Oct 3, 2012
  1. add methods is_AD & is_ADAM

    Add methods to determine whether an LDAP server is an AD,
    so that the AD specific methods can be used.
    committed Oct 3, 2012
Commits on Sep 28, 2012
  1. canonicalize host name with ldapi://

    Having the host name canonicalized allows one to call start_tls()
    with option verify => 'require', which does hostname checking.
    Confirmed to work for Quanah.
    committed Sep 6, 2012
  2. don't try to set errors on undefined objects

    When disconnecting, make sure the set_error() method is called only
    on defined objects
    Author: Howard Wilkinson <>
    Originally sent in via private mail to Graham Barr:
     Date: 20.06.2012 13:06
     From: Howard Wilkinson <>
     To: gbarr <>
     Reply to:
     However, the DESTROY is still being called and killing the error
     messages - so this could do with being added to the package.
     ---    2012-06-20 12:02:36.000000000 +0100
     +++     2012-06-20 12:03:01.000000000 +0100
     @@ -902,6 +902,7 @@
       if (my $msgs = delete $self->{net_ldap_mesg}) {
         foreach my $mesg (values %$msgs) {
     +     next unless (defined $mesg);
           $mesg->set_error($err, $etxt);
    committed Sep 6, 2012
Commits on Sep 21, 2012
  1. extend ldap_explode_dn() for RFC 4514

    Extend ldap_explode_dn() to also parse DNs that conform to RFC 4514.
    This way ldap_explode_dn() is rather lax in checking what it allows or not,
    but tries to make sense of as much DNs as possible.
      - only spaces ignored around attribute value instead of \s
      - NUL (U+0000) not allowed unquoted in attribute value
      - sharp/square/octothorpe (U+0023) allowed unquoted unless at first position
      - equal sign (U+003D) allowed unquoted in attribute value
      - space (U+0020) allowed to be quoted by \\ in a quoted pair
    Test cases adapted accordingly.
    committed Sep 19, 2012
Commits on Sep 20, 2012
  1. Release 0.48

    committed Sep 20, 2012
  2. Merge marschap/next into next

    committed Sep 20, 2012
  3. fix bug in escape_dn_value()

    The original implementation replaced any leading & trailing whitespace
    with '\20', the replacement for SPACE (U+0020).
    This could lead to tabulators, newlines, ... being wrongly replaced by '\20'.
    This commit fixes the issue.
    committed Sep 19, 2012
Commits on Sep 18, 2012
  1. FAQ.pod: updates

    * mark questions as such, i.e. with a question mark
    * consistent naming of perl-ldap: lowercase
    committed Sep 16, 2012
  2. LWP/Protocol/ respond with requested MIME type

    Instead of answering with the simplistic faked MIME type 'text/FORMAT',
    get the mime type from the HTTP Accept header, and use it in the response's
    HTTP Content-Type header.
    committed Sep 16, 2012
  3. Changes: fix typo

    committed Sep 16, 2012
  4. tests with server: don't fail on undefined $SLAPD_MODULE_DIR

    Define $SLAPD_MODULE_DIR in t/ in case it is not defined in my.cfg or
    committed Sep 16, 2012
  5. fix typo in comment

    committed Sep 16, 2012
  6. with encode => 'canonical', do mbcescape DNs

    Better standard conformance when writing LDIFs with the encode option set to
    'canonical': encode multi-octet UTF-8 sequences as sequences of hexpairs,
    each preceded by a backslash.
    committed Sep 7, 2012
  7. tests with server: updated OpenLDAP schema files

    Updated OpenLDAP schema files to those of OpenLDAP 2.4.32.
    While at it, I added the missing data/openldap.schema.
    committed Sep 7, 2012
  8. tests with server: updated for recent OpenLDAP & cleanup

    * make 'bdb' the default for $SLAPD_DB
    * rename OpenLDAP-specific variables to $SLAPD_...
    * require LDAPv3 support
    * add variable $SLAPD_MODULE_DIR for dynamcally loaded modules
    * rename config template to data/
    * rename config used to $TEMPDIR/slapd.conf
    committed Sep 7, 2012
  9. Extension/ polish ASN.1 definition

    Use OCTET STRING in ASN.1 definition instead of STRING,
    and add comment on the intended data.
    committed Sep 7, 2012
  10. Extension/ polish ASN.1 definition

    Use OCTET STRING in ASN.1 definition instead of STRING,
    and add comment on the intended data.
    committed Sep 7, 2012
  11. adapt to RFC 4511

    * remove AttributeType
    * replace AttributeDescriptionList to AttributeSelection
    * introduce PartialAttribute
    * rename LDAPURL to URI
    * replace AttributeTypeAndValues by PartialAttribute
    In addition, clean up alignment a bit, and remove trailing spaces.
    committed Sep 7, 2012