123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202 |
- /**
- * This file is part of the mingw-w64 runtime package.
- * No warranty is given; refer to the file DISCLAIMER within this package.
- */
- #include <winapifamily.h>
- #ifndef _AUTHIF_H_
- #define _AUTHIF_H_
- #if WINAPI_FAMILY_PARTITION (WINAPI_PARTITION_DESKTOP)
- typedef enum _RADIUS_ATTRIBUTE_TYPE {
- ratMinimum = 0,
- ratUserName = 1,
- ratUserPassword = 2,
- ratCHAPPassword = 3,
- ratNASIPAddress = 4,
- ratNASPort = 5,
- ratServiceType = 6,
- ratFramedProtocol = 7,
- ratFramedIPAddress = 8,
- ratFramedIPNetmask = 9,
- ratFramedRouting = 10,
- ratFilterId = 11,
- ratFramedMTU = 12,
- ratFramedCompression = 13,
- ratLoginIPHost = 14,
- ratLoginService = 15,
- ratLoginPort = 16,
- ratReplyMessage = 18,
- ratCallbackNumber = 19,
- ratCallbackId = 20,
- ratFramedRoute = 22,
- ratFramedIPXNetwork = 23,
- ratState = 24,
- ratClass = 25,
- ratVendorSpecific = 26,
- ratSessionTimeout = 27,
- ratIdleTimeout = 28,
- ratTerminationAction = 29,
- ratCalledStationId = 30,
- ratCallingStationId = 31,
- ratNASIdentifier = 32,
- ratProxyState = 33,
- ratLoginLATService = 34,
- ratLoginLATNode = 35,
- ratLoginLATGroup = 36,
- ratFramedAppleTalkLink = 37,
- ratFramedAppleTalkNetwork = 38,
- ratFramedAppleTalkZone = 39,
- ratAcctStatusType = 40,
- ratAcctDelayTime = 41,
- ratAcctInputOctets = 42,
- ratAcctOutputOctets = 43,
- ratAcctSessionId = 44,
- ratAcctAuthentic = 45,
- ratAcctSessionTime = 46,
- ratAcctInputPackets = 47,
- ratAcctOutputPackets = 48,
- ratAcctTerminationCause = 49,
- ratCHAPChallenge = 60,
- ratNASPortType = 61,
- ratPortLimit = 62,
- ratTunnelType = 64,
- ratMediumType = 65,
- ratTunnelPassword = 69,
- ratTunnelPrivateGroupID = 81,
- ratNASIPv6Address = 95,
- ratFramedInterfaceId,
- ratFramedIPv6Prefix,
- ratLoginIPv6Host,
- ratFramedIPv6Route,
- ratFramedIPv6Pool,
- ratCode = 262,
- ratIdentifier = 263,
- ratAuthenticator = 264,
- ratSrcIPAddress = 265,
- ratSrcPort = 266,
- ratProvider = 267,
- ratStrippedUserName = 268,
- ratFQUserName = 269,
- ratPolicyName = 270,
- ratUniqueId = 271,
- ratExtensionState = 272,
- ratEAPTLV = 273,
- ratRejectReasonCode = 274,
- ratCRPPolicyName = 275,
- ratProviderName = 276,
- ratClearTextPassword = 277,
- ratSrcIPv6Address = 278
- } RADIUS_ATTRIBUTE_TYPE;
- typedef enum _RADIUS_CODE {
- rcUnknown = 0,
- rcAccessRequest = 1,
- rcAccessAccept = 2,
- rcAccessReject = 3,
- rcAccountingRequest = 4,
- rcAccountingResponse = 5,
- rcAccessChallenge = 11,
- rcDiscard = 256
- } RADIUS_CODE;
- typedef enum _RADIUS_AUTHENTICATION_PROVIDER {
- rapUnknown,
- rapUsersFile,
- rapProxy,
- rapWindowsNT,
- rapMCIS,
- rapODBC,
- rapNone
- } RADIUS_AUTHENTICATION_PROVIDER;
- typedef enum _RADIUS_REJECT_REASON_CODE {
- rrrcUndefined = 0,
- rrrcAccountUnknown = 1,
- rrrcAccountDisabled = 2,
- rrrcAccountExpired = 3,
- rrrcAuthenticationFailure = 4
- } RADIUS_REJECT_REASON_CODE;
- typedef enum _RADIUS_DATA_TYPE {
- rdtUnknown,
- rdtString,
- rdtAddress,
- rdtInteger,
- rdtTime,
- rdtIpv6Address
- } RADIUS_DATA_TYPE;
- typedef struct _RADIUS_ATTRIBUTE {
- DWORD dwAttrType;
- RADIUS_DATA_TYPE fDataType;
- DWORD cbDataLength;
- __C89_NAMELESS union {
- DWORD dwValue;
- CONST BYTE *lpValue;
- };
- } RADIUS_ATTRIBUTE,*PRADIUS_ATTRIBUTE;
- typedef struct _RADIUS_VSA_FORMAT {
- BYTE VendorId[4];
- BYTE VendorType;
- BYTE VendorLength;
- BYTE AttributeSpecific[1];
- } RADIUS_VSA_FORMAT;
- typedef enum _RADIUS_ACTION {
- raContinue,
- raReject,
- raAccept
- } RADIUS_ACTION,*PRADIUS_ACTION;
- #define RADIUS_EXTENSION_INIT "RadiusExtensionInit"
- #define RADIUS_EXTENSION_TERM "RadiusExtensionTerm"
- #define RADIUS_EXTENSION_PROCESS "RadiusExtensionProcess"
- #define RADIUS_EXTENSION_PROCESS_EX "RadiusExtensionProcessEx"
- #define RADIUS_EXTENSION_FREE_ATTRIBUTES "RadiusExtensionFreeAttributes"
- #define RADIUS_EXTENSION_PROCESS2 "RadiusExtensionProcess2"
- typedef DWORD (WINAPI *PRADIUS_EXTENSION_INIT) (VOID);
- typedef VOID (WINAPI *PRADIUS_EXTENSION_TERM) (VOID);
- typedef DWORD (WINAPI *PRADIUS_EXTENSION_PROCESS) (const RADIUS_ATTRIBUTE *pAttrs, PRADIUS_ACTION pfAction);
- typedef DWORD (WINAPI *PRADIUS_EXTENSION_PROCESS_EX) (const RADIUS_ATTRIBUTE *pInAttrs, PRADIUS_ATTRIBUTE *pOutAttrs, PRADIUS_ACTION pfAction);
- typedef VOID (WINAPI *PRADIUS_EXTENSION_FREE_ATTRIBUTES) (PRADIUS_ATTRIBUTE pAttrs);
- #define AUTHSRV_PARAMETERS_KEY_W L"System\\CurrentControlSet\\Services\\AuthSrv\\Parameters"
- #define AUTHSRV_EXTENSIONS_VALUE_W L"ExtensionDLLs"
- #define AUTHSRV_AUTHORIZATION_VALUE_W L"AuthorizationDLLs"
- #define RADIUS_EXTENSION_VERSION (1)
- typedef enum _RADIUS_EXTENSION_POINT {
- repAuthentication,
- repAuthorization
- } RADIUS_EXTENSION_POINT;
- typedef struct _RADIUS_ATTRIBUTE_ARRAY {
- DWORD cbSize;
- DWORD (WINAPI *Add) (struct _RADIUS_ATTRIBUTE_ARRAY *_This, const RADIUS_ATTRIBUTE *pAttr);
- const RADIUS_ATTRIBUTE *(WINAPI *AttributeAt) (const struct _RADIUS_ATTRIBUTE_ARRAY *_This, DWORD dwIndex);
- DWORD (WINAPI *GetSize) (const struct _RADIUS_ATTRIBUTE_ARRAY *_This);
- DWORD (WINAPI *InsertAt) (struct _RADIUS_ATTRIBUTE_ARRAY *_This, DWORD dwIndex, const RADIUS_ATTRIBUTE *pAttr);
- DWORD (WINAPI *RemoveAt) (struct _RADIUS_ATTRIBUTE_ARRAY *_This, DWORD dwIndex);
- DWORD (WINAPI *SetAt) (struct _RADIUS_ATTRIBUTE_ARRAY *_This, DWORD dwIndex, const RADIUS_ATTRIBUTE *pAttr);
- } RADIUS_ATTRIBUTE_ARRAY,*PRADIUS_ATTRIBUTE_ARRAY;
- typedef struct _RADIUS_EXTENSION_CONTROL_BLOCK {
- DWORD cbSize;
- DWORD dwVersion;
- RADIUS_EXTENSION_POINT repPoint;
- RADIUS_CODE rcRequestType;
- RADIUS_CODE rcResponseType;
- PRADIUS_ATTRIBUTE_ARRAY (WINAPI *GetRequest) (struct _RADIUS_EXTENSION_CONTROL_BLOCK *This);
- PRADIUS_ATTRIBUTE_ARRAY (WINAPI *GetResponse) (struct _RADIUS_EXTENSION_CONTROL_BLOCK *This, RADIUS_CODE rcResponseType);
- DWORD (WINAPI *SetResponseType) (struct _RADIUS_EXTENSION_CONTROL_BLOCK *This, RADIUS_CODE rcResponseType);
- } RADIUS_EXTENSION_CONTROL_BLOCK,*PRADIUS_EXTENSION_CONTROL_BLOCK;
- typedef DWORD (WINAPI *PRADIUS_EXTENSION_PROCESS_2) (PRADIUS_EXTENSION_CONTROL_BLOCK pECB);
- #endif
- #endif
|