Mercurial > games > semicongine
diff fuhtark_test/include/winapi/raseapif.h @ 1500:91c8c3b7cbf0
add: futhark tests for generating vulkan api
| author | sam <sam@basx.dev> |
|---|---|
| date | Wed, 26 Nov 2025 21:36:48 +0700 |
| parents | |
| children |
line wrap: on
line diff
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/fuhtark_test/include/winapi/raseapif.h Wed Nov 26 21:36:48 2025 +0700 @@ -0,0 +1,153 @@ +/** + * This file has no copyright assigned and is placed in the Public Domain. + * This file is part of the w64 mingw-runtime package. + * No warranty is given; refer to the file DISCLAIMER within this package. + */ +#ifndef _RASEAPIF_ +#define _RASEAPIF_ + +#ifdef __cplusplus +extern "C" { +#endif + +#define RAS_EAP_REGISTRY_LOCATION TEXT("System\\CurrentControlSet\\Services\\Rasman\\PPP\\EAP") + +#define RAS_EAP_VALUENAME_PATH TEXT("Path") +#define RAS_EAP_VALUENAME_CONFIGUI TEXT("ConfigUIPath") +#define RAS_EAP_VALUENAME_INTERACTIVEUI TEXT("InteractiveUIPath") +#define RAS_EAP_VALUENAME_IDENTITY TEXT("IdentityPath") +#define RAS_EAP_VALUENAME_FRIENDLY_NAME TEXT("FriendlyName") +#define RAS_EAP_VALUENAME_DEFAULT_DATA TEXT("ConfigData") +#define RAS_EAP_VALUENAME_REQUIRE_CONFIGUI TEXT("RequireConfigUI") +#define RAS_EAP_VALUENAME_ENCRYPTION TEXT("MPPEEncryptionSupported") +#define RAS_EAP_VALUENAME_INVOKE_NAMEDLG TEXT("InvokeUsernameDialog") +#define RAS_EAP_VALUENAME_INVOKE_PWDDLG TEXT("InvokePasswordDialog") +#define RAS_EAP_VALUENAME_CONFIG_CLSID TEXT("ConfigCLSID") +#define RAS_EAP_VALUENAME_STANDALONE_SUPPORTED TEXT("StandaloneSupported") +#define RAS_EAP_VALUENAME_ROLES_SUPPORTED TEXT("RolesSupported") +#define RAS_EAP_VALUENAME_PER_POLICY_CONFIG TEXT("PerPolicyConfig") + +#define RAS_EAP_ROLE_AUTHENTICATOR 0x00000001 +#define RAS_EAP_ROLE_AUTHENTICATEE 0x00000002 + +#define RAS_EAP_ROLE_EXCLUDE_IN_EAP 0x00000004 +#define RAS_EAP_ROLE_EXCLUDE_IN_PEAP 0x00000008 +#define RAS_EAP_ROLE_EXCLUDE_IN_VPN 0x00000010 + + typedef enum _RAS_AUTH_ATTRIBUTE_TYPE_ { + raatMinimum = 0,raatUserName,raatUserPassword,raatMD5CHAPPassword,raatNASIPAddress,raatNASPort,raatServiceType,raatFramedProtocol, + raatFramedIPAddress,raatFramedIPNetmask,raatFramedRouting = 10,raatFilterId,raatFramedMTU,raatFramedCompression,raatLoginIPHost, + raatLoginService,raatLoginTCPPort,raatUnassigned17,raatReplyMessage,raatCallbackNumber,raatCallbackId =20,raatUnassigned21, + raatFramedRoute,raatFramedIPXNetwork,raatState,raatClass,raatVendorSpecific,raatSessionTimeout,raatIdleTimeout,raatTerminationAction, + raatCalledStationId = 30,raatCallingStationId,raatNASIdentifier,raatProxyState,raatLoginLATService,raatLoginLATNode,raatLoginLATGroup, + raatFramedAppleTalkLink,raatFramedAppleTalkNetwork,raatFramedAppleTalkZone,raatAcctStatusType = 40,raatAcctDelayTime,raatAcctInputOctets, + raatAcctOutputOctets,raatAcctSessionId,raatAcctAuthentic,raatAcctSessionTime,raatAcctInputPackets,raatAcctOutputPackets,raatAcctTerminateCause, + raatAcctMultiSessionId = 50,raatAcctLinkCount,raatAcctEventTimeStamp = 55,raatMD5CHAPChallenge = 60,raatNASPortType,raatPortLimit,raatLoginLATPort, + raatTunnelType,raatTunnelMediumType,raatTunnelClientEndpoint,raatTunnelServerEndpoint,raatARAPPassword = 70,raatARAPFeatures,raatARAPZoneAccess, + raatARAPSecurity,raatARAPSecurityData,raatPasswordRetry,raatPrompt,raatConnectInfo,raatConfigurationToken,raatEAPMessage,raatSignature = 80, + raatARAPChallengeResponse = 84,raatAcctInterimInterval = 85,raatARAPGuestLogon = 8096,raatCertificateOID,raatEAPConfiguration, + raatPEAPEmbeddedEAPTypeId,raatPEAPFastRoamedSession,raatEAPTLV = 8102,raatReserved = 0xFFFFFFFF + } RAS_AUTH_ATTRIBUTE_TYPE; + +#define raatARAPChallenge 33 +#define raatARAPOldPassword 19 +#define raatARAPNewPassword 20 +#define raatARAPPasswordChangeReason 21 + + typedef struct _RAS_AUTH_ATTRIBUTE { + RAS_AUTH_ATTRIBUTE_TYPE raaType; + DWORD dwLength; + PVOID Value; + } RAS_AUTH_ATTRIBUTE,*PRAS_AUTH_ATTRIBUTE; + +#define EAPCODE_Request 1 +#define EAPCODE_Response 2 +#define EAPCODE_Success 3 +#define EAPCODE_Failure 4 + +#define MAXEAPCODE 4 + +#define RAS_EAP_FLAG_ROUTER 0x00000001 +#define RAS_EAP_FLAG_NON_INTERACTIVE 0x00000002 +#define RAS_EAP_FLAG_LOGON 0x00000004 +#define RAS_EAP_FLAG_PREVIEW 0x00000008 +#define RAS_EAP_FLAG_FIRST_LINK 0x00000010 +#define RAS_EAP_FLAG_MACHINE_AUTH 0x00000020 +#define RAS_EAP_FLAG_GUEST_ACCESS 0x00000040 +#define RAS_EAP_FLAG_8021X_AUTH 0x00000080 +#define RAS_EAP_FLAG_HOSTED_IN_PEAP 0x00000100 +#define RAS_EAP_FLAG_RESUME_FROM_HIBERNATE 0x00000200 +#define RAS_EAP_FLAG_PEAP_UPFRONT 0x00000400 +#define RAS_EAP_FLAG_ALTERNATIVE_USER_DB 0x00000800 + + typedef struct _PPP_EAP_PACKET { + BYTE Code; + BYTE Id; + BYTE Length[2]; + BYTE Data[1]; + } PPP_EAP_PACKET,*PPPP_EAP_PACKET; + +#define PPP_EAP_PACKET_HDR_LEN (sizeof(PPP_EAP_PACKET) - 1) + + typedef struct _PPP_EAP_INPUT { + DWORD dwSizeInBytes; + DWORD fFlags; + WINBOOL fAuthenticator; + WCHAR *pwszIdentity; + WCHAR *pwszPassword; + BYTE bInitialId; + RAS_AUTH_ATTRIBUTE *pUserAttributes; + WINBOOL fAuthenticationComplete; + DWORD dwAuthResultCode; + HANDLE hTokenImpersonateUser; + WINBOOL fSuccessPacketReceived; + WINBOOL fDataReceivedFromInteractiveUI; + PBYTE pDataFromInteractiveUI; + DWORD dwSizeOfDataFromInteractiveUI; + PBYTE pConnectionData; + DWORD dwSizeOfConnectionData; + PBYTE pUserData; + DWORD dwSizeOfUserData; + HANDLE hReserved; + } PPP_EAP_INPUT,*PPPP_EAP_INPUT; + + typedef enum _PPP_EAP_ACTION { + EAPACTION_NoAction,EAPACTION_Authenticate,EAPACTION_Done,EAPACTION_SendAndDone,EAPACTION_Send,EAPACTION_SendWithTimeout, + EAPACTION_SendWithTimeoutInteractive,EAPACTION_IndicateTLV,EAPACTION_IndicateIdentity + } PPP_EAP_ACTION; + + typedef struct _PPP_EAP_OUTPUT { + DWORD dwSizeInBytes; + PPP_EAP_ACTION Action; + DWORD dwAuthResultCode; + RAS_AUTH_ATTRIBUTE *pUserAttributes; + WINBOOL fInvokeInteractiveUI; + PBYTE pUIContextData; + DWORD dwSizeOfUIContextData; + WINBOOL fSaveConnectionData; + PBYTE pConnectionData; + DWORD dwSizeOfConnectionData; + WINBOOL fSaveUserData; + PBYTE pUserData; + DWORD dwSizeOfUserData; + } PPP_EAP_OUTPUT,*PPPP_EAP_OUTPUT; + + typedef struct _PPP_EAP_INFO { + DWORD dwSizeInBytes; + DWORD dwEapTypeId; + DWORD (WINAPI *RasEapInitialize)(WINBOOL fInitialize); + DWORD (WINAPI *RasEapBegin)(VOID **ppWorkBuffer,PPP_EAP_INPUT *pPppEapInput); + DWORD (WINAPI *RasEapEnd)(VOID *pWorkBuffer); + DWORD (WINAPI *RasEapMakeMessage)(VOID *pWorkBuf,PPP_EAP_PACKET *pReceivePacket,PPP_EAP_PACKET *pSendPacket,DWORD cbSendPacket,PPP_EAP_OUTPUT *pEapOutput,PPP_EAP_INPUT *pEapInput); + } PPP_EAP_INFO,*PPPP_EAP_INFO; + + DWORD WINAPI RasEapGetInfo(DWORD dwEapTypeId,PPP_EAP_INFO *pEapInfo); + DWORD WINAPI RasEapFreeMemory(BYTE *pMemory); + DWORD WINAPI RasEapInvokeInteractiveUI(DWORD dwEapTypeId,HWND hwndParent,BYTE *pUIContextData,DWORD dwSizeOfUIContextData,BYTE **ppDataFromInteractiveUI,DWORD *pdwSizeOfDataFromInteractiveUI); + DWORD WINAPI RasEapInvokeConfigUI(DWORD dwEapTypeId,HWND hwndParent,DWORD dwFlags,BYTE *pConnectionDataIn,DWORD dwSizeOfConnectionDataIn,BYTE **ppConnectionDataOut,DWORD *pdwSizeOfConnectionDataOut); + DWORD WINAPI RasEapGetIdentity(DWORD dwEapTypeId,HWND hwndParent,DWORD dwFlags,const WCHAR *pwszPhonebook,const WCHAR *pwszEntry,BYTE *pConnectionDataIn,DWORD dwSizeOfConnectionDataIn,BYTE *pUserDataIn,DWORD dwSizeOfUserDataIn,BYTE **ppUserDataOut,DWORD *pdwSizeOfUserDataOut,WCHAR **ppwszIdentity); + +#ifdef __cplusplus +} +#endif +#endif
