The goal is to read data from an address space (not a data space) using an ALET.
The idea is "Program A" creates its own ALET that another program ("Program B")
uses in its address space to read data from Program A's address space. Is this
possible ?
A summary of Program A code (AMODE31, RMODE24, authorized) is:
ALESERV EXTRACTH,STOKEN=stoken Returns STOKEN for the address space
MODESET KEY=ZERO Needed, or return code from ALESERV is not zero
ALESERV ADD AL=PASN,
STOKEN=stoken, input STOKEN
ALET=HomeALET, output ALET
CHKEAX=NO,
AL=PASN,
ACCESS=PUBLIC,
MF=(E,ALESERV)
SYSEVENT DONTSWAP make unswappable
WTOR sit on a WTOR so that Program B can access Program A's address
space
Result is HomeALET=x'01010038' which looks good, except that Program B gets an
0E0, Reason Code 29 (hex) abend using that ALET. "An ALET specified an access
list entry (ALE) that is not valid."
A summary of Program B code (AMODE31, RMODE24, authorized) is:
SAC 512 sets the ASC mode to AR mode
LAM 0,15,Zeros clear access registers
L R6,=x'00007000' load offset to data into GR6
LAM 6,6,=x'01010038' load ALET of Program A into AR6
Abend0E0 MVC Here,0(R6) copy data from Program A to Here
SAC 0 escape AR mode
Here ds CL32
SYSTEM COMPLETION CODE=0E0 REASON CODE=00000029
ACTIVE MODULE ADDRESS=00000000_00007000 OFFSET=00000050
NAME=PROGRAMB
DATA AT PSW 0000704A - C0809A66 C084D21F C05C6000
AR/GR 0: 00000000/00000064 1: 00000000/00006FF8
2: 00000000/00000040 3: 00000000/008DBD64
4: 00000000/008DBD40 5: 00000000/008FB058
6: 01010038/00007000 7: 00000000/00FBB880
8: 00000000/008FD608 9: 00000000/008D0CB0
A: 00000000/01DE1E00 B: 00000000/00000001
C: 00000000/80007000 D: 00000000/00008000
E: 00000000/80FD66D8 F: 00000000/80007000
Any help appreciated; Thanks --
Richard Zierdt
Confidentiality Warning/Avertissement de confidentialité:
This message is intended only for the named recipients. This message may
contain information that is privileged or confidential. If you are not the
named recipient, its employee or its agent, please notify us immediately and
permanently destroy this message and any copies you may have. Ce message est
destiné uniquement aux destinataires dûment nommés. Il peut contenir de
l'information privilégiée ou confidentielle. Si vous n'êtes pas le destinataire
dûment nommé, son employé ou son mandataire, veuillez nous aviser sans tarder
et supprimer ce message ainsi que toute copie qui peut en avoir été faite.
----------------------------------------------------------------------
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to [email protected] with the message: INFO IBM-MAIN