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.