X-Git-Url: http://git.annexia.org/?a=blobdiff_plain;f=haskell%2FGuestfs.hs;h=210274efd5d0b045f7cf050598401f62fe8ae3fd;hb=3dfc0a8c5da8f3a4a6c13e936d4306b79b231dde;hp=ee7dabd19518251b7873eabfc33b52fea5d586a3;hpb=3e408f493496597dc026d20778837f421f05a9dd;p=libguestfs.git diff --git a/haskell/Guestfs.hs b/haskell/Guestfs.hs index ee7dabd..210274e 100644 --- a/haskell/Guestfs.hs +++ b/haskell/Guestfs.hs @@ -29,6 +29,7 @@ module Guestfs ( kill_subprocess, add_drive, add_cdrom, + add_drive_ro, config, set_qemu, set_path, @@ -192,6 +193,18 @@ add_cdrom h filename = do 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)