Complete disaster-recovery snapshot: engine/game source, game data assets, VC6 toolchain + DX SDKs, build outputs, deployed game, and _UNUSED archive. Large binaries in Git LFS; text preserved byte-for-byte (core.autocrlf=false, no eol attributes). See RECOVERY.md for the one-clone rebuild procedure.
191 lines
7.5 KiB
C++
191 lines
7.5 KiB
C++
/********************************************************************/
|
|
/** Copyright(c) 1997 Microsoft Corporation. **/
|
|
/********************************************************************/
|
|
|
|
//***
|
|
//
|
|
// Filename: RASAUTH.H
|
|
//
|
|
// Description: Contains definitions to allow for third parties to plug in
|
|
// back-end authenticaion modules into Remote Access Service.
|
|
//
|
|
#ifndef _RASAUTH_
|
|
#define _RASAUTH_
|
|
|
|
#ifdef __cplusplus
|
|
extern "C" {
|
|
#endif
|
|
|
|
typedef enum _RAS_AUTH_ATTRIBUTE_TYPE_
|
|
{
|
|
raatMinimum = 0, // Undefined
|
|
raatUserName, // Value field is a Pointer
|
|
raatUserPassword, // Value field is a Pointer
|
|
raatMD5CHAPPassword, // Value field is a Pointer
|
|
raatNASIPAddress, // Value field is a 32 bit integral value
|
|
raatNASPort, // Value field is a 32 bit integral value
|
|
raatServiceType, // Value field is a 32 bit integral value
|
|
raatFramedProtocol, // Value field is a 32 bit integral value
|
|
raatFramedIPAddress, // Value field is a 32 bit integral value
|
|
raatFramedIPNetmask, // Value field is a 32 bit integral value
|
|
raatFramedRouting, // Value field is a 32 bit integral value
|
|
raatFilterId, // Value field is a Pointer
|
|
raatFramedMTU, // Value field is a 32 bit integral value
|
|
raatFramedCompression, // Value field is a 32 bit integral value
|
|
raatLoginIPHost, // Value field is a 32 bit integral value
|
|
raatLoginService, // Value field is a 32 bit integral value
|
|
raatLoginTCPPort, // Value field is a 32 bit integral value
|
|
raatUnassigned1, // Undefined
|
|
raatReplyMessage, // Value field is a Pointer
|
|
raatCallbackNumber, // Value field is a Pointer
|
|
raatCallbackId, // Value field is a Pointer
|
|
raatUnassigned2, // Undefined
|
|
raatFramedRoute, // Value field is a Pointer
|
|
raatFramedIPXNetwork, // Value field is a 32 bit integral value
|
|
raatState, // Value field is a Pointer
|
|
raatClass, // Value field is a Pointer
|
|
raatVendorSpecific, // Value field is a Pointer
|
|
raatSessionTimeout, // Value field is a 32 bit integral value
|
|
raatIdleTimeout, // Value field is a 32 bit integral value
|
|
raatTerminationAction, // Value field is a 32 bit integral value
|
|
raatCalledStationId, // Value field is a Pointer
|
|
raatCallingStationId, // Value field is a Pointer
|
|
raatNASIdentifier, // Value field is a Pointer
|
|
raatProxyState, // Value field is a Pointer
|
|
raatLoginLATService, // Value field is a Pointer
|
|
raatLoginLATNode, // Value field is a Pointer
|
|
raatLoginLATGroup, // Value field is a Pointer
|
|
raatFramedAppleTalkLink, // Value field is a 32 bit integral value
|
|
raatFramedAppleTalkNetwork, // Value field is a 32 bit integral value
|
|
raatFramedAppleTalkZone, // Value field is a Pointer
|
|
raatAcctStatusType, // Value field is a 32 bit integral value
|
|
raatAcctDelayType, // Value field is a 32 bit integral value
|
|
raatAcctInputOctets, // Value field is a 32 bit integral value
|
|
raatAcctOutputOctets, // Value field is a 32 bit integral value
|
|
raatAcctSessionId, // Value field is a Pointer
|
|
raatAcctAuthentic, // Value field is a 32 bit integral value
|
|
raatAcctSessionTime, // Value field is a 32 bit integral value
|
|
raatAcctInputPackets, // Value field is a 32 bit integral value
|
|
raatAcctOutputPackets, // Value field is a 32 bit integral value
|
|
raatAcctTerminateCause, // Value field is a 32 bit integral value
|
|
raatAcctMultiSessionId, // Value field is a Pointer
|
|
raatAcctLinkCount, // Value field is a 32 bit integral value
|
|
raatMD5CHAPChallenge = 60, // Value field is a Pointer
|
|
raatNASPortType, // Value field is a 32 bit integral value
|
|
raatPortLimit, // Value field is a 32 bit integral value
|
|
raatLoginLATPort, // Value field is a Pointer
|
|
raatPrompt, // Value field is a 32 bit integral value
|
|
raatConnectInfo, // Value field is a Pointer
|
|
raatSignature, // Value field is a Pointer
|
|
raatEAPMessage, // Value field is a Pointer
|
|
raatConfigurationToken, // Value field is a Pointer
|
|
raatPasswordRetry, // Value field is a 32 bit integral value
|
|
raatARAPPassword, // Value field is a Pointer
|
|
raatARAPFeatures, // Value field is a Pointer
|
|
raatARAPZoneAccess, // Value field is a 32 bit integral value
|
|
raatARAPSecurity, // Value field is a 32 bit integral value
|
|
raatARAPSecurityData, // Value field is a Pointer
|
|
raatReserved = (0xFFFFFFFF) // Undefined
|
|
|
|
}RAS_AUTH_ATTRIBUTE_TYPE;
|
|
|
|
//
|
|
// Value is set to the 32 bit integral value or a pointer to data.
|
|
// 32 bit integral values should be in host format, not network format.
|
|
// Length for a 32 bit integral value can be 1, 2 or 4. The array of
|
|
// attributes must be terminated with an attribute of type raatMinimum.
|
|
//
|
|
|
|
typedef struct _RAS_AUTH_ATTRIBUTE
|
|
{
|
|
RAS_AUTH_ATTRIBUTE_TYPE raaType;
|
|
DWORD dwLength;
|
|
PVOID Value;
|
|
|
|
}RAS_AUTH_ATTRIBUTE, *PRAS_AUTH_ATTRIBUTE;
|
|
|
|
//
|
|
// The following APIs (except for RasStartAccounting and RasStopAccounting)
|
|
// must be exported by the back-end authentication DLL
|
|
//
|
|
|
|
//
|
|
// Called from setup application to allow backend package to bring up UI to
|
|
// configure itself.
|
|
//
|
|
|
|
VOID APIENTRY
|
|
RasAuthSetup(
|
|
VOID
|
|
);
|
|
|
|
DWORD APIENTRY
|
|
RasAuthConfigChangeNotification(
|
|
VOID
|
|
);
|
|
|
|
//
|
|
// Called once before any other calls are made.
|
|
//
|
|
|
|
DWORD APIENTRY
|
|
RasAuthInitialize(
|
|
VOID
|
|
);
|
|
|
|
//
|
|
// Called once to deallocate resources etc. No more calls will be made before
|
|
// calling RasAuthInitialize again
|
|
//
|
|
|
|
DWORD APIENTRY
|
|
RasAuthTerminate(
|
|
VOID
|
|
);
|
|
|
|
//
|
|
// Called once per multilink connection, not per link.
|
|
//
|
|
|
|
DWORD APIENTRY
|
|
RasStartAccounting(
|
|
IN RAS_AUTH_ATTRIBUTE * pInAttributes,
|
|
OUT PRAS_AUTH_ATTRIBUTE * ppOutAttributes
|
|
);
|
|
|
|
//
|
|
// Called once per multilink connection, not per link.
|
|
//
|
|
|
|
DWORD APIENTRY
|
|
RasStopAccounting(
|
|
IN RAS_AUTH_ATTRIBUTE * pInAttributes,
|
|
OUT PRAS_AUTH_ATTRIBUTE * ppOutAttributes
|
|
);
|
|
|
|
//
|
|
// Called to authenticate a dialed in user.
|
|
//
|
|
|
|
DWORD APIENTRY
|
|
RasAuthenticateUser(
|
|
IN RAS_AUTH_ATTRIBUTE * pInAttributes,
|
|
OUT PRAS_AUTH_ATTRIBUTE * ppOutAttributes,
|
|
OUT DWORD * lpdwResultCode
|
|
);
|
|
|
|
//
|
|
// Called to free attributes allocated by the back-end module
|
|
//
|
|
|
|
DWORD APIENTRY
|
|
RasFreeAttributes(
|
|
IN RAS_AUTH_ATTRIBUTE * pAttributes
|
|
);
|
|
|
|
#ifdef __cplusplus
|
|
}
|
|
#endif
|
|
|
|
#endif
|