Commit a31b2048 by Cedric Le Goater Committed by Daniel Lezcano

add --define to restart

parent 20117280
/*
* lxc: linux Container library
*
* (C) Copyright IBM Corp. 2007, 2008
* (C) Copyright IBM Corp. 2007, 2010
*
* Authors:
* Daniel Lezcano <dlezcano at fr.ibm.com>
......@@ -25,11 +25,14 @@
#undef _GNU_SOURCE
#include <stdlib.h>
#include <unistd.h>
#include <errno.h>
#include <sys/types.h>
#include <lxc/lxc.h>
#include <lxc/log.h>
#include "log.h"
#include "lxc.h"
#include "conf.h"
#include "config.h"
#include "confile.h"
#include "arguments.h"
lxc_log_define(lxc_restart_ui, lxc_restart);
......@@ -81,6 +84,9 @@ Options :\n\
int main(int argc, char *argv[])
{
char *rcfile = NULL;
struct lxc_conf *conf;
if (lxc_arguments_parse(&my_args, argc, argv))
return -1;
......@@ -88,6 +94,33 @@ int main(int argc, char *argv[])
my_args.progname, my_args.quiet))
return -1;
return lxc_restart(my_args.name, my_args.statefile, my_args.rcfile,
/* rcfile is specified in the cli option */
if (my_args.rcfile)
rcfile = (char *)my_args.rcfile;
else {
if (!asprintf(&rcfile, LXCPATH "/%s/config", my_args.name)) {
SYSERROR("failed to allocate memory");
return -1;
}
/* container configuration does not exist */
if (access(rcfile, F_OK)) {
free(rcfile);
rcfile = NULL;
}
}
conf = lxc_conf_init();
if (!conf) {
ERROR("failed to initialize configuration");
return -1;
}
if (rcfile && lxc_config_read(rcfile, conf)) {
ERROR("failed to read configuration file");
return -1;
}
return lxc_restart(my_args.name, my_args.statefile, conf,
my_args.flags);
}
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment