From: Daniel Lezcano Date: Wed, 15 Jul 2009 21:48:22 +0000 (+0200) Subject: cleanup lxc-init X-Git-Tag: lxc_0_6_3~17 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=e46ac651751e726648de898dcdca823d3ae045f5;p=thirdparty%2Flxc.git cleanup lxc-init Make some cleanup around the parameters of lxc-init. The option mount procfs is not needed as we want to do that all the time. Signed-off-by: Daniel Lezcano --- diff --git a/src/lxc/lxc_execute.c b/src/lxc/lxc_execute.c index 9ca53b4ba..26092bb28 100644 --- a/src/lxc/lxc_execute.c +++ b/src/lxc/lxc_execute.c @@ -105,8 +105,7 @@ int main(int argc, char *argv[]) autodestroy = 1; } - /* lxc-init --mount-procfs -- .... */ - args = malloc((my_args.argc + 8)*sizeof(*args)); + args = alloca((my_args.argc + 3)*sizeof(*args)); if (!args) { ERROR("failed to allocate memory for '%s'", my_args.name); goto out; @@ -114,14 +113,14 @@ int main(int argc, char *argv[]) nbargs = 0; args[nbargs++] = LXCLIBEXECDIR "/lxc-init"; - args[nbargs++] = "--mount-procfs"; + if (my_args.log_file) { args[nbargs++] = "--logfile"; - args[nbargs++] = my_args.log_file; + args[nbargs++] = strdupa(my_args.log_file); } if (my_args.log_priority) { args[nbargs++] = "--logpriority"; - args[nbargs++] = my_args.log_priority; + args[nbargs++] = strdupa(my_args.log_priority); } if (my_args.quiet) { args[nbargs++] = "--quiet"; @@ -129,7 +128,9 @@ int main(int argc, char *argv[]) args[nbargs++] = "--"; for (opt = 0; opt < my_args.argc; opt++) - args[nbargs++] = my_args.argv[opt]; + args[nbargs++] = strdupa(my_args.argv[opt]); + + args[nbargs] = '\0'; ret = lxc_start(my_args.name, args); out: diff --git a/src/lxc/lxc_init.c b/src/lxc/lxc_init.c index 3ed99b620..b0d8fa721 100644 --- a/src/lxc/lxc_init.c +++ b/src/lxc/lxc_init.c @@ -37,15 +37,11 @@ lxc_log_define(lxc_init, lxc); -static int mount_sysfs; -static int mount_procfs; static char const *log_file; static char const *log_priority; static int quiet; static struct option options[] = { - { "mount-sysfs", no_argument, &mount_sysfs, 1 }, - { "mount-procfs", no_argument, &mount_procfs, 1 }, { "logfile", required_argument, 0, 'o' }, { "logpriority", required_argument, 0, 'l' }, { "quiet", no_argument, &quiet, 1 }, @@ -91,12 +87,7 @@ int main(int argc, char *argv[]) if (!pid) { - if (mount_sysfs && mount("sysfs", "/sys", "sysfs", 0, NULL)) { - ERROR("failed to mount '/sys' : %s", strerror(errno)); - exit(err); - } - - if (mount_procfs && mount("proc", "/proc", "proc", 0, NULL)) { + if (mount("proc", "/proc", "proc", 0, NULL)) { ERROR("failed to mount '/proc' : %s", strerror(errno)); exit(err); }