3 use super::{cvt, Termios}
;
4 use super::libc
::c_int
;
6 pub fn get_terminal_attr() -> io
::Result
<Termios
> {
8 pub fn tcgetattr(fd
: c_int
, termptr
: *mut Termios
) -> c_int
;
11 let mut termios
= mem
::zeroed();
12 cvt(tcgetattr(0, &mut termios
))?
;
17 pub fn set_terminal_attr(termios
: &Termios
) -> io
::Result
<()> {
19 pub fn tcsetattr(fd
: c_int
, opt
: c_int
, termptr
: *const Termios
) -> c_int
;
21 cvt(unsafe { tcsetattr(0, 0, termios) }
).and(Ok(()))
24 pub fn raw_terminal_attr(termios
: &mut Termios
) {
26 pub fn cfmakeraw(termptr
: *mut Termios
);
28 unsafe { cfmakeraw(termios) }