From: Christian Brauner Date: Fri, 23 Feb 2018 13:21:51 +0000 (+0100) Subject: lxccontainer: do_add_remove_node() X-Git-Tag: lxc-2.0.10~238 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=9717124c1353f481be108eb9ef975ca7afa0dd7b;p=thirdparty%2Flxc.git lxccontainer: do_add_remove_node() thread-safety: s/exit()/_exit()/g Signed-off-by: Christian Brauner --- diff --git a/src/lxc/lxccontainer.c b/src/lxc/lxccontainer.c index 291c4455a..7b82e9d56 100644 --- a/src/lxc/lxccontainer.c +++ b/src/lxc/lxccontainer.c @@ -3975,11 +3975,11 @@ static bool do_add_remove_node(pid_t init_pid, const char *path, bool add, ret = chroot(chrootpath); if (ret < 0) - exit(EXIT_FAILURE); + _exit(EXIT_FAILURE); ret = chdir("/"); if (ret < 0) - exit(EXIT_FAILURE); + _exit(EXIT_FAILURE); /* remove path if it exists */ ret = faccessat(AT_FDCWD, path, F_OK, AT_SYMLINK_NOFOLLOW); @@ -3987,24 +3987,24 @@ static bool do_add_remove_node(pid_t init_pid, const char *path, bool add, ret = unlink(path); if (ret < 0) { ERROR("%s - Failed to remove \"%s\"", strerror(errno), path); - exit(EXIT_FAILURE); + _exit(EXIT_FAILURE); } } if (!add) - exit(EXIT_SUCCESS); + _exit(EXIT_SUCCESS); /* create any missing directories */ tmp = strdup(path); if (!tmp) - exit(EXIT_FAILURE); + _exit(EXIT_FAILURE); directory_path = dirname(tmp); ret = mkdir_p(directory_path, 0755); if (ret < 0 && errno != EEXIST) { ERROR("%s - Failed to create path \"%s\"", strerror(errno), directory_path); free(tmp); - exit(EXIT_FAILURE); + _exit(EXIT_FAILURE); } /* create the device node */ @@ -4012,10 +4012,10 @@ static bool do_add_remove_node(pid_t init_pid, const char *path, bool add, free(tmp); if (ret < 0) { ERROR("%s - Failed to create device node at \"%s\"", strerror(errno), path); - exit(EXIT_FAILURE); + _exit(EXIT_FAILURE); } - exit(EXIT_SUCCESS); + _exit(EXIT_SUCCESS); } static bool add_remove_device_node(struct lxc_container *c, const char *src_path, const char *dest_path, bool add)