diff options
Diffstat (limited to 'haskell')
-rw-r--r-- | haskell/Guestfs.hs | 15 |
1 files changed, 14 insertions, 1 deletions
diff --git a/haskell/Guestfs.hs b/haskell/Guestfs.hs index 9eefda11..32e7aedd 100644 --- a/haskell/Guestfs.hs +++ b/haskell/Guestfs.hs @@ -120,7 +120,8 @@ module Guestfs ( wc_l, wc_w, wc_c, - du + du, + mount_loop ) where import Foreign import Foreign.C @@ -1335,3 +1336,15 @@ du h path = do fail err else return (fromIntegral r) +foreign import ccall unsafe "guestfs_mount_loop" c_mount_loop + :: GuestfsP -> CString -> CString -> IO (CInt) + +mount_loop :: GuestfsH -> String -> String -> IO () +mount_loop h file mountpoint = do + r <- withCString file $ \file -> withCString mountpoint $ \mountpoint -> withForeignPtr h (\p -> c_mount_loop p file mountpoint) + if (r == -1) + then do + err <- last_error h + fail err + else return () + |