version 1.93, 2001/02/28 08:54:55 |
version 1.94, 2001/02/28 12:55:07 |
|
|
|
|
/* XXX ugly hack: nonblock is only set by the server */ |
/* XXX ugly hack: nonblock is only set by the server */ |
if (nonblock && isatty(c->rfd)) { |
if (nonblock && isatty(c->rfd)) { |
debug("channel: %d: rfd %d isatty", c->self, c->rfd); |
debug("channel %d: rfd %d isatty", c->self, c->rfd); |
c->isatty = 1; |
c->isatty = 1; |
if (!isatty(c->wfd)) { |
if (!isatty(c->wfd)) { |
error("channel: %d: wfd %d is not a tty?", |
error("channel %d: wfd %d is not a tty?", |
c->self, c->wfd); |
c->self, c->wfd); |
} |
} |
} else { |
} else { |
|
|
if (compat20 && |
if (compat20 && |
(c->flags & (CHAN_CLOSE_SENT|CHAN_CLOSE_RCVD))) { |
(c->flags & (CHAN_CLOSE_SENT|CHAN_CLOSE_RCVD))) { |
/* XXX is this true? */ |
/* XXX is this true? */ |
debug("channel: %d: no data after CLOSE", c->self); |
debug("channel %d: no data after CLOSE", c->self); |
continue; |
continue; |
} |
} |
|
|
|
|
debug2("callback done"); |
debug2("callback done"); |
} else { |
} else { |
char *service = packet_get_string(NULL); |
char *service = packet_get_string(NULL); |
debug("channel: %d rcvd request for %s", c->self, service); |
debug("channel %d: rcvd request for %s", c->self, service); |
debug("cb_fn %p cb_event %d", c->cb_fn , c->cb_event); |
debug("cb_fn %p cb_event %d", c->cb_fn , c->cb_event); |
xfree(service); |
xfree(service); |
} |
} |