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

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

Klasa pomocnicza zawierająca typ integralności i rzeczywisty hasz obrazu aktualizacji oprogramowania.

Podsumowanie

Obiekt zawiera pole IntegrityTypes, które określa typ skrótu oraz rzeczywisty hasz obrazu aktualizacji oprogramowania. Długość skrótu jest ustalana na podstawie jego typu. Rozmiar obiektu pozwala na przechowywanie największych obsługiwanych haszów.

Konstruktorzy i niszczyciele

IntegritySpec()
Domyślny konstruktor funkcji IntegritySpec.

Atrybuty publiczne

type
uint8_t
Typ skrótu, wartość do pobrania z obiektów IntegrityTypes.
value[64]
uint8_t
Sekwencja bajtów o zmiennej długości zawierającej wartość integralności obrazu oprogramowania identyfikowana przez pole identyfikatora URI.

Funkcje publiczne

init(uint8_t, uint8_t *)
Wyraźnie zainicjuj obiekt IntegritySpec za pomocą podanych wartości.
operator==(const IntegritySpec &) const
bool
Operator równości.
pack(MessageIterator &)
Zserializuj parametr IntegritySpec w udostępnionym obiekcie MessageIterator.

Publiczne funkcje statyczne

parse(MessageIterator &, IntegritySpec &)
Deserializuj obiekt z udostępnionego elementu MessageIterator w udostępnionym obiekcie IntegritySpec.

Atrybuty publiczne

typ

uint8_t type

Typ skrótu, wartość do pobrania z obiektów IntegrityTypes.

value

uint8_t value[64]

Sekwencja bajtów o zmiennej długości zawierającej wartość integralności obrazu oprogramowania identyfikowana przez pole identyfikatora URI.

Wartość integralności jest obliczana przez zastosowanie funkcji integralności określonej przez typ integralności do zawartości obrazu aktualizacji oprogramowania, do którego dostęp jest uzyskiwany przy użyciu identyfikatora URI podanego powyżej. Specyfikacja integralności pozwala klientowi potwierdzić, że pobrany obraz jest zgodny z obrazem określonym w tej odpowiedzi.

Funkcje publiczne

IntegritySpec

 IntegritySpec()

Domyślny konstruktor funkcji IntegritySpec.

Obiekt musi zostać zainicjowany metodą init() lub przez deserializację z wiadomości.

init

WEAVE_ERROR init(
  uint8_t,
  uint8_t *
)

Wyraźnie zainicjuj obiekt IntegritySpec za pomocą podanych wartości.

Szczegóły
Parametry
[in] aType
Wartość typu integralności pobrana z obiektów IntegrityTypes.
[in] aValue
Wartość skrótu o odpowiedniej długości, przedstawiona jako spakowany ciąg bajtów
Zwroty
WEAVE_NO_ERROR Po pomyślnym zakończeniu
Zwroty
WEAVE_ERROR_blogspot_INTEGRITY_TYPE Jeśli podany typ integralności nie jest jedną z wartości określonych w polu IntegrityTypes

operator==

bool operator==(
  const IntegritySpec &
) const 

Operator równości.

Szczegóły
Parametry
another
Obiekt IntegritySpec do sprawdzenia pod kątem zgodności ze specyfikacją IntegritySpec.
Zwroty
prawda, jeśli wszystkie pola w obu obiektach są równe, lub fałsz w przeciwnym razie

paczka

WEAVE_ERROR pack(
  MessageIterator &
)

Zserializuj parametr IntegritySpec w udostępnionym obiekcie MessageIterator.

Szczegóły
Parametry
[in] i
Iterator nad pakowaniem wiadomości
Zwracane wartości
WEAVE_NO_ERROR
Na sukces.
WEAVE_ERROR_BUFFER_TOO_SMALL
Jeśli wartość IntegritySpec jest za duża, aby zmieścić się w wiadomości.

Publiczne funkcje statyczne

parse

WEAVE_ERROR parse(
  MessageIterator &,
  IntegritySpec &
)

Deserializuj obiekt z udostępnionego elementu MessageIterator w udostępnionym obiekcie IntegritySpec.

Szczegóły
Parametry
[in] i
Iterator nad analizowaną wiadomością.
[in] aSpec
Odwołanie do obiektu, które zawiera wynik
Zwracane wartości
WEAVE_NO_ERROR
Na sukces.
Zwracane wartości
WEAVE_ERROR_BUFFER_TOO_SMALL
Jeśli wiadomość nie zawierała wystarczającej liczby bajtów dla danego typu integralności i powiązanego haszu
Zwroty
WEAVE_ERROR_blogspot_INTEGRITY_TYPE Jeśli podany typ integralności nie jest jedną z wartości określonych w polu IntegrityTypes