diff options
author | peter <peter@FreeBSD.org> | 1996-08-13 07:53:54 +0000 |
---|---|---|
committer | peter <peter@FreeBSD.org> | 1996-08-13 07:53:54 +0000 |
commit | 7e745e3e6f861028c4e50937c77cacfc22f9752e (patch) | |
tree | 8cdbce3248f9b9255913263cbf0c08606a79e6ea /secure/libexec/telnetd/sys_term.c | |
parent | 027cdb6a44811bd1249b20a80b2010bc5ff7241c (diff) | |
download | FreeBSD-src-7e745e3e6f861028c4e50937c77cacfc22f9752e.zip FreeBSD-src-7e745e3e6f861028c4e50937c77cacfc22f9752e.tar.gz |
Same as non-secure telnetd, add support for ``-P altlogin'' to specify
an alternate /usr/bin/login type program to be run.
Diffstat (limited to 'secure/libexec/telnetd/sys_term.c')
-rw-r--r-- | secure/libexec/telnetd/sys_term.c | 12 |
1 files changed, 9 insertions, 3 deletions
diff --git a/secure/libexec/telnetd/sys_term.c b/secure/libexec/telnetd/sys_term.c index 87db574..cb8245f 100644 --- a/secure/libexec/telnetd/sys_term.c +++ b/secure/libexec/telnetd/sys_term.c @@ -42,6 +42,8 @@ static char sccsid[] = "@(#)sys_term.c 8.4+1 (Berkeley) 5/30/95"; #include <libtelnet/auth.h> #endif +extern char *altlogin; + #if defined(CRAY) || defined(__hpux) # define PARENT_DOES_UTMP #endif @@ -1781,10 +1783,14 @@ start_login(host, autologin, name) close(pty); #endif closelog(); - execv(_PATH_LOGIN, argv); - syslog(LOG_ERR, "%s: %m\n", _PATH_LOGIN); - fatalperror(net, _PATH_LOGIN); + if (altlogin == NULL) { + altlogin = _PATH_LOGIN; + } + execv(altlogin, argv); + + syslog(LOG_ERR, "%s: %m\n", altlogin); + fatalperror(net, altlogin); /*NOTREACHED*/ } |