diff options
author | Richard Jones <rjones@trick.home.annexia.org> | 2009-06-02 14:24:16 +0100 |
---|---|---|
committer | Richard Jones <rjones@trick.home.annexia.org> | 2009-06-02 14:24:16 +0100 |
commit | bfdc03be234d6d95f18450846433bce4f97e184c (patch) | |
tree | 09e9395c190fd74ddda85dcc2affd7ac49252bb2 /src/guestfs.c | |
parent | 5abae435f0cb239b70878968e040d61a6730b897 (diff) | |
download | libguestfs-bfdc03be234d6d95f18450846433bce4f97e184c.tar.gz libguestfs-bfdc03be234d6d95f18450846433bce4f97e184c.tar.xz libguestfs-bfdc03be234d6d95f18450846433bce4f97e184c.zip |
Add 'add_drive_ro' call. Fix up documentation. Plus a couple of minor code improvements in the tests.
Diffstat (limited to 'src/guestfs.c')
-rw-r--r-- | src/guestfs.c | 21 |
1 files changed, 21 insertions, 0 deletions
diff --git a/src/guestfs.c b/src/guestfs.c index c5056d44..fea8107d 100644 --- a/src/guestfs.c +++ b/src/guestfs.c @@ -670,6 +670,27 @@ guestfs_add_drive (guestfs_h *g, const char *filename) } int +guestfs_add_drive_ro (guestfs_h *g, const char *filename) +{ + size_t len = strlen (filename) + 64; + char buf[len]; + + if (strchr (filename, ',') != NULL) { + error (g, _("filename cannot contain ',' (comma) character")); + return -1; + } + + if (access (filename, F_OK) == -1) { + perrorf (g, "%s", filename); + return -1; + } + + snprintf (buf, len, "file=%s,snapshot=on", filename); + + return guestfs_config (g, "-drive", buf); +} + +int guestfs_add_cdrom (guestfs_h *g, const char *filename) { if (strchr (filename, ',') != NULL) { |