135 lines
2.3 KiB
C
135 lines
2.3 KiB
C
/*++
|
|
|
|
Copyright (c) 1996-1997 Microsoft Corporation
|
|
|
|
Module Name:
|
|
|
|
nldns.h
|
|
|
|
Abstract:
|
|
|
|
Header for routines to register DNS names.
|
|
|
|
Author:
|
|
|
|
Cliff Van Dyke (CliffV) 28-May-1996
|
|
|
|
Revision History:
|
|
|
|
--*/
|
|
|
|
|
|
//
|
|
// Log file of all names registered in DNS
|
|
//
|
|
|
|
#define NL_DNS_LOG_FILE L"\\system32\\config\\netlogon.dns"
|
|
#define NL_DNS_BINARY_LOG_FILE L"\\system32\\config\\netlogon.dnb"
|
|
|
|
// NL_MAX_DNS_LENGTH for each DNS name plus some slop
|
|
#define NL_DNS_RECORD_STRING_SIZE (NL_MAX_DNS_LENGTH*3+30 + 1)
|
|
#define NL_DNS_A_RR_VALUE_1 " IN A "
|
|
#define NL_DNS_CNAME_RR_VALUE_1 " IN CNAME "
|
|
#define NL_DNS_SRV_RR_VALUE_1 " IN SRV "
|
|
#define NL_DNS_RR_EOL "\r\n"
|
|
|
|
//
|
|
// Registry key where private data is stored across boots
|
|
//
|
|
// (This key does NOT have a change notify registered.)
|
|
//
|
|
#define NL_PRIVATE_KEY "SYSTEM\\CurrentControlSet\\Services\\Netlogon\\Private"
|
|
|
|
//
|
|
// Procedure Forwards for dns.c
|
|
//
|
|
|
|
HKEY
|
|
NlOpenNetlogonKey(
|
|
LPSTR KeyName
|
|
);
|
|
|
|
NET_API_STATUS
|
|
NlGetConfiguredDnsDomainName(
|
|
OUT LPWSTR *DnsDomainName
|
|
);
|
|
|
|
NET_API_STATUS
|
|
NlDnsInitialize(
|
|
VOID
|
|
);
|
|
|
|
VOID
|
|
NlDnsScavenge(
|
|
IN LPVOID ScavengerParam
|
|
);
|
|
|
|
VOID
|
|
NlDnsPnp(
|
|
BOOL TransportChanged
|
|
);
|
|
|
|
BOOLEAN
|
|
NlDnsHasDnsServers(
|
|
VOID
|
|
);
|
|
|
|
NTSTATUS
|
|
NlDnsNtdsDsaDeletion (
|
|
IN LPWSTR DnsDomainName,
|
|
IN GUID *DomainGuid,
|
|
IN GUID *DsaGuid,
|
|
IN LPWSTR DnsHostName
|
|
);
|
|
|
|
BOOL
|
|
NlDnsCheckLastStatus(
|
|
VOID
|
|
);
|
|
|
|
//
|
|
// Flags for NlDnsRegisterDomain(OnPnp)
|
|
//
|
|
#define NL_DNSPNP_SITECOV_CHANGE_ONLY 0x01 // Register only if site coverage changes
|
|
#define NL_DNSPNP_FORCE_REREGISTER 0x02 // Force re-registration of all previously registered records
|
|
|
|
NET_API_STATUS
|
|
NlDnsRegisterDomain(
|
|
IN PDOMAIN_INFO DomainInfo,
|
|
IN ULONG Flags
|
|
);
|
|
|
|
NET_API_STATUS
|
|
NlDnsRegisterDomainOnPnp(
|
|
IN PDOMAIN_INFO DomainInfo,
|
|
IN PULONG Flags
|
|
);
|
|
|
|
VOID
|
|
NlDnsShutdown(
|
|
VOID
|
|
);
|
|
|
|
NET_API_STATUS
|
|
NlSetDnsForestName(
|
|
PUNICODE_STRING DnsForestName OPTIONAL,
|
|
PBOOLEAN DnsForestNameChanged OPTIONAL
|
|
);
|
|
|
|
VOID
|
|
NlCaptureDnsForestName(
|
|
OUT WCHAR DnsForestName[NL_MAX_DNS_LENGTH+1]
|
|
);
|
|
|
|
BOOL
|
|
NlDnsSetAvoidRegisterNameParam(
|
|
IN LPTSTR_ARRAY NewDnsAvoidRegisterRecords
|
|
);
|
|
|
|
BOOL
|
|
NetpEqualTStrArrays(
|
|
LPTSTR_ARRAY TStrArray1 OPTIONAL,
|
|
LPTSTR_ARRAY TStrArray2 OPTIONAL
|
|
);
|
|
|