ldap_url_search_s3
Ldap uniform resource locator routines
Part of ldap_url(3).
Usage
int ldap_is_ldap_url(
url
)
char
*url;
char *
lud_scheme;
/*
URI
scheme
*/
char lud_host;
/*
LDAP
host
to
contact
*/
int lud_port;
/*
port
on
host
*/
char *
lud_dn;
/*
base
for
search
*/
char **
lud_attrs;
/*
list
of
attributes
*/
int lud_scope;
/*
a
LDAP_SCOPE_ ...
value
*/
char *
lud_filter;
/*
LDAP
search
filter
*/
char **
lud_exts;
/*
LDAP
extensions
*/
Overview
These routines support the use of LDAP URLs (Uniform Resource Locators) as detailed in RFC 2255. LDAP URLs look like this:
ldap://hostport/dn[?attrs[?scope[?filter[?exts]]]]
where:
hostport is a host name with an optional ":portnumber"
dn is the search base
attrs is a comma separated list of attributes to request
scope is one of these three strings:
base one sub (default=base)
filter is filter
exts are recognized set of LDAP and/or API extensions.
Example:
ldap://ldap.example.net/dc=example,dc=net?cn,sn?sub?(cn=*)
URLs that are wrapped in angle-brackets and/or preceded by "URL:" are also tolerated. Alternative schemes such as ldaps:// and ldapi:// may be parsed using the below routines as well.
ldap_is_ldap_url() returns a non-zero value if url looks like an LDAP URL (as opposed to some other kind of URL). It can be used as a quick check for an LDAP URL; the ldap_url_parse() routine should be used if a more thorough check is needed.
ldap_url_parse() breaks down an LDAP URL passed in url into its component pieces. If successful, zero is returned, an LDAP URL description is allocated, filled in, and ludpp is set to point to it. If an error occurs, a non-zero URL error code is returned.
ldap_free_urldesc() should be called to free an LDAP URL description that was obtained from a call to ldap_url_parse().
ldap_url_search() initiates an asynchronous LDAP search based on the contents of the url string. This routine acts just like ldap_search(3) except that many search parameters are pulled out of the URL.
ldap_url_search_s() performs a synchronous LDAP search based on the contents of the url string. This routine acts just like ldap_search_s(3) except that many search parameters are pulled out of the URL.
ldap_url_search_st() performs a synchronous LDAP URL search with a specified timeout. This routine acts just like ldap_search_st(3) except that many search parameters are pulled out of the URL.
Acknowledgements
OpenLDAP is developed and maintained by The OpenLDAP Project (http://www.openldap.org/). OpenLDAP is derived from University of Michigan LDAP 3.3 Release.
History
- Debian 3.0 (Woody): the text shown here
- Debian 2.2 (Potato) to Debian 2.1 (Slink)