6.2.2.6 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

license_spec1:license_spec2:license_spec3: .... :license_specN (UNIX)

license_spec1;license_spec2;license_spec3; .... ;license_specN (Windows)

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 that the separator character is ':' for Unix systems and ';' for Windows systems.

Also note that the license file cannot be placed in a path where any component of the pathname contains the '@' character.

Examples:

% setenv 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.

% 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”.