--- libaitio/inc/aitio.h 2016/08/18 09:06:31 1.42 +++ libaitio/inc/aitio.h 2019/10/08 13:00:42 1.42.2.2 @@ -3,7 +3,7 @@ * by Michael Pounov * * $Author: misho $ -* $Id: aitio.h,v 1.42 2016/08/18 09:06:31 misho Exp $ +* $Id: aitio.h,v 1.42.2.2 2019/10/08 13:00:42 misho Exp $ * ************************************************************************** The ELWIX and AITNET software is distributed under the following @@ -12,7 +12,7 @@ terms: All of the documentation and software included in the ELWIX and AITNET Releases is copyrighted by ELWIX - Sofia/Bulgaria -Copyright 2004 - 2016 +Copyright 2004 - 2019 by Michael Pounov . All rights reserved. Redistribution and use in source and binary forms, with or without @@ -51,8 +51,12 @@ SUCH DAMAGE. #include #include -#include +#include #include +#include +#if OPENSSL_VERSION_NUMBER >= 0x10100000L + #include +#endif #include #include #include @@ -66,6 +70,30 @@ SUCH DAMAGE. #include #include + +#if OPENSSL_VERSION_NUMBER >= 0x10100000L +#ifndef evp_cipher_ctx_st +struct evp_cipher_ctx_st { + const EVP_CIPHER *cipher; + ENGINE *engine; /* functional reference if 'cipher' is + * ENGINE-provided */ + int encrypt; /* encrypt or decrypt */ + int buf_len; /* number we have left */ + unsigned char oiv[EVP_MAX_IV_LENGTH]; /* original iv */ + unsigned char iv[EVP_MAX_IV_LENGTH]; /* working iv */ + unsigned char buf[EVP_MAX_BLOCK_LENGTH]; /* saved partial block */ + int num; /* used by cfb/ofb/ctr mode */ + /* FIXME: Should this even exist? It appears unused */ + void *app_data; /* application stuff */ + int key_len; /* May change for variable length cipher */ + unsigned long flags; /* Various flags */ + void *cipher_data; /* per EVP data */ + int final_used; + int block_mask; + unsigned char final[EVP_MAX_BLOCK_LENGTH]; /* possible final block */ +} /* EVP_CIPHER_CTX */ ; +#endif +#endif #ifndef STRSIZ #define STRSIZ 256