[openssl-users] EVP_CIPHER_CTX array not compiling
    Lior Koskas 
    liork.cryptobiu at gmail.com
       
    Sun Apr 23 12:49:22 UTC 2017
    
    
  
Hi,
I have a problem with converting my C++ library into OpenSSL v1.1.0.
I'm using CentOS 7 and OpenSSL v1.1.0.
When I'm trying to use EVP_CIPHER_CTX as an array, my code does not compile.
I understand that this is caused by making the structures opaque.
The problem is this line
OTEXT_AES_KEY_INIT(ctx + i, pBufIdx);
The operation ctx+i is not compiling. The error I'm receiving is :
invalid use of incomplete type struct evp_cipher_ctx_st.
static void InitAESKey(AES_KEY_CTX* ctx, BYTE* keybytes, int numkeys)
        {
                BYTE* pBufIdx = keybytes;
                for (int i = 0; i < numkeys; i++)
                {
                        OTEXT_AES_KEY_INIT(ctx + i, pBufIdx);
                        pBufIdx += AES_KEY_BYTES;
                }
        }
While OTEXT_AES_KEY_INIT is macro defined like this:
#define AES_KEY_CTX EVP_CIPHER_CTX
#define OTEXT_AES_KEY_INIT(ctx, buf) { \
        EVP_CIPHER_CTX_init(ctx); \
        EVP_EncryptInit_ex(ctx, EVP_aes_128_ecb(), NULL, buf, ZERO_IV); \
        }
What I'm doing wrong?
-- 
Lior           Koskas
Software Engineer
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mta.openssl.org/pipermail/openssl-users/attachments/20170423/42e6499e/attachment.html>
    
    
More information about the openssl-users
mailing list