			login.c  (v2.0)

/bin/login and /etc/netlogin replacement for Interactive Unix.

This can be used on AT&T SysV/386 3.2.2 as a replacement for
/bin/login.  If Wollongong TCP/IP is used, this login should
NOT be used as a substitute for /usr/etc/netlogin: Wollongong
rlogind uses an incompatible format in the /etc/utmp entries!

This version of login replicates most of the actions of the standard
login provided with AT&T SysV/386 unix. The standard man pages generally
apply, or the provided man pages may be used.

AT&T and Interactive Unix man pages do not document the /etc/dialups &
/etc/d_passwd files, however the dialup feature does indeed exist in the
distribution login programme. This and the non-standard "user access
security" extension are documented in login.4.

This version of login supports "user access security". If file
/etc/usrtime exits, it is processed to restrict the tty line, day of
week, and time of user access. Additional options allow all users, uucp,
slip users and interactive users to be controlled on a global basis.
The format of this file is:

      <user>:<enable>:<tty>:<weekday>:<time>:<comment>

for example:

      ajf:LOGIN:/dev/tty01:Mon,Tue:0800-1700:Temp employee


NEW FEATURES for v2.0

1. Support for /etc/netlogin use with Interactive Unix.
2. Support for /etc/nologin
3. slip login control

This version of login assumes that, for Interactive Unix, /etc/netlogin
is a link to /bin/login.  Examine the beginning part of the code
for login.c if you really must have separate binaries.

Ideally, if you want to follow AT&T SysV conventions, two distinct
binaries should exist: /bin/login should always ensure that it is exec'ed
from the lowest level shell whereas /etc/netlogin does not need to ensure
this.  Instructions for this are commented in login.c.

The /etc/shutdown script and /etc/rc2.d startup files could be
modified to create and destroy the /etc/nologin file.

CREDITS:

Additional enhancements and bug fixes for this version of login
were made by:

	Uwe Doering  	gemini@geminix.in-berlin.de


SUPPORTED:
    1.	/etc/passwd, /etc/shadow
    2.	/etc/default/login
    3.	/etc/dialups, /etc/d_passwd
    4.	/etc/utmp, /etc/wtmp
    5.	/usr/adm/loginlog
    6.	/etc/ttytype
    7	.lastlogin
    8.	/etc/usrtime (non-standard feature)
    9.	/etc/nologin (non-standard for SysV)

NOT IMPLEMENTED:
    1.	internationalization as in Interactive unix.

DIFFERENCES:
    1.  TIMEOUT= in /etc/default/login is the total elapsed time required
        for a successful user name and password.  The AT&T manuals
        indicate that this really should be the number of seconds
        between receipt of a userid and the receipt of a password.
    2.  This login assumes a sane tty condition for getty and
    	telnet login.
    3.	CONSOLE= in /etc/default/login accepts colon-separated devices
    	as well as "?" wildcard specifications.
    		CONSOLE=/dev/console:/dev/vt??
    4.	User access security (/etc/usrtime) is not standard.
    5.	Change of the root directory is implemented as per AT&T man
    	pages, however, I cannot figure out why the functionality
    	exits!  No "useful" results could be found.
    6.	The -p (preserve environment) is not standard for Interactive
    	login (however is normal for other systms).
    7.  Of course, other differences exist.....
    

INSTALL:
========
Check the Makefile before compilation to define your options.

/etc/netlogin and /bin/login could be links to the same binary
or separate binaries.

-----------------------------------------------------------------------------
tony field            tony@ajfcal.cuc.ab.ca
