nl::Weave::Profiller:SoftwareUpdate::

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

Bütünlük türünü ve yazılım güncelleme resminin gerçek karmasını içeren bir yardımcı sınıf.

Özet

Nesne, karma türünü ve yazılım güncelleme resminin gerçek karmasını belirten IntegrityTypes alanını barındırır. Karma uzunluğu, karma türüne göre sabitlenir. Nesne, desteklenen karmaların en büyüğünü içerecek şekilde boyutlandırılır.

İnşaat Ustaları ve Yıkıcılar

IntegritySpec()
IntegritySpec için varsayılan oluşturucu.

Herkese açık özellikler

type
uint8_t
Karma türü, IntegrityTypes'tan alınacak değer.
value[64]
uint8_t
URI alanı tarafından tanımlanan yazılım resminin bütünlük değerini içeren bayt uzunluğundaki değişken dizisi.

Herkese açık işlevler

init(uint8_t, uint8_t *)
IntegritySpec nesnesini sağlanan değerlerle açık bir şekilde başlatın.
operator==(const IntegritySpec &) const
bool
Eşitlik operatörü.
pack(MessageIterator &)
IntegritySpec öğesini sağlanan MessageIterator'a serileştirin.

Herkese açık statik işlevler

parse(MessageIterator &, IntegritySpec &)
Nesneyi, sağlanan MessageIterator'dan sağlanan IntegritySpec'e serileştirin.

Herkese açık özellikler

tür

uint8_t type

Karma türü, IntegrityTypes'tan alınacak değer.

değer

uint8_t value[64]

URI alanı tarafından tanımlanan yazılım resminin bütünlük değerini içeren bayt uzunluğundaki değişken dizisi.

Bütünlük değeri, bütünlük türü tarafından belirtilen bütünlük işlevi, yukarıda belirtilen URI'dan erişilen yazılım güncelleme resminin içeriğine uygulanarak hesaplanır. Bütünlük spesifikasyonu, istemcinin indirilen resmin bu yanıtta belirtilen resimle eşleştiğini onaylamasına olanak tanır.

Herkese açık işlevler

IntegritySpec

 IntegritySpec()

IntegritySpec için varsayılan oluşturucu.

Nesne init() yöntemi aracılığıyla veya bir mesajdan serileştirilerek başlatılmalıdır.

init

WEAVE_ERROR init(
  uint8_t,
  uint8_t *
)

IntegritySpec nesnesini sağlanan değerlerle açık bir şekilde başlatın.

Ayrıntılar
Parametreler
[in] aType
IntegrityTypes'tan alınan bütünlük türü değeri
[in] aValue
Uygun baytlık, paketli bir dize olarak temsil edilen bir karma değeri
İadeler
WEAVE_NO_ERROR Başarıya ulaştı
İadeler
Sağlanan bütünlük türü, IntegrityTypes'da belirtilen değerlerden biri değilse WEAVE_ERROR_INVALID_INTEGRITY_TYPE

operatör==

bool operator==(
  const IntegritySpec &
) const 

Eşitlik operatörü.

Ayrıntılar
Parametreler
another
Bu IntegritySpec ile kontrol edilecek bir IntegritySpec
İadeler
Her iki nesnedeki tüm alanlar eşitse true (doğru), kullanmıyorsa false (yanlış) olarak ayarlanır

paket

WEAVE_ERROR pack(
  MessageIterator &
)

IntegritySpec öğesini sağlanan MessageIterator'a serileştirin.

Ayrıntılar
Parametreler
[in] i
Paketlenen mesajın üzerinde iterasyon
Döndürülen Değerler
WEAVE_NO_ERROR
Başarılı.
WEAVE_ERROR_BUFFER_TOO_SMALL
IntegritySpec değeri iletiye sığmayacak kadar büyükse.

Herkese açık statik işlevler

parse

WEAVE_ERROR parse(
  MessageIterator &,
  IntegritySpec &
)

Nesneyi, sağlanan MessageIterator'dan sağlanan IntegritySpec'e serileştirin.

Ayrıntılar
Parametreler
[in] i
Ayrıştırılan iletinin üzerinde bir iterasyon uygulaması.
[in] aSpec
Sonucu içerecek bir nesne referansı
Döndürülen Değerler
WEAVE_NO_ERROR
Başarılı.
Döndürülen Değerler
WEAVE_ERROR_BUFFER_TOO_SMALL
İleti, bütünlük türü ve ilişkili karma için yeterli bayt içermiyorsa
İadeler
Sağlanan bütünlük türü, IntegrityTypes'da belirtilen değerlerden biri değilse WEAVE_ERROR_INVALID_INTEGRITY_TYPE