[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]

[Libguestfs] [PATCH 4/4] stub server side mount command



---
 p2v/server/virt-p2v-server.pl | 21 +++++++++++++++++++++
 1 file changed, 21 insertions(+)

diff --git a/p2v/server/virt-p2v-server.pl b/p2v/server/virt-p2v-server.pl
index c15efb2..f9dbc07 100755
--- a/p2v/server/virt-p2v-server.pl
+++ b/p2v/server/virt-p2v-server.pl
@@ -58,6 +58,7 @@ $SIG{'PIPE'} = 'IGNORE';
 use constant MSG_OPTIONS        => 'OPTIONS';
 use constant MSG_METADATA       => 'METADATA';
 use constant MSG_PATH           => 'PATH';
+use constant MSG_MOUNT          => 'MOUNT'
 use constant MSG_CONVERT        => 'CONVERT';
 use constant MSG_LIST_PROFILES  => 'LIST_PROFILES';
 use constant MSG_SET_PROFILE    => 'SET_PROFILE';
@@ -68,6 +69,7 @@ my @MSGS = (
     MSG_METADATA,
     MSG_OPTIONS,
     MSG_PATH,
+    MSG_MOUNT,
     MSG_CONVERT,
     MSG_LIST_PROFILES,
     MSG_SET_PROFILE,
@@ -181,6 +183,13 @@ eval {
             receive_path($path, $length);
         }
 
+        # MOUNT uri disk_type
+        elsif ($type eq MSG_MOUNT) {
+            my $uri = $msg->{args}[1];
+            my $disk_type = $msg->{args}[1];
+            mount_disk($uri, $disk_type);
+        }
+
         # CONVERT
         elsif ($type eq MSG_CONVERT) {
             convert();
@@ -358,6 +367,8 @@ sub convert
                             $_->{dst}->get_path(),
                             $_->{dst}->get_format() ] } @{$meta->{disks}};
 
+        # TODO also add disks stored in $meta->{mounts}
+
         $g = new Sys::VirtConvert::GuestfsHandle(
             \ disks,
             $transferiso,
@@ -411,6 +422,16 @@ sub convert
     p2v_return_ok();
 }
 
+sub mount_disk
+{
+    my ($uri,$disk_type) = @_;
+
+    # TODO create local devices mapped to remote uri
+    #      if nbd use nbd-client, if iscsi use iscsiadm
+    #      store local device paths in $meta->{mounts}
+    p2v_return_ok();
+}
+
 sub unexpected_msg
 {
     my $msg = shift;
-- 
1.7.11.7


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]