Home | Info | Community | Development | myReactOS | Contact Us
ReactOS Development > Doxygenraseapif.h
Go to the documentation of this file.
00001 #ifndef _RASEAPIF_ 00002 #define _RASEAPIF_ 00003 00004 #ifdef __cplusplus 00005 extern "C" { 00006 #endif 00007 00008 #if(WINVER >= 0x0500) 00009 00010 #define RAS_EAP_REGISTRY_LOCATION TEXT("SYSTEM\\CurrentControlSet\\Services\\Rasman\\PPP\\EAP") 00011 00012 #define RAS_EAP_VALUENAME_PATH TEXT("Path") 00013 #define RAS_EAP_VALUENAME_CONFIGUI TEXT("ConfigUIPath") 00014 #define RAS_EAP_VALUENAME_INTERACTIVEUI TEXT("InteractiveUIPath") 00015 #define RAS_EAP_VALUENAME_IDENTITY TEXT("IdentityPath") 00016 #define RAS_EAP_VALUENAME_FRIENDLY_NAME TEXT("FriendlyName") 00017 #define RAS_EAP_VALUENAME_DEFAULT_DATA TEXT("ConfigData") 00018 #define RAS_EAP_VALUENAME_REQUIRE_CONFIGUI TEXT("RequireConfigUI") 00019 #define RAS_EAP_VALUENAME_ENCRYPTION TEXT("MPPEEncryptionSupported") 00020 #define RAS_EAP_VALUENAME_INVOKE_NAMEDLG TEXT("InvokeUsernameDialog") 00021 #define RAS_EAP_VALUENAME_INVOKE_PWDDLG TEXT("InvokePasswordDialog") 00022 #define RAS_EAP_VALUENAME_CONFIG_CLSID TEXT("ConfigCLSID") 00023 #define RAS_EAP_VALUENAME_STANDALONE_SUPPORTED TEXT("StandaloneSupported") 00024 #define RAS_EAP_VALUENAME_ROLES_SUPPORTED TEXT("RolesSupported") 00025 #define RAS_EAP_VALUENAME_PER_POLICY_CONFIG TEXT("PerPolicyConfig") 00026 00027 #define RAS_EAP_ROLE_AUTHENTICATOR 0x00000001 00028 #define RAS_EAP_ROLE_AUTHENTICATEE 0x00000002 00029 00030 #define RAS_EAP_ROLE_EXCLUDE_IN_EAP 0x00000004 00031 #define RAS_EAP_ROLE_EXCLUDE_IN_PEAP 0x00000008 00032 #define RAS_EAP_ROLE_EXCLUDE_IN_VPN 0x00000010 00033 00034 #define raatARAPChallenge 33 00035 #define raatARAPOldPassword 19 00036 #define raatARAPNewPassword 20 00037 #define raatARAPPasswordChangeReason 21 00038 00039 #define EAPCODE_Request 1 00040 #define EAPCODE_Response 2 00041 #define EAPCODE_Success 3 00042 #define EAPCODE_Failure 4 00043 00044 #define MAXEAPCODE 4 00045 00046 #define RAS_EAP_FLAG_ROUTER 0x00000001 00047 #define RAS_EAP_FLAG_NON_INTERACTIVE 0x00000002 00048 #define RAS_EAP_FLAG_LOGON 0x00000004 00049 #define RAS_EAP_FLAG_PREVIEW 0x00000008 00050 #define RAS_EAP_FLAG_FIRST_LINK 0x00000010 00051 #define RAS_EAP_FLAG_MACHINE_AUTH 0x00000020 00052 #define RAS_EAP_FLAG_GUEST_ACCESS 0x00000040 00053 #define RAS_EAP_FLAG_8021X_AUTH 0x00000080 00054 #define RAS_EAP_FLAG_HOSTED_IN_PEAP 0x00000100 00055 #define RAS_EAP_FLAG_RESUME_FROM_HIBERNATE 0x00000200 00056 #define RAS_EAP_FLAG_PEAP_UPFRONT 0x00000400 00057 #define RAS_EAP_FLAG_ALTERNATIVE_USER_DB 0x00000800 00058 00059 typedef enum _RAS_AUTH_ATTRIBUTE_TYPE_ 00060 { 00061 raatMinimum = 0, 00062 raatUserName, 00063 raatUserPassword, 00064 raatMD5CHAPPassword, 00065 raatNASIPAddress, 00066 raatNASPort, 00067 raatServiceType, 00068 raatFramedProtocol, 00069 raatFramedIPAddress, 00070 raatFramedIPNetmask, 00071 raatFramedRouting = 10, 00072 raatFilterId, 00073 raatFramedMTU, 00074 raatFramedCompression, 00075 raatLoginIPHost, 00076 raatLoginService, 00077 raatLoginTCPPort, 00078 raatUnassigned17, 00079 raatReplyMessage, 00080 raatCallbackNumber, 00081 raatCallbackId =20, 00082 raatUnassigned21, 00083 raatFramedRoute, 00084 raatFramedIPXNetwork, 00085 raatState, 00086 raatClass, 00087 raatVendorSpecific, 00088 raatSessionTimeout, 00089 raatIdleTimeout, 00090 raatTerminationAction, 00091 raatCalledStationId = 30, 00092 raatCallingStationId, 00093 raatNASIdentifier, 00094 raatProxyState, 00095 raatLoginLATService, 00096 raatLoginLATNode, 00097 raatLoginLATGroup, 00098 raatFramedAppleTalkLink, 00099 raatFramedAppleTalkNetwork, 00100 raatFramedAppleTalkZone, 00101 raatAcctStatusType = 40, 00102 raatAcctDelayTime, 00103 raatAcctInputOctets, 00104 raatAcctOutputOctets, 00105 raatAcctSessionId, 00106 raatAcctAuthentic, 00107 raatAcctSessionTime, 00108 raatAcctInputPackets, 00109 raatAcctOutputPackets, 00110 raatAcctTerminateCause, 00111 raatAcctMultiSessionId = 50, 00112 raatAcctLinkCount, 00113 raatAcctEventTimeStamp = 55, 00114 raatMD5CHAPChallenge = 60, 00115 raatNASPortType, 00116 raatPortLimit, 00117 raatLoginLATPort, 00118 raatTunnelType, 00119 raatTunnelMediumType, 00120 raatTunnelClientEndpoint, 00121 raatTunnelServerEndpoint, 00122 raatARAPPassword = 70, 00123 raatARAPFeatures, 00124 raatARAPZoneAccess, 00125 raatARAPSecurity, 00126 raatARAPSecurityData, 00127 raatPasswordRetry, 00128 raatPrompt, 00129 raatConnectInfo, 00130 raatConfigurationToken, 00131 raatEAPMessage, 00132 raatSignature = 80, 00133 raatARAPChallengeResponse = 84, 00134 raatAcctInterimInterval = 85, 00135 raatARAPGuestLogon = 8096, 00136 raatCertificateOID, 00137 raatEAPConfiguration, 00138 raatPEAPEmbeddedEAPTypeId, 00139 raatPEAPFastRoamedSession, 00140 raatEAPTLV = 8102, 00141 raatReserved = 0xFFFFFFFF 00142 00143 }RAS_AUTH_ATTRIBUTE_TYPE; 00144 00145 typedef struct _RAS_AUTH_ATTRIBUTE 00146 { 00147 RAS_AUTH_ATTRIBUTE_TYPE raaType; 00148 DWORD dwLength; 00149 PVOID Value; 00150 00151 }RAS_AUTH_ATTRIBUTE, *PRAS_AUTH_ATTRIBUTE; 00152 00153 typedef struct _PPP_EAP_PACKET 00154 { 00155 BYTE Code; 00156 BYTE Id; 00157 BYTE Length[2]; 00158 BYTE Data[1]; 00159 }PPP_EAP_PACKET, *PPPP_EAP_PACKET; 00160 00161 #define PPP_EAP_PACKET_HDR_LEN (sizeof(PPP_EAP_PACKET) - 1) 00162 00163 typedef struct _PPP_EAP_INPUT 00164 { 00165 DWORD dwSizeInBytes; 00166 DWORD fFlags; 00167 BOOL fAuthenticator; 00168 WCHAR* pwszIdentity; 00169 WCHAR* pwszPassword; 00170 BYTE bInitialId; 00171 RAS_AUTH_ATTRIBUTE* pUserAttributes; 00172 BOOL fAuthenticationComplete; 00173 DWORD dwAuthResultCode; 00174 OPTIONAL HANDLE hTokenImpersonateUser; 00175 BOOL fSuccessPacketReceived; 00176 BOOL fDataReceivedFromInteractiveUI; 00177 OPTIONAL PBYTE pDataFromInteractiveUI; 00178 DWORD dwSizeOfDataFromInteractiveUI; 00179 OPTIONAL PBYTE pConnectionData; 00180 DWORD dwSizeOfConnectionData; 00181 OPTIONAL PBYTE pUserData; 00182 DWORD dwSizeOfUserData; 00183 HANDLE hReserved; 00184 }PPP_EAP_INPUT, *PPPP_EAP_INPUT; 00185 00186 typedef enum _PPP_EAP_ACTION 00187 { 00188 EAPACTION_NoAction, 00189 EAPACTION_Authenticate, 00190 EAPACTION_Done, 00191 EAPACTION_SendAndDone, 00192 EAPACTION_Send, 00193 EAPACTION_SendWithTimeout, 00194 EAPACTION_SendWithTimeoutInteractive, 00195 EAPACTION_IndicateTLV, 00196 EAPACTION_IndicateIdentity 00197 }PPP_EAP_ACTION; 00198 00199 typedef struct _PPP_EAP_OUTPUT 00200 { 00201 DWORD dwSizeInBytes; 00202 PPP_EAP_ACTION Action; 00203 DWORD dwAuthResultCode; 00204 OPTIONAL RAS_AUTH_ATTRIBUTE* pUserAttributes; 00205 BOOL fInvokeInteractiveUI; 00206 OPTIONAL PBYTE pUIContextData; 00207 DWORD dwSizeOfUIContextData; 00208 BOOL fSaveConnectionData; 00209 OPTIONAL PBYTE pConnectionData; 00210 DWORD dwSizeOfConnectionData; 00211 BOOL fSaveUserData; 00212 OPTIONAL PBYTE pUserData; 00213 DWORD dwSizeOfUserData; 00214 }PPP_EAP_OUTPUT, *PPPP_EAP_OUTPUT; 00215 00216 typedef struct _PPP_EAP_INFO 00217 { 00218 DWORD dwSizeInBytes; 00219 DWORD dwEapTypeId; 00220 DWORD (APIENTRY *RasEapInitialize)(IN BOOL fInitialize ); 00221 DWORD (APIENTRY *RasEapBegin)(OUT VOID** ppWorkBuffer, IN PPP_EAP_INPUT* pPppEapInput); 00222 DWORD (APIENTRY *RasEapEnd)(IN VOID* pWorkBuffer); 00223 DWORD (APIENTRY *RasEapMakeMessage)(IN VOID* pWorkBuf, IN PPP_EAP_PACKET* pReceivePacket, OUT PPP_EAP_PACKET* pSendPacket, IN DWORD cbSendPacket, OUT PPP_EAP_OUTPUT* pEapOutput, IN PPP_EAP_INPUT* pEapInput); 00224 }PPP_EAP_INFO, *PPPP_EAP_INFO; 00225 00226 DWORD APIENTRY 00227 RasEapGetInfo(IN DWORD dwEapTypeId, 00228 OUT PPP_EAP_INFO* pEapInfo); 00229 00230 DWORD APIENTRY 00231 RasEapFreeMemory(IN BYTE* pMemory); 00232 00233 DWORD APIENTRY 00234 RasEapInvokeInteractiveUI(IN DWORD dwEapTypeId, 00235 IN HWND hwndParent, 00236 IN BYTE* pUIContextData, 00237 IN DWORD dwSizeOfUIContextData, 00238 OUT BYTE** ppDataFromInteractiveUI, 00239 OUT DWORD* pdwSizeOfDataFromInteractiveUI); 00240 00241 DWORD APIENTRY 00242 RasEapInvokeConfigUI(IN DWORD dwEapTypeId, 00243 IN HWND hwndParent, 00244 IN DWORD dwFlags, 00245 IN BYTE* pConnectionDataIn, 00246 IN DWORD dwSizeOfConnectionDataIn, 00247 OUT BYTE** ppConnectionDataOut, 00248 OUT DWORD* pdwSizeOfConnectionDataOut); 00249 00250 DWORD APIENTRY 00251 RasEapGetIdentity(IN DWORD dwEapTypeId, 00252 IN HWND hwndParent, 00253 IN DWORD dwFlags, 00254 IN const WCHAR* pwszPhonebook, 00255 IN const WCHAR* pwszEntry, 00256 IN BYTE* pConnectionDataIn, 00257 IN DWORD dwSizeOfConnectionDataIn, 00258 IN BYTE* pUserDataIn, 00259 IN DWORD dwSizeOfUserDataIn, 00260 OUT BYTE** ppUserDataOut, 00261 OUT DWORD* pdwSizeOfUserDataOut, 00262 OUT WCHAR** ppwszIdentity 00263 ); 00264 00265 #endif /* WINVER >= 0x0500 */ 00266 00267 #ifdef __cplusplus 00268 } 00269 #endif 00270 00271 #endif /* _RASEAPIF_ */ 00272 Generated on Sun May 27 2012 04:32:15 for ReactOS by
1.7.6.1
|