aboutsummaryrefslogtreecommitdiffstats
path: root/builtin-setup.c
diff options
context:
space:
mode:
authorSasha Levin <levinsasha928@gmail.com>2011-09-12 20:25:28 +0300
committerWill Deacon <will.deacon@arm.com>2015-06-01 16:39:47 +0100
commitc867574139c820893bb553af435d92e19f1aefc0 (patch)
tree343f57d8e71e38f2c18bac15b9564b4441081553 /builtin-setup.c
parent90ef0dc67578c90026befefb3fde6cc5eadb1282 (diff)
downloadkvmtool-c867574139c820893bb553af435d92e19f1aefc0.tar.gz
kvm tools: Modify 'kvm run' to use virt fs
'kvm run' will now create a 'default' profile and boot into it. Currently we boot into rw rootfs of the host, which is risky. Instead, we can boot in a 'safe' enviroment with networking. Signed-off-by: Sasha Levin <levinsasha928@gmail.com> Signed-off-by: Pekka Enberg <penberg@kernel.org>
Diffstat (limited to 'builtin-setup.c')
-rw-r--r--builtin-setup.c13
1 files changed, 10 insertions, 3 deletions
diff --git a/builtin-setup.c b/builtin-setup.c
index f7588ddf..c93eec3a 100644
--- a/builtin-setup.c
+++ b/builtin-setup.c
@@ -159,13 +159,13 @@ static void make_root_dir(void)
mkdir(name, 0777);
}
-static void make_dir(const char *dir)
+static int make_dir(const char *dir)
{
char name[PATH_MAX];
snprintf(name, PATH_MAX, "%s%s%s", HOME_DIR, KVM_PID_FILE_PATH, dir);
- mkdir(name, 0777);
+ return mkdir(name, 0777);
}
static void make_guestfs_dir(const char *guestfs_name, const char *dir)
@@ -184,7 +184,9 @@ static int do_setup(const char *guestfs_name)
make_root_dir();
- make_dir(guestfs_name);
+ ret = make_dir(guestfs_name);
+ if (ret < 0)
+ return ret;
for (i = 0; i < ARRAY_SIZE(guestfs_dirs); i++)
make_guestfs_dir(guestfs_name, guestfs_dirs[i]);
@@ -200,6 +202,11 @@ static int do_setup(const char *guestfs_name)
return copy_init(guestfs_name);
}
+int kvm_setup_create_new(const char *guestfs_name)
+{
+ return do_setup(guestfs_name);
+}
+
int kvm_cmd_setup(int argc, const char **argv, const char *prefix)
{
parse_setup_options(argc, argv);