purge syscall macros
This commit is contained in:
parent
5f095a9605
commit
f104c46858
@ -309,5 +309,3 @@
|
||||
#define sizeD2M jehanne_sizeD2M
|
||||
#define dirmodefmt jehanne_dirmodefmt
|
||||
#define chartorune jehanne_chartorune
|
||||
#define read(fd, buf, size) jehanne_pread(fd, buf, size, -1)
|
||||
#define write(fd, buf, size) jehanne_pwrite(fd, buf, size, -1)
|
||||
|
@ -70,7 +70,7 @@ threadmain(int argc, char *argv[])
|
||||
Display *d;
|
||||
//
|
||||
|
||||
rfork(RFENVG|RFNAMEG);
|
||||
sys_rfork(RFENVG|RFNAMEG);
|
||||
|
||||
ncol = -1;
|
||||
|
||||
@ -138,12 +138,12 @@ threadmain(int argc, char *argv[])
|
||||
if(loadfile)
|
||||
rowloadfonts(loadfile);
|
||||
putenv("font", fontnames[0]);
|
||||
snarffd = open("/dev/snarf", OREAD|OCEXEC);
|
||||
snarffd = sys_open("/dev/snarf", OREAD|OCEXEC);
|
||||
if(cputype){
|
||||
sprint(buf, "/arch/%s/aux/acme", cputype);
|
||||
bind(buf, "/cmd", MBEFORE);
|
||||
sys_bind(buf, "/cmd", MBEFORE);
|
||||
}
|
||||
bind("/arch/rc/aux/acme", "/cmd", MBEFORE);
|
||||
sys_bind("/arch/rc/aux/acme", "/cmd", MBEFORE);
|
||||
getwd(wdir, sizeof wdir);
|
||||
|
||||
if(geninitdraw(nil, derror, fontnames[0], "acme", nil, Refnone) < 0){
|
||||
@ -307,7 +307,7 @@ killprocs(void)
|
||||
|
||||
for(c=command; c; c=c->next)
|
||||
postnote(PNGROUP, c->pid, "hangup");
|
||||
remove(acmeerrorfile);
|
||||
sys_remove(acmeerrorfile);
|
||||
}
|
||||
|
||||
static int errorfd;
|
||||
@ -320,7 +320,7 @@ acmeerrorproc(void *v)
|
||||
|
||||
threadsetname("acmeerrorproc");
|
||||
buf = emalloc(8192+1);
|
||||
while((n=read(errorfd, buf, 8192)) >= 0){
|
||||
while((n=jehanne_read(errorfd, buf, 8192)) >= 0){
|
||||
buf[n] = '\0';
|
||||
sendp(cerr, estrdup(buf));
|
||||
}
|
||||
@ -337,21 +337,21 @@ acmeerrorinit(void)
|
||||
sprint(acmeerrorfile, "/srv/acme.%s.%d", getuser(), mainpid);
|
||||
fd = ocreate(acmeerrorfile, OWRITE, 0666);
|
||||
if(fd < 0){
|
||||
remove(acmeerrorfile);
|
||||
sys_remove(acmeerrorfile);
|
||||
fd = ocreate(acmeerrorfile, OWRITE, 0666);
|
||||
if(fd < 0)
|
||||
error("can't create acmeerror file");
|
||||
}
|
||||
sprint(buf, "%d", pfd[0]);
|
||||
write(fd, buf, strlen(buf));
|
||||
close(fd);
|
||||
jehanne_write(fd, buf, strlen(buf));
|
||||
sys_close(fd);
|
||||
/* reopen pfd[1] close on exec */
|
||||
sprint(buf, "/fd/%d", pfd[1]);
|
||||
errorfd = open(buf, OREAD|OCEXEC);
|
||||
errorfd = sys_open(buf, OREAD|OCEXEC);
|
||||
if(errorfd < 0)
|
||||
error("can't re-open acmeerror file");
|
||||
close(pfd[1]);
|
||||
close(pfd[0]);
|
||||
sys_close(pfd[1]);
|
||||
sys_close(pfd[0]);
|
||||
proccreate(acmeerrorproc, nil, STACK);
|
||||
}
|
||||
|
||||
@ -935,7 +935,7 @@ putsnarf(void)
|
||||
return;
|
||||
if(snarfbuf.nc > MAXSNARF)
|
||||
return;
|
||||
fd = open("/dev/snarf", OWRITE);
|
||||
fd = sys_open("/dev/snarf", OWRITE);
|
||||
if(fd < 0)
|
||||
return;
|
||||
for(i=0; i<snarfbuf.nc; i+=n){
|
||||
@ -946,7 +946,7 @@ putsnarf(void)
|
||||
if(fprint(fd, "%.*S", n, snarfrune) < 0)
|
||||
break;
|
||||
}
|
||||
close(fd);
|
||||
sys_close(fd);
|
||||
}
|
||||
|
||||
void
|
||||
@ -958,7 +958,7 @@ getsnarf()
|
||||
return;
|
||||
if(snarffd < 0)
|
||||
return;
|
||||
seek(snarffd, 0, 0);
|
||||
sys_seek(snarffd, 0, 0);
|
||||
bufreset(&snarfbuf);
|
||||
bufload(&snarfbuf, 0, snarffd, &nulls);
|
||||
}
|
||||
|
@ -11,8 +11,8 @@
|
||||
#include <lib9.h>
|
||||
|
||||
/*
|
||||
* like fprint but be sure to deliver as a single write.
|
||||
* (fprint uses a small write buffer.)
|
||||
* like fprint but be sure to deliver as a single jehanne_write.
|
||||
* (fprint uses a small jehanne_write buffer.)
|
||||
*/
|
||||
void
|
||||
xfprint(int fd, char *fmt, ...)
|
||||
@ -25,7 +25,7 @@ xfprint(int fd, char *fmt, ...)
|
||||
va_end(arg);
|
||||
if(s == nil)
|
||||
sysfatal("smprint: %r");
|
||||
write(fd, s, strlen(s));
|
||||
jehanne_write(fd, s, strlen(s));
|
||||
free(s);
|
||||
}
|
||||
|
||||
@ -35,7 +35,7 @@ main(int argc, char **argv)
|
||||
int fd;
|
||||
char dir[512];
|
||||
|
||||
fd = open("/dev/acme/ctl", OWRITE);
|
||||
fd = sys_open("/dev/acme/ctl", OWRITE);
|
||||
if(fd < 0)
|
||||
exits(0);
|
||||
getwd(dir, 512);
|
||||
|
@ -36,16 +36,16 @@ main(int argc, char *argv[])
|
||||
else
|
||||
snprint(wdir, sizeof wdir, "%s/-win", wdir);
|
||||
|
||||
if((fd = open("/dev/wnew", ORDWR)) < 0)
|
||||
if((fd = sys_open("/dev/wnew", ORDWR)) < 0)
|
||||
sysfatal("wnew: can't open /dev/wnew: %r");
|
||||
|
||||
if(fprint(fd, "%d %s", pid, wdir+dflag) < 0)
|
||||
sysfatal("wnew: can't create window: %r");
|
||||
|
||||
if(seek(fd, 0, 0) != 0)
|
||||
if(sys_seek(fd, 0, 0) != 0)
|
||||
sysfatal("wnew: can't seek: %r");
|
||||
|
||||
if((n=read(fd, wdir, sizeof wdir-1)) < 0)
|
||||
if((n=jehanne_read(fd, wdir, sizeof wdir-1)) < 0)
|
||||
sysfatal("wnew: can't read window id: %r");
|
||||
wdir[n] = '\0';
|
||||
|
||||
|
@ -43,7 +43,7 @@ threadmain(int argc, char *argv[])
|
||||
char buf[1024], **av;
|
||||
|
||||
quotefmtinstall();
|
||||
rfork(RFNAMEG);
|
||||
sys_rfork(RFNAMEG);
|
||||
ARGBEGIN{
|
||||
case 'd':
|
||||
debug = 1;
|
||||
@ -117,7 +117,7 @@ command(Window *w, char *s)
|
||||
while(*s==' ' || *s=='\t' || *s=='\n')
|
||||
s++;
|
||||
if(strcmp(s, "Delete")==0 || strcmp(s, "Del")==0){
|
||||
write(notepg, "hangup", 6);
|
||||
jehanne_write(notepg, "hangup", 6);
|
||||
windel(w, 1);
|
||||
threadexitsall(nil);
|
||||
return 1;
|
||||
@ -247,7 +247,7 @@ _sendinput(Window *w, uint32_t q0, uint32_t *q1)
|
||||
/* erase q0 to q0+n */
|
||||
sprint(buf, "#%lud,#%lud", q0, q0+n);
|
||||
winsetaddr(w, buf, 0);
|
||||
write(w->data, buf, 0);
|
||||
jehanne_write(w->data, buf, 0);
|
||||
*q1 -= n;
|
||||
return 0;
|
||||
}
|
||||
@ -309,20 +309,20 @@ sendit(char *s)
|
||||
{
|
||||
// char tmp[32];
|
||||
|
||||
write(win->body, s, strlen(s));
|
||||
jehanne_write(win->body, s, strlen(s));
|
||||
/*
|
||||
* RSC: The problem here is that other procs can call sendit,
|
||||
* so we lose our single-threadedness if we call sendinput.
|
||||
* In fact, we don't even have the right queue memory,
|
||||
* I think that we'll get a write event from the body write above,
|
||||
* I think that we'll get a jehanne_write event from the body jehanne_write above,
|
||||
* and we can do the sendinput then, from our single thread.
|
||||
*
|
||||
* I still need to figure out how to test this assertion for
|
||||
* programs that use /srv/win*
|
||||
*
|
||||
winselect(win, "$", 0);
|
||||
seek(win->addr, 0UL, 0);
|
||||
if(read(win->addr, tmp, 2*12) == 2*12)
|
||||
sys_seek(win->addr, 0UL, 0);
|
||||
if(jehanne_read(win->addr, tmp, 2*12) == 2*12)
|
||||
hostpt += sendinput(win, hostpt, atol(tmp), );
|
||||
*/
|
||||
}
|
||||
@ -446,11 +446,11 @@ mainctl(void *v)
|
||||
case 'S': /* output to stdout */
|
||||
sprint(tmp, "#%lud", hostpt);
|
||||
winsetaddr(w, tmp, 0);
|
||||
write(w->data, e->b, e->nb);
|
||||
jehanne_write(w->data, e->b, e->nb);
|
||||
pendingS += e->nr;
|
||||
break;
|
||||
|
||||
case 'E': /* write to tag or body; body happens due to sendit */
|
||||
case 'E': /* jehanne_write to tag or body; body happens due to sendit */
|
||||
delta = e->q1-e->q0;
|
||||
if(e->c2=='I'){
|
||||
endpt += delta;
|
||||
@ -509,7 +509,7 @@ mainctl(void *v)
|
||||
if(e->q0 < hostpt)
|
||||
hostpt += delta;
|
||||
if(e->nr>0 && e->r[e->nr-1]==0x7F){
|
||||
write(notepg, "interrupt", 9);
|
||||
jehanne_write(notepg, "interrupt", 9);
|
||||
hostpt = endpt;
|
||||
break;
|
||||
}
|
||||
@ -617,12 +617,12 @@ execproc(void *v)
|
||||
Channel *cpid;
|
||||
|
||||
e = v;
|
||||
rfork(RFCFDG|RFNOTEG);
|
||||
sys_rfork(RFCFDG|RFNOTEG);
|
||||
av = e->argv;
|
||||
close(0);
|
||||
open("/dev/cons", OREAD);
|
||||
close(1);
|
||||
open("/dev/cons", OWRITE);
|
||||
sys_close(0);
|
||||
sys_open("/dev/cons", OREAD);
|
||||
sys_close(1);
|
||||
sys_open("/dev/cons", OWRITE);
|
||||
dup(1, 2);
|
||||
cpid = e->cpid;
|
||||
free(e);
|
||||
@ -647,11 +647,11 @@ startcmd(char *argv[], int *notepg)
|
||||
cpid = chancreate(sizeof(uint32_t), 0);
|
||||
e->cpid = cpid;
|
||||
sprint(buf, "/mnt/wsys/%d", win->id);
|
||||
bind(buf, "/dev/acme", MREPL);
|
||||
sys_bind(buf, "/dev/acme", MREPL);
|
||||
proccreate(execproc, e, EXECSTACK);
|
||||
do
|
||||
pid = recvul(cpid);
|
||||
while(pid == -1);
|
||||
sprint(buf, "/proc/%d/notepg", pid);
|
||||
*notepg = open(buf, OWRITE);
|
||||
*notepg = sys_open(buf, OWRITE);
|
||||
}
|
||||
|
@ -72,20 +72,20 @@ pipecommand(Window *w, char *s)
|
||||
if(w->addr < 0)
|
||||
w->addr = winopenfile(w, "addr");
|
||||
ctlprint(w->ctl, "addr=dot\n");
|
||||
seek(w->addr, 0UL, 0);
|
||||
if(read(w->addr, tmp, 2*12) == 2*12){
|
||||
sys_seek(w->addr, 0UL, 0);
|
||||
if(jehanne_read(w->addr, tmp, 2*12) == 2*12){
|
||||
q0 = atol(tmp+0*12);
|
||||
q1 = atol(tmp+1*12);
|
||||
if(q0 == q1){
|
||||
t = nil;
|
||||
k = 0;
|
||||
if(snarffd > 0){
|
||||
seek(0, snarffd, 0);
|
||||
sys_seek(0, snarffd, 0);
|
||||
for(;;){
|
||||
t = realloc(t, k+8192+2);
|
||||
if(t == nil)
|
||||
error("alloc failed: %r\n");
|
||||
n = read(snarffd, t+k, 8192);
|
||||
n = jehanne_read(snarffd, t+k, 8192);
|
||||
if(n <= 0)
|
||||
break;
|
||||
k += n;
|
||||
@ -180,5 +180,5 @@ startpipe(void)
|
||||
{
|
||||
newpipechan = chancreate(sizeof(Window*), 0);
|
||||
threadcreate(newpipethread, nil, STACK);
|
||||
snarffd = open("/dev/snarf", OREAD|OCEXEC);
|
||||
snarffd = sys_open("/dev/snarf", OREAD|OCEXEC);
|
||||
}
|
||||
|
@ -20,8 +20,8 @@ newwindow(void)
|
||||
Window *w;
|
||||
|
||||
w = emalloc(sizeof(Window));
|
||||
w->ctl = open("/mnt/wsys/new/ctl", ORDWR|OCEXEC);
|
||||
if(w->ctl<0 || read(w->ctl, buf, 12)!=12)
|
||||
w->ctl = sys_open("/mnt/wsys/new/ctl", ORDWR|OCEXEC);
|
||||
if(w->ctl<0 || jehanne_read(w->ctl, buf, 12)!=12)
|
||||
error("can't open window ctl file: %r");
|
||||
ctlprint(w->ctl, "noscroll\n");
|
||||
w->id = atoi(buf);
|
||||
@ -64,7 +64,7 @@ winopenfile(Window *w, char *f)
|
||||
int fd;
|
||||
|
||||
sprint(buf, "/mnt/wsys/%d/%s", w->id, f);
|
||||
fd = open(buf, ORDWR|OCEXEC);
|
||||
fd = sys_open(buf, ORDWR|OCEXEC);
|
||||
if(fd < 0)
|
||||
error("can't open window file %s: %r", f);
|
||||
return fd;
|
||||
@ -76,9 +76,9 @@ wintagwrite(Window *w, char *s, int n)
|
||||
int fd;
|
||||
|
||||
fd = winopenfile(w, "tag");
|
||||
if(write(fd, s, n) != n)
|
||||
error("tag write: %r");
|
||||
close(fd);
|
||||
if(jehanne_write(fd, s, n) != n)
|
||||
error("tag jehanne_write: %r");
|
||||
sys_close(fd);
|
||||
}
|
||||
|
||||
void
|
||||
@ -91,7 +91,7 @@ int
|
||||
wingetec(Window *w)
|
||||
{
|
||||
if(w->nbuf == 0){
|
||||
w->nbuf = read(w->event, w->buf, sizeof w->buf);
|
||||
w->nbuf = jehanne_read(w->event, w->buf, sizeof w->buf);
|
||||
if(w->nbuf <= 0){
|
||||
/* probably because window has exited, and only called by wineventproc, so just shut down */
|
||||
threadexits(nil);
|
||||
@ -189,9 +189,9 @@ winread(Window *w, uint32_t q0, uint32_t q1, char *data)
|
||||
nb = 0;
|
||||
while(m < q1){
|
||||
n = sprint(buf, "#%d", m);
|
||||
if(write(w->addr, buf, n) != n)
|
||||
if(jehanne_write(w->addr, buf, n) != n)
|
||||
error("error writing addr: %r");
|
||||
n = read(w->data, buf, sizeof buf);
|
||||
n = jehanne_read(w->data, buf, sizeof buf);
|
||||
if(n < 0)
|
||||
error("reading data: %r");
|
||||
nr = nrunes(buf, n);
|
||||
@ -214,15 +214,15 @@ void
|
||||
windormant(Window *w)
|
||||
{
|
||||
if(w->addr >= 0){
|
||||
close(w->addr);
|
||||
sys_close(w->addr);
|
||||
w->addr = -1;
|
||||
}
|
||||
if(w->body >= 0){
|
||||
close(w->body);
|
||||
sys_close(w->body);
|
||||
w->body = -1;
|
||||
}
|
||||
if(w->data >= 0){
|
||||
close(w->data);
|
||||
sys_close(w->data);
|
||||
w->data = -1;
|
||||
}
|
||||
}
|
||||
@ -231,14 +231,14 @@ int
|
||||
windel(Window *w, int sure)
|
||||
{
|
||||
if(sure)
|
||||
write(w->ctl, "delete\n", 7);
|
||||
else if(write(w->ctl, "del\n", 4) != 4)
|
||||
jehanne_write(w->ctl, "delete\n", 7);
|
||||
else if(jehanne_write(w->ctl, "del\n", 4) != 4)
|
||||
return 0;
|
||||
/* event proc will die due to read error from event file */
|
||||
windormant(w);
|
||||
close(w->ctl);
|
||||
sys_close(w->ctl);
|
||||
w->ctl = -1;
|
||||
close(w->event);
|
||||
sys_close(w->event);
|
||||
w->event = -1;
|
||||
return 1;
|
||||
}
|
||||
@ -254,7 +254,7 @@ winsetaddr(Window *w, char *addr, int errok)
|
||||
{
|
||||
if(w->addr < 0)
|
||||
w->addr = winopenfile(w, "addr");
|
||||
if(write(w->addr, addr, strlen(addr)) < 0){
|
||||
if(jehanne_write(w->addr, addr, strlen(addr)) < 0){
|
||||
if(!errok)
|
||||
error("error writing addr(%s): %r", addr);
|
||||
return 0;
|
||||
|
@ -257,7 +257,7 @@ loadfile(int fd, uint32_t q0, int *nulls, int(*f)(void*, uint32_t, Rune*, int),
|
||||
* last pass, possibly representing a partial rune.
|
||||
*/
|
||||
while(n > 0){
|
||||
n = read(fd, p+m, Maxblock);
|
||||
n = jehanne_read(fd, p+m, Maxblock);
|
||||
if(n < 0){
|
||||
warning(nil, "read error in Buffer.load");
|
||||
break;
|
||||
|
@ -121,7 +121,7 @@ diskwrite(Disk *d, Block **bp, Rune *r, uint32_t n)
|
||||
b = disknewblock(d, n);
|
||||
*bp = b;
|
||||
}
|
||||
if(pwrite(d->fd, r, n*sizeof(Rune), b->addr) != n*sizeof(Rune))
|
||||
if(sys_pwrite(d->fd, r, n*sizeof(Rune), b->addr) != n*sizeof(Rune))
|
||||
error("write error to temp file");
|
||||
b->n = n;
|
||||
}
|
||||
@ -139,7 +139,7 @@ diskread(Disk *d, Block *b, Rune *r, uint32_t n)
|
||||
n *= sizeof(Rune);
|
||||
p = (char*)r;
|
||||
for(tot = 0; tot < n; tot += nr){
|
||||
nr = pread(d->fd, p+tot, n-tot, b->addr+tot);
|
||||
nr = sys_pread(d->fd, p+tot, n-tot, b->addr+tot);
|
||||
if(nr <= 0)
|
||||
error("read error from temp file");
|
||||
}
|
||||
|
@ -326,7 +326,7 @@ e_cmd(Text *t, Cmd *cp)
|
||||
samename = runeeq(name, i, t->file->name, t->file->nname);
|
||||
s = runetobyte(name, i);
|
||||
free(name);
|
||||
fd = open(s, OREAD);
|
||||
fd = sys_open(s, OREAD);
|
||||
if(fd < 0){
|
||||
snprint(tmp, sizeof tmp, "can't open %s: %r", s);
|
||||
free(s);
|
||||
@ -336,7 +336,7 @@ e_cmd(Text *t, Cmd *cp)
|
||||
isdir = (d!=nil && (d->qid.type&QTDIR));
|
||||
free(d);
|
||||
if(isdir){
|
||||
close(fd);
|
||||
sys_close(fd);
|
||||
snprint(tmp, sizeof tmp, "%s is a directory", s);
|
||||
free(s);
|
||||
editerror(tmp);
|
||||
@ -345,7 +345,7 @@ e_cmd(Text *t, Cmd *cp)
|
||||
nulls = 0;
|
||||
loadfile(fd, q1, &nulls, readloader, f);
|
||||
free(s);
|
||||
close(fd);
|
||||
sys_close(fd);
|
||||
if(nulls)
|
||||
warning(nil, "%s: NUL bytes elided\n", s);
|
||||
else if(allreplaced && samename)
|
||||
|
@ -616,7 +616,7 @@ putfile(File *f, int q0, int q1, Rune *namer, int nname)
|
||||
n = (BUFSIZE-1)/UTFmax;
|
||||
bufread(f, q, r, n);
|
||||
m = snprint(s, BUFSIZE, "%.*S", n, r);
|
||||
if(write(fd, s, m) != m){
|
||||
if(jehanne_write(fd, s, m) != m){
|
||||
warning(nil, "can't write file %s: %r\n", name);
|
||||
goto Rescue2;
|
||||
}
|
||||
@ -665,14 +665,14 @@ putfile(File *f, int q0, int q1, Rune *namer, int nname)
|
||||
free(d);
|
||||
free(namer);
|
||||
free(name);
|
||||
close(fd);
|
||||
sys_close(fd);
|
||||
winsettag(w);
|
||||
return;
|
||||
|
||||
Rescue2:
|
||||
fbuffree(s);
|
||||
fbuffree(r);
|
||||
close(fd);
|
||||
sys_close(fd);
|
||||
/* fall through */
|
||||
|
||||
Rescue1:
|
||||
@ -1267,7 +1267,7 @@ runproc(void *argvp)
|
||||
if(activewin)
|
||||
winid = activewin->id;
|
||||
}
|
||||
rfork(RFNAMEG|RFENVG|RFFDG|RFNOTEG);
|
||||
sys_rfork(RFNAMEG|RFENVG|RFFDG|RFNOTEG);
|
||||
sprint(buf, "%d", winid);
|
||||
putenv("winid", buf);
|
||||
|
||||
@ -1280,13 +1280,13 @@ runproc(void *argvp)
|
||||
fprint(2, "child: can't mount /dev/cons: %r\n");
|
||||
threadexits("mount");
|
||||
}
|
||||
close(0);
|
||||
sys_close(0);
|
||||
if(winid>0 && (pipechar=='|' || pipechar=='>')){
|
||||
sprint(buf, "/mnt/acme/%d/rdsel", winid);
|
||||
open(buf, OREAD);
|
||||
sys_open(buf, OREAD);
|
||||
}else
|
||||
open("/dev/null", OREAD);
|
||||
close(1);
|
||||
sys_open("/dev/null", OREAD);
|
||||
sys_close(1);
|
||||
if((winid>0 || iseditcmd) && (pipechar=='|' || pipechar=='<')){
|
||||
if(iseditcmd){
|
||||
if(winid > 0)
|
||||
@ -1295,20 +1295,20 @@ runproc(void *argvp)
|
||||
sprint(buf, "/mnt/acme/editout");
|
||||
}else
|
||||
sprint(buf, "/mnt/acme/%d/wrsel", winid);
|
||||
open(buf, OWRITE);
|
||||
close(2);
|
||||
open("/dev/cons", OWRITE);
|
||||
sys_open(buf, OWRITE);
|
||||
sys_close(2);
|
||||
sys_open("/dev/cons", OWRITE);
|
||||
}else{
|
||||
open("/dev/cons", OWRITE);
|
||||
sys_open("/dev/cons", OWRITE);
|
||||
dup(1, 2);
|
||||
}
|
||||
}else{
|
||||
rfork(RFFDG|RFNOTEG);
|
||||
sys_rfork(RFFDG|RFNOTEG);
|
||||
fsysclose();
|
||||
close(0);
|
||||
open("/dev/null", OREAD);
|
||||
close(1);
|
||||
open(acmeerrorfile, OWRITE);
|
||||
sys_close(0);
|
||||
sys_open("/dev/null", OREAD);
|
||||
sys_close(1);
|
||||
sys_open(acmeerrorfile, OWRITE);
|
||||
dup(1, 2);
|
||||
}
|
||||
|
||||
@ -1437,7 +1437,7 @@ run(Window *win, char *s, Rune *rdir, int ndir, int newns,
|
||||
arg[8] = cpid;
|
||||
arg[9] = (void*)(uintptr_t)iseditcmd;
|
||||
proccreate(runproc, arg, STACK);
|
||||
/* mustn't block here because must be ready to answer mount() call in run() */
|
||||
/* mustn't block here because must be ready to answer sys_mount() call in run() */
|
||||
arg = emalloc(2*sizeof(void*));
|
||||
arg[0] = c;
|
||||
arg[1] = cpid;
|
||||
|
@ -135,15 +135,15 @@ fsysinit(void)
|
||||
cfd = p[0];
|
||||
sfd = p[1];
|
||||
fmtinstall('F', fcallfmt);
|
||||
clockfd = open("/dev/time", OREAD|OCEXEC);
|
||||
fd = open("/dev/user", OREAD);
|
||||
clockfd = sys_open("/dev/time", OREAD|OCEXEC);
|
||||
fd = sys_open("/dev/user", OREAD);
|
||||
if(fd >= 0){
|
||||
n = read(fd, buf, sizeof buf-1);
|
||||
n = jehanne_read(fd, buf, sizeof buf-1);
|
||||
if(n > 0){
|
||||
buf[n] = 0;
|
||||
user = estrdup(buf);
|
||||
}
|
||||
close(fd);
|
||||
sys_close(fd);
|
||||
}
|
||||
proccreate(fsysproc, nil, STACK);
|
||||
}
|
||||
@ -279,16 +279,16 @@ fsysmount(Rune *dir, int ndir, Rune **incl, int nincl)
|
||||
Mntdir *m;
|
||||
|
||||
/* close server side so don't hang if acme is half-exited */
|
||||
close(sfd);
|
||||
sys_close(sfd);
|
||||
m = fsysaddid(dir, ndir, incl, nincl);
|
||||
sprint(buf, "%d", m->id);
|
||||
if(mount(cfd, -1, "/mnt/acme", MREPL, buf, '9') < 0){
|
||||
if(sys_mount(cfd, -1, "/mnt/acme", MREPL, buf, '9') < 0){
|
||||
fsysdelid(m);
|
||||
return nil;
|
||||
}
|
||||
close(cfd);
|
||||
bind("/mnt/acme", "/mnt/wsys", MREPL);
|
||||
if(bind("/mnt/acme", "/dev", MBEFORE) < 0){
|
||||
sys_close(cfd);
|
||||
sys_bind("/mnt/acme", "/mnt/wsys", MREPL);
|
||||
if(sys_bind("/mnt/acme", "/dev", MBEFORE) < 0){
|
||||
fsysdelid(m);
|
||||
return nil;
|
||||
}
|
||||
@ -299,8 +299,8 @@ void
|
||||
fsysclose(void)
|
||||
{
|
||||
closing = 1;
|
||||
close(cfd);
|
||||
close(sfd);
|
||||
sys_close(cfd);
|
||||
sys_close(sfd);
|
||||
}
|
||||
|
||||
Xfid*
|
||||
@ -320,7 +320,7 @@ respond(Xfid *x, Fcall *t, char *err)
|
||||
n = convS2M(t, x->buf, messagesize);
|
||||
if(n <= 0)
|
||||
error("convert error in convS2M");
|
||||
if(write(sfd, x->buf, n) != n)
|
||||
if(jehanne_write(sfd, x->buf, n) != n)
|
||||
error("write error in respond");
|
||||
free(x->buf);
|
||||
x->buf = nil;
|
||||
@ -749,7 +749,7 @@ getclock()
|
||||
char buf[32];
|
||||
|
||||
buf[0] = '\0';
|
||||
pread(clockfd, buf, sizeof buf, 0);
|
||||
sys_pread(clockfd, buf, sizeof buf, 0);
|
||||
return atoi(buf);
|
||||
}
|
||||
|
||||
|
@ -431,7 +431,7 @@ rowdump(Row *row, char *file)
|
||||
}
|
||||
}
|
||||
Bterm(b);
|
||||
close(fd);
|
||||
sys_close(fd);
|
||||
free(b);
|
||||
fbuffree(r);
|
||||
|
||||
@ -682,7 +682,7 @@ rowload(Row *row, char *file, int initing)
|
||||
free(r);
|
||||
Bterm(bout);
|
||||
free(bout);
|
||||
close(fd);
|
||||
sys_close(fd);
|
||||
goto Rescue2;
|
||||
}
|
||||
Bputrune(bout, rune);
|
||||
@ -690,7 +690,7 @@ rowload(Row *row, char *file, int initing)
|
||||
Bterm(bout);
|
||||
free(bout);
|
||||
textload(&w->body, 0, buf, 1);
|
||||
close(fd);
|
||||
sys_close(fd);
|
||||
w->body.file->mod = TRUE;
|
||||
for(n=0; n<w->body.file->ntext; n++)
|
||||
w->body.file->text[n]->w->dirty = TRUE;
|
||||
|
@ -203,7 +203,7 @@ textload(Text *t, uint32_t q0, char *file, int setqid)
|
||||
warning(nil, "empty directory name\n");
|
||||
return 0;
|
||||
}
|
||||
fd = open(file, OREAD);
|
||||
fd = sys_open(file, OREAD);
|
||||
if(fd < 0){
|
||||
warning(nil, "can't open %s: %r\n", file);
|
||||
return 0;
|
||||
@ -265,7 +265,7 @@ textload(Text *t, uint32_t q0, char *file, int setqid)
|
||||
t->file->mtime = d->mtime;
|
||||
t->file->qidpath = d->qid.path;
|
||||
}
|
||||
close(fd);
|
||||
sys_close(fd);
|
||||
rp = fbufalloc();
|
||||
for(q=q0; q<q1; q+=n){
|
||||
n = q1-q;
|
||||
@ -296,7 +296,7 @@ textload(Text *t, uint32_t q0, char *file, int setqid)
|
||||
return q1-q0;
|
||||
|
||||
Rescue:
|
||||
close(fd);
|
||||
sys_close(fd);
|
||||
return 0;
|
||||
}
|
||||
|
||||
|
@ -52,7 +52,7 @@ timerproc(void*_)
|
||||
uint32_t old, new;
|
||||
|
||||
threadsetname("timerproc");
|
||||
rfork(RFFDG);
|
||||
sys_rfork(RFFDG);
|
||||
t = nil;
|
||||
na = 0;
|
||||
nt = 0;
|
||||
|
@ -60,7 +60,7 @@ void
|
||||
error(char *s)
|
||||
{
|
||||
fprint(2, "acme: %s: %r\n", s);
|
||||
remove(acmeerrorfile);
|
||||
sys_remove(acmeerrorfile);
|
||||
abort();
|
||||
}
|
||||
|
||||
|
@ -160,7 +160,7 @@ xfidopen(Xfid *x)
|
||||
n = (BUFSIZE-1)/UTFmax;
|
||||
bufread(t->file, q0, r, n);
|
||||
m = snprint(s, BUFSIZE, "%.*S", n, r);
|
||||
if(write(w->rdselfd, s, m) != m){
|
||||
if(jehanne_write(w->rdselfd, s, m) != m){
|
||||
warning(nil, "can't write temp file for pipe command %r\n");
|
||||
break;
|
||||
}
|
||||
@ -244,7 +244,7 @@ xfidclose(Xfid *x)
|
||||
}
|
||||
break;
|
||||
case QWrdsel:
|
||||
close(w->rdselfd);
|
||||
sys_close(w->rdselfd);
|
||||
w->rdselfd = 0;
|
||||
break;
|
||||
case QWwrsel:
|
||||
@ -355,12 +355,12 @@ xfidread(Xfid *x)
|
||||
break;
|
||||
|
||||
case QWrdsel:
|
||||
seek(w->rdselfd, off, 0);
|
||||
sys_seek(w->rdselfd, off, 0);
|
||||
n = x->count;
|
||||
if(n > BUFSIZE)
|
||||
n = BUFSIZE;
|
||||
b = fbufalloc();
|
||||
n = read(w->rdselfd, b, n);
|
||||
n = jehanne_read(w->rdselfd, b, n);
|
||||
if(n < 0){
|
||||
respond(x, &fc, "I/O error in temp file");
|
||||
break;
|
||||
|
@ -118,7 +118,7 @@ static int caphashfd;
|
||||
void
|
||||
initcap(void)
|
||||
{
|
||||
caphashfd = open("#¤/caphash", OCEXEC|OWRITE);
|
||||
caphashfd = sys_open("#¤/caphash", OCEXEC|OWRITE);
|
||||
if(caphashfd < 0)
|
||||
fprint(2, "%s: opening #¤/caphash: %r\n", argv0);
|
||||
}
|
||||
@ -152,7 +152,7 @@ mkcap(char *from, char *to)
|
||||
|
||||
/* give the kernel the hash */
|
||||
key[-1] = '@';
|
||||
if(write(caphashfd, hash, SHA1dlen) < 0){
|
||||
if(jehanne_write(caphashfd, hash, SHA1dlen) < 0){
|
||||
free(cap);
|
||||
return nil;
|
||||
}
|
||||
@ -165,11 +165,11 @@ usecap(char *cap)
|
||||
{
|
||||
int fd, rv;
|
||||
|
||||
fd = open("#¤/capuse", OWRITE);
|
||||
fd = sys_open("#¤/capuse", OWRITE);
|
||||
if(fd < 0)
|
||||
return -1;
|
||||
rv = write(fd, cap, strlen(cap));
|
||||
close(fd);
|
||||
rv = jehanne_write(fd, cap, strlen(cap));
|
||||
sys_close(fd);
|
||||
return rv;
|
||||
}
|
||||
|
||||
|
@ -49,7 +49,7 @@ main(int argc, char **argv)
|
||||
|
||||
fd = 0;
|
||||
if(argc == 1){
|
||||
if((fd = open(*argv, OREAD)) < 0)
|
||||
if((fd = sys_open(*argv, OREAD)) < 0)
|
||||
sysfatal("open %s: %r", *argv);
|
||||
}
|
||||
|
||||
@ -59,7 +59,7 @@ main(int argc, char **argv)
|
||||
buf = realloc(buf, tot+8192);
|
||||
if(buf == nil)
|
||||
sysfatal("realloc: %r");
|
||||
if((n = read(fd, buf+tot, 8192)) < 0)
|
||||
if((n = jehanne_read(fd, buf+tot, 8192)) < 0)
|
||||
sysfatal("read: %r");
|
||||
if(n == 0)
|
||||
break;
|
||||
@ -76,6 +76,6 @@ main(int argc, char **argv)
|
||||
key->secret);
|
||||
if(s == nil)
|
||||
sysfatal("smprint: %r");
|
||||
write(1, s, strlen(s));
|
||||
jehanne_write(1, s, strlen(s));
|
||||
exits(0);
|
||||
}
|
||||
|
@ -55,7 +55,7 @@ main(int argc, char **argv)
|
||||
else
|
||||
file = "#d/0";
|
||||
|
||||
if((fd = open(file, OREAD)) < 0)
|
||||
if((fd = sys_open(file, OREAD)) < 0)
|
||||
sysfatal("open %s: %r", file);
|
||||
buf = nil;
|
||||
tot = 0;
|
||||
@ -63,7 +63,7 @@ main(int argc, char **argv)
|
||||
buf = realloc(buf, tot+8192);
|
||||
if(buf == nil)
|
||||
sysfatal("realloc: %r");
|
||||
if((n = read(fd, buf+tot, 8192)) < 0)
|
||||
if((n = jehanne_read(fd, buf+tot, 8192)) < 0)
|
||||
sysfatal("read: %r");
|
||||
if(n == 0)
|
||||
break;
|
||||
@ -81,6 +81,6 @@ main(int argc, char **argv)
|
||||
key->kp, key->kq, key->c2);
|
||||
if(s == nil)
|
||||
sysfatal("smprint: %r");
|
||||
write(1, s, strlen(s));
|
||||
jehanne_write(1, s, strlen(s));
|
||||
exits(0);
|
||||
}
|
||||
|
@ -85,7 +85,7 @@ main(int argc, char *argv[])
|
||||
if(argc >= 1)
|
||||
getraddr(argv[argc-1]);
|
||||
|
||||
alarm(10*60*1000); /* kill a connection after 10 minutes */
|
||||
sys_alarm(10*60*1000); /* kill a connection after 10 minutes */
|
||||
|
||||
private();
|
||||
initkeyseed();
|
||||
@ -151,7 +151,7 @@ pak1(char *u, Keyslot *k)
|
||||
authpak_hash(k, k->id);
|
||||
}
|
||||
authpak_new(&p, k, y, 0);
|
||||
if(write(1, y, PAKYLEN) != PAKYLEN)
|
||||
if(jehanne_write(1, y, PAKYLEN) != PAKYLEN)
|
||||
exits(0);
|
||||
if(readn(0, y, PAKYLEN) != PAKYLEN)
|
||||
exits(0);
|
||||
@ -164,7 +164,7 @@ pak(Ticketreq *tr)
|
||||
{
|
||||
static uint8_t ok[1] = {AuthOK};
|
||||
|
||||
if(write(1, ok, 1) != 1)
|
||||
if(jehanne_write(1, ok, 1) != 1)
|
||||
exits(0);
|
||||
|
||||
/* invalidate pak keys */
|
||||
@ -235,7 +235,7 @@ ticketrequest(Ticketreq *tr)
|
||||
n += convT2M(&t, tbuf+n, sizeof(tbuf)-n, &hkey);
|
||||
t.num = AuthTs;
|
||||
n += convT2M(&t, tbuf+n, sizeof(tbuf)-n, &akey);
|
||||
if(write(1, tbuf, n) != n)
|
||||
if(jehanne_write(1, tbuf, n) != n)
|
||||
exits(0);
|
||||
|
||||
syslog(0, AUTHLOG, "tr-ok %s@%s(%s) -> %s@%s", tr->uid, tr->hostid, raddr, tr->uid, tr->authid);
|
||||
@ -272,7 +272,7 @@ challengebox(Ticketreq *tr)
|
||||
buf[0] = AuthOK;
|
||||
chal = nfastrand(MAXNETCHAL);
|
||||
sprint(buf+1, "%lud", chal);
|
||||
if(write(1, buf, NETCHLEN+1) != NETCHLEN+1)
|
||||
if(jehanne_write(1, buf, NETCHLEN+1) != NETCHLEN+1)
|
||||
exits(0);
|
||||
if(readn(0, buf, NETCHLEN) != NETCHLEN)
|
||||
exits(0);
|
||||
@ -314,7 +314,7 @@ changepasswd(Ticketreq *tr)
|
||||
n = 0;
|
||||
tbuf[n++] = AuthOK;
|
||||
n += convT2M(&t, tbuf+n, sizeof(tbuf)-n, &ukey);
|
||||
if(write(1, tbuf, n) != n)
|
||||
if(jehanne_write(1, tbuf, n) != n)
|
||||
exits(0);
|
||||
|
||||
/* loop trying passwords out */
|
||||
@ -363,7 +363,7 @@ changepasswd(Ticketreq *tr)
|
||||
succeed(tr->uid);
|
||||
|
||||
prbuf[0] = AuthOK;
|
||||
if(write(1, prbuf, 1) != 1)
|
||||
if(jehanne_write(1, prbuf, 1) != 1)
|
||||
exits(0);
|
||||
}
|
||||
|
||||
@ -540,7 +540,7 @@ vnc(Ticketreq *tr)
|
||||
genrandom(chal+6, VNCchallen);
|
||||
chal[0] = AuthOKvar;
|
||||
sprint((char*)chal+1, "%-5d", VNCchallen);
|
||||
if(write(1, chal, sizeof(chal)) != sizeof(chal))
|
||||
if(jehanne_write(1, chal, sizeof(chal)) != sizeof(chal))
|
||||
exits(0);
|
||||
|
||||
/*
|
||||
@ -596,7 +596,7 @@ chap(Ticketreq *tr)
|
||||
* Create a challenge and send it.
|
||||
*/
|
||||
genrandom((uint8_t*)chal, sizeof(chal));
|
||||
if(write(1, chal, sizeof(chal)) != sizeof(chal))
|
||||
if(jehanne_write(1, chal, sizeof(chal)) != sizeof(chal))
|
||||
exits(0);
|
||||
|
||||
/*
|
||||
@ -701,7 +701,7 @@ mschap(Ticketreq *tr)
|
||||
* Create a challenge and send it.
|
||||
*/
|
||||
genrandom(chal, sizeof(chal));
|
||||
if(write(1, chal, sizeof(chal)) != sizeof(chal))
|
||||
if(jehanne_write(1, chal, sizeof(chal)) != sizeof(chal))
|
||||
exits(0);
|
||||
|
||||
/*
|
||||
@ -838,7 +838,7 @@ mschap(Ticketreq *tr)
|
||||
sha1(hash2, 16, 0, s);
|
||||
sha1(chal, 8, digest, s);
|
||||
|
||||
if(write(1, digest, 16) != 16)
|
||||
if(jehanne_write(1, digest, 16) != 16)
|
||||
exits(0);
|
||||
}
|
||||
|
||||
@ -990,7 +990,7 @@ replyerror(char *fmt, ...)
|
||||
va_end(arg);
|
||||
buf[AERRLEN] = 0;
|
||||
buf[0] = AuthErr;
|
||||
write(1, buf, AERRLEN+1);
|
||||
jehanne_write(1, buf, AERRLEN+1);
|
||||
syslog(0, AUTHLOG, buf+1);
|
||||
}
|
||||
|
||||
@ -1080,7 +1080,7 @@ tickauthreply(Ticketreq *tr, Authkey *key)
|
||||
genrandom(a.rand, NONCELEN);
|
||||
a.num = AuthAc;
|
||||
n += convA2M(&a, buf+n, sizeof(buf)-n, &t);
|
||||
if(write(1, buf, n) != n)
|
||||
if(jehanne_write(1, buf, n) != n)
|
||||
exits(0);
|
||||
}
|
||||
|
||||
|
@ -41,7 +41,7 @@ main(int argc, char **argv)
|
||||
if(argc != 1)
|
||||
usage();
|
||||
|
||||
if((afd = open("/mnt/factotum/rpc", ORDWR)) < 0)
|
||||
if((afd = sys_open("/mnt/factotum/rpc", ORDWR)) < 0)
|
||||
sysfatal("open /mnt/factotum/rpc: %r");
|
||||
|
||||
rpc = auth_allocrpc(afd);
|
||||
@ -53,14 +53,14 @@ main(int argc, char **argv)
|
||||
|
||||
print("challenge: %s\n", c->chal);
|
||||
print("user:");
|
||||
n = read(0, bufu, sizeof bufu);
|
||||
n = jehanne_read(0, bufu, sizeof bufu);
|
||||
if(n > 0){
|
||||
bufu[n-1] = '\0';
|
||||
c->user = bufu;
|
||||
}
|
||||
|
||||
print("response: ");
|
||||
n = read(0, buf, sizeof buf);
|
||||
n = jehanne_read(0, buf, sizeof buf);
|
||||
if(n < 0)
|
||||
sysfatal("read: %r");
|
||||
if(n == 0)
|
||||
|
@ -123,10 +123,10 @@ install(char *db, char *u, Authkey *key, int32_t t, int newkey)
|
||||
|
||||
if(!exists(db, u)){
|
||||
sprint(buf, "%s/%s", db, u);
|
||||
fd = create(buf, OREAD, 0777|DMDIR);
|
||||
fd = sys_create(buf, OREAD, 0777|DMDIR);
|
||||
if(fd < 0)
|
||||
error("can't create user %s: %r", u);
|
||||
close(fd);
|
||||
sys_close(fd);
|
||||
}
|
||||
|
||||
if(newkey){
|
||||
@ -137,10 +137,10 @@ install(char *db, char *u, Authkey *key, int32_t t, int newkey)
|
||||
if(t == -1)
|
||||
return;
|
||||
sprint(buf, "%s/%s/expire", db, u);
|
||||
fd = open(buf, OWRITE);
|
||||
fd = sys_open(buf, OWRITE);
|
||||
if(fd < 0 || fprint(fd, "%ld", t) < 0)
|
||||
error("can't write expiration time");
|
||||
close(fd);
|
||||
sys_close(fd);
|
||||
}
|
||||
|
||||
int
|
||||
|
@ -72,7 +72,7 @@ main(int argc, char *argv[])
|
||||
getpass(&nkey, nil, 0, 1);
|
||||
}
|
||||
|
||||
fd = open(file, ORDWR);
|
||||
fd = sys_open(file, ORDWR);
|
||||
if(fd < 0)
|
||||
error("can't open %s: %r\n", file);
|
||||
d = dirfstat(fd);
|
||||
@ -82,12 +82,12 @@ main(int argc, char *argv[])
|
||||
p = malloc(len);
|
||||
if(p == nil)
|
||||
error("out of memory");
|
||||
if(read(fd, p, len) != len)
|
||||
if(jehanne_read(fd, p, len) != len)
|
||||
error("can't read key file: %r\n");
|
||||
len = convert(&p, len);
|
||||
if(pwrite(fd, p, len, 0) != len)
|
||||
if(sys_pwrite(fd, p, len, 0) != len)
|
||||
error("can't write key file: %r\n");
|
||||
close(fd);
|
||||
sys_close(fd);
|
||||
exits(nil);
|
||||
}
|
||||
|
||||
|
@ -153,7 +153,7 @@ mklock(char *file)
|
||||
free(dir);
|
||||
|
||||
/* reopen in case it wasn't a lock file at last open */
|
||||
close(fd);
|
||||
sys_close(fd);
|
||||
}
|
||||
for (try = 0; try < 65 && (fd = openlock(file)) < 0; try++)
|
||||
sleep(10*1000);
|
||||
@ -244,8 +244,8 @@ main(int argc, char *argv[])
|
||||
&& j->time.mon & t.mon)
|
||||
rexec(&users[i], j);
|
||||
}
|
||||
seek(lock, 0, 0);
|
||||
write(lock, "x", 1); /* keep the lock alive */
|
||||
sys_seek(lock, 0, 0);
|
||||
jehanne_write(lock, "x", 1); /* keep the lock alive */
|
||||
/*
|
||||
* if we're not at next minute yet, sleep until a second past
|
||||
* (to allow for sleep intervals being approximate),
|
||||
@ -265,13 +265,13 @@ createuser(void)
|
||||
|
||||
user = getuser();
|
||||
snprint(file, sizeof file, "/cron/%s", user);
|
||||
fd = create(file, OREAD, 0755|DMDIR);
|
||||
fd = sys_create(file, OREAD, 0755|DMDIR);
|
||||
if(fd < 0)
|
||||
fatal("couldn't create %s: %r", file);
|
||||
nulldir(&d);
|
||||
d.gid = user;
|
||||
dirfwstat(fd, &d);
|
||||
close(fd);
|
||||
sys_close(fd);
|
||||
snprint(file, sizeof file, "/cron/%s/cron", user);
|
||||
fd = ocreate(file, OREAD, 0644);
|
||||
if(fd < 0)
|
||||
@ -279,7 +279,7 @@ createuser(void)
|
||||
nulldir(&d);
|
||||
d.gid = user;
|
||||
dirfwstat(fd, &d);
|
||||
close(fd);
|
||||
sys_close(fd);
|
||||
}
|
||||
|
||||
void
|
||||
@ -290,7 +290,7 @@ readalljobs(void)
|
||||
char file[128];
|
||||
int i, n, fd;
|
||||
|
||||
fd = open("/cron", OREAD);
|
||||
fd = sys_open("/cron", OREAD);
|
||||
if(fd < 0)
|
||||
fatal("can't open /cron: %r");
|
||||
while((n = dirread(fd, &d)) > 0){
|
||||
@ -314,7 +314,7 @@ readalljobs(void)
|
||||
}
|
||||
free(d);
|
||||
}
|
||||
close(fd);
|
||||
sys_close(fd);
|
||||
}
|
||||
|
||||
/*
|
||||
@ -441,7 +441,7 @@ getname(char **namep)
|
||||
*namep = strdup(buf);
|
||||
if(*namep == 0){
|
||||
clog("internal error: strdup failure");
|
||||
_exits(0);
|
||||
sys__exits(0);
|
||||
}
|
||||
while(*savec == ' ' || *savec == '\t')
|
||||
savec++;
|
||||
@ -553,7 +553,7 @@ rexec(User *user, Job *j)
|
||||
{
|
||||
char buf[8*1024];
|
||||
|
||||
switch(rfork(RFPROC|RFNOWAIT|RFNAMEG|RFENVG|RFFDG)){
|
||||
switch(sys_rfork(RFPROC|RFNOWAIT|RFNAMEG|RFENVG|RFFDG)){
|
||||
case 0:
|
||||
break;
|
||||
case -1:
|
||||
@ -564,23 +564,23 @@ rexec(User *user, Job *j)
|
||||
|
||||
if(!mkcmd(j->cmd, buf, sizeof buf)){
|
||||
clog("internal error: cmd buffer overflow");
|
||||
_exits(0);
|
||||
sys__exits(0);
|
||||
}
|
||||
|
||||
if(becomeuser(user->name) < 0){
|
||||
clog("%s: can't change uid for %s on %s: %r",
|
||||
user->name, j->cmd, j->host);
|
||||
_exits(0);
|
||||
sys__exits(0);
|
||||
}
|
||||
|
||||
clog("%s: ran '%s' on %s", user->name, j->cmd, j->host);
|
||||
|
||||
close(0);
|
||||
close(1);
|
||||
close(2);
|
||||
open("/dev/null", OREAD);
|
||||
open("/dev/null", OWRITE);
|
||||
open("/dev/null", OWRITE);
|
||||
sys_close(0);
|
||||
sys_close(1);
|
||||
sys_close(2);
|
||||
sys_open("/dev/null", OREAD);
|
||||
sys_open("/dev/null", OWRITE);
|
||||
sys_open("/dev/null", OWRITE);
|
||||
|
||||
if(strcmp(j->host, "local") == 0){
|
||||
putenv(ENV_SERVICE, "rx");
|
||||
@ -590,7 +590,7 @@ rexec(User *user, Job *j)
|
||||
}
|
||||
|
||||
clog("%s: exec failed for %s on %s: %r", user->name, j->cmd, j->host);
|
||||
_exits(0);
|
||||
sys__exits(0);
|
||||
}
|
||||
|
||||
void *
|
||||
@ -635,7 +635,7 @@ static int caphashfd;
|
||||
void
|
||||
initcap(void)
|
||||
{
|
||||
caphashfd = open("#¤/caphash", OCEXEC|OWRITE);
|
||||
caphashfd = sys_open("#¤/caphash", OCEXEC|OWRITE);
|
||||
if(caphashfd < 0)
|
||||
fprint(2, "%s: opening #¤/caphash: %r\n", argv0);
|
||||
}
|
||||
@ -670,7 +670,7 @@ mkcap(char *from, char *to)
|
||||
|
||||
/* give the kernel the hash */
|
||||
key[-1] = '@';
|
||||
if(write(caphashfd, hash, SHA1dlen) < 0){
|
||||
if(jehanne_write(caphashfd, hash, SHA1dlen) < 0){
|
||||
free(cap);
|
||||
return nil;
|
||||
}
|
||||
@ -683,11 +683,11 @@ usecap(char *cap)
|
||||
{
|
||||
int fd, rv;
|
||||
|
||||
fd = open("#¤/capuse", OWRITE);
|
||||
fd = sys_open("#¤/capuse", OWRITE);
|
||||
if(fd < 0)
|
||||
return -1;
|
||||
rv = write(fd, cap, strlen(cap));
|
||||
close(fd);
|
||||
rv = jehanne_write(fd, cap, strlen(cap));
|
||||
sys_close(fd);
|
||||
return rv;
|
||||
}
|
||||
|
||||
|
@ -66,10 +66,10 @@ readcons(char *prompt, char *def, int raw, char *buf, int nbuf)
|
||||
int fdin, fdout, ctl, n, m;
|
||||
char line[10];
|
||||
|
||||
fdin = open("/dev/cons", OREAD);
|
||||
fdin = sys_open("/dev/cons", OREAD);
|
||||
if(fdin < 0)
|
||||
fdin = 0;
|
||||
fdout = open("/dev/cons", OWRITE);
|
||||
fdout = sys_open("/dev/cons", OWRITE);
|
||||
if(fdout < 0)
|
||||
fdout = 1;
|
||||
if(def != nil)
|
||||
@ -77,22 +77,22 @@ readcons(char *prompt, char *def, int raw, char *buf, int nbuf)
|
||||
else
|
||||
fprint(fdout, "%s: ", prompt);
|
||||
if(raw){
|
||||
ctl = open("/dev/consctl", OWRITE);
|
||||
ctl = sys_open("/dev/consctl", OWRITE);
|
||||
if(ctl >= 0)
|
||||
write(ctl, "rawon", 5);
|
||||
jehanne_write(ctl, "rawon", 5);
|
||||
} else
|
||||
ctl = -1;
|
||||
|
||||
m = 0;
|
||||
for(;;){
|
||||
n = read(fdin, line, 1);
|
||||
n = jehanne_read(fdin, line, 1);
|
||||
if(n == 0){
|
||||
close(ctl);
|
||||
sys_close(ctl);
|
||||
werrstr("readcons: EOF");
|
||||
return nil;
|
||||
}
|
||||
if(n < 0){
|
||||
close(ctl);
|
||||
sys_close(ctl);
|
||||
werrstr("can't read cons");
|
||||
return nil;
|
||||
}
|
||||
@ -100,9 +100,9 @@ readcons(char *prompt, char *def, int raw, char *buf, int nbuf)
|
||||
exits(0);
|
||||
if(n == 0 || line[0] == '\n' || line[0] == '\r'){
|
||||
if(raw){
|
||||
write(ctl, "rawoff", 6);
|
||||
write(fdout, "\n", 1);
|
||||
close(ctl);
|
||||
jehanne_write(ctl, "rawoff", 6);
|
||||
jehanne_write(fdout, "\n", 1);
|
||||
sys_close(ctl);
|
||||
}
|
||||
buf[m] = '\0';
|
||||
if(buf[0]=='\0' && def)
|
||||
@ -192,7 +192,7 @@ authdialfutz(char *dom, char *user, char *proto)
|
||||
fd = authdial(nil, dom);
|
||||
if(fd >= 0){
|
||||
print("\tsuccessfully dialed auth server\n");
|
||||
close(fd);
|
||||
sys_close(fd);
|
||||
authfutz(dom, user, proto);
|
||||
return;
|
||||
}
|
||||
@ -215,7 +215,7 @@ authdialfutz(char *dom, char *user, char *proto)
|
||||
fd = dial(addr=netmkaddr("$auth", nil, "ticket"), 0, 0, 0);
|
||||
if(fd >= 0){
|
||||
print("\tdial %s succeeded\n", addr);
|
||||
close(fd);
|
||||
sys_close(fd);
|
||||
return;
|
||||
}
|
||||
print("\tdial %s failed: %r\n", addr);
|
||||
@ -236,14 +236,14 @@ getpakkeys(int fd, Ticketreq *tr, Authkey *akey, Authkey *hkey)
|
||||
|
||||
authpak_hash(akey, tr->authid);
|
||||
authpak_new(&p, akey, y, 1);
|
||||
if(write(fd, y, PAKYLEN) != PAKYLEN
|
||||
if(jehanne_write(fd, y, PAKYLEN) != PAKYLEN
|
||||
|| readn(fd, y, PAKYLEN) != PAKYLEN
|
||||
|| authpak_finish(&p, akey, y))
|
||||
goto out;
|
||||
|
||||
authpak_hash(hkey, tr->hostid);
|
||||
authpak_new(&p, hkey, y, 1);
|
||||
if(write(fd, y, PAKYLEN) != PAKYLEN
|
||||
if(jehanne_write(fd, y, PAKYLEN) != PAKYLEN
|
||||
|| readn(fd, y, PAKYLEN) != PAKYLEN
|
||||
|| authpak_finish(&p, hkey, y))
|
||||
goto out;
|
||||
@ -287,13 +287,13 @@ authfutz(char *dom, char *user, char *proto)
|
||||
|
||||
if(strcmp(proto, "dp9ik") == 0 && getpakkeys(fd, &tr, &booteskey, &key) < 0){
|
||||
print("\tgetpakkeys failed: %r\n");
|
||||
close(fd);
|
||||
sys_close(fd);
|
||||
return;
|
||||
}
|
||||
|
||||
if((n = _asgetticket(fd, &tr, tbuf, sizeof(tbuf))) < 0){
|
||||
print("\t_asgetticket failed: %r\n");
|
||||
close(fd);
|
||||
sys_close(fd);
|
||||
return;
|
||||
}
|
||||
m = convM2T(tbuf, n, &t, &key);
|
||||
@ -337,13 +337,13 @@ authfutz(char *dom, char *user, char *proto)
|
||||
|
||||
if(strcmp(proto, "dp9ik") == 0 && getpakkeys(fd, &tr, &booteskey, &key) < 0){
|
||||
print("\tgetpakkeys failed: %r\n");
|
||||
close(fd);
|
||||
sys_close(fd);
|
||||
return;
|
||||
}
|
||||
|
||||
if((n = _asgetticket(fd, &tr, tbuf, sizeof(tbuf))) < 0){
|
||||
print("\t_asgetticket failed: %r\n");
|
||||
close(fd);
|
||||
sys_close(fd);
|
||||
return;
|
||||
}
|
||||
m = convM2T(tbuf, n, &t, &key);
|
||||
|
@ -54,6 +54,6 @@ main(int argc, char **argv)
|
||||
key->pub.p, key->pub.q, key->pub.alpha, key->pub.key);
|
||||
if(s == nil)
|
||||
sysfatal("smprint: %r");
|
||||
write(1, s, strlen(s));
|
||||
jehanne_write(1, s, strlen(s));
|
||||
exits(nil);
|
||||
}
|
||||
|
@ -54,7 +54,7 @@ main(int argc, char **argv)
|
||||
if(s == nil)
|
||||
sysfatal("smprint: %r");
|
||||
|
||||
if(write(1, s, strlen(s)) != strlen(s))
|
||||
if(jehanne_write(1, s, strlen(s)) != strlen(s))
|
||||
sysfatal("write: %r");
|
||||
|
||||
exits(nil);
|
||||
|
@ -205,7 +205,7 @@ apopclose(Fsstate *fss)
|
||||
|
||||
s = fss->ps;
|
||||
if(s->asfd >= 0){
|
||||
close(s->asfd);
|
||||
sys_close(s->asfd);
|
||||
s->asfd = -1;
|
||||
}
|
||||
if(s->key != nil){
|
||||
@ -243,16 +243,16 @@ dochal(State *s)
|
||||
s->asfd = _authreq(&s->tr, &s->k);
|
||||
if(s->asfd < 0)
|
||||
goto err;
|
||||
alarm(30*1000);
|
||||
sys_alarm(30*1000);
|
||||
n = _asrdresp(s->asfd, s->chal, sizeof s->chal);
|
||||
alarm(0);
|
||||
sys_alarm(0);
|
||||
if(n <= 5)
|
||||
goto err;
|
||||
return 0;
|
||||
|
||||
err:
|
||||
if(s->asfd >= 0)
|
||||
close(s->asfd);
|
||||
sys_close(s->asfd);
|
||||
s->asfd = -1;
|
||||
return -1;
|
||||
}
|
||||
@ -271,22 +271,22 @@ doreply(State *s, char *user, char *response)
|
||||
|
||||
genrandom((uint8_t*)s->tr.chal, CHALLEN);
|
||||
safecpy(s->tr.uid, user, sizeof(s->tr.uid));
|
||||
alarm(30*1000);
|
||||
sys_alarm(30*1000);
|
||||
if(_asrequest(s->asfd, &s->tr) < 0){
|
||||
alarm(0);
|
||||
sys_alarm(0);
|
||||
goto err;
|
||||
}
|
||||
if(write(s->asfd, response, MD5dlen*2) != MD5dlen*2){
|
||||
alarm(0);
|
||||
if(jehanne_write(s->asfd, response, MD5dlen*2) != MD5dlen*2){
|
||||
sys_alarm(0);
|
||||
goto err;
|
||||
}
|
||||
n = _asgetresp(s->asfd, &s->t, &a, &s->k);
|
||||
alarm(0);
|
||||
sys_alarm(0);
|
||||
if(n < 0){
|
||||
/* leave connection open so we can try again */
|
||||
return -1;
|
||||
}
|
||||
close(s->asfd);
|
||||
sys_close(s->asfd);
|
||||
s->asfd = -1;
|
||||
|
||||
if(s->t.num != AuthTs
|
||||
@ -305,7 +305,7 @@ doreply(State *s, char *user, char *response)
|
||||
return 0;
|
||||
err:
|
||||
if(s->asfd >= 0)
|
||||
close(s->asfd);
|
||||
sys_close(s->asfd);
|
||||
s->asfd = -1;
|
||||
return -1;
|
||||
}
|
||||
|
@ -140,7 +140,7 @@ chapclose(Fsstate *fss)
|
||||
|
||||
s = fss->ps;
|
||||
if(s->asfd >= 0){
|
||||
close(s->asfd);
|
||||
sys_close(s->asfd);
|
||||
s->asfd = -1;
|
||||
}
|
||||
free(s);
|
||||
@ -334,9 +334,9 @@ dochal(State *s)
|
||||
if(s->asfd < 0)
|
||||
goto err;
|
||||
|
||||
alarm(30*1000);
|
||||
sys_alarm(30*1000);
|
||||
n = readn(s->asfd, s->chal, sizeof s->chal);
|
||||
alarm(0);
|
||||
sys_alarm(0);
|
||||
if(n != sizeof s->chal)
|
||||
goto err;
|
||||
|
||||
@ -344,7 +344,7 @@ dochal(State *s)
|
||||
|
||||
err:
|
||||
if(s->asfd >= 0)
|
||||
close(s->asfd);
|
||||
sys_close(s->asfd);
|
||||
s->asfd = -1;
|
||||
return -1;
|
||||
}
|
||||
@ -355,22 +355,22 @@ doreply(State *s, uint8_t *reply, int nreply)
|
||||
int n;
|
||||
Authenticator a;
|
||||
|
||||
alarm(30*1000);
|
||||
if(write(s->asfd, reply, nreply) != nreply){
|
||||
alarm(0);
|
||||
sys_alarm(30*1000);
|
||||
if(jehanne_write(s->asfd, reply, nreply) != nreply){
|
||||
sys_alarm(0);
|
||||
goto err;
|
||||
}
|
||||
n = _asgetresp(s->asfd, &s->t, &a, &s->k);
|
||||
if(n < 0){
|
||||
alarm(0);
|
||||
sys_alarm(0);
|
||||
/* leave connection open so we can try again */
|
||||
return -1;
|
||||
}
|
||||
s->nsecret = readn(s->asfd, s->secret, sizeof s->secret);
|
||||
alarm(0);
|
||||
sys_alarm(0);
|
||||
if(s->nsecret < 0)
|
||||
s->nsecret = 0;
|
||||
close(s->asfd);
|
||||
sys_close(s->asfd);
|
||||
s->asfd = -1;
|
||||
|
||||
if(s->t.num != AuthTs
|
||||
@ -389,7 +389,7 @@ doreply(State *s, uint8_t *reply, int nreply)
|
||||
return 0;
|
||||
err:
|
||||
if(s->asfd >= 0)
|
||||
close(s->asfd);
|
||||
sys_close(s->asfd);
|
||||
s->asfd = -1;
|
||||
return -1;
|
||||
}
|
||||
|
@ -27,7 +27,7 @@ struct RequestType
|
||||
char *file; /* file to read requests from */
|
||||
void (*f)(Request*); /* request handler */
|
||||
void (*r)(Controlset*); /* resize handler */
|
||||
int fd; /* fd = open(file, ORDWR) */
|
||||
int fd; /* fd = sys_open(file, ORDWR) */
|
||||
Channel *rc; /* channel requests are multiplexed to */
|
||||
Controlset *cs;
|
||||
};
|
||||
@ -140,7 +140,7 @@ readreq(void *a)
|
||||
Request r;
|
||||
Attr **l;
|
||||
|
||||
rt->fd = open(rt->file, ORDWR);
|
||||
rt->fd = sys_open(rt->file, ORDWR);
|
||||
if(rt->fd < 0)
|
||||
sysfatal("opening %s: %r", rt->file);
|
||||
rt->cs = nil;
|
||||
@ -151,7 +151,7 @@ readreq(void *a)
|
||||
r.rt = rt;
|
||||
|
||||
for(;;){
|
||||
n = read(rt->fd, buf, Requestlen-1);
|
||||
n = jehanne_read(rt->fd, buf, Requestlen-1);
|
||||
if(n < 0)
|
||||
break;
|
||||
buf[n] = 0;
|
||||
@ -270,11 +270,11 @@ unhide(void)
|
||||
{
|
||||
int wctl;
|
||||
|
||||
wctl = open("/dev/wctl", OWRITE);
|
||||
wctl = sys_open("/dev/wctl", OWRITE);
|
||||
if(wctl < 0)
|
||||
return;
|
||||
fprint(wctl, "unhide");
|
||||
close(wctl);
|
||||
sys_close(wctl);
|
||||
}
|
||||
static void
|
||||
hide(void)
|
||||
@ -282,7 +282,7 @@ hide(void)
|
||||
int wctl;
|
||||
int tries;
|
||||
|
||||
wctl = open("/dev/wctl", OWRITE);
|
||||
wctl = sys_open("/dev/wctl", OWRITE);
|
||||
if(wctl < 0)
|
||||
return;
|
||||
for(tries = 0; tries < 10; tries++){
|
||||
@ -290,7 +290,7 @@ hide(void)
|
||||
break;
|
||||
sleep(100);
|
||||
}
|
||||
close(wctl);
|
||||
sys_close(wctl);
|
||||
}
|
||||
|
||||
/*
|
||||
@ -805,10 +805,10 @@ needkey(Request *r)
|
||||
}
|
||||
|
||||
/* enter the new key */
|
||||
fd = open("/mnt/factotum/ctl", OWRITE);
|
||||
fd = sys_open("/mnt/factotum/ctl", OWRITE);
|
||||
if(fd >= 0){
|
||||
fprint(fd, "key %A", r->a);
|
||||
close(fd);
|
||||
sys_close(fd);
|
||||
}
|
||||
|
||||
teardownneedkey(r);
|
||||
|
@ -134,7 +134,7 @@ main(int argc, char **argv)
|
||||
fmtinstall('H', encodefmt);
|
||||
|
||||
ring = emalloc(sizeof(*ring));
|
||||
notify(notifyf);
|
||||
sys_notify(notifyf);
|
||||
|
||||
if(gflag){
|
||||
if(argc != 1)
|
||||
@ -181,7 +181,7 @@ main(int argc, char **argv)
|
||||
if(fork() == 0){
|
||||
int fd;
|
||||
|
||||
if((fd = open(smprint("%s/factotum/ctl", mtpt), OWRITE)) < 0)
|
||||
if((fd = sys_open(smprint("%s/factotum/ctl", mtpt), OWRITE)) < 0)
|
||||
sysfatal("can't open factotum: %r");
|
||||
dup(fd, 1);
|
||||
execl("/bin/auth/secstore", "secstore", "-G", "factotum", nil);
|
||||
@ -203,7 +203,7 @@ private(void)
|
||||
char buf[64];
|
||||
|
||||
snprint(buf, sizeof(buf), "#p/%d/ctl", getpid());
|
||||
fd = open(buf, OWRITE);
|
||||
fd = sys_open(buf, OWRITE);
|
||||
if(fd < 0){
|
||||
fprint(2, pmsg, argv0);
|
||||
return;
|
||||
@ -212,15 +212,15 @@ private(void)
|
||||
fprint(2, pmsg, argv0);
|
||||
if(fprint(fd, "noswap") < 0)
|
||||
fprint(2, smsg, argv0);
|
||||
close(fd);
|
||||
sys_close(fd);
|
||||
}
|
||||
|
||||
static void
|
||||
notifyf(void* _, char *s)
|
||||
{
|
||||
if(strncmp(s, "interrupt", 9) == 0 || strncmp(s, "alarm", 5) == 0)
|
||||
noted(NCONT);
|
||||
noted(NDFLT);
|
||||
sys_noted(NCONT);
|
||||
sys_noted(NDFLT);
|
||||
}
|
||||
|
||||
enum
|
||||
|
@ -73,7 +73,7 @@ p9crclose(Fsstate *fss)
|
||||
|
||||
s = fss->ps;
|
||||
if(s->asfd >= 0){
|
||||
close(s->asfd);
|
||||
sys_close(s->asfd);
|
||||
s->asfd = -1;
|
||||
}
|
||||
free(s);
|
||||
@ -293,14 +293,14 @@ p9crwrite(Fsstate *fss, void *va, uint32_t n)
|
||||
memset(resp, 0, sizeof resp);
|
||||
memmove(resp, data, n);
|
||||
|
||||
alarm(30*1000);
|
||||
if(write(s->asfd, resp, s->challen) != s->challen){
|
||||
alarm(0);
|
||||
sys_alarm(30*1000);
|
||||
if(jehanne_write(s->asfd, resp, s->challen) != s->challen){
|
||||
sys_alarm(0);
|
||||
return failure(fss, Easproto);
|
||||
}
|
||||
/* get ticket plus authenticator from auth server */
|
||||
ret = _asgetresp(s->asfd, &s->t, &a, &s->k);
|
||||
alarm(0);
|
||||
sys_alarm(0);
|
||||
|
||||
if(ret < 0)
|
||||
return failure(fss, nil);
|
||||
@ -341,9 +341,9 @@ getchal(State *s, Fsstate *fss)
|
||||
s->asfd = _authreq(&s->tr, &s->k);
|
||||
if(s->asfd < 0)
|
||||
return failure(fss, Easproto);
|
||||
alarm(30*1000);
|
||||
sys_alarm(30*1000);
|
||||
n = _asrdresp(s->asfd, s->chal, s->challen);
|
||||
alarm(0);
|
||||
sys_alarm(0);
|
||||
if(n <= 0){
|
||||
if(n == 0)
|
||||
werrstr("_asrdresp short read");
|
||||
|
@ -555,15 +555,15 @@ getastickets(State *s, Ticketreq *tr, uint8_t *y, char *tbuf, int tbuflen)
|
||||
asfd = _authdial(dom);
|
||||
if(asfd < 0)
|
||||
return -1;
|
||||
alarm(30*1000);
|
||||
sys_alarm(30*1000);
|
||||
if(y != nil){
|
||||
rv = -1;
|
||||
s->tr.type = AuthPAK;
|
||||
if(_asrequest(asfd, tr) != 0 || write(asfd, y, PAKYLEN) != PAKYLEN)
|
||||
if(_asrequest(asfd, tr) != 0 || jehanne_write(asfd, y, PAKYLEN) != PAKYLEN)
|
||||
goto Out;
|
||||
|
||||
authpak_new(&s->p, &s->k, (uint8_t*)tbuf, 1);
|
||||
if(write(asfd, tbuf, PAKYLEN) != PAKYLEN)
|
||||
if(jehanne_write(asfd, tbuf, PAKYLEN) != PAKYLEN)
|
||||
goto Out;
|
||||
|
||||
if(_asrdresp(asfd, tbuf, 2*PAKYLEN) != 2*PAKYLEN)
|
||||
@ -576,8 +576,8 @@ getastickets(State *s, Ticketreq *tr, uint8_t *y, char *tbuf, int tbuflen)
|
||||
s->tr.type = AuthTreq;
|
||||
rv = _asgetticket(asfd, tr, tbuf, tbuflen);
|
||||
Out:
|
||||
alarm(0);
|
||||
close(asfd);
|
||||
sys_alarm(0);
|
||||
sys_close(asfd);
|
||||
return rv;
|
||||
}
|
||||
|
||||
|
@ -23,13 +23,13 @@ bindnetcs(void)
|
||||
int srvfd;
|
||||
|
||||
if(access("/net/tcp", AEXIST) < 0)
|
||||
bind("#I", "/net", MBEFORE);
|
||||
sys_bind("#I", "/net", MBEFORE);
|
||||
|
||||
if(access("/net/cs", AEXIST) < 0){
|
||||
if((srvfd = open("#s/cs", ORDWR)) >= 0){
|
||||
if(mount(srvfd, -1, "/net", MBEFORE, "", '9') >= 0)
|
||||
if((srvfd = sys_open("#s/cs", ORDWR)) >= 0){
|
||||
if(sys_mount(srvfd, -1, "/net", MBEFORE, "", '9') >= 0)
|
||||
return 0;
|
||||
close(srvfd);
|
||||
sys_close(srvfd);
|
||||
}
|
||||
return -1;
|
||||
}
|
||||
@ -44,7 +44,7 @@ netndbauthaddr(void)
|
||||
char *b, *p, *e;
|
||||
int fd, n, m, i;
|
||||
|
||||
if((fd = open("/net/ndb", OREAD)) < 0)
|
||||
if((fd = sys_open("/net/ndb", OREAD)) < 0)
|
||||
return;
|
||||
m = 0;
|
||||
b = nil;
|
||||
@ -52,11 +52,11 @@ netndbauthaddr(void)
|
||||
if((p = realloc(b, m+CHUNK+1)) == nil)
|
||||
break;
|
||||
b = p;
|
||||
if((n = read(fd, b+m, CHUNK)) <= 0)
|
||||
if((n = jehanne_read(fd, b+m, CHUNK)) <= 0)
|
||||
break;
|
||||
m += n;
|
||||
}
|
||||
close(fd);
|
||||
sys_close(fd);
|
||||
if(b == nil)
|
||||
return;
|
||||
b[m] = '\0';
|
||||
@ -90,7 +90,7 @@ _authdial(char *authdom)
|
||||
{
|
||||
int i, fd;
|
||||
|
||||
alarm(30*1000);
|
||||
sys_alarm(30*1000);
|
||||
if(bindnetcs()>=0)
|
||||
fd = authdial(nil, authdom);
|
||||
else {
|
||||
@ -115,7 +115,7 @@ _authdial(char *authdom)
|
||||
fd = dial(netmkaddr(authaddr[i], "il", "566"), 0, 0, 0);
|
||||
}
|
||||
}
|
||||
alarm(0);
|
||||
sys_alarm(0);
|
||||
return fd;
|
||||
}
|
||||
|
||||
@ -127,20 +127,20 @@ _authreq(Ticketreq *tr, Authkey *k)
|
||||
fd = _authdial(tr->authdom);
|
||||
if(fd < 0)
|
||||
return -1;
|
||||
alarm(30*1000);
|
||||
sys_alarm(30*1000);
|
||||
if(tsmemcmp(k->aes, zeros, AESKEYLEN) != 0){
|
||||
if(_asgetpakkey(fd, tr, k) < 0){
|
||||
alarm(0);
|
||||
close(fd);
|
||||
sys_alarm(0);
|
||||
sys_close(fd);
|
||||
return -1;
|
||||
}
|
||||
}
|
||||
if(_asrequest(fd, tr) < 0){
|
||||
alarm(0);
|
||||
close(fd);
|
||||
sys_alarm(0);
|
||||
sys_close(fd);
|
||||
return -1;
|
||||
}
|
||||
alarm(0);
|
||||
sys_alarm(0);
|
||||
return fd;
|
||||
}
|
||||
|
||||
@ -155,7 +155,7 @@ promptforkey(char *params)
|
||||
Attr *a, *attr;
|
||||
char *def;
|
||||
|
||||
fd = open("/dev/cons", ORDWR);
|
||||
fd = sys_open("/dev/cons", ORDWR);
|
||||
if(fd < 0)
|
||||
sysfatal("opening /dev/cons: %r");
|
||||
|
||||
@ -191,7 +191,7 @@ promptforkey(char *params)
|
||||
a->type = AttrNameval;
|
||||
}
|
||||
fprint(fd, "!\n");
|
||||
close(fd);
|
||||
sys_close(fd);
|
||||
return attr;
|
||||
}
|
||||
|
||||
@ -204,12 +204,12 @@ sendkey(Attr *attr)
|
||||
int fd, rv;
|
||||
char buf[1024];
|
||||
|
||||
fd = open("/mnt/factotum/ctl", ORDWR);
|
||||
fd = sys_open("/mnt/factotum/ctl", ORDWR);
|
||||
if(fd < 0)
|
||||
sysfatal("opening /mnt/factotum/ctl: %r");
|
||||
rv = fprint(fd, "key %A\n", attr);
|
||||
read(fd, buf, sizeof buf);
|
||||
close(fd);
|
||||
jehanne_read(fd, buf, sizeof buf);
|
||||
sys_close(fd);
|
||||
return rv;
|
||||
}
|
||||
|
||||
@ -329,7 +329,7 @@ failure(Fsstate *s, char *fmt, ...)
|
||||
vsnprint(e, sizeof e, fmt, arg);
|
||||
va_end(arg);
|
||||
strecpy(s->err, s->err+sizeof(s->err), e);
|
||||
errstr(e, sizeof e);
|
||||
sys_errstr(e, sizeof e);
|
||||
}
|
||||
flog("%d: failure %s", s->seqnum, s->err);
|
||||
return RpcFailure;
|
||||
@ -630,7 +630,7 @@ static int caphashfd;
|
||||
void
|
||||
initcap(void)
|
||||
{
|
||||
caphashfd = open("#¤/caphash", OWRITE);
|
||||
caphashfd = sys_open("#¤/caphash", OWRITE);
|
||||
// if(caphashfd < 0)
|
||||
// fprint(2, "%s: opening #¤/caphash: %r\n", argv0);
|
||||
}
|
||||
@ -664,7 +664,7 @@ mkcap(char *from, char *to)
|
||||
|
||||
/* give the kernel the hash */
|
||||
key[-1] = '@';
|
||||
if(write(caphashfd, hash, SHA1dlen) < 0){
|
||||
if(jehanne_write(caphashfd, hash, SHA1dlen) < 0){
|
||||
free(cap);
|
||||
return nil;
|
||||
}
|
||||
@ -767,10 +767,10 @@ readcons(char *prompt, char *def, int raw)
|
||||
char line[10];
|
||||
char *s;
|
||||
|
||||
fdin = open("/dev/cons", OREAD);
|
||||
fdin = sys_open("/dev/cons", OREAD);
|
||||
if(fdin < 0)
|
||||
fdin = 0;
|
||||
fdout = open("/dev/cons", OWRITE);
|
||||
fdout = sys_open("/dev/cons", OWRITE);
|
||||
if(fdout < 0)
|
||||
fdout = 1;
|
||||
if(def != nil)
|
||||
@ -778,20 +778,20 @@ readcons(char *prompt, char *def, int raw)
|
||||
else
|
||||
fprint(fdout, "%s: ", prompt);
|
||||
if(raw){
|
||||
ctl = open("/dev/consctl", OWRITE);
|
||||
ctl = sys_open("/dev/consctl", OWRITE);
|
||||
if(ctl >= 0)
|
||||
write(ctl, "rawon", 5);
|
||||
jehanne_write(ctl, "rawon", 5);
|
||||
} else
|
||||
ctl = -1;
|
||||
s = estrdup("");
|
||||
for(;;){
|
||||
n = read(fdin, line, 1);
|
||||
n = jehanne_read(fdin, line, 1);
|
||||
if(n == 0){
|
||||
Error:
|
||||
close(fdin);
|
||||
close(fdout);
|
||||
sys_close(fdin);
|
||||
sys_close(fdout);
|
||||
if(ctl >= 0)
|
||||
close(ctl);
|
||||
sys_close(ctl);
|
||||
free(s);
|
||||
return nil;
|
||||
}
|
||||
@ -801,12 +801,12 @@ readcons(char *prompt, char *def, int raw)
|
||||
goto Error;
|
||||
if(n == 0 || line[0] == '\n' || line[0] == '\r'){
|
||||
if(raw){
|
||||
write(ctl, "rawoff", 6);
|
||||
write(fdout, "\n", 1);
|
||||
jehanne_write(ctl, "rawoff", 6);
|
||||
jehanne_write(fdout, "\n", 1);
|
||||
}
|
||||
close(ctl);
|
||||
close(fdin);
|
||||
close(fdout);
|
||||
sys_close(ctl);
|
||||
sys_close(fdin);
|
||||
sys_close(fdout);
|
||||
if(*s == 0 && def != nil)
|
||||
s = estrappend(s, "%s", def);
|
||||
return s;
|
||||
@ -1006,12 +1006,12 @@ writehostowner(char *owner)
|
||||
|
||||
if((s = strchr(owner,'@')) != nil)
|
||||
*s = 0;
|
||||
fd = open("#c/hostowner", OWRITE);
|
||||
fd = sys_open("#c/hostowner", OWRITE);
|
||||
if(fd >= 0){
|
||||
if(fprint(fd, "%s", owner) < 0)
|
||||
fprint(2, "factotum: setting #c/hostowner to %q: %r\n",
|
||||
owner);
|
||||
close(fd);
|
||||
sys_close(fd);
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -124,8 +124,8 @@ wepwrite(Fsstate *fss, void *va, uint32_t n)
|
||||
goto out;
|
||||
rv = RpcOk;
|
||||
out:
|
||||
close(fd);
|
||||
close(cfd);
|
||||
sys_close(fd);
|
||||
sys_close(cfd);
|
||||
return rv;
|
||||
}
|
||||
|
||||
|
@ -74,7 +74,7 @@ main(int argc, char *argv[])
|
||||
getraddr(argv[argc-1]);
|
||||
|
||||
argv0 = "guard";
|
||||
notify(catchalarm);
|
||||
sys_notify(catchalarm);
|
||||
|
||||
/*
|
||||
* read the host and client and get their keys
|
||||
@ -88,13 +88,13 @@ main(int argc, char *argv[])
|
||||
chal = nfastrand(MAXNETCHAL);
|
||||
sprint(buf, "challenge: %lud\nresponse: ", chal);
|
||||
n = strlen(buf) + 1;
|
||||
if(write(1, buf, n) != n){
|
||||
if(jehanne_write(1, buf, n) != n){
|
||||
if(debug)
|
||||
syslog(0, AUTHLOG, "g-fail %s@%s: %r sending chal",
|
||||
user, raddr);
|
||||
exits("replying to server");
|
||||
}
|
||||
alarm(3*60*1000);
|
||||
sys_alarm(3*60*1000);
|
||||
werrstr("");
|
||||
if(readarg(0, resp, sizeof resp) < 0){
|
||||
if(debug)
|
||||
@ -102,14 +102,14 @@ main(int argc, char *argv[])
|
||||
user, raddr);
|
||||
fail(0);
|
||||
}
|
||||
alarm(0);
|
||||
sys_alarm(0);
|
||||
|
||||
/* remove password login from guard.research.bell-labs.com, sucre, etc. */
|
||||
// if(!findkey(KEYDB, user, ukey) || !netcheck(ukey, chal, resp))
|
||||
if(!finddeskey(NETKEYDB, user, ukey) || !netcheck(ukey, chal, resp))
|
||||
if((err = secureidcheck(user, resp)) != nil){
|
||||
print("NO %s", err);
|
||||
write(1, "NO", 2);
|
||||
jehanne_write(1, "NO", 2);
|
||||
if(debug) {
|
||||
char *r;
|
||||
|
||||
@ -131,7 +131,7 @@ main(int argc, char *argv[])
|
||||
}
|
||||
fail(user);
|
||||
}
|
||||
write(1, "OK", 2);
|
||||
jehanne_write(1, "OK", 2);
|
||||
if(debug)
|
||||
syslog(0, AUTHLOG, "g-ok %s@%s", user, raddr);
|
||||
succeed(user);
|
||||
@ -154,11 +154,11 @@ getraddr(char *dir)
|
||||
char file[128];
|
||||
|
||||
snprint(file, sizeof(file), "%s/remote", dir);
|
||||
fd = open(file, OREAD);
|
||||
fd = sys_open(file, OREAD);
|
||||
if(fd < 0)
|
||||
return;
|
||||
n = read(fd, raddr, sizeof(raddr)-1);
|
||||
close(fd);
|
||||
n = jehanne_read(fd, raddr, sizeof(raddr)-1);
|
||||
sys_close(fd);
|
||||
if(n <= 0)
|
||||
return;
|
||||
raddr[n] = 0;
|
||||
|
@ -212,16 +212,16 @@ main(int argc, char *argv[])
|
||||
}
|
||||
}
|
||||
|
||||
switch(rfork(RFPROC|RFNAMEG|RFNOTEG|RFNOWAIT|RFENVG|RFFDG)){
|
||||
switch(sys_rfork(RFPROC|RFNAMEG|RFNOTEG|RFNOWAIT|RFENVG|RFFDG)){
|
||||
case 0:
|
||||
close(p[0]);
|
||||
sys_close(p[0]);
|
||||
io(p[1], p[1]);
|
||||
exits(0);
|
||||
case -1:
|
||||
error("fork");
|
||||
default:
|
||||
close(p[1]);
|
||||
if(mount(p[0], -1, mntpt, MREPL|MCREATE, "", '9') < 0)
|
||||
sys_close(p[1]);
|
||||
if(sys_mount(p[0], -1, mntpt, MREPL|MCREATE, "", '9') < 0)
|
||||
error("can't mount: %r");
|
||||
exits(0);
|
||||
}
|
||||
@ -788,11 +788,11 @@ writeusers(void)
|
||||
fprint(2, "keyfs: can't write keys file\n");
|
||||
return;
|
||||
}
|
||||
if(write(fd, buf, p - buf) != (p - buf))
|
||||
if(jehanne_write(fd, buf, p - buf) != (p - buf))
|
||||
fprint(2, "keyfs: can't write keys file\n");
|
||||
|
||||
free(buf);
|
||||
close(fd);
|
||||
sys_close(fd);
|
||||
|
||||
newkeys();
|
||||
}
|
||||
@ -866,17 +866,17 @@ readusers(void)
|
||||
Dir *d;
|
||||
|
||||
/* read file into an array */
|
||||
fd = open(userkeys, OREAD);
|
||||
fd = sys_open(userkeys, OREAD);
|
||||
if(fd < 0)
|
||||
return 0;
|
||||
d = dirfstat(fd);
|
||||
if(d == nil){
|
||||
close(fd);
|
||||
sys_close(fd);
|
||||
return 0;
|
||||
}
|
||||
buf = emalloc(d->length);
|
||||
n = readn(fd, buf, d->length);
|
||||
close(fd);
|
||||
sys_close(fd);
|
||||
free(d);
|
||||
if(n != d->length){
|
||||
free(buf);
|
||||
@ -1075,7 +1075,7 @@ io(int in, int out)
|
||||
thdr.ename = err;
|
||||
}
|
||||
n = convS2M(&thdr, mdata, messagesize);
|
||||
if(write(out, mdata, n) != n)
|
||||
if(jehanne_write(out, mdata, n) != n)
|
||||
error("mount write");
|
||||
|
||||
now = time(0);
|
||||
@ -1138,13 +1138,13 @@ warning(void)
|
||||
char buf[64];
|
||||
|
||||
snprint(buf, sizeof buf, "-%s", warnarg);
|
||||
switch(rfork(RFPROC|RFNAMEG|RFNOTEG|RFNOWAIT|RFENVG|RFFDG)){
|
||||
switch(sys_rfork(RFPROC|RFNAMEG|RFNOTEG|RFNOWAIT|RFENVG|RFFDG)){
|
||||
case 0:
|
||||
i = open("/sys/log/auth", OWRITE);
|
||||
i = sys_open("/sys/log/auth", OWRITE);
|
||||
if(i >= 0){
|
||||
dup(i, 2);
|
||||
seek(2, 0, 2);
|
||||
close(i);
|
||||
sys_seek(2, 0, 2);
|
||||
sys_close(i);
|
||||
}
|
||||
execl("/bin/auth/warning", "warning", warnarg, nil);
|
||||
error("can't exec warning");
|
||||
|
@ -31,6 +31,6 @@ error(char *fmt, ...)
|
||||
s = vseprint(s, buf + sizeof(buf), fmt, arg);
|
||||
va_end(arg);
|
||||
*s++ = '\n';
|
||||
write(2, buf, s - buf);
|
||||
jehanne_write(2, buf, s - buf);
|
||||
exits(buf);
|
||||
}
|
||||
|
@ -54,13 +54,13 @@ getexpiration(char *db, char *u)
|
||||
|
||||
/* read current expiration (if any) */
|
||||
snprint(buf, sizeof buf, "%s/%s/expire", db, u);
|
||||
fd = open(buf, OREAD);
|
||||
fd = sys_open(buf, OREAD);
|
||||
buf[0] = 0;
|
||||
if(fd >= 0){
|
||||
n = read(fd, buf, sizeof(buf)-1);
|
||||
n = jehanne_read(fd, buf, sizeof(buf)-1);
|
||||
if(n > 0)
|
||||
buf[n-1] = 0;
|
||||
close(fd);
|
||||
sys_close(fd);
|
||||
}
|
||||
|
||||
if(buf[0]){
|
||||
|
@ -26,11 +26,11 @@ record(char *db, char *user, char *msg)
|
||||
int fd;
|
||||
|
||||
snprint(buf, sizeof buf, "%s/%s/log", db, user);
|
||||
fd = open(buf, OWRITE);
|
||||
fd = sys_open(buf, OWRITE);
|
||||
if(fd < 0)
|
||||
return;
|
||||
write(fd, msg, strlen(msg));
|
||||
close(fd);
|
||||
jehanne_write(fd, msg, strlen(msg));
|
||||
sys_close(fd);
|
||||
return;
|
||||
}
|
||||
|
||||
|
@ -30,7 +30,7 @@ private(void)
|
||||
char buf[64];
|
||||
|
||||
snprint(buf, sizeof(buf), "#p/%d/ctl", getpid());
|
||||
fd = open(buf, OWRITE);
|
||||
fd = sys_open(buf, OWRITE);
|
||||
if(fd < 0){
|
||||
fprint(2, pmsg, argv0);
|
||||
return;
|
||||
@ -39,5 +39,5 @@ private(void)
|
||||
fprint(2, pmsg, argv0);
|
||||
if(fprint(fd, "noswap") < 0)
|
||||
fprint(2, smsg, argv0);
|
||||
close(fd);
|
||||
sys_close(fd);
|
||||
}
|
||||
|
@ -27,7 +27,7 @@ readarg(int fd, char *arg, int len)
|
||||
|
||||
i = 0;
|
||||
memset(arg, 0, len);
|
||||
while(read(fd, buf, 1) == 1){
|
||||
while(jehanne_read(fd, buf, 1) == 1){
|
||||
if(i < len - 1)
|
||||
arg[i++] = *buf;
|
||||
if(*buf == '\0'){
|
||||
|
@ -80,22 +80,22 @@ readln(char *prompt, char *line, int len, int raw)
|
||||
char *p;
|
||||
int fdin, fdout, ctl, n, nr;
|
||||
|
||||
fdin = open("/dev/cons", OREAD);
|
||||
fdout = open("/dev/cons", OWRITE);
|
||||
fdin = sys_open("/dev/cons", OREAD);
|
||||
fdout = sys_open("/dev/cons", OWRITE);
|
||||
fprint(fdout, "%s", prompt);
|
||||
if(raw){
|
||||
ctl = open("/dev/consctl", OWRITE);
|
||||
ctl = sys_open("/dev/consctl", OWRITE);
|
||||
if(ctl < 0)
|
||||
error("couldn't set raw mode");
|
||||
write(ctl, "rawon", 5);
|
||||
jehanne_write(ctl, "rawon", 5);
|
||||
} else
|
||||
ctl = -1;
|
||||
nr = 0;
|
||||
p = line;
|
||||
for(;;){
|
||||
n = read(fdin, p, 1);
|
||||
n = jehanne_read(fdin, p, 1);
|
||||
if(n < 0){
|
||||
close(ctl);
|
||||
sys_close(ctl);
|
||||
error("can't read cons\n");
|
||||
}
|
||||
if(*p == 0x7f)
|
||||
@ -103,10 +103,10 @@ readln(char *prompt, char *line, int len, int raw)
|
||||
if(n == 0 || *p == '\n' || *p == '\r'){
|
||||
*p = '\0';
|
||||
if(raw){
|
||||
write(ctl, "rawoff", 6);
|
||||
write(fdout, "\n", 1);
|
||||
jehanne_write(ctl, "rawoff", 6);
|
||||
jehanne_write(fdout, "\n", 1);
|
||||
}
|
||||
close(ctl);
|
||||
sys_close(ctl);
|
||||
return;
|
||||
}
|
||||
if(*p == '\b'){
|
||||
|
@ -27,7 +27,7 @@ readn(int fd, char *buf, int len)
|
||||
int m, n;
|
||||
|
||||
for(n = 0; n < len; n += m){
|
||||
m = read(fd, buf+n, len-n);
|
||||
m = jehanne_read(fd, buf+n, len-n);
|
||||
if(m <= 0)
|
||||
return -1;
|
||||
}
|
||||
|
@ -24,13 +24,13 @@ readfile(char *file, char *buf, int n)
|
||||
{
|
||||
int fd;
|
||||
|
||||
fd = open(file, OREAD);
|
||||
fd = sys_open(file, OREAD);
|
||||
if(fd < 0){
|
||||
werrstr("%s: %r", file);
|
||||
return -1;
|
||||
}
|
||||
n = read(fd, buf, n);
|
||||
close(fd);
|
||||
n = jehanne_read(fd, buf, n);
|
||||
sys_close(fd);
|
||||
return n;
|
||||
}
|
||||
|
||||
@ -39,11 +39,11 @@ writefile(char *file, char *buf, int n)
|
||||
{
|
||||
int fd;
|
||||
|
||||
fd = open(file, OWRITE);
|
||||
fd = sys_open(file, OWRITE);
|
||||
if(fd < 0)
|
||||
return -1;
|
||||
n = write(fd, buf, n);
|
||||
close(fd);
|
||||
n = jehanne_write(fd, buf, n);
|
||||
sys_close(fd);
|
||||
return n;
|
||||
}
|
||||
|
||||
|
@ -26,13 +26,13 @@ wrbio(char *file, Acctbio *a)
|
||||
char buf[1024];
|
||||
int i, fd, n;
|
||||
|
||||
fd = open(file, OWRITE);
|
||||
fd = sys_open(file, OWRITE);
|
||||
if(fd < 0){
|
||||
fd = ocreate(file, OWRITE, 0660);
|
||||
if(fd < 0)
|
||||
error("can't create %s", file);
|
||||
}
|
||||
if(seek(fd, 0, 2) < 0)
|
||||
if(sys_seek(fd, 0, 2) < 0)
|
||||
error("can't seek %s", file);
|
||||
|
||||
if(a->postid == 0)
|
||||
@ -54,6 +54,6 @@ wrbio(char *file, Acctbio *a)
|
||||
}
|
||||
n += snprint(buf+n, sizeof(buf)-n, "\n");
|
||||
|
||||
write(fd, buf, n);
|
||||
close(fd);
|
||||
jehanne_write(fd, buf, n);
|
||||
sys_close(fd);
|
||||
}
|
||||
|
@ -26,26 +26,26 @@ readln(char *prompt, char *line, int len, int raw)
|
||||
char *p;
|
||||
int fdin, fdout, ctl, n, nr;
|
||||
|
||||
fdin = open("/dev/cons", OREAD);
|
||||
fdout = open("/dev/cons", OWRITE);
|
||||
fdin = sys_open("/dev/cons", OREAD);
|
||||
fdout = sys_open("/dev/cons", OWRITE);
|
||||
fprint(fdout, "%s", prompt);
|
||||
if(raw){
|
||||
ctl = open("/dev/consctl", OWRITE);
|
||||
ctl = sys_open("/dev/consctl", OWRITE);
|
||||
if(ctl < 0){
|
||||
fprint(2, "login: couldn't set raw mode");
|
||||
exits("readln");
|
||||
}
|
||||
write(ctl, "rawon", 5);
|
||||
jehanne_write(ctl, "rawon", 5);
|
||||
} else
|
||||
ctl = -1;
|
||||
nr = 0;
|
||||
p = line;
|
||||
for(;;){
|
||||
n = read(fdin, p, 1);
|
||||
n = jehanne_read(fdin, p, 1);
|
||||
if(n < 0){
|
||||
close(ctl);
|
||||
close(fdin);
|
||||
close(fdout);
|
||||
sys_close(ctl);
|
||||
sys_close(fdin);
|
||||
sys_close(fdout);
|
||||
fprint(2, "login: can't read cons");
|
||||
exits("readln");
|
||||
}
|
||||
@ -54,12 +54,12 @@ readln(char *prompt, char *line, int len, int raw)
|
||||
if(n == 0 || *p == '\n' || *p == '\r'){
|
||||
*p = '\0';
|
||||
if(raw){
|
||||
write(ctl, "rawoff", 6);
|
||||
write(fdout, "\n", 1);
|
||||
jehanne_write(ctl, "rawoff", 6);
|
||||
jehanne_write(fdout, "\n", 1);
|
||||
}
|
||||
close(ctl);
|
||||
close(fdin);
|
||||
close(fdout);
|
||||
sys_close(ctl);
|
||||
sys_close(fdin);
|
||||
sys_close(fdout);
|
||||
return;
|
||||
}
|
||||
if(*p == '\b'){
|
||||
@ -91,7 +91,7 @@ setenv(char *var, char *val)
|
||||
print("init: can't open %s\n", buf);
|
||||
else{
|
||||
fprint(fd, val);
|
||||
close(fd);
|
||||
sys_close(fd);
|
||||
}
|
||||
}
|
||||
|
||||
@ -104,11 +104,11 @@ chuid(AuthInfo *ai)
|
||||
int rv, fd;
|
||||
|
||||
/* change uid */
|
||||
fd = open("#¤/capuse", OWRITE);
|
||||
fd = sys_open("#¤/capuse", OWRITE);
|
||||
if(fd < 0)
|
||||
sysfatal("can't change uid: %r");
|
||||
rv = write(fd, ai->cap, strlen(ai->cap));
|
||||
close(fd);
|
||||
rv = jehanne_write(fd, ai->cap, strlen(ai->cap));
|
||||
sys_close(fd);
|
||||
if(rv < 0)
|
||||
sysfatal("can't change uid: %r");
|
||||
}
|
||||
@ -122,11 +122,11 @@ mountfactotum(char *srvname)
|
||||
int fd;
|
||||
|
||||
/* mount it */
|
||||
fd = open(srvname, ORDWR);
|
||||
fd = sys_open(srvname, ORDWR);
|
||||
if(fd < 0)
|
||||
sysfatal("opening factotum: %r");
|
||||
mount(fd, -1, "/mnt", MBEFORE, "", '9');
|
||||
close(fd);
|
||||
sys_mount(fd, -1, "/mnt", MBEFORE, "", '9');
|
||||
sys_close(fd);
|
||||
}
|
||||
|
||||
/*
|
||||
@ -186,11 +186,11 @@ startfactotum(char *user, char *password, char *srvname)
|
||||
mountfactotum(srvname);
|
||||
|
||||
/* write in new key */
|
||||
fd = open("/mnt/factotum/ctl", ORDWR);
|
||||
fd = sys_open("/mnt/factotum/ctl", ORDWR);
|
||||
if(fd < 0)
|
||||
sysfatal("opening factotum: %r");
|
||||
fprint(fd, "key proto=p9sk1 dom=%s user=%q !password=%q", getauthdom(), user, password);
|
||||
close(fd);
|
||||
sys_close(fd);
|
||||
}
|
||||
|
||||
void
|
||||
@ -222,7 +222,7 @@ main(int argc, char *argv[])
|
||||
if(argc != 1)
|
||||
usage();
|
||||
|
||||
rfork(RFENVG|RFNAMEG);
|
||||
sys_rfork(RFENVG|RFNAMEG);
|
||||
|
||||
service = getenv(ENV_SERVICE);
|
||||
if(strcmp(service, "cpu") == 0)
|
||||
@ -257,7 +257,7 @@ main(int argc, char *argv[])
|
||||
cputype = getenv(ENV_CPUTYPE);
|
||||
sysname = getenv(ENV_SYSNAME);
|
||||
tz = getenv("timezone");
|
||||
rfork(RFCENVG);
|
||||
sys_rfork(RFCENVG);
|
||||
setenv(ENV_SERVICE, "con");
|
||||
setenv(ENV_USER, user);
|
||||
snprint(home, sizeof(home), "/usr/%s", user);
|
||||
|
@ -52,7 +52,7 @@ main(int argc, char *argv[])
|
||||
|
||||
for(;;){
|
||||
print("challenge: ");
|
||||
n = read(0, buf, sizeof buf - 1);
|
||||
n = jehanne_read(0, buf, sizeof buf - 1);
|
||||
if(n <= 0)
|
||||
exits(0);
|
||||
buf[n] = '\0';
|
||||
|
@ -41,7 +41,7 @@ main(int argc, char **argv)
|
||||
char *nsfile, err[ERRMAX];
|
||||
int add;
|
||||
|
||||
rfork(RFNAMEG);
|
||||
sys_rfork(RFNAMEG);
|
||||
add = 0;
|
||||
nsfile = "/lib/namespace";
|
||||
ARGBEGIN{
|
||||
@ -64,11 +64,11 @@ main(int argc, char **argv)
|
||||
addns(getuser(), nsfile);
|
||||
else
|
||||
newns(getuser(), nsfile);
|
||||
exec(argv[0], argv);
|
||||
sys_exec(argv[0], argv);
|
||||
if(!rooted(argv[0])){
|
||||
rerrstr(err, sizeof err);
|
||||
exec(smprint("/cmd/%s", argv[0]), argv);
|
||||
errstr(err, sizeof err);
|
||||
sys_exec(smprint("/cmd/%s", argv[0]), argv);
|
||||
sys_errstr(err, sizeof err);
|
||||
}
|
||||
sysfatal("exec: %s: %r", argv[0]);
|
||||
}
|
||||
|
@ -40,27 +40,27 @@ main(int argc, char *argv[])
|
||||
usage();
|
||||
}ARGEND
|
||||
|
||||
if (rfork(RFENVG|RFNAMEG) < 0)
|
||||
if (sys_rfork(RFENVG|RFNAMEG) < 0)
|
||||
sysfatal("can't make new pgrp");
|
||||
|
||||
fd = open("#c/user", OWRITE);
|
||||
fd = sys_open("#c/user", OWRITE);
|
||||
if (fd < 0)
|
||||
sysfatal("can't open #c/user");
|
||||
if (write(fd, "none", strlen("none")) < 0)
|
||||
if (jehanne_write(fd, "none", strlen("none")) < 0)
|
||||
sysfatal("can't become none");
|
||||
close(fd);
|
||||
sys_close(fd);
|
||||
|
||||
if (newns("none", namespace) < 0)
|
||||
sysfatal("can't build namespace");
|
||||
|
||||
if (argc > 0) {
|
||||
strecpy(cmd, cmd+sizeof cmd, argv[0]);
|
||||
exec(cmd, &argv[0]);
|
||||
sys_exec(cmd, &argv[0]);
|
||||
if (strncmp(cmd, "/", 1) != 0
|
||||
&& strncmp(cmd, "./", 2) != 0
|
||||
&& strncmp(cmd, "../", 3) != 0) {
|
||||
snprint(cmd, sizeof cmd, "/bin/%s", argv[0]);
|
||||
exec(cmd, &argv[0]);
|
||||
sys_exec(cmd, &argv[0]);
|
||||
}
|
||||
} else {
|
||||
strcpy(cmd, "/bin/rc");
|
||||
|
@ -71,7 +71,7 @@ main(int argc, char **argv)
|
||||
if(_asgetpakkey(fd, &tr, &key) < 0){
|
||||
Retry:
|
||||
try++;
|
||||
close(fd);
|
||||
sys_close(fd);
|
||||
fd = authdial(nil, s);
|
||||
if(fd < 0)
|
||||
error("authdial: %r");
|
||||
@ -121,13 +121,13 @@ Retry:
|
||||
}
|
||||
pr.num = AuthPass;
|
||||
n = convPR2M(&pr, buf, sizeof(buf), &t);
|
||||
if(write(fd, buf, n) != n)
|
||||
if(jehanne_write(fd, buf, n) != n)
|
||||
error("AS protocol botch: %r");
|
||||
if(_asrdresp(fd, buf, 0) == 0)
|
||||
break;
|
||||
fprint(2, "passwd: refused: %r\n");
|
||||
}
|
||||
close(fd);
|
||||
sys_close(fd);
|
||||
|
||||
exits(0);
|
||||
}
|
||||
|
@ -47,7 +47,7 @@ main(int argc, char **argv)
|
||||
else
|
||||
file = "#d/0";
|
||||
|
||||
if((fd = open(file, OREAD)) < 0)
|
||||
if((fd = sys_open(file, OREAD)) < 0)
|
||||
sysfatal("open %s: %r", file);
|
||||
buf = nil;
|
||||
tot = 0;
|
||||
@ -55,7 +55,7 @@ main(int argc, char **argv)
|
||||
buf = realloc(buf, tot+8192);
|
||||
if(buf == nil)
|
||||
sysfatal("realloc: %r");
|
||||
if((n = read(fd, buf+tot, 8192)) < 0)
|
||||
if((n = jehanne_read(fd, buf+tot, 8192)) < 0)
|
||||
sysfatal("read: %r");
|
||||
if(n == 0)
|
||||
break;
|
||||
@ -65,7 +65,7 @@ main(int argc, char **argv)
|
||||
bin = decodePEM(buf, tag, &len, nil);
|
||||
if(bin == nil)
|
||||
sysfatal("cannot extract section '%s' from pem", tag);
|
||||
if((n=write(1, bin, len)) != len)
|
||||
if((n=jehanne_write(1, bin, len)) != len)
|
||||
sysfatal("writing %d bytes got %ld: %r", len, n);
|
||||
exits(0);
|
||||
}
|
||||
|
@ -50,7 +50,7 @@ main(int argc, char **argv)
|
||||
else
|
||||
file = "#d/0";
|
||||
|
||||
if((fd = open(file, OREAD)) < 0)
|
||||
if((fd = sys_open(file, OREAD)) < 0)
|
||||
sysfatal("open %s: %r", file);
|
||||
buf = nil;
|
||||
tot = 0;
|
||||
@ -58,7 +58,7 @@ main(int argc, char **argv)
|
||||
buf = realloc(buf, tot+8192);
|
||||
if(buf == nil)
|
||||
sysfatal("realloc: %r");
|
||||
if((n = read(fd, buf+tot, 8192)) < 0)
|
||||
if((n = jehanne_read(fd, buf+tot, 8192)) < 0)
|
||||
sysfatal("read: %r");
|
||||
if(n == 0)
|
||||
break;
|
||||
|
@ -35,7 +35,7 @@ main(int argc, char **argv)
|
||||
n = auth_respond(argv[1], strlen(argv[1]), buf, sizeof buf-1, auth_getkey, "%s", argv[0]);
|
||||
if(n < 0)
|
||||
sysfatal("auth_respond: %r");
|
||||
write(1, buf, n);
|
||||
jehanne_write(1, buf, n);
|
||||
print("\n");
|
||||
}
|
||||
|
||||
|
@ -54,6 +54,6 @@ main(int argc, char **argv)
|
||||
if(cert == nil)
|
||||
sysfatal("X509rsareq: %r");
|
||||
|
||||
write(1, cert, len);
|
||||
jehanne_write(1, cert, len);
|
||||
exits(0);
|
||||
}
|
||||
|
@ -51,6 +51,6 @@ main(int argc, char **argv)
|
||||
mpsignif(key->pub.n), key->pub.ek, key->pub.n);
|
||||
if(s == nil)
|
||||
sysfatal("smprint: %r");
|
||||
write(1, s, strlen(s));
|
||||
jehanne_write(1, s, strlen(s));
|
||||
exits(nil);
|
||||
}
|
||||
|
@ -57,6 +57,6 @@ main(int argc, char **argv)
|
||||
if(cert == nil)
|
||||
sysfatal("X509rsagen: %r");
|
||||
|
||||
write(1, cert, len);
|
||||
jehanne_write(1, cert, len);
|
||||
exits(0);
|
||||
}
|
||||
|
@ -56,6 +56,6 @@ main(int argc, char **argv)
|
||||
key->kp, key->kq, key->c2);
|
||||
if(s == nil)
|
||||
sysfatal("smprint: %r");
|
||||
write(1, s, strlen(s));
|
||||
jehanne_write(1, s, strlen(s));
|
||||
exits(nil);
|
||||
}
|
||||
|
@ -65,7 +65,7 @@ main(int argc, char **argv)
|
||||
if(s == nil)
|
||||
sysfatal("smprint: %r");
|
||||
|
||||
if(write(1, s, strlen(s)) != strlen(s))
|
||||
if(jehanne_write(1, s, strlen(s)) != strlen(s))
|
||||
sysfatal("write: %r");
|
||||
|
||||
exits(nil);
|
||||
|
@ -94,7 +94,7 @@ SC_read(SConn *conn, uint8_t *buf, int n)
|
||||
uint8_t count[2], digest[SHA1dlen];
|
||||
int len, nr;
|
||||
|
||||
if(read(ss->fd, count, 2) != 2 || (count[0]&0x80) == 0){
|
||||
if(jehanne_read(ss->fd, count, 2) != 2 || (count[0]&0x80) == 0){
|
||||
snprint((char*)buf,n,"!SC_read invalid count");
|
||||
return -1;
|
||||
}
|
||||
@ -145,7 +145,7 @@ SC_write(SConn *conn, uint8_t *buf, int n)
|
||||
len += SHA1dlen;
|
||||
count[0] = 0x80 | len>>8;
|
||||
count[1] = len;
|
||||
if(write(ss->fd, count, 2) != 2){
|
||||
if(jehanne_write(ss->fd, count, 2) != 2){
|
||||
werrstr("!SC_write invalid count");
|
||||
return -1;
|
||||
}
|
||||
@ -154,13 +154,13 @@ SC_write(SConn *conn, uint8_t *buf, int n)
|
||||
rc4(&ss->out.rc4, digest, SHA1dlen);
|
||||
memcpy(enc, buf, n);
|
||||
rc4(&ss->out.rc4, enc, n);
|
||||
if(write(ss->fd, digest, SHA1dlen) != SHA1dlen ||
|
||||
if(jehanne_write(ss->fd, digest, SHA1dlen) != SHA1dlen ||
|
||||
write(ss->fd, enc, n) != n){
|
||||
werrstr("!SC_write error on send");
|
||||
return -1;
|
||||
}
|
||||
}else{
|
||||
if(write(ss->fd, buf, n) != n){
|
||||
if(jehanne_write(ss->fd, buf, n) != n){
|
||||
werrstr("!SC_write error on send");
|
||||
return -1;
|
||||
}
|
||||
|
@ -28,11 +28,11 @@ ls(char *p, Dir **dirbuf)
|
||||
|
||||
if((db = dirstat(p)) == nil ||
|
||||
!(db->qid.type & QTDIR) ||
|
||||
(fd = open(p, OREAD)) < 0 )
|
||||
(fd = sys_open(p, OREAD)) < 0 )
|
||||
return -1;
|
||||
free(db);
|
||||
n = dirreadall(fd, dirbuf);
|
||||
close(fd);
|
||||
sys_close(fd);
|
||||
return n;
|
||||
}
|
||||
|
||||
@ -48,15 +48,15 @@ sha1file(char *pfx, char *nm)
|
||||
len = strlen(pfx)+1+strlen(nm)+1;
|
||||
tmp = emalloc(len);
|
||||
snprint(tmp, len, "%s/%s", pfx, nm);
|
||||
if((fd = open(tmp, OREAD)) < 0){
|
||||
if((fd = sys_open(tmp, OREAD)) < 0){
|
||||
free(tmp);
|
||||
return nil;
|
||||
}
|
||||
free(tmp);
|
||||
s = nil;
|
||||
while((n = read(fd, buf, sizeof buf)) > 0)
|
||||
while((n = jehanne_read(fd, buf, sizeof buf)) > 0)
|
||||
s = sha1(buf, n, nil, s);
|
||||
close(fd);
|
||||
sys_close(fd);
|
||||
sha1(nil, 0, digest, s);
|
||||
return digest;
|
||||
}
|
||||
|
@ -91,7 +91,7 @@ getfile(SConn *conn, char *gf, uint8_t **buf, uint32_t *buflen, uint8_t *key, in
|
||||
return -1;
|
||||
}
|
||||
if(buf == nil)
|
||||
write(1, s, n);
|
||||
jehanne_write(1, s, n);
|
||||
else
|
||||
memmove(*buf + i, s, n);
|
||||
}
|
||||
@ -132,7 +132,7 @@ getfile(SConn *conn, char *gf, uint8_t **buf, uint32_t *buflen, uint8_t *key, in
|
||||
n = ibw - ibr - CHK;
|
||||
if(n > 0){
|
||||
if(buf == nil){
|
||||
nw = write(fd, ibr, n);
|
||||
nw = jehanne_write(fd, ibr, n);
|
||||
if(nw != n){
|
||||
fprint(2, "secstore: write error on %s", gf);
|
||||
return -1;
|
||||
@ -149,7 +149,7 @@ getfile(SConn *conn, char *gf, uint8_t **buf, uint32_t *buflen, uint8_t *key, in
|
||||
ibr = ib;
|
||||
}
|
||||
if(buf == nil)
|
||||
close(fd);
|
||||
sys_close(fd);
|
||||
n = ibw-ibr;
|
||||
if(n != CHK || memcmp(ib, "XXXXXXXXXXXXXXXX", CHK) != 0){
|
||||
fprint(2, "secstore: decrypted file failed to authenticate!\n");
|
||||
@ -183,12 +183,12 @@ putfile(SConn *conn, char *pf, uint8_t *buf, uint32_t len, uint8_t *key, int nke
|
||||
|
||||
if(buf == nil){
|
||||
/* get file size */
|
||||
if((fd = open(pf, OREAD)) < 0){
|
||||
if((fd = sys_open(pf, OREAD)) < 0){
|
||||
fprint(2, "secstore: can't open %s: %r\n", pf);
|
||||
return -1;
|
||||
}
|
||||
len = seek(fd, 0, 2);
|
||||
seek(fd, 0, 0);
|
||||
len = sys_seek(fd, 0, 2);
|
||||
sys_seek(fd, 0, 0);
|
||||
} else
|
||||
fd = -1;
|
||||
if(len > MAXFILESIZE){
|
||||
@ -207,7 +207,7 @@ putfile(SConn *conn, char *pf, uint8_t *buf, uint32_t len, uint8_t *key, int nke
|
||||
memcpy(b, IV, ivo);
|
||||
for(done = 0; !done; ){
|
||||
if(buf == nil){
|
||||
n = read(fd, b+ivo, Maxmsg-ivo);
|
||||
n = jehanne_read(fd, b+ivo, Maxmsg-ivo);
|
||||
if(n < 0){
|
||||
fprint(2, "secstore: read error on %s: %r\n",
|
||||
pf);
|
||||
@ -237,7 +237,7 @@ putfile(SConn *conn, char *pf, uint8_t *buf, uint32_t len, uint8_t *key, int nke
|
||||
}
|
||||
|
||||
if(buf == nil)
|
||||
close(fd);
|
||||
sys_close(fd);
|
||||
fprint(2, "secstore: saved %ld bytes\n", len);
|
||||
|
||||
return 0;
|
||||
@ -278,11 +278,11 @@ cmd(AuthConn *c, char **gf, int *Gflag, char **pf, char **rf)
|
||||
while(len>0){
|
||||
memnext = (uint8_t*)strchr((char*)memcur, '\n');
|
||||
if(memnext){
|
||||
write(1, memcur, memnext-memcur+1);
|
||||
jehanne_write(1, memcur, memnext-memcur+1);
|
||||
len -= memnext-memcur+1;
|
||||
memcur = memnext+1;
|
||||
}else{
|
||||
write(1, memcur, len);
|
||||
jehanne_write(1, memcur, len);
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
@ -86,7 +86,7 @@ getfile(SConn *conn, char *id, char *gf)
|
||||
/* send file size */
|
||||
s = emalloc(Maxmsg);
|
||||
snprint(s, Maxmsg, "%s/store/%s/%s", SECSTORE_DIR, id, gf);
|
||||
gd = open(s, OREAD);
|
||||
gd = sys_open(s, OREAD);
|
||||
if(gd < 0){
|
||||
syslog(0, LOG, "can't open %s: %r", s);
|
||||
free(s);
|
||||
@ -120,7 +120,7 @@ getfile(SConn *conn, char *id, char *gf)
|
||||
|
||||
/* send file in Maxmsg chunks */
|
||||
while(len > 0){
|
||||
n = read(gd, s, Maxmsg);
|
||||
n = jehanne_read(gd, s, Maxmsg);
|
||||
if(n <= 0){
|
||||
syslog(0, LOG, "read error on %s: %r", gf);
|
||||
free(s);
|
||||
@ -129,7 +129,7 @@ getfile(SConn *conn, char *id, char *gf)
|
||||
conn->write(conn, (uint8_t*)s, n);
|
||||
len -= n;
|
||||
}
|
||||
close(gd);
|
||||
sys_close(gd);
|
||||
free(s);
|
||||
return 0;
|
||||
}
|
||||
@ -168,14 +168,14 @@ putfile(SConn *conn, char *id, char *pf)
|
||||
syslog(0, LOG, "empty file chunk");
|
||||
return -1;
|
||||
}
|
||||
nw = write(pd, s, n);
|
||||
nw = jehanne_write(pd, s, n);
|
||||
if(nw != n){
|
||||
syslog(0, LOG, "write error on %s: %r", pf);
|
||||
return -1;
|
||||
}
|
||||
len -= n;
|
||||
}
|
||||
close(pd);
|
||||
sys_close(pd);
|
||||
return 0;
|
||||
|
||||
}
|
||||
@ -200,7 +200,7 @@ removefile(SConn *conn, char *id, char *f)
|
||||
}
|
||||
|
||||
free(d);
|
||||
if(remove(buf) < 0){
|
||||
if(sys_remove(buf) < 0){
|
||||
snprint(buf, sizeof buf, "remove failed: %r");
|
||||
writerr(conn, buf);
|
||||
return -1;
|
||||
@ -216,15 +216,15 @@ remoteIP(char *ldir)
|
||||
char rp[100], ap[500];
|
||||
|
||||
snprint(rp, sizeof rp, "%s/remote", ldir);
|
||||
fd = open(rp, OREAD);
|
||||
fd = sys_open(rp, OREAD);
|
||||
if(fd < 0)
|
||||
return strdup("?!?");
|
||||
n = read(fd, ap, sizeof ap);
|
||||
n = jehanne_read(fd, ap, sizeof ap);
|
||||
if(n <= 0 || n == sizeof ap){
|
||||
fprint(2, "secstored: error %d reading %s: %r\n", n, rp);
|
||||
return strdup("?!?");
|
||||
}
|
||||
close(fd);
|
||||
sys_close(fd);
|
||||
ap[n--] = 0;
|
||||
if(ap[n] == '\n')
|
||||
ap[n] = 0;
|
||||
@ -361,7 +361,7 @@ main(int argc, char **argv)
|
||||
}ARGEND;
|
||||
|
||||
if(!verbose)
|
||||
switch(rfork(RFNOTEG|RFPROC|RFFDG)) {
|
||||
switch(sys_rfork(RFNOTEG|RFPROC|RFFDG)) {
|
||||
case -1:
|
||||
sysfatal("fork: %r");
|
||||
case 0:
|
||||
@ -381,7 +381,7 @@ main(int argc, char **argv)
|
||||
switch(fork()){
|
||||
case -1:
|
||||
fprint(2, "secstore forking: %r\n");
|
||||
close(lcfd);
|
||||
sys_close(lcfd);
|
||||
break;
|
||||
case 0:
|
||||
/*
|
||||
@ -397,14 +397,14 @@ main(int argc, char **argv)
|
||||
db = ndbcat(db, db2);
|
||||
if((dfd = accept(lcfd, ldir)) < 0)
|
||||
exits("can't accept");
|
||||
alarm(30*60*1000); /* 30 min */
|
||||
sys_alarm(30*60*1000); /* 30 min */
|
||||
remote = remoteIP(ldir);
|
||||
syslog(0, LOG, "secstore from %s", remote);
|
||||
free(remote);
|
||||
dologin(dfd, S, forceSTA);
|
||||
exits(nil);
|
||||
default:
|
||||
close(lcfd);
|
||||
sys_close(lcfd);
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
@ -36,7 +36,7 @@ ensure_exists(char *f, uint32_t perm)
|
||||
fd = ocreate(f, OREAD, perm);
|
||||
if(fd < 0)
|
||||
sysfatal("unable to create %s: %r", f);
|
||||
close(fd);
|
||||
sys_close(fd);
|
||||
}
|
||||
|
||||
|
||||
@ -214,7 +214,7 @@ main(int argc, char **argv)
|
||||
sysfatal("can't write password file: %r");
|
||||
else{
|
||||
print("change written\n");
|
||||
if(isnew && create(home, OREAD, DMDIR | 0775L) < 0)
|
||||
if(isnew && sys_create(home, OREAD, DMDIR | 0775L) < 0)
|
||||
sysfatal("unable to create %s: %r", home);
|
||||
}
|
||||
|
||||
@ -228,7 +228,7 @@ userinput(char *buf, int blen)
|
||||
int n;
|
||||
|
||||
for(;;){
|
||||
n = read(0, buf, blen);
|
||||
n = jehanne_read(0, buf, blen);
|
||||
if(n<=0)
|
||||
exits("read error");
|
||||
if(buf[n-1]=='\n'){
|
||||
|
@ -55,10 +55,10 @@ getpassm(char *prompt)
|
||||
static int cons, consctl; /* closing & reopening fails in ssh environment */
|
||||
|
||||
if(cons == 0){ /* first time? */
|
||||
cons = open("/dev/cons", ORDWR);
|
||||
cons = sys_open("/dev/cons", ORDWR);
|
||||
if(cons < 0)
|
||||
sysfatal("couldn't open cons");
|
||||
consctl = open("/dev/consctl", OWRITE);
|
||||
consctl = sys_open("/dev/consctl", OWRITE);
|
||||
if(consctl < 0)
|
||||
sysfatal("couldn't set raw mode via consctl");
|
||||
}
|
||||
@ -67,7 +67,7 @@ getpassm(char *prompt)
|
||||
nr = 0;
|
||||
p = line;
|
||||
for(;;){
|
||||
n = read(cons, p, 1);
|
||||
n = jehanne_read(cons, p, 1);
|
||||
if(n < 0){
|
||||
fprint(consctl, "rawoff");
|
||||
fprint(cons, "\n");
|
||||
|
@ -177,16 +177,16 @@ rpc(char *dest, Secret *shared, Packet *req)
|
||||
* increased timeout from 4sec to 15sec because
|
||||
* corporate server really takes that int32_t.
|
||||
*/
|
||||
alarm(15000);
|
||||
m = write(fd, buf, n);
|
||||
sys_alarm(15000);
|
||||
m = jehanne_write(fd, buf, n);
|
||||
if(m != n){
|
||||
syslog(0, AUTHLOG, "%s: rpc write err %d %d: %r",
|
||||
dest, m, n);
|
||||
m = -1;
|
||||
break;
|
||||
}
|
||||
m = read(fd, buf2, sizeof buf2);
|
||||
alarm(0);
|
||||
m = jehanne_read(fd, buf2, sizeof buf2);
|
||||
sys_alarm(0);
|
||||
if(m < 0){
|
||||
syslog(0, AUTHLOG, "%s rpc read err %d: %r", dest, m);
|
||||
break; /* failure */
|
||||
@ -199,7 +199,7 @@ rpc(char *dest, Secret *shared, Packet *req)
|
||||
break;
|
||||
syslog(0, AUTHLOG, "%s bad rpc chksum", dest);
|
||||
}
|
||||
close(fd);
|
||||
sys_close(fd);
|
||||
if(m <= 0)
|
||||
return nil;
|
||||
|
||||
|
@ -81,13 +81,13 @@ dodir(Fs *f)
|
||||
complain("can't chdir to %s: %r", f->keys);
|
||||
return;
|
||||
}
|
||||
fd = open(".", OREAD);
|
||||
fd = sys_open(".", OREAD);
|
||||
if(fd < 0){
|
||||
complain("can't open %s: %r\n", f->keys);
|
||||
return;
|
||||
}
|
||||
nfiles = dirreadall(fd, &dirbuf);
|
||||
close(fd);
|
||||
sys_close(fd);
|
||||
for(i = 0; i < nfiles; i++)
|
||||
douser(f, dirbuf[i].name);
|
||||
}
|
||||
@ -226,7 +226,7 @@ mail(Fs *f, char *rcvr, char *user, int32_t et)
|
||||
default:
|
||||
if(debug)
|
||||
fprint(2, "started %d\n", pid);
|
||||
close(pfd[0]);
|
||||
sys_close(pfd[0]);
|
||||
ct = ctime(et);
|
||||
p = strchr(ct, '\n');
|
||||
*p = '.';
|
||||
@ -239,13 +239,13 @@ mail(Fs *f, char *rcvr, char *user, int32_t et)
|
||||
else
|
||||
p = f->keys;
|
||||
sprint(buf, "/adm/warn.%s", p);
|
||||
fd = open(buf, OREAD);
|
||||
fd = sys_open(buf, OREAD);
|
||||
if(fd >= 0){
|
||||
while((i = read(fd, buf, sizeof(buf))) > 0)
|
||||
write(pfd[1], buf, i);
|
||||
close(fd);
|
||||
while((i = jehanne_read(fd, buf, sizeof(buf))) > 0)
|
||||
jehanne_write(pfd[1], buf, i);
|
||||
sys_close(fd);
|
||||
}
|
||||
close(pfd[1]);
|
||||
sys_close(pfd[1]);
|
||||
|
||||
/* wait for warning to be mailed */
|
||||
for(;;){
|
||||
@ -272,8 +272,8 @@ mail(Fs *f, char *rcvr, char *user, int32_t et)
|
||||
newns("none", 0);
|
||||
|
||||
dup(pfd[0], 0);
|
||||
close(pfd[0]);
|
||||
close(pfd[1]);
|
||||
sys_close(pfd[0]);
|
||||
sys_close(pfd[1]);
|
||||
putenv("upasname", "netkeys");
|
||||
if(debug){
|
||||
print("\nto %s\n", rcvr);
|
||||
@ -299,7 +299,7 @@ complain(char *fmt, ...)
|
||||
s = vseprint(s, buf + sizeof(buf) / sizeof(*buf), fmt, arg);
|
||||
va_end(arg);
|
||||
*s++ = '\n';
|
||||
write(2, buf, s - buf);
|
||||
jehanne_write(2, buf, s - buf);
|
||||
}
|
||||
|
||||
int32_t
|
||||
@ -308,13 +308,13 @@ readnumfile(char *file)
|
||||
int fd, n;
|
||||
char buf[64];
|
||||
|
||||
fd = open(file, OREAD);
|
||||
fd = sys_open(file, OREAD);
|
||||
if(fd < 0){
|
||||
complain("can't open %s: %r", file);
|
||||
return 0;
|
||||
}
|
||||
n = read(fd, buf, sizeof(buf)-1);
|
||||
close(fd);
|
||||
n = jehanne_read(fd, buf, sizeof(buf)-1);
|
||||
sys_close(fd);
|
||||
if(n < 0){
|
||||
complain("can't read %s: %r", file);
|
||||
return 0;
|
||||
@ -328,11 +328,11 @@ writenumfile(char *file, int32_t num)
|
||||
{
|
||||
int fd;
|
||||
|
||||
fd = open(file, OWRITE);
|
||||
fd = sys_open(file, OWRITE);
|
||||
if(fd < 0){
|
||||
complain("can't open %s: %r", file);
|
||||
return;
|
||||
}
|
||||
fprint(fd, "%ld", num);
|
||||
close(fd);
|
||||
sys_close(fd);
|
||||
}
|
||||
|
@ -58,17 +58,17 @@ popen(char *cmd, int mode)
|
||||
return nil;
|
||||
case 0:
|
||||
/* myside and hisside reverse roles in child */
|
||||
close(myside);
|
||||
sys_close(myside);
|
||||
dup(hisside, tst(0, 1));
|
||||
for (i=NSYSFILE; i<FOPEN_MAX; i++)
|
||||
close(i);
|
||||
sys_close(i);
|
||||
execl("/bin/rc", "rc", "-c", cmd, nil);
|
||||
exits("exec failed");
|
||||
default:
|
||||
the_fork[ind].pid = pid;
|
||||
the_fork[ind].fd = myside;
|
||||
the_fork[ind].done = 0;
|
||||
close(hisside);
|
||||
sys_close(hisside);
|
||||
return(Bfdopen(myside, mode));
|
||||
}
|
||||
}
|
||||
|
@ -121,7 +121,7 @@ void envinit(void) /* set up ENVIRON variable */
|
||||
Dir *buf;
|
||||
|
||||
ENVtab = makesymtab(NSYMTAB);
|
||||
if ((fd = open("/env", OREAD)) < 0)
|
||||
if ((fd = sys_open("/env", OREAD)) < 0)
|
||||
return;
|
||||
|
||||
buf = nil;
|
||||
@ -142,7 +142,7 @@ void envinit(void) /* set up ENVIRON variable */
|
||||
buf = nil;
|
||||
}
|
||||
|
||||
close(fd);
|
||||
sys_close(fd);
|
||||
}
|
||||
|
||||
Array *makesymtab(int n) /* make a new symbol table */
|
||||
|
@ -38,7 +38,7 @@ main(int argc, char *argv[])
|
||||
if(argc != 2 || (flag&MAFTER)&&(flag&MBEFORE))
|
||||
usage();
|
||||
|
||||
if(bind(argv[0], argv[1], flag) < 0){
|
||||
if(sys_bind(argv[0], argv[1], flag) < 0){
|
||||
if(qflag)
|
||||
exits(0);
|
||||
/* try to give a less confusing error than the default */
|
||||
|
@ -16,8 +16,8 @@ cat(int f, char *s)
|
||||
char buf[8192];
|
||||
int32_t n;
|
||||
|
||||
while((n=read(f, buf, (int32_t)sizeof buf))>0)
|
||||
if(write(1, buf, n)!=n)
|
||||
while((n=jehanne_read(f, buf, (int32_t)sizeof buf))>0)
|
||||
if(jehanne_write(1, buf, n)!=n)
|
||||
sysfatal("write error copying %s: %r", s);
|
||||
if(n < 0)
|
||||
sysfatal("error reading %s: %r", s);
|
||||
@ -32,12 +32,12 @@ main(int argc, char *argv[])
|
||||
if(argc == 1)
|
||||
cat(0, "<stdin>");
|
||||
else for(i=1; i<argc; i++){
|
||||
f = open(argv[i], OREAD);
|
||||
f = sys_open(argv[i], OREAD);
|
||||
if(f < 0)
|
||||
sysfatal("can't open %s: %r", argv[i]);
|
||||
else{
|
||||
cat(f, argv[i]);
|
||||
close(f);
|
||||
sys_close(f);
|
||||
}
|
||||
}
|
||||
exits(0);
|
||||
|
@ -118,7 +118,7 @@ copy(char *from, char *to, int todir)
|
||||
return;
|
||||
}
|
||||
mode &= 0777;
|
||||
fdf=open(from, OREAD);
|
||||
fdf=sys_open(from, OREAD);
|
||||
if(fdf<0){
|
||||
fprint(2, "cp: can't open %s: %r\n", from);
|
||||
free(dirb);
|
||||
@ -128,7 +128,7 @@ copy(char *from, char *to, int todir)
|
||||
fdt=ocreate(to, OWRITE, mode);
|
||||
if(fdt<0){
|
||||
fprint(2, "cp: can't create %s: %r\n", to);
|
||||
close(fdf);
|
||||
sys_close(fdf);
|
||||
free(dirb);
|
||||
failed = 1;
|
||||
return;
|
||||
@ -147,8 +147,8 @@ copy(char *from, char *to, int todir)
|
||||
fprint(2, "cp: warning: can't wstat %s: %r\n", to);
|
||||
}
|
||||
free(dirb);
|
||||
close(fdf);
|
||||
close(fdt);
|
||||
sys_close(fdf);
|
||||
sys_close(fdt);
|
||||
}
|
||||
|
||||
int
|
||||
@ -162,13 +162,13 @@ copy1(int fdf, int fdt, char *from, char *to)
|
||||
buf = malloc(DEFB);
|
||||
/* clear any residual error */
|
||||
err[0] = '\0';
|
||||
errstr(err, ERRMAX);
|
||||
sys_errstr(err, ERRMAX);
|
||||
rv = 0;
|
||||
for(rcount=0;; rcount++) {
|
||||
n = read(fdf, buf, DEFB);
|
||||
n = jehanne_read(fdf, buf, DEFB);
|
||||
if(n <= 0)
|
||||
break;
|
||||
n1 = write(fdt, buf, n);
|
||||
n1 = jehanne_write(fdt, buf, n);
|
||||
if(n1 != n) {
|
||||
fprint(2, "cp: error writing %s: %r\n", to);
|
||||
failed = 1;
|
||||
|
@ -107,11 +107,11 @@ procgetname(void)
|
||||
char buf[256];
|
||||
|
||||
snprint(buf, sizeof buf, "#p/%d/args", getpid());
|
||||
if((fd = open(buf, OREAD)) < 0)
|
||||
if((fd = sys_open(buf, OREAD)) < 0)
|
||||
return strdup("");
|
||||
*buf = '\0';
|
||||
n = read(fd, buf, sizeof buf-1);
|
||||
close(fd);
|
||||
n = jehanne_read(fd, buf, sizeof buf-1);
|
||||
sys_close(fd);
|
||||
if (n >= 0)
|
||||
buf[n] = '\0';
|
||||
if ((lp = strchr(buf, '[')) == nil || (rp = strrchr(buf, ']')) == nil) {
|
||||
@ -143,9 +143,9 @@ procsetname(char *fmt, ...)
|
||||
if (cmdname == nil)
|
||||
return;
|
||||
snprint(buf, sizeof buf, "#p/%d/args", getpid());
|
||||
if((fd = open(buf, OWRITE)) >= 0){
|
||||
write(fd, cmdname, strlen(cmdname)+1);
|
||||
close(fd);
|
||||
if((fd = sys_open(buf, OWRITE)) >= 0){
|
||||
jehanne_write(fd, cmdname, strlen(cmdname)+1);
|
||||
sys_close(fd);
|
||||
}
|
||||
free(cmdname);
|
||||
}
|
||||
@ -160,17 +160,17 @@ main(int argc, char **argv)
|
||||
quotefmtinstall();
|
||||
origargs = procgetname();
|
||||
/* see if we should use a larger message size */
|
||||
fd = open("/dev/draw", OREAD);
|
||||
fd = sys_open("/dev/draw", OREAD);
|
||||
if(fd > 0){
|
||||
ms = iounit(fd);
|
||||
if(msgsize < ms+IOHDRSZ)
|
||||
msgsize = ms+IOHDRSZ;
|
||||
close(fd);
|
||||
sys_close(fd);
|
||||
}
|
||||
|
||||
user = getuser();
|
||||
if(user == nil)
|
||||
fatal(1, "can't read user name");
|
||||
fatal(1, "can't jehanne_read user name");
|
||||
ARGBEGIN{
|
||||
case 'a':
|
||||
p = EARGF(usage());
|
||||
@ -259,9 +259,9 @@ main(int argc, char **argv)
|
||||
}
|
||||
|
||||
/* Begin serving the gnot namespace */
|
||||
close(0);
|
||||
sys_close(0);
|
||||
dup(data, 0);
|
||||
close(data);
|
||||
sys_close(data);
|
||||
|
||||
sprint(buf, "%d", msgsize);
|
||||
ac = 0;
|
||||
@ -275,7 +275,7 @@ main(int argc, char **argv)
|
||||
av[ac++] = patternfile;
|
||||
}
|
||||
av[ac] = nil;
|
||||
exec(exportfs, av);
|
||||
sys_exec(exportfs, av);
|
||||
fatal(1, "starting exportfs");
|
||||
}
|
||||
|
||||
@ -308,7 +308,7 @@ remoteside(int old)
|
||||
char user[MaxStr], home[MaxStr], buf[MaxStr], xdir[MaxStr], cmd[MaxStr];
|
||||
int i, n, fd, badchdir, gotcmd;
|
||||
|
||||
rfork(RFENVG);
|
||||
sys_rfork(RFENVG);
|
||||
putenv(ENV_SERVICE, "cpu");
|
||||
fd = 0;
|
||||
|
||||
@ -356,28 +356,28 @@ remoteside(int old)
|
||||
writestr(fd, "FS", "FS", 0);
|
||||
writestr(fd, "/", "exportfs dir", 0);
|
||||
|
||||
n = read(fd, buf, sizeof(buf));
|
||||
n = jehanne_read(fd, buf, sizeof(buf));
|
||||
if(n != 2 || buf[0] != 'O' || buf[1] != 'K')
|
||||
exits("remote tree");
|
||||
|
||||
/* make sure buffers are big by doing fversion explicitly; pick a huge number; other side will trim */
|
||||
strcpy(buf, VERSION9P);
|
||||
if(fversion(fd, 64*1024, buf, sizeof buf) < 0)
|
||||
if(sys_fversion(fd, 64*1024, buf, sizeof buf) < 0)
|
||||
exits("fversion failed");
|
||||
if(mount(fd, -1, "/mnt/term", MCREATE|MREPL, "", '9') < 0)
|
||||
if(sys_mount(fd, -1, "/mnt/term", MCREATE|MREPL, "", '9') < 0)
|
||||
exits("mount failed");
|
||||
|
||||
close(fd);
|
||||
sys_close(fd);
|
||||
|
||||
/* the remote noteproc uses the mount so it must follow it */
|
||||
rmtnoteproc();
|
||||
|
||||
for(i = 0; i < 3; i++)
|
||||
close(i);
|
||||
sys_close(i);
|
||||
|
||||
if(open("/mnt/term/dev/cons", OREAD) != 0)
|
||||
if(sys_open("/mnt/term/dev/cons", OREAD) != 0)
|
||||
exits("open stdin");
|
||||
if(open("/mnt/term/dev/cons", OWRITE) != 1)
|
||||
if(sys_open("/mnt/term/dev/cons", OWRITE) != 1)
|
||||
exits("open stdout");
|
||||
dup(1, 2);
|
||||
|
||||
@ -435,7 +435,7 @@ writestr(int fd, char *str, char *thing, int ignore)
|
||||
int l, n;
|
||||
|
||||
l = strlen(str);
|
||||
n = write(fd, str, l+1);
|
||||
n = jehanne_write(fd, str, l+1);
|
||||
if(!ignore && n < 0)
|
||||
fatal(1, "writing network: %s", thing);
|
||||
}
|
||||
@ -446,7 +446,7 @@ readstr(int fd, char *str, int len)
|
||||
int n;
|
||||
|
||||
while(len) {
|
||||
n = read(fd, str, 1);
|
||||
n = jehanne_read(fd, str, 1);
|
||||
if(n < 0)
|
||||
return -1;
|
||||
if(*str == '\0')
|
||||
@ -466,7 +466,7 @@ readln(char *buf, int n)
|
||||
n--; /* room for \0 */
|
||||
p = buf;
|
||||
for(i=0; i<n; i++){
|
||||
if(read(0, p, 1) != 1)
|
||||
if(jehanne_read(0, p, 1) != 1)
|
||||
break;
|
||||
if(*p == '\n' || *p == '\r')
|
||||
break;
|
||||
@ -574,7 +574,7 @@ p9auth(int fd)
|
||||
for(i = 0; i < 4; i++)
|
||||
key[i] = rand();
|
||||
procsetname("writing p9 key");
|
||||
if(write(fd, key, 4) != 4)
|
||||
if(jehanne_write(fd, key, 4) != 4)
|
||||
return -1;
|
||||
procsetname("reading p9 key");
|
||||
if(readn(fd, key+12, 4) != 4)
|
||||
@ -647,7 +647,7 @@ srvp9auth(int fd, char *user)
|
||||
key[i+12] = rand();
|
||||
if(readn(fd, key, 4) != 4)
|
||||
return -1;
|
||||
if(write(fd, key+12, 4) != 4)
|
||||
if(jehanne_write(fd, key+12, 4) != 4)
|
||||
return -1;
|
||||
|
||||
/* scramble into two secrets */
|
||||
@ -700,7 +700,7 @@ rmtnoteproc(void)
|
||||
char buf[256];
|
||||
|
||||
/* new proc returns to start shell */
|
||||
pid = rfork(RFPROC|RFFDG|RFNOTEG|RFNAMEG|RFMEM);
|
||||
pid = sys_rfork(RFPROC|RFFDG|RFNOTEG|RFNAMEG|RFMEM);
|
||||
switch(pid){
|
||||
case -1:
|
||||
syslog(0, "cpu", "cpu -R: can't start noteproc: %r");
|
||||
@ -710,22 +710,22 @@ rmtnoteproc(void)
|
||||
}
|
||||
|
||||
/* new proc reads notes from other side and posts them to shell */
|
||||
switch(notepid = rfork(RFPROC|RFFDG|RFMEM)){
|
||||
switch(notepid = sys_rfork(RFPROC|RFFDG|RFMEM)){
|
||||
case -1:
|
||||
syslog(0, "cpu", "cpu -R: can't start wait proc: %r");
|
||||
_exits(0);
|
||||
sys__exits(0);
|
||||
case 0:
|
||||
fd = open(rmtnotefile, OREAD);
|
||||
fd = sys_open(rmtnotefile, OREAD);
|
||||
if(fd < 0){
|
||||
syslog(0, "cpu", "cpu -R: can't open %s", rmtnotefile);
|
||||
_exits(0);
|
||||
sys__exits(0);
|
||||
}
|
||||
|
||||
for(;;){
|
||||
n = read(fd, buf, sizeof(buf)-1);
|
||||
n = jehanne_read(fd, buf, sizeof(buf)-1);
|
||||
if(n <= 0){
|
||||
postnote(PNGROUP, pid, "hangup");
|
||||
_exits(0);
|
||||
sys__exits(0);
|
||||
}
|
||||
buf[n] = 0;
|
||||
postnote(PNGROUP, pid, buf);
|
||||
@ -739,7 +739,7 @@ rmtnoteproc(void)
|
||||
break;
|
||||
}
|
||||
postnote(PNPROC, notepid, "kill");
|
||||
_exits(0);
|
||||
sys__exits(0);
|
||||
}
|
||||
|
||||
enum
|
||||
@ -799,15 +799,15 @@ fsreply(int fd, Fcall *f)
|
||||
fprint(2, "notefs: <-%F\n", f);
|
||||
n = convS2M(f, buf, sizeof buf);
|
||||
if(n > 0){
|
||||
if(write(fd, buf, n) != n){
|
||||
close(fd);
|
||||
if(jehanne_write(fd, buf, n) != n){
|
||||
sys_close(fd);
|
||||
return -1;
|
||||
}
|
||||
}
|
||||
return 0;
|
||||
}
|
||||
|
||||
/* match a note read request with a note, reply to the request */
|
||||
/* match a note jehanne_read request with a note, reply to the request */
|
||||
int
|
||||
kick(int fd)
|
||||
{
|
||||
@ -950,7 +950,7 @@ notefs(int fd)
|
||||
Fid *fid, *nfid;
|
||||
int doreply;
|
||||
|
||||
rfork(RFNOTEG);
|
||||
sys_rfork(RFNOTEG);
|
||||
fmtinstall('F', fcallfmt);
|
||||
|
||||
for(n = 0; n < Nfid; n++){
|
||||
@ -1086,7 +1086,7 @@ err:
|
||||
postnote(PNGROUP, exportpid, "kill");
|
||||
if(dbg)
|
||||
fprint(2, "postnote PNGROUP %d: %r\n", exportpid);
|
||||
close(fd);
|
||||
sys_close(fd);
|
||||
}
|
||||
|
||||
char notebuf[ERRMAX];
|
||||
@ -1101,11 +1101,11 @@ catcher(void *v, char *text)
|
||||
n = sizeof(notebuf)-1;
|
||||
memmove(notebuf, text, n);
|
||||
notebuf[n] = '\0';
|
||||
noted(NCONT);
|
||||
sys_noted(NCONT);
|
||||
}
|
||||
|
||||
/*
|
||||
* mount in /dev a note file for the remote side to read.
|
||||
* mount in /dev a note file for the remote side to jehanne_read.
|
||||
*/
|
||||
void
|
||||
lclnoteproc(int netfd)
|
||||
@ -1121,7 +1121,7 @@ lclnoteproc(int netfd)
|
||||
}
|
||||
|
||||
/* new proc mounts and returns to start exportfs */
|
||||
switch(pid = rfork(RFPROC|RFNAMEG|RFFDG|RFMEM)){
|
||||
switch(pid = sys_rfork(RFPROC|RFNAMEG|RFFDG|RFMEM)){
|
||||
default:
|
||||
exportpid = pid;
|
||||
break;
|
||||
@ -1129,28 +1129,28 @@ lclnoteproc(int netfd)
|
||||
fprint(2, "cpu: can't start note proc: rfork: %r\n");
|
||||
return;
|
||||
case 0:
|
||||
close(pfd[0]);
|
||||
if(mount(pfd[1], -1, "/dev", MBEFORE, "", '9') < 0)
|
||||
sys_close(pfd[0]);
|
||||
if(sys_mount(pfd[1], -1, "/dev", MBEFORE, "", '9') < 0)
|
||||
fprint(2, "cpu: can't mount note proc: %r\n");
|
||||
close(pfd[1]);
|
||||
sys_close(pfd[1]);
|
||||
return;
|
||||
}
|
||||
|
||||
close(netfd);
|
||||
close(pfd[1]);
|
||||
sys_close(netfd);
|
||||
sys_close(pfd[1]);
|
||||
|
||||
/* new proc listens for note file system rpc's */
|
||||
switch(rfork(RFPROC|RFNAMEG|RFMEM)){
|
||||
switch(sys_rfork(RFPROC|RFNAMEG|RFMEM)){
|
||||
case -1:
|
||||
fprint(2, "cpu: can't start note proc: rfork1: %r\n");
|
||||
_exits(0);
|
||||
sys__exits(0);
|
||||
case 0:
|
||||
notefs(pfd[0]);
|
||||
_exits(0);
|
||||
sys__exits(0);
|
||||
}
|
||||
|
||||
/* original proc waits for notes */
|
||||
notify(catcher);
|
||||
sys_notify(catcher);
|
||||
w = nil;
|
||||
for(;;) {
|
||||
*notebuf = 0;
|
||||
|
@ -207,7 +207,7 @@ main(int argc, char *argv[])
|
||||
if(conv == null && cflag&(LCASE|UCASE))
|
||||
conv = cnull;
|
||||
if(ifile)
|
||||
ibf = open(ifile, OREAD);
|
||||
ibf = sys_open(ifile, OREAD);
|
||||
else
|
||||
ibf = dup(0, -1);
|
||||
if(ibf < 0) {
|
||||
@ -218,7 +218,7 @@ main(int argc, char *argv[])
|
||||
if(dotrunc)
|
||||
obf = ocreate(ofile, OWRITE, 0664);
|
||||
else
|
||||
obf = open(ofile, OWRITE);
|
||||
obf = sys_open(ofile, OWRITE);
|
||||
if(obf < 0) {
|
||||
fprint(2, "dd: create %s: %r\n", ofile);
|
||||
exits("create");
|
||||
@ -257,14 +257,14 @@ main(int argc, char *argv[])
|
||||
if(signal(SIGINT, SIG_IGN) != SIG_IGN)
|
||||
signal(SIGINT, term);
|
||||
*/
|
||||
seek(obf, obs*oseekn, 1);
|
||||
seek(ibf, ibs*iseekn, 1);
|
||||
sys_seek(obf, obs*oseekn, 1);
|
||||
sys_seek(ibf, ibs*iseekn, 1);
|
||||
if(iseekb)
|
||||
seek(ibf, iseekb, 0);
|
||||
sys_seek(ibf, iseekb, 0);
|
||||
if(oseekb)
|
||||
seek(obf, oseekb, 0);
|
||||
sys_seek(obf, oseekb, 0);
|
||||
while(skip) {
|
||||
read(ibf, ibuf, ibs);
|
||||
jehanne_read(ibf, ibuf, ibs);
|
||||
skip--;
|
||||
}
|
||||
|
||||
@ -276,7 +276,7 @@ loop:
|
||||
if(cflag&(NERR|SYNC))
|
||||
for(ip=ibuf+ibs; ip>ibuf;)
|
||||
*--ip = 0;
|
||||
ibc = read(ibf, ibuf, ibs);
|
||||
ibc = jehanne_read(ibf, ibuf, ibs);
|
||||
}
|
||||
if(ibc == -1) {
|
||||
perror("read");
|
||||
@ -288,7 +288,7 @@ loop:
|
||||
for(c=0; c<ibs; c++)
|
||||
if(ibuf[c] != 0)
|
||||
ibc = c+1;
|
||||
seek(ibf, ibs, 1);
|
||||
sys_seek(ibf, ibs, 1);
|
||||
stats();
|
||||
}else if(ibc == 0 && --files<=0) {
|
||||
flsh();
|
||||
@ -331,7 +331,7 @@ flsh(void)
|
||||
if(obc) {
|
||||
/* don't perror dregs of previous errors on a short write */
|
||||
werrstr("");
|
||||
c = write(obf, obuf, obc);
|
||||
c = jehanne_write(obf, obuf, obc);
|
||||
if(c != obc) {
|
||||
if(c > 0)
|
||||
++nopr;
|
||||
|
@ -214,7 +214,7 @@ fatal(char *fmt, ...)
|
||||
va_end(arg);
|
||||
fprint(2, "format: %s\n", err);
|
||||
if(fflag && file)
|
||||
remove(file);
|
||||
sys_remove(file);
|
||||
exits(err);
|
||||
}
|
||||
|
||||
@ -279,7 +279,7 @@ main(int argc, char **argv)
|
||||
if(fflag) {
|
||||
if((fd = ocreate(argv[0], ORDWR, 0666)) >= 0) {
|
||||
file = argv[0];
|
||||
close(fd);
|
||||
sys_close(fd);
|
||||
disk = opendisk(argv[0], 0, 0);
|
||||
}
|
||||
}
|
||||
@ -296,8 +296,8 @@ main(int argc, char **argv)
|
||||
type = "3½HD";
|
||||
break;
|
||||
case Tfloppy:
|
||||
seek(disk->ctlfd, 0, 0);
|
||||
n = read(disk->ctlfd, buf, 10);
|
||||
sys_seek(disk->ctlfd, 0, 0);
|
||||
n = jehanne_read(disk->ctlfd, buf, 10);
|
||||
if(n <= 0 || n >= 10)
|
||||
fatal("reading floppy type");
|
||||
buf[n] = 0;
|
||||
@ -347,8 +347,8 @@ sanitycheck(Disk *disk)
|
||||
return;
|
||||
|
||||
bad = 0;
|
||||
if(dos && nresrv < 2 && seek(disk->fd, disk->secsize, 0) == disk->secsize
|
||||
&& read(disk->fd, buf, sizeof(buf)) >= 5 && strncmp(buf, "part ", 5) == 0) {
|
||||
if(dos && nresrv < 2 && sys_seek(disk->fd, disk->secsize, 0) == disk->secsize
|
||||
&& jehanne_read(disk->fd, buf, sizeof(buf)) >= 5 && strncmp(buf, "part ", 5) == 0) {
|
||||
fprint(2,
|
||||
"there's a plan9 partition on the disk\n"
|
||||
"and you didn't specify -r 2 (or greater).\n"
|
||||
@ -381,7 +381,7 @@ getdriveno(Disk *disk)
|
||||
if(disk->type != Tsd)
|
||||
return 0x80; /* first hard disk */
|
||||
|
||||
if(fd2path(disk->fd, buf, sizeof(buf)) < 0)
|
||||
if(sys_fd2path(disk->fd, buf, sizeof(buf)) < 0)
|
||||
return 0x80;
|
||||
|
||||
/*
|
||||
@ -411,7 +411,7 @@ writen(int fd, void *buf, int32_t n)
|
||||
m = n - tot;
|
||||
if(m > 8192)
|
||||
m = 8192;
|
||||
if(write(fd, (uint8_t*)buf+tot, m) != m)
|
||||
if(jehanne_write(fd, (uint8_t*)buf+tot, m) != m)
|
||||
break;
|
||||
}
|
||||
return tot;
|
||||
@ -484,10 +484,10 @@ dosfs(int dofat, int dopbs, Disk *disk, char *label, int argc, char *argv[], int
|
||||
if((d = dirfstat(disk->wfd)) == nil)
|
||||
fatal("fstat disk: %r");
|
||||
if(commit && d->length < disk->size) {
|
||||
if(seek(disk->wfd, disk->size-1, 0) < 0)
|
||||
if(sys_seek(disk->wfd, disk->size-1, 0) < 0)
|
||||
fatal("seek to 9: %r");
|
||||
if(write(disk->wfd, "9", 1) < 0)
|
||||
fatal("writing 9: @%lld %r", seek(disk->wfd, 0LL, 1));
|
||||
if(jehanne_write(disk->wfd, "9", 1) < 0)
|
||||
fatal("writing 9: @%lld %r", sys_seek(disk->wfd, 0LL, 1));
|
||||
}
|
||||
free(d);
|
||||
}
|
||||
@ -495,9 +495,9 @@ dosfs(int dofat, int dopbs, Disk *disk, char *label, int argc, char *argv[], int
|
||||
/*
|
||||
* Start with initial sector from disk
|
||||
*/
|
||||
if(seek(disk->fd, 0, 0) < 0)
|
||||
if(sys_seek(disk->fd, 0, 0) < 0)
|
||||
fatal("seek to boot sector: %r\n");
|
||||
if(commit && read(disk->fd, buf, secsize) != secsize)
|
||||
if(commit && jehanne_read(disk->fd, buf, secsize) != secsize)
|
||||
fatal("reading boot sector: %r");
|
||||
|
||||
if(dofat)
|
||||
@ -523,15 +523,15 @@ dosfs(int dofat, int dopbs, Disk *disk, char *label, int argc, char *argv[], int
|
||||
fatal("out of memory");
|
||||
|
||||
if(pbs){
|
||||
if((sysfd = open(pbs, OREAD)) < 0)
|
||||
if((sysfd = sys_open(pbs, OREAD)) < 0)
|
||||
fatal("open %s: %r", pbs);
|
||||
if((npbs = read(sysfd, pbsbuf, secsize)) < 0)
|
||||
if((npbs = jehanne_read(sysfd, pbsbuf, secsize)) < 0)
|
||||
fatal("read %s: %r", pbs);
|
||||
|
||||
if(npbs > secsize-2)
|
||||
fatal("boot block too large");
|
||||
|
||||
close(sysfd);
|
||||
sys_close(sysfd);
|
||||
}
|
||||
else {
|
||||
memmove(pbsbuf, bootprog, sizeof(bootprog));
|
||||
@ -662,9 +662,9 @@ if(chatty) print("try %d fatbits => %d clusters of %d\n", fatbits, clusters, clu
|
||||
buf[secsize-1] = 0xAA;
|
||||
|
||||
if(commit) {
|
||||
if(seek(disk->wfd, 0, 0) < 0)
|
||||
if(sys_seek(disk->wfd, 0, 0) < 0)
|
||||
fatal("seek to boot sector: %r\n");
|
||||
if(write(disk->wfd, buf, secsize) != secsize)
|
||||
if(jehanne_write(disk->wfd, buf, secsize) != secsize)
|
||||
fatal("writing boot sector: %r");
|
||||
}
|
||||
|
||||
@ -679,9 +679,9 @@ if(chatty) print("try %d fatbits => %d clusters of %d\n", fatbits, clusters, clu
|
||||
/*
|
||||
* allocate an in memory fat
|
||||
*/
|
||||
if(seek(disk->wfd, nresrv*secsize, 0) < 0)
|
||||
if(sys_seek(disk->wfd, nresrv*secsize, 0) < 0)
|
||||
fatal("seek to fat: %r\n");
|
||||
if(chatty) print("fat @%lluX\n", seek(disk->wfd, 0, 1));
|
||||
if(chatty) print("fat @%lluX\n", sys_seek(disk->wfd, 0, 1));
|
||||
fat = malloc(fatsecs*secsize);
|
||||
if(fat == 0)
|
||||
fatal("out of memory");
|
||||
@ -698,9 +698,9 @@ if(chatty) print("fat @%lluX\n", seek(disk->wfd, 0, 1));
|
||||
fat[7] = 0xff;
|
||||
}
|
||||
fatlast = 1;
|
||||
if(seek(disk->wfd, 2*fatsecs*secsize, 1) < 0) /* 2 fats */
|
||||
if(sys_seek(disk->wfd, 2*fatsecs*secsize, 1) < 0) /* 2 fats */
|
||||
fatal("seek to root: %r");
|
||||
if(chatty) print("root @%lluX\n", seek(disk->wfd, 0LL, 1));
|
||||
if(chatty) print("root @%lluX\n", sys_seek(disk->wfd, 0LL, 1));
|
||||
|
||||
if(fatbits == 32){
|
||||
/*
|
||||
@ -723,9 +723,9 @@ if(chatty) print("root @%lluX\n", seek(disk->wfd, 0LL, 1));
|
||||
if(root == 0)
|
||||
fatal("out of memory");
|
||||
memset(root, 0, rootsecs*secsize);
|
||||
if(seek(disk->wfd, rootsecs*secsize, 1) < 0) /* rootsecs */
|
||||
if(sys_seek(disk->wfd, rootsecs*secsize, 1) < 0) /* rootsecs */
|
||||
fatal("seek to files: %r");
|
||||
if(chatty) print("files @%lluX\n", seek(disk->wfd, 0LL, 1));
|
||||
if(chatty) print("files @%lluX\n", sys_seek(disk->wfd, 0LL, 1));
|
||||
|
||||
/*
|
||||
* Now positioned at the Files Area.
|
||||
@ -738,7 +738,7 @@ if(chatty) print("files @%lluX\n", seek(disk->wfd, 0LL, 1));
|
||||
/*
|
||||
* Open the file and get its length.
|
||||
*/
|
||||
if((sysfd = open(*argv, OREAD)) < 0)
|
||||
if((sysfd = sys_open(*argv, OREAD)) < 0)
|
||||
fatal("open %s: %r", *argv);
|
||||
if((d = dirfstat(sysfd)) == nil)
|
||||
fatal("stat %s: %r", *argv);
|
||||
@ -764,12 +764,12 @@ if(chatty) print("files @%lluX\n", seek(disk->wfd, 0LL, 1));
|
||||
if(readn(sysfd, buf, d->length) != d->length)
|
||||
fatal("read %s: %r", *argv);
|
||||
memset(buf+d->length, 0, length-d->length);
|
||||
if(chatty) print("%s @%lluX\n", d->name, seek(disk->wfd, 0LL, 1));
|
||||
if(chatty) print("%s @%lluX\n", d->name, sys_seek(disk->wfd, 0LL, 1));
|
||||
if(commit && writen(disk->wfd, buf, length) != length)
|
||||
fatal("write %s: %r", *argv);
|
||||
free(buf);
|
||||
|
||||
close(sysfd);
|
||||
sys_close(sysfd);
|
||||
|
||||
/*
|
||||
* Allocate the FAT clusters.
|
||||
@ -812,19 +812,19 @@ fprint(2, "add %s at clust %lux\n", d->name, x);
|
||||
PUTLONG(fi->freeclust, clusters - fatlast);
|
||||
PUTLONG(fi->nextfree, fatlast);
|
||||
|
||||
if(seek(disk->wfd, (nresrv-1)*secsize, 0) < 0)
|
||||
if(sys_seek(disk->wfd, (nresrv-1)*secsize, 0) < 0)
|
||||
fatal("seek to fatinfo: %r\n");
|
||||
if(write(disk->wfd, fi, secsize) < 0)
|
||||
if(jehanne_write(disk->wfd, fi, secsize) < 0)
|
||||
fatal("writing fat #1: %r");
|
||||
free(fi);
|
||||
}
|
||||
if(seek(disk->wfd, nresrv*secsize, 0) < 0)
|
||||
if(sys_seek(disk->wfd, nresrv*secsize, 0) < 0)
|
||||
fatal("seek to fat #1: %r");
|
||||
if(write(disk->wfd, fat, fatsecs*secsize) < 0)
|
||||
if(jehanne_write(disk->wfd, fat, fatsecs*secsize) < 0)
|
||||
fatal("writing fat #1: %r");
|
||||
if(write(disk->wfd, fat, fatsecs*secsize) < 0)
|
||||
if(jehanne_write(disk->wfd, fat, fatsecs*secsize) < 0)
|
||||
fatal("writing fat #2: %r");
|
||||
if(write(disk->wfd, root, rootsecs*secsize) < 0)
|
||||
if(jehanne_write(disk->wfd, root, rootsecs*secsize) < 0)
|
||||
fatal("writing root: %r");
|
||||
}
|
||||
|
||||
|
@ -158,7 +158,7 @@ mkdirs(char *name, char *namep)
|
||||
return;
|
||||
*p = 0;
|
||||
fd = ocreate(buf, OREAD, 0775|DMDIR);
|
||||
close(fd);
|
||||
sys_close(fd);
|
||||
*p = '/';
|
||||
}
|
||||
}
|
||||
@ -181,7 +181,7 @@ mkdir(char *name, uint32_t mode, uint32_t mtime, char *uid, char *gid)
|
||||
}
|
||||
free(d);
|
||||
}
|
||||
close(fd);
|
||||
sys_close(fd);
|
||||
|
||||
d = &xd;
|
||||
nulldir(d);
|
||||
|
@ -181,7 +181,7 @@ copy(Dir *d)
|
||||
int64_t tot, len;
|
||||
Dir nd;
|
||||
|
||||
f = open(oldfile, OREAD);
|
||||
f = sys_open(oldfile, OREAD);
|
||||
if(f < 0){
|
||||
warn("can't open %q: %r", oldfile);
|
||||
return;
|
||||
@ -198,7 +198,7 @@ copy(Dir *d)
|
||||
t = ocreate(cptmp, OWRITE, 0666);
|
||||
if(t < 0){
|
||||
warn("can't create %q: %r", newfile);
|
||||
close(f);
|
||||
sys_close(f);
|
||||
return;
|
||||
}
|
||||
}
|
||||
@ -209,7 +209,7 @@ copy(Dir *d)
|
||||
/* don't read beyond d->length */
|
||||
if (len > buflen)
|
||||
len = buflen;
|
||||
n = read(f, buf, len);
|
||||
n = jehanne_read(f, buf, len);
|
||||
if(n <= 0) {
|
||||
if(n < 0 && nowarnyet) {
|
||||
warn("can't read %q: %r", oldfile);
|
||||
@ -226,18 +226,18 @@ copy(Dir *d)
|
||||
if(Bwrite(&bout, buf, n) != n)
|
||||
error("write error: %r");
|
||||
}else if(memcmp(buf, zbuf, n) == 0){
|
||||
if(seek(t, n, 1) < 0)
|
||||
if(sys_seek(t, n, 1) < 0)
|
||||
error("can't write zeros to %q: %r", newfile);
|
||||
needwrite = 1;
|
||||
}else{
|
||||
if(write(t, buf, n) < n)
|
||||
if(jehanne_write(t, buf, n) < n)
|
||||
error("can't write %q: %r", newfile);
|
||||
needwrite = 0;
|
||||
}
|
||||
}
|
||||
close(f);
|
||||
sys_close(f);
|
||||
if(needwrite){
|
||||
if(seek(t, -1, 1) < 0 || write(t, zbuf, 1) != 1)
|
||||
if(sys_seek(t, -1, 1) < 0 || jehanne_write(t, zbuf, 1) != 1)
|
||||
error("can't write zero at end of %q: %r", newfile);
|
||||
}
|
||||
if(tot != d->length){
|
||||
@ -252,7 +252,7 @@ copy(Dir *d)
|
||||
}
|
||||
if(fskind == Archive)
|
||||
return;
|
||||
remove(newfile);
|
||||
sys_remove(newfile);
|
||||
nulldir(&nd);
|
||||
nd.mode = d->mode;
|
||||
nd.gid = d->gid;
|
||||
@ -263,7 +263,7 @@ copy(Dir *d)
|
||||
nulldir(&nd);
|
||||
nd.uid = d->uid;
|
||||
dirfwstat(t, &nd);
|
||||
close(t);
|
||||
sys_close(t);
|
||||
}
|
||||
|
||||
void
|
||||
@ -300,7 +300,7 @@ mkdir(Dir *d)
|
||||
nulldir(&nd);
|
||||
nd.uid = d->uid;
|
||||
dirfwstat(fd, &nd);
|
||||
close(fd);
|
||||
sys_close(fd);
|
||||
}
|
||||
|
||||
void
|
||||
|
@ -407,7 +407,7 @@ rdctlpart(Edit *edit)
|
||||
|
||||
disk = edit->disk;
|
||||
edit->nctlpart = 0;
|
||||
seek(disk->ctlfd, 0, 0);
|
||||
sys_seek(disk->ctlfd, 0, 0);
|
||||
if(readn(disk->ctlfd, buf, sizeof buf) <= 0) {
|
||||
return;
|
||||
}
|
||||
|
@ -378,7 +378,7 @@ putle32(void* v, uint32_t i)
|
||||
static void
|
||||
diskread(Disk *disk, void *data, int ndata, uint32_t sec, uint32_t off)
|
||||
{
|
||||
if(seek(disk->fd, (int64_t)sec*disk->secsize+off, 0) != (int64_t)sec*disk->secsize+off)
|
||||
if(sys_seek(disk->fd, (int64_t)sec*disk->secsize+off, 0) != (int64_t)sec*disk->secsize+off)
|
||||
sysfatal("diskread seek %lud.%lud: %r", (uint32_t)sec,
|
||||
(uint32_t)off);
|
||||
if(readn(disk->fd, data, ndata) != ndata)
|
||||
@ -390,9 +390,9 @@ static int
|
||||
diskwrite(Disk *disk, void *data, int ndata, uint32_t sec, uint32_t off)
|
||||
{
|
||||
written = 1;
|
||||
if(seek(disk->wfd, (int64_t)sec*disk->secsize+off, 0) != (int64_t)sec*disk->secsize+off)
|
||||
if(sys_seek(disk->wfd, (int64_t)sec*disk->secsize+off, 0) != (int64_t)sec*disk->secsize+off)
|
||||
goto Error;
|
||||
if(write(disk->wfd, data, ndata) != ndata)
|
||||
if(jehanne_write(disk->wfd, data, ndata) != ndata)
|
||||
goto Error;
|
||||
return 0;
|
||||
|
||||
|
@ -319,7 +319,7 @@ rdpart(Edit *edit)
|
||||
Disk *disk;
|
||||
|
||||
disk = edit->disk;
|
||||
seek(disk->fd, disk->secsize, 0);
|
||||
sys_seek(disk->fd, disk->secsize, 0);
|
||||
if(jehanne_readn(disk->fd, osecbuf, disk->secsize) != disk->secsize)
|
||||
return;
|
||||
osecbuf[disk->secsize] = '\0';
|
||||
@ -465,12 +465,12 @@ restore(Edit *edit, int ctlfd)
|
||||
|
||||
offset = edit->disk->offset;
|
||||
jehanne_fprint(2, "attempting to restore partitions to previous state\n");
|
||||
if(seek(edit->disk->wfd, edit->disk->secsize, 0) != 0){
|
||||
if(sys_seek(edit->disk->wfd, edit->disk->secsize, 0) != 0){
|
||||
jehanne_fprint(2, "cannot restore: error seeking on disk\n");
|
||||
jehanne_exits("inconsistent");
|
||||
}
|
||||
|
||||
if(write(edit->disk->wfd, osecbuf, edit->disk->secsize) != edit->disk->secsize){
|
||||
if(jehanne_write(edit->disk->wfd, osecbuf, edit->disk->secsize) != edit->disk->secsize){
|
||||
jehanne_fprint(2, "cannot restore: couldn't write old partition table to disk\n");
|
||||
jehanne_exits("inconsistent");
|
||||
}
|
||||
@ -502,12 +502,12 @@ wrpart(Edit *edit)
|
||||
n += jehanne_snprint(secbuf+n, disk->secsize-n, "part %s %lld %lld\n",
|
||||
edit->part[i]->name, edit->part[i]->start, edit->part[i]->end);
|
||||
|
||||
if(seek(disk->wfd, disk->secsize, 0) != disk->secsize){
|
||||
if(sys_seek(disk->wfd, disk->secsize, 0) != disk->secsize){
|
||||
jehanne_fprint(2, "error seeking %d %lld on disk: %r\n", disk->wfd, disk->secsize);
|
||||
jehanne_exits("seek");
|
||||
}
|
||||
|
||||
if(write(disk->wfd, secbuf, disk->secsize) != disk->secsize){
|
||||
if(jehanne_write(disk->wfd, secbuf, disk->secsize) != disk->secsize){
|
||||
jehanne_fprint(2, "error writing partition table to disk\n");
|
||||
restore(edit, -1);
|
||||
}
|
||||
@ -526,8 +526,8 @@ checkfat(Disk *disk)
|
||||
{
|
||||
uint8_t buf[32];
|
||||
|
||||
if(seek(disk->fd, disk->secsize, 0) < 0
|
||||
|| read(disk->fd, buf, sizeof(buf)) < sizeof(buf))
|
||||
if(sys_seek(disk->fd, disk->secsize, 0) < 0
|
||||
|| jehanne_read(disk->fd, buf, sizeof(buf)) < sizeof(buf))
|
||||
return;
|
||||
|
||||
if(buf[0] != 0xEB || buf[1] != 0x3C || buf[2] != 0x90)
|
||||
|
@ -157,7 +157,7 @@ paqFile(char *name, Dir *dir)
|
||||
uint8_t *block, *pointer;
|
||||
uint32_t offset;
|
||||
|
||||
fd = open(name, OREAD);
|
||||
fd = sys_open(name, OREAD);
|
||||
if(fd < 0) {
|
||||
warn("could not open file: %s: %r", name);
|
||||
return nil;
|
||||
@ -169,7 +169,7 @@ paqFile(char *name, Dir *dir)
|
||||
n = 0;
|
||||
tot = 0;
|
||||
for(;;) {
|
||||
nn = read(fd, block+n, blocksize-n);
|
||||
nn = jehanne_read(fd, block+n, blocksize-n);
|
||||
if(nn < 0) {
|
||||
warn("read failed: %s: %r", name);
|
||||
goto Err;
|
||||
@ -197,13 +197,13 @@ paqFile(char *name, Dir *dir)
|
||||
|
||||
offset = writeBlock(pointer, PointerBlock);
|
||||
|
||||
close(fd);
|
||||
sys_close(fd);
|
||||
free(pointer);
|
||||
free(block);
|
||||
dir->length = tot;
|
||||
return paqDirAlloc(dir, offset);
|
||||
Err:
|
||||
close(fd);
|
||||
sys_close(fd);
|
||||
free(pointer);
|
||||
free(block);
|
||||
return nil;
|
||||
@ -219,14 +219,14 @@ paqDir(char *name, Dir *dir)
|
||||
char *nname;
|
||||
uint32_t offset;
|
||||
|
||||
fd = open(name, OREAD);
|
||||
fd = sys_open(name, OREAD);
|
||||
if(fd < 0) {
|
||||
warn("could not open directory: %s: %r", name);
|
||||
return nil;
|
||||
}
|
||||
|
||||
ndir = dirreadall(fd, &dirs);
|
||||
close(fd);
|
||||
sys_close(fd);
|
||||
|
||||
if(ndir < 0) {
|
||||
warn("could not read directory: %s: %r", name);
|
||||
|
@ -259,16 +259,16 @@ main(int argc, char *argv[])
|
||||
|
||||
if(debug)
|
||||
fmtinstall('F', fcallfmt);
|
||||
switch(rfork(RFFDG|RFPROC|RFNAMEG|RFNOTEG)){
|
||||
switch(sys_rfork(RFFDG|RFPROC|RFNAMEG|RFNOTEG)){
|
||||
case -1:
|
||||
sysfatal("fork");
|
||||
case 0:
|
||||
close(pfd[0]);
|
||||
sys_close(pfd[0]);
|
||||
io(pfd[1]);
|
||||
break;
|
||||
default:
|
||||
close(pfd[1]); /* don't deadlock if child fails */
|
||||
if(mnt && mount(pfd[0], -1, mntpoint, MREPL|MCREATE, "", '9') < 0)
|
||||
sys_close(pfd[1]); /* don't deadlock if child fails */
|
||||
if(mnt && sys_mount(pfd[0], -1, mntpoint, MREPL|MCREATE, "", '9') < 0)
|
||||
sysfatal("mount %s: %r", mntpoint);
|
||||
}
|
||||
exits(0);
|
||||
@ -858,7 +858,7 @@ io(int fd)
|
||||
n = convS2M(&thdr, mdata, mesgsize);
|
||||
if(n == 0)
|
||||
sysfatal("convS2M sysfatal on write");
|
||||
if(write(fd, mdata, n) != n)
|
||||
if(jehanne_write(fd, mdata, n) != n)
|
||||
sysfatal("mount write");
|
||||
}
|
||||
}
|
||||
|
@ -21,7 +21,7 @@ deverror(char *name, Xfs *xf, int32_t addr, int32_t n, int32_t nret)
|
||||
errno = Eio;
|
||||
if(nret < 0){
|
||||
chat("%s errstr=\"%r\"...", name);
|
||||
close(xf->dev);
|
||||
sys_close(xf->dev);
|
||||
xf->dev = -1;
|
||||
return -1;
|
||||
}
|
||||
@ -36,7 +36,7 @@ devread(Xfs *xf, int32_t addr, void *buf, int32_t n)
|
||||
|
||||
if(xf->dev < 0)
|
||||
return -1;
|
||||
nread = pread(xf->dev, buf, n, xf->offset+(int64_t)addr*Sectorsize);
|
||||
nread = sys_pread(xf->dev, buf, n, xf->offset+(int64_t)addr*Sectorsize);
|
||||
if (nread == n)
|
||||
return 0;
|
||||
return deverror("read", xf, addr, n, nread);
|
||||
@ -52,7 +52,7 @@ devwrite(Xfs *xf, int32_t addr, void *buf, int32_t n)
|
||||
|
||||
if(xf->dev < 0)
|
||||
return -1;
|
||||
nwrite = pwrite(xf->dev, buf, n, xf->offset+(int64_t)addr*Sectorsize);
|
||||
nwrite = sys_pwrite(xf->dev, buf, n, xf->offset+(int64_t)addr*Sectorsize);
|
||||
if (nwrite == n)
|
||||
return 0;
|
||||
return deverror("write", xf, addr, n, nwrite);
|
||||
@ -65,8 +65,8 @@ devcheck(Xfs *xf)
|
||||
|
||||
if(xf->dev < 0)
|
||||
return -1;
|
||||
if(pread(xf->dev, buf, Sectorsize, 0) != Sectorsize){
|
||||
close(xf->dev);
|
||||
if(sys_pread(xf->dev, buf, Sectorsize, 0) != Sectorsize){
|
||||
sys_close(xf->dev);
|
||||
xf->dev = -1;
|
||||
return -1;
|
||||
}
|
||||
|
@ -71,11 +71,11 @@ getxfs(char *user, char *name)
|
||||
omode = OREAD;
|
||||
else
|
||||
omode = ORDWR;
|
||||
fd = open(name, omode);
|
||||
fd = sys_open(name, omode);
|
||||
|
||||
if(fd < 0 && omode==ORDWR){
|
||||
omode = OREAD;
|
||||
fd = open(name, omode);
|
||||
fd = sys_open(name, omode);
|
||||
}
|
||||
|
||||
if(fd < 0){
|
||||
@ -86,7 +86,7 @@ getxfs(char *user, char *name)
|
||||
dir = jehanne_dirfstat(fd);
|
||||
if(dir == nil){
|
||||
errno = Eio;
|
||||
close(fd);
|
||||
sys_close(fd);
|
||||
return 0;
|
||||
}
|
||||
|
||||
@ -110,14 +110,14 @@ getxfs(char *user, char *name)
|
||||
chat("incref \"%s\", dev=%d...", xf->name, xf->dev);
|
||||
++xf->ref;
|
||||
unmlock(&xlock);
|
||||
close(fd);
|
||||
sys_close(fd);
|
||||
return xf;
|
||||
}
|
||||
if(fxf == nil){
|
||||
fxf = jehanne_malloc(sizeof(Xfs));
|
||||
if(fxf == nil){
|
||||
unmlock(&xlock);
|
||||
close(fd);
|
||||
sys_close(fd);
|
||||
errno = Enomem;
|
||||
return nil;
|
||||
}
|
||||
@ -149,7 +149,7 @@ refxfs(Xfs *xf, int delta)
|
||||
jehanne_free(xf->ptr);
|
||||
purgebuf(xf);
|
||||
if(xf->dev >= 0){
|
||||
close(xf->dev);
|
||||
sys_close(xf->dev);
|
||||
xf->dev = -1;
|
||||
}
|
||||
}
|
||||
|
@ -100,27 +100,27 @@ main(int argc, char **argv)
|
||||
pipefd[0] = 0;
|
||||
pipefd[1] = 1;
|
||||
}else{
|
||||
close(0);
|
||||
close(1);
|
||||
open("/dev/null", OREAD);
|
||||
open("/dev/null", OWRITE);
|
||||
sys_close(0);
|
||||
sys_close(1);
|
||||
sys_open("/dev/null", OREAD);
|
||||
sys_open("/dev/null", OWRITE);
|
||||
if(jehanne_pipe(pipefd) < 0)
|
||||
panic("pipe");
|
||||
srvfd = jehanne_ocreate(srvfile, OWRITE|ORCLOSE, 0600);
|
||||
if(srvfd < 0)
|
||||
panic(srvfile);
|
||||
jehanne_fprint(srvfd, "%d", pipefd[0]);
|
||||
close(pipefd[0]);
|
||||
sys_close(pipefd[0]);
|
||||
jehanne_atexit(rmservice);
|
||||
jehanne_fprint(2, "%s: serving %s\n", argv0, srvfile);
|
||||
}
|
||||
srvfd = pipefd[1];
|
||||
|
||||
switch(rfork(RFNOWAIT|RFNOTEG|RFFDG|RFPROC|RFNAMEG)){
|
||||
switch(sys_rfork(RFNOWAIT|RFNOTEG|RFFDG|RFPROC|RFNAMEG)){
|
||||
case -1:
|
||||
panic("fork");
|
||||
default:
|
||||
_exits(0);
|
||||
sys__exits(0);
|
||||
case 0:
|
||||
break;
|
||||
}
|
||||
@ -128,8 +128,8 @@ main(int argc, char **argv)
|
||||
iotrack_init();
|
||||
|
||||
if(!chatty){
|
||||
close(2);
|
||||
open("#c/cons", OWRITE);
|
||||
sys_close(2);
|
||||
sys_open("#c/cons", OWRITE);
|
||||
}
|
||||
|
||||
io(srvfd);
|
||||
@ -182,7 +182,7 @@ io(int srvfd)
|
||||
n = convS2M(rep, mdata, sizeof mdata);
|
||||
if(n == 0)
|
||||
panic("convS2M error on write");
|
||||
if(write(srvfd, mdata, n) != n)
|
||||
if(jehanne_write(srvfd, mdata, n) != n)
|
||||
panic("mount write");
|
||||
}
|
||||
chat("server shut down");
|
||||
@ -191,7 +191,7 @@ io(int srvfd)
|
||||
void
|
||||
rmservice(void)
|
||||
{
|
||||
remove(srvfile);
|
||||
sys_remove(srvfile);
|
||||
}
|
||||
|
||||
char *
|
||||
@ -200,7 +200,7 @@ xerrstr(int e)
|
||||
if (e < 0 || e >= sizeof errmsg/sizeof errmsg[0])
|
||||
return "no such error";
|
||||
if(e == Eerrstr){
|
||||
errstr(errbuf, sizeof errbuf);
|
||||
sys_errstr(errbuf, sizeof errbuf);
|
||||
return errbuf;
|
||||
}
|
||||
return errmsg[e];
|
||||
|
@ -188,17 +188,17 @@ dirval(Dir *d, int64_t size)
|
||||
void
|
||||
readfile(char *name)
|
||||
{
|
||||
int n, fd = open(name, OREAD);
|
||||
int n, fd = sys_open(name, OREAD);
|
||||
|
||||
if(fd < 0) {
|
||||
warn(name);
|
||||
return;
|
||||
}
|
||||
while ((n = read(fd, readbuf, blocksize)) > 0)
|
||||
while ((n = jehanne_read(fd, readbuf, blocksize)) > 0)
|
||||
continue;
|
||||
if (n < 0)
|
||||
warn(name);
|
||||
close(fd);
|
||||
sys_close(fd);
|
||||
}
|
||||
|
||||
int64_t
|
||||
@ -234,7 +234,7 @@ du(char *name, Dir *dir)
|
||||
if((dir->qid.type&QTDIR) == 0)
|
||||
return dirval(dir, blkmultiple(dir->length));
|
||||
|
||||
fd = open(name, OREAD);
|
||||
fd = sys_open(name, OREAD);
|
||||
if(fd < 0)
|
||||
return warn(name);
|
||||
nk = 0;
|
||||
@ -267,7 +267,7 @@ du(char *name, Dir *dir)
|
||||
}
|
||||
if(n < 0)
|
||||
warn(name);
|
||||
close(fd);
|
||||
sys_close(fd);
|
||||
return dirval(dir, nk);
|
||||
}
|
||||
|
||||
|
@ -40,7 +40,7 @@ main(int argc, char *argv[])
|
||||
if(!nflag)
|
||||
*p++ = '\n';
|
||||
|
||||
if(write(1, buf, p-buf) < 0){
|
||||
if(jehanne_write(1, buf, p-buf) < 0){
|
||||
fprint(2, "echo: write error: %r\n");
|
||||
exits("write error");
|
||||
}
|
||||
|
@ -134,7 +134,7 @@ static Rune la;
|
||||
static Rune lr;
|
||||
|
||||
#undef read
|
||||
extern int read(int, void*, int);
|
||||
extern int jehanne_read(int, void*, int);
|
||||
|
||||
void
|
||||
main(int argc, char *argv[])
|
||||
@ -144,7 +144,7 @@ main(int argc, char *argv[])
|
||||
chartorune(&la, "a");
|
||||
chartorune(&lr, "r");
|
||||
Binit(&bcons, 0, OREAD);
|
||||
notify(notifyf);
|
||||
sys_notify(notifyf);
|
||||
ARGBEGIN {
|
||||
case 'o':
|
||||
oflag = 1;
|
||||
@ -327,7 +327,7 @@ commands(void)
|
||||
case 'r':
|
||||
filename(c);
|
||||
caseread:
|
||||
if((io=open(file, OREAD)) < 0) {
|
||||
if((io=sys_open(file, OREAD)) < 0) {
|
||||
lastc = '\n';
|
||||
error(file);
|
||||
}
|
||||
@ -380,8 +380,8 @@ commands(void)
|
||||
}
|
||||
filename(c);
|
||||
if(!wrapp ||
|
||||
((io = open(file, OWRITE)) == -1) ||
|
||||
((seek(io, 0L, 2)) == -1))
|
||||
((io = sys_open(file, OWRITE)) == -1) ||
|
||||
((sys_seek(io, 0L, 2)) == -1))
|
||||
if((io = ocreate(file, OWRITE, 0666)) < 0)
|
||||
error(file);
|
||||
Binit(&iobuf, io, OWRITE);
|
||||
@ -630,7 +630,7 @@ exfile(int om)
|
||||
if(om == OWRITE)
|
||||
if(Bflush(&iobuf) < 0)
|
||||
error(Q);
|
||||
close(io);
|
||||
sys_close(io);
|
||||
io = -1;
|
||||
if(vflag) {
|
||||
putd();
|
||||
@ -647,7 +647,7 @@ error1(char *s)
|
||||
listf = 0;
|
||||
listn = 0;
|
||||
count = 0;
|
||||
seek(0, 0, 2);
|
||||
sys_seek(0, 0, 2);
|
||||
pflag = 0;
|
||||
if(globp)
|
||||
lastc = '\n';
|
||||
@ -660,7 +660,7 @@ error1(char *s)
|
||||
break;
|
||||
}
|
||||
if(io > 0) {
|
||||
close(io);
|
||||
sys_close(io);
|
||||
io = -1;
|
||||
}
|
||||
putchr(L'?');
|
||||
@ -696,7 +696,7 @@ notifyf(void *a, char *s)
|
||||
{
|
||||
if(strcmp(s, "interrupt") == 0){
|
||||
if(rescuing || waiting)
|
||||
noted(NCONT);
|
||||
sys_noted(NCONT);
|
||||
putchr(L'\n');
|
||||
lastc = '\n';
|
||||
error1(Q);
|
||||
@ -704,7 +704,7 @@ notifyf(void *a, char *s)
|
||||
}
|
||||
if(strcmp(s, "hangup") == 0){
|
||||
if(rescuing)
|
||||
noted(NDFLT);
|
||||
sys_noted(NDFLT);
|
||||
rescue();
|
||||
}
|
||||
fprint(2, "ed: note: %s\n", s);
|
||||
@ -942,7 +942,7 @@ quit(void)
|
||||
fchange = 0;
|
||||
error(Q);
|
||||
}
|
||||
remove(tfname);
|
||||
sys_remove(tfname);
|
||||
exits(0);
|
||||
}
|
||||
|
||||
@ -1048,7 +1048,7 @@ putline(void)
|
||||
void
|
||||
blkio(int b, uint8_t *buf, int32_t (*iofcn)(int, void *, int32_t))
|
||||
{
|
||||
seek(tfile, b*BLKSIZE, 0);
|
||||
sys_seek(tfile, b*BLKSIZE, 0);
|
||||
if((*iofcn)(tfile, buf, BLKSIZE) != BLKSIZE) {
|
||||
error(T);
|
||||
}
|
||||
@ -1057,7 +1057,7 @@ blkio(int b, uint8_t *buf, int32_t (*iofcn)(int, void *, int32_t))
|
||||
static int32_t
|
||||
writewrap(int a, void *b, int32_t c)
|
||||
{
|
||||
return write(a, (const void *)b, c);
|
||||
return jehanne_write(a, (const void *)b, c);
|
||||
}
|
||||
|
||||
Rune*
|
||||
@ -1087,7 +1087,7 @@ getblock(int atl, int iof)
|
||||
blkio(iblock, ibuff, writewrap);
|
||||
ichanged = 0;
|
||||
iblock = bno;
|
||||
blkio(bno, ibuff, read);
|
||||
blkio(bno, ibuff, jehanne_read);
|
||||
return (Rune*)(ibuff+off);
|
||||
}
|
||||
if(oblock >= 0)
|
||||
@ -1101,7 +1101,7 @@ init(void)
|
||||
{
|
||||
int *markp;
|
||||
|
||||
close(tfile);
|
||||
sys_close(tfile);
|
||||
tline = 2;
|
||||
for(markp = names; markp < &names[26]; )
|
||||
*markp++ = 0;
|
||||
@ -1569,7 +1569,7 @@ putchr(int ac)
|
||||
|
||||
if(c == '\n' || lp >= &line[sizeof(line)-5]) {
|
||||
linp = line;
|
||||
write(oflag? 2: 1, line, lp-line);
|
||||
jehanne_write(oflag? 2: 1, line, lp-line);
|
||||
return;
|
||||
}
|
||||
linp = lp;
|
||||
|
@ -218,7 +218,7 @@ main(int argc, char **argv)
|
||||
}
|
||||
|
||||
if(srvfdfile){
|
||||
if((srvfd = open(srvfdfile, ORDWR)) < 0)
|
||||
if((srvfd = sys_open(srvfdfile, ORDWR)) < 0)
|
||||
sysfatal("open '%s': %r", srvfdfile);
|
||||
}
|
||||
|
||||
@ -237,7 +237,7 @@ main(int argc, char **argv)
|
||||
|
||||
dup(fd, 0);
|
||||
dup(fd, 1);
|
||||
close(fd);
|
||||
sys_close(fd);
|
||||
}
|
||||
|
||||
exclusions();
|
||||
@ -245,7 +245,7 @@ main(int argc, char **argv)
|
||||
if(dbg) {
|
||||
n = ocreate(dbfile, OWRITE|OTRUNC, 0666);
|
||||
dup(n, DFD);
|
||||
close(n);
|
||||
sys_close(n);
|
||||
}
|
||||
|
||||
if(srvfd >= 0 && srv){
|
||||
@ -255,7 +255,7 @@ main(int argc, char **argv)
|
||||
|
||||
DEBUG(DFD, "exportfs: started\n");
|
||||
|
||||
rfork(RFNOTEG);
|
||||
sys_rfork(RFNOTEG);
|
||||
|
||||
if(messagesize == 0){
|
||||
messagesize = iounit(netfd);
|
||||
@ -277,7 +277,7 @@ main(int argc, char **argv)
|
||||
}
|
||||
else if(srv) {
|
||||
if(chdir(srv) < 0) {
|
||||
errstr(ebuf, sizeof ebuf);
|
||||
sys_errstr(ebuf, sizeof ebuf);
|
||||
fprint(0, "chdir(\"%s\"): %s\n", srv, ebuf);
|
||||
DEBUG(DFD, "chdir(\"%s\"): %s\n", srv, ebuf);
|
||||
exits(ebuf);
|
||||
@ -288,16 +288,16 @@ main(int argc, char **argv)
|
||||
else {
|
||||
noteconn(netfd);
|
||||
buf[0] = 0;
|
||||
n = read(0, buf, sizeof(buf)-1);
|
||||
n = jehanne_read(0, buf, sizeof(buf)-1);
|
||||
if(n < 0) {
|
||||
errstr(buf, sizeof buf);
|
||||
sys_errstr(buf, sizeof buf);
|
||||
fprint(0, "read(0): %s\n", buf);
|
||||
DEBUG(DFD, "read(0): %s\n", buf);
|
||||
exits(buf);
|
||||
}
|
||||
buf[n] = 0;
|
||||
if(chdir(buf) < 0) {
|
||||
errstr(ebuf, sizeof ebuf);
|
||||
sys_errstr(ebuf, sizeof ebuf);
|
||||
fprint(0, "chdir(%d:\"%s\"): %s\n", n, buf, ebuf);
|
||||
DEBUG(DFD, "chdir(%d:\"%s\"): %s\n", n, buf, ebuf);
|
||||
exits(ebuf);
|
||||
@ -309,7 +309,7 @@ main(int argc, char **argv)
|
||||
|
||||
DEBUG(DFD, "exportfs: %s\n", buf);
|
||||
|
||||
if(srv == nil && srvfd == -1 && write(0, "OK", 2) != 2)
|
||||
if(srv == nil && srvfd == -1 && jehanne_write(0, "OK", 2) != 2)
|
||||
fatal("open ack write");
|
||||
|
||||
if (readn(netfd, &initial, sizeof(uint32_t)) < sizeof(uint32_t))
|
||||
@ -323,7 +323,7 @@ main(int argc, char **argv)
|
||||
|
||||
p = buf;
|
||||
while (p - buf < sizeof buf) {
|
||||
if ((n = read(netfd, p, 1)) < 0)
|
||||
if ((n = jehanne_read(netfd, p, 1)) < 0)
|
||||
fatal("can't read impo arguments: %r\n");
|
||||
|
||||
if (n == 0)
|
||||
@ -373,7 +373,7 @@ main(int argc, char **argv)
|
||||
if(readn(netfd, key, 4) != 4)
|
||||
fatal("can't read key part; %r\n");
|
||||
|
||||
if(write(netfd, key+12, 4) != 4)
|
||||
if(jehanne_write(netfd, key+12, 4) != 4)
|
||||
fatal("can't write key part; %r\n");
|
||||
|
||||
/* scramble into two secrets */
|
||||
@ -483,7 +483,7 @@ reply(Fcall *r, Fcall *t, char *err)
|
||||
if(data == nil)
|
||||
fatal(Enomem);
|
||||
n = convS2M(t, data, messagesize);
|
||||
if(write(netfd, data, n)!=n){
|
||||
if(jehanne_write(netfd, data, n)!=n){
|
||||
syslog(0, "exportfs", "short write: %r");
|
||||
fatal("mount write");
|
||||
}
|
||||
@ -513,7 +513,7 @@ freefid(int nr)
|
||||
if(f->nr == nr) {
|
||||
if(f->mid) {
|
||||
sprint(buf, "/mnt/exportfs/%d", f->mid);
|
||||
unmount(0, buf);
|
||||
sys_unmount(0, buf);
|
||||
psmap[f->mid] = 0;
|
||||
}
|
||||
if(f->f) {
|
||||
@ -911,17 +911,17 @@ filter(int fd, char *cmd)
|
||||
|
||||
snprint(buf, sizeof(buf), "%s/local", devdir);
|
||||
buf[sizeof buf - 1] = '\0';
|
||||
if ((lfd = open(buf, OREAD)) < 0)
|
||||
if ((lfd = sys_open(buf, OREAD)) < 0)
|
||||
sysfatal("filter: cannot open %s: %r", buf);
|
||||
if ((len = read(lfd, newport, sizeof newport - 1)) < 0)
|
||||
if ((len = jehanne_read(lfd, newport, sizeof newport - 1)) < 0)
|
||||
sysfatal("filter: cannot read %s: %r", buf);
|
||||
close(lfd);
|
||||
sys_close(lfd);
|
||||
newport[len] = '\0';
|
||||
|
||||
if ((s = strchr(newport, '\n')) != nil)
|
||||
*s = '\0';
|
||||
|
||||
if ((nb = write(fd, newport, len)) < 0)
|
||||
if ((nb = jehanne_write(fd, newport, len)) < 0)
|
||||
sysfatal("getport; cannot write port; %r");
|
||||
assert(nb == len);
|
||||
|
||||
@ -937,7 +937,7 @@ filter(int fd, char *cmd)
|
||||
if(pipe(p) < 0)
|
||||
fatal("pipe");
|
||||
|
||||
switch(rfork(RFNOWAIT|RFPROC|RFFDG)) {
|
||||
switch(sys_rfork(RFNOWAIT|RFPROC|RFFDG)) {
|
||||
case -1:
|
||||
fatal("rfork record module");
|
||||
case 0:
|
||||
@ -945,13 +945,13 @@ filter(int fd, char *cmd)
|
||||
fatal("filter: cannot dup to 1; %r\n");
|
||||
if (dup(p[0], 0) < 0)
|
||||
fatal("filter: cannot dup to 0; %r\n");
|
||||
close(p[0]);
|
||||
close(p[1]);
|
||||
exec(file, argv);
|
||||
sys_close(p[0]);
|
||||
sys_close(p[1]);
|
||||
sys_exec(file, argv);
|
||||
fatal("exec record module");
|
||||
default:
|
||||
close(fd);
|
||||
close(p[0]);
|
||||
sys_close(fd);
|
||||
sys_close(p[0]);
|
||||
}
|
||||
return p[1];
|
||||
}
|
||||
|
@ -112,11 +112,11 @@ Xattach(Fsrpc *t)
|
||||
sprint(buf, "/mnt/exportfs/%d", i);
|
||||
nfd = dup(srvfd, -1);
|
||||
if(amount(nfd, buf, MREPL|MCREATE, t->work.aname) < 0){
|
||||
errstr(buf, sizeof buf);
|
||||
sys_errstr(buf, sizeof buf);
|
||||
reply(&t->work, &rhdr, buf);
|
||||
t->busy = 0;
|
||||
freefid(t->work.fid);
|
||||
close(nfd);
|
||||
sys_close(nfd);
|
||||
return;
|
||||
}
|
||||
psmap[i] = 1;
|
||||
@ -142,7 +142,7 @@ clonefid(Fid *f, int new)
|
||||
if(n == 0)
|
||||
fatal("inconsistent fids");
|
||||
if(n->fid >= 0)
|
||||
close(n->fid);
|
||||
sys_close(n->fid);
|
||||
freefid(new);
|
||||
n = newfid(new);
|
||||
if(n == 0)
|
||||
@ -195,7 +195,7 @@ Xwalk(Fsrpc *t)
|
||||
|
||||
wf = file(f->f, t->work.wname[i]);
|
||||
if(wf == 0){
|
||||
errstr(err, sizeof err);
|
||||
sys_errstr(err, sizeof err);
|
||||
e = err;
|
||||
break;
|
||||
}
|
||||
@ -228,7 +228,7 @@ Xclunk(Fsrpc *t)
|
||||
}
|
||||
|
||||
if(f->fid >= 0)
|
||||
close(f->fid);
|
||||
sys_close(f->fid);
|
||||
|
||||
freefid(t->work.fid);
|
||||
reply(&t->work, &rhdr, 0);
|
||||
@ -260,7 +260,7 @@ Xstat(Fsrpc *t)
|
||||
}
|
||||
|
||||
if(d == nil) {
|
||||
errstr(err, sizeof err);
|
||||
sys_errstr(err, sizeof err);
|
||||
reply(&t->work, &rhdr, err);
|
||||
t->busy = 0;
|
||||
return;
|
||||
@ -314,7 +314,7 @@ Xcreate(Fsrpc *t)
|
||||
f->fid = ocreate(path, t->work.mode, t->work.perm);
|
||||
free(path);
|
||||
if(f->fid < 0) {
|
||||
errstr(err, sizeof err);
|
||||
sys_errstr(err, sizeof err);
|
||||
reply(&t->work, &rhdr, err);
|
||||
t->busy = 0;
|
||||
return;
|
||||
@ -322,7 +322,7 @@ Xcreate(Fsrpc *t)
|
||||
|
||||
nf = file(f->f, t->work.name);
|
||||
if(nf == 0) {
|
||||
errstr(err, sizeof err);
|
||||
sys_errstr(err, sizeof err);
|
||||
reply(&t->work, &rhdr, err);
|
||||
t->busy = 0;
|
||||
return;
|
||||
@ -358,9 +358,9 @@ Xremove(Fsrpc *t)
|
||||
|
||||
path = makepath(f->f, "");
|
||||
DEBUG(DFD, "\tremove: %s\n", path);
|
||||
if(remove(path) < 0) {
|
||||
if(sys_remove(path) < 0) {
|
||||
free(path);
|
||||
errstr(err, sizeof err);
|
||||
sys_errstr(err, sizeof err);
|
||||
reply(&t->work, &rhdr, err);
|
||||
t->busy = 0;
|
||||
return;
|
||||
@ -369,7 +369,7 @@ Xremove(Fsrpc *t)
|
||||
|
||||
f->f->inval = 1;
|
||||
if(f->fid >= 0)
|
||||
close(f->fid);
|
||||
sys_close(f->fid);
|
||||
freefid(t->work.fid);
|
||||
|
||||
reply(&t->work, &rhdr, 0);
|
||||
@ -447,9 +447,9 @@ procsetname(char *fmt, ...)
|
||||
if (cmdname == nil)
|
||||
return;
|
||||
snprint(buf, sizeof buf, "#p/%d/args", getpid());
|
||||
if((fd = open(buf, OWRITE)) >= 0){
|
||||
write(fd, cmdname, strlen(cmdname)+1);
|
||||
close(fd);
|
||||
if((fd = sys_open(buf, OWRITE)) >= 0){
|
||||
jehanne_write(fd, cmdname, strlen(cmdname)+1);
|
||||
sys_close(fd);
|
||||
}
|
||||
free(cmdname);
|
||||
}
|
||||
@ -481,7 +481,7 @@ slave(Fsrpc *f)
|
||||
if(p->busy == 0) {
|
||||
f->pid = p->pid;
|
||||
p->busy = 1;
|
||||
pid = (uintptr_t)rendezvous((void*)p->pid, f);
|
||||
pid = (uintptr_t)sys_rendezvous((void*)p->pid, f);
|
||||
if(pid != p->pid)
|
||||
fatal("rendezvous sync fail");
|
||||
return;
|
||||
@ -491,7 +491,7 @@ slave(Fsrpc *f)
|
||||
if(++nproc > MAXPROC)
|
||||
fatal("too many procs");
|
||||
|
||||
pid = rfork(RFPROC|RFMEM);
|
||||
pid = sys_rfork(RFPROC|RFMEM);
|
||||
switch(pid) {
|
||||
case -1:
|
||||
fatal("rfork");
|
||||
@ -516,7 +516,7 @@ slave(Fsrpc *f)
|
||||
p->next = Proclist;
|
||||
Proclist = p;
|
||||
|
||||
rendezvous((void*)pid, p);
|
||||
sys_rendezvous((void*)pid, p);
|
||||
}
|
||||
}
|
||||
}
|
||||
@ -529,14 +529,14 @@ blockingslave(void)
|
||||
Proc *m;
|
||||
uintptr_t pid;
|
||||
|
||||
notify(flushaction);
|
||||
sys_notify(flushaction);
|
||||
|
||||
pid = getpid();
|
||||
|
||||
m = rendezvous((void*)pid, 0);
|
||||
m = sys_rendezvous((void*)pid, 0);
|
||||
|
||||
for(;;) {
|
||||
p = rendezvous((void*)pid, (void*)pid);
|
||||
p = sys_rendezvous((void*)pid, (void*)pid);
|
||||
if(p == (void*)~0) /* Interrupted */
|
||||
continue;
|
||||
|
||||
@ -580,20 +580,20 @@ openmount(int sfd)
|
||||
if(pipe(p) < 0)
|
||||
return -1;
|
||||
|
||||
switch(rfork(RFPROC|RFMEM|RFNOWAIT|RFNAMEG|RFFDG)){
|
||||
switch(sys_rfork(RFPROC|RFMEM|RFNOWAIT|RFNAMEG|RFFDG)){
|
||||
case -1:
|
||||
return -1;
|
||||
|
||||
default:
|
||||
close(sfd);
|
||||
close(p[0]);
|
||||
sys_close(sfd);
|
||||
sys_close(p[0]);
|
||||
return p[1];
|
||||
|
||||
case 0:
|
||||
break;
|
||||
}
|
||||
|
||||
close(p[1]);
|
||||
sys_close(p[1]);
|
||||
|
||||
arg[0] = "exportfs";
|
||||
snprint(fdbuf, sizeof fdbuf, "-S/fd/%d", sfd);
|
||||
@ -602,12 +602,12 @@ openmount(int sfd)
|
||||
arg[2] = mbuf;
|
||||
arg[3] = nil;
|
||||
|
||||
close(0);
|
||||
close(1);
|
||||
sys_close(0);
|
||||
sys_close(1);
|
||||
dup(p[0], 0);
|
||||
dup(p[0], 1);
|
||||
exec("/cmd/exportfs", arg);
|
||||
_exits("whoops: exec failed");
|
||||
sys_exec("/cmd/exportfs", arg);
|
||||
sys__exits("whoops: exec failed");
|
||||
return -1;
|
||||
}
|
||||
|
||||
@ -627,7 +627,7 @@ slaveopen(Fsrpc *p)
|
||||
return;
|
||||
}
|
||||
if(f->fid >= 0) {
|
||||
close(f->fid);
|
||||
sys_close(f->fid);
|
||||
f->fid = -1;
|
||||
}
|
||||
|
||||
@ -640,12 +640,12 @@ slaveopen(Fsrpc *p)
|
||||
return;
|
||||
}
|
||||
/* There is a race here I ignore because there are no locks */
|
||||
f->fid = open(path, work->mode);
|
||||
f->fid = sys_open(path, work->mode);
|
||||
free(path);
|
||||
p->canint = 0;
|
||||
if(f->fid < 0 || (d = dirfstat(f->fid)) == nil) {
|
||||
Error:
|
||||
errstr(err, sizeof err);
|
||||
sys_errstr(err, sizeof err);
|
||||
reply(work, &rhdr, err);
|
||||
return;
|
||||
}
|
||||
@ -693,11 +693,11 @@ slaveread(Fsrpc *p)
|
||||
if(patternfile != nil && (f->f->qid.type&QTDIR))
|
||||
r = preaddir(f, (uint8_t*)data, n, work->offset);
|
||||
else
|
||||
r = pread(f->fid, data, n, work->offset);
|
||||
r = sys_pread(f->fid, data, n, work->offset);
|
||||
p->canint = 0;
|
||||
if(r < 0) {
|
||||
free(data);
|
||||
errstr(err, sizeof err);
|
||||
sys_errstr(err, sizeof err);
|
||||
reply(work, &rhdr, err);
|
||||
return;
|
||||
}
|
||||
@ -730,10 +730,10 @@ slavewrite(Fsrpc *p)
|
||||
p->canint = 1;
|
||||
if(p->flushtag != NOTAG)
|
||||
return;
|
||||
n = pwrite(f->fid, work->data, n, work->offset);
|
||||
n = sys_pwrite(f->fid, work->data, n, work->offset);
|
||||
p->canint = 0;
|
||||
if(n < 0) {
|
||||
errstr(err, sizeof err);
|
||||
sys_errstr(err, sizeof err);
|
||||
reply(work, &rhdr, err);
|
||||
return;
|
||||
}
|
||||
@ -760,7 +760,7 @@ flushaction(void *a, char *cause)
|
||||
exits("noted");
|
||||
}
|
||||
if(strncmp(cause, "kill", 4) == 0)
|
||||
noted(NDFLT);
|
||||
sys_noted(NDFLT);
|
||||
|
||||
noted(NCONT);
|
||||
sys_noted(NCONT);
|
||||
}
|
||||
|
@ -112,7 +112,7 @@ preaddir(Fid *f, uint8_t *data, int n, int64_t offset)
|
||||
|
||||
DEBUG(DFD, "\tpreaddir n=%d wo=%lld fo=%lld\n", n, offset, f->offset);
|
||||
if(offset == 0 && f->offset != 0){
|
||||
if(seek(f->fid, 0, 0) != 0)
|
||||
if(sys_seek(f->fid, 0, 0) != 0)
|
||||
return -1;
|
||||
f->offset = f->cdir = f->ndir = 0;
|
||||
free(f->dir);
|
||||
|
@ -124,7 +124,7 @@ copy(char *from, char *to, int todir)
|
||||
return;
|
||||
}
|
||||
mode &= 0777;
|
||||
fdf=open(from, OREAD);
|
||||
fdf=sys_open(from, OREAD);
|
||||
if(fdf<0){
|
||||
fprint(2, "fcp: can't open %s: %r\n", from);
|
||||
free(dirb);
|
||||
@ -134,7 +134,7 @@ copy(char *from, char *to, int todir)
|
||||
fdt=ocreate(to, OWRITE, mode);
|
||||
if(fdt<0){
|
||||
fprint(2, "fcp: can't create %s: %r\n", to);
|
||||
close(fdf);
|
||||
sys_close(fdf);
|
||||
free(dirb);
|
||||
failed = 1;
|
||||
return;
|
||||
@ -153,8 +153,8 @@ copy(char *from, char *to, int todir)
|
||||
fprint(2, "fcp: warning: can't wstat %s: %r\n", to);
|
||||
}
|
||||
free(dirb);
|
||||
close(fdf);
|
||||
close(fdt);
|
||||
sys_close(fdf);
|
||||
sys_close(fdt);
|
||||
}
|
||||
|
||||
int
|
||||
@ -166,9 +166,9 @@ copy1(int fdf, int fdt, char *from, char *to)
|
||||
n = 0;
|
||||
off = 0;
|
||||
for(i=0; i<Nwork; i++){
|
||||
switch(pid[n] = rfork(RFPROC|RFMEM)){
|
||||
switch(pid[n] = sys_rfork(RFPROC|RFMEM)){
|
||||
case 0:
|
||||
notify(failure);
|
||||
sys_notify(failure);
|
||||
worker(fdf, fdt, from, to);
|
||||
case -1:
|
||||
break;
|
||||
@ -208,14 +208,14 @@ worker(int fdf, int fdt, char *from, char *to)
|
||||
bp = buf;
|
||||
o = nextoff();
|
||||
|
||||
while(n = pread(fdf, bp, len, o)){
|
||||
while(n = sys_pread(fdf, bp, len, o)){
|
||||
if(n < 0){
|
||||
fprint(2, "reading %s at %lld: %r\n", from, o);
|
||||
_exits("bad");
|
||||
sys__exits("bad");
|
||||
}
|
||||
if(pwrite(fdt, buf, n, o) != n){
|
||||
if(sys_pwrite(fdt, buf, n, o) != n){
|
||||
fprint(2, "writing %s: %r\n", to);
|
||||
_exits("bad");
|
||||
sys__exits("bad");
|
||||
}
|
||||
bp += n;
|
||||
o += n;
|
||||
@ -226,7 +226,7 @@ worker(int fdf, int fdt, char *from, char *to)
|
||||
o = nextoff();
|
||||
}
|
||||
}
|
||||
_exits(nil);
|
||||
sys__exits(nil);
|
||||
}
|
||||
|
||||
int64_t
|
||||
@ -246,6 +246,6 @@ void
|
||||
failure(void *v, char *note)
|
||||
{
|
||||
if(strcmp(note, "failure") == 0)
|
||||
_exits(nil);
|
||||
noted(NDFLT);
|
||||
sys__exits(nil);
|
||||
sys_noted(NDFLT);
|
||||
}
|
||||
|
@ -60,11 +60,11 @@ main(int argc, char **argv)
|
||||
nargv[i] = argv[i];
|
||||
}
|
||||
}
|
||||
exec(*nargv, nargv);
|
||||
sys_exec(*nargv, nargv);
|
||||
if(**nargv != '/' && strncmp(*nargv, "./", 2) != 0 &&
|
||||
strncmp(*nargv, "../", 3) != 0){
|
||||
*nargv = smprint("/cmd/%s", *nargv);
|
||||
exec(*nargv, nargv);
|
||||
sys_exec(*nargv, nargv);
|
||||
}
|
||||
sysfatal("exec: %r");
|
||||
}
|
||||
|
@ -92,7 +92,7 @@ search(char *file, int flag)
|
||||
fid = 0;
|
||||
flag |= Bflag;
|
||||
} else
|
||||
fid = open(file, OREAD);
|
||||
fid = sys_open(file, OREAD);
|
||||
|
||||
if (fid < 0) {
|
||||
fprint(2, "grep: can't open %s: %r\n", file);
|
||||
@ -133,7 +133,7 @@ loop0:
|
||||
n = sizeof(u.pre);
|
||||
memmove(u.buf - n, bol, n);
|
||||
bol = u.buf - n;
|
||||
n = read(fid, u.buf, sizeof(u.buf));
|
||||
n = jehanne_read(fid, u.buf, sizeof(u.buf));
|
||||
/* if file has no final newline, simulate one to emit matches to last line */
|
||||
if (n > 0) {
|
||||
empty = 0;
|
||||
@ -150,7 +150,7 @@ loop0:
|
||||
}
|
||||
}
|
||||
if (n <= 0) {
|
||||
close(fid);
|
||||
sys_close(fid);
|
||||
if (flag & Cflag) {
|
||||
if (flag & Hflag)
|
||||
Bprint(&bout, "%s:", file);
|
||||
|
@ -182,7 +182,7 @@ main(int argc, char **argv)
|
||||
if(out.fd < 0)
|
||||
sysfatal("creating %s: %r", ofile);
|
||||
} else {
|
||||
out.fd = open(ofile, OWRITE);
|
||||
out.fd = sys_open(ofile, OWRITE);
|
||||
if(out.fd < 0)
|
||||
sysfatal("can't open %s: %r", ofile);
|
||||
r.start = d->length;
|
||||
@ -323,7 +323,7 @@ catch(void *v, char *c)
|
||||
d.mtime = note.mtime;
|
||||
if(dirfwstat(note.fd, &d) < 0)
|
||||
sysfatal("catch: can't dirfwstat: %r");
|
||||
noted(NDFLT);
|
||||
sys_noted(NDFLT);
|
||||
}
|
||||
|
||||
int
|
||||
@ -364,13 +364,13 @@ dohttp(URL *u, URL *px, Range *r, Out *out, int32_t mtime)
|
||||
tfd = tlsClient(fd, &conn);
|
||||
if(tfd < 0){
|
||||
fprint(2, "tlsClient: %r\n");
|
||||
close(fd);
|
||||
sys_close(fd);
|
||||
return Error;
|
||||
}
|
||||
/* BUG: check cert here? */
|
||||
if(conn.cert)
|
||||
free(conn.cert);
|
||||
close(fd);
|
||||
sys_close(fd);
|
||||
fd = tfd;
|
||||
}
|
||||
|
||||
@ -414,15 +414,15 @@ dohttp(URL *u, URL *px, Range *r, Out *out, int32_t mtime)
|
||||
tm->year+1900, tm->hour, tm->min, tm->sec);
|
||||
}
|
||||
}
|
||||
if((cfd = open("/mnt/webcookies/http", ORDWR)) >= 0){
|
||||
if((cfd = sys_open("/mnt/webcookies/http", ORDWR)) >= 0){
|
||||
if(fprint(cfd, "http://%s%s", u->host, u->page) > 0){
|
||||
while((n = read(cfd, buf, sizeof buf)) > 0){
|
||||
while((n = jehanne_read(cfd, buf, sizeof buf)) > 0){
|
||||
if(debug)
|
||||
write(2, buf, n);
|
||||
write(fd, buf, n);
|
||||
jehanne_write(2, buf, n);
|
||||
jehanne_write(fd, buf, n);
|
||||
}
|
||||
}else{
|
||||
close(cfd);
|
||||
sys_close(cfd);
|
||||
cfd = -1;
|
||||
}
|
||||
}
|
||||
@ -438,8 +438,8 @@ dohttp(URL *u, URL *px, Range *r, Out *out, int32_t mtime)
|
||||
switch(code){
|
||||
case Error: /* connection timed out */
|
||||
case Eof:
|
||||
close(fd);
|
||||
close(cfd);
|
||||
sys_close(fd);
|
||||
sys_close(cfd);
|
||||
return code;
|
||||
|
||||
case 200: /* OK */
|
||||
@ -510,9 +510,9 @@ dohttp(URL *u, URL *px, Range *r, Out *out, int32_t mtime)
|
||||
}
|
||||
|
||||
rv = httpheaders(fd, cfd, u, r);
|
||||
close(cfd);
|
||||
sys_close(cfd);
|
||||
if(rv != 0){
|
||||
close(fd);
|
||||
sys_close(fd);
|
||||
return rv;
|
||||
}
|
||||
|
||||
@ -531,7 +531,7 @@ dohttp(URL *u, URL *px, Range *r, Out *out, int32_t mtime)
|
||||
if(ofile != nil && u->mtime != 0){
|
||||
note.fd = out->fd;
|
||||
note.mtime = u->mtime;
|
||||
notify(catch);
|
||||
sys_notify(catch);
|
||||
}
|
||||
|
||||
tot = 0;
|
||||
@ -548,8 +548,8 @@ dohttp(URL *u, URL *px, Range *r, Out *out, int32_t mtime)
|
||||
fprint(2, "%ld %ld\n", r->start+tot, r->end);
|
||||
}
|
||||
}
|
||||
notify(nil);
|
||||
close(fd);
|
||||
sys_notify(nil);
|
||||
sys_close(fd);
|
||||
|
||||
if(ofile != nil && u->mtime != 0){
|
||||
Dir d;
|
||||
@ -559,7 +559,7 @@ dohttp(URL *u, URL *px, Range *r, Out *out, int32_t mtime)
|
||||
d.mtime = u->mtime;
|
||||
if(dirfwstat(out->fd, &d) < 0)
|
||||
fprint(2, "couldn't set mtime: %r\n");
|
||||
errstr(err, sizeof err);
|
||||
sys_errstr(err, sizeof err);
|
||||
}
|
||||
|
||||
return tot;
|
||||
@ -889,7 +889,7 @@ doftp(URL *u, URL *px, Range *r, Out *out, int32_t mtime)
|
||||
|
||||
/* if file is up to date and the right size, stop */
|
||||
if(ftprestart(ctl, out, u, r, mtime) > 0){
|
||||
close(ctl);
|
||||
sys_close(ctl);
|
||||
return Eof;
|
||||
}
|
||||
|
||||
@ -902,22 +902,22 @@ doftp(URL *u, URL *px, Range *r, Out *out, int32_t mtime)
|
||||
}
|
||||
|
||||
/* fork */
|
||||
switch(pid = rfork(RFPROC|RFFDG|RFMEM)){
|
||||
switch(pid = sys_rfork(RFPROC|RFFDG|RFMEM)){
|
||||
case -1:
|
||||
close(data);
|
||||
sys_close(data);
|
||||
return terminateftp(ctl, Error);
|
||||
case 0:
|
||||
ftpxfer(data, out, r);
|
||||
close(data);
|
||||
_exits(0);
|
||||
sys_close(data);
|
||||
sys__exits(0);
|
||||
default:
|
||||
close(data);
|
||||
sys_close(data);
|
||||
break;
|
||||
}
|
||||
|
||||
/* wait for reply message */
|
||||
rv = ftprcode(ctl, msg, sizeof(msg));
|
||||
close(ctl);
|
||||
sys_close(ctl);
|
||||
|
||||
/* wait for process to terminate */
|
||||
w = nil;
|
||||
@ -960,7 +960,7 @@ ftpcmd(int ctl, char *fmt, ...)
|
||||
fprint(2, "%d -> %s\n", ctl, buf);
|
||||
*s++ = '\r';
|
||||
*s++ = '\n';
|
||||
if(write(ctl, buf, s - buf) != s - buf)
|
||||
if(jehanne_write(ctl, buf, s - buf) != s - buf)
|
||||
return -1;
|
||||
return 0;
|
||||
}
|
||||
@ -1173,7 +1173,7 @@ active(int ctl, URL *u)
|
||||
|
||||
/* get a local address/port of the annoucement */
|
||||
if(getaddrport(dir, ipaddr, port) < 0){
|
||||
close(afd);
|
||||
sys_close(afd);
|
||||
return Error;
|
||||
}
|
||||
|
||||
@ -1181,7 +1181,7 @@ active(int ctl, URL *u)
|
||||
ftpcmd(ctl, "PORT %d,%d,%d,%d,%d,%d", ipaddr[0], ipaddr[1], ipaddr[2],
|
||||
ipaddr[3], port[0], port[1]);
|
||||
if(ftprcode(ctl, msg, sizeof(msg)) != Success){
|
||||
close(afd);
|
||||
sys_close(afd);
|
||||
werrstr("active: %s", msg);
|
||||
return Error;
|
||||
}
|
||||
@ -1189,7 +1189,7 @@ active(int ctl, URL *u)
|
||||
/* tell remote to send a file */
|
||||
ftpcmd(ctl, "RETR %s", u->page);
|
||||
if(ftprcode(ctl, msg, sizeof(msg)) != Extra){
|
||||
close(afd);
|
||||
sys_close(afd);
|
||||
werrstr("RETR: %s", msg);
|
||||
return Server;
|
||||
}
|
||||
@ -1197,17 +1197,17 @@ active(int ctl, URL *u)
|
||||
/* wait for a connection */
|
||||
lcfd = listen(dir, ldir);
|
||||
if(lcfd < 0){
|
||||
close(afd);
|
||||
sys_close(afd);
|
||||
return Error;
|
||||
}
|
||||
dfd = accept(lcfd, ldir);
|
||||
if(dfd < 0){
|
||||
close(afd);
|
||||
close(lcfd);
|
||||
sys_close(afd);
|
||||
sys_close(lcfd);
|
||||
return Error;
|
||||
}
|
||||
close(afd);
|
||||
close(lcfd);
|
||||
sys_close(afd);
|
||||
sys_close(lcfd);
|
||||
|
||||
return dfd;
|
||||
}
|
||||
@ -1221,7 +1221,7 @@ ftpxfer(int in, Out *out, Range *r)
|
||||
|
||||
vtime = 0;
|
||||
for(n = 0;;n += i){
|
||||
i = read(in, buf, sizeof(buf));
|
||||
i = jehanne_read(in, buf, sizeof(buf));
|
||||
if(i == 0)
|
||||
break;
|
||||
if(i < 0)
|
||||
@ -1240,7 +1240,7 @@ ftpxfer(int in, Out *out, Range *r)
|
||||
int
|
||||
terminateftp(int ctl, int rv)
|
||||
{
|
||||
close(ctl);
|
||||
sys_close(ctl);
|
||||
return rv;
|
||||
}
|
||||
|
||||
@ -1274,7 +1274,7 @@ readline(int fd, char *buf, int len)
|
||||
|
||||
for(p = buf;;){
|
||||
if(b.rp >= b.wp){
|
||||
n = read(fd, b.wp, sizeof(b.buf)/2);
|
||||
n = jehanne_read(fd, b.wp, sizeof(b.buf)/2);
|
||||
if(n < 0)
|
||||
return -1;
|
||||
if(n == 0){
|
||||
@ -1336,7 +1336,7 @@ readibuf(int fd, char *buf, int len)
|
||||
b.rp += n;
|
||||
return n;
|
||||
}
|
||||
return read(fd, buf, len);
|
||||
return jehanne_read(fd, buf, len);
|
||||
}
|
||||
|
||||
int
|
||||
@ -1361,11 +1361,11 @@ getaddrport(char *dir, uint8_t *ipaddr, uint8_t *port)
|
||||
char *p;
|
||||
|
||||
snprint(buf, sizeof(buf), "%s/local", dir);
|
||||
fd = open(buf, OREAD);
|
||||
fd = sys_open(buf, OREAD);
|
||||
if(fd < 0)
|
||||
return -1;
|
||||
i = read(fd, buf, sizeof(buf)-1);
|
||||
close(fd);
|
||||
i = jehanne_read(fd, buf, sizeof(buf)-1);
|
||||
sys_close(fd);
|
||||
if(i <= 0)
|
||||
return -1;
|
||||
buf[i] = 0;
|
||||
@ -1412,7 +1412,7 @@ setoffset(Out *out, int offset)
|
||||
out->offset = offset;
|
||||
out->written = offset;
|
||||
if(ofile != nil)
|
||||
if(seek(out->fd, offset, 0) != offset)
|
||||
if(sys_seek(out->fd, offset, 0) != offset)
|
||||
sysfatal("seek: %r");
|
||||
}
|
||||
|
||||
@ -1454,7 +1454,7 @@ output(Out *out, char *buf, int nb)
|
||||
}
|
||||
if(n > 0){
|
||||
out->hiwat = md5((uint8_t*)buf, n, nil, out->hiwat);
|
||||
n = write(out->fd, buf, n);
|
||||
n = jehanne_write(out->fd, buf, n);
|
||||
if(n > 0){
|
||||
out->offset += n;
|
||||
out->written += n;
|
||||
|
@ -238,7 +238,7 @@ userssave(Fs *fs, Chan *ch)
|
||||
}
|
||||
*p++ = '\n';
|
||||
if(ch == nil)
|
||||
write(2, buf, p - buf);
|
||||
jehanne_write(2, buf, p - buf);
|
||||
else if(chanwrite(ch, buf, p - buf, off) < p - buf)
|
||||
goto err;
|
||||
off += p - buf;
|
||||
|
@ -54,7 +54,7 @@ devwork(void *v)
|
||||
if(b->op & BWRITE){
|
||||
memset(buf, 0, sizeof(buf));
|
||||
pack(b, buf);
|
||||
if(pwrite(d->fd, buf, BLOCK, b->off*BLOCK) < BLOCK){
|
||||
if(sys_pwrite(d->fd, buf, BLOCK, b->off*BLOCK) < BLOCK){
|
||||
dprint("write: %r\n");
|
||||
b->error = Eio;
|
||||
}
|
||||
@ -62,7 +62,7 @@ devwork(void *v)
|
||||
int n, m;
|
||||
|
||||
for(n = 0; n < BLOCK; n += m){
|
||||
m = pread(d->fd, buf+n, BLOCK-n, b->off*BLOCK+n);
|
||||
m = sys_pread(d->fd, buf+n, BLOCK-n, b->off*BLOCK+n);
|
||||
if(m < 0)
|
||||
dprint("read: %r\n");
|
||||
if(m <= 0)
|
||||
@ -89,7 +89,7 @@ newdev(char *file)
|
||||
Buf *b;
|
||||
|
||||
d = emalloc(sizeof(*d));
|
||||
d->fd = open(file, ORDWR);
|
||||
d->fd = sys_open(file, ORDWR);
|
||||
if(d->fd < 0){
|
||||
free(d);
|
||||
return nil;
|
||||
@ -97,7 +97,7 @@ newdev(char *file)
|
||||
dir = dirfstat(d->fd);
|
||||
if(dir == nil){
|
||||
error:
|
||||
close(d->fd);
|
||||
sys_close(d->fd);
|
||||
free(d);
|
||||
return nil;
|
||||
}
|
||||
|
@ -151,7 +151,7 @@ threadmain(int argc, char **argv)
|
||||
break;
|
||||
default: usage();
|
||||
} ARGEND;
|
||||
rfork(RFNOTEG);
|
||||
sys_rfork(RFNOTEG);
|
||||
bufinit(nbuf);
|
||||
if(file == nil)
|
||||
sysfatal("no default file");
|
||||
|
@ -97,10 +97,10 @@ cgaflush(int device)
|
||||
w = 1; /* 0 must mean eof, thus this is the default */
|
||||
if((dirp = dirfstat(device)) != nil){
|
||||
if(dirp->length == 0)
|
||||
w = pwrite(device, CGA, Width*Height, 0);
|
||||
w = sys_pwrite(device, CGA, Width*Height, 0);
|
||||
free(dirp);
|
||||
} else {
|
||||
w = pwrite(device, CGA, Width*Height, 0);
|
||||
w = sys_pwrite(device, CGA, Width*Height, 0);
|
||||
}
|
||||
return w;
|
||||
}
|
||||
@ -117,8 +117,8 @@ writecga(int conswrites, int device)
|
||||
debug("writecga %d: started\n", pid);
|
||||
do
|
||||
{
|
||||
r = read(conswrites, buf, ScreenBufferSize);
|
||||
debug("writecga %d: read(conswrites) returns %d\n", pid, r);
|
||||
r = jehanne_read(conswrites, buf, ScreenBufferSize);
|
||||
debug("writecga %d: jehanne_read(conswrites) returns %d\n", pid, r);
|
||||
for(i = 0; i < r; i++)
|
||||
cgaputc(buf[i]);
|
||||
w = cgaflush(device);
|
||||
@ -126,10 +126,10 @@ writecga(int conswrites, int device)
|
||||
}
|
||||
while(r > 0 && w > 0);
|
||||
|
||||
close(conswrites);
|
||||
debug("writecga %d: close(%d)\n", pid, conswrites);
|
||||
close(device);
|
||||
debug("writecga %d: close(%d)\n", pid, device);
|
||||
sys_close(conswrites);
|
||||
debug("writecga %d: sys_close(%d)\n", pid, conswrites);
|
||||
sys_close(device);
|
||||
debug("writecga %d: sys_close(%d)\n", pid, device);
|
||||
|
||||
debug("writecga %d: shut down (r = %d, w = %d)\n", pid, r, w);
|
||||
if(r < 0)
|
||||
|
Some files were not shown because too many files have changed in this diff Show More
Loading…
x
Reference in New Issue
Block a user