3.1.4.2 RfrGetFQDNFromServerDN (opnum 1)

The RfrGetFQDNFromServerDN method returns the Domain Name System (DNS) FQDN of the server corresponding to the passed DN.

 // opnum 1
 long RfrGetFQDNFromServerDN(
    [in]                                     handle_t           hRpc,
    [in]                                     unsigned long      ulFlags,
    [in, range(10,1024)]                     unsigned long      cbMailboxServerDN,
    [in, string, size_is(cbMailboxServerDN)] unsigned char   *  szMailboxServerDN,
    [out,ref,string]                         unsigned char   ** ppszServerFQDN);

hRpc: A remote procedure call (RPC) binding handle parameter, as specified in [C706] section 2. MUST NOT be NULL.

ulFlags: An unsigned long value, containing a set of bit flags. Unused; SHOULD be set to zero. Other values MUST be ignored by the server.

cbMailboxServerDN: An unsigned long value containing the number of bytes in the value of the szMailboxServerDN parameter, including terminating NULL character. The value is at least 10, at most 1024.

szMailboxServerDN: A 5 or 6-element DN identifying a mailbox server, which MUST match the server's implementation of server identities. It follows this format:

 "/o=" organization-name "/ou=" administrative-group-name "/CN=configuration/CN=servers/CN=" instance-name "/CN=" short-messaging-server-name

The CN=" instance-name " element is optional.<3>

Note that the client MAY receive a DN identifying a specific database on this server, from sources listed in section 1.6. This DN follows this format:

 "/o=" organization-name "/ou=" administrative-group-name "/CN=configuration/CN=servers/CN=" instance-name "/CN=" short-messaging-server-name "/CN=Microsoft Private MDB" 

Or

 "/o=" organization-name "/ou=" administrative-group-name "/CN=configuration/CN=servers/CN=" instance-name "/CN=" short-messaging-server-name "/CN=Microsoft Public MDB" 

If this is the DN available, it is the client's responsibility to remove the final element before passing the DN to the RfrGetFQDNFromServerDN method.

ppszServerFQDN: A string. If the server does not return an error, the ppszServerFQDN parameter contains the FQDN of the mailbox server identified by the szMailboxServerDN parameter.

Return Values: The server returns 0 for a successful execution. An error results in an HRESULT or other nonzero error code.

Exceptions Thrown: No exceptions are thrown beyond those thrown by the underlying RPC protocol as specified in [MS-RPCE].

The server MUST process the data from the client using the following constraints when receiving this message. The method MUST perform some lookup to determine the FQDN of the server identified by the szMailboxServerDN parameter. After considering these constraints, this method SHOULD return one mailbox server name in the ppszServerFQDN parameter and 0 as a return value. If any errors occur and the method is not able to return the name of a mailbox server, a failing HRESULT SHOULD be returned.