# pylint:disable=line-too-long
import logging

from ...sim_type import SimTypeFunction,     SimTypeShort, SimTypeInt, SimTypeLong, SimTypeLongLong, SimTypeDouble, SimTypeFloat,     SimTypePointer,     SimTypeChar,     SimStruct,     SimTypeFixedSizeArray,     SimTypeBottom,     SimUnion,     SimTypeBool
from ...calling_conventions import SimCCStdcall, SimCCMicrosoftAMD64
from .. import SIM_PROCEDURES as P
from . import SimLibrary


_l = logging.getLogger(name=__name__)


lib = SimLibrary()
lib.set_default_cc('X86', SimCCStdcall)
lib.set_default_cc('AMD64', SimCCMicrosoftAMD64)
lib.set_library_names("eappprxy.dll")
prototypes = \
    {
        # 
        'EapHostPeerInitialize': SimTypeFunction([], SimTypeInt(signed=False, label="UInt32")),
        # 
        'EapHostPeerUninitialize': SimTypeFunction([], SimTypeBottom(label="Void")),
        # 
        'EapHostPeerBeginSession': SimTypeFunction([SimTypeInt(signed=False, label="UInt32"), SimStruct({"eapType": SimStruct({"type": SimTypeChar(label="Byte"), "dwVendorId": SimTypeInt(signed=False, label="UInt32"), "dwVendorType": SimTypeInt(signed=False, label="UInt32")}, name="EAP_TYPE", pack=False, align=None), "dwAuthorId": SimTypeInt(signed=False, label="UInt32")}, name="EAP_METHOD_TYPE", pack=False, align=None), SimTypePointer(SimStruct({"dwNumberOfAttributes": SimTypeInt(signed=False, label="UInt32"), "pAttribs": SimTypePointer(SimStruct({"eaType": SimTypeInt(signed=False, label="EAP_ATTRIBUTE_TYPE"), "dwLength": SimTypeInt(signed=False, label="UInt32"), "pValue": SimTypePointer(SimTypeChar(label="Byte"), offset=0)}, name="EAP_ATTRIBUTE", pack=False, align=None), offset=0)}, name="EAP_ATTRIBUTES", pack=False, align=None), offset=0), SimTypePointer(SimTypeInt(signed=True, label="Int"), label="IntPtr", offset=0), SimTypeInt(signed=False, label="UInt32"), SimTypePointer(SimTypeChar(label="Byte"), offset=0), SimTypeInt(signed=False, label="UInt32"), SimTypePointer(SimTypeChar(label="Byte"), offset=0), SimTypeInt(signed=False, label="UInt32"), SimTypePointer(SimTypeBottom(label="Guid"), offset=0), SimTypePointer(SimTypeFunction([SimTypeBottom(label="Guid"), SimTypePointer(SimTypeBottom(label="Void"), offset=0)], SimTypeBottom(label="Void"), arg_names=["connectionId", "pContextData"]), offset=0), SimTypePointer(SimTypeBottom(label="Void"), offset=0), SimTypePointer(SimTypeInt(signed=False, label="UInt32"), offset=0), SimTypePointer(SimTypePointer(SimStruct({"dwWinError": SimTypeInt(signed=False, label="UInt32"), "type": SimStruct({"eapType": SimStruct({"type": SimTypeChar(label="Byte"), "dwVendorId": SimTypeInt(signed=False, label="UInt32"), "dwVendorType": SimTypeInt(signed=False, label="UInt32")}, name="EAP_TYPE", pack=False, align=None), "dwAuthorId": SimTypeInt(signed=False, label="UInt32")}, name="EAP_METHOD_TYPE", pack=False, align=None), "dwReasonCode": SimTypeInt(signed=False, label="UInt32"), "rootCauseGuid": SimTypeBottom(label="Guid"), "repairGuid": SimTypeBottom(label="Guid"), "helpLinkGuid": SimTypeBottom(label="Guid"), "pRootCauseString": SimTypePointer(SimTypeChar(label="Char"), offset=0), "pRepairString": SimTypePointer(SimTypeChar(label="Char"), offset=0)}, name="EAP_ERROR", pack=False, align=None), offset=0), offset=0)], SimTypeInt(signed=False, label="UInt32"), arg_names=["dwFlags", "eapType", "pAttributeArray", "hTokenImpersonateUser", "dwSizeofConnectionData", "pConnectionData", "dwSizeofUserData", "pUserData", "dwMaxSendPacketSize", "pConnectionId", "func", "pContextData", "pSessionId", "ppEapError"]),
        # 
        'EapHostPeerProcessReceivedPacket': SimTypeFunction([SimTypeInt(signed=False, label="UInt32"), SimTypeInt(signed=False, label="UInt32"), SimTypePointer(SimTypeChar(label="Byte"), offset=0), SimTypePointer(SimTypeInt(signed=False, label="EapHostPeerResponseAction"), offset=0), SimTypePointer(SimTypePointer(SimStruct({"dwWinError": SimTypeInt(signed=False, label="UInt32"), "type": SimStruct({"eapType": SimStruct({"type": SimTypeChar(label="Byte"), "dwVendorId": SimTypeInt(signed=False, label="UInt32"), "dwVendorType": SimTypeInt(signed=False, label="UInt32")}, name="EAP_TYPE", pack=False, align=None), "dwAuthorId": SimTypeInt(signed=False, label="UInt32")}, name="EAP_METHOD_TYPE", pack=False, align=None), "dwReasonCode": SimTypeInt(signed=False, label="UInt32"), "rootCauseGuid": SimTypeBottom(label="Guid"), "repairGuid": SimTypeBottom(label="Guid"), "helpLinkGuid": SimTypeBottom(label="Guid"), "pRootCauseString": SimTypePointer(SimTypeChar(label="Char"), offset=0), "pRepairString": SimTypePointer(SimTypeChar(label="Char"), offset=0)}, name="EAP_ERROR", pack=False, align=None), offset=0), offset=0)], SimTypeInt(signed=False, label="UInt32"), arg_names=["sessionHandle", "cbReceivePacket", "pReceivePacket", "pEapOutput", "ppEapError"]),
        # 
        'EapHostPeerGetSendPacket': SimTypeFunction([SimTypeInt(signed=False, label="UInt32"), SimTypePointer(SimTypeInt(signed=False, label="UInt32"), offset=0), SimTypePointer(SimTypePointer(SimTypeChar(label="Byte"), offset=0), offset=0), SimTypePointer(SimTypePointer(SimStruct({"dwWinError": SimTypeInt(signed=False, label="UInt32"), "type": SimStruct({"eapType": SimStruct({"type": SimTypeChar(label="Byte"), "dwVendorId": SimTypeInt(signed=False, label="UInt32"), "dwVendorType": SimTypeInt(signed=False, label="UInt32")}, name="EAP_TYPE", pack=False, align=None), "dwAuthorId": SimTypeInt(signed=False, label="UInt32")}, name="EAP_METHOD_TYPE", pack=False, align=None), "dwReasonCode": SimTypeInt(signed=False, label="UInt32"), "rootCauseGuid": SimTypeBottom(label="Guid"), "repairGuid": SimTypeBottom(label="Guid"), "helpLinkGuid": SimTypeBottom(label="Guid"), "pRootCauseString": SimTypePointer(SimTypeChar(label="Char"), offset=0), "pRepairString": SimTypePointer(SimTypeChar(label="Char"), offset=0)}, name="EAP_ERROR", pack=False, align=None), offset=0), offset=0)], SimTypeInt(signed=False, label="UInt32"), arg_names=["sessionHandle", "pcbSendPacket", "ppSendPacket", "ppEapError"]),
        # 
        'EapHostPeerGetResult': SimTypeFunction([SimTypeInt(signed=False, label="UInt32"), SimTypeInt(signed=False, label="EapHostPeerMethodResultReason"), SimTypePointer(SimStruct({"fIsSuccess": SimTypeInt(signed=True, label="Int32"), "dwFailureReasonCode": SimTypeInt(signed=False, label="UInt32"), "fSaveConnectionData": SimTypeInt(signed=True, label="Int32"), "dwSizeofConnectionData": SimTypeInt(signed=False, label="UInt32"), "pConnectionData": SimTypePointer(SimTypeChar(label="Byte"), offset=0), "fSaveUserData": SimTypeInt(signed=True, label="Int32"), "dwSizeofUserData": SimTypeInt(signed=False, label="UInt32"), "pUserData": SimTypePointer(SimTypeChar(label="Byte"), offset=0), "pAttribArray": SimTypePointer(SimStruct({"dwNumberOfAttributes": SimTypeInt(signed=False, label="UInt32"), "pAttribs": SimTypePointer(SimStruct({"eaType": SimTypeInt(signed=False, label="EAP_ATTRIBUTE_TYPE"), "dwLength": SimTypeInt(signed=False, label="UInt32"), "pValue": SimTypePointer(SimTypeChar(label="Byte"), offset=0)}, name="EAP_ATTRIBUTE", pack=False, align=None), offset=0)}, name="EAP_ATTRIBUTES", pack=False, align=None), offset=0), "isolationState": SimTypeInt(signed=False, label="ISOLATION_STATE"), "pEapMethodInfo": SimTypePointer(SimStruct({"eaptype": SimStruct({"eapType": SimStruct({"type": SimTypeChar(label="Byte"), "dwVendorId": SimTypeInt(signed=False, label="UInt32"), "dwVendorType": SimTypeInt(signed=False, label="UInt32")}, name="EAP_TYPE", pack=False, align=None), "dwAuthorId": SimTypeInt(signed=False, label="UInt32")}, name="EAP_METHOD_TYPE", pack=False, align=None), "pwszAuthorName": SimTypePointer(SimTypeChar(label="Char"), offset=0), "pwszFriendlyName": SimTypePointer(SimTypeChar(label="Char"), offset=0), "eapProperties": SimTypeInt(signed=False, label="UInt32"), "pInnerMethodInfo": SimTypePointer(SimTypeBottom(label="EAP_METHOD_INFO"), offset=0)}, name="EAP_METHOD_INFO", pack=False, align=None), offset=0), "pEapError": SimTypePointer(SimStruct({"dwWinError": SimTypeInt(signed=False, label="UInt32"), "type": SimStruct({"eapType": SimStruct({"type": SimTypeChar(label="Byte"), "dwVendorId": SimTypeInt(signed=False, label="UInt32"), "dwVendorType": SimTypeInt(signed=False, label="UInt32")}, name="EAP_TYPE", pack=False, align=None), "dwAuthorId": SimTypeInt(signed=False, label="UInt32")}, name="EAP_METHOD_TYPE", pack=False, align=None), "dwReasonCode": SimTypeInt(signed=False, label="UInt32"), "rootCauseGuid": SimTypeBottom(label="Guid"), "repairGuid": SimTypeBottom(label="Guid"), "helpLinkGuid": SimTypeBottom(label="Guid"), "pRootCauseString": SimTypePointer(SimTypeChar(label="Char"), offset=0), "pRepairString": SimTypePointer(SimTypeChar(label="Char"), offset=0)}, name="EAP_ERROR", pack=False, align=None), offset=0)}, name="EapHostPeerMethodResult", pack=False, align=None), offset=0), SimTypePointer(SimTypePointer(SimStruct({"dwWinError": SimTypeInt(signed=False, label="UInt32"), "type": SimStruct({"eapType": SimStruct({"type": SimTypeChar(label="Byte"), "dwVendorId": SimTypeInt(signed=False, label="UInt32"), "dwVendorType": SimTypeInt(signed=False, label="UInt32")}, name="EAP_TYPE", pack=False, align=None), "dwAuthorId": SimTypeInt(signed=False, label="UInt32")}, name="EAP_METHOD_TYPE", pack=False, align=None), "dwReasonCode": SimTypeInt(signed=False, label="UInt32"), "rootCauseGuid": SimTypeBottom(label="Guid"), "repairGuid": SimTypeBottom(label="Guid"), "helpLinkGuid": SimTypeBottom(label="Guid"), "pRootCauseString": SimTypePointer(SimTypeChar(label="Char"), offset=0), "pRepairString": SimTypePointer(SimTypeChar(label="Char"), offset=0)}, name="EAP_ERROR", pack=False, align=None), offset=0), offset=0)], SimTypeInt(signed=False, label="UInt32"), arg_names=["sessionHandle", "reason", "ppResult", "ppEapError"]),
        # 
        'EapHostPeerGetUIContext': SimTypeFunction([SimTypeInt(signed=False, label="UInt32"), SimTypePointer(SimTypeInt(signed=False, label="UInt32"), offset=0), SimTypePointer(SimTypePointer(SimTypeChar(label="Byte"), offset=0), offset=0), SimTypePointer(SimTypePointer(SimStruct({"dwWinError": SimTypeInt(signed=False, label="UInt32"), "type": SimStruct({"eapType": SimStruct({"type": SimTypeChar(label="Byte"), "dwVendorId": SimTypeInt(signed=False, label="UInt32"), "dwVendorType": SimTypeInt(signed=False, label="UInt32")}, name="EAP_TYPE", pack=False, align=None), "dwAuthorId": SimTypeInt(signed=False, label="UInt32")}, name="EAP_METHOD_TYPE", pack=False, align=None), "dwReasonCode": SimTypeInt(signed=False, label="UInt32"), "rootCauseGuid": SimTypeBottom(label="Guid"), "repairGuid": SimTypeBottom(label="Guid"), "helpLinkGuid": SimTypeBottom(label="Guid"), "pRootCauseString": SimTypePointer(SimTypeChar(label="Char"), offset=0), "pRepairString": SimTypePointer(SimTypeChar(label="Char"), offset=0)}, name="EAP_ERROR", pack=False, align=None), offset=0), offset=0)], SimTypeInt(signed=False, label="UInt32"), arg_names=["sessionHandle", "pdwSizeOfUIContextData", "ppUIContextData", "ppEapError"]),
        # 
        'EapHostPeerSetUIContext': SimTypeFunction([SimTypeInt(signed=False, label="UInt32"), SimTypeInt(signed=False, label="UInt32"), SimTypePointer(SimTypeChar(label="Byte"), offset=0), SimTypePointer(SimTypeInt(signed=False, label="EapHostPeerResponseAction"), offset=0), SimTypePointer(SimTypePointer(SimStruct({"dwWinError": SimTypeInt(signed=False, label="UInt32"), "type": SimStruct({"eapType": SimStruct({"type": SimTypeChar(label="Byte"), "dwVendorId": SimTypeInt(signed=False, label="UInt32"), "dwVendorType": SimTypeInt(signed=False, label="UInt32")}, name="EAP_TYPE", pack=False, align=None), "dwAuthorId": SimTypeInt(signed=False, label="UInt32")}, name="EAP_METHOD_TYPE", pack=False, align=None), "dwReasonCode": SimTypeInt(signed=False, label="UInt32"), "rootCauseGuid": SimTypeBottom(label="Guid"), "repairGuid": SimTypeBottom(label="Guid"), "helpLinkGuid": SimTypeBottom(label="Guid"), "pRootCauseString": SimTypePointer(SimTypeChar(label="Char"), offset=0), "pRepairString": SimTypePointer(SimTypeChar(label="Char"), offset=0)}, name="EAP_ERROR", pack=False, align=None), offset=0), offset=0)], SimTypeInt(signed=False, label="UInt32"), arg_names=["sessionHandle", "dwSizeOfUIContextData", "pUIContextData", "pEapOutput", "ppEapError"]),
        # 
        'EapHostPeerGetResponseAttributes': SimTypeFunction([SimTypeInt(signed=False, label="UInt32"), SimTypePointer(SimStruct({"dwNumberOfAttributes": SimTypeInt(signed=False, label="UInt32"), "pAttribs": SimTypePointer(SimStruct({"eaType": SimTypeInt(signed=False, label="EAP_ATTRIBUTE_TYPE"), "dwLength": SimTypeInt(signed=False, label="UInt32"), "pValue": SimTypePointer(SimTypeChar(label="Byte"), offset=0)}, name="EAP_ATTRIBUTE", pack=False, align=None), offset=0)}, name="EAP_ATTRIBUTES", pack=False, align=None), offset=0), SimTypePointer(SimTypePointer(SimStruct({"dwWinError": SimTypeInt(signed=False, label="UInt32"), "type": SimStruct({"eapType": SimStruct({"type": SimTypeChar(label="Byte"), "dwVendorId": SimTypeInt(signed=False, label="UInt32"), "dwVendorType": SimTypeInt(signed=False, label="UInt32")}, name="EAP_TYPE", pack=False, align=None), "dwAuthorId": SimTypeInt(signed=False, label="UInt32")}, name="EAP_METHOD_TYPE", pack=False, align=None), "dwReasonCode": SimTypeInt(signed=False, label="UInt32"), "rootCauseGuid": SimTypeBottom(label="Guid"), "repairGuid": SimTypeBottom(label="Guid"), "helpLinkGuid": SimTypeBottom(label="Guid"), "pRootCauseString": SimTypePointer(SimTypeChar(label="Char"), offset=0), "pRepairString": SimTypePointer(SimTypeChar(label="Char"), offset=0)}, name="EAP_ERROR", pack=False, align=None), offset=0), offset=0)], SimTypeInt(signed=False, label="UInt32"), arg_names=["sessionHandle", "pAttribs", "ppEapError"]),
        # 
        'EapHostPeerSetResponseAttributes': SimTypeFunction([SimTypeInt(signed=False, label="UInt32"), SimTypePointer(SimStruct({"dwNumberOfAttributes": SimTypeInt(signed=False, label="UInt32"), "pAttribs": SimTypePointer(SimStruct({"eaType": SimTypeInt(signed=False, label="EAP_ATTRIBUTE_TYPE"), "dwLength": SimTypeInt(signed=False, label="UInt32"), "pValue": SimTypePointer(SimTypeChar(label="Byte"), offset=0)}, name="EAP_ATTRIBUTE", pack=False, align=None), offset=0)}, name="EAP_ATTRIBUTES", pack=False, align=None), offset=0), SimTypePointer(SimTypeInt(signed=False, label="EapHostPeerResponseAction"), offset=0), SimTypePointer(SimTypePointer(SimStruct({"dwWinError": SimTypeInt(signed=False, label="UInt32"), "type": SimStruct({"eapType": SimStruct({"type": SimTypeChar(label="Byte"), "dwVendorId": SimTypeInt(signed=False, label="UInt32"), "dwVendorType": SimTypeInt(signed=False, label="UInt32")}, name="EAP_TYPE", pack=False, align=None), "dwAuthorId": SimTypeInt(signed=False, label="UInt32")}, name="EAP_METHOD_TYPE", pack=False, align=None), "dwReasonCode": SimTypeInt(signed=False, label="UInt32"), "rootCauseGuid": SimTypeBottom(label="Guid"), "repairGuid": SimTypeBottom(label="Guid"), "helpLinkGuid": SimTypeBottom(label="Guid"), "pRootCauseString": SimTypePointer(SimTypeChar(label="Char"), offset=0), "pRepairString": SimTypePointer(SimTypeChar(label="Char"), offset=0)}, name="EAP_ERROR", pack=False, align=None), offset=0), offset=0)], SimTypeInt(signed=False, label="UInt32"), arg_names=["sessionHandle", "pAttribs", "pEapOutput", "ppEapError"]),
        # 
        'EapHostPeerGetAuthStatus': SimTypeFunction([SimTypeInt(signed=False, label="UInt32"), SimTypeInt(signed=False, label="EapHostPeerAuthParams"), SimTypePointer(SimTypeInt(signed=False, label="UInt32"), offset=0), SimTypePointer(SimTypePointer(SimTypeChar(label="Byte"), offset=0), offset=0), SimTypePointer(SimTypePointer(SimStruct({"dwWinError": SimTypeInt(signed=False, label="UInt32"), "type": SimStruct({"eapType": SimStruct({"type": SimTypeChar(label="Byte"), "dwVendorId": SimTypeInt(signed=False, label="UInt32"), "dwVendorType": SimTypeInt(signed=False, label="UInt32")}, name="EAP_TYPE", pack=False, align=None), "dwAuthorId": SimTypeInt(signed=False, label="UInt32")}, name="EAP_METHOD_TYPE", pack=False, align=None), "dwReasonCode": SimTypeInt(signed=False, label="UInt32"), "rootCauseGuid": SimTypeBottom(label="Guid"), "repairGuid": SimTypeBottom(label="Guid"), "helpLinkGuid": SimTypeBottom(label="Guid"), "pRootCauseString": SimTypePointer(SimTypeChar(label="Char"), offset=0), "pRepairString": SimTypePointer(SimTypeChar(label="Char"), offset=0)}, name="EAP_ERROR", pack=False, align=None), offset=0), offset=0)], SimTypeInt(signed=False, label="UInt32"), arg_names=["sessionHandle", "authParam", "pcbAuthData", "ppAuthData", "ppEapError"]),
        # 
        'EapHostPeerEndSession': SimTypeFunction([SimTypeInt(signed=False, label="UInt32"), SimTypePointer(SimTypePointer(SimStruct({"dwWinError": SimTypeInt(signed=False, label="UInt32"), "type": SimStruct({"eapType": SimStruct({"type": SimTypeChar(label="Byte"), "dwVendorId": SimTypeInt(signed=False, label="UInt32"), "dwVendorType": SimTypeInt(signed=False, label="UInt32")}, name="EAP_TYPE", pack=False, align=None), "dwAuthorId": SimTypeInt(signed=False, label="UInt32")}, name="EAP_METHOD_TYPE", pack=False, align=None), "dwReasonCode": SimTypeInt(signed=False, label="UInt32"), "rootCauseGuid": SimTypeBottom(label="Guid"), "repairGuid": SimTypeBottom(label="Guid"), "helpLinkGuid": SimTypeBottom(label="Guid"), "pRootCauseString": SimTypePointer(SimTypeChar(label="Char"), offset=0), "pRepairString": SimTypePointer(SimTypeChar(label="Char"), offset=0)}, name="EAP_ERROR", pack=False, align=None), offset=0), offset=0)], SimTypeInt(signed=False, label="UInt32"), arg_names=["sessionHandle", "ppEapError"]),
        # 
        'EapHostPeerGetDataToUnplumbCredentials': SimTypeFunction([SimTypePointer(SimTypeBottom(label="Guid"), offset=0), SimTypePointer(SimTypePointer(SimTypeInt(signed=True, label="Int"), label="IntPtr", offset=0), offset=0), SimTypeInt(signed=False, label="UInt32"), SimTypePointer(SimTypePointer(SimStruct({"dwWinError": SimTypeInt(signed=False, label="UInt32"), "type": SimStruct({"eapType": SimStruct({"type": SimTypeChar(label="Byte"), "dwVendorId": SimTypeInt(signed=False, label="UInt32"), "dwVendorType": SimTypeInt(signed=False, label="UInt32")}, name="EAP_TYPE", pack=False, align=None), "dwAuthorId": SimTypeInt(signed=False, label="UInt32")}, name="EAP_METHOD_TYPE", pack=False, align=None), "dwReasonCode": SimTypeInt(signed=False, label="UInt32"), "rootCauseGuid": SimTypeBottom(label="Guid"), "repairGuid": SimTypeBottom(label="Guid"), "helpLinkGuid": SimTypeBottom(label="Guid"), "pRootCauseString": SimTypePointer(SimTypeChar(label="Char"), offset=0), "pRepairString": SimTypePointer(SimTypeChar(label="Char"), offset=0)}, name="EAP_ERROR", pack=False, align=None), offset=0), offset=0), SimTypePointer(SimTypeInt(signed=True, label="Int32"), offset=0)], SimTypeInt(signed=False, label="UInt32"), arg_names=["pConnectionIdThatLastSavedCreds", "phCredentialImpersonationToken", "sessionHandle", "ppEapError", "fSaveToCredMan"]),
        # 
        'EapHostPeerClearConnection': SimTypeFunction([SimTypePointer(SimTypeBottom(label="Guid"), offset=0), SimTypePointer(SimTypePointer(SimStruct({"dwWinError": SimTypeInt(signed=False, label="UInt32"), "type": SimStruct({"eapType": SimStruct({"type": SimTypeChar(label="Byte"), "dwVendorId": SimTypeInt(signed=False, label="UInt32"), "dwVendorType": SimTypeInt(signed=False, label="UInt32")}, name="EAP_TYPE", pack=False, align=None), "dwAuthorId": SimTypeInt(signed=False, label="UInt32")}, name="EAP_METHOD_TYPE", pack=False, align=None), "dwReasonCode": SimTypeInt(signed=False, label="UInt32"), "rootCauseGuid": SimTypeBottom(label="Guid"), "repairGuid": SimTypeBottom(label="Guid"), "helpLinkGuid": SimTypeBottom(label="Guid"), "pRootCauseString": SimTypePointer(SimTypeChar(label="Char"), offset=0), "pRepairString": SimTypePointer(SimTypeChar(label="Char"), offset=0)}, name="EAP_ERROR", pack=False, align=None), offset=0), offset=0)], SimTypeInt(signed=False, label="UInt32"), arg_names=["pConnectionId", "ppEapError"]),
        # 
        'EapHostPeerFreeEapError': SimTypeFunction([SimTypePointer(SimStruct({"dwWinError": SimTypeInt(signed=False, label="UInt32"), "type": SimStruct({"eapType": SimStruct({"type": SimTypeChar(label="Byte"), "dwVendorId": SimTypeInt(signed=False, label="UInt32"), "dwVendorType": SimTypeInt(signed=False, label="UInt32")}, name="EAP_TYPE", pack=False, align=None), "dwAuthorId": SimTypeInt(signed=False, label="UInt32")}, name="EAP_METHOD_TYPE", pack=False, align=None), "dwReasonCode": SimTypeInt(signed=False, label="UInt32"), "rootCauseGuid": SimTypeBottom(label="Guid"), "repairGuid": SimTypeBottom(label="Guid"), "helpLinkGuid": SimTypeBottom(label="Guid"), "pRootCauseString": SimTypePointer(SimTypeChar(label="Char"), offset=0), "pRepairString": SimTypePointer(SimTypeChar(label="Char"), offset=0)}, name="EAP_ERROR", pack=False, align=None), offset=0)], SimTypeBottom(label="Void"), arg_names=["pEapError"]),
        # 
        'EapHostPeerGetIdentity': SimTypeFunction([SimTypeInt(signed=False, label="UInt32"), SimTypeInt(signed=False, label="UInt32"), SimStruct({"eapType": SimStruct({"type": SimTypeChar(label="Byte"), "dwVendorId": SimTypeInt(signed=False, label="UInt32"), "dwVendorType": SimTypeInt(signed=False, label="UInt32")}, name="EAP_TYPE", pack=False, align=None), "dwAuthorId": SimTypeInt(signed=False, label="UInt32")}, name="EAP_METHOD_TYPE", pack=False, align=None), SimTypeInt(signed=False, label="UInt32"), SimTypePointer(SimTypeChar(label="Byte"), label="LPArray", offset=0), SimTypeInt(signed=False, label="UInt32"), SimTypePointer(SimTypeChar(label="Byte"), label="LPArray", offset=0), SimTypePointer(SimTypeInt(signed=True, label="Int"), label="IntPtr", offset=0), SimTypePointer(SimTypeInt(signed=True, label="Int32"), offset=0), SimTypePointer(SimTypeInt(signed=False, label="UInt32"), offset=0), SimTypePointer(SimTypePointer(SimTypeChar(label="Byte"), offset=0), offset=0), SimTypePointer(SimTypePointer(SimTypeChar(label="Char"), offset=0), offset=0), SimTypePointer(SimTypePointer(SimStruct({"dwWinError": SimTypeInt(signed=False, label="UInt32"), "type": SimStruct({"eapType": SimStruct({"type": SimTypeChar(label="Byte"), "dwVendorId": SimTypeInt(signed=False, label="UInt32"), "dwVendorType": SimTypeInt(signed=False, label="UInt32")}, name="EAP_TYPE", pack=False, align=None), "dwAuthorId": SimTypeInt(signed=False, label="UInt32")}, name="EAP_METHOD_TYPE", pack=False, align=None), "dwReasonCode": SimTypeInt(signed=False, label="UInt32"), "rootCauseGuid": SimTypeBottom(label="Guid"), "repairGuid": SimTypeBottom(label="Guid"), "helpLinkGuid": SimTypeBottom(label="Guid"), "pRootCauseString": SimTypePointer(SimTypeChar(label="Char"), offset=0), "pRepairString": SimTypePointer(SimTypeChar(label="Char"), offset=0)}, name="EAP_ERROR", pack=False, align=None), offset=0), offset=0), SimTypePointer(SimTypePointer(SimTypeChar(label="Byte"), offset=0), offset=0)], SimTypeInt(signed=False, label="UInt32"), arg_names=["dwVersion", "dwFlags", "eapMethodType", "dwSizeofConnectionData", "pConnectionData", "dwSizeofUserData", "pUserData", "hTokenImpersonateUser", "pfInvokeUI", "pdwSizeOfUserDataOut", "ppUserDataOut", "ppwszIdentity", "ppEapError", "ppvReserved"]),
        # 
        'EapHostPeerGetEncryptedPassword': SimTypeFunction([SimTypeInt(signed=False, label="UInt32"), SimTypePointer(SimTypeChar(label="Char"), offset=0), SimTypePointer(SimTypePointer(SimTypeChar(label="Char"), offset=0), offset=0)], SimTypeInt(signed=False, label="UInt32"), arg_names=["dwSizeofPassword", "szPassword", "ppszEncPassword"]),
        # 
        'EapHostPeerFreeRuntimeMemory': SimTypeFunction([SimTypePointer(SimTypeChar(label="Byte"), offset=0)], SimTypeBottom(label="Void"), arg_names=["pData"]),
    }

lib.set_prototypes(prototypes)
