[openssl-users] Problem compiling EVP_aes_128_gcm()
Matt Caswell
matt at openssl.org
Wed May 3 09:57:07 UTC 2017
On 03/05/17 10:33, Lior Koskas wrote:
> I viewed the file and the definition exists.
> I also checked that I'm picking the correct version.
>
> My problem is this line : EVP_EncryptInit_ex(&_ctx, EVP_aes_128_gcm(),
> NULL, NULL, NULL);
>
> I also tried to change the code to this two lines :
> EVP_CIPHER *EVP evp_gcm = EVP_aes_128_gcm();
You have one too many "EVP"'s in there. It should be:
const EVP_CIPHER *evp_gcm = EVP_aes_128_gcm();
Although, that really shouldn't be necessary and your original version
looks ok. What doesn't look quite right is the "&_ctx" bit. In 1.1.0 an
EVP_CIPHER_CTX is an opaque type. You cannot allocate concrete instances
of it directly.
Where previously you might have had:
EVP_CIPHER_CTX _ctx;
EVP_CIPHER_CTX_init(&_ctx);
EVP_EncryptInit_ex(&_ctx, EVP_aes_128_gcm(), NULL, NULL, NULL);
You now need to do:
EVP_CIPHER_CTX *_ctx;
_ctx = EVP_CIPHER_CTX_new();
EVP_EncryptInit_ex(_ctx, EVP_aes_128_gcm(), NULL, NULL, NULL);
...
EVP_CIPHER_CTX_free(_ctx);
I have omitted error checking code for brevity.
Matt
> EVP_EncryptInit_ex(&_ctx, evp_gcm, NULL, NULL, NULL);
>
> After the change I got this error : expected initializer before ‘evp_gcm’
>
> What am I doing wrong?
>
> On 3 May 2017 at 12:07, Matt Caswell <matt at openssl.org
> <mailto:matt at openssl.org>> wrote:
>
>
>
> On 03/05/17 09:43, Lior Koskas wrote:
> > Hi,
> >
> > I'm using EVP_aes_128_gcm and have problem with compiling it with
> > OpenSSL 1.1.0 (earlier versions are compiling).
> > Although I included <openssl/evp.h> I got this error : error:
> > ‘EVP_aes_128_gcm’ was not declared in this scope.
> >
> > I'm using CentOS 7.3.
> >
> > Which file I need to include in order to compile EVP_aes_128_gcm ?
>
> It's still declared in evp.h:
>
> const EVP_CIPHER *EVP_aes_128_gcm(void);
>
> Perhaps you are not picking up the version of evp.h that you think
> you are?
>
> Matt
>
> --
> openssl-users mailing list
> To unsubscribe:
> https://mta.openssl.org/mailman/listinfo/openssl-users
> <https://mta.openssl.org/mailman/listinfo/openssl-users>
>
>
>
>
> --
> Lior Koskas
> Software Engineer
>
>
More information about the openssl-users
mailing list