version 1.53, 2000/05/01 19:11:35 |
version 1.54, 2000/05/01 20:21:40 |
|
|
channel_close_fds(Channel *c) |
channel_close_fds(Channel *c) |
{ |
{ |
if (c->sock != -1) { |
if (c->sock != -1) { |
shutdown(c->sock, SHUT_RDWR); |
|
close(c->sock); |
close(c->sock); |
c->sock = -1; |
c->sock = -1; |
} |
} |
|
|
debug("channel_free: channel %d: dettaching channel user", id); |
debug("channel_free: channel %d: dettaching channel user", id); |
c->dettach_user(c->self, NULL); |
c->dettach_user(c->self, NULL); |
} |
} |
|
if (c->sock != -1) |
|
shutdown(c->sock, SHUT_RDWR); |
channel_close_fds(c); |
channel_close_fds(c); |
buffer_free(&c->input); |
buffer_free(&c->input); |
buffer_free(&c->output); |
buffer_free(&c->output); |