ViewVC Help
View File | Revision Log | Show Annotations | Download File
/cvs/rxvt-unicode/src/ptytty.h
Revision: 1.17
Committed: Sun Jan 22 00:36:59 2006 UTC (18 years, 5 months ago) by root
Content type: text/plain
Branch: MAIN
Changes since 1.16: +2 -1 lines
Log Message:
*** empty log message ***

File Contents

# Content
1 #ifndef PTYTTY_H
2 #define PTYTTY_H
3
4 #include "rxvt.h"
5 #include "feature.h"
6
7 #if defined(HAVE__GETPTY) || defined(HAVE_OPENPTY) || defined(UNIX98_PTY)
8 # define NO_SETOWNER_TTYDEV 1
9 #endif
10
11 #if UTMP_SUPPORT
12 # if !defined(RXVT_UTMPX_FILE) || !defined(HAVE_STRUCT_UTMPX) || defined(__GLIBC__)
13 # undef HAVE_UTMPX_H
14 # undef HAVE_STRUCT_UTMPX
15 # endif
16 # if !defined(RXVT_UTMP_FILE) || !defined(HAVE_STRUCT_UTMP)
17 # undef HAVE_UTMP_H
18 # undef HAVE_STRUCT_UTMP
19 # endif
20
21 # ifdef HAVE_UTMPX_H
22 # include <utmpx.h>
23 # endif
24 # ifdef HAVE_UTMP_H
25 # include <utmp.h>
26 # endif
27
28 # if ! defined(HAVE_STRUCT_UTMPX) && ! defined(HAVE_STRUCT_UTMP)
29 # error cannot build with utmp support - no utmp or utmpx struct found
30 # endif
31
32 # ifdef HAVE_LASTLOG_H
33 # include <lastlog.h>
34 # endif
35
36 # include <pwd.h>
37
38 # ifdef RXVT_UTMP_SYSV
39 # ifndef USER_PROCESS
40 # define USER_PROCESS 7
41 # endif
42 # ifndef DEAD_PROCESS
43 # define DEAD_PROCESS 8
44 # endif
45 # endif
46
47 #endif
48
49 struct rxvt_ptytty_unix : rxvt_ptytty
50 {
51 char *name;
52
53 public:
54
55 rxvt_ptytty_unix ();
56 ~rxvt_ptytty_unix ();
57
58 bool get ();
59 void put ();
60
61 void login (int cmd_pid, bool login_shell, const char *hostname);
62
63 #if UTMP_SUPPORT
64 int utmp_pos;
65 int cmd_pid;
66 bool login_shell;
67
68 #ifdef HAVE_STRUCT_UTMP
69 struct utmp ut;
70 #endif
71 #ifdef HAVE_STRUCT_UTMPX
72 struct utmpx utx;
73 #endif
74 #if (defined(HAVE_STRUCT_UTMP) && defined(HAVE_UTMP_PID)) || defined(HAVE_STRUCT_UTMPX)
75 char ut_id[5];
76 #endif
77
78 void logout ();
79 #endif
80 };
81
82 #endif
83