These are the last of the simpler conversions. Start, execute, kill, info and attach remain to be done.
Signed-off-by: Serge Hallyn <serge.hal...@ubuntu.com> --- src/lxc/lxc_freeze.c | 26 ++++++++++++++++++++++---- src/lxc/lxc_unfreeze.c | 26 ++++++++++++++++++++++---- src/lxc/lxc_wait.c | 15 ++++++++++++--- 3 files changed, 56 insertions(+), 11 deletions(-) diff --git a/src/lxc/lxc_freeze.c b/src/lxc/lxc_freeze.c index 3bd5e28..9628e78 100644 --- a/src/lxc/lxc_freeze.c +++ b/src/lxc/lxc_freeze.c @@ -28,9 +28,12 @@ #include <lxc/lxc.h> #include <lxc/log.h> +#include <lxc/lxccontainer.h> #include "arguments.h" +lxc_log_define(lxc_freeze_ui, lxc_cgroup); + static const struct option my_longopts[] = { LXC_COMMON_OPTIONS }; @@ -51,13 +54,28 @@ Options :\n\ int main(int argc, char *argv[]) { + struct lxc_container *c; + if (lxc_arguments_parse(&my_args, argc, argv)) - return -1; + exit(1); if (lxc_log_init(my_args.name, my_args.log_file, my_args.log_priority, my_args.progname, my_args.quiet, my_args.lxcpath[0])) - return -1; + exit(1); - return lxc_freeze(my_args.name, my_args.lxcpath[0]); -} + c = lxc_container_new(my_args.name, my_args.lxcpath[0]); + if (!c) { + ERROR("No such container: %s:%s", my_args.lxcpath[0], my_args.name); + exit(1); + } + if (!c->freeze(c)) { + ERROR("Failed to freeze %s:%s", my_args.lxcpath[0], my_args.name); + lxc_container_put(c); + exit(1); + } + + lxc_container_put(c); + + return 0; +} diff --git a/src/lxc/lxc_unfreeze.c b/src/lxc/lxc_unfreeze.c index 095f290..840467a 100644 --- a/src/lxc/lxc_unfreeze.c +++ b/src/lxc/lxc_unfreeze.c @@ -27,9 +27,12 @@ #include <lxc/lxc.h> #include <lxc/log.h> +#include <lxc/lxccontainer.h> #include "arguments.h" +lxc_log_define(lxc_unfreeze_ui, lxc_cgroup); + static const struct option my_longopts[] = { LXC_COMMON_OPTIONS }; @@ -50,13 +53,28 @@ Options :\n\ int main(int argc, char *argv[]) { + struct lxc_container *c; + if (lxc_arguments_parse(&my_args, argc, argv)) - return -1; + exit(1); if (lxc_log_init(my_args.name, my_args.log_file, my_args.log_priority, my_args.progname, my_args.quiet, my_args.lxcpath[0])) - return -1; + exit(1); - return lxc_unfreeze(my_args.name, my_args.lxcpath[0]); -} + c = lxc_container_new(my_args.name, my_args.lxcpath[0]); + if (!c) { + ERROR("No such container: %s:%s", my_args.lxcpath[0], my_args.name); + exit(1); + } + if (!c->unfreeze(c)) { + ERROR("Failed to unfreeze %s:%s", my_args.lxcpath[0], my_args.name); + lxc_container_put(c); + exit(1); + } + + lxc_container_put(c); + + return 0; +} diff --git a/src/lxc/lxc_wait.c b/src/lxc/lxc_wait.c index f1a065c..afbb81a 100644 --- a/src/lxc/lxc_wait.c +++ b/src/lxc/lxc_wait.c @@ -30,7 +30,7 @@ #include <lxc/lxc.h> #include <lxc/log.h> -#include <lxc/monitor.h> +#include <lxc/lxccontainer.h> #include "arguments.h" lxc_log_define(lxc_wait_ui, lxc_monitor); @@ -80,6 +80,8 @@ Options :\n\ int main(int argc, char *argv[]) { + struct lxc_container *c; + if (lxc_arguments_parse(&my_args, argc, argv)) return -1; @@ -87,6 +89,13 @@ int main(int argc, char *argv[]) my_args.progname, my_args.quiet, my_args.lxcpath[0])) return -1; - return lxc_wait(strdup(my_args.name), my_args.states, my_args.timeout, - my_args.lxcpath[0]); + c = lxc_container_new(my_args.name, my_args.lxcpath[0]); + if (!c) + return -1; + + if (!c->wait(c, my_args.states, my_args.timeout)) { + lxc_container_put(c); + return -1; + } + return 0; } -- 1.8.3.2 ------------------------------------------------------------------------------ Introducing Performance Central, a new site from SourceForge and AppDynamics. Performance Central is your source for news, insights, analysis and resources for efficient Application Performance Management. Visit us today! http://pubads.g.doubleclick.net/gampad/clk?id=48897511&iu=/4140/ostg.clktrk _______________________________________________ Lxc-devel mailing list Lxc-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/lxc-devel