Skip to content
An openFrameworks addon for managing SSL connections.
C++ Shell Makefile
Branch: master
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Type Name Latest commit message Commit time
Failed to load latest commit information.


An openFrameworks addon for managing SSL connections.


Typically, clients, such as those in ofxHTTP and ofxSMTP work best with up-to-date CA Certificate bundles. An fairly recent example is can be found at example/bin/data/ssl/cacert.pem and shared/data/ssl/cacert.pem. For up-to-date certificates (or if you just want to generate your own for security reasons), check out this page for more info on creating your own Certificate Authority PEM (e.g. cacert.pem).

Getting Started

To get started, generate the example project files using the openFrameworks Project Generator. The example included in this addon does not do much. TO see the addon in action, check out the examples in ofxHTTP or ofxSMTP.

Project that use this addon should have ensure that the required certificates are included in their project data. For standard SSL communication, place a cacert.pem in the bin/data/ssl/ folder of your openFrameworks project (see the example). Alternatively, if no bin/data/ssl/cacert.pem is found, the addon will search in ofxSSLManager/shared/data/ssl/cacert.pem. To set a custom location, you can initialize a custom SSL context:

void ofApp::setup()
  Poco::Net::Context::Ptr pContext = ... ;

  // Initialize the custom SSL context.
  // See


  // ...


API documentation can be found here.

Build Status

Linux, macOS Build Status

Visual Studio, MSYS Build status


The stable branch of this repository is meant to be compatible with the openFrameworks stable branch, which corresponds to the latest official openFrameworks release.

The master branch of this repository is meant to be compatible with the openFrameworks master branch.

Some past openFrameworks releases are supported via releases, but only the stable branch and the master branch are actively supported.


This project uses Semantic Versioning, although strict adherence will only come into effect at version 1.0.0.




Pull Requests are always welcome, so if you make any improvements please feel free to float them back upstream :)

  1. Fork this repository.
  2. Create your feature branch (git checkout -b my-new-feature).
  3. Commit your changes (git commit -am 'Add some feature').
  4. Push to the branch (git push origin my-new-feature).
  5. Create new Pull Request.
You can’t perform that action at this time.