# HaspStatus Enumeration

Namespace: Aladdin.Hasp

Defines status codes that can be returned by Sentinel Licensing .NET library.

No. | Status Code | Description | End User Action | Developer Action
--- | --- | --- | --- | ---
0 | StatusOk | Request completed successfully. |  |
1 | InvalidAddress | Request exceeds the Sentinel protection key memory file. | Contact the vendor's technical support. | Check the offset or length of the Sentinel key's memory.
2 | InvalidFeature | Invalid program number option. |  |
3 | NotEnoughMemory | The system is out of memory. | Check for the system issue or use larger memory hardware. |
4 | TooManyOpenFeatures | The application has too many open login sessions. |  |
5 | AccessDenied | Access to the Feature, Sentinel protection key, or functionality was denied. | Contact the vendor's technical support. | Check with Thales support.
6 | IncompatibleFeature | The Legacy decryption method is not compatible with this Feature. |  |
7 | ContainerNotFound | The Sentinel protection key was not found. | Insert or install a key. |
8 | BufferTooShort | The encrypted or decrypted data length is too short to execute the method call. | Contact the vendor's technical support. | Increase the data length.
9 | InvalidHandle | Invalid login handle passed to a method. | Contact the vendor's technical support. | Use the valid handle to log in.
10 | InvalidFile | The specified file ID is not recognized by the API. | Contact the vendor's technical support. | Validate the file identifier in the application to prevent operations on a non-existing memory file. Ensure that the correct memory field is passed.
11 | DriverTooOld | The installed driver or daemon is too old. Install a more recent version of the Run-time Environment. | Upgrade to the latest driver (RTE) or version. |
12 | NoTime | The Real-time clock and V-Clock are not available. | Contact the vendor's technical support. | Check for the real-time clock as it is not available.
13 | SystemError | Generic error from host system call. | Contact the vendor's technical support. | Generic error.
14 | DriverNotFound | The hardware key driver was not found. | Install the driver (RTE). |
15 | InvalidFormat | An invalid license update or an invalid format string was passed. | Contact the vendor's technical support. | Check the format parameter to create well-formed XML.
16 | RequestNotSupported | Unable to execute the method in this context; the requested functionality is not supported. | Check if the requested operation is allowed in this context. |
17 | InvalidUpdateObject | The binary data passed to the method does not contain a valid update. | Contact the vendor's technical support. | The system does not generate a valid V2C file. Generate a new V2C file for the customer.
18 | KeyIdNotFound | A Sentinel protection key with the requested key ID was not found. | Contact the vendor's technical support. | Ensure that the base license is present on the end user's machine before applying the V2C update.
19 | InvalidUpdateData | Required XML tags were not found. OR Contents in binary data are missing or invalid. | Contact the vendor's technical support. | Use the correct file, as the data in the V2C file may be incorrect.
20 | UpdateNotSupported | The update request is not supported by the Sentinel protection key. |  |
21 | InvalidUpdateCounter | An update counter mismatch has occurred. | Contact the vendor's technical support. | Check with Thales support.
22 | InvalidVendorCode | An invalid vendor code was passed to the function. | Contact the vendor's technical support. | Use the correct vendor code when calling Sentinel LDK Licensing APIs.
23 | EncryptionNotSupported | The Sentinel protection key does not support the encryption type currently in use. You may have an obsolete key. |  |
24 | InvalidTime | The date or time value passed is outside the supported range. | Contact the vendor's technical support. | Check the time parameter passed in the API. It may be out of range.
25 | NoBatteryPower | The battery for the HL Time key or HL NetTime key is depleted. |  |
26 | UpdateNoAckSpace | Acknowledge the data requested by the update, but the `ack_data` parameter is `NULL`. | Contact the vendor's technical support. | Check the ACK data parameter in the hasp_update API. It should not be null.
27 | TerminalServiceDetected | An application is running on a remote desktop (terminal server). | Ensure that the licensed application is not accessed using remote desktop. |
28 | FeatureNoteImplemented | The requested Feature type is not implemented. |  |
29 | UnknownAlgorithm | An unrecognized algorithm was used in an H2R or V2C file. | Contact the vendor's technical support. | The vendor should use the correct clone protection scheme.
30 | InvalidSignature | Signature verification operation failed. | Contact the vendor's technical support to get a new V2C file. | The vendor generates a new V2C file based on the latest C2V file provided by the end user.
31 | FeatureNotFound | The requested Feature was not found. | Contact the vendor's technical support. | The requested Feature ID is not available.
32 | NoLog | Access log is not enabled. |  |
33 | LocalComErr | A communication error occurred between the API and the local Sentinel License Manager. | Check if the server is running. |
34 | UnknownVcode | The vendor code is not recognized by the API library. |  | Check the vendor code file provided by Thales.
35 | InvalidXmlSpec | An invalid XML login specification was passed to a function. | Contact the vendor's technical support. | Check the login scope parameter.
36 | InvalidXmlScope | The XML scope is not valid. |  | Check the scope parameter.
37 | TooManyKeys | The scope matches too many Sentinel protection keys. |  | Use the correct scope parameter.
38 | TooManyUsers | Too many concurrent user sessions are connected. | Wait for others to finish using the protected application or contact your sales representative to increase the concurrency count. |
39 | BrokenSession | A login session was interrupted due to updates to the license. | Rerun the application after completing the license changes. |
40 | RemoteCommErr | A communication error occurred between the local and remote Sentinel License Managers. | Check the network connectivity and rerun the application. |
41 | FeatureExpired | The Feature has expired. | Contact the vendor's technical support. |
42 | TooOldLM | The existing version of the Sentinel License Manager does not support the API request. | Upgrade the Sentinel License Manager(RTE). |
43 | DeviceError | 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. | Contact the vendor's technical support. | Check with Thales support.
44 | UpdateBlocked | Update installation is not permitted - the update was already applied. | This license is already applied to this machine and cannot be reapplied. |
45 | TimeError | System time has been tampered with. | Contact the vendor's technical support. | Check if the system time tampering is performed on the machine.
46 | SecureChannelError | Communication error occurred in the secure channel. | Contact the vendor's technical support. |
47 | CorruptStorage | The secure storage area of the Sentinel SL protection key is corrupted. | Contact the vendor's technical support. | Check with Thales support.
48 | VendorLibNotFound | The customized vendor library (haspvlib_<vendorID>.*) cannot be located. | Install the RTE. |
49 | InvalidVendorLib | The vendor library cannot be loaded. | Contact the vendor's technical support. | Check with Thales support.
50 | EmptyScopeResults | Unable to locate any Feature that matches the scope. |  | Check the scope parameter.
51 | VMDetected | The license does not allow running the application on a virtual machine. | Contact the vendor's technical support for a license update for a VM enabled license. |
52 | HardwareModified | The Sentinel SL key is locked to a different machine. | Contact the vendor's technical support. |
53 | UserDenied | Login is denied because of user restrictions. | Contact your administrator. |
54 | UpdateTooOld | Attempting to apply a V2C file that has already been applied. | Check if this update is already applied. |
55 | UpdateTooNew | Attempting to apply V2C files for a Sentinel protection key in the incorrect sequence | Ensure you install the V2C file in order. |
56 | VendorLibOld | Your vendor library version is not supported by the current version of the Licensing API. | Upgrade the vlib (RTE). |
57 | UploadError | An attempt to check in a file (such as V2C or H2R) using the Admin Control Center failed due to an invalid format. | Contact the vendor's technical support. |
58 | InvalidRecipient | Invalid XML RECIPIENT parameter. |  | Check the recipient parameter, which applies to both rehost and detach operations.
59 | InvalidDetachAction | Invalid XML ACTION parameter. |  | Check the action parameter.
60 | TooManyProducts | The scope specified in hasp_transfer() does not identify a unique Product. |  | Check the action parameter.
61 | InvalidProduct | Invalid Product information. | Contact the vendor's technical support. | Check if the license is either a trial type or a remote type.
62 | UnknownRecipient | The update can only be applied to the Recipient specified in hasp_transfer() and not to this machine. | Ensure you apply the license to the correct recipient. |
63 | InvalidDuration | The duration is invalid. |  | Check the duration parameter.
64 | CloneDetected | Cloned Sentinel SL secure storage area was detected. | Ensure the license is used on the correct machine. |
65 | UpdateAlreadyAdded | The specified V2C or or V2CP update was already installed in the License Manager service. | Check if latest V2C received is being reapplied. | Ignore it.
66 | HaspInactive | The specified key ID identifies an inactive key. | Contact the vendor's technical support. | Check if any V2C files are missing from the end user's machine.
67 | NoDetachableFeature | No detachable Feature exists. |  | Ensure you deliver the detachable license.
68 | TooManyHosts | The specified scope does not identify a unique host. | Contact the vendor's technical support. | Check the scope parameter to ensure it resolves to a unique host.
69 | RehostNotAllowed | Rehost action is not allowed for the specified key ID. |  | Ensure that the rehostable license is delivered.
70 | LicenseRehosted | The original license has been rehosted to another machine. | The rehost license has already been generated for another machine and cannot be re-applied to the host machine. |
71 | RehostAlreadyApplied | An old rehost license cannot be applied. A rehost-counter mismatch occurred. | The rehost license has already been applied to this machine and cannot be applied again. |
72 | CannotReadFile | A V2C or V2CP file was not found, or access was denied. | Contact the vendor's technical support. | Check with Thales support.
73 | ExtensionNotAllowed | The license cannot be extended because the number of detached licenses is greater than the number of concurrent licenses allowed. | While requesting an extension for a detached license, ensure you provide the same concurrency as in the previous detached license. |
74 | DetachDisabled | Detaching the license is not allowed because the Product contains a VM-disabled Feature, and the host machine is a virtual machine. | Ensure the license is rehosted to a physical machine. |
75 | RehostDisabled | You cannot rehost the license to a virtual machine. | Ensure the license is rehosted to a physical machine. |
76 | DetachedLicenseFound | 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. | Cancel the detach operation on the detached licenses and retry this action. |
77 | RecipientOldLm | The fingerprint of the target machine was collected using tools (RUS utility or Licensing API) earlier than Sentinel LDK v.7.0. | Upgrade the RTE on the target machine to the latest version and regenerate the fingerprint. |
78 | SecureStoreIdMismatch | A secure storage ID mismatch occurred. | Contact the vendor's technical support. |
79 | Duplicatehostname | The license is locked to a specific hostname; however, two or more machines with this hostname were found on the network. | Ensure you remove the machine with the duplicate hostname from the network. |
80 | MissingLM | The Sentinel License Manager is required for this operation. | Install Sentinel LDK License Manager if it is not already installed, and ensure the LM service is up and running. |
81 | FeatureInsufficientExecutionCount | A protected application tried to consume or reserve multiple executions while logging in to a Feature. However, the license does not contain the number of executions that were requested. | Contact the vendor's technical support for an updated license with the required execution count. |
82 | ImcompatiblePlatform | The function is attempting to perform an operation that is not compatible with the target platform. | Contact the vendor's technical support with the vendor when this status code appears. | Check with Thales support.
83 | HaspDisabled | The protection key is disabled due to suspected tampering. | Share the C2V file with the vendor for appropriate action. |
84 | SharingViolation | The protection key is not accessible due to a USB sharing violation. |  |
85 | KilledSession | The session is interrupted due to a network malfunction or is manually interrupted from the Admin Control Center. | Restart the application. |
86 | VsDetected | The license does not allow installing the application on a virtual machine. | Ensure the machine has no virtual storage enabled. Remove the virtual storage to continue using this license. |
87 | IdentityRequired | A client identity is required to run this application. | The end user raises a technical support issue to obtain the identity string required to perform this operation. |
88 | IdentityUnauthenticated | The client identity is not authenticated. | Contact the vendor's technical support. |
89 | IdentityDisabled | The client identity is disabled. | Contact your sales representative, as the client identity is disabled. |
90 | IdentityDenied | The client identity does not have the required permissions. | Contact your sales representative, as the client does not have the required permissions for the operation. |
91 | IdentitySharingViolation | Your license is in use on a different machine. | Wait for the other session to finish and try again, as a session with this identity string already exists. If the error persists, contact your sales representative. |
92 | IdentityTooManyMachines | The maximum number of machines usable by the client identity has been reached. | Contact the vendor's technical support. |
93 | IdentityServerNotReady | (For device-based licenses) The license server is not ready to authenticate. | Contact the vendor's technical support. |
94 | UpdateOutOfSync | Attempting to install a V2C file with an update counter that is out of sync with the update counter in the Sentinel protection key. | Share the current C2V file with the vendor and request an updated V2C file. | Obtain the current C2V file from the customer and generate a new V2C file.
95 | RemoteSharingViolation | There were multiple attempts to access the protection key from a remote machine using a proxy. | Contact the vendor's technical support. |
96 | CloudSessionOccupiedRemotely | A cloud licensing session was released because the client requested the seat from a different location. | Contact the vendor's technical support. |
97 | CloudMissingAuthorization | Cloud licensing authorization is required to use this license. | Contact the vendor's technical support. |
98 | InvalidNetworkSeats | Invalid seat value in network detach. The seat count cannot be decreased when modifying a detach. | While modifying an existing detached license, do not reduce the seats below the already detached seat count. Check the existing detached seat count and update accordingly. |
99 | NetworkDetachDisabled | Network detach of seats with concurrency is disabled on a Product with only unlimited-concurrency Features. | This product includes all features with unlimited concurrency. Network detach is allowed only for features with finite concurrency. Contact your sales representative for an updated product. |
100 | CloudNotSupp | The required functionality is not supported for cloud licenses. | Contact the vendor's technical support. |
101 | CloudNotTrusted | Only trusted licenses can be installed in the trusted license storage. |  | Ensure the cloud enabled licenses are provided for trusted storage.
102 | CloudStorageCommErr | A communication error occurred with the license storage. | Ensure stable internet connectivity to the license server or contact your sales representative. |
103 | IdentityExpired | The client identity has expired. | Contact the vendor's technical support to extend the expiration date for their identity. |
104 | InvOption | The option value specified for the API function is not valid. | Check the option parameter passed in the hasp_update_session API. |
105 | CloudStorageBusy | The license server is overloaded. Retry the operation in a few seconds. | Contact the vendor's technical support or contacts the admin. |
106 | MachineDenied | This machine cannot be used because the fingerprint is invalid or not accessible. | Contact the vendor's technical support or contacts the admin. |
107 | MachineDisabled | The application license is not accessible because this machine is disabled. | Contact the vendor's technical support or contacts the admin. |
108 | IdentityRateLimitExceeded | The rate at which identity requests are received exceeded the contracted limit. Try again later. | Contact the vendor's technical support or contacts the admin. |
109 | FeatureStartDateNotReached | The start date for the Feature has not yet arrived. | Contact the vendor's technical support or contacts the admin. | Notify the user about the feature start date in the application.
110 | TemporarilyNotAvailable | The identity is temporarily not accessible. Try again in a few seconds. | Retry after some time. |
111 | ConflictingAuthenticationMethods | You cannot use both an identity string and a JWT for the same server address. | Contact the vendor's technical support. | Check with Thales support.
112 | AccessTokenIsInvalid | The JWT or LM access token is invalid. Restart the operation. | Contact the vendor's technical support. | Check with Thales support.
113 | AccessTokenExpired | The JWT or LM access token has expired. Restart the operation | Contact the vendor's technical support. | Check with Thales support.
114 | RevokeNotAllowed | The revoke action is not allowed for the specified product. | Contact the vendor's technical support. | Check whether the product has any of the following conditions: >The feature has expired. >The license type is Time Period, and the license has been used. >The license type is Execution Count, and the license has been used. >The license is detached. >The product is cloned. >The SL key is disabled.
400 | NoApiDylib | Unable to locate the dynamic library for this vendor code. |  |
401 | InvApiDylib | The dynamic library for this vendor code cannot be loaded, possibly due to corruption. |  |
402 | IncompleteApiDylib | The dynamic library for this vendor code is too old, and a requested function was not found. |  |
500 | InvalidObject | Object was incorrectly initialized. |  |
501 | InvalidParameter | An invalid function parameter was specified. |  |
502 | AreadyLoggedIn | Attempting to log in twice to the same object. |  |
503 | AlreadyLoggedOut | Attempting to log out twice from the same object. |  |
525 | OperationFailed | Incorrect use of system or platform. |  |
600 | NoExtblock | An internal error occurred: No classic memory extension block is available. |  |
650 | InvPortType | An internal error occurred: Invalid port type. |  |
651 | InvPort | An internal error occurred: Invalid port value. |  |
652 | HaspDotNetDllBroken | The .NET DLL appears to be broken. |  |
698 | NotImplemented | The requested functionality is not supported. |  |
699 | InternalError | An internal error occurred in the API. |  |