summaryrefslogtreecommitdiffstats
path: root/man4/pts.4
diff options
context:
space:
mode:
Diffstat (limited to 'man4/pts.4')
-rw-r--r--man4/pts.475
1 files changed, 75 insertions, 0 deletions
diff --git a/man4/pts.4 b/man4/pts.4
new file mode 100644
index 0000000..d330907
--- /dev/null
+++ b/man4/pts.4
@@ -0,0 +1,75 @@
+.\" This man page was written by Jeremy Phelps <jphelps@notreached.net>.
+.\" Notes added - aeb
+.\"
+.\" %%%LICENSE_START(FREELY_REDISTRIBUTABLE)
+.\" Redistribute and revise at will.
+.\" %%%LICENSE_END
+.\"
+.TH pts 4 2022-10-30 "Linux man-pages 6.05.01"
+.SH NAME
+ptmx, pts \- pseudoterminal master and slave
+.SH DESCRIPTION
+The file
+.I /dev/ptmx
+(the pseudoterminal multiplexor device)
+is a character file with major number 5 and
+minor number 2, usually with mode 0666 and ownership root:root.
+It is used to create a pseudoterminal master and slave pair.
+.PP
+When a process opens
+.IR /dev/ptmx ,
+it gets a file
+descriptor for a pseudoterminal master
+and a pseudoterminal slave device is created in the
+.I /dev/pts
+directory.
+Each file descriptor obtained by opening
+.I /dev/ptmx
+is an independent pseudoterminal master with its own associated slave,
+whose path can
+be found by passing the file descriptor to
+.BR ptsname (3).
+.PP
+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 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 file descriptor as input.
+Data written to the master is presented to the slave as input.
+.PP
+In practice, pseudoterminals are used for implementing terminal emulators
+such as
+.BR xterm (1),
+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 pseudoterminal master is sent across the network
+to a client program that is connected to a terminal or terminal emulator.
+.PP
+Pseudoterminals can also be used to send input to programs that normally
+refuse to read input from pipes (such as
+.BR su (1),
+and
+.BR passwd (1)).
+.SH FILES
+.IR /dev/ptmx ,
+.I /dev/pts/*
+.SH NOTES
+The Linux support for the above (known as UNIX 98 pseudoterminal naming)
+is done using the
+.I devpts
+filesystem, which should be mounted on
+.IR /dev/pts .
+.SH SEE ALSO
+.BR getpt (3),
+.BR grantpt (3),
+.BR ptsname (3),
+.BR unlockpt (3),
+.BR pty (7)