Home | History | Annotate | Download | only in openssl
      1 /* ====================================================================
      2  * Copyright (c) 2008 The OpenSSL Project. All rights reserved.
      3  *
      4  * Rights for redistribution and usage in source and binary
      5  * forms are granted according to the OpenSSL license.
      6  */
      7 
      8 #include <stddef.h>
      9 
     10 typedef void (*block128_f)(const unsigned char in[16],
     11 			unsigned char out[16],
     12 			const void *key);
     13 
     14 typedef void (*cbc128_f)(const unsigned char *in, unsigned char *out,
     15 			size_t len, const void *key,
     16 			unsigned char ivec[16], int enc);
     17 
     18 void CRYPTO_cbc128_encrypt(const unsigned char *in, unsigned char *out,
     19 			size_t len, const void *key,
     20 			unsigned char ivec[16], block128_f block);
     21 void CRYPTO_cbc128_decrypt(const unsigned char *in, unsigned char *out,
     22 			size_t len, const void *key,
     23 			unsigned char ivec[16], block128_f block);
     24 
     25 void CRYPTO_ctr128_encrypt(const unsigned char *in, unsigned char *out,
     26 			size_t len, const void *key,
     27 			unsigned char ivec[16], unsigned char ecount_buf[16],
     28 			unsigned int *num, block128_f block);
     29 
     30 void CRYPTO_ofb128_encrypt(const unsigned char *in, unsigned char *out,
     31 			size_t len, const void *key,
     32 			unsigned char ivec[16], int *num,
     33 			block128_f block);
     34 
     35 void CRYPTO_cfb128_encrypt(const unsigned char *in, unsigned char *out,
     36 			size_t len, const void *key,
     37 			unsigned char ivec[16], int *num,
     38 			int enc, block128_f block);
     39 void CRYPTO_cfb128_8_encrypt(const unsigned char *in, unsigned char *out,
     40 			size_t length, const void *key,
     41 			unsigned char ivec[16], int *num,
     42 			int enc, block128_f block);
     43 void CRYPTO_cfb128_1_encrypt(const unsigned char *in, unsigned char *out,
     44 			size_t bits, const void *key,
     45 			unsigned char ivec[16], int *num,
     46 			int enc, block128_f block);
     47 
     48 size_t CRYPTO_cts128_encrypt_block(const unsigned char *in, unsigned char *out,
     49 			size_t len, const void *key,
     50 			unsigned char ivec[16], block128_f block);
     51 size_t CRYPTO_cts128_encrypt(const unsigned char *in, unsigned char *out,
     52 			size_t len, const void *key,
     53 			unsigned char ivec[16], cbc128_f cbc);
     54 size_t CRYPTO_cts128_decrypt_block(const unsigned char *in, unsigned char *out,
     55 			size_t len, const void *key,
     56 			unsigned char ivec[16], block128_f block);
     57 size_t CRYPTO_cts128_decrypt(const unsigned char *in, unsigned char *out,
     58 			size_t len, const void *key,
     59 			unsigned char ivec[16], cbc128_f cbc);
     60