SRBs do not run under TCBs and the code is privileged. Asynchronous code under 
a TCB has an IRB unless SIRB is still a thing for error recovery.

The key and mode is a separate issue from authorization, which is JSCBAUTH.

--
Shmuel (Seymour J.) Metz
http://mason.gmu.edu/~smetz3
עַם יִשְׂרָאֵל חַי
נֵ֣צַח יִשְׂרָאֵ֔ל לֹ֥א יְשַׁקֵּ֖ר

________________________________________
From: IBM Mainframe Discussion List <IBM-MAIN@LISTSERV.UA.EDU> on behalf of Jon 
Perryman <jperr...@pacbell.net>
Sent: Saturday, December 30, 2023 2:55 PM
To: IBM-MAIN@LISTSERV.UA.EDU
Subject: Re: Question about IEAMSCHD

On Sat, 30 Dec 2023 15:36:44 GMT, esst...@juno.com <esst...@juno.com> wrote:

>I would like to schedule an SRB using IEAMSCHD to a non-authorized
>Address Space - I would prefer not to place the target SRB routine in common 
>storage.

It's important to tell us about the problem you need to solve because you only 
told us SRB is how you will solve that problem. Maybe XMEM, PC routine or ??? 
is a better solution. SRB routines are required to be in common but maybe your 
problem requires the SRB routine be in common. Do you actually need an SRB 
because it must execute in that address space?

You schedule an SRB to a TCB so I'm guessing you meant an unauthorized TCB. 
This is irrelevant unless you have code that must run unauthorized as opposed 
to running the SRB in problem state.

If your SRB routine is not in common, then you most likely use XMEM (some 
obscure exceptions) where you most likely use primary, secondary, home (again 
some obscure exceptions). Learn how to use primary, secondary and home. Most 
important, be consistent about how you use it otherwise you could have a mess 
on your hands.

>Can someone please clarify this statement regarding IEAMSCHD -
>.
>"To run an SRB routine in a different address space from the
>scheduling code, the SRB routine must be either in a different
>program that is accessible from the target address space, or
>in the common storage together with the scheduling code."
>.
>The above was taken from Example 7 of IEAMSCHD -
>https://www.ibm.com/docs/en/zos/2.4.0?topic=ixg-ieamschd-schedule-srb

Example 7 specifies ENV=STOKEN which potentially involves a third address space 
where the SRB routine must be addressable. The routine cannot be included with 
the IEAMSCHD because it's not addressable by the SRB.

>It makes no reference to the authorization of the target srb routine.

SRB's are authorized but that does not prevent your SRB from switching to / 
from problem state.

>I suspect its implied this is an integrity issue; as the target SRB Routine
>would be loaded by the Non Authorized Address Space, AND the Target
>SRB Routine is entered in supervisor state.

This is not an integrity issue because IEAMSCHD specifies the address of the 
SRB routine and it is your responsibility to ensure this address is for code 
that does not create an authorization exposure. This is a requirement for 
running authorized and has nothing to do with SRB. You never allow unauthorized 
programs to pass an executable address to your program running authorized 
regardless of the environment you are running..

----------------------------------------------------------------------
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to lists...@listserv.ua.edu with the message: INFO IBM-MAIN

----------------------------------------------------------------------
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to lists...@listserv.ua.edu with the message: INFO IBM-MAIN

Reply via email to