June 4, 1993 TCSENDBREAK 3

### NAME

tcsendbreak, tcdrain, tcflush, tcflow - line control functions

### LIBRARY

Standard C Library (libc, -lc)

### SYNOPSIS

```int` tcdrain(```int fd`)
```int` tcflow(```int fd``, int action`)
```int` tcflush(```int fd``, int action`)
```int` tcsendbreak(```int fd``, int len`)

### DESCRIPTION

The tcdrain function waits until all output written to the terminal referenced by ```fd` has been transmitted to the terminal.

The tcflow function suspends transmission of data to or the reception of data from the terminal referenced by ```fd` 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 ```fd` 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 ```fd`. The ```len` 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 ```fd` argument is not a valid file descriptor.

[```EINVAL`]
  The ```action` argument is not a proper value.

[```ENOTTY`]
  The file associated with ```fd` is not a terminal.

[```EINTR`]
  A signal interrupted the tcdrain function.

### 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.