mirror of
https://git.proxmox.com/git/mirror_lxc
synced 2025-07-27 09:48:32 +00:00
remove redundent LXC_TTY_HANDLER
All the signals (except fatal ones) are redirected to signalfd at lxc_init, so the LXC_TTY_HANDLERs are redundant. This patch removes them. Signed-off-by: Jian Xiao <jian@linux.vnet.ibm.com> Signed-off-by: Daniel Lezcano <dlezcano@fr.ibm.com>
This commit is contained in:
parent
aa198728a8
commit
307cf2a670
@ -129,9 +129,6 @@ int signalfd(int fd, const sigset_t *mask, int flags)
|
||||
|
||||
lxc_log_define(lxc_start, lxc);
|
||||
|
||||
LXC_TTY_HANDLER(SIGINT);
|
||||
LXC_TTY_HANDLER(SIGQUIT);
|
||||
|
||||
static int match_fd(int fd)
|
||||
{
|
||||
return (fd == 0 || fd == 1 || fd == 2);
|
||||
@ -564,10 +561,6 @@ int __lxc_start(const char *name, struct lxc_conf *conf,
|
||||
goto out_fini;
|
||||
}
|
||||
|
||||
/* Avoid signals from terminal */
|
||||
LXC_TTY_ADD_HANDLER(SIGINT);
|
||||
LXC_TTY_ADD_HANDLER(SIGQUIT);
|
||||
|
||||
err = lxc_poll(name, handler);
|
||||
if (err) {
|
||||
ERROR("mainloop exited with an error");
|
||||
@ -579,8 +572,6 @@ int __lxc_start(const char *name, struct lxc_conf *conf,
|
||||
|
||||
err = lxc_error_set_and_log(handler->pid, status);
|
||||
out_fini:
|
||||
LXC_TTY_DEL_HANDLER(SIGQUIT);
|
||||
LXC_TTY_DEL_HANDLER(SIGINT);
|
||||
lxc_cgroup_destroy(name);
|
||||
lxc_fini(name, handler);
|
||||
return err;
|
||||
|
@ -23,34 +23,9 @@
|
||||
#ifndef _utils_h
|
||||
#define _utils_h
|
||||
|
||||
#define LXC_TTY_HANDLER(s) \
|
||||
static struct sigaction lxc_tty_sa_##s; \
|
||||
static void tty_##s##_handler(int sig, siginfo_t *info, void *ctx) \
|
||||
{ \
|
||||
if (lxc_tty_sa_##s.sa_handler == SIG_DFL || \
|
||||
lxc_tty_sa_##s.sa_handler == SIG_IGN) \
|
||||
return; \
|
||||
(*lxc_tty_sa_##s.sa_sigaction)(sig, info, ctx); \
|
||||
}
|
||||
|
||||
#define LXC_TTY_ADD_HANDLER(s) \
|
||||
do { \
|
||||
struct sigaction sa; \
|
||||
sa.sa_sigaction = tty_##s##_handler; \
|
||||
sa.sa_flags = SA_SIGINFO; \
|
||||
sigfillset(&sa.sa_mask); \
|
||||
/* No error expected with sigaction. */ \
|
||||
sigaction(s, &sa, &lxc_tty_sa_##s); \
|
||||
} while (0)
|
||||
|
||||
#define LXC_TTY_DEL_HANDLER(s) \
|
||||
do { \
|
||||
sigaction(s, &lxc_tty_sa_##s, NULL); \
|
||||
} while (0)
|
||||
|
||||
#endif
|
||||
|
||||
extern int lxc_copy_file(const char *src, const char *dst);
|
||||
extern int lxc_setup_fs(void);
|
||||
extern int get_u16(ushort *val, const char *arg, int base);
|
||||
extern int mkdir_p(const char *dir, mode_t mode);
|
||||
|
||||
#endif
|
||||
|
Loading…
Reference in New Issue
Block a user