NAME
ldapisldapurl, ldapurlparse, ldapfreeurldesc - LDAP Uniform
Resource Locator routines LLIIBBRRAARRYYOpenLDAP LDAP (libldap, -lldap)
SYNOPSIS
##iinncclluuddee <
iinntt llddaappiissllddaappuurrll(( ccoonnsstt cchhaarr **uurrll )) iinntt llddaappuurrllppaarrssee(( ccoonnsstt cchhaarr **uurrll,, LLDDAAPPUURRLLDDeesscc ****lluuddpppp )) typedef struct ldapurldesc { char * ludscheme; /* URI scheme */ char * ludhost; /* LDAP host to contact */ int ludport; /* port on host */ char * luddn; /* base for search */ char ** ludattrs; /* list of attributes */ int ludscope; /* a LDAPSCOPE... value */ char * ludfilter; /* LDAP search filter */ char ** ludexts; /* LDAP extensions */ int ludcritexts; /* true if any extension is critical */ /* may contain additional fields for internal use */ } LDAPURLDesc; llddaappffrreeeeuurrllddeesscc(( LLDDAAPPUURRLLDDeesscc **lluuddpp ))> DESCRIPTION
These routines support the use of LDAP URLs (Uniform Resource Locators) as detailed in RFC 2255. LDAP URLs look like this: llddaapp::////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.llddaappiissllddaappuurrll(()) 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 llddaappuurrllppaarrssee(()) routine should be used if a more thorough check is needed.llddaappuurrllppaarrssee(()) breaks down an LDAP URL passed in url into its compo-
nent pieces. If successful, zero is returned, an LDAP URL description is allocated, filled in, and ludpp is set to point to it. If an erroroccurs, a non-zero URL error code is returned.
llddaappffrreeeeuurrllddeesscc(()) should be called to free an LDAP URL description that was obtained from a call to llddaappuurrllppaarrssee(())..SEE ALSO
llddaapp(3) The LDAP URL Format, RFC 2255, i Hws n Mr Sih Dcme 19. AACCKKNNOOWWLLEEDDGGEEMMEENNTTSS OOppeennLLDDAAPP is developed and maintained by The OpenLDAP Project (http://www.openldap.org/). OOppeennLLDDAAPP is derived from University of Michigan LDAP 3.3 Release. OpenLDAP 2.2.19 2004/11/26 LDAPURL(3)