UDP

Этот модуль включает функции, которые управляют связью UDP.

Резюме

Перечисления

otNetifIdentifier {
OT_NETIF_UNSPECIFIED = 0,
OT_NETIF_THREAD ,
OT_NETIF_BACKBONE
}
перечислить
Это перечисление определяет идентификаторы сетевого интерфейса OpenThread.

Typedefs

otNetifIdentifier typedef
Это перечисление определяет идентификаторы сетевого интерфейса OpenThread.
otUdpHandler )(void *aContext, const otMessage *aMessage, const otMessageInfo *aMessageInfo) typedef
bool(*
Этот обратный вызов позволяет OpenThread предоставлять определенные обработчики для определенных сообщений UDP.
otUdpReceive )(void *aContext, otMessage *aMessage, const otMessageInfo *aMessageInfo) typedef
void(*
Этот обратный вызов позволяет OpenThread информировать приложение о полученном UDP-сообщении.
otUdpReceiver typedef
Эта структура представляет собой приемник UDP.
otUdpSocket typedef
struct otUdpSocket
Эта структура представляет сокет UDP.

Функции

otUdpAddReceiver ( otInstance *aInstance, otUdpReceiver *aUdpReceiver)
Эта функция добавляет приемник UDP.
otUdpBind ( otInstance *aInstance, otUdpSocket *aSocket, const otSockAddr *aSockName, otNetifIdentifier aNetif)
Привязать сокет UDP / IPv6.
otUdpClose ( otInstance *aInstance, otUdpSocket *aSocket)
Закройте сокет UDP / IPv6.
otUdpConnect ( otInstance *aInstance, otUdpSocket *aSocket, const otSockAddr *aSockName)
Подключите сокет UDP / IPv6.
otUdpGetSockets ( otInstance *aInstance)
Эта функция получает начало связанного списка сокетов UDP.
otUdpIsOpen ( otInstance *aInstance, const otUdpSocket *aSocket)
bool
Проверьте, открыт ли сокет UDP.
otUdpNewMessage ( otInstance *aInstance, const otMessageSettings *aSettings)
Выделите новый буфер сообщений для отправки сообщения UDP.
otUdpOpen ( otInstance *aInstance, otUdpSocket *aSocket, otUdpReceive aCallback, void *aContext)
Откройте сокет UDP / IPv6.
otUdpRemoveReceiver ( otInstance *aInstance, otUdpReceiver *aUdpReceiver)
Эта функция удаляет приемник UDP.
otUdpSend ( otInstance *aInstance, otUdpSocket *aSocket, otMessage *aMessage, const otMessageInfo *aMessageInfo)
Отправьте сообщение UDP / IPv6.
otUdpSendDatagram ( otInstance *aInstance, otMessage *aMessage, otMessageInfo *aMessageInfo)
Эта функция отправляет сообщение UDP без сокета.

Структуры

otUdpReceiver

Эта структура представляет собой приемник UDP.

otUdpSocket

Эта структура представляет сокет UDP.

Перечисления

otNetifIdentifier

 otNetifIdentifier

Это перечисление определяет идентификаторы сетевого интерфейса OpenThread.

Характеристики
OT_NETIF_BACKBONE

Интерфейс Backbone.

OT_NETIF_THREAD

Интерфейс потока.

OT_NETIF_UNSPECIFIED

Неуказанный сетевой интерфейс.

Typedefs

otNetifIdentifier

enum otNetifIdentifier otNetifIdentifier

Это перечисление определяет идентификаторы сетевого интерфейса OpenThread.

otUdpHandler

bool(* otUdpHandler)(void *aContext, const otMessage *aMessage, const otMessageInfo *aMessageInfo)

Этот обратный вызов позволяет OpenThread предоставлять определенные обработчики для определенных сообщений UDP.

Подробности
Возвращаемые значения
true
Сообщение обрабатывается этим получателем и не подлежит дальнейшей обработке.
false
Сообщение не обрабатывается этим получателем.

otUdpReceive

void(* otUdpReceive)(void *aContext, otMessage *aMessage, const otMessageInfo *aMessageInfo)

Этот обратный вызов позволяет OpenThread информировать приложение о полученном UDP-сообщении.

otUdpReceiver

struct otUdpReceiver otUdpReceiver

Эта структура представляет собой приемник UDP.

otUdpSocket

struct otUdpSocket otUdpSocket

Эта структура представляет сокет UDP.

Функции

otUdpAddReceiver

otError otUdpAddReceiver(
  otInstance *aInstance,
  otUdpReceiver *aUdpReceiver
)

Эта функция добавляет приемник UDP.

Подробности
Параметры
[in] aInstance
Указатель на экземпляр OpenThread.
[in] aUdpReceiver
Указатель на получателя UDP.
Возвращаемые значения
OT_ERROR_NONE
Ресивер успешно добавлен.
OT_ERROR_ALREADY
Приемник UDP уже был добавлен.

otUdpBind

otError otUdpBind(
  otInstance *aInstance,
  otUdpSocket *aSocket,
  const otSockAddr *aSockName,
  otNetifIdentifier aNetif
)

Привязать сокет UDP / IPv6.

Подробности
Параметры
[in] aInstance
Указатель на экземпляр OpenThread.
[in] aSocket
Указатель на структуру сокета UDP.
[in] aSockName
Указатель на структуру адреса сокета IPv6.
[in] aNetif
Сетевой интерфейс для привязки.
Возвращаемые значения
OT_ERROR_NONE
Операция привязки прошла успешно.
OT_ERROR_FAILED
Не удалось привязать сокет UDP.

otUdpClose

otError otUdpClose(
  otInstance *aInstance,
  otUdpSocket *aSocket
)

Закройте сокет UDP / IPv6.

Подробности
Параметры
[in] aInstance
Указатель на экземпляр OpenThread.
[in] aSocket
Указатель на структуру сокета UDP.
Возвращаемые значения
OT_ERROR_NONE
Успешно закрыл сокет.
OT_ERROR_FAILED
Не удалось закрыть сокет UDP.

otUdpConnect

otError otUdpConnect(
  otInstance *aInstance,
  otUdpSocket *aSocket,
  const otSockAddr *aSockName
)

Подключите сокет UDP / IPv6.

Подробности
Параметры
[in] aInstance
Указатель на экземпляр OpenThread.
[in] aSocket
Указатель на структуру сокета UDP.
[in] aSockName
Указатель на структуру адреса сокета IPv6.
Возвращаемые значения
OT_ERROR_NONE
Операция подключения прошла успешно.
OT_ERROR_FAILED
Не удалось подключить UDP-сокет.

otUdpGetSockets

otUdpSocket * otUdpGetSockets(
  otInstance *aInstance
)

Эта функция получает начало связанного списка сокетов UDP.

Подробности
Параметры
[in] aInstance
Указатель на экземпляр OpenThread.
Возврат
Указатель на заголовок связанного списка UDP Socket.

otUdpIsOpen

bool otUdpIsOpen(
  otInstance *aInstance,
  const otUdpSocket *aSocket
)

Проверьте, открыт ли сокет UDP.

Подробности
Параметры
[in] aInstance
Указатель на экземпляр OpenThread.
[in] aSocket
Указатель на структуру сокета UDP.
Возврат
Открыт ли сокет UDP.

otUdpNewMessage

otMessage * otUdpNewMessage(
  otInstance *aInstance,
  const otMessageSettings *aSettings
)

Выделите новый буфер сообщений для отправки сообщения UDP.

Подробности
Параметры
[in] aInstance
Указатель на экземпляр OpenThread.
[in] aSettings
Указатель на настройки сообщения или NULL, чтобы использовать настройки по умолчанию.
Возврат
Указатель на буфер сообщения или NULL, если буферы сообщений недоступны или параметры недопустимы.
Смотрите также:
otMessageFree

otUdpOpen

otError otUdpOpen(
  otInstance *aInstance,
  otUdpSocket *aSocket,
  otUdpReceive aCallback,
  void *aContext
)

Откройте сокет UDP / IPv6.

Подробности
Параметры
[in] aInstance
Указатель на экземпляр OpenThread.
[in] aSocket
Указатель на структуру сокета UDP.
[in] aCallback
Указатель на функцию обратного вызова приложения.
[in] aContext
Указатель на контекст приложения.
Возвращаемые значения
OT_ERROR_NONE
Успешно открыл сокет.
OT_ERROR_FAILED
Не удалось открыть сокет.

otUdpRemoveReceiver

otError otUdpRemoveReceiver(
  otInstance *aInstance,
  otUdpReceiver *aUdpReceiver
)

Эта функция удаляет приемник UDP.

Подробности
Параметры
[in] aInstance
Указатель на экземпляр OpenThread.
[in] aUdpReceiver
Указатель на получателя UDP.
Возвращаемые значения
OT_ERROR_NONE
Ресивер успешно удален.
OT_ERROR_NOT_FOUND
Приемник UDP не добавлен.

otUdpSend

otError otUdpSend(
  otInstance *aInstance,
  otUdpSocket *aSocket,
  otMessage *aMessage,
  const otMessageInfo *aMessageInfo
)

Отправьте сообщение UDP / IPv6.

Если возвращаемое значение OT_ERROR_NONE, OpenThread получает владение aMessage , и больше не должны звонящий ссылка aMessage . Если возвращаемое значение не OT_ERROR_NONE, абонент сохраняет право собственности aMessage , в том числе освобождая aMessage если буфер сообщения больше не требуется.

Подробности
Параметры
[in] aInstance
Указатель на экземпляр OpenThread.
[in] aSocket
Указатель на структуру сокета UDP.
[in] aMessage
Указатель на буфер сообщений.
[in] aMessageInfo
Указатель на информационную структуру сообщения.

Подробности
Возвращаемые значения
OT_ERROR_NONE
Сообщение успешно запланировано для отправки.
OT_ERROR_INVALID_ARGS
Приведены неверные аргументы.
OT_ERROR_NO_BUFS
Недостаточно доступного буфера для добавления заголовков UDP и IPv6.

otUdpSendDatagram

otError otUdpSendDatagram(
  otInstance *aInstance,
  otMessage *aMessage,
  otMessageInfo *aMessageInfo
)

Эта функция отправляет сообщение UDP без сокета.

Подробности
Параметры
[in] aInstance
Указатель на экземпляр OpenThread.
[in] aMessage
Указатель на сообщение без заголовка UDP.
[in] aMessageInfo
Указатель на информацию сообщения , связанную с aMessage .
Возвращаемые значения
OT_ERROR_NONE
Сообщение успешно поставлено в очередь в выходной интерфейс.
OT_ERROR_NO_BUFS
Недостаточно доступного буфера для добавления заголовков IPv6.