Description of problem:
Boost 1.63 introduced some logic in Boost.asio that expects ERR_PACK, ERR_LIB_SSL, and SSL_R_SHORT_READ to be defined.
boost/asio/ssl/error.hpp lines 47-48
#elif (OPENSSL_VERSION_NUMBER < 0x10100000L) && !defined(OPENSSL_IS_BORINGSSL)
stream_truncated = ERR_PACK(ERR_LIB_SSL, 0, SSL_R_SHORT_READ)
Since these are not defined by anything other libraries that pull in Boost, such as rb_libtorrent, fail to build. I expect that this #elfi block is not meant to be used in Fedora and it needs to be cleaned up.
rb_libtorrent build failure:
I suspect those lines were meant to be used, but this is more fallout of the move from openssl 1.0.1 to 1.1.0 and the version check doesn't work with 1.0.1
# define OPENSSL_VERSION_NUMBER 0x100020bfL
# define OPENSSL_VERSION_NUMBER 0x1010004fL
These are both less than 0x10100000L so the test passes in both cases. I think there are too many zeros in 0x10100000L. I'll fix it and report it upstream.
Oops, no it isn't ... I can't count!
So something else is going on.
Maybe OPENSSL_VERSION_NUMBER simply isn't defined at that point and so expands to 0, I'll check that.
The problem is these lines in the rb_libtorrent test_ssl.cpp file:
#include <boost/asio/ssl/error.hpp> // for asio::error::get_ssl_category()
This includes the definition of asio::error::get_ssl_category() before the OPENSSL_VERSION_NUMBER macro has been defined.
Reversing the order of those two includes (or simply removing the first one) fixes the build.
I've reported this to https://github.com/chriskohlhoff/asio/issues/184
rb_libtorrent is fixed. I'll keep this open until I hear from upstream about the header order dependency.
This bug appears to have been reported against 'rawhide' during the Fedora 26 development cycle.
Changing version to '26'.
boost-1.63.0-9.fc26 has been submitted as an update to Fedora 26. https://bodhi.fedoraproject.org/updates/FEDORA-2017-87acef340c
boost-1.63.0-9.fc26 has been pushed to the Fedora 26 testing repository. If problems still persist, please make note of it in this bug report.
See https://fedoraproject.org/wiki/QA:Updates_Testing for
instructions on how to install test updates.
You can provide feedback for this update here: https://bodhi.fedoraproject.org/updates/FEDORA-2017-87acef340c
boost-1.63.0-9.fc26 has been pushed to the Fedora 26 stable repository. If problems still persist, please make note of it in this bug report.