Hello, 

Am Donnerstag, den 27.10.2016, 08:56 +0200 schrieb Andreas Tille:
> Hi,
> 
> I can confirm this problem when trying to build against openssl 1.1:
> 
> ...
> gcc -std=gnu99 -I/usr/share/R/include -DNDEBUG      -fpic  -g -O2
> -fdebug-prefix-map=/build/r-base-3.3.1.20161024=. -fstack-protector-
> strong -Wformat -Werror=format-security -Wdate-time
> -D_FORTIFY_SOURCE=2 -g  -c cert.c -o cert.o
> cert.c: In function 'R_cert_info':
> cert.c:45:37: error: dereferencing pointer to incomplete type 'X509
> {aka struct x509_st}'
>    OBJ_obj2txt(buf, sizeof(buf), cert->sig_alg->algorithm, 0);
>                                      ^~
> /usr/lib/R/etc/Makeconf:132: recipe for target 'cert.o' failed


The problem is, that with openssl 1.1.0 many of the structures are now
opaque and elements can only be accessed by specific functions. 

I did a transition for DCMTK some time ago and there it seemed rather
straight forward. I also helped out with qt4, but there the patch is
not tested at all, and some of the changes were not trivial, i.e. one
would need deeper knowledge of openssl to know exactly what is the
access function to be used. 

There is a page that gives some hits, but it is far from complete: 

https://wiki.openssl.org/index.php/1.1_API_Changes


Currently, I'm quite busy moving, but in two weeks or so I might be
able to give a hand in this. 

best, 
Gert 

Reply via email to