Trailing-Edge
-
PDP-10 Archives
-
AP-D543V_SB
-
lgn60a.doc
There is 1 other file named lgn60a.doc in the archive. Click here to see a list.
LOGIN.DOC -- Changes from V60(631) to V60A(634)
August 1978
COPYRIGHT (C) 1974,1976,1978 BY
DIGITAL EQUIPMENT CORPORATION, MAYNARD, MASS.
THIS SOFTWARE IS FURNISHED UNDER A LICENSE AND MAY BE USED AND COPIED
ONLY IN ACCORDANCE WITH THE TERMS OF SUCH LICENSE AND WITH THE
INCLUSION OF THE ABOVE COPYRIGHT NOTICE. THIS SOFTWARE OR ANY OTHER
COPIES THEREOF MAY NOT BE PROVIDED OR OTHERWISE MADE AVAILABLE TO ANY
OTHER PERSON. NO TITLE TO AND OWNERSHIP OF THE SOFTWARE IS HEREBY
TRANSFERRED.
THE INFORMATION IN THIS SOFTWARE IS SUBJECT TO CHANGE WITHOUT NOTICE
AND SHOULD NOT BE CONSTRUED AS A COMMITMENT BY DIGITAL EQUIPMENT
CORPORATION.
DIGITAL ASSUMES NO RESPONSIBILITY FOR THE USE OR RELIABILITY OF ITS
SOFTWARE ON EQUIPMENT WHICH IS NOT SUPPLIED BY DIGITAL.
LGN60A.DOC Page 2
LOGIN.DOC -- Changes from V60(631) to V60A(634)
August 1978
1.0 SUMMARY
This release of LOGIN is being sent with 603A and only includes those
edits which were sent as correction files with release 6.03 and the
scheduler LIR. A combined correction file, LOGIN.COR, is also
included. Note that THERE ARE NO OTHER BUG FIXES OR CHANGES. LOGIN
V60A(634) is the field image version plus 3 edits. See section 5.0
for a list of the patches.
LOGIN is documented in Software Notebook Vol. 2.
2.0 EXTERNAL CHANGES
There are no external changes.
3.0 KNOWN BUGS AND DEFICIENCIES
The bugs reported via SPR's are not included in this release. This
release only includes the correction files shipped with 6.03 and 6.03
scheduler LIR. MACRO V53 will not assemble the POINTER macros
correctly.
4.0 INSTALLATION INSTRUCTIONS
None.
5.0 INTERNAL CHANGES
Edit #
632 DON'T TRY TO SET SCHEDULER CLASS QUOTAS IF 6.03 SCHEDULER
RUNNING IN WMU MODE
633 LOCATE USER AT CENTRAL SITE IF LOGGING IN ON A NODE WITHOUT AN
LPT (DN87)
634 PUT IN SUPPORT FOR BACKGROUND BATCH FOR THE NEW CLASS SCHEDULER
[End of LGN60A.DOC]
[LGN60.DOC is appended as an integral part of LGN60A.DOC]
LGN60.DOC Page 3
LOGIN.DOC -- Changes from V57 to V60(631)
August 1976
1.0 SUMMARY
This is a maintenance release of LOGIN. Most of the edits are bug
fixes which will increase LOGIN's stability in the field. Also
included is (unsupported) code to allow the user to change his/her own
password and a system for encrypting passwords for greater security.
LOGIN is documented in Software Noteboook Vol. 2A.
This version of LOGIN supersedes all previous versions. It runs under
all supported monitors. LOGIN V60 has been tested successfully under
5.07B/6.01B, 6.02, 6.02A, and field test versions of 6.03.
The following CUSPs must be used with LOGIN V60:
MACRO version 50 or 52
SCAN and WILD version 7
FACTOR version 1
2.0 EXTERNAL CHANGES
There are three new switches supported in LOGIN version 60.
/UFDPROT:nnn Set protection of created UFD's to nnn
/SFDPROT:nnn Set protection of created SFD's to nnn
/DEFPROT:nnn Set default protection for all files created during
this terminal session to nnn (requires monitor 6.03 or
later)
There are also two switches controlled by assembly conditional
switches which are normally off. This code is unsupported and is
supplied solely as a convenience to the user site.
Assembly switch PSWCHG turns on code to allow users to change their
own passwords. If this switch is turned on, it enables the /PASSWORD
switch. This switch is ignored in SWITCH.INI, but if typed on the
LOGIN command line it causes LOGIN to prompt "New password: " after
the old one has been validated. The users types his new password
(which is echoed to prevent typing errors from locking a user out of
his own PPN). This password is then written into ACCT.SYS and becomes
the user's new password.
Assembly switch NCRYPT turns on code that performs a non-invertible
hashing function on the user's password before checking it against the
one in ACCT.SYS. This assumes that the password was hashed by the
same function before being stored in ACCT.SYS. The purpose of doing
this is that if only hashed passwords are stored, then even though
someone gains access to ACCT.SYS, he still cannot use the passwords
LGN60.DOC Page 4
since there is no way to convert the hashed passwords back into the
real ones. The one drawback is that if a user forgets his password,
there is no way to find it out: he must simply create a new one.
REACT is not yet coded to hash passwords before storing them in
ACCT.SYS, but it is a simple matter to copy the routine from LOGIN (it
is only half a page long) into REACT.
3.0 KNOWN BUGS AND DEFICIENCIES
None.
4.0 INSTALLATION INSTRUCTIONS
Previous versions of LOGIN never checked the "may log in under Batch"
bit in ACCT.SYS for [1,2] jobs. Since LOGIN version 60 now checks
this bit, you should be sure that this bit is set if you plan to run
batch jobs under [1,2]. Previous versions of LOGIN also never checked
the bit which says "may log in as a Batch job subjob". Since this bit
is now checked, you may wish to revise your ACCT.SYS entries if you
plan to have Batch jobs log in subjobs in any manner.
5.0 INTERNAL CHANGES
Edit #
540 Check creation date-time of accounting files and rebuild high
segment database if they have changed.
541 Give warning message if not JACCTed.
542 Fix /VERB and /MESSAGE
543 Move call to RNMAIL to before the LOGIN UUO so it has JACCT
and can rename mail to user's area.
544 .REQUEST SCAN, WILD, and HELPER to simplify assembly and
loading.
545 Fix one more bug in /CORE.
546 Determine 2741-ness of terminal early enough so we know to
unlock the keyboard when giving the # prompt.
547 Allow /QUOTA to force recomputing even if other users same
PPN.
550 Add /SFDPROT:nnn to do the obvious.
551 Rewrite /CORE logic once and for all.
LGN60.DOC Page 5
552 Reorder some code to make it less convoluted.
553 Fix bug in WAITO routine.
554 Add /UFDPROT:nnn to do the obvious.
555 Don't allow ATTACHes after KSYS unless OPR or son-of-OPR.
556 Clean up the listing.
557 Add two (unsupported) security features. Assembly switch
NCRYPT causes password encryption before comparison with
ACCT.SYS. REACT should encrypt passwords using the same
algorithm before storing them if this is used but is not
coded to do so yet. Assembly switch PSWCHG enables code to
allow users to change their own passwords via a /PASSWORD
switch.
560 Remove the significance of slash in PPN (but still allow it -
old habits die hard).
561 Do extended LOOKUP of FACT file so we always get file's exact
length in words.
562 Don't assume any error return while reading ACCT.SYS is an
end-of-file. Check it and print a useful message if there is
a real error while reading it.
563 Don't enable control-c if user is locked into running a cusp.
564 Clean up exit sequence.
565 Re-init stack every time through LOGIN3.
566 Turn RP.LOG off if user control-c's while recomputing so he
won't recompute needlessly next time.
567 If either half of LIB PPN is zero, default to corresponding
half of logged-in PPN.
570 Clean up some code.
571 Remove FACT file code from LOGIN and put it in a separate
module called FACTOR.
572 Add check to bypass blank AUXACC.SYS entries.
573 Fix ?LGNSND error in monitors with LIMLVL=5.
574 Save M, N, and CH over STUFBS if the message is typed so we
don't garbage the quotas.
575 Make Batch jobs wait twice as long for UFD interlocks, and
don't let them break it down at all.
LGN60.DOC Page 6
576 Fix ?ILL MEM REF when CUSP-to run doesn't exist.
577 Allow OPR to log in even if no AUXACC.SYS.
600 Only type error severity number to Batch jobs.
601 Add TWOSEG to LGNDCL so LOGIN assembles with MACRO v.52
602 Check JBTLIM to see if we're a Batch job so we don't depend
on BATCON being called that.
603 Check times-to-log-in for Batch jobs and P.LGBT.
604 Fix ?SCNNDV Null device illegal mesage from SCAN on 2nd try
at logging in.
605 Rewrite code at NOJBMS through TTYDET to fix bugs introduced
by edits 602 and 603 and to make the code readable.
606 Allow ATTACH and LOGIN after KSYS from local TTY's.
607 Fix problem in edit 605.
610 Allow passwords in entries which span disk blocks in ACCT.SYS
to be changed.
611 Prevent strange races in ATTACHes.
612 Make ?may not log in remote/batch subjob/batch/dataset errors
fatal so BATCON won't waste time trying the jobs again.
613 Clean up the listing; remove unreferenced data and
unreachable code.
614 Add a missing POPJ to end of ENTPTH.
615 If LOGIN dies for any reason, SETNAM to FLUSH rather than
LOGIN to avoid kludge in CLOCK1.
616 Don't change UFD protection unless /UFDPROT specified.
617 More changes to make LOGIN assemble with MACRO v.52.
620 Implement /DEFPROT:nnn.
621 Don't type strange garbage if logged-in user types .R LOGIN.
[End of LGN60.DOC]
[LGN57.DOC is appended as an integral part of LGN60.DOC]
LGN57.DOC Page 7
LOGIN.DOC - Changes from V56 to V57
July 1975
1.0 SUMMARY
The principle purpose of this release is to provide support for the
new features of the 6.02 Monitor; specifically, to set ENQ/DEQ quotas
and to place the job in the appropriate scheduler class on Login.
Also included are several bug fixes and hooks for external accounting
modules to simplify the task of adding extra accounting logic to
LOGIN.
LOGIN is documented in Software Noteboook Vol. 2A.
This version of LOGIN supersedes all previous versions. It runs under
all supported monitors. The DATE75 project is fully implemented.
LOGIN V57 has been tested successfully under 5.07A, 5.07B/6.01B, and
6.02.
The following CUSPs or later must be used with LOGIN V57:
MACRO version 50
SCAN and WILD version 7
2.0 EXTERNAL CHANGES
None.
3.0 KNOWN BUGS AND DEFICIENCIES
None.
4.0 INSTALLATION INSTRUCTIONS
4.1 ENQ/DEQ:
REACT V31 has an extra question which asks for the user's ENQ/DEQ
quota. This is stored in bits 27-35 of the expiration date word, the
right half of which was previously unused. LOGIN reads this quantity
and passes it to the Monitor as the user's ENQ/DEQ quota. However, if
these bits are all ones, LOGIN does not set the quota. When the user
first does an ENQ, Monitor will then supply the current system-wide
default quota.
LGN57.DOC Page 8
4.2 Scheduler Parameters:
REACT V31 has another new question which asks for the user's scheduler
type. This 9-bit quantity is stored in bits 18-26 of the expiration
date, the right half of which was previously unused.
When LOGIN V57 is first run, it reads a new accounting file called
SCDMAP.SYS into its high segment. This file provides a mapping
between scheduler types, which are stored in ACCT.SYS, and scheduler
classes, which is what the scheduler and SCHED.UUO talk about. When
the user logs in, LOGIN gets his scheduler type from ACCT.SYS.
SCDMAP.SYS is a binary file with 4 entries per word. Entry number n
is the scheduler class for type n. In other words, SCDMAP.SYS is set
up somewhat like a page map. LOGIN computes an index into SCDMAP.SYS
from the scheduler type read from ACCT.SYS and picks up the
appropriate scheduler class from its copy of SCDMAP.SYS in its high
segment.
SCDMAP.SYS has two parallel tables in it. The first 512 entries, or
128 words, contain the mappings from types to classes for timesharing
jobs. The second 512 entries contain the mapping of types to classes
for batch jobs. Thus, system administrators can specify different
scheduling priorities for batch jobs and timesharing jobs.
SCDMAP.SYS is generated by a new CUSP called SCDSET. This CUSP also
tweaks the scheduler on the fly. This CUSP must be run before
bringing up LOGIN V57 in order to create SCDMAP.SYS. If SCDMAP.SYS
does not exist or cannot be read, the first user to run LOGIN will
receive the warning message:
Cannot find SCDMAP.SYS. Please call the operator.
Only the first user will receive this message as LOGIN sets a flag in
its hi seg and if it could not read SCDMAP.SYS the first time, it
doesn't attempt to do any of the scheduler stuff. Installations which
are running Monitors without the new scheduler need not create
SCDMAP.SYS as LOGIN checks the second states word in Monitor and does
not attempt any of the scheduler setting code if the Monitor does not
support it. It should be mentioned that if any of the accounting
files (not only SCDMAP.SYS) are modified while the system is running,
LOGIN should be renamed to itself. This will supersede the copy of
LOGIN on the swapping space which would otherwise contain obsolete
indices into ACCT.SYS and AUXACC.SYS and an obsolete copy of
SCDMAP.SYS. For more detailed information concerning the new
scheduler and its parameters, see the DOC file for SCDSET.
LGN57.DOC Page 9
5.0 INTERNAL CHANGES
Edit #
420 Fix security bug in ATTACH.
421 Fix test for detached line.
422 fix bug in recomputing logic which caused file structures to
be omitted from search list.
423 Add /RTCOMP switch.
424 Make LOGIN use all of hi seg for ACCT.SYS directory (LOGIN
used to always expand core even when not necessary).
425 Add code to read SCDMAP.SYS and set scheduler classes.
426 Fix bug in ENQ/DEQ routine.
427 Check for end of TABSTR in Tiny Monitors.
430 Make a -1 ENQ/DEQ quota entry mean don't set the quota so on
the first ENQ Monitor will supply a system-wide default
quota.
431 Skip about 30 useless instructions if non-6.02 monitor.
432 Do a CRLF after typing "No operator coverage".
433 Fix possible race condition in SCHED. table logic and do
some random code cleanup.
434 Allow switch alone on cmd line (so /HELP wins).
435 Allow CR in response to # without nasty error message.
436 Add some preliminary hooks for external accounting module.
437 Fix bug related to VM and ACCT.SYS version 4.
440 When saying "Other jobs same PPN", tell him what jobs.
441 Make start address and program name work right.
442 Move call to .OSCAN so A) user has search list when it is
called, and B) /NAME works right without the necessity of
hacks like edit 355.
443 Finish the job of edit 442 by removing SETTMP and CLRTMP.
444 Code cleanup.
445 Don't tell [1,2] jobs which jobs are also under [1,2].
LGN57.DOC Page 10
446 Fix spurious error message in Tiny Monitor.
447 Make .LOGIN[proj,prog,sfd,sfd,...]/switch work.
450 Add /NOTICE:arg switch to control printing NOTICE.TXT.
arg=ALWAYS to always see notice
arg=SOMETIMES to work like slash in PPN
arg=NEVER to never see notices.
451 Re-allow user to have different path than logged-in PPN.
452 Use second 512 entries of SCDMAP.SYS for batch jobs.
453 Make default for /NOTICE be sometimes.
454 Fix bug in sfd logic and typo in /NOTICE logic.
455 Make /VERBOSITY work right.
456 Convert all output TTCALLS to use buffered tty output.
457 Add /PATH switch to do the obvious thing.
460 When doing a recompute, sprinkle some OUTPUT TTYs around to
keep the user patient.
461 Add a few more OUTPUT TTYs and fix security breach in ATTACH.
462 When ATTACHing to a job whose ACCT.SYS entry requires a name,
only ask if there is a name in ACCT.SYS against which to
check it.
463 Fix possible bug in scheduler table building logic.
464 Reserve BATMIN jobs for Batch.
465 Add another OUTPUT TTY.
466 Save error code over call to UFDSMB at LGNCAS [SPR 10-15873]
467 Make /PATH in SWITCH.INI work.
470 Add /ASSIGN:phys:log to do the obvious.
471 Edit 467 broke /SPOOL. Fix: add the oft-forgotten -1 after
a BLT.
472 Split TRMOP.s into two groups: those which should be done
before printing notices, and those which should be done
afterwards. Currently, the only ones which are done after
are speed.
LGN57.DOC Page 11
473 Fix halt when /ASSIGN used without logical name.
474 Fix possible stack phase problem in PARSE.
475 Add timeout to WAITO routine.
476 Fix bad return from error recovery routine in LGNDSK.
477 Check LOGMAX for Batch jobs and add a new class of error
message for BATCON: REQUE, error code 5, meaning reque this
job and don't schedule any more jobs for a little while.
500 Removed by edit 505.
501 When scanning all job numbers, scan thru HIGHJOB, not LOGNUM.
502 In a sequence of /ASSIGNs, the last one is not done. Cure:
change an AOJL to AOJLE.
503 When LOGMAX is exceeded LOGIN tells you and then cleverly
proceeds to log you in. Fix: treat REQUE as a fatal error.
504 Put EQACT in the high seg where it belongs.
505 Check BATMAX rather than LOGMAX for Batch jobs. LOGMAX is
now (re-)defined to mean the number of interactive, user
(non-OPR) jobs allowed to be logged in. Also add conditional
assembly switch BATMAX which will turn on the BATMAX-checking
code. This requires edit 1055 in BATCON.
506 Make .LOG 3,4[5,6] work.
507 Add an error message if the ENQC. UUO fails.
510 Clean up some error messages.
511 Fix bug in /CORE logic; add some error messages for "this
can never happen" type stuff.
512 Add check in TYPE routine to POPJ right out if name of file
is zero (no name, no wildcards) to avoid a bizarre bug in
WILD.
513 Don't turn off echo until entire command line is typed so
continuation lines will echo.
514 If UFD interlock is busy too long, get impatient and clear it
anyway.
515 Make sure RP.LOG gets set.
516 Code cleanup.
LGN57.DOC Page 12
517 Don't type "No operator coverage" on every retry
520 Don't bother clearing TMPCOR. Lock out ctrl-c while we have
UFD interlock. This will fix some obscure bugs in LOGIN that
have been around for a long time.
521 Fix handling of /CORE.
[End of LGN57.DOC]
[LGN55 is appended as an integral part of LGN57.DOC]
LGN55.DOC Page 13
LOGIN.DOC -- Changes from V54 to V55
June 1974
1.0 SUMMARY
This major release of LOGIN supports a large number of new features.
These include:
- Use of SCAN and WILD for SFD support
- Ability to read switches from the LOGIN line
- Ability to read SWITCH.INI to set user profiles
- Improved directory logic
- Support for 5.07 and 6.01 monitors
- Support for 2541 terminals
- Support for BATCON V12 and SPRINT V2
- Improved error messages
- Support for DATE75
- Watchdog timeout to prevent LOGIN from hanging
- Cleanup of internal logic
- Improved control- C processing
Parameters which may be set from SWITCH.INI or the users command line
include:
- Core limit (for use by BATCON V12)
- Dskful error or pause
- Default path
- Library
- Time limit (for use by BATCON V12)
- Station number
- User name
- NEW or SYS
- Private notice file
- Virtual memory parameters
- WATCH and SPOOL
LOGIN version 55 runs on all supported monitors. It has been tested
on 5.06 and 6.01/5.07. It fully supports the DATE-75 project. LOGIN
version 55 fully supersedes all previous versions.
LOGIN version 55 is documented in the system command manual. Related
documentation can be found in the DOC files for WILD version 6, SCAN
version 6, and REACT version 30.
LGN55.DOC Page 14
1.1 Function of LOGIN
LOGIN is used to verify a users right to access the system. LOGIN
does password and name checking as required. LOGIN logs the user into
the system by creating directories, writing an accounting record, and
setting user parameters as directed by the accounting files and
switches on the LOGIN line and in SWITCH.INI. LOGIN also verifies
that an Attach command is valid.
2.0 EXTERNAL CHANGES
None.
3.0 KNOWN BUGS AND DEFICIENCIES
None.
4.0 INSTALLATION INSTRUCTIONS
See .CTL file.
5.0 INTERNAL CHANGES
Edits prior to edit 74 were never recorded and are lost to history.
The major change was the addition of SCAN and WILD. All edits from 74
to 314 are listed below:
EDIT #
74 Turn off the level c switch (LEVCSW)
75 Make symbols match C.MAC. Use C.MAC with LOGIN.
76 Change AC names so that there is only 1 name for a given AC.
Make the names and usage agree with SCAN and the cusp standards.
OLD NEW
A T1
B T2
C T3
D T4
77 Make AC5=P1 be preserved.
100 Change CALC to P2
101 Get rid of T,E. AC 5 is now P1.
LGN55.DOC Page 15
102 Make CH=14. Rename AC 10 c. CH is the character output and
manipulation AC. C is the character input AC. C is set by SCAN
and never modified by LOGIN.
103 Call .PSCAN to do partial scanning. Calling .TSCAN is not
correct.
104 Have ATTACH check its arguments prior to doing the ATTACH UUO.
This will filter out bugs.
105 Use standard date format (as returned by .GTNOW) to compute the
day of the week. Idea: add a routine (.WKDAY) to SCAN to return
the day of the week in T1. WED.=0
106 Add a watchdog timeout to TTY input routine. If there is no TTY
activity in 2 min. The user is given a helpful message and
logged off.
107 Add global routine .TNEWL to satisfy extern in WILD. For LOGIN's
simple needs this routine is just a POPJ
110 Add the message "invalid PATH specification". This is induced by
supplying a file name or extension on the PATH.
111 Add "invalid format for project-programmer number". This is
induced by any one of a long list of syntax errors.
112 Add the /QUOTA switch to force quota to be recomputed.
113 Make sure P2 is preserved.
114 If the UFD interlock is busy for more than 10 seconds and there
are no other users under this PPN, LOGIN will assume a swap read
error took place and clear and reset the UFD interlock.
115 AC BP was removed since it did not contain a global byte pointer
and it confused the logic flow.
116 Remove the UFD buffer since the UFD is never read.
117 Do not SCAN all users S.L.'s if OTHUSR says there are no other
users under this PPN.
120 Create SFD's as needed to set up the correct default PATH.
121 Do not recomp if only the error bit is set since it slows down
LOGIN which users do not like.
122 ILL. MEM. REF. in FASTLG code. Diagnosis: indexing a HISEG
address by a HISEG address. Cure: remove HRR T1,PDACC at
CHECK1+43
123 SFD's are not created correctly. All SFD's are in the UFD rather
than nested. Diagnosis: missing MOVEM. Cure: add it.
LGN55.DOC Page 16
124 Call .PSCAN after the command is decoded but before the PPN is
stripped off. Note: this will allow switches on the line with
the prompt.
125 Handle control-c on input as soon as possible.
126 Setting up default paths still does not work correctly for WILD
card programmer numbers. Diagnosis: default is not known until
after all UFD's are created. Cure: add another test.
127 LOKALL never finds file errors. Diagnosis: extended LOOKUP is
not extended far enough. Cure: get data up to .RBSTS
130 The /WATCH switch uses different names the the monitor set watch
command. Cure: make LOGIN agree with the monitor.
131 LOGIN with no arguments gives an error message. Cure: check for
end of line.
132 Implement SWITCH.INI in LOGIN.
133 Add an example of how to patch you monitor to debug LOGIN
134 Add 2 switches to LOGIN. They are watch and spool. E.g.
/WATCH:(VERSION,DAY)/SPOOL:NONE
/WATCH:ALL/SPOOL:(LPT,CDR)
These switches are "ored" with those specified by the accounting
file.
135 Improve the message for KSYS up to: timesharing is over
136 If LOGIN is loaded with DDT do not clear core when done. Also
transfer to DDT instead of doing a LOGOUT UUO.
137 More conversion to C.MAC. Use TXNN, MOVX etc.
140 Get MFDPPN,etc from GETTAB
141 Allow /HELP
142 Misc bug fixes
143 LOGIN did not clear args for RUN UUO. Some edit left junk in the
core arg. Change to clear core arg.
144 Convert all messages to conform to message standard
145 Fix bug in WILD card PPN logic. FASTLG code read the wrong
block.
146 Fix bug in file error logic
147 Cleanup listing
LGN55.DOC Page 17
150 Compensate for some bugs in SCAN. These the bugs are related to
the use of .PSCAN and end of line conditions.
151 Wrong time was typed because an AC was getting destroied.
152 Improve recomp messages
153 Give fact files standard SYS protection
154 Make LOGIN over a PTY from a detached job behave like LOGIN from
a remote terminal.
155 Make LOGIN over a PTY have privileges of last job before a [1,2]
job in CTLJOB sequence
156 Don't turn echoing on for HDX lines
157 Prevent security breach in ATTACH
160 Log ATTACH failures - same code as LOGIN failures
161 Move time to LOGIN check to before password check
162 Remove level-c code from the listing.
163 Removed by edit 313
164 Correct a bug related to lower case passwords
165 Correct TTYGET so that it only waits 2 min. As advertised.
166 Change message from "recomputing disk quotas" to "recomputing
disk usage".
167 Add /CORE switch to set user core limit
170 Add /LOCATE switch to set user station number
171 Add /NEW /SYS /SCAN to set PATH specification.
172 Add /DSKFUL and /DSKPRI to do those set UUO's
173 Add /PHYSICAL:N to set current physical limit and /VIRTUAL:N
175 Remove definitions of JBTSTS bits and use JOBSTS UUO to read JLOG
and JACCT.
176 Implement /RUN:FILESPEC. this will run the selected program if
and only if there is not program specified in ACCT.SYS.
177 Implement /NOTE:FILESPEC. this switch will print the selected
file using the NOTICE.TXT logic. This is useful if one wants to
print a project notice kept in a library area. The filespec may
contain wildcards.
LGN55.DOC Page 18
200 Improve "timesharing is over" message to be in upper and lower
case and begin with lgttio. Also, change severity of error (to
BATCON) from fatal to stop scheduling.
201 Fix a bug in /QUOTA logic. With this fixlogin will clear any
error bits in UFD which reflect the status of deleted files.
I.e. The makes "lgnfee xxxx file errors exist" go away.
202 Rewrite NOTICE.TXT printer to be smaller and faster. Also add
argument to subroutine to alow a general filespec to
203 Add /LIB:[PPN]. this sets up a LIB: area
204 Add /NOLIB, /NONEW, /NOSCAN, /NOSPOOL, /NOWATCH to do the obvious
things.
205 Add /STR and /NOSTR to type STR.TXT on all file structures on
which the user has a UFD
206 Use correct bits in setting /LIB and /SYS.
207 If the user types "log p/pn /SWITCH:FILE" SCAN returns with a
PATH spec of all zeros. Zero is not a disk and LOGIN gets upset.
This is fixed by changing zero to SIXBIT dsk.
210 Change max for /QUOTA from zero to one. This will keep SCAN
happy.
211 Fix up call to .LKWLD so all files get found. This requires WILD
edit 143 (version 6).
212 Fix LGNBPN to have a CRLF
213 Make SNOOZE time dependent on ACCT.SYS file length
214 /TIME:N sets system CORMAX to N words instead of setting per user
time limit. Fix: HLRI to HRLI
215 If SETUUO for watch bits ever failed error message would be
garbage. Fix: load correct AC
216 Fix up PATH. UUO's so that only correct operation takes place.
217 Fix /DSKPRI switch.
220 Clean up error messages
221 Prevent NOTICE.TXT from printing while running OPSER
222 SWITCH.INI does not get looked at by SCAN. Diagnosis: call to
.ISCAN remembers PPN so chgppn UUO has no effect. Cure: store
new PPN in .MYPPN so SCAN will see it.
LGN55.DOC Page 19
223 SWITCH.INI does not get looked at by SCAN. Diagnosis: at time
of call to .OSCAN job's search list is null, so LOOKUP gets error
code 24. Cure: set a temporary search list to be the list of
all mounted structures.
224 Allow version 3 of ACCT.SYS to be processed. The only difference
between version 2 and version 3 isword 6 in a version 2 ACCT.SYS
entry contains junk while word 6 in a version 3 entry contains:
Bits 0-8 maximum physical page limit
Bits 9-17 maximum virtual page limit
Bits 18-26 IPCF RCV quota
Bits 27-35 IPCF XMT quota
225 Fix remaining bugs in SWITCH.INI processing
226 Fix 221
227 Replace calls to SIXMSG with calls to .TSIXN. Straighten out
messed up AC useage related to UFD enter failures.
230 Speed up .TNEWL so that it does not do any TRMOP. uuos
231 Fix up message for STRUUO failure related to inserting str into
your search list
232 Turn on /OKNONE for all files to be typed out. This will keep
LOGIN from complaining about a missing NOTICE.TXT
233 Since every call to STUFCL has a JFCL after it the skip return
seems non-useful. Therefor, change STUFCL to always return .POPJ
234 Convert LOGIN to use C.MAC and SCNMAC as universal files.
235 Remove LEVDSW, LEVCSW and CDSW
236 Inset DATE75 conditional to decide if date is in the new or old
format. If DATE75 is non-zero date is in new format.
237 Straighten out use of flags in left half of F. the following
flags go away: FL.TYO, L.FRE1, L.SIN, L.FRE2, FL.LVD, FL.ERR
FL.RCQ. The following flags now have thier ouwn bits and are not
shared with other bits: FL.ERR,L.PEND
240 Remove code which can never be executed.
241 If the user logges in with a slash and says /STR and has already
seen STR.TXT he does not see STR.TXT again. Since this feature
is designed to tell the user what packs are mounted this is a
bug. Fix: always print STR.TXT
242 Type out filename, extension, PATH etc. For files typed by the
/NOTE switch.
LGN55.DOC Page 20
243 Fix misplaced POPJ so that LOGIN 0/0 does not win. Also fix bad
test so we do not log format errors in FACT.SYS
244 Prevent WILD from giving protection failure messages on
NOTICE.TXT STR.TXT etc.
245 Support set watch version and set watch mta from ACCT.SYS
246 Fix SNOOZE to check for a 60 second max. Sleep time
247 Move some symbols to C.MAC so they need not be defined here.
250 Clean up the listing
251 Define some macros to generate error messages. These are :
STOP -- very fatal error have BATCON stop
FATAL -- fatal to this user
WARN -- semi-fatal for this user
INFO -- message in []
This will help use do /VERBOSITY in a future edit.
252 Convert /WATCH and /SPOOL to use the OBV ("or" bit value) feature
in SCAN.
253 Fix /DSKPRI to return correctly
254 Call .CLRBF on all errors
255 Reorder the code so that similar functions are close together
256 Break up LOGIN into several seperate modules:
LOGIN -- universal parameter file
LGNINI -- startup module aa.br LGNSCN -- command scanner
LGNACT -- accounting module
LGNDSK -- directory builder
LGNSET -- module to do set UUO's for user switches
LGNIO -- random I/O subroutines
LGNERR -- error message typers
LGNEND -- exit sequence
LGNLOW -- low segment
The modules still live in one file for convience. The reason for
the changes is to allow parts of LOGIN to be used in the rewrite
of the mount system.
257 Change SETSTS at FLUSHX to a reset which will work just as well.
260 Fix a bug introduced by sorting the code.
261 Change LGNCUX to LGNNSL which seems more mnemonic
262 Make sure charge number gets set on every LOGIN
LGN55.DOC Page 21
263 Implement /GUIDELINE to set physical guideline
264 Implement /LIMIT to be the opposite of /GUIDELINE. note: one
can say /NOGUIDELINE or /GUIDELINE:0 or /LIMIT:0 or /NOLIMIT etc.
265 Rework the control-c logic as follows: if control-c is typed
prior to LOGIN and no critical action is in progress and no disk
writes have been done, LOGIN types KJOB and exits. If a critical
action (building HISEG index) is in progress LOGIN will exit
a.s.a.p. If LOGIN is recomping or has created a UFD it forces
the user to LOGIN then exits. After the user is logged in LOGIN
will abort on the first control-c.
266 Require a value to be typed on /CORE, /DSKPRI, /LIB, /LOCATE
/NOTE, /PHYSICAL, /TIME, and /VIRTUAL
267 Pick up the verbosity in .FLVRB and include in set UUO to set
watch arguments.
270 Fix some misc problems
271 If both logged-in and logged-out quota are infinite do not
recompute disk useage. [infinite = 377777,,777777(8)] note:
/QUOTA will still force a recomp
272 Move NEWACT to HISEG if FASTLG is non-zero. That way we will
remember that we have the new ACCT.SYS.
273 Do not attempt to put single access file structures into the fake
search list set up for .OSCAN.
274 Improve the routine that reads the password for half-duplex,
local copy, and 2741 terminals.
275 Invent .CLEOF and call it whenever .CLRBF is called. This will
cause LOGIN to give a prompt at the correct places.
276 Change the /STR switch to print ALL:STR.TXT[1,4] instead of
SYS:STR.TXT.
277 Move some more code to LGNSCN
300 Fix SCAN to work better. While most of the edits are in SCAN we
have to change some of the calls. This does that.
301 Make UFD LOOKUP failure give correct error core
302 Set mppl and mvpl to be 1 greater than the number stored in
ACCT.SYS if that number is non-zero. This lets us have 512p max
at the cost of not allowing 1p.
303 Support LOGNUM
304 If BATCON gets confused and sends an illegal command string do no
allow a retry.
LGN55.DOC Page 22
305 Removed by 306
306 Remove edit 305
307 Rework the retry logic slightly to not sleep unless user is very
fast. This will slow down PTY jobs without affecting real users.
310 Clear out some flags on retry so user always gets the right PPN.
311 Fix up the /WATCH switch to set the right bits
312 Improve the mask printer for 2741 terminals
313 Add the /NAME switch for BATCON V12 and SPRINT V2. /NAME will
work as follows:
If name in ACCT.SYS equals 0 then begin
If /NAME given use it else
Ask for name and use result end
If name in ACCT.SYS = 0 then begin
If /NAME given begin
If name required must match ACCT.SYS entry end
Use the name
If no /NAME switch then begin
If name required ask for name and match ACCT.SYS
If name not required use name from ACCT.SYS
End
End
The net effect is to allow user to specify his name on the job
card and get it stored correctly in the job tables. If the user
does not need his name checked he can specify any name he wants.
To defeat this for installations which want to force the name in
ACCT.SYS to be used, change the namesw routine in LGNSCN to be a
POPJ. That will make the /NAME switch a nop.
314 Fix ILL. MEM. REF. in local copy code.
315 Clean up lowseg so no low file.
[End of LGN55.DOC]