[openssl-dev] [openssl.org #4243] 1.1.0-pre2: bug: EVP_CIPHER_CTX isn't completely opaque

Richard Levitte via RT rt at openssl.org
Fri Jan 15 17:15:28 UTC 2016


This is according to our interpretation of "type opacity", meaning that the
type name is available but not its content. "Data hiding" is another way to put
it. This means that there will be a need to adapt, stack allocated
EVP_CIPHER_CTX is no longer allowed, but there are functions to allocate and
free them on/from the heap (EVP_CIPHER_CTX_new and EVP_CIPHER_CTX_free).

What's your interpretation of type opacity? I'm not going to say that you're
wrong and we're perfect, we're interested in feedback and constructive
arguments. I just wanted to let you know our thinking so far.

Cheers,
Richard

Vid Fre, 15 Jan 2016 kl. 15.32.15, skrev balducci at units.it:
> hello,
>
> apologies if I am missing something here.
>
> There seems to be an inconsistency in 1.1.0-pre2 (didn't check -pre1).
>
> EVP_CIPHER_CTX is typedef'd in ossl_typ.h like this:
>
> typedef struct evp_cipher_ctx_st EVP_CIPHER_CTX;
>
> but struct evp_cipher_ctx_st isn't exposed any longer (it used to be
> in evp.h in 1.0, but has been moved into evp_locl.h in 1.1)
>
> This seems to be the reason why trying to build openssh-7.1p2 (with
> -DOPENSSL_API_COMPAT=0x10000000L) fails with:
>
> In file included from ssh_api.h:26:0,
> from ssh_api.c:21:
> cipher.h:69:17: error: field 'evp' has incomplete type
> EVP_CIPHER_CTX evp;
>
> Running on linux:
> Linux 4.4.0 #1 SMP Mon Jan 11 11:49:05 CET 2016 x86_64 GNU/Linux
>
>
> ciao
> gabriele
>
> _______________________________________________
> openssl-bugs-mod mailing list
> openssl-bugs-mod at openssl.org
> https://mta.openssl.org/mailman/listinfo/openssl-bugs-mod


--
Richard Levitte
levitte at openssl.org



More information about the openssl-dev mailing list