Google 致力于为黑人社区推动种族平等。查看具体行动
使用集合让一切井井有条 根据您的偏好保存内容并对其进行分类。

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,
  OT_ICMP6_TYPE_NEIGHBOR_SOLICIT = 135,
  OT_ICMP6_TYPE_NEIGHBOR_ADVERT = 136
}
枚举
ICMPv6 消息类型。

类型定义符

otIcmp6Code typedef
ICMPv6 消息代码。
otIcmp6EchoMode typedef
ICMPv6 回声回复模式。
otIcmp6Handler typedef
此结构实现 ICMPv6 消息处理程序。
otIcmp6Header typedef
struct otIcmp6Header
此类型表示 ICMPv6 标头。
otIcmp6ReceiveCallback)(void *aContext, otMessage *aMessage, const otMessageInfo *aMessageInfo, const otIcmp6Header *aIcmpHeader) typedef
void(*
此回调允许 OpenThread 通知应用收到的 ICMPv6 消息。
otIcmp6Type typedef
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)
此函数通过线程接口发送 ICMPv6 回声请求。
otIcmp6SetEchoMode(otInstance *aInstance, otIcmp6EchoMode aMode)
void
此函数可设置是否启用 ICMPv6 回声处理。

结构体

otIcmp6Handler

此结构实现 ICMPv6 消息处理程序。

otIcmp6Header

此结构表示 ICMPv6 标头。

联合体

otIcmp6Header::OT_TOOL_PACKED_FIELD

枚举

otIcmp6 代码

 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 回声处理。

otIcmp6 类型

 otIcmp6Type

ICMPv6 消息类型。

属性
OT_ICMP6_TYPE_DST_UNREACH

无法访问目的地。

OT_ICMP6_TYPE_ECHO_REPLY

回声回复。

OT_ICMP6_TYPE_ECHO_REQUEST

回声请求。

OT_ICMP6_TYPE_NEIGHBOR_ADVERT

邻居通告。

OT_ICMP6_TYPE_NEIGHBOR_SOLICIT

邻居招揽。

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

已超出时间。

类型定义符

otIcmp6 代码

enum otIcmp6Code otIcmp6Code

ICMPv6 消息代码。

otIcmp6EchoMode

enum otIcmp6EchoMode otIcmp6EchoMode

ICMPv6 回声回复模式。

otIcmp6Handler

struct otIcmp6Handler otIcmp6Handler

此结构实现 ICMPv6 消息处理程序。

otIcmp6 标头

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 标头的指针。

otIcmp6 类型

enum otIcmp6Type otIcmp6Type

ICMPv6 消息类型。

变量

加时赛结束前

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
)

此函数通过线程接口发送 ICMPv6 回声请求。

详细信息
参数
[in] aInstance
指向 OpenThread 实例的指针。
[in] aMessage
指向包含 ICMPv6 载荷的消息缓冲区的指针。
[in] aMessageInfo
对与 aMessage 关联的消息信息的引用。
[in] aIdentifier
该标识符有助于将回声回复与此回显请求匹配。可以为零。

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 标头数据的大小。

资源

OpenThread API 参考主题源自源代码,可在 GitHub 上获取。如需了解详情或为我们的文档做贡献,请参阅资源