Re: tcflow(TCOON/TCOOFF) vs. received XON/XOFF characters

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On 2014-07-17, Peter Hurley <peter@xxxxxxxxxxxxxxxxxx> wrote:

> tcflow(TCOxxx) flow control is independent of IXON flow control.
> The union of both flow states determines if the tty can output;
>
>                       IXON = true        IXON = false
>                    START       STOP
> tcflow(TCOON)      on         off          on
> tcflow(TCOOFF)     off        off          off

Thanks, that's pretty much what I had decided based on tests and
browsing the source code.

Just to confirm:

  tcflow(TCION/TCIOFF): overrides the "input" side of xon/xoff flow
                        control and forces the sending of XON/XOFF.

  tcflow(TCOON/TCOOFF): does not have anything to do with the "output"
                        side of xon/xoff flow control, but controls
                        something completely orthogonal.

That rather counter-intuitive (not that counter-intuitive is exactly a
novel thing when it comes to Unix serial ports).
                        
That rasies this question: what does an application use to control the
"output" side of xon/xoff flow control?  There is a Windows API for
doing that, and I get asked how to do it in Linux.  I always tell them
they can't.

-- 
Grant Edwards               grant.b.edwards        Yow! Oh, I get it!!
                                  at               "The BEACH goes on", huh,
                              gmail.com            SONNY??

--
To unsubscribe from this list: send the line "unsubscribe linux-serial" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html




[Index of Archives]     [Kernel Newbies]     [Security]     [Netfilter]     [Bugtraq]     [Linux PPP]     [Linux FS]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Samba]     [Video 4 Linux]     [Linmodem]     [Device Mapper]     [Linux Kernel for ARM]

  Powered by Linux