windows-nt/Source/XPSP1/NT/net/mmc/dialinusr/sdowrap.h
2020-09-26 16:20:57 +08:00

110 lines
4.1 KiB
C++

//+-------------------------------------------------------------------------
//
// Microsoft Windows
//
// Copyright (C) Microsoft Corporation, 1998 - 2000
//
// File: sdowrap.h
//
//--------------------------------------------------------------------------
#ifndef _RAS_SDO_WRAPPER_H_
#define _RAS_SDO_WRAPPER_H_
#pragma warning( disable : 4786 )
class CSdoWrapper
{
public:
CSdoWrapper(){};
~CSdoWrapper();
virtual HRESULT Init(ULONG collectionId, ISdo* pISdo, ISdoDictionaryOld* pIDic);
virtual HRESULT PutProperty(ULONG id, VARIANT* pVar);
virtual HRESULT GetProperty(ULONG id, VARIANT* pVar);
virtual HRESULT RemoveProperty(ULONG id);
virtual HRESULT Commit(BOOL bCommit = TRUE);
operator ISdo*() { return (ISdo*)m_spISdo;};
operator ISdoCollection*() { return (ISdoCollection*)m_spISdoCollection;};
operator ISdoDictionaryOld*() { return (ISdoDictionaryOld*)m_spIDictionary;};
protected:
// the two interfaces for the object
CComPtr<ISdo> m_spISdo;
CComPtr<ISdoCollection> m_spISdoCollection;
// dictioanry object
CComPtr<ISdoDictionaryOld> m_spIDictionary;
CMap<ULONG, ULONG, ISdo*, ISdo*> m_mapProperties;
};
class CUserSdoWrapper
{
public:
CUserSdoWrapper(){};
~CUserSdoWrapper()
{
// to test if the AV is here, so do it explicitly
m_spISdo.Release();
};
virtual HRESULT Init(ISdo* pISdo)
{
ASSERT(pISdo);
m_spISdo = pISdo;
return S_OK;
};
virtual HRESULT PutProperty(ULONG id, VARIANT* pVar);
virtual HRESULT GetProperty(ULONG id, VARIANT* pVar);
virtual HRESULT RemoveProperty(ULONG id);
virtual HRESULT Commit(BOOL bCommit = TRUE);
operator ISdo*() { return (ISdo*)m_spISdo;};
protected:
// the two interfaces for the object
CComPtr<ISdo> m_spISdo;
};
#define PROPERTY_USER_IAS_ATTRIBUTE_ALLOW_DIALIN PROPERTY_USER_ALLOW_DIALIN
#define PROPERTY_USER_msRADIUSFramedIPAddress PROPERTY_USER_RADIUS_FRAMED_IP_ADDRESS
#define PROPERTY_USER_msSavedRADIUSFramedIPAddress PROPERTY_USER_SAVED_RADIUS_FRAMED_IP_ADDRESS
#define PROPERTY_USER_msRADIUSCallbackNumber PROPERTY_USER_RADIUS_CALLBACK_NUMBER
#define PROPERTY_USER_msSavedRADIUSCallbackNumber PROPERTY_USER_SAVED_RADIUS_CALLBACK_NUMBER
#define PROPERTY_USER_msNPCallingStationID PROPERTY_USER_CALLING_STATION_ID
#define PROPERTY_USER_msSavedNPCallingStationID PROPERTY_USER_SAVED_CALLING_STATION_ID
#define PROPERTY_USER_msRADIUSFramedRoute PROPERTY_USER_RADIUS_FRAMED_ROUTE
#define PROPERTY_USER_msSavedRADIUSFramedRoute PROPERTY_USER_SAVED_RADIUS_FRAMED_ROUTE
#define PROPERTY_USER_RADIUS_ATTRIBUTE_SERVICE_TYPE PROPERTY_USER_SERVICE_TYPE
// profile
// Constraints Dialog
#define PROPERTY_PROFILE_msNPTimeOfDay IAS_ATTRIBUTE_NP_TIME_OF_DAY
#define PROPERTY_PROFILE_msNPCalledStationId IAS_ATTRIBUTE_NP_CALLED_STATION_ID
#define PROPERTY_PROFILE_msNPAllowedPortTypes IAS_ATTRIBUTE_NP_ALLOWED_PORT_TYPES
#define PROPERTY_PROFILE_msRADIUSIdleTimeout RADIUS_ATTRIBUTE_IDLE_TIMEOUT
#define PROPERTY_PROFILE_msRADIUSSessionTimeout RADIUS_ATTRIBUTE_SESSION_TIMEOUT
// Networking Dialog
#define PROPERTY_PROFILE_msRADIUSFramedIPAddress RADIUS_ATTRIBUTE_FRAMED_IP_ADDRESS
#define PROPERTY_PROFILE_msRASFilter MS_ATTRIBUTE_FILTER
// Multilink Dialog
#define PROPERTY_PROFILE_msRADIUSPortLimit RADIUS_ATTRIBUTE_PORT_LIMIT
#define PROPERTY_PROFILE_msRASBapLinednLimit RAS_ATTRIBUTE_BAP_LINE_DOWN_LIMIT
#define PROPERTY_PROFILE_msRASBapLinednTime RAS_ATTRIBUTE_BAP_LINE_DOWN_TIME
#define PROPERTY_PROFILE_msRASBapRequired RAS_ATTRIBUTE_BAP_REQUIRED
// Authentication Dialog
#define PROPERTY_PROFILE_msNPAuthenticationType IAS_ATTRIBUTE_NP_AUTHENTICATION_TYPE
#define PROPERTY_PROFILE_msNPAllowedEapType IAS_ATTRIBUTE_NP_ALLOWED_EAP_TYPE
// Encryption Dialog
#define PROPERTY_PROFILE_msRASAllowEncryption RAS_ATTRIBUTE_ENCRYPTION_POLICY
#define PROPERTY_PROFILE_msRASEncryptionType RAS_ATTRIBUTE_ENCRYPTION_TYPE
#endif // _RAS_SDO_WRAPPER_H_