VLScleanNetworkPersistenceInfo

Description

The API function can be used for cleaning or repairing persistence information in the following network licensing scenarios.

The cleaning operation removes the persistence information, whereas the repairing operation fixes the corrupted data.

Network Persistence Type   License Manager Versions
9.7.0 (and later) 8.5.3 (and later) 8.5.0 - 8.5.2 8.4.x 8.2.x 8.1.x 8.0.x
Trial Repairing Repairing Repairing Repairing Repairing Repairing Cleaning
Commuter Cleaning and repairing Cleaning and repairing Cleaning and repairing Repairing Cleaning Cleaning Cleaning
Time-tamper Cleaning Cleaning Cleaning Cleaning Cleaning Cleaning Cleaning
Revocation (applies to Method 3)1 Cleaning Cleaning Cleaning Cleaning Cleaning Cleaning Cleaning
Volume Transaction
Repairing Repairin g Repairing Repairing Repairing NA NA
Revocation (applies to Method 2)2 Repairing Repairing NA NA NA NA NA
Usage Data Repairing NA NA NA NA NA NA

1 Method 3: Feature- based network revocation. For details about revocation methods, refer to the topic "Timeline of License Revocation Methods Available in RMS" in the Sentinel RMS Developer Guide.

2 Method 2: License-string-based network revocation. For details about revocation methods, refer to the topic "Timeline of License Revocation Methods Available in RMS" in the Sentinel RMS Developer Guide.

Syntax

LS_STATUS_CODE VLScleanNetworkPersistenceInfo(
int	 	serverVersion,
int	 	persistenceType,
char*		featureName,
char*		featureVersion,
char*		hostName,
char*		unused1,
int	 	operationType);
Argument Direction Data Type Description
serverVersion IN int

The License Manager version deployed on the host. It must be passed in the following format (without any space or delimiter):

major version minor version patch version

For example,

>Pass "855" - For the v8.5.5 License Manager

>Pass "823" - For the v8.2.3 License Manager

>Pass "700" - For the v7.0.0 License Manager

In order to maintain backward compatibility, this API shall continue to accept the version as passed in the older convention (till 8.5.1).

NOTE   Thales recommends the use of same cleaning library and License Manager versions. Use of different versions can result in unexpected behavior.

persistenceType IN int

Specify any of the following persistence types:

>VLS_TRIAL_STORE

>VLS_COMMUTER_STORE

>VLS_REVOKE_STORE

> VLS_VTL_STORE

>VLS_NETWORK_REVOCATION_STORE

> VLS_TIME_TAMPER_STORE

>VLS_USAGE_LOG_STORE

>VLS_ROLLOVER_COUNT_STORE

>VLS_USAGE_LOG_COMMON_STORE

>VLS_USAGE_GUID_STORE

featureName IN char*

The feature name of the license. Should not be of zero length and must not exceed 24 characters.

featureVersion IN char*

The version of the license. Must not exceed 11 characters.

The feature name and version parameters are optional for in the following cases:

>Repairing trial license persistence (version 8.2.x or higher)

>Repairing Volume transaction license persistence (version 8.2.x or higher)

>Repairing Time tamper persistence (version 7.0.x or higher)

The feature name and version parameters must be passed as NULL for VLS_NETWORK_REVOCATION_STORE. Else, the API will return VLScl_INVALID_ARGUMENTS error.

>Usage log persistence (version 9.7 or higher)

hostName IN char*

Used only in the case of commuter persistence repair/cleaning.

The hostname of the system whose commuter check out information is to be cleaned from the License Manager persistence. The value cannot exceed 64 characters.

Use NULL value in feature name, feature version and host name to clean the information of all clients.

unused1 IN char* Unused.
operationType IN int

Applicable only from 8.5.x cleaning library. Set to any of the following:     

> VLS_LPR_COMMUTER_CLEAN - For cleaning up commuter data.

>VLS_LPR_COMMUTER_REPAIR - For recovering commuter data.

For details, see Scenario - Commuter Persistence Cleaning on the License Manager.

Call this API function with proper arguments to clean a particular persistence. No preprocessing (initialization) or post-processing (cleanup) is required.

Specific Scenario for Commuter Persistence Cleaning

Commuter Persistence Cleaning on v8.4.0 (and later) License Managers Using Cleaning Library v8.5.0 (and later)

Cleaning up of commuter persistence data on the License Manager might be required when tokens are checked out for the maximum duration and the client computer crashed before returning the commuted tokens. To restore the checked out tokens on the License Manager, call the VLScleanNetworkPersistenceInfo API with the following parameters:

>Specify the License Manager actual version number (not lower than 840) in the 1st parameter.

>Specify the host name parameter (5th parameter) as the actual host name of the client as shown by 'hostname' command (case sensitive).

>Specify the operationType parameter of int type (7th parameter) as any of the following:

VLS_LPR_COMMUTER_CLEAN for cleaning up commuter data.

VLS_LPR_COMMUTER_REPAIR for recovering commuter data.

Under this scenario, the API may return the following errors:

>VLScl_NO_COMMUTER_INFO_FOUND - No commuter persistence information is found for the given feature-version. Probably, no commuter tokens are checked out for this feature-version, or when there are commuter check outs for other feature-version(s).

>VLScl_NO_COMMUTER_FEATURE_IN_USE – The commuter information available for the feature-version is for a different client.

>VLScl_INVALID_ARGUMENTS – This error may occur when following values are passed for cleaning commuter persistence

NULL as the feature name, version, or host name.

When the feature name passed is greater than 24 characters.

When the feature version passed is greater than 11 characters.

     When the host name passed is greater than 64 characters.

84 (or later) as the License Manager version and the operationType value is other than VLS_LPR_COMMUTER_CLEAN and VLS_LPR_COMMUTER_REPAIR.

The serverVersion passed is less than 840 for operationType VLS_LPR_COMMUTER_CLEAN.

All parameters passed are correct, but the cleaning library is of version less than 8.5.0.

Returns

The status code VLScl_SUCCESS is returned, if successful. Otherwise, any of the error codes listed here will be returned.