mirror of https://github.com/UMSKT/xpmgr.git
115 lines
2.9 KiB
Plaintext
115 lines
2.9 KiB
Plaintext
////////////////////////////////////////////////////////////
|
|
//
|
|
// Copyright (c) Microsoft Corporation.
|
|
//
|
|
// SYNOPSIS
|
|
//
|
|
// IDL source for management of the NAP Server.
|
|
//
|
|
////////////////////////////////////////////////////////////
|
|
|
|
#ifndef NAPSERVERMANAGEMENT_IDL
|
|
#define NAPSERVERMANAGEMENT_IDL
|
|
|
|
import "NapTypes.idl";
|
|
import "unknwn.idl";
|
|
|
|
|
|
// Management clients (eg. WMI providers, command-line tools,
|
|
// etc.) use this interface to query the status of the
|
|
// NAP server system. The APIs provide only static
|
|
// information about the Nap Server and its components
|
|
// on the system.
|
|
//
|
|
[object,
|
|
uuid(599F9021-5643-4965-9949-E88975EFFF0E),
|
|
pointer_default(unique)]
|
|
interface INapServerInfo : IUnknown
|
|
{
|
|
// Used for reporting information about the NAP server
|
|
// Strings will be retrieved in the caller's locale-id.
|
|
//
|
|
HRESULT
|
|
GetNapServerInfo(
|
|
[out] CountedString** serverName,
|
|
[out] CountedString** serverDescription,
|
|
[out] CountedString** protocolVersion
|
|
) const;
|
|
|
|
// Used to query the list of SHVs
|
|
// The isBound flag is always TRUE - and can be
|
|
// ignored.
|
|
//
|
|
HRESULT
|
|
GetRegisteredSystemHealthValidators(
|
|
[out] SystemHealthEntityCount* count,
|
|
[out, size_is(, *count)]
|
|
NapComponentRegistrationInfo** validators,
|
|
[out, size_is(, *count)]
|
|
CLSID** validatorClsids
|
|
) const;
|
|
|
|
// Used to query the failure category mappings for a
|
|
// particular SHV.
|
|
//
|
|
HRESULT
|
|
GetFailureCategoryMappings(
|
|
[in] SystemHealthEntityId id,
|
|
[out] FailureCategoryMapping* mapping
|
|
) const;
|
|
};
|
|
|
|
|
|
[object,
|
|
uuid(9DE543E7-0F23-47e0-A8BC-971A894F86D4),
|
|
pointer_default(unique)]
|
|
interface INapServerManagement : IUnknown
|
|
{
|
|
// Register an SHV.
|
|
//
|
|
// Parameters:-
|
|
// validatorClsid : CLSID of the COM object that
|
|
// implements the INapSystemHealthValidator interface.
|
|
//
|
|
// Error codes:-
|
|
// NAP_E_CONFLICTING_ID: SHV id is already registered.
|
|
//
|
|
HRESULT
|
|
RegisterSystemHealthValidator(
|
|
[in] const NapComponentRegistrationInfo* validator,
|
|
[in] const CLSID* validatorClsid
|
|
);
|
|
|
|
|
|
// Used to Unregister an SHV with the NAP server. If
|
|
// there are any asynchronous calls pending on the SHV,
|
|
// they complete at a later time and are discarded.
|
|
//
|
|
HRESULT
|
|
UnregisterSystemHealthValidator(
|
|
[in] SystemHealthEntityId id
|
|
);
|
|
|
|
|
|
// Set SHV's failure category mapping.
|
|
//
|
|
HRESULT
|
|
SetFailureCategoryMappings(
|
|
[in] SystemHealthEntityId id,
|
|
[in] const FailureCategoryMapping mapping
|
|
);
|
|
};
|
|
|
|
|
|
cpp_quote("// Declarations of CLSIDs of objects provided ")
|
|
cpp_quote("// by the system. Link to uuid.lib to get them ")
|
|
cpp_quote("// defined. ")
|
|
cpp_quote("EXTERN_C const CLSID ")
|
|
cpp_quote(" CLSID_NapServerInfo;")
|
|
cpp_quote("EXTERN_C const CLSID ")
|
|
cpp_quote(" CLSID_NapServerManagement;")
|
|
|
|
|
|
#endif // NAPSERVERMANAGEMENT_IDL
|
|
|