| /** |
| * This file has no copyright assigned and is placed in the Public Domain. |
| * This file is part of the mingw-w64 runtime package. |
| * No warranty is given; refer to the file DISCLAIMER.PD within this package. |
| */ |
| #ifndef _INC_EAPMETHODPEERAPIS |
| #define _INC_EAPMETHODPEERAPIS |
| #if (_WIN32_WINNT >= 0x0600) |
| #include <eaptypes.h> |
| #include <eapmethodtypes.h> |
| |
| #ifdef __cplusplus |
| extern "C" { |
| #endif |
| |
| DWORD WINAPI EapPeerQueryCredentialInputFields( |
| HANDLE hUserImpersonationToken, |
| EAP_METHOD_TYPE eapMethodType, |
| DWORD dwFlags, |
| DWORD dwEapConnDataSize, |
| BYTE *pbEapConnData, |
| EAP_CONFIG_INPUT_FIELD_ARRAY *pEapConfigInputFieldsArray, |
| EAP_ERROR **ppEapError |
| ); |
| |
| DWORD WINAPI EapPeerBeginSession( |
| DWORD dwFlags, |
| const EapAttributes *pAttributeArray, |
| HANDLE hTokenImpersonateUser, |
| DWORD dwSizeofConnectionData, |
| BYTE *pConnectionData, |
| DWORD dwSizeofUserData, |
| BYTE *pUserData, |
| DWORD dwMaxSendPacketSize, |
| EAP_SESSION_HANDLE *pSessionHandle, |
| EAP_ERROR **ppEapError |
| ); |
| |
| DWORD WINAPI EapPeerQueryUserBlobFromCredentialInputFields( |
| HANDLE hUserImpersonationToken, |
| EAP_METHOD_TYPE eapMethodType, |
| DWORD dwFlags, |
| DWORD dwEapConnDataSize, |
| BYTE *pbEapConnData, |
| const EAP_CONFIG_INPUT_FIELD_ARRAY *pEapConfigInputFieldArray, |
| DWORD *pdwUsersBlobSize, |
| BYTE **ppUserBlob, |
| EAP_ERROR **ppEapError |
| ); |
| |
| DWORD WINAPI EapPeerGetIdentity( |
| DWORD dwflags, |
| DWORD dwSizeofConnectionData, |
| const BYTE *pConnectionData, |
| DWORD dwSizeOfUserData, |
| const BYTE *pUserData, |
| HANDLE hTokenImpersonateUser, |
| WINBOOL *pfInvokeUI, |
| DWORD *pdwSizeOfUserDataOut, |
| BYTE **ppUserDataOut, |
| LPWSTR *ppwszIdentity, |
| EAP_ERROR **ppEapError |
| ); |
| |
| DWORD WINAPI EapPeerInitialize( |
| EAP_ERROR **ppEapError |
| ); |
| |
| DWORD WINAPI EapPeerGetInfo( |
| EAP_TYPE *pEapType, |
| EAP_PEER_METHOD_ROUTINES *pEapInfo, |
| EAP_ERROR **ppEapError |
| ); |
| |
| DWORD WINAPI EapPeerSetCredentials( |
| EAP_SESSION_HANDLE sessionHandle, |
| LPWSTR pwszIdentity, |
| LPWSTR pwszPassword, |
| EAP_ERROR **ppEapError |
| ); |
| |
| DWORD WINAPI EapPeerInvokeIdentityUI( |
| EAP_METHOD_TYPE *pEapType, |
| DWORD dwflags, |
| HWND hwndParent, |
| DWORD dwSizeOfConnectionData, |
| const BYTE *pConnectionData, |
| DWORD dwSizeOfUserData, |
| const BYTE *pUserData, |
| DWORD *pdwSizeOfUserDataOut, |
| BYTE **ppUserDataOut, |
| LPWSTR *ppwszIdentity, |
| EAP_ERROR **ppEapError |
| ); |
| |
| DWORD WINAPI EapPeerProcessRequestPacket( |
| EAP_SESSION_HANDLE sessionHandle, |
| DWORD cbReceivedPacket, |
| EapPacket *pReceivedPacket, |
| EapPeerMethodOutput *pEapOutput, |
| EAP_ERROR **ppEapError |
| ); |
| |
| DWORD WINAPI EapPeerGetResponsePacket( |
| EAP_SESSION_HANDLE sessionHandle, |
| DWORD *pcbSendPacket, |
| EapPacket *pSendPacket, |
| EAP_ERROR **ppEapError |
| ); |
| |
| DWORD WINAPI EapPeerGetResult( |
| EAP_SESSION_HANDLE sessionHandle, |
| EapPeerMethodResultReason reason, |
| EapPeerMethodResult *ppResult, |
| EAP_ERROR **ppEapError |
| ); |
| |
| typedef struct tagEapPeerMethodResult { |
| WINBOOL fIsSuccess; |
| DWORD dwFailureReasonCode; |
| WINBOOL fSaveConnectionData; |
| DWORD dwSizeOfConnectionData; |
| BYTE * pConnectionData; |
| WINBOOL fSaveUserData; |
| DWORD dwSizeofUserData; |
| BYTE * pUserData; |
| EAP_ATTRIBUTES *pAttribArray; |
| EAP_ERROR * pEapError; |
| } EapPeerMethodResult; |
| |
| DWORD WINAPI EapPeerGetUIContext( |
| EAP_SESSION_HANDLE sessionHandle, |
| DWORD *pdwSizeOfUIContextData, |
| BYTE **ppUIContextData, |
| EAP_ERROR **ppEapError |
| ); |
| |
| DWORD WINAPI EapPeerSetUIContext( |
| EAP_SESSION_HANDLE sessionHandle, |
| DWORD dwSizeOfUIContextData, |
| const BYTE *pUIContextData, |
| EapPeerMethodOutput *pEapOutput, |
| EAP_ERROR **ppEapError |
| ); |
| |
| DWORD WINAPI EapPeerGetResponseAttributes( |
| EAP_SESSION_HANDLE sessionHandle, |
| EapAttributes *pAttribs, |
| EAP_ERROR **ppEapError |
| ); |
| |
| DWORD WINAPI EapPeerSetResponseAttributes( |
| EAP_SESSION_HANDLE sessionHandle, |
| EapAttributes *pAttribs, |
| EapPeerMethodOutput *pEapOutput, |
| EAP_ERROR **ppEapError |
| ); |
| |
| DWORD WINAPI EapPeerEndSession( |
| EAP_SESSION_HANDLE sessionHandle, |
| EAP_ERROR **ppEapError |
| ); |
| |
| DWORD WINAPI EapPeerShutdown( |
| EAP_ERROR **ppEapError |
| ); |
| |
| DWORD WINAPI EapPeerInvokeConfigUI( |
| EAP_METHOD_TYPE *pEapType, |
| HWND hwndParent, |
| DWORD dwFlags, |
| DWORD dwSizeOfConnectionDataIn, |
| BYTE *pConnectionDataIn, |
| DWORD *dwSizeOfConnectionDataOut, |
| BYTE **ppConnectionDataOut, |
| EAP_ERROR **ppEapError |
| ); |
| |
| DWORD WINAPI EapPeerInvokeInteractiveUI( |
| EAP_METHOD_TYPE *pEapType, |
| HWND hwndParent, |
| DWORD dwSizeofUIContextData, |
| BYTE *pUIContextData, |
| DWORD *pdwSizeOfDataFromInteractiveUI, |
| BYTE **ppDataFromInteractiveUI, |
| EAP_ERROR **ppEapError |
| ); |
| |
| DWORD WINAPI EapPeerQueryInteractiveUIInputFields( |
| DWORD dwVersion, |
| DWORD dwFlags, |
| DWORD dwSizeofUIContextData, |
| const BYTE *pUIContextData, |
| EAP_INTERACTIVE_UI_DATA *pEapInteractiveUIData, |
| EAP_ERROR **ppEapError, |
| LPVOID *pvReserved |
| ); |
| |
| DWORD WINAPI EapPeerQueryUIBlobFromInteractiveUIInputFields( |
| DWORD dwVersion, |
| DWORD dwFlags, |
| DWORD dwSizeofUIContextData, |
| const BYTE *pUIContextData, |
| const EAP_INTERACTIVE_UI_DATA *pEapInteractiveUIData, |
| DWORD *pdwSizeOfDataFromInteractiveUI, |
| BYTE **ppDataFromInteractiveUI, |
| EAP_ERROR **ppEapError, |
| LPVOID *ppvReserved |
| ); |
| |
| DWORD WINAPI EapPeerConfigBlob2Xml( |
| DWORD dwFlags, |
| EAP_METHOD_TYPE eapMethodType, |
| const BYTE *pConfigIn, |
| DWORD dwSizeOfConfigIn, |
| IXMLDOMDocument2 **ppConfigDoc, |
| EAP_ERROR **pEapError |
| ); |
| |
| DWORD WINAPI EapPeerConfigXml2Blob( |
| DWORD dwFlags, |
| EAP_METHOD_TYPE eapMethodType, |
| IXMLDOMDocument2 *pConfigDoc, |
| BYTE **ppConfigOut, |
| DWORD *pdwSizeOfConfigOut, |
| EAP_ERROR **ppEapError |
| ); |
| |
| DWORD WINAPI EapPeerCredentialsXml2Blob( |
| DWORD dwFlags, |
| EAP_METHOD_TYPE eapMethodType, |
| IXMLDOMDocument2 *pCredentialsDoc, |
| const BYTE *pConfigIn, |
| DWORD dwSizeOfConfigIn, |
| BYTE **ppCredentialsOut, |
| DWORD *pdwSizeofCredentialsOut, |
| EAP_ERROR **ppEapError |
| ); |
| |
| VOID WINAPI EapPeerFreeMemory( |
| void *pUIContextData |
| ); |
| |
| #ifdef __cplusplus |
| } |
| #endif |
| |
| #endif /*(_WIN32_WINNT >= 0x0600)*/ |
| #endif /*_INC_EAPMETHODPEERAPIS*/ |