I've got a DFHXEIIN exit that uses field CSACDTA to pick up the TCA address via the DFHAFCD macro. I read a presentation on the Internet, given by yourself, that this field cannot be relied upon for this purpose in TS 2.2. I then use the TCA to get to the EIUS because I need the values of the calling application registers which are saved therein...
I cant see an alternative, is there one?
You appear to have taken what I wrote out of context.
As a CICS vendor (I assume from your email address) you know that the CSA pointer sometimes is valid and sometimes invalid. It depends under which TCB you are processing and in what exit access is being made. The item was (merely) a reminder that you just cannot reference the CSA based off a register like you used to do. This placey thing is more important for CTS 2.2 than in previous releases because application programs can be running on L8 TCBs, whereas before they always ran under the main QR TCB.
A long time ago we stopped the CSA & TCA pointers from being available in GLUE programs as they were not always pointing to interesting places depending upon the GLUE location. And so that no-one want astray, we made these fields point to Fetch Protected Storage to stop usage.
The replacement way to get at these things is via the DFHAFCD macro which navigates itself to the correct point where an offset of CSACDTA would point to the correct place for a TCA. You are already doing this.
Your GLUE code has been working in CTS 1.3 - where the same principles apply - so there will be no need to change for CTS 2.2. The only practical difference is that the new TCB structure may mean your GLUE code is executing more than once at the same time (on QR and also a L8 TCB). I expect you have already made the GLUE code Threadsafe (Critical Sectioned etc.) so that access to Shared Storage is not a 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.