Home | History | Annotate | Download | only in getty
History log of /src/libexec/getty/main.c
RevisionDateAuthorComments
 1.68  12-Oct-2021  jmcneill getty: Remove 2 second sleep before opening tty

This (apparently very old!) workaround to ensure that DTR stays down long
enough to be detected is now handled by serial drivers themselves. For
console devices (framebuffer, serial console, etc) this was an unnecessary
2 second penalty that we have all been paying since the beginning of time.
 1.67  26-Feb-2020  riastradh uugetty is no more
 1.66  10-Jan-2017  christos branches: 1.66.14;
need <sys/stat.h> for chmod
 1.65  17-Mar-2016  christos branches: 1.65.2;
Add volatile for gcc 5
 1.64  12-Aug-2013  joerg Use __dead.
 1.63  11-Aug-2013  martin Fix another automatic variable that is life both pre- and post the siglongjmp
(which gcc calls "might be clobbered") by marking it volatile: on some
machines, this value might end up in a register loaded before the sigsetjmp,
but not preserved by the siglongjmp later.
Fixes the VAX build.
 1.62  11-Aug-2013  dholland Use siglongjmp to jump out of signal handlers.
 1.61  11-Aug-2013  dholland Pass WARNS=5.
 1.60  04-Nov-2012  christos remove useless include (sys/stat.h) and add useful one (stdio.h)
 1.59  28-Jun-2012  roy branches: 1.59.2;
Don't attempt to parse a termcap/terminfo string ourselves;
always use tputs(3).
 1.58  03-Feb-2010  roy branches: 1.58.6; 1.58.8;
Userland now builds and uses terminfo instead of termcap.

OK: core@, jdc@
 1.57  04-Jul-2009  mbalmer Remove an old workaround from SCCS times (%M% would insert the filename).
 1.56  20-Jul-2008  lukem branches: 1.56.10;
Remove the \n and tabs from the __COPYRIGHT() strings.
 1.55  13-Apr-2008  dholland branches: 1.55.4;
'_' is functionally alphanumeric in many contexts, including login names.
Since it doesn't have case, treat it like a digit. While here, avoid
setting the associated flag variable by incrementing it.
Fixes PR bin/33521; patch based on one from Dieter Roelants.
 1.54  04-Mar-2008  dholland Sort includes, removing duplicate <time.h>.
 1.53  03-Dec-2007  isaki branches: 1.53.4;
white space fix.
 1.52  17-Jan-2007  hubertf branches: 1.52.4;
Remove duplicated #includes and some trailing whitespace while here.
From Slava Semushin <slava.semushin@gmail.com>
 1.51  16-Nov-2006  christos pass lint
 1.50  28-Dec-2005  christos PR/25605: Frank Kardel: getty leaves ttymodes at read login state when
exec-ing pppd. Fixed as suggested.
 1.49  10-Sep-2005  elad Don't chown/unlink uninitialized lockfile if not uugetty.
From Dr. Wolfgang Stukenbrock, PR/31040.
 1.48  01-Jun-2005  lukem Ensure rval is initialized before we try to check it; it won't be set
if AL or NN are in use.
Detected with gcc -Wuninitialized.
 1.47  17-Mar-2005  christos print ptyfs ptys properly.
 1.46  05-Nov-2004  dsl branches: 1.46.2;
Add (unsigned char) cast to ctype functions
 1.45  07-Aug-2003  agc Move UCB-licensed code from 4-clause to 3-clause licence.

Patches provided by Joel Baker in PR 22284, verified by myself.
 1.44  20-May-2003  thorpej Add a "nn" (no name) capability to getty. If set in gettytab, getty
will not prompt for a login name, and will not pass one along to the
login program. This can be used to accomodate login programs that have
an alternate way of selecting the user to log in.
 1.43  17-May-2003  itojun use strlcpy
 1.42  14-Dec-2001  christos PR/14941: David Querbach: add support for non-standard MS-Windows PPP client.
 1.41  10-Nov-2001  thorpej ANSI'ify.
 1.40  10-Nov-2001  thorpej Const'ify partab[].
 1.39  02-Nov-2001  christos Update to the new t_agetstr() API.
 1.38  19-Feb-2001  cgd convert to use getprogname()
 1.37  04-Feb-2001  christos remove redundant decls
fix nested extern
 1.36  10-Jan-2001  lukem - don't use LOG_ODELAY; it's the default
- use LOG_WARNING (instead of LOG_ERR) for non-fatal errors
 1.35  28-Dec-2000  sommerfeld Add new :cs: modifier to gettytab which clears the screen using the
appropriate control sequence from termcap (based on the terminal type
listed in /etc/ttys for the line).
 1.34  08-Oct-2000  bjh21 Clean-up of grotty SCCS workaround. It's now almost not grotty at all.
This is the last part of PR bin/10049.
 1.33  08-Oct-2000  bjh21 Don't run over the end of the banner buffer if it ends with '%'.
From PR bin/10049
 1.32  19-Sep-2000  mjl Use strlcpy/strlcat instead of strn* plus manual termination.
Use sizeof() instead of hardcoded length. Clean up NULL vs 0
confusion. sizeof(char) is 1, really.
 1.31  14-Jan-2000  ad branches: 1.31.4;
- Either QVT/Term or the NT 'clipboard' converts tabs to spaces. I pasted in
some code via QVT/Term. Sigh. Fix it.
- Teeny KNF nit.
 1.30  04-Jan-2000  ad Add two new capabilities to gettytab - idea from FreeBSD:
al - user to auto-login as
if - banner file to display, like /etc/issue
 1.29  15-Dec-1999  drochner add one byte to the username character array and make sure the string
passed to "login" is '\0'-terminated
 1.28  15-Jan-1999  kml branches: 1.28.2; 1.28.6;
Ensure that all of the initial message (im=) gets flushed to the
screen; previously, the last buffer worth of text would fail
to be printed.
 1.27  12-Oct-1998  tsarna Add PPP autodetect, based on code from FreeBSD via OpenBSD.
 1.26  06-Jul-1998  mrg - use an array MAXHOSTNAMELEN+1 size to hold hostnames
- ensure hostname from gethostname() is nul-terminated in all cases
- minor KNF
- use MAXHOSTNAMELEN over various other values/defines
- be safe will buffers that hold hostnames
 1.25  30-Mar-1998  mrg remove register.
 1.24  18-Nov-1997  thorpej Const'ify some things, rename local puts() to xputs(), since it has
a different prototype than the one in <stdio.h>
 1.23  19-Oct-1997  cjs Add uugetty capability.
 1.22  06-Aug-1997  mikel use <sys/cdefs.h> __COPYRIGHT() and __RCSID() macros
prototype internal functions and eliminate old function declarations
misc cleanup (gcc -Wall) and KNF
 1.21  06-Aug-1997  mikel don't include <signal.h> twice
 1.20  29-Apr-1997  tls fix a couple of unlikely buffer overflows.
 1.19  14-Nov-1996  gwr After the chown(ttyn, 0, 0), call ttyaction(ttyn, "getty", "root")
 1.18  31-Jul-1996  thorpej RCS id police.
 1.17  15-May-1996  jtc Updated to use <util.h>.
From Greg Hudson <ghudson@MIT.EDU>.
 1.16  08-Feb-1996  mycroft Make sure that the user name cannot ever be interpreted as an option to
login(8). Note: This does *not* fix any security holes.
 1.15  13-Aug-1995  cgd log open failure every 10th try (that was the old behaviour) UNLESS
the error is ENXIO and it's already been logged. (this allows people
to leave getty's running on nonexistent devices without filling their
syslog. while it's arguable that that might not be a good idea, i've
found it to be _very_ useful, because it allows me to rdist /etc/ttys.)
 1.14  19-Jun-1995  jtc sys/termios.h -> termios.h
 1.13  18-Sep-1994  mycroft Fix typo in date format.
 1.12  05-Sep-1994  pk Use tcflush().
 1.11  05-Sep-1994  pk Set control flags properly while in read mode.
Supply process ID when syslogging.
 1.10  24-Aug-1994  mycroft Fix pad insertion for termios.
 1.9  24-Aug-1994  mycroft branches: 1.9.2;
Use cfset[io]speed() to set termios speeds, per POSIX.
 1.8  17-Aug-1994  pk Cleanup import, merge local changes.
 1.7  28-Apr-1994  pk Towards termios.
 1.6  17-Mar-1994  pk TIOCFLUSH requires argument
 1.5  09-Mar-1994  cgd fix bin/140: use getcap(3) routines
 1.4  08-Mar-1994  mycroft We don't need or want set_ttydefaults().
 1.3  29-Aug-1993  mycroft Add some more magic cookies for the `im' string to display info from
uname(2):

%s sysname
%r release
%v version
%m machine
 1.2  01-Aug-1993  mycroft Add RCS identifiers.
 1.1  21-Mar-1993  cgd branches: 1.1.1;
Initial revision
 1.1.1.2  17-Aug-1994  pk Import 4.4-Lite version.
 1.1.1.1  21-Mar-1993  cgd initial import of 386bsd-0.1 sources
 1.9.2.2  24-Aug-1994  mycroft update from trunk
 1.9.2.1  24-Aug-1994  mycroft file main.c was added on branch netbsd-1-0 on 1994-08-24 17:12:38 +0000
 1.28.6.1  27-Dec-1999  wrstuden Pull up to last week's -current.
 1.28.2.1  20-Dec-1999  he Pull up revision 1.29 (via patch, requested by drochner):
Make room for a terminating '\0' in the username string and make
sure the user name passed to "login" is terminated.
 1.31.4.1  17-Oct-2000  tv Pullup 1.33 [bjh21]:
Don't run over the end of the banner buffer if it ends with '%'.
 1.46.2.2  13-Jun-2005  tron Pull up revision 1.48 (requested by lukem in ticket #398):
Ensure rval is initialized before we try to check it; it won't be set
if AL or NN are in use.
Detected with gcc -Wuninitialized.
 1.46.2.1  19-Mar-2005  tron Pull up revision 1.47 (requested by christos in ticket #24):
print ptyfs ptys properly.
 1.52.4.2  23-Mar-2008  matt sync with HEAD
 1.52.4.1  09-Jan-2008  matt sync with HEAD
 1.53.4.1  24-Mar-2008  keiichi sync with head.
 1.55.4.1  18-Sep-2008  wrstuden Sync with wrstuden-revivesa-base-2.
 1.56.10.1  30-Apr-2010  matt Syslog if login_tty fails
 1.58.8.1  05-Jul-2012  riz Pull up following revision(s) (requested by roy in ticket #391):
libexec/getty/main.c: revision 1.59
Don't attempt to parse a termcap/terminfo string ourselves;
always use tputs(3).
 1.58.6.3  22-May-2014  yamt sync with head.

for a reference, the tree before this commit was tagged
as yamt-pagecache-tag8.

this commit was splitted into small chunks to avoid
a limitation of cvs. ("Protocol error: too many arguments")
 1.58.6.2  16-Jan-2013  yamt sync with (a bit old) head
 1.58.6.1  30-Oct-2012  yamt sync with head
 1.59.2.2  20-Aug-2014  tls Rebase to HEAD as of a few days ago.
 1.59.2.1  20-Nov-2012  tls Resync to 2012-11-19 00:00:00 UTC
 1.65.2.1  20-Mar-2017  pgoyette Sync with HEAD
 1.66.14.1  08-Apr-2020  martin Merge changes from current as of 20200406

RSS XML Feed