Save some bytes and cycles by using MIME::Base64::decode() instead of MIME::Base64::decode_base64().
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.
* create objects consistently using 'CLASS->new(args)' instead of 'new CLASS args' * indent method parameters for cleaner reading * add comments * harmonize coding style * catch errors in Net::LDAP->new() * fix calls of $ldap->code / $ldap->error to $mesg->code / $mesg->error
If user is not given using $uri->userinfo, try to get it from the Authorization HTTP header. Currently only Basic authorization is supported.
Re-factor a bit to accept extension 'x-tls' and to call Net::LDAP->start_tls() if it was given.
Allow schemes 'ldaps' and 'ldapi' in addition to the pure 'ldap'. To support the scheme 'ldapi', add LWP/Protocol/ldapi.pm
* use explicitely imported HTTP_... constants instead of the old RC_... ones * change error for illegal methods to HTTP_NOT_IMPLEMENTED, which according to the HTTP specs is the correct one * allow HEAD method in addition to GET