RLM Environment Variables

RLM uses a number of environment variables to control licensing behavior. These variables are discussed in this section.

Note: To set an environment variable on Windows systems, bring up the Control Panel, select System, click on the Advanced Tab, select Environment Variables, then select New or Edit in the User Section.


RLMAUTH

RLMAUTH is used to set the username and password for the client application which will be checking out licenses from the ISV Server. Set RLMAUTH=<username>:<password>. This username and password must match a username and password contained in The ISV Options File in order to checkout licenses from the server. Note that this capability requires an RLM v13.0, or higher, client as well as an RLM v13.0, or higher, license server. See Client Authentication for more details.


RLM_COMM_TIMEOUT

RLM_COMM_TIMEOUT sets the application timeout for receipt of messages from the license server. If RLM_COMM_TIMEOUT is set, the read timeout will be set to the value of this environment variable. The default is 5 seconds, which should be sufficient in most, if not all, situations. (The default was 3 seconds prior to RLM v9.3)

Note

RLM_COMM_TIMEOUT is specified in milliseconds, so for a 7 second timeout, set RLM_COMM_TIMEOUT to 7000.

RLM_COMM_TIMEOUT first appeared in RLM v9.3.


RLM_CONNECT_TIMEOUT

RLM_CONNECT_TIMEOUT sets the application timeout for a connection to an individual license server. If RLM_CONNECT_TIMEOUT is set, the connection timeout will be set to the value of this environment variable. The minimum connection timeout is 5 seconds, and the default is 10 seconds. If RLM_CONNECT_TIMEOUT is set to a negative value, the connect timeout will be the absolute value of RLM_CONNECT_TIMEOUT, and if any particular server connection times out, no further attempts will be made to that server again. If RLM_CONNECT_TIMEOUT is set to a positive value, a connection will be attempted to the server even if it timed out on the last attempt. This is the default behavior in RLM.

RLM_CONNECT_TIMEOUT is specified in seconds. Note also that the value you specify is divided by 5 (and truncated), then used 5 times, so the minimum resolution is 5 seconds. For example, if you set RLM_CONNECT_TIMEOUT to 8, the timeout will be 5 seconds. Setting it to 11 will yield a 10-second timeout, etc.


RLM_DEBUG

RLM_DEBUG, if set to a product name, will cause any RLM-licensed application to output product debugging information about the specified product. If RLM_DEBUG is set without a value, the debugging information will be output for all products which can be found.

RLM_DEBUG was introduced in RLM v9.0.


RLM_DIAGNOSTICS

RLM_DIAGNOSTICS, if set to a file name, will cause any RLM-licensed application to output diagnostic information to the specified file. If RLM_DIAGNOSTICS is set without a value, the diagnostic information will be written to the standard output, which may or may not be desirable, depending on the application.

RLM_EXTENDED_ERROR_MESSAGES

If RLM_EXTENDED_ERROR_MESSAGES is set, the internal RLM functions which generate error messages will output more verbose messages (in certain cases) with suggestions for solving the problem.


RLM_LICENSE

The RLM_LICENSE variable specifies the path to one or more license files and/or license servers.

See The License Environment for a complete description of how to use RLM_LICENSE.


RLM_LICENSE_PASSWORD

The RLM_LICENSE_PASSWORD variable specifies a password for access to particular licenses which have the _password attribute.

See The License File for a complete description of how to use RLM_LICENSE_PASSWORD.


ISV_ACT_URL

ISV_ACT_URL (where “ISV” is replaced with the ISV name) is used to override the url that is built into the application, used in rlm_activate() and rlm_act_request() API calls.

This is primarily used for debugging purposes.


ISV_LICENSE

ISV_LICENSE (where “ISV” is replaced with the ISV name) is used exactly like RLM_LICENSE, however if ISV_LICENSE is present, it will be used instead of RLM_LICENSE.


RLM_PATH_RANDOMIZE

Setting RLM_PATH_RANDOMIZE (to any value) causes RLM to randomize the license path before any subsequent processing. This is useful in large installations to provide a rudimentary form of load balancing by causing different users with the same setting of RLM_LICENSE or ISV_LICENSE to use different license servers.

Note that RLM_PATH_RANDOMIZE has no effect on the RLM or ISV servers. RLM_PATH_RANDOMIZE operates by selecting a new starting point in the license list and wrapping around from the last license spec to the first. Otherwise, the order or the license list is preserved.


RLM_PROJECT

RLM_PROJECT communicates project information to the license server. The value of a client’s setting of RLM_PROJECT (up to 32 characters) is logged in the report log file for later use.


RLM_QUEUE

RLM_QUEUE informs an application that it should queue for a license if none are available. If RLM_QUEUE is set, any subsequent application started will queue for its license if none are available.

If RLM_ROAM is set, RLM_QUEUE is ignored (starting in RLM v12.0).


RLM_ROAM

RLM_ROAM controls license roaming operations. If RLM_ROAM is set to a positive integer N, subsequent checkout requests will attempt to create roaming licenses for N days. If RLM_ROAM is set to any negative integer, any subsequent license checkouts will cause a roaming license to be returned to the floating license pool. This last operation must be done when connected to the network such that the original license server can be contacted.

Setting RLM_ROAM disables RLM_QUEUE (starting in RLM v12.0).


RLMSTAT

RLMSTAT, if set, will cause the rlm checkout routine to print status as it attempts the checkout. This is sometimes useful to diagnose license checkout failures. The format of this output is:

RLMSTAT(location): (product_name) license_path: error

where: * location is the letter ‘N’, ‘C’, or ‘U’, meaning:

  • N - attempt to check out a local nodelocked, uncounted (or single) license

  • C - attempt to checkout a license from a license server which is already connected

  • U - attempt to checkout a license from a license server with no prior connection

  • product_name is the product name being checked out

  • license_path is the path of license files or port@host specs

  • error is the error status from the checkout


Obsolete Environment Variables

RLM_DISCONNECTED

RLM_DISCONNECTED informs an application that the system is not connected to the internet. If RLM_DISCONNECTED is set, any subsequent application started will not attempt any internet operations outside the local firewall (unless the license server is specified to be outside the firewall).

RLM_DISCONNECTED was removed in v3.0, as it was no longer used.