ICMPv6

En este módulo, se incluyen funciones que controlan la comunicación ICMPv6.

Resumen

Enumeraciones

otIcmp6Code{
  OT_ICMP6_CODE_DST_UNREACH_NO_ROUTE = 0,
  OT_ICMP6_CODE_FRAGM_REAS_TIME_EX = 1
}
enum
Códigos de mensaje 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
Modos de respuesta de eco 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
Tipos de mensajes ICMPv6.

Typedefs

otIcmp6Code typedef
Códigos de mensaje ICMPv6.
otIcmp6EchoMode typedef
Modos de respuesta de eco ICMPv6
otIcmp6Handler typedef
Implementa el controlador de mensajes ICMPv6.
otIcmp6Header typedef
struct otIcmp6Header
Representa un encabezado ICMPv6.
otIcmp6ReceiveCallback)(void *aContext, otMessage *aMessage, const otMessageInfo *aMessageInfo, const otIcmp6Header *aIcmpHeader) typedef
void(*
Esta devolución de llamada permite a OpenThread informar a la aplicación sobre un mensaje ICMPv6 recibido.
otIcmp6Type typedef
Tipos de mensajes ICMPv6.

Variables

OT_TOOL_PACKED_END

remotas

otIcmp6GetEchoMode(otInstance *aInstance)
Indica si el procesamiento de eco ICMPv6 está habilitado o no.
otIcmp6RegisterHandler(otInstance *aInstance, otIcmp6Handler *aHandler)
Registra un controlador para proporcionar mensajes ICMPv6 recibidos.
otIcmp6SendEchoRequest(otInstance *aInstance, otMessage *aMessage, const otMessageInfo *aMessageInfo, uint16_t aIdentifier)
Envía una solicitud de eco ICMPv6 a través de la interfaz Thread.
otIcmp6SetEchoMode(otInstance *aInstance, otIcmp6EchoMode aMode)
void
Establece si el procesamiento de eco ICMPv6 está habilitado o no.

Structs

otIcmp6Handler

Implementa el controlador de mensajes ICMPv6.

otIcmp6Header

Representa un encabezado ICMPv6.

Unión

otIcmp6Header::OT_TOOL_PACKED_FIELD

Enumeraciones

otIcmp6Code

 otIcmp6Code

Códigos de mensaje ICMPv6.

Propiedades
OT_ICMP6_CODE_DST_UNREACH_NO_ROUTE

No se puede acceder al destino (sin ruta).

OT_ICMP6_CODE_FRAGM_REAS_TIME_EX

Se superó el tiempo de reensamblaje del fragmento.

otIcmp6EchoMode

 otIcmp6EchoMode

Modos de respuesta de eco ICMPv6

Propiedades
OT_ICMP6_ECHO_HANDLER_ALL

Procesamiento de eco ICMPv6 habilitado para solicitudes de unidifusión y multidifusión

OT_ICMP6_ECHO_HANDLER_DISABLED

Se inhabilitó el procesamiento de eco ICMPv6.

OT_ICMP6_ECHO_HANDLER_MULTICAST_ONLY

El procesamiento de eco ICMPv6 solo está habilitado para solicitudes de multidifusión.

OT_ICMP6_ECHO_HANDLER_UNICAST_ONLY

El procesamiento de eco ICMPv6 solo está habilitado para solicitudes unicast.

otIcmp6Type

 otIcmp6Type

Tipos de mensajes ICMPv6.

Propiedades
OT_ICMP6_TYPE_DST_UNREACH

No se puede acceder al destino.

OT_ICMP6_TYPE_ECHO_REPLY

Respuesta de eco

OT_ICMP6_TYPE_ECHO_REQUEST

Solicitud de eco.

OT_ICMP6_TYPE_NEIGHBOR_ADVERT

Anuncio de vecino.

OT_ICMP6_TYPE_NEIGHBOR_SOLICIT

Solicitud de vecino.

OT_ICMP6_TYPE_PACKET_TO_BIG

Paquete grande.

OT_ICMP6_TYPE_PARAMETER_PROBLEM

Hay un problema en el parámetro.

OT_ICMP6_TYPE_ROUTER_ADVERT

Anuncio de router.

OT_ICMP6_TYPE_ROUTER_SOLICIT

Solicitud de router.

OT_ICMP6_TYPE_TIME_EXCEEDED

Se superó el tiempo.

Typedefs

otIcmp6Code

enum otIcmp6Code otIcmp6Code

Códigos de mensaje ICMPv6.

otIcmp6EchoMode

enum otIcmp6EchoMode otIcmp6EchoMode

Modos de respuesta de eco ICMPv6

otIcmp6Handler

struct otIcmp6Handler otIcmp6Handler

Implementa el controlador de mensajes ICMPv6.

otIcmp6Header

struct otIcmp6Header otIcmp6Header

Representa un encabezado ICMPv6.

otIcmp6ReceiveCallback

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

Esta devolución de llamada permite a OpenThread informar a la aplicación sobre un mensaje ICMPv6 recibido.

Detalles
Parámetros
[in] aContext
Un puntero para información de contexto arbitraria.
[in] aMessage
Un puntero para el mensaje recibido.
[in] aMessageInfo
Un puntero para la información de mensajes asociada con aMessage.
[in] aIcmpHeader
Un puntero al encabezado ICMPv6 recibido.

otIcmp6Type

enum otIcmp6Type otIcmp6Type

Tipos de mensajes ICMPv6.

Variables

OT_TOOL_PACKED_END

OT_TOOL_PACKED_BEGIN struct otIcmp6Header OT_TOOL_PACKED_END

remotas

otIcmp6GetEchoMode

otIcmp6EchoMode otIcmp6GetEchoMode(
  otInstance *aInstance
)

Indica si el procesamiento de eco ICMPv6 está habilitado o no.

Detalles
Parámetros
[in] aInstance
Un puntero para una instancia de OpenThread.
Valores que se muestran
OT_ICMP6_ECHO_HANDLER_DISABLED
Se inhabilitó el procesamiento de eco ICMPv6.
OT_ICMP6_ECHO_HANDLER_UNICAST_ONLY
Procesamiento de eco ICMPv6 habilitado solo para solicitudes unicast
OT_ICMP6_ECHO_HANDLER_MULTICAST_ONLY
Procesamiento de eco ICMPv6 habilitado solo para solicitudes de multidifusión
OT_ICMP6_ECHO_HANDLER_ALL
Procesamiento de eco ICMPv6 habilitado para solicitudes unicast y multicast

otIcmp6RegisterHandler

otError otIcmp6RegisterHandler(
  otInstance *aInstance,
  otIcmp6Handler *aHandler
)

Registra un controlador para proporcionar mensajes ICMPv6 recibidos.

Detalles
Parámetros
[in] aInstance
Un puntero para una instancia de OpenThread.
[in] aHandler
Un puntero a un controlador que contiene una devolución de llamada al que se llama cuando se recibe un mensaje ICMPv6.

otIcmp6SendEchoRequest

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

Envía una solicitud de eco ICMPv6 a través de la interfaz Thread.

Detalles
Parámetros
[in] aInstance
Un puntero para una instancia de OpenThread.
[in] aMessage
Un puntero al búfer de mensajes que contiene la carga útil de ICMPv6.
[in] aMessageInfo
Es una referencia a la información de un mensaje asociada con aMessage.
[in] aIdentifier
Es un identificador para ayudar a hacer coincidir las Respuestas de eco con esta solicitud de eco. Puede ser cero.

otIcmp6SetEchoMode

void otIcmp6SetEchoMode(
  otInstance *aInstance,
  otIcmp6EchoMode aMode
)

Establece si el procesamiento de eco ICMPv6 está habilitado o no.

Detalles
Parámetros
[in] aInstance
Un puntero para una instancia de OpenThread.
[in] aMode
Modo de procesamiento de eco ICMPv6.

Macros

OT_ICMP6_HEADER_DATA_SIZE

 OT_ICMP6_HEADER_DATA_SIZE 4

Tamaño del encabezado ICMPv6

OT_ICMP6_ROUTER_ADVERT_MIN_SIZE

 OT_ICMP6_ROUTER_ADVERT_MIN_SIZE 16

Tamaño de un mensaje de anuncio de router sin opciones.

Recursos

Los temas de referencia de la API de OpenThread se originan a partir del código fuente, disponible en GitHub. Para obtener más información o contribuir a nuestra documentación, consulta Recursos.