nl:: বিণ

সারাংশ

গণনা

@21 {
kFlagConnectionClosed = 0x0002,
kFlagAutoRequestAck = 0x0004,
kFlagDropAck = 0x0008,
kFlagResponseExpected = 0x0010,
kFlagAckPending = 0x0020,
kFlagPeerRequestedAck = 0x0040,
kFlagMsgRcvdFromPeer = 0x0080,
kFlagAutoReleaseKey = 0x0100,
kFlagAutoReleaseConnection = 0x0200,
kFlagUseEphemeralUDPPort = 0x0400
}
enum
@36 enum
@37 enum
@38 {
kFabricIdDefaultForTest = 1ULL
}
enum
@39 {
kCertType_NotSpecified = 0x00,
kCertType_General = 0x01,
kCertType_Device = 0x02,
kCertType_ServiceEndpoint = 0x03,
kCertType_FirmwareSigning = 0x04,
kCertType_AccessToken = 0x05,
kCertType_CA = 0x06,
kCertType_AppDefinedBase = 0x7F,
kCertType_Max = 0xFF
}
enum
শংসাপত্রের উদ্দেশ্য বা আবেদন শনাক্ত করে।
@40 enum
একটি পাসওয়ার্ড-ভিত্তিক প্রমাণীকরণ প্রোটোকলে ব্যবহৃত পাসওয়ার্ডের উত্স সনাক্ত করে (যেমন
@41 {
kWeaveAuthMode_NotSpecified = 0x0000,
kWeaveAuthModeCategory_General = 0x0000,
kWeaveAuthModeCategory_PASE = 0x1000,
kWeaveAuthModeCategory_CASE = 0x2000,
kWeaveAuthModeCategory_TAKE = 0x3000,
kWeaveAuthModeCategory_GroupKey = 0x4000,
kWeaveAuthModeCategory_AppDefinedBase = 0xC000,
kWeaveAuthMode_Unauthenticated = kWeaveAuthModeCategory_General | 0x001,
kWeaveAuthMode_PASE_PairingCode = kWeaveAuthModeCategory_PASE | kPasswordSource_PairingCode,
kWeaveAuthMode_CASE_AnyCert = kWeaveAuthModeCategory_CASE | kCertType_NotSpecified,
kWeaveAuthMode_CASE_GeneralCert = kWeaveAuthModeCategory_CASE | kCertType_General,
kWeaveAuthMode_CASE_Device = kWeaveAuthModeCategory_CASE | kCertType_Device,
kWeaveAuthMode_CASE_ServiceEndPoint = kWeaveAuthModeCategory_CASE | kCertType_ServiceEndpoint,
kWeaveAuthMode_CASE_AccessToken = kWeaveAuthModeCategory_CASE | kCertType_AccessToken,
kWeaveAuthMode_TAKE_IdentificationKey = kWeaveAuthModeCategory_TAKE | 0x001
}
enum
@42 {
kFabricSecretScope_All = 0x00
}
enum
@43 {
kTestKey_AES128CTRSHA1_DataKeyByte = 0xAB,
kTestKey_AES128CTRSHA1_IntegrityKeyByte = 0xBA
}
enum
@44 enum
বুনা বার্তা এনক্রিপশন অ্যাপ্লিকেশন কী বৈচিত্র্যকারী আকার.
@45 enum
@53 enum
@54 {
kWeavePeerDescription_MaxLength = 100
}
enum
@55 {
kWeaveHeaderFlag_DestNodeId = 0x0100,
kWeaveHeaderFlag_SourceNodeId = 0x0200,
kWeaveHeaderFlag_TunneledData = 0x0400,
kWeaveHeaderFlag_MsgCounterSyncReq = 0x0800
}
enum
একটি এনকোডেড উইভ বার্তার শিরোনাম সম্পর্কিত সংজ্ঞা।
@56 {
kEUI64_UL_Mask = 0x0200000000000000ULL,
kEUI64_UL_Unversal = 0,
kEUI64_UL_Local = kEUI64_UL_Mask,
kEUI64_IG_Mask = 0x0100000000000000ULL,
kEUI64_IG_Individual = 0,
kEUI64_IG_Group = kEUI64_IG_Mask
}
enum
IEEE EUI-64 শনাক্তকারীর জন্য বিট ক্ষেত্রের সংজ্ঞা।
@57 {
kMaxAlwaysLocalWeaveNodeId = 0x000000000000FFFFULL
}
enum
উইভ নোড আইডির বিশেষ পরিসর।
WeaveEncryptionType {
kWeaveEncryptionType_None = 0,
kWeaveEncryptionType_AES128CTRSHA1 = 1
}
enum
Weave বার্তার জন্য এনক্রিপশন প্রকার।
WeaveExchangeFlags {
kWeaveExchangeFlag_Initiator = 0x1,
kWeaveExchangeFlag_AckId = 0x2,
kWeaveExchangeFlag_NeedsAck = 0x4
}
enum
ওয়েভ এক্সচেঞ্জ হেডার পতাকা বিট।
WeaveExchangeVersion enum
ওয়েভ এক্সচেঞ্জ হেডার সংস্করণ।
WeaveMessageFlags {
kWeaveMessageFlag_ReuseMessageId = 0x00000010,
kWeaveMessageFlag_ReuseSourceId = 0x00000020,
kWeaveMessageFlag_DelaySend = 0x00000040,
kWeaveMessageFlag_RetainBuffer = 0x00000080,
kWeaveMessageFlag_MessageEncoded = 0x00001000,
kWeaveMessageFlag_DefaultMulticastSourceAddress = 0x00002000,
kWeaveMessageFlag_PeerRequestedAck = 0x00004000,
kWeaveMessageFlag_DuplicateMessage = 0x00008000,
kWeaveMessageFlag_PeerGroupMsgIdNotSynchronized = 0x00010000,
kWeaveMessageFlag_FromInitiator = 0x00020000,
kWeaveMessageFlag_ViaEphemeralUDPPort = 0x00040000,
kWeaveMessageFlag_MulticastFromLinkLocal = kWeaveMessageFlag_DefaultMulticastSourceAddress,
kWeaveMessageFlag_DestNodeId = kWeaveHeaderFlag_DestNodeId,
kWeaveMessageFlag_SourceNodeId = kWeaveHeaderFlag_SourceNodeId,
kWeaveMessageFlag_TunneledData = kWeaveHeaderFlag_TunneledData,
kWeaveMessageFlag_MsgCounterSyncReq = kWeaveHeaderFlag_MsgCounterSyncReq
}
enum
ইনবাউন্ড বা আউটবাউন্ড উইভ বার্তার সাথে যুক্ত পতাকা।
WeaveMessageVersion {
kWeaveMessageVersion_Unspecified = 0,
kWeaveMessageVersion_V1 = 1,
kWeaveMessageVersion_V2 = 2
}
enum
ওয়েভ মেসেজ ফরম্যাটের সংস্করণ।
WeaveSubnetId {
kWeaveSubnetId_NotSpecified = 0,
kWeaveSubnetId_PrimaryWiFi = 1,
kWeaveSubnetId_ThreadAlarm = 2,
kWeaveSubnetId_WiFiAP = 3,
kWeaveSubnetId_MobileDevice = 4,
kWeaveSubnetId_Service = 5,
kWeaveSubnetId_ThreadMesh = 6
}
enum
সাধারণ ডিভাইসে বিশিষ্ট নেটওয়ার্ক ইন্টারফেসের জন্য উইভের কিছু সংরক্ষিত সাবনেট নম্বর রয়েছে।
WeaveVendorId enum

Typedefs

FabricSecretRotationScheme typedef
uint8_t
FabricSecretScope nl::Weave::FabricSecretScope
uint8_t
ফ্যাব্রিক সিক্রেট ধারণ করতে এবং ব্যবহার করতে পারে এমন ডিভাইসের বিভাগ সনাক্ত করে।
WeaveAuthMode typedef
uint16_t
একটি পিয়ার নোড কিভাবে প্রমাণীকরণ করা হয় তা সনাক্ত করে।
WeaveEncryptionKey typedef
WeaveEncryptionType typedef
enum nl::Weave::WeaveEncryptionType
Weave বার্তার জন্য এনক্রিপশন প্রকার।
WeaveExchangeFlags typedef
enum nl::Weave::WeaveExchangeFlags
ওয়েভ এক্সচেঞ্জ হেডার পতাকা বিট।
WeaveExchangeVersion typedef
enum nl::Weave::WeaveExchangeVersion
ওয়েভ এক্সচেঞ্জ হেডার সংস্করণ।
WeaveMessageFlags typedef
enum nl::Weave::WeaveMessageFlags
ইনবাউন্ড বা আউটবাউন্ড উইভ বার্তার সাথে যুক্ত পতাকা।
WeaveMessageHeader typedef
WeaveMessageVersion typedef
enum nl::Weave::WeaveMessageVersion
ওয়েভ মেসেজ ফরম্যাটের সংস্করণ।
WeaveSubnetId typedef
enum nl::Weave::WeaveSubnetId
সাধারণ ডিভাইসে বিশিষ্ট নেটওয়ার্ক ইন্টারফেসের জন্য উইভের কিছু সংরক্ষিত সাবনেট নম্বর রয়েছে।

ভেরিয়েবল

ExchangeMgr
NL_DLL_EXPORT WeaveExchangeManager
FabricState
NL_DLL_EXPORT WeaveFabricState
MessageLayer
NL_DLL_EXPORT WeaveMessageLayer
SecurityMgr
NL_DLL_EXPORT WeaveSecurityManager
WeaveConnection
class NL_DLL_EXPORT
WeaveExchangeManager
class NL_DLL_EXPORT
WeaveMessageLayer
class NL_DLL_EXPORT
gDefaultWRMPConfig = { WEAVE_CONFIG_WRMP_DEFAULT_INITIAL_RETRANS_TIMEOUT, WEAVE_CONFIG_WRMP_DEFAULT_ACTIVE_RETRANS_TIMEOUT, WEAVE_CONFIG_WRMP_DEFAULT_ACK_TIMEOUT, WEAVE_CONFIG_WRMP_DEFAULT_MAX_RETRANS }
const WRMPConfig
kWeaveMsgEncAppKeyDiversifier = { 0xB1, 0x1D, 0xAE, 0x5B }[]
const uint8_t
কী ডাইভারসিফায়ার ওয়েভ মেসেজ এনক্রিপশন কী ডেরাইভেশনের জন্য ব্যবহৃত হয়।

ফাংশন

AppGroupMasterKeyIdFromAuthMode (WeaveAuthMode authMode)
uint8_t
প্রমাণীকরণ মোডের সাথে যুক্ত অ্যাপ্লিকেশন গ্রুপ মাস্টার কী আইডি প্রদান করে।
CASEAuthMode (uint8_t certType)
WeaveAuthMode
একটি প্রদত্ত শংসাপত্র প্রকারের জন্য একটি সংশ্লিষ্ট CASE প্রমাণীকরণ মোড প্রদান করে৷
CertTypeFromAuthMode (WeaveAuthMode authMode)
uint8_t
প্রদত্ত প্রমাণীকরণ মোডের জন্য পাসওয়ার্ড উৎস প্রদান করে।
DecodeHeaderField (const uint16_t headerField, WeaveMessageInfo *msgInfo)
void
DefaultOnMessageReceived ( ExchangeContext *ec, const IPPacketInfo *pktInfo, const WeaveMessageInfo *msgInfo, uint32_t profileId, uint8_t msgType, PacketBuffer *payload)
void
EncodeHeaderField (const WeaveMessageInfo *msgInfo)
uint16_t
FindMessageName (uint32_t inProfileId, uint8_t inMsgType)
const char *
FindProfileName (uint32_t inProfileId)
const char *
FormatWeaveError (char *buf, uint16_t bufSize, int32_t err)
bool
একটি ওয়েভ ত্রুটি দেওয়া হলে, ত্রুটি বর্ণনা করে একটি মানব-পঠনযোগ্য NULL-টার্মিনেটেড C স্ট্রিং প্রদান করে।
GenerateWeaveNodeId (uint64_t & nodeId)
NL_DLL_EXPORT WEAVE_ERROR
র্যান্ডম উইভ নোড আইডি তৈরি করুন।
GetFibonacciForIndex (uint32_t index)
uint32_t
এই ফাংশনটি একটি প্রদত্ত 32 বিট সূচকের জন্য 32-বিট ফিবোনাচি নম্বর তৈরি করে।
GetMessageName (uint32_t profileId, uint8_t msgType)
const char *
GetProfileName (uint32_t profileId)
const char *
GetRandU16 (void)
uint16_t
এই ফাংশনটি 16-বিট স্বাক্ষরবিহীন র্যান্ডম নম্বর তৈরি করে।
GetRandU32 (void)
uint32_t
এই ফাংশনটি 32-বিট স্বাক্ষরবিহীন র্যান্ডম নম্বর তৈরি করে।
GetRandU64 (void)
uint64_t
এই ফাংশনটি 64-বিট স্বাক্ষরবিহীন র্যান্ডম নম্বর তৈরি করে।
GetRandU8 (void)
uint8_t
এই ফাংশনটি 8-বিট স্বাক্ষরবিহীন র্যান্ডম নম্বর তৈরি করে।
GetVendorName (uint16_t vendorId)
const char *
GroupKeyAuthMode (uint32_t keyId)
WeaveAuthMode
একটি প্রদত্ত কী আইডির জন্য একটি সংশ্লিষ্ট গ্রুপ কী প্রমাণীকরণ মোড প্রদান করে।
IPv6InterfaceIdToWeaveNodeId (uint64_t interfaceId)
uint64_t
একটি IPv6 ঠিকানা ইন্টারফেস শনাক্তকারীকে একটি Weave নোড শনাক্তকারীতে রূপান্তর করুন।
IsCASEAuthMode (WeaveAuthMode authMode)
bool
সত্য যদি প্রমাণীকরণ মোড Weave CASE প্রোটোকলের উপর ভিত্তি করে হয়।
IsCertAuthMode (WeaveAuthMode authMode)
bool
সত্য যদি প্রমাণীকরণ মোড একটি শংসাপত্রের সাথে যুক্ত একটি ব্যক্তিগত কী দখলের উপর ভিত্তি করে হয়।
IsGroupKeyAuthMode (WeaveAuthMode authMode)
bool
সত্য যদি প্রমাণীকরণ মোড একটি ভাগ করা গ্রুপ কী দখলের উপর ভিত্তি করে হয়।
IsPASEAuthMode (WeaveAuthMode authMode)
bool
সত্য যদি প্রমাণীকরণ মোড Weave PASE প্রোটোকলের উপর ভিত্তি করে হয়।
IsPasswordAuthMode (WeaveAuthMode authMode)
bool
সত্য যদি প্রমাণীকরণ মোড একটি শেয়ার করা পাসওয়ার্ডের উপর ভিত্তি করে থাকে।
IsTAKEAuthMode (WeaveAuthMode authMode)
bool
সত্য যদি প্রমাণীকরণ মোড Weave TAKE প্রোটোকলের উপর ভিত্তি করে হয়।
IsWRMPControlMessage (uint32_t profileId, uint8_t msgType)
bool
J2N_ByteArray (JNIEnv *env, jbyteArray inArray, uint8_t *& outArray, uint32_t & outArrayLen)
J2N_ByteArrayFieldVal (JNIEnv *env, jobject obj, const char *fieldName, uint8_t *& outArray, uint32_t & outArrayLen)
J2N_ByteArrayInPlace (JNIEnv *env, jbyteArray inArray, uint8_t *outArray, uint32_t maxArrayLen)
J2N_EnumFieldVal (JNIEnv *env, jobject obj, const char *fieldName, const char *fieldType, int & outVal)
J2N_EnumVal (JNIEnv *env, jobject enumObj, int & outVal)
J2N_IntFieldVal (JNIEnv *env, jobject obj, const char *fieldName, jint & outVal)
J2N_LongFieldVal (JNIEnv *env, jobject obj, const char *fieldName, jlong & outVal)
J2N_ShortFieldVal (JNIEnv *env, jobject obj, const char *fieldName, jshort & outVal)
J2N_StringFieldVal (JNIEnv *env, jobject obj, const char *fieldName, char *& outVal)
MakeClassName (const char *basePackageName, const char *relativeClassName, char *& classNameBuf)
PASEAuthMode (uint8_t pwSource)
WeaveAuthMode
একটি প্রদত্ত পাসওয়ার্ড উত্সের জন্য একটি সংশ্লিষ্ট PASE প্রমাণীকরণ মোড প্রদান করে৷
PasswordSourceFromAuthMode (WeaveAuthMode authMode)
uint8_t
প্রদত্ত প্রমাণীকরণ মোডের জন্য পাসওয়ার্ড উৎস প্রদান করে।
PrintTunnelInfo (const WeaveConnectionTunnel & tun, const TCPEndPoint & fromEndPoint, const TCPEndPoint & toEndPoint, const PacketBuffer & data)
void
ToHex (const uint8_t data)
char
ToHexString (const uint8_t *data, size_t dataLen, char *& outBuf, size_t & outBufSize)
void
WeaveEncryptionKeyToString (uint8_t encType, const WeaveEncryptionKey & key, char *buf, size_t bufSize)
void
WeaveFabricIdToIPv6GlobalId (uint64_t fabricId)
uint64_t
একটি ওয়েভ ফ্যাব্রিক শনাক্তকারীকে একটি IPv6 ULA গ্লোবাল আইডেন্টিফায়ারে রূপান্তর করুন।
WeaveMessageSourceToStr (char *buf, uint32_t bufSize, const WeaveMessageInfo *msgInfo)
void
এর পরিবর্তে WeaveMessageLayer::GetPeerDescription() ব্যবহার করুন।
WeaveNodeAddrToStr (char *buf, uint32_t bufSize, uint64_t nodeId, const IPAddress *addr, uint16_t port, WeaveConnection *con)
void
এর পরিবর্তে WeaveMessageLayer::GetPeerDescription() ব্যবহার করুন।
WeaveNodeIdToIPv6InterfaceId (uint64_t nodeId)
uint64_t
একটি ওয়েভ নোড শনাক্তকারীকে একটি IPv6 ঠিকানা ইন্টারফেস শনাক্তকারীতে রূপান্তর করুন।
max (const _T & a, const _T & b)
const _T &
min (const _T & a, const _T & b)
const _T &

ক্লাস

nl:: বুনন:: বাঁধাই

একটি ওয়েভ যোগাযোগ এবং সংশ্লিষ্ট কনফিগারেশন তথ্যের উদ্দেশ্য লক্ষ্য ক্যাপচার করে।

nl:: বুনন:: কাউন্টার

একটি পূর্ণসংখ্যা মান হিসাবে একটি কাউন্টার পরিচালনার জন্য একটি ইন্টারফেস।

nl:: ওয়েভ:: এক্সচেঞ্জ কনটেক্সট

এই ক্লাসটি দুই বা ততোধিক নোডের মধ্যে একটি চলমান কথোপকথন ( এক্সচেঞ্জ কনটেক্সট ) উপস্থাপন করে।

nl:: বুনন:: FabricStateDelegate

এই বিমূর্ত প্রতিনিধি শ্রেণী ফ্যাব্রিক অবস্থা পরিবর্তন যোগাযোগ.

nl:: বুনন:: HostPortList

হোস্ট পোর্ট লিস্ট পরিচালনা এবং ম্যানিপুলেট করার জন্য, ওয়েভ সার্ভিস ডিরেক্টরির সাথে যুক্ত হোস্ট এবং পোর্ট আইডেন্টিফায়ার টিপলের একটি কমপ্যাক্ট, বাইনারি-এনকোডেড সংগ্রহ।

nl:: বুনন:: JNIUtils
nl:: বুনন:: মনোটোনিকলি ইনক্রিজিং কাউন্টার

একটি পূর্ণসংখ্যা মান হিসাবে একঘেয়ে-বর্ধমান কাউন্টার পরিচালনা করার জন্য একটি শ্রেণী।

nl:: Weave:: Persisted Counter

রিবুট জুড়ে টিকে থাকার উদ্দেশ্যে একটি পূর্ণসংখ্যা মান হিসাবে একটি কাউন্টার পরিচালনার জন্য একটি ক্লাস।

nl:: Weave:: WeaveConnection

ওয়েভ কানেকশন ক্লাসের সংজ্ঞা।

nl:: Weave:: WeaveConnectionTunnel

WeaveConnectionTunnel ক্লাসের সংজ্ঞা, যা এক জোড়া TCPEndPoints পরিচালনা করে যার মূল WeaveConnections জোড়া হয়েছে, এবং যার মধ্যে WeaveMessageLayer সমস্ত ডেটা এবং সংযোগ বন্ধ করে দেয়।

nl:: Weave:: WeaveEncryptionKey_AES128CTRSHA1
nl:: Weave:: WeaveExchangeHeader

এটি একটি এক্সচেঞ্জ কনটেক্সটের মধ্যে একটি নির্দিষ্ট উইভ বার্তার উইভ প্রোফাইল এবং বার্তার ধরন নির্দিষ্ট করে।

nl:: Weave:: WeaveExchangeManager

এই ক্লাসটি অন্যান্য উইভ নোডের সাথে এক্সচেঞ্জ কনটেক্সট পরিচালনা করতে ব্যবহৃত হয়।

nl:: Weave:: WeaveFabricState

WeaveFabricState এর ফরোয়ার্ড ঘোষণা।

nl:: বুনন:: WeaveKeyId

ওয়েভ কী শনাক্তকারীর সংজ্ঞা।

nl:: Weave:: WeaveMessageLayer

WeaveMessageLayer ক্লাসের সংজ্ঞা, যা অন্যান্য Weave নোডের সাথে যোগাযোগ পরিচালনা করে।

nl:: Weave:: WeaveMsgEncryptionKey

Weave বার্তা এনক্রিপশন কী সম্পর্কে তথ্য রয়েছে।

nl:: Weave:: WeaveMsgEncryptionKeyCache

Weave বার্তা এনক্রিপশন কীগুলির জন্য কী ক্যাশে।

nl:: Weave:: WeaveSecurityManager
nl:: ওয়েভ:: উইভ সার্ভারবেস

উইভ প্রোফাইল অনাকাঙ্ক্ষিত উত্তরদাতা (সার্ভার) বাস্তবায়নের জন্য সাধারণ, বেস অবজেক্ট যা প্রমাণীকৃত অনুরোধগুলিকে যাচাইকরণ এবং স্ট্যাটাস রিপোর্ট পাঠানো এবং ফ্যাব্রিক স্টেট এবং একটি এক্সচেঞ্জ ম্যানেজারের জন্য সাধারণ ডেটা সদস্য স্টোরেজ প্রদান করে।

nl:: বুনন:: WeaveServerDelegateBase

Weave সার্ভার প্রতিনিধি বস্তু বাস্তবায়নের জন্য একটি সাধারণ বেস ক্লাস।

nl:: Weave:: WeaveSessionKey

একটি উইভ সেশন কী সম্পর্কে তথ্য রয়েছে।

nl:: Weave:: WeaveSessionState

অন্য নোডের সাথে বার্তা পাঠাতে/গ্রহণ করার জন্য প্রয়োজনীয় যোগাযোগের অবস্থা বোঝায়।

কাঠামো

nl:: বুনন:: JNILibraryMethod
nl:: বুনা:: WRMPConfig

WRMP কনফিগারেশন।

nl:: Weave:: WeaveMessageInfo

একটি ওয়েভ বার্তা সম্পর্কে তথ্য যা পাঠানো বা গ্রহণের প্রক্রিয়াধীন রয়েছে।

ইউনিয়ন

nl:: Weave:: WeaveEncryptionKey

নামস্থান

nl:: ওয়েভ:: ASN1

এই নেমস্পেসটিতে অ্যাবস্ট্রাক্ট সিনট্যাক্স নোটেশন ওয়ান (ASN.1) এর সাথে কাজ করার জন্য উইভের মধ্যে সমস্ত ইন্টারফেস অন্তর্ভুক্ত রয়েছে।

nl:: ওয়েভ:: ক্রিপ্টো

এই নেমস্পেস শেয়ার্ড ক্রিপ্টোগ্রাফিক সমর্থনের জন্য উইভের মধ্যে সমস্ত ইন্টারফেস অন্তর্ভুক্ত করে।

nl:: ওয়েভ:: ডিভাইস লেয়ার
nl:: ওয়েভ:: ডিভাইস ম্যানেজার
nl:: ওয়েভ:: এনকোডিং

এই নেমস্পেস এর জন্য ফাংশন প্রদান করে:

nl:: বিণ:: লগিং

এই নেমস্পেস শেয়ার্ড লগিং সমর্থনের জন্য উইভের মধ্যে সমস্ত ইন্টারফেস অন্তর্ভুক্ত করে।

nl:: বুনন:: প্ল্যাটফর্ম
nl:: বুনা:: প্রোফাইল

এই নেমস্পেসটিতে উইভ ফর উইভ প্রোফাইলের মধ্যে সমস্ত ইন্টারফেস অন্তর্ভুক্ত রয়েছে, উভয়ই সাধারণ এবং নেস্ট ল্যাব বিক্রেতা-নির্দিষ্ট।

nl:: ওয়েভ:: সিকিউরিটি সাপোর্ট
nl:: বুনন:: পরিসংখ্যান
nl:: বুনন:: সমর্থন
nl:: বুনন:: সিস্টেম
nl:: বুনন:: TLV

Weave TLV ফরম্যাটে এনকোড করা ডেটার সাথে কাজ করার সংজ্ঞা।

nl:: বুনন:: উষ্ণ

এই নেমস্পেসে ওয়েভ অ্যাড্রেস এবং রাউটিং মডিউলের ইন্টারফেস রয়েছে, যা ওয়েভ আইপি অ্যাড্রেস এবং রুট কনফিগার করার জন্য একটি পোর্টেবল মডিউল।

গণনা

@২১

 @21
বৈশিষ্ট্য
kFlagAckPending

প্রেরিত একটি বার্তার জন্য যদি একটি প্রতিক্রিয়া প্রত্যাশিত হয়।

kFlagAutoReleaseConnection

যখন বিনিময় প্রসঙ্গ মুক্ত হয় তখন স্বয়ংক্রিয়ভাবে বার্তা এনক্রিপশন কীটি ছেড়ে দিন।

kFlagAutoReleaseKey

সেট করা হলে, বোঝায় যে এই বিনিময় প্রসঙ্গে পিয়ারের কাছ থেকে অন্তত একটি বার্তা প্রাপ্ত হয়েছে।

kFlagAutoRequestAck

এই প্রসঙ্গটি একটি WeaveConnection এর সাথে যুক্ত ছিল।

kFlagConnectionClosed

এই প্রেক্ষাপটটি বিনিময়ের সূচনাকারী।

kFlagDropAck

সেট করা হলে, UDP-এর মাধ্যমে কোনো বার্তা পাঠানো হলে স্বয়ংক্রিয়ভাবে একটি স্বীকৃতির অনুরোধ করুন।

kFlagMsgRcvdFromPeer

সেট করা হলে, বোঝায় যে এই এক্সচেঞ্জে প্রাপ্ত কমপক্ষে একটি বার্তা একটি স্বীকৃতির অনুরোধ করেছে৷

এটি যে প্রতিক্রিয়া বার্তাটি পাঠাতে চলেছে তার জন্য একটি স্বীকৃতির অনুরোধ করতে হবে কিনা তা সিদ্ধান্ত নিতে এই পতাকাটি অ্যাপ্লিকেশনটি পড়ে। এই পতাকাটি পিয়ার WRMP ব্যবহার করছে কিনা তাও নির্দেশ করতে পারে।

kFlagPeerRequestedAck

সেট করা হলে, বোঝায় যে ফেরত পাঠানোর জন্য একটি স্বীকৃতি মুলতুবি আছে।

kFlagResponseExpected

শুধুমাত্র অভ্যন্তরীণ এবং ডিবাগ: সেট করা হলে, বিনিময় স্তর একটি স্বীকৃতি পাঠায় না।

kFlagUseEphemeralUDPPort

এক্সচেঞ্জ প্রসঙ্গ মুক্ত হলে স্বয়ংক্রিয়ভাবে সংশ্লিষ্ট WeaveConnection ছেড়ে দিন।

@36

 @36

@37

 @37

@38

 @38
বৈশিষ্ট্য
kFabricIdDefaultForTest

ডিফল্ট ফ্যাব্রিক আইডি, যা শুধুমাত্র পরীক্ষার উদ্দেশ্যে ব্যবহার করা উচিত।

@৩৯

 @39

শংসাপত্রের উদ্দেশ্য বা আবেদন শনাক্ত করে।

একটি শংসাপত্রের ধরন একটি লেবেল যা একটি শংসাপত্রের উদ্দেশ্য বা অ্যাপ্লিকেশন বর্ণনা করে। শংসাপত্রের ধরনগুলি সংশ্লিষ্ট শংসাপত্রের বৈশিষ্ট্য হিসাবে বহন করা হয় না, বরং শংসাপত্রের কাঠামো এবং/অথবা যে প্রেক্ষাপটে এটি ব্যবহৃত হয় তা থেকে উদ্ভূত হয়। শংসাপত্রের ধরণ গণনার মধ্যে সাধারণভাবে ব্যবহৃত শংসাপত্র অ্যাপ্লিকেশনগুলিকে বর্ণনা করে পূর্ব-সংজ্ঞায়িত মানগুলির একটি সেট অন্তর্ভুক্ত থাকে। বিকাশকারীরা অ্যাপ্লিকেশন-নির্দিষ্ট প্রকারের সাথে শংসাপত্র প্রকারের মান পরিসরও প্রসারিত করতে পারে যা কাস্টম শংসাপত্র বা অনন্য নিরাপত্তা বৈশিষ্ট্য সহ শংসাপত্রগুলি বর্ণনা করে।

শংসাপত্রের ধরনগুলি প্রাথমিকভাবে অ্যাক্সেস নিয়ন্ত্রণ নীতিগুলি বাস্তবায়নে ব্যবহৃত হয়, যেখানে অ্যাপ্লিকেশন বৈশিষ্ট্যগুলিতে অ্যাক্সেস একটি অনুরোধকারীর দ্বারা উপস্থাপিত শংসাপত্রের প্রকার দ্বারা প্রভাবিত হয়।

বৈশিষ্ট্য
kCertType_AccessToken

একটি উইভ অ্যাক্সেস টোকেন শংসাপত্র।

kCertType_AppDefinedBase

অ্যাপ্লিকেশন-নির্দিষ্ট শংসাপত্রের প্রকারের মান >= এই মান থাকা উচিত।

kCertType_CA

একটি CA শংসাপত্র।

kCertType_Device

একটি ওয়েভ ডিভাইস সার্টিফিকেট।

kCertType_FirmwareSigning

একটি ওয়েভ ফার্মওয়্যার সাইনিং সার্টিফিকেট।

kCertType_General

সার্টিফিকেট একটি সাধারণ বা অ-নির্দিষ্ট ধরনের।

kCertType_Max

শংসাপত্রের প্রকারগুলি এই মানের থেকে বেশি হওয়া উচিত নয়৷

kCertType_NotSpecified

শংসাপত্রের ধরন নির্দিষ্ট করা হয়নি।

kCertType_ServiceEndpoint

একটি ওয়েভ সার্ভিস এন্ডপয়েন্ট সার্টিফিকেট।

@৪০

 @40

একটি পাসওয়ার্ড-ভিত্তিক প্রমাণীকরণ প্রোটোকলে ব্যবহৃত পাসওয়ার্ডের উত্স সনাক্ত করে (যেমন

বুনন PASE)

@41

 @41
বৈশিষ্ট্য
kWeaveAuthModeCategory_AppDefinedBase

অ্যাপ্লিকেশন-সংজ্ঞায়িত প্রমাণীকরণ বিভাগের জন্য ভিত্তি মান।

kWeaveAuthModeCategory_CASE

Weave CASE প্রোটোকল ব্যবহার করে পিয়ার প্রমাণীকৃত।

kWeaveAuthModeCategory_General

সাধারণ প্রক্রিয়ার একটি সেট ব্যবহার করে পিয়ার প্রমাণীকৃত।

kWeaveAuthModeCategory_GroupKey

একটি শেয়ার্ড গ্রুপ কী ব্যবহার করে পিয়ার প্রমাণীকৃত।

kWeaveAuthModeCategory_PASE

Weave PASE প্রোটোকল ব্যবহার করে পিয়ার প্রমাণীকৃত।

kWeaveAuthModeCategory_TAKE

ওয়েভ টেক প্রোটোকল ব্যবহার করে পিয়ার প্রমাণীকৃত।

kWeaveAuthMode_CASE_AccessToken

ওয়েভ অ্যাক্সেস টোকেন শংসাপত্র সহ CASE ব্যবহার করে পিয়ার প্রমাণীকৃত।

kWeaveAuthMode_CASE_AnyCert

নির্বিচারে শংসাপত্র, বা অজানা ধরনের শংসাপত্র সহ CASE ব্যবহার করে পিয়ার প্রমাণীকৃত।

kWeaveAuthMode_CASE_Device

ওয়েভ ডিভাইস সার্টিফিকেট সহ CASE ব্যবহার করে পিয়ার প্রমাণীকৃত।

kWeaveAuthMode_CASE_GeneralCert

একটি সাধারণ, বা অ-নির্দিষ্ট শংসাপত্রের ধরন সহ CASE ব্যবহার করে পিয়ার প্রমাণীকৃত৷

kWeaveAuthMode_CASE_ServiceEndPoint

ওয়েভ সার্ভিস এন্ডপয়েন্ট সার্টিফিকেট সহ CASE ব্যবহার করে পিয়ার প্রমাণীকৃত।

kWeaveAuthMode_NotSpecified

প্রমাণীকরণ মোড নির্দিষ্ট করা নেই।

kWeaveAuthMode_PASE_PairingCode

ডিভাইস পেয়ারিং কোড সহ PASE ব্যবহার করে পিয়ার প্রমাণীকৃত।

kWeaveAuthMode_TAKE_IdentificationKey

একটি টোকেন শনাক্তকরণ কী দিয়ে TAKE ব্যবহার করে পিয়ার প্রমাণীকৃত।

kWeaveAuthMode_Unauthenticated

পিয়ার প্রমাণীকৃত নয়।

@৪২

 @42
বৈশিষ্ট্য
kFabricSecretScope_All

সমস্ত ডিভাইস সংশ্লিষ্ট ফ্যাব্রিক গোপন অধিকারী হতে পারে.

@43

 @43
বৈশিষ্ট্য
kTestKey_AES128CTRSHA1_DataKeyByte

বাইট মান যা এনক্রিপশন কী তৈরি করে, যা শুধুমাত্র পরীক্ষার জন্য ব্যবহৃত হয়।

kTestKey_AES128CTRSHA1_IntegrityKeyByte

বাইট মান যা অখণ্ডতা কী তৈরি করে, যা শুধুমাত্র পরীক্ষার জন্য ব্যবহৃত হয়।

@44

 @44

বুনা বার্তা এনক্রিপশন অ্যাপ্লিকেশন কী বৈচিত্র্যকারী আকার.

@৪৫

 @45

@53

 @53

@54

 @54
বৈশিষ্ট্য
kWeavePeerDescription_MaxLength

WeaveMessageLayer::GetPeerDescription() দ্বারা প্রত্যাবর্তিত স্ট্রিংয়ের সর্বাধিক দৈর্ঘ্য (NUL অক্ষর সহ)।

@55

 @55

একটি এনকোডেড উইভ বার্তার শিরোনাম সম্পর্কিত সংজ্ঞা।

বৈশিষ্ট্য
kWeaveHeaderFlag_DestNodeId

নির্দেশ করে যে গন্তব্য নোড আইডি ওয়েভ বার্তা শিরোনামে উপস্থিত রয়েছে।

kWeaveHeaderFlag_MsgCounterSyncReq

ইঙ্গিত করে যে প্রেরক বার্তা কাউন্টার সিঙ্ক্রোনাইজেশনের অনুরোধ করে।

kWeaveHeaderFlag_SourceNodeId

ইঙ্গিত করে যে সোর্স নোড আইডিটি উইভ মেসেজ হেডারে উপস্থিত রয়েছে।

kWeaveHeaderFlag_TunneledData

নির্দেশ করে যে ওয়েভ মেসেজ পেলোড একটি টানেল আইপি প্যাকেট।

@56

 @56

IEEE EUI-64 শনাক্তকারীর জন্য বিট ক্ষেত্রের সংজ্ঞা।

বৈশিষ্ট্য
kEUI64_IG_Group

স্বতন্ত্র/গ্রুপ বিট মান একটি গ্রুপ ঠিকানা EUI-64 শনাক্তকারী নির্দেশ করে।

kEUI64_IG_Individual

স্বতন্ত্র/গ্রুপ বিট মান একটি পৃথক ঠিকানা EUI-64 শনাক্তকারীকে নির্দেশ করে।

kEUI64_IG_Mask

একটি EUI-64 শনাক্তকারীর মধ্যে ব্যক্তি/গ্রুপ (I/G) বিটের জন্য বিটমাস্ক।

0 এর মান নির্দেশ করে যে আইডি একটি পৃথক ঠিকানা। 1 এর মান নির্দেশ করে যে আইডি একটি গ্রুপ ঠিকানা।

kEUI64_UL_Local

ইউনিভার্সাল/স্থানীয় বিট মান স্থানীয়ভাবে পরিচালিত EUI-64 শনাক্তকারীকে নির্দেশ করে।

kEUI64_UL_Mask

একটি EUI-64 শনাক্তকারীর মধ্যে ইউনিভার্সাল/লোকাল (U/L) বিটের জন্য বিটমাস্ক।

0-এর মান নির্দেশ করে যে আইডি সার্বজনীনভাবে (বিশ্বব্যাপী) পরিচালিত হয়। 1 এর মান নির্দেশ করে যে আইডিটি স্থানীয়ভাবে পরিচালিত হয়।

kEUI64_UL_Unversal

সার্বজনীন/স্থানীয় বিট মান একটি সর্বজনীনভাবে পরিচালিত EUI-64 শনাক্তকারীকে নির্দেশ করে।

@57

 @57

উইভ নোড আইডির বিশেষ পরিসর।

বৈশিষ্ট্য
kMaxAlwaysLocalWeaveNodeId

এই মানের থেকে কম বা সমান ওয়েভ নোড আইডেন্টিফায়ারগুলিকে পরীক্ষার সুবিধার জন্য স্থানীয় হিসাবে বিবেচনা করা হয়।

WeaveEncryptionType

 WeaveEncryptionType

Weave বার্তার জন্য এনক্রিপশন প্রকার।

বৈশিষ্ট্য
kWeaveEncryptionType_AES128CTRSHA1

HMAC-SHA-1 বার্তা অখণ্ডতার সাথে AES-128-CTR এনক্রিপশন ব্যবহার করে বার্তা এনক্রিপ্ট করা হয়েছে।

kWeaveEncryptionType_None

বার্তা এনক্রিপ্ট করা হয়নি।

WeaveExchange Flags

 WeaveExchangeFlags

ওয়েভ এক্সচেঞ্জ হেডার পতাকা বিট।

বৈশিষ্ট্য
kWeaveExchangeFlag_AckId

বর্তমান বার্তাটি পূর্বে প্রাপ্ত একটি বার্তার স্বীকৃতি হিসেবে সেট করুন৷

kWeaveExchangeFlag_Initiator

একটি বিনিময়ের সূচনাকারী দ্বারা বর্তমান বার্তা পাঠানো হলে সেট করুন।

kWeaveExchangeFlag_NeedsAck

বর্তমান বার্তা প্রাপকের কাছ থেকে একটি স্বীকৃতির অনুরোধ করার সময় সেট করুন।

WeaveExchange Version

 WeaveExchangeVersion

ওয়েভ এক্সচেঞ্জ হেডার সংস্করণ।

WeaveMessage Flags

 WeaveMessageFlags

ইনবাউন্ড বা আউটবাউন্ড উইভ বার্তার সাথে যুক্ত পতাকা।

এখানে সংজ্ঞায়িত মানগুলি WeaveMessageInfo.Flags ক্ষেত্রের মধ্যে ব্যবহারের জন্য।

বৈশিষ্ট্য
kWeaveMessageFlag_DefaultMulticastSourceAddress

নির্দেশ করে যে IPv6 মাল্টিকাস্ট বার্তা পাঠানোর সময় ডিফল্ট IPv6 উৎস ঠিকানা নির্বাচন ব্যবহার করা উচিত।

kWeaveMessageFlag_DelaySend

ইঙ্গিত করে যে বার্তা প্রেরণে দেরি করা দরকার।

kWeaveMessageFlag_DestNodeId

নির্দেশ করে যে গন্তব্য নোড আইডি ওয়েভ বার্তা শিরোনামে উপস্থিত রয়েছে।

kWeaveMessageFlag_DuplicateMessage

ইঙ্গিত করে যে বার্তাটি পূর্বে প্রাপ্ত একটি বার্তার সদৃশ।

kWeaveMessageFlag_FromInitiator

ইঙ্গিত করে যে বার্তার উত্স হল ওয়েভ এক্সচেঞ্জের সূচনাকারী৷

kWeaveMessageFlag_MessageEncoded

নির্দেশ করে যে ওয়েভ বার্তাটি ইতিমধ্যেই এনকোড করা আছে।

kWeaveMessageFlag_MsgCounterSyncReq

ইঙ্গিত করে যে প্রেরক পিয়ারের বার্তা কাউন্টার সিঙ্ক্রোনাইজেশনের অনুরোধ করে।

kWeaveMessageFlag_MulticastFromLinkLocal

kWeaveMessageFlag_DefaultMulticastSourceAddress এর জন্য অপ্রচলিত উপনাম।

kWeaveMessageFlag_PeerGroupMsgIdNotSynchronized

ইঙ্গিত করে যে পিয়ারের গ্রুপ কী মেসেজ কাউন্টার সিঙ্ক্রোনাইজ করা হয়নি।

kWeaveMessageFlag_PeerRequestedAck

ইঙ্গিত করে যে বার্তাটির প্রেরক একটি স্বীকৃতির অনুরোধ করেছেন৷

kWeaveMessageFlag_RetainBuffer

ইঙ্গিত করে যে বার্তা বাফার পাঠানোর পরে মুক্ত করা উচিত নয়।

kWeaveMessageFlag_ReuseMessageId

নির্দেশ করে যে বিদ্যমান বার্তা শনাক্তকারী পুনরায় ব্যবহার করা আবশ্যক।

kWeaveMessageFlag_ReuseSourceId

ইঙ্গিত করে যে বিদ্যমান সোর্স নোড শনাক্তকারীকে অবশ্যই পুনরায় ব্যবহার করতে হবে।

kWeaveMessageFlag_SourceNodeId

ইঙ্গিত করে যে সোর্স নোড আইডিটি উইভ মেসেজ হেডারে উপস্থিত রয়েছে।

kWeaveMessageFlag_TunneledData

নির্দেশ করে যে ওয়েভ মেসেজ পেলোড একটি টানেল আইপি প্যাকেট।

kWeaveMessageFlag_ViaEphemeralUDPPort

ইঙ্গিত করে যে স্থানীয় ক্ষণস্থায়ী UDP পোর্টের মাধ্যমে বার্তা পাঠানো/গ্রহণ করা হচ্ছে।

WeaveMessageVersion

 WeaveMessageVersion

ওয়েভ মেসেজ ফরম্যাটের সংস্করণ।

উইভ বার্তার জন্য প্রয়োজনীয় ফ্রেম বিন্যাসের উপর ভিত্তি করে উপযুক্ত বার্তা সংস্করণ বেছে নেবে। ডিফল্টরূপে, বার্তা সংস্করণ হল kWeaveMessageVersion_V1। উইভ নির্ভরযোগ্য মেসেজিং ব্যবহার করার সময়, উদাহরণস্বরূপ, সংস্করণটি হল kWeaveMessageVersion_V2।

বৈশিষ্ট্য
kWeaveMessageVersion_Unspecified

অনির্দিষ্ট বার্তা সংস্করণ।

kWeaveMessageVersion_V1

বার্তা শিরোনাম বিন্যাস সংস্করণ V1.

kWeaveMessageVersion_V2

বার্তা শিরোনাম বিন্যাস সংস্করণ V2.

WeaveSubnetId

 WeaveSubnetId

সাধারণ ডিভাইসে বিশিষ্ট নেটওয়ার্ক ইন্টারফেসের জন্য উইভের কিছু সংরক্ষিত সাবনেট নম্বর রয়েছে।

এই সংখ্যাগুলি এখানে প্রতীকী ধ্রুবকের জন্য বরাদ্দ করা হয়েছে। এই সাবনেট নম্বরগুলি উপযুক্ত ইন্টারফেসে IPv6 ULA ঠিকানাগুলি কনফিগার করতে Weave দ্বারা ব্যবহৃত হয়।

বৈশিষ্ট্য
kWeaveSubnetId_MobileDevice

সমস্ত মোবাইল ডিভাইসের জন্য সাবনেট শনাক্তকারী।

kWeaveSubnetId_NotSpecified

একটি অনির্দিষ্ট বা শূন্য মান হিসাবে সংরক্ষিত।

kWeaveSubnetId_PrimaryWiFi

ওয়াইফাই রেডিও ইন্টারফেস সাবনেট নম্বর।

kWeaveSubnetId_Service

নেস্ট সার্ভিস এন্ডপয়েন্টের জন্য সাবনেট শনাক্তকারী।

kWeaveSubnetId_ThreadAlarm

থ্রেড অ্যালার্ম রেডিও ইন্টারফেস সাবনেট নম্বর।

kWeaveSubnetId_ThreadMesh

থ্রেড মেশ রেডিও ইন্টারফেস সাবনেট শনাক্তকারী।

kWeaveSubnetId_WiFiAP

স্থানীয় Wi-Fi AP ইন্টারফেস সাবনেট নম্বর।

WeaveVendorId

 WeaveVendorId

Typedefs

ফ্যাব্রিক সিক্রেট রোটেশন স্কিম

uint8_t FabricSecretRotationScheme

ফ্যাব্রিক সিক্রেটস্কোপ

uint8_t FabricSecretScope

ফ্যাব্রিক সিক্রেট ধারণ করতে এবং ব্যবহার করতে পারে এমন ডিভাইসের বিভাগ সনাক্ত করে।

WeaveAuthMode

uint16_t WeaveAuthMode

একটি পিয়ার নোড কিভাবে প্রমাণীকরণ করা হয় তা সনাক্ত করে।

WeaveAuthMode সেই উপায়গুলি বর্ণনা করে যার মাধ্যমে একটি পিয়ার নোড একটি Weave বার্তা বিনিময়ের সময় প্রমাণীকৃত হয়েছে বা হওয়া উচিত৷ একটি প্রারম্ভিক প্রেক্ষাপটে, অ্যাপ্লিকেশনগুলি একটি এক্সচেঞ্জের জন্য একটি পছন্দসই পিয়ার প্রমাণীকরণ মোড প্রকাশ করতে WeaveAuthMode ব্যবহার করে, যার ফলে কাঙ্খিত মোড অর্জন করতে বা যোগাযোগ ব্যর্থ করতে উইভ নিরাপত্তা এবং বার্তাপ্রেরণ স্তরগুলিকে নির্দেশ দেয়। একটি প্রতিক্রিয়ার প্রেক্ষাপটে, WeaveAuthMode শনাক্ত করে যে কীভাবে অনুরোধকারী নোড (পিয়ার) প্রমাণীকৃত হয়েছিল, প্রতিক্রিয়া প্রদানকারী অ্যাপ্লিকেশনটিকে এই তথ্যের উপর ভিত্তি করে অ্যাক্সেস নিয়ন্ত্রণগুলি প্রয়োগ করার অনুমতি দেয়৷

একটি ইনকামিং ওয়েভ বার্তার জন্য নির্ধারিত WeaveAuthMode সেই বার্তাটি এনক্রিপ্ট করতে ব্যবহৃত কীটির প্রকৃতির সাথে সম্পর্কিত। WeaveAuthMode সেই পদ্ধতি থেকে উদ্ভূত হয় যার দ্বারা কীটি প্রতিষ্ঠিত হয়েছিল এবং মূল প্রতিষ্ঠার সময় যোগাযোগকারী পক্ষের পরিচয় যাচাই করার জন্য ব্যবহৃত মানদণ্ড।

WeaveAuthMode সাধারণ প্রমাণীকরণ মোড বর্ণনা করে পূর্ব-নির্ধারিত মানগুলির একটি সেট অন্তর্ভুক্ত করে। এগুলি মূল চুক্তি প্রক্রিয়া (CASE, PASE, GroupKey, ইত্যাদি) দ্বারা বিভক্ত। বিকাশকারীরা অ্যাপ্লিকেশন-নির্দিষ্ট মোড সংজ্ঞায়িত করে WeaveAuthMode প্রসারিত করতে পারে, যা তারা নির্দিষ্ট এনক্রিপশন কীগুলির সাথে সংযুক্ত করতে পারে।

WeaveEncryptionKey

union nl::Weave::WeaveEncryptionKey WeaveEncryptionKey

WeaveEncryptionType

enum nl::Weave::WeaveEncryptionType WeaveEncryptionType

Weave বার্তার জন্য এনক্রিপশন প্রকার।

WeaveExchange Flags

enum nl::Weave::WeaveExchangeFlags WeaveExchangeFlags

ওয়েভ এক্সচেঞ্জ হেডার পতাকা বিট।

WeaveExchange Version

enum nl::Weave::WeaveExchangeVersion WeaveExchangeVersion

ওয়েভ এক্সচেঞ্জ হেডার সংস্করণ।

WeaveMessage Flags

enum nl::Weave::WeaveMessageFlags WeaveMessageFlags

ইনবাউন্ড বা আউটবাউন্ড উইভ বার্তার সাথে যুক্ত পতাকা।

এখানে সংজ্ঞায়িত মানগুলি WeaveMessageInfo.Flags ক্ষেত্রের মধ্যে ব্যবহারের জন্য।

WeaveMessageHeader

struct WeaveMessageInfo WeaveMessageHeader

WeaveMessageVersion

enum nl::Weave::WeaveMessageVersion WeaveMessageVersion

ওয়েভ মেসেজ ফরম্যাটের সংস্করণ।

উইভ বার্তার জন্য প্রয়োজনীয় ফ্রেম বিন্যাসের উপর ভিত্তি করে উপযুক্ত বার্তা সংস্করণ বেছে নেবে। ডিফল্টরূপে, বার্তা সংস্করণ হল kWeaveMessageVersion_V1। উইভ নির্ভরযোগ্য মেসেজিং ব্যবহার করার সময়, উদাহরণস্বরূপ, সংস্করণটি হল kWeaveMessageVersion_V2।

WeaveSubnetId

enum nl::Weave::WeaveSubnetId WeaveSubnetId

সাধারণ ডিভাইসে বিশিষ্ট নেটওয়ার্ক ইন্টারফেসের জন্য উইভের কিছু সংরক্ষিত সাবনেট নম্বর রয়েছে।

এই সংখ্যাগুলি এখানে প্রতীকী ধ্রুবকের জন্য বরাদ্দ করা হয়েছে। এই সাবনেট নম্বরগুলি উপযুক্ত ইন্টারফেসে IPv6 ULA ঠিকানাগুলি কনফিগার করতে Weave দ্বারা ব্যবহৃত হয়।

ভেরিয়েবল

এক্সচেঞ্জএমজিআর

NL_DLL_EXPORT WeaveExchangeManager ExchangeMgr

ফ্যাব্রিকস্টেট

NL_DLL_EXPORT WeaveFabricState FabricState

মেসেজ লেয়ার

NL_DLL_EXPORT WeaveMessageLayer MessageLayer

নিরাপত্তা এমজিআর

NL_DLL_EXPORT WeaveSecurityManager SecurityMgr

ওয়েভ সংযোগ

class NL_DLL_EXPORT WeaveConnection

WeaveExchangeManager

class NL_DLL_EXPORT WeaveExchangeManager

WeaveMessageLayer

class NL_DLL_EXPORT WeaveMessageLayer

gDefaultWRMPCconfig

const WRMPConfig gDefaultWRMPConfig = { WEAVE_CONFIG_WRMP_DEFAULT_INITIAL_RETRANS_TIMEOUT,
                                        WEAVE_CONFIG_WRMP_DEFAULT_ACTIVE_RETRANS_TIMEOUT,
                                        WEAVE_CONFIG_WRMP_DEFAULT_ACK_TIMEOUT,
                                        WEAVE_CONFIG_WRMP_DEFAULT_MAX_RETRANS }

kWeaveMsgEncAppKeyDiversifier

const uint8_t kWeaveMsgEncAppKeyDiversifier[] = { 0xB1, 0x1D, 0xAE, 0x5B }

কী ডাইভারসিফায়ার ওয়েভ মেসেজ এনক্রিপশন কী ডেরাইভেশনের জন্য ব্যবহৃত হয়।

এই মানটি "নেস্ট ওয়েভ মেসেজ EK এবং AK" বাক্যাংশের SHA-1 HASH-এর প্রথম 4 বাইট প্রতিনিধিত্ব করে।

ফাংশন

AppGroupMasterKeyIdFromAuthMode

uint8_t AppGroupMasterKeyIdFromAuthMode(
  WeaveAuthMode authMode
)

প্রমাণীকরণ মোডের সাথে যুক্ত অ্যাপ্লিকেশন গ্রুপ মাস্টার কী আইডি প্রদান করে।

CASEAuthMode

WeaveAuthMode CASEAuthMode(
  uint8_t certType
)

একটি প্রদত্ত শংসাপত্র প্রকারের জন্য একটি সংশ্লিষ্ট CASE প্রমাণীকরণ মোড প্রদান করে৷

CertTypeFromAuthMode

uint8_t CertTypeFromAuthMode(
  WeaveAuthMode authMode
)

প্রদত্ত প্রমাণীকরণ মোডের জন্য পাসওয়ার্ড উৎস প্রদান করে।

ডিকোডহেডারফিল্ড

void DecodeHeaderField(
  const uint16_t headerField,
  WeaveMessageInfo *msgInfo
)

DefaultOnMessageReceived

void DefaultOnMessageReceived(
  ExchangeContext *ec,
  const IPPacketInfo *pktInfo,
  const WeaveMessageInfo *msgInfo,
  uint32_t profileId,
  uint8_t msgType,
  PacketBuffer *payload
)

এনকোডহেডারফিল্ড

uint16_t EncodeHeaderField(
  const WeaveMessageInfo *msgInfo
)

মেসেজ নাম খুঁজুন

const char * FindMessageName(
  uint32_t inProfileId,
  uint8_t inMsgType
)

প্রোফাইল নাম খুঁজুন

const char * FindProfileName(
  uint32_t inProfileId
)

FormatWeaveError

bool FormatWeaveError(
  char *buf,
  uint16_t bufSize,
  int32_t err
)

একটি ওয়েভ ত্রুটি দেওয়া হলে, ত্রুটি বর্ণনা করে একটি মানব-পঠনযোগ্য NULL-টার্মিনেটেড C স্ট্রিং প্রদান করে।

বিস্তারিত
পরামিতি
[in] buf
বাফার যেখানে ত্রুটি স্ট্রিং স্থাপন করা হবে।
[in] bufSize
বাইটে সরবরাহকৃত বাফারের আকার।
[in] err
ত্রুটি বর্ণনা করা.
রিটার্নস
true যদি একটি বর্ণনা স্ট্রিং সরবরাহ করা বাফারে লেখা হয়।
রিটার্নস
মিথ্যা যদি সরবরাহকৃত ত্রুটিটি বুনা ত্রুটি না হয়।

WeaveNodeId তৈরি করুন

NL_DLL_EXPORT WEAVE_ERROR GenerateWeaveNodeId(
  uint64_t & nodeId
)

র্যান্ডম উইভ নোড আইডি তৈরি করুন।

এই ফাংশনটি 64-বিট স্থানীয়ভাবে অনন্য উইভ নোড আইডি তৈরি করে। এই ফাংশন ক্রিপ্টোগ্রাফিকভাবে শক্তিশালী র্যান্ডম ডেটা উৎস ব্যবহার করে জেনারেট করা মানের স্বতন্ত্রতা নিশ্চিত করতে। দ্রষ্টব্য যে জেনারেট করা ওয়েভ নোড আইডির বিট 57 1 এ সেট করা হয়েছে তা বোঝাতে যে জেনারেট করা ওয়েভ নোড আইডি স্থানীয়ভাবে (বিশ্বব্যাপী নয়) অনন্য।

বিস্তারিত
পরামিতি
nodeId
64-বিট উইভ নোড আইডির একটি রেফারেন্স।
রিটার্ন মান
WEAVE_NO_ERROR
যদি উইভ নোড আইডি সফলভাবে তৈরি হয়।

GetFibonacciForIndex

uint32_t GetFibonacciForIndex(
  uint32_t index
)

এই ফাংশনটি একটি প্রদত্ত 32 বিট সূচকের জন্য 32-বিট ফিবোনাচি নম্বর তৈরি করে।

বিস্তারিত
রিটার্নস
32-বিট স্বাক্ষরবিহীন ফিবোনাচি নম্বর।

GetMessageName

const char * GetMessageName(
  uint32_t profileId,
  uint8_t msgType
)

GetProfileName

const char * GetProfileName(
  uint32_t profileId
)

GetRandU16

uint16_t GetRandU16(
  void
)

এই ফাংশনটি 16-বিট স্বাক্ষরবিহীন র্যান্ডম নম্বর তৈরি করে।

বিস্তারিত
রিটার্নস
16-বিট স্বাক্ষরবিহীন র্যান্ডম পূর্ণসংখ্যা।

GetRandU32

uint32_t GetRandU32(
  void
)

এই ফাংশনটি 32-বিট স্বাক্ষরবিহীন র্যান্ডম নম্বর তৈরি করে।

বিস্তারিত
রিটার্নস
32-বিট স্বাক্ষরবিহীন র্যান্ডম পূর্ণসংখ্যা।

GetRandU64

uint64_t GetRandU64(
  void
)

এই ফাংশনটি 64-বিট স্বাক্ষরবিহীন র্যান্ডম নম্বর তৈরি করে।

বিস্তারিত
রিটার্নস
64-বিট স্বাক্ষরবিহীন র্যান্ডম পূর্ণসংখ্যা।

GetRandU8

uint8_t GetRandU8(
  void
)

এই ফাংশনটি 8-বিট স্বাক্ষরবিহীন র্যান্ডম নম্বর তৈরি করে।

বিস্তারিত
রিটার্নস
8-বিট স্বাক্ষরবিহীন র্যান্ডম পূর্ণসংখ্যা।

GetVendorName

const char * GetVendorName(
  uint16_t vendorId
)

GroupKeyAuthMode

WeaveAuthMode GroupKeyAuthMode(
  uint32_t keyId
)

একটি প্রদত্ত কী আইডির জন্য একটি সংশ্লিষ্ট গ্রুপ কী প্রমাণীকরণ মোড প্রদান করে।

IPv6InterfaceIdToWeaveNodeId

uint64_t IPv6InterfaceIdToWeaveNodeId(
  uint64_t interfaceId
)

একটি IPv6 ঠিকানা ইন্টারফেস শনাক্তকারীকে একটি Weave নোড শনাক্তকারীতে রূপান্তর করুন।

পরীক্ষার সুবিধা হিসাবে, #kMaxAlwaysLocalWeaveNodeId (65535) এর চেয়ে কম বা সমান নোড শনাক্তকারীকে 'স্থানীয়' হিসাবে বিবেচনা করা হয় এবং তাদের সর্বজনীন/স্থানীয় বিট শূন্যতে সেট করা হয়। এটি সংশ্লিষ্ট IPv6 ঠিকানাগুলির স্ট্রিং উপস্থাপনাকে সহজ করে। উদাহরণস্বরূপ নোড শনাক্তকারী 10 এর জন্য একটি ULA হবে FD00:0 :1:1::A।

বিস্তারিত
পরামিতি
[in] interfaceId
64 বিট ইন্টারফেস শনাক্তকারী।
রিটার্নস
ম্যাপ করা 64 বিট উইভ নোড শনাক্তকারী।

IsCASEAuthMode

bool IsCASEAuthMode(
  WeaveAuthMode authMode
)

সত্য যদি প্রমাণীকরণ মোড Weave CASE প্রোটোকলের উপর ভিত্তি করে হয়।

IsCertAuthMode

bool IsCertAuthMode(
  WeaveAuthMode authMode
)

সত্য যদি প্রমাণীকরণ মোড একটি শংসাপত্রের সাথে যুক্ত একটি ব্যক্তিগত কী দখলের উপর ভিত্তি করে হয়।

IsGroupKeyAuthMode

bool IsGroupKeyAuthMode(
  WeaveAuthMode authMode
)

সত্য যদি প্রমাণীকরণ মোড একটি ভাগ করা গ্রুপ কী দখলের উপর ভিত্তি করে হয়।

IsPASEAuthMode

bool IsPASEAuthMode(
  WeaveAuthMode authMode
)

সত্য যদি প্রমাণীকরণ মোড Weave PASE প্রোটোকলের উপর ভিত্তি করে হয়।

IsPasswordAuthMode

bool IsPasswordAuthMode(
  WeaveAuthMode authMode
)

সত্য যদি প্রমাণীকরণ মোড একটি শেয়ার করা পাসওয়ার্ডের উপর ভিত্তি করে থাকে।

ISTAKEAuthMode

bool IsTAKEAuthMode(
  WeaveAuthMode authMode
)

সত্য যদি প্রমাণীকরণ মোড Weave TAKE প্রোটোকলের উপর ভিত্তি করে হয়।

IsWRMPCcontrolMessage

bool IsWRMPControlMessage(
  uint32_t profileId,
  uint8_t msgType
)

J2N_ByteArray

WEAVE_ERROR J2N_ByteArray(
  JNIEnv *env,
  jbyteArray inArray,
  uint8_t *& outArray,
  uint32_t & outArrayLen
)

J2N_ByteArrayFieldVal

WEAVE_ERROR J2N_ByteArrayFieldVal(
  JNIEnv *env,
  jobject obj,
  const char *fieldName,
  uint8_t *& outArray,
  uint32_t & outArrayLen
)

J2N_ByteArrayInPlace

WEAVE_ERROR J2N_ByteArrayInPlace(
  JNIEnv *env,
  jbyteArray inArray,
  uint8_t *outArray,
  uint32_t maxArrayLen
)

J2N_EnumFieldVal

WEAVE_ERROR J2N_EnumFieldVal(
  JNIEnv *env,
  jobject obj,
  const char *fieldName,
  const char *fieldType,
  int & outVal
)

J2N_EnumVal

WEAVE_ERROR J2N_EnumVal(
  JNIEnv *env,
  jobject enumObj,
  int & outVal
)

J2N_IntFieldVal

WEAVE_ERROR J2N_IntFieldVal(
  JNIEnv *env,
  jobject obj,
  const char *fieldName,
  jint & outVal
)

J2N_LongFieldVal

WEAVE_ERROR J2N_LongFieldVal(
  JNIEnv *env,
  jobject obj,
  const char *fieldName,
  jlong & outVal
)

J2N_ShortFieldVal

WEAVE_ERROR J2N_ShortFieldVal(
  JNIEnv *env,
  jobject obj,
  const char *fieldName,
  jshort & outVal
)

J2N_StringFieldVal

WEAVE_ERROR J2N_StringFieldVal(
  JNIEnv *env,
  jobject obj,
  const char *fieldName,
  char *& outVal
)

MakeClassName

WEAVE_ERROR MakeClassName(
  const char *basePackageName,
  const char *relativeClassName,
  char *& classNameBuf
)

PASEAuthMode

WeaveAuthMode PASEAuthMode(
  uint8_t pwSource
)

একটি প্রদত্ত পাসওয়ার্ড উত্সের জন্য একটি সংশ্লিষ্ট PASE প্রমাণীকরণ মোড প্রদান করে৷

পাসওয়ার্ড সোর্সফ্রমঅথমোড

uint8_t PasswordSourceFromAuthMode(
  WeaveAuthMode authMode
)

প্রদত্ত প্রমাণীকরণ মোডের জন্য পাসওয়ার্ড উৎস প্রদান করে।

PrintTunnelInfo

void PrintTunnelInfo(
  const WeaveConnectionTunnel & tun,
  const TCPEndPoint & fromEndPoint,
  const TCPEndPoint & toEndPoint,
  const PacketBuffer & data
)

ToHex

char ToHex(
  const uint8_t data
)

ToHexString

void ToHexString(
  const uint8_t *data,
  size_t dataLen,
  char *& outBuf,
  size_t & outBufSize
)

WeaveEncryptionKeyToString

void WeaveEncryptionKeyToString(
  uint8_t encType,
  const WeaveEncryptionKey & key,
  char *buf,
  size_t bufSize
)

WeaveFabricIdToIPv6GlobalId

uint64_t WeaveFabricIdToIPv6GlobalId(
  uint64_t fabricId
)

একটি ওয়েভ ফ্যাব্রিক শনাক্তকারীকে একটি IPv6 ULA গ্লোবাল আইডেন্টিফায়ারে রূপান্তর করুন।

একটি ফ্যাব্রিক ঠিকানার জন্য ULA গ্লোবাল আইডেন্টিফায়ার হল ফ্যাব্রিকের 64-বিট ফ্যাব্রিক আইডির নীচের 40 বিট।

বিস্তারিত
পরামিতি
[in] fabricId
ওয়েভ ফ্যাব্রিক শনাক্তকারী।
রিটার্নস
ম্যাপ করা IPv6 গ্লোবাল আইডেন্টিফায়ার।

WeaveMessageSourceToStr

void WeaveMessageSourceToStr(
  char *buf,
  uint32_t bufSize,
  const WeaveMessageInfo *msgInfo
)

এর পরিবর্তে WeaveMessageLayer::GetPeerDescription() ব্যবহার করুন।

WeaveNodeAddrToStr

void WeaveNodeAddrToStr(
  char *buf,
  uint32_t bufSize,
  uint64_t nodeId,
  const IPAddress *addr,
  uint16_t port,
  WeaveConnection *con
)

এর পরিবর্তে WeaveMessageLayer::GetPeerDescription() ব্যবহার করুন।

WeaveNodeIdToIPv6InterfaceId

uint64_t WeaveNodeIdToIPv6InterfaceId(
  uint64_t nodeId
)

একটি ওয়েভ নোড শনাক্তকারীকে একটি IPv6 ঠিকানা ইন্টারফেস শনাক্তকারীতে রূপান্তর করুন।

ওয়েভ নোড আইডেন্টিফায়ার হল ইউনিভার্সাল/লোকাল EUI-64, যেগুলি RFC-3513 প্রতি ইউনিভার্সাল/লোকাল বিটকে উল্টে ইন্টারফেস আইডেন্টিফায়ারে রূপান্তরিত করা হয় (বিট 57 LSB কে 0 হিসাবে গণনা করে)।

পরীক্ষার সুবিধা হিসাবে, #kMaxAlwaysLocalWeaveNodeId (65535) এর চেয়ে কম বা সমান নোড শনাক্তকারীকে 'স্থানীয়' হিসাবে বিবেচনা করা হয় এবং তাদের সর্বজনীন/স্থানীয় বিট শূন্যতে সেট করা হয়। এটি সংশ্লিষ্ট IPv6 ঠিকানাগুলির স্ট্রিং উপস্থাপনাকে সহজ করে। উদাহরণস্বরূপ নোড শনাক্তকারী 10 এর জন্য একটি ULA হবে FD00:0 :1:1::A।

বিস্তারিত
পরামিতি
[in] nodeId
64-বিট ওয়েভ নোড শনাক্তকারী।
রিটার্নস
IPv6 ইন্টারফেস শনাক্তকারী।

সর্বোচ্চ

const _T & max(
  const _T & a,
  const _T & b
)

মিনিট

const _T & min(
  const _T & a,
  const _T & b
)