Blame


1 3694b738 2004-12-27 devnull #define getpts not_using_this_getpts
2 a2705f20 2004-04-16 devnull #include "bsdpty.c"
3 3694b738 2004-12-27 devnull #undef getpts
4 c988c8ad 2010-06-28 rsc #include <signal.h>
5 3694b738 2004-12-27 devnull
6 3694b738 2004-12-27 devnull int
7 3694b738 2004-12-27 devnull getpts(int fd[], char *slave)
8 3694b738 2004-12-27 devnull {
9 c988c8ad 2010-06-28 rsc void (*f)(int);
10 c988c8ad 2010-06-28 rsc
11 c988c8ad 2010-06-28 rsc f = signal(SIGCHLD, SIG_DFL);
12 3694b738 2004-12-27 devnull if(openpty(&fd[1], &fd[0], NULL, NULL, NULL) >= 0){
13 3694b738 2004-12-27 devnull fchmod(fd[1], 0620);
14 3694b738 2004-12-27 devnull strcpy(slave, ttyname(fd[0]));
15 c988c8ad 2010-06-28 rsc signal(SIGCHLD, f);
16 3694b738 2004-12-27 devnull return 0;
17 3694b738 2004-12-27 devnull }
18 3694b738 2004-12-27 devnull sysfatal("no ptys");
19 3694b738 2004-12-27 devnull return 0;
20 3694b738 2004-12-27 devnull }