ENTRUST

(George Source)

Macros used: CCOFF, CHEKPRIV, COMERR, ENDCOM, FPCACA, HUNT2, MHUNT, PARANUMB, PARAPASS, SEG, SEGENTRY

ENTRUST.txt
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