if (WIFEXITED(status)) {
ret = WEXITSTATUS(status);
if (ret)
- INFO("Child <%d> ended on error (%d).", pid, ret);
+ INFO("Child <%d> ended on error (%d)", pid, ret);
}
if (WIFSIGNALED(status)) {
int signal = WTERMSIG(status);
- INFO("Child <%d> ended on signal (%d).", pid, signal);
+ INFO("Child <%d> ended on signal (%d)", pid, signal);
}
return ret;
{
/* the umount may fail */
if (umount(target))
- WARN("failed to unmount %s : %s", target, strerror(errno));
+ WARN("Failed to unmount %s : %s", target, strerror(errno));
if (mount(source, target, type, 0, NULL)) {
- ERROR("failed to mount %s : %s", target, strerror(errno));
+ ERROR("Failed to mount %s : %s", target, strerror(errno));
return -1;
}
extern void lxc_setup_fs(void)
{
if (mount_fs("proc", "/proc", "proc"))
- INFO("failed to remount proc");
+ INFO("Failed to remount proc");
/* if /dev has been populated by us, /dev/shm does not exist */
if (access("/dev/shm", F_OK) && mkdir("/dev/shm", 0777))
- INFO("failed to create /dev/shm");
+ INFO("Failed to create /dev/shm");
/* if we can't mount /dev/shm, continue anyway */
if (mount_fs("shmfs", "/dev/shm", "tmpfs"))
- INFO("failed to mount /dev/shm");
+ INFO("Failed to mount /dev/shm");
/* If we were able to mount /dev/shm, then /dev exists */
/* Sure, but it's read-only per config :) */
if (access("/dev/mqueue", F_OK) && mkdir("/dev/mqueue", 0666)) {
- DEBUG("failed to create '/dev/mqueue'");
+ DEBUG("Failed to create '/dev/mqueue'");
return;
}
/* continue even without posix message queue support */
if (mount_fs("mqueue", "/dev/mqueue", "mqueue"))
- INFO("failed to mount /dev/mqueue");
+ INFO("Failed to mount /dev/mqueue");
}
static char *copy_global_config_value(char *p)
lxc_log_options_no_override();
if (!argv[optind]) {
- ERROR("missing command to launch");
+ ERROR("Missing command to launch");
exit(EXIT_FAILURE);
}
sigdelset(&mask, SIGSEGV) ||
sigdelset(&mask, SIGBUS) ||
sigprocmask(SIG_SETMASK, &mask, &omask)) {
- SYSERROR("failed to set signal mask");
+ SYSERROR("Failed to set signal mask");
exit(EXIT_FAILURE);
}
sigdelset(&act.sa_mask, SIGBUS) ||
sigdelset(&act.sa_mask, SIGSTOP) ||
sigdelset(&act.sa_mask, SIGKILL)) {
- ERROR("failed to set signal");
+ ERROR("Failed to set signal");
exit(EXIT_FAILURE);
}
act.sa_flags = 0;
act.sa_handler = interrupt_handler;
if (sigaction(i, &act, NULL) && errno != EINVAL) {
- SYSERROR("failed to sigaction");
+ SYSERROR("Failed to sigaction");
exit(EXIT_FAILURE);
}
}
lxc_setup_fs();
pid = fork();
-
if (pid < 0)
exit(EXIT_FAILURE);
if (!pid) {
-
/* restore default signal handlers */
for (i = 1; i < NSIG; i++)
signal(i, SIG_DFL);
if (sigprocmask(SIG_SETMASK, &omask, NULL)) {
- SYSERROR("failed to set signal mask");
+ SYSERROR("Failed to set signal mask");
exit(EXIT_FAILURE);
}
- NOTICE("about to exec '%s'", aargv[0]);
+ NOTICE("About to exec '%s'", aargv[0]);
execvp(aargv[0], aargv);
- ERROR("failed to exec: '%s' : %s", aargv[0], strerror(errno));
+ ERROR("Failed to exec: '%s' : %s", aargv[0], strerror(errno));
exit(err);
}
/* let's process the signals now */
if (sigdelset(&omask, SIGALRM) ||
sigprocmask(SIG_SETMASK, &omask, NULL)) {
- SYSERROR("failed to set signal mask");
+ SYSERROR("Failed to set signal mask");
exit(EXIT_FAILURE);
}
pid_t waited_pid;
switch (was_interrupted) {
-
case 0:
break;
-
case SIGPWR:
case SIGTERM:
if (!shutdown) {
alarm(1);
}
break;
-
case SIGALRM:
kill(-1, SIGKILL);
break;
-
default:
kill(pid, was_interrupted);
break;
if (errno == EINTR)
continue;
- ERROR("failed to wait child : %s",
+ ERROR("Failed to wait child : %s",
strerror(errno));
goto out;
}