DnsModifyRecordsInSet_W (Windows CE 5.0)
This function allows you to modify or remove multiple resource record sets that are associated with a specific name. This function uses Dynamic DNS as its underlying technology. Windows CE supports only the Unicode encoding, as indicated by the *_W suffix.
DNS_STATUS WINAPI DnsModifyRecordsInSet_W( PDNS_RECORD pAddRecords, PDNS_RECORD pDeleteRecords, DWORD Options, HANDLE hContext, PIP4_ARRAY pServerList, PVOID pReserved );
- [in] Pointer to the DNS_RECORD structure containing the resource records to be added to the resource record set.
- [in] Pointer to the DNS_RECORD structure containing the resource records to be deleted from the resource record set.
- [in] Options to apply to the operation. The following table shows available options, which can be combined.
Option Description DNS_UPDATE_SECURITY_OFF Does not attempt secure dynamic updates if names cannot be registered anonymously. This is the default setting. DNS_UPDATE_SECURITY_ON Attempts nonsecure dynamic update. If refused, then attempts secure dynamic update. DNS_UPDATE_SECURITY_ONLY Attempts secure dynamic updates only. Does not attempt anonymous name registration.
- [in] Handle to the credentials of a specific account. This is used when secure dynamic update is required. This parameter is optional. For more information, see the Remarks section.
- [in] Pointer to an array of DNS server IP addresses to which the Find Authoritative Zone (FAZ) request is sent. Windows CE supports a maximum of one server listed in this parameter. Attempts to specify multiple DNS servers result in failure.
- Reserved for future use.
Returns success confirmation upon successful completion. Otherwise, it returns the appropriate DNS-specific error code as defined in Winerror.h.
Windows CE only allows A and AAAA records to be updated. See the Windns.h header file for a complete listing of record set types and their numeric representations.
On Windows CE, this hContext is not obtained by a call to DnsAcquireContextHandle, but is instead a SEC_WINNT_AUTH_IDENTITY_W structure filled with the appropriate settings and typecasted to be a HANDLE.
Security Note Because hContext might contain a user password, name, and domain information, calling functions should clear hContext when the data is no longer required.
If pDeleteRecords contains records that exist in the current set, this function deletes those records. Next, this function adds any records that are specified in pAddRecords.
To add a new record, you would provide no records in pDeleteRecords, and provide the record to be added in pAddRecords.
To modify a record, specify the record being modified in both pDeleteRecords and pAddRecords. This removes the old version of the record, and then adds the modified version.
To delete records, specify records to be deleted in pDeleteRecords and leave pAddRecords empty.
Multiple records can be added or deleted in a single call to DnsModifyRecordInSet. If a record specified in pAddRecords is already present, no change occurs.
If no server list is specified, the default name server is queried.
Unlike desktop versions of Windows, Windows CE does not have a registry key that sets the default security in authentication and that is used through DNS_UPDATE_SECURITY_USE_DEFAULT.
OS Versions: Windows CE 5.0 and later.
Link Library: Dnsapi.lib.
Send Feedback on this topic to the authors