<div class="content"><p align="right"><a href="https://msdn.microsoft.com/en-us/library/e83df161-5c13-4520-ae5a-79218ed0bb19" data-linktype="external">msdn link</a></p><p>The <b>DsrUpdateReadOnlyServerDnsRecords</b> method SHOULD<a id="Appendix_A_Target_170"></a><a aria-label="Product behavior note 170" href="0c858a52-732a-43ec-85dd-e44b357c1898#Appendix_A_170" data-linktype="relative-path">&lt;170&gt;</a> allow an <a href="b5e7d25a-40b2-41c8-9611-98f53358af66#gt_8b0a073b-3099-4efe-8b81-c2886b66a870" data-linktype="relative-path">RODC</a> to send a control
command to a normal (writable) DC for site-specific and CName types of <a href="b5e7d25a-40b2-41c8-9611-98f53358af66#gt_604dcfcd-72f5-46e5-85c1-f3ce69956700" data-linktype="relative-path">DNS</a> records update. For
registration, site-specific records are for the <a href="b5e7d25a-40b2-41c8-9611-98f53358af66#gt_8abdc986-5679-42d9-ad76-b11eb5a0daba" data-linktype="relative-path">site</a> in which RODC resides.
For the types of DNS records, see <a href="../ms-adts/d2435927-0999-4c62-8c6d-13ba31a52e1a" data-linktype="relative-path">[MS-ADTS]</a>
section <a href="../ms-adts/ad6cd52a-a294-407b-a5bd-0ca76569c8e5" data-linktype="relative-path">6.3.2</a>.
</p><dl>
<dd>
<div><pre> NTSTATUS DsrUpdateReadOnlyServerDnsRecords(
   [in, unique, string] LOGONSRV_HANDLE ServerName,
   [in, string] wchar_t* ComputerName,
   [in] PNETLOGON_AUTHENTICATOR Authenticator,
   [out] PNETLOGON_AUTHENTICATOR ReturnAuthenticator,
   [in, unique, string] wchar_t* SiteName,
   [in] ULONG DnsTtl,
   [in, out] PNL_DNS_NAME_INFO_ARRAY DnsNames
 );
</pre></div>
</dd></dl><p><b>ServerName: </b>The custom <a href="b5e7d25a-40b2-41c8-9611-98f53358af66#gt_44deb72d-c62b-4335-90e4-b9fd4dd782ed" data-linktype="relative-path">binding handle</a> (as defined
in section <a href="3b224201-b531-43e2-8c79-b61f6dea8640" data-linktype="relative-path">3.5.4.1</a>)
that represents the connection to the normal (writable) DC.</p><p><b>ComputerName: </b>A null-terminated <a href="b5e7d25a-40b2-41c8-9611-98f53358af66#gt_c305d0ab-8b94-461a-bd76-13b40cb8c4d8" data-linktype="relative-path">Unicode</a> string that
contains the client computer <a href="b5e7d25a-40b2-41c8-9611-98f53358af66#gt_0334e0bd-2755-42f6-aeff-2d4a22bf4abf" data-linktype="relative-path">NetBIOS
name</a>.</p><p><b>Authenticator: </b>A pointer to a <b>NETLOGON_AUTHENTICATOR</b>
structure (as specified in section <a href="76c93227-942a-4687-ab9d-9d972ffabdab" data-linktype="relative-path">2.2.1.1.5</a>) that contains
the client <a href="b5e7d25a-40b2-41c8-9611-98f53358af66#gt_e72a2c02-84a2-4ce3-b66f-86f725642dc3" data-linktype="relative-path">authenticator</a>
that will be used to authenticate the client.</p><p><b>ReturnAuthenticator: </b>A pointer to a <b>NETLOGON_AUTHENTICATOR</b>
structure that contains the server return authenticator.</p><p><b>SiteName: </b>A pointer to a null-terminated
Unicode string that contains the site name where the RODC resides.</p><p><b>DnsTtl: </b>The <a href="b5e7d25a-40b2-41c8-9611-98f53358af66#gt_185c4181-772d-4458-bb90-ab0e11370a1c" data-linktype="relative-path">Time-To-Live (TTL)</a> value,
in seconds, for DNS records.</p><p><b>DnsNames: </b>A pointer to an <a href="8ae8a92e-b63a-43fd-9350-97f1cab1c148" data-linktype="relative-path">NL_DNS_NAME_INFO_ARRAY (section 2.2.1.2.6)</a>
structure that contains an array of <a href="1c7e6520-45a2-43e1-ac0b-43e771f85b14" data-linktype="relative-path">NL_DNS_NAME_INFO</a>
structures.</p><p><b>Return Values: </b>The method returns 0x00000000
(NO_ERROR) on success; otherwise, it returns a nonzero error code.</p><p>On receiving this call, the server performs the following
steps:</p><ul><li><p><span><span> 
</span></span>Verifies that the server is a normal (writable) DC; otherwise,
the server MUST return STATUS_NOT_SUPPORTED.<a id="Appendix_A_Target_171"></a><a aria-label="Product behavior note 171" href="0c858a52-732a-43ec-85dd-e44b357c1898#Appendix_A_171" data-linktype="relative-path">&lt;171&gt;</a></p>
</li><li><p><span><span> 
</span></span>Verifies that the caller (ComputerName) is an RODC; otherwise,
the server MUST return STATUS_NOT_SUPPORTED.</p>
</li><li><p><span><span> 
</span></span>Verifies that the <i>Authenticator</i> passed, and compute the <i>ReturnAuthenticator</i>,
as specified in section <a href="da7acaa3-030b-481e-979b-f58f89389806" data-linktype="relative-path">3.1.4.5</a>.
If the <i>Authenticator</i> verification fails, the server MUST return
STATUS_ACCESS_DENIED.</p>
</li><li><p><span><span> 
</span></span>Validates the requested DNS name type. Only site-specific and
CName types are supported. For an unsupported DNS name type, sets the DNS name
status to STATUS_NOT_SUPPORTED.</p>
</li><li><p><span><span> 
</span></span>Validates the site name for site-specific DNS name registration.
Sets DNS name status to STATUS_ACCESS_DENIED for an invalid site name.</p>
</li><li><p><span><span> 
</span></span>Validates Ndnc <a href="b5e7d25a-40b2-41c8-9611-98f53358af66#gt_45a1c9f1-0263-49a8-97c7-7aca1a99308c" data-linktype="relative-path">domain
name</a> for the registration of NlDnsNdncDomainName DnsDomainInfoType. Sets
DNS name status to STATUS_ACCESS_DENIED for an invalid Ndnc domain name.</p>
</li></ul><p>This method SHOULD be called only by a machine that has
established a <a href="b5e7d25a-40b2-41c8-9611-98f53358af66#gt_08ce423c-9f9c-48ed-afa8-8b64c04ecdca" data-linktype="relative-path">secure channel</a>
with the server.</p></div>