]> git.proxmox.com Git - mirror_lxc.git/commitdiff
tools: lxc-snapshot: share internal API symbols
author2xsec <dh48.jeong@samsung.com>
Fri, 29 Jun 2018 13:11:55 +0000 (22:11 +0900)
committer2xsec <dh48.jeong@samsung.com>
Sat, 30 Jun 2018 09:45:22 +0000 (18:45 +0900)
Signed-off-by: 2xsec <dh48.jeong@samsung.com>
src/lxc/Makefile.am
src/lxc/tools/lxc_snapshot.c

index 6f90f8d51c93b9e1f04c1bb7ebb962225fb72659..09875e4f0e4526fdc81592617f95374268fcbb0d 100644 (file)
@@ -285,7 +285,7 @@ lxc_unfreeze_SOURCES = tools/lxc_unfreeze.c tools/arguments.c
 lxc_unshare_SOURCES = tools/lxc_unshare.c tools/arguments.c
 lxc_wait_SOURCES = tools/lxc_wait.c tools/arguments.c
 lxc_create_SOURCES = tools/lxc_create.c tools/arguments.c tools/tool_utils.c
-lxc_snapshot_SOURCES = tools/lxc_snapshot.c tools/arguments.c tools/tool_utils.c
+lxc_snapshot_SOURCES = tools/lxc_snapshot.c tools/arguments.c
 lxc_checkpoint_SOURCES = tools/lxc_checkpoint.c tools/arguments.c
 endif
 
index 535941f52c716ae21ad4d3b2cc20be19f6fe7250..55062a344e86597a2960ce85a13add5386e25977 100644 (file)
@@ -30,7 +30,9 @@
 #include <lxc/lxccontainer.h>
 
 #include "arguments.h"
-#include "tool_utils.h"
+#include "log.h"
+
+lxc_log_define(lxc_snapshot, lxc);
 
 static int my_parser(struct lxc_arguments *args, int c, char *arg);
 
@@ -99,42 +101,42 @@ int main(int argc, char *argv[])
 
        if (geteuid()) {
                if (access(my_args.lxcpath[0], O_RDONLY) < 0) {
-                       fprintf(stderr, "You lack access to %s\n",
-                               my_args.lxcpath[0]);
+                       ERROR("You lack access to %s", my_args.lxcpath[0]);
                        exit(EXIT_FAILURE);
                }
        }
 
        c = lxc_container_new(my_args.name, my_args.lxcpath[0]);
        if (!c) {
-               fprintf(stderr, "System error loading container\n");
+               ERROR("System error loading container");
                exit(EXIT_FAILURE);
        }
 
        if (my_args.rcfile) {
                c->clear_config(c);
+
                if (!c->load_config(c, my_args.rcfile)) {
-                       fprintf(stderr, "Failed to load rcfile\n");
+                       ERROR("Failed to load rcfile");
                        lxc_container_put(c);
                        exit(EXIT_FAILURE);
                }
+
                c->configfile = strdup(my_args.rcfile);
                if (!c->configfile) {
-                       fprintf(stderr, "Out of memory setting new config filename\n");
+                       ERROR("Out of memory setting new config filename");
                        lxc_container_put(c);
                        exit(EXIT_FAILURE);
                }
        }
 
        if (!c->lxc_conf) {
-               fprintf(stderr, "No container config specified\n");
+               ERROR("No container config specified");
                lxc_container_put(c);
                exit(EXIT_FAILURE);
        }
 
        if (!c->may_control(c)) {
-               fprintf(stderr, "Insufficent privileges to control %s\n",
-                       my_args.name);
+               ERROR("Insufficent privileges to control %s", my_args.name);
                lxc_container_put(c);
                exit(EXIT_FAILURE);
        }
@@ -145,6 +147,7 @@ int main(int argc, char *argv[])
 
        if (ret == 0)
                exit(EXIT_SUCCESS);
+
        exit(EXIT_FAILURE);
 }
 
@@ -207,7 +210,7 @@ static int do_snapshot(struct lxc_container *c, char *commentfile)
 
        ret = c->snapshot(c, commentfile);
        if (ret < 0) {
-               fprintf(stderr, "Error creating a snapshot\n");
+               ERROR("Error creating a snapshot");
                return -1;
        }
 
@@ -218,13 +221,13 @@ static int do_snapshot_destroy(struct lxc_container *c, char *snapname)
 {
        bool ret;
 
-       if (strcmp(snapname, "ALL") == 0)
+       if (!strncmp(snapname, "ALL", strlen(snapname)))
                ret = c->snapshot_destroy_all(c);
        else
                ret = c->snapshot_destroy(c, snapname);
 
        if (!ret) {
-               fprintf(stderr, "Error destroying snapshot %s\n", snapname);
+               ERROR("Error destroying snapshot %s", snapname);
                return -1;
        }
 
@@ -238,9 +241,10 @@ static int do_snapshot_list(struct lxc_container *c, int print_comments)
 
        n = c->snapshot_list(c, &s);
        if (n < 0) {
-               fprintf(stderr, "Error listing snapshots\n");
+               ERROR("Error listing snapshots");
                return -1;
        }
+
        if (n == 0) {
                printf("No snapshots\n");
                return 0;
@@ -248,8 +252,10 @@ static int do_snapshot_list(struct lxc_container *c, int print_comments)
 
        for (i = 0; i < n; i++) {
                printf("%s (%s) %s\n", s[i].name, s[i].lxcpath, s[i].timestamp);
+
                if (print_comments)
                        print_file(s[i].comment_pathname);
+
                s[i].free(&s[i]);
        }
 
@@ -269,7 +275,7 @@ static int do_snapshot_restore(struct lxc_container *c,
         * original container will be destroyed and the restored container will
         * take its place. */
        if ((!args->newname) && (args->argc > 1)) {
-               lxc_error(args, "Too many arguments");
+               ERROR("Too many arguments");
                return -1;
        }
 
@@ -278,7 +284,7 @@ static int do_snapshot_restore(struct lxc_container *c,
 
        bret = c->snapshot_restore(c, args->snapname, args->newname);
        if (!bret) {
-               fprintf(stderr, "Error restoring snapshot %s\n", args->snapname);
+               ERROR("Error restoring snapshot %s", args->snapname);
                return -1;
        }
 
@@ -287,19 +293,19 @@ static int do_snapshot_restore(struct lxc_container *c,
 
 static void print_file(char *path)
 {
-       if (!path)
-               return;
-
-       FILE *f = fopen(path, "r");
+       FILE *f;
        char *line = NULL;
        size_t sz = 0;
 
+       if (!path)
+               return;
+
+       f = fopen(path, "r");
        if (!f)
                return;
 
-       while (getline(&line, &sz, f) != -1) {
+       while (getline(&line, &sz, f) != -1)
                printf("%s", line);
-       }
 
        free(line);
        fclose(f);