Re: Bug in geode-aes.c ?

2009-11-20 Thread Sebastian Andrzej Siewior
From 335b39e0c55a1dba13cda3e8222947f2cb4120ed Mon Sep 17 00:00:00 2001
From: Sergey Mironov ier...@gmail.com
Date: Thu, 12 Nov 2009 13:10:05 +0300
Subject: [PATCH 2/2] aes_s390: access fallback.cip cipher fallback mode

|The fallback code in cipher mode touch the union fallback.blk instead
|of fallback.cip. This is wrong because we use the cipher and not the
|blockcipher. This did not show any side effects yet because both types /
|structs contain the same element right now.

Signed-off-by: Sergey Mironov ier...@gmail.com

Looks good.

---
 arch/s390/crypto/aes_s390.c |8 
 1 files changed, 4 insertions(+), 4 deletions(-)

diff --git a/arch/s390/crypto/aes_s390.c b/arch/s390/crypto/aes_s390.c
index e33f32b..6f0f8b9 100644
--- a/arch/s390/crypto/aes_s390.c
+++ b/arch/s390/crypto/aes_s390.c
@@ -75,14 +75,14 @@ static int setkey_fallback_cip(struct crypto_tfm
*tfm, const u8 *in_key,
   struct s390_aes_ctx *sctx = crypto_tfm_ctx(tfm);
   int ret;

-  sctx-fallback.blk-base.crt_flags = ~CRYPTO_TFM_REQ_MASK;
-  sctx-fallback.blk-base.crt_flags |= (tfm-crt_flags 
+  sctx-fallback.cip-base.crt_flags = ~CRYPTO_TFM_REQ_MASK;
+  sctx-fallback.cip-base.crt_flags |= (tfm-crt_flags 
   CRYPTO_TFM_REQ_MASK);

   ret = crypto_cipher_setkey(sctx-fallback.cip, in_key, key_len);
   if (ret) {
   tfm-crt_flags = ~CRYPTO_TFM_RES_MASK;
-  tfm-crt_flags |= (sctx-fallback.blk-base.crt_flags 
+  tfm-crt_flags |= (sctx-fallback.cip-base.crt_flags 
   CRYPTO_TFM_RES_MASK);
   }
   return ret;
@@ -170,7 +170,7 @@ static int fallback_init_cip(struct crypto_tfm *tfm)

   if (IS_ERR(sctx-fallback.cip)) {
   printk(KERN_ERR Error allocating fallback algo %s\n, name);
-  return PTR_ERR(sctx-fallback.blk);
+  return PTR_ERR(sctx-fallback.cip);
   }

   return 0;
-- 
1.6.4.4
--
To unsubscribe from this list: send the line unsubscribe linux-crypto in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
--
To unsubscribe from this list: send the line unsubscribe linux-crypto in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html


[PATCH] crypto: move fips_cprng_get_random and fips_cprng_reset to CONFIG_CRYPTO_FIPS

2009-11-20 Thread Jaswinder Singh Rajput

fips_cprng_get_random and fips_cprng_reset is used only by
CONFIG_CRYPTO_FIPS. This also fixes compilation warnings:

 crypto/ansi_cprng.c:360: warning: ‘fips_cprng_get_random’ defined but not used
 crypto/ansi_cprng.c:393: warning: ‘fips_cprng_reset’ defined but not used

Signed-off-by: Jaswinder Singh Rajput jaswinderraj...@gmail.com
---
 crypto/ansi_cprng.c |   56 +-
 1 files changed, 28 insertions(+), 28 deletions(-)

diff --git a/crypto/ansi_cprng.c b/crypto/ansi_cprng.c
index 45bd218..2bc3321 100644
--- a/crypto/ansi_cprng.c
+++ b/crypto/ansi_cprng.c
@@ -357,14 +357,6 @@ static int cprng_get_random(struct crypto_rng *tfm, u8 
*rdata,
return get_prng_bytes(rdata, dlen, prng, 0);
 }
 
-static int fips_cprng_get_random(struct crypto_rng *tfm, u8 *rdata,
-   unsigned int dlen)
-{
-   struct prng_context *prng = crypto_rng_ctx(tfm);
-
-   return get_prng_bytes(rdata, dlen, prng, 1);
-}
-
 /*
  *  This is the cprng_registered reset method the seed value is
  *  interpreted as the tuple { V KEY DT}
@@ -390,26 +382,6 @@ static int cprng_reset(struct crypto_rng *tfm, u8 *seed, 
unsigned int slen)
return 0;
 }
 
-static int fips_cprng_reset(struct crypto_rng *tfm, u8 *seed, unsigned int 
slen)
-{
-   u8 rdata[DEFAULT_BLK_SZ];
-   int rc;
-
-   struct prng_context *prng = crypto_rng_ctx(tfm);
-
-   rc = cprng_reset(tfm, seed, slen);
-
-   if (!rc)
-   goto out;
-
-   /* this primes our continuity test */
-   rc = get_prng_bytes(rdata, DEFAULT_BLK_SZ, prng, 0);
-   prng-rand_data_valid = DEFAULT_BLK_SZ;
-
-out:
-   return rc;
-}
-
 static struct crypto_alg rng_alg = {
.cra_name   = stdrng,
.cra_driver_name= ansi_cprng,
@@ -431,6 +403,34 @@ static struct crypto_alg rng_alg = {
 };
 
 #ifdef CONFIG_CRYPTO_FIPS
+static int fips_cprng_get_random(struct crypto_rng *tfm, u8 *rdata,
+   unsigned int dlen)
+{
+   struct prng_context *prng = crypto_rng_ctx(tfm);
+
+   return get_prng_bytes(rdata, dlen, prng, 1);
+}
+
+static int fips_cprng_reset(struct crypto_rng *tfm, u8 *seed, unsigned int 
slen)
+{
+   u8 rdata[DEFAULT_BLK_SZ];
+   int rc;
+
+   struct prng_context *prng = crypto_rng_ctx(tfm);
+
+   rc = cprng_reset(tfm, seed, slen);
+
+   if (!rc)
+   goto out;
+
+   /* this primes our continuity test */
+   rc = get_prng_bytes(rdata, DEFAULT_BLK_SZ, prng, 0);
+   prng-rand_data_valid = DEFAULT_BLK_SZ;
+
+out:
+   return rc;
+}
+
 static struct crypto_alg fips_rng_alg = {
.cra_name   = fips(ansi_cprng),
.cra_driver_name= fips_ansi_cprng,
-- 
1.6.5.3


--
To unsubscribe from this list: send the line unsubscribe linux-crypto in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html


Re: [PATCH] crypto: move fips_cprng_get_random and fips_cprng_reset to CONFIG_CRYPTO_FIPS

2009-11-20 Thread Neil Horman
On Fri, Nov 20, 2009 at 07:20:19PM +0530, Jaswinder Singh Rajput wrote:
 
 fips_cprng_get_random and fips_cprng_reset is used only by
 CONFIG_CRYPTO_FIPS. This also fixes compilation warnings:
 
  crypto/ansi_cprng.c:360: warning: ‘fips_cprng_get_random’ defined but not 
 used
  crypto/ansi_cprng.c:393: warning: ‘fips_cprng_reset’ defined but not used
 
 Signed-off-by: Jaswinder Singh Rajput jaswinderraj...@gmail.com
Yeah, looks good to me, thanks!
Acked-by: Neil Horman nhor...@tuxdriver.com

 
--
To unsubscribe from this list: send the line unsubscribe linux-crypto in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html