Commit 35be16d7 by Michel Normand Committed by Daniel Lezcano

ttyclient_handler is only cleanup on disconnect

this is only a code split to show the real functionality of this function that is not expecting any received data on the connection Signed-off-by: 's avatarMichel Normand <normand@fr.ibm.com> Signed-off-by: 's avatarDaniel Lezcano <dlezcano@fr.ibm.com>
parent 50c8bf05
......@@ -175,23 +175,35 @@ static int sigchld_handler(int fd, void *data,
return 1;
}
static int ttyclient_handler(int fd, void *data,
struct lxc_epoll_descr *descr)
static void ttyinfo_remove_fd(int fd, struct lxc_tty_info *tty_info)
{
int i;
struct lxc_tty_info *tty_info = data;
for (i = 0; i < tty_info->nbtty; i++) {
if (tty_info->pty_info[i].busy != fd)
continue;
lxc_mainloop_del_handler(descr, fd);
tty_info->pty_info[i].busy = 0;
close(fd);
}
return 0;
return;
}
static void command_fd_cleanup(int fd, struct lxc_tty_info *tty_info,
struct lxc_epoll_descr *descr)
{
ttyinfo_remove_fd(fd, tty_info);
lxc_mainloop_del_handler(descr, fd);
close(fd);
}
static int ttyclient_handler(int fd, void *data,
struct lxc_epoll_descr *descr)
{
struct lxc_tty_info *tty_info = data;
command_fd_cleanup(fd, tty_info, descr);
}
static int ttyservice_handler(int fd, void *data,
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment