[1166] | 1 | /**
|
---|
| 2 | * This file has no copyright assigned and is placed in the Public Domain.
|
---|
| 3 | * This file is part of the mingw-w64 runtime package.
|
---|
| 4 | * No warranty is given; refer to the file DISCLAIMER.PD within this package.
|
---|
| 5 | */
|
---|
| 6 | #ifndef __ROUTING_MPRADMIN_H__
|
---|
| 7 | #define __ROUTING_MPRADMIN_H__
|
---|
| 8 |
|
---|
| 9 | #include <winapifamily.h>
|
---|
| 10 |
|
---|
| 11 | #if WINAPI_FAMILY_PARTITION (WINAPI_PARTITION_DESKTOP)
|
---|
| 12 |
|
---|
| 13 | #include <lmcons.h>
|
---|
| 14 | #include <ras.h>
|
---|
| 15 | #include <in6addr.h>
|
---|
| 16 | #include <wincrypt.h>
|
---|
| 17 |
|
---|
| 18 | #ifdef __cplusplus
|
---|
| 19 | extern "C" {
|
---|
| 20 | #endif
|
---|
| 21 |
|
---|
| 22 | #ifndef CALLBACK
|
---|
| 23 | #define CALLBACK WINAPI
|
---|
| 24 | #endif
|
---|
| 25 |
|
---|
| 26 | #define RRAS_SERVICE_NAME TEXT("RemoteAccess")
|
---|
| 27 |
|
---|
| 28 | #define PID_IPX 0x0000002B
|
---|
| 29 | #define PID_IP 0x00000021
|
---|
| 30 | #define PID_NBF 0x0000003F
|
---|
| 31 | #define PID_ATALK 0x00000029
|
---|
| 32 |
|
---|
| 33 | #define MAX_INTERFACE_NAME_LEN 256
|
---|
| 34 | #define MAX_TRANSPORT_NAME_LEN 40
|
---|
| 35 | #define MAX_MEDIA_NAME 16
|
---|
| 36 | #define MAX_PORT_NAME 16
|
---|
| 37 | #define MAX_DEVICE_NAME 128
|
---|
| 38 | #define MAX_PHONE_NUMBER_LEN 128
|
---|
| 39 | #define MAX_DEVICETYPE_NAME 16
|
---|
| 40 |
|
---|
| 41 | typedef enum _ROUTER_INTERFACE_TYPE {
|
---|
| 42 | ROUTER_IF_TYPE_CLIENT,ROUTER_IF_TYPE_HOME_ROUTER,ROUTER_IF_TYPE_FULL_ROUTER,ROUTER_IF_TYPE_DEDICATED,ROUTER_IF_TYPE_INTERNAL,
|
---|
| 43 | ROUTER_IF_TYPE_LOOPBACK,ROUTER_IF_TYPE_TUNNEL1,ROUTER_IF_TYPE_DIALOUT
|
---|
| 44 | } ROUTER_INTERFACE_TYPE;
|
---|
| 45 |
|
---|
| 46 | typedef enum _ROUTER_CONNECTION_STATE {
|
---|
| 47 | ROUTER_IF_STATE_UNREACHABLE,ROUTER_IF_STATE_DISCONNECTED,ROUTER_IF_STATE_CONNECTING,ROUTER_IF_STATE_CONNECTED
|
---|
| 48 | } ROUTER_CONNECTION_STATE;
|
---|
| 49 |
|
---|
| 50 | #define MPR_INTERFACE_OUT_OF_RESOURCES 0x00000001
|
---|
| 51 | #define MPR_INTERFACE_ADMIN_DISABLED 0x00000002
|
---|
| 52 | #define MPR_INTERFACE_CONNECTION_FAILURE 0x00000004
|
---|
| 53 | #define MPR_INTERFACE_SERVICE_PAUSED 0x00000008
|
---|
| 54 | #define MPR_INTERFACE_DIALOUT_HOURS_RESTRICTION 0x00000010
|
---|
| 55 | #define MPR_INTERFACE_NO_MEDIA_SENSE 0x00000020
|
---|
| 56 | #define MPR_INTERFACE_NO_DEVICE 0x00000040
|
---|
| 57 |
|
---|
| 58 | typedef struct _MPR_INTERFACE_0 {
|
---|
| 59 | WCHAR wszInterfaceName[MAX_INTERFACE_NAME_LEN+1];
|
---|
| 60 | HANDLE hInterface;
|
---|
| 61 | WINBOOL fEnabled;
|
---|
| 62 | ROUTER_INTERFACE_TYPE dwIfType;
|
---|
| 63 | ROUTER_CONNECTION_STATE dwConnectionState;
|
---|
| 64 | DWORD fUnReachabilityReasons;
|
---|
| 65 | DWORD dwLastError;
|
---|
| 66 | } MPR_INTERFACE_0,*PMPR_INTERFACE_0;
|
---|
| 67 |
|
---|
| 68 | typedef struct _MPR_IPINIP_INTERFACE_0 {
|
---|
| 69 | WCHAR wszFriendlyName[MAX_INTERFACE_NAME_LEN+1];
|
---|
| 70 | GUID Guid;
|
---|
| 71 | } MPR_IPINIP_INTERFACE_0,*PMPR_IPINIP_INTERFACE_0;
|
---|
| 72 |
|
---|
| 73 | typedef struct _MPR_INTERFACE_1 {
|
---|
| 74 | WCHAR wszInterfaceName[MAX_INTERFACE_NAME_LEN+1];
|
---|
| 75 | HANDLE hInterface;
|
---|
| 76 | WINBOOL fEnabled;
|
---|
| 77 | ROUTER_INTERFACE_TYPE dwIfType;
|
---|
| 78 | ROUTER_CONNECTION_STATE dwConnectionState;
|
---|
| 79 | DWORD fUnReachabilityReasons;
|
---|
| 80 | DWORD dwLastError;
|
---|
| 81 | LPWSTR lpwsDialoutHoursRestriction;
|
---|
| 82 |
|
---|
| 83 | } MPR_INTERFACE_1,*PMPR_INTERFACE_1;
|
---|
| 84 |
|
---|
| 85 | #define MPR_MaxDeviceType RAS_MaxDeviceType
|
---|
| 86 | #define MPR_MaxPhoneNumber RAS_MaxPhoneNumber
|
---|
| 87 | #define MPR_MaxIpAddress RAS_MaxIpAddress
|
---|
| 88 | #define MPR_MaxIpxAddress RAS_MaxIpxAddress
|
---|
| 89 |
|
---|
| 90 | #define MPR_MaxEntryName RAS_MaxEntryName
|
---|
| 91 | #define MPR_MaxDeviceName RAS_MaxDeviceName
|
---|
| 92 | #define MPR_MaxCallbackNumber RAS_MaxCallbackNumber
|
---|
| 93 |
|
---|
| 94 | #define MPR_MaxAreaCode RAS_MaxAreaCode
|
---|
| 95 | #define MPR_MaxPadType RAS_MaxPadType
|
---|
| 96 | #define MPR_MaxX25Address RAS_MaxX25Address
|
---|
| 97 | #define MPR_MaxFacilities RAS_MaxFacilities
|
---|
| 98 | #define MPR_MaxUserData RAS_MaxUserData
|
---|
| 99 |
|
---|
| 100 | #define MPRIO_SpecificIpAddr RASEO_SpecificIpAddr
|
---|
| 101 | #define MPRIO_SpecificNameServers RASEO_SpecificNameServers
|
---|
| 102 | #define MPRIO_IpHeaderCompression RASEO_IpHeaderCompression
|
---|
| 103 | #define MPRIO_RemoteDefaultGateway RASEO_RemoteDefaultGateway
|
---|
| 104 | #define MPRIO_DisableLcpExtensions RASEO_DisableLcpExtensions
|
---|
| 105 | #define MPRIO_SwCompression RASEO_SwCompression
|
---|
| 106 | #define MPRIO_RequireEncryptedPw RASEO_RequireEncryptedPw
|
---|
| 107 | #define MPRIO_RequireMsEncryptedPw RASEO_RequireMsEncryptedPw
|
---|
| 108 | #define MPRIO_RequireDataEncryption RASEO_RequireDataEncryption
|
---|
| 109 | #define MPRIO_NetworkLogon RASEO_NetworkLogon
|
---|
| 110 | #define MPRIO_PromoteAlternates RASEO_PromoteAlternates
|
---|
| 111 | #define MPRIO_SecureLocalFiles RASEO_SecureLocalFiles
|
---|
| 112 | #define MPRIO_RequireEAP RASEO_RequireEAP
|
---|
| 113 | #define MPRIO_RequirePAP RASEO_RequirePAP
|
---|
| 114 | #define MPRIO_RequireSPAP RASEO_RequireSPAP
|
---|
| 115 | #define MPRIO_SharedPhoneNumbers RASEO_SharedPhoneNumbers
|
---|
| 116 | #define MPRIO_RequireCHAP RASEO_RequireCHAP
|
---|
| 117 | #define MPRIO_RequireMsCHAP RASEO_RequireMsCHAP
|
---|
| 118 | #define MPRIO_RequireMsCHAP2 RASEO_RequireMsCHAP2
|
---|
| 119 | #define MPRIO_IpSecPreSharedKey 0x80000000
|
---|
| 120 |
|
---|
| 121 | #define MPRNP_Ipx RASNP_Ipx
|
---|
| 122 | #define MPRNP_Ip RASNP_Ip
|
---|
| 123 |
|
---|
| 124 | #define MPRDT_Modem RASDT_Modem
|
---|
| 125 | #define MPRDT_Isdn RASDT_Isdn
|
---|
| 126 | #define MPRDT_X25 RASDT_X25
|
---|
| 127 | #define MPRDT_Vpn RASDT_Vpn
|
---|
| 128 | #define MPRDT_Pad RASDT_Pad
|
---|
| 129 | #define MPRDT_Generic RASDT_Generic
|
---|
| 130 | #define MPRDT_Serial RASDT_Serial
|
---|
| 131 | #define MPRDT_FrameRelay RASDT_FrameRelay
|
---|
| 132 | #define MPRDT_Atm RASDT_Atm
|
---|
| 133 | #define MPRDT_Sonet RASDT_Sonet
|
---|
| 134 | #define MPRDT_SW56 RASDT_SW56
|
---|
| 135 | #define MPRDT_Irda RASDT_Irda
|
---|
| 136 | #define MPRDT_Parallel RASDT_Parallel
|
---|
| 137 |
|
---|
| 138 | #define MPRET_Phone RASET_Phone
|
---|
| 139 | #define MPRET_Vpn RASET_Vpn
|
---|
| 140 | #define MPRET_Direct RASET_Direct
|
---|
| 141 |
|
---|
| 142 | #define MPRDM_DialFirst 0
|
---|
| 143 | #define MPRDM_DialAll RASEDM_DialAll
|
---|
| 144 | #define MPRDM_DialAsNeeded RASEDM_DialAsNeeded
|
---|
| 145 |
|
---|
| 146 | #define MPRIDS_Disabled RASIDS_Disabled
|
---|
| 147 | #define MPRIDS_UseGlobalValue RASIDS_UseGlobalValue
|
---|
| 148 |
|
---|
| 149 | #define MPR_ET_None ET_None
|
---|
| 150 | #define MPR_ET_Require ET_Require
|
---|
| 151 | #define MPR_ET_RequireMax ET_RequireMax
|
---|
| 152 | #define MPR_ET_Optional ET_Optional
|
---|
| 153 |
|
---|
| 154 | #define MPR_VS_Default VS_Default
|
---|
| 155 | #define MPR_VS_PptpOnly VS_PptpOnly
|
---|
| 156 | #define MPR_VS_PptpFirst VS_PptpFirst
|
---|
| 157 | #define MPR_VS_L2tpOnly VS_L2tpOnly
|
---|
| 158 | #define MPR_VS_L2tpFirst VS_L2tpFirst
|
---|
| 159 |
|
---|
| 160 | typedef struct _MPR_INTERFACE_2 {
|
---|
| 161 | WCHAR wszInterfaceName[MAX_INTERFACE_NAME_LEN+1];
|
---|
| 162 | HANDLE hInterface;
|
---|
| 163 | WINBOOL fEnabled;
|
---|
| 164 | ROUTER_INTERFACE_TYPE dwIfType;
|
---|
| 165 | ROUTER_CONNECTION_STATE dwConnectionState;
|
---|
| 166 | DWORD fUnReachabilityReasons;
|
---|
| 167 | DWORD dwLastError;
|
---|
| 168 | DWORD dwfOptions;
|
---|
| 169 | WCHAR szLocalPhoneNumber[RAS_MaxPhoneNumber + 1 ];
|
---|
| 170 | PWCHAR szAlternates;
|
---|
| 171 | DWORD ipaddr;
|
---|
| 172 | DWORD ipaddrDns;
|
---|
| 173 | DWORD ipaddrDnsAlt;
|
---|
| 174 | DWORD ipaddrWins;
|
---|
| 175 | DWORD ipaddrWinsAlt;
|
---|
| 176 | DWORD dwfNetProtocols;
|
---|
| 177 | WCHAR szDeviceType[MPR_MaxDeviceType + 1 ];
|
---|
| 178 | WCHAR szDeviceName[MPR_MaxDeviceName + 1 ];
|
---|
| 179 | WCHAR szX25PadType[MPR_MaxPadType + 1 ];
|
---|
| 180 | WCHAR szX25Address[MPR_MaxX25Address + 1 ];
|
---|
| 181 | WCHAR szX25Facilities[MPR_MaxFacilities + 1 ];
|
---|
| 182 | WCHAR szX25UserData[MPR_MaxUserData + 1 ];
|
---|
| 183 | DWORD dwChannels;
|
---|
| 184 | DWORD dwSubEntries;
|
---|
| 185 | DWORD dwDialMode;
|
---|
| 186 | DWORD dwDialExtraPercent;
|
---|
| 187 | DWORD dwDialExtraSampleSeconds;
|
---|
| 188 | DWORD dwHangUpExtraPercent;
|
---|
| 189 | DWORD dwHangUpExtraSampleSeconds;
|
---|
| 190 | DWORD dwIdleDisconnectSeconds;
|
---|
| 191 | DWORD dwType;
|
---|
| 192 | DWORD dwEncryptionType;
|
---|
| 193 | DWORD dwCustomAuthKey;
|
---|
| 194 | DWORD dwCustomAuthDataSize;
|
---|
| 195 | LPBYTE lpbCustomAuthData;
|
---|
| 196 | GUID guidId;
|
---|
| 197 | DWORD dwVpnStrategy;
|
---|
| 198 | } MPR_INTERFACE_2,*PMPR_INTERFACE_2;
|
---|
| 199 |
|
---|
| 200 | #if (_WIN32_WINNT >= 0x0600)
|
---|
| 201 | typedef struct _MPR_INTERFACE_3 {
|
---|
| 202 | WCHAR wszInterfaceName[MAX_INTERFACE_NAME_LEN+1];
|
---|
| 203 | HANDLE hInterface;
|
---|
| 204 | WINBOOL fEnabled;
|
---|
| 205 | ROUTER_INTERFACE_TYPE dwIfType;
|
---|
| 206 | ROUTER_CONNECTION_STATE dwConnectionState;
|
---|
| 207 | DWORD fUnReachabilityReasons;
|
---|
| 208 | DWORD dwLastError;
|
---|
| 209 | DWORD dwfOptions;
|
---|
| 210 | WCHAR szLocalPhoneNumber[RAS_MaxPhoneNumber + 1];
|
---|
| 211 | PWCHAR szAlternates;
|
---|
| 212 | DWORD ipaddr;
|
---|
| 213 | DWORD ipaddrDns;
|
---|
| 214 | DWORD ipaddrDnsAlt;
|
---|
| 215 | DWORD ipaddrWins;
|
---|
| 216 | DWORD ipaddrWinsAlt;
|
---|
| 217 | DWORD dwfNetProtocols;
|
---|
| 218 | WCHAR szDeviceType[MPR_MaxDeviceType + 1];
|
---|
| 219 | WCHAR szDeviceName[MPR_MaxDeviceName + 1];
|
---|
| 220 | WCHAR szX25PadType[MPR_MaxPadType + 1];
|
---|
| 221 | WCHAR szX25Address[MPR_MaxX25Address + 1];
|
---|
| 222 | WCHAR szX25Facilities[MPR_MaxFacilities + 1];
|
---|
| 223 | WCHAR szX25UserData[MPR_MaxUserData + 1];
|
---|
| 224 | DWORD dwChannels;
|
---|
| 225 | DWORD dwSubEntries;
|
---|
| 226 | DWORD dwDialMode;
|
---|
| 227 | DWORD dwDialExtraPercent;
|
---|
| 228 | DWORD dwDialExtraSampleSeconds;
|
---|
| 229 | DWORD dwHangUpExtraPercent;
|
---|
| 230 | DWORD dwHangUpExtraSampleSeconds;
|
---|
| 231 | DWORD dwIdleDisconnectSeconds;
|
---|
| 232 | DWORD dwType;
|
---|
| 233 | DWORD dwEncryptionType;
|
---|
| 234 | DWORD dwCustomAuthKey;
|
---|
| 235 | DWORD dwCustomAuthDataSize;
|
---|
| 236 | LPBYTE lpbCustomAuthData;
|
---|
| 237 | GUID guidId;
|
---|
| 238 | DWORD dwVpnStrategy;
|
---|
| 239 | ULONG AddressCount;
|
---|
| 240 | IN6_ADDR ipv6addrDns;
|
---|
| 241 | IN6_ADDR ipv6addrDnsAlt;
|
---|
| 242 | IN6_ADDR * ipv6addr;
|
---|
| 243 | } MPR_INTERFACE_3, *PMPR_INTERFACE_3;
|
---|
| 244 | #endif
|
---|
| 245 |
|
---|
| 246 | typedef struct _MPR_DEVICE_0 {
|
---|
| 247 | WCHAR szDeviceType[MPR_MaxDeviceType + 1 ];
|
---|
| 248 | WCHAR szDeviceName[MPR_MaxDeviceName + 1 ];
|
---|
| 249 | } MPR_DEVICE_0,*PMPR_DEVICE_0;
|
---|
| 250 |
|
---|
| 251 | typedef struct _MPR_DEVICE_1 {
|
---|
| 252 | WCHAR szDeviceType[MPR_MaxDeviceType + 1 ];
|
---|
| 253 | WCHAR szDeviceName[MPR_MaxDeviceName + 1 ];
|
---|
| 254 | WCHAR szLocalPhoneNumber[MPR_MaxPhoneNumber + 1 ];
|
---|
| 255 | PWCHAR szAlternates;
|
---|
| 256 | } MPR_DEVICE_1,*PMPR_DEVICE_1;
|
---|
| 257 |
|
---|
| 258 | typedef struct _MPR_CREDENTIALSEX_0 {
|
---|
| 259 | DWORD dwSize;
|
---|
| 260 | LPBYTE lpbCredentialsInfo;
|
---|
| 261 | } MPR_CREDENTIALSEX_0,*PMPR_CREDENTIALSEX_0;
|
---|
| 262 |
|
---|
| 263 | typedef struct _MPR_CREDENTIALSEX_1 {
|
---|
| 264 | DWORD dwSize;
|
---|
| 265 | LPBYTE lpbCredentialsInfo;
|
---|
| 266 | } MPR_CREDENTIALSEX_1,*PMPR_CREDENTIALSEX_1;
|
---|
| 267 |
|
---|
| 268 | typedef struct _MPR_TRANSPORT_0 {
|
---|
| 269 | DWORD dwTransportId;
|
---|
| 270 | HANDLE hTransport;
|
---|
| 271 | WCHAR wszTransportName[MAX_TRANSPORT_NAME_LEN+1];
|
---|
| 272 | } MPR_TRANSPORT_0,*PMPR_TRANSPORT_0;
|
---|
| 273 |
|
---|
| 274 | typedef struct _MPR_IFTRANSPORT_0
|
---|
| 275 | {
|
---|
| 276 | DWORD dwTransportId;
|
---|
| 277 | HANDLE hIfTransport;
|
---|
| 278 | WCHAR wszIfTransportName[MAX_TRANSPORT_NAME_LEN+1];
|
---|
| 279 |
|
---|
| 280 | }
|
---|
| 281 | MPR_IFTRANSPORT_0,*PMPR_IFTRANSPORT_0;
|
---|
| 282 |
|
---|
| 283 | typedef struct _MPR_SERVER_0
|
---|
| 284 | {
|
---|
| 285 | WINBOOL fLanOnlyMode;
|
---|
| 286 | DWORD dwUpTime;
|
---|
| 287 | DWORD dwTotalPorts;
|
---|
| 288 | DWORD dwPortsInUse;
|
---|
| 289 |
|
---|
| 290 | }
|
---|
| 291 | MPR_SERVER_0,*PMPR_SERVER_0;
|
---|
| 292 |
|
---|
| 293 | #define MPR_ENABLE_RAS_ON_DEVICE 0x00000001
|
---|
| 294 | #define MPR_ENABLE_ROUTING_ON_DEVICE 0x00000002
|
---|
| 295 |
|
---|
| 296 | typedef struct _MPR_SERVER_1 {
|
---|
| 297 | DWORD dwNumPptpPorts;
|
---|
| 298 | DWORD dwPptpPortFlags;
|
---|
| 299 | DWORD dwNumL2tpPorts;
|
---|
| 300 | DWORD dwL2tpPortFlags;
|
---|
| 301 | } MPR_SERVER_1,*PMPR_SERVER_1;
|
---|
| 302 |
|
---|
| 303 | typedef enum _RAS_PORT_CONDITION {
|
---|
| 304 | RAS_PORT_NON_OPERATIONAL,RAS_PORT_DISCONNECTED,RAS_PORT_CALLING_BACK,RAS_PORT_LISTENING,RAS_PORT_AUTHENTICATING,RAS_PORT_AUTHENTICATED,
|
---|
| 305 | RAS_PORT_INITIALIZING
|
---|
| 306 | } RAS_PORT_CONDITION;
|
---|
| 307 |
|
---|
| 308 | typedef enum _RAS_HARDWARE_CONDITION {
|
---|
| 309 | RAS_HARDWARE_OPERATIONAL,RAS_HARDWARE_FAILURE
|
---|
| 310 | } RAS_HARDWARE_CONDITION;
|
---|
| 311 |
|
---|
| 312 | typedef struct _RAS_PORT_0 {
|
---|
| 313 | HANDLE hPort;
|
---|
| 314 | HANDLE hConnection;
|
---|
| 315 | RAS_PORT_CONDITION dwPortCondition;
|
---|
| 316 | DWORD dwTotalNumberOfCalls;
|
---|
| 317 | DWORD dwConnectDuration;
|
---|
| 318 | WCHAR wszPortName[MAX_PORT_NAME + 1 ];
|
---|
| 319 | WCHAR wszMediaName[MAX_MEDIA_NAME + 1 ];
|
---|
| 320 | WCHAR wszDeviceName[MAX_DEVICE_NAME + 1 ];
|
---|
| 321 | WCHAR wszDeviceType[MAX_DEVICETYPE_NAME + 1 ];
|
---|
| 322 | } RAS_PORT_0,*PRAS_PORT_0;
|
---|
| 323 |
|
---|
| 324 | typedef struct _RAS_PORT_1 {
|
---|
| 325 | HANDLE hPort;
|
---|
| 326 | HANDLE hConnection;
|
---|
| 327 | RAS_HARDWARE_CONDITION dwHardwareCondition;
|
---|
| 328 | DWORD dwLineSpeed;
|
---|
| 329 | DWORD dwBytesXmited;
|
---|
| 330 | DWORD dwBytesRcved;
|
---|
| 331 | DWORD dwFramesXmited;
|
---|
| 332 | DWORD dwFramesRcved;
|
---|
| 333 | DWORD dwCrcErr;
|
---|
| 334 | DWORD dwTimeoutErr;
|
---|
| 335 | DWORD dwAlignmentErr;
|
---|
| 336 | DWORD dwHardwareOverrunErr;
|
---|
| 337 | DWORD dwFramingErr;
|
---|
| 338 | DWORD dwBufferOverrunErr;
|
---|
| 339 | DWORD dwCompressionRatioIn;
|
---|
| 340 | DWORD dwCompressionRatioOut;
|
---|
| 341 | } RAS_PORT_1,*PRAS_PORT_1;
|
---|
| 342 |
|
---|
| 343 | #define IPADDRESSLEN 15
|
---|
| 344 | #define IPXADDRESSLEN 22
|
---|
| 345 | #define ATADDRESSLEN 32
|
---|
| 346 | #define MAXIPADRESSLEN 64
|
---|
| 347 |
|
---|
| 348 | typedef struct _PPP_NBFCP_INFO {
|
---|
| 349 | DWORD dwError;
|
---|
| 350 | WCHAR wszWksta[NETBIOS_NAME_LEN + 1 ];
|
---|
| 351 | } PPP_NBFCP_INFO;
|
---|
| 352 |
|
---|
| 353 | typedef struct _PPP_IPCP_INFO {
|
---|
| 354 | DWORD dwError;
|
---|
| 355 | WCHAR wszAddress[IPADDRESSLEN + 1 ];
|
---|
| 356 | WCHAR wszRemoteAddress[IPADDRESSLEN + 1 ];
|
---|
| 357 | } PPP_IPCP_INFO;
|
---|
| 358 |
|
---|
| 359 | #define PPP_IPCP_VJ 0x00000001
|
---|
| 360 |
|
---|
| 361 | typedef struct _PPP_IPCP_INFO2 {
|
---|
| 362 | DWORD dwError;
|
---|
| 363 | WCHAR wszAddress[IPADDRESSLEN + 1 ];
|
---|
| 364 | WCHAR wszRemoteAddress[IPADDRESSLEN + 1 ];
|
---|
| 365 | DWORD dwOptions;
|
---|
| 366 | DWORD dwRemoteOptions;
|
---|
| 367 | } PPP_IPCP_INFO2;
|
---|
| 368 |
|
---|
| 369 | typedef struct _PPP_IPXCP_INFO {
|
---|
| 370 | DWORD dwError;
|
---|
| 371 | WCHAR wszAddress[IPXADDRESSLEN + 1 ];
|
---|
| 372 | } PPP_IPXCP_INFO;
|
---|
| 373 |
|
---|
| 374 | typedef struct _PPP_ATCP_INFO {
|
---|
| 375 | DWORD dwError;
|
---|
| 376 | WCHAR wszAddress[ATADDRESSLEN + 1 ];
|
---|
| 377 | } PPP_ATCP_INFO;
|
---|
| 378 |
|
---|
| 379 | typedef struct _PPP_INFO {
|
---|
| 380 | PPP_NBFCP_INFO nbf;
|
---|
| 381 | PPP_IPCP_INFO ip;
|
---|
| 382 | PPP_IPXCP_INFO ipx;
|
---|
| 383 | PPP_ATCP_INFO at;
|
---|
| 384 | } PPP_INFO;
|
---|
| 385 |
|
---|
| 386 | #define RASCCPCA_MPPC 0x00000006
|
---|
| 387 | #define RASCCPCA_STAC 0x00000005
|
---|
| 388 |
|
---|
| 389 | #define PPP_CCP_COMPRESSION 0x00000001
|
---|
| 390 | #define PPP_CCP_ENCRYPTION40BITOLD 0x00000010
|
---|
| 391 | #define PPP_CCP_ENCRYPTION40BIT 0x00000020
|
---|
| 392 | #define PPP_CCP_ENCRYPTION128BIT 0x00000040
|
---|
| 393 | #define PPP_CCP_ENCRYPTION56BIT 0x00000080
|
---|
| 394 | #define PPP_CCP_HISTORYLESS 0x01000000
|
---|
| 395 |
|
---|
| 396 | typedef struct _PPP_CCP_INFO {
|
---|
| 397 | DWORD dwError;
|
---|
| 398 | DWORD dwCompressionAlgorithm;
|
---|
| 399 | DWORD dwOptions;
|
---|
| 400 | DWORD dwRemoteCompressionAlgorithm;
|
---|
| 401 | DWORD dwRemoteOptions;
|
---|
| 402 | } PPP_CCP_INFO;
|
---|
| 403 |
|
---|
| 404 | #define PPP_LCP_PAP 0xC023
|
---|
| 405 | #define PPP_LCP_SPAP 0xC027
|
---|
| 406 | #define PPP_LCP_CHAP 0xC223
|
---|
| 407 | #define PPP_LCP_EAP 0xC227
|
---|
| 408 |
|
---|
| 409 | #define PPP_LCP_CHAP_MD5 0x05
|
---|
| 410 | #define PPP_LCP_CHAP_MS 0x80
|
---|
| 411 | #define PPP_LCP_CHAP_MSV2 0x81
|
---|
| 412 |
|
---|
| 413 | #define PPP_LCP_MULTILINK_FRAMING 0x00000001
|
---|
| 414 | #define PPP_LCP_PFC 0x00000002
|
---|
| 415 | #define PPP_LCP_ACFC 0x00000004
|
---|
| 416 | #define PPP_LCP_SSHF 0x00000008
|
---|
| 417 | #define PPP_LCP_DES_56 0x00000010
|
---|
| 418 | #define PPP_LCP_3_DES 0x00000020
|
---|
| 419 |
|
---|
| 420 | typedef struct _PPP_LCP_INFO {
|
---|
| 421 | DWORD dwError;
|
---|
| 422 | DWORD dwAuthenticationProtocol;
|
---|
| 423 | DWORD dwAuthenticationData;
|
---|
| 424 | DWORD dwRemoteAuthenticationProtocol;
|
---|
| 425 | DWORD dwRemoteAuthenticationData;
|
---|
| 426 | DWORD dwTerminateReason;
|
---|
| 427 | DWORD dwRemoteTerminateReason;
|
---|
| 428 | DWORD dwOptions;
|
---|
| 429 | DWORD dwRemoteOptions;
|
---|
| 430 | DWORD dwEapTypeId;
|
---|
| 431 | DWORD dwRemoteEapTypeId;
|
---|
| 432 | } PPP_LCP_INFO;
|
---|
| 433 |
|
---|
| 434 | typedef struct _PPP_INFO_2 {
|
---|
| 435 | PPP_NBFCP_INFO nbf;
|
---|
| 436 | PPP_IPCP_INFO2 ip;
|
---|
| 437 | PPP_IPXCP_INFO ipx;
|
---|
| 438 | PPP_ATCP_INFO at;
|
---|
| 439 | PPP_CCP_INFO ccp;
|
---|
| 440 | PPP_LCP_INFO lcp;
|
---|
| 441 | } PPP_INFO_2;
|
---|
| 442 |
|
---|
| 443 | #define RAS_FLAGS_PPP_CONNECTION 0x00000001
|
---|
| 444 | #define RAS_FLAGS_MESSENGER_PRESENT 0x00000002
|
---|
| 445 | #define RAS_FLAGS_QUARANTINE_PRESENT 0x00000008
|
---|
| 446 |
|
---|
| 447 | typedef struct _RAS_CONNECTION_0 {
|
---|
| 448 | HANDLE hConnection;
|
---|
| 449 | HANDLE hInterface;
|
---|
| 450 | DWORD dwConnectDuration;
|
---|
| 451 | ROUTER_INTERFACE_TYPE dwInterfaceType;
|
---|
| 452 | DWORD dwConnectionFlags;
|
---|
| 453 | WCHAR wszInterfaceName[MAX_INTERFACE_NAME_LEN + 1 ];
|
---|
| 454 | WCHAR wszUserName[UNLEN + 1 ];
|
---|
| 455 | WCHAR wszLogonDomain[DNLEN + 1 ];
|
---|
| 456 | WCHAR wszRemoteComputer[NETBIOS_NAME_LEN + 1 ];
|
---|
| 457 | } RAS_CONNECTION_0,*PRAS_CONNECTION_0;
|
---|
| 458 |
|
---|
| 459 | typedef struct _RAS_CONNECTION_1 {
|
---|
| 460 | HANDLE hConnection;
|
---|
| 461 | HANDLE hInterface;
|
---|
| 462 | PPP_INFO PppInfo;
|
---|
| 463 | DWORD dwBytesXmited;
|
---|
| 464 | DWORD dwBytesRcved;
|
---|
| 465 | DWORD dwFramesXmited;
|
---|
| 466 | DWORD dwFramesRcved;
|
---|
| 467 | DWORD dwCrcErr;
|
---|
| 468 | DWORD dwTimeoutErr;
|
---|
| 469 | DWORD dwAlignmentErr;
|
---|
| 470 | DWORD dwHardwareOverrunErr;
|
---|
| 471 | DWORD dwFramingErr;
|
---|
| 472 | DWORD dwBufferOverrunErr;
|
---|
| 473 | DWORD dwCompressionRatioIn;
|
---|
| 474 | DWORD dwCompressionRatioOut;
|
---|
| 475 | } RAS_CONNECTION_1,*PRAS_CONNECTION_1;
|
---|
| 476 |
|
---|
| 477 | typedef struct _RAS_CONNECTION_2 {
|
---|
| 478 | HANDLE hConnection;
|
---|
| 479 | WCHAR wszUserName[UNLEN + 1 ];
|
---|
| 480 | ROUTER_INTERFACE_TYPE dwInterfaceType;
|
---|
| 481 | GUID guid;
|
---|
| 482 | PPP_INFO_2 PppInfo2;
|
---|
| 483 | } RAS_CONNECTION_2,*PRAS_CONNECTION_2;
|
---|
| 484 |
|
---|
| 485 | #define RASPRIV_NoCallback 0x01
|
---|
| 486 | #define RASPRIV_AdminSetCallback 0x02
|
---|
| 487 | #define RASPRIV_CallerSetCallback 0x04
|
---|
| 488 | #define RASPRIV_DialinPrivilege 0x08
|
---|
| 489 |
|
---|
| 490 | #define RASPRIV2_DialinPolicy 0x1
|
---|
| 491 |
|
---|
| 492 | #define RASPRIV_CallbackType (RASPRIV_AdminSetCallback | RASPRIV_CallerSetCallback | RASPRIV_NoCallback)
|
---|
| 493 |
|
---|
| 494 | typedef struct _RAS_USER_0 {
|
---|
| 495 | BYTE bfPrivilege;
|
---|
| 496 | WCHAR wszPhoneNumber[MAX_PHONE_NUMBER_LEN + 1];
|
---|
| 497 | } RAS_USER_0,*PRAS_USER_0;
|
---|
| 498 |
|
---|
| 499 | typedef struct _RAS_USER_1 {
|
---|
| 500 | BYTE bfPrivilege;
|
---|
| 501 | WCHAR wszPhoneNumber[MAX_PHONE_NUMBER_LEN + 1];
|
---|
| 502 | BYTE bfPrivilege2;
|
---|
| 503 | } RAS_USER_1,*PRAS_USER_1;
|
---|
| 504 |
|
---|
| 505 | typedef HANDLE RAS_SERVER_HANDLE;
|
---|
| 506 | typedef HANDLE MPR_SERVER_HANDLE;
|
---|
| 507 | typedef HANDLE MIB_SERVER_HANDLE;
|
---|
| 508 |
|
---|
| 509 | DWORD WINAPI MprAdminConnectionEnum(RAS_SERVER_HANDLE hRasServer,DWORD dwLevel,LPBYTE *lplpbBuffer,DWORD dwPrefMaxLen,LPDWORD lpdwEntriesRead,LPDWORD lpdwTotalEntries,LPDWORD lpdwResumeHandle);
|
---|
| 510 | DWORD WINAPI MprAdminPortEnum(RAS_SERVER_HANDLE hRasServer,DWORD dwLevel,HANDLE hConnection,LPBYTE *lplpbBuffer,DWORD dwPrefMaxLen,LPDWORD lpdwEntriesRead,LPDWORD lpdwTotalEntries,LPDWORD lpdwResumeHandle);
|
---|
| 511 | DWORD WINAPI MprAdminConnectionGetInfo(RAS_SERVER_HANDLE hRasServer,DWORD dwLevel,HANDLE hConnection,LPBYTE *lplpbBuffer);
|
---|
| 512 | DWORD WINAPI MprAdminPortGetInfo(RAS_SERVER_HANDLE hRasServer,DWORD dwLevel,HANDLE hPort,LPBYTE *lplpbBuffer);
|
---|
| 513 | DWORD WINAPI MprAdminConnectionClearStats(RAS_SERVER_HANDLE hRasServer,HANDLE hConnection);
|
---|
| 514 | DWORD WINAPI MprAdminPortClearStats(RAS_SERVER_HANDLE hRasServer,HANDLE hPort);
|
---|
| 515 | DWORD WINAPI MprAdminPortReset(RAS_SERVER_HANDLE hRasServer,HANDLE hPort);
|
---|
| 516 | DWORD WINAPI MprAdminPortDisconnect(RAS_SERVER_HANDLE hRasServer,HANDLE hPort);
|
---|
| 517 | WINBOOL WINAPI MprAdminAcceptNewConnection(RAS_CONNECTION_0 *pRasConnection0,RAS_CONNECTION_1 *pRasConnection1);
|
---|
| 518 | WINBOOL WINAPI MprAdminAcceptNewConnection2(RAS_CONNECTION_0 *pRasConnection0,RAS_CONNECTION_1 *pRasConnection1,RAS_CONNECTION_2 *pRasConnection2);
|
---|
| 519 | WINBOOL WINAPI MprAdminAcceptNewLink (RAS_PORT_0 *pRasPort0,RAS_PORT_1 *pRasPort1);
|
---|
| 520 | VOID WINAPI MprAdminConnectionHangupNotification(RAS_CONNECTION_0 *pRasConnection0,RAS_CONNECTION_1 *pRasConnection1);
|
---|
| 521 | VOID WINAPI MprAdminConnectionHangupNotification2(RAS_CONNECTION_0 *pRasConnection0,RAS_CONNECTION_1 *pRasConnection1,RAS_CONNECTION_2 *pRasConnection2);
|
---|
| 522 | DWORD WINAPI MprAdminConnectionRemoveQuarantine(HANDLE hRasServer,HANDLE hRasConnection,WINBOOL fIsIpAddress);
|
---|
| 523 | VOID WINAPI MprAdminLinkHangupNotification (RAS_PORT_0 *pRasPort0,RAS_PORT_1 *pRasPort1);
|
---|
| 524 | DWORD WINAPI MprAdminGetIpAddressForUser (WCHAR *lpwszUserName,WCHAR *lpwszPortName,DWORD *lpdwIpAddress,WINBOOL *bNotifyRelease);
|
---|
| 525 | VOID WINAPI MprAdminReleaseIpAddress (WCHAR *lpszUserName,WCHAR *lpszPortName,DWORD *lpdwIpAddress);
|
---|
| 526 | DWORD WINAPI MprAdminInitializeDll(VOID);
|
---|
| 527 | DWORD WINAPI MprAdminTerminateDll(VOID);
|
---|
| 528 | DWORD WINAPI MprAdminUserGetInfo(const WCHAR *lpszServer,const WCHAR *lpszUser,DWORD dwLevel,LPBYTE lpbBuffer);
|
---|
| 529 | DWORD WINAPI MprAdminUserSetInfo(const WCHAR *lpszServer,const WCHAR *lpszUser,DWORD dwLevel,const LPBYTE lpbBuffer);
|
---|
| 530 | DWORD WINAPI MprAdminSendUserMessage(MPR_SERVER_HANDLE hMprServer,HANDLE hConnection,LPWSTR lpwszMessage);
|
---|
| 531 | DWORD WINAPI MprAdminGetPDCServer(const WCHAR *lpszDomain,const WCHAR *lpszServer,LPWSTR lpszPDCServer);
|
---|
| 532 | WINBOOL WINAPI MprAdminIsServiceRunning(LPWSTR lpwsServerName);
|
---|
| 533 | DWORD WINAPI MprAdminServerConnect(LPWSTR lpwsServerName,MPR_SERVER_HANDLE *phMprServer);
|
---|
| 534 | VOID WINAPI MprAdminServerDisconnect(MPR_SERVER_HANDLE hMprServer);
|
---|
| 535 | DWORD WINAPI MprAdminServerGetCredentials(MPR_SERVER_HANDLE hMprServer,DWORD dwLevel,LPBYTE *lplpbBuffer);
|
---|
| 536 | DWORD WINAPI MprAdminServerSetCredentials(MPR_SERVER_HANDLE hMprServer,DWORD dwLevel,LPBYTE lpbBuffer);
|
---|
| 537 | DWORD WINAPI MprAdminBufferFree(LPVOID pBuffer);
|
---|
| 538 | DWORD WINAPI MprAdminGetErrorString(DWORD dwError,LPWSTR *lpwsErrorString);
|
---|
| 539 | DWORD WINAPI MprAdminServerGetInfo(MPR_SERVER_HANDLE hMprServer,DWORD dwLevel,LPBYTE *lplpbBuffer);
|
---|
| 540 | DWORD WINAPI MprAdminServerSetInfo(MPR_SERVER_HANDLE hMprServer,DWORD dwLevel,LPBYTE lpbBuffer);
|
---|
| 541 | DWORD WINAPI MprAdminEstablishDomainRasServer (PWCHAR pszDomain,PWCHAR pszMachine,WINBOOL bEnable);
|
---|
| 542 | DWORD WINAPI MprAdminIsDomainRasServer (PWCHAR pszDomain,PWCHAR pszMachine,PBOOL pbIsRasServer);
|
---|
| 543 | DWORD WINAPI MprAdminTransportCreate(MPR_SERVER_HANDLE hMprServer,DWORD dwTransportId,LPWSTR lpwsTransportName,LPBYTE pGlobalInfo,DWORD dwGlobalInfoSize,LPBYTE pClientInterfaceInfo,DWORD dwClientInterfaceInfoSize,LPWSTR lpwsDLLPath);
|
---|
| 544 | DWORD WINAPI MprAdminTransportSetInfo(MPR_SERVER_HANDLE hMprServer,DWORD dwTransportId,LPBYTE pGlobalInfo,DWORD dwGlobalInfoSize,LPBYTE pClientInterfaceInfo,DWORD dwClientInterfaceInfoSize);
|
---|
| 545 | DWORD WINAPI MprAdminTransportGetInfo(MPR_SERVER_HANDLE hMprServer,DWORD dwTransportId,LPBYTE *ppGlobalInfo,LPDWORD lpdwGlobalInfoSize,LPBYTE *ppClientInterfaceInfo,LPDWORD lpdwClientInterfaceInfoSize);
|
---|
| 546 | DWORD WINAPI MprAdminDeviceEnum(MPR_SERVER_HANDLE hMprServer,DWORD dwLevel,LPBYTE *lplpbBuffer,LPDWORD lpdwTotalEntries);
|
---|
| 547 | DWORD WINAPI MprAdminInterfaceGetHandle(MPR_SERVER_HANDLE hMprServer,LPWSTR lpwsInterfaceName,HANDLE *phInterface,WINBOOL fIncludeClientInterfaces);
|
---|
| 548 | DWORD WINAPI MprAdminInterfaceCreate(MPR_SERVER_HANDLE hMprServer,DWORD dwLevel,LPBYTE lpbBuffer,HANDLE *phInterface);
|
---|
| 549 | DWORD WINAPI MprAdminInterfaceGetInfo(MPR_SERVER_HANDLE hMprServer,HANDLE hInterface,DWORD dwLevel,LPBYTE *lplpbBuffer);
|
---|
| 550 | DWORD WINAPI MprAdminInterfaceSetInfo(MPR_SERVER_HANDLE hMprServer,HANDLE hInterface,DWORD dwLevel,LPBYTE lpbBuffer);
|
---|
| 551 | DWORD WINAPI MprAdminInterfaceDelete(MPR_SERVER_HANDLE hMprServer,HANDLE hInterface);
|
---|
| 552 | DWORD WINAPI MprAdminInterfaceDeviceGetInfo(MPR_SERVER_HANDLE hMprServer,HANDLE hInterface,DWORD dwIndex,DWORD dwLevel,LPBYTE *lplpBuffer);
|
---|
| 553 | DWORD WINAPI MprAdminInterfaceDeviceSetInfo(MPR_SERVER_HANDLE hMprServer,HANDLE hInterface,DWORD dwIndex,DWORD dwLevel,LPBYTE lplpBuffer);
|
---|
| 554 | DWORD WINAPI MprAdminInterfaceTransportRemove(MPR_SERVER_HANDLE hMprServer,HANDLE hInterface,DWORD dwTransportId);
|
---|
| 555 | DWORD WINAPI MprAdminInterfaceTransportAdd(MPR_SERVER_HANDLE hMprServer,HANDLE hInterface,DWORD dwTransportId,LPBYTE pInterfaceInfo,DWORD dwInterfaceInfoSize);
|
---|
| 556 | DWORD WINAPI MprAdminInterfaceTransportGetInfo(MPR_SERVER_HANDLE hMprServer,HANDLE hInterface,DWORD dwTransportId,LPBYTE *ppInterfaceInfo,LPDWORD lpdwpInterfaceInfoSize);
|
---|
| 557 | DWORD WINAPI MprAdminInterfaceTransportSetInfo(MPR_SERVER_HANDLE hMprServer,HANDLE hInterface,DWORD dwTransportId,LPBYTE pInterfaceInfo,DWORD dwInterfaceInfoSize);
|
---|
| 558 | DWORD WINAPI MprAdminInterfaceEnum(MPR_SERVER_HANDLE hMprServer,DWORD dwLevel,LPBYTE *lplpbBuffer,DWORD dwPrefMaxLen,LPDWORD lpdwEntriesRead,LPDWORD lpdwTotalEntries,LPDWORD lpdwResumeHandle);
|
---|
| 559 | DWORD WINAPI MprSetupIpInIpInterfaceFriendlyNameEnum(PWCHAR pwszMachineName,LPBYTE *lplpBuffer,LPDWORD lpdwEntriesRead);
|
---|
| 560 | DWORD WINAPI MprSetupIpInIpInterfaceFriendlyNameFree(LPVOID lpBuffer);
|
---|
| 561 | DWORD WINAPI MprSetupIpInIpInterfaceFriendlyNameCreate(PWCHAR pwszMachineName,PMPR_IPINIP_INTERFACE_0 pNameInformation);
|
---|
| 562 | DWORD WINAPI MprSetupIpInIpInterfaceFriendlyNameDelete(PWCHAR pwszMachineName,GUID *pGuid);
|
---|
| 563 | DWORD WINAPI MprAdminInterfaceSetCredentials(LPWSTR lpwsServer,LPWSTR lpwsInterfaceName,LPWSTR lpwsUserName,LPWSTR lpwsDomainName,LPWSTR lpwsPassword);
|
---|
| 564 | DWORD WINAPI MprAdminInterfaceGetCredentials(LPWSTR lpwsServer,LPWSTR lpwsInterfaceName,LPWSTR lpwsUserName,LPWSTR lpwsPassword,LPWSTR lpwsDomainName);
|
---|
| 565 | DWORD WINAPI MprAdminInterfaceSetCredentialsEx(MPR_SERVER_HANDLE hMprServer,HANDLE hInterface,DWORD dwLevel,LPBYTE lpbBuffer);
|
---|
| 566 | DWORD WINAPI MprAdminInterfaceGetCredentialsEx(MPR_SERVER_HANDLE hMprServer,HANDLE hInterface,DWORD dwLevel,LPBYTE *lplpbBuffer);
|
---|
| 567 | DWORD WINAPI MprAdminInterfaceConnect(MPR_SERVER_HANDLE hMprServer,HANDLE hInterface,HANDLE hEvent,WINBOOL fSynchronous);
|
---|
| 568 | DWORD WINAPI MprAdminInterfaceDisconnect(MPR_SERVER_HANDLE hMprServer,HANDLE hInterface);
|
---|
| 569 | DWORD WINAPI MprAdminInterfaceUpdateRoutes(MPR_SERVER_HANDLE hMprServer,HANDLE hInterface,DWORD dwProtocolId,HANDLE hEvent);
|
---|
| 570 | DWORD WINAPI MprAdminInterfaceQueryUpdateResult(MPR_SERVER_HANDLE hMprServer,HANDLE hInterface,DWORD dwProtocolId,LPDWORD lpdwUpdateResult);
|
---|
| 571 | DWORD WINAPI MprAdminInterfaceUpdatePhonebookInfo(MPR_SERVER_HANDLE hMprServer,HANDLE hInterface);
|
---|
| 572 | DWORD WINAPI MprAdminRegisterConnectionNotification(MPR_SERVER_HANDLE hMprServer,HANDLE hEventNotification);
|
---|
| 573 | DWORD WINAPI MprAdminDeregisterConnectionNotification(MPR_SERVER_HANDLE hMprServer,HANDLE hEventNotification);
|
---|
| 574 | DWORD WINAPI MprAdminMIBServerConnect(LPWSTR lpwsServerName,MIB_SERVER_HANDLE *phMibServer);
|
---|
| 575 | VOID WINAPI MprAdminMIBServerDisconnect(MIB_SERVER_HANDLE hMibServer);
|
---|
| 576 | DWORD WINAPI MprAdminMIBEntryCreate(MIB_SERVER_HANDLE hMibServer,DWORD dwPid,DWORD dwRoutingPid,LPVOID lpEntry,DWORD dwEntrySize);
|
---|
| 577 | DWORD WINAPI MprAdminMIBEntryDelete(MIB_SERVER_HANDLE hMibServer,DWORD dwProtocolId,DWORD dwRoutingPid,LPVOID lpEntry,DWORD dwEntrySize);
|
---|
| 578 | DWORD WINAPI MprAdminMIBEntrySet(MIB_SERVER_HANDLE hMibServer,DWORD dwProtocolId,DWORD dwRoutingPid,LPVOID lpEntry,DWORD dwEntrySize);
|
---|
| 579 | DWORD WINAPI MprAdminMIBEntryGet(MIB_SERVER_HANDLE hMibServer,DWORD dwProtocolId,DWORD dwRoutingPid,LPVOID lpInEntry,DWORD dwInEntrySize,LPVOID *lplpOutEntry,LPDWORD lpOutEntrySize);
|
---|
| 580 | DWORD WINAPI MprAdminMIBEntryGetFirst(MIB_SERVER_HANDLE hMibServer,DWORD dwProtocolId,DWORD dwRoutingPid,LPVOID lpInEntry,DWORD dwInEntrySize,LPVOID *lplpOutEntry,LPDWORD lpOutEntrySize);
|
---|
| 581 | DWORD WINAPI MprAdminMIBEntryGetNext(MIB_SERVER_HANDLE hMibServer,DWORD dwProtocolId,DWORD dwRoutingPid,LPVOID lpInEntry,DWORD dwInEntrySize,LPVOID *lplpOutEntry,LPDWORD lpOutEntrySize);
|
---|
| 582 | DWORD WINAPI MprAdminMIBGetTrapInfo(MIB_SERVER_HANDLE hMibServer,DWORD dwProtocolId,DWORD dwRoutingPid,LPVOID lpInData,DWORD dwInDataSize,LPVOID *lplpOutData,LPDWORD lpOutDataSize);
|
---|
| 583 | DWORD WINAPI MprAdminMIBSetTrapInfo(DWORD dwProtocolId,DWORD dwRoutingPid,HANDLE hEvent,LPVOID lpInData,DWORD dwInDataSize,LPVOID *lplpOutData,LPDWORD lpOutDataSize);
|
---|
| 584 | DWORD WINAPI MprAdminMIBBufferFree(LPVOID pBuffer);
|
---|
| 585 | DWORD WINAPI MprConfigServerInstall(DWORD dwLevel,PVOID pBuffer);
|
---|
| 586 | DWORD WINAPI MprConfigServerConnect(LPWSTR lpwsServerName,HANDLE *phMprConfig);
|
---|
| 587 | VOID WINAPI MprConfigServerDisconnect(HANDLE hMprConfig);
|
---|
| 588 | DWORD WINAPI MprConfigServerRefresh(HANDLE hMprConfig);
|
---|
| 589 | DWORD WINAPI MprConfigBufferFree(LPVOID pBuffer);
|
---|
| 590 | DWORD WINAPI MprConfigServerGetInfo(HANDLE hMprConfig,DWORD dwLevel,LPBYTE *lplpbBuffer);
|
---|
| 591 | DWORD WINAPI MprConfigServerSetInfo(MPR_SERVER_HANDLE hMprServer,DWORD dwLevel,LPBYTE lpbBuffer);
|
---|
| 592 | DWORD WINAPI MprConfigServerBackup(HANDLE hMprConfig,LPWSTR lpwsPath);
|
---|
| 593 | DWORD WINAPI MprConfigServerRestore(HANDLE hMprConfig,LPWSTR lpwsPath);
|
---|
| 594 | DWORD WINAPI MprConfigTransportCreate(HANDLE hMprConfig,DWORD dwTransportId,LPWSTR lpwsTransportName,LPBYTE pGlobalInfo,DWORD dwGlobalInfoSize,LPBYTE pClientInterfaceInfo,DWORD dwClientInterfaceInfoSize,LPWSTR lpwsDLLPath,HANDLE *phRouterTransport);
|
---|
| 595 | DWORD WINAPI MprConfigTransportDelete(HANDLE hMprConfig,HANDLE hRouterTransport);
|
---|
| 596 | DWORD WINAPI MprConfigTransportGetHandle(HANDLE hMprConfig,DWORD dwTransportId,HANDLE *phRouterTransport);
|
---|
| 597 | DWORD WINAPI MprConfigTransportSetInfo(HANDLE hMprConfig,HANDLE hRouterTransport,LPBYTE pGlobalInfo,DWORD dwGlobalInfoSize,LPBYTE pClientInterfaceInfo,DWORD dwClientInterfaceInfoSize,LPWSTR lpwsDLLPath);
|
---|
| 598 | DWORD WINAPI MprConfigTransportGetInfo(HANDLE hMprConfig,HANDLE hRouterTransport,LPBYTE *ppGlobalInfo,LPDWORD lpdwGlobalInfoSize,LPBYTE *ppClientInterfaceInfo,LPDWORD lpdwClientInterfaceInfoSize,LPWSTR *lplpwsDLLPath);
|
---|
| 599 | DWORD WINAPI MprConfigTransportEnum(HANDLE hMprConfig,DWORD dwLevel,LPBYTE *lplpBuffer,DWORD dwPrefMaxLen,LPDWORD lpdwEntriesRead,LPDWORD lpdwTotalEntries,LPDWORD lpdwResumeHandle);
|
---|
| 600 | DWORD WINAPI MprConfigInterfaceCreate(HANDLE hMprConfig,DWORD dwLevel,LPBYTE lpbBuffer,HANDLE *phRouterInterface);
|
---|
| 601 | DWORD WINAPI MprConfigInterfaceDelete(HANDLE hMprConfig,HANDLE hRouterInterface);
|
---|
| 602 | DWORD WINAPI MprConfigInterfaceGetHandle(HANDLE hMprConfig,LPWSTR lpwsInterfaceName,HANDLE *phRouterInterface);
|
---|
| 603 | DWORD WINAPI MprConfigInterfaceGetInfo(HANDLE hMprConfig,HANDLE hRouterInterface,DWORD dwLevel,LPBYTE *lplpBuffer,LPDWORD lpdwBufferSize);
|
---|
| 604 | DWORD WINAPI MprConfigInterfaceSetInfo(HANDLE hMprConfig,HANDLE hRouterInterface,DWORD dwLevel,LPBYTE lpbBuffer);
|
---|
| 605 | DWORD WINAPI MprConfigInterfaceEnum(HANDLE hMprConfig,DWORD dwLevel,LPBYTE *lplpBuffer,DWORD dwPrefMaxLen,LPDWORD lpdwEntriesRead,LPDWORD lpdwTotalEntries,LPDWORD lpdwResumeHandle);
|
---|
| 606 | DWORD WINAPI MprConfigInterfaceTransportAdd(HANDLE hMprConfig,HANDLE hRouterInterface,DWORD dwTransportId,LPWSTR lpwsTransportName,LPBYTE pInterfaceInfo,DWORD dwInterfaceInfoSize,HANDLE *phRouterIfTransport);
|
---|
| 607 | DWORD WINAPI MprConfigInterfaceTransportRemove(HANDLE hMprConfig,HANDLE hRouterInterface,HANDLE hRouterIfTransport);
|
---|
| 608 | DWORD WINAPI MprConfigInterfaceTransportGetHandle(HANDLE hMprConfig,HANDLE hRouterInterface,DWORD dwTransportId,HANDLE *phRouterIfTransport);
|
---|
| 609 | DWORD WINAPI MprConfigInterfaceTransportGetInfo(HANDLE hMprConfig,HANDLE hRouterInterface,HANDLE hRouterIfTransport,LPBYTE *ppInterfaceInfo,LPDWORD lpdwInterfaceInfoSize);
|
---|
| 610 | DWORD WINAPI MprConfigInterfaceTransportSetInfo(HANDLE hMprConfig,HANDLE hRouterInterface,HANDLE hRouterIfTransport,LPBYTE pInterfaceInfo,DWORD dwInterfaceInfoSize);
|
---|
| 611 | DWORD WINAPI MprConfigInterfaceTransportEnum(HANDLE hMprConfig,HANDLE hRouterInterface,DWORD dwLevel,LPBYTE *lplpBuffer,DWORD dwPrefMaxLen,LPDWORD lpdwEntriesRead,LPDWORD lpdwTotalEntries,LPDWORD lpdwResumeHandle);
|
---|
| 612 | DWORD WINAPI MprConfigGetFriendlyName(HANDLE hMprConfig,PWCHAR pszGuidName,PWCHAR pszBuffer,DWORD dwBufferSize);
|
---|
| 613 | DWORD WINAPI MprConfigGetGuidName(HANDLE hMprConfig,PWCHAR pszFriendlyName,PWCHAR pszBuffer,DWORD dwBufferSize);
|
---|
| 614 | DWORD WINAPI MprInfoCreate(DWORD dwVersion,LPVOID *lplpNewHeader);
|
---|
| 615 | DWORD WINAPI MprInfoDelete(LPVOID lpHeader);
|
---|
| 616 | DWORD WINAPI MprInfoRemoveAll(LPVOID lpHeader,LPVOID *lplpNewHeader);
|
---|
| 617 | DWORD WINAPI MprInfoDuplicate(LPVOID lpHeader,LPVOID *lplpNewHeader);
|
---|
| 618 | DWORD WINAPI MprInfoBlockAdd(LPVOID lpHeader,DWORD dwInfoType,DWORD dwItemSize,DWORD dwItemCount,LPBYTE lpItemData,LPVOID *lplpNewHeader);
|
---|
| 619 | DWORD WINAPI MprInfoBlockRemove(LPVOID lpHeader,DWORD dwInfoType,LPVOID *lplpNewHeader);
|
---|
| 620 | DWORD WINAPI MprInfoBlockSet(LPVOID lpHeader,DWORD dwInfoType,DWORD dwItemSize,DWORD dwItemCount,LPBYTE lpItemData,LPVOID *lplpNewHeader);
|
---|
| 621 | DWORD WINAPI MprInfoBlockFind(LPVOID lpHeader,DWORD dwInfoType,LPDWORD lpdwItemSize,LPDWORD lpdwItemCount,LPBYTE *lplpItemData);
|
---|
| 622 | DWORD WINAPI MprInfoBlockQuerySize(LPVOID lpHeader);
|
---|
| 623 |
|
---|
| 624 | #define MprInfoBlockExists(h,t) (MprInfoBlockFind((h),(t),NULL,NULL,NULL)==NO_ERROR)
|
---|
| 625 |
|
---|
| 626 | #if (_WIN32_WINNT >= 0x0600)
|
---|
| 627 | typedef enum _RAS_QUARANTINE_STATE {
|
---|
| 628 | RAS_QUAR_STATE_NORMAL,
|
---|
| 629 | RAS_QUAR_STATE_QUARANTINE,
|
---|
| 630 | RAS_QUAR_STATE_PROBATION,
|
---|
| 631 | RAS_QUAR_STATE_NOT_CAPABLE
|
---|
| 632 | } RAS_QUARANTINE_STATE;
|
---|
| 633 |
|
---|
| 634 | typedef struct _MPR_FILTER_0 {
|
---|
| 635 | WINBOOL fEnabled;
|
---|
| 636 | } MPR_FILTER_0, *PMPR_FILTER_0;
|
---|
| 637 |
|
---|
| 638 | typedef struct _MPR_SERVER_2 {
|
---|
| 639 | DWORD dwNumPptpPorts;
|
---|
| 640 | DWORD dwPptpPortFlags;
|
---|
| 641 | DWORD dwNumL2tpPorts;
|
---|
| 642 | DWORD dwL2tpPortFlags;
|
---|
| 643 | DWORD dwNumSstpPorts;
|
---|
| 644 | DWORD dwSstpPortFlags;
|
---|
| 645 | } MPR_SERVER_2, *PMPR_SERVER_2;
|
---|
| 646 |
|
---|
| 647 | typedef struct _PPP_IPV6CP_INFO {
|
---|
| 648 | DWORD dwVersion;
|
---|
| 649 | DWORD dwSize;
|
---|
| 650 | DWORD dwError;
|
---|
| 651 | BYTE bInterfaceIdentifier[8];
|
---|
| 652 | BYTE bRemoteInterfaceIdentifier[8];
|
---|
| 653 | DWORD dwOptions;
|
---|
| 654 | DWORD dwRemoteOptions;
|
---|
| 655 | BYTE bPrefix[8];
|
---|
| 656 | DWORD dwPrefixLength;
|
---|
| 657 | } PPP_IPV6_CP_INFO, *PPPP_IPV6_CP_INFO;
|
---|
| 658 |
|
---|
| 659 | typedef struct _PPP_INFO_3 {
|
---|
| 660 | PPP_NBFCP_INFO nbf;
|
---|
| 661 | PPP_IPCP_INFO2 ip;
|
---|
| 662 | PPP_IPV6_CP_INFO ipv6;
|
---|
| 663 | PPP_CCP_INFO ccp;
|
---|
| 664 | PPP_LCP_INFO lcp;
|
---|
| 665 | } PPP_INFO_3;
|
---|
| 666 |
|
---|
| 667 | typedef struct _RAS_CONNECTION_3 {
|
---|
| 668 | DWORD dwVersion;
|
---|
| 669 | DWORD dwSize;
|
---|
| 670 | HANDLE hConnection;
|
---|
| 671 | WCHAR wszUserName[UNLEN + 1];
|
---|
| 672 | ROUTER_INTERFACE_TYPE dwInterfaceType;
|
---|
| 673 | GUID guid;
|
---|
| 674 | PPP_INFO_3 PppInfo3;
|
---|
| 675 | RAS_QUARANTINE_STATE rasQuarState;
|
---|
| 676 | FILETIME timer;
|
---|
| 677 | } RAS_CONNECTION_3, *PRAS_CONNECTION_3;
|
---|
| 678 |
|
---|
| 679 | WINBOOL CALLBACK MprAdminAcceptNewConnection3(
|
---|
| 680 | RAS_CONNECTION_0 *pRasConnection0,
|
---|
| 681 | RAS_CONNECTION_1 *pRasConnection1,
|
---|
| 682 | RAS_CONNECTION_2 *pRasConnection2,
|
---|
| 683 | RAS_CONNECTION_3 *pRasConnection3
|
---|
| 684 | );
|
---|
| 685 |
|
---|
| 686 | WINBOOL CALLBACK MprAdminAcceptReauthentication(
|
---|
| 687 | RAS_CONNECTION_0 *pRasConnection0,
|
---|
| 688 | RAS_CONNECTION_1 *pRasConnection1,
|
---|
| 689 | RAS_CONNECTION_2 *pRasConnection2,
|
---|
| 690 | RAS_CONNECTION_3 *pRasConnection3
|
---|
| 691 | );
|
---|
| 692 |
|
---|
| 693 | void CALLBACK MprAdminConnectionHangupNotification3(
|
---|
| 694 | RAS_CONNECTION_0 *pRasConnection0,
|
---|
| 695 | RAS_CONNECTION_1 *pRasConnection1,
|
---|
| 696 | RAS_CONNECTION_2 *pRasConnection2,
|
---|
| 697 | RAS_CONNECTION_3 *pRasConnection3
|
---|
| 698 | );
|
---|
| 699 |
|
---|
| 700 | DWORD CALLBACK MprAdminGetIpv6AddressForUser(
|
---|
| 701 | WCHAR *lpwszUserName,
|
---|
| 702 | WCHAR *lpwszPortName,
|
---|
| 703 | IN6_ADDR *lpdwIpv6Address,
|
---|
| 704 | WINBOOL *bNotifyRelease
|
---|
| 705 | );
|
---|
| 706 |
|
---|
| 707 | DWORD CALLBACK MprAdminReleaseIpv6AddressForUser(
|
---|
| 708 | WCHAR *lpwszUserName,
|
---|
| 709 | WCHAR *lpwszPortName,
|
---|
| 710 | IN6_ADDR *lpdwIpv6Address
|
---|
| 711 | );
|
---|
| 712 |
|
---|
| 713 | DWORD WINAPI MprConfigFilterGetInfo(
|
---|
| 714 | HANDLE hMprConfig,
|
---|
| 715 | DWORD dwLevel,
|
---|
| 716 | DWORD dwTransportId,
|
---|
| 717 | LPBYTE lpBuffer
|
---|
| 718 | );
|
---|
| 719 |
|
---|
| 720 | DWORD WINAPI MprConfigFilterSetInfo(
|
---|
| 721 | HANDLE hMprConfig,
|
---|
| 722 | DWORD dwLevel,
|
---|
| 723 | DWORD dwTransportId,
|
---|
| 724 | LPBYTE lpBuffer
|
---|
| 725 | );
|
---|
| 726 |
|
---|
| 727 | #endif /*(_WIN32_WINNT >= 0x0600)*/
|
---|
| 728 |
|
---|
| 729 | #if (_WIN32_WINNT >= 0x0601)
|
---|
| 730 | #define MPRAPI_RAS_CONNECTION_OBJECT_REVISION_1 0x01
|
---|
| 731 | #define MPRAPI_MPR_SERVER_OBJECT_REVISION_1 0x01
|
---|
| 732 | #define MPRAPI_MPR_SERVER_SET_CONFIG_OBJECT_REVISION_1 0x01
|
---|
| 733 |
|
---|
| 734 | typedef enum {
|
---|
| 735 | MPRAPI_OBJECT_TYPE_RAS_CONNECTION_OBJECT = 0x1,
|
---|
| 736 | MPRAPI_OBJECT_TYPE_MPR_SERVER_OBJECT = 0x2,
|
---|
| 737 | MPRAPI_OBJECT_TYPE_MPR_SERVER_SET_CONFIG_OBJECT = 0x3,
|
---|
| 738 | MPRAPI_OBJECT_TYPE_AUTH_VALIDATION_OBJECT = 0x4,
|
---|
| 739 | MPRAPI_OBJECT_TYPE_UPDATE_CONNECTION_OBJECT = 0x5
|
---|
| 740 | } MPRAPI_OBJECT_TYPE;
|
---|
| 741 |
|
---|
| 742 | typedef struct _MPRAPI_OBJECT_HEADER {
|
---|
| 743 | UCHAR revision;
|
---|
| 744 | UCHAR type;
|
---|
| 745 | USHORT size;
|
---|
| 746 | } MPRAPI_OBJECT_HEADER, *PMPRAPI_OBJECT_HEADER;
|
---|
| 747 |
|
---|
| 748 | typedef struct _AUTH_VALIDATION_EX {
|
---|
| 749 | MPRAPI_OBJECT_HEADER Header;
|
---|
| 750 | HANDLE hRasConnection;
|
---|
| 751 | WCHAR wszUserName[UNLEN + 1 ];
|
---|
| 752 | WCHAR wszLogonDomain[DNLEN + 1 ];
|
---|
| 753 | DWORD AuthInfoSize;
|
---|
| 754 | BYTE AuthInfo[1];
|
---|
| 755 | } AUTH_VALIDATION_EX, *PAUTH_VALIDATION_EX;
|
---|
| 756 |
|
---|
| 757 | #define RAS_FLAGS_PPP_CONNECTION 0x00000001
|
---|
| 758 | #define RAS_FLAGS_MESSENGER_PRESENT 0x00000002
|
---|
| 759 | #define RAS_FLAGS_QUARANTINE_PRESENT 0x00000008
|
---|
| 760 | #define RAS_FLAGS_ARAP_CONNECTION 0x00000010
|
---|
| 761 | #define RAS_FLAGS_IKEV2_CONNECTION 0x00000010
|
---|
| 762 | #define RAS_FLAGS_DORMANT 0x00000020
|
---|
| 763 |
|
---|
| 764 | #define IPADDRESSLEN 15
|
---|
| 765 |
|
---|
| 766 | typedef struct _PPP_PROJECTION_INFO {
|
---|
| 767 | DWORD dwIPv4NegotiationError;
|
---|
| 768 | WCHAR wszAddress[IPADDRESSLEN + 1];
|
---|
| 769 | WCHAR wszRemoteAddress[IPADDRESSLEN + 1];
|
---|
| 770 | DWORD dwIPv4Options;
|
---|
| 771 | DWORD dwIPv4RemoteOptions;
|
---|
| 772 | ULONG64 IPv4SubInterfaceIndex;
|
---|
| 773 | DWORD dwIPv6NegotiationError;
|
---|
| 774 | BYTE bInterfaceIdentifier[8];
|
---|
| 775 | BYTE bRemoteInterfaceIdentifier[8];
|
---|
| 776 | BYTE bPrefix[8];
|
---|
| 777 | DWORD dwPrefixLength;
|
---|
| 778 | ULONG64 IPv6SubInterfaceIndex;
|
---|
| 779 | DWORD dwLcpError;
|
---|
| 780 | DWORD dwAuthenticationProtocol;
|
---|
| 781 | DWORD dwAuthenticationData;
|
---|
| 782 | DWORD dwRemoteAuthenticationProtocol;
|
---|
| 783 | DWORD dwRemoteAuthenticationData;
|
---|
| 784 | DWORD dwLcpTerminateReason;
|
---|
| 785 | DWORD dwLcpRemoteTerminateReason;
|
---|
| 786 | DWORD dwLcpOptions;
|
---|
| 787 | DWORD dwLcpRemoteOptions;
|
---|
| 788 | DWORD dwEapTypeId;
|
---|
| 789 | DWORD dwRemoteEapTypeId;
|
---|
| 790 | DWORD dwCcpError;
|
---|
| 791 | DWORD dwCompressionAlgorithm;
|
---|
| 792 | DWORD dwCcpOptions;
|
---|
| 793 | DWORD dwRemoteCompressionAlgorithm;
|
---|
| 794 | DWORD dwCcpRemoteOptions;
|
---|
| 795 | } PPP_PROJECTION_INFO, *PPPP_PROJECTION_INFO;
|
---|
| 796 |
|
---|
| 797 | typedef struct _IKEV2_PROJECTION_INFO {
|
---|
| 798 | DWORD dwIPv4NegotiationError;
|
---|
| 799 | WCHAR wszAddress[IPADDRESSLEN + 1];
|
---|
| 800 | WCHAR wszRemoteAddress[IPADDRESSLEN + 1];
|
---|
| 801 | ULONG64 IPv4SubInterfaceIndex;
|
---|
| 802 | DWORD dwIPv6NegotiationError;
|
---|
| 803 | BYTE bInterfaceIdentifier[8];
|
---|
| 804 | BYTE bRemoteInterfaceIdentifier[8];
|
---|
| 805 | BYTE bPrefix[8];
|
---|
| 806 | DWORD dwPrefixLength;
|
---|
| 807 | ULONG64 IPv6SubInterfaceIndex;
|
---|
| 808 | DWORD dwOptions;
|
---|
| 809 | DWORD dwAuthenticationProtocol;
|
---|
| 810 | DWORD dwEapTypeId;
|
---|
| 811 | DWORD dwCompressionAlgorithm;
|
---|
| 812 | DWORD dwEncryptionMethod;
|
---|
| 813 | } IKEV2_PROJECTION_INFO, *PIKEV2_PROJECTION_INFO;
|
---|
| 814 |
|
---|
| 815 | typedef struct _PROJECTION_INFO {
|
---|
| 816 | UCHAR projectionInfoType;
|
---|
| 817 | __C89_NAMELESS union {
|
---|
| 818 | IKEV2_PROJECTION_INFO Ikev2ProjectionInfo;
|
---|
| 819 | PPP_PROJECTION_INFO PppProjectionInfo;
|
---|
| 820 | } DUMMYUNIONNAME;
|
---|
| 821 | } PROJECTION_INFO, *PPROJECTION_INFO;
|
---|
| 822 |
|
---|
| 823 | typedef struct _RAS_CONNECTION_EX {
|
---|
| 824 | MPRAPI_OBJECT_HEADER Header;
|
---|
| 825 | DWORD dwConnectDuration;
|
---|
| 826 | ROUTER_INTERFACE_TYPE dwInterfaceType;
|
---|
| 827 | DWORD dwConnectionFlags;
|
---|
| 828 | WCHAR wszInterfaceName[MAX_INTERFACE_NAME_LEN + 1];
|
---|
| 829 | WCHAR wszUserName[UNLEN + 1];
|
---|
| 830 | WCHAR wszLogonDomain[DNLEN + 1];
|
---|
| 831 | WCHAR wszRemoteComputer[NETBIOS_NAME_LEN + 1];
|
---|
| 832 | GUID guid;
|
---|
| 833 | RAS_QUARANTINE_STATE rasQuarState;
|
---|
| 834 | FILETIME probationTime;
|
---|
| 835 | DWORD dwBytesXmited;
|
---|
| 836 | DWORD dwBytesRcved;
|
---|
| 837 | DWORD dwFramesXmited;
|
---|
| 838 | DWORD dwFramesRcved;
|
---|
| 839 | DWORD dwCrcErr;
|
---|
| 840 | DWORD dwTimeoutErr;
|
---|
| 841 | DWORD dwAlignmentErr;
|
---|
| 842 | DWORD dwHardwareOverrunErr;
|
---|
| 843 | DWORD dwFramingErr;
|
---|
| 844 | DWORD dwBufferOverrunErr;
|
---|
| 845 | DWORD dwCompressionRatioIn;
|
---|
| 846 | DWORD dwCompressionRatioOut;
|
---|
| 847 | DWORD dwNumSwitchOvers;
|
---|
| 848 | WCHAR wszRemoteEndpointAddress[MAXIPADRESSLEN+1];
|
---|
| 849 | WCHAR wszLocalEndpointAddress[MAXIPADRESSLEN+1];
|
---|
| 850 | PROJECTION_INFO ProjectionInfo;
|
---|
| 851 | HANDLE hConnection;
|
---|
| 852 | HANDLE hInterface;
|
---|
| 853 | } RAS_CONNECTION_EX, *PRAS_CONNECTION_EX;
|
---|
| 854 |
|
---|
| 855 | typedef struct _RAS_UPDATE_CONNECTION {
|
---|
| 856 | MPRAPI_OBJECT_HEADER Header;
|
---|
| 857 | DWORD dwIfIndex;
|
---|
| 858 | WCHAR wszLocalEndpointAddress[MAXIPADRESSLEN+1];
|
---|
| 859 | WCHAR wszRemoteEndpointAddress[MAXIPADRESSLEN+1];
|
---|
| 860 | } RAS_UPDATE_CONNECTION, *PRAS_UPDATE_CONNECTION;
|
---|
| 861 |
|
---|
| 862 | #define MPRAPI_IKEV2_SET_TUNNEL_CONFIG_PARAMS 0x01
|
---|
| 863 |
|
---|
| 864 | typedef struct _IKEV2_TUNNEL_CONFIG_PARAMS {
|
---|
| 865 | DWORD dwIdleTimeout;
|
---|
| 866 | DWORD dwNetworkBlackoutTime;
|
---|
| 867 | DWORD dwSaLifeTime;
|
---|
| 868 | DWORD dwSaDataSizeForRenegotiation;
|
---|
| 869 | DWORD dwConfigOptions;
|
---|
| 870 | DWORD dwTotalCertificates;
|
---|
| 871 | CERT_NAME_BLOB *certificateNames;
|
---|
| 872 | } IKEV2_TUNNEL_CONFIG_PARAMS, *PIKEV2_TUNNEL_CONFIG_PARAMS;
|
---|
| 873 |
|
---|
| 874 | typedef struct _IKEV2_CONFIG_PARAMS {
|
---|
| 875 | DWORD dwNumPorts;
|
---|
| 876 | DWORD dwPortFlags;
|
---|
| 877 | DWORD dwTunnelConfigParamFlags;
|
---|
| 878 | IKEV2_TUNNEL_CONFIG_PARAMS TunnelConfigParams;
|
---|
| 879 | } IKEV2_CONFIG_PARAMS, *PIKEV2_CONFIG_PARAMS;
|
---|
| 880 |
|
---|
| 881 | typedef struct _PPTP_CONFIG_PARAMS {
|
---|
| 882 | DWORD dwNumPorts;
|
---|
| 883 | DWORD dwPortFlags;
|
---|
| 884 | } PPTP_CONFIG_PARAMS, *PPPTP_CONFIG_PARAMS;
|
---|
| 885 |
|
---|
| 886 | typedef struct _L2TP_CONFIG_PARAMS {
|
---|
| 887 | DWORD dwNumPorts;
|
---|
| 888 | DWORD dwPortFlags;
|
---|
| 889 | } L2TP_CONFIG_PARAMS, *PL2TP_CONFIG_PARAMS;
|
---|
| 890 |
|
---|
| 891 | typedef struct _SSTP_CERT_INFO {
|
---|
| 892 | BOOL isDefault;
|
---|
| 893 | CRYPT_HASH_BLOB certBlob;
|
---|
| 894 | } SSTP_CERT_INFO, *PSSTP_CERT_INFO;
|
---|
| 895 |
|
---|
| 896 | typedef struct _SSTP_CONFIG_PARAMS {
|
---|
| 897 | DWORD dwNumPorts;
|
---|
| 898 | DWORD dwPortFlags;
|
---|
| 899 | BOOL isUseHttps;
|
---|
| 900 | DWORD certAlgorithm;
|
---|
| 901 | SSTP_CERT_INFO sstpCertDetails;
|
---|
| 902 | } SSTP_CONFIG_PARAMS, *PSSTP_CONFIG_PARAMS;
|
---|
| 903 |
|
---|
| 904 | typedef struct _MPRAPI_TUNNEL_CONFIG_PARAMS {
|
---|
| 905 | IKEV2_CONFIG_PARAMS IkeConfigParams;
|
---|
| 906 | PPTP_CONFIG_PARAMS PptpConfigParams;
|
---|
| 907 | L2TP_CONFIG_PARAMS L2tpConfigParams;
|
---|
| 908 | SSTP_CONFIG_PARAMS SstpConfigParams;
|
---|
| 909 | } MPRAPI_TUNNEL_CONFIG_PARAMS, *PMPRAPI_TUNNEL_CONFIG_PARAMS;
|
---|
| 910 |
|
---|
| 911 | typedef struct _MPR_SERVER_SET_CONFIG_EX {
|
---|
| 912 | MPRAPI_OBJECT_HEADER Header;
|
---|
| 913 | DWORD setConfigForProtocols;
|
---|
| 914 | MPRAPI_TUNNEL_CONFIG_PARAMS ConfigParams;
|
---|
| 915 | } MPR_SERVER_SET_CONFIG_EX, *PMPR_SERVER_SET_CONFIG_EX;
|
---|
| 916 |
|
---|
| 917 | typedef struct _MPR_SERVER_EX {
|
---|
| 918 | MPRAPI_OBJECT_HEADER Header;
|
---|
| 919 | DWORD fLanOnlyMode;
|
---|
| 920 | DWORD dwUpTime;
|
---|
| 921 | DWORD dwTotalPorts;
|
---|
| 922 | DWORD dwPortsInUse;
|
---|
| 923 | DWORD Reserved;
|
---|
| 924 | MPRAPI_TUNNEL_CONFIG_PARAMS ConfigParams;
|
---|
| 925 | } MPR_SERVER_EX, *PMPR_SERVER_EX;
|
---|
| 926 |
|
---|
| 927 | typedef DWORD (APIENTRY * PMPRADMINGETIPADDRESSFORUSER)(WCHAR *, WCHAR *, DWORD *, WINBOOL *);
|
---|
| 928 | typedef VOID (APIENTRY * PMPRADMINRELEASEIPADRESS)(WCHAR *, WCHAR *, DWORD *);
|
---|
| 929 | typedef DWORD (APIENTRY * PMPRADMINGETIPV6ADDRESSFORUSER)(WCHAR *, WCHAR *, IN6_ADDR *, WINBOOL *);
|
---|
| 930 | typedef VOID (APIENTRY * PMPRADMINRELEASEIPV6ADDRESSFORUSER)(WCHAR *, WCHAR *, IN6_ADDR *);
|
---|
| 931 | typedef WINBOOL (APIENTRY * PMPRADMINACCEPTNEWLINK)(RAS_PORT_0 *, RAS_PORT_1 *);
|
---|
| 932 | typedef VOID (APIENTRY * PMPRADMINLINKHANGUPNOTIFICATION)(RAS_PORT_0 *, RAS_PORT_1 *);
|
---|
| 933 | typedef DWORD (APIENTRY * PMPRADMINTERMINATEDLL)();
|
---|
| 934 | typedef BOOL (APIENTRY * PMPRADMINACCEPTNEWCONNECTIONEX)(RAS_CONNECTION_EX *);
|
---|
| 935 | typedef BOOL (APIENTRY * PMPRADMINACCEPTREAUTHENTICATIONEX)(RAS_CONNECTION_EX *);
|
---|
| 936 | typedef VOID (APIENTRY * PMPRADMINCONNECTIONHANGUPNOTIFICATIONEX)(RAS_CONNECTION_EX *);
|
---|
| 937 |
|
---|
| 938 | typedef struct _MPRAPI_ADMIN_DLL_CALLBACKS {
|
---|
| 939 | UCHAR revision;
|
---|
| 940 | PMPRADMINGETIPADDRESSFORUSER lpfnMprAdminGetIpAddressForUser;
|
---|
| 941 | PMPRADMINRELEASEIPADRESS lpfnMprAdminReleaseIpAddress;
|
---|
| 942 | PMPRADMINGETIPV6ADDRESSFORUSER lpfnMprAdminGetIpv6AddressForUser;
|
---|
| 943 | PMPRADMINRELEASEIPV6ADDRESSFORUSER lpfnMprAdminReleaseIpV6AddressForUser;
|
---|
| 944 | PMPRADMINACCEPTNEWLINK lpfnRasAdminAcceptNewLink;
|
---|
| 945 | PMPRADMINLINKHANGUPNOTIFICATION lpfnRasAdminLinkHangupNotification;
|
---|
| 946 | PMPRADMINTERMINATEDLL lpfnRasAdminTerminateDll;
|
---|
| 947 | PMPRADMINACCEPTNEWCONNECTIONEX lpfnRasAdminAcceptNewConnectionEx;
|
---|
| 948 | PMPRADMINACCEPTREAUTHENTICATIONEX lpfnRasAdminAcceptReauthenticationEx;
|
---|
| 949 | PMPRADMINCONNECTIONHANGUPNOTIFICATIONEX lpfnRasAdminConnectionHangupNotificationEx;
|
---|
| 950 | } MPRAPI_ADMIN_DLL_CALLBACKS, *PMPRAPI_ADMIN_DLL_CALLBACKS;
|
---|
| 951 |
|
---|
| 952 | DWORD APIENTRY MprConfigServerSetInfoEx(HANDLE hMprConfig,MPR_SERVER_SET_CONFIG_EX *pSetServerConfig);
|
---|
| 953 |
|
---|
| 954 | DWORD APIENTRY MprConfigServerGetInfoEx(
|
---|
| 955 | HANDLE hMprConfig,
|
---|
| 956 | MPR_SERVER_EX *pServerInfo
|
---|
| 957 | );
|
---|
| 958 |
|
---|
| 959 | DWORD APIENTRY MprAdminConnectionEnumEx(
|
---|
| 960 | RAS_SERVER_HANDLE hRasServer,
|
---|
| 961 | PMPRAPI_OBJECT_HEADER pObjectHeader,
|
---|
| 962 | DWORD dwPreferedMaxLen,
|
---|
| 963 | LPDWORD lpdwEntriesRead,
|
---|
| 964 | LPDWORD lpdwTotalEntries,
|
---|
| 965 | PRAS_CONNECTION_EX *ppRasConn,
|
---|
| 966 | LPDWORD lpdwResumeHandle
|
---|
| 967 | );
|
---|
| 968 |
|
---|
| 969 | DWORD APIENTRY MprAdminConnectionGetInfoEx(
|
---|
| 970 | RAS_SERVER_HANDLE hRasServer,
|
---|
| 971 | HANDLE hConnection,
|
---|
| 972 | PRAS_CONNECTION_EX pRasConnection
|
---|
| 973 | );
|
---|
| 974 |
|
---|
| 975 | DWORD APIENTRY MprAdminInitializeDllEx(
|
---|
| 976 | PMPRAPI_ADMIN_DLL_CALLBACKS pAdminCallbacks
|
---|
| 977 | );
|
---|
| 978 |
|
---|
| 979 | DWORD APIENTRY MprAdminIsServiceInitialized(
|
---|
| 980 | LPWSTR lpwsServerName,
|
---|
| 981 | WINBOOL *fIsServiceInitialized
|
---|
| 982 | );
|
---|
| 983 |
|
---|
| 984 | DWORD APIENTRY MprAdminServerGetInfoEx(
|
---|
| 985 | MPR_SERVER_HANDLE hMprServer,
|
---|
| 986 | MPR_SERVER_EX *pServerInfo
|
---|
| 987 | );
|
---|
| 988 |
|
---|
| 989 | DWORD APIENTRY MprAdminServerSetInfoEx(
|
---|
| 990 | MPR_SERVER_HANDLE hMprServer,
|
---|
| 991 | MPR_SERVER_SET_CONFIG_EX *pServerInfo
|
---|
| 992 | );
|
---|
| 993 |
|
---|
| 994 | #endif /*(_WIN32_WINNT >= 0x0601)*/
|
---|
| 995 |
|
---|
| 996 | #ifdef __cplusplus
|
---|
| 997 | }
|
---|
| 998 | #endif
|
---|
| 999 |
|
---|
| 1000 | #endif /* WINAPI_FAMILY_PARTITION (WINAPI_PARTITION_DESKTOP) */
|
---|
| 1001 |
|
---|
| 1002 | #endif /* __ROUTING_MPRADMIN_H__ */
|
---|