From: "Richard W.M. Jones" <rjones(a)redhat.com>
By using the once_had_no_optargs flag, this change is backwards
compatible for callers (except Haskell, PHP and GObject as discussed
in earlier commit).
---
erlang/examples/create_disk.erl | 4 ++--
erlang/examples/guestfs-erlang.pod | 10 +++++-----
erlang/examples/inspect_vm.erl | 2 +-
fish/guestfish.pod | 8 ++++----
generator/generator_actions.ml | 26 +++++---------------------
gobject/Makefile.am | 6 +++++-
gobject/Makefile.inc | 4 ++--
gobject/tests-misc.js | 2 +-
haskell/Guestfs010Basic.hs | 2 +-
java/examples/CreateDisk.java | 2 +-
java/examples/InspectVM.java | 2 +-
java/examples/guestfs-java.pod | 2 +-
java/t/GuestFS080OptArgs.java | 8 ++++----
ocaml/examples/create_disk.ml | 2 +-
ocaml/examples/guestfs-ocaml.pod | 4 ++--
ocaml/examples/inspect_vm.ml | 2 +-
ocaml/t/guestfs_080_optargs.ml | 9 ++++-----
ocaml/t/guestfs_500_parallel_mount_local.ml | 2 +-
perl/examples/create_disk.pl | 2 +-
perl/examples/guestfs-perl.pod | 2 +-
perl/examples/inspect_vm.pl | 2 +-
perl/lib/Sys/Guestfs/Lib.pm | 4 ++--
perl/t/070-optargs.t | 6 +++---
perl/t/810-mkdir-eexist.t | 2 +-
perl/t/900-introspection.t | 1 +
php/extension/guestfs_php_003.phpt | 16 ++++++++--------
po/POTFILES | 2 +-
python/examples/create_disk.py | 2 +-
python/examples/guestfs-python.pod | 2 +-
python/examples/inspect_vm.py | 2 +-
python/t/060-optargs.py | 6 +++---
python/t/rhbz811650.py | 2 +-
resize/resize.ml | 8 ++++----
ruby/examples/create_disk.rb | 2 +-
ruby/examples/guestfs-ruby.pod | 4 ++--
ruby/examples/inspect_vm.rb | 2 +-
ruby/tests/tc_060_optargs.rb | 10 +++++-----
sparsify/sparsify.ml | 4 ++--
src/launch.c | 10 ----------
sysprep/main.ml | 2 +-
tests/btrfs/test-btrfs-subvolume-default.pl | 2 +-
tests/disks/test-max-disks.pl | 2 +-
tests/lvm/test-lvm-mapping.pl | 2 +-
tests/md/test-inspect-fstab.sh | 4 ++--
tests/qemu/qemu-liveness.sh | 4 ++--
tests/selinux/run-test.pl | 2 +-
tools/virt-make-fs | 2 +-
47 files changed, 93 insertions(+), 115 deletions(-)
diff --git a/erlang/examples/create_disk.erl b/erlang/examples/create_disk.erl
index d192435..0e1f031 100755
--- a/erlang/examples/create_disk.erl
+++ b/erlang/examples/create_disk.erl
@@ -17,8 +17,8 @@ main(_) ->
ok = guestfs:set_trace(G, true),
% Attach the disk image to libguestfs.
- ok = guestfs:add_drive_opts(G, Output,
- [{format, "raw"}, {readonly, false}]),
+ ok = guestfs:add_drive(G, Output,
+ [{format, "raw"}, {readonly, false}]),
% Run the libguestfs back-end.
ok = guestfs:launch(G),
diff --git a/erlang/examples/guestfs-erlang.pod b/erlang/examples/guestfs-erlang.pod
index 8721318..1016d98 100644
--- a/erlang/examples/guestfs-erlang.pod
+++ b/erlang/examples/guestfs-erlang.pod
@@ -7,8 +7,8 @@ guestfs-erlang - How to use libguestfs from Erlang
=head1 SYNOPSIS
{ok, G} = guestfs:create(),
- ok = guestfs:add_drive_opts(G, Disk,
- [{format, "raw"}, {readonly, true}]),
+ ok = guestfs:add_drive(G, Disk,
+ [{format, "raw"}, {readonly, true}]),
ok = guestfs:launch(G),
[Device] = guestfs:list_devices(G),
ok = guestfs:close(G).
@@ -43,12 +43,12 @@ For functions that take optional arguments, the first arguments are
the non-optional ones. The last argument is a list of tuples
supplying the remaining optional arguments.
- ok = guestfs:add_drive_opts(G, Disk,
- [{format, "raw"}, {readonly, true}]).
+ ok = guestfs:add_drive(G, Disk,
+ [{format, "raw"}, {readonly, true}]).
If the last argument would be an empty list, you can also omit it:
- ok = guestfs:add_drive_opts(G, Disk).
+ ok = guestfs:add_drive(G, Disk).
=head2 RETURN VALUES AND ERRORS
diff --git a/erlang/examples/inspect_vm.erl b/erlang/examples/inspect_vm.erl
index 87d751c..2455889 100755
--- a/erlang/examples/inspect_vm.erl
+++ b/erlang/examples/inspect_vm.erl
@@ -6,7 +6,7 @@ main([Disk]) ->
{ok, G} = guestfs:create(),
% Attach the disk image read-only to libguestfs.
- ok = guestfs:add_drive_opts(G, Disk, [{readonly, true}]),
+ ok = guestfs:add_drive(G, Disk, [{readonly, true}]),
% Run the libguestfs back-end.
ok = guestfs:launch(G),
diff --git a/fish/guestfish.pod b/fish/guestfish.pod
index 29aa2d6..07e268c 100644
--- a/fish/guestfish.pod
+++ b/fish/guestfish.pod
@@ -253,7 +253,7 @@ auto-detection for C<another.img>.
If you have untrusted raw-format guest disk images, you should use
this option to specify the disk format. This avoids a possible
security problem with malicious guests (CVE-2010-3851). See also
-L</add-drive-opts>.
+L</add>.
=item B<-i>
@@ -594,11 +594,11 @@ Some commands take optional arguments. These arguments appear in
this
documentation as C<[argname:..]>. You can use them as in these
examples:
- add-drive-opts filename
+ add filename
- add-drive-opts filename readonly:true
+ add filename readonly:true
- add-drive-opts filename format:qcow2 readonly:false
+ add filename format:qcow2 readonly:false
Each optional argument can appear at most once. All optional
arguments must appear after the required ones.
diff --git a/generator/generator_actions.ml b/generator/generator_actions.ml
index 0073c45..6f46f80 100644
--- a/generator/generator_actions.ml
+++ b/generator/generator_actions.ml
@@ -164,26 +164,9 @@ This kills the qemu subprocess.
Do not call this. See: C<guestfs_shutdown> instead." };
{ defaults with
- name = "add_drive";
- style = RErr, [String "filename"], [];
- config_only = true;
- shortdesc = "add an image to examine or modify";
- longdesc = "\
-This function is the equivalent of calling C<guestfs_add_drive_opts>
-with no optional parameters, so the disk is added writable, with
-the format being detected automatically.
-
-Automatic detection of the format opens you up to a potential
-security hole when dealing with untrusted raw-format images.
-See CVE-2010-3851 and RHBZ#642934. Specifying the format closes
-this security hole. Therefore you should think about replacing
-calls to this function with calls to C<guestfs_add_drive_opts>,
-and specifying the format." };
-
- { defaults with
name = "add_cdrom";
style = RErr, [String "filename"], [];
- deprecated_by = Some "add_drive_opts"; config_only = true;
+ deprecated_by = Some "add_drive"; config_only = true;
shortdesc = "add a CD-ROM disk image to examine";
longdesc = "\
This function adds a virtual CD-ROM disk image to the guest.
@@ -648,7 +631,7 @@ Return the recovery process enabled flag." };
{ defaults with
name = "add_drive_with_if";
style = RErr, [String "filename"; String "iface"], [];
- deprecated_by = Some "add_drive_opts"; config_only = true;
+ deprecated_by = Some "add_drive"; config_only = true;
shortdesc = "add a drive specifying the QEMU block emulation to use";
longdesc = "\
This is the same as C<guestfs_add_drive> but it allows you
@@ -657,7 +640,7 @@ to specify the QEMU interface emulation to use at run time." };
{ defaults with
name = "add_drive_ro_with_if";
style = RErr, [String "filename"; String "iface"], [];
- deprecated_by = Some "add_drive_opts"; config_only = true;
+ deprecated_by = Some "add_drive"; config_only = true;
shortdesc = "add a drive read-only specifying the QEMU block emulation to
use";
longdesc = "\
This is the same as C<guestfs_add_drive_ro> but it allows you
@@ -1150,8 +1133,9 @@ not all belong to a single logical operating system
(use C<guestfs_inspect_os> to look for OSes)." };
{ defaults with
- name = "add_drive_opts";
+ name = "add_drive";
style = RErr, [String "filename"], [OBool "readonly"; OString
"format"; OString "iface"; OString "name"];
+ once_had_no_optargs = true;
fish_alias = ["add"]; config_only = true;
shortdesc = "add an image to examine or modify";
longdesc = "\
diff --git a/gobject/Makefile.am b/gobject/Makefile.am
index deaf543..cc360c8 100644
--- a/gobject/Makefile.am
+++ b/gobject/Makefile.am
@@ -42,7 +42,11 @@ CLEANFILES = \
guestfs-gobject*.c *.o *.lo
# Remove old test0 API files.
-CLEANFILES += src/optargs-test0.c include/guestfs-gobject/optargs-test0.h
+CLEANFILES += \
+ src/optargs-add_drive_opts.c \
+ include/guestfs-gobject/optargs-add_drive_opts.h \
+ src/optargs-test0.c \
+ include/guestfs-gobject/optargs-test0.h
libname = libguestfs-gobject-1.0.la
diff --git a/gobject/Makefile.inc b/gobject/Makefile.inc
index e84236d..d8c6eed 100644
--- a/gobject/Makefile.inc
+++ b/gobject/Makefile.inc
@@ -39,7 +39,7 @@ guestfs_gobject_headers= \
include/guestfs-gobject/struct-mdstat.h \
include/guestfs-gobject/struct-btrfssubvolume.h \
include/guestfs-gobject/optargs-internal_test.h \
- include/guestfs-gobject/optargs-add_drive_opts.h \
+ include/guestfs-gobject/optargs-add_drive.h \
include/guestfs-gobject/optargs-add_domain.h \
include/guestfs-gobject/optargs-inspect_get_icon.h \
include/guestfs-gobject/optargs-mount_local.h \
@@ -83,7 +83,7 @@ guestfs_gobject_sources= \
src/struct-mdstat.c \
src/struct-btrfssubvolume.c \
src/optargs-internal_test.c \
- src/optargs-add_drive_opts.c \
+ src/optargs-add_drive.c \
src/optargs-add_domain.c \
src/optargs-inspect_get_icon.c \
src/optargs-mount_local.c \
diff --git a/gobject/tests-misc.js b/gobject/tests-misc.js
index 058a695..a97da24 100644
--- a/gobject/tests-misc.js
+++ b/gobject/tests-misc.js
@@ -39,7 +39,7 @@ g.connect('trace', function(session, params) {
}
});
-g.add_drive('../tests/guests/fedora.img');
+g.add_drive('../tests/guests/fedora.img', null);
g.set_trace(true);
g.launch();
// Fake progress messages for a 5 second event. We do this as launch() will not
diff --git a/haskell/Guestfs010Basic.hs b/haskell/Guestfs010Basic.hs
index 0f919e3..5cf8826 100644
--- a/haskell/Guestfs010Basic.hs
+++ b/haskell/Guestfs010Basic.hs
@@ -26,7 +26,7 @@ main = do
fd <- openFile "test.img" WriteMode
hSetFileSize fd (500 * 1024 * 1024)
hClose fd
- Guestfs.add_drive g "test.img"
+ Guestfs.add_drive_ro g "test.img"
Guestfs.launch g
Guestfs.pvcreate g "/dev/sda"
diff --git a/java/examples/CreateDisk.java b/java/examples/CreateDisk.java
index 381fae1..7eecf9e 100644
--- a/java/examples/CreateDisk.java
+++ b/java/examples/CreateDisk.java
@@ -29,7 +29,7 @@ public class CreateDisk
put ("readonly", Boolean.FALSE);
}
};
- g.add_drive_opts (output, optargs);
+ g.add_drive (output, optargs);
// Run the libguestfs back-end.
g.launch ();
diff --git a/java/examples/InspectVM.java b/java/examples/InspectVM.java
index d92aa70..1feadbe 100644
--- a/java/examples/InspectVM.java
+++ b/java/examples/InspectVM.java
@@ -35,7 +35,7 @@ public class InspectVM
}
};
- g.add_drive_opts (disk, optargs);
+ g.add_drive (disk, optargs);
// Run the libguestfs back-end.
g.launch ();
diff --git a/java/examples/guestfs-java.pod b/java/examples/guestfs-java.pod
index 482539b..f7b1e7a 100644
--- a/java/examples/guestfs-java.pod
+++ b/java/examples/guestfs-java.pod
@@ -9,7 +9,7 @@ guestfs-java - How to use libguestfs from Java
import com.redhat.et.libguestfs.*;
GuestFS g = new GuestFS ();
- g.add_drive_opts ("disk.img");
+ g.add_drive ("disk.img");
g.launch ();
=head1 DESCRIPTION
diff --git a/java/t/GuestFS080OptArgs.java b/java/t/GuestFS080OptArgs.java
index 6eee6c6..417d0ad 100644
--- a/java/t/GuestFS080OptArgs.java
+++ b/java/t/GuestFS080OptArgs.java
@@ -27,7 +27,7 @@ public class GuestFS080OptArgs
try {
GuestFS g = new GuestFS ();
- g.add_drive_opts ("/dev/null");
+ g.add_drive ("/dev/null");
HashMap<String,Object> optargs;
@@ -36,7 +36,7 @@ public class GuestFS080OptArgs
put ("readonly", Boolean.TRUE);
}
};
- g.add_drive_opts ("/dev/null", optargs);
+ g.add_drive ("/dev/null", optargs);
optargs = new HashMap<String,Object>() {
{
@@ -44,7 +44,7 @@ public class GuestFS080OptArgs
put ("format", "raw");
}
};
- g.add_drive_opts ("/dev/null", optargs);
+ g.add_drive ("/dev/null", optargs);
optargs = new HashMap<String,Object>() {
{
@@ -53,7 +53,7 @@ public class GuestFS080OptArgs
put ("iface", "virtio");
}
};
- g.add_drive_opts ("/dev/null", optargs);
+ g.add_drive ("/dev/null", optargs);
}
catch (Exception exn) {
System.err.println (exn);
diff --git a/ocaml/examples/create_disk.ml b/ocaml/examples/create_disk.ml
index 4437b1c..fab5e70 100644
--- a/ocaml/examples/create_disk.ml
+++ b/ocaml/examples/create_disk.ml
@@ -17,7 +17,7 @@ let () =
g#set_trace true;
(* Attach the disk image to libguestfs. *)
- g#add_drive_opts ~format:"raw" ~readonly:false output;
+ g#add_drive ~format:"raw" ~readonly:false output;
(* Run the libguestfs back-end. *)
g#launch ();
diff --git a/ocaml/examples/guestfs-ocaml.pod b/ocaml/examples/guestfs-ocaml.pod
index 139997b..019e84a 100644
--- a/ocaml/examples/guestfs-ocaml.pod
+++ b/ocaml/examples/guestfs-ocaml.pod
@@ -9,13 +9,13 @@ guestfs-ocaml - How to use libguestfs from OCaml
Module style:
let g = Guestfs.create () in
- Guestfs.add_drive_opts g ~format:"raw" ~readonly:true "disk.img";
+ Guestfs.add_drive g ~format:"raw" ~readonly:true "disk.img";
Guestfs.launch g;
Object-oriented style:
let g = new Guestfs.guestfs () in
- g#add_drive_opts ~format:"raw" ~readonly:true "disk.img";
+ g#add_drive ~format:"raw" ~readonly:true "disk.img";
g#launch ();
ocamlfind opt prog.ml -package guestfs -linkpkg -o prog
diff --git a/ocaml/examples/inspect_vm.ml b/ocaml/examples/inspect_vm.ml
index 44d348e..c19953b 100644
--- a/ocaml/examples/inspect_vm.ml
+++ b/ocaml/examples/inspect_vm.ml
@@ -12,7 +12,7 @@ let () =
let g = new Guestfs.guestfs () in
(* Attach the disk image read-only to libguestfs. *)
- g#add_drive_opts (*~format:"raw"*) ~readonly:true disk;
+ g#add_drive (*~format:"raw"*) ~readonly:true disk;
(* Run the libguestfs back-end. *)
g#launch ();
diff --git a/ocaml/t/guestfs_080_optargs.ml b/ocaml/t/guestfs_080_optargs.ml
index a43a83e..e2b2f6c 100644
--- a/ocaml/t/guestfs_080_optargs.ml
+++ b/ocaml/t/guestfs_080_optargs.ml
@@ -21,10 +21,9 @@ open Unix
let () =
let g = Guestfs.create () in
- Guestfs.add_drive_opts g "/dev/null";
- Guestfs.add_drive_opts g ~readonly:true "/dev/null";
- Guestfs.add_drive_opts g ~readonly:true ~format:"raw" "/dev/null";
- Guestfs.add_drive_opts g ~iface:"virtio" ~readonly:true
~format:"raw"
- "/dev/null";
+ Guestfs.add_drive g "/dev/null";
+ Guestfs.add_drive g ~readonly:true "/dev/null";
+ Guestfs.add_drive g ~readonly:true ~format:"raw" "/dev/null";
+ Guestfs.add_drive g ~iface:"virtio" ~readonly:true ~format:"raw"
"/dev/null";
Guestfs.close g
diff --git a/ocaml/t/guestfs_500_parallel_mount_local.ml
b/ocaml/t/guestfs_500_parallel_mount_local.ml
index e1f5e26..926b9ee 100644
--- a/ocaml/t/guestfs_500_parallel_mount_local.ml
+++ b/ocaml/t/guestfs_500_parallel_mount_local.ml
@@ -100,7 +100,7 @@ and start_thread (filename, mp) =
ftruncate fd (500 * 1024 * 1024);
close fd;
- g#add_drive_opts filename;
+ g#add_drive filename;
g#launch ();
g#part_disk "/dev/sda" "mbr";
diff --git a/perl/examples/create_disk.pl b/perl/examples/create_disk.pl
index 11b9146..76b51de 100755
--- a/perl/examples/create_disk.pl
+++ b/perl/examples/create_disk.pl
@@ -18,7 +18,7 @@ close FILE or die "$output: $!";
$g->set_trace (1);
# Attach the disk image to libguestfs.
-$g->add_drive_opts ($output, format => "raw", readonly => 0);
+$g->add_drive ($output, format => "raw", readonly => 0);
# Run the libguestfs back-end.
$g->launch ();
diff --git a/perl/examples/guestfs-perl.pod b/perl/examples/guestfs-perl.pod
index f83d1fd..c38377c 100644
--- a/perl/examples/guestfs-perl.pod
+++ b/perl/examples/guestfs-perl.pod
@@ -9,7 +9,7 @@ guestfs-perl - How to use libguestfs from Perl
use Sys::Guestfs;
my $h = Sys::Guestfs->new ();
- $h->add_drive_opts ('guest.img', format => 'raw');
+ $h->add_drive ('guest.img', format => 'raw');
$h->launch ();
$h->mount_options ('', '/dev/sda1', '/');
$h->touch ('/hello');
diff --git a/perl/examples/inspect_vm.pl b/perl/examples/inspect_vm.pl
index 6d95b69..7800ce0 100755
--- a/perl/examples/inspect_vm.pl
+++ b/perl/examples/inspect_vm.pl
@@ -16,7 +16,7 @@ my $g = new Sys::Guestfs ();
# Attach the disk image read-only to libguestfs.
# You could also add an optional format => ... argument here. This is
# advisable since automatic format detection is insecure.
-$g->add_drive_opts ($disk, readonly => 1);
+$g->add_drive ($disk, readonly => 1);
# Run the libguestfs back-end.
$g->launch ();
diff --git a/perl/lib/Sys/Guestfs/Lib.pm b/perl/lib/Sys/Guestfs/Lib.pm
index 2ccc09a..037a050 100644
--- a/perl/lib/Sys/Guestfs/Lib.pm
+++ b/perl/lib/Sys/Guestfs/Lib.pm
@@ -133,7 +133,7 @@ If the C<Sys::Virt> module is not available, then libvirt is
bypassed,
and this function can only open disk images.
The optional C<interface> parameter can be used to open devices with a
-specified qemu interface. See L<Sys::Guestfs/guestfs_add_drive_opts>
+specified qemu interface. See L<Sys::Guestfs/guestfs_add_drive>
for more details.
=cut
@@ -257,7 +257,7 @@ sub open_guest
push @args, format => $_->[1] if defined $_->[1];
push @args, readonly => 1 unless $rw;
push @args, iface => $interface if defined $interface;
- $g->add_drive_opts (@args);
+ $g->add_drive (@args);
}
return wantarray ? ($g, $conn, $dom, @images) : $g
diff --git a/perl/t/070-optargs.t b/perl/t/070-optargs.t
index 978db92..885f0cc 100644
--- a/perl/t/070-optargs.t
+++ b/perl/t/070-optargs.t
@@ -24,11 +24,11 @@ use Sys::Guestfs;
my $h = Sys::Guestfs->new ();
ok ($h);
-$h->add_drive_opts ("/dev/null");
+$h->add_drive ("/dev/null");
ok (1);
-$h->add_drive_opts ("/dev/null", readonly => 1);
+$h->add_drive ("/dev/null", readonly => 1);
ok (1);
-$h->add_drive_opts ("/dev/null", format => "raw", readonly
=> 0);
+$h->add_drive ("/dev/null", format => "raw", readonly =>
0);
ok (1);
diff --git a/perl/t/810-mkdir-eexist.t b/perl/t/810-mkdir-eexist.t
index a059ee4..0b25776 100644
--- a/perl/t/810-mkdir-eexist.t
+++ b/perl/t/810-mkdir-eexist.t
@@ -33,7 +33,7 @@ truncate FILE, 500*1024*1024;
close FILE;
ok (1);
-$g->add_drive_opts ("test.img", format => "raw");
+$g->add_drive ("test.img", format => "raw");
ok (1);
$g->launch ();
diff --git a/perl/t/900-introspection.t b/perl/t/900-introspection.t
index c1fa6f8..0182250 100644
--- a/perl/t/900-introspection.t
+++ b/perl/t/900-introspection.t
@@ -33,6 +33,7 @@ is ($add_drive{args}[0][0], "filename");
is ($add_drive{args}[0][1], "string");
is ($add_drive{args}[0][2], 0);
+# In libguestfs >= 1.19.19, this is an alias.
my %add_drive_opts = %{$Sys::Guestfs::guestfs_introspection{add_drive_opts}};
ok(1);
diff --git a/php/extension/guestfs_php_003.phpt b/php/extension/guestfs_php_003.phpt
index 08e53a3..2624a29 100644
--- a/php/extension/guestfs_php_003.phpt
+++ b/php/extension/guestfs_php_003.phpt
@@ -11,20 +11,20 @@ if ($g == false) {
echo ("Failed to create guestfs_php handle.\n");
exit;
}
-if (guestfs_add_drive_opts ($g, "/dev/null") == false) {
- echo ("Failed add_drive_opts, no optional arguments.\n");
+if (guestfs_add_drive ($g, "/dev/null") == false) {
+ echo ("Failed add_drive, no optional arguments.\n");
exit;
}
-if (guestfs_add_drive_opts ($g, "/dev/null", 0) == false) {
- echo ("Failed add_drive_opts, one optional argument.\n");
+if (guestfs_add_drive ($g, "/dev/null", 0) == false) {
+ echo ("Failed add_drive, one optional argument.\n");
exit;
}
-if (guestfs_add_drive_opts ($g, "/dev/null", 1) == false) {
- echo ("Failed add_drive_opts, one optional argument.\n");
+if (guestfs_add_drive ($g, "/dev/null", 1) == false) {
+ echo ("Failed add_drive, one optional argument.\n");
exit;
}
-if (guestfs_add_drive_opts ($g, "/dev/null", 1, "qcow2") == false) {
- echo ("Failed add_drive_opts, two optional arguments.\n");
+if (guestfs_add_drive ($g, "/dev/null", 1, "qcow2") == false) {
+ echo ("Failed add_drive, two optional arguments.\n");
exit;
}
echo ("Completed tests OK.\n");
diff --git a/po/POTFILES b/po/POTFILES
index 6c819d3..f659a9d 100644
--- a/po/POTFILES
+++ b/po/POTFILES
@@ -133,7 +133,7 @@ fish/virt.c
format/format.c
fuse/guestmount.c
gobject/src/optargs-add_domain.c
-gobject/src/optargs-add_drive_opts.c
+gobject/src/optargs-add_drive.c
gobject/src/optargs-btrfs_filesystem_resize.c
gobject/src/optargs-btrfs_fsck.c
gobject/src/optargs-compress_device_out.c
diff --git a/python/examples/create_disk.py b/python/examples/create_disk.py
index 86f5042..a854c23 100644
--- a/python/examples/create_disk.py
+++ b/python/examples/create_disk.py
@@ -16,7 +16,7 @@ f.close ()
g.set_trace (1)
# Attach the disk image to libguestfs.
-g.add_drive_opts (output, format = "raw", readonly = 0)
+g.add_drive (output, format = "raw", readonly = 0)
# Run the libguestfs back-end.
g.launch ()
diff --git a/python/examples/guestfs-python.pod b/python/examples/guestfs-python.pod
index e4406f5..59f60e5 100644
--- a/python/examples/guestfs-python.pod
+++ b/python/examples/guestfs-python.pod
@@ -8,7 +8,7 @@ guestfs-python - How to use libguestfs from Python
import guestfs
g = guestfs.GuestFS ()
- g.add_drive_opts ("disk.img", format="raw", readonly=1)
+ g.add_drive ("disk.img", format="raw", readonly=1)
g.launch ()
=head1 DESCRIPTION
diff --git a/python/examples/inspect_vm.py b/python/examples/inspect_vm.py
index c491a2c..816779c 100644
--- a/python/examples/inspect_vm.py
+++ b/python/examples/inspect_vm.py
@@ -9,7 +9,7 @@ disk = sys.argv[1]
g = guestfs.GuestFS ()
# Attach the disk image read-only to libguestfs.
-g.add_drive_opts (disk, readonly=1)
+g.add_drive (disk, readonly=1)
# Run the libguestfs back-end.
g.launch ()
diff --git a/python/t/060-optargs.py b/python/t/060-optargs.py
index be28a3c..ae2d934 100644
--- a/python/t/060-optargs.py
+++ b/python/t/060-optargs.py
@@ -19,7 +19,7 @@ import os
import guestfs
g = guestfs.GuestFS()
-g.add_drive_opts ("/dev/null")
-g.add_drive_opts ("/dev/null", readonly = 1)
-g.add_drive_opts ("/dev/null", iface = "virtio", format =
"raw")
+g.add_drive ("/dev/null")
+g.add_drive ("/dev/null", readonly = 1)
+g.add_drive ("/dev/null", iface = "virtio", format =
"raw")
g.close ()
diff --git a/python/t/rhbz811650.py b/python/t/rhbz811650.py
index cf01673..c84f094 100644
--- a/python/t/rhbz811650.py
+++ b/python/t/rhbz811650.py
@@ -25,7 +25,7 @@ f.close ()
g = guestfs.GuestFS ()
# Deliberate error: the disk format is supposed to be raw.
-g.add_drive_opts ("test.img", format="qcow2");
+g.add_drive ("test.img", format="qcow2");
# Because error() wasn't being called, guestfs_last_error would return
# NULL, causing a segfault in the Python bindings (RHBZ#811650).
diff --git a/resize/resize.ml b/resize/resize.ml
index cd4c9d6..9ef2bbd 100644
--- a/resize/resize.ml
+++ b/resize/resize.ml
@@ -173,7 +173,7 @@ read the man page virt-resize(1).
printf "alignment\n";
printf "align-first\n";
let g = new G.guestfs () in
- g#add_drive_opts "/dev/null";
+ g#add_drive "/dev/null";
g#launch ();
if feature_available g [| "ntfsprogs"; "ntfs3g" |] then
printf "ntfs\n";
@@ -209,8 +209,8 @@ let btrfs_available = ref true
let connect_both_disks () =
let g = new G.guestfs () in
if debug then g#set_trace true;
- g#add_drive_opts ?format ~readonly:true infile;
- g#add_drive_opts ?format:output_format ~readonly:false outfile;
+ g#add_drive ?format ~readonly:true infile;
+ g#add_drive ?format:output_format ~readonly:false outfile;
if not quiet then Progress.set_up_progress_bar ~machine_readable g;
g#launch ();
@@ -1125,7 +1125,7 @@ let g =
let g = new G.guestfs () in
if debug then g#set_trace true;
- g#add_drive_opts ?format:output_format ~readonly:false outfile;
+ g#add_drive ?format:output_format ~readonly:false outfile;
if not quiet then Progress.set_up_progress_bar ~machine_readable g;
g#launch ();
diff --git a/ruby/examples/create_disk.rb b/ruby/examples/create_disk.rb
index 32fb117..fd6ec01 100644
--- a/ruby/examples/create_disk.rb
+++ b/ruby/examples/create_disk.rb
@@ -15,7 +15,7 @@ File.open(output, "w") {
g.set_trace(1)
# Attach the disk image to libguestfs.
-g.add_drive_opts(output, :format => "raw")
+g.add_drive(output, :format => "raw")
# Run the libguestfs back-end.
g.launch();
diff --git a/ruby/examples/guestfs-ruby.pod b/ruby/examples/guestfs-ruby.pod
index 1af133d..4b53d01 100644
--- a/ruby/examples/guestfs-ruby.pod
+++ b/ruby/examples/guestfs-ruby.pod
@@ -8,8 +8,8 @@ guestfs-ruby - How to use libguestfs from Ruby
require 'guestfs'
g = Guestfs::Guestfs.new()
- g.add_drive_opts("disk.img",
- :readonly => 1, :format => "raw")
+ g.add_drive("disk.img",
+ :readonly => 1, :format => "raw")
g.launch()
=head1 DESCRIPTION
diff --git a/ruby/examples/inspect_vm.rb b/ruby/examples/inspect_vm.rb
index abf2279..c29114e 100644
--- a/ruby/examples/inspect_vm.rb
+++ b/ruby/examples/inspect_vm.rb
@@ -11,7 +11,7 @@ disk = ARGV[0]
g = Guestfs::Guestfs.new()
# Attach the disk image read-only to libguestfs.
-g.add_drive_opts(disk, :readonly => 1)
+g.add_drive(disk, :readonly => 1)
# Run the libguestfs back-end.
g.launch()
diff --git a/ruby/tests/tc_060_optargs.rb b/ruby/tests/tc_060_optargs.rb
index de411d6..6556bc7 100644
--- a/ruby/tests/tc_060_optargs.rb
+++ b/ruby/tests/tc_060_optargs.rb
@@ -24,10 +24,10 @@ class TestLoad < Test::Unit::TestCase
def test_optargs
g = Guestfs::create()
- g.add_drive_opts("/dev/null", {})
- g.add_drive_opts("/dev/null", :readonly => 1)
- g.add_drive_opts("/dev/null", :readonly => 1, :iface =>
"virtio")
- g.add_drive_opts("/dev/null",
- :readonly => 1, :iface => "virtio", :format =>
"qcow2")
+ g.add_drive("/dev/null", {})
+ g.add_drive("/dev/null", :readonly => 1)
+ g.add_drive("/dev/null", :readonly => 1, :iface =>
"virtio")
+ g.add_drive("/dev/null",
+ :readonly => 1, :iface => "virtio", :format =>
"qcow2")
end
end
diff --git a/sparsify/sparsify.ml b/sparsify/sparsify.ml
index 6f1635b..418eb67 100644
--- a/sparsify/sparsify.ml
+++ b/sparsify/sparsify.ml
@@ -107,7 +107,7 @@ read the man page virt-sparsify(1).
printf "linux-swap\n";
printf "zero\n";
let g = new G.guestfs () in
- g#add_drive_opts "/dev/null";
+ g#add_drive "/dev/null";
g#launch ();
if feature_available g [| "ntfsprogs"; "ntfs3g" |] then
printf "ntfs\n";
@@ -195,7 +195,7 @@ let g =
if verbose then g#set_verbose true;
(* Note that the temporary overlay disk is always qcow2 format. *)
- g#add_drive_opts ~format:"qcow2" ~readonly:false overlaydisk;
+ g#add_drive ~format:"qcow2" ~readonly:false overlaydisk;
if not quiet then Progress.set_up_progress_bar ~machine_readable g;
g#launch ();
diff --git a/src/launch.c b/src/launch.c
index e786519..be834a8 100644
--- a/src/launch.c
+++ b/src/launch.c
@@ -441,16 +441,6 @@ err_out:
}
int
-guestfs__add_drive (guestfs_h *g, const char *filename)
-{
- struct guestfs_add_drive_opts_argv optargs = {
- .bitmask = 0,
- };
-
- return guestfs__add_drive_opts (g, filename, &optargs);
-}
-
-int
guestfs__add_drive_ro (guestfs_h *g, const char *filename)
{
struct guestfs_add_drive_opts_argv optargs = {
diff --git a/sysprep/main.ml b/sysprep/main.ml
index 05dd57d..4c3f970 100644
--- a/sysprep/main.ml
+++ b/sysprep/main.ml
@@ -161,7 +161,7 @@ read the man page virt-sysprep(1).
fun g readonly ->
List.iter (
fun (file, format) ->
- g#add_drive_opts ~readonly ?format file
+ g#add_drive ~readonly ?format file
) files
in
diff --git a/tests/btrfs/test-btrfs-subvolume-default.pl
b/tests/btrfs/test-btrfs-subvolume-default.pl
index 2c09ce2..4672bed 100755
--- a/tests/btrfs/test-btrfs-subvolume-default.pl
+++ b/tests/btrfs/test-btrfs-subvolume-default.pl
@@ -33,7 +33,7 @@ close FILE or die "$testimg: $!";
my $g = Sys::Guestfs->new ();
-$g->add_drive_opts ($testimg, format => "raw");
+$g->add_drive ($testimg, format => "raw");
$g->launch ();
# If btrfs is not available, bail.
diff --git a/tests/disks/test-max-disks.pl b/tests/disks/test-max-disks.pl
index a0bba7f..7062434 100755
--- a/tests/disks/test-max-disks.pl
+++ b/tests/disks/test-max-disks.pl
@@ -40,7 +40,7 @@ for ($i = 0; $i < $max_disks; ++$i) {
truncate FILE, 1024*1024 or die "$name: truncate: $!";
close FILE or die "$name: $!";
- $g->add_drive_opts ($name, format => "raw");
+ $g->add_drive ($name, format => "raw");
}
$g->launch ();
diff --git a/tests/lvm/test-lvm-mapping.pl b/tests/lvm/test-lvm-mapping.pl
index b92a5c5..beb388a 100755
--- a/tests/lvm/test-lvm-mapping.pl
+++ b/tests/lvm/test-lvm-mapping.pl
@@ -34,7 +34,7 @@ my $g = Sys::Guestfs->new ();
#$g->set_verbose (1);
#$g->set_trace (1);
-$g->add_drive_opts ($testimg, format => "raw");
+$g->add_drive ($testimg, format => "raw");
$g->launch ();
# Create an arrangement of PVs, VGs and LVs.
diff --git a/tests/md/test-inspect-fstab.sh b/tests/md/test-inspect-fstab.sh
index 2822c4d..889ceee 100755
--- a/tests/md/test-inspect-fstab.sh
+++ b/tests/md/test-inspect-fstab.sh
@@ -88,7 +88,7 @@ $guestfish -a test1.qcow2 <<'EOF'
EOF
$guestfish <<'EOF' | $canonical > test.output
- add-drive-opts test1.qcow2 readonly:true name:xvdg
+ add test1.qcow2 readonly:true name:xvdg
run
inspect-os
inspect-get-mountpoints /dev/VG/Root
@@ -119,7 +119,7 @@ $guestfish -a test1.qcow2 <<'EOF'
EOF
$guestfish <<'EOF' | $canonical > test.output
- add-drive-opts test1.qcow2 readonly:true name:cciss/c1d3
+ add test1.qcow2 readonly:true name:cciss/c1d3
run
inspect-os
inspect-get-mountpoints /dev/VG/Root
diff --git a/tests/qemu/qemu-liveness.sh b/tests/qemu/qemu-liveness.sh
index d95321c..eb8f608 100755
--- a/tests/qemu/qemu-liveness.sh
+++ b/tests/qemu/qemu-liveness.sh
@@ -28,7 +28,7 @@ rm -f test1.img
test1_md5sum="$(md5sum test1.img | awk '{print $1}')"
../../fish/guestfish <<'EOF'
-add-drive-opts test1.img format:raw
+add test1.img format:raw
run
part-disk /dev/sda mbr
@@ -49,4 +49,4 @@ if [ "$(md5sum test1.img | awk '{print $1}')" =
"$test1_md5sum" ]; then
exit 1
fi
-rm test1.img
\ No newline at end of file
+rm test1.img
diff --git a/tests/selinux/run-test.pl b/tests/selinux/run-test.pl
index bbe3a2f..0d3300c 100755
--- a/tests/selinux/run-test.pl
+++ b/tests/selinux/run-test.pl
@@ -108,7 +108,7 @@ open FILE, ">$testimg" or die "$testimg: $!";
truncate FILE, 256*1024*1024 or die "$testimg: truncate: $!";
close FILE or die "$testimg: $!";
-$g->add_drive_opts ($testimg, format => "raw");
+$g->add_drive ($testimg, format => "raw");
$g->launch ();
unless (feature_available ($g, "linuxxattrs")) {
diff --git a/tools/virt-make-fs b/tools/virt-make-fs
index b53e860..a4da3f2 100755
--- a/tools/virt-make-fs
+++ b/tools/virt-make-fs
@@ -421,7 +421,7 @@ eval {
# Run libguestfs.
my $g = Sys::Guestfs->new ();
- $g->add_drive_opts ($output, format => $format);
+ $g->add_drive ($output, format => $format);
$g->launch ();
if ($type eq "ntfs" && !feature_available ($g, "ntfs3g",
"ntfsprogs")) {
--
1.7.10.4