Well, I moved ISAUTH() unchanged to its own assembler module. No change in the error. I removed the IEABRCX DEFINE and bingo! It works.
BTW, the RPTSTG(ON) output shows nothing unusual. I can post it if anyone
thinks they would see something there.
FWIW, here is the complete assembled code of the new ISAUTH. The addresses
are of course different. CDSALEN is also a lot smaller because ISAUTH
basically needs none of the work area used by some of the other functions.
***That's not the key difference -- the smaller CDSALEN still fails if
IEABRCX DEFINE.*** Other than that, the only difference I can see relative
to the old code is the base/displacement branches rather than branch
relatives. (The EXTRN CEESTART is generated once per assembly by EDCPRLG.
It's earlier in the listing in the big module.)
I am *totally* mystified. Even if you posit a (HIGHLY unlikely!) bug in
TESTAUTH or LE, I don't see how substituting two BRC's for BC's could expose
it.
23 ISAUTH EDCPRLG DSALEN=CDSALEN,BASEREG
24+***------------------------------------
00000 00098 25+IHB0002DS DSECT
26+ DS D
27+ DS CL(120+0)
00080 00000 28+ ORG IHB0002DS
29+ DS CL(CDSALEN+8)
00098 00098 30+ ORG
31+ DS 0D
00090 32+IHB0002LG EQU *-IHB0002DS-8
0001C 000C0 33+CZAISAUT CSECT
34+*--------------------------------------
35+ DS 0H
R:F 0001C 36+ USING *,15
47F0 F040 0005C 37+ISAUTH B IHB0002B branch ar
38+* PPA1 constant area
14 39+ DC AL1(IHB0002N+4-*) offs
CE 40+ DC X'CE' . CEE
A0 41+ DC X'A0' . CEE
10 42+ DC AL1(0+0+16) . memb
00000038 43+ DC AL4(IHB0002P) . A(
00000000 44+ DC AL4(0) . A(
00000090 45+ DC AL4(IHB0002LG) to
0006 46+IHB0002N DC AL2(6) . leng
C9E2C1E4E3C8 47+ DC C'ISAUTH' untr
48+*--------------------------------------
49+ EXTRN CEESTART
50+*--------------------------------------
51+* PPA2 constant area
52+IHB0002P DS 0F forc
03 53+ DC X'03' . memb
00 54+ DC X'00' . memb
33 55+ DC X'33' . plis
00 56+ DC X'00' . CEE
00000000 57+ DC AL4(CEESTART)
00000000 58+ DC AL4(0) A(
00000048 59+ DC AL4(IHB0002T) . A(
60+*
61+* Time stamp area
62+IHB0002T DS 0F
F2F0F1F5 63+ DC CL4'2015' . yyyy
F0F5F2F8 64+ DC CL4'0528' . mmdd
F0F9F1F5F0F0 65+ DC CL6'091500' . hhmm
F0F1 66+ DC CL2'01' . vers
F0F1F0F0 67+ DC CL4'0100' . rele
68+*
69+IHB0002B DS 0H
70+***------------------------------------
90EC D00C 0000C 71+ STM 14,12,12(13) . save
72+***------------------------------------
5820 D04C 0004C 73+ L 2,76(,13) get
5800 F010 00010 74+ L 0,16(,15) size
1E02 75+ ALR 0,2 old
5500 C00C 0000C 76+ CL 0,12(,12) chec
47D0 F05C 00078 77+ BNH *+10 bran
58F0 C074 00074 78+ L 15,116(,12) load
05EF 79+ BALR 14,15 invo
80+* at this point R0 has the new NAB, R2
58F0 D048 00048 81+ L 15,72(,13)
90F0 2048 00048 82+ STM 15,0,72(2)
9210 2000 00000 83+ MVI 0(2),X'10'
50D0 2004 00004 84+ ST 13,4(,2) back
18D2 85+ LR 13,2 acti
86+***------------------------------------
87+ DROP 15
88+***------------------------------------
C0C0 FFFF FFBB 00000 89 LARL R12,CZAISAUT
R:C 00000 90 USING CZAISAUT,R12
91 *
92 * Issue the TESTAUTH
93 TESTAUTH FCTN=1
4110 0001 00001 94+ LA 1,1(0,0) SPECIFY F
4100 0FFF 00FFF 95+ LA 0,X'FFF' NO AUTH C
8900 0014 00014 96+ SLL 0,20 REG 0 N
0A77 97+ SVC 119
98 *
99 * TESTAUTH returns 0 = yes, 4 = no
100 * We return 1 = yes, 0 = no
88F0 0002 00002 101 SRL R15,2 Conv
13FF 102 LCR R15,R15 Conv
A7FA 0001 00001 103 AHI R15,1 Conv
104 *
105 EDCEPIL ,
58D0 D004 00004 106+ L 13,4(,13) addre
58E0 D00C 0000C 107+ L 14,12(,13) resto
982C D01C 0001C 108+ LM 2,12,28(13) resto
051E 109+ BALR 1,14 retur
0000001C 110+ DC AL4(ISAUTH)
Charles
-----Original Message-----
From: IBM Mainframe Discussion List [mailto:[email protected]] On
Behalf Of Charles Mills
Sent: Wednesday, May 27, 2015 8:36 PM
To: [email protected]
Subject: Re: Mysterious U4088-63 from RPTSTG(ON)
Sure. It's magical mystery code, but sure.
1669 ISAUTH EDCPRLG DSALEN=CDSALEN,BASEREG
1670+***------------------------------------
00000 00618 1671+IHB0092DS DSECT
1672+ DS D
1673+ DS CL(120+0)
00080 00000 1674+ ORG IHB0092DS
1675+ DS CL(CDSALEN+8)
00614 00614 1676+ ORG
1677+ DS 0D
00610 1678+IHB0092LG EQU *-IHB0092DS-8
00035 01510 1679+CZAMISC CSECT
1680+*--------------------------------------
1681+ DS 0H
R:F 00876 1682+ USING *,15
A7F4 0021 008B8 1685+ISAUTH BRC 15,IHB0092B (BC)
1686+* PPA1 constant area
14 1687+ DC AL1(IHB0092N+4-*) offs
CE 1688+ DC X'CE' . CEE
A0 1689+ DC X'A0' . CEE
10 1690+ DC AL1(0+0+16) . memb
00000894 1691+ DC AL4(IHB0092P) . A(
00000000 1692+ DC AL4(0) . A(
00000610 1693+ DC AL4(IHB0092LG) to
0006 1694+IHB0092N DC AL2(6) . leng
C9E2C1E4E3C8 1695+ DC C'ISAUTH' untr
1696+*--------------------------------------
1697+* PPA2 constant area
1698+IHB0092P DS 0F forc
03 1699+ DC X'03' . memb
00 1700+ DC X'00' . memb
33 1701+ DC X'33' . plis
00 1702+ DC X'00' . CEE
00000000 1703+ DC AL4(CEESTART)
00000000 1704+ DC AL4(0) A(
000008A4 1705+ DC AL4(IHB0092T) . A(
1706+*
1707+* Time stamp area
1708+IHB0092T DS 0F
F2F0F1F5 1709+ DC CL4'2015' . yyyy
F0F5F2F7 1710+ DC CL4'0527' . mmdd
F2F1F0F7F0F0 1711+ DC CL6'210700' . hhmm
F0F1 1712+ DC CL2'01' . vers
F0F1F0F0 1713+ DC CL4'0100' . rele
1714+*
1715+IHB0092B DS 0H
1716+***------------------------------------
90EC D00C 0000C 1717+ STM 14,12,12(13) . save
1718+***------------------------------------
5820 D04C 0004C 1719+ L 2,76(,13) get
5800 F010 00010 1720+ L 0,16(,15) size
1E02 1721+ ALR 0,2 old
5500 C00C 0000C 1722+ CL 0,12(,12) chec
A7D4 0005 008D4 1725+ BRC 13,*+10 (BC)
58F0 C074 00074 1726+ L 15,116(,12) load
05EF 1727+ BALR 14,15 invo
1728+* at this point R0 has the new NAB, R2
58F0 D048 00048 1729+ L 15,72(,13)
90F0 2048 00048 1730+ STM 15,0,72(2)
9210 2000 00000 1731+ MVI 0(2),X'10'
50D0 2004 00004 1732+ ST 13,4(,2) back
18D2 1733+ LR 13,2 acti
1734+***------------------------------------
1735+ DROP 15
1736+***------------------------------------
1756 EDCEPIL ,
58D0 D004 00004 1757+ L 13,4(,13) addre
58E0 D00C 0000C 1758+ L 14,12(,13) resto
982C D01C 0001C 1759+ LM 2,12,28(13) resto
051E 1760+ BALR 1,14 retur
00000876 1761+ DC AL4(ISAUTH)
Charles
----------------------------------------------------------------------
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to [email protected] with the message: INFO IBM-MAIN
