kill_subprocess,
add_drive,
add_cdrom,
+ add_drive_ro,
config,
set_qemu,
set_path,
+ set_append,
set_busy,
set_ready,
end_busy,
cp,
cp_a,
mv,
- ping_daemon
+ ping_daemon,
+ zerofree,
+ pvresize,
+ resize2fs,
+ e2fsck_f,
+ scrub_device,
+ scrub_file,
+ scrub_freespace
) where
import Foreign
import Foreign.C
fail err
else return ()
+foreign import ccall unsafe "guestfs_add_drive_ro" c_add_drive_ro
+ :: GuestfsP -> CString -> IO (CInt)
+
+add_drive_ro :: GuestfsH -> String -> IO ()
+add_drive_ro h filename = do
+ r <- withCString filename $ \filename -> withForeignPtr h (\p -> c_add_drive_ro p filename)
+ if (r == -1)
+ then do
+ err <- last_error h
+ fail err
+ else return ()
+
foreign import ccall unsafe "guestfs_config" c_config
:: GuestfsP -> CString -> CString -> IO (CInt)
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)
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 ()
+
+foreign import ccall unsafe "guestfs_e2fsck_f" c_e2fsck_f
+ :: GuestfsP -> CString -> IO (CInt)
+
+e2fsck_f :: GuestfsH -> String -> IO ()
+e2fsck_f h device = do
+ r <- withCString device $ \device -> withForeignPtr h (\p -> c_e2fsck_f p device)
+ if (r == -1)
+ then do
+ err <- last_error h
+ fail err
+ else return ()
+
+foreign import ccall unsafe "guestfs_scrub_device" c_scrub_device
+ :: GuestfsP -> CString -> IO (CInt)
+
+scrub_device :: GuestfsH -> String -> IO ()
+scrub_device h device = do
+ r <- withCString device $ \device -> withForeignPtr h (\p -> c_scrub_device p device)
+ if (r == -1)
+ then do
+ err <- last_error h
+ fail err
+ else return ()
+
+foreign import ccall unsafe "guestfs_scrub_file" c_scrub_file
+ :: GuestfsP -> CString -> IO (CInt)
+
+scrub_file :: GuestfsH -> String -> IO ()
+scrub_file h file = do
+ r <- withCString file $ \file -> withForeignPtr h (\p -> c_scrub_file p file)
+ if (r == -1)
+ then do
+ err <- last_error h
+ fail err
+ else return ()
+
+foreign import ccall unsafe "guestfs_scrub_freespace" c_scrub_freespace
+ :: GuestfsP -> CString -> IO (CInt)
+
+scrub_freespace :: GuestfsH -> String -> IO ()
+scrub_freespace h dir = do
+ r <- withCString dir $ \dir -> withForeignPtr h (\p -> c_scrub_freespace p dir)
+ if (r == -1)
+ then do
+ err <- last_error h
+ fail err
+ else return ()
+