rust/pvimg: Make PCKMO plaintext control flags a constant

The PCKMO plaintext control flags are used in several places as is
and are also to be used in an upcoming unit test. Make them a constant.

Reviewed-by: Steffen Eiden <seiden@linux.ibm.com>
Reviewed-by: Marc Hartmayer <mhartmay@linux.ibm.com>
Reviewed-by: Hendrik Brueckner <brueckner@linux.ibm.com>
Signed-off-by: Jakob Naucke <naucke@linux.ibm.com>
Signed-off-by: Jan Höppner <hoeppner@linux.ibm.com>
This commit is contained in:
Jakob Naucke
2025-01-15 16:46:01 +01:00
committed by Jan Höppner
parent 76bddf9715
commit ec10654c35
2 changed files with 8 additions and 15 deletions

View File

@@ -58,16 +58,10 @@ fn parse_flags(
.and(Some(PcfV1::all_enabled([PcfV1::AllowDumping]))),
lf.disable_pckmo
.filter(|x| *x)
.and(Some(PcfV1::all_disabled([
PcfV1::PckmoAes,
PcfV1::PckmoDeaTdea,
PcfV1::PckmoEcc,
]))),
lf.enable_pckmo.filter(|x| *x).and(Some(PcfV1::all_enabled([
PcfV1::PckmoAes,
PcfV1::PckmoDeaTdea,
PcfV1::PckmoEcc,
]))),
.and(Some(PcfV1::all_disabled(PlaintextControlFlagsV1::PCKMO))),
lf.enable_pckmo
.filter(|x| *x)
.and(Some(PcfV1::all_enabled(PlaintextControlFlagsV1::PCKMO))),
lf.disable_pckmo_hmac
.filter(|x| *x)
.and(Some(PcfV1::all_disabled([PcfV1::PckmoHmac]))),

View File

@@ -169,14 +169,13 @@ pub enum PcfV1 {
BackupTargetKeys = 62,
}
pub type PlaintextControlFlagsV1 = ControlFlags<PcfV1>;
impl PlaintextControlFlagsV1 {
pub const PCKMO: [PcfV1; 3] = [PcfV1::PckmoAes, PcfV1::PckmoDeaTdea, PcfV1::PckmoEcc];
}
impl Default for PlaintextControlFlagsV1 {
fn default() -> Self {
Self::from_flags(PcfV1::all_enabled([
PcfV1::PckmoAes,
PcfV1::PckmoDeaTdea,
PcfV1::PckmoEcc,
]))
Self::from_flags(PcfV1::all_enabled(PlaintextControlFlagsV1::PCKMO))
}
}