3.1.4.18 R_DnssrvUpdateRecord4 (Opnum 17)

The R_DnssrvUpdateRecord4 method is used to add a new DNS record or to modify or delete an existing DNS record in a zone or in a zone scope under a virtualization instance, if specified. The DNS server SHOULD<293> implement R_DnssrvUpdateRecord4.

All parameters are as specified by the R_DnssrvUpdateRecord3 (section 3.1.4.11) method with the following exceptions:

    LONG R_DnssrvUpdateRecord4(
      [in]                    handle_t             hBindingHandle,
      [in]                    DWORD                dwClientVersion,
      [in]                    DWORD                dwSettingFlags,
      [in, unique, string]    LPCWSTR              pwszServerName,
      [in, unique, string]    LPCWSTR              pwszVirtualizationInstanceID,
      [in, unique, string]    LPCSTR               pszZone,
      [in, unique, string]    LPCWSTR              pwszZoneScope,
      [in, string]            LPCSTR               pszNodeName,
      [in, unique]            PDNS_RPC_RECORD      pAddRecord,
      [in, unique]            PDNS_RPC_RECORD      pDeleteRecord
    );

pwszVirtualizationInstanceID: A pointer to a null-terminated Unicode string that contains the name of the virtualization instance configured in the DNS server. For operations specific to a particular zone or zone scope, details must be given in pszZone and pwszZonescope as specified in section 3.1.4.11. If the value pwszVirtualizationInstanceID is NULL, the API gives the same behavior as R_DnssrvUpdateRecord3.

When processing this call, the server MUST perform the same actions as for the R_DnssrvUpdateRecord3 method (section 3.1.4.12). If unable to perform the operation, returns error EPT_S_CANT_PERFORM_OP (0x000006D8) ([MS-ERREF] section 2.2).