UDP Forward
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.
|
|
bool | otUdpIsPortInUse ( otInstance *aInstance, uint16_t port) |
Determines if the given UDP port is exclusively opened by OpenThread API.
|
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.
◆ otUdpIsPortInUse()
bool otUdpIsPortInUse | ( | otInstance * |
aInstance,
|
uint16_t |
port
|
||
) |
Determines if the given UDP port is exclusively opened by OpenThread API.
- Parameters
-
[in] aInstance
A pointer to an OpenThread instance. [in] port
UDP port number to verify.
- Return values
-
true
The port is being used exclusively by OpenThread. false
The port is not used by any of the OpenThread API or is shared (e.g. is Backbone socket).