add login_tty function

This commit is contained in:
Felix Janda
2014-12-20 20:13:27 -05:00
committed by Rich Felker
parent 0217ed72f9
commit 4b2cb37770
2 changed files with 16 additions and 0 deletions
+2
View File
@@ -35,6 +35,8 @@ void setutent(void);
void updwtmp(const char *, const struct utmp *);
int login_tty(int);
#define _PATH_UTMP "/dev/null/utmp"
#define _PATH_WTMP "/dev/null/wtmp"
+14
View File
@@ -0,0 +1,14 @@
#include <utmp.h>
#include <sys/ioctl.h>
#include <unistd.h>
int login_tty(int fd)
{
setsid();
if (ioctl(fd, TIOCSCTTY, (char *)0)) return -1;
dup2(fd, 0);
dup2(fd, 1);
dup2(fd, 2);
if (fd>2) close(fd);
return 0;
}