Directory Services |
The DsQuoteRdnValue function converts an RDN into a quoted RDN value, if the RDN value contains characters that require quotes. The quoted RDN can then be submitted as part of a distinguished name (DN) to the directory service using various APIs such as LDAP. An example of an RDN that would require quotes would be one that has a comma-separated value, such as an RDN for a name that uses the format last,first.
DWORD DsQuoteRdnValue( DWORD cUnquotedRdnValueLength, LPCTCH psUnquotedRdnValue, DWORD* pcQuotedRdnValueLength, LPTCH psQuotedRdnValue );
The following flags are the output for this parameter.
Value | Meaning |
---|---|
ERROR_SUCCESS | Indicates that the correct number of characters were found in psQuotedRdnValue. |
OUT ERROR_BUFFER_OVERFLOW | Indicates that the number of characters in the string do not match psQuotedRdnValue. |
Return Code | Description |
---|---|
ERROR_SUCCESS | If quotes or escapes were required, then psQuotedRdnValue contains the quoted, escaped version of psUnquotedRdnValue. Otherwise, psQuotedRdnValue contains a copy of psUnquotedRdnValue. In either case, pcQuotedRdnValueLength contains the number of characters in the RDN string. |
ERROR_BUFFER_OVERFLOW | Indicates that the psQuotedRdnValueLength parameter contains the space required, in characters, to hold the psQuotedRdnValue parameter. |
ERROR_INVALID_PARAMETER | Indicates that there is an invalid parameter. |
ERROR_NOT_ENOUGH_MEMORY | Indicates that there is an allocation error. |
Quotes are not added to the RDN if none are required. In this case, the output RDN value is the same as the input RDN value.
When quoting is required, the RDN is quoted in accordance with the specification "Lightweight Directory Access Protocol (v3): UTF-8 String Representation of Distinguished Names," RFC 2253.
The input and output RDN values are not NULL-terminated strings.
To revert changes made by this call, call the DsUnquoteRdnValue function.
Client: Included in Windows XP and
Windows 2000 Professional.
Server: Included in Windows Server 2003 and
Windows 2000 Server.
Redistributable: Requires Active Directory Client Extension
on Windows NT 4.0 SP6a and Windows 95/98/Me.
Unicode: Implemented as Unicode and ANSI versions on Windows
NT/2000/XP.
Header: Declared in Ntdsapi.h.
Library: Use Ntdsapi.lib.
DsUnquoteRdnValue, Domain Controller and Replication Management Functions