diff --git a/src/sys/unix/attr.rs b/src/sys/unix/attr.rs
index 9a5c886c21e4d99b8d2275fa4dfa1df86bb6e386..a83e6c11614bebb1398975a0c2f7f94cf682a71a 100644
--- a/src/sys/unix/attr.rs
+++ b/src/sys/unix/attr.rs
@@ -5,13 +5,13 @@ use super::{cvt, Termios};
 pub fn get_terminal_attr() -> io::Result<Termios> {
     unsafe {
         let mut termios = mem::zeroed();
-        cvt(libc::tcgetattr(1, &mut termios))?;
+        cvt(libc::tcgetattr(libc::STDOUT_FILENO, &mut termios))?;
         Ok(termios)
     }
 }
 
 pub fn set_terminal_attr(termios: &Termios) -> io::Result<()> {
-    cvt(unsafe { libc::tcsetattr(1, 0, termios) }).and(Ok(()))
+    cvt(unsafe { libc::tcsetattr(libc::STDOUT_FILENO, libc::TCSANOW, termios) }).and(Ok(()))
 }
 
 pub fn raw_terminal_attr(termios: &mut Termios) {