X-Git-Url: http://git.annexia.org/?a=blobdiff_plain;ds=sidebyside;f=haskell%2FGuestfs.hs;h=8f90ee8cf6f878e0cf8bff9ca89fb902b3118a8a;hb=f6bcb7b2ee269d82fee5e2d83bbb9187791033ce;hp=aedf3b5369280e4738cd12feb09bc3f182c98327;hpb=d43dac69483e8ec62e8356d93f761684ce2f5cc8;p=libguestfs.git diff --git a/haskell/Guestfs.hs b/haskell/Guestfs.hs index aedf3b5..8f90ee8 100644 --- a/haskell/Guestfs.hs +++ b/haskell/Guestfs.hs @@ -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 () +