EAP_AUTHENTICATOR_METHOD_ROUTINES structure (eapmethodauthenticatorapis.h)

Contains a set of function pointers to the EAPHost Authenticator Method APIs.

Syntax

typedef struct _EAP_AUTHENTICATOR_METHOD_ROUTINES {
  DWORD           dwSizeInBytes;
  EAP_METHOD_TYPE *pEapType;
  DWORD(EAP_METHOD_TYPE *pEapType,EAP_ERROR **ppEapError)          * )(EapMethodAuthenticatorInitialize;
  DWORD(ORD dwFlags,LPCWSTR pwszIdentity, const EapAttributes * const pAttributeArray,DWORD dwSizeofConnectionData, const BYTE * const pConnectionData,DWORD dwMaxSendPacketSize,EAP_SESSION_HANDLE *pSessionHandle,EAP_ERROR **ppEapError)          * )(DWEapMethodAuthenticatorBeginSession;
  DWORD(AP_SESSION_HANDLE sessionHandle,DWORD dwFlags, const WCHAR *pwszIdentity, const EapAttributes * const pAttributeArray,EAP_ERROR **ppEapError)          * )(EEapMethodAuthenticatorUpdateInnerMethodParams;
  DWORD(AP_SESSION_HANDLE sessionHandle,DWORD cbReceivePacket, const EapPacket * const pReceivePacket,EAP_METHOD_AUTHENTICATOR_RESPONSE_ACTION *pEapOutput,EAP_ERROR **ppEapError)          * )(EEapMethodAuthenticatorReceivePacket;
  DWORD(P_SESSION_HANDLE sessionHandle,BYTE bPacketId,DWORD *pcbSendPacket,EapPacket *pSendPacket,EAP_AUTHENTICATOR_SEND_TIMEOUT *pTimeout,EAP_ERROR **ppEapError)          * )(EAEapMethodAuthenticatorSendPacket;
  DWORD(EAP_SESSION_HANDLE sessionHandle,EapAttributes *pAttribs,EAP_ERROR **ppEapError)          * )(EapMethodAuthenticatorGetAttributes;
  DWORD(AP_SESSION_HANDLE sessionHandle, const EapAttributes * const pAttribs,EAP_METHOD_AUTHENTICATOR_RESPONSE_ACTION *pEapOutput,EAP_ERROR **ppEapError)          * )(EEapMethodAuthenticatorSetAttributes;
  DWORD(EAP_SESSION_HANDLE sessionHandle,EAP_METHOD_AUTHENTICATOR_RESULT *pResult,EAP_ERROR **ppEapError)          * )(EapMethodAuthenticatorGetResult;
  DWORD((EAP_SESSION_HANDLE sessionHandle,EAP_ERROR **ppEapError)          * )EapMethodAuthenticatorEndSession;
  DWORD(EAP_METHOD_TYPE *pEapType,EAP_ERROR **ppEapError)          * )(EapMethodAuthenticatorShutdown;
} EAP_AUTHENTICATOR_METHOD_ROUTINES, *PEAP_AUTHENTICATOR_METHOD_ROUTINES;

Members

dwSizeInBytes

The implementer defined structure version.

Note  Values for this field are not defined by Microsoft.
 

pEapType

A pointer to an EAP_METHOD_TYPE structure that contains the vendor information on the implementer of the APIs pointed to by this structure's members.

EapMethodAuthenticatorInitialize

Function pointer to EapMethodAuthenticatorInitialize.

pEapType

EAP_METHOD_TYPE enumeration value that specifies the type of EAP authentication to use for this session.

ppEapError

A pointer to the address of an EAP_ERROR structure that contains any errors raised by EAPHost during the execution of this function call. After consuming the error data, this memory must be freed by passing a pointer to the error data to EapPeerFreeErrorMemory.

EapMethodAuthenticatorBeginSession

Function pointer to EapMethodAuthenticatorBeginSession.

dwFlags

A combination of EAP flags that describe the EAP authentication session behavior.

pwszIdentity

Zero-terminated Unicode string that contains the identity of the user to authenticate.

pAttributeArray

A pointer to an EapAttributes array structure that specifies the EAP attributes of the entity to authenticate.

dwSizeOfConnectionData

Specifies the size, in bytes, of the connection data buffer provided in pConnectionData.

pConnectionData

A pointer to a byte buffer that contains the opaque configuration data BLOB.

dwMaxSendPacketSize

Specifies the maximum size, in bytes, of an EAP packet sent during the session.

pSessionHandle

Receives a pointer to an EAP_SESSION_HANDLE structure that contains the unique ID for the new EAP authentication session on server EAPHost.

ppEapError

A pointer to the address of an EAP_ERROR structure that contains any errors raised by EAPHost during the execution of this function call. After consuming the error data, this memory must be freed by passing a pointer to the error data to EapPeerFreeErrorMemory.

EapMethodAuthenticatorUpdateInnerMethodParams

Function pointer to EapMethodAuthenticatorUpdateInnerMethodParams.

sessionHandle

EAP_SESSION_HANDLE value that contains the specific handle for the EAP authentication session on the server EAPHost. This handle is obtained by a previous call to EapMethodAuthenticatorBeginSession

dwFlags

A combination of EAP flags that describe the EAP authentication session behavior.

pwszIdentity

Zero-terminated Unicode string that contains the updated identity of the user to authenticate.

pAttributeArray

A pointer to an EapAttributes array structure that specifies the updated EAP attributes of the entity to authenticate.

ppEapError

A pointer to the address of an EAP_ERROR structure that contains any errors raised during the execution of this function call. After consuming the error data, this memory must be freed by passing a pointer to the error data to EapMethodAuthenticatorFreeErrorMemory.

EapMethodAuthenticatorReceivePacket

Function pointer to EapMethodAuthenticatorReceivePacket.

sessionHandle

EAP_SESSION_HANDLE value that contains the specific handle for the EAP authentication session on the server EAPHost. This handle is obtained by a previous call to EapMethodAuthenticatorBeginSession

cbReceivePacket

The size, in bytes, of pReceivePacket.

pReceivePacket

A pointer to an EapPacket structure that contains an EAP authentication session packet received from the supplicant by the server EAPHost.

pEapOutput

Receives a pointer to an EAP_METHOD_AUTHENTICATOR_RESPONSE_ACTION enumeration value that indicates the next action the supplicant must take in the EAP authentication session.

ppEapError

A pointer to the address of an EAP_ERROR structure that contains any errors raised by EAPHost during the execution of this function call. After consuming the error data, this memory must be freed by passing a pointer to the error data to EapMethodAuthenticatorFreeErrorMemory.

EapMethodAuthenticatorSendPacket

Function pointer to EapMethodAuthenticatorSendPacket.

sessionHandle

EAP_SESSION_HANDLE value that contains the specific handle for the EAP authentication session on the server EAPHost. This handle is obtained by a previous call to EapMethodAuthenticatorBeginSession

bPacketId

Specifies a numeric ID value for the packet to send.

pcbSendPacket

Specifies the maximum size, in bytes, of the packet to send. On return, this parameter receives the size, in bytes, of the packet returned in pEapPacket.

pSendPacket

Receives a pointer to an EapPacket structure that contains the packet to send to the supplicant.

pTimeout

Receives a pointer to an EAP_AUTHENTICATOR_SEND_TIMEOUT value that specifies the timeout for the packet.

ppEapError

A pointer to the address of an EAP_ERROR structure that contains any errors raised during the execution of this function call. After consuming the error data, this memory must be freed by passing a pointer to the error data to EapMethodAuthenticatorFreeErrorMemory

EapMethodAuthenticatorGetAttributes

Function pointer to EapMethodAuthenticatorGetAttributes.

sessionHandle

EAP_SESSION_HANDLE value that contains the specific handle for the EAP authentication session on the server EAPHost. This handle is obtained by a previous call to EapMethodAuthenticatorBeginSession

pAttribs

Receives a pointer to an EapAttributes structure that contains an array of EAP authentication response attributes for the supplicant.

ppEapError

A pointer to the address of an EAP_ERROR structure that contains any errors raised during the execution of this function call. After consuming the error data, this memory must be freed by passing a pointer to the error data to EapMethodAuthenticatorFreeErrorMemory

EapMethodAuthenticatorSetAttributes

Function pointer to EapMethodAuthenticatorSetAttributes.

sessionHandle

EAP_SESSION_HANDLE value that contains the specific handle for the EAP authentication session on the server EAPHost. This handle is obtained by a previous call to EapMethodAuthenticatorBeginSession

pAttribs

Pointer to an EapAttributes structure that contains an array of new EAP authentication response attributes to set for the supplicant on EAPHost.

pEapOutput

Receives a pointer to an EAP_METHOD_AUTHENTICATOR_RESPONSE_ACTION enumeration value that specifies the suggested action the supplicant should take as a response to the updated attributes.

ppEapError

A pointer to the address of an EAP_ERROR structure that contains any errors raised during the execution of this function call. After consuming the error data, this memory must be freed by passing a pointer to the error data to EapMethodAuthenticatorFreeErrorMemory.

EapMethodAuthenticatorGetResult

Function pointer to EapMethodAuthenticatorGetResult.

sessionHandle

EAP_SESSION_HANDLE value that contains the specific handle for the EAP authentication session on the server EAPHost. This handle is obtained by a previous call to EapMethodAuthenticatorBeginSession

pResult

Receives a pointer to a EAP_METHOD_AUTHENTICATOR_RESULT structure that contains the authentication results.

ppEapError

A pointer to the address of an EAP_ERROR structure that contains any errors raised by EAPHost during the execution of this function call. After consuming the error data, this memory must be freed by passing a pointer to the error data to EapMethodAuthenticatorFreeErrorMemory.

EapMethodAuthenticatorEndSession

Function pointer to EapMethodAuthenticatorEndSession.

sessionHandle

EAP_SESSION_HANDLE value that contains the specific handle for the EAP authentication session to close on the server EAPHost. This handle is obtained by a previous call to EapMethodAuthenticatorBeginSession.

ppEapError

A pointer to the address of an EAP_ERROR structure that contains any errors raised by EAPHost during the execution of this function call. After consuming the error data, this memory must be freed by passing a pointer to the error data to EapMethodAuthenticatorFreeErrorMemory.

EapMethodAuthenticatorShutdown

Function pointer to EapMethodAuthenticatorShutdown.

pEapType

An EAP_METHOD_TYPE enumeration value that specifies the type of EAP authentication used in the session.

ppEapError

A pointer to the address of an EAP_ERROR structure that contains any errors raised during the execution of this function call. After consuming the error data, this memory must be freed by passing a pointer to the error data to EapMethodAuthenticatorFreeErrorMemory.

Remarks

Every EAP authenticator method DLL must have public implementations of the following APIs on it.

These APIs are called on an EAP authenticator method when an authenticator (server) EAPHost receives a specific corresponding remote procedure call from a peer (client) EAP method. Note that a complete one-to-one correspondence does not exist between EAP peer methods and EAP authenticator methods; the specific EAP authenticator method API calls must be made based on the requirements of your implementation of the EAP authenticator method API calls.

Requirements

Requirement Value
Minimum supported client Windows Vista [desktop apps only]
Minimum supported server Windows Server 2008 [desktop apps only]
Header eapmethodauthenticatorapis.h

See also

EAPHost Authenticator Method Structures

EapMethodAuthenticatorGetInfo