Version 8.2.5

Software AG Mainframe Product Licensing

This document describes Software AG's mainframe product licensing procedures, license check software and license file.

Notations Used in this Document:


Distributed License Check Software

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.

z/OS Licensing Data Sets

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.

z/VSE Licensing Data Sets

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.

BS2000/OSD Licensing Data Sets

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.

Top of page

License File

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.

Delivery and Installation

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.

Top of page

Copying a License File from Tape to Disk

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.

Top of page

Transferring a License File from PC to a z/OS Host Using FTP

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.

Start of instruction setTo transfer a license file from the PC to a z/OS host, perform the following steps:

  1. Save the product license file e-mail attachment as pppvr.xml on your PC's hard disk.

  2. 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.

  3. Switch to binary data mode (the license file must retain its format as ASCII during the transfer):

    binary
  4. 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.

  5. 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.

Top of page

Transferring a License File from PC to a z/VSE Host Using FTP

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.

Start of instruction setTo transfer a license file from the PC to a z/VSE host, perform the following steps:

  1. Save the product license file e-mail attachment as pppvr.xml on your PC's hard disk.

  2. 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.

  3. 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 ..
  4. Point to the z/VSE sublibrary for the license file, for example, USERLIB.MYSUBLIB:

    cd USERLIB.MYSUBLIB
  5. Switch to binary data mode (the license file must retain its ASCII format during the transfer):

    binary
  6. 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.

  7. 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.

Top of page

Transferring a License File from PC to a BS2000/OSD Host Using FTP

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.

Start of instruction setTo transfer a license file from the PC to a BS2000/OSD host, perform the following steps:

  1. Save the product license file e-mail attachment as pppvr.xml on your PC's hard disk.

  2. 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).

  3. Switch to binary data mode (the license file must retain its ASCII format during the transfer):

    binary
  4. 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
  5. Write the license file to the BS2000/OSD host:

    put pppvr.xml pppvrs.LICS

Top of page

Product License Check FAQs

Why has Software AG introduced a license check for products on the mainframe?

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.

Which information is contained in a product license?

A product license is a sequential file with US-ASCII text in XML format containing the following items:

What exactly is meant by the CPU ID?

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.

Which Software AG mainframe products require a product license?

How is the product license file installed?

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.

How can I read the product license file?

How can I display machine-specific data?

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.

When is the product license checked?

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.

Which items of a product license are checked?

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
Order

Logical License
Group Name

Product License Item Included
1 License Key The encrypted license key
2 Product-Specific Information
  • The expiration date (if any)

  • The operating system (z/OS, z/VSE or BS2000/OSD)

  • The product code (for example, ADA, NAT or EXX)

  • The product version, in either v.r. or v.r.s format.

3 Machine-Specific Information
  • The machine CPU ID

  • The machine capacity (only in z/OS and z/VSE environments)

  • The logical partition (LPAR) ID (if applicable)

Does the Software AG mainframe license check software support a disaster recovery scenario?

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.

What happens if the product license is incorrect, insufficient or not installed?

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.

How can I get a new product license file if the delivered license file is insufficient for my environment?

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.

Do I need separate product licenses for different machines?

No, it is possible to have multiple CPU IDs defined in one license file.

Top of page

Using the License Utility: LICUTIL

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

graphics/cbo3b.gif

DATE={yyyy-mm-dd | yyyymmdd}
FORMAT={FREE|LEFT|STRUCTURED}
PRODVER=pppv.r.s
RMODE={ANY|24}

graphics/cbc3b.gif

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.

CHECK Function: Check the Product License

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:

  1. License key.

  2. Product-specific data, including the product code, version, operating system and expiration date.

  3. Machine-specific data, including the CPU IDs, the capacity (on only z/OS and z/VSE systems) and the logical partition (LPAR) ID.

DISPLAY Function: Display License Items and Machine Data

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.

END/EXIT Functions: Terminate the License Utility

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).

HELP Function: View LICUTIL Help

Use the HELP function to review a list of the available LICUTIL functions and their syntax.

MAKE Function: Convert the License File to Assembler Source

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.

Sample Output

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.

LOADLIC Function

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.

SET Function: Set LICUTIL Options

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:
  • Specify FREE (the default) to produce output without XML tags.

  • Specify LEFT to produce output with each XML tag in a new line.

  • Specify STRUCTURED to produce output with each XML tag indented.

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:
  • Specify 24 (the default) for 24-bit addressing mode.

  • Specify ANY for either 24- or 31-bit addressing mode.

JCL Examples and Requirements

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:

z/OS JCL Requirements

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    

z/VSE JCL Requirements

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:
The license file has to be stored in a sublibrary.

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  

BS2000/OSD JCL Requirements

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    

LICUTIL Licensing Messages

The messages in this document may be produced when using the LICUTIL utility.

Overview of Messages

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.


Top of page