Source code of Windows XP (NT5)
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
 

140 lines
3.7 KiB

#pragma namespace("\\root")
instance of __NAMESPACE
{
Name = "MicrosoftActiveDirectory";
};
#pragma namespace("MicrosoftActiveDirectory")
// The docs say to declare it as:
//#pragma namespace("\\\\.\\root\\MicrosoftActiveDirectory")
#pragma classflags(64)
#pragma autorecover
/////////////////////////////////////////////////////////////////////
// Declare an instance of the __Win32Provider
Instance of __Win32Provider as $P
{
Name = "TrustPrv" ;
ClsId = "{8065652F-4C29-4908-AAE5-201C891904C5}" ;
ImpersonationLevel = 1;
PerUserInitialization = TRUE;
HostingModel = "NetworkServiceHost"; // comment this out to compile on Win2k
};
instance of __InstanceProviderRegistration
{
Provider = $P;
SupportsPut = FALSE;
SupportsGet = TRUE;
SupportsDelete = FALSE;
SupportsEnumeration = TRUE;
};
/////////////////////////////////////////////////////////////////////
//
// Declare a class whose dynamic instances are provided by the
// TrustPrv provider.
[
dynamic,
provider("TrustPrv"),
description("Instances of this class provide information about the domains that"
" have trust with the local domain.")
]
class Microsoft_DomainTrustStatus
{
[key]
String TrustedDomain;
[Description ("Pre-Windows 2000 domain name.")]
String FlatName;
[Description ("Security Identifier for the domain.")]
String SID;
[Description ("Direction of trust: 1 is inbound, 2 is outbound, "
"3 is bi-directional.")]
uint32 TrustDirection;
[Description ("Type of trust: 1 is downlevel, 2 is uplevel, 3 is "
"non-Windows Kerberos Realm, 4 is DCE.")]
uint32 TrustType;
[Description ("Attributes can be a combination of: 1 is non-"
"transitive, 2 is uplevel clients only, 40000 is "
"tree parent and 80000 is tree root.")]
uint32 TrustAttributes;
[Description ("Name of trusted domain's domain controller.")]
String TrustedDCName;
[Description ("Error code of trust failure. Zero means no failure.")]
uint32 TrustStatus;
[Description ("String description of trust status.")]
String TrustStatusString;
Boolean TrustIsOk = FALSE;
};
[
singleton,
description("The properties of this class parameterize the operation of"
" the trust monitor.")
]
class Microsoft_TrustProvider
{
[Description ("Integer in minutes: if current request for trust enumeration"
" within this window, use last listing.")]
uint32 TrustListLifetime;
[Description ("Integer in minutes: if current request for status within this"
" window, use last results.")]
uint32 TrustStatusLifetime;
[Description ("0 don't verify, just enum; 1 do an SC_QUERY; 2 do a PW check"
" (if available); 3 do an SC_RESET.")]
uint32 TrustCheckLevel;
[Description ("If true, return trusting as well as trusted domains (if different)")]
Boolean ReturnAll;
};
instance of Microsoft_TrustProvider
{
TrustListLifetime = 20;
TrustStatusLifetime = 3;
TrustCheckLevel = 2;
ReturnAll = TRUE;
};
[
singleton,
dynamic,
provider("TrustPrv"),
description("This class provides information about the domain on which this"
" instance of the trust monitor is running.")
]
class Microsoft_LocalDomainInfo
{
[description("DNS name of local domain.")]
String DNSname;
[description("SAM name of local domain.")]
String FlatName;
[description("Security ID of local domain.")]
String SID;
[description("Name of enterprise tree root.")]
String TreeName;
[description("Name of the DC on whom TrustMon is running.")]
String DCname;
};