Peter,

That's pretty much my sad story.  Passed my testing.  Customer found the bug 
for me.  :(

Gary

On 07/19/2011 3:57 PM, Farley, Peter x23353 wrote:
We ran into this a number of years ago.  Even if a load module is linked RENT, 
it is not loaded into fetch-only storage unless it is loaded from an 
APF-authorized library.  Normal APF authorization rules apply, so ANY 
non-authorized library in the STEPLIB or JOBLIB etc. voids the APF 
authorization and you will NOT be loaded into fetch-only storage.

We ran into this situation when our QA process with non-authorized libs did not 
catch a non-reentrant piece of code that was supposed to be, but the production 
setup used only APF authorized libs and we promptly got an 0C4 the first day of 
production.

If you copy that load module into an APF-authorized lib and use that APF 
library as the only STEPLIB, you will see the 0C4 right away.

HTH

Peter

-----Original Message-----
From: IBM Mainframe Discussion List [mailto:[email protected]] On
Behalf Of Gary DiPillo
Sent: Tuesday, July 19, 2011 3:40 PM
To: [email protected]
Subject: Re-entrant module stores into itself with no 0C4

I have run into a situation I have never seen before and did not think was
possible.  I must be missing something, but I haven't got a clue as to
what.

I have a batch program (A) that is re-entrant.  However, statically linked
to it is a program (B) that is not re-entrant.  When this program B is
called, it stores program (A)'s R13 in a save area within program (B)'s
own storage.  No ABEND, no program check.  I used to think this was worthy
of an 0C4.

This program (B) issues a LOAD EP=C and stores the entry point address of
the loaded program (C) in a data area within program (B).  Again, no 0C4.

Program (B) then CALLs the loaded program (C), which is also link-edited
as re-entrant.  Module (C) stores all kinds of data in data areas within
itself.  Again, no 0C4.

The three programs involved are are all Assembler and linked RN, RU, even
though two of them (B) and (C) are not re-entrant (my error).  They are
all in the same load library which is the only library the the batch job
step's STEPLIB.  None of the programs is in the LPA, nor is the library in
the LINKLIST, nor are the programs in any other LINKLISTed library.

My z/OS V1R10 image is a guest running under z/VM.

Can someone suggest how these programs that are marked as re-entrant can
be loaded and executed without error even though they are storing data
within themselves?
--


This message and any attachments are intended only for the use of the addressee 
and may contain information that is privileged and confidential. If the reader 
of the message is not the intended recipient or an authorized representative of 
the intended recipient, you are hereby notified that any dissemination of this 
communication is strictly prohibited. If you have received this communication 
in error, please notify us immediately by e-mail and delete the message and any 
attachments from your system.

----------------------------------------------------------------------
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to [email protected] with the message: GET IBM-MAIN INFO
Search the archives at http://bama.ua.edu/archives/ibm-main.html



--
Axios Products, Inc. [email protected] 631-864-3666 x133

----------------------------------------------------------------------
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to [email protected] with the message: GET IBM-MAIN INFO
Search the archives at http://bama.ua.edu/archives/ibm-main.html

Reply via email to