Blame SOURCES/bz1484264-4-totemcrypto-Fix-compiler-warning.patch

df4b1e
From fdeed33f514e0056e322a45d9a0a04ca4b9a2709 Mon Sep 17 00:00:00 2001
df4b1e
From: Jan Friesse <jfriesse@redhat.com>
df4b1e
Date: Tue, 1 Aug 2017 14:19:41 +0200
df4b1e
Subject: [PATCH] totemcrypto: Fix compiler warning
df4b1e
df4b1e
Signed-off-by: Jan Friesse <jfriesse@redhat.com>
df4b1e
---
df4b1e
 exec/totemcrypto.c |   13 +++++++++++++
df4b1e
 1 files changed, 13 insertions(+), 0 deletions(-)
df4b1e
df4b1e
diff --git a/exec/totemcrypto.c b/exec/totemcrypto.c
df4b1e
index 79c4312..64246c9 100644
df4b1e
--- a/exec/totemcrypto.c
df4b1e
+++ b/exec/totemcrypto.c
df4b1e
@@ -248,6 +248,7 @@ static PK11SymKey *import_symmetric_key(struct crypto_instance *instance, enum s
df4b1e
 	SECItem wrapped_key;
df4b1e
 	int wrapped_key_len;
df4b1e
 	unsigned char wrapped_key_data[MAX_WRAPPED_KEY_LEN];
df4b1e
+	int case_processed;
df4b1e
 
df4b1e
 	memset(&key_item, 0, sizeof(key_item));
df4b1e
 	slot = NULL;
df4b1e
@@ -258,17 +259,29 @@ static PK11SymKey *import_symmetric_key(struct crypto_instance *instance, enum s
df4b1e
 	key_item.type = siBuffer;
df4b1e
 	key_item.data = instance->private_key;
df4b1e
 
df4b1e
+	case_processed = 0;
df4b1e
 	switch (key_type) {
df4b1e
 	case SYM_KEY_TYPE_CRYPT:
df4b1e
 		key_item.len = cipher_key_len[instance->crypto_cipher_type];
df4b1e
 		cipher = cipher_to_nss[instance->crypto_cipher_type];
df4b1e
 		operation = CKA_ENCRYPT|CKA_DECRYPT;
df4b1e
+		case_processed = 1;
df4b1e
 		break;
df4b1e
 	case SYM_KEY_TYPE_HASH:
df4b1e
 		key_item.len = instance->private_key_len;
df4b1e
 		cipher = hash_to_nss[instance->crypto_hash_type];
df4b1e
 		operation = CKA_SIGN;
df4b1e
+		case_processed = 1;
df4b1e
 		break;
df4b1e
+		/*
df4b1e
+		 * Default is not defined intentionally. Compiler shows warning when
df4b1e
+		 * new key_type is added
df4b1e
+		 */
df4b1e
+	}
df4b1e
+
df4b1e
+	if (!case_processed) {
df4b1e
+		log_printf(instance->log_level_error, "Unknown key_type");
df4b1e
+		goto exit_res_key;
df4b1e
 	}
df4b1e
 
df4b1e
 	slot = PK11_GetBestSlot(cipher, NULL);
df4b1e
-- 
df4b1e
1.7.1
df4b1e