screen's InitTTY vs cfmakeraw

Jeffrey Walton <[email protected]> Mon, 11 Nov 2019 19:21:59 -0500
Newsgroups gmane.comp.gnu.screen.user
Message-ID <CAH8yC8k92O7cBmK58EErXm2KH4kkY08+FyjTadcPmki+EYh8Fg@mail.gmail.com>
Hi Everyone,

I have an unrelated application that is having trouble reading from a
USR modem. Other modems are OK. When I test the USR modem with screen,
screen does not have the problem. I am trying to understand the
differences between my program and screen's startup code.

The big difference seems to be my program calls:

    cfmakeraw(&tty);
    tty.c_cflag |= CLOCAL;
    tty.c_cflag |= CRTSCTS;

while screen uses InitTTY. There's a lot to InitTTY (and SetMode).

My first question is, is screen's terminal initialization code limited
to InitTTY? (I want to ensure I am not missing code elsewhere).

My second question is, why does screen _not_ use cfmakeraw? (I don't
have a lot of experience with terminals. I'm beginning to wonder if
cfmakeraw is the wrong tool).

Jeff