summaryrefslogtreecommitdiffstats
path: root/perl
diff options
context:
space:
mode:
authorRichard W.M. Jones <rjones@redhat.com>2009-05-13 17:51:14 +0100
committerRichard W.M. Jones <rjones@redhat.com>2009-05-13 17:51:14 +0100
commite8ecc08f663b44f3d79517affe52f137858dfe00 (patch)
tree0bee77cb454884699d671f5b1ef264ba4fde5f9e /perl
parent5b17af107f75a0d6f3a39b88b9c18714014eb7af (diff)
downloadlibguestfs-e8ecc08f663b44f3d79517affe52f137858dfe00.tar.gz
libguestfs-e8ecc08f663b44f3d79517affe52f137858dfe00.tar.xz
libguestfs-e8ecc08f663b44f3d79517affe52f137858dfe00.zip
Add 'append', LIBGUESTFS_APPEND to set additional kernel options.
Diffstat (limited to 'perl')
-rw-r--r--perl/Guestfs.xs24
-rw-r--r--perl/lib/Sys/Guestfs.pm21
2 files changed, 45 insertions, 0 deletions
diff --git a/perl/Guestfs.xs b/perl/Guestfs.xs
index 5ce5def1..973f56e5 100644
--- a/perl/Guestfs.xs
+++ b/perl/Guestfs.xs
@@ -219,6 +219,30 @@ PREINIT:
RETVAL
void
+set_append (g, append)
+ guestfs_h *g;
+ char *append;
+PREINIT:
+ int r;
+ PPCODE:
+ r = guestfs_set_append (g, append);
+ if (r == -1)
+ croak ("set_append: %s", guestfs_last_error (g));
+
+SV *
+get_append (g)
+ guestfs_h *g;
+PREINIT:
+ const char *append;
+ CODE:
+ append = guestfs_get_append (g);
+ if (append == NULL)
+ croak ("get_append: %s", guestfs_last_error (g));
+ RETVAL = newSVpv (append, 0);
+ OUTPUT:
+ RETVAL
+
+void
set_autosync (g, autosync)
guestfs_h *g;
int autosync;
diff --git a/perl/lib/Sys/Guestfs.pm b/perl/lib/Sys/Guestfs.pm
index 001fa880..d803ce11 100644
--- a/perl/lib/Sys/Guestfs.pm
+++ b/perl/lib/Sys/Guestfs.pm
@@ -561,6 +561,13 @@ Checking or repairing NTFS volumes is not supported
This command is entirely equivalent to running C<fsck -a -t fstype device>.
+=item $append = $h->get_append ();
+
+Return the additional kernel options which are added to the
+guest kernel command line.
+
+If C<NULL> then no options are added.
+
=item $autosync = $h->get_autosync ();
Get the autosync flag.
@@ -874,6 +881,20 @@ command.
Remove the single directory C<path>.
+=item $h->set_append ($append);
+
+This function is used to add additional options to the
+guest kernel command line.
+
+The default is C<NULL> unless overridden by setting
+C<LIBGUESTFS_APPEND> environment variable.
+
+The string C<append> is stashed in the libguestfs handle, so the caller
+must make sure it remains valid for the lifetime of the handle.
+
+Setting C<append> to C<NULL> means I<no> additional options
+are passed (libguestfs always adds a few of its own).
+
=item $h->set_autosync ($autosync);
If C<autosync> is true, this enables autosync. Libguestfs will make a