ICMPv6

Ce module inclut des fonctions qui contrôlent la communication ICMPv6.

Résumé

Énumérations

otIcmp6Code{
  OT_ICMP6_CODE_DST_UNREACH_NO_ROUTE = 0,
  OT_ICMP6_CODE_FRAGM_REAS_TIME_EX = 1
}
enum
Codes de message 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
Modes de réponse d'écho 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
Types de messages ICMPv6

Typedefs

otIcmp6Code Typedef
Codes de message ICMPv6
otIcmp6EchoMode Typedef
Modes de réponse d'écho ICMPv6.
otIcmp6Handler Typedef
Cette structure implémente le gestionnaire de messages ICMPv6.
otIcmp6Header Typedef
struct otIcmp6Header
Ce type représente un en-tête ICMPv6.
otIcmp6ReceiveCallback)(void *aContext, otMessage *aMessage, const otMessageInfo *aMessageInfo, const otIcmp6Header *aIcmpHeader) Typedef
void(*
Ce rappel permet à OpenThread d'informer l'application d'un message ICMPv6 reçu.
otIcmp6Type Typedef
Types de messages ICMPv6

Variables

OT_TOOL_PACKED_END

Functions

otIcmp6GetEchoMode(otInstance *aInstance)
Cette fonction indique si le traitement Echo ICMPv6 est activé ou non.
otIcmp6RegisterHandler(otInstance *aInstance, otIcmp6Handler *aHandler)
Cette fonction enregistre un gestionnaire pour fournir les messages ICMPv6 reçus.
otIcmp6SendEchoRequest(otInstance *aInstance, otMessage *aMessage, const otMessageInfo *aMessageInfo, uint16_t aIdentifier)
Cette fonction envoie une requête d'écho ICMPv6 via l'interface Thread.
otIcmp6SetEchoMode(otInstance *aInstance, otIcmp6EchoMode aMode)
void
Cette fonction définit si le traitement Echo ICMPv6 est activé ou non.

Structure

otIcmp6Handler

Cette structure implémente le gestionnaire de messages ICMPv6.

otIcmp6Header

Cette structure représente un en-tête ICMPv6.

Unions

otIcmp6Header::OT_Tool_PACKED_FIELD

Énumérations

OTIcmp6Code

 otIcmp6Code

Codes de message ICMPv6

Properties
OT_ICMP6_CODE_DST_UNREACH_NO_ROUTE

Destination inaccessible (sans itinéraire).

OT_ICMP6_CODE_FRAGM_REAS_TIME_EX

Temps de réassemblage du fragment dépassé.

OTIcmp6EchoMode

 otIcmp6EchoMode

Modes de réponse d'écho ICMPv6.

Properties
OT_ICMP6_ECHO_HANDLER_ALL

Traitement Echo ICMPv6 activé pour les requêtes monocast et multicast.

OT_ICMP6_ECHO_HANDLER_DISABLED

Traitement Echo ICMPv6 désactivé.

OT_ICMP6_ECHO_HANDLER_MULTICAST_ONLY

Le traitement Echo ICMPv6 n'est activé que pour les requêtes de multidiffusion.

OT_ICMP6_ECHO_HANDLER_UNICAST_ONLY

Le traitement ICMPv6 Echo n'est activé que pour les requêtes monocast.

OTIcmp6Type

 otIcmp6Type

Types de messages ICMPv6

Properties
OT_ICMP6_TYPE_DST_UNREACH

Destination inaccessible.

OT_ICMP6_TYPE_ECHO_REPLY

Réponse d'écho.

OT_ICMP6_TYPE_ECHO_REQUEST

Echo Request.

OT_ICMP6_TYPE_PACKET_TO_BIG

Paquet grand.

OT_ICMP6_TYPE_PARAMETER_PROBLEM

Problème lié au paramètre.

OT_ICMP6_TYPE_ROUTER_ADVERT

Annonce du routeur.

OT_ICMP6_TYPE_ROUTER_SOLICIT

Demande de routeur

OT_ICMP6_TYPE_TIME_EXCEEDED

Durée dépassée.

Typedefs

OTIcmp6Code

enum otIcmp6Code otIcmp6Code

Codes de message ICMPv6

OTIcmp6EchoMode

enum otIcmp6EchoMode otIcmp6EchoMode

Modes de réponse d'écho ICMPv6.

otIcmp6Handler

struct otIcmp6Handler otIcmp6Handler

Cette structure implémente le gestionnaire de messages ICMPv6.

OTIcmp6En-tête

struct otIcmp6Header otIcmp6Header

Ce type représente un en-tête ICMPv6.

otIcmp6ReceiveCallback

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

Ce rappel permet à OpenThread d'informer l'application d'un message ICMPv6 reçu.

Détails
Paramètres
[in] aContext
Pointeur vers des informations de contexte arbitraires.
[in] aMessage
Un pointeur vers le message reçu.
[in] aMessageInfo
Pointeur vers les informations du message associé à aMessage.
[in] aIcmpHeader
Pointeur vers l'en-tête ICMPv6 reçu.

OTIcmp6Type

enum otIcmp6Type otIcmp6Type

Types de messages ICMPv6

Variables

OT_Tool_PACKED_END

OT_TOOL_PACKED_BEGIN struct otIcmp6Header OT_TOOL_PACKED_END

Functions

otIcmp6GetEchoMode

otIcmp6EchoMode otIcmp6GetEchoMode(
  otInstance *aInstance
)

Cette fonction indique si le traitement Echo ICMPv6 est activé ou non.

Détails
Paramètres
[in] aInstance
Pointeur vers une instance OpenThread.
Valeurs renvoyées
OT_ICMP6_ECHO_HANDLER_DISABLED
Le traitement ICMPv6 Echo est désactivé.
OT_ICMP6_ECHO_HANDLER_UNICAST_ONLY
Traitement Echo ICMPv6 activé pour les requêtes monocast seulement
OT_ICMP6_ECHO_HANDLER_MULTICAST_ONLY
Traitement Echo ICMPv6 activé pour les requêtes de multidiffusion uniquement
OT_ICMP6_ECHO_HANDLER_ALL
Traitement Echo ICMPv6 activé pour les requêtes monocast et multicast

otIcmp6RegisterHandler

otError otIcmp6RegisterHandler(
  otInstance *aInstance,
  otIcmp6Handler *aHandler
)

Cette fonction enregistre un gestionnaire pour fournir les messages ICMPv6 reçus.

Détails
Paramètres
[in] aInstance
Pointeur vers une instance OpenThread.
[in] aHandler
Pointeur vers un gestionnaire contenant un rappel qui est appelé lors de la réception d'un message ICMPv6.

otIcmp6SendEchoRequest

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

Cette fonction envoie une requête d'écho ICMPv6 via l'interface Thread.

Détails
Paramètres
[in] aInstance
Pointeur vers une instance OpenThread.
[in] aMessage
Pointeur vers le tampon du message contenant la charge utile ICMPv6.
[in] aMessageInfo
Référence aux informations du message associées à aMessage.
[in] aIdentifier
Identifiant permettant de faire correspondre les réponses Echo à cette requête Echo. Peut être égal à zéro.

otIcmp6SetEchoMode

void otIcmp6SetEchoMode(
  otInstance *aInstance,
  otIcmp6EchoMode aMode
)

Cette fonction définit si le traitement Echo ICMPv6 est activé ou non.

Détails
Paramètres
[in] aInstance
Pointeur vers une instance OpenThread.
[in] aMode
Mode de traitement Echo ICMPv6.

Macros

OT_ICMP6_Header_DATA_SIZE

 OT_ICMP6_HEADER_DATA_SIZE 4

Taille d'un message spécifique à l'en-tête ICMPv6.

Resources

Les sujets de référence de l'API OpenThread proviennent du code source, disponible sur GitHub. Pour en savoir plus ou pour contribuer à notre documentation, consultez la page Ressources.