Skip to Main Content
IBM Z Hardware and Operating Systems Ideas Portal


This is the public portal for all IBM Z Hardware and Operating System related offerings. To view all of your ideas submitted to IBM, create and manage groups of Ideas, or create an idea explicitly set to be either visible by all (public) or visible only to you and IBM (private), use the IBM Unified Ideas Portal (https://ideas.ibm.com).


Shape the future of IBM!

We invite you to shape the future of IBM, including product roadmaps, by submitting ideas that matter to you the most. Here's how it works:

Search existing ideas

Start by searching and reviewing ideas and requests to enhance a product or service. Take a look at ideas others have posted, and add a comment, vote, or subscribe to updates on them if they matter to you. If you can't find what you are looking for,

Post your ideas
  1. Post an idea.

  2. Get feedback from the IBM team and other customers to refine your idea.

  3. Follow the idea through the IBM Ideas process.


Specific links you will want to bookmark for future use

Welcome to the IBM Ideas Portal (https://www.ibm.com/ideas) - Use this site to find out additional information and details about the IBM Ideas process and statuses.

IBM Unified Ideas Portal (https://ideas.ibm.com) - Use this site to view all of your ideas, create new ideas for any IBM product, or search for ideas across all of IBM.

ideasibm@us.ibm.com - Use this email to suggest enhancements to the Ideas process or request help from IBM for submitting your Ideas.

Status Future consideration
Workspace z/OS
Categories TSO
Created by Guest
Created on Jun 21, 2020

TSO TESTAUTH should load authorized reentrant programs into key 0 storage

Problem:

The TSO TESTAUTH command does not provide for locating non-reentrant code in authorized reentrant programs. It loads authorized reentrant code into subpool 251 which is not key 0 thus preventing abends during testing. The programmer could test his code repeatedly using TESTAUTH and think that all the bugs have been worked out. Then when the code is implemented in production, S0C4 abends suddenly occur. It is only after the program is moved into authorized production libraries that non-reentrant code problems appear. When authorized reentrant programs are normally loaded by Program Fetch, they are loaded into subpool 252 which is a key 0 subpool where non-reentrant code will abend. Finding non-reentrant code once a reentrant program is put into production is frustrating to say the least. It can cause serious outages and the code needs to be debugged to find the bad code. Another problem is there may be more than one piece of non-reentrant code that would cause problems with subsequent production implementation causing a repeat of program debugging and reimplementation into production.

The Comments posted to this requirement

-------------------------

Tony Harminc
Posted: May 22, 2020 09:26 PM
TSO TESTAUTH should load authorized reentrant programs into key 0 storage

-------------------------

I can certainly see the reason for this requirement, but it's not obvious to me how breakpoints would work if the program code was loaded into key 0 storage. Currently TESTAUTH will not set a breakpoint into system key storage, and I assume you don't want the ability to set breakpoints in such modules to be removed. Certainly I don't. I think this would have to be an option on the TESTAUTH command, and/or on the LOAD subcommand. Given the amount of work needed to make TESTAUTH work properly in the modern z/OS environment, I think there are higher priorities (e.g. full support for 64-bit registers and addresses, long names, etc...).

-------------------------

Brian Westerman
Posted: May 23, 2020 12:22 AM
TSO TESTAUTH should load authorized reentrant programs into key 0 storage

-------------------------

I think the OP has a point that it's difficult to be able to test without actually obtaining a complete environment, and although misleading, it does make sense why it's implemented the way IBM currently has it. In the end I have to agree with the first comment, it's not really a very high priority, especially when you consider all of the other features that are completely missing from test.

Brian

-------------------------

Bill Ridder
Posted: May 23, 2020 01:58 AM
TSO TESTAUTH should load authorized reentrant programs into key 0 storage

-------------------------

I agree with the not being able to set breakpoints in key 0 code (unless IBM can work some magic here), but at least the program can be tested without breakpoints to see if it runs without errors/abends. That is still much better than finding the 0C4's in production.

Bill Ridder

-------------------------

Stan W Abramczyk, Jr
Posted: May 26, 2020 07:28 PM
TSO TESTAUTH should load authorized reentrant programs into key 0 storage

-------------------------

I agree: TESTAUTH should create the same environment during testing that the tested program would experience during normal execution.

-------------------------

Tim Hare
Posted: May 29, 2020 10:02 PM
TSO TESTAUTH should load authorized reentrant programs into key 0 storage

-------------------------

1. I think the RENT option of the Assembler should help avoid this sort of problem, though it is not foolproof.
2. If this is not Assembler, then I would hope other compilers support a similar option, but haven't researched that
3. If this is truly system-level code, shouldn't it be tested in some non-production partition to find these kinds of bugs?
4. Does loading one of these into key 0 storage present a security risk? If so, I'd say security concerns trump the original poster's testing concerns.

-------------------------

Bill Ridder
Posted: Jun 08, 2020 07:06 PM
TSO TESTAUTH should load authorized reentrant programs into key 0 storage

-------------------------

RENT doesn't help during TEST and TESTAUTH testing because the program is not loaded into key 0 storage. Also, having the load module loaded into key 0 storage does not add any security concerns because with TESTAUTH, the program is already running authorized.

Bill

Idea priority Low