1.0
High level overview
- New api version v20190401 in namespace ::cryptolens_io::v20190401
- Api version v20180502, i.e. namespace ::cryptolens_io::v20180502, remains source code compatible with previous releases. The file
src/base64.cpp
was moved tothird_party/base64_OpenBSD/base64.cpp
, third party build scripts may need to be updated.
Api version v20190401
A summary of the changes from api version v20180502 to api version v20190401:
- Instead of directly templating
basic_Cryptolens
with aRequestHandler
and aSignatureVerifier
it now takes a single template paramterConfiguration
. Several defaultConfiguration
classes are provided, see README.md for more details. - The API now automatically performs more basic sanity checks using the
ActivateValidator
from the choosen configuration class. In particular,Configuration_Unix
andConfiguration_Windows
automatically compare the expires field on the license key to the systems local clock. If one does not want to perform this check, useConfiguration_Windows_IgnoreExpires
orConfiguration_Unix_IgnoreExpires
. - All constructors now take a
basic_Error &
argument, allowing us to report failures from the constructor. - Machine codes are now computed in the library by selecting a
MachineCodeComputer
policy class. Themachine_code
parameters have been removed from all methods. If one desires the old behaviour one can use theMachineCodeComputer_static
policy class. - Added support for the Cryptolens Messaging API with the
last_message()
method. - Added support for creating trial keys with
create_trial_key()
. - (Mostly internal) Interface of
RequestHandlers
was changed.