| --- a/comgt.c |
| +++ b/comgt.c |
| @@ -30,7 +30,7 @@ |
| #include <stdio.h> |
| #include <stdlib.h> |
| #include <signal.h> |
| -#include <termio.h> |
| +#include <termios.h> |
| #include <fcntl.h> |
| #include <unistd.h> |
| #include <string.h> |
| @@ -81,7 +81,7 @@ char token[MAXTOKEN]; /* For gettoken( |
| char scriptfile[MAXPATH]; /* Script file name */ |
| char scriptfilepath[MAXPATH]; /* temp storage for full path */ |
| BOOL verbose=0; /* Log actions */ |
| -struct termio cons, stbuf, svbuf; /* termios: svbuf=before, stbuf=while */ |
| +struct termios cons, stbuf, svbuf; /* termios: svbuf=before, stbuf=while */ |
| int comfd=0; /* Communication file descriptor. Defaults to stdin. */ |
| char msg[STRINGL]; /* Massage messages here */ |
| int preturn,returns[MAXGOSUBS]; |
| @@ -172,7 +172,7 @@ void dotestkey(void) { |
| |
| /* Exit after resetting terminal settings */ |
| void ext(long xtc) { |
| - ioctl(1, TCSETA, &cons); |
| + ioctl(1, TCSETS, &cons); |
| exit(xtc); |
| } |
| |
| @@ -920,24 +920,24 @@ BOOL getonoroff(void) { |
| void setcom(void) { |
| stbuf.c_cflag &= ~(CBAUD | CSIZE | CSTOPB | CLOCAL | PARENB); |
| stbuf.c_cflag |= (speed | bits | CREAD | clocal | parity | stopbits ); |
| - if (ioctl(comfd, TCSETA, &stbuf) < 0) { |
| + if (ioctl(comfd, TCSETS, &stbuf) < 0) { |
| serror("Can't ioctl set device",1); |
| } |
| } |
| |
| void doset(void) { |
| - struct termio console; |
| + struct termios console; |
| int a,b; |
| gettoken(); |
| if(strcmp(token,"echo")==0) { |
| a=0; |
| if(getonoroff()) a=ECHO|ECHOE; |
| - if(ioctl(0, TCGETA, &console)<0) { |
| + if(ioctl(0, TCGETS, &console)<0) { |
| serror("Can't ioctl FD zero!\n",2); |
| } |
| console.c_lflag &= ~(ECHO | ECHOE); |
| console.c_lflag |= a; |
| - ioctl(0, TCSETA, &console); |
| + ioctl(0, TCSETS, &console); |
| } |
| else if(strcmp(token,"senddelay")==0) { |
| senddelay=10000L*getdvalue(); |
| @@ -1224,7 +1224,7 @@ void doclose(void) { |
| if(strcmp(token,"hardcom")==0) { |
| if(comfd== -1) serror("Com device not open",1); |
| vmsg("Closing device"); |
| - if (ioctl(comfd, TCSETA, &svbuf) < 0) { |
| + if (ioctl(comfd, TCSETS, &svbuf) < 0) { |
| sprintf(msg,"Can't ioctl set device %s.\n",device); |
| serror(msg,1); |
| } |
| @@ -1266,12 +1266,12 @@ void opengt(void) { |
| ext(1); |
| } |
| } |
| - if (ioctl (comfd, TCGETA, &svbuf) < 0) { |
| + if (ioctl (comfd, TCGETS, &svbuf) < 0) { |
| sprintf(msg,"Can't control %s, please try again.\n",device); |
| serror(msg,1); |
| } |
| setenv("COMGTDEVICE",device,1); |
| - ioctl(comfd, TCGETA, &stbuf); |
| + ioctl(comfd, TCGETS, &stbuf); |
| speed=stbuf.c_cflag & CBAUD; |
| if (high_speed == 0) strcpy(cspeed,"115200"); |
| else strcpy(cspeed,"57600"); |
| @@ -1303,11 +1303,11 @@ void opendevice(void) { |
| } |
| else comfd=0; |
| |
| - if (ioctl (comfd, TCGETA, &svbuf) < 0) { |
| + if (ioctl (comfd, TCGETS, &svbuf) < 0) { |
| sprintf(msg,"Can't ioctl get device %s.\n",device); |
| serror(msg,1); |
| } |
| - ioctl(comfd, TCGETA, &stbuf); |
| + ioctl(comfd, TCGETS, &stbuf); |
| speed=stbuf.c_cflag & CBAUD; |
| switch(speed) { |
| case B0: strcpy(cspeed,"0");break; |
| @@ -1553,7 +1553,7 @@ int main(int argc,char **argv) { |
| skip_default=0; |
| filep=NULL; |
| scriptspace=4096; |
| - ioctl(1, TCGETA, &cons); |
| + ioctl(1, TCGETS, &cons); |
| if((script=( char *)malloc(scriptspace))==NULL) { |
| serror("Could not malloc()",3); |
| } |