xref: /freebsd/crypto/openssh/sshpty.h (revision ca86bcf2531c7b149c95244a67853d44323e7855)
1*ca86bcf2SDag-Erling Smørgrav /* $OpenBSD: sshpty.h,v 1.13 2016/11/29 03:54:50 dtucker Exp $ */
2ae1f160dSDag-Erling Smørgrav 
31e8db6e2SBrian Feldman /*
41e8db6e2SBrian Feldman  * Author: Tatu Ylonen <ylo@cs.hut.fi>
51e8db6e2SBrian Feldman  * Copyright (c) 1995 Tatu Ylonen <ylo@cs.hut.fi>, Espoo, Finland
61e8db6e2SBrian Feldman  *                    All rights reserved
71e8db6e2SBrian Feldman  * Functions for allocating a pseudo-terminal and making it the controlling
81e8db6e2SBrian Feldman  * tty.
91e8db6e2SBrian Feldman  *
101e8db6e2SBrian Feldman  * As far as I am concerned, the code I have written for this software
111e8db6e2SBrian Feldman  * can be used freely for any purpose.  Any derived versions of this
121e8db6e2SBrian Feldman  * software must be clearly marked as such, and if the derived work is
131e8db6e2SBrian Feldman  * incompatible with the protocol description in the RFC file, it must be
141e8db6e2SBrian Feldman  * called by a name other than "ssh" or "Secure Shell".
151e8db6e2SBrian Feldman  */
161e8db6e2SBrian Feldman 
17761efaa7SDag-Erling Smørgrav #include <termios.h>
181e8db6e2SBrian Feldman 
19d4af9e69SDag-Erling Smørgrav struct termios *get_saved_tio(void);
20b15c8340SDag-Erling Smørgrav void	 leave_raw_mode(int);
21b15c8340SDag-Erling Smørgrav void	 enter_raw_mode(int);
22d74d50a8SDag-Erling Smørgrav 
23761efaa7SDag-Erling Smørgrav int	 pty_allocate(int *, int *, char *, size_t);
24ae1f160dSDag-Erling Smørgrav void	 pty_release(const char *);
25ae1f160dSDag-Erling Smørgrav void	 pty_make_controlling_tty(int *, const char *);
26761efaa7SDag-Erling Smørgrav void	 pty_change_window_size(int, u_int, u_int, u_int, u_int);
27ae1f160dSDag-Erling Smørgrav void	 pty_setowner(struct passwd *, const char *);
28*ca86bcf2SDag-Erling Smørgrav void	 disconnect_controlling_tty(void);
29