UDP
This module includes functions that control UDP communication.
Summary
Enumerations |
|
---|---|
otNetifIdentifier{
|
enum Defines the OpenThread network interface identifiers. |
Typedefs |
|
---|---|
otNetifIdentifier
|
typedefenum otNetifIdentifier
Defines the OpenThread network interface identifiers. |
otUdpHandler)(void *aContext, const otMessage *aMessage, const otMessageInfo *aMessageInfo)
|
typedefbool(*
This callback allows OpenThread to provide specific handlers for certain UDP messages. |
otUdpReceive)(void *aContext, otMessage *aMessage, const otMessageInfo *aMessageInfo)
|
typedefvoid(*
This callback allows OpenThread to inform the application of a received UDP message. |
otUdpReceiver
|
typedefstruct otUdpReceiver
Represents a UDP receiver. |
otUdpSocket
|
typedefstruct otUdpSocket
Represents a UDP socket. |
Functions |
|
---|---|
otUdpAddReceiver(otInstance *aInstance, otUdpReceiver *aUdpReceiver)
|
Adds a UDP receiver.
|
otUdpBind(otInstance *aInstance, otUdpSocket *aSocket, const otSockAddr *aSockName, otNetifIdentifier aNetif)
|
Bind a UDP/IPv6 socket.
|
otUdpClose(otInstance *aInstance, otUdpSocket *aSocket)
|
Close a UDP/IPv6 socket.
|
otUdpConnect(otInstance *aInstance, otUdpSocket *aSocket, const otSockAddr *aSockName)
|
Connect a UDP/IPv6 socket.
|
otUdpGetSockets(otInstance *aInstance)
|
Gets the head of linked list of UDP Sockets.
|
otUdpIsOpen(otInstance *aInstance, const otUdpSocket *aSocket)
|
bool
Check if a UDP socket is open.
|
otUdpNewMessage(otInstance *aInstance, const otMessageSettings *aSettings)
|
Allocate a new message buffer for sending a UDP message.
|
otUdpOpen(otInstance *aInstance, otUdpSocket *aSocket, otUdpReceive aCallback, void *aContext)
|
Open a UDP/IPv6 socket.
|
otUdpRemoveReceiver(otInstance *aInstance, otUdpReceiver *aUdpReceiver)
|
Removes a UDP receiver.
|
otUdpSend(otInstance *aInstance, otUdpSocket *aSocket, otMessage *aMessage, const otMessageInfo *aMessageInfo)
|
Send a UDP/IPv6 message.
|
otUdpSendDatagram(otInstance *aInstance, otMessage *aMessage, otMessageInfo *aMessageInfo)
|
Sends a UDP message without socket.
|
Structs |
|
---|---|
otUdpReceiver |
Represents a UDP receiver. |
otUdpSocket |
Represents a UDP socket. |
Enumerations
otNetifIdentifier
otNetifIdentifier
Defines the OpenThread network interface identifiers.
Typedefs
otNetifIdentifier
enum otNetifIdentifier otNetifIdentifier
Defines the OpenThread network interface identifiers.
otUdpHandler
bool(* otUdpHandler)(void *aContext, const otMessage *aMessage, const otMessageInfo *aMessageInfo)
This callback allows OpenThread to provide specific handlers for certain UDP messages.
Details | |||||
---|---|---|---|---|---|
Return Values |
|
otUdpReceive
void(* otUdpReceive)(void *aContext, otMessage *aMessage, const otMessageInfo *aMessageInfo)
This callback allows OpenThread to inform the application of a received UDP message.
Functions
otUdpAddReceiver
otError otUdpAddReceiver( otInstance *aInstance, otUdpReceiver *aUdpReceiver )
Adds a UDP receiver.
Details | |||||
---|---|---|---|---|---|
Parameters |
|
||||
Return Values |
|
otUdpBind
otError otUdpBind( otInstance *aInstance, otUdpSocket *aSocket, const otSockAddr *aSockName, otNetifIdentifier aNetif )
Bind a UDP/IPv6 socket.
Details | |||||||||
---|---|---|---|---|---|---|---|---|---|
Parameters |
|
||||||||
Return Values |
|
otUdpClose
otError otUdpClose( otInstance *aInstance, otUdpSocket *aSocket )
Close a UDP/IPv6 socket.
Details | |||||
---|---|---|---|---|---|
Parameters |
|
||||
Return Values |
|
otUdpConnect
otError otUdpConnect( otInstance *aInstance, otUdpSocket *aSocket, const otSockAddr *aSockName )
Connect a UDP/IPv6 socket.
Details | |||||||
---|---|---|---|---|---|---|---|
Parameters |
|
||||||
Return Values |
|
otUdpGetSockets
otUdpSocket * otUdpGetSockets( otInstance *aInstance )
Gets the head of linked list of UDP Sockets.
Details | |||
---|---|---|---|
Parameters |
|
||
Returns |
A pointer to the head of UDP Socket linked list.
|
otUdpIsOpen
bool otUdpIsOpen( otInstance *aInstance, const otUdpSocket *aSocket )
Check if a UDP socket is open.
Details | |||||
---|---|---|---|---|---|
Parameters |
|
||||
Returns |
Whether the UDP socket is open.
|
otUdpNewMessage
otMessage * otUdpNewMessage( otInstance *aInstance, const otMessageSettings *aSettings )
Allocate a new message buffer for sending a UDP message.
Details | |||||
---|---|---|---|---|---|
Parameters |
|
||||
Returns |
A pointer to the message buffer or NULL if no message buffers are available or parameters are invalid.
|
otMessageFree
otUdpOpen
otError otUdpOpen( otInstance *aInstance, otUdpSocket *aSocket, otUdpReceive aCallback, void *aContext )
Open a UDP/IPv6 socket.
Details | |||||||||
---|---|---|---|---|---|---|---|---|---|
Parameters |
|
||||||||
Return Values |
|
otUdpRemoveReceiver
otError otUdpRemoveReceiver( otInstance *aInstance, otUdpReceiver *aUdpReceiver )
Removes a UDP receiver.
Details | |||||
---|---|---|---|---|---|
Parameters |
|
||||
Return Values |
|
otUdpSend
otError otUdpSend( otInstance *aInstance, otUdpSocket *aSocket, otMessage *aMessage, const otMessageInfo *aMessageInfo )
Send a UDP/IPv6 message.
If the return value is OT_ERROR_NONE, OpenThread takes ownership of aMessage
, and the caller should no longer reference aMessage
. If the return value is not OT_ERROR_NONE, the caller retains ownership of aMessage
, including freeing aMessage
if the message buffer is no longer needed.
Details | |||||||||
---|---|---|---|---|---|---|---|---|---|
Parameters |
|
Details | |||||||
---|---|---|---|---|---|---|---|
Return Values |
|
otUdpSendDatagram
otError otUdpSendDatagram( otInstance *aInstance, otMessage *aMessage, otMessageInfo *aMessageInfo )
Sends a UDP message without socket.
Details | |||||||
---|---|---|---|---|---|---|---|
Parameters |
|
||||||
Return Values |
|
Resources
OpenThread API Reference topics originate from the source code, available on GitHub. For more information, or to contribute to our documentation, refer to Resources.