#include <lxc/lxccontainer.h>
-// We require either the criu major/minor version, or the criu GITID if criu
-// was built from git.
-#define CRIU_VERSION "1.6"
-
-#define CRIU_GITID_VERSION "1.5"
-#define CRIU_GITID_PATCHLEVEL 133
-
-struct criu_opts {
- /* The type of criu invocation, one of "dump" or "restore" */
- char *action;
-
- /* The directory to pass to criu */
- char *directory;
-
- /* The container to dump */
- struct lxc_container *c;
-
- /* Enable criu verbose mode? */
- bool verbose;
-
- /* dump: stop the container or not after dumping? */
- bool stop;
-
- /* restore: the file to write the init process' pid into */
- char *pidfile;
- const char *cgroup_path;
-};
-
-void exec_criu(struct criu_opts *opts);
-
-/* Check and make sure the container has a configuration that we know CRIU can
- * dump. */
-bool criu_ok(struct lxc_container *c);
-
-// do_restore never returns, the calling process is used as the
-// monitor process. do_restore calls exit() if it fails.
-void do_restore(struct lxc_container *c, int pipe, char *directory, bool verbose);
+bool __criu_pre_dump(struct lxc_container *c, struct migrate_opts *opts);
+bool __criu_dump(struct lxc_container *c, struct migrate_opts *opts);
+bool __criu_restore(struct lxc_container *c, struct migrate_opts *opts);
#endif