To-do list for virt-inspector.
[libguestfs.git] / haskell / Guestfs.hs
index aedf3b5..8f90ee8 100644 (file)
@@ -32,6 +32,7 @@ module Guestfs (
   config,
   set_qemu,
   set_path,
+  set_append,
   set_busy,
   set_ready,
   end_busy,
@@ -77,7 +78,10 @@ module Guestfs (
   cp,
   cp_a,
   mv,
-  ping_daemon
+  ping_daemon,
+  zerofree,
+  pvresize,
+  resize2fs
   ) where
 import Foreign
 import Foreign.C
@@ -223,6 +227,18 @@ set_path h path = do
       fail err
     else return ()
 
+foreign import ccall unsafe "guestfs_set_append" c_set_append
+  :: GuestfsP -> CString -> IO (CInt)
+
+set_append :: GuestfsH -> String -> IO ()
+set_append h append = do
+  r <- withCString append $ \append -> withForeignPtr h (\p -> c_set_append p append)
+  if (r == -1)
+    then do
+      err <- last_error h
+      fail err
+    else return ()
+
 foreign import ccall unsafe "guestfs_set_busy" c_set_busy
   :: GuestfsP -> IO (CInt)
 
@@ -775,3 +791,39 @@ ping_daemon h = do
       fail err
     else return ()
 
+foreign import ccall unsafe "guestfs_zerofree" c_zerofree
+  :: GuestfsP -> CString -> IO (CInt)
+
+zerofree :: GuestfsH -> String -> IO ()
+zerofree h device = do
+  r <- withCString device $ \device -> withForeignPtr h (\p -> c_zerofree p device)
+  if (r == -1)
+    then do
+      err <- last_error h
+      fail err
+    else return ()
+
+foreign import ccall unsafe "guestfs_pvresize" c_pvresize
+  :: GuestfsP -> CString -> IO (CInt)
+
+pvresize :: GuestfsH -> String -> IO ()
+pvresize h device = do
+  r <- withCString device $ \device -> withForeignPtr h (\p -> c_pvresize p device)
+  if (r == -1)
+    then do
+      err <- last_error h
+      fail err
+    else return ()
+
+foreign import ccall unsafe "guestfs_resize2fs" c_resize2fs
+  :: GuestfsP -> CString -> IO (CInt)
+
+resize2fs :: GuestfsH -> String -> IO ()
+resize2fs h device = do
+  r <- withCString device $ \device -> withForeignPtr h (\p -> c_resize2fs p device)
+  if (r == -1)
+    then do
+      err <- last_error h
+      fail err
+    else return ()
+