// Common functions that are unfortunately missing on illumos and // Solaris, but often needed by other crates. use unix::solarish::*; pub unsafe fn cfmakeraw(termios: *mut ::termios) { let mut t = *termios as ::termios; t.c_iflag &= !(IMAXBEL | IGNBRK | BRKINT | PARMRK | ISTRIP | INLCR | IGNCR | ICRNL | IXON); t.c_oflag &= !OPOST; t.c_lflag &= !(ECHO | ECHONL | ICANON | ISIG | IEXTEN); t.c_cflag &= !(CSIZE | PARENB); t.c_cflag |= CS8; } pub unsafe fn cfsetspeed( termios: *mut ::termios, speed: ::speed_t, ) -> ::c_int { // Neither of these functions on illumos or Solaris actually ever // return an error ::cfsetispeed(termios, speed); ::cfsetospeed(termios, speed); 0 }