Leaked source code of windows server 2003
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.
 
 
 
 
 
 

229 lines
4.6 KiB

/******************************************************************
CIPRouteTable.H -- WMI provider class definition
Generated by Microsoft WBEM Code Generation Engine
Description:
*******************************************************************/
// Property set identification
//============================
#ifndef _CIPRouteTable_H_
#define _CIPRouteTable_H_
#define PROVIDER_NAME_CIPROUTETABLE L"Win32_IP4RouteTable"
class CIPRouteTable : public Provider , public QueryPreprocessor
{
private:
// All data members for CIPRouteTable should be included here.
CInstance *m_ClassCInst;
CRITICAL_SECTION m_CS;
NTSTATUS DeleteInformation_IpRouteInfo (
HANDLE a_StackHandle ,
HANDLE a_CompleteEventHandle ,
IPRouteEntry &a_RouteEntry
) ;
NTSTATUS SetInformation_IpRouteInfo (
HANDLE a_StackHandle ,
HANDLE a_CompleteEventHandle ,
IPRouteEntry &a_RouteEntry
) ;
HRESULT CheckParameters (
const CInstance &a_Instance ,
IPRouteEntry &a_RouteEntry
) ;
HRESULT QueryInformation_GetRouteEntry (
const ProvIpAddressType &a_DestinationIpAddress ,
const ProvIpAddressType &a_NextHopIpAddress ,
IPRouteEntry &a_RouteEntry
) ;
NTSTATUS QueryInformation_IpRouteInfo (
HANDLE a_StackHandle ,
HANDLE a_CompleteEventHandle ,
ulong &a_RouteTableSize ,
IPRouteEntry *&a_InformationBlock
) ;
HRESULT QueryInformation_IpSnmpInfo (
HANDLE a_StackHandle ,
HANDLE a_CompleteEventHandle ,
IPSNMPInfo &a_Information
) ;
NTSTATUS OpenQuerySource (
HANDLE &a_StackHandle ,
HANDLE &a_CompleteEventHandle
) ;
NTSTATUS OpenSetSource (
HANDLE &a_StackHandle ,
HANDLE &a_CompleteEventHandle
) ;
void SetInheritedProperties (
LPCWSTR a_dest ,
LPCWSTR a_gateway ,
LPCWSTR a_mask ,
CInstance &a_Instance
) ;
private:
QueryPreprocessor :: QuadState Compare (
wchar_t *a_Operand1 ,
wchar_t *a_Operand2 ,
DWORD a_Operand1Func ,
DWORD a_Operand2Func ,
WmiTreeNode &a_OperatorType
) ;
QueryPreprocessor :: QuadState Compare (
LONG a_Operand1 ,
LONG a_Operand2 ,
DWORD a_Operand1Func ,
DWORD a_Operand2Func ,
WmiTreeNode &a_OperatorType
) ;
QueryPreprocessor :: QuadState CompareString (
IWbemClassObject *a_ClassObject ,
BSTR a_PropertyName ,
WmiTreeNode *a_Operator ,
WmiTreeNode *a_Operand
) ;
QueryPreprocessor :: QuadState CompareInteger (
IWbemClassObject *a_ClassObject ,
BSTR a_PropertyName ,
WmiTreeNode *a_Operator ,
WmiTreeNode *a_Operand
) ;
protected:
// Reading Functions
//============================
HRESULT EnumerateInstances (
MethodContext *pMethodContext,
long lFlags = 0L
) ;
HRESULT GetObject (
CInstance *pInstance,
long lFlags = 0L
) ;
HRESULT ExecQuery (
MethodContext *pMethodContext,
CFrameworkQuery& Query,
long lFlags = 0L
) ;
HRESULT RangeQuery (
MethodContext *pMethodContext,
PartitionSet &a_PartitionSet ,
long lFlags = 0L
) ;
// Writing Functions
//============================
HRESULT PutInstance (
const CInstance& Instance,
long lFlags = 0L
) ;
HRESULT DeleteInstance (
const CInstance& Instance,
long lFlags = 0L
) ;
// Method Function
HRESULT ExecMethod (
const CInstance& Instance,
const BSTR bstrMethodName,
CInstance *pInParams,
CInstance *pOutParams,
long lFlags = 0L
) ;
WmiTreeNode *AllocTypeNode (
void *a_Context ,
BSTR a_PropertyName ,
VARIANT &a_Variant ,
WmiValueNode :: WmiValueFunction a_PropertyFunction ,
WmiValueNode :: WmiValueFunction a_ConstantFunction ,
WmiTreeNode *a_Parent
) ;
QuadState InvariantEvaluate (
void *a_Context ,
WmiTreeNode *a_Operator ,
WmiTreeNode *a_Operand
) ;
WmiRangeNode *AllocInfiniteRangeNode (
void *a_Context ,
BSTR a_PropertyName
) ;
HRESULT GetClassObject ( CInstance *&a_ClassObject, MethodContext *pContext ) ;
virtual DWORD GetPriority ( BSTR a_PropertyName ) ;
// TO DO: Declare any additional functions and accessor
// functions for private data used by this class
//===========================================================
public:
// Constructor/destructor
//=======================
CIPRouteTable (
LPCWSTR lpwszClassName,
LPCWSTR lpwszNameSpace
) ;
virtual ~CIPRouteTable () ;
} ;
#endif