M boot/boot.c => boot/boot.c +3 -2
@@ 26,7 26,7 @@ boot(int argc, char *argv[])
char *cmd, cmdbuf[64], *iargv[16];
char rootbuf[64];
int islocal, ishybrid;
- char *rp;
+ char *rp, *rsp;
int iargc, n;
char buf[32];
AuthInfo *ai;
@@ 115,6 115,7 @@ boot(int argc, char *argv[])
}
if(mount(fd, afd, "/root", MREPL|MCREATE, rp) < 0)
fatal("mount /");
+ rsp = rp;
rp = getenv("rootdir");
if(rp == nil)
rp = rootdir;
@@ 139,7 140,7 @@ boot(int argc, char *argv[])
close(fd);
setenv("rootdir", rp);
- settime(islocal, afd);
+ settime(islocal, afd, rsp);
swapproc();
cmd = getenv("init");
M boot/boot.h => boot/boot.h +1 -1
@@ 41,7 41,7 @@ extern int readfile(char*, char*, int);
extern long readn(int, void*, long);
extern int sendmsg(int, char*);
extern void setenv(char*, char*);
-extern void settime(int, int);
+extern void settime(int, int, char*);
extern void srvcreate(char*, int);
extern void setusername(int, Method*);
extern void warning(char*);
M boot/settime.c => boot/settime.c +2 -2
@@ 9,7 9,7 @@ static long lusertime(char*);
char *timeserver = "#s/boot";
void
-settime(int islocal, int afd)
+settime(int islocal, int afd, char *rp)
{
int n, f;
int timeset;
@@ 41,7 41,7 @@ settime(int islocal, int afd)
f = open(timeserver, ORDWR);
if(f < 0)
return;
- if(mount(f, afd, "/tmp", MREPL, "") < 0){
+ if(mount(f, afd, "/tmp", MREPL, rp) < 0){
warning("settime mount");
close(f);
return;