File libica-05-fips-update-handle-new-rc-behavior-in-fips-powerup-tests.patch of Package libica.37333
From 797d467bfde36732b9d32064f4a2b6726d5dd3d7 Mon Sep 17 00:00:00 2001
From: Joerg Schmidbauer <jschmidb@de.ibm.com>
Date: Mon, 2 Dec 2024 13:41:20 +0100
Subject: [PATCH] fips update: handle new rc behavior in fips powerup tests
With the new API behavior the rc's of the intermediate/last routines
are different on whether an external iv is allowed or not.
Signed-off-by: Joerg Schmidbauer <jschmidb@de.ibm.com>
---
src/fips.c | 3 +++
1 file changed, 3 insertions(+)
Index: libica-4.3.1/src/fips.c
===================================================================
--- libica-4.3.1.orig/src/fips.c
+++ libica-4.3.1/src/fips.c
@@ -996,6 +996,7 @@ aes_gcm_kat(void) {
memset(icb, 0, sizeof(icb));
memset(icb, 0, sizeof(ucb));
memset(subkey, 0, sizeof(subkey));
+ ica_allow_external_gcm_iv_in_fips_mode(1);
if ((tv->rv == 0) && (ica_aes_gcm_initialize_internal(tv->iv, tv->ivlen,
tv->key, tv->keylen, icb, ucb, subkey, ICA_ENCRYPT)
|| ica_aes_gcm_intermediate(tv->plaintext,
@@ -1010,6 +1011,7 @@ aes_gcm_kat(void) {
|| memcmp(tv->tag, tag, tv->taglen)))
goto _err_;
+ ica_allow_external_gcm_iv_in_fips_mode(0);
free(tag);
free(out);
}
@@ -1018,6 +1020,7 @@ aes_gcm_kat(void) {
_err_:
free(tag);
free(out);
+ ica_allow_external_gcm_iv_in_fips_mode(0);
#ifndef NO_CPACF
syslog(LOG_ERR, "Libica AES-GCM test failed.");
#endif