author | llornkcor <llornkcor> | 2002-10-10 19:56:29 (UTC) |
---|---|---|
committer | llornkcor <llornkcor> | 2002-10-10 19:56:29 (UTC) |
commit | 4aa326251d797d12e5228a7a1ea6d45518e64ba5 (patch) (unidiff) | |
tree | 4cc63e5bb3e9aa520a90780de261979ffc3dfd21 /core/apps/embeddedkonsole/MyPty.cpp | |
parent | 946708623722041624b0435acfb2fa678959adba (diff) | |
download | opie-4aa326251d797d12e5228a7a1ea6d45518e64ba5.zip opie-4aa326251d797d12e5228a7a1ea6d45518e64ba5.tar.gz opie-4aa326251d797d12e5228a7a1ea6d45518e64ba5.tar.bz2 |
bastard standard login shell
Diffstat (limited to 'core/apps/embeddedkonsole/MyPty.cpp') (more/less context) (show whitespace changes)
-rw-r--r-- | core/apps/embeddedkonsole/MyPty.cpp | 7 |
1 files changed, 5 insertions, 2 deletions
diff --git a/core/apps/embeddedkonsole/MyPty.cpp b/core/apps/embeddedkonsole/MyPty.cpp index 6421ab0..9adc248 100644 --- a/core/apps/embeddedkonsole/MyPty.cpp +++ b/core/apps/embeddedkonsole/MyPty.cpp | |||
@@ -61,12 +61,13 @@ | |||
61 | 61 | ||
62 | There's a sinister ioctl(2), signal(2) and job control stuff | 62 | There's a sinister ioctl(2), signal(2) and job control stuff |
63 | nessesary to make everything work as it should. | 63 | nessesary to make everything work as it should. |
64 | */ | 64 | */ |
65 | 65 | ||
66 | 66 | ||
67 | #include <qfileinfo.h> | ||
67 | #include <qapplication.h> | 68 | #include <qapplication.h> |
68 | #include <qsocketnotifier.h> | 69 | #include <qsocketnotifier.h> |
69 | #include <qstring.h> | 70 | #include <qstring.h> |
70 | 71 | ||
71 | #include <stdlib.h> | 72 | #include <stdlib.h> |
72 | #include <stdio.h> | 73 | #include <stdio.h> |
@@ -166,14 +167,16 @@ int MyPty::run(const char* cmd, QStrList &, const char*, int) | |||
166 | setenv("COLORTERM","0",1); | 167 | setenv("COLORTERM","0",1); |
167 | 168 | ||
168 | if (getuid() == 0) { | 169 | if (getuid() == 0) { |
169 | char msg[] = "WARNING: You are running this shell as root!\n"; | 170 | char msg[] = "WARNING: You are running this shell as root!\n"; |
170 | write(ttyfd, msg, sizeof(msg)); | 171 | write(ttyfd, msg, sizeof(msg)); |
171 | } | 172 | } |
172 | ; //creates a login shell | 173 | |
173 | execl(cmd, cmd, "--login", 0); | 174 | QString ccmd = "-"+QFileInfo(cmd).fileName(); //creates a login shell |
175 | |||
176 | execl(cmd, ccmd.latin1(), 0); | ||
174 | 177 | ||
175 | donePty(); | 178 | donePty(); |
176 | exit(-1); | 179 | exit(-1); |
177 | } | 180 | } |
178 | 181 | ||
179 | // parent - continue as a widget | 182 | // parent - continue as a widget |