Skip to content
oatpp secure ConnectionProvider based on libressl
Branch: master
Clone or download
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
cmake update installation scripts Jan 28, 2019
src updated to oatpp veraion 0.19.4 Apr 30, 2019
test updated to oatpp veraion 0.19.4 Apr 30, 2019
utility Better error messages + new oatpp IOErrors Feb 7, 2019
.gitignore better cmake scripts Jan 25, 2019
CMakeLists.txt updated to oatpp veraion 0.19.4 Apr 30, 2019
LICENSE Initial commit Jun 22, 2018
README.md Update README.md Jan 29, 2019
azure-pipelines.yml fixing build script Jan 27, 2019

README.md

oatpp-libressl oatpp build status

This submodule provides secure server and client connection providers for oatpp applications. Based on LibreSSL.

More about oat++:

Requires

LibreSSL installed.

Example

See: Full example project TLS-Libressl

Create server connection provider

#include "oatpp-libressl/server/ConnectionProvider.hpp"
#include "oatpp-libressl/Config.hpp"

...

const char* pemFile = "path/to/file.pem";
const char* crtFile = "path/to/file.crt";

auto config = oatpp::libressl::Config::createDefaultServerConfig(pemFile, crtFile);
auto connectionProvider = oatpp::libressl::server::ConnectionProvider::createShared(config, 8443);

Create client connection provider

#include "oatpp-libressl/client/ConnectionProvider.hpp"
#include "oatpp-libressl/Config.hpp"

...

auto config = oatpp::libressl::Config::createShared();
auto connectionProvider = oatpp::libressl::client::ConnectionProvider::createShared(config, "httpbin.org", 443);

Don't forget!

Set libressl lockingCallback and SIGPIPE handler on program start!

#include "oatpp-libressl/Callbacks.hpp"

...

/* set lockingCallback for libressl */
oatpp::libressl::Callbacks::setDefaultCallbacks();
#include <csignal>

...

/* ignore SIGPIPE */
std::signal(SIGPIPE, SIG_IGN);
You can’t perform that action at this time.