nl::Weave::Profiles::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()

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

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

Init

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 &
)

แยกอนุกรมออบเจ็กต์จาก MessageIterator ที่ให้ไว้เป็น IntegritySpec ที่ให้มา

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