aboutsummaryrefslogtreecommitdiffstats
path: root/src/testtty.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/testtty.c')
-rw-r--r--src/testtty.c96
1 files changed, 51 insertions, 45 deletions
diff --git a/src/testtty.c b/src/testtty.c
index 2cef3e0..dbdc918 100644
--- a/src/testtty.c
+++ b/src/testtty.c
@@ -10,6 +10,9 @@ static char rcsid[] = "$Id$";
/*
* $Log$
+ * Revision 1.2 2008/02/04 02:05:06 james
+ * *** empty log message ***
+ *
* Revision 1.1 2008/02/04 01:32:39 james
* *** empty log message ***
*
@@ -17,60 +20,63 @@ static char rcsid[] = "$Id$";
#include "project.h"
-static void default_termios(struct termios *termios)
+static void
+default_termios (struct termios *termios)
{
-memset(termios,0,sizeof(termios));
-
-termios->c_iflag=ICRNL|IXON;
-termios->c_oflag=OPOST | ONLCR | NL0 | CR0 | TAB0 | BS0 | VT0 | FF0;
-termios->c_lflag=ISIG | ICANON | IEXTEN | ECHO | ECHOE | ECHOK | ECHOCTL | ECHOKE;
-
-termios->c_cc[VINTR]=003;
-termios->c_cc[VQUIT]=034;
-termios->c_cc[VERASE]=0177;
-termios->c_cc[VKILL]=025;
-termios->c_cc[VEOF]=004;
-termios->c_cc[VEOL]=0;
-termios->c_cc[VEOL2]=0;
-termios->c_cc[VSTART]=021;
-termios->c_cc[VSTOP]=023;
-termios->c_cc[VSUSP]=032;
-termios->c_cc[VLNEXT]=026;
-termios->c_cc[VWERASE]=027;
-termios->c_cc[VREPRINT]=022;
-termios->c_cc[VDISCARD]=017;
-
-termios->c_cflag=CS8 | CREAD | CLOCAL;
-
-cfsetispeed(termios,B9600);
-cfsetospeed(termios,B9600);
+ memset (termios, 0, sizeof (termios));
+
+ termios->c_iflag = ICRNL | IXON;
+ termios->c_oflag = OPOST | ONLCR | NL0 | CR0 | TAB0 | BS0 | VT0 | FF0;
+ termios->c_lflag =
+ ISIG | ICANON | IEXTEN | ECHO | ECHOE | ECHOK | ECHOCTL | ECHOKE;
+
+ termios->c_cc[VINTR] = 003;
+ termios->c_cc[VQUIT] = 034;
+ termios->c_cc[VERASE] = 0177;
+ termios->c_cc[VKILL] = 025;
+ termios->c_cc[VEOF] = 004;
+ termios->c_cc[VEOL] = 0;
+ termios->c_cc[VEOL2] = 0;
+ termios->c_cc[VSTART] = 021;
+ termios->c_cc[VSTOP] = 023;
+ termios->c_cc[VSUSP] = 032;
+ termios->c_cc[VLNEXT] = 026;
+ termios->c_cc[VWERASE] = 027;
+ termios->c_cc[VREPRINT] = 022;
+ termios->c_cc[VDISCARD] = 017;
+
+ termios->c_cflag = CS8 | CREAD | CLOCAL;
+
+ cfsetispeed (termios, B9600);
+ cfsetospeed (termios, B9600);
}
-int open_fd_to_bash(void) /*thump*/
+int
+open_fd_to_bash (void) /*thump */
{
-pid_t child;
-int fd;
-struct winsize winsize={0};
-struct termios termios;
+ pid_t child;
+ int fd;
+ struct winsize winsize = { 0 };
+ struct termios termios;
-default_termios(&termios);
+ default_termios (&termios);
-winsize.ws_row=CRT_ROWS;
-winsize.ws_col=CRT_COLS;
+ winsize.ws_row = CRT_ROWS;
+ winsize.ws_col = CRT_COLS;
-child=forkpty(&fd,NULL,&termios,&winsize);
+ child = forkpty (&fd, NULL, &termios, &winsize);
-switch (child)
-{
-case -1:/*boo hiss*/
- return -1;
-case 0: /*waaah*/
- setenv("TERM","vt102",1);
- execl("/bin/sh","-",(char *) 0);
- _exit(-1);
-}
+ switch (child)
+ {
+ case -1: /*boo hiss */
+ return -1;
+ case 0: /*waaah */
+ setenv ("TERM", "vt102", 1);
+ execl ("/bin/sh", "-", (char *) 0);
+ _exit (-1);
+ }
-return fd;
+ return fd;
}