Diffstat (limited to 'core/apps/embeddedkonsole/MyPty.cpp') (more/less context) (ignore whitespace changes)
-rw-r--r-- | core/apps/embeddedkonsole/MyPty.cpp | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/core/apps/embeddedkonsole/MyPty.cpp b/core/apps/embeddedkonsole/MyPty.cpp index 4b1ae59..c11889e 100644 --- a/core/apps/embeddedkonsole/MyPty.cpp +++ b/core/apps/embeddedkonsole/MyPty.cpp | |||
@@ -148,33 +148,33 @@ int MyPty::run(const char* cmd, QStrList &, const char*, int) | |||
148 | 148 | ||
149 | // attempt to keep apm driver from killing us on power on/off | 149 | // attempt to keep apm driver from killing us on power on/off |
150 | signal(SIGSTOP, SIG_IGN); | 150 | signal(SIGSTOP, SIG_IGN); |
151 | signal(SIGCONT, SIG_IGN); | 151 | signal(SIGCONT, SIG_IGN); |
152 | signal(SIGTSTP, SIG_IGN); | 152 | signal(SIGTSTP, SIG_IGN); |
153 | 153 | ||
154 | int ttyfd = open(ttynam, O_RDWR); | 154 | int ttyfd = open(ttynam, O_RDWR); |
155 | dup2(ttyfd, STDIN_FILENO); | 155 | dup2(ttyfd, STDIN_FILENO); |
156 | dup2(ttyfd, STDOUT_FILENO); | 156 | dup2(ttyfd, STDOUT_FILENO); |
157 | dup2(ttyfd, STDERR_FILENO); | 157 | dup2(ttyfd, STDERR_FILENO); |
158 | // should be done with tty, so close it | 158 | // should be done with tty, so close it |
159 | close(ttyfd); | 159 | close(ttyfd); |
160 | static struct termios ttmode; | 160 | static struct termios ttmode; |
161 | if ( setsid() < 0 ) | 161 | if ( setsid() < 0 ) |
162 | perror( "failed to set process group" ); | 162 | perror( "failed to set process group" ); |
163 | #if defined (TIOCSCTTY) | 163 | #if defined (TIOCSCTTY) |
164 | // grabbed from APUE by Stevens | 164 | // grabbed from APUE by Stevens (see section 9.6, should be page 246) |
165 | ioctl(STDIN_FILENO, TIOCSCTTY, 0); | 165 | ioctl(STDIN_FILENO, TIOCSCTTY, 0); |
166 | #endif | 166 | #endif |
167 | tcgetattr( STDIN_FILENO, &ttmode ); | 167 | tcgetattr( STDIN_FILENO, &ttmode ); |
168 | ttmode.c_cc[VINTR] = 3; | 168 | ttmode.c_cc[VINTR] = 3; |
169 | ttmode.c_cc[VERASE] = 8; | 169 | ttmode.c_cc[VERASE] = 8; |
170 | tcsetattr( STDIN_FILENO, TCSANOW, &ttmode ); | 170 | tcsetattr( STDIN_FILENO, TCSANOW, &ttmode ); |
171 | 171 | ||
172 | if(strlen(getenv("TERM"))<=0) | 172 | if(strlen(getenv("TERM"))<=0) |
173 | setenv("TERM","vt100",1); | 173 | setenv("TERM","vt100",1); |
174 | setenv("COLORTERM","0",1); | 174 | setenv("COLORTERM","0",1); |
175 | 175 | ||
176 | if (getuid() == 0) { | 176 | if (getuid() == 0) { |
177 | char msg[] = "WARNING: You are running this shell as root!\n"; | 177 | char msg[] = "WARNING: You are running this shell as root!\n"; |
178 | write(ttyfd, msg, sizeof(msg)); | 178 | write(ttyfd, msg, sizeof(msg)); |
179 | } | 179 | } |
180 | 180 | ||