I have problems getting my C/370 CICS programs re-entrant (apparently). I am getting 0c4 when trying to update an EXEC CICS LINK COMMAREA. What is the trick? What impact does an external definition have? Do you have a reference?
I'm assuming that the length of the commarea is correct and you are not trying to write off the end of it (I always find that C lengths starting at 0 difficult to cope with). Similarly that you are accessing the commarea via the XC ADDRESS COMMAREA function to get the pointer.
It may be that you have allocated the commarea using a C malloc() verb, and then this storage has gone out of scope (LE Enclave issues start coming into play here as well). If you use an XC GETMAIN for the Commarea then CICS will be managing the storage as opposed to anything else, so it will be visible thoughout the transaction - and thus you should avoid the accessibility problem.
Dig Deeper on IBM system z and mainframe systems
Related Q&A from Robert Crawford
For better mainframe capacity planning, how do I convert CPU hours to MIPS? And is there a way to calculate the relationship between MIPS and MSUs? Continue Reading
I have two years of experience in mainframe technology, currently working as a mainframe developer. I want to change to Java technology. Continue Reading
I want to replicate DB2 from the mainframe to an AIX box since it's cheaper and the copy can be used for testing. Is this possible? Continue Reading
Have a question for an expert?
Please add a title for your question
Get answers from a TechTarget expert on whatever's puzzling you.