aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJordan K. Hubbard <jkh@FreeBSD.org>1994-11-08 14:04:19 +0000
committerJordan K. Hubbard <jkh@FreeBSD.org>1994-11-08 14:04:19 +0000
commitdf8cd9c1ac0874423d992fddafaf7915c52ec018 (patch)
treeb05f050ef892456ded6a7bf8e84dd1068982cc8e
parent3d8022fe4936806bfb75f22418a1be55f57dfce0 (diff)
downloadsrc-df8cd9c1ac0874423d992fddafaf7915c52ec018.tar.gz
src-df8cd9c1ac0874423d992fddafaf7915c52ec018.zip
Detect that bininst has finished and go straight into the new system.
Reviewed by: phk
Notes
Notes: svn path=/head/; revision=4285
-rw-r--r--sbin/sysinstall/exec.c6
-rw-r--r--sbin/sysinstall/stage5.c4
2 files changed, 6 insertions, 4 deletions
diff --git a/sbin/sysinstall/exec.c b/sbin/sysinstall/exec.c
index d1ec7f515306..40b5eb0c52a1 100644
--- a/sbin/sysinstall/exec.c
+++ b/sbin/sysinstall/exec.c
@@ -6,7 +6,7 @@
* this stuff is worth it, you can buy me a beer in return. Poul-Henning Kamp
* ----------------------------------------------------------------------------
*
- * $Id: exec.c,v 1.4 1994/10/26 05:40:59 phk Exp $
+ * $Id: exec.c,v 1.5 1994/10/29 10:01:32 phk Exp $
*
*/
@@ -62,6 +62,7 @@ exec(int magic, char *cmd, char *args, ...)
close(debug_fd);
break;
case 2:
+ case 3:
close(debug_fd);
default:
break;
@@ -72,7 +73,8 @@ exec(int magic, char *cmd, char *args, ...)
while ((w = wait(&status)) != pid && w != -1)
;
-
+ if (w == 20 && magic == 3) /* special case for bininst */
+ execl("/sbin/init", "/sbin/init", 0);
if (w == -1)
Fatal("Child process %s terminated abnormally\n", cmd);
return(status);
diff --git a/sbin/sysinstall/stage5.c b/sbin/sysinstall/stage5.c
index e3fdab6d206a..4a814e4e84ce 100644
--- a/sbin/sysinstall/stage5.c
+++ b/sbin/sysinstall/stage5.c
@@ -6,7 +6,7 @@
* this stuff is worth it, you can buy me a beer in return. Poul-Henning Kamp
* ----------------------------------------------------------------------------
*
- * $Id: stage5.c,v 1.12 1994/11/07 13:48:53 jkh Exp $
+ * $Id: stage5.c,v 1.13 1994/11/08 03:41:42 jkh Exp $
*
*/
@@ -45,6 +45,6 @@ stage5()
if (exec_sh)
exec (2,"/stand/sh","/stand/-sh", 0);
else
- exec (2,"/stand/bininst","/stand/-bininst", 0);
+ exec (3,"/stand/bininst","/stand/-bininst", 0);
}
}