Reference

tcsendbreak(3)

line control functions

NAME

tcdrain, tcflow, tcflush, tcsendbreak – line control functions

LIBRARY

Standard C Library (libc, -lc)

SYNOPSIS

#include <termios.h>

int

tcdrain(int fildes);

int

tcflow(int fildes, int action);

int

tcflush(int fildes, int action);

int

tcsendbreak(int fildes, int duration);

DESCRIPTION

The tcdrain() function waits until all output written to the terminal referenced by fildes has been transmitted to the terminal.

The tcflow() function suspends transmission of data to, or the reception of data from, the terminal referenced by fildes, depending on the value of action. The value of action must be one of the following:

TCOOFF

Suspend output.

TCOON

Restart suspended output.

TCIOFF

Transmit a STOP character, which is intended to cause the terminal to stop transmitting data to the system. (See the description of IXOFF in the ‘Input Modes’ section of termios(4)).

TCION

Transmit a START character, which is intended to cause the terminal to start transmitting data to the system. (See the description of IXOFF in the ‘Input Modes’ section of termios(4)).

The tcflush() function discards any data written to the terminal referenced by fildes which has not been transmitted to the terminal, or any data received from the terminal but not yet read, depending on the value of action. The value of action must be one of the following:

TCIFLUSH

Flush data received but not read.

TCOFLUSH

Flush data written but not transmitted.

TCIOFLUSH

Flush both data received but not read and data written but not transmitted.

The tcsendbreak() function transmits a continuous stream of zero-valued bits for four-tenths of a second to the terminal referenced by fildes. The duration parameter is ignored in this implementation.

RETURN VALUES

Upon successful completion, all of these functions return a value of zero.

ERRORS

If any error occurs, a value of -1 is returned and the global variable errno is set to indicate the error, as follows:

[EBADF]

The fildes argument is not a valid file descriptor.

[EINTR]

A signal interrupted the tcdrain() function.

[EINVAL]

The action argument is not a proper value.

[ENOTTY]

The file associated with fildes is not a terminal.

SEE ALSO

tcsetattr(3), termios(4)

STANDARDS

The tcsendbreak(), tcdrain(), tcflush() and tcflow() functions are expected to be compliant with the IEEE Std 1003.1-1988 (“POSIX.1”) specification.

History