2 * mprapi.h - Routing and Remote Access Services
4 * THIS SOFTWARE IS NOT COPYRIGHTED
6 * This source code is offered for use in the public domain. You may use,
7 * modify or distribute it freely.
9 * This code is distributed in the hope that it will be useful but
10 * WITHOUT ANY WARRANTY. ALL WARRANTIES, EXPRESS OR IMPLIED ARE HEREBY
11 * DISCLAIMED. This includes but is not limited to warranties of
12 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
18 #pragma GCC system_header
28 #if (_WIN32_WINNT >= 0x0500)
29 /*--- Router Management Reference - Router Management Enumerated Types */
30 typedef enum _ROUTER_CONNECTION_STATE
{
31 ROUTER_IF_STATE_UNREACHABLE
,
32 ROUTER_IF_STATE_DISCONNECTED
,
33 ROUTER_IF_STATE_CONNECTING
,
34 ROUTER_IF_STATE_CONNECTED
35 } ROUTER_CONNECTION_STATE
;
36 typedef enum _ROUTER_INTERFACE_TYPE
{
37 ROUTER_IF_TYPE_CLIENT
,
38 ROUTER_IF_TYPE_HOME_ROUTER
,
39 ROUTER_IF_TYPE_FULL_ROUTER
,
40 ROUTER_IF_TYPE_DEDICATED
,
41 ROUTER_IF_TYPE_INTERNAL
,
42 ROUTER_IF_TYPE_LOOPBACK
,
43 ROUTER_IF_TYPE_TUNNEL1
,
44 ROUTER_IF_TYPE_DIALOUT
45 } ROUTER_INTERFACE_TYPE
;
46 #define MPR_INTERFACE_ADMIN_DISABLED 0x00000002
47 #define MPR_INTERFACE_CONNECTION_FAILURE 0x00000004
48 #define MPR_INTERFACE_DIALOUT_HOURS_RESTRICTION 0x00000010
49 #define MPR_INTERFACE_OUT_OF_RESOURCES 0x00000001
50 #define MPR_INTERFACE_SERVICE_PAUSED 0x00000008
51 #define MPR_INTERFACE_NO_MEDIA_SENSE 0x00000020
52 #define MPR_INTERFACE_NO_DEVICE 0x00000040
53 /*--- Router Management MIB Reference - Transport and Protocol Constants */
54 #define PID_ATALK 0x00000029
55 #define PID_IP 0x00000021
56 #define PID_IPX 0x0000002B
57 #define PID_NBF 0x0000003F
58 /*--- Remote Access Service Administration Reference - RAS Administration Enumerated Types */
59 typedef enum _RAS_HARDWARE_CONDITION
{
60 RAS_HARDWARE_OPERATIONAL
,
62 } RAS_HARDWARE_CONDITION
;
63 typedef enum _RAS_PORT_CONDITION
{
64 RAS_PORT_NON_OPERATIONAL
,
65 RAS_PORT_DISCONNECTED
,
66 RAS_PORT_CALLING_BACK
,
68 RAS_PORT_AUTHENTICATING
,
69 RAS_PORT_AUTHENTICATED
,
72 /*--- Remote Access Service Administration Reference - RAS Administration Structures */
73 #define ATADDRESSLEN 32
74 typedef struct _PPP_ATCP_INFO
{
76 WCHAR wszAddress
[ATADDRESSLEN
+1];
78 typedef struct _PPP_CCP_INFO
{
80 DWORD dwCompressionAlgorithm
;
82 DWORD dwRemoteCompressionAlgorithm
;
83 DWORD dwRemoteOptions
;
85 #define RASCCPCA_STAC 0x00000005
86 #define RASCCPCA_MPPC 0x00000006
87 #define PPP_CCP_COMPRESSION 0x00000001
88 #define PPP_CCP_ENCRYPTION40BITOLD 0x00000010
89 #define PPP_CCP_ENCRYPTION40BIT 0x00000020
90 #define PPP_CCP_ENCRYPTION128BIT 0x00000040
91 #define PPP_CCP_ENCRYPTION56BIT 0x00000080
92 #define PPP_CCP_HISTORYLESS 0x01000000
93 #define IPADDRESSLEN 15
94 typedef struct _PPP_IPCP_INFO
{
96 WCHAR wszAddress
[IPADDRESSLEN
+1];
97 WCHAR wszRemoteAddress
[IPADDRESSLEN
+1];
99 typedef struct _PPP_IPCP_INFO2
{
101 WCHAR wszAddress
[IPADDRESSLEN
+1];
102 WCHAR wszRemoteAddress
[IPADDRESSLEN
+1];
104 DWORD dwRemoteOptons
;
106 #define IPXADDRESSLEN 22
107 typedef struct _PPP_IPXCP_INFO
{
109 WCHAR wszAddress
[IPXADDRESSLEN
+1];
111 typedef struct _PPP_LCP_INFO
{
113 DWORD dwAuthenticationProtocol
;
114 DWORD dwAuthenticationData
;
115 DWORD dwRemoteAuthenticationProtocol
;
116 DWORD dwRemoteAuthenticationData
;
117 DWORD dwTerminateReason
;
118 DWORD dwRemoteTerminateReason
;
120 DWORD dwRemoteOptions
;
122 DWORD dwRemoteEapTypeId
;
124 #define PPP_LCP_PAP 0x0000C023
125 #define PPP_LCP_SPAP 0x0000C027
126 #define PPP_LCP_CHAP 0x0000C223
127 #define PPP_LCP_EAP 0x0000C227
128 #define PPP_LCP_CHAP_MD5 0x00000005
129 #define PPP_LCP_CHAP_MS 0x00000080
130 #define PPP_LCP_CHAP_MSV2 0x00000081
131 #define PPP_LCP_MULTILINK_FRAMING 0x00000001
132 typedef struct _PPP_NBFCP_INFO
{
134 WCHAR wszWksta
[NETBIOS_NAME_LEN
+1];
136 typedef struct _PPP_INFO
{
142 typedef struct _PPP_INFO_2
{
150 #define MAX_INTERFACE_NAME_LEN 256
151 typedef struct _RAS_CONNECTION_0
{
154 DWORD dwConnectDuration
;
155 ROUTER_INTERFACE_TYPE dwInterfaceType
;
156 DWORD dwConnectionFlags
;
157 WCHAR wszInterfaceName
[MAX_INTERFACE_NAME_LEN
+1];
158 WCHAR wszUserName
[UNLEN
+1];
159 WCHAR wszLogonDomain
[DNLEN
+1];
160 WCHAR wszRemoteComputer
[NETBIOS_NAME_LEN
+1];
161 } RAS_CONNECTION_0
,*PRAS_CONNECTION_0
;
162 #define RAS_FLAGS_PPP_CONNECTION 0x00000001
163 #define RAS_FLAGS_MESSENGER_PRESENT 0x00000002
164 #define RAS_FLAGS_RAS_CONNECTION 0x00000004
165 #define RAS_FLAGS_QUARANTINE_PRESENT 0x00000008
166 typedef struct RAS_CONNECTION_1
{
172 DWORD dwFramesXmited
;
176 DWORD dwAlignmentErr
;
177 DWORD dwHardwareOverrunErr
;
179 DWORD dwBufferOverrunErr
;
180 DWORD dwCompressionRatioIn
;
181 DWORD dwCompressionRatioOut
;
182 } RAS_CONNECTION_1
,*PRAS_CONNECTION_1
;
183 typedef struct _RAS_CONNECTION_2
{
185 WCHAR wszUserName
[UNLEN
+1];
186 ROUTER_INTERFACE_TYPE dwInterfaceType
;
189 } RAS_CONNECTION_2
,*PRAS_CONNECTION_2
;
190 #define MAX_PORT_NAME 16
191 #define MAX_MEDIA_NAME 16
192 #define MAX_DEVICE_NAME 128
193 #define MAX_DEVICETYPE_NAME 16
194 typedef struct _RAS_PORT_0
{
197 RAS_PORT_CONDITION dwPortCondition
;
198 DWORD dwTotalNumberOfCalls
;
199 DWORD dwConnectDuration
;
200 WCHAR wszPortName
[MAX_PORT_NAME
+1];
201 WCHAR wszMediaName
[MAX_MEDIA_NAME
+1];
202 WCHAR wszDeviceName
[MAX_DEVICE_NAME
+1];
203 WCHAR wszDeviceType
[MAX_DEVICETYPE_NAME
+1];
204 } RAS_PORT_0
,*PRAS_PORT_0
;
205 typedef struct _RAS_PORT_1
{
208 RAS_HARDWARE_CONDITION dwHardwareCondition
;
212 DWORD dwFramesXmited
;
216 DWORD dwAlignmentErr
;
217 DWORD dwHardwareOverrunErr
;
219 DWORD dwBufferOverrunErr
;
220 DWORD dwCompressionRatioIn
;
221 DWORD dwCompressionRatioOut
;
222 } RAS_PORT_1
,*PRAS_PORT_1
;
223 #define MAX_PHONE_NUMBER_LEN 128
224 typedef struct _RAS_USER_0
{
226 WCHAR wszPhoneNumber
[MAX_PHONE_NUMBER_LEN
+1];
227 } RAS_USER_0
,*PRAS_USER_0
;
228 #define RASPRIV_NoCallback 0x01
229 #define RASPRIV_AdminSetCallback 0x02
230 #define RASPRIV_CallerSetCallback 0x04
231 #define RASPRIV_DialinPrivilege 0x08
232 #define RASPRIV_CallbackType 0x07
233 typedef struct _RAS_USER_1
{
235 WCHAR wszPhoneNumber
[MAX_PHONE_NUMBER_LEN
+1];
237 } RAS_USER_1
,*PRAS_USER_1
;
238 #define RASPRIV2_DialinPolicy 0x01
239 /*--- Router Management Reference - Router Management Structures */
240 typedef struct _MPR_CREDENTIALSEX_0
{
242 LPBYTE lpbCredentialsInfo
;
243 } MPR_CREDENTIALSEX_0
,*PMPR_CREDENTIALSEX_0
;
244 #if (_WIN32_WINNT >= 0x0502)
245 typedef struct _MPR_CREDENTIALSEX_1
{
247 LPBYTE lpbCredentialsInfo
;
248 } MPR_CREDENTIALSEX_1
,*PMPR_CREDENTIALSEX_1
;
250 #define MPR_MaxDeviceType RAS_MaxDeviceType
251 #define MPR_MaxDeviceName RAS_MaxDeviceName
252 #define MPR_MaxPadType RAS_MaxPadType
253 #define MPR_MaxX25Address RAS_MaxX25Address
254 #define MPR_MaxFacilities RAS_MaxFacilities
255 #define MPR_MaxUserData RAS_MaxUserData
256 #define MPR_MaxPhoneNumber RAS_MaxPhoneNumber
257 typedef struct _MPR_DEVICE_0
{
258 WCHAR szDeviceType
[MPR_MaxDeviceType
+1];
259 WCHAR szDeviceName
[MPR_MaxDeviceName
+1];
260 } MPR_DEVICE_0
,*PMPR_DEVICE_0
;
261 typedef struct _MPR_DEVICE_1
{
262 WCHAR szDeviceType
[MPR_MaxDeviceType
+1];
263 WCHAR szDeviceName
[MPR_MaxDeviceName
+1];
264 WCHAR szLocalPhoneNumber
[MPR_MaxPhoneNumber
+1];
266 } MPR_DEVICE_1
,*PMPR_DEVICE_1
;
267 #define MAX_TRANSPORT_NAME_LEN 40
268 typedef struct _MPR_IFTRANSPORT_0
{
271 WCHAR wszIfTransportName
[MAX_TRANSPORT_NAME_LEN
+1];
272 } MPR_IFTRANSPORT_0
,*PMPR_IFTRANSPORT_0
;
273 typedef struct _MPR_INTERFACE_0
{
274 WCHAR wszInterfaceName
[MAX_INTERFACE_NAME_LEN
+1];
277 ROUTER_INTERFACE_TYPE dwIfType
;
278 ROUTER_CONNECTION_STATE dwConnectionState
;
279 DWORD fUnReachabilityReasons
;
281 } MPR_INTERFACE_0
,*PMPR_INTERFACE_0
;
282 typedef struct _MPR_INTERFACE_1
{
283 WCHAR wszInterfaceName
[MAX_INTERFACE_NAME_LEN
+1];
286 ROUTER_INTERFACE_TYPE IfType
;
287 ROUTER_CONNECTION_STATE dwConnectionState
;
288 DWORD fUnReachabilityReasons
;
290 LPWSTR lpwsDialoutHoursRestriction
;
291 } MPR_INTERFACE_1
,*PMPR_INTERFACE_1
;
292 typedef struct _MPR_INTERFACE_2
{
293 WCHAR wszInterfaceName
[MAX_INTERFACE_NAME_LEN
+1];
296 ROUTER_INTERFACE_TYPE dwIfType
;
297 ROUTER_CONNECTION_STATE dwConnectionState
;
298 DWORD fUnReachabilityReasons
;
301 WCHAR szLocalPhoneNumber
[RAS_MaxPhoneNumber
+1];
308 DWORD dwfNetProtocols
;
309 WCHAR szDeviceType
[MPR_MaxDeviceType
+1];
310 WCHAR szDeviceName
[MPR_MaxDeviceName
+1];
311 WCHAR szX25PadType
[MPR_MaxPadType
+1];
312 WCHAR szX25Address
[MPR_MaxX25Address
+1];
313 WCHAR szX25Facilities
[MPR_MaxFacilities
+1];
314 WCHAR szX25UserData
[MPR_MaxUserData
+1];
318 DWORD dwDialExtraPercent
;
319 DWORD dwDialExtraSampleSeconds
;
320 DWORD dwHangUpExtraPercent
;
321 DWORD dwHangUpExtraSampleSeconds
;
322 DWORD dwIdleDisconnectSeconds
;
324 DWORD dwEncryptionType
;
325 DWORD dwCustomAuthKey
;
326 DWORD dwCustomAuthDataSize
;
327 LPBYTE lpbCustomAuthData
;
330 } MPR_INTERFACE_2
,*PMPR_INTERFACE_2
;
331 #define MPRIO_SpecificIpAddr RASEO_SpecificIpAddr
332 #define MPRIO_SpecificNameServers RASEO_SpecificNameServers
333 #define MPRIO_IpHeaderCompression RASEO_IpHeaderCompression
334 #define MPRIO_RemoteDefaultGateway RASEO_RemoteDefaultGateway
335 #define MPRIO_DisableLcpExtensions RASEO_DisableLcpExtensions
336 #define MPRIO_SwCompression RASEO_SwCompression
337 #define MPRIO_RequireEncryptedPw RASEO_RequireEncryptedPw
338 #define MPRIO_RequireMsEncryptedPw RASEO_RequireMsEncryptedPw
339 #define MPRIO_RequireDataEncryption RASEO_RequireDataEncryption
340 #define MPRIO_NetworkLogon RASEO_NetworkLogon
341 #define MPRIO_UseLogonCredentials RASEO_UseLogonCredentials
342 #define MPRIO_PromoteAlternates RASEO_PromoteAlternates
343 #define MPRIO_SecureLocalFiles RASEO_SecureLocalFiles
344 #define MPRIO_RequireEAP RASEO_RequireEAP
345 #define MPRIO_RequirePAP RASEO_RequirePAP
346 #define MPRIO_RequireSPAP RASEO_RequireSPAP
347 #define MPRIO_SharedPhoneNumbers RASEO_SharedPhoneNumbers
348 #define MPRIO_RequireCHAP RASEO_RequireCHAP
349 #define MPRIO_RequireMsCHAP RASEO_RequireMsCHAP
350 #define MPRIO_RequireMsCHAP2 RASEO_RequireMsCHAP2
351 #define MPRNP_Ipx RASNP_Ipx
352 #define MPRNP_Ip RASNP_Ip
353 #define MPRDT_Modem RASDT_Modem
354 #define MPRDT_Isdn RASDT_Isdn
355 #define MPRDT_X25 RASDT_X25
356 #define MPRDT_Vpn RASDT_Vpn
357 #define MPRDT_Pad RASDT_Pad
358 #define MPRDT_Generic RASDT_Generic
359 #define MPRDT_Serial RASDT_Serial
360 #define MPRDT_FrameRelay RASDT_FrameRelay
361 #define MPRDT_Atm RASDT_Atm
362 #define MPRDT_Sonet RASDT_Sonet
363 #define MPRDT_SW56 RASDT_SW56
364 #define MPRDT_Irda RASDT_Irda
365 #define MPRDT_Parallel RASDT_Parallel
366 #define MPRDM_DialAll RASEDM_DialAll
367 #define MPRDM_DialAsNeeded RASEDM_DialAsNeeded
368 #define MPRIDS_Disabled RASIDS_Disabled
369 #define MPRIDS_UseGlobalValue RASIDS_UseGlobalValue
370 #define MPRET_Phone RASET_Phone
371 #define MPRET_Vpn RASET_Vpn
372 #define MPRET_Direct RASET_Direct
373 #define MPR_ET_None ET_None
374 #define MPR_ET_Require ET_Require
375 #define MPR_ET_RequireMax ET_RequireMax
376 #define MPR_ET_Optional ET_Optional
377 #define MPR_VS_Default VS_Default
378 #define MPR_VS_PptpOnly VS_PptpOnly
379 #define MPR_VS_PptpFirst VS_PptpFirst
380 #define MPR_VS_L2tpOnly VS_L2tpOnly
381 #define MPR_VS_L2tpFirst VS_L2tpFirst
382 typedef struct _MPR_INTERFACE_3
{
383 WCHAR wszInterfaceName
[MAX_INTERFACE_NAME_LEN
+1];
386 ROUTER_INTERFACE_TYPE dwIfType
;
387 ROUTER_CONNECTION_STATE dwConnectionState
;
388 DWORD fUnReachabilityReasons
;
391 WCHAR szLocalPhoneNumber
[RAS_MaxPhoneNumber
+1];
398 DWORD dwfNetProtocols
;
399 WCHAR szDeviceType
[MPR_MaxDeviceType
+1];
400 WCHAR szDeviceName
[MPR_MaxDeviceName
+1];
401 WCHAR szX25PadType
[MPR_MaxPadType
+1];
402 WCHAR szX25Address
[MPR_MaxX25Address
+1];
403 WCHAR szX25Facilities
[MPR_MaxFacilities
+1];
404 WCHAR szX25UserData
[MPR_MaxUserData
+1];
408 DWORD dwDialExtraPercent
;
409 DWORD dwDialExtraSampleSeconds
;
410 DWORD dwHangUpExtraPercent
;
411 DWORD dwHangUpExtraSampleSeconds
;
412 DWORD dwIdleDisconnectSeconds
;
414 DWORD dwEncryptionType
;
415 DWORD dwCustomAuthKey
;
416 DWORD dwCustomAuthDataSize
;
417 LPBYTE lpbCustomAuthData
;
421 IN6_ADDR ipv6addrDns
;
422 IN6_ADDR ipv6addrDnsAlt
;
424 } MPR_INTERFACE_3
,*PMPR_INTERFACE_3
;
425 typedef struct _MPR_SERVER_0
{
430 } MPR_SERVER_0
,*PMPR_SERVER_0
;
431 #if (_WIN32_WINNT >= 0x0502)
432 typedef struct _MPR_SERVER_1
{
433 DWORD dwNumPptpPorts
;
434 DWORD dwPptpPortFlags
;
435 DWORD dwNumL2tpPorts
;
436 DWORD dwL2tpPortFlags
;
437 } MPR_SERVER_1
,*PMPR_SERVER_1
;
438 #define MPR_ENABLE_RAS_ON_DEVICE 0x00000001
439 #define MPR_ENABLE_ROUTING_ON_DEVICE 0x00000002
441 typedef struct _MPR_TRANSPORT_0
{
444 WCHAR wszTransportName
[MAX_TRANSPORT_NAME_LEN
+1];
445 } MPR_TRANSPORT_0
,*PMPR_TRANSPORT_0
;
446 typedef HANDLE RAS_SERVER_HANDLE
;
447 typedef HANDLE MPR_SERVER_HANDLE
;
448 /*--- Remote Access Service Administration Reference - RAS Administration Functions */
449 DWORD WINAPI
MprAdminConnectionClearStats(RAS_SERVER_HANDLE
,HANDLE
);
450 DWORD WINAPI
MprAdminConnectionEnum(RAS_SERVER_HANDLE
,DWORD
,LPBYTE
*,DWORD
,LPDWORD
,LPDWORD
,LPDWORD
);
451 DWORD WINAPI
MprAdminConnectionGetInfo(RAS_SERVER_HANDLE
,DWORD
,HANDLE
,LPBYTE
*);
452 DWORD WINAPI
MprAdminConnectionRemoveQuarantine(HANDLE
,HANDLE
,BOOL
);
453 DWORD WINAPI
MprAdminPortClearStats(RAS_SERVER_HANDLE
,HANDLE
);
454 DWORD WINAPI
MprAdminPortDisconnect(RAS_SERVER_HANDLE
,HANDLE
);
455 DWORD WINAPI
MprAdminPortEnum(RAS_SERVER_HANDLE
,DWORD
,HANDLE
,LPBYTE
*,DWORD
,LPDWORD
,LPDWORD
,LPDWORD
);
456 DWORD WINAPI
MprAdminPortGetInfo(RAS_SERVER_HANDLE
,DWORD
,HANDLE
,LPBYTE
);
457 DWORD WINAPI
MprAdminPortReset(RAS_SERVER_HANDLE
,HANDLE
);
458 /*--- Remote Access Service Administration Reference - RAS Administration Functions - RAS Admin DLL Functions */
459 BOOL WINAPI
MprAdminAcceptNewConnection(RAS_CONNECTION_0
*,RAS_CONNECTION_1
*);
460 BOOL WINAPI
MprAdminAcceptNewConnection2(RAS_CONNECTION_0
*,RAS_CONNECTION_1
*,RAS_CONNECTION_2
*);
461 BOOL WINAPI
MprAdminAcceptNewLink(RAS_PORT_0
*,RAS_PORT_1
*);
462 BOOL WINAPI
MprAdminAcceptReauthentication(RAS_CONNECTION_0
*,RAS_CONNECTION_1
*,RAS_CONNECTION_2
*,RAS_CONNECTION_3
*);
463 void WINAPI
MprAdminConnectionHangupNotification(RAS_CONNECTION_0
*,RAS_CONNECTION_1
*);
464 void WINAPI
MprAdminConnectionHangupNotification2(RAS_CONNECTION_0
*,RAS_CONNECTION_1
*,RAS_CONNECTION_2
*);
465 DWORD WINAPI
MprAdminGetIpAddressForUser(WCHAR
*,WCHAR
*,DWORD
*,BOOL
*);
466 #if (_WIN32_WINNT >= 0x0502)
467 DWORD WINAPI
MprAdminInitializeDll(void);
468 DWORD WINAPI
MprAdminTerminateDll(void);
470 void WINAPI
MprAdminLinkHangupNotification(RAS_PORT_0
*,RAS_PORT_1
*);
471 void WINAPI
MprAdminReleaseIpAddress(WCHAR
*,WCHAR
*,DWORD
*);
472 /*--- Remote Access Service Administration Reference - RAS Administration Functions - RAS User Administration Functions */
473 DWORD WINAPI
MprAdminGetPDCServer(const WCHAR
*,const WCHAR
*,LPWSTR
);
474 DWORD WINAPI
MprAdminSendUserMessage(MPR_SERVER_HANDLE
,HANDLE
,LPWSTR
);
475 DWORD WINAPI
MprAdminUserGetInfo(const WCHAR
*,const WCHAR
*,DWORD
,LPBYTE
);
476 DWORD WINAPI
MprAdminUserSetInfo(const WCHAR
*,const WCHAR
*,DWORD
,const LPBYTE
);
477 /*--- Router Management Reference - Router Administration Functions */
478 DWORD WINAPI
MprAdminBufferFree(LPVOID
);
479 DWORD WINAPI
MprAdminDeregisterConnectionNotification(MPR_SERVER_HANDLE
,HANDLE
);
480 DWORD WINAPI
MprAdminEstablishDomainRasServer(PWCHAR
,PWCHAR
,BOOL
);
481 DWORD WINAPI
MprAdminGetErrorString(DWORD
,LPWSTR
*);
482 DWORD WINAPI
MprAdminInterfaceConnect(MPR_SERVER_HANDLE
,HANDLE
,HANDLE
,BOOL
);
483 DWORD WINAPI
MprAdminInterfaceCreate(MPR_SERVER_HANDLE
,DWORD
,LPBYTE
,HANDLE
*);
484 DWORD WINAPI
MprAdminInterfaceDelete(MPR_SERVER_HANDLE
,HANDLE
);
485 DWORD WINAPI
MprAdminInterfaceDeviceGetInfo(MPR_SERVER_HANDLE
,HANDLE
,DWORD
,DWORD
,LPBYTE
*);
486 DWORD WINAPI
MprAdminInterfaceDeviceSetInfo(MPR_SERVER_HANDLE
,HANDLE
,DWORD
,DWORD
,LPBYTE
);
487 DWORD WINAPI
MprAdminInterfaceDisconnect(MPR_SERVER_HANDLE
,HANDLE
);
488 DWORD WINAPI
MprAdminInterfaceEnum(MPR_SERVER_HANDLE
,DWORD
,LPBYTE
*,DWORD
,LPDWORD
,LPDWORD
,LPDWORD
);
489 DWORD WINAPI
MprAdminInterfaceGetCredentials(LPWSTR
,LPWSTR
,LPWSTR
,LPWSTR
,LPWSTR
);
490 DWORD WINAPI
MprAdminInterfaceGetHandle(MPR_SERVER_HANDLE
,LPWSTR
,HANDLE
*,BOOL
);
491 DWORD WINAPI
MprAdminInterfaceGetInfo(MPR_SERVER_HANDLE
,HANDLE
,DWORD
,LPBYTE
*);
492 DWORD WINAPI
MprAdminInterfaceQueryUpdateResult(MPR_SERVER_HANDLE
,HANDLE
,DWORD
,LPDWORD
);
493 DWORD WINAPI
MprAdminInterfaceSetCredentials(LPWSTR
,LPWSTR
,LPWSTR
,LPWSTR
,LPWSTR
);
494 DWORD WINAPI
MprAdminInterfaceSetCredentialsEx(MPR_SERVER_HANDLE
,HANDLE
,DWORD
,LPBYTE
);
495 DWORD WINAPI
MprAdminInterfaceSetInfo(MPR_SERVER_HANDLE
,HANDLE
,DWORD
,LPBYTE
);
496 DWORD WINAPI
MprAdminInterfaceTransportAdd(MPR_SERVER_HANDLE
,HANDLE
,DWORD
,LPBYTE
,DWORD
);
497 DWORD WINAPI
MprAdminInterfaceTransportGetInfo(MPR_SERVER_HANDLE
,HANDLE
,DWORD
,LPBYTE
*,LPDWORD
);
498 DWORD WINAPI
MprAdminInterfaceTransportRemove(MPR_SERVER_HANDLE
,HANDLE
,DWORD
);
499 DWORD WINAPI
MprAdminInterfaceTransportSetInfo(MPR_SERVER_HANDLE
,HANDLE
,DWORD
,LPBYTE
,DWORD
);
500 DWORD WINAPI
MprAdminInterfaceUpdatePhonebookInfo(MPR_SERVER_HANDLE
,HANDLE
);
501 DWORD WINAPI
MprAdminInterfaceUpdateRoutes(MPR_SERVER_HANDLE
,HANDLE
,DWORD
,HANDLE
);
502 DWORD WINAPI
MprAdminIsDomainRasServer(PWCHAR
,PWCHAR
,PBOOL
);
503 BOOL WINAPI
MprAdminIsServiceRunning(LPWSTR
);
504 DWORD WINAPI
MprAdminRegisterConnectionNotification(MPR_SERVER_HANDLE
,HANDLE
);
505 DWORD WINAPI
MprAdminServerConnect(LPWSTR
,MPR_SERVER_HANDLE
*);
506 void WINAPI
MprAdminServerDisconnect(MPR_SERVER_HANDLE
);
507 DWORD WINAPI
MprAdminServerGetCredentials(MPR_SERVER_HANDLE
,DWORD
,LPBYTE
*);
508 DWORD WINAPI
MprAdminInterfaceGetCredentialsEx(MPR_SERVER_HANDLE
,HANDLE
,DWORD
,LPBYTE
*);
509 DWORD WINAPI
MprAdminServerGetInfo(MPR_SERVER_HANDLE
,DWORD
,LPBYTE
*);
510 DWORD WINAPI
MprAdminServerSetCredentials(MPR_SERVER_HANDLE
,DWORD
,LPBYTE
);
511 DWORD WINAPI
MprAdminServerSetInfo(MPR_SERVER_HANDLE
,DWORD
,LPBYTE
);
512 DWORD WINAPI
MprAdminTransportCreate(MPR_SERVER_HANDLE
,DWORD
,LPWSTR
,LPBYTE
,DWORD
,LPBYTE
,DWORD
,LPWSTR
);
513 DWORD WINAPI
MprAdminTransportGetInfo(MPR_SERVER_HANDLE
,DWORD
,LPBYTE
*,LPDWORD
,LPBYTE
*,LPDWORD
);
514 DWORD WINAPI
MprAdminTransportSetInfo(MPR_SERVER_HANDLE
,DWORD
,LPBYTE
,DWORD
,LPBYTE
,DWORD
);
515 /*--- Router Management Reference - Router Configuration Functions */
516 DWORD WINAPI
MprConfigBufferFree(LPVOID
);
517 DWORD WINAPI
MprConfigGetFriendlyName(HANDLE
,PWCHAR
,PWCHAR
,DWORD
);
518 DWORD WINAPI
MprConfigGetGuidName(HANDLE
,PWCHAR
,PWCHAR
,DWORD
);
519 DWORD WINAPI
MprConfigInterfaceCreate(HANDLE
,DWORD
,LPBYTE
,HANDLE
*);
520 DWORD WINAPI
MprConfigInterfaceDelete(HANDLE
,HANDLE
);
521 DWORD WINAPI
MprConfigInterfaceEnum(HANDLE
,DWORD
,LPBYTE
*,DWORD
,LPDWORD
,LPDWORD
,LPDWORD
);
522 DWORD WINAPI
MprConfigInterfaceGetHandle(HANDLE
,LPWSTR
,HANDLE
*);
523 DWORD WINAPI
MprConfigInterfaceGetInfo(HANDLE
,HANDLE
,DWORD
,LPBYTE
*,LPDWORD
);
524 DWORD WINAPI
MprConfigInterfaceSetInfo(HANDLE
,HANDLE
,DWORD
,LPBYTE
);
525 DWORD WINAPI
MprConfigInterfaceTransportAdd(HANDLE
,HANDLE
,DWORD
,LPWSTR
,LPBYTE
,DWORD
,HANDLE
*);
526 DWORD WINAPI
MprConfigInterfaceTransportEnum(HANDLE
,HANDLE
,DWORD
,LPBYTE
*,DWORD
,LPDWORD
,LPDWORD
,LPDWORD
);
527 DWORD WINAPI
MprConfigInterfaceTransportGetHandle(HANDLE
,HANDLE
,DWORD
,HANDLE
*);
528 DWORD WINAPI
MprConfigInterfaceTransportGetInfo(HANDLE
,HANDLE
,HANDLE
,LPBYTE
*,LPDWORD
);
529 DWORD WINAPI
MprConfigInterfaceTransportRemove(HANDLE
,HANDLE
,HANDLE
);
530 DWORD WINAPI
MprConfigInterfaceTransportSetInfo(HANDLE
,HANDLE
,HANDLE
,LPBYTE
,DWORD
);
531 DWORD WINAPI
MprConfigServerBackup(HANDLE
,LPWSTR
);
532 DWORD WINAPI
MprConfigServerConnect(LPWSTR
,HANDLE
*);
533 void WINAPI
MprConfigServerDisconnect(HANDLE
);
534 DWORD WINAPI
MprConfigServerGetInfo(HANDLE
,DWORD
,LPBYTE
*);
535 DWORD WINAPI
MprConfigServerInstall(DWORD
,PVOID
);
536 DWORD WINAPI
MprConfigServerRestore(HANDLE
,LPWSTR
);
537 DWORD WINAPI
MprConfigServerSetInfo(HANDLE
,DWORD
,LPBYTE
);
538 DWORD WINAPI
MprConfigTransportCreate(HANDLE
,DWORD
,LPWSTR
,LPBYTE
,DWORD
,LPBYTE
,DWORD
,LPWSTR
,HANDLE
);
539 DWORD WINAPI
MprConfigTransportDelete(HANDLE
,HANDLE
);
540 DWORD WINAPI
MprConfigTransportEnum(HANDLE
,DWORD
,LPBYTE
*,DWORD
,LPDWORD
,LPDWORD
,LPDWORD
);
541 DWORD WINAPI
MprConfigTransportGetHandle(HANDLE
,DWORD
,HANDLE
*);
542 DWORD WINAPI
MprConfigTransportGetInfo(HANDLE
,HANDLE
,LPBYTE
*,LPDWORD
,LPBYTE
*,LPDWORD
,LPWSTR
*);
543 DWORD WINAPI
MprConfigTransportSetInfo(HANDLE
,HANDLE
,LPBYTE
,DWORD
,LPBYTE
,DWORD
,LPWSTR
);
544 /*--- Router Management Reference - Information Header Functions */
545 DWORD WINAPI
MprInfoBlockAdd(LPVOID
,DWORD
,DWORD
,DWORD
,LPBYTE
,LPVOID
*);
546 DWORD WINAPI
MprInfoBlockFind(LPVOID
,DWORD
,LPDWORD
,LPDWORD
,LPBYTE
*);
547 DWORD WINAPI
MprInfoBlockQuerySize(LPVOID
);
548 DWORD WINAPI
MprInfoBlockRemove(LPVOID
,DWORD
,LPVOID
*);
549 DWORD WINAPI
MprInfoBlockSet(LPVOID
,DWORD
,DWORD
,DWORD
,LPBYTE
,LPVOID
*);
550 DWORD WINAPI
MprInfoCreate(DWORD
,LPVOID
*);
551 DWORD WINAPI
MprInfoDelete(LPVOID
);
552 DWORD WINAPI
MprInfoDuplicate(LPVOID
,LPVOID
*);
553 DWORD WINAPI
MprInfoRemoveAll(LPVOID
,LPVOID
*);
554 /*--- Router Management MIB Reference - Router Management MIB Functions */
555 typedef HANDLE MIB_SERVER_HANDLE
;
556 DWORD WINAPI
MprAdminMIBBufferFree(LPVOID
);
557 DWORD WINAPI
MprAdminMIBEntryCreate(MIB_SERVER_HANDLE
,DWORD
,DWORD
,LPVOID
,DWORD
);
558 DWORD WINAPI
MprAdminMIBEntryDelete(MIB_SERVER_HANDLE
,DWORD
,DWORD
,LPVOID
,DWORD
);
559 DWORD WINAPI
MprAdminMIBEntryGet(MIB_SERVER_HANDLE
,DWORD
,DWORD
,LPVOID
,DWORD
,LPVOID
*,LPDWORD
);
560 DWORD WINAPI
MprAdminMIBEntryGetFirst(MIB_SERVER_HANDLE
,DWORD
,DWORD
,LPVOID
,DWORD
,LPVOID
*,LPDWORD
);
561 DWORD WINAPI
MprAdminMIBEntryGetNext(MIB_SERVER_HANDLE
,DWORD
,DWORD
,LPVOID
,DWORD
,LPVOID
*,LPDWORD
);
562 DWORD WINAPI
MprAdminMIBEntrySet(MIB_SERVER_HANDLE
,DWORD
,DWORD
,LPVOID
,DWORD
);
563 DWORD WINAPI
MprAdminMIBGetTrapInfo(MIB_SERVER_HANDLE
,DWORD
,DWORD
,LPVOID
,DWORD
,LPVOID
*,LPDWORD
);
564 DWORD WINAPI
MprAdminMIBServerConnect(LPWSTR
,MIB_SERVER_HANDLE
*);
565 void WINAPI
MprAdminMIBServerDisconnect(MIB_SERVER_HANDLE
);
566 DWORD WINAPI
MprAdminMIBSetTrapInfo(DWORD
,DWORD
,HANDLE
,LPVOID
,DWORD
,LPVOID
*,LPDWORD
);
567 #endif /* (_WIN32_WINNT >= 0x0500) */