> -----Original Message----- > From: James McCoy [mailto:vega.ja...@gmail.com] On Behalf Of James > McCoy > Sent: zondag 12 juni 2016 20:56 > To: dev@serf.apache.org > Subject: [PATCH] Prepare serf for OpenSSL 1.1 release > > OpenSSL is preparing a 1.1.0 release which introduces API and ABI > incompatibilities (described in an in-progress[0] wiki page). > > [0]: https://wiki.openssl.org/index.php/1.1_API_Changes > > A rebuild[1] of all Debian packages using OpenSSL found that serf is > affected by these changes, specifically making BIO/BIO_METHOD opaque and > removing the need for the locking functions[2]. > > [1]: https://breakpoint.cc/openssl-1.1-rebuild-2016-05-29/ > [2]: > https://github.com/openssl/openssl/blob/dae00d631fdaed48d88c454864abbd6 > ce99c63d6/include/openssl/crypto.h#L209-L216 > > The attached patches fix the build and pass the test suites both with > OpenSSL 1.0.2h and a pre-release of OpenSSL 1.1.0, but more eyes are > always good.
Hi, I had a quick look at this patch. The patch looks like it fixes the issues you identified. I'm guessing the patch introduces a minor memory leak via the new calls to BIO_meth_new(), as there is no code path that destroys these now. For trunk I would prefer a patch with the USE_OPENSSL_1_1_API macro defined the other way around. Newer OpenSSL 1.X versions will most likely all use the new code path, while only 1.0 (and 0.x) will use the legacy code path. > > I'm including patches for both branches/1.3.x and trunk since there's a > bit of divergence between the two. > I tried to look at OpenSSL 1.1.0 earlier myself, but as my build depends on Subversion dependencies I got into a few other problems earlier. I got an easy workaround for APR, but Cyrus Sasl was a different story. Do you know if there is already a patch for that package? If there is one it would make it easier for me to test with OpenSSL 1.1.0 prereleases. Thanks, Bert > Cheers, > -- > James > GPG Key: 4096R/91BF BF4D 6956 BD5D F7B7 2D23 DFE6 91AE 331B A3DB