class WrappedKey

Defined at line 426 of file fidling/gen/src/storage/fxfs/fidl/fuchsia.fxfs/fuchsia.fxfs/cpp/fidl/fuchsia.fxfs/cpp/natural_types.h

Public Methods

void WrappedKey (WrappedKey && other)
WrappedKey & operator= (WrappedKey && other)
void WrappedKey (const WrappedKey & other)
WrappedKey & operator= (const WrappedKey & other)
bool operator== (const WrappedKey & other)
bool operator!= (const WrappedKey & other)
bool IsUnknown ()
::fuchsia_fxfs::WrappedKey::Tag Which ()
WrappedKey WithFxfs (::fuchsia_fxfs::FxfsKey val)
const ::fidl::internal::UnionMemberView<1, Storage_> fxfs ()
::fidl::internal::UnionMemberView<1, Storage_> fxfs ()
WrappedKey & fxfs (::fuchsia_fxfs::FxfsKey value)

Fxfs's default crypto (AES256GCM-SIV wrapped key using AES256XTS encryption)

In: 16-byte wrapping_key_id + 48-byte wrapped key.

Out: 32-byte unwrapped key.

WrappedKey WithZxcrypt (::std::vector<uint8_t> val)
const ::fidl::internal::UnionMemberView<2, Storage_> zxcrypt ()
::fidl::internal::UnionMemberView<2, Storage_> zxcrypt ()
WrappedKey & zxcrypt (::std::vector<uint8_t> value)

Zxcrypt (For use with FVM/Minfs only)

In: 132-byte request blob.

Out: 80-byte unwrapped key blob.

WrappedKey WithFscryptInoLblk32Dir (::fuchsia_fxfs::FscryptKeyIdentifierAndNonce val)
const ::fidl::internal::UnionMemberView<3, Storage_> fscrypt_ino_lblk32_dir ()
::fidl::internal::UnionMemberView<3, Storage_> fscrypt_ino_lblk32_dir ()
WrappedKey & fscrypt_ino_lblk32_dir (::fuchsia_fxfs::FscryptKeyIdentifierAndNonce value)

Fscrypt INO_LBLK32 directory (For use with starnix only)

In: 16-byte key_identifier + 16-byte nonce.

Out: 32-byte cts_key, 16-byte ino_hash, 16-byte dirhash.

WrappedKey WithFscryptInoLblk32File (::fuchsia_fxfs::FscryptKeyIdentifier val)
const ::fidl::internal::UnionMemberView<4, Storage_> fscrypt_ino_lblk32_file ()
::fidl::internal::UnionMemberView<4, Storage_> fscrypt_ino_lblk32_file ()
WrappedKey & fscrypt_ino_lblk32_file (::fuchsia_fxfs::FscryptKeyIdentifier value)

Fscrypt INO_LBLK32 file (For use with starnix only)

In: 16-byte key_identifier.

Out: 16-byte ino_hash (hardware key slot is registered via `key_token`).

WrappedKey WithFscryptInoLblk64Dir (::fuchsia_fxfs::FscryptKeyIdentifierAndNonce val)
const ::fidl::internal::UnionMemberView<5, Storage_> fscrypt_ino_lblk64_dir ()
::fidl::internal::UnionMemberView<5, Storage_> fscrypt_ino_lblk64_dir ()
WrappedKey & fscrypt_ino_lblk64_dir (::fuchsia_fxfs::FscryptKeyIdentifierAndNonce value)

Fscrypt INO_LBLK64 directory (For use with starnix only)

In: 16-byte key_identifier + 16-byte nonce.

Out: 32-byte cts_key, 16-byte dirhash.

WrappedKey WithFscryptInoLblk64File (::fuchsia_fxfs::FscryptKeyIdentifier val)
const ::fidl::internal::UnionMemberView<6, Storage_> fscrypt_ino_lblk64_file ()
::fidl::internal::UnionMemberView<6, Storage_> fscrypt_ino_lblk64_file ()
WrappedKey & fscrypt_ino_lblk64_file (::fuchsia_fxfs::FscryptKeyIdentifier value)

Fscrypt INO_LBLK64 file (For use with starnix only)

In: 16-byte key_identifier.

Out: empty unwrapped_key (hardware key slot is registered via `key_token`).

void WrappedKey (::fidl::internal::DefaultConstructPossiblyInvalidObjectTag )

Enumerations

enum class Tag : fidl_xunion_tag_t
Name Value Comments
kFxfs 1

0x1

kZxcrypt 2

0x2

kFscryptInoLblk32Dir 3

0x3

kFscryptInoLblk32File 4

0x4

kFscryptInoLblk64Dir 5

0x5

kFscryptInoLblk64File 6

0x6

_do_not_handle_this__write_a_default_case_instead ::std::numeric_limits<::fidl_union_tag_t>::max() --

TODO: share union tag types between wire

&

natural.

Defined at line 440 of file fidling/gen/src/storage/fxfs/fidl/fuchsia.fxfs/fuchsia.fxfs/cpp/fidl/fuchsia.fxfs/cpp/natural_types.h

Friends

class NaturalUnionCodingTraits