diff options
author | Richard Levitte <levitte@openssl.org> | 2002-02-16 12:20:34 +0000 |
---|---|---|
committer | Richard Levitte <levitte@openssl.org> | 2002-02-16 12:20:34 +0000 |
commit | 97879bcd57aa72555c624ae04b91159212c125d7 (patch) | |
tree | b9b8747c4cce372db4cea3a2db03f0059714274e /crypto/aes/aes_locl.h | |
parent | ab1dee1efc39f7e18487323663d073e7a48ebeaf (diff) |
Add the modes OFB128, CFB128 and CTR128 to AES.
Submitted by Stephen Sprunk <stephen@sprunk.org>
Diffstat (limited to 'crypto/aes/aes_locl.h')
-rw-r--r-- | crypto/aes/aes_locl.h | 11 |
1 files changed, 10 insertions, 1 deletions
diff --git a/crypto/aes/aes_locl.h b/crypto/aes/aes_locl.h index d49e829933..541d1d6e84 100644 --- a/crypto/aes/aes_locl.h +++ b/crypto/aes/aes_locl.h @@ -1,6 +1,6 @@ /* crypto/aes/aes.h -*- mode:C; c-file-style: "eay" -*- */ /* ==================================================================== - * Copyright (c) 1998-2001 The OpenSSL Project. All rights reserved. + * Copyright (c) 1998-2002 The OpenSSL Project. All rights reserved. * * Redistribution and use in source and binary forms, with or without * modification, are permitted provided that the following conditions @@ -65,6 +65,15 @@ #include <string.h> #endif +#ifdef _MSC_VER +# define SWAP(x) (_lrotl(x, 8) & 0x00ff00ff | _lrotr(x, 8) & 0xff00ff00) +# define GETU32(p) SWAP(*((u32 *)(p))) +# define PUTU32(ct, st) { *((u32 *)(ct)) = SWAP((st)); } +#else +# define GETU32(pt) (((u32)(pt)[0] << 24) ^ ((u32)(pt)[1] << 16) ^ ((u32)(pt)[2] << 8) ^ ((u32)(pt)[3])) +# define PUTU32(ct, st) { (ct)[0] = (u8)((st) >> 24); (ct)[1] = (u8)((st) >> 16); (ct)[2] = (u8)((st) >> 8); (ct)[3] = (u8)(st); } +#endif + typedef unsigned long u32; typedef unsigned short u16; typedef unsigned char u8; |