nl:: বিণ
সারাংশ
Typedefs | |
---|---|
FabricSecretRotationScheme | typedefuint8_t |
FabricSecretScope | nl::Weave::FabricSecretScopeuint8_t ফ্যাব্রিক সিক্রেট ধারণ করতে এবং ব্যবহার করতে পারে এমন ডিভাইসের বিভাগ সনাক্ত করে। |
WeaveAuthMode | typedefuint16_t একটি পিয়ার নোড কিভাবে প্রমাণীকরণ করা হয় তা সনাক্ত করে। |
WeaveEncryptionKey | typedef |
WeaveEncryptionType | typedefenum nl::Weave::WeaveEncryptionType Weave বার্তার জন্য এনক্রিপশন প্রকার। |
WeaveExchangeFlags | typedefenum nl::Weave::WeaveExchangeFlags ওয়েভ এক্সচেঞ্জ হেডার পতাকা বিট। |
WeaveExchangeVersion | typedefenum nl::Weave::WeaveExchangeVersion ওয়েভ এক্সচেঞ্জ হেডার সংস্করণ। |
WeaveMessageFlags | typedefenum nl::Weave::WeaveMessageFlags ইনবাউন্ড বা আউটবাউন্ড উইভ বার্তার সাথে যুক্ত পতাকা। |
WeaveMessageHeader | typedefstruct WeaveMessageInfo |
WeaveMessageVersion | typedefenum nl::Weave::WeaveMessageVersion ওয়েভ মেসেজ ফরম্যাটের সংস্করণ। |
WeaveSubnetId | typedefenum 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
@৩৯
@39
শংসাপত্রের উদ্দেশ্য বা আবেদন শনাক্ত করে।
একটি শংসাপত্রের ধরন একটি লেবেল যা একটি শংসাপত্রের উদ্দেশ্য বা অ্যাপ্লিকেশন বর্ণনা করে। শংসাপত্রের ধরনগুলি সংশ্লিষ্ট শংসাপত্রের বৈশিষ্ট্য হিসাবে বহন করা হয় না, বরং শংসাপত্রের কাঠামো এবং/অথবা যে প্রেক্ষাপটে এটি ব্যবহৃত হয় তা থেকে উদ্ভূত হয়। শংসাপত্রের ধরণ গণনার মধ্যে সাধারণভাবে ব্যবহৃত শংসাপত্র অ্যাপ্লিকেশনগুলিকে বর্ণনা করে পূর্ব-সংজ্ঞায়িত মানগুলির একটি সেট অন্তর্ভুক্ত থাকে। বিকাশকারীরা অ্যাপ্লিকেশন-নির্দিষ্ট প্রকারের সাথে শংসাপত্র প্রকারের মান পরিসরও প্রসারিত করতে পারে যা কাস্টম শংসাপত্র বা অনন্য নিরাপত্তা বৈশিষ্ট্য সহ শংসাপত্রগুলি বর্ণনা করে।
শংসাপত্রের ধরনগুলি প্রাথমিকভাবে অ্যাক্সেস নিয়ন্ত্রণ নীতিগুলি বাস্তবায়নে ব্যবহৃত হয়, যেখানে অ্যাপ্লিকেশন বৈশিষ্ট্যগুলিতে অ্যাক্সেস একটি অনুরোধকারীর দ্বারা উপস্থাপিত শংসাপত্রের প্রকার দ্বারা প্রভাবিত হয়।
@৪০
@40
একটি পাসওয়ার্ড-ভিত্তিক প্রমাণীকরণ প্রোটোকলে ব্যবহৃত পাসওয়ার্ডের উত্স সনাক্ত করে (যেমন
বুনন PASE)
@41
@41
@43
@43
@44
@44
বুনা বার্তা এনক্রিপশন অ্যাপ্লিকেশন কী বৈচিত্র্যকারী আকার.
@৪৫
@45
@53
@53
@54
@54
বৈশিষ্ট্য | |
---|---|
kWeavePeerDescription_MaxLength | WeaveMessageLayer::GetPeerDescription() দ্বারা প্রত্যাবর্তিত স্ট্রিংয়ের সর্বাধিক দৈর্ঘ্য (NUL অক্ষর সহ)। |
@55
@55
একটি এনকোডেড উইভ বার্তার শিরোনাম সম্পর্কিত সংজ্ঞা।
@56
@56
IEEE EUI-64 শনাক্তকারীর জন্য বিট ক্ষেত্রের সংজ্ঞা।
@57
@57
WeaveEncryptionType
WeaveEncryptionType
WeaveExchange Flags
WeaveExchangeFlags
ওয়েভ এক্সচেঞ্জ হেডার পতাকা বিট।
WeaveExchange Version
WeaveExchangeVersion
ওয়েভ এক্সচেঞ্জ হেডার সংস্করণ।
WeaveMessage Flags
WeaveMessageFlags
ইনবাউন্ড বা আউটবাউন্ড উইভ বার্তার সাথে যুক্ত পতাকা।
এখানে সংজ্ঞায়িত মানগুলি WeaveMessageInfo.Flags ক্ষেত্রের মধ্যে ব্যবহারের জন্য।
WeaveMessageVersion
WeaveMessageVersion
ওয়েভ মেসেজ ফরম্যাটের সংস্করণ।
উইভ বার্তার জন্য প্রয়োজনীয় ফ্রেম বিন্যাসের উপর ভিত্তি করে উপযুক্ত বার্তা সংস্করণ বেছে নেবে। ডিফল্টরূপে, বার্তা সংস্করণ হল kWeaveMessageVersion_V1। উইভ নির্ভরযোগ্য মেসেজিং ব্যবহার করার সময়, উদাহরণস্বরূপ, সংস্করণটি হল kWeaveMessageVersion_V2।
বৈশিষ্ট্য | |
---|---|
kWeaveMessageVersion_Unspecified | অনির্দিষ্ট বার্তা সংস্করণ। |
kWeaveMessageVersion_V1 | বার্তা শিরোনাম বিন্যাস সংস্করণ V1. |
kWeaveMessageVersion_V2 | বার্তা শিরোনাম বিন্যাস সংস্করণ V2. |
WeaveSubnetId
WeaveSubnetId
সাধারণ ডিভাইসে বিশিষ্ট নেটওয়ার্ক ইন্টারফেসের জন্য উইভের কিছু সংরক্ষিত সাবনেট নম্বর রয়েছে।
এই সংখ্যাগুলি এখানে প্রতীকী ধ্রুবকের জন্য বরাদ্দ করা হয়েছে। এই সাবনেট নম্বরগুলি উপযুক্ত ইন্টারফেসে IPv6 ULA ঠিকানাগুলি কনফিগার করতে Weave দ্বারা ব্যবহৃত হয়।
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 স্ট্রিং প্রদান করে।
বিস্তারিত | |||||||
---|---|---|---|---|---|---|---|
পরামিতি |
| ||||||
রিটার্নস | true যদি একটি বর্ণনা স্ট্রিং সরবরাহ করা বাফারে লেখা হয়। | ||||||
রিটার্নস | মিথ্যা যদি সরবরাহকৃত ত্রুটিটি বুনা ত্রুটি না হয়। |
WeaveNodeId তৈরি করুন
NL_DLL_EXPORT WEAVE_ERROR GenerateWeaveNodeId( uint64_t & nodeId )
র্যান্ডম উইভ নোড আইডি তৈরি করুন।
এই ফাংশনটি 64-বিট স্থানীয়ভাবে অনন্য উইভ নোড আইডি তৈরি করে। এই ফাংশন ক্রিপ্টোগ্রাফিকভাবে শক্তিশালী র্যান্ডম ডেটা উৎস ব্যবহার করে জেনারেট করা মানের স্বতন্ত্রতা নিশ্চিত করতে। দ্রষ্টব্য যে জেনারেট করা ওয়েভ নোড আইডির বিট 57 1 এ সেট করা হয়েছে তা বোঝাতে যে জেনারেট করা ওয়েভ নোড আইডি স্থানীয়ভাবে (বিশ্বব্যাপী নয়) অনন্য।
বিস্তারিত | |||
---|---|---|---|
পরামিতি |
| ||
রিটার্ন মান |
|
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।
বিস্তারিত | |||
---|---|---|---|
পরামিতি |
| ||
রিটার্নস | ম্যাপ করা 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 বিট।
বিস্তারিত | |||
---|---|---|---|
পরামিতি |
| ||
রিটার্নস | ম্যাপ করা 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।
বিস্তারিত | |||
---|---|---|---|
পরামিতি |
| ||
রিটার্নস | IPv6 ইন্টারফেস শনাক্তকারী। |
সর্বোচ্চ
const _T & max( const _T & a, const _T & b )
মিনিট
const _T & min( const _T & a, const _T & b )