CHAN_INPUT_CLOSED
if (c->efd != -1 && !(c->istate == CHAN_INPUT_CLOSED &&
force = c->isatty && c->detach_close && c->istate != CHAN_INPUT_CLOSED;
force = c->isatty && c->detach_close && c->istate != CHAN_INPUT_CLOSED;
other->istate = CHAN_INPUT_CLOSED;
chan_set_istate(c, CHAN_INPUT_CLOSED);
chan_set_istate(c, CHAN_INPUT_CLOSED);
c->istate != CHAN_INPUT_CLOSED) {
chan_set_istate(c, CHAN_INPUT_CLOSED);
chan_set_istate(c, CHAN_INPUT_CLOSED);
chan_set_istate(c, CHAN_INPUT_CLOSED);
if (c->istate != CHAN_INPUT_CLOSED || c->ostate != CHAN_OUTPUT_CLOSED)
if (c->istate > CHAN_INPUT_CLOSED || next > CHAN_INPUT_CLOSED)