จัดทุกอย่างให้เป็นระเบียบอยู่เสมอด้วยคอลเล็กชัน บันทึกและจัดหมวดหมู่เนื้อหาตามค่ากำหนดของคุณ

nl::Weave::โปรไฟล์::SoftwareUpdate::IntegritySpec

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

คลาสเสริมที่ใช้สําหรับประเภทความสมบูรณ์และแฮชจริงของรูปภาพการอัปเดตซอฟต์แวร์

สรุป

ออบเจ็กต์นี้จะเก็บช่อง IntegrityTypes ซึ่งระบุประเภทของแฮชและแฮชจริงของรูปภาพการอัปเดตซอฟต์แวร์ ความยาวของแฮชจะแตกต่างกันไปตามประเภทของแฮช ออบเจ็กต์มีขนาดเท่ากับแฮชที่ใหญ่ที่สุดที่รองรับ

ตัวสร้างและตัวทําลาย

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 &)
ถอดรหัสออบเจ็กต์จาก MessageIterator ที่ระบุเป็น IntegritySpec ที่ระบุ

แอตทริบิวต์สาธารณะ

ประเภท

uint8_t type

ประเภทของแฮช ซึ่งเป็นค่าที่จะดึงมาจาก IntegrityTypes

value

uint8_t value[64]

ลําดับความยาวของตัวแปรเป็นไบต์ที่มีค่าความสมบูรณ์ของอิมเมจซอฟต์แวร์ที่ระบุโดยช่อง URI

ค่าความสมบูรณ์จะคํานวณโดยใช้ฟังก์ชันความสมบูรณ์ที่ระบุโดยประเภทความสมบูรณ์ กับเนื้อหาของรูปภาพการอัปเดตซอฟต์แวร์ซึ่งเข้าถึงที่ URI ที่ระบุไว้ด้านบน ข้อมูลจําเพาะด้านความสมบูรณ์ช่วยให้ลูกค้ายืนยันว่ารูปภาพที่ดาวน์โหลดตรงกับรูปภาพที่ระบุในการตอบกลับนี้

ฟังก์ชันสาธารณะ

ข้อมูลจําเพาะของความสมบูรณ์

 IntegritySpec()

ตัวสร้างเริ่มต้นสําหรับ IntegritySpec

ออบเจ็กต์จะต้องเริ่มต้นผ่านเมธอด init() หรือผ่านการดีซีไลซ์จากข้อความ

init

WEAVE_ERROR init(
  uint8_t,
  uint8_t *
)

เริ่มต้นออบเจ็กต์ IntegritySpec อย่างชัดแจ้งด้วยค่าที่ระบุ

รายละเอียด
พารามิเตอร์
[in] aType
ค่าประเภทความสมบูรณ์ที่ดึงมาจาก IntegrityTypes
[in] aValue
ค่าแฮชของความยาวที่เหมาะสมซึ่งแสดงเป็นสตริงแพ็กไบต์
การคืนสินค้า
WEhave_NO_ERROR เมื่อสําเร็จ
การคืนสินค้า
WEhave_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 &
)

ถอดรหัสออบเจ็กต์จาก MessageIterator ที่ระบุเป็น IntegritySpec ที่ระบุ

รายละเอียด
พารามิเตอร์
[in] i
ตัวเอียงเหนือข้อความที่แยกวิเคราะห์
[in] aSpec
การอ้างอิงไปยังออบเจ็กต์ที่จะมีผลลัพธ์
มูลค่าการคืนสินค้า
WEAVE_NO_ERROR
เพื่อความสําเร็จ
มูลค่าการคืนสินค้า
WEAVE_ERROR_BUFFER_TOO_SMALL
หากข้อความมีไบต์ไม่เพียงพอสําหรับประเภทความสมบูรณ์และแฮชที่เกี่ยวข้อง
การคืนสินค้า
WEhave_ERROR_INVALID_INTEGRITY_TYPE หากประเภทความสมบูรณ์ที่ระบุไม่ใช่ค่าใดค่าหนึ่งที่ระบุใน IntegrityTypes