Museum

Home

Lab Overview

Retrotechnology Articles

Online Manuals

⇒ admlicense(1M) — DG/UX R4.11MU05

Media Vault

Software Library

Restoration Projects

Artifacts Sought

Related Articles

lmstat(1M)

lmhostid(1M)

lmdown(1M)

lmgrd(1M)

license.dat(4)

lmreread(1M)

lmremove(1M)

lmver(1M)

services(4)

admuserlicense(1M)

usermond(1M)



admlicense(1M)                 DG/UX R4.11MU05                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)

Typewritten Software • bear@typewritten.org • Edmonds, WA 98026