]> git.ipfire.org Git - thirdparty/lxc.git/commitdiff
c/r: check state before doing a checkpoint/restore 1274/head
authorTycho Andersen <tycho.andersen@canonical.com>
Thu, 3 Nov 2016 18:01:09 +0000 (12:01 -0600)
committerTycho Andersen <tycho.andersen@canonical.com>
Thu, 3 Nov 2016 18:01:09 +0000 (12:01 -0600)
This would already fail, but with a not-as-good error message. Let's make
the error better.

Signed-off-by: Tycho Andersen <tycho.andersen@canonical.com>
src/lxc/lxccontainer.c

index a1c94a1a467519f42603cee113b211c82d138022..3a9e1e39f268dabf47c54b9359effac75b6453fa 100644 (file)
@@ -3994,12 +3994,24 @@ static int do_lxcapi_migrate(struct lxc_container *c, unsigned int cmd,
 
        switch (cmd) {
        case MIGRATE_PRE_DUMP:
+               if (!do_lxcapi_is_running(c)) {
+                       ERROR("container is not running");
+                       return false;
+               }
                ret = !__criu_pre_dump(c, valid_opts);
                break;
        case MIGRATE_DUMP:
+               if (!do_lxcapi_is_running(c)) {
+                       ERROR("container is not running");
+                       return false;
+               }
                ret = !__criu_dump(c, valid_opts);
                break;
        case MIGRATE_RESTORE:
+               if (do_lxcapi_is_running(c)) {
+                       ERROR("container is already running");
+                       return false;
+               }
                ret = !__criu_restore(c, valid_opts);
                break;
        default: