kernel: move null and zero from #c to #0

This commit is contained in:
Giacomo Tesio 2017-01-02 00:45:27 +01:00
parent 8e7f47c743
commit c1eb65b35e
2 changed files with 17 additions and 14 deletions

View File

@ -674,7 +674,6 @@ enum{
Qkprint,
Qhostdomain,
Qhostowner,
Qnull,
Qosversion,
Qrandom,
Qreboot,
@ -684,7 +683,6 @@ enum{
Qtime,
Quser,
Qusers,
Qzero,
};
enum
@ -704,7 +702,6 @@ static Dirtab consdir[]={
"hostowner", {Qhostowner}, 0, 0664,
"kmesg", {Qkmesg}, 0, 0440,
"kprint", {Qkprint, 0, QTEXCL}, 0, DMEXCL|0440,
"null", {Qnull}, 0, 0666,
"osversion", {Qosversion}, 0, 0444,
"random", {Qrandom}, 0, 0444,
"reboot", {Qreboot}, 0, 0664,
@ -714,7 +711,6 @@ static Dirtab consdir[]={
"time", {Qtime}, NUMSIZE+3*VLNUMSIZE, 0664,
"user", {Quser}, 0, 0666,
"users", {Qusers}, 0, 0644,
"zero", {Qzero}, 0, 0444,
};
int
@ -956,9 +952,6 @@ consread(Chan *c, void *buf, long n, int64_t off)
free(b);
return n;
case Qnull:
return 0;
// case Qconfig:
// return readstr((uint32_t)offset, buf, n, configfile);
@ -1036,10 +1029,6 @@ consread(Chan *c, void *buf, long n, int64_t off)
case Qdrivers:
return devtabread(c, buf, n, off);
case Qzero:
memset(buf, 0, n);
return n;
case Qosversion:
return readstr(offset, buf, n, "2000");
@ -1127,9 +1116,6 @@ conswrite(Chan *c, void *va, long n, int64_t off)
case Qusers:
return userswrite(a, n);
case Qnull:
break;
// case Qconfig:
// error(Eperm);
// break;

View File

@ -40,6 +40,11 @@ typedef enum SelfNodes
Qsegments,
Qpipes,
Qwdir,
/* safe resources */
Qnull,
Qzero,
} SelfNodes;
typedef enum SegmentsCmd
@ -71,6 +76,9 @@ static Dirtab selfdir[]={
"segments", {Qsegments}, 0, 0644,
"pipes", {Qpipes}, 0, 0,
"wdir", {Qwdir}, 0, 0644,
"null", {Qnull}, 0, 0666,
"zero", {Qzero}, 0, 0444,
};
@ -319,6 +327,12 @@ selfread(Chan *c, void *va, long n, int64_t off)
case Qpgrpid:
return readnum(offset, va, n, up->pgrp->pgrpid, NUMSIZE);
case Qnull:
return 0;
case Qzero:
memset(va, 0, n);
return n;
default:
error(Egreg);
}
@ -466,6 +480,9 @@ selfwrite(Chan *c, void *va, long n, int64_t off)
return procsegctl(up, va, n);
case Qwdir:
return write_working_dir(up, va, n, off);
case Qnull:
return n;
}
}