This document describes Software AG's mainframe product licensing procedures, license check software and license file.
vrs, vr or
v.r.s:
When used in this document, the notation
vrs, vr or
v.r.s represents the three-digit or two-digit
version number of the Software AG product.
ppp:
When used in this document, the notation ppp
represents the three-character product code of the Software AG product: ADA for
Adabas, NAT for Natural, EXX for EntireX, COM for Com-plete, WCP for Entire
Net-Work and NPR for Entire System Server.
Transferring a License File from PC to a z/OS Host Using FTP
Transferring a License File from PC to a z/VSE Host Using FTP
Transferring a License File from PC to a BS2000/OSD Host Using FTP
This section describes the data sets (files) containing this software.
All licensing data sets have names starting with the characters
MLC
. The vrs in the names represents
the version of the license check software, which is not necessarily the same as
the version of your Software AG mainframe product.
For instructions on copying the data sets from the installation tape to disk and loading the libraries contained on the data set, refer to the appropriate installation procedure for your mainframe product.
The following licensing data sets are provided in z/OS environments:
Data Set Name | Description |
---|---|
MLCvrs.LOAD | Mainframe license check load library. |
MLCvrs.JOBS | Mainframe license check example jobs. |
The following licensing data sets are provided in z/VSE environments:
Data Set Name | Description |
---|---|
MLCvrs.LIBR | Mainframe license check load library. |
MLCvrs.LIBJ | Mainframe license check example jobs. |
The following licensing data sets (files) are provided in BS2000/OSD environments:
Data Set Name | Description |
---|---|
MLCvrs.MOD | Mainframe license check load library. |
MLCvrs.JOBS | Mainframe license check example jobs. |
You must install a valid license file on all mainframe platforms in which your Software AG mainframe product is installed.
The license file is provided as an XML document (encoding is US-ASCII). This document can be viewed using a browsing tool or text editor on a PC. It can also be viewed on the mainframe using the DISPLAY function of the license utility, LICUTIL, described later in this document. The license file contains text, which represents the licensing information and a digital signature, the license key. Among other things, it displays Software AG legal notices and environmental information.
Warning: The license file must remain in ASCII format -- even on the mainframe. It must not be modified. Any modification of the license file will invalidate the digital signature and the license check will fail. If the check fails, please contact your Software AG technical support representative. |
Your individual product license is shipped on the installation tape as pppvrs.LICS data set (file) or as an e-mail attachment in the file format pppvr.xml.
Once the license file is received, either copy it from tape to disk or use native FTP commands to transfer it to your mainframe host before using it during the mainframe product installation.
During the mainframe product installation process, the license file is then loaded and processed as required by your Software AG mainframe product. Refer to the appropriate installation procedure for your Software AG mainframe product for further information.
For instructions on copying a pppvrs.LICS data set (file) from tape to disk, refer to the appropriate installation procedure for your Software AG mainframe product.
If a license file is supplied as an e-mail attachment, you must transfer the attached license file from the PC to the mainframe using native FTP commands provided in this section.
Warning: Using utilities instead of native FTP commands for the license file transfer may corrupt the license key. |
Important:
Make sure to switch to binary transfer and verify that the
resulting data set has RECFM=FB
or RECFM=F
and
LRECL=80
.
To transfer a license file from the PC to a z/OS host, perform the following steps:
Save the product license file e-mail attachment as pppvr.xml on your PC's hard disk.
Start an FTP session for communication with the z/OS host using the following FTP command:
ftp host-name
where host-name is the name of the z/OS host.
Enter your z/OS host login ID and password.
Switch to binary data mode (the license file must retain its format as ASCII during the transfer):
binary
Specify that the data set for the license file must be written with
RECFM=FB
and LRECL=80
:
quote site RECFM=FB LRECL=80 BLKSIZE=4000
RECFM=F
is also supported for product license files.
Write the license file as a data set on the z/OS system:
put pppvr.xml 'hilev.pppvrs.LICS'
where hilev is the high-level qualifier
(for example, SAG
) to be used for the data set.
This command will create a data set called
hilev.pppvrs.LICS
with RECFM=FB
, LRECL=80
, and the license information
stored in the data set will be in ASCII format.
If a license file is supplied as an e-mail attachment, you must transfer the attached license file from the PC to the mainframe using native FTP commands described in this section.
The FTP sample session described in these steps loads the license file onto a member of a z/VSE library. It is possible to load the license file onto a sequential z/VSE data set instead. For more information, refer to your FTP documentation.
Warning: Using utilities instead of native FTP commands for the license file transfer may corrupt the license key. |
Important:
Make sure to switch to binary transfer and verify that the
resulting data set has RECFM=FB
or RECFM=F
and
LRECL=80
.
To transfer a license file from the PC to a z/VSE host, perform the following steps:
Save the product license file e-mail attachment as pppvr.xml on your PC's hard disk.
Start an FTP session for communication with the z/VSE host using the following FTP command:
ftp host-name
where host-name is the name of the z/VSE host.
Enter your z/VSE host login ID and password.
Once the FTP session has been established, you can optionally delete the default working prefix. To determine what the default working prefix is, enter the following command:
pwd
To delete the default working prefix, enter the following command:
cd ..
Point to the z/VSE sublibrary for the license file, for example,
USERLIB.MYSUBLIB
:
cd USERLIB.MYSUBLIB
Switch to binary data mode (the license file must retain its ASCII format during the transfer):
binary
Specify that the data set for the license file must be written with
RECFM=FB
and LRECL=80
:
quote site recfm fb 80
RECFM=F
is also supported for product license files.
Write the license as a member in the libraries on the z/VSE system you identified in Step 4:
put pppvr.xml pppvrs.LICS
This command will write the license file
pppvr.xml
to a member called
pppvrs.LICS
. If you requested a library
and sublibrary of USERLIB
and MYSUBLIB
in Step 4, the
pppvrs.LICS
file would reside in the
USERLIB.MYSUBLIB
library. The data set will have
RECFM=FB
, LRECL=80
, and the license information
stored in the member will be in ASCII format.
If a license file is supplied as an e-mail attachment, you must transfer the attached license file from the PC to the mainframe using native FTP commands described in this section.
Warning: Using utilities instead of native FTP commands for the license file transfer may corrupt the license key. |
Important:
Make sure to switch to binary transfer and verify that the
resulting data set has file type SAM and RECFORM=V
.
To transfer a license file from the PC to a BS2000/OSD host, perform the following steps:
Save the product license file e-mail attachment as pppvr.xml on your PC's hard disk.
Start an FTP session for communication with the BS2000/OSD host using the following FTP command:
ftp host-name
where host-name is the name of the BS2000/OSD host.
Enter your BS2000/OSD host user ID, password and account number (if relevant).
Switch to binary data mode (the license file must retain its ASCII format during the transfer):
binary
Specify that the file for the license file must be written with
FCBTYPE=SAM
and RECFORM=V
:
quote file pppvrs.LICS,FCBTYPE=SAM,RECFORM=V
Write the license file to the BS2000/OSD host:
put pppvr.xml pppvrs.LICS
Why has Software AG introduced a license check for products on the mainframe?
Which Software AG mainframe products require a product license?
Does the Software AG mainframe license check software support a disaster recovery scenario?
What happens if the product license is incorrect, insufficient or not installed?
Software AG wants to ensure that customers run our software products only on mainframe machines for which they have valid and sufficient product license. This ensures that we have better control of the use of our software products. On other platforms (UNIX, Windows), the product license check has been established for many years.
A product license is a sequential file with US-ASCII text in XML format containing the following items:
Software AG header
customer information (Name, ID)
encrypted license key
license expiration date (or unlimited)
product information (product code, version, name)
environment information (operating system type, CPU ID, LPAR ID, system name, capacity)
IBM defines the CPU ID as the "central processing complex node descriptor sequence number". It is the unique hexadecimal machine serial number without the machine model number.
The CPU ID and other machine data can be viewed by using the DISPLAY function of the license utility, LICUTIL, described later in this document.
Adabas
Natural
EntireX
Com-plete
Entire Net-Work
Entire System Server
Transfer the license file from the installation tape or PC to disk as described in the installation documentation for your Software AG mainframe product or the various Transferring a License File from PC to a xxx Host section sections respectively. Then proceed as described in the appropriate installation steps for your mainframe product.
The product license file can be read on a PC by means of an XML editor (file type .xml) or any PC text editor.
The license utility, LICUTIL, provided with the Software AG mainframe license check software includes a function that allows you to display the license (DISPLAY function). For more information about the license utility, read Using the License Utility: LICUTIL.
The license utility, LICUTIL, provided with the Software AG mainframe license check software includes a function that allows you to display machine-specific data (DISPLAY function). For more information about the license utility, read Using the License Utility: LICUTIL.
The product license is checked every time the product is initialized. In addition, the product license is checked once a day.
Thirty days before the license expires, license check failure messages are produced. Your software product will still function, but these messages warn you that it is time to obtain a new license.
If a license check fails, contact your Software AG technical support representative.
Product license items are divided into three logical license groups (License Key, Product-Specific Information and Machine-Specific Information) and checked in that order. If an inconsistency in any one of these groups is detected by the license checker, the succeeding items of that logical license group are also checked. Then the check terminates with corresponding error messages. For example, if the license key expires, the license key check terminates with an error before the license checker checks any product-specific or machine-specific information.
The following table identifies the product license items comprising each logical group:
Checking |
Logical License |
Product License Item Included |
---|---|---|
1 | License Key | The encrypted license key |
2 | Product-Specific Information |
|
3 | Machine-Specific Information |
|
Yes. Please contact your Software AG sales representative to obtain a
license file which is able to support disaster recovery scenarios. The
parameter DisasterRecoveryCPUIDs in this license file allows you to specify one
or more CPU IDs of the machines to be used when your production machine fails.
If you do not have these CPU IDs available, it is possible to specify the value
Unknown
. In this case, the license checker issues a warning
message when a disaster recovery scenario is assumed.
In a disaster recover scenario, no machine data besides the CPU ID is checked.
Thirty days before the license expires, license check failure messages are produced. Your software product will still function, but these messages warn you that it is time to obtain a new license.
Contact your Software AG sales representative to get a correct product license file according to your contract. It can be shipped by e-mail either in ASCII format or in the converted assembler input format.
No, it is possible to have multiple CPU IDs defined in one license file.
The license utility, LICUTIL, is a batch utility that is used to check the license file, convert the license file into an assembler source module and display the license file and machine data.
LICUTIL is provided with Software AG's mainframe license check software contained on the data sets MLCvrs.LOAD (z/OS), MLCvrs.MOD (BS2000/OSD) and MLCvrs.LIBR (z/VSE).
Error messages for the license utility are documented with the rest of your Software AG product messages.
This section provides detailed information of each function provided by the LICUTIL utility. The functions can be executed by using the sample JCL described later in this section. The syntax of the functions that can be supplied with the LICUTIL command is shown in the following diagram:
CHECK | ||||||
DISPLAY {ALL | LICENSE | MACHINE} | ||||||
END | EXIT | ||||||
HELP | ||||||
LOADLIC module-name | ||||||
MAKE | ||||||
SET |
DATE={yyyy-mm-dd |
yyyymmdd} |
The parameters and variable values that can be supplied with each function, are described in the following section. For explanations of the syntax symbols used in the diagram, please read the documentation for your specific Software AG mainframe product.
The CHECK function can be used to check the license file against the product's execution environment. The original license file must be provided as input along with the product code and version. If the license file is not valid, appropriate error messages are returned.
Important:
There are no parameters, however, to run the CHECK function successfully, you must have previously specified the SET PRODVER function to provide the product code and version number.
The following items are checked, in the following order:
License key.
Product-specific data, including the product code, version, operating system and expiration date.
Machine-specific data, including the CPU IDs, the capacity (on only z/OS and z/VSE systems) and the logical partition (LPAR) ID.
Use the DISPLAY function to display the contents of the product license items (license file, product-specific information and machine-specific information) and to display machine data (CPU ID, machine type, model ID, LPAR ID, MSU) about the machine on which the utility is being run.
The parameters of this function are described in the following table. At least one parameter is required.
Parameter | Description |
---|---|
ALL | Display the product license items and machine data. ALL is the default. |
LICENSE | Display only the product license items. |
MACHINE | Display only the machine data. |
Use the END or EXIT function to terminate the license utility. These functions should be used if LICUTIL is running interactively in environments other than batch (for example, TSO under z/OS).
Use the HELP function to review a list of the available LICUTIL functions and their syntax.
Use the MAKE function to convert the license file into an assembler source. After assembling this source (and linking it), the resulting license module can be used by defined Software AG products (for example, Adabas or Natural) instead of the license files. For more information about using license modules, refer to the installation documentation provided with your Software AG product.
Here is some sample output from this function when run on a z/OS system:
MLC9006 License converted to assembler output. 042 records written to SYSUT2.
This function is provided with the MLC 1.2 SP4 (or higher) licensing software and applies to z/OS only.
Use the LOADLIC function to load the license module after you converted (MAKE function), assembled and linked the assember source. module-name denotes the name of the license module in the load library.
LOADLIC can be specified only once per LICUTIL session.
After the license module has been successfully loaded by LOADLIC, you can further process the module using other LICUTIL functions such as CHECK and DISPLAY.
This function is provided with the MLC 1.2 SP4 (or higher) licensing software.
Use the SET function to set options for the license utility.
The parameters of this function are described in the following table. At least one parameter is required.
Parameter | Description |
---|---|
DATE | Sets the date for the license check. The default is today. The format of the date can be either yyyy-mm-dd or yyyymondd, where yyyy is the four-character year, mm is the two-digit month, mon is the three-character month abbreviation and dd is the two-digit day. |
FORMAT | Sets the display format for the
DISPLAY function. There
are three different formats:
|
PRODVER | Sets the product code and version for the CHECK function. The format in which the product code and version should be specified is pppv.r.s. |
RMODE | Sets the RMODE for the assembler source produced
by the MAKE function:
|
Sample JCL of the license utility functions can be found in the following members of the licensing data sets (files): MLCvrs.JOBS for z/OS and BS2000/OSD, and MLCvrs.LIBJ for z/VSE.
Member | Functions Included | Demonstrates how to... |
---|---|---|
LICCHECK | SET
PRODVER=pppv.r.s DISPLAY CHECK |
Check a license file with LICUTIL. |
LICMAKE | MAKE | Convert the license file to assembler source. |
LICMDATA | DISPLAY MACHINE | Display machine data. This function can be used to send Software AG the required data for a license file. |
This section covers the following topics:
The following file assignments are used by the license utility in z/OS environments:
DD Name | Description |
---|---|
SYSIN | Input of LICUTIL control parameters. |
SYSPRINT | Output of LICUTIL run. |
SYSUT1 | Input of original license file (pppvrs.LICS data set). |
SYSUT2 | Output of license converted to assembler source. |
The following table shows which file assignments are required in the JCL by each LICUTIL function (an X in a table cell indicates that the file assignment is required; a blank cell indicates that file assignment is not required):
License Utility Function | DD Name | |||
---|---|---|---|---|
SYSIN | SYSPRINT | SYSUT1 | SYSUT2 | |
CHECK | X | X | X | |
DISPLAY ALL | X | X | X | |
DISPLAY LICENSE | X | X | X | |
DISPLAY MACHINE | X | X | ||
MAKE | X | X | X | X |
HELP | X | X |
The following file assignments are used by the license utility in z/VSE environments:
File Assignment | Description |
---|---|
SYSIPT | Input of LICUTIL control parameters and the
input of original license file (pppvrs.LICS data
set).
Note: |
SYSLIST | Output of LICUTIL run. |
SYSPCH | Output of license converted to assembler source. |
The following table shows which file assignments are required in the JCL by each LICUTIL function (an X in a table cell indicates that the file assignment is required; a blank cell indicates that file assignment is not required):
License Utility Function | File Assignment | ||
---|---|---|---|
SYSIPT | SYSLIST | SYSPCH | |
CHECK | X | X | |
DISPLAY ALL | X | X | |
DISPLAY LICENSE | X | X | |
DISPLAY MACHINE | X | X | |
MAKE | X | X | X |
HELP | X | X |
The following file assignments are used by the license utility in BS2000/OSD environments:
System File | Description |
---|---|
SYSDTA | Input of LICUTIL control parameters. |
SYSOUT | Output of LICUTIL run. |
Link Name | |
SYSUT1 | Input of original license file (pppvrs.LICS data set). |
SYSUT2 | Output of license converted to assembler source. |
The following table shows which file assignments are required in the JCL by each LICUTIL function (an X in a table cell indicates that the file assignment is required; a blank cell indicates that file assignment is not required):
License Utility Function | File Assignment | |||
---|---|---|---|---|
SYSDTA | SYSOUT | SYSUT1 | SYSUT2 | |
CHECK | X | X | X | |
DISPLAY ALL | X | X | X | |
DISPLAY LICENSE | X | X | X | |
DISPLAY MACHINE | X | X | ||
MAKE | X | X | X | X |
HELP | X | X |
The messages in this document may be produced when using the LICUTIL utility.
MLC1001
|
MLC1002
|
MLC1003
|
MLC1004
|
MLC1005
|
MLC2001
|
MLC2002
|
MLC2003
|
MLC2004
|
MLC2005
|
MLC2006
|
MLC2007
|
MLC2008
|
MLC2009
|
MLC2010
|
MLC9001
|
MLC9002
|
MLC9003
|
MLC9004
|
MLC9005
|
MLC9006
|
MLC9007
|
MLC9009
|
MLC9010
MLC1001 | CPU-ID cpuid is not defined in your product license |
Explanation |
The CPU ID listed in the message (cpuid) is not defined in your product license. Either your license file is invalid or you have attempted to run the Software AG mainframe product on a machine for which it is not licensed. |
Action |
Install and run the Software AG product on the machine for which it is licensed. If the problem persists, contact your Software AG sales representative for assistance. |
MLC1002 | LPAR name lparname is not defined in your product license |
Explanation |
The LPAR name listed in the message (lparname) is not defined in your product license. Either your license file is invalid or you have attempted to run the Software AG mainframe product on a machine for which it is not licensed. |
Action |
Install and run the Software AG product on the machine for which it is licensed. If the problem persists, contact your Software AG sales representative for assistance. |
MLC1003 | Machine capacity value higher than MSUs in your product license |
Explanation |
The machine capacity (value) of the machine on which you have attempted to install and run the Software AG mainframe product exceeds the capacity allowed in your product license. Either your license file is invalid or you have attempted to run the Software AG mainframe product on a machine for which it is not licensed. |
Action |
Contact your Software AG sales representative for assistance. |
MLC1004 | The product license will expire on timestamp |
Explanation |
This warning message provides the date and time (timestamp) when the license will expire for this Software AG mainframe product. |
Action |
No action is required for this warning message. However, you should contact your Software AG sales representative to obtain an updated license soon. |
MLC1005 | We assume CPU-ID cpuid as your DR or DR testing environment |
Explanation |
The CPU ID listed in the message (cpuid) is not defined in your product license. Therefore we assume that you are running in a disaster recovery environment. |
Action |
If you are running in a disaster recovery environment, no action is required for this warning message. If you are not running in a disaster recovery environment, contact your Software AG sales representative to obtain an updated license. |
MLC2001 | The product license is invalid |
Explanation |
Your product license is invalid. |
Action |
Contact your Software AG sales representative for assistance. |
MLC2002 | The product license key is invalid |
Explanation |
The license file for the Software AG mainframe product is invalid. |
Action |
Verify that the license file was transferred correctly to the mainframe host and that it is still in ASCII format. If the problem persists, contact your Software AG sales representative for assistance. |
MLC2003 | The product license is not for value |
Explanation |
The license file for the Software AG mainframe product is not for the operating system (OS), product code, or product version listed in the message (value). |
Action |
Use the correct license file. If the problem persists, contact your Software AG sales representative for assistance. |
MLC2004 | The product license has expired on timestamp |
Explanation |
The product license has expired. The date and time it expired is given in the message (timestamp). |
Action |
Contact your Software AG sales representative for assistance. |
MLC2005 | Tag missing in product license: tagname |
Explanation |
The tag with the name listed in the message (tagname) is missing in your product license. |
Action |
Contact your Software AG sales representative for assistance. |
MLC2006 | Invalid tag value in product license: tagname |
Explanation |
The value of the tag with the name listed in the message (tagname) is invalid in your product license. |
Action |
Contact your Software AG sales representative for assistance. |
MLC2007 | Current CPU-ID not found for product license check |
Explanation |
The CPU ID of the CPU on which the product license check was run is not found in the license file. |
Action |
Contact your Software AG sales representative for assistance. |
MLC2008 | The number of MSU values in the product license is incorrect |
Explanation |
The machine capacity covered by the product license is incorrect. |
Action |
Contact your Software AG sales representative for assistance. |
MLC2009 | ExtendedRights setting value not allowed under this system |
Explanation |
The ExtendedRights setting listed in the message (value) is not supported by your system. |
Action |
Contact your Software AG sales representative for assistance. |
MLC2010 | Soft capping is not allowed with ExtendedRights value |
Explanation |
Your product license does not allow soft capping with the ExtendedRights setting listed in the message (value). |
Action |
Contact your Software AG sales representative for assistance. |
MLC9001 | License exceeds maximum size of 8000 |
Explanation |
Your license file is too large. |
Action |
Contact your Software AG sales representative for assistance. |
MLC9002 | Error opening license file input |
Explanation |
An error occurred during an attempt to open the license file input. |
Action |
Investigate the cause of the error, paying special attention to the corresponding error messages produced by the operating system. Contact your Software AG sales or support representative for assistance. |
MLC9003 | Error reading license file input |
Explanation |
An error occurred during an attempt to read the license file input. |
Action |
Investigate the cause of the error, paying special attention to the corresponding error messages produced by the operating system. Contact your Software AG sales or support representative for assistance. |
MLC9004 | Error opening license file assembler output |
Explanation |
An error occurred during an attempt to open the license file assembler output. |
Action |
Investigate the cause of the error, paying special attention to the corresponding error messages produced by the operating system. Contact your Software AG sales or support representative for assistance. |
MLC9005 | Error writing license file assembler output |
Explanation |
An error occurred during an attempt to write the license file assembler output. |
Action |
Investigate the cause of the error, paying special attention to the corresponding error messages produced by the operating system. Contact your Software AG sales or support representative for assistance. |
MLC9006 | License converted to assembler output records written to output file |
Explanation |
The license file was successfully converted to an assembler source module. Output records were written to the output file. |
Action |
No action is required for this informational message. |
MLC9007 | Error loading license module modulename errorcode |
Explanation |
The LOADLIC function (z/OS only) tried to load a license module from the load library and received an error (errorcode) from the operating system. |
Action |
Correct the LICUTIL input, removing duplicate LICUTIL function calls. Check that the license module (modulename) is in the load library, that the correct library is referenced in the JCL, and that the module name is specified correctly in the LOADLIC statement (case sensitive, a blank between LOADLIC and modulename). |
MLC9009 | DMS Error |
Explanation |
A DMS error occurred (only in BS2000/OSD environments). |
Action |
Investigate the cause of the BS2000/OSD DMS error. If you need assistance, contact your Software AG support representative. |
MLC9010 | LOADLIC can only be issued once, before any DISPLAY, CHECK, MAKE or READ |
Explanation |
The LOADLIC function (z/OS only) can only be performed once per LICUTIL session. LOADLIC must not be preceded by the DISPLAY, CHECK or READ function. These functions can only locate the license module after the LOADLIC. |
Action |
Correct the LICUTIL input, removing duplicate LICUTIL function calls. Change the call order so that the LOADLIC precedes any DISPLAY, CHECK or READ. |