6.2.2.9 The License Environment

All software that uses RLM attempts to read a license file or communicate with a license server. The specification of the license file or the license server is done with the license environment.

If the software is ISV-specific (e.g., an application program), the first place that is checked is any license file or port@host specified in the environment variable ISV_LICENSE (if it is defined), where ISV is name of the ISV (e.g., REPRISE_LICENSE).

If ISV_LICENSE is not defined (in the case of ISV software), or for generic software (RLM utilities, the RLM server) the path specified by the environment variable RLM_LICENSE is checked, if RLM_LICENSE is defined.

If neither environment variable is defined, the program’s default location for the license is checked next. In the case of the RLM utilities and the RLM server, this is any file ending in .lic in the current directory. Note that the RLM utilities will substitute the path specification from a -c option in place of the current directory.

Finally, any .lic file in the directory containing the binary will be checked.

The format of the environment variable (RLM_LICENSE or ISV_LICENSE) is:

 license_spec1

or

Listing 1.1. Unix

license_spec1:license_spec2:license_spec3: .... :license_specN

Listing 1.2. Windows

license_spec1;license_spec2;license_spec3; .... ;license_specN

where:

license_spec is a license specification of the form:

  • port@host - or -
  • license_file_pathname - or -
  • directory pathname (containing license files, all of which are added to the list) - or -
  • <actual text of license>
Note: The separator character is ‘:’ for Unix systems and ‘;’ for Windows systems.
Note: The license file cannot be placed in a path where any component of the pathname contains the ‘@’ character.

Example

On Unix/Mac:

% setenv RLM_LICENSE 1700@myhost:/home/reprise/reprise.lic

On Windows:

 C:\ set RLM_LICENSE=1700@myhost:/home/reprise/reprise.lic

In this example, the server at port 1700 on host “myhost” is checked first, then if the request is not satisfied, the license file at /home/reprise/reprise.lic is used. Note that this search order may be modified if the environment variable RLM_PATH_RANDOMIZE is set.

Example 2

% setenv RLM_LICENSE 1700@myhost:<LICENSE isv prod1 1.0 1-jan-09 uncounted
 hostid=any
key="1234...">

This example specifies the license for “prod1” directly in the environment variable, in addition to using the server at port 1700 at host “myhost”.

On Windows, you can also set the environment variable via the control panel using these steps:

  1. Go to Control Panel->System (or Control Panel->System and Security)
  2. Click on “Advanced System Settings”
  3. Click on “Environment Variables”
  4. Enter RLM_LICENSE as the environment variable name and the license file directory as the value
Note: Beginning in RLM v14.2, white space is trimmed from the start and end of the license environment variable value.
Note: Beginning in RLM v15.1, uppercase ISV_LICENSE can be used as well as isv_LICENSE on case-sensitive file systems. In the case that both are defined, the uppercase ISV_LICENSE will be used.