admlicense(1M) DG/UX R4.11 admlicense(1M)
NAME
admlicense - manage license databases
SYNOPSIS
admlicense -o add [ -f licensefile ] [ -U ] [ -h hostid ] [ -t
tcpportnumber ] -S serverhostname
admlicense -o add [ -f licensefile ] [ -U ] [ -r version ] [ -h
hostid ] [ -x expdate ] -n numberusers -s "vendorstring" -e
encryptioncode featurename
admlicense -o install [ -f licensefile ] [ -U ] [ -r version ] [ -h
hostid ] [ -x expdate ] -T licensetoken featurename
admlicense -o delete [ -f licensefile ] [ -U ] -S serverhostname
admlicense -o delete [ -f licensefile ] [ -U ] [ -r version ] [ -h
hostid ] featurename
admlicense -o modify [ -f licensefile ] [ -h hostid ] [ -t
tcpportnumber ] [ -N newhostname ] -S serverhostname
admlicense -o modify [ -f licensefile ] [ -U ] [ -r version ] [ -R
newversion ] [ -h hostid ] [ -H newhostid ] [ -x expdate ]
[ -n numberusers ] [ -s "vendorstring" ] [ -N
newfeaturename ] -e encryptioncode featurename
admlicense -o upgrade [ -f licensefile ] [ -U ] [ -r version ] [ -h
hostid ] -T licensetoken featurename
admlicense -o lookup [ -f licensefile ] [ -r version ] [ -h hostid ]
[ -q ] featurename
admlicense -o reread [ -f licensefile ]
admlicense -o list [ -f licensefile ] [ -q ] [ -v ] {[ -S
serverhostname | "all" ] [ featurename | "all" ]}
admlicense -o verify [ -f licensefile ]
admlicense -o verify [ -r version ] [ -h hostid ] [ -x expdate ] [
-l serverhostidlist ] -T licensetoken featurename
where:
serverhostname
is the hostname of a license server as shown on a SERVER line
in a license file.
featurename
is the name of the feature. Feature names are limited to 30
characters.
DESCRIPTION
Admlicense is used to manage license databases. A license server
consists of two daemons, the license daemon and the vendor daemon.
The license daemon, lmgrd(1M), is a daemon delivered with FLEXlm, the
network licensing package from Globetrotter Software. Lmgrd(1M)
starts vendor daemons based on the contents of a license database or
license file and together these daemons constitute a license server.
A license file determines what licenses are available at a particular
site. There are some software features such as usermond(1M) which
read licensing information directly from a license file. These
software features will be available for the licensed number of uses
only if the encrypted information for that feature in the license
file is verified.
The format of the license file is any number of SERVER lines,
followed by any number of DAEMON lines, followed by one or more
FEATURE lines. The format of the license file is documented in
detail in the in the manual page for license.dat(4). In general the
syntax of the license file is:
SERVER server_hostname hostid tcp_port_number
DAEMON daemon_name daemon_path [options_file_path]
FEATURE feature_name daemon_name version exp_date number_users
encryption_code "vendor string" [hostid]
A license file is an encrypted file. The encryption code for each
feature contains information including the hostids on SERVER lines,
the vendor daemon names from DAEMON lines, and all of the information
in it's own FEATURE line. There are only four items in a license
file that can be modified without regard to corrupting the encryption
code for a particular feature. Note that there are no fields in a
FEATURE line which can be modified without making the encryption code
invalid and thus corrupting the license file. The four easily
modifiable items are:
· server hostnames on SERVER lines
· TCP port numbers on SERVER lines
· the daemon path on DAEMON lines
· the options file path on DAEMON lines.
A license file can legally contain more than one FEATURE line for the
same feature. There are two cases where this is legal. First, there
can be a FEATURE line for each version of the feature licensed. The
second case is when the hostid field is used on a FEATURE line to
limit the use of the feature to the host machine with the given
hostid. When the hostid is used to host lock a feature, there can be
multiple FEATURE lines for a single version of a feature. For
example, the following is a valid license file:
SERVER terminator any 1700
DAEMON acmed /etc/acmed
FEATURE acme_app1 acmed 3.0 01-jan-95 16 ECB4EF098337F8054971
"ACME" ANY
FEATURE acme_app1 acmed 4.2 31-dec-98 16 D710C051C37F80508453
"ACME" ANY
FEATURE acme_app2 acmed 2.1 01-jan-98 2 FBB8F051C37F80528064 "ACME"
c021757
FEATURE acme_app2 acmed 2.1 01-jan-98 2 EE34F07195FF805F7902 "ACME"
718e9ee
FEATURE acme_app2 acmed 2.1 01-jan-98 20 C3B8E481337E38298148
"ACME" 76f6532
Because multiple FEATURE lines are allowed under these conditions,
operations such as delete, modify, upgrade, and lookup that have to
find a given FEATURE line or a collection of FEATURE lines will use a
combination of featurename, version, and hostid to identify a
feature line. For example,
admlicense -o delete acmeapp1
would fail because we can not tell which of the first two FEATURE
lines to delete. When there are multiple FEATURE lines for a single
feature, ambiguous references will cause a failure. Therefore one
should be specific when necessary. For example,
admlicense -o delete -r 3.0 acmeapp1
admlicense -o delete -r 2.1 -h c021757 acmeapp2
admlicense -o modify -r 2.1 -h 718e9ee -n 4 -e 43D876FE293A234FF167 acmeapp2
would delete the first and the third FEATURE line and would change
the fourth FEATURE line to allow 4 users of the feature "acme_app2"
on the machine with the hostid "718e9ee".
For all operations that change the contents of the license file,
admlicense will make an effort to ensure that only correct changes
are allowed. Data General products that are licensed will use the
vendor daemon dguxuserd. For these products, encryption codes can be
verified for operations such as add, install, delete, modify,
upgrade, lookup, and verify. Features that are not Data General
products will not use dguxuserd. For these features, admlicense will
check to make sure the license file is not corrupted by actions such
as adding duplicate FEATURE lines or FEATURE lines which use a daemon
that has no DAEMON lines. But the encryption codes of features can
only be verified by admlicense if they are Data General products.
Operations
add Add a line to a license file. The addition of lines that
will corrupt the license file will not be allowed. SERVER
lines can only be added when there are no FEATURE lines
because the hostids in the SERVER lines in a license file
are encrypted into the encryption codes in FEATURE lines.
When adding a FEATURE line that uses the vendor daemon
dguxuserd, a DAEMON line for dguxuserd will automatically
be added to the license file if there is not already a line
for this daemon. Defaults will be used for any optional
options not given.
install Add a FEATURE line to a license file using a licensetoken.
A licensetoken is a string that contains an
encryptioncode, the number of users that can use a
feature, and a customer id which is part of the
vendorstring. License tokens are used and distributed by
Data General to license some features. Using a
licensetoken to add a FEATURE line is a more simple way of
adding a feature. For example, the operation
admlicense -o add -T 43D876FE293A234FF16700001600001138 feat1
is equivalent to the operation
admlicense -o add -n 16 -s "cust id 00001138" -e
43D876FE293A234FF167 feat1
and also
admlicense -o add -r 1.0 -x 01010000 -h any -f
/etc/license.dat -n 16 -s "cust id 00001138" -e
43D876FE293A234FF167 feat1
Reference the description of the -T licensetoken option
for more information about the licensetoken. Defaults
will be used for any optional options not given.
delete Delete a line from a license file. The deletion of lines
that will corrupt the license file will not be allowed.
SERVER lines can only be deleted when there are no FEATURE
lines because the hostids in the SERVER lines in a license
file are encrypted into the encryption_codes in FEATURE
lines. When deleting a FEATURE line, the -r version and -h
hostid options can be used to determine which FEATURE line
is being deleted. These options will be needed if there
are multiple FEATURE lines with the same featurename.
This is discussed above in the description of the license
file. The defaults for the licensefile and the version
will be used if they are not given.
modify Modify a line in a license file. Modifications that
corrupt the license file will not allowed. The only items
in the license file which can be modified with admlicense
without corrupting the license file are the serverhostname
in SERVER lines, and the tcpportnumber on SERVER lines.
FEATURE lines can be modified but all modifications of a
FEATURE line require that a new encryptioncode be given.
The hostid on SERVER lines can only be modified when there
are no FEATURE lines because the hostids in the SERVER
lines in a license file are encrypted into the encryption
codes in FEATURE lines.
When modifying a FEATURE line, the -r version and -h hostid
options can be used to determine which FEATURE line is
being modified. These options will be needed if there are
multiple FEATURE lines with the same featurename. This is
discussed above in the description of the license file.
The defaults for the licensefile and the version will be
used if they are not given.
upgrade Upgrade the license for a feature. The upgrade operation
uses a licensetoken. A licensetoken is a string that
contains an encryptioncode, the number of users that can
use a feature, and a customer id which is part of the
vendorstring. License tokens are used and distributed by
Data General to upgrade the license for some features. The
upgrade operation is a simplified version of a modify
operation. For example, the operation
admlicense -o upgrade -T 43D876FE293A234FF16700001600001138 feat1
is equivalent to the operation
admlicense -o modify -n 16 -s "cust id 00001138" -e
43D876FE293A234FF167 feat1
Reference the description of the -T licensetoken option
for more information about the licensetoken. The defaults
for the licensefile and the version will be used if they
are not given.
lookup Lookup and verify the licensed number of users for a given
feature. The lookup operation will read a license file and
find the correct version of the feature requested. The
FEATURE line for the selected feature will be verified
(meaning the encryptioncode matches the data in the
license file) and the number of licensed users will be
printed. Note that admlicense can only verify the license
for FEATURE lines that have dguxuserd as their daemon_name.
This is because admlicense can only verify the encryption
codes for licensed Data General products. The -r version
and -h hostid options can be used to determine which
FEATURE line is being examined. These options will be
needed if there are multiple FEATURE lines with the same
featurename. This is discussed above in the description
of the license file. If the [ -q ] option is used, only
the number of users will be printed with no explanatory
text. The defaults for the licensefile and the version
will be used if they are not given.
reread Execute lmreread(1M). Lmreread(1M) tells the license
daemon, lmgrd(1M), to reread the license file to update
licensing information. Lmgrd(1M) will start or stop the
appropriate vendor daemons which are described on the
DAEMON lines. You can not use lmreread(1M) if the
serverhostname or tcpportnumber have been changed in the
license file. See the lmreread(1M) manual page for further
details. The default for the licensefile will be used if
one is not given.
list List entries in a license database. If the -S switch is
not used and no featurename is given, all entries will be
listed. If "all" is used with the -S switch all SERVER
lines will be listed. If "all" is used in place of a
featurename, all FEATURE lines will be listed. With
"quiet" format (-q) headers are suppressed unlike "verbose"
format (-v). Verbose format is the default. The default
for the licensefile will be used if one is not given.
verify The verify operation is used to verify the correctness of a
license file or a license token. A license token is a
string that contains an encryption code, the number of
users that can use a feature and a customer id which is
part of the vendorstring. License tokens are used and
distributed by Data General to upgrade the license for some
features. Both license tokens and license files contain
encryption codes which will be invalid if any of the
information in the given token or file is changed with the
exception of the four data items listed above in the
description of the license file. When verifying a license
file, admlicense can only verify the encryption codes for
features that use the vendor daemon dguxuserd. This is
because admlicense can only verify the encryption codes for
licensed Data General products. Defaults will be used for
any optional options not given.
Options
-S serverhostname
This option is used to specify the hostname of the machine
for which this a license server will be able to execute.
This is the string returned by the hostname(1C) command.
This option can be used to signify that an operation is to
be performed on a SERVER line. The serverhostname has no
default and is limited to 64 characters.
-h hostid This is the hostid of the machine on which the license
daemon is allowed to execute. This will either be "any" or
the string returned by the lmhostid(1M) command. When used
with the add or install operations to add a SERVER line the
default is "any". Otherwise, there will be no default
since the hostid is an optional field on the FEATURE line.
-t tcpportnumber
The TCP port number to use. The license daemon, vendor
daemon, and licensed application may use the designated TCP
port number to communicate using TCP/IP sockets. The
default for the TCP port number will be the port number
designated for FLEXlm in /etc/services. See the
services(4) manual page for details about this file.
-f licensefile
The path of the license file to be managed. The default is
/etc/license.dat.
-U Execute lmreread(1M). Lmreread(1M) tells the license
daemon, lmgrd(1M), to reread the license file to update
licensing information. Lmgrd(1M) will start or stop the
appropriate vendor daemons which are described on the
DAEMON lines. You can not use lmreread(1M) if the
serverhostname or tcpportnumber have been changed in the
license file. See the lmreread(1M) manual page for further
details. By default -U is not used.
-n numberusers
The number of users licensed to use a feature. The number
of users must be between 1 and 999999. There is no default
for this option.
-e encryptioncode
The encryption code for a FEATURE line. The start date is
encoded into the code. A feature may not be used before
the start date. The encryption code is created by
encrypting all of the information on the FEATURE line and
all of the hostids on all of the SERVER lines in a license
file. The four data items listed above in the description
of the license file are the only fields in the license file
that can be changed without making the encryption code
incorrect and thus corrupting the license file. Therefore,
any time something other than the four items we have
mentioned is modified, a new encryptioncode can be given
to make certain modifications possible. The
encryptioncode is 20 characters in length. There is no
default for this option.
-s "vendorstring"
The vendor defined string enclosed in double quotes. This
string can contain any 64 characters except a double quote.
The upgrade operation requires that the vendorstring be of
the form "cust id xxxxxxxx" where "xxxxxxxx" is a customer
id number that is part of the licensetoken. There is no
default for this option.
-r version
The current revision of a feature that is licensed. A
version is a real number that can have 3 decimal places.
For example 5.001 is a valid version number. The default
for this option is 1.0.
-x expdate
The expiration date of the feature. The license for a
feature is invalid after this date. The expiration date
should be in the form ddmmyyyyy where dd is the day, mm is
the month, and yyyy is the year. If the expiration date
has a year of 0000, then the feature will never expire.
The default for this option is 01010000, January 1, 0000.
-N [ newhostname | newfeaturename ]
The new name to use when the modify operation is used to
modify the serverhostname on SERVER lines or the
featurename on FEATURE lines. See the description of
these fields in the SYNOPSIS section above as well as the
description of the -S serverhostname for details. There
is no default for this option.
-R newversion
The new version to use when modifying a FEATURE line. See
the description of the -r version option for the format of
this option. There is no default for this option.
-H newhostid
The new hostid to use when modifying a FEATURE line. See
the description of the -h hostid option for the format of
this option. There is no default for this option.
-q, -v Quiet, verbose. If the list operation is performed with
the -q switch all headers and any extra spacing will be
suppressed. Verbose is the default. If both -q and -v are
used, the listing will be in quiet format. Also, the -q
option can be used with the lookup operation to eliminate
all output except the number of licensed users.
-T licensetoken
The license token being verified or used to upgrade a
feature. A licensetoken is a 34 character string composed
of a 20 character encryption code, the number of licensed
uses for the feature, and an 8 digit hexadecimal customer
id. There is no default for this option.
-l serverhostidlist
A list of the server hostnames and hostids in the SERVER
lines for the license file created for a given license
token. Because a license token contains an encryption code
that is encrypted using the hostids on all of the SERVER
lines in a license file, this list is necessary to verify a
license token. A server hostid list will be a comma
separated list of server hostnames, hostid pairs. The
default for the serverhostidlist is a single SERVER line
with the serverhostname "MY_HOST" and the hostid "any". A
serverhostidlist for multiple SERVER lines would look
like the following:
-l mach1,any,mach2,c021757,mach3,any
Notice that there are no spaces following the commas.
EXAMPLES
% admlicense -o list -f /etc/license.dat -q
SERVER express any 744
% admlicense -o add -n 4 -e EAF2151D37F079325481 -s "cust id
0000102a" -x 12311998 intermaker
Feature intermaker Added to /etc/license.dat.
% admlicense -o list -f /etc/license.dat -q
SERVER express any 1700
DAEMON dguxuserd /usr/sbin/dguxuserd
FEATURE intermaker dguxuserd 1.000 31-dec-98 4 EAF2151D37F079325481
"cust id 0000102a"
% admlicense -o add -n 16 -e FBB8F051C37F80528064 -s "cust id
0000101f" -x 01011996 -h ANY -r 2.000 frameleaf
Feature frameleaf Added to /etc/license.dat.
% admlicense -o add -n 32 -e CD47409F237F80575A12 -s "cust id
0000121a" -x 01011998 -h ANY -r 2.000 frameleaf
Feature frameleaf Added to /etc/license.dat.
% admlicense -o lookup -r 3.000 -f /etc/license.dat -h ANY -q
frameleaf
32
% admlicense -o verify -T AC52830C52F0793254810000480000121A -r 3.000
-x 01011998 -h ANY -l any frameleaf
License token AC52830C52F0793254810000480000121A is valid.
% admlicense -o upgrade -T AC52830C52F0793254810000480000121A -r
3.000 -h
ANY frameleaf
Feature frameleaf Upgraded in /etc/license.dat.
% admlicense -o list -f /etc/license.dat -q
SERVER express any 1700
DAEMON dguxuserd /usr/sbin/dguxuserd
FEATURE frameleaf dguxuserd 2.000 01-jan-96 16 FBB8F051C37F80528064
"cust id 0000101f" ANY
FEATURE frameleaf dguxuserd 3.000 01-jan-98 48 AC52830C52F079325481
"cust id 0000121a" ANY
FEATURE intermaker dguxuserd 1.000 31-dec-98 4 EAF2151D37F079325481
"cust id 0000102a"
% admlicense -o lookup -r 3.000 -f /etc/license.dat -h ANY -q
frameleaf
48
FILES
/etc/license.dat The default license file.
/etc/services Service name database.
DIAGNOSTICS
Exit Codes
0 The operation was successful.
1 The operation was unsuccessful.
2 The operation failed due to access restrictions.
3 There was an error in the command line.
SEE ALSO
lmstat(1M), lmhostid(1M), lmdown(1M), lmgrd(1M), license.dat(4),
lmreread(1M), lmremove(1M), lmver(1M), services(4),
admuserlicense(1M), usermond(1M).
NOTES
FEATURE lines in license files are limited to 200 characters.
For operations such as add, install, delete, modify and upgrade which
change the contents of a license file, admlicense requires write
permission for the license file and the directory in which the
license file resides.
Some software features have associated daemons that may need to be
notified or stopped and restarted after installing or upgrading the
license for that feature. For these features sysadm(1M) will perform
the appropriate actions to notify the daemon associated with the
software feature. The sysadm(1M) System->License menu provides an
interface to operations such as install and upgrade.
Licensed material--property of copyright holder(s)