Trailing-Edge
-
PDP-10 Archives
-
bb-bt99h-bb
-
utl703.d14
There are no other files named utl703.d14 in the archive.
EDIT DESCRIPTIONS FOR UTILITIES-10-V703
EDIT 643 FOR DDT
[SYMPTOM]
Ill Mem Ref.
[DIAGNOSIS]
$4M falls off end of literal.
[CURE]
Fixed in edit 643 of DDT.MAC.
********************************************************************************
EDIT 255 FOR INITIA
[SYMPTOM]
Sometimes, lines that have been quieted by TTY STOMPER cannot be
reused.
[DIAGNOSIS]
TTY STOMPER will not poll the lines unless there is the
system-wide threshold of character I/O has been exceeded in a certain
amount of time. If one or more lines have been quieted, and a user
types a couple of control-Cs on one of these lines, and the character
I/O activity system-wide is below the threshold, TTY STOMPER will
never notice the I/O channel for that line must be released. This
will leave the line in a unusable state.
[CURE]
Keep a count of INIT'ed lines. If this count is non-zero, always
poll the lines regardless of the amount of character I/O traffic in
the system.
********************************************************************************
EDIT 2113 FOR LOGOUT
[SYMPTOM]
A user can defeat quota checking in LOGOUT.
[DIAGNOSIS]
A user fills up funny space with TMPCOR files and
then types KJOB. When LOGOUT runs, it can fail to
open disk DDBs because funny space has been exhausted.
Since no LOOKUPs have succeeded, zero is written back
into the UFD for the number of blocks used.
[CURE]
Delete all TMPCOR files prior to quota checking.
********************************************************************************
EDIT 2052 FOR LOGIN
[SYMPTOM]
Arguments to the /WATCH switch are ignored.
[DIAGNOSIS]
Development edit 2051 corrected problems with half-word logic and
retrieving watch bits from the accounting profile. Corresponding
changes to handle watch bits set by the switch processor were not
made.
[CURE]
Pick up the watch bits set by /WATCH and put them into the proper
half-word for the SETUUO.
********************************************************************************
EDIT 2053 FOR LOGIN
[SYMPTOM]
Users logging in using the 10,# syntax find that no UFD exists
for the PPN they are logged in to.
[DIAGNOSIS]
LOGIN calls UFDSET to perform all UFD-related operations. UFDSET
correctly generates a unique PPN and does create a UFD on disk.
LOGIN, however, still contains some code from pre-UFDSET days which
generates yet another unique PPN and logs the job in using that
different PPN. The user then finds they have no UFD on disk for their
PPN.
[CURE]
Remove code left over from version 63. It is no longer needed.
********************************************************************************
EDIT 2054 FOR LOGIN
[SYMPTOM]
When a password change fails, the job is still logged in, but not
all job parameters are correctly setup.
[DIAGNOSIS]
On a failure, the error return processor normally aborts the
login. In the case of a password change, however, the job is already
logged in, so only the last few remaining unprivileged SETUUOs and
TRMOPs are skipped. A malicious user could take advantage of the
current situation by never supplying a new valid password, and still
be allowed to use the system repeatedly.
[CURE]
Since the system administrator may have required the password
change, the job should not be allowed to login unless the password is
successfully changed. Therefore, move the call to the CHGPSW routine
back before the LOGIN UUO. This will cause any password change
failures to abort the login. Also rearrange calls to similar routines
in the ATTACH and LOGIN code for the same reasons.
********************************************************************************
EDIT 2055 FOR LOGIN
[SYMPTOM]
When a password change fails, the job is still logged in, but not
all job parameters are correctly setup.
[DIAGNOSIS]
On a failure, the error return processor normally aborts the
login. In the case of a password change, however, the job is
already logged in, so only the last few remaining unprivileged
SETUUOs and TRMOPs are skipped. A malicious user could take
advangtage of the current situation by never supplying a new
valid password, and still be allowed to use the system repeatedly.
[CURE]
Since the system adminstrator may have required the password
change, the job should not be allowed to login unless the
password is successfully changed. Therefore, move the call
to the CHGPSW routine back before the LOGIN UUO. This will
cause any password change failures to abort the login. Also
rearrange calls to similar routines in the ATTACH and LOGIN
code for the same reasons.
********************************************************************************
EDIT 2056 FOR LOGIN
[SYMPTOM]
LOGIN will prompt for a name if a name is required and the job
logging in is controlled by a [1,2] job.
[DIAGNOSIS]
In all other places where LOGIN might prompt for additional input
(password, account string, etc.), a check is made to see if the
controlling job is OPR or [1,2]. If so, then LOGIN doesn't prompt.
It does this to allow "silent" logins of the type used by OPSER (the
:SLOGIN command).
[CURE]
Check the "son of OPR" bit and the controlling job's PPN. If it
is controlled OPR or a [1,2] job, then don't prompt for a name.
********************************************************************************
EDIT 635 FOR SYSDPY
[SYMPTOM]
SPACING ON SINGLE CPU CI STATUS DISPLAY IS INCORRECT.
[DIAGNOSIS]
Have to add 4 spaces to correct.
[CURE]
Fixed in edit 635 of SYSDPY.
********************************************************************************
EDIT 10 FOR ACCT
[SYMPTOM]
Skews in the definition of EXPIRATION "NEVER".
[DIAGNOSIS]
ACTDAE and REACT beleive zero represents the "NEVER" condition.
NEWACT thinks it's -1.
[CURE]
Change definition of EXPIRATION "NEVER" from -1 to 0.
********************************************************************************
EDIT 141 FOR ACCT
[SYMPTOM]
If an insertion of a profile containing a duplicate name is
attempted, ACTDAE returns the error message "unexpected RMS error
300030". This is rather cryptic and conveys no useful information.
[DIAGNOSIS]
ACTDAE can differentiate between catastrophic errors and common
ones such as an attempt to insert a duplicate name. Right now, it
only checks for "record not found" errors.
[CURE]
Add an additional check for duplicate record errors.
********************************************************************************
EDIT 142 FOR ACCT
[SYMPTOM]
ACTDAE does not allow * to match a null account string. Both the
documentation and the usage specification claim this is legal. Also,
the invalid account error message is missing a closing double quote
around the offending account string.
[DIAGNOSIS]
If the supplied account string is null, the routine CHKACT will
only return if account validation is not required for a PPN. If it is
required, an error message is issued. No attempt is made to validate
a null string at any time.
[CURE]
Change the routine CHKACT to return TRUE or FALSE depending on
whether or not account validation is required. Then, if the specified
account string is null, and validation is required, try to validate
the null string for the PPN in question. Also match double quotes in
the invalid account error message.
********************************************************************************
EDIT 143 FOR ACCT
[SYMPTOM]
If the USAGE FILE CLOSURE is set to DAILY and a SET DATE command is
typed, incorrect dates and connect times are output to the USAGE file.
[DIAGNOSIS]
A SET DATE command is typed for a date in the future. This causes the
ACTDAE to do a USAGE FILE CLOSURE using the new date as session end
and the old date as session start producing very large connect times.
Now the IPCF message is received from DAEMON. All dates and times are
correct after this event. If the date is set to the past and a USAGE
FILE CLOSURE occurs (for some reason), the old date is the start date
and the new date is the end date causing a negative connect time which
is output as zero in the USAGE file.
[CURE]
Change the ACTDAE to PSI on date/time change instead of taking action
when DAEMON sends its IPCF message.
********************************************************************************
EDIT 3 FOR ACCT
[SYMPTOM]
Missing edit history.
[DIAGNOSIS]
We didn't think anyone cared.
[CURE]
Create edit history to satisfy Autopatch requirements.
********************************************************************************
EDIT 615 FOR BACKUP
[SYMPTOM]
None.
[DIAGNOSIS]
None.
[CURE]
Set up for version 5A.
********************************************************************************
EDIT 616 FOR BACKUP
[SYMPTOM]
/ERSUPERSEDE switch to BACKUP doesn't work. When it is used,
BACKUP will never restore any files.
[DIAGNOSIS]
The /ERSUPERSEDE switch value is being used to determine whether
or not an ENTER UUO will be attempted. It's purpose, however, is to
cause BACKUP (or any other program for that matter) to do
non-superseding ENTER UUOs. If the switch is used, an ENTER is never
done. It is the monitor's place, not BACKUP's to decide if an ENTER
will succeed.
[CURE]
Propagate /ERSUPERSEDE to the ENTER UUO block.
********************************************************************************
EDIT 617 FOR BACKUP
[SYMPTOM]
None.
[DIAGNOSIS]
None.
[CURE]
Don't thrw away the high segment if DDT is loaded.
********************************************************************************
EDIT 620 FOR BACKUP
[SYMPTOM]
None.
[DIAGNOSIS]
None.
[CURE]
Implement suggestion from SPR 10-35445 which allows BACKUP
to unique extensions if the file being restored from tape already
exists on disk. This facility is under the control of the UNIQUE
verb which takes the standard [NO!YES], [OFF!ON], or [0!1] keys.
For compatibility, the default of off. Turning on unique extension
generation implies /ERSUPERSEDE:YES. This feature is most useful
when restoring files from a TOPS-20 DUMPER interchange format tape
which contains long filenames, but can be use successfully when
restoring standard TOPS-10 tapes as well.
********************************************************************************
EDIT 1013 FOR DAEMON
[SYMPTOM]
DAEMON can hang if CRASH.EXE contains junk.
[DIAGNOSIS]
There are two problems. First, if location KONREG in the monitor
is currupted due to hardware or software problems, DAEMON will attempt
to save a negative or very large positive number of controller
registers. Second, DAEMON doesn't correctly range check the maximum
number of controller registers it must save.
[CURE]
Pick up only the right half of KONREG since the number of
registers should be a small integer. Also correctly range check the
maximum number of registers.
********************************************************************************
EDIT 1014 FOR DAEMON
[SYMPTOM]
DAEMON ill mem refs.
[DIAGNOSIS]
DAEMON tries to SPY on more than 128K core.
[CURE]
Don't do that.
********************************************************************************
EDIT 340 FOR SYSTAT
[SYMPTOM]
SYSTAT doesn't report parity error information for all CPUs in an
SMP system.
[DIAGNOSIS]
Parity error statistics are only reported for CPU0.
[CURE]
Report information for all CPUs.
********************************************************************************
EDIT 341 FOR SYSTAT
[SYMPTOM]
SYSTAT gets IO to unassigned channel.
[DIAGNOSIS]
If a user gets/runs SYSTAT with a core argument that makes it
impossible for SYSTAT to have a SPY segment at 128K, SYSTAT gets very
confused.
[CURE]
Make SYSTAT more sensitive about its environment.
********************************************************************************
EDIT 577 FOR COMPIL
[SYMPTOM]
.LOAD/MAP:FOOBAR.MAP @FOO, where FOO.CMD contains "FOOBAR"
gives error "?CMLLRE (0) FILE WAS NOT - FOOBA"
[DIAGNOSIS]
Edit 567 destroys T1 in routine nest, while the caller depends
on T1 being preserved.
[CURE]
PUSH T1 upon entering NEST and restore it upon exit.
********************************************************************************
EDIT 600 FOR COMPIL
[SYMPTOM]
CREATE and EDIT commands are not as useful as they could be.
[DIAGNOSIS]
These edit class commands run DTECO.
[SYMPTOM]
Attempt to run the program pointed to by pathological name
"EDITOR". If the logical name definition doesn't exist, then run
SYS:DTECO.
********************************************************************************
EDIT 577 FOR COMPIL
[SYMPTOM]
.LOAD/MAP:FOOBAR.MAP @FOO, where FOO.CMD contains "FOOBAR"
gives error "?CMLLRE (0) FILE WAS NOT - FOOBA"
[DIAGNOSIS]
Edit 567 destroys T1 in routine nest, while the caller depends
on T1 being preserved.
[CURE]
PUSH T1 upon entering NEST and restore it upon exit.
********************************************************************************
EDIT 600 FOR COMPIL
[SYMPTOM]
CREATE and EDIT commands are not as useful as they could be.
[DIAGNOSIS]
These edit class commands run DTECO.
[SYMPTOM]
Attempt to run the program pointed to by pathological name
"EDITOR". If the logical name definition doesn't exist, then run
SYS:DTECO.
********************************************************************************
EDIT 50 FOR CRSCPY
[SYMPTOM]
CRSCPY assumes unreasonable defaults for listing filespec.
[DIAGNOSIS]
If the user types any part of the filespec, the default device
is TTY.
[CURE]
Change the default device to DSK if any parts if the filespec
are typed. This behavior is similar to that of DIRECT and QUEUE.
********************************************************************************
EDIT 51 FOR CRSCPY
[SYMPTOM]
Debugging CRSCPY can be painful.
[DIAGNOSIS]
CRSCPY destroyes VMDDT and demands CRASH.SYS in unreasonable
places.
[CURE]
Preserve VMDDT. Do not demand physical-only SYS:CRASH.SYS when
loaded with DDT.
********************************************************************************
EDIT 52 FOR CRSCPY
[SYMPTOM]
No problems, but code not as clean as it ought to be.
[DIAGNOSIS]
CRSCPY doesn't use SUSET. UUO.
[CURE]
Change super USETI/O UUOs to SUSET. UUOs.
********************************************************************************
EDIT 114 FOR FILCOM
[SYMPTOM]
Comparrisons of .EXE files is inaccurate.
[DIAGNOSIS]
FILCOM compares too many job data area locations.
[CURE]
Do not compare locations 0-40, 42, 43, 45-73, 77-111,
113, 114, and 132 inclusive. Also FILCOM had a bug
where it was erroneously comparing location 73.
********************************************************************************
EDIT 115 FOR FILCOM
[CURE]
Occasionally, /O reports the wrong tag.
[DIAGNOSIS]
/O very rarely gets the base tag wrong. For example, if file 2 has
two insertions that are far enough apart to be distinct, but closer
than the length of the first insertion, the wrong tag would be used.
Edit 110 broke some cases of a difference in progress at EOF,
causing loops.
[CURE]
Fix.
********************************************************************************
EDIT 22 FOR SCDSET
[SYMPTOM]
UPDATE command doesn't work.
[DIAGNOSIS]
SCDSET doesn't know about version 6 of ACTDAE.SYS.
[CURE]
Update it to know about version 6.
********************************************************************************
EDIT 50 FOR BOOT
[SYMPTOM]
None.
[DIAGNOSIS]
None.
[CURE]
Remove crocks about loading high segments following low segments
and just load into the physical pages specified by the .EXE directory.
********************************************************************************
EDIT 2366 FOR LINK
[SYMPTOM]
LINK V6 does not work under TOPS-10.
[DIAGNOSIS]
LINK V6 was not designed to work under TOPS-10.
[CURE]
Modify LINK V6 to work under TOPS-10.
********************************************************************************
EDIT 2367 FOR LINK
[SYMPTOM]
There is in error in the TOPS-10 core manager.
[DIAGNOSIS]
The TOPS-10 core manager incorrectly allocates core as the result of edit 2366.
[CURE]
Fix the problem.
********************************************************************************
EDIT 2370 FOR LINK
[SYMPTOM]
Under TOPS-10 LINK incorrectly processes certain programs.
[DIAGNOSIS]
LINK is off by one if the last page of a segment is allocated but zero.
[CURE]
********************************************************************************
EDIT 2371 FOR LINK
[SYMPTOM]
LINK may incorrectly process long symbols that are 2 words long.
[DIAGNOSIS]
The exit condition for the loop that processes long symbol names does
not check to see if the count is zero initially.
[CURE]
Have the loop check for this condition.
********************************************************************************
EDIT 2372 FOR LINK
[SYMPTOM]
LINK may loose certain pages when writing an .EXE file.
[DIAGNOSIS]
LINK uses the wrong value for the highest location loaded.
[CURE]
********************************************************************************
EDIT 2373 FOR LINK
[SYMPTOM]
LINK writes garbage to the DDT undefined symbol table, if the undefined
symbol is a long symbol.
[DAIGNOSIS]
LINK failed to check the undefined symbol to see if it was a long symbol
before truncating it and writing it to DDT's undefined symbol table.
[CURE]
Have LINK check to see if the undefined symbol is of the form count,,pointer,
and if so, write the first six characters to DDT's undefined symbol table.
********************************************************************************
EDIT 2374 FOR LINK
[SYMPTOM]
Large overlayed Fortran programs die with and LNKMEF or TP paging
error.
[DIAGNOSIS]
LINK used a global TP.PT in some code as a pointer into the TP window,
while other areas of LINK were treating TP.PT as an in core pointer to
the TP area.
[CURE]
Create a new global TPPTR and use that as the in window pointer for the TP
********************************************************************************
EDIT 2375 FOR LINK
[SYMPTOM]
The symbol table created by LNKMAP is sometimes incorrect.
[DIAGNOSIS]
LINK somtimes incorrectly calculates the length of the window to read in.
[CURE]
********************************************************************************
EDIT 2376 FOR LINK
[SYMPTOM]
Long symbols may not be stored correctly in the symboltable and can result
in undefined symbols. Long program titles are not printed correctly in
links execution message.
[DIAGNOSIS]
The calculation used to form the BTL pointer to move the symbol to its slot in
the symbol table is off by one. The code that prints the long title does not
contain code to handle a count,,address of symbol in PRGNAM.
[CURE]
Calculate the BLT pointer correctly and have LINK handle the long program
********************************************************************************
EDIT 2377 FOR LINK
[SYMPTOM]
LINK does not handle writable links with long names.
[DIAGNOSIS]
Code to handle long writable link names is missing.
[CURE]
********************************************************************************
EDIT 2400 FOR LINK
[SYMPTOM]
Long titles appeared as garbage in the symbol table if /REDIRECT is used.
[DAGNOSIS]
The pointer to the long title was stored in W2. This information is
destroyed by a call to the redirection code.
[CURE]
********************************************************************************
EDIT 2401 FOR LINK
[SYMPTOM]
Long entry points are not stored correctly.
[DIAGNOSIS]
The code that stored the long entry point name counted the header word
when calucating the length of the name.
[CURE]
********************************************************************************
EDIT 2402 FOR LINK
[SYMPTOM]
TOPS-10 version of LINK prints garbage for the program name in its execution
message if a long name is used.
[DIAGNOSIS]
LINK tries to print the count,,address of name stored in PRGNAM.
[CURE]
Move the first 6 charecter into the name slot before attempting to print
********************************************************************************
EDIT 2403 FOR LINK
[SYMPTOM]
New corporate copywrite notice
[DIAGNOSIS]
New corporate copywrite notice
[CURE]
********************************************************************************
EDIT 2404 FOR LINK
[SYMPTOM]
Control T displays garbage for the program name if the program has
a name length greater than 6 characters.
[DIAGNOSIS]
Link passes a character count and address of the name string to the
SETNM% JSYS in T1 and that JSYS exspects the name in SIXBIT in T1.
[CURE]
Pass the first six characters of a long program name to the SETNM% JSYS.
********************************************************************************
END OF UTILITIES-10-V703