!*** MODULE $acmevmsdef IDENT X-3 *** CDEC$ OPTIONS /NOALIGN ! ! ACMEVMSIC structures mirror an ACMEDEF declaration ! until SDL READ works for Ada. ! ! + ! ! $ACM Item Codes ! ! Item codes are 16-bit unsigned values, encoded as follows: ! ! 1 ! 5 8 7 0 ! +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ ! | | | | | | | | | | | | | | | | | ! +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ ! ^ ^ ^ ! | | | ! | | +-- Bit [13] = 0 ==> not subject to VTF-7 <-> UCS conversion ! | | 1 ==> subject to VTF-7 <-> UCS conversion ! | | ! | +---- Bit [14] = 0 ==> input item ! | 1 ==> output item ! | ! +------ Bit [15] = 0 ==> common item ! 1 ==> ACME specific item ! ! - PARAMETER acmevmsic$M_ITEM = '00001FFF'X PARAMETER acmevmsic$m_ucs = '00002000'X PARAMETER acmevmsic$m_output = '00004000'X PARAMETER acmevmsic$m_acme_specific = '00008000'X PARAMETER acmevmsic$k_length = '00000002'X STRUCTURE /acmevmsic/ UNION MAP INTEGER*2 acmevmsic$w_item_code ! Composite field END MAP MAP PARAMETER acmevmsic$S_ITEM = 13 PARAMETER acmevmsic$V_ITEM = 0 ! Ranged value PARAMETER acmevmsic$S_ucs = 1 PARAMETER acmevmsic$V_ucs = 13 ! 0 ==> not subject to VTF-7 <-> UCS conversion ! 1 ==> subject to VTF-7 <-> UCS conversion PARAMETER acmevmsic$S_output = 1 PARAMETER acmevmsic$V_output = 14 ! 0 ==> input item ! 1 ==> output item PARAMETER acmevmsic$S_acme_specific = 1 PARAMETER acmevmsic$V_acme_specific = 15 ! 0 ==> common item ! 1 ==> ACME specific item BYTE %FILL (2) END MAP END UNION END STRUCTURE ! acmevmsic ! ! Item code biasing factors ! ! Backward-compatibility ! Not for initial call ! Contemporary supported ! $CREPRC argument items ! UAI data ! ! ACME-specific output data types ! ! These codes are provided by the VMS ACME for return ! in field MAX_LENGTH of an output Item Set. ! ! The field MAX_LENGTH is named for its purpose within ! Input Item Sets, but for Output Item Sets it allows ! SYS$ACM[W] clients to categorize the output they receive ! and dispatch to specialized handling. ! ! These ACME-specific values are provided only where the caller ! is one the VMS ACME knows can handle these particular binary ! codes, i.e. LOGINOUT. ! ! These data types are defined exclusively to provide backward compatibility ! with interface methods used prior to the introduction of SYS$ACM[W] by ! TNT$SERVER, LOGINOUT LGI-callouts and LOGINOUT DECwindows interfaces. ! They will not be provided to other clients which call SYS$ACM[W]. ! PARAMETER acmevms$k_min_msg_type = '00008000'X PARAMETER acmevms$k_old_decw_pwd_exp_1 = '00008000'X ! Binary expiration warning PARAMETER acmevms$k_old_decw_pwd_exp_2 = '00008001'X ! Binary expiration warning PARAMETER acmevms$k_old_decw_pwd_quality = '00008002'X ! Binary password quality status PARAMETER acmevms$k_old_sysuaf_070 = '00008003'X ! Authorization Record PARAMETER acmevms$k_old_auth_flags = '00008004'X ! Password requirement flags PARAMETER acmevms$k_max_msg_type = '00008004'X ! ! ACME-specific Item Codes for the VMS ACME ! ! Items with these codes from the callr of SYS$ACM[W] will ! be provided to the VMS ACME (exclusively) if they follow ! an instance of General Item Code ACME_TARGET_ACME_ID which ! specifies the VMS ACME. ! ! ACME-specific Item Codes have the high bit (15) set, whereas ! General Item Codes have it clear. ! ! ! Input Item Codes ! ! While SYS$ACM does not specify semantics for the handling ! of multiple input item codes of the same value, the semantics ! of the VMS ACME are uniform for all input item codes -- ! the value associated with the last input item prevails. ! ! ! Input item codes not subject to VTF-7 <-> UCS conversion ! ! ! Backward-compatibility Input Item Codes ! ! These codes are defined exclusively to provide backward compatibility ! with interface methods used prior to the introduction of SYS$ACM[W] by ! TNT$SERVER, LOGINOUT LGI-callouts and LOGINOUT DECwindows interfaces. ! They will not be honored from other clients which call SYS$ACM[W]. ! PARAMETER acmevms$_min_old_in = '00008000'X PARAMETER acmevms$_old_decwindows_flag = '00008000'X ! old DECwindows authentication mechanism PARAMETER acmevms$_old_hashed_password_1 = '00008001'X ! old ARGUS authentication mechanism PARAMETER acmevms$_old_hashed_password_2 = '00008002'X ! old ARGUS authentication mechanism PARAMETER acmevms$_old_lgi_phase = '00008003'X ! old LGI-callout authentication mechanism PARAMETER acmevms$_old_lgi_status = '00008004'X ! old LGI-callout authentication mechanism PARAMETER acmevms$_max_old_in = '00008004'X ! ! Solicited Input Item Codes ! ! These codes support historic LOGINOUT behavour and in addition to ! being retricted to LOGINOUT are not honored on initial calls from ! LOGINOUT. They can only be provided in response to an Input Item Set. ! PARAMETER acmevms$_min_solicited_in = '00008100'X PARAMETER acmevms$_loginout_local_flag = '00008100'X ! LOGINOUT received /LOCAL_PASSWORD PARAMETER acmevms$_loginout_reconn_flag = '00008101'X ! LOGINOUT is authenticating for reconnection PARAMETER acmevms$_max_solicited_in = '00008101'X ! ! General Input Items ! ! These non-converting input item codes are permanent features ! of the VMS ACME, although some require particular privileges. ! ! LOGINOUT_CREPRC_FLAGS is only honored from LOGINOUT, although ! other clients can achieve the same results using other Item Codes. ! The reason LOGINOUT_CREPRC_FLAGS exists is to minimize coding ! changes for the transition of LOGINOUT to using SYS$ACM[W]. ! PARAMETER acmevms$_min_general_in = '00008200'X PARAMETER acmevms$_autologin_allowed_flag = '00008200'X ! autologin is allowed for this request PARAMETER acmevms$_default_principal_flag = '00008201'X ! default principal name if possible PARAMETER acmevms$_genpwd_count = '00008202'X ! desired number of generated passwords PARAMETER acmevms$_genpwd_mandatory_flag = '00008203'X ! generated password must be chosen PARAMETER acmevms$_genpwd_maxlength = '00008204'X ! maximum length of generated password PARAMETER acmevms$_genpwd_minlength = '00008205'X ! minimum length of generated password PARAMETER acmevms$_loginout_creprc_flags = '00008206'X ! CTL$GL_CREPRC_FLAGS from LOGINOUT PARAMETER acmevms$_parent_pid = '00008207'X ! PID of client process PARAMETER acmevms$_preauthentication_flag = '00008208'X ! preauthenticated request PARAMETER acmevms$_uses_system_password = '00008209'X ! this connection uses system passwords PARAMETER acmevms$_max_general_in = '00008209'X ! ! Input item codes subject to VTF-7 <-> UCS conversion ! PARAMETER acmevms$_min_general_in_ucs = '0000A400'X PARAMETER acmevms$_net_proxy = '0000A400'X ! network proxy username string from LOGINOUT PARAMETER acmevms$_parent_username = '0000A401'X ! Username of client process PARAMETER acmevms$_confirm_password_sys = '0000A402'X ! Reenter New System Password PARAMETER acmevms$_confirm_password_1 = '0000A403'X ! Reenter New Primary Password PARAMETER acmevms$_confirm_password_2 = '0000A404'X ! Reenter New Secondary Password PARAMETER acmevms$_max_general_in_ucs = '0000A404'X ! ! Output Item Codes ! ! While SYS$ACM does not specify semantics for the handling ! of multiple output item codes of the same value, the semantics ! of the VMS ACME are uniform for all output item codes -- ! all such codes are honored independently. ! ! ! Output item codes not subject to VTF-7 <-> UCS conversion ! ! ! CREPRC-based output items ! ! These Output Item Codes provide information in a format suitable ! for passing to the $CREPRC System service, freeing callers of any ! need to track the introduction of new VMS process quotas. ! PARAMETER acmevms$_min_creprc_out = '0000C300'X PARAMETER acmevms$_creprc_baspri = '0000C300'X ! Process base priority PARAMETER acmevms$_creprc_image = '0000C301'X ! Image name (LOGINOUT) PARAMETER acmevms$_creprc_prcnam = '0000C302'X ! Process name (blank) PARAMETER acmevms$_creprc_prvadr = '0000C303'X ! Process privilege PARAMETER acmevms$_creprc_quota = '0000C304'X ! Process quota list PARAMETER acmevms$_creprc_uic = '0000C305'X ! UIC for detached process PARAMETER acmevms$_max_creprc_out = '0000C305'X ! ! UAI-based output items ! ! These codes provide the same information returned by $GETUAI, ! but synchronized with the UAI data as used for authentication. ! ! Correspondence between these codes and those from UAIDEF is ! tested in the private part of module STARLET_WE_USE_ by arrays ! ENSURE_UAI_NO_BIGGER_THAN_ACMEVMS_UAI and also by the array ! ENSURE_ACMEVMS_UAI_NO_BIGGER_THAN_UAI. ! ! The UAI_BASE constant defined below, added to normal UAI$_ codes ! used for the $SETUAI and $GETUAI system services will produce ! the following values: ! PARAMETER acmevms$_min_uai_out = '0000C400'X PARAMETER acmevms$_uai_rtype = '0000C400'X ! UAF record type PARAMETER acmevms$_uai_version = '0000C401'X ! UAF format version PARAMETER acmevms$_uai_usrdatoff = '0000C402'X ! offset of counted string of user data PARAMETER acmevms$_uai_username = '0000C403'X ! username PARAMETER acmevms$_uai_username_tag = '0000C404'X ! tag to differentiate records PARAMETER acmevms$_uai_uic = '0000C405'X ! user ID code PARAMETER acmevms$_uai_mem = '0000C406'X ! member subfield PARAMETER acmevms$_uai_grp = '0000C407'X ! group subfield PARAMETER acmevms$_uai_sub_id = '0000C408'X ! user sub-identifier PARAMETER acmevms$_uai_parent_id = '0000C409'X ! identifier of owner of this account PARAMETER acmevms$_uai_account = '0000C40A'X ! account name PARAMETER acmevms$_uai_owner = '0000C40B'X ! owner's name PARAMETER acmevms$_uai_defdev = '0000C40C'X ! default device PARAMETER acmevms$_uai_defdir = '0000C40D'X ! default directory PARAMETER acmevms$_uai_lgicmd = '0000C40E'X ! login command file PARAMETER acmevms$_uai_defcli = '0000C40F'X ! default command interpreter PARAMETER acmevms$_uai_clitables = '0000C410'X ! user CLI tables PARAMETER acmevms$_uai_pwd = '0000C411'X ! hashed password PARAMETER acmevms$_uai_pwd2 = '0000C412'X ! second password PARAMETER acmevms$_uai_logfails = '0000C413'X ! count of login failures PARAMETER acmevms$_uai_salt = '0000C414'X ! random password salt PARAMETER acmevms$_uai_encrypt = '0000C415'X ! primary password hash algorithm PARAMETER acmevms$_uai_encrypt2 = '0000C416'X ! secondary password hash algorithm PARAMETER acmevms$_uai_pwd_length = '0000C417'X ! minimum password length PARAMETER acmevms$_uai_expiration = '0000C418'X ! expiration date for account PARAMETER acmevms$_uai_pwd_lifetime = '0000C419'X ! password lifetime PARAMETER acmevms$_uai_pwd_date = '0000C41A'X ! date of password change PARAMETER acmevms$_uai_pwd2_date = '0000C41B'X ! date of 2nd password change PARAMETER acmevms$_uai_lastlogin_i = '0000C41C'X ! date of last interactive login PARAMETER acmevms$_uai_lastlogin_n = '0000C41D'X ! date of last non-interactive login PARAMETER acmevms$_uai_priv = '0000C41E'X ! process privilege vector PARAMETER acmevms$_uai_def_priv = '0000C41F'X ! default process privileges PARAMETER acmevms$_uai_min_class = '0000C420'X ! minimum security class PARAMETER acmevms$_uai_max_class = '0000C421'X ! maximum security class PARAMETER acmevms$_uai_flags = '0000C422'X ! user flags longword PARAMETER acmevms$_uai_network_access_p = '0000C423'X ! hourly network access, primary PARAMETER acmevms$_uai_network_access_s = '0000C424'X ! hourly network access, secondary PARAMETER acmevms$_uai_batch_access_p = '0000C425'X ! hourly batch access, primary PARAMETER acmevms$_uai_batch_access_s = '0000C426'X ! hourly batch access, secondary PARAMETER acmevms$_uai_local_access_p = '0000C427'X ! hourly local access, primary PARAMETER acmevms$_uai_local_access_s = '0000C428'X ! hourly local access, secondary PARAMETER acmevms$_uai_dialup_access_p = '0000C429'X ! hourly dialup access, primary PARAMETER acmevms$_uai_dialup_access_s = '0000C42A'X ! hourly dialup access, secondary PARAMETER acmevms$_uai_remote_access_p = '0000C42B'X ! hourly remote access, primary PARAMETER acmevms$_uai_remote_access_s = '0000C42C'X ! hourly remote access, secondary PARAMETER acmevms$_uai_primedays = '0000C42D'X ! bits representing primary days PARAMETER acmevms$_uai_pri = '0000C42E'X ! base process priority PARAMETER acmevms$_uai_quepri = '0000C42F'X ! maximum job queuing priority PARAMETER acmevms$_uai_maxjobs = '0000C430'X ! maximum jobs for UIC allowed PARAMETER acmevms$_uai_maxacctjobs = '0000C431'X ! maximum jobs for account allowed PARAMETER acmevms$_uai_maxdetach = '0000C432'X ! maximum detached processes for UIC PARAMETER acmevms$_uai_prccnt = '0000C433'X ! subprocess creation limit PARAMETER acmevms$_uai_biolm = '0000C434'X ! buffered I/O limit PARAMETER acmevms$_uai_diolm = '0000C435'X ! direct I/O limit PARAMETER acmevms$_uai_tqcnt = '0000C436'X ! timer queue entry limit PARAMETER acmevms$_uai_astlm = '0000C437'X ! AST queue limit PARAMETER acmevms$_uai_enqlm = '0000C438'X ! enqueue limit PARAMETER acmevms$_uai_fillm = '0000C439'X ! open file limit PARAMETER acmevms$_uai_shrfillm = '0000C43A'X ! shared file limit PARAMETER acmevms$_uai_wsquota = '0000C43B'X ! working set size quota PARAMETER acmevms$_uai_dfwscnt = '0000C43C'X ! default working set size PARAMETER acmevms$_uai_wsextent = '0000C43D'X ! working set size limit PARAMETER acmevms$_uai_pgflquota = '0000C43E'X ! page file quota PARAMETER acmevms$_uai_cputim = '0000C43F'X ! CPU time quota PARAMETER acmevms$_uai_bytlm = '0000C440'X ! buffered I/O byte count limit PARAMETER acmevms$_uai_pbytlm = '0000C441'X ! paged buffer I/O byte count limit PARAMETER acmevms$_uai_jtquota = '0000C442'X ! job-wide logical name table creation quota PARAMETER acmevms$_uai_proxy_lim = '0000C443'X ! number of proxies user can grant PARAMETER acmevms$_uai_proxies = '0000C444'X ! number of proxies granted PARAMETER acmevms$_uai_account_lim = '0000C445'X ! number of sub-accounts allowed PARAMETER acmevms$_uai_accounts = '0000C446'X ! number of sub-accounts in use PARAMETER acmevms$_uai_user_data = '0000C447'X ! user data area ! Next two codes not supported for output PARAMETER acmevms$_uai_password = '0000C448'X ! plaintext primary password PARAMETER acmevms$_uai_password2 = '0000C449'X ! plaintext secondary password ! Previous two codes not supported for output PARAMETER acmevms$_uai_def_class = '0000C44A'X ! default security classification PARAMETER acmevms$_max_uai_out = '0000C44A'X ! ! Output item codes subject to VTF-7 <-> UCS conversion ! ! + ! ! Miscellaneous constants ! ! - PARAMETER acmevms$k_auth_mech_argus = '00D38000'X ! Authentication mechanism for TNT$SERVER PARAMETER acmevms$k_uai_base = '0000C3FF'X ! Base to which UAI$_ codes can be added PARAMETER acmevms$k_maxchar_vms_username = '00000020'X ! Maximum size of a Mapped VMS Username CDEC$ END OPTIONS