|  | Install-Panther WebSphere |        | 
This appendix provides background information on licensing in Panther. To manage Panther usage, the Flexible License Manager (FLEXlm), a product of Globetrotter Software, Inc., is used. FLEXlm Version 5.0 is installed with Panther as part of the installation process only on server machines.
The appendix describes the license options file and the following FLEXlm license administration utilities provided with Panther.
| Licensing in Panther |  | 
Panther components use local or remote licensing schemes and are defined as follows:
 The setup program recommends a default licensing scheme for each Panther component. If you accept the default, the setup program guides you through the appropriate steps to obtain a permanent license file. You can choose a different scheme if your license administrator recommends it. In this case, the setup program requests contact information, and the Prolifics License Desk will contact you or your license administrator to arrange for licensing. Default license schemes are:
 
 The license daemons are programs that manage the license types that allow limited access to users. License daemons are only required for node-locked counted and floating licenses. Thus, only the Panther development client requires a daemon; and the license daemon always runs on the license host machine.
 The license type and number used at your site was determined when Panther was purchased.
 The two types of daemons are:
 License Daemons and License Types
 Types of Daemons
lmgrd) — Manages the license file and starts the vendor daemon prold. Only one license daemon can be active for a given license file. However, there might be other license daemons managing other license files. lmgrd runs on the license host.
 Two types of licenses are available with Panther; each type is specific to the component installed:
 License Types
| Options File |  | 
The daemon options file allows you to customize Panther license usage at your site. The information in the file can specify such information as:
 There is no default location or name for the options file. If used, its name appears as the fourth argument on the  The options file has the following basic format:
 Lines beginning with a pound sign (#) indicate comments and are ignored.
DAEMON line of the license file license.dat, in the optional field options-file. If there are multiple DAEMON lines in the license.dat file, then there can be multiple options files, one for each DAEMON line. Not all of the lines in an options file refer to a feature, so the site administrator must set up separate options files in order to use the NOLOG and REPORTLOG features.
 Contents of the Options File
{INCLUDE|EXCLUDE} feature {USER|HOST|DISPLAY|GROUP} nameNOLOG {IN|OUT|DENIED|QUEUED} 
GROUP group-name member-listLINGER feature checkout-timeREPORTLOG filenameRESERVE numlic feature {USER|HOST|DISPLAY|GROUP} nameTIMEOUT feature idletime
INCLUDE/EXCLUDE 
INCLUDE and EXCLUDE specify which users (or hosts, displays, or groups) are allowed to use a particular feature. Any user who is EXCLUDEd from a feature is not able to use that feature. Specifying an INCLUDE line has the effect of excluding everyone else from that feature; thus, only those users specifically INCLUDEd are able to use that feature. The INCLUDE|EXCLUDE line has the following format:
{INCLUDE|EXCLUDE} feature {USER|HOST|DISPLAY|GROUP} nameNOLOG 
NOLOG causes messages of the specified type to be filtered out of the daemon's log file. Specifying a NOLOG option reduces the amount of output to the log file, which can be useful in those cases where the log file grows too quickly. The NOLOG line has the following format:
NOLOG {IN|OUT|DENIED|QUEUED}GROUP 
GROUP defines collections of users, which can then be used in RESERVE, INCLUDE, or EXCLUDE commands. The GROUP line has the following format:
GROUPgroup-name member-list
LINGER 
LINGER prevents the license manager from taking back a license until the indicated checkout-time has expired, regardless of whether or not the license token is being used. The LINGER line has the following format:
LINGERfeaturecheckout-time
REPORTLOG
REPORTLOG creates a log file suitable for use with the FLEXlm report writing tools. This log file maintains more detailed information than the standard log file, but is not meant to be human readable. If the filename starts with a plus character (+), the file will be opened in append mode. The REPORTLOG line has the following format:
REPORTLOGfilename
RESERVE 
RESERVE reserves the specified number of licenses for the specified user, host, display, or group. Reserving a license decreases the number of generally available licenses. The RESERVE line has the following format:
RESERVE numlicfeature{USER|HOST|DISPLAY|GROUP}name
TIMEOUT 
TIMEOUT sets up a minimum idle time after which a user's license is lost if it is not being used. This can prevent users from wasting a license (by keeping it checked out when it is not in use) when someone else wants one. The TIMEOUT line has the following format:
TIMEOUTfeatureidletime
The following is an example of an options file:
REPORTLOG /usr/adm/gsi.replog
RESERVE compile USER pat
RESERVE compile USER less
RESERVE compile HOST terry
NOLOG QUEUED
FLEXlm Utilities
The following sections describe the FLEXlm utility programs provided with Panther. These utilities are located in the distributed
utildirectory.
Performs a checksum of a license file
lmcksum [-k] [-clicense_file]
-k- Forces the encryption code checksum to be case-sensitive (in general,
lmcksumis not case-sensitive) and not prompt for any input.- -c
license_file- Name of license file to checksum. By default
lmcksumoperates onlicense.datin the current directory. If this switch is not specified,lmcksumlooks for the environment variableLM_LICENSE_FILE. If the environment variable is not set,lmdiaglooks for the file/usr/local/flexlm/licenses/license.dat.
lmcksumprints a line-by-line checksum for the file as well as an overall file checksum. If the license file contains "lmcksum=nn" attributes, the bad lines are indicated.
lmcksumignores all fields that do not enter into the encryption code computation; thus the server node name and port number, as well as the daemon pathname and options file names are not included in the checksum. In additionlmcksumtreats non-case sensitive fields correctly (in general,lmcksumis not case-sensitive).lmcksumtakes the-kswitch to force the encryption code checksum to be case-sensitive.
lmcksumtakes an optional daemon name; if a name is specified, only license file lines for the selected daemon are used to compute the checksums.
Diagnoses licensing problems
lmdiag [-clicense_file] [-n] [feature]
-clicense_file- Name of license file to diagnose. If this switch is not specified,
lmdiaglooks for the environment variableLM_LICENSE_FILE. If the environment variable is not set,lmdiaglooks for the file/usr/local/flexlm/licenses/license.dat.
-n- Non-interactive mode;
lmdiagdoes not prompt for any input. In this mode, extended connection diagnostics are not available.
feature- Diagnose only the specified
feature.
If no
featureis specified,lmdiagoperates on all features in the license file in your path.lmdiagfirst prints information about the license, then attempts to check out each license. If the checkout succeeds,lmdiagindicates this. If the checkout fails,lmdiaggives you the reason for the failure. If the checkout fails becauselmdiagcannot connect to the license server, then you have the option of running "extended connection diagnostics."Extended diagnostics attempt to connect to each port on the license server node, and can detect if the port number in the license file is incorrect.
lmdiagindicates each port number that is listening, and if it is anlmgrdprocess,lmdiagindicates this as well. Iflmdiagfinds the vendor daemon for thefeaturebeing tested, then it indicates the correct port number for the license file to correct the problem.
Takes down license daemons
lmdown [-clicense_file] [-q]
- -c
license_file- Use the specified
license_file. If this switch is not specified,lmdownlooks for the environment variableLM_LICENSE_FILE. If the environment variable is not set,lmdownlooks for the file/usr/local/flexlm/licenses/license.dat.
-q- Quiet mode;
lmdowndoes not ask for confirmation. If the switch is not specified,lmdownasks for confirmation before asking the license daemons to shut down.
lmdownsends a message to every license daemon asking it to shut down. The license daemons write out their last messages to the log file, close the file, and exit. All licenses which have been given out by those daemons are rescinded, so that the next time a client program goes to verify its license, it will not be valid.The end-user system administrator should protect the execution of
lmdownsince shutting down the servers causes loss of licenses.Note:
lmdowncan be used only by a "FLEXlm administrator" (i.e., a member of grouplmadminor, if thelmadmingroup does not exist, a member of group0).
Starts up the license manager daemon
lmgrd [-2] [-b] [-clicense_file] [-d] [-llogfile] [-p]
[-sinterval] [-t timeout]
-2- Specifies V2 startup arguments, in contrast to the
-bswitch. This switch is required if you intend to use the-pswitch (available inlmgrdv2.4 and later).
-b- Specifies backward compatibility mode. Use this switch if you are running a v2.1 or later
lmgrdwith a v1.5 or earlier vendor daemon. This is the default switch in FLEXlm v2.4 and later.
-clicense_file- Use the specified
license_file. If this switch is not specified,lmgrdlooks for the environment variableLM_LICENSE_FILE. If the environment variable is not set,lmgrdlooks for the file/usr/local/flexlm/licenses/license.dat.
-d- Specifies that hostnames which are read from the license file should have the local domain name appended to them before sending to a client. Useful when clients are accessing licenses from another domain. (Available in
lmgrdv2.4 and later.)
-llogfile- Specifies the output log file to use.
-p- Specifies that the
lmdownandlmremoveutilities can only be run by a license administrator. A license administrator is a member of thelmadmingroup, or, if thelmadmingroup does not exist, a member of group0. (This is available inlmgrdv2.4 and later.)
-sinterval- Specifies the logfile timestamp interval, in minutes. Default is 360 minutes.
-ttimeout- Specifies the timeout interval, in seconds, during which daemons must complete their connections to each other. Default value is 10 seconds. A larger value might be preferable if the daemons are being run on busy systems or a very heavily loaded network.
UNIX
lmgrdis the main daemon program for the FLEXlm distributed license management system. When invoked, it looks for a license file containing all required information about vendors and features.
Prints the correct hostid value on any machine supported by FLEXlm
lmhostid [type]
type- The type of the hostid to print.
typemust be one oflong,idmodule,ether, orstring, and is currently used only on HP and SCO systems. On HP,typespecifies the ID module, the machine id as returned from theunamecommand, or the Ethernet address. The HP default islong-uname. On SCO,longspecifies the pre-3.0 default, which was a 32-bit long int, whilestringspecifies a string host, which is the new default.
Output from
lmhostidis similar to the following:lmhostid - Copyright (C) 1989-1999 Globetrotter Software, Inc.
The FLEXlm host ID of this machine is "1700abcd"
Create and delete Windows service for license manager daemon
lminstall [-nService_Name] [-clicense_file] [-l <log_file>]
-e <path_to_lmgrd>lminstall -r [-nService_Name]
- --n
Service_Name- Specifies the name of the Windows service to create or delete. If omitted,
"FLEXlm License Server"is used as service name.- -c
license_file- Use the specified license file. If this switch is not specified,
lminstalllooks for the environment variableLM_LICENSE_FILE. If the environment variable is not set, it looks for the file/usr/local/flexlm/licenses/license.dat.- -l <
log_file>- Path to the log file to use for recording license activity.
- -e <
path_to_lmgrd>- Path to lmgrd.exe.
-r- Remove the service.
lminstallallows a system administrator to create or remove a Windows service that runs the license manager daemonlmgrd.exe.
Removes a user license and returns it to the license pool
lmremove [-clicense_file] [feature] [user] [host] [display]
- -c
license_file- Use the specified license file. If this switch is not specified,
lmremovelooks for the environment variableLM_LICENSE_FILE. If the environment variable is not set, it looks for the file/usr/local/flexlm/licenses/license.dat.
feature- Remove only from the specified
feature.
user- The
userto be removed.
host- Node from which the
useris to be removed.
lmremoveallows the system administrator to remove a single user's license for a specifiedfeature. This might be required in the case where the licensed user is running the software on a node that subsequently crashed. This situation can some times cause the license to remain unusable.lmremoveallows the license to be re turned to the pool of available licenses.
lmremoveremoves all instances ofuseron nodehostat the specifieddisplayfrom usage offeature. The end-user system administrator should protect the execution oflmremovesince removing a user's license can be disruptive.Note:
lmremovecan be used only by a "FLEXlm administrator" (i.e., a member of grouplmadminor, if thelmadmingroup does not exist, a member of group0).
Tells the license daemon to reread the license file
lmreread [-clicense_file]
- -c
license_file- Use the specified license file. If this switch is not specified,
lmrereadlooks for the environment variableLM_LICENSE_FILE. If the environment variable is not set, it looks for the file/usr/local/flexlm/licenses/license.dat.
lmrereadallows the system administrator to tell the license daemon to reread the license file. This can be useful if the data in the license file has changed; the new data can be loaded into the license daemon without shutting down and restarting it.
lmrereaduses the license file from the command line (or the default file, if none specified) only to find the license daemon to send it the command to reread the license file. The license daemon always rereads the original file that it loaded. If you need to change the path to the license file, then you must shut down the daemon and restart it with that new license file path.You cannot use
lmrereadif theSERVERnode names or port numbers have been changed in the license file. In this case, you must shut down the daemon and restart it in order for those changes to take effect.
lmrereaddoes not change any option information specified in an options file. If the new license file specifies a different options file, that information is ignored. If you need to reread the options file, you must shut down the daemon and restart it.
Reports status on license manager daemons and feature usage
lmstat [-a] [-A] [-clicense_file] [-f [feature]] [-l [reg_expression]]
[-s[server]] [-S[daemon]] [-ttimeout]
- -a
- Display everything.
- -A
- List all active licenses.
- -c
license_file- Use the specified license file. If this switch is not specified,
lmstatlooks for the environment variableLM_LICENSE_FILE. If the environment variable is not set,lmstatlooks for the file/usr/local/flexlm/licenses/license.dat.- -f [
feature]- List all users of the specified features.
- -l [
reg_expression]- List all users of the features matching the given regular expression.
- -s [
server]- Display the status of the specified server nodes.
- -S[
daemon]- List all users of the specified daemon's features.
- -t
timeout- Specifies the timeout interval, in seconds, during which daemons must complete their connections to each other. Default value is 10 seconds. A larger value might be desirable if the daemons are being run on busy systems or a very heavily loaded network.
lmstatprovides information about the status of the server nodes, vendor daemons, vendor features, and users of each feature. Information can optionally be qualified by specific server nodes, vendor daemons, or features.
lmstatprovides:
- Total licenses available for each feature.
Switches the FLEXadmin log file (REPORTLOG) for the specified feature
lmswitchr [feature] [new-file]
feature- Any
featurethis daemon supports.
new-file- New file pathname.
The FLEXlm daemons create an ASCII log file on
stdout. There are several processes in a parent-child hierarchy which share the same file pointer, so this log file cannot be changed after the vendor daemons have been started, since each process has a copy of the current offset, etc.There is another way to switch the log file output data; however, this involves piping the
stdoutoflmgrdto a shell script that appends a file for each line. Instead of the "normal" startup:% lmgrd > LOGStart lmgrd this way:
% lmgrd -z | sh -c 'while read line; do echo "$line" >> LOG; done'For more information on the log file, refer to "REPORTLOG".
Reports the FLEXlm version of a library or binary
lmver [filename]
filename- Use the specified license file. If a filename is not specified,
lmverlooks for the environment variableLM_LICENSE_FILE. If the environment variable is not set,lmverlooks for the file/usr/local/flexlm/licenses/license.dat.
If the filename is specified, the FLEXlm version incorporated into this file is displayed; otherwise
lmverlooks for the library fileliblmgr.ato detect its version.



