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

File Contents

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