mirror of
https://git.openldap.org/openldap/openldap.git
synced 2024-12-21 03:10:25 +08:00
144 lines
4.0 KiB
Groff
144 lines
4.0 KiB
Groff
.TH LDAP_URL 3 "22 September 1998" "OpenLDAP LDVERSION"
|
|
.\" $OpenLDAP$
|
|
.\" Copyright 1998-1999 The OpenLDAP Foundation All Rights Reserved.
|
|
.\" Copying restrictions apply. See COPYRIGHT/LICENSE.
|
|
.SH NAME
|
|
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
|
|
.SH SYNOPSIS
|
|
.nf
|
|
.ft B
|
|
#include <ldap.h>
|
|
.ft
|
|
.LP
|
|
.ft B
|
|
int ldap_is_ldap_url( url )
|
|
.ft
|
|
char *url;
|
|
.LP
|
|
.ft B
|
|
int ldap_url_parse( url, ludpp )
|
|
.ft
|
|
char *url;
|
|
LDAPURLDesc **ludpp;
|
|
.LP
|
|
typedef struct ldap_url_desc {
|
|
char *lud_host; /* LDAP host to contact */
|
|
int lud_port; /* port on host */
|
|
char *lud_dn; /* base for search */
|
|
char **lud_attrs; /* NULL-terminate list of attributes */
|
|
int lud_scope; /* a valid LDAP_SCOPE_... value */
|
|
char *lud_filter; /* LDAP search filter */
|
|
char *lud_string; /* for internal use only */
|
|
} LDAPURLDesc;
|
|
.LP
|
|
.ft B
|
|
ldap_free_urldesc( ludp )
|
|
.ft
|
|
LDAPURLDesc *ludp;
|
|
.LP
|
|
.ft B
|
|
int ldap_url_search( ld, url, attrsonly )
|
|
.ft
|
|
LDAP *ld;
|
|
char *url;
|
|
int attrsonly;
|
|
.LP
|
|
.ft B
|
|
int ldap_url_search_s( ld, url, attrsonly, res )
|
|
.ft
|
|
LDAP *ld;
|
|
char *url;
|
|
int attrsonly;
|
|
LDAPMessage **res;
|
|
.LP
|
|
.ft B
|
|
int ldap_url_search_st( ld, url, attrsonly, timeout, res )
|
|
.ft
|
|
LDAP *ld;
|
|
char *url;
|
|
int attrsonly;
|
|
struct timeval *timeout;
|
|
LDAPMessage **res;
|
|
.SH DESCRIPTION
|
|
These routines support the use of LDAP URLs (Uniform Resource Locators).
|
|
LDAP URLs look like this:
|
|
.nf
|
|
|
|
\fBldap://\fP\fIhostport\fP\fB/\fP\fIdn\fP[\fB?\fP\fIattributes\fP[\fB?\fP\fIscope\fP[\fB?\fP\fIfilter\fP]]]
|
|
|
|
where:
|
|
\fIhostport\fP is a host name with an optional ":portnumber"
|
|
\fIdn\fP is the base DN to be used for an LDAP search operation
|
|
\fIattributes\fP is a comma separated list of attributes to be retrieved
|
|
\fIscope\fP is one of these three strings: base one sub (default=base)
|
|
\fIfilter\fP is LDAP search filter as used in a call to ldap_search(3)
|
|
|
|
e.g., ldap://ldap.itd.umich.edu/c=US?o,description?one?o=umich
|
|
.fi
|
|
.LP
|
|
URLs that are wrapped in angle-brackets and/or preceded by "URL:" are also
|
|
tolerated.
|
|
.LP
|
|
.B ldap_is_ldap_url()
|
|
returns a non-zero value if \fIurl\fP 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
|
|
.B ldap_url_parse()
|
|
routine should be used if a more thorough check is needed.
|
|
.LP
|
|
.B ldap_url_parse()
|
|
breaks down an LDAP URL passed in \fIurl\fP into its component pieces.
|
|
If successful, zero is returned, an LDAP URL description is
|
|
allocated, filled in, and \fIludpp\fP is set to point to it. If an
|
|
error occurs, one of these values is returned:
|
|
.nf
|
|
|
|
LDAP_URL_ERR_NOTLDAP - URL doesn't begin with "ldap://"
|
|
LDAP_URL_ERR_NODN - URL has no DN (required)
|
|
LDAP_URL_ERR_BADSCOPE - URL scope string is invalid
|
|
LDAP_URL_ERR_MEM - can't allocate memory space
|
|
.fi
|
|
.LP
|
|
.B ldap_free_urldesc()
|
|
should be called to free an LDAP URL description that was obtained from
|
|
a call to
|
|
.B ldap_url_parse().
|
|
.LP
|
|
.B ldap_url_search()
|
|
initiates an asynchronous LDAP search based on the contents of the
|
|
\fIurl\fP string. This routine acts just like
|
|
.BR ldap_search (3)
|
|
except that many search parameters are pulled out of the URL.
|
|
.LP
|
|
.B ldap_url_search_s()
|
|
performs a synchronous LDAP search based on the contents of the
|
|
\fIurl\fP string. This routine acts just like
|
|
.BR ldap_search_s (3)
|
|
except that many search parameters are pulled out of the URL.
|
|
.LP
|
|
.B ldap_url_search_st()
|
|
performs a synchronous LDAP URL search with a specified \fItimeout\fP.
|
|
This routine acts just like
|
|
.BR ldap_search_st (3)
|
|
except that many search parameters are pulled out of the URL.
|
|
.SH SEE ALSO
|
|
.BR ldap (3),
|
|
.BR ldap_search (3)
|
|
.LP
|
|
.B An LDAP URL Format,
|
|
Tim Howes and Mark Smith, December 1995. Internet Draft (work in progress).
|
|
Currently available at this URL:
|
|
.nf
|
|
ftp://ds.internic.net/internet-drafts/draft-ietf-asid-ldap-format-03.txt
|
|
.fi
|
|
.SH ACKNOWLEDGEMENTS
|
|
.B OpenLDAP
|
|
is developed and maintained by The OpenLDAP Project (http://www.openldap.org/).
|
|
.B OpenLDAP
|
|
is derived from University of Michigan LDAP 3.3 Release.
|