2006-08-06 12:03:31 +00:00
|
|
|
#ifndef _DSGETDC_H
|
|
|
|
#define _DSGETDC_H
|
|
|
|
|
|
|
|
#ifdef __cplusplus
|
|
|
|
extern "C" {
|
|
|
|
#endif
|
|
|
|
|
|
|
|
#define DS_DOMAIN_IN_FOREST 0x01
|
|
|
|
#define DS_DOMAIN_DIRECT_OUTBOUND 0x02
|
|
|
|
#define DS_DOMAIN_TREE_ROOT 0x04
|
|
|
|
#define DS_DOMAIN_PRIMARY 0x08
|
|
|
|
#define DS_DOMAIN_NATIVE_MODE 0x10
|
|
|
|
#define DS_DOMAIN_DIRECT_INBOUND 0x20
|
|
|
|
|
|
|
|
typedef struct _DOMAIN_CONTROLLER_INFOA
|
|
|
|
{
|
|
|
|
LPSTR DomainControllerName;
|
|
|
|
LPSTR DomainControllerAddress;
|
|
|
|
ULONG DomainControllerAddressType;
|
|
|
|
GUID DomainGuid;
|
|
|
|
LPSTR DomainName;
|
|
|
|
LPSTR DnsForestName;
|
|
|
|
ULONG Flags;
|
|
|
|
LPSTR DcSiteName;
|
|
|
|
LPSTR ClientSiteName;
|
|
|
|
} DOMAIN_CONTROLLER_INFOA, *PDOMAIN_CONTROLLER_INFOA;
|
|
|
|
|
|
|
|
typedef struct _DOMAIN_CONTROLLER_INFOW
|
|
|
|
{
|
|
|
|
LPWSTR DomainControllerName;
|
|
|
|
LPWSTR DomainControllerAddress;
|
|
|
|
ULONG DomainControllerAddressType;
|
|
|
|
GUID DomainGuid;
|
|
|
|
LPWSTR DomainName;
|
|
|
|
LPWSTR DnsForestName;
|
|
|
|
ULONG Flags;
|
|
|
|
LPWSTR DcSiteName;
|
|
|
|
LPWSTR ClientSiteName;
|
|
|
|
} DOMAIN_CONTROLLER_INFOW, *PDOMAIN_CONTROLLER_INFOW;
|
|
|
|
|
|
|
|
typedef struct _DS_DOMAIN_TRUSTSA
|
|
|
|
{
|
|
|
|
LPSTR NetbiosDomainName;
|
|
|
|
LPSTR DnsDomainName;
|
|
|
|
ULONG Flags;
|
|
|
|
ULONG ParentIndex;
|
|
|
|
ULONG TrustType;
|
|
|
|
ULONG TrustAttributes;
|
|
|
|
PSID DomainSid;
|
|
|
|
GUID DomainGuid;
|
|
|
|
} DS_DOMAIN_TRUSTSA, *PDS_DOMAIN_TRUSTSA;
|
|
|
|
|
|
|
|
typedef struct _DS_DOMAIN_TRUSTSW
|
|
|
|
{
|
|
|
|
LPWSTR NetbiosDomainName;
|
|
|
|
LPWSTR DnsDomainName;
|
|
|
|
ULONG Flags;
|
|
|
|
ULONG ParentIndex;
|
|
|
|
ULONG TrustType;
|
|
|
|
ULONG TrustAttributes;
|
|
|
|
PSID DomainSid;
|
|
|
|
GUID DomainGuid;
|
|
|
|
} DS_DOMAIN_TRUSTSW, *PDS_DOMAIN_TRUSTSW;
|
|
|
|
|
2017-07-02 18:29:38 +00:00
|
|
|
DWORD WINAPI
|
|
|
|
DsAddressToSiteNamesA(
|
|
|
|
LPCSTR ComputerName,
|
|
|
|
DWORD EntryCount,
|
|
|
|
PSOCKET_ADDRESS SocketAddresses,
|
|
|
|
LPSTR **SiteNames);
|
|
|
|
|
|
|
|
DWORD WINAPI
|
|
|
|
DsAddressToSiteNamesW(
|
|
|
|
LPCWSTR ComputerName,
|
|
|
|
DWORD EntryCount,
|
|
|
|
PSOCKET_ADDRESS SocketAddresses,
|
|
|
|
LPWSTR **SiteNames);
|
|
|
|
|
|
|
|
DWORD WINAPI
|
|
|
|
DsAddressToSiteNamesExA(
|
|
|
|
LPCSTR ComputerName,
|
|
|
|
DWORD EntryCount,
|
|
|
|
PSOCKET_ADDRESS SocketAddresses,
|
|
|
|
LPSTR **SiteNames,
|
|
|
|
LPSTR **SubnetNames);
|
|
|
|
|
|
|
|
DWORD WINAPI
|
|
|
|
DsAddressToSiteNamesExW(
|
|
|
|
LPCWSTR ComputerName,
|
|
|
|
DWORD EntryCount,
|
|
|
|
PSOCKET_ADDRESS SocketAddresses,
|
|
|
|
LPWSTR **SiteNames,
|
|
|
|
LPWSTR **SubnetNames);
|
|
|
|
|
2017-07-08 09:11:22 +00:00
|
|
|
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);
|
|
|
|
|
2007-04-27 11:51:50 +00:00
|
|
|
DWORD WINAPI
|
2006-08-06 12:03:31 +00:00
|
|
|
DsEnumerateDomainTrustsA(
|
|
|
|
LPSTR ServerName,
|
|
|
|
ULONG Flags,
|
|
|
|
PDS_DOMAIN_TRUSTSA* Domains,
|
|
|
|
PULONG DomainCount);
|
|
|
|
|
2007-04-27 11:51:50 +00:00
|
|
|
DWORD WINAPI
|
2006-08-06 12:03:31 +00:00
|
|
|
DsEnumerateDomainTrustsW(
|
|
|
|
LPWSTR ServerName,
|
|
|
|
ULONG Flags,
|
|
|
|
PDS_DOMAIN_TRUSTSW* Domains,
|
|
|
|
PULONG DomainCount);
|
|
|
|
|
2007-04-27 11:51:50 +00:00
|
|
|
DWORD WINAPI
|
2006-08-06 12:03:31 +00:00
|
|
|
DsGetDcNameA(
|
|
|
|
LPCSTR ComputerName,
|
|
|
|
LPCSTR DomainName,
|
|
|
|
GUID* DomainGuid,
|
|
|
|
LPCSTR SiteName,
|
|
|
|
ULONG Flags,
|
|
|
|
PDOMAIN_CONTROLLER_INFOA* DomainControllerInfo);
|
|
|
|
|
2007-04-27 11:51:50 +00:00
|
|
|
DWORD WINAPI
|
2006-08-06 12:03:31 +00:00
|
|
|
DsGetDcNameW(
|
|
|
|
LPCWSTR ComputerName,
|
|
|
|
LPCWSTR DomainName,
|
|
|
|
GUID* DomainGuid,
|
|
|
|
LPCWSTR SiteName,
|
|
|
|
ULONG Flags,
|
|
|
|
PDOMAIN_CONTROLLER_INFOW* DomainControllerInfo);
|
|
|
|
|
2017-07-08 09:11:22 +00:00
|
|
|
DWORD WINAPI
|
2017-07-02 20:21:27 +00:00
|
|
|
DsGetDcSiteCoverageA(
|
|
|
|
LPCSTR ServerName,
|
|
|
|
PULONG EntryCount,
|
|
|
|
LPSTR **SiteNames);
|
|
|
|
|
2017-07-08 09:11:22 +00:00
|
|
|
DWORD WINAPI
|
2017-07-02 20:21:27 +00:00
|
|
|
DsGetDcSiteCoverageW(
|
|
|
|
LPCWSTR ServerName,
|
|
|
|
PULONG EntryCount,
|
|
|
|
LPWSTR **SiteNames);
|
|
|
|
|
2017-07-08 09:11:22 +00:00
|
|
|
DWORD WINAPI
|
2017-07-07 17:59:14 +00:00
|
|
|
DsGetForestTrustInformationW(
|
|
|
|
LPCWSTR ServerName,
|
|
|
|
LPCWSTR TrustedDomainName,
|
|
|
|
DWORD Flags,
|
|
|
|
PLSA_FOREST_TRUST_INFORMATION *ForestTrustInfo);
|
|
|
|
|
2017-07-08 09:11:22 +00:00
|
|
|
DWORD WINAPI
|
2017-07-07 17:59:14 +00:00
|
|
|
DsGetSiteNameA(
|
|
|
|
LPCSTR ComputerName,
|
|
|
|
LPSTR *SiteName);
|
|
|
|
|
2017-07-08 09:11:22 +00:00
|
|
|
DWORD WINAPI
|
2017-07-07 17:59:14 +00:00
|
|
|
DsGetSiteNameW(
|
|
|
|
LPCWSTR ComputerName,
|
|
|
|
LPWSTR *SiteName);
|
|
|
|
|
2017-07-08 09:11:22 +00:00
|
|
|
DWORD WINAPI
|
2017-07-07 17:59:14 +00:00
|
|
|
DsMergeForestTrustInformationW(
|
|
|
|
LPCWSTR DomainName,
|
|
|
|
PLSA_FOREST_TRUST_INFORMATION NewForestTrustInfo,
|
|
|
|
PLSA_FOREST_TRUST_INFORMATION OldForestTrustInfo,
|
|
|
|
PLSA_FOREST_TRUST_INFORMATION *ForestTrustInfo);
|
|
|
|
|
2017-07-08 12:00:44 +00:00
|
|
|
DWORD WINAPI
|
|
|
|
DsValidateSubnetNameA(
|
|
|
|
LPCSTR SubnetName);
|
|
|
|
|
|
|
|
DWORD WINAPI
|
|
|
|
DsValidateSubnetNameW(
|
|
|
|
LPCWSTR SubnetName);
|
|
|
|
|
2006-08-06 12:03:31 +00:00
|
|
|
#ifdef UNICODE
|
|
|
|
typedef DOMAIN_CONTROLLER_INFOW DOMAIN_CONTROLLER_INFO, *PDOMAIN_CONTROLLER_INFO;
|
|
|
|
typedef DS_DOMAIN_TRUSTSW DS_DOMAIN_TRUSTS, *PDS_DOMAIN_TRUSTS;
|
2017-07-02 18:29:38 +00:00
|
|
|
#define DsAddressToSiteNames DsAddressToSiteNamesW
|
|
|
|
#define DsAddressToSiteNamesEx DsAddressToSiteNamesExW
|
2006-08-06 12:03:31 +00:00
|
|
|
#define DsEnumerateDomainTrusts DsEnumerateDomainTrustsW
|
|
|
|
#define DsGetDcName DsGetDcNameW
|
2017-07-02 20:21:27 +00:00
|
|
|
#define DsGetDcSiteCoverage DsGetDcSiteCoverageW
|
2017-07-07 17:59:14 +00:00
|
|
|
#define DsGetSiteName DsGetSiteNameW
|
2017-07-08 12:00:44 +00:00
|
|
|
#define DsValidateSubnetName DsValidateSubnetNameW
|
2006-08-06 12:03:31 +00:00
|
|
|
#else
|
|
|
|
typedef DOMAIN_CONTROLLER_INFOA DOMAIN_CONTROLLER_INFO, *PDOMAIN_CONTROLLER_INFO;
|
|
|
|
typedef DS_DOMAIN_TRUSTSA DS_DOMAIN_TRUSTS, *PDS_DOMAIN_TRUSTS;
|
2017-07-02 18:29:38 +00:00
|
|
|
#define DsAddressToSiteNames DsAddressToSiteNamesA
|
|
|
|
#define DsAddressToSiteNamesEx DsAddressToSiteNamesExA
|
2006-08-06 12:03:31 +00:00
|
|
|
#define DsEnumerateDomainTrusts DsEnumerateDomainTrustsA
|
|
|
|
#define DsGetDcName DsGetDcNameA
|
2017-07-02 20:21:27 +00:00
|
|
|
#define DsGetDcSiteCoverage DsGetDcSiteCoverageA
|
2017-07-07 17:59:14 +00:00
|
|
|
#define DsGetSiteName DsGetSiteNameA
|
2017-07-08 12:00:44 +00:00
|
|
|
#define DsValidateSubnetName DsValidateSubnetNameA
|
2006-08-06 12:03:31 +00:00
|
|
|
#endif
|
|
|
|
|
|
|
|
#ifdef __cplusplus
|
|
|
|
}
|
|
|
|
#endif
|
2008-11-20 19:00:17 +00:00
|
|
|
#endif
|