void fsread(Req *r) { char *s; switch((int)r->fid->qid.path){ case Qroot: dirread9p(r, rootgen, nil); respond(r, nil); break; case Qdir: dirread9p(r, dirgen, nil); respond(r, nil); break; case Qctl: s = ctlstring(); readstr(r, s); free(s); respond(r, nil); break; default: rdwrpart(r); break; } }
void fswrite(Req *r) { switch((int)r->fid->qid.path){ case Qroot: case Qdir: respond(r, "write to a directory?"); break; case Qctl: ctlwrite(r); break; default: rdwrpart(r); break; } }