! Created for V1.0 of GETUAI at Fermilab, Frank J. Nagy 27-Jul-86 ! Edited for V1.2 by adding /DEFAULT qualifier (FJN, 28-Jul-86) ! 1 GETUAI The function of this program is to fetch User Authorization Information using the $GETUAI system service in lieu of an F$GETUAI lexical function. Definition and Calling Procedure: $ GETUAI :== $SYS$TOOLS:GETUAI $ GETUAI username /qualifier... or $ GETUAI . /qualifier... Since GETUAI uses the $GETUAI system service, it should work across VMS upgrades unlike GETUAF which reads and interprets the UAF records directly. 2 Privileges BYPASS or SYSPRV allows access to any record in the User Authorization File (UAF). GRPPRV allows access to any record in the UAF whose UIC group number matches that of the requestor. Any user can access any UAF record whose UIC matches his own. 2 Parameter The single parameter to the GETUAI command is the username for which the authorization information is to be returned. If the parameter is ".", then GETUAI will return information about the current username of the executing process. 2 Qualifiers /ACCOUNT /ACCOUNT=symbol will return the account name text in the local DCL 'symbol' supplied. /ASTLM /ASTLM=symbol will return the AST queue limit in the local DCL 'symbol' supplied. /AUDIT /AUDIT=symbol will return "YES" if auditing of security relevant actions is enabled for this account (the AUDIT flag is set), otherwise "NO" will be returned in the local DCL 'symbol' supplied. /AUTOLOGIN /AUTOLOGIN=symbol will return "YES" if only "automatic" logins are permitted for this account: interactive logins via the autologin mechanism, batch jobs or DECnet proxy access (the AUTOLOGIN flag is set). Otherwise "NO" will be returned in the local DCL 'symbol' supplied. !/BATCH ! /BATCH=symbol ! will return the permitted hours of access for this account for batch ! jobs in the local DCL 'symbol' supplied. ! /BIOLM /BIOLM=symbol will return the buffered I/O count limit in the local DCL 'symbol' supplied. /BYTLM /BYTLM=symbol will return the buffered I/O byte limit in the local DCL 'symbol' supplied. /CAPTIVE /CAPTIVE=symbol will return "YES" if this is a captive (aka turnkey) account (the CAPTIVE flag is set), otherwise "NO" will be returned in the local DCL 'symbol' supplied. /CLI /CLI=symbol will return the name of the default command language interpreter (CLI) in the local DCL 'symbol' supplied. /CLITABLES /CLITABLES=symbol will return the name of user-defined CLI tables for the account in the local DCL 'symbol' supplied. /CPUTIME /CPUTIME=symbol will return the CPU time limit in the local DCL 'symbol' supplied as a delta-time value. If the account has no CPU time limit, then the string "INFINITE" will be returned. /CTRLY /CTRLY=symbol will return "NO" if Control-Y is disabled for the account at login (the DISCTLY flag is set), otherwise "YES" will be returned in the local DCL 'symbol' supplied. /DEFAULT /DEFAULT=symbol will return the default disk and directory specification in the local DCL 'symbol' supplied. The returned data is the combination of that supplied by the /DEVICE and /DIRECTORY qualifiers. /DEFCLI /DEFCLI=symbol will return "YES" if this account is restricted to using the default command language intepreter by prohibiting the use of the /CLI qualifier at login time (the AUDIT flag is set), otherwise "NO" will be returned in the local DCL 'symbol' supplied. /DEFPRIVILEGES /DEFPRIVILEGES=symbol /DEFPRIVILEGES=(symbol1,symbol2) will return the default privileges for the user (those enabled at login time) in the local DCL 'symbol' supplied as a list of privilege names separated by commas. For user accounts with lots of privileges, a list of 2 symbols should be used to permit all the privileges to be returned in two pieces (if the list will be accepted by a single symbol definition, then the second symbol will be defined as a null string). This requirement is due to the limitation of a DCL symbol value to 255 characters. /DEVICE /DEVICE=symbol will return the default disk device in the local DCL 'symbol' supplied. !/DIALUP ! /DIALUP=symbol ! will return the permitted hours of access for this account via dialup ! logins in the local DCL 'symbol' supplied. ! /DIOLM /DIOLM=symbol will return the direct I/O count limit in the local DCL 'symbol' supplied. /DIRECTORY /DIRECTORY=symbol will return the default directory in the local DCL 'symbol' supplied. /DISUSER /DISUSER=symbol will return "YES" if this account is disabled from any logins (the DISUSER flag is set) in the local DCL 'symbol' supplied. Normally, "NO" will be returned for an "enabled" account. /ENQLM /ENQLM=symbol will return the lock queue limit in the local DCL 'symbol' supplied. /EXPIRATION /EXPIRATION=symbol will return the expiration date and time in the local DCL 'symbol' supplied as an absolute date and time. If there is no expiration date set for the account, then the string "NONE" will be returned. /FILLM /FILLM=symbol will return the file open limit in the local DCL 'symbol' supplied. /GENPWD /GENPWD=symbol will return "YES" if this account is required to use generated passwords (the GENPWD flag is set), otherwise "NO" will be returned in the local DCL 'symbol' supplied. /JTQUOTA /JTQUOTA=symbol will return the initial byte quote with which the job-wide logical name table is create in the local DCL 'symbol' supplied. /LAST_LOGIN /LAST_LOGIN=symbol will return the ASCII date and time of the last interactive login by this user as an absolute time value. If this user has never logged in interactively, then the string "NONE" will be returned. /INTERACTIVE_LOGIN /INTERACTIVE_LOGIN=symbol will return the ASCII date and time of the last interactive login by this user as an absolute time value. If this user has never logged in interactively, then the string "NONE" will be returned. This is the same as the /LAST_LOGIN qualifier. /NONINTERACTIVE_LOGIN /NONINTERACTIVE_LOGIN=symbol will return the ASCII date and time of the last non-interactive login (batch job or network access) by this user as an absolute time value. If this user has never logged in non-interactively, then the string "NONE" will be returned. /LGICMD /LGICMD=symbol will return the default login command file for the account in the local DCL 'symbol' supplied. !/LOCAL ! /LOCAL=symbol ! will return the permitted hours of access for this account for ! interactive logins via local terminals in the local DCL 'symbol' ! supplied. ! /LOCKPWD /LOCKPWD=symbol will return "YES" if the password is locked and the use of SET PASSWORD is prohibited (the LOCKPWD flag is set), otherwise "NO" will be returned in the local DCL 'symbol' supplied. /LOGIN_FAILURES /LOGIN_FAILURES=symbol will return the number of login failures for this user since the last successful login. /MAIL /MAIL=symbol will return "YES" if mail delivery is enabled for the account. Otherwise, (if the DISMAIL flag is set) "NO" is returned in the local DCL 'symbol' supplied. /MAXACCTJOBS /MAXACCTJOBS=symbol will return the maximum number of batch, interactive and detached processes which may be active at one time for all users in the same account in the local DCL 'symbol' supplied. /MAXDETACH /MAXDETACH=symbol will return the active process limit in the local DCL 'symbol' supplied. The active process limit is the total number of detached processes permitted at one time. /MAXJOBS /MAXJOBS=symbol will return the active process limit in the local DCL 'symbol' supplied. The active process limit is the total number of active processes (interactive, batch and detached) permitted at one time. !/NETWORK ! /NETWORK=symbol ! will return the permitted hours of access for this account for ! network jobs in the local DCL 'symbol' supplied. ! /NEWMAIL /NEWMAIL=symbol will return "YES" if "New Mail" messages are to be generated for for the account at login. Otherwise, (if the DISNEWMAIL flag is is set) "NO" is returned in the local DCL 'symbol' supplied. /OWNER /OWNER=symbol will return the full owner name of this user in the local DCL 'symbol' supplied. /PBYTLM /PBYTLM=symbol will return the paged buffer I/O byte count limit in the local DCL 'symbol' supplied. /PGFLQUOTA /PGFLQUOTA=symbol will return the paging file limit in the local DCL 'symbol' supplied. /PRCLM /PRCLM=symbol will return the subprocess creation limit in the local DCL 'symbol' supplied. /PRIMEDAYS /PRIMEDAYS=symbol will return the definition of the primary and secondary days of the week for this user in the local DCL 'symbol' supplied as a list of the primary days of the week (names separated by commas). /PRIORITY /PRIORITY=symbol will return the default base priority in the local DCL 'symbol' supplied. /PRIVILEGES /PRIVILEGES=symbol /PRIVILEGES=(symbol1,symbol2) will return the authorized privileges for the user in the local DCL 'symbol' supplied as a list of privilege names separated by commas. For user accounts with lots of privileges, a list of 2 symbols should be used to permit all the privileges to be returned in two pieces (if the list will be accepted by a single symbol definition, then the second symbol will be defined as a null string). This requirement is due to the limitation of a DCL symbol value to 255 characters. /PWDATE /PWDATE=symbol will return the ASCII date and time when the password was last changed as an absolute time value. If the password has never been changed, then the string "NONE" will be returned. /PWEXPIRED /PWEXPIRED=symbol will return "YES" if the password has expired (the PWD_EXPIRED flag is set), otherwise "NO" will be returned in the local DCL 'symbol' supplied. /PWLENGTH /PWLENGTH=symbol will return the minimum password length in the local DCL 'symbol' supplied. /PWLIFETIME /PWLIFETIME=symbol will return the password lifetime in the local DCL 'symbol' supplied as a delta-time value. If the password has no expiration time limit, then "INFINITE" will be returned. /PWMINIMUM /PWMINIMUM=symbol will return the minimum password length in the local DCL 'symbol' supplied. Same as /PWLENGTH. /P2DATE /P2DATE=symbol will return the ASCII date and time when the secondary password was last changed as an absolute time value. If the secondary password has never been changed (or if there is no secondary password), then the string "NONE" will be returned. /P2EXPIRED /P2EXPIRED=symbol will return "YES" if the secondary password has expired (the PWD2_EXPIRED flag is set), otherwise "NO" will be returned in the local DCL 'symbol' supplied. /QUEUE_PRIORITY /QUEUE_PRIORITY=symbol will return the maximum job queue priority in the local DCL 'symbol' supplied. /RECONNECT /RECONNECT=symbol will return "YES" if automated terminal reconnection is enabled for this account, otherwise "NO" will be returned (the DISRECONNECT flag is set) in the local DCL 'symbol' supplied. !/REMOTE ! /REMOTE=symbol ! will return the permitted hours of access for this account for ! interative logins via network remote terminals in the local DCL ! 'symbol' supplied. ! /REPORT /REPORT=symbol will return "YES" if reports of login information (last login date, login failures, etc.) are enabled for this account, otherwise "NO" will be returned (the DISREPORT flag is set) in the local DCL 'symbol' supplied. /RESTRICTED /RESTRICTED=symbol will return "YES" if the account forces the use of a LOGIN command procedure but allowes the possibility of exiting to DCL level, otherwise "NO" will be returned in the local DCL symbol supplied. See also /CAPTIVE. /SHRFILLM /SHRFILLM=symbol will return the shared file open limit in the local DCL 'symbol' supplied. /TQELM /TQELM=symbol will return the timer queue limit in the local DCL 'symbol' supplied. /UIC /UIC=symbol will return the UIC in the local DCL 'symbol' supplied. The UIC is returned in the format "[ggg,mmm]" with octal numbers for the group and member number. /USERNAME /USERNAME=symbol will return the username in the local DCL 'symbol' supplied. /WELCOME /WELCOME=symbol will return "YES" if welcoming messages are to be displayed for the account at login. Otherwise, (if the DISWELCOM flag is set) "NO" is returned in the local DCL 'symbol' supplied. /WSDEFAULT /WSDEFAULT=symbol will return the default working set size in the local DCL 'symbol' supplied. /WSEXTENT /WSEXTENT=symbol will return the working set extent in the local DCL 'symbol' supplied. /WSQUOTA /WSQUOTA=symbol will return the working set quota in the local DCL 'symbol' supplied.