1095 lines
35 KiB
Text
1095 lines
35 KiB
Text
/////////////////////////////////////////////////////////////////////////////
|
|
// Copyright (c) Microsoft Corporation. All rights reserved.
|
|
//
|
|
// sdoias.idl : IDL source for IAS Server Data Object
|
|
//
|
|
// History:
|
|
// <long time ago> Created
|
|
// <some time ago> Changed many times
|
|
// 04/2007 Added IAS_ATTRIBUTE_USER_TOKEN_SID and IAS_ATTRIBUTE_MACHINE_TOKEN_SID
|
|
//
|
|
//////////////////////////////////////////////////////////////////////////////
|
|
#ifndef __SDOIAS_IDL__
|
|
#define __SDOIAS_IDL__
|
|
|
|
import "oaidl.idl";
|
|
import "ocidl.idl";
|
|
|
|
//////////////////////////////////////////////////////////////////////////////
|
|
// Type Library
|
|
//////////////////////////////////////////////////////////////////////////////
|
|
[
|
|
uuid(81DDF732-4AA8-4a35-BDFF-8B42EFE7C624),
|
|
version(1.0),
|
|
helpstring("IAS SDO 1.0 Type Library")
|
|
]
|
|
library SDOIASLib
|
|
{
|
|
importlib("stdole2.tlb");
|
|
|
|
//////////////////////////////////////////////////////////////////////////
|
|
//
|
|
// Name: ATTRIBUTEID
|
|
//
|
|
// What: IAS Dictionary attribute IDs
|
|
//
|
|
// Purpose: Defines the set of IDs for IAS dictionary attributes
|
|
//
|
|
//////////////////////////////////////////////////////////////////////////
|
|
typedef [public] enum _ATTRIBUTEID
|
|
{
|
|
ATTRIBUTE_UNDEFINED=0,
|
|
ATTRIBUTE_MIN_VALUE=1,
|
|
RADIUS_ATTRIBUTE_USER_NAME = ATTRIBUTE_MIN_VALUE,
|
|
RADIUS_ATTRIBUTE_USER_PASSWORD,
|
|
RADIUS_ATTRIBUTE_CHAP_PASSWORD,
|
|
RADIUS_ATTRIBUTE_NAS_IP_ADDRESS,
|
|
RADIUS_ATTRIBUTE_NAS_PORT,
|
|
RADIUS_ATTRIBUTE_SERVICE_TYPE,
|
|
RADIUS_ATTRIBUTE_FRAMED_PROTOCOL,
|
|
RADIUS_ATTRIBUTE_FRAMED_IP_ADDRESS,
|
|
RADIUS_ATTRIBUTE_FRAMED_IP_NETMASK,
|
|
RADIUS_ATTRIBUTE_FRAMED_ROUTING = 10,
|
|
RADIUS_ATTRIBUTE_FILTER_ID,
|
|
RADIUS_ATTRIBUTE_FRAMED_MTU,
|
|
RADIUS_ATTRIBUTE_FRAMED_COMPRESSION,
|
|
RADIUS_ATTRIBUTE_LOGIN_IP_HOST,
|
|
RADIUS_ATTRIBUTE_LOGIN_SERVICE,
|
|
RADIUS_ATTRIBUTE_LOGIN_TCP_PORT,
|
|
RADIUS_ATTRIBUTE_UNASSIGNED1,
|
|
RADIUS_ATTRIBUTE_REPLY_MESSAGE,
|
|
RADIUS_ATTRIBUTE_CALLBACK_NUMBER,
|
|
RADIUS_ATTRIBUTE_CALLBACK_ID = 20,
|
|
RADIUS_ATTRIBUTE_UNASSIGNED2,
|
|
RADIUS_ATTRIBUTE_FRAMED_ROUTE,
|
|
RADIUS_ATTRIBUTE_FRAMED_IPX_NETWORK,
|
|
RADIUS_ATTRIBUTE_STATE,
|
|
RADIUS_ATTRIBUTE_CLASS,
|
|
RADIUS_ATTRIBUTE_VENDOR_SPECIFIC,
|
|
RADIUS_ATTRIBUTE_SESSION_TIMEOUT,
|
|
RADIUS_ATTRIBUTE_IDLE_TIMEOUT,
|
|
RADIUS_ATTRIBUTE_TERMINATION_ACTION,
|
|
RADIUS_ATTRIBUTE_CALLED_STATION_ID = 30,
|
|
RADIUS_ATTRIBUTE_CALLING_STATION_ID,
|
|
RADIUS_ATTRIBUTE_NAS_IDENTIFIER,
|
|
RADIUS_ATTRIBUTE_PROXY_STATE,
|
|
RADIUS_ATTRIBUTE_LOGIN_LAT_SERVICE,
|
|
RADIUS_ATTRIBUTE_LOGIN_LAT_NODE,
|
|
RADIUS_ATTRIBUTE_LOGIN_LAT_GROUP,
|
|
RADIUS_ATTRIBUTE_FRAMED_APPLETALK_LINK,
|
|
RADIUS_ATTRIBUTE_FRAMED_APPLETALK_NET,
|
|
RADIUS_ATTRIBUTE_FRAMED_APPLETALK_ZONE,
|
|
RADIUS_ATTRIBUTE_ACCT_STATUS_TYPE = 40,
|
|
RADIUS_ATTRIBUTE_ACCT_DELAY_TIME,
|
|
RADIUS_ATTRIBUTE_ACCT_INPUT_OCTETS,
|
|
RADIUS_ATTRIBUTE_ACCT_OUTPUT_OCTETS,
|
|
RADIUS_ATTRIBUTE_ACCT_SESSION_ID,
|
|
RADIUS_ATTRIBUTE_ACCT_AUTHENTIC,
|
|
RADIUS_ATTRIBUTE_ACCT_SESSION_TIME,
|
|
RADIUS_ATTRIBUTE_ACCT_INPUT_PACKETS,
|
|
RADIUS_ATTRIBUTE_ACCT_OUTPUT_PACKETS,
|
|
RADIUS_ATTRIBUTE_ACCT_TERMINATE_CAUSE,
|
|
RADIUS_ATTRIBUTE_ACCT_MULTI_SSN_ID = 50,
|
|
RADIUS_ATTRIBUTE_ACCT_LINK_COUNT = 51,
|
|
RADIUS_ATTRIBUTE_CHAP_CHALLENGE = 60,
|
|
RADIUS_ATTRIBUTE_NAS_PORT_TYPE,
|
|
RADIUS_ATTRIBUTE_PORT_LIMIT,
|
|
RADIUS_ATTRIBUTE_LOGIN_LAT_PORT,
|
|
RADIUS_ATTRIBUTE_TUNNEL_TYPE,
|
|
RADIUS_ATTRIBUTE_TUNNEL_MEDIUM_TYPE,
|
|
RADIUS_ATTRIBUTE_TUNNEL_CLIENT_ENDPT,
|
|
RADIUS_ATTRIBUTE_TUNNEL_SERVER_ENDPT,
|
|
RADIUS_ATTRIBUTE_ACCT_TUNNEL_CONN,
|
|
RADIUS_ATTRIBUTE_TUNNEL_PASSWORD,
|
|
RADIUS_ATTRIBUTE_ARAP_PASSWORD = 70,
|
|
RADIUS_ATTRIBUTE_ARAP_FEATURES,
|
|
RADIUS_ATTRIBUTE_ARAP_ZONE_ACCESS,
|
|
RADIUS_ATTRIBUTE_ARAP_SECURITY,
|
|
RADIUS_ATTRIBUTE_ARAP_SECURITY_DATA,
|
|
RADIUS_ATTRIBUTE_PASSWORD_RETRY,
|
|
RADIUS_ATTRIBUTE_PROMPT = 76,
|
|
RADIUS_ATTRIBUTE_CONNECT_INFO,
|
|
RADIUS_ATTRIBUTE_CONFIGURATION_TOKEN,
|
|
RADIUS_ATTRIBUTE_EAP_MESSAGE,
|
|
RADIUS_ATTRIBUTE_SIGNATURE = 80,
|
|
RADIUS_ATTRIBUTE_TUNNEL_PVT_GROUP_ID,
|
|
RADIUS_ATTRIBUTE_TUNNEL_ASSIGNMENT_ID,
|
|
RADIUS_ATTRIBUTE_TUNNEL_PREFERENCE,
|
|
RADIUS_ATTRIBUTE_ARAP_CHALLENGE_RESPONSE,
|
|
RADIUS_ATTRIBUTE_ACCT_INTERIM_INTERVAL = 85,
|
|
RADIUS_ATTRIBUTE_NAS_IPv6_ADDRESS = 95,
|
|
RADIUS_ATTRIBUTE_FRAMED_INTERFACE_ID,
|
|
RADIUS_ATTRIBUTE_FRAMED_IPv6_PREFIX,
|
|
RADIUS_ATTRIBUTE_LOGIN_IPv6_HOST,
|
|
RADIUS_ATTRIBUTE_FRAMED_IPv6_ROUTE,
|
|
RADIUS_ATTRIBUTE_FRAMED_IPv6_POOL = 100,
|
|
// RADIUS_ATTRIBUTE_
|
|
// New RADIUS Attribute IDs Here...
|
|
|
|
IAS_ATTRIBUTE_SAVED_RADIUS_FRAMED_IP_ADDRESS = 0x1000,
|
|
IAS_ATTRIBUTE_SAVED_RADIUS_CALLBACK_NUMBER,
|
|
IAS_ATTRIBUTE_NP_CALLING_STATION_ID,
|
|
IAS_ATTRIBUTE_SAVED_NP_CALLING_STATION_ID,
|
|
IAS_ATTRIBUTE_SAVED_RADIUS_FRAMED_ROUTE,
|
|
IAS_ATTRIBUTE_IGNORE_USER_DIALIN_PROPERTIES,
|
|
IAS_ATTRIBUTE_NP_TIME_OF_DAY,
|
|
IAS_ATTRIBUTE_NP_CALLED_STATION_ID,
|
|
IAS_ATTRIBUTE_NP_ALLOWED_PORT_TYPES = 0x1008,
|
|
IAS_ATTRIBUTE_NP_AUTHENTICATION_TYPE,
|
|
IAS_ATTRIBUTE_NP_ALLOWED_EAP_TYPE,
|
|
IAS_ATTRIBUTE_SHARED_SECRET,
|
|
IAS_ATTRIBUTE_CLIENT_IP_ADDRESS,
|
|
IAS_ATTRIBUTE_CLIENT_PACKET_HEADER,
|
|
IAS_ATTRIBUTE_TOKEN_GROUPS,
|
|
IAS_ATTRIBUTE_ALLOW_DIALIN,
|
|
IAS_ATTRIBUTE_REQUEST_ID = 0x1010,
|
|
IAS_ATTRIBUTE_MANIPULATION_TARGET,
|
|
IAS_ATTRIBUTE_MANIPULATION_RULE,
|
|
IAS_ATTRIBUTE_ORIGINAL_USER_NAME,
|
|
IAS_ATTRIBUTE_CLIENT_VENDOR_TYPE,
|
|
IAS_ATTRIBUTE_CLIENT_UDP_PORT,
|
|
MS_ATTRIBUTE_CHAP_CHALLENGE,
|
|
MS_ATTRIBUTE_CHAP_RESPONSE,
|
|
MS_ATTRIBUTE_CHAP_DOMAIN = 0x1018,
|
|
MS_ATTRIBUTE_CHAP_ERROR,
|
|
MS_ATTRIBUTE_CHAP_CPW1 ,
|
|
MS_ATTRIBUTE_CHAP_CPW2,
|
|
MS_ATTRIBUTE_CHAP_LM_ENC_PW,
|
|
MS_ATTRIBUTE_CHAP_NT_ENC_PW,
|
|
MS_ATTRIBUTE_CHAP_MPPE_KEYS,
|
|
IAS_ATTRIBUTE_AUTHENTICATION_TYPE,
|
|
IAS_ATTRIBUTE_CLIENT_NAME = 0x1020,
|
|
IAS_ATTRIBUTE_NT4_ACCOUNT_NAME,
|
|
IAS_ATTRIBUTE_FULLY_QUALIFIED_USER_NAME,
|
|
IAS_ATTRIBUTE_NTGROUPS,
|
|
IAS_ATTRIBUTE_EAP_FRIENDLY_NAME,
|
|
IAS_ATTRIBUTE_AUTH_PROVIDER_TYPE,
|
|
MS_ATTRIBUTE_ACCT_AUTH_TYPE,
|
|
MS_ATTRIBUTE_ACCT_EAP_TYPE,
|
|
IAS_ATTRIBUTE_PACKET_TYPE = 0x1028,
|
|
IAS_ATTRIBUTE_AUTH_PROVIDER_NAME,
|
|
IAS_ATTRIBUTE_ACCT_PROVIDER_TYPE,
|
|
IAS_ATTRIBUTE_ACCT_PROVIDER_NAME,
|
|
MS_ATTRIBUTE_MPPE_SEND_KEY,
|
|
MS_ATTRIBUTE_MPPE_RECV_KEY,
|
|
IAS_ATTRIBUTE_REASON_CODE,
|
|
MS_ATTRIBUTE_FILTER,
|
|
MS_ATTRIBUTE_CHAP2_RESPONSE = 0x1030,
|
|
MS_ATTRIBUTE_CHAP2_SUCCESS,
|
|
MS_ATTRIBUTE_CHAP2_CPW,
|
|
MS_ATTRIBUTE_RAS_VENDOR,
|
|
MS_ATTRIBUTE_RAS_VERSION,
|
|
IAS_ATTRIBUTE_NP_NAME,
|
|
MS_ATTRIBUTE_PRIMARY_DNS_SERVER,
|
|
MS_ATTRIBUTE_SECONDARY_DNS_SERVER,
|
|
MS_ATTRIBUTE_PRIMARY_NBNS_SERVER = 0x1038,
|
|
MS_ATTRIBUTE_SECONDARY_NBNS_SERVER,
|
|
IAS_ATTRIBUTE_PROXY_POLICY_NAME,
|
|
IAS_ATTRIBUTE_PROVIDER_TYPE,
|
|
IAS_ATTRIBUTE_PROVIDER_NAME,
|
|
IAS_ATTRIBUTE_REMOTE_SERVER_ADDRESS,
|
|
IAS_ATTRIBUTE_GENERATE_CLASS_ATTRIBUTE,
|
|
MS_ATTRIBUTE_RAS_CLIENT_NAME,
|
|
MS_ATTRIBUTE_RAS_CLIENT_VERSION = 0x1040,
|
|
IAS_ATTRIBUTE_ALLOWED_CERTIFICATE_EKU,
|
|
IAS_ATTRIBUTE_EXTENSION_STATE,
|
|
IAS_ATTRIBUTE_GENERATE_SESSION_TIMEOUT,
|
|
MS_ATTRIBUTE_SESSION_TIMEOUT,
|
|
MS_ATTRIBUTE_QUARANTINE_IPFILTER,
|
|
MS_ATTRIBUTE_QUARANTINE_SESSION_TIMEOUT,
|
|
MS_ATTRIBUTE_USER_SECURITY_IDENTITY,
|
|
IAS_ATTRIBUTE_REMOTE_RADIUS_TO_WINDOWS_USER_MAPPING = 0x1048,
|
|
IAS_ATTRIBUTE_PASSPORT_USER_MAPPING_UPN_SUFFIX,
|
|
IAS_ATTRIBUTE_TUNNEL_TAG,
|
|
IAS_ATTRIBUTE_NP_PEAPUPFRONT_ENABLED,
|
|
IAS_ATTRIBUTE_CERTIFICATE_EKU=8097,
|
|
IAS_ATTRIBUTE_EAP_CONFIG,
|
|
MS_ATTRIBUTE_PEAP_EMBEDDED_EAP_TYPEID,
|
|
MS_ATTRIBUTE_PEAP_FAST_ROAMED_SESSION=8100,
|
|
IAS_ATTRIBUTE_EAP_TYPEID,
|
|
MS_ATTRIBUTE_EAP_TLV,
|
|
IAS_ATTRIBUTE_REJECT_REASON_CODE,
|
|
IAS_ATTRIBUTE_PROXY_EAP_CONFIG,
|
|
IAS_ATTRIBUTE_EAP_SESSION,
|
|
IAS_ATTRIBUTE_IS_REPLAY,
|
|
IAS_ATTRIBUTE_CLEAR_TEXT_PASSWORD,
|
|
MS_ATTRIBUTE_IDENTITY_TYPE,
|
|
MS_ATTRIBUTE_SERVICE_CLASS,
|
|
MS_ATTRIBUTE_QUARANTINE_USER_CLASS=8110,
|
|
MS_ATTRIBUTE_QUARANTINE_STATE,
|
|
IAS_ATTRIBUTE_OVERRIDE_RAP_AUTH,
|
|
IAS_ATTRIBUTE_PEAP_CHANNEL_UP,
|
|
IAS_ATTRIBUTE_NAME_MAPPED,
|
|
IAS_ATTRIBUTE_POLICY_ENFORCED,
|
|
IAS_ATTRIBUTE_MACHINE_NTGROUPS,
|
|
IAS_ATTRIBUTE_USER_NTGROUPS,
|
|
IAS_ATTRIBUTE_MACHINE_TOKEN_GROUPS,
|
|
IAS_ATTRIBUTE_USER_TOKEN_GROUPS,
|
|
MS_ATTRIBUTE_QUARANTINE_GRACE_TIME=8120,
|
|
IAS_ATTRIBUTE_QUARANTINE_URL,
|
|
IAS_ATTRIBUTE_QUARANTINE_FIXUP_SERVERS,
|
|
MS_ATTRIBUTE_NOT_QUARANTINE_CAPABLE,
|
|
IAS_ATTRIBUTE_QUARANTINE_SYSTEM_HEALTH_RESULT,
|
|
IAS_ATTRIBUTE_QUARANTINE_SYSTEM_HEALTH_VALIDATORS,
|
|
IAS_ATTRIBUTE_MACHINE_NAME,
|
|
IAS_ATTRIBUTE_NT4_MACHINE_NAME,
|
|
IAS_ATTRIBUTE_QUARANTINE_SESSION_HANDLE,
|
|
IAS_ATTRIBUTE_FULLY_QUALIFIED_MACHINE_NAME,
|
|
IAS_ATTRIBUTE_QUARANTINE_FIXUP_SERVERS_CONFIGURATION=8130,
|
|
IAS_ATTRIBUTE_CLIENT_QUARANTINE_COMPATIBLE,
|
|
MS_ATTRIBUTE_NETWORK_ACCESS_SERVER_TYPE,
|
|
IAS_ATTRIBUTE_QUARANTINE_SESSION_ID,
|
|
MS_ATTRIBUTE_AFW_QUARANTINE_ZONE,
|
|
MS_ATTRIBUTE_AFW_PROTECTION_LEVEL,
|
|
IAS_ATTRIBUTE_QUARANTINE_UPDATE_NON_COMPLIANT,
|
|
IAS_ATTRIBUTE_REQUEST_START_TIME,
|
|
MS_ATTRIBUTE_MACHINE_NAME,
|
|
IAS_ATTRIBUTE_CLIENT_IPv6_ADDRESS,
|
|
IAS_ATTRIBUTE_SAVED_RADIUS_FRAMED_INTERFACE_ID=8140,
|
|
IAS_ATTRIBUTE_SAVED_RADIUS_FRAMED_IPv6_PREFIX,
|
|
IAS_ATTRIBUTE_SAVED_RADIUS_FRAMED_IPv6_ROUTE,
|
|
MS_ATTRIBUTE_QUARANTINE_GRACE_TIME_CONFIGURATION,
|
|
MS_ATTRIBUTE_IPv6_FILTER = 8144,
|
|
MS_ATTRIBUTE_IPV4_REMEDIATION_SERVERS,
|
|
MS_ATTRIBUTE_IPV6_REMEDIATION_SERVERS,
|
|
IAS_ATTRIBUTE_PROXY_RETRY_COUNT,
|
|
IAS_ATTRIBUTE_MACHINE_INVENTORY,
|
|
IAS_ATTRIBUTE_ABSOLUTE_TIME,
|
|
MS_ATTRIBUTE_QUARANTINE_SOH=8150,
|
|
IAS_ATTRIBUTE_EAP_TYPES_CONFIGURED_IN_PROXYPOLICY,
|
|
MS_ATTRIBUTE_HCAP_LOCATION_GROUP_NAME,
|
|
MS_ATTRIBUTE_EXTENDED_QUARANTINE_STATE,
|
|
// BUGBUG: Remove before LH server RTM
|
|
IAS_ATTRIBUTE_SOH_CARRIER_EAPTLV,
|
|
MS_ATTRIBUTE_HCAP_USER_GROUPS=8155,
|
|
IAS_ATTRIBUTE_SAVED_MACHINE_HEALTHCHECK_ONLY,
|
|
IAS_ATTRIBUTE_POLICY_EVALUATED_SHV, // can have multiple instances of this attribute
|
|
MS_ATTRIBUTE_RAS_CORRELATION_ID,
|
|
MS_ATTRIBUTE_HCAP_USER_NAME,
|
|
IAS_ATTRIBUTE_NT4_HCAP_ACCOUNT_NAME=8160,
|
|
// SID for IAS_ATTRIBUTE_NT4_ACCOUNT_NAME (or IAS_ATTRIBUTE_NT4_HCAP_ACCOUNT_NAME)
|
|
// regardless of whether the later is a user account or a machine account
|
|
IAS_ATTRIBUTE_USER_TOKEN_SID,
|
|
// SID for IAS_ATTRIBUTE_NT4_MACHINE_NAME
|
|
IAS_ATTRIBUTE_MACHINE_TOKEN_SID,
|
|
IAS_ATTRIBUTE_MACHINE_VALIDATED,
|
|
MS_ATTRIBUTE_USER_IPv4_ADDRESS,
|
|
MS_ATTRIBUTE_USER_IPv6_ADDRESS,
|
|
MS_ATTRIBUTE_TSG_DEVICE_REDIRECTION,
|
|
IAS_ATTRIBUTE_ACCEPT_REASON_CODE,
|
|
// IAS_ATTRIBUTE_
|
|
// New IAS Attributes Here
|
|
|
|
RAS_ATTRIBUTE_ENCRYPTION_TYPE = (0xFFFFFFFF-89),
|
|
RAS_ATTRIBUTE_ENCRYPTION_POLICY,
|
|
RAS_ATTRIBUTE_BAP_REQUIRED,
|
|
RAS_ATTRIBUTE_BAP_LINE_DOWN_TIME,
|
|
RAS_ATTRIBUTE_BAP_LINE_DOWN_LIMIT
|
|
// RAS_ATTRIBUTE_
|
|
// New RAS Attributes Here
|
|
|
|
} ATTRIBUTEID;
|
|
|
|
|
|
//////////////////////////////////////////////////////////////////////////
|
|
//
|
|
// Name: NEW_LOG_FILE_FREQUENCY
|
|
//
|
|
// What: IAS Accounting Request Handler Log Frequency Values
|
|
//
|
|
// Purpose: Defines the log frequency settings for the IAS accounting
|
|
// request handler.
|
|
//
|
|
//////////////////////////////////////////////////////////////////////////
|
|
typedef [public] enum _NEW_LOG_FILE_FREQUENCY
|
|
{
|
|
IAS_LOGGING_UNLIMITED_SIZE=0,
|
|
IAS_LOGGING_DAILY,
|
|
IAS_LOGGING_WEEKLY,
|
|
IAS_LOGGING_MONTHLY,
|
|
IAS_LOGGING_WHEN_FILE_SIZE_REACHES
|
|
|
|
} NEW_LOG_FILE_FREQUENCY;
|
|
|
|
|
|
//////////////////////////////////////////////////////////////////////////
|
|
//
|
|
// Name: AUTHENTICATION_TYPE
|
|
//
|
|
// What: IAS Authentication Type Values
|
|
//
|
|
//////////////////////////////////////////////////////////////////////////
|
|
typedef [public] enum _AUTHENTICATION_TYPE
|
|
{
|
|
IAS_AUTH_INVALID,
|
|
IAS_AUTH_PAP,
|
|
IAS_AUTH_MD5CHAP,
|
|
IAS_AUTH_MSCHAP,
|
|
IAS_AUTH_MSCHAP2,
|
|
IAS_AUTH_EAP,
|
|
IAS_AUTH_ARAP,
|
|
IAS_AUTH_NONE,
|
|
IAS_AUTH_CUSTOM,
|
|
IAS_AUTH_MSCHAP_CPW,
|
|
IAS_AUTH_MSCHAP2_CPW,
|
|
IAS_AUTH_PEAP
|
|
|
|
} AUTHENTICATION_TYPE;
|
|
|
|
|
|
//////////////////////////////////////////////////////////////////////////
|
|
//
|
|
// Name: IDENTITY_TYPE
|
|
//
|
|
// What: IAS Identity type Values
|
|
//
|
|
// Purpose: Defines the different possible values for MS_ATTRIBUTE_IDENTITY_TYPE
|
|
//
|
|
//////////////////////////////////////////////////////////////////////////
|
|
typedef [public] enum _IDENTITY_TYPE
|
|
{
|
|
IAS_IDENTITY_NO_DEFAULT = 0x01
|
|
|
|
} IDENTITY_TYPE;
|
|
|
|
//////////////////////////////////////////////////////////////////////////
|
|
//
|
|
// Name: ATTRIBUTESYNTAX
|
|
//
|
|
// What: Attribute SDO syntax types
|
|
//
|
|
// Purpose: Defines the set Attribute SDO syntaxes (attribute data types)
|
|
//
|
|
//////////////////////////////////////////////////////////////////////////
|
|
typedef [public] enum _ATTRIBUTESYNTAX
|
|
{
|
|
IAS_SYNTAX_BOOLEAN = 1,
|
|
IAS_SYNTAX_INTEGER,
|
|
IAS_SYNTAX_ENUMERATOR,
|
|
IAS_SYNTAX_INETADDR,
|
|
IAS_SYNTAX_STRING,
|
|
IAS_SYNTAX_OCTETSTRING,
|
|
IAS_SYNTAX_UTCTIME,
|
|
IAS_SYNTAX_PROVIDERSPECIFIC,
|
|
IAS_SYNTAX_UNSIGNEDINTEGER,
|
|
IAS_SYNTAX_INETADDR6
|
|
|
|
} ATTRIBUTESYNTAX;
|
|
|
|
//////////////////////////////////////////////////////////////////////////
|
|
//
|
|
// Name: Dictionary Attriubutes Restrictions
|
|
//
|
|
// What: IAS Dictionary Attribute IDs
|
|
//
|
|
// Purpose: Defines the restrictions for the dictionary attributes
|
|
//
|
|
//////////////////////////////////////////////////////////////////////////
|
|
typedef [public] enum _ATTRIBUTERESTRICTIONS
|
|
{
|
|
MULTIVALUED = 0x01,
|
|
ALLOWEDINPROFILE = 0x02,
|
|
ALLOWEDINCONDITION = 0x04,
|
|
ALLOWEDINPROXYPROFILE = 0x08,
|
|
ALLOWEDINPROXYCONDITION = 0x10,
|
|
ALLOWEDINVPNDIALUP = 0x20,
|
|
ALLOWEDIN8021X = 0x40
|
|
} ATTRIBUTERESTRICTIONS;
|
|
|
|
//////////////////////////////////////////////////////////////////////////
|
|
//
|
|
// Name: Dictionary Attriubutes Use
|
|
//
|
|
// What: IAS Dictionary Attribute Use cases
|
|
//
|
|
// Purpose: Defines the use cases for the dictionary attributes
|
|
//
|
|
//////////////////////////////////////////////////////////////////////////
|
|
typedef [public] enum _ATTRIBUTEFILTER
|
|
{
|
|
ATTRIBUTE_FILTER_NONE = 0x0,
|
|
ATTRIBUTE_FILTER_VPN_DIALUP = 0x1,
|
|
ATTRIBUTE_FILTER_IEEE_802_1x = 0x2
|
|
} ATTRIBUTEFILTER;
|
|
|
|
|
|
//////////////////////////////////////////////////////////////////////////
|
|
//
|
|
// Name: Dictionary Attributes Info
|
|
//
|
|
// What: IAS Dictionary Attribute Info IDS
|
|
//
|
|
// Purpose: Defines the attribute info for the dictionary attributes
|
|
//
|
|
//////////////////////////////////////////////////////////////////////////
|
|
typedef [public] enum _ATTRIBUTEINFO
|
|
{
|
|
NAME = 1,
|
|
SYNTAX,
|
|
RESTRICTIONS,
|
|
DESCRIPTION,
|
|
VENDORID,
|
|
LDAPNAME,
|
|
VENDORTYPE
|
|
} ATTRIBUTEINFO;
|
|
|
|
|
|
//////////////////////////////////////////////////////////////////////////
|
|
//
|
|
// Name: SDO Property Aliases
|
|
//
|
|
// What: SDO Property Enumerations
|
|
//
|
|
// Purpose: Property IDs used in conjunction with the ISdo and
|
|
// ISdoDictionary interfaces.
|
|
//
|
|
//////////////////////////////////////////////////////////////////////////
|
|
|
|
//////////////////////////////////////////////////////////////////////////
|
|
// Common Properties
|
|
//////////////////////////////////////////////////////////////////////////
|
|
|
|
typedef [public] enum _IASCOMMONPROPERTIES
|
|
{
|
|
PROPERTY_SDO_RESERVED = 0, //
|
|
PROPERTY_SDO_CLASS, // SDO class name
|
|
PROPERTY_SDO_NAME, // SDO name
|
|
PROPERTY_SDO_DESCRIPTION, // SDO description
|
|
PROPERTY_SDO_ID, // SDO instance id
|
|
PROPERTY_SDO_DATASTORE_NAME, // SDO name in data store
|
|
// New Properties Here...
|
|
|
|
PROPERTY_SDO_START= 0x00000400 // 1024 stock object properties
|
|
|
|
} IASCOMMONPROPERTIES;
|
|
|
|
|
|
/////////////////////////////////////////////////////////////////////////
|
|
// User Properties
|
|
/////////////////////////////////////////////////////////////////////////
|
|
|
|
typedef [public] enum _USERPROPERTIES
|
|
{
|
|
PROPERTY_USER_CALLING_STATION_ID = PROPERTY_SDO_START,
|
|
PROPERTY_USER_SAVED_CALLING_STATION_ID,
|
|
PROPERTY_USER_RADIUS_CALLBACK_NUMBER,
|
|
PROPERTY_USER_RADIUS_FRAMED_ROUTE,
|
|
PROPERTY_USER_RADIUS_FRAMED_IP_ADDRESS,
|
|
PROPERTY_USER_SAVED_RADIUS_CALLBACK_NUMBER,
|
|
PROPERTY_USER_SAVED_RADIUS_FRAMED_ROUTE,
|
|
PROPERTY_USER_SAVED_RADIUS_FRAMED_IP_ADDRESS,
|
|
PROPERTY_USER_ALLOW_DIALIN,
|
|
PROPERTY_USER_SERVICE_TYPE,
|
|
PROPERTY_USER_RADIUS_FRAMED_IPV6_ROUTE,
|
|
PROPERTY_USER_SAVED_RADIUS_FRAMED_IPV6_ROUTE,
|
|
PROPERTY_USER_RADIUS_FRAMED_INTERFACE_ID, // IPV6
|
|
PROPERTY_USER_SAVED_RADIUS_FRAMED_INTERFACE_ID, // IPV6
|
|
PROPERTY_USER_RADIUS_FRAMED_IPV6_PREFIX,
|
|
PROPERTY_USER_SAVED_RADIUS_FRAMED_IPV6_PREFIX
|
|
// New Properties Here...
|
|
|
|
} USERPROPERTIES;
|
|
|
|
|
|
/////////////////////////////////////////////////////////////////////////
|
|
// Dictionary Properties
|
|
/////////////////////////////////////////////////////////////////////////
|
|
|
|
/////////////////////////////////////////////////////////////////////////
|
|
typedef [public] enum _DICTIONARYPROPERTIES
|
|
{
|
|
PROPERTY_DICTIONARY_ATTRIBUTES_COLLECTION = PROPERTY_SDO_START,
|
|
PROPERTY_DICTIONARY_LOCATION
|
|
|
|
} DICTIONARYPROPERTIES;
|
|
|
|
/////////////////////////////////////////////////////////////////////////
|
|
typedef [public] enum _ATTRIBUTEPROPERTIES
|
|
{
|
|
PROPERTY_ATTRIBUTE_ID = PROPERTY_SDO_START,
|
|
PROPERTY_ATTRIBUTE_VENDOR_ID,
|
|
PROPERTY_ATTRIBUTE_VENDOR_TYPE_ID,
|
|
PROPERTY_ATTRIBUTE_IS_ENUMERABLE,
|
|
PROPERTY_ATTRIBUTE_ENUM_NAMES,
|
|
PROPERTY_ATTRIBUTE_ENUM_VALUES,
|
|
PROPERTY_ATTRIBUTE_SYNTAX,
|
|
PROPERTY_ATTRIBUTE_ALLOW_MULTIPLE,
|
|
PROPERTY_ATTRIBUTE_ALLOW_LOG_ORDINAL,
|
|
PROPERTY_ATTRIBUTE_ALLOW_IN_PROFILE,
|
|
PROPERTY_ATTRIBUTE_ALLOW_IN_CONDITION,
|
|
PROPERTY_ATTRIBUTE_DISPLAY_NAME,
|
|
PROPERTY_ATTRIBUTE_VALUE,
|
|
PROPERTY_ATTRIBUTE_ALLOW_IN_PROXY_PROFILE,
|
|
PROPERTY_ATTRIBUTE_ALLOW_IN_PROXY_CONDITION,
|
|
PROPERTY_ATTRIBUTE_ALLOW_IN_VPNDIALUP,
|
|
PROPERTY_ATTRIBUTE_ALLOW_IN_8021X,
|
|
PROPERTY_ATTRIBUTE_ENUM_FILTERS
|
|
|
|
// New Properties Here...
|
|
|
|
} ATTRIBUTEPROPERTIES;
|
|
|
|
|
|
/////////////////////////////////////////////////////////////////////////
|
|
// IAS Service Properties
|
|
/////////////////////////////////////////////////////////////////////////
|
|
|
|
/////////////////////////////////////////////////////////////////////////
|
|
typedef [public] enum _IASPROPERTIES
|
|
{
|
|
PROPERTY_IAS_RADIUSSERVERGROUPS_COLLECTION = PROPERTY_SDO_START,
|
|
PROPERTY_IAS_POLICIES_COLLECTION,
|
|
PROPERTY_IAS_PROFILES_COLLECTION,
|
|
PROPERTY_IAS_PROTOCOLS_COLLECTION,
|
|
PROPERTY_IAS_AUDITORS_COLLECTION,
|
|
PROPERTY_IAS_REQUESTHANDLERS_COLLECTION,
|
|
PROPERTY_IAS_PROXYPOLICIES_COLLECTION,
|
|
PROPERTY_IAS_PROXYPROFILES_COLLECTION,
|
|
PROPERTY_IAS_REMEDIATIONSERVERGROUPS_COLLECTION,
|
|
PROPERTY_IAS_SHVTEMPLATES_COLLECTION
|
|
// New Properties Here...
|
|
|
|
} IASPROPERTIES;
|
|
|
|
/////////////////////////////////////////////////////////////////////////
|
|
typedef [public] enum _CLIENTPROPERTIES
|
|
{
|
|
PROPERTY_CLIENT_REQUIRE_SIGNATURE = PROPERTY_SDO_START,
|
|
PROPERTY_CLIENT_UNUSED,
|
|
PROPERTY_CLIENT_SHARED_SECRET,
|
|
PROPERTY_CLIENT_NAS_MANUFACTURER,
|
|
PROPERTY_CLIENT_ADDRESS,
|
|
PROPERTY_CLIENT_QUARANTINE_COMPATIBLE,
|
|
PROPERTY_CLIENT_ENABLED,
|
|
// New Properties Here...
|
|
|
|
} CLIENTPROPERTIES;
|
|
|
|
/////////////////////////////////////////////////////////////////////////
|
|
typedef [public] enum _VENDORPROPERTIES
|
|
{
|
|
PROPERTY_NAS_VENDOR_ID = PROPERTY_SDO_START
|
|
// New Properties Here...
|
|
|
|
} VENDORPROPERTIES;
|
|
|
|
|
|
/////////////////////////////////////////////////////////////////////////
|
|
typedef [public] enum _PROFILEPROPERTIES
|
|
{
|
|
PROPERTY_PROFILE_ATTRIBUTES_COLLECTION = PROPERTY_SDO_START
|
|
// New Properties Here...
|
|
|
|
} PROFILEPROPERTIES;
|
|
|
|
/////////////////////////////////////////////////////////////////////////
|
|
typedef [public] enum _POLICYPROPERTIES
|
|
{
|
|
PROPERTY_POLICY_CONSTRAINT = PROPERTY_SDO_START,
|
|
PROPERTY_POLICY_MERIT,
|
|
PROPERTY_POLICY_UNUSED0,
|
|
PROPERTY_POLICY_UNUSED1,
|
|
PROPERTY_POLICY_PROFILE_NAME,
|
|
PROPERTY_POLICY_ACTION,
|
|
PROPERTY_POLICY_CONDITIONS_COLLECTION,
|
|
PROPERTY_POLICY_ENABLED,
|
|
PROPERTY_POLICY_SOURCETAG,
|
|
// New Properties Here...
|
|
|
|
} POLICYPROPERTIES;
|
|
|
|
/////////////////////////////////////////////////////////////////////////
|
|
typedef [public] enum _CONDITIONPROPERTIES
|
|
{
|
|
PROPERTY_CONDITION_TEXT = PROPERTY_SDO_START,
|
|
// New Properties Here...
|
|
|
|
} CONDITIONPROPERTIES;
|
|
|
|
/////////////////////////////////////////////////////////////////////////
|
|
typedef [public] enum _RADIUSSERVERGROUPPROPERTIES
|
|
{
|
|
PROPERTY_RADIUSSERVERGROUP_SERVERS_COLLECTION = PROPERTY_SDO_START,
|
|
// New Properties Here...
|
|
|
|
} RADIUSSERVERGROUPPROPERTIES;
|
|
|
|
/////////////////////////////////////////////////////////////////////////
|
|
typedef [public] enum _RADIUSSERVERPROPERTIES
|
|
{
|
|
PROPERTY_RADIUSSERVER_AUTH_PORT = PROPERTY_SDO_START,
|
|
PROPERTY_RADIUSSERVER_AUTH_SECRET,
|
|
PROPERTY_RADIUSSERVER_ACCT_PORT,
|
|
PROPERTY_RADIUSSERVER_ACCT_SECRET,
|
|
PROPERTY_RADIUSSERVER_ADDRESS,
|
|
PROPERTY_RADIUSSERVER_FORWARD_ACCT_ONOFF,
|
|
PROPERTY_RADIUSSERVER_PRIORITY,
|
|
PROPERTY_RADIUSSERVER_WEIGHT,
|
|
PROPERTY_RADIUSSERVER_TIMEOUT,
|
|
PROPERTY_RADIUSSERVER_MAX_LOST,
|
|
PROPERTY_RADIUSSERVER_BLACKOUT,
|
|
PROPERTY_RADIUSSERVER_SEND_SIGNATURE
|
|
// New Properties Here...
|
|
|
|
} RADIUSSERVERPROPERTIES;
|
|
|
|
/////////////////////////////////////////////////////////////////////////
|
|
typedef [public] enum _REMEDIATIONSERVERGROUPPROPERTIES
|
|
{
|
|
PROPERTY_REMEDIATIONSERVERGROUP_SERVERS_COLLECTION = PROPERTY_SDO_START,
|
|
// New Properties Here...
|
|
|
|
} REMEDIATIONSERVERGROUPPROPERTIES;
|
|
|
|
/////////////////////////////////////////////////////////////////////////
|
|
typedef [public] enum _REMEDIATIONSERVERPROPERTIES
|
|
{
|
|
PROPERTY_REMEDIATIONSERVER_ADDRESS = PROPERTY_SDO_START,
|
|
PROPERTY_REMEDIATIONSERVER_FRIENDLY_NAME,
|
|
// New Properties Here...
|
|
|
|
} REMEDIATIONSERVERPROPERTIES;
|
|
|
|
/////////////////////////////////////////////////////////////////////////
|
|
typedef [public] enum _SHVTEMPLATEPROPERTIES
|
|
{
|
|
PROPERTY_SHV_COMBINATION_TYPE = PROPERTY_SDO_START,
|
|
PROPERTY_SHV_LIST,
|
|
// New Properties Here...
|
|
|
|
} SHVTEMPLATEPROPERTIES;
|
|
|
|
/////////////////////////////////////////////////////////////////////////
|
|
// Component Properties (components available from IAS service object)
|
|
/////////////////////////////////////////////////////////////////////////
|
|
|
|
/////////////////////////////////////////////////////////////////////////
|
|
typedef [public] enum _IASCOMPONENTPROPERTIES
|
|
{
|
|
PROPERTY_COMPONENT_ID = PROPERTY_SDO_START,
|
|
PROPERTY_COMPONENT_PROG_ID,
|
|
// New Properties Here...
|
|
|
|
PROPERTY_COMPONENT_START
|
|
|
|
} IASCOMPONENTPROPERTIES;
|
|
|
|
/////////////////////////////////////////////////////////////////////////
|
|
typedef [public] enum _PROTOCOLPROPERTIES
|
|
{
|
|
PROPERTY_PROTOCOL_REQUEST_HANDLER = PROPERTY_COMPONENT_START,
|
|
// New Properties Here...
|
|
|
|
PROPERTY_PROTOCOL_START
|
|
|
|
} PROTOCOLPROPERTIES;
|
|
|
|
/////////////////////////////////////////////////////////////////////////
|
|
typedef [public] enum _RADIUSPROPERTIES
|
|
{
|
|
PROPERTY_RADIUS_ACCOUNTING_PORT = PROPERTY_PROTOCOL_START,
|
|
PROPERTY_RADIUS_AUTHENTICATION_PORT,
|
|
PROPERTY_RADIUS_CLIENTS_COLLECTION,
|
|
PROPERTY_RADIUS_VENDORS_COLLECTION
|
|
// New Properties Here...
|
|
|
|
} RADIUSPROPERTIES;
|
|
|
|
/////////////////////////////////////////////////////////////////////////
|
|
typedef [public] enum _NTEVENTLOGPROPERTIES
|
|
{
|
|
PROPERTY_EVENTLOG_LOG_APPLICATION_EVENTS = PROPERTY_COMPONENT_START,
|
|
PROPERTY_EVENTLOG_LOG_MALFORMED,
|
|
PROPERTY_EVENTLOG_LOG_DEBUG
|
|
// New Properties Here...
|
|
|
|
} NTEVENTLOGPROPERTIES;
|
|
|
|
/////////////////////////////////////////////////////////////////////////
|
|
typedef [public] enum _NAMESPROPERTIES
|
|
{
|
|
PROPERTY_NAMES_REALMS = PROPERTY_COMPONENT_START
|
|
// New Properties Here...
|
|
|
|
} NAMESPROPERTIES;
|
|
|
|
/////////////////////////////////////////////////////////////////////////
|
|
typedef [public] enum _NTSAMPROPERTIES
|
|
{
|
|
PROPERTY_NTSAM_ALLOW_LM_AUTHENTICATION = PROPERTY_COMPONENT_START
|
|
// New Properties Here...
|
|
|
|
} NTSAMPROPERTIES;
|
|
|
|
/////////////////////////////////////////////////////////////////////////
|
|
typedef [public] enum _ACCOUNTINGPROPERTIES
|
|
{
|
|
PROPERTY_ACCOUNTING_LOG_ACCOUNTING = PROPERTY_COMPONENT_START,
|
|
PROPERTY_ACCOUNTING_LOG_ACCOUNTING_INTERIM,
|
|
PROPERTY_ACCOUNTING_LOG_AUTHENTICATION,
|
|
PROPERTY_ACCOUNTING_LOG_OPEN_NEW_FREQUENCY,
|
|
PROPERTY_ACCOUNTING_LOG_OPEN_NEW_SIZE,
|
|
PROPERTY_ACCOUNTING_LOG_FILE_DIRECTORY,
|
|
PROPERTY_ACCOUNTING_LOG_IAS1_FORMAT,
|
|
PROPERTY_ACCOUNTING_LOG_ENABLE_LOGGING, // Obsolete
|
|
PROPERTY_ACCOUNTING_LOG_DELETE_IF_FULL,
|
|
PROPERTY_ACCOUNTING_SQL_MAX_SESSIONS,
|
|
PROPERTY_ACCOUNTING_LOG_AUTHENTICATION_INTERIM
|
|
// New Properties Here...
|
|
|
|
} ACCOUNTINGPROPERTIES;
|
|
|
|
/////////////////////////////////////////////////////////////////////////
|
|
typedef [public] enum _EAPWRAPPROPERTIES
|
|
{
|
|
PROPERTY_EAP_SESSION_TIMEOUT = PROPERTY_COMPONENT_START,
|
|
PROPERTY_EAP_MAX_SESSIONS
|
|
// New Properties Here...
|
|
|
|
} EAPWRAPPROPERTIES;
|
|
|
|
/////////////////////////////////////////////////////////////////////////
|
|
typedef [public] enum _NAPPROPERTIES
|
|
{
|
|
PROPERTY_NAP_POLICIES_COLLECTION = PROPERTY_COMPONENT_START,
|
|
PROPERTY_SHV_TEMPLATES_COLLECTION
|
|
// New Properties Here...
|
|
|
|
} NAPPROPERTIES;
|
|
|
|
/////////////////////////////////////////////////////////////////////////
|
|
typedef [public] enum _RADIUSPROXYPROPERTIES
|
|
{
|
|
PROPERTY_RADIUSPROXY_SERVERGROUPS = PROPERTY_COMPONENT_START
|
|
// New Properties Here...
|
|
|
|
} RADIUSPROXYPROPERTIES;
|
|
|
|
/////////////////////////////////////////////////////////////////////////
|
|
typedef [public] enum _REMEDIATIONSERVERSPROPERTIES
|
|
{
|
|
PROPERTY_REMEDIATIONSERVERS_SERVERGROUPS = PROPERTY_COMPONENT_START
|
|
// New Properties Here...
|
|
|
|
} REMEDIATIONSERVERSPROPERTIES;
|
|
|
|
//////////////////////////////////////////////////////////////////////////
|
|
//
|
|
// Name: SHV COMBINATION TYPE
|
|
//
|
|
// What: Supported System health validator combination type
|
|
//
|
|
//////////////////////////////////////////////////////////////////////////
|
|
typedef [public] enum _SHV_COMBINATION_TYPE
|
|
{
|
|
SHV_COMBINATION_TYPE_ALL_PASS = 0,
|
|
SHV_COMBINATION_TYPE_ALL_FAIL,
|
|
SHV_COMBINATION_TYPE_ONE_OR_MORE_PASS,
|
|
SHV_COMBINATION_TYPE_ONE_OR_MORE_FAIL,
|
|
SHV_COMBINATION_TYPE_ONE_OR_MORE_INFECTED,
|
|
SHV_COMBINATION_TYPE_ONE_OR_MORE_TRANSITIONAL,
|
|
SHV_COMBINATION_TYPE_ONE_OR_MORE_UNKNOWN,
|
|
|
|
//
|
|
// New combination type here...
|
|
|
|
SHV_COMBINATION_TYPE_MAX
|
|
|
|
} SHV_COMBINATION_TYPE;
|
|
|
|
|
|
//////////////////////////////////////////////////////////////////////////
|
|
//
|
|
// Name: Service Type
|
|
//
|
|
// What: Supported Service Types
|
|
//
|
|
// Purpose: Defines the set of NT networking services supported by
|
|
// the IAS subsystem. Used by the ISdoService interface.
|
|
//
|
|
//////////////////////////////////////////////////////////////////////////
|
|
typedef [public] enum _SERVICE_TYPE
|
|
{
|
|
SERVICE_TYPE_IAS = 0,
|
|
SERVICE_TYPE_RAS,
|
|
//
|
|
// New service type here...
|
|
|
|
SERVICE_TYPE_MAX
|
|
|
|
} SERVICE_TYPE;
|
|
|
|
|
|
//////////////////////////////////////////////////////////////////////////
|
|
//
|
|
// Name: Machine Information
|
|
//
|
|
// What: Identifiers for Machine Information
|
|
//
|
|
// Purpose: Defines the set of machine information available via the
|
|
// ISdoMachine interface.
|
|
//
|
|
//////////////////////////////////////////////////////////////////////////
|
|
|
|
/////////////////////////////////////////////////////////////////////////
|
|
// Operating System Types
|
|
/////////////////////////////////////////////////////////////////////////
|
|
typedef [public] enum _IASOSTYPE
|
|
{
|
|
SYSTEM_TYPE_NT4_WORKSTATION,
|
|
SYSTEM_TYPE_NT5_WORKSTATION,
|
|
SYSTEM_TYPE_NT6_WORKSTATION,
|
|
SYSTEM_TYPE_NT4_SERVER,
|
|
SYSTEM_TYPE_NT5_SERVER,
|
|
SYSTEM_TYPE_NT6_SERVER
|
|
} IASOSTYPE, *PIASOSTYPE;
|
|
|
|
|
|
/////////////////////////////////////////////////////////////////////////
|
|
// Domain Types
|
|
/////////////////////////////////////////////////////////////////////////
|
|
typedef [public] enum _DOMAINTYPE
|
|
{
|
|
DOMAIN_TYPE_NONE, // Standalone
|
|
DOMAIN_TYPE_NT4,
|
|
DOMAIN_TYPE_NT5,
|
|
DOMAIN_TYPE_MIXED
|
|
|
|
} IASDOMAINTYPE, *PIASDOMAINTYPE;
|
|
|
|
|
|
//////////////////////////////////////////////////////////////////////////
|
|
//
|
|
// Name: IASDATASTORE
|
|
//
|
|
// What: Set of data stores available to SDO client applications
|
|
//
|
|
// Purpose: Defines the set of set of data store via the
|
|
// ISdoMachine interface.
|
|
//
|
|
//////////////////////////////////////////////////////////////////////////
|
|
typedef [public] enum _IASDATASTORE
|
|
{
|
|
DATA_STORE_LOCAL,
|
|
DATA_STORE_DIRECTORY,
|
|
|
|
} IASDATASTORE, *PIASDATASTORE;
|
|
|
|
|
|
//////////////////////////////////////////////////////////////////////////
|
|
// ISdoMachine - Used to retrieve information from a Machine SDO
|
|
//////////////////////////////////////////////////////////////////////////
|
|
[
|
|
object,
|
|
uuid(479F6E75-49A2-11d2-8ECA-00C04FC2F519),
|
|
dual,
|
|
pointer_default(unique)
|
|
]
|
|
interface ISdoMachine: IDispatch
|
|
{
|
|
[id(1)]
|
|
HRESULT Attach (
|
|
[in] BSTR bstrComputerName
|
|
);
|
|
|
|
[id(2)]
|
|
HRESULT GetDictionarySDO (
|
|
[out, retval] IUnknown** ppDictionarySDO
|
|
);
|
|
|
|
[id(3)]
|
|
HRESULT GetServiceSDO (
|
|
[in] IASDATASTORE eDataStore,
|
|
[in] BSTR bstrServiceName,
|
|
[out, retval] IUnknown** ppServiceSDO
|
|
);
|
|
|
|
[id(4)]
|
|
HRESULT GetUserSDO (
|
|
[in] IASDATASTORE eDataStore,
|
|
[in] BSTR bstrUserName,
|
|
[out, retval] IUnknown** ppUserSDO
|
|
);
|
|
|
|
[id(5)]
|
|
HRESULT GetOSType (
|
|
[out, retval] IASOSTYPE* eOSType
|
|
);
|
|
|
|
[id(6)]
|
|
HRESULT GetDomainType(
|
|
[out, retval] IASDOMAINTYPE* eDomainType
|
|
);
|
|
|
|
[id(7)]
|
|
HRESULT IsDirectoryAvailable(
|
|
[out, retval] VARIANT_BOOL* boolDirectoryAvailable
|
|
);
|
|
|
|
[id(8)]
|
|
HRESULT GetAttachedComputer(
|
|
[out, retval] BSTR* bstrComputerName
|
|
);
|
|
|
|
[id(9), hidden]
|
|
HRESULT GetSDOSchema(
|
|
[out, retval] IUnknown** ppSDOSchema
|
|
);
|
|
};
|
|
|
|
|
|
//////////////////////////////////////////////////////////////////////////
|
|
// ISdoServiceControl - Used to control a Service SDO
|
|
//////////////////////////////////////////////////////////////////////////
|
|
[
|
|
object,
|
|
uuid(479F6E74-49A2-11d2-8ECA-00C04FC2F519),
|
|
dual,
|
|
pointer_default(unique)
|
|
]
|
|
interface ISdoServiceControl: IDispatch
|
|
{
|
|
[id(1)]
|
|
HRESULT StartService (void);
|
|
|
|
[id(2)]
|
|
HRESULT StopService (void);
|
|
|
|
[id(3)]
|
|
HRESULT GetServiceStatus ([out, retval] LONG* status);
|
|
|
|
[id(4)]
|
|
HRESULT ResetService (void);
|
|
};
|
|
|
|
|
|
//////////////////////////////////////////////////////////////////////////
|
|
// ISdo - Used to store, retrieve and update SDO information
|
|
//////////////////////////////////////////////////////////////////////////
|
|
[
|
|
object,
|
|
uuid(56BC53DE-96DB-11D1-BF3F-000000000000),
|
|
dual,
|
|
pointer_default(unique)
|
|
]
|
|
interface ISdo : IDispatch
|
|
{
|
|
|
|
[id(1), hidden]
|
|
HRESULT GetPropertyInfo ([in] LONG Id, [out, retval] IUnknown** ppPropertyInfo);
|
|
|
|
[id(2)]
|
|
HRESULT GetProperty ([in] LONG Id, [out, retval] VARIANT* pValue);
|
|
|
|
[id(3)]
|
|
HRESULT PutProperty ([in] LONG Id, [in] VARIANT* pValue);
|
|
|
|
[id(4)]
|
|
HRESULT ResetProperty ([in] LONG Id);
|
|
|
|
[id(5)]
|
|
HRESULT Apply (void);
|
|
|
|
[id(6)]
|
|
HRESULT Restore (void);
|
|
|
|
[propget, id(DISPID_NEWENUM)]
|
|
HRESULT _NewEnum ([out, retval] IUnknown** ppEnumVARIANT); // Property enumerator
|
|
};
|
|
|
|
|
|
//////////////////////////////////////////////////////////////////////////
|
|
// ISdoCollection - Used to manipulate the contents of a collection
|
|
//////////////////////////////////////////////////////////////////////////
|
|
[
|
|
object,
|
|
uuid(56BC53E2-96DB-11D1-BF3F-000000000000),
|
|
dual,
|
|
pointer_default(unique)
|
|
]
|
|
interface ISdoCollection : IDispatch
|
|
{
|
|
[propget, id(1)]
|
|
HRESULT Count ([out, retval] long *pCount);
|
|
|
|
[id(2)]
|
|
HRESULT Add ([in] BSTR bstrName, [in, out] IDispatch** ppItem);
|
|
|
|
[id(3)]
|
|
HRESULT Remove ([in] IDispatch* pItem);
|
|
|
|
[id(4)]
|
|
HRESULT RemoveAll (void);
|
|
|
|
[id(5)]
|
|
HRESULT Reload (void);
|
|
|
|
[id(6)]
|
|
HRESULT IsNameUnique([in] BSTR bstrName, [out, retval] VARIANT_BOOL* pBool);
|
|
|
|
[id(DISPID_VALUE)]
|
|
HRESULT Item ([in] VARIANT* Name, [out, retval] IDispatch** pItem);
|
|
|
|
[propget, id(DISPID_NEWENUM)]
|
|
HRESULT _NewEnum ([out, retval] IUnknown** ppEnumVARIANT);
|
|
};
|
|
|
|
|
|
//////////////////////////////////////////////////////////////////////////
|
|
// ISdoDictionaryOld - interface Used to access dictionary contents
|
|
//////////////////////////////////////////////////////////////////////////
|
|
[
|
|
object,
|
|
uuid(d432e5f4-53d8-11d2-9a3a-00c04fb998ac),
|
|
dual,
|
|
pointer_default(unique)
|
|
]
|
|
|
|
interface ISdoDictionaryOld : IDispatch
|
|
{
|
|
[id(1)]
|
|
HRESULT EnumAttributes(
|
|
[in, out] VARIANT* Id,
|
|
[out,retval] VARIANT* pValues
|
|
);
|
|
|
|
[id(2), hidden]
|
|
HRESULT GetAttributeInfo(
|
|
[in] ATTRIBUTEID Id,
|
|
[in] VARIANT* pInfoIDs,
|
|
[out,retval] VARIANT* pInfoValues
|
|
);
|
|
|
|
[id(3)]
|
|
HRESULT EnumAttributeValues(
|
|
[in] ATTRIBUTEID Id,
|
|
[out] VARIANT* pValueIds,
|
|
[out,retval] VARIANT* pValuesDesc
|
|
);
|
|
|
|
[id(4)]
|
|
HRESULT CreateAttribute(
|
|
[in] ATTRIBUTEID Id,
|
|
[out,retval] IDispatch** ppAttributeObject
|
|
);
|
|
|
|
[id(5)]
|
|
HRESULT GetAttributeID(
|
|
[in] BSTR bstrAttributeName,
|
|
[out,retval] ATTRIBUTEID* pId
|
|
);
|
|
};
|
|
|
|
///////////////
|
|
// Machine SDO
|
|
///////////////
|
|
[
|
|
uuid(E9218AE7-9E91-11D1-BF60-0080C7846BC0),
|
|
]
|
|
coclass SdoMachine
|
|
{
|
|
[default] interface ISdoMachine;
|
|
};
|
|
};
|
|
#endif // __SDOIAS_IDL__
|
|
|