This module includes functions for UDP forward feature.

Typedefs

typedef void(* otUdpForwarder ) ( otMessage *aMessage, uint16_t aPeerPort, otIp6Address *aPeerAddr, uint16_t aSockPort, void *aContext)
This function pointer delivers the UDP packet to host and host should send the packet through its own network stack.

Functions

void otUdpForwardSetForwarder ( otInstance *aInstance, otUdpForwarder aForwarder, void *aContext)
Set UDP forward callback to deliver UDP packets to host.
void otUdpForwardReceive ( otInstance *aInstance, otMessage *aMessage, uint16_t aPeerPort, const otIp6Address *aPeerAddr, uint16_t aSockPort)
Handle a UDP packet received from host.
otUdpSocket * otUdpGetSockets ( otInstance *aInstance)
This function gets the existing UDP Sockets.

Detailed Description

This module includes functions for UDP forward feature.

The functions in this module are available when udp-forward feature ( OPENTHREAD_CONFIG_UDP_FORWARD_ENABLE ) is enabled.

Typedef Documentation

otUdpForwarder

typedef void(* otUdpForwarder) ( otMessage *aMessage, uint16_t aPeerPort, otIp6Address *aPeerAddr, uint16_t aSockPort, void *aContext)

This function pointer delivers the UDP packet to host and host should send the packet through its own network stack.

Parameters
[in] aMessage A pointer to the UDP Message.
[in] aPeerPort The destination UDP port.
[in] aPeerAddr A pointer to the destination IPv6 address.
[in] aSockPort The source UDP port.
[in] aContext A pointer to application-specific context.

Function Documentation

otUdpForwardReceive()

void otUdpForwardReceive ( otInstance * aInstance,
otMessage * aMessage,
uint16_t aPeerPort,
const otIp6Address * aPeerAddr,
uint16_t aSockPort
)

Handle a UDP packet received from host.

Parameters
[in] aInstance A pointer to an OpenThread instance.
[in] aMessage A pointer to the UDP Message.
[in] aPeerPort The source UDP port.
[in] aPeerAddr A pointer to the source address.
[in] aSockPort The destination UDP port.
Warning
No matter the call success or fail, the message is freed.

otUdpForwardSetForwarder()

void otUdpForwardSetForwarder ( otInstance * aInstance,
otUdpForwarder aForwarder,
void * aContext
)

Set UDP forward callback to deliver UDP packets to host.

Parameters
[in] aInstance A pointer to an OpenThread instance.
[in] aForwarder A pointer to a function called to forward UDP packet to host.
[in] aContext A pointer to application-specific context.

otUdpGetSockets()

otUdpSocket * otUdpGetSockets ( otInstance * aInstance )

This function gets the existing UDP Sockets.

Parameters
[in] aInstance A pointer to an OpenThread instance.
Returns
A pointer to the first UDP Socket.