Google is committed to advancing racial equity for Black communities. See how.
本頁面由 Cloud Translation API 翻譯而成。
Switch to English

ICMPv6

該模塊包括控制ICMPv6通信的功能。

概要

枚舉

otIcmp6Code {
OT_ICMP6_CODE_DST_UNREACH_NO_ROUTE = 0,
OT_ICMP6_CODE_FRAGM_REAS_TIME_EX = 1
}
枚舉
ICMPv6消息代碼。
otIcmp6EchoMode {
OT_ICMP6_ECHO_HANDLER_DISABLED = 0,
OT_ICMP6_ECHO_HANDLER_UNICAST_ONLY = 1,
OT_ICMP6_ECHO_HANDLER_MULTICAST_ONLY = 2,
OT_ICMP6_ECHO_HANDLER_ALL = 3
}
枚舉
ICMPv6迴聲回复模式。
otIcmp6Type {
OT_ICMP6_TYPE_DST_UNREACH = 1,
OT_ICMP6_TYPE_PACKET_TO_BIG = 2,
OT_ICMP6_TYPE_TIME_EXCEEDED = 3,
OT_ICMP6_TYPE_PARAMETER_PROBLEM = 4,
OT_ICMP6_TYPE_ECHO_REQUEST = 128,
OT_ICMP6_TYPE_ECHO_REPLY = 129,
OT_ICMP6_TYPE_ROUTER_SOLICIT = 133,
OT_ICMP6_TYPE_ROUTER_ADVERT = 134
}
枚舉
ICMPv6消息類型。

類型定義

otIcmp6Code類型定義
ICMPv6消息代碼。
otIcmp6EchoMode類型定義
ICMPv6迴聲回复模式。
otIcmp6Handler類型定義
此結構實現ICMPv6消息處理程序。
otIcmp6Header類型定義
此類型表示ICMPv6標頭。
otIcmp6ReceiveCallback )(void *aContext, otMessage *aMessage, const otMessageInfo *aMessageInfo, const otIcmp6Header *aIcmpHeader)類型定義
void(*
此回調允許OpenThread通知應用程序收到的ICMPv6消息。
otIcmp6Type類型定義
ICMPv6消息類型。

變數

OT_TOOL_PACKED_END

職能

otIcmp6GetEchoMode ( otInstance *aInstance)
此功能指示是否啟用ICMPv6回顯處理。
otIcmp6RegisterHandler ( otInstance *aInstance, otIcmp6Handler *aHandler)
此函數註冊一個處理程序以提供接收到的ICMPv6消息。
otIcmp6SendEchoRequest ( otInstance *aInstance, otMessage *aMessage, const otMessageInfo *aMessageInfo, uint16_t aIdentifier)
此函數通過Thread接口發送ICMPv6回顯請求。
otIcmp6SetEchoMode ( otInstance *aInstance, otIcmp6EchoMode aMode)
void
此功能設置是否啟用ICMPv6回顯處理。

結構

otIcmp6Handler

此結構實現ICMPv6消息處理程序。

otIcmp6Header

此結構表示ICMPv6標頭。

工會

otIcmp6Header :: OT_TOOL_PACKED_FIELD

枚舉

otIcmp6Code

 otIcmp6Code

ICMPv6消息代碼。

物產
OT_ICMP6_CODE_DST_UNREACH_NO_ROUTE

目標不可達,無路由。

OT_ICMP6_CODE_FRAGM_REAS_TIME_EX

超過片段重組時間。

otIcmp6EchoMode

 otIcmp6EchoMode

ICMPv6迴聲回复模式。

物產
OT_ICMP6_ECHO_HANDLER_ALL

為單播和多播請求啟用了ICMPv6回顯處理。

OT_ICMP6_ECHO_HANDLER_DISABLED

ICMPv6迴聲處理已禁用。

OT_ICMP6_ECHO_HANDLER_MULTICAST_ONLY

ICMPv6迴聲處理僅對多播請求啟用。

OT_ICMP6_ECHO_HANDLER_UNICAST_ONLY

ICMPv6迴聲處理僅對單播請求啟用。

otIcmp6Type

 otIcmp6Type

ICMPv6消息類型。

物產
OT_ICMP6_TYPE_DST_UNREACH

無法到達目的地。

OT_ICMP6_TYPE_ECHO_REPLY

迴聲回复。

OT_ICMP6_TYPE_ECHO_REQUEST

迴聲請求。

OT_ICMP6_TYPE_PACKET_TO_BIG

小包大。

OT_ICMP6_TYPE_PARAMETER_PROBLEM

參數問題。

OT_ICMP6_TYPE_ROUTER_ADVERT

路由器廣告。

OT_ICMP6_TYPE_ROUTER_SOLICIT

路由器徵集。

OT_ICMP6_TYPE_TIME_EXCEEDED

時間已過。

類型定義

otIcmp6Code

enum otIcmp6Code otIcmp6Code

ICMPv6消息代碼。

otIcmp6EchoMode

enum otIcmp6EchoMode otIcmp6EchoMode

ICMPv6迴聲回复模式。

otIcmp6Handler

struct otIcmp6Handler otIcmp6Handler

此結構實現ICMPv6消息處理程序。

otIcmp6Header

struct otIcmp6Header otIcmp6Header

此類型表示ICMPv6標頭。

otIcmp6ReceiveCallback

void(* otIcmp6ReceiveCallback)(void *aContext, otMessage *aMessage, const otMessageInfo *aMessageInfo, const otIcmp6Header *aIcmpHeader)

此回調允許OpenThread通知應用程序收到的ICMPv6消息。

細節
參量
[in] aContext
指向任意上下文信息的指針。
[in] aMessage
指向收到的消息的指針。
[in] aMessageInfo
指向與aMessage相關的消息信息的指針。
[in] aIcmpHeader
指向收到的ICMPv6標頭的指針。

otIcmp6Type

enum otIcmp6Type otIcmp6Type

ICMPv6消息類型。

變數

OT_TOOL_PACKED_END

OT_TOOL_PACKED_BEGIN struct otIcmp6Header OT_TOOL_PACKED_END

職能

otIcmp6GetEchoMode

otIcmp6EchoMode otIcmp6GetEchoMode(
  otInstance *aInstance
)

此功能指示是否啟用ICMPv6回顯處理。

細節
參量
[in] aInstance
指向OpenThread實例的指針。
返回值
OT_ICMP6_ECHO_HANDLER_DISABLED
ICMPv6回顯處理已禁用。
OT_ICMP6_ECHO_HANDLER_UNICAST_ONLY
僅對單播請求啟用了ICMPv6迴聲處理
OT_ICMP6_ECHO_HANDLER_MULTICAST_ONLY
僅對多播請求啟用了ICMPv6迴聲處理
OT_ICMP6_ECHO_HANDLER_ALL
為單播和多播請求啟用了ICMPv6迴聲處理

otIcmp6RegisterHandler

otError otIcmp6RegisterHandler(
  otInstance *aInstance,
  otIcmp6Handler *aHandler
)

此函數註冊一個處理程序以提供接收到的ICMPv6消息。

細節
參量
[in] aInstance
指向OpenThread實例的指針。
[in] aHandler
指向包含回調的處理程序的指針,當收到ICMPv6消息時將調用該回調。

otIcmp6SendEchoRequest

otError otIcmp6SendEchoRequest(
  otInstance *aInstance,
  otMessage *aMessage,
  const otMessageInfo *aMessageInfo,
  uint16_t aIdentifier
)

此函數通過Thread接口發送ICMPv6回顯請求。

細節
參量
[in] aInstance
指向OpenThread實例的指針。
[in] aMessage
指向包含ICMPv6有效負載的消息緩衝區的指針。
[in] aMessageInfo
對與aMessage相關的消息信息的引用。
[in] aIdentifier
一個標識符,以幫助匹配此Echo Request的Echo答复。可能為零。

otIcmp6SetEchoMode

void otIcmp6SetEchoMode(
  otInstance *aInstance,
  otIcmp6EchoMode aMode
)

此功能設置是否啟用ICMPv6回顯處理。

細節
參量
[in] aInstance
指向OpenThread實例的指針。
[in] aMode
ICMPv6回顯處理模式。

巨集

OT_ICMP6_HEADER_DATA_SIZE

 OT_ICMP6_HEADER_DATA_SIZE 4

ICMPv6標頭的消息特定數據的大小。