From 22cdf6fd375da99478e355686d2f2ff4da4836c8 Mon Sep 17 00:00:00 2001 From: ed Date: Wed, 13 Jan 2010 18:37:42 +0000 Subject: [PATCH] Let telnetd build without utmp and logwtmp(3). Just like rlogind, there is no need to change the ownership of the terminal during shutdown anymore. Also don't call logwtmp, because the login(1)/PAM is responsible for doing this. Also use SHUT_RDWR instead of 2. git-svn-id: http://svn0.us-east.freebsd.org/base/head/contrib/telnet@202212 ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f --- telnetd/sys_term.c | 19 +------------------ telnetd/telnetd.c | 1 - 2 files changed, 1 insertion(+), 19 deletions(-) diff --git a/telnetd/sys_term.c b/telnetd/sys_term.c index 498c342..a7b0075 100644 --- a/telnetd/sys_term.c +++ b/telnetd/sys_term.c @@ -1303,24 +1303,7 @@ scrub_env(void) void cleanup(int sig __unused) { - char *p; - sigset_t mask; - p = line + sizeof(_PATH_DEV) - 1; - /* - * Block all signals before clearing the utmp entry. We don't want to - * be called again after calling logout() and then not add the wtmp - * entry because of not finding the corresponding entry in utmp. - */ - sigfillset(&mask); - sigprocmask(SIG_SETMASK, &mask, NULL); - if (logout(p)) - logwtmp(p, "", ""); - (void)chmod(line, 0666); - (void)chown(line, 0, 0); - *p = 'p'; - (void)chmod(line, 0666); - (void)chown(line, 0, 0); - (void) shutdown(net, 2); + (void) shutdown(net, SHUT_RDWR); _exit(1); } diff --git a/telnetd/telnetd.c b/telnetd/telnetd.c index ad1e459..7833a6b 100644 --- a/telnetd/telnetd.c +++ b/telnetd/telnetd.c @@ -47,7 +47,6 @@ __FBSDID("$FreeBSD$"); #include #include #include -#include #include