ldap_is_ldap_url, ldap_url_parse, ldap_free_urldesc,
ldap_url_search, ldap_url_search_s, ldap_url_search_st -
LDAP Uniform Resource Locator routines
SYNOPSIS
#include <ldap.h>
int ldap_is_ldap_url( url )
char *url;
int ldap_url_parse( url, ludpp )
char *url;
LDAPURLDesc **ludpp;
typedef struct ldap_url_desc {
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 */
/* may contain additional fields for internal use */
} LDAPURLDesc;
ldap_free_urldesc( ludp )
LDAPURLDesc *ludp;
int ldap_url_search( ld, url, attrsonly )
LDAP *ld;
char *url;
int attrsonly;
int ldap_url_search_s( ld, url, attrsonly, res )
LDAP *ld;
char *url;
int attrsonly;
LDAPMessage **res;
int ldap_url_search_st( ld, url, attrsonly, timeout, res )
LDAP *ld;
char *url;
int attrsonly;
struct timeval *timeout;
LDAPMessage **res;
DESCRIPTION
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]]]]
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 rou
tines 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.
SEE ALSO
ldap(3), ldap_search(3)
The LDAP URL Format, RFC 2255, Tim Howes and Mark Smith,
December 1997.
OpenLDAP is developed and maintained by The OpenLDAP Pro
ject (http://www.openldap.org/). OpenLDAP is derived from
University of Michigan LDAP 3.3 Release.
Man(1) output converted with
man2html