!*** MODULE $UAIDEF *** !DEC$ OPTIONS/ALIGN=(RECORDS=PACKED,COMMONS=PACKED)/NOWARN ! + ! ! Get User Authorization Information Data Identifier Definitions ! ! **** NOTE **** ! ! New items must always be added to the END of each item list ! so that users will not have to relink. ! ! - PARAMETER UAI$_RTYPE = '00000001'X ! UAF record type PARAMETER UAI$_VERSION = '00000002'X ! UAF format version PARAMETER UAI$_USRDATOFF = '00000003'X ! offset of counted string of user data PARAMETER UAI$_USERNAME = '00000004'X ! username PARAMETER UAI$_USERNAME_TAG = '00000005'X ! tag to differentiate records PARAMETER UAI$_UIC = '00000006'X ! user ID code PARAMETER UAI$_MEM = '00000007'X ! member subfield PARAMETER UAI$_GRP = '00000008'X ! group subfield PARAMETER UAI$_SUB_ID = '00000009'X ! user sub-identifier PARAMETER UAI$_PARENT_ID = '0000000A'X ! identifier of owner of this account PARAMETER UAI$_ACCOUNT = '0000000B'X ! account name PARAMETER UAI$_OWNER = '0000000C'X ! owner's name PARAMETER UAI$_DEFDEV = '0000000D'X ! default device PARAMETER UAI$_DEFDIR = '0000000E'X ! default directory PARAMETER UAI$_LGICMD = '0000000F'X ! login command file PARAMETER UAI$_DEFCLI = '00000010'X ! default command interpreter PARAMETER UAI$_CLITABLES = '00000011'X ! user CLI tables PARAMETER UAI$_PWD = '00000012'X ! hashed password PARAMETER UAI$_PWD2 = '00000013'X ! second password PARAMETER UAI$_LOGFAILS = '00000014'X ! count of login failures PARAMETER UAI$_SALT = '00000015'X ! random password salt PARAMETER UAI$_ENCRYPT = '00000016'X ! primary password hash algorithm PARAMETER UAI$_ENCRYPT2 = '00000017'X ! secondary password hash algorithm PARAMETER UAI$_PWD_LENGTH = '00000018'X ! minimum password length PARAMETER UAI$_EXPIRATION = '00000019'X ! expiration date for account PARAMETER UAI$_PWD_LIFETIME = '0000001A'X ! password lifetime PARAMETER UAI$_PWD_DATE = '0000001B'X ! date of password change PARAMETER UAI$_PWD2_DATE = '0000001C'X ! date of 2nd password change PARAMETER UAI$_LASTLOGIN_I = '0000001D'X ! date of last interactive login PARAMETER UAI$_LASTLOGIN_N = '0000001E'X ! date of last non-interactive login PARAMETER UAI$_PRIV = '0000001F'X ! process privilege vector PARAMETER UAI$_DEF_PRIV = '00000020'X ! default process privileges PARAMETER UAI$_MIN_CLASS = '00000021'X ! minimum security class PARAMETER UAI$_MAX_CLASS = '00000022'X ! maximum security class PARAMETER UAI$_FLAGS = '00000023'X ! user flags longword PARAMETER UAI$_NETWORK_ACCESS_P = '00000024'X ! hourly network access, primary PARAMETER UAI$_NETWORK_ACCESS_S = '00000025'X ! hourly network access, secondary PARAMETER UAI$_BATCH_ACCESS_P = '00000026'X ! hourly batch access, primary PARAMETER UAI$_BATCH_ACCESS_S = '00000027'X ! hourly batch access, secondary PARAMETER UAI$_LOCAL_ACCESS_P = '00000028'X ! hourly local access, primary PARAMETER UAI$_LOCAL_ACCESS_S = '00000029'X ! hourly local access, secondary PARAMETER UAI$_DIALUP_ACCESS_P = '0000002A'X ! hourly dialup access, primary PARAMETER UAI$_DIALUP_ACCESS_S = '0000002B'X ! hourly dialup access, secondary PARAMETER UAI$_REMOTE_ACCESS_P = '0000002C'X ! hourly remote access, primary PARAMETER UAI$_REMOTE_ACCESS_S = '0000002D'X ! hourly remote access, secondary PARAMETER UAI$_PRIMEDAYS = '0000002E'X ! bits representing primary days PARAMETER UAI$_PRI = '0000002F'X ! base process priority PARAMETER UAI$_QUEPRI = '00000030'X ! maximum job queuing priority PARAMETER UAI$_MAXJOBS = '00000031'X ! maximum jobs for UIC allowed PARAMETER UAI$_MAXACCTJOBS = '00000032'X ! maximum jobs for account allowed PARAMETER UAI$_MAXDETACH = '00000033'X ! maximum detached processes for UIC PARAMETER UAI$_PRCCNT = '00000034'X ! subprocess creation limit PARAMETER UAI$_BIOLM = '00000035'X ! buffered I/O limit PARAMETER UAI$_DIOLM = '00000036'X ! direct I/O limit PARAMETER UAI$_TQCNT = '00000037'X ! timer queue entry limit PARAMETER UAI$_ASTLM = '00000038'X ! AST queue limit PARAMETER UAI$_ENQLM = '00000039'X ! enqueue limit PARAMETER UAI$_FILLM = '0000003A'X ! open file limit PARAMETER UAI$_SHRFILLM = '0000003B'X ! shared file limit PARAMETER UAI$_WSQUOTA = '0000003C'X ! working set size quota PARAMETER UAI$_DFWSCNT = '0000003D'X ! default working set size PARAMETER UAI$_WSEXTENT = '0000003E'X ! working set size limit PARAMETER UAI$_PGFLQUOTA = '0000003F'X ! page file quota PARAMETER UAI$_CPUTIM = '00000040'X ! CPU time quota PARAMETER UAI$_BYTLM = '00000041'X ! buffered I/O byte count limit PARAMETER UAI$_PBYTLM = '00000042'X ! paged buffer I/O byte count limit PARAMETER UAI$_JTQUOTA = '00000043'X ! job-wide logical name table creation quota PARAMETER UAI$_PROXY_LIM = '00000044'X ! number of proxies user can grant PARAMETER UAI$_PROXIES = '00000045'X ! number of proxies granted PARAMETER UAI$_ACCOUNT_LIM = '00000046'X ! number of sub-accounts allowed PARAMETER UAI$_ACCOUNTS = '00000047'X ! number of sub-accounts in use PARAMETER UAI$_USER_DATA = '00000048'X ! user data area PARAMETER UAI$_PASSWORD = '00000049'X ! plaintext primary password PARAMETER UAI$_PASSWORD2 = '0000004A'X ! plaintext secondary password PARAMETER UAI$_DEF_CLASS = '0000004B'X ! default security classification PARAMETER UAI$_AUDIT_FLAGS = '0000004C'X ! passed from $SETUAI to UAF$SECURITY_AUDIT ! ADD ITEM-CODES BEFORE THIS COMMENT PARAMETER UAI$_MAX_ITEM_CODE = '0000004D'X ! maximum legal item code + 1 ! Add UAI$_DEFCHARGE_CODE as an alias for UAI$_ACCOUNT. PARAMETER UAI$_DEFCHARGE_CODE = '0000000B'X ! default charge code (=account) ! Define the various password hash algorithms. PARAMETER UAI$C_AD_II = '00000000'X ! AUTODIN-II 32 bit crc code PARAMETER UAI$C_PURDY = '00000001'X ! Purdy polynomial over salted input PARAMETER UAI$C_PURDY_V = '00000002'X ! Purdy polynomial + variable length username PARAMETER UAI$C_PURDY_S = '00000003'X ! PURDY_V folded into password length PARAMETER UAI$C_PREFERED_ALGORITHM = '0000007F'X PARAMETER UAI$C_PREFERRED_ALGORITHM = '0000007F'X ! preferred hash algorithm - use current PARAMETER UAI$C_CUST_ALGORITHM = '00000080'X ! customer algorithm division PARAMETER UAI$C_MAX_PWD_LENGTH = '00000020'X ! maximum plaintext password ! Define the flags for the user flags longword. PARAMETER UAI$M_DISCTLY = '00000001'X PARAMETER UAI$M_DEFCLI = '00000002'X PARAMETER UAI$M_LOCKPWD = '00000004'X PARAMETER UAI$M_RESTRICTED = '00000008'X PARAMETER UAI$M_DISACNT = '00000010'X PARAMETER UAI$M_DISWELCOM = '00000020'X PARAMETER UAI$M_DISMAIL = '00000040'X PARAMETER UAI$M_NOMAIL = '00000080'X PARAMETER UAI$M_GENPWD = '00000100'X PARAMETER UAI$M_PWD_EXPIRED = '00000200'X PARAMETER UAI$M_PWD2_EXPIRED = '00000400'X PARAMETER UAI$M_AUDIT = '00000800'X PARAMETER UAI$M_DISREPORT = '00001000'X PARAMETER UAI$M_DISRECONNECT = '00002000'X PARAMETER UAI$M_AUTOLOGIN = '00004000'X PARAMETER UAI$M_DISFORCE_PWD_CHANGE = '00008000'X PARAMETER UAI$M_CAPTIVE = '00010000'X PARAMETER UAI$M_DISIMAGE = '00020000'X PARAMETER UAI$M_DISPWDDIC = '00040000'X PARAMETER UAI$M_DISPWDHIS = '00080000'X PARAMETER UAI$M_DEFCLSVAL = '00100000'X PARAMETER UAI$M_EXTAUTH = '00200000'X PARAMETER UAI$M_MIGRATEPWD = '00400000'X PARAMETER UAI$M_VMSAUTH = '00800000'X PARAMETER UAI$M_DISPWDSYNCH = '01000000'X PARAMETER UAI$M_PWDMIX = '02000000'X STRUCTURE /FLAGS/ ! user flags longword PARAMETER UAI$S_DISCTLY = 1 PARAMETER UAI$V_DISCTLY = 0 ! no user control-y PARAMETER UAI$S_DEFCLI = 1 PARAMETER UAI$V_DEFCLI = 1 ! only allow user default CLI PARAMETER UAI$S_LOCKPWD = 1 PARAMETER UAI$V_LOCKPWD = 2 ! disable SET PASSWORD command PARAMETER UAI$S_RESTRICTED = 1 PARAMETER UAI$V_RESTRICTED = 3 ! restricted account (pre-V5.2 CAPTIVE) PARAMETER UAI$S_DISACNT = 1 PARAMETER UAI$V_DISACNT = 4 ! no interactive login PARAMETER UAI$S_DISWELCOM = 1 PARAMETER UAI$V_DISWELCOM = 5 ! skip welcome message PARAMETER UAI$S_DISMAIL = 1 PARAMETER UAI$V_DISMAIL = 6 ! skip new mail message PARAMETER UAI$S_NOMAIL = 1 PARAMETER UAI$V_NOMAIL = 7 ! disable mail delivery PARAMETER UAI$S_GENPWD = 1 PARAMETER UAI$V_GENPWD = 8 ! passwords must be generated PARAMETER UAI$S_PWD_EXPIRED = 1 PARAMETER UAI$V_PWD_EXPIRED = 9 ! password has expired PARAMETER UAI$S_PWD2_EXPIRED = 1 PARAMETER UAI$V_PWD2_EXPIRED = 10 ! 2nd password has expired PARAMETER UAI$S_AUDIT = 1 PARAMETER UAI$V_AUDIT = 11 ! audit all actions PARAMETER UAI$S_DISREPORT = 1 PARAMETER UAI$V_DISREPORT = 12 ! skip last login messages PARAMETER UAI$S_DISRECONNECT = 1 PARAMETER UAI$V_DISRECONNECT = 13 ! inhibit reconnections PARAMETER UAI$S_AUTOLOGIN = 1 PARAMETER UAI$V_AUTOLOGIN = 14 ! auto-login only PARAMETER UAI$S_DISFORCE_PWD_CHANGE = 1 PARAMETER UAI$V_DISFORCE_PWD_CHANGE = 15 ! disable forced password change PARAMETER UAI$S_CAPTIVE = 1 PARAMETER UAI$V_CAPTIVE = 16 ! captive account (no overrides) PARAMETER UAI$S_DISIMAGE = 1 PARAMETER UAI$V_DISIMAGE = 17 ! disable arbitrary image activation PARAMETER UAI$S_DISPWDDIC = 1 PARAMETER UAI$V_DISPWDDIC = 18 ! disable password dictionary filter PARAMETER UAI$S_DISPWDHIS = 1 PARAMETER UAI$V_DISPWDHIS = 19 ! disable password history search PARAMETER UAI$S_DEFCLSVAL = 1 PARAMETER UAI$V_DEFCLSVAL = 20 ! default classification is valid PARAMETER UAI$S_EXTAUTH = 1 PARAMETER UAI$V_EXTAUTH = 21 ! external authentication enabled PARAMETER UAI$S_MIGRATEPWD = 1 PARAMETER UAI$V_MIGRATEPWD = 22 ! migrate UAF pwd to external auth PARAMETER UAI$S_VMSAUTH = 1 PARAMETER UAI$V_VMSAUTH = 23 ! VMS alternative is allowed PARAMETER UAI$S_DISPWDSYNCH = 1 PARAMETER UAI$V_DISPWDSYNCH = 24 ! no ACME password sharing PARAMETER UAI$S_PWDMIX = 1 PARAMETER UAI$V_PWDMIX = 25 ! enable mixed-case passwords BYTE %FILL (4) END STRUCTURE ! FLAGS ! Define the flags representing primary days. STRUCTURE /PRIMEDAYS/ ! bits representing primary days PARAMETER UAI$S_MONDAY = 1 PARAMETER UAI$V_MONDAY = 0 ! bit clear means this is a primary day PARAMETER UAI$S_TUESDAY = 1 PARAMETER UAI$V_TUESDAY = 1 ! bit set means this is an off day PARAMETER UAI$S_WEDNESDAY = 1 PARAMETER UAI$V_WEDNESDAY = 2 PARAMETER UAI$S_THURSDAY = 1 PARAMETER UAI$V_THURSDAY = 3 PARAMETER UAI$S_FRIDAY = 1 PARAMETER UAI$V_FRIDAY = 4 PARAMETER UAI$S_SATURDAY = 1 PARAMETER UAI$V_SATURDAY = 5 PARAMETER UAI$S_SUNDAY = 1 PARAMETER UAI$V_SUNDAY = 6 BYTE %FILL (1) END STRUCTURE ! PRIMEDAYS !DEC$ END OPTIONS