Google cam kết thúc đẩy công bằng chủng tộc cho Cộng đồng người da đen. Xem cách thực hiện.
Sử dụng bộ sưu tập để sắp xếp ngăn nắp các trang Lưu và phân loại nội dung dựa trên lựa chọn ưu tiên của bạn.

nl::Weave::Profiles::SoftwareUpdate::IntegritySpec (IntegritySpec)

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

Một lớp phụ lưu giữ loại tính toàn vẹn và hàm băm thực tế của hình ảnh cập nhật phần mềm.

Tóm tắt

Đối tượng lưu giữ trường IntegrityTypes (Chỉ số kiểu) để chỉ định loại hàm băm và hàm băm thực tế của hình ảnh cập nhật phần mềm. Độ dài của hàm băm được cố định dựa trên loại hàm băm. Đối tượng có kích thước chứa các giá trị băm lớn nhất được hỗ trợ.

Hàm dựng và hàm dựng

IntegritySpec()
Hàm khởi tạo mặc định cho IntegritySpec.

Thuộc tính công khai

type
uint8_t
Loại hàm băm, giá trị được vẽ từ IntegrityTypes (IntegrityTypes).
value[64]
uint8_t
Một chuỗi độ dài biến thiên của các byte chứa giá trị tính toàn vẹn cho hình ảnh phần mềm được trường URI xác định.

Hàm công khai

init(uint8_t, uint8_t *)
Khởi tạo đối tượng IntegritySpec một cách rõ ràng với các giá trị được cung cấp.
operator==(const IntegritySpec &) const
bool
Toán tử bằng.
pack(MessageIterator &)
Tuần tự hoá IntegritySpec thành MessageIterator đã cung cấp.

Hàm tĩnh công khai

parse(MessageIterator &, IntegritySpec &)
Giải tuần tự đối tượng từ MessageIterator đã cung cấp thành IntegritySpec được cung cấp.

Thuộc tính công khai

loại

uint8_t type

Loại hàm băm, giá trị được vẽ từ IntegrityTypes (IntegrityTypes).

value

uint8_t value[64]

Một chuỗi độ dài biến thiên của các byte chứa giá trị tính toàn vẹn cho hình ảnh phần mềm được trường URI xác định.

Giá trị tính toàn vẹn được tính bằng cách áp dụng hàm tính toàn vẹn được chỉ định theo loại tính toàn vẹn cho nội dung của hình ảnh cập nhật phần mềm được truy cập tại URI được chỉ định ở trên. Quy cách về tính toàn vẹn cho phép khách hàng xác nhận rằng hình ảnh được tải xuống khớp với hình ảnh được chỉ định trong phản hồi này.

Hàm công khai

Tính toàn vẹn

 IntegritySpec()

Hàm khởi tạo mặc định cho IntegritySpec.

Đối tượng phải được khởi tạo thông qua phương thức init() hoặc giải tuần tự hoá đối tượng từ thông báo.

khởi đầu

WEAVE_ERROR init(
  uint8_t,
  uint8_t *
)

Khởi tạo đối tượng IntegritySpec một cách rõ ràng với các giá trị được cung cấp.

Thông tin chi tiết
Các tham số
[in] aType
Giá trị của loại tính toàn vẹn được lấy từ IntegrityTypes
[in] aValue
Giá trị hàm băm có độ dài thích hợp được biểu thị dưới dạng một chuỗi byte được đóng gói.
Trả về
WEAVE_NO_ERROR Thành công
Trả về
WEAVE_ERROR_INVALID_INTEGRITY_TYPE Nếu loại tính toàn vẹn đã cung cấp không phải là một trong các giá trị được chỉ định trong IntegrityTypes

toán tử=

bool operator==(
  const IntegritySpec &
) const 

Toán tử bằng.

Thông tin chi tiết
Các tham số
another
Cần có IntegritySpec để kiểm tra IntegritySpec
Trả về
true nếu tất cả các trường trong cả hai đối tượng bằng nhau, false nếu không

gói

WEAVE_ERROR pack(
  MessageIterator &
)

Tuần tự hoá IntegritySpec thành MessageIterator đã cung cấp.

Thông tin chi tiết
Các tham số
[in] i
Một đối tượng iterator trong thư được đóng gói
Giá trị trả về
WEAVE_NO_ERROR
Thành công.
WEAVE_ERROR_BUFFER_TOO_SMALL
Nếu IntegritySpec (IntegritySpec) quá lớn nên không thể đưa vào thông báo.

Hàm tĩnh công khai

phân tích cú pháp

WEAVE_ERROR parse(
  MessageIterator &,
  IntegritySpec &
)

Giải tuần tự đối tượng từ MessageIterator đã cung cấp thành IntegritySpec được cung cấp.

Thông tin chi tiết
Các tham số
[in] i
Trình lặp cho tin nhắn đang được phân tích cú pháp.
[in] aSpec
Tham chiếu đến một đối tượng chứa kết quả
Giá trị trả về
WEAVE_NO_ERROR
Thành công.
Giá trị trả về
WEAVE_ERROR_BUFFER_TOO_SMALL
Nếu thông báo không chứa đủ byte cho loại tính toàn vẹn và hàm băm được liên kết
Trả về
WEAVE_ERROR_INVALID_INTEGRITY_TYPE Nếu loại tính toàn vẹn đã cung cấp không phải là một trong các giá trị được chỉ định trong IntegrityTypes