nl:: Weave:: Binding:: Configuration
#include <src/lib/core/WeaveBinding.h>
Fournit une interface de style déclarative pour configurer et préparer un objet Binding.
Résumé
Lors de la configuration d'une liaison, les applications doivent appeler au moins une méthode à partir de chacun des groupes de configuration suivants : "Target" (Cible), "Transport" (Transport) et "Security" (Sécurité). D'autres méthodes peuvent être appelées si nécessaire pour remplacer le comportement par défaut.
Si des configurations mutuellement exclusives sont appelées (par exemple, Transport_TCP() suivi de Transport_UDP()), le dernier à être appelé l'emporte.
Fonctions publiques |
|
---|---|
ConfigureFromMessage(const WeaveMessageInfo *aMsgInfo, const Inet::IPPacketInfo *aPacketInfo)
|
Configurez la liaison pour autoriser la communication avec l'expéditeur d'un message reçu.
|
DNS_Options(uint8_t dnsOptions)
|
Lors de la résolution du nom d'hôte du pair, utilisez les options DNS spécifiées.
|
Exchange_ResponseTimeoutMsec(uint32_t aResponseTimeoutMsec)
|
Définissez le délai de réponse par défaut pour les contextes d'échange créés à partir de cet objet Binding.
|
GetError(void) const
|
Renvoyez toute erreur qui s'est produite lors de la configuration de la liaison.
|
PrepareBinding(void)
|
Processus de préparation de la liaison pour la communication avec le pair.
|
Security_AppGroupKey(uint32_t aAppGroupGlobalId, uint32_t aRootKeyId, bool aUseRotatingKey)
|
Lorsque vous communiquez avec le pair, envoyez et recevez des messages chiffrés pour un groupe d'applications Weave spécifié.
|
Security_AuthenticationMode(WeaveAuthMode aAuthMode)
|
Définissez le mode d'authentification demandé à utiliser pour authentifier le pair.
|
Security_CASESession(void)
|
Lorsque vous communiquez avec le pair, envoyez et recevez des messages chiffrés à l'aide d'une clé de session CASE établie avec le nœud pair.
|
Security_EncryptionType(uint8_t aEncType)
|
Lorsque vous communiquez avec le pair, envoyez et recevez des messages chiffrés à l'aide du type de chiffrement de message spécifié.
|
Security_Key(uint32_t aKeyId)
|
Lorsque vous communiquez avec le pair, envoyez et recevez des messages chiffrés à l'aide d'une clé spécifiée.
|
Security_None(void)
|
Lorsque vous communiquez avec le pair, envoyez et recevez des messages non chiffrés (par exemple,
|
Security_PASESession(uint8_t aPasswordSource)
|
Lorsque vous communiquez avec le pair, envoyez et recevez des messages chiffrés à l'aide d'une clé de session PASE établie avec le nœud pair.
|
Security_SharedCASESession(void)
|
Lorsque vous communiquez avec le pair, envoyez et recevez des messages chiffrés à l'aide d'une clé de session CASE partagée établie avec le routeur principal Nest.
|
Security_SharedCASESession(uint64_t aRouterNodeId)
|
Lorsque vous communiquez avec le pair, envoyez et recevez des messages chiffrés à l'aide d'une clé de session CASE partagée établie avec un nœud de routeur spécifié.
|
Security_TAKESession()
|
Lors de la communication avec le pair, envoyez et recevez des messages chiffrés à l'aide d'une clé de session Take établie avec le nœud pair.
|
TargetAddress_IP(nl::Inet::IPAddress aPeerAddress, uint16_t aPeerPort, InterfaceId aInterfaceId)
|
Lorsque vous communiquez avec le pair, utilisez l'adresse IP, le port et l'interface réseau spécifiques.
|
TargetAddress_IP(const char *aHostName, uint16_t aPeerPort, InterfaceId aInterfaceId)
|
Lorsque vous communiquez avec le pair, utilisez le nom d'hôte, le port et l'interface réseau spécifiques.
|
TargetAddress_IP(const char *aHostName, size_t aHostNameLen, uint16_t aPeerPort, InterfaceId aInterfaceId)
|
Lorsque vous communiquez avec le pair, utilisez le nom d'hôte, le port et l'interface réseau spécifiques.
|
TargetAddress_WeaveFabric(uint16_t aSubnetId)
|
Lorsque vous communiquez avec le pair, utilisez une adresse de structure Weave dérivée de l'ID de nœud du pair et d'un sous-réseau spécifié.
|
TargetAddress_WeaveService(void)
|
Lorsque vous communiquez avec le pair, utilisez une adresse de maillage de services Weave dérivée de l'ID de nœud du pair.
|
Target_NodeId(uint64_t aPeerNodeId)
|
Configurez la liaison pour communiquer avec un ID de nœud Weave spécifique.
|
Target_ServiceEndpoint(uint64_t aPeerNodeId)
|
Configurez la liaison pour communiquer avec un point de terminaison de service Weave spécifique.
|
Transport_DefaultWRMPConfig(const WRMPConfig & aWRMPConfig)
|
Définissez la configuration WRMP par défaut pour les contextes d'échange créés à partir de cet objet Binding.
|
Transport_ExistingConnection(WeaveConnection *apConnection)
|
Utilisez une connexion Weave existante pour communiquer avec le pair.
|
Transport_TCP(void)
|
Utilisez TCP pour communiquer avec le pair.
|
Transport_UDP(void)
|
Utilisez le protocole UDP pour communiquer avec le pair.
|
Transport_UDP_PathMTU(uint32_t aPathMTU)
|
Définissez le MTU de chemin attendu pour les paquets UDP acheminés vers le pair.
|
Transport_UDP_WRM(void)
|
Utilisez le protocole de messagerie fiable Weave lorsque vous communiquez avec le pair.
|
Fonctions publiques
ConfigureFromMessage
Configuration & ConfigureFromMessage( const WeaveMessageInfo *aMsgInfo, const Inet::IPPacketInfo *aPacketInfo )
Configurez la liaison pour autoriser la communication avec l'expéditeur d'un message reçu.
Détails | |||||
---|---|---|---|---|---|
Paramètres |
|
DNS_Options
Configuration & DNS_Options( uint8_t dnsOptions )
Lors de la résolution du nom d'hôte du pair, utilisez les options DNS spécifiées.
Détails | |||
---|---|---|---|
Paramètres |
|
||
Renvoie |
Référence à l'objet de liaison.
|
Exchange_ResponseTimeoutMsec
Configuration & Exchange_ResponseTimeoutMsec( uint32_t aResponseTimeoutMsec )
Définissez le délai de réponse par défaut pour les contextes d'échange créés à partir de cet objet Binding.
Détails | |||
---|---|---|---|
Paramètres |
|
||
Renvoie |
Référence à l'objet de liaison.
|
GetError
WEAVE_ERROR GetError( void ) const
Renvoyez toute erreur qui s'est produite lors de la configuration de la liaison.
PrepareBinding
WEAVE_ERROR PrepareBinding( void )
Processus de préparation de la liaison pour la communication avec le pair.
Security_AppGroupKey
Configuration & Security_AppGroupKey( uint32_t aAppGroupGlobalId, uint32_t aRootKeyId, bool aUseRotatingKey )
Lorsque vous communiquez avec le pair, envoyez et recevez des messages chiffrés pour un groupe d'applications Weave spécifié.
Détails | |||||||
---|---|---|---|---|---|---|---|
Paramètres |
|
||||||
Renvoie |
Référence à l'objet Binding.
|
Security_AuthenticationMode
Configuration & Security_AuthenticationMode( WeaveAuthMode aAuthMode )
Définissez le mode d'authentification demandé à utiliser pour authentifier le pair.
Détails | |||
---|---|---|---|
Paramètres |
|
||
Renvoie |
Référence à l'objet Binding.
|
Security_CASESession
Configuration & Security_CASESession( void )
Lorsque vous communiquez avec le pair, envoyez et recevez des messages chiffrés à l'aide d'une clé de session CASE établie avec le nœud pair.
Si la session nécessaire n'est pas disponible, elle sera établie automatiquement lors de la préparation de la liaison.
Détails | |
---|---|
Renvoie |
Référence à l'objet de liaison.
|
Security_EncryptionType
Configuration & Security_EncryptionType( uint8_t aEncType )
Lorsque vous communiquez avec le pair, envoyez et recevez des messages chiffrés à l'aide du type de chiffrement de message spécifié.
Détails | |||
---|---|---|---|
Paramètres |
|
||
Renvoie |
Référence à l'objet Binding.
|
Security_Key
Configuration & Security_Key( uint32_t aKeyId )
Lorsque vous communiquez avec le pair, envoyez et recevez des messages chiffrés à l'aide d'une clé spécifiée.
Détails | |||
---|---|---|---|
Paramètres |
|
||
Renvoie |
Référence à l'objet Binding.
|
Security_None
Configuration & Security_None( void )
Lorsque vous communiquez avec le pair, envoyez et recevez des messages non chiffrés (par exemple,
(messages non sécurisés).
Détails | |
---|---|
Renvoie |
Référence à l'objet de liaison.
|
Security_PASESession
Configuration & Security_PASESession( uint8_t aPasswordSource )
Lorsque vous communiquez avec le pair, envoyez et recevez des messages chiffrés à l'aide d'une clé de session PASE établie avec le nœud pair.
Si la session nécessaire n'est pas disponible, elle sera établie automatiquement lors de la préparation de la liaison.
Détails | |||
---|---|---|---|
Paramètres |
|
||
Renvoie |
Référence à l'objet de liaison.
|
Security_SharedCASESession
Configuration & Security_SharedCASESession( void )
Lorsque vous communiquez avec le pair, envoyez et recevez des messages chiffrés à l'aide d'une clé de session CASE partagée établie avec le routeur principal Nest.
Si la session nécessaire n'est pas disponible, elle sera établie automatiquement lors de la préparation de la liaison.
Détails | |
---|---|
Renvoie |
Référence à l'objet de liaison.
|
Security_SharedCASESession
Configuration & Security_SharedCASESession( uint64_t aRouterNodeId )
Lorsque vous communiquez avec le pair, envoyez et recevez des messages chiffrés à l'aide d'une clé de session CASE partagée établie avec un nœud de routeur spécifié.
Si la session nécessaire n'est pas disponible, elle sera établie automatiquement lors de la préparation de la liaison.
Détails | |||
---|---|---|---|
Paramètres |
|
||
Renvoie |
Référence à l'objet de liaison.
|
Security_TAKESession
Configuration & Security_TAKESession()
Lors de la communication avec le pair, envoyez et recevez des messages chiffrés à l'aide d'une clé de session Take établie avec le nœud pair.
Si la session nécessaire n'est pas disponible, elle sera établie automatiquement lors de la préparation de la liaison.
Détails | |
---|---|
Renvoie |
Référence à l'objet de liaison.
|
TargetAddress_IP
Configuration & TargetAddress_IP( nl::Inet::IPAddress aPeerAddress, uint16_t aPeerPort, InterfaceId aInterfaceId )
Lorsque vous communiquez avec le pair, utilisez l'adresse IP, le port et l'interface réseau spécifiques.
Détails | |||||||
---|---|---|---|---|---|---|---|
Paramètres |
|
||||||
Renvoie |
Référence à l'objet de liaison.
|
TargetAddress_IP
Configuration & TargetAddress_IP( const char *aHostName, uint16_t aPeerPort, InterfaceId aInterfaceId )
Lorsque vous communiquez avec le pair, utilisez le nom d'hôte, le port et l'interface réseau spécifiques.
REMARQUE: L'appelant doit s'assurer que la chaîne de nom d'hôte fournie reste valide jusqu'à la fin de la phase de préparation de la liaison.
Détails | |||||||
---|---|---|---|---|---|---|---|
Paramètres |
|
||||||
Renvoie |
Référence à l'objet de liaison.
|
TargetAddress_IP
Configuration & TargetAddress_IP( const char *aHostName, size_t aHostNameLen, uint16_t aPeerPort, InterfaceId aInterfaceId )
Lorsque vous communiquez avec le pair, utilisez le nom d'hôte, le port et l'interface réseau spécifiques.
REMARQUE: L'appelant doit s'assurer que la chaîne de nom d'hôte fournie reste valide jusqu'à la fin de la phase de préparation de la liaison.
Détails | |||||||||
---|---|---|---|---|---|---|---|---|---|
Paramètres |
|
||||||||
Renvoie |
Référence à l'objet de liaison.
|
TargetAddress_WeaveFabric
Configuration & TargetAddress_WeaveFabric( uint16_t aSubnetId )
Lorsque vous communiquez avec le pair, utilisez une adresse de structure Weave dérivée de l'ID de nœud du pair et d'un sous-réseau spécifié.
Détails | |||
---|---|---|---|
Paramètres |
|
||
Renvoie |
Référence à l'objet de liaison.
|
TargetAddress_WeaveService
Configuration & TargetAddress_WeaveService( void )
Lorsque vous communiquez avec le pair, utilisez une adresse de maillage de services Weave dérivée de l'ID de nœud du pair.
Détails | |
---|---|
Renvoie |
Référence à l'objet de liaison.
|
Target_NodeId
Configuration & Target_NodeId( uint64_t aPeerNodeId )
Configurez la liaison pour communiquer avec un ID de nœud Weave spécifique.
Détails | |||
---|---|---|---|
Paramètres |
|
||
Renvoie |
Référence à l'objet de liaison.
|
Target_ServiceEndpoint
Configuration & Target_ServiceEndpoint( uint64_t aPeerNodeId )
Configurez la liaison pour communiquer avec un point de terminaison de service Weave spécifique.
Si aucune autre configuration n'est configurée, l'adresse du pair est définie sur l'adresse de la structure Weave du point de terminaison du service.
Détails | |||
---|---|---|---|
Paramètres |
|
||
Renvoie |
Référence à l'objet de liaison.
|
Transport_DefaultWRMPConfig
Configuration & Transport_DefaultWRMPConfig( const WRMPConfig & aWRMPConfig )
Définissez la configuration WRMP par défaut pour les contextes d'échange créés à partir de cet objet Binding.
Détails | |||
---|---|---|---|
Paramètres |
|
||
Renvoie |
Référence à l'objet de liaison.
|
Transport_ExistingConnection
Configuration & Transport_ExistingConnection( WeaveConnection *apConnection )
Utilisez une connexion Weave existante pour communiquer avec le pair.
REMARQUE: Le nombre de références sur l'objet de connexion est incrémenté lorsque la préparation de la liaison aboutit. Ainsi, l'application est chargée de s'assurer que l'objet de connexion reste actif jusqu'à ce moment-là.
Détails | |||
---|---|---|---|
Paramètres |
|
||
Renvoie |
Référence à l'objet de liaison.
|
Transport_TCP
Configuration & Transport_TCP( void )
Utilisez TCP pour communiquer avec le pair.
Détails | |
---|---|
Renvoie |
Référence à l'objet de liaison.
|
Transport_UDP
Configuration & Transport_UDP( void )
Utilisez le protocole UDP pour communiquer avec le pair.
Détails | |
---|---|
Renvoie |
Référence à l'objet de liaison.
|
Transport_UDP_PathMTU
Configuration & Transport_UDP_PathMTU( uint32_t aPathMTU )
Définissez le MTU de chemin attendu pour les paquets UDP acheminés vers le pair.
Pour certains protocoles Weave, cette option permet d'ajuster de manière dynamique la taille de la charge utile des messages Weave.
Détails | |||
---|---|---|---|
Paramètres |
|
||
Renvoie |
Référence à l'objet de liaison.
|
Transport_UDP_WRM
Configuration & Transport_UDP_WRM( void )
Utilisez le protocole de messagerie fiable Weave lorsque vous communiquez avec le pair.
Détails | |
---|---|
Renvoie |
Référence à l'objet de liaison.
|