LicenseSpring C++ SDK  7.31.0
Easily add Software Licensing to your application
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros
PODTypes.h File Reference

Go to the source code of this file.

Enumerations

enum  LSAuthMethod { AuthMethodUnknown = 0, AuthMethodKeyBased = 1, AuthMethodUserBased = 2 }
 Product authorization method. More...
 
enum  LSFeatureType { FeatureTypeNone, FeatureTypeActivation, FeatureTypeConsumption }
 Product feature type. More...
 
enum  LSLicenseType {
  LicenseTypePerpetual, LicenseTypeSubscription, LicenseTypeTimeLimited, LicenseTypeConsumption,
  LicenseTypeUnknown = 100
}
 License type. More...
 
enum  LSConsumptionPeriod {
  ConsumptionPeriodNone = 0, ConsumptionPeriodDaily, ConsumptionPeriodWeekly, ConsumptionPeriodMonthly,
  ConsumptionPeriodAnnually
}
 Consumption period. More...
 
enum  LSErrorCode {
  eNoError = 0, eUnknownError, eStdError, eGeneralLSError,
  eInitializationError, eLicenseNotFound, eLicenseExpired, eLicenseDisabled,
  eLicenseInactive, eActivationFailed, eServerError, eDeviceError,
  eVersionError, eProductError, eNoInternetError, eNetworkTimeoutError,
  eNotEnoughConsumptionError, eProductMismatchError, eSignatureMismatchError, eLocalLicenseError,
  eClockTamperedError, eInvalidCredential, eLicenseSpringInternalError, eMissingEmailError,
  eInvalidOrderIDError, eInvalidLicenseFeatureError, eLicenseNoAvailableActivations, eVMNotAllowed,
  eMaxFloatingReached, eLicenseNotFloating, eDeviceBlacklisted, ePasswordChangeNotAllowed,
  eTrialNotAllowed, eCannotBeActivatedNow, eSSOError, eSSOTokenError,
  eBorrowLicenseError, eBorrowingNotAllowed, eAuthorizationError, eVMDNotAvailable,
  eInvalidApiKey, eReadOnlyApiKey, eRevokedApiKey, eApiKeyProductNotAllowed,
  eFloatingTimeoutExpired, eWatchdogError, eInvalidConfirmationCode, eRequestDateHeaderInvalid,
  eInvalidLicenseFeatureCode, eFeatureNotFloating, eFloatingFeatureDeviceNotInUse
}
 LicenseSpring Error codes enum. More...
 
enum  DeviceIDAlgorithm {
  Default = 0, Gen2, CloudPlatformsId, AutoId,
  WinCSProductId, WinCryptographyId, AutoIdGen2, AutoIdWinCloud
}
 Type of Device ID algorithm used by the SDK. More...
 

Enumeration Type Documentation

Product authorization method.

Enumerator
AuthMethodUnknown 

Invalid method.

AuthMethodKeyBased 

Authorization method based on license keys.

AuthMethodUserBased 

Authorization method based on user credentials.

Definition at line 9 of file PODTypes.h.

Product feature type.

Enumerator
FeatureTypeNone 

Invalid type.

FeatureTypeActivation 

Activation feature type.

FeatureTypeConsumption 

Consumption feature type.

Definition at line 18 of file PODTypes.h.

License type.

Enumerator
LicenseTypePerpetual 

Perpetual License type.

LicenseTypeSubscription 

Subscription License type.

LicenseTypeTimeLimited 

TimeLimited License type.

LicenseTypeConsumption 

Consumption License type.

LicenseTypeUnknown 

Unknown (invalid) License type.

Definition at line 27 of file PODTypes.h.

Consumption period.

Enumerator
ConsumptionPeriodNone 

No consumption period, consumption reset disabled.

ConsumptionPeriodDaily 

Daily consumption reset.

ConsumptionPeriodWeekly 

Weekly consumption reset.

ConsumptionPeriodMonthly 

Monthly consumption reset.

ConsumptionPeriodAnnually 

Annually consumption reset.

Definition at line 37 of file PODTypes.h.

LicenseSpring Error codes enum.

Enumerator
eNoError 

No error, everything is ok.

eUnknownError 

Unknown error encountered.

eStdError 

C++ standard exception encountered.

eGeneralLSError 

General LicenseSpring error.

eInitializationError 

Invalid Configuration settings.

eLicenseNotFound 

License not found.

eLicenseExpired 

License Expired.

eLicenseDisabled 

License disabled.

eLicenseInactive 

Could not activate license.

eActivationFailed 

Internal server error.

eServerError 

Internal server error.

eDeviceError 

Device from which the call is made is not licensed (Hardware ID mismatch)

eVersionError 

App version not found on the backend.

eProductError 

Product not found on the backend.

eNoInternetError 

Problems with Internet connection.

eNetworkTimeoutError 

Request to the backend has timed out.

eNotEnoughConsumptionError 

Consumption license or feature run out of resources.

eProductMismatchError 

License product code doesn't correspond to configuration product code.

eSignatureMismatchError 

Server signature is not valid.

eLocalLicenseError 

SDK could not read or write license to the storage.

eClockTamperedError 

Detected that system clock has been set back.

eInvalidCredential 

Username does not exist or wrong password provided.

eLicenseSpringInternalError 

Internal SDK error, please contact support or try to update SDK.

eMissingEmailError 

Missing email in API call for user-based product, probably attempt to get trial license with empty email.

eInvalidOrderIDError 

Order with specified ID already exists and ShouldAppend flag set to false.

eInvalidLicenseFeatureError 

Feature does not exist or wrong feature type.

eLicenseNoAvailableActivations 

The license has already been activated maximum number of times.

eVMNotAllowed 

Running on Virtual machine not allowed.

eMaxFloatingReached 

Reached max users count for floating license.

eLicenseNotFloating 

The license is not floating.

eDeviceBlacklisted 

Device has been added to the blacklist by admin on LicenseSpring platform.

ePasswordChangeNotAllowed 

Password change is restricted by product policy.

eTrialNotAllowed 

Getting trial licenses is restricted by product license policy.

eCannotBeActivatedNow 

Current date is behind license start date.

eSSOError 

Customer account not found or SSO is not set up properly.

eSSOTokenError 

Token for SSO is not valid or expired.

eBorrowLicenseError 

Borrowing period is not valid (it is bigger than max possible)

eBorrowingNotAllowed 

License borrowing is not allowed by license policy.

eAuthorizationError 

Authorization failed.

eVMDNotAvailable 

Windows only, in case VM detection dll not found or tempered.

eInvalidApiKey 

Provided api key is not valid.

eReadOnlyApiKey 

Provided api key is read_only.

eRevokedApiKey 

Provided api key is revoked.

eApiKeyProductNotAllowed 

Provided api key does not allow access to configured product.

eFloatingTimeoutExpired 

Floating license borrowing period or floating timeout expired.

eWatchdogError 

Failed to set license watchdog.

eInvalidConfirmationCode 

Air gap confirmation code is invalid.

eRequestDateHeaderInvalid 

Request DateTime header is invalid, please set correct date time on target device,.

eInvalidLicenseFeatureCode 

Feature code not found on license.

eFeatureNotFloating 

License feature that should be released is not a floating feature.

eFloatingFeatureDeviceNotInUse 

Device was never used to check out a floating feature.

Definition at line 47 of file PODTypes.h.

Type of Device ID algorithm used by the SDK.

Enumerator
Default 

Default device ID calculation algorithm.

Gen2 

Generation 2 of device ID algorithm for Windows.

Safer and shorter than default. Can be useful for air gap licenses.

CloudPlatformsId 

Cloud platforms instance ID algorithm.

Get instance ID for cloud platforms, supported: Azure, AWS, GCP.

AutoId 

Device ID algorithm with auto-detection of the platform.

Same as CloudPlatformsId on Azure, AWS, or GCP, otherwise same as Default.

WinCSProductId 

Alternative device ID algorithm for Windows.

Get UUID of the Windows machine using Computer System Product Id through WMI, on other platforms same as default.

WinCryptographyId 

Alternative device ID algorithm for Windows.

Get Microsoft Cryptography MachineGuid from Windows registry, on other platforms same as default.

AutoIdGen2 

Device ID algorithm with auto-detection of the platform.

Same as CloudPlatformsId on Azure, AWS, or GCP, otherwise same as Gen2.

AutoIdWinCloud 

Device ID algorithm with auto-detection of the platform, meant for Windows cloud instances.

Same as CloudPlatformsId on Azure, AWS, or GCP, otherwise same as WinCSProductID

Definition at line 103 of file PODTypes.h.