提交 9f8cfb1c 编写于 作者: A Andy Polyakov

Improve Camellia code readability.

上级 c163b5f7
...@@ -69,16 +69,14 @@ void Camellia_cbc_encrypt(const unsigned char *in, unsigned char *out, ...@@ -69,16 +69,14 @@ void Camellia_cbc_encrypt(const unsigned char *in, unsigned char *out,
unsigned long len = length; unsigned long len = length;
unsigned char tmp[CAMELLIA_BLOCK_SIZE]; unsigned char tmp[CAMELLIA_BLOCK_SIZE];
const unsigned char *iv = ivec; const unsigned char *iv = ivec;
u32 t32[UNITSIZE]; u32 t32[CAMELLIA_BLOCK_SIZE/sizeof(u32)];
const union { long one; char little; } camellia_endian = {1}; const union { long one; char little; } camellia_endian = {1};
assert(in && out && key && ivec); assert(in && out && key && ivec);
assert((CAMELLIA_ENCRYPT == enc)||(CAMELLIA_DECRYPT == enc)); assert((CAMELLIA_ENCRYPT == enc)||(CAMELLIA_DECRYPT == enc));
if(((size_t)in) % ALIGN == 0 if(((size_t)in|(size_t)out|(size_t)ivec) % sizeof(u32) == 0)
&& ((size_t)out) % ALIGN == 0
&& ((size_t)ivec) % ALIGN == 0)
{ {
if (CAMELLIA_ENCRYPT == enc) if (CAMELLIA_ENCRYPT == enc)
{ {
...@@ -281,4 +279,3 @@ void Camellia_cbc_encrypt(const unsigned char *in, unsigned char *out, ...@@ -281,4 +279,3 @@ void Camellia_cbc_encrypt(const unsigned char *in, unsigned char *out,
} }
} }
} }
...@@ -80,9 +80,6 @@ typedef unsigned int u32; ...@@ -80,9 +80,6 @@ typedef unsigned int u32;
extern "C" { extern "C" {
#endif #endif
#define ALIGN 4
#define UNITSIZE 4
#if defined(_MSC_VER) && (defined(_M_IX86) || defined(_M_AMD64) || defined(_M_X64)) #if defined(_MSC_VER) && (defined(_M_IX86) || defined(_M_AMD64) || defined(_M_X64))
# define SWAP(x) ( _lrotl(x, 8) & 0x00ff00ff | _lrotr(x, 8) & 0xff00ff00 ) # define SWAP(x) ( _lrotl(x, 8) & 0x00ff00ff | _lrotr(x, 8) & 0xff00ff00 )
# define GETU32(p) SWAP(*((u32 *)(p))) # define GETU32(p) SWAP(*((u32 *)(p)))
......
...@@ -91,7 +91,7 @@ int Camellia_set_key(const unsigned char *userKey, const int bits, ...@@ -91,7 +91,7 @@ int Camellia_set_key(const unsigned char *userKey, const int bits,
void Camellia_encrypt(const unsigned char *in, unsigned char *out, void Camellia_encrypt(const unsigned char *in, unsigned char *out,
const CAMELLIA_KEY *key) const CAMELLIA_KEY *key)
{ {
u32 tmp[UNITSIZE]; u32 tmp[CAMELLIA_BLOCK_SIZE/sizeof(u32)];
const union { long one; char little; } camellia_endian = {1}; const union { long one; char little; } camellia_endian = {1};
memcpy(tmp, in, CAMELLIA_BLOCK_SIZE); memcpy(tmp, in, CAMELLIA_BLOCK_SIZE);
...@@ -104,7 +104,7 @@ void Camellia_encrypt(const unsigned char *in, unsigned char *out, ...@@ -104,7 +104,7 @@ void Camellia_encrypt(const unsigned char *in, unsigned char *out,
void Camellia_decrypt(const unsigned char *in, unsigned char *out, void Camellia_decrypt(const unsigned char *in, unsigned char *out,
const CAMELLIA_KEY *key) const CAMELLIA_KEY *key)
{ {
u32 tmp[UNITSIZE]; u32 tmp[CAMELLIA_BLOCK_SIZE/sizeof(u32)];
const union { long one; char little; } camellia_endian = {1}; const union { long one; char little; } camellia_endian = {1};
memcpy(tmp, in, CAMELLIA_BLOCK_SIZE); memcpy(tmp, in, CAMELLIA_BLOCK_SIZE);
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册