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

File Contents

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