Building ACE_SSL

956 views Asked by At

I am having trouble building the ACE_SSL library with OpenSSL.

I am using ACE 6.4.1 and OpenSSL 1.1.0c which is the latest release on github (I would assume these are compatible right, even though building instructions for ACE SSL seem to reference out32 and inc32 which seem to be the output of building a previous version of OpenSSL and not this one).

I managed to build openssl and all tests run ok. After that I ran the .mwc script ACE came with as so:

bin\mwc.pl -type vc14 -features "ssl=1" ACE.mwc

This generated a Visual Studio 2015 solution, which now does contain a project called SSL and several other related projects. However when I try to build, the compiler complains about the use of the incomplete type "BIO_METHOD" which is a typedef of "struct bio_method_st", defined in the openssl header "bio.h".

When doing a search in the openssl folder for "struct bio_method_st", I only find one reference to it and it's in that header, but it only contains the declaration and not the definition. Comparing with older versions of openssl online, that header used to contain the definition as well.

I also found a repo online with a script that downloads and builds ace with ssl, 64 bit version here:

https://github.com/sphawk/build-ace

The script runs and builds ok but it uses ACE version 6.3.3 and openssl version 1.0.2f (which released january this year). I could easily modify it to build the 32 bit libraries which are the ones I need and change it to use the latest version of ACE. Using the latest version of openssl requires a bit more change because building steps changed, so I could save time and use that version of openssl. Would that bring any problems? I assume that even if the new version improves on some aspects, it doesn't render the older ones obsolete right?

Bottom line is I can't figure out if the problem is that I am doing something wrong, or if ACE is not compatible with this version of openssl and I should use an older one. I just wanted to post this in case anyone has run into something similar and can point me in the right direction before I do any extra work. Thanks!

1

There are 1 answers

1
Johnny Willemsen On BEST ANSWER

ACE doesn't support OpenSSL 1.1.x yet. Please open an issue at github for this. Maybe you can create a fix, if so, please open a pull request with the necessary changes.