UDP Este módulo incluye funciones que controlan la comunicación UDP.
Resumen Typedefs otUdpHandler )(void *aContext, const otMessage *aMessage, const otMessageInfo *aMessageInfo)
typedef bool(*
Esta devolución de llamada permite que OpenThread proporcione controladores específicos para ciertos mensajes UDP.
otUdpReceive )(void *aContext, otMessage *aMessage, const otMessageInfo *aMessageInfo)
typedef void(*
Esta devolución de llamada permite a OpenThread informar a la aplicación de un mensaje UDP recibido.
otUdpReceiver
typedef Esta estructura representa un receptor UDP.
otUdpSocket
typedef Esta estructura representa un socket UDP.
Funciones otUdpAddReceiver ( otInstance *aInstance, otUdpReceiver *aUdpReceiver)
Esta función agrega un receptor UDP.
otUdpBind ( otInstance *aInstance, otUdpSocket *aSocket, const otSockAddr *aSockName)
Vincular un socket UDP / IPv6.
otUdpClose ( otInstance *aInstance, otUdpSocket *aSocket)
Cierre un socket UDP / IPv6.
otUdpConnect ( otInstance *aInstance, otUdpSocket *aSocket, const otSockAddr *aSockName)
Conecte un enchufe UDP / IPv6.
otUdpGetSockets ( otInstance *aInstance)
Esta función obtiene el encabezado de la lista enlazada de sockets UDP.
otUdpNewMessage ( otInstance *aInstance, const otMessageSettings *aSettings)
Asigne un nuevo búfer de mensajes para enviar un mensaje UDP.
otUdpOpen ( otInstance *aInstance, otUdpSocket *aSocket, otUdpReceive aCallback, void *aContext)
Abra un socket UDP / IPv6.
otUdpRemoveReceiver ( otInstance *aInstance, otUdpReceiver *aUdpReceiver)
Esta función elimina un receptor UDP.
otUdpSend ( otInstance *aInstance, otUdpSocket *aSocket, otMessage *aMessage, const otMessageInfo *aMessageInfo)
Envíe un mensaje UDP / IPv6.
otUdpSendDatagram ( otInstance *aInstance, otMessage *aMessage, otMessageInfo *aMessageInfo)
Esta función envía un mensaje UDP sin socket.
Estructuras otUdpReceiver Esta estructura representa un receptor UDP.
otUdpSocket Esta estructura representa un socket UDP.
Typedefs otUdpHandler bool(* otUdpHandler)(void *aContext, const otMessage *aMessage, const otMessageInfo *aMessageInfo) Esta devolución de llamada permite que OpenThread proporcione controladores específicos para ciertos mensajes UDP.
Detalles Valores devueltos true
El mensaje lo maneja este receptor y no debe procesarse más.
false
Este receptor no maneja el mensaje.
otUdpReceive void(* otUdpReceive)(void *aContext, otMessage *aMessage, const otMessageInfo *aMessageInfo) Esta devolución de llamada permite a OpenThread informar a la aplicación de un mensaje UDP recibido.
otUdpReceiver struct otUdpReceiver otUdpReceiver Esta estructura representa un receptor UDP.
otUdpSocket struct otUdpSocket otUdpSocket Esta estructura representa un socket UDP.
Funciones otUdpAddReceiver otError otUdpAddReceiver(
otInstance *aInstance,
otUdpReceiver *aUdpReceiver
) Esta función agrega un receptor UDP.
Detalles Parámetros [in] aInstance
Un puntero a una instancia de OpenThread.
[in] aUdpReceiver
Un puntero al receptor UDP.
Valores devueltos OT_ERROR_NONE
El receptor se agregó correctamente.
OT_ERROR_ALREADY
El receptor UDP ya se agregó.
otUdpBind otError otUdpBind(
otInstance *aInstance,
otUdpSocket *aSocket,
const otSockAddr *aSockName
) Vincular un socket UDP / IPv6.
Detalles Parámetros [in] aInstance
Un puntero a una instancia de OpenThread.
[in] aSocket
Un puntero a una estructura de socket UDP.
[in] aSockName
Un puntero a una estructura de dirección de socket IPv6.
Valores devueltos OT_ERROR_NONE
La operación de vinculación se realizó correctamente.
OT_ERROR_FAILED
No se pudo vincular el socket UDP.
otUdpClose otError otUdpClose(
otInstance *aInstance,
otUdpSocket *aSocket
) Cierre un socket UDP / IPv6.
Detalles Parámetros [in] aInstance
Un puntero a una instancia de OpenThread.
[in] aSocket
Un puntero a una estructura de socket UDP.
Valores devueltos OT_ERROR_NONE
Cerró con éxito el enchufe.
OT_ERROR_FAILED
No se pudo cerrar el socket UDP.
otUdpConnect otError otUdpConnect(
otInstance *aInstance,
otUdpSocket *aSocket,
const otSockAddr *aSockName
) Conecte un enchufe UDP / IPv6.
Detalles Parámetros [in] aInstance
Un puntero a una instancia de OpenThread.
[in] aSocket
Un puntero a una estructura de socket UDP.
[in] aSockName
Un puntero a una estructura de dirección de socket IPv6.
Valores devueltos OT_ERROR_NONE
La operación de conexión fue exitosa.
OT_ERROR_FAILED
No se pudo conectar el conector UDP.
otUdpGetSockets otUdpSocket * otUdpGetSockets(
otInstance *aInstance
) Esta función obtiene el encabezado de la lista enlazada de sockets UDP.
Detalles Parámetros [in] aInstance
Un puntero a una instancia de OpenThread.
Devoluciones Un puntero al encabezado de la lista enlazada de UDP Socket.
otUdpNewMessage otMessage * otUdpNewMessage(
otInstance *aInstance,
const otMessageSettings *aSettings
) Asigne un nuevo búfer de mensajes para enviar un mensaje UDP.
Nota: Si una aSettings
es 'NULL', la seguridad de la capa de enlace está habilitada y la prioridad del mensaje se establece en OT_MESSAGE_PRIORITY_NORMAL de forma predeterminada.
Detalles Parámetros [in] aInstance
Un puntero a una instancia de OpenThread.
[in] aSettings
Un puntero a la configuración del mensaje o NULL para usar la configuración predeterminada.
Devoluciones Un puntero al búfer de mensajes o NULL si no hay búfer de mensajes disponibles o los parámetros no son válidos.
Ver también: otMessageFree otUdpOpen otError otUdpOpen(
otInstance *aInstance,
otUdpSocket *aSocket,
otUdpReceive aCallback,
void *aContext
) Abra un socket UDP / IPv6.
Detalles Parámetros [in] aInstance
Un puntero a una instancia de OpenThread.
[in] aSocket
Un puntero a una estructura de socket UDP.
[in] aCallback
Un puntero a la función de devolución de llamada de la aplicación.
[in] aContext
Un puntero al contexto específico de la aplicación.
Valores devueltos OT_ERROR_NONE
Abrió con éxito el enchufe.
OT_ERROR_FAILED
No se pudo abrir el enchufe.
otUdpRemoveReceiver otError otUdpRemoveReceiver(
otInstance *aInstance,
otUdpReceiver *aUdpReceiver
) Esta función elimina un receptor UDP.
Detalles Parámetros [in] aInstance
Un puntero a una instancia de OpenThread.
[in] aUdpReceiver
Un puntero al receptor UDP.
Valores devueltos OT_ERROR_NONE
El receptor se quitó con éxito.
OT_ERROR_NOT_FOUND
No se agregó el receptor UDP.
otUdpSend otError otUdpSend(
otInstance *aInstance,
otUdpSocket *aSocket,
otMessage *aMessage,
const otMessageInfo *aMessageInfo
) Envíe un mensaje UDP / IPv6.
Si el valor de retorno es OT_ERROR_NONE, OpenThread toma posesión de aMessage
y la persona que llama ya no debería hacer referencia a aMessage
. Si el valor de retorno no es OT_ERROR_NONE, la persona que llama conserva la propiedad de aMessage
, incluida la liberación de aMessage
si el búfer de mensajes ya no es necesario.
Detalles Parámetros [in] aInstance
Un puntero a una instancia de OpenThread.
[in] aSocket
Un puntero a una estructura de socket UDP.
[in] aMessage
Un puntero a un búfer de mensajes.
[in] aMessageInfo
Un puntero a la estructura de información de un mensaje.
Detalles Valores devueltos OT_ERROR_NONE
El mensaje se ha programado correctamente para su envío.
OT_ERROR_INVALID_ARGS
Se dan argumentos no válidos.
OT_ERROR_NO_BUFS
Búfer disponible insuficiente para agregar los encabezados UDP e IPv6.
otUdpSendDatagram otError otUdpSendDatagram(
otInstance *aInstance,
otMessage *aMessage,
otMessageInfo *aMessageInfo
) Esta función envía un mensaje UDP sin socket.
Detalles Parámetros [in] aInstance
Un puntero a una instancia de OpenThread.
[in] aMessage
Un puntero a un mensaje sin encabezado UDP.
[in] aMessageInfo
Un puntero a la información de un mensaje asociada con aMessage
.
Valores devueltos OT_ERROR_NONE
Colocó correctamente el mensaje en una interfaz de salida.
OT_ERROR_NO_BUFS
Búfer disponible insuficiente para agregar los encabezados IPv6.