ViewVC Help
View File | Revision Log | Show Annotations | Download File
/cvs/rxvt-unicode/src/ptytty.h
(Generate patch)

Comparing rxvt-unicode/src/ptytty.h (file contents):
Revision 1.7 by ayin, Tue Jan 17 10:25:08 2006 UTC vs.
Revision 1.18 by root, Sun Jan 22 00:48:13 2006 UTC

1#ifndef PTYTTY_H 1#ifndef PTYTTY_H
2#define PTYTTY_H 2#define PTYTTY_H
3 3
4#include "feature.h" 4#include "libptytty.h"
5 5
6#if defined(HAVE_GRANTPT) && defined(HAVE_UNLOCKPT) 6#include "ptytty_conf.h"
7# if defined(PTYS_ARE_GETPT) || defined(PTYS_ARE_POSIX) || defined(PTYS_ARE_PTMX) 7
8# define NO_SETOWNER_TTYDEV 1 8#if defined(HAVE__GETPTY) || defined(HAVE_OPENPTY) || defined(UNIX98_PTY)
9# endif
10#endif
11#if defined(__CYGWIN32__)
12# define NO_SETOWNER_TTYDEV 1 9# define NO_SETOWNER_TTYDEV 1
13#endif 10#endif
14 11
15#if UTMP_SUPPORT 12#if UTMP_SUPPORT
16# if !defined(RXVT_UTMPX_FILE) || !defined(HAVE_STRUCT_UTMPX) 13# if !defined(UTMPX_FILE) || !defined(HAVE_STRUCT_UTMPX) || defined(__GLIBC__)
17# undef HAVE_UTMPX_H 14# undef HAVE_UTMPX_H
18# undef HAVE_STRUCT_UTMPX 15# undef HAVE_STRUCT_UTMPX
19# endif 16# endif
20# if !defined(RXVT_UTMP_FILE) || !defined(HAVE_STRUCT_UTMP) 17# if !defined(UTMP_FILE) || !defined(HAVE_STRUCT_UTMP)
21# undef HAVE_UTMP_H 18# undef HAVE_UTMP_H
22# undef HAVE_STRUCT_UTMP 19# undef HAVE_STRUCT_UTMP
23# endif 20# endif
24 21
25# ifdef HAVE_UTMPX_H 22# ifdef HAVE_UTMPX_H
37# include <lastlog.h> 34# include <lastlog.h>
38# endif 35# endif
39 36
40# include <pwd.h> 37# include <pwd.h>
41 38
42# ifdef RXVT_UTMP_SYSV 39# ifdef UTMP_SYSV
43# ifndef USER_PROCESS 40# ifndef USER_PROCESS
44# define USER_PROCESS 7 41# define USER_PROCESS 7
45# endif 42# endif
46# ifndef DEAD_PROCESS 43# ifndef DEAD_PROCESS
47# define DEAD_PROCESS 8 44# define DEAD_PROCESS 8
48# endif 45# endif
49# endif 46# endif
50 47
51# ifdef __QNX__
52# include <sys/utsname.h>
53# define ut_name ut_user
54# endif
55
56#endif 48#endif
57 49
58enum rxvt_privaction { IGNORE = 'i', SAVE = 's', RESTORE = 'r' }; 50struct ptytty_unix : ptytty
59 51{
60struct rxvt_ptytty {
61#ifndef RESET_TTY_TO_COMMON_DEFAULTS
62 struct stat savestat; /* original status of our tty */
63#endif
64#ifndef NO_SETOWNER_TTYDEV
65 void privileges (rxvt_privaction action);
66 bool saved;
67#endif
68public:
69 int pty; // pty file descriptor; connected to rxvt
70 int tty; // tty file descriptor; connected to child
71 char *name; 52 char *name;
72 53
73 rxvt_ptytty (); 54public:
74 ~rxvt_ptytty (); 55
56 ptytty_unix ();
57 ~ptytty_unix ();
75 58
76 bool get (); 59 bool get ();
77 void put (); 60 void put ();
78 61
79 void close_tty (); 62 void login (int cmd_pid, bool login_shell, const char *hostname);
80
81 bool make_controlling_tty ();
82 void set_utf8_mode (bool on);
83 63
84#if UTMP_SUPPORT 64#if UTMP_SUPPORT
85 int utmp_pos; 65 int utmp_pos;
86 int cmd_pid; 66 int cmd_pid;
87 bool login_shell; 67 bool login_shell;
94#endif 74#endif
95#if (defined(HAVE_STRUCT_UTMP) && defined(HAVE_UTMP_PID)) || defined(HAVE_STRUCT_UTMPX) 75#if (defined(HAVE_STRUCT_UTMP) && defined(HAVE_UTMP_PID)) || defined(HAVE_STRUCT_UTMPX)
96 char ut_id[5]; 76 char ut_id[5];
97#endif 77#endif
98 78
99 void login (int cmd_pid, bool login_shell, const char *hostname);
100 void logout (); 79 void logout ();
101#endif 80#endif
102}; 81};
103 82
104#endif 83#endif

Diff Legend

Removed lines
+ Added lines
< Changed lines
> Changed lines