diff options
author | Herbert Xu <herbert@gondor.apana.org.au> | 2006-06-02 00:42:25 +0200 |
---|---|---|
committer | Herbert Xu <herbert@gondor.apana.org.au> | 2006-06-26 09:34:42 +0200 |
commit | e90b1a2be6010acf01673b0625cfbf18240f7744 (patch) | |
tree | 7b99c136335b94bde40a6a260a6d823c83433024 /arch/i386/crypto | |
parent | [CRYPTO] tcrypt: Speed benchmark support for digest algorithms (diff) | |
download | linux-e90b1a2be6010acf01673b0625cfbf18240f7744.tar.xz linux-e90b1a2be6010acf01673b0625cfbf18240f7744.zip |
[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.c | 14 |
1 files changed, 12 insertions, 2 deletions
diff --git a/arch/i386/crypto/aes.c b/arch/i386/crypto/aes.c index b9c7d99160f1..d3806daa3de3 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 } } }; |