EapPeerBeginSession function (eapmethodpeerapis.h)

Starts an EAP authentication session on the peer EAPHost using the EAP method.


DWORD EapPeerBeginSession(
  [in]  DWORD                       dwFlags,
  [in]  const EapAttributes * const pAttributeArray,
  [in]  HANDLE                      hTokenImpersonateUser,
  [in]  DWORD                       dwSizeofConnectionData,
  [in]  BYTE                        *pConnectionData,
  [in]  DWORD                       dwSizeofUserData,
  [in]  BYTE                        *pUserData,
  [in]  DWORD                       dwMaxSendPacketSize,
  [out] EAP_SESSION_HANDLE          *pSessionHandle,
  [out] EAP_ERROR                   **ppEapError


[in] dwFlags

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

[in] pAttributeArray

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

[in] hTokenImpersonateUser

Specifies a handle to the user impersonation token to use in this session.

[in] dwSizeofConnectionData

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

[in] pConnectionData

Connection data specific to this method used to decide the user data returned from this API, where the user data depends on certain connection data configuration. When this parameter is NULL the method implementation should use default values for connection.

[in] dwSizeofUserData

Specifies the size in bytes of the user data buffer provided in pUserData.

[in] pUserData

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

[in] dwMaxSendPacketSize

Specifies the maximum size in bytes of an EAP packet sent during the session. If the method needs to send a packet larger than the maximum size, the method must accommodate fragmentation and reassembly.

[out] pSessionHandle

A pointer to an EAP_SESSION_HANDLE structure that contains the unique handle for this EAP authentication session on the EAPHost server.

[out] ppEapError

A pointer to a pointer to 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 calling EapPeerFreeErrorMemory.

Return value



This call is performed by a peer-based EAPHost using a function pointer to this API. This API must be implemented on the EAP method loaded by EAPHost, and must strictly conform to the syntax and parameter types specified in the documentation.


Minimum supported client Windows Vista [desktop apps only]
Minimum supported server Windows Server 2008 [desktop apps only]
Target Platform Windows
Header eapmethodpeerapis.h

See also

EAPHost Peer Method Run-Time Functions