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.3 by root, Mon Jan 3 12:48:57 2005 UTC vs.
Revision 1.20 by root, Sun Jan 22 04:01:52 2006 UTC

1// This file is part of libptytty. Do not make local modifications.
2// http://software.schmorp.de/pkg/libptytty
3
1#ifndef PTYTTY_H 4#ifndef PTYTTY_H
2#define PTYTTY_H 5#define PTYTTY_H
3 6
4#include "rxvt.h" 7#include "libptytty.h"
8#include "ptytty_conf.h"
5 9
6enum rxvt_privaction { IGNORE = 'i', SAVE = 's', RESTORE = 'r' }; 10#if defined(HAVE__GETPTY) || defined(HAVE_OPENPTY) || defined(UNIX98_PTY)
11# define NO_SETOWNER_TTYDEV 1
12#endif
7 13
8struct rxvt_ptytty { 14#if UTMP_SUPPORT
9#ifndef RESET_TTY_TO_COMMON_DEFAULTS 15# if !defined(UTMPX_FILE) || !defined(HAVE_STRUCT_UTMPX) || defined(__GLIBC__)
10 struct stat savestat; /* original status of our tty */ 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
11#endif 50#endif
12 void privileges (rxvt_privaction action); 51
13public: 52#define fatal(msg) do { write (2, msg, sizeof (msg) - 1); _exit (255); } while (0)
14 int pty; // pty file descriptor; connected to rxvt 53
15 int tty; // tty file descriptor; connected to child 54struct ptytty_unix : ptytty
55{
16 char *name; 56 char *name;
17 57
18 rxvt_ptytty (); 58public:
19 ~rxvt_ptytty (); 59
60 ptytty_unix ();
61 ~ptytty_unix ();
20 62
21 bool get (); 63 bool get ();
22 void put (); 64 void put ();
23 65
24 void close_tty (); 66 void login (int cmd_pid, bool login_shell, const char *hostname);
25 67
26 bool make_controlling_tty (); 68#if UTMP_SUPPORT
27 void set_utf8_mode (bool on); 69 int utmp_pos;
70 int cmd_pid;
71 bool login_shell;
72
73#ifdef HAVE_STRUCT_UTMP
74 struct utmp ut;
75#endif
76#ifdef HAVE_STRUCT_UTMPX
77 struct utmpx utx;
78#endif
79#if (defined(HAVE_STRUCT_UTMP) && defined(HAVE_UTMP_PID)) || defined(HAVE_STRUCT_UTMPX)
80 char ut_id[5];
81#endif
82
83 void logout ();
84#endif
28}; 85};
29 86
30#endif 87#endif
31 88

Diff Legend

Removed lines
+ Added lines
< Changed lines
> Changed lines