From: Mike Accetta Date: Thu, 7 Jul 1983 15:37:36 +0000 (-0800) Subject: BSD 4_2 development X-Git-Tag: BSD-4_3^2~666 X-Git-Url: https://git.subgeniuskitty.com/unix-history/.git/commitdiff_plain/71a3b0e5756b73e02cd05c19c29c97a0a64714f8 BSD 4_2 development Work on file usr/man/man4/pty.4 Synthesized-from: CSRG/cd1/4.2 --- diff --git a/usr/man/man4/pty.4 b/usr/man/man4/pty.4 new file mode 100644 index 0000000000..7d3f14cc72 --- /dev/null +++ b/usr/man/man4/pty.4 @@ -0,0 +1,112 @@ +.TH PTY 4 "7 July 1983" +.UC 4 +.SH NAME +pty \- pseudo terminal driver +.SH SYNOPSIS +.B pseudo-device pty +.SH DESCRIPTION +The +.I pty +driver provides support for a device-pair termed a +.IR "pseudo terminal" . +A pseudo terminal is a pair of character devices, a +.I master +device and a +.I slave +device. The slave device provides processes +an interface identical +to that described in +.IR tty (4). +However, whereas all other devices which provide the +interface described in +.IR tty (4) +have a hardware device of some sort behind them, the slave +device has, instead, another process manipulating +it through the master half of the pseudo terminal. +That is, anything written on the master device is +given to the slave device as input and anything written +on the slave device is presented as input on the master +device. +.PP +In configuring, if no optional ``count'' is given in +the specification, 16 pseudo terminal pairs are configured. +.PP +The following +.I ioctl +calls apply only to pseudo terminals: +.TP +TIOCSTOP +Stops output to a terminal (e.g. like typing ^S). Takes +no parameter. +.TP +TIOCSTART +Restarts output (stopped by TIOCSTOP or by typing ^S). +Takes no parameter. +.TP +TIOCPKT +Enable/disable +.I packet +mode. Packet mode is enabled by specifying (by reference) +a nonzero parameter and disabled by specifying (by reference) +a zero parameter. When applied to the master side of a pseudo +terminal, each subsequent +.I read +from the terminal will return data written on the slave part of +the pseudo terminal preceded by a zero byte (symbolically +defined as TIOCPKT_DATA), or a single byte reflecting control +status information. In the latter case, the byte is an inclusive-or +of zero or more of the bits: +.RS +.TP +TIOCPKT_FLUSHREAD +whenever the read queue for the terminal is flushed. +.TP +TIOCPKT_FLUSHWRITE +whenever the write queue for the terminal is flushed. +.TP +TIOCPKT_STOP +whenever output to the terminal is stopped a la ^S. +.TP +TIOCPKT_START +whenever output to the terminal is restarted. +.TP +TIOCPKT_DOSTOP +whenever +.I t_stopc +is ^S +and +.I t_startc +is ^Q. +.TP +TIOCPKT_NOSTOP +whenever the start and stop characters are not ^S/^Q. +.RE +.IP +This mode is used by +.IR rlogin (1C) +and +.IR rlogind (8C) +to implement a remote-echoed, locally ^S/^Q flow-controlled +remote login with proper back-flushing of output; it can be +used by other similar programs. +.TP +TIOCREMOTE +A mode for the master half of a pseudo terminal, independent +of TIOCPKT. This mode causes input to the pseudo terminal +to be flow controlled and not input edited (regardless of the +terminal mode). Each write to the control terminal produces +a record boundary for the process reading the terminal. In +normal usage, a write of data is like the data typed as a line +on the terminal; a write of 0 bytes is like typing an end-of-file +character. TIOCREMOTE can be used when doing remote line +editing in a window manager, or whenever flow controlled input +is required. +.SH FILES +.DT +/dev/pty[p-r][0-9a-f] master pseudo terminals +.br +/dev/tty[p-r][0-9a-f] slave pseudo terminals +.SH DIAGNOSTICS +None. +.SH BUGS +It is not possible to send an EOT.