EAP_AUTHENTICATOR_METHOD_ROUTINES structure

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           (APIENTRY *EapMethodAuthenticatorInitialize)(
      _In_ EAP_METHOD_TYPE pEapType, 
      _Out_ EAP_ERROR **ppEapError);
  DWORD           (APIENTRY *EapMethodAuthenticatorBeginSession)(
      _In_ DWORD dwFlags, 
      _In_ LPCWSTR pwszIdentity, 
      _In_ const EapAttributes *pAttributeArray, 
      _In_ DWORD dwSizeOfConnectionData, 
      _In_ const BYTE *pConnectionData, 
      _In_ DWORD dwMaxSendPacketSize, 
      _Out_ EAP_SESSION_HANDLE *pSessionHandle, 
      _Out_ EAP_ERROR **ppEapError);
  DWORD           (APIENTRY *EapMethodAuthenticatorUpdateInnerMethodParams)(
      _In_ EAP_SESSION_HANDLE sessionHandle, 
      _In_ DWORD dwFlags, 
      _In_ const WCHAR *pwszIdentity, 
      _In_ const EapAttributes *pAttributeArray, 
      _Out_ EAP_ERROR **ppEapError);
  DWORD           (APIENTRY *EapMethodAuthenticatorReceivePacket)(
      _In_ EAP_SESSION_HANDLE sessionHandle, 
      _In_ DWORD cbReceivePacket, 
      _In_ const EapPacket *pReceivePacket, 
      _Out_ EAP_METHOD_AUTHENTICATOR_RESPONSE_ACTION *pEapOutput, 
      _Out_ EAP_ERROR **ppEapError);
  DWORD           (APIENTRY *EapMethodAuthenticatorSendPacket)(
      _In_ EAP_SESSION_HANDLE sessionHandle, 
      _In_ BYTE bPacketId, 
      _Out_ DWORD *pcbSendPacket, 
      _Out_ EapPacket *pSendPacket, 
      _Out_ EAP_AUTHENTICATOR_SEND_TIMEOUT *pTimeout, 
      _Out_ EAP_ERROR **ppEapError);
  DWORD           (APIENTRY *EapMethodAuthenticatorGetAttributes)(
      _In_ EAP_SESSION_HANDLE sessionHandle, 
      _Out_ EapAttributes *pAttribs, 
      _Out_ EAP_ERROR **ppEapError);
  DWORD           (APIENTRY *EapMethodAuthenticatorSetAttributes)(
      _In_ EAP_SESSION_HANDLE sessionHandle, 
      _In_ const EapAttributes *pAttribs, 
      _Out_ EAP_METHOD_AUTHENTICATOR_RESPONSE_ACTION *pEapOutput, 
      _Out_ EAP_ERROR **ppEapError);
  DWORD           (APIENTRY *EapMethodAuthenticatorGetResult)(
      _In_ EAP_SESSION_HANDLE sessionHandle, 
      _Out_ EAP_METHOD_AUTHENTICATOR_RESULT *pResult, 
      _Out_ EAP_ERROR **ppEapError);
  DWORD           (APIENTRY *EapMethodAuthenticatorEndSession)(
      _In_ EAP_SESSION_HANDLE sessionHandle, 
      _Out_ EAP_ERROR **ppEapError);
  DWORD           (APIENTRY *EapMethodAuthenticatorShutdown)(
      _In_ EAP_METHOD_TYPE pEapType, 
      _Out_ EAP_ERROR **ppEapError);
} EAP_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 implementor 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

Minimum supported client

Windows Vista [desktop apps only]

Minimum supported server

Windows Server 2008 [desktop apps only]

Header

Eapmethodauthenticatorapis.h

See also

EapMethodAuthenticatorGetInfo
EAPHost Authenticator Method Structures

 

 

Community Additions

ADD
Show:
© 2014 Microsoft