summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMiloslav Trmač <mitr@redhat.com>2010-07-24 02:49:48 +0200
committerMiloslav Trmač <mitr@redhat.com>2010-07-24 04:25:24 +0200
commitcfdfa8c889b944322f1af84f7447041fd44f7e5f (patch)
treeb7dcf9b628fc6eda36c50dcc4798810b13ac1304
parent257c3d8b7cf9a877b05234ff4d9a58a0562ae855 (diff)
downloadkernel-crypto-cfdfa8c889b944322f1af84f7447041fd44f7e5f.tar.gz
kernel-crypto-cfdfa8c889b944322f1af84f7447041fd44f7e5f.tar.xz
kernel-crypto-cfdfa8c889b944322f1af84f7447041fd44f7e5f.zip
Use algo_properties_st in pkcs_1_mgf1
-rw-r--r--libtomcrypt/headers/tomcrypt_pkcs.h2
-rw-r--r--libtomcrypt/pk/pkcs1/pkcs_1_mgf1.c10
-rw-r--r--libtomcrypt/pk/pkcs1/pkcs_1_oaep_decode.c4
-rw-r--r--libtomcrypt/pk/pkcs1/pkcs_1_oaep_encode.c4
-rw-r--r--libtomcrypt/pk/pkcs1/pkcs_1_pss_decode.c2
-rw-r--r--libtomcrypt/pk/pkcs1/pkcs_1_pss_encode.c2
6 files changed, 12 insertions, 12 deletions
diff --git a/libtomcrypt/headers/tomcrypt_pkcs.h b/libtomcrypt/headers/tomcrypt_pkcs.h
index 142f1966b36..be0d7f6822a 100644
--- a/libtomcrypt/headers/tomcrypt_pkcs.h
+++ b/libtomcrypt/headers/tomcrypt_pkcs.h
@@ -18,7 +18,7 @@ enum ltc_pkcs_1_paddings
LTC_LTC_PKCS_1_PSS = 3 /* LTC_PKCS #1 v2.1 signature padding */
};
-int pkcs_1_mgf1( int hash_idx,
+int pkcs_1_mgf1(const struct algo_properties_st *hash,
const unsigned char *seed, unsigned long seedlen,
unsigned char *mask, unsigned long masklen);
diff --git a/libtomcrypt/pk/pkcs1/pkcs_1_mgf1.c b/libtomcrypt/pk/pkcs1/pkcs_1_mgf1.c
index 01fe231a84e..9ea2d8c5773 100644
--- a/libtomcrypt/pk/pkcs1/pkcs_1_mgf1.c
+++ b/libtomcrypt/pk/pkcs1/pkcs_1_mgf1.c
@@ -22,12 +22,12 @@
Perform LTC_PKCS #1 MGF1 (internal)
@param seed The seed for MGF1
@param seedlen The length of the seed
- @param hash_idx The index of the hash desired
+ @param hash The desired hash
@param mask [out] The destination
@param masklen The length of the mask desired
@return CRYPT_OK if successful
*/
-int pkcs_1_mgf1(int hash_idx,
+int pkcs_1_mgf1(const struct algo_properties_st *hash,
const unsigned char *seed, unsigned long seedlen,
unsigned char *mask, unsigned long masklen)
{
@@ -40,12 +40,12 @@ int pkcs_1_mgf1(int hash_idx,
LTC_ARGCHK(mask != NULL);
/* ensure valid hash */
- if ((err = hash_is_valid(hash_idx)) != CRYPT_OK) {
+ if ((err = hash_is_valid(hash->algo)) != CRYPT_OK) {
return err;
}
/* get hash output size */
- hLen = _ncr_algo_digest_size(hash_idx);
+ hLen = _ncr_algo_digest_size(hash->algo);
/* allocate memory */
buf = XMALLOC(hLen);
@@ -61,7 +61,7 @@ int pkcs_1_mgf1(int hash_idx,
STORE32H(counter, buf);
++counter;
- err = hash_memory_multi(hash_idx, buf, &hLen, seed, seedlen, buf, (unsigned long) 4, NULL, 0);
+ err = hash_memory_multi(hash->algo, buf, &hLen, seed, seedlen, buf, (unsigned long) 4, NULL, 0);
if (err != CRYPT_OK) {
goto LBL_ERR;
}
diff --git a/libtomcrypt/pk/pkcs1/pkcs_1_oaep_decode.c b/libtomcrypt/pk/pkcs1/pkcs_1_oaep_decode.c
index 4fc4c956e95..37ca7a2ef34 100644
--- a/libtomcrypt/pk/pkcs1/pkcs_1_oaep_decode.c
+++ b/libtomcrypt/pk/pkcs1/pkcs_1_oaep_decode.c
@@ -103,7 +103,7 @@ int pkcs_1_oaep_decode(const unsigned char *msg, unsigned long msglen,
x += modulus_len - hLen - 1;
/* compute MGF1 of maskedDB (hLen) */
- if ((err = pkcs_1_mgf1(hash->algo, DB, modulus_len - hLen - 1, mask, hLen)) != CRYPT_OK) {
+ if ((err = pkcs_1_mgf1(hash, DB, modulus_len - hLen - 1, mask, hLen)) != CRYPT_OK) {
goto LBL_ERR;
}
@@ -113,7 +113,7 @@ int pkcs_1_oaep_decode(const unsigned char *msg, unsigned long msglen,
}
/* compute MGF1 of seed (k - hlen - 1) */
- if ((err = pkcs_1_mgf1(hash->algo, seed, hLen, mask, modulus_len - hLen - 1)) != CRYPT_OK) {
+ if ((err = pkcs_1_mgf1(hash, seed, hLen, mask, modulus_len - hLen - 1)) != CRYPT_OK) {
goto LBL_ERR;
}
diff --git a/libtomcrypt/pk/pkcs1/pkcs_1_oaep_encode.c b/libtomcrypt/pk/pkcs1/pkcs_1_oaep_encode.c
index 46dc91e551f..4e8d05cccbf 100644
--- a/libtomcrypt/pk/pkcs1/pkcs_1_oaep_encode.c
+++ b/libtomcrypt/pk/pkcs1/pkcs_1_oaep_encode.c
@@ -104,7 +104,7 @@ int pkcs_1_oaep_encode(const unsigned char *msg, unsigned long msglen,
get_random_bytes(seed, hLen);
/* compute MGF1 of seed (k - hlen - 1) */
- if ((err = pkcs_1_mgf1(hash->algo, seed, hLen, mask, modulus_len - hLen - 1)) != CRYPT_OK) {
+ if ((err = pkcs_1_mgf1(hash, seed, hLen, mask, modulus_len - hLen - 1)) != CRYPT_OK) {
goto LBL_ERR;
}
@@ -114,7 +114,7 @@ int pkcs_1_oaep_encode(const unsigned char *msg, unsigned long msglen,
}
/* compute MGF1 of maskedDB (hLen) */
- if ((err = pkcs_1_mgf1(hash->algo, DB, modulus_len - hLen - 1, mask, hLen)) != CRYPT_OK) {
+ if ((err = pkcs_1_mgf1(hash, DB, modulus_len - hLen - 1, mask, hLen)) != CRYPT_OK) {
goto LBL_ERR;
}
diff --git a/libtomcrypt/pk/pkcs1/pkcs_1_pss_decode.c b/libtomcrypt/pk/pkcs1/pkcs_1_pss_decode.c
index 029f6548652..8e3ffa827e8 100644
--- a/libtomcrypt/pk/pkcs1/pkcs_1_pss_decode.c
+++ b/libtomcrypt/pk/pkcs1/pkcs_1_pss_decode.c
@@ -102,7 +102,7 @@ int pkcs_1_pss_decode(const unsigned char *msghash, unsigned long msghashlen,
}
/* generate mask of length modulus_len - hLen - 1 from hash */
- if ((err = pkcs_1_mgf1(hash_algo->algo, hash, hLen, mask, modulus_len - hLen - 1)) != CRYPT_OK) {
+ if ((err = pkcs_1_mgf1(hash_algo, hash, hLen, mask, modulus_len - hLen - 1)) != CRYPT_OK) {
goto LBL_ERR;
}
diff --git a/libtomcrypt/pk/pkcs1/pkcs_1_pss_encode.c b/libtomcrypt/pk/pkcs1/pkcs_1_pss_encode.c
index 86909325640..38879af1899 100644
--- a/libtomcrypt/pk/pkcs1/pkcs_1_pss_encode.c
+++ b/libtomcrypt/pk/pkcs1/pkcs_1_pss_encode.c
@@ -97,7 +97,7 @@ int pkcs_1_pss_encode(const unsigned char *msghash, unsigned long msghashlen,
x += saltlen;
/* generate mask of length modulus_len - hLen - 1 from hash */
- if ((err = pkcs_1_mgf1(hash_algo->algo, hash, hLen, mask, modulus_len - hLen - 1)) != CRYPT_OK) {
+ if ((err = pkcs_1_mgf1(hash_algo, hash, hLen, mask, modulus_len - hLen - 1)) != CRYPT_OK) {
goto LBL_ERR;
}