Sentinel License Authorization Update
This KB article describes the License Authorization Update procedure for use with FRED keys of the Sentinel type.
Updated license authorization files may be issued by Photon Engineering as the result of a license maintenance contract renewal, upgrade, or upon receipt of payment for a new license. In these cases, the license authorization codes are provided by Photon Engineering electronically in a "vendor to customer" file (.v2c file) and can be applied to the corresponding FRED license using the procedures below. The license update only needs to be performed one time by any client PC running FRED or by use of the Sentinel Admin Control Center (ACC).
Updating a Sentinel License from within FRED
Note for Network licenses: The following instructions assume that if the Sentinel license being updated is a network license; (a) the client PC running FRED is on the same network as the server computer hosting the Sentinel key, and (b) the Sentinel Runtime Environment is installed and running on the client PC as well as the network license server.
1. Start a FRED session on the client PC. |
2. If the License Search Strategy dialog is automatically opened upon startup, then the FRED session was unable to acquire a license. If you are updating a single-user dongle:
If you are updating a single-user softkey, network dongle, or network softkey:
Otherwise, go to Help > License Search Strategy and then press the Sentinel Dialog button in order to open the Sentinel License Authorization dialog. |
3. In the License Registration Actions section of the (Sentinel) FRED License Authorization dialog, choose the "Apply update (.v2c .h2h .r2h or .h2r)" option from the drop-list menu. |
4. In the Parameters section, use the "..." button of the "Select Update File" row to browse to the .v2c file supplied by Photon Engineering. |
5. Press the "Do Action" button in the License Registration Actions section. Note that a warning message will be presented indicating that an interruption to the license service will be incurred as a consequence of the license update. |
6. If the license update is successful, then a message will be presented with the following text: "Successful update. You can close and then reopen this License Authorization Dialog to view the updated parameters." It may take up to a minute before the updated license information is available to be displayed in the license authorization dialog. Alternatively, FRED can be closed and re-opened to display the updated license information. If the license update is not successful, an error message will be displayed in the Action Status portion of the (Sentinel) FRED License Authorization dialog. A list of potential licensing error codes is provided in the Sentinel Error Codes section below. Note that the updated license parameters for the key can only be viewed from within the License Authorization Dialog if the updated key is currently connected to FRED. The updated license authorization for the key can also be viewed using the Features option for the key of interest in the ACC. |
Updating a Sentinel license using the Admin Control Center (ACC)
If the Sentinel Runtime Environment component was installed during a FRED installation (or was manually installed at some other time), then the Sentinel Admin Control Center can be used to update a Sentinel license in the following way:
1. Open a web browser and navigate to http://localhost:1947 |
2. Click on the Sentinel Keys link of the Options list on the left hand side of the ACC to display a list of Sentinel keys visible to the client PC. Confirm that the Sentinel license intended to be updated is visible. |
3. Click on the Update/Attach link of the Options list on the left hand side of the ACC. |
4. Press the Choose File button and browse to the .v2c file provided by Photon Engineering. |
5. Press the Apply File button to apply the new license file. If the key is visible, as determined in step 2, then the ACC automatically updates the appropriate key for the supplied .v2c file. |
6. Return to the Sentinel Keys display in the ACC. Press the Features button for the updated key to review the new license information. |
Sentinel Error Codes
The following table itemizes the error codes that may be encountered when using the Sentinel licensing implementation. This information may be useful when debugging a failed license update operation.
Code | Status | Description |
0 | HASP_STATUS_OK | Request was successfully completed |
1 | HASP_MEM_RANGE | Request exceeds the Sentinel protection key memory range |
2 | HASP_INV_PROGNUM_OPT | Legacy HASP HL Run-time API: Unknown/Invalid Feature ID option |
3 | HASP_INSUF_MEM | System is out of memory |
4 | HASP_TMOF | Too many open sessions exist |
5 | HASP_ACCESS_DENIED | Access to Feature was denied |
6 | HASP_INCOMPAT_FEATURE | Legacy decryption function cannot work on Feature |
7 | HASP_HASP_NOT_FOUND | Sentinel protection key is no longer available |
8 | HASP_TOO_SHORT | Encrypted/decrypted data length too short to execute function call |
9 | HASP_INV_HND | Invalid handle was passed to function |
10 | HASP_INV_FILEID | Specified File ID is not recognized by API |
11 | HASP_OLD_DRIVER | Installed driver is too old to execute function |
12 | HASP_NO_TIME | Real-time clock (RTC) not available |
13 | HASP_SYS_ERROR | Generic error from host system call |
14 | HASP_NO_DRIVER | Required driver is not installed |
15 | HASP_INV_FORMAT | File format for update is not recognized |
16 | HASP_REQ_NOT_SUPP | Unable to execute function in this context |
17 | HASP_INV_UPDATE_OBJ | Binary data that was passed to function does not contain an update |
18 | HASP_KEYID_NOT_FOUND | Sentinel protection key was not found |
19 | HASP_INV_UPDATE_DATA | Required XML tags were not found |
OR | ||
Contents in binary data are missing or invalid | ||
20 | HASP_INV_UPDATE_NOTSUPP | Update request is not supported by Sentinel protection key |
21 | HASP_INV_UPDATE_CNTR | Update counter is not set correctly |
22 | HASP_INV_VCODE | Invalid Vendor Code was passed |
23 | HASP_ENC_NOT_SUPP | Sentinel protection key does not support encryption type |
24 | HASP_INV_TIME | The time value that was passed is outside the supported value range |
25 | HASP_NO_BATTERY_POWER | The real-time clock battery has run out of power |
26 | HASP_NO_ACK_SPACE | Acknowledge data that was requested by the update ack_data parameter is NULL |
27 | HASP_TS_DETECTED | Program is running on a terminal server |
28 | HASP_FEATURE_TYPE_NOT_IMPL | Requested Feature type is not implemented |
29 | HASP_UNKNOWN_ALG | Unknown algorithm used in V2C or V2CP file |
30 | HASP_INV_SIG | Signature verification operation failed |
31 | HASP_FEATURE_NOT_FOUND | Requested Feature not found |
32 | HASP_NO_LOG | Access log not enabled |
33 | HASP_LOCAL_COMM_ERR | Communication error occurred between the API and the local Sentinel License Manager |
34 | HASP_UNKNOWN_VCODE | Vendor Code is not recognized by API |
35 | HASP_INVSPEC | Invalid XML specification exists |
36 | HASP_INV_SCOPE | Invalid XML scope exists |
37 | HASP_TOO_MANY_KEYS | Too many Sentinel protection keys are currently connected |
38 | HASP_TOO_MANY_USERS | Too many users are currently connected |
39 | HASP_BROKEN_SESSION | Session was interrupted. This can occur when certain updates are applied to the license while a session is active. For example:
|
40 | HASP_REMOTE_COMM_ERR | Communication error occurred between local and remote Sentinel License Managers |
41 | HASP_FEATURE_EXPIRED | Feature expired or no executions remain |
42 | HASP_OLD_LM | Sentinel License Manager version too old |
43 | HASP_DEVICE_ERR | For a Sentinel SL key, an input/output error occurred in the secure storage area |
OR | ||
For a Sentinel HL key, a USB communication error occurred | ||
44 | HASP_UPDATE_BLOCKED | Update installation not permitted |
45 | HASP_TIME_ERR | System time has been tampered with |
46 | HASP_SCHAN_ERR | Communication error occurred in the secure channel |
47 | HASP_STORAGE_CORRUPT | Corrupt data exists in secure storage area of Sentinel protection key |
48 | HASP_NO_VLIB | The customized vendor library (haspvlib.vendorID.*) cannot be located |
49 | HASP_INV_VLIB | Unable to load Vendor library |
50 | HASP_SCOPE_RESULTS_EMPTY | Unable to locate any Feature that matches the scope |
51 | HASP_VM_DETECTED | Protected application is running on a virtual machine, but one or more Features are not enabled for virtual machines. |
OR | ||
The user attempted to rehost a protection key from a physical machine to a virtual machine. However, none of the Features contained in the protection key are enabled for virtual machines. | ||
52 | HASP_HARDWARE_MODIFIED | Sentinel SL key incompatible with machine hardware. Sentinel SL key locked to different hardware. |
OR | ||
In the case of a V2C or V2CP file, conflict between Sentinel SL key data and machine hardware data. Sentinel SL key locked to different hardware. | ||
53 | HASP_USER_DENIED | Login denied because of user restrictions |
54 | HASP_UPDATE_TOO_OLD | Trying to install a V2C or V2CP file with an update counter that is out of sequence with update counter in the Sentinel protection key. Values of update counter in file are lower than those in Sentinel protection key. |
55 | HASP_UPDATE_TOO_NEW | Trying to install a V2C or V2CP file with an update counter that is out of sequence with the update counter in the Sentinel protection key. First value in file is more-than-1 greater than value in Sentinel protection key. |
56 | HASP_OLD_VLIB | Vendor library is too old |
57 | HASP_UPLOAD_ERROR | Check in of a file (such as V2C, H2R) using Admin Control Center failed, possibly because of illegal format |
58 | HASP_INV_RECIPIENT | Invalid XML RECIPIENT parameter |
59 | HASP_INV_ACTION | Invalid XML action parameter |
60 | HASP_TOO_MANY_PRODUCTS | The scope specified in the Transfer function does not specify a unique Product |
61 | HASP_INV_PRODUCT | Invalid Product information |
62 | HASP_UNKNOWN_RECIPIENT | Update can only be applied to recipient machine specified in the Detach function, not to this machine |
63 | HASP_INVALID_DURATION | Invalid detached license duration period specified. Duration must be less than or equal to maximum allowed for this license. |
OR | ||
Duration extension is to a date earlier than the expiration date of the current detached license. | ||
64 | HASP_CLONE_DETECTED | Cloned Sentinel SL storage was detected. Feature is unavailable. |
65 | HASP_UPDATE_ALREADY_ADDED | The specified V2C or or V2CP update was already installed in the License Manager service |
66 | HASP_HASP_INACTIVE | Specified Key ID is in Inactive state |
67 | HASP_NO_DETACHABLE_FEATURE | No detachable Feature exists in the specified key from which the detached license is requested |
68 | HASP_TOO_MANY_HOSTS | The specified scope does not specify a unique host |
69 | HASP_REHOST_NOT_ALLOWED | Rehost action is not allowed for the specified Key ID |
70 | HASP_LICENSE_REHOSTED | Original license has been transferred to another machine. Therefore, the license cannot be returned to the source machine. |
71 | HASP_REHOST_ALREADY_APPLIED | Old rehost license cannot be applied. A rehost-counter mismatch occurred |
72 | HASP_CANNOT_READ_FILE | A V2C or V2CP file was not found, or access was denied |
73 | HASP_EXTENSION_NOT_ALLOWED | The license cannot be extended because the number of detached licenses is greater than the number of concurrent licenses allowed |
74 | HASP_DETACH_DISABLED | The user attempted to detach a Product from a network license hosted on a virtual machine. However, none of the Features included in the Product are enabled for virtual machines. |
75 | HASP_REHOST_DISABLED | The user attempted to rehost a protection key from a virtual machine. However, none of the Features contained in the protection key are enabled for virtual machines. |
76 | HASP_DETACHED_LICENSE_FOUND | The user attempted to format an SL-AdminMode key or to migrate an SL-Legacy key to an SL-AdminMode key. However, a Product is currently detached from the key. |
77 | HASP_RECIPIENT_OLD_LM | For a rehost operation: The fingerprint of the target machine was collected using tools (RUS utility or Licensing API) earlier than Sentinel LDK v.7.0. |
78 | HASP_SECURE_STORE_ID_MISMATCH | A secure storage ID mismatch occurred. |
79 | HASP_DUPLICATE_HOSTNAME | The license fingerprint is bound to a specific hostname; however, two or more machines with this hostname were found in the network. As a result, the license cannot be used. |
80 | HASP_MISSING_LM | A protected application tried to log in to a Feature that supports concurrency on a Sentinel HL (Driverless configuration) key. The Sentinel LDK License Manager service is not active on the computer where the key is located. |
81 | HASP_FEATURE_INSUFFICIENT_EXECUTION_COUNT | A protected application tried to consume multiple executions while logging in to a Feature. However, the license does not contain the number of executions that were requested. |
83 | HASP_HASP_DISABLED | A Sentinel HL (Driverless configuration) key was disabled because a user attempted to tamper with the key or with the protected application. |
400 | HASP_NO_API_DYLIB | Unable to locate dynamic library for API |
401 | HASP_INVALID_API_DYLIB | Dynamic library for API is invalid |
500 | HASP_INVALID_OBJECT | Object was incorrectly initialized |
501 | HASP_INVALID_PARAMETER | Scope string is too long (maximum length is 32 KB) |
502 | HASP_ALREADY_LOGGED_IN | Logging in twice to same object |
503 | HASP_ALREADY_LOGGED_OUT | Logging out twice from same object |
525 | HASP_OPERATION_FAILED | Incorrect use of system or platform |
698 | HASP_NOT_IMPL | Requested function was not implemented |
OR | ||
In the case of the API Dispatcher, API DLL is too old | ||
699 | HASP_INT_ERR | Internal error occurred in the API |