DNS

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

Resumen

Las funciones de este módulo solo están disponibles si la función OPENTHREAD_CONFIG_DNS_CLIENT_ENABLE está habilitada.

Enumeraciones

otDnsNat64Mode{
  OT_DNS_NAT64_UNSPECIFIED = 0,
  OT_DNS_NAT64_ALLOW = 1,
  OT_DNS_NAT64_DISALLOW = 2
}
enum
Type representa el modo NAT64 en una otDnsQueryConfig.
otDnsRecursionFlag{
  OT_DNS_FLAG_UNSPECIFIED = 0,
  OT_DNS_FLAG_RECURSION_DESIRED = 1,
  OT_DNS_FLAG_NO_RECURSION = 2
}
enum
El tipo representa la marca "Recursion Desired" (RD) en un otDnsQueryConfig.
otDnsServiceMode{
  OT_DNS_SERVICE_MODE_UNSPECIFIED = 0,
  OT_DNS_SERVICE_MODE_SRV = 1,
  OT_DNS_SERVICE_MODE_TXT = 2,
  OT_DNS_SERVICE_MODE_SRV_TXT = 3,
  OT_DNS_SERVICE_MODE_SRV_TXT_SEPARATE = 4,
  OT_DNS_SERVICE_MODE_SRV_TXT_OPTIMIZE = 5
}
enum
Type representa el modo de resolución del servicio en una otDnsQueryConfig.
otDnsTransportProto{
  OT_DNS_TRANSPORT_UDP = 1,
  OT_DNS_TRANSPORT_TCP = 2
}
enum
Type representa el protocolo de transporte de DNS en un otDnsQueryConfig.

Typedefs

otDnsAddressCallback)(otError aError, const otDnsAddressResponse *aResponse, void *aContext) typedef
void(*
Se llama al puntero cuando se recibe una respuesta DNS para una consulta de resolución de dirección.
otDnsAddressResponse typedef
Representación opaca de una respuesta a una consulta de DNS de resolución de dirección.
otDnsBrowseCallback)(otError aError, const otDnsBrowseResponse *aResponse, void *aContext) typedef
void(*
Se llama al puntero cuando se recibe una respuesta DNS para una consulta de navegación (Enumeración de instancias de servicio).
otDnsBrowseResponse typedef
Representación opaca de una respuesta a una consulta de DNS de navegación (enumeración de instancias de servicio).
otDnsQueryConfig typedef
Representa una configuración de consulta de DNS.
otDnsServiceCallback)(otError aError, const otDnsServiceResponse *aResponse, void *aContext) typedef
void(*
Se llama al puntero cuando se recibe una respuesta DNS para una consulta de resolución de instancia de servicio.
otDnsServiceInfo typedef
Proporciona información para una instancia de servicio de DNS.
otDnsServiceResponse typedef
Representación opaca de una respuesta a una consulta de DNS de resolución de instancia de servicio.
otDnsTxtEntry typedef
struct otDnsTxtEntry
Representa una entrada de registro TXT que representa un par clave-valor (RFC 6763, sección 6.3).
otDnsTxtEntryIterator typedef
Representa un iterador para entradas de registro TXT (pares clave-valor).

remotas

otDnsAddressResponseGetAddress(const otDnsAddressResponse *aResponse, uint16_t aIndex, otIp6Address *aAddress, uint32_t *aTtl)
Obtiene una dirección IPv6 asociada con una respuesta DNS de resolución de dirección.
otDnsAddressResponseGetHostName(const otDnsAddressResponse *aResponse, char *aNameBuffer, uint16_t aNameBufferSize)
Obtiene el nombre de host completo asociado con una respuesta DNS de resolución de dirección.
otDnsBrowseResponseGetHostAddress(const otDnsBrowseResponse *aResponse, const char *aHostName, uint16_t aIndex, otIp6Address *aAddress, uint32_t *aTtl)
Obtiene la dirección IPv6 del host a partir de una respuesta del navegador DNS (enumeración de la instancia de servicio).
otDnsBrowseResponseGetServiceInfo(const otDnsBrowseResponse *aResponse, const char *aInstanceLabel, otDnsServiceInfo *aServiceInfo)
Obtiene información de una instancia de servicio desde una respuesta de navegación de DNS (enumeración de instancias de servicio).
otDnsBrowseResponseGetServiceInstance(const otDnsBrowseResponse *aResponse, uint16_t aIndex, char *aLabelBuffer, uint8_t aLabelBufferSize)
Obtiene una instancia de servicio asociada con una respuesta de navegación de DNS (enumeración de instancias de servicio).
otDnsBrowseResponseGetServiceName(const otDnsBrowseResponse *aResponse, char *aNameBuffer, uint16_t aNameBufferSize)
Obtiene el nombre del servicio asociado con una respuesta de navegación de DNS (enumeración de instancias de servicio).
otDnsClientBrowse(otInstance *aInstance, const char *aServiceName, otDnsBrowseCallback aCallback, void *aContext, const otDnsQueryConfig *aConfig)
Envía una consulta de navegación de DNS (enumeración de instancias de servicio) para un nombre de servicio determinado.
otDnsClientGetDefaultConfig(otInstance *aInstance)
Obtiene la configuración de consultas predeterminada actual que usa el cliente DNS.
otDnsClientResolveAddress(otInstance *aInstance, const char *aHostName, otDnsAddressCallback aCallback, void *aContext, const otDnsQueryConfig *aConfig)
Envía una consulta de DNS de resolución de dirección para los registros AAAA (IPv6) de un nombre de host determinado.
otDnsClientResolveIp4Address(otInstance *aInstance, const char *aHostName, otDnsAddressCallback aCallback, void *aContext, const otDnsQueryConfig *aConfig)
Envía una consulta de DNS sobre la resolución de direcciones para los registros A (IPv4) de un nombre de host determinado.
otDnsClientResolveService(otInstance *aInstance, const char *aInstanceLabel, const char *aServiceName, otDnsServiceCallback aCallback, void *aContext, const otDnsQueryConfig *aConfig)
Inicia una resolución de instancia de servicio de DNS para una instancia de servicio determinada.
otDnsClientResolveServiceAndHostAddress(otInstance *aInstance, const char *aInstanceLabel, const char *aServiceName, otDnsServiceCallback aCallback, void *aContext, const otDnsQueryConfig *aConfig)
Inicia una resolución de instancia de servicio de DNS para una instancia de servicio determinada, con una posible resolución de dirección de seguimiento para el nombre de host descubierto para la instancia de servicio.
otDnsClientSetDefaultConfig(otInstance *aInstance, const otDnsQueryConfig *aConfig)
void
Establece la configuración de consultas predeterminada en el cliente DNS.
otDnsEncodeTxtData(const otDnsTxtEntry *aTxtEntries, uint16_t aNumTxtEntries, uint8_t *aTxtData, uint16_t *aTxtDataLength)
Codifica una lista determinada de entradas de registro TXT (pares clave-valor) en datos TXT (con el siguiente formato especificado por RFC 6763).
otDnsGetNextTxtEntry(otDnsTxtEntryIterator *aIterator, otDnsTxtEntry *aEntry)
Analiza los datos TXT de un iterador y obtiene la siguiente entrada de registro TXT (par clave-valor).
otDnsInitTxtEntryIterator(otDnsTxtEntryIterator *aIterator, const uint8_t *aTxtData, uint16_t aTxtDataLength)
void
Inicializa un iterador de registros TXT.
otDnsIsNameCompressionEnabled(void)
bool
Indica si el modo “Compresión de nombres de DNS” está habilitado o no.
otDnsServiceResponseGetHostAddress(const otDnsServiceResponse *aResponse, const char *aHostName, uint16_t aIndex, otIp6Address *aAddress, uint32_t *aTtl)
Obtiene la dirección IPv6 del host de una respuesta de resolución de instancia de servicio de DNS.
otDnsServiceResponseGetServiceInfo(const otDnsServiceResponse *aResponse, otDnsServiceInfo *aServiceInfo)
Obtiene información para una instancia de servicio a partir de una respuesta de resolución de instancia de servicio de DNS.
otDnsServiceResponseGetServiceName(const otDnsServiceResponse *aResponse, char *aLabelBuffer, uint8_t aLabelBufferSize, char *aNameBuffer, uint16_t aNameBufferSize)
Obtiene el nombre de la instancia de servicio asociado con una respuesta de resolución de instancia de servicio de DNS.
otDnsSetNameCompressionEnabled(bool aEnabled)
void
Habilita o inhabilita el modo “Compresión de nombres de DNS”.

Structs

otDnsQueryConfig

Representa una configuración de consulta de DNS.

otDnsServiceInfo

Proporciona información para una instancia de servicio de DNS.

otDnsTxtEntry

Representa una entrada de registro TXT que representa un par clave-valor (RFC 6763, sección 6.3).

otDnsTxtEntryIterator

Representa un iterador para entradas de registro TXT (pares clave-valor).

Enumeraciones

otDnsNat64Mode

 otDnsNat64Mode

Type representa el modo NAT64 en una otDnsQueryConfig.

El modo NAT64 indica si se permite o no la traducción de direcciones NAT64 durante la resolución de la dirección del cliente de DNS. Este modo solo se usa cuando OPENTHREAD_CONFIG_DNS_CLIENT_NAT64_ENABLE está habilitado.

Propiedades
OT_DNS_NAT64_ALLOW

Permitir la traducción de direcciones NAT64 durante la resolución de la dirección del cliente DNS

OT_DNS_NAT64_DISALLOW

No permitir la traducción de direcciones NAT64 durante la resolución de la dirección del cliente DNS

OT_DNS_NAT64_UNSPECIFIED

No se especificó el modo NAT64. Usa el modo NAT64 predeterminado.

otDnsRecursionFlag

 otDnsRecursionFlag

El tipo representa la marca "Recursion Desired" (RD) en un otDnsQueryConfig.

Propiedades
OT_DNS_FLAG_NO_RECURSION

Indica que el servidor de nombres de DNS no puede resolver la consulta de manera recurrente.

OT_DNS_FLAG_RECURSION_DESIRED

Indica que el servidor de nombres de DNS puede resolver la consulta de manera recursiva.

OT_DNS_FLAG_UNSPECIFIED

Indica que no se especificó la marca.

otDnsServiceMode

 otDnsServiceMode

Type representa el modo de resolución del servicio en una otDnsQueryConfig.

Solo se usa durante la resolución otDnsClientResolveService() del servicio de cliente de DNS. Determina qué tipos de registros consultar.

Propiedades
OT_DNS_SERVICE_MODE_SRV

Consulta solo para registro SRV.

OT_DNS_SERVICE_MODE_SRV_TXT

Consulta registros SRV y TXT en el mismo mensaje.

OT_DNS_SERVICE_MODE_SRV_TXT_OPTIMIZE

Primero, realiza consultas juntas para TXT/SRV. Si falla, haz una consulta por separado.

OT_DNS_SERVICE_MODE_SRV_TXT_SEPARATE

Consulta en paralelo para SRV y TXT con mensajes separados.

OT_DNS_SERVICE_MODE_TXT

Consulta solo el registro TXT.

OT_DNS_SERVICE_MODE_UNSPECIFIED

No se especificó el modo. Usar el modo de servicio predeterminado

otDnsTransportProto

 otDnsTransportProto

Type representa el protocolo de transporte de DNS en un otDnsQueryConfig.

Este OT_DNS_TRANSPORT_TCP solo se admite cuando OPENTHREAD_CONFIG_DNS_CLIENT_OVER_TCP_ENABLE está habilitado.

Propiedades
OT_DNS_TRANSPORT_TCP

La consulta de DNS se debe enviar a través de UDP.

OT_DNS_TRANSPORT_UDP

No se especificó el transporte de DNS.

Typedefs

otDnsAddressCallback

void(* otDnsAddressCallback)(otError aError, const otDnsAddressResponse *aResponse, void *aContext)

Se llama al puntero cuando se recibe una respuesta DNS para una consulta de resolución de dirección.

Dentro de esta devolución de llamada, el usuario puede usar funciones otDnsAddressResponseGet{Item}() junto con el puntero aResponse para obtener más información sobre la respuesta.

El puntero aResponse solo se puede usar dentro de esta devolución de llamada y, después de mostrarla desde esta función, no será válido, por lo que el usuario NO DEBE retener el puntero aResponse para usarlo más adelante.

El aError puede tener lo siguiente:

Detalles
Parámetros
[in] aError
Es el resultado de la transacción de DNS.
[in] aResponse
Un puntero a la respuesta (siempre es no NULL).
[in] aContext
Un puntero para el contexto específico de la aplicación.

  • OT_ERROR_NONE Se recibió correctamente una respuesta.
  • OT_ERROR_ABORT La pila anuló una transacción de DNS.
  • OT_ERROR_RESPONSE_TIMEOUT No se recibió ninguna respuesta de DNS en el tiempo de espera.

Si el servidor rechaza la solicitud de resolución de dirección, el código de error del servidor se asigna de la siguiente manera:

  • (0) NOERROR correcto (sin condición de error) -> OT_ERROR_NONE
  • (1) El servidor de FORMERR no puede interpretarse debido a un error de formato -> OT_ERROR_PARSE.
  • (2) El servidor SERVFAIL experimentó una falla interna -> OT_ERROR_FAILED
  • (3) Nombre de NXDOMAIN que debería existir, no existe -> OT_ERROR_NOT_FOUND
  • (4) El servidor NOTIMP no admite el tipo de consulta (OpCode) -> OT_ERROR_NOT_IMPLEMENTED
  • (5) REFused El servidor se rechazó por motivos de política o seguridad -> OT_ERROR_SECURITY
  • (6) YXDOMAIN Algunos nombres que no deberían existir, sí existen -> OT_ERROR_DUPLICATED.
  • (7) YXRRSET Algunos RRset que no deberían existir, sí existen -> OT_ERROR_DUPLICATED.
  • (8) NXRRSET Algunos RRset que deberían existir, no existen -> OT_ERROR_NOT_FOUND.
  • (9) El servicio NOTAUTH no es autorizado para la zona -> OT_ERROR_SECURITY.
  • (10) NOTZONE Un nombre no está en la zona -> OT_ERROR_PARSE.
  • (20) BADNAME Nombre incorrecto -> OT_ERROR_PARSE
  • (21) BADALG Algoritmo incorrecto -> OT_ERROR_SECURITY
  • (22) BADTRUN Truncamiento incorrecto -> OT_ERROR_PARSE
  • Otros códigos de respuesta -> OT_ERROR_FAILED

otDnsAddressResponse

struct otDnsAddressResponse otDnsAddressResponse

Representación opaca de una respuesta a una consulta de DNS de resolución de dirección.

Los punteros a la instancia de este tipo se proporcionan desde la devolución de llamada otDnsAddressCallback.

otDnsBrowseCallback

void(* otDnsBrowseCallback)(otError aError, const otDnsBrowseResponse *aResponse, void *aContext)

Se llama al puntero cuando se recibe una respuesta DNS para una consulta de navegación (Enumeración de instancias de servicio).

Dentro de esta devolución de llamada, el usuario puede usar funciones otDnsBrowseResponseGet{Item}() junto con el puntero aResponse para obtener más información sobre la respuesta.

El puntero aResponse solo se puede usar dentro de esta devolución de llamada y, después de mostrarla desde esta función, no será válido, por lo que el usuario NO DEBE retener el puntero aResponse para usarlo más adelante.

Para obtener una lista completa de los valores posibles de aError, consulta otDnsAddressCallback().

Detalles
Parámetros
[in] aError
Es el resultado de la transacción de DNS.
[in] aResponse
Un puntero a la respuesta (siempre es no NULL).
[in] aContext
Un puntero para el contexto específico de la aplicación.

otDnsBrowseResponse

struct otDnsBrowseResponse otDnsBrowseResponse

Representación opaca de una respuesta a una consulta de DNS de navegación (enumeración de instancias de servicio).

Los punteros a la instancia de este tipo se proporcionan desde la devolución de llamada otDnsBrowseCallback.

otDnsQueryConfig

struct otDnsQueryConfig otDnsQueryConfig

Representa una configuración de consulta de DNS.

Cualquier campo de esta estructura se puede establecer en cero para indicar que no está especificado. La forma en que se tratan los campos sin especificar está determinada por la función que usa la instancia de otDnsQueryConfig.

otDnsServiceCallback

void(* otDnsServiceCallback)(otError aError, const otDnsServiceResponse *aResponse, void *aContext)

Se llama al puntero cuando se recibe una respuesta DNS para una consulta de resolución de instancia de servicio.

Dentro de esta devolución de llamada, el usuario puede usar funciones otDnsServiceResponseGet{Item}() junto con el puntero aResponse para obtener más información sobre la respuesta.

El puntero aResponse solo se puede usar dentro de esta devolución de llamada y, después de mostrarla desde esta función, no será válido, por lo que el usuario NO DEBE retener el puntero aResponse para usarlo más adelante.

Para obtener una lista completa de los valores posibles de aError, consulta otDnsAddressCallback().

Detalles
Parámetros
[in] aError
Es el resultado de la transacción de DNS.
[in] aResponse
Un puntero a la respuesta (siempre es no NULL).
[in] aContext
Un puntero para el contexto específico de la aplicación.

otDnsServiceInfo

struct otDnsServiceInfo otDnsServiceInfo

Proporciona información para una instancia de servicio de DNS.

otDnsServiceResponse

struct otDnsServiceResponse otDnsServiceResponse

Representación opaca de una respuesta a una consulta de DNS de resolución de instancia de servicio.

Los punteros a la instancia de este tipo se proporcionan desde la devolución de llamada otDnsAddressCallback.

otDnsTxtEntry

struct otDnsTxtEntry otDnsTxtEntry

Representa una entrada de registro TXT que representa un par clave-valor (RFC 6763, sección 6.3).

Los búferes de string a los que apuntan mKey y mValue DEBEN persistir y permanecer sin cambios después de que una instancia de esa estructura se pase a OpenThread (como parte de la instancia otSrpClientService).

Se usa un array de entradas otDnsTxtEntry en otSrpClientService para especificar el registro TXT completo (una lista de entradas).

otDnsTxtEntryIterator

struct otDnsTxtEntryIterator otDnsTxtEntryIterator

Representa un iterador para entradas de registro TXT (pares clave-valor).

Los campos de datos de esta estructura están diseñados para que los use OpenThread Core, y el llamador no debe leerlos ni modificarlos.

remotas

otDnsAddressResponseGetAddress

otError otDnsAddressResponseGetAddress(
  const otDnsAddressResponse *aResponse,
  uint16_t aIndex,
  otIp6Address *aAddress,
  uint32_t *aTtl
)

Obtiene una dirección IPv6 asociada con una respuesta DNS de resolución de dirección.

Solo DEBE usarse desde otDnsAddressCallback.

La respuesta puede incluir varios registros de direcciones IPv6. aIndex se puede usar para iterar en la lista de direcciones. El índice cero obtiene la primera dirección y así sucesivamente. Cuando llegamos al final de la lista, se muestra OT_ERROR_NOT_FOUND.

Detalles
Parámetros
[in] aResponse
Un puntero para la respuesta.
[in] aIndex
El índice de registro de direcciones que se recuperará.
[out] aAddress
Un puntero a una dirección IPv6 para generar la dirección (NO DEBE ser NULO).
[out] aTtl
Un puntero a un uint32_t para generar el TTL de la dirección. Puede ser NULO si el emisor no desea obtener el TTL.
Valores que se muestran
OT_ERROR_NONE
Se leyó correctamente la dirección.
OT_ERROR_NOT_FOUND
No hay registros de direcciones en aResponse a la(s) aIndex.
OT_ERROR_PARSE
No se pudieron analizar los registros en aResponse.
OT_ERROR_INVALID_STATE
Sin prefijo NAT64 (aplicable solo cuando se permite NAT64)

otDnsAddressResponseGetHostName

otError otDnsAddressResponseGetHostName(
  const otDnsAddressResponse *aResponse,
  char *aNameBuffer,
  uint16_t aNameBufferSize
)

Obtiene el nombre de host completo asociado con una respuesta DNS de resolución de dirección.

Solo DEBE usarse desde otDnsAddressCallback.

Detalles
Parámetros
[in] aResponse
Un puntero para la respuesta.
[out] aNameBuffer
Un búfer para cargar una matriz de caracteres para obtener el nombre de host completo (NO DEBE ser NULO).
[in] aNameBufferSize
El tamaño de aNameBuffer
Valores que se muestran
OT_ERROR_NONE
Se leyó correctamente el nombre completo del host.
OT_ERROR_NO_BUFS
El nombre no cabe en aNameBuffer.

otDnsBrowseResponseGetHostAddress

otError otDnsBrowseResponseGetHostAddress(
  const otDnsBrowseResponse *aResponse,
  const char *aHostName,
  uint16_t aIndex,
  otIp6Address *aAddress,
  uint32_t *aTtl
)

Obtiene la dirección IPv6 del host a partir de una respuesta del navegador DNS (enumeración de la instancia de servicio).

Solo DEBE usarse desde otDnsBrowseCallback.

La respuesta puede incluir cero o más registros de direcciones IPv6. aIndex se puede usar para iterar en la lista de direcciones. El índice cero obtiene la primera dirección y así sucesivamente. Cuando llegamos al final de la lista, se muestra OT_ERROR_NOT_FOUND.

Detalles
Parámetros
[in] aResponse
Un puntero para la respuesta.
[in] aHostName
El nombre de host para obtener la dirección (NO DEBE ser NULO).
[in] aIndex
El índice de registro de direcciones que se recuperará.
[out] aAddress
Un puntero a una dirección IPv6 para generar la dirección (NO DEBE ser NULO).
[out] aTtl
Un puntero a un uint32_t para generar el TTL de la dirección. Puede ser NULO si el emisor no desea obtener el TTL.
Valores que se muestran
OT_ERROR_NONE
Se leyó correctamente la dirección.
OT_ERROR_NOT_FOUND
No hay registros de dirección para aHostname en aResponse a la(s) aIndex.
OT_ERROR_PARSE
No se pudieron analizar los registros en aResponse.

otDnsBrowseResponseGetServiceInfo

otError otDnsBrowseResponseGetServiceInfo(
  const otDnsBrowseResponse *aResponse,
  const char *aInstanceLabel,
  otDnsServiceInfo *aServiceInfo
)

Obtiene información de una instancia de servicio desde una respuesta de navegación de DNS (enumeración de instancias de servicio).

Solo DEBE usarse desde otDnsBrowseCallback.

Una respuesta de DNS de navegación puede incluir registros SRV, TXT y AAAA para las instancias de servicio que se enumeran. Este es un requisito DEBIDO y no obligatorio, y no es necesario que los servidores o agentes de resolución lo proporcionen. Esta función intenta recuperar esta información de una instancia de servicio determinada cuando está disponible.

  • Si no se encuentra ningún registro SRV que coincida en aResponse, se muestra OT_ERROR_NOT_FOUND. En este caso, no se leen registros adicionales (sin TXT ni AAAA).
  • Si se encuentra un registro SRV coincidente en aResponse, se actualiza aServiceInfo y se muestra OT_ERROR_NONE.
  • Si no se encuentra ningún registro TXT que coincida en aResponse, mTxtDataSize en aServiceInfo se establece en cero.
  • Si la longitud de los datos TXT es mayor que mTxtDataSize, se lee de forma parcial y mTxtDataTruncated se establece como verdadero.
  • Si no se encuentra ningún registro AAAA que coincida en aResponse, mHostAddress is set to all zero or unspecified address.
  • If there are multiple AAAA records for the host name in @p aResponse,mHostAddressis set to the first one. The other addresses can be retrieved usingotDnsBrowseResponseGetHostAddress().

Detalles
Parámetros
[in] aResponse
Un puntero para la respuesta.
[in] aInstanceLabel
La etiqueta de la instancia de servicio (NO DEBE ser NULA).
[out] aServiceInfo
Un ServiceInfo para generar la información de la instancia de servicio (NO DEBE ser NULO).
Valores que se muestran
OT_ERROR_NONE
Se leyó la información de la instancia de servicio. Se actualizó aServiceInfo.
OT_ERROR_NOT_FOUND
No se encontró ningún registro SRV que coincida con aInstanceLabel.
OT_ERROR_NO_BUFS
El nombre del host o los datos TXT no pudieron caber en los búferes especificados.
OT_ERROR_PARSE
No se pudieron analizar los registros en aResponse.

otDnsBrowseResponseGetServiceInstance

otError otDnsBrowseResponseGetServiceInstance(
  const otDnsBrowseResponse *aResponse,
  uint16_t aIndex,
  char *aLabelBuffer,
  uint8_t aLabelBufferSize
)

Obtiene una instancia de servicio asociada con una respuesta de navegación de DNS (enumeración de instancias de servicio).

Solo DEBE usarse desde otDnsBrowseCallback.

La respuesta puede incluir varios registros de instancias de servicio. aIndex se puede usar para iterar a través de la lista. El índice cero muestra el primer registro. Cuando llegamos al final de la lista, se muestra OT_ERROR_NOT_FOUND.

Ten en cuenta que esta función obtiene la etiqueta de instancia de servicio y no el nombre completo de la instancia de servicio, que tiene el formato ...

Detalles
Parámetros
[in] aResponse
Un puntero para la respuesta.
[in] aIndex
El índice de registro de instancias de servicio que se recuperará.
[out] aLabelBuffer
Un array de búfer para caracteres destinado a generar la etiqueta de instancia de servicio (NO DEBE ser NULO).
[in] aLabelBufferSize
El tamaño de aLabelBuffer
Valores que se muestran
OT_ERROR_NONE
Se leyó correctamente la instancia de servicio.
OT_ERROR_NO_BUFS
El nombre no cabe en aNameBuffer.
OT_ERROR_NOT_FOUND
No hay ningún registro de instancia de servicio en aResponse a la(s) aIndex.
OT_ERROR_PARSE
No se pudieron analizar los registros en aResponse.

otDnsBrowseResponseGetServiceName

otError otDnsBrowseResponseGetServiceName(
  const otDnsBrowseResponse *aResponse,
  char *aNameBuffer,
  uint16_t aNameBufferSize
)

Obtiene el nombre del servicio asociado con una respuesta de navegación de DNS (enumeración de instancias de servicio).

Solo DEBE usarse desde otDnsBrowseCallback.

Detalles
Parámetros
[in] aResponse
Un puntero para la respuesta.
[out] aNameBuffer
Un array de búfer para caracteres que genera el nombre del servicio (NO DEBE ser NULO).
[in] aNameBufferSize
El tamaño de aNameBuffer
Valores que se muestran
OT_ERROR_NONE
Se leyó correctamente el nombre del servicio.
OT_ERROR_NO_BUFS
El nombre no cabe en aNameBuffer.

otDnsClientBrowse

otError otDnsClientBrowse(
  otInstance *aInstance,
  const char *aServiceName,
  otDnsBrowseCallback aCallback,
  void *aContext,
  const otDnsQueryConfig *aConfig
)

Envía una consulta de navegación de DNS (enumeración de instancias de servicio) para un nombre de servicio determinado.

Está disponible cuando se habilita OPENTHREAD_CONFIG_DNS_CLIENT_SERVICE_DISCOVERY_ENABLE.

El aConfig puede ser NULO. En este caso, se usará la configuración predeterminada (de otDnsClientGetDefaultConfig()) como la configuración para esta consulta. En un aConfig que no es NULO, algunos de los campos pueden dejarse sin especificar (valor cero). Los campos sin especificar se reemplazan por los valores de la configuración predeterminada.

Detalles
Parámetros
[in] aInstance
Un puntero para una instancia de OpenThread.
[in] aServiceName
El nombre del servicio que se va a consultar (NO DEBE ser NULO).
[in] aCallback
Un puntero de función al que se debe llamar en la recepción de la respuesta o cuando se agota el tiempo de espera.
[in] aContext
Un puntero para información de contexto arbitraria.
[in] aConfig
Un puntero para la configuración que se usará en esta consulta.
Valores que se muestran
OT_ERROR_NONE
La consulta se envió correctamente. Se invocará aCallback para informar el estado.
OT_ERROR_NO_BUFS
No hay suficiente búfer para preparar y enviar la consulta.

otDnsClientGetDefaultConfig

const otDnsQueryConfig * otDnsClientGetDefaultConfig(
  otInstance *aInstance
)

Obtiene la configuración de consultas predeterminada actual que usa el cliente DNS.

Cuando se inicia la pila de OpenThread, la configuración predeterminada de la consulta de DNS se determina a partir de un conjunto de opciones de configuración de OT, como OPENTHREAD_CONFIG_DNS_CLIENT_DEFAULT_SERVER_IP6_ADDRESS, _DEFAULT_SERVER_PORT, _DEFAULT_RESPONSE_TIMEOUT, etc. (consulta config/dns_client.h para ver todas las opciones de configuración relacionadas).

Detalles
Parámetros
[in] aInstance
Un puntero para una instancia de OpenThread.
Qué muestra
Un puntero a la configuración predeterminada actual que usa el cliente DNS.

otDnsClientResolveAddress

otError otDnsClientResolveAddress(
  otInstance *aInstance,
  const char *aHostName,
  otDnsAddressCallback aCallback,
  void *aContext,
  const otDnsQueryConfig *aConfig
)

Envía una consulta de DNS de resolución de dirección para los registros AAAA (IPv6) de un nombre de host determinado.

El aConfig puede ser NULO. En este caso, se usará la configuración predeterminada (de otDnsClientGetDefaultConfig()) como la configuración para esta consulta. En un aConfig que no es NULO, algunos de los campos pueden dejarse sin especificar (valor cero). Los campos sin especificar se reemplazan por los valores de la configuración predeterminada.

Detalles
Parámetros
[in] aInstance
Un puntero para una instancia de OpenThread.
[in] aHostName
El nombre del host para el cual se debe consultar la dirección (NO DEBE ser NULO).
[in] aCallback
Un puntero de función al que se debe llamar en la recepción de la respuesta o cuando se agota el tiempo de espera.
[in] aContext
Un puntero para información de contexto arbitraria.
[in] aConfig
Un puntero para la configuración que se usará en esta consulta.
Valores que se muestran
OT_ERROR_NONE
La consulta se envió correctamente. Se invocará aCallback para informar el estado.
OT_ERROR_NO_BUFS
No hay suficiente búfer para preparar y enviar la consulta.
OT_ERROR_INVALID_ARGS
El nombre de host no tiene un formato válido.
OT_ERROR_INVALID_STATE
No se puede enviar la consulta porque la interfaz Thread no está activa.

otDnsClientResolveIp4Address

otError otDnsClientResolveIp4Address(
  otInstance *aInstance,
  const char *aHostName,
  otDnsAddressCallback aCallback,
  void *aContext,
  const otDnsQueryConfig *aConfig
)

Envía una consulta de DNS sobre la resolución de direcciones para los registros A (IPv4) de un nombre de host determinado.

Requiere y está disponible cuando se habilita OPENTHREAD_CONFIG_DNS_CLIENT_NAT64_ENABLE.

Cuando se recibe una respuesta correcta, las direcciones se muestran desde aCallback como versiones traducidas de IPv6 NAT64 de las direcciones IPv4 de la respuesta de la consulta.

El aConfig puede ser NULO. En este caso, se usará la configuración predeterminada (de otDnsClientGetDefaultConfig()) como la configuración para esta consulta. En un aConfig que no es NULO, algunos de los campos pueden dejarse sin especificar (valor cero). Los campos sin especificar se reemplazan por los valores de la configuración predeterminada.

Detalles
Parámetros
[in] aInstance
Un puntero para una instancia de OpenThread.
[in] aHostName
El nombre del host para el cual se debe consultar la dirección (NO DEBE ser NULO).
[in] aCallback
Un puntero de función al que se debe llamar en la recepción de la respuesta o cuando se agota el tiempo de espera.
[in] aContext
Un puntero para información de contexto arbitraria.
[in] aConfig
Un puntero para la configuración que se usará en esta consulta.
Valores que se muestran
OT_ERROR_NONE
La consulta se envió correctamente. Se invocará aCallback para informar el estado.
OT_ERROR_NO_BUFS
No hay suficiente búfer para preparar y enviar la consulta.
OT_ERROR_INVALID_ARGS
El nombre de host no tiene un formato válido o NAT64 no está habilitado en la configuración.
OT_ERROR_INVALID_STATE
No se puede enviar la consulta porque la interfaz Thread no está activa.

otDnsClientResolveService

otError otDnsClientResolveService(
  otInstance *aInstance,
  const char *aInstanceLabel,
  const char *aServiceName,
  otDnsServiceCallback aCallback,
  void *aContext,
  const otDnsQueryConfig *aConfig
)

Inicia una resolución de instancia de servicio de DNS para una instancia de servicio determinada.

Está disponible cuando se habilita OPENTHREAD_CONFIG_DNS_CLIENT_SERVICE_DISCOVERY_ENABLE.

El aConfig puede ser NULO. En este caso, se usará la configuración predeterminada (de otDnsClientGetDefaultConfig()) como la configuración para esta consulta. En un aConfig que no es NULO, algunos de los campos pueden dejarse sin especificar (valor cero). Los campos sin especificar se reemplazan por los valores de la configuración predeterminada.

La función envía consultas sobre registros SRV o TXT para la instancia de servicio determinada. El campo mServiceMode de otDnsQueryConfig determina qué registros consultar (solo SRV, solo TXT o ambos SRV y TXT) y cómo realizar la consulta (juntos en el mismo mensaje, por separado en paralelo o en modo optimizado, en el que el cliente intentará primero el mismo mensaje y, luego, por separado si no obtiene una respuesta).

El registro SRV proporciona información sobre el puerto, la prioridad y el peso del servicio junto con el nombre de host asociado con la instancia de servicio. Esta función NO realiza la resolución de direcciones para el nombre de host descubierto en el registro SRV. El servidor o el agente de resolución pueden proporcionar registros AAAA/A para el nombre del host en la sección Datos adicionales de la respuesta a la consulta SRV/TXT. Esta información se puede recuperar con otDnsServiceResponseGetServiceInfo() en otDnsServiceCallback. Los usuarios de esta API NO DEBEN dar por sentado que la dirección del host siempre estará disponible a partir de otDnsServiceResponseGetServiceInfo().

Detalles
Parámetros
[in] aInstance
Un puntero para una instancia de OpenThread.
[in] aInstanceLabel
La etiqueta de la instancia de servicio.
[in] aServiceName
El nombre del servicio (junto con aInstanceLabel forma el nombre completo de la instancia).
[in] aCallback
Un puntero de función al que se debe llamar en la recepción de la respuesta o cuando se agota el tiempo de espera.
[in] aContext
Un puntero para información de contexto arbitraria.
[in] aConfig
Un puntero para la configuración que se usará en esta consulta.
Valores que se muestran
OT_ERROR_NONE
La consulta se envió correctamente. Se invocará aCallback para informar el estado.
OT_ERROR_NO_BUFS
No hay suficiente búfer para preparar y enviar la consulta.
OT_ERROR_INVALID_ARGS
aInstanceLabel es NULO.

otDnsClientResolveServiceAndHostAddress

otError otDnsClientResolveServiceAndHostAddress(
  otInstance *aInstance,
  const char *aInstanceLabel,
  const char *aServiceName,
  otDnsServiceCallback aCallback,
  void *aContext,
  const otDnsQueryConfig *aConfig
)

Inicia una resolución de instancia de servicio de DNS para una instancia de servicio determinada, con una posible resolución de dirección de seguimiento para el nombre de host descubierto para la instancia de servicio.

Está disponible cuando se habilita OPENTHREAD_CONFIG_DNS_CLIENT_SERVICE_DISCOVERY_ENABLE.

El aConfig puede ser NULO. En este caso, se usará la configuración predeterminada (de otDnsClientGetDefaultConfig()) como la configuración para esta consulta. En un aConfig que no es NULO, algunos de los campos pueden dejarse sin especificar (valor cero). Los campos sin especificar se reemplazan por los valores de la configuración predeterminada. Esta función no se puede usar con mServiceMode en la configuración de DNS establecida como OT_DNS_SERVICE_MODE_TXT (es decir, para consultar solo el registro TXT) y mostrará OT_ERROR_INVALID_ARGS.

Se comporta de manera similar a otDnsClientResolveService() cuando envía consultas para registros SRV y TXT. Sin embargo, si el servidor o el agente de resolución no proporcionan registros AAAA/A para el nombre del host en la respuesta a la consulta SRV (en la sección Datos adicionales), se realizará la resolución de nombres de host (enviando una consulta AAAA) para el nombre de host descubierto del registro SRV. Se invoca la devolución de llamada aCallback cuando se reciben respuestas para todas las consultas (es decir, cuando finalizan las resoluciones de dirección del host y del servicio).

Detalles
Parámetros
[in] aInstance
Un puntero para una instancia de OpenThread.
[in] aInstanceLabel
La etiqueta de la instancia de servicio.
[in] aServiceName
El nombre del servicio (junto con aInstanceLabel forma el nombre completo de la instancia).
[in] aCallback
Un puntero de función al que se debe llamar en la recepción de la respuesta o cuando se agota el tiempo de espera.
[in] aContext
Un puntero para información de contexto arbitraria.
[in] aConfig
Un puntero para la configuración que se usará en esta consulta.
Valores que se muestran
OT_ERROR_NONE
La consulta se envió correctamente. Se invocará aCallback para informar el estado.
OT_ERROR_NO_BUFS
No hay suficiente búfer para preparar y enviar la consulta.
OT_ERROR_INVALID_ARGS
aInstanceLabel es NULL, o aConfig no es válido.

otDnsClientSetDefaultConfig

void otDnsClientSetDefaultConfig(
  otInstance *aInstance,
  const otDnsQueryConfig *aConfig
)

Establece la configuración de consultas predeterminada en el cliente DNS.

El aConfig puede ser NULO. En este caso, la configuración predeterminada se establecerá con los valores predeterminados de las opciones de configuración de OT OPENTHREAD_CONFIG_DNS_CLIENT_DEFAULT_{}. Esto restablece la configuración de consulta predeterminada a la configuración cuando se inicia la pila de OpenThread.

En un aConfig que no es NULL, el llamador puede optar por dejar algunos de los campos de la instancia otDnsQueryConfig sin especificar (valor cero). Los campos sin especificar se reemplazan por las definiciones de la opción de configuración de OT correspondientes OPENTHREAD_CONFIG_DNS_CLIENT_DEFAULT_{} para formar la configuración de consulta predeterminada.

Cuando se habilita OPENTHREAD_CONFIG_DNS_CLIENT_DEFAULT_SERVER_ADDRESS_AUTO_SET_ENABLE, el cliente DNS establece y actualiza automáticamente la dirección IPv6 del servidor en la configuración predeterminada. Esto se hace solo cuando el usuario no lo establece o no lo especifica explícitamente. Este comportamiento requiere que el cliente de SRP y su función de inicio automático estén habilitadas. Luego, el cliente SRP supervisará los datos de red de Thread en busca de entradas del servicio de DNS/SRP para seleccionar un servidor de SRP. La dirección del servidor de SRP seleccionada también se establece como la dirección del servidor DNS en la configuración predeterminada.

Detalles
Parámetros
[in] aInstance
Un puntero para una instancia de OpenThread.
[in] aConfig
Un puntero a la nueva configuración de consulta para usar como predeterminada.

otDnsEncodeTxtData

otError otDnsEncodeTxtData(
  const otDnsTxtEntry *aTxtEntries,
  uint16_t aNumTxtEntries,
  uint8_t *aTxtData,
  uint16_t *aTxtDataLength
)

Codifica una lista determinada de entradas de registro TXT (pares clave-valor) en datos TXT (con el siguiente formato especificado por RFC 6763).

Detalles
Parámetros
[in] aTxtEntries
Es un puntero a un array de otDnsTxtEntry.
[in] aNumTxtEntries
Cantidad de entradas en el array aTxtEntries.
[out] aTxtData
Un puntero a un búfer para generar los datos TXT codificados.
[in,out] aTxtDataLength
En la entrada, tamaño del búfer aTxtData. En el resultado, la longitud de los datos TXT codificados.
Valores que se muestran
OT_ERROR_NONE
Los datos TXT codificados correctamente, se actualizan aTxtData y aTxtDataLength.
OT_ERROR_INVALID_ARGS
El aTxtEntries no es válido.
OT_ERROR_NO_BUS
No se pudieron ajustar los datos codificados en el búfer aTxtData con su aTxtDataLength.

otDnsGetNextTxtEntry

otError otDnsGetNextTxtEntry(
  otDnsTxtEntryIterator *aIterator,
  otDnsTxtEntry *aEntry
)

Analiza los datos TXT de un iterador y obtiene la siguiente entrada de registro TXT (par clave-valor).

aIterator se DEBE inicializar con otDnsInitTxtEntryIterator() antes de llamar a esta función, y el búfer de datos TXT que se usa para inicializar el iterador DEBE permanecer y permanecer sin cambios. De lo contrario, el comportamiento de esta función no está definido.

Si la longitud de la string de clave analizada es menor o igual que OT_DNS_TXT_KEY_ITER_MAX_LENGTH, la string de clave se muestra en mKey, en aEntry. Pero si la clave es más larga, mKey se establece en NULL y toda la string de entrada TXT codificada se muestra en mValue y mValueLength.

Detalles
Parámetros
[in] aIterator
Un puntero al iterador (NO DEBE ser NULO).
[out] aEntry
Un puntero a una estructura otDnsTxtEntry para generar la entrada analizada o de lectura (NO DEBE ser NULA).
Valores que se muestran
OT_ERROR_NONE
Se analizó correctamente la siguiente entrada. Se actualizó aEntry.
OT_ERROR_NOT_FOUND
No hay más entradas en los datos TXT.
OT_ERROR_PARSE
Los datos TXT de aIterator no tienen el formato correcto.

otDnsInitTxtEntryIterator

void otDnsInitTxtEntryIterator(
  otDnsTxtEntryIterator *aIterator,
  const uint8_t *aTxtData,
  uint16_t aTxtDataLength
)

Inicializa un iterador de registros TXT.

El puntero de búfer aTxtData y su contenido DEBEN persistir y permanecer sin cambios mientras se usa el objeto aIterator.

Detalles
Parámetros
[in] aIterator
Un puntero al iterador que se va a inicializar (NO DEBE ser NULL).
[in] aTxtData
Un puntero para el búfer que contiene los datos TXT codificados.
[in] aTxtDataLength
La longitud (cantidad de bytes) de aTxtData.

otDnsIsNameCompressionEnabled

bool otDnsIsNameCompressionEnabled(
  void
)

Indica si el modo “Compresión de nombres de DNS” está habilitado o no.

Está destinado solo para pruebas y está disponible cuando se habilita la configuración de OPENTHREAD_CONFIG_REFERENCE_DEVICE_ENABLE.

Detalles
Qué muestra
TRUE si el modo "Compresión de nombres de DNS" está habilitado, FALSE de lo contrario.

otDnsServiceResponseGetHostAddress

otError otDnsServiceResponseGetHostAddress(
  const otDnsServiceResponse *aResponse,
  const char *aHostName,
  uint16_t aIndex,
  otIp6Address *aAddress,
  uint32_t *aTtl
)

Obtiene la dirección IPv6 del host de una respuesta de resolución de instancia de servicio de DNS.

Solo DEBE usarse desde otDnsServiceCallback.

La respuesta puede incluir cero o más registros de direcciones IPv6. aIndex se puede usar para iterar en la lista de direcciones. El índice cero obtiene la primera dirección y así sucesivamente. Cuando llegamos al final de la lista, se muestra OT_ERROR_NOT_FOUND.

Detalles
Parámetros
[in] aResponse
Un puntero para la respuesta.
[in] aHostName
El nombre de host para obtener la dirección (NO DEBE ser NULO).
[in] aIndex
El índice de registro de direcciones que se recuperará.
[out] aAddress
Un puntero a una dirección IPv6 para generar la dirección (NO DEBE ser NULO).
[out] aTtl
Un puntero a un uint32_t para generar el TTL de la dirección. Puede ser NULO si el emisor no desea obtener el TTL.
Valores que se muestran
OT_ERROR_NONE
Se leyó correctamente la dirección.
OT_ERROR_NOT_FOUND
No hay registros de dirección para aHostname en aResponse a la(s) aIndex.
OT_ERROR_PARSE
No se pudieron analizar los registros en aResponse.

otDnsServiceResponseGetServiceInfo

otError otDnsServiceResponseGetServiceInfo(
  const otDnsServiceResponse *aResponse,
  otDnsServiceInfo *aServiceInfo
)

Obtiene información para una instancia de servicio a partir de una respuesta de resolución de instancia de servicio de DNS.

Solo DEBE usarse desde un otDnsServiceCallback activado desde otDnsClientResolveService() o otDnsClientResolveServiceAndHostAddress().

Cuando se usa desde una devolución de llamada de otDnsClientResolveService(), la respuesta de DNS del servidor o del agente de resolución puede incluir registros AAAA en su sección de datos adicionales para el nombre de host asociado con la instancia de servicio que se resuelve. Este es un requisito NO OBLIGATORIO, por lo que los servidores o los agentes de resolución no tienen la obligación de proporcionarlo. Esta función intenta analizar los registros AAAA si se incluyen en la respuesta. Si no se incluye, mHostAddress se establece en ceros (dirección no especificada). Para resolver también la dirección del host, el usuario puede usar la función otDnsClientResolveServiceAndHostAddress() de la API del cliente de DNS, que realizará la resolución del servicio seguida de una consulta de resolución de la dirección del nombre del host (cuando el servidor o el agente de resolución no proporcionan registros AAAA en la respuesta de la consulta de SRV).

  • Si se encuentra un registro SRV coincidente en aResponse, se actualiza aServiceInfo.
  • Si no se encuentra ningún registro SRV que coincida, se muestra OT_ERROR_NOT_FOUND, a menos que la configuración de consulta para esta consulta use OT_DNS_SERVICE_MODE_TXT en mServiceMode (lo que significa que la solicitud era solo para el registro TXT). En este caso, intentamos analizar el registro SRV de la sección de datos adicionales de la respuesta (en caso de que el servidor haya proporcionado la información).
  • Si no se encuentra ningún registro TXT que coincida en aResponse, mTxtDataSize en aServiceInfo se establece en cero.
  • Si la longitud de los datos TXT es mayor que mTxtDataSize, se lee de forma parcial y mTxtDataTruncated se establece como verdadero.
  • Si no se encuentra ningún registro AAAA que coincida en aResponse, mHostAddress is set to all zero or unspecified address.
  • If there are multiple AAAA records for the host name in @p aResponse,mHostAddressis set to the first one. The other addresses can be retrieved usingotDnsServiceResponseGetHostAddress()`.

Detalles
Parámetros
[in] aResponse
Un puntero para la respuesta.
[out] aServiceInfo
Un ServiceInfo para generar la información de la instancia de servicio (NO DEBE ser NULO).
Valores que se muestran
OT_ERROR_NONE
Se leyó la información de la instancia de servicio. Se actualizó aServiceInfo.
OT_ERROR_NOT_FOUND
No se pudo encontrar un registro obligatorio en aResponse.
OT_ERROR_NO_BUFS
El nombre del host o los datos TXT no pudieron caber en los búferes especificados.
OT_ERROR_PARSE
No se pudieron analizar los registros en aResponse.

otDnsServiceResponseGetServiceName

otError otDnsServiceResponseGetServiceName(
  const otDnsServiceResponse *aResponse,
  char *aLabelBuffer,
  uint8_t aLabelBufferSize,
  char *aNameBuffer,
  uint16_t aNameBufferSize
)

Obtiene el nombre de la instancia de servicio asociado con una respuesta de resolución de instancia de servicio de DNS.

Solo DEBE usarse desde otDnsServiceCallback.

Detalles
Parámetros
[in] aResponse
Un puntero para la respuesta.
[out] aLabelBuffer
Un array de búfer para caracteres destinado a generar la etiqueta de instancia de servicio (NO DEBE ser NULO).
[in] aLabelBufferSize
El tamaño de aLabelBuffer
[out] aNameBuffer
Un array de búfer para caracteres que genera el resto del nombre del servicio (puede ser NULL si el usuario no está interesado en obtener el nombre.
[in] aNameBufferSize
El tamaño de aNameBuffer
Valores que se muestran
OT_ERROR_NONE
Se leyó correctamente el nombre del servicio.
OT_ERROR_NO_BUFS
La etiqueta o el nombre no caben en los búferes proporcionados.

otDnsSetNameCompressionEnabled

void otDnsSetNameCompressionEnabled(
  bool aEnabled
)

Habilita o inhabilita el modo “Compresión de nombres de DNS”.

La compresión de nombres de DNS está habilitada de forma predeterminada. Si se inhabilita, los nombres de DNS se agregan como completos y nunca se comprimen. Esto se aplica a los módulos cliente/servidor de DNS y SRP de OpenThread.

Está destinado solo para pruebas y está disponible cuando se habilita la configuración de OPENTHREAD_CONFIG_REFERENCE_DEVICE_ENABLE.

Ten en cuenta que, en el caso de usar OPENTHREAD_CONFIG_MULTIPLE_INSTANCE_ENABLE, este modo se aplica a todas las instancias de OpenThread (es decir, cuando se llama a esta función, se habilita o inhabilita el modo de compresión en todas las instancias de OpenThread).

Detalles
Parámetros
[in] aEnabled
TRUE para habilitar el modo “Compresión de nombres de DNS”, y FALSE para inhabilitarlo.

Macros

OT_DNS_MAX_LABEL_SIZE

 OT_DNS_MAX_LABEL_SIZE 64

Tamaño máximo de la cadena de etiqueta (incluye caracteres nulos al final de la cadena).

OT_DNS_MAX_NAME_SIZE

 OT_DNS_MAX_NAME_SIZE 255

Tamaño máximo de la cadena de nombre (incluye caracteres nulos al final de la cadena).

OT_DNS_TXT_KEY_ITER_MAX_LENGTH

 OT_DNS_TXT_KEY_ITER_MAX_LENGTH 64

La longitud máxima de la string de clave TXT es compatible con otDnsTxtEntryIterator.

OT_DNS_TXT_KEY_MAX_LENGTH

 OT_DNS_TXT_KEY_MAX_LENGTH 9

La longitud máxima recomendada de la string de clave de registro TXT (RFC 6763, sección 6.4).

OT_DNS_TXT_KEY_MIN_LENGTH

 OT_DNS_TXT_KEY_MIN_LENGTH 1

La longitud mínima de la string de clave de registro TXT (RFC 6763, sección 6.4).

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.