[NETAPI32]
authorEric Kohl <eric.kohl@reactos.org>
Sat, 8 Jul 2017 09:11:22 +0000 (09:11 +0000)
committerEric Kohl <eric.kohl@reactos.org>
Sat, 8 Jul 2017 09:11:22 +0000 (09:11 +0000)
- Add DsDeregisterDnsHostRecordsA stub.
- Implement DsDeregisterDnsHostRecordsW.

[SDK/INCLUDE]
Add DsDeregisterDnsHostRecordsA/W prototypes to dsgetdc.h.

svn path=/trunk/; revision=75305

reactos/dll/win32/netapi32/netapi32.spec
reactos/dll/win32/netapi32/netlogon.c
reactos/sdk/include/psdk/dsgetdc.h

index 619f76a..db6f208 100644 (file)
@@ -3,8 +3,8 @@
 @ stub DsAddressToSiteNamesExA
 @ stub DsAddressToSiteNamesExW
 @ stdcall DsAddressToSiteNamesW(wstr long ptr wstr)
 @ stub DsAddressToSiteNamesExA
 @ stub DsAddressToSiteNamesExW
 @ stdcall DsAddressToSiteNamesW(wstr long ptr wstr)
-@ stub DsDeregisterDnsHostRecordsA
-@ stub DsDeregisterDnsHostRecordsW
+@ stdcall DsDeregisterDnsHostRecordsA(str str ptr ptr str)
+@ stdcall DsDeregisterDnsHostRecordsW(wstr wstr ptr ptr wstr)
 8 stdcall DsEnumerateDomainTrustsA(wstr long ptr ptr)
 9 stdcall DsEnumerateDomainTrustsW(wstr long ptr ptr)
 @ stub DsGetDcCloseW
 8 stdcall DsEnumerateDomainTrustsA(wstr long ptr ptr)
 9 stdcall DsEnumerateDomainTrustsW(wstr long ptr ptr)
 @ stub DsGetDcCloseW
index 933e8f5..236c8a9 100644 (file)
@@ -160,6 +160,55 @@ DsAddressToSiteNamesW(
 }
 
 
 }
 
 
+DWORD
+WINAPI
+DsDeregisterDnsHostRecordsA(
+    _In_opt_ LPSTR ServerName,
+    _In_opt_ LPSTR DnsDomainName,
+    _In_opt_ GUID *DomainGuid,
+    _In_opt_ GUID *DsaGuid,
+    _In_ LPSTR DnsHostName)
+{
+    FIXME("DsDeregisterDnsHostRecordsA(%s, %s, %p, %p, %s)\n",
+          debugstr_a(ServerName), debugstr_a(DnsDomainName),
+          DomainGuid, DsaGuid, debugstr_a(DnsHostName));
+    return ERROR_CALL_NOT_IMPLEMENTED;
+}
+
+
+DWORD
+WINAPI
+DsDeregisterDnsHostRecordsW(
+    _In_opt_ LPWSTR ServerName,
+    _In_opt_ LPWSTR DnsDomainName,
+    _In_opt_ GUID *DomainGuid,
+    _In_opt_ GUID *DsaGuid,
+    _In_ LPWSTR DnsHostName)
+{
+    NET_API_STATUS status;
+
+    TRACE("DsDeregisterDnsHostRecordsW(%s, %s, %p, %p, %s)\n",
+          debugstr_w(ServerName), debugstr_w(DnsDomainName),
+          DomainGuid, DsaGuid, debugstr_w(DnsHostName));
+
+    RpcTryExcept
+    {
+        status = DsrDeregisterDnsHostRecords(ServerName,
+                                             DnsDomainName,
+                                             DomainGuid,
+                                             DsaGuid,
+                                             DnsHostName);
+    }
+    RpcExcept(EXCEPTION_EXECUTE_HANDLER)
+    {
+        status = I_RpcMapWin32Status(RpcExceptionCode());
+    }
+    RpcEndExcept;
+
+    return status;
+}
+
+
 DWORD
 WINAPI
 DsEnumerateDomainTrustsA(
 DWORD
 WINAPI
 DsEnumerateDomainTrustsA(
index d55fe3a..214c6f9 100644 (file)
@@ -92,6 +92,22 @@ DsAddressToSiteNamesExW(
        LPWSTR **SiteNames,
        LPWSTR **SubnetNames);
 
        LPWSTR **SiteNames,
        LPWSTR **SubnetNames);
 
+DWORD WINAPI
+DsDeregisterDnsHostRecordsA(
+       LPSTR ServerName,
+       LPSTR DnsDomainName,
+       GUID *DomainGuid,
+       GUID *DsaGuid,
+       LPSTR DnsHostName);
+
+DWORD WINAPI
+DsDeregisterDnsHostRecordsW(
+       LPWSTR ServerName,
+       LPWSTR DnsDomainName,
+       GUID *DomainGuid,
+       GUID *DsaGuid,
+       LPWSTR DnsHostName);
+
 DWORD WINAPI
 DsEnumerateDomainTrustsA(
        LPSTR ServerName,
 DWORD WINAPI
 DsEnumerateDomainTrustsA(
        LPSTR ServerName,
@@ -124,42 +140,36 @@ DsGetDcNameW(
        ULONG Flags,
        PDOMAIN_CONTROLLER_INFOW* DomainControllerInfo);
 
        ULONG Flags,
        PDOMAIN_CONTROLLER_INFOW* DomainControllerInfo);
 
-DWORD
-WINAPI
+DWORD WINAPI
 DsGetDcSiteCoverageA(
        LPCSTR ServerName,
        PULONG EntryCount,
        LPSTR **SiteNames);
 
 DsGetDcSiteCoverageA(
        LPCSTR ServerName,
        PULONG EntryCount,
        LPSTR **SiteNames);
 
-DWORD
-WINAPI
+DWORD WINAPI
 DsGetDcSiteCoverageW(
        LPCWSTR ServerName,
        PULONG EntryCount,
        LPWSTR **SiteNames);
 
 DsGetDcSiteCoverageW(
        LPCWSTR ServerName,
        PULONG EntryCount,
        LPWSTR **SiteNames);
 
-DWORD
-WINAPI
+DWORD WINAPI
 DsGetForestTrustInformationW(
        LPCWSTR ServerName,
        LPCWSTR TrustedDomainName,
        DWORD Flags,
        PLSA_FOREST_TRUST_INFORMATION *ForestTrustInfo);
 
 DsGetForestTrustInformationW(
        LPCWSTR ServerName,
        LPCWSTR TrustedDomainName,
        DWORD Flags,
        PLSA_FOREST_TRUST_INFORMATION *ForestTrustInfo);
 
-DWORD
-WINAPI
+DWORD WINAPI
 DsGetSiteNameA(
        LPCSTR ComputerName,
        LPSTR *SiteName);
 
 DsGetSiteNameA(
        LPCSTR ComputerName,
        LPSTR *SiteName);
 
-DWORD
-WINAPI
+DWORD WINAPI
 DsGetSiteNameW(
        LPCWSTR ComputerName,
        LPWSTR *SiteName);
 
 DsGetSiteNameW(
        LPCWSTR ComputerName,
        LPWSTR *SiteName);
 
-DWORD
-WINAPI
+DWORD WINAPI
 DsMergeForestTrustInformationW(
        LPCWSTR DomainName,
        PLSA_FOREST_TRUST_INFORMATION NewForestTrustInfo,
 DsMergeForestTrustInformationW(
        LPCWSTR DomainName,
        PLSA_FOREST_TRUST_INFORMATION NewForestTrustInfo,