ARM Technical Support Knowledge Articles

Can I reserve floating licenses for specific users?

Applies to: ARM Developer Suite (ADS), RealView Development Suite (RVDS), Tool Licensing (License Management)


As a floating license administrator, you can set aside specific features for named users or named client computers by using an options file.  You can also prevent certain users or computers from being issued with a license of a particular type.  This is particularly useful if you have a license that enables more than one version of the ARM development tools and you want to control what users have access to what versions.

To use an options file, first you must write it, then configure your license server to use it.

Writing your options file

You can create an options file in any text editor.  We recommend that your options file has an .opt extension.  When complete, copy the options file to each of your ARM license servers.

A sample options file is shown here, with some of the key syntax demonstrated.  In this example, it is assumed that the license file contains both RVDS 4.0 and ADS 1.2 seats.  There are two defined project groups with defined users, and a set of build computers.  The administrator wants to limit the number of seats of a given feature on a group basis, and also wants to reserve RVDS 4.0 compiler seats for particular users and clients.  A specific user is not to be granted an RVDS 4.0 compiler license.

In detail, the following permissions and restrictions are required:

  • The build computers in the host_group "buildbox" must always have 2 compiler seats available, of no particular version
  • Users in group "project talisker" (user1 to user5) must not be given more than three fromelf licenses of any version between them.
  • Users in group "project_macallan" must always have one seat of compiler version 4.0 available. 
  • user7 cannot ever obtain a compiler license of version 4.0, despite being in group "project_macallan".

The options file to enable the above would look like this:

# License Options File example by ARM Limited
# -------------------------------------------
# This example should be modified as required for your own licensing
# environment.
# Turn off case sensitivity for group and hostnames
# (Only valid in FLEXnet 10.x.  In FLEXlm 9.x, you need to ensure that
#  case of groups and hostnames is consistent, and comment out the
#  following line.)

# Groups are defined here
# --> use the form:  GROUP group_name user_list
GROUP project_talisker user1 user2 user3 user4 user5
GROUP project_macallan user6 user7 user8

# Host Groups are defined here
# --> use the form:  HOST_GROUP group_name host_list
HOST_GROUP buildbox buildpc01 buildpc02

# Define usage restrictions below
# --> use the form:  OPTION feature[:keyword=value]
# type {name | group_name}
RESERVE 2 compiler               HOST_GROUP buildbox
MAX 3 fromelf                    GROUP project_talisker
RESERVE 1 compiler:version=4.0   GROUP project_macallan
EXCLUDE compiler:version=4.0     USER user7

The RESERVE option puts aside a defined number of seats.  You can specify an exact version of the feature (e.g., 4.0) if required.
The MAX option puts a limit on the number of seats of a given feature.
The EXCLUDE option prevents a user or group from being granted a license.  This overrides any settings to include the user.

Other options are available and are described in Chapter 5 of Macrovision's FLEXnet End User Guide.

Configuring your license server to use the options file

You will need to edit your ARM tools license file so that the options file is called on the VENDOR line.  The example below shows how you would do this at the top of your license file.  This must be done on each of your ARM license servers.

     SERVER my_server 0012345678AB 8224
     VENDOR armlmd options=armlmd.opt

Now restart your license server(s).  Check your server log, as it should report something like this:

18:10:06 (armlmd) Using options file: "armlmd.opt"
18:10:06 (armlmd) Server started on my_server for:
<<feature list omitted>>
18:10:06 (armlmd) MAX 3 USER_GROUP project_talisker for fromelf
18:10:06 (armlmd) RESERVING 2 compiler/3F9C8C64C676 licenses for HOST_GROUP buildbox
18:10:06 (armlmd) RESERVING 1 compiler/3F9C8C64C676 license for USER_GROUP project_macallan
18:10:06 (armlmd) EXCLUDE USER user7 from compiler

If user7 now tries to get a license for the v4.0 compiler, they will see an error message like this:

Error: C3397E: Cannot obtain license for Compiler (feature compiler) with license version >= 4.0:
All licenses are reserved for others
The system administrator has reserved all the licenses for others.
Reservations are made in the options file. The server must be restarted for options file changes to take effect.
Feature:       compiler
License path:  8224@my_server FLEXnet error:  -101,147 For further information, refer to the FLEXnet End User Manual, available at "".

Further information on options files can be found in chapter 5, "The Options File", in Macrovision's FLEXnet End User Guide.

Article last edited on: 2011-08-11 10:41:20

Rate this article

Disagree? Move your mouse over the bar and click

Did you find this article helpful? Yes No

How can we improve this article?

Link to this article
Copyright © 2011 ARM Limited. All rights reserved. External (Open), Non-Confidential