nl:: Weave:: WeaveFabricState
#include <src/lib/core/WeaveFabricState.h>
Deklarasi penerusan WeaveFabricState.
Ringkasan
Konstruktor dan Destruktor |
|
---|---|
WeaveFabricState(void)
|
Jenis publik |
|
---|---|
PeerIndexType
|
typedefuint8_t
|
SessionEndCbFunct)(uint16_t keyId, uint64_t peerNodeId, void *context)
|
typedefvoid(*
|
State
|
enum |
Atribut publik |
|
---|---|
AutoCreateKeys
|
bool
|
DebugFabricId
|
uint64_t
|
DefaultSubnet
|
uint16_t
|
FabricId
|
uint64_t
|
GroupKeyStore
|
|
ListenIPv4Addr
|
IPAddress
|
ListenIPv6Addr
|
IPAddress
|
LocalNodeId
|
uint64_t
|
LogKeys
|
bool
|
MaxUnencUDPMsgIdRcvd[WEAVE_CONFIG_MAX_PEER_NODES]
|
uint32_t
|
MessageLayer
|
|
MostRecentlyUsedIndexes[WEAVE_CONFIG_MAX_PEER_NODES]
|
PeerIndexType
|
NodeId[WEAVE_CONFIG_MAX_PEER_NODES]
|
uint64_t
|
PairingCode
|
const char *
|
State
|
uint8_t
|
UnencRcvFlags[WEAVE_CONFIG_MAX_PEER_NODES]
|
WeaveSessionState::ReceiveFlagsType
|
UseTestKey
|
bool
|
Fungsi publik |
|
---|---|
AddSharedSessionEndNode(uint64_t endNodeId, uint64_t terminatingNodeId, uint16_t keyId)
|
|
AddSharedSessionEndNode(WeaveSessionKey *sessionKey, uint64_t endNodeId)
|
Metode ini menambahkan node akhir baru ke catatan node akhir bersama.
|
AllocSessionKey(uint64_t peerNodeId, uint16_t keyId, WeaveConnection *boundCon, WeaveSessionKey *& sessionKey)
|
|
ClearFabricState(void)
|
void
|
CreateFabric(void)
|
|
FindSessionKey(uint16_t keyId, uint64_t peerNodeId, bool create, WeaveSessionKey *& retRec)
|
Metode ini akan menemukan entri kunci sesi.
|
FindSharedSession(uint64_t terminatingNodeId, WeaveAuthMode authMode, uint8_t encType)
|
Telusuri kunci sesi bersama yang telah dibuat di tabel kunci sesi yang menargetkan node penghentian yang ditentukan dan cocok dengan mode autentikasi dan jenis enkripsi yang ditentukan.
|
GetFabricState(uint8_t *buf, uint32_t bufSize, uint32_t & fabricStateLen)
|
|
GetPassword(uint8_t pwSrc, const char *& ps, uint16_t & pwLen)
|
|
GetSessionKey(uint16_t keyId, uint64_t peerNodeId, WeaveSessionKey *& outSessionKey)
|
|
GetSessionState(uint64_t remoteNodeId, uint16_t keyId, uint8_t encType, WeaveConnection *con, WeaveSessionState & outSessionState)
|
|
GetSharedSessionEndNodeIds(const WeaveSessionKey *sessionKey, uint64_t *endNodeIds, uint8_t endNodeIdsBufSize, uint8_t & endNodeIdsCount)
|
Metode ini menampilkan semua ID node akhir yang berbagi sesi yang ditentukan.
|
HandleConnectionClosed(WeaveConnection *con)
|
void
|
Init(void)
|
|
Init(nl::Weave::Profiles::Security::AppKeys::GroupKeyStoreBase *groupKeyStore)
|
|
IsFabricAddress(const IPAddress & addr) const
|
bool
Menentukan apakah alamat IP mewakili alamat node dalam fabric lokal Weave.
|
IsLocalFabricAddress(const IPAddress & addr) const
|
bool
Menentukan apakah alamat IP mewakili alamat kain Weave untuk node lokal.
|
IsSharedSession(uint16_t keyId, uint64_t peerNodeId)
|
bool
Metode ini memeriksa apakah sesi aman yang terkait dengan peer dan keyId yang ditentukan dibagikan.
|
JoinExistingFabric(const uint8_t *fabricState, uint32_t fabricStateLen)
|
|
RegisterSessionEndCallback(SessionEndCbCtxt *sessionEndCb)
|
|
RemoveIdleSessionKeys()
|
bool
|
RemoveSessionKey(uint16_t keyId, uint64_t peerNodeId)
|
|
RemoveSessionKey(WeaveSessionKey *sessionKey, bool wasIdle)
|
void
|
RemoveSharedSessionEndNodes(const WeaveSessionKey *sessionKey)
|
void
|
RestoreSession(uint8_t *serializedSession, uint16_t serializedSessionLen)
|
Memulihkan Sesi Keamanan Weave yang sebelumnya ditangguhkan dari status serial.
|
SelectNodeAddress(uint64_t nodeId, uint16_t subnet) const
|
Menampilkan IPAddress yang berisi ULA Weave untuk node yang ditentukan.
|
SelectNodeAddress(uint64_t nodeId) const
|
Menampilkan IPAddress yang berisi ULA Weave untuk node yang ditentukan.
|
SetDelegate(FabricStateDelegate *aDelegate)
|
void
Metode ini menetapkan objek delegasi.
|
SetSessionKey(uint16_t keyId, uint64_t peerNodeId, uint8_t encType, WeaveAuthMode authMode, const WeaveEncryptionKey *encKey)
|
|
SetSessionKey(WeaveSessionKey *sessionKey, uint8_t encType, WeaveAuthMode authMode, const WeaveEncryptionKey *encKey)
|
|
Shutdown(void)
|
|
SuspendSession(uint16_t keyId, uint64_t peerNodeId, uint8_t *buf, uint16_t bufSize, uint16_t & serializedSessionLen)
|
Tangguhkan dan lakukan serialisasi status sesi keamanan Weave yang aktif.
|
Struct |
|
---|---|
nl:: |
Jenis publik
PeerIndexType
uint8_t PeerIndexType
SessionEndCbFunct
void(* SessionEndCbFunct)(uint16_t keyId, uint64_t peerNodeId, void *context)
Negara Bagian
State
Atribut publik
AutoCreateKeys
bool AutoCreateKeys
DebugFabricId
uint64_t DebugFabricId
DefaultSubnet
uint16_t DefaultSubnet
FabricId
uint64_t FabricId
GroupKeyStore
nl::Weave::Profiles::Security::AppKeys::GroupKeyStoreBase * GroupKeyStore
ListenIPv4Addr
IPAddress ListenIPv4Addr
ListenIPv6Addr
IPAddress ListenIPv6Addr
LocalNodeId
uint64_t LocalNodeId
LogKeys
bool LogKeys
MaxUnencUDPMsgIdRcvd
uint32_t MaxUnencUDPMsgIdRcvd[WEAVE_CONFIG_MAX_PEER_NODES]
MessageLayer
WeaveMessageLayer * MessageLayer
MostRecentlyUsedIndexes
PeerIndexType MostRecentlyUsedIndexes[WEAVE_CONFIG_MAX_PEER_NODES]
NodeId
uint64_t NodeId[WEAVE_CONFIG_MAX_PEER_NODES]
PairingCode
const char * PairingCode
Negara Bagian
uint8_t State
UnencRcvFlags
WeaveSessionState::ReceiveFlagsType UnencRcvFlags[WEAVE_CONFIG_MAX_PEER_NODES]
UseTestKey
bool UseTestKey
Fungsi publik
AddSharedSessionEndNode
WEAVE_ERROR AddSharedSessionEndNode( uint64_t endNodeId, uint64_t terminatingNodeId, uint16_t keyId )
AddSharedSessionEndNode
WEAVE_ERROR AddSharedSessionEndNode( WeaveSessionKey *sessionKey, uint64_t endNodeId )
Metode ini menambahkan node akhir baru ke catatan node akhir bersama.
Detail | |||||
---|---|---|---|---|---|
Parameter |
|
||||
Nilai Pengembalian |
|
AllocSessionKey
WEAVE_ERROR AllocSessionKey( uint64_t peerNodeId, uint16_t keyId, WeaveConnection *boundCon, WeaveSessionKey *& sessionKey )
ClearFabricState
void ClearFabricState( void )
CreateFabric
WEAVE_ERROR CreateFabric( void )
FindSessionKey
WEAVE_ERROR FindSessionKey( uint16_t keyId, uint64_t peerNodeId, bool create, WeaveSessionKey *& retRec )
Metode ini akan menemukan entri kunci sesi.
Detail | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
Parameter |
|
||||||||||
Nilai Pengembalian |
|
FindSharedSession
WeaveSessionKey * FindSharedSession( uint64_t terminatingNodeId, WeaveAuthMode authMode, uint8_t encType )
Telusuri kunci sesi bersama yang telah dibuat di tabel kunci sesi yang menargetkan node penghentian yang ditentukan dan cocok dengan mode autentikasi dan jenis enkripsi yang ditentukan.
Detail | |||||||
---|---|---|---|---|---|---|---|
Parameter |
|
||||||
Nilai Pengembalian |
|
GetFabricState
WEAVE_ERROR GetFabricState( uint8_t *buf, uint32_t bufSize, uint32_t & fabricStateLen )
GetPassword
WEAVE_ERROR GetPassword( uint8_t pwSrc, const char *& ps, uint16_t & pwLen )
GetSessionKey
WEAVE_ERROR GetSessionKey( uint16_t keyId, uint64_t peerNodeId, WeaveSessionKey *& outSessionKey )
GetSessionState
WEAVE_ERROR GetSessionState( uint64_t remoteNodeId, uint16_t keyId, uint8_t encType, WeaveConnection *con, WeaveSessionState & outSessionState )
GetSharedSessionEndNodeIds
WEAVE_ERROR GetSharedSessionEndNodeIds( const WeaveSessionKey *sessionKey, uint64_t *endNodeIds, uint8_t endNodeIdsBufSize, uint8_t & endNodeIdsCount )
Metode ini menampilkan semua ID node akhir yang berbagi sesi yang ditentukan.
Detail | |||||||||
---|---|---|---|---|---|---|---|---|---|
Parameter |
|
||||||||
Nilai Pengembalian |
|
HandleConnectionClosed
void HandleConnectionClosed( WeaveConnection *con )
Inisiasi
WEAVE_ERROR Init( void )
Inisiasi
WEAVE_ERROR Init( nl::Weave::Profiles::Security::AppKeys::GroupKeyStoreBase *groupKeyStore )
IsFabricAddress
bool IsFabricAddress( const IPAddress & addr ) const
Menentukan apakah alamat IP mewakili alamat node dalam fabric lokal Weave.
IsLocalFabricAddress
bool IsLocalFabricAddress( const IPAddress & addr ) const
Menentukan apakah alamat IP mewakili alamat kain Weave untuk node lokal.
IsSharedSession
bool IsSharedSession( uint16_t keyId, uint64_t peerNodeId )
Metode ini memeriksa apakah sesi aman yang terkait dengan peer dan keyId yang ditentukan dibagikan.
Detail | |||||
---|---|---|---|---|---|
Parameter |
|
||||
Nilai Pengembalian |
|
JoinExistingFabric
WEAVE_ERROR JoinExistingFabric( const uint8_t *fabricState, uint32_t fabricStateLen )
RegisterSessionEndCallback
WEAVE_ERROR RegisterSessionEndCallback( SessionEndCbCtxt *sessionEndCb )
RemoveIdleSessionKeys
bool RemoveIdleSessionKeys()
RemoveSessionKey
WEAVE_ERROR RemoveSessionKey( uint16_t keyId, uint64_t peerNodeId )
RemoveSessionKey
void RemoveSessionKey( WeaveSessionKey *sessionKey, bool wasIdle )
RemoveSharedSessionEndNodes
void RemoveSharedSessionEndNodes( const WeaveSessionKey *sessionKey )
RestoreSession
WEAVE_ERROR RestoreSession( uint8_t *serializedSession, uint16_t serializedSessionLen )
Memulihkan Sesi Keamanan Weave yang sebelumnya ditangguhkan dari status serial.
SelectNodeAddress
IPAddress SelectNodeAddress( uint64_t nodeId, uint16_t subnet ) const
Menampilkan IPAddress yang berisi ULA Weave untuk node yang ditentukan.
Varian ini memungkinkan subnet ditentukan.
Detail | |||||
---|---|---|---|---|---|
Parameter |
|
||||
Nilai Pengembalian |
|
SelectNodeAddress
IPAddress SelectNodeAddress( uint64_t nodeId ) const
Menampilkan IPAddress yang berisi ULA Weave untuk node yang ditentukan.
Varian ini menggunakan subnet default node lokal.
Detail | |||
---|---|---|---|
Parameter |
|
||
Nilai Pengembalian |
|
SetDelegate
void SetDelegate( FabricStateDelegate *aDelegate )
Metode ini menetapkan objek delegasi.
Metode callback untuk delegasi dipanggil setiap kali FabricId diubah, yaitu saat kita bergabung/membuat kain, atau saat kita meninggalkan kain (kondisi kain yang jelas)
Jika delegasi sudah ditetapkan sebelumnya, panggilan kedua ke metode ini akan menimpa delegasi sebelumnya.
Detail | |||
---|---|---|---|
Parameter |
|
SetSessionKey
WEAVE_ERROR SetSessionKey( uint16_t keyId, uint64_t peerNodeId, uint8_t encType, WeaveAuthMode authMode, const WeaveEncryptionKey *encKey )
SetSessionKey
WEAVE_ERROR SetSessionKey( WeaveSessionKey *sessionKey, uint8_t encType, WeaveAuthMode authMode, const WeaveEncryptionKey *encKey )
Nonaktif
WEAVE_ERROR Shutdown( void )
SuspendSession
WEAVE_ERROR SuspendSession( uint16_t keyId, uint64_t peerNodeId, uint8_t *buf, uint16_t bufSize, uint16_t & serializedSessionLen )
Tangguhkan dan lakukan serialisasi status sesi keamanan Weave yang aktif.
Menserialisasikan status sesi keamanan Weave yang diidentifikasi ke dalam buffering yang disediakan dan menangguhkan sesi tersebut sehingga tidak ada pesan lebih lanjut yang dapat dikirim atau diterima.
Metode ini dimaksudkan untuk digunakan oleh perangkat yang tidak mempertahankan RAM saat tidur, memungkinkan perangkat tersebut mempertahankan status sesi aktif dan dengan demikian menghindari kebutuhan untuk membangun kembali sesi saat mereka bangun.
WeaveFabricState
WeaveFabricState( void )