nl:: Weave:: Binding:: Configuration
#include <src/lib/core/WeaveBinding.h>
Proporciona una interfaz de estilo declarativo para configurar y preparar un objeto Binding.
Resumen
Cuando se configura una Vinculación, las aplicaciones deben llamar al menos a un método de cada uno de los siguientes grupos de configuración: Destino, Transporte y Seguridad. Se puede llamar a otros métodos según sea necesario para anular el comportamiento predeterminado.
Si se invocan configuraciones mutuamente excluyentes (p.ej., Transport_TCP() seguido de Transport_UDP()), gana el último llamado.
Funciones públicas |
|
---|---|
ConfigureFromMessage(const WeaveMessageInfo *aMsgInfo, const Inet::IPPacketInfo *aPacketInfo)
|
Configura la vinculación para permitir la comunicación con el remitente de un mensaje recibido.
|
DNS_Options(uint8_t dnsOptions)
|
Cuando resuelvas el nombre de host del par, usa las opciones de DNS especificadas.
|
Exchange_ResponseTimeoutMsec(uint32_t aResponseTimeoutMsec)
|
Establece el tiempo de espera de respuesta predeterminado para los contextos de intercambio creados a partir de este objeto Binding.
|
GetError(void) const
|
Muestra cualquier error que se haya producido durante la configuración de la Vinculación.
|
PrepareBinding(void)
|
Ser el proceso de preparar la vinculación para la comunicación con el intercambio de tráfico.
|
Security_AppGroupKey(uint32_t aAppGroupGlobalId, uint32_t aRootKeyId, bool aUseRotatingKey)
|
Cuando te comunicas con el par, envía y recibe mensajes encriptados para un grupo de aplicaciones de Weave especificado.
|
Security_AuthenticationMode(WeaveAuthMode aAuthMode)
|
Configura el modo de autenticación solicitado que se usará para autenticar el par.
|
Security_CASESession(void)
|
Cuando te comunicas con el par, envía y recibe mensajes encriptados con una clave de sesión CASE establecida con el nodo de intercambio de tráfico.
|
Security_EncryptionType(uint8_t aEncType)
|
Cuando te comunicas con el par, envía y recibe mensajes encriptados con el tipo de encriptación de mensajes especificado.
|
Security_Key(uint32_t aKeyId)
|
Cuando te comunicas con el par, envía y recibe mensajes encriptados con una clave especificada.
|
Security_None(void)
|
Cuando te comunicas con el par, envía y recibe mensajes sin encriptar (es decir,
|
Security_PASESession(uint8_t aPasswordSource)
|
Cuando te comunicas con el par, envía y recibe mensajes encriptados con una clave de sesión de PASE establecida con el nodo de intercambio de tráfico.
|
Security_SharedCASESession(void)
|
Cuando te comunicas con el par, envía y recibe mensajes encriptados con una clave de sesión CASE compartida que se estableció con el router principal de Nest.
|
Security_SharedCASESession(uint64_t aRouterNodeId)
|
Cuando te comunicas con el par, envía y recibe mensajes encriptados con una clave de sesión CASE compartida establecida con un nodo de router especificado.
|
Security_TAKESession()
|
Cuando te comunicas con el par, envía y recibe mensajes encriptados con una clave de sesión Take establecida con el nodo par.
|
TargetAddress_IP(nl::Inet::IPAddress aPeerAddress, uint16_t aPeerPort, InterfaceId aInterfaceId)
|
Cuando te comuniques con el par, usa la dirección IP, el puerto y la interfaz de red específicos.
|
TargetAddress_IP(const char *aHostName, uint16_t aPeerPort, InterfaceId aInterfaceId)
|
Cuando te comuniques con el par, usa el nombre de host específico, el puerto y la interfaz de la red.
|
TargetAddress_IP(const char *aHostName, size_t aHostNameLen, uint16_t aPeerPort, InterfaceId aInterfaceId)
|
Cuando te comuniques con el par, usa el nombre de host específico, el puerto y la interfaz de la red.
|
TargetAddress_WeaveFabric(uint16_t aSubnetId)
|
Cuando te comuniques con el par, usa una dirección de tejido de Weave derivada del ID de nodo del par y una subred especificada.
|
TargetAddress_WeaveService(void)
|
Cuando te comuniques con el par, usa una dirección de la estructura de servicio de Weave derivada del ID del nodo del par.
|
Target_NodeId(uint64_t aPeerNodeId)
|
Configura la vinculación para que se comunique con un ID de nodo de Weave específico.
|
Target_ServiceEndpoint(uint64_t aPeerNodeId)
|
Configura la vinculación para que se comunique con un extremo de servicio específico de Weave.
|
Transport_DefaultWRMPConfig(const WRMPConfig & aWRMPConfig)
|
Establece la configuración de WRMP predeterminada para los contextos de intercambio creados a partir de este objeto Binding.
|
Transport_ExistingConnection(WeaveConnection *apConnection)
|
Usa una conexión de Weave existente para comunicarte con el par.
|
Transport_TCP(void)
|
Usa TCP para comunicarte con el intercambio de tráfico.
|
Transport_UDP(void)
|
Usa UDP para comunicarte con el par.
|
Transport_UDP_PathMTU(uint32_t aPathMTU)
|
Establece la MTU de la ruta de acceso esperada para los paquetes UDP que se trasladan al intercambio de tráfico.
|
Transport_UDP_WRM(void)
|
Usa el protocolo de mensajería confiable de Weave cuando te comuniques con el par.
|
Funciones públicas
ConfigureFromMessage
Configuration & ConfigureFromMessage( const WeaveMessageInfo *aMsgInfo, const Inet::IPPacketInfo *aPacketInfo )
Configura la vinculación para permitir la comunicación con el remitente de un mensaje recibido.
Detalles | |||||
---|---|---|---|---|---|
Parámetros |
|
DNS_Options
Configuration & DNS_Options( uint8_t dnsOptions )
Cuando resuelvas el nombre de host del par, usa las opciones de DNS especificadas.
Detalles | |||
---|---|---|---|
Parámetros |
|
||
Qué muestra |
Es una referencia al objeto de vinculación.
|
Exchange_ResponseTimeoutMsec
Configuration & Exchange_ResponseTimeoutMsec( uint32_t aResponseTimeoutMsec )
Establece el tiempo de espera de respuesta predeterminado para los contextos de intercambio creados a partir de este objeto Binding.
Detalles | |||
---|---|---|---|
Parámetros |
|
||
Qué muestra |
Es una referencia al objeto de vinculación.
|
GetError
WEAVE_ERROR GetError( void ) const
Muestra cualquier error que se haya producido durante la configuración de la Vinculación.
PrepareBinding
WEAVE_ERROR PrepareBinding( void )
Ser el proceso de preparar la vinculación para la comunicación con el intercambio de tráfico.
Security_AppGroupKey
Configuration & Security_AppGroupKey( uint32_t aAppGroupGlobalId, uint32_t aRootKeyId, bool aUseRotatingKey )
Cuando te comunicas con el par, envía y recibe mensajes encriptados para un grupo de aplicaciones de Weave especificado.
Detalles | |||||||
---|---|---|---|---|---|---|---|
Parámetros |
|
||||||
Qué muestra |
Es una referencia al objeto Binding.
|
Security_AuthenticationMode
Configuration & Security_AuthenticationMode( WeaveAuthMode aAuthMode )
Configura el modo de autenticación solicitado que se usará para autenticar el par.
Detalles | |||
---|---|---|---|
Parámetros |
|
||
Qué muestra |
Es una referencia al objeto Binding.
|
Security_CASESession
Configuration & Security_CASESession( void )
Cuando te comunicas con el par, envía y recibe mensajes encriptados con una clave de sesión CASE establecida con el nodo de intercambio de tráfico.
Si la sesión necesaria no está disponible, se establecerá automáticamente como parte de la preparación de la vinculación.
Detalles | |
---|---|
Qué muestra |
Es una referencia al objeto de vinculación.
|
Security_EncryptionType
Configuration & Security_EncryptionType( uint8_t aEncType )
Cuando te comunicas con el par, envía y recibe mensajes encriptados con el tipo de encriptación de mensajes especificado.
Detalles | |||
---|---|---|---|
Parámetros |
|
||
Qué muestra |
Es una referencia al objeto Binding.
|
Security_Key
Configuration & Security_Key( uint32_t aKeyId )
Cuando te comunicas con el par, envía y recibe mensajes encriptados con una clave especificada.
Detalles | |||
---|---|---|---|
Parámetros |
|
||
Qué muestra |
Es una referencia al objeto Binding.
|
Security_None
Configuration & Security_None( void )
Cuando te comunicas con el par, envía y recibe mensajes sin encriptar (es decir,
no seguros).
Detalles | |
---|---|
Qué muestra |
Es una referencia al objeto de vinculación.
|
Security_PASESession
Configuration & Security_PASESession( uint8_t aPasswordSource )
Cuando te comunicas con el par, envía y recibe mensajes encriptados con una clave de sesión de PASE establecida con el nodo de intercambio de tráfico.
Si la sesión necesaria no está disponible, se establecerá automáticamente como parte de la preparación de la vinculación.
Detalles | |||
---|---|---|---|
Parámetros |
|
||
Qué muestra |
Es una referencia al objeto de vinculación.
|
Security_SharedCASESession
Configuration & Security_SharedCASESession( void )
Cuando te comunicas con el par, envía y recibe mensajes encriptados con una clave de sesión CASE compartida que se estableció con el router principal de Nest.
Si la sesión necesaria no está disponible, se establecerá automáticamente como parte de la preparación de la vinculación.
Detalles | |
---|---|
Qué muestra |
Es una referencia al objeto de vinculación.
|
Security_SharedCASESession
Configuration & Security_SharedCASESession( uint64_t aRouterNodeId )
Cuando te comunicas con el par, envía y recibe mensajes encriptados con una clave de sesión CASE compartida establecida con un nodo de router especificado.
Si la sesión necesaria no está disponible, se establecerá automáticamente como parte de la preparación de la vinculación.
Detalles | |||
---|---|---|---|
Parámetros |
|
||
Qué muestra |
Es una referencia al objeto de vinculación.
|
Security_TAKESession
Configuration & Security_TAKESession()
Cuando te comunicas con el par, envía y recibe mensajes encriptados con una clave de sesión Take establecida con el nodo par.
Si la sesión necesaria no está disponible, se establecerá automáticamente como parte de la preparación de la vinculación.
Detalles | |
---|---|
Qué muestra |
Es una referencia al objeto de vinculación.
|
TargetAddress_IP
Configuration & TargetAddress_IP( nl::Inet::IPAddress aPeerAddress, uint16_t aPeerPort, InterfaceId aInterfaceId )
Cuando te comuniques con el par, usa la dirección IP, el puerto y la interfaz de red específicos.
Detalles | |||||||
---|---|---|---|---|---|---|---|
Parámetros |
|
||||||
Qué muestra |
Es una referencia al objeto de vinculación.
|
TargetAddress_IP
Configuration & TargetAddress_IP( const char *aHostName, uint16_t aPeerPort, InterfaceId aInterfaceId )
Cuando te comuniques con el par, usa el nombre de host específico, el puerto y la interfaz de la red.
NOTA: El llamador debe asegurarse de que la string de nombre de host proporcionada siga siendo válida hasta que se complete la fase de preparación de la vinculación.
Detalles | |||||||
---|---|---|---|---|---|---|---|
Parámetros |
|
||||||
Qué muestra |
Es una referencia al objeto de vinculación.
|
TargetAddress_IP
Configuration & TargetAddress_IP( const char *aHostName, size_t aHostNameLen, uint16_t aPeerPort, InterfaceId aInterfaceId )
Cuando te comuniques con el par, usa el nombre de host específico, el puerto y la interfaz de la red.
NOTA: El llamador debe asegurarse de que la string de nombre de host proporcionada siga siendo válida hasta que se complete la fase de preparación de la vinculación.
Detalles | |||||||||
---|---|---|---|---|---|---|---|---|---|
Parámetros |
|
||||||||
Qué muestra |
Es una referencia al objeto de vinculación.
|
TargetAddress_WeaveFabric
Configuration & TargetAddress_WeaveFabric( uint16_t aSubnetId )
Cuando te comuniques con el par, usa una dirección de tejido de Weave derivada del ID de nodo del par y una subred especificada.
Detalles | |||
---|---|---|---|
Parámetros |
|
||
Qué muestra |
Es una referencia al objeto de vinculación.
|
TargetAddress_WeaveService
Configuration & TargetAddress_WeaveService( void )
Cuando te comuniques con el par, usa una dirección de la estructura de servicio de Weave derivada del ID del nodo del par.
Detalles | |
---|---|
Qué muestra |
Es una referencia al objeto de vinculación.
|
Target_NodeId
Configuration & Target_NodeId( uint64_t aPeerNodeId )
Configura la vinculación para que se comunique con un ID de nodo de Weave específico.
Detalles | |||
---|---|---|---|
Parámetros |
|
||
Qué muestra |
Es una referencia al objeto de vinculación.
|
Target_ServiceEndpoint
Configuration & Target_ServiceEndpoint( uint64_t aPeerNodeId )
Configura la vinculación para que se comunique con un extremo de servicio específico de Weave.
Si no se configura de otra manera, la dirección del par se establece en la dirección de la estructura de Weave del extremo del servicio.
Detalles | |||
---|---|---|---|
Parámetros |
|
||
Qué muestra |
Es una referencia al objeto de vinculación.
|
Transport_DefaultWRMPConfig
Configuration & Transport_DefaultWRMPConfig( const WRMPConfig & aWRMPConfig )
Establece la configuración de WRMP predeterminada para los contextos de intercambio creados a partir de este objeto Binding.
Detalles | |||
---|---|---|---|
Parámetros |
|
||
Qué muestra |
Es una referencia al objeto de vinculación.
|
Transport_ExistingConnection
Configuration & Transport_ExistingConnection( WeaveConnection *apConnection )
Usa una conexión de Weave existente para comunicarte con el par.
NOTA: El recuento de referencias del objeto de conexión aumenta cuando la preparación de la vinculación se realiza correctamente. Por lo tanto, la aplicación es responsable de garantizar que el objeto de conexión permanezca activo hasta ese momento.
Detalles | |||
---|---|---|---|
Parámetros |
|
||
Qué muestra |
Es una referencia al objeto de vinculación.
|
Transport_TCP
Configuration & Transport_TCP( void )
Usa TCP para comunicarte con el intercambio de tráfico.
Detalles | |
---|---|
Qué muestra |
Es una referencia al objeto de vinculación.
|
Transport_UDP
Configuration & Transport_UDP( void )
Usa UDP para comunicarte con el par.
Detalles | |
---|---|
Qué muestra |
Es una referencia al objeto de vinculación.
|
Transport_UDP_PathMTU
Configuration & Transport_UDP_PathMTU( uint32_t aPathMTU )
Establece la MTU de la ruta de acceso esperada para los paquetes UDP que se trasladan al intercambio de tráfico.
Para algunos protocolos de Weave, esto se usará a fin de ajustar de forma dinámica el tamaño de la carga útil del mensaje de Weave.
Detalles | |||
---|---|---|---|
Parámetros |
|
||
Qué muestra |
Es una referencia al objeto de vinculación.
|
Transport_UDP_WRM
Configuration & Transport_UDP_WRM( void )
Usa el protocolo de mensajería confiable de Weave cuando te comuniques con el par.
Detalles | |
---|---|
Qué muestra |
Es una referencia al objeto de vinculación.
|