# Format XML Tags

When using the GetInfo and GetSessionInfo methods, you use XML tags in the Format field to specify the data that should be retrieved by the method.

These Format XML tags are also used by the method to label the retrieved information.

The Format XML tags that you specify (and their arrangement) in the Format field determine both which information is retrieved by the method and the manner in which the retrieved information is presented. For example, if you request a list of all the protection keys and all of the Features in the licenses in the scope, the tags can be arranged to return either of the following:

>separate lists of all the Features and all the protection keys in the scope.

>a list of all the Features in each protection key in the scope.

The topics that follow describe the XML elements that are available for this purpose.

> For GetSessionInfo, the information returned relates to the current session.

> For GetInfo, the information returned relates to the source specified by the scope used to call the method.

You can also choose from predefined templates and aliases to retrieve certain sets of information.

Refer to Using XML Tags to Define Format for additional information about creating Format templates using XML tags.

The following types of XML tags are described below:

>Common XML tags

>Predefined Format templates and Aliases

## Common XML Tags

The tables that follow describes the XML tags that are common to most types of information that are returned by the methods.

License Manager Information (Parent Tag = <license_manager>)

Child Tag | Description and Returned Output Values
--- | ---
<hostname> | Name of the computer on which Sentinel License Manager is running.
<ip> | IP address of the computer on which Sentinel License Manager is running.
<version> | Version of Sentinel License Manager. For Sentinel SL keys, the secure storage version.
<osname> | Name of the operating system on the computer on which Sentinel License Manager is running.
<is_embedded_lm> | Which License Manager the application is using. Possible values are: 1: The application is using the Integrated LM or the External LM. 0: The application is using the Admin LM.
<osversion> | Version of the operating system on the computer on which Sentinel License Manager is running.
<name> | Name of the machine on which Sentinel License Manager is running
<architecture> | Operating system architecture on the computer on which Sentinel License Manager is running.
<id> | ID of the Sentinel License Manager.
<uptime> | Length of time Sentinel License Manager has been running since it was started.
<time> | Retrieves the current time of the Sentinel License Manager, in seconds since 1.1.1970.
<host_fingerprint> | Retrieves base-64 encoded information about the hardware on which this instance of Sentinel License Manager resides.

Vendor Information (Parent Tag = <vendor>)

Child Tag | Description and Returned Output Values
--- | ---
<id> | ID of the vendor related to the Batch Code.
<name> | Name of the vendor related to the Batch Code.

Protection Key Information (Parent Tag = <hasp>)

Child Tag | Sub Tag | Description and Returned Output Values
--- | --- | ---
<id> |  | Key ID of the Sentinel protection key.
<type> |  | Type of the Sentinel protection key.
<configuration> |  | Configuration of the Sentinel protection key.
<clone_protected> |  | Whether clone protection is enabled (for SL-AdminMode or SL-UserMode). Values are: >For locked licenses - always true. >For unlocked licenses - always false.
<disabled> |  | Whether the protection key contains a license that has been disabled. Possible values are: >The protection key contains a disabled license: true >The protection key does not contain a disabled license: false A license may be disabled for one of the following reasons: >An SL license is protected with the FQDN clone protection scheme and has been disabled due to a duplicate host name. >Attempted tampering with an HL (Driverless configuration) key or with the protected application was detected. Use Sentinel License Generation API to retrieve a reason code that indicates what activity was attempted.
<detachable> |  | Sentinel SL key supports detachable licenses.
<key_model> |  | Model of the Sentinel protection key.
<recipient> |  | Whether the license is a detached license. Values are: >For a detached license: true >For a non-detached license: false
<production_date> |  | Date, expressed in seconds since 1.1.1970. >For an HL key, this is the date on which the key was produced. For an HL Time key or HL NetTime key, this is also the date on which the battery usage started. >For an SL AdminMode or SL UserMode key, this is the date on which the key was deployed on the machine. An empty string is returned in the following cases: > a Sentinel SL Legacy key > a Sentinel HL key that is remotely accessed using a Sentinel License Manager with a version older than v.3.10
<hw_version> |  | Hardware version of an HL key. An empty string is returned in the following cases: > a Sentinel SL key > a HASP HL key that is remotely accessed via a Sentinel License Manager with a version older than v.3.10
<version> |  | Firmware version of HASP HL key. In the case of a Sentinel SL key, the secure storage version.
<updatecounter> |  | Status of counter that is used to ensure updates can only be applied once and in the correct order.
<attached> |  | HASP SL key is attached (returns true or false).
<auto_attached> |  | Whether the license is auto-detached. Possible values are: >The license is auto-detached : true >The license is not auto-detached : false
<vclock_enabled> |  | Whether V-Clock is supported by the protection key. Values are: >Sentinel SL key - Always true >HASP HL key - Always false >Sentinel HL (HASP configuration) key - Always false >Sentinel HL (Driverless configuration) key with real-time clock (Time key or NetTime key) - false. After the battery depletes and the key switches to V-Clock, the value changes to true >Sentinel HL (Driverless configuration) key without real-time clock (all other keys) - Always true
<free_clusters> |  | Number of free clusters in the Sentinel HL (Driverless configuration) key. This information is not applicable for HL Basic keys and HL Pro keys.
<cluster_size> |  | Size of each cluster in the key. The available free space in the key is equal to: free_clusters * cluster_size This indicates the amount of free space that is available for dynamic memory files.
<drive_info> |  | The size and drive letter of the microSD card or flash drive in a Sentinel HL Drive key or HASP HL Drive key. The information is distributed among the tags that follow in this table. For the flash drive in a Sentinel HL Drive key or HASP HL Drive key: ><drive_info> is only supported on Windows machines. >If two or more HL Drive keys are connected to a virtual machine or are connected to a machine with USB-over-network software, <drive_info> is empty. For the microSD card in in a Sentinel HL Drive key: >For a Driverless configuration key: <drive_info> is supported on Windows, Mac, and Linux machines. >For a HASP configuration key: <drive_info> is only supported on Windows machines. >The limitation that is described above for two or more HL Drive keys does not exist for microSD cards in Sentinel HL Drive keys.
<parentid> |  | Key ID of the parent key for a detached license.
<drive_info> | <size> | Size (in bytes) of the SD card or flash drive.
<drive_info> | <mount_point> | Mount point of the volume on the disk.
<drive_info> | <device> | Path of the device. For example: \\.\PhysicalDrive0
<isv_memory> |  | Element that contains information regarding dynamic memory files in the Sentinel SL key or Sentinel HL key.
<isv_memory> | <fileattr> | Type of dynamic memory file. Possible values are: read-only, read/write, read/write-once. NOTE The type read/write-once becomes read-only after the dynamic memory file has been written to successfully on the end user's computer.
<isv_memory> | <fileid> | File ID of the dynamic memory file. Possible values are 1 through 65471.
<isv_memory> | <filesize> | Size of the dynamic memory file.
<cloud_originated> |  | Whether the license is a cloud-originated license. Possible values are: > For a cloud license: true >For a detached license from a cloud license: true >For an auto-detached license from a cloud license: true >For a license not meeting the above criteria: false
<rehost> | <rehost_enduser_managed> | Whether rehosting for the license is enabled. Possible values are: > Rehosting is enabled: true > Rehosting is disabled: false For example: <rehost_enduser_managed>true</rehost_enduser_managed>

Feature Information (Parent Tag = <feature>)

Child Tag | Sub Tag | Description and Returned Output Values
--- | --- | ---
<disabled> |  | Whether the Feature is disabled because the running machine does not satisfy a license requirement. Possible values are: >The Feature is disabled: true >The Feature is not disabled: false Note that a Feature may not be usable even it returns false for the <disabled> tag. To determine if a Feature is usable, check the return value for the <usable> tag.
<id> |  | User-defined unique identifier for a specific Feature stored in a Sentinel protection key. This is the number passed to the Login method to establish access to the Feature.
<name> |  | Retrieves the Feature name, or an empty string if the Features name is unavailable
<custom_info> |  | Descriptive text about the feature embedded in license definition.
<usable> |  | Whether the Feature can be used. A Feature may be not usable if it is disabled, expired, or if the Sentinel License Manager is required but missing.
<license_type> |  | Type of license. The values for this attribute are perpetual, executions, expiration, and trial. Used in conjunction with the <feature><license> tag. Note: trial represents any time period-based license. expiration represents an expiration-based license.
<license_type> | <exp_date> | Expiration date of an expiration-based license (in seconds since 01/01/1970). Used in conjunction with license_type.
<license_type> | <time_start> | Start time for a trial license (in seconds since 01/01/1970). Used in conjunction with license_type.
<license_type> | <total_time> | Total time for which a trial license is valid (in seconds). Used in conjunction with license_type.
<license_type> | <counter_fix> | Total pool of executions. Used in conjunction with license_type.
<license_type> | <counter_var> | Number of used executions. Used in conjunction with license_type.
<locked> |  | Whether the Feature is locked to the Sentinel protection key. A locked Feature will be disabled if the Sentinel SL key is disabled. (Returns true for an HL key.)
<concurrency> |  | Value of concurrency parameter. Two output elements are created by this attribute, export and count).
<concurrency> | <export> | Comma-separated list of flags that describes the concurrency. The available attributes are network, display and local.
<concurrency> | <count> | How concurrency instances are to be counted. The values for this attribute are login, station, and process.
<concurrency> | <seats> | Total number of available concurrency instances.
<license> |  | License settings of the Feature. The number of output elements depend on the type of license. For example, the output elements for a license with an expiration date will include license_type and exp_date, whereas the output elements for a trial license will include license_type, time_start, and total_time.
<vmenabled> |  | Feature can be hosted by a virtual machine.
<expired> |  | Whether the Feature on Sentinel protection key has expired.
<detachable> |  | Whether the Feature can be detached from a Sentinel SL key.

Information for the XML tags in the table that follows can only be retrieved using hasp_get_sessioninfo with <haspformat format="sessioninfo"/>.

Child Tag | Sub Tag | Description and Returned Output Values
--- | --- | ---
<maxlogins> |  | Maximum number of concurrent logins permitted according to license stored in Sentinel protection key.
<currentlogins> |  | Number of current logins to the Feature.

Product Information (Parent Tag = <product>)

Child Tag | Description and Returned Output Values
--- | ---
<id> | ID of the Product.
<name> | Name of the Product.
<detachable> | Whether the license for the Product can be detached from the network pool. The Product license is shown as detachable only if all of the following conditions are true: >The Product contains one or more detachable Features. >One or more seats are currently available for detaching in the Product license on the license server machine. >Detaching is enabled for the Product in the License Manager on the license server machine.
<fingerprint_change> | If a Product is locked to a Sentinel SL key for which cloning is detected, returns cloned. Otherwise, returns accepted.
<clone_protected> | Whether clone protection is enabled for SL licenses. Possible values are true or false.
<revoked> | Whether the Product has been revoked. Possible values are true or false.

Session Information (Parent Tag = <session>)

Child Tag | Description and Returned Output Values
--- | ---
<username> | Name of the user currently logged into the computer that opened the session.
<userid> | Unique ID number of user.
<hostname> | Name of computer from which session was opened.
<hostid> | Unique ID of the computer from which the session was opened.
<apiversion> | Version of the API library used to open the session.
<ip> | IP address of the computer from which the session was opened.

## Predefined Format Templates and Aliases

Predefined Format templates are special Format XML that you can specify in the `format` parameter to simplify the retrieval of commonly-used blocks of information.

Predefine Aliases are special aliases that you can specify in the `format` parameter directly in the call to the GetInfo and GetSessionInfo methods to simplify the retrieval of this information.

For example: To request the information for the connected Sentinel HL key, you could use one of the following:

> Predefined Format XML: keyinfo

<haspformat format="keyinfo"/>

> Predefined alias: Hasp.KeyInfo

Dim info as String = Nothing status = hasp.GetSessionInfo(Hasp.KeyInfo, info

The table that follows describes the predefined Format XML templates and predefined aliases that are available. (Click each Format XML template or Alias for more information.)

Predefined Format XML Templates | Predefined Aliases | Description
--- | --- | ---
updateinfo | Hasp.UpdateInfo | Requests the information required to process updates (C2V). NOTE In Sentinel LDK Toolbox, this Format Template is referred to as “Create C2V”.
keyinfo | Hasp.Keyinfo | Requests information for the connected Sentinel HL key in the current session (only applicable for the GetSessionInfo method).
sessioninfo | Hasp.SessionInfo | Requests information on the current login session (only applicable for the GetSessionInfo method).
host_fingerprint | Hasp.Fingerprint | Requests the fingerprint of a computer that is to receive a locked protection key.
recipientinfo | Hasp.Recipient | Retrieves information about the recipient (destination) computer for the Transfer method. Example XML definition: `<haspformat root="location"> <license_manager> <attribute name="id"/> <attribute name="time"/> <element name="hostname"/> <element name="version"/> <element name="host_fingerprint"/> </license_manager> </haspformat>`

## Related Topics

About XML Tags

Scope Input XML Tags

XML Usage Samples