-
lxc-attach: attach even without sigwinch handler · 341c2aedChristian Brauner authored
lxc_console_create() calls lxc_console_peer_default() which in turn calls lxc_console_sigwinch_init() which sets up the lxc_tty_state struct for the current pty. Prior to this commit lxc_console_sigwinch_init() would consider failures to install a SIGWINCH handler fatal and and return NULL. This commit makes failures to install a SIGWINCH handler non-fatal. In such cases the lxc_tty_state struct will still be set up but the sigfd member, which contains the fd which receives SIGWINCH events, will be set to -1. (This also entails that the sigset_t oldmaks field is meaningless.) Callers of lxc_console_sigwinch_init() and lxc_console_sigwinch_fini() should thus make sure that sigfd >= 0 or sigfd != -1 before trying to register a SIGWINCH handler in e.g. an lxc_mainloop or resetting the sigmask (cf. lxc_attach.c). These changes also imply that lxc_console_sigwinch_init() only fails with ENOMEM. Thus, all cases where lxc_console_sigwinch_init() returns NULL are to be considered fatal. This wasn't the case before this commit. Signed-off-by:Christian Brauner <christian.brauner@mailbox.org>
341c2aed
| Name |
Last commit
|
Last update |
|---|---|---|
| .. | ||
| include | Loading commit data... | |
| lua-lxc | Loading commit data... | |
| lxc | Loading commit data... | |
| python-lxc | Loading commit data... | |
| tests | Loading commit data... | |
| Makefile.am | Loading commit data... |