Return Codes

When the Register service returns control to the caller, Returncode contains the return code. To obtain the equates for the return codes:
  • If you are coding in assembler, include mapping macro IFAEDIDF, described in z/OS MVS™ Data Areas manuals in z/OS® Internet Library at z/OS Internet Library.
  • If you are coding in C, use include file IFAEDC. See IFAEDC.

The following table describes the return codes, shown in decimal.

Return Code (decimal) Equate Symbol Meaning and Action
00 Equate Symbol: IFAEDREG_SUCCESS

Meaning: The product/feature combination is enabled and is permitted to execute. Note that, unless you request option Ifaedreg_Type_NotFoundDisabled, you will get this return code when the system does not find a policy statement that matches the product.

Action: Proceed with normal execution.

04 Equate Symbol: IFAEDREG_DISABLED

Meaning: The product/feature combination is not enabled; it is explicitly disabled and is not permitted to execute. To get this return code when the system does not find a policy statement that matches the product, you must also request option Ifaedreg_Type_NotFoundDisabled.

Action:

  1. Write the appropriate termination message to the terminal or log, unless the operator message issued because you requested Ifaedreg_Type_DisabledMessage provides enough information.
  2. Set a return code to indicate termination for ‘not ordered or not permitted to run’ condition.
  3. Terminate requestor's use of program.
08 Equate Symbol: IFAEDREG_NOTAVAILABLE

Meaning: Environmental error: The Register service is not available on this system.

Action:

  • If this version of the program must execute on a system that provides registration services:
    1. Write the appropriate termination message to the terminal or log.
    2. Set a return code to indicate termination because registration services are not available on this system.
    3. Terminate requestor's use of program.
  • If this version of the program does not need to execute on a system that provides registration services, take the actions appropriate for the product/feature when you cannot determine if it is enabled.
12 Equate Symbol: IFAEDREG_LIMITEXCEEDED

Meaning: Environmental error: This request exceeds the limit of 10 register requests by an unauthorized caller in this address space.

Action: Use the Deregister service to remove unneeded registrations.

16 Equate Symbol: IFAEDREG_NOTTASKMODE

Meaning: User error: The service was not called in task mode.

Action: Avoid calling in this environment.

20 Equate Symbol: IFAEDREG_XM

Meaning: User error: The service was called in cross-memory mode but requires PASN=HASN=SASN.

Action: Avoid calling in this environment.

24 Equate Symbol: IFAEDREG_BADFEATURESLEN

Meaning: User error: The Featureslen parameter was not in the range 0-1024.

Action: Correct the parameter.

28 Equate Symbol: IFAEDREG_NOSTORAGE

Meaning: Environmental error: The system could not obtain the storage it needed to satisfy the request.

Action: Contact the system programmer.

32 Equate Symbol: IFAEDREG_BADTYPE

Meaning: User error: The type parameter did not specify a word formed from any combination of Ifaedreg_Type_Standard, Ifaedreg_Type_Required, Ifaedreg_Type_NoReport, Ifaedreg_Type_LicensedUnderProd, Ifaedreg_Type_DisabledMessage, and Ifaedreg_Type_NotFoundDisabled.

Action: Correct the parameter.

36 Equate Symbol: IFAEDREG_LOCKED

Meaning: User error: The service was called while holding a system lock.

Action: Avoid calling in this environment.

40 Equate Symbol: IFAEDREG_FRR

Meaning: User error: The service was called while having a functional recovery routine (FRR) established.

Action: Avoid calling in this environment.