TCFLUSH(3C)TCFLUSH(3C)NAME
tcflush - flush non-transmitted output data, non-read input data or
both
SYNOPSIS
#include <termios.h>
int tcflush(int fildes, int queue_selector);
DESCRIPTION
Upon successful completion, tcflush() discards data written to the
object referred to by fildes (an open file descriptor associated with a
terminal) but not transmitted, or data received but not read, depending
on the value of queue_selector:
o If queue_selector is TCIFLUSH it flushes data received but
not read.
o If queue_selector is TCOFLUSH it flushes data written but
not transmitted.
o If queue_selector is TCIOFLUSH it flushes both data received
but not read and data written but not transmitted.
Attempts to use tcflush() from a process which is a member of a back‐
ground process group on a fildes associated with its controlling termi‐
nal, will cause the process group to be sent a SIGTTOU signal. If the
calling process is blocking or ignoring SIGTTOU signals, the process is
allowed to perform the operation, and no signal is sent.
RETURN VALUES
Upon successful completion, 0 is returned. Otherwise, −1 is returned
and errno is set to indicate the error.
ERRORS
The tcflush() function will fail if:
EBADF
The fildes argument is not a valid file descriptor.
EINVAL
The queue_selector argument is not a supported value.
ENOTTY
The file associated with fildes is not a terminal.
The tcflush() function may fail if:
EIO
The process group of the writing process is orphaned, and the
writing process is not ignoring or blocking SIGTTOU.
ATTRIBUTES
See attributes(5) for descriptions of the following attributes:
┌────────────────────┬────────────────────────────────┐
│ ATTRIBUTE TYPE │ ATTRIBUTE VALUE │
├────────────────────┼────────────────────────────────┤
│Interface Stability │ Standard │
├────────────────────┼────────────────────────────────┤
│MT-Level │ MT-Safe, and Async-Signal-Safe │
└────────────────────┴────────────────────────────────┘
SEE ALSOtcdrain(3C), attributes(5), standards(5), termio(7I)
Aug 14, 2002 TCFLUSH(3C)