UDP 轉送

這個模組含有 UDP 前向功能的函式。

摘要

啟用 udp-forward 功能 (OPENTHREAD_CONFIG_UDP_FORWARD_ENABLE) 時,即可使用這個模組中的函式。

Typedefs

otUdpForwarder)(otMessage *aMessage, uint16_t aPeerPort, otIp6Address *aPeerAddr, uint16_t aSockPort, void *aContext) typedef
void(*
指標會將 UDP 封包傳送至主機,而主機應透過自身的網路堆疊傳送封包。

函式

otUdpForwardReceive(otInstance *aInstance, otMessage *aMessage, uint16_t aPeerPort, const otIp6Address *aPeerAddr, uint16_t aSockPort)
void
處理從主機接收的 UDP 封包。
otUdpForwardSetForwarder(otInstance *aInstance, otUdpForwarder aForwarder, void *aContext)
void
設定 UDP 轉送回呼,將 UDP 封包傳送至主機。
otUdpIsPortInUse(otInstance *aInstance, uint16_t port)
bool
判斷指定的 UDP 通訊埠是否由 OpenThread API 專門開啟。

Typedefs

otUdpForwarder

void(* otUdpForwarder)(otMessage *aMessage, uint16_t aPeerPort, otIp6Address *aPeerAddr, uint16_t aSockPort, void *aContext)

指標會將 UDP 封包傳送至主機,而主機應透過自身的網路堆疊傳送封包。

詳細說明
參數
[in] aMessage
UDP 訊息的指標。
[in] aPeerPort
目的地 UDP 通訊埠。
[in] aPeerAddr
指向目的地 IPv6 位址的指標。
[in] aSockPort
來源 UDP 通訊埠。
[in] aContext
指向應用程式特定背景資訊的指標。

函式

otUdpForwardReceive

void otUdpForwardReceive(
  otInstance *aInstance,
  otMessage *aMessage,
  uint16_t aPeerPort,
  const otIp6Address *aPeerAddr,
  uint16_t aSockPort
)

處理從主機接收的 UDP 封包。

無論通話成功或失敗,訊息都會釋出。

詳細說明
參數
[in] aInstance
指向 OpenThread 執行個體的指標。
[in] aMessage
UDP 訊息的指標。
[in] aPeerPort
來源 UDP 通訊埠。
[in] aPeerAddr
指向來源位址的指標。
[in] aSockPort
目的地 UDP 通訊埠。

otUdpForwardSetForwarder

void otUdpForwardSetForwarder(
  otInstance *aInstance,
  otUdpForwarder aForwarder,
  void *aContext
)

設定 UDP 轉送回呼,將 UDP 封包傳送至主機。

詳細說明
參數
[in] aInstance
指向 OpenThread 執行個體的指標。
[in] aForwarder
指向將 UDP 封包轉送至主機的函式指標。
[in] aContext
指向應用程式特定背景資訊的指標。

otUdpIsPortInUse

bool otUdpIsPortInUse(
  otInstance *aInstance,
  uint16_t port
)

判斷指定的 UDP 通訊埠是否由 OpenThread API 專門開啟。

詳細說明
參數
[in] aInstance
指向 OpenThread 執行個體的指標。
[in] port
要驗證的 UDP 通訊埠編號。
傳回值
true
這個通訊埠目前由 OpenThread 使用。
false
這個通訊埠不會由任何 OpenThread API 使用,或並非共用 (例如 Backbone 通訊端)。

資源

OpenThread API 參考資料主題源自原始碼,請前往 GitHub 取得。如要瞭解詳情或對說明文件做出貢獻,請參閱資源