Skip to content

Commit

Permalink
[CRYPTO] aes-i586: Get rid of useless function wrappers
Browse files Browse the repository at this point in the history
The wrappers aes_encrypt/aes_decrypt simply reverse the order of the
function arguments.  It's just as easy to get the actual assembly code
to read them in the opposite order.

Signed-off-by: Herbert Xu <[email protected]>
  • Loading branch information
herbertx committed Jun 26, 2006
1 parent e1147d8 commit 8b55ba0
Show file tree
Hide file tree
Showing 2 changed files with 8 additions and 19 deletions.
9 changes: 4 additions & 5 deletions arch/i386/crypto/aes-i586-asm.S
Original file line number Diff line number Diff line change
Expand Up @@ -36,16 +36,13 @@
.file "aes-i586-asm.S"
.text

// aes_rval aes_enc_blk(const unsigned char in_blk[], unsigned char out_blk[], const aes_ctx cx[1])//
// aes_rval aes_dec_blk(const unsigned char in_blk[], unsigned char out_blk[], const aes_ctx cx[1])//

#define tlen 1024 // length of each of 4 'xor' arrays (256 32-bit words)

// offsets to parameters with one register pushed onto stack

#define in_blk 8 // input byte array address parameter
#define in_blk 16 // input byte array address parameter
#define out_blk 12 // output byte array address parameter
#define ctx 16 // AES context structure
#define ctx 8 // AES context structure

// offsets in context structure

Expand Down Expand Up @@ -220,6 +217,7 @@
do_col (table, r5,r0,r1,r4, r2,r3); /* idx=r5 */

// AES (Rijndael) Encryption Subroutine
/* void aes_enc_blk(void *ctx, u8 *out_blk, const u8 *in_blk) */

.global aes_enc_blk

Expand Down Expand Up @@ -295,6 +293,7 @@ aes_enc_blk:
ret

// AES (Rijndael) Decryption Subroutine
/* void aes_dec_blk(void *ctx, u8 *out_blk, const u8 *in_blk) */

.global aes_dec_blk

Expand Down
18 changes: 4 additions & 14 deletions arch/i386/crypto/aes.c
Original file line number Diff line number Diff line change
Expand Up @@ -45,8 +45,8 @@
#include <linux/crypto.h>
#include <linux/linkage.h>

asmlinkage void aes_enc_blk(const u8 *src, u8 *dst, void *ctx);
asmlinkage void aes_dec_blk(const u8 *src, u8 *dst, void *ctx);
asmlinkage void aes_enc_blk(void *ctx, u8 *dst, const u8 *src);
asmlinkage void aes_dec_blk(void *ctx, u8 *dst, const u8 *src);

#define AES_MIN_KEY_SIZE 16
#define AES_MAX_KEY_SIZE 32
Expand Down Expand Up @@ -464,16 +464,6 @@ aes_set_key(void *ctx_arg, const u8 *in_key, unsigned int key_len, u32 *flags)
return 0;
}

static inline void aes_encrypt(void *ctx, u8 *dst, const u8 *src)
{
aes_enc_blk(src, dst, ctx);
}
static inline void aes_decrypt(void *ctx, u8 *dst, const u8 *src)
{
aes_dec_blk(src, dst, ctx);
}


static struct crypto_alg aes_alg = {
.cra_name = "aes",
.cra_driver_name = "aes-i586",
Expand All @@ -488,8 +478,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_encrypt,
.cia_decrypt = aes_decrypt
.cia_encrypt = aes_enc_blk,
.cia_decrypt = aes_dec_blk
}
}
};
Expand Down

0 comments on commit 8b55ba0

Please sign in to comment.