#include #include #include /* * setecho.c * usage: setecho [y|n|f] * shows: how to read, change, reset tty attributes */ int main(int ac, char *av[]) { struct termios info; int rv; if ( ac == 1 ) exit(0); rv = tcgetattr( 0, &info ); /* get attribs */ if ( rv == -1 ) exit(1); if ( av[1][0] == 'y' ) info.c_lflag |= ECHO ; /* turn on bit */ else if ( av[1][0] == 'n' ) info.c_lflag &= ~ECHO ; /* turn off bit */ else if ( av[1][0] == 'f' ) /* flip a bit */ info.c_lflag ^= ECHO; tcsetattr( 0, TCSANOW, &info ); /* set attribs */ return 0; }