diff options
Diffstat (limited to 'include/my_crypt.h')
-rw-r--r-- | include/my_crypt.h | 50 |
1 files changed, 33 insertions, 17 deletions
diff --git a/include/my_crypt.h b/include/my_crypt.h index c6cddbd99e3..b760af75bfa 100644 --- a/include/my_crypt.h +++ b/include/my_crypt.h @@ -15,57 +15,73 @@ along with this program; if not, write to the Free Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA */ -// TODO: Add Windows support - #ifndef MY_CRYPT_INCLUDED #define MY_CRYPT_INCLUDED -#include <my_aes.h> +#include <my_global.h> + +#ifdef __cplusplus +extern "C" { +#endif + +/* return values from my_aes_encrypt/my_aes_decrypt functions */ +#define MY_AES_OK 0 +#define MY_AES_BAD_DATA -1 +#define MY_AES_OPENSSL_ERROR -2 +#define MY_AES_BAD_KEYSIZE -3 -C_MODE_START +/* The block size for all supported algorithms */ +#define MY_AES_BLOCK_SIZE 16 + +/* The max key length of all supported algorithms */ +#define MY_AES_MAX_KEY_LENGTH 32 #ifdef HAVE_EncryptAes128Ctr int my_aes_encrypt_ctr(const uchar* source, uint source_length, uchar* dest, uint* dest_length, - const unsigned char* key, uint key_length, - const unsigned char* iv, uint iv_length, + const uchar* key, uint key_length, + const uchar* iv, uint iv_length, int no_padding); int my_aes_decrypt_ctr(const uchar* source, uint source_length, uchar* dest, uint* dest_length, - const unsigned char* key, uint key_length, - const unsigned char* iv, uint iv_length, + const uchar* key, uint key_length, + const uchar* iv, uint iv_length, int no_padding); #endif int my_aes_encrypt_cbc(const uchar* source, uint source_length, uchar* dest, uint* dest_length, - const unsigned char* key, uint key_length, - const unsigned char* iv, uint iv_length, + const uchar* key, uint key_length, + const uchar* iv, uint iv_length, int no_padding); int my_aes_decrypt_cbc(const uchar* source, uint source_length, uchar* dest, uint* dest_length, - const unsigned char* key, uint key_length, - const unsigned char* iv, uint iv_length, + const uchar* key, uint key_length, + const uchar* iv, uint iv_length, int no_padding); int my_aes_encrypt_ecb(const uchar* source, uint source_length, uchar* dest, uint* dest_length, - const unsigned char* key, uint key_length, - const unsigned char* iv, uint iv_length, + const uchar* key, uint key_length, + const uchar* iv, uint iv_length, int no_padding); int my_aes_decrypt_ecb(const uchar* source, uint source_length, uchar* dest, uint* dest_length, - const unsigned char* key, uint key_length, - const unsigned char* iv, uint iv_length, + const uchar* key, uint key_length, + const uchar* iv, uint iv_length, int no_padding); int my_random_bytes(uchar* buf, int num); -C_MODE_END +int my_aes_get_size(int source_length); + +#ifdef __cplusplus +} +#endif #endif /* MY_CRYPT_INCLUDED */ |