nl:: Weave:: Binding:: Configuration
#include <src/lib/core/WeaveBinding.h>
Binding オブジェクトを設定および準備するための宣言型インターフェースを提供します。
概要
アプリケーションは Binding を構成するときに、Target、Transport、Security の各構成グループから少なくとも 1 つのメソッドを呼び出す必要があります。デフォルトの動作をオーバーライドするために、他のメソッドを必要に応じて呼び出すこともできます。
相互に排他的な構成が呼び出される場合(例:Transport_TCP() の後に Transport_UDP() が続く)、最後に呼び出されたコンテナが優先されます。
パブリック関数 |
|
---|---|
ConfigureFromMessage(const WeaveMessageInfo *aMsgInfo, const Inet::IPPacketInfo *aPacketInfo)
|
受信メッセージの送信者との通信を許可するようにバインディングを構成します。
|
DNS_Options(uint8_t dnsOptions)
|
ピアのホスト名を解決する場合は、指定された DNS オプションを使用します。
|
Exchange_ResponseTimeoutMsec(uint32_t aResponseTimeoutMsec)
|
この Binding オブジェクトから作成されたエクスチェンジ コンテキストのデフォルトのレスポンス タイムアウトを設定します。
|
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)
|
ピアと通信する際は、Google Nest コアルーターで確立された共有 CASE セッションキーを使用して暗号化されたメッセージを送受信します。
|
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)
|
ピアと通信するときは、ピアのノード ID と指定したサブネットから派生した Weave ファブリック アドレスを使用します。
|
TargetAddress_WeaveService(void)
|
ピアと通信するときは、ピアのノード ID から取得した Weave サービス ファブリック アドレスを使用します。
|
Target_NodeId(uint64_t aPeerNodeId)
|
特定の Weave ノード ID と通信するようにバインディングを構成します。
|
Target_ServiceEndpoint(uint64_t aPeerNodeId)
|
特定の Weave サービス エンドポイントと通信するようにバインディングを構成します。
|
Transport_DefaultWRMPConfig(const WRMPConfig & aWRMPConfig)
|
この Binding オブジェクトから作成されたエクスチェンジ コンテキストのデフォルトの WRMP 構成を設定します。
|
Transport_ExistingConnection(WeaveConnection *apConnection)
|
既存の Weave 接続を使用してピアと通信します。
|
Transport_TCP(void)
|
TCP を使用してピアと通信します。
|
Transport_UDP(void)
|
UDP を使用してピアと通信します。
|
Transport_UDP_PathMTU(uint32_t aPathMTU)
|
ピアに送信される UDP パケットに想定されるパス MTU を設定します。
|
Transport_UDP_WRM(void)
|
ピアとの通信には Weave Reliable Messaging プロトコルを使用します。
|
パブリック関数
ConfigureFromMessage
Configuration & ConfigureFromMessage( const WeaveMessageInfo *aMsgInfo, const Inet::IPPacketInfo *aPacketInfo )
受信メッセージの送信者との通信を許可するようにバインディングを構成します。
詳細 | |||||
---|---|---|---|---|---|
パラメータ |
|
DNS_Options
Configuration & DNS_Options( uint8_t dnsOptions )
ピアのホスト名を解決する場合は、指定された DNS オプションを使用します。
詳細 | |||
---|---|---|---|
パラメータ |
|
||
戻り値 |
バインディング オブジェクトへの参照。
|
Exchange_ResponseTimeoutMsec
Configuration & Exchange_ResponseTimeoutMsec( uint32_t aResponseTimeoutMsec )
この Binding オブジェクトから作成されたエクスチェンジ コンテキストのデフォルトのレスポンス タイムアウトを設定します。
詳細 | |||
---|---|---|---|
パラメータ |
|
||
戻り値 |
バインディング オブジェクトへの参照。
|
Security_AppGroupKey
Configuration & Security_AppGroupKey( uint32_t aAppGroupGlobalId, uint32_t aRootKeyId, bool aUseRotatingKey )
ピアとの通信時に、指定した Weave アプリケーション グループ用に暗号化されたメッセージを送受信します。
詳細 | |||||||
---|---|---|---|---|---|---|---|
パラメータ |
|
||||||
戻り値 |
Binding オブジェクトへの参照。
|
Security_AuthenticationMode
Configuration & Security_AuthenticationMode( WeaveAuthMode aAuthMode )
Security_CASESession
Configuration & Security_CASESession( void )
ピアとの通信では、ピアノードで確立された CASE セッション鍵を使用して暗号化されたメッセージを送受信します。
必要なセッションを使用できない場合は、バインディングの準備の一環として自動的に確立されます。
詳細 | |
---|---|
戻り値 |
バインディング オブジェクトへの参照。
|
Security_EncryptionType
Configuration & Security_EncryptionType( uint8_t aEncType )
ピアとの通信時に、指定したメッセージ暗号化タイプで暗号化されたメッセージを送受信します。
詳細 | |||
---|---|---|---|
パラメータ |
|
||
戻り値 |
Binding オブジェクトへの参照。
|
Security_Key
Configuration & Security_Key( uint32_t aKeyId )
ピアとの通信時に、指定した鍵で暗号化されたメッセージを送受信します。
詳細 | |||
---|---|---|---|
パラメータ |
|
||
戻り値 |
Binding オブジェクトへの参照。
|
Security_None
Configuration & Security_None( void )
ピアとの通信では、暗号化されていない状態で送受信します(つまり、
保護されません。
詳細 | |
---|---|
戻り値 |
バインディング オブジェクトへの参照。
|
Security_PASESession
Configuration & Security_PASESession( uint8_t aPasswordSource )
ピアとの通信では、ピアノードで確立された PASE セッション鍵を使用して暗号化されたメッセージを送受信します。
必要なセッションを使用できない場合は、バインディングの準備の一環として自動的に確立されます。
詳細 | |||
---|---|---|---|
パラメータ |
|
||
戻り値 |
バインディング オブジェクトへの参照。
|
Security_SharedCASESession
Configuration & Security_SharedCASESession( void )
ピアと通信する際は、Google Nest コアルーターで確立された共有 CASE セッションキーを使用して暗号化されたメッセージを送受信します。
必要なセッションを使用できない場合は、バインディングの準備の一環として自動的に確立されます。
詳細 | |
---|---|
戻り値 |
バインディング オブジェクトへの参照。
|
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 )
ピアと通信するときは、ピアのノード ID と指定したサブネットから派生した Weave ファブリック アドレスを使用します。
詳細 | |||
---|---|---|---|
パラメータ |
|
||
戻り値 |
バインディング オブジェクトへの参照。
|
TargetAddress_WeaveService
Configuration & TargetAddress_WeaveService( void )
ピアと通信するときは、ピアのノード ID から取得した Weave サービス ファブリック アドレスを使用します。
詳細 | |
---|---|
戻り値 |
バインディング オブジェクトへの参照。
|
Target_NodeId
Configuration & Target_NodeId( uint64_t aPeerNodeId )
特定の Weave ノード ID と通信するようにバインディングを構成します。
詳細 | |||
---|---|---|---|
パラメータ |
|
||
戻り値 |
バインディング オブジェクトへの参照。
|
Target_ServiceEndpoint
Configuration & Target_ServiceEndpoint( uint64_t aPeerNodeId )
特定の Weave サービス エンドポイントと通信するようにバインディングを構成します。
それ以外の場合、ピアアドレスはサービス エンドポイントの Weave ファブリック アドレスに設定されます。
詳細 | |||
---|---|---|---|
パラメータ |
|
||
戻り値 |
バインディング オブジェクトへの参照。
|
Transport_DefaultWRMPConfig
Configuration & Transport_DefaultWRMPConfig( const WRMPConfig & aWRMPConfig )
この Binding オブジェクトから作成されたエクスチェンジ コンテキストのデフォルトの WRMP 構成を設定します。
詳細 | |||
---|---|---|---|
パラメータ |
|
||
戻り値 |
バインディング オブジェクトへの参照。
|
Transport_ExistingConnection
Configuration & Transport_ExistingConnection( WeaveConnection *apConnection )
既存の Weave 接続を使用してピアと通信します。
注: 接続オブジェクトの参照カウントは、バインディングの準備が成功すると増加します。したがって、アプリケーションはその時点まで接続オブジェクトが存続するようにする必要があります。
詳細 | |||
---|---|---|---|
パラメータ |
|
||
戻り値 |
バインディング オブジェクトへの参照。
|
Transport_UDP_PathMTU
Configuration & Transport_UDP_PathMTU( uint32_t aPathMTU )
ピアに送信される UDP パケットに想定されるパス MTU を設定します。
一部の Weave プロトコルでは、このフィールドを使用して、Weave メッセージのペイロード サイズを動的に調整します。
詳細 | |||
---|---|---|---|
パラメータ |
|
||
戻り値 |
バインディング オブジェクトへの参照。
|
Transport_UDP_WRM
Configuration & Transport_UDP_WRM( void )
ピアとの通信には Weave Reliable Messaging プロトコルを使用します。
詳細 | |
---|---|
戻り値 |
バインディング オブジェクトへの参照。
|