mirror of
https://github.com/sheumann/telnetd.git
synced 2025-02-19 18:30:30 +00:00
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
This commit is contained in:
parent
29b3953035
commit
22cdf6fd37
@ -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);
|
||||
}
|
||||
|
@ -47,7 +47,6 @@ __FBSDID("$FreeBSD$");
|
||||
#include <libutil.h>
|
||||
#include <paths.h>
|
||||
#include <termcap.h>
|
||||
#include <utmp.h>
|
||||
|
||||
#include <arpa/inet.h>
|
||||
|
||||
|
Loading…
x
Reference in New Issue
Block a user