ICMPv6

המודול הזה כולל פונקציות ששולטות בתקשורת ICMPv6.

סיכום

ספירות

otIcmp6Code{
  OT_ICMP6_CODE_DST_UNREACH_NO_ROUTE = 0,
  OT_ICMP6_CODE_FRAGM_REAS_TIME_EX = 1
}
טיפוסים בני מנייה (enum)
קודים של הודעות ב-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
}
טיפוסים בני מנייה (enum)
מצבי תגובה הד של 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
}
טיפוסים בני מנייה (enum)
סוגי הודעות 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(*
הקריאה החוזרת (callback) הזו מאפשרת ל-OpenThread להודיע לאפליקציה על הודעת ICMPv6 שהתקבלה.
otIcmp6Type typedef
סוגי הודעות ICMPv6.

משתנים

OT_TOOL_PACKED_END

פונקציות

otIcmp6GetEchoMode(otInstance *aInstance)
מציין אם עיבוד הד ICMPv6 מופעל או לא.
otIcmp6RegisterHandler(otInstance *aInstance, otIcmp6Handler *aHandler)
רושם handler כדי לספק הודעות ICMPv6 שהתקבלו.
otIcmp6SendEchoRequest(otInstance *aInstance, otMessage *aMessage, const otMessageInfo *aMessageInfo, uint16_t aIdentifier)
נשלחת בקשת הד ICMPv6 דרך ממשק ה-Thread.
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 הופעל עבור בקשות unicast ו-multicast.

OT_ICMP6_ECHO_HANDLER_DISABLED

עיבוד ההד של ICMPv6 מושבת.

OT_ICMP6_ECHO_HANDLER_MULTICAST_ONLY

עיבוד הד ICMPv6 מופעל רק בבקשות למספר שידורים.

OT_ICMP6_ECHO_HANDLER_UNICAST_ONLY

עיבוד הד ICMPv6 מופעל רק עבור בקשות unicast.

otIcmp6Type

 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

חריגה מהזמן.

ערכי דף

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)

הקריאה החוזרת (callback) הזו מאפשרת ל-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 מופעל רק עבור בקשות ל-Uncast
OT_ICMP6_ECHO_HANDLER_MULTICAST_ONLY
עיבוד הד ICMPv6 מופעל רק בבקשות למספר שידורים
OT_ICMP6_ECHO_HANDLER_ALL
עיבוד הד ICMPv6 מופעל עבור בקשות ל-Uncast ולבקשות Multicast

otIcmp6RegisterHandler

otError otIcmp6RegisterHandler(
  otInstance *aInstance,
  otIcmp6Handler *aHandler
)

רושם handler כדי לספק הודעות ICMPv6 שהתקבלו.

פרטים
פרמטרים
[in] aInstance
מצביע למופע של OpenThread.
[in] aHandler
מצביע ל-handler שמכיל קריאה חוזרת (callback) שמופעל כשמתקבלת הודעת ICMPv6.

otIcmp6SendEchoRequest

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

נשלחת בקשת הד ICMPv6 דרך ממשק ה-Thread.

פרטים
פרמטרים
[in] aInstance
מצביע למופע של OpenThread.
[in] aMessage
הפניה למאגר ההודעות שמכיל את המטען הייעודי (payload) של 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.

OT_ICMP6_ROUTER_ADVERT_MIN_SIZE

 OT_ICMP6_ROUTER_ADVERT_MIN_SIZE 16

הגודל של הודעת הפרסומת לנתב ללא אפשרויות.

מקורות מידע

המקור של נושאי העזר של OpenThread API הוא קוד המקור, שזמין ב-GitHub. אפשר לקרוא מידע נוסף או לתרום למסמכי התיעוד שלנו בדף מקורות מידע.