summaryrefslogtreecommitdiffstats
path: root/perl
diff options
context:
space:
mode:
authorRichard W.M. Jones <rjones@redhat.com>2009-06-23 15:53:44 +0100
committerRichard W.M. Jones <rjones@redhat.com>2009-06-23 15:53:44 +0100
commitbcb3fc0c3336c05e9ecbbfb25c7c31b42bd3e32e (patch)
tree80042c722c65911c3a3b55a275daefff96220e7f /perl
parentda7cf3670fe60301beeb175ff6c284b737d5b7f4 (diff)
downloadlibguestfs-bcb3fc0c3336c05e9ecbbfb25c7c31b42bd3e32e.tar.gz
libguestfs-bcb3fc0c3336c05e9ecbbfb25c7c31b42bd3e32e.tar.xz
libguestfs-bcb3fc0c3336c05e9ecbbfb25c7c31b42bd3e32e.zip
Generated code for 'scrub-*' commands.
Diffstat (limited to 'perl')
-rw-r--r--perl/Guestfs.xs33
-rw-r--r--perl/lib/Sys/Guestfs.pm36
2 files changed, 68 insertions, 1 deletions
diff --git a/perl/Guestfs.xs b/perl/Guestfs.xs
index 5905dc5e..4b059101 100644
--- a/perl/Guestfs.xs
+++ b/perl/Guestfs.xs
@@ -2602,3 +2602,36 @@ PREINIT:
}
free (paths);
+void
+scrub_device (g, device)
+ guestfs_h *g;
+ char *device;
+PREINIT:
+ int r;
+ PPCODE:
+ r = guestfs_scrub_device (g, device);
+ if (r == -1)
+ croak ("scrub_device: %s", guestfs_last_error (g));
+
+void
+scrub_file (g, file)
+ guestfs_h *g;
+ char *file;
+PREINIT:
+ int r;
+ PPCODE:
+ r = guestfs_scrub_file (g, file);
+ if (r == -1)
+ croak ("scrub_file: %s", guestfs_last_error (g));
+
+void
+scrub_freespace (g, dir)
+ guestfs_h *g;
+ char *dir;
+PREINIT:
+ int r;
+ PPCODE:
+ r = guestfs_scrub_freespace (g, dir);
+ if (r == -1)
+ croak ("scrub_freespace: %s", guestfs_last_error (g));
+
diff --git a/perl/lib/Sys/Guestfs.pm b/perl/lib/Sys/Guestfs.pm
index 436f218c..9c5aa183 100644
--- a/perl/lib/Sys/Guestfs.pm
+++ b/perl/lib/Sys/Guestfs.pm
@@ -115,7 +115,7 @@ for whatever operations you want to perform (ie. read access if you
just want to read the image or write access if you want to modify the
image).
-This is equivalent to the qemu parameter C<-drive file=filename>.
+This is equivalent to the qemu parameter C<-drive file=filename,cache=off>.
Note that this call checks for the existence of C<filename>. This
stops you from specifying other types of drive which are supported
@@ -999,6 +999,38 @@ command.
Remove the single directory C<path>.
+=item $h->scrub_device ($device);
+
+This command writes patterns over C<device> to make data retrieval
+more difficult.
+
+It is an interface to the L<scrub(1)> program. See that
+manual page for more details.
+
+B<This command is dangerous. Without careful use you
+can easily destroy all your data>.
+
+=item $h->scrub_file ($file);
+
+This command writes patterns over a file to make data retrieval
+more difficult.
+
+The file is I<removed> after scrubbing.
+
+It is an interface to the L<scrub(1)> program. See that
+manual page for more details.
+
+=item $h->scrub_freespace ($dir);
+
+This command creates the directory C<dir> and then fills it
+with files until the filesystem is full, and scrubs the files
+as for C<$h-E<gt>scrub_file>, and deletes them.
+The intention is to scrub any free space on the partition
+containing C<dir>.
+
+It is an interface to the L<scrub(1)> program. See that
+manual page for more details.
+
=item $h->set_append ($append);
This function is used to add additional options to the
@@ -1365,6 +1397,8 @@ How many blocks are zeroed isn't specified (but it's I<not> enough
to securely wipe the device). It should be sufficient to remove
any partition tables, filesystem superblocks and so on.
+See also: C<$h-E<gt>scrub_device>.
+
=item $h->zerofree ($device);
This runs the I<zerofree> program on C<device>. This program