Table of ContentsPreviousNextIndex


The Options File

Chapter 5


The options file allows the license administrator to control various operating parameters of FLEXnet Licensing. Users are identified by their user name, host name, display, IP address, or PROJECT (which is set with the LM_PROJECT environment variable).

Specifically, the license administrator can:

Options files allow you, as the license administrator, to be as secure or open with licenses as you like.

Lines in the options file are limited to 2048 characters. The "\" character is a continuation character in options file lines.


FLEXnet Licensing Version Notes


Creating an Options File

To create an options file:

  1. Use the appropriate options listed in "Options File Syntax" to create the options file using any text editor.
  2. Locate the options file anywhere; however, it is recommended that the options file be placed in the same directory as the license file.
  3. Add the path to the options file in the license file as the fourth field on the VENDOR line for the application's vendor daemon. For example:
  4. VENDOR sampled /etc/sampled \
          [options=]/sample_app/sampled/licenses/sampled.opt

    enables the sampled vendor daemon to look at the specified options file.

    If the path is omitted, the vendor daemon automatically looks for a file according to the following criteria:

    • the name of the file is vendor.opt, where vendor is the vendor daemon name
    • it is placed it in the same directory as the license used by lmgrd, it is automatically used at server startup

FLEXnet Licensing Version Notes


Options File Syntax

Below is an overview of the options file syntax. See "Options File Examples" for examples and additional information.

Each line of the file controls one option. Table 5-1 lists the option keywords.

Table 5-1: Option Keywords  
Option Keyword
Description
Set the number of BORROW licenses that cannot be borrowed.
Writes debug log information for this vendor daemon to the specified file (v8.0+ vendor daemon).
Deny a user access to a feature.
Deny a user the ability to borrow BORROW licenses.
Deny a user access to all features served by this vendor daemon.
Sets the level of host name matching.
Define a group of users for use with any options.
Sets case sensitivity for user and host lists specified in GROUP and HOST_GROUP keywords.
Define a group of hosts for use with any options (v4.0+).
Allow a user to use a feature.
Allow a user to borrow BORROW licenses.
Allow a user to use all features served by this vendor daemon.
Allow a user to extend the linger time for a feature beyond its checkin.
Limit usage for a particular feature/group-prioritizes usage among users.
Changes the maximum borrow period for the specified feature.
Limit overdraft usage to less than the amount specified in the license.
Turn off logging of certain items in the debug log file.
Specify that a report log file suitable for use by the FLEXnet Manager license usage reporting tool be written.
Reserve licenses for a user or group of users/hosts.
Specify idle timeout for a feature, returning it to the free pool for use by another user.
Set timeout on all features.


FLEXnet Licensing Version Notes


Comments

Include comments in your options file by starting each comment line with a pound sign "#."

Feature Specification

The feature name can be modified with an optional keyword-value pair to fully qualify it. This notation is used for distinguishing a particular group of licenses when there are multiple FEATURE lines for a single feature. The following syntax is used:

feature:keyword=value

For example:

f1:VERSION=2.0

specifies the version 2.0 pool of licenses for feature "f1".


Note A colon (:) is a valid feature name character. If colons are in your feature names, specify a group of licenses with the following alternative syntax using quotation marks and spaces:
           "feature keyword=value" A colon (:) is a valid feature name character. If colons are in your feature names, specify a group of licenses with the following alternative syntax using quotation marks and spaces:
           "feature keyword=value"


The following option keywords are used as feature name modifiers to denote a specific group of licenses:

If the USER_BASED or HOST_BASED keywords appear in a feature line, this feature specification syntax must be used to qualify the feature.

Using a package name in place of a feature name applies the option to all of the components in the package.

Type Specification

The following option keywords restrict who may use licenses or where licenses may be used: EXCLUDE, EXCLUDEALL, EXCLUDE_BORROW, INCLUDE, INCLUDEALL, INCLUDE_BORROW, MAX, and RESERVE. These options take a type argument, which specifies whether the restriction is based on USER, HOST, DISPLAY, INTERNET, or PROJECT:

On Windows (without terminal server), the HOST and DISPLAY names are both set to the Window's system name. For licenses that allow checkouts from a terminal server (TS_OK keyword in the feature line), the USER, HOST, and DISPLAY names can be different from one another.

The types listed above take a single member. For example:

EXCLUDE coolsoft USER joe

To specify a list of users or hosts, first define the list using the GROUP or HOST_GROUP option lines, then use the GROUP or HOST_GROUP type to specify the group name. For example:

GROUP stars joe barbara susan
EXCLUDE coolsoft GROUP stars


FLEXnet Licensing Version Notes


BORROW_LOWWATER

BORROW_LOWWATER feature[:keyword=value] n

Sets the number of licenses for a BORROW feature that cannot be borrowed.

feature
Name of feature being affected.
keyword=value
Feature name modifier to denote a group of licenses. See "Feature Specification" for details.
n
Number of licenses that cannot be borrowed via license borrowing.

For example, if a feature "f1" has a count of 10 and borrowing is enabled in the application and on the FEATURE line:

FEATURE f1 ... 10 ... BORROW SIGN=...

the following line in the options file allows only 7 licenses to be borrowed.

BORROW_LOWWATER f1 3

DEBUGLOG

DEBUGLOG [+]debug_log_path

Specifies a location for the debug log output from the vendor daemon associated with this options file. Preceding the debug_log_path with a + character appends logging entries, otherwise the file is overwritten each time the daemon is started. Note that this affects output from only the vendor daemon associated with this options file. The debug log output of lmgrd and any other vendor daemons in the same license file is not captured in this file.

On Windows, pathnames which include spaces have to be enclosed in double quotes. If lmgrd is started as a service, the default location for the report log file is the c:\winnt\System32 folder unless a fully qualified path is specified.

See Also:

FLEXnet Licensing Version Notes


EXCLUDE

EXCLUDE feature[:keyword=value] type {name | group_name}

Excludes a user or pre-defined group of users, etc., from the list of who is allowed to use the feature. EXCLUDE supersedes INCLUDE; conflicts between the EXCLUDE list and the INCLUDE list are resolved by the EXCLUDE taking precedence.

feature
Name of the feature being affected.
keyword=value
Feature name modifier to denote a group of licenses. See "Feature Specification" for details.
type
One of USER, HOST, DISPLAY, INTERNET, PROJECT, GROUP, or HOST_GROUP. See "Type Specification" for details.
name
Name of an item of type type for which license usage is excluded.
group_name
Name of the group to exclude.

To exclude the user "hank" from the list of users able to use feature "f1":

EXCLUDE f1 USER hank

EXCLUDE_BORROW

EXCLUDE_BORROW feature[:keyword=value] type \
               {name | group_name}

Excludes a user or pre-defined group of users, etc., from the list of who is allowed to borrow licenses for this BORROW feature. EXCLUDE_BORROW supersedes INCLUDE_BORROW; conflicts between the EXCLUDE_BORROW list and the INCLUDE_BORROW list are resolved by the EXCLUDE_BORROW taking precedence.

feature
Name of the feature being affected.
keyword=value
Feature name modifier to denote a group of licenses. See "Feature Specification" for details.
type
One of USER, HOST, DISPLAY, INTERNET, PROJECT, GROUP, or HOST_GROUP. See "Type Specification" for details.
name
Name of an item of type type for which license borrowing is excluded.
group_name
Name of the group to exclude from borrowing.

To exclude the user "fred" from the list of users able to borrow feature "f1" assuming the feature has the BORROW attribute:

EXCLUDE_BORROW f1 USER fred

EXCLUDEALL

EXCLUDEALL type {name | group_name}

Excludes a user or pre-defined group of users, etc., from the list of who is allowed to use all features served by this vendor daemon.

type
One of USER, HOST, DISPLAY, INTERNET, PROJECT, GROUP, or HOST_GROUP. See "Type Specification" for details.
name
Name of an item of type type for which license usage is excluded.
group_name
Name of the group to exclude.

To exclude any user on the machine "chaos" from using all features served by this vendor daemon:

EXCLUDEALL HOST chaos

FQDN_MATCHING

FQDN_MATCHING exact | lenient

Sets the level to which host names used in HOST type-specifiers must match the host name sent by the FLEXenabled application. The application is configured to send either its host name or its fully qualified domain name (FQDN) to the vendor daemon for validation with HOST type-specifiers. Check with your vendor to determine fully qualified domain name support.

exact
The host name in the HOST type specifier must match in content and format to that sent by the application. This is the default setting.
lenient
The host name sent by the application needs match to the extent supplied in the HOST type specifier or by the application, which ever is less restrictive.

Only the last FQDN_MATCHING keyword in the options file has effect; all others are ignored.

Table 5-2 shows the outcome of matching attempts between HOST type-specifiers in the options file and host names sent by the application.

Table 5-2: Host Name Matching Matrix
 
Application configured for FQDN - sends.
myhost.abc.com
Application not configured for FQDN - sends
myhost
Options File
FQDN_MATCHING
exact
HOST
myhost
no
yes
HOST
myhost.abc.com
yes
no
FQDN_MATCHING
lenient
HOST
myhost
yes
yes
HOST
myhost.abc.com
yes
yes

Examples

Consider the following example that demonstrates restrictive host name matching:

INCLUDE f1 HOST myhost.abc.com

FQDN_MATCHING exact

This includes myhost.abc.com on the list of hosts able to use feature "f1." Furthermore, the host name sent by the application must be a fully qualified domain name that matches myhost.abc.com exactly.

In contrast, consider this example, which is less restrictive:

INCLUDE f2 HOST myhost.abc.com

FQDN_MATCHING lenient

This includes myhost.abc.com on the list of hosts able to use feature "f2." Host names sent such as: myhost.abc.com or simply, myhost match; but myhost.xyz.com, yourhost, or yourhost.abc.com do not match.

The example below is even more lenient:

INCLUDE f2 HOST myhost

FQDN_MATCHING lenient

This includes the host name, myhost, on the list of hosts for feature "f3." Since lenient matching is specified, host names such as myhost, myhost.abc.com, and myhost.xyz.com match. Whereas, yourhost or yourhost.abc.com do not match.

See Also

FLEXnet Licensing Version Notes


GROUP

GROUP group_name user_list

Defines a group of users for use in INCLUDE, INCLUDEALL, EXCLUDE, EXCLUDEALL, and RESERVE option lines.

group_name
Name of the group being defined. Group names are case sensitive.
user_list
List of user names in that group. Names are case sensitive. Set the GROUPCASEINSENSITIVE options file keyword to turn on case insensitivity. See "GROUPCASEINSENSITIVE."

To define the group "Hackers" consisting of "bob," "howard," and "james":

GROUP Hackers bob howard james

Multiple GROUP lines for the same group name add all the specified users into the group.


Note USER_GROUP is an alias for GROUP. USER_GROUP is an alias for GROUP.


GROUPCASEINSENSITIVE

GROUPCASEINSENSITIVE OFF|ON

If set to ON, user names and host names specified with the options file GROUP and HOST_GROUP keywords, respectively, are treated as case insensitive.

By default GROUPCASEINSENSITIVE is OFF; user names and host names are treated as case sensitive.

HOST_GROUP

HOST_GROUP group_name host_list

Defines a group of hosts for use in INCLUDE, INCLUDEALL, EXCLUDE, EXCLUDEALL, and RESERVE option lines. Multiple HOST_GROUP lines add all the specified hosts into the group.

group_name
Name of the group being defined. Host group names are case sensitive.
host_list
List of host names in that group. Names are case sensitive. Set the GROUPCASEINSENSITIVE options file keyword to turn on case insensitivity. See "GROUPCASEINSENSITIVE."

To define the host group "Pacific" consisting of "tokyo," "seattle," and "auckland":

HOST_GROUP Pacific tokyo seattle auckland

Anywhere a host name can be used in an options file, an IP-address can be used instead.

INCLUDE

INCLUDE feature[:keyword=value] type {name | group_name}

Includes a user or pre-defined group of users, etc., in the list of who is allowed to use licenses for this feature. Anyone not in an INCLUDE statement is not allowed to use that feature. EXCLUDE supersedes INCLUDE; conflicts between the EXCLUDE list and the INCLUDE list are resolved by the EXCLUDE taking precedence.

feature
Name of the feature being affected.
keyword=value
Feature name modifier to denote a group of licenses. See "Feature Specification" for details.
type
One of USER, HOST, DISPLAY, INTERNET, PROJECT, GROUP, or HOST_GROUP. See "Type Specification" for details.
name
Name of an item of type type for which license usage is included.
group_name
Name of the group for which license usage is included.

To include user "bob" in the list of users able to use feature "f1":

INCLUDE f1 USER bob


Note INCLUDE is required for USER_BASED or HOST_BASED features. The system administrator specifies which users are allowed to use the product, via INCLUDE, and the license limits the number of users that are INCLUDEd. INCLUDE is required for USER_BASED or HOST_BASED features. The system administrator specifies which users are allowed to use the product, via INCLUDE, and the license limits the number of users that are INCLUDEd.


INCLUDE_BORROW

INCLUDE_BORROW feature[:keyword=value] type {name | group_name}

Includes a user or pre-defined group of users, etc., in the list of who is allowed to borrow the BORROW feature. Anyone not in an INCLUDE_BORROW statement is not allowed to borrow licenses. EXCLUDE_BORROW supersedes INCLUDE_BORROW; conflicts between the EXCLUDE_BORROW list and the INCLUDE_BORROW list are resolved by the EXCLUDE_BORROW taking precedence.

feature
Name of the feature being affected.
keyword=value
Feature name modifier to denote a group of licenses. See "Feature Specification" for details.
type
One of USER, HOST, DISPLAY, INTERNET, PROJECT, GROUP, or HOST_GROUP. See "Type Specification" for details.
name
Name of an item of type type for which license borrowing is included.
group_name
Name of the group for which license borrowing is included.

To include user "tom" in the list of users able to borrow feature "f1":

INCLUDE_BORROW f1 USER tom

INCLUDEALL

INCLUDEALL type {name | group_name}

Includes a user or pre-defined group of users, etc. in the list of who is allowed to use all features served by this vendor daemon. Anyone not in an INCLUDEALL statement is not allowed to use these features.

type
One of USER, HOST, DISPLAY, INTERNET, PROJECT, GROUP, or HOST_GROUP. See "Type Specification" for details.
name
Name of an item of type type for which license usage is included.
group_name
Name of the group to include.

To allow the user "jane" to use all features served by this vendor daemon:

INCLUDEALL USER jane

LINGER

LINGER feature[:keyword=value] seconds

A lingering license stays checked out for a specified period of time beyond its checkin or FLEXenabled application exit, whichever comes first. This option extends the default linger time configured by the vendor in the FLEXenabled application.


Note The vendor must have enabled this feature in the FLEXenabled application for it to work. Contact your software vendor to find out if this feature is implemented. The vendor must have enabled this feature in the FLEXenabled application for it to work. Contact your software vendor to find out if this feature is implemented.


feature
Name of the feature.
keyword=value
Feature name modifier to denote a group of licenses. See "Feature Specification" for details.
seconds
Number of seconds the license lingers. The vendor sets a minimum value. If you specify a value for seconds that is smaller than the vendor's minimum, the minimum is used.

To set the linger value for feature "f1" to one hour (3600 seconds):

LINGER f1 3600

The actual linger time varies somewhat since the vendor daemon checks all lingering licenses just once per minute. If, however, a new license request is made that would otherwise be denied, a check of the lingering licenses is made immediately to attempt to satisfy the new request.

MAX

MAX num_lic feature[:keyword=value] type {name | group_name}

Limits usage for a group or user.

num_lic
Usage limit for this user or group.
feature
Feature this limit applies to.
keyword=value
Feature name modifier to denote a group of licenses. See "Feature Specification" for details.
type
One of USER, HOST, DISPLAY, INTERNET, PROJECT, GROUP, or HOST_GROUP. See "Type Specification" for details.
name
Name of an item of type type for which usage is limited.
group_name
Name of the group to limit.

For example, to limit the user jan to 5 licenses for feature "f1," include the following line in the option file:

MAX 5 f1 USER jan

MAX_BORROW_HOURS

MAX_BORROW_HOURS feature[:keyword=value] num_hours

Changes the maximum period a license can be borrowed from that specified in the license certificate for feature. The new period must be less than that in the license certificate. If multiple MAX_BORROW_HOURS keywords appear in the options file, only the last one is applied to feature.

feature
Feature this borrow period applies to. The license certificate for feature must have BORROW enabled.
keyword=value
Feature name modifier to denote a group of licenses. See "Feature Specification" for details.
num_hours
Number of hours in the new borrow period. This value must be less than that specified in the license certificate for feature (the default, if not specified, is 168 hours).

MAX_OVERDRAFT

MAX_OVERDRAFT feature[:keyword=value] num_lic

Limits OVERDRAFT license usage below the OVERDRAFT allowed by the license file.

feature
Feature this limit applies to.
keyword=value
Feature name modifier to denote a group of licenses. See "Feature Specification" for details.
num_lic
Usage limit for this user or group.

NOLOG

NOLOG { IN | OUT | DENIED | QUEUED }

Suppresses logging the selected type of event in the debug log file.

To turn off logging of checkins:

NOLOG IN

To turn off logging of checkouts and queued requests two separate NOLOG lines are required:

NOLOG DENIED
NOLOG QUEUED


Note License administrators use this option to reduce the size of the debug log file. However, it can reduce the usefulness of the debug log in debugging license server system problems. License administrators use this option to reduce the size of the debug log file. However, it can reduce the usefulness of the debug log in debugging license server system problems.


See also "lmswitch."

REPORTLOG

REPORTLOG [+]report_log_path

REPORTLOG specifies the report log file for this vendor daemon. It is recommended preceding the report_log_path with a + character to append logging entries, otherwise the file is overwritten each time the daemon is started.

On Windows, pathnames which include spaces have to be enclosed in double quotes. If lmgrd is started as a service, the default location for the report log file is the c:\winnt\System32 folder unless a fully qualified path is specified.


Note FLEXnet Manager, a separate product available from Macrovision, is used to process FLEXnet Licensing report log files. FLEXnet Manager processes only report log files, not debug log files. FLEXnet Manager, a separate product available from Macrovision, is used to process FLEXnet Licensing report log files. FLEXnet Manager processes only report log files, not debug log files.


Reporting on Projects with LM_PROJECT

The FLEXnet Manager report writer reports on "projects." A project is set up by having all users working on the same project set their LM_PROJECT environment variable (or registry on Windows) to a string that describes the project. FLEXnet Manager groups usage by project, as defined by what LM_PROJECT was set to when the application was run.

See Also

RESERVE

RESERVE num_lic feature[:keyword=value] type {name | group_name}

Reserves licenses for a specific user.

num_lic
Number of license to reserve for this user or group.
feature
Feature or package this reservation applies to.
keyword=value
Feature name modifier to denote a group of licenses. See "Feature Specification" for details.
type
One of USER, HOST, DISPLAY, INTERNET, PROJECT, GROUP, or HOST_GROUP. See "Type Specification" for details.
name
Name of an item of type type for which license usage is reserved.
group_name
Name of group for which license usage is reserved.

To reserve one license of feature "f1" for user "mel":

RESERVE 1 f1 USER mel

If you want to reserve a license for each of several users or groups, you must use a separate RESERVE line for each user or group. If a package name is specified, all components that comprise the package are reserved.


Note Any licenses reserved for a user are dedicated to that user. Even when that user is not actively using the license it is unavailable to other users. However, a RESERVEd license does not cause usage to be reported by FLEXnet Manager if the license is not actually in use. Any licenses reserved for a user are dedicated to that user. Even when that user is not actively using the license it is unavailable to other users. However, a RESERVEd license does not cause usage to be reported by FLEXnet Manager if the license is not actually in use.


TIMEOUT

TIMEOUT feature[:keyword=value] seconds

Sets the time after which an inactive license is freed and reclaimed by the vendor daemon.


Note The vendor must have enabled this feature in the FLEXenabled application for it to work. Contact your software vendor to find out if this feature is implemented. The vendor must have enabled this feature in the FLEXenabled application for it to work. Contact your software vendor to find out if this feature is implemented.


feature
Name of the feature.
keyword=value
Feature name modifier to denote a group of licenses. See "Feature Specification" for details.
seconds
Number of seconds after which inactive license is reclaimed. The vendor sets a minimum value.If you specify a value for seconds that is smaller than the vendor's minimum, the minimum is used.

To set the timeout for feature "f1" to one hour (3600 seconds):

TIMEOUT f1 3600

TIMEOUT checks in the licenses if the FLEXenabled application has been inactive for a period longer than the specified time period. The daemon declares a process inactive when it has not received heartbeats from it; whereas, an active FLEXenabled application sends heartbeats.

A TIMEOUT line must be present in the options file in order to take advantage of the vendor-enabled timeout feature.

TIMEOUTALL

TIMEOUTALL seconds

Same as TIMEOUT, but applies to all features.

How the Vendor Daemon Uses the Options File

When the vendor daemon is started by lmgrd, the vendor daemon reads its options file. There is only one options file per vendor daemon and each vendor daemon needs its own options file. For any changes in an options file to take effect, the vendor daemon must read its options file. The lmreread utility causes the vendor daemon to reread its options file.


FLEXnet Licensing Version Notes


Rules of Precedence in Options Files

Rules of precedence take effect when INCLUDE and EXCLUDE statements are combined in the same options file and control access to the same features. The following define the precedence when both types of statements appear together:

Once you create an INCLUDE or EXCLUDE list, everyone else is implicitly outside the group. This feature allows you, as an administrator, the ability to control licenses without having to explicitly list each user that you wish to allow or deny access to. In other words, there are two approaches; you either:

Options File Examples

The following information gives some examples of options files intended to illustrate ways to effectively control access to your licenses.

Simple Options File Example

RESERVE 1 compile USER robert
RESERVE 3 compile HOST mainline
EXCLUDE compile USER lori
NOLOG QUEUED

This options file:

The sum total of the licenses reserved must be less than or equal to the number of licenses specified in the FEATURE line. In the example above, there must be a minimum of four licenses on the "compile" FEATURE line. If fewer licenses are available, only the first set of reservations (up to the license limit) is used.

If this data were in file /a/b/sampled/licenses/sampled.opt, then modify the license file VENDOR line as follows:

VENDOR sampled /etc/sampled /sample_app/sampled/licenses/sampled.opt

Limiting Access for Multiple Users

Each INCLUDE, INCLUDEALL, INCLUDE_BORROW, EXCLUDE, EXCLUDEALL, EXCLUDE_BORROW, MAX, and RESERVE line must have a single user name (or group) listed. To affect more than one user name create a GROUP. For example to exclude "bob," "howard," and "james" from using the feature called "toothbrush," create the following options file:

EXCLUDE toothbrush USER bob
EXCLUDE toothbrush USER howard
EXCLUDE toothbrush USER james

However, there is an easier way. Create a GROUP and exclude the list of users from using the feature. Like the previous example, the following options file excludes "bob," "howard," and "james" from using the feature called "toothbrush":

# First define the group "Hackers"
GROUP Hackers bob howard james
# Then exclude the group
EXCLUDE toothbrush GROUP Hackers

Now when you want to allow or deny access to any feature to that group, you have an alias list to make it simple.

Use HOST_GROUP to allow, deny, or reserve licenses for multiple hosts. For example, to exclude all users logged in on the hosts "fred" and "barney" from using a feature called "f1," add these lines to your options file:

HOST_GROUP writers fred barney
EXCLUDE f1 HOST_GROUP writers

See Also

EXCLUDE Example

#First Define the group "painters"
GROUP painters picasso mondrian klee
EXCLUDE spell GROUP painters
EXCLUDE spell USER bob
EXCLUDE spell INTERNET 123.123.123.*

This options file:

Note that "bob" could have been added to the group "painters." However, "painters" might be used for some other purpose in the future so the license administrator chose to handle "bob" as a special case here. In this case, the two EXCLUDE statements concatenate to create a list of four users.

INCLUDE Example

INCLUDE paint USER picasso
INCLUDE paint USER mondrian
INCLUDE paint HOST bigbrush

This options file:


 

Table of ContentsPreviousNextIndex
FLEXnet Licensing End User Guide
Version 10.8
July 2005
copyright