summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--init.c14
-rw-r--r--init/init.c14
2 files changed, 12 insertions, 16 deletions
diff --git a/init.c b/init.c
index a0f15b0..53e9744 100644
--- a/init.c
+++ b/init.c
@@ -440,6 +440,12 @@ static pid_t run(char *command, char *terminal, int get_enter)
signal(SIGHUP, SIG_DFL);
if ((fd = device_open(terminal, O_RDWR)) < 0) {
+ struct stat statBuf;
+ if (stat(terminal, &statBuf) != 0) {
+ message(LOG | CONSOLE, "device '%s' does not exist.\n",
+ terminal);
+ exit(1);
+ }
message(LOG | CONSOLE, "Bummer, can't open %s\r\n", terminal);
exit(1);
}
@@ -813,16 +819,8 @@ static void parse_inittab(void)
while (a->name != 0) {
if (strcmp(a->name, action) == 0) {
if (*id != '\0') {
- struct stat statBuf;
-
strcpy(tmpConsole, "/dev/");
strncat(tmpConsole, id, 200);
- if (stat(tmpConsole, &statBuf) != 0) {
- message(LOG | CONSOLE,
- "device '%s' does not exist. Did you read the directions?\n",
- tmpConsole);
- break;
- }
id = tmpConsole;
}
new_initAction(a->action, process, id);
diff --git a/init/init.c b/init/init.c
index a0f15b0..53e9744 100644
--- a/init/init.c
+++ b/init/init.c
@@ -440,6 +440,12 @@ static pid_t run(char *command, char *terminal, int get_enter)
signal(SIGHUP, SIG_DFL);
if ((fd = device_open(terminal, O_RDWR)) < 0) {
+ struct stat statBuf;
+ if (stat(terminal, &statBuf) != 0) {
+ message(LOG | CONSOLE, "device '%s' does not exist.\n",
+ terminal);
+ exit(1);
+ }
message(LOG | CONSOLE, "Bummer, can't open %s\r\n", terminal);
exit(1);
}
@@ -813,16 +819,8 @@ static void parse_inittab(void)
while (a->name != 0) {
if (strcmp(a->name, action) == 0) {
if (*id != '\0') {
- struct stat statBuf;
-
strcpy(tmpConsole, "/dev/");
strncat(tmpConsole, id, 200);
- if (stat(tmpConsole, &statBuf) != 0) {
- message(LOG | CONSOLE,
- "device '%s' does not exist. Did you read the directions?\n",
- tmpConsole);
- break;
- }
id = tmpConsole;
}
new_initAction(a->action, process, id);