ICMPv6

Ten moduł zawiera funkcje sterujące komunikacją ICMPv6.

Podsumowanie

Wyliczenia

otIcmp6Code{
  OT_ICMP6_CODE_DST_UNREACH_NO_ROUTE = 0,
  OT_ICMP6_CODE_FRAGM_REAS_TIME_EX = 1
}
enum | typ wyliczeniowy
Kody wiadomości 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 | typ wyliczeniowy
Tryby odpowiedzi echo 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
}
enum | typ wyliczeniowy
Typy komunikatów ICMPv6.

Typedefs

otIcmp6Code typedef
Kody wiadomości ICMPv6.
otIcmp6EchoMode typedef
Tryby odpowiedzi echo ICMPv6.
otIcmp6Handler typedef
Ta struktura implementuje moduł obsługi wiadomości ICMPv6.
otIcmp6Header typedef
struct otIcmp6Header
Ten typ reprezentuje nagłówek ICMPv6.
otIcmp6ReceiveCallback)(void *aContext, otMessage *aMessage, const otMessageInfo *aMessageInfo, const otIcmp6Header *aIcmpHeader) typedef
void(*
Wywołanie zwrotne umożliwia OpenThread informują o zastosowaniu otrzymanego komunikatu ICMPv6.
otIcmp6Type typedef
Typy komunikatów ICMPv6.

Zmienne

OT_TOOL_PACKED_END

Funkcje

otIcmp6GetEchoMode(otInstance *aInstance)
Ta funkcja wskazuje, czy przetwarzanie pogłosu ICMPv6 jest włączone.
otIcmp6RegisterHandler(otInstance *aInstance, otIcmp6Handler *aHandler)
Ta funkcja rejestruje moduł obsługi, aby dostarczyć otrzymane komunikaty ICMPv6.
otIcmp6SendEchoRequest(otInstance *aInstance, otMessage *aMessage, const otMessageInfo *aMessageInfo, uint16_t aIdentifier)
Ta funkcja wysyła żądanie echo ICMPv6 przez interfejs wątku.
otIcmp6SetEchoMode(otInstance *aInstance, otIcmp6EchoMode aMode)
void
Ta funkcja określa, czy przetwarzanie echa ICMPv6 jest włączone.

Strugi

OTIcmp6Handler

Ta struktura implementuje moduł obsługi wiadomości ICMPv6.

otIcmp6Header

Ta struktura reprezentuje nagłówek ICMPv6.

Związki

otIcmp6Header::OT_TOOL_PACKED_FIELD

Wyliczenia

otIcmp6Code

 otIcmp6Code

Kody wiadomości ICMPv6.

Właściwości
OT_ICMP6_CODE_DST_UNREACH_NO_ROUTE

Cel nieosiągalny, brak trasy.

OT_ICMP6_CODE_FRAGM_REAS_TIME_EX

Przekroczono czas składania fragmentu.

otIcmp6EchoMode

 otIcmp6EchoMode

Tryby odpowiedzi echo ICMPv6.

Właściwości
OT_ICMP6_ECHO_HANDLER_ALL

Przetwarzanie żądania echa ICMPv6 włączone na potrzeby żądań unicast i multicast.

OT_ICMP6_ECHO_HANDLER_DISABLED

Przetwarzanie żądania echa ICMPv6 zostało wyłączone.

OT_ICMP6_ECHO_HANDLER_MULTICAST_ONLY

Przetwarzanie echa ICMPv6 włączone tylko w przypadku żądań multicast.

OT_ICMP6_ECHO_HANDLER_UNICAST_ONLY

Przetwarzanie echa ICMPv6 włączone tylko dla żądań unicast.

OtIcmp6Type

 otIcmp6Type

Typy komunikatów ICMPv6.

Właściwości
OT_ICMP6_TYPE_DST_UNREACH

Miejsce docelowe niedostępne.

OT_ICMP6_TYPE_ECHO_REPLY

Odpowiedź echo.

OT_ICMP6_TYPE_ECHO_REQUEST

Requestądanie echo.

OT_ICMP6_TYPE_PACKET_TO_BIG

Pakiet.

OT_ICMP6_TYPE_PARAMETER_PROBLEM

Problem z parametrem.

OT_ICMP6_TYPE_ROUTER_ADVERT

Reklama routera.

OT_ICMP6_TYPE_ROUTER_SOLICIT

Pozyskiwanie routerów.

OT_ICMP6_TYPE_TIME_EXCEEDED

Czas upłynął.

Typedefs

otIcmp6Code

enum otIcmp6Code otIcmp6Code

Kody wiadomości ICMPv6.

otIcmp6EchoMode

enum otIcmp6EchoMode otIcmp6EchoMode

Tryby odpowiedzi echo ICMPv6.

Uchwyt obsługi interfejsu API

struct otIcmp6Handler otIcmp6Handler

Ta struktura implementuje moduł obsługi wiadomości ICMPv6.

NagłówekIcmp6Header

struct otIcmp6Header otIcmp6Header

Ten typ reprezentuje nagłówek ICMPv6.

OTIcmp6ReceiveCallback.

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

Wywołanie zwrotne umożliwia OpenThread informują o zastosowaniu otrzymanego komunikatu ICMPv6.

Szczegóły
Parametry
[in] aContext
Wskaźnik do dowolnych informacji kontekstowych.
[in] aMessage
Wskaźnik odebranej wiadomości.
[in] aMessageInfo
Wskaźnik informacji o wiadomościach powiązanych z aMessage.
[in] aIcmpHeader
Wskaźnik odbieranego nagłówka ICMPv6.

OtIcmp6Type

enum otIcmp6Type otIcmp6Type

Typy komunikatów ICMPv6.

Zmienne

DO_NARZOLDZIA_PACKED_END

OT_TOOL_PACKED_BEGIN struct otIcmp6Header OT_TOOL_PACKED_END

Funkcje

OTIcmp6GetEchoMode

otIcmp6EchoMode otIcmp6GetEchoMode(
  otInstance *aInstance
)

Ta funkcja wskazuje, czy przetwarzanie pogłosu ICMPv6 jest włączone.

Szczegóły
Parametry
[in] aInstance
Wskaźnik do instancji OpenThread.
Zwracane wartości
OT_ICMP6_ECHO_HANDLER_DISABLED
Przetwarzanie echa ICMPv6 jest wyłączone.
OT_ICMP6_ECHO_HANDLER_UNICAST_ONLY
Przetwarzanie żądania echa ICMPv6 włączone tylko dla żądań unicast
OT_ICMP6_ECHO_HANDLER_MULTICAST_ONLY
Przetwarzanie żądania echa ICMPv6 włączone tylko dla żądań multicast
OT_ICMP6_ECHO_HANDLER_ALL
Przetwarzanie żądania echa ICMPv6 włączone na potrzeby żądań unicast i multicast

OTIcmp6RegisterHandler

otError otIcmp6RegisterHandler(
  otInstance *aInstance,
  otIcmp6Handler *aHandler
)

Ta funkcja rejestruje moduł obsługi, aby dostarczyć otrzymane komunikaty ICMPv6.

Szczegóły
Parametry
[in] aInstance
Wskaźnik do instancji OpenThread.
[in] aHandler
Wskaźnik do modułu obsługi zawierający wywołanie zwrotne, które jest wywoływane po odebraniu wiadomości ICMPv6.

otIcmp6SendEchoRequest

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

Ta funkcja wysyła żądanie echo ICMPv6 przez interfejs wątku.

Szczegóły
Parametry
[in] aInstance
Wskaźnik do instancji OpenThread.
[in] aMessage
Wskaźnik bufora wiadomości zawierający ładunek ICMPv6.
[in] aMessageInfo
Odwołanie do informacji o wiadomościach powiązanych z aMessage.
[in] aIdentifier
Identyfikator ułatwiający dopasowanie odpowiedzi echa do tego żądania echa. Może wynosić zero.

z trybem_cm

void otIcmp6SetEchoMode(
  otInstance *aInstance,
  otIcmp6EchoMode aMode
)

Ta funkcja określa, czy przetwarzanie echa ICMPv6 jest włączone.

Szczegóły
Parametry
[in] aInstance
Wskaźnik do instancji OpenThread.
[in] aMode
Tryb przetwarzania echa ICMPv6.

Makra

OT_ICMP6_HEADLINE_DATA_SIZE

 OT_ICMP6_HEADER_DATA_SIZE 4

Rozmiar danych dotyczących nagłówka nagłówka ICMPv6.

Zasoby

Tematy referencyjne interfejsu API OpenThread pochodzą z kodu źródłowego, który jest dostępny w GitHub. Jeśli chcesz dowiedzieć się więcej lub utworzyć dokumentację, zapoznaj się z materiałami.