summaryrefslogtreecommitdiffstats
path: root/arch/i386/crypto
diff options
context:
space:
mode:
authorHerbert Xu <herbert@gondor.apana.org.au>2006-06-02 08:42:25 +1000
committerHerbert Xu <herbert@gondor.apana.org.au>2006-06-26 17:34:42 +1000
commite90b1a2be6010acf01673b0625cfbf18240f7744 (patch)
tree7b99c136335b94bde40a6a260a6d823c83433024 /arch/i386/crypto
parente805792851bcb0bb42f0c8a352be64564c13e374 (diff)
[CRYPTO] aes: Add wrappers for assembly routines
The wrapper routines are required when asmlinkage differs from the usual calling convention. So we need to have them. However, by rearranging the parameters, they will get optimised away to a single jump for most people. Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
Diffstat (limited to 'arch/i386/crypto')
-rw-r--r--arch/i386/crypto/aes.c14
1 files changed, 12 insertions, 2 deletions
diff --git a/arch/i386/crypto/aes.c b/arch/i386/crypto/aes.c
index b9c7d99160f..d3806daa3de 100644
--- a/arch/i386/crypto/aes.c
+++ b/arch/i386/crypto/aes.c
@@ -464,6 +464,16 @@ static int aes_set_key(struct crypto_tfm *tfm, const u8 *in_key,
return 0;
}
+static void aes_encrypt(struct crypto_tfm *tfm, u8 *dst, const u8 *src)
+{
+ aes_enc_blk(tfm, dst, src);
+}
+
+static void aes_decrypt(struct crypto_tfm *tfm, u8 *dst, const u8 *src)
+{
+ aes_dec_blk(tfm, dst, src);
+}
+
static struct crypto_alg aes_alg = {
.cra_name = "aes",
.cra_driver_name = "aes-i586",
@@ -478,8 +488,8 @@ static struct crypto_alg aes_alg = {
.cia_min_keysize = AES_MIN_KEY_SIZE,
.cia_max_keysize = AES_MAX_KEY_SIZE,
.cia_setkey = aes_set_key,
- .cia_encrypt = aes_enc_blk,
- .cia_decrypt = aes_dec_blk
+ .cia_encrypt = aes_encrypt,
+ .cia_decrypt = aes_decrypt
}
}
};