- if (!strcmp(cb->f[1], "on"))
- Fsconvnonblock(c, TRUE);
- else if (!strcmp(cb->f[1], "off"))
- Fsconvnonblock(c, FALSE);
- else
+ if (!strcmp(cb->f[1], "rd")) {
+ qhangup(cv->rq, "shutdown");
+ if (cv->p->shutdown)
+ cv->p->shutdown(cv, SHUT_RD);
+ } else if (!strcmp(cb->f[1], "wr")) {
+ qhangup(cv->wq, "shutdown");
+ if (cv->p->shutdown)
+ cv->p->shutdown(cv, SHUT_WR);
+ } else if (!strcmp(cb->f[1], "rdwr")) {
+ qhangup(cv->rq, "shutdown");
+ qhangup(cv->wq, "shutdown");
+ if (cv->p->shutdown)
+ cv->p->shutdown(cv, SHUT_RDWR);
+ } else {