* 00050043 * $MAC(RACHECK) COMP(SC1BN) PROD(RACF): 00150000 * 00200043 * DESCRIPTIVE_NAME = AUTHORIZATION CHECKING INTERFACE 00250043 * 00300043 * COPYRIGHT = 5740-XYN, 5740-XYS COPYRIGHT IBM CORP 1980, 1982 00325000 * LICENSED MATERIAL - PROGRAM PROPERTY OF IBM 00350000 * REFER TO COPYRIGHT INSTRUCTIONS FORM NUMBER G120-2083 00375000 * 00400043 * STATUS = OS/VS2 EBB1102 00450000 * 00550043 * FUNCTION = THIS INTERFACE ALLOWS THE CALLER TO CHECK THE USERS 00600000 * AUTHORIZATION TO A RESOURCE. @L5A 00650000 * 00804000 * CHANGE ACTIVITY = A000000-999999 @Y40RSGD 00805300 * RACF VERSION 1 RELEASE 2 @PC002PY 00806600 * RACF VERSION 1 RELEASE 3 @PC003PY 00807900 * $L4=HRF1402,RACF/140,810701,SJRDSD: @L4A 00809200 * OZ56981 @ZA56981 00810500 * OZ60572 @ZA60572 00811800 * $T1=UZ90210,SAF/RF15,810702,CNTDSD: @T1A 00813100 * $L5=HRF1502,RACF/150,811218,CNTDSD: @L5A 00814400 * OZ59764 @ZA59764 00815700 * $L6=HRF1602,RACF/160,830307,CNTDSD: @L6A 00815900 * UZ90283 @ZA90283 00816100 * UZ90284 @ZA90284 00816300 * UZ90285 @ZA90285 00816500 * 00817000 MACRO 00830000 &SYMBOL RACHECK &ENTITY=,&CLASS=,&PROFILE=,&VOLSER=,&OLDVOL=, -00860000 &ATTR=,&DSTYPE=,&LOG=,&MF=S,&INSTLN=, *00890000 &OWNER=, @L4A *00905000 &RACFIND=, @L5A *00910000 &ACCLVL=, @L5A *00915000 &ACEE=,&APPL=, @L6A *00926600 &GENERIC= @L6A 00938200 .* DEFINE LOCAL SET SYMBOLS 00950000 LCLA &BIT0,&BIT1,&BIT2,&BIT3,&BIT4,&BIT5,&BIT6,&BIT7,&CLNGTH 00980000 LCLA &BIX0,&BIX1,&BIX2,&BIX3,&BIX4,&BIX5,&BIX6,&BIX7 01010000 LCLA &OFFSET @PC003PY 01040000 LCLB &MFFLAG 01100043 LCLC &SUBSTR 01150043 .* DEFINE GLOBAL SET SYMBOLS @T1A 01155500 GBLB &ICHRAC ICHRAC - A FLAG WHICH, WHEN @T1A 01161000 .* ON, INDICATES THAT THIS MACRO @T1A 01166500 .* IS BEING INVOKED INTERNALLY @T1A 01172000 .* BY THE RACROUTE MACRO. @T1A 01177500 GBLC &ICHL THIS IS USED TO COMMUNICATE @T1A 01183000 .* TO THE RACROUTE MACRO THE @T1A 01188500 .* ADDRESS OF THE PARAMETER LIST. @T1A 01194000 .* PERFORM PARAMETER DIAGNOSIS 01200043 AIF ('&ENTITY' EQ '' AND '&PROFILE' EQ '' AND '&MF' EQ -01250043 'S' ).ERR00 @PC002PY 01300043 .ERTN00 ANOP 01350043 .* VALIDATE LOG PARAMETER 01400043 AIF ('&LOG' NE 'ASIS' AND '&LOG' NE 'NOFAIL' AND '&LOG' NE -01450043 'NONE' AND '&LOG' NE 'NOSTAT' AND -01483300 '&LOG' NE '').ERR02 @ZA60572 01516600 .ERTN02 ANOP 01550043 .* VALIDATE DSTYPE PARAMETER 01600043 AIF ('&DSTYPE' NE 'N' AND '&DSTYPE' NE 'V' -01650043 AND '&DSTYPE' NE 'M' -01675000 AND '&DSTYPE' NE '').ERR03 01700043 .ERTN03 ANOP 01750043 .* VALIDATE ATTR PARAMETER 01800043 AIF ('&ATTR' EQ 'READ' OR '&ATTR' EQ 'ALTER' -01850043 OR '&ATTR' EQ '').RCHK000 01900043 AIF ( '&ATTR' EQ 'UPDATE' OR '&ATTR' EQ -01950043 'CONTROL' OR '&ATTR'(1,1) EQ '(').RCHK000 02000043 AGO .ERR04 02050043 .RCHK000 ANOP 02100043 .ERTN04 ANOP 02150043 .* VALIDATE RACFIND PARAMETER @L5A 02160000 AIF ('&RACFIND' NE 'YES' AND '&RACFIND' NE 'NO' AND *02170000 T'&RACFIND NE 'O').ERR05 @L5A 02180000 .ERTN05 ANOP @L5A 02190000 .* VALIDATE GENERIC PARAMETER 02191600 AIF ('&GENERIC' EQ '').ERTN11 @L6A 02193200 AIF ('&GENERIC' NE 'YES' AND *02194800 '&GENERIC' NE 'ASIS').ERR11 @L6A 02196400 .ERTN11 ANOP , @L6A 02198000 .* VALIDATE MF PARAMETER 02200043 AIF ('&MF' NE 'S' AND '&MF' NE 'L' AND '&MF'(1,2) NE -02250043 '(E').ERR06 02300043 .ERTN06 ANOP 02350043 .* REGISTER SPECIFICATION OF ADDR TYPE PARAMETERS NOT ALLOWED WITH LIST 02400043 .* FORM 02450043 AIF ('&MF' NE 'L').RCHK100 02500000 AIF ('&INSTLN(1)' NE '&INSTLN').ERR07 02550043 .RCHK006 ANOP 02600043 AIF ('&ENTITY(1)' EQ '').RCHK010 @PC002PY 02650043 AIF ('&ENTITY(1)'(1,1) EQ '(').ERR07 02700043 .RCHK010 ANOP 02750043 AIF ('&CLASS' EQ '').RCHK020 02800043 AIF ('&CLASS'(1,1) EQ '(').ERR07 02850043 .RCHK020 ANOP 02900043 AIF ('&PROFILE' EQ '').RCHK030 02950043 AIF ('&PROFILE'(1,1) EQ '(').ERR07 03000043 .RCHK030 ANOP 03050043 AIF ('&VOLSER' EQ '').RCHK060 03100043 AIF ('&VOLSER'(1,1) EQ '(').ERR07 03150043 .RCHK060 ANOP 03200043 AIF ('&OLDVOL' EQ '').RCHK065 @PC002PY 03250043 AIF ('&OLDVOL'(1,1) EQ '(').ERR07 @PC002PY 03300043 .RCHK065 ANOP 03350043 AIF ('&ATTR' EQ '').RCHK070 @PC002PY 03400043 AIF ('&ATTR'(1,1) EQ '(').ERR07 @PC002PY 03450043 .RCHK070 ANOP 03500043 AIF ('&APPL' EQ '').RCHK075 @PC003PY 03506000 AIF ('&APPL'(1,1) EQ '(').ERR07 @PC003PY 03512000 .RCHK075 ANOP @PC003PY 03518000 AIF ('&ACEE' EQ '').RCHK080 @PC003PY 03524000 AIF ('&ACEE'(1,1) EQ '(').ERR07 @PC003PY 03530000 .RCHK080 ANOP @PC003PY 03536000 AIF ('&OWNER' EQ '').RCHK090 @L4A 03537500 AIF ('&OWNER'(1,1) EQ '(').ERR07 @L4A 03539000 .RCHK090 ANOP , @L4A 03540500 AIF ('&ACCLVL' EQ '').RCHK100 @L5A 03540600 AIF (T'&ACCLVL(1) EQ 'O').RCHK095 @L5A 03540700 AIF ('&ACCLVL(1)'(1,1) EQ '(').ERR07 @L5A 03540800 .RCHK095 ANOP , @L4A 03540900 AIF (N'&ACCLVL EQ 1).RCHK100 @L5A 03541000 AIF (T'&ACCLVL(2) EQ 'O').RCHK100 @L5A 03541100 AIF ('&ACCLVL(2)'(1,1) EQ '(').ERR07 @L5A 03541200 .RCHK100 ANOP @PC003PY 03542000 .ERTN07 ANOP 03550043 .* PRODUCE LIST FORM IF REQUESTED 03600043 AIF ('&MF' NE 'L').RCHK430 03650043 AIF ('&SYMBOL' EQ '').RCHK160 03700043 &SYMBOL DS 0F 03750043 AGO .RCHK16Y @L4A 03800000 .RCHK160 ANOP 03850043 DS 0F @L4A 03866600 .RCHK16Y ANOP , @L4A 03883200 ICH0&SYSNDX EQU * 03900043 .RCHK16X ANOP 03950043 .* PRODUCE LENGTH AND INSTALLATION DATA 04000043 .****** IF THIS MACRO WAS INVOKED BY THE RACROUTE MACRO @T1A 04010000 .****** THE 3 BYTES AFTER LENGTH ARE RESERVED, AND INSTLN IS @T1A 04020000 .****** GENERATED AT THE END OF THE LIST. @T1A 04030000 AIF (NOT &ICHRAC).RCHK16A @T1A 04040000 &ICHL DC AL1(56) LENGTH OF RACHECK PARAMETER LIST @T1A 04050000 DC AL3(0) @T1A 04060000 AGO .RCHK162 PRODUCE 1ST FLAG BYTE @T1A 04070000 .RCHK16A ANOP @T1A 04080000 DC AL1(56) - LENGTH OF RACHECK PARAMETER LIST @T1A 04090000 AIF ('&INSTLN' EQ '' OR *04100043 '&INSTLN(1)' NE '&INSTLN').RCHK161 @PC002PY 04150043 DC AL3(&INSTLN) - ADDRESS OF INSTALLATION DATA 04200043 AGO .RCHK162 04250043 .RCHK161 ANOP 04300043 DC AL3(0) - ADDRESS OF INSTALLATION DATA 04350043 .RCHK162 ANOP 04400043 .* PRODUCE FIRST FLAG BYTE IN LIST 04450043 AIF (T'&RACFIND EQ 'O').RCHK166 @L5A 04458300 &BIT0 SETA 1 RACFIND CODED @L5A 04466600 AIF ('&RACFIND' NE 'YES').RCHK166 @L5A 04474900 &BIT1 SETA 1 RACFIND=YES @L5A 04483200 .RCHK166 ANOP @L5A 04491500 AIF ('&ENTITY(2)' EQ '').RCHK170 @PC002PY 04500043 AIF ('&ENTITY(2)' NE 'CSA').RCHK170 04550043 &BIT7 SETA 1 @PC002PY 04600043 .RCHK170 ANOP 04650043 AIF ('&DSTYPE' NE 'V').RCHK180 @T1A 04700000 &BIT3 SETA 1 04750043 .RCHK180 ANOP @T1A 04756200 .************************************************** @T1A 04762400 .* IF THIS MACRO WAS INVOKED BY THE RACROUTE MACRO, @T1A 04768600 .* THE PARAMETER LIST HAS 31-BIT ADDRESSING. @T1A 04774800 .************************************************** @T1A 04781000 AIF (NOT &ICHRAC).RCHK200 @T1A 04787200 &BIT4 SETA 1 31-BIT ADDRESSING IN PARM LIST @T1A 04793400 .RCHK200 ANOP 04800043 AIF ('&LOG' NE 'NOFAIL' AND -04833300 '&LOG' NE 'NOSTAT').RCHK220 @ZA60572 04866600 &BIT5 SETA 1 04900043 .RCHK220 ANOP 04950043 AIF ('&LOG' NE 'NONE' AND -04983300 '&LOG' NE 'NOSTAT').RCHK230 @ZA60572 05016600 &BIT6 SETA 1 05050043 .RCHK230 ANOP 05100043 DC B'&BIT0&BIT1&BIT2&BIT3&BIT4&BIT5&BIT6&BIT7' 05150043 .****** IF THIS MACRO WAS INVOKED BY THE RACROUTE MACRO @T1A 05156200 .****** THE NEXT 3 BYTES ARE RESERVED AND ENTITY AND PROFILE @T1A 05162400 .****** GENERATED AT THE END OF THE LIST. @T1A 05168600 AIF (NOT &ICHRAC).RCHK235 @T1A 05174800 DC AL3(0) @T1A 05181000 AGO .RCHK270 @T1A 05187200 .RCHK235 ANOP @T1A 05193400 .* PRODUCE ENTITY NAME OR PROFILE ADDRESS @PC002PY 05200043 AIF ('&ENTITY(1)' EQ '').RCHK240 @PC002PY 05250043 AIF ('&ENTITY(1)'(1,1) EQ '(').RCHK240 05300043 DC AL3(&ENTITY(1)) - ENTITY NAME ADDRESS 05350043 AGO .RCHK270 05400043 .RCHK240 ANOP 05450043 AIF ('&PROFILE' EQ '').RCHK260 05500043 AIF ('&PROFILE'(1,1) EQ '(').RCHK260 05550043 DC AL3(&PROFILE) -PROFILE ADDRESS 05600043 AGO .RCHK270 05650043 .RCHK260 ANOP 05700043 DC AL3(0) - ENTITY OR PROFILE ADDRESS FIELD @PC002PY 05750043 .RCHK270 ANOP 05800043 .* PRODUCE SECOND FLAG BYTE WITH ATTR PARAMETER 05850043 .* RESET BIT SET SYMBOLS 05900043 &BIT0 SETA 0 05950043 &BIT1 SETA 0 06000043 &BIT2 SETA 0 06050043 &BIT3 SETA 0 06100043 &BIT4 SETA 0 06150043 &BIT5 SETA 0 06200043 &BIT6 SETA 0 06250043 &BIT7 SETA 0 06300043 AIF ('&ATTR' EQ '').RCHK335 06350043 AIF ('&ATTR'(1,1) EQ '(').RCHK340 06400043 AIF ('&ATTR' NE 'ALTER').RCHK280 06450043 &BIT0 SETA 1 06500043 AGO .RCHK340 06550043 .RCHK280 ANOP 06600043 AIF ('&ATTR' NE 'CONTROL').RCHK320 06650043 &BIT4 SETA 1 06700043 AGO .RCHK340 06750043 .RCHK320 ANOP 06800043 AIF ('&ATTR' NE 'UPDATE').RCHK330 06850043 &BIT5 SETA 1 06900043 AGO .RCHK340 06950043 .RCHK330 ANOP 07000043 AIF ('&ATTR' NE 'READ').RCHK340 07050043 .RCHK335 ANOP 07100043 &BIT6 SETA 1 07150043 .RCHK340 ANOP 07200043 DC B'&BIT0.000&BIT4&BIT5&BIT6.0' 07250043 .****** IF THIS MACRO WAS INVOKED BY THE RACROUTE MACRO @T1A 07256200 .****** THE NEXT 3 BYTES ARE RESERVED AND CLASS NAME ADDR IS @T1A 07262400 .****** GENERATED AT THE END OF THE LIST. @T1A 07268600 AIF (NOT &ICHRAC).RCHK345 @T1A 07274800 DC AL3(0) @T1A 07281000 AGO .RCHK370 @T1A 07287200 .RCHK345 ANOP @T1A 07293400 .* PRODUCE CLASS NAME ADDRESS IF REQUIRED 07300043 AIF ('&CLASS' EQ '').RCHK360 07350043 AIF ('&CLASS'(1,1) EQ '(').RCHK360 07400043 AIF ('&CLASS'(1,1) EQ '''').RCHK350 07450043 DC AL3(&CLASS) - CLASS NAME ADDRESS 07500043 AGO .RCHK370 07550043 .RCHK350 ANOP 07600043 DC AL3(ICH1&SYSNDX) CLASS NAME ADDRESS WITHIN LIST @PC003PY 07650000 AGO .RCHK370 07700043 .RCHK360 ANOP 07750043 DC AL3(0) - CLASS NAME ADDRESS FIELD 07800043 .RCHK370 ANOP 07850043 .* PRODUCE THIRD FLAG BYTE 07900043 &BIT1 SETA 0 @L4A 07925000 &BIT2 SETA 0 07950043 &BIT3 SETA 0 @L6A 07954100 &BIT4 SETA 0 @L6A 07958200 &BIT5 SETA 0 @L6A 07962300 AIF ('&DSTYPE' NE 'M').RCHK372 @L4A 07966600 &BIT1 SETA 1 @L4A 07983200 .RCHK372 AIF ('&PROFILE' EQ '').RCHK373 08000043 &BIT2 SETA 1 08050043 .RCHK373 ANOP 08100043 AIF ('&GENERIC' EQ '' OR '&GENERIC' EQ 'ASIS').RCHK374 @L6A 08111200 &BIT5 SETA 1 GENERIC=YES SPECIFIED @L6A 08122400 .RCHK374 ANOP , @L6A 08133600 DC B'0&BIT1&BIT2&BIT3&BIT4&BIT5.00' 1ST PARM FLAGS @L6A 08144800 .****** IF THIS MACRO WAS INVOKED BY THE RACROUTE MACRO @T1A 08156200 .****** THE NEXT 3 BYTES ARE RESERVED AND VOLSER ADDR IS @T1A 08162400 .****** GENERATED AT THE END OF THE LIST. @T1A 08168600 AIF (NOT &ICHRAC).RCHK380 @T1A 08174800 DC AL3(0) @T1A 08181000 AGO .RCHK410 @T1A 08187200 .RCHK380 ANOP @T1A 08193400 AIF ('&VOLSER' EQ '').RCHK400 08200043 AIF ('&VOLSER'(1,1) EQ '(').RCHK400 08250043 DC AL3(&VOLSER) - VOLSER ADDRESS 08300043 AGO .RCHK410 08350043 .RCHK400 ANOP 08400043 DC AL3(0) - VOLSER ADDR FIELD 08450043 .RCHK410 ANOP 08500043 AIF ('&OLDVOL' EQ '').RCHK415 @PC002PY 08550000 AIF ('&OLDVOL'(1,1) EQ '(').RCHK415 @PC002PY 08560000 DC A(&OLDVOL) - OLD VOLSER ADDRESS @PC002PY 08570000 AGO .RCHK416 @PC002PY 08580000 .RCHK415 ANOP @PC002PY 08590000 DC A(0) - OLD VOLSER ADDR FIELD @PC002PY 08600000 .RCHK416 ANOP @PC002PY 08610000 AIF ('&APPL' EQ '').RCHK41B @PC003PY 08620000 AIF ('&APPL'(1,1) EQ '(').RCHK41B @PC003PY 08630000 AIF ('&APPL'(1,1) EQ '''').RCHK41A @PC003PY 08640000 DC A(&APPL) - APPL NAME ADDRESS @PC003PY 08650000 AGO .RCHK41C @PC003PY 08660000 .RCHK41A ANOP @PC003PY 08670000 DC A(ICH2&SYSNDX) - APPL NAME ADDRESS @PC003PY 08680000 AGO .RCHK41C @PC003PY 08690000 .RCHK41B ANOP @PC003PY 08700000 DC A(0) - APPL ADDRESS @PC003PY 08710000 .RCHK41C ANOP @PC003PY 08720000 AIF ('&ACEE' EQ '').RCHK41D @PC003PY 08730000 AIF ('&ACEE'(1,1) EQ '(').RCHK41D @PC003PY 08740000 DC A(&ACEE) - ACEE NAME ADDRESS @PC003PY 08750000 AGO .RCHK41E @PC003PY 08760000 .RCHK41D ANOP @PC003PY 08770000 DC A(0) - ACEE ADDRESS @PC003PY 08780000 .RCHK41E ANOP @PC003PY 08790000 AIF ('&OWNER' EQ '').RCHK41F @L4A 08791200 AIF ('&OWNER'(1,1) EQ '(').RCHK41F @L4A 08792400 DC A(&OWNER) - OWNER NAME ADDRESS. @L4A 08793600 AGO .RCHK41G @L4A 08794800 .RCHK41F ANOP , @L4A 08796000 DC A(0) - OWNER ADDRESS. @L4A 08797200 .RCHK41G ANOP , @L4A 08798400 .****************************************************** @T1A 08798500 .* IF THIS MACRO WAS INVOKED INTERNALLY BY THE RACROUTE @T1A 08798600 .* MACRO, INSTLN,CLASS,ENTITY,PROFILE,AND VOLSER ARE @T1A 08798700 .* PRODUCED HERE AS 31-BIT ADDRESSES. @T1A 08798800 .****************************************************** @T1A 08798900 AIF (NOT &ICHRAC).RCHK41Z @T1A 08799000 .* PRODUCE INSTLN ADDRESS FIELD @T1A 08799100 AIF ('&INSTLN' EQ '' OR *08799200 '&INSTLN(1)' NE '&INSTLN').RCHK41H @T1A 08799300 DC A(&INSTLN) ADDRESS OF INSTALLATION DATA @T1A 08799400 AGO .RCHK41J @T1A 08799500 .RCHK41H ANOP @T1A 08799600 DC A(0) ADDRESS OF INSTALLATION DATA @T1A 08799700 .RCHK41J ANOP @T1A 08799800 .* PRODUCE ENTITY NAME OR PROFILE ADDRESS @T1A 08799900 AIF ('&ENTITY(1)' EQ '').RCHK41K @T1A 08800000 AIF ('&ENTITY(1)'(1,1) EQ '(').RCHK41K @T1A 08800100 DC A(&ENTITY(1)) ENTITY NAME ADDRESS @T1A 08800200 AGO .RCHK41M @T1A 08800300 .RCHK41K ANOP @T1A 08800400 AIF ('&PROFILE' EQ '').RCHK41L @T1A 08800500 AIF ('&PROFILE'(1,1) EQ '(').RCHK41L @T1A 08800600 DC A(&PROFILE) PROFILE ADDRESS @T1A 08800700 AGO .RCHK41M @T1A 08800800 .RCHK41L ANOP @T1A 08800900 DC A(0) ENTITY OR PROFILE ADDRESS FIELD @T1A 08801000 .RCHK41M ANOP @T1A 08801100 .* PRODUCE CLASS NAME ADDRESS IF REQUIRED @T1A 08801200 AIF ('&CLASS' EQ '').RCHK41P @T1A 08801300 AIF ('&CLASS'(1,1) EQ '(').RCHK41P @T1A 08801400 AIF ('&CLASS'(1,1) EQ '''').RCHK41N @T1A 08801500 DC A(&CLASS) CLASS NAME ADDRESS @T1A 08801600 AGO .RCHK41Q @T1A 08801700 .RCHK41N ANOP @T1A 08801800 DC A(ICH1&SYSNDX) CLASS NAME ADDRESS WITHIN LIST @T1A 08801900 AGO .RCHK41Q @T1A 08802000 .RCHK41P ANOP @T1A 08802100 DC A(0) CLASS NAME ADDRESS FIELD @T1A 08802200 .RCHK41Q ANOP @T1A 08802300 .* PRODUCE VOLSER ADDRESS FIELD @T1A 08802400 AIF ('&VOLSER' EQ '').RCHK41R @T1A 08802500 AIF ('&VOLSER'(1,1) EQ '(').RCHK41R @T1A 08802600 DC A(&VOLSER) VOLSER ADDRESS @T1A 08802700 AGO .RCHK41Z @T1A 08802800 .RCHK41R ANOP @T1A 08802900 DC A(0) VOLSER ADDR FIELD @T1A 08803000 .RCHK41Z ANOP @T1A 08803100 AIF (&ICHRAC).RCHK41Y @L5A 08803200 .* GENERATE FOUR UNUSED FULLWORDS FOR 31-BIT COMPATIBILITY @L5A 08803300 DC 4A(0) @L5A 08803400 .RCHK41Y ANOP @L5A 08803500 AIF ('&ACCLVL' NE '').RCHKACH @L5A 08803600 DC A(0) - ACCESS VALUE ADDRESS. @L5A 08803700 DC A(0) - 2ND ACCESS ADDRESS. @L5A 08803800 AGO .RCHKACI @L5A 08803900 .RCHKACH ANOP , @L5A 08804000 AIF (T'&ACCLVL(1) NE 'O').RCHKACJ @L5A 08804100 DC A(0) - ACCESS VALUE ADDRESS. @L5A 08804200 AGO .RCHKACL @L5A 08804300 .RCHKACJ ANOP , @L5A 08804400 AIF ('&ACCLVL(1)'(1,1) NE '(').RCHKACK @L5A 08804500 DC A(0) - ACCESS VALUE ADDRESS. @L5A 08804600 AGO .RCHKACL @L5A 08804700 .RCHKACK ANOP , @L5A 08804800 DC A(&ACCLVL(1)) - ACCESS VALUE ADDRESS. @L5A 08804900 .RCHKACL ANOP , @L5A 08805000 AIF (T'&ACCLVL(2) NE 'O').RCHKACM @L5A 08805100 DC A(0) - 2ND ACCESS ADDRESS. @L5A 08805200 AGO .RCHKACI @L5A 08805300 .RCHKACM ANOP , @L5A 08805400 AIF ('&ACCLVL(2)'(1,1) NE '(').RCHKACN @L5A 08805500 DC A(0) - 2ND ACCESS ADDRESS. @L5A 08805600 AGO .RCHKACI @L5A 08805700 .RCHKACN ANOP , @L5A 08805800 DC A(&ACCLVL(2)) - 2ND ACCESS ADDRESS. @L5A 08805900 .RCHKACI ANOP , @L5A 08806000 .* IF CLASSNAME SPECIFIED EXPLICITLY, PRODUCE IT BELOW LIST FORM 08806100 AIF ('&CLASS' EQ '').RCHK417 08810000 AIF ('&CLASS'(1,1) NE '''').RCHK417 08820000 &CLNGTH SETA K'&CLASS-2 08830000 ICH1&SYSNDX EQU *+1 @PC003PY 08840000 DC AL2(&CLNGTH) - CLASS NAME LENGTH 09100043 .* NOTE THAT TWO BYTES MUST BE RESERVED FOR ALIGNMENT OF SVC THAT MAY 09150043 .* FOLLOW IN STANDARD FORM USAGE 09200043 DC CL8&CLASS 09250043 .* IF APPLNAME SPECIFIED EXPLICITLY, PRODUCE IT BELOW LIST FORM 09300000 .RCHK417 ANOP @PC003PY 09310000 AIF ('&APPL' EQ '').RCHK420 @PC003PY 09320000 AIF ('&APPL'(1,1) NE '''').RCHK420 @PC003PY 09330000 ICH2&SYSNDX DC CL8&APPL @PC003PY 09340000 .* LIST FORM COMPLETE - TEST FOR STANDARD FORM PASS THROUGH LIST FORM 09350000 .RCHK420 ANOP 09360000 AIF (&MFFLAG).RCHK520 09370000 MEXIT 09450043 .RCHK430 ANOP 09500043 AIF ('&MF(1)' EQ 'E').RCHK530 09550043 .* STANDARD FORM REQUESTED 09600043 &SYMBOL DS 0H 09620000 &MFFLAG SETB 1 SET TRUE FOR PASS THROUGH LIST FORM 09650043 .* PRODUCE INSTRUCTIONS TO MODIFY IN-LINE LIST FORM WITH REGISTER ADDRS 09700043 AIF ('&INSTLN' EQ '' OR '&INSTLN(1)' EQ '&INSTLN').RCHK431 09750043 AIF (NOT &ICHRAC).RCHK43A @T1A 09760000 ST &INSTLN(1),ICH0&SYSNDX+32 STORE INSTLN DATA ADDR @T1A 09770000 AGO .RCHK431 @T1A 09780000 .RCHK43A ANOP @T1A 09790000 STCM &INSTLN(1),7,ICH0&SYSNDX+1 -STORE INSTALLATION DATA ADDR 09800043 .RCHK431 ANOP 09850043 AIF ('&ENTITY(1)' EQ '').RCHK440 @PC002PY 09900043 AIF ('&ENTITY(1)'(1,1) NE '(').RCHK440 @PC002PY 09950043 &SUBSTR SETC '&ENTITY(1)'(2,K'&ENTITY(1)-2) 10000043 AIF (NOT &ICHRAC).RCHK435 @T1A 10010000 ST &SUBSTR,ICH0&SYSNDX+36 STORE ENTITY NAME ADDR @T1A 10020000 AGO .RCHK440 @T1A 10030000 .RCHK435 ANOP @T1A 10040000 STCM &SUBSTR,7,ICH0&SYSNDX+5 - STORE ENTITY NAME ADDRESS 10050043 .RCHK440 ANOP 10100043 AIF ('&PROFILE' EQ '').RCHK460 10150043 AIF ('&PROFILE'(1,1) NE '(').RCHK460 10200043 AIF (NOT &ICHRAC).RCHK450 @T1A 10210000 ST &PROFILE(1),ICH0&SYSNDX+36 STORE PROFILE ADDR @T1A 10220000 AGO .RCHK460 @T1A 10230000 .RCHK450 ANOP @T1A 10240000 STCM &PROFILE(1),7,ICH0&SYSNDX+5 - STORE PROFILE ADDRESS 10250043 .RCHK460 ANOP 10300043 AIF ('&CLASS' EQ '').RCHK470 10350043 AIF ('&CLASS'(1,1) NE '(').RCHK470 10400043 AIF (NOT &ICHRAC).RCHK465 @T1A 10410000 ST &CLASS(1),ICH0&SYSNDX+40 STORE CLASS NAME ADDR @T1A 10420000 AGO .RCHK470 @T1A 10430000 .RCHK465 ANOP @T1A 10440000 STCM &CLASS(1),7,ICH0&SYSNDX+9 - STORE CLASS NAME ADDRESS 10450043 .RCHK470 ANOP 10500043 AIF ('&ATTR' EQ '').RCHK495 10550043 AIF ('&ATTR'(1,1) NE '(').RCHK495 10600043 STC &ATTR(1),ICH0&SYSNDX+8 - STORE ATTR VALUE 10650043 .RCHK495 ANOP 10700043 AIF ('&VOLSER' EQ '').RCHK500 10750043 AIF ('&VOLSER'(1,1) NE '(').RCHK500 10800043 AIF (NOT &ICHRAC).RCHK498 @T1A 10810000 ST &VOLSER(1),ICH0&SYSNDX+44 STORE VOLSER ADDR @T1A 10820000 AGO .RCHK500 @T1A 10830000 .RCHK498 ANOP @T1A 10840000 STCM &VOLSER(1),7,ICH0&SYSNDX+13 - STORE VOLSER ADDRESS 10850043 .RCHK500 ANOP 10900043 AIF ('&OLDVOL' EQ '').RCHK501 @PC002PY 10950000 AIF ('&OLDVOL'(1,1) NE '(').RCHK501 @PC002PY 10970000 ST &OLDVOL(1),ICH0&SYSNDX+16 - STORE OLD VOLSER @PC002PY 10990000 .RCHK501 ANOP 11010000 AIF ('&APPL' EQ '').RCHK502 @PC003PY 11030000 AIF ('&APPL'(1,1) NE '(').RCHK502 @PC003PY 11050000 ST &APPL(1),ICH0&SYSNDX+20 - STORE APPL ADDRESS @PC003PY 11070000 .RCHK502 ANOP @PC003PY 11090000 AIF ('&ACEE' EQ '').RCHK503 @PC003PY 11110000 AIF ('&ACEE'(1,1) NE '(').RCHK503 @PC003PY 11130000 ST &ACEE(1),ICH0&SYSNDX+24 - STORE ACEE ADDRESS @PC003PY 11150000 .RCHK503 ANOP @PC003PY 11170000 AIF ('&OWNER' EQ '').RCHK504 @L4A 11174000 AIF ('&OWNER'(1,1) NE '(').RCHK504 @L4A 11178000 ST &OWNER(1),ICH0&SYSNDX+28 - STORE OWNER ADDRESS. @L4A 11182000 .RCHK504 ANOP , @L4A 11186000 AIF ('&ACCLVL' EQ '').RCHK506 @L5A 11186400 AIF ('&ACCLVL(1)'(1,1) NE '(').RCHK505 @L5A 11186800 AIF (T'&ACCLVL(1) EQ 'O').RCHK505 @L5A 11187200 ST &ACCLVL(1),ICH0&SYSNDX+48 - STORE ACCESS ADDRESS. @L5A 11187600 .RCHK505 ANOP , @L5A 11188000 AIF (T'&ACCLVL(2) EQ 'O').RCHK506 @L5A 11188400 AIF ('&ACCLVL(2)'(1,1) NE '(').RCHK506 @L5A 11188800 ST &ACCLVL(2),ICH0&SYSNDX+52 - STORE 2ND ACC ADDR. @L5A 11189200 .RCHK506 ANOP , @L5A 11189600 .* LIST FORM MODIFICATION COMPLETE - PRODUCE LIST FORM WITH BAL AROUND 11190000 CNOP 0,4 11210000 &OFFSET SETA 60 @L5A 11230000 AIF ('&CLASS' EQ '').RCHK518 11250000 AIF ('&CLASS'(1,1) NE '''').RCHK518 11270000 &OFFSET SETA &OFFSET+10 @PC003PY 11290000 .RCHK518 ANOP 11310000 AIF ('&APPL' EQ '').RCHK519 @PC003PY 11330000 AIF ('&APPL'(1,1) NE '''').RCHK519 @PC003PY 11350000 &OFFSET SETA &OFFSET+8 @PC003PY 11370000 .RCHK519 ANOP @PC003PY 11390000 BAL 1,*+&OFFSET - POINT REG 1 AT PARM LIST 11410000 AGO .RCHK160 11430000 .RCHK520 ANOP 11450000 .************************************************************ @T1A 11483300 .* IF THIS MACRO WAS INVOKED INTERNALLY BY THE RACROUTE @T1A 11516600 .* MACRO, SIMPLY EXIT RATHER THAN GOING TO THE RACF ROUTINE. @T1A 11549900 .************************************************************ @T1A 11583200 AIF (&ICHRAC).RCHK525 @T1A 11616500 .* RETURN FROM LIST FORM TO PRODUCE SVC 11650043 SVC 130 INVOKE RACHECK SVC ROUTINE 11700043 .RCHK525 ANOP @T1A 11725000 MEXIT 11750043 .RCHK530 ANOP 11800043 .* PRODUCE EXECUTE FORM OF MACRO 11850043 AIF (&ICHRAC).RCK530A @T1A 11875000 &SYMBOL IHBINNRA &MF(2) - POINT REG1 AT LIST FORM 11900043 AGO .RCHK53A @T1A 11905000 .*********************************************************** @T1A 11910000 .* IF THIS MACRO IS BEING INVOKED INTERNALLY BY THE RACROUTE @T1A 11915000 .* MACRO, PICK UP THE ADDRESS OF THE RACHECK PARAMETER LIST @T1A 11920000 .* FROM THE RACROUTE PARAMETER LIST. @T1A 11925000 .*********************************************************** @T1A 11930000 .RCK530A ANOP @T1A 11935000 A 1,36(1) POINT REG 1 AT RACHECK LIST @T1A 11940000 .RCHK53A ANOP @T1A 11945000 .* PRODUCE INSTRUCTIONS TO MODIFY LIST 11950043 .* PRODUCE INSTALLATION DATA ADDRESS 12000043 AIF ('&INSTLN' EQ '').RCHK531 12050043 AIF ('&INSTLN'(1,1) NE '(').RCHK532 12100043 AIF (NOT &ICHRAC).RCHK53B @T1A 12110000 ST &INSTLN(1),32(1) STORE INSTALLATION ADDR @T1A 12120000 AGO .RCHK531 @T1A 12130000 .RCHK53B ANOP @T1A 12140000 STCM &INSTLN(1),7,1(1) - STORE INSTALLATION ADDR 12150043 AGO .RCHK531 12200043 .RCHK532 ANOP 12250043 LA 0,&INSTLN - ADDRESS INSTALLATION DATA ADDRESS 12300043 AIF (NOT &ICHRAC).RCHK53C @T1A 12310000 ST 0,32(1) STORE INSTALLATION ADDR @T1A 12320000 AGO .RCHK531 @T1A 12330000 .RCHK53C ANOP @T1A 12340000 STCM 0,7,1(1) - STORE INSTALLATION DATA ADDRESS 12350043 .RCHK531 ANOP 12400043 .* FLAGS FIELD 12450043 AIF ('&ENTITY(2)' EQ '' AND '&DSTYPE' EQ '' AND '&LOG' EQ ''X12462500 AND '&RACFIND' EQ '').RCHK534 @L6A 12466000 AGO .RCHK535 @L6A 12469500 .RCHK534 ANOP , @L6A 12473000 AIF ('&GENERIC' EQ '').RCHK623 @L6A 12476500 AGO .RCHK616 @L6A 12480000 .RCHK535 ANOP , @L6A 12483500 &BIX0 SETA 1 ASSUME THAT @L5A 12487500 &BIX1 SETA 1 RACFIND IS NOT CODED @L5A 12500000 AIF ('&RACFIND' EQ '').RCHK540 @L5A 12512500 &BIX0 SETA 0 RACFIND @L5A 12525000 &BIX1 SETA 0 IS @L5A 12537500 &BIT0 SETA 1 CODED @L5A 12550000 AIF ('&RACFIND' EQ 'NO').RCHK540 @L5A 12562500 &BIT1 SETA 1 RACFIND=YES CODED @L5A 12575000 .RCHK540 ANOP @L5A 12587500 &BIX7 SETA 1 ASSUME ENTITY(2) OMMITTED @PC002PY 12600043 AIF ('&ENTITY(2)' EQ '').RCHK550 SKIP IF OMMITED @PC002PY 12650043 &BIX7 SETA 0 CLEAR CSA BIT @PC002PY 12700043 AIF ('&ENTITY(2)' NE 'CSA').RCHK550 SKIP NOT VALID @PC002PY 12750043 &BIT7 SETA 1 SET CSA OPTION BIT @PC002PY 12800043 .RCHK550 ANOP 12850043 &BIX3 SETA 1 ASSUME DSTYPE OMMITED @PC002PY 12900043 AIF ('&DSTYPE' EQ '' ).RCHK580 SKIP IF OMMITED @PC002PY 12950043 &BIX3 SETA 0 CLEAR DSTYPE BIT @PC002PY 13000043 AIF ('&DSTYPE' NE 'V' ).RCHK580 SKIP NOT VSAM @PC002PY 13050043 &BIT3 SETA 1 SET DSTYPE=V BIT @PC002PY 13100043 .RCHK580 ANOP 13150043 &BIX5 SETA 1 ASSUME LOG OMITTED @PC002PY 13200043 &BIX6 SETA 1 ASSUME LOG OMMITED @PC002PY 13250043 AIF ('&LOG' EQ '').RCHK610 SKIP IF OMITTED @PC002PY 13300043 &BIX5 SETA 0 CLEAR LOG BITS @PC002PY 13350043 &BIX6 SETA 0 @PC002PY 13400043 AIF ('&LOG' NE 'NOFAIL' AND -13433300 '&LOG' NE 'NOSTAT').RCHK600 @ZA60572 13466600 &BIT5 SETA 1 13500043 .RCHK600 ANOP 13550043 AIF ('&LOG' NE 'NONE' AND -13583300 '&LOG' NE 'NOSTAT').RCHK610 @ZA60572 13616600 &BIT6 SETA 1 13650043 .RCHK610 ANOP 13700043 .****************************************************** @T1A 13705500 .* IF THIS MACRO WAS INVOKED INTERNALLY BY THE RACROUTE @T1A 13711000 .* MACRO, THE PARAMETER LIST HAS 31-BIT ADDRESSING. @T1A 13716500 .****************************************************** @T1A 13722000 &BIX4 SETA 0 ASSUME 24-BIT ADDRESSING @T1A 13727500 AIF (NOT &ICHRAC).RCHK615 @T1A 13733000 &BIT4 SETA 1 31-BIT ADDRESSING @T1A 13738500 .RCHK615 ANOP @T1A 13744000 NI 4(1),B'&BIX0&BIX1&BIX2&BIX3&BIX4&BIX5&BIX6&BIX7' 13750043 OI 4(1),B'&BIT0&BIT1&BIT2&BIT3&BIT4&BIT5&BIT6&BIT7' FLAGS 13800043 .RCHK616 ANOP , @L6A 13804100 AIF ('&DSTYPE' EQ 'M' OR T'&DSTYPE EQ 'O').RCHK620 @ZA56981 13808200 AIF ('&GENERIC' NE 'ASIS').RCHK618 @L6A 13812300 .RCHK617 ANOP , @L6A 13816400 NI 12(1),B'10111011' RESET GENERIC=ASIS, DSTYPE=M @L6A 13820500 AGO .RCHK624 @L6A 13824600 .RCHK618 ANOP , @L6A 13828700 NI 12(1),B'10111111' - RESET DSTYPE=M @ZA56981 13833200 .RCHK620 ANOP 13850043 AIF ('&DSTYPE' NE 'M').RCHK622 @L4A 13870000 NI 4(1),B'11101111' - RESET DSTYPE=V @ZA56981 13876600 AIF ('&GENERIC' NE 'YES').RCHK621 @L6A 13879900 OI 12(1),B'01000100' GENERIC=YES, DSTYPE=M @L6A 13883200 AGO .RCHK624 @L6A 13886500 .RCHK621 ANOP , @L4A 13890000 OI 12(1),B'01000000' - SET DSTYPE=M FLAG. @L6A 13891000 AGO .RCHK623 @L6A 13892000 .RCHK622 ANOP , @L4A 13893000 AIF ('&GENERIC' NE 'YES').RCHK623 @L6A 13894000 OI 12(1),B'00000100' - SET GENERIC=YES FLAG @L6A 13895000 .RCHK623 ANOP , @L6A 13896000 AIF ('&GENERIC' NE 'ASIS').RCHK624 @L6A 13897000 NI 12(1),B'11111011' - RESET GENERIC=ASIS FLAG @L6A 13898000 .RCHK624 ANOP , @L6A 13899000 .* HANDLE ADDRESS TYPE PARAMETERS 13900043 AIF ('&ENTITY(1)' EQ '').RCHK640 @PC002PY 13950043 AIF ('&ENTITY(1)'(1,1) NE '(').RCHK630 14000043 AIF (NOT &ICHRAC).RCHK625 @T1A 14010000 ST &ENTITY(1),36(1) STORE ENTITY NAME ADDRESS @T1A 14020000 AGO .RCHK680 @T1A 14030000 .RCHK625 ANOP @T1A 14040000 STCM &ENTITY(1),7,5(1) - STORE ENTITY NAME ADDRESS 14050043 AGO .RCHK680 14100043 .RCHK630 ANOP 14150043 LA 0,&ENTITY(1) - MOVE ENTITY NAME ADDRESS 14200043 AIF (NOT &ICHRAC).RCHK635 @T1A 14210000 ST 0,36(1) INTO PARM LIST @T1A 14220000 AGO .RCHK680 @T1A 14230000 .RCHK635 ANOP @T1A 14240000 STCM 0,7,5(1) - INTO PARM LIST 14250043 AGO .RCHK680 14300043 .RCHK640 ANOP 14350043 AIF ('&PROFILE' EQ '').RCHK680 14400043 AIF ('&PROFILE'(1,1) NE '(').RCHK670 14450043 AIF (NOT &ICHRAC).RCHK650 @T1A 14460000 ST &PROFILE(1),36(1) STORE PROFILE ADDRESS @T1A 14470000 AGO .RCHK680 @T1A 14480000 .RCHK650 ANOP @T1A 14490000 STCM &PROFILE(1),7,5(1) - STORE PROFILE ADDRESS 14500043 AGO .RCHK680 14550043 .RCHK670 ANOP 14600043 LA 0,&PROFILE - MOVE PROFILE ADDRESS 14650043 AIF (NOT &ICHRAC).RCHK675 @T1A 14660000 ST 0,36(1) INTO PARM LIST @T1A 14670000 AGO .RCHK680 @T1A 14680000 .RCHK675 ANOP @T1A 14690000 STCM 0,7,5(1) - INTO PARM LIST 14700043 .RCHK680 ANOP 14750043 .* PRODUCE SECOND FLAGS BYTE WITH ATTR SPECS 14800043 AIF ('&ATTR' EQ '').RCHK750 14850043 AIF ('&ATTR'(1,1) EQ '(').RCHK745 14900043 AIF ('&ATTR' NE 'ALTER').RCHK690 14950043 MVI 8(1),X'80' - SET FOR ALTER ACCESS 15000043 AGO .RCHK750 15050043 .RCHK690 ANOP 15100043 AIF ('&ATTR' NE 'UPDATE').RCHK730 15150043 MVI 8(1),X'04' SET FOR UPDATE ACCESS 15200043 AGO .RCHK750 15250043 .RCHK730 ANOP 15300043 AIF ('&ATTR' NE 'READ').RCHK740 15350043 MVI 8(1),X'02' SET FOR READ ACCESS 15400043 AGO .RCHK750 15450043 .RCHK740 ANOP 15500043 AIF ('&ATTR' NE 'CONTROL').RCHK750 15550043 MVI 8(1),X'08' SET FOR CONTROL ACCESS 15600043 AGO .RCHK750 15650043 .RCHK745 ANOP 15700043 STC &ATTR(1),8(1) - STORE ATTR VALUE IN LIST FORM 15750043 .RCHK750 ANOP 15800043 .* HANDLE CLASS PARAMETER 15850043 AIF ('&CLASS' EQ '').RCHK756 15900043 AIF ('&CLASS'(1,1) EQ '''').ERR09 15950043 AIF ('&CLASS'(1,1) NE '(').RCHK754 16000043 AIF (NOT &ICHRAC).RCHK752 @T1A 16010000 ST &CLASS(1),40(1) STORE CLASS NAME ADDRESS @T1A 16020000 AGO .RCHK756 @T1A 16030000 .RCHK752 ANOP @T1A 16040000 STCM &CLASS(1),7,9(1) - STORE CLASS NAME ADDRESS 16050043 AGO .RCHK756 16100043 .RCHK754 ANOP 16150043 LA 0,&CLASS - MOVE CLASS NAME ADDRESS 16200043 AIF (NOT &ICHRAC).RCHK755 @T1A 16210000 ST 0,40(1) INTO PARM LIST @T1A 16220000 AGO .RCHK756 @T1A 16230000 .RCHK755 ANOP @T1A 16240000 STCM 0,7,9(1) - INTO PARM LIST 16250043 .ERTN09 ANOP 16300043 .RCHK756 ANOP 16350043 .* MODIFY THIRD FLAGS BYTE IF FIRST PARM SPECIFIED 16400043 AIF ('&PROFILE' EQ '').RCHK759 16450043 OI 12(1),B'00100000' SET FOR PROFILE ADDRESS @ZA56981 16500000 .RCHK759 ANOP 16550043 .* HANDLE VOLSER PARAMETERS 16600043 AIF ('&VOLSER' EQ '').RCHK810 16650043 AIF ('&VOLSER'(1,1) NE '(').RCHK800 16700043 AIF (NOT &ICHRAC).RCHK75A @T1A 16710000 ST &VOLSER(1),44(1) STORE VOLSER ADDRESS @T1A 16720000 AGO .RCHK810 @T1A 16730000 .RCHK75A ANOP @T1A 16740000 STCM &VOLSER(1),7,13(1) - STORE VOLSER ADDRESS 16750043 AGO .RCHK810 16800043 .RCHK800 ANOP 16850043 LA 0,&VOLSER - MOVE VOLSER ADDRESS 16900043 AIF (NOT &ICHRAC).RCHK805 @T1A 16910000 ST 0,44(1) INTO PARM LIST @T1A 16920000 AGO .RCHK810 @T1A 16930000 .RCHK805 ANOP @T1A 16940000 STCM 0,7,13(1) - INTO PARM LIST 16950043 .RCHK810 ANOP 17000043 AIF ('&OLDVOL' EQ '').RCHK820 @PC00P2Y 17050043 AIF ('&OLDVOL'(1,1) NE '(').RCHK815 @PC002PY 17100043 ST &OLDVOL(1),16(1) - STORE OLD VOLSER ADDRESS @PC002PY 17150043 AGO .RCHK820 @PC002PY 17200043 .RCHK815 ANOP @PC002PY 17250043 LA 0,&OLDVOL - MOVE OLD VOLSER ADDRESS @PC002PY 17300043 ST 0,16(1) - INTO PARM LIST @PC002PY 17350043 .RCHK820 ANOP @PC002PY 17400043 AIF ('&APPL' EQ '').RCHK835 @PC003PY 17450000 AIF ('&APPL'(1,1) EQ '''').ERR10 @PC003PY 17454000 AIF ('&APPL'(1,1) NE '(').RCHK830 @PC003PY 17458000 ST &APPL(1),20(1) - STORE APPL ADDRESS @PC003PY 17462000 AGO .RCHK835 @PC003PY 17466000 .RCHK830 ANOP @PC003PY 17470000 LA 0,&APPL - MOVE APPL ADDRESS @PC003PY 17474000 ST 0,20(1) - INTO PARM LIST @PC003PY 17478000 .ERTN10 ANOP @PC003PY 17482000 .RCHK835 ANOP @PC003PY 17486000 AIF ('&ACEE' EQ '').RCHK845 @PC003PY 17490000 AIF ('&ACEE'(1,1) NE '(').RCHK840 @PC003PY 17494000 ST &ACEE(1),24(1) - STORE ACEE ADDRESS @PC003PY 17498000 AGO .RCHK845 @PC003PY 17502000 .RCHK840 ANOP @PC003PY 17506000 LA 0,&ACEE - MOVE ACEE ADDRESS @PC003PY 17510000 ST 0,24(1) - INTO PARM LIST @PC003PY 17514000 .RCHK845 ANOP @PC003PY 17518000 AIF ('&OWNER' EQ '').RCHK855 @L4A 17518400 AIF ('&OWNER'(1,1) NE '(').RCHK850 @L4A 17518800 ST &OWNER(1),28(1) - STORE OWNER ADDRESS. @L4A 17519200 AGO .RCHK855 @L4A 17519600 .RCHK850 ANOP , @L4A 17520000 LA 0,&OWNER - MOVE OWNER ADDRESS @L4A 17520400 ST 0,28(1) - INTO PARM LIST. @L4A 17520800 .RCHK855 ANOP , @L4A 17521200 AIF ('&ACCLVL' EQ '').RCHK859 @L5A 17521400 AIF (T'&ACCLVL(1) EQ 'O').RCHK857 @L5A 17521600 AIF ('&ACCLVL(1)'(1,1) NE '(').RCHK856 @L5A 17521800 ST &ACCLVL(1),48(1) - STORE ACCESS VALUE ADDRESS. @L5A 17522000 AGO .RCHK857 @L5A 17522200 .RCHK856 ANOP , @L5A 17522400 LA 0,&ACCLVL(1) - MOVE ACCESS VALUE ADDRESS @L5A 17522600 ST 0,48(1) - INTO PARM LIST. @L5A 17522800 .RCHK857 ANOP , @L5A 17523000 AIF (T'&ACCLVL(2) EQ 'O').RCHK859 @L5A 17523200 AIF ('&ACCLVL(2)'(1,1) NE '(').RCHK858 @L5A 17523400 ST &ACCLVL(2),52(1) - STORE 2ND ACC ADDRESS. @L5A 17523600 AGO .RCHK859 @L5A 17523800 .RCHK858 ANOP , @L5A 17524000 LA 0,&ACCLVL(2) - MOVE 2ND ACCESS ADDRESS @L5A 17524200 ST 0,52(1) - INTO PARM LIST. @L5A 17524400 .RCHK859 ANOP , @L5A 17524600 .* MODIFICATION COMPLETE - AGO ABOVE TO PRODUCE ENTRY LOGIC 17524800 AGO .RCHK520 17526000 .* DIAGNOSTICS 17550043 .ERR00 ANOP 17600043 MNOTE 8,'*** ENTITY OR PROFILE PARM REQUIRED ***' 17650043 AGO .ERTN00 17700043 .ERR02 ANOP 17750043 MNOTE 8,'*** INVALID LOG PARAMETER SPECIFIED ***' 17800043 AGO .ERTN02 17850043 .ERR03 ANOP 17900043 MNOTE 8,'*** INVALID DSTYPE PARAMETER SPECIFIED ***' 17950043 AGO .ERTN03 18000043 .ERR04 ANOP 18050043 MNOTE 8,'*** INVALID ATTR PARAMETER SPECIFIED ***' 18100043 AGO .ERTN04 18150043 .ERR05 ANOP @L5A 18162500 MNOTE 8,'*** INVALID RACFIND PARAMETER SPECIFIED ***' @L5A 18175000 AGO .ERTN05 @L5A 18187500 .ERR06 ANOP 18200043 MNOTE 8,'*** INVALID MF PARAMETER SPECIFIED ***' 18250043 AGO .ERTN06 18300043 .ERR07 ANOP 18350043 MNOTE 8,'*** REGISTER ADDRESS SPECIFICATION NOT ALLOWED WITH L-18400043 IST FORM ***' 18450043 AGO .ERTN07 18500043 .ERR09 ANOP 18550043 MNOTE 8,'*** ''CLASSNAME'' FORM NOT ALLOWED WITH MF=E ***' 18600043 AGO .ERTN09 18650043 .ERR10 ANOP @PC003PY 40650000 MNOTE 8,'*** ''APPLNAME'' FORM NOT ALLOWED WITH MF=E ***' 40700000 AGO .ERTN10 @PC003PY 40750000 .ERR11 ANOP @PC003PY 40762500 MNOTE 8,'*** INVALID GENERIC PARAMETER SPECIFIED ***' @L6A 40775000 AGO .ERTN11 @L6A 40787500 MEND 40800000 **/ 40850003