tss_esapi/structures/
parameters.rs1use crate::{
5 structures::SymmetricDefinitionObject, tss2_esys::TPMS_SYMCIPHER_PARMS, Error, Result,
6};
7
8use std::convert::{TryFrom, TryInto};
9
10#[derive(Clone, Debug, Copy, PartialEq, Eq)]
15pub struct SymmetricCipherParameters {
16 symmetric_definition_object: SymmetricDefinitionObject,
17}
18
19impl SymmetricCipherParameters {
20 pub const fn new(
22 symmetric_definition_object: SymmetricDefinitionObject,
23 ) -> SymmetricCipherParameters {
24 SymmetricCipherParameters {
25 symmetric_definition_object,
26 }
27 }
28
29 pub const fn symmetric_definition_object(&self) -> SymmetricDefinitionObject {
31 self.symmetric_definition_object
32 }
33}
34
35impl TryFrom<TPMS_SYMCIPHER_PARMS> for SymmetricCipherParameters {
36 type Error = Error;
37 fn try_from(tpms_symcipher_params: TPMS_SYMCIPHER_PARMS) -> Result<SymmetricCipherParameters> {
38 Ok(SymmetricCipherParameters {
39 symmetric_definition_object: tpms_symcipher_params.sym.try_into()?,
40 })
41 }
42}
43
44impl From<SymmetricCipherParameters> for TPMS_SYMCIPHER_PARMS {
45 fn from(symmetric_cipher_parameters: SymmetricCipherParameters) -> TPMS_SYMCIPHER_PARMS {
46 TPMS_SYMCIPHER_PARMS {
47 sym: symmetric_cipher_parameters
48 .symmetric_definition_object
49 .into(),
50 }
51 }
52}