nl:: बुनें:: प्रोफाइल:: सॉफ्टवेयर अपडेट:: वफ़ादारी विशिष्टता

#include <src/lib/profiles/software-update/SoftwareUpdateProfile.h>

सॉफ़्टवेयर अद्यतन छवि के अखंडता प्रकार और वास्तविक हैश धारण करने वाला एक सहायक वर्ग।

सारांश

वस्तु धारण IntegrityTypes क्षेत्र हैश के प्रकार, और सॉफ़्टवेयर अद्यतन छवि की वास्तविक हैश को निर्दिष्ट। हैश की लंबाई हैश के प्रकार के आधार पर तय की जाती है। ऑब्जेक्ट का आकार समर्थित हैश में सबसे बड़ा रखने के लिए है।

निर्माता और विनाशक De

IntegritySpec ()
के लिए डिफ़ॉल्ट निर्माता IntegritySpec

सार्वजनिक गुण

type
uint8_t
हैश के टाइप करें, मूल्य से तैयार हो IntegrityTypes
value [64]
uint8_t
URI फ़ील्ड द्वारा पहचाने गए सॉफ़्टवेयर छवि के लिए अखंडता मान वाले बाइट्स का एक चर लंबाई अनुक्रम।

सार्वजनिक समारोह

init (uint8_t, uint8_t *)
स्पष्ट रूप से प्रारंभ IntegritySpec प्रदान की मूल्यों के साथ वस्तु।
operator== (const IntegritySpec &) const
bool
एक समानता ऑपरेटर।
pack ( MessageIterator &)
क्रमानुसार IntegritySpec प्रदान की में MessageIterator

सार्वजनिक स्थैतिक कार्य

parse ( MessageIterator &, IntegritySpec &)
प्रदान की से वस्तु deserialize MessageIterator प्रदान की में IntegritySpec

सार्वजनिक गुण

प्रकार

uint8_t type

हैश के टाइप करें, मूल्य से तैयार हो IntegrityTypes

मूल्य

uint8_t value[64]

URI फ़ील्ड द्वारा पहचाने गए सॉफ़्टवेयर छवि के लिए अखंडता मान वाले बाइट्स का एक चर लंबाई अनुक्रम।

ऊपर निर्दिष्ट यूआरआई में एक्सेस किए गए सॉफ़्टवेयर अपडेट छवि की सामग्री के लिए अखंडता प्रकार द्वारा निर्दिष्ट अखंडता फ़ंक्शन को लागू करके अखंडता मान की गणना की जाती है। अखंडता विनिर्देश क्लाइंट को यह पुष्टि करने की अनुमति देता है कि डाउनलोड की गई छवि इस प्रतिक्रिया में निर्दिष्ट छवि से मेल खाती है।

सार्वजनिक समारोह

वफ़ादारी विशिष्टता

 IntegritySpec()

के लिए डिफ़ॉल्ट निर्माता IntegritySpec

वस्तु या तो के माध्यम से प्रारंभ किया जाना चाहिए init () विधि या संदेश से यह deserializing के माध्यम से।

इस में

WEAVE_ERROR init(
  uint8_t,
  uint8_t *
)

स्पष्ट रूप से प्रारंभ IntegritySpec प्रदान की मूल्यों के साथ वस्तु।

विवरण
मापदंडों
[in] aType
एक अखंडता प्रकार से तैयार मूल्य IntegrityTypes
[in] aValue
उपयुक्त लंबाई का हैश मान बाइट्स के पैक्ड स्ट्रिंग के रूप में दर्शाया गया है
रिटर्न
WEAVE_NO_ERROR सफलता पर
रिटर्न
WEAVE_ERROR_INVALID_INTEGRITY_TYPE प्रदत्त एकीकरण प्रकार मूल्यों में निर्दिष्ट में से एक नहीं है, तो IntegrityTypes

ऑपरेटर ==

bool operator==(
  const IntegritySpec &
) const 

एक समानता ऑपरेटर।

विवरण
मापदंडों
another
एक IntegritySpec इस के खिलाफ जांच करने के लिए IntegritySpec
रिटर्न
सत्य यदि दोनों वस्तुओं में सभी क्षेत्र समान हैं, अन्यथा गलत है

पैक

WEAVE_ERROR pack(
  MessageIterator &
)

क्रमानुसार IntegritySpec प्रदान की में MessageIterator

विवरण
मापदंडों
[in] i
संदेश पैक किया जा रहा पर एक पुनरावर्तक
वापसी मूल्य
WEAVE_NO_ERROR
सफलता पर।
WEAVE_ERROR_BUFFER_TOO_SMALL
यदि IntegritySpec संदेश में फिट करने के लिए बहुत बड़ी है।

सार्वजनिक स्थैतिक कार्य

पार्स

WEAVE_ERROR parse(
  MessageIterator &,
  IntegritySpec &
)

प्रदान की से वस्तु deserialize MessageIterator प्रदान की में IntegritySpec

विवरण
मापदंडों
[in] i
संदेश पर एक पुनरावर्तक पार्स किया जा रहा है।
[in] aSpec
परिणाम रखने के लिए किसी वस्तु का संदर्भ
वापसी मूल्य
WEAVE_NO_ERROR
सफलता पर।
वापसी मूल्य
WEAVE_ERROR_BUFFER_TOO_SMALL
यदि संदेश में अखंडता प्रकार और संबंधित हैश के लिए पर्याप्त बाइट नहीं हैं
रिटर्न
WEAVE_ERROR_INVALID_INTEGRITY_TYPE प्रदत्त एकीकरण प्रकार मूल्यों में निर्दिष्ट में से एक नहीं है, तो IntegrityTypes