{{htmlmetatags>metatag-description:(ICL George 3 and George 4 source: ENTRUST)}}
====== ENTRUST ======
(George Source)
**Macros used:** [[george:macro:CCOFF|CCOFF]], [[george:macro:CHEKPRIV|CHEKPRIV]], [[george:macro:COMERR|COMERR]], [[george:macro:ENDCOM|ENDCOM]], [[george:macro:FPCACA|FPCACA]], [[george:macro:HUNT2|HUNT2]], [[george:macro:MHUNT|MHUNT]], [[george:macro:PARANUMB|PARANUMB]], [[george:macro:PARAPASS|PARAPASS]], [[george:macro:SEG|SEG]], [[george:macro:SEGENTRY|SEGENTRY]]
22FL SEG ENTRUST,,ALMANDRAS
22^= #
23DW SEGENTRY K1ENTRUST,XK1ENTRUST
23YG SEGENTRY K2ENTRUST,XK2ENTRUST
24D6 TPQ 4HQ
24XQ TPR 4HR
25CB TPS 4HS
25X2 PRIV 8HTRUSTED
26BL #
26W= #
27*W XK2ENTRUST
27TG #
28*6 LDN 4 #7777 [SET FLAG TO CANCEL ENTRUST
28SQ BRN TPPAR
29#B #
29S2 XK1ENTRUST
2=?L #
2=R= STOZ 4 [FLAG FOR ENTRUST
2?=W TPPAR PARAPASS [COPY COMMAND PARAMETER INTO
2?QG # CPB/CUNI BLOCK
2#=6 MHUNT 3,CPB,CUNI [X3=POINTER TO CPB/CUNI BLOCK
2#PQ LDX 5 ANUM(3)
2*9B BZE 5 PERR1 [JUMP IF PARAMETER NULL
2*P2 ADN 5 1
2B8L BZE 5 PERR1 [JUMP IF PARAMETER NON EXISTENT
2BN= PARANUMB 5 [CHECK TO SEE THAT THERE
2C7W SBN 5 1 [IS ONLY ONE PARAMETER
2CMG BNZ 5 PERR4 [JUMP IF MORE THAN ONE PARAM
2D76 BNZ 4 TENT [JUMP IF CANCEL ENTRUST
2DLQ CHEKPRIV 0,PRIV,PERR3 [CHECK IF PROGRAM HAS TRUSTED PRIVILE
2F6B TENT MHUNT 3,CPB,CUNI [RELOCATE CPB/CUNI
2FL2 LDX 6 TPQ(1) [X6='Q'
2G5L LDX 7 APARA(3) [X7=PARAMETER FROM CPB/CUNI BLOCK
2GK= TXU 6 7 [SET C IF PARAMETER IS NOT Q
2H4W BCC TPQSET [JUMP IF PARAMETER IS Q
2HJG LDX 6 TPR(1) [X6='R'
2J46 TXU 6 7 [SET C IF PARAMETER IS NOT R
2JHQ BCC TPRSET [JUMP IF PARAMETER IS R
2K3B LDX 6 TPS(1) [X6= 'S'
2KH2 TXU 6 7 [SET C IF PARAMETER IS NOT S
2L2L BCS PERR2 [JUMP IF PARAMETER IS NOT S
2LG= #
2L^W TPSSET
2MFG CALL 1 TPSUB [CALL SUBR TO PROCESS 'S' PRIVILEGE
2M^6 #75777777 [MASK FOR CANCELLING 'S' PRIVILEGE
2NDQ #02000000 [MASK FOR GIVING 'S' PRIVILEGE
2NYB BRN TPEND
2PD2 #
2PXL TPRSET
2QC= CALL 1 TPSUB [CALL SUBR TO PROCESS 'R' PRIVILEGE
2QWW #73777777 [MASK FOR CANCELLING 'R' PRIVILEGE
2RBG #04000000 [MASK FOR GIVING 'R' PRIVILEGE
2RW6 BRN TPEND
2S*Q #
2STB TPQSET
2T*2 CALL 1 TPSUB [CALL SUBR TO PROCESS 'Q' PRIVILEGE
2TSL #67777777 [MASK FOR CANCELLING 'Q' PRIVILEGE
2W#= #10000000 [MASK FOR GIVING 'Q' PRIVILEGE
2WRW TPEND CCOFF
2X?G ENDCOM
2XR6 #
2Y=Q TPSUB
2YQB FPCACA 3,2 [X3=POINTER TO PCA
2^=2 LDX 6 ATRUST(3) [X6=TRUSTED STATUS IN B2-4
2^PL BZE 4 TPENTR1 [JUMP IF ENTRUST
329= # OTHERWISE CANCEL ENTRUST
32NW ANDX 6 0(1) [ZERO APPROPRIATE TRUST BIT
338G BRN TPGOR
33N6 TPENTR1
347Q ORX 6 1(1) [SET APPROPRIATE TRUST BIT
34MB TPGOR STO 6 ATRUST(3) [STORE RESULT IN PCA
3572 HUNT2 3,AOBRES,0 [X3=POINTER TO REQUEST SLIP
35LL LDX 6 A1+2(3) [X6=TRUSTED STATUS IN B2-4
366= BZE 4 TPENTR2 [JUMP IF ENTRUST
36KW # OTHERWISE CANCEL ENTRUST
375G ANDX 6 0(1) [ZERO APPROPRIATE TRUST BIT
37K6 BRN SFIN
384Q TPENTR2
38JB ORX 6 1(1) [SET APPROPRIATE TRUST BIT
3942 SFIN STO 6 A1+2(3) [STORE RESULT IN REQUEST SLIP
39HL EXIT 1 2
3=3= PERR1 COMERR JPARMIS,JNEW2 [ERROR MESSAGE - TRUSTED STATUS
3=GW # PARAMETER MISSING
3?2G PERR2 COMERR ERMCH [ERROR MESSAGE - PARAMETER NOT
3?G6 # RECOGNIZED
3?^Q PERR3 COMERR ERB4,JNEW1 [ERROR MESSAGE - YOU DO NOT HOLD
3#FB # TRUSTED PRIVILEGE
3#^2 PERR4 COMERR JONEPAR [ERROR MESSAGE - ONLY ONE
3*DL [PARAMETER ALLOWED
3*Y= #GAP 20
3BCW #END
^^^^ ...50230364000100000000