3.1.4.7 R_DnssrvQuery2 (Opnum 6)

The R_DnssrvQuery2 method queries the DNS server for information. The type of information queried for is specified by the client using the pszZone and pszOperation parameters. The DNS server SHOULD implement R_ DnssrvQuery2 <281>.

All parameters are as specified by the R_DnssrvQuery method (section 3.1.4.2) with the following exceptions:

 LONG R_DnssrvQuery2(
   [in]                                   handle_t                hBindingHandle,
   [in]                                   DWORD                   dwClientVersion,
   [in]                                   DWORD                   dwSettingFlags,
   [in, unique, string]                   LPCWSTR                 pwszServerName,
   [in, unique, string]                   LPCSTR                  pszZone,
   [in, unique, string]                   LPCSTR                  pszOperation,
   [out]                                  PDWORD                  pdwTypeId,
   [out, switch_is(*pdwTypeId)]           DNSSRV_RPC_UNION*       ppData
 );

dwClientVersion: The client version in DNS_RPC_CURRENT_CLIENT_VER (section 2.2.1.2.1) format.

dwSettingFlags: Reserved for future use only. This field MUST be set to zero by clients and ignored by servers.

Return Values: Return values behaviors and interpretations are same as they are for R_DnssrvQuery method (section 3.1.4.2).

When processing this call, the server MUST perform the same actions as for the R_DnssrvQuery method (section 3.1.4.2), except that for output structure types with multiple versions, the server MUST return the structure type selected by dwClientVersion except in the event the dwClientVersion is greater than the server version, in which case the server MUST return the highest version number known to itself.