Using License Files
The license file controls:
The following is an example of an IDL license file. This example is built for the license server "hal," which has the LMHostid "0000c09a23f0" and the designated port number "1700." This license has five floating licenses. The last line in the license file is the FEATURESET line, which ties all the FEATURE and INCREMENT lines together:
SERVER hal 0000c09a23f0 1700
USE_SERVER
DAEMON idl_lmgrd
INCREMENT idl idl_lmgrd x.x00 1-jan-0000 30 5BC6A081FA3009FA5673 \
VENDOR_STRING="1234-1Acme Datawack Corp" ck=16
FEATURESET idl_lmgrd 96C31B1FB71BCAE9
The FEATURE or INCREMENT lines of the license file determine which products are available. The x.x refers to the IDL version. The SERVER lines define which machines the products run on. The number of copies of the product that can run concurrently is controlled by the number of license units available, as specified by either the FEATURE or INCREMENT lines.
The FEATURE or INCREMENT line for the floating license shows 30 license units. This is not an error. Each idl or idl_rt counted license requires 6 license units (10 for Solaris Sparc) on the FEATURE or INCREMENT line. The number of license units is a platform-dependent scale factor times the number of licenses you own. For example, if you have 3 Windows floating licenses, this field is set to 18.
Viewing License Files
To access the text of your license file through the License Wizard, open the License Wizard. See Using the License Wizard for details. You must be logged in as root or have write permissions on the licensing directory to modify the license file.
Modifying License Files
You can modify only the following four data items in the license file:
On Windows, you normally should not include a path on the DAEMON line of your server-based license file. However, if your License Manager daemon (lmgrd.exe) file and your vendor daemon file (idl_lmgrd.exe) are moved to separate directories, then you will need to edit the DAEMON line of your license file to reflect the actual location of your vendor daemon or vendor daemon directory. For example:
Windows:
UNIX:
Macintosh:
DAEMON idl_lmgrd /otherdir/itt/idlxx/binNote
Changing license file lines other than those discussed above will invalidate your license file, causing your installation to run only in demonstration mode (IDL only). Individually altering any FEATURE or INCREMENT lines destroys the file.
If you have multiple vendors using FLEXnet license management software, see Using the Same License Manager for Different Applications for more detailed information on customizing your license file.
Changes to a modified license file will not take effect until the License Manager is restarted using that license file.
License Sources
FLEXnet stores the latest successful IDL or ENVI license information on UNIX and Mac OS X in a FLEXnet resource file called .flexlmrc in the user's home directory. This file defines a variable named IDL_LMGRD_LICENSE_FILE to indicate the license source. For example, the definition in the file might read as follows:
IDL continues to use this information until the IDL_LMGRD_LICENSE_FILE value is redefined, the .flexlmrc file is removed, or a system environment variable called IDL_LMGRD_LICENSE_FILE is defined in the shell environment used to start IDL.
Note that even if a system environment variable named IDL_LMGRD_LICENSE_FILE is defined, the IDL_LMGRD_LICENSE_FILE setting in the .flexlmrc file will continue to be referenced, but as a secondary license source if the IDL_LMGRD_LICENSE_FILE system environment variable does not supply a viable license source for the IDL session.
A license source defined by IDL_LMGRD_LICENSE_FILE in your .flexlmrc file or as a system variable will always hold precedence over any LM_LICENSE_FILE environment variable's definition. Only if IDL cannot successfully access a license source defined by IDL_LMGRD_LICENSE_FILE will it attempt to access a license defined by LM_LICENSE_FILE. Here is the order of license source precedence:
- The IDL_LMGRD_LICENSE_FILE environment variable (ITT Visual Information Solutions product-specific)
- The IDL_LMGRD_LICENSE_FILE definition in
.flexlmrc(ITT Visual Information Solutions product-specific) - The LM_LICENSE_FILE environment variable (seen by all products using FLEXnet)
- The
license.datfile in the default location (ITT_DIR\license\license.dat) - The evaluation license (
ITT_DIR\license\*.lic)
To override the .flexlmrc license source definition, define an IDL_LMGRD_LICENSE_FILE system environment variable that points to the desired license file. For example, for a C shell:
For a Korn or Bash shell:
Customizing Floating Licenses
You can customize license management by creating a License Manager options file. This file allows you to:
To customize the License Manager, create an options file in a text editor as described in the following section. See Sample Options Files: Reserving Licenses for a Group for examples.
Creating an Options File
Use a text editor to create an options file. For IDL and ENVI, the options file must be named idl_lmgrd.opt and must be saved in the same directory as license.dat. The default location in which to save the options file is the ITT_DIR/license directory.
Note
Whenever you modify the options file, you must stop and restart the License Manager before the changes will take effect.
Use the following conventions when creating an options file:
- Specify each option on a separate line.
- Each line must begin with one of the keywords specified in the following table.
- Limit the length of each line to fewer than 2048 characters. You can use the backslash (\) as a line continuation character if you need more than 2048 characters.
- All elements of the options file are case sensitive so users and groups must be correctly and consistently identified.
- Lines beginning with the pound sign (#) are ignored and can be used as comments.
Options File Keywords
The following table describes the keywords available for creating an options file:
Sample Options Files: Reserving Licenses for a Group
The following example shows how to define and reserve a number of licenses for a group of users, and tells the License Manager not to log denied requests. Each copy of IDL or ENVI requires 6 license units on a UNIX workstation-class machine. Comment lines begin with #.
# reserve 5 IDL licenses for the research group RESERVE 30 idl GROUP research # define the users in the research group GROUP research josh hal bob kate beth # exclude anyone on a computer with the name main EXCLUDE idl HOST main # do not log license denials NOLOG DENIED
Or,
# reserve 5 ENVI licenses for the research group RESERVE 5 envi GROUP research # define the users in the research group GROUP research josh hal bob kate beth # exclude anyone on a computer with the name main EXCLUDE envi HOST main # do not log license denials NOLOG DENIED
When using INCLUDE or EXCLUDE, anyone not specifically mentioned on a list is implicitly excluded or included. For example, in the above file, everyone who is not working on a computer named "main" would be allowed to access IDL or ENVI. An EXCLUDE statement takes precedence over an INCLUDE statement. If the user "josh" were working on a computer named "main," he will not be able to access IDL or ENVI even though there is a license reserved for him.
Sample Options Files: Reserving Licenses for Individuals
The following options file reserves licenses for individuals from the "research" group defined above. If you have a group of 10 people, you can specify that a license or licenses will always be available to certain users within that group by using the RESERVE keyword in an options file. The NOLOG line pertains to the IDL QUEUE command, which allows a user to wait for an IDL license instead of entering demonstration mode when a counted license is unavailable. It tells the log file not to record any queue events.
# reserve one license for "kate" RESERVE 10 idl USER kate # reserve one license for "josh" RESERVE 10 idl USER josh # reserve 3 licenses for "hal" RESERVE 30 idl USER hal # do not log queue events NOLOG QUEUED
Or,
# reserve one license for "kate" RESERVE 1 envi USER kate # reserve one license for "josh" RESERVE 1 envi USER josh # reserve 3 licenses for "hal" RESERVE 3 envi USER hal # do not log queue events NOLOG QUEUED