nl:: Weave:: Binding:: Configuration
#include <src/lib/core/WeaveBinding.h>
Binding オブジェクトの設定と準備を行うための宣言型スタイルのインターフェースを提供します。
概要
バインディングを構成する場合、アプリケーションはターゲット、トランスポート、セキュリティの各構成グループから 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)
|
ピアと通信する際は、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 )
ピアと通信する際は、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 プロトコルを使用する。
詳細 | |
---|---|
戻り値 |
バインディング オブジェクトへの参照。
|