нл:: Переплетение:: Привязка:: Конфигурация
#include <src/lib/core/WeaveBinding.h>
Предоставляет интерфейс в декларативном стиле для настройки и подготовки объекта Binding .
Краткое содержание
При настройке Binding приложения должны вызывать хотя бы один метод из каждой из следующих групп конфигурации: Target, Transport и Security. Другие методы могут быть вызваны по мере необходимости, чтобы переопределить поведение по умолчанию.
Если вызываются взаимоисключающие конфигурации (например, Transport_TCP(), за которым следует Transport_UDP() ), выигрывает тот, который был вызван последним.
Общественные функции | |
---|---|
ConfigureFromMessage (const WeaveMessageInfo *aMsgInfo, const Inet::IPPacketInfo *aPacketInfo) | Настройте привязку, чтобы разрешить связь с отправителем полученного сообщения. |
DNS_Options (uint8_t dnsOptions) | При разрешении имени узла узла используйте указанные параметры DNS. |
Exchange_ResponseTimeoutMsec (uint32_t aResponseTimeoutMsec) | Установите время ожидания ответа по умолчанию для контекстов обмена, созданных из этого объекта привязки . |
GetError (void) const | Возвращает любую ошибку, возникшую при настройке Binding . |
PrepareBinding (void) | Это процесс подготовки Binding к общению с одноранговым узлом. |
Security_AppGroupKey (uint32_t aAppGroupGlobalId, uint32_t aRootKeyId, bool aUseRotatingKey) | При общении с партнером отправляйте и получайте сообщения, зашифрованные для указанной группы приложений Weave. |
Security_AuthenticationMode (WeaveAuthMode aAuthMode) | Установите запрошенный режим аутентификации, который будет использоваться для аутентификации узла. |
Security_CASESession (void) | При общении с одноранговым узлом отправляйте и получайте сообщения, зашифрованные с использованием сеансового ключа CASE, установленного с одноранговым узлом. |
Security_EncryptionType (uint8_t aEncType) | При общении с партнером отправляйте и получайте сообщения, зашифрованные с использованием указанного типа шифрования сообщений. |
Security_Key (uint32_t aKeyId) | При общении с партнером отправляйте и получайте сообщения, зашифрованные с использованием указанного ключа. |
Security_None (void) | При общении с партнером отправляйте и получайте незашифрованные данные (т. е. |
Security_PASESession (uint8_t aPasswordSource) | При общении с одноранговым узлом отправляйте и получайте сообщения, зашифрованные с использованием сеансового ключа PASE, установленного с одноранговым узлом. |
Security_SharedCASESession (void) | При общении с одноранговым узлом отправляйте и получайте сообщения, зашифрованные с использованием общего сеансового ключа CASE, установленного с помощью основного маршрутизатора Nest. |
Security_SharedCASESession (uint64_t aRouterNodeId) | При общении с одноранговым узлом отправляйте и получайте сообщения, зашифрованные с использованием общего сеансового ключа CASE, установленного с указанным узлом маршрутизатора. |
Security_TAKESession () | При общении с одноранговым узлом отправляйте и получайте сообщения, зашифрованные с использованием сеансового ключа TAKE, установленного с одноранговым узлом. |
TargetAddress_IP ( nl::Inet::IPAddress aPeerAddress, uint16_t aPeerPort, InterfaceId aInterfaceId) | При общении с партнером используйте конкретный IP-адрес, порт и сетевой интерфейс. |
TargetAddress_IP (const char *aHostName, uint16_t aPeerPort, InterfaceId aInterfaceId) | При общении с партнером используйте конкретное имя хоста, порт и сетевой интерфейс. |
TargetAddress_IP (const char *aHostName, size_t aHostNameLen, uint16_t aPeerPort, InterfaceId aInterfaceId) | При общении с партнером используйте конкретное имя хоста, порт и сетевой интерфейс. |
TargetAddress_WeaveFabric (uint16_t aSubnetId) | При обмене данными с одноранговым узлом используйте адрес структуры Weave, полученный на основе идентификатора узла однорангового узла и указанной подсети. |
TargetAddress_WeaveService (void) | При общении с одноранговым узлом используйте адрес структуры службы Weave, полученный из идентификатора узла однорангового узла. |
Target_NodeId (uint64_t aPeerNodeId) | Настройте привязку для связи с определенным идентификатором узла Weave. |
Target_ServiceEndpoint (uint64_t aPeerNodeId) | Настройте привязку для связи с определенной конечной точкой службы Weave. |
Transport_DefaultWRMPConfig (const WRMPConfig & aWRMPConfig) | Установите конфигурацию WRMP по умолчанию для контекстов обмена, созданных из этого объекта привязки . |
Transport_ExistingConnection ( WeaveConnection *apConnection) | Используйте существующее соединение Weave для связи с одноранговым узлом. |
Transport_TCP (void) | Используйте TCP для связи с одноранговым узлом. |
Transport_UDP (void) | Используйте UDP для связи с одноранговым узлом. |
Transport_UDP_PathMTU (uint32_t aPathMTU) | Установите ожидаемый MTU пути для пакетов UDP, направляющихся к партнеру. |
Transport_UDP_WRM (void) | Используйте протокол Weave Reliable Messaging при общении с партнером. |
Общественные функции
Конфигурефроммессаже
Configuration & ConfigureFromMessage( const WeaveMessageInfo *aMsgInfo, const Inet::IPPacketInfo *aPacketInfo )
Настройте привязку, чтобы разрешить связь с отправителем полученного сообщения.
Подробности | |||||
---|---|---|---|---|---|
Параметры |
|
DNS_Параметры
Configuration & DNS_Options( uint8_t dnsOptions )
При разрешении имени узла узла используйте указанные параметры DNS.
Подробности | |||
---|---|---|---|
Параметры |
| ||
Возврат | Ссылка на объект привязки. |
Exchange_ResponseTimeoutMsec
Configuration & Exchange_ResponseTimeoutMsec( uint32_t aResponseTimeoutMsec )
Установите время ожидания ответа по умолчанию для контекстов обмена, созданных из этого объекта привязки .
Подробности | |||
---|---|---|---|
Параметры |
| ||
Возврат | Ссылка на объект привязки. |
Получить ошибку
WEAVE_ERROR GetError( void ) const
Возвращает любую ошибку, возникшую при настройке Binding .
ПодготовкаBinding
WEAVE_ERROR PrepareBinding( void )
Это процесс подготовки Binding к общению с одноранговым узлом.
Security_AppGroupKey
Configuration & Security_AppGroupKey( uint32_t aAppGroupGlobalId, uint32_t aRootKeyId, bool aUseRotatingKey )
При общении с партнером отправляйте и получайте сообщения, зашифрованные для указанной группы приложений Weave.
Подробности | |||||||
---|---|---|---|---|---|---|---|
Параметры |
| ||||||
Возврат | Ссылка на объект Binding . |
Security_AuthenticationMode
Configuration & Security_AuthenticationMode( WeaveAuthMode aAuthMode )
Установите запрошенный режим аутентификации, который будет использоваться для аутентификации узла.
Подробности | |||
---|---|---|---|
Параметры |
| ||
Возврат | Ссылка на объект Binding . |
Security_CASESession
Configuration & Security_CASESession( void )
При общении с одноранговым узлом отправляйте и получайте сообщения, зашифрованные с использованием сеансового ключа CASE, установленного с одноранговым узлом.
Если необходимая сессия недоступна, она будет установлена автоматически в рамках подготовки привязки.
Подробности | |
---|---|
Возврат | Ссылка на объект привязки. |
Security_EncryptionType
Configuration & Security_EncryptionType( uint8_t aEncType )
При общении с партнером отправляйте и получайте сообщения, зашифрованные с использованием указанного типа шифрования сообщений.
Подробности | |||
---|---|---|---|
Параметры |
| ||
Возврат | Ссылка на объект Binding . |
Ключ_безопасности
Configuration & Security_Key( uint32_t aKeyId )
При общении с партнером отправляйте и получайте сообщения, зашифрованные с использованием указанного ключа.
Подробности | |||
---|---|---|---|
Параметры |
| ||
Возврат | Ссылка на объект Binding . |
Безопасность_Нет
Configuration & Security_None( void )
При общении с партнером отправляйте и получайте незашифрованные данные (т. е.
незащищенные) сообщения.
Подробности | |
---|---|
Возврат | Ссылка на объект привязки. |
Security_PASESession
Configuration & Security_PASESession( uint8_t aPasswordSource )
При общении с одноранговым узлом отправляйте и получайте сообщения, зашифрованные с использованием сеансового ключа PASE, установленного с одноранговым узлом.
Если необходимая сессия недоступна, она будет установлена автоматически в рамках подготовки привязки.
Подробности | |||
---|---|---|---|
Параметры |
| ||
Возврат | Ссылка на объект привязки. |
Security_SharedCASESession
Configuration & Security_SharedCASESession( void )
При общении с одноранговым узлом отправляйте и получайте сообщения, зашифрованные с использованием общего сеансового ключа CASE, установленного с помощью основного маршрутизатора Nest.
Если необходимая сессия недоступна, она будет установлена автоматически в рамках подготовки привязки.
Подробности | |
---|---|
Возврат | Ссылка на объект привязки. |
Security_SharedCASESession
Configuration & Security_SharedCASESession( uint64_t aRouterNodeId )
При общении с партнером отправляйте и получайте сообщения, зашифрованные с использованием общего сеансового ключа CASE, установленного с указанным узлом маршрутизатора.
Если необходимая сессия недоступна, она будет установлена автоматически в рамках подготовки привязки.
Подробности | |||
---|---|---|---|
Параметры |
| ||
Возврат | Ссылка на объект привязки. |
Security_TAKESession
Configuration & Security_TAKESession()
При общении с одноранговым узлом отправляйте и получайте сообщения, зашифрованные с использованием сеансового ключа TAKE, установленного с одноранговым узлом.
Если необходимая сессия недоступна, она будет установлена автоматически в рамках подготовки привязки.
Подробности | |
---|---|
Возврат | Ссылка на объект привязки. |
TargetAddress_IP
Configuration & TargetAddress_IP( nl::Inet::IPAddress aPeerAddress, uint16_t aPeerPort, InterfaceId aInterfaceId )
При общении с партнером используйте конкретный IP-адрес, порт и сетевой интерфейс.
Подробности | |||||||
---|---|---|---|---|---|---|---|
Параметры |
| ||||||
Возврат | Ссылка на объект привязки. |
TargetAddress_IP
Configuration & TargetAddress_IP( const char *aHostName, uint16_t aPeerPort, InterfaceId aInterfaceId )
При общении с партнером используйте конкретное имя хоста, порт и сетевой интерфейс.
ПРИМЕЧАНИЕ. Вызывающий объект должен убедиться, что предоставленная строка имени хоста остается допустимой до завершения этапа подготовки привязки.
Подробности | |||||||
---|---|---|---|---|---|---|---|
Параметры |
| ||||||
Возврат | Ссылка на объект привязки. |
TargetAddress_IP
Configuration & TargetAddress_IP( const char *aHostName, size_t aHostNameLen, uint16_t aPeerPort, InterfaceId aInterfaceId )
При общении с партнером используйте конкретное имя хоста, порт и сетевой интерфейс.
ПРИМЕЧАНИЕ. Вызывающий объект должен убедиться, что предоставленная строка имени хоста остается допустимой до завершения этапа подготовки привязки.
Подробности | |||||||||
---|---|---|---|---|---|---|---|---|---|
Параметры |
| ||||||||
Возврат | Ссылка на объект привязки. |
TargetAddress_WeaveFabric
Configuration & TargetAddress_WeaveFabric( uint16_t aSubnetId )
При обмене данными с одноранговым узлом используйте адрес структуры Weave, полученный на основе идентификатора узла однорангового узла и указанной подсети.
Подробности | |||
---|---|---|---|
Параметры |
| ||
Возврат | Ссылка на объект привязки. |
TargetAddress_WeaveService
Configuration & TargetAddress_WeaveService( void )
При общении с одноранговым узлом используйте адрес структуры службы Weave, полученный из идентификатора узла однорангового узла.
Подробности | |
---|---|
Возврат | Ссылка на объект привязки. |
Target_NodeId
Configuration & Target_NodeId( uint64_t aPeerNodeId )
Настройте привязку для связи с определенным идентификатором узла Weave.
Подробности | |||
---|---|---|---|
Параметры |
| ||
Возврат | Ссылка на объект привязки. |
Target_ServiceEndpoint
Configuration & Target_ServiceEndpoint( uint64_t aPeerNodeId )
Настройте привязку для связи с определенной конечной точкой службы Weave.
Если не настроено иное, адрес узла устанавливается на адрес Weave Fabric конечной точки службы.
Подробности | |||
---|---|---|---|
Параметры |
| ||
Возврат | Ссылка на объект привязки. |
Transport_DefaultWRMPConfig
Configuration & Transport_DefaultWRMPConfig( const WRMPConfig & aWRMPConfig )
Установите конфигурацию WRMP по умолчанию для контекстов обмена, созданных из этого объекта привязки .
Подробности | |||
---|---|---|---|
Параметры |
| ||
Возврат | Ссылка на объект привязки. |
Transport_ExistingConnection
Configuration & Transport_ExistingConnection( WeaveConnection *apConnection )
Используйте существующее соединение Weave для связи с одноранговым узлом.
ПРИМЕЧАНИЕ. Счетчик ссылок на объект соединения увеличивается при успешной подготовке привязки. Таким образом, приложение несет ответственность за то, чтобы объект соединения оставался активным до этого времени.
Подробности | |||
---|---|---|---|
Параметры |
| ||
Возврат | Ссылка на объект привязки. |
Транспорт_TCP
Configuration & Transport_TCP( void )
Используйте TCP для связи с одноранговым узлом.
Подробности | |
---|---|
Возврат | Ссылка на объект привязки. |
Транспорт_UDP
Configuration & Transport_UDP( void )
Используйте UDP для связи с одноранговым узлом.
Подробности | |
---|---|
Возврат | Ссылка на объект привязки. |
Transport_UDP_PathMTU
Configuration & Transport_UDP_PathMTU( uint32_t aPathMTU )
Установите ожидаемый MTU пути для пакетов UDP, направляющихся к партнеру.
Для некоторых протоколов Weave это будет использоваться для динамической настройки размера полезной нагрузки сообщения Weave.
Подробности | |||
---|---|---|---|
Параметры |
| ||
Возврат | Ссылка на объект привязки. |
Транспорт_UDP_WRM
Configuration & Transport_UDP_WRM( void )
Используйте протокол Weave Reliable Messaging при общении с партнером.
Подробности | |
---|---|
Возврат | Ссылка на объект привязки. |