blob: f61a5e71eedcb19be64649dbc370da78ebbabe98 [file] [log] [blame]
Damien Miller51096382006-03-26 14:30:00 +11001/* $OpenBSD: sshpty.h,v 1.8 2006/03/25 22:22:43 djm Exp $ */
Ben Lindstrom05764b92002-03-05 01:53:02 +00002
Damien Millerd4a8b7e1999-10-27 13:42:43 +10003/*
Damien Miller95def091999-11-25 00:26:21 +11004 * Author: Tatu Ylonen <ylo@cs.hut.fi>
Damien Miller95def091999-11-25 00:26:21 +11005 * Copyright (c) 1995 Tatu Ylonen <ylo@cs.hut.fi>, Espoo, Finland
6 * All rights reserved
Damien Miller95def091999-11-25 00:26:21 +11007 * Functions for allocating a pseudo-terminal and making it the controlling
8 * tty.
Damien Millere4340be2000-09-16 13:29:08 +11009 *
10 * As far as I am concerned, the code I have written for this software
11 * can be used freely for any purpose. Any derived versions of this
12 * software must be clearly marked as such, and if the derived work is
13 * incompatible with the protocol description in the RFC file, it must be
14 * called by a name other than "ssh" or "Secure Shell".
Damien Miller95def091999-11-25 00:26:21 +110015 */
Damien Millerd4a8b7e1999-10-27 13:42:43 +100016
Kevin Steves6189e192001-04-02 14:02:55 +000017#ifndef SSHPTY_H
18#define SSHPTY_H
Damien Millerd4a8b7e1999-10-27 13:42:43 +100019
Damien Miller99bd21e2006-03-15 11:11:28 +110020#include <termios.h>
21
Darren Tucker06f2bd82004-05-13 16:06:46 +100022struct termios get_saved_tio(void);
23void leave_raw_mode(void);
24void enter_raw_mode(void);
25
Damien Millered3986a2006-03-26 00:06:14 +110026int pty_allocate(int *, int *, char *, size_t);
Ben Lindstrom4cc240d2001-07-04 04:46:56 +000027void pty_release(const char *);
28void pty_make_controlling_tty(int *, const char *);
Damien Millered3986a2006-03-26 00:06:14 +110029void pty_change_window_size(int, u_int, u_int, u_int, u_int);
Ben Lindstrom4cc240d2001-07-04 04:46:56 +000030void pty_setowner(struct passwd *, const char *);
Damien Millerc7d8dbb2000-03-02 23:30:53 +110031
Kevin Steves6189e192001-04-02 14:02:55 +000032#endif /* SSHPTY_H */