EapHostPeerQueryUserBlobFromCredentialInputFields function (eaphostpeerconfigapis.h)

The EapHostPeerQueryUserBlobFromCredentialInputFields function obtains a credential BLOB that can be used to start authentication from user input received from the Single-Sign-On (SSO) UI.

Syntax

DWORD EapHostPeerQueryUserBlobFromCredentialInputFields(
  [in]      HANDLE                             hUserImpersonationToken,
  [in]      EAP_METHOD_TYPE                    eapMethodType,
  [in]      DWORD                              dwFlags,
  [in]      DWORD                              dwEapConnDataSize,
  [in]      const BYTE                         *pbEapConnData,
  [in]      const EAP_CONFIG_INPUT_FIELD_ARRAY *pEapConfigInputFieldArray,
  [in, out] DWORD                              *pdwUserBlobSize,
  [in, out] BYTE                               **ppbUserBlob,
  [out]     EAP_ERROR                          **ppEapError
);

Parameters

[in] hUserImpersonationToken

A handle to the user impersonation token to use in this session.

[in] eapMethodType

An EAP_METHOD_TYPE structure that specifies the type of EAP authentication to use for this session.

[in] dwFlags

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

[in] dwEapConnDataSize

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

[in] pbEapConnData

Connection data used for the EAP method.

[in] pEapConfigInputFieldArray

A pointer to an EAP_CONFIG_INPUT_FIELD_ARRAY structure the contains the UI input field data. The caller should free the inner pointers using the function EapHostPeerFreeMemory, starting at the innermost pointer.

[in, out] pdwUserBlobSize

A pointer to a DWORD that specifies the size, in bytes, of the buffer pointed to by ppbUserBlob. If this value is not set to zero, then a pointer to a buffer of the size specified in this parameter must be supplied to ppbUserBlob.

[in, out] ppbUserBlob

A pointer to the credential BLOB that can be used in authentication. Memory must be freed by calling EapHostPeerFreeMemory. If a non-null value is supplied for this parameter (meaning that an existing data BLOB is passed to it), the supplied data BLOB will be updated and returned in this parameter. If a non-NULL BLOB value is supplied, the LocalAlloc function should be used.

[out] ppEapError

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

Return value

None

Remarks

EapHostPeerQueryUserBlobFromCredentialInputFields supports SSO. This supplicant function, like EapHostPeerQueryCredentialInputFields, is used only in an SSO scenario.

After EapHostPeerQueryUserBlobFromCredentialInputFields, EAPHost calls EapHostPeerBeginSession. The supplicant uses the EAP_FLAG_PRE_LOGON flag in EapHostPeerBeginSession to indicate that EAPHost should provide SSO.

Requirements

Requirement Value
Minimum supported client Windows Vista [desktop apps only]
Minimum supported server Windows Server 2008 [desktop apps only]
Target Platform Windows
Header eaphostpeerconfigapis.h
Library Eappcfg.lib
DLL Eappcfg.dll

See also

EAPHost Supplicant Configuration Functions

SSO and PLAP