52
© 2002. Xephon UK telephone 01635 33848, fax 01635 38345. USA telephone (303) 410 9344, fax (303) 438 0290.
* EXIT VIA R1Ø *
* R15 = Ø USER AUTHORISED *
* R15 = 4 USER NOT AUTHORISED *
* *
* NOTE: IF THE RESOURCE IS NOT DEFINED ACCESS IS NOT ALLOWED. *
* *
********************************************************************
SAUTHCHK DS ØH
STM R1,R8,SAVESUB
SLR R15,R15 AUTHORISED
CLI AUTHCODE,Ø ALREADY AUTHORISED
BE AUTHRET YES, IMMED RETURN
TM FLG1RAC,ACEESPEC RACF SPECIAL CAN DO ANYTHING
BNO SAUTHØ5 NOT SPECIAL @MC6
* @MC6
*SPECHK B SAUTHØ5 DISABLE SYSTEM-SPECIAL OVERRIDE @MC6
* MNOTE 1,SYSTEM-SPECIAL SUPPORT DISABLED @MC6
* @MC6
@TRACE AUTHORISED BY SYSTEM-SPECIAL @MC6
SLR R15,R15 INDICATE AUTHORISED @MC6
B AUTHRET AND RETURN @MC6
SAUTHØ5 DS ØH @MC6
LA RØ,AUTHENT CALCULATE... @MC4
LA R1,AUTHENT+LAUTHENT REAL LENGTH... @MC4
TRT AUTHENT,TRTAB2 OF... @MC4
SR R1,RØ FIELD... @MC4
STH R1,AUTHENTL+2 PROFILE NAME @MC4
LA R2,2 READ ACCESS
CLI FUNCODE,FUNCGET IS IT GET FUNCTION
BE *+8 YES, READ ACCESS REQUIRED
LA R2,4 UPDATE REQUIRED FOR ANYTHING ELSE
@TRACE CHECKING ACCESS TO: ,(AUTHCLS+1,8), ,(AUTHENT,26)
*
* IF CALLERS OWN USER PROFILE SEE IF &RACUID HAS REQUIRED ACCESS
*
CLC RCLASS,=CL8USER IS IT A USER PROFILE ?
BNE SAUTH1Ø NO, &RACUID NOT APPLICABLE
CLC TSUSER,PROFNAME+1 IS IT CALLERS OWN ?
BNE SAUTH1Ø NO, &RACUID NOT APPLICABLE
MVC ACLUSER,=CL8'&&RACUID USERID TO CHECK FOR ON ACCLST
@TRACE TRYING &&RACUID @MC5
ICHEINTY LOCATE,TYPE=GEN,CLASS=AUTHCLS+1,ENTRYX=AUTHENTL, +
ACTIONS=ACTN5,OPTIONS=(ACTION,TESTM),WKAREA=RACWA, +
RELEASE=1.9,MF=(E,INTY2)
LTR R15,R15 WAS INTY OK ?
BNZ SAUTH1Ø NO, USE NEXT CHECK
CLI TEST5+1,Ø WAS &RACUID ON ACCESS LIST ?
BNE SAUTH1Ø NO, DO NEXT CHECK
@TRACE &&RACUID FOUND ... @MC5
CLC ACLENT1,RACWA+32 DID WE GET ACL ENTRY AS EXPECTED
Comentarios a estos manuales