A copy protection, licensing software written in C++ for Windows and Linux (with a simple C api for use in C projects).
It allows to protect the software you develop from unauthorized copies, limit the usage in time, to a specific set of machines, or prevent the usage in virtualized environments. It is an Open License Manager that helps to keep your software closed 😏 . A comprehensive list of features, and their status is available in the project wiki.
The project is donated to the community. It comes with a very large freedom of use for everyone, and it will always be. It uses a BSD 3 clauses licensing schema, that allows free modification and inclusion in commercial software.
The software is made by 2 main sub-components:
- a C library with no (or minimal) external dependencies (the part you have to integrate in your software).
- a license generator written in C++ (allows you to generate a license).
these modules are planned....
- a license backoffice in php (in order to handle multiple licenses).
- a license debugger to be sent to the final customer when there are licensing problems.
- a log descriptor in order to decrypt logs generated by the license system.
You can notice 2 more sub-projects:
- bootstrap: allows to generate private keys and modify the library on the fly after the downloading.
- testing : runs the tests (and publish the results on cdash)
Below an overview of the basic build procedure, you can find detailed instructions for each supported environment in the wiki.
- compilsers: GCC (Linux) MINGW (Linux cross compile for Windows), MINGW or MSVC (Windows)
- tools/libs: cmake, boost. If target is linux openssl is necessary.
git clone https://github.com/open-license-manager/open-license-manager.git
cd open-license-manager/
mkdir build
cd build
cmake .. -DCMAKE_INSTALL_PREFIX=../install
make
make install
cmake .. -G "Visual Studio 14 2015 Win64" -DBOOST_ROOT="{Folder where boost is}" -DCMAKE_INSTALL_PREFIX=../install
cmake --build . --target install --config Release
x86_64-w64-mingw32.static-cmake .. -DCMAKE_INSTALL_PREFIX=../install
make
make install
make test
ctest -C Release
This simple example shows how to integrate open-licence-manager into your project
$ cd example
$ cmake .
$ make
$ ./example
license ERROR :
license file not found
the pc signature is :
Jaaa-aaaa-MG9F-ZhBB
$ ../install/bin/license_generator example -s Jaaa-aaaa-MG9F-ZhBB -o example.lic
$ ./example
licence OK
The project is not dead but we take our time to answer. The best interaction you can have with us is through the issue system. Have a look to the contribution guidelines
We use GitFlow (or at least a subset of it). Remember to install the gitflow git plugin and use develop
as default branch for your pull requests.