nl::Weave::Profiles::SoftwareUpdate::IntegritySpec

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

Class tambahan yang menyimpan jenis integritas dan hash sebenarnya dari image update software.

Ringkasan

Objek ini menyimpan kolom IntegrityTypes yang menentukan jenis hash, dan hash sebenarnya dari gambar update software. Panjang {i>hash<i} bersifat tetap berdasarkan jenis {i>hash<i}. Objek disesuaikan ukurannya untuk menampung hash terbesar yang didukung.

Konstruktor dan Destruktor

IntegritySpec()
Konstruktor default untuk IntegritySpec.

Atribut publik

type
uint8_t
Jenis hash, nilai yang akan diambil dari IntegrityTypes.
value[64]
uint8_t
Urutan panjang variabel byte yang berisi nilai integritas untuk image software yang diidentifikasi oleh kolom URI.

Fungsi publik

init(uint8_t, uint8_t *)
Inisialisasi objek IntegritySpec secara eksplisit dengan nilai yang diberikan.
operator==(const IntegritySpec &) const
bool
Operator kesetaraan.
pack(MessageIterator &)
Menserialisasikan IntegritySpec ke MessageIterator yang disediakan.

Fungsi statis publik

parse(MessageIterator &, IntegritySpec &)
Melakukan deserialisasi objek dari MessageIterator yang disediakan ke IntegritySpec yang disediakan.

Atribut publik

tipe

uint8_t type

Jenis hash, nilai yang akan diambil dari IntegrityTypes.

value

uint8_t value[64]

Urutan panjang variabel byte yang berisi nilai integritas untuk image software yang diidentifikasi oleh kolom URI.

Nilai integritas dihitung dengan menerapkan fungsi integritas yang ditetapkan oleh jenis integritas ke konten gambar update software yang diakses pada URI yang ditentukan di atas. Spesifikasi integritas memungkinkan klien mengonfirmasi bahwa gambar yang didownload cocok dengan gambar yang ditentukan dalam respons ini.

Fungsi publik

IntegritySpec

 IntegritySpec()

Konstruktor default untuk IntegritySpec.

Objek harus diinisialisasi melalui metode init() atau melalui deserialisasi dari pesan.

init

WEAVE_ERROR init(
  uint8_t,
  uint8_t *
)

Inisialisasi objek IntegritySpec secara eksplisit dengan nilai yang diberikan.

Detail
Parameter
[in] aType
Nilai jenis integritas yang diambil dari IntegrityTypes
[in] aValue
Nilai {i>hash<i} dengan panjang yang sesuai direpresentasikan sebagai rangkaian byte yang dikemas
Hasil
WEAVE_NO_ERROR Saat berhasil
Hasil
WEAVE_ERROR_INVALID_INTEGRITY_TYPE Jika jenis integritas yang diberikan bukan salah satu nilai yang ditentukan di IntegrityTypes

operator==

bool operator==(
  const IntegritySpec &
) const 

Operator kesetaraan.

Detail
Parameter
another
IntegritySpec untuk diperiksa terhadap IntegritySpec ini
Hasil
benar jika semua kolom di kedua objek sama, salah jika tidak

pak

WEAVE_ERROR pack(
  MessageIterator &
)

Menserialisasikan IntegritySpec ke MessageIterator yang disediakan.

Detail
Parameter
[in] i
Iterator di atas pesan yang sedang dikemas
Nilai Pengembalian
WEAVE_NO_ERROR
Setelah berhasil.
WEAVE_ERROR_BUFFER_TOO_SMALL
Jika IntegritySpec terlalu besar untuk dimuat dalam pesan.

Fungsi statis publik

parse

WEAVE_ERROR parse(
  MessageIterator &,
  IntegritySpec &
)

Melakukan deserialisasi objek dari MessageIterator yang disediakan ke IntegritySpec yang disediakan.

Detail
Parameter
[in] i
Iterator di atas pesan yang sedang diuraikan.
[in] aSpec
Referensi ke objek untuk memuat hasil
Nilai Pengembalian
WEAVE_NO_ERROR
Setelah berhasil.
Nilai Pengembalian
WEAVE_ERROR_BUFFER_TOO_SMALL
Jika pesan tidak berisi cukup byte untuk jenis integritas dan hash terkait
Hasil
WEAVE_ERROR_INVALID_INTEGRITY_TYPE Jika jenis integritas yang diberikan bukan salah satu nilai yang ditentukan di IntegrityTypes