cdc:nos2.source:opl871:modval
Table of Contents
MODVAL
Table Of Contents
- [00017] MODVAL - VALIDATION FILE MANAGER.
- [00019] USER VALIDATION FILE MANAGER.
- [01357] PROGRAM EQUIVALENCES.
- [01379] MACRO DEFINITIONS
- [01381] APLW - ALLOWED PERMISSIONS LIMITS PARAMETER WORD.
- [01397] DTCS - DEFINE TABLE FOR PERMISSION CONVERSION TO SOURCE.
- [01414] DTPC - DEFINE TABLE OF PERMISSION CONTROL WORDS.
- [01446] DTPS - DEFINE TABLE OF INPUT PROCESSING SUBROUTINES.
- [01473] TFRW1 - DEFINE WORD 1 OF A *TFR* ENTRY.
- [01534] TFRW2 - DEFINE WORD 2 OF A *TFR* ENTRY.
- [01556] TFRW3 - DEFINE WORD 3 OF A *TFR* ENTRY.
- [01575] DEFAW - DEFINE *LIMITS* MESSAGE FOR A BIT IN
- [01594] SCLASS - DEFINE SERVICE CLASS TABLE.
- [01642] PROGRAM EQUIVALENCES.
- [01678] MANAGED TABLE AND DIRECT CELL INITIALIZATION.
- [01731] DATA AREA.
- [01801] TANB - SCRATCH BLOCK FOR USER RECORD ASSEMBLY.
- [01858] TAWI - TABLE OF ACCESS WORD IDENTIFIERS.
- [01919] TRTP - TABLE OF REMOTE TERMINAL ACCESS PERMISSIONS.
- [01941] TSCV - TABLE OF SERVICE CLASS VALIDATION BITS.
- [01958] TSVM - TABLE OF SERVICE CLASS VALIDATION MASK IDENTIFIERS.
- [01977] TOSC - TABLE OF ORIGIN TYPES WITH DEFINED USER DEFAULT
- [01998] TSOT - TABLE OF OTHER ORIGIN TYPE MNEMONICS SUPPORTED.
- [02012] TAPV - TABLE OF SECURITY PRIVILEGE VALIDATION BITS.
- [02035] TALB - TABLE OF ACCESS LEVEL BITS.
- [02058] TACC - TABLE OF ACCESS CATEGORY BITS.
- [02110] DATA DEFINITIONS.
- [02111] TPAI - TABLE OF TERMINAL PARITY IDENTIFIERS.
- [02119] TPXI - TABLE OF TERMINAL TRANSMISSION MODES.
- [02127] TTTI - TABLE OF TERMINAL TYPES.
- [02139] TTCI - TABLE OF TERMINAL CHARACTER SETS.
- [02146] TISI - TABLE OF TERMINAL INITIAL SUBSYSTEMS.
- [02283] TODV - TABLE OF DEFAULT VALUES FOR USER RECORD BLOCK.
- [02431] TINE - TABLE OF INPUT ENTRIES. ONE WORD ENTRIES -
- [02516] TKDE - TABLE OF K-DISPLAY ENTRIES.
- [02754] TFR - TABLE TO FORMAT RECORD FOR SOURCE, K-DISPLAY, AND
- [03095] TMBS - TABLE FOR MAP BACK TO SOURCE.
- [03146] MAIN ROUTINES.
- [03148] MOD - PROCESS NORMAL CALL.
- [03207] TOFP - TABLE OF FUNCTION PROCESSORS.
- [03221] CHV - CHANGE VALIDATION.
- [03263] TCPV - TABLE OF COMMAND PARAMETER VALUES.
- [03276] PSW - CHANGE PASSWORD.
- [03366] UPR - PROCESS USER PROLOGUE FILE NAME.
- [03405] PROCESS COMMAND OPTIONS.
- [03407] PID - PROCESS INPUT DATA FOR CREATE. (OP = C).
- [03441] PUD - PROCESS UPDATE DATA. (OP = U, K, OR Z).
- [03501] PRF - PROCESS REFORMAT. (OP = R).
- [03633] PCS - PROCESS CHANGE TO SOURCE. (OP = S).
- [03672] PIO - PROCESS LIMITS.
- [03713] PLO - PROCESS LIST OPTION. (OP = L).
- [03811] DIRECTIVE PROCESSORS.
- [03813] AAD - ASSEMBLE ALPHANUMERIC DATA.
- [03837] AAN - ASSEMBLE USER NAME.
- [03874] AAV - ASSEMBLE SECURITY VALIDATION PRIVILEGES.
- [03931] ACN - ASSEMBLE CHARGE NUMBER.
- [03950] ACW - ASSEMBLE PERMISSION CONTROL WORD.
- [04081] PCDW - PERMISSION BIT WORD TO CONTROL USE OF DEFAULT.
- [04095] TPCW - TABLE OF PERMISSION CONTROL WORDS.
- [04122] ADS - ASSEMBLE USER DEFAULT SERVICE CLASS.
- [04209] AEA - ASSEMBLE EQUIVALENCED ARGUMENTS.
- [04239] AEP - ASSEMBLE ENCRYPTED PASSWORD.
- [04279] AMX - ASSEMBLE MAXIMUM RESOURCE LIMITS.
- [04325] AND - ASSEMBLE NUMERIC DATA.
- [04355] API - ASSEMBLE PERSONAL IDENTIFICATION.
- [04378] APN - ASSEMBLE PROJECT NUMBER.
- [04400] APW - ASSEMBLE PASS WORD.
- [04469] AED - ASSEMBLE EXPIRATION DATE.
- [04521] ASC - ASSEMBLE SECURITY COUNT.
- [04542] ATE - ASSEMBLE EXPIRATION TERM.
- [04602] AUX - ASSEMBLE USER INDEX.
- [04634] CUI - CHECK USER INDEX.
- [04672] DAN - DELETE USER NAME.
- [04729] DIP - DIRECTIVE INPUT PROCESSOR.
- [05022] IDE - INPUT DATA ERROR.
- [05137] OBS - PROCESS OBSOLETE DIRECTIVE.
- [05153] PAG - PAGE K-DISPLAY.
- [05202] PDD - PROCESS DIRECTIVE DATA.
- [05249] TOPS - TABLE OF PROCESSING SUBROUTINES FOR INPUT DATA.
- [05278] VALIDATION FILE MANIPULATION.
- [05280] FFA - FINISH FORMER USER NAME.
- [05494] GAE - GET USER ENTRY.
- [05537] GNB - GET NEXT DATA BLOCK.
- [05609] RDB - READ DATA BLOCK.
- [05674] WDB - WRITE DATA BLOCK.
- [05766] SOURCE CONVERSION SUBROUTINES.
- [05768] ADP - ADD PARENS.
- [05789] AOC - ALTERNATE OCTAL CONVERSION.
- [05826] APC - APPLICATION PERMISSIONS CONVERSION FOR DISPLAY.
- [05862] CAV - CALCULATE ACTUAL VALUE.
- [05916] CDS - CONVERT DATE TO SOURCE.
- [05950] CON - CONVERT OCTAL NUMBER TO DISPLAY.
- [05964] CPS - CONVERT PERMISSIONS TO SOURCE.
- [06022] TPCS - TABLE OF PERMISSION BITS CONVERSION TO SOURCE.
- [06042] CSC - CONVERT USER DEFAULT SERVICE CLASSES.
- [06079] CSD - CONVERT USER DEFAULT SERVICE CLASSES TO SOURCE.
- [06123] DAT - CONVERT PACKED DATE TO DISPLAY.
- [06142] ISB - INSERT B (RADIX).
- [06160] MRJ - MULTIPLE WORD RIGHT JUSTIFY.
- [06208] PLM - PRINT *LIMITS* MESSAGES.
- [06356] TAPL - TABLE OF ALLOWED PERMISSIONS LIMITS PARAMETERS.
- [06376] STB - SEARCH TABLE.
- [06399] SRD - SET RECORD DISPLAYS.
- [06575] MISCELLANEOUS ROUTINES.
- [06577] ABT - ABORT EXIT.
- [06621] ACI - ASSEMBLE CHARACTERS INTERFACE.
- [06678] ADT - ADD TERM TO CURRENT DATE.
- [06701] AUI - ASSIGN USER INDEX.
- [06747] CDP - CLEAR DEFAULT PERMISSION BITS.
- [06782] CEP - CLEAR ERROR PROCESSING.
- [06798] CER - CHECK FOR ERROR.
- [06854] CLN - CHECK LINE NUMBER.
- [06935] COB - CHECK OUTPUT BUFFER.
- [06963] CPR - CHECK PASSWORD REQUIREMENT.
- [07009] CSM - CHECK SECURITY MODE.
- [07036] CUN - COMPARE USER NAMES.
- [07057] EPW - ENCRYPT PASSWORD.
- [07080] IAM - ISSUE ACCOUNT FILE MESSAGE.
- [07156] ICE - INDEXED CODE EXECUTION.
- [07172] LID - LIST INPUT DIRECTIVES.
- [07210] PCE - PURGE CATALOG ENTRIES.
- [07263] SEP - SET ERROR PROCESSING.
- [07280] SUI - SAVE AVAILABLE USER INDEX TABLE.
- [07294] SPB - SET PERMISSION BIT IN PERMISSION CONTROL WORD.
- [07333] CAF - CHECK ALTERNATE FAMILY.
- [07370] TOV - TABLE OVERFLOW PROCESSOR.
- [07406] VPW - VERIFY PASSWORD.
- [07435] WCE - WRITE CATALOG ENTRY TO OUTPUT.
- [07514] K-DISPLAY AREA.
- [07766] DATA AREA.
- [07768] TAUI - TABLE OF AVAILABLE USER INDICES.
- [07774] SSJ - TABLE OF USER ACCESS PARAMETERS.
- [07785] PRESET ROUTINES.
- [07787] PRS - PRESET.
- [08559] DEL - DELAY FOR A SPECIFIED PERIOD.
- [08589] ESP - ENTER SECURE PASSWORDS.
- [08881] GRC - GENERATE RANDOM CHARACTERS.
- [08928] RPW - RANDOMIZE PASSWORD.
- [09065] CFN - COMPARE FILE NAMES.
- [09105] TFNC - TABLE OF FILE NAME CONFLICT COMPARISIONS.
- [09124] PKP - PROCESS KEYWORD OR POSITIONAL ARGUMENTS.
Source Code
- MODVAL.txt
- IDENT MODVAL,ORIG
- ABS
- SST DSSL,PRFE,SCLL
- SYSCOM B1
- ENTRY MODVAL
- ENTRY CHVAL
- ENTRY GENVAL
- ENTRY LIMITS
- ENTRY PASSWOR
- ENTRY UPROC
- ENTRY SDM=
- ENTRY RFL=
- ENTRY SSJ=
- LIST F
- *COMMENT MODVAL - USER VALIDATION FILE MANAGER.
- COMMENT COPYRIGHT CONTROL DATA SYSTEMS INC. 1992.
- TITLE MODVAL - VALIDATION FILE MANAGER.
- SPACE 4,10
- *** MODVAL - USER VALIDATION FILE MANAGER.
- * E.J. FEESER 70/10/09.
- * C.J. MATULE 70/10/09.
- * R.P. ROHRBOUGH 72/09/28. REWRITE.
- * R. A. JAPS. 74/12/16. MODIFICATION.
- * J. L. LARSON. 74/12/16. MODIFICATION.
- * C. A. LACEY. 77/01/28.
- * J. L. LARSON. 83/02/17. RESTRUCTURE.
- SPACE 4,10
- *** *MODVAL* PROVIDES CREATION, MODIFICATION, AND DISPLAYS FOR
- * THE SYSTEM VALIDATION FILE. THIS FILE CONTAINS BASIC
- * INFORMATION NECESSARY TO VALIDATE A USER-S ACCESS TO THE
- * SYSTEM, AND PROVIDES SOME CONTROLS ON SYSTEM RESOURCE USAGE.
- * MORE COMPREHENSIVE MONITORING OF RESOURCES CAN BE ACHIEVED
- * BY USING AN ADDITIONAL *USER PROFILE* VALIDATION FILE. FOR
- * MORE INFORMATION, REFER TO *USER PROFILE CONTROL*.
- *
- * A MECHANISM EXISTS WITHIN *MODVAL* WHICH ALLOWS IT TO
- * BE ASSEMBLED IN DIFFERENT WAYS BY USING THE
- * *DEFINE *MODIFY* DIRECTIVE AND ASSIGNING THE
- * SYMBOL, CUE$, THE VALUE CORRESPONDING TO THE
- * DESIRED CUSTOMIZED USER ENVIRONMENT OPTION.
- *
- * AT THIS TIME, GIVING CUE$ A VALUE OF 2 CAUSES
- * ASSEMBLY OF CODE REQUIRED FOR CD2000 INSTALLATIONS.
- *
- * IN THE FUTURE, *MODVAL* CAN BE CHANGED TO ASSEMBLE
- * IN YET OTHER WAYS DEPENDING ON THE REQUIREMENTS OF
- * EACH CUSTOMIZED USER ENVIRONMENT. THIS CAN BE
- * ACCOMPLISHED BY MODIFYING THE VALID COMMAND LIST IN
- * THE *CUESHEL* DECK AND BY ASSIGNING A VALUE OF 3, 4,
- * ETC. TO CUE$ AND ADDING THE REQUIRED CONDITIONAL CODE
- * TO *MODVAL*.
- *
- *IF EQ,CUE$,2
- CUE$ EQU 2
- *ELSE
- CUE$ EQU 1
- *ENDIF
- SPACE 4,10
- *** COMMAND FORMAT.
- SPACE 4,10
- *** MODVAL (P1=F1,P2=F2,...,PN=FN) -DIRECTIVES FOR *Z* OPTION-
- *
- *
- * WHERE P1,...,PN CAN BE THE FOLLOWING -
- *
- * I = INPUT DATA FOR OP=C OR OP=U OPTIONS.
- * DEFAULT - *INPUT*.
- *
- * L = LIST FILE.
- * DEFAULT - *OUTPUT*.
- *
- * P = USER VALIDATION FILE.
- * DEFAULT - *VALIDUS*.
- *
- * N = NEW OR REFORMATTED VALIDATION FILE.
- * DEFAULT - *NEWVAL*.
- *
- * S = SOURCE FILE FOR OP=S.
- * DEFAULT - *SOURCE*.
- *
- * U = FILE TO OBTAIN AVAILABLE USER INDICES FROM FOR
- * UPDATE OPTION. FILE MUST BE CREATED BY PREVIOUS
- * *MODVAL* RUN.
- * DEFAULT - *VALINDS*.
- *
- * FM = FAMILY NAME IF OTHER THAN SYSTEM DEFAULT.
- * LEGAL ONLY FROM SYSTEM ORIGIN.
- *
- * D = IF SPECIFIED, *MODVAL* WILL NOT ABORT ON DIRECTIVE
- * ERRORS. EQUIVALENCING NOT ALLOWED.
- *
- * LO = LIST OPTIONS. WHICH CAN BE ANY OF THE FOLLOWING -
- * E = LIST ERRORS ONLY (OP = C, U, OR Z).
- * A = SORT BY USER NAME (OP = L).
- * N = SORT BY USER INDEX (OP = L).
- * L = CATALOG LOCAL FILE (OP = L).
- * DEFAULT - *A*.
- * ALTERNATE DEFAULT - *EN*.
- *
- * OP = OPTION(S) WHICH CAN BE ANY OF THE FOLLOWING -
- * C = CREATE, PROCESS INPUT FILE AND CREATE A VALIDATION
- * FILE. MUST OCCUR ALONE.
- * U = UPDATE, UPDATE FILE SPECIFIED BY *P* KEYWORD WITH
- * DATA ON INPUT FILE. SETS *NORERUN* ON JOB.
- * R = REFORMAT, RESTRUCTURE THE FILE SPECIFIED BY *P*
- * KEYWORD TO FILE SPECIFIED BY *N* KEYWORD.
- * IF JOB ORIGIN IS SYSTEM, ALL FILES UNDER USER
- * INDICES WHICH WERE USED UNDER THE OLD *VALIDUS*
- * FILE AND ARE NO LONGER USED WILL BE PURGED.
- * APPLIES ONLY TO INDICES 1 THROUGH *AUIMX*.
- * S = RETURN THE VALIDATION FILE SPECIFIED BY THE *P*
- * KEYWORD TO SOURCE FORMAT ON THE FILE SPECIFIED BY
- * THE *S* KEYWORD.
- * K = K-DISPLAY OPTION, ALL OTHER OPTIONS ARE CLEARED,
- * AND INSTRUCTIONS MUST BE ENTERED VIA THE
- * K-DISPLAY.
- * Z = COMMAND UPDATE OPTION. PROCESS THE DIRECTIVES
- * FOLLOWING THE TERMINATOR ON THE *MODVAL*
- * COMMAND. ALL OTHER OPTIONS ARE CLEARED.
- * SETS *NORERUN* ON JOB.
- * L = LIST OPTION. LIST VALIDATION FILE ENTRIES BY
- * USER NAME OR USER INDEX (SEE *LO* KEYWORD).
- * USER NAME, USER INDEX, CREATION AND LAST
- * MODIFICATION DATES WILL BE LISTED. MUST OCCUR
- * ALONE.
- * THE OPTIONS *C*, *U*, *R*, AND *S* REQUIRE THE USER
- * TO PROVIDE HIS OWN FILES. *OP=URS* IS VALID.
- *
- * FA = FORCE ATTACH OF *VALIDUS* AND *VALINDS* FOR *S*, *R*,
- * AND *U* OPTIONS (MUST BE SYSTEM ORIGIN JOB).
- *
- * CV = CONVERSION OPTIONS. WHICH CAN BE ANY COMBINATION
- * OF THE FOLLOWING -
- * A = OPTION TO CONVERT FROM PRE-NOS 2.0
- * TO NOS 2.2 *VALIDUS*.
- * DURING CREATION RUN, *TC=STANDARD*
- * INPUT DIRECTIVE WILL BE CONVERTED TO
- * *TC=NORMAL*.
- * C = OPTION TO CONVERT FROM PRE-NOS 2.3 *VALIDUS*
- * TO NOS 2.3 *VALIDUS*.
- * DURING CREATION RUN, *AW=NUL* INPUT DIRECTIVE
- * WILL BE CONVERTED TO *AW=NUL*, *AW=CNRD*, GIVING
- * CHARGE NOT RESTRICTED TO DEFAULT PERMISSION.
- * D = OPTION TO CONVERT PRE-NOS 2.3 *VALIDUS* TO
- * NOS 2.3.
- * DURING CREATION RUN, *AW=NUL* INPUT DIRECTIVE
- * WILL BE CONVERTED TO *AW=NUL*, *AW=COPR*, GIVING
- * OVERRIDE PASSWORD RANDOMIZATION PERMISSION.
- * F = OPTION TO CONVERT FROM PRE-NOS 2.2 TO NOS 2.2
- * *VALIDUS*.
- * DURING CREATION RUN, *AW=NUL* INPUT DIRECTIVE
- * WILL BE CONVERTED TO *AW=NUL*, *AW=CSAF*, GIVING
- * ALTERNATE FAMILY SPECIFICATION PERMISSION.
- * G = OPTION TO CONVERT FROM PRE-NOS 2.5.1 *VALIDUS*
- * TO NOS 2.5.1 *VALIDUS*.
- * DURING CREATION RUN, *AW=NUL* INPUT DIRECTIVE
- * WILL BE CONVERTED TO *AW=NUL*, *AW=COPI*, GIVING
- * OMIT PERSONAL IDENTIFICATION ENTRY PERMISSION.
- * H = OPTION TO CONVERT FROM PRE-NOS 2.5.1 *VALIDUS*
- * TO NOS 2.5.1 *VALIDUS*.
- * DURING CREATION RUN, *AW=NUL* INPUT DIRECTIVE
- * WILL BE CONVERTED TO *AW=NUL*, *AW=CACA*, GIVING
- * ALLOWED CONCURRENT ACCESS PERMISSION.
- * J = OPTION TO CONVERT FROM PRE-NOS 2.5.1 *VALIDUS*
- * TO NOS 2.5.1 *VALIDUS*.
- * DURING CREATION RUN, *AP=IAF* INPUT DIRECTIVE
- * WILL BE CONVERTED TO *AP=IAF*, *AP=VEIAF*, GIVING
- * PERMISSION FOR BOTH APPLICATIONS, WHICH IS
- * EQUIVALENT TO *AP=IAF* IN PRE-NOS 2.5.1 SYSTEMS.
- * K = OPTION TO CONVERT FROM PRE-NOS LEVEL 2.7.3 L780
- * *VALIDUS* TO NOS LEVEL 2.7.3 L780 *VALIDUS*.
- * DURING CREATION RUN, *AW=NUL* INPUT DIRECTIVE WILL
- * BE CONVERTED TO *AW=NUL*, *AW=CSAU*, *AW=CRAU* TO
- * ALLOW ALTERNATE USER NAME ON SECONDARY *USER*
- * COMMANDS AND ON ROUTED INPUT FILE *USER* COMMANDS.
- * ALSO, *AW=CSAF* WILL BE CONVERTED TO *AW=CSAF*,
- * *AW=CRAF* TO ALLOW ALTERNATE FAMILY ON BOTH
- * SECONDARY *USER* COMMANDS AND ON ROUTED INPUT FILE
- * *USER* COMMANDS, WHICH IS EQUIVALENT TO *AW=CSAF*
- * ON PRE-NOS LEVEL 2.7.3 SYSTEMS.
- * IF *CV=F* IS SPECIFIED WITH *CV=K*, *AW=CRAU* WILL
- * BE GENERATED BY THE *AW=NUL* DIRECTIVE.
- *
- * SI = WHEN SPECIFIED, INDICATES THAT THE INPUT FOR A CREATE
- * RUN (*OP=C* OPTION) WAS GENERATED BY A PREVIOUS
- * SOURCE RUN (*OP=S* OPTION). THE AUTOMATIC CREATION
- * OF THE SYSTEM, LIBRARY, MSF CATALOG, AND APPLICATION
- * USER NAMES IS SUPPRESSED. LEGAL ONLY
- * WITH *OP=C* OPTION. CANNOT BE EQUIVALENCED.
- * THE *SI* PARAMETER SHOULD NOT BE USED WHEN INITIALLY
- * CREATING A NOS 2.2 VALIDATION FILE SINCE SPECIAL
- * USER NAMES NEED ADDITIONAL SECURITY IDENTIFIERS
- * PRESET BY *MODVAL*.
- *
- * RP = WHEN SPECIFIED INDICATES THAT PASSWORDS ARE NOT
- * REQUIRED. CAN ONLY BE SELECTED WITH THE *OP=C* OPTION
- * AND SHOULD BE USED ONLY WHEN THE *INPUT* FILE IS THE
- * FILE GENERATED BY A PREVIOUS *OP=S* RUN IN WHICH THE
- * OLD USER VALIDATION FILE CONTAINED PASSWORDS OF LENGTH
- * LESS THAN THE MINIMUM REQUIRED.
- *
- * IF NO PARAMETERS ARE SUPPLIED ON THE COMMAND AND
- * ORIGIN TYPE IS SYSTEM, THE *K* OPTION IS SELECTED.
- * OTHERWISE, DEFAULT FOR *OP* IS *U*.
- *
- * UNDER *K*, *Z*, AND *L* OPTIONS, THE SYSTEM VALIDATION
- * FILE IS MANIPULATED. *K*, *Z*, AND *L* REQUIRE SYSTEM
- * ORIGIN TYPE TO RUN. APPLIES TO *L* ONLY WHEN *L* LIST OPTION
- * IS NOT SPECIFIED.
- SPACE 4,10
- *** GENVAL,FM=FAMILY.
- *
- * CREATE VALIDATION FILE ON A FAMILY THAT DOES NOT CURRENTLY
- * HAVE ONE DEFINED. VALID ONLY FROM SYSTEM ORIGIN.
- *
- * FM = FAMILY, IF NOT SYSTEM DEFAULT.
- SPACE 4,10
- *** PASSWOR(OLDPW,NEWPW,PT=X,XD=YYMMDD,XT=NNNN)
- *
- * CHANGE USER PASSWORD *OLDPW* TO *NEWPW*.
- *
- * *PT* - SPECIFY WHICH PASSWORD TO CHANGE.
- * B - BATCH PASSWORD.
- * I - INTERACTIVE PASSWORD.
- * IB OR BI - BOTH BATCH AND INTERACTIVE PASSWORDS.
- * *XD* - SET EXPIRATION DATE TO YYMMDD.
- * YY = YEAR
- * MM = MONTH
- * DD = DAY.
- * *XT* - SET EXPIRATION DATE TO (CURRENT DATE + NNNN).
- * NNNN - DAYS MUST BE .GE. 0 AND .LE. 4095 (7777B).
- * ZERO SETS PASSWORD EXPIRING IMMEDIATELY.
- * 4095 OR 7777B OR SPECIAL CHARACTER * SETS
- * NON-EXPIRING PASSWORD.
- *
- * THE *XD* AND *XT* PARAMETERS MAY NOT BE SPECIFIED TOGETHER.
- *
- * THE OLD AND NEW PASSWORDS MUST BE SPECIFIED TO CHANGE THE
- * EXPIRATION DATE.
- *
- * THE *PT* PARAMETER MAY BE USED TO SPECIFY WHICH PASSWORD
- * (INTERACTIVE, BATCH, OR BOTH) TO CHANGE. *PT=IB* MAY NOT BE
- * SELECTED IF PASSWORD RANDOMIZATION IS SET. IF *PT=IB* IS
- * SELECTED BOTH THE OLD BATCH AND INTERACTIVE PASSWORDS MUST
- * MATCH. IF THE *PT* PARAMETER IS NOT SPECIFIED, *PASSWOR*
- * WILL CHANGE THE PASSWORD CORRESPONDING TO THE JOB ORIGIN TYPE
- * EXCEPT IF *COMSACC* CONSTANT *DEPT* IS SET TO ZERO, IN WHICH
- * CASE BOTH PASSWORDS WILL BE CHANGED.
- *
- * IF PASSWORD RANDOMIZATION IS REQUIRED, THE INTERACTIVE AND
- * BATCH PASSWORDS CAN ONLY BE CHANGED FROM A JOB WITH *IAOT*
- * ORIGIN TYPE.
- *
- * USER PREVIOUSLY MUST HAVE EITHER
- * 1. LOGGED IN ON A TERMINAL.
- * 2. ISSUED A USER COMMAND.
- *
- * TO PROVIDE A VALIDATED USER NAME TO CHANGE PASSWORD.
- * THE NEW PASSWORD ENTERED MUST BE AT LEAST *RPWL*
- * CHARACTERS IN LENGTH.
- *
- * IF THE *PASSWOR* COMMAND IS ENTERED WITHOUT ANY
- * PARAMETERS, SECURE ENTRY OF PASSWORDS WILL BE PROCESSED.
- * IF PASSWORD RANDOMIZATION IS REQUIRED, THE USER MUST SPECIFY
- * AT LEAST TWO CHARACTERS FOR THE NON-RANDOMIZED PORTION OF THE
- * NEW PASSWORD. THE SYSTEM WILL GENERATE AND DISPLAY RANDOM
- * ALPHANUMERIC CHARACTERS WHICH ARE APPENDED TO THE END OF THE
- * USER-SPECIFIED PORTION OF THE NEW PASSWORD AND MUST BE
- * ENTERED AS PART OF THE NEW PASSWORD.
- SPACE 4,10
- *** LIMITS,L=LFN.
- *
- *
- * WRITE VALIDATION PARAMETERS TO *LFN* FILE OR THE DEFAULT
- * *OUTPUT* FILE.
- SPACE 4,10
- *** UPROC (FN=LFN)
- * UPROC,LFN.
- *
- *
- * ALLOW THE USER TO ENTER THE USER PROLOGUE FILE NAME *LFN*
- * INTO THE VALIDATION FILE. THE USER PROLOGUE FILE WILL BE
- * EXECUTED DURING PRIMARY CHARGE PROCESSING.
- *
- * USER PREVIOUSLY MUST HAVE EITHER
- * 1. LOGGED IN ON A TERMINAL.
- * 2. ISSUED A USER COMMAND.
- *
- * TO PROVIDE A VALIDATED USER NAME TO CREATE OR CHANGE USER
- * PROLOGUE FILE NAME.
- *
- * THE USER PROLOGUE FILE NAME WILL BE CLEARED IF NO PARAMETER
- * OR A ZERO PARAMETER IS SPECIFIED.
- SPACE 4,10
- *** CHVAL,DI=DATA,...,DI=DATA.
- *
- *
- * ALLOW THE USER TO REDEFINE CERTAIN VALIDATION DATA.
- * *DI* IS THE DATA IDENTIFIER FOR THE VALIDATION DATA TO BE
- * CHANGED. *DATA* IS THE NEW VALUE FOR THE INFORMATION.
- *
- * ALLOWED DATA IDENTIFIERS ARE -
- *
- * UC USER DEFAULT SERVICE CLASS
- SPACE 4,10
- *** INPUT DATA.
- *
- *
- * EACH NEW USER NAME ENTRY MUST BEGIN WITH A SLASH
- * (/) IN COLUMN 1 AND IS FOLLOWED BY THE USER NAME.
- * THE USER NAME CONSISTS OF ONE TO SEVEN ALPHANUMERIC
- * CHARACTERS (* ALSO ALLOWED), TERMINATED BY A SEPARATOR.
- * ALL DATA FOR A USER NAME ENTRY IS FREE FORMAT THROUGH
- * COLUMN 72 (ALL BLANKS IGNORED), HOWEVER,
- * A DIRECTIVE CANNOT BE SPLIT BETWEEN
- * COMMANDS OR LINES. A DIRECTIVE CONSISTS OF AN IDENTIFIER
- * AND A DATA FIELD SEPARATED BY AN *=* (EVEN IF DATA FIELD
- * IS NULL). THE USER NAME AND EACH DIRECTIVE MUST BE
- * SEPARATED BY A SPECIAL CHARACTER (ANY EXCEPT */*, *=*,
- * COLON AND BLANK), OR END-OF-LINE.
- * AN ASTERISK (*) CAN BE USED TO SEPARATE ALL DIRECTIVES
- * EXCEPT USER NAME, CHARGE NUMBER, AND PROJECT NUMBER.
- * ALL DATA RELATIVE TO A USER NAME MUST APPEAR IN THE
- * USER NAME RECORD.
- *
- * EXAMPLE INPUT STREAM -
- *
- * /USERNAM
- * PW=SAFE
- * TL=77B
- * MT=2
- * NF=6
- * MS=53B
- * AW=CLPF,AW=CCNR
- * / -ETC.-
- *
- * POST-RADICES MAY BE USED TO SPECIFY BASE FOR NUMERIC DATA.
- * D - DECIMAL.
- * B - OCTAL.
- * DEFAULT IS DECIMAL.
- *
- *
- * DATA IDENTIFIERS ARE AS FOLLOWS -
- *
- * PW = PASSWORD. MANDATORY WITH THE CREATE (*OP=C*) OPTION
- * UNLESS THE *RP* PARAMETER IS SELECTED OR *RPWL* = 0.
- * WILL SET BOTH BATCH AND INTERACTIVE PASSWORD. THE
- * ASSOCIATED PASSWORD EXPIRATION DATES WILL BE SET TO
- * THE DEFAULT WHEN CREATING A NEW USER.
- * *RPWL* TO 7 CHARACTERS IN LENGTH.
- *
- * PB = PASSWORD BATCH. ESTABLISHES THE BATCH PASSWORD TO BE
- * USED FOR BATCH AND SYSTEM ORIGIN JOBS. BATCH
- * PASSWORD EXPIRATION DATE WILL BE SET TO THE
- * DEFAULT WHEN CREATING A NEW USER.
- * *RPWL* TO 7 CHARACTERS IN LENGTH.
- *
- * PI = PASSWORD INTERACTIVE. ESTABLISHES THE INTERACTIVE
- * PASSWORD TO BE USED FOR INTERACTIVE JOBS. INTERACTIVE
- * PASSWORD EXPIRATION DATE WILL BE SET TO THE
- * DEFAULT WHEN CREATING A NEW USER.
- * *RPWL* TO 7 CHARACTERS IN LENGTH.
- *
- * EB = ENCRYPTED BATCH PASSWORD.
- * OCTAL REPRESENTATION OF PREVIOUSLY ENCRYPTED PASSWORD
- * TO BE USED FOR BATCH AND SYSTEM ORIGIN JOBS.
- * 14 OCTAL DIGITS. NO RADIX ALLOWED.
- *
- * EI = ENCRYPTED INTERACTIVE PASSWORD.
- * OCTAL REPRESENTATION OF PREVIOUSLY ENCRYPTED PASSWORD
- * TO BE USED FOR INTERACTIVE JOBS.
- * 14 OCTAL DIGITS. NO RADIX ALLOWED.
- *
- * XD = EXPIRATION DATE. ESTABLISHES THE PASSWORD EXPIRATION
- * DATE FOR BATCH AND INTERACTIVE PASSWORDS.
- * 6 NUMERIC CHARACTERS OF THE FORM YYMMDD.
- * SPECIAL CHARACTER * SETS NON-EXPIRING.
- * DEFAULT VALUE IS SITE DEFINED.
- *
- * XB = BATCH EXPIRATION DATE. ESTABLISHES THE BATCH PASSWORD
- * EXPIRATION DATE FOR BATCH AND SYSTEM ORIGIN JOBS.
- * 6 NUMERIC CHARACTERS OF THE FORM YYMMDD.
- * SPECIAL CHARACTER * SETS NON-EXPIRING.
- * DEFAULT VALUE IS SITE DEFINED.
- *
- * XI = INTERACTIVE EXPIRATION DATE. ESTABLISHES THE
- * INTERACTIVE PASSWORD EXPIRATION DATE FOR
- * INTERACTIVE JOBS.
- * 6 NUMERIC CHARACTERS OF THE FORM YYMMDD.
- * SPECIAL CHARACTER * SETS NON-EXPIRING.
- * DEFAULT VALUE IS SITE DEFINED.
- *
- * XT = EXPIRATION DATE BY TERM. ADDS THE TERM VALUE TO THE
- * CURRENT DATE TO CALCULATE THE BATCH AND INTERACTIVE
- * PASSWORD EXPIRATION DATE.
- * 1-4 NUMERIC DIGITS.
- * VALUES RANGE 0-4095 DECIMAL 0-7777B OCTAL.
- * DECIMAL BASE ASSUMED UNLESS POST RADIX *B*
- * IS SPECIFIED.
- * ZERO SETS PASSWORD IMMEDIATELY EXPIRING.
- * 4095, 7777B SETS NON-EXPIRING PASSWORD.
- * SPECIAL CHARACTER * SETS NON-EXPIRING.
- * DEFAULT VALUE IS SITE DEFINED.
- *
- * XTB = BATCH EXPIRATION DATE BY TERM. ADDS THE TERM VALUE TO
- * THE CURRENT DATE TO CALCULATE THE BATCH PASSWORD
- * EXPIRATION DATE.
- * SAME PROPERTIES AS *XT*.
- * DEFAULT VALUE IS SITE DEFINED.
- *
- * XTI = INTERACTIVE EXPIRATION DATE BY TERM. ADDS THE TERM
- * VALUE TO THE CURRENT DATE TO CALCULATE THE
- * INTERACTIVE EXPIRATION DATE.
- * SAME PROPERTIES AS *XT*.
- * DEFAULT VALUE IS SITE DEFINED.
- *
- * SAV = SECURITY ACCESS VALIDATION PRIVILEGES. BITS 48-59
- * IN WORD *ASVW* ALLOW VALIDATION PRIVILEGES.
- * 3-4 ALPHABETIC DIGITS.
- * THE FOLLOWING TWO DATA FIELDS SET OR CLEAR ALL BITS -
- * *ALL* = SET.
- * *NUL* = CLEAR.
- * OTHER DATA FIELDS ARE RECOGNIZED WHICH TOGGLE
- * SPECIFIC BITS -
- * FIELD BIT FUNCTION
- * *CSAP* = 59 - SECURITY ADMINISTRATOR PRIVILEGES.
- * *COLD* = 58 - EXECUTE ON-LINE DIAGNOSTICS.
- * *CPWX* = 57 - ASSIGN PASSWORD EXPIRATION TERM.
- * *CFPX* = 56 - ASSIGN PERMANENT FILE EXPIRATION
- * DATE OR TERM.
- * *CLJL* = 55 - LOWER JOB ACCESS LEVEL.
- * *CLFL* = 54 - LOWER FILE ACCESS LEVEL.
- * *CWLF* = 53 - WRITE TO OR EXTEND A LOWER LEVEL
- * FILE.
- * *CULT* = 52 WRITE UNLABELED MAGNETIC TAPES.
- * NO SECURITY ACCESS VALIDATIONS ARE SELECTED BY
- * DEFAULT.
- *
- * SAL = SECURITY ACCESS LEVEL VALIDATION. BITS 36-47 IN
- * WORD *ASVW* ALLOW ACCESS LEVEL PRIVILEGES.
- * 1-7 ALPHANUMERIC CHARACTERS.
- * THE FOLLOWING TWO DATA FIELDS SET OR CLEAR ALL BITS -
- * *ALL* = SET.
- * *NUL* = CLEAR.
- * OTHER DATA FIELDS RECOGNIZED WHICH TOGGLE SPECIFIC
- * BITS ARE SITE DEFINED MICROS WHICH ARE LOCATED IN
- * *COMSMLS*.
- * LEVEL 0 SECURITY ACCESS LEVEL (MICRO DEFINED IN
- * *COMSMLS*) IS SELECTED BY DEFAULT IF NO
- * *SAL* DIRECTIVE IS ENTERED WHEN CREATING A NEW
- * USER NAME (THE DEFAULT SELECTION IS CLEARED
- * IF AN *SAL* DIRECTIVE IS ENTERED).
- *
- * SAC = SECURITY ACCESS CATEGORY VALIDATION. BITS 0-31 IN
- * WORD *ASVW* ALLOW ACCESS CATEGORY PRIVILEGES.
- * 1-7 ALPHANUMERIC CHARACTERS.
- * THE FOLLOWING TWO DATA FIELDS SET OR CLEAR ALL BITS -
- * *ALL* = SET.
- * *NUL* = CLEAR.
- * OTHER DATA FIELDS RECOGNIZED WHICH TOGGLE SPECIFIC
- * BITS ARE SITE DEFINED MICROS WHICH ARE LOCATED IN
- * *COMSMLS*.
- * NO SECURITY ACCESS CATEGORIES ARE SELECTED BY
- * DEFAULT.
- *
- * UI = USER INDEX. NEXT AVAILABLE INDEX WILL BE ASSIGNED IF
- * NOT SPECIFIED. NOT ALLOWED FROM UPDATE OR K-DISPLAY
- * OPTIONS. VALUES WILL BE CHECKED FOR DUPLICATION
- * ACROSS USER NAMES.
- * 1-6 NUMERIC DIGITS + RADIX.
- * 1 ENTRY PER USER RECORD.
- * MAXIMUM VALUE IS 377777B.
- *
- * FUI = FORCE USER INDEX. SIMILAR TO *UI*. LEGAL ONLY FROM
- * UPDATE OR K-DISPLAY OPTIONS. VALUES WILL NOT BE
- * CHECKED FOR DUPLICATION.
- * 1-6 NUMERIC DIGITS + RADIX.
- * 1 ENTRY PER USER RECORD.
- * MAXIMUM VALUE IS 377777B.
- *
- * PID = PERSONAL IDENTIFICATION.
- * 1-20 ALPHANUMERIC CHARACTERS.
- * 1 ENTRY PER USER RECORD.
- * NULL = NO PERSONAL IDENTIFICATION.
- *
- * SP = SYSTEM PROLOGUE FILE INDEX. IDENTIFIES THE SYSTEM
- * PROLOGUE FILE TO CALL DURING PRIMARY CHARGE PROCESS-
- * ING. THE SYSTEM PROLOGUE MAY BE A PROCEDURE OR
- * BINARY. THE SYSTEM PROLOGUE FILE NAME IS OBTAINED
- * BY APPENDING THE DISPLAY CODE EQUIVALENT OF THE
- * SYSTEM PROLOGUE FILE NAME INDEX (*SP*) ONTO THE
- * WORD *PROC* AS *PROCXX*.
- * 1-2 NUMERIC DIGITS + RADIX.
- * DEFAULT VALUE OF 0 = NO SYSTEM PROLOGUE
- * REQUIRED.
- * MAXIMUM VALUE OF 77B.
- * 1 ENTRY PER USER RECORD.
- *
- * UP = USER PROLOGUE FILE. IDENTIFIES THE DEFAULT USER
- * PROLOGUE FILE NAME TO CALL DURING PRIMARY CHARGE
- * PROCESSING. THE USER PROLOGUE MAY BE A PROCEDURE
- * OR BINARY.
- * 1-7 ALPHANUMERIC CHARACTER FILE NAME.
- * DEFAULT VALUE OF NULL = NO USER PROLOGUE
- * REQUIRED.
- * 1 ENTRY PER USER RECORD.
- *
- * SH = DEFAULT SHELL PROGRAM NAME. IDENTIFIES THE USER
- * SCREENING PROGRAM TO BE USED.
- * 1-7 ALPHANUMERIC CHARACTER PROGRAM NAME.
- * 1 ENTRY PER RECORD.
- * NULL = NO DEFAULT PROGRAM TO CALL.
- *
- * MT = MAXIMUM NUMBER OF MAGNETIC TAPES ALLOWED.
- * 1 NUMERIC DIGIT.
- * DEFAULT VALUE OF 0.
- * MAXIMUM VALUE OF 7 GIVES UNLIMITED MT.
- * 1 ENTRY PER USER RECORD.
- *
- * RP = MAXIMUM NUMBER OF REMOVABLE DISK PACKS.
- * 1 NUMERIC DIGIT.
- * DEFAULT VALUE OF 0.
- * MAXIMUM VALUE OF 7 GIVES UNLIMITED *RP*.
- * 1 ENTRY PER USER RECORD.
- *
- * TL = RANGE INDEX REPRESENTING MAXIMUM CENTRAL PROCESSOR
- * TIME. FORMULA FOR ACTUAL VALUE (IN UNITS OF 10B
- * SECONDS) IS (INDEX * 100B) + KTLI.
- * 1-2 NUMERIC DIGITS + RADIX.
- * DEFAULT VALUE OF 0.
- * MAXIMUM VALUE OF 77B GIVES UNLIMITED *TL*.
- * 1 ENTRY PER USER RECORD.
- *
- * CM = RANGE INDEX REPRESENTING MAXIMUM CENTRAL MEMORY.
- * FORMULA FOR ACTUAL VALUE (IN UNITS OF 100B WORDS) IS
- * (INDEX * 40B) + KCMI.
- * 1-2 NUMERIC DIGITS + RADIX.
- * DEFAULT VALUE OF 15B.
- * MAXIMUM VALUE OF 77B GIVES UNLIMITED *CM*.
- * 1 ENTRY PER USER RECORD.
- *
- * DT = RANGE INDEX REPRESENTING MAXIMUM NUMBER OF JOBS THAT
- * CAN BE DETACHED. FORMULA FOR ACTUAL VALUE IS
- * (INDEX + KDTI).
- * 1-2 NUMERIC DIGITS + RADIX.
- * DEFAULT VALUE OF 0.
- * MAXIMUM VALUE OF 77B GIVES UNLIMITED *DT*.
- * 1 ENTRY PER USER RECORD.
- *
- * MS = RANGE INDEX REPRESENTING MAXIMUM NUMBER OF MASS
- * STORAGE PRU-S. FORMULA FOR ACTUAL VALUE IS
- * (INDEX * 10000B) + KMSI.
- * 1-2 NUMERIC DIGITS + RADIX.
- * DEFAULT VALUE OF 1.
- * MAXIMUM VALUE OF 77B GIVES UNLIMITED *MS*.
- * 1 ENTRY PER USER RECORD.
- *
- * SC = SECURITY COUNT. THIS COUNT SIGNIFIES THE NUMBER OF
- * SECURITY VIOLATIONS THE USER HAS LEFT BEFORE BEING
- * DENIED ACCESS TO THE SYSTEM.
- * 1 - 2 NUMERIC DIGITS + RADIX.
- * 1 ENTRY PER USER RECORD.
- * MAXIMUM VALUE OF 77B GIVES
- * UNLIMITED VALUE.
- *
- * FC = RANGE INDEX REPRESENTING MAXIMUM NUMBER OF INDIRECT
- * ACCESS PERMANENT FILES. AN EQUIVALENCE TABLE IN *FCI*
- * ROUTINE OF *COMCCVI* IS USED TO OBTAIN THE ACTUAL
- * VALUE.
- * 1 NUMERIC DIGIT.
- * DEFAULT OF 0 USES JOB ORIGIN CONTROL.
- * MAXIMUM VALUE OF 7 GIVES UNLIMITED *FC*.
- * 1 ENTRY PER USER RECORD.
- *
- * CS = RANGE INDEX REPRESENTING MAXIMUM CUMMULATIVE SIZE FOR
- * ALL INDIRECT ACCESS FILES. AN EQUIVALENCE TABLE IN
- * *CSI* ROUTINE OF *COMCCVI* IS USED TO OBTAIN THE
- * ACTUAL VALUE.
- * 1 NUMERIC DIGIT.
- * DEFAULT OF 0 USES JOB ORIGIN CONTROL.
- * MAXIMUM VALUE OF 7 GIVES UNLIMITED *CS*.
- * 1 ENTRY PER USER RECORD.
- *
- * FS = RANGE INDEX REPRESENTING MAXIMUM FILE SIZE FOR ANY
- * INDIVIDUAL INDIRECT ACCESS PERMANENT FILE.
- * AN EQUIVALENCE TABLE IN *FSI* ROUTINE OF *COMCCVI* IS
- * USED TO OBTAIN THE ACTUAL VALUE.
- * 1 NUMERIC DIGIT.
- * DEFAULT OF 0 USES JOB ORIGIN CONTROL.
- * MAXIMUM VALUE OF 7 GIVES UNLIMITED *FS*.
- * 1 ENTRY PER USER RECORD.
- *
- * PX = TRANSMISSION. TERMINAL FULL OR HALF DUPLEX MODE.
- * 4 ALPHANUMERIC CHARACTERS.
- * 1 ENTRY PER USER RECORD.
- * THE FOLLOWING VALUES ARE AVAILABLE -
- * *FULL*.
- * *HALF*.
- *
- * RO = RUBOUT COUNT. NUMBER OF RUBOUT CHARACTERS ASSOCIATED
- * WITH USERS TERMINAL. 37B = USE SYSTEM DEFAULT FOR
- * TERMINAL TYPE.
- * 1-2 NUMERIC DIGITS + RADIX.
- * 1 ENTRY PER USER RECORD.
- * MAXIMUM VALUE IS 37B.
- *
- * PA = TERMINAL PARITY.
- * 3-4 ALPHANUMERIC DIGITS.
- * 1 ENTRY PER USER RECORD.
- * THE FOLLOWING VALUES ARE AVAILABLE -
- * *EVEN*.
- * *ODD*.
- *
- * TT = TERMINAL TYPE.
- * 3-6 ALPHANUMERIC DIGITS.
- * 1 ENTRY PER USER RECORD.
- * THE FOLLOWING VALUES ARE AVAILABLE -
- * *TTY*.
- * *713*.
- * *COR*.
- * *CORAPL*.
- * *MEMAPL*.
- * *BLKEDT*.
- *
- * TC = TERMINAL CHARACTER SET.
- * 5-6 ALPHABETIC CHARACTERS.
- * 1 ENTRY PER USER RECORD.
- * THE FOLLOWING VALUES ARE AVAILABLE -
- * *STANDARD*.
- * *ASCII*.
- *
- * IS = TERMINAL INITIAL SUBSYSTEM.
- * 4-8 ALPHABETIC CHARACTERS.
- * 1 ENTRY PER USER RECORD.
- * THE FOLLOWING VALUES ARE AVAILABLE -
- * *NULL*.
- * *BASIC*.
- * *FORTRAN*.
- * *FTNTS*.
- * *EXECUTE*.
- * *BATCH*.
- * *ACCESS*.
- *
- * PN = DEFAULT PROJECT NUMBER.
- * 1-20 ALPHANUMERIC CHARACTERS.
- * 1 ENTRY PER USER RECORD.
- * * ALLOWED.
- * NULL = NO DEFAULT PROJECT NUMBER.
- *
- * CN = DEFAULT CHARGE NUMBER.
- * 1-10 ALPHANUMERIC CHARACTERS.
- * 1 ENTRY PER USER RECORD.
- * * ALLOWED.
- * NULL = NO DEFAULT CHARGE NUMBER.
- *
- * DB = RANGE INDEX REPRESENTING MAXIMUM NUMBER OF CONCURRENT
- * DEFERRED BATCH JOBS. FORMULA FOR ACTUAL VALUE IS
- * (2 ** INDEX).
- * EXCEPTION - INDEX OF 0 GIVES VALUE OF 0, NOT 1.
- * 1 NUMERIC DIGIT.
- * DEFAULT VALUE OF 0.
- * MAXIMUM VALUE OF 7 GIVES UNLIMITED *DB*.
- * 1 ENTRY PER USER RECORD.
- *
- * EC = RANGE INDEX REPRESENTING MAXIMUM EXTENDED MEMORY.
- * FORMULA FOR ACTUAL VALUE (IN 1000B WORD BLOCKS) IS
- * (INDEX * 20B) + KECI.
- * 1-2 NUMERIC DIGITS + RADIX.
- * DEFAULT VALUE OF 0.
- * MAXIMUM VALUE OF 77B GIVES UNLIMITED *EC*.
- * 1 ENTRY PER USER RECORD.
- *
- * SL = RANGE INDEX REPRESENTING THE MAXIMUM SRUS.
- * FORMULA FOR ACTUAL VALUE IS ((((INDEX**2) * 10B)
- * + KSLI) * 10B).
- * 1-2 NUMERIC DIGITS + RADIX.
- * DEFAULT VALUE OF 0.
- * VALUE OF 73B OR MORE GIVES UNLIMITED *SL*.
- * 1 ENTRY PER USER RECORD.
- *
- * LP = RANGE INDEX REPRESENTING MAXIMUM NUMBER OF LINES THAT
- * CAN BE PRINTED FROM DISPOSED PRINT FILE.
- * FORMULA FOR ACTUAL VALUE IS (INDEX * 2000B) + KLPI.
- * 1-2 NUMERIC DIGITS + RADIX.
- * DEFAULT VALUE OF 0.
- * MAXIMUM VALUE OF 77B GIVES UNLIMITED *LP*.
- * 1 ENTRY PER USER RECORD.
- *
- * CP = RANGE INDEX REPRESENTING MAXIMUM NUMBER OF CARDS THAT
- * CAN BE PUNCHED FROM DISPOSED PUNCH FILE.
- * FORMULA FOR ACTUAL VALUE IS (INDEX * 100B) + KCPI.
- * 1-2 NUMERIC DIGITS + RADIX.
- * DEFAULT VALUE OF 0.
- * MAXIMUM VALUE OF 77B GIVES UNLIMITED *CP*.
- * 1 ENTRY PER USER RECORD.
- *
- * PT = RANGE INDEX REPRESENTING MAXIMUM NUMBER OF UNITS THAT
- * CAN BE PLOTTED FROM DISPOSED PLOT FILE.
- * FORMULA FOR ACTUAL VALUE IS (INDEX * 2000B) + KPTI.
- * 1-2 NUMERIC DIGITS + RADIX.
- * DEFAULT VALUE OF 0.
- * MAXIMUM VALUE OF 77B GIVES UNLIMITED *PT*.
- * 1 ENTRY PER USER RECORD.
- *
- * DS = RANGE INDEX REPRESENTING MAXIMUM FILE SIZE FOR ANY
- * INDIVIDUAL DIRECT ACCESS PERMANENT FILE.
- * AN EQUIVALENCE TABLE IN *DSI* ROUTINE OF *COMCCVI* IS
- * USED TO OBTAIN THE ACTUAL VALUE.
- * 1 NUMERIC DIGIT.
- * DEFAULT OF 0 USES JOB ORIGIN CONTROL.
- * MAXIMUM VALUE OF 7 GIVES UNLIMITED *DS*.
- * 1 ENTRY PER USER RECORD.
- *
- * DF = RANGE INDEX REPRESENTING MAXIMUM NUMBER OF MESSAGE
- * REQUESTS THAT MAY BE ISSUED TO THE SYSTEM AND/OR
- * JOB DAYFILES. FORMULA FOR ACTUAL VALUE IS
- * (INDEX * 100B) + KDFI.
- * 1-2 NUMERIC DIGITS + RADIX.
- * DEFAULT VALUE OF 34B.
- * MAXIMUM VALUE OF 77B GIVES UNLIMITED *DF*.
- * 1 ENTRY PER USER RECORD.
- *
- * CC = RANGE INDEX REPRESENTING MAXIMUM NUMBER OF BATCH
- * COMMANDS THAT CAN BE PROCESSED.
- * FORMULA FOR ACTUAL VALUE IS (INDEX * 100B) + KCCI.
- * 1-2 NUMERIC DIGITS + RADIX.
- * DEFAULT VALUE OF 34B.
- * MAXIMUM VALUE OF 77B GIVES UNLIMITED *CC*.
- * 1 ENTRY PER USER RECORD.
- *
- * RL = SET RESOURCE LIMITS TO MAXIMUM VALUES. THE
- * ONLY VALID VALUE FOR THIS DIRECTIVE IS *ALL*.
- * THIS DIRECTIVE CAN BE USED AT ANY TIME DURING
- * A CREATION OR UPDATE OF THE USER RECORD. THE
- * VALUES SET CAN BE CHANGED BY SUBSEQUENT DIRECTIVES.
- * THE FOLLOWING LIMITS ARE SET -
- *
- * PT - UNITS PLOTTED.
- * MT - MAGNETIC TAPES.
- * RP - REMOVABLE PACKS.
- * DB - DEFERRED BATCH JOBS.
- * DT - DETACHED JOBS.
- * TL - TIME LIMIT.
- * SL - SRU LIMIT.
- * CM - CM FIELD LENGTH.
- * EC - EXTENDED MEMORY FIELD LENGTH.
- * LP - LINES PRINTED.
- * CP - CARDS PUNCHED.
- * DS - DIRECT ACCESS PERMANENT FILE SIZE.
- * FC - PERMANENT FILE COUNT.
- * CS - CUMULATIVE INDIRECT ACCESS PERMANENT FILE SIZE.
- * FS - INDIRECT ACCESS PERMANENT FILE SIZE.
- * DF - DAYFILE MESSAGES.
- * CC - COMMANDS.
- * MS - MASS STORAGE PRU-S.
- *
- * AW = ACCESS WORD. BITS IN THE ACCESS WORD *AACW* ALLOW
- * PRIVILEGES FOR THE USER.
- * 3-4 ALPHABETIC DIGITS.
- * THE FOLLOWING TWO DATA FIELDS SET OR CLEAR ALL BITS -
- * *ALL* = SET.
- * *NUL* = CLEAR.
- * OTHER DATA FIELDS ARE RECOGNIZED WHICH TOGGLE
- * SPECIFIC BITS -
- * FIELD BIT FUNCTION
- * *CPWC* = 0 - ALLOW USER TO CHANGE PASSWORD.
- * *CTPC* = 1 - ALLOW PRIVILEGED TERMINAL COMMANDS.
- * *CLPF* = 2 - ALLOW WRITES TO DIRECT ACCESS (LARGE)
- * PERMANENT FILES.
- * *CSPF* = 3 - ALLOW WRITES TO INDIRECT ACCESS(SMALL)
- * PERMANENT FILES.
- * *CSOJ* = 4 - ALLOW SYSTEM ORIGIN TYPE PRIVILEGES.
- * IF SYSTEM IS IN *DEBUG* MODE.
- * *CASF* = 5 - ALLOW ACCESS TO SYSTEM FILES (E.G.
- * LIBRARY TYPE FILES).
- * *CAND* = 6 - ALLOW USER ASSIGNMENT OF NON-
- * ALLOCATABLE DEVICES.
- * *CCNR* = 7 - ALLOW USE OF SYSTEM WITHOUT ENTRY OF
- * VALID CHARGE AND PROJECT NUMBERS.
- * *CSRP* = 8 - ALLOW REMOVABLE DEVICE COMMANDS.
- * *CSTP* = 9 - ALLOW SPECIAL TRANSACTION PRIVILEGES.
- * *CTIM* = 10 - ALLOW NO TERMINAL TIME OUT.
- * *CUCP* = 11 - ALLOW USER CP (UCP) PRIVILEGES.
- * *CSAP* = 12 - ALLOW SPECIAL ACCOUNTING PRIVILEGES.
- * *CBIO* = 13 - ALLOW *BATCHIO* SUBSYSTEM PRIVILEGES.
- * *CPRT* = 14 - ALLOW ECS *PROTECT* PRIVILEGES.
- * *CPLK* = 15 - ALLOW THE USER TO TRANSFER
- * PERMANENT FILES BETWEEN HOSTS.
- * *CQLK* = 16 - ALLOW THE USER TO TRANSFER
- * QUEUED FILES BETWEEN HOSTS.
- * *CUST* = 17 - ALLOW THE USER TO SPECIFY LID-S ON
- * THE JOB AND *ROUTE* COMMANDS.
- * *CNVE* = 18 - ALLOW ACCESS TO THE NVE SUBSYSTEM.
- * *CMNT* = 19 - ALLOW THE USER MAINTENANCE
- * PRIVILEGES.
- * *CNOP* = 20 - ALLOW NPU OPERATOR PRIVILEGE.
- * *CSAF* = 21 - ALLOW ALTERNATE FAMILY ON SECONDARY
- * *USER* COMMANDS.
- * *CNRD* = 22 - ALLOW THE USER TO SPECIFY A CHARGE
- * AND PROJECT NUMBER OTHER THAN THE
- * DEFAULT.
- * *COPR* = 23 - ALLOW THE USER TO ENTER A PASSWORD
- * WITHOUT RANDOMIZATION.
- * *CLTD* = 24 - ALLOW USER TO SPECIFY PERMANENT FILE
- * RESIDENCE AS *LOCKED TO DISK* (PR=L).
- * *COPI* = 25 - OMIT PERSONAL ID ENTRY.
- * *CACA* = 26 - ALLOW CONCURRENT ACCESS.
- * *CPAM* = 27 - ALLOW THE USER PRIVILEGED ANALYST
- * OPERATIONS IF PRIVILEGED ANALYST
- * MODE IS ENABLED.
- * *CSAU* = 28 - ALLOW ALTERNATE USER NAME ON
- * SECONDARY *USER* COMMANDS.
- * *CRAU* = 29 - ALLOW ALTERNATE USER NAME ON ROUTED
- * INPUT FILE *USER* COMMANDS.
- * *CRAF* = 30 - ALLOW ALTERNATE FAMILY ON ROUTED
- * INPUT FILE *USER* COMMANDS.
- * 31-47 - RESERVED FOR SYSTEM USE.
- * 48 - RESERVED FOR INSTALLATION (BIT 48).
- * 49 - RESERVED FOR INSTALLATION (BIT 49).
- * 50 - RESERVED FOR INSTALLATION (BIT 50).
- * 51 - RESERVED FOR INSTALLATION (BIT 51).
- * 52 - RESERVED FOR INSTALLATION (BIT 52).
- * 53 - RESERVED FOR INSTALLATION (BIT 53).
- * 54 - RESERVED FOR INSTALLATION (BIT 54).
- * 55 - RESERVED FOR INSTALLATION (BIT 55).
- * 56 - RESERVED FOR INSTALLATION (BIT 56).
- * 57 - RESERVED FOR INSTALLATION (BIT 57).
- * 58 - RESERVED FOR INSTALLATION (BIT 58).
- * 59 - RESERVED FOR INSTALLATION (BIT 59).
- *
- * THE FOLLOWING BITS ARE SET BY DEFAULT -
- * *CPWC*
- * *CLPF*
- * *CSPF*
- * *CCNR*
- * *CSAF*
- * *CNRD*
- * *COPR*
- * *COPI*
- * *CACA*
- * *CSAU*
- * *CRAU*
- * *CRAF*
- * THESE BITS ARE ASSUMED TO BE SET BEFORE ANY
- * IDENTIFIERS ARE ENTERED. THESE BITS ARE CLEARED
- * WHEN THE FIRST *AW* DIRECTIVE IS ENTERED.
- *
- * AP = APPLICATION PERMISSION. BITS IN THE APPLICATION
- * VALIDATION WORD *AAVW* ALLOW USER ACCESS TO
- * APPLICATIONS.
- * THE FOLLOWING TWO DATA FIELDS SET OR CLEAR ALL BITS -
- * *ALL* = SET.
- * *NUL* = CLEAR.
- * OTHER DATA FIELDS ARE RECOGNIZED WHICH TOGGLE
- * SPECIFIC BITS -
- * FIELD BIT FUNCTION
- * *IAF* 0 - ALLOW USER ACCESS TO *IAF*.
- * *RBF* 1 - ALLOW USER ACCESS TO *RBF*.
- * *TAF* 2 - ALLOW USER ACCESS TO *TAF*.
- * *MCS* 3 - ALLOW USER ACCESS TO *MCS*.
- * *TVF* 4 - ALLOW USER ACCESS TO *TVF*.
- * *CS* 5 - ALLOW USER ACCESS TO *CS*.
- * *CYBIS* 6 - ALLOW USER ACCESS TO *CYBIS*.
- * *ITF* 7 - ALLOW USER ACCESS TO *ITF*.
- * *TLF* 8 - ALLOW USER ACCESS TO *TLF*.
- * *NJF* 9 - ALLOW USER ACCESS TO *NJF*.
- * *NETOU* 10 - ALLOW USER ACCESS TO VARIOUS CDCNET
- * APPLICATIONS.
- * *PSU* 11 - ALLOW USER ACCESS TO *PSU*
- * *AP1* 12 - ALLOW LOCAL APPLICATION 1 ACCESS.
- * *AP2* 13 - ALLOW LOCAL APPLICATION 2 ACCESS.
- * *AP3* 14 - ALLOW LOCAL APPLICATION 3 ACCESS.
- * *VEIAF* 15 - ALLOW USER ACCESS TO *VEIAF*.
- * *NPF* 16 - ALLOW USER ACCESS TO *NPF*.
- * *TCF* 17 - ALLOW USER ACCESS TO *TCF*.
- * *AP4* 18 - ALLOW LOCAL APPLICATION 4 ACCESS.
- * *AP5* 19 - ALLOW LOCAL APPLICATION 5 ACCESS.
- * *AP6* 20 - ALLOW LOCAL APPLICATION 6 ACCESS.
- * *ATF* 21 - ALLOW USER ACCESS TO *ATF*.
- * NO APPLICATION PERMISSIONS ARE SELECTED BY DEFAULT.
- *
- * AL = APPLICATION ACCESS LEVEL IS REQUIRED FOR
- * APPLICATION TO APPLICATION CONNECTION.
- * IT IDENTIFIES THE ACCESS LEVEL WHICH WILL PERMIT
- * SYSTEM ORIGIN CPU PROGRAM TO INITIATE A SUBSYSTEM.
- * 1-2 NUMERIC DIGITS.
- * DEFAULT VALUE IS 0.
- * MAXIMUM VALUE IS 17B.
- * 1 ENTRY PER RECORD.
- *
- * SO = SHELL PROGRAM PERMISSIONS OPTION. CERTAIN BITS
- * IDENTIFY WHICH TYPE OF PRIVILEGES ARE ALLOWED FOR A
- * USER.
- * *NUL* PARAMETER CLEARS ALL BITS.
- * THE FOLLOWING PARAMETERS WILL TOGGLE SPECIFIC BITS -
- * FIELD BIT FUNCTION
- * *ATBM* 0 CLEAR SHELL PROGRAM IF SCREENING
- * PROGRAM ABORTS.
- * *LFID* 1 LOCAL FILE LOAD OF SHELL PROGRAM
- * ALLOWED.
- * *GLID* 2 GLOBAL LIBRARY LOAD OF SHELL PROGRAM
- * ALLOWED.
- * *SLID* 3 SYSTEM LIBRARY LOAD OF SHELL PROGRAM
- * ALLOWED.
- * *TCSM* 4 MONITOR COMMANDS DIRECTLY FROM
- * TERMINAL INPUT.
- * *BCSM* 5 MONITOR COMMANDS OUTSIDE CCL LOOP.
- * *CCLM* 6 MONITOR COMMANDS INSIDE CCL LOOP.
- * SHELL PROGRAM PERMISSIONS *SLID* AND *BCSM*
- * ARE SELECTED BY DEFAULT IF NO *SO* DIRECTIVE
- * IS ENTERED WHEN CREATING A NEW USER NAME
- * (THE DEFAULT SELECTION IS CLEARED IF AN *SO*
- * DIRECTIVE IS ENTERED).
- *
- * UC = USER DEFAULT SERVICE CLASS. FORMAT IS *OTSC* WHERE
- * *OT* IS THE TWO CHARACTER DISPLAY CODE MNEMONIC FOR
- * ORIGIN TYPE AND *SC* IS THE TWO CHARACTER DISPLAY
- * CODE MNEMONIC FOR THE USER DEFAULT SERVICE CLASS
- * SELECTED FOR THAT ORIGIN TYPE.
- * *OT* IS REQUIRED. THE DEFAULT *SC* FOR EACH ORIGIN
- * TYPE IS
- * ORIGIN SERVICE CLASS
- * BC BC
- * RB OR EI RB
- * IA OR TX TS
- * 1 ENTRY FOR EACH ORIGIN TYPE PER USER RECORD.
- *
- * VM = SERVICE CLASS VALIDATION MASK.
- * TWO CHARACTER DISPLAY CODE SERVICE CLASS
- * MNEMONIC OR *ALL* OR *NUL*.
- * DEFAULT IS DETERMINED BY *UC* DIRECTIVE.
- * 1 ENTRY PER USER RECORD.
- * SERVICE CLASS VALIDATION FOR BATCH (BC), REMOTE
- * BATCH (RB) AND INTERACTIVE (TS) WILL BE SELECTED
- * BY DEFAULT IF NO *VM* DIRECTIVE IS ENTERED
- * WHEN CREATING A NEW USER NAME. IF A *VM* DIRECTIVE IS
- * ENTERED, THE DEFAULT SERVICE CLASS VALIDATIONS ARE SET
- * IN ADDITION TO THOSE SPECIFIED BY THE *VM* DIRECTIVE.
- *
- * DAC = DELETE USER NAME. DELETE THIS USER NAME
- * FROM VALIDATION FILE. ALL OTHER DATA IDENTIFIERS ARE
- * IGNORED. LEGAL ONLY IN UPDATE OR K-DISPLAY OPTIONS.
- * THE USER NAME RUNNING *MODVAL* CANNOT BE DELETED.
- * 1 ENTRY PER USER RECORD.
- SPACE 4,10
- *** DAYFILE ERROR MESSAGES.
- *
- *
- * * CANNOT CHANGE BOTH PASSWORDS AT ONCE.* - *PASSWOR* ONLY. -
- * THE OLD BATCH AND INTERACTIVE PASSWORDS WERE NOT THE
- * SAME.
- *
- * * DATA BASE ERROR.* - A CONTROL WORD IN THE VALIDATION FILE
- * IS IN ERROR. IF PROBLEM PERSISTS, CONSULT AN ANALYST.
- * MESSAGE ISSUED BY *SFS* OVERLAY.
- *
- * * LEVEL-0 DATA BASE ERROR.* - THE LEVEL-0 BLOCK ON THE
- * VALIDATION FILE WAS NOT PRESENT (GUARANTEE THAT THE
- * FILE CONTAINS AT LEAST ONE USER NAME) OR IT
- * CONTAINED AN INCORRECT CONTROL WORD (CONSULT AN
- * ANALYST).
- *
- * * LEVEL-2 DATA BASE ERROR.* - A STRUCTURAL ERROR WAS
- * DETECTED IN A LEVEL-2 BLOCK OF THE VALIDATION FILE.
- * CONSULT AN ANALYST.
- *
- * * SYSTEM ERROR.* - INDICATES AN INTERNAL MALFUNCTION DUE TO
- * EITHER SOFTWARE OR HARDWARE. CONSULT AN ANALYST
- * IMMEDIATELY.
- *
- * * ERROR IN CHVAL ARGUMENTS.* - INCORRECT KEYWORD WAS
- * SPECIFIED ON COMMAND OR TOO MANY CHARACTERS WERE
- * SPECIFIED ON THE *UC* PARAMETER. CORRECT AND RETRY.
- *
- * * ERROR IN GENVAL ARGUMENTS.* - INCORRECT PARAMETER WAS
- * SPECIFIED ON *GENVAL* COMMAND. CORRECT AND RETRY.
- *
- * * ERROR IN LIMITS ARGUMENTS.* - INCORRECT PARAMETER
- * WAS SPECIFIED ON THE *LIMITS* COMMAND.
- * CORRECT AND RERUN.
- *
- * * ERROR IN MODVAL ARGUMENTS.* - INCORRECT COMMAND
- * ARGUMENTS. CORRECT AND RERUN.
- *
- * * ERROR IN PASSWOR ARGUMENTS.* - INCORRECT NUMBER OF
- * PARAMETERS OR INCORRECT PARAMETERS WERE SPECIFIED
- * ON THE *PASSWOR* COMMAND. CORRECT AND RERUN.
- *
- * * ERROR IN UPROC ARGUMENTS.* - INCORRECT COMMAND
- * ARGUMENTS. CORRECT AND RERUN.
- *
- * * FILE NAME CONFLICT - LFN.* - SPECIFIED FILE NAME USED
- * FOR MORE THAN ONE PURPOSE.
- *
- * * FM NOT LEGAL FAMILY.* - INCORRECT FAMILY NAME SPECIFIED
- * WITH *FM* PARAMETER.
- *
- * * GENVAL ABORTED.* - CONTROL POINT ERROR FLAG IS SET.
- * CONSULT DAYFILE FOR REASON.
- *
- * * MODVAL ABORTED.* - CONTROL POINT ERROR FLAG IS SET.
- * CONSULT DAYFILE LISTING FOR REASON.
- *
- * * DIRECTIVE ERRORS.* - ERRORS WERE ENCOUNTERED ON THE INPUT
- * FILE FOR EITHER CREATE OR UPDATE MODES. CONSULT THE
- * OUTPUT FILE FOR SPECIFIC ERRORS.
- *
- * * INCORRECT COMMAND.* - USER IS NOT PERMITTED TO CHANGE
- * PASSWORD AND MUST ACQUIRE SUCH VALIDATION. CAN ALSO
- * INDICATE THAT NO USER COMMAND HAS BEEN ISSUED
- * PRIOR TO *CHVAL*, *LIMITS*, *PASSWOR* OR
- * *UPROC* COMMANDS.
- *
- * * USER ACCESS NOT VALID.* - WHEN SYSTEM IS IN SECURE
- * MODE, CALLER MUST HAVE SECURITY ADMINISTRATOR
- * PRIVILEGE TO ATTACH SYSTEM VALIDATION FILE FOR
- * *MODVAL* UPDATE, REFORMAT, SOURCE, OR LIST OPTION.
- * *GENVAL* MUST BE CALLED FROM A SYSTEM ORIGIN JOB.
- *
- * * *INPUT* NOT ASSIGNED TO TERMINAL.* - *PASSWOR* ONLY. -
- * THE FILE *INPUT* MUST BE ASSIGNED TO A TERMINAL
- * IF PASSWORD RANDOMIZATION IS REQUIRED.
- *
- * * INCORRECT SERVICE CLASS.* - THE SERVICE CLASS SELECTED
- * FOR THE *UC* PARAMETER ON THE *CHVAL* COMMAND IS
- * NOT VALID FOR THE USER.
- *
- * * UNDEFINED ORIGIN TYPE. - THE ORIGIN TYPE SELECTED FOR
- * THE *UC* PARAMETER ON THE *CHVAL* COMMAND IS NOT
- * A RECOGNIZED ORIGIN TYPE.
- *
- * * UNDEFINED SERVICE CLASS.* - THE SERVICE CLASS SELECTED
- * FOR THE *UC* PARAMETER ON THE *CHVAL* COMMAND IS
- * NOT A RECOGNIZED SERVICE CLASS.
- *
- * * INCORRECT PASSWORD.* - PASSWOR ONLY. - CAN INDICATE ANY
- * OF THE FOLLOWING CONDITIONS:
- * 1. OLD PASSWORD NOT FOUND.
- * 2. THE NEW PASSWORD CONTAINED AN INCORRECT CHARACTER
- * (SECURE ENTRY ONLY).
- * 3. THE NEW PASSWORD WAS GREATER THAN SEVEN CHARACTERS
- * (SECURE ENTRY ONLY).
- *
- * * PASSWORD RANDOMIZATION NOT PERMITTED FROM BATCH.* -
- * *PASSWOR* ONLY.- THE *PASSWOR* COMMAND MAY ONLY BE
- * ENTERED FROM AN INTERACTIVE JOB IF PASSWORD RANDOM-
- * IZATION IS REQUIRED.
- *
- * * PASSWORD TOO LONG.* - *PASSWOR* ONLY. - THE NEW PASSWORD
- * WAS MORE THAN 7 CHARACTERS WITH THE RANDOMIZATION
- * CHARACTERS APPENDED.
- *
- * * PASSWORD TOO SHORT.* - ONE OF THE FOLLOWING CONDITIONS
- * OCCURRED -
- * - THE NEW PASSWORD ENTERED WAS NOT AT LEAST *RPWL*
- * CHARACTERS IN LENGTH.
- * - THE USER HAS PASSWORD RANDOMIZATION REQUIRED AND
- * DID NOT SPECIFY AT LEAST 2 CHARACTERS FOR THE NEW
- * PASSWORD.
- *
- * * SECURE PASSWORD ENTRY REQUIRED.* - NO PARAMETERS MAY BE
- * ENTERED ON THE *PASSWOR* COMMAND IF PASSWORD
- * RANDOMIZATION IS REQUIRED.
- *
- * * VALIDATION FILE BUSY - TRY AGAIN LATER.* - THE
- * VALIDATION FILE COULD NOT BE ATTACHED BY *UPROC*,
- * *CHVAL* OR *PASSWOR*.
- *
- * * VERIFICATION ERROR. PASSWORD NOT CHANGED.* -
- * *PASSWOR* ONLY. - PASSWORD WAS ENTERED INCORRECTLY
- * WHEN VERIFICATION OF THE NEW PASSWORD WAS REQUESTED.
- *
- * * PASSWORD EXPIRATION CHANGE INCORRECT.* - EXPIRATION DATE
- * OR EXPIRATION TERM VALUE IS INCORRECT ON *PASSWOR*
- * COMMAND OR USER IS NOT ALLOWED TO CHANGE PASSWORD
- * EXPIRATION DATE.
- *
- * * SECURITY ADMINISTRATOR EXPIRATION CHANGE INCORRECT.* - A
- * USER WITH SECURITY ADMINISTRATOR PRIVILEGES IS NOT
- * ALLOWED TO CHANGE THE EXPIRATION DATE.
- *
- * * VALINDS READ ERROR.* - A READ OPERATION ON *VALINDS* DID
- * NOT COMPLETE. FILE MAY NOT BE LOCAL AS REQUIRED
- * FOR THE CURRENT OPTION.
- SPACE 4,10
- *** ACCOUNT FILE MESSAGES.
- *
- *
- * *MUPW.* - INDICATES A USER CHANGE OF THE USER-S
- * PASSWORD.
- *
- * *MUPX.* - INDICATES A USER CHANGE OF THE USER-S
- * PASSWORD EXPIRATION DATE.
- *
- * *MVCU, IFAMILY, IUSERNM, MFAMILY, MUSERNM.*
- * *MVDU, IFAMILY, IUSERNM, MFAMILY, MUSERNM.*
- * *MVUU, IFAMILY, IUSERNM, MFAMILY, MUSERNM.*
- * ISSUED WHEN A USER NAME IN A FAST-ATTACHED VALIDATION
- * FILE IS CREATED (*MVCU*), DELETED (*MVDU*), OR UPDATED
- * (*MVUU*).
- *
- * IFAMILY FAMILY NAME OF USER ISSUING COMMAND.
- * IUSERNM USER NAME OF USER ISSUING COMMAND.
- * MFAMILY FAMILY NAME OF VALIDATION FILE BEING
- * MODIFIED.
- * MUSERNM USER NAME BEING MODIFIED.
- SPACE 4,10
- *** ERROR MESSAGES TO OUTPUT FILE OR K-DISPLAY.
- *
- * CORRECTIVE ACTION IS GOVERNED BY THE SEVERITY OF THE
- * ERRORS. THE JOB MAY BE RERUN OR THE NEW VALIDATION
- * FILE CORRECTED AT THE USERS DISCRETION.
- *
- * **** CANNOT ALTER XD/XT OF *CSAP*.
- * THE BATCH AND INTERACTIVE PASSWORD EXPIRATION DATES
- * FOR A SECURITY ADMINISTRATOR ARE FORCED TO BE
- * NON-EXPIRING AND CANNOT BE OVERRIDDEN BY AN INPUT
- * DIRECTIVE.
- * THAT USER ENTRY IS DISREGARDED. (FROM
- * K-DISPLAY, ONLY THAT LINE OF INPUT IS DISREGARDED.)
- *
- * **** CANNOT ALTER SEC. COUNT OF *CSAP*.
- * THE SECURITY COUNT FOR A SECURITY ADMINISTRATOR
- * IS FORCED TO BE UNLIMITED AND CANNOT BE OVERRIDDEN
- * BY AN INPUT DIRECTIVE.
- * THAT USER ENTRY IS DISREGARDED. (FROM K-DISPLAY, ONLY
- * THAT LINE OF INPUT IS DISREGARDED.)
- *
- * **** CANNOT DELETE *CSAP* PRIVILEGE.
- * THE USER NAME RUNNING *MODVAL* UPDATE CANNOT DELETE
- * ITS OWN SECURITY ADMINISTRATOR PRIVILEGE.
- * THAT USER ENTRY IS DISREGARDED. (FROM
- * K-DISPLAY, ONLY THAT LINE OF INPUT IS DISREGARDED.)
- *
- * **** CANNOT DELETE USER RUNNING MODVAL.
- * THE USER NAME RUNNING *MODVAL* UPDATE CANNOT
- * DELETE ITS OWN USER NAME FROM THE VALIDATION FILE.
- * THAT USER ENTRY IS DISREGARDED. (FROM
- * K-DISPLAY, ONLY THAT LINE OF INPUT IS DISREGARDED.)
- *
- * **** ERROR IN USER NAME.
- * INCORRECT DATA WAS ENCOUNTERED WHERE USER NAME
- * WAS EXPECTED.
- * THAT USER ENTRY IS DISREGARDED AND *MODVAL*
- * SKIPS TO THE NEXT USER ENTRY.
- *
- * **** DUPLICATE USER NAME.
- * THAT USER NAME HAS BEEN ENTERED PREVIOUSLY.
- * OCCURS ONLY FROM CREATE RUN.
- * THE FIRST ENTRY IS USED.
- *
- * **** ERROR IN IDENTIFIER.
- * INCORRECT PARAMETER IDENTIFIER ENCOUNTERED.
- * THAT USER ENTRY IS DISREGARDED. (FROM
- * K-DISPLAY, ONLY THAT LINE OF INPUT IS DISREGARDED.)
- *
- * **** ERROR IN NUMERIC DATA.
- * CAN INDICATE ANY OF THE FOLLOWING CONDITIONS -
- * 1. NUMERIC DATA NOT NUMERIC.
- * 2. DATA EXCEEDS MAXIMUM.
- * 3. NO DATA PRESENT.
- * THAT USER ENTRY IS DISREGARDED. (FROM
- * K-DISPLAY, ONLY THAT LINE OF INPUT IS DISREGARDED.)
- *
- * **** ERROR IN ALPHANUMERIC DATA.
- * CAN INDICATE -
- * 1. NO DATA PRESENT.
- * 2. DATA FOR *AW* IDENTIFIER UNRECOGNIZED.
- * 3. NUMBER OF CHARACTERS EXCEEDS MAXIMUM ALLOWED.
- * THAT USER ENTRY IS DISREGARDED. (FROM
- * K-DISPLAY, ONLY THAT LINE OF INPUT IS DISREGARDED.)
- *
- * **** INCORRECT ORIGIN TYPE.
- * AN INCORRECT ORIGIN TYPE WAS SPECIFIED ON THE
- * *UC* DIRECTIVE.
- * THAT USER ENTRY IS DISREGARDED. (FROM K-DISPLAY,
- * ONLY THE *UC* DIRECTIVE IS IGNORED.)
- *
- * **** INCORRECT SERVICE CLASS.
- * AN INCORRECT SERVICE CLASS WAS SPECIFIED ON THE
- * *UC* OR *VM* DIRECTIVE.
- * THAT USER ENTRY IS DISREGARDED. (FROM K-DISPLAY,
- * ONLY THE DIRECTIVE IS IGNORED.)
- *
- * **** USER NAME NOT FOUND.
- * AN ATTEMPT WAS MADE TO DELETE (OR INQUIRE OR UPDATE
- * FROM K-DISPLAY) A NON-EXISTENT USER NAME.
- * THAT USER ENTRY IS DISREGARDED. (FROM K-DISPLAY,
- * ONLY THAT LINE OF INPUT IS DISREGARDED.)
- *
- * **** USER INDEX PREVIOUSLY DEFINED.
- * NO MORE THAN ONE USER NAME CAN BE ASSIGNED TO ANY
- * USER INDEX WITH THE *UI* KEYWORD.
- * THAT USER ENTRY IS DISREGARDED.
- * (FROM K-DISPLAY, ONLY THAT LINE OF INPUT IS DISREGARDED.)
- *
- * **** NO USER INDICES AVAILABLE.
- * NO MORE USER INDICES ARE AVAILABLE FOR AUTOMATIC
- * ASSIGNMENT. THE *FUI* DIRECTIVE MUST BE USED TO
- * SPECIFY USER INDICES.
- * THAT USER ENTRY IS DISREGARDED. (FROM
- * K-DISPLAY, ONLY THAT LINE OF INPUT IS DISREGARDED.)
- *
- * **** OBSOLETE DIRECTIVE IGNORED.
- * WARNING MESSAGE INDICATING INPUT DIRECTIVE
- * IS NO LONGER MEANINGFUL AND WAS IGNORED.
- * ISSUED FOR *AB* ANSWERBACK INPUT DIRECTIVE,
- * *NF* NUMBER OF LOCAL FILES INPUT DIRECTIVE, AND
- * *OF* NUMBER OF DISPOSED OUTPUT FILES INPUT DIRECTIVE.
- *
- * **** INCORRECT PASSWORD.
- * THE PASSWORD ENCOUNTERED WAS NOT AT LEAST *RPWL*
- * CHARACTERS IN LENGTH.
- * THAT USER ENTRY IS DISREGARDED. (FROM
- * K-DISPLAY ONLY THAT LINE OF INPUT IS DISREGARDED.)
- *
- * **** PASSWORD REQUIRED.
- * A PASSWORD WAS NOT ENCOUNTERED FOR THE USER
- * NAME BEING CREATED.
- * THAT USER ENTRY IS DISREGARDED. (FROM
- * K-DISPLAY ONLY THAT LINE OF INPUT IS DISREGARDED.)
- *
- * **** INCORRECT PASSWORD IGNORED.
- * THE PASSWORD ENCOUNTERED WAS NOT AT LEAST *RPWL*
- * CHARACTERS IN LENGTH.
- * THIS WILL ONLY OCCUR ON AN UPDATE RUN AND THE UPDATE OF THE
- * EXISTING USER NAME IS MADE WITHOUT THE PASSWORD CHANGE.
- *
- * **** UPDATE NOT ALLOWED BY INQUIRE.
- * ENTRY OF UPDATE DIRECTIVES IS REJECTED DURING
- * K-DISPLAY INQUIRE OF A USER NAME.
- * THAT INPUT DIRECTIVE FROM THE K-DISPLAY IS IGNORED.
- *
- * **** PASSWORDS UPDATED.
- * INFORMATIVE MESSAGE ISSUED TO K-DISPLAY AFTER AN
- * OPERATOR HAS ENTERED THE *PW* DIRECTIVE,
- * INDICATING THAT THE BATCH AND THE INTERACTIVE
- * PASSWORDS HAVE BEEN UPDATED.
- *
- * **** BATCH PASSWORD UPDATED.
- * INFORMATIVE MESSAGE ISSUED TO K-DISPLAY AFTER AN
- * OPERATOR HAS ENTERED THE *PB* DIRECTIVE,
- * INDICATING THAT THE BATCH PASSWORD HAS BEEN UPDATED.
- *
- * **** INTERACTIVE PASSWORD UPDATED.
- * INFORMATIVE MESSAGE ISSUED TO K-DISPLAY AFTER AN
- * OPERATOR HAS ENTERED THE *PI* DIRECTIVE,
- * INDICATING THAT THE INTERACTIVE PASSWORD HAS BEEN
- * UPDATED.
- SPACE 4,10
- *** INFORMATIVE MESSAGES.
- *
- *
- * * CREATION COMPLETE.* - SELF EXPLANATORY.
- *
- * * UPDATE COMPLETE.* - SELF EXPLANATORY.
- *
- * * UPROC COMPLETE.* - SELF EXPLANATORY.
- *
- * * REFORMAT COMPLETE.* - SELF EXPLANATORY.
- *
- * * CONVERSION TO SOURCE COMPLETE.* - SELF EXPLANATORY.
- *
- * * INQUIRY COMPLETE.* - SELF EXPLANATORY.
- *
- * * CATALOG COMPLETE.* - SELF EXPLANATORY.
- *
- * * CHECK OUTPUT FOR WARNING MESSAGES.* - NO DIRECTIVE
- * ERRORS WERE ENCOUNTERED, BUT SOME INPUT
- * DIRECTIVES RECEIVED WARNING MESSAGES.
- *
- * * LEVEL-1 INDEX BLOCKS LINKED.* -
- * IF USER FILE CAN BE REFORMATTED TO ELIMINATE BLOCK
- * LINKAGE, SEARCHES WILL BE FASTER -
- * 1. FOR USER NAMES RESIDING IN LINKED BLOCKS.
- * 2. FOR NON-EXISTENT USER NAMES WHICH WOULD HAVE
- * RESIDED IN LINKED BLOCKS.
- *
- * * NNNNNN USER INDICES PURGED.* - ALL PERMANENT FILES
- * FOR NNNNNN USER INDICES WERE PURGED UNDER THE
- * REFORMAT OPTION. SYSTEM ORIGIN ONLY.
- *
- * * CREATING USER * -
- * * UPDATING USER * -
- * NAMED OPERATION IS IN PROGRESS FOR *USER*.
- *
- * * WAITING FOR VALIDATION FILE.* - THE JOB IS IN TIMED/EVENT
- * ROLLOUT AFTER *UPROC*, *PASSWOR* OR *CHVAL* FOUND
- * THE VALIDATION FILE BUSY.
- SPACE 4,10
- *** K-DISPLAY OPERATOR MESSAGES.
- *
- * IN ADDITION TO OUTPUT FILE AND INFORMATIVE MESSAGES
- * THAT NORMALLY OCCUR DURING AN UPDATE RUN, THE
- * FOLLOWING MESSAGES CAN APPEAR UNDER THE K-DISPLAY -
- *
- * **** FORMAT ERROR.
- * ENTRY IS UNRECOGNIZABLE.
- * THAT LINE OF INPUT IS DISREGARDED.
- *
- * **** USER NAME ALREADY EXISTS.
- * AN ATTEMPT WAS MADE TO CREATE AN EXISTING USER NAME.
- * THAT LINE OF INPUT IS DISREGARDED.
- *
- * *INQUIRING USER *
- * * DELETING USER *
- * THE NAMED OPERATION IS IN PROGRESS FOR *USER*.
- *
- * *USER CREATED.*
- * *USER UPDATED.*
- * *USER INQUIRED.*
- * *USER DELETED.*
- * THE NAMED OPERATION HAS BEEN COMPLETED FOR *USER*.
- SPACE 4,10
- ** NOTES.
- *
- *
- * WHILE *MODVAL* HAS THE VALIDATION FILE ATTACHED, *0AV* WILL
- * BE UNABLE TO DECREMENT A USER-S SECURITY COUNT.
- SPACE 4,10
- ** PROGRAMMING CONSIDERATIONS.
- *
- *
- * TO DEFINE NEW OR ALTER EXISTING FIELDS AND/OR DIRECTIVES
- * IN *MODVAL*, THE FOLLOWING ITEMS SHOULD BE REVIEWED -
- *
- * 1. DATA FIELD DEFINITION AND DOCUMENTATION IN *COMSACC*.
- * 2. DIRECTIVE DOCUMENTATION IN *MODVAL*.
- * 3. *TINE* TABLE ENTRY FOR INPUT PROCESSING OF DIRECTIVES.
- * 4. ALTERNATE TABLE OF DATA VALUES IF APPLICABLE
- * (SUCH AS *TPAI*, *TPXI*, ETC.).
- * 5. *TODV* TABLE OF DEFAULT VALUES FOR USER RECORD BLOCK.
- * 6. *TFR* TABLE ENTRY FOR SOURCE, K-DISPLAY, AND
- * *LIMITS* PROCESSING OF DATA FIELD.
- * 7. *TMBS* TABLE ENTRY FOR CONVERSION TO SOURCE.
- * 8. ENTRY IN K-DISPLAY BUFFER AREA.
- * 9. *LIMITS* OUTPUT MESSAGES.
- * 10. INPUT DIRECTIVE PROCESSING ROUTINE (SUCH AS
- * *AAD*, *ACW*, *AND*, ETC.) WITH ASSOCIATED ENTRY
- * IN *TOPS* TABLE.
- * 11. SOURCE CONVERSION ROUTINE (SUCH AS *AOC*, *CON*,
- * *CPS*, ETC.).
- * 12. ANY NEW OUTPUT ERROR MESSAGES (DEFINED AFTER
- * SUBROUTINE *IDE*) AND DOCUMENTATION.
- *
- * IF A NEW PERMISSION BIT OR DIRECTIVE IS BEING DEFINED
- * (SIMILAR TO *AW*, *AP*, ETC.), THE FOLLOWING ITEMS
- * SHOULD ALSO BE CHECKED -
- *
- * 1. TABLE OF BIT DEFINITIONS (SUCH AS *TAWI*, *TRTP*,
- * *TNAV* IN *COMTNAP*, ETC.).
- * 2. TABLE OF *LIMITS* MESSAGE ADDRESSES CORRESPONDING TO
- * BIT DEFINITIONS (SUCH AS *ALP*, *APP*, ETC.).
- * 3. ENTRY IN *TPCW* TABLE FOR *ACW* ROUTINE.
- * 4. ENTRY IN *TPCS* TABLE FOR *CPS* ROUTINE.
- * 5. ENTRY IN *TAPL* TABLE FOR *PLM* ROUTINE.
- TITLE PROGRAM EQUIVALENCES.
- COMMON SPACE 4,10
- ** COMMON DECKS.
- *CALL COMCMAC
- *CALL COMCCMD
- *CALL COMCDCM
- *CALL COMCDCP
- *CALL COMCMTM
- *CALL COMSLFD
- *CALL COMSMLS
- *CALL COMSSFM
- *CALL COMSPFM
- *CALL COMSPRD
- *CALL COMSSFS
- *CALL COMSSSD
- *CALL COMSSSJ
- *CALL COMSTCM
- LIST X
- *CALL COMSACC
- LIST -X
- TITLE MACRO DEFINITIONS
- APLW SPACE 4,10
- ** APLW - ALLOWED PERMISSIONS LIMITS PARAMETER WORD.
- *
- * APLW TBP,TLM,LHR,UBO
- *
- * ENTRY TBP = TABLE OF BIT POSITIONS.
- * TLM = TABLE OF LIMITS MESSAGES.
- * LHR = LIMITS HEADER MESSAGE.
- * UBO = USER BLOCK OFFSET FOR PERMISSION DATA WORD.
- PURGMAC APLW
- APLW MACRO TBP,TLM,LHR,UBO
- VFD 18/TBP-1,18/TLM-1,12/LHR,6/UBO,6/TLM_L
- APLW ENDM
- DTCS SPACE 4,10
- ** DTCS - DEFINE TABLE FOR PERMISSION CONVERSION TO SOURCE.
- *
- * DTCS SA,UBO,TPI,LBP,FBP
- *
- * ENTRY SA = SOURCE ENTRY ADDRESS.
- * UBO = USER BLOCK OFFSET OF VALIDATION WORD.
- * TPI = TABLE OF VALIDATION PERMISSION IDENTIFIERS.
- * LBP = LAST BIT POSITION + 1.
- * FBP = FIRST BIT POSITION.
- PURGMAC DTCS
- DTCS MACRO SA,UBO,TPI,LBP,FBP
- VFD 18/SA,6/UBO,6/0,18/TPI,6/LBP,6/FBP
- DTCS ENDM
- DTPC SPACE 4,15
- ** DTPC - DEFINE TABLE OF PERMISSION CONTROL WORDS.
- *
- * DTPC ID,TPB,NB,SHF,(OPT)
- *
- * ENTRY ID = DIRECTIVE IDENTIFIER.
- * TPB = FWA TABLE OF PERMISSION IDENTIFIERS.
- * NB = NUMBER OF PERMISSION BITS.
- * SHF = SHIFT FOR MASK.
- * OPT = OPTION LIST.
- * ALL = *ID=ALL* DIRECTIVE ALLOWED.
- * NUL = *ID=NUL* DIRECTIVE ALLOWED.
- * SPF = SPACE FILL PERMISSION IDENTIFIER.
- PURGMAC DTPC
- DTPC MACRO ID,TPB,NB,SHF,(OPT)
- LOCAL OP,OPB
- OPB SET 0
- .A IFC NE,$_OPT$$
- .B ECHO ,OP=(OPT)
- IFC EQ,$_OP$ALL$,1
- OPB SET OPB+4
- IFC EQ,$_OP$NUL$,1
- OPB SET OPB+2
- IFC EQ,$_OP$SPF$,1
- OPB SET OPB+1
- .B ENDD
- .A ENDIF
- VFD 18/0L_ID,12/OPB,6/SHF,6/NB,18/TPB
- DTPC ENDM
- DTPS SPACE 4,10
- ** DTPS - DEFINE TABLE OF INPUT PROCESSING SUBROUTINES.
- *
- * DTPS PROC,(OPT)
- *
- * ENTRY PROC = PROCESSOR ADDRESS.
- * OPT = OPTION LIST.
- * ASK = ASTERISK ALLOWED IN IDENTIFIER.
- * DCC = VALIDATE WITH DEFAULT CHARACTER
- * COUNT (10D).
- PURGMAC DTPS
- DTPS MACRO PROC,OPT
- LOCAL OP,OPB
- OPB SET 0
- .A IFC NE,$_OPT$$
- .B ECHO ,OP=(OPT)
- IFC EQ,$_OP$ASK$,1
- OPB SET OPB+4000B
- IFC EQ,$_OP$DCC$,1
- OPB SET OPB+2000B
- .B ENDD
- .A ENDIF
- VFD 12/OPB,30/0,18/PROC
- DTPS ENDM
- TFRW1 SPACE 4,20
- ** TFRW1 - DEFINE WORD 1 OF A *TFR* ENTRY.
- *
- * TFRW1 UBO,SB,NB,UAV,APR,(OPT)
- *
- * ENTRY UBO - USER BLOCK OFFSET.
- * SB - STARTING BIT NUMBER.
- * NB - NUMBER OF BITS IN FIELD.
- * UAV - UNLIMITED ACCESS VALUE.
- * .EQ. ZERO IF NO UNLIMITED ACCESS.
- * APR - ADDRESS OF PROCESSING ROUTINE.
- * OPT - OPTION LIST.
- * CTE = CONTINUATION TABLE ENTRY
- * (MULTIPLE WORD DATA).
- * DCV = CONVERT INDEX TO DECIMAL ACTUAL
- * VALUE VIA CONVERSION PROCESSOR, FOR
- * LIMITS AND EXTRA K-DISPLAY FIELDS.
- * LJD = LEFT JUSTIFY DATA FOR PROCESSING
- * ROUTINE.
- * MWR = MULTIPLE WORD RESULT. *UAV* FIELD
- * CONTAINS NUMBER OF CHARACTERS
- * IN RESULT.
- * OCV = CONVERT INDEX TO OCTAL ACTUAL
- * VALUE VIA CONVERSION PROCESSOR FOR
- * LIMITS AND EXTRA K-DISPLAY FIELDS.
- * RJA = RIGHT JUSTIFY LIMITS FIELD AFTER
- * CONVERSION.
- * USD = PUT *SYSTEM* RATHER THAN *UNLIMITED*
- * IN K-DISPLAY AND LIMITS FIELD.
- * ZSD = ENTER *SYSTEM* IN K-DISPLAY AND
- * LIMITS FIELDS IF ZERO VALUE.
- PURGMAC TFRW1
- TFRW1 MACRO UBO,SB,NB,UAV,APR,OPT
- LOCAL CV,FL,OP
- CV SET 0
- FL SET 0
- .A IFC NE,$_OPT$$
- .B ECHO ,OP=(OPT)
- IFC EQ,$_OP$CTE$,1
- FL SET FL+4000B
- IFC EQ,$_OP$DCV$,1
- CV SET 2
- IFC EQ,$_OP$OCV$,1
- CV SET 1
- IFC EQ,$_OP$RJA$,1
- FL SET FL+2000B
- IFC EQ,$_OP$USD$,1
- FL SET FL+1000B
- IFC EQ,$_OP$ZSD$,1
- FL SET FL+400B
- IFC EQ,$_OP$LJD$,1
- FL SET FL+200B
- IFC EQ,$_OP$MWR$,1
- FL SET FL+100B
- .B ENDD
- .A ENDIF
- VFD 6/UBO,6/SB,6/NB,6/UAV,12/FL,6/CV,18/APR
- TFRW1 ENDM
- TFRW2 SPACE 4,15
- ** TFRW2 - DEFINE WORD 2 OF A *TFR* ENTRY.
- *
- * TFRW2 LMA,KDA,SOA
- *
- * ENTRY LMA = LIMITS MESSAGE ADDRESS IF NONZERO.
- * DATA STORED AT *LMA*+5 (ACTUAL VALUE IF INDEX
- * CONVERSION SPECIFIED). CONTINUATION ENTRY DATA
- * STORED AT *LMA*+4 AND *LMA*+5.
- * KDA = K-DISPLAY ENTRY ADDRESS IF NONZERO.
- * DATA STORED AT *KDA*. CONTINUATION ENTRY DATA
- * STORED AT *KDA*+1. ACTUAL VALUE CONVERTED FROM
- * INDEX STORED AT *KDA*+1.
- * SOA = SOURCE MESSAGE ADDRESS IF NONZERO.
- * DATA STORED AT *SOA*+1. CONTINUATION ENTRY
- * DATA STORED AT *SOA*+2.
- PURGMAC TFRW2
- TFRW2 MACRO LMA,KDA,SOA
- VFD 6/0,18/LMA,18/KDA,18/SOA
- TFRW2 ENDM
- TFRW3 SPACE 4,10
- ** TFRW3 - DEFINE WORD 3 OF A *TFR* ENTRY.
- *
- * TFRW3 CVP,SHF,ABA,HDR
- *
- * ENTRY CVP = ADDRESS OF CONVERSION PROCESSOR TO CONVERT
- * INDEX TO ACTUAL VALUE.
- * SHF = SHIFT TO APPLY TO ACTUAL VALUE AFTER *CVP*.
- * ABA = ALTERNATE BLOCK ADDRESS IF NONZERO.
- * FIELD VALUE IS USED AS INDEX INTO *ABA* TABLE TO
- * GET ACTUAL VALUE.
- * HDR = HEADER MESSAGE ADDRESS IF NONZERO.
- PURGMAC TFRW3
- TFRW3 MACRO CVP,SHF,ABA,HDR
- VFD 6/SHF,18/CVP,18/ABA,18/HDR
- TFRW3 ENDM
- DEFAW SPACE 4,10
- ** DEFAW - DEFINE *LIMITS* MESSAGE FOR A BIT IN
- * ASSOCIATED WORD.
- *
- * DEFAW AN,AD
- *
- * ENTRY AN - ALLOWED PERMISSION/USER TYPE/APPLICATION NAME.
- * AD - ADDRESS OF *LIMITS* MESSAGE.
- *
- * EXIT A *VFD* DEFINED IN THE CORRECT FORMAT.
- PURGMAC DEFAW
- DEFAW MACRO AN,AD
- LOCAL MAN
- MAN MICRO 1,7,$AN$
- VFD 42/0L"MAN",18/AD
- DEFAW ENDM
- SCLASS SPACE 4,15
- ** SCLASS - DEFINE SERVICE CLASS TABLE.
- *
- * SCLASS NM,MN,DF,ST,TX
- *
- * ENTRY *NM* = SERVICE CLASS NAME.
- * *MN* = TWO CHARACTER MNEMONIC.
- * *DF* = DAYFILE MESSAGE CHARACTER.
- * *ST* = SHORT TEXT FOR *QFTLIST*.
- * *TX* = TEXT OF SERVICE CLASS NAME FOR BANNER PAGE.
- *
- * NOTE - THE CALL TO *COMSSCD* MUST FOLLOW THE DEFINITION OF
- * THIS MACRO.
- PURGMAC SCLASS
- SCLASS MACRO NM,MN,DF,ST,TX
- .SCL RMT
- .A IFLT NM,12D
- NM VFD 24/0,24/0,12/MN_MK TX
- .A ELSE
- NM VFD 24/0,24/MN_MK,12/0 TX
- .A ENDIF
- .SCL RMT
- .SCL1 RMT
- .B IFC NE,$NM$SSSC$
- NM VFD 42/0L_MN,6/1R_DF,12/* TX
- .B ELSE
- NM VFD 42/-0,18/* TX
- .B ENDIF
- .SCL1 RMT
- .C IFC NE,$NM$SSSC$
- .SCL2 RMT
- USC_DF DATA C* _TX_ (_MN_)*
- .SCL2 RMT
- .C ENDIF
- .SCL3 RMT
- .D IFC NE,$NM$SSSC$
- NM DEFAW MN,USC_DF
- .D ELSE
- NM DATA -1
- .D ENDIF
- .SCL3 RMT
- SCLASS ENDM
- SCL$ EQU 0 ONLY PROCESS CLASSES WITH JCB-S
- *CALL COMSSCD
- TITLE PROGRAM EQUIVALENCES.
- ** GENERAL EQUATES.
- .APBC EQU ANLC/3
- .APBE EQU ANLC-.APBC ENTRIES/ PARTIAL BLOCK
- APBW EQU .APBE*ANWE USER NAME PARTIAL BLOCK LENGTH
- OV EQU 0 OVERLAY TYPE
- SDM= EQU * SUPPRESS DAYFILE MESSAGE
- SPACE 4,10
- ** EQUATES FOR COMCCVI.
- CCI$ EQU 1 COMMAND CONVERSION
- CMI$ EQU 1 CM FIELD LENGTH CONVERSION
- CPI$ EQU 1 CARDS PUNCHED CONVERSION
- DBI$ EQU 1 DEFERRED BATCH JOB CONVERSION
- DFI$ EQU 1 DAYFILE MESSAGE CONVERSION
- ECI$ EQU 1 EXTENDED MEMORY FIELD LENGTH CONVERSION
- LPI$ EQU 1 LINES PRINTED CONVERSION
- DTI$ EQU 1 DETACHED JOB CONVERSION
- MSI$ EQU 1 MASS STORAGE PRUS CONVERSION
- PTI$ EQU 1 UNITS PLOTTED CONVERSION
- SLI$ EQU 1 SRU LIMIT CONVERSION
- TLI$ EQU 1 TIME LIMIT CONVERSION
- CSI$ EQU 1 CUMULATIVE FILE SPACE CONVERSION
- DSI$ EQU 1 DIRECT ACCESS FILE SIZE CONVERSION
- FSI$ EQU 1 INDIRECT ACCESS FILE SIZE CONVERSION
- FCI$ EQU 1 FILE COUNT CONVERSION
- BLENGTHS SPACE 4,10
- ** BUFFER LENGTHS.
- CBUFL EQU 5 CHARACTER BUFFER LENGTH
- IBUFL EQU 1001B INPUT
- OBUFL EQU 301B OUTPUT
- VBUFL EQU 301B MODVAL
- TITLE MANAGED TABLE AND DIRECT CELL INITIALIZATION.
- DIRECT SPACE 4,10
- ** DIRECT CELLS.
- ORIG EQU DIRC
- IDIRC INITIALIZE DIRECT CELLS
- POINTERS SPACE 4,10
- ** MANAGED TABLE POINTERS.
- ITAB ANWE,ANWE,ARBS,2 INITIALIZE TABLES
- ORG TFBL TABLE OF FULL BLOCK LENGTHS
- CON ABLI
- CON ABLI
- CON ABLB
- ORG TPBL TABLE OF PARTIAL BLOCK LENGTHS
- CON APBW
- CON APBW
- CON ABLB
- ORG CTAB TABLE OF ENTRY WORD COUNTS
- CON C.TAB0
- CON C.TAB1
- CON C.TAB2
- CON C.TAB3
- ORG STAB TABLE OF COMPARE WORD COUNTS FOR SEARCH
- CON AINW
- CON AINW
- CON AINW
- CON 1
- ORG CWL0 CONTROL WORDS
- VFD 12/0,12/0,12/ANWE,12/0,12/3
- VFD 12/1,12/0,12/ANWE,12/0,12/3
- VFD 12/2,12/0,12/ARBS,12/0,12/3
- ORG ML TABLE MEMORY LIMIT
- CON RFL= CURRENT FIELD LENGTH
- ORG F.TEND
- CON RFL=-C.TAB2 INITIAL TABLE LIMIT
- ORG KD K-DISPLAY CONTROL WORD
- CON KIA
- ORG M2 MESSAGE AREA TO BE CLEARED
- CON MSGB
- ORG LP LIST PROCESSOR
- CON LID
- TITLE DATA AREA.
- FETS SPACE 4,10
- ** FILE ENVIRONMENT TABLES.
- ORG OVLA
- I BSS 0
- INPUT FILEC IBUF,IBUFL,(FET=8)
- O BSS 0
- OUTPUT FILEC OBUF,OBUFL,(FET=8),EPR
- N BSS 0
- NEWVAL RFILEB NBUF,VBUFL,(FET=8)
- P BSS 0
- "APFN" RFILEB PBUF,VBUFL,(PFN="APFN")
- S BSS 0
- SOURCE FILEC IBUF,IBUFL,(FET=8)
- U BSS 0
- "AUFN" FILEB NBUF,VBUFL,(PFN="AUFN")
- WORKING SPACE 4,10
- ** WORKING STORAGE.
- AN CON 0,0 USER NAME
- CA BITCON (*) USER NAME SPECIAL CHARACTER
- CK CON 63B SIMULATE *BITCON* FOR + , - , ( AND )
- CS BITCON ( ) CHARACTERS SUPPRESSED ON INPUT
- DB CON 0 DEBUG FLAG
- EF CON 0 ERROR FLAG
- 0 = CONTINUE NORMAL PROCESSING
- ELSE PREVENT FILE ENTRIES
- EL CON 0 SET INDICATES LIST ERRORS ONLY
- EMSF CON 0 DIRECTIVE ERROR FLAG
- GENF CON 0 *GENVAL* FLAG
- PSWF CON 0 *PASSWOR* FLAG
- WMSF CON 0 WARNING MESSAGE FLAG
- LMFG CON 0 *LIMITS* FLAG -
- = -1 = *LIMITS* ENTRY POINT.
- = 0 = NO LIMITS OPTION SELECTED.
- LO CON 0 CATALOG LIST ORDER - 0 = BY USER NAME
- 42 = BY USER INDEX
- OPTION CON 0 OPTIONS FROM COMMAND
- OPWR CON 0 OVERRIDE PASSWORD RANDOMIZATION FLAG
- OF DATA 0 TERMINAL ASSIGNED TO THE OUTPUT FILE
- RAND CON 0 RANDOM ADDRESS OF NEXT EMPTY DATA RECORD
- RAPF CON 0 SYSTEM FILE ATTACHED
- TSTATUS BSSZ 2 TSTATUS REQUEST
- UF CON 0 UPDATE FILE INDICATOR
- UUFG CON 0 USER NAME UPDATE FLAG
- FA CON 0 FORCE ATTACH OF VALIDUS AND VALINDS FLAG
- FN CON -1 ALTERNATE FAMILY NAME
- CVA CON 0 CONVERSION *A* OPTION
- CVC CON 0 CONVERSION *C* OPTION
- CVD CON 0 CONVERSION *D* OPTION
- CVF CON 0 CONVERSION *F* OPTION
- CVG CON 0 CONVERSION *G* OPTION
- CVH CON 0 CONVERSION *H* OPTION
- CVJ CON 0 CONVERSION *J* OPTION
- CVK CON 0 CONVERSION *K* OPTION
- RP CON 0 ALLOW PASSWORDS LESS THEN MINIMUM LENGTH
- SI CON 0 SOURCE INPUT FLAG
- UPFG CON 0 *UPROC* FLAG
- UPFN CON 0 USER PROLOGUE FILE NAME
- CHFG CON 0 *CHVAL* FLAG
- LPPG CON 0 LINES PER PAGE
- TANB SPACE 4,10
- ** TANB - SCRATCH BLOCK FOR USER RECORD ASSEMBLY.
- TANB BSS ARBS
- SPACE 4,10
- ** DAYFILE MESSAGES.
- DMAB DATA C* MODVAL ABORTED.*
- DMCA DATA C* ERROR IN CHVAL ARGUMENTS.*
- DMCC DATA C* CREATION COMPLETE.*
- DMCM DATA C* INCORRECT COMMAND.*
- DMCO DATA C* CHECK OUTPUT FOR WARNING MESSAGES.*
- DMCP DATA C* CANNOT CHANGE BOTH PASSWORDS AT ONCE.*
- DMDE DATA C* DIRECTIVE ERRORS.*
- DMFC DATA C* FILE NAME CONFLICT - XXXXXXX.*
- DMFM DATA C* FM NOT LEGAL FAMILY.*
- DMGA DATA C* ERROR IN GENVAL ARGUMENTS.*
- DMGV DATA C* GENVAL ABORTED.*
- DMIA DATA C* USER ACCESS NOT VALID.*
- DMIC DATA C* INQUIRY COMPLETE.*
- DMIN DATA C/ *INPUT* NOT ASSIGNED TO TERMINAL./
- DMIP DATA C* INCORRECT PASSWORD.*
- DMLA DATA C* ERROR IN LIMITS ARGUMENTS.*
- DMLC DATA C* CATALOG COMPLETE.*
- DML0 DATA C* LEVEL-0 DATA BASE ERROR.*
- DML1 DATA C* LEVEL-1 INDEX BLOCKS LINKED.*
- DML2 DATA C* LEVEL-2 DATA BASE ERROR.*
- DMMA DATA C* ERROR IN MODVAL ARGUMENTS.*
- DMOT DATA C* UNDEFINED ORIGIN TYPE.*
- DMPA DATA C* ERROR IN PASSWOR ARGUMENTS.*
- DMPB DATA C* PASSWORD RANDOMIZATION NOT PERMITTED FROM BATCH.*
- DMTL DATA C* PASSWORD TOO LONG.*
- DMPE DATA C* PASSWORD EXPIRATION CHANGE INCORRECT.*
- DMPS DATA C* PASSWORD TOO SHORT.*
- DMRC DATA C* REFORMAT COMPLETE.*
- DMSA DATA C* SECURITY ADMINISTRATOR XD/XT CHANGE NOT VALID.*
- DMSC DATA C* CONVERSION TO SOURCE COMPLETE.*
- DMSE DATA C* SYSTEM ERROR.*
- DMSP DATA C* SECURE PASSWORD ENTRY REQUIRED.*
- DMUA DATA C* ERROR IN UPROC ARGUMENTS.*
- DMUC DATA C* UPDATE COMPLETE.*
- DMUP DATA C* UPROC COMPLETE.*
- DMUS DATA C* UNDEFINED SERVICE CLASS.*
- DMVB DATA C* VALIDATION FILE BUSY - TRY AGAIN LATER.*
- DMVE DATA C* VERIFICATION ERROR. PASSWORD NOT CHANGED.*
- DMVC DATA C* INCORRECT SERVICE CLASS.*
- DMVR DATA C* "AUFN" READ ERROR.*
- DMWV DATA C* WAITING FOR VALIDATION FILE.*
- DMXP DATA C* ZZZZZZ USER INDICES PURGED.*
- SPACE 4,10
- ** ACCOUNT FILE MESSAGES.
- AMPW DATA C*MUPW.*
- AMPX DATA C*MUPX.*
- TAWI SPACE 4,10
- ** TAWI - TABLE OF ACCESS WORD IDENTIFIERS.
- *
- * EACH ENTRY CORRESPONDS TO A BIT IN THE ACCESS CONTROL WORD
- * WHICH CAN BE TOGGLED BY INPUT DIRECTIVE.
- *
- * FORMAT - 42/ IDENTIFIER, 18/ BIT POSITION
- TAWI BSS 0
- LOC 0
- CON 0LCPWC+* USER PASSWORD CHANGE
- CON 0LCTPC+* TERMINAL PRIVILEGED COMMANDS
- CON 0LCLPF+* WRITE LARGE PERMANENT FILES
- CON 0LCSPF+* WRITE SMALL PERMANENT FILES
- CON 0LCSOJ+* SPECIAL PRIVILEGES UNDER *DEBUG* MODE
- CON 0LCASF+* ACCESS SYSTEM FILES
- CON 0LCAND+* ASSIGN NON-ALLOCATABLE EQUIPMENT
- CON 0LCCNR+* USE SYSTEM WITHOUT CHARGE NUMBER
- CON 0LCSRP+* MOUNT REMOVABLE DEVICES
- CON 0LCSTP+* USE SPECIAL TRANSACTION PRIVILEGES
- CON 0LCTIM+* FOR TERMINAL TIME OUT
- CON 0LCUCP+* USER CONTROL POINT (UCP) PRIVILEGES
- CON 0LCSAP+* SPECIAL ACCOUNTING PRIVILEGES
- CON 0LCBIO+* *BATCHIO* SUBSYSTEM PRIVILEGES
- CON 0LCPRT+* EXTENDED MEMORY *PROTECT* PRIVILEGES
- CON 0LCPLK+* TRANSFER PERMANENT FILES BETWEEN HOSTS
- CON 0LCQLK+* TRANSFER QUEUED FILES BETWEEN HOSTS
- CON 0LCUST+* SPECIFY LID-S ON JOB AND *ROUTE* COMMANDS
- CON 0LCNVE+* NVE SUBSYSTEM PRIVILEGES
- CON 0LCMNT+* ALLOW MAINTENANCE PRIVILEGES
- CON 0LCNOP+* NPU OPERATOR PRIVILEGE
- CON 0LCSAF+* ALLOW SEC. *USER* COMMAND ALTERNATE FAMILY
- CON 0LCNRD+* USE NON-DEFAULT CHARGE/PROJECT NUMBER
- CON 0LCOPR+* ENTER NON-RANDOMIZED PASSWORD
- CON 0LCLTD+* SPECIFY PF RESIDENCE AS *LOCKED TO DISK*
- CON 0LCOPI+* OMIT PERSONAL IDENTIFICATION ENTRY
- CON 0LCACA+* ALLOW CONCURRENT ACCESS
- CON 0LCPAM+* ALLOW PRIVILEGED ANALYST OPERATIONS
- CON 0LCSAU+* ALLOW SEC. *USER* COMMAND ALTERNATE USER
- CON 0LCRAU+* ALLOW ROUTE WITH *USER* COMMAND ALT. USER
- CON 0LCRAF+* ALLOW ROUTE WITH *USER* COMMAND ALT. FAM.
- * DEFINE INSTALLATION PERMISSIONS.
- LOC 48D
- CON -1 RESERVED FOR INSTALLATION (BIT 48)
- CON -1 RESERVED FOR INSTALLATION (BIT 49)
- CON -1 RESERVED FOR INSTALLATION (BIT 50)
- CON -1 RESERVED FOR INSTALLATION (BIT 51)
- CON -1 RESERVED FOR INSTALLATION (BIT 52)
- CON -1 RESERVED FOR INSTALLATION (BIT 53)
- CON -1 RESERVED FOR INSTALLATION (BIT 54)
- CON -1 RESERVED FOR INSTALLATION (BIT 55)
- CON -1 RESERVED FOR INSTALLATION (BIT 56)
- CON -1 RESERVED FOR INSTALLATION (BIT 57)
- CON -1 RESERVED FOR INSTALLATION (BIT 58)
- CON -1 RESERVED FOR INSTALLATION (BIT 59)
- LOC *O
- CON 0 END OF TABLE
- TRTP SPACE 4,10
- ** TRTP - TABLE OF REMOTE TERMINAL ACCESS PERMISSIONS.
- *
- * EACH ENTRY CORRESPONDS TO A BIT IN THE
- * SHELL CONTROL WORD *ASHN* WHICH CAN BE TOGGLED
- * BY AN INPUT DIRECTIVE.
- *
- * FORMAT - 42/IDENTIFIER,18/BIT POSITION
- TRTP BSS 0
- LOC 0
- CON 0LCCLM+* MONITOR COMMANDS INSIDE CCL LOOP
- CON 0LBCSM+* MONITOR COMMANDS OUTSIDE CCL LOOP
- CON 0LTCSM+* MONITOR COMMANDS FROM TERMINAL
- CON 0LSLID+* SYSTEM LIBRARY SHELL PROGRAM
- CON 0LGLID+* GLOBAL LIBRARY SHELL PROGRAM
- CON 0LLFID+* LOCAL LIBRARY SHELL PROGRAM
- CON 0LABTM+* CLEAR SHELL PROGRAM IF ABORT
- TRTPL BSS 0
- LOC *O
- CON 0 END OF TABLE
- TSCV SPACE 4,10
- ** TSCV - TABLE OF SERVICE CLASS VALIDATION BITS.
- *
- * EACH ENTRY DEFINES THE VALIDATION MASK BIT FOR THE
- * CORRESPONDING SERVICE CLASS.
- *
- * FORMAT - 24/ 0, 36/ MASK BIT
- TSCV BSS 0
- LOC 0
- VFD 60/-1 NOT USED
- LIST G
- .SCL HERE
- LIST *
- LOC *O
- CON 0 END OF TABLE
- TSVM SPACE 4,10
- ** TSVM - TABLE OF SERVICE CLASS VALIDATION MASK IDENTIFIERS.
- *
- * EACH ENTRY CORRESPONDS TO A BIT IN THE SERVICE CLASS
- * VALIDATION MASK IN *ASCV* WHICH CAN BE TOGGLED BY AN
- * INPUT DIRECTIVE.
- *
- *T 42/IDENTIFIER, 6/SUFFIX, 12/BIT POSITION
- TSVM BSS 0
- LOC 0
- VFD 42/-0,18/* NOT USED
- LIST G
- .SCL1 HERE
- LIST *
- LOC *O
- TSVML EQU *-TSVM TABLE LENGTH
- CON 0 END OF TABLE
- TOSC SPACE 4,10
- ** TOSC - TABLE OF ORIGIN TYPES WITH DEFINED USER DEFAULT
- * SERVICE CLASSES.
- *
- *T 12/OT,12/DSC,18/0,18/LMA
- * OT ORIGIN TYPE.
- * DSC DEFAULT SERVICE CLASS FOR ORIGIN TYPE.
- * LMA LIMITS MESSAGE ADDRESS.
- TOSC BSS 0
- LOC 0
- CON -1 NOT ALLOWED
- BCOT DEFAW BCBC,UDBC BATCH
- RBOT DEFAW RBRB,USRB REMOTE BATCH
- IAOT DEFAW IATS,USTX INTERACTIVE
- CON -1 RESERVED FOR CDC
- CON -1 RESERVED FOR INSTALLATIONS
- LOC *O
- TOSCL EQU *-TOSC NUMBER OF USER DEFAULT SERVICE CLASSES
- CON 0 END OF TABLE
- TSOT SPACE 4,10
- ** TSOT - TABLE OF OTHER ORIGIN TYPE MNEMONICS SUPPORTED.
- *
- * SEE *TOSC* DESCRIPTION.
- TSOT BSS 0
- LOC 0
- CON -1
- CON -1
- EIOT DEFAW EIRB,USRB REMOTE BATCH
- TXOT DEFAW TXTS,USTX INTERACTIVE
- LOC *O
- CON 0
- TAPV SPACE 4,10
- ** TAPV - TABLE OF SECURITY PRIVILEGE VALIDATION BITS.
- *
- * EACH ENTRY CORRESPONDS TO A BIT IN THE MULTI-LEVEL SECURITY
- * VALIDATION WORD WHICH CAN BE TOGGLED BY AN INPUT DIRECTIVE.
- *
- * FORMAT - 42/IDENTIFIER,18/BIT POSITION.
- TAPV BSS 0
- LOC 52
- TAPVS BSS 0
- CON 0LCULT+* WRITE UNLABELED MAGNETIC TAPES
- CON 0LCWLF+* WRITE TO A LOWER LEVEL FILE
- CON 0LCLFL+* LOWER FILE ACCESS LEVEL
- CON 0LCLJL+* LOWER JOB ACCESS LEVEL
- CON 0LCFPX+* ASSIGN PERMANENT FILE EXPIRATION DATE
- CON 0LCPWX+* ASSIGN USER PASSWORD EXPIRATION DATE
- CON 0LCOLD+* EXECUTE ON-LINE DIAGNOSTICS
- CON 0LCSAP+* SECURITY ADMINISTRATOR PRIVILEGES
- TAPVL BSS 0
- LOC *O
- CON 0 END OF TABLE
- TALB SPACE 4,10
- ** TALB - TABLE OF ACCESS LEVEL BITS.
- *
- *T 42/ AL, 18/ N
- *
- * AL ACCESS LEVEL NAME DEFINED IN *COMSMLS*.
- * N POSITION OF CORRESPONDING BIT IN VALIDATION FILE WORD.
- TALB BSS 0 TABLE OF ACCESS LEVEL BITS
- LOC 36
- VFD 42/0L"ALM0",18/36 ACCESS LEVEL 0
- VFD 42/0L"ALM1",18/37 ACCESS LEVEL 1
- VFD 42/0L"ALM2",18/38 ACCESS LEVEL 2
- VFD 42/0L"ALM3",18/39 ACCESS LEVEL 3
- VFD 42/0L"ALM4",18/40 ACCESS LEVEL 4
- VFD 42/0L"ALM5",18/41 ACCESS LEVEL 5
- VFD 42/0L"ALM6",18/42 ACCESS LEVEL 6
- VFD 42/0L"ALM7",18/43 ACCESS LEVEL 7
- TALBS BSS 0
- LOC *O
- TALBL EQU *-TALB SIZE OF TABLE
- CON 0 END OF ACCESS LEVEL TABLE
- TACC SPACE 4,10
- ** TACC - TABLE OF ACCESS CATEGORY BITS.
- *
- *T 42/ AC, 18/ N
- *
- * AC ACCESS CATEGORY NAME (DEFINED IN *COMSMLS*).
- * N POSITION OF CORRESPONDING BIT IN VALIDATION FILE WORD.
- TACC BSS 0
- LOC 0
- CON 0L"ACM00"+* ACCESS CATEGORY 00
- CON 0L"ACM01"+* ACCESS CATEGORY 01
- CON 0L"ACM02"+* ACCESS CATEGORY 02
- CON 0L"ACM03"+* ACCESS CATEGORY 03
- CON 0L"ACM04"+* ACCESS CATEGORY 04
- CON 0L"ACM05"+* ACCESS CATEGORY 05
- CON 0L"ACM06"+* ACCESS CATEGORY 06
- CON 0L"ACM07"+* ACCESS CATEGORY 07
- CON 0L"ACM08"+* ACCESS CATEGORY 08
- CON 0L"ACM09"+* ACCESS CATEGORY 09
- CON 0L"ACM10"+* ACCESS CATEGORY 10
- CON 0L"ACM11"+* ACCESS CATEGORY 11
- CON 0L"ACM12"+* ACCESS CATEGORY 12
- CON 0L"ACM13"+* ACCESS CATEGORY 13
- CON 0L"ACM14"+* ACCESS CATEGORY 14
- CON 0L"ACM15"+* ACCESS CATEGORY 15
- CON 0L"ACM16"+* ACCESS CATEGORY 16
- CON 0L"ACM17"+* ACCESS CATEGORY 17
- CON 0L"ACM18"+* ACCESS CATEGORY 18
- CON 0L"ACM19"+* ACCESS CATEGORY 19
- CON 0L"ACM20"+* ACCESS CATEGORY 20
- CON 0L"ACM21"+* ACCESS CATEGORY 21
- CON 0L"ACM22"+* ACCESS CATEGORY 22
- CON 0L"ACM23"+* ACCESS CATEGORY 23
- CON 0L"ACM24"+* ACCESS CATEGORY 24
- CON 0L"ACM25"+* ACCESS CATEGORY 25
- CON 0L"ACM26"+* ACCESS CATEGORY 26
- CON 0L"ACM27"+* ACCESS CATEGORY 27
- CON 0L"ACM28"+* ACCESS CATEGORY 28
- CON 0L"ACM29"+* ACCESS CATEGORY 29
- CON 0L"ACM30"+* ACCESS CATEGORY 30
- CON 0L"ACM31"+* ACCESS CATEGORY 31
- TACCS BSS 0
- LOC *O
- TACCL EQU *-TACC SIZE OF TABLE
- CON 0 END OF ACCESS CATEGORY TABLE
- SPACE 4,10
- LIST X
- TNAP$ EQU 1 IGNORE APPLICATION SYNONYM TABLE
- *CALL,COMTNAP
- LIST *
- TPAI SPACE 4,10
- TITLE DATA DEFINITIONS.
- ** TPAI - TABLE OF TERMINAL PARITY IDENTIFIERS.
- TPAI INDEX CON,APAMX+1,( -* )
- INDEX ,APAE+1,( 0LEVEN )
- INDEX ,APAO+1,( 0LODD )
- CON 0
- TPXI SPACE 4,10
- ** TPXI - TABLE OF TERMINAL TRANSMISSION MODES.
- TPXI INDEX CON,APXMX+1,( -* )
- INDEX ,APXH+1,( 0LHALF )
- INDEX ,APXF+1,( 0LFULL )
- CON 0
- TTTI SPACE 4,10
- ** TTTI - TABLE OF TERMINAL TYPES.
- TTTI INDEX CON,ATTMX+1,( -* )
- INDEX ,ATTY+1,( 0LTTY )
- INDEX ,ATT7+1,( 0L713 )
- INDEX ,ATTCO+1,( 0LCOR )
- INDEX ,ATTCA+1,( 0LCORAPL )
- INDEX ,ATTMA+1,( 0LMEMAPL )
- INDEX ,ATTE+1,( 0LBLKEDT )
- CON 0
- TTCI SPACE 4,10
- ** TTCI - TABLE OF TERMINAL CHARACTER SETS.
- TTCI INDEX CON,ATCMX+1,( -* )
- INDEX ,ATCN+1,( 0LNORMAL )
- INDEX ,ATCA+1,( 0LASCII )
- CON 0
- TISI SPACE 4,10
- ** TISI - TABLE OF TERMINAL INITIAL SUBSYSTEMS.
- TISI INDEX CON,AISMX+1,( -* )
- INDEX ,AISNUL+1,( 0LNULL )
- INDEX ,AISBAS+1,( 0LBASIC )
- INDEX ,AISFOR+1,( 0LFORTRAN )
- INDEX ,AISFTN+1,( 0LFTNTS )
- INDEX ,AISEXE+1,( 0LEXECUTE )
- INDEX ,AISBAT+1,( 0LBATCH )
- INDEX ,AISACC+1,( 0LACCESS )
- CON 0
- OPTIONS SPACE 4,10
- **** IN ADDITION TO THE OPTIONS DEFINED IN *COMSSFS*, THE
- * FOLLOWING OPTIONS WILL BE RECOGNIZED -
- ZOPT EQU 6 PASSWORD
- LOPT EQU 7 LIST
- ****
- OPTIONS SPACE 4,10
- ** OPTION BIT POSITIONS.
- OPTMIC DECMIC KOPT
- KOPTB EQU 1S"OPTMIC"
- OPTMIC DECMIC UOPT
- UOPTB EQU 1S"OPTMIC"
- OPTMIC DECMIC ROPT
- ROPTB EQU 1S"OPTMIC"
- OPTMIC DECMIC SOPT
- SOPTB EQU 1S"OPTMIC"
- OPTMIC DECMIC IOPT
- IOPTB EQU 1S"OPTMIC"
- OPTMIC DECMIC ZOPT
- ZOPTB EQU 1S"OPTMIC"
- DEFAULT SPACE 4,10
- **** DEFAULT USER RECORD BLOCK VALUES.
- DALP EQU 0 NUMBER OF LINES PRINTED
- DACP EQU 0 NUMBER OF CARDS PUNCHED
- DAPT EQU 0 NUMBER OF UNITS PLOTTED
- DACC EQU 34B NUMBER OF COMMANDS
- DADF EQU 34B NUMBER OF MSG CALLS
- DASP EQU 0 SYSTEM PROLOGUE FILE INDEX
- DAPAL EQU 0 APPLICATION ACCESS LEVEL
- DASL EQU 0 SRU LIMIT
- DADS EQU 0 DIRECT FILE SIZE
- DAMT EQU 0 NUMBER OF MAGNETIC TAPES
- DARP EQU 0 NUMBER OF REMOVABLE PACKS
- DAMS EQU 1 NUMBER OF MASS STORAGE PRUS
- DADT EQU 0 NUMBER OF DETACHED JOBS
- DADB EQU 0 NUMBER OF DEFERRED BATCH JOBS
- DACM EQU 15B FIELD LENGTH / 100B
- DAEC EQU 0 EXTENDED MEMORY FIELD LENGTH / 100B
- DATL EQU 0 TIME LIMIT
- DAFC EQU 0 FILE COUNT
- DACS EQU 0 CUMULATIVE FILE SIZE
- DAFS EQU 0 INDIRECT FILE SIZE
- DASC EQU 50B SECURITY COUNT
- DAPA EQU 0 PARITY
- DARO EQU AROSY RUBOUTS
- DAPX EQU 0 PLEX
- DATT EQU 0 TERMINAL TYPE
- DATC EQU 0 TERMINAL CHARACTER SET
- DAIS EQU 0 TERMINAL INITIAL SUBSYSTEM
- DALD EQU 1 ACCESS LEVEL VALIDATION (LEVEL 0)
- DACV EQU 0 ACCESS CATEGORY VALIDATION
- DCPWC EQU 1 PASS WORD CONTROL
- DCTPC EQU 0 TERMINAL PRIVILEGED COMMAND SET
- DCLPF EQU 1 WRITE TO LARGE PERMANENT FILES
- DCSPF EQU 1 WRITE TO SHORT PERMANENT FILES
- DCASF EQU 0 ACCESS SYSTEM FILES
- DCSOJ EQU 0 SYSTEM ORIGIN PRIVILEGES IN DEBUG MODE
- DCAND EQU 0 ASSIGN NON-ALLOCATABLE EQUIPMENT
- DCCNR EQU 1 USE SYSTEM WITHOUT USER PROFILE VALIDATION
- DCSRP EQU 0 MOUNT REMOVABLE DEVICES
- DCSTP EQU 0 ALLOW SPECIAL TRANSACTION PRIVILEGES
- DCTIM EQU 0 TIME OUT
- DCUCP EQU 0 USER CONTROL POINT (UCP) PRIVILEGES
- DCSAP EQU 0 ALLOW SPECIAL ACCOUNTING PRIVILEGES
- DCBIO EQU 0 ALLOW *BATCHIO* SUBSYSTEM PRIVILEGES
- DCPRT EQU 0 ALLOW EXTENDED MEMORY *PROTECT* PRIVILEGES
- DCNVE EQU 0 ALLOW NVE SUBSYSTEM PRIVILEGES
- DINAP EQU 0 INSTALLATION APPLICATION PERMISSIONS
- DAPRP EQU 0 APPLICATION RESERVED PERMISSIONS
- DCPLK EQU 0 TRANSFER PERMANENT FILES BETWEEN HOSTS
- DCQLK EQU 0 TRANSFER QUEUED FILES BETWEEN HOSTS
- DCUST EQU 0 SPECIFY LID-S ON JOB AND *ROUTE* COMMANDS
- DCMNT EQU 0 ALLOW MAINTENANCE PRIVILEGES
- DCNOP EQU 0 ALLOW NPU OPERATOR PRIVILEGE
- DCSAF EQU 1 ALLOW SEC. *USER* COMMAND ALTERNATE FAMILY
- DCNRD EQU 1 USE NON-DEFAULT CHARGE/PROJECT
- DCOPR EQU 1 ENTER NON-RANDOMIZED PASSWORD
- DCLTD EQU 0 MAY SPECIFY PF RESIDENCE *LOCKED TO DISK*
- DCOPI EQU 1 USER CAN OMIT PERSONAL IDENTIFICATION
- DCACA EQU 1 ALLOW CONCURRENT ACCESS
- DCPAM EQU 0 DISALLOW PRIVILEGED ANALYST OPERATIONS
- DCSAU EQU 1 ALLOW SEC. *USER* COMMAND ALTERNATE USER
- DCRAU EQU 1 ALLOW ROUTE WITH *USER* COMMAND ALT. USER
- DCRAF EQU 1 ALLOW ROUTE WITH *USER* COMMAND ALT. FAM.
- RESERVED FOR INSTALLATION (BIT 48)
- RESERVED FOR INSTALLATION (BIT 49)
- RESERVED FOR INSTALLATION (BIT 50)
- RESERVED FOR INSTALLATION (BIT 51)
- RESERVED FOR INSTALLATION (BIT 52)
- RESERVED FOR INSTALLATION (BIT 53)
- RESERVED FOR INSTALLATION (BIT 54)
- RESERVED FOR INSTALLATION (BIT 55)
- RESERVED FOR INSTALLATION (BIT 56)
- RESERVED FOR INSTALLATION (BIT 57)
- RESERVED FOR INSTALLATION (BIT 58)
- RESERVED FOR INSTALLATION (BIT 59)
- DABTM EQU 0 CLEAR SHELL PROGRAM IF ABORT
- DLFID EQU 0 SHELL PROGRAM LOCAL FILE
- DGLID EQU 0 SHELL PROGRAM GLOBAL LIBRARY
- DSLID EQU 1 SHELL PROGARM SYSTEM LIBRARY
- DTCSM EQU 0 MONITOR COMMANDS FROM TERMINAL
- DBCSM EQU 1 MONITOR COMMANDS OUTSIDE CCL LOOP
- DCCLM EQU 0 MONITOR COMMANDS INSIDE CCL LOOP
- DCPSA EQU 0 SECURITY ADMINISTRATOR PRIVILEGES
- DCOLD EQU 0 EXECUTE ON-LINE DIAGNOSTICS
- DCPWX EQU 0 ASSIGN USER PASSWORD EXPIRATION DATE
- DCFPX EQU 0 ASSIGN PF PASSWORD/PERMIT EXPIRATION DATE
- DCLJL EQU 0 LOWER JOB ACCESS LEVEL
- DCLFL EQU 0 LOWER FILE ACCESS LEVEL
- DCWLF EQU 0 WRITE TO A LOWER LEVEL FILE
- DCULT EQU 0 WRITE UNLABELED MAGNETIC TAPES
- DTXSC EQU 1RT INTERACTIVE USER DEFAULT SERVICE CLASS
- DRBSC EQU 1RR REMOTE BATCH USER DEFAULT SERVICE CLASS
- DBCSC EQU 1RB BATCH USER DEFAULT SERVICE CLASS
- DSCVM EQU BCMK+RBMK+TSMK SERVICE CLASS VALIDATION MASK
- ****
- TODV SPACE 4,10
- ** TODV - TABLE OF DEFAULT VALUES FOR USER RECORD BLOCK.
- TODV BSSZ ARBS
- ORG TODV+APRN
- VFD 42/0 USER PROLOGUE FILE NAME
- VFD 6/DASP SYSTEM PROLOGUE FILE INDEX
- VFD 6/DAPAL APPLICATION ACCESS LEVEL
- VFD 5/0 RESERVED
- VFD 1/0 ALTERNATE USER PROLOGUE INFO PRESENT
- ORG TODV+ASHN
- VFD 42/0 SHELL PROGRAM NAME
- VFD 11/0 RESERVED
- VFD 1/DABTM CLEAR SHELL PROGRAM IF ABORT
- VFD 1/DLFID LOCAL LOAD OF SHELL PROGRAM
- VFD 1/DGLID GLOBAL LIBRARY SHELL PROGRAM
- VFD 1/DSLID SYSTEM LIBRARY SHELL PROGRAM
- VFD 1/DTCSM MONITOR COMMANDS FROM TERMINAL
- VFD 1/DBCSM MONITOR COMMANDS OUTSIDE CCL LOOP
- VFD 1/DCCLM MONITOR COMMANDS INSIDE CCL LOOP
- ORG TODV+ASVW
- VFD 1/DCPSA SECURITY ADMINISTRATOR PRIVILEGES
- VFD 1/DCOLD EXECUTE ON-LINE DIAGNOSTICS
- VFD 1/DCPWX ASSIGN USER PASSWORD EXPIRATION DATE
- VFD 1/DCFPX ASSIGN PF PASSWORD/PERMIT EXPIRATION DATE
- VFD 1/DCLJL LOWER JOB ACCESS LEVEL
- VFD 1/DCLFL LOWER FILE ACCESS LEVEL
- VFD 1/DCWLF WRITE TO A LOWER LEVEL FILE
- VFD 1/DCULT WRITE UNLABELED MAGNETIC TAPES
- VFD 4/0 RESERVED
- VFD 4/0 RESERVED
- VFD 8/DALD ACCESS LEVEL VALIDATION
- VFD 4/0 RESERVED
- VFD 32/DACV ACCESS CATEGORY VALIDATION
- ORG TODV+AHMT
- VFD 6/0 RESERVED
- VFD 6/DAPT UNITS PLOTTED
- VFD 3/DAMT MAGNETIC TAPES
- VFD 3/DARP REMOVABLE PACKS
- VFD 3/DADB DEFERRED BATCH
- VFD 3/0 RESERVED
- VFD 6/DATL TIME LIMIT
- VFD 6/DASL SRU LIMIT
- VFD 6/DACM CM FIELD LENGTH
- VFD 6/DAEC EXTENDED MEMORY FIELD LENGTH
- VFD 6/DALP LINES PRINTED
- VFD 6/DACP CARDS PUNCHED
- ORG TODV+AHDS
- VFD 3/DADS DIRECT ACCESS FILE SIZE
- VFD 3/DAFC FILE COUNT
- VFD 3/DACS CUMULATIVE FILE SIZE
- VFD 3/DAFS INDIRECT ACCESS FILE SIZE
- VFD 6/DASC SECURITY COUNT
- VFD 18/0 RESERVED
- VFD 6/DADT DETACHED JOBS
- VFD 6/DADF MSG CALLS
- VFD 6/DACC COMMAND STATMENTS
- VFD 6/DAMS MASS STORAGE PRUS
- ORG TODV+AAWC ACCESS CONTROL
- VFD 1/0 RESERVED FOR INSTALLATION (BIT 59)
- VFD 1/0 RESERVED FOR INSTALLATION (BIT 58)
- VFD 1/0 RESERVED FOR INSTALLATION (BIT 57)
- VFD 1/0 RESERVED FOR INSTALLATION (BIT 56)
- VFD 1/0 RESERVED FOR INSTALLATION (BIT 55)
- VFD 1/0 RESERVED FOR INSTALLATION (BIT 54)
- VFD 1/0 RESERVED FOR INSTALLATION (BIT 53)
- VFD 1/0 RESERVED FOR INSTALLATION (BIT 52)
- VFD 1/0 RESERVED FOR INSTALLATION (BIT 51)
- VFD 1/0 RESERVED FOR INSTALLATION (BIT 50)
- VFD 1/0 RESERVED FOR INSTALLATION (BIT 49)
- VFD 1/0 RESERVED FOR INSTALLATION (BIT 48)
- VFD 17/0 RESERVED FOR CDC
- VFD 1/DCRAF ALLOW ROUTE WITH *USER* COMMAND ALT. FAM.
- VFD 1/DCRAU ALLOW ROUTE WITH *USER* COMMAND ALT. USER
- VFD 1/DCSAU ALLOW SEC. *USER* COMMAND ALTERNATE USER
- VFD 1/DCPAM ALLOW PRIVILEGED ANALYST OPERATIONS
- VFD 1/DCACA ALLOW CONCURRENT ACCESS
- VFD 1/DCOPI USER CAN OMIT PERSONAL IDENTIFICATION
- VFD 1/DCLTD MAY SPECIFY PF RESIDENCE *LOCKED TO DISK*
- VFD 1/DCOPR ENTER NON-RANDOMIZED PASSWORD
- VFD 1/DCNRD CHARGE NOT RESTRICTED TO DEFAULT
- VFD 1/DCSAF ALLOW SEC. *USER* COMMAND ALTERNATE FAMILY
- VFD 1/DCNOP ALLOW NPU OPERATOR PRIVILEGE
- VFD 1/DCMNT ALLOW MAINTENANCE PRIVILEGES
- VFD 1/DCNVE NVE SUBSYSTEM ACCESS
- VFD 1/DCUST SPECIFY LID-S ON JOB AND *ROUTE* COMMANDS
- VFD 1/DCQLK TRANSFER QUEUED FILES BETWEEN HOSTS
- VFD 1/DCPLK TRANSFER PERMANENT FILES BETWEEN HOSTS
- VFD 1/DCPRT ECS *PROTECT* PRIVILEGES
- VFD 1/DCBIO *BATCHIO* SUBSYSTEM PRIVILEGES
- VFD 1/DCSAP SPECIAL ACCOUNTING PRIVILEGES
- VFD 1/DCUCP USER CONTROL POINT PRIVILEGES
- VFD 1/DCTIM TERMINAL TIME OUT
- VFD 1/DCSTP SPECIAL TRANSACTION PRIVILEGES
- VFD 1/DCSRP REMOVABLE PACK COMMANDS
- VFD 1/DCCNR PROFILE VALIDATION UNNEEDED
- VFD 1/DCAND ASSIGN NON-ALLOCATABLE EQUIPMENT
- VFD 1/DCASF ACCESS SYSTEM FILES
- VFD 1/DCSOJ SPECIAL PRIVILEGES UNDER DEBUG MODE
- VFD 1/DCSPF SMALL PERMANENT FILES
- VFD 1/DCLPF LARGE PERMANENT FILES
- VFD 1/DCTPC PRIVILEGED COMMANDS
- VFD 1/DCPWC PASSWORD CHANGE
- ORG TODV+ASCV
- VFD 24/0 NOT USED
- VFD 36/DSCVM SERVICE CLASS VALIDATION MASK
- ORG TODV+ATPA
- VFD 1/DAPA PARITY
- VFD 5/DARO RUBOUTS
- VFD 1/DAPX PLEX
- VFD 5/DATT TERMINAL TYPE
- VFD 1/DATC TERMINAL CHARACTER SET
- VFD 5/DAIS INITIAL SUBSYSTEM
- VFD 42/0 CREATION DATE/MODIFICATION DATE
- ORG TODV+ASC1
- VFD 6/0 RESERVED FOR CDC
- VFD 6/DBCSC BATCH USER DEFAULT SERVICE CLASS
- VFD 6/DRBSC REMOTE BATCH USER DEFAULT SERVICE CLASS
- VFD 6/DTXSC INTERACTIVE USER DEFAULT SERVICE CLASS
- VFD 6/0 RESERVED FOR CDC
- VFD 6/0 RESERVED FOR INSTALLATIONS
- VFD 24/0 NOT USED
- ORG TODV+AAVW APPLICATION VALIDATIONS
- VFD 12/0 INITIAL APPLICATION CONTROL
- VFD 12/DINAP INSTALLATION APPLICATION PERMISSIONS
- VFD 12/0 RESERVED FOR CDC
- VFD 24/DAPRP APPLICATION PERMISSIONS
- ORG TODV+APID
- VFD 60/0 PERSONAL IDENTIFICATION PART 1
- VFD 60/0 PERSONAL IDENTIFICATION PART 2
- NOREF .DARBS
- .DARBS MAX AHMT,AHDS,ATPA,AAWC,ASHN,APRN,ASCV,ASC1,AAVW
- ERRNG ARBS-.DARBS
- ORG TODV+ARBS
- TINE SPACE 4,10
- ** TINE - TABLE OF INPUT ENTRIES. ONE WORD ENTRIES -
- *
- *T 18/ I ,18/ M ,6/ U ,6/ S ,6/ F ,6/ P
- *
- * I IDENTIFICATION TAG.
- * M MAXIMUM VALUE.
- * U UPPER BIT OF FIELD.
- * S FIELD SIZE.
- * F FIRST WORD ADDRESS OF FIELD.
- * P PROCESSOR INDEX.
- *
- * ALL ENTRIES IN THIS TABLE PRECEDING THE *RL* ENTRY WILL BE
- * SET TO THE MAXIMUM VALUE BY THE *RL* DIRECTIVE. ALL OTHER
- * ENTRIES SHOULD FOLLOW THE *RL* ENTRY.
- TINE BSS 0
- INENT PT,=77B,53,6,AHPT,PND UNITS PLOTTED
- INENT MT,=7,47,3,AHMT,PND MAGNETIC TAPES
- INENT RP,=7,44,3,AHRP,PND REMOVABLE PACKS
- INENT DB,=7,41,3,AHDB,PND DEFERRED BATCH
- INENT DT,=77B,23,6,AHDT,PND DETACHED JOBS
- INENT TL,=77B,35,6,AHTL,PND TIME LIMIT
- INENT SL,=77B,29,6,AHSL,PND SRU LIMIT
- INENT CM,=77B,23,6,AHCM,PND CM FIELD LENGTH
- INENT EC,=77B,17,6,AHEC,PND ECS FIELD LENGTH
- INENT LP,=77B,11,6,AHLP,PND LINES PRINTED
- INENT CP,=77B,5,6,AHCP,PND CARDS PUNCHED
- INENT DS,=7,59,3,AHDS,PND DIRECT ACCESS FILE SIZE
- INENT FC,=7,56,3,AHFC,PND PERMANENT FILE COUNT
- INENT CS,=7,53,3,AHCS,PND CUMULATIVE FILE SIZE
- INENT FS,=7,50,3,AHFS,PND INDIRECT FILE SIZE
- INENT DF,=77B,17,6,AHDF,PND MSG CALLS
- INENT CC,=77B,11,6,AHCC,PND COMMANDS
- INENT MS,=77B,5,6,AHMS,PND MASS STORAGE PRUS
- INENT RL,=3,0,0,0,PMX MAXIMUM RESOURCE LIMITS
- INENT PW,=7,59,42,APSW,PPW PASSWORD
- INENT XT,APXV,17,18,APSW,PTE EXPIRATION TERM
- INENT XD,=6,17,18,APSW,PED EXPIRATION DATE
- INENT PB,=7,59,42,APSW,PPW BATCH PASSWORD
- INENT PI,=7,59,42,APWI,PPW INTERACTIVE PASSWORD
- INENT EB,=14,59,42,APSW,PEP ENCRYPTED BATCH PW
- INENT EI,=14,59,42,APWI,PEP ENCRYPTED INTERACTIVE PW
- INENT XB,=6,17,18,APSW,PED BATCH PASSWORD EXPIRATION
- INENT XI,=6,17,18,APWI,PED INTERACTIVE PW EXPIRATION
- INENT XTB,APXV,17,18,APSW,PTE BATCH EXPIRATION TERM
- INENT XTI,APXV,17,18,APWI,PTE INTERACTIVE EXPIRATION
- INENT PID,=20,59,60,APID,PIW PERSONAL IDENTIFICATION
- INENT SAL,=7,47,12,ASVW,PPC SECURITY ACCESS LEVELS
- INENT SAV,=4,59,12,ASVW,PAV SECURITY ACCESS PRIVILEGES
- INENT SAC,=7,35,36,ASVW,PPC SECURITY ACCESS CATEGORIES
- INENT AB,0,59,60,0,POB ANSWERBACK CODE
- INENT SP,=77B,17,6,APRN,PND SYSTEM PROLOGUE INDEX
- INENT UP,=7,59,42,APRN,PAD USER PROLOGUE FILE NAME
- INENT AL,=17B,11,6,APRN,PND APPLICATION ACCESS LEVEL
- INENT NF,0,38,3,0,POB LOCAL FILES
- INENT OF,0,20,3,0,POB DISPOSED OUTPUT
- INENT SC,=77B,47,6,AHSC,PND SECURITY COUNT
- INENT PA,TPAI,59,1,ATPA,PEA PARITY
- INENT RO,=37B,58,5,ATRO,PND RUBOUTS
- INENT PX,TPXI,53,1,ATPX,PEA PLEX
- INENT TT,TTTI,52,5,ATTT,PEA TERMINAL TYPE
- INENT TC,TTCI,47,1,ATTC,PEA CHARACTER SET
- INENT IS,TISI,46,5,ATIS,PEA INITIAL SUBSYSTEM
- CUE$ IFEQ CUE$,2
- INENT SH,=7,59,42,ASHN,POB SHELL PROGRAM NAME
- INENT SO,=4,6,7,ASHN,POB SHELL PROGRAM OPTIONS
- CUE$ ELSE
- INENT SH,=7,59,42,ASHN,PAD SHELL PROGRAM NAME
- INENT SO,=4,6,7,ASHN,PPC SHELL PROGRAM OPTIONS
- CUE$ ENDIF
- INENT UC,=4,42,6,ASC1,PDS USER DEFAULT SERVICE CLASS
- INENT VM,=3,35,36,ASCV,PPC VALIDATION MASK
- INENT AW,=4,59,60,AAWC,PPC ACCESS WORD
- INENT AP,=7,ALAB,NNAB,AAVW,PPC APPLICATION PERMISSIONS
- INENT PN,=20,59,60,APJN,PPN PROJECT NUMBER
- INENT CN,=10,59,60,ACGN,PCN CHARGE NUMBER
- FUIW INENT FUI,=377777B,17,18,AUIN,PUI FORCE USER INDEX
- INENT DAC,=7,,,,PDA DELETE USER
- CON 0
- UIIW INENT UI,=377777B,17,18,AUIN,PUI USER INDEX
- APXV CON APXL MAXIMUM TERM VALUE
- TKDE SPACE 4,10
- ** TKDE - TABLE OF K-DISPLAY ENTRIES.
- TKDE VFD 42/0LDROP,18/-2
- VFD 42/0LEND,18/-4
- VFD 42/0LSTOP,18/-5
- VFD 42/1L+,18/-1R+
- VFD 42/1L-,18/-1R-
- VFD 42/1L(,18/-1R(
- VFD 42/1L),18/-1R)
- CON 0
- LITL DATA 10H1LIMITS FO
- USRN DATA 02LR
- FAM DATA 03LFM/
- DATA 10H
- TODT DATA 10H
- TOTM DATA 10H
- DATA 0
- SPACE 4,10
- ** *LIMITS* OUTPUT MESSAGES.
- LMMX DATA C* MAXIMUM NUMBER OF -*
- LMMT DATA 50H MAGNETIC TAPE UNITS THAT MAY BE ASSIGNED........
- DATA 0,0
- LMRP DATA 50H REMOVABLE AUXILIARY DEVICES THAT MAY BE ASSIGNED
- DATA 0,0
- LMTL DATA 50H CPU SECONDS ALLOWED FOR EACH JOB STEP...........
- DATA 0,0
- LMCM DATA 50H CENTRAL MEMORY WORDS ALLOWED/100B...............
- DATA 0,0
- LMEC DATA 50H EXTENDED MEMORY WORDS ALLOWED/1000B.............
- DATA 0,0
- LMDT DATA 50H JOBS THAT CAN BE DETACHED.......................
- DATA 0,0
- LMDB DATA 50H DEFERRED BATCH FILES............................
- DATA 0,0
- LMFC DATA 50H PERMANENT FILES ALLOWED IN YOUR CATALOG.........
- DATA 0,0
- LMCS DATA 50H PRUS AVAILABLE FOR ALL INDIRECT FILES...........
- DATA 0,0
- LMFS DATA 50H PRUS AVAILABLE FOR ANY ONE INDIRECT FILE........
- DATA 0,0
- LMDS DATA 50H PRUS AVAILABLE FOR ANY ONE DIRECT FILE..........
- DATA 0,0
- LMMS DATA 50H PRUS AVAILABLE PER JOB..........................
- DATA 0,0
- LMDF DATA 50H MESSAGES THAT MAY BE ISSUED TO THE DAYFILES.....
- DATA 0,0
- LMCC DATA 50H BATCH COMMANDS THAT MAY BE PROCESSED............
- DATA 0,0
- LMCP DATA 50H CARDS THAT MAY BE PUNCHED PER FILE..............
- DATA 0,0
- LMPT DATA 50H LINES THAT MAY BE PLOTTED PER FILE..............
- DATA 0,0
- LMLP DATA 50H LINES THAT MAY BE PRINTED PER FILE..............
- DATA 0,0
- LMSL DATA 50H SRUS ALLOWED PER JOB............................
- DATA 0,0
- LMAL DATA 50H APPLICATION ACCESS LEVEL........................
- DATA 0,0
- LMCHA DATA C* OTHER CHARACTERISTICS -*
- LMUI DATA 50H USER INDEX......................................
- DATA 0,0
- LMXB DATA 50H BATCH PASSWORD EXPIRATION DATE..................
- DATA 0,0
- LMXI DATA 50H INTERACTIVE PASSWORD EXPIRATION DATE............
- DATA 0,0
- LMCN DATA 50H DEFAULT CHARGE NUMBER ASSIGNED..................
- DATA 0,0
- LMPN DATA 50H DEFAULT PROJECT NUMBER ASSIGNED.................
- DATA 0,0
- LMSP DATA 50H SYSTEM PROLOGUE.................................
- DATA 0,0
- LMUP DATA 50H USER PROLOGUE...................................
- DATA 0,0
- LMSN DATA 50H SHELL PROGRAM THAT IS EXECUTED..................
- DATA 0,0
- LMIS DATA 50H INTERACTIVE SUBSYSTEM...........................
- DATA 0,0
- LMTC DATA 50H INTERACTIVE CHARACTER SET MODE..................
- DATA 0,0
- LMPA DATA 50H TERMINAL PARITY.................................
- DATA 0,0
- LMRO DATA 50H RUBOUT CHARACTERS REQUIRED FOR CARRIAGE RETURN..
- DATA 0,0
- LMPX DATA 50H TRANSMISSION MODE...............................
- DATA 0,0
- LMTT DATA 50H TERMINAL TYPE...................................
- DATA 0,0
- ALLW DATA C* THE FOLLOWING ARE VALID USER PERMISSIONS -*
- ALPS DATA C* CHANGE YOUR PASSWORD*
- ALPT DATA C* USE PRIVILEGED INTERACTIVE COMMANDS*
- ALDA DATA C* CREATE DIRECT ACCESS FILES*
- ALIA DATA C* CREATE INDIRECT ACCESS FILES*
- ALSY DATA C* HAVE SYSTEM ORIGIN PRIVILEGES*
- ALLF DATA C* ACCESS/CREATE LIBRARY FILES*
- ALMT DATA C* ASSIGN MAGNETIC TAPES*
- ALDC DATA C* ACCESS SYSTEM WITHOUT SUPPLYING CHARGE/PROJECT NUMB
- ,ER*
- ALAD DATA C* ACCESS OR CREATE FILES ON AUXILIARY DEVICES*
- ALTF DATA C* ACCESS TRANSACTION FUNCTIONS FOR LIBRARY UPDATES*
- ALTO DATA C* HAVE UNLIMITED TERMINAL CONNECT TIME WITHOUT TIMEOU
- ,T*
- ALCP DATA C* USE SYSTEM CONTROL POINT FACILITY*
- ALAP DATA C* HAVE SPECIAL ACCOUNTING PRIVILEGES*
- ALBP DATA C* USE BATCHIO SUBSYSTEM PRIVILEGES*
- ALPR DATA C* USE THE PROTECT COMMAND*
- ALPF DATA C* TRANSFER PERMANENT FILES BETWEEN HOSTS*
- ALQF DATA C* TRANSFER QUEUED FILES BETWEEN HOSTS*
- ALST DATA C+ SPECIFY LID-S ON JOB AND *ROUTE* COMMANDS+
- ALNV DATA C* USE THE NVE SUBSYSTEM*
- ALRT DATA C* ALLOW MAINTENANCE PRIVILEGES*
- ALNO DATA C* ALLOW NPU OPERATOR PRIVILEGE*
- ALSF DATA C* ALLOW ALTERNATE FAMILY ON SECONDARY USER COMMAND*
- ALCN DATA C* CHARGE NOT RESTRICTED TO DEFAULT*
- ALNP DATA C* DEFINE NON-RANDOMIZED LOGIN PASSWORD*
- ALLT DATA C/ ALLOW *LOCKED TO DISK* FILE RESIDENCE./
- ALPI DATA C* ACCESS SYSTEM WITHOUT SUPPLYING PERSONAL ID*
- ALCI DATA C* ALLOWED MULTIPLE CONCURRENT LOGINS*
- ALAM DATA C* ALLOW PRIVILEGED ANALYST OPERATIONS*
- ALSU DATA C* ALLOW ALTERNATE USER NAME ON SECONDARY USER COMMAND
- ,*
- ALRU DATA C* ALLOW ALTERNATE USER NAME ON ROUTED INPUT FILE USER
- , COMMAND*
- ALRF DATA C* ALLOW ALTERNATE FAMILY ON ROUTED INPUT FILE USER CO
- ,MMAND*
- RESERVED FOR INSTALLATION (BIT 48)
- RESERVED FOR INSTALLATION (BIT 49)
- RESERVED FOR INSTALLATION (BIT 50)
- RESERVED FOR INSTALLATION (BIT 51)
- RESERVED FOR INSTALLATION (BIT 52)
- RESERVED FOR INSTALLATION (BIT 53)
- RESERVED FOR INSTALLATION (BIT 54)
- RESERVED FOR INSTALLATION (BIT 55)
- RESERVED FOR INSTALLATION (BIT 56)
- RESERVED FOR INSTALLATION (BIT 57)
- RESERVED FOR INSTALLATION (BIT 58)
- RESERVED FOR INSTALLATION (BIT 59)
- APPH DATA C* THE FOLLOWING ARE VALID APPLICATIONS -*
- AIAF DATA C* INTERACTIVE FACILITY (IAF)*
- ARBF DATA C* REMOTE BATCH FACILITY (RBF)*
- ATAF DATA C* TRANSACTION FACILITY (TAF)*
- AMCS DATA C* MESSAGE CONTROL SYSTEM (MCS)*
- ATVF DATA C* TERMINAL VERIFICATION FACILITY (TVF)*
- ACS DATA C* COMMUNICATIONS SUPERVISOR (CS)*
- APLA DATA C* CYBIS TUTORIAL APPLICATION (CYBIS)*
- AITF DATA C* INTERACTIVE TRANSFER FACILITY (ITF)*
- ATLF DATA C* TIELINE FACILITY (TLF)*
- ANJF DATA C* NETWORK JOB ENTRY FACILITY (NJF)*
- ANOU DATA C* CDCNET NETWORK OPERATOR UTILITY (NETOU)*
- APSU DATA C* PRINTER SUPPORT UTILITY (PSU)*
- TAP1 DATA C* LOCAL APPLICATION 1 ("AP1")*
- TAP2 DATA C* LOCAL APPLICATION 2 ("AP2")*
- TAP3 DATA C* LOCAL APPLICATION 3 ("AP3")*
- AVIF DATA C* NOS/VE INTERACTIVE FACILITY (VEIAF)*
- ANPF DATA C* NETWORK PASSTHRU FACILITY (NPF)*
- ATCF DATA C* TERMINAL CLUSTER FACILITY (TCF)*
- TAP4 DATA C* LOCAL APPLICATION 4 ("AP4")*
- TAP5 DATA C* LOCAL APPLICATION 5 ("AP5")*
- TAP6 DATA C* LOCAL APPLICATION 6 ("AP6")*
- AATF DATA C* AUTOMATIC TAPE FACILITY (ATF)*
- RMFP DATA C* THE FOLLOWING ARE VALID SHELL PERMISSIONS -*
- RMFB DATA C* CLEAR SHELL PROCESSING IF SCREENING PROGRAM ABORT*
- RTLF DATA C* LOCAL FILE LOAD OF SHELL PROGRAM*
- RTGL DATA C* GLOBAL LIBRARY LOAD OF SHELL PROGRAM*
- RTSL DATA C* SYSTEM LIBRARY LOAD OF SHELL PROGRAM*
- RTTC DATA C* PROCESS COMMANDS FROM TERMINAL INPUT*
- RTBC DATA C* PROCESS COMMANDS OUTSIDE CCL PROCEDURE*
- RTCC DATA C* PROCESS COMMANDS INSIDE CCL PROCEDURE*
- AAPP DATA C* THE FOLLOWING ARE VALID SECURITY PERMISSIONS -*
- APLT DATA C* WRITE UNLABELED MAGNETIC TAPES*
- APLF DATA C* WRITE TO OR EXTEND A LOWER LEVEL FILE*
- APFL DATA C* LOWER (DOWNGRADE) FILE ACCESS LEVEL*
- APJL DATA C* LOWER (DOWNGRADE) JOB ACCESS LEVEL*
- APFP DATA C* ASSIGN PERMANENT FILE EXPIRATION DATE OR TERM*
- APED DATA C* ASSIGN USER PASSWORD EXPIRATION DATE OR TERM*
- APLD DATA C* EXECUTE ON-LINE DIAGNOSTICS*
- APAP DATA C* PERMITTED SECURITY ADMINISTRATOR PRIVILEGES*
- ALVA DATA C* THE FOLLOWING ARE VALID SECURITY ACCESS LEVELS -*
- ALVB DATA C* ACCESS LEVEL "ALM0"*
- ALVC DATA C* ACCESS LEVEL "ALM1"*
- ALVD DATA C* ACCESS LEVEL "ALM2"*
- ALVE DATA C* ACCESS LEVEL "ALM3"*
- ALVF DATA C* ACCESS LEVEL "ALM4"*
- ALVG DATA C* ACCESS LEVEL "ALM5"*
- ALVH DATA C* ACCESS LEVEL "ALM6"*
- ALVI DATA C* ACCESS LEVEL "ALM7"*
- VCAT DATA C* THE FOLLOWING ARE VALID SECURITY ACCESS CATEGORIES -*
- AC00 DATA C* ACCESS CATEGORY "ACM00"*
- AC01 DATA C* ACCESS CATEGORY "ACM01"*
- AC02 DATA C* ACCESS CATEGORY "ACM02"*
- AC03 DATA C* ACCESS CATEGORY "ACM03"*
- AC04 DATA C* ACCESS CATEGORY "ACM04"*
- AC05 DATA C* ACCESS CATEGORY "ACM05"*
- AC06 DATA C* ACCESS CATEGORY "ACM06"*
- AC07 DATA C* ACCESS CATEGORY "ACM07"*
- AC08 DATA C* ACCESS CATEGORY "ACM08"*
- AC09 DATA C* ACCESS CATEGORY "ACM09"*
- AC10 DATA C* ACCESS CATEGORY "ACM10"*
- AC11 DATA C* ACCESS CATEGORY "ACM11"*
- AC12 DATA C* ACCESS CATEGORY "ACM12"*
- AC13 DATA C* ACCESS CATEGORY "ACM13"*
- AC14 DATA C* ACCESS CATEGORY "ACM14"*
- AC15 DATA C* ACCESS CATEGORY "ACM15"*
- AC16 DATA C* ACCESS CATEGORY "ACM16"*
- AC17 DATA C* ACCESS CATEGORY "ACM17"*
- AC18 DATA C* ACCESS CATEGORY "ACM18"*
- AC19 DATA C* ACCESS CATEGORY "ACM19"*
- AC20 DATA C* ACCESS CATEGORY "ACM20"*
- AC21 DATA C* ACCESS CATEGORY "ACM21"*
- AC22 DATA C* ACCESS CATEGORY "ACM22"*
- AC23 DATA C* ACCESS CATEGORY "ACM23"*
- AC24 DATA C* ACCESS CATEGORY "ACM24"*
- AC25 DATA C* ACCESS CATEGORY "ACM25"*
- AC26 DATA C* ACCESS CATEGORY "ACM26"*
- AC27 DATA C* ACCESS CATEGORY "ACM27"*
- AC28 DATA C* ACCESS CATEGORY "ACM28"*
- AC29 DATA C* ACCESS CATEGORY "ACM29"*
- AC30 DATA C* ACCESS CATEGORY "ACM30"*
- AC31 DATA C* ACCESS CATEGORY "ACM31"*
- USVM DATA C* THE FOLLOWING ARE ALLOWED SERVICE CLASSES -*
- LIST G
- .SCL2 HERE
- LIST *
- USUD DATA C* THE USER DEFAULT SERVICE CLASS*
- UDBC DATA 50H FOR BATCH ORIGIN IS.............................
- DATA 0,0
- USRB DATA 50H FOR REMOTE BATCH ORIGIN IS......................
- DATA 0,0
- USTX DATA 50H FOR INTERACTIVE ORIGIN IS.......................
- DATA 0,0
- TFR SPACE 4,10
- ** TFR - TABLE TO FORMAT RECORD FOR SOURCE, K-DISPLAY, AND
- * LIMITS PROCESSING.
- TFR BSS 0
- TFEB TFRW1 APSW,18,42,14,AOC,(LJD,MWR) BATCH PASSWORD
- TFRW2 0,0,TMEB
- TFRW3
- TFEI TFRW1 APWI,18,42,14,AOC,(LJD,MWR) INTERACTIVE PASSWORD
- TFRW2 0,0,TMEI
- TFRW3
- TFXB TFRW1 APXB,0,18,0,DAT BATCH EXPIRATION
- TFRW2 LMXB,DSXB,TMXB
- TFRW3
- TFXI TFRW1 APXI,0,18,0,DAT INTERACTIVE EXPIRATION
- TFRW2 LMXI,DSXI,TMXI
- TFRW3
- TFSC TFRW1 AHSC,42,6,77B,CON SECURITY COUNT
- TFRW2 0,DSSE,TMSC
- TFRW3
- TFMT TFRW1 AHMT,45,3,7,CDD MAGNETIC TAPES
- TFRW2 LMMT,DSMT,TMMT
- TFRW3 ,,,LMMX
- TFRP TFRW1 AHRP,42,3,7,CDD REMOVABLE PACKS
- TFRW2 LMRP,DSRP,TMRP
- TFRW3
- TFTL TFRW1 AHTL,30,6,77B,CON,(DCV) TIME LIMIT
- TFRW2 LMTL,DSTL,TMTL
- TFRW3 TLI,3
- TFCM TFRW1 AHCM,18,6,77B,CON,(OCV) CENTRAL MEMORY
- TFRW2 LMCM,DSCM,TMCM
- TFRW3 CMI
- TFEC TFRW1 AHEC,12,6,77B,CON,(OCV) EXTENDED CORE STORAGE
- TFRW2 LMEC,DSEC,TMEC
- TFRW3 ECI
- TFDT TFRW1 AHDT,18,6,77B,CON,(DCV) DETACHED JOBS
- TFRW2 LMDT,DSDT,TMDT
- TFRW3 DTI
- TFDB TFRW1 AHDB,39,3,7,CDD,(DCV) DEFERRED BATCH
- TFRW2 LMDB,DSDB,TMDB
- TFRW3 DBI
- TFFC TFRW1 AHFC,54,3,7,CDD,(DCV,ZSD) NUMBER OF LOCAL FILES
- TFRW2 LMFC,DSFC,TMFC
- TFRW3 FCI
- TFFS TFRW1 AHFS,48,3,7,CDD,(DCV,ZSD) INDIRECT FILE SECTORS
- TFRW2 LMFS,DSFS,TMFS
- TFRW3 FSI
- TFDS TFRW1 AHDS,57,3,7,CDD,(DCV,ZSD) DIRECT FILE SECTORS
- TFRW2 LMDS,DSDS,TMDS
- TFRW3 DSI
- TFCS TFRW1 AHCS,51,3,7,CDD,(DCV,ZSD) CUMULATIVE SECTORS
- TFRW2 LMCS,DSCS,TMCS
- TFRW3 CSI
- TFMS TFRW1 AHMS,0,6,77B,CON,(DCV) MASS STORAGE
- TFRW2 LMMS,DSMS,TMMS
- TFRW3 MSI
- TFDF TFRW1 AHDF,12,6,77B,CON,(DCV) DAYFILE MESSAGES
- TFRW2 LMDF,DSDF,TMDF
- TFRW3 DFI
- TFCC TFRW1 AHCC,6,6,77B,CON,(DCV) COMMANDS
- TFRW2 LMCC,DSCC,TMCC
- TFRW3 CCI
- TFCP TFRW1 AHCP,0,6,77B,CON,(DCV) CARDS PUNCHED
- TFRW2 LMCP,DSCP,TMCP
- TFRW3 CPI
- TFPT TFRW1 AHMT,48,6,77B,CON,(DCV) PLOTTED LINES
- TFRW2 LMPT,DSPT,TMPT
- TFRW3 PTI
- TFLP TFRW1 AHLP,6,6,77B,CON,(DCV) LINES PRINTED
- TFRW2 LMLP,DSLP,TMLP
- TFRW3 LPI
- TFSL TFRW1 AHSL,24,6,73B,CON,(DCV)
- TFRW2 LMSL,DSSL,TMSL
- TFRW3 SLI,3
- TFUI TFRW1 AUIN,0,18,0,CON USER INDEX
- TFRW2 LMUI,DSUI,TMUI
- TFRW3 ,,,LMCHA
- TFDC TFRW1 ACGN,0,60,0,SFN,(LJD,RJA) DEFAULT CHARGE
- TFRW2 LMCN,DSCN,TMCN
- TFRW3
- TFDP1 TFRW1 APJN,0,60,0,SFN,(LJD,RJA) DEFAULT PROJECT (1)
- TFRW2 LMPN,DSPN,TMPN
- TFRW3
- TFDP2 TFRW1 APJ1,0,60,0,SFN,(CTE,LJD,RJA) DEFAULT PROJECT (2)
- TFRW2
- TFRW3
- TFUD1 TFRW1 APID,0,60,0,SFN,(LJD) PERSONAL ID (1)
- TFRW2 0,DSUD,TMUD
- TFRW3
- TFUD2 TFRW1 API2,0,60,0,SFN,(CTE,LJD) PERSONAL ID (2)
- TFRW2
- TFRW3
- TFSP TFRW1 APRN,12,6,0,CON SYSTEM PROLOGUE INDEX
- TFRW2 LMSP,DSSP,TMSP
- TFRW3
- TFUP TFRW1 APRN,18,42,0,SFN,(LJD,RJA) USER PROLOGUE FILE
- TFRW2 LMUP,DSUP,TMUP
- TFRW3
- TFAL TFRW1 APRN,6,6,17B,CON APPLICATION LEVEL
- TFRW2 LMAL,DSPL,TMAL
- TFRW3
- TFSH TFRW1 ASHN,18,42,0,SFN,(LJD,RJA) SHELL PROGRAM NAME
- TFRW2 LMSN,DSSN,TMSH
- TFRW3
- TFSO TFRW1 ASHN,0,7,0,CON SHELL PROGRAM OPTIONS
- TFRW2 0,DSSH,0
- TFRW3
- TFIS TFRW1 ATIS,42,5,0,SFN,(LJD,RJA) INITIAL SUBSYSTEM
- TFRW2 LMIS,DSIS,TMIS
- TFRW3 ,,TISI
- TFTC TFRW1 ATTC,47,1,0,SFN,(LJD,RJA) CHARACTER SET
- TFRW2 LMTC,DSTC,TMTC
- TFRW3 ,,TTCI
- TFPA TFRW1 ATPA,59,1,0,SFN,(LJD,RJA) TERMINAL PARITY
- TFRW2 LMPA,DSPA,TMPA
- TFRW3 ,,TPAI
- TFRO TFRW1 ATRO,54,5,AROSY,CDD,(USD) RUBOUT CHARACTERS
- TFRW2 LMRO,DSRO,TMRO
- TFRW3
- TFPX TFRW1 ATPX,53,1,0,SFN,(LJD,RJA) TRANSMISSION MODE
- TFRW2 LMPX,DSPX,TMPX
- TFRW3 ,,TPXI
- TFTT TFRW1 ATTT,48,5,0,SFN,(LJD,RJA) TERMINAL TYPE
- TFRW2 LMTT,DSTT,TMTT
- TFRW3 ,,TTTI
- TFAV TFRW1 ASAV,48,12,0,CON SECURITY PRIVILEGES
- TFRW2 0,DSAV,9
- TFRW3
- TFLV TFRW1 ASVW,36,12,0,CON ACCESS LEVELS
- TFRW2 0,DSLV,0
- TFRW3
- TFAC TFRW1 ASAC,0,36,12,AOC,(LJD,MWR) ACCESS CATEGORIES
- TFRW2 0,DSAC,0
- TFRW3
- TFVM TFRW1 ASCV,0,36,0,CON SERVICE CLASS MASK
- TFRW2 0,DSVM,0
- TFRW3
- TFUC TFRW1 ASC1,24,30,0,CSC DEFAULT SERVICE CLASS
- TFRW2 0,DSUC,TMUC
- TFRW3
- TFWC TFRW1 AAWC,0,60,20,AOC,(LJD,MWR) ACCESS WORD
- TFRW2 0,DSAW,0
- TFRW3
- CON 0 END OF TABLE
- ALP SPACE 4,10
- ** TABLE OF ALLOWED PERMISSIONS.
- *
- * NOTE -
- * THIS TABLE IS DEPENDENT ON THE ORDER OF *TAWI*.
- ALP BSS 0
- DEFAW CPWC,ALPS
- DEFAW CTPC,ALPT
- DEFAW CLPF,ALDA
- DEFAW CSPF,ALIA
- DEFAW CSOJ,ALSY
- DEFAW CASF,ALLF
- DEFAW CAND,ALMT
- DEFAW CCNR,ALDC
- DEFAW CSRP,ALAD
- DEFAW CSTP,ALTF
- DEFAW CTIM,ALTO
- DEFAW CUCP,ALCP
- DEFAW CSAP,ALAP
- DEFAW CBIO,ALBP
- DEFAW CPRT,ALPR
- DEFAW CPLK,ALPF
- DEFAW CQLK,ALQF
- DEFAW CUST,ALST
- DEFAW CNVE,ALNV
- DEFAW CMNT,ALRT
- DEFAW CNOP,ALNO
- DEFAW CSAF,ALSF
- DEFAW CNRD,ALCN
- DEFAW COPR,ALNP
- DEFAW CLTD,ALLT
- DEFAW COPI,ALPI
- DEFAW CACA,ALCI
- DEFAW CPAM,ALAM
- DEFAW CSAU,ALSU
- DEFAW CRAU,ALRU
- DEFAW CRAF,ALRF
- * DEFINE INSTALLATION PERMISSIONS.
- CON -1 RESERVED FOR INSTALLATION (BIT 48)
- CON -1 RESERVED FOR INSTALLATION (BIT 49)
- CON -1 RESERVED FOR INSTALLATION (BIT 50)
- CON -1 RESERVED FOR INSTALLATION (BIT 51)
- CON -1 RESERVED FOR INSTALLATION (BIT 52)
- CON -1 RESERVED FOR INSTALLATION (BIT 53)
- CON -1 RESERVED FOR INSTALLATION (BIT 54)
- CON -1 RESERVED FOR INSTALLATION (BIT 55)
- CON -1 RESERVED FOR INSTALLATION (BIT 56)
- CON -1 RESERVED FOR INSTALLATION (BIT 57)
- CON -1 RESERVED FOR INSTALLATION (BIT 58)
- CON -1 RESERVED FOR INSTALLATION (BIT 59)
- DATA 0 END OF TABLE
- ALPL EQU 60D FORCE LENGTH FOR *APLW* MACRO
- SPACE 4,10
- ** TABLE OF REMOTE TERMINAL ACCESS PERMISSIONS.
- *
- * NOTE -
- * THIS TABLE IS DEPENDENT ON THE ORDER OF *TRTP*.
- ASP BSS 0
- DEFAW CCLM,RTCC
- DEFAW BCSM,RTBC
- DEFAW TCSM,RTTC
- DEFAW SLID,RTSL
- DEFAW GLID,RTGL
- DEFAW LFID,RTLF
- DEFAW ABTM,RMFB
- ASPL EQU *-ASP TABLE LENGTH
- DATA 0 END OF TABLE
- APP SPACE 4,10
- ** TABLE OF APPLICATION GRANTED.
- *
- * NOTE -
- * THIS TABLE IS DEPENDENT ON THE ORDER OF *TNAV*.
- APP BSS 0
- DEFAW IAF,AIAF
- DEFAW RBF,ARBF
- DEFAW TAF,ATAF
- DEFAW MCS,AMCS
- DEFAW TVF,ATVF
- DEFAW CS,ACS
- DEFAW CYBIS,APLA
- DEFAW ITF,AITF
- DEFAW TLF,ATLF
- DEFAW NJF,ANJF
- DEFAW NETOU,ANOU
- DEFAW PSU,APSU
- DEFAW "AP1",TAP1
- DEFAW "AP2",TAP2
- DEFAW "AP3",TAP3
- DEFAW VEIAF,AVIF
- DEFAW NPF,ANPF
- DEFAW TCF,ATCF
- DEFAW "AP4",TAP4
- DEFAW "AP5",TAP5
- DEFAW "AP6",TAP6
- DEFAW ATF,AATF
- APPL EQU *-APP TABLE LENGTH
- DATA 0 END OF TABLE
- ERRNZ APPL-TNAVL TABLE LENGTHS DO NOT AGREE
- SCL SPACE 4,10
- ** TABLE OF SERVICE CLASS TYPES.
- *
- * NOTE -
- * THIS TABLE IS DEPENDENT ON THE ORDER OF *TSVM*.
- SCL BSS 0
- LOC 0
- DATA -1 NOT USED
- LIST G
- .SCL3 HERE
- LIST *
- LOC *O
- SCLL EQU *-SCL TABLE LENGTH
- DATA 0 END OF TABLE
- APV SPACE 4,10
- ** TABLE OF SECURITY PRIVILEGE VALIDATION BITS.
- *
- * NOTE -
- * THIS TABLE IS DEPENDENT ON THE ORDER OF *TAPV*
- APV BSS 0
- DEFAW CULT,APLT
- DEFAW CWLF,APLF
- DEFAW CLFL,APFL
- DEFAW CLJL,APJL
- DEFAW CFPX,APFP
- DEFAW CPWX,APED
- DEFAW COLD,APLD
- DEFAW CSAP,APAP
- APVL EQU *-APV TABLE LENGTH
- CON 0 END OF TABLE
- ALV SPACE 4,10
- ** TABLE OF SECURITY ACCESS LEVEL VALIDATIONS.
- *
- * NOTE -
- * THIS TABLE IS DEPENDENT ON THE ORDER OF *TALV*.
- ALV BSS 0
- DEFAW "ALM0",ALVB
- DEFAW "ALM1",ALVC
- DEFAW "ALM2",ALVD
- DEFAW "ALM3",ALVE
- DEFAW "ALM4",ALVF
- DEFAW "ALM5",ALVG
- DEFAW "ALM6",ALVH
- DEFAW "ALM7",ALVI
- ALVL EQU *-ALV TABLE LENGTH
- CON 0 END OF TABLE
- CAT SPACE 4,10
- ** TABLE OF ACCESS CATEGORY VALIDATIONS.
- *
- * NOTE -
- * THIS TABLE IS DEPENDENT ON THE ORDER OF *TACC*.
- CAT BSS 0
- DEFAW "ACM00",AC00
- DEFAW "ACM01",AC01
- DEFAW "ACM02",AC02
- DEFAW "ACM03",AC03
- DEFAW "ACM04",AC04
- DEFAW "ACM05",AC05
- DEFAW "ACM06",AC06
- DEFAW "ACM07",AC07
- DEFAW "ACM08",AC08
- DEFAW "ACM09",AC09
- DEFAW "ACM10",AC10
- DEFAW "ACM11",AC11
- DEFAW "ACM12",AC12
- DEFAW "ACM13",AC13
- DEFAW "ACM14",AC14
- DEFAW "ACM15",AC15
- DEFAW "ACM16",AC16
- DEFAW "ACM17",AC17
- DEFAW "ACM18",AC18
- DEFAW "ACM19",AC19
- DEFAW "ACM20",AC20
- DEFAW "ACM21",AC21
- DEFAW "ACM22",AC22
- DEFAW "ACM23",AC23
- DEFAW "ACM24",AC24
- DEFAW "ACM25",AC25
- DEFAW "ACM26",AC26
- DEFAW "ACM27",AC27
- DEFAW "ACM28",AC28
- DEFAW "ACM29",AC29
- DEFAW "ACM30",AC30
- DEFAW "ACM31",AC31
- CATL EQU *-CAT TABLE LENGTH
- CON 0 END OF TABLE
- TMBS SPACE 4,10
- ** TMBS - TABLE FOR MAP BACK TO SOURCE.
- TMBS BSS 0
- DIS ,*/USERNUM ,*
- TMUI DIS ,* UI = ,*
- TMMT DIS ,* MT = ,*
- TMRP DIS ,* RP = ,*
- TMTL DIS ,* TL = ,*
- TMCM DIS ,* CM = ,*
- TMDB DIS ,* DB = ,*
- TMFC DIS ,* FC = ,*
- TMCS DIS ,* CS = ,*
- TMFS DIS ,* FS = ,*
- TMPA DIS ,* PA = ,*
- TMRO DIS ,* RO = ,*
- TMPX DIS ,* PX = ,*
- TMTT DIS ,* TT = ,*
- TMTC DIS ,* TC = ,*
- TMIS DIS ,* IS = ,*
- TMMS DIS ,* MS = ,*
- TMDF DIS ,* DF = ,*
- TMCC DIS ,* CC = ,*
- TMCP DIS ,* CP = ,*
- TMLP DIS ,* LP = ,*
- TMPT DIS ,* PT = ,*
- TMEC DIS ,* EC = ,*
- TMSL DIS ,* SL = ,*
- TMCN DIS ,* CN = ,*
- TMPN DIS ,* PN = ,*
- TMUD DIS ,* PID = ,*
- TMDS DIS ,* DS = ,*
- TMSC DIS ,* SC = ,*
- TMDT DIS ,* DT = ,*
- TMSP DIS ,* SP = ,*
- TMUP DIS ,* UP = ,*
- TMSH DIS ,* SH = ,*
- TMAL DIS ,* AL = ,*
- TMEB DIS ,* EB = ,*
- TMXB DIS ,* XB = ,*
- TMEI DIS ,* EI = ,*
- TMXI DIS ,* XI = ,*
- TMBSL EQU *-TMBS TABLE LENGTH
- TMUC DIS ,* UC = ,*
- TMAW DIS ,* AW = NUL ,*
- TMAP DIS ,* AP = NUL ,*
- TMSO DIS ,* SO = NUL ,*
- TMLV DIS ,* SAL = NUL ,*
- TMAV DIS ,* SAV = NUL ,*
- TMAC DIS ,* SAC = NUL ,*
- TMVM DIS ,* VM = NUL ,*
- TITLE MAIN ROUTINES.
- MOD SPACE 4,10
- ** MOD - PROCESS NORMAL CALL.
- MOD SA3 OPTION CHECK COMMAND OPTIONS
- SA4 OP
- ZR X3,MOD2 IF ALL OPTIONS PROCESSED
- SB2 X4+
- + LX3 -1
- SB2 B2+B1
- PL X3,* IF OPTION NOT REQUESTED
- SX6 X3 CLEAR OPTION PROCESSED
- SA2 B2+TOFP SET PROCESSOR
- SA6 A3
- SX7 B2
- SB7 X2
- SA7 A4 SET CURRENT OPTION
- BX7 X7-X7 CLEAR MANAGED TABLE INFORMATION
- SB2 RA3+1-L.TAB0
- SA7 L.TAB0
- MOD0 SA7 A7+B1
- SB2 B2-B1
- NZ B2,MOD0 IF MORE WORDS TO CLEAR
- SX3 X2-OVLA CHECK TABLE ENTRY
- SX2 DMSE * SYSTEM ERROR.*
- NG B7,ABT IF INCORRECT PROCESSOR ADDRESS
- JP B7 EXECUTE PROCESSOR
- MOD1 RJ SUI SAVE ASSIGNED USER INDICES
- MOD2 SA3 EMSF CHECK ERROR FLAG
- SX2 DMDE * DIRECTIVE ERRORS.*
- ZR X3,MOD3 IF NO ERRORS
- SA1 DB CHECK DEBUG FLAG
- ZR X1,ABT IF NOT SET
- BX6 X2 SET MESSAGE
- SA6 MODA
- MOD3 SA3 RAPF CHECK SYSTEM FILE ATTACHED
- ZR X3,MOD4 IF NOT ATTACHED
- RETURN U
- RECALL N
- RETURN P
- MOD4 SA1 GENF
- ZR X1,MOD4.1 IF NOT *GENVAL*
- RETURN P
- RETURN U
- MOD4.1 SA1 MODA
- ZR X1,MOD5 IF NO MESSAGE
- MESSAGE X1,3 ISSUE COMPLETION MESSAGE
- SA3 EMSF
- NZ X3,MOD5 IF DIRECTIVE ERRORS
- SA1 WMSF
- ZR X1,MOD5 IF NO WARNING MESSAGES
- MESSAGE DMCO,3 * CHECK OUTPUT FOR WARNING MESSAGES.*
- MOD5 RJ COB CHECK OUTPUT BUFFER
- RJ CAF CHECK ALTERNATE FAMILY
- ENDRUN
- MODA CON DMUC ADDRESS OF COMPLETION MESSAGE
- TOFP SPACE 4,10
- ** TOFP - TABLE OF FUNCTION PROCESSORS.
- TOFP INDEX CON,LOPT+1,( * )
- INDEX ,KOPT,( PUD ) K-DISPLAY
- INDEX ,COPT,( PID ) CREATE
- INDEX ,UOPT,( PUD ) UPDATE
- INDEX ,ROPT,( PRF ) REFORMAT
- INDEX ,SOPT,( PCS ) CHANGE TO SOURCE
- INDEX ,IOPT,( PIO ) INQUIRE
- INDEX ,ZOPT,( PUD ) UPDATE (WITH COMMAND DIRECTIVES)
- INDEX ,LOPT,( PLO ) LIST
- EJECT
- CHV SPACE 4,10
- ** CHV - CHANGE VALIDATION.
- CHV RECALL P
- RECALL N
- SA1 P SWITCH FETS
- BX6 X1
- SX0 A1
- SA6 N
- SX1 AN SET PRIMARY BLOCK
- FUNC SPBT
- SX2 DMSE * SYSTEM ERROR.*
- NZ X6,ABT IF ERROR
- BX6 X4
- NZ X4,ABT IF NOT FOUND
- SA6 RDBA ENTRY FOUND FLAG
- RJ RDB SET DATA BLOCK
- NZ X1,ABT IF NO DATA BLOCK
- * PROCESS COMMAND PARAMETERS.
- CHV1 SA3 CHVA GET TABLE INDEX
- SB4 X3
- SB7 TCPVL SET TABLE LIMIT
- CHV2 EQ B4,B7,CHV3 IF END OF PARAMETERS
- SA5 TCPV+B4
- SA1 A5+1
- SB4 B4+TCPVE INCREMENT TABLE INDEX
- ZR X5,CHV2 IF NOT SELECTED
- SX6 B4 SAVE TABLE INDEX
- SA6 A3
- SB7 X1
- RJ ICE EXECUTE PROCESSOR
- EQ CHV1 PROCESS NEXT PARAMETER
- CHV3 SX7 B1+
- SA7 UUFG FLAG USER NAME UPDATE
- RJ FFA
- EQ PUD2 COMPLETE CHANGE
- CHVA CON 0 TABLE INDEX
- TCPV SPACE 4,10
- ** TCPV - TABLE OF COMMAND PARAMETER VALUES.
- *
- * EACH ENTRY IS TWO WORDS IN LENGTH. FORMAT -
- * 60/ VALUE ENTERED FOR DIRECTIVE
- * 60/ PROCESSOR ADDRESS
- TCPV BSS 0
- CHVB CON 0 *UC* PARAMETER
- CON ADS ASSEMBLE *UC* PARAMETER
- TCPVE EQU *-TCPV ENTRY LENGTH
- TCPVL EQU *-TCPV TABLE LENGTH
- PSW SPACE 4,10
- ** PSW - CHANGE PASSWORD.
- PSW RECALL P
- RECALL N
- SA1 P SWITCH FETS
- BX6 X1
- SX0 A1
- SA6 N
- SX1 AN SET PRIMARY BLOCK
- FUNC SPBT
- SX2 DMSE * SYSTEM ERROR.*
- NZ X6,ABT IF ERROR
- BX6 X4
- NZ X4,ABT IF NO HIT
- SA6 RDBA ENTRY FOUND FLAG
- RJ RDB SET DATA BLOCK
- NZ X1,ABT IF NO DATA BLOCK
- SA1 OLDPW
- MX0 42
- SX2 X1
- NZ X2,PSW1 IF NO PASSWORD CHANGE
- SA3 PWIX GET PASSWORD INDEX INTO DATA BLOCK
- SA4 NEWPW
- NZ X3,PSW0 IF CHANGING ONLY ONE PASSWORD
- SA3 TANB+APWI CHECK OLD PASSWORDS
- SA2 TANB+APSW
- BX3 X3-X2
- BX3 X0*X3
- SX2 DMCP * CANNOT CHANGE BOTH PASSWORDS AT ONCE.*
- NZ X3,ABT IF OLD PASSWORDS NOT IDENTICAL
- SA3 TANB+APWI CHANGE INTERACTIVE PASSWORD
- BX7 -X0*X3
- BX7 X7+X4
- SA7 A3+
- SX3 APSW CHANGE BATCH PASSWORD
- PSW0 SA3 TANB+X3
- BX7 -X0*X3
- BX3 X0*X3
- BX3 X1-X3
- BX7 X7+X4
- SX2 DMIP * INCORRECT PASSWORD.*
- SA7 A3 SWITCH PASSWORDS
- NZ X3,ABT IF OLD PASSWORD INCORRECT
- MESSAGE AMPW,5,R PASSWORD CHANGE MESSAGE TO ACCOUNT FILE
- PSW1 SA1 XDATE
- BX6 X1
- SA4 TANB+ASVW
- PL X1,PSW2 IF EXPIRATION DATE SPECIFIED
- NG X4,PSW4 IF SECURITY ADMINISTRATOR
- SA2 PD
- SX1 APXT-7777B
- SX6 B0+
- ZR X1,PSW3 IF NON-EXPIRING DEFAULT EXPIRATION TERM
- SX1 APXT DEFAULT EXPIRATION TERM
- RJ ADT ADD EXPIRATION TERM TO CURRENT DATE
- EQ PSW3 ENTER NEW EXPIRATION DATE
- PSW2 SX2 DMSA * SEC ADMIN XD/XT CHANGE NOT VALID.*
- NG X4,ABT IF SECURITY ADMINISTRATOR
- SX2 DMPE * PASSWORD EXPIRATION CHANGE INCORRECT.*
- LX4 59-57
- PL X4,ABT IF EXPIRATION DATE CHANGE NOT ALLOWED
- PSW3 SA3 PWIX GET PASSWORD INDEX INTO DATA BLOCK
- NZ X3,PSW3.1 IF ONLY CHANGING ONE EXPIRATION DATE
- SA3 TANB+APXI CHANGE INTERACTIVE EXPIRATION DATE
- BX3 X0*X3
- BX7 X3+X6 ENTER NEW EXPIRATION DATE
- SA7 A3
- SX3 APXB SET TO CHANGE BATCH EXPIRATION DATE
- PSW3.1 SA3 TANB+X3
- BX3 X0*X3
- BX7 X3+X6 ENTER NEW EXPIRATION DATE
- SA7 A3
- SA1 XDATE
- NG X1,PSW4 IF EXPIRATION DATE NOT SPECIFIED
- MESSAGE AMPX,5,R EXPIRATION DATE CHANGE MESSAGE
- PSW4 SX7 B1+ INDICATE NO SERVICE CLASS VALIDATION
- SA7 CHFG
- SA7 UUFG FLAG USER NAME UPDATE
- RJ FFA FINISH USER UPDATE
- EQ PUD2 COMPLETE CHANGE
- OLDPW CON 1 OLD PASSWORD (ENCRYPTED)
- NEWPW CON 1 NEW PASSWORD (ENCRYPTED)
- XDATE CON -1 EXPIRATION DATE (PACKED)
- PWIX CON APSW PASSWORD INDEX INTO DATA BLOCK
- UPR EJECT
- UPR SPACE 4,10
- ** UPR - PROCESS USER PROLOGUE FILE NAME.
- UPR RECALL P
- RECALL N
- SA1 P SWITCH FETS
- BX6 X1
- SX0 A1
- SA6 N
- SX1 AN SET PRIMARY BLOCK
- FUNC SPBT
- SX2 DMSE * SYSTEM ERROR.*
- NZ X6,ABT IF ERROR
- BX6 X4
- NZ X4,ABT IF NO HIT
- SA6 RDBA ENTRY FOUND FLAG
- RJ RDB SET DATA BLOCK
- NZ X1,ABT IF NO DATA BLOCK
- SA1 UPFN GET USER PROLOGUE FILE NAME
- SA3 TANB+APRN
- MX0 42
- BX6 X0*X1
- BX3 -X0*X3
- BX7 X3+X6 MERGE *UP* AND *SP*
- SA7 A3
- MX0 -6
- UPR1 LX6 6 CHECK FILE NAME FOR INCORRECT CHARACTER
- BX3 -X0*X6
- ZR X3,UPR2 IF FILE NAME CHECK COMPLETE
- SX3 X3-1R+
- NG X3,UPR1 IF VALID CHARACTER
- SX2 DMMA * ERROR IN MODVAL ARGUMENTS.*
- EQ ABT ABORT
- UPR2 SX7 B1+ INDICATE NO SERVICE CLASS VALIDATION
- SA7 CHFG
- SA7 UUFG FLAG USER NAME UPDATE
- RJ FFA FINISH USER UPDATE
- EQ PUD2 COMPLETE CHANGE
- TITLE PROCESS COMMAND OPTIONS.
- PID SPACE 4,15
- ** PID - PROCESS INPUT DATA FOR CREATE. (OP = C).
- *
- * EXIT 1. TO MAIN ROUTINE IF NO OVERFLOW.
- * 2. TO UPDATE PROCESSOR IF TABLE OVERFLOW.
- *
- * USES X - 0, 1, 2, 5, 6, 7.
- * A - 1, 2, 6, 7.
- *
- * CALLS DIP, WDB.
- *
- * MACROS FUNC, SETFS.
- PID BSS 0 ENTRY
- SX6 B1+ SET CREATE MODE FOR WRITE
- SA6 CZ
- SA6 FFAD INDICATE CREATION RUN
- RJ DIP DIRECTIVE INPUT PROCESSOR
- RJ WDB WRITE UNFILLED DATA BLOCK
- SX5 N BUILD VALIDUS FILE DIRECTORIES
- SA1 RAND
- BX0 X1
- LX0 60-24
- FUNC BLDT
- SETFS N,0
- SA2 TV CHECK FOR TABLE OVERFLOW
- SX6 DMCC * CREATION COMPLETE.*
- SA6 MODA
- ZR X2,MOD1 IF NONE
- MX7 0 CLEAR OVERFLOW
- SA7 A2
- SA7 CZ CLEAR CREATE MODE FOR WRITE
- EQ PUD1 ENTER UPDATE MODE
- PUD SPACE 4,20
- ** PUD - PROCESS UPDATE DATA. (OP = U, K, OR Z).
- *
- * EXIT TO MAIN ROUTINE FOR NEXT OPTION.
- * NOTE - IF MANY USER NAMES ARE CREATED IN THIS MODE,
- * LEVEL-1 LINKAGE CAN BE EXTENSIVE AND THEREFORE
- * MAKE THIS RUN AND EVERY OTHER SEARCH OF THE
- * FILE MODIFIED VERY INEFFICIENT. THIS MODE CAN
- * BE ENTERED FROM A *CREATE* RUN IF TABLE
- * OVERFLOW OCCURS IN WHICH CASE EXTENSIVE LEVEL-1
- * LINKAGE IS QUITE LIKELY.
- * * ANY FILE WHERE LEVEL-1 LINKAGE HAS OCCURED
- * SHOULD BE REFORMATTED TO ATTEMPT REMOVAL OF THE
- * LINKAGE. *
- *
- * USES X - 0, 1, 2, 5, 6, 7.
- * A - 1, 2, 6, 7.
- * B - 2.
- *
- * CALLS DIP, SUI.
- *
- * MACROS FUNC, NORERUN, RECALL.
- PUD BSS 0 ENTRY
- RECALL P
- RECALL N
- SA1 N SET FILES FOR UPDATE OPTION
- SA2 P
- BX6 X1
- LX7 X2
- SA6 PUDA
- SA7 A1+
- SA2 OP CHECK OPTION
- ZR X2,PUD1 IF K-DISPLAY
- NORERUN PREVENT JOB RERUN
- PUD1 SX6 B1+ SET UPDATE INDICATORS
- SA6 UF
- SA6 ABTA
- RJ DIP DIRECTIVE INPUT PROCESSOR
- PUD2 SX5 N UPDATE VALIDUS DIRECTORY
- SA1 RAND
- SB2 60-24
- LX6 X1,B2
- SX0 X5
- FUNC UDDT
- RJ SUI SAVE USER INDICES
- SA1 OP
- NZ X1,PUD3 IF NOT K-DISPLAY
- ERRNZ KOPT CODE DEPENDS ON VALUE OF K-DISPLAY OPTION
- CONSOLE X1 CLEAR K-DISPLAY
- PUD3 RECALL N
- SA1 PUDA RESTORE FET NAMES
- ZR X1,MOD EXIT IF NO SWAP MADE
- BX6 X1
- SA6 N
- EQ MOD EXIT TO MAIN ROUTINE
- PUDA CON 0 *N* FILE NAME HOLD
- PRF SPACE 4,10
- ** PRF - PROCESS REFORMAT. (OP = R).
- *
- * EXIT TO MAIN ROUTINE FOR NEXT OPTION.
- *
- * USES X - 0, 1, 2, 3, 5, 6, 7.
- * A - 0, 1, 2, 3, 6, 7.
- * B - 2, 5, 7.
- *
- * CALLS CDD, CLN, COD, FFA, GNB, PCE, SNM, SUI, WDB.
- *
- * MACROS EVICT, FUNC, MESSAGE, READ, READO,
- * REWIND, SETFS, SETUI, WRITEC, WRITER.
- PRF BSS 0 ENTRY
- SX6 DMRC * REFORMAT COMPLETE.*
- SA6 MODA SET COMPLETION MESSAGE
- EVICT N INITIALIZE NEW FILE
- SX0 9 RESERVE 1ST LEVEL 0 PLUS 8 SECTORS
- PRF1 WRITER N,R
- SX0 X0-1
- NZ X0,PRF1 IF MORE SECTORS TO RESERVE
- SETFS N,0
- SX6 B1 SET INITIAL CALL
- MX7 0 CLEAR UPDATE MODE
- SA7 UF
- SA7 TAUI+TAUIL-1 CLEAR AVAILABLE USER INDICES
- SB7 TAUIL-1
- PRF2 SA7 A7-B1
- SB7 B7-B1
- NZ B7,PRF2 IF NOT ALL CLEAR
- SX7 PNET SET PARAMETERS FOR *GNB*
- SA7 GNBA
- PRF3 RJ GNB GET NEXT USER BLOCK
- ZR X6,PRF4 IF END OF USER ENTRIES
- SX6 -B1 FLAG REFORMAT
- SA6 UUFG
- RJ FFA FINISH USER NAME
- BX6 X6-X6 NOT INITIAL CALL
- EQ PRF3 LOOP FOR NEXT USER NAME
- PRF4 RJ WDB DUMP REMAINING DATA RECORDS
- SA0 B1 RESET BLOCK ADDRESSES
- SX7 B1+
- MX6 0
- SA7 CZ SET CREATE FLAG FOR WRITE
- SA6 L.TAB0 CLEAR TABLE 0
- SA6 RA0+1 CLEAR LEVEL-0 LINK
- SX5 N
- FUNC RBAT
- SA0 B0+ SORT TABLE
- FUNC STBT
- SA1 RAND WRITE LEVEL-0 DIRECTORY
- SB2 60-24
- SX5 N
- LX0 X1,B2
- FUNC WTBT
- * PURGE DELETED USER INDICES.
- SA1 OT CHECK ORIGIN TYPE
- NZ X1,MOD IF NOT SYSTEM ORIGIN
- REWIND U
- READ U
- PRF5 SA1 PRFC CHECK INDEX
- SX1 X1-AUIMX+1
- PL X1,PRF7 IF NONE LEFT
- SA2 PRFB SHIFT COUNT
- SA1 PRFA DELETED INDICES
- NZ X2,PRF6 IF PERTINENT DATA PRESENT
- SX7 60 RESET SHIFT COUNT
- SA7 A2+
- READO U UI,S FROM FILE
- SA2 PRFD WORD INDEX
- SA1 X2+TAUI UI,S USED AFTER REFORMAT
- SX7 X2+1
- BX1 -X1*X6 UI,S TO BE PURGED
- SA7 A2
- PRF6 LX6 X1,B1
- SA2 PRFC UI
- SA3 A2-B1 SHIFT COUNT
- SA6 A3-B1 NEW UI,S FOR PURGE
- SX7 X3-1 UPDATE SHIFT COUNT
- SX6 X2+B1 UPDATE CURRENT UI
- SA7 A3
- SA6 A2
- PL X1,PRF5 IF NO PURGE
- SETUI X6
- SX1 B1 CHECK LINE COUNT
- RJ CLN
- SA1 PRFC DUMP UI TO OUTPUT
- RJ COD
- SA1 PRFE+1
- MX0 -36
- BX6 -X0*X6
- BX1 X0*X1
- BX6 X1+X6
- SA6 A1
- WRITEC O,A1-B1
- RJ PCE PURGE CATALOG ENTRIES
- SA1 PRFF
- SX6 X1+B1
- SA6 A1
- EQ PRF5 LOOP
- PRF7 SA1 PRFF CHECK USER INDICES PURGED
- ZR X1,MOD IF NO USER INDICES PURGED
- RJ CDD CONVERT COUNT TO DISPLAY
- SB2 1RZ
- SB5 DMXP
- BX1 X4
- RJ SNM ENTER VALUE IN MESSAGE
- MESSAGE DMXP,3,R * NNNNNN USER INDICES PURGED.*
- SX1 3
- RJ CLN
- WRITEC O,(=1L )
- WRITEC O,(=1L )
- WRITEC O,DMXP * NNNNNN USER INDICES PURGED.*
- SETUI SYUI
- RJ SUI SAVE NEW USER INDICES
- EQ MOD EXIT TO MAIN ROUTINE
- PRFA CON 0 DELETED USER INDICES (FOR PURGE)
- PRFB CON 0 SHIFT COUNT
- PRFC CON 0 LAST USER INDEX
- PRFD CON 0 *TAUI* INDEX
- PRFE DIS ,* USER INDEX *
- DIS ,*B PURGED.*
- PRFF CON 0 COUNT OF USER INDICES PURGED
- PCS SPACE 4,10
- ** PCS - PROCESS CHANGE TO SOURCE. (OP = S).
- *
- * EXIT TO MAIN ROUTINE FOR NEXT OPTION.
- *
- * USES X - 1, 6, 7.
- * A - 1, 6, 7.
- *
- * CALLS CDS, CSD, CPS, GNB, SRD.
- *
- * MACROS SETFS, WRITER, WRITEW.
- PCS BSS 0 ENTRY
- SX6 B1 SET INITIAL CALL
- MX7 0 CLEAR UPDATE MODE
- SA7 UF
- SX7 PNAT SET PARAMETERS FOR *GNB*
- MX1 1
- BX7 X7+X1
- SA7 GNBA
- PCS1 RJ GNB GET NEXT USER BLOCK
- ZR X6,PCS2 IF END OF USER ENTRIES
- RJ SRD SET RECORD DATA
- SA1 TMXB+1
- RJ CDS GET BATCH PASSWORD EXPIRATION
- SA1 TMXI+1
- RJ CDS GET INTERACTIVE PASSWORD EXPIRATION DATE
- WRITEW S,TMBS,TMBSL
- RJ CSD CONVERT SERVICE CLASS DIRECTIVES
- RJ CPS CONVERT PERMISSIONS TO SOURCE
- BX6 X6-X6 NOT INITIAL CALL
- EQ PCS1 LOOP FOR NEXT BLOCK
- PCS2 WRITER S
- SETFS S,0
- SX6 DMSC * CONVERSION TO SOURCE COMPLETE.*
- SA6 MODA
- EQ MOD EXIT TO MAIN ROUTINE
- PIO SPACE 4,10
- ** PIO - PROCESS LIMITS.
- *
- * EXIT TO *ABT* IF ERROR.
- *
- * USES X - 0, 1, 2, 6.
- * A - 1, 2, 6.
- *
- * CALLS PLM, RDB, SRD.
- *
- * MACROS FUNC, RECALL.
- PIO BSS 0 ENTRY
- RECALL P
- RECALL N
- SA1 P SWITCH FETS
- BX6 X1
- SX0 A1
- SA6 N
- SA2 SSJ=+UIDS SET USER NAME
- MX6 42
- BX6 X6*X2
- SX1 AN
- SA6 X1
- FUNC SPBT FIND FILE ENTRY
- NZ X6,ABT IF ERROR
- SX2 DMSE * SYSTEM ERROR.*
- BX6 X4
- NZ X4,ABT IF NO HIT
- SA6 RDBA ENTRY FOUND FLAG
- RJ RDB READ DATA BLOCK
- NZ X1,ABT IF ERROR
- RJ SRD WRITE USER LIMIT DATA TO OUTPUT
- SA1 TANB+ACCD
- LX6 X1
- SA6 TANB+1
- RJ PLM PRINT *LIMITS* MESSAGES
- SX6 DMIC * INQUIRY COMPLETE.*
- SA6 MODA
- EQ MOD2 EXIT PROGRAM
- PLO SPACE 4,10
- ** PLO - PROCESS LIST OPTION. (OP = L).
- *
- * EXIT TO MAIN ROUTINE.
- *
- * USES A - ALL.
- * B - 2.
- * X - ALL.
- *
- * CALLS GNB, WCE.
- *
- * MACROS ADDWRD, FUNC, READ, READW, RENAME,
- * RETURN, REWIND, WRITER, WRITEW.
- PLO BSS 0 ENTRY
- SX6 B1+ SET INITIAL CALL
- SX7 PNAT SET PARAMETERS FOR *GNB*
- MX1 1
- BX7 X7+X1
- SA7 GNBA
- PLO1 RJ GNB GET NEXT USER BLOCK
- ZR X6,PLO6 IF END OF USER ENTRIES
- SA2 LO SET CATALOG INFORMATION IN TABLE
- SA1 TANB
- SB2 X2
- LX1 X1,B2 SET ORDER OF LIST
- ADDWRD TAB3,X1
- SA1 TANB+ACCD
- ADDWRD TAB3,X1
- SA1 TV CHECK OVERFLOW
- SX6 B0+
- ZR X1,PLO1 IF NO OVERFLOW
- SA6 A1
- BX6 X1
- PLO6 SA6 PLOA
- REWIND N
- READ N
- SA0 TAB3 SORT TABLE
- FUNC STBT
- * MERGE TABLE TO FILE.
- SX0 B0+ CLEAR CURRENT ENTRY
- PLO7 READW N,TANB,C.TAB3
- PLO8 SA2 F.TAB3 COMPARE ENTRIES
- SA3 L.TAB3
- SA4 TANB
- IX3 X0-X3 (X3) = +, END-OF-TABLE
- IX2 X2+X0
- SA5 X2
- NZ X1,PLO12 IF EOR ON FILE
- PL X3,PLO11 IF END OF TABLE
- NG X4,PLO9 IF NEGATIVE FILE ENTRY
- PL X5,PLO10 IF SAME SIGN
- EQ PLO11 WRITE FILE ENTRY
- PLO9 PL X5,PLO12 IF OPPOSITE SIGNS
- PLO10 IX6 X5-X4
- NG X6,PLO12 IF FILE ENTRY .GT. TABLE ENTRY
- PLO11 WRITEW S,A4,C.TAB3 WRITE FILE ENTRY
- EQ PLO7 CONTINUE MERGE
- PLO12 PL X3,PLO13 IF END OF MERGE
- SA0 X1 SAVE EOR STATUS
- WRITEW S,X2,C.TAB3 WRITE TABLE ENTRY
- SX1 A0 RESTORE EOR STATUS
- SX0 X0+C.TAB3
- EQ PLO8 CONTINUE MERGE
- PLO13 WRITER S,R
- SA5 S
- RENAME A5,N SWITCH FILES
- BX6 X5 RESTORE FILE NAME
- SA6 A5
- SA1 PLOA CHECK OVERFLOW
- SX6 B0+ CLEAR TABLE
- SA6 L.TAB3
- NZ X1,PLO1 IF OVERFLOW, GET NEXT ENTRY
- REWIND N
- READ N
- PLO14 READW N,TANB,C.TAB3 GET NEXT ENTRY
- NZ X1,PLO15 IF EOR
- SA2 LO RESTORE USER AND USER INDEX
- SA1 TANB
- BX2 -X2
- SB2 X2+60
- LX6 X1,B2
- SA6 A1
- RJ WCE WRITE CATALOG ENTRY
- EQ PLO14 LOOP
- PLO15 SX6 DMLC * CATALOG COMPLETE.*
- SA6 MODA
- RETURN N
- EQ MOD2 RETURN
- PLOA CON 0 OVERFLOW FLAG
- TITLE DIRECTIVE PROCESSORS.
- AAD SPACE 4,10
- ** AAD - ASSEMBLE ALPHANUMERIC DATA.
- *
- * ENTRY (DF - DF+4) = *M*, *U*, *S*, *F*, *I*
- * PARAMETERS FROM *TINE* TABLE.
- * (X5) = (CBUF) = ASSEMBLED DATA.
- *
- * EXIT (X6) = DATA TO BE STORED IN *TANB*.
- * (B3) = 0.
- *
- * USES A - 3.
- * B - 2, 3.
- * X - 3, 6.
- AAD SUBR ENTRY/EXIT
- SA3 DF RIGHT JUSTIFY DATA FIELD
- LX3 1
- SB2 X3
- SB3 B2+B2
- SB2 B2+B3
- LX6 X5,B2
- SB3 B0
- EQ AADX RETURN
- AAN SPACE 4,15
- ** AAN - ASSEMBLE USER NAME.
- *
- * ENTRY STRING BUFFER FILLED.
- *
- * EXIT (X1) .NE. 0, IF ENTRY TERMINATION.
- * (X6) = USER NAME, IF NONZERO.
- * (B3) = 0.
- * (AN) = LEFT JUSTIFIED USER NAME.
- *
- * ERROR (B3) = ERROR MESSAGE ADDRESS.
- *
- * USES X - 1, 2, 4, 6.
- * A - 1, 2, 6.
- * B - 3, 5.
- *
- * CALLS ACI.
- AAN SUBR ENTRY/EXIT
- SA2 CS ASSEMBLE CHARACTERS
- SA1 CA ACCEPT -*- IN NUMBER
- BX6 X2 SUPPRESSION MASK
- RJ ACI ASSEMBLE CHARACTERS
- SA1 ET SET ENTRY TERMINATION
- ZR B6,AAN1 IF ERROR
- SB5 B5-1R=
- SA2 CBUF GET DATA
- BX6 X2
- SB3 B0
- ZR X2,AAN1 IF NULL USER NAME
- ZR B5,AAN1 IF INCORRECT SEPARATOR
- SA6 AN STORE
- SX4 X4-AINC-1
- NG X4,AANX IF SEVEN CHARACTERS OR LESS
- AAN1 SB3 ERAN **** ERROR IN USER NAME.
- EQ AANX RETURN
- AAV SPACE 4,20
- ** AAV - ASSEMBLE SECURITY VALIDATION PRIVILEGES.
- *
- * ENTRY (DF - DF+4) = *M*, *U*, *S*, *F*, *I*
- * PARAMETERS FROM *TINE* TABLE.
- * (X5) = (CBUF) = ASSEMBLED DATA.
- *
- * EXIT (B3) .LT. 0.
- *
- * ERROR (B3) = ERROR MESSAGE ADDRESS.
- *
- * USES A - 1, 2, 6, 7.
- * B - 3.
- * X - 0, 1, 2, 6, 7.
- *
- * CALLS ACW, CUN.
- AAV SUBR ENTRY/EXIT
- SA1 DF+3 VALIDATION FILE WORD
- SA2 X1+TANB VALIDATION FILE ENTRY
- BX7 X2
- SA7 AAVA SAVE CURRENT FILE ENTRY
- RJ ACW ASSEMBLE CONTROL WORD
- GT B3,AAVX IF ERROR
- SA1 AAVA
- NG X7,AAV1 IF *CSAP* BIT SET
- PL X1,AAVX IF *CSAP* BIT NOT SET
- RJ CUN CHECK USER NAMES
- NZ X1,AAVX IF USER NAMES DO NOT MATCH
- SB3 ERSP **** CANNOT DELETE *CSAP* PRIVILEGE.
- SA1 AAVA
- BX6 X1
- SA2 DF+3 VALIDATION FILE WORD
- SA6 X2+TANB RETURN OLD PRIVILEGES
- EQ AAVX RETURN
- * SET NON-EXPIRING PASSWORD AND UNLIMITED SECURITY COUNT
- * FOR SECURITY ADMINISTRATOR.
- AAV1 MX0 42
- SA1 APXB+TANB BATCH EXPIRATION DATE
- BX7 X0*X1
- SA7 A1 SET BATCH EXPIRATION DATE
- SA1 APXI+TANB INTERACTIVE EXPIRATION DATE
- BX7 X0*X1
- SA7 A1 SET INTERACTIVE EXPIRATION DATE
- SA1 AHDS+TANB SET UNLIMITED SECURITY COUNT
- MX0 6
- LX0 47-59
- BX6 -X0*X1
- BX6 X0+X1
- SA6 A1
- EQ AAVX RETURN
- AAVA CON 0 OLD VALIDATION PRIVILEGES
- ACN SPACE 4,15
- ** ACN - ASSEMBLE CHARGE NUMBER.
- *
- * ENTRY (DF - DF+4) = *M*, *U*, *S*, *F*, *I* PARAMETERS
- * FROM *TINE* TABLE.
- * (X5) = (CBUF) = ASSEMBLED DATA.
- *
- * EXIT (B3) .LT. 0.
- *
- * USES X - 6.
- * A - 6.
- * B - 3.
- ACN SUBR ENTRY/EXIT
- BX6 X5 MOVE ASSEMBLED DATA
- SA6 TANB+ACGN
- SB3 -B1
- EQ ACNX RETURN
- ACW SPACE 4,15
- ** ACW - ASSEMBLE PERMISSION CONTROL WORD.
- *
- * ENTRY (DF - DF+4) = *M*, *U*, *S*, *F*, *I*
- * PARAMETERS FROM *TINE* TABLE.
- * (X5) = (CBUF) = ASSEMBLED DATA.
- * (PCDW) = PERMISSION CONTROL FOR DEFAULT USE.
- *
- * EXIT (X7) = NEW PERMISSION CONTROL WORD.
- * (B3) .LT. 0 IF NO ERROR.
- * = ERROR MESSAGE ADDRESS IF ERROR.
- *
- * USES X - 1, 2, 3, 4, 7.
- * A - 0, 1, 2, 3, 4, 7.
- * B - 2, 3, 4.
- *
- * CALLS CDP, SFN, SPB, STB.
- ACW SUBR ENTRY/EXIT
- SA1 DF+4 SEARCH FOR DIRECTIVE IDENTIFIER
- SB2 TPCW
- MX2 18
- RJ STB SEARCH TABLE
- SX2 DMSE * SYSTEM ERROR.*
- ZR X3,ABT IF DIRECTIVE IDENTIFIER NOT FOUND
- SB3 ERAD * ERROR IN ALPHANUMERIC DATA.*
- ZR X5,ACWX IF NO PARAMETER VALUE
- SA0 A3 SAVE TABLE ENTRY ADDRESS
- SB4 X3 FWA TABLE PERMISSION IDENTIFIERS
- LX3 59-30
- BX1 X5
- PL X3,ACW1 IF NOT BLANK-FILLED TABLE
- RJ SFN SPACE FILL NAME
- BX1 X6
- ACW1 SA2 DF+3 VALIDATION FILE WORD
- SA4 X2+TANB VALIDATION FILE ENTRY
- SA2 =3LALL
- SA3 A0
- BX2 X2-X5
- NZ X2,ACW3 IF NOT *ALL*
- LX3 59-32
- PL X3,ACW7 IF *ALL* NOT ALLOWED
- RJ CDP CLEAR DEFAULT PERMISSION BITS
- SB3 -B1 SET NO ERROR
- ACW2 SA1 B4 SET ALL DEFINED PERMISSION BITS
- SB4 B4+B1
- ZR X1,ACW7 IF END OF TABLE
- MX2 42
- BX7 X2*X1
- BX7 X2-X7
- ZR X7,ACW2 IF BIT NOT USED
- MX2 -6
- BX1 -X2*X1
- SB2 X1 SET PERMISSION BIT
- SX2 B1
- LX2 B2
- BX4 X4+X2
- EQ ACW2 CONTINUE SETTING DEFINED BITS
- ACW3 SX2 A0-TPCW-PCAP
- NZ X2,ACW3.0 IF NOT *AAVW* UPDATE
- SA2 =3LIAF
- BX2 X2-X5
- NZ X2,ACW3.0 IF NOT *IAF*
- SA2 CVJ
- ZR X2,ACW6 IF *J* CONVERSION NOT SPECIFIED
- RJ SPB SET *IAF* PERMISSION BIT
- SA1 =7HVEIAF
- EQ ACW6 SET *VEIAF* PERMISSION BIT
- ACW3.0 SX2 A0-TPCW-PCAW
- NZ X2,ACW3.1 IF NOT *AACW* UPDATE
- SA2 =4LCSAF
- BX2 X2-X5
- NZ X2,ACW3.1 IF NOT *CSAF*
- SA2 CVK
- ZR X2,ACW6 IF *K* CONVERSION NOT SPECIFIED
- RJ SPB SET *CSAF* PERMISSION BIT
- SA1 =4LCRAF
- EQ ACW6 SET *CRAF* PERMISSION BIT
- ACW3.1 SA2 =3LNUL
- BX2 X2-X5
- NZ X2,ACW6 IF NOT *NUL*
- LX3 59-31
- PL X3,ACW7 IF *NUL* NOT ALLOWED
- RJ CDP CLEAR DEFAULT PERMISSION BITS
- SB3 -B1 SET NO ERROR
- SX1 A0-TPCW-PCAW
- NZ X1,ACW7 IF NOT *AACW* UPDATE
- SA1 CVC
- ZR X1,ACW4 IF *C* CONVERSION NOT SPECIFIED
- SA1 =4LCNRD
- RJ SPB SET PERMISSION BIT
- PL B3,ACW7 IF ERROR
- ACW4 SA1 CVD
- ZR X1,ACW5 IF *D* CONVERSION NOT SPECIFIED
- SA1 =4LCOPR
- RJ SPB SET PERMISSION BIT
- PL B3,ACW7 IF ERROR
- ACW5 SA1 CVF
- ZR X1,ACW5.1 IF *F* CONVERSION NOT SPECIFIED
- SA1 =4LCSAF
- RJ SPB SET PERMISSION BIT
- PL B3,ACW7 IF ERROR
- SA1 CVK
- ZR X1,ACW5.1 IF *K* CONVERSION NOT SPECIFIED
- SA1 =4LCRAF
- RJ SPB SET PERMISSION BIT
- PL B3,ACW7 IF ERROR
- ACW5.1 SA1 CVG
- ZR X1,ACW5.2 IF *G* CONVERSION NOT SPECIFIED
- SA1 =4LCOPI
- RJ SPB SET PERMISSION BIT
- PL B3,ACW7 IF ERROR
- ACW5.2 SA1 CVH
- ZR X1,ACW5.3 IF *H* CONVERSION NOT SPECIFIED
- SA1 =4LCACA
- RJ SPB SET PERMISSION BIT
- PL B3,ACW7 IF ERROR
- ACW5.3 SA1 CVK
- ZR X1,ACW7 IF *K* CONVERSION NOT SPECIFIED
- SA1 =4LCSAU
- RJ SPB SET PERMISSION BIT
- PL B3,ACW7 IF ERROR
- SA1 =4LCRAU
- ACW6 RJ SPB SET PERMISSION BIT
- ACW7 BX7 X4 WRITE PERMISSION CONTROL WORD
- SA7 A4
- EQ ACWX RETURN
- PCDW SPACE 4,10
- ** PCDW - PERMISSION BIT WORD TO CONTROL USE OF DEFAULT.
- *
- * BITS APPLY TO PERMISSION CONTROL DIRECTIVES DEFINED
- * BY POSITION IN *TPCW* (BIT 0 = TABLE ENTRY 0,
- * BIT 1 = TABLE ENTRY 1, ETC.). BIT CLEAR IMPLIES
- * FIRST OCCURANCE OF DIRECTIVE WILL CLEAR DEFAULT
- * SELECTION. BIT SET IMPLIES DIRECTIVE SHOULD TOGGLE
- * SPECIFIED BIT ONLY.
- PCDM EQU 0 PERMISSION CONTROL DEFAULT MASK
- PCDW CON PCDM PERMISSION CONTROL DEFAULT WORD
- TPCW SPACE 4,15
- ** TPCW - TABLE OF PERMISSION CONTROL WORDS.
- *
- *T 18/ID,12/OPT,6/SHF,6/NB,18/TPB
- * ID DIRECTIVE IDENTIFIER.
- * OPT OPTIONS = 9/0, 1/ALL, 1/NUL, 1/SPF.
- * ALL = SET IF *ID=ALL* DIRECTIVE ALLOWED.
- * NUL = SET IF *ID=NUL* DIRECTIVE ALLOWED.
- * SPF = SET IF SPACE FILL NEEDED FOR PERMISSION
- * IDENTIFIER.
- * SHF SHIFT FOR MASK.
- * NB NUMBER OF PERMISSION BITS.
- * TPB FWA TABLE OF PERMISSION IDENTIFIERS.
- TPCW BSS 0
- LOC 0
- PCAW DTPC AW,TAWI,60D,0,(ALL,NUL) ACCESS WORD
- PCAP DTPC AP,TNAV,NNAB,ALAB+1,(ALL,NUL,SPF) APPLICATIONS
- DTPC SO,TRTP,TRTPL,TRTPL,(NUL) SHELL PROGRAM
- DTPC SAV,TAPV,TAPVL-TAPVS,0,(ALL,NUL) SECURITY CONTROL
- DTPC SAL,TALB,TALBL,TALBS,(ALL,NUL) ACCESS LEVEL
- DTPC SAC,TACC,TACCL,TACCS,(ALL,NUL) ACCESS CATEGORIES
- DTPC VM,TSVM,TSVML,TSVML,(ALL,NUL) SERVICE CLASS
- LOC *O
- TPCWL EQU *-TPCW TABLE LENGTH
- CON 0 END OF TABLE
- ADS SPACE 4,15
- ** ADS - ASSEMBLE USER DEFAULT SERVICE CLASS.
- *
- * ENTRY (CBUF) = ASSEMBED CHARACTERS FOR INPUT DIRECTIVE.
- * (CHVB) = DATA IF *CHVAL* COMMAND.
- *
- * EXIT USER DEFAULT SERVICE CLASS IN *TANB* ALTERED.
- * (B3) .LT. 0.
- *
- * ERROR (B3) = ERROR MESSAGE ADDRESS, IF PROCESSING
- * INPUT DIRECTIVE.
- * IF *CHVAL* COMMAND, EXIT TO *ABT* WITH (X2) = ERROR
- * MESSAGE ADDRESS.
- *
- * USES X - 0, 1, 2, 3, 4, 5, 6.
- * A - 1, 2, 4, 5, 6.
- * B - 2, 3, 4, 5.
- *
- * CALLS STB.
- ADS SUBR ENTRY/EXIT
- SB3 CBUF SET ADDRESS OF DATA
- SA1 CHFG
- ZR X1,ADS1 IF NOT *CHVAL* COMMAND
- SB3 CHVB SET ADDRESS OF DATA
- MX0 -36
- SA1 B3+ CHECK NUMBER OF CHARACTERS
- BX3 -X0*X1
- SX2 DMCA * ERROR IN CHVAL ARGUMENTS.*
- NZ X3,ABT IF TOO MANY CHARACTERS
- ADS1 SA1 B3 CHECK FOR VALID ORIGIN TYPE
- MX2 12
- SB2 TOSC
- BX1 X2*X1
- RJ STB SEARCH FOR VALID ORIGIN TYPE
- SB4 A3-TOSC SET ORIGIN TYPE INDEX
- NZ X3,ADS2 IF FOUND
- SB2 TSOT
- RJ STB SEARCH FOR VALID ORIGIN TYPE
- SB4 A3-TSOT SET ORIGIN TYPE INDEX
- NZ X3,ADS2 IF FOUND
- SX2 DMOT * UNDEFINED ORIGIN TYPE.*
- SA1 CHFG
- NZ X1,ABT IF *CHVAL* COMMAND
- SB3 EROT **** INCORRECT ORIGIN TYPE.
- EQ ADSX RETURN
- ADS2 SB4 B4+B4 CALCULATE SHIFT FOR ORIGIN TYPE
- SB2 B4+B4
- SB4 B4+B2
- SA1 B3 CHECK FOR VALID SERVICE CLASS
- LX1 12
- BX1 X2*X1
- NZ X1,ADS3 IF SERVICE CLASS SPECIFIED
- LX3 12
- BX1 X2*X3 USE DEFAULT SERVICE CLASS FOR ORIGIN
- ADS3 SB2 TSVM
- RJ STB SEARCH FOR VALID SERVICE CLASS
- NZ X3,ADS4 IF FOUND
- SX2 DMUS * UNDEFINED SERVICE CLASS.*
- SA1 CHFG
- NZ X1,ABT IF *CHVAL* COMMAND
- SB3 ERSC **** INCORRECT SERVICE CLASS.
- EQ ADSX RETURN
- ADS4 SA4 TANB+ASCV GET VALIDATION WORD
- SA1 CHFG
- ZR X1,ADS5 IF NOT *CHVAL* COMMAND
- SB5 A3-TSVM CHECK IF USER VALIDATED
- SA5 TSCV+B5
- BX1 X4*X5
- SX2 DMVC * INCORRECT SERVICE CLASS.*
- ZR X1,ABT IF NOT VALIDATED
- ADS5 MX0 6 SET NEW USER DEFAULT
- SA4 TANB+ASC1
- LX3 -18
- BX3 X0*X3 GET SUFFIX FOR SERVICE CLASS
- LX4 B4
- SB4 -B4 RESET SHIFT COUNT
- SB4 B4+60
- BX4 -X0*X4
- BX6 X4+X3
- LX6 B4
- SA6 A4
- SB3 -B1 SET NO ERROR, DATA ALREADY SET IN FIELD
- EQ ADSX RETURN
- AEA SPACE 4,15
- ** AEA - ASSEMBLE EQUIVALENCED ARGUMENTS.
- *
- * ENTRY (DF - DF+4) = *M*, *U*, *S*, *F*, *I*
- * PARAMETERS FROM *TINE* TABLE.
- * (X5) = (CBUF) = ASSEMBLED DATA.
- *
- * EXIT (B3) = 0.
- *
- * USES A - 1, 2.
- * B - 2, 3.
- * X - 1, 2, 6.
- *
- * CALLS STB.
- AEA SUBR ENTRY/ EXIT
- SA1 DF
- BX1 -X1
- SB2 X1+B1
- MX2 60
- BX1 X5
- RJ STB SEARCH FOR IDENTIFIER
- SB3 ERAD **** ERROR IN ALPHANUMERIC DATA.
- ZR X3,AEAX IF NOT FOUND
- SA2 DF SET EQUIVALENCED VALUE
- SX6 A3-B1
- IX6 X2+X6
- SB3 B0 SET DATA FIELD
- EQ AEAX RETURN
- AEP SPACE 4,15
- ** AEP - ASSEMBLE ENCRYPTED PASSWORD.
- *
- * ENTRY (DF - DF+4) = *M*, *U*, *S*, *F*, *I*
- * PARAMETERS FROM *TINE* TABLE.
- * (X5) = (CBUF) = ASSEMBLED DATA.
- * (X1) = 0 IF EXACT CHARACTER COUNT ASSEMBLED.
- *
- * EXIT (X6) = DATA TO BE STORED IN *TANB*.
- * (B3) = 0.
- *
- * ERROR (B3) = ERROR MESSAGE ADDRESS.
- *
- * USES A - 5.
- * B - 3, 4.
- * X - 0, 2, 3, 5, 6.
- AEP SUBR ENTRY/EXIT
- SB4 10
- SB3 ERND **** ERROR IN NUMERIC DATA.
- NZ X1,AEPX IF NOT EXACT CHARACTER COUNT
- MX0 -6
- BX6 X6-X6
- AEP1 LX5 6
- BX2 -X0*X5
- SX3 X2-1R0
- NG X3,AEPX IF ALPHA CHARACTER
- SX2 X2-1R8
- PL X2,AEPX IF NOT OCTAL DIGIT
- LX6 3
- BX6 X6+X3
- SB4 B4-B1
- NZ B4,AEP1 IF MORE CHARACTERS TO PROCESS
- SA5 A5+B1 GET SECOND WORD TO BE PROCESSED
- SB4 4
- SX2 A5-CBUF-1
- ZR X2,AEP1 IF SECOND WORD TO BE PROCESSED
- SB3 B0
- EQ AEPX RETURN
- AMX SPACE 4,15
- ** AMX - ASSEMBLE MAXIMUM RESOURCE LIMITS.
- *
- * ENTRY (X5) = (CBUF) = ASSEMBLED DATA.
- *
- * EXIT ALL RESOURCE LIMITS SET TO MAXIMUM VALUES.
- * (B3) = -1, IF NO ERROR.
- * (B3) = ERROR MESSAGE ADDRESS IF *ALL* NOT SPECIFIED.
- *
- * USES X - 0, 1, 2, 5, 6, 7.
- * A - 1, 5, 6, 7.
- * B - 3.
- *
- * MACROS FUNC.
- AMX SUBR ENTRY/EXIT
- SA1 =3LALL
- BX2 X5-X1
- SA5 TINE-1 INITIALIZE TABLE SEARCH
- SB3 ERAD **** ERROR IN ALPHANUMERIC DATA.
- NZ X2,AMXX IF *ALL* NOT ENTERED
- SB3 -1
- AMX1 SA5 A5+B1 GET NEXT TABLE ENTRY
- MX0 18
- SA1 =2LRL
- BX2 X0*X5
- BX2 X1-X2
- ZR X2,AMXX IF END OF ENTRIES TO PROCESS
- LX5 36
- BX6 -X0*X5 ADDRESS OF MAXIMUM VALUE
- SA2 X6
- BX6 X2 MAXIMUM VALUE
- MX0 -6
- LX5 6
- BX7 -X0*X5 UPPER BIT OF FIELD
- SA7 DF+1
- LX5 6
- BX7 -X0*X5 SIZE OF FIELD
- SA7 A7+B1
- LX5 6
- BX7 -X0*X5 FIRST WORD ADDRESS OF FIELD
- SA7 A7+B1
- SX3 TANB
- FUNC SDFT SET DATA IN FIELD
- EQ AMX1 CHECK NEXT ENTRY
- AND SPACE 4,20
- ** AND - ASSEMBLE NUMERIC DATA.
- *
- * ENTRY (DF - DF+4) = *M*, *U*, *S*, *F*, *I*
- * PARAMETERS FROM *TINE* TABLE.
- * (X5) = (CBUF) = ASSEMBLED DATA.
- *
- * EXIT (X6) = DATA TO BE STORED IN *TANB*.
- * (B3) = 0.
- *
- * ERROR (B3) = ERROR MESSAGE ADDRESS.
- *
- * USES A - 1.
- * B - 3, 7.
- * X - 1.
- *
- * CALLS DXB.
- AND SUBR ENTRY/EXIT
- SB7 B1 BASE DECIMAL
- RJ DXB CONVERT DIGITS
- NZ X4,AND1 IF ERROR IN ASSEMBLY
- SA1 DF GET MAXIMUM VALUE
- SB3 B0
- ZR X1,ANDX IF INFINITE
- IX1 X1-X6
- PL X1,ANDX IF WITHIN MAXIMUM
- AND1 SB3 ERND **** ERROR IN NUMERIC DATA.
- EQ ANDX RETURN
- API SPACE 4,15
- ** API - ASSEMBLE PERSONAL IDENTIFICATION.
- *
- * ENTRY (DF - DF+4) = *M*, *U*, *S*, *F*, *I*
- * PARAMETERS FROM *TINE* TABLE.
- * (A5) = CBUF.
- * (X5) = (CBUF) = ASSEMBLED DATA.
- *
- * EXIT (B3) .LT. 0.
- *
- * USES A - 1, 6.
- * B - 3.
- * X - 1, 6.
- API SUBR ENTRY/EXIT
- BX6 X5
- SA6 TANB+APID
- SA1 A5+B1
- SB3 -B1
- BX6 X1
- SA6 TANB+API2
- EQ APIX RETURN
- APN SPACE 4,15
- ** APN - ASSEMBLE PROJECT NUMBER.
- *
- * ENTRY (DF - DF+4) = *M*, *U*, *S*, *F*, *I*
- * PARAMETERS FROM *TINE* TABLE.
- * (X5) = (CBUF) = ASSEMBLED DATA.
- *
- * EXIT (B3) .LT. 0.
- *
- * USES A - 1, 6.
- * B - 3.
- * X - 1, 6.
- APN SUBR ENTRY/EXIT
- BX6 X5
- SA6 TANB+APJN
- SA1 A5+B1
- SB3 -B1
- BX6 X1
- SA6 TANB+APJ1
- EQ APNX RETURN
- APW SPACE 4,15
- ** APW - ASSEMBLE PASS WORD.
- *
- * ENTRY (DF - DF+4) = *M*, *U*, *S*, *F*, *I*
- * PARAMETERS FROM *TINE* TABLE.
- * (X5) = (CBUF) = ASSEMBLED DATA.
- *
- * EXIT (B3) .LT. 0.
- *
- * ERROR (B3) = ERROR MESSAGE ADDRESS.
- *
- * USES A - 1, 2, 3, 4, 6, 7.
- * B - 3.
- * X - ALL.
- *
- * CALLS ADT, EPW, VPW.
- APW5 SA1 OP
- NZ X1,APWX IF NOT K-DISPLAY
- SA1 DF+4
- SB3 ERPU **** PASSWORDS UPDATED.
- ZR X1,APWX IF BOTH PASSWORDS UPDATED
- LX1 12
- SX2 X1-2RPB
- SB3 ERBU **** BATCH PASSWORD UPDATED.
- ZR X2,APWX IF ONLY BATCH PASSWORD UPDATED
- SB3 ERIU **** INTERACTIVE PASSWORD UPDATED.
- APW SUBR ENTRY/ EXIT
- BX7 X5
- RJ VPW VERIFY PASSWORD
- ZR B2,APW1 IF PASSWORD IS OF REQUIRED LENGTH
- SA1 RDBA CHECK IF OLD USER NAME
- SB3 ERIP **** INCORRECT PASSWORD.
- NZ X1,APWX IF NEW USER NAME
- SB3 ERPI **** INCORRECT PASSWORD IGNORED.
- EQ APWX RETURN
- * ENCRYPT PASSWORD.
- APW1 RJ EPW ENCRYPT PASSWORD
- BX5 X6
- * SAVE ENCRYPTED PASSWORD. SET EXPIRATION DATE TO
- * DEFAULT WHEN CREATING PASSWORD FOR A NEW USER.
- APW2 SA3 DF+3 GET PREVIOUS VALUE
- SA4 X3+TANB
- SX2 B0+
- SX1 APXT-7777B DEFAULT PASSWORD EXPIRATION TERM
- ZR X1,APW3 IF NON-EXPIRING DEFAULT EXPIRATION TERM
- SA3 ASVW+TANB SECURITY VALIDATION WORD
- NG X3,APW3 IF SECURITY ADMINISTRATOR
- SA2 PD GET PACKED DATE
- SX1 APXT DEFAULT PASSWORD EXPIRATION TERM
- ZR X1,APW3 IF NO DEFAULT EXPIRATION TERM
- RJ ADT ADD TERM TO DATE
- APW3 BX6 X5+X2 COMBINE PASSWORD WITH EXPIRATION DATE
- SA6 A4+
- APW4 SA1 DF+4 FUNCTION IDENTIFIER
- SA2 =2LPW
- IX7 X1-X2
- SB3 -B1
- NZ X7,APW5 IF NOT *PW* FUNCTION IDENTIFIER
- SA7 A1+ CLEAR FUNCTION IDENTIFIER
- SX7 APWI
- SA7 DF+3 SET ADDRESS
- EQ APW2 PROCESS INTERACTIVE PASSWORD
- AED SPACE 4,10
- ** AED - ASSEMBLE EXPIRATION DATE.
- *
- * ENTRY (DF - DF+4) = *M*, *U*, *S*, *F*, *I*
- * (PARAMETERS FROM *TINE* TABLE).
- * (X5) = (CBUF) = ASSEMBLED DATA.
- * (X1) = 0 IF EXACT CHARACTER COUNT ASSEMBLED.
- *
- * EXIT (B3) .LT. 0.
- *
- * ERROR (B3) = ERROR MESSAGE ADDRESS.
- *
- * USES X - 1, 2, 3, 6, 7.
- * A - 1, 2, 3, 6, 7.
- * B - 3.
- *
- * CALLS VDT.
- *
- * MACROS FUNC.
- AED SUBR ENTRY / EXIT
- BX2 X2-X2
- SA3 =1L* CHECK FOR NONEXPIRING PASSWORD
- IX6 X3-X5
- ZR X6,AED1 IF NONEXPIRING PASSWORD
- SB3 ERND **** ERROR IN NUMERIC DATA.
- NZ X1,AEDX IF NOT EXACT CHARACTER COUNT
- BX1 X5
- RJ VDT DATE TIME CHECK
- SB3 ERND **** ERROR IN NUMERIC DATA.
- NG X6,AEDX IF ERROR IN CONVERSION
- SA2 TANB+ASVW SECURITY VALIDATION WORD
- SB3 ERXD **** CANNOT ALTER XD/XT OF *CSAP*
- NG X2,AEDX IF SECURITY ADMINISTRATOR
- AED1 SA6 AEDA SAVE EXPIRATION DATE
- SX3 TANB
- FUNC SDFT SET DATA IN FIELD
- SA1 DF+4 FUNCTION IDENTIFIER
- SA2 =2LXD
- IX6 X1-X2
- SB3 -B1
- NZ X6,AEDX IF NOT *XD* IDENTIFIER
- SA6 A1 CLEAR IDENTIFIER
- SX7 APWI
- SA7 DF+3 ADDRESS FOR INTERACTIVE PASSWORD
- SA1 AEDA
- BX6 X1
- EQ AED1 ALSO SET INTERACTIVE PASSWORD EXPIRATION
- AEDA CON 0 EXPIRATION DATE
- ASC SPACE 4,15
- ** ASC - ASSEMBLE SECURITY COUNT.
- *
- * ENTRY (DF - DF+4) = *M*, *U*, *S*, *F*, *I*
- * PARAMETERS FROM *TINE* TABLE.
- * (X5) = (CBUF) = ASSEMBLED DATA.
- *
- * EXIT (X6) = DATA TO BE STORED IN TABLE.
- * (B3) = 0.
- *
- * ERROR (B3) = ERROR MESSAGE ADDRESS.
- *
- * CALLS AND.
- ASC SUBR ENTRY/EXIT
- RJ AND ASSEMBLE NUMERIC DATA
- GT B0,B3,ASCX IF ERROR
- SA1 ASVW+TANB
- PL X1,ASCX IF NOT SECURITY ADMINISTRATOR
- SB3 ERCS **** CANNOT ALTER SEC. COUNT OF *CSAP*.
- EQ ASCX RETURN
- ATE SPACE 4,10
- ** ATE - ASSEMBLE EXPIRATION TERM.
- *
- * ENTRY (DF - DF+4) = *M*, *U*, *S*, *F*, *I*
- * PARAMETERS FROM *TINE* TABLE.
- * (X5) = (CBUF) = ASSEMBLED DATA.
- *
- * EXIT (B3) .LT. 0.
- *
- * ERROR (B3) = ERROR MESSAGE ADDRESS.
- *
- * USES X - 1, 2, 3, 6, 7.
- * A - 1, 2, 6, 7.
- * B - 3, 7.
- *
- * CALLS ADT, DXB.
- *
- * MACROS FUNC.
- ATE3 SB3 ERAD **** ERROR IN NUMERIC DATA.
- ATE SUBR ENTRY/EXIT
- SA1 =1L*
- IX6 X1-X5
- ZR X6,ATE1 IF NON-EXPIRING PASSWORD
- SB7 B1 SET DECIMAL BASE
- RJ DXB DISPLAY TO BINARY CONVERSION
- NZ X4,ATE3 IF ERROR IN CONVERSION
- SA2 DF MAXIMUM VALUE ALLOWED
- IX2 X2-X6
- BX1 X6
- NG X2,ATE3 IF VALUE OUT OF RANGE
- SX6 X6-7777B
- ZR X6,ATE1 IF NON-EXPIRING PASSWORD
- SA2 TANB+ASVW SECURITY VALIDATION PRIVILEGES
- SB3 ERXD **** CANNOT ALTER XD/XT OF *CSAP*
- NG X2,ATEX IF SECURITY ADMINISTRATOR
- SA2 PD GET PACKED DATE
- BX6 X2
- ZR X1,ATE1 IF IMMEDIATELY EXPIRING PASSWORD
- RJ ADT ADD TERM VALUE TO PACKED DATE
- ATE1 SX3 TANB SET DATA FIELD
- SA6 ATEA SAVE EXPIRATION DATE
- FUNC SDFT SET DATA IN FIELD
- SA1 DF+4 FUNCTION IDENTIFIER
- SA2 =2LXT
- IX6 X1-X2
- SB3 -B1
- NZ X6,ATEX IF NOT *XT* IDENTIFIER
- SA6 A1+ CLEAR IDENTIFIER
- SX7 APWI
- SA7 DF+3 INTERACTIVE PASSWORD ADDRESS
- SA2 ATEA GET EXPIRATION DATE
- BX6 X2
- EQ ATE1 ALSO SET INTERACTIVE PASSWORD EXPIRATION
- ATEA CON 0 EXPIRATION DATE
- AUX SPACE 4,15
- ** AUX - ASSEMBLE USER INDEX.
- *
- * EXIT (B3) = 0.
- * (X6) = DATA TO BE STORED IN *TANB*.
- *
- * ERROR (B3) = ERROR MESSAGE ADDRESS.
- *
- * USES A - 2, 3.
- * B - 3.
- * X - 0, 2, 3.
- *
- * CALLS AND, CUI.
- AUX1 SB3 ERND **** ERROR IN NUMERIC DATA.
- AUX SUBR ENTRY/EXIT
- RJ AND ASSEMBLE NUMERIC DATA
- GT B3,AUXX IF ERROR
- ZR X6,AUX1 IF USER INDEX ZERO
- SA2 DF+4
- SA3 =2LUI
- BX3 X2-X3
- NZ X3,AUXX IF NOT *UI* DIRECTIVE
- SA3 SI
- NZ X3,AUXX IF *SI* SELECTED
- SX0 B1 CHECK FOR DUPLICATE USER INDEX
- RJ CUI
- PL X7,AUXX IF NOT DUPLICATE
- SB3 ERUI **** DUPLICATE USER INDEX
- EQ AUXX RETURN
- CUI SPACE 4,20
- ** CUI - CHECK USER INDEX.
- *
- * ENTRY (X6) = USER INDEX.
- * (TAUI) = ASSIGNED USER INDICES.
- * (X0) = 0, IF USER INDEX TO BE SET IN TAUI.
- * (X0) .NE. 0, IF USER INDEX TO BE CHECKED FOR
- * DUPLICATION.
- *
- * EXIT (X7) .LT. 0, IF DUPLICATE USER INDEX FOUND FOR
- * CHECK USER INDEX REQUEST.
- *
- * USES X - 0, 1, 2, 3, 7.
- * A - 1, 7.
- * B - 2, 7.
- CUI SUBR ENTRY/ EXIT
- SX7 X6-AUIMX
- PL X7,CUIX IF SPECIAL USER INDEX (SYSTEM/LIBRARY)
- SX1 60 FIND UI BIT
- SX2 X6-1
- IX2 X2/X1 (X2) = WORD
- SX1 60
- BX3 X2
- IX1 X1*X3
- IX3 X6-X1
- SB2 X3-1 (B2) = SHIFT COUNT
- SA1 X2+TAUI
- LX7 X1,B2
- NZ X0,CUIX IF USER INDEX NOT TO BE SET
- MX0 1 SET USER INDEX IN TAUI
- SB7 -60
- BX1 X0+X7
- SB2 B2+B7
- AX7 X1,B2
- SA7 A1+
- EQ CUIX RETURN
- DAN SPACE 4,15
- ** DAN - DELETE USER NAME.
- *
- * ENTRY (DF - DF+4) = *M*, *U*, *S*, *F*, *I*
- * PARAMETERS FROM *TINE* TABLE.
- * (X5) = (CBUF) = ASSEMBLED DATA.
- *
- * EXIT (B3) .LT. 0.
- *
- * ERROR (B3) = ERROR MESSAGE ADDRESS.
- *
- * USES A - 1, 3, 6, 7.
- * B - 3.
- * X - 0, 1, 2, 3, 6, 7.
- *
- * CALLS CUN.
- *
- * MACROS MESSAGE, SEARCH.
- DAN1 RJ CUN CHECK USER NAMES
- SB3 ERDU **** CANNOT DELETE USER RUNNING MODVAL.
- ZR X1,DANX IF USER NAMES MATCH
- SA3 OP CHECK OPTION
- SA1 EF
- NZ X3,DAN2 IF NOT K-DISPLAY
- NZ X1,DAN2 IF ERROR FLAG SET
- SA1 =10H DELETING
- BX7 X1
- SA7 MSGA
- MESSAGE A7,1
- DAN2 SX6 B1 SET DELETE FLAG
- SB3 -B1
- SA6 DANA
- DAN SUBR ENTRY / EXIT
- SA1 OP CHECK OPTION
- SX2 DMSE * SYSTEM ERROR.*
- SX1 X1-COPT
- ZR X1,ABT IF CREATE
- SB3 ERAD **** ERROR IN ALPHANUMERIC DATA.
- SA1 AN
- BX2 X5-X1
- NZ X2,DANX IF INCORRECT USER NAME
- MX0 42
- SEARCH TAB1,X1,M
- NZ X2,DAN1 IF MATCH
- SA1 =10H NAME
- MX7 0
- BX6 X1
- SA7 DANA
- SA6 ERNF+2
- SB3 ERNF **** USER NAME NOT FOUND.
- EQ DANX RETURN
- DANA CON 0
- DIP SPACE 4,15
- ** DIP - DIRECTIVE INPUT PROCESSOR.
- *
- * EXIT IF END OF INPUT DIRECTIVES OR OVERFLOW.
- *
- * USES X - ALL.
- * A - 1, 2, 3, 5, 6, 7.
- * B - 3, 6, 7.
- *
- * CALLS AAN, ACI, CUN, CPR, FFA, IDE, PAG, RDB, SFN, SRD.
- *
- * MACROS FUNC, MESSAGE, MOVE, SEARCH.
- DIP SUBR ENTRY/ EXIT
- SA1 ET CHECK ENTRY TERMINATION
- NZ X1,DIP10 IF SET (CREATE PERFORMED)
- * FIND NEXT -/-.
- DIP1 SA1 KIA SET INITIAL SCREENS
- SX7 MSGA CLEAR MESSAGE LINE AFTER INPUT
- SA7 M1
- SX7 INPA SET KEYBOARD INPUT LINE
- SA7 IL
- MX0 24
- BX6 X0*X1
- SX5 DSA
- BX6 X5+X6
- SA6 A1
- SA2 CS SUPPRESS BLANKS
- MX1 0
- BX6 X2
- RJ ACI ASSEMBLE CHARACTERS
- SB3 ERAN **** ERROR IN USER NAME.
- ZR B6,DIP10 IF ENTRY TERMINATION
- SA1 OP CHECK OPTION
- NZ X1,DIP5 IF NOT K-DISPLAY
- DIP2 SX7 B0 CLEAR COMMAND FLAGS
- MX0 42
- SA7 DIPC
- SA7 DIPD
- SA7 ET
- SA7 EF
- SA7 DANA
- ZR X4,DIP1 IF NO CHARACTERS ASSEMBLED
- SA1 CBUF
- BX6 X1
- * FIND NEXT COMMAND FROM K-DISPLAY.
- SA1 DIPB-1 COMMAND TABLE
- DIP3 SA1 A1+B1
- BX2 X1*X0
- ZR X1,DIP4 IF END OF TABLE
- BX2 X2-X6
- NZ X2,DIP3 IF NO MATCH
- SX7 B1 SET FLAG
- SA7 X1
- EQ DIP10 PROCESS USER NAME
- DIP4 SA1 =0LEND CHECK FOR K-DISPLAY TERMINATION COMMANDS
- SA2 =0LSTOP
- BX1 X1-X6
- BX2 X2-X6
- ZR X1,DIPX IF *END*
- ZR X2,DIPX IF *STOP*
- SB3 ERFE **** FORMAT ERROR.
- DIP5 RJ IDE INPUT DATA ERROR
- EQ DIP1 SEARCH FOR -/-
- * CLEAN UP CURRENT USER ENTRY.
- DIP6 SA2 OP CHECK FOR K-DISPLAY INHIBITORS
- NZ X2,DIP21 IF NOT K-DISPLAY
- SB6 B7+5
- PL B6,DIP7 IF NOT PAGING COMMAND
- SX3 -B7
- RJ PAG
- EQ DIP22 PROCESS NEXT DIRECTIVE
- DIP7 SX6 2
- SB7 B7+4
- SA6 ET
- NG B7,DIPX IF *STOP*
- SA1 EF INQUIRE ONLY FLAG
- SX6 B7
- BX6 X1+X6
- SA6 EF INHIBIT USER UPDATE IF *DROP*
- ZR B7,DIP8 IF NOT *DROP*
- SA1 =10HINQUIRING
- BX6 X1
- SA6 MSGA
- EQ DIP9 FINISH FORMER USER NAME
- DIP8 SA5 APSW+TANB CHECK BATCH PASSWORD
- RJ CPR
- NZ B3,DIP8.1 IF REQUIRED AND NOT ENTERED
- SA5 APWI+TANB CHECK INTERACTIVE PASSWORD
- RJ CPR
- ZR B3,DIP9 IF ENTERED
- DIP8.1 RJ IDE PROCESS ERROR
- SA1 OP
- ZR X1,DIP22 IF K-DISPLAY
- DIP9 RJ FFA FINISH FORMER USER ENTRY
- SA1 TV
- NZ X1,DIPX IF OVERFLOW
- SA1 MSGA+1 SET COMPLETED MESSAGE
- SA2 A1-B1
- BX6 X1
- SA1 DIPF
- SA6 A2
- BX7 X1-X2
- SA7 A6+1
- DIP10 SA2 ET
- NG X2,DIPX IF EOF
- SX2 X2-2
- ZR X2,DIP1 IF K-DISPLAY *END* OR *DROP*
- SX6 B0+ CLEAR FILE POINTERS
- SA6 ET ENTRY TERMINATION
- SA6 AN USER NAME
- SA6 M1 RETAIN K-DISPLAY STATUS MESSAGE
- RJ AAN ASSEMBLE USER NAME
- GT B3,DIP20 IF ERROR
- NZ X1,DIP20 IF ENTRY TERMINATION
- SA6 DIPA+1 SET NAME IN MESSAGES
- BX1 X6
- RJ SFN
- SA6 DSAN
- SA1 =10H CREATING PRESET MESSAGE
- BX6 X1
- SA6 DIPA
- R= X6,PCDM CLEAR DEFAULT PERMISSION BITS IF SPECIFIED
- SX7 B1+ INDICATE NEW USER
- SA6 PCDW
- * PRESET USER NAME ENTRY.
- MOVE ARBS,TODV,TANB SET DEFAULT VALUES
- SA2 UF CHECK MODE
- ZR X2,DIP17 IF NOT UPDATE
- SX1 AN SET PRIMARY BLOCK
- SX0 N
- FUNC SPBT
- NZ X6,ABT IF ERROR, AND (X2) = MESSAGE
- BX6 X4 SET ENTRY FOUND FLAG
- SA6 RDBA
- ZR X4,DIP13 IF EXACT HIT
- SA1 OP CHECK K DISPLAY COMMANDS
- SA2 DIPD *U* K-OPTION
- NZ X1,DIP12 IF NOT K-DISPLAY
- SA1 EF *I* K-OPTION
- SA3 DANA *D* K-OPTION
- BX2 X1+X2
- BX2 X2+X3
- ZR X2,DIP12 IF NOT UPDATE ONLY
- SB3 ERNF **** USER NAME NOT FOUND.
- DIP11 SA1 AN PROCESS *U* OR *C* K-COMMAND ERROR
- RJ SFN
- LX6 -6
- SA6 B3+2
- RJ IDE
- MX4 0
- EQ DIP2 FIND NEXT COMMAND
- DIP12 SA5 RAND CHECK AVAILABLE ROOM IN CHAINED BLOCK
- ZR X5,DIP19 IF NONE
- EQ DIP15 READ BLOCK
- * READ LEVEL-2 BLOCK TO TABLE.
- DIP13 SA1 OP
- SA2 DIPC *C* K-OPTION
- NZ X1,DIP14 IF NOT K-DISPLAY
- SB3 ERFD **** USER NAME ALREADY EXISTS.
- NZ X2,DIP11 IF CREATE ONLY
- DIP14 SA2 OP CHECK OPTION
- SB3 ERDA **** DUPLICATE USER NAME.
- SX2 X2-COPT
- ZR X2,DIP21 IF CREATE
- DIP15 RJ RDB READ LEVEL-2 BLOCK
- SA2 =10H UPDATING
- NZ X1,DIP19 IF NOT EXACT HIT
- SX6 B1+ SET USER NAME UPDATE FLAG
- SA6 UUFG
- SA1 EF CHECK ERROR FLAG FOR INQUIRE
- ZR X1,DIP16 IF NOT INQUIRE
- SA2 =10HINQUIRING
- DIP16 BX6 X2
- SA1 DANA CHECK FOR *D* K-OPTION
- SX7 B1+B1
- SA6 DIPA
- MX6 TPCWL PREVENT CLEARING OF PERMISSION BITS
- LX6 TPCWL
- SA6 PCDW
- ZR X1,DIP19 IF NOT PRESENT
- RJ CUN CHECK USER NAME
- SB3 ERDU **** CANNOT DELETE USER RUNNING MODVAL.
- ZR X1,DIP5 IF SAME USER
- SA7 ET SET K-DISPLAY ENTRY TERMINATION
- SA1 =10H DELETING SET STATUS MESSAGE
- BX6 X1
- SA6 DIPA
- MOVE 2,DIPA,MSGA
- EQ DIP9 DELETE USER NAME
- * CHECK DUPLICATE USER NAME.
- DIP17 SA1 AN
- MX0 42
- SEARCH TAB1,X1,M
- NZ X2,DIP18 IF MATCH
- SEARCH TAB2,X6,M SEARCH FOR DUPLICATE USER IN LEVEL-2
- ZR X2,DIP19 IF NO MATCH
- DIP18 SB3 ERDA **** DUPLICATE USER NAME.
- RJ IDE
- DIP19 MESSAGE DIPA,1 SET MESSAGES
- MOVE 2,DIPA,MSGA
- SA1 KIA SET DISPLAY CONTROL WORD
- MX0 24
- BX6 X0*X1
- SX5 DSB SET PAGE ONE LEFT
- BX6 X5+X6
- SX5 DSG SET PAGE ONE RIGHT
- LX5 18
- BX6 X5+X6
- SA6 A1+
- SX6 INPB SET KEYBOARD INPUT LINE
- SA6 IL
- SA1 PAGA RESET PAGE TABLE HEADER
- LX1 30
- MX0 42
- BX1 X0*X1
- SX6 B1
- BX1 X1+X6 SET PAGE ONE LEFT
- LX1 30
- BX1 X0*X1
- BX6 X1+X6 SET PAGE ONE RIGHT
- SA6 A1
- EQ DIP22 PROCESS CODE IDENTIFIERS
- DIP20 SA1 OP
- ZR X1,DIP5 IF K-DISPLAY
- DIP21 RJ IDE INPUT DATA ERROR
- SA1 ET
- NZ X1,DIP8 IF ENTRY TERMINATION
- * PROCESS CODE IDENTIFIERS.
- DIP22 SA1 OP CHECK OPTION
- NZ X1,DIP23 IF NOT K-DISPLAY
- RJ SRD SET RECORD DISPLAY FOR K-DISPLAY
- DIP23 SX0 I SCAN FOR CODE IDENTIFIER
- SA1 CK ALLOW K-DISPLAY PAGING CHARACTERS
- SX3 TKDE
- SX6 TINE
- FUNC SCIT
- NZ X1,DIP24 IF NO ERROR IN IDENTIFIER
- SB3 ERID **** ERROR IN IDENTIFIER.
- NZ B5,DIP25 IF SEPARATOR NOT *=*
- MX1 0
- BX6 X6-X6
- RJ ACI SKIP OVER PARAMETER
- SB3 ERID **** ERROR IN IDENTIFIER.
- SX1 B0+
- EQ DIP25 DISPLAY ERROR
- DIP24 ZR B6,DIP8 IF ENTRY TERMINATION
- NG B7,DIP6 IF K-DISPLAY COMMAND ENTERED
- DIP25 SA3 OP
- NZ X3,DIP26 IF NOT K-DISPLAY
- SA2 EF
- ZR X2,DIP26 IF NOT INQUIRE OPTION
- SB3 ERIQ **** UPDATE NOT ALLOWED BY INQUIRE.
- EQ DIP21 DISPLAY ERROR MESSAGE
- DIP26 ZR X1,DIP21 IF ERROR IN IDENTIFIER
- RJ PDD PROCESS DIRECTIVE DATA
- GT B3,DIP21 IF ERROR
- SA1 ET CHECK FOR ENTRY TERMINATION
- ZR X1,DIP22 IF NONE
- EQ DIP8 CLEAN UP USER NAME
- DIPA DIS ,* CREATING USER.*
- DIPB CON 0LI+EF K-DIPLAY OPTION TABLE
- CON 0LC+DIPC
- CON 0LU+DIPD
- CON 0LDEL+DANA
- CON 0
- DIPC CON 0 K-CREATE ONLY FLAG
- DIPD CON 0 K-UPDATE ONLY FLAG
- DIPF CON 4RING &4RED. CONSTANT
- IDE SPACE 4,10
- ** IDE - INPUT DATA ERROR.
- *
- * ENTRY (B3) = ERROR MESSAGE ADDRESS.
- *
- * EXIT ERROR MESSAGE WRITTEN.
- *
- * USES X - 1, 2, 3, 5, 6, 7.
- * A - 1, 2, 3, 6, 7.
- * B - 2.
- *
- * CALLS CLN.
- *
- * MACROS MOVE, WRITEC, WRITEH, WRITES, WRITEW.
- IDE4 SA2 KIA GET K-DISPLAY STATUS WORD
- SX6 MSGA
- SX3 X2-DSA
- ZR X3,IDE5 IF INITIAL SCREEN
- SA2 PAGA GET MESSAGE AREA FROM PAGE TABLE
- LX2 30
- SB2 X2
- SA2 A2+B2 CURRENT LEFT PAGE
- AX2 18
- SX6 X2+ MESSAGE AREA
- SA6 M2
- IDE5 MOVE 4,X5,X6
- IDE SUBR ENTRY/ EXIT
- SA2 OP CHECK OPTION
- SX5 B3+B1
- SA1 B3 SET ERROR FLAG
- ZR X2,IDE4 IF K-DISPLAY
- SA3 EF UPDATE ERROR FLAG
- SA2 EMSF
- BX6 X1+X3
- BX7 X1+X2
- SA6 A3
- SA7 A2
- NZ X1,IDE1 IF ERROR FLAG SET
- SX6 B1+ SET WARNING MESSAGE FLAG
- SA6 WMSF
- IDE1 SA3 EL CHECK ERROR LIST FLAG
- SX1 3
- ZR X3,IDE2 IF DIRECTIVES LISTED
- SX1 4
- IDE2 RJ CLN CHECK LINE AVAILABLE
- SA1 EL CHECK ERROR LIST FLAG
- ZR X1,IDE3 IF DIRECTIVES LISTED
- SA1 SB LIST ERRONEOUS DIRECTIVE
- SA3 SM GET BUFFER LENGTH
- IX3 X3-X1
- WRITES O,X1-1,X3+1
- IDE3 WRITEH O,X5,4 WRITE ERROR MESSAGE
- WRITEW O,(=10H USER ),1
- WRITEC O,AN,1 WRITE USER NAME
- WRITEH O,(=1H ),1
- EQ IDEX RETURN
- * ERROR MESSAGES TO OUTPUT FILE OR K-DISPLAY.
- ERAN CON 1
- DIS 4, **** ERROR IN USER NAME.
- ERDA CON 1
- DIS 4, **** DUPLICATE USER NAME.
- ERFD CON 1
- DIS 4, **** USER NAME ALREADY EXISTS.
- ERFE CON 1
- DIS 4, **** FORMAT ERROR.
- ERID CON 1
- DIS 4, **** ERROR IN IDENTIFIER.
- ERIQ CON 0
- DIS 4, **** UPDATE NOT ALLOWED BY INQUIRE.
- ERND CON 1
- DIS 4, **** ERROR IN NUMERIC DATA.
- ERNF CON 1
- DIS 4, **** USER NAME NOT FOUND.
- ERAD CON 1
- DIS 4, **** ERROR IN ALPHANUMERIC DATA.
- ERUI CON 1
- DIS 4, **** USER INDEX PREVIOUSLY DEFINED.
- ERUN CON 1
- DIS 4, **** NO USER INDICES AVAILABLE.
- ERIP CON 1
- DIS 4, **** INCORRECT PASSWORD.
- ERPI CON 0
- DIS 4, **** INCORRECT PASSWORD IGNORED.
- ERPR CON 1
- DIS 4, **** PASSWORD REQUIRED.
- EROD CON 0
- CUE$ IFEQ CUE$,2
- DIS 4, **** DIRECTIVE IGNORED.
- CUE$ ELSE
- DIS 4, **** OBSOLETE DIRECTIVE IGNORED.
- CUE$ ENDIF
- ERDU CON 1
- DIS 4, **** CANNOT DELETE USER RUNNING MODVAL.
- ERSP CON 1
- DIS 4, **** CANNOT DELETE *CSAP* PRIVILEGE.
- ERXD CON 1
- DIS 4, **** CANNOT ALTER XD/XT OF *CSAP*.
- EROT CON 0
- DIS 4, **** INCORRECT ORIGIN TYPE.
- ERSC CON 0
- DIS 4, **** INCORRECT SERVICE CLASS.
- ERPU CON 0
- DIS 4, **** PASSWORDS UPDATED.
- ERBU CON 0
- DIS 4, **** BATCH PASSWORD UPDATED.
- ERIU CON 0
- DIS 4, **** INTERACTIVE PASSWORD UPDATED.
- ERCS CON 0
- DIS 4, **** CANNOT ALTER SEC. COUNT OF *CSAP*.
- OBS SPACE 4,10
- ** OBS - PROCESS OBSOLETE DIRECTIVE.
- *
- * RETURNS ERROR STATUS TO ISSUE INFORMATIVE DIAGNOSTIC
- * MESSAGE FOR OBSOLETE DIRECTIVE.
- *
- * EXIT (B3) = ERROR MESSAGE ADDRESS.
- OBS SUBR ENTRY/EXIT
- CUE$ IFEQ CUE$,2
- SB3 EROD **** DIRECTIVE IGNORED.
- CUE$ ELSE
- SB3 EROD **** OBSOLETE DIRECTIVE IGNORED.
- CUE$ ENDIF
- EQ OBSX RETURN
- PAG SPACE 4,10
- ** PAG - PAGE K-DISPLAY.
- *
- * ENTRY (X3) = RIGHT JUSTIFIED PAGING CHARACTER.
- *
- * EXIT FWA OF NEXT DISPLAY SET IN *KIA*.
- * (IL) = KEYBOARD INPUT DISPLAY LINE OF CURRENT PAGE.
- *
- * USES X - 1, 2, 3, 4, 6.
- * A - 1, 2, 6.
- * B - 2.
- *
- * CALLS PGD.
- *
- * MACROS PAGT.
- PAG SUBR ENTRY/EXIT
- SA1 KIA
- SX2 X1-DSA
- ZR X2,PAGX IF INITIAL DISPLAY
- SX2 PAGA SET ENTRY CONDITIONS FOR *PGD*
- BX4 X4-X4
- LX3 54
- SX1 KIA
- RJ PGD PAGE DISPLAY
- SA2 PAGA UPDATE INPUT LINE
- AX2 30
- SB2 X2
- SA2 A2+B2 CURRENT PAGE ENTRY
- AX2 36
- SX6 X2+
- SA6 IL
- EQ PAGX RETURN
- PAGA PAGT DSB,MSGB,INPB LEFT SCREEN PAGE 1
- PAGT DSC,MSGC,INPC LEFT SCREEN PAGE 2
- PAGT DSD,MSGD,INPD LEFT SCREEN PAGE 3
- PAGT DSE,MSGE,INPE LEFT SCREEN PAGE 4
- PAGT DSF,MSGF,INPF LEFT SCREEN PAGE 5
- PAGT
- PAGT DSG RIGHT SCREEN PAGE 1
- PAGT DSH RIGHT SCREEN PAGE 2
- PAGT DSJ RIGHT SCREEN PAGE 3
- PAGT *
- PGD HERE REMOTE BLOCK FROM *COMCDCP*
- PDD SPACE 4,15
- ** PDD - PROCESS DIRECTIVE DATA.
- *
- * ENTRY (B7) = PROCESSING ROUTINE INDEX INTO *TOPS*.
- *
- * EXIT (B3) = 0.
- *
- * ERROR (B3) = ERROR MESSAGE ADDRESS.
- *
- * USES A - 0, 1, 2, 3, 5.
- * B - 3, 5, 7.
- * X - 1, 2, 3, 5.
- *
- * CALLS ACI, ICE.
- *
- * MACROS FUNC.
- PDD SUBR ENTRY/EXIT
- SA0 TOPS+B7 SET TABLE ENTRY ADDRESS
- SA3 A0
- BX1 X1-X1
- PL X3,PDD1 IF NO SPECIAL CHARACTERS
- SA1 CA ALLOW ASTERISK IN DATA
- PDD1 SA2 CS SUPPRESS BLANKS
- BX6 X2
- RJ ACI ASSEMBLE DATA
- SB3 ERAD **** ERROR IN ALPHANUMERIC DATA.
- ZR B6,PDDX IF EOF OR NEW USER NAME
- SB5 B5-1R=
- ZR B5,PDDX IF INCORRECT SEPARATOR
- SA3 A0 GET *TOPS* ENTRY
- SB7 X3 PROCESSOR ADDRESS
- SX1 10 CHECK FOR MAXIMUM OF 10 CHARACTERS
- LX3 59-58
- NG X3,PDD2 IF DEFAULT CHARACTER COUNT
- SA1 DF ALLOW ONLY *M* CHARACTERS
- ZR X1,PDD3 IF UNLIMITED CHARACTER COUNT
- PDD2 IX1 X1-X4
- NG X1,PDDX IF INCORRECT CHARACTER COUNT
- PDD3 SA5 CBUF GET ASSEMBLED CHARACTERS
- RJ ICE EXECUTE PROCESSOR
- NZ B3,PDDX IF ERROR OR DATA ALREADY SET
- SX3 TANB SET DATA IN FIELD
- FUNC SDFT
- SB3 B0 NO ERROR
- EQ PDDX RETURN
- TOPS SPACE 4,10
- ** TOPS - TABLE OF PROCESSING SUBROUTINES FOR INPUT DATA.
- *
- *T 1/A,1/D,40/0,18/PROC
- * A SET IF ASTERISK ALLOWED IN IDENTIFIER.
- * D SET IF VALIDATE WITH DEFAULT CHARACTER COUNT (10D).
- * PROC INPUT DATA PROCESSING ROUTINE ADDRESS.
- TOPS BSS 0
- LOC 0
- PMX DTPS AMX ASSEMBLE MAXIMUM RESOURCE LIMITS
- PPW DTPS APW ASSEMBLE PASSWORD
- PEP DTPS AEP ASSEMBLE ENCRYPTED PASSWORD
- PAD DTPS AAD ASSEMBLE ALPHANUMERIC DATA
- POB DTPS OBS PROCESS OBSOLETE DIRECTIVE
- PND DTPS AND,(DCC) ASSEMBLE NUMERIC DATA
- PUI DTPS AUX,(DCC) ASSEMBLE USER INDEX
- PPC DTPS ACW ASSEMBLE PERMISSION CONTROL
- PDA DTPS DAN,(ASK) DELETE USER NAME
- PEA DTPS AEA,(DCC) ASSEMBLE EQUIVALENCED ARGUMENTS
- PCN DTPS ACN,(ASK) ASSEMBLE CHARGE NUMBER
- PPN DTPS APN,(ASK) ASSEMBLE PROJECT NUMBER
- PDS DTPS ADS ASSEMBLE USER DEFAULT SERVICE CLASS
- PTE DTPS ATE,(ASK,DCC) ASSEMBLE EXPIRATION TERM
- PED DTPS AED,(ASK) ASSEMBLE EXPIRATION DATE
- PAV DTPS AAV ASSEMBLE ACCESS PRIVILEGES
- PSC DTPS ASC ASSEMBLE SECURITY COUNT
- PIW DTPS API ASSEMBLE PERSONAL IDENTIFICATION
- LOC *O
- TITLE VALIDATION FILE MANIPULATION.
- FFA SPACE 4,15
- ** FFA - FINISH FORMER USER NAME.
- *
- * ENTRY USER NAME BLOCK ENTERED.
- * (TANB) = DATA BLOCK INFORMATION.
- * (UUFG) .LT. 0, IF REFORMAT OPTION.
- * .EQ. 0, IF USER NAME CREATE OR DELETE.
- * .GT. 0, IF USER NAME UPDATE.
- *
- * EXIT NO ACTION IS TAKEN IF ERRORS EXIST. OTHERWISE -
- * LEVEL-2 ENTRY MADE IN FILE.
- * RANDOM INDEX SET IN LEVEL-1 ENTRY (TAB1).
- * TAB2 RESET.
- *
- * USES X - ALL.
- * A - 1, 2, 3, 4, 5, 6, 7.
- * B - 2, 3.
- *
- * CALLS AUI, CUI, IAM, IDE, WDB.
- *
- * MACROS ALLOC, MOVE, SEARCH.
- FFA9 SA2 UF CHECK MODE
- SX6 B0+
- SA6 RA2
- ZR X2,FFA10 IF NOT UPDATE
- SA6 L.TAB1 CLEAR TABLES
- SA6 L.TAB2
- SA6 FFAB
- FFA10 RJ IAM ISSUE ACCOUNT FILE MESSAGE
- BX6 X6-X6 CLEAR KEY LOCATIONS
- BX7 X7-X7
- SA6 CW CONTROL WORD AREA
- SA6 A6+B1
- SA7 A6+B1
- SA6 DANA DELETE FLAG
- SA7 EF ERROR FLAG
- SA6 RA2+1 LEVEL-2 LINKAGE
- SA7 DIPC K-CREATE ONLY FLAG
- SA6 A7+1 K-UPDATE ONLY FLAG
- SA6 UUFG USER NAME UPDATE FLAG
- FFA SUBR ENTRY/EXIT
- SA3 EF CHECK INPUT ERRORS
- NZ X3,FFA9 IF ERRORS
- CUE$ IFEQ CUE$,2
- * ENSURE THAT THE CORRECT SHELL PROGRAM NAME AND THE CORRECT
- * SHELL OPTIONS ARE SET FOR THE CD2000 USER ENVIRONMENT.
- SA1 AN GET USER NAME
- MX0 42
- BX1 X0*X1
- SA2 =6LCDCCHS
- BX5 X1-X2
- NZ X5,FFA11 IF USER NAME IS NOT *CDCCHS*
- SA1 FFAE
- EQ FFA13 SET *RMSHELL* AS SHELL PROGRAM NAME
- FFA11 SA1 TANB+AUIN GET USER INDEX
- MX0 -18
- BX5 -X0*X1
- SX1 X5-AUIMX
- PL X1,FFA12 IF USER INDEX ABOVE *AUIMX*
- SA1 FFAF
- EQ FFA13 SET *CDSHELL* AS SHELL PROGRAM NAME
- FFA12 SA1 FFAG SET NULL SHELL PROGRAM NAME
- FFA13 BX6 X1 SET SHELL PROGRAM NAME AND OPTIONS
- SA6 TANB+ASHN
- CUE$ ENDIF
- SA1 TANB+ACCN
- MX0 -18
- BX5 -X0*X1
- SX1 X5-AUIMX
- NG X1,FFA0 IF USER INDEX NOT ABOVE *AUIMX*
- SA1 FFAC SET ALL SERVICE CLASS VALIDATION FLAGS
- BX6 X1
- SA6 TANB+ASCV
- EQ FFA0.5 CHECK FOR DELETES
- * ENSURE THAT THE VALIDATION BITS FOR THE USER DEFAULT SERVICE
- * CLASSES ARE SET IN THE VALIDATION MASK.
- FFA0 SA3 CHFG
- SA1 TANB+ASCV
- NZ X3,FFA0.3 IF NO CHECK TO BE MADE
- SA5 TANB+ASC1 GET SERVICE CLASS VALIDATION WORDS
- LX5 11-59
- SA3 TOSC-1
- MX0 6 SEARCH TABLE FOR SERVICE CLASS ENTRY
- LX0 18
- FFA0.1 SB7 B0 INITIALIZE TABLE INDEX
- SA3 A3+B1
- LX5 6
- SB3 X3
- ZR X3,FFA0.3 IF END OF TABLE
- NG B3,FFA0.1 IF ORIGIN TYPE NOT ALLOWED
- FFA0.2 SA2 TSVM+B7
- ZR X2,FFA0.1 IF END OF TABLE
- SA4 TSCV+B7 GET MASK BIT
- SB7 B7+B1 INCREMENT TABLE INDEX
- BX3 X2-X5
- BX3 X0*X3
- NZ X3,FFA0.2 IF NO MATCH
- BX1 X4+X1 SET BIT IN VALIDATION MASK
- EQ FFA0.1 PROCESS NEXT USER DEFAULT
- FFA0.3 SA2 UUFG
- NZ X2,FFA0.4 IF NOT NEW USER NAME
- SA3 TANB+AHDT CHECK IF *DI* SERVICE CLASS SHOULD BE SET
- MX0 -6
- LX3 -18
- BX4 -X0*X3
- ZR X4,FFA0.4 IF NO DETACHED JOBS ALLOWED
- SX2 DIMK SET *DI* SERVICE CLASS VALID
- BX1 X1+X2
- FFA0.4 BX7 X1 UPDATE VALIDATION MASK
- SA7 A1+
- * PROCESS DELETES.
- FFA0.5 SA1 AN CHECK BLOCK IN LEVEL-2 TABLE
- MX0 42
- SEARCH TAB2,X1,M
- SA1 F.TAB2 SAVE RELATIVE POSITION IN TABLE
- BX5 X2
- IX7 X7-X1
- SA3 DANA CHECK DELETED USER NAME
- SA7 FFAA
- ZR X3,FFA2 IF NO DELETE
- ZR X2,FFA1 IF NO MATCH
- MX6 0 CLEAR LEVEL-2 ENTRY
- BX7 X2 SAVE USER NAME IN PASSWORD AREA
- SA6 A2
- SA7 A2+B1
- SA1 AN
- MX0 42
- SEARCH TAB1,X1,M
- FFA1 BX1 X2
- SX2 DMSE * SYSTEM ERROR.*
- MX6 0
- ZR X1,ABT IF NO MATCH
- SA6 X7+
- EQ FFA8 COMPLETE DELETE
- * SET DATA BLOCK IN LEVEL-2 TABLE.
- FFA2 SA4 OP CHECK OPTION
- SX4 X4-ROPT
- SA1 TANB+AUIN SET USER NAME AND USER INDEX
- ZR X4,FFA3 IF REFORMAT
- SA3 AN
- MX0 42
- BX1 -X0*X1
- BX3 X0*X3
- IX6 X1+X3
- SA3 TANB+ACMD SET LAST MOD DATE
- SA4 PD
- BX3 X0*X3
- BX7 X3+X4
- SA7 A3
- SA6 A1
- NZ X1,FFA3 IF USER INDEX ALREADY ASSIGNED
- RJ AUI
- NG X0,FFA4 IF USER INDEX ASSIGNED
- RJ IDE
- EQ FFA10 RETURN
- FFA3 BX0 X0-X0 SET USER INDEX
- SX6 X1
- RJ CUI
- FFA4 NZ X5,FFA6 IF MATCH
- SA2 L.TAB2
- SX2 X2-ABLB
- NG X2,FFA5 IF BLOCK NOT FULL
- BX6 X6-X6
- SA6 A2 CLEAR TABLE
- FFA5 ALLOC TAB2,C.TAB2
- FFA6 SA3 FFAA SET UPDATED BLOCK
- SA1 F.TAB2
- IX3 X3+X1
- MOVE ARBS,TANB,X3
- * SET USER NAME.
- SA1 AN SET FOR LEVEL-1 UPDATE
- SX2 DMSE * SYSTEM ERROR.*
- SA3 FFAB-1
- SB3 ARBB
- SB2 B0+
- BX6 X1
- FFA7 SB2 B2+B1
- SA3 A3+B1
- GT B2,B3,ABT IF TABLE OVERFLOWED
- NZ X3,FFA7 IF ENTRY USED
- SA6 A3+
- EQ B2,B3,FFA8 IF TABLE FULL
- SA1 UF CHECK MODE
- ZR X1,FFA10 IF NOT UPDATE
- FFA8 RJ WDB WRITE DATA BLOCK
- EQ FFA10 RETURN
- FFAA CON 0 HOLD TAB2 ENTRY
- FFAB BSSZ ARBB+1 HOLD USER NAMES FOR RANDOM ADDRESS
- FFAC VFD 36/0,12/A2MK,12/A1MK VALIDATION MASK FOR *ALL*
- FFAD CON 0 CREATION RUN FLAG
- CUE$ IFEQ CUE$,2
- FFAE VFD 42/0LRMSHELL,11/0,7/13B
- FFAF VFD 42/0LCDSHELL,11/0,7/13B
- FFAG VFD 42/0,11/0,7/12B
- CUE$ ENDIF
- GAE SPACE 4,15
- ** GAE - GET USER ENTRY.
- *
- * ENTRY (X4) = USER TO BE SEARCHED FOR.
- * (A0) = ADDRESS TO START SEARCH.
- * (GAEA) = ENTRY COUNT.
- *
- * EXIT IF ENTRY FOUND.
- * TO *ABT* IF NOT.
- *
- * USES X - 1, 2, 3, 5, 6.
- * A - 1, 3, 5, 6.
- * B - 3, 4, 5, 7.
- GAE3 SA3 B3+B7 MOVE LOOP
- BX6 X3
- SA6 TANB+B7
- SB7 B7+1
- LT B7,B4,GAE3 IF NOT ALL MOVED
- GAE SUBR ENTRY/ EXIT
- SA1 GAEA GET ENTRY COUNT
- ZR X1,GAE2 IF NO ENTRIES
- SX2 ARBS WORDS/ ENTRY
- SB3 A0 FWA
- SB4 X2 INCREMENT
- IX2 X2*X1 WORDS IN BLOCK
- SB7 B0
- SB5 X2+B3 LIMIT
- MX1 42 MASK
- SA5 B3 FIRST WORD
- GAE1 BX5 X1*X5
- BX6 X5-X4
- ZR X6,GAE3 IF HIT
- SB3 B3+B4
- SA5 B3
- LT B3,B5,GAE1 IF MORE TO SEARCH
- GAE2 SX2 DML2 * LEVEL-2 DATA BASE ERROR.*
- EQ ABT
- GAEA BSS 1 ENTRY COUNT
- GNB SPACE 4,15
- ** GNB - GET NEXT DATA BLOCK.
- *
- * ENTRY (X6) = 1 IF INITIAL CALL.
- * (X6) = 0 IF NOT INITIAL CALL.
- * (GNBA) = LEVEL-1 BLOCK FUNCTION IN BITS 0-17 AND
- * BIT 59 SET IF TO CLEAR LEVEL-1 TABLE.
- *
- * EXIT (X6) = 0 IF END OF USER ENTRIES.
- * (TANB) = LEVEL-2 DATA BLOCK USER ENTRY.
- *
- * USES X - 0, 1, 2, 3, 5, 6, 7.
- * A - 0, 1, 2, 6, 7.
- * B - 4.
- *
- * MACROS FUNC, MESSAGE, READ, READW, RECALL.
- GNB5 SA1 AN CHECK USER NAME
- SA2 TANB+AUIN
- MX0 42
- BX3 X0*X2
- BX1 X1-X3
- SX6 X2
- NZ X1,GNB3 IF NO MATCH
- ZR X6,GNB4 IF NO USER INDEX
- GNB SUBR ENTRY/EXIT
- ZR X6,GNB2 IF NOT INITIAL CALL
- SA6 RA0+1 SET INITIAL LEVEL-0 RANDOM ADDRESS
- GNB1 SX0 P
- SA0 B0+
- FUNC PNAT PICK NEXT LEVEL-0 BLOCK
- ZR X6,GNBX IF END OF USER ENTRIES
- LX6 X3
- BX7 X7-X7
- SA1 GNBA
- SA6 RA1+1
- PL X1,GNB2 IF NOT TO CLEAR LEVEL-1 TABLE
- SA7 L.TAB1 CLEAR LEVEL-1 TABLE
- GNB2 RECALL P
- SA1 P+1
- SX6 X1
- SA6 A1+B1
- SA6 A6+B1
- SA0 B1
- SX0 P
- SX5 N
- SA1 GNBA GET LEVEL-1 BLOCK FUNCTION
- FUNC X1
- ZR X6,GNB1 IF END OF BLOCK
- RECALL P
- SA2 A3-B1 SET LEVEL-2 ENTRY USER NAME
- BX6 X2
- SA6 AN
- SX6 B1+ SET LEVEL-2 RANDOM ADDRESS
- LX6 29
- BX6 X3+X6
- SA6 P+6
- READ P
- READW P,CW,1
- FUNC CCWT CRACK CONTROL WORD
- SB4 B4-2
- NZ B4,GNB4 IF LEVEL NUMBER WRONG
- READW P,TANB,B2-B1
- GNB3 READW P,TANB,ARBS
- ZR X1,GNB5 IF TRANSFER COMPLETE
- GNB4 MESSAGE DML2,3 * LEVEL-2 DATA BASE ERROR.*
- EQ GNB2 LOOP FOR NEXT BLOCK
- GNBA CON 0 LEVEL-1 BLOCK FUNCTION AND CLEAR FLAG
- RDB SPACE 4,15
- ** RDB - READ DATA BLOCK.
- *
- * ENTRY (X5) = RANDOM ADDRESS OF DATA BLOCK.
- * (RDBA) .NE. 0, IF NOT EXACT HIT.
- *
- * EXIT DATA BLOCK READ.
- * USER ENTRY SET IN *TANB* IF EXACT HIT.
- * (X1) .NE. 0, IF NOT EXACT HIT.
- * (X2) = ERROR MESSAGE.
- *
- * USES A - ALL.
- * B - 4.
- * X - 1, 2, 3, 4, 5, 6, 7.
- *
- * CALLS GAE.
- *
- * MACROS ALLOC, FUNC, READ, READO, READW, RECALL.
- RDB SUBR ENTRY/ EXIT
- RECALL P
- RECALL N
- SX7 B1 READ LEVEL-2 BLOCK
- LX7 29
- BX6 X7+X5
- BX7 X5
- SA6 N+6
- SA7 RA2
- MX6 0
- SA6 A7+B1
- READ N
- READO N GET CONTROL WORD
- SA6 CW
- FUNC CCWT
- SB4 B4-B1 CHECK LEVEL NUMBER
- SX6 B5
- SA6 GAEA
- SX2 DML2 * LEVEL-2 DATA BASE ERROR.*
- NE B1,B4,ABT IF NOT 2
- ALLOC TAB2,B3
- READO N
- READO N
- SA2 F.TAB2
- READW N,X2,B3 GET BLOCK
- SX2 DML2 * LEVEL-2 DATA BASE ERROR.*
- NZ X1,ABT IF TRANSFER INCOMPLETE
- SA4 AN
- SA1 N+2 CHECK WORDS LEFT IN BUFFER
- SA3 F.TAB2
- SA5 A1+B1
- SA0 X3
- BX1 X1-X5
- NZ X1,ABT IF WORD COUNT NOT EXACT
- * SET DATA BLOCK.
- SA1 RDBA CHECK HIT
- NZ X1,RDBX IF NOT EXACT
- RJ GAE GET USER ENTRY
- MX1 0 SET STATUS
- EQ RDBX RETURN
- RDBA CON 1 BLOCK FOUND FLAG
- WDB SPACE 4,15
- ** WDB - WRITE DATA BLOCK.
- *
- * ENTRY (TAB2) = USER ENTRIES IN LEVEL-2 BLOCK.
- * (FFAB) = USER NAMES IN LEVEL-2 BLOCK.
- *
- * EXIT LEVEL-2 BLOCK WRITTEN TO FILE.
- * *TAB2*, *FFAB*, *RAND*, *RA2*, UPDATED APPROPRIATELY.
- *
- * USES X - 0, 1, 4, 5, 6, 7.
- * A - 0, 1, 4, 5, 6, 7.
- * B - 5, 7.
- *
- * MACROS ALLOC, FUNC, MESSAGE, SEARCH.
- WDBBE EQU ARBB*ARBS DATA WORDS IN FULL LEVEL-2 BLOCK
- WDB8 MX6 0 CLEAR USER ENTRY
- SA6 A4
- SA6 FFAB CLEAR LEVEL-1 USER NAME
- WDB9 SX6 B0+ CLEAR RANDOM ADDRESS POINTER
- SA6 RA2+1
- WDB SUBR ENTRY/ EXIT
- SA1 L.TAB2 SET FULL BLOCK FLAG
- SX6 X1-WDBBE
- SA6 WDBB
- MX0 0 WRITE LEVEL-2 BLOCK
- R= A0,TAB2
- SX5 N
- FUNC WTBT
- * UPDATE LEVEL-1.
- SA4 FFAB INITIALIZE SEARCH
- WDB1 MX0 42
- ZR X4,WDB4 IF NO USER NAME
- SEARCH TAB1,X4,M
- MX6 0
- SA4 A4
- SA6 A4
- BX6 X4
- SA1 UF CHECK MODE
- SA6 WDBA
- ZR X1,WDB2 IF NOT UPDATE
- NZ X2,WDB8 IF ENTRY ALREADY EXISTS EXIT
- WDB2 SA1 F.TAB1 PRESERVE RELATIVE ADDRESS
- IX7 X7-X1
- SB7 X7
- SB5 A4
- NZ X2,WDB3 IF ENTRY ALREADY EXISTS
- ALLOC TAB1,C.TAB1
- WDB3 SA1 F.TAB1
- SA4 WDBA
- SA5 RA2+1
- BX6 X4
- LX7 X5
- SA6 B7+X1
- SA7 A6+B1
- SA4 B5+1
- EQ WDB1 LOOP FOR NEXT USER
- WDB4 SA1 WDBB SET CURRENT AVAILABLE DATA RECORD
- SA4 RA2+1
- MX6 0
- ZR X1,WDB5 IF FULL
- BX6 X4
- WDB5 SA1 DANA CHECK DELETE
- NZ X1,WDB6 IF DELETE
- SA6 RAND
- WDB6 SA1 UF CHECK MODE
- ZR X1,WDBX IF NOT UPDATE
- SA0 TAB1 TABLE NUMBER
- FUNC STBT SORT TABLE
- SA1 L.TAB1 CHECK INDEX BLOCK LINKAGE
- SX1 X1-ABLI-1
- NG X1,WDB7 IF NO LINKAGE
- SA1 DML1 * LEVEL-1 INDEX BLOCKS LINKED.*
- ZR X1,WDB7 IF ALREADY DISPLAYED
- MESSAGE A1,3,R ISSUE MESSAGE
- SX6 B0+
- SA6 DML1
- WDB7 R= A0,TAB1 WRITE TABLE
- MX0 0
- SX5 N
- FUNC WTBT
- EQ WDB9 CLEAR RANDOM ADDRESS AND EXIT
- WDBA BSS 1 USER TO UPDATE
- WDBB CON 0 AVAILABLE DATA BLOCK FLAG
- TITLE SOURCE CONVERSION SUBROUTINES.
- ADP SPACE 4,10
- ** ADP - ADD PARENS.
- *
- * ENTRY (X6) = 6 CHARACTERS, RIGHT-JUSTIFIED, TO BE
- * ENCLOSED BY PARENS.
- *
- * EXIT (X7) = 6 CHARACTERS ENCLOSED BY PARENS.
- *
- * USES X - 1, 2, 7.
- * A - 1.
- ADP SUBR ENTRY/EXIT
- BX2 X6
- LX2 24
- MX1 36
- BX2 X1*X2 ISOLATE UPPER 6 CHARACTERS
- SA1 =4R) (
- BX7 X1+X2 ADD PARENS
- LX7 42 REPOSITION CHARACTERS
- EQ ADPX RETURN
- AOC SPACE 4,10
- ** AOC - ALTERNATE OCTAL CONVERSION.
- *
- * ENTRY (A0) = ADDRESS OF *TFR* ENTRY FIRST WORD.
- * (X1) = DATA FIELD RIGHT JUSTIFIED.
- *
- * EXIT (X6) = FIRST WORD OF CONVERTED NUMBER.
- * (X7) = SECOND WORD OF CONVERTED NUMBER.
- *
- * USES A - 2, 4.
- * B - 2, 3.
- * X - 1, 2, 4, 7.
- *
- * CALLS WOD.
- AOC SUBR ENTRY/EXIT
- RJ WOD
- SA4 A0 GET WORD 1 OF ENTRY
- LX4 59-30
- PL X4,AOCX IF NOT MULTIPLE WORD RESULT
- LX4 24-59+30
- MX2 -6
- BX2 -X2*X4 GET NUMBER OF CHARACTERS IN MULTIPLE WORD
- MX1 1
- SB2 X2-10
- SB2 B2+B2
- SB3 B2+B2
- SB2 B3+B2
- SB2 B2-B1
- AX1 B2
- BX7 X1*X7 MASK OFF UNUSED CHARACTERS
- SA2 =10H
- BX2 -X1*X2 BLANK FILL REMAINDER OF WORD
- BX7 X7+X2
- EQ AOCX RETURN
- APC SPACE 4,10
- ** APC - APPLICATION PERMISSIONS CONVERSION FOR DISPLAY.
- *
- * ENTRY (TANB+AAVW) = APPLICATION PERMISSION WORD.
- *
- * EXIT APPLICATION PERMISSION PAGE OF K-DISPLAY SET.
- *
- * USES X - 2, 3, 4, 5, 6, 7.
- * A - 3, 4, 5, 6.
- * B - 3, 4, 5, 7.
- APC SUBR ENTRY/EXIT
- SA4 TANB+AAVW GET APPLICATION PERMISSIONS
- SB3 59
- SA5 TNAV-1 APPLICATION BIT POSITIONS AND NAMES
- SB7 DSAP+1 INITIALIZE K-DISPLAY POINTER
- MX2 -12
- MX7 42
- APC1 SA5 A5+B1
- ZR X5,APCX IF END OF APPLICATION TABLE
- BX3 -X2*X5
- NG X5,APC1 IF SPARE APPLICATION BIT
- SB5 X3 ACCESS BIT NUMBER
- SB4 B3-B5
- LX3 X4,B4 POSITION ACCESS BIT
- BX6 X7*X5 APPLICATION NAME
- SB4 =10HOFF
- PL X3,APC2 IF APPLICATION NOT PERMITTED
- SB4 =10HON
- APC2 SA6 B7+B1 SET APPLICATION NAME
- SA3 B4
- BX6 X3 SET ON/OFF STATUS
- SA6 B7
- SB7 B7+3
- EQ APC1 PROCESS NEXT APPLICATION
- CAV SPACE 4,15
- ** CAV - CALCULATE ACTUAL VALUE.
- *
- * ENTRY (A0) = ADDRESS OF *TFR* ENTRY FIRST WORD.
- * (X1) = INDEX VALUE TO BE CONVERTED TO ACTUAL VALUE.
- *
- * EXIT (X3) = 0 IF NO ACTUAL VALUE CONVERSION REQUIRED.
- * ACTUAL VALUE STORED IN LIMITS MESSAGE.
- * ACTUAL VALUE IN PARENS STORED AT K-DISPLAY ADDRESS +1.
- *
- * USES A - 2, 4, 5, 6, 7.
- * B - 3, 4, 7.
- * X - ALL.
- *
- * CALLS ADP, CDD, COD, ICE, INDEX CONVERSION PROCESSORS.
- CAV SUBR ENTRY/EXIT
- SA4 A0 GET 1ST WORD OF ENTRY
- MX0 -6
- LX4 -18
- BX3 -X0*X4
- ZR X3,CAVX IF NO ACTUAL VALUE CONVERSION
- SA2 A0+2 GET 3RD WORD OF ENTRY
- AX2 36
- SB7 X2 PROCESSOR ADDRESS
- AX2 18
- SB4 X2 SHIFT VALUE
- SB3 X3
- LX4 59-32+18-60
- RJ ICE CALCULATE ACTUAL VALUE
- SA2 =10H
- BX6 X2
- LX7 X2
- PL X4,CAV1 IF NOT ZERO SYSTEM DEFAULT CASE
- ZR X1,CAV4 IF SYSTEM DEFAULT VALUE
- CAV1 NG X1,CAV4 IF UNLIMITED
- LX1 B4
- EQ B3,B1,CAV2 IF OCTAL CONVERSION
- RJ CDD CONVERT ACTUAL VALUE TO DECIMAL DISPLAY
- EQ CAV3 ADD PARENS
- CAV2 RJ CON CONVERT ACTUAL VALUE TO OCTAL DISPLAY
- CAV3 RJ ADP ADD PARENS
- SA5 A0+B1
- AX5 36
- ZR X5,CAV4 IF NO LIMITS MESSAGE
- SA6 X5+5 ENTER ACTUAL VALUE IN LIMITS MESSAGE
- CAV4 SA5 A0+B1
- AX5 18
- SX5 X5+
- ZR X5,CAVX IF NO K-DISPLAY FIELD
- SA7 X5+1
- EQ CAVX RETURN
- CDS SPACE 4,15
- ** CDS - CONVERT DATE TO SOURCE.
- *
- * ENTRY (A1) = ADDRESS OF DATE.
- * (X1) = DATE IN FORM * YY/MM/DD.*.
- *
- * EXIT DATE STORED IN FORM *YYMMDD*.
- * DATE RESET TO * IF NONEXPIRING.
- *
- * USES X - 1, 2, 3, 6, 7.
- * A - 2, 3, 7.
- * B - 2.
- CDS SUBR ENTRY/EXIT
- SA2 =10H *
- SA3 =10H
- BX7 X1-X3
- ZR X7,CDS2 IF NONEXPIRING PASSWORD
- MX6 -12
- SB2 B1+B1
- BX7 X7-X7
- CDS1 LX1 18
- BX2 -X6*X1
- BX7 X7+X2
- LX7 12
- SB2 B2-B1
- PL B2,CDS1 IF MORE DATE TO EXTRACT
- SX2 2R
- BX7 X7+X2
- LX7 12
- CDS2 BX7 X7+X2
- SA7 A1
- EQ CDSX RETURN
- CON SPACE 4,10
- ** CON - CONVERT OCTAL NUMBER TO DISPLAY.
- *
- * ENTRY (X1) = OCTAL NUMBER.
- *
- * EXIT (X6) = OCTAL NUMBER IN DISPLAY CODE WITH POST RADIX B.
- *
- * CALLS COD, ISB.
- CON SUBR ENTRY/EXIT
- RJ COD CONVERT OCTAL TO DISPLAY
- RJ ISB INSERT B RADIX
- EQ CONX RETURN
- CPS SPACE 4,15
- ** CPS - CONVERT PERMISSIONS TO SOURCE.
- *
- * EXIT PERMISSION BITS CONVERTED AND WRITTEN TO SOURCE.
- *
- * USES A - 0, 2, 4, 5, 6, 7.
- * B - 2.
- * X - 1, 2, 3, 4, 5, 6, 7.
- *
- * CALLS SFN, STB.
- *
- * MACROS WRITEC.
- CPS SUBR ENTRY/EXIT
- SA0 TPCS-1
- CPS1 SA0 A0+B1 GET NEXT PERMISSION WORD
- SA1 A0
- SA2 =3HNUL
- ZR X1,CPSX IF END OF TABLE
- LX7 X1
- BX6 X2
- LX1 18
- SA7 CPSA
- SA6 X1+B1
- WRITEC S,A6-B1 INITIALIZE IDENTIFIER VALUE
- CPS2 SA5 CPSA GET PERMISSION WORD PARAMETERS
- MX2 6
- LX2 6
- BX1 X2*X5 NEXT BIT POSITION
- SX6 B1
- IX7 X5+X6
- LX5 -6
- BX3 X2*X5 LAST BIT POSITION + 1
- IX3 X1-X3
- PL X3,CPS1 IF NO MORE BITS TO PROCESS
- LX5 -30
- BX4 X2*X5 VALIDATION WORD OFFSET
- SA4 TANB+X4
- SA7 A5
- SB2 X1
- LX6 B2
- BX6 X6*X4
- ZR X6,CPS2 IF BIT NOT SET
- LX5 24
- SB2 X5 TABLE OF PERMISSION IDENTIFIERS
- RJ STB
- ZR X3,CPS2 IF BIT NOT DEFINED
- MX6 42
- BX1 X6*X3
- RJ SFN SPACE FILL IDENTIFIER
- LX5 -30
- SA6 X5+B1
- WRITEC S,A6-B1 WRITE IDENTIFIER
- EQ CPS2 CONTINUE PERMISSION BIT CONVERSION
- CPSA CON 0 PERMISSION WORD PARAMETERS
- TPCS SPACE 4,10
- ** TPCS - TABLE OF PERMISSION BITS CONVERSION TO SOURCE.
- *
- *T 18/SA,6/UBO,6/0,18/TPI,6/LBP,6/FBP
- * SA SOURCE ENTRY ADDRESS.
- * UBO USER BLOCK OFFSET OF VALIDATION WORD.
- * TPI TABLE OF VALIDATION PERMISSION IDENTIFIERS.
- * LBP LAST BIT POSITION + 1.
- * FBP FIRST BIT POSITION.
- TPCS BSS 0
- DTCS TMAW,AAWC,TAWI,60D,0 ACCESS WORD
- DTCS TMAP,AAVW,TNAV,NNAB+AFAB,AFAB APPLICATIONS
- DTCS TMSO,ASHN,TRTP,TRTPL,0 SHELL PROGRAM
- DTCS TMAV,ASVW,TAPV,TAPVL,TAPVS SECURITY VALIDATION
- DTCS TMLV,ASVW,TALB,TALBS,TALBS-TALBL ACCESS LEVEL
- DTCS TMAC,ASVW,TACC,TACCL,0 ACCESS CATEGORY
- DTCS TMVM,ASCV,TSVM,TSVML,0 SERVICE CLASS
- CON 0 END OF TABLE
- CSC SPACE 4,15
- ** CSC - CONVERT USER DEFAULT SERVICE CLASSES.
- *
- * ENTRY (A0) = ADDRESS OF *TFR* ENTRY FIRST WORD.
- * (X1) = DATA FIELD RIGHT JUSTIFIED.
- *
- * EXIT (X6) = SERVICE CLASS IDENTIFIERS.
- *
- * USES B - 2, 3.
- * X - ALL.
- *
- * CALLS STB.
- CSC SUBR ENTRY/EXIT
- SB2 TSVM
- SB3 48
- LX5 X1
- BX7 X7-X7
- LX5 -12
- MX2 6
- LX2 18
- CSC1 BX1 X2*X5 EXTRACT SERVICE CLASS CHARACTER
- MX4 -12
- SX0 2R
- ZR X1,CSC2 IF NO VALUE DEFINED
- RJ STB LOCATE SERVICE CLASS CHARACTER IN TABLE
- ZR X3,CSC2 IF NO MATCH
- LX3 12 GET 2 CHARACTER SERVICE CLASS IDENTIFIER
- BX0 -X4*X3
- CSC2 LX0 B3
- BX7 X7+X0
- SB3 B3-12
- LX5 6
- PL B3,CSC1 IF MORE ENTRIES TO PROCESS
- BX6 X7
- EQ CSCX RETURN
- CSD SPACE 4,15
- ** CSD - CONVERT USER DEFAULT SERVICE CLASSES TO SOURCE.
- *
- * ENTRY (TMUC+1) = SERVICE CLASS IDENTIFIERS.
- * (LMFG) = 0 IF NOT PROCESSING LIMITS.
- *
- * EXIT USER DEFAULT SERVICE CLASSES WRITTEN TO SOURCE
- * FILE OR LIMITS OUTPUT.
- *
- * USES A - 1, 5, 6.
- * X - 0, 1, 5, 6, 7.
- *
- * CALLS SFN.
- *
- * MACROS WRITEC.
- CSD SUBR ENTRY/EXIT
- SA1 TMUC+1 GET CONVERTED DEFAULT SERVICE CLASSES
- BX0 X1
- SA5 TOSC
- CSD1 SA5 A5+B1
- MX7 12
- BX6 X7*X0
- LX0 12
- ZR X5,CSDX IF END OF TABLE
- SX1 X5+
- NG X1,CSD1 IF RESERVED ENTRY
- SA1 LMFG
- NZ X1,CSD2 IF PROCESSING LIMITS
- BX7 X7*X5 GET ORIGIN TYPE
- LX6 -12
- BX1 X7+X6
- RJ SFN SPACE FILL IDENTIFIER
- SA6 TMUC+1
- WRITEC S,A6-B1 WRITE DIRECTIVE TO SOURCE
- EQ CSD1 PROCESS NEXT IDENTIFIER
- CSD2 SX1 1R
- BX6 X6+X1
- LX6 -6
- SA6 X5+5
- WRITEC O,X5 WRITE LIMITS MESSAGE
- EQ CSD1 PROCESS NEXT IDENTIFIER
- DAT SPACE 4,10
- ** DAT - CONVERT PACKED DATE TO DISPLAY.
- *
- * ENTRY (X1) = DATA FIELD RIGHT JUSTIFIED.
- *
- * EXIT (X6) = CONVERTED DATE IN FORM * YY/MM/DD.*.
- *
- * USES A - 2.
- * X - 2, 6.
- *
- * MACROS EDATE.
- DAT SUBR ENTRY/EXIT
- SA2 =10H
- BX6 X2
- ZR X1,DATX IF NO EXPIRATION DATE
- EDATE X1 UNPACK DATE INTO DISPLAY
- EQ DATX RETURN
- ISB SPACE 4,10
- ** ISB - INSERT B (RADIX).
- *
- * ENTRY (X6) = RIGHT JUSTIFIED DISPLAY CODE FOR OCTAL NUMBER.
- *
- * EXIT (X6) = RIGHT JUSTIFIED DISPLAY CODE FOR OCTAL NUMBER
- * WITH RADIX INSERTED ON RIGHT.
- *
- * USES X - 0, 1, 6.
- ISB SUBR ENTRY/EXIT
- MX0 54
- LX6 6
- SX1 1RB
- BX6 X0*X6
- BX6 X1+X6
- EQ ISBX RETURN
- MRJ SPACE 4,15
- ** MRJ - MULTIPLE WORD RIGHT JUSTIFY.
- *
- * ENTRY (A2) = ADDRESS WHERE 2ND WORD IS STORED
- * IN LIMITS MESSAGE.
- * (X2) = 1ST WORD, RIGHT JUSTIFIED, BLANK FILLED.
- * (X6) = 2ND WORD, RIGHT JUSTIFIED, BLANK FILLED.
- *
- * EXIT 1ST AND 2ND WORDS STORED IN LIMITS MESSAGE
- * AFTER MULTIPLE WORD RIGHT JUSTIFICATION PROCESSED.
- *
- * USES A - 4, 6, 7.
- * B - 2, 3, 4.
- * X - 0, 2, 3, 4, 6, 7.
- MRJ2 BX7 X2 STORE 1ST WORD
- SA7 A2
- MRJ SUBR ENTRY/EXIT
- SA4 =10H
- SB2 B0
- BX3 X6-X4
- ZR X3,MRJ2 IF NO VALUE IN 2ND WORD
- BX7 X2
- SA7 A2-B1
- MX0 6
- BX7 X0*X3
- NZ X7,MRJX IF BOTH WORDS FULL
- MRJ1 LX0 -6
- BX7 X0*X3
- SB2 B2+6
- ZR X7,MRJ1 IF BLANK CHARACTER
- SB3 60
- MX0 1
- SB4 B2-B1
- AX0 B4
- SB3 B3-B2
- LX2 B3
- BX7 X0*X2
- BX6 -X0*X6
- BX7 X7+X6
- SA7 A2 STORE 2ND WORD
- BX6 -X0*X2
- BX4 X0*X4
- BX6 X6+X4
- SA6 A2-B1 STORE FIRST WORD
- EQ MRJX RETURN
- PLM SPACE 4,15
- ** PLM - PRINT *LIMITS* MESSAGES.
- *
- * EXIT ALL *LIMITS* MESSAGES ISSUED.
- *
- * USES A - ALL.
- * B - 2, 3.
- * X - ALL.
- *
- * CALLS CSD, SFN.
- *
- * MACROS CLOCK, DATE, GETJO, GETPFP, TSTATUS, WRITEC.
- PLM8 WRITEC O,(=C* *),B1 WRITE BLANK LINE
- WRITEC X2,USUD WRITE HEADER
- RJ CSD CONVERT USER DEFAULT SERVICE CLASSES
- PLM SUBR ENTRY/EXIT
- SA2 DSAN GET USER NAME
- MX7 -54
- AX2 6
- SA1 USRN
- BX7 -X7*X2
- BX7 X1+X7
- SA7 A1
- DATE TODT REQUEST DATE
- CLOCK TOTM REQUEST TIME
- GETJO TSTATUS GET JOB ORIGIN
- SA1 TSTATUS
- SX1 X1-TXOT
- NZ X1,PLM1 IF NOT *TXOT*
- TSTATUS TSTATUS
- SA3 TSTATUS
- SA2 =0LNAMIAF
- MX1 36
- BX3 X1*X3
- BX6 X3-X2
- NZ X6,PLM1 IF NOT NETWORK TERMINAL
- SA6 TFPA+1 CLEAR NON-NETWORK TERMINAL LIMITS MESSAGES
- SA6 TFRO+1
- SA6 TFPX+1
- SA6 TFTT+1
- PLM1 GETPFP PLMA REQUEST FAMILY NAME
- SA1 PLMA
- BX6 X6-X6 CLEAR POINTERS
- SA6 A1+B1
- SA6 A6+B1
- RJ SFN SPACE FILL NAME
- SA2 FAM
- LX6 59-17
- MX3 -42
- BX6 -X3*X6
- BX6 X2+X6
- SA0 TFR TABLE TO FORMAT RECORDS
- SA6 A2
- SA5 OF
- BX0 X0-X0
- ZR X5,PLM3.1 IF OUTPUT TO TERMINAL
- PLM2 SA1 A0 GET WORD 1 OF ENTRY
- SA2 A0+B1 GET WORD 2 OF ENTRY
- ZR X1,PLM6 IF END OF TABLE
- SA1 A2+B1 GET WORD 3 OF ENTRY
- AX2 36
- BX0 X2
- SA0 A1+B1 ADVANCE TABLE ENTRY
- SX5 X1
- BX2 X0+X5
- ZR X2,PLM2 IF NO LIMITS OR HEADER MESSAGE
- SA2 OF
- ZR X2,PLM4 IF OUTPUT TO TERMINAL
- SX7 B1+
- ZR X5,PLM3 IF NO HEADER
- SX7 B1+B1
- ZR X0,PLM3 IF NO LIMITS MESSAGE
- SX7 X7+B1
- PLM3 SA2 PLMB
- IX6 X2-X7
- SA6 A2
- PL X6,PLM4 IF ENOUGH ROOM ON PAGE
- SA3 LPPG
- SX6 X3-2
- IX6 X6-X7
- SA6 A2
- PLM3.1 WRITEC O,LITL WRITE PAGE HEADER
- WRITEC X2,(=C* *),B1 WRITE BLANK LINE
- PLM4 ZR X5,PLM5 IF NO HEADER MESSAGE
- WRITEC O,(=C* *),B1 WRITE BLANK LINE
- WRITEC X2,X5 WRITE HEADER
- PLM5 ZR X0,PLM2 IF NO LIMITS MESSAGE
- WRITEC O,X0 ISSUE LIMITS MESSAGE
- EQ PLM2 PROCESS NEXT ENTRY
- * WRITE ALLOWED PERMISSIONS LIMIT MESSAGES.
- PLM6 SA2 PLMC GET *TAPL* INDEX
- SA1 TAPL+X2 GET ALLOWED PERMISSIONS LIMITS PARAMETERS
- ZR X1,PLM8 IF END OF TABLE
- SX6 X2+B1
- SA6 A2
- MX2 -6
- BX3 -X2*X1 NUMBER OF PERMISSION BITS
- AX1 6
- BX4 -X2*X1 USER BLOCK OFFSET
- SA4 TANB+X4 GET PERMISSION BITS FROM USER BLOCK
- AX1 6
- SB2 X3-1
- MX6 1
- AX6 B2
- MX5 -12
- BX5 -X5*X1 LIMITS HEADER ADDRESS
- AX1 30
- SA1 X1+B1 GET FIRST BIT POSITION
- SB3 59
- SB2 X1+B2
- SB2 B3-B2
- LX1 X4,B2
- BX0 X4
- BX6 X6*X1
- NZ X6,PLM6.1 IF ANY PERMISSIONS GRANTED
- PL X6,PLM6 IF NO PERMISSIONS GRANTED
- PLM6.1 WRITEC O,(=C* *),B1 WRITE BLANK LINE
- WRITEC X2,X5 WRITE HEADER MESSAGE
- SA1 PLMC GET *TAPL* INDEX
- SA1 TAPL-1+X1 GET *TAPL* ENTRY
- AX1 24
- SA5 X1 FWA-1 TABLE OF LIMITS MESSAGE ADDRESSES
- AX1 18
- SA0 X1 FWA-1 TABLE OF BIT NAMES AND POSITIONS
- PLM7 SA5 A5+B1
- SA0 A0+B1
- ZR X5,PLM6 IF END OF MESSAGE TABLE
- NG X5,PLM7 IF PERMISSION NOT ALLOWED
- SA3 A0
- MX4 -12
- BX4 -X4*X3
- SB2 X4
- SB3 59
- SB2 B3-B2
- LX4 X0,B2
- PL X4,PLM7 IF PERMISSION NOT GRANTED
- WRITEC O,X5 WRITE PERMISSION MESSAGE
- EQ PLM7 CONTINUE PROCESSING MESSAGES
- PLMA CON 0 FAMILY NAME
- PLMB CON 0 PAGE LINE COUNTER
- PLMC CON 0 *TAPL* INDEX
- TAPL SPACE 4,10
- ** TAPL - TABLE OF ALLOWED PERMISSIONS LIMITS PARAMETERS.
- *
- *T 18/TBP,18/TLM,12/LHR,6/UBO,6/NPB
- * TBP FWA-1 TABLE OF BIT POSITIONS.
- * TLM FWA-1 TABLE OF LIMITS MESSAGE ADDRESSES.
- * LHR LIMITS HEADER MESSAGE ADDRESS.
- * UBO USER BLOCK OFFSET FOR PERMISSION DATA WORD.
- * NPB NUMBER OF PERMISSION BITS.
- TAPL BSS 0
- APLW TAWI,ALP,ALLW,AAWC ACCESS WORD
- APLW TNAV,APP,APPH,AAVW APPLICATIONS
- APLW TRTP,ASP,RMFP,ASHN *RDF* PERMISSIONS
- APLW TAPV,APV,AAPP,ASVW SECURITY VALIDATIONS
- APLW TACC,CAT,VCAT,ASAC ACCESS CATEGORIES
- APLW TALB,ALV,ALVA,ASVW ACCESS LEVELS
- APLW TSVM,SCL,USVM,ASCV USER SERVICE CLASS
- CON 0 END OF TABLE
- STB SPACE 4,15
- ** STB - SEARCH TABLE.
- *
- * ENTRY (X1) = VALUE TO COMPARE.
- * (X2) = MASK.
- * (B2) = TABLE ADDRESS.
- *
- * EXIT (X3) = TABLE ENTRY ON MATCH.
- * = 0 IF NO MATCH.
- * (A3) = ADDRESS OF MATCHING TABLE ENTRY.
- *
- * USES X - 3, 6.
- * A - 3.
- STB SUBR
- SA3 B2-1
- STB1 SA3 A3+1
- BX6 X3-X1
- BX6 X2*X6
- ZR X3,STBX IF END OF TABLE
- NZ X6,STB1 IF NOT YET MATCH
- EQ STBX RETURN
- SRD SPACE 4,25
- ** SRD - SET RECORD DISPLAYS.
- *
- * ENTRY *TANB* SET TO PROPER USER BLOCK.
- *
- * EXIT K-DISPLAY PROPERLY FORMATTED.
- * S-OPTION PROPERLY FORMATTED.
- * VALUES ENTERED IN LIMITS MESSAGES.
- *
- * USES A - ALL.
- * B - 2, 3, 4, 5, 7.
- * X - ALL.
- *
- * CALLS APC, CAV, ICE, MRJ, SFN,
- * DISPLAY CONVERSION PROCESSORS.
- *
- * MACROS EDATE.
- SRD16 RJ APC DISPLAY APPLICATION PERMISSIONS
- SRD SUBR ENTRY/EXIT
- SA1 TANB+ACCD SET CREATION DATE
- AX1 18
- SX1 X1
- EDATE X1 UNPACK AND CONVERT DATE
- SA1 TANB+ACMD SET LAST MODIFICATION DATE
- SA6 DSAC1
- SX1 X1+
- EDATE X1 UNPACK AND CONVERT DATE
- SA6 DSAU
- SA1 AN SET USER NAME
- SX6 1R/
- BX1 X1+X6
- LX1 -6
- RJ SFN
- SA6 TMBS
- SX1 1R &1R/
- LX1 -6
- BX6 X1-X6
- SA6 DSAN
- SA6 DSAN1
- SA6 DSAN2
- SA6 DSAN3
- SA6 DSAN4
- SA0 TFR-3 TABLE TO FORMAT RECORD
- SRD1 SA0 A0+3
- SA4 A0+ GET WORD 1 OF ENTRY
- ZR X4,SRD16 IF END OF TABLE
- SB7 X4 PROCESSOR ADDRESS
- LX4 6
- MX2 -6
- BX1 -X2*X4 USER BLOCK OFFSET
- LX4 6
- BX3 -X2*X4 STARTING BIT NUMBER
- LX4 6
- BX2 -X2*X4 NUMBER OF BITS IN FIELD
- SA1 TANB+X1 GET DATA WORD
- MX6 1
- SB4 X2
- SB2 B4-B1
- AX6 B2
- SB2 60
- SB3 X3+B4
- SB2 B2-B3
- LX1 B2
- BX2 X6*X1
- LX1 X2,B4
- BX7 X1
- LX4 59-31-18
- PL X4,SRD2 IF DATA TO BE PASSED RIGHT JUSTIFIED
- BX1 X2 PASS DATA LEFT JUSTIFIED
- SRD2 SA3 A0+2 GET WORD 3 OF ENTRY
- LX3 -18
- SB3 X3 ALTERNATE BLOCK ADDRESS
- ZR B3,SRD3 IF NO ALTERNATE BLOCK
- SB3 B3+B1
- SA1 X7+B3
- BX7 X1
- SRD3 SA7 SRDA SAVE DATA FIELD
- RJ ICE EXECUTE DISPLAY FORMAT PROCESSOR
- SA4 A0 GET WORD 1 OF ENTRY
- LX4 0-35
- SX0 B1
- BX0 X0*X4
- SB5 X0 CONTINUATION WORD FLAG
- SB2 B5+B5
- SB2 B2+B5
- SB3 A0+B1
- SA5 B3-B2 GET WORD 2 OF ENTRY
- SA3 A0 GET MULTIPLE WORD RESULT FLAG
- SX2 X5
- LX3 59-30
- AX5 18
- LX4 24-0+35
- SA1 SRDA GET DATA VALUE
- MX0 -6
- ZR X2,SRD4 IF NO SOURCE ADDRESS
- SB2 B1+B5
- SA6 X2+B2
- PL X3,SRD4 IF NOT MULTIPLE WORD RESULT
- SA7 A6+B1
- SRD4 NG X3,SRD7 IF MULTIPLE WORD RESULT
- BX2 -X0*X4 UNLIMITED VALUE
- LX4 59-33-24
- LX0 X4,B1
- ZR X2,SRD5 IF NO UNLIMITED VALUE
- IX2 X1-X2
- NG X2,SRD5 IF NOT UNLIMITED
- SA2 =9AUNLIMITED
- BX6 X2
- NG X4,SRD6 IF *SYSTEM* DEFAULT TO BE DISPLAYED
- SRD5 PL X0,SRD7 IF NOT ZERO SYSTEM DEFAULT
- NZ X1,SRD7 IF NOT ZERO DATA VALUE
- SRD6 SA2 =10HSYSTEM
- BX6 X2
- SX4 B1 RIGHT JUSTIFY FOR LIMITS
- SRD7 SB2 X5
- AX5 18
- ZR B2,SRD10 IF NO K-DISPLAY FIELD
- BX0 X3
- LX0 -1
- SA6 B2+B5
- NG X0,SRD9 IF ALREADY LEFT JUSTIFIED
- SA1 =10H
- BX1 X1-X6
- MX0 -6
- ZR X1,SRD9 IF BLANK WORD
- SA6 SRDB
- SRD8 LX6 6 LEFT JUSTIFY FIELD
- BX2 -X0*X6
- SX2 X2-1R
- ZR X2,SRD8 IF BLANK CHARACTER
- LX6 -6
- SA6 B2+B5
- SA2 SRDB
- BX6 X2
- SRD9 PL X3,SRD10 IF NOT MULTIPLE WORD RESULT
- SA7 A6+1
- SRD10 ZR X5,SRD15 IF NO LIMITS MESSAGE
- SA2 X5+5 GET MULTIPLE ENTRY 1ST WORD
- LX4 59-34-59+33
- SA6 A2 STORE LIMITS VALUE
- PL X3,SRD11 IF NOT MULTIPLE WORD RESULT
- SA6 A2-B1
- SA7 A2
- BX2 X6
- LX6 X7
- SRD11 PL X4,SRD15 IF NO RIGHT JUSTIFY FOR LIMITS FIELD
- SA1 =10H
- BX1 X1-X6
- ZR X1,SRD13 IF BLANK WORD
- MX0 -6
- SRD12 BX7 -X0*X6 RIGHT JUSTIFY BLANK FILLED DATA
- SX7 X7-1R
- LX6 -6
- ZR X7,SRD12 IF BLANK
- LX6 6
- SA6 A2 STORE RIGHT JUSTIFIED LIMITS VALUE
- SRD13 NG X3,SRD14 IF MULTIPLE WORD RESULT
- ZR B5,SRD15 IF NOT CONTINUATION ENTRY
- SRD14 RJ MRJ RIGHT JUSTIFY MULTIPLE WORD
- SRD15 SA1 SRDA GET DATA VALUE
- RJ CAV CALCULATE ACTUAL VALUE
- NZ X3,SRD1 IF ACTUAL VALUE CALCULATED
- SA1 SRDA
- NZ X1,SRD1 IF DATA VALUE PRESENT
- SA1 A0+B1 CLEAR LIMITS MESSAGE
- MX6 18
- LX6 -6
- BX6 -X6*X1
- SA6 A1+
- EQ SRD1 CONTINUE RECORD FORMATTING
- SRDA CON 0 DATA FIELD
- SRDB CON 0 K-DISPLAY DATA FIELD BEFORE LEFT JUSTIFY
- TITLE MISCELLANEOUS ROUTINES.
- ABT SPACE 4,10
- ** ABT - ABORT EXIT.
- ABM BSS 0 ENTRY
- MESSAGE CCDR,0,R ISSUE COMMAND TO DAYFILE
- EQ ABT ABORT
- ABE BSS 0 ENTRY
- SX2 DMGV * GENVAL ABORTED.*
- SA1 GENF
- NZ X1,ABT IF *GENVAL*
- SX2 DMAB * MODVAL ABORTED.*
- SA1 PSWF
- ZR X1,ABT IF NOT *PASSWOR*
- SX2 DMPA * ERROR IN PASSWOR ARGUMENTS.*
- SA1 TSTB+1
- AX1 54-0
- ZR X1,ABT IF NOT NETWORK TERMINAL
- WRITEC O,TRMB RESET CURSOR POSITIONING
- SX2 DMPA RESET ERROR MESSAGE
- * EQ ABT ABORT
- ABT BSS 0 ENTRY
- MESSAGE X2,3 ISSUE ERROR MESSAGE
- RJ COB CHECK OUTPUT BUFFER
- SA1 ABTA
- ZR X1,ABT1 IF UPDATE NOT PERFORMED
- RJ SUI SET AVAILABLE USER INDICES
- ABT1 SA3 RAPF CHECK SYSTEM FILE ATTACHED
- ZR X3,ABT2 IF NOT ATTACHED
- RETURN U
- RECALL N
- RETURN P
- ABT2 SA1 GENF
- ZR X1,ABT3 IF NOT *GENVAL*
- RETURN P
- RETURN U
- ABT3 RJ CAF CHECK ALTERNATE FAMILY
- ABORT
- ABTA CON 0 SET IF UPDATE PERFORMED
- ABTB RPVBLK ABE *REPRIEVE* BLOCK
- ACI SPACE 4,20
- ** ACI - ASSEMBLE CHARACTERS INTERFACE.
- *
- * ENTRY (X1) = BIT STRING OF CHARACTERS TO PERMIT.
- * (X6) = BIT STRING OF CHARACTER TO SUPPRESS.
- *
- * EXIT (CBUF - CBUF+CBUFL) = LEFT JUSTIFIED
- * ASSEMBLED CHARACTERS.
- * (X4) = NUMBER OF CHARACTERS.
- * (B5) = SEPARATOR ( 0 IF END-OF-LINE).
- * (B6) = 0 IF ENTRY TERMINATION.
- * (B6) .NE. 0 IF ASSEMBLY COMPLETE.
- * (ET) = -1 IF EOF.
- * (ET) = 1 IF */* ENTRY TERMINATION.
- *
- * USES X - 0, 1, 2, 4, 6, 7.
- * A - 1, 2, 6, 7.
- * B - 2, 4.
- *
- * MACROS FUNC.
- ACI SUBR ENTRY/EXIT
- SA6 ACIC SAVE BIT STRING TO SUPPRESS
- BX7 X1
- SX6 B0
- SA7 ACIB SAVE BIT STRING TO PERMIT
- SA6 ACIA CLEAR CHARACTER COUNT
- SA6 ACID CLEAR CHARACTER BUFFER INDEX
- SB2 CBUFL-1
- ACI1 SA6 CBUF+B2 CLEAR CHARACTER BUFFER
- SB2 B2-1
- PL B2,ACI1 IF CLEAR NOT COMPLETE
- ACI2 SX0 I INPUT FET ADDRESS
- SA2 ACIC CHARACTERS TO BE SUPPRESSED
- SA1 ACIB CHARACTERS TO BE ALLOWED
- BX6 X2
- FUNC ASCT ASSEMBLE CHARACTERS
- SA2 ACID
- SA6 CBUF+X2 STORE ASSEMBLED CHARACTERS
- SA1 ACIA
- SB4 X4-10
- IX4 X1+X4 INCREMENT CHARACTER COUNT
- NG B4,ACIX IF SEPARATOR ENCOUNTERED
- BX7 X4
- SA7 A1
- SX7 X2-CBUFL-1
- PL X7,ACI2 IF BUFFER FULL
- SX7 X2+B1
- SA7 A2 INCREMENT CHARACTER BUFFER INDEX
- EQ ACI2 ASSEMBLE MORE CHARACTERS
- ACIA BSS 1 CHARACTER COUNT
- ACIB BSS 1 BIT STRING OF CHARACTERS TO PERMIT
- ACIC BSS 1 BIT STRING OF CHARACTERS TO SUPPRESS
- ACID BSS 1 CHARACTER BUFFER INDEX
- ADT SPACE 4,10
- ** ADT - ADD TERM TO CURRENT DATE.
- *
- * ENTRY (X1) = TERM VALUE.
- *
- * EXIT (X2) = (X6) = NEW PACKED DATE.
- *
- * USES A - 2, 7.
- * X - 2, 6, 7.
- *
- * MACROS SYSTEM.
- ADT SUBR ENTRY/EXIT
- BX7 X1 SET UP *CPM* PARAMETER WORD
- SA7 ADTA
- SYSTEM CPM,R,A7,121B*100B ADD TERM TO CURRENT DATE
- SA2 A7 GET NEW PACKED DATE
- BX6 X2
- EQ ADTX RETURN
- ADTA BSS 1 *CPM* PARAMETERS
- AUI SPACE 4,15
- ** AUI - ASSIGN USER INDEX.
- *
- *
- * ENTRY NO USER INDEX IN *TANB* BLOCK.
- *
- * EXIT (X0) .LT. 0, IF USER INDEX SET.
- * (X0) .GE. 0, IF USER INDEX NOT SET.
- * (B3) = MESSAGE, IF USER INDEX NOT SET.
- *
- * USES X - 0, 1, 6, 7.
- * A - 1, 6, 7.
- * B - 2, 3, 4, 5.
- AUI4 MX0 1 SET UI USED
- SB5 B5+B2
- BX1 X0+X1
- SB4 B4-B2
- LX6 X1,B4
- SX7 B5+B1
- SA6 A1
- SA1 TANB+AUIN SET INDEX IN RECORD BLOCK
- MX0 42
- BX1 X0*X1
- BX7 X1+X7
- SA7 A1
- AUI SUBR ENTRY/ EXIT
- SB3 AUIMX-1
- SA1 TAUI-1
- SB5 B0
- SB4 60 CONSTANT 60
- AUI1 SA1 A1+B1
- SB2 B0
- GE B5,B3,AUI3 IF ALL ASSIGNED
- AUI2 PL X1,AUI4 IF UI FREE
- LX1 1
- SB2 B2+B1
- LT B2,B4,AUI2 IF MORE TO CHECK
- SB5 B5+B4
- EQ AUI1 LOOP FOR NEXT WORD
- AUI3 SX0 B0+ SET ERROR
- SB3 ERUN **** NO USER INDICES AVAILABLE.
- EQ AUIX RETURN
- CDP SPACE 4,15
- ** CDP - CLEAR DEFAULT PERMISSION BITS.
- *
- * ENTRY (A0) = ADDRESS OF *TPCW* ENTRY.
- * (X4) = PERMISSION CONTROL WORD.
- *
- * EXIT (X4) = NEW PERMISSION CONTROL WORD.
- * DEFAULT BITS CLEARED IN PERMISSION CONTROL WORD.
- * PERMISSION CONTROL DEFAULT MASK BIT SET.
- *
- * USES X - 0, 1, 2, 3, 4, 6.
- * A - 1, 6.
- * B - 2, 3.
- CDP SUBR ENTRY/EXIT
- SA1 A0
- MX2 -6
- LX1 -18
- BX3 -X2*X1 NUMBER OF PERMISSION BITS
- LX1 -6
- BX2 -X2*X1 SHIFT FOR MASK
- SB2 X3-1 MASK BITS
- SB3 X2 MASK SHIFT
- MX0 1
- AX0 B2
- LX0 B3
- BX4 -X0*X4 CLEAR DEFAULT PERMISSIONS
- SB2 A0-TPCW PREVENT ADDITIONAL CLEAR OF DEFAULT BITS
- SA1 PCDW
- SX2 B1
- LX2 B2
- BX6 X1+X2
- SA6 A1
- EQ CDPX RETURN
- CEP SPACE 4,10
- ** CEP - CLEAR ERROR PROCESSING.
- *
- * ENTRY (A1) = FET ADDRESS.
- *
- * USES X - 0, 2, 6.
- * A - 2, 6.
- CEP SUBR ENTRY/EXIT
- SA2 A1+B1 CLEAR ERROR PROCESSING BIT
- SX0 B1
- LX0 44
- BX6 -X0*X2
- SA6 A2
- EQ CEPX RETURN
- CER SPACE 4,20
- ** CER - CHECK FOR ERROR.
- *
- * ENTRY (A1) = FET ADDRESS.
- * (X1) = FIRST WORD OF FET.
- * (B4) = RETURN ADDRESS. CONTROL IS RETURNED HERE
- * IF THE FILE IS FOUND BUSY.
- *
- * EXIT TO (B4) AFTER WAITING FOR FILE TO BECOME AVAILABLE.
- * TO *ABE* IF ONE OF THE FOLLOWING CONDITIONS -
- * 1. AN ERROR OTHER THAN FILE BUSY WAS ENCOUNTERED.
- * 2. AN ERROR IS PRESENT AND *CER* WAS NOT CALLED FROM
- * *PRESET*.
- * TO *ABT* IF AN INTERACTIVE JOB HAS MADE TEN
- * UNSUCCESSFUL ATTEMPTS TO ATTACH THE VALIDATION FILE.
- *
- * USES X - 0, 1, 2, 6.
- * A - 2, 6.
- *
- * MACROS MESSAGE, ROLLOUT.
- CER SUBR ENTRY/EXIT
- MX0 -4 CHECK FOR ERROR
- AX1 10
- BX0 -X0*X1
- ZR X0,CERX IF NO ERROR
- SX0 X0-/ERRMSG/FBS
- NZ X0,ABE IF NOT *FILE BUSY* RETURN FROM *PFM*
- SA2 CERA
- NZ X2,ABE IF NOT PRESET CALL
- SX1 A1-U
- ZR X1,CER3 IF *VALINDS* REQUEST
- SA2 CERC
- SX6 X2-1
- ZR X6,CER2 IF RETRY COUNT EXCEEDED
- SA6 A2+
- MESSAGE DMWV,2,R * WAITING FOR VALIDATION FILE.*
- ROLLOUT CERD ROLLOUT FOR 5 SECONDS
- MESSAGE (=C**),2,R
- JP B4 RETURN CONTROL
- CER2 SA2 OT
- SX2 X2-IAOT
- NZ X2,CER3 IF NOT INTERACTIVE JOB
- SX2 DMVB * VALIDATION FILE BUSY.*
- EQ ABT ABORT
- CER3 ROLLOUT CERB
- JP B4 RETRY
- CERA CON 0 PRESET CALL FLAG
- CERB CON 0 FAST ATTACH FILE BUSY TIMED/EVENT ROLLOUT
- CERC CON 10 RETRY COUNT
- CERD CON 5 PARAMETER WORD FOR TIMED ROLLOUT
- CLN SPACE 4,15
- ** CLN - CHECK LINE NUMBER.
- *
- *
- * ENTRY (X1) = AVAILABLE LINES REQUESTED. UPPER 30 BITS
- * CONTAIN LINES USED IF LESS.
- *
- * EXIT NEW PAGE GENERATED IF NECESSARY.
- *
- * USES X - 1, 2, 6, 7.
- * A - 1, 2, 6.
- *
- * CALLS CDD.
- *
- * MACROS CLOCK, DATE, WRITEC, WRITEH, WRITEW.
- CLN4 SA6 LC SET NEW LINE COUNT
- CLN SUBR ENTRY/EXIT
- SA2 LC
- IX6 X2-X1
- PL X6,CLN4 IF ENOUGH ROOM ON PAGE
- BX7 X1
- AX7 30
- ZR X7,CLN1 IF LINES USED = LINES REQUESTED
- SX1 X1
- IX6 X2-X7
- IX2 X2-X1
- PL X2,CLN4 IF ENOUGH ROOM ON PAGE
- BX1 X7
- CLN1 BX6 -X1 SAVE LINES USED COMPLEMENTED
- SA6 CLNB
- DATE DATE
- CLOCK TIME
- SA1 PN GET PAGE NUMBER
- SX6 X1+B1 INCREMENT
- SA6 A1
- RJ CDD CONVERT
- LX6 6*4
- SA6 PAGE
- WRITEW O,CLNA,1
- WRITEW O,CCDR,8 WRITE COMMAND IN HEADER LINE
- WRITEH O,DATE,6
- SA1 OP CHECK OPTION
- SX1 X1-LOPT
- NZ X1,CLN2 IF NOT LIST
- WRITEC O,SUBT1
- WRITEC O,SUBT2
- WRITEC O,(=1L )
- SA1 CLNB
- SA2 LPPG GET LINES PER PAGE
- IX6 X1+X2
- SX6 X6-5
- EQ CLN3 CHECK OUTPUT FILE TYPE
- CLN2 SA1 CLNB SET LINES REMAINING ON PAGE
- SA2 LPPG GET LINES PER PAGE
- IX6 X1+X2
- SX6 X6-2
- CLN3 SA1 OF CHECK OUTPUT FILE TYPE
- NZ X1,CLN4 IF NOT A TERMINAL FILE
- MX6 1
- BX6 -X6
- EQ CLN4 RETURN
- CLNA CON 1H1 CARRIAGE CONTROL
- CLNB CON 0 LINES USED COMPLEMENT
- LC CON 0 LINE COUNT
- PN CON 1 PAGE NUMBER
- DATE DATA 1H HEADER
- TIME DATA 1H
- CON 0APAGE
- PAGE DATA 1H
- CON 0
- CON 1L
- SUBT1 DIS ,* USER USER CREATION LAST MOD*
- SUBT2 DIS ,* NAME INDEX DATE DATE*
- COB SPACE 4,15
- ** COB - CHECK OUTPUT BUFFER.
- *
- * EXIT OUTPUT BUFFER FLUSHED IF NECESSARY AND *SSST* STATUS
- * REMOVED FROM OUTPUT FILE.
- *
- * USES X - 1, 2.
- * A - 1, 2.
- *
- * MACROS SETFS, STATUS, WRITER.
- COB SUBR ENTRY/ EXIT
- SA1 CLN CHECK IF SUBROUTINE *CLN* EVER CALLED
- SA2 PLM CHECK IF SUBROUTINE *PLM* EVER CALLED
- BX2 X1+X2
- ZR X2,COBX IF NO OUTPUT WRITTEN
- WRITER O,R FLUSH OUTPUT
- SA1 OF
- ZR X1,COBX IF TERMINAL FILE
- STATUS O,P
- SA2 O+5 GET FNT
- MX1 -6
- BX2 -X1*X2 GET FILE STATUS
- SX1 X2-SSST
- NZ X1,COBX IF PRIOR OUTPUT ID
- SETFS O,0 CLEAR FILE STATUS
- EQ COBX RETURN
- CPR SPACE 4,20
- ** CPR - CHECK PASSWORD REQUIREMENT.
- *
- * ENTRY (X5) = PASSWORD WORD FROM USER BLOCK.
- * (A5) = ADDRESS OF PASSWORD WORD.
- *
- * EXIT (B3) = ERROR MESSAGE ADDRESS, IF PASSWORD REQUIRED
- * BUT NOT ENTERED.
- * (B3) = 0, IF ENTERED OR NOT REQUIRED.
- *
- * IF NO PASSWORD IS ENTERED, AND NONE IS REQUIRED, THE
- * ENCRYPTED NULL PASSWORD AND THE DEFAULT EXPIRATION DATE
- * WILL BE SET.
- *
- * USES X - 0, 1, 5, 6, 7.
- * A - 1, 7.
- * B - 2, 3.
- *
- * CALLS ADT, EPW.
- CPR3 SB3 ERPR **** PASSWORD REQUIRED.
- CPR SUBR ENTRY/EXIT
- SB3 B0+ SET NO ERROR
- MX0 42
- BX6 X0*X5
- NZ X6,CPRX IF PASSWORD ENTERED
- BX6 -X0*X5
- NZ X6,CPR1 IF EXPIRATION DATE ENTERED
- SX1 APXT-7777B
- ZR X1,CPR1 IF DEFAULT IS NON-EXPIRING
- SX1 APXT SET DEFAULT EXPIRATION TERM
- RJ ADT
- CPR1 BX3 X6 SAVE EXPIRATION DATE
- BX5 X5-X5 SET NULL PASSWORD
- RJ EPW
- BX7 X3+X6 COMBINE PASSWORD AND EXPIRATION DATE
- SA1 RP
- NZ X1,CPR2 IF NO PASSWORD REQUIRED
- SB2 RPWL
- ZR B2,CPR2 IF MINIMUM REQUIRED LENGTH = 0
- SA1 RDBA
- NZ X1,CPR3 IF NEW USER
- CPR2 SA7 A5 SET PASSWORD AND EXPIRATION DATE
- EQ CPRX RETURN
- CSM SPACE 4,15
- ** CSM - CHECK SECURITY MODE.
- *
- * EXIT (X1) = 0, IF USER IS VALID.
- * (X1) .NE. 0 IF USER IS NOT VALID. IN A SECURED
- * SYSTEM, SECURITY ADMINISTRATOR PRIVILEGES
- * ARE REQUIRED.
- *
- * USES X - 1, 2.
- * A - 1, 2.
- *
- * MACROS GETSSM, GETUSV.
- CSM SUBR ENTRY/EXIT
- GETSSM CSMA GET SECURITY MODE
- SA1 CSMA
- ZR X1,CSMX IF NOT A SECURE SYSTEM
- GETUSV CSMB GET VALIDATION WORD *JSCW*
- SA2 CSMB
- SX1 B0+
- NG X2,CSMX IF SECURITY ADMINISTRATOR
- SX1 B1+
- EQ CSMX RETURN
- CSMA CON 0 SECURITY MODE
- CSMB CON 0 VALIDATION WORD *JSCW*
- CUN SPACE 4,10
- ** CUN - COMPARE USER NAMES.
- *
- * *CUN* COMPARES THE CURRENT JOB USER NAME WITH THE
- * USER NAME TO BE CHANGED.
- *
- * ENTRY *TANB* BLOCK SET.
- *
- * EXIT (X1) = 0 IF USER NAMES MATCH.
- *
- * USES X - 0, 1, 2.
- * A - 1, 2.
- CUN SUBR ENTRY/EXIT
- SA1 SSJ=+UIDS GET USER NAME FOR JOB
- SA2 TANB+ACCN GET USER NAME BEING ALTERED
- MX0 42
- BX1 X1-X2
- BX1 X0*X1 COMPARE USER NAMES
- EQ CUNX RETURN
- EPW SPACE 4,10
- ** EPW - ENCRYPT PASSWORD.
- *
- * ENTRY (X5) = PASSWORD LEFT JUSTIFIED, BINARY ZERO FILLED.
- *
- * EXIT (X6) = ENCRYPTED PASSWORD IN BITS 59-18.
- *
- * USES X - 1, 6.
- * A - 1, 6.
- *
- * MACROS SYSTEM.
- EPW SUBR ENTRY/EXIT
- BX6 X5 SAVE PASSWORD
- SA6 EPWA
- SYSTEM CPM,R,EPWA,122B*100B
- SA1 EPWA GET ENCRYPTED PASSWORD
- BX6 X1
- EQ EPWX RETURN
- EPWA CON 0 *CPM* PARAMETER BLOCK
- IAM SPACE 4,20
- ** IAM - ISSUE ACCOUNT FILE MESSAGE.
- *
- * ENTRY (DANA) .NE. 0, IF USER NAME DELETE.
- * (UUFG) .LT. 0, IF REFORMAT OPTION.
- * .EQ. 0, IF USER NAME CREATE OR DELETE.
- * .GT. 0, IF USER NAME UPDATE.
- *
- * EXIT ACCOUNT MESSAGE ISSUED IF FAST-ATTACHED MODE.
- *
- * USES X - 0, 1, 2, 6.
- * A - 1, 2, 6.
- * B - 2, 5.
- *
- * CALLS SNM.
- *
- * MACROS MESSAGE, MOVE.
- IAM3 MESSAGE IAMD,5,R ISSUE MESSAGE TO ACCOUNT FILE
- IAM SUBR ENTRY/EXIT
- SA1 RAPF
- ZR X1,IAMX IF LOCAL VALIDATION FILE
- SA2 UUFG
- NG X2,IAMX IF REFORMAT OPTION
- SA1 EF
- NZ X1,IAMX IF ERRORS
- SA2 TANB+ACCN GET MODIFIED USER NAME
- BX6 X2
- SA6 IAMA+2
- SA1 DANA GET MODIFICATION TYPE
- SX6 B0+
- NZ X1,IAM1 IF DELETE
- SA1 UUFG
- SX6 X6+1
- NZ X1,IAM1 IF UPDATE
- SX6 X6+1
- IAM1 SA1 X6+IAMB SET MODIFICATION TYPE
- BX6 X1
- SA6 IAMA+4
- MOVE IAMEL,IAME,IAMD SET MESSAGE FIELDS
- SX0 4
- IAM2 NG X0,IAM3 IF ALL FIELDS SET
- SA1 X0+IAMC GET REPLACEMENT CHARACTER
- SB2 X1
- SA1 X0+IAMA GET FIELD
- MX6 42
- BX1 X6*X1
- SB5 IAMD
- RJ SNM SET NAME IN MESSAGE
- SX0 X0-1
- EQ IAM2 CHECK NEXT FIELD
- IAMA BSS 0 MESSAGE FIELD VALUES
- CON 0 MODIFIED FAMILY NAME
- BSS 1 ISSUING FAMILY NAME
- BSS 1 MODIFIED USER NAME
- BSS 1 ISSUING USER NAME
- BSS 1 MODIFICATION TYPE
- IAMB BSS 0 MESSAGE IDENTIFIERS
- DATA 4LMVDU USER NAME DELETE
- DATA 4LMVUU USER NAME UPDATE
- DATA 4LMVCU USER NAME CREATE
- IAMC BSS 0 REPLACEMENT CHARACTERS
- CON 1R+ MODIFIED FAMILY NAME
- CON 1R- ISSUING FAMILY NAME
- CON 1R= MODIFIED USER NAME
- CON 1R/ ISSUING USER NAME
- CON 1R$ MODIFICATION TYPE
- IAMD DATA C*$$$$, -------, ///////, +++++++, =======.*
- IAME DATA C*$$$$, -------, ///////, +++++++, =======.*
- IAMEL EQU *-IAME LENGTH OF MESSAGE
- ICE SPACE 4,10
- ** ICE - INDEXED CODE EXECUTION.
- *
- * ENTRY (B7) = SUBROUTINE ADDRESS.
- *
- * EXIT TO SUBROUTINE WITH RETURN ADDRESS SET.
- *
- * USES A - 2, 7.
- * X - 2, 7.
- ICE SUBR ENTRY/ EXIT
- SA2 ICEX SET RETURN ADDRESS
- BX7 X2
- SA7 B7
- JP B7+1 JUMP TO SUBROUTINE
- LID SPACE 4,15
- ** LID - LIST INPUT DIRECTIVES.
- *
- * ENTRY FRESH DATA IN STRING BUFFER.
- *
- * EXIT NEW INPUT LINE WRITTEN TO OUTPUT.
- *
- * USES X - 1, 2, 3, 7.
- * A - 1, 2, 3, 7.
- *
- * CALLS CLN.
- *
- * MACROS WRITES.
- LID1 SX7 X1-1 COUNT INFORMATION SKIPPED
- SA7 A1+
- LID SUBR ENTRY/ EXIT
- SA3 OP CHECK OPTION
- ZR X3,LIDX IF K-DISPLAY
- SA1 LIDA SKIP PRIVILEGED INFORMATION
- SA2 EL CHECK LIST OPTION
- NZ X1,LID1 IF PRIVILEGED INFORMATION
- NZ X2,LIDX IF DIRECTIVES NOT LISTED
- SX1 B1 CHECK FOR HEADER
- SX2 5
- LX1 30
- BX1 X1+X2
- RJ CLN
- SA1 SB SET STRING BUFFER ADDRESS
- SA3 SM GET BUFFER LENGTH
- IX3 X3-X1
- WRITES O,X1-1,X3+1
- EQ LIDX RETURN
- LIDA CON 0 PRIVILEGED INFORMATION FLAG
- PCE SPACE 4,15
- ** PCE - PURGE CATALOG ENTRIES.
- *
- * ENTRY USER INDEX SET.
- *
- * EXIT ALL CATALOG ENTRIES FOR SPECIFIC USER INDEX PURGED.
- *
- * USES X - 0, 1, 6.
- * A - 1, 6.
- *
- * CALLS CEP, CER, CLN, SEP.
- *
- * MACROS CATLIST, PURGE, READW, WRITEC.
- PCE3 SA1 I
- LX1 -10
- BX6 X6-X6
- PL X1,PCE1 IF NOT END OF INFORMATION
- SA1 I
- SA6 A1+CFCN CLEAR CATLIST CONTINUATION DATA ADDRESS
- RJ CEP CLEAR ERROR PROCESSING
- SA1 S
- RJ CEP CLEAR ERROR PROCESSING
- PCE SUBR ENTRY/ EXIT
- SA1 I
- RJ SEP SET ERROR PROCESSING
- SA1 S
- RJ SEP SET ERROR PROCESSING
- PCE1 CATLIST I,,,,,,IP
- SA1 I
- RJ CER CHECK ERROR
- PCE2 READW I,KBUF,NWCE
- NG X1,PCE3 IF NO MORE FILES
- SA1 KBUF+FCFN
- MX0 42
- SX6 B1
- BX1 X0*X1 GET FILE NAME
- BX6 X1+X6 SET BIT ZERO FOR PURGE CALL
- SA6 S
- BX6 X1
- SA6 PCEA+1
- PURGE S,,,,,IP
- SA1 S
- RJ CER CHECK ERROR
- SX1 B1
- RJ CLN CHECK LINE NUMBER
- WRITEC O,PCEA DUMP FILE NAME TO OUTPUT
- EQ PCE2 LOOP
- PCEA DATA C* PURGE XXXXXXX*
- SEP SPACE 4,10
- ** SEP - SET ERROR PROCESSING.
- *
- * ENTRY (A1) = FET ADDRESS.
- *
- * USES X - 0, 2, 6.
- * A - 2, 6.
- SEP SUBR ENTRY/EXIT
- SA2 A1+B1 SET ERROR PROCESSING BIT
- SX0 B1
- LX0 44
- BX6 -X0*X2
- BX6 X0+X6
- SA6 A2
- EQ SEPX RETURN
- SUI SPACE 4,10
- ** SUI - SAVE AVAILABLE USER INDEX TABLE.
- *
- * EXIT USER INDICES WRITTEN TO VALINDS.
- *
- * MACROS REWIND, SETFS, WRITER, WRITEW.
- SUI SUBR ENTRY/ EXIT
- REWIND U,R
- WRITEW U,TAUI,TAUIL
- WRITER U
- SETFS U,0 CLEAR FILE STATUS
- EQ SUIX RETURN
- SPB SPACE 4,15
- ** SPB - SET PERMISSION BIT IN PERMISSION CONTROL WORD.
- *
- * ENTRY (A0) = ADDRESS OF *TPCW* ENTRY.
- * (X1) = PERMISSION IDENTIFIER.
- * (X4) = PERMISSION CONTROL WORD.
- *
- * EXIT (X4) = NEW PERMISSION CONTROL WORD.
- * (B3) .LT. 0 IF NO ERROR.
- * = ERROR MESSAGE ADDRESS IF ERROR.
- *
- * USES X - 1, 2, 3, 4.
- * A - 1, 3.
- * B - 2, 3, 4.
- *
- * CALLS CDP, STB.
- SPB SUBR ENTRY/EXIT
- SA3 A0
- MX2 42
- SB2 X3
- RJ STB SEARCH TABLE
- SB3 ERAD * ERROR IN ALPHANUMERIC DATA.*
- ZR X3,SPBX IF PERMISSION IDENTIFIER NOT FOUND
- MX2 -6
- BX3 -X2*X3
- SB4 X3 PERMISSION BIT NUMBER
- SB2 A0-TPCW CHECK IF DEFAULTS TO BE CLEARED
- SA1 PCDW
- AX1 B2
- LX1 59-0
- NG X1,SPB1 IF DEFAULT BITS NOT TO BE CLEARED
- RJ CDP CLEAR DEFAULT PERMISSION BITS
- SPB1 SX1 B1 SET/TOGGLE PERMISSION BIT
- LX1 B4
- BX4 X4-X1
- SB3 -1 SET NO ERROR
- EQ SPBX RETURN
- CAF SPACE 4,15
- ** CAF - CHECK ALTERNATE FAMILY.
- *
- * EXIT (X6) .NE. 0, IF FAMILY NAME CHANGE NOT ALLOWED.
- * FAMILY SET TO (FN), IF (FN) .NE. -1 AND JOB IS FROM
- * SYSTEM ORIGIN.
- *
- * ERROR TO *ABT* IF INCORRECT FAMILY.
- *
- * USES X - 1, 2, 6.
- * A - 1, 2, 6.
- *
- * MACROS ENFAM.
- CAF SUBR ENTRY/EXIT
- SA1 FN
- MX6 59
- BX6 X1-X6
- ZR X6,CAFX IF FAMILY NOT SPECIFIED
- SA1 OT CHECK FAMILY CHANGE ALLOWED
- SX6 X1-SYOT
- NZ X6,CAFX IF NOT SYSTEM ORIGIN
- ENFAM FN
- SA1 FN
- MX6 -18
- BX6 X6*X1 CLEAR STATUS
- LX1 59-11
- SX2 DMFM * FM NOT LEGAL FAMILY.*
- PL X1,CAF1 IF FAMILY CHANGED
- MX6 59
- SA6 A1
- EQ ABT ABORT
- CAF1 SA6 A1 SET OLD FAMILY NAME
- BX6 X6-X6
- EQ CAFX RETURN
- TOV SPACE 4,15
- ** TOV - TABLE OVERFLOW PROCESSOR.
- *
- * ENTRY FROM *ATS* ONLY.
- * (B6) = EXIT ADDRESS IN *COMCMTP* TO CONTINUE
- * PROCESSING.
- *
- * EXIT TO (B6).
- * FIELD LENGTH INCREASED BY *FLIN* WORDS.
- * (TV) .NE. 0, IF FIELD LENGTH LIMIT REACHED.
- *
- * USES X - 3, 4, 6.
- * A - 3, 4, 6.
- *
- * MACROS MEMORY.
- TOV BSS 0 ENTRY
- SA4 FLM MAXIMUM FIELD LENGTH
- SA3 ML CURRENT FIELD LENGTH
- SX3 X3+FLIN
- IX4 X3-X4 LIMIT FIELD LENGTH
- NG X4,TOV1 IF ADEQUATE FIELD LENGTH
- SX6 B1 INDICATE OVERFLOW
- SA6 TV
- TOV1 MEMORY CM,TOVB,R,X3
- SA3 TOVB GET FIELD LENGTH ASSIGNED
- AX3 30
- BX6 X3
- SA6 ML SET NEW FIELD LENGTH
- SX6 X6-C.TAB2
- SA6 F.TEND ADJUST TABLE LENGTH
- JP B6 EXIT
- TOVB CON 0 FIELD LENGTH STATUS RETURN
- VPW SPACE 4,15
- ** VPW - VERIFY PASSWORD.
- *
- * ENTRY (X7) = PASSWORD, LEFT JUSTIFIED.
- *
- * EXIT (B2) = 0 IF PASSWORD AT LEAST REQUIRED LENGTH.
- * = -1 IF PASSWORD NOT AT LEAST MINIMUM
- * REQUIRED LENGTH.
- *
- * USES X - 0, 1, 3, 4.
- * A - 3.
- * B - 2, 3.
- VPW SUBR ENTRY/EXIT
- SB2 B0+
- SA3 RP CHECK IF PASSWORD REQUIRED
- SX1 RPWL-1 CHECK REQUIRED PASSWORD LENGTH
- NZ X3,VPWX IF NO PASSWORD REQUIRED
- NG X1,VPWX IF NO PASSWORD REQUIRED
- SX4 6
- IX3 X1*X4
- MX0 1
- SB3 X3-1 BUILD MASK
- AX0 B3
- BX1 -X0*X7 CHECK PASSWORD
- NZ X1,VPWX IF PASSWORD AT LEAST REQUIRED LENGTH
- SB2 -B1
- EQ VPWX RETURN
- WCE SPACE 4,10
- ** WCE - WRITE CATALOG ENTRY TO OUTPUT.
- *
- * ENTRY (TANB) = 42/USER NAME ,18/USER INDEX.
- * (TANB+1) = 24/ ,18/CREATION DATE ,18/LAST MOD DATE.
- *
- * EXIT CATALOG INFORMATION WRITTEN TO OUTPUT FILE.
- *
- * USES X - 0, 1, 2, 6.
- * A - 1, 2, 6.
- *
- * CALLS CLN, COD, SFN.
- *
- * MACROS EDATE, WRITEC.
- WCE SUBR ENTRY/EXIT
- SA2 TANB SET USER NAME
- MX0 42
- BX1 X0*X2
- BX0 -X0*X2
- RJ SFN SET USER NAME
- LX6 -6
- SA6 WCEA
- BX1 X0 SET USER INDEX
- RJ COD
- LX6 6*2
- SA1 TANB+1 SET CREATION DATE
- AX1 18
- SA6 WCEB
- SX1 X1+
- EDATE X1
- SA6 WCEC
- SA1 TANB+1 SET LAST MODIFICATION DATE
- SX1 X1
- EDATE X1
- SA6 WCED
- SX1 1
- RJ CLN
- WRITEC O,WCEA
- EQ WCEX RETURN
- WCEA CON 1H
- WCEB CON 1H
- WCEC CON 1H
- WCED CON 1H
- CON 0
- COMMON SPACE 4,10
- ** COMMON DECKS.
- *CALL COMCOVL
- *CALL COMCPFM
- *CALL COMCCDD
- *CALL COMCCIO
- *CALL COMCCOD
- *CALL COMCCPM
- *CALL COMCDXB
- *CALL COMCEDT
- LIST X
- *CALL COMCCVI
- LIST -X
- *CALL COMCLFM
- *CALL COMCMTP
- *CALL COMCMVE
- *CALL COMCRDO
- *CALL COMCRDS
- *CALL COMCRDW
- *CALL COMCSFN
- *CALL COMCSYS
- *CALL COMCWOD
- *CALL COMCSTF
- *CALL COMCWTC
- *CALL COMCWTH
- *CALL COMCWTS
- *CALL COMCWTW
- *CALL COMCRDC
- *CALL COMCSNM
- *CALL COMCVDT
- TITLE K-DISPLAY AREA.
- INITIAL SPACE 4,10
- ** DISPLAY AREA DATA.
- KIA VFD 6/4B,18/KBUF,18/0,18/DSA CONTROL WORD
- KBUF BSSZ 8 KEYBOARD BUFFER
- KTIT DATA C*MODVAL.* K-DISPLAY TITLE
- NOREF K
- DSA VFD 10/0,1/0,1/0,1/0,5/0,18/KTIT,24/0 BUFFER CONTROL WORD
- KDL 1,T,( MODVAL)
- KDL 5,,("APFN")
- KDL 18,,(CRE)
- KDL 21,,(ATED )
- DSCD EQU *-1
- KDL 41,,(UPD)
- KDL 44,H,(ATED )
- DSMD EQU *-1
- KDL 1,K,(INPUT DIRECTIVES ARE THE SAME AS BATCH INPUT DIRECTIVES.)
- KDL 1,H,(THE FOLLOWING DIRECTIVES ARE ALSO PROVIDED -)
- KDL 1,H,( DIRECTIVE DESCRIPTION)
- KDL 1,K,( C,UN CREATE OPTION. THIS DISPLAY ONLY.)
- KDL 1,K,( DEL,UN DELETE OPTION. THIS DISPLAY ONLY.)
- KDL 1,K,( I,UN INQUIRE OPTION. THIS DISPLAY ONLY.)
- KDL 1,K,( U,UN UPDATE OPTION. THIS DISPLAY ONLY.)
- KDL 6,K,(/UN TERMINATE INPUT FOR PRESENT USER NAME IF ANY,)
- KDL 18,H,(UPDATE "APFN" FILE. INITIATE ACTION ON *UN*.)
- KDL 1,H,(UN = 1-7 CHARACTER USER NAME.)
- KDL 1,H,(K.END FROM THIS DISPLAY ENDS THE MODVAL RUN.)
- MSGA EQU *+1
- KDL 1,M,( )
- INPA EQU *+1
- KDL 1,I,( )
- CON 0
- PAGE1 SPACE 4,10
- DSB VFD 10/0,1/0,1/0,1/0,5/0,18/KTIT,24/0 BUFFER CONTROL WORD
- KDL 1,T,(USER )
- DSAN EQU *-1
- KDL 54,T,(PAGE 1 OF 5)
- KDL 3,,(CRE)
- KDL 6,,(ATED )
- DSAC1 EQU *-1
- KDL 40,,(UPD)
- KDL 43,H,(ATED )
- DSAU EQU *-1
- KDL 2,H,( CONTENTS DESCRIPTION)
- DSUI EQU *+1
- KDL 2,K,( UI = USER INDEX (1-377777B).)
- DSPL EQU *+1
- KDL 2,K,( AL = 00B APPLICATION ACCESS LEVEL (1-17B).)
- DSMT EQU *+1
- KDL 2,K,( MT = MAGNETIC TAPES (0-7).)
- DSRP EQU *+1
- KDL 2,H,( RP = REMOVABLE PACKS (0-7).)
- KDL 2,H,( CONTENTS VALUE DESCRIPTION)
- DSCM EQU *+1
- KDL 2,K,( CM = 00B ( 0000B) CENTRAL MEMORY FL (0-77B).)
- DSEC EQU *+1
- KDL 2,K,( EC = 00B ( 0000B) EXTENDED MEMORY FL (0-77B).)
- DSLP EQU *+1
- KDL 2,K,( LP = 00B ( 00000) LINES PRINTED (0-77B).)
- DSMS EQU *+1
- KDL 2,K,( MS = 00B (000000) MASS STORAGE PRUS (0-77B).)
- DSSL EQU *+1
- KDL 2,K,( SL = 00B ( 00000) SRU LIMIT (0-77B).)
- DSTL EQU *+1
- KDL 2,K,( TL = 00B ( 00000) TIME LIMIT (0-77B).)
- MSGB EQU *+1
- KDL 1,M,( )
- INPB EQU *+1
- KDL 1,I,( )
- CON 0 END OF DISPLAY
- PAGE2 SPACE 4,10
- DSC VFD 10/0,1/0,1/0,1/0,5/0,18/KTIT,24/0 BUFFER CONTROL WORD
- KDL 1,T,(USER )
- DSAN1 EQU *-1
- KDL 54,T,(PAGE 2 OF 5)
- KDL 2,H,( CONTENTS VALUE DESCRIPTION)
- DSCP EQU *+1
- KDL 2,K,( CP = 00B ( 0000) CARDS PUNCHED (0-77B).)
- DSPT EQU *+1
- KDL 2,K,( PT = 00B ( 00000) UNITS PLOTTED (0-77B).)
- DSCC EQU *+1
- KDL 2,K,( CC = 00B ( 0000) COMMANDS (0-77B).)
- DSDF EQU *+1
- KDL 2,K,( DF = 00B ( 0000) DAYFILE MESSAGES (0-77B).)
- DSDB EQU *+1
- KDL 2,K,( DB = 0 ( 00) DEFERRED BATCH (0-7).)
- DSDT EQU *+1
- KDL 2,H,( DT = 00B ( 00000) DETACHED JOBS (0-77B).)
- DSCS EQU *+1
- KDL 2,K,( CS = 0 ( 00000) INDIRECT ACCESS FILE SPACE (0-7
- ,).)
- DSDS EQU *+1
- KDL 2,K,( DS = 0 ( 00000) DIRECT ACCESS FILE SIZE (0-7).
- DSFC EQU *+1
- KDL 2,K,( FC = 0 ( 00) PERMANENT FILE COUNT (0-7).)
- DSFS EQU *+1
- KDL 2,K,( FS = 0 ( 00) INDIRECT ACCESS FILE SIZE (0-7)
- ,.)
- DSAW EQU *+1
- KDL 2,K,( AW = ACCESS WORD (4 CHARACTERS).)
- DSCN EQU *+1
- KDL 2,K,( CN = CHARGE NUMBER (1-10 CHARACTERS)
- ,.)
- DSPN EQU *+1
- KDL 2,K,( PN = PROJECT NUMBER (1-20 CHARACTERS
- ,).)
- DSUD EQU *+1
- KDL 2,K,( PID = PERSONAL ID (0-20 CHARACTERS.).
- ,)
- MSGC EQU *+1
- KDL 1,M,( )
- INPC EQU *+1
- KDL 1,I,( )
- CON 0
- PAGE3 SPACE 4,10
- DSD VFD 10/0,1/0,1/0,1/0,5/0,18/KTIT,24/0 BUFFER CONTROL WORD
- KDL 1,T,(USER )
- DSAN2 EQU *-1
- KDL 54,T,(PAGE 3 OF 5)
- KDL 2,H,( CONTENTS DESCRIPTION)
- DSSN EQU *+1
- KDL 2,K,( SH = SHELL PROGRAM NAME (1-7 CHARACTERS).)
- DSSH EQU *+1
- KDL 2,K,( SO = SHELL PROGRAM OPTIONS (4 CHARACTERS).)
- DSSP EQU *+1
- KDL 2,K,( SP = SYSTEM PROLOGUE FILE INDEX (1-77B).)
- DSUP EQU *+1
- KDL 2,H,( UP = USER PROLOGUE FILE NAME (1-7 CHARACTERS).
- ,)
- DSUC EQU *+1
- KDL 2,K,( UC = DEFAULT SERVICE CLASS FOR ORIGIN TYPES)
- KDL 2,K,( BC,RB,IA (2 OR 4 CHARACTERS).)
- DSVM EQU *+1
- KDL 2,H,( VM = VALIDATION MASK (2 CHARACTERS).)
- DSIS EQU *+1
- KDL 2,K,( IS = INITIAL SUBSYSTEM (4-8 CHARACTERS).)
- DSPA EQU *+1
- KDL 2,K,( PA = TERMINAL PARITY (EVEN OR ODD).)
- DSPX EQU *+1
- KDL 2,K,( PX = TRANSMISSION (FULL OR HALF).)
- DSRO EQU *+1
- KDL 2,K,( RO = RUBOUTS (0-31).)
- DSTC EQU *+1
- KDL 2,K,( TC = CHARACTER SET (ASCII OR NORMAL).)
- DSTT EQU *+1
- KDL 2,K,( TT = TERMINAL TYPE (3-7 CHARACTERS).)
- MSGD EQU *+1
- KDL 1,M,( )
- INPD EQU *+1
- KDL 1,I,( )
- CON 0 END OF DISPLAY
- PAGE4 SPACE 4,10
- DSE VFD 10/0,1/0,1/0,1/0,5/0,18/KTIT,24/0 BUFFER CONTROL WORD
- KDL 1,T,(USER )
- DSAN4 EQU *-1
- KDL 54,T,(PAGE 4 OF 5)
- KDL 2,H,( CONTENTS DESCRIPTION)
- KDL 2,K,( PASSWORDS MUST BE "OPWL"-7 CHAR.)
- DSXB EQU *+1
- KDL 2,K,(XB = BATCH PASSWORD EXPIRATION DATE (YYMMDD).
- ,)
- DSXI EQU *+1
- KDL 2,K,(XI = INTERACTIVE PASSWORD EXPIRATION DATE)
- KDL 2,H,( (YYMMDD).)
- DSLV EQU *+1
- KDL 2,K,(SAL = SECURITY ACCESS LEVELS (1-7 CHAR).)
- DSAV EQU *+1
- KDL 2,K,(SAV = SECURITY ACCESS PRIVILEGES (4 CHAR).)
- DSAC EQU *+1
- KDL 2,,(SAC = )
- KDL 23,K,(SECURITY ACCESS CATEGORIES (1-7 CHAR).)
- DSSE EQU *+1
- KDL 2,K,(SC = SECURITY COUNT (0-77B).)
- MSGE EQU *+1
- KDL 1,M,( )
- INPE EQU *+1
- KDL 1,I,( )
- CON 0 END OF DISPLAY
- PAGE5 SPACE 4,10
- DSF VFD 10/0,1/0,1/0,1/0,5/0,18/KTIT,24/0 BUFFER CONTROL WORD
- KDL 1,T,(USER )
- DSAN3 EQU *-1
- KDL 54,T,(PAGE 5 OF 5)
- KDL 1,H,( STATUS APPLICATION STATUS APPLICATION)
- DSAP EQU *
- RNNA SET TNAVL+1 ROUNDED APPLICATION COUNT
- DUP RNNA/2,1
- KDL 1,K,( )
- MSGF EQU *+1
- KDL 1,M,( )
- INPF EQU *+1
- KDL 1,I,( )
- CON 0 END OF DISPLAY
- PAGE1R SPACE 4,10
- DSG VFD 10/0,1/0,1/0,1/0,5/0,18/KTIT,24/0 BUFFER CONTROL WORD
- KDL 1,T,(K DISPLAY COMMANDS)
- KDL 54,T,(PAGE 1 OF 3)
- KDL 7,K,(DROP TERMINATE INPUT FOR ACTIVE USER.)
- KDL 7,K,(END COMPLETE UPDATE OR INQUIRE OF ACTIVE USER. FROM)
- KDL 7,K,( INITIAL DISPLAY, END RUN.)
- KDL 7,H,(STOP TERMINATE INPUT FOR ACTIVE USER, IF ANY. END RUN.)
- KDL 7,K,(/UN TERMINATE INPUT FOR PRESENT USER NAME AND UPDATE)
- KDL 7,K,( "APFN" FILE. INITIATE ACTION ON *UN*.)
- KDL 7,K,(+ PAGE LEFT DISPLAY FORWARD.)
- KDL 7,K,(- PAGE LEFT DISPLAY BACKWARD.)
- CHAR 1R[,1R(
- CHAR 1R],1R)
- CODE O
- KDL 7,K,([ PAGE RIGHT DISPLAY FORWARD.)
- KDL 7,H,(] PAGE RIGHT DISPLAY BACKWARD.)
- CODE *
- KDL 1,H,(PARAMETER INPUT)
- KDL 1,K,( DATA ENTRY FORMAT IS OF THE FORM MT=XX,CM=XX,TL=XX, ETC.)
- KDL 1,K,( ALL NUMERIC FIELDS ARE ASSUMED TO BE DECIMAL UNLESS A)
- KDL 1,K,( POSTRADIX IS SPECIFIED. FOR EXAMPLE - 4000B)
- CON 0 END OF DISPLAY
- PAGE2R SPACE 4,10
- DSH VFD 10/0,1/0,1/0,1/0,5/0,18/KTIT,24/0 BUFFER CONTROL WORD
- KDL 1,T,(MODVAL IDENTIFIERS)
- KDL 54,T,(PAGE 2 OF 3)
- KDL 1,H,(AW - ACCESS WORD (LEFT FROM BIT 0))
- KDL 4,K,(CPWC,CTPC,CLPF,CSPF,CSOJ,CASF,CAND)
- KDL 4,K,(CCNR,CSRP,CSTP,CTIM,CUCP,CSAP,CBIO)
- KDL 4,K,(CPRT,CPLK,CQLK,CUST,CNVE,CMNT,CNOP)
- KDL 4,K,(CSAF,CNRD,COPR,CLTD,COPI,CACA,CPAM)
- KDL 4,K,(CSAU,CRAU,CRAF)
- KDL 1,H,(SO - REMOTE TERMINAL PROGRAM (LEFT FROM BIT 0))
- KDL 1,H,( CCLM,BCSM,TCSM,SLID,GLID,LFID,ABTM)
- KDL 1,H,(UC - SERVICE CLASS (LEFT FROM BIT 1))
- KDL 1,H,( SY,BC,RB,TS,DI,NS,SS,MA,CT,I0,I1,I2,I3)
- KDL 1,H,(SAL - SECURITY ACCESS LEVEL (LEFT FROM BIT 0))
- KDL 1,K,( "ALM0","ALM1","ALM2","ALM3")
- KDL 1,K,( "ALM4","ALM5","ALM6","ALM7")
- CON 0 END OF DISPLAY
- PAGE3R SPACE 4,10
- DSJ VFD 10/0,1/0,1/0,1/0,5/0,18/KTIT,24/0 BUFFER CONTROL WORD
- KDL 1,T,(MODVAL IDENTIFIERS)
- KDL 54,T,(PAGE 3 OF 3)
- KDL 1,H,(SAV - SECURITY PRIVILEGE (RIGHT FROM BIT 59))
- KDL 1,H,( CSAP,COLD,CPWX,CFPX,CLJL,CLFL,CWLF,CULT)
- KDL 1,H,(SAC - SECURITY ACCESS CATEGORY (LEFT FROM BIT 0))
- KDL 1,K,( "ACM00","ACM01","ACM02","ACM03","ACM04","ACM05","ACM06")
- KDL 1,K,( "ACM07","ACM08","ACM09","ACM10","ACM11","ACM12","ACM13")
- KDL 1,K,( "ACM14","ACM15","ACM16","ACM17","ACM18","ACM19","ACM20")
- KDL 1,K,( "ACM21","ACM22","ACM23","ACM24","ACM25","ACM26","ACM27")
- KDL 1,K,( "ACM28","ACM29","ACM30","ACM31")
- CON 0 END OF DISPLAY
- TITLE DATA AREA.
- TAUI SPACE 4,10
- ** TAUI - TABLE OF AVAILABLE USER INDICES.
- TAUIL EQU AUIMX/60+1
- TAUI BSSZ TAUIL
- ACW SPACE 4,10
- ** SSJ - TABLE OF USER ACCESS PARAMETERS.
- SSJ= BSSZ SSJL
- BUFFERS SPACE 4,10
- ** BUFFER ASSIGNMENTS.
- USE BUFFERS
- D1 SET *
- TITLE PRESET ROUTINES.
- PRS SPACE 4,10
- ** PRS - PRESET.
- ** PRESET CODE NOT OVERLAID BY *CIO* BUFFERS.
- PRS33 REWIND U CHECK VALIDATION FILES
- REWIND P
- READ U
- READ P
- READW U,TAUI,TAUIL
- SA3 OPTION
- SX6 ROPTB+UOPTB
- SX2 DMVR * VALINDS READ ERROR.*
- BX6 X6*X3
- ZR X6,PRS34 IF NOT *R* OR *U* OPTION
- NZ X1,ABT IF READ ERROR ON *VALINDS*
- PRS34 READO P SET AVAILABLE DATA BLOCK
- MX0 12
- BX5 X0*X6
- READO X2
- SX2 DML0 * LEVEL-0 DATA BASE ERROR.*
- NZ X1,ABT IF TRANSFER NOT COMPLETE
- NZ X5,ABT IF LEVEL NUMBER WRONG
- SA6 RAND
- AX6 18 SET K-DISPLAY CREATION DATE
- EDATE X6
- SA6 DSCD
- SA1 RAND SET K-DISPLAY MODIFICATION DATE
- SX1 X1
- EDATE X1
- SA6 DSMD
- SA1 RAND SET PRU OF AVAILABLE DATA BLOCK
- SB2 60-24
- AX6 X1,B2
- SA6 A1
- REWIND P
- PRS35 OVERLAY PRSA,100B,S
- GETPFP IAMA GET MODIFIED FAMILY NAME
- SA2 IAMA MODIFIED FAMILY NAME
- SA1 SSJ=+UIDS GET ISSUING USER NAME
- BX7 X1
- BX6 X2
- SA1 OT CHECK ORIGIN TYPE
- SX1 X1-SYOT
- SA7 IAMA+3
- NZ X1,PRS36 IF NOT SYSTEM ORIGIN
- SA2 FN CHECK ALTERNATE FAMILY
- SB2 X2+1
- ZR B2,PRS36 IF NO ALTERNATE FAMILY
- BX6 X2
- PRS36 SA6 IAMA+1
- SA1 UPFG CHECK USER PROLOGUE FILE NAME FLAG
- NZ X1,UPR IF USER PROLOGUE FILE NAME ENTERED
- SA1 CHFG
- NZ X1,CHV IF USER VALIDATION CHANGE
- SA1 AN CHECK PASSWORD CHANGE
- NZ X1,PSW IF CHANGE PASSWORD
- EQ MOD EXIT TO MAIN LOOP
- PRSA CON 0LSFS
- D SET *
- ** PRESET CODE AND DATA OVERLAID BY *VALIDUS* AND *VALINDS*
- * *CIO* BUFFERS.
- CHVAL SB1 1 ENTRY
- SX6 B1
- SX7 B0
- SA6 CHFG SET *CHVAL* FLAG
- SA6 UF SET UPDATE MODE
- SA7 OP SUPPRESS NORMAL OPTIONS
- SA1 SSJ=+UIDS CHECK FOR USER NAME
- SX2 DMCM * INCORRECT COMMAND.*
- MX0 42
- BX1 X0*X1
- ZR X1,ABM IF NO USER
- BX7 X1
- SA7 AN
- EQ MODVAL MERGE INTO *MODVAL* FLOW
- LIMITS SB1 1 ENTRY
- SX7 -B1
- LX6 -6
- SA7 LMFG
- SA1 SSJ=+UIDS CHECK USER NAME
- SX2 DMCM * INCORRECT COMMAND.*
- MX0 42
- BX1 X0*X1
- ZR X1,ABM IF NO USER
- EQ MODVAL
- PASSWOR SB1 1 ENTRY
- SA4 TARG FWA ARGUMENT TABLE
- SB6 TKPR FWA KEYWORD/POSITION TABLE
- SA5 CCDR FWA COMMAND BUFFER
- SB2 B0 NO PARAMETERS TO SKIP
- RJ RSP REMOVE SECURE PARAMETERS
- SX6 B1
- SX7 B0
- SA6 LIDA *PASSWOR* FLAG, NO OUTPUT
- SA7 OP SUPPRESS NORMAL OPTIONS
- SA6 UF SET UPDATE MODE
- SA6 PSWF SET *PASSWOR* FLAG
- EQ MODVAL MERGE INTO *MODVAL* FLOW
- UPROC SB1 1 ENTRY
- SX6 B1
- SA6 UPFG SET *UPROC* FLAG
- SA6 UF SET UPDATE MODE
- SX6 B0
- SA6 OP SUPPRESS NORMAL OPTIONS
- SA1 SSJ=+UIDS CHECK USER NAME
- SX2 DMCM * INCORRECT COMMAND.*
- MX0 42
- BX1 X0*X1
- ZR X1,ABM IF N0 USER
- BX7 X1
- SA7 AN
- EQ MODVAL MERGE INTO *MODVAL* FLOW
- GENVAL SB1 1 ENTRY
- SX7 1RC SET CREATE OPTION
- LX7 -6
- SA7 PRSB
- SA7 GENF SET *GENVAL* FLAG
- * EQ MODVAL MERGE INTO *MODVAL* FLOW
- MODVAL SB1 1 ENTRY
- REPRIEVE ABTB,SET,237B SET *REPRIEVE* PROCESSING
- MESSAGE CCDR,0,R ISSUE COMMAND TO DAYFILE
- MX6 30 SET VALIDATED FL RETURN
- SX7 TOV SET TABLE OVERFLOW PROCESSOR ADDRESS
- SA6 FLM
- SA7 TO
- MEMORY CM,A6,R,,NA
- SA1 FLM POSITION MAXIMUM FIELD LENGTH
- LX1 30
- SX6 X1-FLIN
- SA6 FLM
- GETPP PRSF,LPPG,PRSF INITIALIZE PAGE PARAMETERS
- PDATE PD SET DATE
- SA1 PD
- AX1 18
- BX6 X1
- SA2 TODV+ATPA TERMINAL PROCESSING DEFAULTS
- BX7 X2+X1
- SA6 A1 (PD) = MODIFICATION DATE
- LX6 18
- BX7 X7+X6
- SA7 TODV+ACCD DEFAULT CREATION/MODIFICATION DATES
- SA1 CCDR SPACE FILL COMMAND
- SB3 8
- PRS MX0 54
- LX6 X1
- BX5 -X0*X1
- SB3 B3-B1
- NZ X5,PRS1 IF NO FILL NEEDED
- RJ SFN
- PRS1 SA6 A1
- SA1 A1+B1
- NZ B3,PRS IF NOT COMPLETE
- MX6 0
- SA6 A6+B1
- SA1 JOPR SET ORIGIN TYPE
- SX0 7777B
- LX1 -24
- BX7 X0*X1
- SA7 OT
- SA3 LIDA CHECK ENTRY
- SA4 ACTR
- SB4 X4
- ZR X3,PRS4 IF NOT *PASSWOR*
- MX0 42
- SA1 SSJ=+UIDS SET USER NAME
- SX2 DMCM * INCORRECT COMMAND.*
- BX1 X0*X1
- ZR X1,ABT IF NO USER
- BX6 X1
- SA6 AN
- SA3 SSJ=+AACS CHECK USER ALLOWED TO CHANGE PASSWORD
- LX3 59-0
- PL X3,ABT IF NO PERMISSION
- SA1 O SET POINTER FOR TERMINAL INTERACTION
- SA3 ARGR OLD PASSWORD
- BX2 X0*X1
- SX1 A1
- BX6 X1+X2
- SA6 A3
- SA1 SSJ=+AACS GET PASSWORD RANDOMIZATION REQUIRED BIT
- MX6 -1
- AX1 23
- BX6 -X6*X1
- SA6 OPWR
- SX1 X7-IAOT
- SX7 DEPT CHECK IF CHANGING BOTH PASSWORDS
- NZ X1,PRS1.0 IF NOT INTERACTIVE ORIGIN
- ZR X7,PRS1.1 IF CHANGING BOTH PASSWORDS
- SX7 APWI SET INDEX TO CHANGE INTERACTIVE PASSWORD
- EQ PRS1.1 PROCESS PARAMETERS
- PRS1.0 SX2 DMPB * RANDOMIZATION NOT PERMITTED FROM BATCH.*
- ZR X6,ABT IF PASSWORD RANDOMIZATION REQUIRED
- ZR X7,PRS1.1 IF CHANGING BOTH PASSWORDS
- SX7 APSW SET INDEX TO CHANGE BATCH PASSWORD
- PRS1.1 SA7 PWIX
- ZR B4,PRS3 IF SECURE ENTRY
- SX2 DMSP * SECURE PASSWORD ENTRY REQUIRED.*
- ZR X6,ABT IF PASSWORD RANDOMIZATION REQUIRED
- EQ B4,B1,PRS2 IF INCORRECT ARGUMENT COUNT
- SA1 A3+B1
- BX7 X0*X3
- SA7 OPW SAVE OLD PASSWORD
- SX5 X3-1R=
- SX3 X3-2
- BX6 X0*X1
- IX5 X5*X3
- SA6 NPW SAVE NEW PASSWORD
- SX4 X1-1R=
- SX1 X1-2
- IX4 X4*X1
- IX4 X4*X5
- ZR X4,PRS2 IF INCORRECT SEPARATOR FOR PASSWORDS
- SB5 TARG *PASSWOR* ARGUMENT TABLE
- SA4 ARGR+2 FIRST KEYWORD POSITION
- SB4 B4-2 REMAINING PARAMETER COUNT
- RJ ARG PROCESS OPTIONAL PARAMETERS
- ZR X1,PRS3.1 IF NO ARGUMENT ERROR
- PRS2 SX2 DMPA * ERROR IN PASSWOR ARGUMENTS.*
- EQ ABT ABORT
- PRS3 RJ ESP ENTER SECURE PARAMETERS
- SA1 NPW COMPARE NEW AND VERIFICATION PASSWORDS
- SX2 DMVE * VERIFICATION ERROR.*
- SA3 A1+B1
- ERRNG NPW-VERPW+1 CODE REQUIRES CONTIGUOUS WORDS
- BX1 X1-X3
- NZ X1,ABT IF VERIFICATION ERROR
- PRS3.1 SA1 XD GET EXPIRATION DATE
- SA5 XT GET EXPIRATION TERM
- ZR X1,PRS3.3 IF EXPIRATION DATE NOT SPECIFIED
- NZ X5,PRS2 IF EXPIRATION TERM ALSO SPECIFIED
- BX2 X2-X2
- RJ VDT VALIDATE AND CONVERT DATE
- NG X6,PRS3.2 IF INCORRECT DATE
- NG X1,PRS3.2 IF DATE ALREADY EXPIRED
- SX1 APXL
- SX2 X1-7777B
- ZR X2,PRS3.6 IF LIMIT IS INFINITE
- BX3 X6
- RJ ADT CALCULATE LIMIT
- IX7 X6-X3
- BX6 X3
- PL X7,PRS3.6 IF DATE NOT PAST LIMIT
- PRS3.2 SX2 DMPE * PASSWORD EXPIRATION CHANGE INCORRECT.*
- EQ ABT ABORT
- PRS3.3 SX6 -1
- ZR X5,PRS3.6 IF NO EXPIRATION TERM SPECIFIED
- SA1 =1L*
- IX6 X1-X5
- SB7 B1
- NZ X6,PRS3.4 IF ASTERISK NOT SPECIFIED FOR TERM
- SX6 APXL SET MAXIMUM VALUE
- BX1 X6
- EQ PRS3.5 PROCESS MAXIMUM VALUE
- PRS3.4 RJ DXB CONVERT TERM VALUE
- NZ X4,PRS3.2 IF CONVERSION ERROR
- SX2 APXL MAXIMUM TERM ALLOWED
- IX1 X2-X6
- NG X1,PRS3.2 IF VALUE OUT OF RANGE
- BX1 X6
- PRS3.5 SX6 X6-7777B
- ZR X6,PRS3.6 IF NON-EXPIRING PASSWORD
- SA2 PD
- BX6 X2
- ZR X1,PRS3.6 IF IMMEDIATELY EXPIRING PASSWORD
- RJ ADT ADD TERM VALUE TO PACKED DATE
- PRS3.6 SA6 XDATE
- SA5 OPW
- SA4 NPW
- SA1 OPWR
- NZ X1,PRS3.7 IF PASSWORD RANDOMIZATION NOT REQUIRED
- RJ RPW RANDOMIZE PASSWORD
- SA5 OPW
- SA4 NPW
- PRS3.7 RJ EPW ENCRYPT OLD PASSWORD
- SA6 OLDPW
- BX5 X4
- MX0 -6
- PRS3.8 LX4 6 CHECK NEW PASSWORD FOR ASTERISKS
- BX3 -X0*X4
- ZR X3,PRS3.9 IF PASSWORD CHECK COMPLETE
- SX3 X3-1R*
- NZ X3,PRS3.8 IF VALID CHARACTER
- SX2 DMIP * INCORRECT PASSWORD.*
- EQ ABT ABORT
- PRS3.9 LX7 X5
- RJ VPW VERIFY NEW PASSWORD
- SX2 DMPS * PASSWORD TOO SHORT.*
- NZ B2,ABT IF NEW PASSWORD NOT REQUIRED LENGTH
- RJ EPW ENCRYPT NEW PASSWORD
- SA6 NEWPW
- SA1 PT
- ZR X1,PRS31 IF PASSWORD TYPE NOT SPECIFIED
- MX2 24
- SB2 TPTI
- RJ STB SEARCH FOR VALID PASSWORD TYPE
- SX2 DMPA * ERROR IN PASSWOR ARGUMENTS.*
- ZR X3,ABT IF INVALID PASSWORD TYPE
- SX6 X3
- SA6 PWIX SET PASSWORD DATA BLOCK INDEX
- EQ PRS31 ATTACH VALIDATION FILE
- PRS4 SA5 LMFG
- SB5 PRST *LIMITS* ARGUMENT EQUIVALENCE TABLE
- NZ X5,PRS6 IF *LIMITS*
- SA5 UPFG
- ZR X5,PRS4.1 IF NOT *UPROC*
- SX6 DMUP * UPROC COMPLETE.*
- SA6 MODA
- SX6 PRSV *UPROC* ARGUMENT EQUIVALENCE TABLE
- SX7 PRSVL SET ARGUMENT TABLE LENGTH
- RJ PKP PROCESS KEYWORD OR POSITIONAL ARGUMENTS
- PL X1,PRS31 IF NO ERROR
- SX2 DMUA * ERROR IN UPROC ARGUMENTS.*
- EQ ABT ABORT
- PRS4.1 SA5 CHFG
- ZR X5,PRS4.2 IF NOT *CHVAL*
- SB5 PRSAA *CHVAL* ARGUMENT EQUIVALENCE TABLE
- SA4 ARGR
- RJ ARG PROCESS ARGUMENTS
- SA3 CHVB
- SX2 DMCA * ERROR IN CHVAL ARGUMENTS.*
- ZR X3,ABT IF NO PARAMETERS
- NZ X1,ABT IF ERROR
- EQ PRS31 ATTACH VALIDATION FILE
- PRS4.2 SA5 GENF
- ZR X5,PRS4.4 IF NOT *GENVAL*
- SX2 DMIA * USER ACCESS NOT VALID.*
- NZ X7,ABT IF NOT SYSTEM ORIGIN
- SB5 PRSAB *GENVAL* ARGUMENT EQUIVALENCE TABLE
- SA4 ARGR
- RJ ARG PROCESS ARGUMENTS
- ZR X1,PRS4.3 IF NO ERROR
- SX2 DMGA * ERROR IN GENVAL ARGUMENTS.*
- EQ ABT ABORT
- PRS4.3 RJ CAF CHECK ALTERNATE FAMILY
- SETUI SYUI SET SYSTEM USER INDEX
- SA1 N SET LOCAL FILE NAME
- BX6 X1
- SA6 P
- SA1 P SET ERROR PROCESSING
- RJ SEP
- DEFINE P,,,,,,,,,IP DEFINE VALIDATION FILE
- SA1 P
- RJ CER CHECK ERROR
- RJ CEP CLEAR ERROR PROCESSING
- SA1 U SET ERROR PROCESSING
- RJ SEP
- DEFINE U,,,,,,,,,IP DEFINE USER INDEX FILE
- SA1 U
- RJ CER CHECK ERROR
- RJ CEP CLEAR ERROR PROCESSING
- EQ PRS14.1 PROCESS CREATION
- PRS4.4 NZ X7,PRS5 IF NOT SYSTEM ORIGIN
- ZR B4,PRS12 IF NO PARAMETERS
- PRS5 SB5 PRSE *MODVAL* ARGUMENT EQUIVALENCE TABLE
- PRS6 SA4 ARGR CRACK COMMAND
- RJ ARG
- NZ X1,PRS26 IF INCORRECT PARAMETER
- SA5 LMFG
- NZ X5,PRS13 IF *LIMITS*
- SA1 PRSL CONVERT CONVERSION OPTIONS
- MX0 6
- PRS7 BX2 X0*X1
- LX1 6
- ZR X2,PRS9 IF NO MORE OPTIONS
- SA3 PRSU CHECK OPTION TABLE
- PRS8 ZR X3,PRS26 IF INCORRECT OPTION
- BX4 X2-X3
- BX4 X0*X4
- SA3 A3+B1
- NZ X4,PRS8 IF NO MATCH
- SA5 A3-B1 SET OPTION
- LX5 -18
- SX6 X5
- LX5 18
- SA6 X5
- EQ PRS7 LOOP FOR NEXT OPTION
- PRS9 SA1 CVA CHECK IF *CV=A* SPECIFIED
- ZR X1,PRS9.1 IF NOT SPECIFIED
- SA1 =0LSTANDARD
- BX6 X1
- SA6 TTCI+ATCN+1
- PRS9.1 SA1 LO CRACK LIST OPTIONS
- BX6 X6-X6
- MX0 6
- SA6 A1+
- PRS10 BX2 X0*X1
- LX1 6
- ZR X2,PRS13 IF NO MORE OPTIONS
- SA3 PRSO CHECK OPTION TABLE
- PRS11 ZR X3,PRS26 IF INCORRECT OPTION
- BX4 X2-X3
- BX4 X4*X0
- SA3 A3+B1
- NZ X4,PRS11 IF NO MATCH
- SA5 A3-B1 SET OPTION
- LX5 -18
- SX6 X5
- LX5 18
- SA6 X5
- EQ PRS10 LOOP FOR NEXT LIST OPTION
- * CRACK OPTIONS.
- PRS12 SX7 1RK SET K-DISPLAY OPTION
- LX7 -6
- SA7 PRSB
- PRS13 RJ CAF CHECK ALTERNATE FAMILY
- NZ X6,PRS26 IF FAMILY CHANGE NOT ALLOWED
- SX2 O SET OUTPUT FILE TERMINAL STATUS
- RJ STF
- NZ X6,PRS14 IF NOT TERMINAL FILE
- SA1 =1H CLEAR CARRIAGE CONTROL
- BX7 X1
- SA7 CLNA
- SA1 =1L CLEAR CARRIAGE CONTROL FROM *LIMITS* TITLE
- SA2 LITL
- MX7 -54
- BX7 -X7*X2
- BX7 X1+X7
- SA7 A2
- PRS14 SA6 OF
- WRITEW O,PRSF,X6 CONDITIONALLY WRITE FORMAT EFFECTOR
- SA1 O SET POINTER FOR TERMINAL INTERACTION
- MX0 42
- BX6 X0*X1
- SX2 A1
- BX6 X2+X6
- SA6 ARGR
- PRS14.1 SA1 PRSB *OP* EQUIVALENCE
- MX0 6
- BX6 X6-X6
- PRS15 BX5 X0*X1 GET OPTION CHARACTER
- LX1 6
- ZR X5,PRS17 IF NO MORE OPTIONS
- SB3 B0+
- PRS16 SA3 PRSC+B3
- ZR X3,PRS26 IF END OF TABLE
- SB3 B3+B1
- BX2 X5-X3
- NZ X2,PRS16 IF NOT ENTRY
- SB3 B3-B1 SET OPTION IN CONTROL WORD
- SX2 B1
- LX2 X2,B3
- BX6 X6+X2
- EQ PRS15 GET NEXT ENTRY
- PRS17 SA1 LMFG
- ZR X1,PRS17.1 IF NOT *LIMITS*
- SX6 IOPTB
- PRS17.1 SA6 OPTION SET OPTION CONTROL WORD
- RJ CFN CHECK FOR FILE NAME CONFLICT
- ZR X1,PRS19 IF NO FILE NAME CONFLICT
- SB2 1RX SET SEARCH CHARACTER
- SB5 DMFC * FILE NAME CONFLICT - LFN.*
- RJ SNM ENTER FILE NAME IN MESSAGE
- SX2 B5
- EQ ABT PROCESS ERROR
- PRS19 SA2 OPTION
- SX1 UOPTB+ROPTB+SOPTB
- LX6 X2
- BX2 -X1*X2
- SA3 FA
- LX6 59-COPT
- BX4 X3+X2
- SA1 RP CHECK FOR *RP* PARAMETER
- CX3 X6
- AX3 1
- NG X6,PRS20 IF CREATE RUN
- NZ X1,PRS26 IF *RP* SPECIFIED AND NOT CREATE RUN
- SA1 SI CHECK FOR *SI* PARAMETER
- NZ X1,PRS26 IF *SI* SPECIFIED AND NOT CREATE RUN
- ZR X4,PRS33 IF NO SPECIAL OPTIONS AND *FA* NOT SET
- ZR X2,PRS29 IF NO SPECIAL OPTIONS
- EQ PRS22 CHECK SPECIAL OPTIONS
- * PROCESS SPECIAL OPTIONS.
- PRS20 NZ X3,PRS26 IF CREATE NOT ALONE
- SA1 UIIW SET *CREATE* DATA IDENTIFIERS
- MX7 0
- BX6 X1
- SA7 FUIW+1
- SA6 A7-1
- SA3 SI CHECK FOR *SI* PARAMETER
- NZ X3,PRS21 IF SOURCE INPUT
- SX6 PRSDN SET NUMBER OF PRIVILEGED INPUT DIRECTIVES
- SA6 LIDA
- WRITEW I,PRSD,PRSDL SET DIRECTIVES IN INPUT BUFFER
- PRS21 EVICT N INITIALIZE FILES
- EVICT U
- SX0 9 RESERVE 1ST LEVEL 0 PLUS 8 SECTORS
- PRS21.1 WRITER N,R
- SX0 X0-1
- NZ X0,PRS21.1 IF MORE SECTORS TO RESERVE
- EQ PRS35 LOAD FILE SUPERVISOR
- PRS22 LX6 COPT-IOPT
- PL X6,PRS23 IF NOT INQUIRE OPTION
- NZ X3,PRS26 IF INQUIRE NOT ALONE
- SA1 P
- RJ SEP SET ERROR PROCESSING
- ATTACH P,,,,RM,,,IP,MA ATTACH *VALIDUS* FILE
- EQ PRS32 CHECK FOR ERROR ON ATTACH
- PRS23 LX6 IOPT-LOPT
- PL X6,PRS24 IF NOT LIST OPTION
- NZ X3,PRS26 IF LIST NOT ALONE
- SA1 PRSP PRESET SCRATCH FILES
- SA2 A1+B1
- BX7 X1
- SA7 N
- LX7 X2
- SA7 S
- RETURN S
- RETURN N
- SA1 PRSQ
- NZ X1,PRS33 IF LOCAL FILE CATALOG
- EQ PRS29 CHECK ORIGIN TYPE
- PRS24 LX6 LOPT-ZOPT
- PL X6,PRS28 IF NOT COMMAND INPUT OPTION
- SB2 CCDR GET DIRECTIVES FROM COMMAND
- RJ USB
- SA1 B6+ SKIP TO TERMINATOR
- SX3 4100B SET TERMINATOR MASK
- PRS25 SB2 X1-1R9
- AX2 X3,B2
- SA1 A1+1
- LX2 59
- NG X2,PRS27 IF TERMINATOR
- NZ X1,PRS25 IF NOT END OF COMMAND
- PRS26 SX2 DMMA * ERROR IN MODVAL ARGUMENTS.*
- SA3 LMFG
- ZR X3,ABT IF NOT *LIMITS*
- SX2 DMLA * ERROR IN LIMITS ARGUMENTS.*
- EQ ABT ABORT
- PRS27 SB6 A1 SET STRING BUFFER
- SB7 B7-B6
- WRITES I,B6,B7+B1
- SX6 ZOPTB
- SA6 OPTION
- EQ PRS29 PRESET SYSTEM FILE
- PRS28 LX6 ZOPT-KOPT
- PL X6,PRS33 IF NOT K-DISPLAY
- SX6 KOPTB
- SA6 OPTION
- * PRESET SYSTEM FILE.
- PRS29 SA1 OT CHECK ORIGIN TYPE
- SX1 X1-SYOT
- NZ X1,PRS26 IF NOT SYSTEM ORIGIN
- SETUI SYUI
- RJ CSM CHECK SECURITY MODE
- SX2 DMIA * USER ACCESS NOT VALID.*
- NZ X1,ABT IF CALLER NOT VALID
- SA1 OPTION
- SX2 KOPTB
- BX2 X1*X2
- ZR X2,PRS30 IF NOT K-DISPLAY
- SX3 PRSAC
- RJ PRK PRESET K-DISPLAY BUFFER
- PRS30 SA1 U
- RJ SEP SET ERROR PROCESSING
- SETRNR NOROLL PREVENT ROLLOUT
- SETPR MVCS
- ATTACH U,,,,W,,,IP SET AVAILABLE USER INDICES
- SA1 U
- SB4 PRS30
- RJ CER CHECK ERROR
- RJ CEP CLEAR ERROR PROCESSING
- PRS31 SA1 P
- RJ SEP SET ERROR PROCESSING
- SETRNR NOROLL PREVENT ROLLOUT
- SETPR MVCS
- ATTACH P,,,,M,,,IP,MA INTERLOCK UPDATE
- PRS32 SA1 P
- SB4 PRS31
- RJ CER CHECK ERROR
- RJ CEP CLEAR ERROR PROCESSING
- SX6 1 SET SYSTEM FILES ATTACHED FLAG
- SA6 RAPF
- SX6 B1+
- SA6 CERA FORCE ABORT WHEN ERROR ENCOUNTERED
- EQ PRS33 CHECK VALIDATION FILES
- PRS SPACE 4,10
- PRSB CON 1LU OPTION EQUIVALENCE STRING
- PRS SPACE 4,10
- ** OPTION TABLE.
- PRSC INDEX CON,LOPT+1,( * )
- INDEX ,KOPT,( 1LK )
- INDEX ,COPT,( 1LC )
- INDEX ,UOPT,( 1LU )
- INDEX ,ROPT,( 1LR )
- INDEX ,SOPT,( 1LS )
- INDEX ,ZOPT,( 1LZ )
- INDEX ,LOPT,( 1LL )
- CON 0
- PRS SPACE 4,10
- CUE$ IFEQ CUE$,2
- HSUI OCTMIC HSUI
- CUE$ ENDIF
- SUBF0 OCTMIC SBUI
- SUBF1 OCTMIC SBUI+1
- SUBF2 OCTMIC SBUI+2
- SUBF3 OCTMIC SBUI+3
- SUBF4 OCTMIC SBUI+4
- SUBF5 OCTMIC SBUI+5
- SUBF6 OCTMIC SBUI+6
- SUBF7 OCTMIC SBUI+7
- NTUI OCTMIC NTUI
- PLUI OCTMIC PLUI
- AAUI OCTMIC AAUI
- IFUI OCTMIC IFUI
- LIUI OCTMIC LIUI
- SYUI OCTMIC SYUI
- PRSD BSS 0 TABLE OF DEFAULT USER NAMES FOR *OP=C*
- DATA C*/SUBFAM0,UI="SUBF0"B,AW=ALL,PW=SUBFAM0,XT=0.*
- DATA C*/SUBFAM1,UI="SUBF1"B,AW=ALL,PW=SUBFAM1,XT=0.*
- DATA C*/SUBFAM2,UI="SUBF2"B,AW=ALL,PW=SUBFAM2,XT=0.*
- DATA C*/SUBFAM3,UI="SUBF3"B,AW=ALL,PW=SUBFAM3,XT=0.*
- DATA C*/SUBFAM4,UI="SUBF4"B,AW=ALL,PW=SUBFAM4,XT=0.*
- DATA C*/SUBFAM5,UI="SUBF5"B,AW=ALL,PW=SUBFAM5,XT=0.*
- DATA C*/SUBFAM6,UI="SUBF6"B,AW=ALL,PW=SUBFAM6,XT=0.*
- DATA C*/SUBFAM7,UI="SUBF7"B,AW=ALL,PW=SUBFAM7,XT=0.*
- DATA C*/NETOPS,UI="NTUI"B,AW=ALL,PW=NETOPSX,AP=ALL,RL=ALL,*
- DATA C*XT=0.*
- DATA C*/CYBISMF,UI="PLUI"B,AW=ALL,PW=CYBISMF,XT=0.*
- DATA C*/APPLLIB,UI="AAUI"B,AW=ALL,PW=APPLLIB,XT=0.*
- DATA C*/FLAWPF,UI="IFUI"B,AW=ALL,PW=FLAWPFX,XT=0.*
- DATA C*/LIBRARY,UI="LIUI"B,AW=ALL,PW=LIBRARY,RL=ALL,XT=0.*
- DATA C*/SYSTEMX,UI="SYUI"B,AW=ALL,PW=SYSTEMX,RL=ALL,*
- DATA C*SAV=ALL,SAL=ALL.*
- CUE$ IFEQ CUE$,2
- DATA C*/CDCCHS,UI="HSUI"B,RL=ALL,IS=BATCH,AW=NUL,AW=CLPF,*
- DATA C*AW=CSPF,AW=CNRD,AW=CASF,AW=CSRP,SH=RMSHELL,SO=SLID,*
- DATA C*SO=BCSM,SO=CCLM,AW=CAND,AW=CCNR,AW=CMNT,*
- DATA C*AW=COPR,SAV=NUL,SAV=CULT,SAV=COLD,AP=NUL,AP=IAF,*
- DATA C*AP=RBF,PX=HALF,TT=TTY,PA=EVEN,XT=0,PW=CDCCE,SC=10B.*
- CUE$ ENDIF
- PRSDL EQU *-PRSD LENGTH OF INPUT DIRECTIVE BLOCK
- PRSDN EQU 16 NUMBER OF DEFAULT USER NAME INPUT LINES
- PRS SPACE 4,10
- ** *MODVAL* COMMAND PARAMETERS.
- PRSE BSS 0
- I ARG I,I,400B INPUT FILE
- L ARG O,O LIST FILE
- P ARG P,P *VALIDUS* FILE
- N ARG N,N NEW *VALIDUS* FILE
- S ARG S,S SOURCE FILE
- U ARG U,U USER INDEX FILE
- OP ARG PRSB,PRSB OPTIONS
- FM ARG FN,FN,400B ALTERNATE FAMILY NAME
- CV ARG PRSL,PRSL CONVERSION OPTIONS
- LO ARG PRSN,LO LIST OPTIONS
- D ARG -PRSN,DB DEBUG MODE
- FA ARG -PRSN,FA FORCE FAST ATTACH FLAG
- RP ARG -PRSN,RP PASSWORD NOT REQUIRED
- SI ARG -PRSN,SI SOURCE INPUT
- CON 0 END OF TABLE
- SPACE 4,10
- PRSF BSS 2 PAGE PARAMETER RESPONSE BLOCK
- PRS SPACE 4,10
- PRSL CON 0 CONVERSION PARAMETERS
- PRSN CON 0LEN ALTERNATE DEFAULT LIST OPTIONS
- PRS SPACE 4,10
- ** LIST OPTION TABLE.
- PRSO VFD 24/0LE,18/1,18/EL ERRORS ONLY
- VFD 24/0LA,18/0,18/LO ALPHA CATALOG
- VFD 24/0LN,18/42,18/LO NUMERIC CATALOG
- VFD 24/0LL,18/1,18/PRSQ LOCAL FILE CATALOG
- CON 0
- PRS SPACE 4,10
- PRSP CON 0LZZZZZG1+3 SCRATCH FILE NAMES
- CON 0LZZZZZG2+3
- CON 0LSCR1+3
- PRS SPACE 4,10
- PRSQ CON 0 LOCAL FILE CATALOG FLAG
- SPACE 4,10
- ** *LIMITS* COMMAND PARAMETERS.
- PRST BSS 0
- L ARG O,O LIST FILE
- CON 0 END OF TABLE
- SPACE 4,10
- ** CONVERSION OPTION TABLE.
- PRSU VFD 24/0LA,18/1,18/CVA *CV=A* CONVERSION OPTION
- VFD 24/0LC,18/1,18/CVC *CV=C* CONVERSION OPTION
- VFD 24/0LD,18/1,18/CVD *CV=D* CONVERSION OPTION
- VFD 24/0LF,18/1,18/CVF *CV=F* CONVERSION OPTION
- VFD 24/0LG,18/1,18/CVG *CV=G* CONVERSION OPTION
- VFD 24/0LH,18/1,18/CVH *CV=H* CONVERSION OPTION
- VFD 24/0LJ,18/1,18/CVJ *CV=J* CONVERSION OPTION
- VFD 24/0LK,18/1,18/CVK *CV=K* CONVERSION OPTION
- CON 0 END OF TABLE
- SPACE 4,10
- ** *UPROC* COMMAND PARAMETERS.
- PRSV BSS 0
- FN ARG UPFN,UPFN USER PROLOGUE FILE NAME
- CON 0 END OF TABLE
- PRSVL EQU *-PRSV-1 ARGUMENT TABLE LENGTH
- SPACE 4,10
- ** *CHVAL* COMMAND PARAMETERS.
- PRSAA BSS 0
- UC ARG CHVB,CHVB USER DEFAULT SERVICE CLASS
- CON 0 END OF TABLE
- PRSAAL EQU *-PRSAA LENGTH OF ARGUMENT TABLE
- SPACE 4,10
- * *GENVAL* COMMAND PARAMETERS.
- PRSAB BSS 0
- FM ARG FN,FN,400B FAMILY NAME
- CON 0 END OF TABLE
- SPACE 4,10
- * Y-COORDINATE TABLE.
- PRSAC KDL *
- PRK HERE REMOTE BLOCK FROM *COMCDCP*
- SPACE 4,10
- ** COMMON DECKS.
- *CALL COMCUSB
- SPACE 4,10
- ** PRESET SUBROUTINES AND DATA NOT OVERLAID BY INPUT AND
- * OUTPUT CIO BUFFERS.
- DEL SPACE 4,15
- ** DEL - DELAY FOR A SPECIFIED PERIOD.
- *
- * ENTRY (X2) = DELAY PERIOD (SECONDS).
- *
- * USES X - 0, 1, 3.
- * A - 1, 3.
- *
- * MACROS RECALL, RTIME.
- DEL SUBR ENTRY/EXIT
- RTIME DELA START CLOCK
- SA3 DELA
- MX0 -24 ISOLATE SECONDS
- LX3 -36
- BX3 -X0*X3
- IX3 X3+X2 CALCULATE END OF INTERVAL
- DEL1 RECALL
- RTIME DELB CALCULATE ELAPSED TIME
- SA1 DELB
- LX1 -36 ISOLATE SECONDS
- BX1 -X0*X1
- IX1 X1-X3
- NG X1,DEL1 IF PERIOD NOT ELAPSED
- EQ DELX RETURN
- DELA BSS 1 START TIME
- DELB BSS 1 CURRENT TIME
- ESP SPACE 4,35
- ** ESP - ENTER SECURE PASSWORDS.
- *
- * *ESP* PROCESSES SECURELY ENTERED PASSWORDS AND
- * PASSWORD EXPIRATION DATE OR TERM VALUES.
- * IF THE *OUTPUT* FILE IS ASSIGNED TO THE TERMINAL, MESSAGES
- * WILL BE SENT TO THE TERMINAL REQUESTING EACH PASSWORD.
- * THE *INPUT* FILE WILL THEN BE READ FOR ALL PARAMETERS.
- * IF RANDOM CHARACTERS ARE TO BE APPENDED TO THE NEW PASSWORD
- * EITHER THE INTERACTIVE OR BATCH PASSWORD MUST BE SPECIFIED.
- * A MESSAGE WILL BE SENT TO THE TERMINAL TO REQUEST THE
- * PASSWORD EXPIRATION DATE OR TERM IF THE USER IS
- * PERMITTED TO CHANGE THE PASSWORD EXPIRATION.
- * FOR BATCH JOBS, FILE *INPUT* WILL BE READ FOR THE
- * PASSWORDS AND OPTIONAL EXPIRATION DATE/TERM.
- *
- * EXIT (OPW) = OLD PASSWORD.
- * (NPW) = NEW PASSWORD.
- * (VERPW) = VERIFICATION OF NEW PASSWORD.
- * (XD) = PASSWORD EXPIRATION DATE.
- * (XT) = PASSWORD EXPIRATION TERM.
- * (PWIX) = PASSWORD DATA BLOCK INDEX.
- *
- * ERROR TO *ABT*.
- *
- * USES X - ALL.
- * A - 0, 1, 2, 3, 4, 6, 7.
- * B - 2, 3, 4, 5, 6.
- *
- * CALLS STB, STF, USB.
- *
- * MACROS CSET, GETUSV, MOVE, READ, READC, READO, TSTATUS,
- * WRITE, WRITEC.
- ESP16 MX6 -30
- BX6 -X6*X7
- NZ X6,ESP17 IF EXPIRATION DATE SPECIFIED
- SA7 XT SET EXPIRATION TERM
- SA6 XD CLEAR EXPIRATION DATE
- ESP17 NZ X5,ESPX IF MUX TERMINAL OR NOT TERMINAL OUTPUT
- WRITEC O,PWOM OVERWRITE PASSWORD
- WRITEC O,TRMB RESET CURSOR POSITIONING
- ESP SUBR ENTRY/EXIT
- TSTATUS TSTB CHECK TERMINAL TYPE
- SX2 O CHECK IF OUTPUT ASSIGNED TO TERMINAL
- RJ STF
- BX5 X6
- NZ X5,ESP1 IF NOT TERMINAL OUTPUT
- SA1 TSTB+1 GET NETWORK TYPE
- AX1 54-0
- NZ X1,ESP1 IF NETWORK TERMINAL
- MX5 1 SET MUX TERMINAL
- ESP1 WRITE O,* PRESET WRITE FUNCTION FOR OUTPUT FILE
- SX2 I CHECK IF INPUT ASSIGNED TO TERMINAL
- RJ STF
- BX0 X6
- NZ X0,ESP3 IF INPUT NOT ASSIGNED TO TERMINAL
- CSET NORMAL ENSURE TERMINAL IN NORMAL MODE
- * READ PASSWORD ORIGIN TYPE.
- SB2 X5
- GT B2,B0,ESP2 IF NOT TERMINAL OUTPUT
- SA1 OPWR
- ZR X1,ESP1.1 IF PASSWORD RANDOMIZATION REQUIRED
- WRITEC O,POMH ISSUE PASSWORD TYPE MESSAGE
- EQ ESP2 READ RESPONSE
- ESP1.1 WRITEC O,POMG ISSUE PASSWORD TYPE MESSAGE
- ESP2 READ I READ PASSWORD ORIGIN TYPE
- READO I
- NZ X1,ESP4 IF NO INPUT, ASSUME INTERACTIVE
- BX1 X6 VALIDATE PASSWORD ORIGIN TYPE
- MX2 24
- SB2 TPTI
- RJ STB SEARCH TABLE
- SX2 DMPA * ERROR IN PASSWOR ARGUMENTS.*
- ZR X3,ABT IF PASSWORD TYPE NOT FOUND
- MX6 -18
- BX6 -X6*X3 SET PASSWORD DATA BLOCK INDEX
- SA6 PWIX
- EQ ESP4 PROMPT FOR PASSWORD
- ESP3 SX2 DMIN /*INPUT* NOT ASSIGNED TO TERMINAL./
- SA3 OPWR
- ZR X3,ABT IF PASSWORD RANDOMIZATION REQUIRED
- SX5 1 SET NO TERMINAL OUTPUT
- * SEND MESSAGE TO TERMINAL REQUESTING PASSWORD.
- ESP4 SA0 -B1 SET FLAG FOR FIRST PARAMETERS
- NZ X5,ESP5 IF MUX TERMINAL OR NOT TERMINAL OUTPUT
- WRITEC O,TRMA SET NO LINE FEED AFTER ENTERING PASSWORD
- EQ ESP6 SEND PASSWORD MESSAGE
- ESP5 NG X5,ESP6 IF MUX TERMINAL
- NZ X5,ESP7 IF NOT TERMINAL OUTPUT
- WRITEC O,PWOM OVERWRITE PASSWORD
- ESP6 WRITEC O,PSMG WRITE PASSWORD REQUEST
- * READ *INPUT* FILE FOR SECURE ENTRY OF PASSWORDS AND
- * PASSWORD EXPIRATION DATE/TERM.
- ESP7 READ I READ INPUT FOR PASSWORDS AND EXPIRATION
- READC I,PSBF,PSBFL
- BX7 X7-X7 CLEAR PARAMETER ASSEMBLY REGISTER
- SB3 B0 INDICATE BUFFER EXHAUSTED
- SB5 60 INITIALIZE ASSEMBLY SHIFT COUNT
- SB4 B0 INDICATE BUFFER EXHAUSTED REQUIRED
- ZR X0,ESP8 IF TERMINAL INPUT
- SB4 B1 INDICATE SEPARATOR REQUIRED
- ESP8 NG X1,ESP10 IF EOF/EOI ENCOUNTERED
- NZ X1,ESP10 IF EOR ENCOUNTERED
- SB2 PSBF UNPACK DATA TO STRING BUFFER
- RJ USB
- * ASSEMBLE PASSWORD OR PASSWORD EXPIRATION DATE/TERM.
- ESP9 SB3 B0
- GT B6,B7,ESP10 IF END OF BUFFER
- SA1 B6
- SB6 B6+B1
- SX6 X1-1R
- SB3 X1
- ZR X6,ESP9 IF BLANK CHARACTER
- SA3 ILCM GET INCORRECT CHARACTER MASK
- SA4 SEPM GET SEPARATOR MASK
- LX3 B3
- AX4 B3
- NG X3,ESP11 IF INCORRECT CHARACTER
- LX4 -1
- SB3 B1
- NG X4,ESP10 IF SEPARATOR ENCOUNTERED
- SB5 B5-6
- LX7 6
- SB3 18
- BX7 X7+X1
- LT B5,B3,ESP11 IF PASSWORD OR EXPIRATION TOO LONG
- EQ ESP9 CONTINUE ASSEMBLING PASSWORD OR EXPIRATION
- * CHECK TERMINATION CONDITION.
- ESP10 LX7 B5 LEFT JUSTIFY PARAMETER
- GT B4,B1,ESP12 IF EITHER TERMINATION CONDITION ALLOWED
- EQ B3,B4,ESP12 IF CORRECT TERMINATION CONDITION
- ESP11 SX2 DMIP * INCORRECT PASSWORD.*
- SB2 A0+
- LE B2,B1,ESP15 IF ASSEMBLING PASSWORD
- SX2 DMPE * PASSWORD EXPIRATION CHANGE INCORRECT.*
- EQ ESP15 ABORT
- * SAVE ASSEMBLED PASSWORD OR PASSWORD EXPIRATION DATE/TERM.
- ESP12 SA0 A0+B1
- SB2 A0
- SA7 OPW+B2
- SB4 B1+B1 INDICATE OPTIONAL PARAMETER MAY FOLLOW
- GT B2,B4,ESP16 IF PASSWORD EXPIRATION ASSEMBLED
- BX7 X7-X7 CLEAR PARAMETER ASSEMBLY REGISTER
- SB5 60 INITIALIZE ASSEMBLY SHIFT COUNT
- EQ B2,B4,ESP13 IF ALL PASSWORDS ASSEMBLED
- EQ B2,B1,ESP12.1 IF OLD AND NEW PASSWORDS ASSEMBLED
- NZ X0,ESP9 IF NOT TERMINAL INPUT
- SA1 PSMG SET MESSAGE TO *NEW PASSWORD*
- MX2 42
- LX1 -18
- SX3 3RNEW
- BX6 X2*X1
- BX6 X6+X3
- LX6 18
- SA6 A1
- EQ ESP5 READ SECOND PASSWORD
- ESP12.1 SA1 NPW PRESET VERIFICATION PASSWORD
- BX7 X1
- NZ X0,ESP12 IF NOT TERMINAL INPUT
- SA1 OPWR
- ZR X1,ESP12 IF PASSWORD RANDOMIZATION REQUIRED
- MOVE PSMHL,PSMH,PSMG
- EQ ESP5 VERIFY NEW PASSWORD
- ESP13 ZR X0,ESP14 IF TERMINAL INPUT
- SB4 B0+ INDICATE BUFFER EXHAUSTED REQUIRED
- EQ B3,B1,ESP9 IF SEPARATOR ENCOUNTERED
- EQ ESP17 RETURN
- ESP14 GETUSV PSBF
- SA1 PSBF GET JOB *JSCW* WORD
- NG X1,ESP17 IF USER IS SECURITY ADMINISTRATOR
- LX1 59-57
- PL X1,ESP17 IF USER NOT ALLOWED TO CHANGE EXPIRATION
- * SET EXPIRATION DATE PROMPT MESSAGE.
- MOVE PSMJL,PSMJ,PSMG
- EQ ESP5 ASSEMBLE EXPIRATION
- ESP15 NZ X5,ABT IF MUX TERMINAL OR NOT TERMINAL OUTPUT
- BX5 X2 SAVE ERROR MESSAGE
- WRITEC O,PWOM OVERWRITE PASSWORD
- WRITEC O,TRMB RESET CURSOR POSITIONING
- BX2 X5
- EQ ABT ABORT
- TPTI BSS 0 TABLE OF PASSWORD TYPE IDENTIFIERS
- VFD 24/0LI,18/0,18/APWI INTERACTIVE
- VFD 24/0LB,18/0,18/APSW BATCH
- VFD 24/0LIB,18/0,18/0 BOTH
- VFD 24/0LBI,18/0,18/0 BOTH
- CON 0 END OF TABLE
- ILCM CON 610000B INCORRECT CHARACTER MASK
- SEPM CON 77772466000000000001B SEPARATOR MASK
- PSBFL EQU 8 PASSWORD BUFFER LENGTH
- PSBF BSS PSBFL PASSWORD BUFFER
- * PASSWORD TYPE MESSAGE.
- POMG DATA C*"EM" INTERACTIVE (I) OR BATCH (B): *
- POMH DATA C*"EM" INTERACTIVE (I), BATCH (B), OR BOTH (IB): *
- * MESSAGES FOR SECURE ENTRY OF PASSWORDS AND EXPIRATION DATES.
- PSMG DATA 10H"EM" OLD PA
- DATA 10HSSWORD: "NL"
- DATA 10H ((((((((
- DATA 10H(((((("CR"
- DATA 10H))))))))))
- DATA 10H))))"CR" MM
- DATA 10HMMMMMMMMMM
- DATA 10HMM"CR" QQQQ
- DATA 10HQQQQQQQQQQ
- DATA 10H"CR" XXXXXX
- DATA 10HXXXXXXXX"CR"
- DATA 10H
- DATA 10H "CR""CB"
- CON 0
- PSMGL EQU *-PSMG
- * PASSWORD VERIFICATION MESSAGE.
- PSMH DATA 10H"EM" PLEASE
- DATA 10H REENTER N
- DATA 10HEW PASSWOR
- DATA 10HD FOR VERI
- DATA 10HFICATION:
- DATA 10H"NL" ((((((
- DATA 10H(((((((("CR"
- DATA 10H ))))))))
- DATA 10H))))))"CR"
- DATA 10HMMMMMMMMMM
- DATA 10HMMMM"CR" QQ
- DATA 10HQQQQQQQQQQ
- DATA 10HQQ"CR" XXXX
- DATA 10HXXXXXXXXXX
- DATA 10H"CR"
- DATA 10H "CR"
- DATA 10H"CB"''''''''
- PSMHL EQU *-PSMH
- .XL DECMIC APXL
- PSMJ DATA C*"EM" EXPIRATION DATE (YYMMDD) OR TERM (0-".XL"): *
- PSMJL EQU *-PSMJ
- * *TRMDEF* SEQUENCES FOR TURNING CURSOR POSITIONING ON/OFF.
- TRMA CON 00164107400000000000B
- TRMB CON 00164107400100000000B
- * PASSWORD OVERWRITE MESSAGE.
- PWOM DATA 10H"EM"
- DATA 10H "CR"
- CON 0
- * *TSTATUS* REPLY BUFFER.
- TSTB BSSZ 2
- * THE FOLLOWING *PASSWOR* PARAMETER LOCATIONS MUST BE
- * CONSECUTIVE AND IN THE SPECIFIED ORDER.
- OPW CON 0 OLD PASSWORD
- NPW CON 0 NEW PASSWORD
- VERPW CON 0 VERIFICATION PASSWORD
- XD CON 0 PASSWORD EXPIRATION DATE
- XT CON 0 PASSWORD EXPIRATION TERM
- PT CON 0 PASSWORD TYPE (I/B)
- GRC SPACE 4,10
- ** GRC - GENERATE RANDOM CHARACTERS.
- *
- * ENTRY (B2) = NUMBER OF RANDOM ALPHANUMERIC CHARACTERS TO
- * BE GENERATED (0 - 7).
- *
- * EXIT (X1) = RANDOM CHARACTERS, RIGHT JUSTIFIED, ZERO FILL.
- *
- * USES X - 0, 1, 2, 3, 4, 5, 6.
- * A - 2.
- * B - 2.
- *
- * MACROS RTIME.
- GRC SUBR ENTRY/EXIT
- RTIME GRCA GET TIME SINCE DEADSTART
- MX0 -37 USE 37 BITS
- SA2 GRCA
- SX3 B1
- BX2 -X0*X2
- LX3 37 CREATE SEED .GE. 2**37
- GRC1 IX4 X2-X3
- PL X4,GRC2 IF SEED BIG ENOUGH
- LX2 B1
- EQ GRC1 CONTINUE DOUBLING
- GRC2 SX1 B0
- SX3 36 USE CHARACTERS A-Z, 0-9
- GRC3 SB2 B2-B1
- NG B2,GRCX IF ALL CHARACTERS GENERATED
- PX4 X2
- PX5 X3
- NX6 X5
- FX6 X4/X6 NEW SEED = OLD SEED / 36
- UX0,B3 X6 CHARACTER = SEED MODULO 36
- LX4 X0,B3
- IX0 X4*X3
- IX5 X2-X0
- SX5 X5+B1 SET CHARACTER IN RANGE 1-36
- LX1 6 APPEND CHARACTER
- BX1 X1+X5
- BX2 X6
- EQ GRC3 GENERATE NEXT CHARACTER
- GRCA BSS 1 REAL TIME CLOCK
- RPW SPACE 4,20
- ** RPW - RANDOMIZE PASSWORD.
- *
- * IF PASSWORD RANDOMIZATION IS REQUIRED, RANDOM ALPHANUMERIC
- * CHARACTERS ARE GENERATED AND APPENDED TO THE END OF THE NEW
- * PASSWORD.
- *
- * ENTRY (NPW) = USER-SPECIFIED PORTION OF NEW PASSWORD.
- * (OPW) = OLD PASSWORD.
- *
- * EXIT (NPW) = NEW PASSWORD. RANDOM CHARACTERS APPENDED TO
- * END IF REQUIRED.
- *
- * USES X - 0, 1, 2, 3, 4, 5, 6.
- * A - 1, 2, 5, 6.
- * B - 2.
- *
- * CALLS DEL, GRC.
- *
- * MACROS READ, READC, TSTATUS, WRITEC.
- RPW SUBR ENTRY/EXIT
- SA1 NPW CHECK USER ENTERED AT LEAST 2 CHARACTERS
- SX2 DMPS * PASSWORD TOO SHORT.*
- MX3 6
- BX3 -X3*X1
- ZR X3,ABT IF PASSWORD TOO SHORT
- SB2 42-PWRB MAXIMUM UNRANDOMIZED PASSWORD BIT LENGTH
- SX2 DMTL * PASSWORD TOO LONG.*
- LX1 X1,B2
- AX1 X1,B2
- NZ X1,ABT IF PASSWORD TOO LONG
- SX2 3
- RJ DEL DELAY
- * APPEND RANDOM CHARACTERS TO END OF NEW PASSWORD.
- RPW2 SB2 PWRC
- RJ GRC GENERATE RANDOM CHARACTERS
- SA2 NPW
- MX0 6
- SB2 60-PWRB
- LX1 B2
- BX3 X1 SAVE SHIFTED RANDOMIZATION CHARACTERS
- SB2 9 CHARACTERS TO CHECK
- RPW3 LX0 6 SCAN FOR END OF NEW PASSWORD
- BX4 X0*X2
- SB2 B2-B1
- NZ X4,RPW4 IF END OF NEW PASSWORD
- ZR B2,RPW4 IF NULL PASSWORD
- LX1 6
- EQ RPW3 CONTINUE SCAN
- RPW4 SA4 OPW
- BX6 X2+X1
- BX1 X6-X4 CHECK NEW PASSWORD .NE. OLD
- ZR X1,RPW2 IF NEW PASSWORD EQUALS OLD
- SA6 NPW
- * DISPLAY RANDOMIZATION CHARACTERS AND PROMPT FOR VERIFICATION.
- MX0 1 SET CHARACTERS IN MESSAGE
- SB2 PWRB-1
- AX0 B2
- SA2 RPWC
- BX6 -X0*X2
- BX6 X6+X3
- SA6 A2
- TSTATUS TSTB
- SA5 TSTB+1 CHECK TERMINAL TYPE
- AX5 54-0
- ZR X5,RPW5 IF MUX TERMINAL
- WRITEC O,TRMA SET NO LINE FEED AFTER ENTERING PASSWORD
- RPW5 WRITEC O,RCMG DISPLAY CHARACTERS
- * READ AND VERIFY NEW PASSWORD.
- READ I
- READC I,PSBF,B1
- ZR X5,RPW6 IF MUX TERMINAL
- WRITEC O,PWOM OVERWRITE PASSWORD
- WRITEC O,TRMB RESET CURSOR POSITIONING
- RPW6 SX2 3 DELAY
- RJ DEL
- SA1 PSBF
- SA2 NPW
- BX1 X1-X2
- SX2 DMVE * VERIFICATION ERROR.*
- NZ X1,ABT IF PASSWORD INCORRECT
- EQ RPWX RETURN
- * MESSAGES FOR VERIFICATION OF RANDOMIZED PASSWORD.
- RCMG DATA 10H"EM"THE FOLL
- DATA 10HOWING CHAR
- DATA 10HACTERS HAV
- DATA 10HE BEEN APP
- DATA 10HENDED "NL"
- DATA 10HTO THE END
- DATA 10H OF YOUR N
- DATA 10HEW PASSWOR
- DATA 10HD - "NL"
- RPWC DATA 10H "NL"
- DATA 10HENTER YOUR
- DATA 10H NEW PASSW
- DATA 10HORD FOR VE
- DATA 10HRIFICATION
- DATA 10H: "NL" ))))
- DATA 10H))))))))))
- DATA 10H"CR" ((((((
- DATA 10H(((((((("CR"
- DATA 10H MMMMMMMM
- DATA 10HMMMMMM"CR"
- DATA 10HQQQQQQQQQQ
- DATA 10HQQQQ"CR" XX
- DATA 10HXXXXXXXXXX
- DATA 10HXX"CR"
- DATA 10H
- DATA 10H"CR""CB"''''''
- SPACE 4,10
- D3 SET *
- SPACE 4,10
- ** PRESET CODE OVERLAID BY INPUT AND OUTPUT CIO BUFFERS.
- SPACE 4,10
- TKPR BSS 0 TABLE OF KEYWORDS/POSITIONS TO REMOVE
- CON 1 OLD PASSWORD
- CON 2 NEW PASSWORD
- * CON 0 END OF TABLE
- TARG BSS 0 ARGUMENT TABLE FOR *PASSWOR*
- XD ARG XD,XD,400B EXPIRATION DATE
- XT ARG XT,XT,400B EXPIRATION TERM
- PT ARG PT,PT,400B PASSWORD TYPE (I/B)
- CON 0 END OF TABLE
- CFN SPACE 4,10
- ** CFN - COMPARE FILE NAMES.
- *
- * ENTRY (OPTION) = COMMAND OPTIONS SELECTED.
- *
- * EXIT (X1) = 0, IF NO FILE NAME CONFLICT.
- * (X1) = FILE NAME, IF CONFLICT.
- *
- * USES X - 0, 1, 2, 3, 4, 5, 6.
- * A - 1, 2, 4, 5.
- * B - 2, 3.
- CFN SUBR ENTRY/EXIT
- SB2 -B1 INITIALIZE COUNTERS/MASKS
- MX0 -12
- SB3 TFNCL
- MX6 42
- SA5 OPTION
- BX1 X1-X1
- CFN1 SB2 B2+B1 INCREMENT TO NEXT OPTION ENTRY
- LX5 -1
- GE B2,B3,CFNX IF END OF OPTIONS
- PL X5,CFN1 IF OPTION NOT SELECTED
- SA2 TFNC+B2 GET LIST OF FILE NAME COMPARISIONS
- CFN2 LX2 12
- BX1 -X0*X2
- BX2 X0*X2
- LX3 X2
- ZR X1,CFN1 IF END OF FILE NAME COMPARISIONS
- SA1 X1
- BX1 X6*X1
- CFN3 LX3 12
- BX4 -X0*X3
- ZR X4,CFN2 IF ONE PASS COMPLETED
- SA4 X4+ COMPARE FILE NAMES
- BX4 X6*X4
- BX4 X4-X1
- NZ X4,CFN3 IF NO FILE NAME CONFLICT
- EQ CFNX RETURN
- TFNC SPACE 4,10
- ** TFNC - TABLE OF FILE NAME CONFLICT COMPARISIONS.
- *
- * ONE WORD ENTRY FOR EACH COMMAND OPTION, CONTAINING
- * THE 12-BIT FET ADDRESSES FOR THOSE FILES USED BY
- * THIS OPTION.
- * UP TO 5 FET ADDRESSES PER ENTRY ARE ALLOWED.
- TFNC INDEX VFD,LOPT+1,( 60/* )
- INDEX ,KOPT,( 12/P,12/U,36/0 )
- INDEX ,COPT,( 12/I,12/O,12/N,12/U,12/0 )
- INDEX ,UOPT,( 12/I,12/O,12/P,12/U,12/0 )
- INDEX ,ROPT,( 12/O,12/N,12/P,12/U,12/0 )
- INDEX ,SOPT,( 12/P,12/S,12/U,24/0 )
- INDEX ,IOPT,( 12/O,12/P,12/U,24/0 )
- INDEX ,ZOPT,( 12/I,12/O,12/P,12/U,12/0 )
- INDEX ,LOPT,( 12/O,12/P,12/U,24/0 )
- TFNCL EQU *-TFNC
- PKP SPACE 4,15
- ** PKP - PROCESS KEYWORD OR POSITIONAL ARGUMENTS.
- *
- * ENTRY (X6) = ARGUMENT TABLE ADDRESS.
- * (X7) = ARGUMENT TABLE LENGTH.
- *
- * EXIT (X1) = 0, IF NO ERROR.
- * = -1, IF ARGUMENT ERROR.
- *
- * USES A - 1, 2, 6, 7.
- * B - 2, 3, 4, 6.
- * X - 1, 2, 6, 7.
- *
- * CALLS ARM, CPA, USB.
- PKP SUBR ENTRY/EXIT
- SA6 PKPA SAVE ADDRESS AND LENGTH
- SA7 A6+1
- SB2 CCDR UNPACK COMMAND
- RJ USB
- * SKIP TO FIRST ARGUMENT.
- PKP1 RJ POP
- SA2 PKPB
- BX2 X2-X6
- NZ X2,PKP1 IF COMMAND NAME NOT FOUND
- SX1 X1-1R.
- ZR X1,PKPX IF NO ARGUMENTS
- * PROCESS ARGUMENTS.
- SA1 PKPA RETRIEVE ADDRESS AND LENGTH
- SA2 A1+B1
- SB3 X1 ARGUMENT TABLE ADDRESS
- SB2 X2+
- SB4 ABUF CONVERT POSITIONAL ARGUMENTS
- RJ CPA
- NG B5,PKP2 IF ARGUMENT ERROR
- SX6 B5+ SET LWA OF ARGUMENTS
- SB6 ABUF SET FWA OF ARGUMENTS
- SA6 USBC
- RJ ARM PROCESS ARGUMENTS
- ZR X1,PKPX IF NO ARGUMENT ERROR
- PKP2 SX1 -1 INDICATE ARGUMENT ERROR
- EQ PKPX RETURN
- PKPA CON 0 ARGUMENT TABLE ADDRESS
- CON 0 ARGUMENT TABLE LENGTH
- PKPB DATA C*UPROC*
- SPACE 4,10
- ** SECONDARY OVERLAID COMMON DECKS.
- *CALL COMCARG
- *CALL COMCARM
- *CALL COMCCPA
- *CALL COMCPOP
- *CALL COMCRSP
- SPACE 4,10
- ** BUFFER ASSIGNMENTS.
- ABUF EQU * ARGUMENT STRING BUFFER
- CBUF EQU D1 CHARACTER BUFFER
- D MAX D,D1+CBUFL
- PBUF EQU D
- D SET D+VBUFL VALIDUS BUFFER
- NBUF EQU D NEWVAL AND VALINDS BUFFER
- D SET D+VBUFL
- D MAX D,D3
- IBUF EQU D INPUT AND SOURCE BUFFER
- D SET D+IBUFL
- OBUF EQU D
- D SET D+OBUFL OUTPUT BUFFER
- SPACE 4,10
- ** MANAGED TABLES.
- MEML EQU D
- D SET D+1000B
- SPACE 4,10
- RFL= EQU D
- ERRNG RFL=-ABUF-200 ARGUMENT BUFFER OVERFLOW
- SPACE 4,10
- END
cdc/nos2.source/opl871/modval.txt ยท Last modified: 2023/08/05 17:24 by Site Administrator