EXCLUDE
This option applies to concurrent licenses held in license files and trusted storage.
EXCLUDE feature[:keyword=value] type {name | group_name}
Excludes a user or predefined group of users 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.
Term |
Description |
feature |
Name of the feature or package being affected. |
keyword=value |
Feature name modifier to denote a group of licenses. See Specifying Features for details. For examples of using the modifiers EXPDATE and ENTITLEMENT, see Using the EXPDATE Modifier and Using the ENTITLEMENT Modifier, respectively. |
type |
One of USER, HOST, DISPLAY, INTERNET, PROJECT, GROUP, or HOST_GROUP. See Specifying License Restrictions Using Type for details. |
name |
Name of an item of type type for which license usage is excluded. |
group_name |
Name of the group to exclude. Group names are case sensitive. |
For example, the following option syntax excludes the user hank from the list of users able to use feature f1:
EXCLUDE f1 USER hank
When using EXPDATE as a modifer for INCLUDE or EXCLUDE in the options file, add at least one pooling component keyword in the FEATURE or INCREMENT line.
Consider the following two INCREMENT lines
INCREMENT f1 demo 1.0 31-dec-2017 5 SIGN=”<...>”
INCREMENT f1 demo 1.0 30-nov-2017 5 SIGN=”<...>”
And the following options file line
EXCLUDE f1:EXPDATE=31-dec-2017 GROUP stars
Because both instances of f1 are in the same license pool, the above options file line excludes them both.
In order to exclude just the later expiring license, ensure each increment line is in a separate pool using a pooling keyword, such as VENDOR_STRING, for example:
INCREMENT f1 demo 1.0 31-dec-2017 5 VENDOR_STRING=”31-dec-2017” SIGN=”<...>”
INCREMENT f1 demo 1.0 30-nov-2017 5 VENDOR_STRING=”30-nov-2017” SIGN=”<...>”
With this example, the vendor daemon needs to be built with vendor variables ls_compare_vendor_on_increment = ls_compare_vendor_on_upgrade = 1 in order to turn on pooling with the vendor string. It should also be noted that feature version is a pooling keyword; the vendor string is needed here because these increment lines are for the same feature version.
For a list of pooling keywords, see {Hyperlink}FEATURE and INCREMENT Lines{Default ¹ Font} on page {Hyperlink}1{Default ¹ Font}.
Using the ENTITLEMENT Modifier
The ENTITLEMENT modifier enables the license administrator to differentiate between features that have identical names but belong to different products. In combination with the EXCLUDE option, the license administrator can restrict the concurrent checkout of a feature when the license originates from trusted storage. (For allowing/restricting the checkout of activatable features, use the option INCLUDE_ENTITLEMENT or EXCLUDE_ENTITLEMENT.)
To use the ENTITLEMENT modifier, you must set the variable ls_entitlement_based_pooling in lsvendor.c to 1 (default). This enables pooling based on the entitlement ID. For more information, see the Programming Reference for License File–Based Licensing, chapter Customizing the Vendor Daemon.
Example
Consider the following scenario. Licenses are available for the following features—which have identical names—of two products:
• | Product EZCALC-N: |
• | Entitlement ID: ENTL-ADD-1 |
• | Hybrid licenses: 3 |
• | Feature(s): INCREMENT ADD demo 1.0 permanent 1 SIGN="XXX" INCREMENT SUBTRACT demo 1.0 permanent 1 SIGN="XXX" INCREMENT MULTIPLY demo 1.0 permanent 1 SIGN="XXX" |
• | Product EZCALC-S: |
• | Entitlement ID: ENTL-ADD-2 |
• | Hybrid licenses: 3 |
• | Feature(s): INCREMENT ADD demo 1.0 permanent 1 SIGN="XXX" INCREMENT SUBTRACT demo 1.0 permanent 1 SIGN="XXX" INCREMENT MULTIPLY demo 1.0 permanent 1 SIGN="XXX" |
The license administrator wants to deny user Joanna access to feature ADD from EZCALC-N (entitlement ID ENTL-ADD-1). The administrator therefore adds the following line to the options file:
EXCLUDE ADD:ENTITLEMENT=ENTL-ADD-1 USER Joanna