ICMPv6

Dieses Modul enthält Funktionen, die die ICMPv6-Kommunikation steuern.

Zusammenfassung

Aufzählungen

otIcmp6Code{
  OT_ICMP6_CODE_DST_UNREACH_NO_ROUTE = 0,
  OT_ICMP6_CODE_FRAGM_REAS_TIME_EX = 1
}
enum
ICMPv6-Nachrichtencodes.
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 Echo-Antwortmodi.
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
}
enum
ICMPv6-Nachrichtentypen

Typdefekt

otIcmp6Code typedef
ICMPv6-Nachrichtencodes.
otIcmp6EchoMode typedef
ICMPv6 Echo-Antwortmodi.
otIcmp6Handler typedef
Mit dieser Struktur wird der ICMPv6-Nachrichten-Handler implementiert.
otIcmp6Header typedef
struct otIcmp6Header
Dieser Typ stellt einen ICMPv6-Header dar.
otIcmp6ReceiveCallback)(void *aContext, otMessage *aMessage, const otMessageInfo *aMessageInfo, const otIcmp6Header *aIcmpHeader) typedef
void(*
Mit diesem Callback kann OpenThread die Anwendung einer empfangenen ICMPv6-Nachricht informieren.
otIcmp6Type typedef
ICMPv6-Nachrichtentypen

Variablen

OT_TOOL_PACKED_END

Funktionen

otIcmp6GetEchoMode(otInstance *aInstance)
Diese Funktion gibt an, ob ICMPv6 Echo-Verarbeitung aktiviert ist.
otIcmp6RegisterHandler(otInstance *aInstance, otIcmp6Handler *aHandler)
Diese Funktion registriert einen Handler, um empfangene ICMPv6-Nachrichten bereitzustellen.
otIcmp6SendEchoRequest(otInstance *aInstance, otMessage *aMessage, const otMessageInfo *aMessageInfo, uint16_t aIdentifier)
Diese Funktion sendet über die Thread-Schnittstelle eine ICMPv6-Echo-Anfrage.
otIcmp6SetEchoMode(otInstance *aInstance, otIcmp6EchoMode aMode)
void
Diese Funktion legt fest, ob ICMPv6 Echo-Verarbeitung aktiviert ist.

Bauwerke

otIcmp6Handler

Mit dieser Struktur wird der ICMPv6-Nachrichten-Handler implementiert.

otIcmp6Header

Diese Struktur stellt einen ICMPv6-Header dar.

Gewerkschaften

otIcmp6Header::OT_TOOL_PACKED_FIELD

Aufzählungen

OTICMP6Code

 otIcmp6Code

ICMPv6-Nachrichtencodes.

Attribute
OT_ICMP6_CODE_DST_UNREACH_NO_ROUTE

Ziel nicht erreichbar Keine Route.

OT_ICMP6_CODE_FRAGM_REAS_TIME_EX

Zeit bis zur Fragment-Wieder zusammensetzung überschritten.

otIcmp6EchoMode

 otIcmp6EchoMode

ICMPv6 Echo-Antwortmodi.

Attribute
OT_ICMP6_ECHO_HANDLER_ALL

ICMPv6 Echo-Verarbeitung für Unicast- und Multicast-Anfragen aktiviert

OT_ICMP6_ECHO_HANDLER_DISABLED

ICMPv6 Echo-Verarbeitung deaktiviert

OT_ICMP6_ECHO_HANDLER_MULTICAST_ONLY

ICMPv6 Echo-Verarbeitung ist nur für Multicast-Anfragen aktiviert.

OT_ICMP6_ECHO_HANDLER_UNICAST_ONLY

ICMPv6 Echo-Verarbeitung ist nur für Unicast-Anfragen aktiviert.

OTICMP6Typ

 otIcmp6Type

ICMPv6-Nachrichtentypen

Attribute
OT_ICMP6_TYPE_DST_UNREACH

Ziel nicht erreichbar.

OT_ICMP6_TYPE_ECHO_REPLY

Echo-Antwort

OT_ICMP6_TYPE_ECHO_REQUEST

Echo-Anfrage

OT_ICMP6_TYPE_PACKET_TO_BIG

Großartiger Paket.

OT_ICMP6_TYPE_PARAMETER_PROBLEM

Parameterproblem

OT_ICMP6_TYPE_ROUTER_ADVERT

Router-Advertising.

OT_ICMP6_TYPE_ROUTER_SOLICIT

Routerwerbung.

OT_ICMP6_TYPE_TIME_EXCEEDED

Zeit überschritten.

Typdefekt

OTICMP6Code

enum otIcmp6Code otIcmp6Code

ICMPv6-Nachrichtencodes.

otIcmp6EchoMode

enum otIcmp6EchoMode otIcmp6EchoMode

ICMPv6 Echo-Antwortmodi.

otIcmp6-Handler

struct otIcmp6Handler otIcmp6Handler

Mit dieser Struktur wird der ICMPv6-Nachrichten-Handler implementiert.

OTICMP6Header

struct otIcmp6Header otIcmp6Header

Dieser Typ stellt einen ICMPv6-Header dar.

otIcmp6ReceiveCallback

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

Mit diesem Callback kann OpenThread die Anwendung einer empfangenen ICMPv6-Nachricht informieren.

Details
Parameter
[in] aContext
Ein Zeiger auf beliebige Kontextinformationen.
[in] aMessage
Ein Zeiger auf die empfangene Nachricht.
[in] aMessageInfo
Ein Zeiger auf Nachrichteninformationen, die mit aMessage verknüpft sind.
[in] aIcmpHeader
Ein Zeiger auf den empfangenen ICMPv6-Header.

OTICMP6Typ

enum otIcmp6Type otIcmp6Type

ICMPv6-Nachrichtentypen

Variablen

OT_TOOL_PACKED_END

OT_TOOL_PACKED_BEGIN struct otIcmp6Header OT_TOOL_PACKED_END

Funktionen

otIcmp6GetEchoMode

otIcmp6EchoMode otIcmp6GetEchoMode(
  otInstance *aInstance
)

Diese Funktion gibt an, ob ICMPv6 Echo-Verarbeitung aktiviert ist.

Details
Parameter
[in] aInstance
Ein Zeiger auf eine OpenThread-Instanz.
Rückgabewerte
OT_ICMP6_ECHO_HANDLER_DISABLED
Die ICMPv6-Echoverarbeitung ist deaktiviert.
OT_ICMP6_ECHO_HANDLER_UNICAST_ONLY
ICMPv6 Echo-Verarbeitung nur für Unicast-Anfragen aktiviert
OT_ICMP6_ECHO_HANDLER_MULTICAST_ONLY
ICMPv6 Echo-Verarbeitung nur für Multicast-Anfragen aktiviert
OT_ICMP6_ECHO_HANDLER_ALL
ICMPv6 Echo-Verarbeitung für Unicast- und Multicast-Anfragen aktiviert

otIcmp6RegisterHandler

otError otIcmp6RegisterHandler(
  otInstance *aInstance,
  otIcmp6Handler *aHandler
)

Diese Funktion registriert einen Handler, um empfangene ICMPv6-Nachrichten bereitzustellen.

Details
Parameter
[in] aInstance
Ein Zeiger auf eine OpenThread-Instanz.
[in] aHandler
Ein Zeiger auf einen Handler mit Callback, der beim Empfang einer ICMPv6-Nachricht aufgerufen wird.

otIcmp6SendEchoRequest

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

Diese Funktion sendet über die Thread-Schnittstelle eine ICMPv6-Echo-Anfrage.

Details
Parameter
[in] aInstance
Ein Zeiger auf eine OpenThread-Instanz.
[in] aMessage
Ein Zeiger auf den Nachrichtenpuffer, der die ICMPv6-Nutzlast enthält.
[in] aMessageInfo
Ein Verweis auf Nachrichteninformationen, die mit aMessage verknüpft sind.
[in] aIdentifier
Eine Kennung zur Unterstützung der Zuordnung von Echo-Antworten zu dieser Echo-Anfrage Kann null sein.

otIcmp6SetEchoMode

void otIcmp6SetEchoMode(
  otInstance *aInstance,
  otIcmp6EchoMode aMode
)

Diese Funktion legt fest, ob ICMPv6 Echo-Verarbeitung aktiviert ist.

Details
Parameter
[in] aInstance
Ein Zeiger auf eine OpenThread-Instanz.
[in] aMode
Der ICMPv6 Echo-Verarbeitungsmodus.

Makros

OT_ICMP6_HEADER_DATA_SIZE

 OT_ICMP6_HEADER_DATA_SIZE 4

Größe einer nachrichtenspezifischen Daten des ICMPv6-Headers

Ressourcen

Die OpenThread API-Referenzthemen stammen aus dem Quellcode, der auf GitHub verfügbar ist. Weitere Informationen und einen Beitrag zu unserer Dokumentation finden Sie unter Ressourcen.