ReactOS Fundraising Campaign 2012
 
€ 4,410 / € 30,000

Information | Donate

Home | Info | Community | Development | myReactOS | Contact Us

  1. Home
  2. Community
  3. Development
  4. myReactOS
  5. Fundraiser 2012

  1. Main Page
  2. Alphabetical List
  3. Data Structures
  4. Directories
  5. File List
  6. Data Fields
  7. Globals
  8. Related Pages

ReactOS Development > Doxygen

ras.h
Go to the documentation of this file.
00001 #ifndef _RAS_H
00002 #define _RAS_H
00003 
00004 #ifdef __cplusplus
00005 extern "C"
00006 {
00007 #endif
00008 
00009 #ifndef _LMCONS_H
00010 #include <lmcons.h>
00011 #endif
00012 
00013 /* TODO
00014 include <basetsd.h> from winnt.h so that this typedef is not necessary
00015 */
00016 #ifndef _BASETSD_H
00017 typedef unsigned long ULONG_PTR, *PULONG_PTR;
00018 #endif
00019 
00020 #include <pshpack4.h>
00021 
00022 #define RAS_MaxDeviceType     16
00023 #define RAS_MaxPhoneNumber    128
00024 #define RAS_MaxIpAddress      15
00025 #define RAS_MaxIpxAddress     21
00026 #define RAS_MaxEntryName      256
00027 #define RAS_MaxDeviceName     128
00028 #define RAS_MaxCallbackNumber RAS_MaxPhoneNumber
00029 #define RAS_MaxAreaCode       10
00030 #define RAS_MaxPadType        32
00031 #define RAS_MaxX25Address     200
00032 #define RAS_MaxFacilities     200
00033 #define RAS_MaxUserData       200
00034 #define RAS_MaxReplyMessage   1024
00035 #define RAS_MaxDnsSuffix      256
00036 #if (WINVER >= 0x501)
00037 #define RASCF_AllUsers      0x00000001
00038 #define RASCF_GlobalCreds   0x00000002
00039 #endif /*(WINVER >= 0x501)*/
00040 #define RDEOPT_UsePrefixSuffix           0x00000001
00041 #define RDEOPT_PausedStates              0x00000002
00042 #define RDEOPT_IgnoreModemSpeaker        0x00000004
00043 #define RDEOPT_SetModemSpeaker           0x00000008
00044 #define RDEOPT_IgnoreSoftwareCompression 0x00000010
00045 #define RDEOPT_SetSoftwareCompression    0x00000020
00046 #define RDEOPT_DisableConnectedUI        0x00000040
00047 #define RDEOPT_DisableReconnectUI        0x00000080
00048 #define RDEOPT_DisableReconnect          0x00000100
00049 #define RDEOPT_NoUser                    0x00000200
00050 #define RDEOPT_PauseOnScript             0x00000400
00051 #define RDEOPT_Router                    0x00000800
00052 #define REN_User                         0x00000000
00053 #define REN_AllUsers                     0x00000001
00054 #define VS_Default                      0
00055 #define VS_PptpOnly                     1
00056 #define VS_PptpFirst                    2
00057 #define VS_L2tpOnly                     3
00058 #define VS_L2tpFirst                    4
00059 #define RASDIALEVENT                    "RasDialEvent"
00060 #define WM_RASDIALEVENT                 0xCCCD
00061 #define RASEO_UseCountryAndAreaCodes    0x00000001
00062 #define RASEO_SpecificIpAddr            0x00000002
00063 #define RASEO_SpecificNameServers       0x00000004
00064 #define RASEO_IpHeaderCompression       0x00000008
00065 #define RASEO_RemoteDefaultGateway      0x00000010
00066 #define RASEO_DisableLcpExtensions      0x00000020
00067 #define RASEO_TerminalBeforeDial        0x00000040
00068 #define RASEO_TerminalAfterDial         0x00000080
00069 #define RASEO_ModemLights               0x00000100
00070 #define RASEO_SwCompression             0x00000200
00071 #define RASEO_RequireEncryptedPw        0x00000400
00072 #define RASEO_RequireMsEncryptedPw      0x00000800
00073 #define RASEO_RequireDataEncryption     0x00001000
00074 #define RASEO_NetworkLogon              0x00002000
00075 #define RASEO_UseLogonCredentials       0x00004000
00076 #define RASEO_PromoteAlternates         0x00008000
00077 #define RASNP_NetBEUI                   0x00000001
00078 #define RASNP_Ipx                       0x00000002
00079 #define RASNP_Ip                        0x00000004
00080 #define RASFP_Ppp                       0x00000001
00081 #define RASFP_Slip                      0x00000002
00082 #define RASFP_Ras                       0x00000004
00083 #define RASDT_Direct                    TEXT("direct")
00084 #define RASDT_Modem                     TEXT("modem")
00085 #define RASDT_Isdn                      TEXT("isdn")
00086 #define RASDT_X25                       TEXT("x25")
00087 #define RASDT_Vpn                       TEXT("vpn")
00088 #define RASDT_Pad                       TEXT("pad")
00089 #define RASDT_Generic                   TEXT("GENERIC")
00090 #define RASDT_Serial                    TEXT("SERIAL")
00091 #define RASDT_FrameRelay                TEXT("FRAMERELAY")
00092 #define RASDT_Atm                       TEXT("ATM")
00093 #define RASDT_Sonet                     TEXT("SONET")
00094 #define RASDT_SW56                      TEXT("SW56")
00095 #define RASDT_Irda                      TEXT("IRDA")
00096 #define RASDT_Parallel                  TEXT("PARALLEL")
00097 #if (WINVER >= 0x501)
00098 #define RASDT_PPPoE                     TEXT("PPPoE")
00099 #endif
00100 #define RASET_Phone     1
00101 #define RASET_Vpn       2
00102 #define RASET_Direct    3
00103 #define RASET_Internet  4
00104 #if (WINVER >= 0x501)
00105 #define RASET_Broadband 5
00106 #endif
00107 #if (WINVER >= 0x401)
00108 #define RASEO_SecureLocalFiles  0x00010000
00109 #define RASCN_Connection        0x00000001
00110 #define RASCN_Disconnection     0x00000002
00111 #define RASCN_BandwidthAdded    0x00000004
00112 #define RASCN_BandwidthRemoved  0x00000008
00113 #define RASEDM_DialAll          1
00114 #define RASEDM_DialAsNeeded     2
00115 #define RASIDS_Disabled         0xffffffff
00116 #define RASIDS_UseGlobalValue   0
00117 #define RASADFLG_PositionDlg    0x00000001
00118 #define RASCM_UserName       0x00000001
00119 #define RASCM_Password       0x00000002
00120 #define RASCM_Domain         0x00000004
00121 #define RASADP_DisableConnectionQuery   0
00122 #define RASADP_LoginSessionDisable      1
00123 #define RASADP_SavedAddressesLimit      2
00124 #define RASADP_FailedConnectionTimeout  3
00125 #define RASADP_ConnectionQueryTimeout   4
00126 #endif  /* (WINVER >= 0x401) */
00127 #if (WINVER >= 0x500)
00128 #define RDEOPT_CustomDial   0x00001000
00129 #if (WINVER >= 0x501)
00130 #define RDEOPT_UseCustomScripting        0x00002000
00131 #define RASCM_DefaultCreds       0x00000008
00132 #define RASCM_PreSharedKey       0x00000010
00133 #define RASCM_ServerPreSharedKey 0x00000020
00134 #define RASCM_DDMPreSharedKey    0x00000040
00135 #endif /*(WINVER >= 0x501)*/
00136 #define RASLCPAP_PAP        0xC023
00137 #define RASLCPAP_SPAP       0xC027
00138 #define RASLCPAP_CHAP       0xC223
00139 #define RASLCPAP_EAP        0xC227
00140 #define RASLCPAD_CHAP_MD5   0x05
00141 #define RASLCPAD_CHAP_MS    0x80
00142 #define RASLCPAD_CHAP_MSV2  0x81
00143 #define RASLCPO_PFC         0x00000001
00144 #define RASLCPO_ACFC        0x00000002
00145 #define RASLCPO_SSHF        0x00000004
00146 #define RASLCPO_DES_56      0x00000008
00147 #define RASLCPO_3_DES       0x00000010
00148 #define RASCCPCA_MPPC       0x00000006
00149 #define RASCCPCA_STAC       0x00000005
00150 #define RASCCPO_Compression         0x00000001
00151 #define RASCCPO_HistoryLess         0x00000002
00152 #define RASCCPO_Encryption56bit     0x00000010
00153 #define RASCCPO_Encryption40bit     0x00000020
00154 #define RASCCPO_Encryption128bit    0x00000040
00155 #define RASEO_RequireEAP            0x00020000
00156 #define RASEO_RequirePAP            0x00040000
00157 #define RASEO_RequireSPAP           0x00080000
00158 #define RASEO_Custom                0x00100000
00159 #define RASEO_PreviewPhoneNumber    0x00200000
00160 #define RASEO_SharedPhoneNumbers    0x00800000
00161 #define RASEO_PreviewUserPw         0x01000000
00162 #define RASEO_PreviewDomain         0x02000000
00163 #define RASEO_ShowDialingProgress   0x04000000
00164 #define RASEO_RequireCHAP           0x08000000
00165 #define RASEO_RequireMsCHAP         0x10000000
00166 #define RASEO_RequireMsCHAP2        0x20000000
00167 #define RASEO_RequireW95MSCHAP      0x40000000
00168 #define RASEO_CustomScript          0x80000000
00169 #define RASIPO_VJ                   0x00000001
00170 #define RCD_SingleUser              0
00171 #define RCD_AllUsers                0x00000001
00172 #define RCD_Eap                     0x00000002
00173 #define RASEAPF_NonInteractive      0x00000002
00174 #define RASEAPF_Logon               0x00000004
00175 #define RASEAPF_Preview             0x00000008
00176 #define ET_40Bit        1
00177 #define ET_128Bit       2
00178 #define ET_None         0
00179 #define ET_Require      1
00180 #define ET_RequireMax   2
00181 #define ET_Optional     3
00182 #endif /* (WINVER >= 0x500) */
00183 #if (WINVER >= 0x501)
00184 #define RASEO2_SecureFileAndPrint       0x00000001
00185 #define RASEO2_SecureClientForMSNet     0x00000002
00186 #define RASEO2_DontNegotiateMultilink   0x00000004
00187 #define RASEO2_DontUseRasCredentials    0x00000008
00188 #define RASEO2_UsePreSharedKey          0x00000010
00189 #define RASEO2_Internet                 0x00000020
00190 #define RASEO2_DisableNbtOverIP         0x00000040
00191 #define RASEO2_UseGlobalDeviceSettings  0x00000080
00192 #define RASEO2_ReconnectIfDropped       0x00000100
00193 #define RASEO2_SharePhoneNumbers        0x00000200
00194 #endif /*(WINVER >= 0x501)*/
00195 
00196 #define RASCS_PAUSED 0x1000
00197 #define RASCS_DONE   0x2000
00198 typedef enum tagRASCONNSTATE {
00199       RASCS_OpenPort = 0,
00200       RASCS_PortOpened,
00201       RASCS_ConnectDevice,
00202       RASCS_DeviceConnected,
00203       RASCS_AllDevicesConnected,
00204       RASCS_Authenticate,
00205       RASCS_AuthNotify,
00206       RASCS_AuthRetry,
00207       RASCS_AuthCallback,
00208       RASCS_AuthChangePassword,
00209       RASCS_AuthProject,
00210       RASCS_AuthLinkSpeed,
00211       RASCS_AuthAck,
00212       RASCS_ReAuthenticate,
00213       RASCS_Authenticated,
00214       RASCS_PrepareForCallback,
00215       RASCS_WaitForModemReset,
00216       RASCS_WaitForCallback,
00217       RASCS_Projected,
00218       RASCS_StartAuthentication,
00219       RASCS_CallbackComplete,
00220       RASCS_LogonNetwork,
00221       RASCS_SubEntryConnected,
00222       RASCS_SubEntryDisconnected,
00223       RASCS_Interactive = RASCS_PAUSED,
00224       RASCS_RetryAuthentication,
00225       RASCS_CallbackSetByCaller,
00226       RASCS_PasswordExpired,
00227 #if (WINVER >= 0x500)
00228       RASCS_InvokeEapUI,
00229 #endif
00230       RASCS_Connected = RASCS_DONE,
00231       RASCS_Disconnected
00232 }  RASCONNSTATE, *LPRASCONNSTATE;
00233 
00234 typedef enum tagRASPROJECTION {
00235     RASP_Amb =      0x10000,
00236     RASP_PppNbf =   0x803F,
00237     RASP_PppIpx =   0x802B,
00238     RASP_PppIp =    0x8021,
00239 #if (WINVER >= 0x500)
00240     RASP_PppCcp =   0x80FD,
00241 #endif
00242     RASP_PppLcp =   0xC021,
00243     RASP_Slip =     0x20000
00244 } RASPROJECTION, *LPRASPROJECTION;
00245 
00246 DECLARE_HANDLE (HRASCONN);
00247 typedef  HRASCONN* LPHRASCONN;
00248 
00249 typedef struct tagRASCONNW {
00250     DWORD dwSize;
00251     HRASCONN hrasconn;
00252     WCHAR szEntryName[RAS_MaxEntryName + 1];
00253 #if (WINVER >= 0x400)
00254     WCHAR szDeviceType[RAS_MaxDeviceType + 1];
00255     WCHAR szDeviceName[RAS_MaxDeviceName + 1];
00256 #endif
00257 #if (WINVER >= 0x401)
00258     WCHAR szPhonebook[MAX_PATH];
00259     DWORD dwSubEntry;
00260 #endif
00261 #if (WINVER >= 0x500)
00262     GUID guidEntry;
00263 #endif
00264 #if (WINVER >= 0x501)
00265     DWORD dwSessionId;
00266     DWORD dwFlags;
00267     LUID luid;
00268 #endif
00269 } RASCONNW, *LPRASCONNW;
00270 
00271 typedef struct tagRASCONNA {
00272     DWORD dwSize;
00273     HRASCONN hrasconn;
00274     CHAR szEntryName[RAS_MaxEntryName + 1];
00275 #if (WINVER >= 0x400)
00276     CHAR szDeviceType[RAS_MaxDeviceType + 1];
00277     CHAR szDeviceName[RAS_MaxDeviceName + 1];
00278 #endif
00279 #if (WINVER >= 0x401)
00280     CHAR szPhonebook[MAX_PATH];
00281     DWORD dwSubEntry;
00282 #endif
00283 #if (WINVER >= 0x500)
00284     GUID guidEntry;
00285 #endif
00286 #if (WINVER >= 0x501)
00287     DWORD dwSessionId;
00288     DWORD dwFlags;
00289     LUID luid;
00290 #endif
00291 } RASCONNA, *LPRASCONNA;
00292 
00293 typedef struct tagRASCONNSTATUSW {
00294     DWORD dwSize;
00295     RASCONNSTATE rasconnstate;
00296     DWORD dwError;
00297     WCHAR szDeviceType[RAS_MaxDeviceType + 1];
00298     WCHAR szDeviceName[RAS_MaxDeviceName + 1];
00299 #if (WINVER >= 0x401)
00300     WCHAR szPhoneNumber[RAS_MaxPhoneNumber + 1];
00301 #endif
00302 } RASCONNSTATUSW, *LPRASCONNSTATUSW;
00303 
00304 typedef struct tagRASCONNSTATUSA {
00305     DWORD dwSize;
00306     RASCONNSTATE rasconnstate;
00307     DWORD dwError;
00308     CHAR szDeviceType[RAS_MaxDeviceType + 1];
00309     CHAR szDeviceName[RAS_MaxDeviceName + 1];
00310 #if (WINVER >= 0x401)
00311     CHAR szPhoneNumber[RAS_MaxPhoneNumber + 1];
00312 #endif
00313 } RASCONNSTATUSA, *LPRASCONNSTATUSA;
00314 
00315 typedef struct tagRASDIALPARAMSW {
00316     DWORD dwSize;
00317     WCHAR szEntryName[RAS_MaxEntryName + 1];
00318     WCHAR szPhoneNumber[RAS_MaxPhoneNumber + 1];
00319     WCHAR szCallbackNumber[RAS_MaxCallbackNumber + 1];
00320     WCHAR szUserName[UNLEN + 1];
00321     WCHAR szPassword[PWLEN + 1];
00322     WCHAR szDomain[DNLEN + 1];
00323 #if (WINVER >= 0x401)
00324     DWORD dwSubEntry;
00325     ULONG_PTR dwCallbackId;
00326 #endif
00327 } RASDIALPARAMSW, *LPRASDIALPARAMSW;
00328 
00329 typedef struct tagRASDIALPARAMSA {
00330     DWORD dwSize;
00331     CHAR szEntryName[RAS_MaxEntryName + 1];
00332     CHAR szPhoneNumber[RAS_MaxPhoneNumber + 1];
00333     CHAR szCallbackNumber[RAS_MaxCallbackNumber + 1];
00334     CHAR szUserName[UNLEN + 1];
00335     CHAR szPassword[PWLEN + 1];
00336     CHAR szDomain[DNLEN + 1];
00337 #if (WINVER >= 0x401)
00338     DWORD dwSubEntry;
00339     ULONG_PTR dwCallbackId;
00340 #endif
00341 } RASDIALPARAMSA, *LPRASDIALPARAMSA;
00342 
00343 #if (WINVER >= 0x500)
00344 typedef struct tagRASEAPINFO {
00345     DWORD dwSizeofEapInfo;
00346     BYTE *pbEapInfo;
00347 } RASEAPINFO;
00348 #endif
00349 
00350 typedef struct tagRASDIALEXTENSIONS {
00351     DWORD dwSize;
00352     DWORD dwfOptions;
00353     HWND hwndParent;
00354     ULONG_PTR reserved;
00355 #if (WINVER >= 0x500)
00356     ULONG_PTR reserved1;
00357     RASEAPINFO RasEapInfo;
00358 #endif
00359 } RASDIALEXTENSIONS, *LPRASDIALEXTENSIONS;
00360 
00361 typedef struct tagRASENTRYNAMEW {
00362     DWORD dwSize;
00363     WCHAR szEntryName[RAS_MaxEntryName + 1];
00364 #if (WINVER >= 0x500)
00365     DWORD dwFlags;
00366     WCHAR szPhonebookPath[MAX_PATH + 1];
00367 #endif
00368 } RASENTRYNAMEW, *LPRASENTRYNAMEW;
00369 
00370 typedef struct tagRASENTRYNAMEA {
00371     DWORD dwSize;
00372     CHAR szEntryName[RAS_MaxEntryName + 1];
00373 #if (WINVER >= 0x500)
00374     DWORD dwFlags;
00375     CHAR szPhonebookPath[MAX_PATH + 1];
00376 #endif
00377 } RASENTRYNAMEA, *LPRASENTRYNAMEA;
00378 
00379 typedef struct tagRASAMBW {
00380     DWORD dwSize;
00381     DWORD dwError;
00382     WCHAR szNetBiosError[NETBIOS_NAME_LEN + 1];
00383     BYTE bLana;
00384 } RASAMBW, *LPRASAMBW;
00385 
00386 typedef struct tagRASAMBA {
00387     DWORD dwSize;
00388     DWORD dwError;
00389     CHAR szNetBiosError[NETBIOS_NAME_LEN + 1];
00390     BYTE bLana;
00391 } RASAMBA, *LPRASAMBA;
00392 
00393 typedef struct tagRASPPPNBFW {
00394     DWORD dwSize;
00395     DWORD dwError;
00396     DWORD dwNetBiosError;
00397     WCHAR szNetBiosError[NETBIOS_NAME_LEN + 1];
00398     WCHAR szWorkstationName[NETBIOS_NAME_LEN + 1];
00399     BYTE bLana;
00400 } RASPPPNBFW, *LPRASPPPNBFW;
00401 
00402 typedef struct tagRASPPPNBFA {
00403     DWORD dwSize;
00404     DWORD dwError;
00405     DWORD dwNetBiosError;
00406     CHAR szNetBiosError[NETBIOS_NAME_LEN + 1];
00407     CHAR szWorkstationName[NETBIOS_NAME_LEN + 1];
00408     BYTE bLana;
00409 } RASPPPNBFA, *LPRASPPPNBFA;
00410 
00411 typedef struct tagRASIPXW {
00412     DWORD dwSize;
00413     DWORD dwError;
00414     WCHAR szIpxAddress[RAS_MaxIpxAddress + 1];
00415 } RASPPPIPXW, *LPRASPPPIPXW;
00416 
00417 typedef struct tagRASIPXA {
00418     DWORD dwSize;
00419     DWORD dwError;
00420     CHAR szIpxAddress[RAS_MaxIpxAddress + 1];
00421 } RASPPPIPXA, *LPRASPPPIPXA;
00422 
00423 typedef struct tagRASPPPIPW {
00424     DWORD dwSize;
00425     DWORD dwError;
00426     WCHAR szIpAddress[RAS_MaxIpAddress + 1];
00427 #ifndef WINNT35COMPATIBLE
00428     WCHAR szServerIpAddress[RAS_MaxIpAddress + 1];
00429 #endif
00430 #if (WINVER >= 0x500)
00431     DWORD dwOptions;
00432     DWORD dwServerOptions;
00433 #endif
00434 } RASPPPIPW, *LPRASPPPIPW;
00435 
00436 typedef struct tagRASPPPIPA {
00437     DWORD dwSize;
00438     DWORD dwError;
00439     CHAR szIpAddress[RAS_MaxIpAddress + 1];
00440 #ifndef WINNT35COMPATIBLE
00441     CHAR szServerIpAddress[RAS_MaxIpAddress + 1];
00442 #endif
00443 #if (WINVER >= 0x500)
00444     DWORD dwOptions;
00445     DWORD dwServerOptions;
00446 #endif
00447 } RASPPPIPA, *LPRASPPPIPA;
00448 
00449 typedef struct tagRASPPPLCPW {
00450     DWORD dwSize;
00451     BOOL fBundled;
00452 #if (WINVER >= 0x500)
00453     DWORD dwError;
00454     DWORD dwAuthenticationProtocol;
00455     DWORD dwAuthenticationData;
00456     DWORD dwEapTypeId;
00457     DWORD dwServerAuthenticationProtocol;
00458     DWORD dwServerAuthenticationData;
00459     DWORD dwServerEapTypeId;
00460     BOOL fMultilink;
00461     DWORD dwTerminateReason;
00462     DWORD dwServerTerminateReason;
00463     WCHAR szReplyMessage[RAS_MaxReplyMessage];
00464     DWORD dwOptions;
00465     DWORD dwServerOptions;
00466 #endif
00467 } RASPPPLCPW, *LPRASPPPLCPW;
00468 
00469 typedef struct tagRASPPPLCPA {
00470     DWORD dwSize;
00471     BOOL fBundled;
00472 #if (WINVER >= 0x500)
00473     DWORD dwError;
00474     DWORD dwAuthenticationProtocol;
00475     DWORD dwAuthenticationData;
00476     DWORD dwEapTypeId;
00477     DWORD dwServerAuthenticationProtocol;
00478     DWORD dwServerAuthenticationData;
00479     DWORD dwServerEapTypeId;
00480     BOOL fMultilink;
00481     DWORD dwTerminateReason;
00482     DWORD dwServerTerminateReason;
00483     CHAR szReplyMessage[RAS_MaxReplyMessage];
00484     DWORD dwOptions;
00485     DWORD dwServerOptions;
00486 #endif
00487 } RASPPPLCPA, *LPRASPPPLCPA;
00488 
00489 typedef struct tagRASSLIPW {
00490     DWORD dwSize;
00491     DWORD dwError;
00492     WCHAR szIpAddress[RAS_MaxIpAddress + 1];
00493 } RASSLIPW, *LPRASSLIPW;
00494 
00495 
00496 typedef struct tagRASSLIPA {
00497     DWORD dwSize;
00498     DWORD dwError;
00499     CHAR szIpAddress[RAS_MaxIpAddress + 1];
00500 } RASSLIPA, *LPRASSLIPA;
00501 
00502 typedef struct tagRASDEVINFOW {
00503     DWORD dwSize;
00504     WCHAR szDeviceType[RAS_MaxDeviceType + 1];
00505     WCHAR szDeviceName[RAS_MaxDeviceName + 1];
00506 } RASDEVINFOW, *LPRASDEVINFOW;
00507 
00508 typedef struct tagRASDEVINFOA {
00509     DWORD dwSize;
00510     CHAR szDeviceType[RAS_MaxDeviceType + 1];
00511     CHAR szDeviceName[RAS_MaxDeviceName + 1];
00512 } RASDEVINFOA, *LPRASDEVINFOA;
00513 
00514 typedef struct tagRASCTRYINFO {
00515     DWORD dwSize;
00516     DWORD dwCountryID;
00517     DWORD dwNextCountryID;
00518     DWORD dwCountryCode;
00519     DWORD dwCountryNameOffset;
00520 } RASCTRYINFO, *LPRASCTRYINFO;
00521 
00522 typedef RASCTRYINFO  RASCTRYINFOW, *LPRASCTRYINFOW;
00523 typedef RASCTRYINFO  RASCTRYINFOA, *LPRASCTRYINFOA;
00524 
00525 typedef struct tagRASIPADDR {
00526     BYTE a;
00527     BYTE b;
00528     BYTE c;
00529     BYTE d;
00530 } RASIPADDR;
00531 
00532 typedef struct tagRASENTRYW {
00533     DWORD dwSize;
00534     DWORD dwfOptions;
00535     DWORD dwCountryID;
00536     DWORD dwCountryCode;
00537     WCHAR szAreaCode[RAS_MaxAreaCode + 1];
00538     WCHAR szLocalPhoneNumber[RAS_MaxPhoneNumber + 1];
00539     DWORD dwAlternateOffset;
00540     RASIPADDR ipaddr;
00541     RASIPADDR ipaddrDns;
00542     RASIPADDR ipaddrDnsAlt;
00543     RASIPADDR ipaddrWins;
00544     RASIPADDR ipaddrWinsAlt;
00545     DWORD dwFrameSize;
00546     DWORD dwfNetProtocols;
00547     DWORD dwFramingProtocol;
00548     WCHAR szScript[MAX_PATH];
00549     WCHAR szAutodialDll[MAX_PATH];
00550     WCHAR szAutodialFunc[MAX_PATH];
00551     WCHAR szDeviceType[RAS_MaxDeviceType + 1];
00552     WCHAR szDeviceName[RAS_MaxDeviceName + 1];
00553     WCHAR szX25PadType[RAS_MaxPadType + 1];
00554     WCHAR szX25Address[RAS_MaxX25Address + 1];
00555     WCHAR szX25Facilities[RAS_MaxFacilities + 1];
00556     WCHAR szX25UserData[RAS_MaxUserData + 1];
00557     DWORD dwChannels;
00558     DWORD dwReserved1;
00559     DWORD dwReserved2;
00560 #if (WINVER >= 0x401)
00561     DWORD dwSubEntries;
00562     DWORD dwDialMode;
00563     DWORD dwDialExtraPercent;
00564     DWORD dwDialExtraSampleSeconds;
00565     DWORD dwHangUpExtraPercent;
00566     DWORD dwHangUpExtraSampleSeconds;
00567     DWORD dwIdleDisconnectSeconds;
00568 #endif
00569 #if (WINVER >= 0x500)
00570     DWORD dwType;
00571     DWORD dwEncryptionType;
00572     DWORD dwCustomAuthKey;
00573     GUID guidId;
00574     WCHAR szCustomDialDll[MAX_PATH];
00575     DWORD dwVpnStrategy;
00576 #endif
00577 #if (WINVER >= 0x501)
00578     DWORD       dwfOptions2;
00579     DWORD       dwfOptions3;
00580     WCHAR       szDnsSuffix[RAS_MaxDnsSuffix];
00581     DWORD       dwTcpWindowSize;
00582     WCHAR       szPrerequisitePbk[MAX_PATH];
00583     WCHAR       szPrerequisiteEntry[RAS_MaxEntryName + 1];
00584     DWORD       dwRedialCount;
00585     DWORD       dwRedialPause;
00586 #endif /*(WINVER >= 0x501)*/
00587 } RASENTRYW, *LPRASENTRYW;
00588 
00589 typedef struct tagRASENTRYA {
00590     DWORD dwSize;
00591     DWORD dwfOptions;
00592     DWORD dwCountryID;
00593     DWORD dwCountryCode;
00594     CHAR szAreaCode[RAS_MaxAreaCode + 1];
00595     CHAR szLocalPhoneNumber[RAS_MaxPhoneNumber + 1];
00596     DWORD dwAlternateOffset;
00597     RASIPADDR ipaddr;
00598     RASIPADDR ipaddrDns;
00599     RASIPADDR ipaddrDnsAlt;
00600     RASIPADDR ipaddrWins;
00601     RASIPADDR ipaddrWinsAlt;
00602     DWORD dwFrameSize;
00603     DWORD dwfNetProtocols;
00604     DWORD dwFramingProtocol;
00605     CHAR szScript[MAX_PATH];
00606     CHAR szAutodialDll[MAX_PATH];
00607     CHAR szAutodialFunc[MAX_PATH];
00608     CHAR szDeviceType[RAS_MaxDeviceType + 1];
00609     CHAR szDeviceName[RAS_MaxDeviceName + 1];
00610     CHAR szX25PadType[RAS_MaxPadType + 1];
00611     CHAR szX25Address[RAS_MaxX25Address + 1];
00612     CHAR szX25Facilities[RAS_MaxFacilities + 1];
00613     CHAR szX25UserData[RAS_MaxUserData + 1];
00614     DWORD dwChannels;
00615     DWORD dwReserved1;
00616     DWORD dwReserved2;
00617 #if (WINVER >= 0x401)
00618     DWORD dwSubEntries;
00619     DWORD dwDialMode;
00620     DWORD dwDialExtraPercent;
00621     DWORD dwDialExtraSampleSeconds;
00622     DWORD dwHangUpExtraPercent;
00623     DWORD dwHangUpExtraSampleSeconds;
00624     DWORD dwIdleDisconnectSeconds;
00625 #endif
00626 #if (WINVER >= 0x500)
00627     DWORD dwType;
00628     DWORD dwEncryptionType;
00629     DWORD dwCustomAuthKey;
00630     GUID guidId;
00631     CHAR szCustomDialDll[MAX_PATH];
00632     DWORD dwVpnStrategy;
00633 #endif
00634 #if (WINVER >= 0x501)
00635     DWORD       dwfOptions2;
00636     DWORD       dwfOptions3;
00637     CHAR        szDnsSuffix[RAS_MaxDnsSuffix];
00638     DWORD       dwTcpWindowSize;
00639     CHAR        szPrerequisitePbk[MAX_PATH];
00640     CHAR        szPrerequisiteEntry[RAS_MaxEntryName + 1];
00641     DWORD       dwRedialCount;
00642     DWORD       dwRedialPause;
00643 #endif /*(WINVER >= 0x501)*/
00644 } RASENTRYA, *LPRASENTRYA;
00645 
00646 
00647 #if (WINVER >= 0x401)
00648 typedef struct tagRASADPARAMS {
00649     DWORD dwSize;
00650     HWND hwndOwner;
00651     DWORD dwFlags;
00652     LONG xDlg;
00653     LONG yDlg;
00654 } RASADPARAMS, *LPRASADPARAMS;
00655 
00656 typedef struct tagRASSUBENTRYW {
00657     DWORD dwSize;
00658     DWORD dwfFlags;
00659     WCHAR szDeviceType[RAS_MaxDeviceType + 1];
00660     WCHAR szDeviceName[RAS_MaxDeviceName + 1];
00661     WCHAR szLocalPhoneNumber[RAS_MaxPhoneNumber + 1];
00662     DWORD dwAlternateOffset;
00663 } RASSUBENTRYW, *LPRASSUBENTRYW;
00664 
00665 typedef struct tagRASSUBENTRYA {
00666     DWORD dwSize;
00667     DWORD dwfFlags;
00668     CHAR szDeviceType[RAS_MaxDeviceType + 1];
00669     CHAR szDeviceName[RAS_MaxDeviceName + 1];
00670     CHAR szLocalPhoneNumber[RAS_MaxPhoneNumber + 1];
00671     DWORD dwAlternateOffset;
00672 } RASSUBENTRYA, *LPRASSUBENTRYA;
00673 
00674 typedef struct tagRASCREDENTIALSW {
00675     DWORD dwSize;
00676     DWORD dwMask;
00677     WCHAR szUserName[UNLEN + 1];
00678     WCHAR szPassword[PWLEN + 1];
00679     WCHAR szDomain[DNLEN + 1];
00680 } RASCREDENTIALSW, *LPRASCREDENTIALSW;
00681 
00682 typedef struct tagRASCREDENTIALSA {
00683     DWORD dwSize;
00684     DWORD dwMask;
00685     CHAR szUserName[UNLEN + 1];
00686     CHAR szPassword[PWLEN + 1];
00687     CHAR szDomain[DNLEN + 1];
00688 } RASCREDENTIALSA, *LPRASCREDENTIALSA;
00689 
00690 typedef struct tagRASAUTODIALENTRYW {
00691     DWORD dwSize;
00692     DWORD dwFlags;
00693     DWORD dwDialingLocation;
00694     WCHAR szEntry[RAS_MaxEntryName + 1];
00695 } RASAUTODIALENTRYW, *LPRASAUTODIALENTRYW;
00696 
00697 typedef struct tagRASAUTODIALENTRYA {
00698     DWORD dwSize;
00699     DWORD dwFlags;
00700     DWORD dwDialingLocation;
00701     CHAR szEntry[RAS_MaxEntryName + 1];
00702 } RASAUTODIALENTRYA, *LPRASAUTODIALENTRYA;
00703 #endif /* (WINVER >= 0x401) */
00704 
00705 #if (WINVER >= 0x500)
00706 typedef struct tagRASPPPCCP {
00707     DWORD dwSize;
00708     DWORD dwError;
00709     DWORD dwCompressionAlgorithm;
00710     DWORD dwOptions;
00711     DWORD dwServerCompressionAlgorithm;
00712     DWORD dwServerOptions;
00713 } RASPPPCCP, *LPRASPPPCCP;
00714 
00715 typedef struct tagRASEAPUSERIDENTITYW {
00716     WCHAR szUserName[UNLEN + 1];
00717     DWORD dwSizeofEapInfo;
00718     BYTE pbEapInfo[1];
00719 } RASEAPUSERIDENTITYW, *LPRASEAPUSERIDENTITYW;
00720 
00721 typedef struct tagRASEAPUSERIDENTITYA {
00722     CHAR szUserName[UNLEN + 1];
00723     DWORD dwSizeofEapInfo;
00724     BYTE pbEapInfo[1];
00725 } RASEAPUSERIDENTITYA, *LPRASEAPUSERIDENTITYA;
00726 
00727 typedef struct tagRAS_STATS {
00728     DWORD dwSize;
00729     DWORD dwBytesXmited;
00730     DWORD dwBytesRcved;
00731     DWORD dwFramesXmited;
00732     DWORD dwFramesRcved;
00733     DWORD dwCrcErr;
00734     DWORD dwTimeoutErr;
00735     DWORD dwAlignmentErr;
00736     DWORD dwHardwareOverrunErr;
00737     DWORD dwFramingErr;
00738     DWORD dwBufferOverrunErr;
00739     DWORD dwCompressionRatioIn;
00740     DWORD dwCompressionRatioOut;
00741     DWORD dwBps;
00742     DWORD dwConnectDuration;
00743 } RAS_STATS, *PRAS_STATS;
00744 #endif /* (WINVER >= 0x500) */
00745 
00746 
00747 /* UNICODE typedefs for structures*/
00748 #ifdef UNICODE
00749 typedef RASCONNW RASCONN, *LPRASCONN;
00750 typedef RASENTRYW  RASENTRY, *LPRASENTRY;
00751 typedef RASCONNSTATUSW RASCONNSTATUS, *LPRASCONNSTATUS;
00752 typedef RASDIALPARAMSW RASDIALPARAMS, *LPRASDIALPARAMS;
00753 typedef RASAMBW RASAMB, *LPRASAM;
00754 typedef RASPPPNBFW RASPPPNBF, *LPRASPPPNBF;
00755 typedef RASPPPIPXW RASPPPIPX, *LPRASPPPIPX;
00756 typedef RASPPPIPW RASPPPIP, *LPRASPPPIP;
00757 typedef RASPPPLCPW RASPPPLCP, *LPRASPPPLCP;
00758 typedef RASSLIPW RASSLIP, *LPRASSLIP;
00759 typedef RASDEVINFOW  RASDEVINFO, *LPRASDEVINFO;
00760 typedef RASENTRYNAMEW RASENTRYNAME, *LPRASENTRYNAME;
00761 
00762 #if (WINVER >= 0x401)
00763 typedef RASSUBENTRYW RASSUBENTRY, *LPRASSUBENTRY;
00764 typedef RASCREDENTIALSW RASCREDENTIALS, *LPRASCREDENTIALS;
00765 typedef RASAUTODIALENTRYW RASAUTODIALENTRY, *LPRASAUTODIALENTRY;
00766 #endif /* (WINVER >= 0x401) */
00767 
00768 #if (WINVER >= 0x500)
00769 typedef RASEAPUSERIDENTITYW RASEAPUSERIDENTITY, *LPRASEAPUSERIDENTITY;
00770 typedef DWORD (WINAPI *PFNRASGETBUFFER) (PBYTE *ppBuffer, PDWORD pdwSize);
00771 typedef DWORD (WINAPI *PFNRASFREEBUFFER) (PBYTE pBuffer);
00772 typedef DWORD (WINAPI *PFNRASSENDBUFFER) (HANDLE hPort, PBYTE pBuffer, DWORD dwSize);
00773 typedef DWORD (WINAPI *PFNRASRECEIVEBUFFER) (HANDLE hPort, PBYTE pBuffer, PDWORD pdwSize, DWORD dwTimeOut, HANDLE hEvent);
00774 typedef DWORD (WINAPI *PFNRASRETRIEVEBUFFER) (HANDLE hPort, PBYTE pBuffer, PDWORD pdwSize);
00775 typedef DWORD (WINAPI *RasCustomScriptExecuteFn) (HANDLE hPort, LPCWSTR lpszPhonebook, LPCWSTR lpszEntryName, PFNRASGETBUFFER pfnRasGetBuffer, PFNRASFREEBUFFER pfnRasFreeBuffer, PFNRASSENDBUFFER pfnRasSendBuffer, PFNRASRECEIVEBUFFER pfnRasReceiveBuffer, PFNRASRETRIEVEBUFFER pfnRasRetrieveBuffer, HWND hWnd, RASDIALPARAMS *pRasDialParams, PVOID pvReserved);
00776 #endif /* (WINVER >= 0x500) */
00777 
00778 #if (WINVER >= 0x501)
00779 typedef struct tagRASCOMMSETTINGS
00780 {
00781     DWORD dwSize;
00782     BYTE  bParity;
00783     BYTE  bStop;
00784     BYTE  bByteSize;
00785     BYTE  bAlign;
00786 } RASCOMMSETTINGS;
00787 typedef DWORD (WINAPI *PFNRASSETCOMMSETTINGS) (HANDLE hPort,RASCOMMSETTINGS *pRasCommSettings,PVOID  pvReserved);
00788 typedef struct tagRASCUSTOMSCRIPTEXTENSIONS
00789 {
00790     DWORD                 dwSize;                  
00791     PFNRASSETCOMMSETTINGS pfnRasSetCommSettings;
00792 } RASCUSTOMSCRIPTEXTENSIONS;
00793 #endif /*(WINVER >= 0x501)*/
00794 
00795 #else  /* ! defined UNICODE */
00796 typedef RASCONNA RASCONN, *LPRASCONN;
00797 typedef RASENTRYA  RASENTRY, *LPRASENTRY;
00798 typedef RASCONNSTATUSA RASCONNSTATUS, *LPRASCONNSTATUS;
00799 typedef RASDIALPARAMSA RASDIALPARAMS, *LPRASDIALPARAMS;
00800 typedef RASAMBA RASAMB, *LPRASAM;
00801 typedef RASPPPNBFA RASPPPNBF, *LPRASPPPNBF;
00802 typedef RASPPPIPXA RASPPPIPX, *LPRASPPPIPX;
00803 typedef RASPPPIPA RASPPPIP, *LPRASPPPIP;
00804 typedef RASPPPLCPA RASPPPLCP, *LPRASPPPLCP;
00805 typedef RASSLIPA RASSLIP, *LPRASSLIP;
00806 typedef RASDEVINFOA  RASDEVINFO, *LPRASDEVINFO;
00807 typedef RASENTRYNAMEA RASENTRYNAME, *LPRASENTRYNAME;
00808 
00809 #if (WINVER >= 0x401)
00810 typedef RASSUBENTRYA RASSUBENTRY, *LPRASSUBENTRY;
00811 typedef RASCREDENTIALSA RASCREDENTIALS, *LPRASCREDENTIALS;
00812 typedef RASAUTODIALENTRYA RASAUTODIALENTRY, *LPRASAUTODIALENTRY;
00813 #endif /*(WINVER >= 0x401)*/
00814 #if (WINVER >= 0x500)
00815 typedef RASEAPUSERIDENTITYA RASEAPUSERIDENTITY, *LPRASEAPUSERIDENTITY;
00816 #endif /* (WINVER >= 0x500) */
00817 #endif /* ! UNICODE */
00818 
00819 /* Callback prototypes */
00820 typedef BOOL (WINAPI * ORASADFUNC) (HWND, LPSTR, DWORD, LPDWORD); /* deprecated */
00821 typedef VOID (WINAPI * RASDIALFUNC) (UINT, RASCONNSTATE, DWORD);
00822 typedef VOID (WINAPI * RASDIALFUNC1) (HRASCONN, UINT, RASCONNSTATE, DWORD, DWORD);
00823 typedef DWORD (WINAPI * RASDIALFUNC2) (ULONG_PTR, DWORD, HRASCONN, UINT, RASCONNSTATE, DWORD, DWORD);
00824 
00825 /* External functions */
00826 DWORD APIENTRY RasDialA (LPRASDIALEXTENSIONS, LPCSTR, LPRASDIALPARAMSA, DWORD, LPVOID, LPHRASCONN);
00827 DWORD APIENTRY RasDialW (LPRASDIALEXTENSIONS, LPCWSTR, LPRASDIALPARAMSW, DWORD, LPVOID, LPHRASCONN);
00828 DWORD APIENTRY RasEnumConnectionsA (LPRASCONNA, LPDWORD, LPDWORD);
00829 DWORD APIENTRY RasEnumConnectionsW (LPRASCONNW, LPDWORD, LPDWORD);
00830 DWORD APIENTRY RasEnumEntriesA (LPCSTR, LPCSTR, LPRASENTRYNAMEA, LPDWORD, LPDWORD);
00831 DWORD APIENTRY RasEnumEntriesW (LPCWSTR, LPCWSTR, LPRASENTRYNAMEW, LPDWORD, LPDWORD);
00832 DWORD APIENTRY RasGetConnectStatusA (HRASCONN, LPRASCONNSTATUSA);
00833 DWORD APIENTRY RasGetConnectStatusW (HRASCONN, LPRASCONNSTATUSW);
00834 DWORD APIENTRY RasGetErrorStringA (UINT, LPSTR, DWORD);
00835 DWORD APIENTRY RasGetErrorStringW (UINT, LPWSTR, DWORD);
00836 DWORD APIENTRY RasHangUpA (HRASCONN);
00837 DWORD APIENTRY RasHangUpW (HRASCONN);
00838 DWORD APIENTRY RasGetProjectionInfoA (HRASCONN, RASPROJECTION, LPVOID, LPDWORD);
00839 DWORD APIENTRY RasGetProjectionInfoW (HRASCONN, RASPROJECTION, LPVOID, LPDWORD);
00840 DWORD APIENTRY RasCreatePhonebookEntryA (HWND, LPCSTR);
00841 DWORD APIENTRY RasCreatePhonebookEntryW (HWND, LPCWSTR);
00842 DWORD APIENTRY RasEditPhonebookEntryA (HWND, LPCSTR, LPCSTR);
00843 DWORD APIENTRY RasEditPhonebookEntryW (HWND, LPCWSTR, LPCWSTR);
00844 DWORD APIENTRY RasSetEntryDialParamsA (LPCSTR, LPRASDIALPARAMSA, BOOL);
00845 DWORD APIENTRY RasSetEntryDialParamsW (LPCWSTR, LPRASDIALPARAMSW, BOOL);
00846 DWORD APIENTRY RasGetEntryDialParamsA (LPCSTR, LPRASDIALPARAMSA, LPBOOL);
00847 DWORD APIENTRY RasGetEntryDialParamsW (LPCWSTR, LPRASDIALPARAMSW, LPBOOL);
00848 DWORD APIENTRY RasEnumDevicesA (LPRASDEVINFOA, LPDWORD, LPDWORD);
00849 DWORD APIENTRY RasEnumDevicesW (LPRASDEVINFOW, LPDWORD, LPDWORD);
00850 DWORD APIENTRY RasGetCountryInfoA (LPRASCTRYINFOA, LPDWORD);
00851 DWORD APIENTRY RasGetCountryInfoW (LPRASCTRYINFOW, LPDWORD);
00852 DWORD APIENTRY RasGetEntryPropertiesA (LPCSTR, LPCSTR, LPRASENTRYA, LPDWORD, LPBYTE, LPDWORD);
00853 DWORD APIENTRY RasGetEntryPropertiesW (LPCWSTR, LPCWSTR, LPRASENTRYW, LPDWORD, LPBYTE, LPDWORD);
00854 DWORD APIENTRY RasSetEntryPropertiesA (LPCSTR, LPCSTR, LPRASENTRYA, DWORD, LPBYTE, DWORD);
00855 DWORD APIENTRY RasSetEntryPropertiesW (LPCWSTR, LPCWSTR, LPRASENTRYW, DWORD, LPBYTE, DWORD);
00856 DWORD APIENTRY RasRenameEntryA (LPCSTR, LPCSTR, LPCSTR);
00857 DWORD APIENTRY RasRenameEntryW (LPCWSTR, LPCWSTR, LPCWSTR);
00858 DWORD APIENTRY RasDeleteEntryA (LPCSTR, LPCSTR);
00859 DWORD APIENTRY RasDeleteEntryW (LPCWSTR, LPCWSTR);
00860 DWORD APIENTRY RasValidateEntryNameA (LPCSTR, LPCSTR);
00861 DWORD APIENTRY RasValidateEntryNameW (LPCWSTR, LPCWSTR);
00862 
00863 #if (WINVER >= 0x401)
00864 typedef BOOL (WINAPI * RASADFUNCA) (LPSTR, LPSTR, LPRASADPARAMS, LPDWORD);
00865 typedef BOOL (WINAPI * RASADFUNCW) (LPWSTR, LPWSTR, LPRASADPARAMS, LPDWORD);
00866 
00867 DWORD APIENTRY RasGetSubEntryHandleA (HRASCONN, DWORD, LPHRASCONN);
00868 DWORD APIENTRY RasGetSubEntryHandleW (HRASCONN, DWORD, LPHRASCONN);
00869 DWORD APIENTRY RasGetCredentialsA (LPCSTR, LPCSTR, LPRASCREDENTIALSA);
00870 DWORD APIENTRY RasGetCredentialsW (LPCWSTR, LPCWSTR, LPRASCREDENTIALSW);
00871 DWORD APIENTRY RasSetCredentialsA (LPCSTR, LPCSTR, LPRASCREDENTIALSA, BOOL);
00872 DWORD APIENTRY RasSetCredentialsW (LPCWSTR, LPCWSTR, LPRASCREDENTIALSW, BOOL);
00873 DWORD APIENTRY RasConnectionNotificationA (HRASCONN, HANDLE, DWORD);
00874 DWORD APIENTRY RasConnectionNotificationW (HRASCONN, HANDLE, DWORD);
00875 DWORD APIENTRY RasGetSubEntryPropertiesA (LPCSTR, LPCSTR, DWORD,
00876                     LPRASSUBENTRYA, LPDWORD, LPBYTE, LPDWORD);
00877 DWORD APIENTRY RasGetSubEntryPropertiesW (LPCWSTR, LPCWSTR, DWORD,
00878                     LPRASSUBENTRYW, LPDWORD, LPBYTE, LPDWORD);
00879 DWORD APIENTRY RasSetSubEntryPropertiesA (LPCSTR, LPCSTR, DWORD,
00880                     LPRASSUBENTRYA, DWORD, LPBYTE, DWORD);
00881 DWORD APIENTRY RasSetSubEntryPropertiesW (LPCWSTR, LPCWSTR, DWORD,
00882                     LPRASSUBENTRYW, DWORD, LPBYTE, DWORD);
00883 DWORD APIENTRY RasGetAutodialAddressA (LPCSTR, LPDWORD, LPRASAUTODIALENTRYA,
00884                     LPDWORD, LPDWORD);
00885 DWORD APIENTRY RasGetAutodialAddressW (LPCWSTR, LPDWORD,
00886                     LPRASAUTODIALENTRYW, LPDWORD, LPDWORD);
00887 DWORD APIENTRY RasSetAutodialAddressA (LPCSTR, DWORD, LPRASAUTODIALENTRYA,
00888                     DWORD, DWORD);
00889 DWORD APIENTRY RasSetAutodialAddressW (LPCWSTR, DWORD, LPRASAUTODIALENTRYW,
00890                     DWORD, DWORD);
00891 DWORD APIENTRY RasEnumAutodialAddressesA (LPSTR *, LPDWORD, LPDWORD);
00892 DWORD APIENTRY RasEnumAutodialAddressesW (LPWSTR *, LPDWORD, LPDWORD);
00893 DWORD APIENTRY RasGetAutodialEnableA (DWORD, LPBOOL);
00894 DWORD APIENTRY RasGetAutodialEnableW (DWORD, LPBOOL);
00895 DWORD APIENTRY RasSetAutodialEnableA (DWORD, BOOL);
00896 DWORD APIENTRY RasSetAutodialEnableW (DWORD, BOOL);
00897 DWORD APIENTRY RasGetAutodialParamA (DWORD, LPVOID, LPDWORD);
00898 DWORD APIENTRY RasGetAutodialParamW (DWORD, LPVOID, LPDWORD);
00899 DWORD APIENTRY RasSetAutodialParamA (DWORD, LPVOID, DWORD);
00900 DWORD APIENTRY RasSetAutodialParamW (DWORD, LPVOID, DWORD);
00901 #endif
00902 
00903 #if (WINVER >= 0x500)
00904 typedef DWORD (WINAPI * RasCustomHangUpFn) (HRASCONN);
00905 typedef DWORD (WINAPI * RasCustomDeleteEntryNotifyFn) (LPCTSTR,    LPCTSTR, DWORD);
00906 typedef DWORD (WINAPI * RasCustomDialFn) (HINSTANCE, LPRASDIALEXTENSIONS,
00907                LPCTSTR, LPRASDIALPARAMS, DWORD, LPVOID, LPHRASCONN, DWORD);
00908 
00909 DWORD APIENTRY RasInvokeEapUI (HRASCONN, DWORD, LPRASDIALEXTENSIONS, HWND);
00910 DWORD APIENTRY RasGetLinkStatistics (HRASCONN, DWORD, RAS_STATS*);
00911 DWORD APIENTRY RasGetConnectionStatistics (HRASCONN, RAS_STATS*);
00912 DWORD APIENTRY RasClearLinkStatistics (HRASCONN, DWORD);
00913 DWORD APIENTRY RasClearConnectionStatistics (HRASCONN);
00914 DWORD APIENTRY RasGetEapUserDataA (HANDLE, LPCSTR, LPCSTR, BYTE*, DWORD*);
00915 DWORD APIENTRY RasGetEapUserDataW (HANDLE, LPCWSTR, LPCWSTR, BYTE*, DWORD*);
00916 DWORD APIENTRY RasSetEapUserDataA (HANDLE, LPCSTR, LPCSTR, BYTE*, DWORD);
00917 DWORD APIENTRY RasSetEapUserDataW (HANDLE, LPCWSTR, LPCWSTR, BYTE*, DWORD);
00918 DWORD APIENTRY RasGetCustomAuthDataA (LPCSTR, LPCSTR, BYTE*, DWORD*);
00919 DWORD APIENTRY RasGetCustomAuthDataW (LPCWSTR, LPCWSTR, BYTE*, DWORD*);
00920 DWORD APIENTRY RasSetCustomAuthDataA (LPCSTR, LPCSTR, BYTE*, DWORD);
00921 DWORD APIENTRY RasSetCustomAuthDataW (LPCWSTR, LPCWSTR, BYTE*, DWORD);
00922 DWORD APIENTRY RasGetEapUserIdentityW (LPCWSTR, LPCWSTR, DWORD, HWND, LPRASEAPUSERIDENTITYW*);
00923 DWORD APIENTRY RasGetEapUserIdentityA (LPCSTR, LPCSTR, DWORD, HWND, LPRASEAPUSERIDENTITYA*);
00924 VOID APIENTRY RasFreeEapUserIdentityW (LPRASEAPUSERIDENTITYW);
00925 VOID APIENTRY RasFreeEapUserIdentityA (LPRASEAPUSERIDENTITYA);
00926 #endif  /* (WINVER >= 0x500) */
00927 #if (WINVER >=0x501)
00928 DWORD APIENTRY RasDeleteSubEntryA(LPCSTR pszPhonebook, LPCSTR pszEntry, DWORD dwSubentryId);
00929 DWORD APIENTRY  RasDeleteSubEntryW(LPCWSTR pszPhonebook, LPCWSTR pszEntry, DWORD dwSubEntryId);
00930 #endif // (WINVER >=0x501)
00931 
00932 
00933 /* UNICODE defines for functions */
00934 #ifdef UNICODE
00935 #define RasDial RasDialW
00936 #define RasEnumConnections RasEnumConnectionsW
00937 #define RasEnumEntries RasEnumEntriesW
00938 #define RasGetConnectStatus RasGetConnectStatusW
00939 #define RasGetErrorString RasGetErrorStringW
00940 #define RasHangUp RasHangUpW
00941 #define RasGetProjectionInfo RasGetProjectionInfoW
00942 #define RasCreatePhonebookEntry RasCreatePhonebookEntryW
00943 #define RasEditPhonebookEntry RasEditPhonebookEntryW
00944 #define RasSetEntryDialParams RasSetEntryDialParamsW
00945 #define RasGetEntryDialParams RasGetEntryDialParamsW
00946 #define RasEnumDevices RasEnumDevicesW
00947 #define RasGetCountryInfo RasGetCountryInfoW
00948 #define RasGetEntryProperties RasGetEntryPropertiesW
00949 #define RasSetEntryProperties RasSetEntryPropertiesW
00950 #define RasRenameEntry RasRenameEntryW
00951 #define RasDeleteEntry RasDeleteEntryW
00952 #define RasValidateEntryName RasValidateEntryNameW
00953 #if (WINVER >= 0x401)
00954 #define RASADFUNC RASADFUNCW
00955 #define RasGetSubEntryHandle RasGetSubEntryHandleW
00956 #define RasConnectionNotification RasConnectionNotificationW
00957 #define RasGetSubEntryProperties RasGetSubEntryPropertiesW
00958 #define RasSetSubEntryProperties RasSetSubEntryPropertiesW
00959 #define RasGetCredentials RasGetCredentialsW
00960 #define RasSetCredentials RasSetCredentialsW
00961 #define RasGetAutodialAddress RasGetAutodialAddressW
00962 #define RasSetAutodialAddress RasSetAutodialAddressW
00963 #define RasEnumAutodialAddresses RasEnumAutodialAddressesW
00964 #define RasGetAutodialEnable RasGetAutodialEnableW
00965 #define RasSetAutodialEnable RasSetAutodialEnableW
00966 #define RasGetAutodialParam RasGetAutodialParamW
00967 #define RasSetAutodialParam RasSetAutodialParamW
00968 #endif /* (WINVER >= 0x401) */
00969 #if (WINVER >= 0x500)
00970 #define RasGetEapUserData RasGetEapUserDataW
00971 #define RasSetEapUserData RasSetEapUserDataW
00972 #define RasGetCustomAuthData RasGetCustomAuthDataW
00973 #define RasSetCustomAuthData RasSetCustomAuthDataW
00974 #define RasGetEapUserIdentity RasGetEapUserIdentityW
00975 #define RasFreeEapUserIdentity RasFreeEapUserIdentityW
00976 #endif /* (WINVER >= 0x500) */
00977 #if (WINVER >= 0x501)
00978 #define RasDeleteSubEntry RasDeleteSubEntryW
00979 #endif /*(WINVER >= 0x501)*/
00980 
00981 #else  /* ! defined UNICODE */
00982 #define RasDial RasDialA
00983 #define RasEnumConnections RasEnumConnectionsA
00984 #define RasEnumEntries RasEnumEntriesA
00985 #define RasGetConnectStatus RasGetConnectStatusA
00986 #define RasGetErrorString RasGetErrorStringA
00987 #define RasHangUp RasHangUpA
00988 #define RasGetProjectionInfo RasGetProjectionInfoA
00989 #define RasCreatePhonebookEntry RasCreatePhonebookEntryA
00990 #define RasEditPhonebookEntry RasEditPhonebookEntryA
00991 #define RasSetEntryDialParams RasSetEntryDialParamsA
00992 #define RasGetEntryDialParams RasGetEntryDialParamsA
00993 #define RasEnumDevices RasEnumDevicesA
00994 #define RasGetCountryInfo RasGetCountryInfoA
00995 #define RasGetEntryProperties RasGetEntryPropertiesA
00996 #define RasSetEntryProperties RasSetEntryPropertiesA
00997 #define RasRenameEntry RasRenameEntryA
00998 #define RasDeleteEntry RasDeleteEntryA
00999 #define RasValidateEntryName RasValidateEntryNameA
01000 
01001 #if (WINVER >= 0x401)
01002 #define RASADFUNC RASADFUNCA
01003 #define RasGetSubEntryHandle RasGetSubEntryHandleA
01004 #define RasConnectionNotification RasConnectionNotificationA
01005 #define RasGetSubEntryProperties RasGetSubEntryPropertiesA
01006 #define RasSetSubEntryProperties RasSetSubEntryPropertiesA
01007 #define RasGetCredentials RasGetCredentialsA
01008 #define RasSetCredentials RasSetCredentialsA
01009 #define RasGetAutodialAddress RasGetAutodialAddressA
01010 #define RasSetAutodialAddress RasSetAutodialAddressA
01011 #define RasEnumAutodialAddressesRasEnumAutodialAddressesA
01012 #define RasGetAutodialEnable RasGetAutodialEnableA
01013 #define RasSetAutodialEnable RasSetAutodialEnableA
01014 #define RasGetAutodialParam RasGetAutodialParamA
01015 #define RasSetAutodialParam RasSetAutodialParamA
01016 #endif /*(WINVER >= 0x401)*/
01017 
01018 #if (WINVER >= 0x500)
01019 #define RasGetEapUserData RasGetEapUserDataA
01020 #define RasSetEapUserData RasSetEapUserDataA
01021 #define RasGetCustomAuthData RasGetCustomAuthDataA
01022 #define RasSetCustomAuthData RasSetCustomAuthDataA
01023 #define RasGetEapUserIdentity RasGetEapUserIdentityA
01024 #define RasFreeEapUserIdentity RasFreeEapUserIdentityA
01025 #endif /* (WINVER >= 0x500) */
01026 #if (WINVER >= 0x501)
01027 #define RasDeleteSubEntry RasDeleteSubEntryA
01028 #endif /*(WINVER >= 0x501)*/
01029 #endif /* ! UNICODE */
01030 
01031 #ifdef __cplusplus
01032 }
01033 #endif
01034 #include <poppack.h>
01035 #endif /* _RAS_H */

Generated on Mon May 28 2012 04:32:03 for ReactOS by doxygen 1.7.6.1

ReactOS is a registered trademark or a trademark of ReactOS Foundation in the United States and other countries.