EapPeerGetIdentity function (eapmethodpeerapis.h)

Returns the user data and user identity after being called by EAPHost.

Syntax

DWORD EapPeerGetIdentity(
  [in]      DWORD      dwFlags,
  [in]      DWORD      dwSizeofConnectionData,
  [in]      const BYTE *pConnectionData,
  [in]      DWORD      dwSizeofUserData,
  [in]      const BYTE *pUserData,
  [in]      HANDLE     hTokenImpersonateUser,
  [out]     BOOL       *pfInvokeUI,
  [in, out] DWORD      *pdwSizeOfUserDataOut,
  [out]     BYTE       **ppUserDataOut,
  [out]     LPWSTR     *ppwszIdentity,
  [out]     EAP_ERROR  **ppEapError
);

Parameters

[in] dwFlags

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

[in] dwSizeofConnectionData

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

[in] pConnectionData

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

[in] dwSizeofUserData

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

[in] pUserData

A pointer to the user data specific to this authentication used to pre-populate the user data. When this API is called for the first time, or when a new authentication session starts, this parameter is NULL. Otherwise, set this parameter to the pUserData member of the structure pointed to by the ppResult parameter received by EapPeerGetResult.

[in] hTokenImpersonateUser

Specifies a handle to the impersonation token of the user being authenticated. This handle will be NULL when doing machine authentication. By using this handle an EAP method can impersonate the user for the purpose of obtaining user specific information such as user name, domain name and credentials.

[out] pfInvokeUI

Returns TRUE if the user identity and user data blob aren't returned successfully, and the method seeks to collect the information from the user through the user interface dialog.

[in, out] pdwSizeOfUserDataOut

Specifies the size, in bytes, of the ppUserDataOut buffer.

[out] ppUserDataOut

A pointer to a pointer to the returned user data. The data is passed to EapPeerBeginSession as input pUserData.

[out] ppwszIdentity

A pointer to the returned user identity. The pointer will be included in the identity response packet and returned to the server.

[out] ppEapError

A pointer to the 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

None

Remarks

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.

Requirements

Requirement Value
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

EapPeerInvokeIdentityUI