2006-05-12 08:22:48 +02:00
|
|
|
/*
|
|
|
|
* mprapi.h - Routing and Remote Access Services
|
|
|
|
*
|
|
|
|
* THIS SOFTWARE IS NOT COPYRIGHTED
|
|
|
|
*
|
|
|
|
* This source code is offered for use in the public domain. You may use,
|
|
|
|
* modify or distribute it freely.
|
|
|
|
*
|
|
|
|
* This code is distributed in the hope that it will be useful but
|
|
|
|
* WITHOUT ANY WARRANTY. ALL WARRANTIES, EXPRESS OR IMPLIED ARE HEREBY
|
|
|
|
* DISCLAIMED. This includes but is not limited to warranties of
|
|
|
|
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
|
|
|
|
*
|
|
|
|
*/
|
2006-05-12 07:59:41 +02:00
|
|
|
#ifndef _MPRAPI_H
|
|
|
|
#define _MPRAPI_H
|
2006-05-02 12:51:52 +02:00
|
|
|
#if __GNUC__ >= 3
|
|
|
|
#pragma GCC system_header
|
|
|
|
#endif
|
|
|
|
|
|
|
|
#include <ras.h>
|
* include/mprapi.h (PPP_*INFO*, RAS_CONNECTION_*, RAS_PORT_*,
RAS_USER_*): New structures.
* include/mprapi.h (RAS_FLAGS_*,PPP_LCP_*,RASCCPCA_* ,PPP_CCP_*,MAX_*,
RASPRIV_*,*ADDRESSLEN,MPR_ENABLE_*): Define.
* include/mprapi.h (RAS_*_CONDITION): Add enums.
* include/mprapi.h <lmcons.h>: For NETBIOS_NAME_LEN, UNLEN, DLEN.
2006-05-02 14:08:18 +02:00
|
|
|
#include <lmcons.h>
|
2006-05-02 12:51:52 +02:00
|
|
|
|
|
|
|
#ifdef __cplusplus
|
|
|
|
extern "C" {
|
|
|
|
#endif
|
|
|
|
|
|
|
|
#if (_WIN32_WINNT >= 0x0500)
|
2006-05-12 07:59:41 +02:00
|
|
|
/*--- Router Management Reference - Router Management Enumerated Types */
|
|
|
|
typedef enum _ROUTER_CONNECTION_STATE {
|
|
|
|
ROUTER_IF_STATE_UNREACHABLE,
|
|
|
|
ROUTER_IF_STATE_DISCONNECTED,
|
|
|
|
ROUTER_IF_STATE_CONNECTING,
|
|
|
|
ROUTER_IF_STATE_CONNECTED
|
|
|
|
} ROUTER_CONNECTION_STATE;
|
|
|
|
typedef enum _ROUTER_INTERFACE_TYPE {
|
|
|
|
ROUTER_IF_TYPE_CLIENT,
|
|
|
|
ROUTER_IF_TYPE_HOME_ROUTER,
|
|
|
|
ROUTER_IF_TYPE_FULL_ROUTER,
|
|
|
|
ROUTER_IF_TYPE_DEDICATED,
|
|
|
|
ROUTER_IF_TYPE_INTERNAL,
|
|
|
|
ROUTER_IF_TYPE_LOOPBACK,
|
|
|
|
ROUTER_IF_TYPE_TUNNEL1,
|
|
|
|
ROUTER_IF_TYPE_DIALOUT
|
|
|
|
} ROUTER_INTERFACE_TYPE;
|
2006-05-02 12:51:52 +02:00
|
|
|
#define MPR_INTERFACE_ADMIN_DISABLED 0x00000002
|
|
|
|
#define MPR_INTERFACE_CONNECTION_FAILURE 0x00000004
|
|
|
|
#define MPR_INTERFACE_DIALOUT_HOURS_RESTRICTION 0x00000010
|
|
|
|
#define MPR_INTERFACE_OUT_OF_RESOURCES 0x00000001
|
|
|
|
#define MPR_INTERFACE_SERVICE_PAUSED 0x00000008
|
|
|
|
#define MPR_INTERFACE_NO_MEDIA_SENSE 0x00000020
|
|
|
|
#define MPR_INTERFACE_NO_DEVICE 0x00000040
|
2006-05-12 07:59:41 +02:00
|
|
|
/*--- Router Management MIB Reference - Transport and Protocol Constants */
|
|
|
|
#define PID_ATALK 0x00000029
|
|
|
|
#define PID_IP 0x00000021
|
|
|
|
#define PID_IPX 0x0000002B
|
|
|
|
#define PID_NBF 0x0000003F
|
2006-05-12 08:22:48 +02:00
|
|
|
/*--- Remote Access Service Administration Reference - RAS Administration Enumerated Types */
|
|
|
|
typedef enum _RAS_HARDWARE_CONDITION {
|
|
|
|
RAS_HARDWARE_OPERATIONAL,
|
|
|
|
RAS_HARDWARE_FAILURE
|
|
|
|
} RAS_HARDWARE_CONDITION;
|
|
|
|
typedef enum _RAS_PORT_CONDITION {
|
|
|
|
RAS_PORT_NON_OPERATIONAL,
|
|
|
|
RAS_PORT_DISCONNECTED,
|
|
|
|
RAS_PORT_CALLING_BACK,
|
|
|
|
RAS_PORT_LISTENING,
|
|
|
|
RAS_PORT_AUTHENTICATING,
|
|
|
|
RAS_PORT_AUTHENTICATED,
|
|
|
|
RAS_PORT_INITIALIZING
|
|
|
|
} RAS_PORT_CONDITION;
|
2006-05-12 07:59:41 +02:00
|
|
|
/*--- Remote Access Service Administration Reference - RAS Administration Structures */
|
|
|
|
#define ATADDRESSLEN 32
|
|
|
|
typedef struct _PPP_ATCP_INFO {
|
|
|
|
DWORD dwError;
|
|
|
|
WCHAR wszAddress[ATADDRESSLEN+1];
|
|
|
|
} PPP_ATCP_INFO;
|
|
|
|
typedef struct _PPP_CCP_INFO {
|
|
|
|
DWORD dwError;
|
|
|
|
DWORD dwCompressionAlgorithm;
|
|
|
|
DWORD dwOptions;
|
|
|
|
DWORD dwRemoteCompressionAlgorithm;
|
|
|
|
DWORD dwRemoteOptions;
|
|
|
|
} PPP_CCP_INFO;
|
* include/mprapi.h (PPP_*INFO*, RAS_CONNECTION_*, RAS_PORT_*,
RAS_USER_*): New structures.
* include/mprapi.h (RAS_FLAGS_*,PPP_LCP_*,RASCCPCA_* ,PPP_CCP_*,MAX_*,
RASPRIV_*,*ADDRESSLEN,MPR_ENABLE_*): Define.
* include/mprapi.h (RAS_*_CONDITION): Add enums.
* include/mprapi.h <lmcons.h>: For NETBIOS_NAME_LEN, UNLEN, DLEN.
2006-05-02 14:08:18 +02:00
|
|
|
#define RASCCPCA_STAC 0x00000005
|
|
|
|
#define RASCCPCA_MPPC 0x00000006
|
|
|
|
#define PPP_CCP_COMPRESSION 0x00000001
|
|
|
|
#define PPP_CCP_ENCRYPTION40BITOLD 0x00000010
|
|
|
|
#define PPP_CCP_ENCRYPTION40BIT 0x00000020
|
|
|
|
#define PPP_CCP_ENCRYPTION128BIT 0x00000040
|
|
|
|
#define PPP_CCP_ENCRYPTION56BIT 0x00000080
|
|
|
|
#define PPP_CCP_HISTORYLESS 0x01000000
|
2006-05-12 07:59:41 +02:00
|
|
|
#define IPADDRESSLEN 15
|
|
|
|
typedef struct _PPP_IPCP_INFO {
|
|
|
|
DWORD dwError;
|
|
|
|
WCHAR wszAddress[IPADDRESSLEN+1];
|
|
|
|
WCHAR wszRemoteAddress[IPADDRESSLEN+1];
|
|
|
|
} PPP_IPCP_INFO;
|
|
|
|
typedef struct _PPP_IPCP_INFO2 {
|
|
|
|
DWORD dwError;
|
|
|
|
WCHAR wszAddress[IPADDRESSLEN+1];
|
|
|
|
WCHAR wszRemoteAddress[IPADDRESSLEN+1];
|
|
|
|
DWORD dwOptions;
|
|
|
|
DWORD dwRemoteOptons;
|
|
|
|
} PPP_IPCP_INFO2;
|
|
|
|
#define IPXADDRESSLEN 22
|
|
|
|
typedef struct _PPP_IPXCP_INFO {
|
|
|
|
DWORD dwError;
|
|
|
|
WCHAR wszAddress[IPXADDRESSLEN+1];
|
|
|
|
} PPP_IPXCP_INFO;
|
|
|
|
typedef struct _PPP_LCP_INFO {
|
|
|
|
DWORD dwError;
|
|
|
|
DWORD dwAuthenticationProtocol;
|
|
|
|
DWORD dwAuthenticationData;
|
|
|
|
DWORD dwRemoteAuthenticationProtocol;
|
|
|
|
DWORD dwRemoteAuthenticationData;
|
|
|
|
DWORD dwTerminateReason;
|
|
|
|
DWORD dwRemoteTerminateReason;
|
|
|
|
DWORD dwOptions;
|
|
|
|
DWORD dwRemoteOptions;
|
|
|
|
DWORD dwEapTypeId;
|
|
|
|
DWORD dwRemoteEapTypeId;
|
|
|
|
} PPP_LCP_INFO;
|
* include/mprapi.h (PPP_*INFO*, RAS_CONNECTION_*, RAS_PORT_*,
RAS_USER_*): New structures.
* include/mprapi.h (RAS_FLAGS_*,PPP_LCP_*,RASCCPCA_* ,PPP_CCP_*,MAX_*,
RASPRIV_*,*ADDRESSLEN,MPR_ENABLE_*): Define.
* include/mprapi.h (RAS_*_CONDITION): Add enums.
* include/mprapi.h <lmcons.h>: For NETBIOS_NAME_LEN, UNLEN, DLEN.
2006-05-02 14:08:18 +02:00
|
|
|
#define PPP_LCP_PAP 0x0000C023
|
|
|
|
#define PPP_LCP_SPAP 0x0000C027
|
|
|
|
#define PPP_LCP_CHAP 0x0000C223
|
|
|
|
#define PPP_LCP_EAP 0x0000C227
|
|
|
|
#define PPP_LCP_CHAP_MD5 0x00000005
|
|
|
|
#define PPP_LCP_CHAP_MS 0x00000080
|
|
|
|
#define PPP_LCP_CHAP_MSV2 0x00000081
|
|
|
|
#define PPP_LCP_MULTILINK_FRAMING 0x00000001
|
2006-05-12 07:59:41 +02:00
|
|
|
typedef struct _PPP_NBFCP_INFO {
|
|
|
|
DWORD dwError;
|
|
|
|
WCHAR wszWksta[NETBIOS_NAME_LEN+1];
|
|
|
|
} PPP_NBFCP_INFO;
|
|
|
|
typedef struct _PPP_INFO {
|
|
|
|
PPP_NBFCP_INFO nbf;
|
|
|
|
PPP_IPCP_INFO ip;
|
|
|
|
PPP_IPXCP_INFO ipx;
|
|
|
|
PPP_ATCP_INFO at;
|
|
|
|
} PPP_INFO;
|
|
|
|
typedef struct _PPP_INFO_2 {
|
|
|
|
PPP_NBFCP_INFO nbf;
|
|
|
|
PPP_IPCP_INFO2 ip;
|
|
|
|
PPP_IPXCP_INFO ipx;
|
|
|
|
PPP_ATCP_INFO at;
|
|
|
|
PPP_CCP_INFO ccp;
|
|
|
|
PPP_LCP_INFO lcp;
|
|
|
|
} PPP_INFO_2;
|
|
|
|
#define MAX_INTERFACE_NAME_LEN 256
|
|
|
|
typedef struct _RAS_CONNECTION_0 {
|
|
|
|
HANDLE hConnection;
|
|
|
|
HANDLE hInterface;
|
|
|
|
DWORD dwConnectDuration;
|
|
|
|
ROUTER_INTERFACE_TYPE dwInterfaceType;
|
|
|
|
DWORD dwConnectionFlags;
|
|
|
|
WCHAR wszInterfaceName[MAX_INTERFACE_NAME_LEN+1];
|
|
|
|
WCHAR wszUserName[UNLEN+1];
|
|
|
|
WCHAR wszLogonDomain[DNLEN+1];
|
|
|
|
WCHAR wszRemoteComputer[NETBIOS_NAME_LEN+1];
|
|
|
|
} RAS_CONNECTION_0,*PRAS_CONNECTION_0;
|
|
|
|
#define RAS_FLAGS_PPP_CONNECTION 0x00000001
|
|
|
|
#define RAS_FLAGS_MESSENGER_PRESENT 0x00000002
|
|
|
|
#define RAS_FLAGS_RAS_CONNECTION 0x00000004
|
|
|
|
#define RAS_FLAGS_QUARANTINE_PRESENT 0x00000008
|
|
|
|
typedef struct RAS_CONNECTION_1 {
|
|
|
|
HANDLE hConnection;
|
|
|
|
HANDLE hInterface;
|
|
|
|
PPP_INFO PppInfo;
|
|
|
|
DWORD dwBytesXmited;
|
|
|
|
DWORD dwBytesRcved;
|
|
|
|
DWORD dwFramesXmited;
|
|
|
|
DWORD dwFramesRcved;
|
|
|
|
DWORD dwCrcErr;
|
|
|
|
DWORD dwTimeoutErr;
|
|
|
|
DWORD dwAlignmentErr;
|
|
|
|
DWORD dwHardwareOverrunErr;
|
|
|
|
DWORD dwFramingErr;
|
|
|
|
DWORD dwBufferOverrunErr;
|
|
|
|
DWORD dwCompressionRatioIn;
|
|
|
|
DWORD dwCompressionRatioOut;
|
|
|
|
} RAS_CONNECTION_1,*PRAS_CONNECTION_1;
|
|
|
|
typedef struct _RAS_CONNECTION_2 {
|
|
|
|
HANDLE hConnection;
|
|
|
|
WCHAR wszUserName[UNLEN+1];
|
|
|
|
ROUTER_INTERFACE_TYPE dwInterfaceType;
|
|
|
|
GUID guid;
|
|
|
|
PPP_INFO_2 PppInfo2;
|
|
|
|
} RAS_CONNECTION_2,*PRAS_CONNECTION_2;
|
|
|
|
#define MAX_PORT_NAME 16
|
|
|
|
#define MAX_MEDIA_NAME 16
|
|
|
|
#define MAX_DEVICE_NAME 128
|
|
|
|
#define MAX_DEVICETYPE_NAME 16
|
|
|
|
typedef struct _RAS_PORT_0 {
|
|
|
|
HANDLE hPort;
|
|
|
|
HANDLE hConnection;
|
|
|
|
RAS_PORT_CONDITION dwPortCondition;
|
|
|
|
DWORD dwTotalNumberOfCalls;
|
|
|
|
DWORD dwConnectDuration;
|
|
|
|
WCHAR wszPortName[MAX_PORT_NAME+1];
|
|
|
|
WCHAR wszMediaName[MAX_MEDIA_NAME+1];
|
|
|
|
WCHAR wszDeviceName[MAX_DEVICE_NAME+1];
|
|
|
|
WCHAR wszDeviceType[MAX_DEVICETYPE_NAME+1];
|
|
|
|
} RAS_PORT_0,*PRAS_PORT_0;
|
|
|
|
typedef struct _RAS_PORT_1 {
|
|
|
|
HANDLE hPort;
|
|
|
|
HANDLE hConnection;
|
|
|
|
RAS_HARDWARE_CONDITION dwHardwareCondition;
|
|
|
|
DWORD dwLineSpeed;
|
|
|
|
DWORD dwBytesXmited;
|
|
|
|
DWORD dwBytesRcved;
|
|
|
|
DWORD dwFramesXmited;
|
|
|
|
DWORD dwFramesRcved;
|
|
|
|
DWORD dwCrcErr;
|
|
|
|
DWORD dwTimeoutErr;
|
|
|
|
DWORD dwAlignmentErr;
|
|
|
|
DWORD dwHardwareOverrunErr;
|
|
|
|
DWORD dwFramingErr;
|
|
|
|
DWORD dwBufferOverrunErr;
|
|
|
|
DWORD dwCompressionRatioIn;
|
|
|
|
DWORD dwCompressionRatioOut;
|
|
|
|
} RAS_PORT_1,*PRAS_PORT_1;
|
|
|
|
#define MAX_PHONE_NUMBER_LEN 128
|
|
|
|
typedef struct _RAS_USER_0 {
|
|
|
|
BYTE bfPrivilege;
|
|
|
|
WCHAR wszPhoneNumber[MAX_PHONE_NUMBER_LEN+1];
|
|
|
|
} RAS_USER_0,*PRAS_USER_0;
|
|
|
|
#define RASPRIV_NoCallback 0x01
|
|
|
|
#define RASPRIV_AdminSetCallback 0x02
|
|
|
|
#define RASPRIV_CallerSetCallback 0x04
|
|
|
|
#define RASPRIV_DialinPrivilege 0x08
|
|
|
|
#define RASPRIV_CallbackType 0x07
|
|
|
|
typedef struct _RAS_USER_1 {
|
|
|
|
BYTE bfPrivilege;
|
|
|
|
WCHAR wszPhoneNumber[MAX_PHONE_NUMBER_LEN+1];
|
|
|
|
BYTE bfPrivilege2;
|
|
|
|
} RAS_USER_1,*PRAS_USER_1;
|
|
|
|
#define RASPRIV2_DialinPolicy 0x01
|
|
|
|
/*--- Router Management Reference - Router Management Structures */
|
2006-05-02 12:51:52 +02:00
|
|
|
typedef struct _MPR_CREDENTIALSEX_0 {
|
|
|
|
DWORD dwSize;
|
|
|
|
LPBYTE lpbCredentialsInfo;
|
|
|
|
} MPR_CREDENTIALSEX_0,*PMPR_CREDENTIALSEX_0;
|
|
|
|
#if (_WIN32_WINNT >= 0x0502)
|
|
|
|
typedef struct _MPR_CREDENTIALSEX_1 {
|
|
|
|
DWORD dwSize;
|
|
|
|
LPBYTE lpbCredentialsInfo;
|
|
|
|
} MPR_CREDENTIALSEX_1,*PMPR_CREDENTIALSEX_1;
|
|
|
|
#endif
|
2006-05-12 07:59:41 +02:00
|
|
|
#define MPR_MaxDeviceType RAS_MaxDeviceType
|
|
|
|
#define MPR_MaxDeviceName RAS_MaxDeviceName
|
|
|
|
#define MPR_MaxPadType RAS_MaxPadType
|
|
|
|
#define MPR_MaxX25Address RAS_MaxX25Address
|
|
|
|
#define MPR_MaxFacilities RAS_MaxFacilities
|
|
|
|
#define MPR_MaxUserData RAS_MaxUserData
|
|
|
|
#define MPR_MaxPhoneNumber RAS_MaxPhoneNumber
|
2006-05-02 12:51:52 +02:00
|
|
|
typedef struct _MPR_DEVICE_0 {
|
|
|
|
WCHAR szDeviceType[MPR_MaxDeviceType+1];
|
|
|
|
WCHAR szDeviceName[MPR_MaxDeviceName+1];
|
|
|
|
} MPR_DEVICE_0,*PMPR_DEVICE_0;
|
|
|
|
typedef struct _MPR_DEVICE_1 {
|
|
|
|
WCHAR szDeviceType[MPR_MaxDeviceType+1];
|
|
|
|
WCHAR szDeviceName[MPR_MaxDeviceName+1];
|
|
|
|
WCHAR szLocalPhoneNumber[MPR_MaxPhoneNumber+1];
|
|
|
|
PWCHAR szAlternates;
|
|
|
|
} MPR_DEVICE_1,*PMPR_DEVICE_1;
|
2006-05-12 07:59:41 +02:00
|
|
|
#define MAX_TRANSPORT_NAME_LEN 40
|
2006-05-02 12:51:52 +02:00
|
|
|
typedef struct _MPR_IFTRANSPORT_0 {
|
|
|
|
DWORD dwTransportId;
|
|
|
|
HANDLE hIfTransport;
|
|
|
|
WCHAR wszIfTransportName[MAX_TRANSPORT_NAME_LEN+1];
|
|
|
|
} MPR_IFTRANSPORT_0,*PMPR_IFTRANSPORT_0;
|
|
|
|
typedef struct _MPR_INTERFACE_0 {
|
|
|
|
WCHAR wszInterfaceName[MAX_INTERFACE_NAME_LEN+1];
|
|
|
|
HANDLE hInterface;
|
|
|
|
BOOL fEnabled;
|
|
|
|
ROUTER_INTERFACE_TYPE dwIfType;
|
|
|
|
ROUTER_CONNECTION_STATE dwConnectionState;
|
|
|
|
DWORD fUnReachabilityReasons;
|
|
|
|
DWORD dwLastError;
|
|
|
|
} MPR_INTERFACE_0,*PMPR_INTERFACE_0;
|
|
|
|
typedef struct _MPR_INTERFACE_1 {
|
|
|
|
WCHAR wszInterfaceName[MAX_INTERFACE_NAME_LEN+1];
|
|
|
|
HANDLE hInterface;
|
|
|
|
BOOL fEnabled;
|
|
|
|
ROUTER_INTERFACE_TYPE IfType;
|
|
|
|
ROUTER_CONNECTION_STATE dwConnectionState;
|
|
|
|
DWORD fUnReachabilityReasons;
|
|
|
|
DWORD dwLastError;
|
|
|
|
LPWSTR lpwsDialoutHoursRestriction;
|
|
|
|
} MPR_INTERFACE_1,*PMPR_INTERFACE_1;
|
|
|
|
typedef struct _MPR_INTERFACE_2 {
|
|
|
|
WCHAR wszInterfaceName[MAX_INTERFACE_NAME_LEN+1];
|
|
|
|
HANDLE hInterface;
|
|
|
|
BOOL fEnabled;
|
|
|
|
ROUTER_INTERFACE_TYPE dwIfType;
|
|
|
|
ROUTER_CONNECTION_STATE dwConnectionState;
|
|
|
|
DWORD fUnReachabilityReasons;
|
|
|
|
DWORD dwLastError;
|
|
|
|
DWORD dwfOptions;
|
|
|
|
WCHAR szLocalPhoneNumber[RAS_MaxPhoneNumber+1];
|
|
|
|
PWCHAR szAlternates;
|
|
|
|
DWORD ipaddr;
|
|
|
|
DWORD ipaddrDns;
|
|
|
|
DWORD ipaddrDnsAlt;
|
|
|
|
DWORD ipaddrWins;
|
|
|
|
DWORD ipaddrWinsAlt;
|
|
|
|
DWORD dwfNetProtocols;
|
|
|
|
WCHAR szDeviceType[MPR_MaxDeviceType+1];
|
|
|
|
WCHAR szDeviceName[MPR_MaxDeviceName+1];
|
|
|
|
WCHAR szX25PadType[MPR_MaxPadType+1];
|
|
|
|
WCHAR szX25Address[MPR_MaxX25Address+1];
|
|
|
|
WCHAR szX25Facilities[MPR_MaxFacilities+1];
|
|
|
|
WCHAR szX25UserData[MPR_MaxUserData+1];
|
|
|
|
DWORD dwChannels;
|
|
|
|
DWORD dwSubEntries;
|
|
|
|
DWORD dwDialMode;
|
|
|
|
DWORD dwDialExtraPercent;
|
|
|
|
DWORD dwDialExtraSampleSeconds;
|
|
|
|
DWORD dwHangUpExtraPercent;
|
|
|
|
DWORD dwHangUpExtraSampleSeconds;
|
|
|
|
DWORD dwIdleDisconnectSeconds;
|
|
|
|
DWORD dwType;
|
|
|
|
DWORD dwEncryptionType;
|
|
|
|
DWORD dwCustomAuthKey;
|
|
|
|
DWORD dwCustomAuthDataSize;
|
|
|
|
LPBYTE lpbCustomAuthData;
|
|
|
|
GUID guidId;
|
|
|
|
DWORD dwVpnStrategy;
|
|
|
|
} MPR_INTERFACE_2,*PMPR_INTERFACE_2;
|
2006-05-12 07:59:41 +02:00
|
|
|
#define MPRIO_SpecificIpAddr RASEO_SpecificIpAddr
|
|
|
|
#define MPRIO_SpecificNameServers RASEO_SpecificNameServers
|
|
|
|
#define MPRIO_IpHeaderCompression RASEO_IpHeaderCompression
|
|
|
|
#define MPRIO_RemoteDefaultGateway RASEO_RemoteDefaultGateway
|
|
|
|
#define MPRIO_DisableLcpExtensions RASEO_DisableLcpExtensions
|
|
|
|
#define MPRIO_SwCompression RASEO_SwCompression
|
|
|
|
#define MPRIO_RequireEncryptedPw RASEO_RequireEncryptedPw
|
|
|
|
#define MPRIO_RequireMsEncryptedPw RASEO_RequireMsEncryptedPw
|
|
|
|
#define MPRIO_RequireDataEncryption RASEO_RequireDataEncryption
|
|
|
|
#define MPRIO_NetworkLogon RASEO_NetworkLogon
|
|
|
|
#define MPRIO_UseLogonCredentials RASEO_UseLogonCredentials
|
|
|
|
#define MPRIO_PromoteAlternates RASEO_PromoteAlternates
|
|
|
|
#define MPRIO_SecureLocalFiles RASEO_SecureLocalFiles
|
|
|
|
#define MPRIO_RequireEAP RASEO_RequireEAP
|
|
|
|
#define MPRIO_RequirePAP RASEO_RequirePAP
|
|
|
|
#define MPRIO_RequireSPAP RASEO_RequireSPAP
|
|
|
|
#define MPRIO_SharedPhoneNumbers RASEO_SharedPhoneNumbers
|
|
|
|
#define MPRIO_RequireCHAP RASEO_RequireCHAP
|
|
|
|
#define MPRIO_RequireMsCHAP RASEO_RequireMsCHAP
|
|
|
|
#define MPRIO_RequireMsCHAP2 RASEO_RequireMsCHAP2
|
|
|
|
#define MPRNP_Ipx RASNP_Ipx
|
|
|
|
#define MPRNP_Ip RASNP_Ip
|
|
|
|
#define MPRDT_Modem RASDT_Modem
|
|
|
|
#define MPRDT_Isdn RASDT_Isdn
|
|
|
|
#define MPRDT_X25 RASDT_X25
|
|
|
|
#define MPRDT_Vpn RASDT_Vpn
|
|
|
|
#define MPRDT_Pad RASDT_Pad
|
|
|
|
#define MPRDT_Generic RASDT_Generic
|
|
|
|
#define MPRDT_Serial RASDT_Serial
|
|
|
|
#define MPRDT_FrameRelay RASDT_FrameRelay
|
|
|
|
#define MPRDT_Atm RASDT_Atm
|
|
|
|
#define MPRDT_Sonet RASDT_Sonet
|
|
|
|
#define MPRDT_SW56 RASDT_SW56
|
|
|
|
#define MPRDT_Irda RASDT_Irda
|
|
|
|
#define MPRDT_Parallel RASDT_Parallel
|
|
|
|
#define MPRDM_DialAll RASEDM_DialAll
|
|
|
|
#define MPRDM_DialAsNeeded RASEDM_DialAsNeeded
|
|
|
|
#define MPRIDS_Disabled RASIDS_Disabled
|
|
|
|
#define MPRIDS_UseGlobalValue RASIDS_UseGlobalValue
|
|
|
|
#define MPRET_Phone RASET_Phone
|
|
|
|
#define MPRET_Vpn RASET_Vpn
|
|
|
|
#define MPRET_Direct RASET_Direct
|
|
|
|
#define MPR_ET_None ET_None
|
|
|
|
#define MPR_ET_Require ET_Require
|
|
|
|
#define MPR_ET_RequireMax ET_RequireMax
|
|
|
|
#define MPR_ET_Optional ET_Optional
|
|
|
|
#define MPR_VS_Default VS_Default
|
|
|
|
#define MPR_VS_PptpOnly VS_PptpOnly
|
|
|
|
#define MPR_VS_PptpFirst VS_PptpFirst
|
|
|
|
#define MPR_VS_L2tpOnly VS_L2tpOnly
|
|
|
|
#define MPR_VS_L2tpFirst VS_L2tpFirst
|
2006-05-02 12:51:52 +02:00
|
|
|
typedef struct _MPR_INTERFACE_3 {
|
|
|
|
WCHAR wszInterfaceName[MAX_INTERFACE_NAME_LEN+1];
|
|
|
|
HANDLE hInterface;
|
|
|
|
BOOL fEnabled;
|
|
|
|
ROUTER_INTERFACE_TYPE dwIfType;
|
|
|
|
ROUTER_CONNECTION_STATE dwConnectionState;
|
|
|
|
DWORD fUnReachabilityReasons;
|
|
|
|
DWORD dwLastError;
|
|
|
|
DWORD dwfOptions;
|
|
|
|
WCHAR szLocalPhoneNumber[RAS_MaxPhoneNumber+1];
|
|
|
|
PWCHAR szAlternates;
|
|
|
|
DWORD ipaddr;
|
|
|
|
DWORD ipaddrDns;
|
|
|
|
DWORD ipaddrDnsAlt;
|
|
|
|
DWORD ipaddrWins;
|
|
|
|
DWORD ipaddrWinsAlt;
|
|
|
|
DWORD dwfNetProtocols;
|
|
|
|
WCHAR szDeviceType[MPR_MaxDeviceType+1];
|
|
|
|
WCHAR szDeviceName[MPR_MaxDeviceName+1];
|
|
|
|
WCHAR szX25PadType[MPR_MaxPadType+1];
|
|
|
|
WCHAR szX25Address[MPR_MaxX25Address+1];
|
|
|
|
WCHAR szX25Facilities[MPR_MaxFacilities+1];
|
|
|
|
WCHAR szX25UserData[MPR_MaxUserData+1];
|
|
|
|
DWORD dwChannels;
|
|
|
|
DWORD dwSubEntries;
|
|
|
|
DWORD dwDialMode;
|
|
|
|
DWORD dwDialExtraPercent;
|
|
|
|
DWORD dwDialExtraSampleSeconds;
|
|
|
|
DWORD dwHangUpExtraPercent;
|
|
|
|
DWORD dwHangUpExtraSampleSeconds;
|
|
|
|
DWORD dwIdleDisconnectSeconds;
|
|
|
|
DWORD dwType;
|
|
|
|
DWORD dwEncryptionType;
|
|
|
|
DWORD dwCustomAuthKey;
|
|
|
|
DWORD dwCustomAuthDataSize;
|
|
|
|
LPBYTE lpbCustomAuthData;
|
|
|
|
GUID guidId;
|
|
|
|
DWORD dwVpnStrategy;
|
|
|
|
ULONG AddressCount;
|
|
|
|
IN6_ADDR ipv6addrDns;
|
|
|
|
IN6_ADDR ipv6addrDnsAlt;
|
|
|
|
IN6_ADDR* ipv6addr;
|
|
|
|
} MPR_INTERFACE_3,*PMPR_INTERFACE_3;
|
|
|
|
typedef struct _MPR_SERVER_0 {
|
|
|
|
BOOL fLanOnlyMode;
|
|
|
|
DWORD dwUpTime;
|
|
|
|
DWORD dwTotalPorts;
|
|
|
|
DWORD dwPortsInUse;
|
|
|
|
} MPR_SERVER_0,*PMPR_SERVER_0;
|
|
|
|
#if (_WIN32_WINNT >= 0x0502)
|
|
|
|
typedef struct _MPR_SERVER_1 {
|
|
|
|
DWORD dwNumPptpPorts;
|
|
|
|
DWORD dwPptpPortFlags;
|
|
|
|
DWORD dwNumL2tpPorts;
|
|
|
|
DWORD dwL2tpPortFlags;
|
|
|
|
} MPR_SERVER_1,*PMPR_SERVER_1;
|
2006-05-12 07:59:41 +02:00
|
|
|
#define MPR_ENABLE_RAS_ON_DEVICE 0x00000001
|
|
|
|
#define MPR_ENABLE_ROUTING_ON_DEVICE 0x00000002
|
2006-05-02 12:51:52 +02:00
|
|
|
#endif
|
|
|
|
typedef struct _MPR_TRANSPORT_0 {
|
|
|
|
DWORD dwTransportId;
|
|
|
|
HANDLE hTransport;
|
|
|
|
WCHAR wszTransportName[MAX_TRANSPORT_NAME_LEN+1];
|
|
|
|
} MPR_TRANSPORT_0,*PMPR_TRANSPORT_0;
|
2006-05-02 14:21:21 +02:00
|
|
|
typedef HANDLE RAS_SERVER_HANDLE;
|
2006-05-03 19:14:59 +02:00
|
|
|
typedef HANDLE MPR_SERVER_HANDLE;
|
2006-05-12 07:59:41 +02:00
|
|
|
/*--- Remote Access Service Administration Reference - RAS Administration Functions */
|
2006-05-02 14:21:21 +02:00
|
|
|
DWORD WINAPI MprAdminConnectionClearStats(RAS_SERVER_HANDLE,HANDLE);
|
|
|
|
DWORD WINAPI MprAdminConnectionEnum(RAS_SERVER_HANDLE,DWORD,LPBYTE*,DWORD,LPDWORD,LPDWORD,LPDWORD);
|
|
|
|
DWORD WINAPI MprAdminConnectionGetInfo(RAS_SERVER_HANDLE,DWORD,HANDLE,LPBYTE*);
|
|
|
|
DWORD WINAPI MprAdminConnectionRemoveQuarantine(HANDLE,HANDLE,BOOL);
|
|
|
|
DWORD WINAPI MprAdminPortClearStats(RAS_SERVER_HANDLE,HANDLE);
|
|
|
|
DWORD WINAPI MprAdminPortDisconnect(RAS_SERVER_HANDLE,HANDLE);
|
|
|
|
DWORD WINAPI MprAdminPortEnum(RAS_SERVER_HANDLE,DWORD,HANDLE,LPBYTE*,DWORD,LPDWORD,LPDWORD,LPDWORD);
|
|
|
|
DWORD WINAPI MprAdminPortGetInfo(RAS_SERVER_HANDLE,DWORD,HANDLE,LPBYTE);
|
|
|
|
DWORD WINAPI MprAdminPortReset(RAS_SERVER_HANDLE,HANDLE);
|
2006-05-12 07:59:41 +02:00
|
|
|
/*--- Remote Access Service Administration Reference - RAS Administration Functions - RAS Admin DLL Functions */
|
|
|
|
BOOL WINAPI MprAdminAcceptNewConnection(RAS_CONNECTION_0*,RAS_CONNECTION_1*);
|
|
|
|
BOOL WINAPI MprAdminAcceptNewConnection2(RAS_CONNECTION_0*,RAS_CONNECTION_1*,RAS_CONNECTION_2*);
|
|
|
|
BOOL WINAPI MprAdminAcceptNewLink(RAS_PORT_0*,RAS_PORT_1*);
|
|
|
|
BOOL WINAPI MprAdminAcceptReauthentication(RAS_CONNECTION_0*,RAS_CONNECTION_1*,RAS_CONNECTION_2*,RAS_CONNECTION_3*);
|
|
|
|
void WINAPI MprAdminConnectionHangupNotification(RAS_CONNECTION_0*,RAS_CONNECTION_1*);
|
|
|
|
void WINAPI MprAdminConnectionHangupNotification2(RAS_CONNECTION_0*,RAS_CONNECTION_1*,RAS_CONNECTION_2*);
|
|
|
|
DWORD WINAPI MprAdminGetIpAddressForUser(WCHAR*,WCHAR*,DWORD*,BOOL*);
|
|
|
|
#if (_WIN32_WINNT >= 0x0502)
|
|
|
|
DWORD WINAPI MprAdminInitializeDll(void);
|
|
|
|
DWORD WINAPI MprAdminTerminateDll(void);
|
|
|
|
#endif
|
|
|
|
void WINAPI MprAdminLinkHangupNotification(RAS_PORT_0*,RAS_PORT_1*);
|
|
|
|
void WINAPI MprAdminReleaseIpAddress(WCHAR*,WCHAR*,DWORD*);
|
|
|
|
/*--- Remote Access Service Administration Reference - RAS Administration Functions - RAS User Administration Functions */
|
2006-05-03 19:14:59 +02:00
|
|
|
DWORD WINAPI MprAdminGetPDCServer(const WCHAR*,const WCHAR*,LPWSTR);
|
|
|
|
DWORD WINAPI MprAdminSendUserMessage(MPR_SERVER_HANDLE,HANDLE,LPWSTR);
|
|
|
|
DWORD WINAPI MprAdminUserGetInfo(const WCHAR*,const WCHAR*,DWORD,LPBYTE);
|
|
|
|
DWORD WINAPI MprAdminUserSetInfo(const WCHAR*,const WCHAR*,DWORD,const LPBYTE);
|
2006-05-12 07:59:41 +02:00
|
|
|
#endif /* (_WIN32_WINNT >= 0x0500) */
|
2006-05-02 12:51:52 +02:00
|
|
|
|
|
|
|
#ifdef __cplusplus
|
|
|
|
}
|
|
|
|
#endif
|
|
|
|
#endif
|