ptem's limitations
Mike Eisler
mre at pyrps5.pyramid.com
Thu May 23 13:45:36 AEST 1991
In article <7976 at auspex.auspex.com> guy at auspex.auspex.com (Guy Harris) writes:
>In article <1991May20.145454.682 at arizona.edu> cat at pluto.dss.com (Iain
> Wacey) writes:
>>of some limitation of ptem. It does not handle flow control
>>leaving it to any lower module or driver to handle STOPI
>>messages from ldterm.
>
>It doesn't handle flow control coming into the pseudo-tty, no; it leaves
>that up to the streams mechanism to handle, just as other pseudo-tty
>mechanisms do.
Trouble is, ptem doesn't use streams flow control to handle ^S/^Q
correctly. When a STOP message comes down from ldterm (as a consequence
of ldterm getting ^S), ptem queues it rather than forwarding it to the
lower module. Unfortunately ptem has no service procedure. When a
module above ptem attempts a canput(), the canput() succeeds, because
canput() skips modules without service procedures. So the application
can forever write data over a pseudo tty that is supposedly flow
stopped by ^S forever.
-Mike Eisler
mre at pyramid.com
More information about the Comp.unix.wizards
mailing list