RasEapMakeMessage (Compact 2013)

3/26/2014

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.

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 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 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, stops the authentication session.

Remarks

The RasEapMakeMessage function is not part of the RRAS API. It is implemented in the EAP 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.

Note

This function is called by the EAP module, not by the application. Therefore, no link library is exposed.

Requirements

Header

raseapif.h

See Also

Reference

EAP Functions
RasEapGetInfo
PPP_EAP_INFO
PPP_EAP_INPUT
PPP_EAP_OUTPUT
PPP_EAP_PACKET