Description of problem: cfmakeraw() returns int according to man 3 cfmakeraw, but is void according to /usr/include/termios.h Version-Release number of selected component (if applicable): glibc-devel-2.3.6-3 How reproducible: Every time Steps to Reproduce: 1. man cfmakeraw 2. fgrep cfmakeraw /usr/include/termios.h 3. Actual results: Different return values Expected results: Same return values Additional info:
It is void and info libc documents it that way: -- Function: void cfmakeraw (struct termios *TERMIOS-P) This function provides an easy way to set up `*TERMIOS-P' for what has traditionally been called "raw mode" in BSD. This uses noncanonical input, and turns off most processing to give an unmodified channel to the terminal. It does exactly this: 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; Just the man page is buggy.
This bug is fixed in the last version of man-pages (man-pages-2.29-1).
Untrue: the latest version is man-pages-1.67-8. Yum upgrade shows no newer version.
man-pages-2.29-1 is in devel branch.