>>    If the ddname in not in the JCL with the DSAPTR be blank or 0 ?

>       Upon output, DSABPTR contains the address of the specified
>       DSAB if the return code is zero. If the return code is not
>       zero, DSABPTR contains 0.

>Test the rc in R15.

Fully correct.

As documented: "Upon output, DSABPTR contains the address of the specified 
DSAB if the return code is zero. If the return code is not zero, DSABPTR 
contains 0.".

It is pretty atypical of a service to make such a guarantee (especially if 
they might have a return code indicating that they were unable to access 
the parameter list or some specific parameter; apparently GETDSAB has no 
such return code). If there is no specific documentation describing the 
behavior upon a "failure" return code, upon such a return code the field 
might be zero, it might be unchanged, it might be some value intended to 
blow up if you try to use it, it might be something entirely unrelated and 
(to the user) unpredictable.

And if this expansion were run on an old enough MVS release, you'd get 
RC=16 and DSABPTR would not contain 0, it would be "unchanged". That would 
be, it appears, "older than MVS SP3.1.0 (MVS/ESA)". The extra code in the 
expansion is unnecessary now and has been for a long time and, at least on 
all OS/390 and z/OS releases, "contains 0" is correct.

Peter Relson
z/OS Core Technology Design


----------------------------------------------------------------------
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to [email protected] with the message: INFO IBM-MAIN

Reply via email to