Share via


RasEapMakeMessage

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 RasEapMakeMessage function every time there is an incoming or outgoing packet.

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 RasEapBegin function.
  • pReceivePacket
    [in] Pointer to a PPP_EAP_PACKET structure that contains a received packet. A pReceivePacket value 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_PACKET structure. 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 pSendPacket parameter.
  • pEapOutput
    [out] Pointer to a PPP_EAP_PACKET structure.
  • pEapInput
    [in] Pointer to a PPP_EAP_INPUT structure. This parameter may be NULL.

Return Values

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 RasEapMakeMessage function is not part of the RRAS application programming interface (API); it is implemented in the EAP dynamic-link library (DLL). When RAS calls the RasEapGetInfo function, it receives a PPP_EAP_INFO structure for the authentication protocol. This structure contains a pointer to the RasEapMakeMessage function.

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

Requirements

OS Versions: Windows CE .NET 4.0 and later.
Header: Raseapif.h.
Link Library: 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

RasEapGetInfo | PPP_EAP_INFO | PPP_EAP_INPUT | PPP_EAP_OUTPUT | PPP_EAP_PACKET

 Last updated on Thursday, April 08, 2004

© 1992-2003 Microsoft Corporation. All rights reserved.