cfmakeraw(3)

cfmakeraw3

Set terminal raw mode

Usage

#define _DEFAULT_SOURCE  /* See feature_test_macros(7) */
#include <termios.h>

void cfmakeraw(struct termios *termios_p);

Library

Standard C library (libc, -lc)

Overview

cfmakeraw() sets the terminal to something like the "raw" mode of the old Version 7 terminal driver: input is available character by character, echoing is disabled, and all special processing of terminal input and output characters is disabled.

The terminal attributes are set 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;

Return value

0

on success.

-1

on failure and set errno to indicate the error.

Attributes

For an explanation of the terms used in this section, see attributes(7).

InterfaceAttributeValue
cfmakeraw()Thread safetyMT-Safe

Releases

19 releases since Debian 1.1 (Buzz); the text changed 15 times.

  1. 1.1–1.3
  2. 2.0–2.1
  3. 2.2
  4. 3.0
  5. 3.1
  6. 4.0
  7. 5.0
  8. 6.0
  9. 7
  10. 8
  11. 9
  12. 10
  13. 11
  14. 12
  15. 13
  16. Arch

Standards

BSD.

History

BSD.

From man-pages 6.19-1 in Arch Linux 2026-11-01. Parsed by carta from the page's man source.