cfmakeraw()

Updated: April 19, 2023

Set terminal attributes

Synopsis:

#include <termios.h>

int cfmakeraw( struct termios * termios_p );

Arguments:

termios_p
A pointer to a termios structure that describes the terminal's control attributes.

Library:

libc

Use the -l c option to qcc to link against this library. This library is usually included automatically.

Description:

The cfmakeraw() function sets the terminal attributes as follows:

termios_p->c_iflag &= ~(IGNBRK|BRKINT|PARMRK|ISTRIP|INLCR|IGNCR|ICRNL|IXON);
termios_p->c_oflag &= ~OPOST;
termios_p->c_lflag &= ~(ECHO|ECHONL|ICANON|ISIG|IEXTEN);
termios_p->c_cflag &= ~(CSIZE|PARENB);
termios_p->c_cflag |= CS8;

You can get a valid termios control structure for an opened device by calling tcgetattr().

Returns:

0
Success.
-1
An error occurred (errno indicates the reason).

Classification:

Unix

Safety:  
Cancellation point No
Interrupt handler No
Signal handler Yes
Thread Yes