ptem(4m) 맨 페이지 - 윈디하나의 솔라나라

개요

섹션
맨 페이지 이름
검색(S)

ptem(4m)

ptem(4M)                        Streams Modules                       ptem(4M)



NAME
       ptem - STREAMS Pseudo Terminal Emulation module

SYNOPSIS
       int ioctl(fd, I_PUSH, "ptem");

DESCRIPTION
       ptem  is  a  STREAMS  module that, when used in conjunction with a line
       discipline and pseudo terminal driver, emulates a terminal.


       The ptem module must be pushed  (see  I_PUSH,  streamio(4I))  onto  the
       slave side of a pseudo terminal STREAM, before the ldterm(4M) module is
       pushed. This is done automatically by  autopush(8)  on  Oracle  Solaris
       11.4 and later releases.


       On  the  write-side,  the  TCSETA,  TCSETAF,  TCSETAW,  TCGETA, TCSETS,
       TCSETSW, TCSETSF, TCGETS, TCSBRK, JWINSIZE, TIOCGWINSZ, and  TIOCSWINSZ
       termio   ioctl(2)  messages  are  processed and acknowledged. If remote
       mode is not in effect, ptem handles the TIOCSTI ioctl  by  copying  the
       argument  bytes  into an M_DATA message and passing it back up the read
       side. Regardless of the remote  mode  setting,  ptem  acknowledges  the
       ioctl  and passes a copy of it downstream for possible further process‐
       ing. A hang up (that is, stty 0) is converted to a zero  length  M_DATA
       message  and passed downstream. Termio cflags and window row and column
       information are stored locally one per  stream.  M_DELAY  messages  are
       discarded. All other messages are passed downstream unmodified.


       On  the  read-side all messages are passed upstream unmodified with the
       following exceptions. All M_READ and M_DELAY messages are freed in both
       directions.  A  TCSBRK  ioctl  is  converted  to an M_BREAK message and
       passed  upstream  and  an  acknowledgment  is  returned  downstream.  A
       TIOCSIGNAL  ioctl  is  converted  into  an  M_PCSIG message, and passed
       upstream and  an  acknowledgment  is  returned  downstream.  Finally  a
       TIOCREMOTE  ioctl is converted into an M_CTL message, acknowledged, and
       passed upstream; the resulting mode is retained for use  in  subsequent
       TIOCSTI parsing.

FILES
       <sys/ptem.h>


SEE ALSO
       stty(1), ioctl(2), streamio(4I), termio(4I), ldterm(4M), pckt(4M)


       STREAMS Programming Guide

HISTORY
       Prior  to  Oracle Solaris 11.4, programs needed to push the ptem module
       onto the slave side of a pseudo-terminal pair if open() was called from
       a program not linked for XPG4 or later standards. If called from a pro‐
       gram linked with values-xpg4.o  or  values-xpg6.o,  then  open()  would
       automatically  push  ptem,  ldterm, and ttcompat modules onto the slave
       side, and callers pushing  them  as  well  would  encounter  unexpected
       behavior.


       Oracle  Solaris  11.4  added  these  modules  to  /etc/iu.system.ap for
       pts(4D) so that they are automatically pushed by autopush(8) regardless
       of how the program is linked, and ensured that only one copy of each is
       pushed onto each stream.



Oracle Solaris 11.4               11 May 2021                         ptem(4M)
맨 페이지 내용의 저작권은 맨 페이지 작성자에게 있습니다.
RSS ATOM XHTML 5 CSS3