Function nix::pty::posix_openpt [−][src]
pub fn posix_openpt(flags: OFlag) -> Result<PtyMaster>
Expand description
Open a pseudoterminal device (see
posix_openpt(3)
)
posix_openpt()
returns a file descriptor to an existing unused pseuterminal master device.
Examples
A common use case with this function is to open both a master and slave PTY pair. This can be done as follows:
use std::path::Path; use nix::fcntl::{OFlag, open}; use nix::pty::{grantpt, posix_openpt, ptsname, unlockpt}; use nix::sys::stat::Mode; // Open a new PTY master let master_fd = posix_openpt(OFlag::O_RDWR)?; // Allow a slave to be generated for it grantpt(&master_fd)?; unlockpt(&master_fd)?; // Get the name of the slave let slave_name = unsafe { ptsname(&master_fd) }?; // Try to open the slave let _slave_fd = open(Path::new(&slave_name), OFlag::O_RDWR, Mode::empty())?;