AEIV due to length error of COMMAREA on EXEC CICS LINK command

Technote (troubleshooting)


Problem(Abstract)

You have a modified Node Error Program, DFHZNEP, that issues an EXEC CICS LINK command to another application. This program has worked for many years until upgrading to z/OS 1.8. Now, the program abends with abend code AEIV indicating that there is a length error (LENGERR).

Cause

EXEC CICS LINK command has LENGTH parameter coded incorrectly.

Diagnosing the problem

Your Link command is coded similar to the following:

EXEC CICS LINK PROGRAM('SSCCERR')
               COMMAREA(NEPCABEG)
               LENGTH(NEPCALEN)

NEPCALEN is defined using the DFHNEPCA macro as an equate:

NEPCALEN EQU *-NEPCABEG

Thus, NEPCALEN is equated to a full word binary value of x'0000009E', causing the length value to be picked up at location x'9E'. The CICS translator loads the address of the equated field into the parameter list, and this actually yields an address of x'0000009E'.

Prior to upgrading to z/OS V1.8, location x'9E' either contained a half word of zeros or a half word value not having the left most bit turned on. After upgrading, this storage contains a half word value with the left most bit turned on, thus thought to be a negative value. The negative value causes LENGERR and abendAEIV.


Resolving the problem

Code the LENGTH field on the EXEC CICS LINK command as an address that points to the length of the COMMAREA, not as the actual length of the COMMAREA. Because this scenario involves DFHZNEP, the problem can be resolved by simply removing the LENGTH parameter altogether and the length will be resolved as a pointer to a half word value of x'009E'.

Product Alias/Synonym

CICS/TS CICS TS CICS Transaction Server

Rate this page:

(0 users)Average rating

Add comments

Document information


More support for:

CICS Transaction Server
Application

Software version:

3.1, 3.2, 4.1, 4.2, 5.1

Operating system(s):

z/OS

Reference #:

1267213

Modified date:

2013-04-05

Translate my page

Machine Translation

Content navigation