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 にシリアル化解除します。

パブリック属性

type

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
戻り値
両方のオブジェクトのすべてのフィールドが等しい場合は true、それ以外の場合は false

パック

WEAVE_ERROR pack(
  MessageIterator &
)

IntegritySpec を、指定された MessageIterator にシリアル化します。

詳細
パラメータ
[in] i
パッキングされているメッセージのイテレータ
戻り値
WEAVE_NO_ERROR
成功時。
WEAVE_ERROR_BUFFER_TOO_SMALL
IntegritySpec が大きすぎてメッセージに収まらない場合。

静的パブリック関数

parse

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 で指定された値のいずれでもない場合