Enable std::array overloads for boost::asio on clang:
* Remove Boost config option from beast config.
* Define from compiler, or let Boost figure out itself.
Add shared_ptr<boost::asio::ssl::context> to ssl_bundle:
This gives the ssl_bundle shared ownership of the underlying ssl context
so that ownership of the bundle may be transferred to other classes without
introduce lifetime issues.
Add [overlay] configuration section (experimental):
This configuration section uses the new BasicConfig interface that supports
key-value pairs in the section. Some exposition is added to the example cfg
file. The new settings for overlay are related to the Hub and Spoke feature
which is currently in development. Production servers should not set
these configuration options, they are clearly marked experimental in the
example cfg file.
Use _MSC_VER to detect Visual Studio
Add Section::name:
The Section object now stores its name for better diagnostic messages.
Create Ripple SSL contexts using std::make_shared.
Use ssl_bundle in Overlay::Peer
Use shared_ptr to SSL context in Overlay:
These changes are a prerequisite for the universal port. They allow the
ssl_bundle to retain ownership of the SSL context via shared_ptr.
* Overlay uses shared_ptr to SSL context
* Removed undocumented PEER_SSL_CIPHER_LIST configuration setting
Persist HTTP peer io_service::work lifetime:
This simplification eliminates any potential for bugs caused by incorrect
lifetime management of the io_service::work object.
De-pimpl HTTP::Server
Rename ServerImpl data members
Tidy up HTTP::Port interface
Fix block on ~Door for pending objects
Block ~ServerImpl for pending objects
Always detect ssl in HTTP server
Make streambuf buffers_type iterators default constructible
Fix races in HTTP::Server doors