Important:
This is retired content. This content is outdated and is no longer being maintained. It is provided as a courtesy for individuals who are still using these technologies. This content may contain URLs that were valid when originally published, but now link to sites or pages that no longer exist.
A version of this page is also available for
4/8/2010

This function is the framework within which incoming and outgoing EAP packets, time outs, and other events such as authentication completion are processed for an EAP. RAS calls the RasEapMakeMessagefunction every time there is an incoming or outgoing packet.

Syntax

DWORD ( *RasEapMakeMessage ) (
  VOID* 
pWorkBuf, 
  PPP_EAP_PACKET* 
pReceivePacket, 
  PPP_EAP_PACKET* 
pSendPacket, 
  DWORD 
cbSendPacket, 
  PPP_EAP_OUTPUT* 
pEapOutput, 
  PPP_EAP_INPUT* 
pEapInput
);

Parameters

pWorkBuf

[in] Pointer to the work buffer. The authentication protocol provides RAS with a pointer to this buffer through the RasEapBeginfunction.

pReceivePacket

[in] Pointer to a PPP_EAP_PACKETstructure that contains a received packet. A pReceivePacketvalue of NULL indicates either that RAS is initiating the dialog with the authentication protocol, or that a time out has occurred and the authentication protocol should resend the last packet. The authentication protocol must determine, based on context, which of these two cases is true.

pSendPacket

[out] Pointer to a PPP_EAP_PACKETstructure. The authentication protocol can use this structure to specify a packet to send.

cbSendPacket

[in] Specifies the size, in bytes, of the buffer pointed to by the pSendPacketparameter.

pEapOutput

[out] Pointer to a PPP_EAP_PACKETstructure.

pEapInput

[in] Pointer to a PPP_EAP_INPUTstructure. This parameter may be NULL.

Return Value

If the function call succeeds, the return value is NO_ERROR.

If the function call fails, it returns an appropriate error code from Winerror.h, Raserror.h, or Mprerror.h. Any error except for ERROR_PPP_INVALID_PACKET, terminates the authentication session. For more information on the ERROR_PPP_INVALID_PACKET return code, see EAP Implementation Details.

Remarks

The RasEapMakeMessagefunction is not part of the RRAS application programming interface (API); it is implemented in the EAP dynamic-link library (DLL). When RAS calls the RasEapGetInfofunction, it receives a PPP_EAP_INFOstructure for the authentication protocol. This structure contains a pointer to the RasEapMakeMessagefunction.

RAS allocates the buffers pointed to by the pReceivePacket, pSendPacket, pEapOutput, and pEapInputparameters. The authentication protocol does not allocate any of these buffers.

Note:
This function is called by the EAP module, not by the application. Therefore, no link library is exposed. For more information, see EAP Implementation Details.

Requirements

Header raseapif.h
Windows Embedded CE Windows CE .NET 4.0 and later
Windows Mobile Windows Mobile Version 5.0 and later
Note This function is called by the EAP module, not by the application. Therefore, no link library is exposed. For more information see EAP Implementation Details.

See Also