#include <ldap.h>
.LP
.ft B
-char *ldap_get_dn(ld, entry)
-.ft
-LDAP *ld;
-LDAPMessage *entry;
+char *ldap_get_dn( LDAP *ld, LDAPMessage *entry )
.LP
.ft B
-char **ldap_explode_dn(dn, notypes)
-.ft
-char *dn;
-int notypes;
+char **ldap_explode_dn( const char *dn, int notypes )
.LP
.ft B
-char **ldap_explode_rdn(rdn, notypes)
-.ft
-char *rdn;
-int notypes;
+char **ldap_explode_rdn( const char *rdn, int notypes )
.LP
.ft B
-char *ldap_dn2ufn(dn)
-.ft
-char *dn;
+char *ldap_dn2ufn( const char * dn )
.SH DESCRIPTION
These routines allow LDAP entry names (Distinguished Names, or DNs)
to be obtained, parsed, converted to a user-friendly form, and tested.
routine takes an RDN as returned by
.B ldap_explode_dn(dn,0)
and breaks it up into its "type=value" component parts (or just "value",
-if the \fInotypes\fP parameter is set). The result can be freed by
-calling
+if the \fInotypes\fP parameter is set). Note the value is not
+unescaped. The result can be freed by calling
.BR ldap_value_free (3).
.LP
.B ldap_dn2ufn()
is used to turn a DN as returned by
-.B ldap_get_dn()
-into a more user-friendly form, stripping off type names. See
-RFC 1781 "Using the Directory to Achieve User Friendly Naming"
-for more details on the UFN format. The space for the UFN returned
-is obtained dynamically and the user is responsible for freeing it
-via a call to
+.BR ldap_get_dn (3)
+into a more user-friendly form, stripping off all type names. See
+"Using the Directory to Achieve User Friendly Naming" (RFC 1781)
+for more details on the UFN format. Due to the ambigious nature
+of the format, it is generally only used for display purposes.
+The space for the UFN returned is obtained dynamically and the user
+is responsible for freeing it via a call to
.BR ldap_memfree (3).
.SH ERRORS
If an error occurs in