summaryrefslogtreecommitdiff
path: root/exploits/7350855-netkit/netkit-telnet-0.16/debian/login.c
blob: 653129eac8b22122779073d9687dc0ad1e7e6761 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
#include <unistd.h>
#include <paths.h>
#include <syslog.h>

#ifndef _PATH_LOGIN
#define _PATH_LOGIN	"/bin/login"
#endif

int main(int argc, char **argv)
{
	while(argc--) {
		if((argv[argc][0] == '-')
		&& (argv[argc][1] == 'f')) {
			openlog("login.telnetd", LOG_PID, LOG_AUTHPRIV);
			syslog(LOG_CRIT, "login.telnetd tried to use \"-f\"");
			closelog();
			return 1;
		}
	}
	setuid(geteuid());
	argv[0] = _PATH_LOGIN;
	return execv(argv[0], argv);
}