Trailing-Edge
-
PDP-10 Archives
-
bb-d549g-sb
-
wld5.doc
There are no other files named wld5.doc in the archive.
WILD.DOC -- Changes from version 4 to 5
November, 1973
Copyright 1973, Digital Equipment Corp., Maynard, Mass.
1.0 SUMMARY
1.1 This release adds the capability of handling
wild-cards in the output (or secondary input) file
specifications. It also supports the DATE75 project
and adds support for the new switches /ERPROTECTION
and /OKPROTECTION. WILD version 5 corrects all SPRs
received through October 10,1973 (10-11421).
1.2 WILD version 5 runs on all monitors. It has been
tested on 5.06. There are no known deficiencies.
1.3 WILD version 5 is documented implicitly in the
software notebook description of DIRECT, and briefly
in chapter one of the system command manual.
Supporting documentation can be found in the .DOC
files for SCAN version 4 and DIRECT version 3.
1.4 Function of WILD
WILD is designed to be used as a subroutine called
from any program which needs to perform wild-card
lookups on any device. It is needed since the logic
for selecting and reading directories has become
quite involved under the 5-series monitor. Among the
special cases handled correctly by WILD and few other
user-mode programs are sub-file directories, NEW:,
HLP:, SYSA:, and controller controller-class and file
structure abbreviations. Most Digital supplied
utilities will eventually be converted to use WILD if
they perform wild-card operations.
WILD.DOC -- Changes from version 4 to 5 Page 2
2.0 CHANGES
123 Add a new error message "? NO FILE NAME SPECIFIED".
124 Add routine .SCWLD to handle secondary wild-cards
such as output files.
125 Simplify checks for end of directory list.
126 At location WILDK, replace the HALT with a JRST to
recover from read errors in the directory.
127 Add routines E.LKEN and .TFILB as general purpose
SCAN style typeout blocks.
130 Create a dummy module, WILDDM, which defines a low
segment the same size as WILDs. This will be updated
each release.
131 In .SCWLD, if the input and output files are for the
same owner, set the default protection to be xyy
where x is from the system standard file protection
and yy is from the input file.
132 Support the DATE75 project when checking the /BEFORE
and /SINCE switches.
133 Support the /OKPROTECTION and /ERPROTECTION switches.
/OKPROTECTION suppresses protection check error
messages. This is the default if the UFD is wild.
134 Correct error in edit 127.
135 Handle device NUL: correctly. NUL: is considered to
be a non-directory device for callers of WILD.
136 (SPR 10-10819) Fix a bug in the DECtape directory
logic for wild-carding which omitted the first file
of the directory.
137 Type the correct directory when the UFD has a
protection error and the user was trying to specify
the directory itself.
140 Change all error messages to have a unique prefix of
six letters starting with WLD. The message prefixes
are:
DEM %directory is empty
DFO ?open failure for xxx in use by job nnn
IOE %error while reading file
IWC ?insufficient wild-cards in input for
output
LKE lookup/enter failure (or mnemonic
message)
LKP %lookup failure (or mnemonic message)
WILD.DOC -- Changes from version 4 to 5 Page 3
NDO ?null name in output wild-card
NFS ?no file name specified
NNO ?null directory in output wild-card
NSD %no such directory
NSF %no such files as
NXD %non-existent ufd
NXU %non-existent ufd
SCO ?open failure on xxx in use by job nnn
SLE %search list empty for device
Each error message has a local symbol defined of the
form E$$xxx where xxx is the unique error suffix.
141 (SPR 10-11421) Verify that /STRS and /PHYSICAL are
the same on all files of a concatenated
specification.
142 Correctly store for the caller the pointer to the
matching input file spec.
WILD.DOC -- Changes from version 4 to 5 Page 4
3.0 KNOWN BUGS AND DEFICIENCIES
None.
4.0 CHANGES IN INSTALLATION INSTRUCTIONS
None.
5.0 SUGGESTIONS
Read the directories via super USETI if possible for
better speed. This would also allow a pack to be
read when not mounted as a structure.
Support a switch to control SFD scanning, going to
LIB: and SYS:. This would override the job's
default.
When user specifies "SYS:" and has NEW: enabled,
wild-card over both [1,4] and [1,5].
Make the routine which outputs "IN USE BY JOB n" be
generally available.
When the user specifies "ALL:", exclude any
single-access structures which he does not own.
Extend the error message routines to include all the
components of a concatenated specification.
WILD.DOC -- CHANGES FROM VERSION 3 TO 4 Page 5
EXTRACTS FROM WLD4.RND
2.0 CHANGES
100 (INTERNAL) CHANGE TO USE .FX SYMBOLS FROM SCNMAC.
101 USE FX.DFX TO FLAG MFD FIXUPS (USER SPECIFIES EXTENSION
.UFD). THIS GIVES THE CONSISTENT INTERPRETATION OF
FILE NAME BEING IGNORED AND DIRECTORY USED FOR
EXTENSION .UFD. ALSO, CORRECT THE CODE TO HANDLE
SYS:.UFD, ETC., CORRECTLY.
102 REMOVE A GLITCH WHICH PROHIBITED RE-ENTRY AFTER A
NON-DISK DEVICE IS USED. BEFORE THIS CHANGE, THE
CALLER HAD TO UPDATE THE INITIAL POINTER AND RESTART
WILD.
103 ALLOW BOTH FX.ADD AND .FXTRO FOR THE INCLUSIVE OR
FUNCTION. THIS LAYS THE GROUND-WORK TO SWITCH TO "!"
AS THE INCLUSIVE OR SPECIFICATION IN MATCHING RATHER
THAT "+".
104 (SPR 10-7182) ADD DEFENSIVE HALT IN CASE LH(DIRECTORY)
IS ZERO. THIS CAN BE CAUSED ONLY BY AN INTERNAL ERROR
OR BY A FILSER BUG.
105 (INTERNAL) REPLACE THE INTERN STATEMENTS BY "::".
106 USE THE CORRECT EXTENSION IN THE LOOKUP ERROR MESSAGE.
107 ADD HANDLING OF WILD-CARDS ON DEC-TAPE. HANDLING OF
NON-DISK DEVICES IS ENABLED BY A NEW BIT IN THE
ARGUMENT BLOCK. WHEN SET, THE OPEN AND LOOKUP BLOCKS
ARE SETUP FOR ALL DEVICES. THE NON-SKIP RETURN IS
TAKEN ONLY WHEN THE REQUESTS ARE FINISHED.
110 CORRECT SUBSCRIPTING IN E.DFL ROUTINE.
111 FOR MAG-TAPES, SET OPEN BLOCK DEPENDING UPON THE
/DENSITY AND /PARITY SWITCHES.
112 CHANGE /BEFORE AND /SINCE LOGIC TO CONSIDER -1 AS
DEFAULT BEHAVIOUR.
113 IF THE USER'S PROJECT NUMBER IS GREATER THAN 7, AND THE
TARGET DIRECTORY PROJECT IS LESS THAN 10, THEN IF THE
USER TYPED "*" FOR PROJECT AND NOT "*" FOR PROGRAMMER
NUMBER REJECT THE MATCH. THIS SUPPORTS THE NOTION THAT
FOR PROJECTS BELOW 10, THE PROGRAMMER NUMBER IS
INDEPENDENT OF THOSE ABOVE 10. IN PARTICULAR, WITH
LIBRARIES, ETC., BEING DEVELOPED FOR PROJECTS BELOW 10,
WILD.DOC -- CHANGES FROM VERSION 3 TO 4 Page 6
USERS LOOKING FOR THEIR FILES IN ALL PROJECTS SHOULD
NOT SEE THESE FILES. IF EITHER THE PROJECT IS EXPLICIT
OR THE PROGRAMMER IS "*", THEN THE OLD BEHAVIOUR IS
INDICATED. THUS, [*,*] WILL STILL SEARCH ALL UFD'S.
NOTE THAT [?,X] WILL MATCH PROGRAMMER X IN ALL
DIRECTORIES BELOW PROJECT 10. NOTE ALSO, THAT THE
BEHAVIOUR FROM [1,2] IS UNAFFECTED.
114 HANDLE [1,1].UFD CONSISTENT WITH THE OTHER .UFD
HANDLING. THIS ELIMINATES THE NOTATION OF
#X0000YY.UFD[1,1].
115 CORRECT A BUG IN THE MFD CHKACC LOGIC. THIS WAS
UNCOVERED BY A BUG IN TWICE WHICH CAUSED STRANGE UFD
PROTECTIONS, BUT THE CODE SHOULD BE CORRECT ANYWAY.
116 CORRECT BUG INTRODUCED BY 107.
117 ADD ENTRY POINT .CHKTA FOR DIRECT TO CHECK THE
BEFORE/SINCE SWITCHES ON MAGTAPES.
120 CHANGE THE MODULE NAME FROM "WILD" TO ".WILD" TO AVOID
ANY NAME CONFLICTS.
121 ADD SYMBOLS ".WILDZ" AND ".WILDL" FOR THE START AND
LENGTH OF THE LOW SEGMENT AREA.
122 HANDLE NO MFD MESSAGE GRACEFULLY ("NON-EXISTENT MFD ON
XXX:").
WILD.DOC -- CHANGES FROM VERSION 2 TO 3 Page 7
EXTRACTS FROM WLD3.RND
THE ONLY CHANGE IS TO CORRECT ONE BUG. THIS BUG CAUSED WILD
TO SKIP THE LAST FILE IN EACH BLOCK OF THE DIRECTORY.
WILD.DOC -- CHANGES FROM VERSION 1 TO VERSION 2 Page 8
EXTRACTS FROM WLD2.RND
2.0 EXTERNAL CHANGES
2.1 USER (CONSOLE) CHANGES
2.1.1 SUB-FILE DIRECTORIES ARE FULLY SUPPORTED. IN
PARTICULAR, UP TO FIVE SFDS MAY BE SPECIFIED FOLLOWING THE
PROJECT,PROGRAMMER NUMBER. THESE SFDS MAY INCLUDE BOTH *
AND ? WILD CARDS. THE SFDS ARE SPECIFIED IN SIXBIT
SEPARATED BY COMMAS. THUS, FOR EXAMPLE, TO REFER TO THE
FILE NAMED FOO.MAC WITHIN SFD XYZ WHICH RESIDES IN SFD ABC
IN AREA [10,612], ONE TYPES "FOO.MAC[10,612,ABC,XYZ]".
2.1.2 THE DEFAULT DIRECTORY SET BY SETSRC IS FULLY
SUPPORTED. THIS IS NORMALLY INVOKED BY NOT SPECIFYING THE
DIRECTORY IN THE COMMAND. IF IT IS DESIRED TO SPECIFY THE
DEFAULT DIRECTORY EXPLICITLY, THE NOTATION "[-]" MAY BE
USED.
2.1.3 FOR CONVENIENCE, A DIRECTORY REFERENCE TO A DIRECTORY
IN THE USER'S PROJECT OR HIS PROGRAMMER NUMBER MAY BE LEFT
BLANK. THUS [,7] WHEN LOGGED IN AS [10,612], MEANS [10,7].
SIMILARLY, [11,] WOULD MEAN [11,612]. THIS ALSO CAN BE USED
WITH SFDS, SO THE EXAMPLE IN 2.1.1 CAN BE TYPED AS
"FOO.MAC[,,ABC,XYZ]". IF THE DEFAULT DIRECTORY IS NOT THE
USER'S LOGGED IN UFD, HIS UFD CAN BE REFERENCED AS "[,]".
NOTE THAT THESE NOTATIONS USE THE USER'S LOGGED IN PROJECT
PROGRAMMER NUMBER, NOT HIS DEFAULT DIRECTORY.
2.1.4 A DEFICIENCY IN VERSION 1 HAS BEEN FIXED. THE
NOTATION "+" IS USED TO COMBINE SEVERAL SPECIFICATIONS INTO
ONE WILD CARD SCAN. IT REPRESENTS AN OR FUNCTION. FOR
EXAMPLE, A.B+C.D MEANS ANY FILE NAMED A.B OR C.D. IN
VERSION 1, THIS DID NOT WORK FOR UFDS. IN VERSION 2 IT
WORKS FOR ALL CASES.
2.1.5 (SER 1567) WILD NOW HANDLES CONTROLLER CLASS
ABBREVIATIONS, CONTROLLER ABBREVIATIONS, AND STRUCTURE
ABBREVIATIONS. THIS IS FULLY COMPATIBLE WITH THE FILSER
INTERPRETATION OF THESE ABBREVIATIONS.
2.1.6 REPORTING OF DIRECTORY LOOKUP ERRORS IS DEFERRED TO
THE END OF LOOKING AT ALL STRUCTURES. THUS, IF AN SFD OR
UFD IS MISSING ON ONE STRUCTURE, BUT PRESENT ON ANOTHER
STRUCTURE, NO ERROR WILL BE GENERATED. THIS IS COMPATIBLE
WITH THE FILSER INTERPRETATION.
2.1.7 THE OPEN FAILURE MESSAGE NOW INCLUDES A QUESTION MARK
TO MAKE IT FATAL. IF POSSIBLE, IT ALSO INCLUDES THE JOB
NUMBER OF THE JOB WHICH IS USING THE DEVICE.
WILD.DOC -- CHANGES FROM VERSION 1 TO VERSION 2 Page 9
2.1.8 THE FILSER LOOKUP ERROR CODE 24 IS SUPPORTED. THIS
CODE HAPPENS IF THE JOB'S SEARCH LIST IS EMPTY. WILD
VERSION 1 DETECTED THIS ITSELF FOR WILD CARD LOOKUPS, BUT IT
DEPENDS ON FILSER IF NO WILD CARDS ARE INDICATED.
2.1.9 THE DIRECTORY WILD CARDING WORKS AS FOLLOWS. A FILE
IS A MATCH ONLY IF IT APPEARS AT THE DEPTH INDICATED BY THE
DIRECTORY SPECIFICATION OR IF 0 MATCHES THE NEXT DEEPER
DIRECTORY SPECIFICATION. THUS, IF THE USER TYPES
"[1,2,A,*,C]", FILES WILL MATCH ONLY IN [1,2,A] (SINCE 0
MATCHES *) AND IN [1,2,A,*,C] (SINCE THIS IS THE BOTTOM
LEVEL).
2.1.10 SPECIAL HANDLING IS PERFORMED WHEN THE USER SPECIFIES
.UFD AS THE EXTENSION. IN THIS CASE, THE PROJECT-PROGRAMMER
NUMBER FROM THE DIRECTORY (AFTER DEFAULTING) IS SUBSTITUTED
FOR THE FILE NAME AND THE DIRECTORY IS SET TO BE THE MFD
(1,1).
2.1.11 WHEN THE MONITOR DOES A LOOKUP ON DEVICES SUCH AS
SYS: OR HLP:, IT IGNORES THE DIRECTORY SPECIFICATION UNLESS
IT TURNS OUT TO BE A LOGICAL DEVICE NAME. WILD DOES THE
SAME THING.
2.2 CALLER (PROGRAM) CHANGES
2.2.1 WILD NOW OBSERVES THE STANDARD CALLING CONVENTIONS.
ACS 1-4 ARE TEMP AND 5 IS PRESERVED. PARAMETERS ARE PASSED
TO IT VIA A POINTER IN AC 1. THE INDEX TO THE SCAN BLOCK
WHICH MATCHED THE REQUEST IS STORED IN A LOCATION SELECTED
BY THE CALLER.
2.2.2 WILD HAS BEEN UPDATED TO USE THE REVISED TYPEOUT
ROUTINES IN SCAN VERSION 2. THE CALLING SEQUENCE TO THESE
ROUTINES HAS BEEN CHANGED TO PASS THE VALUE IN AC 1.
2.2.3 DIRECTORIES ARE LISTED BY CALLING THE NEW ROUTINE
(.TDIRB) IN SCAN VERSION 2. THIS ROUTINE HANDLES SFD FORMAT
AND SCAN FORMAT FOR THE TYPEOUT.
2.2.4 ALL DIRECTORY READING IS NOW ON CHANNEL 0, WHICH IS
ASSUMED TO BE A SCRATCH CHANNEL. BECAUSE OF THIS, ALL
DIRECTORIES ARE READ IN DUMP MODE.
WILD.DOC -- CHANGES FROM VERSION 1 TO VERSION 2 Page 10
2.2.5 THE DATA READ ROUTINE (.NXDTW) NOW USES A CHANNEL
SELECTED BY THE CALLING PROGRAM. THE DATA CHANNEL IS NOW
OPENED BY THE CALLER.
2.2.6 THE FLAG (.WLDFL) WHICH INDICATES WILDCARD VS.
MULTIPLE STRS VS. SIMPLE LOOKUP, NOW HAS A FOURTH STATE--
VALUE -2 MEANS BOTH MULTIPLE STRS AND WILDCARD.
2.2.7 THE LOOKUP BLOCK IS NOW RETURNED IN A CORE BLOCK
POINTED TO FROM THE ARGUMENT BLOCK. THIS IS SETUP IN
STANDARD EXTENDED LOOKUP FORMAT.
2.2.8 A ROUTINE (.CHKTM) HAS BEEN ADDED WHICH WILL VALIDATE
THE FILE'S CREATION TIME AND DATE AGAINST THE /BEFORE AND
/SINCE SWITCHES FROM SCAN. (THESE SWITCHES ARE NOT
SUPPORTED IN SCAN VERSION 2).
5.0 INTERNAL CHANGES
5.1 C.MAC AND SCNMAC.MAC ARE USED FOR ALL MONITOR AND
PARAMETER SPECIFICATIONS.
5.2 ALL DIRECTORY READS ARE VALIDATED BY THE CHKACC UUO.
THIS REMOVES A DEFICIENCY IN QUEUE WHICH ALLOWED THE USER TO
LIST PROTECTED DIRECTORIES. THUS WILD CAN NOW BE USED IN
ANY PROGRAM RUNNING WITH JACCT TURNED ON.
5.3 THE INDEX POINTER TO THE FILE SPEC AREA IS NOW IN P1 (AC
5).
5.4 THE DIRECTORY READING CODE HAS BEEN REWRITTEN. IT NOW
HANDLES UFDS AND SFDS IN ONE ROUTINE. WHEN A UFD OR SFD IS
FOUND, THE SEARCH WILL DROP DOWN INTO THAT DIRECTORY IF
THERE IS ANY POSSIBILITY FOR A MATCH. AT END OF DIRECTORY,
THE SEARCH WILL RETURN UP ONE LEVEL. LEVELS OF THE
DIRECTORY WITHOUT WILDCARDS WILL AVOID THE SCAN AND ASSUME
THE RESULT IMMEDIATELY.
5.5 NO SPRS HAVE BEEN RECEIVED. THE ONLY SER WAS 1567,
WHICH IS ANSWERED.
5.6 WHEN WILD IS DONE WITH A DIRECTORY, IT DOES A CLOSE 100
SO THE MONITOR WILL DELETE THE ACCESS TABLES. THIS SHOULD
DECREASE INTERFERENCE IN THE DORMANT ACCESS TABLES.
WILD.DOC -- CHANGES FROM VERSION 1 TO VERSION 2 Page 11
[END OF WILD.DOC]