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

Reply via email to