by default, but this can be changed via
.BR fcntl (2))
when input or output becomes possible on this file descriptor.
-This feature is only available for terminals, psuedoterminals,
+This feature is only available for terminals, pseudoterminals,
sockets, and (since Linux 2.6) pipes and FIFOs.
See
.BR fcntl (2)
.TP
.B POLLPRI
There is urgent data to read (e.g., out-of-band data on TCP socket;
-psuedoterminal master in packet mode has seen state change in slave).
+pseudoterminal master in packet mode has seen state change in slave).
.TP
.B POLLOUT
Writing now will not block.
for more details about OOB data.
(One other less common case where
.BR select (2)
-indicates an exceptional condition occurs with psuedoterminals
+indicates an exceptional condition occurs with pseudoterminals
in packet mode; see
.BR tty_ioctl (4).)
After
.\"
.TH GETPT 3 2010-09-10 "GNU" "Linux Programmer's Manual"
.SH NAME
-getpt \- open the psuedoterminal master (PTM)
+getpt \- open the pseudoterminal master (PTM)
.SH SYNOPSIS
.nf
.BR "#define _GNU_SOURCE" " /* See feature_test_macros(7) */"
.fi
.SH DESCRIPTION
.BR getpt ()
-opens a psuedoterminal master and returns its file descriptor.
+opens a pseudoterminal master and returns its file descriptor.
It is equivalent to
.nf
open(/dev/ptmx, O_RDWR | O_NOCTTY);
.fi
-on Linux systems, though the psuedoterminal master is located
+on Linux systems, though the pseudoterminal master is located
elsewhere on some systems that use GNU Libc.
.SH "RETURN VALUE"
.BR getpt ()
.SH DESCRIPTION
The
.BR openpty ()
-function finds an available psuedoterminal and returns file descriptors
+function finds an available pseudoterminal and returns file descriptors
for the master and slave in
.I amaster
and
.BR login_tty ()
function prepares for a login on the tty
.I fd
-(which may be a real tty device, or the slave of a psuedoterminal as
+(which may be a real tty device, or the slave of a pseudoterminal as
returned by
.BR openpty ())
by creating a new session, making
.BR fork (2),
and
.BR login_tty ()
-to create a new process operating in a psuedoterminal.
+to create a new process operating in a pseudoterminal.
The file
-descriptor of the master side of the psuedoterminal is returned in
+descriptor of the master side of the pseudoterminal is returned in
.IR amaster ,
and the filename of the slave in
.I name
.I winp
arguments, if not NULL,
will determine the terminal attributes and window size of the slave
-side of the psuedoterminal.
+side of the pseudoterminal.
.SH "RETURN VALUE"
If a call to
.BR openpty (),
In versions of glibc before 2.0.92,
.BR openpty ()
-returns file descriptors for a BSD psuedoterminal pair;
+returns file descriptors for a BSD pseudoterminal pair;
since glibc 2.0.92,
-it first attempts to open a UNIX 98 psuedoterminal pair,
-and falls back to opening a BSD psuedoterminal pair if that fails.
+it first attempts to open a UNIX 98 pseudoterminal pair,
+and falls back to opening a BSD pseudoterminal pair if that fails.
.SH BUGS
Nobody knows how much space should be reserved for
.IR name .
.\"
.TH POSIX_OPENPT 3 2010-10-04 "" "Linux Programmer's Manual"
.SH NAME
-posix_openpt \- open a psuedoterminal device
+posix_openpt \- open a pseudoterminal device
.SH SYNOPSIS
.nf
.B #include <stdlib.h>
.SH DESCRIPTION
The
.BR posix_openpt ()
-function opens an unused psuedoterminal master device, returning a
+function opens an unused pseudoterminal master device, returning a
file descriptor that can be used to refer to that device.
The
has been provided since version 2.2.1.
.SH "CONFORMING TO"
.BR posix_openpt ()
-is part of the UNIX 98 psuedoterminal support (see
+is part of the UNIX 98 pseudoterminal support (see
.BR pts (4)).
This function is specified in POSIX.1-2001.
.SH NOTES
This function is a recent invention in POSIX.
Some UNIX implementations that support System V
-(aka UNIX 98) psuedoterminals don't have this function, but it
+(aka UNIX 98) pseudoterminals don't have this function, but it
is easy to implement:
.in +4n
.nf
.\"
.TH PTSNAME 3 2008-09-03 "" "Linux Programmer's Manual"
.SH NAME
-ptsname, ptsname_r \- get the name of the slave psuedoterminal
+ptsname, ptsname_r \- get the name of the slave pseudoterminal
.SH SYNOPSIS
.nf
.B #define _XOPEN_SOURCE
.SH DESCRIPTION
The
.BR ptsname ()
-function returns the name of the slave psuedoterminal device
+function returns the name of the slave pseudoterminal device
corresponding to the master referred to by
.IR fd .
.BR ptsname_r ()
function is the reentrant equivalent of
.BR ptsname ().
-It returns the name of the slave psuedoterminal device as a
+It returns the name of the slave pseudoterminal device as a
null-terminated string in the buffer pointed to by
.IR buf .
The
.TP
.B ENOTTY
.I fd
-does not refer to a psuedoterminal master device.
+does not refer to a pseudoterminal master device.
.TP
.B ERANGE
.RB ( ptsname_r ()
is provided in glibc since version 2.1.
.SH "CONFORMING TO"
.BR ptsname ()
-is part of the UNIX 98 psuedoterminal support (see
+is part of the UNIX 98 pseudoterminal support (see
.BR pts (4)).
This function is specified in POSIX.1-2001.
.\"
.TH UNLOCKPT 3 2008-06-14 "" "Linux Programmer's Manual"
.SH NAME
-unlockpt \- unlock a psuedoterminal master/slave pair
+unlockpt \- unlock a pseudoterminal master/slave pair
.SH SYNOPSIS
.nf
.B #define _XOPEN_SOURCE
.SH DESCRIPTION
The
.BR unlockpt ()
-function unlocks the slave psuedoterminal device
-corresponding to the master psuedoterminal referred to by
+function unlocks the slave pseudoterminal device
+corresponding to the master pseudoterminal referred to by
.IR fd .
.PP
.BR unlockpt ()
-should be called before opening the slave side of a psuedoterminal.
+should be called before opening the slave side of a pseudoterminal.
.SH "RETURN VALUE"
When successful,
.BR unlockpt ()
.B EINVAL
The
.I fd
-argument is not associated with a master psuedoterminal.
+argument is not associated with a master pseudoterminal.
.SH VERSIONS
.BR unlockpt ()
is provided in glibc since version 2.1.
.\"
.TH PTS 4 2002-10-09 "Linux" "Linux Programmer's Manual"
.SH NAME
-ptmx, pts \- psuedoterminal master and slave
+ptmx, pts \- pseudoterminal master and slave
.SH DESCRIPTION
The file \fI/dev/ptmx\fP is a character file with major number 5 and
minor number 2, usually of mode 0666 and owner.group of root.root.
-It is used to create a psuedoterminal master and slave pair.
+It is used to create a pseudoterminal master and slave pair.
.PP
When a process opens \fI/dev/ptmx\fP, it gets a file
-descriptor for a psuedoterminal master (PTM),
-and a psuedoterminal slave (PTS) device is created in the
+descriptor for a pseudoterminal master (PTM),
+and a pseudoterminal slave (PTS) device is created in the
.I /dev/pts
directory.
Each file descriptor obtained by opening \fI/dev/ptmx\fP
be found by passing the descriptor to
.BR ptsname (3).
.PP
-Before opening the psuedoterminal slave, you must pass the master's file
+Before opening the pseudoterminal slave, you must pass the master's file
descriptor to
.BR grantpt (3)
and
.BR unlockpt (3).
.PP
-Once both the psuedoterminal master and slave are open, the slave provides
+Once both the pseudoterminal master and slave are open, the slave provides
processes with an interface that is identical to that of a real terminal.
.PP
Data written to the slave is presented on the master descriptor as input.
Data written to the master is presented to the slave as input.
.PP
-In practice, psuedoterminals are used for implementing terminal emulators
+In practice, pseudoterminals are used for implementing terminal emulators
such as
.BR xterm (1),
-in which data read from the psuedoterminal master is interpreted by the
+in which data read from the pseudoterminal master is interpreted by the
application in the same way
a real terminal would interpret the data, and for implementing remote-login
programs such as
.BR sshd (8),
-in which data read from the psuedoterminal master is sent across the network
+in which data read from the pseudoterminal master is sent across the network
to a client program that is connected to a terminal or terminal emulator.
.PP
Psuedoterminals can also be used to send input to programs that normally
.IR /dev/ptmx ,
.I /dev/pts/*
.SH NOTES
-The Linux support for the above (known as UNIX 98 psuedoterminal naming)
+The Linux support for the above (known as UNIX 98 pseudoterminal naming)
is done using the
.I devpts
file system, that should be mounted on
.IR /dev/pts .
.LP
-Before this UNIX 98 scheme, master psuedoterminals were called
+Before this UNIX 98 scheme, master pseudoterminals were called
.IR /dev/ptyp0 ", ..."
-and slave psuedoterminals
+and slave pseudoterminals
.IR /dev/ttyp0 ", ..."
and one needed lots of preallocated device nodes.
.SH "SEE ALSO"
or
.I /dev/tty0
to the given terminal.
-If that was a psuedoterminal master, send it to the slave.
+If that was a pseudoterminal master, send it to the slave.
In Linux before version 2.6.10,
anybody can do this as long as the output was not redirected yet;
since version 2.6.10, only root (a process with the
Get the session ID of the given terminal.
This will fail with
.B ENOTTY
-in case the terminal is not a master psuedoterminal
+in case the terminal is not a master pseudoterminal
and not our controlling terminal.
Strange.
.SS "Exclusive mode"
Enable (when
.RI * argp
is nonzero) or disable packet mode.
-Can be applied to the master side of a psuedoterminal only (and will return
+Can be applied to the master side of a pseudoterminal only (and will return
.B ENOTTY
otherwise).
In packet mode, each subsequent
.BR read (2)
will return a packet that either contains a single nonzero control byte,
or has a single byte containing zero (\(aq\0\(aq) followed by data
-written on the slave side of the psuedoterminal.
+written on the slave side of the pseudoterminal.
If the first byte is not
.B TIOCPKT_DATA
(0), it is an OR of one
.TP
.IR /proc/sys/kernel/pty " (since Linux 2.6.4)"
This directory contains two files relating to the number of UNIX 98
-psuedoterminals (see
+pseudoterminals (see
.BR pts (4))
on the system.
.TP
.I /proc/sys/kernel/pty/max
-This file defines the maximum number of psuedoterminals.
+This file defines the maximum number of pseudoterminals.
.TP
.I /proc/sys/kernel/pty/nr
This read-only file
-indicates how many psuedoterminals are currently in use.
+indicates how many pseudoterminals are currently in use.
.TP
.I /proc/sys/kernel/random
This directory
.\"
.TH PTY 7 2005-10-10 "Linux" "Linux Programmer's Manual"
.SH NAME
-pty \- psuedoterminal interfaces
+pty \- pseudoterminal interfaces
.SH DESCRIPTION
-A psuedoterminal (sometimes abbreviated "pty")
+A pseudoterminal (sometimes abbreviated "pty")
is a pair of virtual character devices that
provide a bidirectional communication channel.
One end of the channel is called the
.IR master ;
the other end is called the
.IR slave .
-The slave end of the psuedoterminal provides an interface
+The slave end of the pseudoterminal provides an interface
that behaves exactly like a classical terminal.
A process that expects to be connected to a terminal,
-can open the slave end of a psuedoterminal and
+can open the slave end of a pseudoterminal and
then be driven by a program that has opened the master end.
Anything that is written on the master end is provided to the process
on the slave end as though it was input typed on a terminal.
to be generated for the foreground process group
that is connected to the slave.
Conversely, anything that is written to the slave end of the
-psuedoterminal can be read by the process that is connected to
+pseudoterminal can be read by the process that is connected to
the master end.
Psuedoterminals are used by applications such as network login services
.RB ( ssh "(1), " rlogin "(1), " telnet (1)),
and
.BR expect (1).
-Historically, two psuedoterminal APIs have evolved: BSD and System V.
-SUSv1 standardized a psuedoterminal API based on the System V API,
+Historically, two pseudoterminal APIs have evolved: BSD and System V.
+SUSv1 standardized a pseudoterminal API based on the System V API,
and this API should be employed in all new programs that use
-psuedoterminals.
+pseudoterminals.
Linux provides both BSD-style and (standardized) System V-style
-psuedoterminals.
-System V-style terminals are commonly called UNIX 98 psuedoterminals
+pseudoterminals.
+System V-style terminals are commonly called UNIX 98 pseudoterminals
on Linux systems.
-Since kernel 2.6.4, BSD-style psuedoterminals are considered deprecated
+Since kernel 2.6.4, BSD-style pseudoterminals are considered deprecated
(they can be disabled when configuring the kernel);
-UNIX 98 psuedoterminals should be used in new applications.
-.SS "UNIX 98 psuedoterminals"
-An unused UNIX 98 psuedoterminal master is opened by calling
+UNIX 98 pseudoterminals should be used in new applications.
+.SS "UNIX 98 pseudoterminals"
+An unused UNIX 98 pseudoterminal master is opened by calling
.BR posix_openpt (3).
(This function opens the master clone device,
.IR /dev/ptmx ;
.BR open (2).
The Linux kernel imposes a limit on the number of available
-UNIX 98 psuedoterminals.
+UNIX 98 pseudoterminals.
In kernels up to and including 2.6.3, this limit is configured
at kernel compilation time
.RB ( CONFIG_UNIX98_PTYS ),
-and the permitted number of psuedoterminals can be up to 2048,
+and the permitted number of pseudoterminals can be up to 2048,
with a default setting of 256.
Since kernel 2.6.4, the limit is dynamically adjustable via
.IR /proc/sys/kernel/pty/max ,
and a corresponding file,
.IR /proc/sys/kernel/pty/nr ,
-indicates how many psuedoterminals are currently in use.
+indicates how many pseudoterminals are currently in use.
For further details on these two files, see
.BR proc (5).
-.SS "BSD psuedoterminals"
-BSD-style psuedoterminals are provided as precreated pairs, with
+.SS "BSD pseudoterminals"
+BSD-style pseudoterminals are provided as precreated pairs, with
names of the form
.I /dev/ptyXY
(master) and
.I /dev/ptyp1
and
.I /dev/ttyp1
-constitute a BSD psuedoterminal pair.
-A process finds an unused psuedoterminal pair by trying to
+constitute a BSD pseudoterminal pair.
+A process finds an unused pseudoterminal pair by trying to
.BR open (2)
-each psuedoterminal master until an open succeeds.
-The corresponding psuedoterminal slave (substitute "tty"
+each pseudoterminal master until an open succeeds.
+The corresponding pseudoterminal slave (substitute "tty"
for "pty" in the name of the master) can then be opened.
.SH "FILES"
.I /dev/ptmx