X-Git-Url: http://git.code-monkey.de/?a=blobdiff_plain;f=src%2Fcrypt.h;h=0a4030c8b6c462a768c3097d513332fdc9a56a5d;hb=21d88cde9cf17f177e506badeaf0e512290e09e0;hp=0b35ac3b18d56c2f855e57b61eb54ed590d82bc0;hpb=5191e1cb38d24ebf5c180ac7911893ca8bc4031f;p=umurmur.git diff --git a/src/crypt.h b/src/crypt.h index 0b35ac3..0a4030c 100644 --- a/src/crypt.h +++ b/src/crypt.h @@ -1,5 +1,5 @@ -/* Copyright (C) 2010, Martin Johansson - Copyright (C) 2005-2010, Thorvald Natvig +/* Copyright (C) 2009-2014, Martin Johansson + Copyright (C) 2005-2014, Thorvald Natvig All rights reserved. @@ -28,11 +28,21 @@ NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ -#ifndef _CRYPTSTATE_H -#define _CRYPTSTATE_H +#ifndef CRYPTSTATE_H_34564356 +#define CRYPTSTATE_H_34564356 +#include "byteorder.h" +#include "config.h" + +#ifdef USE_POLARSSL +#include +#include +#define AES_BLOCK_SIZE 16 +#else #include #include +#endif + #include #include "timer.h" #include "types.h" @@ -42,22 +52,26 @@ typedef struct CryptState { uint8_t encrypt_iv[AES_BLOCK_SIZE]; uint8_t decrypt_iv[AES_BLOCK_SIZE]; uint8_t decrypt_history[0x100]; - + unsigned int uiGood; unsigned int uiLate; unsigned int uiLost; unsigned int uiResync; - + unsigned int uiRemoteGood; unsigned int uiRemoteLate; unsigned int uiRemoteLost; unsigned int uiRemoteResync; - +#ifndef USE_POLARSSL AES_KEY encrypt_key; AES_KEY decrypt_key; +#else + aes_context aes_enc; + aes_context aes_dec; +#endif etimer_t tLastGood; etimer_t tLastRequest; - bool_t bInit; + bool_t bInit; } cryptState_t; void CryptState_init(cryptState_t *cs); @@ -68,4 +82,5 @@ void CryptState_setDecryptIV(cryptState_t *cs, const unsigned char *iv); bool_t CryptState_decrypt(cryptState_t *cs, const unsigned char *source, unsigned char *dst, unsigned int crypted_length); void CryptState_encrypt(cryptState_t *cs, const unsigned char *source, unsigned char *dst, unsigned int plain_length); + #endif