.TITLE UAF_TABLES - Various tables .IDENT /X-1/ .ENABL DBG $DSCDEF $NSAEVTDEF $SSDEF $TPADEF $UAFDEF $UAIDEF $ITMTABDEF ;++ ; FACILITY: Authorization record maintenance utility ; ; FUNCTIONAL DESCRIPTION: ; ; This module contains various tables that are not easily created ; in the C language. However, they are trivial to create in Macro. ; ; AUTHOR: L. Mark Pilant CREATION-DATE: 8-Oct-1993 ; ; MODIFIED BY: ; ;-- ; Set up the TPARSE tables needed to parse a UIC string. $INIT_STATE UIC_STATE, UIC_KEY $STATE GET_UIC $TRAN TPA$_IDENT,TPA$_EXIT,,,CONVERTED_UIC $END_STATE .PSECT $OWN$,NOEXE,LONG CONVERTED_UIC:: ; Global storage .LONG 0 ; Storage for the converted UIC TPARSE_BLOCK:: .LONG TPA$K_COUNT0 ; TPARSE arg block size .LONG TPA$M_ABBREV ; Only unique abbreviations .LONG 0,0 ; Input descriptor .LONG 0,0,0,0,0 ; Remaining arg block ; Set up the item table needed by xxxUAI to validate the item entries. .MACRO ITEM CODE,OFFSET,SIZE=0,SUBSET_TYPE=0,FLAGS,AUDIT_TYPE ..SAVE= . ..ITEM_BASE= UAI_ITM_TAB + .= ..ITEM_BASE ; Because auditing is not currently supported in the DECwindows Authorize ; utility, the following block of code has been commented out. This was also ; done because only OpenVMS/VAX Version 6.0 has the necessary symbols defined. .= ..ITEM_BASE + UAF$L_ITM_ENT_AUDIT_0 ; In first longword .LONG 0 ; No auditing .= ..ITEM_BASE + UAF$L_ITM_ENT_AUDIT_4 ; In second longword .LONG 0 ; No auditing ; .= ..ITEM_BASE + UAF$L_ITM_ENT_AUDIT_0 ;.IF NB, AUDIT_TYPE ; ..TMP = nsa$v_sysuaf_'AUDIT_TYPE ;.IF LT, ..TMP-32 ; First or second longword? ; .= ..ITEM_BASE + UAF$L_ITM_ENT_AUDIT_0 ; In first longword ; .LONG 1@..TMP ;.IFF ; .= ..ITEM_BASE + UAF$L_ITM_ENT_AUDIT_4 ; In second longword ; .LONG 1@<..TMP-32> ;.ENDC ; LT, ..TMP-32 ;.ENDC ; NB, AUDIT_TYPE .= ..ITEM_BASE + UAF$W_ITM_ENT_BASE .WORD OFFSET .= ..ITEM_BASE + UAF$W_ITM_ENT_SIZE .WORD SIZE .= ..ITEM_BASE + UAF$B_ITM_ENT_SUBTYP .BYTE uaf$c_itm_ent_'SUBSET_TYPE .= ..ITEM_BASE + UAF$B_ITM_ENT_FLAGS .IF DIF, ,0 .IF NB, ..FLAGS = 0 .IRP FLG, ..FLAGS = ..FLAGS + uaf$m_itm_flg_'FLG .ENDR ; FLG, .BYTE ..FLAGS .ENDC ; NB, .ENDC ; DIF, ,0 .= ..SAVE .ENDM ITEM; OFFSET,SIZE,SUBSET_TYPE,FLAGS,AUDIT_TYPE ; Build the table. .PSECT $OWN$,NOEXE,LONG UAI_ITM_TAB:: ITEM RTYPE, UAF$B_RTYPE, 1, SUBSET_COPY, NOP ITEM RTYPE, UAF$B_RTYPE, 1, SUBSET_COPY, NOP ITEM VERSION, UAF$B_VERSION, 1, SUBSET_COPY, NOP ITEM USRDATOFF, UAF$W_USRDATOFF, 2, SUBSET_COPY ITEM USERNAME, UAF$T_USERNAME, 32, SUBSET_COPY, ITEM USERNAME_TAG, UAF$T_USERNAME_TAG, 1, SUBSET_COPY ITEM UIC, UAF$L_UIC, 4, SUBSET_UIC, 0, UIC ITEM MEM, UAF$W_MEM, 2, SUBSET_COPY, 0, UIC ITEM GRP, UAF$W_GRP, 2, SUBSET_UIC, 0, UIC ITEM SUB_ID, UAF$L_SUB_ID, 4, SUBSET_COPY ITEM PARENT_ID, UAF$Q_PARENT_ID, 8, SUBSET_COPY ITEM ACCOUNT, UAF$T_ACCOUNT, 32, SUBSET_COPY, , ACCOUNT ITEM OWNER, UAF$T_OWNER, 32, SUBSET_COPY, , OWNER ITEM DEFDEV, UAF$T_DEFDEV, 32, SUBSET_COPY, , DEVICE ITEM DEFDIR, UAF$T_DEFDIR, 64, SUBSET_COPY, , DIRECTORY ITEM LGICMD, UAF$T_LGICMD, 64, SUBSET_COPY, , LGICMD ITEM DEFCLI, UAF$T_DEFCLI, 32, SUBSET_COPY, , CLI ITEM CLITABLES, UAF$T_CLITABLES, 32, SUBSET_COPY, , CLITABLES ITEM PWD, UAF$Q_PWD, 8, SUBSET_COPY, 0, PASSWORD ITEM PWD2, UAF$Q_PWD2, 8, SUBSET_COPY, 0, PASSWORD2 ITEM LOGFAILS, UAF$W_LOGFAILS, 2, SUBSET_COPY, 0, LOGFAILS ITEM SALT, UAF$W_SALT, 2, SUBSET_COPY, 0, SALT ITEM ENCRYPT, UAF$B_ENCRYPT, 1, SUBSET_COPY, 0, ENCRYPT ITEM ENCRYPT2, UAF$B_ENCRYPT2, 1, SUBSET_COPY, 0, ENCRYPT2 ITEM PWD_LENGTH, UAF$B_PWD_LENGTH, 1, SUBSET_COPY, 0, PWDMINIMUM ITEM EXPIRATION, UAF$Q_EXPIRATION, 8, SUBSET_COPY, 0, EXPIRATION ITEM PWD_LIFETIME, UAF$Q_PWD_LIFETIME, 8, SUBSET_COPY, 0, PWDLIFETIME ITEM PWD_DATE, UAF$Q_PWD_DATE, 8, SUBSET_COPY, 0, PWD_DATE ITEM PWD2_DATE, UAF$Q_PWD2_DATE, 8, SUBSET_COPY, 0, PWD2_DATE ITEM LASTLOGIN_I, UAF$Q_LASTLOGIN_I, 8, SUBSET_COPY, 0, LASTLOGIN_I ITEM LASTLOGIN_N, UAF$Q_LASTLOGIN_N, 8, SUBSET_COPY, 0, LASTLOGIN_N ITEM PRIV, UAF$Q_PRIV, 8, SUBSET_MASK, 0, PRIVILEGES ITEM DEF_PRIV, UAF$Q_DEF_PRIV, 8, SUBSET_MASK, 0, DEFPRIVILEGES ; ITEM MIN_CLASS, UAF$R_MIN_CLASS, 20, SUBSET_COPY, 0, MIN_CLASS ; ITEM MAX_CLASS, UAF$R_MAX_CLASS, 20, SUBSET_COPY, 0, MAX_CLASS ITEM FLAGS, UAF$L_FLAGS, 4, SUBSET_COPY, 0, FLAGS ITEM NETWORK_ACCESS_P, UAF$B_NETWORK_ACCESS_P, 3, SUBSET_COPY, 0, NETWORK ITEM NETWORK_ACCESS_S, UAF$B_NETWORK_ACCESS_S, 3, SUBSET_COPY, 0, NETWORK ITEM BATCH_ACCESS_P, UAF$B_BATCH_ACCESS_P, 3, SUBSET_COPY, 0, BATCH ITEM BATCH_ACCESS_S, UAF$B_BATCH_ACCESS_S, 3, SUBSET_COPY, 0, BATCH ITEM LOCAL_ACCESS_P, UAF$B_LOCAL_ACCESS_P, 3, SUBSET_COPY, 0, LOCAL ITEM LOCAL_ACCESS_S, UAF$B_LOCAL_ACCESS_S, 3, SUBSET_COPY, 0, LOCAL ITEM DIALUP_ACCESS_P, UAF$B_DIALUP_ACCESS_P, 3, SUBSET_COPY, 0, DIALUP ITEM DIALUP_ACCESS_S, UAF$B_DIALUP_ACCESS_S, 3, SUBSET_COPY, 0, DIALUP ITEM REMOTE_ACCESS_P, UAF$B_REMOTE_ACCESS_P, 3, SUBSET_COPY, 0, REMOTE ITEM REMOTE_ACCESS_S, UAF$B_REMOTE_ACCESS_S, 3, SUBSET_COPY, 0, REMOTE ITEM PRIMEDAYS, UAF$B_PRIMEDAYS, 1, SUBSET_COPY, 0, PRIMEDAYS ITEM PRI, UAF$B_PRI, 1, SUBSET_VALUE, 0, PRIORITY ITEM QUEPRI, UAF$B_QUEPRI, 1, SUBSET_VALUE, 0, QUEPRIORITY ITEM MAXJOBS, UAF$W_MAXJOBS, 2, SUBSET_VALUE, 0, MAXJOBS ITEM MAXACCTJOBS, UAF$W_MAXACCTJOBS, 2, SUBSET_VALUE, 0, MAXACCTJOBS ITEM MAXDETACH, UAF$W_MAXDETACH, 2, SUBSET_VALUE, 0, MAXDETACH ITEM PRCCNT, UAF$W_PRCCNT, 2, SUBSET_VALUE, 0, PRCLM ITEM BIOLM, UAF$W_BIOLM, 2, SUBSET_VALUE, 0, BIOLM ITEM DIOLM, UAF$W_DIOLM, 2, SUBSET_VALUE, 0, DIOLM ITEM TQCNT, UAF$W_TQCNT, 2, SUBSET_VALUE, 0, TQELM ITEM ASTLM, UAF$W_ASTLM, 2, SUBSET_VALUE, 0, ASTLM ITEM ENQLM, UAF$W_ENQLM, 2, SUBSET_VALUE, 0, ENQLM ITEM FILLM, UAF$W_FILLM, 2, SUBSET_VALUE, 0, FILLM ITEM SHRFILLM, UAF$W_SHRFILLM, 2, SUBSET_VALUE, 0, SHRFILLM ITEM WSQUOTA, UAF$L_WSQUOTA, 4, SUBSET_VALUE, 0, WSQUOTA ITEM DFWSCNT, UAF$L_DFWSCNT, 4, SUBSET_VALUE, 0, WSDEFAULT ITEM WSEXTENT, UAF$L_WSEXTENT, 4, SUBSET_VALUE, 0, WSEXTENT ITEM PGFLQUOTA, UAF$L_PGFLQUOTA, 4, SUBSET_VALUE, 0, PGFLQUOTA ITEM CPUTIM, UAF$L_CPUTIM, 4, SUBSET_CPU, 0, CPUTIME ITEM BYTLM, UAF$L_BYTLM, 4, SUBSET_VALUE, 0, BYTLM ITEM PBYTLM, UAF$L_PBYTLM, 4, SUBSET_VALUE, 0, PBYTLM ITEM JTQUOTA, UAF$L_JTQUOTA, 4, SUBSET_VALUE, 0, JTQUOTA ITEM PROXY_LIM, UAF$W_PROXY_LIM, 2, SUBSET_VALUE, RDONLY ITEM PROXIES, UAF$W_PROXIES, 2, SUBSET_VALUE, RDONLY ITEM ACCOUNT_LIM, UAF$W_ACCOUNT_LIM, 2, SUBSET_VALUE, RDONLY ITEM ACCOUNTS, UAF$W_ACCOUNTS, 2, SUBSET_VALUE, RDONLY ITEM USER_DATA, UAF$W_USRDATOFF, 255, SUBSET_COPY, VAR, USER_DATA ITEM PASSWORD, UAF$Q_PWD, 32, SUBSET_COPY, , PASSWORD ITEM PASSWORD2, UAF$Q_PWD2, 32, SUBSET_COPY, , PASSWORD2 ; ITEM DEF_CLASS, UAF$R_DEF_CLASS, 20, SUBSET_COPY, 0, DEF_CLASS .END