… | |
… | |
88 | if (*ttydev != NULL) |
88 | if (*ttydev != NULL) |
89 | return pfd; |
89 | return pfd; |
90 | #endif |
90 | #endif |
91 | |
91 | |
92 | #if defined(HAVE_GRANTPT) && defined(HAVE_UNLOCKPT) |
92 | #if defined(HAVE_GRANTPT) && defined(HAVE_UNLOCKPT) |
93 | # if defined(PTYS_ARE_POSIX) || defined(PTYS_ARE_PTMX) |
93 | # if defined(PTYS_ARE_GETPT) || defined(PTYS_ARE_POSIX) || defined(PTYS_ARE_PTMX) |
94 | |
94 | |
95 | { |
95 | { |
|
|
96 | # ifdef PTYS_ARE_GETPT |
|
|
97 | pfd = getpt(); |
|
|
98 | # else |
96 | # ifdef PTYS_ARE_POSIX |
99 | # ifdef PTYS_ARE_POSIX |
97 | pfd = posix_openpt (O_RDWR); |
100 | pfd = posix_openpt (O_RDWR); |
98 | # else |
101 | # else |
99 | pfd = open ("/dev/ptmx", O_RDWR | O_NOCTTY, 0); |
102 | pfd = open ("/dev/ptmx", O_RDWR | O_NOCTTY, 0); |
|
|
103 | # endif |
100 | # endif |
104 | # endif |
101 | |
105 | |
102 | if (pfd >= 0) |
106 | if (pfd >= 0) |
103 | { |
107 | { |
104 | if (grantpt (pfd) == 0 /* change slave permissions */ |
108 | if (grantpt (pfd) == 0 /* change slave permissions */ |
… | |
… | |
368 | pty = tty = -1; |
372 | pty = tty = -1; |
369 | name = 0; |
373 | name = 0; |
370 | #ifndef NO_SETOWNER_TTYDEV |
374 | #ifndef NO_SETOWNER_TTYDEV |
371 | saved = false; |
375 | saved = false; |
372 | #endif |
376 | #endif |
|
|
377 | #if UTMP_SUPPORT |
|
|
378 | cmd_pid = 0; |
|
|
379 | #endif |
373 | } |
380 | } |
374 | |
381 | |
375 | rxvt_ptytty::~rxvt_ptytty () |
382 | rxvt_ptytty::~rxvt_ptytty () |
376 | { |
383 | { |
|
|
384 | logout (); |
377 | put (); |
385 | put (); |
378 | } |
386 | } |
379 | |
387 | |
380 | void |
388 | void |
381 | |
389 | |